X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=kernel%2Fcmake%2FBBTKCreatePackageIncludeScript.cmake;h=b9a737ceb2e25643c69d899f77c59657313bc760;hb=1ae35ab233d889137ae2e0a347f55b960ab4b855;hp=f1c5f62cdcc37dab64344f64a1b2845d4205bd93;hpb=1ab4240961c577c96775b2db1b2b66cf80ad6c17;p=bbtk.git diff --git a/kernel/cmake/BBTKCreatePackageIncludeScript.cmake b/kernel/cmake/BBTKCreatePackageIncludeScript.cmake index f1c5f62..b9a737c 100644 --- a/kernel/cmake/BBTKCreatePackageIncludeScript.cmake +++ b/kernel/cmake/BBTKCreatePackageIncludeScript.cmake @@ -2,46 +2,141 @@ MACRO(BBTK_CREATE_PACKAGE_INCLUDE_SCRIPT BBTK_PACKAGE_NAME BBTK_PACKAGE_BBS_BOXES BBTK_PACKAGE_BBS_APPLI ) - SET(OUTPUT_PATH ${BBTK_BBS_INSTALL_PATH}/${BBTK_PACKAGE_NAME}) - SET(OUTPUT_FILE ${PROJECT_BINARY_DIR}/${OUTPUT_PATH}/${BBTK_PACKAGE_NAME}.bbs) - - MESSAGE(ERROR "${BBTK_PACKAGE_BBS_BOXES} - ${BBTK_PACKAGE_BBS_APPLI}") - - # Creates the file ${BBTK_PACKAGE_NAME}.bbs + # Creates the file ${BBTK_PACKAGE_NAME}.bbp + SET(OUTPUT_FILE ${BBTK_BBS_BUILD_PATH}/${BBTK_PACKAGE_NAME}.bbp) FILE(WRITE "${OUTPUT_FILE}" - "# Include script for bbtk package '${BBTK_PACKAGE_NAME}' - automatically generated by cmake (macro BBTK_CREATE_PACKAGE_INCLUDE_SCRIPT)\n") + "#-----------------------------------------\n" + "# Include script for bbtk package '${BBTK_PACKAGE_NAME}'\n" + "# Automatically generated by cmake (macro BBTK_CREATE_PACKAGE_INCLUDE_SCRIPT)\n") FILE(APPEND "${OUTPUT_FILE}" + "#-----------------------------------------\n" "load ${BBTK_PACKAGE_NAME}\n" + "#-----------------------------------------\n" "package ${BBTK_PACKAGE_NAME}\n" ) + + #FILE(APPEND + # "${OUTPUT_FILE}" + # "#-----------------------------------------\n" + # "include ${BBTK_PACKAGE_NAME}/boxes/*\n" + # ) + FOREACH(bbs ${BBTK_PACKAGE_BBS_BOXES}) FILE(APPEND "${OUTPUT_FILE}" - "include ${bbs}\n" + "#-----------------------------------------\n" + "include ${BBTK_PACKAGE_NAME}/${bbs}\n" + ) + CONFIGURE_FILE( + ${CMAKE_CURRENT_SOURCE_DIR}/${bbs} + ${BBTK_BBS_BUILD_PATH}/${BBTK_PACKAGE_NAME}/${bbs} + COPYONLY ) + GET_FILENAME_COMPONENT(bbs_path ${bbs} PATH) + + + IF(WIN32) + INSTALL( + FILES ${CMAKE_CURRENT_SOURCE_DIR}/${bbs} +# DESTINATION ${BBTK_BBS_INSTALL_PATH}/${BBTK_PACKAGE_NAME}/${bbs_path} + DESTINATION ${BBTK_BBS_REL_PATH}/${BBTK_PACKAGE_NAME}/${bbs_path} + ) +ELSE(WIN32) +INSTALL( + FILES ${CMAKE_CURRENT_SOURCE_DIR}/${bbs} + DESTINATION ${BBTK_BBS_INSTALL_PATH}/${BBTK_PACKAGE_NAME}/${bbs_path} +# DESTINATION ${BBTK_BBS_REL_PATH}/${BBTK_PACKAGE_NAME}/${bbs_path} + ) +ENDIF(WIN32) ENDFOREACH(bbs) + FILE(APPEND + "${OUTPUT_FILE}" + "#-----------------------------------------\n" + "endpackage\n" + "#-- EOF ----------------------------------\n" + ) + IF(WIN32) + INSTALL( + FILES ${OUTPUT_FILE} +# DESTINATION ${BBTK_BBS_INSTALL_PATH} + DESTINATION ${BBTK_BBS_REL_PATH} + ) +ELSE(WIN32) + INSTALL( + FILES ${OUTPUT_FILE} + DESTINATION ${BBTK_BBS_INSTALL_PATH} +# DESTINATION ${BBTK_BBS_REL_PATH} + ) +ENDIF(WIN32) + # Creates the file ${BBTK_PACKAGE_NAME}-appli.bbp + SET(OUTPUT_FILE ${BBTK_BBS_BUILD_PATH}/${BBTK_PACKAGE_NAME}-appli.bbp) + FILE(WRITE + "${OUTPUT_FILE}" + "#-----------------------------------------\n" + "# Applications include script for bbtk package '${BBTK_PACKAGE_NAME}'\n" + "# Automatically generated by cmake (macro BBTK_CREATE_PACKAGE_INCLUDE_SCRIPT)\n") + FILE(APPEND + "${OUTPUT_FILE}" + "#-----------------------------------------\n" + "load ${BBTK_PACKAGE_NAME}\n" + "#-----------------------------------------\n" + "package ${BBTK_PACKAGE_NAME}\n" + ) FOREACH(bbs ${BBTK_PACKAGE_BBS_APPLI}) + GET_FILENAME_COMPONENT(filename "${bbs}" NAME_WE) FILE(APPEND "${OUTPUT_FILE}" - "define ${bbs}\n" - "include ${bbs}\n" - "endefine" + "#-----------------------------------------\n" + "define ${filename}\n" + "include ${BBTK_PACKAGE_NAME}/${bbs} source\n" + "endefine\n" ) + CONFIGURE_FILE( + ${CMAKE_CURRENT_SOURCE_DIR}/${bbs} + ${BBTK_BBS_BUILD_PATH}/${BBTK_PACKAGE_NAME}/${bbs} + COPYONLY + ) + GET_FILENAME_COMPONENT(bbs_path ${bbs} PATH) + + + IF(WIN32) + INSTALL( + FILES ${CMAKE_CURRENT_SOURCE_DIR}/${bbs} + # DESTINATION ${BBTK_BBS_INSTALL_PATH}/${BBTK_PACKAGE_NAME}/${bbs_path} + DESTINATION ${BBTK_BBS_REL_PATH}/${BBTK_PACKAGE_NAME}/${bbs_path} + ) +ELSE(WIN32) + INSTALL( + FILES ${CMAKE_CURRENT_SOURCE_DIR}/${bbs} + DESTINATION ${BBTK_BBS_INSTALL_PATH}/${BBTK_PACKAGE_NAME}/${bbs_path} + # DESTINATION ${BBTK_BBS_REL_PATH}/${BBTK_PACKAGE_NAME}/${bbs_path} + ) +ENDIF(WIN32) ENDFOREACH(bbs) FILE(APPEND "${OUTPUT_FILE}" - "endpackage\n" + "#-----------------------------------------\n" + "endpackage\n" + "#-- EOF ----------------------------------\n" ) - -# ADD_CUSTOM_TARGET(${BBTK_PACKAGE_NAME}.bbs ALL -# DEPENDS ${OUTPUT_FILE} -# ) - +IF(WIN32) INSTALL( FILES ${OUTPUT_FILE} - DESTINATION ${OUTPUT_PATH} + # DESTINATION ${BBTK_BBS_INSTALL_PATH} + DESTINATION ${BBTK_BBS_REL_PATH} ) +ELSE(WIN32) + INSTALL( + FILES ${OUTPUT_FILE} + DESTINATION ${BBTK_BBS_INSTALL_PATH} + # DESTINATION ${BBTK_BBS_REL_PATH} + ) +ENDIF(WIN32) +# ADD_CUSTOM_TARGET(${BBTK_PACKAGE_NAME}.bbp ALL +# DEPENDS ${OUTPUT_FILE} +# ) + ENDMACRO(BBTK_CREATE_PACKAGE_INCLUDE_SCRIPT)