xv.spec 4.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131
  1. ##
  2. ## xv.spec -- OpenPKG RPM Specification
  3. ## Copyright (c) 2000-2003 Cable & Wireless Deutschland GmbH
  4. ## Copyright (c) 2000-2003 The OpenPKG Project <http://www.openpkg.org/>
  5. ## Copyright (c) 2000-2003 Ralf S. Engelschall <rse@engelschall.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 information
  26. Name: xv
  27. Summary: X Window System Graphics Viewer
  28. URL: http://www.trilon.com/xv/
  29. Vendor: John Bradley
  30. Packager: The OpenPKG Project
  31. Distribution: OpenPKG [EVAL]
  32. Group: XWindow
  33. License: XV
  34. Version: 3.10a
  35. Release: 20021201
  36. # list of sources
  37. Source0: ftp://ftp.cis.upenn.edu/pub/xv/xv-%{version}.tar.gz
  38. Source1: ftp://ftp.trilon.com/pub/xv/xv-%{version}-png-1.2d.tar.gz
  39. Patch0: ftp://ftp.cis.upenn.edu/pub/xv/xv-%{version}.JPEG-patch
  40. Patch1: ftp://ftp.cis.upenn.edu/pub/xv/xv-%{version}.TIFF-patch
  41. Patch2: ftp://ftp.trilon.com/pub/xv/patches/xvpng-1.2d-fix3.patch
  42. Patch3: xv.patch
  43. # build information
  44. Prefix: %{l_prefix}
  45. BuildRoot: %{l_buildroot}
  46. BuildPreReq: OpenPKG, openpkg >= 20020206, X11, jpeg, png, zlib, tiff
  47. PreReq: OpenPKG, openpkg >= 20020206, X11, jpeg, png, zlib, tiff, gzip
  48. AutoReq: no
  49. AutoReqProv: no
  50. %description
  51. XV is an interactive image manipulation program for the X Window
  52. System. It can operate on images in the GIF, JPEG, TIFF, PBM, PGM,
  53. PPM, XPM, X11 bitmap, Sun Rasterfile, Targa, RLE, RGB, BMP, PCX, FITS,
  54. and PM formats on all known types of X displays. It can generate
  55. PostScript files, and if you have ghostscript (version 2.6 or above)
  56. installed on your machine, it can also display them.
  57. This OpenPKG copy of xv is patched for use with version 6 of the
  58. Independent JPEG Group's JPEG library. It is also patched for use
  59. with version 3.5.7 of Sam Leffler's TIFF library. It is also patched
  60. to additionally allow for PNG file viewing.
  61. %prep
  62. %setup0 -q
  63. %setup1 -q -T -D -a 1
  64. %patch0 -p0
  65. %patch1 -p0
  66. %patch2 -p0
  67. %patch3 -p1
  68. %{l_patch} -p1 < xvpng.diff
  69. # use our own gunzip command
  70. %{l_shtool} subst \
  71. -e 's;#undef USE_GUNZIP;#define USE_GUNZIP;' \
  72. -e 's;# define GUNZIP "/usr/local/bin/gunzip -q";#define GUNZIP "%{l_prefix}/bin/gunzip -q";' \
  73. config.h
  74. # use our own JPEG, TIFF and PNG libraries
  75. %{l_shtool} subst \
  76. -e 's;\(\tcd $(JPEGDIR)\).*;;' \
  77. -e 's;\(\t( cd $(TIFFDIR) \;\).*;;' \
  78. -e 's;\(JPEGINC = -I\)$(JPEGDIR);\1%{l_prefix}/include;' \
  79. -e 's;\(JPEGLIB = \)$(JPEGDIR)\(/libjpeg.a\);\1%{l_prefix}/lib\2;' \
  80. -e 's;\(PNGINC = -I\)$(PNGDIR);\1%{l_prefix}/include;' \
  81. -e 's;\(PNGLIB = -L\)$(PNGDIR)\(.*\);\1%{l_prefix}/lib\2;' \
  82. -e 's;\(ZLIBINC = -I\)$(ZLIBDIR);\1%{l_prefix}/include;' \
  83. -e 's;\(ZLIBLIB = -L\)$(ZLIBDIR)\(.*\);\1%{l_prefix}/lib\2;' \
  84. -e 's;\(TIFFINC = -I\)$(TIFFDIR);\1%{l_prefix}/include/tiff;' \
  85. -e 's;\(TIFFLIB = \)$(TIFFDIR)\(/libtiff.a\);\1%{l_prefix}/lib\2;' \
  86. Makefile
  87. %build
  88. # build package
  89. CCOPTS="-O"
  90. CCOPTS="$CCOPTS -I`%{l_prefix}/etc/rc --query x11_incdir`"
  91. CCOPTS="$CCOPTS -L`%{l_prefix}/etc/rc --query x11_libdir`"
  92. JPEGLIB=%{l_prefix}/lib/libjpeg.a
  93. %{l_make} %{l_mflags} CCOPTS="$CCOPTS"
  94. %install
  95. rm -rf $RPM_BUILD_ROOT
  96. # create hierarchy
  97. %{l_shtool} mkdir -f -p -m 755 \
  98. $RPM_BUILD_ROOT%{l_prefix}/bin \
  99. $RPM_BUILD_ROOT%{l_prefix}/share \
  100. $RPM_BUILD_ROOT%{l_prefix}/share/%{name} \
  101. $RPM_BUILD_ROOT%{l_prefix}/man/man1
  102. # install package
  103. %{l_make} %{l_mflags} install \
  104. BINDIR=$RPM_BUILD_ROOT%{l_prefix}/bin \
  105. LIBDIR=$RPM_BUILD_ROOT%{l_prefix}/share/%{name} \
  106. MANSUF=1 MANDIR=$RPM_BUILD_ROOT%{l_prefix}/man/man1
  107. # strip binaries
  108. strip $RPM_BUILD_ROOT%{l_prefix}/bin/* 2>/dev/null || true
  109. # determine installation files
  110. %{l_rpmtool} files -v -ofiles -r$RPM_BUILD_ROOT %{l_files_std}
  111. %files -f files
  112. %clean
  113. rm -rf $RPM_BUILD_ROOT