Skip to content

Commit 876e4f3

Browse files
committed
Enable more builds
1 parent 805006d commit 876e4f3

1 file changed

Lines changed: 282 additions & 0 deletions

File tree

.github/workflows/build_test.yaml

Lines changed: 282 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -239,6 +239,104 @@ jobs:
239239
run: ctest -E "test-unit-sve_128|test-unit-sve_256" --rerun-failed --output-on-failure
240240
working-directory: build_rel
241241

242+
build-ubuntu-arm64-gcc-asan:
243+
name: Ubuntu arm64 GCC (ASAN)
244+
runs-on: ubuntu-24.04-arm
245+
steps:
246+
- name: Git checkout
247+
uses: actions/checkout@v6
248+
with:
249+
submodules: 'true'
250+
251+
- name: Update apt packages
252+
run: sudo apt-get update
253+
254+
- name: Install ImageMagick
255+
run: sudo apt-get install imagemagick
256+
257+
- name: Install GCC 14
258+
run: sudo apt-get install -y gcc-14
259+
260+
- name: Build release
261+
run: |
262+
export CXX=g++-14
263+
mkdir build_rel
264+
cd build_rel
265+
cmake -G "Unix Makefiles" -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_INSTALL_PREFIX=../ -DASTCENC_UNITTEST=ON -DASTCENC_ISA_NEON=ON -DASTCENC_ISA_SVE_128=ON -DASTCENC_ISA_NONE=ON -DASTCENC_ASAN=ON ..
266+
make install -j4
267+
268+
- name: Setup Python
269+
uses: actions/setup-python@v6
270+
with:
271+
python-version: '3.12'
272+
273+
- name: Get Python modules
274+
run: |
275+
python -m pip install --upgrade pip
276+
pip install numpy Pillow
277+
278+
- name: Run system tests
279+
# Disable SVE for now
280+
run: |
281+
python ./Test/astc_test_functional.py --encoder none
282+
python ./Test/astc_test_functional.py --encoder neon
283+
python ./Test/astc_test_image.py --encoder none --test-set Small
284+
python ./Test/astc_test_image.py --encoder neon --test-set Small
285+
286+
- name: Run unit tests
287+
# Disable SVE for now
288+
run: ctest -E "test-unit-sve_128|test-unit-sve_256" --rerun-failed --output-on-failure
289+
working-directory: build_rel
290+
291+
build-ubuntu-arm64-gcc-ubsan:
292+
name: Ubuntu arm64 GCC (UBSAN)
293+
runs-on: ubuntu-24.04-arm
294+
steps:
295+
- name: Git checkout
296+
uses: actions/checkout@v6
297+
with:
298+
submodules: 'true'
299+
300+
- name: Update apt packages
301+
run: sudo apt-get update
302+
303+
- name: Install ImageMagick
304+
run: sudo apt-get install imagemagick
305+
306+
- name: Install GCC 14
307+
run: sudo apt-get install -y gcc-14
308+
309+
- name: Build release
310+
run: |
311+
export CXX=g++-14
312+
mkdir build_rel
313+
cd build_rel
314+
cmake -G "Unix Makefiles" -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_INSTALL_PREFIX=../ -DASTCENC_UNITTEST=ON -DASTCENC_ISA_NEON=ON -DASTCENC_ISA_SVE_128=ON -DASTCENC_ISA_NONE=ON -DASTCENC_UBSAN=ON ..
315+
make install -j4
316+
317+
- name: Setup Python
318+
uses: actions/setup-python@v6
319+
with:
320+
python-version: '3.12'
321+
322+
- name: Get Python modules
323+
run: |
324+
python -m pip install --upgrade pip
325+
pip install numpy Pillow
326+
327+
- name: Run system tests
328+
# Disable SVE for now
329+
run: |
330+
python ./Test/astc_test_functional.py --encoder none
331+
python ./Test/astc_test_functional.py --encoder neon
332+
python ./Test/astc_test_image.py --encoder none --test-set Small
333+
python ./Test/astc_test_image.py --encoder neon --test-set Small
334+
335+
- name: Run unit tests
336+
# Disable SVE for now
337+
run: ctest -E "test-unit-sve_128|test-unit-sve_256" --rerun-failed --output-on-failure
338+
working-directory: build_rel
339+
242340
build-ubuntu-x64-clang:
243341
name: Ubuntu x64 Clang
244342
runs-on: ubuntu-24.04
@@ -310,6 +408,98 @@ jobs:
310408
run: ctest --rerun-failed --output-on-failure
311409
working-directory: build_rel
312410

