Fix build on manylinux_2_28 x86_64

This commit is contained in:
Andrew Murray 2025-12-15 20:49:18 +11:00
parent e2105f3c7e
commit 0b70b34f19
4 changed files with 35 additions and 14 deletions

View File

@ -56,5 +56,8 @@ pushd depends && sudo ./install_raqm.sh && popd
# libavif
pushd depends && sudo ./install_libavif.sh && popd
# libjxl
pushd depends && sudo ./install_libjxl.sh && popd
# extra test images
pushd depends && ./install_extra_test_images.sh && popd

View File

@ -321,19 +321,6 @@ function build {
build_libpng
build_lcms2
build_openjpeg
webp_cflags="-O3 -DNDEBUG"
if [[ -n "$IS_MACOS" ]]; then
webp_cflags="$webp_cflags -Wl,-headerpad_max_install_names"
fi
webp_ldflags=""
if [[ -n "$IOS_SDK" ]]; then
webp_ldflags="$webp_ldflags -llzma -lz"
fi
CFLAGS="$CFLAGS $webp_cflags" LDFLAGS="$LDFLAGS $webp_ldflags" build_simple libwebp $LIBWEBP_VERSION \
https://storage.googleapis.com/downloads.webmproject.org/releases/webp tar.gz \
--enable-libwebpmux --enable-libwebpdemux
build_brotli
if [[ -n "$IS_MACOS" ]]; then
@ -356,6 +343,18 @@ function build {
build_jpegxl
fi
fi
webp_cflags="-O3 -DNDEBUG"
if [[ -n "$IS_MACOS" ]]; then
webp_cflags="$webp_cflags -Wl,-headerpad_max_install_names"
fi
webp_ldflags=""
if [[ -n "$IOS_SDK" ]]; then
webp_ldflags="$webp_ldflags -llzma -lz"
fi
CFLAGS="$CFLAGS $webp_cflags" LDFLAGS="$LDFLAGS $webp_ldflags" build_simple libwebp $LIBWEBP_VERSION \
https://storage.googleapis.com/downloads.webmproject.org/releases/webp tar.gz \
--enable-libwebpmux --enable-libwebpdemux
}
function create_meson_cross_config {

17
depends/install_libjxl.sh Executable file
View File

@ -0,0 +1,17 @@
#!/bin/bash
version=0.11.1
./download-and-extract.sh highway-1.3.0 https://github.com/google/highway/archive/1.3.0.tar.gz
pushd highway-1.3.0
cmake .
make -j4 install
popd
./download-and-extract.sh libjxl-$version https://github.com/libjxl/libjxl/archive/v$version.tar.gz
pushd libjxl-$version
cmake -DCMAKE_INSTALL_PREFIX=/usr -DJPEGXL_ENABLE_SJPEG=OFF -DJPEGXL_ENABLE_SKCMS=OFF -DBUILD_TESTING=OFF .
make -j4 install
popd

View File

@ -129,6 +129,8 @@ Many of Pillow's features require external libraries:
To install libraqm, ``sudo apt-get install meson`` and then see
``depends/install_raqm.sh``.
To install libjxl, see ``depends/install_libjxl.sh``.
Build prerequisites for libavif on Ubuntu are installed with::
sudo apt-get install cmake ninja-build nasm
@ -166,7 +168,7 @@ Many of Pillow's features require external libraries:
The easiest way to install external libraries is via `Homebrew
<https://brew.sh/>`_. After you install Homebrew, run::
brew install libavif libjpeg libraqm libtiff little-cms2 openjpeg webp
brew install jpeg-xl libavif libjpeg libraqm libtiff little-cms2 openjpeg webp
If you would like to use libavif with more codecs than just aom, then
instead of installing libavif through Homebrew directly, you can use