Add linux_aarch64 target to the cross-compile build scripts.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@6196 fc73d0e0-1445-4013-8a0c-d673dee63da5
This commit is contained in:
Spoike 2022-02-19 20:49:56 +00:00
parent 1f707225e3
commit 51ed3456e8
3 changed files with 24 additions and 0 deletions

View file

@ -42,6 +42,7 @@ PLUGINS_LINUXx86="openxr ode qi ezhud xmpp irc hl2"
PLUGINS_LINUXx64="openxr ode qi ezhud xmpp irc hl2" PLUGINS_LINUXx64="openxr ode qi ezhud xmpp irc hl2"
PLUGINS_LINUXx32="qi ezhud xmpp irc hl2" PLUGINS_LINUXx32="qi ezhud xmpp irc hl2"
PLUGINS_LINUXarmhf="qi ezhud xmpp irc hl2" PLUGINS_LINUXarmhf="qi ezhud xmpp irc hl2"
PLUGINS_LINUXaarch64="qi ezhud xmpp irc hl2"
if [ "$(uname -m)" != "x86_64" ]; then if [ "$(uname -m)" != "x86_64" ]; then
PLUGINS_LINUXx86="openxr ode qi ezhud xmpp irc hl2" PLUGINS_LINUXx86="openxr ode qi ezhud xmpp irc hl2"
fi fi
@ -194,6 +195,7 @@ BUILD_LINUXx86=${BUILD_LINUXx86:-y}
BUILD_LINUXx64=${BUILD_LINUXx64:-y} BUILD_LINUXx64=${BUILD_LINUXx64:-y}
BUILD_LINUXx32=${BUILD_LINUXx32:-n} BUILD_LINUXx32=${BUILD_LINUXx32:-n}
BUILD_LINUXarmhf=${BUILD_LINUXarmhf:-n} BUILD_LINUXarmhf=${BUILD_LINUXarmhf:-n}
BUILD_LINUXaarch64=${BUILD_LINUXaarch64:-n}
BUILD_CYGWIN=${BUILD_CYGWIN:-n} BUILD_CYGWIN=${BUILD_CYGWIN:-n}
BUILD_WIN32=${BUILD_WIN32:-y} BUILD_WIN32=${BUILD_WIN32:-y}
BUILD_WIN64=${BUILD_WIN64:-y} BUILD_WIN64=${BUILD_WIN64:-y}
@ -226,6 +228,7 @@ if [ "$UID" != "0" ]; then
echo "BUILD_LINUXx64=\"$BUILD_LINUXx64\"" >>$FTECONFIG echo "BUILD_LINUXx64=\"$BUILD_LINUXx64\"" >>$FTECONFIG
echo "BUILD_LINUXx32=\"$BUILD_LINUXx32\"" >>$FTECONFIG echo "BUILD_LINUXx32=\"$BUILD_LINUXx32\"" >>$FTECONFIG
echo "BUILD_LINUXarmhf=\"$BUILD_LINUXarmhf\"" >>$FTECONFIG echo "BUILD_LINUXarmhf=\"$BUILD_LINUXarmhf\"" >>$FTECONFIG
echo "BUILD_LINUXaarch64=\"$BUILD_LINUXaarch64\"" >>$FTECONFIG
echo "BUILD_CYGWIN=\"$BUILD_CYGWIN\"" >>$FTECONFIG echo "BUILD_CYGWIN=\"$BUILD_CYGWIN\"" >>$FTECONFIG
echo "BUILD_WIN32=\"$BUILD_WIN32\"" >>$FTECONFIG echo "BUILD_WIN32=\"$BUILD_WIN32\"" >>$FTECONFIG
echo "BUILD_WIN64=\"$BUILD_WIN64\"" >>$FTECONFIG echo "BUILD_WIN64=\"$BUILD_WIN64\"" >>$FTECONFIG
@ -245,6 +248,7 @@ if [ "$UID" != "0" ]; then
echo "PLUGINS_LINUXx64=\"$PLUGINS_LINUXx64\"" >>$FTECONFIG echo "PLUGINS_LINUXx64=\"$PLUGINS_LINUXx64\"" >>$FTECONFIG
echo "PLUGINS_LINUXx32=\"$PLUGINS_LINUXx32\"" >>$FTECONFIG echo "PLUGINS_LINUXx32=\"$PLUGINS_LINUXx32\"" >>$FTECONFIG
echo "PLUGINS_LINUXarmhf=\"$PLUGINS_LINUXarmhf\"" >>$FTECONFIG echo "PLUGINS_LINUXarmhf=\"$PLUGINS_LINUXarmhf\"" >>$FTECONFIG
echo "PLUGINS_LINUXaarch64=\"$PLUGINS_LINUXaarch64\"" >>$FTECONFIG
echo "PLUGINS_DROID=\"$PLUGINS_DROID\"" >>$FTECONFIG echo "PLUGINS_DROID=\"$PLUGINS_DROID\"" >>$FTECONFIG
fi fi
@ -479,6 +483,10 @@ if [ $UID -ne 0 ] && [ $REBUILD_TOOLCHAINS == "y" ]; then
echo "Making libraries (linux armhf)..." echo "Making libraries (linux armhf)..."
make FTE_TARGET=linuxarmhf makelibs CPUOPTIMISATIONS=-fno-finite-math-only 2>&1 >>/dev/null make FTE_TARGET=linuxarmhf makelibs CPUOPTIMISATIONS=-fno-finite-math-only 2>&1 >>/dev/null
fi fi
if [ "$BUILD_LINUXaarch64" == "y" ]; then
echo "Making libraries (linux aarch64)..."
make FTE_TARGET=linuxaarch64 makelibs CPUOPTIMISATIONS=-fno-finite-math-only 2>&1 >>/dev/null
fi
if [ "$BUILD_WIN32" == "y" ]; then if [ "$BUILD_WIN32" == "y" ]; then
echo "Making libraries (win32)..." echo "Making libraries (win32)..."
make FTE_TARGET=win32 makelibs CPUOPTIMISATIONS=-fno-finite-math-only 2>&1 >>/dev/null make FTE_TARGET=win32 makelibs CPUOPTIMISATIONS=-fno-finite-math-only 2>&1 >>/dev/null

