Page MenuHomeFreeBSD

D19237.id62586.diff
No OneTemporary

D19237.id62586.diff

Index: Makefile.inc1
===================================================================
--- Makefile.inc1
+++ Makefile.inc1
@@ -128,10 +128,25 @@
TARGET_ABI= gnueabi
.endif
.endif
-MACHINE_ABI?= unknown
-MACHINE_TRIPLE?=${MACHINE_ARCH:S/amd64/x86_64/:C/hf$//:S/mipsn32/mips64/}-${MACHINE_ABI}-freebsd13.0
-TARGET_ABI?= unknown
-TARGET_TRIPLE?= ${TARGET_ARCH:S/amd64/x86_64/:C/hf$//:S/mipsn32/mips64/}-${TARGET_ABI}-freebsd13.0
+MACHINE_VENDOR?= unknown
+TARGET_VENDOR?= unknown
+
+# The triple has the general format <arch><sub>-<vendor>-<sys>-<abi>
+# See https://clang.llvm.org/docs/CrossCompilation.html#target-triple
+.ifndef MACHINE_TRIPLE
+MACHINE_TRIPLE?=${MACHINE_ARCH:S/amd64/x86_64/:C/hf$//:S/mipsn32/mips64/}-${MACHINE_VENDOR}-freebsd${FREEBSD_REVISION}
+.ifdef MACHINE_ABI
+MACHINE_TRIPLE:=${MACHINE_TRIPLE}-${MACHINE_ABI}
+.endif
+.endif
+
+.ifndef TARGET_TRIPLE
+TARGET_TRIPLE?= ${TARGET_ARCH:S/amd64/x86_64/:C/hf$//:S/mipsn32/mips64/}-${TARGET_VENDOR}-freebsd${FREEBSD_REVISION}
+.ifdef TARGET_ABI
+TARGET_TRIPLE:=${TARGET_TRIPLE}-${TARGET_ABI}
+.endif
+.endif
+
KNOWN_ARCHES?= aarch64/arm64 \
amd64 \
arm \
@@ -534,10 +549,6 @@
.endif
# Set VERSION for CTFMERGE to use via the default CTFFLAGS=-L VERSION.
-.if !defined(_REVISION)
-_REVISION!= ${MAKE} -C ${SRCDIR}/release MK_AUTO_OBJ=no -V REVISION
-.export _REVISION
-.endif
.if !defined(_BRANCH)
_BRANCH!= ${MAKE} -C ${SRCDIR}/release MK_AUTO_OBJ=no -V BRANCH
.export _BRANCH
@@ -548,7 +559,7 @@
.export SRCRELDATE
.endif
.if !defined(VERSION)
-VERSION= FreeBSD ${_REVISION}-${_BRANCH:C/-p[0-9]+$//} ${TARGET_ARCH} ${SRCRELDATE}
+VERSION= FreeBSD ${FREEBSD_REVISION}-${_BRANCH:C/-p[0-9]+$//} ${TARGET_ARCH} ${SRCRELDATE}
.export VERSION
.endif
@@ -567,7 +578,7 @@
.elif ${_BRANCH:M*-p*}
EXTRA_REVISION= _${_BRANCH:C/.*-p([0-9]+$)/\1/}
.endif
-PKG_VERSION= ${_REVISION}${EXTRA_REVISION}
+PKG_VERSION= ${FREEBSD_REVISION}${EXTRA_REVISION}
.endif
.endif # !defined(PKG_VERSION)
@@ -1808,7 +1819,7 @@
package-pkg: .PHONY
rm -rf /tmp/ports.${TARGET} || :
- env ${WMAKEENV:Q} SRCDIR=${.CURDIR} PORTSDIR=${PORTSDIR} REVISION=${_REVISION} \
+ env ${WMAKEENV:Q} SRCDIR=${.CURDIR} PORTSDIR=${PORTSDIR} REVISION=${FREEBSD_REVISION} \
PKG_CMD=${PKG_CMD} PKG_VERSION=${PKG_VERSION} REPODIR=${REPODIR} \
WSTAGEDIR=${WSTAGEDIR} \
sh ${.CURDIR}/release/scripts/make-pkg-package.sh
@@ -3393,5 +3404,5 @@
ln -sf ../../${XDTP}/usr/bin/$$i \
../../../../usr/bin/${XDDIR}-$$i; \
ln -sf ../../${XDTP}/usr/bin/$$i \
- ../../../../usr/bin/${XDDIR}${_REVISION}-$$i; \
+ ../../../../usr/bin/${XDDIR}${FREEBSD_REVISION}-$$i; \
done
Index: Makefile.libcompat
===================================================================
--- Makefile.libcompat
+++ Makefile.libcompat
@@ -17,7 +17,7 @@
.if ${WANT_COMPILER_TYPE} == gcc || \
(defined(X_COMPILER_TYPE) && ${X_COMPILER_TYPE} == gcc)
.else
-LIB32CPUFLAGS+= -target x86_64-unknown-freebsd13.0
+LIB32CPUFLAGS+= -target x86_64-unknown-freebsd${FREEBSD_REVISION}
.endif
LIB32CPUFLAGS+= -m32
LIB32WMAKEENV= MACHINE=i386 MACHINE_ARCH=i386 \
@@ -49,9 +49,9 @@
.endif
.else
.if ${TARGET_ARCH:Mmips64el*} != ""
-LIB32CPUFLAGS= -target mipsel-unknown-freebsd13.0
+LIB32CPUFLAGS= -target mipsel-unknown-freebsd${FREEBSD_REVISION}
.else
-LIB32CPUFLAGS= -target mips-unknown-freebsd13.0
+LIB32CPUFLAGS= -target mips-unknown-freebsd${FREEBSD_REVISION}
.endif
.endif
LIB32CPUFLAGS+= -mabi=32
Index: lib/clang/llvm.build.mk
===================================================================
--- lib/clang/llvm.build.mk
+++ lib/clang/llvm.build.mk
@@ -1,6 +1,7 @@
# $FreeBSD$
.include <src.opts.mk>
+.include <meta.sys.mk>
.ifndef LLVM_SRCS
.error Please define LLVM_SRCS before including this file
@@ -10,6 +11,10 @@
.error Please define SRCDIR before including this file
.endif
+.ifndef FREEBSD_REVISION
+.error Please define FREEBSD_REVISION before including this file
+.endif
+
.PATH: ${LLVM_SRCS}/${SRCDIR}
CFLAGS+= -I${SRCTOP}/lib/clang/include
@@ -29,14 +34,16 @@
TARGET_ABI= -gnueabihf
.elif ${TARGET_ARCH:Marm*}
TARGET_ABI= -gnueabi
+.elif defined(TARGET_ABI)
+TARGET_ABI:= -${TARGET_ABI}
.else
TARGET_ABI=
.endif
+
VENDOR= unknown
-OS_VERSION= freebsd13.0
-LLVM_TARGET_TRIPLE?= ${TARGET_ARCH:C/amd64/x86_64/:C/arm64/aarch64/}-${VENDOR}-${OS_VERSION}${TARGET_ABI}
-LLVM_BUILD_TRIPLE?= ${BUILD_ARCH:C/amd64/x86_64/:C/arm64/aarch64/}-${VENDOR}-${OS_VERSION}
+LLVM_TARGET_TRIPLE?= ${TARGET_ARCH:C/amd64/x86_64/:C/arm64/aarch64/}-${VENDOR}-freebsd${FREEBSD_REVISION}${TARGET_ABI}
+LLVM_BUILD_TRIPLE?= ${BUILD_ARCH:C/amd64/x86_64/:C/arm64/aarch64/}-${VENDOR}-freebsd${FREEBSD_REVISION}
CFLAGS+= -DLLVM_DEFAULT_TARGET_TRIPLE=\"${LLVM_TARGET_TRIPLE}\"
CFLAGS+= -DLLVM_HOST_TRIPLE=\"${LLVM_BUILD_TRIPLE}\"
Index: share/mk/local.meta.sys.mk
===================================================================
--- share/mk/local.meta.sys.mk
+++ share/mk/local.meta.sys.mk
@@ -242,10 +242,6 @@
.if ${MACHINE:Nhost:Ncommon} != "" && ${MACHINE} != ${HOST_MACHINE}
# cross-building
-.if !defined(FREEBSD_REVISION)
-FREEBSD_REVISION!= sed -n '/^REVISION=/{s,.*=,,;s,",,g;p; }' ${SRCTOP}/sys/conf/newvers.sh
-.export FREEBSD_REVISION
-.endif
CROSS_TARGET_FLAGS= -target ${MACHINE_ARCH}-unknown-freebsd${FREEBSD_REVISION}
CFLAGS+= ${CROSS_TARGET_FLAGS}
ACFLAGS+= ${CROSS_TARGET_FLAGS}
Index: share/mk/src.sys.env.mk
===================================================================
--- share/mk/src.sys.env.mk
+++ share/mk/src.sys.env.mk
@@ -23,6 +23,11 @@
RELOBJTOP?= ${RELTOP}
RELSRCTOP?= ${RELTOP}
+.if !defined(FREEBSD_REVISION)
+FREEBSD_REVISION!= sed -n '/^REVISION=/{s,.*=,,;s,",,g;p; }' ${SRCTOP}/sys/conf/newvers.sh
+.export FREEBSD_REVISION
+.endif
+
# site customizations that do not depend on anything!
# Save MAKEOBJDIRPREFIX and don't let src-env.conf modify it.

File Metadata

Mime Type
text/plain
Expires
Fri, May 22, 9:47 PM (9 h, 24 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
33431784
Default Alt Text
D19237.id62586.diff (5 KB)

Event Timeline