svn commit: r234548 - in user/imp/extern_cc: . contrib/binutils contrib/binutils/bfd gnu/usr.bin/binutils gnu/usr.bin/binutils/as gnu/usr.bin/binutils/ld gnu/usr.bin/binutils/libbfd gnu/usr.bin/cc ...

Warner Losh imp at FreeBSD.org
Sat Apr 21 16:27:51 UTC 2012


Author: imp
Date: Sat Apr 21 16:27:50 2012
New Revision: 234548
URL: http://svn.freebsd.org/changeset/base/234548

Log:
  Two, unrelated patches intermerged (sorry)
  
  o Add support for TARGET_ARCH=armv6.  This is just the compile phase
    and hasn't done things like get uname to return armv6.
  o Add support for external compilers:
    - Define EXT_COMP to be the prefix to prepend to the normal
      commands (either the full path or just armv6-freebsd-)
    - Some things don't work: KERBEROS and RESCUE.
  
  To test it out:
  o sudo make xdev XDEV=arm XDEV_ARCH=armv6
  o make buildworld WITHOUT_RESCUE=y WITHOUT_KERBEROS=y TARGET=arm TARGET_ARCH=armv6
  
  Things missing:
  o We still build some tools we don't need to.
  o Really need to have a SYSTEM_COMPILER={gcc,clang,external} to make this
    nicer.  In fact, we may need gcc42, gcc43, etc to get the warnings flags
    right (or GCC_VERSION and CLANG_VERSION).
  o crunchgen is busted in this configuration.  I fixed one thing, but it
    needs more love for rescue to work.  Also, it likely just needs to be
    a bootstrap tool again, and the test needs to include a freebsd version
    bump.
  o External toolchains, like those delivered by the chip vendors, have not
    been tested.  There's likely tweaks needed.
  o It assumes that the standard tools are called the stanard things.  This
    isn't true, afaik, with externally built clang without symlinks.
  
  It is 'stage 2' in my roadmap:
  o stage 1: cross build kernels with minimal effort
  o stage 2: cross build with xdev built compilers
  o stage 3: cross build with external gcc compilers
  o stage 4: cross build with external clang
  o stage 5: profit.

Modified:
  user/imp/extern_cc/Makefile
  user/imp/extern_cc/Makefile.inc1
  user/imp/extern_cc/contrib/binutils/bfd/config.bfd
  user/imp/extern_cc/contrib/binutils/config.sub
  user/imp/extern_cc/gnu/usr.bin/binutils/Makefile.inc0
  user/imp/extern_cc/gnu/usr.bin/binutils/as/Makefile
  user/imp/extern_cc/gnu/usr.bin/binutils/ld/Makefile.arm
  user/imp/extern_cc/gnu/usr.bin/binutils/libbfd/Makefile.arm
  user/imp/extern_cc/gnu/usr.bin/cc/Makefile.inc
  user/imp/extern_cc/gnu/usr.bin/cc/Makefile.tgt
  user/imp/extern_cc/gnu/usr.bin/gdb/Makefile.inc
  user/imp/extern_cc/share/mk/bsd.endian.mk
  user/imp/extern_cc/share/mk/sys.mk
  user/imp/extern_cc/sys/conf/kern.pre.mk
  user/imp/extern_cc/sys/conf/kmod.mk
  user/imp/extern_cc/usr.bin/xlint/Makefile.inc
  user/imp/extern_cc/usr.sbin/crunch/crunchgen/crunchgen.c

Modified: user/imp/extern_cc/Makefile
==============================================================================
--- user/imp/extern_cc/Makefile	Sat Apr 21 16:07:11 2012	(r234547)
+++ user/imp/extern_cc/Makefile	Sat Apr 21 16:27:50 2012	(r234548)
@@ -135,7 +135,7 @@ _MAKE=	PATH=${PATH} ${BINMAKE} -f Makefi
 _TARGET_ARCH=	${TARGET:S/pc98/i386/}
 .elif !defined(TARGET) && defined(TARGET_ARCH) && \
     ${TARGET_ARCH} != ${MACHINE_ARCH}
-_TARGET=		${TARGET_ARCH:C/mips(n32|64)?(el)?/mips/:C/armeb/arm/}
+_TARGET=		${TARGET_ARCH:C/mips(n32|64)?(el)?/mips/:C/arm(v6)?(eb)?/arm/}
 .endif
 # Legacy names, for another transition period mips:mips(n32|64)?eb -> mips:mips\1
 .if defined(TARGET) && defined(TARGET_ARCH) && \
