xref: /aosp_15_r20/external/clang/lib/Headers/CMakeLists.txt (revision 67e74705e28f6214e480b399dd47ea732279e315)
1*67e74705SXin Liset(files
2*67e74705SXin Li  adxintrin.h
3*67e74705SXin Li  altivec.h
4*67e74705SXin Li  ammintrin.h
5*67e74705SXin Li  arm_acle.h
6*67e74705SXin Li  avx2intrin.h
7*67e74705SXin Li  avx512bwintrin.h
8*67e74705SXin Li  avx512cdintrin.h
9*67e74705SXin Li  avx512dqintrin.h
10*67e74705SXin Li  avx512erintrin.h
11*67e74705SXin Li  avx512fintrin.h
12*67e74705SXin Li  avx512ifmaintrin.h
13*67e74705SXin Li  avx512ifmavlintrin.h
14*67e74705SXin Li  avx512pfintrin.h
15*67e74705SXin Li  avx512vbmiintrin.h
16*67e74705SXin Li  avx512vbmivlintrin.h
17*67e74705SXin Li  avx512vlbwintrin.h
18*67e74705SXin Li  avx512vlcdintrin.h
19*67e74705SXin Li  avx512vldqintrin.h
20*67e74705SXin Li  avx512vlintrin.h
21*67e74705SXin Li  avxintrin.h
22*67e74705SXin Li  bmi2intrin.h
23*67e74705SXin Li  bmiintrin.h
24*67e74705SXin Li  __clang_cuda_cmath.h
25*67e74705SXin Li  __clang_cuda_intrinsics.h
26*67e74705SXin Li  __clang_cuda_math_forward_declares.h
27*67e74705SXin Li  __clang_cuda_runtime_wrapper.h
28*67e74705SXin Li  cpuid.h
29*67e74705SXin Li  cuda_builtin_vars.h
30*67e74705SXin Li  clflushoptintrin.h
31*67e74705SXin Li  emmintrin.h
32*67e74705SXin Li  f16cintrin.h
33*67e74705SXin Li  float.h
34*67e74705SXin Li  fma4intrin.h
35*67e74705SXin Li  fmaintrin.h
36*67e74705SXin Li  fxsrintrin.h
37*67e74705SXin Li  htmintrin.h
38*67e74705SXin Li  htmxlintrin.h
39*67e74705SXin Li  ia32intrin.h
40*67e74705SXin Li  immintrin.h
41*67e74705SXin Li  intrin.h
42*67e74705SXin Li  inttypes.h
43*67e74705SXin Li  iso646.h
44*67e74705SXin Li  limits.h
45*67e74705SXin Li  lzcntintrin.h
46*67e74705SXin Li  mm3dnow.h
47*67e74705SXin Li  mmintrin.h
48*67e74705SXin Li  mm_malloc.h
49*67e74705SXin Li  module.modulemap
50*67e74705SXin Li  mwaitxintrin.h
51*67e74705SXin Li  nmmintrin.h
52*67e74705SXin Li  opencl-c.h
53*67e74705SXin Li  pkuintrin.h
54*67e74705SXin Li  pmmintrin.h
55*67e74705SXin Li  popcntintrin.h
56*67e74705SXin Li  prfchwintrin.h
57*67e74705SXin Li  rdseedintrin.h
58*67e74705SXin Li  rtmintrin.h
59*67e74705SXin Li  s390intrin.h
60*67e74705SXin Li  shaintrin.h
61*67e74705SXin Li  smmintrin.h
62*67e74705SXin Li  stdalign.h
63*67e74705SXin Li  stdarg.h
64*67e74705SXin Li  stdatomic.h
65*67e74705SXin Li  stdbool.h
66*67e74705SXin Li  stddef.h
67*67e74705SXin Li  __stddef_max_align_t.h
68*67e74705SXin Li  stdint.h
69*67e74705SXin Li  stdnoreturn.h
70*67e74705SXin Li  tbmintrin.h
71*67e74705SXin Li  tgmath.h
72*67e74705SXin Li  tmmintrin.h
73*67e74705SXin Li  unwind.h
74*67e74705SXin Li  vadefs.h
75*67e74705SXin Li  varargs.h
76*67e74705SXin Li  vecintrin.h
77*67e74705SXin Li  wmmintrin.h
78*67e74705SXin Li  __wmmintrin_aes.h
79*67e74705SXin Li  __wmmintrin_pclmul.h
80*67e74705SXin Li  x86intrin.h
81*67e74705SXin Li  xmmintrin.h
82*67e74705SXin Li  xopintrin.h
83*67e74705SXin Li  xsavecintrin.h
84*67e74705SXin Li  xsaveintrin.h
85*67e74705SXin Li  xsaveoptintrin.h
86*67e74705SXin Li  xsavesintrin.h
87*67e74705SXin Li  xtestintrin.h
88*67e74705SXin Li  )
89*67e74705SXin Li
90*67e74705SXin Liset(output_dir ${LLVM_LIBRARY_OUTPUT_INTDIR}/clang/${CLANG_VERSION}/include)
91*67e74705SXin Li
92*67e74705SXin Li# Generate arm_neon.h
93*67e74705SXin Liclang_tablegen(arm_neon.h -gen-arm-neon
94*67e74705SXin Li  SOURCE ${CLANG_SOURCE_DIR}/include/clang/Basic/arm_neon.td)
95*67e74705SXin Li
96*67e74705SXin Liset(out_files)
97*67e74705SXin Liforeach( f ${files} )
98*67e74705SXin Li  set( src ${CMAKE_CURRENT_SOURCE_DIR}/${f} )
99*67e74705SXin Li  set( dst ${output_dir}/${f} )
100*67e74705SXin Li  add_custom_command(OUTPUT ${dst}
101*67e74705SXin Li    DEPENDS ${src}
102*67e74705SXin Li    COMMAND ${CMAKE_COMMAND} -E copy_if_different ${src} ${dst}
103*67e74705SXin Li    COMMENT "Copying clang's ${f}...")
104*67e74705SXin Li  list(APPEND out_files ${dst})
105*67e74705SXin Liendforeach( f )
106*67e74705SXin Li
107*67e74705SXin Liadd_custom_command(OUTPUT ${output_dir}/arm_neon.h
108*67e74705SXin Li  DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/arm_neon.h
109*67e74705SXin Li  COMMAND ${CMAKE_COMMAND} -E copy_if_different ${CMAKE_CURRENT_BINARY_DIR}/arm_neon.h ${output_dir}/arm_neon.h
110*67e74705SXin Li  COMMENT "Copying clang's arm_neon.h...")
111*67e74705SXin Lilist(APPEND out_files ${output_dir}/arm_neon.h)
112*67e74705SXin Li
113*67e74705SXin Liadd_custom_target(clang-headers ALL DEPENDS ${out_files})
114*67e74705SXin Liset_target_properties(clang-headers PROPERTIES FOLDER "Misc")
115*67e74705SXin Li
116*67e74705SXin Liinstall(
117*67e74705SXin Li  FILES ${files} ${CMAKE_CURRENT_BINARY_DIR}/arm_neon.h
118*67e74705SXin Li  COMPONENT clang-headers
119*67e74705SXin Li  PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ
120*67e74705SXin Li  DESTINATION lib${LLVM_LIBDIR_SUFFIX}/clang/${CLANG_VERSION}/include)
121*67e74705SXin Li
122*67e74705SXin Liif (NOT CMAKE_CONFIGURATION_TYPES) # don't add this for IDE's.
123*67e74705SXin Li  add_custom_target(install-clang-headers
124*67e74705SXin Li    DEPENDS clang-headers
125*67e74705SXin Li    COMMAND "${CMAKE_COMMAND}"
126*67e74705SXin Li            -DCMAKE_INSTALL_COMPONENT=clang-headers
127*67e74705SXin Li            -P "${CMAKE_BINARY_DIR}/cmake_install.cmake")
128*67e74705SXin Liendif()
129