]> xenbits.xensource.com Git - people/julieng/freebsd.git/commitdiff
Rework r287900 to keep arm64/aarch64 stable in the TARGETS list.
authorbdrewery <bdrewery@FreeBSD.org>
Thu, 17 Sep 2015 04:54:49 +0000 (04:54 +0000)
committerbdrewery <bdrewery@FreeBSD.org>
Thu, 17 Sep 2015 04:54:49 +0000 (04:54 +0000)
This is relevant for makeman using the 'make targets' output in src.conf(5).

This makes a _UNIVERSE_TARGETS that removes arm64 if the build
requirements are not met.

Makefile

index d9a66620b56002c81200229bff73064ae6a0fc63..7172ac577e0d63510bf781b92a60575e8ea6109b 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -381,26 +381,27 @@ kernel-toolchains:
 # existing system is.
 #
 .if make(universe) || make(universe_kernels) || make(tinderbox) || make(targets)
-# XXX Add arm64 to universe only if we have an external binutils installed.
-# It does not build with the in-tree linker.  Added to lower .for loops too.
-.if exists(/usr/local/aarch64-freebsd/bin/ld)
-UNIVERSE_arm64=arm64
-.elif empty(${TARGETS})
-universe: universe_arm64_skip
-universe_epilogue: universe_arm64_skip
-universe_arm64_skip: universe_prologue
-       @echo ">> arm64 skipped - install aarch64-binutils port or package to build"
-.endif
-TARGETS?=amd64 arm ${UNIVERSE_arm64} i386 mips pc98 powerpc sparc64
+TARGETS?=amd64 arm arm64 i386 mips pc98 powerpc sparc64
+_UNIVERSE_TARGETS=     ${TARGETS}
 TARGET_ARCHES_arm?=    arm armeb armv6 armv6hf
 TARGET_ARCHES_arm64?=  aarch64
 TARGET_ARCHES_mips?=   mipsel mips mips64el mips64 mipsn32
 TARGET_ARCHES_powerpc?=        powerpc powerpc64
 TARGET_ARCHES_pc98?=   i386
-.for target in ${TARGETS} arm64
+.for target in ${TARGETS}
 TARGET_ARCHES_${target}?= ${target}
 .endfor
 
+# XXX Add arm64 to universe only if we have an external binutils installed.
+# It does not build with the in-tree linker.
+.if !exists(/usr/local/aarch64-freebsd/bin/ld) && empty(${TARGETS})
+_UNIVERSE_TARGETS:= ${_UNIVERSE_TARGETS:Narm64}
+universe: universe_arm64_skip
+universe_epilogue: universe_arm64_skip
+universe_arm64_skip: universe_prologue
+       @echo ">> arm64 skipped - install aarch64-binutils port or package to build"
+.endif
+
 .if defined(UNIVERSE_TARGET)
 MAKE_JUST_WORLDS=      YES
 .else
@@ -410,7 +411,7 @@ KERNSRCDIR?=                ${.CURDIR}/sys
 
 targets:       .PHONY
        @echo "Supported TARGET/TARGET_ARCH pairs for world and kernel targets"
-.for target in ${TARGETS} arm64
+.for target in ${TARGETS}
 .for target_arch in ${TARGET_ARCHES_${target}}
        @echo "    ${target}/${target_arch}"
 .endfor
@@ -432,7 +433,7 @@ universe_prologue:
 .if defined(DOING_TINDERBOX)
        @rm -f ${FAILFILE}
 .endif
-.for target in ${TARGETS}
+.for target in ${_UNIVERSE_TARGETS}
 universe: universe_${target}
 universe_epilogue: universe_${target}
 universe_${target}: universe_${target}_prologue