411+
build-ubuntu-x64-clang-asan:
412+
name: Ubuntu x64 Clang (ASAN)
413+
runs-on: ubuntu-24.04
414+
steps:
415+
- name: Git checkout
416+
uses: actions/checkout@v6
417+
with:
418+
submodules: 'true'
419+
420+
- name: Update apt packages
421+
run: sudo apt-get update
422+
423+
- name: Install ImageMagick
424+
run: sudo apt-get install imagemagick
425+
426+
- name: Build release
427+
run: |
428+
export CXX=clang++
429+
mkdir build_rel
430+
cd build_rel
431+
cmake -G "Unix Makefiles" -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_INSTALL_PREFIX=../ -DASTCENC_UNITTEST=ON -DASTCENC_ISA_AVX2=ON -DASTCENC_ISA_SSE41=ON -DASTCENC_ISA_SSE2=ON -DASTCENC_ISA_NONE=ON -DASTCENC_UNITTEST=ON -DASTCENC_ASAN=ON -DASTCENC_PACKAGE=x64 ..
432+
make install package -j4
433+
434+
- name: Setup Python
435+
uses: actions/setup-python@v6
436+
with:
437+
python-version: '3.12'
438+
439+
- name: Get Python modules
440+
run: |
441+
python -m pip install --upgrade pip
442+
pip install numpy Pillow
443+
444+
- name: Run system tests
445+
run: |
446+
python ./Test/astc_test_functional.py --encoder none
447+
python ./Test/astc_test_functional.py --encoder sse2
448+
python ./Test/astc_test_functional.py --encoder sse4.1
449+
python ./Test/astc_test_functional.py --encoder avx2
450+
python ./Test/astc_test_image.py --encoder none --test-set Small
451+
python ./Test/astc_test_image.py --encoder all-x86 --test-set Small
452+
453+
- name: Run unit tests
454+
run: ctest --rerun-failed --output-on-failure
455+
working-directory: build_rel
456+
457+
build-ubuntu-x64-clang-ubsan:
458+
name: Ubuntu x64 Clang (UBSAN)
459+
runs-on: ubuntu-24.04
460+
steps:
461+
- name: Git checkout
462+
uses: actions/checkout@v6
463+
with:
464+
submodules: 'true'
465+
466+
- name: Update apt packages
467+
run: sudo apt-get update
468+
469+
- name: Install ImageMagick
470+
run: sudo apt-get install imagemagick
471+
472+
- name: Build release
473+
run: |
474+
export CXX=clang++
475+
mkdir build_rel
476+
cd build_rel
477+
cmake -G "Unix Makefiles" -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_INSTALL_PREFIX=../ -DASTCENC_UNITTEST=ON -DASTCENC_ISA_AVX2=ON -DASTCENC_ISA_SSE41=ON -DASTCENC_ISA_SSE2=ON -DASTCENC_ISA_NONE=ON -DASTCENC_UNITTEST=ON -DASTCENC_UBSAN=ON -DASTCENC_PACKAGE=x64 ..
478+
make install package -j4
479+
480+
- name: Setup Python
481+
uses: actions/setup-python@v6
482+
with:
483+
python-version: '3.12'
484+
485+
- name: Get Python modules
486+
run: |
487+
python -m pip install --upgrade pip
488+
pip install numpy Pillow
489+
490+
- name: Run system tests
491+
run: |
492+
python ./Test/astc_test_functional.py --encoder none
493+
python ./Test/astc_test_functional.py --encoder sse2
494+
python ./Test/astc_test_functional.py --encoder sse4.1
495+
python ./Test/astc_test_functional.py --encoder avx2
496+
python ./Test/astc_test_image.py --encoder none --test-set Small
497+
python ./Test/astc_test_image.py --encoder all-x86 --test-set Small
498+
499+
- name: Run unit tests
500+
run: ctest --rerun-failed --output-on-failure
501+
working-directory: build_rel
502+
313503
build-ubuntu-x64-gcc:
314504
name: Ubuntu x64 GCC
315505
runs-on: ubuntu-24.04
@@ -373,6 +563,98 @@ jobs:
373563
run: ctest --rerun-failed --output-on-failure
374564
working-directory: build_rel
375565

