-
#----------------------------------------------------------------------------
-IF(BBTK_PACKAGE_INCLUDE_ALL_BBS_BOXES)
- FILE(GLOB BBTK_PACKAGE_BBS_BOXES "boxes" "*.bbs")
-ENDIF(BBTK_PACKAGE_INCLUDE_ALL_BBS_BOXES)
+IF(${BBTK_PACKAGE_NAME}_INCLUDE_ALL_BBS_BOXES)
+ FILE(GLOB
+ ${BBTK_PACKAGE_NAME}_BBS_BOXES
+ RELATIVE ${CMAKE_CURRENT_SOURCE_DIR}
+ "boxes/*.bbs"
+ )
+
+# !! Produces a cmake seg. fault :
+# FILE(GLOB
+# ${BBTK_PACKAGE_NAME}_BBS_BOXES
+# "boxes/"
+# )
+
+
+ENDIF(${BBTK_PACKAGE_NAME}_INCLUDE_ALL_BBS_BOXES)
#----------------------------------------------------------------------------
#----------------------------------------------------------------------------
-IF(BBTK_PACKAGE_INCLUDE_ALL_BBS_APPLI)
- FILE(GLOB BBTK_PACKAGE_BBS_APPLI "appli" "*.bbs")
-ENDIF(BBTK_PACKAGE_INCLUDE_ALL_BBS_APPLI)
+IF(${BBTK_PACKAGE_NAME}_INCLUDE_ALL_BBS_APPLI)
+ FILE(GLOB ${BBTK_PACKAGE_NAME}_BBS_APPLI
+ RELATIVE ${CMAKE_CURRENT_SOURCE_DIR}
+ "appli/*.bbs"
+ )
+ENDIF(${BBTK_PACKAGE_NAME}_INCLUDE_ALL_BBS_APPLI)
#----------------------------------------------------------------------------
-INCLUDE(${BBTK_DIR}/BBTKCreatePackageIncludeScript.cmake)
+#----------------------------------------------------------------------------
+INCLUDE(${BBTK_CMAKE_DIR}/BBTKCreatePackageIncludeScript.cmake)
BBTK_CREATE_PACKAGE_INCLUDE_SCRIPT(
"${BBTK_PACKAGE_NAME}"
- "${BBTK_PACKAGE_BBS_BOXES}"
- "${BBTK_PACKAGE_BBS_APPLI}"
+ "${${BBTK_PACKAGE_NAME}_BBS_BOXES}"
+ "${${BBTK_PACKAGE_NAME}_BBS_APPLI}"
)
+#----------------------------------------------------------------------------
+
+#----------------------------------------------------------------------------
+#---------------------------------------------------------------------------
+IF(BBTK_CORE_PACKAGE)
+ # If a core package set option from bbtk global one
+ IF (BUILD_BBS_APPLI_BINARIES)
+ SET(BUILD_BBTK_PACKAGE_${BBTK_PACKAGE_NAME}_BBS_APP OFF)
+ ELSE (BUILD_BBS_APPLI_BINARIES)
+ SET(BUILD_BBTK_PACKAGE_${BBTK_PACKAGE_NAME}_BBS_APP OFF)
+ ENDIF (BUILD_BBS_APPLI_BINARIES)
+ELSE(BBTK_CORE_PACKAGE)
+ # If not a core package
+ # Create the option
+ OPTION(BUILD_BBTK_PACKAGE_${BBTK_PACKAGE_NAME}_BBS_APP
+ "Build binaries for bbs applications of package ${BBTK_PACKAGE_NAME} ?" OFF)
+##EED SWITCH_ON_IF_BUILD_ALL(BUILD_BBTK_PACKAGE_${BBTK_PACKAGE_NAME}_BBS_APP)
+ENDIF(BBTK_CORE_PACKAGE)
+#---------------------------------------------------------------------------
+
+
+IF (BUILD_BBTK_PACKAGE_${BBTK_PACKAGE_NAME}_BBS_APP)
+ FOREACH(bbs ${${BBTK_PACKAGE_NAME}_BBS_APPLI})
+ GET_FILENAME_COMPONENT(name "${bbs}" NAME_WE)
+ SET(OUTPUT bb${name})
+ ADD_CUSTOM_COMMAND(
+ OUTPUT ${BBTK_BIN_PATH}/${OUTPUT}
+ COMMAND
+ cd ${BBTK_BIN_PATH} && ${BBTK_BBC} ${BBTK_PACKAGE_NAME}/appli/${name}
+ DEPENDS ${bbs}
+ ${BBTK_BBS2CPP_DEPENDENCY}
+ )
+ INSTALL(
+ FILES ${BBTK_BIN_PATH}/${OUTPUT}
+ DESTINATION bin
+ PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE
+ )
+ ADD_CUSTOM_TARGET(
+ ${OUTPUT} ALL
+ DEPENDS ${BBTK_BIN_PATH}/${OUTPUT}
+ )
+ ENDFOREACH(bbs)
+ENDIF (BUILD_BBTK_PACKAGE_${BBTK_PACKAGE_NAME}_BBS_APP)
+#----------------------------------------------------------------------------