@@ -88,6 +88,7 @@ export RUSTFLAGS+=" --remap-path-prefix=$CARGO_HOME/registry/="
88
88
# We don't want to use any native libraries, so unset PKG_CONFIG_PATH
89
89
unset PKG_CONFIG_PATH
90
90
91
+
91
92
# Common options for curl
92
93
CURL=" curl --silent --location --retry 3 --retry-max-time 30"
93
94
@@ -121,6 +122,11 @@ VERSION_AOM=3.7.0
121
122
VERSION_HEIF=1.16.2
122
123
VERSION_CGIF=0.3.2
123
124
125
+ # Additional Tropy dependencies
126
+ VERSION_DE265=1.0.12
127
+ VERSION_OPENJPEG=2.5.0
128
+ VERSION_POPPLER=23.10.0
129
+
124
130
# Remove patch version component
125
131
without_patch () {
126
132
echo " ${1% .[[:digit:]]* } "
@@ -179,6 +185,9 @@ version_latest "rsvg" "$VERSION_RSVG" "5420"
179
185
version_latest " aom" " $VERSION_AOM " " 17628"
180
186
version_latest " heif" " $VERSION_HEIF " " strukturag/libheif"
181
187
version_latest " cgif" " $VERSION_CGIF " " dloebl/cgif"
188
+ version_latest " de265" " $VERSION_DE265 " " 11239"
189
+ version_latest " openjpeg" " $VERSION_OPENJPEG " " 2550"
190
+ version_latest " poppler" " $VERSION_POPPLER " " 3686"
182
191
if [ " $ALL_AT_VERSION_LATEST " = " false" ]; then exit 1; fi
183
192
184
193
# Download and build dependencies from source
@@ -265,12 +274,19 @@ AOM_AS_FLAGS="${FLAGS}" cmake -G"Unix Makefiles" \
265
274
..
266
275
make install/strip
267
276
277
+ mkdir ${DEPS} /de265
278
+ $CURL https://github.com/strukturag/libde265/releases/download/v${VERSION_DE265} /libde265-${VERSION_DE265} .tar.gz | tar xzC ${DEPS} /de265 --strip-components=1
279
+ cd ${DEPS} /de265
280
+ ./configure --host=${CHOST} --prefix=${TARGET} --enable-static --disable-shared --disable-dependency-tracking \
281
+ --disable-dec265 --disable-sherlock265 ${DARWIN_ARM: +--disable-arm}
282
+ make install-strip
283
+
268
284
mkdir ${DEPS} /heif
269
285
$CURL https://github.com/strukturag/libheif/releases/download/v${VERSION_HEIF} /libheif-${VERSION_HEIF} .tar.gz | tar xzC ${DEPS} /heif --strip-components=1
270
286
cd ${DEPS} /heif
271
287
CFLAGS=" ${CFLAGS} -O3" CXXFLAGS=" ${CXXFLAGS} -O3" cmake -G" Unix Makefiles" \
272
- -DCMAKE_TOOLCHAIN_FILE=${ROOT} /Toolchain.cmake -DCMAKE_INSTALL_PREFIX=${TARGET} -DCMAKE_INSTALL_LIBDIR=lib -DCMAKE_BUILD_TYPE=Release \
273
- -DBUILD_SHARED_LIBS=FALSE -DENABLE_PLUGIN_LOADING=0 -DWITH_EXAMPLES=0 -DWITH_LIBDE265=0 -DWITH_X265=0
288
+ -DCMAKE_TOOLCHAIN_FILE=${ROOT} /Toolchain.cmake -DCMAKE_PREFIX_PATH= ${TARGET} - DCMAKE_INSTALL_PREFIX=${TARGET} -DCMAKE_INSTALL_LIBDIR=lib -DCMAKE_BUILD_TYPE=Release \
289
+ -DBUILD_SHARED_LIBS=FALSE -DENABLE_PLUGIN_LOADING=0 -DWITH_EXAMPLES=0 -DWITH_LIBDE265=ON -DWITH_X265=0
274
290
make install/strip
275
291
276
292
mkdir ${DEPS} /jpeg
@@ -439,6 +455,49 @@ CFLAGS="${CFLAGS} -O3" meson setup _build --default-library=static --buildtype=r
439
455
-Dtests=false
440
456
meson install -C _build --tag devel
441
457
458
+ mkdir -p ${DEPS} /openjpeg/build
459
+ $CURL https://github.com/uclouvain/openjpeg/archive/v${VERSION_OPENJPEG} .tar.gz | tar xzC ${DEPS} /openjpeg --strip-components=1
460
+ cd ${DEPS} /openjpeg/build
461
+ LDFLAGS=${LDFLAGS/ \$ / } cmake .. -G" Unix Makefiles" \
462
+ -DCMAKE_TOOLCHAIN_FILE=${ROOT} /Toolchain.cmake -DCMAKE_PREFIX_PATH=${TARGET} -DCMAKE_INSTALL_PREFIX=${TARGET} -DCMAKE_BUILD_TYPE=Release \
463
+ -DBUILD_SHARED_LIBS=FALSE -DBUILD_CODEC=OFF
464
+ make install/strip
465
+
466
+ mkdir -p ${DEPS} /poppler/build
467
+ $CURL https://gitlab.freedesktop.org/poppler/poppler/-/archive/poppler-${VERSION_POPPLER} /poppler-poppler-${VERSION_POPPLER} .tar.bz2 | tar xjC ${DEPS} /poppler --strip-components=1
468
+ cd ${DEPS} /poppler/build
469
+ LDFLAGS=${LDFLAGS/ \$ / } cmake .. -G" Unix Makefiles" \
470
+ -DCMAKE_TOOLCHAIN_FILE=${ROOT} /Toolchain.cmake\
471
+ -DCMAKE_PREFIX_PATH=${TARGET} \
472
+ -DCMAKE_INSTALL_PREFIX=${TARGET} \
473
+ -DCMAKE_INSTALL_LIBDIR=lib \
474
+ -DCMAKE_BUILD_TYPE=Release \
475
+ -DBUILD_SHARED_LIBS=FALSE \
476
+ -DBUILD_CPP_TESTS=OFF \
477
+ -DBUILD_GTK_TESTS=OFF \
478
+ -DBUILD_QT5_TESTS=OFF \
479
+ -DBUILD_QT6_TESTS=OFF \
480
+ -DBUILD_MANUAL_TESTS=OFF \
481
+ -DENABLE_BOOST=OFF \
482
+ -DENABLE_CMS=lcms2 \
483
+ -DENABLE_CPP=OFF \
484
+ -DENABLE_DCTDECODER=libjpeg \
485
+ -DENABLE_GLIB=ON \
486
+ -DENABLE_GOBJECT_INTROSPECTION=OFF \
487
+ -DENABLE_GTK_DOC=OFF \
488
+ -DENABLE_LIBCURL=OFF \
489
+ -DENABLE_LIBOPENJPEG=openjpeg2 \
490
+ -DENABLE_LIBPNG=ON \
491
+ -DENABLE_LIBTIFF=ON \
492
+ -DENABLE_QT5=OFF \
493
+ -DENABLE_QT6=OFF \
494
+ -DENABLE_UNSTABLE_API_ABI_HEADERS=ON \
495
+ -DENABLE_UTILS=OFF \
496
+ -DENABLE_ZLIB=ON \
497
+ -DENABLE_ZLIB_UNCOMPRESS=OFF \
498
+ -DEXTRA_WARN=OFF
499
+ make install/strip
500
+
442
501
mkdir ${DEPS} /vips
443
502
$CURL https://github.com/libvips/libvips/releases/download/v${VERSION_VIPS} /vips-$( without_prerelease $VERSION_VIPS ) .tar.xz | tar xJC ${DEPS} /vips --strip-components=1
444
503
cd ${DEPS} /vips
461
520
sed -i' .bak' " /subdir('man')/{N;N;N;N;d;}" meson.build
462
521
CFLAGS=" ${CFLAGS} -O3" CXXFLAGS=" ${CXXFLAGS} -O3" meson setup _build --default-library=shared --buildtype=release --strip --prefix=${TARGET} ${MESON} \
463
522
-Ddeprecated=false -Dintrospection=false -Dmodules=disabled -Dcfitsio=disabled -Dfftw=disabled -Djpeg-xl=disabled \
464
- -Dmagick=disabled -Dmatio=disabled -Dnifti=disabled -Dopenexr=disabled -Dopenjpeg=disabled - Dopenslide=disabled \
465
- -Dpdfium=disabled -Dpoppler=disabled - Dquantizr=disabled \
523
+ -Dmagick=disabled -Dmatio=disabled -Dnifti=disabled -Dopenexr=disabled -Dopenslide=disabled \
524
+ -Dpdfium=disabled -Dquantizr=disabled \
466
525
-Dppm=false -Danalyze=false -Dradiance=false \
467
526
${LINUX: +-Dcpp_link_args=" $LDFLAGS -Wl,-Bsymbolic-functions -Wl,--version-script=$DEPS /vips/vips.map $EXCLUDE_LIBS " }
468
527
meson install -C _build --tag runtime,devel
@@ -552,7 +611,7 @@ printf "{\n\
552
611
printf " \" ${PLATFORM} \" " > platform.json
553
612
554
613
# Add third-party notices
555
- $CURL -O https://raw.githubusercontent.com/lovell /sharp-libvips/main/THIRD-PARTY-NOTICES.md
614
+ $CURL -O https://raw.githubusercontent.com/tropy /sharp-libvips/main/THIRD-PARTY-NOTICES.json
556
615
557
616
# Create the tarball
558
617
ls -al lib
@@ -561,8 +620,7 @@ mv lib-filtered lib
561
620
tar chzf ${PACKAGE} /libvips-${VERSION_VIPS} -${PLATFORM} .tar.gz \
562
621
include \
563
622
lib \
564
- * .json \
565
- THIRD-PARTY-NOTICES.md
623
+ * .json
566
624
567
625
# Recompress using AdvanceCOMP, ~5% smaller
568
626
advdef --recompress --shrink-insane ${PACKAGE} /libvips-${VERSION_VIPS} -${PLATFORM} .tar.gz
0 commit comments