mirror of
https://github.com/upx/upx
synced 2025-09-28 19:06:07 +08:00
CI updates and cleanups
This commit is contained in:
parent
2c4b1d8a8c
commit
4f0f977f04
3
.gitattributes
vendored
3
.gitattributes
vendored
|
@ -14,6 +14,9 @@
|
||||||
/src/stub/src/arch/**/lzma_d_c[fns].S linguist-generated
|
/src/stub/src/arch/**/lzma_d_c[fns].S linguist-generated
|
||||||
/src/stub/tmp/** linguist-generated
|
/src/stub/tmp/** linguist-generated
|
||||||
|
|
||||||
|
/misc/podman/*/packages*.txt linguist-generated
|
||||||
|
/misc/testsuite/*expected_sha256sums* linguist-generated
|
||||||
|
|
||||||
#
|
#
|
||||||
# make GitHub language detection more accurate
|
# make GitHub language detection more accurate
|
||||||
#
|
#
|
||||||
|
|
15
.github/workflows/ci.yml
vendored
15
.github/workflows/ci.yml
vendored
|
@ -92,13 +92,13 @@ jobs:
|
||||||
if: ${{ matrix.use_m32 }}
|
if: ${{ matrix.use_m32 }}
|
||||||
run: 'make build/extra/gcc-m32/debug'
|
run: 'make build/extra/gcc-m32/debug'
|
||||||
- name: 'Build cmake extra/gcc-m32/release'
|
- name: 'Build cmake extra/gcc-m32/release'
|
||||||
if: ${{ matrix.use_m32 }}
|
if: ${{ matrix.use_m32 && (success() || failure()) }} # run this step even if the previous step failed
|
||||||
run: 'make build/extra/gcc-m32/release'
|
run: 'make build/extra/gcc-m32/release'
|
||||||
- name: 'Build cmake extra/cross-windows-mingw32/release'
|
- name: 'Build cmake extra/cross-windows-mingw32/release'
|
||||||
if: ${{ matrix.use_m32 }}
|
if: ${{ matrix.use_m32 && (success() || failure()) }} # run this step even if the previous step failed
|
||||||
run: 'make build/extra/cross-windows-mingw32/release'
|
run: 'make build/extra/cross-windows-mingw32/release'
|
||||||
- name: 'Build cmake extra/cross-windows-mingw64/release'
|
- name: 'Build cmake extra/cross-windows-mingw64/release'
|
||||||
if: ${{ matrix.use_m32 }}
|
if: ${{ matrix.use_m32 && (success() || failure()) }} # run this step even if the previous step failed
|
||||||
run: 'make build/extra/cross-windows-mingw64/release'
|
run: 'make build/extra/cross-windows-mingw64/release'
|
||||||
- name: 'Make artifact'
|
- name: 'Make artifact'
|
||||||
run: |
|
run: |
|
||||||
|
@ -206,7 +206,8 @@ jobs:
|
||||||
if: ${{ !contains(matrix.os, 'macos-13') }} # FIXME: UPX on macos-13 is broken => disable self-test for now
|
if: ${{ !contains(matrix.os, 'macos-13') }} # FIXME: UPX on macos-13 is broken => disable self-test for now
|
||||||
run: |
|
run: |
|
||||||
make -C build/extra/clang/debug test
|
make -C build/extra/clang/debug test
|
||||||
# make -C build/extra/clang/release test
|
#make -C build/extra/clang/release test
|
||||||
|
for f in ./build/extra/*/*/upx; do echo "===== $f"; $f --sysinfo -v; done
|
||||||
- name: 'Run file system test suite'
|
- name: 'Run file system test suite'
|
||||||
if: ${{ matrix.testsuite }} # for coreutils readlink
|
if: ${{ matrix.testsuite }} # for coreutils readlink
|
||||||
run: |
|
run: |
|
||||||
|
@ -235,6 +236,7 @@ jobs:
|
||||||
- { name: windows-2019-amd64, os: windows-2019, vsversion: 2019, arch: amd64 }
|
- { name: windows-2019-amd64, os: windows-2019, vsversion: 2019, arch: amd64 }
|
||||||
- { name: windows-2022-amd64, os: windows-2022, vsversion: 2022, arch: amd64 }
|
- { name: windows-2022-amd64, os: windows-2022, vsversion: 2022, arch: amd64 }
|
||||||
steps:
|
steps:
|
||||||
|
- run: git config --global core.autocrlf false
|
||||||
- name: 'Check out code'
|
- name: 'Check out code'
|
||||||
uses: actions/checkout@v4
|
uses: actions/checkout@v4
|
||||||
with: { submodules: true }
|
with: { submodules: true }
|
||||||
|
@ -283,7 +285,6 @@ jobs:
|
||||||
env:
|
env:
|
||||||
C: ${{ matrix.name }}
|
C: ${{ matrix.name }}
|
||||||
B: release
|
B: release
|
||||||
H: 'd:\a\upx\upx'
|
|
||||||
strategy:
|
strategy:
|
||||||
fail-fast: false
|
fail-fast: false
|
||||||
matrix:
|
matrix:
|
||||||
|
@ -297,6 +298,7 @@ jobs:
|
||||||
- { name: i386-win32-vs2019, os: windows-2019, vsversion: 2019, arch: amd64_x86 }
|
- { name: i386-win32-vs2019, os: windows-2019, vsversion: 2019, arch: amd64_x86 }
|
||||||
- { name: i386-win32-vs2022, os: windows-2022, vsversion: 2022, arch: amd64_x86 }
|
- { name: i386-win32-vs2022, os: windows-2022, vsversion: 2022, arch: amd64_x86 }
|
||||||
steps:
|
steps:
|
||||||
|
- run: git config --global core.autocrlf false
|
||||||
- name: 'Check out code'
|
- name: 'Check out code'
|
||||||
uses: actions/checkout@v4
|
uses: actions/checkout@v4
|
||||||
with: { submodules: true }
|
with: { submodules: true }
|
||||||
|
@ -305,6 +307,8 @@ jobs:
|
||||||
run: |
|
run: |
|
||||||
git clone --depth=1 https://github.com/upx/upx-testsuite ../deps/upx-testsuite
|
git clone --depth=1 https://github.com/upx/upx-testsuite ../deps/upx-testsuite
|
||||||
mkdir -p -v build/$C/$B/{bzip2,ucl,upx,zlib,zstd}
|
mkdir -p -v build/$C/$B/{bzip2,ucl,upx,zlib,zstd}
|
||||||
|
repo_name="${GITHUB_REPOSITORY##*/}" # basename
|
||||||
|
echo "H=d:\\a\\$repo_name\\$repo_name" >> $GITHUB_ENV
|
||||||
- name: 'Set up Developer Command Prompt'
|
- name: 'Set up Developer Command Prompt'
|
||||||
uses: ilammy/msvc-dev-cmd@cec98b9d092141f74527d0afa6feb2af698cfe89 # v1.12.1
|
uses: ilammy/msvc-dev-cmd@cec98b9d092141f74527d0afa6feb2af698cfe89 # v1.12.1
|
||||||
with:
|
with:
|
||||||
|
@ -370,6 +374,7 @@ jobs:
|
||||||
cd $Env:H\build\$Env:C\$Env:B\upx
|
cd $Env:H\build\$Env:C\$Env:B\upx
|
||||||
$Env:UPX = "--no-color --no-progress"
|
$Env:UPX = "--no-color --no-progress"
|
||||||
.\upx.exe --version
|
.\upx.exe --version
|
||||||
|
.\upx.exe --sysinfo -v
|
||||||
.\upx.exe upx.exe -o upx_packed.exe
|
.\upx.exe upx.exe -o upx_packed.exe
|
||||||
dir *.exe
|
dir *.exe
|
||||||
.\upx.exe -l upx_packed.exe
|
.\upx.exe -l upx_packed.exe
|
||||||
|
|
4
.github/workflows/test-alpine-linux.yml
vendored
4
.github/workflows/test-alpine-linux.yml
vendored
|
@ -21,7 +21,7 @@ jobs:
|
||||||
- name: ${{ format('Build clang {0}', matrix.container) }}
|
- name: ${{ format('Build clang {0}', matrix.container) }}
|
||||||
run: |
|
run: |
|
||||||
apk update && apk upgrade && apk add clang cmake make
|
apk update && apk upgrade && apk add clang cmake make
|
||||||
wget https://github.com/upx/upx/releases/download/v4.2.0/upx-4.2.0-src.tar.xz
|
wget https://github.com/upx/upx/releases/download/v4.2.1/upx-4.2.1-src.tar.xz
|
||||||
tar -xoaf upx-*-src.tar.xz
|
tar -xoaf upx-*-src.tar.xz
|
||||||
cd upx-*-src
|
cd upx-*-src
|
||||||
make build/debug CC="clang -static" CXX="clang++ -static"
|
make build/debug CC="clang -static" CXX="clang++ -static"
|
||||||
|
@ -48,7 +48,7 @@ jobs:
|
||||||
- name: ${{ format('Build gcc {0}', matrix.container) }}
|
- name: ${{ format('Build gcc {0}', matrix.container) }}
|
||||||
run: |
|
run: |
|
||||||
apk update && apk upgrade && apk add cmake g++ make
|
apk update && apk upgrade && apk add cmake g++ make
|
||||||
wget https://github.com/upx/upx/releases/download/v4.2.0/upx-4.2.0-src.tar.xz
|
wget https://github.com/upx/upx/releases/download/v4.2.1/upx-4.2.1-src.tar.xz
|
||||||
tar -xoaf upx-*-src.tar.xz
|
tar -xoaf upx-*-src.tar.xz
|
||||||
cd upx-*-src
|
cd upx-*-src
|
||||||
make build/debug CC="gcc -static" CXX="g++ -static"
|
make build/debug CC="gcc -static" CXX="g++ -static"
|
||||||
|
|
2
.github/workflows/test-cmake-default.yml
vendored
2
.github/workflows/test-cmake-default.yml
vendored
|
@ -51,6 +51,7 @@ jobs:
|
||||||
cmake-nmake:
|
cmake-nmake:
|
||||||
runs-on: windows-2022
|
runs-on: windows-2022
|
||||||
steps:
|
steps:
|
||||||
|
- run: git config --global core.autocrlf false
|
||||||
- name: 'Check out code'
|
- name: 'Check out code'
|
||||||
uses: actions/checkout@v4
|
uses: actions/checkout@v4
|
||||||
with: { submodules: true }
|
with: { submodules: true }
|
||||||
|
@ -100,6 +101,7 @@ jobs:
|
||||||
cmake-vsstudio-multi-config:
|
cmake-vsstudio-multi-config:
|
||||||
runs-on: windows-2022
|
runs-on: windows-2022
|
||||||
steps:
|
steps:
|
||||||
|
- run: git config --global core.autocrlf false
|
||||||
- name: 'Check out code'
|
- name: 'Check out code'
|
||||||
uses: actions/checkout@v4
|
uses: actions/checkout@v4
|
||||||
with: { submodules: true }
|
with: { submodules: true }
|
||||||
|
|
19
.github/workflows/weekly-ci-bs-by-hand.yml
vendored
19
.github/workflows/weekly-ci-bs-by-hand.yml
vendored
|
@ -141,7 +141,7 @@ jobs:
|
||||||
cd "upx with space"/build/by-hand
|
cd "upx with space"/build/by-hand
|
||||||
bash "$testsuite"
|
bash "$testsuite"
|
||||||
|
|
||||||
job-by-hand-windows-gcc: # uses a POSIX-compliant shell
|
job-by-hand-windows: # uses a POSIX-compliant shell
|
||||||
# ...and also uses a subdirectory "upx with space" in order to detect possible quoting issues
|
# ...and also uses a subdirectory "upx with space" in order to detect possible quoting issues
|
||||||
if: github.repository_owner == 'upx'
|
if: github.repository_owner == 'upx'
|
||||||
strategy:
|
strategy:
|
||||||
|
@ -150,16 +150,29 @@ jobs:
|
||||||
include:
|
include:
|
||||||
- { os: windows-2019 }
|
- { os: windows-2019 }
|
||||||
- { os: windows-2022 }
|
- { os: windows-2022 }
|
||||||
name: ${{ format('by-hand gcc {0}', matrix.os) }}
|
name: ${{ format('by-hand cc {0}', matrix.os) }}
|
||||||
runs-on: ${{ matrix.os }}
|
runs-on: ${{ matrix.os }}
|
||||||
steps:
|
steps:
|
||||||
|
- run: git config --global core.autocrlf false
|
||||||
- name: ${{ format('Check out UPX {0} source code', github.ref_name) }}
|
- name: ${{ format('Check out UPX {0} source code', github.ref_name) }}
|
||||||
shell: bash
|
shell: bash
|
||||||
run: |
|
run: |
|
||||||
git clone --branch "$GITHUB_REF_NAME" --depth 1 "$GITHUB_SERVER_URL/$GITHUB_REPOSITORY" "upx with space"
|
git clone --branch "$GITHUB_REF_NAME" --depth 1 "$GITHUB_SERVER_URL/$GITHUB_REPOSITORY" "upx with space"
|
||||||
git -C "upx with space" submodule update --init
|
git -C "upx with space" submodule update --init
|
||||||
- name: 'Build by-hand with bash'
|
- name: 'Build by-hand with bash - clang'
|
||||||
shell: bash
|
shell: bash
|
||||||
run: |
|
run: |
|
||||||
xflags="-static -Wall -Wextra -Werror"
|
xflags="-static -Wall -Wextra -Werror"
|
||||||
|
# clang uses the MSVC headers, adjust settings
|
||||||
|
xflags="$xflags -D_CRT_NONSTDC_NO_WARNINGS -D_CRT_SECURE_NO_WARNINGS"
|
||||||
|
export zlib_extra_flags="-DHAVE_VSNPRINTF"
|
||||||
|
export AR=false # link without using $AR
|
||||||
|
CC="clang $xflags" CXX="clang++ -std=gnu++17 $xflags" bash "./upx with space/misc/scripts/build_upx_by_hand.sh"
|
||||||
|
ls -l build/by-hand || true
|
||||||
|
- name: 'Build by-hand with bash - gcc'
|
||||||
|
if: success() || failure() # run this step even if the previous step failed
|
||||||
|
shell: bash
|
||||||
|
run: |
|
||||||
|
xflags="-static -Wall -Wextra -Werror"
|
||||||
|
# gcc uses the MingGW headers, so no extra settings are needed
|
||||||
CC="gcc $xflags" CXX="g++ -std=gnu++17 $xflags" bash "./upx with space/misc/scripts/build_upx_by_hand.sh"
|
CC="gcc $xflags" CXX="g++ -std=gnu++17 $xflags" bash "./upx with space/misc/scripts/build_upx_by_hand.sh"
|
||||||
|
|
|
@ -47,7 +47,9 @@ jobs:
|
||||||
if: ${{ matrix.run_test }}
|
if: ${{ matrix.run_test }}
|
||||||
run: |
|
run: |
|
||||||
ctest --test-dir build/xcode -C Debug
|
ctest --test-dir build/xcode -C Debug
|
||||||
# ctest --test-dir build/xcode -C Release
|
#ctest --test-dir build/xcode -C Release
|
||||||
|
./build/xcode/Debug/upx --sysinfo -v
|
||||||
|
./build/xcode/Release/upx --sysinfo -v
|
||||||
- name: 'Run install tests'
|
- name: 'Run install tests'
|
||||||
run: |
|
run: |
|
||||||
(cd build/xcode && DESTDIR=$PWD/Install-default cmake --install .)
|
(cd build/xcode && DESTDIR=$PWD/Install-default cmake --install .)
|
||||||
|
|
|
@ -43,6 +43,7 @@ jobs:
|
||||||
name: ${{ format('{0} {1} {2}', matrix.cc, matrix.vsversion, matrix.arch) }}
|
name: ${{ format('{0} {1} {2}', matrix.cc, matrix.vsversion, matrix.arch) }}
|
||||||
runs-on: ${{ matrix.os }}
|
runs-on: ${{ matrix.os }}
|
||||||
steps:
|
steps:
|
||||||
|
- run: git config --global core.autocrlf false
|
||||||
- name: 'Check out code'
|
- name: 'Check out code'
|
||||||
uses: actions/checkout@v4
|
uses: actions/checkout@v4
|
||||||
with: { submodules: true }
|
with: { submodules: true }
|
||||||
|
@ -64,6 +65,7 @@ jobs:
|
||||||
ls -l build/xtarget/$xtarget/debug/upx.exe
|
ls -l build/xtarget/$xtarget/debug/upx.exe
|
||||||
file build/xtarget/$xtarget/debug/upx.exe || true
|
file build/xtarget/$xtarget/debug/upx.exe || true
|
||||||
- name: 'Build cmake Make Release'
|
- name: 'Build cmake Make Release'
|
||||||
|
if: success() || failure() # run this step even if the previous step failed
|
||||||
shell: bash
|
shell: bash
|
||||||
run: |
|
run: |
|
||||||
make UPX_XTARGET=$xtarget xtarget/release
|
make UPX_XTARGET=$xtarget xtarget/release
|
||||||
|
@ -88,6 +90,8 @@ jobs:
|
||||||
run: |
|
run: |
|
||||||
ctest --test-dir build/xtarget/$xtarget/debug
|
ctest --test-dir build/xtarget/$xtarget/debug
|
||||||
ctest --test-dir build/xtarget/$xtarget/release
|
ctest --test-dir build/xtarget/$xtarget/release
|
||||||
|
./build/xtarget/$xtarget/debug/upx.exe --sysinfo -v
|
||||||
|
./build/xtarget/$xtarget/release/upx.exe --sysinfo -v
|
||||||
- name: 'Run install tests'
|
- name: 'Run install tests'
|
||||||
shell: bash
|
shell: bash
|
||||||
run: |
|
run: |
|
||||||
|
|
|
@ -41,6 +41,7 @@ jobs:
|
||||||
name: ${{ format('{0} {1} {2}', matrix.cc, matrix.vsversion, matrix.arch) }}
|
name: ${{ format('{0} {1} {2}', matrix.cc, matrix.vsversion, matrix.arch) }}
|
||||||
runs-on: ${{ matrix.os }}
|
runs-on: ${{ matrix.os }}
|
||||||
steps:
|
steps:
|
||||||
|
- run: git config --global core.autocrlf false
|
||||||
- name: 'Check out code'
|
- name: 'Check out code'
|
||||||
uses: actions/checkout@v4
|
uses: actions/checkout@v4
|
||||||
with: { submodules: true }
|
with: { submodules: true }
|
||||||
|
@ -63,6 +64,7 @@ jobs:
|
||||||
ls -l build/xtarget/$xtarget/debug/upx.exe
|
ls -l build/xtarget/$xtarget/debug/upx.exe
|
||||||
file build/xtarget/$xtarget/debug/upx.exe || true
|
file build/xtarget/$xtarget/debug/upx.exe || true
|
||||||
- name: 'Build cmake Ninja Release'
|
- name: 'Build cmake Ninja Release'
|
||||||
|
if: success() || failure() # run this step even if the previous step failed
|
||||||
shell: bash
|
shell: bash
|
||||||
run: |
|
run: |
|
||||||
make UPX_XTARGET=$xtarget xtarget/release
|
make UPX_XTARGET=$xtarget xtarget/release
|
||||||
|
@ -87,6 +89,8 @@ jobs:
|
||||||
run: |
|
run: |
|
||||||
ctest --test-dir build/xtarget/$xtarget/debug
|
ctest --test-dir build/xtarget/$xtarget/debug
|
||||||
ctest --test-dir build/xtarget/$xtarget/release
|
ctest --test-dir build/xtarget/$xtarget/release
|
||||||
|
./build/xtarget/$xtarget/debug/upx.exe --sysinfo -v
|
||||||
|
./build/xtarget/$xtarget/release/upx.exe --sysinfo -v
|
||||||
- name: 'Run install tests'
|
- name: 'Run install tests'
|
||||||
shell: bash
|
shell: bash
|
||||||
run: |
|
run: |
|
||||||
|
|
|
@ -18,6 +18,7 @@ jobs:
|
||||||
matrix:
|
matrix:
|
||||||
include:
|
include:
|
||||||
# clang-cl
|
# clang-cl
|
||||||
|
- { os: windows-2019, vsversion: 2019, arch: amd64, clang_cl: true }
|
||||||
- { os: windows-2022, vsversion: 2022, arch: amd64, clang_cl: true }
|
- { os: windows-2022, vsversion: 2022, arch: amd64, clang_cl: true }
|
||||||
# msvc
|
# msvc
|
||||||
- { os: windows-2019, vsversion: 2019, arch: amd64 }
|
- { os: windows-2019, vsversion: 2019, arch: amd64 }
|
||||||
|
@ -29,6 +30,7 @@ jobs:
|
||||||
name: ${{ format('vs{0} {1} {2}', matrix.vsversion, matrix.arch, matrix.clang_cl && 'clang-cl' || '') }}
|
name: ${{ format('vs{0} {1} {2}', matrix.vsversion, matrix.arch, matrix.clang_cl && 'clang-cl' || '') }}
|
||||||
runs-on: ${{ matrix.os }}
|
runs-on: ${{ matrix.os }}
|
||||||
steps:
|
steps:
|
||||||
|
- run: git config --global core.autocrlf false
|
||||||
- name: 'Check out code'
|
- name: 'Check out code'
|
||||||
uses: actions/checkout@v4
|
uses: actions/checkout@v4
|
||||||
with: { submodules: true }
|
with: { submodules: true }
|
||||||
|
@ -46,6 +48,7 @@ jobs:
|
||||||
nmake
|
nmake
|
||||||
dir *.exe
|
dir *.exe
|
||||||
- name: 'Build cmake NMake Release'
|
- name: 'Build cmake NMake Release'
|
||||||
|
if: success() || failure() # run this step even if the previous step failed
|
||||||
shell: cmd
|
shell: cmd
|
||||||
run: |
|
run: |
|
||||||
set X=${{ matrix.clang_cl && '-DCMAKE_C_COMPILER=clang-cl -DCMAKE_CXX_COMPILER=clang-cl' || '' }}
|
set X=${{ matrix.clang_cl && '-DCMAKE_C_COMPILER=clang-cl -DCMAKE_CXX_COMPILER=clang-cl' || '' }}
|
||||||
|
@ -72,6 +75,8 @@ jobs:
|
||||||
run: |
|
run: |
|
||||||
ctest --test-dir build/debug
|
ctest --test-dir build/debug
|
||||||
ctest --test-dir build/release
|
ctest --test-dir build/release
|
||||||
|
.\build\debug\upx.exe --sysinfo -v
|
||||||
|
.\build\release\upx.exe --sysinfo -v
|
||||||
- name: 'Run install tests'
|
- name: 'Run install tests'
|
||||||
run: |
|
run: |
|
||||||
env DESTDIR=./Install-debug cmake --install build/debug
|
env DESTDIR=./Install-debug cmake --install build/debug
|
||||||
|
|
|
@ -112,6 +112,7 @@ jobs:
|
||||||
wine=wine64
|
wine=wine64
|
||||||
tt='./upx.exe'
|
tt='./upx.exe'
|
||||||
$wine ./upx.exe --version-short
|
$wine ./upx.exe --version-short
|
||||||
|
$wine ./upx.exe --sysinfo -v
|
||||||
$wine ./upx.exe -3 $tt -o tt.packed.exe
|
$wine ./upx.exe -3 $tt -o tt.packed.exe
|
||||||
$wine ./upx.exe -l tt.packed.exe
|
$wine ./upx.exe -l tt.packed.exe
|
||||||
$wine ./upx.exe -t tt.packed.exe
|
$wine ./upx.exe -t tt.packed.exe
|
||||||
|
@ -130,6 +131,7 @@ jobs:
|
||||||
wine=wine64
|
wine=wine64
|
||||||
tt='./upx.exe'
|
tt='./upx.exe'
|
||||||
$wine ./upx.exe --version-short
|
$wine ./upx.exe --version-short
|
||||||
|
$wine ./upx.exe --sysinfo -v
|
||||||
$wine ./upx.exe -3 $tt -o tt.packed.exe
|
$wine ./upx.exe -3 $tt -o tt.packed.exe
|
||||||
$wine ./upx.exe -l tt.packed.exe
|
$wine ./upx.exe -l tt.packed.exe
|
||||||
$wine ./upx.exe -t tt.packed.exe
|
$wine ./upx.exe -t tt.packed.exe
|
||||||
|
@ -148,6 +150,7 @@ jobs:
|
||||||
wine=wine64
|
wine=wine64
|
||||||
tt='./upx.exe'
|
tt='./upx.exe'
|
||||||
$wine ./upx.exe --version-short
|
$wine ./upx.exe --version-short
|
||||||
|
$wine ./upx.exe --sysinfo -v
|
||||||
$wine ./upx.exe -3 $tt -o tt.packed.exe
|
$wine ./upx.exe -3 $tt -o tt.packed.exe
|
||||||
$wine ./upx.exe -l tt.packed.exe
|
$wine ./upx.exe -l tt.packed.exe
|
||||||
$wine ./upx.exe -t tt.packed.exe
|
$wine ./upx.exe -t tt.packed.exe
|
||||||
|
@ -166,6 +169,7 @@ jobs:
|
||||||
wine=wine64
|
wine=wine64
|
||||||
tt='./upx.exe'
|
tt='./upx.exe'
|
||||||
$wine ./upx.exe --version-short
|
$wine ./upx.exe --version-short
|
||||||
|
$wine ./upx.exe --sysinfo -v
|
||||||
$wine ./upx.exe -3 $tt -o tt.packed.exe
|
$wine ./upx.exe -3 $tt -o tt.packed.exe
|
||||||
$wine ./upx.exe -l tt.packed.exe
|
$wine ./upx.exe -l tt.packed.exe
|
||||||
$wine ./upx.exe -t tt.packed.exe
|
$wine ./upx.exe -t tt.packed.exe
|
||||||
|
|
12
.github/workflows/weekly-ci-cc-llvm-mingw.yml
vendored
12
.github/workflows/weekly-ci-cc-llvm-mingw.yml
vendored
|
@ -26,12 +26,12 @@ jobs:
|
||||||
- name: llvm-mingw-20230614-ucrt
|
- name: llvm-mingw-20230614-ucrt
|
||||||
llvm_version: 16.0.6
|
llvm_version: 16.0.6
|
||||||
url: 'https://github.com/mstorsjo/llvm-mingw/releases/download/20230614/llvm-mingw-20230614-ucrt-ubuntu-20.04-x86_64.tar.xz'
|
url: 'https://github.com/mstorsjo/llvm-mingw/releases/download/20230614/llvm-mingw-20230614-ucrt-ubuntu-20.04-x86_64.tar.xz'
|
||||||
- name: llvm-mingw-20231017-msvcrt
|
- name: llvm-mingw-20231031-msvcrt
|
||||||
llvm_version: 17.0.3
|
llvm_version: 17.0.4
|
||||||
url: 'https://github.com/mstorsjo/llvm-mingw/releases/download/20231017/llvm-mingw-20231017-msvcrt-ubuntu-20.04-x86_64.tar.xz'
|
url: 'https://github.com/mstorsjo/llvm-mingw/releases/download/20231031/llvm-mingw-20231031-msvcrt-ubuntu-20.04-x86_64.tar.xz'
|
||||||
- name: llvm-mingw-20231017-ucrt
|
- name: llvm-mingw-20231031-ucrt
|
||||||
llvm_version: 17.0.3
|
llvm_version: 17.0.4
|
||||||
url: 'https://github.com/mstorsjo/llvm-mingw/releases/download/20231017/llvm-mingw-20231017-ucrt-ubuntu-20.04-x86_64.tar.xz'
|
url: 'https://github.com/mstorsjo/llvm-mingw/releases/download/20231031/llvm-mingw-20231031-ucrt-ubuntu-20.04-x86_64.tar.xz'
|
||||||
name: ${{ format('{0} {1}', matrix.name, matrix.llvm_version) }}
|
name: ${{ format('{0} {1}', matrix.name, matrix.llvm_version) }}
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
steps:
|
steps:
|
||||||
|
|
|
@ -429,7 +429,7 @@ upx_sanitize_target(${t})
|
||||||
if(MSVC_FRONTEND)
|
if(MSVC_FRONTEND)
|
||||||
target_compile_options(${t} PRIVATE ${warn_WN} -wd4127 -wd4244 -wd4267 ${warn_WX})
|
target_compile_options(${t} PRIVATE ${warn_WN} -wd4127 -wd4244 -wd4267 ${warn_WX})
|
||||||
else()
|
else()
|
||||||
target_compile_options(${t} PRIVATE ${warn_Wall} -Wno-implicit-fallthrough ${warn_Werror})
|
target_compile_options(${t} PRIVATE ${warn_Wall} ${warn_Werror})
|
||||||
endif()
|
endif()
|
||||||
endif() # UPX_CONFIG_DISABLE_BZIP2
|
endif() # UPX_CONFIG_DISABLE_BZIP2
|
||||||
|
|
||||||
|
@ -453,8 +453,8 @@ endif()
|
||||||
if(MSVC_FRONTEND)
|
if(MSVC_FRONTEND)
|
||||||
target_compile_options(${t} PRIVATE -W3 ${warn_WX})
|
target_compile_options(${t} PRIVATE -W3 ${warn_WX})
|
||||||
else()
|
else()
|
||||||
target_compile_options(${t} PRIVATE -Wall ${warn_Werror})
|
##target_compile_options(${t} PRIVATE -Wall ${warn_Werror})
|
||||||
##target_compile_options(${t} PRIVATE ${warn_Wall} -Wno-cast-align -Wno-cast-qual ${warn_Werror})
|
target_compile_options(${t} PRIVATE ${warn_Wall} -Wno-cast-align -Wno-cast-qual ${warn_Werror})
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(NOT UPX_CONFIG_DISABLE_ZSTD)
|
if(NOT UPX_CONFIG_DISABLE_ZSTD)
|
||||||
|
@ -524,6 +524,7 @@ include(CTest)
|
||||||
if(NOT CMAKE_CROSSCOMPILING)
|
if(NOT CMAKE_CROSSCOMPILING)
|
||||||
add_test(NAME upx-version COMMAND upx --version)
|
add_test(NAME upx-version COMMAND upx --version)
|
||||||
add_test(NAME upx-help COMMAND upx --help)
|
add_test(NAME upx-help COMMAND upx --help)
|
||||||
|
add_test(NAME upx-sysinfo COMMAND upx --sysinfo)
|
||||||
endif()
|
endif()
|
||||||
if(NOT CMAKE_CROSSCOMPILING AND NOT UPX_CONFIG_DISABLE_SELF_PACK_TEST)
|
if(NOT CMAKE_CROSSCOMPILING AND NOT UPX_CONFIG_DISABLE_SELF_PACK_TEST)
|
||||||
# IMPORTANT NOTE: these tests can only work if the host executable format is supported by UPX!
|
# IMPORTANT NOTE: these tests can only work if the host executable format is supported by UPX!
|
||||||
|
|
|
@ -27,13 +27,13 @@ fi
|
||||||
# protect against security threats caused by misguided compiler "optimizations"
|
# protect against security threats caused by misguided compiler "optimizations"
|
||||||
mandatory_flags="-fno-strict-aliasing -fno-strict-overflow -funsigned-char"
|
mandatory_flags="-fno-strict-aliasing -fno-strict-overflow -funsigned-char"
|
||||||
# not mandatory but good practice when using <windows.h>:
|
# not mandatory but good practice when using <windows.h>:
|
||||||
mandatory_flags="$mandatory_flags -DWIN32_LEAN_AND_MEAN"
|
sensible_flags="-DWIN32_LEAN_AND_MEAN"
|
||||||
if test "x$OPTIMIZE" != "x" && test "x$OPTIMIZE" != "x0"; then
|
if test "x$OPTIMIZE" != "x" && test "x$OPTIMIZE" != "x0"; then
|
||||||
# not mandatory and not minimal, but usually a good idea:
|
# not mandatory and not minimal, but usually a good idea:
|
||||||
mandatory_flags="-Wall -O2 $mandatory_flags"
|
sensible_flags="-Wall -O2 $sensible_flags"
|
||||||
fi
|
fi
|
||||||
CC="$CC $mandatory_flags"
|
CC="$CC $sensible_flags $mandatory_flags"
|
||||||
CXX="$CXX $mandatory_flags"
|
CXX="$CXX $sensible_flags $mandatory_flags"
|
||||||
|
|
||||||
# go to upx top-level directory
|
# go to upx top-level directory
|
||||||
# HINT: set "top_srcdir" manually if your system does not have "readlink"
|
# HINT: set "top_srcdir" manually if your system does not have "readlink"
|
||||||
|
@ -93,8 +93,9 @@ check_submodule() {
|
||||||
# build
|
# build
|
||||||
run "+" mkdir -p "build/by-hand"
|
run "+" mkdir -p "build/by-hand"
|
||||||
if check_submodule bzip2; then
|
if check_submodule bzip2; then
|
||||||
|
test -z "${bzip2_extra_flags+set}" && bzip2_extra_flags=
|
||||||
for f in "$rel_top_srcdir"/vendor/bzip2/*.c; do
|
for f in "$rel_top_srcdir"/vendor/bzip2/*.c; do
|
||||||
run "CC $f" $CC -c "$f"
|
run "CC $f" $CC $bzip2_extra_flags -c "$f"
|
||||||
done
|
done
|
||||||
fi
|
fi
|
||||||
if check_submodule ucl; then
|
if check_submodule ucl; then
|
||||||
|
@ -103,13 +104,15 @@ if check_submodule ucl; then
|
||||||
done
|
done
|
||||||
fi
|
fi
|
||||||
if check_submodule zlib; then
|
if check_submodule zlib; then
|
||||||
|
test -z "${zlib_extra_flags+set}" && zlib_extra_flags="-DHAVE_UNISTD_H -DHAVE_VSNPRINTF"
|
||||||
for f in "$rel_top_srcdir"/vendor/zlib/*.c; do
|
for f in "$rel_top_srcdir"/vendor/zlib/*.c; do
|
||||||
run "CC $f" $CC -DHAVE_UNISTD_H -DHAVE_VSNPRINTF -c "$f"
|
run "CC $f" $CC $zlib_extra_flags -c "$f"
|
||||||
done
|
done
|
||||||
fi
|
fi
|
||||||
if check_submodule zstd; then
|
if check_submodule zstd; then
|
||||||
|
test -z "${zstd_extra_flags+set}" && zstd_extra_flags="-DDYNAMIC_BMI2=0 -DZSTD_DISABLE_ASM"
|
||||||
for f in "$rel_top_srcdir"/vendor/zstd/lib/*/*.c; do
|
for f in "$rel_top_srcdir"/vendor/zstd/lib/*/*.c; do
|
||||||
run "CC $f" $CC -DDYNAMIC_BMI2=0 -DZSTD_DISABLE_ASM -c "$f"
|
run "CC $f" $CC $zstd_extra_flags -c "$f"
|
||||||
done
|
done
|
||||||
fi
|
fi
|
||||||
run "+" cd "$rel_top_srcdir" || exit 1
|
run "+" cd "$rel_top_srcdir" || exit 1
|
||||||
|
|
|
@ -221,6 +221,7 @@ TEST_CASE("upx_zstd_decompress") {
|
||||||
d_len = 31;
|
d_len = 31;
|
||||||
r = upx_zstd_decompress(c_data, 16, d_buf, &d_len, M_ZSTD, nullptr);
|
r = upx_zstd_decompress(c_data, 16, d_buf, &d_len, M_ZSTD, nullptr);
|
||||||
CHECK(r == UPX_E_OUTPUT_OVERRUN);
|
CHECK(r == UPX_E_OUTPUT_OVERRUN);
|
||||||
|
UNUSED(r);
|
||||||
}
|
}
|
||||||
|
|
||||||
#endif // WITH_ZSTD
|
#endif // WITH_ZSTD
|
||||||
|
|
|
@ -152,4 +152,10 @@ static_assert(sizeof(void *) == 8);
|
||||||
#endif
|
#endif
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#ifdef WANT_WINDOWS_LEAN_H
|
||||||
|
#if defined(_WIN32) || defined(__CYGWIN__)
|
||||||
|
#include "util/windows_lean.h"
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
|
|
||||||
/* vim:set ts=4 sw=4 et: */
|
/* vim:set ts=4 sw=4 et: */
|
||||||
|
|
48
src/help.cpp
48
src/help.cpp
|
@ -25,6 +25,7 @@
|
||||||
<markus@oberhumer.com> <ezerotven+github@gmail.com>
|
<markus@oberhumer.com> <ezerotven+github@gmail.com>
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
#define WANT_WINDOWS_LEAN_H 1 // _WIN32_WINNT
|
||||||
#include "conf.h"
|
#include "conf.h"
|
||||||
#include "compress/compress.h" // upx_ucl_version_string()
|
#include "compress/compress.h" // upx_ucl_version_string()
|
||||||
// for list_all_packers():
|
// for list_all_packers():
|
||||||
|
@ -449,19 +450,51 @@ void show_sysinfo(const char *options_var) {
|
||||||
con_fprintf(f, "UPX version: ");
|
con_fprintf(f, "UPX version: ");
|
||||||
fflush(f);
|
fflush(f);
|
||||||
show_version(true);
|
show_version(true);
|
||||||
|
con_fprintf(f, "UPX version internal: 0x%06x %s\n", UPX_VERSION_HEX, UPX_VERSION_STRING);
|
||||||
}
|
}
|
||||||
fflush(stdout);
|
fflush(stdout);
|
||||||
|
|
||||||
// Compilation Flags
|
// Compilation Flags
|
||||||
if (opt->verbose >= 2) {
|
{
|
||||||
size_t cf_count = 0;
|
size_t cf_count = 0;
|
||||||
auto cf_print = [f, &cf_count](const char *name, const char *fmt, upx_int64_t v) noexcept {
|
auto cf_print = [f, &cf_count](const char *name, const char *fmt, upx_int64_t v,
|
||||||
|
int need_verbose = 2) noexcept {
|
||||||
|
if (opt->verbose < need_verbose)
|
||||||
|
return;
|
||||||
if (cf_count++ == 0)
|
if (cf_count++ == 0)
|
||||||
con_fprintf(f, "\nCompilation flags:\n");
|
con_fprintf(f, "\nCompilation flags:\n");
|
||||||
con_fprintf(f, " %s = ", name);
|
con_fprintf(f, " %s = ", name);
|
||||||
con_fprintf(f, fmt, v);
|
con_fprintf(f, fmt, v);
|
||||||
con_fprintf(f, "\n");
|
con_fprintf(f, "\n");
|
||||||
};
|
};
|
||||||
|
// compiler
|
||||||
|
#if defined(ACC_CC_CLANG)
|
||||||
|
cf_print("ACC_CC_CLANG", "0x%06llx", ACC_CC_CLANG + 0, 3);
|
||||||
|
#endif
|
||||||
|
#if defined(ACC_CC_GNUC)
|
||||||
|
cf_print("ACC_CC_GNUC", "0x%06llx", ACC_CC_GNUC + 0, 3);
|
||||||
|
#endif
|
||||||
|
#if defined(ACC_CC_MSC)
|
||||||
|
cf_print("ACC_CC_MSC", "%lld", ACC_CC_MSC + 0, 3);
|
||||||
|
#endif
|
||||||
|
#if defined(__clang__)
|
||||||
|
cf_print("__clang__", "%lld", __clang__ + 0);
|
||||||
|
#endif
|
||||||
|
#if defined(__clang_major__)
|
||||||
|
cf_print("__clang_major__", "%lld", __clang_major__ + 0);
|
||||||
|
#endif
|
||||||
|
#if defined(__GNUC__)
|
||||||
|
cf_print("__GNUC__", "%lld", __GNUC__ + 0);
|
||||||
|
#endif
|
||||||
|
#if defined(__GNUC_MINOR__)
|
||||||
|
cf_print("__GNUC_MINOR__", "%lld", __GNUC_MINOR__ + 0);
|
||||||
|
#endif
|
||||||
|
#if defined(_MSC_VER)
|
||||||
|
cf_print("_MSC_VER", "%lld", _MSC_VER + 0);
|
||||||
|
#endif
|
||||||
|
#if defined(_MSC_FULL_VER)
|
||||||
|
cf_print("_MSC_FULL_VER", "%lld", _MSC_FULL_VER + 0);
|
||||||
|
#endif
|
||||||
// OS and libc
|
// OS and libc
|
||||||
#if defined(WINVER)
|
#if defined(WINVER)
|
||||||
cf_print("WINVER", "0x%04llx", WINVER + 0);
|
cf_print("WINVER", "0x%04llx", WINVER + 0);
|
||||||
|
@ -473,21 +506,16 @@ void show_sysinfo(const char *options_var) {
|
||||||
cf_print("__MSVCRT_VERSION__", "0x%04llx", __MSVCRT_VERSION__ + 0);
|
cf_print("__MSVCRT_VERSION__", "0x%04llx", __MSVCRT_VERSION__ + 0);
|
||||||
#endif
|
#endif
|
||||||
#if defined(_USE_MINGW_ANSI_STDIO)
|
#if defined(_USE_MINGW_ANSI_STDIO)
|
||||||
cf_print("_USE_MINGW_ANSI_STDIO", "%lld", _USE_MINGW_ANSI_STDIO + 0);
|
cf_print("_USE_MINGW_ANSI_STDIO", "%lld", _USE_MINGW_ANSI_STDIO + 0, 3);
|
||||||
#endif
|
#endif
|
||||||
#if defined(__USE_MINGW_ANSI_STDIO)
|
#if defined(__USE_MINGW_ANSI_STDIO)
|
||||||
cf_print("__USE_MINGW_ANSI_STDIO", "%lld", __USE_MINGW_ANSI_STDIO + 0);
|
cf_print("__USE_MINGW_ANSI_STDIO", "%lld", __USE_MINGW_ANSI_STDIO + 0, 3);
|
||||||
#endif
|
#endif
|
||||||
#if defined(__GLIBC__)
|
#if defined(__GLIBC__)
|
||||||
cf_print("__GLIBC__", "%lld", __GLIBC__ + 0);
|
cf_print("__GLIBC__", "%lld", __GLIBC__ + 0);
|
||||||
#endif
|
#endif
|
||||||
#if defined(__GLIBC_MINOR__)
|
#if defined(__GLIBC_MINOR__)
|
||||||
cf_print("__GLIBC_MINOR__", "%lld", __GLIBC_MINOR__ + 0);
|
cf_print("__GLIBC_MINOR__", "%lld", __GLIBC_MINOR__ + 0);
|
||||||
#endif
|
|
||||||
// compiler
|
|
||||||
#if defined(_MSC_VER) && defined(_MSC_FULL_VER)
|
|
||||||
cf_print("_MSC_VER", "%lld", _MSC_VER + 0);
|
|
||||||
cf_print("_MSC_FULL_VER", "%lld", _MSC_FULL_VER + 0);
|
|
||||||
#endif
|
#endif
|
||||||
UNUSED(cf_count);
|
UNUSED(cf_count);
|
||||||
UNUSED(cf_print);
|
UNUSED(cf_print);
|
||||||
|
@ -517,6 +545,8 @@ void show_sysinfo(const char *options_var) {
|
||||||
con_fprintf(f, "\n");
|
con_fprintf(f, "\n");
|
||||||
if (e && e[0])
|
if (e && e[0])
|
||||||
con_fprintf(f, "Contents of environment variable %s: '%s'\n\n", options_var, e);
|
con_fprintf(f, "Contents of environment variable %s: '%s'\n\n", options_var, e);
|
||||||
|
else if (e)
|
||||||
|
con_fprintf(f, "Environment variable '%s' is set but empty.\n\n", options_var);
|
||||||
else
|
else
|
||||||
con_fprintf(f, "Environment variable '%s' is not set.\n\n", options_var);
|
con_fprintf(f, "Environment variable '%s' is not set.\n\n", options_var);
|
||||||
}
|
}
|
||||||
|
|
|
@ -39,6 +39,7 @@ std::mutex opt_lock_mutex;
|
||||||
**************************************************************************/
|
**************************************************************************/
|
||||||
|
|
||||||
void Options::reset() noexcept {
|
void Options::reset() noexcept {
|
||||||
|
#define opt ERROR_DO_NOT_USE_opt // protect against using the wrong variable
|
||||||
Options *const o = this;
|
Options *const o = this;
|
||||||
mem_clear(o);
|
mem_clear(o);
|
||||||
o->crp.reset();
|
o->crp.reset();
|
||||||
|
@ -81,6 +82,7 @@ void Options::reset() noexcept {
|
||||||
o->win32_pe.compress_rt[24] = false; // 24 == RT_MANIFEST
|
o->win32_pe.compress_rt[24] = false; // 24 == RT_MANIFEST
|
||||||
o->win32_pe.strip_relocs = -1;
|
o->win32_pe.strip_relocs = -1;
|
||||||
o->win32_pe.keep_resource = "";
|
o->win32_pe.keep_resource = "";
|
||||||
|
#undef opt
|
||||||
}
|
}
|
||||||
|
|
||||||
/*************************************************************************
|
/*************************************************************************
|
||||||
|
@ -88,7 +90,7 @@ void Options::reset() noexcept {
|
||||||
**************************************************************************/
|
**************************************************************************/
|
||||||
|
|
||||||
TEST_CASE("Options::reset") {
|
TEST_CASE("Options::reset") {
|
||||||
#define opt DO_NOT_USE_opt
|
#define opt ERROR_DO_NOT_USE_opt // protect against using the wrong variable
|
||||||
COMPILE_TIME_ASSERT(std::is_standard_layout<Options>::value)
|
COMPILE_TIME_ASSERT(std::is_standard_layout<Options>::value)
|
||||||
COMPILE_TIME_ASSERT(std::is_nothrow_default_constructible<Options>::value)
|
COMPILE_TIME_ASSERT(std::is_nothrow_default_constructible<Options>::value)
|
||||||
COMPILE_TIME_ASSERT(std::is_trivially_copyable<Options>::value)
|
COMPILE_TIME_ASSERT(std::is_trivially_copyable<Options>::value)
|
||||||
|
@ -97,7 +99,6 @@ TEST_CASE("Options::reset") {
|
||||||
Options *const o = &local_options;
|
Options *const o = &local_options;
|
||||||
o->reset();
|
o->reset();
|
||||||
CHECK(o->o_unix.osabi0 == 3);
|
CHECK(o->o_unix.osabi0 == 3);
|
||||||
//
|
|
||||||
static_assert(TABLESIZE(o->win32_pe.compress_rt) == 25); // 25 == RT_LAST
|
static_assert(TABLESIZE(o->win32_pe.compress_rt) == 25); // 25 == RT_LAST
|
||||||
CHECK(o->win32_pe.compress_exports);
|
CHECK(o->win32_pe.compress_exports);
|
||||||
CHECK(o->win32_pe.compress_icons);
|
CHECK(o->win32_pe.compress_icons);
|
||||||
|
|
|
@ -1637,15 +1637,15 @@ PackLinuxElf64amd::defineSymbols(Filter const *ft)
|
||||||
PackLinuxElf64::defineSymbols(ft);
|
PackLinuxElf64::defineSymbols(ft);
|
||||||
}
|
}
|
||||||
|
|
||||||
static const
|
static const CLANG_FORMAT_DUMMY_STATEMENT
|
||||||
#include "stub/i386-linux.elf-entry.h"
|
#include "stub/i386-linux.elf-entry.h"
|
||||||
static const
|
static const CLANG_FORMAT_DUMMY_STATEMENT
|
||||||
#include "stub/i386-linux.elf-so_entry.h"
|
#include "stub/i386-linux.elf-so_entry.h"
|
||||||
static const
|
static const CLANG_FORMAT_DUMMY_STATEMENT
|
||||||
#include "stub/i386-linux.elf-fold.h"
|
#include "stub/i386-linux.elf-fold.h"
|
||||||
static const
|
static const CLANG_FORMAT_DUMMY_STATEMENT
|
||||||
#include "stub/i386-linux.elf-so_fold.h"
|
#include "stub/i386-linux.elf-so_fold.h"
|
||||||
static const
|
static const CLANG_FORMAT_DUMMY_STATEMENT
|
||||||
#include "stub/i386-linux.shlib-init.h"
|
#include "stub/i386-linux.shlib-init.h"
|
||||||
|
|
||||||
void
|
void
|
||||||
|
@ -1677,9 +1677,9 @@ PackLinuxElf32x86::buildLoader(const Filter *ft)
|
||||||
tmp, sizeof(stub_i386_linux_elf_fold), ft );
|
tmp, sizeof(stub_i386_linux_elf_fold), ft );
|
||||||
}
|
}
|
||||||
|
|
||||||
static const
|
static const CLANG_FORMAT_DUMMY_STATEMENT
|
||||||
#include "stub/i386-bsd.elf-entry.h"
|
#include "stub/i386-bsd.elf-entry.h"
|
||||||
static const
|
static const CLANG_FORMAT_DUMMY_STATEMENT
|
||||||
#include "stub/i386-bsd.elf-fold.h"
|
#include "stub/i386-bsd.elf-fold.h"
|
||||||
|
|
||||||
void
|
void
|
||||||
|
@ -1705,10 +1705,10 @@ PackBSDElf32x86::buildLoader(const Filter *ft)
|
||||||
tmp, sizeof(stub_i386_bsd_elf_fold), ft);
|
tmp, sizeof(stub_i386_bsd_elf_fold), ft);
|
||||||
}
|
}
|
||||||
|
|
||||||
static const
|
static const CLANG_FORMAT_DUMMY_STATEMENT
|
||||||
#include "stub/i386-netbsd.elf-entry.h"
|
#include "stub/i386-netbsd.elf-entry.h"
|
||||||
|
|
||||||
static const
|
static const CLANG_FORMAT_DUMMY_STATEMENT
|
||||||
#include "stub/i386-netbsd.elf-fold.h"
|
#include "stub/i386-netbsd.elf-fold.h"
|
||||||
|
|
||||||
#define WANT_NHDR_ENUM
|
#define WANT_NHDR_ENUM
|
||||||
|
@ -1738,7 +1738,7 @@ PackNetBSDElf32x86::buildLoader(const Filter *ft)
|
||||||
tmp, sizeof(stub_i386_netbsd_elf_fold), ft);
|
tmp, sizeof(stub_i386_netbsd_elf_fold), ft);
|
||||||
}
|
}
|
||||||
|
|
||||||
static const
|
static const CLANG_FORMAT_DUMMY_STATEMENT
|
||||||
#include "stub/i386-openbsd.elf-fold.h"
|
#include "stub/i386-openbsd.elf-fold.h"
|
||||||
|
|
||||||
void
|
void
|
||||||
|
@ -1764,33 +1764,33 @@ PackOpenBSDElf32x86::buildLoader(const Filter *ft)
|
||||||
tmp, sizeof(stub_i386_openbsd_elf_fold), ft);
|
tmp, sizeof(stub_i386_openbsd_elf_fold), ft);
|
||||||
}
|
}
|
||||||
|
|
||||||
static const
|
static const CLANG_FORMAT_DUMMY_STATEMENT
|
||||||
#include "stub/arm.v5a-linux.elf-entry.h"
|
#include "stub/arm.v5a-linux.elf-entry.h"
|
||||||
static const
|
static const CLANG_FORMAT_DUMMY_STATEMENT
|
||||||
#include "stub/arm.v5a-linux.elf-so_entry.h"
|
#include "stub/arm.v5a-linux.elf-so_entry.h"
|
||||||
static const
|
static const CLANG_FORMAT_DUMMY_STATEMENT
|
||||||
#include "stub/arm.v5a-linux.elf-fold.h"
|
#include "stub/arm.v5a-linux.elf-fold.h"
|
||||||
static const
|
static const CLANG_FORMAT_DUMMY_STATEMENT
|
||||||
#include "stub/arm.v5a-linux.elf-so_fold.h"
|
#include "stub/arm.v5a-linux.elf-so_fold.h"
|
||||||
static const
|
static const CLANG_FORMAT_DUMMY_STATEMENT
|
||||||
#include "stub/arm.v5t-linux.shlib-init.h"
|
#include "stub/arm.v5t-linux.shlib-init.h"
|
||||||
|
|
||||||
static const
|
static const CLANG_FORMAT_DUMMY_STATEMENT
|
||||||
#include "stub/arm.v4a-linux.elf-entry.h"
|
#include "stub/arm.v4a-linux.elf-entry.h"
|
||||||
static const
|
static const CLANG_FORMAT_DUMMY_STATEMENT
|
||||||
#include "stub/arm.v4a-linux.elf-so_entry.h"
|
#include "stub/arm.v4a-linux.elf-so_entry.h"
|
||||||
static const
|
static const CLANG_FORMAT_DUMMY_STATEMENT
|
||||||
#include "stub/arm.v4a-linux.elf-fold.h"
|
#include "stub/arm.v4a-linux.elf-fold.h"
|
||||||
static const
|
static const CLANG_FORMAT_DUMMY_STATEMENT
|
||||||
#include "stub/arm.v4a-linux.elf-so_fold.h"
|
#include "stub/arm.v4a-linux.elf-so_fold.h"
|
||||||
#if 0
|
#if 0
|
||||||
static const
|
static const CLANG_FORMAT_DUMMY_STATEMENT
|
||||||
#include "stub/arm.v4a-linux.shlib-init.h"
|
#include "stub/arm.v4a-linux.shlib-init.h"
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
static const
|
static const CLANG_FORMAT_DUMMY_STATEMENT
|
||||||
#include "stub/armeb.v4a-linux.elf-entry.h"
|
#include "stub/armeb.v4a-linux.elf-entry.h"
|
||||||
static const
|
static const CLANG_FORMAT_DUMMY_STATEMENT
|
||||||
#include "stub/armeb.v4a-linux.elf-fold.h"
|
#include "stub/armeb.v4a-linux.elf-fold.h"
|
||||||
|
|
||||||
void
|
void
|
||||||
|
@ -1822,11 +1822,11 @@ PackLinuxElf32armLe::buildLoader(Filter const *ft)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static const
|
static const CLANG_FORMAT_DUMMY_STATEMENT
|
||||||
#include "stub/mipsel.r3000-linux.elf-entry.h"
|
#include "stub/mipsel.r3000-linux.elf-entry.h"
|
||||||
static const
|
static const CLANG_FORMAT_DUMMY_STATEMENT
|
||||||
#include "stub/mipsel.r3000-linux.elf-fold.h"
|
#include "stub/mipsel.r3000-linux.elf-fold.h"
|
||||||
static const
|
static const CLANG_FORMAT_DUMMY_STATEMENT
|
||||||
#include "stub/mipsel.r3000-linux.shlib-init.h"
|
#include "stub/mipsel.r3000-linux.shlib-init.h"
|
||||||
|
|
||||||
void
|
void
|
||||||
|
@ -1843,11 +1843,11 @@ PackLinuxElf32mipsel::buildLoader(Filter const *ft)
|
||||||
stub_mipsel_r3000_linux_elf_fold, sizeof(stub_mipsel_r3000_linux_elf_fold), ft);
|
stub_mipsel_r3000_linux_elf_fold, sizeof(stub_mipsel_r3000_linux_elf_fold), ft);
|
||||||
}
|
}
|
||||||
|
|
||||||
static const
|
static const CLANG_FORMAT_DUMMY_STATEMENT
|
||||||
#include "stub/mips.r3000-linux.elf-entry.h"
|
#include "stub/mips.r3000-linux.elf-entry.h"
|
||||||
static const
|
static const CLANG_FORMAT_DUMMY_STATEMENT
|
||||||
#include "stub/mips.r3000-linux.elf-fold.h"
|
#include "stub/mips.r3000-linux.elf-fold.h"
|
||||||
static const
|
static const CLANG_FORMAT_DUMMY_STATEMENT
|
||||||
#include "stub/mips.r3000-linux.shlib-init.h"
|
#include "stub/mips.r3000-linux.shlib-init.h"
|
||||||
|
|
||||||
void
|
void
|
||||||
|
@ -1864,9 +1864,9 @@ PackLinuxElf32mipseb::buildLoader(Filter const *ft)
|
||||||
stub_mips_r3000_linux_elf_fold, sizeof(stub_mips_r3000_linux_elf_fold), ft);
|
stub_mips_r3000_linux_elf_fold, sizeof(stub_mips_r3000_linux_elf_fold), ft);
|
||||||
}
|
}
|
||||||
|
|
||||||
static const
|
static const CLANG_FORMAT_DUMMY_STATEMENT
|
||||||
#include "stub/powerpc-linux.elf-entry.h"
|
#include "stub/powerpc-linux.elf-entry.h"
|
||||||
static const
|
static const CLANG_FORMAT_DUMMY_STATEMENT
|
||||||
#include "stub/powerpc-linux.elf-fold.h"
|
#include "stub/powerpc-linux.elf-fold.h"
|
||||||
|
|
||||||
void
|
void
|
||||||
|
@ -1877,9 +1877,9 @@ PackLinuxElf32ppc::buildLoader(const Filter *ft)
|
||||||
stub_powerpc_linux_elf_fold, sizeof(stub_powerpc_linux_elf_fold), ft);
|
stub_powerpc_linux_elf_fold, sizeof(stub_powerpc_linux_elf_fold), ft);
|
||||||
}
|
}
|
||||||
|
|
||||||
static const
|
static const CLANG_FORMAT_DUMMY_STATEMENT
|
||||||
#include "stub/powerpc64le-linux.elf-entry.h"
|
#include "stub/powerpc64le-linux.elf-entry.h"
|
||||||
static const
|
static const CLANG_FORMAT_DUMMY_STATEMENT
|
||||||
#include "stub/powerpc64le-linux.elf-fold.h"
|
#include "stub/powerpc64le-linux.elf-fold.h"
|
||||||
|
|
||||||
void
|
void
|
||||||
|
@ -1890,9 +1890,9 @@ PackLinuxElf64ppcle::buildLoader(const Filter *ft)
|
||||||
stub_powerpc64le_linux_elf_fold, sizeof(stub_powerpc64le_linux_elf_fold), ft);
|
stub_powerpc64le_linux_elf_fold, sizeof(stub_powerpc64le_linux_elf_fold), ft);
|
||||||
}
|
}
|
||||||
|
|
||||||
static const
|
static const CLANG_FORMAT_DUMMY_STATEMENT
|
||||||
#include "stub/powerpc64-linux.elf-entry.h"
|
#include "stub/powerpc64-linux.elf-entry.h"
|
||||||
static const
|
static const CLANG_FORMAT_DUMMY_STATEMENT
|
||||||
#include "stub/powerpc64-linux.elf-fold.h"
|
#include "stub/powerpc64-linux.elf-fold.h"
|
||||||
|
|
||||||
void
|
void
|
||||||
|
@ -1903,15 +1903,15 @@ PackLinuxElf64ppc::buildLoader(const Filter *ft)
|
||||||
stub_powerpc64_linux_elf_fold, sizeof(stub_powerpc64_linux_elf_fold), ft);
|
stub_powerpc64_linux_elf_fold, sizeof(stub_powerpc64_linux_elf_fold), ft);
|
||||||
}
|
}
|
||||||
|
|
||||||
static const
|
static const CLANG_FORMAT_DUMMY_STATEMENT
|
||||||
#include "stub/amd64-linux.elf-entry.h"
|
#include "stub/amd64-linux.elf-entry.h"
|
||||||
static const
|
static const CLANG_FORMAT_DUMMY_STATEMENT
|
||||||
#include "stub/amd64-linux.elf-fold.h"
|
#include "stub/amd64-linux.elf-fold.h"
|
||||||
static const
|
static const CLANG_FORMAT_DUMMY_STATEMENT
|
||||||
#include "stub/amd64-linux.elf-so_entry.h"
|
#include "stub/amd64-linux.elf-so_entry.h"
|
||||||
static const
|
static const CLANG_FORMAT_DUMMY_STATEMENT
|
||||||
#include "stub/amd64-linux.elf-so_fold.h"
|
#include "stub/amd64-linux.elf-so_fold.h"
|
||||||
static const
|
static const CLANG_FORMAT_DUMMY_STATEMENT
|
||||||
#include "stub/amd64-linux.shlib-init.h"
|
#include "stub/amd64-linux.shlib-init.h"
|
||||||
|
|
||||||
void
|
void
|
||||||
|
@ -1928,15 +1928,15 @@ PackLinuxElf64amd::buildLoader(const Filter *ft)
|
||||||
stub_amd64_linux_elf_fold, sizeof(stub_amd64_linux_elf_fold), ft);
|
stub_amd64_linux_elf_fold, sizeof(stub_amd64_linux_elf_fold), ft);
|
||||||
}
|
}
|
||||||
|
|
||||||
static const
|
static const CLANG_FORMAT_DUMMY_STATEMENT
|
||||||
#include "stub/arm64-linux.elf-entry.h"
|
#include "stub/arm64-linux.elf-entry.h"
|
||||||
static const
|
static const CLANG_FORMAT_DUMMY_STATEMENT
|
||||||
#include "stub/arm64-linux.elf-so_entry.h"
|
#include "stub/arm64-linux.elf-so_entry.h"
|
||||||
static const
|
static const CLANG_FORMAT_DUMMY_STATEMENT
|
||||||
#include "stub/arm64-linux.elf-fold.h"
|
#include "stub/arm64-linux.elf-fold.h"
|
||||||
static const
|
static const CLANG_FORMAT_DUMMY_STATEMENT
|
||||||
#include "stub/arm64-linux.elf-so_fold.h"
|
#include "stub/arm64-linux.elf-so_fold.h"
|
||||||
static const
|
static const CLANG_FORMAT_DUMMY_STATEMENT
|
||||||
#include "stub/arm64-linux.shlib-init.h"
|
#include "stub/arm64-linux.shlib-init.h"
|
||||||
|
|
||||||
void
|
void
|
||||||
|
|
|
@ -74,14 +74,14 @@ PackBSDI386::PackBSDI386(InputFile *f) : super(f)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static const
|
static const CLANG_FORMAT_DUMMY_STATEMENT
|
||||||
#include "stub/i386-linux.elf.execve-entry.h"
|
#include "stub/i386-linux.elf.execve-entry.h"
|
||||||
static const
|
static const CLANG_FORMAT_DUMMY_STATEMENT
|
||||||
#include "stub/i386-linux.elf.execve-fold.h"
|
#include "stub/i386-linux.elf.execve-fold.h"
|
||||||
|
|
||||||
static const
|
static const CLANG_FORMAT_DUMMY_STATEMENT
|
||||||
#include "stub/i386-bsd.elf.execve-entry.h"
|
#include "stub/i386-bsd.elf.execve-entry.h"
|
||||||
static const
|
static const CLANG_FORMAT_DUMMY_STATEMENT
|
||||||
#include "stub/i386-bsd.elf.execve-fold.h"
|
#include "stub/i386-bsd.elf.execve-fold.h"
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -50,9 +50,9 @@
|
||||||
//
|
//
|
||||||
**************************************************************************/
|
**************************************************************************/
|
||||||
|
|
||||||
static const
|
static const CLANG_FORMAT_DUMMY_STATEMENT
|
||||||
#include "stub/i386-linux.elf.interp-entry.h"
|
#include "stub/i386-linux.elf.interp-entry.h"
|
||||||
static const
|
static const CLANG_FORMAT_DUMMY_STATEMENT
|
||||||
#include "stub/i386-linux.elf.interp-fold.h"
|
#include "stub/i386-linux.elf.interp-fold.h"
|
||||||
|
|
||||||
PackLinuxElf32x86interp::PackLinuxElf32x86interp(InputFile *f) :
|
PackLinuxElf32x86interp::PackLinuxElf32x86interp(InputFile *f) :
|
||||||
|
|
|
@ -47,9 +47,9 @@
|
||||||
//
|
//
|
||||||
**************************************************************************/
|
**************************************************************************/
|
||||||
|
|
||||||
static const
|
static const CLANG_FORMAT_DUMMY_STATEMENT
|
||||||
#include "stub/i386-linux.elf.shell-entry.h"
|
#include "stub/i386-linux.elf.shell-entry.h"
|
||||||
static const
|
static const CLANG_FORMAT_DUMMY_STATEMENT
|
||||||
#include "stub/i386-linux.elf.shell-fold.h"
|
#include "stub/i386-linux.elf.shell-fold.h"
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -45,48 +45,48 @@
|
||||||
# pragma GCC diagnostic ignored "-Wcast-align"
|
# pragma GCC diagnostic ignored "-Wcast-align"
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
static const
|
static const CLANG_FORMAT_DUMMY_STATEMENT
|
||||||
#include "stub/i386-darwin.macho-entry.h"
|
#include "stub/i386-darwin.macho-entry.h"
|
||||||
static const
|
static const CLANG_FORMAT_DUMMY_STATEMENT
|
||||||
#include "stub/i386-darwin.macho-fold.h"
|
#include "stub/i386-darwin.macho-fold.h"
|
||||||
static const
|
static const CLANG_FORMAT_DUMMY_STATEMENT
|
||||||
#include "stub/i386-darwin.macho-upxmain.h"
|
#include "stub/i386-darwin.macho-upxmain.h"
|
||||||
static const
|
static const CLANG_FORMAT_DUMMY_STATEMENT
|
||||||
#include "stub/i386-darwin.dylib-entry.h"
|
#include "stub/i386-darwin.dylib-entry.h"
|
||||||
|
|
||||||
static const
|
static const CLANG_FORMAT_DUMMY_STATEMENT
|
||||||
#include "stub/amd64-darwin.macho-entry.h"
|
#include "stub/amd64-darwin.macho-entry.h"
|
||||||
static const
|
static const CLANG_FORMAT_DUMMY_STATEMENT
|
||||||
#include "stub/amd64-darwin.macho-fold.h"
|
#include "stub/amd64-darwin.macho-fold.h"
|
||||||
static const
|
static const CLANG_FORMAT_DUMMY_STATEMENT
|
||||||
#include "stub/amd64-darwin.macho-upxmain.h"
|
#include "stub/amd64-darwin.macho-upxmain.h"
|
||||||
static const
|
static const CLANG_FORMAT_DUMMY_STATEMENT
|
||||||
#include "stub/amd64-darwin.dylib-entry.h"
|
#include "stub/amd64-darwin.dylib-entry.h"
|
||||||
|
|
||||||
static const
|
static const CLANG_FORMAT_DUMMY_STATEMENT
|
||||||
#include "stub/arm.v5a-darwin.macho-entry.h"
|
#include "stub/arm.v5a-darwin.macho-entry.h"
|
||||||
static const
|
static const CLANG_FORMAT_DUMMY_STATEMENT
|
||||||
#include "stub/arm.v5a-darwin.macho-fold.h"
|
#include "stub/arm.v5a-darwin.macho-fold.h"
|
||||||
|
|
||||||
static const
|
static const CLANG_FORMAT_DUMMY_STATEMENT
|
||||||
#include "stub/arm64-darwin.macho-entry.h"
|
#include "stub/arm64-darwin.macho-entry.h"
|
||||||
static const
|
static const CLANG_FORMAT_DUMMY_STATEMENT
|
||||||
#include "stub/arm64-darwin.macho-fold.h"
|
#include "stub/arm64-darwin.macho-fold.h"
|
||||||
|
|
||||||
static const
|
static const CLANG_FORMAT_DUMMY_STATEMENT
|
||||||
#include "stub/powerpc-darwin.macho-entry.h"
|
#include "stub/powerpc-darwin.macho-entry.h"
|
||||||
static const
|
static const CLANG_FORMAT_DUMMY_STATEMENT
|
||||||
#include "stub/powerpc-darwin.macho-fold.h"
|
#include "stub/powerpc-darwin.macho-fold.h"
|
||||||
static const
|
static const CLANG_FORMAT_DUMMY_STATEMENT
|
||||||
#include "stub/powerpc-darwin.macho-upxmain.h"
|
#include "stub/powerpc-darwin.macho-upxmain.h"
|
||||||
static const
|
static const CLANG_FORMAT_DUMMY_STATEMENT
|
||||||
#include "stub/powerpc-darwin.dylib-entry.h"
|
#include "stub/powerpc-darwin.dylib-entry.h"
|
||||||
|
|
||||||
static const
|
static const CLANG_FORMAT_DUMMY_STATEMENT
|
||||||
#include "stub/powerpc64-darwin.macho-entry.h"
|
#include "stub/powerpc64-darwin.macho-entry.h"
|
||||||
static const
|
static const CLANG_FORMAT_DUMMY_STATEMENT
|
||||||
#include "stub/powerpc64-darwin.macho-fold.h"
|
#include "stub/powerpc64-darwin.macho-fold.h"
|
||||||
static const
|
static const CLANG_FORMAT_DUMMY_STATEMENT
|
||||||
#include "stub/powerpc64-darwin.dylib-entry.h"
|
#include "stub/powerpc64-darwin.dylib-entry.h"
|
||||||
|
|
||||||
// Packing a Darwin (Mach-o) Mac OS X dylib (dynamic shared library)
|
// Packing a Darwin (Mach-o) Mac OS X dylib (dynamic shared library)
|
||||||
|
|
|
@ -38,15 +38,15 @@
|
||||||
#include "p_vmlinx.h"
|
#include "p_vmlinx.h"
|
||||||
#include "linker.h"
|
#include "linker.h"
|
||||||
|
|
||||||
static const
|
static const CLANG_FORMAT_DUMMY_STATEMENT
|
||||||
#include "stub/i386-linux.kernel.vmlinux.h"
|
#include "stub/i386-linux.kernel.vmlinux.h"
|
||||||
static const
|
static const CLANG_FORMAT_DUMMY_STATEMENT
|
||||||
#include "stub/amd64-linux.kernel.vmlinux.h"
|
#include "stub/amd64-linux.kernel.vmlinux.h"
|
||||||
static const
|
static const CLANG_FORMAT_DUMMY_STATEMENT
|
||||||
#include "stub/arm.v5a-linux.kernel.vmlinux.h"
|
#include "stub/arm.v5a-linux.kernel.vmlinux.h"
|
||||||
static const
|
static const CLANG_FORMAT_DUMMY_STATEMENT
|
||||||
#include "stub/armeb.v5a-linux.kernel.vmlinux.h"
|
#include "stub/armeb.v5a-linux.kernel.vmlinux.h"
|
||||||
static const
|
static const CLANG_FORMAT_DUMMY_STATEMENT
|
||||||
#include "stub/powerpc-linux.kernel.vmlinux.h"
|
#include "stub/powerpc-linux.kernel.vmlinux.h"
|
||||||
|
|
||||||
|
|
||||||
|
@ -943,7 +943,7 @@ void PackVmlinuxPPC32::buildLoader(const Filter *ft)
|
||||||
addLoader("IDENTSTR,UPX1HEAD", nullptr);
|
addLoader("IDENTSTR,UPX1HEAD", nullptr);
|
||||||
}
|
}
|
||||||
|
|
||||||
static const
|
static const CLANG_FORMAT_DUMMY_STATEMENT
|
||||||
#include "stub/powerpc64le-linux.kernel.vmlinux.h"
|
#include "stub/powerpc64le-linux.kernel.vmlinux.h"
|
||||||
void PackVmlinuxPPC64LE::buildLoader(const Filter *ft)
|
void PackVmlinuxPPC64LE::buildLoader(const Filter *ft)
|
||||||
{
|
{
|
||||||
|
@ -971,15 +971,15 @@ void PackVmlinuxPPC64LE::buildLoader(const Filter *ft)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
static const
|
static const CLANG_FORMAT_DUMMY_STATEMENT
|
||||||
#include "stub/i386-linux.kernel.vmlinux-head.h"
|
#include "stub/i386-linux.kernel.vmlinux-head.h"
|
||||||
static const
|
static const CLANG_FORMAT_DUMMY_STATEMENT
|
||||||
#include "stub/amd64-linux.kernel.vmlinux-head.h"
|
#include "stub/amd64-linux.kernel.vmlinux-head.h"
|
||||||
static const
|
static const CLANG_FORMAT_DUMMY_STATEMENT
|
||||||
#include "stub/arm.v5a-linux.kernel.vmlinux-head.h"
|
#include "stub/arm.v5a-linux.kernel.vmlinux-head.h"
|
||||||
static const
|
static const CLANG_FORMAT_DUMMY_STATEMENT
|
||||||
#include "stub/armeb.v5a-linux.kernel.vmlinux-head.h"
|
#include "stub/armeb.v5a-linux.kernel.vmlinux-head.h"
|
||||||
static const
|
static const CLANG_FORMAT_DUMMY_STATEMENT
|
||||||
#include "stub/powerpc-linux.kernel.vmlinux-head.h"
|
#include "stub/powerpc-linux.kernel.vmlinux-head.h"
|
||||||
|
|
||||||
unsigned PackVmlinuxI386::write_vmlinux_head(
|
unsigned PackVmlinuxI386::write_vmlinux_head(
|
||||||
|
@ -1166,7 +1166,7 @@ bool PackVmlinuxPPC32::has_valid_vmlinux_head()
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
static const
|
static const CLANG_FORMAT_DUMMY_STATEMENT
|
||||||
#include "stub/powerpc64le-linux.kernel.vmlinux-head.h"
|
#include "stub/powerpc64le-linux.kernel.vmlinux-head.h"
|
||||||
bool PackVmlinuxPPC64LE::has_valid_vmlinux_head()
|
bool PackVmlinuxPPC64LE::has_valid_vmlinux_head()
|
||||||
{
|
{
|
||||||
|
|
|
@ -37,7 +37,7 @@
|
||||||
#include "linker.h"
|
#include "linker.h"
|
||||||
#include <zlib/zlib.h>
|
#include <zlib/zlib.h>
|
||||||
|
|
||||||
static const
|
static const CLANG_FORMAT_DUMMY_STATEMENT
|
||||||
#include "stub/i386-linux.kernel.vmlinuz.h"
|
#include "stub/i386-linux.kernel.vmlinuz.h"
|
||||||
|
|
||||||
static const unsigned stack_offset_during_uncompression = 0x9000;
|
static const unsigned stack_offset_during_uncompression = 0x9000;
|
||||||
|
@ -921,9 +921,9 @@ Linker* PackVmlinuzARMEL::newLinker() const
|
||||||
return new ElfLinkerArmLE;
|
return new ElfLinkerArmLE;
|
||||||
}
|
}
|
||||||
|
|
||||||
static const
|
static const CLANG_FORMAT_DUMMY_STATEMENT
|
||||||
#include "stub/arm.v5a-linux.kernel.vmlinux.h"
|
#include "stub/arm.v5a-linux.kernel.vmlinux.h"
|
||||||
static const
|
static const CLANG_FORMAT_DUMMY_STATEMENT
|
||||||
#include "stub/arm.v5a-linux.kernel.vmlinuz-head.h"
|
#include "stub/arm.v5a-linux.kernel.vmlinuz-head.h"
|
||||||
|
|
||||||
void PackVmlinuzARMEL::buildLoader(const Filter *ft)
|
void PackVmlinuzARMEL::buildLoader(const Filter *ft)
|
||||||
|
|
|
@ -30,15 +30,13 @@
|
||||||
// of class PackerBase which then does the actual work.
|
// of class PackerBase which then does the actual work.
|
||||||
// And see p_com.cpp for a simple executable format.
|
// And see p_com.cpp for a simple executable format.
|
||||||
|
|
||||||
|
#define WANT_WINDOWS_LEAN_H 1 // _get_osfhandle, GetFileTime, SetFileTime
|
||||||
#include "headers.h"
|
#include "headers.h"
|
||||||
#if USE_UTIMENSAT
|
#if USE_UTIMENSAT
|
||||||
#include <sys/types.h>
|
#include <sys/types.h>
|
||||||
#include <fcntl.h>
|
#include <fcntl.h>
|
||||||
#include <sys/stat.h>
|
#include <sys/stat.h>
|
||||||
#endif
|
#endif
|
||||||
#if defined(_WIN32) || defined(__CYGWIN__)
|
|
||||||
#include "util/windows_lean.h" // _get_osfhandle, GetFileTime, SetFileTime
|
|
||||||
#endif
|
|
||||||
#include "conf.h"
|
#include "conf.h"
|
||||||
#include "file.h"
|
#include "file.h"
|
||||||
#include "packmast.h"
|
#include "packmast.h"
|
||||||
|
|
Loading…
Reference in New Issue
Block a user