diff options
Diffstat (limited to 'media-libs/gmmlib')
-rw-r--r-- | media-libs/gmmlib/Manifest | 7 | ||||
-rw-r--r-- | media-libs/gmmlib/files/gmmlib-20.4.1_custom_cflags.patch | 98 | ||||
-rw-r--r-- | media-libs/gmmlib/gmmlib-20.4.1.ebuild | 49 | ||||
-rw-r--r-- | media-libs/gmmlib/gmmlib-9999.ebuild | 23 | ||||
-rw-r--r-- | media-libs/gmmlib/metadata.xml | 13 |
5 files changed, 177 insertions, 13 deletions
diff --git a/media-libs/gmmlib/Manifest b/media-libs/gmmlib/Manifest index 4c32882ecf05..2c35e6e00035 100644 --- a/media-libs/gmmlib/Manifest +++ b/media-libs/gmmlib/Manifest @@ -1,9 +1,12 @@ AUX gmmlib-20.2.2_conditional_testing.patch 1151 BLAKE2B edeb2ff121efeb39e674bc6e4fc37e3603f98875e7d618f4a0bbad49d6d46745c2fdcc2405b3383443af767ab231cddeb1914ccbf0710190fe6c47a94033e638 SHA512 8f6a676104108161e5ca727d231789559bbf1c24b289b25b9809b5b70882e355af976051d31bd4a238df24b13fbe4a3324ce40c3ee3c592e650b34dde8d8a62b +AUX gmmlib-20.4.1_custom_cflags.patch 2995 BLAKE2B 2e344bd4576c83490dc09e49c6d739e1a06df138fe7f3ff5fd5b4c788f9115f9284a8967b02832ab71ed0f19a4d202e81b865e65ea0c7aa2225a818c366ed465 SHA512 7d4d82aa320ca1aa8f281162e39cc5f9f2e50cb70d2a8df572dd544a8a1b60ed52c903131ee41dd8454f2d1836a8d0a2bf82257f8648d419e0b550c6fe5795bf DIST intel-gmmlib-20.2.2.tar.gz 728309 BLAKE2B 1c26661c5317d66797ca8a72fe910ae73a97c7bc3b5730b6c270daa3eac753287cd83334085c90ce081ff4a8a4d1f79b46e832059b08c36602c5c39f3b3a1af5 SHA512 ebd23658aec78ebdf7cd13577f5ca408e2995c4df6135c951d3bea4a59a84461690d71f6e7ebc2014daa5508e07d32ff20c25019d90255150e7c93e241d403fc DIST intel-gmmlib-20.2.5.tar.gz 728792 BLAKE2B c78cebcfad9f314e3ee298deaa78586cb5c1c8e2e5bba9051a8b17c26001b72aaa675443fcdc9757031977c548a0360e2511bd29873fc7302922b33a2c1a0324 SHA512 354363b0944e4f0e08065fa7a0cb85d477f522858a55f4998a2374ef8e115e331961cc269db886dac3b1e5825d11e036ebc0b4ab65b1618653810e4bfc4751ec DIST intel-gmmlib-20.3.2.tar.gz 729059 BLAKE2B 3cc07d9dc07fecd483c35bde41802c8a433a751310fe4d0273625f3a6e245a2dd6e5546b4e5bed40b04b22c4e00a648cce66b221c25da8c6f3f3637a890508bd SHA512 1d8ea369b5b22ca747f8bdaee0be24584b79ccdecaad6c85e5f0a41ac171459261c8c5b220797ffc525e7e29cfa1664f9eaca07f5e72d4a260f327d8980fb2dd +DIST intel-gmmlib-20.4.1.tar.gz 732088 BLAKE2B 80873ee7a4b7428197352e77b82315068d6217e025b33e719c6fdc24aa4e5f97fe64b290f2d4461bb701eb8c14e747c8eac0b62f226f044f9a7c71de0455dfbd SHA512 a4f6fb8cd3ae2dc837586d6b51495bcceda5d4a9ecaa59fa730d3240a0da359b4449cd9aec96905f7c572f6425cdc19bb419681d99269ca8541542d7abf03c96 EBUILD gmmlib-20.2.2.ebuild 888 BLAKE2B bb3f30b545eabfe214fa659f887c082f1fa45fd1bbbd823ad7a98ee9a24ff78d121a0dcc59ea0ce18e343c2a666fa5a1b6d948dd41b118c2f5bb6711b9c65828 SHA512 04b82961035d0297f4f2323f63e48c09d03b1d354f452cc1c626b5f91e6d81300af3109fe2bef55168a440d98ab29bc544591d22a1b1149fa470f27db54122da EBUILD gmmlib-20.2.5.ebuild 884 BLAKE2B 424f9213091b171856cfa6980d30b38de1bdf8ed58ef70ba05292b7a00799ebc53f4dbdb0fd9d40447113a0637d1c91ca3a4f94c0f1b77853a996700074ff6bb SHA512 384e50e434e5efdd7b43c2532707d5571b30b5fa3ff934118d66d3a29e4e2d3e73fecdb2d430ead8391ddfa451733f0b9c8eddfd949984f09b86d856309c0c7c EBUILD gmmlib-20.3.2.ebuild 884 BLAKE2B 424f9213091b171856cfa6980d30b38de1bdf8ed58ef70ba05292b7a00799ebc53f4dbdb0fd9d40447113a0637d1c91ca3a4f94c0f1b77853a996700074ff6bb SHA512 384e50e434e5efdd7b43c2532707d5571b30b5fa3ff934118d66d3a29e4e2d3e73fecdb2d430ead8391ddfa451733f0b9c8eddfd949984f09b86d856309c0c7c -EBUILD gmmlib-9999.ebuild 832 BLAKE2B c679b2b098ab9b69bca49506c3579417f0bba14abc968eb64f58d7d47dceec272288f7bea7ac076f92fd6416c12adf476db57b4f08e58a63094bc6f7e40bf787 SHA512 3a4bcd7e49d73af846df1abd753e5d8d07920b5c589196217854a0968825763f8c89e16b5b2e4e1432c83af6123f3259f97589a3a45012de3332c8c8c42b2e28 -MISC metadata.xml 220 BLAKE2B 84f977d8ddafd6841e5bb33f6184f7bbba42eca7a00feae5a214221a0a6b37ddd3dc13d3dac223c8285daba53629fb9ef2f278675d51ce5b3da8dda6f419867b SHA512 33be2ee02959063935caf88639b7b116430ccacd420b40f9aee5708f081a8cec58d82b9bcbef803e6a4e0084d6f2dccd75cfd3144f15dacfbd783a52397765c3 +EBUILD gmmlib-20.4.1.ebuild 1021 BLAKE2B 94334db99ac85f71ffe275c078d859c01ec57976e1f9beeaec20f729800502dff88dbb36595358134e3fe0dd47d36ec05ede742bcb8cf96486a26ac8b511d40e SHA512 52721f3e6bf12c6c7cb5ba62ac689cddaf942ac90ecddb2d991ef0957cf491ec90ca55cdae61b4928dfa6a3c584c377a09e8fadb9fa59d0ba2ba487e3cfc81d0 +EBUILD gmmlib-9999.ebuild 1021 BLAKE2B 94334db99ac85f71ffe275c078d859c01ec57976e1f9beeaec20f729800502dff88dbb36595358134e3fe0dd47d36ec05ede742bcb8cf96486a26ac8b511d40e SHA512 52721f3e6bf12c6c7cb5ba62ac689cddaf942ac90ecddb2d991ef0957cf491ec90ca55cdae61b4928dfa6a3c584c377a09e8fadb9fa59d0ba2ba487e3cfc81d0 +MISC metadata.xml 490 BLAKE2B 306c3fddcc4a5569f5bd040f7cfb545b78a052d6786b54fa0751cf980b753d9097b09b2a03c0c9d11be40c0dab7dde2a92d1c1bbeb3775e1e77dec847230a93d SHA512 30cbe0310e14e2ebd354ece2d7b710db50ee9cbb7d697370f5bda57b2b823f9d93a6e3c07844c3f8d90b91fabf9236ac450c9fbaa5aca5438ef0d4d5feaaac0b diff --git a/media-libs/gmmlib/files/gmmlib-20.4.1_custom_cflags.patch b/media-libs/gmmlib/files/gmmlib-20.4.1_custom_cflags.patch new file mode 100644 index 000000000000..befd33f83bb6 --- /dev/null +++ b/media-libs/gmmlib/files/gmmlib-20.4.1_custom_cflags.patch @@ -0,0 +1,98 @@ +Prevent overriding of user-define CFLAGS, including -march flag. +The flag -msse4.1 is required otherwise compile will not be able to inline sse4.1 code. +Note: code should detect CPU features at runtime and use sse4.1 paths only if supported by CPU. + +--- a/Source/GmmLib/CMakeLists.txt ++++ b/Source/GmmLib/CMakeLists.txt +@@ -54,6 +54,10 @@ if(NOT DEFINED BS_USE_OSDM_BUILD_SYSTEM) + endif() + endif() + ++if(NOT DEFINED OVERRIDE_COMPILER_FLAGS) ++ option(OVERRIDE_COMPILER_FLAGS "Override user compiler FLAGS and use lib defaults" ON) ++endif() ++ + # begin -- label bldsys file prologue + # WARNING: The "project" statement triggers reading of CMAKE_TOOLCHAIN_FILE + # and so must precede the inclusion below of bs_init.cmake . +--- a/Source/GmmLib/Linux.cmake ++++ b/Source/GmmLib/Linux.cmake +@@ -38,7 +38,10 @@ SET (GMMLIB_COMPILER_FLAGS_COMMON + -Werror=format-security + -Werror=non-virtual-dtor + -Werror=return-type ++ ) + ++if (OVERRIDE_COMPILER_FLAGS) ++ list (APPEND GMMLIB_COMPILER_FLAGS_COMMON + # General optimization options + -march=${GMMLIB_MARCH} + -mpopcnt +@@ -47,19 +50,31 @@ SET (GMMLIB_COMPILER_FLAGS_COMMON + -msse3 + -mssse3 + -msse4 +- -msse4.1 + -msse4.2 ++ ) ++endif() ++ ++list (APPEND GMMLIB_COMPILER_FLAGS_COMMON ++ -msse4.1 # SSE4.1 compiler support is required to build + -mfpmath=sse + -finline-functions + -fno-short-enums + -Wa,--noexecstack + -fno-strict-aliasing ++ ) ++ ++if (OVERRIDE_COMPILER_FLAGS) ++ list (APPEND GMMLIB_COMPILER_FLAGS_COMMON + # Common defines + -DUSE_MMX + -DUSE_SSE + -DUSE_SSE2 + -DUSE_SSE3 + -DUSE_SSSE3 ++ ) ++endif() ++ ++list (APPEND GMMLIB_COMPILER_FLAGS_COMMON + # Other common flags + -fstack-protector + -fdata-sections +@@ -67,10 +82,15 @@ SET (GMMLIB_COMPILER_FLAGS_COMMON + -fmessage-length=0 + -fvisibility=hidden + -fPIC ++ ) ++ ++if (OVERRIDE_COMPILER_FLAGS) ++ list (APPEND GMMLIB_COMPILER_FLAGS_COMMON + -g + # -m32 or -m64 + -m${GMMLIB_ARCH} + ) ++endif() + + if ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU") + #Gcc only flags +@@ -128,13 +148,17 @@ SET( GMMLIB_COMPILER_FLAGS_RELEASEINTERNAL ${GMMLIB_COMPILER_FLAGS_RELEASE}) + + #set predefined compiler flags set + add_compile_options("${GMMLIB_COMPILER_FLAGS_COMMON}") ++if (OVERRIDE_COMPILER_FLAGS) + add_compile_options("$<$<CONFIG:Debug>:${GMMLIB_COMPILER_FLAGS_DEBUG}>") + add_compile_options("$<$<CONFIG:Release>:${GMMLIB_COMPILER_FLAGS_RELEASE}>") + add_compile_options("$<$<CONFIG:ReleaseInternal>:${GMMLIB_COMPILER_FLAGS_RELEASEINTERNAL}>") + #cmake 3.3+, add_compile_options("$<$<COMPILE_LANGUAGE:CXX>:${GMMLIB_COMPILER_CXX_FLAGS_COMMON}>") ++endif() + foreach (flag ${GMMLIB_COMPILER_CXX_FLAGS_COMMON}) + SET (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${flag}") + endforeach() + ++if (OVERRIDE_COMPILER_FLAGS) + SET(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -m${GMMLIB_ARCH}") + SET(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -m${GMMLIB_ARCH}") ++endif() + diff --git a/media-libs/gmmlib/gmmlib-20.4.1.ebuild b/media-libs/gmmlib/gmmlib-20.4.1.ebuild new file mode 100644 index 000000000000..09b5bcec53f0 --- /dev/null +++ b/media-libs/gmmlib/gmmlib-20.4.1.ebuild @@ -0,0 +1,49 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +CMAKE_ECLASS=cmake + +inherit cmake-multilib + +if [[ ${PV} == *9999 ]] ; then + : ${EGIT_REPO_URI:="https://github.com/intel/gmmlib"} + if [[ ${PV%9999} != "" ]] ; then + : ${EGIT_BRANCH:="release/${PV%.9999}"} + fi + inherit git-r3 +fi + +DESCRIPTION="Intel Graphics Memory Management Library" +HOMEPAGE="https://github.com/intel/gmmlib" +if [[ ${PV} == *9999 ]] ; then + SRC_URI="" + KEYWORDS="" +else + SRC_URI="https://github.com/intel/gmmlib/archive/intel-${P}.tar.gz" + S="${WORKDIR}/${PN}-intel-${P}" + KEYWORDS="~amd64" +fi + +LICENSE="MIT" +SLOT="0" +IUSE="test +custom-cflags" + +RESTRICT="!test? ( test )" + +RDEPEND="${DEPEND}" + +PATCHES=( + "${FILESDIR}"/${PN}-20.2.2_conditional_testing.patch + "${FILESDIR}"/${PN}-20.4.1_custom_cflags.patch +) + +multilib_src_configure() { + local mycmakeargs=( + -DBUILD_TYPE=Release + -DBUILD_TESTING=$(usex test) + -DOVERRIDE_COMPILER_FLAGS=$(usex !custom-cflags) + ) + cmake_src_configure +} diff --git a/media-libs/gmmlib/gmmlib-9999.ebuild b/media-libs/gmmlib/gmmlib-9999.ebuild index 814f7e0d4a70..09b5bcec53f0 100644 --- a/media-libs/gmmlib/gmmlib-9999.ebuild +++ b/media-libs/gmmlib/gmmlib-9999.ebuild @@ -1,9 +1,10 @@ -# Copyright 1999-2019 Gentoo Authors +# Copyright 1999-2021 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=7 CMAKE_ECLASS=cmake + inherit cmake-multilib if [[ ${PV} == *9999 ]] ; then @@ -27,16 +28,22 @@ fi LICENSE="MIT" SLOT="0" -IUSE="" +IUSE="test +custom-cflags" + +RESTRICT="!test? ( test )" -DEPEND="" RDEPEND="${DEPEND}" -multilib_src_configure() { -# once upstream makes this optional -# local mycmakeargs=( -# -DMEDIA_RUN_TEST_SUITE=OFF -# ) +PATCHES=( + "${FILESDIR}"/${PN}-20.2.2_conditional_testing.patch + "${FILESDIR}"/${PN}-20.4.1_custom_cflags.patch +) +multilib_src_configure() { + local mycmakeargs=( + -DBUILD_TYPE=Release + -DBUILD_TESTING=$(usex test) + -DOVERRIDE_COMPILER_FLAGS=$(usex !custom-cflags) + ) cmake_src_configure } diff --git a/media-libs/gmmlib/metadata.xml b/media-libs/gmmlib/metadata.xml index 80088c21d0ab..61c45b70c770 100644 --- a/media-libs/gmmlib/metadata.xml +++ b/media-libs/gmmlib/metadata.xml @@ -1,7 +1,14 @@ <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> <pkgmetadata> -<maintainer type="project"> - <email>media-video@gentoo.org</email> -</maintainer> + <maintainer type="project"> + <email>media-video@gentoo.org</email> + </maintainer> + <maintainer type="person"> + <email>k2k@narod.ru</email> + <name>Evgeny Grin</name> + </maintainer> + <use> + <flag name="custom-cflags">Do not override user CFLAGS like -march, -msse and similar with lib defaults. Not tested by upstream.</flag> + </use> </pkgmetadata> |