View file

@ -81,6 +81,7 @@ do
BUILD_LINUXx86="n" BUILD_LINUXx86="n"
BUILD_LINUXx64="n" BUILD_LINUXx64="n"
BUILD_LINUXarmhf="n" BUILD_LINUXarmhf="n"
BUILD_LINUXaarch64="n"
BUILD_WIN32="n" BUILD_WIN32="n"
BUILD_WIN64="n" BUILD_WIN64="n"
BUILD_ANDROID="n" BUILD_ANDROID="n"
@ -90,6 +91,7 @@ do
BUILD_LINUXx86="n" BUILD_LINUXx86="n"
BUILD_LINUXx64="n" BUILD_LINUXx64="n"
BUILD_LINUXarmhf="n" BUILD_LINUXarmhf="n"
BUILD_LINUXaarch64="n"
BUILD_WIN32="n" BUILD_WIN32="n"
BUILD_WIN64="n" BUILD_WIN64="n"
BUILD_ANDROID="y" BUILD_ANDROID="y"
@ -215,6 +217,9 @@ 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. #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=linux_armhf 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 fi
if [ "$BUILD_LINUXaarch64" != "n" ]; then
NATIVE_PLUGINS="$PLUGINS_LINUXaarch64" build "Linux aarch64" linux_aarch64 FTE_TARGET=linux_aarch64 CPUOPTIMIZATIONS=-fno-finite-math-only $TARGETS_LINUX
fi
if [ "$BUILD_CYGWIN" != "n" ]; then if [ "$BUILD_CYGWIN" != "n" ]; then
NATIVE_PLUGINS="qi ezhud" build "Cygwin" cygwin qcc-rel rel dbg plugins-rel plugins-dbg NATIVE_PLUGINS="qi ezhud" build "Cygwin" cygwin qcc-rel rel dbg plugins-rel plugins-dbg
fi fi
@ -336,6 +341,9 @@ fi
if [ "$BUILD_LINUXarmhf" != "n" ]; then if [ "$BUILD_LINUXarmhf" != "n" ]; then
cp $BUILDFOLDER/linux_armhf/fteqccarmhf $QCCBUILDFOLDER/linuxarmhf-fteqcc cp $BUILDFOLDER/linux_armhf/fteqccarmhf $QCCBUILDFOLDER/linuxarmhf-fteqcc
fi fi
if [ "$BUILD_LINUXaarch64" != "n" ]; then
cp $BUILDFOLDER/linux_armhf/fteqccaarch64 $QCCBUILDFOLDER/linuxaarch64-fteqcc
fi
if [ "$BUILD_WIN32" != "n" ]; then if [ "$BUILD_WIN32" != "n" ]; then
cp $BUILDFOLDER/win32/fteqcc.exe $QCCBUILDFOLDER/win32-fteqcc.exe cp $BUILDFOLDER/win32/fteqcc.exe $QCCBUILDFOLDER/win32-fteqcc.exe
cp $BUILDFOLDER/win32/fteqccgui.exe $QCCBUILDFOLDER/win32-fteqccgui.exe cp $BUILDFOLDER/win32/fteqccgui.exe $QCCBUILDFOLDER/win32-fteqccgui.exe

View file

@ -476,6 +476,14 @@ ifeq ($(FTE_TARGET),linux_arm64)
BITS=arm64 BITS=arm64
USE_SPEEX=0 #fails to compile due to neon asm, I'm just going to disable it (will still soft-link). USE_SPEEX=0 #fails to compile due to neon asm, I'm just going to disable it (will still soft-link).
endif endif
ifeq ($(FTE_TARGET),linux_aarch64)
FTE_TARGET=linux
CC=aarch64-linux-gnu-gcc
CXX=aarch64-linux-gnu-g++
STRIP=aarch64-linux-gnu-strip
BITS=aarch64
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),linux_x32) ifeq ($(FTE_TARGET),linux_x32)
#DO NOT CONFUSE WITH linux_x86. this target is amd64-with-32bit-pointers #DO NOT CONFUSE WITH linux_x86. this target is amd64-with-32bit-pointers
#note: the x32 abi is still not finished or something. #note: the x32 abi is still not finished or something.