Changeset View
Changeset View
Standalone View
Standalone View
share/mk/local.meta.sys.mk
Show All 14 Lines | |||||
# from src/Makefile (for universe) | # from src/Makefile (for universe) | ||||
TARGET_ARCHES_arm?= arm armv6 armv7 | TARGET_ARCHES_arm?= arm armv6 armv7 | ||||
TARGET_ARCHES_arm64?= aarch64 | TARGET_ARCHES_arm64?= aarch64 | ||||
TARGET_ARCHES_mips?= mipsel mips mips64el mips64 mipsn32 mipsn32el | TARGET_ARCHES_mips?= mipsel mips mips64el mips64 mipsn32 mipsn32el | ||||
TARGET_ARCHES_powerpc?= powerpc powerpc64 powerpcspe | TARGET_ARCHES_powerpc?= powerpc powerpc64 powerpcspe | ||||
TARGET_ARCHES_riscv?= riscv64 riscv64sf | TARGET_ARCHES_riscv?= riscv64 riscv64sf | ||||
# Set target-specific linker emulation name. (from sys/conf/kern.mk) | |||||
LD_EMULATION_aarch64= aarch64fbsd | |||||
LD_EMULATION_amd64= elf_x86_64_fbsd | |||||
LD_EMULATION_arm= armelf_fbsd | |||||
LD_EMULATION_armv6= armelf_fbsd | |||||
LD_EMULATION_armv7= armelf_fbsd | |||||
LD_EMULATION_i386= elf_i386_fbsd | |||||
LD_EMULATION_mips= elf32btsmip_fbsd | |||||
LD_EMULATION_mipshf= elf32btsmip_fbsd | |||||
LD_EMULATION_mips64= elf64btsmip_fbsd | |||||
LD_EMULATION_mips64hf= elf64btsmip_fbsd | |||||
LD_EMULATION_mipsel= elf32ltsmip_fbsd | |||||
LD_EMULATION_mipselhf= elf32ltsmip_fbsd | |||||
LD_EMULATION_mips64el= elf64ltsmip_fbsd | |||||
LD_EMULATION_mips64elhf=elf64ltsmip_fbsd | |||||
LD_EMULATION_mipsn32= elf32btsmipn32_fbsd | |||||
LD_EMULATION_mipsn32el= elf32ltsmipn32_fbsd | |||||
LD_EMULATION_powerpc= elf32ppc_fbsd | |||||
LD_EMULATION_powerpcspe=elf32ppc_fbsd | |||||
LD_EMULATION_powerpc64= elf64ppc_fbsd | |||||
LD_EMULATION_riscv64= elf64lriscv_fbsd | |||||
LD_EMULATION_sparc64= elf64_sparc_fbsd | |||||
LD_EMULATION=${LD_EMULATION_${MACHINE_ARCH}} | |||||
imp: any reason we can't relocate this to a common file? I hate having long lists like this in… | |||||
sjgUnsubmitted Not Done Inline ActionsAgreed, got a name suggestion? sjg: Agreed, got a name suggestion? | |||||
# some corner cases | # some corner cases | ||||
BOOT_MACHINE_DIR.amd64 = boot/i386 | BOOT_MACHINE_DIR.amd64 = boot/i386 | ||||
MACHINE_ARCH.host = ${_HOST_ARCH} | MACHINE_ARCH.host = ${_HOST_ARCH} | ||||
# the list of machines we support | # the list of machines we support | ||||
ALL_MACHINE_LIST?= amd64 arm arm64 i386 mips powerpc riscv sparc64 | ALL_MACHINE_LIST?= amd64 arm arm64 i386 mips powerpc riscv sparc64 | ||||
.for m in ${ALL_MACHINE_LIST:O:u} | .for m in ${ALL_MACHINE_LIST:O:u} | ||||
MACHINE_ARCH_LIST.$m?= ${TARGET_ARCHES_${m}:U$m} | MACHINE_ARCH_LIST.$m?= ${TARGET_ARCHES_${m}:U$m} | ||||
▲ Show 20 Lines • Show All 213 Lines • ▼ Show 20 Lines | |||||
# cross-building | # cross-building | ||||
.if !defined(FREEBSD_REVISION) | .if !defined(FREEBSD_REVISION) | ||||
FREEBSD_REVISION!= sed -n '/^REVISION=/{s,.*=,,;s,",,g;p; }' ${SRCTOP}/sys/conf/newvers.sh | FREEBSD_REVISION!= sed -n '/^REVISION=/{s,.*=,,;s,",,g;p; }' ${SRCTOP}/sys/conf/newvers.sh | ||||
.export FREEBSD_REVISION | .export FREEBSD_REVISION | ||||
.endif | .endif | ||||
CROSS_TARGET_FLAGS= -target ${MACHINE_ARCH}-unknown-freebsd${FREEBSD_REVISION} | CROSS_TARGET_FLAGS= -target ${MACHINE_ARCH}-unknown-freebsd${FREEBSD_REVISION} | ||||
CFLAGS+= ${CROSS_TARGET_FLAGS} | CFLAGS+= ${CROSS_TARGET_FLAGS} | ||||
ACFLAGS+= ${CROSS_TARGET_FLAGS} | ACFLAGS+= ${CROSS_TARGET_FLAGS} | ||||
LDFLAGS+= -Wl,-m -Wl,elf_${MACHINE_ARCH}_fbsd | LDFLAGS+= -Wl,-m -Wl,${LD_EMULATION} | ||||
.endif | .endif | ||||
META_MODE+= missing-meta=yes | META_MODE+= missing-meta=yes | ||||
.if empty(META_MODE:Mnofilemon) | .if empty(META_MODE:Mnofilemon) | ||||
META_MODE+= missing-filemon=yes | META_MODE+= missing-filemon=yes | ||||
.endif | .endif |
any reason we can't relocate this to a common file? I hate having long lists like this in multiple places.