1 2.include "../clang.pre.mk" 3 4.PATH: ${CLANG_SRCS}/lib/Headers 5 6INCSGROUPS+= INCS 7INCSDIR= ${LIBDIR}/clang/17/include 8INCS+= __clang_cuda_builtin_vars.h 9INCS+= __clang_cuda_cmath.h 10INCS+= __clang_cuda_complex_builtins.h 11INCS+= __clang_cuda_device_functions.h 12INCS+= __clang_cuda_intrinsics.h 13INCS+= __clang_cuda_libdevice_declares.h 14INCS+= __clang_cuda_math.h 15INCS+= __clang_cuda_math_forward_declares.h 16INCS+= __clang_cuda_runtime_wrapper.h 17INCS+= __clang_cuda_texture_intrinsics.h 18INCS+= __clang_hip_cmath.h 19INCS+= __clang_hip_libdevice_declares.h 20INCS+= __clang_hip_math.h 21INCS+= __clang_hip_runtime_wrapper.h 22INCS+= __clang_hip_stdlib.h 23INCS+= __stddef_max_align_t.h 24INCS+= __wmmintrin_aes.h 25INCS+= __wmmintrin_pclmul.h 26INCS+= adxintrin.h 27INCS+= altivec.h 28INCS+= ammintrin.h 29INCS+= amxcomplexintrin.h 30INCS+= amxfp16intrin.h 31INCS+= amxintrin.h 32INCS+= arm64intr.h 33INCS+= arm_acle.h 34INCS+= arm_cmse.h 35INCS+= arm_neon_sve_bridge.h 36INCS+= armintr.h 37INCS+= avx2intrin.h 38INCS+= avx512bf16intrin.h 39INCS+= avx512bitalgintrin.h 40INCS+= avx512bwintrin.h 41INCS+= avx512cdintrin.h 42INCS+= avx512dqintrin.h 43INCS+= avx512erintrin.h 44INCS+= avx512fintrin.h 45INCS+= avx512fp16intrin.h 46INCS+= avx512ifmaintrin.h 47INCS+= avx512ifmavlintrin.h 48INCS+= avx512pfintrin.h 49INCS+= avx512vbmi2intrin.h 50INCS+= avx512vbmiintrin.h 51INCS+= avx512vbmivlintrin.h 52INCS+= avx512vlbf16intrin.h 53INCS+= avx512vlbitalgintrin.h 54INCS+= avx512vlbwintrin.h 55INCS+= avx512vlcdintrin.h 56INCS+= avx512vldqintrin.h 57INCS+= avx512vlfp16intrin.h 58INCS+= avx512vlintrin.h 59INCS+= avx512vlvbmi2intrin.h 60INCS+= avx512vlvnniintrin.h 61INCS+= avx512vlvp2intersectintrin.h 62INCS+= avx512vnniintrin.h 63INCS+= avx512vp2intersectintrin.h 64INCS+= avx512vpopcntdqintrin.h 65INCS+= avx512vpopcntdqvlintrin.h 66INCS+= avxifmaintrin.h 67INCS+= avxintrin.h 68INCS+= avxneconvertintrin.h 69INCS+= avxvnniint16intrin.h 70INCS+= avxvnniint8intrin.h 71INCS+= avxvnniintrin.h 72INCS+= bmi2intrin.h 73INCS+= bmiintrin.h 74INCS+= builtins.h 75INCS+= cet.h 76INCS+= cetintrin.h 77INCS+= cldemoteintrin.h 78INCS+= clflushoptintrin.h 79INCS+= clwbintrin.h 80INCS+= clzerointrin.h 81INCS+= cmpccxaddintrin.h 82INCS+= cpuid.h 83INCS+= crc32intrin.h 84INCS+= emmintrin.h 85INCS+= enqcmdintrin.h 86INCS+= f16cintrin.h 87INCS+= fma4intrin.h 88INCS+= fmaintrin.h 89INCS+= fxsrintrin.h 90INCS+= gfniintrin.h 91INCS+= hexagon_circ_brev_intrinsics.h 92INCS+= hexagon_protos.h 93INCS+= hexagon_types.h 94INCS+= hlsl.h 95INCS+= hresetintrin.h 96INCS+= htmintrin.h 97INCS+= htmxlintrin.h 98INCS+= hvx_hexagon_protos.h 99INCS+= ia32intrin.h 100INCS+= immintrin.h 101INCS+= invpcidintrin.h 102INCS+= keylockerintrin.h 103INCS+= larchintrin.h 104INCS+= lwpintrin.h 105INCS+= lzcntintrin.h 106INCS+= mm3dnow.h 107INCS+= mm_malloc.h 108INCS+= mmintrin.h 109INCS+= module.modulemap 110INCS+= movdirintrin.h 111INCS+= msa.h 112INCS+= mwaitxintrin.h 113INCS+= nmmintrin.h 114INCS+= opencl-c-base.h 115INCS+= opencl-c.h 116INCS+= pconfigintrin.h 117INCS+= pkuintrin.h 118INCS+= pmmintrin.h 119INCS+= popcntintrin.h 120INCS+= prfchiintrin.h 121INCS+= prfchwintrin.h 122INCS+= ptwriteintrin.h 123INCS+= raointintrin.h 124INCS+= rdpruintrin.h 125INCS+= rdseedintrin.h 126INCS+= riscv_ntlh.h 127INCS+= riscv_vector.h 128INCS+= rtmintrin.h 129INCS+= s390intrin.h 130INCS+= serializeintrin.h 131INCS+= sgxintrin.h 132INCS+= sha512intrin.h 133INCS+= shaintrin.h 134INCS+= sifive_vector.h 135INCS+= sm3intrin.h 136INCS+= sm4intrin.h 137INCS+= smmintrin.h 138INCS+= tbmintrin.h 139INCS+= tmmintrin.h 140INCS+= tsxldtrkintrin.h 141INCS+= uintrintrin.h 142INCS+= vadefs.h 143INCS+= vaesintrin.h 144INCS+= vecintrin.h 145INCS+= velintrin.h 146INCS+= velintrin_approx.h 147INCS+= velintrin_gen.h 148INCS+= vpclmulqdqintrin.h 149INCS+= waitpkgintrin.h 150INCS+= wasm_simd128.h 151INCS+= wbnoinvdintrin.h 152INCS+= wmmintrin.h 153INCS+= x86gprintrin.h 154INCS+= x86intrin.h 155INCS+= xmmintrin.h 156INCS+= xopintrin.h 157INCS+= xsavecintrin.h 158INCS+= xsaveintrin.h 159INCS+= xsaveoptintrin.h 160INCS+= xsavesintrin.h 161INCS+= xtestintrin.h 162INCS+= ${GENINCS} 163 164# Headers which possibly conflict with our own versions: 165.ifdef INSTALL_CONFLICTING_CLANG_HEADERS 166INCS+= float.h 167INCS+= intrin.h 168INCS+= inttypes.h 169INCS+= iso646.h 170INCS+= limits.h 171INCS+= stdalign.h 172INCS+= stdarg.h 173INCS+= stdatomic.h 174INCS+= stdbool.h 175INCS+= stddef.h 176INCS+= stdint.h 177INCS+= stdnoreturn.h 178INCS+= tgmath.h 179INCS+= unwind.h 180INCS+= varargs.h 181.endif # INSTALL_CONFLICTING_CLANG_HEADERS 182 183INCSGROUPS+= CUDA 184CUDADIR= ${INCSDIR}/cuda_wrappers 185CUDA+= cuda_wrappers/algorithm 186CUDA+= cuda_wrappers/cmath 187CUDA+= cuda_wrappers/complex 188CUDA+= cuda_wrappers/new 189 190INCSGROUPS+= CUDB 191CUDBDIR= ${INCSDIR}/cuda_wrappers/bits 192CUDB+= cuda_wrappers/bits/basic_string.h 193CUDB+= cuda_wrappers/bits/basic_string.tcc 194CUDB+= cuda_wrappers/bits/shared_ptr_base.h 195 196INCSGROUPS+= HLSL 197HLSLDIR= ${INCSDIR}/hlsl 198HLSL+= hlsl/hlsl_basic_types.h 199HLSL+= hlsl/hlsl_intrinsics.h 200 201INCSGROUPS+= OMP 202OMPDIR= ${INCSDIR}/openmp_wrappers 203OMP+= openmp_wrappers/__clang_openmp_device_functions.h 204OMP+= openmp_wrappers/cmath 205OMP+= openmp_wrappers/complex 206OMP+= openmp_wrappers/complex.h 207OMP+= openmp_wrappers/complex_cmath.h 208OMP+= openmp_wrappers/math.h 209OMP+= openmp_wrappers/new 210 211INCSGROUPS+= PPC 212PPCDIR= ${INCSDIR}/ppc_wrappers 213PPC+= ppc_wrappers/bmi2intrin.h 214PPC+= ppc_wrappers/bmiintrin.h 215PPC+= ppc_wrappers/emmintrin.h 216PPC+= ppc_wrappers/immintrin.h 217PPC+= ppc_wrappers/mm_malloc.h 218PPC+= ppc_wrappers/mmintrin.h 219PPC+= ppc_wrappers/pmmintrin.h 220PPC+= ppc_wrappers/smmintrin.h 221PPC+= ppc_wrappers/tmmintrin.h 222PPC+= ppc_wrappers/x86gprintrin.h 223PPC+= ppc_wrappers/x86intrin.h 224PPC+= ppc_wrappers/xmmintrin.h 225 226.for hdr in bf16/bf16 cde/cde-header fp16/fp16 mve/mve-header neon/neon \ 227 sve/sve-header 228arm_${hdr:H}.h: ${CLANG_SRCS}/include/clang/Basic/arm_${hdr:H}.td 229 ${CLANG_TBLGEN} -gen-arm-${hdr:T} \ 230 -I ${CLANG_SRCS}/include/clang/Basic -d ${.TARGET:C/$/.d/} \ 231 -o ${.TARGET} ${CLANG_SRCS}/include/clang/Basic/arm_${hdr:H}.td 232GENINCS+= arm_${hdr:H}.h 233.endfor 234 235arm_sme_draft_spec_subject_to_change.h: ${CLANG_SRCS}/include/clang/Basic/arm_sme.td 236 ${CLANG_TBLGEN} -gen-arm-sme-header \ 237 -I ${CLANG_SRCS}/include/clang/Basic -d ${.TARGET:C/$/.d/} \ 238 -o ${.TARGET} ${CLANG_SRCS}/include/clang/Basic/arm_sme.td 239GENINCS+= arm_sme_draft_spec_subject_to_change.h 240 241.for hdr in vector/vector-header 242riscv_${hdr:H}.h: ${CLANG_SRCS}/include/clang/Basic/riscv_${hdr:H}.td 243 ${CLANG_TBLGEN} -gen-riscv-${hdr:T} \ 244 -I ${CLANG_SRCS}/include/clang/Basic -d ${.TARGET:C/$/.d/} \ 245 -o ${.TARGET} ${CLANG_SRCS}/include/clang/Basic/riscv_${hdr:H}.td 246GENINCS+= riscv_${hdr:H}.h 247.endfor 248 249CLEANFILES= ${GENINCS} ${GENINCS:C/$/.d/} 250 251.include <bsd.prog.mk> 252