CI updates
This commit is contained in:
parent
d3504d8af2
commit
3c3caaa567
15
.github/workflows/ci.yml
vendored
15
.github/workflows/ci.yml
vendored
@ -412,15 +412,12 @@ jobs:
|
|||||||
fail-fast: false
|
fail-fast: false
|
||||||
matrix:
|
matrix:
|
||||||
include:
|
include:
|
||||||
# { name: windows-2019-amd64, os: windows-2019, vsversion: 2019, vsarch: amd64 }
|
|
||||||
- { name: windows-2022-amd64, os: windows-2022, vsversion: 2022, vsarch: amd64 }
|
- { name: windows-2022-amd64, os: windows-2022, vsversion: 2022, vsarch: amd64 }
|
||||||
- { name: windows-2022-arm64, os: windows-2022, vsversion: 2022, vsarch: amd64_arm64 }
|
|
||||||
# { name: windows-2022-arm64ec, os: windows-2022, vsversion: 2022, vsarch: amd64_arm64, use_arm64ec: true }
|
|
||||||
- { name: windows-2022-i386, os: windows-2022, vsversion: 2022, vsarch: amd64_x86 }
|
- { name: windows-2022-i386, os: windows-2022, vsversion: 2022, vsarch: amd64_x86 }
|
||||||
- { name: windows-2025-amd64, os: windows-2025, vsversion: 2022, vsarch: amd64 }
|
- { name: windows-2025-amd64, os: windows-2025, vsversion: 2022, vsarch: amd64 }
|
||||||
- { name: windows-2025-arm64, os: windows-2025, vsversion: 2022, vsarch: amd64_arm64 }
|
|
||||||
- { name: windows-2025-arm64ec, os: windows-2025, vsversion: 2022, vsarch: amd64_arm64, use_arm64ec: true }
|
|
||||||
- { name: windows-2025-i386, os: windows-2025, vsversion: 2022, vsarch: amd64_x86 }
|
- { name: windows-2025-i386, os: windows-2025, vsversion: 2022, vsarch: amd64_x86 }
|
||||||
|
- { name: windows-11-arm-arm64, os: windows-11-arm, vsversion: 2022, vsarch: arm64 }
|
||||||
|
- { name: windows-11-arm-arm64ec, os: windows-11-arm, vsversion: 2022, vsarch: arm64, use_arm64ec: true }
|
||||||
name: ${{ format('{0}', matrix.name) }}
|
name: ${{ format('{0}', matrix.name) }}
|
||||||
runs-on: ${{ matrix.os }}
|
runs-on: ${{ matrix.os }}
|
||||||
steps:
|
steps:
|
||||||
@ -438,7 +435,7 @@ jobs:
|
|||||||
elif [[ "${{ matrix.use_arm64ec }}" == "true" ]]; then true;
|
elif [[ "${{ matrix.use_arm64ec }}" == "true" ]]; then true;
|
||||||
echo "UPX_CMAKE_CONFIG_FLAGS_PLATFORM=-A ARM64EC" >> $GITHUB_ENV
|
echo "UPX_CMAKE_CONFIG_FLAGS_PLATFORM=-A ARM64EC" >> $GITHUB_ENV
|
||||||
echo "UPX_CONFIG_DISABLE_SELF_PACK_TEST=ON" >> $GITHUB_ENV
|
echo "UPX_CONFIG_DISABLE_SELF_PACK_TEST=ON" >> $GITHUB_ENV
|
||||||
elif [[ "${{ matrix.vsarch }}" == amd64_arm64 ]]; then true;
|
elif [[ "${{ matrix.vsarch }}" == *arm64 ]]; then true;
|
||||||
echo "UPX_CMAKE_CONFIG_FLAGS_PLATFORM=-A ARM64" >> $GITHUB_ENV
|
echo "UPX_CMAKE_CONFIG_FLAGS_PLATFORM=-A ARM64" >> $GITHUB_ENV
|
||||||
echo "UPX_CONFIG_DISABLE_SELF_PACK_TEST=ON" >> $GITHUB_ENV
|
echo "UPX_CONFIG_DISABLE_SELF_PACK_TEST=ON" >> $GITHUB_ENV
|
||||||
elif [[ "${{ matrix.vsarch }}" == amd64_x86 ]]; then true;
|
elif [[ "${{ matrix.vsarch }}" == amd64_x86 ]]; then true;
|
||||||
@ -461,23 +458,21 @@ jobs:
|
|||||||
cmake --install build/debug --config Debug --prefix "$PWD/tmp/artifact/$N/InstallWithCMake/InstallWithPrefixAndStrip/debug" --strip
|
cmake --install build/debug --config Debug --prefix "$PWD/tmp/artifact/$N/InstallWithCMake/InstallWithPrefixAndStrip/debug" --strip
|
||||||
cmake --install build/release --config Release --prefix "$PWD/tmp/artifact/$N/InstallWithCMake/InstallWithPrefixAndStrip/release" --strip
|
cmake --install build/release --config Release --prefix "$PWD/tmp/artifact/$N/InstallWithCMake/InstallWithPrefixAndStrip/release" --strip
|
||||||
(cd build && cp -ai --parents */*/upx.exe "../tmp/artifact/$N")
|
(cd build && cp -ai --parents */*/upx.exe "../tmp/artifact/$N")
|
||||||
(cd tmp/artifact && tar --sort=name --zstd -cf "$N.tar.zst" "$N" && rm -rf "./$N" && ls -la && zstd -tq "$N.tar.zst")
|
#(cd tmp/artifact && tar --sort=name --zstd -cf "$N.tar.zst" "$N" && rm -rf "./$N" && ls -la && zstd -tq "$N.tar.zst")
|
||||||
|
(cd tmp/artifact && tar --sort=name --gzip -cf "$N.tar.gz" "$N" && rm -rf "./$N" && ls -la && gzip -tq "$N.tar.gz")
|
||||||
echo "artifact_name=$N" >> $GITHUB_ENV
|
echo "artifact_name=$N" >> $GITHUB_ENV
|
||||||
- name: ${{ format('Upload artifact {0}', env.artifact_name) }}
|
- name: ${{ format('Upload artifact {0}', env.artifact_name) }}
|
||||||
uses: actions/upload-artifact@v4
|
uses: actions/upload-artifact@v4
|
||||||
with: { name: '${{ env.artifact_name }}', path: tmp/artifact }
|
with: { name: '${{ env.artifact_name }}', path: tmp/artifact }
|
||||||
- name: Run ctest tests
|
- name: Run ctest tests
|
||||||
if: ${{ matrix.vsarch != 'amd64_arm64' }}
|
|
||||||
run: |
|
run: |
|
||||||
ctest --test-dir build/debug --parallel 8 -C Debug
|
ctest --test-dir build/debug --parallel 8 -C Debug
|
||||||
ctest --test-dir build/release --parallel 8 -C Release
|
ctest --test-dir build/release --parallel 8 -C Release
|
||||||
- name: Mimic ctest tests
|
- name: Mimic ctest tests
|
||||||
if: ${{ matrix.vsarch != 'amd64_arm64' }}
|
|
||||||
run: |
|
run: |
|
||||||
env -C build/debug/Debug upx_exe=./upx.exe bash "$PWD"/misc/testsuite/mimic_ctest.sh
|
env -C build/debug/Debug upx_exe=./upx.exe bash "$PWD"/misc/testsuite/mimic_ctest.sh
|
||||||
env -C build/release/Release upx_exe=./upx.exe bash "$PWD"/misc/testsuite/mimic_ctest.sh
|
env -C build/release/Release upx_exe=./upx.exe bash "$PWD"/misc/testsuite/mimic_ctest.sh
|
||||||
- name: Run test suite build/release
|
- name: Run test suite build/release
|
||||||
if: ${{ matrix.vsarch != 'amd64_arm64' }}
|
|
||||||
run: |
|
run: |
|
||||||
export upx_testsuite_SRCDIR="$(readlink -en ../deps/upx-testsuite)"
|
export upx_testsuite_SRCDIR="$(readlink -en ../deps/upx-testsuite)"
|
||||||
env -C build/release/Release upx_exe=./upx.exe bash "$PWD"/misc/testsuite/upx_testsuite_1.sh
|
env -C build/release/Release upx_exe=./upx.exe bash "$PWD"/misc/testsuite/upx_testsuite_1.sh
|
||||||
|
|||||||
2
README
2
README
@ -61,7 +61,7 @@ SHORT DOCUMENTATION
|
|||||||
'upx program.exe' will compress a program or DLL. For best compression
|
'upx program.exe' will compress a program or DLL. For best compression
|
||||||
results try 'upx --best program.exe' or 'upx --brute program.exe'.
|
results try 'upx --best program.exe' or 'upx --brute program.exe'.
|
||||||
|
|
||||||
Please see the file doc/upx-doc.html for the full documentation. The files
|
Please see the file doc/upx-doc.txt for the full documentation. The files
|
||||||
NEWS and doc/BUGS.txt also contain various tidbits of information, as
|
NEWS and doc/BUGS.txt also contain various tidbits of information, as
|
||||||
does the output of 'upx --help'.
|
does the output of 'upx --help'.
|
||||||
|
|
||||||
|
|||||||
@ -1292,6 +1292,9 @@ void upx_compiler_sanity_check(void) noexcept {
|
|||||||
assert_noexcept(testNoAliasing(&u.v_int, &u.v_llong));
|
assert_noexcept(testNoAliasing(&u.v_int, &u.v_llong));
|
||||||
assert_noexcept(testNoAliasing(&u.v_long, &u.v_llong));
|
assert_noexcept(testNoAliasing(&u.v_long, &u.v_llong));
|
||||||
|
|
||||||
|
#if 1 && (ACC_CC_MSC) && (defined(_M_ARM64) || defined(_M_ARM64EC))
|
||||||
|
// @COMPILER_BUG @MSVC_BUG
|
||||||
|
#else
|
||||||
assert_noexcept(TestIntegerWrap<unsigned>::inc_gt(0));
|
assert_noexcept(TestIntegerWrap<unsigned>::inc_gt(0));
|
||||||
assert_noexcept(!TestIntegerWrap<unsigned>::inc_gt(UINT_MAX));
|
assert_noexcept(!TestIntegerWrap<unsigned>::inc_gt(UINT_MAX));
|
||||||
assert_noexcept(TestIntegerWrap<unsigned>::dec_lt(1));
|
assert_noexcept(TestIntegerWrap<unsigned>::dec_lt(1));
|
||||||
@ -1308,6 +1311,7 @@ void upx_compiler_sanity_check(void) noexcept {
|
|||||||
assert_noexcept(!TestIntegerWrap<int>::neg_eq(1));
|
assert_noexcept(!TestIntegerWrap<int>::neg_eq(1));
|
||||||
assert_noexcept(!TestIntegerWrap<int>::neg_eq(INT_MAX));
|
assert_noexcept(!TestIntegerWrap<int>::neg_eq(INT_MAX));
|
||||||
assert_noexcept(TestIntegerWrap<int>::neg_eq(INT_MIN)); // special case
|
assert_noexcept(TestIntegerWrap<int>::neg_eq(INT_MIN)); // special case
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
/*************************************************************************
|
/*************************************************************************
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user