1# $FreeBSD$ 2 3.include "../clang.pre.mk" 4 5.PATH: ${CLANG_SRCS}/lib/Headers 6 7INCSGROUPS= INCS CUDA OMP PPC 8INCSDIR= ${LIBDIR}/clang/12.0.1/include 9CUDADIR= ${INCSDIR}/cuda_wrappers 10OMPDIR= ${INCSDIR}/openmp_wrappers 11PPCDIR= ${INCSDIR}/ppc_wrappers 12 13INCS+= __clang_cuda_builtin_vars.h 14INCS+= __clang_cuda_cmath.h 15INCS+= __clang_cuda_complex_builtins.h 16INCS+= __clang_cuda_device_functions.h 17INCS+= __clang_cuda_intrinsics.h 18INCS+= __clang_cuda_libdevice_declares.h 19INCS+= __clang_cuda_math.h 20INCS+= __clang_cuda_math_forward_declares.h 21INCS+= __clang_cuda_runtime_wrapper.h 22INCS+= __clang_hip_cmath.h 23INCS+= __clang_hip_libdevice_declares.h 24INCS+= __clang_hip_math.h 25INCS+= __clang_hip_runtime_wrapper.h 26INCS+= __stddef_max_align_t.h 27INCS+= __wmmintrin_aes.h 28INCS+= __wmmintrin_pclmul.h 29INCS+= adxintrin.h 30INCS+= altivec.h 31INCS+= ammintrin.h 32INCS+= amxintrin.h 33INCS+= arm64intr.h 34INCS+= arm_acle.h 35INCS+= arm_cmse.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+= avx512ifmaintrin.h 46INCS+= avx512ifmavlintrin.h 47INCS+= avx512pfintrin.h 48INCS+= avx512vbmi2intrin.h 49INCS+= avx512vbmiintrin.h 50INCS+= avx512vbmivlintrin.h 51INCS+= avx512vlbf16intrin.h 52INCS+= avx512vlbitalgintrin.h 53INCS+= avx512vlbwintrin.h 54INCS+= avx512vlcdintrin.h 55INCS+= avx512vldqintrin.h 56INCS+= avx512vlintrin.h 57INCS+= avx512vlvbmi2intrin.h 58INCS+= avx512vlvnniintrin.h 59INCS+= avx512vlvp2intersectintrin.h 60INCS+= avx512vnniintrin.h 61INCS+= avx512vp2intersectintrin.h 62INCS+= avx512vpopcntdqintrin.h 63INCS+= avx512vpopcntdqvlintrin.h 64INCS+= avxintrin.h 65INCS+= avxvnniintrin.h 66INCS+= bmi2intrin.h 67INCS+= bmiintrin.h 68INCS+= cet.h 69INCS+= cetintrin.h 70INCS+= cldemoteintrin.h 71INCS+= clflushoptintrin.h 72INCS+= clwbintrin.h 73INCS+= clzerointrin.h 74INCS+= cpuid.h 75INCS+= emmintrin.h 76INCS+= enqcmdintrin.h 77INCS+= f16cintrin.h 78INCS+= fma4intrin.h 79INCS+= fmaintrin.h 80INCS+= fxsrintrin.h 81INCS+= gfniintrin.h 82INCS+= hresetintrin.h 83INCS+= htmintrin.h 84INCS+= htmxlintrin.h 85INCS+= ia32intrin.h 86INCS+= immintrin.h 87INCS+= invpcidintrin.h 88INCS+= keylockerintrin.h 89INCS+= lwpintrin.h 90INCS+= lzcntintrin.h 91INCS+= mm3dnow.h 92INCS+= mm_malloc.h 93INCS+= mmintrin.h 94INCS+= module.modulemap 95INCS+= movdirintrin.h 96INCS+= msa.h 97INCS+= mwaitxintrin.h 98INCS+= nmmintrin.h 99INCS+= opencl-c-base.h 100INCS+= opencl-c.h 101INCS+= pconfigintrin.h 102INCS+= pkuintrin.h 103INCS+= pmmintrin.h 104INCS+= popcntintrin.h 105INCS+= prfchwintrin.h 106INCS+= ptwriteintrin.h 107INCS+= rdseedintrin.h 108INCS+= rtmintrin.h 109INCS+= s390intrin.h 110INCS+= serializeintrin.h 111INCS+= sgxintrin.h 112INCS+= shaintrin.h 113INCS+= smmintrin.h 114INCS+= tbmintrin.h 115INCS+= tmmintrin.h 116INCS+= tsxldtrkintrin.h 117INCS+= uintrintrin.h 118INCS+= vadefs.h 119INCS+= vaesintrin.h 120INCS+= vecintrin.h 121INCS+= vpclmulqdqintrin.h 122INCS+= waitpkgintrin.h 123INCS+= wasm_simd128.h 124INCS+= wbnoinvdintrin.h 125INCS+= wmmintrin.h 126INCS+= x86gprintrin.h 127INCS+= x86intrin.h 128INCS+= xmmintrin.h 129INCS+= xopintrin.h 130INCS+= xsavecintrin.h 131INCS+= xsaveintrin.h 132INCS+= xsaveoptintrin.h 133INCS+= xsavesintrin.h 134INCS+= xtestintrin.h 135INCS+= ${GENINCS} 136 137# Headers which possibly conflict with our own versions: 138.ifdef INSTALL_CONFLICTING_CLANG_HEADERS 139INCS+= float.h 140INCS+= intrin.h 141INCS+= inttypes.h 142INCS+= iso646.h 143INCS+= limits.h 144INCS+= stdalign.h 145INCS+= stdarg.h 146INCS+= stdatomic.h 147INCS+= stdbool.h 148INCS+= stddef.h 149INCS+= stdint.h 150INCS+= stdnoreturn.h 151INCS+= tgmath.h 152INCS+= unwind.h 153INCS+= varargs.h 154.endif # INSTALL_CONFLICTING_CLANG_HEADERS 155 156CUDA+= cuda_wrappers/algorithm 157CUDA+= cuda_wrappers/complex 158CUDA+= cuda_wrappers/new 159 160OMP+= openmp_wrappers/__clang_openmp_device_functions.h 161OMP+= openmp_wrappers/cmath 162OMP+= openmp_wrappers/complex 163OMP+= openmp_wrappers/complex.h 164OMP+= openmp_wrappers/complex_cmath.h 165OMP+= openmp_wrappers/math.h 166OMP+= openmp_wrappers/new 167 168PPC+= ppc_wrappers/emmintrin.h 169PPC+= ppc_wrappers/mm_malloc.h 170PPC+= ppc_wrappers/mmintrin.h 171PPC+= ppc_wrappers/pmmintrin.h 172PPC+= ppc_wrappers/smmintrin.h 173PPC+= ppc_wrappers/tmmintrin.h 174PPC+= ppc_wrappers/xmmintrin.h 175 176.for hdr in bf16/bf16 cde/cde-header fp16/fp16 mve/mve-header neon/neon \ 177 sve/sve-header 178arm_${hdr:H}.h: ${CLANG_SRCS}/include/clang/Basic/arm_${hdr:H}.td 179 ${CLANG_TBLGEN} -gen-arm-${hdr:T} \ 180 -I ${CLANG_SRCS}/include/clang/Basic -d ${.TARGET:C/$/.d/} \ 181 -o ${.TARGET} ${CLANG_SRCS}/include/clang/Basic/arm_${hdr:H}.td 182GENINCS+= arm_${hdr:H}.h 183.endfor 184 185CLEANFILES= ${GENINCS} ${GENINCS:C/$/.d/} 186 187.include <bsd.prog.mk> 188