svn commit: r353523 - head
John Baldwin
jhb at FreeBSD.org
Mon Oct 14 21:22:43 UTC 2019
Author: jhb
Date: Mon Oct 14 21:22:42 2019
New Revision: 353523
URL: https://svnweb.freebsd.org/changeset/base/353523
Log:
Disconnect powerpc from the default tinderbox for now.
The wrong toolchain was set in MAKE_PARAMS_powerpc, however, there are
some other issues preventing powerpc from building in tinderbox:
1) There is no powerpc-gcc and powerpc-xtoolchain-gcc port that
provides an external 32-bit powerpc GCC toolchain.
2) On other targets, the same toolchain can build all of the
architectures for a given target. MIPS achieves this by always
setting -mabi and -EB/-EL explicitly instead of relying on the
compiler's default architecture. PowerPC might be able to do the
same thing, but as of today, powerpc-gcc would be required for
powerpc and powerpcspe and powerpc64-gcc would be required for
powerpc64. Our existing logic for make universe does not permit
per-MACHINE_ARCH toolchains.
I tried hacking TARGETS_powerpc to only include powerpc64 when
powerpc64-gcc was present, and while that skipped the 32-bit worlds,
it tried to build all the kernels.
Reported by: jeff
Discussed with: imp
Modified:
head/Makefile
Modified: head/Makefile
==============================================================================
--- head/Makefile Mon Oct 14 21:18:37 2019 (r353522)
+++ head/Makefile Mon Oct 14 21:22:42 2019 (r353523)
@@ -485,12 +485,15 @@ worlds: .PHONY
.if make(universe) || make(universe_kernels) || make(tinderbox) || \
make(targets) || make(universe-toolchain)
#
-# By default, build only the known-good clang-supporting platforms.
-# If MAKE_OBSOLETE_GCC is defined, built all the old GCC architectures.
+# Always build architectures supported by clang. Only build architectures
+# only supported by GCC if a suitable toolchain is present or enabled.
# In all cases, if the user specifies TARGETS on the command line,
# honor that most of all.
#
-_OBSOLETE_GCC_TARGETS=mips powerpc sparc64
+_OBSOLETE_GCC_TARGETS=mips sparc64
+.if defined(MAKE_OBSOLETE_GCC)
+_OBSOLETE_GCC_TARGETS+=powerpc
+.endif
TARGETS?=amd64 arm arm64 i386 riscv ${_OBSOLETE_GCC_TARGETS}
_UNIVERSE_TARGETS= ${TARGETS}
TARGET_ARCHES_arm?= arm armv6 armv7
@@ -507,7 +510,7 @@ MAKE_PARAMS_riscv?= CROSS_TOOLCHAIN=riscv64-gcc
.if !defined(MAKE_OBSOLETE_GCC)
OBSOLETE_GCC_TARGETS=${_OBSOLETE_GCC_TARGETS}
MAKE_PARAMS_mips?= CROSS_TOOLCHAIN=mips-gcc
-MAKE_PARAMS_powerpc?= CROSS_TOOLCHAIN=powerpc-gcc
+MAKE_PARAMS_powerpc?= CROSS_TOOLCHAIN=powerpc64-gcc
MAKE_PARAMS_sparc64?= CROSS_TOOLCHAIN=sparc64-gcc
.endif
More information about the svn-src-head
mailing list