From 84450c429203901c5de4e786b4413fbb5f25d731 Mon Sep 17 00:00:00 2001 From: Virgil Dupras Date: Mon, 15 Oct 2018 10:41:38 -0400 Subject: app-text/mupdf: fix shared library build Closes: https://bugs.gentoo.org/668684 Signed-off-by: Virgil Dupras Package-Manager: Portage-2.3.51, Repoman-2.3.11 --- app-text/mupdf/files/mupdf-1.14-Makefile.patch | 46 ++++++++ app-text/mupdf/files/mupdf-1.14-debug-build.patch | 13 --- app-text/mupdf/mupdf-1.14.0-r1.ebuild | 120 +++++++++++++++++++++ app-text/mupdf/mupdf-1.14.0.ebuild | 123 ---------------------- 4 files changed, 166 insertions(+), 136 deletions(-) create mode 100644 app-text/mupdf/files/mupdf-1.14-Makefile.patch delete mode 100644 app-text/mupdf/files/mupdf-1.14-debug-build.patch create mode 100644 app-text/mupdf/mupdf-1.14.0-r1.ebuild delete mode 100644 app-text/mupdf/mupdf-1.14.0.ebuild (limited to 'app-text/mupdf') diff --git a/app-text/mupdf/files/mupdf-1.14-Makefile.patch b/app-text/mupdf/files/mupdf-1.14-Makefile.patch new file mode 100644 index 000000000000..a8c4ef770dce --- /dev/null +++ b/app-text/mupdf/files/mupdf-1.14-Makefile.patch @@ -0,0 +1,46 @@ +1. debug build (not sure why...) +2. build shared library +3. add optional static lib target +4. Don't install COPYING +diff --git a/Makefile b/Makefile +index 37fc48e6..4303e9fa 100644 +--- a/Makefile ++++ b/Makefile +@@ -3,7 +3,7 @@ + -include user.make + + ifndef build +- build := release ++ build := debug + endif + + ifndef OUT +@@ -190,13 +190,15 @@ generate: source/pdf/js/util.js.h + + # --- Library --- + +-MUPDF_LIB = $(OUT)/libmupdf.a +-THIRD_LIB = $(OUT)/libmupdf-third.a ++MUPDF_LIB = libmupdf.so.$(GENTOO_PV) ++MUPDF_STATIC = $(OUT)/libmupdf.a ++THIRD_LIB = + THREAD_LIB = $(OUT)/libmupdf-threads.a + PKCS7_LIB = $(OUT)/libmupdf-pkcs7.a + +-$(MUPDF_LIB) : $(MUPDF_OBJ) +-$(THIRD_LIB) : $(THIRD_OBJ) ++$(MUPDF_LIB): $(MUPDF_OBJ) $(THIRD_OBJ) ++ $(QUIET_LINK) $(CC) $(LDFLAGS) --shared -Wl,-soname -Wl,$(MUPDF_LIB) -Wl,--no-undefined -o $@ $^ $(THIRD_LIBS) $(LIBS) ++$(MUPDF_STATIC): $(MUPDF_OBJ) $(THIRD_OBJ) + $(THREAD_LIB) : $(THREAD_OBJ) + $(PKCS7_LIB) : $(PKCS7_OBJ) + +@@ -355,7 +357,7 @@ install: libs apps + + install -d $(DESTDIR)$(docdir) + install -d $(DESTDIR)$(docdir)/examples +- install README COPYING CHANGES $(DESTDIR)$(docdir) ++ install README CHANGES $(DESTDIR)$(docdir) + install docs/*.html docs/*.css docs/*.png $(DESTDIR)$(docdir) + install docs/examples/* $(DESTDIR)$(docdir)/examples + diff --git a/app-text/mupdf/files/mupdf-1.14-debug-build.patch b/app-text/mupdf/files/mupdf-1.14-debug-build.patch deleted file mode 100644 index 6f8b5b96a973..000000000000 --- a/app-text/mupdf/files/mupdf-1.14-debug-build.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff --git a/Makefile b/Makefile -index 37fc48e6..bd8c6049 100644 ---- a/Makefile -+++ b/Makefile -@@ -3,7 +3,7 @@ - -include user.make - - ifndef build -- build := release -+ build := debug - endif - - ifndef OUT diff --git a/app-text/mupdf/mupdf-1.14.0-r1.ebuild b/app-text/mupdf/mupdf-1.14.0-r1.ebuild new file mode 100644 index 000000000000..f12cf699e389 --- /dev/null +++ b/app-text/mupdf/mupdf-1.14.0-r1.ebuild @@ -0,0 +1,120 @@ +# Copyright 1999-2018 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +inherit flag-o-matic toolchain-funcs xdg + +DESCRIPTION="a lightweight PDF viewer and toolkit written in portable C" +HOMEPAGE="https://mupdf.com/" +SRC_URI="https://mupdf.com/downloads/archive/${P}-source.tar.xz" + +LICENSE="AGPL-3" +SLOT="0/${PV}" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~x86 ~amd64-linux ~ppc-macos ~x64-macos ~x86-macos" +IUSE="X curl +javascript libressl opengl +openssl static-libs +vanilla" + +RDEPEND=" + >=dev-lang/mujs-1.0.4 + media-libs/freetype:2=[static-libs?] + media-libs/harfbuzz:=[static-libs?] + media-libs/jbig2dec:=[static-libs?] + media-libs/libpng:0=[static-libs?] + >=media-libs/openjpeg-2.1:2=[static-libs?] + virtual/jpeg[static-libs?] + curl? ( net-misc/curl[static-libs?] ) + !libressl? ( dev-libs/openssl:0=[static-libs?] ) + libressl? ( dev-libs/libressl:0=[static-libs?] ) + opengl? ( >=media-libs/freeglut-3.0.0:= ) + X? ( + x11-libs/libX11[static-libs?] + x11-libs/libXext[static-libs?] + )" +DEPEND="${RDEPEND} + virtual/pkgconfig" + +REQUIRED_USE=" + opengl? ( !static-libs ) + curl? ( X )" + +S=${WORKDIR}/${P}-source + +PATCHES=( + "${FILESDIR}"/${PN}-1.14-CFLAGS.patch + "${FILESDIR}"/${PN}-1.14-Makefile.patch + "${FILESDIR}"/${PN}-1.10a-add-desktop-pc-xpm-files.patch + # See bug #662352 + "${FILESDIR}"/${PN}-1.14-openssl-curl-x11.patch +) + +src_prepare() { + xdg_src_prepare + use hppa && append-cflags -ffunction-sections + + use javascript || \ + sed -e '/* #define FZ_ENABLE_JS/ a\#define FZ_ENABLE_JS 0' \ + -i include/mupdf/fitz/config.h + + use vanilla || eapply \ + "${FILESDIR}"/${PN}-1.3-zoom-2.patch + + sed -e "1iOS = Linux" \ + -e "1iCC = $(tc-getCC)" \ + -e "1iLD = $(tc-getLD)" \ + -e "1iAR = $(tc-getAR)" \ + -e "1iverbose = yes" \ + -e "1ibuild = debug" \ + -e "1iprefix = ${ED}usr" \ + -e "1ilibdir = ${ED}usr/$(get_libdir)" \ + -e "1idocdir = ${ED}usr/share/doc/${PF}" \ + -i Makerules || die +} + +_emake() { + # When HAVE_OBJCOPY is yes, we end up with a lot of QA warnings. + emake \ + GENTOO_PV=${PV} \ + HAVE_GLUT=$(usex opengl yes no) \ + WANT_CURL=$(usex curl) \ + WANT_OPENSSL=$(usex openssl) \ + WANT_X11=$(usex X) \ + USE_SYSTEM_LIBS=yes \ + USE_SYSTEM_MUJS=yes \ + HAVE_OBJCOPY=no \ + "$@" +} + +src_compile() { + _emake XCFLAGS="-fpic" + + use curl && _emake extra-apps + + use static-libs && \ + _emake build/debug/lib${PN}.a +} + +src_install() { + if use X || use opengl ; then + domenu platform/debian/${PN}.desktop + doicon platform/debian/${PN}.xpm + else + rm docs/man/${PN}.1 + fi + + _emake install + + use static-libs && \ + dolib.a build/debug/lib${PN}.a + if use opengl ; then + einfo "mupdf symlink points to mupdf-gl (bug 616654)" + dosym ${PN}-gl /usr/bin/${PN} + elif use X ; then + einfo "mupdf symlink points to mupdf-x11 (bug 616654)" + dosym ${PN}-x11 /usr/bin/${PN} + fi + use curl && dobin build/debug/${PN}-x11-curl + insinto /usr/$(get_libdir)/pkgconfig + doins platform/debian/${PN}.pc + + dodoc README CHANGES CONTRIBUTORS +} diff --git a/app-text/mupdf/mupdf-1.14.0.ebuild b/app-text/mupdf/mupdf-1.14.0.ebuild deleted file mode 100644 index 3bafaab5d0bc..000000000000 --- a/app-text/mupdf/mupdf-1.14.0.ebuild +++ /dev/null @@ -1,123 +0,0 @@ -# Copyright 1999-2018 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=6 - -inherit flag-o-matic toolchain-funcs xdg - -DESCRIPTION="a lightweight PDF viewer and toolkit written in portable C" -HOMEPAGE="https://mupdf.com/" -SRC_URI="https://mupdf.com/downloads/archive/${P}-source.tar.xz" - -LICENSE="AGPL-3" -SLOT="0/${PV}" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~x86 ~amd64-linux ~ppc-macos ~x64-macos ~x86-macos" -IUSE="X curl +javascript libressl opengl +openssl static-libs +vanilla" - -RDEPEND=" - >=dev-lang/mujs-1.0.4 - media-libs/freetype:2=[static-libs?] - media-libs/harfbuzz:=[static-libs?] - media-libs/jbig2dec:=[static-libs?] - media-libs/libpng:0=[static-libs?] - >=media-libs/openjpeg-2.1:2=[static-libs?] - virtual/jpeg[static-libs?] - curl? ( net-misc/curl[static-libs?] ) - !libressl? ( dev-libs/openssl:0=[static-libs?] ) - libressl? ( dev-libs/libressl:0=[static-libs?] ) - opengl? ( >=media-libs/freeglut-3.0.0:= ) - X? ( - x11-libs/libX11[static-libs?] - x11-libs/libXext[static-libs?] - )" -DEPEND="${RDEPEND} - virtual/pkgconfig" - -REQUIRED_USE=" - opengl? ( !static-libs ) - curl? ( X )" - -S=${WORKDIR}/${P}-source - -PATCHES=( - "${FILESDIR}"/${PN}-1.14-CFLAGS.patch - "${FILESDIR}"/${PN}-1.14-debug-build.patch - "${FILESDIR}"/${PN}-1.10a-add-desktop-pc-xpm-files.patch - # See bug #662352 - "${FILESDIR}"/${PN}-1.14-openssl-curl-x11.patch -) - -src_prepare() { - xdg_src_prepare - use hppa && append-cflags -ffunction-sections - - use javascript || \ - sed -e '/* #define FZ_ENABLE_JS/ a\#define FZ_ENABLE_JS 0' \ - -i include/mupdf/fitz/config.h - - use vanilla || eapply \ - "${FILESDIR}"/${PN}-1.3-zoom-2.patch - - sed -e "1iOS = Linux" \ - -e "1iCC = $(tc-getCC)" \ - -e "1iLD = $(tc-getLD)" \ - -e "1iAR = $(tc-getAR)" \ - -e "1iverbose = yes" \ - -e "1ibuild = debug" \ - -e "1iprefix = ${ED}usr" \ - -e "1ilibdir = ${ED}usr/$(get_libdir)" \ - -e "1idocdir = ${ED}usr/share/doc/${PF}" \ - -i Makerules || die - - if use static-libs; then - cp -a "${S}" "${S}"-static || die - fi -} - -_emake() { - # When HAVE_OBJCOPY is yes, we end up with a lot of QA warnings. - emake \ - HAVE_GLUT=$(usex opengl yes no) \ - WANT_CURL=$(usex curl) \ - WANT_OPENSSL=$(usex openssl) \ - WANT_X11=$(usex X) \ - USE_SYSTEM_LIBS=yes \ - USE_SYSTEM_MUJS=yes \ - HAVE_OBJCOPY=no \ - "$@" -} - -src_compile() { - _emake XCFLAGS="-fpic" - - use curl && _emake extra-apps - - use static-libs && \ - _emake -C "${S}"-static build/debug/lib${PN}{,-js-none}.a -} - -src_install() { - if use X || use opengl ; then - domenu platform/debian/${PN}.desktop - doicon platform/debian/${PN}.xpm - else - rm docs/man/${PN}.1 - fi - - _emake install - - use static-libs && \ - dolib.a "${S}"-static/build/debug/lib${PN}{,-js-none}.a - if use opengl ; then - einfo "mupdf symlink points to mupdf-gl (bug 616654)" - dosym ${PN}-gl /usr/bin/${PN} - elif use X ; then - einfo "mupdf symlink points to mupdf-x11 (bug 616654)" - dosym ${PN}-x11 /usr/bin/${PN} - fi - use curl && dobin build/debug/${PN}-x11-curl - insinto /usr/$(get_libdir)/pkgconfig - doins platform/debian/${PN}.pc - - dodoc README CHANGES CONTRIBUTORS -} -- cgit v1.2.3-65-gdbad