@@ -329,7 +329,7 @@ kernel-toolchains:
 #
 .if make(universe) || make(universe_kernels) || make(tinderbox) || make(targets)
 TARGETS?=amd64 arm i386 ia64 mips pc98 powerpc sparc64
-TARGET_ARCHES_arm?=	arm armeb
+TARGET_ARCHES_arm?=	arm armeb armv6 armv6eb
 TARGET_ARCHES_mips?=	mipsel mips mips64el mips64 mipsn32
 TARGET_ARCHES_powerpc?=	powerpc powerpc64
 TARGET_ARCHES_pc98?=	i386

Modified: user/imp/extern_cc/Makefile.inc1
==============================================================================
--- user/imp/extern_cc/Makefile.inc1	Sat Apr 21 16:07:11 2012	(r234547)
+++ user/imp/extern_cc/Makefile.inc1	Sat Apr 21 16:27:50 2012	(r234548)
@@ -136,7 +136,7 @@ VERSION!=	uname -srp
 VERSION+=	${OSRELDATE}
 .endif
 
-KNOWN_ARCHES?=	amd64 arm armeb/arm i386 i386/pc98 ia64 mips mipsel/mips mips64el/mips mips64/mips mipsn32el/mips mipsn32/mips powerpc powerpc64/powerpc sparc64
+KNOWN_ARCHES?=	amd64 arm armeb/arm armv6/arm armv6eb/arm i386 i386/pc98 ia64 mips mipsel/mips mips64el/mips mips64/mips mipsn32el/mips mipsn32/mips powerpc powerpc64/powerpc sparc64
 .if ${TARGET} == ${TARGET_ARCH}
 _t=		${TARGET}
 .else
@@ -231,6 +231,9 @@ CROSSENV+=	GROFF_BIN_PATH=${WORLDTMP}/le
 		GROFF_FONT_PATH=${WORLDTMP}/legacy/usr/share/groff_font \
 		GROFF_TMAC_PATH=${WORLDTMP}/legacy/usr/share/tmac
 .endif
+.if ${EXT_COMP}
+CROSSENV+=	__X=${EXT_COMP}
+.endif
 
 # bootstrap-tools stage
 BMAKEENV=	INSTALL="sh ${.CURDIR}/tools/install.sh" \
@@ -521,7 +524,7 @@ WMAKE_TGTS=
 WMAKE_TGTS+=	_worldtmp _legacy _bootstrap-tools
 .endif
 WMAKE_TGTS+=	_cleanobj _obj _build-tools
-.if !defined(SUBDIR_OVERRIDE)
+.if !defined(SUBDIR_OVERRIDE) && !defined(EXT_COMP)
 WMAKE_TGTS+=	_cross-tools
 .endif
 WMAKE_TGTS+=	_includes _libraries _depend everything
@@ -1035,7 +1038,7 @@ _gensnmptree=	usr.sbin/bsnmpd/gensnmptre
 .endif
 
 .if ${MK_RESCUE} != "no" && \
-    ${BOOTSTRAPPING} < 700026
+    (${BOOTSTRAPPING} < 700026 || defined(EXT_COMP))
 _crunchgen=	usr.sbin/crunch/crunchgen
 .endif
 

Modified: user/imp/extern_cc/contrib/binutils/bfd/config.bfd
==============================================================================
--- user/imp/extern_cc/contrib/binutils/bfd/config.bfd	Sat Apr 21 16:07:11 2012	(r234547)
+++ user/imp/extern_cc/contrib/binutils/bfd/config.bfd	Sat Apr 21 16:27:50 2012	(r234548)
@@ -277,6 +277,14 @@ case "${targ}" in
     targ_defvec=bfd_elf32_bigarm_vec
     targ_selvecs=bfd_elf32_littlearm_vec
     ;;
+  armv6eb-*-freebsd*)
+    targ_defvec=bfd_elf32_bigarm_vec
+    targ_selvecs=bfd_elf32_littlearm_vec
+    ;;
+  armv6-*-freebsd*)
+    targ_defvec=bfd_elf32_littlearm_vec
+    targ_selvecs=bfd_elf32_bigarm_vec
+    ;;
   arm-*-elf | arm-*-freebsd* | arm*-*-linux-* | arm*-*-conix* | \
   arm*-*-uclinux* | arm-*-kfreebsd*-gnu | \
   arm*-*-eabi* )

