Import NetBSD tools and build.sh
This commit finalizes support for cross compilation. The tools directory are all links to the actual tools and are built on the host system to build Minix. build.sh is the work horse that takes care of all environment settings. It's slightly adjusted for Minix. The /usr/src/Makefile has additional targets needed for cross compilation.
This commit is contained in:
@@ -0,0 +1,82 @@
|
||||
--- gcc/config.gcc.orig Fri Jun 3 14:42:47 2011
|
||||
+++ gcc/config.gcc Fri Jun 3 14:42:58 2011
|
||||
@@ -251,7 +251,7 @@
|
||||
| *-*-sysv* \
|
||||
| vax-*-vms* \
|
||||
)
|
||||
- echo "*** Configuration ${target} not supported" 1>&2
|
||||
+ echo "*** Configuration ${target} recognized but not supported" 1>&2
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
@@ -515,6 +515,33 @@
|
||||
esac
|
||||
dfbsd_tm_file="${dfbsd_tm_file} dragonfly-spec.h dragonfly.h"
|
||||
;;
|
||||
+*-*-dragonfly*)
|
||||
+ gas=yes
|
||||
+ gnu_ld=yes
|
||||
+ extra_parts="crtbegin.o crtend.o crtbeginS.o crtendS.o"
|
||||
+ case ${target} in
|
||||
+ *-*-dragonfly1 | *-*-dragonfly[1].*)
|
||||
+ tm_defines="${tm_defines} DFBSD_MAJOR=1" ;;
|
||||
+ *-*-dragonfly2 | *-*-dragonfly[2].*)
|
||||
+ tm_defines="${tm_defines} DFBSD_MAJOR=2" ;;
|
||||
+ *-*-dragonfly3 | *-*-dragonfly[3].*)
|
||||
+ tm_defines="${tm_defines} DFBSD_MAJOR=3" ;;
|
||||
+ *-*-dragonfly4 | *-*-dragonfly[4].*)
|
||||
+ tm_defines="${tm_defines} DFBSD_MAJOR=4" ;;
|
||||
+ *)
|
||||
+ echo 'Please update *-*-dragonfly* in gcc/config.gcc'
|
||||
+ exit 1
|
||||
+ ;;
|
||||
+ esac
|
||||
+ tmake_file="t-slibgcc-elf-ver t-dragonfly"
|
||||
+ case ${enable_threads} in
|
||||
+ "" | yes | posix)
|
||||
+ thread_file='posix'
|
||||
+ tmake_file="${tmake_file} t-dragonfly-thread"
|
||||
+ ;;
|
||||
+ esac
|
||||
+ dfbsd_tm_file="${dfbsd_tm_file} dragonfly-spec.h dragonfly.h"
|
||||
+ ;;
|
||||
*-*-linux* | frv-*-*linux* | *-*-kfreebsd*-gnu | *-*-knetbsd*-gnu | *-*-gnu* | *-*-kopensolaris*-gnu)
|
||||
extra_parts="crtbegin.o crtbeginS.o crtbeginT.o crtend.o crtendS.o"
|
||||
gas=yes
|
||||
@@ -1070,6 +1097,14 @@
|
||||
tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h i386/i386elf.h i386/x86-64.h"
|
||||
tmake_file="${tmake_file} i386/t-i386elf t-svr4"
|
||||
;;
|
||||
+i[34567]86-*-minix)
|
||||
+ tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h minix-spec.h minix.h i386/minix.h"
|
||||
+# tmake_file="t-slibgcc-elf-ver t-minix i386/t-minix"
|
||||
+# use_fixproto=yes
|
||||
+ gas=yes
|
||||
+ gnu_ld=yes
|
||||
+ extra_parts="crtbegin.o crtend.o crtbeginS.o crtendS.o"
|
||||
+ ;;
|
||||
i[34567]86-*-aout*)
|
||||
tm_file="${tm_file} i386/unix.h i386/bsd.h i386/gas.h i386/gstabs.h i386/i386-aout.h"
|
||||
;;
|
||||
@@ -1086,6 +1121,12 @@
|
||||
x86_64-*-dragonfly*)
|
||||
tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h ${dfbsd_tm_file} i386/x86-64.h i386/dragonfly.h i386/dragonfly64.h"
|
||||
;;
|
||||
+i[34567]86-*-dragonfly*)
|
||||
+ tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h ${dfbsd_tm_file} i386/dragonfly.h"
|
||||
+ ;;
|
||||
+x86_64-*-dragonfly*)
|
||||
+ tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h ${dfbsd_tm_file} i386/x86-64.h i386/dragonfly.h i386/dragonfly64.h"
|
||||
+ ;;
|
||||
i[34567]86-*-netbsdelf*)
|
||||
tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h netbsd.h netbsd-elf.h i386/netbsd-elf.h"
|
||||
;;
|
||||
@@ -2466,7 +2507,7 @@
|
||||
cxx_target_objs="m32c-pragma.o"
|
||||
;;
|
||||
*)
|
||||
- echo "*** Configuration ${target} not supported" 1>&2
|
||||
+ echo "*** Configuration ${target} not recognized, not supported" 1>&2
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
Reference in New Issue
Block a user