diff options
Diffstat (limited to 'renderscript/clang-include/CMakeLists.txt')
-rw-r--r-- | renderscript/clang-include/CMakeLists.txt | 128 |
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() |