X-Git-Url: https://git.pld-linux.org/?p=packages%2Fgnustep-back.git;a=blobdiff_plain;f=gnustep-back.spec;h=2f63b15e3fef549c0b2ee46369453d05ea2e31fe;hp=8424b3c7d117d3fe04397157797b75516825bc59;hb=HEAD;hpb=e2bc31f1821f5d00df5a11e4466a428ffcde3879 diff --git a/gnustep-back.spec b/gnustep-back.spec index 8424b3c..2f63b15 100644 --- a/gnustep-back.spec +++ b/gnustep-back.spec @@ -1,159 +1,185 @@ +# TODO: +# - symlink Helvetica from ghostscript-fonts-std? +# +# Conditional build: +%bcond_without art # art backend +%bcond_with dps # xdps backend +%bcond_without cairo # cairo backend +%bcond_with glitz # glitz support in cairo backend (requires cairo built with glitz) +# Summary: The GNUstep backend bundle -Summary(pl): Pakiet backendowy GNUstep +Summary(pl.UTF-8): Pakiet backendowy GNUstep Name: gnustep-back -Version: 0.8.8 +Version: 0.24.0 Release: 1 -License: LGPL/GPL +License: LGPL v2+ (libraries), GPL v3+ (applicatinos) Vendor: The GNUstep Project Group: X11/Libraries Source0: ftp://ftp.gnustep.org/pub/gnustep/core/%{name}-%{version}.tar.gz -# Source0-md5: 20c2d2f4f44bac053f7df02025c968d5 -Patch0: %{name}-xdps-fix.patch +# Source0-md5: 0b8393832bd928b9d3ec4eb68d7f6564 +Patch0: %{name}-format.patch URL: http://www.gnustep.org/ -BuildRequires: OpenGL-devel -BuildRequires: WindowMaker-devel -BuildRequires: XFree86-devel -BuildRequires: XFree86-DPS-devel -BuildRequires: freetype-devel >= 2.1.4 -BuildRequires: gnustep-gui-devel >= 0.8.7 -BuildRequires: libart_lgpl-devel -BuildRequires: xft-devel -Requires: OpenGL -Requires: gnustep-gui +BuildRequires: OpenGL-GLX-devel +%{?with_dps:BuildRequires: X11-DPS-devel} +%{?with_cairo:BuildRequires: cairo-devel >= 1.0} +%{?with_cairo:BuildRequires: fontconfig-devel} +%{?with_art:BuildRequires: freetype-devel >= 1:2.1.8} +%{?with_glitz:BuildRequires: glitz-devel} +BuildRequires: gnustep-gui-devel >= %{version} +%{?with_art:BuildRequires: libart_lgpl-devel} +BuildRequires: libtiff-devel +BuildRequires: pkgconfig +BuildRequires: xorg-lib-libXcursor-devel +BuildRequires: xorg-lib-libXext-devel +BuildRequires: xorg-lib-libXfixes-devel +BuildRequires: xorg-lib-libXft-devel +BuildRequires: xorg-lib-libXmu-devel +%{?with_cairo:BuildRequires: xorg-lib-libXrender-devel} +%{?with_dps:BuildRequires: xorg-lib-libXt-devel} +Requires: gnustep-gui >= %{version} +Obsoletes: gnustep-back-devel +%{!?with_dps:Obsoletes: gnustep-back-xdps} Obsoletes: gnustep-xgps Conflicts: gnustep-core BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) -%define _prefix /usr/lib/GNUstep - -%define _noautoreqdep libGL.so.1 libGLU.so.1 - -%define libcombo gnu-gnu-gnu -%define gsos linux-gnu -%ifarch %{ix86} -%define gscpu ix86 -%else -# also s/alpha.*/alpha/, but we use only "alpha" arch for now -%define gscpu %{_target_cpu} -%endif +# bundles version (echo %{version} | cut -d. -f1,2 | tr -d .) +%define bver 024 %description This is a backend for the GNUstep gui Library which allows you to use -the GNUstep gui Library on an X Windows System (other backends will +the GNUstep gui Library on an X Window System (other backends will be added later to allow you to use the GNUstep gui Library in other windowing environments). This package contains common part and xlib graphics backend. -%description -l pl -To jest backend dla biblioteki GNUstep GUI, pozwalaj±cy na u¿ywanie -biblioteki graficznego interfejsu u¿ytkownika GNUstep pod systemem X -Window (inne backendy, pozwalaj±ce na u¿ywanie biblioteki GNUstep GUI -w innych ¶rodowiskach okienkowych, zostan± dodane pó¼niej). +%description -l pl.UTF-8 +To jest backend dla biblioteki GNUstep GUI, pozwalający na używanie +biblioteki graficznego interfejsu użytkownika GNUstep pod systemem X +Window (inne backendy, pozwalające na używanie biblioteki GNUstep GUI +w innych środowiskach okienkowych, zostaną dodane później). -Ten pakiet zawiera czê¶æ wspóln± i backend graficzny xlib. +Ten pakiet zawiera część wspólną i backend graficzny xlib. %package art Summary: GNUstep graphics backend - art -Summary(pl): Graficzny backend GNUstep - art +Summary(pl.UTF-8): Graficzny backend GNUstep - art Group: X11/Libraries -Requires: %{name} = %{version} -Requires: freetype >= 2.1.4 +Requires: %{name} = %{version}-%{release} +Requires: freetype >= 1:2.1.8 Conflicts: gnustep-core %description art GNUstep graphics backend - art. -%description art -l pl +%description art -l pl.UTF-8 Graficzny backend GNUstep - art. +%package cairo +Summary: GNUstep graphics backend - cairo +Summary(pl.UTF-8): Graficzny backend GNUstep - cairo +Group: X11/Libraries +Requires: %{name} = %{version}-%{release} +Requires: cairo >= 1.0 + +%description cairo +GNUstep graphics backend - cairo. + +%description cairo -l pl.UTF-8 +Graficzny backend GNUstep - cairo. + %package xdps Summary: GNUstep graphics backend - xdps -Summary(pl): Graficzny backend GNUstep - xdps +Summary(pl.UTF-8): Graficzny backend GNUstep - xdps Group: X11/Libraries -Requires: %{name} = %{version} +Requires: %{name} = %{version}-%{release} Obsoletes: gnustep-xdps Conflicts: gnustep-core %description xdps GNUstep graphics backend - xdps. -%description xdps -l pl +%description xdps -l pl.UTF-8 Graficzny backend GNUstep - xdps. -%package devel -Summary: Headers for GNUstep backends -Summary(pl): Pliki nag³ówkowe backendów GNUstep -Group: X11/Development/Libraries -Requires: %{name} = %{version} -Requires: XFree86-devel -Requires: gnustep-gui-devel >= 0.8.7 -Requires: xft-devel -Obsoletes: gnustep-xdps-devel -Obsoletes: gnustep-xgps-devel -Conflicts: gnustep-core - -%description devel -This package contains development headers for GNUstep backends. It -includes also files specific for all x11 graphic backends (xlib, -art, xdps). - -%description devel -l pl -Ten pakiet zawiera pliki nag³ówkowe dla backendów GNUstep, w tym pliki -specyficzne dla wszystkich backendów graficznych dla x11 (xlib, art, -xdps). - %prep %setup -q %patch0 -p1 +%if %{with cairo} +# hack cairo header - objc doesn't allow #defines in #include +sed -e 's,FT_FREETYPE_H,,' /usr/include/cairo/cairo-ft.h > \ + Headers/cairo-ft.h +%endif + +# prepare the trees (for art, cairo, xdps, xlib backends) +echo * > files.list +%if %{with art} +install -d back-art +cp -a `cat files.list` back-art +%endif +%if %{with cairo} +install -d back-cairo +cp -a `cat files.list` back-cairo +%endif +%if %{with dps} +install -d back-xdps +cp -a `cat files.list` back-xdps +%endif +ln -sf . back-xlib + %build -. %{_prefix}/System/Library/Makefiles/GNUstep.sh -for g in art xdps xlib ; do +export GNUSTEP_MAKEFILES=%{_datadir}/GNUstep/Makefiles +export GNUSTEP_FLATTENED=yes +export GNUSTEP_INSTALLATION_DOMAIN=SYSTEM + +for g in %{?with_art:art} %{?with_cairo:cairo} %{?with_dps:xdps} xlib ; do +cd back-$g if [ "$g" = "xlib" ]; then - INC='--with-include-flags=-I/usr/include/freetype2' NAME="back" else - INC= NAME="back-$g" fi +if [ "$g" = "cairo" ]; then + CPPFLAGS="%{rpmcppflags} -I/usr/include/freetype2" +fi %configure \ + %{!?with_glitz:--disable-glitz} \ --enable-graphics=$g \ - --with-name=$NAME \ - $INC + --with-name=$NAME %{__make} \ messages=yes -cp -f back.make back-$g.make -# preserve timestamp of config.h -cp -pf config.h config-$g.h +cd .. +done +%{__make} -C Documentation +%install +rm -rf $RPM_BUILD_ROOT +export GNUSTEP_MAKEFILES=%{_datadir}/GNUstep/Makefiles +export GNUSTEP_FLATTENED=yes +export GNUSTEP_INSTALLATION_DOMAIN=SYSTEM + +for g in %{?with_art:art} %{?with_cairo:cairo} %{?with_dps:xdps} xlib ; do if [ "$g" = "xlib" ]; then NAME="back" else NAME="back-$g" fi -# hack - restore timestamps to prevent rebuilding -cp -pf config-$g.h config.h -cp -pf config.h Source/%{gscpu}/%{gsos}/config.h -touch config.status -r config.h -%{__make} install \ - GNUSTEP_INSTALLATION_DIR=$RPM_BUILD_ROOT%{_prefix}/System \ +%{__make} install -C back-$g \ + DESTDIR=$RPM_BUILD_ROOT \ BUILD_GRAPHICS="$g" \ BACKEND_NAME="$NAME" done -%{__make} -C Documentation - -%install - -. %{_prefix}/System/Library/Makefiles/GNUstep.sh - %{__make} install -C Documentation \ - GNUSTEP_INSTALLATION_DIR=$RPM_BUILD_ROOT%{_prefix}/System \ + DESTDIR=$RPM_BUILD_ROOT + # not (yet?) supported by rpm-compress-doc -#find $RPM_BUILD_ROOT%{_prefix}/System/Library/Documentation -type f | xargs gzip -9nf +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 @@ -164,32 +190,47 @@ rm -rf $RPM_BUILD_ROOT %files %defattr(644,root,root,755) %doc ChangeLog -%docdir %{_prefix}/System/Library/Documentation -%{_prefix}/System/Library/Documentation/Developer/Back -%dir %{_prefix}/System/Library/Bundles/libgnustep-back.bundle -%{_prefix}/System/Library/Bundles/libgnustep-back.bundle/Resources -%attr(755,root,root) %{_prefix}/System/Library/Bundles/libgnustep-back.bundle/%{gscpu} +%docdir %{_datadir}/GNUstep/Documentation +%{_datadir}/GNUstep/Documentation/Developer/Back -%attr(755,root,root) %{_prefix}/System/Tools/%{gscpu}/%{gsos}/%{libcombo}/* +%attr(755,root,root) %{_bindir}/font_cacher +%attr(755,root,root) %{_bindir}/gpbs +%{_mandir}/man1/gpbs.1* + +%dir %{_libdir}/GNUstep/Bundles/libgnustep-back-%{bver}.bundle +%attr(755,root,root) %{_libdir}/GNUstep/Bundles/libgnustep-back-%{bver}.bundle/libgnustep-back-%{bver} +%{_libdir}/GNUstep/Bundles/libgnustep-back-%{bver}.bundle/Resources +%{_libdir}/GNUstep/Bundles/libgnustep-back-%{bver}.bundle/stamp.make + +%dir %{_libdir}/GNUstep/Fonts +# XXX: n0190{0,2,4,6}{3,4}.{pfb,afm,pfm} - symlink from ghostscript-fonts-std? +%{_libdir}/GNUstep/Fonts/Helvetica.nfont + +%if %{with art} %files art %defattr(644,root,root,755) -%dir %{_prefix}/System/Library/Bundles/libgnustep-back-art.bundle -%{_prefix}/System/Library/Bundles/libgnustep-back-art.bundle/Resources -%attr(755,root,root) %{_prefix}/System/Library/Bundles/libgnustep-back-art.bundle/%{gscpu} +%dir %{_libdir}/GNUstep/Bundles/libgnustep-back-art-%{bver}.bundle +%attr(755,root,root) %{_libdir}/GNUstep/Bundles/libgnustep-back-art-%{bver}.bundle/libgnustep-back-art-%{bver} +%{_libdir}/GNUstep/Bundles/libgnustep-back-art-%{bver}.bundle/Resources +%{_libdir}/GNUstep/Bundles/libgnustep-back-art-%{bver}.bundle/stamp.make +%endif -%files xdps +%if %{with cairo} +%files cairo %defattr(644,root,root,755) -%dir %{_prefix}/System/Library/Bundles/libgnustep-back-xdps.bundle -%{_prefix}/System/Library/Bundles/libgnustep-back-xdps.bundle/Resources -%attr(755,root,root) %{_prefix}/System/Library/Bundles/libgnustep-back-xdps.bundle/%{gscpu} +%dir %{_libdir}/GNUstep/Bundles/libgnustep-back-cairo-%{bver}.bundle +%attr(755,root,root) %{_libdir}/GNUstep/Bundles/libgnustep-back-cairo-%{bver}.bundle/libgnustep-back-cairo-%{bver} +%{_libdir}/GNUstep/Bundles/libgnustep-back-cairo-%{bver}.bundle/Resources +%{_libdir}/GNUstep/Bundles/libgnustep-back-cairo-%{bver}.bundle/stamp.make +%endif -%files devel +%if %{with dps} +%files xdps %defattr(644,root,root,755) -%{_prefix}/System/Library/Headers/gnustep/gsc -%{_prefix}/System/Library/Headers/gnustep/x11 - -%{_prefix}/System/Library/Headers/gnustep/xlib -%{_prefix}/System/Library/Headers/gnustep/art -%{_prefix}/System/Library/Headers/gnustep/xdps +%dir %{_libdir}/GNUstep/Bundles/libgnustep-back-xdps-%{bver}.bundle +%attr(755,root,root) %{_libdir}/GNUstep/Bundles/libgnustep-back-xdps-%{bver}.bundle/libgnustep-back-xdps-%{bver} +%{_libdir}/GNUstep/Bundles/libgnustep-back-xdps-%{bver}.bundle/Resources +%{_libdir}/GNUstep/Bundles/libgnustep-back-xdps-%{bver}.bundle/stamp.make +%endif