Modified: user/imp/extern_cc/contrib/binutils/config.sub
==============================================================================
--- user/imp/extern_cc/contrib/binutils/config.sub	Sat Apr 21 16:07:11 2012	(r234547)
+++ user/imp/extern_cc/contrib/binutils/config.sub	Sat Apr 21 16:27:50 2012	(r234548)
@@ -241,7 +241,7 @@ case $basic_machine in
 	| alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \
 	| alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \
 	| am33_2.0 \
-	| arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr | avr32 \
+	| arc | arm | arm[bl]e | arme[lb] | armv[23456] | armv[345][lb] | avr | avr32 \
 	| bfin \
 	| c4x | clipper \
 	| d10v | d30v | dlx | dsp16xx \

Modified: user/imp/extern_cc/gnu/usr.bin/binutils/Makefile.inc0
==============================================================================
--- user/imp/extern_cc/gnu/usr.bin/binutils/Makefile.inc0	Sat Apr 21 16:07:11 2012	(r234547)
+++ user/imp/extern_cc/gnu/usr.bin/binutils/Makefile.inc0	Sat Apr 21 16:27:50 2012	(r234548)
@@ -7,7 +7,7 @@
 VERSION=	"2.17.50 [FreeBSD] 2007-07-03"
 
 .if defined(TARGET_ARCH)
-TARGET_CPUARCH=${TARGET_ARCH:C/mips(n32|64)?(el)?/mips/:C/armeb/arm/:C/powerpc64/powerpc/}
+TARGET_CPUARCH=${TARGET_ARCH:C/mips(n32|64)?(el)?/mips/:C/arm(v6)?(eb)?/arm/:C/powerpc64/powerpc/}
 .else
 TARGET_CPUARCH=${MACHINE_CPUARCH}
 .endif
@@ -16,7 +16,7 @@ TARGET_VENDOR?=	unknown
 TARGET_OS?=	freebsd
 BINUTILS_ARCH=${TARGET_ARCH:C/amd64/x86_64/}
 TARGET_TUPLE?=	${BINUTILS_ARCH}-${TARGET_VENDOR}-${TARGET_OS}
-.if ${TARGET_ARCH} == "armeb" || \
+.if ${TARGET_ARCH} == "armeb" || ${TARGET_ARCH} == "armv6eb" || \
 	(${TARGET_CPUARCH} == "mips" && ${TARGET_ARCH:Mmips*el} == "")
 TARGET_BIG_ENDIAN=t
 .endif

Modified: user/imp/extern_cc/gnu/usr.bin/binutils/as/Makefile
==============================================================================
--- user/imp/extern_cc/gnu/usr.bin/binutils/as/Makefile	Sat Apr 21 16:07:11 2012	(r234547)
+++ user/imp/extern_cc/gnu/usr.bin/binutils/as/Makefile	Sat Apr 21 16:27:50 2012	(r234548)
@@ -41,6 +41,10 @@ SRCS+=	app.c \
 # DEO: why not used?
 #SRCS+=	itbl-ops.c
 
+.if ${TARGET_ARCH} == "armv6" || ${TARGET_ARCH} == "armv6eb"
+CFLAGS+=	-DCPU_DEFAULT=ARM_ARCH_V6
+.endif
+
 .if ${TARGET_CPUARCH} == "mips"
 SRCS+=	itbl-ops.c itbl-parse.y itbl-lex.l
 .if ${TARGET_ARCH:Mmips64*} != ""

Modified: user/imp/extern_cc/gnu/usr.bin/binutils/ld/Makefile.arm
==============================================================================
--- user/imp/extern_cc/gnu/usr.bin/binutils/ld/Makefile.arm	Sat Apr 21 16:07:11 2012	(r234547)
+++ user/imp/extern_cc/gnu/usr.bin/binutils/ld/Makefile.arm	Sat Apr 21 16:27:50 2012	(r234548)
@@ -1,6 +1,6 @@
 # $FreeBSD$
 
-.if ${TARGET_ARCH} == "armeb"
+.if ${TARGET_ARCH} == "armeb" || ${TARGET_ARCH} == "armv6eb"
 NATIVE_EMULATION= armelfb_fbsd
 .else
 NATIVE_EMULATION= armelf_fbsd

Modified: user/imp/extern_cc/gnu/usr.bin/binutils/libbfd/Makefile.arm
==============================================================================
--- user/imp/extern_cc/gnu/usr.bin/binutils/libbfd/Makefile.arm	Sat Apr 21 16:07:11 2012	(r234547)
+++ user/imp/extern_cc/gnu/usr.bin/binutils/libbfd/Makefile.arm	Sat Apr 21 16:27:50 2012	(r234548)
@@ -1,6 +1,6 @@
 # $FreeBSD$
 
