这是indexloc提供的服务,不要输入任何密码
Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 2 additions & 1 deletion .github/workflows/build_test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -220,7 +220,7 @@ jobs:
TEST_STACK_LIMIT: ${{ matrix.test_stack_limit }}
WILL_TEST: ${{ !matrix.skip_test && (github.event_name == 'push' || (github.event_name == 'pull_request' && matrix.name != 'coverage' && (matrix.test_in_pr || contains(github.event.pull_request.labels.*.name, 'CI:full')))) }}
WILL_BUILD: ${{ github.event_name == 'push' || (github.event_name == 'pull_request' && matrix.name != 'coverage') }}
WILL_BENCH: ${{ github.event_name != 'merge_group' && matrix.run_bench }}
WILL_BENCH: ${{ github.event_name != 'merge_group' && matrix.run_bench || false }}
WILL_COV: ${{ github.event_name == 'push' && matrix.name == 'coverage' }}
FASTER_MSAN_BUILD: 1

Expand Down Expand Up @@ -331,6 +331,7 @@ jobs:
-DCMAKE_CXX_COMPILER_LAUNCHER=ccache \
-DCMAKE_C_COMPILER_LAUNCHER=ccache \
-DBUILD_TESTING=${BUILD_TESTS} \
-DJPEGXL_ENABLE_HWY_AVX3_DL=false \
${{ matrix.cmake_args }}

- name: Build stats
Expand Down
60 changes: 51 additions & 9 deletions .github/workflows/build_test_cross.yml
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,10 @@ concurrency:
group: ${{ github.workflow }}-${{ github.ref }}-${{ github.event_name }}
cancel-in-progress: ${{ github.event_name == 'pull_request' }}

env:
SDE_ID: "813591"
SDE_VERSION: "9.33.0-2024-01-07"

jobs:
compile:
name: Cross-compiling ${{ matrix.identifier }}
Expand All @@ -30,7 +34,7 @@ jobs:
strategy:
fail-fast: false
matrix:
identifier: [armhf, i386]
identifier: [armhf, i386, x64]
include:
- arch: armhf
os: ubuntu-24.04-arm
Expand All @@ -44,6 +48,15 @@ jobs:
build_target: i686-linux-gnu
cflags: -m32

- arch: i686
identifier: x64
test_in_pr: true
cmake_args: >-
-DJPEGXL_ENABLE_HWY_AVX3=true
-DJPEGXL_ENABLE_HWY_AVX3_DL=true
-DJPEGXL_ENABLE_HWY_AVX3_SPR=true
-DJPEGXL_ENABLE_HWY_AVX3_ZEN4=true

env:
WILL_RUN_TESTS: ${{ (github.event_name == 'push' || (github.event_name == 'pull_request' && (matrix.test_in_pr || contains(github.event.pull_request.labels.*.name, 'CI:full')))) }}

Expand All @@ -62,7 +75,7 @@ jobs:
- name: Install build deps
run: |
sudo ARCH=${{ matrix.arch }} BUILD_TARGET=${{ matrix.build_target }} \
./tools/scripts/install_deps.sh --cross build extras
./tools/scripts/install_deps.sh ${{ matrix.arch != 'i686' && '--cross' || ''}} build extras

- name: Build
run: |
Expand All @@ -72,12 +85,13 @@ jobs:
SKIP_TEST=1 TARGETS='all_tests cjxl djxl hwy_list_targets libjxl.so libjxl_dec.so' \
./ci.sh release \
-DJPEGXL_FORCE_SYSTEM_BROTLI=ON \
-DJPEGXL_ENABLE_JNI=OFF
-DJPEGXL_ENABLE_JNI=OFF \
${{ matrix.cmake_args }}

- name: Build stats
run: |
tools/scripts/build_stats.py --save build/stats.json \
--binutils ${{ matrix.build_target }}- \
${{ matrix.build_target && format('--binutils {0}-', matrix.build_target) || ''}} \
--max-stack ${{ matrix.max_stack || '0' }} \
cjxl djxl libjxl.so libjxl_dec.so

Expand All @@ -104,8 +118,8 @@ jobs:
strategy:
fail-fast: false
matrix:
shard_number: [0, 1]
identifier: [armhf, i386]
shard_number: [0, 1, 2, 3, 5, 6, 7, 8]
identifier: [armhf, i386, x64]
include:
- arch: armhf
os: ubuntu-24.04-arm
Expand All @@ -118,6 +132,11 @@ jobs:
test_in_pr: true
last_shard: 2

- arch: i686
identifier: x64
test_in_pr: true
last_shard: 8

env:
UPLOAD_TEST_COST: false
LAST_SHARD: ${{ false && 1 || matrix.last_shard}}
Expand Down Expand Up @@ -145,10 +164,9 @@ jobs:
if: (matrix.shard_number < env.LAST_SHARD) && (env.WILL_RUN_TESTS == 'true')
run: |
sudo ARCH=${{ matrix.arch }} \
./tools/scripts/install_deps.sh --cross extras_runtime runtime
./tools/scripts/install_deps.sh ${{ matrix.arch != 'i686' && '--cross' || ''}} extras_runtime runtime

- name: Test ranging
if: ${{ !matrix.disable_tests }}
run: |
mkdir -p ./build/Testing/Temporary
unzip ./tools/scripts/test_cost-${{ matrix.identifier }}.zip -d ./build/Testing/Temporary
Expand All @@ -158,12 +176,36 @@ jobs:
run: |
rm build/Testing/Temporary/CTestCostData.txt

- name: Cache SDE
if: ${{ matrix.arch == 'i686' }}
uses: actions/cache@0057852bfaa89a56745cba8c7296529d2fc39830 # v4.3.0
with:
path: ${{ github.workspace }}/sde
key: sde-${{ env.SDE_ID }}
- name: Download SDE ${{ env.SDE_VERSION }}
if: ${{ matrix.arch == 'i686' }}
run: |
mkdir -p sde
cd sde
SDE_ARCHIVE=sde.tar.xz
if [ ! -f "${SDE_ARCHIVE}" ]; then
curl -L --show-error -o "${SDE_ARCHIVE}" \
https://downloadmirror.intel.com/${{ env.SDE_ID }}/sde-external-${{ env.SDE_VERSION }}-lin.tar.xz
fi
tar --strip-components=1 -xJf "${SDE_ARCHIVE}"
cd ..

- name: Test
if: (matrix.shard_number < env.LAST_SHARD) && (env.WILL_RUN_TESTS == 'true')
run: |
EMULATOR=
if [[ -n '${{ matrix.arch == 'i686' && 'true' || '' }}' ]]; then
EMULATOR="sde/sde64 -spr --"
fi

chmod +x `cat executable.lst`
BUILD_DIR=build \
./ci.sh test \
${EMULATOR} ./ci.sh test \
-I ${{ matrix.shard_number }},,${{ env.LAST_SHARD }} \
-E '(bash_test|conformance_tooling_test|test_jxl_jni_wrapper|test_jpegli_jni_wrapper)'

Expand Down
Binary file modified tools/scripts/test_cost-armhf.zip
Binary file not shown.
Binary file modified tools/scripts/test_cost-i386.zip
Binary file not shown.
Binary file added tools/scripts/test_cost-x64.zip
Binary file not shown.
Loading