diff -urNp --exclude '*.swp' --exclude DEV-PHASE --exclude .svn gcc-orig/gcc/config/rs6000/sysv4.h gcc/gcc/config/rs6000/sysv4.h --- gcc-orig/gcc/config/rs6000/sysv4.h 2008-10-22 10:07:45.000000000 -0700 +++ gcc/gcc/config/rs6000/sysv4.h 2008-10-22 10:09:05.000000000 -0700 @@ -19,6 +19,9 @@ along with GCC; see the file COPYING3. If not see . */ +#define CONCAT3(A,B,C) _CONCAT3(A,B,C) +#define _CONCAT3(A,B,C) A##B##C + /* Header files should be C++ aware in general. */ #undef NO_IMPLICIT_EXTERN_C #define NO_IMPLICIT_EXTERN_C @@ -599,6 +602,12 @@ SVR4_ASM_SPEC \ mcall-gnu :-mbig; \ mcall-i960-old :-mlittle}" +#ifdef TARGET_BOARD_DEFAULT +#define LIBGCC_DEFAULT_SPEC CONCAT3(LIBGCC_,TARGET_BOARD_DEFAULT,_SPEC) +#else +#define LIBGCC_DEFAULT_SPEC "-lgcc" +#endif + #define CC1_ENDIAN_BIG_SPEC "" #define CC1_ENDIAN_LITTLE_SPEC "\ @@ -663,6 +672,7 @@ SVR4_ASM_SPEC \ myellowknife : %(link_start_yellowknife) ; \ mmvme : %(link_start_mvme) ; \ msim : %(link_start_sim) ; \ + mxilinx : %(link_start_xilinx) ; \ mcall-freebsd: %(link_start_freebsd) ; \ mcall-linux : %(link_start_linux) ; \ mcall-gnu : %(link_start_gnu) ; \ @@ -670,7 +680,11 @@ SVR4_ASM_SPEC \ mcall-openbsd: %(link_start_openbsd) ; \ : %(link_start_default) }" +#ifdef TARGET_BOARD_DEFAULT +#define LINK_START_DEFAULT_SPEC CONCAT3(LINK_START_,TARGET_BOARD_DEFAULT,_SPEC) +#else #define LINK_START_DEFAULT_SPEC "" +#endif /* Override svr4.h definition. */ #undef LINK_SPEC @@ -720,6 +734,7 @@ SVR4_ASM_SPEC \ myellowknife : %(link_os_yellowknife) ; \ mmvme : %(link_os_mvme) ; \ msim : %(link_os_sim) ; \ + mxilinx : %(link_os_xilinx) ; \ mcall-freebsd: %(link_os_freebsd) ; \ mcall-linux : %(link_os_linux) ; \ mcall-gnu : %(link_os_gnu) ; \ @@ -727,7 +742,11 @@ SVR4_ASM_SPEC \ mcall-openbsd: %(link_os_openbsd) ; \ : %(link_os_default) }" +#ifdef TARGET_BOARD_DEFAULT +#define LINK_OS_DEFAULT_SPEC CONCAT3(LINK_OS_,TARGET_BOARD_DEFAULT,_SPEC) +#else #define LINK_OS_DEFAULT_SPEC "" +#endif #define DRIVER_SELF_SPECS "%{mfpu=none: %&2 echo " [TARGET_CPU_DEFAULT='default'] mkconfig.sh FILE" >&2 + echo " [TARGET_BOARD_DEFAULT='default'] mkconfig.sh FILE" >&2 exit 1 fi @@ -54,6 +56,12 @@ if [ "$TARGET_CPU_DEFAULT" != "" ]; then echo "#define TARGET_CPU_DEFAULT ($TARGET_CPU_DEFAULT)" >> ${output}T fi +# Define TARGET_BOARD_DEFAULT if the system wants one. +# This substitutes for lots of *.h files. +if [ "$TARGET_BOARD_DEFAULT" != "" ]; then + echo "#define TARGET_BOARD_DEFAULT $TARGET_BOARD_DEFAULT" >> ${output}T +fi + # Provide defines for other macros set in config.gcc for this file. for def in $DEFINES; do echo "#ifndef $def" | sed 's/=.*//' >> ${output}T