Gentoo Archives: gentoo-commits

From: Sam James <sam@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: sci-libs/opencascade/, sci-libs/opencascade/files/
Date: Tue, 04 May 2021 22:03:03
Message-Id: 1620165722.2ff6f73b2c6c62702952b3e712f878c32a1597da.sam@gentoo
1 commit: 2ff6f73b2c6c62702952b3e712f878c32a1597da
2 Author: Bernd Waibel <waebbl <AT> gmail <DOT> com>
3 AuthorDate: Sat Feb 6 09:31:51 2021 +0000
4 Commit: Sam James <sam <AT> gentoo <DOT> org>
5 CommitDate: Tue May 4 22:02:02 2021 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=2ff6f73b
7
8 sci-libs/opencascade: bump to 7.5.1
9
10 Closes: https://bugs.gentoo.org/762775
11 Package-Manager: Portage-3.0.14, Repoman-3.0.2
12 Signed-off-by: Bernd Waibel <waebbl-gentoo <AT> posteo.net>
13 Closes: https://github.com/gentoo/gentoo/pull/20443
14 Signed-off-by: Sam James <sam <AT> gentoo.org>
15
16 sci-libs/opencascade/Manifest | 1 +
17 .../opencascade/files/opencascade-7.4.0.env.in | 6 +-
18 ....1-0001-allow-default-search-path-for-Qt5.patch | 26 ++++
19 ...e-7.5.1-0002-remove-unnecessary-Qt5-check.patch | 28 ++++
20 ...-7.5.1-0003-add-Gentoo-configuration-type.patch | 26 ++++
21 ...04-fix-installation-of-cmake-config-files.patch | 40 +++++
22 ...5.1-0005-fix-write-permissions-on-scripts.patch | 43 ++++++
23 ...5.1-0006-fix-creation-of-custom.sh-script.patch | 34 +++++
24 ...cascade-7.4.0.env.in => opencascade-7.5.env.in} | 35 +++--
25 sci-libs/opencascade/metadata.xml | 10 +-
26 sci-libs/opencascade/opencascade-7.5.1.ebuild | 167 +++++++++++++++++++++
27 11 files changed, 392 insertions(+), 24 deletions(-)
28
29 diff --git a/sci-libs/opencascade/Manifest b/sci-libs/opencascade/Manifest
30 index 3c6a4c44796..77c4e42f391 100644
31 --- a/sci-libs/opencascade/Manifest
32 +++ b/sci-libs/opencascade/Manifest
33 @@ -1 +1,2 @@
34 DIST opencascade-7.4.0.tar.gz 49210449 BLAKE2B c92afe7551e9a066ad0940dcf49278b556a726f0534131706b3a11cb0986ba32818e162df3982283f6815eb9d67d7e91f909485d78f2b8d638da1934ffbc2f7f SHA512 eb0d47848d48f42a159ae5d7a4144483ba1f59f634844bd2053e48e04af30a30ba7056112cd38a1730d193a8d736b898f9608dd574cbe6829dbe7257a002772a
35 +DIST opencascade-7.5.1.tar.gz 47807222 BLAKE2B b5ef30ea7c373250db3e0863f3c7fde84256b37957a482f10a462a4c4ed1a21cffbbeb10e9fc140325022d7582efbd292ed6d1016d14cb67ccf5c84d14060d5a SHA512 ebb937254ac165041ef7e1a80df8f9d2ac1d518f01b3d4b0fd6d203fe0d80bd474b85a462cccc1c74a513bd257c0b0ab7002632573f38bf72170363c7e42ed2f
36
37 diff --git a/sci-libs/opencascade/files/opencascade-7.4.0.env.in b/sci-libs/opencascade/files/opencascade-7.4.0.env.in
38 index 2eefe188c1a..cf7cc6a724d 100644
39 --- a/sci-libs/opencascade/files/opencascade-7.4.0.env.in
40 +++ b/sci-libs/opencascade/files/opencascade-7.4.0.env.in
41 @@ -76,7 +76,7 @@ LDPATH=VAR_CASROOT/lib
42 # CSF_EXCEPTION_PROMPT (default: 1) optional
43 # not documented upstream (maybe a flag indicating whether the user shall
44 # be prompted in the case of exceptions)
45 -CSF_EXCEPTION_PROMPT=1
46 +#CSF_EXCEPTION_PROMPT=1
47
48 # The following CSF_* variables define various directories and files where
49 # OCCT is looking for resources.
50 @@ -93,8 +93,8 @@ CSF_IGESDefaults=VAR_CASROOT/share/opencascade/resources/XSTEPResource
51 CSF_ShadersDirectory=VAR_CASROOT/share/opencascade/resources/Shaders
52 CSF_SHMessage=VAR_CASROOT/share/opencascade/resources/SHMessage
53 CSF_STEPDefaults=VAR_CASROOT/share/opencascade/resources/XSTEPResource
54 -CSF_UnitsDefinition=/usr/lib64/opencascade-7.3.0/ros/share/opencascade/resources/UnitsAPI/Units.dat
55 -CSF_XSMessage=/usr/lib64/opencascade-7.3.0/ros/share/opencascade/resources/XSMessage
56 +CSF_UnitsDefinition=VAR_CASROOT/share/opencascade/resources/UnitsAPI/Units.dat
57 +CSF_XSMessage=VAR_CASROOT/share/opencascade/resources/XSMessage
58
59 # TODO: check those
60 # they were defined in the original ebuild but the directories and files
61
62 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
63 new file mode 100644
64 index 00000000000..68be3e1c880
65 --- /dev/null
66 +++ b/sci-libs/opencascade/files/opencascade-7.5.1-0001-allow-default-search-path-for-Qt5.patch
67 @@ -0,0 +1,26 @@
68 +From c7d8a7374284186136d72fc285f9e55045b306fb Mon Sep 17 00:00:00 2001
69 +From: Bernd Waibel <waebbl@×××××.com>
70 +Date: Wed, 3 Feb 2021 23:31:23 +0100
71 +Subject: [PATCH] allow default search path for Qt5
72 +
73 +Signed-off-by: Bernd Waibel <waebbl@×××××.com>
74 +---
75 + adm/cmake/qt.cmake | 2 +-
76 + 1 file changed, 1 insertion(+), 1 deletion(-)
77 +
78 +diff --git a/adm/cmake/qt.cmake b/adm/cmake/qt.cmake
79 +index 535e6a20..6c2141dd 100644
80 +--- a/adm/cmake/qt.cmake
81 ++++ b/adm/cmake/qt.cmake
82 +@@ -24,7 +24,7 @@ set(CMAKE_PREFIX_PATH ${3RDPARTY_QT_DIR})
83 +
84 + # Now we can apply standard CMake finder for Qt5. We do this mostly
85 + # to have qt5_wrap_cpp() function available and Qt5_FOUND variable filled
86 +-find_package(Qt5 QUIET COMPONENTS Widgets Quick Xml PATHS ${3RDPARTY_QT_DIR} NO_DEFAULT_PATH)
87 ++find_package(Qt5 COMPONENTS Widgets Quick Xml REQUIRED)
88 + if (NOT ${Qt5_FOUND})
89 + # Now we can apply standard CMake finder for Qt. We do this mostly
90 + # to have qt4_wrap_cpp() function available
91 +--
92 +2.30.0
93 +
94
95 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
96 new file mode 100644
97 index 00000000000..91d5c66c761
98 --- /dev/null
99 +++ b/sci-libs/opencascade/files/opencascade-7.5.1-0002-remove-unnecessary-Qt5-check.patch
100 @@ -0,0 +1,28 @@
101 +From dcf67dbc486a97256ea6df7b968f69346e7b3dba Mon Sep 17 00:00:00 2001
102 +From: Bernd Waibel <waebbl@×××××.com>
103 +Date: Wed, 3 Feb 2021 23:45:27 +0100
104 +Subject: [PATCH] remove unnecessary Qt5 check
105 +
106 +Signed-off-by: Bernd Waibel <waebbl@×××××.com>
107 +---
108 + adm/cmake/qt_macro.cmake | 4 ----
109 + 1 file changed, 4 deletions(-)
110 +
111 +diff --git a/adm/cmake/qt_macro.cmake b/adm/cmake/qt_macro.cmake
112 +index ec897384..363d9c52 100644
113 +--- a/adm/cmake/qt_macro.cmake
114 ++++ b/adm/cmake/qt_macro.cmake
115 +@@ -2,10 +2,6 @@
116 +
117 + macro (FIND_QT_PACKAGE PROJECT_LIBRARIES_DEBUG PROJECT_LIBRARIES_RELEASE PROJECT_INCLUDES)
118 +
119 +- if ("${3RDPARTY_QT_DIR}" STREQUAL "")
120 +- message (FATAL_ERROR "Empty Qt dir")
121 +- endif()
122 +-
123 + if (${Qt5_FOUND})
124 + #message (STATUS "Qt5 cmake configuration")
125 +
126 +--
127 +2.30.0
128 +
129
130 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
131 new file mode 100644
132 index 00000000000..0665790d20a
133 --- /dev/null
134 +++ b/sci-libs/opencascade/files/opencascade-7.5.1-0003-add-Gentoo-configuration-type.patch
135 @@ -0,0 +1,26 @@
136 +From a8aa40ec021dac8310d77bcec71ee298f6773926 Mon Sep 17 00:00:00 2001
137 +From: Bernd Waibel <waebbl@×××××.com>
138 +Date: Thu, 4 Feb 2021 22:29:57 +0100
139 +Subject: [PATCH] add Gentoo configuration type
140 +
141 +Signed-off-by: Bernd Waibel <waebbl@×××××.com>
142 +---
143 + CMakeLists.txt | 2 +-
144 + 1 file changed, 1 insertion(+), 1 deletion(-)
145 +
146 +diff --git a/CMakeLists.txt b/CMakeLists.txt
147 +index 100d6133..887a1cd7 100644
148 +--- a/CMakeLists.txt
149 ++++ b/CMakeLists.txt
150 +@@ -4,7 +4,7 @@ set (CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/adm/cmake")
151 +
152 + set (CMAKE_SUPPRESS_REGENERATION TRUE)
153 +
154 +-set (CMAKE_CONFIGURATION_TYPES Release Debug RelWithDebInfo CACHE INTERNAL "" FORCE)
155 ++set (CMAKE_CONFIGURATION_TYPES Release Debug RelWithDebInfo Gentoo CACHE INTERNAL "" FORCE)
156 +
157 + # macro: include patched file if it exists
158 + macro (OCCT_INCLUDE_CMAKE_FILE BEING_INCLUDED_FILE)
159 +--
160 +2.30.0
161 +
162
163 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
164 new file mode 100644
165 index 00000000000..caace23fc2d
166 --- /dev/null
167 +++ b/sci-libs/opencascade/files/opencascade-7.5.1-0004-fix-installation-of-cmake-config-files.patch
168 @@ -0,0 +1,40 @@
169 +From 8469f927963fe4bece05297c514fb2b9f9ad9b1a Mon Sep 17 00:00:00 2001
170 +From: Bernd Waibel <waebbl@×××××.com>
171 +Date: Fri, 5 Feb 2021 13:44:15 +0100
172 +Subject: [PATCH] fix installation of cmake config files
173 +
174 +Signed-off-by: Bernd Waibel <waebbl@×××××.com>
175 +---
176 + CMakeLists.txt | 2 +-
177 + adm/cmake/occt_macros.cmake | 2 +-
178 + 2 files changed, 2 insertions(+), 2 deletions(-)
179 +
180 +diff --git a/CMakeLists.txt b/CMakeLists.txt
181 +index 100d6133..bc8cdb92 100644
182 +--- a/CMakeLists.txt
183 ++++ b/CMakeLists.txt
184 +@@ -1156,7 +1156,7 @@ foreach (OCCT_CONFIGURATION ${CMAKE_CONFIGURATION_TYPES})
185 + endforeach()
186 + # install OpenCASCADE config file with compile definitions and C/C++ flags ONLY for current configuration
187 + install (CODE "string (TOLOWER \"\${CMAKE_INSTALL_CONFIG_NAME}\" CMAKE_INSTALL_CONFIG_NAME_LOWER)")
188 +-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)")
189 ++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)")
190 +
191 + foreach (OCCT_MODULE ${OCCT_MODULES})
192 + if (BUILD_MODULE_${OCCT_MODULE})
193 +diff --git a/adm/cmake/occt_macros.cmake b/adm/cmake/occt_macros.cmake
194 +index 0a387945..f10fe5e3 100644
195 +--- a/adm/cmake/occt_macros.cmake
196 ++++ b/adm/cmake/occt_macros.cmake
197 +@@ -592,7 +592,7 @@ macro (OCCT_UPDATE_TARGET_FILE)
198 + "cmake_policy(PUSH)
199 + cmake_policy(SET CMP0007 NEW)
200 + string (TOLOWER \"\${CMAKE_INSTALL_CONFIG_NAME}\" CMAKE_INSTALL_CONFIG_NAME_LOWERCASE)
201 +- file (GLOB ALL_OCCT_TARGET_FILES \"${INSTALL_DIR}/${INSTALL_DIR_CMAKE}/OpenCASCADE*Targets-\${CMAKE_INSTALL_CONFIG_NAME_LOWERCASE}.cmake\")
202 ++ file (GLOB ALL_OCCT_TARGET_FILES \"${INSTALL_DIR_CMAKE}/OpenCASCADE*Targets-\${CMAKE_INSTALL_CONFIG_NAME_LOWERCASE}.cmake\")
203 + foreach(TARGET_FILENAME \${ALL_OCCT_TARGET_FILES})
204 + file (STRINGS \"\${TARGET_FILENAME}\" TARGET_FILE_CONTENT)
205 + file (REMOVE \"\${TARGET_FILENAME}\")
206 +--
207 +2.30.0
208 +
209
210 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
211 new file mode 100644
212 index 00000000000..1cb397e0a97
213 --- /dev/null
214 +++ b/sci-libs/opencascade/files/opencascade-7.5.1-0005-fix-write-permissions-on-scripts.patch
215 @@ -0,0 +1,43 @@
216 +From 5f7db00bfc56d497a1897102a5ddd5bdddd72942 Mon Sep 17 00:00:00 2001
217 +From: Bernd Waibel <waebbl-gentoo@××××××.net>
218 +Date: Fri, 16 Apr 2021 01:04:24 +0200
219 +Subject: [PATCH] fix write permissions on scripts
220 +
221 +Signed-off-by: Bernd Waibel <waebbl-gentoo@××××××.net>
222 +---
223 + CMakeLists.txt | 8 ++++----
224 + 1 file changed, 4 insertions(+), 4 deletions(-)
225 +
226 +diff --git a/CMakeLists.txt b/CMakeLists.txt
227 +index 100d6133..e9e8fb29 100644
228 +--- a/CMakeLists.txt
229 ++++ b/CMakeLists.txt
230 +@@ -890,10 +890,10 @@ if (${DRAWEXE_INDEX} GREATER -1)
231 + # copy draw script to install script folder
232 + if (BUILD_PATCH AND EXISTS "${BUILD_PATCH}/adm/templates/draw.${SCRIPT_EXT}")
233 + install (FILES "${BUILD_PATCH}/adm/templates/draw.${SCRIPT_EXT}" DESTINATION "${INSTALL_DIR_SCRIPT}"
234 +- PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_WRITE GROUP_EXECUTE WORLD_READ WORLD_WRITE WORLD_EXECUTE)
235 ++ PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE)
236 + else()
237 + install (FILES "${CMAKE_SOURCE_DIR}/adm/templates/draw.${SCRIPT_EXT}" DESTINATION "${INSTALL_DIR_SCRIPT}"
238 +- PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_WRITE GROUP_EXECUTE WORLD_READ WORLD_WRITE WORLD_EXECUTE)
239 ++ PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE)
240 + endif()
241 +
242 + # copy draw script to CMake binary folder
243 +@@ -1101,10 +1101,10 @@ if (BUILD_TOOL_TOOLKITS)
244 + # copy tinspector script to install script folder
245 + if (BUILD_PATCH AND EXISTS "${BUILD_PATCH}/adm/templates/inspector.${SCRIPT_EXT}")
246 + install (FILES "${BUILD_PATCH}/adm/templates/inspector.${SCRIPT_EXT}" DESTINATION "${INSTALL_DIR_SCRIPT}"
247 +- PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_WRITE GROUP_EXECUTE WORLD_READ WORLD_WRITE WORLD_EXECUTE)
248 ++ PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE)
249 + else()
250 + install (FILES "${CMAKE_SOURCE_DIR}/adm/templates/inspector.${SCRIPT_EXT}" DESTINATION "${INSTALL_DIR_SCRIPT}"
251 +- PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_WRITE GROUP_EXECUTE WORLD_READ WORLD_WRITE WORLD_EXECUTE)
252 ++ PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE)
253 + endif()
254 +
255 + set (OpenCASCADE_BINARY_DIR "${INSTALL_DIR}/${INSTALL_DIR_BIN}")
256 +--
257 +2.31.1
258 +
259
260 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
261 new file mode 100644
262 index 00000000000..0ab023693e6
263 --- /dev/null
264 +++ b/sci-libs/opencascade/files/opencascade-7.5.1-0006-fix-creation-of-custom.sh-script.patch
265 @@ -0,0 +1,34 @@
266 +From 0df9b2c485da92c6e9fdd6d4b5ea1ec6588bd66f Mon Sep 17 00:00:00 2001
267 +From: Bernd Waibel <waebbl-gentoo@××××××.net>
268 +Date: Fri, 16 Apr 2021 14:32:24 +0200
269 +Subject: [PATCH] fix creation of custom.sh script
270 +
271 +Signed-off-by: Bernd Waibel <waebbl-gentoo@××××××.net>
272 +---
273 + CMakeLists.txt | 10 +---------
274 + 1 file changed, 1 insertion(+), 9 deletions(-)
275 +
276 +diff --git a/CMakeLists.txt b/CMakeLists.txt
277 +index 100d6133..7799b73a 100644
278 +--- a/CMakeLists.txt
279 ++++ b/CMakeLists.txt
280 +@@ -909,15 +909,7 @@ else()
281 + endif()
282 +
283 + # change custom.bat/sh
284 +-if (EXISTS "${INSTALL_DIR}/${INSTALL_DIR_SCRIPT}/custom.${SCRIPT_EXT}")
285 +- file (READ "${INSTALL_DIR}/${INSTALL_DIR_SCRIPT}/custom.${SCRIPT_EXT}" CUSTOM_CONTENT)
286 +-
287 +- set (CUSTOM_CONTENT "${CUSTOM_CONTENT} ${ADDITIONAL_CUSTOM_CONTENT}")
288 +-
289 +- file (WRITE "${INSTALL_DIR}/${INSTALL_DIR_SCRIPT}/custom.${SCRIPT_EXT}" "${CUSTOM_CONTENT}")
290 +-else()
291 +- OCCT_CONFIGURE_AND_INSTALL ("adm/templates/custom.${SCRIPT_EXT}.main" "custom.${SCRIPT_EXT}" "custom.${SCRIPT_EXT}" "${INSTALL_DIR_SCRIPT}")
292 +-endif()
293 ++OCCT_CONFIGURE_AND_INSTALL ("adm/templates/custom.${SCRIPT_EXT}.main" "custom.${SCRIPT_EXT}" "custom.${SCRIPT_EXT}" "${INSTALL_DIR_SCRIPT}")
294 +
295 + if (WIN32)
296 + set (THIRDPARTY_DIR_REPLACE "%THIRDPARTY_DIR%")
297 +--
298 +2.31.1
299 +
300
301 diff --git a/sci-libs/opencascade/files/opencascade-7.4.0.env.in b/sci-libs/opencascade/files/opencascade-7.5.env.in
302 similarity index 73%
303 copy from sci-libs/opencascade/files/opencascade-7.4.0.env.in
304 copy to sci-libs/opencascade/files/opencascade-7.5.env.in
305 index 2eefe188c1a..50766cbb6bb 100644
306 --- a/sci-libs/opencascade/files/opencascade-7.4.0.env.in
307 +++ b/sci-libs/opencascade/files/opencascade-7.5.env.in
308 @@ -10,9 +10,8 @@
309
310 # define the root directory of Open CASCADE Technology (needed)
311 CASROOT=VAR_CASROOT
312 -# PATH and LDPATH are used to find the binaries and libraries of OCCT (needed)
313 -PATH=VAR_CASROOT/bin
314 -LDPATH=VAR_CASROOT/lib
315 +PATH=VAR_CASROOT/lib/opencascade-VAR_PV/bin
316 +LDPATH=VAR_CASROOT/lib/opencascade-VAR_PV
317
318 #############################################################################
319 # The MMGT_* variables are used to determine how memory management will work
320 @@ -76,25 +75,25 @@ LDPATH=VAR_CASROOT/lib
321 # CSF_EXCEPTION_PROMPT (default: 1) optional
322 # not documented upstream (maybe a flag indicating whether the user shall
323 # be prompted in the case of exceptions)
324 -CSF_EXCEPTION_PROMPT=1
325 +#CSF_EXCEPTION_PROMPT=1
326
327 # The following CSF_* variables define various directories and files where
328 # OCCT is looking for resources.
329 -CSF_GraphicShr=VAR_CASROOT/lib/libTKOpenGl.so
330 -CSF_MIGRATION_TYPES=VAR_CASROOT/share/opencascade/resources/StdResource/MigrationSheet.txt
331 -CSF_MDTVTexturesDirectory=VAR_CASROOT/share/opencascade/resources/Textures
332 -CSF_PluginDefaults=VAR_CASROOT/share/opencascade/resources/StdResource
333 -CSF_StandardDefaults=VAR_CASROOT/share/opencascade/resources/StdResource
334 -CSF_StandardLiteDefaults=VAR_CASROOT/share/opencascade/resources/StdResource
335 -CSF_XCAFDefaults=VAR_CASROOT/share/opencascade/resources/StdResource
336 -CSF_XmlOcafResource=VAR_CASROOT/share/opencascade/resources/XmlOcafResource
337 +CSF_GraphicShr=VAR_CASROOT/lib/opencascade-VAR_PV/libTKOpenGl.so
338 +CSF_MIGRATION_TYPES=VAR_CASROOT/share/opencascade-VAR_PV/resources/StdResource/MigrationSheet.txt
339 +CSF_MDTVTexturesDirectory=VAR_CASROOT/share/opencascade-VAR_PV/resources/Textures
340 +CSF_PluginDefaults=VAR_CASROOT/share/opencascade-VAR_PV/resources/StdResource
341 +CSF_StandardDefaults=VAR_CASROOT/share/opencascade-VAR_PV/resources/StdResource
342 +CSF_StandardLiteDefaults=VAR_CASROOT/share/opencascade-VAR_PV/resources/StdResource
343 +CSF_XCAFDefaults=VAR_CASROOT/share/opencascade-VAR_PV/resources/StdResource
344 +CSF_XmlOcafResource=VAR_CASROOT/share/opencascade-VAR_PV/resources/XmlOcafResource
345 # The below values might be optional.
346 -CSF_IGESDefaults=VAR_CASROOT/share/opencascade/resources/XSTEPResource
347 -CSF_ShadersDirectory=VAR_CASROOT/share/opencascade/resources/Shaders
348 -CSF_SHMessage=VAR_CASROOT/share/opencascade/resources/SHMessage
349 -CSF_STEPDefaults=VAR_CASROOT/share/opencascade/resources/XSTEPResource
350 -CSF_UnitsDefinition=/usr/lib64/opencascade-7.3.0/ros/share/opencascade/resources/UnitsAPI/Units.dat
351 -CSF_XSMessage=/usr/lib64/opencascade-7.3.0/ros/share/opencascade/resources/XSMessage
352 +CSF_IGESDefaults=VAR_CASROOT/share/opencascade-VAR_PV/resources/XSTEPResource
353 +CSF_ShadersDirectory=VAR_CASROOT/share/opencascade-VAR_PV/resources/Shaders
354 +CSF_SHMessage=VAR_CASROOT/share/opencascade-VAR_PV/resources/SHMessage
355 +CSF_STEPDefaults=VAR_CASROOT/share/opencascade-VAR_PV/resources/XSTEPResource
356 +CSF_UnitsDefinition=VAR_CASROOT/share/opencascade-VAR_PV/resources/UnitsAPI/Units.dat
357 +CSF_XSMessage=VAR_CASROOT/share/opencascade-VAR_PV/resources/XSMessage
358
359 # TODO: check those
360 # they were defined in the original ebuild but the directories and files
361
362 diff --git a/sci-libs/opencascade/metadata.xml b/sci-libs/opencascade/metadata.xml
363 index aa017491b60..9477ecff134 100644
364 --- a/sci-libs/opencascade/metadata.xml
365 +++ b/sci-libs/opencascade/metadata.xml
366 @@ -11,7 +11,7 @@
367 </maintainer>
368 <use>
369 <flag name="freeimage">
370 - Enable support for image i/o via media-libs/freeimage
371 + Enable support for image i/o via <pkg>media-libs/freeimage</pkg>
372 </flag>
373 <flag name="gles2">
374 Use OpenGL ES 2.0
375 @@ -19,15 +19,19 @@
376 <flag name="inspector">
377 Build the OCCT inspector tool for low-level data inspection
378 </flag>
379 + <flag name="json">
380 + Enable JSON support through <pkg>dev-libs/rapidjson</pkg>
381 + </flag>
382 <flag name="optimize">
383 Don't clear allocated memory. Use optimized memory manager unless
384 tbb USE flag is set.
385 </flag>
386 <flag name="tbb">
387 - Enable multithreading with the Intel Threads Building Block dev-cpp/tbb
388 + Enable multithreading with the Intel Threads Building Block
389 + <pkg>dev-cpp/tbb</pkg>
390 </flag>
391 <flag name="vtk">
392 - Enable Visualization Toolkit
393 + Enable Visualization Toolkit support via <pkg>sci-libs/vtk</pkg>
394 </flag>
395 </use>
396 </pkgmetadata>
397
398 diff --git a/sci-libs/opencascade/opencascade-7.5.1.ebuild b/sci-libs/opencascade/opencascade-7.5.1.ebuild
399 new file mode 100644
400 index 00000000000..474b381f556
401 --- /dev/null
402 +++ b/sci-libs/opencascade/opencascade-7.5.1.ebuild
403 @@ -0,0 +1,167 @@
404 +# Copyright 1999-2021 Gentoo Authors
405 +# Distributed under the terms of the GNU General Public License v2
406 +
407 +# TODO:
408 +# check the src files referenced in 51opencascade, i.e. resources and the like
409 +
410 +EAPI=7
411 +
412 +inherit cmake flag-o-matic
413 +
414 +MY_PV="$(ver_rs 1- '_')"
415 +PV_MAJ="$(ver_cut 1-2)"
416 +
417 +DESCRIPTION="Development platform for CAD/CAE, 3D surface/solid modeling and data exchange"
418 +HOMEPAGE="https://www.opencascade.com"
419 +SRC_URI="https://git.dev.opencascade.org/gitweb/?p=occt.git;a=snapshot;h=refs/tags/V${MY_PV};sf=tgz -> ${P}.tar.gz"
420 +S="${WORKDIR}/occt-V${MY_PV}"
421 +
422 +LICENSE="|| ( Open-CASCADE-LGPL-2.1-Exception-1.0 LGPL-2.1 )"
423 +SLOT="${PV_MAJ}"
424 +KEYWORDS="~amd64 ~arm64 ~x86"
425 +IUSE="debug doc examples ffmpeg freeimage gles2 json optimize tbb vtk"
426 +
427 +REQUIRED_USE="?? ( optimize tbb )"
428 +
429 +# There's no easy way to test. Testing needs a rather big environment
430 +# properly set up.
431 +RESTRICT="test"
432 +
433 +RDEPEND="
434 + app-eselect/eselect-opencascade
435 + dev-cpp/eigen
436 + dev-lang/tcl:0=
437 + dev-lang/tk:0=
438 + dev-libs/rapidjson
439 + dev-tcltk/itcl
440 + dev-tcltk/itk
441 + dev-tcltk/tix
442 + media-libs/fontconfig
443 + media-libs/freetype:2
444 + media-libs/ftgl
445 + virtual/glu
446 + virtual/opengl
447 + x11-libs/libXmu
448 + examples? (
449 + dev-qt/qtcore:5
450 + dev-qt/qtgui:5
451 + dev-qt/qtquickcontrols2:5
452 + dev-qt/qtwidgets:5
453 + dev-qt/qtxml:5
454 + )
455 + ffmpeg? ( media-video/ffmpeg )
456 + freeimage? ( media-libs/freeimage )
457 + json? ( dev-libs/rapidjson )
458 + tbb? ( dev-cpp/tbb )
459 + vtk? ( >=sci-libs/vtk-8.1.0[rendering] )
460 +"
461 +DEPEND="${RDEPEND}"
462 +BDEPEND="
463 + doc? ( app-doc/doxygen )
464 + examples? ( dev-qt/linguist-tools:5 )
465 +"
466 +
467 +PATCHES=(
468 + "${FILESDIR}"/${P}-0001-allow-default-search-path-for-Qt5.patch
469 + "${FILESDIR}"/${P}-0002-remove-unnecessary-Qt5-check.patch
470 + "${FILESDIR}"/${P}-0003-add-Gentoo-configuration-type.patch
471 + "${FILESDIR}"/${P}-0004-fix-installation-of-cmake-config-files.patch
472 + "${FILESDIR}"/${P}-0005-fix-write-permissions-on-scripts.patch
473 + "${FILESDIR}"/${P}-0006-fix-creation-of-custom.sh-script.patch
474 +)
475 +
476 +src_prepare() {
477 + cmake_src_prepare
478 +
479 + if use debug; then
480 + append-cppflags -DDEBUG
481 + append-flags -g
482 + fi
483 +
484 + sed -e 's/\/lib\$/\/'$(get_libdir)'\$/' \
485 + -i adm/templates/OpenCASCADEConfig.cmake.in || die
486 +}
487 +
488 +src_configure() {
489 + local mycmakeargs=(
490 + -DBUILD_DOC_Overview=$(usex doc)
491 + -DBUILD_Inspector=$(usex examples)
492 + -DBUILD_WITH_DEBUG=$(usex debug)
493 + -DCMAKE_INSTALL_PREFIX="/usr"
494 + -DINSTALL_DIR_BIN="$(get_libdir)/${P}/bin"
495 + -DINSTALL_DIR_CMAKE="$(get_libdir)/cmake/${P}"
496 + -DINSTALL_DIR_DOC="share/doc/${PF}"
497 + -DINSTALL_DIR_LIB="$(get_libdir)/${P}"
498 + -DINSTALL_DIR_SCRIPT="$(get_libdir)/${P}/bin"
499 + -DINSTALL_DIR_WITH_VERSION=ON
500 + -DINSTALL_SAMPLES=$(usex examples)
501 + -DINSTALL_TEST_CASES=NO
502 + -DUSE_D3D=NO
503 + -DUSE_FFMPEG=$(usex ffmpeg)
504 + -DUSE_FREEIMAGE=$(usex freeimage)
505 + -DUSE_FREETYPE=ON
506 + -DUSE_GLES2=$(usex gles2)
507 + -DUSE_RAPIDJSON=$(usex json)
508 + -DUSE_TBB=$(usex tbb)
509 + -DUSE_VTK=$(usex vtk)
510 + )
511 +
512 + use doc && mycmakeargs+=( -DINSTALL_DOC_Overview=ON )
513 +
514 + if use examples; then
515 + mycmakeargs+=(
516 + -D3RDPARTY_QT_DIR="${ESYSROOT}"/usr
517 + -DBUILD_SAMPLES_QT=ON
518 + )
519 + fi
520 +
521 + if use vtk; then
522 + if has_version ">=sci-libs/vtk-9.0.0"; then
523 + mycmakeargs+=(
524 + -D3RDPARTY_VTK_DIR="${ESYSROOT}"/usr
525 + -D3RDPARTY_VTK_INCLUDE_DIR="${ESYSROOT}"/usr/include/vtk-9.0
526 + -D3RDPARTY_VTK_LIBRARY_DIR="${ESYSROOT}"/usr/$(get_libdir)
527 + )
528 + fi
529 + fi
530 +
531 + cmake_src_configure
532 +
533 + prepare_env_file() {
534 + # prepare /etc/env.d file
535 + sed -e 's|VAR_CASROOT|'${ESYSROOT}'/usr|g' < "${FILESDIR}/${PN}-${PV_MAJ}.env.in" >> "${T}/${PV_MAJ}" || die
536 + sed -e 's|lib/|'$(get_libdir)'/|g' -i "${T}/${PV_MAJ}" || die
537 + sed -e 's|VAR_PV|'${PV}'|g' -i "${T}/${PV_MAJ}" || die
538 +
539 + # use TBB for memory allocation optimizations?
540 + use tbb && (sed -e 's|^#MMGT_OPT=0$|MMGT_OPT=2|' -i "${T}/${PV_MAJ}" || die)
541 +
542 + if use optimize ; then
543 + # use internal optimized memory manager?
544 + sed -e 's|^#MMGT_OPT=0$|MMGT_OPT=1|' -i "${T}/${PV_MAJ}" || die
545 + # don't clear memory ?
546 + sed -e 's|^#MMGT_CLEAR=1$|MMGT_CLEAR=0|' -i "${T}/${PV_MAJ}" || die
547 + fi
548 + }
549 +
550 + prepare_env_file
551 +}
552 +
553 +src_install() {
554 + use doc && docompress -x /usr/share/doc/${PF}/overview/html
555 + cmake_src_install
556 +
557 + # respect slotting
558 + insinto "/etc/env.d/${PN}"
559 + doins "${T}/${PV_MAJ}"
560 +
561 + # remove examples
562 + if use !examples; then
563 + rm -r "${ED}/usr/share/${P}/samples" || die
564 + fi
565 +}
566 +
567 +pkg_postinst() {
568 + eselect ${PN} set ${PV_MAJ} || die "failed to switch to updated implementation"
569 + einfo "You can switch between available ${PN} implementations using eselect ${PN}"
570 +}