CMakeLists.txt 2.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. cmake_minimum_required(VERSION 2.6)
  2. # make burst backprojection kernels
  3. set(COMMON_TEMPLATE templates/common.in)
  4. set(Z_TEMPLATE templates/z_template.in)
  5. set(LAMINO_TEMPLATE templates/lamino_template.in)
  6. set(CENTER_TEMPLATE templates/center_template.in)
  7. set(GENERATOR tools/make_burst_kernels.py)
  8. set(Z_KERNEL z_kernel.cl)
  9. set(LAMINO_KERNEL lamino_kernel.cl)
  10. set(CENTER_KERNEL center_kernel.cl)
  11. add_custom_command(
  12. OUTPUT ${Z_KERNEL} ${CENTER_KERNEL} ${LAMINO_KERNEL}
  13. COMMAND ${CMAKE_COMMAND} -E copy ${CMAKE_CURRENT_SOURCE_DIR}/${GENERATOR} ${GENERATOR}
  14. COMMAND ${CMAKE_COMMAND} -E copy ${CMAKE_CURRENT_SOURCE_DIR}/${COMMON_TEMPLATE} ${COMMON_TEMPLATE}
  15. COMMAND ${CMAKE_COMMAND} -E copy ${CMAKE_CURRENT_SOURCE_DIR}/${Z_TEMPLATE} ${Z_TEMPLATE}
  16. COMMAND ${CMAKE_COMMAND} -E copy ${CMAKE_CURRENT_SOURCE_DIR}/${CENTER_TEMPLATE} ${CENTER_TEMPLATE}
  17. COMMAND ${CMAKE_COMMAND} -E copy ${CMAKE_CURRENT_SOURCE_DIR}/${LAMINO_TEMPLATE} ${LAMINO_TEMPLATE}
  18. COMMAND python ${GENERATOR} ${Z_TEMPLATE} 1 > ${Z_KERNEL}
  19. COMMAND python ${GENERATOR} ${Z_TEMPLATE} ${BP_BURST} >> ${Z_KERNEL}
  20. COMMAND python ${GENERATOR} ${CENTER_TEMPLATE} 1 > ${CENTER_KERNEL}
  21. COMMAND python ${GENERATOR} ${CENTER_TEMPLATE} ${BP_BURST} >> ${CENTER_KERNEL}
  22. COMMAND python ${GENERATOR} ${LAMINO_TEMPLATE} 1 > ${LAMINO_KERNEL}
  23. COMMAND python ${GENERATOR} ${LAMINO_TEMPLATE} ${BP_BURST} >> ${LAMINO_KERNEL}
  24. DEPENDS ${GENERATOR} ${COMMON_TEMPLATE} ${Z_TEMPLATE} ${CENTER_TEMPLATE} ${LAMINO_TEMPLATE}
  25. COMMENT "Generating burst backprojection kernels")
  26. add_custom_target(burst ALL
  27. DEPENDS ${Z_KERNEL} ${CENTER_KERNEL} ${LAMINO_KERNEL})
  28. install(FILES ${CMAKE_CURRENT_BINARY_DIR}/${Z_KERNEL} DESTINATION ${UFO_ANKAFILTERS_KERNELDIR})
  29. install(FILES ${CMAKE_CURRENT_BINARY_DIR}/${CENTER_KERNEL} DESTINATION ${UFO_ANKAFILTERS_KERNELDIR})
  30. install(FILES ${CMAKE_CURRENT_BINARY_DIR}/${LAMINO_KERNEL} DESTINATION ${UFO_ANKAFILTERS_KERNELDIR})
  31. # copy kernels
  32. file(GLOB ufofilter_KERNELS "*.cl")
  33. foreach(_kernel ${ufofilter_KERNELS})
  34. install(FILES ${_kernel} DESTINATION ${UFO_ANKAFILTERS_KERNELDIR})
  35. endforeach()