blob: d0c26848a3a552b2f723455f93771323ed2eb991 [file] [log] [blame]
Oscar Fuentes07d9f9a2008-10-26 00:56:18 +00001set(files
Chris Lattnerdad40622010-04-14 03:54:58 +00002 altivec.h
Benjamin Kramer1ab16ba2012-05-29 19:36:17 +00003 ammintrin.h
Bruno Cardoso Lopes7c4b5132010-08-04 22:03:36 +00004 avxintrin.h
Craig Topperdec792e2011-12-19 05:04:33 +00005 avx2intrin.h
NAKAMURA Takumidceeeb82011-12-25 12:47:46 +00006 bmiintrin.h
NAKAMURA Takumi9a3f2992011-12-26 03:20:06 +00007 bmi2intrin.h
Oscar Fuentes64015232011-02-27 13:33:31 +00008 emmintrin.h
NAKAMURA Takumi16ff8fd2012-10-11 01:10:04 +00009 f16cintrin.h
Oscar Fuentes64015232011-02-27 13:33:31 +000010 float.h
NAKAMURA Takumi96d77daa2011-12-30 10:38:16 +000011 fma4intrin.h
Craig Topper2b1eda32012-06-04 03:42:47 +000012 fmaintrin.h
Argyrios Kyrtzidis7ffeea42014-03-04 06:28:23 +000013 ia32intrin.h
Benjamin Kramer65b9f7b2010-08-20 18:04:07 +000014 immintrin.h
Oscar Fuentes64015232011-02-27 13:33:31 +000015 iso646.h
Eric Christophere276f882013-09-06 20:11:28 +000016 Intrin.h
Oscar Fuentes64015232011-02-27 13:33:31 +000017 limits.h
NAKAMURA Takumidceeeb82011-12-25 12:47:46 +000018 lzcntintrin.h
Michael J. Spencer1737c9e2011-04-15 15:11:21 +000019 mm3dnow.h
Oscar Fuentes64015232011-02-27 13:33:31 +000020 mmintrin.h
21 mm_malloc.h
22 nmmintrin.h
23 pmmintrin.h
Richard Smith6b751dc2011-12-29 21:42:29 +000024 popcntintrin.h
Michael Liao74f4eaf2013-03-26 17:52:08 +000025 prfchwintrin.h
Michael Liaoffaae352013-03-29 05:17:55 +000026 rdseedintrin.h
Michael Liao625a8752012-11-10 05:17:46 +000027 rtmintrin.h
Ben Langmuir58078d02013-09-19 13:22:04 +000028 shaintrin.h
Chris Lattner1b55b752010-08-20 17:24:02 +000029 smmintrin.h
Peter Collingbourne2f3cf4b2011-09-29 18:04:28 +000030 stdalign.h
Oscar Fuentes64015232011-02-27 13:33:31 +000031 stdarg.h
32 stdbool.h
33 stddef.h
34 stdint.h
Richard Smith0015f092013-01-17 22:16:11 +000035 stdnoreturn.h
Yunzhong Gaof4e0b102013-09-30 17:25:14 +000036 tbmintrin.h
Douglas Gregore1839932009-06-07 07:09:23 +000037 tgmath.h
38 tmmintrin.h
Oscar Fuentes64015232011-02-27 13:33:31 +000039 varargs.h
40 wmmintrin.h
Douglas Gregordc779ab2012-11-05 23:30:26 +000041 __wmmintrin_aes.h
42 __wmmintrin_pclmul.h
Oscar Fuentes64015232011-02-27 13:33:31 +000043 x86intrin.h
44 xmmintrin.h
Craig Topper33b6d5e2012-06-10 00:39:38 +000045 xopintrin.h
Rafael Espindola488ea472011-12-06 15:46:47 +000046 cpuid.h
Rafael Espindola18c79202011-12-08 05:01:39 +000047 unwind.h
Douglas Gregor3f09de62012-01-29 20:52:14 +000048 module.map
Oscar Fuentes64015232011-02-27 13:33:31 +000049 )
Oscar Fuentes07d9f9a2008-10-26 00:56:18 +000050
NAKAMURA Takumic28a9a22014-01-19 13:00:01 +000051set(output_dir ${LLVM_LIBRARY_OUTPUT_INTDIR}/clang/${CLANG_VERSION}/include)
Douglas Gregor274a6b42009-06-16 20:13:51 +000052
Douglas Gregor1f1be082010-05-28 04:22:06 +000053# Generate arm_neon.h
NAKAMURA Takumi38b8c932013-12-21 01:56:00 +000054clang_tablegen(arm_neon.h -gen-arm-neon
Oscar Fuentes6f725402011-02-20 22:06:32 +000055 SOURCE ${CLANG_SOURCE_DIR}/include/clang/Basic/arm_neon.td)
Douglas Gregor1f1be082010-05-28 04:22:06 +000056
Douglas Gregorbd829982010-10-11 23:17:59 +000057set(out_files)
Oscar Fuentes07d9f9a2008-10-26 00:56:18 +000058foreach( f ${files} )
59 set( src ${CMAKE_CURRENT_SOURCE_DIR}/${f} )
60 set( dst ${output_dir}/${f} )
61 add_custom_command(OUTPUT ${dst}
62 DEPENDS ${src}
63 COMMAND ${CMAKE_COMMAND} -E copy_if_different ${src} ${dst}
64 COMMENT "Copying clang's ${f}...")
Douglas Gregorbd829982010-10-11 23:17:59 +000065 list(APPEND out_files ${dst})
Oscar Fuentes07d9f9a2008-10-26 00:56:18 +000066endforeach( f )
67
Douglas Gregorbd829982010-10-11 23:17:59 +000068add_custom_command(OUTPUT ${output_dir}/arm_neon.h
NAKAMURA Takumi38b8c932013-12-21 01:56:00 +000069 DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/arm_neon.h
70 COMMAND ${CMAKE_COMMAND} -E copy_if_different ${CMAKE_CURRENT_BINARY_DIR}/arm_neon.h ${output_dir}/arm_neon.h
Douglas Gregorbd829982010-10-11 23:17:59 +000071 COMMENT "Copying clang's arm_neon.h...")
72list(APPEND out_files ${output_dir}/arm_neon.h)
73
Douglas Gregorbd829982010-10-11 23:17:59 +000074add_custom_target(clang-headers ALL DEPENDS ${out_files})
Oscar Fuentes15fe1902011-02-20 22:06:44 +000075set_target_properties(clang-headers PROPERTIES FOLDER "Misc")
Oscar Fuentes07d9f9a2008-10-26 00:56:18 +000076
NAKAMURA Takumi38b8c932013-12-21 01:56:00 +000077install(
78 FILES ${files} ${CMAKE_CURRENT_BINARY_DIR}/arm_neon.h
Oscar Fuentes07d9f9a2008-10-26 00:56:18 +000079 PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ
Oscar Fuentes843c8282009-10-27 21:15:21 +000080 DESTINATION lib${LLVM_LIBDIR_SUFFIX}/clang/${CLANG_VERSION}/include)