wxGTK/wxGTK.spec

554 lines
20 KiB
RPMSpec
Raw Normal View History

%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: 8mamba
Summary: GTK+ port of the wxWidgets library
Group: System/Libraries
Vendor: openmamba
Distribution: openmamba
Packager: Silvan Calarco <silvan.calarco@mambasoft.it>
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}-presets
Summary: wxGTK presets
Group: System/Libraries
Provides: wxpresets
%description -n %{wxMain}-presets
wxGTK presets.
%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
# unicode version
cd wxGTK-%{version}
%makeinstall
%makeinstall -C contrib/src
# NOTE: wxwin.m4 generates a conflict between wx 2.8 and 3.0
mv %{buildroot}%{_datadir}/aclocal/wxwin.m4 \
%{buildroot}%{_datadir}/aclocal/wxwin%{majversion}.m4
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}/
%{_datadir}/aclocal/wxwin%{majversion}.m4
%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
%files -n %{wxMain}-presets
%defattr(-,root,root)
%dir %{_datadir}/bakefile
%dir %{_datadir}/bakefile/presets
%{_datadir}/bakefile/presets/*
%changelog
* Tue Feb 02 2016 Silvan Calarco <silvan.calarco@mambasoft.it> 2.8.12-8mamba
- move presets to a -presets package to avoid confict with wxWidgets 3
* Sun Jan 31 2016 Silvan Calarco <silvan.calarco@mambasoft.it> 2.8.12-7mamba
- rebuilt with gcc 5.3.0
* Fri Aug 22 2014 Silvan Calarco <silvan.calarco@mambasoft.it> 2.8.12-6mamba
- rename /usr/share/aclocal/wxwin.m4 to avoid a conflict with 3.0
* Mon Mar 24 2014 Silvan Calarco <silvan.calarco@mambasoft.it> 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 <silvan.calarco@mambasoft.it> 2.8.12-4mamba
- rename wxstd.mo files to wxstd2.mo to avoid conflicts with wxWidgets 3.0
* Fri May 10 2013 Silvan Calarco <silvan.calarco@mambasoft.it> 2.8.12-3mamba
- use with-regex=builtin also for unicode version
* Mon Apr 29 2013 Silvan Calarco <silvan.calarco@mambasoft.it> 2.8.12-2mamba
- rebuilt with --with-regex=builtin for codeblock (see https://bugs.archlinux.org/task/27878)
* Thu Oct 20 2011 Silvan Calarco <silvan.calarco@mambasoft.it> 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 <autodist@mambasoft.it> 2.8.11-1mamba
- update to 2.8.11
* Wed Jul 29 2009 Automatic Build System <autodist@mambasoft.it> 2.8.10-1mamba
- automatic update by autodist
* Mon Dec 08 2008 Silvan Calarco <silvan.calarco@mambasoft.it> 2.8.9-1mamba
- automatic update to 2.8.9 by autodist
* Mon Apr 07 2008 Silvan Calarco <silvan.calarco@mambasoft.it> 2.8.7-2mamba
- fixed alternatives update
* Sat Apr 05 2008 Silvan Calarco <silvan.calarco@mambasoft.it> 2.8.7-1mamba
- update to 2.8.7
* Wed Sep 12 2007 Silvan Calarco <silvan.calarco@mambasoft.it> 2.8.5-1mamba
- update to 2.8.5
* Tue Jun 19 2007 Stefano Cotta Ramusino <stefano.cotta@openmamba.org> 2.8.4-1mamba
- update to 2.8.4
* Thu Jan 25 2007 Davide Madrisan <davide.madrisan@qilinux.it> 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 <davide.madrisan@qilinux.it> 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 <silvan.calarco@mambasoft.it> 2.6.0-2qilnx
- rebuilt with wxBase and wxBase-devel packages
* Wed May 11 2005 Silvan Calarco <silvan.calarco@mambasoft.it> 2.6.0-1qilnx
- update to version 2.6.0 by autospec
* Tue Sep 14 2004 Silvan Calarco <silvan.calarco@mambasoft.it> 2.4.2-6qilnx
- added patch for gtk_accel_group_attach and GTK 2.4
* Wed Jun 30 2004 Silvan Calarco <silvan.calarco@mambasoft.it> 2.4.2-5qilnx
- added symlink /usb/bin/wx-config
* Wed Apr 20 2004 Silvan Calarco <silvan.calarco@mambasoft.it> 2.4.2-4qilnx
- fixed default permission for devel package (%defattr missing)
- *.so moved to main package
* Sun Feb 29 2004 Silvan Calarco <silvan.calarco@mambasoft.it> 2.4.2-3qilnx
- rebuilt with opengl
* Wed Oct 15 2003 Silvan Calarco <silvan.calarco@mambasoft.it> 2.4.2-1qilnx
- first build