summaryrefslogtreecommitdiff
path: root/renderscript/clang-include/CMakeLists.txt
diff options
context:
space:
mode:
Diffstat (limited to 'renderscript/clang-include/CMakeLists.txt')
-rw-r--r--renderscript/clang-include/CMakeLists.txt128
1 files changed, 128 insertions, 0 deletions
diff --git a/renderscript/clang-include/CMakeLists.txt b/renderscript/clang-include/CMakeLists.txt
new file mode 100644
index 0000000..657ef7e
--- /dev/null
+++ b/renderscript/clang-include/CMakeLists.txt
@@ -0,0 +1,128 @@
+set(files
+ adxintrin.h
+ altivec.h
+ ammintrin.h
+ arm_acle.h
+ avx2intrin.h
+ avx512bwintrin.h
+ avx512cdintrin.h
+ avx512dqintrin.h
+ avx512erintrin.h
+ avx512fintrin.h
+ avx512ifmaintrin.h
+ avx512ifmavlintrin.h
+ avx512pfintrin.h
+ avx512vbmiintrin.h
+ avx512vbmivlintrin.h
+ avx512vlbwintrin.h
+ avx512vlcdintrin.h
+ avx512vldqintrin.h
+ avx512vlintrin.h
+ avxintrin.h
+ bmi2intrin.h
+ bmiintrin.h
+ __clang_cuda_cmath.h
+ __clang_cuda_intrinsics.h
+ __clang_cuda_math_forward_declares.h
+ __clang_cuda_runtime_wrapper.h
+ cpuid.h
+ cuda_builtin_vars.h
+ clflushoptintrin.h
+ emmintrin.h
+ f16cintrin.h
+ float.h
+ fma4intrin.h
+ fmaintrin.h
+ fxsrintrin.h
+ htmintrin.h
+ htmxlintrin.h
+ ia32intrin.h
+ immintrin.h
+ intrin.h
+ inttypes.h
+ iso646.h
+ limits.h
+ lzcntintrin.h
+ mm3dnow.h
+ mmintrin.h
+ mm_malloc.h
+ module.modulemap
+ mwaitxintrin.h
+ nmmintrin.h
+ opencl-c.h
+ pkuintrin.h
+ pmmintrin.h
+ popcntintrin.h
+ prfchwintrin.h
+ rdseedintrin.h
+ rtmintrin.h
+ s390intrin.h
+ shaintrin.h
+ smmintrin.h
+ stdalign.h
+ stdarg.h
+ stdatomic.h
+ stdbool.h
+ stddef.h
+ __stddef_max_align_t.h
+ stdint.h
+ stdnoreturn.h
+ tbmintrin.h
+ tgmath.h
+ tmmintrin.h
+ unwind.h
+ vadefs.h
+ varargs.h
+ vecintrin.h
+ wmmintrin.h
+ __wmmintrin_aes.h
+ __wmmintrin_pclmul.h
+ x86intrin.h
+ xmmintrin.h
+ xopintrin.h
+ xsavecintrin.h
+ xsaveintrin.h
+ xsaveoptintrin.h
+ xsavesintrin.h
+ xtestintrin.h
+ )
+
+set(output_dir ${LLVM_LIBRARY_OUTPUT_INTDIR}/clang/${CLANG_VERSION}/include)
+
+# Generate arm_neon.h
+clang_tablegen(arm_neon.h -gen-arm-neon
+ SOURCE ${CLANG_SOURCE_DIR}/include/clang/Basic/arm_neon.td)
+
+set(out_files)
+foreach( f ${files} )
+ set( src ${CMAKE_CURRENT_SOURCE_DIR}/${f} )
+ set( dst ${output_dir}/${f} )
+ add_custom_command(OUTPUT ${dst}
+ DEPENDS ${src}
+ COMMAND ${CMAKE_COMMAND} -E copy_if_different ${src} ${dst}
+ COMMENT "Copying clang's ${f}...")
+ list(APPEND out_files ${dst})
+endforeach( f )
+
+add_custom_command(OUTPUT ${output_dir}/arm_neon.h
+ DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/arm_neon.h
+ COMMAND ${CMAKE_COMMAND} -E copy_if_different ${CMAKE_CURRENT_BINARY_DIR}/arm_neon.h ${output_dir}/arm_neon.h
+ COMMENT "Copying clang's arm_neon.h...")
+list(APPEND out_files ${output_dir}/arm_neon.h)
+
+add_custom_target(clang-headers ALL DEPENDS ${out_files})
+set_target_properties(clang-headers PROPERTIES FOLDER "Misc")
+
+install(
+ FILES ${files} ${CMAKE_CURRENT_BINARY_DIR}/arm_neon.h
+ COMPONENT clang-headers
+ PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ
+ DESTINATION lib${LLVM_LIBDIR_SUFFIX}/clang/${CLANG_VERSION}/include)
+
+if (NOT CMAKE_CONFIGURATION_TYPES) # don't add this for IDE's.
+ add_custom_target(install-clang-headers
+ DEPENDS clang-headers
+ COMMAND "${CMAKE_COMMAND}"
+ -DCMAKE_INSTALL_COMPONENT=clang-headers
+ -P "${CMAKE_BINARY_DIR}/cmake_install.cmake")
+endif()