-.if ${TARGET_ARCH} == "armeb"
+.if ${TARGET_ARCH} == "armeb" || ${TARGET_ARCH} == "armv6eb"
 DEFAULT_VECTOR=	bfd_elf32_bigarm_vec
 .else
 DEFAULT_VECTOR=	bfd_elf32_littlearm_vec
@@ -14,7 +14,7 @@ SRCS+=	cpu-arm.c \
 	elflink.c
 
 VECS+=	${DEFAULT_VECTOR}
-.if ${TARGET_ARCH} == "armeb"
+.if ${TARGET_ARCH} == "armeb" || ${TARGET_ARCH} == "armv6eb"
 VECS+=	bfd_elf32_littlearm_vec
 .else
 VECS+=	bfd_elf32_bigarm_vec

Modified: user/imp/extern_cc/gnu/usr.bin/cc/Makefile.inc
==============================================================================
--- user/imp/extern_cc/gnu/usr.bin/cc/Makefile.inc	Sat Apr 21 16:07:11 2012	(r234547)
+++ user/imp/extern_cc/gnu/usr.bin/cc/Makefile.inc	Sat Apr 21 16:27:50 2012	(r234548)
@@ -26,7 +26,7 @@ CSTD?=	gnu89
 CFLAGS+=	-DCROSS_COMPILE
 .endif
 
-.if ${TARGET_ARCH} == "armeb"
+.if ${TARGET_ARCH} == "armeb" || ${TARGET_ARCH} == "armv6eb"
 CFLAGS += -DTARGET_ENDIAN_DEFAULT=MASK_BIG_END
 .endif
 

Modified: user/imp/extern_cc/gnu/usr.bin/cc/Makefile.tgt
==============================================================================
--- user/imp/extern_cc/gnu/usr.bin/cc/Makefile.tgt	Sat Apr 21 16:07:11 2012	(r234547)
+++ user/imp/extern_cc/gnu/usr.bin/cc/Makefile.tgt	Sat Apr 21 16:27:50 2012	(r234548)
@@ -4,7 +4,7 @@
 # MACHINE_CPUARCH, but there's no easy way to export make functions...
 
 .if defined(TARGET_ARCH)
-TARGET_CPUARCH=${TARGET_ARCH:C/mips(n32|64)?(el)?/mips/:C/armeb/arm/:C/powerpc64/powerpc/}
+TARGET_CPUARCH=${TARGET_ARCH:C/mips(n32|64)?(el)?/mips/:C/arm(v6)?(eb)?/arm/:C/powerpc64/powerpc/}
 .else
 TARGET_CPUARCH=${MACHINE_CPUARCH}
 .endif
@@ -17,7 +17,7 @@ TARGET_CPU_DEFAULT= MASK_GNU_AS|MASK_GNU
 .if ${TARGET_ARCH} == "sparc64"
 TARGET_CPU_DEFAULT= TARGET_CPU_ultrasparc
 .endif
-.if ${TARGET_ARCH} == "armeb" || \
+.if ${TARGET_ARCH} == "armeb" || ${TARGET_ARCH} == "armv6eb" || \
 	(${TARGET_CPUARCH} == "mips" && ${TARGET_ARCH:Mmips*el} == "")
 TARGET_BIG_ENDIAN=t
 .endif

Modified: user/imp/extern_cc/gnu/usr.bin/gdb/Makefile.inc
==============================================================================
--- user/imp/extern_cc/gnu/usr.bin/gdb/Makefile.inc	Sat Apr 21 16:07:11 2012	(r234547)
+++ user/imp/extern_cc/gnu/usr.bin/gdb/Makefile.inc	Sat Apr 21 16:27:50 2012	(r234548)
@@ -20,7 +20,7 @@ OBJ_GDB= ${OBJ_ROOT}/gdb
 # MACHINE_CPUARCH, but there's no easy way to export make functions...
 
 .if defined(TARGET_ARCH)
-TARGET_CPUARCH=${TARGET_ARCH:C/mips(n32|64)?(el)?/mips/:C/armeb/arm/:C/powerpc64/powerpc/}
+TARGET_CPUARCH=${TARGET_ARCH:C/mips(n32|64)?(el)?/mips/:C/arm(v6)?(eb)?/arm/:C/powerpc64/powerpc/}
 .else
 TARGET_CPUARCH=${MACHINE_CPUARCH}
 .endif

