1set(files 2 adxintrin.h 3 altivec.h 4 ammintrin.h 5 arm_acle.h 6 avx2intrin.h 7 avx512bwintrin.h 8 avx512erintrin.h 9 avx512fintrin.h 10 avx512vlbwintrin.h 11 avx512vlintrin.h 12 avxintrin.h 13 bmi2intrin.h 14 bmiintrin.h 15 cpuid.h 16 emmintrin.h 17 f16cintrin.h 18 float.h 19 fma4intrin.h 20 fmaintrin.h 21 htmintrin.h 22 htmxlintrin.h 23 ia32intrin.h 24 immintrin.h 25 Intrin.h 26 iso646.h 27 limits.h 28 lzcntintrin.h 29 mm3dnow.h 30 mmintrin.h 31 mm_malloc.h 32 module.modulemap 33 nmmintrin.h 34 pmmintrin.h 35 popcntintrin.h 36 prfchwintrin.h 37 rdseedintrin.h 38 rtmintrin.h 39 s390intrin.h 40 shaintrin.h 41 smmintrin.h 42 stdalign.h 43 stdarg.h 44 stdatomic.h 45 stdbool.h 46 stddef.h 47 __stddef_max_align_t.h 48 stdint.h 49 stdnoreturn.h 50 tbmintrin.h 51 tgmath.h 52 tmmintrin.h 53 unwind.h 54 vadefs.h 55 varargs.h 56 __wmmintrin_aes.h 57 wmmintrin.h 58 __wmmintrin_pclmul.h 59 x86intrin.h 60 xmmintrin.h 61 xopintrin.h 62 ) 63 64set(output_dir ${LLVM_LIBRARY_OUTPUT_INTDIR}/clang/${CLANG_VERSION}/include) 65 66# Generate arm_neon.h 67clang_tablegen(arm_neon.h -gen-arm-neon 68 SOURCE ${CLANG_SOURCE_DIR}/include/clang/Basic/arm_neon.td) 69 70set(out_files) 71foreach( f ${files} ) 72 set( src ${CMAKE_CURRENT_SOURCE_DIR}/${f} ) 73 set( dst ${output_dir}/${f} ) 74 add_custom_command(OUTPUT ${dst} 75 DEPENDS ${src} 76 COMMAND ${CMAKE_COMMAND} -E copy_if_different ${src} ${dst} 77 COMMENT "Copying clang's ${f}...") 78 list(APPEND out_files ${dst}) 79endforeach( f ) 80 81add_custom_command(OUTPUT ${output_dir}/arm_neon.h 82 DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/arm_neon.h 83 COMMAND ${CMAKE_COMMAND} -E copy_if_different ${CMAKE_CURRENT_BINARY_DIR}/arm_neon.h ${output_dir}/arm_neon.h 84 COMMENT "Copying clang's arm_neon.h...") 85list(APPEND out_files ${output_dir}/arm_neon.h) 86 87add_custom_target(clang-headers ALL DEPENDS ${out_files}) 88set_target_properties(clang-headers PROPERTIES FOLDER "Misc") 89 90install( 91 FILES ${files} ${CMAKE_CURRENT_BINARY_DIR}/arm_neon.h 92 PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ 93 DESTINATION lib${LLVM_LIBDIR_SUFFIX}/clang/${CLANG_VERSION}/include) 94