Gentoo Archives: gentoo-commits

From: Amy Liffey <amynka@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: sci-libs/opencascade/files/, sci-libs/opencascade/
Date: Sat, 27 Oct 2018 10:36:18
Message-Id: 1540636548.0b00b035e79aed9609ac7e8e921267d75de2ee94.amynka@gentoo
1 commit: 0b00b035e79aed9609ac7e8e921267d75de2ee94
2 Author: Michael Perlov <perlovka <AT> gmail <DOT> com>
3 AuthorDate: Sat Sep 15 14:23:51 2018 +0000
4 Commit: Amy Liffey <amynka <AT> gentoo <DOT> org>
5 CommitDate: Sat Oct 27 10:35:48 2018 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=0b00b035
7
8 sci-libs/opencascade: Version bump to 7.3.0
9
10 Closes: https://github.com/gentoo/gentoo/pull/9871
11 Closes: https://bugs.gentoo.org/610362
12 Signed-off-by: Michael Perlov <perlovka <AT> gmail.com>
13 Signed-off-by: Amy Liffey <amynka <AT> gentoo.org>
14 Package-Manager: Portage-2.3.49, Repoman-2.3.10
15
16 sci-libs/opencascade/Manifest | 1 +
17 .../files/opencascade-7.3.0-fixed-DESTDIR.patch | 31 +++++
18 .../files/opencascade-7.3.0-vtk-compat.patch | 13 ++
19 sci-libs/opencascade/metadata.xml | 1 +
20 sci-libs/opencascade/opencascade-7.3.0.ebuild | 140 +++++++++++++++++++++
21 5 files changed, 186 insertions(+)
22
23 diff --git a/sci-libs/opencascade/Manifest b/sci-libs/opencascade/Manifest
24 index 29c34b19d5a..922670cf0cf 100644
25 --- a/sci-libs/opencascade/Manifest
26 +++ b/sci-libs/opencascade/Manifest
27 @@ -1 +1,2 @@
28 DIST opencascade-6.9.1.tgz 209589289 BLAKE2B 266d68042dbbb8c9bc5f167b9aefaf84b3f1568c25530acb36271443429e67972aae913ebcea09c9ea27164e2e3f007eb287350d7ad69486755cdcb713fdb1af SHA512 92f0fffb110344feebaba9dd4a3427419ea9e6db7b09556b7dcdb1248f2a868e3337587abf9921392435031431f3876cea4d4709fd9926604dcebbd6d26f8963
29 +DIST opencascade-7.3.0.tar.gz 48576720 BLAKE2B bf63ba77aabc8a8c92d694f78f24bab71c07e68e7ba4b8d5d90966733dbd9c0c83a76e35f059e798d4a60640d663330cd13a828b19ec02a5372053ab39a74aa6 SHA512 17eb1810b43a8b001867563f97801ceb38a7878fa53d9b39b46a5cf3dd676310fa80e83e90668a99ec6aff9d4f09733fb6c7be83c1e3ab4eaa9fda55888050da
30
31 diff --git a/sci-libs/opencascade/files/opencascade-7.3.0-fixed-DESTDIR.patch b/sci-libs/opencascade/files/opencascade-7.3.0-fixed-DESTDIR.patch
32 new file mode 100644
33 index 00000000000..c0a6363e19f
34 --- /dev/null
35 +++ b/sci-libs/opencascade/files/opencascade-7.3.0-fixed-DESTDIR.patch
36 @@ -0,0 +1,31 @@
37 +--- a/CMakeLists.txt 2016-11-25 11:50:18.000000000 +0100
38 ++++ b/CMakeLists.txt 2017-03-18 08:44:10.406668714 +0100
39 +@@ -885,7 +885,7 @@ if (EXISTS "${INSTALL_DIR}/${INSTALL_DIR_SCRIPT}/custom.${SCRIPT_EXT}")
40 +
41 + set (CUSTOM_CONTENT "${CUSTOM_CONTENT} ${ADDITIONAL_CUSTOM_CONTENT}")
42 +
43 +- file (WRITE "${INSTALL_DIR}/${INSTALL_DIR_SCRIPT}/custom.${SCRIPT_EXT}" "${CUSTOM_CONTENT}")
44 ++ file (WRITE \"\$ENV{DESTDIR}${INSTALL_DIR}/${INSTALL_DIR_SCRIPT}/custom.${SCRIPT_EXT}\" "${CUSTOM_CONTENT}")
45 + else()
46 + OCCT_CONFIGURE_AND_INSTALL ("adm/templates/custom.${SCRIPT_EXT}.main" "custom.${SCRIPT_EXT}" "custom.${SCRIPT_EXT}" "${INSTALL_DIR_SCRIPT}")
47 + endif()
48 +@@ -906,7 +906,7 @@
49 + endforeach()
50 + # install OpenCASCADE config file with compile definitions and C/C++ flags ONLY for current configuration
51 + install (CODE "string (TOLOWER \"\${CMAKE_INSTALL_CONFIG_NAME}\" CMAKE_INSTALL_CONFIG_NAME_LOWER)")
52 +-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)")
53 ++install (CODE "configure_file(\"${CMAKE_BINARY_DIR}/OpenCASCADECompileDefinitionsAndFlags-\${CMAKE_INSTALL_CONFIG_NAME_LOWER}.cmake\" \"\$ENV{DESTDIR}/${INSTALL_DIR_CMAKE}/OpenCASCADECompileDefinitionsAndFlags-\${CMAKE_INSTALL_CONFIG_NAME_LOWER}.cmake\" COPYONLY)")
54 +
55 + foreach (OCCT_MODULE ${OCCT_MODULES})
56 + if (BUILD_MODULE_${OCCT_MODULE})
57 +--- a/adm/cmake/occt_macros.cmake 2016-11-25 11:50:18.000000000 +0100
58 ++++ b/adm/cmake/occt_macros.cmake 2017-03-18 08:44:10.406668714 +0100
59 +@@ -558,7 +558,7 @@
60 + "cmake_policy(PUSH)
61 + cmake_policy(SET CMP0007 NEW)
62 + string (TOLOWER \"\${CMAKE_INSTALL_CONFIG_NAME}\" CMAKE_INSTALL_CONFIG_NAME_LOWERCASE)
63 +- file (GLOB ALL_OCCT_TARGET_FILES \"${INSTALL_DIR}/${INSTALL_DIR_CMAKE}/OpenCASCADE*Targets-\${CMAKE_INSTALL_CONFIG_NAME_LOWERCASE}.cmake\")
64 ++ file (GLOB ALL_OCCT_TARGET_FILES \"\$ENV{DESTDIR}${INSTALL_DIR}/${INSTALL_DIR_CMAKE}/OpenCASCADE*Targets-\${CMAKE_INSTALL_CONFIG_NAME_LOWERCASE}.cmake\")
65 + foreach(TARGET_FILENAME \${ALL_OCCT_TARGET_FILES})
66 + file (STRINGS \"\${TARGET_FILENAME}\" TARGET_FILE_CONTENT)
67 + file (REMOVE \"\${TARGET_FILENAME}\")
68
69 diff --git a/sci-libs/opencascade/files/opencascade-7.3.0-vtk-compat.patch b/sci-libs/opencascade/files/opencascade-7.3.0-vtk-compat.patch
70 new file mode 100644
71 index 00000000000..71700a57f1d
72 --- /dev/null
73 +++ b/sci-libs/opencascade/files/opencascade-7.3.0-vtk-compat.patch
74 @@ -0,0 +1,13 @@
75 +--- a/src/IVtkVTK/IVtkVTK_ShapeData.cxx 2018-09-15 01:57:25.086783255 +0300
76 ++++ b/src/IVtkVTK/IVtkVTK_ShapeData.cxx 2018-09-15 01:58:20.877779839 +0300
77 +@@ -29,6 +29,10 @@
78 + #pragma warning(pop)
79 + #endif
80 +
81 ++#ifdef vtkGenericDataArray_h
82 ++#define InsertNextTupleValue InsertNextTypedTuple
83 ++#endif
84 ++
85 + IMPLEMENT_STANDARD_RTTIEXT(IVtkVTK_ShapeData,IVtk_IShapeData)
86 +
87 + //================================================================
88
89 diff --git a/sci-libs/opencascade/metadata.xml b/sci-libs/opencascade/metadata.xml
90 index 0dc2b1db4c1..7a267cb2e3b 100644
91 --- a/sci-libs/opencascade/metadata.xml
92 +++ b/sci-libs/opencascade/metadata.xml
93 @@ -8,6 +8,7 @@
94 <use>
95 <flag name="freeimage">Enable support for image i/o via media-libs/freeimage</flag>
96 <flag name="gl2ps">Use gl2ps PostScript printing library</flag>
97 + <flag name="gles2">Use OpenGL ES 2.0</flag>
98 <flag name="tbb">Enable multithreading with the Intel Threads Building Block dev-cpp/tbb</flag>
99 <flag name="vtk">Enable Virtualisation Toolkit</flag>
100 </use>
101
102 diff --git a/sci-libs/opencascade/opencascade-7.3.0.ebuild b/sci-libs/opencascade/opencascade-7.3.0.ebuild
103 new file mode 100644
104 index 00000000000..48f4c0775e4
105 --- /dev/null
106 +++ b/sci-libs/opencascade/opencascade-7.3.0.ebuild
107 @@ -0,0 +1,140 @@
108 +# Copyright 1999-2018 Gentoo Foundation
109 +# Distributed under the terms of the GNU General Public License v2
110 +
111 +EAPI=6
112 +
113 +inherit check-reqs cmake-utils eapi7-ver java-pkg-opt-2
114 +
115 +MY_PV="$(ver_rs 1- '_')"
116 +
117 +DESCRIPTION="Development platform for CAD/CAE, 3D surface/solid modeling and data exchange"
118 +HOMEPAGE="http://www.opencascade.com/"
119 +SRC_URI="https://git.dev.opencascade.org/gitweb/?p=occt.git;a=snapshot;h=refs/tags/V${MY_PV};sf=tgz -> ${P}.tar.gz"
120 +
121 +LICENSE="|| ( Open-CASCADE-LGPL-2.1-Exception-1.0 LGPL-2.1 )"
122 +SLOT="${PV}"
123 +KEYWORDS="~amd64 ~x86"
124 +
125 +IUSE="debug doc examples ffmpeg freeimage gl2ps gles2 java +tbb +vtk"
126 +
127 +RDEPEND="app-eselect/eselect-opencascade
128 + dev-lang/tcl:0=
129 + dev-lang/tk:0=
130 + dev-tcltk/itcl
131 + dev-tcltk/itk
132 + dev-tcltk/tix
133 + media-libs/freetype:2
134 + media-libs/ftgl
135 + virtual/glu
136 + virtual/opengl
137 + x11-libs/libXmu
138 + ffmpeg? ( virtual/ffmpeg )
139 + freeimage? ( media-libs/freeimage )
140 + gl2ps? ( x11-libs/gl2ps )
141 + java? ( >=virtual/jdk-0:= )
142 + tbb? ( dev-cpp/tbb )
143 + vtk? ( sci-libs/vtk[rendering] )
144 +"
145 +
146 +DEPEND="${RDEPEND}
147 + doc? ( app-doc/doxygen )
148 +"
149 +
150 +CHECKREQS_MEMORY="256M"
151 +CHECKREQS_DISK_BUILD="3584M"
152 +
153 +CMAKE_BUILD_TYPE=Release
154 +
155 +S="${WORKDIR}/occt-V${MY_PV}"
156 +
157 +PATCHES=(
158 + "${FILESDIR}/${P}-vtk-compat.patch"
159 + "${FILESDIR}/${P}-fixed-DESTDIR.patch"
160 +)
161 +
162 +pkg_setup() {
163 + check-reqs_pkg_setup
164 + use java && java-pkg-opt-2_pkg_setup
165 +}
166 +
167 +src_prepare() {
168 + cmake-utils_src_prepare
169 + use java && java-pkg-opt-2_src_prepare
170 +
171 + # Do not pre-strip files
172 + sed -i 's/_FLAGS_RELEASE} -s/_FLAGS_RELEASE}/g' adm/cmake/occt_defs_flags.cmake || die
173 +
174 + # Prepare environment variables used by Opencascade
175 + echo "CASROOT=${EROOT}usr/$(get_libdir)/${P}
176 +PATH=${EROOT}usr/$(get_libdir)/${P}/bin
177 +LDPATH=${EROOT}usr/$(get_libdir)/${P}/lib
178 +
179 +CSF_EXCEPTION_PROMPT=1
180 +CSF_GraphicShr=${EROOT}usr/$(get_libdir)/${P}/lib/libTKOpenGl.so
181 +CSF_IGESDefaults=${EROOT}usr/$(get_libdir)/${P}/share/opencascade/resources/XSTEPResource
182 +CSF_LANGUAGE=us
183 +CSF_MDTVTexturesDirectory=${EROOT}usr/$(get_libdir)/${P}/share/opencascade/resources/Textures
184 +CSF_MIGRATION_TYPES=${EROOT}usr/$(get_libdir)/${P}/share/opencascade/resources/StdResource/MigrationSheet.txt
185 +CSF_PluginDefaults=${EROOT}usr/$(get_libdir)/${P}/share/opencascade/resources/StdResource
186 +CSF_ShadersDirectory=${EROOT}usr/$(get_libdir)/${P}/share/opencascade/resources/Shaders
187 +CSF_SHMessage=${EROOT}usr/$(get_libdir)/${P}/share/opencascade/resources/SHMessage
188 +CSF_StandardDefaults=${EROOT}usr/$(get_libdir)/${P}/share/opencascade/resources/StdResource
189 +CSF_StandardLiteDefaults=${EROOT}usr/$(get_libdir)/${P}/share/opencascade/resources/StdResource
190 +CSF_STEPDefaults=${EROOT}usr/$(get_libdir)/${P}/share/opencascade/resources/XSTEPResource
191 +CSF_UnitsDefinition=${EROOT}usr/$(get_libdir)/${P}/share/opencascade/resources/UnitsAPI/Units.dat
192 +CSF_XCAFDefaults=${EROOT}usr/$(get_libdir)/${P}/share/opencascade/resources/StdResource
193 +CSF_XmlOcafResource=${EROOT}usr/$(get_libdir)/${P}/share/opencascade/resources/XmlOcafResource
194 +CSF_XSMessage=${EROOT}usr/$(get_libdir)/${P}/share/opencascade/resources/XSMessage
195 +
196 +MMGT_CLEAR=1
197 +# use TBB for memory allocation optimizations
198 +MMGT_OPT=2
199 +# The next MMGT_* variables are at their default values.
200 +# They are here for documentation, so you can change them if needed
201 +#MMGT_MMAP=1
202 +#MMGT_CELLSIZE=200
203 +#MMGT_NBPAGES=10000
204 +#MMGT_THRESHOLD=40000
205 +" > "${S}/${PV}"
206 +
207 +}
208 +
209 +src_configure() {
210 + local mycmakeargs=(
211 + -DBUILD_DOC_Overview=$(usex doc)
212 + -DBUILD_WITH_DEBUG=$(usex debug)
213 + -DCMAKE_INSTALL_PREFIX="/usr/$(get_libdir)/${P}"
214 + -DINSTALL_DIR_CMAKE="/usr/$(get_libdir)/cmake"
215 + -DINSTALL_DIR_DOC="/usr/share/doc/${P}"
216 + -DINSTALL_SAMPLES=$(usex examples)
217 + -DUSE_FFMPEG=$(usex ffmpeg)
218 + -DUSE_FREEIMAGE=$(usex freeimage)
219 + -DUSE_GL2PS=$(usex gl2ps)
220 + -DUSE_GLES2=$(usex gles2)
221 + -DUSE_TBB=$(usex tbb)
222 + -DUSE_VTK=$(usex vtk)
223 + )
224 +
225 + cmake-utils_src_configure
226 +}
227 +
228 +src_install() {
229 + cmake-utils_src_install
230 +
231 + fperms go-w "/usr/$(get_libdir)/${P}/bin/draw.sh"
232 +
233 + if ! use examples; then
234 + rm -rf "${ED%/}/usr/$(get_libdir)/${P}/share/${PN}/samples" || die
235 + fi
236 +
237 + insinto "/etc/env.d/${PN}"
238 + doins "${S}/${PV}"
239 +}
240 +
241 +pkg_postinst() {
242 + eselect ${PN} set ${PV}
243 + elog "You can switch between available ${PN} implementations using eselect ${PN}."
244 + elog "After upgrading OpenCASCADE you may have to rebuild packages depending on it."
245 + elog "You get a list by running \"equery depends sci-libs/opencascade\""
246 + elog "revdep-rebuild does NOT suffice."
247 +}