566+
build-ubuntu-x64-gcc-asan:
567+
name: Ubuntu x64 GCC (ASAN)
568+
runs-on: ubuntu-24.04
569+
steps:
570+
- name: Git checkout
571+
uses: actions/checkout@v6
572+
with:
573+
submodules: 'true'
574+
575+
- name: Update apt packages
576+
run: sudo apt-get update
577+
578+
- name: Install ImageMagick
579+
run: sudo apt-get install imagemagick
580+
581+
- name: Build release
582+
run: |
583+
export CXX=g++
584+
mkdir build_rel
585+
cd build_rel
586+
cmake -G "Unix Makefiles" -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_INSTALL_PREFIX=../ -DASTCENC_UNITTEST=ON -DASTCENC_ISA_AVX2=ON -DASTCENC_ISA_SSE41=ON -DASTCENC_ISA_SSE2=ON -DASTCENC_ISA_NONE=ON -DASTCENC_UNITTEST=ON -DASTCENC_ASAN=ON -DASTCENC_PACKAGE=x64 ..
587+
make install package -j4
588+
589+
- name: Setup Python
590+
uses: actions/setup-python@v6
591+
with:
592+
python-version: '3.12'
593+
594+
- name: Get Python modules
595+
run: |
596+
python -m pip install --upgrade pip
597+
pip install numpy Pillow
598+
599+
- name: Run system tests
600+
run: |
601+
python ./Test/astc_test_functional.py --encoder none
602+
python ./Test/astc_test_functional.py --encoder sse2
603+
python ./Test/astc_test_functional.py --encoder sse4.1
604+
python ./Test/astc_test_functional.py --encoder avx2
605+
python ./Test/astc_test_image.py --encoder none --test-set Small
606+
python ./Test/astc_test_image.py --encoder all-x86 --test-set Small
607+
608+
- name: Run unit tests
609+
run: ctest --rerun-failed --output-on-failure
610+
working-directory: build_rel
611+
612+
build-ubuntu-x64-gcc-ubsan:
613+
name: Ubuntu x64 GCC (UBSAN)
614+
runs-on: ubuntu-24.04
615+
steps:
616+
- name: Git checkout
617+
uses: actions/checkout@v6
618+
with:
619+
submodules: 'true'
620+
621+
- name: Update apt packages
622+
run: sudo apt-get update
623+
624+
- name: Install ImageMagick
625+
run: sudo apt-get install imagemagick
626+
627+
- name: Build release
628+
run: |
629+
export CXX=g++
630+
mkdir build_rel
631+
cd build_rel
632+
cmake -G "Unix Makefiles" -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_INSTALL_PREFIX=../ -DASTCENC_UNITTEST=ON -DASTCENC_ISA_AVX2=ON -DASTCENC_ISA_SSE41=ON -DASTCENC_ISA_SSE2=ON -DASTCENC_ISA_NONE=ON -DASTCENC_UNITTEST=ON -DASTCENC_UBSAN=ON -DASTCENC_PACKAGE=x64 ..
633+
make install package -j4
634+
635+
- name: Setup Python
636+
uses: actions/setup-python@v6
637+
with:
638+
python-version: '3.12'
639+
640+
- name: Get Python modules
641+
run: |
642+
python -m pip install --upgrade pip
643+
pip install numpy Pillow
644+
645+
- name: Run system tests
646+
run: |
647+
python ./Test/astc_test_functional.py --encoder none
648+
python ./Test/astc_test_functional.py --encoder sse2
649+
python ./Test/astc_test_functional.py --encoder sse4.1
650+
python ./Test/astc_test_functional.py --encoder avx2
651+
python ./Test/astc_test_image.py --encoder none --test-set Small
652+
python ./Test/astc_test_image.py --encoder all-x86 --test-set Small
653+
654+
- name: Run unit tests
655+
run: ctest --rerun-failed --output-on-failure
656+
working-directory: build_rel
657+
376658
build-macos-x64-clang:
377659
name: macOS x64 Clang
378660
runs-on: macos-14

0 commit comments

Comments
 (0)