Modified: user/imp/extern_cc/share/mk/bsd.endian.mk
==============================================================================
--- user/imp/extern_cc/share/mk/bsd.endian.mk	Sat Apr 21 16:07:11 2012	(r234547)
+++ user/imp/extern_cc/share/mk/bsd.endian.mk	Sat Apr 21 16:27:50 2012	(r234548)
@@ -4,12 +4,14 @@
     ${MACHINE_ARCH} == "i386" || \
     ${MACHINE_ARCH} == "ia64" || \
     ${MACHINE_ARCH} == "arm"  || \
+    ${MACHINE_ARCH} == "armv6"  || \
     ${MACHINE_ARCH:Mmips*el} != ""
 TARGET_ENDIANNESS= 1234
 .elif ${MACHINE_ARCH} == "powerpc" || \
     ${MACHINE_ARCH} == "powerpc64" || \
     ${MACHINE_ARCH} == "sparc64" || \
     ${MACHINE_ARCH} == "armeb" || \
+    ${MACHINE_ARCH} == "armv6eb" || \
     ${MACHINE_ARCH:Mmips*} != ""
 TARGET_ENDIANNESS= 4321
 .endif

Modified: user/imp/extern_cc/share/mk/sys.mk
==============================================================================
--- user/imp/extern_cc/share/mk/sys.mk	Sat Apr 21 16:07:11 2012	(r234547)
+++ user/imp/extern_cc/share/mk/sys.mk	Sat Apr 21 16:27:50 2012	(r234548)
@@ -13,7 +13,7 @@ unix		?=	We run FreeBSD, not UNIX.
 # and/or endian.  This is called MACHINE_CPU in NetBSD, but that's used
 # for something different in FreeBSD.
 #
-MACHINE_CPUARCH=${MACHINE_ARCH:C/mips(n32|64)?(el)?/mips/:C/armeb/arm/:C/powerpc64/powerpc/}
+MACHINE_CPUARCH=${MACHINE_ARCH:C/mips(n32|64)?(el)?/mips/:C/arm(v6)?(eb)?/arm/:C/powerpc64/powerpc/}
 .endif
 
 # If the special target .POSIX appears (without prerequisites or
