%define majversion 2.8 #% define appendversion %{majversion} %define pkgname wxGTK %define wxMain %{pkgname}%{?appendversion} %define wxGTK_name libwxGTK%{?appendversion}-ansi %define wxBase_name libwxBase%{?appendversion}-ansi %define wxGTKu_name libwxGTK%{?appendversion}-unicode %define wxBaseu_name libwxBase%{?appendversion}-unicode Name: %{wxMain} Version: 2.8.12 Release: 5mamba Summary: GTK+ port of the wxWidgets library Group: System/Libraries Vendor: openmamba Distribution: openmamba Packager: Silvan Calarco URL: http://wxwindows.org/ Source: http://downloads.sourceforge.net/wxwindows/%{pkgname}-%{version}.tar.bz2 Patch0: %{name}-2.8.9-gvfs_syntax.patch Patch1: wxGTK-2.8.12-locale-compat.patch License: LGPL ## AUTOBUILDREQ-BEGIN BuildRequires: GConf-devel BuildRequires: glibc-devel BuildRequires: libatk-devel BuildRequires: libexpat-devel BuildRequires: libfontconfig-devel BuildRequires: libfreetype-devel BuildRequires: libgcc BuildRequires: libgdk-pixbuf-devel BuildRequires: libGL-devel BuildRequires: libglib-devel BuildRequires: libGLU-devel BuildRequires: libgst-plugins-base010-devel BuildRequires: libgstreamer010-devel BuildRequires: libgtk2-devel BuildRequires: libjpeg-devel BuildRequires: libmspack-devel BuildRequires: libpango-devel BuildRequires: libpng-devel BuildRequires: libSDL-devel BuildRequires: libSM-devel BuildRequires: libstdc++6-devel BuildRequires: libtiff-devel BuildRequires: libXinerama-devel BuildRequires: libxml2-devel BuildRequires: libXxf86vm-devel BuildRequires: libz-devel ## AUTOBUILDREQ-END BuildRequires: libX11-devel BuildRequires: xorg-proto-devel BuildRequires: libesound-devel BuildRequires: libgnome-vfs-devel BuildRequires: libgnomecanvas-devel BuildRequires: bison BuildRequires: flex BuildRequires: libcppunit-devel BuildRoot: %{_tmppath}/%{name}-%{version}-root # FIXME: # checking for --enable-compat24... no # checking for --disable-compat26... no # checking for --enable-mediactrl... no # checking for --enable-gstreamer8... no # checking for --enable-graphics_ctx... no # checking for --enable-dataviewctrl... no # checking for --enable-accessibility... no # checking for --enable-iff... no # # configure: WARNING: wxMetafile is not available on this system... disabled %description wxWidgets is a free C++ library for cross-platform GUI development. With wxWidgets, you can create applications for different GUIs (GTK+, Motif/LessTif, MS Windows, Mac) from the same source code. %package -n %{wxBase_name} Summary: Base library of wxGTK with non-GUI support classes Group: System/Libraries Requires: %{wxMain}-i18n = %{?epoch:%epoch:}%{version}-%{release} Provides: libwxBase = %{?epoch:%epoch:}%{version}-%{release} Obsoletes: wxBase2.6 Provides: libwxBase2.8-ansi Obsoletes: libwxBase2.8-ansi %description -n %{wxBase_name} wxBase is a collection of C++ classes providing basic data structures (strings, lists, arrays), powerful wxDateTime class for date manipulations, portable wrappers around many OS-specific functions allowing to build the same program under all supported folders, wxThread class for writing multithreaded programs using either Win32 or POSIX threads and much more. wxBase currently supports the following platforms: Win32, generic Unix (Linux, FreeBSD, Solaris, HP-UX, ...) and BeOS. This package contains the library needed to run programs dynamically linked with wxBase. %package -n %{wxBase_name}-devel Summary: Static libraries and headers for %{wxBase_name} Group: Development/Libraries Requires(pre): chkconfig Requires: %{wxBase_name} = %{?epoch:%epoch:}%{version}-%{release} Provides: libwxBase-devel = %{?epoch:%epoch:}%{version}-%{release} Requires: lib%{wxMain}-devel = %{?epoch:%epoch:}%{version}-%{release} Obsoletes: wxBase2.6-devel Provides: libwxBase2.8-ansi-devel Obsoletes: libwxBase2.8-ansi-devel %description -n %{wxBase_name}-devel wxBase is a collection of C++ classes providing basic data structures (strings, lists, arrays), powerful wxDateTime class for date manipulations, portable wrappers around many OS-specific functions allowing to build the same program under all supported folders, wxThread class for writing multithreaded programs using either Win32 or POSIX threads and much more. wxBase currently supports the following platforms: Win32, generic Unix (Linux, FreeBSD, Solaris, HP-UX, ...) and BeOS. This package contains static libraries and header files need for development. %package -n %{wxBaseu_name} Summary: Base library of wxGTK with non-GUI support classes - Unicode enabled Group: System/Libraries Requires: %{wxMain}-i18n = %{?epoch:%epoch:}%{version}-%{release} Provides: libwxBaseu = %{?epoch:%epoch:}%{version}-%{release} Obsoletes: wxBase2.6-devel Provides: libwxBase2.8-unicode Obsoletes: libwxBase2.8-unicode %description -n %{wxBaseu_name} wxBase is a collection of C++ classes providing basic data structures (strings, lists, arrays), powerful wxDateTime class for date manipulations, portable wrappers around many OS-specific functions allowing to build the same program under all supported folders, wxThread class for writing multithreaded programs using either Win32 or POSIX threads and much more. wxBase currently supports the following platforms: Win32, generic Unix (Linux, FreeBSD, Solaris, HP-UX, ...) and BeOS. This package contains the unicode enabled version of wxBase. %package -n %{wxBaseu_name}-devel Summary: Static libraries and headers for %{wxBaseu_name} Group: Development/Libraries Requires(pre): chkconfig Requires: %{wxBaseu_name} = %{?epoch:%epoch:}%{version}-%{release} Provides: libwxBaseu-devel = %{?epoch:%epoch:}%{version}-%{release} Obsoletes: wxBase2.6-devel Requires: lib%{wxMain}-devel = %{?epoch:%epoch:}%{version}-%{release} Provides: libwxBase2.8-unicode-devel Obsoletes: libwxBase2.8-unicode-devel %description -n %{wxBaseu_name}-devel wxBase is a collection of C++ classes providing basic data structures (strings, lists, arrays), powerful wxDateTime class for date manipulations, portable wrappers around many OS-specific functions allowing to build the same program under all supported folders, wxThread class for writing multithreaded programs using either Win32 or POSIX threads and much more. wxBase currently supports the following platforms: Win32, generic Unix (Linux, FreeBSD, Solaris, HP-UX, ...) and BeOS. This package contains static libraries and header files need for development with the unicode enabled version of wxBase. %package -n %{wxGTK_name} Summary: GTK+ port of the wxWidgets library Group: System/Libraries Requires: %{wxBase_name} = %{?epoch:%epoch:}%{version}-%{release} Provides: libwxGTK = %{?epoch:%epoch:}%{version}-%{release} Obsoletes: wxGTK2.6 Provides: libwxGTK2.8-ansi Obsoletes: libwxGTK2.8-ansi %description -n %{wxGTK_name} wxWidgets is a free C++ library for cross-platform GUI development. With wxWidgets, you can create applications for different GUIs (GTK+, Motif, MS Windows, MacOS X, Windows CE, GPE) from the same source code. %package -n lib%{wxMain}-devel Summary: Common headers files and static libraries for %{wxMain} Group: Development/Libraries Requires: %{wxGTK_name} = %{?epoch:%epoch:}%{version}-%{release} %description -n lib%{wxMain}-devel wxWidgets is a free C++ library for cross-platform GUI development. With wxWidgets, you can create applications for different GUIs (GTK+, Motif, MS Windows, MacOS X, Windows CE, GPE) from the same source code. This package contains common static libraries and header files need for development. %package -n %{wxGTK_name}-devel Summary: Headers files and static libraries for %{wxGTK_name} Group: Development/Libraries Requires: %{wxGTK_name} = %{?epoch:%epoch:}%{version}-%{release} Requires: %{wxBase_name}-devel = %{?epoch:%epoch:}%{version}-%{release} Requires: lib%{wxMain}-devel = %{?epoch:%epoch:}%{version}-%{release} Obsoletes: wxGTK2.6-devel Provides: libwxGTK2.8-ansi-devel Obsoletes: libwxGTK2.8-ansi-devel %description -n %{wxGTK_name}-devel wxWidgets is a free C++ library for cross-platform GUI development. With wxWidgets, you can create applications for different GUIs (GTK+, Motif, MS Windows, MacOS X, Windows CE, GPE) from the same source code. This package contains static libraries and header files need for development. %package -n %{wxGTKu_name} Summary: GTK+ port of the wxWidgets library - Unicode enabled Group: System/Libraries Requires: %{wxBaseu_name} = %{?epoch:%epoch:}%{version}-%{release} Provides: libwxGTKu = %{?epoch:%epoch:}%{version}-%{release} Obsoletes: wxGTK2.6 Provides: libwxGTK2.8-unicode Obsoletes: libwxGTK2.8-unicode %description -n %{wxGTKu_name} wxWidgets is a free C++ library for cross-platform GUI development. With wxWidgets, you can create applications for different GUIs (GTK+, Motif, MS Windows, MacOS X, Windows CE, GPE) from the same source code. This package contains the unicode enabled version of wxGTK. %package -n %{wxGTKu_name}-devel Summary: Headers files and static libraries for %{wxGTKu_name} Group: Development/Libraries Requires: %{wxGTKu_name} = %{?epoch:%epoch:}%{version}-%{release} Requires: %{wxBaseu_name}-devel = %{?epoch:%epoch:}%{version}-%{release} Requires: lib%{wxMain}-devel = %{?epoch:%epoch:}%{version}-%{release} Provides: libwxGTKu-devel = %{?epoch:%epoch:}%{version}-%{release} Obsoletes: wxGTK2.6-devel Provides: libwxGTK2.8-unicode-devel Obsoletes: libwxGTK2.8-unicode-devel %description -n %{wxGTKu_name}-devel wxWidgets is a free C++ library for cross-platform GUI development. With wxWidgets, you can create applications for different GUIs (GTK+, Motif, MS Windows, MacOS X, Windows CE, GPE) from the same source code. This package contains static libraries and header files need for development with the unicode enabled version of wxGTK. %package -n %{wxMain}-examples Summary: wxGTK example programs Group: Development/Libraries Requires: %{wxBase_name}-devel = %{?epoch:%epoch:}%{version}-%{release} Provides: wxGTK2.8-examples Obsoletes: wxGTK2.8-examples %description -n %{wxMain}-examples wxBase and wxGTK example programs. %package -n %{wxMain}-i18n Summary: The translations for the wxWidgets library Group: System/Internationalization Obsoletes: wxGTK2.6-i18n Provides: wxGTK2.8-i18n Obsoletes: wxGTK2.8-i18n %description -n %{wxMain}-i18n The translations files for the wxWidgets library. %prep %setup -q -n wxGTK-%{version} -a0 %patch1 -p1 cd wxGTK-%{version} %patch1 -p1 cd .. # FIXME: %{_datadir}/bakefile/presets generates a conflict between wx 2.6 # and 2.8 devel packages #sed -i "s,bakefile/presets,bakefile/presets-\$(WX_RELEASE),g" Makefile.in %build # configure and build the ASCII version %configure \ --enable-gtk2 \ --with-gtk \ --enable-plugins \ --enable-shared \ --enable-soname \ --enable-tabdialog \ --enable-mediactrl \ --with-libpng=sys \ --with-libjpeg=sys \ --with-libtiff=sys \ --with-regex=builtin \ --with-zlib=sys \ --without-odbc \ --with-opengl \ --with-sdl \ --with-libmspack \ --with-gnomeprint \ --with-gnomevfs \ --enable-optimise \ --without-debug_flag \ --without-debug_info # --disable-compat26 \ # --enable-accessibility %make %make -C locale allmo %make -C contrib/src # configure and build the Unicode version cd wxGTK-%{version} %configure \ --enable-unicode \ --enable-gtk2 \ --with-gtk \ --enable-plugins \ --enable-shared \ --enable-soname \ --enable-tabdialog \ --enable-mediactrl \ --with-libpng=sys \ --with-libjpeg=sys \ --with-libtiff=sys \ --with-regex=builtin \ --with-zlib=sys \ --without-odbc \ --with-opengl \ --with-sdl \ --with-libmspack \ --with-gnomeprint \ --with-gnomevfs \ --enable-optimise \ --without-debug_flag \ --without-debug_info # --disable-compat26 \ # --enable-accessibility %make %make -C locale allmo %make -C contrib/src %install [ "%{buildroot}" != / ] && rm -rf %{buildroot} %makeinstall %makeinstall -C contrib/src mv %{buildroot}%{_bindir}/wxrc-%{majversion} \ %{buildroot}%{_bindir}/wxrc-%{majversion}-ansi rm -f %{buildroot}%{_bindir}/wxrc ln -sf %{_libdir}/wx/config/gtk2-ansi-release-%{majversion} \ %{buildroot}%{_bindir}/wx-config-ansi install -d %{buildroot}%{_datadir}/wx/examples/src cp -a demos samples %{buildroot}%{_datadir}/wx/examples # FIXME: wxwin.m4 generate a conflict between wx 2.6 and 2.8 #mv %{buildroot}%{_datadir}/aclocal/wxwin.m4 \ # %{buildroot}%{_datadir}/aclocal/wxwin%{majversion}.m4 # unicode version cd wxGTK-%{version} %makeinstall %makeinstall -C contrib/src mv %{buildroot}%{_bindir}/wxrc-%{majversion} \ %{buildroot}%{_bindir}/wxrc-%{majversion}-unicode ln -sf %{_libdir}/wx/config/gtk2-unicode-release-%{majversion} \ %{buildroot}%{_bindir}/wx-config-unicode rm -f %{buildroot}%{_bindir}/{wx-config,wxrc} # Rename the .mo files to avoid conficts with wxWidgets 3.0 for i in %{buildroot}%{_datadir}/locale/*/LC_MESSAGES/wxstd.mo; do NEWNAME=`echo $i | sed -e "s/wxstd.mo/wxstd2.mo/"` mv $i $NEWNAME; done cd .. %find_lang wxstd2 # remove wxmsw only for windows and conflicting with wxWidgets 3.0 rm -f %{buildroot}%{_datadir}/locale/*/LC_MESSAGES/wxmsw.mo %clean [ "%{buildroot}" != / ] && rm -rf %{buildroot} %post -n %{wxBase_name} -p /sbin/ldconfig %postun -n %{wxBase_name} -p /sbin/ldconfig %post -n %{wxBaseu_name} -p /sbin/ldconfig %postun -n %{wxBaseu_name} -p /sbin/ldconfig %post -n %{wxGTK_name} -p /sbin/ldconfig %postun -n %{wxGTK_name} -p /sbin/ldconfig %post -n %{wxGTKu_name} -p /sbin/ldconfig %postun -n %{wxGTKu_name} -p /sbin/ldconfig %post -n %{wxBase_name}-devel /usr/sbin/update-alternatives --install \ %{_bindir}/wx-config wx-config %{_bindir}/wx-config-ansi 20 \ --slave %{_bindir}/wxrc wxrc %{_bindir}/wxrc-%{majversion}-ansi : %postun -n %{wxBase_name}-devel if [ "$1" = "0" ]; then /usr/sbin/update-alternatives --remove wx-config \ %{_bindir}/wx-config-ansi fi : %post -n %{wxBaseu_name}-devel /usr/sbin/update-alternatives --install \ %{_bindir}/wx-config wx-config %{_bindir}/wx-config-unicode 40 \ --slave %{_bindir}/wxrc wxrc %{_bindir}/wxrc-%{majversion}-unicode : %postun -n %{wxBaseu_name}-devel if [ "$1" = "0" ]; then /usr/sbin/update-alternatives --remove wx-config \ %{_bindir}/wx-config-unicode fi : %files -n %{wxBase_name} %defattr(-,root,root) %{_libdir}/libwx_base-%{majversion}.so.* %{_libdir}/libwx_base_net-%{majversion}.so.* %{_libdir}/libwx_base_xml-%{majversion}.so.* %files -n %{wxBase_name}-devel %defattr(-,root,root) %{_bindir}/wx-config-ansi %{_bindir}/wxrc-*ansi %dir %{_libdir}/wx/include/gtk2-ansi-release-%{majversion}/ %dir %{_libdir}/wx/include/gtk2-ansi-release-%{majversion}/wx/ %{_libdir}/wx/config/gtk2-ansi-release-%{majversion} %{_libdir}/wx/include/gtk2-ansi-release-%{majversion}/wx/setup.h %{_libdir}/libwx_base-%{majversion}.so %{_libdir}/libwx_base_net-%{majversion}.so %{_libdir}/libwx_base_xml-%{majversion}.so %files -n %{wxBaseu_name} %defattr(-,root,root) %{_libdir}/libwx_baseu-%{majversion}.so.* %{_libdir}/libwx_baseu_net-%{majversion}.so.* %{_libdir}/libwx_baseu_xml-%{majversion}.so.* %files -n %{wxBaseu_name}-devel %defattr(-,root,root) %{_bindir}/wx-config-unicode %{_bindir}/wxrc-*unicode %dir %{_libdir}/wx/include/gtk2-unicode-release-%{majversion}/ %dir %{_libdir}/wx/include/gtk2-unicode-release-%{majversion}/wx/ %{_libdir}/wx/config/gtk2-unicode-release-%{majversion} %{_libdir}/wx/include/gtk2-unicode-release-%{majversion}/wx/setup.h %{_libdir}/libwx_baseu-%{majversion}.so %{_libdir}/libwx_baseu_net-%{majversion}.so %{_libdir}/libwx_baseu_xml-%{majversion}.so %files -n lib%{wxMain}-devel %defattr(-,root,root) %{_libdir}/wx/%{majversion}/sound_sdl-%{majversion}.so %{_includedir}/wx-%{majversion}/ # note: these files generate conflicts between wx 2.6 and 2.8 %{_datadir}/aclocal/wxwin.m4 %{_datadir}/bakefile/ %files -n %{wxGTK_name} %defattr(-,root,root) %{_libdir}/libwx_gtk2_*-%{majversion}.so.* %files -n %{wxGTK_name}-devel %defattr(-,root,root) %{_libdir}/libwx_gtk2_*-%{majversion}.so %files -n %{wxGTKu_name} %defattr(-,root,root) %{_libdir}/libwx_gtk2u_*-%{majversion}.so.* %files -n %{wxGTKu_name}-devel %defattr(-,root,root) %{_libdir}/libwx_gtk2u_*-%{majversion}.so %files -n %{wxMain}-i18n -f wxstd2.lang %defattr(-,root,root) %files -n %{wxMain}-examples %defattr(-,root,root) %{_datadir}/wx/examples %changelog * Mon Mar 24 2014 Silvan Calarco 2.8.12-5mamba - also remove conflicting wxmsw.mo (don't know how to rename but should be useful on windows only) * Mon Mar 24 2014 Silvan Calarco 2.8.12-4mamba - rename wxstd.mo files to wxstd2.mo to avoid conflicts with wxWidgets 3.0 * Fri May 10 2013 Silvan Calarco 2.8.12-3mamba - use with-regex=builtin also for unicode version * Mon Apr 29 2013 Silvan Calarco 2.8.12-2mamba - rebuilt with --with-regex=builtin for codeblock (see https://bugs.archlinux.org/task/27878) * Thu Oct 20 2011 Silvan Calarco 2.8.12-1mamba - update to 2.8.12 - add --enable-mediactrl to build gstreamer media library (required by DVDStyler 1.8.4) * Wed Oct 27 2010 Automatic Build System 2.8.11-1mamba - update to 2.8.11 * Wed Jul 29 2009 Automatic Build System 2.8.10-1mamba - automatic update by autodist * Mon Dec 08 2008 Silvan Calarco 2.8.9-1mamba - automatic update to 2.8.9 by autodist * Mon Apr 07 2008 Silvan Calarco 2.8.7-2mamba - fixed alternatives update * Sat Apr 05 2008 Silvan Calarco 2.8.7-1mamba - update to 2.8.7 * Wed Sep 12 2007 Silvan Calarco 2.8.5-1mamba - update to 2.8.5 * Tue Jun 19 2007 Stefano Cotta Ramusino 2.8.4-1mamba - update to 2.8.4 * Thu Jan 25 2007 Davide Madrisan 2.8.0-1qilnx - update to version 2.8.0 by autospec - added build requirements for xorg7 - enabled unicode - added a new package with coding examples * Wed Jun 29 2005 Davide Madrisan 2.6.1-1qilnx - update to version 2.6.1 by autospec - added missing build requirements - added missing %%post, %%postun scripts - fixed package groups - specfile updates - libwx_base*.so libraries in wxBase-devel * Tue May 17 2005 Silvan Calarco 2.6.0-2qilnx - rebuilt with wxBase and wxBase-devel packages * Wed May 11 2005 Silvan Calarco 2.6.0-1qilnx - update to version 2.6.0 by autospec * Tue Sep 14 2004 Silvan Calarco 2.4.2-6qilnx - added patch for gtk_accel_group_attach and GTK 2.4 * Wed Jun 30 2004 Silvan Calarco 2.4.2-5qilnx - added symlink /usb/bin/wx-config * Wed Apr 20 2004 Silvan Calarco 2.4.2-4qilnx - fixed default permission for devel package (%defattr missing) - *.so moved to main package * Sun Feb 29 2004 Silvan Calarco 2.4.2-3qilnx - rebuilt with opengl * Wed Oct 15 2003 Silvan Calarco 2.4.2-1qilnx - first build