mirror of
https://github.com/EnderIce2/Fennix.git
synced 2025-07-02 10:59:15 +00:00
chore: Fix build process
This commit is contained in:
127
tools/binutils-gdb.patch
Normal file
127
tools/binutils-gdb.patch
Normal file
@ -0,0 +1,127 @@
|
||||
diff --git a/bfd/config.bfd b/bfd/config.bfd
|
||||
index 6553aac1e99..40429e9bf43 100644
|
||||
--- a/bfd/config.bfd
|
||||
+++ b/bfd/config.bfd
|
||||
@@ -1502,6 +1502,20 @@ case "${targ}" in
|
||||
;;
|
||||
#endif
|
||||
|
||||
+ i[3-7]86-*-fennix*)
|
||||
+ targ_defvec=i386_elf32_vec
|
||||
+ targ_selvecs=
|
||||
+ targ64_selvecs=x86_64_elf64_vec
|
||||
+ ;;
|
||||
+
|
||||
+#ifdef BFD64
|
||||
+ x86_64-*-fennix*)
|
||||
+ targ_defvec=x86_64_elf64_vec
|
||||
+ targ_selvecs=i386_elf32_vec
|
||||
+ want64=true
|
||||
+ ;;
|
||||
+#endif
|
||||
+
|
||||
# END OF targmatch.h
|
||||
bpf-*-*)
|
||||
echo "*** Configuration $targ is not fully supported." >&2
|
||||
diff --git a/config.sub b/config.sub
|
||||
index 2c6a07ab3c3..d279b50dc8b 100755
|
||||
--- a/config.sub
|
||||
+++ b/config.sub
|
||||
@@ -1768,7 +1768,7 @@ case $os in
|
||||
| onefs* | tirtos* | phoenix* | fuchsia* | redox* | bme* \
|
||||
| midnightbsd* | amdhsa* | unleashed* | emscripten* | wasi* \
|
||||
| nsk* | powerunix* | genode* | zvmoe* | qnx* | emx* | zephyr* \
|
||||
- | fiwix* | mlibc* | cos* | mbr* | ironclad* )
|
||||
+ | fiwix* | mlibc* | cos* | mbr* | ironclad* | fennix* )
|
||||
;;
|
||||
# This one is extra strict with allowed versions
|
||||
sco3.2v2 | sco3.2v[4-9]* | sco5v6*)
|
||||
diff --git a/gas/configure.tgt b/gas/configure.tgt
|
||||
index d58f21873a3..fa4215b9cff 100644
|
||||
--- a/gas/configure.tgt
|
||||
+++ b/gas/configure.tgt
|
||||
@@ -267,6 +267,7 @@ case ${generic_target} in
|
||||
i386-*-*nt*) fmt=coff em=pe ;;
|
||||
i386-*-rdos*) fmt=elf ;;
|
||||
i386-*-darwin*) fmt=macho ;;
|
||||
+ i386-*-fennix*) fmt=elf em=gnu ;;
|
||||
|
||||
ia16-*-elf*) fmt=elf ;;
|
||||
|
||||
diff --git a/ld/Makefile.am b/ld/Makefile.am
|
||||
index 6a9833e5775..fb4f866ef55 100644
|
||||
--- a/ld/Makefile.am
|
||||
+++ b/ld/Makefile.am
|
||||
@@ -279,6 +279,7 @@ ALL_EMULATION_SOURCES = \
|
||||
eelf_i386.c \
|
||||
eelf_i386_be.c \
|
||||
eelf_i386_fbsd.c \
|
||||
+ eelf_i386_fennix.c \
|
||||
eelf_i386_haiku.c \
|
||||
eelf_i386_ldso.c \
|
||||
eelf_i386_sol2.c \
|
||||
@@ -463,6 +464,7 @@ ALL_64_EMULATION_SOURCES = \
|
||||
eelf_x86_64.c \
|
||||
eelf_x86_64_cloudabi.c \
|
||||
eelf_x86_64_fbsd.c \
|
||||
+ eelf_x86_64_fennix.c \
|
||||
eelf_x86_64_haiku.c \
|
||||
eelf_x86_64_sol2.c \
|
||||
ehppa64linux.c \
|
||||
diff --git a/ld/configure.tgt b/ld/configure.tgt
|
||||
index f937f78b876..ea5491a1447 100644
|
||||
--- a/ld/configure.tgt
|
||||
+++ b/ld/configure.tgt
|
||||
@@ -409,6 +409,11 @@ i[3-7]86-*-elf* | i[3-7]86-*-rtems* | i[3-7]86-*-genode*)
|
||||
i[3-7]86-*-dragonfly*) targ_emul=elf_i386
|
||||
targ_extra_emuls="elf_iamcu i386bsd"
|
||||
;;
|
||||
+i[3-7]86-*-fennix*)
|
||||
+ targ_emul=elf_i386_fennix
|
||||
+ targ_extra_emuls=elf_i386
|
||||
+ targ64_extra_emuls="elf_x86_64_fennix elf_x86_64"
|
||||
+ ;;
|
||||
i[3-7]86-*-freebsd* | i[3-7]86-*-kfreebsd*-gnu)
|
||||
targ_emul=elf_i386_fbsd
|
||||
targ_extra_emuls="elf_i386 elf_iamcu i386bsd"
|
||||
@@ -1045,6 +1050,9 @@ x86_64-*-elf* | x86_64-*-rtems* | x86_64-*-fuchsia* | x86_64-*-genode*)
|
||||
x86_64-*-dragonfly*) targ_emul=elf_x86_64
|
||||
targ_extra_emuls="elf_i386 elf_iamcu"
|
||||
;;
|
||||
+x86_64-*-fennix*) targ_emul=elf_x86_64_fennix
|
||||
+ targ_extra_emuls="elf_i386_fennix elf_x86_64 elf_i386"
|
||||
+ ;;
|
||||
x86_64-*-freebsd* | x86_64-*-kfreebsd*-gnu)
|
||||
targ_emul=elf_x86_64_fbsd
|
||||
targ_extra_emuls="elf_i386_fbsd elf_x86_64 elf_i386 elf_iamcu"
|
||||
@@ -1112,6 +1120,10 @@ case "${target}" in
|
||||
NATIVE_LIB_DIRS='/lib /usr/lib /usr/pkg/lib /usr/local/lib'
|
||||
;;
|
||||
|
||||
+*-*-fennix*)
|
||||
+ NATIVE_LIB_DIRS='/lib /usr/lib'
|
||||
+ ;;
|
||||
+
|
||||
*-*-freebsd*)
|
||||
NATIVE_LIB_DIRS='/lib /usr/lib /usr/local/lib'
|
||||
;;
|
||||
diff --git a/ld/emulparams/elf_i386_fennix.sh b/ld/emulparams/elf_i386_fennix.sh
|
||||
new file mode 100644
|
||||
index 00000000000..19b75a06cf9
|
||||
--- /dev/null
|
||||
+++ b/ld/emulparams/elf_i386_fennix.sh
|
||||
@@ -0,0 +1,4 @@
|
||||
+source_sh ${srcdir}/emulparams/elf_i386.sh
|
||||
+GENERATE_SHLIB_SCRIPT=yes
|
||||
+GENERATE_PIE_SCRIPT=yes
|
||||
+TEXT_START_ADDR=0x400000
|
||||
diff --git a/ld/emulparams/elf_x86_64_fennix.sh b/ld/emulparams/elf_x86_64_fennix.sh
|
||||
new file mode 100644
|
||||
index 00000000000..1509ec7fe53
|
||||
--- /dev/null
|
||||
+++ b/ld/emulparams/elf_x86_64_fennix.sh
|
||||
@@ -0,0 +1,4 @@
|
||||
+source_sh ${srcdir}/emulparams/elf_x86_64.sh
|
||||
+GENERATE_SHLIB_SCRIPT=yes
|
||||
+GENERATE_PIE_SCRIPT=yes
|
||||
+TEXT_START_ADDR=0x400000
|
Reference in New Issue
Block a user