diff options
authorWarner Losh <imp@FreeBSD.org>2020-01-02 03:25:26 +0000
committerWarner Losh <imp@FreeBSD.org>2020-01-02 03:25:26 +0000
commiteb4977bd0fb2765fd3a03f1f498eac1892e8f401 (patch)
parente8cdbb4815a458cf599de91ce0d161796c8fc2aa (diff)
Remove arm/arm as a valid target.
TARGET=arm now defaults to TARGET_ARCH=armv7 TARGET_ARCH=arm is no longer valid. Bump __FreeBSD_version to 1300073 Tested with make universe. Any stale LINT-V5 config files remaining in the tree will fail the universe build. However, LINT-V5 was removed in r355119. This retirement has been planned since last summer. The armv5 port is fragile: it works OK for some peeople, and fails badly for others. There's a number of subtle bugs in busdma, pmap and other MD parts of thee system that present themselves under load or in unusual circumstances (like fsck after a crash). stable/8, branched 10 years ago, was the last reliable release. Since the support burden is larger then the benefit, the consensus view is armv5 should be removed from the tree. Discussed with: arm@ mailing list and arm developer community.
Notes: svn path=/head/; revision=356263
4 files changed, 8 insertions, 4 deletions
diff --git a/Makefile b/Makefile
index 117ad2d785f0..840e3c5ce45a 100644
--- a/Makefile
+++ b/Makefile
@@ -276,7 +276,7 @@ MK_META_MODE= no
# exceptions.
.if !defined(TARGET_ARCH) && defined(TARGET)
# T->TA mapping is usually TARGET with arm64 the odd man out
-_TARGET_ARCH= ${TARGET:S/arm64/aarch64/:S/riscv/riscv64/}
+_TARGET_ARCH= ${TARGET:S/arm64/aarch64/:S/riscv/riscv64/:S/arm/armv7}
.elif !defined(TARGET) && defined(TARGET_ARCH) && \
# TA->T mapping is accidentally CPUARCH with aarch64 the odd man out
@@ -496,7 +496,6 @@ _OBSOLETE_GCC_TARGETS+=powerpc
TARGETS?=amd64 arm arm64 i386 riscv ${_OBSOLETE_GCC_TARGETS}
-# arm (armv5) excluded due to broken buildworld
TARGET_ARCHES_arm?= armv6 armv7
TARGET_ARCHES_arm64?= aarch64
TARGET_ARCHES_mips?= mipsel mips mips64el mips64 mipsn32 mipselhf mipshf mips64elhf mips64hf
diff --git a/Makefile.inc1 b/Makefile.inc1
index dfed06a2691e..2d2a5295ac22 100644
--- a/Makefile.inc1
+++ b/Makefile.inc1
@@ -134,7 +134,6 @@ TARGET_ABI?= unknown
TARGET_TRIPLE?= ${TARGET_ARCH:S/amd64/x86_64/:C/[hs]f$//:S/mipsn32/mips64/}-${TARGET_ABI}-freebsd13.0
KNOWN_ARCHES?= aarch64/arm64 \
amd64 \
- arm \
armv6/arm \
armv7/arm \
i386 \
diff --git a/UPDATING b/UPDATING
index 04c4418495b2..a5c3f4f4696a 100644
@@ -26,6 +26,12 @@ NOTE TO PEOPLE WHO THINK THAT FreeBSD 13.x IS SLOW:
disable the most expensive debugging functionality run
"ln -s 'abort:false,junk:false' /etc/malloc.conf".)
+ Support for armv5 has been disconnected and is being removed. The
+ machine combination MACHINE=arm MACHINE_ARCH=arm is no longer valid.
+ You must now use a MACHINE_ARCH of armv6 or armv7. The default
+ MACHINE_ARCH for MACHINE=arm is now armv7.
Clang/LLVM is now the default compiler for all powerpc architectures.
LLD is now the default linker for powerpc64. The change for powerpc64
diff --git a/sys/sys/param.h b/sys/sys/param.h
index 03b8ccd25840..bd22b0da0c42 100644
--- a/sys/sys/param.h
+++ b/sys/sys/param.h
@@ -60,7 +60,7 @@
* in the range 5 to 9.
#undef __FreeBSD_version
-#define __FreeBSD_version 1300072 /* Master, propagated to newvers */
+#define __FreeBSD_version 1300073 /* Master, propagated to newvers */
* __FreeBSD_kernel__ indicates that this system uses the kernel of FreeBSD,