diff --git a/common/cross-profiles/README b/common/cross-profiles/README index ce2c710a61..0c52195b6b 100644 --- a/common/cross-profiles/README +++ b/common/cross-profiles/README @@ -4,7 +4,7 @@ CROSS PROFILES This directory contains cross profiles to allow cross compilation for the specified target. A cross profile file must provide the following variables: - - XBPS_TARGET_ARCH (as returned by uname -m) + - XBPS_TARGET_MACHINE (as returned by uname -m + optional -musl suffix) - XBPS_CROSS_TRIPLET (the cross compiler triplet) - XBPS_CROSS_CFLAGS (C compiler flags for the cross compiler) - XBPS_CROSS_CXXFLAGS (C++ compiler flags for the cross compiler) diff --git a/common/cross-profiles/aarch64-musl.sh b/common/cross-profiles/aarch64-musl.sh index 8d6670a16a..fda5ac09c6 100644 --- a/common/cross-profiles/aarch64-musl.sh +++ b/common/cross-profiles/aarch64-musl.sh @@ -1,6 +1,6 @@ # Cross build profile for ARMv8. -XBPS_TARGET_ARCH="aarch64-musl" +XBPS_TARGET_MACHINE="aarch64-musl" XBPS_CROSS_TRIPLET="aarch64-linux-musl" XBPS_CROSS_CFLAGS="-march=armv8-a" XBPS_CROSS_CXXFLAGS="$XBPS_CROSS_CFLAGS" diff --git a/common/cross-profiles/aarch64.sh b/common/cross-profiles/aarch64.sh index 0e873502fb..42e0068d3b 100644 --- a/common/cross-profiles/aarch64.sh +++ b/common/cross-profiles/aarch64.sh @@ -1,6 +1,6 @@ # Cross build profile for ARMv8. -XBPS_TARGET_ARCH="aarch64" +XBPS_TARGET_MACHINE="aarch64" XBPS_CROSS_TRIPLET="aarch64-linux-gnu" XBPS_CFLAGS="-O2 -pipe" # XXX not yet supported: -fstack-protector-strong XBPS_CXXFLAGS="$XBPS_CFLAGS" diff --git a/common/cross-profiles/armv5te-musl.sh b/common/cross-profiles/armv5te-musl.sh deleted file mode 100644 index 06663f5767..0000000000 --- a/common/cross-profiles/armv5te-musl.sh +++ /dev/null @@ -1,6 +0,0 @@ -# Cross build profile for ARM GNU EABI5 Soft Float and Musl libc. - -XBPS_TARGET_ARCH="armv5tel-musl" -XBPS_CROSS_TRIPLET="arm-linux-musleabi" -XBPS_CROSS_CFLAGS="-march=armv5te -msoft-float -mfloat-abi=soft" -XBPS_CROSS_CXXFLAGS="$XBPS_CROSS_CFLAGS" diff --git a/common/cross-profiles/armv5te-musl.sh b/common/cross-profiles/armv5te-musl.sh new file mode 120000 index 0000000000..bb05c64529 --- /dev/null +++ b/common/cross-profiles/armv5te-musl.sh @@ -0,0 +1 @@ +armv5tel-musl.sh \ No newline at end of file diff --git a/common/cross-profiles/armv5te.sh b/common/cross-profiles/armv5te.sh deleted file mode 100644 index b0fe7015bc..0000000000 --- a/common/cross-profiles/armv5te.sh +++ /dev/null @@ -1,6 +0,0 @@ -# Cross build profile for ARM GNU EABI5 Soft Float. - -XBPS_TARGET_ARCH="armv5tel" -XBPS_CROSS_TRIPLET="arm-linux-gnueabi" -XBPS_CROSS_CFLAGS="-march=armv5te -msoft-float -mfloat-abi=soft" -XBPS_CROSS_CXXFLAGS="$XBPS_CROSS_CFLAGS" diff --git a/common/cross-profiles/armv5te.sh b/common/cross-profiles/armv5te.sh new file mode 120000 index 0000000000..efe0829e1b --- /dev/null +++ b/common/cross-profiles/armv5te.sh @@ -0,0 +1 @@ +armv5tel.sh \ No newline at end of file diff --git a/common/cross-profiles/armv5tel-musl.sh b/common/cross-profiles/armv5tel-musl.sh new file mode 100644 index 0000000000..a238957968 --- /dev/null +++ b/common/cross-profiles/armv5tel-musl.sh @@ -0,0 +1,6 @@ +# Cross build profile for ARM GNU EABI5 Soft Float and Musl libc. + +XBPS_TARGET_MACHINE="armv5tel-musl" +XBPS_CROSS_TRIPLET="arm-linux-musleabi" +XBPS_CROSS_CFLAGS="-march=armv5te -msoft-float -mfloat-abi=soft" +XBPS_CROSS_CXXFLAGS="$XBPS_CROSS_CFLAGS" diff --git a/common/cross-profiles/armv5tel.sh b/common/cross-profiles/armv5tel.sh new file mode 100644 index 0000000000..d654ad9362 --- /dev/null +++ b/common/cross-profiles/armv5tel.sh @@ -0,0 +1,6 @@ +# Cross build profile for ARM GNU EABI5 Soft Float. + +XBPS_TARGET_MACHINE="armv5tel" +XBPS_CROSS_TRIPLET="arm-linux-gnueabi" +XBPS_CROSS_CFLAGS="-march=armv5te -msoft-float -mfloat-abi=soft" +XBPS_CROSS_CXXFLAGS="$XBPS_CROSS_CFLAGS" diff --git a/common/cross-profiles/armv6hf-musl.sh b/common/cross-profiles/armv6hf-musl.sh deleted file mode 100644 index ddb837dd67..0000000000 --- a/common/cross-profiles/armv6hf-musl.sh +++ /dev/null @@ -1,6 +0,0 @@ -# Cross build profile for ARM EABI5 Hard Float and Musl libc. - -XBPS_TARGET_ARCH="armv6l-musl" -XBPS_CROSS_TRIPLET="arm-linux-musleabihf" -XBPS_CROSS_CFLAGS="-march=armv6 -mfpu=vfp -mfloat-abi=hard" -XBPS_CROSS_CXXFLAGS="$XBPS_CROSS_CFLAGS" diff --git a/common/cross-profiles/armv6hf-musl.sh b/common/cross-profiles/armv6hf-musl.sh new file mode 120000 index 0000000000..001b61a408 --- /dev/null +++ b/common/cross-profiles/armv6hf-musl.sh @@ -0,0 +1 @@ +armv6l-musl.sh \ No newline at end of file diff --git a/common/cross-profiles/armv6hf.sh b/common/cross-profiles/armv6hf.sh deleted file mode 100644 index b228c1d4d0..0000000000 --- a/common/cross-profiles/armv6hf.sh +++ /dev/null @@ -1,6 +0,0 @@ -# Cross build profile for ARM GNU EABI5 Hard Float. - -XBPS_TARGET_ARCH="armv6l" -XBPS_CROSS_TRIPLET="arm-linux-gnueabihf" -XBPS_CROSS_CFLAGS="-march=armv6 -mfpu=vfp -mfloat-abi=hard" -XBPS_CROSS_CXXFLAGS="$XBPS_CROSS_CFLAGS" diff --git a/common/cross-profiles/armv6hf.sh b/common/cross-profiles/armv6hf.sh new file mode 120000 index 0000000000..26afeb13f8 --- /dev/null +++ b/common/cross-profiles/armv6hf.sh @@ -0,0 +1 @@ +armv6l.sh \ No newline at end of file diff --git a/common/cross-profiles/armv6l-musl.sh b/common/cross-profiles/armv6l-musl.sh new file mode 100644 index 0000000000..ecb78479fb --- /dev/null +++ b/common/cross-profiles/armv6l-musl.sh @@ -0,0 +1,6 @@ +# Cross build profile for ARM EABI5 Hard Float and Musl libc. + +XBPS_TARGET_MACHINE="armv6l-musl" +XBPS_CROSS_TRIPLET="arm-linux-musleabihf" +XBPS_CROSS_CFLAGS="-march=armv6 -mfpu=vfp -mfloat-abi=hard" +XBPS_CROSS_CXXFLAGS="$XBPS_CROSS_CFLAGS" diff --git a/common/cross-profiles/armv6l.sh b/common/cross-profiles/armv6l.sh new file mode 100644 index 0000000000..9576d030d3 --- /dev/null +++ b/common/cross-profiles/armv6l.sh @@ -0,0 +1,6 @@ +# Cross build profile for ARM GNU EABI5 Hard Float. + +XBPS_TARGET_MACHINE="armv6l" +XBPS_CROSS_TRIPLET="arm-linux-gnueabihf" +XBPS_CROSS_CFLAGS="-march=armv6 -mfpu=vfp -mfloat-abi=hard" +XBPS_CROSS_CXXFLAGS="$XBPS_CROSS_CFLAGS" diff --git a/common/cross-profiles/armv7hf-musl.sh b/common/cross-profiles/armv7hf-musl.sh deleted file mode 100644 index 3e75c90ea3..0000000000 --- a/common/cross-profiles/armv7hf-musl.sh +++ /dev/null @@ -1,6 +0,0 @@ -# Cross build profile for ARMv7 EABI Hard Float and Musl libc. - -XBPS_TARGET_ARCH="armv7l-musl" -XBPS_CROSS_TRIPLET="armv7l-linux-musleabihf" -XBPS_CROSS_CFLAGS="-march=armv7-a -mfpu=vfpv3 -mfloat-abi=hard" -XBPS_CROSS_CXXFLAGS="$XBPS_CROSS_CFLAGS" diff --git a/common/cross-profiles/armv7hf-musl.sh b/common/cross-profiles/armv7hf-musl.sh new file mode 120000 index 0000000000..7f37aa01f1 --- /dev/null +++ b/common/cross-profiles/armv7hf-musl.sh @@ -0,0 +1 @@ +armv7l-musl.sh \ No newline at end of file diff --git a/common/cross-profiles/armv7hf.sh b/common/cross-profiles/armv7hf.sh deleted file mode 100644 index f2999a4668..0000000000 --- a/common/cross-profiles/armv7hf.sh +++ /dev/null @@ -1,6 +0,0 @@ -# Cross build profile for ARMv7 GNU EABI Hard Float. - -XBPS_TARGET_ARCH="armv7l" -XBPS_CROSS_TRIPLET="armv7l-linux-gnueabihf" -XBPS_CROSS_CFLAGS="-march=armv7-a -mfpu=vfpv3 -mfloat-abi=hard" -XBPS_CROSS_CXXFLAGS="$XBPS_CROSS_CFLAGS" diff --git a/common/cross-profiles/armv7hf.sh b/common/cross-profiles/armv7hf.sh new file mode 120000 index 0000000000..a00f4c3b29 --- /dev/null +++ b/common/cross-profiles/armv7hf.sh @@ -0,0 +1 @@ +armv7l.sh \ No newline at end of file diff --git a/common/cross-profiles/armv7l-musl.sh b/common/cross-profiles/armv7l-musl.sh new file mode 100644 index 0000000000..bff5aba119 --- /dev/null +++ b/common/cross-profiles/armv7l-musl.sh @@ -0,0 +1,6 @@ +# Cross build profile for ARMv7 EABI Hard Float and Musl libc. + +XBPS_TARGET_MACHINE="armv7l-musl" +XBPS_CROSS_TRIPLET="armv7l-linux-musleabihf" +XBPS_CROSS_CFLAGS="-march=armv7-a -mfpu=vfpv3 -mfloat-abi=hard" +XBPS_CROSS_CXXFLAGS="$XBPS_CROSS_CFLAGS" diff --git a/common/cross-profiles/armv7l.sh b/common/cross-profiles/armv7l.sh new file mode 100644 index 0000000000..d9d439dec3 --- /dev/null +++ b/common/cross-profiles/armv7l.sh @@ -0,0 +1,6 @@ +# Cross build profile for ARMv7 GNU EABI Hard Float. + +XBPS_TARGET_MACHINE="armv7l" +XBPS_CROSS_TRIPLET="armv7l-linux-gnueabihf" +XBPS_CROSS_CFLAGS="-march=armv7-a -mfpu=vfpv3 -mfloat-abi=hard" +XBPS_CROSS_CXXFLAGS="$XBPS_CROSS_CFLAGS" diff --git a/common/cross-profiles/i686-musl.sh b/common/cross-profiles/i686-musl.sh index 65670d9d17..80a5e560d4 100644 --- a/common/cross-profiles/i686-musl.sh +++ b/common/cross-profiles/i686-musl.sh @@ -1,6 +1,6 @@ # Cross build profile for i686 and Musl libc. -XBPS_TARGET_ARCH="i686-musl" +XBPS_TARGET_MACHINE="i686-musl" XBPS_CROSS_TRIPLET="i686-linux-musl" XBPS_CROSS_CFLAGS="-march=i686" XBPS_CROSS_CXXFLAGS="$XBPS_CROSS_CFLAGS" diff --git a/common/cross-profiles/i686.sh b/common/cross-profiles/i686.sh index 828cbbed4c..c69e94448f 100644 --- a/common/cross-profiles/i686.sh +++ b/common/cross-profiles/i686.sh @@ -1,6 +1,6 @@ # Cross build profile for i686 GNU. -XBPS_TARGET_ARCH="i686" +XBPS_TARGET_MACHINE="i686" XBPS_CROSS_TRIPLET="i686-pc-linux-gnu" XBPS_CROSS_CFLAGS="-march=i686" XBPS_CROSS_CXXFLAGS="$XBPS_CROSS_CFLAGS" diff --git a/common/cross-profiles/mips-musl.sh b/common/cross-profiles/mips-musl.sh index 6f5902b80d..c20a6ac592 100644 --- a/common/cross-profiles/mips-musl.sh +++ b/common/cross-profiles/mips-musl.sh @@ -1,6 +1,6 @@ # Cross build profile for MIPS32 BE soft float. -XBPS_TARGET_ARCH="mips-musl" +XBPS_TARGET_MACHINE="mips-musl" XBPS_CROSS_TRIPLET="mips-linux-musl" XBPS_CROSS_CFLAGS="-mtune=mips32r2 -mabi=32 -msoft-float" XBPS_CROSS_CXXFLAGS="$XBPS_CROSS_CFLAGS" diff --git a/common/cross-profiles/mipsel-musl.sh b/common/cross-profiles/mipsel-musl.sh index bc10cb1031..359b4fe7b0 100644 --- a/common/cross-profiles/mipsel-musl.sh +++ b/common/cross-profiles/mipsel-musl.sh @@ -1,6 +1,6 @@ # Cross build profile for MIPS32 LE soft float. -XBPS_TARGET_ARCH="mipsel-musl" +XBPS_TARGET_MACHINE="mipsel-musl" XBPS_CROSS_TRIPLET="mipsel-linux-musl" XBPS_CROSS_CFLAGS="-mtune=mips32r2 -mabi=32 -msoft-float" XBPS_CROSS_CXXFLAGS="$XBPS_CROSS_CFLAGS" diff --git a/common/cross-profiles/mipselhf-musl.sh b/common/cross-profiles/mipselhf-musl.sh index cc29b860ab..c75451bc30 100644 --- a/common/cross-profiles/mipselhf-musl.sh +++ b/common/cross-profiles/mipselhf-musl.sh @@ -1,6 +1,6 @@ # Cross build profile for MIPS32 LE hardfloat. -XBPS_TARGET_ARCH="mipselhf-musl" +XBPS_TARGET_MACHINE="mipselhf-musl" XBPS_CROSS_TRIPLET="mipsel-linux-muslhf" XBPS_CROSS_CFLAGS="-mtune=mips32r2 -mabi=32 -mhard-float" XBPS_CROSS_CXXFLAGS="$XBPS_CROSS_CFLAGS" diff --git a/common/cross-profiles/x86_64-musl.sh b/common/cross-profiles/x86_64-musl.sh index 981734179e..3ef9244250 100644 --- a/common/cross-profiles/x86_64-musl.sh +++ b/common/cross-profiles/x86_64-musl.sh @@ -1,6 +1,6 @@ # Cross build profile for x86_64 and Musl libc. -XBPS_TARGET_ARCH="x86_64-musl" +XBPS_TARGET_MACHINE="x86_64-musl" XBPS_CROSS_TRIPLET="x86_64-linux-musl" XBPS_CROSS_CFLAGS="-mtune=generic" XBPS_CROSS_CXXFLAGS="$XBPS_CROSS_CFLAGS" diff --git a/common/xbps-src/shutils/bulk.sh b/common/xbps-src/shutils/bulk.sh index 88738a4d89..252de7e944 100644 --- a/common/xbps-src/shutils/bulk.sh +++ b/common/xbps-src/shutils/bulk.sh @@ -57,7 +57,7 @@ bulk_build() { if [ "$XBPS_CROSS_BUILD" ]; then source ${XBPS_COMMONDIR}/cross-profiles/${XBPS_CROSS_BUILD}.sh - export XBPS_ARCH=${XBPS_TARGET_ARCH} + export XBPS_ARCH=${XBPS_TARGET_MACHINE} fi if ! command -v xbps-checkvers &>/dev/null; then msg_error "xbps-src: cannot find xbps-checkvers(8) command!\n" diff --git a/common/xbps-src/shutils/chroot.sh b/common/xbps-src/shutils/chroot.sh index 729d9736ea..307eb183f6 100644 --- a/common/xbps-src/shutils/chroot.sh +++ b/common/xbps-src/shutils/chroot.sh @@ -149,7 +149,7 @@ chroot_sync_repos() { $XBPS_MASTERDIR/$XBPS_CROSS_BASE/var/db/xbps/keys # Make sure to sync index for remote repositories. if [ -z "$XBPS_SKIP_REMOTEREPOS" ]; then - env XBPS_TARGET_ARCH=$XBPS_TARGET_ARCH \ + env XBPS_TARGET_ARCH=$XBPS_TARGET_MACHINE \ xbps-install -r $XBPS_MASTERDIR/$XBPS_CROSS_BASE -S fi fi diff --git a/common/xbps-src/shutils/common.sh b/common/xbps-src/shutils/common.sh index 733e723f91..ca98f457ac 100644 --- a/common/xbps-src/shutils/common.sh +++ b/common/xbps-src/shutils/common.sh @@ -228,7 +228,7 @@ setup_pkg() { if [ -n "$cross" ]; then source_file $XBPS_CROSSPFDIR/${cross}.sh - _vars="TARGET_ARCH CROSS_TRIPLET CROSS_CFLAGS CROSS_CXXFLAGS" + _vars="TARGET_MACHINE CROSS_TRIPLET CROSS_CFLAGS CROSS_CXXFLAGS" for f in ${_vars}; do eval val="\$XBPS_$f" if [ -z "$val" ]; then @@ -237,15 +237,14 @@ setup_pkg() { fi done - export XBPS_TARGET_MACHINE=$XBPS_TARGET_ARCH export XBPS_CROSS_BASE=/usr/$XBPS_CROSS_TRIPLET - XBPS_INSTALL_XCMD="env XBPS_TARGET_ARCH=$XBPS_TARGET_ARCH $XBPS_INSTALL_CMD -c /host/repocache -r $XBPS_CROSS_BASE" - XBPS_QUERY_XCMD="env XBPS_TARGET_ARCH=$XBPS_TARGET_ARCH $XBPS_QUERY_CMD -c /host/repocache -r $XBPS_CROSS_BASE" - XBPS_RECONFIGURE_XCMD="env XBPS_TARGET_ARCH=$XBPS_TARGET_ARCH $XBPS_RECONFIGURE_CMD -r $XBPS_CROSS_BASE" - XBPS_REMOVE_XCMD="env XBPS_TARGET_ARCH=$XBPS_TARGET_ARCH $XBPS_REMOVE_CMD -r $XBPS_CROSS_BASE" - XBPS_RINDEX_XCMD="env XBPS_TARGET_ARCH=$XBPS_TARGET_ARCH $XBPS_RINDEX_CMD" - XBPS_UHELPER_XCMD="env XBPS_TARGET_ARCH=$XBPS_TARGET_ARCH xbps-uhelper -r $XBPS_CROSS_BASE" + XBPS_INSTALL_XCMD="env XBPS_TARGET_ARCH=$XBPS_TARGET_MACHINE $XBPS_INSTALL_CMD -c /host/repocache -r $XBPS_CROSS_BASE" + XBPS_QUERY_XCMD="env XBPS_TARGET_ARCH=$XBPS_TARGET_MACHINE $XBPS_QUERY_CMD -c /host/repocache -r $XBPS_CROSS_BASE" + XBPS_RECONFIGURE_XCMD="env XBPS_TARGET_ARCH=$XBPS_TARGET_MACHINE $XBPS_RECONFIGURE_CMD -r $XBPS_CROSS_BASE" + XBPS_REMOVE_XCMD="env XBPS_TARGET_ARCH=$XBPS_TARGET_MACHINE $XBPS_REMOVE_CMD -r $XBPS_CROSS_BASE" + XBPS_RINDEX_XCMD="env XBPS_TARGET_ARCH=$XBPS_TARGET_MACHINE $XBPS_RINDEX_CMD" + XBPS_UHELPER_XCMD="env XBPS_TARGET_ARCH=$XBPS_TARGET_MACHINE xbps-uhelper -r $XBPS_CROSS_BASE" else export XBPS_TARGET_MACHINE=${XBPS_ARCH:-$XBPS_MACHINE} diff --git a/common/xbps-src/shutils/cross.sh b/common/xbps-src/shutils/cross.sh index 209e0bbe40..393dfb5301 100644 --- a/common/xbps-src/shutils/cross.sh +++ b/common/xbps-src/shutils/cross.sh @@ -10,7 +10,7 @@ remove_pkg_cross_deps() { if [ -z "$XBPS_REMOVE_XCMD" ]; then source_file $XBPS_CROSSPFDIR/${XBPS_CROSS_BUILD}.sh - XBPS_REMOVE_XCMD="env XBPS_TARGET_ARCH=$XBPS_TARGET_ARCH xbps-remove -r /usr/$XBPS_CROSS_TRIPLET" + XBPS_REMOVE_XCMD="env XBPS_TARGET_ARCH=$XBPS_TARGET_MACHINE xbps-remove -r /usr/$XBPS_CROSS_TRIPLET" fi $XBPS_REMOVE_XCMD -Ryo > $tmplogf 2>&1 @@ -48,7 +48,7 @@ prepare_cross_sysroot() { fi rm -f $errlog # Create top level symlinks in sysroot. - XBPS_ARCH=$XBPS_TARGET_ARCH xbps-reconfigure -r $XBPS_CROSS_BASE -f base-directories base-files &>/dev/null + XBPS_ARCH=$XBPS_TARGET_MACHINE xbps-reconfigure -r $XBPS_CROSS_BASE -f base-directories base-files &>/dev/null # Create a sysroot/include and sysroot/lib symlink just in case. ln -s usr/include ${XBPS_CROSS_BASE}/include ln -s usr/lib ${XBPS_CROSS_BASE}/lib