1%define pref /usr
2%define ver  2.8.12
3%define ver2 2.8
4%define rel  0
5
6# Configurable settings (use --with(out) unicode on rpmbuild command line):
7%define unicode 0
8%{?_with_unicode: %{expand: %%define unicode 1}}
9%{?_without_unicode: %{expand: %%define unicode 0}}
10
11%if %{unicode}
12    %define name         wx-base-unicode
13    %define wxconfig     base-unicode-release-%{ver2}
14    %define wxconfiglink wxbaseu-%{ver2}-config
15%else
16    %define name         wx-base
17    %define wxconfig     base-ansi-release-%{ver2}
18    %define wxconfiglink wxbase-%{ver2}-config
19%endif
20
21Summary: wxBase library - non-GUI support classes of wxWidgets toolkit
22Name: %{name}
23Version: %{ver}
24Release: %{rel}
25License: wxWindows Licence
26Group: Development/Libraries
27Source: wxBase-%{ver}.tar.bz2
28URL: http://www.wxwidgets.org
29Packager: Vadim Zeitlin <vadim@wxwindows.org>
30Prefix: %{pref}
31BuildRoot: %{_tmppath}/%{name}-root
32Provides: wxBase
33
34%description
35wxBase is a collection of C++ classes providing basic data structures (strings,
36lists, arrays), powerful wxDateTime class for date manipulations, portable
37wrappers around many OS-specific functions allowing to build the same program
38under all supported folders, wxThread class for writing multithreaded programs
39using either Win32 or POSIX threads and much more. wxBase currently supports
40the following platforms: Win32, generic Unix (Linux, FreeBSD, Solaris, HP-UX,
41...) and BeOS.
42
43%package devel
44Summary: wxBase headers needed for developping with wxBase
45Group: Development/Libraries
46Requires: %{name} = %{ver}
47Provides: wxBase-devel
48
49%description devel
50Header files for wxBase. You need them to develop programs using wxBase.
51
52%package static
53Summary: wxBase static libraries
54Group: Development/Libraries
55Requires: %{name}-devel = %{ver}
56
57%description static
58Static libraries for wxBase. You need them if you want to link statically against wxBase.
59
60%prep
61%setup -q -n wxBase-%{ver}
62
63%build
64if [ "$SMP" != "" ]; then
65    export MAKE="make -j$SMP"
66else
67    export MAKE="make"
68fi
69
70mkdir obj-shared
71cd obj-shared
72../configure --prefix=%{pref} --disable-gui \
73%if %{unicode}
74                              --enable-unicode
75%else
76                              --with-odbc
77%endif
78$MAKE
79cd ..
80
81mkdir obj-static
82cd obj-static
83../configure --prefix=%{pref} --disable-gui --disable-shared \
84%if %{unicode}
85                              --enable-unicode
86%else
87                              --with-odbc
88%endif
89$MAKE
90cd ..
91
92%install
93rm -rf $RPM_BUILD_ROOT
94make -C locale allmo
95make -C obj-static DESTDIR=$RPM_BUILD_ROOT prefix=%{pref} install
96make -C obj-shared DESTDIR=$RPM_BUILD_ROOT prefix=%{pref} install
97
98# we need to modify the absolute wx-config link to be relative or rpm complains
99# (and our package wouldn't be relocatable)
100ln -sf ../lib/wx/config/%{wxconfig} $RPM_BUILD_ROOT/%{pref}/bin/wx-config
101
102%find_lang wxstd
103
104%clean
105rm -rf $RPM_BUILD_ROOT
106
107%post
108/sbin/ldconfig
109
110%postun
111/sbin/ldconfig
112
113%post devel
114# link wx-config when you install RPM.
115ln -sf %{_libdir}/wx/config/%{wxconfig} %{_bindir}/wx-config
116# link wx-config with explicit name.
117ln -sf %{_libdir}/wx/config/%{wxconfig} %{_bindir}/%{wxconfiglink}
118/sbin/ldconfig
119
120%postun devel
121/sbin/ldconfig
122
123%preun devel
124if test -f %{_bindir}/wx-config -a -f /usr/bin/md5sum ; then
125    SUM1=`md5sum %{_libdir}/wx/config/%{wxconfig} | cut -c 0-32`
126    SUM2=`md5sum %{_bindir}/wx-config | cut -c 0-32`
127    if test "x$SUM1" = "x$SUM2" ; then
128        rm -f %{_bindir}/wx-config
129    fi
130fi
131rm -f %{_bindir}/%{wxconfiglink}
132
133%files -f wxstd.lang
134%defattr (-,root,root)
135%doc COPYING.LIB *.txt
136%{_libdir}/libwx_base*-%{ver2}.so.*
137
138%files devel
139%defattr (-,root,root)
140%{_bindir}/wx-config
141%dir %{_includedir}/wx-%{ver2}
142%{_includedir}/wx-%{ver2}/*
143%{_libdir}/libwx_base*-%{ver2}.so
144%dir %{_libdir}/wx
145%{_libdir}/wx/*
146%{_datadir}/aclocal/*.m4
147%{_datadir}/bakefile/presets/*
148%{_datadir}/locale/*/LC_MESSAGES/*.mo
149
150%files static
151%defattr (-,root,root)
152%{_libdir}/lib*.a
153