Page Menu
Home
FreeBSD
Search
Configure Global Search
Log In
Files
F174934227
D21942.id63046.diff
No One
Temporary
Actions
View File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Flag For Later
Award Token
Size
2 KB
Referenced Files
None
Subscribers
None
D21942.id63046.diff
View Options
Index: Makefile
===================================================================
--- Makefile
+++ Makefile
@@ -4,8 +4,11 @@
# The user-driven targets are:
#
# universe - *Really* build *everything* (buildworld and
-# all kernels on all architectures). Define the
-# MAKE_JUST_KERNELS variable to only build kernels.
+# all kernels on all architectures). Define
+# MAKE_JUST_KERNELS to only build kernels,
+# MAKE_JUST_WORLDS to only build userland, and/or
+# MAKE_OBSOLETE_GCC to build architectures unsupported
+# by clang.
# tinderbox - Same as universe, but presents a list of failed build
# targets and exits with an error if there were any.
# buildworld - Rebuild *everything*, including glue to help do
@@ -481,7 +484,16 @@
#
.if make(universe) || make(universe_kernels) || make(tinderbox) || \
make(targets) || make(universe-toolchain)
-TARGETS?=amd64 arm arm64 i386 mips powerpc riscv sparc64
+#
+# By default, build only the known-good clang-supporting platforms.
+# If MAKE_OBSOLETE_GCC is defined, built all the old GCC architectures.
+# In all cases, if the user specifies TARGETS on the command line,
+# honor that most of all.
+#
+_DEFAULT_TARGETS=amd64 arm arm64 i386 riscv
+_OBSOLETE_GCC_TARGETS=mips powerpc sparc64
+_DEFAULT_TARGETS+=${_OBSOLETE_GCC_TARGETS}
+TARGETS?=${_DEFAULT_TARGETS}
_UNIVERSE_TARGETS= ${TARGETS}
TARGET_ARCHES_arm?= arm armv6 armv7
TARGET_ARCHES_arm64?= aarch64
@@ -494,11 +506,22 @@
.endfor
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_sparc64?= CROSS_TOOLCHAIN=sparc64-gcc
+.endif
# XXX Remove architectures only supported by external toolchain from universe
# if required toolchain packages are missing.
+# When MAKE_OBSOLETE_GCC is not defined, this effecitvely forces this for
+# the in-tree gcc 4.2.1 targets as well.
TOOLCHAINS_riscv= riscv64
-.for target in riscv
+TOOLCHAINS_mips= mips
+TOOLCHAINS_powerpc= powerpc
+TOOLCHAINS_sparc64= sparc64
+.for target in riscv ${OBSOLETE_GCC_TARGETS}
.if ${_UNIVERSE_TARGETS:M${target}}
.for toolchain in ${TOOLCHAINS_${target}}
.if !exists(/usr/local/share/toolchains/${toolchain}-gcc.mk)
File Metadata
Details
Attached
Mime Type
text/plain
Expires
Thu, Oct 8, 1:43 AM (3 h, 5 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
40392492
Default Alt Text
D21942.id63046.diff (2 KB)
Attached To
Mode
D21942: Don't compile old gcc 4.2.1 archs by default in universe/tinderbox.
Attached
Detach File
Event Timeline
Log In to Comment