summaryrefslogtreecommitdiff
path: root/net-print/libppd
diff options
context:
space:
mode:
Diffstat (limited to 'net-print/libppd')
-rw-r--r--net-print/libppd/Manifest3
-rw-r--r--net-print/libppd/files/libppd-2.0.0-slibtool.patch64
-rw-r--r--net-print/libppd/libppd-2.0.0.ebuild8
3 files changed, 72 insertions, 3 deletions
diff --git a/net-print/libppd/Manifest b/net-print/libppd/Manifest
index dbcb22244eda..60b4740f2d00 100644
--- a/net-print/libppd/Manifest
+++ b/net-print/libppd/Manifest
@@ -1,3 +1,4 @@
+AUX libppd-2.0.0-slibtool.patch 2191 BLAKE2B 2a88a48542355d5f4189685979cd1cc24a992c4ad6c803e28d2420e7f974b962050d186d5cd7ec1642d22ac200137fe74e143df2270259d30ee6e30ee05e28b5 SHA512 d169bfaf4dd40917b197aa6d00b4ad9b1ad5d010781d492205c2656621bcadc1792ca5f589be97f8b9e15f431820c8af1c40cae5bf7fbf9fd14df8377cb1484a
DIST libppd-2.0.0.tar.xz 580716 BLAKE2B 8505c5ab5b515104308624a8f78505343b894df08ab8ac2727d7bd82d0d65d256d22ecaf384b212d9a5c45d2a619a6311722a8c5ed954b7a8a9780477aedb458 SHA512 8be9e67552528606fd804ba13b05710938ed7d02316c1c902ee657bc0e5fade663ffacb5b032609a1c1fdc80d976e7e54d2ca2f71db83cb8fdcee6a371e6bad4
-EBUILD libppd-2.0.0.ebuild 1496 BLAKE2B d5bd9789b9c44dcd172aeb3e9b5dcf6dad29048c5e8996948847077e466822ddcd08017f249e1015340343911c073af192c023e442ad6f21424c388b222645b4 SHA512 30e0fb53d2098145398a84878e580c6557ade1fe55501fe36d7064c7f4b16c3c9f15374074aee0209096b73baf7c886820857bf1f552ff268940a177bc9af313
+EBUILD libppd-2.0.0.ebuild 1546 BLAKE2B 89f53229a0196c3e7f26d805c1e368c9b9781d528f4c86b238551ad5ddc7fc45a896daa8e09eb129113ff832c68e0fa91058c9e73acd9d819a0083019922a670 SHA512 6e7a3ae3116bda0bc778db28602b042ad1ae9e0710fd856dcb050fd7a2fe45734f99daf0d29de121b61def0ebc983af9e8ad04d5937d6873a7ee2acbac565500
MISC metadata.xml 440 BLAKE2B 8cc1e3fa25d2c12efb0253a37a0dedb484fcac5930deacd37bc09534e9210e72e58669a07efc0d40612a428d190b852064f6175083c852a8b3a4153101483905 SHA512 79801ac1a34f4e5fc46bd8c45c638dccde3168c701dfaffb51d626405e77fe0e8fa190b32c0b76150e51197223363dea0163086f172b0dccccd0c94fc5cb2d0b
diff --git a/net-print/libppd/files/libppd-2.0.0-slibtool.patch b/net-print/libppd/files/libppd-2.0.0-slibtool.patch
new file mode 100644
index 000000000000..5491ac1fd896
--- /dev/null
+++ b/net-print/libppd/files/libppd-2.0.0-slibtool.patch
@@ -0,0 +1,64 @@
+https://github.com/OpenPrinting/libppd/pull/32
+https://github.com/OpenPrinting/libppd/commit/a040f26f3ca103c8ae7706d91ae157dca0974c49
+
+From e614c21b82a2f85487fe406a8bf4a2c9064501f8 Mon Sep 17 00:00:00 2001
+From: Eli Schwartz <eschwartz93@gmail.com>
+Date: Mon, 18 Dec 2023 22:28:21 -0500
+Subject: [PATCH] build: fix failure to correctly link to zlib
+
+Checking for the header is NOT sufficient when utilizing its shared
+library symbols. Look it up with pkg-config explicitly, and explicitly
+add it to ensure that at runtime, libppd has its own DT_NEEDED
+dependency on libz.so; if libppd successfully links at all -- not a
+given, if -Wl,-no-undefined is used -- then it *may* transitively get
+libz.so from its recursive dependencies, but this is no guarantee at
+all.
+
+Fixes failure to build discovered at https://bugs.gentoo.org/920273
+---
+ Makefile.am | 2 ++
+ configure.ac | 8 +++++++-
+ 2 files changed, 9 insertions(+), 1 deletion(-)
+
+diff --git a/Makefile.am b/Makefile.am
+index 7aed422b..c44aa3e0 100644
+--- a/Makefile.am
++++ b/Makefile.am
+@@ -120,9 +120,11 @@ libppd_la_SOURCES = \
+ $(pkgppddefs_DATA)
+ libppd_la_LIBADD = \
+ $(LIBCUPSFILTERS_LIBS) \
++ $(ZLIB_LIBS) \
+ $(CUPS_LIBS)
+ libppd_la_CFLAGS = \
+ $(LIBCUPSFILTERS_CFLAGS) \
++ $(ZLIB_CFLAGS) \
+ $(CUPS_CFLAGS)
+ libppd_la_CXXFLAGS = \
+ $(libppd_la_CFLAGS)
+diff --git a/configure.ac b/configure.ac
+index 66927d80..7d8a459b 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -164,6 +164,13 @@ AC_SUBST(CUPS_STATEDIR)
+ # ========================
+ PKG_CHECK_MODULES([LIBCUPSFILTERS], [libcupsfilters])
+
++# ==============
++# Check for zlib
++# ==============
++PKG_CHECK_MODULES([ZLIB], [zlib], ,[
++ AC_CHECK_HEADER([zlib.h])
++ AC_CHECK_LIB([z], [deflateInit])])
++
+ # ============================================================
+ # Check for whether we want to install the testppdfile utility
+ # ============================================================
+@@ -220,7 +227,6 @@ AC_CHECK_HEADERS([stdlib.h])
+ AC_CHECK_HEADERS([sys/stat.h])
+ AC_CHECK_HEADERS([sys/types.h])
+ AC_CHECK_HEADERS([unistd.h])
+-AC_CHECK_HEADERS([zlib.h])
+ AC_CHECK_HEADERS([endian.h])
+ AC_CHECK_HEADERS([dirent.h])
+ AC_CHECK_HEADERS([sys/ioctl.h])
diff --git a/net-print/libppd/libppd-2.0.0.ebuild b/net-print/libppd/libppd-2.0.0.ebuild
index df36f78825c6..763f0c6558a3 100644
--- a/net-print/libppd/libppd-2.0.0.ebuild
+++ b/net-print/libppd/libppd-2.0.0.ebuild
@@ -3,7 +3,7 @@
EAPI=8
-inherit libtool
+inherit autotools
DESCRIPTION="Legacy library for PPD files, split out of cups-filters"
HOMEPAGE="https://github.com/OpenPrinting/libppd"
@@ -31,9 +31,13 @@ BDEPEND="
virtual/pkgconfig
"
+PATCHES=(
+ "${FILESDIR}"/${P}-slibtool.patch
+)
+
src_prepare() {
default
- elibtoolize
+ eautoreconf
}
src_configure() {