Fix underlinking, #367405
authorJustin Lecher <jlec@gentoo.org>
Wed, 12 Oct 2011 21:11:41 +0000 (21:11 +0000)
committerJustin Lecher <jlec@gentoo.org>
Wed, 12 Oct 2011 21:11:41 +0000 (21:11 +0000)
Package-Manager: portage-2.2.0_alpha67/cvs/Linux x86_64

media-libs/netpbm/ChangeLog
media-libs/netpbm/Manifest
media-libs/netpbm/files/netpbm-10.51.00-underlinking.patch [new file with mode: 0644]
media-libs/netpbm/metadata.xml
media-libs/netpbm/netpbm-10.51.00-r2.ebuild [new file with mode: 0644]

index b522408e57e38ad377ef10be2a9b508699aa60a4..c7e236c6103ba08ee41efc80e77403415054f301 100644 (file)
@@ -1,6 +1,12 @@
 # ChangeLog for media-libs/netpbm
 # Copyright 1999-2011 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/media-libs/netpbm/ChangeLog,v 1.254 2011/10/11 19:44:48 ssuominen Exp $
+# $Header: /var/cvsroot/gentoo-x86/media-libs/netpbm/ChangeLog,v 1.255 2011/10/12 21:11:40 jlec Exp $
+
+*netpbm-10.51.00-r2 (12 Oct 2011)
+
+  12 Oct 2011; Justin Lecher <jlec@gentoo.org> +netpbm-10.51.00-r2.ebuild,
+  +files/netpbm-10.51.00-underlinking.patch, metadata.xml:
+  Fix underlinking, #367405
 
   11 Oct 2011; Samuli Suominen <ssuominen@gentoo.org>
   netpbm-10.51.00-r1.ebuild:
index a08f72c6290b3b36de0c8c8d38d76f286f205903..6651d617e4f670a29db9017aca16fcae0374abdc 100644 (file)
@@ -1,5 +1,5 @@
 -----BEGIN PGP SIGNED MESSAGE-----
-Hash: SHA1
+Hash: SHA512
 
 AUX netpbm-10.31-build.patch 1629 RMD160 4226692b199871b3bfb27a9e6fec97d8ac1a4bf6 SHA1 574bd4443c6dbd8a2508bc2d2e3096cfcc815710 SHA256 eaf363941337718390856c318c8e69114c8fb9dbcea8b07755350dbdabce6323
 AUX netpbm-10.35.0-pnmtopng-zlib.patch 412 RMD160 fbef74327c74badad288454090b79627e2fde0d6 SHA1 08fd7b8e17c0f272cf628582b22f9ecde0d35cc9 SHA256 577a6b5a49c8773ca29adb045132ee71034e3b6f4abf29ff92126adb1ba83a17
@@ -11,22 +11,20 @@ AUX netpbm-10.48.00-pnmtopng-zlib.patch 419 RMD160 d4e51baf414ee3ca3ed2c1e8ba186
 AUX netpbm-10.49.00-sigpower.patch 719 RMD160 ef830e01c14424a8b1d2f8e149d12a601c397c83 SHA1 b765c7e1d8a3148557dcbc49c26d77a8a6ec05d8 SHA256 b4a5304f36384a2f96e5c208089230c7190dc06cb99beccfe826520234f9c6fe
 AUX netpbm-10.51.00-pnmconvol-nooffset.patch 3930 RMD160 c54357f13fc1147b8020b523b9c28c5ffd381647 SHA1 e3bf297d209783bfe15d2257b47dc3ed9b492826 SHA256 d9c7f70e58d50dac4998157021ac2fef92822d1abd9b9d060384b195e4f1cabb
 AUX netpbm-10.51.00-ppmtompeg-free.patch 1199 RMD160 3e3594fc27166423904ec56c0d17e427811614cd SHA1 ebe9561fd836c930ebd417cb81f507e502b36d57 SHA256 45c0229b035e8b50f759a5aae646a60ef07f4c0fb156b4aee1dc52aa0c1cbc75
