From 7a13078cb414752df1133d1767cc29260dc60fda Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Mon, 2 Jan 2023 20:24:39 +0000 Subject: gentoo auto-resync : 02:01:2023 - 20:24:39 --- media-libs/Manifest.gz | Bin 68058 -> 68055 bytes media-libs/hamlib/Manifest | 2 + media-libs/hamlib/hamlib-4.5.3.ebuild | 97 ++++++++ media-libs/netpbm/Manifest | 3 +- .../netpbm/files/netpbm-11.1.0-fix-clang-O2.patch | 26 ++ media-libs/netpbm/netpbm-11.1.0-r1.ebuild | 261 ++++++++++++++++++++ media-libs/netpbm/netpbm-11.1.0.ebuild | 262 --------------------- 7 files changed, 388 insertions(+), 263 deletions(-) create mode 100644 media-libs/hamlib/hamlib-4.5.3.ebuild create mode 100644 media-libs/netpbm/files/netpbm-11.1.0-fix-clang-O2.patch create mode 100644 media-libs/netpbm/netpbm-11.1.0-r1.ebuild delete mode 100644 media-libs/netpbm/netpbm-11.1.0.ebuild (limited to 'media-libs') diff --git a/media-libs/Manifest.gz b/media-libs/Manifest.gz index d907c54cd5bd..07c57f4beb6d 100644 Binary files a/media-libs/Manifest.gz and b/media-libs/Manifest.gz differ diff --git a/media-libs/hamlib/Manifest b/media-libs/hamlib/Manifest index f831aacbf629..dcfe2a51950f 100644 --- a/media-libs/hamlib/Manifest +++ b/media-libs/hamlib/Manifest @@ -2,8 +2,10 @@ AUX hamlib-4.4-fix-clang-warnings.patch 6673 BLAKE2B 26b0bbbc2c9bb89fe2707b0bbc7 AUX hamlib-4.4-slibtool.patch 2414 BLAKE2B 798b95d72e57d1b68a1d26c36f631b084722a32ae3c20238f7cb2495412e200ee7e909d2e614ad27db7016654a6e662834b8c95f86dbec609754fe817a49a1b8 SHA512 743a5be7160e80453810873ea074fd62934524fcf7fc9b8e224c93a2876760c96793ebb13e6e40c32b648065b034a2355935862d540c6620babaeacb7fc2f88c DIST hamlib-4.4.tar.gz 2401399 BLAKE2B 4256b5b4374c62ef4fb957d29deda95aa9d15a8b52b81c5db1c07f3ebbf4c8e48c6c082769cef82c8457b3f813ac00ef7a37136615747f2c93e5275a112891e7 SHA512 37366ba180031de34da447c3d4e0086f156b893f57b5ab9bbc38b8e1f4bf9310fa1a9eb2a6d7884f1f11900dbdb811b4071e023aba571ea0ac5d07ddb122bf7b DIST hamlib-4.5.1.tar.gz 2588713 BLAKE2B 11b45fe82adc0bedfabed1847589ee67fe3612c8b2c34e0c91bbf33b237f2992c97ab266687f7173767bf01db81747ea1b710af0bd3fdb3aa5c4035190d35ceb SHA512 3fbfa18f3f04890eb0bb2ffef5347ffc3759fa276d613785a0e585dd3613837db4461eb79bf7e3794f6ce33dcae8a4357b3f27c8be44a9d838fcb82cb0a60753 +DIST hamlib-4.5.3.tar.gz 2590200 BLAKE2B 7c06a20a1185a2e413fee56231f3e0f6aa77a7585b9853896b00abb773e2e23fc5e97a8a3fbb873528282756ee674b1ca5b2b14f0fe8e6b9b8e8f7e8ffa223f2 SHA512 be3b58c7276c1289d85b4dc9054016757200fde06d66116f7a1687442e53bf322f0a3ae974c9b784cbd0bff0c64b901b97fac74184f4b4a0fdf1f5079d0ea509 DIST hamlib-4.5.tar.gz 2568061 BLAKE2B 6ccb0c1faf8f64453c3696e75ced413048e7705184c7755fdde200be1d9b17f5495427ba492317cf7e75b5f373b859840d1d364db1f057c28f7779f8284fd96a SHA512 671da06aed54951ca810b4de7291a16de3a2f6ed54b8d024d4d9bfed9dfc6a21336c3cadd6f5b128c3ab54f1edd2b22db491b074b7759b9dfd9e71e1ce4055f3 EBUILD hamlib-4.4.ebuild 2256 BLAKE2B 481a0b54d4c94bd232ebaaf099ff38a57052705363fc416b9b6d90581c65eb96e8690ac2f68bda6429ccc35936a9ec6c7a4f5b6dad3497c8b0a838399df04c5d SHA512 4ef6ccc5b5e9d289d29be6c89e641005b99c062391532ecce3708879d2c29868fe86645824a65de8fca16ed1e9c063291a2083d99d0b8468c90c95d7961fc274 EBUILD hamlib-4.5.1.ebuild 2147 BLAKE2B 560831f12f948ffa3bba2a6b317999ccaff530b6b1ee8b18da0a6af254fd3a180b561bccda01aceed6f56da399c204533566f7bbea2263635318f2505e15591f SHA512 538d46e71035fe9c1b36060181110029b21004d2961fa0d2217816192bfc2faf528d538454261bf42e662f53fd82a3cc658fe47649b94d16ee837786716c854e +EBUILD hamlib-4.5.3.ebuild 2147 BLAKE2B 78617b898ab4ffd67b5392a4d03810fda8fb550acb7e694e7725ec1465d983ec62b210882f80436e8b2464876cfda251bbf81417e784fd7d1f8ff78483e64aca SHA512 3eaac707ee37c64dac991cf9fa0ea0507fbb8594613880fc1fa6e4f1fa93e1f8905e9a75ed6fd245545ecea2e699b2b7d94bf26dc30cce386b884fc13da1649f EBUILD hamlib-4.5.ebuild 2219 BLAKE2B 933671fb2525421297a9c7693230daa3fc551d19eb000898dd70c1c321d2124ee9d8cad49cfdefed555d1a2c2e98aa8435bf034e5a1733b175e7ab3db26a9ece SHA512 7805a0332fa2795147c2dfebcaba2648740bba7d1cc7fed9a1566c80a17aaabe9f656263651e5a1041e849747352ee8a75c7fd9036907c27f005e78bb1b45c78 MISC metadata.xml 326 BLAKE2B ea402b17f863a6a0370743d2756c6c3c15a8d7bdfd0777db2cec56cc41dd93198ad36ff114f3c9bc265ea54228d87856f3edd35f9696ac5c89136fce4c5acf87 SHA512 84642d6397e97ea348a12d44a01015a51af72b40af5456416ac3477e55da9ef5ab1934f66b2fac0762c4b0483e20e92c3a49f334bf136de16b01043a15073f7f diff --git a/media-libs/hamlib/hamlib-4.5.3.ebuild b/media-libs/hamlib/hamlib-4.5.3.ebuild new file mode 100644 index 000000000000..1b172b2c2880 --- /dev/null +++ b/media-libs/hamlib/hamlib-4.5.3.ebuild @@ -0,0 +1,97 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{8..10} ) +MY_P=${P/_rc2/~rc2} + +inherit autotools python-single-r1 + +DESCRIPTION="Ham radio backend rig control libraries" +HOMEPAGE="http://www.hamlib.org" +SRC_URI="mirror://sourceforge/hamlib/${MY_P}.tar.gz" + +LICENSE="LGPL-2 GPL-2" +SLOT="0/4.2" +KEYWORDS="~amd64 ~arm ~arm64 ~riscv ~x86" +IUSE="doc perl python tcl" + +RESTRICT="test" + +RDEPEND=" + =virtual/libusb-0* + dev-libs/libxml2 + sys-libs/readline:0= + perl? ( dev-lang/perl ) + python? ( ${PYTHON_DEPS} ) + tcl? ( dev-lang/tcl:0= )" + +DEPEND=" ${RDEPEND} + virtual/pkgconfig + dev-lang/swig + >=sys-devel/libtool-2.2 + doc? ( app-doc/doxygen + dev-util/source-highlight )" + +REQUIRED_USE="${PYTHON_REQUIRED_USE}" + +DOCS=(AUTHORS NEWS PLAN README README.betatester README.developer) + +S="${WORKDIR}/${MY_P}" + +pkg_setup() { + use python && python-single-r1_pkg_setup +} + +src_prepare() { + default + + # fix hardcoded libdir paths + sed -i -e "s#fix}/lib#fix}/$(get_libdir)/hamlib#" \ + -e "s#fix}/include#fix}/include/hamlib#" \ + hamlib.pc.in || die "sed failed" + + # Correct install target to whatever INSTALLDIRS says and use vendor + # installdirs everywhere (bug #611550) + sed -i -e "s#install_site#install#" \ + -e 's#MAKEFILE="Hamlib-pl.mk"#MAKEFILE="Hamlib-pl.mk" INSTALLDIRS=vendor#' \ + bindings/Makefile.am || die "sed failed patching for perl" + + # make building of documentation compatible with autotools-utils + sed -i -e "s/doc:/html:/g" doc/Makefile.am || die "sed failed" + + eautoreconf +} + +src_configure() { + econf \ + --libdir=/usr/$(get_libdir)/hamlib \ + --disable-static \ + --with-xml-support \ + $(use_with perl perl-binding) \ + $(use_with python python-binding) \ + $(use_with tcl tcl-binding) +} + +src_compile() { + emake + use doc && emake html +} + +src_install() { + emake DESTDIR="${D}" install + + use python && python_optimize + + use doc && HTML_DOCS=( doc/html/ ) + einstalldocs + + insinto /usr/$(get_libdir)/pkgconfig + doins hamlib.pc + + echo "LDPATH=/usr/$(get_libdir)/hamlib" > "${T}"/73hamlib + doenvd "${T}"/73hamlib + + find "${ED}" -name '*.la' -delete || die +} diff --git a/media-libs/netpbm/Manifest b/media-libs/netpbm/Manifest index de6033106894..a4a4f70e48e7 100644 --- a/media-libs/netpbm/Manifest +++ b/media-libs/netpbm/Manifest @@ -4,10 +4,11 @@ AUX netpbm-10.86.21-misc-deps.patch 1565 BLAKE2B a4d629ea9fe01efc45c799dac4bd376 AUX netpbm-10.86.21-test.patch 331 BLAKE2B 59451b2f1632afdd8e84bcec0ef91e0589604706b373281bf4963385fe971991711cc6ed4f169cc45aa460ac1db20de69039b137da1a2ec3d6cb82b60ae5f745 SHA512 e5c1a88cc03e227c7a7a01e9586ceacaf24a6752f4285f228b0176a8a12a6a9ac83d8ce1c5965e8f56ab652b5e42aa2cd535f1e121449fe668312b7e49720e4f AUX netpbm-10.86.22-fix-ps-test.patch 15448 BLAKE2B cfe77600197fc39ef0be0ed793f5181db57fd718a6fed268a8afb2fd2b5afab404c3be3c89dc25d178f8fe2edc4d386e33f22f7b3bc826e9c90307ef3895830f SHA512 a521c771d2384cb86d87b4efdf05e0835adcbefb84d4e66e744b2f8bc40df5358f20c4824dce5a942ccc24b18168276278d65e8e9a529b7c09b157b3e02438bb AUX netpbm-11.0.0-misc-deps.patch 1446 BLAKE2B 721e926a83d50d04d4a407051ee077db5e5bf8fb1ae9aff1ff1d7859cf1bb0d5f74fa1143681b451d36323f93d5e7fa3876e485d6538958e30779cac081df5b8 SHA512 7135533660b15a113df5a38298725f895e8cbd6ac4695eb5f2d40bd214c43cb9d1c261063e0cea162a6ca6071cda5f4e0380d29eefa6af57e7d67ce319fe2216 +AUX netpbm-11.1.0-fix-clang-O2.patch 773 BLAKE2B a8d2bef659d384b0f94560fec847d37731315f5cdb67e5474efb596672d146446c6d545caa816d74f9d4c32fe486ce49f8cb55f38e9706bae6b0ba79c0dbbb5e SHA512 0a0049415d5c252603c47325d69ae582bec76ac15f442682ef0a2ff8c5a8cd19e28543644883bde891f2a376a401f43ed923b184112f49c67d295b9215d519de DIST netpbm-10.86.35.tar.xz 3699944 BLAKE2B 754b695ab25ba2c3ff0cdc8d3810a3df7af9a30476dfd6afa70591df0931334806ad41da41797e3f6121b77b7e3fb77a3c01ebc533812e9a8cb3ccb3eb6c19ea SHA512 a4a0107f04ccdef066d340f97a7d3487a2b349dd5994b294fd815813bb04db10063ba933442ef77e27a96fb3b31a5769f3a19532a651b802f14667dbf43c06f5 DIST netpbm-10.86.36.tar.xz 3700660 BLAKE2B c5f0acd0147f2ad66f69ae2ade56fcbb5286faddc7f8f3387e2269fd20ea2586a29d7e7dc96bd715fe12896eef47803b826031087e6be8166183ba7cf82aebf4 SHA512 b05df76760629881047c44799a905a491fb4c139a9af909d77cc4238fc82dfac37ba174df4f81cb1177716ad38a37b26eadcc3889d2c2057ff9d850697fad3c6 DIST netpbm-11.1.0.tar.xz 3771676 BLAKE2B 0f377dc36b03b99a174c2d5a09d62aea8a813f9eb501a59630c4f083247cc3c82e3fee88085ec686f4d787d67104b834a511b4ef1f7d75eda7b10fed3281d9e5 SHA512 77528e2508d7a2d348de339d57b677fd1a061bb2902273d536ea09c34033af03a75bb723bcc7e87551406f47f115085a60691b3fda4ae672372b8473528370de EBUILD netpbm-10.86.35-r1.ebuild 6868 BLAKE2B 6671fe735c84396edf72a5946e9de2514080d143508dcf274838c2480cd8d5218788ae5d01ab024d9a21f05deaca8f718a8129b696801cf793fc7021fd3d90f8 SHA512 a6aebe77131a72863e88dc3917d1b1301c4f8ddf2322acf77c7fe823231ff0c7e9bcb8cf19107cb1a1a629e9ccb41e1048d6c771cfa688bbd90e1656d8ee303e EBUILD netpbm-10.86.36.ebuild 6779 BLAKE2B 3957a83f53892c2f43e2a0a087b01f2e8674cc9de130bc5f51767ed7bf46c0dd45463495487084610f09c75028b30b2d054dc42204075535a2816aa2fa8fa1e0 SHA512 55a47205afce3be64893e271562bc40fca19f70fcf95bbb8fc5558bffc1366b228fd1e12d71f2a757517515ae0708be8c974ae7e414fa91776068392641fe7b1 -EBUILD netpbm-11.1.0.ebuild 6922 BLAKE2B 082bad6cfd13a72b9cc6d7a3c63fd2893cf06c9e8940f270f7826e0721269358ee7a074e5a9777019b3b435767174bfca04afed09cc315364d16d91bd09621c3 SHA512 ffea6f726a0525e329b62b41ebb221bcf58f6fd1303aa91b573708355db069773cbab9ad55883f51a3fcf0c248b9d34827026acdb78e6324bc8e0f60b9bfc2c0 +EBUILD netpbm-11.1.0-r1.ebuild 6958 BLAKE2B 01044532de8bdf262f6bae96ce99b24e151f194057d512fb83d6aaebad03acf21b0f75c62109084d9e281b9f4a3a192d429d129519ca1fe6c04206321201add1 SHA512 127e4376b9f515016a58c6d392f452585950fccf3e56aabf0675ba8a92bbdb4a4c156792c502d09b483b7c0724b5ee681fc5ac9e199dd6e458cb4a406edc0952 MISC metadata.xml 424 BLAKE2B 9ccc907d6c15cb1a7d6cfe4679d6fa9f488642948897ca34958a06b439ebcfb912cfb18fa9d93f15f19573aed4bd7083d277151c477410a59cd64b4c9c0446d4 SHA512 a987be2134a44cc916d5a026068219b8ccaa149e577eaf2a53a7802321793129777cc79b069df95ec9320f15279249a5f9d8a61509452ef02effcb6c66cf9e80 diff --git a/media-libs/netpbm/files/netpbm-11.1.0-fix-clang-O2.patch b/media-libs/netpbm/files/netpbm-11.1.0-fix-clang-O2.patch new file mode 100644 index 000000000000..4427676b9b35 --- /dev/null +++ b/media-libs/netpbm/files/netpbm-11.1.0-fix-clang-O2.patch @@ -0,0 +1,26 @@ +When compiling with clang and -O2, local variable origJmpbufP with value +changed after setjmp contains garbage after longjmp. + +According to glibc documentation, making it volatile should have fixed the +issue, but it didn't. Static outside the function works. + +Bug: https://bugs.gentoo.org/885561 + +--- a/lib/libpamread.c ++++ b/lib/libpamread.c +@@ -25,6 +25,7 @@ + #include "fileio.h" + #include "pam.h" + ++static jmp_buf * origJmpbufP = NULL; + + static void + readPbmRow(const struct pam * const pamP, +@@ -35,7 +36,6 @@ + "It says PBM format, but 'depth' member is not 1."); + else { + jmp_buf jmpbuf; +- jmp_buf * origJmpbufP; + unsigned char * bitrow; + + bitrow = (unsigned char *) pbm_allocrow(pbm_packed_bytes(pamP->width)); diff --git a/media-libs/netpbm/netpbm-11.1.0-r1.ebuild b/media-libs/netpbm/netpbm-11.1.0-r1.ebuild new file mode 100644 index 000000000000..321a76b14293 --- /dev/null +++ b/media-libs/netpbm/netpbm-11.1.0-r1.ebuild @@ -0,0 +1,261 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit flag-o-matic multilib toolchain-funcs + +# Upstream has 3 flavors of netpbm: super stable, stable and advanced. +# They only provide a tarball for super stable, but super stable is a bit lagging. +# So we package the stable branch of their svn (currently versions 10.86.xx) on SLOT "0/stable" +# and the advanced branch of their svn (currently versions 11.aa.bb) on SLOT "0/advanced". +# The stable branch is stabilized according to usual Gentoo rules, while the +# advanced branch will not be stabilized. +# A detailed explanation is here https://netpbm.sourceforge.net/release.html + +# libnetpbm.so is not 100% ABI compatible between stable and advanced, so +# packages that depend on it should use "media-libs/netpbm:=" + +DESCRIPTION="A set of utilities for converting to/from the netpbm (and related) formats" +HOMEPAGE="https://netpbm.sourceforge.net/" +SRC_URI="https://dev.gentoo.org/~ceamac/${CATEGORY}/${PN}/${P}.tar.xz" + +LICENSE="Artistic BSD GPL-2 IJG LGPL-2.1 MIT public-domain" +SLOT="0/advanced" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux" +IUSE="jbig jpeg png postscript rle cpu_flags_x86_sse2 static-libs svga tiff X xml" + +# app-text/ghostscript-gpl is really needed for postscript +# some utilities execute /usr/bin/gs +# also some installed programs are perl scripts +RDEPEND=" + dev-lang/perl + jbig? ( media-libs/jbigkit:= ) + jpeg? ( media-libs/libjpeg-turbo:=[static-libs?] ) + png? ( + >=media-libs/libpng-1.4:0= + sys-libs/zlib + ) + postscript? ( + app-text/ghostscript-gpl + sys-libs/zlib + ) + rle? ( media-libs/urt:= ) + svga? ( media-libs/svgalib ) + tiff? ( media-libs/tiff ) + xml? ( dev-libs/libxml2 ) + X? ( x11-libs/libX11 ) +" +DEPEND=" + ${RDEPEND} + x11-base/xorg-proto +" +BDEPEND=" + app-arch/xz-utils + sys-devel/flex + virtual/pkgconfig +" + +PATCHES=( + "${FILESDIR}"/netpbm-10.86.21-build.patch + "${FILESDIR}"/netpbm-11.0.0-misc-deps.patch + "${FILESDIR}"/netpbm-11.1.0-fix-clang-O2.patch +) + +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_lib() { + usex ${1} -l${2:-$1} NONE +} + +# for bug #828127 +netpbm_cflags_for_build() { + if is-flagq -fPIC; then + echo -fPIC + fi +} + +src_prepare() { + default + + # make sure we use system libs + sed -i '/SUPPORT_SUBDIRS/s:urt::' GNUmakefile || die + rm -r urt converter/other/jbig/libjbig converter/other/jpeg2000/libjasper || die + + # fix typo in a test + sed -i \ + -e 's:^o#! /bin/sh:#! /bin/sh:' \ + test/stdin-ppm3.test || die + + # 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 + sed -i \ + -e 's:pkg-config:$(PKG_CONFIG):' \ + GNUmakefile converter/other/Makefile other/pamx/Makefile || die + + # The postscript knob is currently bound up with a fork test. + if ! use postscript ; then + sed -i \ + -e 's:$(DONT_HAVE_PROCESS_MGMT):Y:' \ + converter/other/Makefile generator/Makefile || die + sed -i -r \ + -e 's:(pbmtextps|pnmtops|pstopnm).*::' \ + test/all-in-place.{ok,test} || die + sed -i \ + -e 's:lps-roundtrip.*::' \ + -e 's:pbmtextps-dump.*::' \ + -e 's:pbmtextps.*::' \ + test/Test-Order || die + sed -i \ + -e '/^$/d' \ + test/all-in-place.ok || die + sed -i \ + '2iexit 80' \ + test/ps-{alt-,flate-,}roundtrip.test || die + fi + + # the new postscript test needs +x + chmod +x test/lps-roundtrip.test || die + + # Do not test png if not built + if ! use png ; then + sed -i -E \ + -e 's:(pamtopng|pngtopam|pnmtopng).*::' \ + test/all-in-place.{ok,test} || die + sed -i \ + -e '/^$/d' \ + test/all-in-place.ok || die + + sed -i -E \ + -e 's:(pamrgbatopng|pngtopnm).*::' \ + test/legacy-names.{ok,test} || die + sed -i \ + -e '/^$/d' \ + test/legacy-names.ok || die + sed -i \ + -e 's:png-roundtrip.*::' \ + -e 's:winicon-roundtrip.*::' \ + test/Test-Order || die + fi + + # this test requires LC_ALL=en_US.iso88591, not available on musl + if use elibc_musl; then + sed -i \ + -e 's:pbmtext-iso88591.*::' \ + test/Test-Order || die + fi +} + +src_configure() { + cat config.mk.in - >> config.mk <<-EOF || die "writing config.mk failed" + # Misc stuff + BUILD_FIASCO = N + SYMLINK = ln -sf + + # These vars let src_test work by default + PKGDIR_DEFAULT = ${T}/netpbm + RESULTDIR_DEFAULT = ${T}/netpbm-test + + # 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) + PKG_CONFIG = $(tc-getPKG_CONFIG) + + STRIPFLAG = + CFLAGS_SHLIB = -fPIC + CFLAGS_FOR_BUILD += $(netpbm_cflags_for_build) + + 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) + STATICLIB_TOO = $(usex static-libs Y N) + + # The var is called SSE, but the code is actually SSE2. + WANT_SSE = $(usex cpu_flags_x86_sse2 Y N) + + # Gentoo build options + TIFFLIB = $(netpbm_config_lib tiff) + # Let tiff worry about its own dependencies #395753 + TIFFLIB_NEEDS_JPEG = N + TIFFLIB_NEEDS_Z = N + JPEGLIB = $(netpbm_config_lib jpeg) + PNGLIB = $(netpbm_config_lib png) + ZLIB = $($(tc-getPKG_CONFIG) --libs zlib) + LINUXSVGALIB = $(netpbm_config_lib svga vga) + XML2_LIBS = $(netpbm_config_lib xml xml2) + JBIGLIB = $(netpbm_config_lib jbig) + JBIGHDR_DIR = + JASPERLIB = NONE + JASPERHDR_DIR = + URTLIB = $(netpbm_config_lib rle) + URTHDR_DIR = + X11LIB = $(netpbm_config_lib X X11) + X11HDR_DIR = + EOF +} + +src_compile() { + emake -j1 pm_config.h version.h manual_importinc #149843 + emake +} + +src_test() { + # The code wants to install everything first and then test the result. + emake install.{bin,lib,data} + emake check +} + +src_install() { + # Subdir make targets like to use `mkdir` all over the place + # without any actual dependencies, thus the -j1. + emake -j1 package pkgdir="${ED}"/usr + + if [[ $(get_libdir) != "lib" ]] ; then + mv "${ED}"/usr/lib "${ED}"/usr/$(get_libdir) || die + fi + + # Remove cruft that we don't need, and move around stuff we want + rm "${ED}"/usr/{README,VERSION,{pkgconfig,config}_template,pkginfo} || die + + dodir /usr/share + mv "${ED}"/usr/misc "${ED}"/usr/share/netpbm || die + + doman userguide/*.[0-9] + dodoc README + + cd doc || die + dodoc HISTORY Netpbm.programming USERDOC + docinto html + dodoc -r ../userguide/*.html +} diff --git a/media-libs/netpbm/netpbm-11.1.0.ebuild b/media-libs/netpbm/netpbm-11.1.0.ebuild deleted file mode 100644 index 7d44b7a5bd79..000000000000 --- a/media-libs/netpbm/netpbm-11.1.0.ebuild +++ /dev/null @@ -1,262 +0,0 @@ -# Copyright 1999-2023 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -inherit flag-o-matic multilib toolchain-funcs - -# Upstream has 3 flavors of netpbm: super stable, stable and advanced. -# They only provide a tarball for super stable, but super stable is a bit lagging. -# So we package the stable branch of their svn (currently versions 10.86.xx) on SLOT "0/stable" -# and the advanced branch of their svn (currently versions 11.aa.bb) on SLOT "0/advanced". -# The stable branch is stabilized according to usual Gentoo rules, while the -# advanced branch will not be stabilized. -# A detailed explanation is here https://netpbm.sourceforge.net/release.html - -# libnetpbm.so is not 100% ABI compatible between stable and advanced, so -# packages that depend on it should use "media-libs/netpbm:=" - -DESCRIPTION="A set of utilities for converting to/from the netpbm (and related) formats" -HOMEPAGE="https://netpbm.sourceforge.net/" -SRC_URI="https://dev.gentoo.org/~ceamac/${CATEGORY}/${PN}/${P}.tar.xz" - -LICENSE="Artistic BSD GPL-2 IJG LGPL-2.1 MIT public-domain" -SLOT="0/advanced" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux" -IUSE="jbig jpeg png postscript rle cpu_flags_x86_sse2 static-libs svga tiff X xml" - -# app-text/ghostscript-gpl is really needed for postscript -# some utilities execute /usr/bin/gs -# also some installed programs are perl scripts -RDEPEND=" - dev-lang/perl - jbig? ( media-libs/jbigkit:= ) - jpeg? ( media-libs/libjpeg-turbo:=[static-libs?] ) - png? ( - >=media-libs/libpng-1.4:0= - sys-libs/zlib - ) - postscript? ( - app-text/ghostscript-gpl - sys-libs/zlib - ) - rle? ( media-libs/urt:= ) - svga? ( media-libs/svgalib ) - tiff? ( >=media-libs/tiff-3.5.5:= ) - xml? ( dev-libs/libxml2 ) - X? ( x11-libs/libX11 ) -" - -DEPEND=" - ${RDEPEND} - x11-base/xorg-proto -" - -BDEPEND=" - app-arch/xz-utils - sys-devel/flex - virtual/pkgconfig -" - -PATCHES=( - "${FILESDIR}"/netpbm-10.86.21-build.patch - "${FILESDIR}"/netpbm-11.0.0-misc-deps.patch -) - -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_lib() { - usex ${1} -l${2:-$1} NONE -} - -# for bug #828127 -netpbm_cflags_for_build() { - if is-flagq -fPIC; then - echo -fPIC - fi -} - -src_prepare() { - default - - # make sure we use system libs - sed -i '/SUPPORT_SUBDIRS/s:urt::' GNUmakefile || die - rm -r urt converter/other/jbig/libjbig converter/other/jpeg2000/libjasper || die - - # fix typo in a test - sed -i \ - -e 's:^o#! /bin/sh:#! /bin/sh:' \ - test/stdin-ppm3.test || die - - # 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 - sed -i \ - -e 's:pkg-config:$(PKG_CONFIG):' \ - GNUmakefile converter/other/Makefile other/pamx/Makefile || die - - # The postscript knob is currently bound up with a fork test. - if ! use postscript ; then - sed -i \ - -e 's:$(DONT_HAVE_PROCESS_MGMT):Y:' \ - converter/other/Makefile generator/Makefile || die - sed -i -r \ - -e 's:(pbmtextps|pnmtops|pstopnm).*::' \ - test/all-in-place.{ok,test} || die - sed -i \ - -e 's:lps-roundtrip.*::' \ - -e 's:pbmtextps-dump.*::' \ - -e 's:pbmtextps.*::' \ - test/Test-Order || die - sed -i \ - -e '/^$/d' \ - test/all-in-place.ok || die - sed -i \ - '2iexit 80' \ - test/ps-{alt-,flate-,}roundtrip.test || die - fi - - # the new postscript test needs +x - chmod +x test/lps-roundtrip.test || die - - # Do not test png if not built - if ! use png ; then - sed -i -E \ - -e 's:(pamtopng|pngtopam|pnmtopng).*::' \ - test/all-in-place.{ok,test} || die - sed -i \ - -e '/^$/d' \ - test/all-in-place.ok || die - - sed -i -E \ - -e 's:(pamrgbatopng|pngtopnm).*::' \ - test/legacy-names.{ok,test} || die - sed -i \ - -e '/^$/d' \ - test/legacy-names.ok || die - sed -i \ - -e 's:png-roundtrip.*::' \ - -e 's:winicon-roundtrip.*::' \ - test/Test-Order || die - fi - - # this test requires LC_ALL=en_US.iso88591, not available on musl - if use elibc_musl; then - sed -i \ - -e 's:pbmtext-iso88591.*::' \ - test/Test-Order || die - fi -} - -src_configure() { - cat config.mk.in - >> config.mk <<-EOF || die "writing config.mk failed" - # Misc stuff - BUILD_FIASCO = N - SYMLINK = ln -sf - - # These vars let src_test work by default - PKGDIR_DEFAULT = ${T}/netpbm - RESULTDIR_DEFAULT = ${T}/netpbm-test - - # 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) - PKG_CONFIG = $(tc-getPKG_CONFIG) - - STRIPFLAG = - CFLAGS_SHLIB = -fPIC - CFLAGS_FOR_BUILD += $(netpbm_cflags_for_build) - - 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) - STATICLIB_TOO = $(usex static-libs Y N) - - # The var is called SSE, but the code is actually SSE2. - WANT_SSE = $(usex cpu_flags_x86_sse2 Y N) - - # Gentoo build options - TIFFLIB = $(netpbm_config_lib tiff) - # Let tiff worry about its own dependencies #395753 - TIFFLIB_NEEDS_JPEG = N - TIFFLIB_NEEDS_Z = N - JPEGLIB = $(netpbm_config_lib jpeg) - PNGLIB = $(netpbm_config_lib png) - ZLIB = $($(tc-getPKG_CONFIG) --libs zlib) - LINUXSVGALIB = $(netpbm_config_lib svga vga) - XML2_LIBS = $(netpbm_config_lib xml xml2) - JBIGLIB = $(netpbm_config_lib jbig) - JBIGHDR_DIR = - JASPERLIB = NONE - JASPERHDR_DIR = - URTLIB = $(netpbm_config_lib rle) - URTHDR_DIR = - X11LIB = $(netpbm_config_lib X X11) - X11HDR_DIR = - EOF -} - -src_compile() { - emake -j1 pm_config.h version.h manual_importinc #149843 - emake -} - -src_test() { - # The code wants to install everything first and then test the result. - emake install.{bin,lib,data} - emake check -} - -src_install() { - # Subdir make targets like to use `mkdir` all over the place - # without any actual dependencies, thus the -j1. - emake -j1 package pkgdir="${ED}"/usr - - if [[ $(get_libdir) != "lib" ]] ; then - mv "${ED}"/usr/lib "${ED}"/usr/$(get_libdir) || die - fi - - # Remove cruft that we don't need, and move around stuff we want - rm "${ED}"/usr/{README,VERSION,{pkgconfig,config}_template,pkginfo} || die - - dodir /usr/share - mv "${ED}"/usr/misc "${ED}"/usr/share/netpbm || die - - doman userguide/*.[0-9] - dodoc README - - cd doc || die - dodoc HISTORY Netpbm.programming USERDOC - docinto html - dodoc -r ../userguide/*.html -} -- cgit v1.2.3