git: cf92377ad51e - main - devel/llvm18: fix plist issues with BE_NATIVE

From: Brooks Davis <brooks_at_FreeBSD.org>
Date: Tue, 06 Feb 2024 21:22:14 UTC
The branch main has been updated by brooks:

URL: https://cgit.FreeBSD.org/ports/commit/?id=cf92377ad51eb7e0dbe805e34f5089f7eec89044

commit cf92377ad51eb7e0dbe805e34f5089f7eec89044
Author:     Brooks Davis <brooks@FreeBSD.org>
AuthorDate: 2024-02-06 21:15:54 +0000
Commit:     Brooks Davis <brooks@FreeBSD.org>
CommitDate: 2024-02-06 21:21:31 +0000

    devel/llvm18: fix plist issues with BE_NATIVE
    
    Several flang modules depend on the PPC backend.
    
    Add a couple more arm headers that depend on the Arm or AArch64
    backends.
    
    Reported by:    Mark Millard <marklmi@yahoo.com>
---
 devel/llvm18/Makefile  | 17 ++++++++++++++---
 devel/llvm18/pkg-plist |  6 ------
 2 files changed, 14 insertions(+), 9 deletions(-)

diff --git a/devel/llvm18/Makefile b/devel/llvm18/Makefile
index 26fc3333336c..8610ea015fc2 100644
--- a/devel/llvm18/Makefile
+++ b/devel/llvm18/Makefile
@@ -380,7 +380,8 @@ _BE_INCS_AArch64=	arm_bf16.h
 _BE_LIBS_AArch64=	AsmParser Disassembler Utils
 _BE_LIBS_BACKWARDS_AArch64=Exegesis
 _BE_LIBS_AMDGPU=	AsmParser Disassembler TargetMCA Utils
-_BE_INCS_ARM=		arm_cde.h arm_fp16.h arm_mve.h arm_neon.h arm_sve.h
+_BE_INCS_ARM=		arm_cde.h arm_fp16.h arm_mve.h arm_neon.h arm_sme.h \
+			arm_sve.h arm_vector_types.h
 _BE_LIBS_ARM=		AsmParser Disassembler Utils
 _BE_LIBS_AVR=		AsmParser Disassembler
 _BE_LIBS_BPF=		AsmParser Disassembler
@@ -392,6 +393,8 @@ _BE_LIBS_Mips=		AsmParser Disassembler
 _BE_LIBS_BACKWARDS_Mips=Exegesis
 _BE_LIBS_PowerPC=	AsmParser Disassembler
 _BE_LIBS_BACKWARDS_PowerPC=Exegesis
+_BE_MODS_PowerPC=	__ppc_intrinsics.f18.mod __ppc_intrinsics.mod \
+			mma.f18.mod mma.mod
 _BE_INCS_RISCV=		riscv_vector.h
 _BE_LIBS_RISCV=		AsmParser Disassembler TargetMCA
 _BE_LIBS_Sparc=		AsmParser Disassembler
@@ -407,9 +410,17 @@ _BE_LIBS_${BE}+=	${_BE_LIBS_COMMON:S/^/${BE_ARCH}/} \
 			${_BE_LIBS_${BE_ARCH}:S/^/${BE_ARCH}/} \
 			${_BE_LIBS_BACKWARDS_${BE_ARCH}:S/$/${BE_ARCH}/}
 _BE_INCS_${BE}+=	${_BE_INCS_${BE_ARCH}}
+_BE_MODS_${BE}+=	${_BE_MODS_${BE_ARCH}}
 .endfor
 .endfor
-BE_PATTERN=LLVM(${_BE_LIBS_STANDARD:O:S/$/.a/:ts|})|${_BE_INCS_STANDARD:ts|}
+BE_PATTERN=LLVM(${_BE_LIBS_STANDARD:O:S/$/.a/:ts|})|${_BE_INCS_STANDARD:ts|}|${_BE_MODS_STANDARD:ts|}
+
+.if ${PORT_OPTIONS:MFLANG}
+.for BE in FREEBSD NATIVE STANDARD
+BE_${BE}_PLIST_FILES+= \
+	${_BE_MODS_${BE}:S|^|${LLVM_DIR}/include/flang/|:N${LLVM_DIR}/include/flang/$}
+.endfor
+.endif
 
 .if ${ARCH} == "aarch64"
 COMPILER_RT_ARCHS=	aarch64
@@ -627,7 +638,7 @@ build-plist:
 	    if ($$0 ~ /${COMPILER_RT_PATTERN}/) \
 		{printf "%%%%COMPILER_RT%%%%"} \
 	    if ($$0 ~ /(${EXTRAS_PATTERN})/) {printf "%%%%EXTRAS%%%%"} \
