SET(_pfx "cpPlugins_bash_") SET(_src_dir ${CMAKE_CURRENT_SOURCE_DIR}) SET(_bin_dir ${CMAKE_CURRENT_BINARY_DIR}) ## ======================== ## == Build sources list == ## ======================== FILE(GLOB _sources RELATIVE "${_src_dir}" "${_src_dir}/*.cxx") FILE(GLOB _sources_cfg RELATIVE "${_src_dir}" "${_src_dir}/*.cxx.in") FILE(GLOB _headers_cfg RELATIVE "${_src_dir}" "${_src_dir}/*.h.in") ## ======================= ## == Configure sources == ## ======================= FOREACH(_cfg ${_headers_cfg}) GET_FILENAME_COMPONENT(_ext ${_cfg} EXT) STRING(LENGTH ${_ext} _ext_len) STRING(SUBSTRING ${_ext} 1 ${_ext_len} _ext_name) GET_FILENAME_COMPONENT(_real_ext ${_ext_name} NAME_WE) GET_FILENAME_COMPONENT(_name ${_cfg} NAME_WE) CONFIGURE_FILE( ${_src_dir}/${_cfg} ${_bin_dir}/${_name}.${_real_ext} @ONLY ) ENDFOREACH(_cfg) FOREACH(_cfg ${_sources_cfg}) GET_FILENAME_COMPONENT(_ext ${_cfg} EXT) STRING(LENGTH ${_ext} _ext_len) STRING(SUBSTRING ${_ext} 1 ${_ext_len} _ext_name) GET_FILENAME_COMPONENT(_real_ext ${_ext_name} NAME_WE) GET_FILENAME_COMPONENT(_name ${_cfg} NAME_WE) CONFIGURE_FILE( ${_src_dir}/${_cfg} ${_bin_dir}/${_name}.${_real_ext} @ONLY ) LIST(APPEND _sources ${_bin_dir}/${_name}.${_real_ext}) ENDFOREACH(_cfg) ## ========================== ## == Compile source files == ## ========================== FOREACH(_src ${_sources}) GET_FILENAME_COMPONENT(_name ${_src} NAME_WE) SET(_prog ${_pfx}${_name}) ADD_EXECUTABLE(${_prog} ${_src}) INSTALL( TARGETS ${_prog} RUNTIME DESTINATION bin LIBRARY DESTINATION lib ARCHIVE DESTINATION lib/static ) SET(${_prog}_APP ${_prog} CACHE INTERNAL "bash program ${_prog}") ENDFOREACH(_src) ## eof - $RCSfile$