1 |
1 |
# Copyright 1999-2023 Gentoo Authors
|
2 |
2 |
# Distributed under the terms of the GNU General Public License v2
|
3 |
3 |
|
|
4 |
# USE_{DRACO,FFMPEG,FREEIMAGE,FREETYPE,GLES2,OPENGL,OPENVR,RAPIDJSON,TBB,TK,VTK,XLIB}
|
|
5 |
|
4 |
6 |
EAPI=8
|
5 |
7 |
|
6 |
8 |
inherit cmake
|
7 |
9 |
|
8 |
10 |
MY_SLOT="$(ver_cut 1-2)"
|
9 |
|
COMMIT="b079fb9877ef64d4a8158a60fa157f59b096debb"
|
10 |
|
COMMIT_SHORT="${COMMIT:0:7}"
|
|
11 |
MY_PV="$(ver_rs 3 '-')"
|
11 |
12 |
|
12 |
13 |
DESCRIPTION="Development platform for CAD/CAE, 3D surface/solid modeling and data exchange"
|
13 |
14 |
HOMEPAGE="https://www.opencascade.com"
|
14 |
|
SRC_URI="https://git.dev.opencascade.org/gitweb/?p=occt.git;a=snapshot;h=${COMMIT};sf=tgz -> ${P}.tar.gz"
|
15 |
|
S="${WORKDIR}/occt-${COMMIT_SHORT}"
|
|
15 |
SRC_URI="https://git.dev.opencascade.org/gitweb/?p=occt.git;a=snapshot;h=185d29b92f6764ffa9fc195b7dbe7bba3c4ac855;sf=tgz -> ${P}.tar.gz"
|
|
16 |
S="${WORKDIR}/occt-185d29b"
|
16 |
17 |
|
17 |
18 |
LICENSE="|| ( Open-CASCADE-LGPL-2.1-Exception-1.0 LGPL-2.1 )"
|
18 |
19 |
SLOT="0/${MY_SLOT}"
|
19 |
20 |
KEYWORDS="amd64 ~arm64 ~riscv ~x86"
|
20 |
|
IUSE="doc eigen examples ffmpeg freeimage gles2 json optimize tbb vtk"
|
|
21 |
IUSE="doc examples ffmpeg freeimage gles2 json optimize tbb vtk"
|
21 |
22 |
|
22 |
23 |
REQUIRED_USE="?? ( optimize tbb )"
|
23 |
24 |
|
... | ... | |
25 |
26 |
# properly set up.
|
26 |
27 |
RESTRICT="test"
|
27 |
28 |
|
28 |
|
# ffmpeg: https://dev.opencascade.org/content/build-error-when-compiling-against-ffmpeg-5
|
|
29 |
# ffmpeg: https://tracker.dev.opencascade.org/view.php?id=32871
|
29 |
30 |
RDEPEND="
|
30 |
31 |
!app-eselect/eselect-opencascade
|
31 |
32 |
dev-lang/tcl:=
|
32 |
33 |
dev-lang/tk:=
|
33 |
|
dev-tcltk/itcl
|
34 |
|
dev-tcltk/itk
|
35 |
|
dev-tcltk/tix
|
36 |
34 |
media-libs/fontconfig
|
37 |
35 |
media-libs/freetype:2
|
38 |
|
media-libs/ftgl
|
39 |
|
virtual/glu
|
40 |
36 |
virtual/opengl
|
41 |
37 |
x11-libs/libX11
|
42 |
38 |
examples? (
|
... | ... | |
53 |
49 |
"
|
54 |
50 |
DEPEND="
|
55 |
51 |
${RDEPEND}
|
56 |
|
eigen? ( dev-cpp/eigen )
|
|
52 |
x11-base/xorg-proto
|
57 |
53 |
json? ( dev-libs/rapidjson )
|
58 |
54 |
vtk? ( dev-libs/utfcpp )
|
59 |
55 |
"
|
60 |
56 |
BDEPEND="
|
61 |
|
doc? ( app-doc/doxygen[dot] )
|
|
57 |
doc? ( app-doc/doxygen )
|
62 |
58 |
examples? ( dev-qt/linguist-tools:5 )
|
63 |
59 |
"
|
64 |
60 |
|
65 |
61 |
PATCHES=(
|
66 |
|
"${FILESDIR}"/${PN}-7.5.1-0004-fix-installation-of-cmake-config-files.patch
|
67 |
62 |
"${FILESDIR}"/${PN}-7.5.1-0005-fix-write-permissions-on-scripts.patch
|
68 |
63 |
"${FILESDIR}"/${PN}-7.5.1-0006-fix-creation-of-custom.sh-script.patch
|
69 |
|
"${FILESDIR}"/${PN}-7.6.2-avoid-pre-stripping-binaries.patch
|
70 |
|
"${FILESDIR}"/${PN}-7.5.3-tbb-2021.patch
|
|
64 |
"${FILESDIR}"/${PN}-7.7.0-add-missing-include-limits.patch
|
|
65 |
"${FILESDIR}"/${PN}-7.7.0-fix-installation-of-cmake-config-files.patch
|
|
66 |
"${FILESDIR}"/${PN}-7.7.0-avoid-pre-stripping-binaries.patch
|
71 |
67 |
"${FILESDIR}"/${PN}-7.7.0-build-against-vtk-9.2.patch
|
72 |
68 |
"${FILESDIR}"/${PN}-7.7.0-musl.patch
|
73 |
69 |
)
|
... | ... | |
108 |
104 |
-DUSE_D3D=NO
|
109 |
105 |
# no package yet in tree
|
110 |
106 |
-DUSE_DRACO=OFF
|
111 |
|
-DUSE_EIGEN=$(usex eigen)
|
|
107 |
# has no function in 7.7.0_beta
|
|
108 |
# see https://dev.opencascade.org/content/occt-770-beta-version-available#comment-23733
|
|
109 |
-DUSE_EIGEN=OFF
|
112 |
110 |
-DUSE_FFMPEG=$(usex ffmpeg)
|
113 |
111 |
-DUSE_FREEIMAGE=$(usex freeimage)
|
114 |
112 |
-DUSE_FREETYPE=ON
|
... | ... | |
132 |
130 |
)
|
133 |
131 |
fi
|
134 |
132 |
|
|
133 |
if use tbb; then
|
|
134 |
mycmakeargs+=( -D3RDPARTY_TBB_DIR="${ESYSROOT}"/usr )
|
|
135 |
fi
|
|
136 |
|
135 |
137 |
if use vtk; then
|
136 |
138 |
local vtk_ver=$(best_version "sci-libs/vtk")
|
137 |
139 |
vtk_ver=${vtk_ver#sci-libs/vtk-}
|