Date: Sat, 1 Dec 2012 05:07:49 +0000 (UTC) From: Andrew Turner <andrew@FreeBSD.org> To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r243744 - in projects/arm_eabi: gnu/lib/csu gnu/lib/libgcc gnu/lib/libgcov gnu/lib/libstdc++ gnu/usr.bin/cc gnu/usr.bin/cc/c++filt gnu/usr.bin/cc/cc1 gnu/usr.bin/cc/cc1plus gnu/usr.bin/... Message-ID: <201212010507.qB157sGE029180@svn.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: andrew Date: Sat Dec 1 05:07:49 2012 New Revision: 243744 URL: http://svnweb.freebsd.org/changeset/base/243744 Log: Allow the ABI to be toggled between the current ARM ABI and the EABI with the ARM EABI the default on this branch. Added: projects/arm_eabi/tools/build/options/WITHOUT_ARM_EABI Modified: projects/arm_eabi/gnu/lib/csu/Makefile projects/arm_eabi/gnu/lib/libgcc/Makefile projects/arm_eabi/gnu/lib/libgcov/Makefile projects/arm_eabi/gnu/lib/libstdc++/Makefile projects/arm_eabi/gnu/usr.bin/cc/Makefile.inc projects/arm_eabi/gnu/usr.bin/cc/c++filt/Makefile projects/arm_eabi/gnu/usr.bin/cc/cc1/Makefile projects/arm_eabi/gnu/usr.bin/cc/cc1plus/Makefile projects/arm_eabi/gnu/usr.bin/cc/cc_int/Makefile projects/arm_eabi/gnu/usr.bin/cc/cc_tools/Makefile projects/arm_eabi/gnu/usr.bin/cc/doc/Makefile projects/arm_eabi/gnu/usr.bin/cc/gcov/Makefile projects/arm_eabi/gnu/usr.bin/cc/include/Makefile projects/arm_eabi/gnu/usr.bin/cc/libcpp/Makefile projects/arm_eabi/gnu/usr.bin/cc/libdecnumber/Makefile projects/arm_eabi/gnu/usr.bin/cc/libiberty/Makefile projects/arm_eabi/lib/libc/arm/Makefile.inc projects/arm_eabi/lib/libc/arm/gen/Makefile.inc projects/arm_eabi/lib/libc/quad/Makefile.inc projects/arm_eabi/lib/libcompiler_rt/Makefile projects/arm_eabi/share/mk/bsd.own.mk Modified: projects/arm_eabi/gnu/lib/csu/Makefile ============================================================================== --- projects/arm_eabi/gnu/lib/csu/Makefile Sat Dec 1 03:48:11 2012 (r243743) +++ projects/arm_eabi/gnu/lib/csu/Makefile Sat Dec 1 05:07:49 2012 (r243744) @@ -24,7 +24,7 @@ CFLAGS+= -I${GCCLIB}/include -I${GCCDIR} CRTS_CFLAGS= -DCRTSTUFFS_O -DSHARED ${PICFLAG} MKDEP= -DCRT_BEGIN -.if ${TARGET_CPUARCH} == "arm" +.if ${TARGET_CPUARCH} == "arm" && ${MK_ARM_EABI} != "no" CFLAGS+= -DTARGET_ARM_EABI .endif Modified: projects/arm_eabi/gnu/lib/libgcc/Makefile ============================================================================== --- projects/arm_eabi/gnu/lib/libgcc/Makefile Sat Dec 1 03:48:11 2012 (r243743) +++ projects/arm_eabi/gnu/lib/libgcc/Makefile Sat Dec 1 05:07:49 2012 (r243744) @@ -15,7 +15,7 @@ MK_SSP= no .include "${.CURDIR}/../../usr.bin/cc/Makefile.tgt" -.if ${TARGET_CPUARCH} == "arm" +.if ${TARGET_CPUARCH} == "arm" && ${MK_ARM_EABI} != "no" CFLAGS+= -DTARGET_ARM_EABI .endif @@ -56,7 +56,7 @@ LIB2FUNCS+= _fixuns${mode}si .endfor # Likewise double-word routines. -.if ${TARGET_CPUARCH} != "arm" +.if ${TARGET_CPUARCH} != "arm" && ${MK_ARM_EABI} != "no" # These are implemented in an ARM specific file but will not be filtered out .for mode in sf df xf tf LIB2FUNCS+= _fix${mode}di _fixuns${mode}di @@ -115,10 +115,14 @@ LIB2_DIVMOD_FUNCS = _divdi3 _moddi3 _udi CFLAGS+= -Dinhibit_libc -fno-inline LIB1ASMSRC = lib1funcs.asm LIB1ASMFUNCS = _dvmd_tls _bb_init_func +.if ${MK_ARM_EABI} != "no" LIB1ASMFUNCS+= _addsubdf3 _addsubsf3 _cmpdf2 _cmpsf2 _fixdfsi _fixsfsi \ _fixunsdfsi _fixunsdfsi _muldivdf3 _muldivsf3 _udivsi3 LIB2ADDEH = unwind-arm.c libunwind.S pr-support.c unwind-c.c +.else +LIB2FUNCS_EXTRA = floatunsidf.c floatunsisf.c +.endif .endif .if ${TARGET_CPUARCH} == mips @@ -324,7 +328,7 @@ CLEANFILES += cs-*.h option* SHLIB_MKMAP = ${GCCDIR}/mkmap-symver.awk SHLIB_MKMAP_OPTS = SHLIB_MAPFILES = ${GCCDIR}/libgcc-std.ver -.if ${TARGET_CPUARCH} == "arm" +.if ${TARGET_CPUARCH} == "arm" && ${MK_ARM_EABI} != "no" SHLIB_MAPFILES += ${GCCDIR}/config/arm/libgcc-bpabi.ver .endif VERSION_MAP = libgcc.map Modified: projects/arm_eabi/gnu/lib/libgcov/Makefile ============================================================================== --- projects/arm_eabi/gnu/lib/libgcov/Makefile Sat Dec 1 03:48:11 2012 (r243743) +++ projects/arm_eabi/gnu/lib/libgcov/Makefile Sat Dec 1 05:07:49 2012 (r243744) @@ -16,7 +16,7 @@ CFLAGS+= -D_PTHREADS -DGTHREAD_USE_WEAK CFLAGS+= -I${.CURDIR}/../../usr.bin/cc/cc_tools \ -I${GCCLIB}/include -I${GCCDIR}/config -I${GCCDIR} -I. -.if ${TARGET_CPUARCH} == "arm" +.if ${TARGET_CPUARCH} == "arm" && ${MK_ARM_EABI} != "no" CFLAGS+= -DTARGET_ARM_EABI .endif Modified: projects/arm_eabi/gnu/lib/libstdc++/Makefile ============================================================================== --- projects/arm_eabi/gnu/lib/libstdc++/Makefile Sat Dec 1 03:48:11 2012 (r243743) +++ projects/arm_eabi/gnu/lib/libstdc++/Makefile Sat Dec 1 05:07:49 2012 (r243744) @@ -1,5 +1,7 @@ # $FreeBSD$ +.include <bsd.own.mk> + GCCVER= 4.2 GCCDIR= ${.CURDIR}/../../../contrib/gcc GCCLIB= ${.CURDIR}/../../../contrib/gcclibs @@ -14,8 +16,8 @@ LIB= stdc++ SHLIB_MAJOR= 6 CFLAGS+= -DIN_GLIBCPP_V3 -DHAVE_CONFIG_H -.if ${MACHINE_CPUARCH} == "arm" -#CFLAGS+= -D_GLIBCXX_SJLJ_EXCEPTIONS=1 +.if ${MACHINE_CPUARCH} == "arm" && ${MK_ARM_EABI} == "no" +CFLAGS+= -D_GLIBCXX_SJLJ_EXCEPTIONS=1 .endif CFLAGS+= -I${.CURDIR} -I${SUPDIR} -I${GCCDIR} -I${SRCDIR}/include CFLAGS+= -I${GCCLIB}/include -I${SRCDIR}/include -I. @@ -594,7 +596,7 @@ gthr-default.h: ${GCCDIR}/gthr-posix.h CLEANFILES+= ${THRHDRS} -.if ${MACHINE_CPUARCH} == "arm" +.if ${MACHINE_CPUARCH} == "arm" && ${MK_ARM_EABI} != "no" unwind.h: ${GCCDIR}/config/arm/unwind-arm.h .else unwind.h: ${GCCDIR}/unwind-generic.h Modified: projects/arm_eabi/gnu/usr.bin/cc/Makefile.inc ============================================================================== --- projects/arm_eabi/gnu/usr.bin/cc/Makefile.inc Sat Dec 1 03:48:11 2012 (r243743) +++ projects/arm_eabi/gnu/usr.bin/cc/Makefile.inc Sat Dec 1 05:07:49 2012 (r243744) @@ -26,7 +26,7 @@ CSTD?= gnu89 CFLAGS+= -DCROSS_COMPILE .endif -.if ${TARGET_CPUARCH} == "arm" +.if ${TARGET_CPUARCH} == "arm" && ${MK_ARM_EABI} != "no" CFLAGS+= -DTARGET_ARM_EABI .endif Modified: projects/arm_eabi/gnu/usr.bin/cc/c++filt/Makefile ============================================================================== --- projects/arm_eabi/gnu/usr.bin/cc/c++filt/Makefile Sat Dec 1 03:48:11 2012 (r243743) +++ projects/arm_eabi/gnu/usr.bin/cc/c++filt/Makefile Sat Dec 1 05:07:49 2012 (r243744) @@ -1,5 +1,8 @@ # $FreeBSD$ +NO_MAN= +.include <bsd.own.mk> + .include "../Makefile.inc" .include "../Makefile.fe" @@ -7,7 +10,6 @@ PROG= c++filt SRCS= cp-demangle.c -NO_MAN= CFLAGS+= -DSTANDALONE_DEMANGLER -DVERSION=\"$(GCC_VERSION)\" Modified: projects/arm_eabi/gnu/usr.bin/cc/cc1/Makefile ============================================================================== --- projects/arm_eabi/gnu/usr.bin/cc/cc1/Makefile Sat Dec 1 03:48:11 2012 (r243743) +++ projects/arm_eabi/gnu/usr.bin/cc/cc1/Makefile Sat Dec 1 05:07:49 2012 (r243744) @@ -1,9 +1,10 @@ # $FreeBSD$ -.include "../Makefile.inc" NO_MAN= .include <bsd.own.mk> +.include "../Makefile.inc" + .PATH: ${GCCDIR} PROG= cc1 Modified: projects/arm_eabi/gnu/usr.bin/cc/cc1plus/Makefile ============================================================================== --- projects/arm_eabi/gnu/usr.bin/cc/cc1plus/Makefile Sat Dec 1 03:48:11 2012 (r243743) +++ projects/arm_eabi/gnu/usr.bin/cc/cc1plus/Makefile Sat Dec 1 05:07:49 2012 (r243744) @@ -1,9 +1,10 @@ # $FreeBSD$ -.include "../Makefile.inc" NO_MAN= .include <bsd.own.mk> +.include "../Makefile.inc" + .PATH: ${GCCDIR}/cp ${GCCDIR} PROG= cc1plus Modified: projects/arm_eabi/gnu/usr.bin/cc/cc_int/Makefile ============================================================================== --- projects/arm_eabi/gnu/usr.bin/cc/cc_int/Makefile Sat Dec 1 03:48:11 2012 (r243743) +++ projects/arm_eabi/gnu/usr.bin/cc/cc_int/Makefile Sat Dec 1 05:07:49 2012 (r243744) @@ -1,5 +1,7 @@ # $FreeBSD$ +.include <bsd.own.mk> + .include "../Makefile.inc" .include "../Makefile.ver" Modified: projects/arm_eabi/gnu/usr.bin/cc/cc_tools/Makefile ============================================================================== --- projects/arm_eabi/gnu/usr.bin/cc/cc_tools/Makefile Sat Dec 1 03:48:11 2012 (r243743) +++ projects/arm_eabi/gnu/usr.bin/cc/cc_tools/Makefile Sat Dec 1 05:07:49 2012 (r243744) @@ -51,8 +51,10 @@ TARGET_INC+= ${GCC_CPU}/elf.h .endif .if ${TARGET_CPUARCH} == "arm" TARGET_INC+= ${GCC_CPU}/aout.h +.if ${MK_ARM_EABI} != "no" TARGET_INC+= ${GCC_CPU}/bpabi.h .endif +.endif .if ${TARGET_ARCH} == "powerpc64" TARGET_INC+= ${GCC_CPU}/biarch64.h TARGET_INC+= ${GCC_CPU}/default64.h @@ -350,7 +352,7 @@ gthr-default.h: ${GCCDIR}/gthr-posix.h GENSRCS+= gthr-default.h -.if ${TARGET_CPUARCH} == "arm" +.if ${TARGET_CPUARCH} == "arm" && ${MK_ARM_EABI} != "no" unwind.h: ${GCCDIR}/config/arm/unwind-arm.h .else unwind.h: ${GCCDIR}/unwind-generic.h Modified: projects/arm_eabi/gnu/usr.bin/cc/doc/Makefile ============================================================================== --- projects/arm_eabi/gnu/usr.bin/cc/doc/Makefile Sat Dec 1 03:48:11 2012 (r243743) +++ projects/arm_eabi/gnu/usr.bin/cc/doc/Makefile Sat Dec 1 05:07:49 2012 (r243744) @@ -1,5 +1,7 @@ # $FreeBSD$ +.include <bsd.own.mk> + .include "../Makefile.inc" .include "../Makefile.ver" Modified: projects/arm_eabi/gnu/usr.bin/cc/gcov/Makefile ============================================================================== --- projects/arm_eabi/gnu/usr.bin/cc/gcov/Makefile Sat Dec 1 03:48:11 2012 (r243743) +++ projects/arm_eabi/gnu/usr.bin/cc/gcov/Makefile Sat Dec 1 05:07:49 2012 (r243744) @@ -1,5 +1,7 @@ # $FreeBSD$ +.include <bsd.own.mk> + .include "../Makefile.inc" .include "../Makefile.ver" Modified: projects/arm_eabi/gnu/usr.bin/cc/include/Makefile ============================================================================== --- projects/arm_eabi/gnu/usr.bin/cc/include/Makefile Sat Dec 1 03:48:11 2012 (r243743) +++ projects/arm_eabi/gnu/usr.bin/cc/include/Makefile Sat Dec 1 05:07:49 2012 (r243744) @@ -1,5 +1,7 @@ # $FreeBSD$ +.include <bsd.own.mk> + .include "../Makefile.inc" INCSDIR=${INCLUDEDIR}/gcc/${GCCVER} Modified: projects/arm_eabi/gnu/usr.bin/cc/libcpp/Makefile ============================================================================== --- projects/arm_eabi/gnu/usr.bin/cc/libcpp/Makefile Sat Dec 1 03:48:11 2012 (r243743) +++ projects/arm_eabi/gnu/usr.bin/cc/libcpp/Makefile Sat Dec 1 05:07:49 2012 (r243744) @@ -1,5 +1,7 @@ # $FreeBSD$ +.include <bsd.own.mk> + # Use our headers in preference to ones from ../cc_tools. CFLAGS+= -I${.CURDIR} -I. Modified: projects/arm_eabi/gnu/usr.bin/cc/libdecnumber/Makefile ============================================================================== --- projects/arm_eabi/gnu/usr.bin/cc/libdecnumber/Makefile Sat Dec 1 03:48:11 2012 (r243743) +++ projects/arm_eabi/gnu/usr.bin/cc/libdecnumber/Makefile Sat Dec 1 05:07:49 2012 (r243744) @@ -1,5 +1,7 @@ # $FreeBSD$ +.include <bsd.own.mk> + # Use our headers in preference to ones from ../cc_tools. CFLAGS+= -I${.CURDIR} -I. Modified: projects/arm_eabi/gnu/usr.bin/cc/libiberty/Makefile ============================================================================== --- projects/arm_eabi/gnu/usr.bin/cc/libiberty/Makefile Sat Dec 1 03:48:11 2012 (r243743) +++ projects/arm_eabi/gnu/usr.bin/cc/libiberty/Makefile Sat Dec 1 05:07:49 2012 (r243744) @@ -1,5 +1,7 @@ # $FreeBSD$ +.include <bsd.own.mk> + # # Make sure we will pick up our config.h file first, not the one from # cc_tools. Modified: projects/arm_eabi/lib/libc/arm/Makefile.inc ============================================================================== --- projects/arm_eabi/lib/libc/arm/Makefile.inc Sat Dec 1 03:48:11 2012 (r243743) +++ projects/arm_eabi/lib/libc/arm/Makefile.inc Sat Dec 1 05:07:49 2012 (r243744) @@ -9,8 +9,10 @@ SOFTFLOAT_BITS=32 MDSRCS+=machdep_ldisd.c SYM_MAPS+=${.CURDIR}/arm/Symbol.map +.if ${MK_ARM_EABI} == "no" # This contains the symbols that were removed when moving to the ARM EABI -#SYM_MAPS+=${.CURDIR}/arm/Symbol_oabi.map - +SYM_MAPS+=${.CURDIR}/arm/Symbol_oabi.map +.else .include "${.CURDIR}/arm/aeabi/Makefile.inc" +.endif Modified: projects/arm_eabi/lib/libc/arm/gen/Makefile.inc ============================================================================== --- projects/arm_eabi/lib/libc/arm/gen/Makefile.inc Sat Dec 1 03:48:11 2012 (r243743) +++ projects/arm_eabi/lib/libc/arm/gen/Makefile.inc Sat Dec 1 05:07:49 2012 (r243744) @@ -5,4 +5,6 @@ SRCS+= _ctx_start.S _setjmp.S _set_tp.c getcontextx.c infinity.c ldexp.c makecontext.c \ __aeabi_read_tp.S setjmp.S signalcontext.c sigsetjmp.S flt_rounds.c -#SRCS+= divsi3.S +.if ${MK_ARM_EABI} == "no" +SRCS+= divsi3.S +.endif Modified: projects/arm_eabi/lib/libc/quad/Makefile.inc ============================================================================== --- projects/arm_eabi/lib/libc/quad/Makefile.inc Sat Dec 1 03:48:11 2012 (r243743) +++ projects/arm_eabi/lib/libc/quad/Makefile.inc Sat Dec 1 05:07:49 2012 (r243744) @@ -8,7 +8,7 @@ SRCS+= cmpdi2.c divdi3.c moddi3.c qdivrem.c ucmpdi2.c udivdi3.c umoddi3.c -.elif ${LIBC_ARCH} == "arm" +.elif ${LIBC_ARCH} == "arm" && ${MK_ARM_EABI} != "no" SRCS+= adddi3.c anddi3.c floatunsdidf.c iordi3.c lshldi3.c notdi2.c \ qdivrem.c subdi3.c xordi3.c Modified: projects/arm_eabi/lib/libcompiler_rt/Makefile ============================================================================== --- projects/arm_eabi/lib/libcompiler_rt/Makefile Sat Dec 1 03:48:11 2012 (r243743) +++ projects/arm_eabi/lib/libcompiler_rt/Makefile Sat Dec 1 05:07:49 2012 (r243744) @@ -144,7 +144,9 @@ SRCF+= adddf3 \ truncdfsf2 .endif -.if ${MACHINE_CPUARCH} != "mips" +# TODO: Fix this logic for !mips, !arm oabi +.if ${MACHINE_CPUARCH} != "mips" && \ + (${MACHINE_CPUARCH} != "arm" || ${MK_ARM_EABI} != "no") SRCF+= divsi3 \ modsi3 \ udivsi3 \ @@ -179,7 +181,7 @@ SRCS+= ${file}.c . endif .endfor -.if ${MACHINE_CPUARCH} == "arm" +.if ${MACHINE_CPUARCH} == "arm" && ${MK_ARM_EABI} != "no" SRCS+= aeabi_idivmod.S \ aeabi_ldivmod.S \ aeabi_uidivmod.S \ Modified: projects/arm_eabi/share/mk/bsd.own.mk ============================================================================== --- projects/arm_eabi/share/mk/bsd.own.mk Sat Dec 1 03:48:11 2012 (r243743) +++ projects/arm_eabi/share/mk/bsd.own.mk Sat Dec 1 05:07:49 2012 (r243744) @@ -304,6 +304,7 @@ __DEFAULT_YES_OPTIONS = \ ACPI \ AMD \ APM \ + ARM_EABI \ ASSERT_DEBUG \ AT \ ATF \ Added: projects/arm_eabi/tools/build/options/WITHOUT_ARM_EABI ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/arm_eabi/tools/build/options/WITHOUT_ARM_EABI Sat Dec 1 05:07:49 2012 (r243744) @@ -0,0 +1,2 @@ +.\" $FreeBSD$ +Set the ARM ABI to EABI.
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201212010507.qB157sGE029180>