]> git.saurik.com Git - wxWidgets.git/blame - wxGTK.spec
Fix for probably rare but potential refcount leak.
[wxWidgets.git] / wxGTK.spec
CommitLineData
e5ea3f7a 1%define pref /usr
c4839ccf 2%define ver 2.5.2
c31752da 3%define ver2 2.5
acea2a0b 4%define rel 1
e5ea3f7a 5
4eba1840
VS
6# Configurable settings (use --with(out) {unicode,gtk2} on rpmbuild cmd line):
7%define unicode 0
8%{?_with_unicode: %{expand: %%define unicode 1}}
9%{?_without_unicode: %{expand: %%define unicode 0}}
10
11%define gtk2 0
12%{?_with_gtk2: %{expand: %%define gtk2 1}}
13%{?_without_gtk2: %{expand: %%define gtk2 0}}
14
15%if %{gtk2}
16%define gtkver 2
17%define portname gtk2
18%else
19%define gtkver 1.2
20%define portname gtk
21%endif
22
23%if %{unicode}
24%define name wx-%{portname}-unicode
25%define wxbasename wx-base-unicode
26%else
27%define name wx-%{portname}
28%define wxbasename wx-base
29%endif
30
31%if %{unicode}
32%define wxconfigname wx%{portname}u-%{ver2}-config
33%else
34%define wxconfigname wx%{portname}-%{ver2}-config
35%endif
36
37Name: %{name}
38Summary: The GTK+ %{gtkver} port of the wxWindows library
e5ea3f7a
RR
39Version: %{ver}
40Release: %{rel}
4eba1840 41License: wxWindows Licence
f14a5b55 42Group: X11/Libraries
b5fa0a3e
VZ
43Source: wxGTK-%{ver}.tar.bz2
44URL: http://www.wxwindows.org
31fe72b6
VZ
45Packager: Vadim Zeitlin <vadim@wxwindows.org>
46Prefix: %{pref}
47BuildRoot: /var/tmp/%{name}-root
f14a5b55 48
212d0bb3
VZ
49# all packages providing an implementation of wxWindows library (regardless of
50# the toolkit used) should provide the (virtual) wxwin package, this makes it
6e711d5c 51# possible to require wxwin instead of requiring "wxgtk or wxmotif or wxuniv..."
212d0bb3 52Provides: wxwin
4eba1840 53Provides: wxGTK
212d0bb3 54
31fe72b6
VZ
55# in addition, we should provide libwx_gtk as automatic generator only notices
56# libwx_gtk-%{ver}-%{rel}
57Provides: libwx_gtk.so
8c8fb2f6 58Provides: libwx_gtk-%{ver2}.so
31fe72b6 59
4eba1840 60Requires: %{wxbasename} = %{ver}
4eba1840 61
f14a5b55 62%description
212d0bb3
VZ
63wxWindows is a free C++ library for cross-platform GUI development.
64With wxWindows, you can create applications for different GUIs (GTK+,
65Motif/LessTif, MS Windows, Mac) from the same source code.
f14a5b55 66
641d87d8 67%package devel
4eba1840 68Summary: The GTK+ %{gtkver} port of the wxWindows library
641d87d8 69Group: X11/Libraries
4eba1840
VS
70Requires: %{name} = %{ver}
71Requires: %{wxbasename}-devel = %{ver}
72Provides: wxGTK-devel
641d87d8
RR
73
74%description devel
4eba1840 75Header files for wxGTK, the GTK+ %{gtkver} port of the wxWindows library.
c661ecca
RR
76
77%package gl
4eba1840 78Summary: The GTK+ %{gtkver} port of the wxWindows library, OpenGL add-on.
c661ecca 79Group: X11/Libraries
4eba1840 80Requires: %{name} = %{ver}
c661ecca
RR
81
82%description gl
4eba1840 83OpenGL add-on library for wxGTK, the GTK+ %{gtkver} port of the wxWindows library.
5dcf9614
VS
84
85%package static
86Summary: wxGTK static libraries
87Group: Development/Libraries
4eba1840 88Requires: %{wxbasename}-static
5dcf9614
VS
89
90%description static
91Static libraries for wxGTK. You need them if you want to link statically against wxGTK.
641d87d8 92
4eba1840
VS
93%package contrib
94Summary: The GTK+ %{gtkver} port of the wxWindows library, contributed libraries.
95Group: X11/Libraries
96Requires: %{name} = %{ver}
97
98%description contrib
99Contributed libraries for wxGTK, the GTK+ %{gtkver} port of the wxWindows library.
100
101%package contrib-devel
102Summary: The GTK+ %{gtkver} port of the wxWindows library
103Group: X11/Libraries
104Requires: %{name}-contrib = %{ver}
105Requires: %{name}-devel = %{ver}
106
107%description contrib-devel
108Header files for contributed libraries for wxGTK, the GTK+ %{gtkver} port of the wxWindows library.
109
f14a5b55 110%prep
4eba1840 111%setup -q -n wxGTK-%{ver}
f14a5b55
RR
112
113%build
103aab26
RR
114if [ "$SMP" != "" ]; then
115 export MAKE="make -j$SMP"
116else
117 export MAKE="make"
118fi
5dcf9614 119
5dcf9614
VS
120mkdir obj-shared
121cd obj-shared
4eba1840
VS
122../configure --prefix=%{pref} \
123%if %{unicode}
124 --enable-unicode \
125%else
126 --with-odbc \
127%endif
128%if %{gtk2}
129 --enable-gtk2 \
130%endif
131 --with-opengl
5dcf9614 132$MAKE
4eba1840
VS
133cd contrib/src
134$MAKE
135cd ../../..
5dcf9614
VS
136
137mkdir obj-static
138cd obj-static
4eba1840
VS
139../configure --prefix=%{pref} --disable-shared \
140%if %{unicode}
141 --enable-unicode \
142%else
143 --with-odbc \
144%endif
145%if %{gtk2}
146 --enable-gtk2 \
147%endif
148 --with-opengl
103aab26 149$MAKE
5dcf9614 150cd ..
f14a5b55
RR
151
152%install
31fe72b6 153rm -rf $RPM_BUILD_ROOT
5dcf9614
VS
154(cd obj-static; make prefix=$RPM_BUILD_ROOT%{pref} install)
155(cd obj-shared; make prefix=$RPM_BUILD_ROOT%{pref} install)
f14a5b55 156
4eba1840 157# Remove headers that are part of wx-base-devel:
d10382ab
VS
158
159# --- wxBase headers list begins here ---
160cat <<EOF >wxbase-headers-list
161wx/afterstd.h
162wx/app.h
163wx/apptrait.h
164wx/arrimpl.cpp
165wx/arrstr.h
166wx/beforestd.h
167wx/buffer.h
168wx/build.h
169wx/chkconf.h
82b0b7f6 170wx/clntdata.h
d10382ab
VS
171wx/cmdline.h
172wx/confbase.h
173wx/config.h
174wx/containr.h
175wx/datetime.h
176wx/datetime.inl
177wx/datstrm.h
178wx/dde.h
179wx/debug.h
180wx/defs.h
181wx/dir.h
20b35a69 182wx/dlimpexp.h
d10382ab
VS
183wx/dynarray.h
184wx/dynlib.h
185wx/dynload.h
186wx/encconv.h
187wx/event.h
671a85ea 188wx/except.h
d10382ab
VS
189wx/features.h
190wx/ffile.h
191wx/file.h
192wx/fileconf.h
193wx/filefn.h
194wx/filename.h
195wx/filesys.h
196wx/fontenc.h
197wx/fontmap.h
198wx/fs_mem.h
199wx/fs_zip.h
200wx/hash.h
201wx/hashmap.h
202wx/hashset.h
203wx/iconloc.h
204wx/init.h
205wx/intl.h
206wx/iosfwrap.h
207wx/ioswrap.h
208wx/ipc.h
209wx/ipcbase.h
210wx/isql.h
211wx/isqlext.h
212wx/list.h
213wx/listimpl.cpp
214wx/log.h
215wx/longlong.h
216wx/math.h
217wx/memconf.h
218wx/memory.h
219wx/memtext.h
220wx/mimetype.h
221wx/module.h
222wx/msgout.h
223wx/msgout.h
224wx/mstream.h
225wx/object.h
226wx/platform.h
227wx/process.h
228wx/ptr_scpd.h
229wx/regex.h
230wx/scopeguard.h
231wx/snglinst.h
c33fae85 232wx/sstream.h
b71531ad 233wx/stack.h
ef335a4f 234wx/stockitem.h
d10382ab
VS
235wx/stopwatch.h
236wx/strconv.h
237wx/stream.h
238wx/string.h
239wx/sysopt.h
240wx/textbuf.h
241wx/textfile.h
242wx/thread.h
243wx/thrimpl.cpp
244wx/timer.h
245wx/tokenzr.h
246wx/txtstrm.h
247wx/types.h
248wx/utils.h
249wx/variant.h
250wx/vector.h
251wx/version.h
252wx/volume.h
253wx/wfstream.h
254wx/wx.h
255wx/wxchar.h
256wx/wxprec.h
257wx/xti.h
258wx/xtistrm.h
259wx/zipstrm.h
260wx/zstream.h
261wx/msw/apptrait.h
262wx/msw/apptbase.h
263wx/msw/chkconf.h
264wx/msw/crashrpt.h
265wx/msw/dde.h
266wx/msw/gccpriv.h
267wx/msw/mimetype.h
268wx/msw/winundef.h
269wx/msw/wrapcctl.h
270wx/msw/wrapwin.h
271wx/fs_inet.h
272wx/gsocket.h
273wx/protocol/file.h
274wx/protocol/ftp.h
275wx/protocol/http.h
276wx/protocol/protocol.h
277wx/sckaddr.h
278wx/sckipc.h
279wx/sckstrm.h
280wx/socket.h
281wx/url.h
282wx/msw/gsockmsw.h
283wx/xml/xml.h
284wx/xtixml.h
285wx/db.h
286wx/dbkeyg.h
287wx/dbtable.h
288EOF
289# --- wxBase headers list ends here ---
290for f in `cat wxbase-headers-list` ; do
68b47b2f 291 rm -f $RPM_BUILD_ROOT%{_includedir}/wx-*/$f
4eba1840 292done
4eba1840
VS
293
294# list of all core headers:
295find $RPM_BUILD_ROOT/usr/include/wx -type f | sed -e "s,$RPM_BUILD_ROOT,,g" >core-headers.files
296
297# contrib stuff:
298(cd obj-shared/contrib/src; make prefix=$RPM_BUILD_ROOT%{pref} install)
299(cd obj-shared/contrib/utils/wxrc; make prefix=$RPM_BUILD_ROOT%{pref} install)
acea2a0b 300
88e3652f
VS
301# remove wxBase files so that RPM doesn't complain about unpackaged files:
302rm -f $RPM_BUILD_ROOT%{_libdir}/libwx_base*
303rm -f $RPM_BUILD_ROOT%{_datadir}/aclocal/*
304rm -f $RPM_BUILD_ROOT%{_datadir}/locale/*/*/*
305
c16d2763
VS
306%clean
307rm -rf $RPM_BUILD_ROOT
308
f14a5b55
RR
309%post
310/sbin/ldconfig
311
312%postun
313/sbin/ldconfig
314
81edbb3f
VS
315%post gl
316/sbin/ldconfig
317
318%postun gl
319/sbin/ldconfig
320
81edbb3f 321
4eba1840 322%files
81edbb3f
VS
323%defattr(-,root,root)
324%doc COPYING.LIB *.txt
325%dir %{_datadir}/wx
326%{_datadir}/wx/*
4eba1840
VS
327%{_libdir}/libwx_%{portname}*_core*.so.*
328%{_libdir}/libwx_%{portname}*_html*.so.*
329%{_libdir}/libwx_%{portname}*_adv*.so.*
330%if !%{unicode}
331%{_libdir}/libwx_%{portname}*_dbgrid*.so.*
332%endif
641d87d8 333
4eba1840 334%files devel -f core-headers.files
0f7deca9 335%defattr(-,root,root)
4eba1840
VS
336%{_libdir}/libwx_%{portname}*_core*.so
337%{_libdir}/libwx_%{portname}*_html*.so
338%{_libdir}/libwx_%{portname}*_adv*.so
339%if !%{unicode}
340%{_libdir}/libwx_%{portname}*_dbgrid*.so
341%endif
342%{_libdir}/libwx_%{portname}*_gl*.so
81edbb3f
VS
343%dir %{_libdir}/wx
344%{_libdir}/wx/*
4eba1840 345%{_bindir}/%{wxconfigname}
2a29700e 346
c661ecca 347%files gl
81edbb3f 348%defattr(-,root,root)
4eba1840 349%{_libdir}/libwx_%{portname}*_gl*.so.*
0f7deca9 350
5dcf9614
VS
351%files static
352%defattr (-,root,root)
4eba1840
VS
353%{_libdir}/libwx_gtk*.a
354
355%files contrib
356%defattr(-,root,root)
357%{_libdir}/libwx_%{portname}*_animate*.so.*
358%{_libdir}/libwx_%{portname}*_deprecated*.so.*
359%{_libdir}/libwx_%{portname}*_fl*.so.*
360%{_libdir}/libwx_%{portname}*_gizmos*.so.*
361%{_libdir}/libwx_%{portname}*_mmedia*.so.*
4eba1840 362%{_libdir}/libwx_%{portname}*_ogl*.so.*
4eba1840
VS
363%{_libdir}/libwx_%{portname}*_plot*.so.*
364%{_libdir}/libwx_%{portname}*_stc*.so.*
365%{_libdir}/libwx_%{portname}*_svg*.so.*
366%{_libdir}/libwx_%{portname}*_xrc*.so.*
367
368%files contrib-devel
369%defattr(-,root,root)
370%{_bindir}/wxrc
68b47b2f
VS
371%dir %{_includedir}/wx-*/wx/animate
372%{_includedir}/wx-*/wx/animate/*
4eba1840
VS
373%{_libdir}/libwx_%{portname}*_animate*.so
374
68b47b2f
VS
375%dir %{_includedir}/wx-*/wx/deprecated
376%{_includedir}/wx-*/wx/deprecated/*
4eba1840
VS
377%{_libdir}/libwx_%{portname}*_deprecated*.so
378
68b47b2f
VS
379%dir %{_includedir}/wx-*/wx/fl
380%{_includedir}/wx-*/wx/fl/*
4eba1840
VS
381%{_libdir}/libwx_%{portname}*_fl*.so
382
68b47b2f
VS
383%dir %{_includedir}/wx-*/wx/gizmos
384%{_includedir}/wx-*/wx/gizmos/*
4eba1840
VS
385%{_libdir}/libwx_%{portname}*_gizmos*.so
386
68b47b2f
VS
387%dir %{_includedir}/wx-*/wx/mmedia
388%{_includedir}/wx-*/wx/mmedia/*
4eba1840
VS
389%{_libdir}/libwx_%{portname}*_mmedia*.so
390
68b47b2f
VS
391%dir %{_includedir}/wx-*/wx/ogl
392%{_includedir}/wx-*/wx/ogl/*
4eba1840 393%{_libdir}/libwx_%{portname}*_ogl*.so
4eba1840 394
68b47b2f
VS
395%dir %{_includedir}/wx-*/wx/plot
396%{_includedir}/wx-*/wx/plot/*
4eba1840
VS
397%{_libdir}/libwx_%{portname}*_plot*.so
398
68b47b2f
VS
399%dir %{_includedir}/wx-*/wx/stc
400%{_includedir}/wx-*/wx/stc/*
4eba1840
VS
401%{_libdir}/libwx_%{portname}*_stc*.so
402
68b47b2f
VS
403%dir %{_includedir}/wx-*/wx/svg
404%{_includedir}/wx-*/wx/svg/*
4eba1840
VS
405%{_libdir}/libwx_%{portname}*_svg*.so
406
68b47b2f
VS
407%dir %{_includedir}/wx-*/wx/xrc
408%{_includedir}/wx-*/wx/xrc/*
4eba1840 409%{_libdir}/libwx_%{portname}*_xrc*.so