# Installs bbCreateBlackBox.bat/.sh # used to creates a new black box source file (xml or C++) # Relative path to the data used by bbCreateBlackBox from data root folder SET(bbCreateBlackBox_DATA_REL_PATH_FROM_DATA kernel/bbCreateBlackBox) # Configure / Install the template xml files used by bbCreateBlackBox # Copy it into build tree FILE(GLOB_RECURSE LST_FILE_VOID_CREATE_PACKAGE RELATIVE ${CMAKE_CURRENT_SOURCE_DIR}/xml-templates *.xml ) FOREACH( iLST ${LST_FILE_VOID_CREATE_PACKAGE}) STRING(SUBSTRING ${iLST} 0 3 subStrTmp ) IF( ${subStrTmp} STREQUAL "../" ) # ... ELSE( ${subStrTmp} STREQUAL "../" ) CONFIGURE_FILE(${CMAKE_CURRENT_SOURCE_DIR}/xml-templates/${iLST} ${BBTK_DATA_BUILD_PATH}/${bbCreateBlackBox_DATA_REL_PATH_FROM_DATA}/xml-templates/${iLST} COPYONLY ) ENDIF( ${subStrTmp} STREQUAL "../" ) ENDFOREACH(iLST) # Install the build tree folder INSTALL( DIRECTORY ${BBTK_DATA_BUILD_PATH}/${bbCreateBlackBox_DATA_REL_PATH_FROM_DATA}/xml-templates DESTINATION ${BBTK_DATA_INSTALL_PATH}/${bbCreateBlackBox_DATA_REL_PATH_FROM_DATA} ) # Configure / Install the script bbCreateBlackBox SET(bbCreateBlackBox_DATA_REL_PATH_FROM_BIN ../${BBTK_DATA_REL_PATH}/${bbCreateBlackBox_DATA_REL_PATH_FROM_DATA}) FILE(TO_NATIVE_PATH ${bbCreateBlackBox_DATA_REL_PATH_FROM_BIN} bbCreateBlackBox_DATA_REL_PATH_FROM_BIN) IF(WIN32) # Build tree CONFIGURE_FILE( ${CMAKE_CURRENT_SOURCE_DIR}/bbCreateBlackBox.bat.in ${BBTK_BINARY_DIR}/RelWithDebInfo/bbCreateBlackBox.bat @ONLY IMMEDIATE ) CONFIGURE_FILE( ${CMAKE_CURRENT_SOURCE_DIR}/bbCreateBlackBox.bat.in ${BBTK_BINARY_DIR}/Debug/bbCreateBlackBox.bat @ONLY IMMEDIATE ) CONFIGURE_FILE( ${CMAKE_CURRENT_SOURCE_DIR}/bbCreateBlackBox.bat.in ${BBTK_BINARY_DIR}/Release/bbCreateBlackBox.bat @ONLY IMMEDIATE ) # install tree INSTALL( PROGRAMS ${BBTK_BINARY_DIR}/Debug/bbCreateBlackBox.bat DESTINATION bin ) ENDIF(WIN32) IF(UNIX) # Build tree CONFIGURE_FILE( ${CMAKE_CURRENT_SOURCE_DIR}/bbCreateBlackBox.sh.in ${BBTK_BINARY_DIR}/bin/bbCreateBlackBox @ONLY IMMEDIATE ) # Install tree INSTALL( FILES ${BBTK_BINARY_DIR}/bin/bbCreateBlackBox DESTINATION bin PERMISSIONS OWNER_WRITE OWNER_READ GROUP_READ WORLD_READ OWNER_EXECUTE GROUP_EXECUTE WORLD_EXECUTE ) ENDIF(UNIX)