git: c6ae97c44d4d - main - sys: ${CFLAGS:N-flto} -> ${CFLAGS:N-flto*}

From: Warner Losh <imp_at_FreeBSD.org>
Date: Tue, 26 Dec 2023 23:55:40 UTC
The branch main has been updated by imp:

URL: https://cgit.FreeBSD.org/src/commit/?id=c6ae97c44d4dc0d90d20bec3235a6484912767a1

commit c6ae97c44d4dc0d90d20bec3235a6484912767a1
Author:     Alex Xu (Hello71) <alex_y_xu@yahoo.ca>
AuthorDate: 2023-12-26 23:24:53 +0000
Commit:     Warner Losh <imp@FreeBSD.org>
CommitDate: 2023-12-26 23:31:51 +0000

    sys: ${CFLAGS:N-flto} -> ${CFLAGS:N-flto*}
    
    For the same reason as the original https://reviews.freebsd.org/D9659:
    -flto=<N>, -flto=full, and -flto=thin also produce the GIMPLE/bitcode
    which is not supported by genassym, so filter those out as well.
    
    Signed-off-by: Alex Xu (Hello71) <alex_y_xu@yahoo.ca>
    Reviewed by: imp
    Pull Request: https://github.com/freebsd/freebsd-src/pull/898
---
 sys/conf/files.amd64         | 2 +-
 sys/conf/kern.post.mk        | 6 +++---
 sys/conf/kmod.mk             | 4 ++--
 sys/modules/linux/Makefile   | 2 +-
 sys/modules/linux64/Makefile | 2 +-
 sys/modules/vmm/Makefile     | 4 ++--
 6 files changed, 10 insertions(+), 10 deletions(-)

diff --git a/sys/conf/files.amd64 b/sys/conf/files.amd64
index dfbe278f0c46..de509e362b6d 100644
--- a/sys/conf/files.amd64
+++ b/sys/conf/files.amd64
@@ -25,7 +25,7 @@ elf-vdso32.so.o			optional	compat_freebsd32		\
 #
 ia32_genassym.o			standard				\
 	dependency 	"$S/compat/ia32/ia32_genassym.c offset.inc"		\
-	compile-with	"${CC} ${CFLAGS:N-flto:N-fno-common} -fcommon -c ${.IMPSRC}" \
+	compile-with	"${CC} ${CFLAGS:N-flto*:N-fno-common} -fcommon -c ${.IMPSRC}" \
 	no-obj no-implicit-rule						\
 	clean		"ia32_genassym.o"
 #
diff --git a/sys/conf/kern.post.mk b/sys/conf/kern.post.mk
index d2968b42f5ef..34877a01b7dd 100644
--- a/sys/conf/kern.post.mk
+++ b/sys/conf/kern.post.mk
@@ -245,20 +245,20 @@ offset.inc: $S/kern/genoffset.sh genoffset.o
 	NM='${NM}' NMFLAGS='${NMFLAGS}' sh $S/kern/genoffset.sh genoffset.o > ${.TARGET}
 
 genoffset.o: $S/kern/genoffset.c
-	${CC} -c ${CFLAGS:N-flto:N-fno-common} -fcommon $S/kern/genoffset.c
+	${CC} -c ${CFLAGS:N-flto*:N-fno-common} -fcommon $S/kern/genoffset.c
 
 # genoffset_test.o is not actually used for anything - the point of compiling it
 # is to exercise the CTASSERT that checks that the offsets in the offset.inc
 # _lite struct(s) match those in the original(s). 
 genoffset_test.o: $S/kern/genoffset.c offset.inc
-	${CC} -c ${CFLAGS:N-flto:N-fno-common} -fcommon -DOFFSET_TEST \
+	${CC} -c ${CFLAGS:N-flto*:N-fno-common} -fcommon -DOFFSET_TEST \
 	    $S/kern/genoffset.c -o ${.TARGET}
 
 assym.inc: $S/kern/genassym.sh genassym.o genoffset_test.o
 	NM='${NM}' NMFLAGS='${NMFLAGS}' sh $S/kern/genassym.sh genassym.o > ${.TARGET}
 
 genassym.o: $S/$M/$M/genassym.c  offset.inc
