Makefile*: remove powerpcspe

As reported on the freebsd-announce mailing list[1] FreeBSD is
continuing to retire 32-bit support.  Remove powerpcspe from build
infrastructure.

[1] https://lists.freebsd.org/archives/freebsd-announce/2024-February/000117.html

Signed-off-by: Minsoo Choo <minsoochoo0122@proton.me>
Reviewed by:	jhibbits, emaste
Pull request:	https://github.com/freebsd/freebsd-src/pull/1914
This commit is contained in:
Minsoo Choo 2025-12-02 22:57:23 -05:00 committed by Ed Maste
parent 0f937f171a
commit 94d1731e73
16 changed files with 14 additions and 43 deletions

View file

@ -537,7 +537,7 @@ packages update-packages: .PHONY
# Don't build rarely used, semi-supported architectures unless requested.
#
.if defined(EXTRA_TARGETS)
EXTRA_ARCHES_powerpc= powerpc powerpcspe
EXTRA_ARCHES_powerpc= powerpc
.endif
TARGETS?= ${TARGET_MACHINE_LIST}
_UNIVERSE_TARGETS= ${TARGETS}

View file

@ -151,7 +151,6 @@ KNOWN_ARCHES?= aarch64/arm64 \
powerpc \
powerpc64/powerpc \
powerpc64le/powerpc \
powerpcspe/powerpc \
riscv64/riscv
.if ${TARGET} == ${TARGET_ARCH}
@ -1705,7 +1704,6 @@ KERNCONF=${KERNFAST}
.endif
GENERIC_KERNCONF_SUFX_powerpc64= 64
GENERIC_KERNCONF_SUFX_powerpc64le= 64LE
GENERIC_KERNCONF_powerpcspe= MPC85XXSPE
GENERIC_KERNCONF?= ${GENERIC_KERNCONF_${TARGET_ARCH}:UGENERIC${GENERIC_KERNCONF_SUFX_${TARGET_ARCH}}}
INSTKERNNAME?= kernel

View file

@ -21,7 +21,7 @@ ACFLAGS+= -Wa,--noexecstack
ATOMIC_SRCS= opensolaris_atomic.c
.endif
.if ${MACHINE_ARCH} == "powerpc" || ${MACHINE_ARCH} == "powerpcspe"
.if ${MACHINE_ARCH} == "powerpc"
# Don't waste GOT entries on small data.
PICFLAG= -fPIC
.endif

View file

@ -318,7 +318,7 @@ LSUBDIRS+= dev/vmm
.endif
.endif
.if ${MACHINE_CPUARCH} == "powerpc" && ${MACHINE_ARCH} != "powerpcspe"
.if ${MACHINE_CPUARCH} == "powerpc"
_dev_powermac_nvram= dev/powermac_nvram
.endif

View file

@ -69,7 +69,7 @@ _libc_other_objects+=aeabi_unwind_cpp
.elif ${LIBC_ARCH} == "i386"
# i386 needs i386_set_gsbase for allocate_initial_tls()
_libsys_other_objects+=i386_set_gsbase
.elif ${LIBC_ARCH} == "powerpc" || ${LIBC_ARCH} == "powerpcspe"
.elif ${LIBC_ARCH} == "powerpc"
# ppc needs __syncicache and abs for reloc.c
_libc_other_objects+=syncicache abs
.elif ${LIBC_ARCH} == "powerpc64"

View file

@ -323,15 +323,10 @@ CFLAGS += -mfloat-abi=softfp
. endif
.endif
.if ${MACHINE_ARCH} == "powerpc" || ${MACHINE_ARCH} == "powerpcspe"
.if ${MACHINE_ARCH} == "powerpc"
LDFLAGS.bfd+= -Wl,--secure-plt
.endif
.if ${MACHINE_ARCH} == "powerpcspe"
CFLAGS += -mcpu=8548 -mspe
CFLAGS.gcc+= -mabi=spe -mfloat-gprs=double -Wa,-me500
.endif
.if ${MACHINE_CPUARCH} == "riscv"
CFLAGS += -march=rv64imafdc -mabi=lp64d
.endif

View file

@ -9,8 +9,7 @@ TARGET_ENDIANNESS= 1234
CAP_MKDB_ENDIAN= -l
LOCALEDEF_ENDIAN= -l
.elif ${MACHINE_ARCH} == "powerpc" || \
${MACHINE_ARCH} == "powerpc64" || \
${MACHINE_ARCH} == "powerpcspe"
${MACHINE_ARCH} == "powerpc64"
TARGET_ENDIANNESS= 4321
CAP_MKDB_ENDIAN= -b
LOCALEDEF_ENDIAN= -b

View file

@ -99,8 +99,7 @@ __DEFAULT_DEPENDENT_OPTIONS = \
# some memory-hungry workloads.
#
.if ${MACHINE_ARCH} == "armv7" \
|| ${MACHINE_ARCH} == "i386" || ${MACHINE_ARCH} == "powerpc" \
|| ${MACHINE_ARCH} == "powerpcspe"
|| ${MACHINE_ARCH} == "i386" || ${MACHINE_ARCH} == "powerpc"
__DEFAULT_NO_OPTIONS+= PIE
.else
__DEFAULT_YES_OPTIONS+=PIE

View file

