]> git.pld-linux.org Git - packages/gnustep-gui.git/blobdiff - gnustep-gui.spec
fix build with icu >= 68
[packages/gnustep-gui.git] / gnustep-gui.spec
index 7d7a8cf04aa1993c5a34cffea5592038f78a5408..3211e31c38c3335ca7591baca0e36c368e2a95eb 100644 (file)
@@ -1,20 +1,46 @@
+#
+# Conditional build:
+%bcond_without cups            # GSCUPS bundle
+%bcond_without magick          # ImageMagick support
+%bcond_without portaudio       # gsnd tool
+#
 Summary:       GNUstep GUI library package
-Summary(pl):   Biblioteka GNUstep GUI
+Summary(pl.UTF-8):     Biblioteka GNUstep GUI
 Name:          gnustep-gui
-Version:       0.6.0
-Release:       1
-License:       GPL
-Vendor:                The Seawood Project
-Group:         Development/Tools
-Group(de):     Entwicklung/Werkzeuge
-Group(fr):     Development/Outils
-Group(pl):     Programowanie/Narzêdzia
+%define        ver     0.24
+Version:       %{ver}.0
+Release:       20
+License:       LGPL v2+ (library), GPL v3+ (applications)
+Group:         Libraries
 Source0:       ftp://ftp.gnustep.org/pub/gnustep/core/%{name}-%{version}.tar.gz
-Patch0:                gstep-gui-headers.patch
+# Source0-md5: bd289f0c7b2626d093ad92364069b9a7
+Patch0:                %{name}-nocompressdocs.patch
+Patch1:                %{name}-doc.patch
+Patch2:                %{name}-giflib.patch
+Patch3:                imagemagick7.patch
+Patch4:                icu68.patch
 URL:           http://www.gnustep.org/
-BuildRoot:     %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
+%{?with_magick:BuildRequires:  ImageMagick-devel}
+BuildRequires: aspell-devel
+%{?with_cups:BuildRequires:    cups-devel}
+BuildRequires: flite-devel
+BuildRequires: gcc-objc
+BuildRequires: giflib-devel
+BuildRequires: gnustep-base-devel >= 1.13.0
+BuildRequires: gnustep-make-devel
+BuildRequires: libao-devel
+BuildRequires: libicns-devel
+BuildRequires: libicu-devel >= 4.0
+BuildRequires: libjpeg-devel
+BuildRequires: libpng-devel
+BuildRequires: libsndfile-devel
+BuildRequires: libtiff-devel
+BuildRequires: pkgconfig
+%{?with_portaudio:BuildRequires:       portaudio-devel >= 19}
+BuildRequires: zlib-devel
+Requires:      gnustep-base >= 1.13.0
 Conflicts:     gnustep-core
-Requires:      gnustep-base
+BuildRoot:     %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
 %description
 It is a library of graphical user interface classes written completely
@@ -26,89 +52,72 @@ include graphical objects such as buttons, text fields, popup lists,
 browser lists, and windows; there are also many associated classes for
 handling events, colors, fonts, pasteboards and images.
 
-Library combo is %{libcombo}. %{_buildblurb}
-
-%description -l pl
-To jest biblioteka klas graficznego interfejsu u¿ytkownika napisana w
-Objective-C. Klasy bazuj± na specyfikacji OpenStep wypuszczonej przez
-NeXT Software. Biblioteka nie jest ca³kowicie zgodna ze specyfikacj± i
-zosta³a rozszerzona, aby wykorzystaæ mo¿liwo¶ci systemu GNU. Klasy
-zawieraj± graficzne obiekty takie jak przyciski, pola tekstowe, listy
-rozwijane, listy przewijane i okienka; jest tak¿e wiele klas do
-obs³ugi zdarzeñ, kolorów, fontów i obrazków.
+%description -l pl.UTF-8
+To jest biblioteka klas graficznego interfejsu użytkownika napisana w
+Objective-C. Klasy bazują na specyfikacji OpenStep wypuszczonej przez
+NeXT Software. Biblioteka nie jest całkowicie zgodna ze specyfikacją i
+została rozszerzona, aby wykorzystać możliwości systemu GNU. Klasy
+zawierają graficzne obiekty takie jak przyciski, pola tekstowe, listy
+rozwijane, listy przewijane i okienka; jest także wiele klas do
+obsługi zdarzeń, kolorów, fontów i obrazków.
 
 %package devel
 Summary:       GNUstep GUI headers and libs
