mirror of
https://github.com/visualboyadvance-m/visualboyadvance-m
synced 2025-10-05 23:52:49 +02:00
builder: msys2: fix links to host binaries
Factor out non-environment code from host_env()/target_env() into host_env_base()/target_env_base(). Such as that for creating symlinks to root, link host binaries to the target root, as well as calling the hook. Call the _base() functions from the msys2 overrides so that symlinks are created properly, remove redundant symlink code.
This commit is contained in:
@@ -13,7 +13,7 @@ export PERL_MAKE="${PERL_MAKE:-make}"
|
||||
|
||||
BUILD_ENV=$BUILD_ENV$(cat <<EOF
|
||||
|
||||
export BUILD_ROOT="\$BUILD_ROOT"
|
||||
export BUILD_ROOT="\${BUILD_ROOT:-$BUILD_ROOT}"
|
||||
|
||||
export CC="\${CC:-gcc}"
|
||||
export CXX="\${CXX:-g++}"
|
||||
|
@@ -71,9 +71,13 @@ fi
|
||||
|
||||
both_dists=$(list_remove_duplicates $both_dists)
|
||||
|
||||
host_env() {
|
||||
host_env_base() {
|
||||
rm -f "$BUILD_ROOT/root"
|
||||
ln -sf "$BUILD_ROOT/host" "$BUILD_ROOT/root"
|
||||
host_env_hook 2>/dev/null || :
|
||||
}
|
||||
|
||||
host_env() {
|
||||
if [ -z "$OCC" ]; then
|
||||
cat <<EOF
|
||||
OCC="\$CC"
|
||||
@@ -110,13 +114,28 @@ REQUIRED_CMAKE_ARGS="\$(puts "\$REQUIRED_CMAKE_ARGS" | sed 's/-DCMAKE_TOOLCHAIN_
|
||||
EOF
|
||||
fi
|
||||
|
||||
host_env_hook 2>/dev/null || :
|
||||
host_env_base 2>/dev/null || :
|
||||
}
|
||||
|
||||
target_env() {
|
||||
target_env_base() {
|
||||
rm -f "$BUILD_ROOT/root"
|
||||
ln -sf "$BUILD_ROOT/target" "$BUILD_ROOT/root"
|
||||
|
||||
# make links to executables in the target as well
|
||||
IFS=$NL
|
||||
for exe in $(find "$BUILD_ROOT/host/bin" -maxdepth 1 -type f); do
|
||||
IFS=$OIFS
|
||||
basename=${exe##*/}
|
||||
if ! path_exists "$BUILD_ROOT/target/bin/$basename"; then
|
||||
ln -s "$exe" "$BUILD_ROOT/target/bin/$basename";
|
||||
fi
|
||||
done
|
||||
IFS=$OIFS
|
||||
|
||||
target_env_hook 2>/dev/null || :
|
||||
}
|
||||
|
||||
target_env() {
|
||||
if [ -n "$OCC" ]; then
|
||||
cat <<EOF
|
||||
export CC="\$OCC"
|
||||
@@ -140,18 +159,7 @@ $BUILD_ENV
|
||||
EOF
|
||||
fi
|
||||
|
||||
# make links to executables in the target as well
|
||||
IFS=$NL
|
||||
for exe in $(find "$BUILD_ROOT/host/bin" -maxdepth 1 -type f); do
|
||||
IFS=$OIFS
|
||||
basename=${exe##*/}
|
||||
if ! path_exists "$BUILD_ROOT/target/bin/$basename"; then
|
||||
ln -s "$exe" "$BUILD_ROOT/target/bin/$basename";
|
||||
fi
|
||||
done
|
||||
IFS=$OIFS
|
||||
|
||||
target_env_hook 2>/dev/null || :
|
||||
target_env_base 2>/dev/null || :
|
||||
}
|
||||
|
||||
# replace install artifact paths with absolute paths into host and target trees
|
||||
|
@@ -107,8 +107,6 @@ DIST_TAR_ARGS="
|
||||
. "${0%/*}/../builder/mingw.sh"
|
||||
|
||||
host_env() {
|
||||
ln -sf "$BUILD_ROOT/host" "$BUILD_ROOT/root"
|
||||
|
||||
cat <<EOF
|
||||
unset MSYSTEM_PREFIX MSYSTEM_CARCH MSYSTEM_CHOST MINGW_CHOST MINGW_PREFIX MINGW_PACKAGE_PREFIX CONFIG_SITE ACLOCAL_PATH PKG_CONFIG_PATH
|
||||
|
||||
@@ -120,11 +118,10 @@ $BUILD_ENV
|
||||
EOF
|
||||
|
||||
cd "$OPWD"
|
||||
host_env_base 2>/dev/null || :
|
||||
}
|
||||
|
||||
target_env() {
|
||||
ln -sf "$BUILD_ROOT/target" "$BUILD_ROOT/root"
|
||||
|
||||
cat <<EOF
|
||||
unset MSYSTEM_PREFIX MSYSTEM_CARCH MSYSTEM_CHOST MINGW_CHOST MINGW_PREFIX MINGW_PACKAGE_PREFIX CONFIG_SITE ACLOCAL_PATH PKG_CONFIG_PATH
|
||||
|
||||
@@ -136,6 +133,7 @@ $BUILD_ENV
|
||||
EOF
|
||||
|
||||
cd "$OPWD"
|
||||
target_env_base 2>/dev/null || :
|
||||
}
|
||||
|
||||
table_line_append DIST_PRE_BUILD c2man ":; \
|
||||
|
Reference in New Issue
Block a user