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
 
_______________________________________________
svn-src-head@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"

Reply via email to