+AUX netpbm-10.51.00-underlinking.patch 657 RMD160 c95af06e30622d8eeab0138001357da44314a062 SHA1 ae55ffd420c4a3d9d1c2f6a3e255438c09535572 SHA256 f933003b9c50717d76abaf3272b9bef66b328629a8791144fd0038e692989b95
 DIST netpbm-10.33-manpages.tar.bz2 236722 RMD160 5e43836a5f4d16f1ba5ece21e9996dbe60b252ae SHA1 6c0372f540ad040771beae15a8c2015252679e5f SHA256 aa18adee4a187ad5df243cb1a7c51097dc6a7d6a8072cf6da09972b74ac5454a
 DIST netpbm-10.49.00.tar.lzma 1917909 RMD160 26ce43d25a1e7319627d82bfa9a8e73d3c87d1fa SHA1 72db0cff9f805a3f84766dd8add82eaa30685ed3 SHA256 4414fe9b64c695e5d750670aa6e2b03828877d653bc8806e778c1352553c7c8e
 DIST netpbm-10.51.00-libpng-1.5.patch.bz2 8120 RMD160 49ee4fe57f170ffc1fb5470440dc840f0fb5387e SHA1 a6f0c2e37a5cb051e3c9275918c7e5b34c396aa9 SHA256 260a5f0e9834e7e1aa5c2dcc292695aa43b5aa198af1cb33e5705f7cac10da7b
 DIST netpbm-10.51.00.tar.xz 1834148 RMD160 71593d33e102de72230fbc306165ecc67bbb4c4f SHA1 ae5f9393ebcc75b0914f40c93a837de98a0a71c8 SHA256 6d7bb30d1d0e7f6a23b55c6f03bbb20b539909ad84281dc944b1072656dc1d0e
 EBUILD netpbm-10.49.00.ebuild 4297 RMD160 b7475816a192cb9355abc7cda9a99f39ae96a5c0 SHA1 c45cb174fa91abe8294ea70dfd400d2fe0980672 SHA256 975cbcceef470fc8c68f47009919804f08c319f819a621204263d3de7e904d80
 EBUILD netpbm-10.51.00-r1.ebuild 4821 RMD160 6226c886386e6a98c28c80e1e79ed5e705febde0 SHA1 d55929d0f5fbdb629c72268c884b1ccd13b35bed SHA256 397230bf0c67ecdd3f3b6cf41235618eb382d0403a3e7863c71a2a8c2ea7e0a7
-MISC ChangeLog 35226 RMD160 8067035c9799ac23fc54b40a2fe4f7fd194e3705 SHA1 984c8a1f0c10f3be6db367944d3b1c276cc92c9e SHA256 7331a47b0541c9ac09a9120a952b2b1ed860c77a921e2b481b5b92e33e325e61
-MISC metadata.xml 266 RMD160 de6149ba44458a170c3f6f6d5c015a3b4e5fe3bd SHA1 bb0d212119622779ede27328c6df989b362deac3 SHA256 4db3c087a1641cf4b8ae3750db0fb27bf8ff9a4dcbe496d1c173a9f9c04df75d
+EBUILD netpbm-10.51.00-r2.ebuild 4880 RMD160 d67164ca02718784239882271f6de6bc4ce5b39e SHA1 d09343a05d81cbb57aaeb7698c132070b7b85dcc SHA256 beac4b4a254385f390b42055931d2690f6597de7c45db900e4f585577e7b3726
+MISC ChangeLog 35419 RMD160 75ae03492b3e027841b13f3b61e633453616566d SHA1 41d205641a00f4888b4e5dcd54357dd43ffccb1f SHA256 ae18980956c66524b83f7d42d019655f31d6046c8c88da7993c55a7a30b799d1
+MISC metadata.xml 261 RMD160 1d652dbebb408b61de2afc2d49c8356a8eebee4c SHA1 c977c691e58d2ecbf5222ecde5ba6bf9a86ad84c SHA256 e04079912e263782a8c0e4f115e49ff3694535ff2efef7b7fff85cf8d100102b
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v2.0.18 (GNU/Linux)
 
-iQEcBAEBAgAGBQJOlJy+AAoJEEdUh39IaPFN3ykIAI/mp8CK7sWU21ycOvCg5vYE
-MftFX6CiqcknYphKUk4Fot8zHy1p6mJYx7SshWYMVS2GKc4Dpvtuaodxlc+if1Rg
-6ErwI1JVyOElfCoB+1PBXec7DRr4ss7lCuy9bV0gaJoXwGkePhvGhGDdsObg3Fd9
-zfcdAdXAXJUsvt9hRC/Quz3PUnAOsz4GwlqomfeHf8ww9vEK4uyHCKI828RJ7jOd
-8w34Zv035R5Mu+Y1zCQJ7AYfZOnWecwyNiLTmNKXds+CvkGJWHMgfFp5mWjDtpZk
-gYk3vvSxwSCDMzrH5yDS0DHtp0LZTd2TkF8RvgH0N1VuB6urv90RZbjTefByxX8=
-=H75M
+iEYEAREKAAYFAk6WAqEACgkQgAnW8HDreRZuwACdFaddw79z/vEthzeGLUaEwJub
+e2IAn25Olji/cOlgxrnN1Y/82rtNQiIB
+=mAJL
 -----END PGP SIGNATURE-----