-	    if ($$0 ~ /(${FLANG_PATTERN})/) {printf "%%%%FLANG%%%%"} \
+	    if ($$0 ~ /(${FLANG_PATTERN})/ && $$0 !~ /${BE_PATTERN}$$/) {printf "%%%%FLANG%%%%"} \
 	    if ($$0 ~ /(bin\/(ld|lld|wasm-ld))|liblld[^b]|\/lld\// && $$0 !~ /(lldb)/) {printf "%%%%LLD%%%%"} \
 	    if ($$0 ~ /(argdumper|lldb|six.py)/) {printf "%%%%LLDB%%%%"} \
 	    if ($$0 ~ /(${MLIR_PATTERN})/) {printf "%%%%MLIR%%%%"} \
diff --git a/devel/llvm18/pkg-plist b/devel/llvm18/pkg-plist
index 887f92d1e1ee..3fb4d415b780 100644
--- a/devel/llvm18/pkg-plist
+++ b/devel/llvm18/pkg-plist
@@ -1752,8 +1752,6 @@ llvm%%LLVM_SUFFIX%%/bin/verify-uselistorder
 %%FLANG%%llvm%%LLVM_SUFFIX%%/include/flang/__fortran_ieee_exceptions.mod
 %%FLANG%%llvm%%LLVM_SUFFIX%%/include/flang/__fortran_type_info.f18.mod
 %%FLANG%%llvm%%LLVM_SUFFIX%%/include/flang/__fortran_type_info.mod
-%%FLANG%%llvm%%LLVM_SUFFIX%%/include/flang/__ppc_intrinsics.f18.mod
-%%FLANG%%llvm%%LLVM_SUFFIX%%/include/flang/__ppc_intrinsics.mod
 %%FLANG%%llvm%%LLVM_SUFFIX%%/include/flang/__ppc_types.f18.mod
 %%FLANG%%llvm%%LLVM_SUFFIX%%/include/flang/__ppc_types.mod
 %%FLANG%%llvm%%LLVM_SUFFIX%%/include/flang/ieee_arithmetic.f18.mod
@@ -1766,8 +1764,6 @@ llvm%%LLVM_SUFFIX%%/bin/verify-uselistorder
 %%FLANG%%llvm%%LLVM_SUFFIX%%/include/flang/iso_c_binding.mod
 %%FLANG%%llvm%%LLVM_SUFFIX%%/include/flang/iso_fortran_env.f18.mod
 %%FLANG%%llvm%%LLVM_SUFFIX%%/include/flang/iso_fortran_env.mod
-%%FLANG%%llvm%%LLVM_SUFFIX%%/include/flang/mma.f18.mod
-%%FLANG%%llvm%%LLVM_SUFFIX%%/include/flang/mma.mod
 %%FLANG%%llvm%%LLVM_SUFFIX%%/include/flang/omp_lib.f18.mod
 %%FLANG%%llvm%%LLVM_SUFFIX%%/include/flang/omp_lib.mod
 %%LLD%%llvm%%LLVM_SUFFIX%%/include/lld/Common/Args.h
@@ -5934,8 +5930,6 @@ llvm%%LLVM_SUFFIX%%/include/llvm/XRay/YAMLXRayRecord.h
 %%CLANG%%llvm%%LLVM_SUFFIX%%/lib/clang/%%LLVM_MAJOR%%/include/arm_acle.h
 %%CLANG%%llvm%%LLVM_SUFFIX%%/lib/clang/%%LLVM_MAJOR%%/include/arm_cmse.h
 %%CLANG%%llvm%%LLVM_SUFFIX%%/lib/clang/%%LLVM_MAJOR%%/include/arm_neon_sve_bridge.h
-%%CLANG%%llvm%%LLVM_SUFFIX%%/lib/clang/%%LLVM_MAJOR%%/include/arm_sme.h
-%%CLANG%%llvm%%LLVM_SUFFIX%%/lib/clang/%%LLVM_MAJOR%%/include/arm_vector_types.h
 %%CLANG%%llvm%%LLVM_SUFFIX%%/lib/clang/%%LLVM_MAJOR%%/include/armintr.h
 %%CLANG%%llvm%%LLVM_SUFFIX%%/lib/clang/%%LLVM_MAJOR%%/include/avx2intrin.h
 %%CLANG%%llvm%%LLVM_SUFFIX%%/lib/clang/%%LLVM_MAJOR%%/include/avx512bf16intrin.h