فهرست منبع

- add with_x11 option requires for X11 frontends like gv - fix GCFLAGS patching - strip down installation a lot more - make versions of all involved parts configurable

Ralf S. Engelschall 24 سال پیش
والد
کامیت
6b34504771
1فایلهای تغییر یافته به همراه51 افزوده شده و 14 حذف شده
  1. 51 14
      ghostscript/ghostscript.spec

+ 51 - 14
ghostscript/ghostscript.spec

@@ -24,9 +24,17 @@
 ##
 
 #   package versions
-%define       V_real 7.04
-%define       V_mini 704
-%define       V_font 6.0
+%define       V_real       7.04
+%define       V_mini       704
+%define       V_font       6.0
+%define       V_jpeg       6b
+%define       V_png        1.2.1
+%define       V_zlib       1.1.4
+
+#   package options
+%ifndef       with_x11
+%define       with_x11     no
+%endif
 
 #   package information
 Name:         ghostscript
@@ -38,13 +46,13 @@ Distribution: OpenPKG [BASE]
 Group:        Graphics
 License:      Aladdin
 Version:      %{V_real}
-Release:      20020926
+Release:      20020927
 
 #   list of sources
 Source0:      ftp://mirror.cs.wisc.edu/pub/mirrors/ghost/AFPL/gs%{V_mini}/ghostscript-%{V_real}.tar.bz2
-Source1:      ftp://mirror.cs.wisc.edu/pub/mirrors/ghost/AFPL/gs%{V_mini}/jpegsrc.v6b.tar.gz
-Source2:      ftp://mirror.cs.wisc.edu/pub/mirrors/ghost/AFPL/gs%{V_mini}/libpng-1.2.1.tar.gz
-Source3:      ftp://mirror.cs.wisc.edu/pub/mirrors/ghost/AFPL/gs%{V_mini}/zlib-1.1.4.tar.gz
+Source1:      ftp://mirror.cs.wisc.edu/pub/mirrors/ghost/AFPL/gs%{V_mini}/jpegsrc.v%{V_jpeg}.tar.gz
+Source2:      ftp://mirror.cs.wisc.edu/pub/mirrors/ghost/AFPL/gs%{V_mini}/libpng-%{V_png}.tar.gz
+Source3:      ftp://mirror.cs.wisc.edu/pub/mirrors/ghost/AFPL/gs%{V_mini}/zlib-%{V_zlib}.tar.gz
 Source4:      ftp://mirror.cs.wisc.edu/pub/mirrors/ghost/AFPL/fonts/ghostscript-fonts-std-%{V_font}.tar.gz
 Source5:      ftp://mirror.cs.wisc.edu/pub/mirrors/ghost/AFPL/fonts/ghostscript-fonts-other-%{V_font}.tar.gz
 
@@ -53,6 +61,10 @@ Prefix:       %{l_prefix}
 BuildRoot:    %{l_buildroot}
 BuildPreReq:  OpenPKG, openpkg >= 20020206, gcc
 PreReq:       OpenPKG, openpkg >= 20020206
+%if "%{with_x11}" == "yes"
+BuildPreReq:  X11
+PreReq:       X11
+%endif
 AutoReq:      no
 AutoReqProv:  no
 
@@ -63,6 +75,9 @@ AutoReqProv:  no
     language capability built in. It also works with Portable Document Format
     files (PDF), providing the same set of functionality as with PostScript.
 
+    Options: 
+    --define 'with_x11 %{with_x11}'
+
 %prep
     %setup0 -q -c
     %setup1 -q -T -D -a 1
@@ -70,9 +85,9 @@ AutoReqProv:  no
     %setup3 -q -T -D -a 3
     %setup4 -q -T -D -a 4
     %setup5 -q -T -D -a 5
-    mv jpeg-6b      gs%{version}/jpeg
-    mv libpng-1.2.1 gs%{version}/libpng
-    mv zlib-1.1.4   gs%{version}/zlib
+    mv jpeg-%{V_jpeg}  gs%{version}/jpeg
+    mv libpng-%{V_png} gs%{version}/libpng
+    mv zlib-%{V_zlib}  gs%{version}/zlib
 
 %build
     mtcflags=""
@@ -83,14 +98,28 @@ AutoReqProv:  no
         *-solaris* ) mtcflags=""; mtldflags="-lpthread" ;;
     esac
     cd gs%{version}
+%if "%{with_x11}" == "yes"
+    x11_inc="-I`%{l_prefix}/etc/rc --query x11_incdir`"
+    x11_lib="-L`%{l_prefix}/etc/rc --query x11_libdir`"
+%else
+    x11_inc=""
+    x11_lib=""
+%endif
     %{l_shtool} subst \
          -e "s;^STDLIBS=-lpthread -lm;STDLIBS=$mtldflags -lm;" \
          -e "s;^prefix = /usr/local;prefix = %{l_prefix};" \
          -e "s;CC=gcc;CC=%{l_cc};" \
-         -e "s;GCFLAGS=.*(-f.*)\$;GCFLAGS=\$1;" \
+         -e "s;GCFLAGS=.*\\(-fno.*\\)\$;GCFLAGS=\$1;" \
          -e "s;XCFLAGS=.*\$;XCFLAGS=$mtcflags;" \
+         -e "s;XINCLUDE=.*\$;XINCLUDE=$x11_inc;" \
+         -e "s;XLIBDIRS=.*\$;XLIBDIRS=$x11_lib;" \
+         src/unix-gcc.mak
+%if "%{with_x11}" != "yes"
+    %{l_shtool} subst \
+         -e 's;DEVICE_DEVS=.*$;DEVICE_DEVS=;' \
          src/unix-gcc.mak
-    %{l_make} %{l_mflags} -f src/unix-gcc.mak DEVICE_DEVS=""
+%endif
+    %{l_make} %{l_mflags} -f src/unix-gcc.mak
 
 %install
     rm -rf $RPM_BUILD_ROOT
@@ -103,9 +132,17 @@ AutoReqProv:  no
         $RPM_BUILD_ROOT%{l_prefix}/share/ghostscript/fonts
     %{l_shtool} install -c fonts/* \
         $RPM_BUILD_ROOT%{l_prefix}/share/ghostscript/fonts/
+    rm -rf $RPM_BUILD_ROOT%{l_prefix}/share/ghostscript/%{V_real}/doc
     rm -rf $RPM_BUILD_ROOT%{l_prefix}/man/de
-    for man in eps2eps.1 gsbj.1 gsdj.1 gslj.1 gsdj500.1 ps2pdf12.1 ps2pdf13.1; do
-        rm -rf $RPM_BUILD_ROOT%{l_prefix}/man/man1/$man
+    for prg in eps2eps gsbj gsdj gslj gsdj500 ps2pdf12 ps2pdf13; do
+        rm -f $RPM_BUILD_ROOT%{l_prefix}/bin/$prg
+        rm -f $RPM_BUILD_ROOT%{l_prefix}/man/man1/$prg.1
+    done
+    for prg in fixmswrd.pl lprsetup.sh pj-gs.sh pv.sh sysvlp.sh unix-lpr.sh; do
+        rm -f $RPM_BUILD_ROOT%{l_prefix}/bin/$prg
+    done
+    for man in ansi2knr.1; do
+        rm -f $RPM_BUILD_ROOT%{l_prefix}/man/man1/$man
     done
     strip $RPM_BUILD_ROOT%{l_prefix}/bin/* >/dev/null 2>&1 || true
     %{l_rpmtool} files -v -ofiles -r$RPM_BUILD_ROOT %{l_files_std}