-Summary(pl):   Pliki nag³ówkowe GNUstep GUI
+Summary(pl.UTF-8):     Pliki nagłówkowe GNUstep GUI
 Group:         Development/Libraries
-Group(de):     Entwicklung/Libraries
-Group(es):     Desarrollo/Bibliotecas
-Group(fr):     Development/Librairies
-Group(pl):     Programowanie/Biblioteki
-Group(pt_BR):  Desenvolvimento/Bibliotecas
-Group(ru):     òÁÚÒÁÂÏÔËÁ/âÉÂÌÉÏÔÅËÉ
-Group(uk):     òÏÚÒÏÂËÁ/â¦Â̦ÏÔÅËÉ
-Requires:      %{name} = %{version}, gnustep-base-devel
+Requires:      %{name} = %{version}-%{release}
+Requires:      gnustep-base-devel >= 1.13.0
 Conflicts:     gnustep-core
 
 %description devel
 Header files required to build applications against the GNUstep GUI
-library. Library combo is %{libcombo}. %{_buildblurb}
+library.
 
-%description devel -l pl
-Pliki nag³ówkowe potrzebne do budowania aplikacji korzystaj±cych z
+%description devel -l pl.UTF-8
+Pliki nagłówkowe potrzebne do budowania aplikacji korzystających z
 biblioteki GNUstep GUI.
 
 %prep
-%setup -q -n gstep-%{ver}/gui
-%patch -p2
+%setup -q
+%patch0 -p1
+%patch1 -p1
+%patch2 -p1
+%patch3 -p1
+%patch4 -p1
 
 %build
-if [ -z "$GNUSTEP_SYSTEM_ROOT" ]; then
-   . %{_prefix}/GNUstep/Makefiles/GNUstep.sh 
-fi
-CFLAGS="%{rpmcflags}" ./configure --prefix=%{_prefix}/GNUstep --with-library-combo=%{libcombo}
-%{__make}
+export GNUSTEP_MAKEFILES=%{_datadir}/GNUstep/Makefiles
+export GNUSTEP_FLATTENED=yes
+# disable gsnd - not ready for current portaudio
+%configure \
+       %{!?with_cups:--disable-cups} \
+       %{!?with_portaudio:--disable-gsnd} \
+       %{?with_magick:--enable-imagemagick} \
+       --enable-libgif \
+       --disable-ungif
+
+# with __make -jN we can got non-deterministic errors
+%{__make} -j1 \
+       messages=yes
 
 %install
 rm -rf $RPM_BUILD_ROOT