-	${CC} -c ${CFLAGS:N-flto:N-fno-common} -fcommon $S/$M/$M/genassym.c
+	${CC} -c ${CFLAGS:N-flto*:N-fno-common} -fcommon $S/$M/$M/genassym.c
 
 OBJS_DEPEND_GUESS+= opt_global.h
 genoffset.o genassym.o vers.o: opt_global.h
diff --git a/sys/conf/kmod.mk b/sys/conf/kmod.mk
index 5d4dcd4371bc..3dc83ce4c423 100644
--- a/sys/conf/kmod.mk
+++ b/sys/conf/kmod.mk
@@ -524,13 +524,13 @@ assym.inc: ${SYSDIR}/kern/genassym.sh
 	sh ${SYSDIR}/kern/genassym.sh genassym.o > ${.TARGET}
 genassym.o: ${SYSDIR}/${MACHINE}/${MACHINE}/genassym.c offset.inc
 genassym.o: ${SRCS:Mopt_*.h}
-	${CC} -c ${CFLAGS:N-flto:N-fno-common} -fcommon \
+	${CC} -c ${CFLAGS:N-flto*:N-fno-common} -fcommon \
 	    ${SYSDIR}/${MACHINE}/${MACHINE}/genassym.c
 offset.inc: ${SYSDIR}/kern/genoffset.sh genoffset.o
 	sh ${SYSDIR}/kern/genoffset.sh genoffset.o > ${.TARGET}
 genoffset.o: ${SYSDIR}/kern/genoffset.c
 genoffset.o: ${SRCS:Mopt_*.h}
-	${CC} -c ${CFLAGS:N-flto:N-fno-common} -fcommon \
+	${CC} -c ${CFLAGS:N-flto*:N-fno-common} -fcommon \
 	    ${SYSDIR}/kern/genoffset.c
 
 CLEANDEPENDFILES+=	${_ILINKS}
diff --git a/sys/modules/linux/Makefile b/sys/modules/linux/Makefile
index d1035445ccfb..88b3b8f5e123 100644
--- a/sys/modules/linux/Makefile
+++ b/sys/modules/linux/Makefile
@@ -135,7 +135,7 @@ linux${SFX}_support.o: linux${SFX}_support.S linux${SFX}_assym.h assym.inc
 .endif
 
 linux${SFX}_genassym.o: offset.inc
-	${CC} -c ${CFLAGS:N-flto:N-fno-common} -fcommon ${.IMPSRC}
+	${CC} -c ${CFLAGS:N-flto*:N-fno-common} -fcommon ${.IMPSRC}
 
 .if !defined(KERNBUILDDIR)
 .warning Building Linuxulator outside of a kernel does not make sense
diff --git a/sys/modules/linux64/Makefile b/sys/modules/linux64/Makefile
index 05fe76ba6a51..9ac1944ad1a9 100644
--- a/sys/modules/linux64/Makefile
+++ b/sys/modules/linux64/Makefile
@@ -101,7 +101,7 @@ linux_support.o: linux_support.S assym.inc linux_assym.h
 	    ${.ALLSRC:M*.S:u} -o ${.TARGET}
 
 linux_genassym.o: offset.inc
-	${CC} -c ${CFLAGS:N-flto:N-fno-common} -fcommon ${.IMPSRC}
+	${CC} -c ${CFLAGS:N-flto*:N-fno-common} -fcommon ${.IMPSRC}
 
 .if !defined(KERNBUILDDIR)
 .warning Building Linuxulator outside of a kernel does not make sense
diff --git a/sys/modules/vmm/Makefile b/sys/modules/vmm/Makefile
index 6bb78d055580..46909dad6c71 100644
--- a/sys/modules/vmm/Makefile
+++ b/sys/modules/vmm/Makefile
@@ -82,9 +82,9 @@ svm_support.o:
 	    ${.IMPSRC} -o ${.TARGET}
 
 vmx_genassym.o: offset.inc
-	${CC} -c ${CFLAGS:N-flto:N-fno-common} -fcommon ${.IMPSRC}
+	${CC} -c ${CFLAGS:N-flto*:N-fno-common} -fcommon ${.IMPSRC}
 
 svm_genassym.o: offset.inc
-	${CC} -c ${CFLAGS:N-flto:N-fno-common} -fcommon ${.IMPSRC}
+	${CC} -c ${CFLAGS:N-flto*:N-fno-common} -fcommon ${.IMPSRC}
 
 .include <bsd.kmod.mk>