all: assorted updates and cleanups
This commit is contained in:
@@ -6,10 +6,10 @@ argv0=$0; argv0abs="$(readlink -fn "$argv0")"; argv0dir="$(dirname "$argv0abs")"
|
||||
# create the image from Dockerfile
|
||||
# using a rootless Podman container
|
||||
|
||||
# NOTE: this image is based on rebuild-stubs-with-podman/upx-stubtools-20221212-v4,
|
||||
# NOTE: this image is based on rebuild-stubs-with-podman/upx-stubtools-20221212-v5,
|
||||
# so you have to create that image first
|
||||
# WARNING: we install many packages, so the resulting image needs A LOT of disk space!
|
||||
image=upx-cross-compile-20230115-v2
|
||||
image=upx-cross-compile-20230115-v3
|
||||
|
||||
podman build -t "$image" -f "$argv0dir/Dockerfile" "$argv0dir"
|
||||
|
||||
|
||||
@@ -6,7 +6,7 @@ argv0=$0; argv0abs="$(readlink -fn "$argv0")"; argv0dir="$(dirname "$argv0abs")"
|
||||
# run an interactive shell in the image
|
||||
# using a rootless Podman container
|
||||
|
||||
image=upx-cross-compile-20230115-v2
|
||||
image=upx-cross-compile-20230115-v3
|
||||
|
||||
flags=( -ti --read-only --rm )
|
||||
flags+=( --cap-drop=all ) # drop all capabilities
|
||||
@@ -44,10 +44,11 @@ podman run "${flags[@]}" "$image" bash -l
|
||||
|
||||
# and lots of other cross-compilers are installed; see "ls /usr/bin/*g++*"
|
||||
|
||||
# and finally see misc/cross-compile-upx-with-podman/build-all-inside-container.sh
|
||||
# and finally see
|
||||
# ./misc/cross-compile-upx-with-podman/build-all-inside-container.sh
|
||||
# after running that script we can do cool things like:
|
||||
# cd /home/upx/src/upx/build/cross-compile-upx-with-podman/alpha-linux-gnu/debug
|
||||
# qemu-alpha -L /usr/alpha-linux-gnu upx --version
|
||||
# qemu-alpha -L /usr/alpha-linux-gnu ./upx --version
|
||||
# cd /home/upx/src/upx/build/cross-compile-upx-with-podman/hppa-linux-gnu/debug
|
||||
# qemu-hppa -L /usr/hppa-linux-gnu upx --version
|
||||
# qemu-hppa -L /usr/hppa-linux-gnu ./upx --version
|
||||
# (similar for many other architectures/builds)
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
# NOTE: this image is based on rebuild-stubs-with-podman/upx-stubtools-20221212-v4,
|
||||
# NOTE: this image is based on rebuild-stubs-with-podman/upx-stubtools-20221212-v5,
|
||||
# so you have to create that image first
|
||||
# WARNING: we install many packages, so the resulting image needs A LOT of disk space!
|
||||
FROM localhost/upx-stubtools-20221212-v4
|
||||
ENV UPX_CONTAINER_IMAGE_NAME=upx-cross-compile-20230115-v2
|
||||
FROM localhost/upx-stubtools-20221212-v5
|
||||
ENV UPX_CONTAINER_IMAGE_NAME=upx-cross-compile-20230115-v3
|
||||
ARG DEBIAN_FRONTEND=noninteractive
|
||||
|
||||
USER root
|
||||
|
||||
@@ -27,9 +27,13 @@ function run_config_and_build {
|
||||
# these old architectures do not support sanitize
|
||||
alpha-linux-gnu) cmake_config_flags=-DUPX_CONFIG_DISABLE_SANITIZE=ON ;;
|
||||
hppa-linux-gnu) cmake_config_flags=-DUPX_CONFIG_DISABLE_SANITIZE=ON ;;
|
||||
# avoid link errors with current MinGW-w64 versions
|
||||
i686-w64-mingw32) cmake_config_flags=-DUPX_CONFIG_DISABLE_SANITIZE=ON ;;
|
||||
x86_64-w64-mingw32) cmake_config_flags=-DUPX_CONFIG_DISABLE_SANITIZE=ON ;;
|
||||
# avoid sanitize link errors with current MinGW-w64 versions; link libstdc++ statically
|
||||
i686-w64-mingw32)
|
||||
cmake_config_flags=-DUPX_CONFIG_DISABLE_SANITIZE=ON
|
||||
CC="$CC -static"; CXX="$CXX -static" ;;
|
||||
x86_64-w64-mingw32)
|
||||
cmake_config_flags=-DUPX_CONFIG_DISABLE_SANITIZE=ON
|
||||
CC="$CC -static"; CXX="$CXX -static" ;;
|
||||
# avoid warnings about arm libstdc++ ABI change in gcc-7
|
||||
arm-linux-*) CXX="$CXX -Wno-psabi" ;;
|
||||
esac
|
||||
|
||||
Reference in New Issue
Block a user