@ -157,11 +157,6 @@ CFLAGS.gcc+= -mcmodel=medany
CFLAGS+= -msoft-float
.endif
# -msoft-float seems to be insufficient for powerpcspe
.if ${MACHINE_ARCH} == "powerpcspe"
CFLAGS+= -mno-spe
.endif
.if ${MACHINE_CPUARCH} == "i386" || (${MACHINE_CPUARCH} == "amd64" && ${DO32:U0} == 1)
CFLAGS+= -march=i386
CFLAGS.gcc+= -mpreferred-stack-boundary=2

View file

@ -32,11 +32,6 @@ LDSCRIPT_NAME?= ldscript.${MACHINE_ARCH}
INCLUDES+= -I$S/contrib/libfdt
.if "${MACHINE_ARCH}" == "powerpcspe"
# Force __SPE__, since the builtin will be removed later with -mno-spe
CFLAGS.gcc+= -mabi=spe -D__SPE__
CFLAGS.clang+= -mspe -D__SPE__ -m32
.endif
CFLAGS+= -msoft-float
CFLAGS.gcc+= -Wa,-many

View file

@ -205,10 +205,6 @@ CFLAGS+= -mno-altivec -msoft-float
INLINE_LIMIT?= 15000
.endif
.if ${MACHINE_ARCH} == "powerpcspe"
CFLAGS.gcc+= -mno-spe
.endif
#
# Use dot symbols (or, better, the V2 ELF ABI) on powerpc64 to make
# DDB happy. ELFv2, if available, has some other efficiency benefits.
@ -407,7 +403,6 @@ LD_EMULATION_arm=armelf_fbsd
LD_EMULATION_armv7=armelf_fbsd
LD_EMULATION_i386=elf_i386_fbsd
LD_EMULATION_powerpc= elf32ppc_fbsd
LD_EMULATION_powerpcspe= elf32ppc_fbsd
LD_EMULATION_powerpc64= elf64ppc_fbsd
LD_EMULATION_powerpc64le= elf64lppc_fbsd
LD_EMULATION_riscv64= elf64lriscv

View file

@ -223,7 +223,7 @@ ZFS_CFLAGS+= -D__x86_64 -DHAVE_SSE2 -DHAVE_SSSE3 -DHAVE_SSE4_1 -DHAVE_SSE4_2 \
.endif
.if ${MACHINE_ARCH} == "i386" || ${MACHINE_ARCH} == "powerpc" || \
${MACHINE_ARCH} == "powerpcspe" || ${MACHINE_ARCH} == "arm"
${MACHINE_ARCH} == "arm"
ZFS_CFLAGS+= -DBITS_PER_LONG=32
.else
ZFS_CFLAGS+= -DBITS_PER_LONG=64

View file

@ -651,8 +651,7 @@ _rtwnfw= rtwnfw
.endif
.if ${MK_SOURCELESS_UCODE} != "no" && ${MACHINE_CPUARCH} != "arm" && \
${MACHINE_ARCH} != "powerpc" && ${MACHINE_ARCH} != "powerpcspe" && \
${MACHINE_CPUARCH} != "riscv"
${MACHINE_ARCH} != "powerpc" && ${MACHINE_CPUARCH} != "riscv"
_cxgbe= cxgbe
.endif
@ -693,7 +692,7 @@ _sdhci_fdt= sdhci_fdt
.endif
# These rely on 64bit atomics
.if ${MACHINE_ARCH} != "powerpc" && ${MACHINE_ARCH} != "powerpcspe"
.if ${MACHINE_ARCH} != "powerpc"
_mps= mps
_mpr= mpr
.endif
@ -922,8 +921,7 @@ _ixl= ixl
_nvram= opal_nvram
.endif
.if ${MACHINE_CPUARCH} == "powerpc" && ${MACHINE_ARCH} != "powerpcspe"
# Don't build powermac_nvram for powerpcspe, it's never supported.
.if ${MACHINE_CPUARCH} == "powerpc"
_nvram+= powermac_nvram
.endif

View file

@ -45,7 +45,7 @@ CFLAGS+= -D__x86_64 -DHAVE_SSE2 -DHAVE_SSSE3 -DHAVE_SSE4_1 -DHAVE_SSE4_2 \
.endif
.if ${MACHINE_ARCH} == "i386" || ${MACHINE_ARCH} == "powerpc" || \
${MACHINE_ARCH} == "powerpcspe" || ${MACHINE_ARCH} == "arm"
${MACHINE_ARCH} == "arm"
CFLAGS+= -DBITS_PER_LONG=32
.else
CFLAGS+= -DBITS_PER_LONG=64
@ -175,7 +175,7 @@ SRCS+= acl_common.c \
.if ${MACHINE_ARCH} == "i386" || ${MACHINE_ARCH} == "powerpc" || \
${MACHINE_ARCH} == "powerpcspe" || ${MACHINE_ARCH} == "arm"
${MACHINE_ARCH} == "arm"
SRCS+= spl_atomic.c
.endif

View file

@ -9,8 +9,7 @@ TESTSDIR= ${TESTSBASE}/sys/kern
ATF_TESTS_C+= basic_signal
ATF_TESTS_C+= copy_file_range
.if ${MACHINE_ARCH} != "i386" && ${MACHINE_ARCH} != "powerpc" && \
${MACHINE_ARCH} != "powerpcspe"
.if ${MACHINE_ARCH} != "i386" && ${MACHINE_ARCH} != "powerpc"
# No support for atomic_load_64 on i386 or (32-bit) powerpc
ATF_TESTS_C+= kcov
.endif

View file

@ -1,3 +1 @@
.if ${MACHINE_ARCH} != "powerpcspe"
SUBDIR+= nvram
.endif