Files
XunilOS/user/apps/helloworld/compile.sh
T
csd4ni3l 56c5da0742 Improve aarch64 support by building everything for both archictectures,
remove incorrect timer frequency set, fix interrupt handler not
restoring stack ptr, handle both user and kernel aborts, remove aarch64
ps2 support, fix ELF code mapped as code making it unwritable, add
assets.rs to handle both arches automatically, make PS2 x86_64
compatible with linux keycodes, always try printing kernel panic to
serial
2026-05-22 22:18:42 +02:00

16 lines
742 B
Bash

GCC_INCLUDES=$(gcc -print-file-name=include)
SYS_INCLUDES=/usr/include
if [ "$KARCH" = "aarch64" ]; then
CC="aarch64-linux-gnu-gcc"
ARCH_FLAGS="-march=armv8-a+nosimd -mabi=lp64"
elif [ "$KARCH" = "x86_64" ]; then
CC="x86_64-linux-gnu-gcc"
ARCH_FLAGS="-m64 -mno-mmx -mno-avx"
else
echo "Error: Unsupported KARCH: $KARCH"
exit 1
fi
$CC -w -static -D__NO_INLINE__ -O3 $ARCH_FLAGS -fno-stack-protector -fno-inline -fno-inline-small-functions -fno-indirect-inlining -fno-builtin -fcompare-debug-second -nostdlib -nostdinc helloworld.c -Wl,--gc-sections -L../../libxunil/target/$KARCH-unknown-none/release -l:libxunil.a -I../../libxunil/include -I"$GCC_INCLUDES" -I"$SYS_INCLUDES" -o ../../../assets/$KARCH/helloworld.elf