alnyan/yggdrasil: target-level support for x86_64-unknown-yggdrasil
This commit is contained in:
Vendored
+1
-1
@@ -1749,7 +1749,7 @@ case $os in
|
||||
| onefs* | tirtos* | phoenix* | fuchsia* | redox* | bme* \
|
||||
| midnightbsd* | amdhsa* | unleashed* | emscripten* | wasi* \
|
||||
| nsk* | powerunix* | genode* | zvmoe* | qnx* | emx* | zephyr* \
|
||||
| fiwix* )
|
||||
| fiwix* | yggdrasil* )
|
||||
;;
|
||||
# This one is extra strict with allowed versions
|
||||
sco3.2v2 | sco3.2v[4-9]* | sco5v6*)
|
||||
|
||||
@@ -11,6 +11,8 @@ target=fixinc.sh
|
||||
|
||||
# Check for special fix rules for particular targets
|
||||
case $machine in
|
||||
*-yggdrasil* | \
|
||||
*-*-yggdrasil* | \
|
||||
i?86-*-cygwin* | \
|
||||
i?86-*-mingw32* | \
|
||||
x86_64-*-mingw32* | \
|
||||
|
||||
+10
-1
@@ -181,7 +181,7 @@
|
||||
# the --with-sysroot configure option or the
|
||||
# --sysroot command line option is used this
|
||||
# will be relative to the sysroot.
|
||||
# target_type_format_char
|
||||
# target_type_format_char
|
||||
# The default character to be used for formatting
|
||||
# the attribute in a
|
||||
# .type symbol_name, ${t_t_f_c}<property>
|
||||
@@ -690,6 +690,12 @@ x86_cpus="generic intel"
|
||||
|
||||
# Common parts for widely ported systems.
|
||||
case ${target} in
|
||||
*-*-yggdrasil*)
|
||||
gas=yes
|
||||
gnu_ld=yes
|
||||
default_use_cxa_atexit=yes
|
||||
use_gcc_stdint=provide
|
||||
;;
|
||||
*-*-darwin*)
|
||||
tmake_file="t-darwin "
|
||||
tm_file="${tm_file} darwin.h"
|
||||
@@ -1126,6 +1132,9 @@ case ${target} in
|
||||
esac
|
||||
|
||||
case ${target} in
|
||||
x86_64-*-yggdrasil*)
|
||||
tm_file="${tm_file} i386/unix.h i386/att.h elfos.h glibc-stdint.h i386/i386elf.h i386/x86-64.h yggdrasil.h"
|
||||
;;
|
||||
aarch64*-*-elf | aarch64*-*-fuchsia* | aarch64*-*-rtems*)
|
||||
tm_file="${tm_file} elfos.h newlib-stdint.h"
|
||||
tm_file="${tm_file} aarch64/aarch64-elf.h aarch64/aarch64-errata.h aarch64/aarch64-elf-raw.h"
|
||||
|
||||
@@ -0,0 +1,26 @@
|
||||
#undef TARGET_YGGDRASIL
|
||||
#define TARGET_YGGDRASIL 1
|
||||
|
||||
#undef LIB_SPEC
|
||||
#define LIB_SPEC "-static -lygglibc"
|
||||
|
||||
/* Tell ld to force 4KB pages*/
|
||||
#undef LINK_SPEC
|
||||
#define LINK_SPEC "-z max-page-size=4096"
|
||||
|
||||
#undef STARTFILE_SPEC
|
||||
#define STARTFILE_SPEC "crti.o%s crtbegin.o%s"
|
||||
|
||||
#undef ENDFILE_SPEC
|
||||
#define ENDFILE_SPEC "crtend.o%s"
|
||||
|
||||
/* Additional predefined macros. */
|
||||
#undef TARGET_OS_CPP_BUILTINS
|
||||
#define TARGET_OS_CPP_BUILTINS() \
|
||||
do { \
|
||||
builtin_define ("__yggdrasil__"); \
|
||||
builtin_define ("__unix__"); \
|
||||
builtin_assert ("system=yggdrasil"); \
|
||||
builtin_assert ("system=unix"); \
|
||||
builtin_assert ("system=posix"); \
|
||||
} while(0);
|
||||
+5
-1
@@ -103,7 +103,7 @@ arm*-*-*)
|
||||
;;
|
||||
avr-*-*)
|
||||
cpu_type=avr
|
||||
;;
|
||||
;;
|
||||
bfin*-*)
|
||||
cpu_type=bfin
|
||||
;;
|
||||
@@ -386,6 +386,10 @@ i[34567]86-*-cygwin* | x86_64-*-cygwin*)
|
||||
esac
|
||||
|
||||
case ${host} in
|
||||
x86_64-*-yggdrasil*)
|
||||
extra_parts="$extra_parts crti.o crtbegin.o crtend.o crtn.o"
|
||||
tmake_file="$tmake_file i386/t-crtstuff t-crtstuff-pic t-libgcc-pic"
|
||||
;;
|
||||
aarch64*-*-elf | aarch64*-*-rtems*)
|
||||
extra_parts="$extra_parts crtbegin.o crtend.o crti.o crtn.o"
|
||||
extra_parts="$extra_parts crtfastmath.o"
|
||||
|
||||
Vendored
+5973
File diff suppressed because it is too large
Load Diff
@@ -90,7 +90,7 @@ case "${host}" in
|
||||
|
||||
*-freebsd*)
|
||||
SECTION_FLAGS='-ffunction-sections -fdata-sections'
|
||||
AC_SUBST(SECTION_FLAGS)
|
||||
AC_SUBST(SECTION_FLAGS)
|
||||
GLIBCXX_CHECK_LINKER_FEATURES
|
||||
AC_DEFINE(HAVE_SETENV)
|
||||
AC_DEFINE(HAVE_FINITEF)
|
||||
@@ -198,9 +198,15 @@ case "${host}" in
|
||||
AC_CHECK_FUNCS(_wfopen)
|
||||
GCC_CHECK_TLS
|
||||
;;
|
||||
*-yggdrasil*)
|
||||
GLIBCXX_CHECK_COMPILER_FEATURES
|
||||
GLIBCXX_CHECK_LINKER_FEATURES
|
||||
GLIBCXX_CHECK_MATH_SUPPORT
|
||||
GLIBCXX_CHECK_STDLIB_SUPPORT
|
||||
;;
|
||||
*-netbsd* | *-openbsd*)
|
||||
SECTION_FLAGS='-ffunction-sections -fdata-sections'
|
||||
AC_SUBST(SECTION_FLAGS)
|
||||
AC_SUBST(SECTION_FLAGS)
|
||||
GLIBCXX_CHECK_LINKER_FEATURES
|
||||
AC_DEFINE(HAVE_FINITEF)
|
||||
AC_DEFINE(HAVE_FINITE)
|
||||
@@ -221,7 +227,7 @@ case "${host}" in
|
||||
;;
|
||||
*-qnx6.1* | *-qnx6.2*)
|
||||
SECTION_FLAGS='-ffunction-sections -fdata-sections'
|
||||
AC_SUBST(SECTION_FLAGS)
|
||||
AC_SUBST(SECTION_FLAGS)
|
||||
GLIBCXX_CHECK_LINKER_FEATURES
|
||||
AC_DEFINE(HAVE_COSF)
|
||||
AC_DEFINE(HAVE_COSL)
|
||||
|
||||
Reference in New Issue
Block a user