From ff4b88dd452dd484f5f76e89f73603b53d10cf5b Mon Sep 17 00:00:00 2001 From: Spoike Date: Sun, 9 May 2021 13:01:04 +0000 Subject: [PATCH] Tweak FTE_TARGET arch postfixes in our makefile to make cross compile targets a little more readable. git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5838 fc73d0e0-1445-4013-8a0c-d673dee63da5 --- build_wip.sh | 6 +++--- engine/Makefile | 23 ++++++++++++++++------- 2 files changed, 19 insertions(+), 10 deletions(-) diff --git a/build_wip.sh b/build_wip.sh index 20aef245c..e919a7eb5 100755 --- a/build_wip.sh +++ b/build_wip.sh @@ -202,18 +202,18 @@ function build_fteqcc { echo "--- Engine builds ---" #the -fno-finite-math-only is to avoid a glibc dependancy if [ "$BUILD_LINUXx86" != "n" ]; then - NATIVE_PLUGINS="$PLUGINS_LINUXx86" build "Linux 32-bit" linux_x86 FTE_TARGET=linux32 CPUOPTIMIZATIONS=-fno-finite-math-only $TARGETS_LINUX + NATIVE_PLUGINS="$PLUGINS_LINUXx86" build "Linux 32-bit" linux_x86 FTE_TARGET=linux_x86 CPUOPTIMIZATIONS=-fno-finite-math-only $TARGETS_LINUX fi if [ "$BUILD_LINUXx64" != "n" ]; then NATIVE_PLUGINS="$PLUGINS_LINUXx64" build "Linux 64-bit" linux_amd64 FTE_TARGET=linux64 CPUOPTIMIZATIONS=-fno-finite-math-only $TARGETS_LINUX fi if [ "$BUILD_LINUXx32" != "n" ]; then # CFLAGS="-DNO_JPEG" - NATIVE_PLUGINS="$PLUGINS_LINUXx32" build "Linux x32" linux_x32 FTE_TARGET=linuxx32 CPUOPTIMIZATIONS=-fno-finite-math-only $TARGETS_LINUX + NATIVE_PLUGINS="$PLUGINS_LINUXx32" build "Linux x32" linux_x32 FTE_TARGET=linux_x32 CPUOPTIMIZATIONS=-fno-finite-math-only $TARGETS_LINUX fi if [ "$BUILD_LINUXarmhf" != "n" ]; then #debian/ubuntu's armhf targets armv7. we instead target armv6, because that means we work on rpi too (but still with hard-float). It should be compatible although we likely need more ops. - NATIVE_PLUGINS="$PLUGINS_LINUXarmhf" build "Linux ARMhf" linux_armhf FTE_TARGET=linuxarmhf CPUOPTIMIZATIONS=-fno-finite-math-only $TARGETS_LINUX + NATIVE_PLUGINS="$PLUGINS_LINUXarmhf" build "Linux ARMhf" linux_armhf FTE_TARGET=linux_armhf CPUOPTIMIZATIONS=-fno-finite-math-only $TARGETS_LINUX fi if [ "$BUILD_CYGWIN" != "n" ]; then NATIVE_PLUGINS="qi ezhud" build "Cygwin" cygwin qcc-rel rel dbg plugins-rel plugins-dbg diff --git a/engine/Makefile b/engine/Makefile index 5b2eb9fa0..4ee94f66f 100644 --- a/engine/Makefile +++ b/engine/Makefile @@ -55,9 +55,9 @@ BULLETVER=2.87 #linux->win64 (FTE_TARGET=win64) RPM Package: "mingw32-gcc", DEB Package: "mingw32" #linux->linux 32 (FTE_TARGET=linux32) #linux->linux 64 (FTE_TARGET=linux64) -#linux->linux x32 (FTE_TARGET=linuxx32) -#linux->linux armhf (FTE_TARGET=linuxarmhf) -#linux->linux arm64/aarch64 (FTE_TARGET=linuxarm64) +#linux->linux x32 (FTE_TARGET=linux_x32) +#linux->linux armhf (FTE_TARGET=linux_armhf) +#linux->linux arm64/aarch64 (FTE_TARGET=linux_arm64) #linux->linux *others* (FTE_TARGET=linux CC=other-gcc) #linux->morphos (FTE_TARGET=morphos) #linux->macosx (FTE_TARGET=macosx) or (FTE_TARGET=macosx_x86) @@ -418,7 +418,7 @@ ifeq ($(FTE_TARGET),linux32) STRIP=strip BITS=32 endif -ifeq ($(FTE_TARGET),linuxx86) +ifeq ($(FTE_TARGET),linux_x86) FTE_TARGET=linux CC=i686-linux-gnu-gcc PKGCONFIG=i686-linux-gnu-pkg-config @@ -426,7 +426,15 @@ ifeq ($(FTE_TARGET),linuxx86) STRIP=i686-linux-gnu-strip BITS=32 endif -ifeq ($(FTE_TARGET),linuxarmhf) +ifeq ($(FTE_TARGET),linux_amd64) + FTE_TARGET=linux + CC=x86_64-linux-gnu-gcc + PKGCONFIG=x86_64-linux-gnu-pkg-config + CXX=x86_64-linux-gnu-g++ + STRIP=x86_64-linux-gnu-strip + BITS=64 +endif +ifeq ($(FTE_TARGET),linux_armhf) #debian's armhf is armv7, but armv6 works on RPI too. FTE_TARGET=linux CC=arm-linux-gnueabihf-gcc -marm -march=armv6 -mfpu=vfp -mfloat-abi=hard @@ -434,7 +442,7 @@ ifeq ($(FTE_TARGET),linuxarmhf) STRIP=arm-linux-gnueabihf-strip BITS=armhf endif -ifeq ($(FTE_TARGET),linuxarm64) +ifeq ($(FTE_TARGET),linux_arm64) FTE_TARGET=linux CC=aarch64-linux-gnu-gcc CXX=aarch64-linux-gnu-g++ @@ -442,7 +450,8 @@ ifeq ($(FTE_TARGET),linuxarm64) BITS=arm64 USE_SPEEX=0 #fails to compile due to neon asm, I'm just going to disable it (will still soft-link). endif -ifeq ($(FTE_TARGET),linuxx32) +ifeq ($(FTE_TARGET),linux_x32) + #DO NOT CONFUSE WITH linux_x86. this target is amd64-with-32bit-pointers #note: the x32 abi is still not finished or something. #at the current time, you will need to edit your kernel's commandline to allow this stuff to run #try and use a proper cross-compiler if we can, otherwise fall back on multi-arch.