remove wxBase files to get rid of RPM's complains about unpackaged files
[wxWidgets.git] / wxMotif.spec
1 # RPM .spec file for wxMotif. Based on the .spec file for wxGTK
2 # (c) by Robert Roebling. Modifications (c) 2000/03 by Robert Fendt.
3
4 # Note that this is NOT a relocatable package
5 %define pref /usr
6 %define ver 2.5.1
7 %define ver2 2.5
8 %define rel 1
9
10 %define portname motif
11 %define name wx-%{portname}
12 %define wxbasename wx-base
13 %define wxconfigname wx%{portname}-%{ver2}-config
14
15 Summary: The Motif/Lesstif port of the wxWindows library
16 Name: %{name}
17 Version: %{ver}
18 Release: %{rel}
19 License: wxWindows Licence
20 Group: X11/Libraries
21 Source: wxMOTIF-%{ver}.tar.bz2
22 URL: http://www.wxwindows.org
23 Packager: Robert Fendt <rfendt@myokay.net>
24 BuildRoot: /tmp/wxmotif_root
25
26 # all packages providing an implementation of wxWindows library (regardless of
27 # the toolkit used) should provide the (virtual) wxwin package, this makes it
28 # possible to require wxwin instead of requiring "wxgtk or wxmotif or wxuniv..."
29 Provides: wxwin
30
31 Provides: wxMotif
32
33 Requires: %{wxbasename} = %{ver}
34
35 %description
36 wxWindows is a free C++ library for cross-platform GUI development.
37 With wxWindows, you can create applications for different GUIs (GTK+,
38 Motif/LessTif, MS Windows, Mac) from the same source code.
39
40 %package devel
41 Summary: The Motif/Lesstif port of the wxWindows library
42 Group: X11/Libraries
43 Requires: %{name} = %{ver}
44 Requires: %{wxbasename}-devel = %{ver}
45
46 %description devel
47 Header files for wxMotif, the Motif/Lesstif port of the wxWindows library.
48
49 %package gl
50 Summary: The Motif/Lesstif port of the wxWindows library, OpenGL add-on.
51 Group: X11/Libraries
52 Requires: %{name} = %{ver}
53
54 %description gl
55 OpenGL add-on library for wxMotif, the Motif/Lesstif port of the wxWindows library.
56
57 %package static
58 Summary: wxMotif static libraries
59 Group: Development/Libraries
60
61 %description static
62 Static libraries for wxMotif. You need them if you want to link statically against wxMotif.
63
64 %prep
65 %setup -q -n wxMOTIF-%{ver}
66
67 %build
68 if [ "$SMP" != "" ]; then
69 export MAKE="make -j$SMP"
70 else
71 export MAKE="make"
72 fi
73
74 mkdir obj-shared
75 cd obj-shared
76 ../configure --prefix=%{pref} --with-odbc --with-opengl --with-motif
77 $MAKE
78 cd ..
79
80 mkdir obj-static
81 cd obj-static
82 ../configure --prefix=%{pref} --disable-shared --with-odbc --with-opengl --with-motif
83 $MAKE
84 cd ..
85
86 %install
87 rm -rf $RPM_BUILD_ROOT
88 (cd obj-static; make prefix=$RPM_BUILD_ROOT%{pref} install)
89 (cd obj-shared; make prefix=$RPM_BUILD_ROOT%{pref} install)
90
91 # Remove headers that are part of wx-base-devel:
92
93 # --- wxBase headers list begins here ---
94 cat <<EOF >wxbase-headers-list
95 wx/afterstd.h
96 wx/app.h
97 wx/apptrait.h
98 wx/arrimpl.cpp
99 wx/arrstr.h
100 wx/beforestd.h
101 wx/buffer.h
102 wx/build.h
103 wx/chkconf.h
104 wx/clntdata.h
105 wx/cmdline.h
106 wx/confbase.h
107 wx/config.h
108 wx/containr.h
109 wx/datetime.h
110 wx/datetime.inl
111 wx/datstrm.h
112 wx/dde.h
113 wx/debug.h
114 wx/defs.h
115 wx/dir.h
116 wx/dynarray.h
117 wx/dynlib.h
118 wx/dynload.h
119 wx/encconv.h
120 wx/event.h
121 wx/except.h
122 wx/features.h
123 wx/ffile.h
124 wx/file.h
125 wx/fileconf.h
126 wx/filefn.h
127 wx/filename.h
128 wx/filesys.h
129 wx/fontenc.h
130 wx/fontmap.h
131 wx/fs_mem.h
132 wx/fs_zip.h
133 wx/gzstream.h
134 wx/hash.h
135 wx/hashmap.h
136 wx/hashset.h
137 wx/iconloc.h
138 wx/init.h
139 wx/intl.h
140 wx/iosfwrap.h
141 wx/ioswrap.h
142 wx/ipc.h
143 wx/ipcbase.h
144 wx/isql.h
145 wx/isqlext.h
146 wx/list.h
147 wx/listimpl.cpp
148 wx/log.h
149 wx/longlong.h
150 wx/math.h
151 wx/memconf.h
152 wx/memory.h
153 wx/memtext.h
154 wx/mimetype.h
155 wx/module.h
156 wx/msgout.h
157 wx/msgout.h
158 wx/mstream.h
159 wx/object.h
160 wx/platform.h
161 wx/process.h
162 wx/ptr_scpd.h
163 wx/regex.h
164 wx/scopeguard.h
165 wx/snglinst.h
166 wx/stack.h
167 wx/stopwatch.h
168 wx/strconv.h
169 wx/stream.h
170 wx/string.h
171 wx/sysopt.h
172 wx/textbuf.h
173 wx/textfile.h
174 wx/thread.h
175 wx/thrimpl.cpp
176 wx/timer.h
177 wx/tokenzr.h
178 wx/txtstrm.h
179 wx/types.h
180 wx/utils.h
181 wx/variant.h
182 wx/vector.h
183 wx/version.h
184 wx/volume.h
185 wx/wfstream.h
186 wx/wx.h
187 wx/wxchar.h
188 wx/wxprec.h
189 wx/xti.h
190 wx/xtistrm.h
191 wx/zipstrm.h
192 wx/zstream.h
193 wx/msw/apptrait.h
194 wx/msw/apptbase.h
195 wx/msw/chkconf.h
196 wx/msw/crashrpt.h
197 wx/msw/dde.h
198 wx/msw/gccpriv.h
199 wx/msw/mimetype.h
200 wx/msw/winundef.h
201 wx/msw/wrapcctl.h
202 wx/msw/wrapwin.h
203 wx/fs_inet.h
204 wx/gsocket.h
205 wx/protocol/file.h
206 wx/protocol/ftp.h
207 wx/protocol/http.h
208 wx/protocol/protocol.h
209 wx/sckaddr.h
210 wx/sckipc.h
211 wx/sckstrm.h
212 wx/socket.h
213 wx/url.h
214 wx/msw/gsockmsw.h
215 wx/xml/xml.h
216 wx/xtixml.h
217 wx/db.h
218 wx/dbkeyg.h
219 wx/dbtable.h
220 EOF
221 # --- wxBase headers list ends here ---
222 for f in `cat wxbase-headers-list` ; do
223 rm -f $RPM_BUILD_ROOT%{_includedir}/$f
224 done
225
226 # list of all core headers:
227 find $RPM_BUILD_ROOT/usr/include/wx -type f | sed -e "s,$RPM_BUILD_ROOT,,g" >core-headers.files
228
229 # remove wxBase files so that RPM doesn't complain about unpackaged files:
230 rm -f $RPM_BUILD_ROOT%{_libdir}/libwx_base*
231 rm -f $RPM_BUILD_ROOT%{_datadir}/aclocal/*
232 rm -f $RPM_BUILD_ROOT%{_datadir}/locale/*/*/*
233
234
235 %clean
236 rm -rf $RPM_BUILD_ROOT
237
238 %post
239 /sbin/ldconfig
240
241 %postun
242 /sbin/ldconfig
243
244 %post gl
245 /sbin/ldconfig
246
247 %postun gl
248 /sbin/ldconfig
249
250 %post devel
251 # Install wx-config if there isn't any
252 if test ! -f %{_bindir}/wx-config ; then
253 ln -sf %{wxconfigname} %{_bindir}/wx-config
254 fi
255
256 %preun devel
257 # Remove wx-config if it points to this package
258 if test -f %{_bindir}/wx-config -a -f /usr/bin/md5sum ; then
259 SUM1=`md5sum %{_bindir}/%{wxconfigname} | cut -c 0-32`
260 SUM2=`md5sum %{_bindir}/wx-config | cut -c 0-32`
261 if test "x$SUM1" = "x$SUM2" ; then
262 rm -f %{_bindir}/wx-config
263 fi
264 fi
265
266
267 %files
268 %defattr(-,root,root)
269 %doc COPYING.LIB *.txt
270 %dir %{_datadir}/wx
271 %{_datadir}/wx/*
272 %{_libdir}/libwx_%{portname}*_core*.so.*
273 %{_libdir}/libwx_%{portname}*_html*.so.*
274 %{_libdir}/libwx_%{portname}*_adv*.so.*
275 %{_libdir}/libwx_%{portname}*_dbgrid*.so.*
276
277 %files devel -f core-headers.files
278 %defattr(-,root,root)
279 %{_libdir}/libwx_%{portname}*_core*.so
280 %{_libdir}/libwx_%{portname}*_html*.so
281 %{_libdir}/libwx_%{portname}*_adv*.so
282 %{_libdir}/libwx_%{portname}*_dbgrid*.so
283 %{_libdir}/libwx_%{portname}*_gl*.so
284 %dir %{_libdir}/wx
285 %{_libdir}/wx/*
286 %{_bindir}/%{wxconfigname}
287
288 %files gl
289 %defattr(-,root,root)
290 %{_libdir}/libwx_%{portname}*_gl*.so.*
291
292 %files static
293 %defattr (-,root,root)
294 %{_libdir}/libwx_%{portname}*.a