ghostscript.spec 6.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187
  1. ##
  2. ## ghostscript.spec -- OpenPKG RPM Specification
  3. ## Copyright (c) 2000-2004 The OpenPKG Project <http://www.openpkg.org/>
  4. ## Copyright (c) 2000-2004 Ralf S. Engelschall <rse@engelschall.com>
  5. ## Copyright (c) 2000-2004 Cable & Wireless <http://www.cw.com/>
  6. ##
  7. ## Permission to use, copy, modify, and distribute this software for
  8. ## any purpose with or without fee is hereby granted, provided that
  9. ## the above copyright notice and this permission notice appear in all
  10. ## copies.
  11. ##
  12. ## THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
  13. ## WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
  14. ## MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
  15. ## IN NO EVENT SHALL THE AUTHORS AND COPYRIGHT HOLDERS AND THEIR
  16. ## CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
  17. ## SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
  18. ## LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
  19. ## USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
  20. ## ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
  21. ## OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
  22. ## OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  23. ## SUCH DAMAGE.
  24. ##
  25. # package versions
  26. %define V_real 8.13
  27. %define V_comp 813
  28. %define V_font_std 8.11
  29. %define V_font_other 6.0
  30. %define V_jpeg 6b
  31. %define V_png 1.2.5
  32. %define V_zlib 1.2.1
  33. # package information
  34. Name: ghostscript
  35. Summary: Ghostscript, Postscript and PDF Rendering Engine
  36. URL: http://www.cs.wisc.edu/~ghost/
  37. Vendor: Aladdin Enterprises
  38. Packager: The OpenPKG Project
  39. Distribution: OpenPKG
  40. Class: BASE
  41. Group: Graphics
  42. License: Aladdin
  43. Version: %{V_real}
  44. Release: 20040205
  45. # package options
  46. %option with_x11 yes
  47. %option with_a4 yes
  48. # list of sources
  49. Source0: ftp://mirror.cs.wisc.edu/pub/mirrors/ghost/AFPL/gs%{V_comp}/ghostscript-%{V_real}.tar.bz2
  50. Source1: ftp://ftp.uu.net/graphics/jpeg/jpegsrc.v%{V_jpeg}.tar.gz
  51. Source2: http://osdn.dl.sourceforge.net/sourceforge/libpng/libpng-%{V_png}.tar.gz
  52. Source3: http://www.gzip.org/zlib/zlib-%{V_zlib}.tar.gz
  53. Source4: ftp://mirror.cs.wisc.edu/pub/mirrors/ghost/AFPL/fonts/ghostscript-fonts-std-%{V_font_std}.tar.gz
  54. Source5: ftp://mirror.cs.wisc.edu/pub/mirrors/ghost/AFPL/fonts/ghostscript-fonts-other-%{V_font_other}.tar.gz
  55. Patch0: ghostscript.patch
  56. # build information
  57. Prefix: %{l_prefix}
  58. BuildRoot: %{l_buildroot}
  59. BuildPreReq: OpenPKG, openpkg >= 20040130, gcc, make
  60. PreReq: OpenPKG, openpkg >= 20040130
  61. %if "%{with_x11}" == "yes"
  62. BuildPreReq: X11
  63. PreReq: X11
  64. %endif
  65. AutoReq: no
  66. AutoReqProv: no
  67. %description
  68. Ghostscript is an interpreter for the PostScript language, with the
  69. ability to convert PostScript language files to many raster formats,
  70. view them on displays, and print them on printers that don't have
  71. PostScript language capability built in. It also works with Portable
  72. Document Format files (PDF), providing the same set of functionality
  73. as with PostScript.
  74. %track
  75. prog ghostscript = {
  76. version = 8.13
  77. url = ftp://mirror.cs.wisc.edu/pub/mirrors/ghost/AFPL/
  78. regex = gs(\d+)
  79. url = ftp://mirror.cs.wisc.edu/pub/mirrors/ghost/AFPL/gs__NEWVER__/
  80. regex = ghostscript-(__VER__)\.tar\.bz2
  81. }
  82. prog ghostscript:jpegsrc = {
  83. version = v6b
  84. url = ftp://ftp.uu.net/graphics/jpeg/
  85. regex = jpegsrc.(__VER__)\.tar\.gz
  86. }
  87. prog ghostscript:png = {
  88. version = 1.2.5
  89. url = http://prdownloads.sourceforge.net/libpng/
  90. regex = libpng-(\d+\.\d+\.\d+)\.tar\.gz
  91. }
  92. prog ghostscript:zlib = {
  93. version = 1.2.1
  94. url = http://www.gzip.org/zlib/
  95. regex = zlib-(__VER__)\.tar\.gz
  96. }
  97. %prep
  98. %setup -q -c
  99. %setup -q -T -D -a 1
  100. %setup -q -T -D -a 2
  101. %setup -q -T -D -a 3
  102. %setup -q -T -D -a 4
  103. %setup -q -T -D -a 5
  104. ( cd ghostscript-%{version}
  105. %patch -p0
  106. ) || exit $?
  107. mv jpeg-%{V_jpeg} ghostscript-%{version}/jpeg
  108. mv libpng-%{V_png} ghostscript-%{version}/libpng
  109. mv zlib-%{V_zlib} ghostscript-%{version}/zlib
  110. %build
  111. mtcflags=""
  112. mtldflags=""
  113. case "%{l_platform -t}" in
  114. *-freebsd* ) mtcflags=""; mtldflags="-lc_r" ;;
  115. *-linux* ) mtcflags=""; mtldflags="-lpthread" ;;
  116. *-sunos* ) mtcflags=""; mtldflags="-lpthread" ;;
  117. esac
  118. cd ghostscript-%{version}
  119. %if "%{with_x11}" == "yes"
  120. x11_inc="-I`%{l_prefix}/etc/rc --query x11_incdir`"
  121. x11_lib="-L`%{l_prefix}/etc/rc --query x11_libdir`"
  122. %else
  123. x11_inc=""
  124. x11_lib=""
  125. %endif
  126. %if "%{with_a4}" == "yes"
  127. mtcflags="$mtcflags -DA4"
  128. %endif
  129. %{l_shtool} subst \
  130. -e "s;^STDLIBS=-lpthread -lm;STDLIBS=$mtldflags -lm;" \
  131. -e "s;^prefix = /usr/local;prefix = %{l_prefix};" \
  132. -e "s;CC=gcc;CC=%{l_cc};" \
  133. -e "s;GCFLAGS=.*\\(-fno.*\\)\$;GCFLAGS=\$1;" \
  134. -e "s;XCFLAGS=.*\$;XCFLAGS=$mtcflags;" \
  135. -e "s;XINCLUDE=.*\$;XINCLUDE=$x11_inc;" \
  136. -e "s;XLIBDIRS=.*\$;XLIBDIRS=$x11_lib;" \
  137. src/unix-gcc.mak
  138. %if "%{with_x11}" != "yes"
  139. %{l_shtool} subst \
  140. -e 's;DEVICE_DEVS=.*$;DEVICE_DEVS=;' \
  141. src/unix-gcc.mak
  142. %endif
  143. %{l_make} %{l_mflags} -f src/unix-gcc.mak
  144. %install
  145. rm -rf $RPM_BUILD_ROOT
  146. ( cd ghostscript-%{version}
  147. %{l_shtool} mkdir -f -p -m 755 $RPM_BUILD_ROOT%{l_prefix}
  148. %{l_make} %{l_mflags} -f src/unix-gcc.mak install DEVICE_DEVS="" \
  149. prefix=$RPM_BUILD_ROOT%{l_prefix}
  150. ) || exit $?
  151. %{l_shtool} mkdir -f -p -m 755 \
  152. $RPM_BUILD_ROOT%{l_prefix}/share/ghostscript/fonts
  153. %{l_shtool} install -c fonts/* \
  154. $RPM_BUILD_ROOT%{l_prefix}/share/ghostscript/fonts/
  155. rm -rf $RPM_BUILD_ROOT%{l_prefix}/share/ghostscript/%{V_real}/doc
  156. rm -rf $RPM_BUILD_ROOT%{l_prefix}/man/de
  157. for prg in eps2eps gsbj gsdj gslj gsdj500 ps2pdf12 ps2pdf13; do
  158. rm -f $RPM_BUILD_ROOT%{l_prefix}/bin/$prg
  159. rm -f $RPM_BUILD_ROOT%{l_prefix}/man/man1/$prg.1
  160. done
  161. mv $RPM_BUILD_ROOT%{l_prefix}/bin/ps2pdf14 \
  162. $RPM_BUILD_ROOT%{l_prefix}/bin/ps2pdf
  163. for prg in fixmswrd.pl lprsetup.sh pj-gs.sh pv.sh sysvlp.sh unix-lpr.sh; do
  164. rm -f $RPM_BUILD_ROOT%{l_prefix}/bin/$prg
  165. done
  166. for man in ansi2knr.1; do
  167. rm -f $RPM_BUILD_ROOT%{l_prefix}/man/man1/$man
  168. done
  169. strip $RPM_BUILD_ROOT%{l_prefix}/bin/* >/dev/null 2>&1 || true
  170. %{l_rpmtool} files -v -ofiles -r$RPM_BUILD_ROOT %{l_files_std}
  171. %files -f files
  172. %clean
  173. rm -rf $RPM_BUILD_ROOT