diff --git a/media-libs/netpbm/files/netpbm-10.51.00-underlinking.patch b/media-libs/netpbm/files/netpbm-10.51.00-underlinking.patch
new file mode 100644 (file)
index 0000000..e161242
--- /dev/null
@@ -0,0 +1,16 @@
+ converter/other/Makefile |    2 +-
+ 1 files changed, 1 insertions(+), 1 deletions(-)
+
+diff --git a/converter/other/Makefile b/converter/other/Makefile
+index 1417cd3..c178101 100644
+--- a/converter/other/Makefile
++++ b/converter/other/Makefile
+@@ -167,7 +167,7 @@ pngtopam: %: %.o pngx.o $(NETPBMLIB) $(LIBOPT)
+ pnmtopng: %: %.o pngx.o pngtxt.o $(NETPBMLIB) $(LIBOPT)
+       $(LD) -o $@ $@.o pngx.o pngtxt.o \
+         $(shell $(LIBOPT) $(NETPBMLIB)) \
+-        $(PNGLIB_LIBOPTS) $(MATHLIB) $(LDFLAGS) $(LDLIBS) $(RPATH) $(LADD)
++        $(PNGLIB_LIBOPTS) $(MATHLIB) $(LDFLAGS) $(LDLIBS) $(RPATH) $(LADD) -lz
+ pamrgbatopng: %: %.o $(NETPBMLIB) $(LIBOPT)
+       $(LD) -o $@ $@.o \
index e3e00e6f7c9a8470ccf24b56f46568d8768ad3f5..867433382de91b346d850cce1f4be079e3b349d4 100644 (file)
@@ -1,8 +1,8 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
 <pkgmetadata>
-  <herd>graphics</herd>
-  <use>
-    <flag name="rle">Build converters for the RLE format (utah raster toolkit)</flag>
-  </use>
+       <herd>graphics</herd>
+       <use>
+               <flag name="rle">Build converters for the RLE format (utah raster toolkit)</flag>
+       </use>
 </pkgmetadata>
