]> git.pld-linux.org Git - packages/OpenCASCADE.git/blob - OpenCASCADE.spec
- rel 43; fix tcl/tk 8.6 build
[packages/OpenCASCADE.git] / OpenCASCADE.spec
1 #
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.
10
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
15
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
24
25 Summary:        OpenCASCADE CAE platform
26 Name:           OpenCASCADE
27 # The 6.3.1 is a maintenance release, only available for OCC customers
28 Version:        6.3.0
29 Release:        43
30 License:        LGPL-like, see http://www.opencascade.org/occ/license/
31 Group:          Applications/Engineering
32 Source0:        http://files.opencascade.com/OCC_6.3_release/%{name}_src.tgz
33 # Source0-md5:  52778127974cb3141c2827f9d40d1f11
34 Patch0:         %{name}6.3.0-obs-check.patch
35 Patch1:         %{name}6.3.0-strcmp.patch
36 Patch2:         %{name}6.3.0-occ6.3.0.patch
37 Patch3:         %{name}6.3.0-casroot.patch
38 Patch4:         wokstep_extract.patch
39 Patch5:         %{name}6.3.0-tkernel-ld.patch
40 Patch6:         %{name}6.3.0-mft-disable-mmap.patch
41 Patch7:         %{name}6.3.0-no-bitmaps-icon.patch
42 Patch8:         %{name}6.3.0-DESTDIR.patch
43 Patch9:         %{name}6.3.0-maint-mode.patch
44 Patch10:        %{name}6.3.0-dep-libs.patch
45 Patch11:        %{name}6.3.0-move-vrml-vis.patch
46 Patch12:        %{name}6.3.0-make-wok-libs-private.patch
47 Patch13:        %{name}6.3.0-make-draw-libs-private.patch
48 Patch14:        %{name}6.3.0-wok-install.patch
49 Patch15:        %{name}6.3.0-udlist.patch
50 Patch16:        %{name}6.3.0-WOKUnix_FDescr.patch
51 Patch17:        fix-tklcaf.patch
52 Patch18:        %{name}-build.patch
53 URL:            http://www.opencascade.org/
54 BuildRequires:  autoconf
55 BuildRequires:  automake
56 BuildRequires:  bison
57 BuildRequires:  flex
58 %ifnarch i486
59 BuildRequires:  jdk
60 %endif
61 BuildRequires:  libstdc++-devel
62 BuildRequires:  libtool
63 BuildRequires:  Mesa-libGLU-devel
64 BuildRequires:  tk-devel
65 BuildRequires:  xorg-lib-libX11-devel
66 BuildRequires:  xorg-lib-libXmu-devel
67 BuildRequires:  xorg-proto-xproto-devel
68 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
69
70 %description
71 OpenCASCADE is a suite for 3D surface and solid modeling, visualization, data
72 exchange and rapid application development.  It is an excellent platform for
73 development of numerical simulation software including CAD/CAM/CAE, AEC and
74 GIS, as well as PDM applications.
75
76 %package libs
77 Summary:        OpenCASCADE shared libraries
78 Group:          Libraries
79
80 %description libs
81 OpenCASCADE shared libraries.
82
83 %package devel
84 Summary:        OpenCASCADE development files
85 Group:          Development/Libraries
86 Requires:       %{name}-libs = %{version}-%{release}
87
88 %description devel
89 OpenCASCADE development files.
90
91 %package doc
92 Summary:        OpenCASCADE documentation
93 Group:          Documentation
94
95 %description doc
96 OpenCASCADE help and html documentation.
97
98 %package samples
99 Summary:        OpenCASCADE samples
100 Group:          Documentation
101
102 %description samples
103 OpenCASCADE samples.
104
105 %prep
106 %setup -q -n %{name}%{version}
107 %patch0 -p1
108 %patch1 -p1
109 %patch2 -p1
110 %patch3 -p1
111 %patch4 -p1
112 %patch5 -p1
113 %patch6 -p1
114 %patch7 -p1
115 %patch8 -p1
116 %patch9 -p1
117 %patch10 -p1
118 %patch11 -p1
119 %patch12 -p1
120 %patch13 -p1
121 %patch14 -p1
122 %patch15 -p1
123 %patch16 -p1
124 %patch17 -p1
125 %patch18 -p1
126 cd ros/src/ExprIntrp
127 bison -d -p ExprIntrp -o ExprIntrp.tab.c ExprIntrp.yacc
128 flex -L -8 -Cf -Cr -P ExprIntrp -o lex.ExprIntrp.c ExprIntrp.lex
129 mv ExprIntrp.tab.h ../../inc/
130 cp ExprIntrp.tab.c lex.ExprIntrp.c ../../drv/ExprIntrp/
131
132 %build
133 cd ros
134 %{__libtoolize}
135 %{__aclocal}
136 %{__autoconf}
137 %{__autoheader}
138 %{__automake}
139
140 %ifarch x86_64 ppc64
141 export CFLAGS="%{rpmcflags} -D_OCC64 -fno-strict-aliasing -DUSE_INTERP_RESULT"
142 export CXXFLAGS="%{rpmcflags} -D_OCC64 -fno-strict-aliasing -DUSE_INTERP_RESULT"
143 %else
144 export CFLAGS="%{rpmcflags} -fno-strict-aliasing -DUSE_INTERP_RESULT"
145 export CXXFLAGS="%{rpmcflags} -fno-strict-aliasing -DUSE_INTERP_RESULT"
146 %endif
147 LDFLAGS=-lpthread %configure \
148         %{?debug:--disable-production  --enable-debug} \
149         %{!?debug:--enable-production --disable-debug} \
150         --with-java-include="%{java_home}"/include
151
152 %{__make}
153
154 %install
155 rm -rf $RPM_BUILD_ROOT
156 install -d $RPM_BUILD_ROOT{%{_datadir}/%{name},%{_includedir}}
157
158 cd ros
159 %{__make} install \
160         DESTDIR=$RPM_BUILD_ROOT
161 cd ..
162
163 cp -a data $RPM_BUILD_ROOT%{_datadir}/%{name}
164 mv $RPM_BUILD_ROOT{%{_prefix}/{src,wok,config.h,env_DRAW.sh},%{_datadir}/%{name}}
165 mv $RPM_BUILD_ROOT{%{_prefix}/inc,%{_includedir}/%{name}}
166 rm -r $RPM_BUILD_ROOT%{_prefix}/{Linux,lin}
167
168 mkdir -p $RPM_BUILD_ROOT/usr/src
169 for i in doc samples; do
170 mkdir -p $i-i
171 [ -d $i ] && mv $i $i-i/%{name}-%{version} || :
172 done
173 ln -s %{_builddir}/%{name}%{version}/doc-i   $RPM_BUILD_ROOT%{_defaultdocdir}
174 ln -s %{_builddir}/%{name}%{version}/samples-i $RPM_BUILD_ROOT%{_examplesdir}
175
176 %{__rm} $RPM_BUILD_ROOT%{_libdir}{/opencas,}/*.la
177
178 %post   libs -p /sbin/ldconfig
179 %postun libs -p /sbin/ldconfig
180
181 %clean
182 rm -rf $RPM_BUILD_ROOT
183
184 %files
185 %defattr(644,root,root,755)
186 %attr(755,root,root) %{_bindir}/DRAWEXE
187 %attr(755,root,root) %{_bindir}/wok*
188 %dir %{_datadir}/%{name}
189 %{_datadir}/%{name}/config.h
190 %{_datadir}/%{name}/data
191 %attr(755,root,root) %{_datadir}/%{name}/env_DRAW.sh
192 %dir %{_datadir}/%{name}/src
193 %dir %{_datadir}/%{name}/src/UnitsAPI
194 %{_datadir}/%{name}/src/UnitsAPI/*.dat
195 %{_datadir}/%{name}/wok
196 %attr(755,root,root) %{_libdir}/opencas/*.so.*.*.*
197 %attr(755,root,root) %ghost %{_libdir}/opencas/*.so.0
198
199 %files libs
200 %defattr(644,root,root,755)
201 %doc LICENSE ros/README.txt
202 %attr(755,root,root) %{_libdir}/*.so.*.*.*
203 %attr(755,root,root) %ghost %{_libdir}/*.so.0
204 %dir %{_libdir}/opencas
205
206 %files devel
207 %defattr(644,root,root,755)
208 %{_includedir}/%{name}
209 %attr(755,root,root) %{_libdir}/opencas/*.so
210 %attr(755,root,root) %{_libdir}/*.so
211 %{_datadir}/%{name}/src/*
212 %exclude %{_datadir}/%{name}/src/UnitsAPI/*.dat
213
214 %files doc
215 %defattr(644,root,root,755)
216 %{_docdir}/%{name}-%{version}
217
218 %files samples
219 %defattr(644,root,root,755)
220 %{_examplesdir}/%{name}-%{version}
This page took 0.066008 seconds and 3 git commands to generate.