Redo gcc AARCH64 config

Previous setup failed to do link bootstrap libz with msissing
unwind symbols due to not finding libgcc_s.so.1

Change-Id: I80a85502843f82d2324cf816cb761ddfa78e289f
Reviewed-on: https://review.haiku-os.org/c/buildtools/+/3754
Reviewed-by: Fredrik Holmqvist <fredrik.holmqvist@gmail.com>
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
This commit is contained in:
Fredrik Holmqvist 2021-02-27 08:41:01 +01:00 committed by Adrien Destugues
parent f4963fa33e
commit 4ab0fe4d95

View File

@ -22,9 +22,16 @@
#ifndef GCC_AARCH64_HAIKU_H
#define GCC_AARCH64_HAIKU_H
#define HAIKU_DYNAMIC_LINKER "/system/runtime_loader"
#define CPP_SPEC "%{pthread:-D_REENTRANT}"
#define TARGET_OS_CPP_BUILTINS() \
do \
{ \
builtin_define ("__HAIKU__"); \
builtin_define ("__stdcall=__attribute__((__stdcall__))"); \
builtin_define ("__cdecl=__attribute__((__cdecl__))"); \
builtin_define ("__STDC_ISO_10646__=201103L"); \
builtin_assert ("system=haiku"); \
} \
while (0)
#if TARGET_BIG_ENDIAN_DEFAULT
#define TARGET_LINKER_EMULATION "aarch64haikub"
@ -32,23 +39,6 @@
#define TARGET_LINKER_EMULATION "aarch64haiku"
#endif
#undef SUBTARGET_EXTRA_LINK_SPEC
#define SUBTARGET_EXTRA_LINK_SPEC " -m" TARGET_LINKER_EMULATION
#undef HAIKU_TARGET_LINK_SPEC
#define HAIKU_TARGET_LINK_SPEC " \
%{p:%nconsider using `-pg' instead of `-p' with gprof (1) } \
%{v:-V} \
%{assert*} %{R*} %{rpath*} %{defsym*} \
%{shared:-Bshareable %{h*} %{soname*}} \
%{symbolic:-Bsymbolic} \
%{static:-Bstatic} \
%{!static: \
%{rdynamic:-export-dynamic} \
%{!shared:-dynamic-linker " HAIKU_DYNAMIC_LINKER " }} \
-X" SUBTARGET_EXTRA_LINK_SPEC " \
%{mbig-endian:-EB} %{mlittle-endian:-EL}"
#if TARGET_FIX_ERR_A53_835769_DEFAULT
#define CA53_ERR_835769_SPEC \
" %{!mno-fix-cortex-a53-835769:--fix-cortex-a53-835769}"
@ -65,20 +55,6 @@
" %{mfix-cortex-a53-843419:--fix-cortex-a53-843419}"
#endif
#define LINK_SPEC HAIKU_TARGET_LINK_SPEC \
CA53_ERR_835769_SPEC \
CA53_ERR_843419_SPEC
#define TARGET_OS_CPP_BUILTINS() \
do \
{ \
builtin_define ("__HAIKU__"); \
builtin_define ("__stdcall=__attribute__((__stdcall__))"); \
builtin_define ("__cdecl=__attribute__((__cdecl__))"); \
builtin_define ("__STDC_ISO_10646__=201103L"); \
builtin_assert ("system=haiku"); \
} \
while (0)
#define TARGET_ASM_FILE_END file_end_indicate_exec_stack
@ -91,4 +67,9 @@
/* Define this to be nonzero if static stack checking is supported. */
#define STACK_CHECK_STATIC_BUILTIN 1
#undef LINK_SPEC
#define LINK_SPEC "%{!o*:-o %b} -m " TARGET_LINKER_EMULATION " %{!r:-shared} %{nostart:-e 0} %{shared:-e 0} %{!shared: %{!nostart: -no-undefined}}\
%{mbig-endian:-EB} %{mlittle-endian:-EL} " CA53_ERR_835769_SPEC " " CA53_ERR_843419_SPEC " -X"
#endif /* GCC_AARCH64_HAIKU_H */