@@ -31,23 +31,23 @@ MACHINE_CPUARCH=${MACHINE_ARCH:C/mips(n3
 .SUFFIXES:	.out .a .ln .o .c .cc .cpp .cxx .C .m .F .f .e .r .y .l .S .asm .s .cl .p .h .sh
 .endif
 
-AR		?=	ar
+AR		?=	${__X}ar
 .if defined(%POSIX)
 ARFLAGS		?=	-rv
 .else
 ARFLAGS		?=	rl
 .endif
-RANLIB		?=	ranlib
+RANLIB		?=	${__X}ranlib
 
-AS		?=	as
+AS		?=	${__X}as
 AFLAGS		?=
 ACFLAGS		?=
 
 .if defined(%POSIX)
-CC		?=	c89
+CC		?=	${__X}c89
 CFLAGS		?=	-O
 .else
-CC		?=	cc
+CC		?=	${__X}cc
 .if ${MACHINE_CPUARCH} == "arm" || ${MACHINE_CPUARCH} == "mips"
 CFLAGS		?=	-O -pipe
 .else
@@ -73,11 +73,11 @@ CTFFLAGS	+=	-g
 #CFLAGS		+=	-g
 .endif
 
-CXX		?=	c++
+CXX		?=	${__X}c++
 CXXFLAGS	?=	${CFLAGS:N-std=*:N-Wnested-externs:N-W*-prototypes:N-Wno-pointer-sign:N-Wold-style-definition}
 PO_CXXFLAGS	?=	${CXXFLAGS}
 
-CPP		?=	cpp
+CPP		?=	${__X}cpp
 
 .if empty(.MAKEFLAGS:M-s)
 ECHO		?=	echo
@@ -111,7 +111,7 @@ INSTALL		?=	install
 LEX		?=	lex
 LFLAGS		?=
 
-LD		?=	ld
+LD		?=	${__X}ld
 LDFLAGS		?=
 
 LINT		?=	lint
@@ -123,6 +123,10 @@ LINTLIBFLAGS	?=	-cghapbxu -C ${LIB}
 
 MAKE		?=	make
 
+.if !defined(%POSIX)
+NM		?=	${__X}nm
+.endif
+
 OBJC		?=	cc
 OBJCFLAGS	?=	${OBJCINCLUDES} ${CFLAGS} -Wno-import
 

Modified: user/imp/extern_cc/sys/conf/kern.pre.mk
==============================================================================
--- user/imp/extern_cc/sys/conf/kern.pre.mk	Sat Apr 21 16:07:11 2012	(r234547)
+++ user/imp/extern_cc/sys/conf/kern.pre.mk	Sat Apr 21 16:27:50 2012	(r234548)
@@ -6,7 +6,7 @@
 .include <bsd.own.mk>
 
 # backwards compat option for older systems.
-MACHINE_CPUARCH?=${MACHINE_ARCH:C/mips(n32|64)?(el)?/mips/:C/armeb/arm/:C/powerpc64/powerpc/}
+MACHINE_CPUARCH?=${MACHINE_ARCH:C/mips(n32|64)?(el)?/mips/:C/arm(v6)?(eb)?/arm/:C/powerpc64/powerpc/}
 
 # Can be overridden by makeoptions or /etc/make.conf
 KERNEL_KO?=	kernel
@@ -19,9 +19,9 @@ M=		${MACHINE_CPUARCH}
 
 AWK?=		awk
 LINT?=		lint
-NM?=		nm
-OBJCOPY?=	objcopy
-SIZE?=		size
+NM?=		${__X}nm
+OBJCOPY?=	${__X}objcopy
+SIZE?=		${__X}size
 
 .if defined(DEBUG)
 _MINUS_O=	-O

Modified: user/imp/extern_cc/sys/conf/kmod.mk
==============================================================================
--- user/imp/extern_cc/sys/conf/kmod.mk	Sat Apr 21 16:07:11 2012	(r234547)
+++ user/imp/extern_cc/sys/conf/kmod.mk	Sat Apr 21 16:27:50 2012	(r234548)
@@ -61,7 +61,7 @@
 #
 
 # backwards compat option for older systems.
-MACHINE_CPUARCH?=${MACHINE_ARCH:C/mips(n32|64)?(el)?/mips/:C/armeb/arm/:C/powerpc64/powerpc/}
+MACHINE_CPUARCH?=${MACHINE_ARCH:C/mips(n32|64)?(el)?/mips/:C/arm(v6)?(eb)?/arm/:C/powerpc64/powerpc/}
 
 AWK?=		awk
 KMODLOAD?=	/sbin/kldload

Modified: user/imp/extern_cc/usr.bin/xlint/Makefile.inc
==============================================================================
--- user/imp/extern_cc/usr.bin/xlint/Makefile.inc	Sat Apr 21 16:07:11 2012	(r234547)
+++ user/imp/extern_cc/usr.bin/xlint/Makefile.inc	Sat Apr 21 16:27:50 2012	(r234548)
@@ -8,7 +8,7 @@ WARNS?=		0
 # These assignments duplicate much of the functionality of
 # MACHINE_CPUARCH, but there's no easy way to export make functions...
 .if defined(TARGET_ARCH)
-TARGET_CPUARCH=	${TARGET_ARCH:C/mips(n32|64)?(el)?/mips/:C/armeb/arm/}
+TARGET_CPUARCH=	${TARGET_ARCH:C/mips(n32|64)?(el)?/mips/:C/arm(v6)?(eb)?/arm/}
 .else
 TARGET_CPUARCH=	${MACHINE_CPUARCH}
 TARGET_ARCH=	${MACHINE_ARCH}

Modified: user/imp/extern_cc/usr.sbin/crunch/crunchgen/crunchgen.c
==============================================================================
--- user/imp/extern_cc/usr.sbin/crunch/crunchgen/crunchgen.c	Sat Apr 21 16:07:11 2012	(r234547)
+++ user/imp/extern_cc/usr.sbin/crunch/crunchgen/crunchgen.c	Sat Apr 21 16:27:50 2012	(r234548)
@@ -1078,7 +1078,7 @@ void prog_makefile_rules(FILE *outmk, pr
 		fprintf(outmk, " $(%s_LIBS)", p->ident);
 
 	fprintf(outmk, "\n");
-	fprintf(outmk, "\tld -dc -r -o %s.lo %s_stub.o $(%s_OBJPATHS)",
+	fprintf(outmk, "\t${LD} -dc -r -o %s.lo %s_stub.o $(%s_OBJPATHS)",
 	    p->name, p->name, p->ident);
 	if (p->libs)
 		fprintf(outmk, " $(%s_LIBS)", p->ident);


More information about the svn-src-user mailing list