From 9aec288c73dbdfcffb272ef56f8de6dd411f4145 Mon Sep 17 00:00:00 2001 From: midipix Date: Sat, 21 Mar 2015 20:52:59 -0400 Subject: finally, add midipix as a gcc target. signed-off by Z. Gilboa; see copying.midipix (9cd0746c) for additional information. --- config.sub | 10 +++++++++- configure | 2 +- gcc/config.gcc | 30 ++++++++++++++++++++++++++++++ gcc/config.host | 3 +++ libgcc/config.host | 8 +++++++- libstdc++-v3/configure | 4 ++++ 6 files changed, 54 insertions(+), 3 deletions(-) diff --git a/config.sub b/config.sub index 204218c07..b0e45f3be 100755 --- a/config.sub +++ b/config.sub @@ -756,6 +756,14 @@ case $basic_machine in microblaze) basic_machine=microblaze-xilinx ;; + midipix32) + basic_machine=i386-pc + os=-midipix32 + ;; + midipix64) + basic_machine=x86_64-pc + os=-midipix64 + ;; mingw32) basic_machine=i386-pc os=-mingw32 @@ -1317,7 +1325,7 @@ case $os in | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \ | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \ | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \ - | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es*) + | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es* | -midipix*) # Remember, each alternative MUST END IN *, to match a version number. ;; -qnx*) diff --git a/configure b/configure index 266b29dfa..301ddc5f9 100755 --- a/configure +++ b/configure @@ -3088,7 +3088,7 @@ fi if test x$enable_libgomp = x ; then # Enable libgomp by default on hosted POSIX systems. case "${target}" in - *-*-linux* | *-*-gnu* | *-*-k*bsd*-gnu | *-*-kopensolaris*-gnu) + *-*-linux* | *-*-midipix* | *-*-gnu* | *-*-k*bsd*-gnu | *-*-kopensolaris*-gnu) ;; *-*-netbsd* | *-*-freebsd* | *-*-openbsd*) ;; diff --git a/gcc/config.gcc b/gcc/config.gcc index 6569afe8a..5b20b7344 100644 --- a/gcc/config.gcc +++ b/gcc/config.gcc @@ -2793,6 +2793,36 @@ m32c-*-elf*) c_target_objs="m32c-pragma.o" cxx_target_objs="m32c-pragma.o" ;; +*-*-midipix*) + native_system_header_dir="/include" + local_includedir="/local/include" + + xm_file= + tm_file="vxworks-dummy.h i386/biarch64.h i386/i386.h i386/unix.h i386/bsd.h i386/gas.h dbxcoff.h i386/midipix.h glibc-stdint.h" + + xm_defines="HAVE_GAS_ALIGNED_COMM=1 __TARGET_SYMVER_REJECTED=1" + tm_defines="HAVE_GAS_ALIGNED_COMM=1 __TARGET_SYMVER_REJECTED=1" + + tmake_file="i386/t-midipix t-slibgcc i386/t-gmm_malloc i386/t-i386 i386/t-fprules-softfp soft-fp/t-softfp" + + target_gtfiles="\$(srcdir)/config/i386/winnt.c \$(srcdir)/config/i386/midipix.c" + + extra_objs="midipix_winnt_common.o midipix_winnt_stubs.o midipix.o" + extra_options="fused-madd.opt i386/i386.opt i386/midipix.opt" + + c_target_objs="i386-c.o" + cxx_target_objs="i386-c.o midipix_winnt_cxx.o" + + gas=yes + gnu_as=yes + gnu_ld=yes + + thread_file=posix + default_use_cxa_atexit=yes + + use_gcc_tgmath=no + use_gcc_stdint=wrap + ;; *) echo "*** Configuration ${target} not supported" 1>&2 exit 1 diff --git a/gcc/config.host b/gcc/config.host index d0342b996..2ff30ca36 100644 --- a/gcc/config.host +++ b/gcc/config.host @@ -233,6 +233,9 @@ case ${host} in out_host_hook_obj=host-mingw32.o host_lto_plugin_soname=liblto_plugin-0.dll ;; + *-*-midipix*) + host_exeext=.exe + ;; i[34567]86-*-uwin*) echo "*** UWIN may not be used as a host platform because" echo "*** linking with posix.dll is not allowed by the GNU GPL." diff --git a/libgcc/config.host b/libgcc/config.host index 25e949e0f..f77a42120 100644 --- a/libgcc/config.host +++ b/libgcc/config.host @@ -334,6 +334,12 @@ i[34567]86-*-cygwin* | i[34567]86-*-mingw*) ;; x86_64-*-mingw*) ;; +i[34567]86-*-midipix*) + tmake_file="${tmake_file} i386/t-midipix" + ;; +x86_64-*-midipix*) + tmake_file="${tmake_file} i386/t-midipix" + ;; i[34567]86-*-interix3*) ;; ia64*-*-elf*) @@ -622,7 +628,7 @@ i[34567]86-*-darwin* | x86_64-*-darwin* | \ esac case ${host} in -i[34567]86-*-linux* | x86_64-*-linux*) +i[34567]86-*-linux* | x86_64-*-linux* | x86_64-*-midipix*) # Provide backward binary compatibility for 64bit Linux/x86. if test "${host_address}" = 64; then tmake_file="${tmake_file} i386/${host_address}/t-softfp-compat" diff --git a/libstdc++-v3/configure b/libstdc++-v3/configure index 3e959e867..551a1d273 100755 --- a/libstdc++-v3/configure +++ b/libstdc++-v3/configure @@ -63479,6 +63479,10 @@ $as_echo "$ac_ld_relro" >&6; } $as_echo "#define HAVE_TANHF 1" >>confdefs.h ;; + + *midipix*) + ;; + *) as_fn_error "No support for this host/target combination." "$LINENO" 5 ;; -- cgit v1.2.3