2 # All modifications and additions to the file contributed by third parties
3 # remain the property of their copyright owners, unless otherwise agreed
4 # upon. The license for this file, and modifications and additions to the
5 # file, is the same license as for the pristine package itself (unless the
6 # license for the pristine package is not an Open Source License, in which
7 # case the license is the MIT License). An "Open Source License" is a
8 # license that conforms to the Open Source Definition (Version 1.9)
9 # published by the Open Source Initiative.
11 # NOTE: there are some not PLD-relevant patches available:
12 # - kFreeBSD/Hurd: http://git.debian.org/?p=debian-science/packages/opencascade.git;a=blob;f=debian/patches/fix-osd_path.patch
13 # - MIPS: http://git.debian.org/?p=debian-science/packages/opencascade.git;a=blob;f=debian/patches/fix-asm.patch
14 # - PPC: http://git.debian.org/?p=debian-science/packages/opencascade.git;a=blob;f=debian/patches/ppc.patch
16 # TODO: - separate libs-x (80% of libraries) or even split packages as suggested by Jason Kraftcheck in Debian
17 # - check if WOK is working (review wok-install patch), add OCC icons and draw.desktop
18 # - consider arch-independent includes: http://git.debian.org/?p=debian-science/packages/opencascade.git;a=blob;f=debian/patches/OCC64.patch
19 # http://git.debian.org/?p=debian-science/packages/opencascade.git;a=blob;f=debian/patches/drop-config-h.patch
20 # http://git.debian.org/?p=debian-science/packages/opencascade.git;a=blob;f=debian/patches/multibuf.patch
21 # and http://git.debian.org/?p=debian-science/packages/opencascade.git;a=blob;f=debian/patches/tcl-cleanup.patch
22 # - TCL 8.6: http://git.debian.org/?p=debian-science/packages/opencascade.git;a=history;f=debian/patches/fix-tcl8.6.patch
23 # - review maint-mode, tkernel-ld and dep-libs patches, as well as hardcoded path in casroot patch
25 Summary: OpenCASCADE CAE platform
26 Summary(pl.UTF-8): Platforma CAE OpenCASCADE
28 # The 6.3.1 is a maintenance release, only available for OCC customers
31 License: LGPL-like, see http://www.opencascade.org/occ/license/
32 Group: Applications/Engineering
33 #Source0Download: https://old.opencascade.com/content/latest-release
34 Source0: http://files.opencascade.com/OCC_6.3_release/%{name}_src.tgz
35 # Source0-md5: 52778127974cb3141c2827f9d40d1f11
36 Patch0: %{name}6.3.0-obs-check.patch
37 Patch1: %{name}6.3.0-strcmp.patch
38 Patch2: %{name}6.3.0-occ6.3.0.patch
39 Patch3: %{name}6.3.0-casroot.patch
40 Patch4: wokstep_extract.patch
41 Patch5: %{name}6.3.0-tkernel-ld.patch
42 Patch6: %{name}6.3.0-mft-disable-mmap.patch
43 Patch7: %{name}6.3.0-no-bitmaps-icon.patch
44 Patch8: %{name}6.3.0-DESTDIR.patch
45 Patch9: %{name}6.3.0-maint-mode.patch
46 Patch10: %{name}6.3.0-dep-libs.patch
47 Patch11: %{name}6.3.0-move-vrml-vis.patch
48 Patch12: %{name}6.3.0-make-wok-libs-private.patch
49 Patch13: %{name}6.3.0-make-draw-libs-private.patch
50 Patch14: %{name}6.3.0-wok-install.patch
51 Patch15: %{name}6.3.0-udlist.patch
52 Patch16: %{name}6.3.0-WOKUnix_FDescr.patch
53 Patch17: fix-tklcaf.patch
54 Patch18: %{name}-build.patch
55 URL: https://www.opencascade.com/open-cascade-technology/
56 BuildRequires: OpenGL-GLU-devel
57 BuildRequires: autoconf
58 BuildRequires: automake
64 BuildRequires: libstdc++-devel
65 BuildRequires: libtool
66 BuildRequires: rpmbuild(macros) >= 1.752
67 BuildRequires: tk-devel
68 BuildRequires: xorg-lib-libX11-devel
69 BuildRequires: xorg-lib-libXmu-devel
70 BuildRequires: xorg-proto-xproto-devel
71 Requires: %{name}-libs = %{version}-%{release}
72 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
75 OpenCASCADE is a suite for 3D surface and solid modeling,
76 visualization, data exchange and rapid application development. It is
77 an excellent platform for development of numerical simulation software
78 including CAD/CAM/CAE, AEC and GIS, as well as PDM applications.
80 %description -l pl.UTF-8
81 OpenCASCADE to szkielet do modelowania powierzchni i brył 3D wraz z
82 wizualizacją, wymianą danych i wsparciem szybkiego tworzenia
83 aplikacji. Jest to świetna platforma do rozwoju oprogramowania
84 symulacji numerycznych, w tym CAD/CAM/CAE, AEC oraz GIS, a także
88 Summary: OpenCASCADE shared libraries
89 Summary(pl.UTF-8): Biblioteki współdzielone OpenCASCADE
93 OpenCASCADE shared libraries.
95 %description libs -l pl.UTF-8
96 Biblioteki współdzielone OpenCASCADE.
99 Summary: OpenCASCADE development files
100 Summary(pl.UTF-8): Pliki programistyczne OpenCASCADE
101 Group: Development/Libraries
102 Requires: %{name}-libs = %{version}-%{release}
105 OpenCASCADE development files.
107 %description devel -l pl.UTF-8
108 Pliki programistyczne OpenCASCADE.
111 Summary: OpenCASCADE documentation
112 Summary(pl.UTF-8): Dokumentacja do OpenCASCADE
117 OpenCASCADE help and HTML documentation.
119 %description doc -l pl.UTF-8
120 Pomoc oraz dokumentacja w formacie HTML do OpenCASCADE.
123 Summary: OpenCASCADE samples
124 Summary(pl.UTF-8): Przykłady do OpenCASCADE
131 %description samples -l pl.UTF-8
132 Przykłady do OpenCASCADE.
135 %setup -q -n %{name}%{version}
156 bison -d -p ExprIntrp -o ExprIntrp.tab.c ExprIntrp.yacc
157 flex -L -8 -Cf -Cr -P ExprIntrp -o lex.ExprIntrp.c ExprIntrp.lex
158 %{__mv} ExprIntrp.tab.h ../../inc/
159 cp ExprIntrp.tab.c lex.ExprIntrp.c ../../drv/ExprIntrp/
170 export CFLAGS="%{rpmcflags} -D_OCC64 -fno-strict-aliasing -DUSE_INTERP_RESULT"
171 export CXXFLAGS="%{rpmcflags} -D_OCC64 -fno-strict-aliasing -DUSE_INTERP_RESULT"
173 export CFLAGS="%{rpmcflags} -fno-strict-aliasing -DUSE_INTERP_RESULT"
174 export CXXFLAGS="%{rpmcflags} -fno-strict-aliasing -DUSE_INTERP_RESULT"
178 %{?debug:--disable-production --enable-debug} \
179 %{!?debug:--enable-production --disable-debug} \
180 --with-java-include="%{java_home}"/include
185 rm -rf $RPM_BUILD_ROOT
186 install -d $RPM_BUILD_ROOT{%{_datadir}/%{name},%{_includedir}}
188 %{__make} -C ros install \
189 DESTDIR=$RPM_BUILD_ROOT
191 cp -a data $RPM_BUILD_ROOT%{_datadir}/%{name}
192 %{__mv} $RPM_BUILD_ROOT{%{_prefix}/{src,wok,config.h,env_DRAW.sh},%{_datadir}/%{name}}
193 %{__mv} $RPM_BUILD_ROOT{%{_prefix}/inc,%{_includedir}/%{name}}
194 %{__rm} -r $RPM_BUILD_ROOT%{_prefix}/{Linux,lin}
196 install -d $RPM_BUILD_ROOT/usr/src
197 for i in doc samples; do
199 [ -d $i ] && %{__mv} $i ${i}-i/%{name}-%{version} || :
201 ln -s %{_builddir}/%{name}%{version}/doc-i $RPM_BUILD_ROOT%{_defaultdocdir}
202 ln -s %{_builddir}/%{name}%{version}/samples-i $RPM_BUILD_ROOT%{_examplesdir}
204 %{__rm} $RPM_BUILD_ROOT%{_libdir}{/opencas,}/*.la
206 %post libs -p /sbin/ldconfig
207 %postun libs -p /sbin/ldconfig
210 rm -rf $RPM_BUILD_ROOT
213 %defattr(644,root,root,755)
214 %attr(755,root,root) %{_bindir}/DRAWEXE
215 %attr(755,root,root) %{_bindir}/wok*
216 %dir %{_datadir}/%{name}
217 %{_datadir}/%{name}/config.h
218 %{_datadir}/%{name}/data
219 %attr(755,root,root) %{_datadir}/%{name}/env_DRAW.sh
220 %dir %{_datadir}/%{name}/src
221 %dir %{_datadir}/%{name}/src/UnitsAPI
222 %{_datadir}/%{name}/src/UnitsAPI/*.dat
223 %{_datadir}/%{name}/wok
224 %attr(755,root,root) %{_libdir}/opencas/*.so.*.*.*
225 %attr(755,root,root) %ghost %{_libdir}/opencas/*.so.0
228 %defattr(644,root,root,755)
229 %doc LICENSE ros/README.txt
230 %attr(755,root,root) %{_libdir}/*.so.*.*.*
231 %attr(755,root,root) %ghost %{_libdir}/*.so.0
232 %dir %{_libdir}/opencas
235 %defattr(644,root,root,755)
236 %{_includedir}/%{name}
237 %attr(755,root,root) %{_libdir}/opencas/*.so
238 %attr(755,root,root) %{_libdir}/*.so
239 %{_datadir}/%{name}/src/*
240 %exclude %{_datadir}/%{name}/src/UnitsAPI/*.dat
243 %defattr(644,root,root,755)
244 %{_docdir}/%{name}-%{version}
247 %defattr(644,root,root,755)
248 %{_examplesdir}/%{name}-%{version}