-if [ -z "$GNUSTEP_SYSTEM_ROOT" ]; then
-   . %{_prefix}/GNUstep/Makefiles/GNUstep.sh 
-fi
-install -d ${RPM_BUILD_ROOT}%{_prefix}/GNUstep/Library/Services
-
-%{__make} install GNUSTEP_INSTALLATION_DIR=${RPM_BUILD_ROOT}%{_prefix}/GNUstep
-
-cat > filelist.rpm.in << EOF
-%defattr (-, bin, bin)
-%doc ANNOUNCE COPYING* ChangeLog INSTALL NEWS NOTES README SUPPORT Version
-
-%dir %{_prefix}/GNUstep/Library
-
-%{_prefix}/GNUstep/Libraries/GSARCH/GSOS/%{libcombo}/lib*.so.*
-%{_prefix}/GNUstep/Libraries/Resources
-%{_prefix}/GNUstep/Library/Model
-%{_prefix}/GNUstep/Library/Services/*
-%{_prefix}/GNUstep/Tools/make_services
-%{_prefix}/GNUstep/Tools/set_show_service
-# gpbs is now provided by xgps
-#%{_prefix}/GNUstep/Tools/GSARCH/GSOS/%{libcombo}/gpbs
-%{_prefix}/GNUstep/Tools/GSARCH/GSOS/%{libcombo}/make_services
-%{_prefix}/GNUstep/Tools/GSARCH/GSOS/%{libcombo}/set_show_service
+export GNUSTEP_MAKEFILES=%{_datadir}/GNUstep/Makefiles
+export GNUSTEP_INSTALLATION_DOMAIN=SYSTEM
+export GNUSTEP_FLATTENED=yes
 
-EOF
+%{__make} install \
+       DESTDIR=$RPM_BUILD_ROOT
 
-cat > filelist-devel.rpm.in  << EOF
-%defattr(-, root, root)
-%{_prefix}/GNUstep/Headers/gnustep/gui
-%{_prefix}/GNUstep/Libraries/GSARCH/GSOS/%{libcombo}/lib*.so
+%{__make} install -C Documentation \
+       DESTDIR=$RPM_BUILD_ROOT
 
-EOF
+find $RPM_BUILD_ROOT%{_datadir}/GNUstep/Documentation \
+       -type f -name .cvsignore | xargs rm -f
 
-sed -e "s|GSARCH|${GNUSTEP_HOST_CPU}|" -e "s|GSOS|${GNUSTEP_HOST_OS}|" < filelist.rpm.in > filelist.rpm
-sed -e "s|GSARCH|${GNUSTEP_HOST_CPU}|" -e "s|GSOS|${GNUSTEP_HOST_OS}|" < filelist-devel.rpm.in > filelist-devel.rpm
-
-# Don't worry about ld.so.conf on linux as gnustep-base should take care of it.
+# not (yet?) supported by rpm-compress-doc
+find $RPM_BUILD_ROOT%{_datadir}/GNUstep/Documentation \
+       -type f -a ! -name '*.html' -a ! -name '*.gz' -a ! -name '*.jpg' -a ! -name '*.css' | xargs gzip -9nf
 
 %clean
 rm -rf $RPM_BUILD_ROOT
@@ -116,8 +125,140 @@ rm -rf $RPM_BUILD_ROOT
 %post   -p /sbin/ldconfig
 %postun -p /sbin/ldconfig
 
-%files -f filelist.rpm
+%files
 %defattr(644,root,root,755)
+%doc ChangeLog
+%docdir %{_datadir}/GNUstep/Documentation
+%dir %{_datadir}/GNUstep/Documentation/Developer
+%dir %{_datadir}/GNUstep/Documentation/Developer/Gui
+%{_datadir}/GNUstep/Documentation/Developer/Gui/ReleaseNotes
+%{_datadir}/GNUstep/Documentation/User
+
+%{_mandir}/man1/gclose.1*
+%{_mandir}/man1/gcloseall.1*
+%{_mandir}/man1/gopen.1*
+%{_mandir}/man1/make_services.1*
+%{_mandir}/man1/set_show_service.1*
+
+%attr(755,root,root) %{_bindir}/GSSpeechServer
+%attr(755,root,root) %{_bindir}/gclose
+%attr(755,root,root) %{_bindir}/gcloseall
+%attr(755,root,root) %{_bindir}/gopen
+%attr(755,root,root) %{_bindir}/make_services
+%attr(755,root,root) %{_bindir}/say
+%attr(755,root,root) %{_bindir}/set_show_service
+%attr(755,root,root) %{_libdir}/libgnustep-gui.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libgnustep-gui.so.%{ver}
+
+# XXX: shared with WindowMaker - move to gnustep-dirs?
+%dir %{_libdir}/GNUstep/Applications
+
+%dir %{_libdir}/GNUstep/Applications/GSSpeechServer.app
+%attr(755,root,root) %{_libdir}/GNUstep/Applications/GSSpeechServer.app/GSSpeechServer
+%{_libdir}/GNUstep/Applications/GSSpeechServer.app/Resources
+%{_libdir}/GNUstep/Applications/GSSpeechServer.app/stamp.make
+
+%dir %{_libdir}/GNUstep/Bundles
+
+%dir %{_libdir}/GNUstep/Bundles/AudioOutput.nssound
+%attr(755,root,root) %{_libdir}/GNUstep/Bundles/AudioOutput.nssound/AudioOutput
+%{_libdir}/GNUstep/Bundles/AudioOutput.nssound/Resources
+%{_libdir}/GNUstep/Bundles/AudioOutput.nssound/stamp.make
+
+%dir %{_libdir}/GNUstep/Bundles/GSPrinting
+%dir %{_libdir}/GNUstep/Bundles/GSPrinting/GSLPR.bundle
+%attr(755,root,root) %{_libdir}/GNUstep/Bundles/GSPrinting/GSLPR.bundle/GSLPR
+%{_libdir}/GNUstep/Bundles/GSPrinting/GSLPR.bundle/Resources
+%{_libdir}/GNUstep/Bundles/GSPrinting/GSLPR.bundle/stamp.make
+%if %{with cups}
+# R: cups-lib - separate?
+%dir %{_libdir}/GNUstep/Bundles/GSPrinting/GSCUPS.bundle
+%attr(755,root,root) %{_libdir}/GNUstep/Bundles/GSPrinting/GSCUPS.bundle/GSCUPS
+%{_libdir}/GNUstep/Bundles/GSPrinting/GSCUPS.bundle/Resources
+%{_libdir}/GNUstep/Bundles/GSPrinting/GSCUPS.bundle/stamp.make
+%endif
 
-%files -f filelist-devel.rpm devel
+%dir %{_libdir}/GNUstep/Bundles/Sndfile.nssound
+%attr(755,root,root) %{_libdir}/GNUstep/Bundles/Sndfile.nssound/Sndfile
+%{_libdir}/GNUstep/Bundles/Sndfile.nssound/Resources
+%{_libdir}/GNUstep/Bundles/Sndfile.nssound/stamp.make
+
+%dir %{_libdir}/GNUstep/Bundles/TextConverters
+%dir %{_libdir}/GNUstep/Bundles/TextConverters/RTFConverter.bundle
+%attr(755,root,root) %{_libdir}/GNUstep/Bundles/TextConverters/RTFConverter.bundle/RTFConverter
+%{_libdir}/GNUstep/Bundles/TextConverters/RTFConverter.bundle/Resources
+%{_libdir}/GNUstep/Bundles/TextConverters/RTFConverter.bundle/stamp.make
+
+%dir %{_libdir}/GNUstep/Bundles/libgmodel.bundle
+%attr(755,root,root) %{_libdir}/GNUstep/Bundles/libgmodel.bundle/libgmodel
+%{_libdir}/GNUstep/Bundles/libgmodel.bundle/Resources
+%{_libdir}/GNUstep/Bundles/libgmodel.bundle/stamp.make
+
+%dir %{_libdir}/GNUstep/ColorPickers
+
+%dir %{_libdir}/GNUstep/ColorPickers/NamedPicker.bundle
+%attr(755,root,root) %{_libdir}/GNUstep/ColorPickers/NamedPicker.bundle/NamedPicker
+%{_libdir}/GNUstep/ColorPickers/NamedPicker.bundle/Resources
+%{_libdir}/GNUstep/ColorPickers/NamedPicker.bundle/stamp.make
+
+%dir %{_libdir}/GNUstep/ColorPickers/StandardPicker.bundle
+%attr(755,root,root) %{_libdir}/GNUstep/ColorPickers/StandardPicker.bundle/StandardPicker
+%dir %{_libdir}/GNUstep/ColorPickers/StandardPicker.bundle/Resources
+%{_libdir}/GNUstep/ColorPickers/StandardPicker.bundle/Resources/*.tiff
+%{_libdir}/GNUstep/ColorPickers/StandardPicker.bundle/Resources/*.plist
+%{_libdir}/GNUstep/ColorPickers/StandardPicker.bundle/Resources/English.lproj
+%lang(fr) %{_libdir}/GNUstep/ColorPickers/StandardPicker.bundle/Resources/French.lproj
+%lang(es) %{_libdir}/GNUstep/ColorPickers/StandardPicker.bundle/Resources/Spanish.lproj
+%lang(sv) %{_libdir}/GNUstep/ColorPickers/StandardPicker.bundle/Resources/Swedish.lproj
+%{_libdir}/GNUstep/ColorPickers/StandardPicker.bundle/stamp.make
+
+%dir %{_libdir}/GNUstep/ColorPickers/WheelPicker.bundle
+%attr(755,root,root) %{_libdir}/GNUstep/ColorPickers/WheelPicker.bundle/WheelPicker
+%{_libdir}/GNUstep/ColorPickers/WheelPicker.bundle/Resources
+%{_libdir}/GNUstep/ColorPickers/WheelPicker.bundle/stamp.make
+
+%{_libdir}/GNUstep/Images
+%{_libdir}/GNUstep/KeyBindings
+
+%dir %{_libdir}/GNUstep/Libraries/gnustep-gui
+%dir %{_libdir}/GNUstep/Libraries/gnustep-gui/Versions
+%dir %{_libdir}/GNUstep/Libraries/gnustep-gui/Versions/%{ver}
+%dir %{_libdir}/GNUstep/Libraries/gnustep-gui/Versions/%{ver}/Resources
+%{_libdir}/GNUstep/Libraries/gnustep-gui/Versions/%{ver}/Resources/*.plist
+%{_libdir}/GNUstep/Libraries/gnustep-gui/Versions/%{ver}/Resources/English.lproj
+%lang(eo) %{_libdir}/GNUstep/Libraries/gnustep-gui/Versions/%{ver}/Resources/Esperanto.lproj
+%lang(fr) %{_libdir}/GNUstep/Libraries/gnustep-gui/Versions/%{ver}/Resources/French.lproj
+%lang(de) %{_libdir}/GNUstep/Libraries/gnustep-gui/Versions/%{ver}/Resources/German.lproj
+%lang(it) %{_libdir}/GNUstep/Libraries/gnustep-gui/Versions/%{ver}/Resources/Italian.lproj
+%lang(jbo) %{_libdir}/GNUstep/Libraries/gnustep-gui/Versions/%{ver}/Resources/Lojban.lproj
+%lang(es) %{_libdir}/GNUstep/Libraries/gnustep-gui/Versions/%{ver}/Resources/Spanish.lproj
+
+%dir %{_libdir}/GNUstep/PostScript
+%{_libdir}/GNUstep/PostScript/GSProlog.ps
+%dir %{_libdir}/GNUstep/PostScript/PPD
+%{_libdir}/GNUstep/PostScript/PPD/English.lproj
+
+%dir %{_libdir}/GNUstep/Services
+
+%dir %{_libdir}/GNUstep/Services/GSspell.service
+%attr(755,root,root) %{_libdir}/GNUstep/Services/GSspell.service/GSspell
+%{_libdir}/GNUstep/Services/GSspell.service/Resources
+
+%{_libdir}/GNUstep/Sounds
+
+%files devel
 %defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/libgnustep-gui.so
+%{_includedir}/AppKit
+%{_includedir}/Cocoa
+%{_includedir}/GNUstepGUI
+%{_includedir}/gnustep/gui
+
+%docdir %{_datadir}/GNUstep/Documentation
+%{_datadir}/GNUstep/Documentation/Developer/Gui/Additions
+%{_datadir}/GNUstep/Documentation/Developer/Gui/General
+%{_datadir}/GNUstep/Documentation/Developer/Gui/ProgrammingManual
+%{_datadir}/GNUstep/Documentation/Developer/Gui/Reference
+%{_infodir}/AppKit.info*
+
+%{_datadir}/GNUstep/Makefiles/Additional/gui.make
This page took 0.097332 seconds and 4 git commands to generate.