diff --git a/media-libs/netpbm/netpbm-10.51.00-r2.ebuild b/media-libs/netpbm/netpbm-10.51.00-r2.ebuild
new file mode 100644 (file)
index 0000000..d5747e9
--- /dev/null
@@ -0,0 +1,179 @@
+# Copyright 1999-2011 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/media-libs/netpbm/netpbm-10.51.00-r2.ebuild,v 1.1 2011/10/12 21:11:40 jlec Exp $
+
+EAPI="3"
+
+inherit toolchain-funcs eutils multilib
+
+DESCRIPTION="A set of utilities for converting to/from the netpbm (and related) formats"
+HOMEPAGE="http://netpbm.sourceforge.net/"
+SRC_URI="
+       mirror://gentoo/${P}.tar.xz
+       mirror://gentoo/${P}-libpng-1.5.patch.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~x86-fbsd"
+IUSE="jbig jpeg jpeg2k png rle svga tiff X xml zlib"
+
+RDEPEND="
+       jbig? ( media-libs/jbigkit )
+       jpeg? ( virtual/jpeg )
+       jpeg2k? ( media-libs/jasper )
+       png? ( >=media-libs/libpng-1.4 )
+       rle? ( media-libs/urt )
+       svga? ( media-libs/svgalib )
+       tiff? ( >=media-libs/tiff-3.5.5 )
+       xml? ( dev-libs/libxml2 )
+       zlib? ( sys-libs/zlib )
+       X? ( x11-libs/libX11 )"
+DEPEND="${RDEPEND}
+       app-arch/xz-utils
+       sys-devel/flex"
+
+maint_pkg_create() {
+       local base="/usr/local/src"
+       local srcdir="${base}/netpbm/release_number"
+       if [[ -d ${srcdir} ]] ; then
+               cd "${T}" || die
+
+               ebegin "Exporting ${srcdir}/${PV} to netpbm-${PV}"
+               svn export -q ${srcdir}/${PV} netpbm-${PV}
+               eend $? || return 1
+
+               ebegin "Creating netpbm-${PV}.tar.xz"
+               tar cf - netpbm-${PV} | xz > netpbm-${PV}.tar.xz
+               eend $?
+
+               einfo "Tarball now ready at: ${T}/netpbm-${PV}.tar.xz"
+       else
+               einfo "You need to run:"
+               einfo " cd ${base}"
+               einfo " svn co https://netpbm.svn.sourceforge.net/svnroot/netpbm"
+               die "need svn checkout dir"
+       fi
+}
+
+pkg_setup() { [[ -n ${VAPIER_LOVES_YOU} && ! -e ${DISTDIR}/${P}.tar.xz ]] && maint_pkg_create ; }
+
+netpbm_libtype() {
+       case ${CHOST} in
+               *-darwin*) echo dylib;;
+               *)         echo unixshared;;
+       esac
+}
+netpbm_libsuffix() {
+       local suffix=$(get_libname)
+       echo ${suffix//\.}
+}
+netpbm_ldshlib() {
+       case ${CHOST} in
+               *-darwin*) echo '$(LDFLAGS) -dynamiclib -install_name $(SONAME)';;
+               *)         echo '$(LDFLAGS) -shared -Wl,-soname,$(SONAME)';;
+       esac
+}
+netpbm_config() {
+       if use $1 ; then
+               [[ $2 != "!" ]] && echo -l${2:-$1}
+       else
+               echo NONE
+       fi
+}
+
+src_prepare() {
+       epatch "${FILESDIR}"/netpbm-10.31-build.patch
+       epatch "${FILESDIR}"/${P}-ppmtompeg-free.patch
+       epatch "${FILESDIR}"/${P}-pnmconvol-nooffset.patch #338230
+       epatch "${WORKDIR}"/${P}-libpng-1.5.patch #355025
+       epatch "${FILESDIR}"/${P}-underlinking.patch #367405
+
+       # make sure we use system urt
+       sed -i '/SUPPORT_SUBDIRS/s:urt::' GNUmakefile || die
+       rm -rf urt
+
+       # take care of the importinc stuff ourselves by only doing it once
+       # at the top level and having all subdirs use that one set #149843
+       sed -i \
+               -e '/^importinc:/s|^|importinc:\nmanual_|' \
+               -e '/-Iimportinc/s|-Iimp|-I"$(BUILDDIR)"/imp|g'\
+               common.mk || die
+       sed -i \
+               -e '/%.c/s: importinc$::' \
+               common.mk lib/Makefile lib/util/Makefile || die
+
+       # avoid ugly depend.mk warnings
+       touch $(find . -name Makefile | sed s:Makefile:depend.mk:g)
+}
+
+src_configure() {
+       cat config.mk.in - >> config.mk <<-EOF
+       # Misc crap
+       BUILD_FIASCO = N
+       SYMLINK = ln -sf
+
+       # Toolchain options
+       CC = $(tc-getCC) -Wall
+       LD = \$(CC)
+       CC_FOR_BUILD = $(tc-getBUILD_CC)
+       LD_FOR_BUILD = \$(CC_FOR_BUILD)
+       AR = $(tc-getAR)
+       RANLIB = $(tc-getRANLIB)
+
+       STRIPFLAG =
+       CFLAGS_SHLIB = -fPIC
+
+       LDRELOC = \$(LD) -r
+       LDSHLIB = $(netpbm_ldshlib)
+       LINKER_CAN_DO_EXPLICIT_LIBRARY = N # we can, but dont want to
+       LINKERISCOMPILER = Y
+       NETPBMLIBSUFFIX = $(netpbm_libsuffix)
+       NETPBMLIBTYPE = $(netpbm_libtype)
+
+       # Gentoo build options
+       TIFFLIB = $(netpbm_config tiff)
+       JPEGLIB = $(netpbm_config jpeg)
+       PNGLIB = $(netpbm_config png)
+       ZLIB = $(netpbm_config zlib z)
+       LINUXSVGALIB = $(netpbm_config svga vga)
+       XML2_LIBS = $(netpbm_config xml xml2)
+       JBIGLIB = -ljbig
+       JBIGHDR_DIR = $(netpbm_config jbig "!")
+       JASPERLIB = -ljasper
+       JASPERHDR_DIR = $(netpbm_config jpeg2k "!")
+       URTLIB = $(netpbm_config rle)
+       URTHDR_DIR =
+       X11LIB = $(netpbm_config X X11)
+       X11HDR_DIR =
+       EOF
+       # cannot chain the die with the heredoc above as bash-3
+       # has a parser bug in that setup #282902
+       [ $? -eq 0 ] || die "writing config.mk failed"
+}
+
+src_compile() {
+       emake -j1 pm_config.h version.h manual_importinc || die #149843
+       emake || die
+}
+
+src_install() {
+       # Subdir make targets like to use `mkdir` all over the place
+       # without any actual dependencies, thus the -j1.
+       emake -j1 package pkgdir="${D}"/usr || die
+
+       [[ $(get_libdir) != "lib" ]] && mv "${D}"/usr/lib "${D}"/usr/$(get_libdir)
+
+       # Remove cruft that we don't need, and move around stuff we want
+       rm "${D}"/usr/bin/{doc.url,manweb} || die
+       rm -r "${D}"/usr/man/web || die
+       rm -r "${D}"/usr/link || die
+       rm "${D}"/usr/{README,VERSION,config_template,pkginfo} || die
+       dodir /usr/share
+       mv "${D}"/usr/man "${D}"/usr/share/ || die
+       mv "${D}"/usr/misc "${D}"/usr/share/netpbm || die
+
+       dodoc README
+       cd doc
+       dodoc HISTORY Netpbm.programming USERDOC
+       dohtml -r .
+}