diff options
author | V3n3RiX <venerix@redcorelinux.org> | 2020-08-25 10:45:55 +0100 |
---|---|---|
committer | V3n3RiX <venerix@redcorelinux.org> | 2020-08-25 10:45:55 +0100 |
commit | 3cf7c3ef441822c889356fd1812ebf2944a59851 (patch) | |
tree | c513fe68548b40365c1c2ebfe35c58ad431cdd77 /media-gfx/openvdb | |
parent | 05b8b0e0af1d72e51a3ee61522941bf7605cd01c (diff) |
gentoo resync : 25.08.2020
Diffstat (limited to 'media-gfx/openvdb')
14 files changed, 731 insertions, 47 deletions
diff --git a/media-gfx/openvdb/Manifest b/media-gfx/openvdb/Manifest index acd790b5ad8c..085e02467055 100644 --- a/media-gfx/openvdb/Manifest +++ b/media-gfx/openvdb/Manifest @@ -1,9 +1,21 @@ AUX openvdb-4.0.2-findboost-fix.patch 747 BLAKE2B a9dbded82960113bc3e4f623636d446a3877abf117980abc3660703e513bbebfe70b153d5b216afbebee9ccb7edda0902cbfb88c0e702e0282b9798910e965a3 SHA512 e29ee68ffd907da86d67cf7ca8e2adb955acc1725d5d22be7e1851f2c387e17fb51b46630964e897c3b536be3f05705f86ddd70be53c2329a171a8d23dd7fd4e +AUX openvdb-4.0.2-fix-build-docs.patch 1436 BLAKE2B 5093138c7d1dbc7177c7a956b0b9e82a7661253f29ef3d000664735190791028439b403680d220acb748d7dce063ad5781d91802444295ab32ce91685540178e SHA512 e8908dc4eeb6e4e6694c6ceabd8a5965f04d74a53ac733436e45d0e954e8732205daf149fa2d0dddbc3894c276b52ba3db20acc2c6d091d9b008c7d85ff8db23 +AUX openvdb-4.0.2-fix-const-correctness-for-unittest.patch 1654 BLAKE2B 339e70de004c4a5b626100d8db21c4bf23e20953cfadb0bd8becf64116c2f47e8f83566074df4748d1ad7642a557e18f6cb4889495dbfbc8c826dbfc023f39c5 SHA512 25098a15a014ea3e78cb61f4aebce9c217a6e1ffc650df4a372c5b0639cc08b48e24788671d885edc9ae3ed89a558a8896ece5c122d0e17f8267d6ee3bfb1ea8 AUX openvdb-5.2.0-use-gnuinstalldirs.patch 10981 BLAKE2B 5ffdb1ec77280bc926d57fdccf9aa74db470e6031025a79e9503196bf4e4fa1984401eea8e5a7cb386545417014735a17bcf7dfc31aff79b8ef639ec82111255 SHA512 7ec960e07f1b1a81b32445e4cfc3769abb1d75d68076b825857fc12410525875bf50ba316da37d2a189d62162ad28c12530905d6c8696d1caa11b6d6752500a1 -AUX openvdb-5.2.0-use-pkgconfig-for-ilmbase-and-openexr.patch 2990 BLAKE2B d6508d578fb8be689f0a6af41b54f0d8ff158a52c2b0a3fe5940cf8cbce0707f2dee8ce228e8a3a80866f6702121849f15e20af281343ff574aecfdb95eef5cc SHA512 ce91505ca64326457caea3036ff899ff58b2aac4787b7bf84581a4ee55978179f93b57bb8a82a59fcf85d90cb85679fb2ec5e2d95e8b20760159ba55d590d5d5 +AUX openvdb-5.2.0-use-pkgconfig-for-ilmbase-and-openexr.patch 3343 BLAKE2B af20c099993e41a5d067146c166891ebe9bbde39ecf6329fc13d7830d6554388ca17721c44d598aa1d13db939dcdf5d1ea18a8ac9824d36c4899f3ba12ea7447 SHA512 7ffcc699342463bd79406c74b225e8c4033243f62c6d1ec6f8f0a94cc42e8d9262849dfaa1b3ed36a7818e576341ba90071a61350e7854a6993766a1fbd8f38f +AUX openvdb-6.2.1-fix-multilib-header-source.patch 1536 BLAKE2B 8c08943217c457bf5137464f225db04aed64933f8b6e5257909d470193c5b64bce321b40029b30897967e17574514753e7787dbcb36d0e66396ecce674312f80 SHA512 331d47d2b0e41853ef6ce2d652e3ae3524f197188a0e1314b082e4c16eaffef7e34ebaf4b12e26cb519e6282bcf9747529f93ca9e85c32b4b26fe81efaa74749 +AUX openvdb-6.2.1-use-gnuinstalldirs.patch 1583 BLAKE2B 5ae011f52122231457e9dd0e3f93191d0965ae23f414459143cafb95c2b9b35d6672b095d4a94f2bb327173aa04456c7cb8248770895a8a0ca12513696ceb39f SHA512 b600367c0e431315436f142e1a4f1cffb780cedd9de16b215211109980132c60ee608c4b4f8b02605c0f55ed423f7e674bed6bea37687eb45c6f9112b54dcc1f +AUX openvdb-7.1.0-0001-Fix-multilib-header-source.patch 2825 BLAKE2B 089bc79bbb8bd4544889c65d8bf064bf95869990778cb66595a19be402db85b569acb836b5918c902e6f6a10011a1480ef89e03636f951e30e5833eb667478cb SHA512 6968a60737b08bbec96beb8ec3796b7d99a713a798e37d8cd4015eacce7e7197b5befcd6721b310a4cdcfaca1781ab0cd7165958b14b487796a4159e9e214499 +AUX openvdb-7.1.0-0002-Fix-doc-install-dir.patch 1014 BLAKE2B 380c26e69da18479266201fd1233d19f3c39b13ee67d11cadca5bba900c470218a7563590f12a400a1f954155bfdfacc00862511ef05f3a61a54679924c57cae SHA512 21d4abf1cae31dfa8e59b6648a7c40f6f5f9572bdb87e6410144b427244ede488e059bf572344efc4e4cea91e7fb59b56364a7df6041f717db759002d09e8ee7 DIST openvdb-4.0.2-patchset-02.tar.xz 12428 BLAKE2B 2684ddf010df975912fcfc8c4f944d9a9ba447b48750140b6c46db31d49297f7495e5c77e9d5b85af0b2e1d0c4987184865642dc95f1fb3e463e85ee5987d203 SHA512 04377d552e218a8eb31c43381ba32263ba206a0870dccda1bcc031863dfdbcc953da7ea89fd420dc1a338fbd6123ac30bac2039c0a2a01c1fa9253a3fdd0b54d DIST openvdb-4.0.2.tar.gz 1689119 BLAKE2B dbc8d4ab44990440e201327d76bbf9bfe3e8f597505b1d008dedb95dc540277513f465d455079c59820acc5056c9a2edf56235e1097b6c73a1f7dd8c59609c15 SHA512 8e3e12583b81f9b9303b309e839c8321c67b67ff8a0e61bb56c87276bf25c0deff22f5a73c7c5b661b8e5df345bfdabfa6b0aea9bf16fce57d9c53a76751c75d DIST openvdb-5.2.0.tar.gz 1788969 BLAKE2B d146b78dd7db4936779ca214b1f7957d4868bf76aedb95c9a98e21d25983b750337a63bf4bc9ccb438b683988af7a3d708676dcf7b4662c84e4926e8000ceb68 SHA512 69e21190c27a055e476a319b0c2d961303fa2f3fec30bec93ed44072d01816ef89e5e8f0abfc3a22d1c73742aa31284c664596747b49cd985fea1a751776506e -EBUILD openvdb-4.0.2-r3.ebuild 2293 BLAKE2B c011e11315446c4ac195e98312125824a99a8017f6191e2e5e318c61304fede08dea92c9edb7f884f0ff92f859bb931ca4fc088a7c37d4480bd4dbe8ed54cdce SHA512 1fe3530d7cfa75e55f5cbdba0ca79e350506f163ef35637e7476a88a2ce8de92e6cad7bff4f6b8cd40c9b711d8c2421a845dbe07205c8d6e6608a0599214dc2d -EBUILD openvdb-5.2.0-r1.ebuild 2028 BLAKE2B 98aec54c4d96593bc53ef61ba71b85611ac0b93c0e01d7675ec1cd759ab1ed9f8a085b793b26946068ae8a8f28f00bcccc99367041df43360798303263a211cf SHA512 20a909898f3e88d0dc2be8220907478367bf31ff365095ddfad82991f58b8796bc64821fb3385376d64c02c99afeb52e430d91f87cb5fa6f3a886a91aa8661fd -MISC metadata.xml 1033 BLAKE2B 303f49be8253322a0bbb94875f7b9b03e127e9d2ab2eea64fbac1cd51f50d5be749c4c45c9491fbf3f56de7420fdb47913b6ef3c2d12f5ea0545042f68d990d4 SHA512 a81a1cd4684197d1d9455b1398c9ba1592d596d52c8e8fc5c0cc8de0357c1f1df7478fd76e4e42cda09524b0bbf41985e13cf530adb7ca7f1605f086207301a8 +DIST openvdb-6.2.1.tar.gz 1935325 BLAKE2B 24ca340e513d2f22521994fbb2315a1c3f817bb35a7402ca481b12444e5ced58dfd773cc07b47a56d1ed9f6951e58cf1ef0b5c35917620b031383faed21c6557 SHA512 f5d830880316b5ca3921c77c75f3a254aba47d144ac6c0223fc2732d99cbd6b7ffb7f27049f8ab3760ad77b3658fc08a82728325ba753bc29932aa46336457de +DIST openvdb-7.0.0.tar.gz 1872744 BLAKE2B e3a8c8d51f77e115d3d397abde0860a6322d56eb6c4795c1ba39539a23aab6cf37602ce7122965fbc3098b15b118b25010263f567e8003363b78c9b7d9d5dfd8 SHA512 f5321b22b10e192012d544cc02921d3d52f621778ec5aa21ba6d450f3e29f2fdbd76486ad390a0c008394dbc6ee4aeecc04527ef30e73adf71c1a08a021746b7 +DIST openvdb-7.1.0.tar.gz 1956052 BLAKE2B 7778d67bcc65ecb17b86f6e67a9e5f2d6574de5869a0a9c675ad7bc8540154c0f249a91c68a9da9068a3951b3e919e5676450fcaf13921c6263e7c87012a2f29 SHA512 49806375f7e6d7b12eaba24e672a068531d2f8a05f12eba29069710d2682f9983f9e6ad26047eed4b28e337f8d0e738b90130582863c710e8dd1e720bf0addad +EBUILD openvdb-4.0.2-r3.ebuild 2586 BLAKE2B 66ca91b3b90af64436d73dc7447be12ebe705c507a3232a1b41fd883c26eae08751af189e35c9ab423cb3bdfe9fd3a8321adaac9df8da58bdcb4f6aaf0926e80 SHA512 d77f6ad528a3a660fe5553c8b3d545747bd6a6634538ec1b1ceb72025d7da658cc69fa023648ab6781d38da0a9dc80ae606595e4c4bf39aaadf22f71b5c6b9de +EBUILD openvdb-5.2.0-r1.ebuild 2384 BLAKE2B 878871d565a68418dcf684cdd2464e9bb2c7278f3d1e9b5bc3d543415cd4e00cff63f237eacf2a58af57f287bd7dd70be098a95cb1d84525ab00f662a44ab6b6 SHA512 1b129380efaa23f33fd72fee32e4454b2872afe0bf17794d79bbfd6d58ba082b767a5cba133aa8cb2e2a1b22347318279b1ab17d01f696c39e3ef68ceddca460 +EBUILD openvdb-6.2.1.ebuild 2260 BLAKE2B 5ed0e241c5d038a3c9a013f3d0b55536c06f7c407bb92d0370d84b0d95a16b4c5de168d82719f91db25a789ba9c4fb434378a12d58fa9c25b753f40d794b3d1a SHA512 9eebb465a14d9f1d6b308829cdb0bc4232dcd71df56efc346659d6074e6eac886fef2dbc5cea451c61e546cd0a9c90ea41ba6a1320a29a156a0dcb429c471105 +EBUILD openvdb-7.0.0.ebuild 2762 BLAKE2B be75e5b95da7de9ea2ef4d0db8da198ed586b82fd15aa55e777b7f8b373f7227e526c6caafab4c9d9b8ab0ffe9042198d1f18f489e179e3acd55583b514a4a71 SHA512 2d3dc65ee06f4c2493c3ecfdca53c134c82f580506ea2c0249ee66382cd6909be5cdf8f44cd737a5eb42ad01dee5e036186074c76bf409ab546eb7828247a388 +EBUILD openvdb-7.1.0.ebuild 2684 BLAKE2B cdaf61392caa2ffbfd47c0b731fac60db860710bb9e8916efb3a50476672259626fb90299b995776cccc4a072b13b8ef52b553ddde52d44289ec692cebbdefeb SHA512 c9e371eedcbbd4366d13ca045c8c35c4ff351e325174949a884333a23b8828bb01e8a1333e92cbe8fc95fb4bab404de690a0d20ecc43d9b69e91f6c881d2a6f7 +MISC metadata.xml 1660 BLAKE2B 56a7113ef4e645a3a508d025f36129c78be342117583f9cc8ba3ffda2518b04bba3d928ad1fa9e78a601a0f1d216bc1744795c170a6cd3421f22c8754f192a98 SHA512 f5e21ebf80b7179b6bd041bcdf5cc53c4aab3cf99f829d9e26e56f3eea40a9d67edf8ec09d63a39b5e1a231df9d2e57b40e008786d25ee00e8ff2ca0ab0c399d diff --git a/media-gfx/openvdb/files/openvdb-4.0.2-fix-build-docs.patch b/media-gfx/openvdb/files/openvdb-4.0.2-fix-build-docs.patch new file mode 100644 index 000000000000..cdbb9440a1a4 --- /dev/null +++ b/media-gfx/openvdb/files/openvdb-4.0.2-fix-build-docs.patch @@ -0,0 +1,32 @@ +When building with doc USE flag enabled, the doc target is not built by +default and the missing docs cause an install failure. + +This patch ensures that when the doc target is defined, it will be +built. Otherwise it might be possible to fix it using a separate step +in src_compile to build the documentation specifically, prior to running +install. + +This has been tested and is required on 4.0.2 and 5.2.0, but is not +needed in >=openvdb-6 + +To reproduce the bug, enable the doc USE flag and emerge openvdb 4 or 5 +without this patch. The install fails as the doc file is missing. + +To show it is fixed. enable the doc USE flag and this patch and emerge +again. The install succeeds and the documentation can be found at +/usr/share/doc/openvdb-X + +Patch by Adrian Grigo + +diff -Naur a/openvdb/CMakeLists.txt b/openvdb/CMakeLists.txt +--- a/openvdb/CMakeLists.txt 2020-08-18 12:17:15.261321103 +1000 ++++ b/openvdb/CMakeLists.txt 2020-08-18 12:17:37.101397373 +1000 +@@ -394,7 +394,7 @@ + FILE ( WRITE ${CMAKE_CURRENT_BINARY_DIR}/cmake-doxygen-config ${DOXYGEN_CONFIG_CONTENT} ) + FILE ( APPEND ${CMAKE_CURRENT_BINARY_DIR}/cmake-doxygen-config "OUTPUT_DIRECTORY=${CMAKE_CURRENT_BINARY_DIR}/doc\n" ) + +- ADD_CUSTOM_TARGET ( doc ++ ADD_CUSTOM_TARGET ( doc ALL + ${DOXYGEN_EXECUTABLE} ${CMAKE_CURRENT_BINARY_DIR}/cmake-doxygen-config + WORKING_DIRECTORY ${PROJECT_SOURCE_DIR} + COMMENT "Generating API documentation with Doxygen" VERBATIM diff --git a/media-gfx/openvdb/files/openvdb-4.0.2-fix-const-correctness-for-unittest.patch b/media-gfx/openvdb/files/openvdb-4.0.2-fix-const-correctness-for-unittest.patch new file mode 100644 index 000000000000..cb2660329948 --- /dev/null +++ b/media-gfx/openvdb/files/openvdb-4.0.2-fix-const-correctness-for-unittest.patch @@ -0,0 +1,35 @@ +Blosc changed the signature of blosc_compcode_to_compname in 1.15 so +that the second parameter is now const char** not char **. This causes +compile failures when using openvdb with earlier versions of blosc. + +The fix, which is backported from openvdb-7, is to check the blosc +version and cast the char** to const char** for modern versions of +blosc. + +The bug can be produced by emerging blosc 1.15+, and then openvdb. +Without this patch, the compiler will fail with +error: invalid conversion from ‘char**’ to ‘const char**’ + +To test that the patch has been properly implemented, emerge modern +blosc and then openvdb with this patch, and the compile will succeed. + +Fixes bug https://bugs.gentoo.org/734102 +Upstream commit https://github.com/AcademySoftwareFoundation/openvdb/commit/d2e8bd87a63d1e9f66a558ecbb6e6cbd54f7de13 + +diff -Naur a/openvdb/unittest/TestFile.cc b/openvdb/unittest/TestFile.cc +--- a/openvdb/unittest/TestFile.cc 2020-08-19 02:11:48.945711312 +1000 ++++ b/openvdb/unittest/TestFile.cc 2020-08-19 02:13:31.106074899 +1000 +@@ -2666,7 +2666,12 @@ + + for (int compcode = 0; compcode <= BLOSC_ZLIB; ++compcode) { + char* compname = nullptr; +- if (0 > blosc_compcode_to_compname(compcode, &compname)) continue; ++#if BLOSC_VERSION_MAJOR > 1 || (BLOSC_VERSION_MAJOR == 1 && BLOSC_VERSION_MINOR >= 15) ++ if (0 > blosc_compcode_to_compname(compcode, const_cast<const char**>(&compname))) ++#else ++ if (0 > blosc_compcode_to_compname(compcode, &compname)) ++#endif ++ continue; + /// @todo This changes the compressor setting globally. + if (blosc_set_compressor(compname) < 0) continue; + diff --git a/media-gfx/openvdb/files/openvdb-5.2.0-use-pkgconfig-for-ilmbase-and-openexr.patch b/media-gfx/openvdb/files/openvdb-5.2.0-use-pkgconfig-for-ilmbase-and-openexr.patch index c3999e54f9cf..dd0b83540aa3 100644 --- a/media-gfx/openvdb/files/openvdb-5.2.0-use-pkgconfig-for-ilmbase-and-openexr.patch +++ b/media-gfx/openvdb/files/openvdb-5.2.0-use-pkgconfig-for-ilmbase-and-openexr.patch @@ -1,3 +1,11 @@ +This patch is an updated version of the patch created in dracwyrm's +patchset for openvdb 4.0.2 which uses PkgConfig to ensure that the +correct IlmBase and OpenEXR dependencies are found. + +In subsequent versions this functionality is taken over by +altering the directory the header files are searched for in +multilib-header-source patch by Bernd Waibel + diff -urN a/openvdb/CMakeLists.txt b/openvdb/CMakeLists.txt --- a/openvdb/CMakeLists.txt 2018-08-28 12:20:33.000000000 +0100 +++ b/openvdb/CMakeLists.txt 2018-08-28 12:25:19.807755722 +0100 diff --git a/media-gfx/openvdb/files/openvdb-6.2.1-fix-multilib-header-source.patch b/media-gfx/openvdb/files/openvdb-6.2.1-fix-multilib-header-source.patch new file mode 100644 index 000000000000..e8cfac755d3e --- /dev/null +++ b/media-gfx/openvdb/files/openvdb-6.2.1-fix-multilib-header-source.patch @@ -0,0 +1,38 @@ +This patch changes the default location that the header files look for +IlmBaseConfig.h as in Gentoo the version containg the ILMBASE_VERSION_MAJOR +and ILMBASE_VERSION_MINOR is stored under /usr/include/chost. + +Without this patch, compilation fails as it is unable to identify the +required IlmBase version. + +Based on the fix multilib header patch for 7.1.0 by Bernd Waibel + +diff -Naur a/cmake/FindIlmBase.cmake b/cmake/FindIlmBase.cmake +--- a/cmake/FindIlmBase.cmake 2020-02-02 01:03:55.000000000 +0800 ++++ b/cmake/FindIlmBase.cmake 2020-02-02 01:09:05.000000000 +0800 +@@ -168,9 +168,15 @@ + PATH_SUFFIXES include/OpenEXR OpenEXR + ) + ++if(EXISTS "/usr/include/${CHOST}/OpenEXR/IlmBaseConfig.h") ++ set(_ILMBASE_HEADERS "/usr/include/${CHOST}/OpenEXR") ++else() ++ set(_ILMBASE_HEADERS ${IlmBase_INCLUDE_DIR}) ++endif() ++ + if(EXISTS "${IlmBase_INCLUDE_DIR}/IlmBaseConfig.h") + # Get the ILMBASE version information from the config header +- file(STRINGS "${IlmBase_INCLUDE_DIR}/IlmBaseConfig.h" ++ file(STRINGS "${_ILMBASE_HEADERS}/IlmBaseConfig.h" + _ilmbase_version_major_string REGEX "#define ILMBASE_VERSION_MAJOR " + ) + string(REGEX REPLACE "#define ILMBASE_VERSION_MAJOR" "" +@@ -178,7 +184,7 @@ + ) + string(STRIP "${_ilmbase_version_major_string}" IlmBase_VERSION_MAJOR) + +- file(STRINGS "${IlmBase_INCLUDE_DIR}/IlmBaseConfig.h" ++ file(STRINGS "${_ILMBASE_HEADERS}/IlmBaseConfig.h" + _ilmbase_version_minor_string REGEX "#define ILMBASE_VERSION_MINOR " + ) + string(REGEX REPLACE "#define ILMBASE_VERSION_MINOR" "" diff --git a/media-gfx/openvdb/files/openvdb-6.2.1-use-gnuinstalldirs.patch b/media-gfx/openvdb/files/openvdb-6.2.1-use-gnuinstalldirs.patch new file mode 100644 index 000000000000..ac73d82f9c34 --- /dev/null +++ b/media-gfx/openvdb/files/openvdb-6.2.1-use-gnuinstalldirs.patch @@ -0,0 +1,54 @@ +diff -Naur a/CMakeLists.txt b/CMakeLists.txt +--- a/CMakeLists.txt 2020-01-08 22:16:00.493079361 +0800 ++++ b/CMakeLists.txt 2020-01-08 22:16:44.790285583 +0800 +@@ -252,6 +252,8 @@ + + enable_testing() + ++INCLUDE ( GNUInstallDirs ) ++ + # Add our cmake modules + + list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_LIST_DIR}/cmake") +diff -Naur a/openvdb/CMakeLists.txt b/openvdb/CMakeLists.txt +--- a/openvdb/CMakeLists.txt 2020-01-08 22:16:07.362646127 +0800 ++++ b/openvdb/CMakeLists.txt 2020-01-08 22:19:54.638308684 +0800 +@@ -492,7 +492,7 @@ + install(TARGETS + openvdb_static + DESTINATION +- lib ++ ${CMAKE_INSTALL_LIBDIR} + ) + endif() + +@@ -500,14 +500,14 @@ + if(WIN32) + install(TARGETS + openvdb_shared +- RUNTIME DESTINATION bin COMPONENT Runtime +- ARCHIVE DESTINATION lib COMPONENT Runtime ++ RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} COMPONENT Runtime ++ ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} COMPONENT Runtime + ) + else() + install(TARGETS + openvdb_shared + DESTINATION +- lib ++ ${CMAKE_INSTALL_LIBDIR} + ) + endif() + endif() +diff -Naur a/openvdb/python/CMakeLists.txt b/openvdb/python/CMakeLists.txt +--- a/openvdb/python/CMakeLists.txt 2020-01-08 22:16:14.452199013 +0800 ++++ b/openvdb/python/CMakeLists.txt 2020-01-08 22:21:45.311324663 +0800 +@@ -232,7 +232,7 @@ + ${PYOPENVDB_INSTALL_DIRECTORY} + ) + +-install(FILES ${PYTHON_PUBLIC_INCLUDE_NAMES} DESTINATION include/openvdb/python) ++install(FILES ${PYTHON_PUBLIC_INCLUDE_NAMES} DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/openvdb/python) + + # pytest + diff --git a/media-gfx/openvdb/files/openvdb-7.1.0-0001-Fix-multilib-header-source.patch b/media-gfx/openvdb/files/openvdb-7.1.0-0001-Fix-multilib-header-source.patch new file mode 100644 index 000000000000..13d0f45fabf4 --- /dev/null +++ b/media-gfx/openvdb/files/openvdb-7.1.0-0001-Fix-multilib-header-source.patch @@ -0,0 +1,75 @@ +From 7558089b3dae599ffc80329da3a5c1decf882ca7 Mon Sep 17 00:00:00 2001 +From: Bernd Waibel <waebbl@gmail.com> +Date: Fri, 28 Feb 2020 17:01:25 +0100 +Subject: [PATCH] Fix multilib header source + +Signed-off-by: Bernd Waibel <waebbl@gmail.com> +--- + cmake/FindIlmBase.cmake | 10 ++++++++-- + cmake/FindOpenEXR.cmake | 10 ++++++++-- + 2 files changed, 16 insertions(+), 4 deletions(-) + +diff --git a/cmake/FindIlmBase.cmake b/cmake/FindIlmBase.cmake +index f20f803..bb85019 100644 +--- a/cmake/FindIlmBase.cmake ++++ b/cmake/FindIlmBase.cmake +@@ -168,9 +168,15 @@ find_path(IlmBase_INCLUDE_DIR IlmBaseConfig.h + PATH_SUFFIXES include/OpenEXR OpenEXR + ) + ++if(EXISTS "/usr/include/${CHOST}/OpenEXR/IlmBaseConfig.h") ++ set(_ILMBASE_HEADERS "/usr/include/${CHOST}/OpenEXR") ++else() ++ set(_ILMBASE_HEADERS ${IlmBase_INCLUDE_DIR}) ++endif() ++ + if(EXISTS "${IlmBase_INCLUDE_DIR}/IlmBaseConfig.h") + # Get the ILMBASE version information from the config header +- file(STRINGS "${IlmBase_INCLUDE_DIR}/IlmBaseConfig.h" ++ file(STRINGS "${_ILMBASE_HEADERS}/IlmBaseConfig.h" + _ilmbase_version_major_string REGEX "#define ILMBASE_VERSION_MAJOR " + ) + string(REGEX REPLACE "#define ILMBASE_VERSION_MAJOR" "" +@@ -178,7 +184,7 @@ if(EXISTS "${IlmBase_INCLUDE_DIR}/IlmBaseConfig.h") + ) + string(STRIP "${_ilmbase_version_major_string}" IlmBase_VERSION_MAJOR) + +- file(STRINGS "${IlmBase_INCLUDE_DIR}/IlmBaseConfig.h" ++ file(STRINGS "${_ILMBASE_HEADERS}/IlmBaseConfig.h" + _ilmbase_version_minor_string REGEX "#define ILMBASE_VERSION_MINOR " + ) + string(REGEX REPLACE "#define ILMBASE_VERSION_MINOR" "" +diff --git a/cmake/FindOpenEXR.cmake b/cmake/FindOpenEXR.cmake +index d0d356f..0c5dd7b 100644 +--- a/cmake/FindOpenEXR.cmake ++++ b/cmake/FindOpenEXR.cmake +@@ -161,9 +161,15 @@ find_path(OpenEXR_INCLUDE_DIR OpenEXRConfig.h + PATH_SUFFIXES include/OpenEXR OpenEXR + ) + ++if(EXISTS "/usr/include/${CHOST}/OpenEXR/OpenEXRConfig.h") ++ set(_OPENEXR_HEADERS "/usr/include/${CHOST}/OpenEXR") ++else() ++ set(_OPENEXR_HEADERS "${OpenEXR_INCLUDE_DIR}") ++endif() ++ + if(EXISTS "${OpenEXR_INCLUDE_DIR}/OpenEXRConfig.h") + # Get the EXR version information from the config header +- file(STRINGS "${OpenEXR_INCLUDE_DIR}/OpenEXRConfig.h" ++ file(STRINGS "${_OPENEXR_HEADERS}/OpenEXRConfig.h" + _openexr_version_major_string REGEX "#define OPENEXR_VERSION_MAJOR " + ) + string(REGEX REPLACE "#define OPENEXR_VERSION_MAJOR" "" +@@ -171,7 +177,7 @@ if(EXISTS "${OpenEXR_INCLUDE_DIR}/OpenEXRConfig.h") + ) + string(STRIP "${_openexr_version_major_string}" OpenEXR_VERSION_MAJOR) + +- file(STRINGS "${OpenEXR_INCLUDE_DIR}/OpenEXRConfig.h" ++ file(STRINGS "${_OPENEXR_HEADERS}/OpenEXRConfig.h" + _openexr_version_minor_string REGEX "#define OPENEXR_VERSION_MINOR " + ) + string(REGEX REPLACE "#define OPENEXR_VERSION_MINOR" "" +-- +2.25.1 + + diff --git a/media-gfx/openvdb/files/openvdb-7.1.0-0002-Fix-doc-install-dir.patch b/media-gfx/openvdb/files/openvdb-7.1.0-0002-Fix-doc-install-dir.patch new file mode 100644 index 000000000000..73d4b1ccd422 --- /dev/null +++ b/media-gfx/openvdb/files/openvdb-7.1.0-0002-Fix-doc-install-dir.patch @@ -0,0 +1,25 @@ +From 66dec67036116243893fdf74060e55b70f65ab17 Mon Sep 17 00:00:00 2001 +From: Bernd Waibel <waebbl@gmail.com> +Date: Fri, 28 Feb 2020 21:51:30 +0100 +Subject: [PATCH] Fix doc install dir + +Signed-off-by: Bernd Waibel <waebbl@gmail.com> +--- + doc/CMakeLists.txt | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/doc/CMakeLists.txt b/doc/CMakeLists.txt +index 1cf58ea..a6bd849 100644 +--- a/doc/CMakeLists.txt ++++ b/doc/CMakeLists.txt +@@ -64,5 +64,5 @@ add_custom_target(doc ALL + ) + + # Suppress "Installing..." messages for all but one of the hundreds of generated files. +-install(FILES ${CMAKE_CURRENT_BINARY_DIR}/openvdb/doc/html/index.html DESTINATION doc/html) +-install(DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/openvdb/doc/html DESTINATION doc MESSAGE_NEVER) ++install(FILES ${CMAKE_CURRENT_BINARY_DIR}/openvdb/doc/html/index.html DESTINATION ${CMAKE_INSTALL_DOCDIR}/html) ++install(DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/openvdb/doc/html DESTINATION ${CMAKE_INSTALL_DOCDIR} MESSAGE_NEVER) +-- +2.25.1 + diff --git a/media-gfx/openvdb/metadata.xml b/media-gfx/openvdb/metadata.xml index 747061595948..aac3bf03086b 100644 --- a/media-gfx/openvdb/metadata.xml +++ b/media-gfx/openvdb/metadata.xml @@ -15,14 +15,29 @@ Chance of Meatballs2' and 'How to Train Your Dragon 2'. </longdescription> <use> - <flag restrict="<media-gfx/openvdb-5.0.0" name="abi3-compat"> - Disables newer features to maintain compatibility with ABI3. Enabled by default. + <flag restrict=">=media-gfx/openvdb-7.0.0" name="numpy"> + Build pyopenvdb with support for <pkg>dev-python/numpy</pkg> </flag> - <flag restrict=">=media-gfx/openvdb-5.0.0" name="abi4-compat"> - Disables newer features to maintain compatibility with ABI4. Enabled by default. + <flag restrict="<=media-gfx/openvdb-6.0.0" name="abi3-compat"> + Disables newer features to maintain compatibility with ABI3. + </flag> + <flag restrict="<=media-gfx/openvdb-7.0.0" name="abi4-compat"> + Disables newer features to maintain compatibility with ABI4. + </flag> + <flag restrict="<=media-gfx/openvdb-7.1.0" name="abi5-compat"> + Disables newer features to maintain compatibility with ABI5. + </flag> + <flag restrict=">=media-gfx/openvdb-6.0.0" name="abi6-compat"> + Disables newer features to maintain compatibility with ABI6. + </flag> + <flag restrict=">=media-gfx/openvdb-7.0.0" name="abi7-compat"> + Disables newer features to maintain compatibility with ABI7. + </flag> + <flag restrict=">=media-gfx/openvdb-7.0.0" name="utils"> + Build utility binaries </flag> </use> <upstream> - <remote-id type="github">dreamworksanimation/openvdb</remote-id> + <remote-id type="github">AcademySoftwareFoundation/openvdb</remote-id> </upstream> </pkgmetadata> diff --git a/media-gfx/openvdb/openvdb-4.0.2-r3.ebuild b/media-gfx/openvdb/openvdb-4.0.2-r3.ebuild index 221e31086115..f6705df69633 100644 --- a/media-gfx/openvdb/openvdb-4.0.2-r3.ebuild +++ b/media-gfx/openvdb/openvdb-4.0.2-r3.ebuild @@ -1,30 +1,34 @@ # Copyright 1999-2020 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -EAPI=6 +EAPI=7 -PYTHON_COMPAT=( python3_6 ) +PYTHON_COMPAT=( python3_{6,7,8,9} ) -inherit cmake-utils flag-o-matic python-single-r1 +inherit cmake flag-o-matic python-single-r1 -DESCRIPTION="Libs for the efficient manipulation of volumetric data" +DESCRIPTION="Library for the efficient manipulation of volumetric data" HOMEPAGE="https://www.openvdb.org" -SRC_URI="https://github.com/dreamworksanimation/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz +SRC_URI="https://github.com/AcademySoftwareFoundation/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz https://dev.gentoo.org/~dracwyrm/patches/${P}-patchset-02.tar.xz" LICENSE="MPL-2.0" SLOT="0" KEYWORDS="amd64 ~x86" -IUSE="+abi3-compat doc python test" +IUSE="abi3-compat +abi4-compat doc python test" RESTRICT="!test? ( test )" -REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )" + +REQUIRED_USE=" + python? ( ${PYTHON_REQUIRED_USE} ) + ^^ ( abi3-compat abi4-compat ) +" RDEPEND=" - >=dev-libs/boost-1.62:= - >=dev-libs/c-blosc-1.5.0 - dev-libs/jemalloc - dev-libs/log4cplus - media-libs/glfw:= + dev-libs/boost:= + dev-libs/c-blosc:= + dev-libs/jemalloc:= + dev-libs/log4cplus:= + media-libs/glfw media-libs/openexr:= sys-libs/zlib:= x11-libs/libXcursor @@ -34,13 +38,18 @@ RDEPEND=" python? ( ${PYTHON_DEPS} $(python_gen_cond_dep ' - >=dev-libs/boost-1.62:=[python,${PYTHON_MULTI_USEDEP}] - dev-python/numpy[${PYTHON_MULTI_USEDEP}] + dev-libs/boost:=[python?,${PYTHON_USEDEP}] + dev-python/numpy[${PYTHON_USEDEP}] ') - )" + ) +" -DEPEND="${RDEPEND} +DEPEND=" + ${RDEPEND} dev-cpp/tbb +" + +BDEPEND=" virtual/pkgconfig doc? ( app-doc/doxygen @@ -50,13 +59,16 @@ DEPEND="${RDEPEND} dev-texlive/texlive-latex dev-texlive/texlive-latexextra ) - test? ( dev-util/cppunit )" + test? ( dev-util/cppunit ) +" PATCHES=( "${WORKDIR}/${P}-patchset-02/0001-use-gnuinstalldirs.patch" "${WORKDIR}/${P}-patchset-02/0002-use-pkgconfig-for-ilmbase-and-openexr.patch" "${WORKDIR}/${P}-patchset-02/0003-boost-1.65-numpy-support.patch" "${FILESDIR}/${P}-findboost-fix.patch" + "${FILESDIR}/${P}-fix-const-correctness-for-unittest.patch" + "${FILESDIR}/${P}-fix-build-docs.patch" ) pkg_setup() { @@ -69,6 +81,15 @@ src_configure() { # To stay in sync with Boost append-cxxflags -std=c++14 + local version + if use abi3-compat; then + version=3 + elif use abi4-compat; then + version=4 + else + die "Openvdb abi version is not compatible" + fi + local mycmakeargs=( -DBLOSC_LOCATION="${myprefix}" -DCMAKE_INSTALL_DOCDIR="share/doc/${PF}" @@ -85,5 +106,5 @@ src_configure() { use python && mycmakeargs+=( -DPYOPENVDB_INSTALL_DIRECTORY="$(python_get_sitedir)" ) use test && mycmakeargs+=( -DCPPUNIT_LOCATION="${myprefix}" ) - cmake-utils_src_configure + cmake_src_configure } diff --git a/media-gfx/openvdb/openvdb-5.2.0-r1.ebuild b/media-gfx/openvdb/openvdb-5.2.0-r1.ebuild index 2f2eb78d9fcb..a176389a2a05 100644 --- a/media-gfx/openvdb/openvdb-5.2.0-r1.ebuild +++ b/media-gfx/openvdb/openvdb-5.2.0-r1.ebuild @@ -1,29 +1,32 @@ # Copyright 1999-2020 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -EAPI=6 +EAPI=7 -PYTHON_COMPAT=( python3_6 ) +PYTHON_COMPAT=( python3_{6,7,8,9} ) -inherit cmake-utils flag-o-matic python-single-r1 +inherit cmake flag-o-matic python-single-r1 -DESCRIPTION="Libs for the efficient manipulation of volumetric data" +DESCRIPTION="Library for the efficient manipulation of volumetric data" HOMEPAGE="https://www.openvdb.org" -SRC_URI="https://github.com/dreamworksanimation/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz" +SRC_URI="https://github.com/AcademySoftwareFoundation/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz" LICENSE="MPL-2.0" SLOT="0" KEYWORDS="~amd64 ~x86" -IUSE="+abi4-compat doc python test" +IUSE="abi3-compat abi4-compat +abi5-compat doc python test" RESTRICT="!test? ( test )" -REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )" +REQUIRED_USE=" + python? ( ${PYTHON_REQUIRED_USE} ) + ^^ ( abi3-compat abi4-compat abi5-compat ) +" RDEPEND=" - >=dev-libs/boost-1.62:= - >=dev-libs/c-blosc-1.5.0 - dev-libs/jemalloc - dev-libs/log4cplus - media-libs/glfw:= + dev-libs/boost:= + dev-libs/c-blosc:= + dev-libs/jemalloc:= + dev-libs/log4cplus:= + media-libs/glfw media-libs/openexr:= sys-libs/zlib:= x11-libs/libXcursor @@ -33,13 +36,18 @@ RDEPEND=" python? ( ${PYTHON_DEPS} $(python_gen_cond_dep ' - >=dev-libs/boost-1.62:=[python,${PYTHON_MULTI_USEDEP}] - dev-python/numpy[${PYTHON_MULTI_USEDEP}] + dev-libs/boost:=[python?,${PYTHON_USEDEP}] + dev-python/numpy[${PYTHON_USEDEP}] ') - )" + ) +" -DEPEND="${RDEPEND} +DEPEND=" + ${RDEPEND} dev-cpp/tbb +" + +BDEPEND=" virtual/pkgconfig doc? ( app-doc/doxygen @@ -49,10 +57,14 @@ DEPEND="${RDEPEND} dev-texlive/texlive-latex dev-texlive/texlive-latexextra ) - test? ( dev-util/cppunit )" + test? ( dev-util/cppunit ) +" -PATCHES=( "${FILESDIR}/${P}-use-gnuinstalldirs.patch" +PATCHES=( + "${FILESDIR}/${P}-use-gnuinstalldirs.patch" "${FILESDIR}/${P}-use-pkgconfig-for-ilmbase-and-openexr.patch" + "${FILESDIR}/${PN}-4.0.2-fix-const-correctness-for-unittest.patch" + "${FILESDIR}/${PN}-4.0.2-fix-build-docs.patch" ) pkg_setup() { @@ -62,11 +74,22 @@ pkg_setup() { src_configure() { local myprefix="${EPREFIX}/usr/" + local version + if use abi3-compat; then + version=3 + elif use abi4-compat; then + version=4 + elif use abi5-compat; then + version=5 + else + die "Openvdb ABI version not specified" + fi + local mycmakeargs=( -DBLOSC_LOCATION="${myprefix}" -DCMAKE_INSTALL_DOCDIR="share/doc/${PF}" -DGLFW3_LOCATION="${myprefix}" - -DOPENVDB_ABI_VERSION_NUMBER=$(usex abi4-compat 4 5) + -DOPENVDB_ABI_VERSION_NUMBER="${version}" -DOPENVDB_BUILD_DOCS=$(usex doc) -DOPENVDB_BUILD_PYTHON_MODULE=$(usex python) -DOPENVDB_BUILD_UNITTESTS=$(usex test) @@ -78,5 +101,5 @@ src_configure() { use python && mycmakeargs+=( -DPYOPENVDB_INSTALL_DIRECTORY="$(python_get_sitedir)" ) use test && mycmakeargs+=( -DCPPUNIT_LOCATION="${myprefix}" ) - cmake-utils_src_configure + cmake_src_configure } diff --git a/media-gfx/openvdb/openvdb-6.2.1.ebuild b/media-gfx/openvdb/openvdb-6.2.1.ebuild new file mode 100644 index 000000000000..ebade646417c --- /dev/null +++ b/media-gfx/openvdb/openvdb-6.2.1.ebuild @@ -0,0 +1,102 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +PYTHON_COMPAT=( python3_{6,7,8,9} ) + +inherit cmake flag-o-matic python-single-r1 + +DESCRIPTION="Library for the efficient manipulation of volumetric data" +HOMEPAGE="https://www.openvdb.org" +SRC_URI="https://github.com/AcademySoftwareFoundation/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz" + +LICENSE="MPL-2.0" +SLOT="0" +KEYWORDS="~amd64 ~x86" +IUSE="abi4-compat abi5-compat +abi6-compat doc python test" +RESTRICT="!test? ( test )" + +REQUIRED_USE=" + python? ( ${PYTHON_REQUIRED_USE} ) + ^^ ( abi4-compat abi5-compat abi6-compat ) +" + +RDEPEND=" + dev-libs/boost:= + dev-libs/c-blosc:= + dev-libs/jemalloc:= + dev-libs/log4cplus:= + media-libs/glfw + media-libs/openexr:= + sys-libs/zlib:= + x11-libs/libXcursor + x11-libs/libXi + x11-libs/libXinerama + x11-libs/libXrandr + python? ( + ${PYTHON_DEPS} + $(python_gen_cond_dep ' + dev-libs/boost:=[python?,${PYTHON_USEDEP}] + dev-python/numpy[${PYTHON_USEDEP}] + ') + )" + +DEPEND=" + ${RDEPEND} + dev-cpp/tbb +" + +BDEPEND=" + >=dev-util/cmake-3.16.2-r1 + virtual/pkgconfig + doc? ( + app-doc/doxygen + dev-texlive/texlive-bibtexextra + dev-texlive/texlive-fontsextra + dev-texlive/texlive-fontutils + dev-texlive/texlive-latex + dev-texlive/texlive-latexextra + ) + test? ( dev-util/cppunit ) +" + +PATCHES=( + "${FILESDIR}/${P}-fix-multilib-header-source.patch" + "${FILESDIR}/${PN}-4.0.2-fix-const-correctness-for-unittest.patch" + "${FILESDIR}/${P}-use-gnuinstalldirs.patch" +) + +pkg_setup() { + use python && python-single-r1_pkg_setup +} + +src_configure() { + local myprefix="${EPREFIX}/usr/" + + local version + if use abi4-compat; then + version=4 + elif use abi5-compat; then + version=5 + elif use abi6-compat; then + version=6 + else + die "Openvdb ABI version not specified" + fi + + local mycmakeargs=( + -DCMAKE_INSTALL_DOCDIR="share/doc/${PF}" + -DOPENVDB_ABI_VERSION_NUMBER="${version}" + -DOPENVDB_BUILD_DOCS=$(usex doc) + -DOPENVDB_BUILD_PYTHON_MODULE=$(usex python) + -DOPENVDB_BUILD_UNITTESTS=$(usex test) + -DOPENVDB_ENABLE_RPATH=OFF + -DCHOST="${CHOST}" + ) + + use python && mycmakeargs+=( -DPYOPENVDB_INSTALL_DIRECTORY="$(python_get_sitedir)" ) + use test && mycmakeargs+=( -DCPPUNIT_LOCATION="${myprefix}" ) + + cmake_src_configure +} diff --git a/media-gfx/openvdb/openvdb-7.0.0.ebuild b/media-gfx/openvdb/openvdb-7.0.0.ebuild new file mode 100644 index 000000000000..db984b8cdbfb --- /dev/null +++ b/media-gfx/openvdb/openvdb-7.0.0.ebuild @@ -0,0 +1,123 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +PYTHON_COMPAT=( python3_{6,7,8,9} ) + +inherit cmake flag-o-matic python-single-r1 + +DESCRIPTION="Library for the efficient manipulation of volumetric data" +HOMEPAGE="https://www.openvdb.org" +SRC_URI="https://github.com/AcademySoftwareFoundation/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz" + +LICENSE="MPL-2.0" +SLOT="0" +KEYWORDS="~amd64 ~x86" +IUSE="cpu_flags_x86_avx cpu_flags_x86_sse4_2 doc numpy python static-libs test utils abi5-compat abi6-compat +abi7-compat" +RESTRICT="!test? ( test )" + +REQUIRED_USE=" + numpy? ( python ) + ^^ ( abi5-compat abi6-compat abi7-compat ) + python? ( ${PYTHON_REQUIRED_USE} ) +" + +RDEPEND=" + dev-libs/boost:= + dev-libs/c-blosc:= + dev-libs/jemalloc:= + dev-libs/log4cplus:= + media-libs/glfw + media-libs/openexr:= + sys-libs/zlib:= + x11-libs/libXcursor + x11-libs/libXi + x11-libs/libXinerama + x11-libs/libXrandr + python? ( + ${PYTHON_DEPS} + $(python_gen_cond_dep ' + dev-libs/boost:=[numpy?,python?,${PYTHON_USEDEP}] + numpy? ( dev-python/numpy[${PYTHON_USEDEP}] ) + ') + ) +" + +DEPEND=" + ${RDEPEND} + dev-cpp/tbb +" + +BDEPEND=" + >=dev-util/cmake-3.16.2-r1 + virtual/pkgconfig + doc? ( + app-doc/doxygen + dev-texlive/texlive-bibtexextra + dev-texlive/texlive-fontsextra + dev-texlive/texlive-fontutils + dev-texlive/texlive-latex + dev-texlive/texlive-latexextra + ) + test? ( dev-util/cppunit ) +" + +PATCHES=( + "${FILESDIR}/${PN}-7.1.0-0001-Fix-multilib-header-source.patch" + "${FILESDIR}/${PN}-7.1.0-0002-Fix-doc-install-dir.patch" +) + +pkg_setup() { + use python && python-single-r1_pkg_setup +} + +src_configure() { + local myprefix="${EPREFIX}/usr/" + + local version + if use abi5-compat; then + version=5 + elif use abi6-compat; then + version=6 + elif use abi7-compat; then + version=7 + else + die "Openvdb abi version is not compatible" + fi + + local mycmakeargs=( + -DCHOST="${CHOST}" + -DCMAKE_INSTALL_DOCDIR="share/doc/${PF}/" + -DOPENVDB_ABI_VERSION_NUMBER="${version}" + -DOPENVDB_BUILD_DOCS=$(usex doc) + -DOPENVDB_BUILD_UNITTESTS=$(usex test) + -DOPENVDB_BUILD_VDB_LOD=$(usex !utils) + -DOPENVDB_BUILD_VDB_RENDER=$(usex !utils) + -DOPENVDB_BUILD_VDB_VIEW=$(usex !utils) + -DOPENVDB_CORE_SHARED=ON + -DOPENVDB_CORE_STATIC=$(usex static-libs) + -DOPENVDB_ENABLE_RPATH=OFF + -DUSE_CCACHE=OFF + -DUSE_COLORED_OUTPUT=ON + -DUSE_EXR=ON + -DUSE_LOG4CPLUS=ON + ) + + if use python; then + mycmakeargs+=( + -DOPENVDB_BUILD_PYTHON_MODULE=ON + -DUSE_NUMPY=$(usex numpy) + -DPYOPENVDB_INSTALL_DIRECTORY="$(python_get_sitedir)" + -DPython_EXECUTABLE="${EPYTHON}" + ) + fi + + if use cpu_flags_x86_avx; then + mycmakeargs+=( -DOPENVDB_SIMD=AVX ) + elif use cpu_flags_x86_sse4_2; then + mycmakeargs+=( -DOPENVDB_SIMD=SSE42 ) + fi + + cmake_src_configure +} diff --git a/media-gfx/openvdb/openvdb-7.1.0.ebuild b/media-gfx/openvdb/openvdb-7.1.0.ebuild new file mode 100644 index 000000000000..912824ece66d --- /dev/null +++ b/media-gfx/openvdb/openvdb-7.1.0.ebuild @@ -0,0 +1,121 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +PYTHON_COMPAT=( python3_{6,7,8,9} ) + +inherit cmake flag-o-matic python-single-r1 + +DESCRIPTION="Library for the efficient manipulation of volumetric data" +HOMEPAGE="https://www.openvdb.org" +SRC_URI="https://github.com/AcademySoftwareFoundation/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz" + +LICENSE="MPL-2.0" +SLOT="0" +KEYWORDS="~amd64 ~x86" +IUSE="cpu_flags_x86_avx cpu_flags_x86_sse4_2 doc numpy python static-libs test utils abi6-compat +abi7-compat" +RESTRICT="!test? ( test )" + +REQUIRED_USE=" + numpy? ( python ) + ^^ ( abi6-compat abi7-compat ) + python? ( ${PYTHON_REQUIRED_USE} ) +" + +RDEPEND=" + dev-libs/boost:= + dev-libs/c-blosc:= + dev-libs/jemalloc:= + dev-libs/log4cplus:= + media-libs/glfw + media-libs/openexr:= + sys-libs/zlib:= + x11-libs/libXcursor + x11-libs/libXi + x11-libs/libXinerama + x11-libs/libXrandr + python? ( + ${PYTHON_DEPS} + $(python_gen_cond_dep ' + dev-libs/boost:=[numpy?,python?,${PYTHON_USEDEP}] + numpy? ( dev-python/numpy[${PYTHON_USEDEP}] ) + ') + ) +" + +DEPEND=" + ${RDEPEND} + dev-cpp/tbb +" + +BDEPEND=" + >=dev-util/cmake-3.16.2-r1 + virtual/pkgconfig + doc? ( + app-doc/doxygen + dev-texlive/texlive-bibtexextra + dev-texlive/texlive-fontsextra + dev-texlive/texlive-fontutils + dev-texlive/texlive-latex + dev-texlive/texlive-latexextra + ) + test? ( dev-util/cppunit ) +" + +PATCHES=( + "${FILESDIR}/${P}-0001-Fix-multilib-header-source.patch" + "${FILESDIR}/${P}-0002-Fix-doc-install-dir.patch" +) + +pkg_setup() { + use python && python-single-r1_pkg_setup +} + +src_configure() { + local myprefix="${EPREFIX}/usr/" + + local version + if use abi6-compat; then + version=6 + elif use abi7-compat; then + version=7 + else + die "Openvdb abi version is not compatible" + fi + + local mycmakeargs=( + -DCHOST="${CHOST}" + -DCMAKE_INSTALL_DOCDIR="share/doc/${PF}/" + -DOPENVDB_ABI_VERSION_NUMBER="${version}" + -DOPENVDB_BUILD_DOCS=$(usex doc) + -DOPENVDB_BUILD_UNITTESTS=$(usex test) + -DOPENVDB_BUILD_VDB_LOD=$(usex !utils) + -DOPENVDB_BUILD_VDB_RENDER=$(usex !utils) + -DOPENVDB_BUILD_VDB_VIEW=$(usex !utils) + -DOPENVDB_CORE_SHARED=ON + -DOPENVDB_CORE_STATIC=$(usex static-libs) + -DOPENVDB_ENABLE_RPATH=OFF + -DUSE_CCACHE=OFF + -DUSE_COLORED_OUTPUT=ON + -DUSE_EXR=ON + -DUSE_LOG4CPLUS=ON + ) + + if use python; then + mycmakeargs+=( + -DOPENVDB_BUILD_PYTHON_MODULE=ON + -DUSE_NUMPY=$(usex numpy) + -DPYOPENVDB_INSTALL_DIRECTORY="$(python_get_sitedir)" + -DPython_EXECUTABLE="${EPYTHON}" + ) + fi + + if use cpu_flags_x86_avx; then + mycmakeargs+=( -DOPENVDB_SIMD=AVX ) + elif use cpu_flags_x86_sse4_2; then + mycmakeargs+=( -DOPENVDB_SIMD=SSE42 ) + fi + + cmake_src_configure +} |