jasper-vl.spec 7.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238
  1. %define build_compat32 %{?_with_compat32:1}%{!?_with_compat32:0}
  2. Name: jasper
  3. Summary: implementation of the JPEG-2000 standard, Part 1
  4. Version: 1.900.1
  5. Release: 10%{?_dist_release}
  6. Group: Applications/Graphics
  7. License: Modified BSD (see LICENSE)
  8. URL: http://www.ece.uvic.ca/~mdadams/jasper/
  9. Source: %{name}-%{version}.zip
  10. Patch1: jasper-1.701.0-GL.patch
  11. # autoconf/automake bits of patch1
  12. Patch2: jasper-1.701.0-GL-ac.patch
  13. # CVE-2007-2721 (bug #240397)
  14. # borrowed from http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=413041;msg=88
  15. Patch3: patch-libjasper-stepsizes-overflow.diff
  16. # borrowed from http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=469786
  17. Patch4: jpc_dec.c.patch
  18. # OpenBSD hardening patches addressing couple of possible integer overflows
  19. # during the memory allocations
  20. # https://bugzilla.redhat.com/show_bug.cgi?id=CVE-2008-3520
  21. Patch5: jasper-1.900.1-CVE-2008-3520.patch
  22. # https://bugzilla.redhat.com/show_bug.cgi?id=CVE-2008-3522
  23. Patch6: jasper-1.900.1-CVE-2008-3522.patch
  24. # add pkg-config support
  25. Patch7: jasper-pkgconfig.patch
  26. Patch8: jasper-1.900.1-CVE-2011-4516-CVE-2011-4517-CERT-VU-887409.patch
  27. Patch9: jasper-CVE-2014-9029.patch
  28. Patch10: jasper-CVE-2014-8137.patch
  29. Patch11: jasper-CVE-2014-8138.patch
  30. # Issues found by static analysis of code
  31. Patch110: jasper-1.900.1-Coverity-BAD_SIZEOF.patch
  32. Patch111: jasper-1.900.1-Coverity-CHECKED_RETURN.patch
  33. Patch112: jasper-1.900.1-Coverity-FORWARD_NULL.patch
  34. Patch113: jasper-1.900.1-Coverity-NULL_RETURNS.patch
  35. Patch114: jasper-1.900.1-Coverity-RESOURCE_LEAK.patch
  36. Patch115: jasper-1.900.1-Coverity-UNREACHABLE.patch
  37. Patch116: jasper-1.900.1-Coverity-UNUSED_VALUE.patch
  38. BuildRoot: %{_tmppath}/%{name}-%{version}-root
  39. BuildRequires: autoconf automake libtool
  40. BuildRequires: freeglut-devel
  41. BuildRequires: libGLU-devel
  42. BuildRequires: libjpeg-devel
  43. BuildRequires: pkgconfig
  44. Requires: %{name}-libs = %{version}-%{release}
  45. Vendor: Project Vine
  46. Distribution: Vine Linux
  47. %description
  48. JasPer is a collection of software (i.e., a library and application
  49. programs) for the coding and manipulation of images. This software
  50. can handle image data in a variety of formats. One such format
  51. supported by JasPer is the JPEG-2000 format defined in ISO/IEC 15444-1.
  52. %package devel
  53. Summary: Include Files and Documentation for jasper
  54. Group: Development/Libraries
  55. Requires: %{name}-libs = %{version}-%{release}
  56. Requires: libjpeg-devel
  57. %description devel
  58. This package contains libjasper, a library implementing the JPEG-2000
  59. image compression standard Part 1.
  60. %package libs
  61. Summary: Runtime libraries for %{name}
  62. Group: System Environment/Libraries
  63. %description libs
  64. This package contains runtime libraries for JasPer.
  65. # compat32
  66. %package -n compat32-%{name}-devel
  67. Summary: Include Files and Documentation for jasper
  68. Group: Development/Libraries
  69. Requires: %{name}-libs = %{version}-%{release}
  70. Requires: compat32-libjpeg-devel
  71. %description -n compat32-%{name}-devel
  72. This package contains libjasper, a library implementing the JPEG-2000
  73. image compression standard Part 1.
  74. %package -n compat32-%{name}-libs
  75. Summary: Runtime libraries for %{name}
  76. Group: System Environment/Libraries
  77. %description -n compat32-%{name}-libs
  78. This package contains runtime libraries for JasPer.
  79. %prep
  80. %setup -q -n %{name}-%{version}
  81. %patch1 -p1 -b .GL
  82. %patch2 -p1 -b .GL-ac
  83. %patch3 -p1 -b .CVE-2007-2721
  84. %patch4 -p1 -b .jpc_dec_assertion
  85. %patch5 -p1 -b .CVE-2008-3520
  86. %patch6 -p1 -b .CVE-2008-3522
  87. %patch7 -p1 -b .pkgconfig
  88. %patch8 -p1 -b .CVE-2011-4516-4517
  89. %patch9 -p1 -b .CVE-2014-9029
  90. %patch10 -p1 -b .CVE-2014-8137-variant2
  91. %patch11 -p1 -b .CVE-2014-8138
  92. %patch110 -p1 -b .BAD_SIZEOF
  93. %patch111 -p1 -b .CHECKED_RETURN
  94. %patch112 -p1 -b .FORWARD_NULL
  95. %patch113 -p1 -b .NULL_RETURNS
  96. %patch114 -p1 -b .RESOURCE_LEAK
  97. %patch115 -p1 -b .UNREACHABLE
  98. %patch116 -p1 -b .UNUSED_VALUE
  99. autoreconf --verbose --force --install
  100. %build
  101. CFLAGS="%{optflags} -fno-strict-overflow" \
  102. %configure --enable-shared --disable-static
  103. make %{?_smp_mflags}
  104. %install
  105. [ -n "$RPM_BUILD_ROOT" -a "$RPM_BUILD_ROOT" != / ] && rm -rf $RPM_BUILD_ROOT
  106. make install DESTDIR=$RPM_BUILD_ROOT
  107. # remove .la
  108. rm -f $RPM_BUILD_ROOT/%{_libdir}/*.la
  109. %clean
  110. [ -n "$RPM_BUILD_ROOT" -a "$RPM_BUILD_ROOT" != / ] && rm -rf $RPM_BUILD_ROOT
  111. %post libs -p /sbin/ldconfig
  112. %postun libs -p /sbin/ldconfig
  113. %post -n compat32-%{name}-libs -p /sbin/ldconfig
  114. %postun -n compat32-%{name}-libs -p /sbin/ldconfig
  115. %files
  116. %defattr(-,root,root)
  117. %doc COPYRIGHT ChangeLog INSTALL LICENSE NEWS README doc
  118. %{_bindir}/*
  119. %{_mandir}/man1/*
  120. %files libs
  121. %defattr(-,root,root)
  122. %{_libdir}/libjasper*.so.*
  123. %files devel
  124. %defattr(-,root,root)
  125. %{_includedir}/jasper
  126. %{_libdir}/libjasper*.so
  127. %{_libdir}/pkgconfig/jasper.pc
  128. # compat32
  129. %if %{build_compat32}
  130. %files -n compat32-%{name}-libs
  131. %defattr(-,root,root)
  132. %{_libdir}/libjasper*.so.*
  133. %files -n compat32-%{name}-devel
  134. %defattr(-,root,root)
  135. %{_libdir}/libjasper*.so
  136. %{_libdir}/pkgconfig/jasper.pc
  137. %endif
  138. %changelog
  139. * Wed Dec 24 2014 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 1.900.1-10
  140. - imported all patches from RawHide.
  141. * Tue Jul 15 2014 Yoji TOYODA <bsyamato@sea.plala.or.jp> 1.900.1-9
  142. - rebuild with libpng-1.6.12
  143. * Thu Apr 14 2011 Ryoichi INAGAKI <ryo1@bc.wakwak.com> 1.900.1-8
  144. - rebuilt with current VineSeed
  145. * Sat May 02 2009 NAKAMURA Kenta <kenta@vinelinux.org> 1.900.1-7
  146. - added compat32 subpackage for x86_64 arch support.
  147. * Sat Sep 06 2008 Daisuke SUZUKI <daisuke@linux.or.jp> 1.900.1-6
  148. - splited out runtime library to sub package
  149. - enable opengl again, add BuildRequires: freeglut-devel
  150. * Wed Jun 25 2008 AKIYAMA Kazuhito <akiyama@yb3.so-net.ne.jp> 1.900.1-5
  151. - remove .la
  152. - add --disable-static to configure option
  153. * Sun Jun 24 2007 Ryoichi INAGAKI <ryo1@bc.wakwak.com> 1.900.1-0vl4
  154. - added Patch0 from VinePlus/4.0
  155. * Thu Jun 21 2007 Satoshi IWAMOTO <satoshi.iwamoto@nifty.ne.jp> 1.900.1-0vl2.1
  156. - add patch100 for fix CVE-2007-2721
  157. - add Vendor/Distributin Tag
  158. * Fri May 25 2007 AKIYAMA Kazuhito <akiyama@yb3.so-net.ne.jp> 1.900.1-0vl3
  159. - remove BuildPrereq: freeglut-devel and Requires freeglut
  160. - add --disable-opengl to configure option
  161. * Fri Mar 16 2007 MATSUBAYASHI Kohji <shaolin@vinelinux.org> 1.900.1-0vl2
  162. - add BuildPreReq: unzip (used in the %%pre section)
  163. * Thu Mar 15 2007 Ryoichi INAGAKI <ryo1@bc.wakwak.com> 1.900.1-0vl1
  164. - new upstream release
  165. * Tue Jan 16 2007 Ryoichi INAGAKI <ryo1@bc.wakwak.com> 1.900.0-0vl1
  166. - new upstream release
  167. - changed Group to System Environment/Libraries
  168. - added --mandir=%{_mandir}
  169. - added %post and %postun section
  170. * Thu Sep 07 2006 NAKAMURA Kenta <kenta@vinelinux.org> 1.701.0-0vl3
  171. - added --libdir=%{_libdir} configure option
  172. * Tue Sep 5 2006 AKIYAMA Kazuhito <akiyama@yb3.so-net.ne.jp> 1.701.0-0vl2
  173. - build with freeglut
  174. - change BuildPrereq and Requires
  175. * Tue Dec 14 2004 Satoshi MACHINO <machino@vinelinux.org> 1.701.0-0vl1
  176. - new upstream version (jasper-1.701.0)
  177. * Sat Nov 15 2003 AKIYAMA Kazuhito <akiyama@yb3.so-net.ne.jp> 1.700.5-0vl2
  178. - rebuild for VineSeedPlus
  179. * Sat Nov 15 2003 AKIYAMA Kazuhito <akiyama@yb3.so-net.ne.jp> 1.700.5-0vl1
  180. - source upgrade
  181. - change spec to build for VineLinux
  182. * Fri Oct 25 2002 Alexander D. Karaivanov <adk@medical-insight.com>
  183. - spec file created