]> git.saurik.com Git - wxWidgets.git/blobdiff - wxBase.spec
don't define EMPTY_PARAMETER_VALUE macro without wx prefix, this is an invitation...
[wxWidgets.git] / wxBase.spec
index d30e17d1f53ffa0f6b335bc9459609730ad3bf63..3f8a054ef3f429b8686a4ef987021cd179e9f4d8 100644 (file)
@@ -1,19 +1,35 @@
 %define pref /usr
-%define ver 2.3.3
-%define ver2 2.3
-%define rel 1
-
-Summary: wxBase library - non-GUI support classes of wxWindows toolkit
-Name: wxBase
+%define ver  2.7.0
+%define ver2 2.7
+%define rel  1
+
+# Configurable settings (use --with(out) unicode on rpmbuild command line):
+%define unicode 0
+%{?_with_unicode: %{expand: %%define unicode 1}}
+%{?_without_unicode: %{expand: %%define unicode 0}}
+
+%if %{unicode}
+    %define name         wx-base-unicode
+    %define wxconfig     base-unicode-release-%{ver2}
+    %define wxconfiglink wxbaseu-%{ver2}-config
+%else
+    %define name         wx-base
+    %define wxconfig     base-ansi-release-%{ver2}
+    %define wxconfiglink wxbase-%{ver2}-config
+%endif
+
+Summary: wxBase library - non-GUI support classes of wxWidgets toolkit
+Name: %{name}
 Version: %{ver}
 Release: %{rel}
-Copyright: wxWindows Licence
+License: wxWindows Licence
 Group: Development/Libraries
 Source: wxBase-%{ver}.tar.bz2
-URL: http://www.wxwindows.org
+URL: http://www.wxwidgets.org
 Packager: Vadim Zeitlin <vadim@wxwindows.org>
 Prefix: %{pref}
-BuildRoot: /var/tmp/%{name}-root
+BuildRoot: %{_tmppath}/%{name}-root
+Provides: wxBase
 
 %description
 wxBase is a collection of C++ classes providing basic data structures (strings,
@@ -27,7 +43,8 @@ the following platforms: Win32, generic Unix (Linux, FreeBSD, Solaris, HP-UX,
 %package devel
 Summary: wxBase headers needed for developping with wxBase
 Group: Development/Libraries
-Requires: wxBase = %{ver}
+Requires: %{name} = %{ver}
+Provides: wxBase-devel
 
 %description devel
 Header files for wxBase. You need them to develop programs using wxBase.
@@ -35,36 +52,52 @@ Header files for wxBase. You need them to develop programs using wxBase.
 %package static
 Summary: wxBase static libraries
 Group: Development/Libraries
+Requires: %{name}-devel = %{ver}
 
 %description static
 Static libraries for wxBase. You need them if you want to link statically against wxBase.
 
 %prep
-%setup -n wxBase-%{ver}
+%setup -q -n wxBase-%{ver}
 
 %build
 if [ "$SMP" != "" ]; then
-  export MAKE="make -j$SMP"
+    export MAKE="make -j$SMP"
 else
-  export MAKE="make"
+    export MAKE="make"
 fi
 
 mkdir obj-shared
 cd obj-shared
-../configure --prefix=%{pref} --enable-soname --disable-gui --disable-std_iostreams
+../configure --prefix=%{pref} --disable-gui \
+%if %{unicode}
+                              --enable-unicode
+%else
+                              --with-odbc
+%endif
 $MAKE
 cd ..
 
 mkdir obj-static
 cd obj-static
-../configure --prefix=%{pref} --disable-shared --disable-gui --disable-std_iostreams
+../configure --prefix=%{pref} --disable-gui --disable-shared \
+%if %{unicode}
+                              --enable-unicode
+%else
+                              --with-odbc
+%endif
 $MAKE
 cd ..
 
 %install
 rm -rf $RPM_BUILD_ROOT
-(cd obj-static ; make prefix=$RPM_BUILD_ROOT%{pref} install)
-(cd obj-shared ; make prefix=$RPM_BUILD_ROOT%{pref} install)
+make -C locale allmo
+make -C obj-static DESTDIR=$RPM_BUILD_ROOT prefix=%{pref} install
+make -C obj-shared DESTDIR=$RPM_BUILD_ROOT prefix=%{pref} install
+
+# we need to modify the absolute wx-config link to be relative or rpm complains
+# (and our package wouldn't be relocatable)
+ln -sf ../lib/wx/config/%{wxconfig} $RPM_BUILD_ROOT/%{pref}/bin/wx-config
 
 %find_lang wxstd
 
@@ -78,35 +111,41 @@ rm -rf $RPM_BUILD_ROOT
 /sbin/ldconfig
 
 %post devel
-# Install wx-config if there isn't any
-if test ! -f %{_bindir}/wx-config ; then
-    ln -sf wxbase-%{ver2}-config %{_bindir}/wx-config
-fi
+# link wx-config when you install RPM.
+ln -sf %{_libdir}/wx/config/%{wxconfig} %{_bindir}/wx-config
+# link wx-config with explicit name.
+ln -sf %{_libdir}/wx/config/%{wxconfig} %{_bindir}/%{wxconfiglink}
+/sbin/ldconfig
+
+%postun devel
+/sbin/ldconfig
 
 %preun devel
-# Remove wx-config if it points to this package
 if test -f %{_bindir}/wx-config -a -f /usr/bin/md5sum ; then
-  SUM1=`md5sum %{_bindir}/wxbase-%{ver2}-config | cut -c 0-32`
-  SUM2=`md5sum %{_bindir}/wx-config | cut -c 0-32`
-  if test "x$SUM1" = "x$SUM2" ; then
-    rm -f %{_bindir}/wx-config
-  fi
+    SUM1=`md5sum %{_libdir}/wx/config/%{wxconfig} | cut -c 0-32`
+    SUM2=`md5sum %{_bindir}/wx-config | cut -c 0-32`  
+    if test "x$SUM1" = "x$SUM2" ; then
+        rm -f %{_bindir}/wx-config
+    fi
 fi
+rm -f %{_bindir}/%{wxconfiglink}
 
 %files -f wxstd.lang
 %defattr (-,root,root)
 %doc COPYING.LIB *.txt
-%{_libdir}/libwx_base*so.*
+%{_libdir}/libwx_base*-%{ver2}.so.*
 
 %files devel
 %defattr (-,root,root)
-%dir %{_includedir}/wx
-%{_includedir}/wx/*
-%{_libdir}/libwx_base*.so
+%{_bindir}/wx-config
+%dir %{_includedir}/wx-%{ver2}
+%{_includedir}/wx-%{ver2}/*
+%{_libdir}/libwx_base*-%{ver2}.so
 %dir %{_libdir}/wx
 %{_libdir}/wx/*
-%{_bindir}/wxbase-%{ver2}-config
 %{_datadir}/aclocal/*.m4
+%{_datadir}/bakefile/presets/*
+%{_datadir}/locale/*/LC_MESSAGES/*.mo
 
 %files static
 %defattr (-,root,root)