mirror of
https://github.com/python-pillow/Pillow.git
synced 2024-12-25 09:26:16 +03:00
Cache libimagequant
This commit is contained in:
parent
0b6c7ba49e
commit
97d24f14a5
8
.github/workflows/docs.yml
vendored
8
.github/workflows/docs.yml
vendored
|
@ -44,11 +44,19 @@ jobs:
|
||||||
- name: Build system information
|
- name: Build system information
|
||||||
run: python3 .github/workflows/system-info.py
|
run: python3 .github/workflows/system-info.py
|
||||||
|
|
||||||
|
- name: Cache libimagequant
|
||||||
|
uses: actions/cache@v4
|
||||||
|
id: cache-libimagequant
|
||||||
|
with:
|
||||||
|
path: ~/cache-libimagequant
|
||||||
|
key: ${{ runner.os }}-libimagequant-${{ hashFiles('depends/install_imagequant.sh') }}
|
||||||
|
|
||||||
- name: Install Linux dependencies
|
- name: Install Linux dependencies
|
||||||
run: |
|
run: |
|
||||||
.ci/install.sh
|
.ci/install.sh
|
||||||
env:
|
env:
|
||||||
GHA_PYTHON_VERSION: "3.x"
|
GHA_PYTHON_VERSION: "3.x"
|
||||||
|
GHA_LIBIMAGEQUANT_CACHE_HIT: ${{ steps.cache-libimagequant.outputs.cache-hit }}
|
||||||
|
|
||||||
- name: Build
|
- name: Build
|
||||||
run: |
|
run: |
|
||||||
|
|
9
.github/workflows/test.yml
vendored
9
.github/workflows/test.yml
vendored
|
@ -75,12 +75,21 @@ jobs:
|
||||||
- name: Build system information
|
- name: Build system information
|
||||||
run: python3 .github/workflows/system-info.py
|
run: python3 .github/workflows/system-info.py
|
||||||
|
|
||||||
|
- name: Cache libimagequant
|
||||||
|
if: startsWith(matrix.os, 'ubuntu')
|
||||||
|
uses: actions/cache@v4
|
||||||
|
id: cache-libimagequant
|
||||||
|
with:
|
||||||
|
path: ~/cache-libimagequant
|
||||||
|
key: ${{ runner.os }}-libimagequant-${{ hashFiles('depends/install_imagequant.sh') }}
|
||||||
|
|
||||||
- name: Install Linux dependencies
|
- name: Install Linux dependencies
|
||||||
if: startsWith(matrix.os, 'ubuntu')
|
if: startsWith(matrix.os, 'ubuntu')
|
||||||
run: |
|
run: |
|
||||||
.ci/install.sh
|
.ci/install.sh
|
||||||
env:
|
env:
|
||||||
GHA_PYTHON_VERSION: ${{ matrix.python-version }}
|
GHA_PYTHON_VERSION: ${{ matrix.python-version }}
|
||||||
|
GHA_LIBIMAGEQUANT_CACHE_HIT: ${{ steps.cache-libimagequant.outputs.cache-hit }}
|
||||||
|
|
||||||
- name: Install macOS dependencies
|
- name: Install macOS dependencies
|
||||||
if: startsWith(matrix.os, 'macOS')
|
if: startsWith(matrix.os, 'macOS')
|
||||||
|
|
|
@ -1,15 +1,37 @@
|
||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
# install libimagequant
|
# install libimagequant
|
||||||
|
|
||||||
archive=libimagequant-4.2.2
|
archive_name=libimagequant
|
||||||
|
archive_version=4.2.2
|
||||||
|
|
||||||
|
archive=$archive_name-$archive_version
|
||||||
|
|
||||||
|
if [[ "$GHA_LIBIMAGEQUANT_CACHE_HIT" == "true" ]]; then
|
||||||
|
|
||||||
|
# Copy cached files into place
|
||||||
|
sudo cp ~/cache-$archive_name/libimagequant.so* /usr/lib/
|
||||||
|
sudo cp ~/cache-$archive_name/libimagequant.h /usr/include/
|
||||||
|
|
||||||
|
else
|
||||||
|
|
||||||
|
# Build from source
|
||||||
./download-and-extract.sh $archive https://raw.githubusercontent.com/python-pillow/pillow-depends/main/$archive.tar.gz
|
./download-and-extract.sh $archive https://raw.githubusercontent.com/python-pillow/pillow-depends/main/$archive.tar.gz
|
||||||
|
|
||||||
pushd $archive/imagequant-sys
|
pushd $archive/imagequant-sys
|
||||||
|
|
||||||
cargo install cargo-c
|
time cargo install cargo-c
|
||||||
cargo cinstall --prefix=/usr --destdir=.
|
time cargo cinstall --prefix=/usr --destdir=.
|
||||||
|
|
||||||
|
# Copy into place
|
||||||
sudo cp usr/lib/libimagequant.so* /usr/lib/
|
sudo cp usr/lib/libimagequant.so* /usr/lib/
|
||||||
sudo cp usr/include/libimagequant.h /usr/include/
|
sudo cp usr/include/libimagequant.h /usr/include/
|
||||||
|
|
||||||
|
# Copy to cache
|
||||||
|
rm -rf ~/cache-$archive_name
|
||||||
|
mkdir ~/cache-$archive_name
|
||||||
|
cp usr/lib/libimagequant.so* ~/cache-$archive_name/
|
||||||
|
cp usr/include/libimagequant.h ~/cache-$archive_name/
|
||||||
|
|
||||||
popd
|
popd
|
||||||
|
|
||||||
|
fi
|
||||||
|
|
Loading…
Reference in New Issue
Block a user