From: Sergey Matveev Date: Fri, 14 Jun 2024 12:42:03 +0000 (+0300) Subject: Fix MuPDF linking with libjpeg-turbo X-Git-Url: http://www.git.cypherpunks.su/?a=commitdiff_plain;h=0821f3ba87227b7ea2bf202e65dbdb4e1f68eab7600675e87fae535d56d01e38;p=bass.git Fix MuPDF linking with libjpeg-turbo --- diff --git a/build/distfiles/.gitignore b/build/distfiles/.gitignore index 798d8c3..9c66ed8 100644 --- a/build/distfiles/.gitignore +++ b/build/distfiles/.gitignore @@ -77,6 +77,7 @@ /libiconv-1.17.tar.gz /libidn2-2.3.7.tar.gz /libjpeg-turbo-1.5.2.tar.gz +/libjpeg-turbo-3.0.3.tar.gz /libjxl-v0.10-snapshot-179-gcdb6a667.tar.zst /libjxl/ /libksba-1.6.6.tar.bz2 diff --git a/build/distfiles/libjpeg-turbo-3.0.3.tar.gz.meta4 b/build/distfiles/libjpeg-turbo-3.0.3.tar.gz.meta4 new file mode 100644 index 0000000..44ce98e --- /dev/null +++ b/build/distfiles/libjpeg-turbo-3.0.3.tar.gz.meta4 @@ -0,0 +1,37 @@ + + + + 32df76f07f00411f298a9c89173a0db5df4c2bde2447e73d34726f5e2fb5d47a + 9d141dadd0dce970bf857b51352c57a8e15180438abd7d6d66f9dfd24e23889add8c6c89120b84026e40ab61611516b0567984bd1db37e9c45b41917cf32e9a6 + bb06a6a7ac345cf29b86f9cddf1bb43377ddf8227c6347a69c94e9e4e751c462 + fee08eb66d31eed66b852022d5e304420ca098acf602d2bcd28ab1885d81a7686e9c546317fcff3b424a7f3332e3bfe7529beeba372a4854bd6afdfb4977dd33 + 4ff50b4d0707b79d348357cb28bdb8f1d41a981afc0234d621704e1257d5da98 + d0fb5b33a466784f6d4b1491ab7b74bebe90eb69162597f13f21d3401b05601fb0056bb53bb7ab70560c31563ef827165d33d8dd4d3b99bbe1bf429d128fdb67 + 7c3a6660e7a54527eaa40929f5cc3d519842ffb7e961c32630ae7232b71ecaa19e89dbf5600c61038f0c5db289b607c2316fe9b6b03d482d770bcac29288d129 + 343e789069fc7afbcdfe44dbba7dbbf45afa98a15150e079a38e60e44578865d + 1955c82cf7f3cc95b622e6900c8bb7756570bb93d138aa4d894620972958cc0ad0d57fe95f9dad5b2439fde2557be9d9cb283419ee17caa500c2a83a93f0c4b2 + b8ff6c8b3eb333436accc9f9b6d07b05d8c22dc77b40e9e23532b3b4f9ed4ead + 261a30241540bf11687200d72324736a + + 2832827 + https://github.com/libjpeg-turbo/libjpeg-turbo/releases/download/3.0.3/libjpeg-turbo-3.0.3.tar.gz + + diff --git a/build/skel/graphics/imlib2-1.12.2.do b/build/skel/graphics/imlib2-1.12.2.do index f184ab1..5af5e45 100644 --- a/build/skel/graphics/imlib2-1.12.2.do +++ b/build/skel/graphics/imlib2-1.12.2.do @@ -6,7 +6,7 @@ bdeps="rc-paths stow archivers/zstd devel/pkgconf-2.1.1" rdeps=" graphics/freetype-2.9.1 graphics/libpng-1.6.43 -graphics/libjpeg-turbo-1.5.2 +graphics/libjpeg-turbo-3.0.3 graphics/libjxl-v0.10-snapshot-179-gcdb6a667 graphics/libavif-v1.0.0-535-g7fbc20c graphics/libwebp-1.4.0 diff --git a/build/skel/graphics/libavif-v1.0.0-535-g7fbc20c.do b/build/skel/graphics/libavif-v1.0.0-535-g7fbc20c.do index 8405f21..a74a2de 100644 --- a/build/skel/graphics/libavif-v1.0.0-535-g7fbc20c.do +++ b/build/skel/graphics/libavif-v1.0.0-535-g7fbc20c.do @@ -5,7 +5,7 @@ sname=$1.do . "$BASS_ROOT"/lib/rc bdeps="rc-paths stow archivers/zstd devel/cmake-3.28.3 devel/pkgconf-2.1.1" rdeps=" multimedia/dav1d-1.4.2-8-gda2cc78 -graphics/libjpeg-turbo-1.5.2 +graphics/libjpeg-turbo-3.0.3 graphics/libpng-1.6.43 multimedia/svt-av1-v2.1.0-12-gfcf56491 " diff --git a/build/skel/graphics/libjpeg-turbo-3.0.3.do b/build/skel/graphics/libjpeg-turbo-3.0.3.do new file mode 100644 index 0000000..0cbd1c2 --- /dev/null +++ b/build/skel/graphics/libjpeg-turbo-3.0.3.do @@ -0,0 +1,31 @@ +[ -n "$BASS_ROOT" ] || BASS_ROOT="$(dirname "$(realpath -- "$0")")"/../../../.. +sname=$1.do . "$BASS_ROOT"/lib/rc +. "$BASS_ROOT"/build/skel/common.rc + +bdeps=" +rc-paths +stow +archivers/zstd +devel/gmake-4.4.1 +devel/cmake-3.28.3 +devel/nasm-2.16.01 +devel/pkgconf-2.1.1 +" +redo-ifchange $bdeps "$DISTFILES"/$NAME.tar.gz +hsh=$("$BASS_ROOT"/build/bin/cksum $BASS_REV $SPATH) +. "$BASS_ROOT"/build/lib/create-tmp-for-build.rc +"$BASS_ROOT"/build/bin/pkg-inst $bdeps +. ./rc +$TAR xf "$DISTFILES"/$NAME.tar.gz +"$BASS_ROOT"/bin/rm-r "$SKELBINS"/$ARCH/$NAME-$hsh + +cd $NAME +mkdir build +cd build +cmake -G"Unix Makefiles" -DCMAKE_BUILD_TYPE=Release -DWITH_JPEG8=1 \ + -DCMAKE_INSTALL_PREFIX="$SKELBINS"/$ARCH/$NAME-$hsh .. >&2 +gmake -j$MAKE_JOBS >&2 +gmake install >&2 + +cd "$SKELBINS"/$ARCH +"$BASS_ROOT"/build/lib/mk-pkg $NAME-$hsh diff --git a/build/skel/graphics/libwebp-1.4.0.do b/build/skel/graphics/libwebp-1.4.0.do index 726086d..92d68a7 100644 --- a/build/skel/graphics/libwebp-1.4.0.do +++ b/build/skel/graphics/libwebp-1.4.0.do @@ -3,7 +3,7 @@ sname=$1.do . "$BASS_ROOT"/lib/rc . "$BASS_ROOT"/build/skel/common.rc bdeps="rc-paths stow archivers/zstd devel/pkgconf-2.1.1" -rdeps="graphics/libjpeg-turbo-1.5.2 graphics/libpng-1.6.43" +rdeps="graphics/libjpeg-turbo-3.0.3 graphics/libpng-1.6.43" redo-ifchange $bdeps "$DISTFILES"/$NAME.tar.gz $rdeps hsh=$("$BASS_ROOT"/build/bin/cksum $BASS_REV $SPATH) . "$BASS_ROOT"/build/lib/create-tmp-for-build.rc diff --git a/build/skel/graphics/mupdf-1.24.0-170-g05063f228.do b/build/skel/graphics/mupdf-1.24.0-170-g05063f228.do index 7b74db2..3e3784b 100644 --- a/build/skel/graphics/mupdf-1.24.0-170-g05063f228.do +++ b/build/skel/graphics/mupdf-1.24.0-170-g05063f228.do @@ -10,16 +10,33 @@ devel/gmake-4.4.1 devel/pkgconf-2.1.1 shells/bash-5.2.21 " -redo-ifchange $bdeps "$DISTFILES"/$NAME.tar.zst +rdeps=graphics/libjpeg-turbo-3.0.3 +redo-ifchange $bdeps "$DISTFILES"/$NAME.tar.zst $rdeps hsh=$("$BASS_ROOT"/build/bin/cksum $BASS_REV $SPATH) . "$BASS_ROOT"/build/lib/create-tmp-for-build.rc -"$BASS_ROOT"/build/bin/pkg-inst $bdeps +"$BASS_ROOT"/build/bin/pkg-inst $bdeps $rdeps . ./rc $TAR xf "$DISTFILES"/$NAME.tar.zst --options read_concatenated_archives "$BASS_ROOT"/bin/rm-r "$SKELBINS"/$ARCH/$NAME-$hsh cd $NAME -XCFLAGS=-fPIC gmake -j8 HAVE_X11=no HAVE_GLUT=no prefix="$SKELBINS"/$ARCH/$NAME-$hsh install >&2 +# Ability to install only shared libraries: +# patch <"$BASS_ROOT"/build/skel/graphics/mupdf-libmupdf-third-install.patch >&2 +# shared=yes USE_SYSTEM_LIBJPEG=yes +XCFLAGS=-fPIC gmake -j$MAKE_JOBS \ + HAVE_X11=no HAVE_GLUT=no build=release \ + prefix="$SKELBINS"/$ARCH/$NAME-$hsh install >&2 cd "$SKELBINS"/$ARCH +"$BASS_ROOT"/build/lib/prepare-preinst-010-rdeps $NAME-$hsh $rdeps + +mkdir $NAME-$hsh/skelpkg/$NAME-$hsh/hooks/postinst +cat >$NAME-$hsh/skelpkg/$NAME-$hsh/hooks/postinst/010preload-libjpeg <>rc +EOF +chmod +x $NAME-$hsh/skelpkg/$NAME-$hsh/hooks/postinst/010preload-libjpeg + "$BASS_ROOT"/build/lib/mk-pkg $NAME-$hsh diff --git a/build/skel/graphics/mupdf-libmupdf-third-install.patch b/build/skel/graphics/mupdf-libmupdf-third-install.patch new file mode 100644 index 0000000..f316059 --- /dev/null +++ b/build/skel/graphics/mupdf-libmupdf-third-install.patch @@ -0,0 +1,30 @@ +--- Makefile.orig 2024-06-12 20:55:27.000000000 +0300 ++++ Makefile 2024-06-14 12:14:18.213060000 +0300 +@@ -126,7 +126,7 @@ + $(CC_CMD) $(LIB_CFLAGS) $(WARNING_CFLAGS) $(THIRD_CFLAGS) $(THREADING_CFLAGS) + + $(OUT)/generated/%.o : generated/%.c +- $(CC_CMD) $(WARNING_CFLAGS) $(LIB_CFLAGS) -O0 ++ $(CC_CMD) $(WARNING_CFLAGS) $(LIB_CFLAGS) -O2 + + $(OUT)/platform/x11/%.o : platform/x11/%.c + $(CC_CMD) $(WARNING_CFLAGS) $(X11_CFLAGS) +@@ -300,6 +300,7 @@ + + ifeq ($(shared),yes) + MUPDF_LIB = $(OUT)/libmupdf.$(SO)$(SO_VERSION) ++THIRD_LIB = $(OUT)/libmupdf-third.$(SO)$(SO_VERSION) + ifeq ($(SO),dll) + MUPDF_LIB_IMPORT = $(OUT)/libmupdf_$(SO).a + LIBS_TO_INSTALL_IN_BIN = $(MUPDF_LIB) +@@ -335,7 +336,10 @@ + endif + + $(MUPDF_LIB) : $(MUPDF_OBJ) ++ $(LINK_CMD) -shared -Wl,-soname -Wl,libmupdf.$(SO)$(SO_VERSION) + $(THIRD_LIB) : $(THIRD_OBJ) ++ $(LINK_CMD) -shared -Wl,-soname -Wl,libmupdf-third.$(SO)$(SO_VERSION) ++LIBS_TO_INSTALL_IN_LIB = $(MUPDF_LIB) $(THIRD_LIB) + $(THREAD_LIB) : $(THREAD_OBJ) + $(PKCS7_LIB) : $(PKCS7_OBJ) +