X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=kernel%2Fcmake%2FBBTKCreatePackageIncludeScript.cmake;h=620c8a06e1c0e0346427b8071a72e16cce97095d;hb=ba235cfa6ce74178ab468c01af002af0ab3a7d82;hp=f1c5f62cdcc37dab64344f64a1b2845d4205bd93;hpb=1ab4240961c577c96775b2db1b2b66cf80ad6c17;p=bbtk.git diff --git a/kernel/cmake/BBTKCreatePackageIncludeScript.cmake b/kernel/cmake/BBTKCreatePackageIncludeScript.cmake index f1c5f62..620c8a0 100644 --- a/kernel/cmake/BBTKCreatePackageIncludeScript.cmake +++ b/kernel/cmake/BBTKCreatePackageIncludeScript.cmake @@ -2,46 +2,104 @@ 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 + SET(OUTPUT_FILE ${BBTK_BBS_BUILD_PATH}/${BBTK_PACKAGE_NAME}.bbs) 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) + INSTALL( + FILES ${CMAKE_CURRENT_SOURCE_DIR}/${bbs} + DESTINATION ${BBTK_BBS_INSTALL_PATH}/${BBTK_PACKAGE_NAME}/${bbs_path} + ) + ENDFOREACH(bbs) + FILE(APPEND + "${OUTPUT_FILE}" + "#-----------------------------------------\n" + "endpackage\n" + "#-- EOF ----------------------------------\n" + ) + INSTALL( + FILES ${OUTPUT_FILE} + DESTINATION ${BBTK_BBS_INSTALL_PATH} + ) + + # Creates the file ${BBTK_PACKAGE_NAME}-appli.bbs + SET(OUTPUT_FILE ${BBTK_BBS_BUILD_PATH}/${BBTK_PACKAGE_NAME}-appli.bbs) + 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) + INSTALL( + FILES ${CMAKE_CURRENT_SOURCE_DIR}/${bbs} + DESTINATION ${BBTK_BBS_INSTALL_PATH}/${BBTK_PACKAGE_NAME}/${bbs_path} ) ENDFOREACH(bbs) FILE(APPEND "${OUTPUT_FILE}" - "endpackage\n" + "#-----------------------------------------\n" + "endpackage\n" + "#-- EOF ----------------------------------\n" ) - + INSTALL( + FILES ${OUTPUT_FILE} + DESTINATION ${BBTK_BBS_INSTALL_PATH} + ) + # ADD_CUSTOM_TARGET(${BBTK_PACKAGE_NAME}.bbs ALL # DEPENDS ${OUTPUT_FILE} # ) - INSTALL( - FILES ${OUTPUT_FILE} - DESTINATION ${OUTPUT_PATH} - ) ENDMACRO(BBTK_CREATE_PACKAGE_INCLUDE_SCRIPT)