summaryrefslogtreecommitdiff
path: root/sci-libs/opencascade
diff options
context:
space:
mode:
Diffstat (limited to 'sci-libs/opencascade')
-rw-r--r--sci-libs/opencascade/Manifest15
-rw-r--r--sci-libs/opencascade/files/opencascade-7.4.0.env.in6
-rw-r--r--sci-libs/opencascade/files/opencascade-7.5.1-0001-allow-default-search-path-for-Qt5.patch26
-rw-r--r--sci-libs/opencascade/files/opencascade-7.5.1-0002-remove-unnecessary-Qt5-check.patch28
-rw-r--r--sci-libs/opencascade/files/opencascade-7.5.1-0003-add-Gentoo-configuration-type.patch26
-rw-r--r--sci-libs/opencascade/files/opencascade-7.5.1-0004-fix-installation-of-cmake-config-files.patch40
-rw-r--r--sci-libs/opencascade/files/opencascade-7.5.1-0005-fix-write-permissions-on-scripts.patch43
-rw-r--r--sci-libs/opencascade/files/opencascade-7.5.1-0006-fix-creation-of-custom.sh-script.patch34
-rw-r--r--sci-libs/opencascade/files/opencascade-7.5.env.in102
-rw-r--r--sci-libs/opencascade/metadata.xml10
-rw-r--r--sci-libs/opencascade/opencascade-7.4.0-r4.ebuild18
-rw-r--r--sci-libs/opencascade/opencascade-7.5.1.ebuild167
12 files changed, 496 insertions, 19 deletions
diff --git a/sci-libs/opencascade/Manifest b/sci-libs/opencascade/Manifest
index cb3b1d30f995..ffd5ef735163 100644
--- a/sci-libs/opencascade/Manifest
+++ b/sci-libs/opencascade/Manifest
@@ -3,7 +3,16 @@ AUX opencascade-7.4.0-find-qt.patch 3349 BLAKE2B 6520b3242927c86c4958f81f8a94e89
AUX opencascade-7.4.0-fix-flow-control-nesting.patch 787 BLAKE2B 929674b6c804411934adbbbf31eba4dc6cd52e15cb9959982c1770244f1edbfc7ff94c832e7e20516f18ef8548488464e15ee1b5d3de70022e9bd1213272c143 SHA512 1ba3f8ab5d62d42d17adc72c371e1a2c0f3d8e996a3f1dfaec1e1a248504592a5ccc27a651640de24f3e47402d4129f77943f3df7117215eacf98f44fa8678ba
AUX opencascade-7.4.0-fix-install.patch 7870 BLAKE2B 4842ad5123a06a53b81ca80e4152434ee6d78a9eb5436a7a9f899651fcdb45a6f403f31bd6e4225611c1085fb91eb7a5640e5bb3fd49b71295ad0868b8e018dd SHA512 5315e82bd03a8782df8c72bbfb334d9cf739dd53f3aa22649f087c1b8b7fa5f88f7a80850c1f2e0c9dffd80a77dd99fd36e9674463535cbf48b896596c24f38e
AUX opencascade-7.4.0-fix-issue-with-cmake-path-variables.patch 1973 BLAKE2B cac9a795d91fc55de7fc6b3c9a7f1138b8d8320e1be6879d7de4e63132a0a4e729be2dafd281e64fd52f8e05790dcb8c41bed22b8bc159b32952ad7ef79aa9da SHA512 9dfac105d41775578b6ea51fc74cbf35f9627a10bdfb35f768c09d47d7d06b11d667f231653029d297d40c82444b82d50b3bcd7d3a4520989e416d83eaaaee5e
-AUX opencascade-7.4.0.env.in 4611 BLAKE2B 3593cd4e05d33e466a975cf4641c56cd8e686310a148cc684591d3e08f8c4efd86e4df13500f11845e425b056b9c2c42f0f27a2a4d8cea524dc8fbb1c7dad703 SHA512 25f65e2b1e91fa78313334dab7d19b115bb7ff97ccefe7d18c45ab1817e12e10fdbe36babcb22e2a0d52bf7a0fbbdd2937523b773ddbb37635c1dd0d14de6253
+AUX opencascade-7.4.0.env.in 4570 BLAKE2B b8a3380e9e821a1560a9a48f566c648e43285fd7695f96e6b4b088271d6a07a4f9d3f7e259860e3b8d8f8f9af1b79ef521b3bd3b1571fd13fb8d2585b35e19ab SHA512 86180a15878e17322fc34a057d2ccb0a1c00af8b4aacc8f80aab3a8ac6b7025a8f1e125b86cc77948152eeac3b6bf786a2ee3622c37f702cd3bea62bb3d11fe6
+AUX opencascade-7.5.1-0001-allow-default-search-path-for-Qt5.patch 969 BLAKE2B 5a13b58f134e8e0670ec817308d95cc9028ac5fce3b243b8e09f191dbcdf15b1587ca8aef7a726b7d9199a708b3a949328d7fc04426e816ce6c05c74b310840e SHA512 4c22f4767ed2b81e21ce7861b6e97d3b1e13e2ebb57278c63d8a9edeae7a2b9518200d39ec30d7000d3ae3b5376a81f08150354be80848247c803208aa28c480
+AUX opencascade-7.5.1-0002-remove-unnecessary-Qt5-check.patch 764 BLAKE2B 512ebf9fd13e60acbc9d47067f158a5043623c52265ff36c216d6735e3a6df9e6355d8bf400330dd00e3ff178b24410aa547ea648ade578f9b9f0dbd6ad0eed3 SHA512 55a452c22addd31b258d078c1871537588b4b06cacabc2cb1252d01b8b9972fb416779456009ea6946935b996c12292aa0ca6d72f8b9bb33407800e5434daae1
+AUX opencascade-7.5.1-0003-add-Gentoo-configuration-type.patch 841 BLAKE2B 6189432e409f20c5181a5ab3e4febd0ec0ddaf1888183d2fe5772f29ff2bece5f499e0987226a2608572a576defa990ee0ac9827d97078a2bee99f2e7e22c053 SHA512 9a4bd753c76abf32d843220210a2f2ffaac82e4e48f359a41f42482dcfbc4d67b349821f801a7886dfb604e87ff6923a0d2fd15ebe76342f8af42b5dbc5d79d9
+AUX opencascade-7.5.1-0004-fix-installation-of-cmake-config-files.patch 2207 BLAKE2B f00d3137ff9046019f0e4dbad09d79141a65c0b68da0e5c613aa234fddfd651e2b61fb00129ae7a84f521ca3e00858d76ce46cc2f62521c22402f4b664e94274 SHA512 8a4206854a96fb4c45450ad1081cd28ede0171f32392d9f0876b7e41789a0ba2e07ca82011503bd562541367a6b39b8df15aba843f6bb6eef6c473db6ee788a4
+AUX opencascade-7.5.1-0005-fix-write-permissions-on-scripts.patch 2453 BLAKE2B 01b0ec99fb9ad032d6a90cceabb50900528abd0528b53e976484bf02f04eac9bc02b063bce5c221ae88782a126103e8077db9e90aa7f64f4f187dad00354d4d2 SHA512 fb3c374fe8aff8d2bac039a0eef754f2e823a97bfd7860bdd7e047c1b357202abfca0e37b46afc32220c7e354b5edb54805fbbbffde015bb4be2d7f4ded4a8da
+AUX opencascade-7.5.1-0006-fix-creation-of-custom.sh-script.patch 1245 BLAKE2B 1972c41e264a86761f8b3a3a649e67211776d0a4791b7e0f3adc859833e1d62e3a1d964484b2c53a516f5a33680ab2f32ad2010bf3fd531fca36373435307b68 SHA512 a2ffef88cb87acbc8215a7d1d7fe69ee17210392d39a64535d1538b2c08e43f5918c5b5e4a7540e8d636b1ba0df51670013e9d49f205bfc93a1e0d10a04388a7
+AUX opencascade-7.5.env.in 4643 BLAKE2B f3492a12e0e0fd31bed8c65e8aa7af68f84a9e752922c62ca2307c96f2d1070fdbc10e09c266114060b0f81951109bc9827853e3eba486d4f9c0eba6984c69e4 SHA512 c10151744b5656e7bafbc291729a5c0e4022e44aa5015e4fff616cb2a34409a67c4ae7433eede2563ab265fa4eb6a455d36ed99469a2579979ff374fc6588adf
DIST opencascade-7.4.0.tar.gz 49210449 BLAKE2B c92afe7551e9a066ad0940dcf49278b556a726f0534131706b3a11cb0986ba32818e162df3982283f6815eb9d67d7e91f909485d78f2b8d638da1934ffbc2f7f SHA512 eb0d47848d48f42a159ae5d7a4144483ba1f59f634844bd2053e48e04af30a30ba7056112cd38a1730d193a8d736b898f9608dd574cbe6829dbe7257a002772a
-EBUILD opencascade-7.4.0-r4.ebuild 3947 BLAKE2B feacae0802130f77a0c39405b4c1b440723b49c5427b6405a35ceb27c2dbaaaf9fbbcc18155571b3b7e392df475c7f358c828817a3b8821e1b7a8db292fa3a9c SHA512 b7e7dc4577c07501988c24f969093e53608d8cbdaae94ea69072c9c54c13f5efaa15aa6eeda2bcd054567ad262f655fa43e92c38f90966bac128e98bb56f8025
-MISC metadata.xml 925 BLAKE2B dc225e0bdb01795642b13736c66382e40cfd2d72f5ecfe1a52920f6fbb5e1f31ce7ebb1daf9bd9c8d55c1c982bbbc2a47dd65c2e7cc64734aa954b227a8395bf SHA512 55238c390dcdf63e56c0c1461cda4f3a13b5d5066f8f06d2c7a50a38a837d00e30f8c91c9b0b70a26ac2e41c17a4c7fc442855bd71bfe60f4335b70a0f38750f
+DIST opencascade-7.5.1.tar.gz 47807222 BLAKE2B b5ef30ea7c373250db3e0863f3c7fde84256b37957a482f10a462a4c4ed1a21cffbbeb10e9fc140325022d7582efbd292ed6d1016d14cb67ccf5c84d14060d5a SHA512 ebb937254ac165041ef7e1a80df8f9d2ac1d518f01b3d4b0fd6d203fe0d80bd474b85a462cccc1c74a513bd257c0b0ab7002632573f38bf72170363c7e42ed2f
+EBUILD opencascade-7.4.0-r4.ebuild 3957 BLAKE2B 4118554fff8ff80f64ce581dd5f233211d4a77d4366ada96ae646e819ad03adebfa8561ff9c4b9f9fcfed6cc2bad65fe6db0373d434768fcf5cc8a1808fe34e6 SHA512 a7783c641793480726433be75fd5c7260d9f62e32347aa1ee4e68b97adc5e18d829984f05e84e42c120a1c027c0ad15ee73e646c708466e0eeb2a9440b9726ac
+EBUILD opencascade-7.5.1.ebuild 4415 BLAKE2B 49fe2fbcfb8933608ee516b8a1eb23e7968a922c74f7b8cb36ae25179c6a09e413f4fb2ddad16de77b9ae0bd766d3fff86cc7ff7e950d474877a462204b2fa85 SHA512 e4c18a8406a8956b4133992e94ee8a4da20f16d36221d08bdced57c3255a0a22e9352984974ae645b8ce7c8fe86576c412e8b7040e1ff1b86b264f0209fbe960
+MISC metadata.xml 1074 BLAKE2B 88bba4427a254f02a0ca70936c0931ceb72a5d752c6664502cd20dbd6cc294080222d9ef143334c147b77667a342f7912384b8af92a1b90868d243294f72215f SHA512 b42f338af31848be031702bbee6cfe105db4c6ffa5970e7229b5a63841097af1b60eb886f4513ec86f0b27fd0c7ad090b635061c737714ae43b7b45db02172f9
diff --git a/sci-libs/opencascade/files/opencascade-7.4.0.env.in b/sci-libs/opencascade/files/opencascade-7.4.0.env.in
index 2eefe188c1ab..cf7cc6a724df 100644
--- a/sci-libs/opencascade/files/opencascade-7.4.0.env.in
+++ b/sci-libs/opencascade/files/opencascade-7.4.0.env.in
@@ -76,7 +76,7 @@ LDPATH=VAR_CASROOT/lib
# CSF_EXCEPTION_PROMPT (default: 1) optional
# not documented upstream (maybe a flag indicating whether the user shall
# be prompted in the case of exceptions)
-CSF_EXCEPTION_PROMPT=1
+#CSF_EXCEPTION_PROMPT=1
# The following CSF_* variables define various directories and files where
# OCCT is looking for resources.
@@ -93,8 +93,8 @@ CSF_IGESDefaults=VAR_CASROOT/share/opencascade/resources/XSTEPResource
CSF_ShadersDirectory=VAR_CASROOT/share/opencascade/resources/Shaders
CSF_SHMessage=VAR_CASROOT/share/opencascade/resources/SHMessage
CSF_STEPDefaults=VAR_CASROOT/share/opencascade/resources/XSTEPResource
-CSF_UnitsDefinition=/usr/lib64/opencascade-7.3.0/ros/share/opencascade/resources/UnitsAPI/Units.dat
-CSF_XSMessage=/usr/lib64/opencascade-7.3.0/ros/share/opencascade/resources/XSMessage
+CSF_UnitsDefinition=VAR_CASROOT/share/opencascade/resources/UnitsAPI/Units.dat
+CSF_XSMessage=VAR_CASROOT/share/opencascade/resources/XSMessage
# TODO: check those
# they were defined in the original ebuild but the directories and files
diff --git a/sci-libs/opencascade/files/opencascade-7.5.1-0001-allow-default-search-path-for-Qt5.patch b/sci-libs/opencascade/files/opencascade-7.5.1-0001-allow-default-search-path-for-Qt5.patch
new file mode 100644
index 000000000000..68be3e1c8803
--- /dev/null
+++ b/sci-libs/opencascade/files/opencascade-7.5.1-0001-allow-default-search-path-for-Qt5.patch
@@ -0,0 +1,26 @@
+From c7d8a7374284186136d72fc285f9e55045b306fb Mon Sep 17 00:00:00 2001
+From: Bernd Waibel <waebbl@gmail.com>
+Date: Wed, 3 Feb 2021 23:31:23 +0100
+Subject: [PATCH] allow default search path for Qt5
+
+Signed-off-by: Bernd Waibel <waebbl@gmail.com>
+---
+ adm/cmake/qt.cmake | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/adm/cmake/qt.cmake b/adm/cmake/qt.cmake
+index 535e6a20..6c2141dd 100644
+--- a/adm/cmake/qt.cmake
++++ b/adm/cmake/qt.cmake
+@@ -24,7 +24,7 @@ set(CMAKE_PREFIX_PATH ${3RDPARTY_QT_DIR})
+
+ # Now we can apply standard CMake finder for Qt5. We do this mostly
+ # to have qt5_wrap_cpp() function available and Qt5_FOUND variable filled
+-find_package(Qt5 QUIET COMPONENTS Widgets Quick Xml PATHS ${3RDPARTY_QT_DIR} NO_DEFAULT_PATH)
++find_package(Qt5 COMPONENTS Widgets Quick Xml REQUIRED)
+ if (NOT ${Qt5_FOUND})
+ # Now we can apply standard CMake finder for Qt. We do this mostly
+ # to have qt4_wrap_cpp() function available
+--
+2.30.0
+
diff --git a/sci-libs/opencascade/files/opencascade-7.5.1-0002-remove-unnecessary-Qt5-check.patch b/sci-libs/opencascade/files/opencascade-7.5.1-0002-remove-unnecessary-Qt5-check.patch
new file mode 100644
index 000000000000..91d5c66c7614
--- /dev/null
+++ b/sci-libs/opencascade/files/opencascade-7.5.1-0002-remove-unnecessary-Qt5-check.patch
@@ -0,0 +1,28 @@
+From dcf67dbc486a97256ea6df7b968f69346e7b3dba Mon Sep 17 00:00:00 2001
+From: Bernd Waibel <waebbl@gmail.com>
+Date: Wed, 3 Feb 2021 23:45:27 +0100
+Subject: [PATCH] remove unnecessary Qt5 check
+
+Signed-off-by: Bernd Waibel <waebbl@gmail.com>
+---
+ adm/cmake/qt_macro.cmake | 4 ----
+ 1 file changed, 4 deletions(-)
+
+diff --git a/adm/cmake/qt_macro.cmake b/adm/cmake/qt_macro.cmake
+index ec897384..363d9c52 100644
+--- a/adm/cmake/qt_macro.cmake
++++ b/adm/cmake/qt_macro.cmake
+@@ -2,10 +2,6 @@
+
+ macro (FIND_QT_PACKAGE PROJECT_LIBRARIES_DEBUG PROJECT_LIBRARIES_RELEASE PROJECT_INCLUDES)
+
+- if ("${3RDPARTY_QT_DIR}" STREQUAL "")
+- message (FATAL_ERROR "Empty Qt dir")
+- endif()
+-
+ if (${Qt5_FOUND})
+ #message (STATUS "Qt5 cmake configuration")
+
+--
+2.30.0
+
diff --git a/sci-libs/opencascade/files/opencascade-7.5.1-0003-add-Gentoo-configuration-type.patch b/sci-libs/opencascade/files/opencascade-7.5.1-0003-add-Gentoo-configuration-type.patch
new file mode 100644
index 000000000000..0665790d20a1
--- /dev/null
+++ b/sci-libs/opencascade/files/opencascade-7.5.1-0003-add-Gentoo-configuration-type.patch
@@ -0,0 +1,26 @@
+From a8aa40ec021dac8310d77bcec71ee298f6773926 Mon Sep 17 00:00:00 2001
+From: Bernd Waibel <waebbl@gmail.com>
+Date: Thu, 4 Feb 2021 22:29:57 +0100
+Subject: [PATCH] add Gentoo configuration type
+
+Signed-off-by: Bernd Waibel <waebbl@gmail.com>
+---
+ CMakeLists.txt | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 100d6133..887a1cd7 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -4,7 +4,7 @@ set (CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/adm/cmake")
+
+ set (CMAKE_SUPPRESS_REGENERATION TRUE)
+
+-set (CMAKE_CONFIGURATION_TYPES Release Debug RelWithDebInfo CACHE INTERNAL "" FORCE)
++set (CMAKE_CONFIGURATION_TYPES Release Debug RelWithDebInfo Gentoo CACHE INTERNAL "" FORCE)
+
+ # macro: include patched file if it exists
+ macro (OCCT_INCLUDE_CMAKE_FILE BEING_INCLUDED_FILE)
+--
+2.30.0
+
diff --git a/sci-libs/opencascade/files/opencascade-7.5.1-0004-fix-installation-of-cmake-config-files.patch b/sci-libs/opencascade/files/opencascade-7.5.1-0004-fix-installation-of-cmake-config-files.patch
new file mode 100644
index 000000000000..caace23fc2d8
--- /dev/null
+++ b/sci-libs/opencascade/files/opencascade-7.5.1-0004-fix-installation-of-cmake-config-files.patch
@@ -0,0 +1,40 @@
+From 8469f927963fe4bece05297c514fb2b9f9ad9b1a Mon Sep 17 00:00:00 2001
+From: Bernd Waibel <waebbl@gmail.com>
+Date: Fri, 5 Feb 2021 13:44:15 +0100
+Subject: [PATCH] fix installation of cmake config files
+
+Signed-off-by: Bernd Waibel <waebbl@gmail.com>
+---
+ CMakeLists.txt | 2 +-
+ adm/cmake/occt_macros.cmake | 2 +-
+ 2 files changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 100d6133..bc8cdb92 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -1156,7 +1156,7 @@ foreach (OCCT_CONFIGURATION ${CMAKE_CONFIGURATION_TYPES})
+ endforeach()
+ # install OpenCASCADE config file with compile definitions and C/C++ flags ONLY for current configuration
+ install (CODE "string (TOLOWER \"\${CMAKE_INSTALL_CONFIG_NAME}\" CMAKE_INSTALL_CONFIG_NAME_LOWER)")
+-install (CODE "configure_file(\"${CMAKE_BINARY_DIR}/OpenCASCADECompileDefinitionsAndFlags-\${CMAKE_INSTALL_CONFIG_NAME_LOWER}.cmake\" \"${INSTALL_DIR}/${INSTALL_DIR_CMAKE}/OpenCASCADECompileDefinitionsAndFlags-\${CMAKE_INSTALL_CONFIG_NAME_LOWER}.cmake\" COPYONLY)")
++install (CODE "configure_file(\"${CMAKE_BINARY_DIR}/OpenCASCADECompileDefinitionsAndFlags-\${CMAKE_INSTALL_CONFIG_NAME_LOWER}.cmake\" \"${INSTALL_DIR_CMAKE}/OpenCASCADECompileDefinitionsAndFlags-\${CMAKE_INSTALL_CONFIG_NAME_LOWER}.cmake\" COPYONLY)")
+
+ foreach (OCCT_MODULE ${OCCT_MODULES})
+ if (BUILD_MODULE_${OCCT_MODULE})
+diff --git a/adm/cmake/occt_macros.cmake b/adm/cmake/occt_macros.cmake
+index 0a387945..f10fe5e3 100644
+--- a/adm/cmake/occt_macros.cmake
++++ b/adm/cmake/occt_macros.cmake
+@@ -592,7 +592,7 @@ macro (OCCT_UPDATE_TARGET_FILE)
+ "cmake_policy(PUSH)
+ cmake_policy(SET CMP0007 NEW)
+ string (TOLOWER \"\${CMAKE_INSTALL_CONFIG_NAME}\" CMAKE_INSTALL_CONFIG_NAME_LOWERCASE)
+- file (GLOB ALL_OCCT_TARGET_FILES \"${INSTALL_DIR}/${INSTALL_DIR_CMAKE}/OpenCASCADE*Targets-\${CMAKE_INSTALL_CONFIG_NAME_LOWERCASE}.cmake\")
++ file (GLOB ALL_OCCT_TARGET_FILES \"${INSTALL_DIR_CMAKE}/OpenCASCADE*Targets-\${CMAKE_INSTALL_CONFIG_NAME_LOWERCASE}.cmake\")
+ foreach(TARGET_FILENAME \${ALL_OCCT_TARGET_FILES})
+ file (STRINGS \"\${TARGET_FILENAME}\" TARGET_FILE_CONTENT)
+ file (REMOVE \"\${TARGET_FILENAME}\")
+--
+2.30.0
+
diff --git a/sci-libs/opencascade/files/opencascade-7.5.1-0005-fix-write-permissions-on-scripts.patch b/sci-libs/opencascade/files/opencascade-7.5.1-0005-fix-write-permissions-on-scripts.patch
new file mode 100644
index 000000000000..1cb397e0a976
--- /dev/null
+++ b/sci-libs/opencascade/files/opencascade-7.5.1-0005-fix-write-permissions-on-scripts.patch
@@ -0,0 +1,43 @@
+From 5f7db00bfc56d497a1897102a5ddd5bdddd72942 Mon Sep 17 00:00:00 2001
+From: Bernd Waibel <waebbl-gentoo@posteo.net>
+Date: Fri, 16 Apr 2021 01:04:24 +0200
+Subject: [PATCH] fix write permissions on scripts
+
+Signed-off-by: Bernd Waibel <waebbl-gentoo@posteo.net>
+---
+ CMakeLists.txt | 8 ++++----
+ 1 file changed, 4 insertions(+), 4 deletions(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 100d6133..e9e8fb29 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -890,10 +890,10 @@ if (${DRAWEXE_INDEX} GREATER -1)
+ # copy draw script to install script folder
+ if (BUILD_PATCH AND EXISTS "${BUILD_PATCH}/adm/templates/draw.${SCRIPT_EXT}")
+ install (FILES "${BUILD_PATCH}/adm/templates/draw.${SCRIPT_EXT}" DESTINATION "${INSTALL_DIR_SCRIPT}"
+- PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_WRITE GROUP_EXECUTE WORLD_READ WORLD_WRITE WORLD_EXECUTE)
++ PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE)
+ else()
+ install (FILES "${CMAKE_SOURCE_DIR}/adm/templates/draw.${SCRIPT_EXT}" DESTINATION "${INSTALL_DIR_SCRIPT}"
+- PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_WRITE GROUP_EXECUTE WORLD_READ WORLD_WRITE WORLD_EXECUTE)
++ PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE)
+ endif()
+
+ # copy draw script to CMake binary folder
+@@ -1101,10 +1101,10 @@ if (BUILD_TOOL_TOOLKITS)
+ # copy tinspector script to install script folder
+ if (BUILD_PATCH AND EXISTS "${BUILD_PATCH}/adm/templates/inspector.${SCRIPT_EXT}")
+ install (FILES "${BUILD_PATCH}/adm/templates/inspector.${SCRIPT_EXT}" DESTINATION "${INSTALL_DIR_SCRIPT}"
+- PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_WRITE GROUP_EXECUTE WORLD_READ WORLD_WRITE WORLD_EXECUTE)
++ PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE)
+ else()
+ install (FILES "${CMAKE_SOURCE_DIR}/adm/templates/inspector.${SCRIPT_EXT}" DESTINATION "${INSTALL_DIR_SCRIPT}"
+- PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_WRITE GROUP_EXECUTE WORLD_READ WORLD_WRITE WORLD_EXECUTE)
++ PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE)
+ endif()
+
+ set (OpenCASCADE_BINARY_DIR "${INSTALL_DIR}/${INSTALL_DIR_BIN}")
+--
+2.31.1
+
diff --git a/sci-libs/opencascade/files/opencascade-7.5.1-0006-fix-creation-of-custom.sh-script.patch b/sci-libs/opencascade/files/opencascade-7.5.1-0006-fix-creation-of-custom.sh-script.patch
new file mode 100644
index 000000000000..0ab023693e65
--- /dev/null
+++ b/sci-libs/opencascade/files/opencascade-7.5.1-0006-fix-creation-of-custom.sh-script.patch
@@ -0,0 +1,34 @@
+From 0df9b2c485da92c6e9fdd6d4b5ea1ec6588bd66f Mon Sep 17 00:00:00 2001
+From: Bernd Waibel <waebbl-gentoo@posteo.net>
+Date: Fri, 16 Apr 2021 14:32:24 +0200
+Subject: [PATCH] fix creation of custom.sh script
+
+Signed-off-by: Bernd Waibel <waebbl-gentoo@posteo.net>
+---
+ CMakeLists.txt | 10 +---------
+ 1 file changed, 1 insertion(+), 9 deletions(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 100d6133..7799b73a 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -909,15 +909,7 @@ else()
+ endif()
+
+ # change custom.bat/sh
+-if (EXISTS "${INSTALL_DIR}/${INSTALL_DIR_SCRIPT}/custom.${SCRIPT_EXT}")
+- file (READ "${INSTALL_DIR}/${INSTALL_DIR_SCRIPT}/custom.${SCRIPT_EXT}" CUSTOM_CONTENT)
+-
+- set (CUSTOM_CONTENT "${CUSTOM_CONTENT} ${ADDITIONAL_CUSTOM_CONTENT}")
+-
+- file (WRITE "${INSTALL_DIR}/${INSTALL_DIR_SCRIPT}/custom.${SCRIPT_EXT}" "${CUSTOM_CONTENT}")
+-else()
+- OCCT_CONFIGURE_AND_INSTALL ("adm/templates/custom.${SCRIPT_EXT}.main" "custom.${SCRIPT_EXT}" "custom.${SCRIPT_EXT}" "${INSTALL_DIR_SCRIPT}")
+-endif()
++OCCT_CONFIGURE_AND_INSTALL ("adm/templates/custom.${SCRIPT_EXT}.main" "custom.${SCRIPT_EXT}" "custom.${SCRIPT_EXT}" "${INSTALL_DIR_SCRIPT}")
+
+ if (WIN32)
+ set (THIRDPARTY_DIR_REPLACE "%THIRDPARTY_DIR%")
+--
+2.31.1
+
diff --git a/sci-libs/opencascade/files/opencascade-7.5.env.in b/sci-libs/opencascade/files/opencascade-7.5.env.in
new file mode 100644
index 000000000000..50766cbb6bb1
--- /dev/null
+++ b/sci-libs/opencascade/files/opencascade-7.5.env.in
@@ -0,0 +1,102 @@
+#
+# This file sets needed and optional environment variables for
+# Open CASCADE Technology
+#
+# See: https://dev.opencascade.org/doc/overview/html/index.html#OCCT_OVW_SECTION_4_2
+# for further documentation.
+#
+# Some of the values are set at compile time depending on what USE flags
+# were enabled. Those values are marked as such.
+
+# define the root directory of Open CASCADE Technology (needed)
+CASROOT=VAR_CASROOT
+PATH=VAR_CASROOT/lib/opencascade-VAR_PV/bin
+LDPATH=VAR_CASROOT/lib/opencascade-VAR_PV
+
+#############################################################################
+# The MMGT_* variables are used to determine how memory management will work
+# in OCCT. All of those are optional. If they are not set here, their default
+# values will be used.
+#
+# Uncomment or change the ones you need to adapt from its default.
+#############################################################################
+# MMGT_OPT = {0,1,2} (default: 0) set at compile time
+# if set to 0 (the default), every memory block is allocated in C
+# memory heap directly (via malloc() and free()). Will be set, if
+# neither the the 'optimize' nor the 'tbb' USE flags are set.
+# if set to 1, the memory manager performs it's own internal optimization.
+# Will be set, if the 'optimize' USE flag is set.
+# if set to 2, Intel(R) TBB optimized memory manager is used. Will be set,
+# if the 'tbb' USE flag is set.
+#MMGT_OPT=0
+
+# MMGT_CLEAR = {0,1} (default: 1)
+# if set to 0, memory block is returned as it is. Will be set, if the
+# 'optimize' USE flag is set
+# if set to 1, every allocated memory block is cleared by zeros
+#MMGT_CLEAR=1
+
+# MMGT_CELLSIZE (default: 200)
+# defines the maximal size of blocks allocated in large pools of memory.
+#MMGT_CELLSIZE=200
+
+# MMGT_NBPAGES (default: 10000)
+# defines the size of memory chunks allocated for small blocks in pages
+# (OS dependant)
+#MMGT_NBPAGES=10000
+
+# MMGT_THRESHOLD (default: 40000)
+# defines the maximal size of blocks that are recycled internally instead
+# of being returned to the heap.
+#MMGT_THRESHOLD=40000
+
+# MMGT_MMAP = {0,1} (default: 1)
+# if set to 0, large memory blocks will be allocated in the C heap by
+# malloc()
+# if set to 1, large memory blocks are allocated using memory mapping
+# functions of the operating system.
+#MMGT_MMAP=1
+
+# CSF_LANGUAGE (default: us) optional
+# defines the default language of messages indicated by a two-letter
+# country code. Currently it's not verified if this work with other
+# than the default languages, so we keep it commented.
+#CSF_LANGUAGE=us
+
+# CSF_DEBUG_BOP (default: undefined) optional
+# if defined then it should specify the directory where diagnostic data
+# on problems occured in Boolean operations will be saved. Not defined by
+# default.
+#
+# NOTE: Only enable for debugging purposes. If set, this variable has a
+# large impact on the performance of boolean operations.
+#CSF_DEBUG_BOP=/var/tmp
+
+# CSF_EXCEPTION_PROMPT (default: 1) optional
+# not documented upstream (maybe a flag indicating whether the user shall
+# be prompted in the case of exceptions)
+#CSF_EXCEPTION_PROMPT=1
+
+# The following CSF_* variables define various directories and files where
+# OCCT is looking for resources.
+CSF_GraphicShr=VAR_CASROOT/lib/opencascade-VAR_PV/libTKOpenGl.so
+CSF_MIGRATION_TYPES=VAR_CASROOT/share/opencascade-VAR_PV/resources/StdResource/MigrationSheet.txt
+CSF_MDTVTexturesDirectory=VAR_CASROOT/share/opencascade-VAR_PV/resources/Textures
+CSF_PluginDefaults=VAR_CASROOT/share/opencascade-VAR_PV/resources/StdResource
+CSF_StandardDefaults=VAR_CASROOT/share/opencascade-VAR_PV/resources/StdResource
+CSF_StandardLiteDefaults=VAR_CASROOT/share/opencascade-VAR_PV/resources/StdResource
+CSF_XCAFDefaults=VAR_CASROOT/share/opencascade-VAR_PV/resources/StdResource
+CSF_XmlOcafResource=VAR_CASROOT/share/opencascade-VAR_PV/resources/XmlOcafResource
+# The below values might be optional.
+CSF_IGESDefaults=VAR_CASROOT/share/opencascade-VAR_PV/resources/XSTEPResource
+CSF_ShadersDirectory=VAR_CASROOT/share/opencascade-VAR_PV/resources/Shaders
+CSF_SHMessage=VAR_CASROOT/share/opencascade-VAR_PV/resources/SHMessage
+CSF_STEPDefaults=VAR_CASROOT/share/opencascade-VAR_PV/resources/XSTEPResource
+CSF_UnitsDefinition=VAR_CASROOT/share/opencascade-VAR_PV/resources/UnitsAPI/Units.dat
+CSF_XSMessage=VAR_CASROOT/share/opencascade-VAR_PV/resources/XSMessage
+
+# TODO: check those
+# they were defined in the original ebuild but the directories and files
+# are not present in the current installation.
+#CSF_MDTVFontDirectory=VAR_CASROOT/src/FontMFT
+#CSF_UnitsLexicon=VAR_CASROOT/src/UnitsAPI/Lexi_Expr.dat
diff --git a/sci-libs/opencascade/metadata.xml b/sci-libs/opencascade/metadata.xml
index aa017491b603..9477ecff1347 100644
--- a/sci-libs/opencascade/metadata.xml
+++ b/sci-libs/opencascade/metadata.xml
@@ -11,7 +11,7 @@
</maintainer>
<use>
<flag name="freeimage">
- Enable support for image i/o via media-libs/freeimage
+ Enable support for image i/o via <pkg>media-libs/freeimage</pkg>
</flag>
<flag name="gles2">
Use OpenGL ES 2.0
@@ -19,15 +19,19 @@
<flag name="inspector">
Build the OCCT inspector tool for low-level data inspection
</flag>
+ <flag name="json">
+ Enable JSON support through <pkg>dev-libs/rapidjson</pkg>
+ </flag>
<flag name="optimize">
Don't clear allocated memory. Use optimized memory manager unless
tbb USE flag is set.
</flag>
<flag name="tbb">
- Enable multithreading with the Intel Threads Building Block dev-cpp/tbb
+ Enable multithreading with the Intel Threads Building Block
+ <pkg>dev-cpp/tbb</pkg>
</flag>
<flag name="vtk">
- Enable Visualization Toolkit
+ Enable Visualization Toolkit support via <pkg>sci-libs/vtk</pkg>
</flag>
</use>
</pkgmetadata>
diff --git a/sci-libs/opencascade/opencascade-7.4.0-r4.ebuild b/sci-libs/opencascade/opencascade-7.4.0-r4.ebuild
index 2c5adfb7524f..7a53a10d3509 100644
--- a/sci-libs/opencascade/opencascade-7.4.0-r4.ebuild
+++ b/sci-libs/opencascade/opencascade-7.4.0-r4.ebuild
@@ -9,19 +9,21 @@ EAPI=7
inherit check-reqs cmake flag-o-matic java-pkg-opt-2
+MY_PV="$(ver_rs 1- '_')"
+
DESCRIPTION="Development platform for CAD/CAE, 3D surface/solid modeling and data exchange"
HOMEPAGE="https://www.opencascade.com"
-MY_PV="$(ver_rs 1- '_')"
SRC_URI="https://git.dev.opencascade.org/gitweb/?p=occt.git;a=snapshot;h=refs/tags/V${MY_PV};sf=tgz -> ${P}.tar.gz"
+S="${WORKDIR}/occt-V${MY_PV}"
LICENSE="|| ( Open-CASCADE-LGPL-2.1-Exception-1.0 LGPL-2.1 )"
SLOT="${PV}"
KEYWORDS="~amd64 ~arm64 ~x86"
-# gl2ps
-IUSE="debug doc examples ffmpeg freeimage gles2 inspector java optimize qt5 tbb +vtk"
+IUSE="debug doc +examples ffmpeg freeimage gles2 inspector java optimize qt5 tbb +vtk"
REQUIRED_USE="
inspector? ( qt5 )
+ qt5? ( examples )
?? ( optimize tbb )
"
@@ -56,10 +58,8 @@ RDEPEND="
"
DEPEND="${RDEPEND}"
BDEPEND="
- doc? (
- app-doc/doxygen
- qt5? ( dev-qt/linguist-tools:5 )
- )
+ doc? ( app-doc/doxygen )
+ qt5? ( dev-qt/linguist-tools:5 )
"
# There's no easy way to test. Testing needs a rather big environment
@@ -71,8 +71,6 @@ CHECKREQS_DISK_BUILD="3584M"
CMAKE_BUILD_TYPE=Release
-S="${WORKDIR}/occt-V${MY_PV}"
-
PATCHES=(
"${FILESDIR}/${P}-find-qt.patch"
"${FILESDIR}/${P}-fix-install.patch"
@@ -116,7 +114,7 @@ src_configure() {
cmake_src_configure
# prepare /etc/env.d file
- sed -e 's|VAR_CASROOT|'${EROOT%}'/usr/'$(get_libdir)'/'${P}'/ros|g' < "${FILESDIR}/${P}.env.in" >> "${T}/${PV}" || die
+ sed -e 's|VAR_CASROOT|'${ESYSROOT}'/usr/'$(get_libdir)'/'${P}'/ros|g' < "${FILESDIR}/${P}.env.in" >> "${T}/${PV}" || die
sed -i -e 's|ros/lib|ros/'$(get_libdir)'|' "${T}/${PV}" || die
# use TBB for memory allocation optimizations?
diff --git a/sci-libs/opencascade/opencascade-7.5.1.ebuild b/sci-libs/opencascade/opencascade-7.5.1.ebuild
new file mode 100644
index 000000000000..474b381f5561
--- /dev/null
+++ b/sci-libs/opencascade/opencascade-7.5.1.ebuild
@@ -0,0 +1,167 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+# TODO:
+# check the src files referenced in 51opencascade, i.e. resources and the like
+
+EAPI=7
+
+inherit cmake flag-o-matic
+
+MY_PV="$(ver_rs 1- '_')"
+PV_MAJ="$(ver_cut 1-2)"
+
+DESCRIPTION="Development platform for CAD/CAE, 3D surface/solid modeling and data exchange"
+HOMEPAGE="https://www.opencascade.com"
+SRC_URI="https://git.dev.opencascade.org/gitweb/?p=occt.git;a=snapshot;h=refs/tags/V${MY_PV};sf=tgz -> ${P}.tar.gz"
+S="${WORKDIR}/occt-V${MY_PV}"
+
+LICENSE="|| ( Open-CASCADE-LGPL-2.1-Exception-1.0 LGPL-2.1 )"
+SLOT="${PV_MAJ}"
+KEYWORDS="~amd64 ~arm64 ~x86"
+IUSE="debug doc examples ffmpeg freeimage gles2 json optimize tbb vtk"
+
+REQUIRED_USE="?? ( optimize tbb )"
+
+# There's no easy way to test. Testing needs a rather big environment
+# properly set up.
+RESTRICT="test"
+
+RDEPEND="
+ app-eselect/eselect-opencascade
+ dev-cpp/eigen
+ dev-lang/tcl:0=
+ dev-lang/tk:0=
+ dev-libs/rapidjson
+ dev-tcltk/itcl
+ dev-tcltk/itk
+ dev-tcltk/tix
+ media-libs/fontconfig
+ media-libs/freetype:2
+ media-libs/ftgl
+ virtual/glu
+ virtual/opengl
+ x11-libs/libXmu
+ examples? (
+ dev-qt/qtcore:5
+ dev-qt/qtgui:5
+ dev-qt/qtquickcontrols2:5
+ dev-qt/qtwidgets:5
+ dev-qt/qtxml:5
+ )
+ ffmpeg? ( media-video/ffmpeg )
+ freeimage? ( media-libs/freeimage )
+ json? ( dev-libs/rapidjson )
+ tbb? ( dev-cpp/tbb )
+ vtk? ( >=sci-libs/vtk-8.1.0[rendering] )
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ doc? ( app-doc/doxygen )
+ examples? ( dev-qt/linguist-tools:5 )
+"
+
+PATCHES=(
+ "${FILESDIR}"/${P}-0001-allow-default-search-path-for-Qt5.patch
+ "${FILESDIR}"/${P}-0002-remove-unnecessary-Qt5-check.patch
+ "${FILESDIR}"/${P}-0003-add-Gentoo-configuration-type.patch
+ "${FILESDIR}"/${P}-0004-fix-installation-of-cmake-config-files.patch
+ "${FILESDIR}"/${P}-0005-fix-write-permissions-on-scripts.patch
+ "${FILESDIR}"/${P}-0006-fix-creation-of-custom.sh-script.patch
+)
+
+src_prepare() {
+ cmake_src_prepare
+
+ if use debug; then
+ append-cppflags -DDEBUG
+ append-flags -g
+ fi
+
+ sed -e 's/\/lib\$/\/'$(get_libdir)'\$/' \
+ -i adm/templates/OpenCASCADEConfig.cmake.in || die
+}
+
+src_configure() {
+ local mycmakeargs=(
+ -DBUILD_DOC_Overview=$(usex doc)
+ -DBUILD_Inspector=$(usex examples)
+ -DBUILD_WITH_DEBUG=$(usex debug)
+ -DCMAKE_INSTALL_PREFIX="/usr"
+ -DINSTALL_DIR_BIN="$(get_libdir)/${P}/bin"
+ -DINSTALL_DIR_CMAKE="$(get_libdir)/cmake/${P}"
+ -DINSTALL_DIR_DOC="share/doc/${PF}"
+ -DINSTALL_DIR_LIB="$(get_libdir)/${P}"
+ -DINSTALL_DIR_SCRIPT="$(get_libdir)/${P}/bin"
+ -DINSTALL_DIR_WITH_VERSION=ON
+ -DINSTALL_SAMPLES=$(usex examples)
+ -DINSTALL_TEST_CASES=NO
+ -DUSE_D3D=NO
+ -DUSE_FFMPEG=$(usex ffmpeg)
+ -DUSE_FREEIMAGE=$(usex freeimage)
+ -DUSE_FREETYPE=ON
+ -DUSE_GLES2=$(usex gles2)
+ -DUSE_RAPIDJSON=$(usex json)
+ -DUSE_TBB=$(usex tbb)
+ -DUSE_VTK=$(usex vtk)
+ )
+
+ use doc && mycmakeargs+=( -DINSTALL_DOC_Overview=ON )
+
+ if use examples; then
+ mycmakeargs+=(
+ -D3RDPARTY_QT_DIR="${ESYSROOT}"/usr
+ -DBUILD_SAMPLES_QT=ON
+ )
+ fi
+
+ if use vtk; then
+ if has_version ">=sci-libs/vtk-9.0.0"; then
+ mycmakeargs+=(
+ -D3RDPARTY_VTK_DIR="${ESYSROOT}"/usr
+ -D3RDPARTY_VTK_INCLUDE_DIR="${ESYSROOT}"/usr/include/vtk-9.0
+ -D3RDPARTY_VTK_LIBRARY_DIR="${ESYSROOT}"/usr/$(get_libdir)
+ )
+ fi
+ fi
+
+ cmake_src_configure
+
+ prepare_env_file() {
+ # prepare /etc/env.d file
+ sed -e 's|VAR_CASROOT|'${ESYSROOT}'/usr|g' < "${FILESDIR}/${PN}-${PV_MAJ}.env.in" >> "${T}/${PV_MAJ}" || die
+ sed -e 's|lib/|'$(get_libdir)'/|g' -i "${T}/${PV_MAJ}" || die
+ sed -e 's|VAR_PV|'${PV}'|g' -i "${T}/${PV_MAJ}" || die
+
+ # use TBB for memory allocation optimizations?
+ use tbb && (sed -e 's|^#MMGT_OPT=0$|MMGT_OPT=2|' -i "${T}/${PV_MAJ}" || die)
+
+ if use optimize ; then
+ # use internal optimized memory manager?
+ sed -e 's|^#MMGT_OPT=0$|MMGT_OPT=1|' -i "${T}/${PV_MAJ}" || die
+ # don't clear memory ?
+ sed -e 's|^#MMGT_CLEAR=1$|MMGT_CLEAR=0|' -i "${T}/${PV_MAJ}" || die
+ fi
+ }
+
+ prepare_env_file
+}
+
+src_install() {
+ use doc && docompress -x /usr/share/doc/${PF}/overview/html
+ cmake_src_install
+
+ # respect slotting
+ insinto "/etc/env.d/${PN}"
+ doins "${T}/${PV_MAJ}"
+
+ # remove examples
+ if use !examples; then
+ rm -r "${ED}/usr/share/${P}/samples" || die
+ fi
+}
+
+pkg_postinst() {
+ eselect ${PN} set ${PV_MAJ} || die "failed to switch to updated implementation"
+ einfo "You can switch between available ${PN} implementations using eselect ${PN}"
+}