You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@celix.apache.org by pn...@apache.org on 2017/11/08 19:25:27 UTC
[2/2] celix git commit: CELIX-414: Adds initial changes so that
add_deploy will result in a add_executable (using a minimal main.c file).
CELIX-414: Adds initial changes so that add_deploy will result in a add_executable (using a minimal main.c file).
These changes result in a executable which can be directly run in the CLI without a release and a executable which can be runned from CLion without additional config.
Project: http://git-wip-us.apache.org/repos/asf/celix/repo
Commit: http://git-wip-us.apache.org/repos/asf/celix/commit/27b9648b
Tree: http://git-wip-us.apache.org/repos/asf/celix/tree/27b9648b
Diff: http://git-wip-us.apache.org/repos/asf/celix/diff/27b9648b
Branch: refs/heads/develop
Commit: 27b9648b0cbedbaecb4018a07e9977f83258b05d
Parents: 918c2dd
Author: Pepijn Noltes <pe...@gmail.com>
Authored: Wed Nov 8 20:24:17 2017 +0100
Committer: Pepijn Noltes <pe...@gmail.com>
Committed: Wed Nov 8 20:24:34 2017 +0100
----------------------------------------------------------------------
cmake/cmake_celix/DeployPackaging.cmake | 100 +++++++++++----------------
cmake/cmake_celix/DockerPackaging.cmake | 20 +++---
cmake/cmake_celix/Runtimes.cmake | 30 ++++----
cmake/cmake_celix/main.c.in | 24 +++++++
cmake/cmake_celix/runtime_common.sh.in | 2 +-
cmake/cmake_celix/runtime_start.sh.in | 2 +-
cmake/cmake_celix/runtime_stop.sh.in | 2 +-
pubsub/deploy/CMakeLists.txt | 40 +++++------
pubsub/test/CMakeLists.txt | 4 +-
pubsub/test/test/tst_activator.cpp | 12 ++--
10 files changed, 120 insertions(+), 116 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/celix/blob/27b9648b/cmake/cmake_celix/DeployPackaging.cmake
----------------------------------------------------------------------
diff --git a/cmake/cmake_celix/DeployPackaging.cmake b/cmake/cmake_celix/DeployPackaging.cmake
index 2dfc540..2b21265 100644
--- a/cmake/cmake_celix/DeployPackaging.cmake
+++ b/cmake/cmake_celix/DeployPackaging.cmake
@@ -50,64 +50,36 @@ function(add_celix_container)
##### Setting defaults #####
if (CONTAINER_GROUP)
- set(CONTAINER_LOCATION "${CONTAINER_DIR}/${CONTAINER_GROUP}/${CONTAINER_NAME}")
+ set(CONTAINER_LOC "${CONTAINER_DIR}/${CONTAINER_GROUP}/${CONTAINER_NAME}")
set(CONTAINER_PRINT_NAME "${CONTAINER_GROUP}/${CONTAINER_NAME}")
else ()
- set(CONTAINER_LOCATION "${CONTAINER_DIR}/${CONTAINER_NAME}")
+ set(CONTAINER_LOC "${CONTAINER_DIR}/${CONTAINER_NAME}")
set(CONTAINER_PRINT_NAME "${CONTAINER_NAME}")
endif ()
######
-
- ###### Setup deploy custom target and config.properties file
- set(TIMESTAMP_FILE "${CMAKE_CURRENT_BINARY_DIR}/${CONTAINER_TARGET}-container-timestamp")
-
- add_custom_target(${CONTAINER_TARGET}
- DEPENDS ${TIMESTAMP_FILE}
- )
get_target_property(CONTAINERDEPS containers "CONTAINER_DEPLOYMENTS")
list(APPEND CONTAINERDEPS ${CONTAINER_TARGET})
set_target_properties(containers PROPERTIES "CONTAINER_DEPLOYMENTS" "${CONTAINERDEPS}")
#FILE TARGETS FOR CONTAINER
- set(CONTAINER_EXE "${CONTAINER_LOCATION}/${CONTAINER_NAME}")
- set(CONTAINER_RUN_SH "${CONTAINER_LOCATION}/run.sh")
- set(CONTAINER_PROPS "${CONTAINER_LOCATION}/config.properties")
- set(CONTAINER_ECLIPSE_LAUNCHER "${CONTAINER_LOCATION}/${CONTAINER_NAME}.launch")
- set(CONTAINER_RELEASE_SH "${CONTAINER_LOCATION}/release.sh")
-
- find_program(LINK_CMD ln)
- if (LINK_CMD)
- #if ln is available use a softlink to celix exe instead of a run.sh
- list(APPEND CONTAINER_FILE_TARGETS ${CONTAINER_PROPS} ${CONTAINER_ECLIPSE_LAUNCHER} ${CONTAINER_RELEASE_SH} ${CONTAINER_RUN_SH} ${CONTAINER_EXE})
- else()
- list(APPEND CONTAINER_FILE_TARGETS ${CONTAINER_PROPS} ${CONTAINER_ECLIPSE_LAUNCHER} ${CONTAINER_RELEASE_SH} ${CONTAINER_RUN_SH})
- endif()
+ set(CONTAINER_PROPS "${CONTAINER_LOC}/config.properties")
+ set(CONTAINER_ECLIPSE_LAUNCHER "${CONTAINER_LOC}/${CONTAINER_NAME}.launch")
+
+ set(LAUNCHER_SRC "${CMAKE_CURRENT_BINARY_DIR}/${CONTAINER_TARGET}.launcher.c")
- #setup dependencies based on timestamp
- add_custom_command(OUTPUT "${TIMESTAMP_FILE}"
- COMMAND ${CMAKE_COMMAND} -E touch ${TIMESTAMP_FILE}
- COMMAND ${CMAKE_COMMAND} -E make_directory $<TARGET_PROPERTY:${CONTAINER_TARGET},CONTAINER_LOCATION>
- COMMAND chmod +x $<TARGET_PROPERTY:${CONTAINER_TARGET},CONTAINER_LOCATION>/run.sh
- COMMAND chmod +x $<TARGET_PROPERTY:${CONTAINER_TARGET},CONTAINER_LOCATION>/release.sh
+ add_custom_command(OUTPUT ${LAUNCHER_SRC}
+ COMMAND ${CMAKE_COMMAND} -E copy_if_different ${CELIX_CMAKE_DIRECTORY}/cmake_celix/main.c.in ${LAUNCHER_SRC}
DEPENDS "$<TARGET_PROPERTY:${CONTAINER_TARGET},CONTAINER_TARGET_DEPS>" ${CONTAINER_FILE_TARGETS}
- WORKING_DIRECTORY "${CONTAINER_LOCATION}"
+ WORKING_DIRECTORY "${CONTAINER_LOC}"
COMMENT "Deploying ${CONTAINER_PRINT_NAME} Celix container" VERBATIM
)
- #Setting CELIX_LIB_DIRS, CELIX_BIN_DIR and CELIX_LAUNCHER
- if (EXISTS ${CELIX_FRAMEWORK_LIBRARY})
- #CELIX_FRAMEWORK_LIBRARY set by FindCelix.cmake -> Celix Based Project
- get_filename_component(CELIX_LIB_DIR ${CELIX_FRAMEWORK_LIBRARY} DIRECTORY) #Note assuming all celix libs are in the same dir
- set(CELIX_LIB_DIRS "${CELIX_LIB_DIR}")
- #CELIX_LAUNCHER is set by FindCelix.cmake
- get_filename_component(CELIX_BIN_DIR ${CELIX_LAUNCHER} DIRECTORY)
- else()
- #Celix Main Project
- set(CELIX_LIB_DIRS "$<TARGET_FILE_DIR:celix_framework>:$<TARGET_FILE_DIR:celix_utils>:$<TARGET_FILE_DIR:celix_dfi>")
- set(CELIX_LAUNCHER "$<TARGET_FILE:celix>")
- set(CELIX_BIN_DIR "$<TARGET_FILE_DIR:celix>")
- endif()
+ include_directories(${CELIX_INCLUDE_DIRS})
+ add_executable(${CONTAINER_TARGET} ${LAUNCHER_SRC})
+ set_target_properties(${CONTAINER_TARGET} PROPERTIES RUNTIME_OUTPUT_DIRECTORY ${CONTAINER_LOC})
+ #TODO SETUP CELIX_LIBRARIES AND INCLUDE DIRS for celix project and celix using projects !!
+ target_link_libraries(${CONTAINER_TARGET} ${CELIX_LIBRARIES})
#generate config.properties
set(STAGE1_PROPERTIES "${CMAKE_CURRENT_BINARY_DIR}/${CONTAINER_TARGET}-container-config-stage1.properties")
@@ -124,7 +96,7 @@ $<JOIN:$<TARGET_PROPERTY:${CONTAINER_TARGET},CONTAINER_PROPERTIES>,
)
- #Setup launcher using celix target, celix binary or custom launcher
+ #Setup launcher using specifie exe target / exe loc or the container launcher targer file
if (CONTAINER_LAUNCHER)
if (IS_ABSOLUTE "${CONTAINER_LAUNCHER}")
set(LAUNCHER "${CONTAINER_LAUNCHER}")
@@ -133,17 +105,23 @@ $<JOIN:$<TARGET_PROPERTY:${CONTAINER_TARGET},CONTAINER_PROPERTIES>,
set(LAUNCHER "$<TARGET_FILE:${CONTAINER_LAUNCHER}>")
endif()
else()
- #Use CELIX_LAUNCHER
- set(LAUNCHER "${CELIX_LAUNCHER}")
+ set(LAUNCHER "$<TARGET_FILE:${CONTAINER_TARGET}>")
endif()
- #softlink celix exe file
- add_custom_command(OUTPUT "${CONTAINER_EXE}"
- COMMAND ${LINK_CMD} -s "${LAUNCHER}" "${CONTAINER_EXE}"
- WORKING_DIRECTORY ${CONTAINER_LOCATION}
- DEPENDS "${LAUNCHER}"
- COMMENT "Symbolic link launcher to ${CONTAINER_EXE}" VERBATIM
- )
+ #needed in the release.sh & run.sh files
+ #Setting CELIX_LIB_DIRS, CELIX_BIN_DIR and CELIX_LAUNCHER
+ if (EXISTS ${CELIX_FRAMEWORK_LIBRARY})
+ #CELIX_FRAMEWORK_LIBRARY set by FindCelix.cmake -> Celix Based Project
+ get_filename_component(CELIX_LIB_DIR ${CELIX_FRAMEWORK_LIBRARY} DIRECTORY) #Note assuming all celix libs are in the same dir
+ set(CELIX_LIB_DIRS "${CELIX_LIB_DIR}")
+ #CELIX_LAUNCHER is set by FindCelix.cmake
+ get_filename_component(CELIX_BIN_DIR ${CELIX_LAUNCHER} DIRECTORY)
+ else()
+ #Celix Main Project
+ set(CELIX_LIB_DIRS "$<TARGET_FILE_DIR:celix_framework>:$<TARGET_FILE_DIR:celix_utils>:$<TARGET_FILE_DIR:celix_dfi>")
+ set(CELIX_LAUNCHER "$<TARGET_FILE:celix>")
+ set(CELIX_BIN_DIR "$<TARGET_FILE_DIR:celix>")
+ endif()
#generate release.sh and optional run.sh
@@ -152,25 +130,27 @@ $<JOIN:$<TARGET_PROPERTY:${CONTAINER_TARGET},CONTAINER_PROPERTIES>,
else()
set(LIB_PATH_NAME "LD_LIBRARY_PATH")
endif()
+ set(RELEASE_SH ${CONTAINER_LOC}/release.sh)
+ set(RUN_SH ${CONTAINER_LOC}/run.sh)
set(RELEASE_CONTENT "#!/bin/sh\nexport ${LIB_PATH_NAME}=${CELIX_LIB_DIRS}:\${${LIB_PATH_NAME}}\nexport PATH=${CELIX_BIN_DIR}:\${PATH}")
file(GENERATE
- OUTPUT ${CONTAINER_RELEASE_SH}
+ OUTPUT ${RELEASE_SH}
CONTENT ${RELEASE_CONTENT}
)
set(RUN_CONTENT "${RELEASE_CONTENT}\n${LAUNCHER} \$@\n")
file(GENERATE
- OUTPUT ${CONTAINER_RUN_SH}
+ OUTPUT ${RUN_SH}
CONTENT ${RUN_CONTENT}
)
#generate eclipse project launch file
set(PROGRAM_NAME "${LAUNCHER}")
set(PROJECT_ATTR "${CMAKE_PROJECT_NAME}-build")
- set(WORKING_DIRECTORY ${CONTAINER_LOCATION})
+ set(WORKING_DIRECTORY ${CONTAINER_LOC})
include("${CELIX_CMAKE_DIRECTORY}/cmake_celix/RunConfig.in.cmake") #set VAR RUN_CONFIG_IN
file(GENERATE
OUTPUT "${CONTAINER_ECLIPSE_LAUNCHER}"
- CONTENT "${RUN_CONFIG_IN}"
+ CONTENT "${RUN_CONFIG_IN}"
)
##### Container Target Properties #####
@@ -182,7 +162,7 @@ $<JOIN:$<TARGET_PROPERTY:${CONTAINER_TARGET},CONTAINER_PROPERTIES>,
#deploy specific
set_target_properties(${CONTAINER_TARGET} PROPERTIES "CONTAINER_NAME" "${CONTAINER_NAME}")
set_target_properties(${CONTAINER_TARGET} PROPERTIES "CONTAINER_GROUP" "${CONTAINER_GROUP}")
- set_target_properties(${CONTAINER_TARGET} PROPERTIES "CONTAINER_LOCATION" "${CONTAINER_LOCATION}")
+ set_target_properties(${CONTAINER_TARGET} PROPERTIES "CONTAINER_LOC" "${CONTAINER_LOC}")
set_target_properties(${CONTAINER_TARGET} PROPERTIES "CONTAINER_PROPERTIES" "")
#####
@@ -192,7 +172,7 @@ $<JOIN:$<TARGET_PROPERTY:${CONTAINER_TARGET},CONTAINER_PROPERTIES>,
#ensure the container dir will be deleted during clean
get_directory_property(CLEANFILES ADDITIONAL_MAKE_CLEAN_FILES)
- list(APPEND CLEANFILES "$<TARGET_PROPERTY:${CONTAINER_TARGET},CONTAINER_LOCATION>")
+ list(APPEND CLEANFILES "$<TARGET_PROPERTY:${CONTAINER_TARGET},CONTAINER_LOC>")
set_directory_properties(PROPERTIES ADDITIONAL_MAKE_CLEAN_FILES "${CLEANFILES}")
endfunction()
@@ -215,7 +195,7 @@ function(celix_container_bundles_dir)
message(FATAL_ERROR "Missing mandatory DIR_NAME argument")
endif()
- get_target_property(CONTAINER_LOC ${CONTAINER_TARGET} "CONTAINER_LOCATION")
+ get_target_property(CONTAINER_LOC ${CONTAINER_TARGET} "CONTAINER_LOC")
get_target_property(DEPS ${CONTAINER_TARGET} "CONTAINER_TARGET_DEPS")
foreach(BUNDLE IN ITEMS ${BD_BUNDLES})
@@ -224,7 +204,7 @@ function(celix_container_bundles_dir)
set(OUT "${CONTAINER_LOC}/${BD_DIR_NAME}/${BUNDLE_FILENAME}")
add_custom_command(OUTPUT ${OUT}
COMMAND ${CMAKE_COMMAND} -E copy_if_different ${BUNDLE} ${OUT}
- COMMENT "Copying bundle '${BUNDLE}' to '${CONATAINER_LOC}/${BD_DIR_NAME}'"
+ COMMENT "Copying bundle '${BUNDLE}' to '${CONTAINER_LOC}/${BD_DIR_NAME}'"
DEPENDS ${BUNDLE}
)
else()
http://git-wip-us.apache.org/repos/asf/celix/blob/27b9648b/cmake/cmake_celix/DockerPackaging.cmake
----------------------------------------------------------------------
diff --git a/cmake/cmake_celix/DockerPackaging.cmake b/cmake/cmake_celix/DockerPackaging.cmake
index ae48273..7cce6dd 100644
--- a/cmake/cmake_celix/DockerPackaging.cmake
+++ b/cmake/cmake_celix/DockerPackaging.cmake
@@ -106,7 +106,7 @@ function(add_celix_docker)
#ensure the docker dir will be deleted during clean
get_directory_property(CLEANFILES ADDITIONAL_MAKE_CLEAN_FILES)
- list(APPEND CLEANFILES "$<TARGET_PROPERTY:${DOCKER_TARGET},DOCKER_LOCATION>")
+ list(APPEND CLEANFILES "$<TARGET_PROPERTY:${DOCKER_TARGET},DOCKER_LOC>")
set_directory_properties(PROPERTIES ADDITIONAL_MAKE_CLEAN_FILES "${CLEANFILES}")
###### Setup docker custom target timestamp
@@ -128,24 +128,24 @@ function(add_celix_docker)
if (DOCKER_CREATE_FS)
add_custom_command(OUTPUT "${TIMESTAMP_FILE}"
COMMAND ${CMAKE_COMMAND} -E touch ${TIMESTAMP_FILE}
- COMMAND ${CMAKE_COMMAND} -E make_directory $<TARGET_PROPERTY:${DOCKER_TARGET},DOCKER_LOCATION>
- COMMAND cd $<TARGET_PROPERTY:${DOCKER_TARGET},DOCKER_LOCATION> && /bin/bash ${CELIX_CMAKE_DIRECTORY}/cmake_celix/create_target_filesystem.sh -e ${CELIX_LAUNCHER} -l $<TARGET_FILE:${DOCKER_DEPSLIB}> > /dev/null
+ COMMAND ${CMAKE_COMMAND} -E make_directory $<TARGET_PROPERTY:${DOCKER_TARGET},DOCKER_LOC>
+ COMMAND cd $<TARGET_PROPERTY:${DOCKER_TARGET},DOCKER_LOC> && /bin/bash ${CELIX_CMAKE_DIRECTORY}/cmake_celix/create_target_filesystem.sh -e ${CELIX_LAUNCHER} -l $<TARGET_FILE:${DOCKER_DEPSLIB}> > /dev/null
DEPENDS "$<TARGET_PROPERTY:${DOCKER_TARGET},DOCKER_DEPS>" ${DOCKERFILE} ${DOCKER_DEPSLIB}
- WORKING_DIRECTORY "${DOCKER_LOCATION}"
+ WORKING_DIRECTORY "${DOCKER_LOC}"
COMMENT "Creating docker dir for ${DOCKER_TARGET}" VERBATIM
)
else ()
add_custom_command(OUTPUT "${TIMESTAMP_FILE}"
COMMAND ${CMAKE_COMMAND} -E touch ${TIMESTAMP_FILE}
- COMMAND ${CMAKE_COMMAND} -E make_directory $<TARGET_PROPERTY:${DOCKER_TARGET},DOCKER_LOCATION>
+ COMMAND ${CMAKE_COMMAND} -E make_directory $<TARGET_PROPERTY:${DOCKER_TARGET},DOCKER_LOC>
DEPENDS "$<TARGET_PROPERTY:${DOCKER_TARGET},DOCKER_DEPS>" ${DOCKERFILE}
- WORKING_DIRECTORY "${DOCKER_LOCATION}"
+ WORKING_DIRECTORY "${DOCKER_LOC}"
COMMENT "Creating docker dir for ${DOCKER_TARGET}" VERBATIM
)
endif ()
##### Deploy Target Properties for Dockerfile #####
- set_target_properties(${DOCKER_TARGET} PROPERTIES "DOCKER_LOCATION" "${DOCKER_LOC}")
+ set_target_properties(${DOCKER_TARGET} PROPERTIES "DOCKER_LOC" "${DOCKER_LOC}")
set_target_properties(${DOCKER_TARGET} PROPERTIES "DOCKER_FROM" "${DOCKER_FROM}") #name of docker base, default celix-base
set_target_properties(${DOCKER_TARGET} PROPERTIES "DOCKER_IMAGE_NAME" "${DOCKER_IMAGE_NAME}") #name of docker images, default deploy target name
set_target_properties(${DOCKER_TARGET} PROPERTIES "DOCKER_BUNDLES_DIR" "${DOCKER_BUNDLES_DIR}") #bundles directory in docker image
@@ -157,7 +157,7 @@ function(add_celix_docker)
set_target_properties(${DOCKER_TARGET} PROPERTIES "DOCKER_PROPERTIES" "")
set_target_properties(${DOCKER_TARGET} PROPERTIES "DOCKER_DEPS" "")
- set(DOCKERFILE "$<TARGET_PROPERTY:${DOCKER_TARGET},DOCKER_LOCATION>/Dockerfile")
+ set(DOCKERFILE "$<TARGET_PROPERTY:${DOCKER_TARGET},DOCKER_LOC>/Dockerfile")
file(GENERATE
OUTPUT "${DOCKERFILE}"
@@ -207,7 +207,7 @@ $<JOIN:$<TARGET_PROPERTY:${DOCKER_TARGET},DOCKER_PROPERTIES>,
set(SUDO_CMD "sudo")
endif ()
add_custom_target(build-${DOCKER_TARGET}-docker-image
- COMMAND cd $<TARGET_PROPERTY:${DOCKER_TARGET},DOCKER_LOCATION> && ${SUDO_CMD} ${DOCKER_CMD} build -t "$<TARGET_PROPERTY:${DOCKER_TARGET},DOCKER_IMAGE_NAME>" .
+ COMMAND cd $<TARGET_PROPERTY:${DOCKER_TARGET},DOCKER_LOC> && ${SUDO_CMD} ${DOCKER_CMD} build -t "$<TARGET_PROPERTY:${DOCKER_TARGET},DOCKER_IMAGE_NAME>" .
DEPENDS ${DOCKERFILE} ${DOCKER_TARGET}
COMMENT "Creating docker image for target '${DOCKER_TARGET}'" VERBATIM
)
@@ -227,7 +227,7 @@ function(celix_docker_bundles)
get_target_property(BUNDLES ${DOCKER_TARGET} "DOCKER_BUNDLES")
get_target_property(BUNDLES_DIR ${DOCKER_TARGET} "DOCKER_BUNDLES_DIR")
- get_target_property(LOC ${DOCKER_TARGET} "DOCKER_LOCATION")
+ get_target_property(LOC ${DOCKER_TARGET} "DOCKER_LOC")
get_target_property(DEPS ${DOCKER_TARGET} "DOCKER_DEPS")
foreach(BUNDLE IN ITEMS ${ARGN})
http://git-wip-us.apache.org/repos/asf/celix/blob/27b9648b/cmake/cmake_celix/Runtimes.cmake
----------------------------------------------------------------------
diff --git a/cmake/cmake_celix/Runtimes.cmake b/cmake/cmake_celix/Runtimes.cmake
index 7665527..a55a089 100644
--- a/cmake/cmake_celix/Runtimes.cmake
+++ b/cmake/cmake_celix/Runtimes.cmake
@@ -17,24 +17,24 @@ function(add_runtime)
set(RUNTIME_NAME ${RUNTIME_TARGET_NAME})
endif ()
if (NOT RUNTIME_GROUP)
- set(RUNTIME_LOCATION "${PROJECT_BINARY_DIR}/runtimes/${RUNTIME_NAME}")
+ set(RUNTIME_LOC "${PROJECT_BINARY_DIR}/runtimes/${RUNTIME_NAME}")
else ()
- set(RUNTIME_LOCATION "${PROJECT_BINARY_DIR}/runtimes/${RUNTIME_GROUP}/${RUNTIME_NAME}")
+ set(RUNTIME_LOC "${PROJECT_BINARY_DIR}/runtimes/${RUNTIME_GROUP}/${RUNTIME_NAME}")
endif ()
set(TIMESTAMP_FILE "${CMAKE_CURRENT_BINARY_DIR}/${RUNTIME_TARGET_NAME}-runtime-timestamp")
- set(START_SCRIPT "$<TARGET_PROPERTY:${RUNTIME_TARGET_NAME},RUNTIME_LOCATION>/start.sh")
- set(STOP_SCRIPT "$<TARGET_PROPERTY:${RUNTIME_TARGET_NAME},RUNTIME_LOCATION>/stop.sh")
- set(COMMON_SCRIPT "$<TARGET_PROPERTY:${RUNTIME_TARGET_NAME},RUNTIME_LOCATION>/common.sh")
+ set(START_SCRIPT "$<TARGET_PROPERTY:${RUNTIME_TARGET_NAME},RUNTIME_LOC>/start.sh")
+ set(STOP_SCRIPT "$<TARGET_PROPERTY:${RUNTIME_TARGET_NAME},RUNTIME_LOC>/stop.sh")
+ set(COMMON_SCRIPT "$<TARGET_PROPERTY:${RUNTIME_TARGET_NAME},RUNTIME_LOC>/common.sh")
add_custom_command(OUTPUT "${TIMESTAMP_FILE}"
COMMAND ${CMAKE_COMMAND} -E touch ${TIMESTAMP_FILE}
- COMMAND ${CMAKE_COMMAND} -E make_directory $<TARGET_PROPERTY:${RUNTIME_TARGET_NAME},RUNTIME_LOCATION>
- COMMAND chmod +x $<TARGET_PROPERTY:${RUNTIME_TARGET_NAME},RUNTIME_LOCATION>/start.sh
- COMMAND chmod +x $<TARGET_PROPERTY:${RUNTIME_TARGET_NAME},RUNTIME_LOCATION>/stop.sh
+ COMMAND ${CMAKE_COMMAND} -E make_directory $<TARGET_PROPERTY:${RUNTIME_TARGET_NAME},RUNTIME_LOC>
+ COMMAND chmod +x $<TARGET_PROPERTY:${RUNTIME_TARGET_NAME},RUNTIME_LOC>/start.sh
+ COMMAND chmod +x $<TARGET_PROPERTY:${RUNTIME_TARGET_NAME},RUNTIME_LOC>/stop.sh
#TODO DEPENDS "$<TARGET_PROPERTY:${DEPLOY_TARGET},DEPLOY_TARGET_DEPS>" ${DEPLOY_FILE_TARGETS}
DEPENDS ${START_SCRIPT} ${STOP_SCRIPT} ${SETUP_SCRIPT}
- WORKING_DIRECTORY "${RUNTIME_LOCATION}"
+ WORKING_DIRECTORY "${RUNTIME_LOC}"
COMMENT "Creating runtime ${RUNTIME_TARGET_NAME}" VERBATIM
)
add_custom_target(${RUNTIME_TARGET_NAME}
@@ -46,7 +46,7 @@ function(add_runtime)
set_target_properties(${RUNTIME_TARGET_NAME} PROPERTIES "RUNTIME_ARGUMENTS" "") #potential arguments to use for deployments
set_target_properties(${RUNTIME_TARGET_NAME} PROPERTIES "RUNTIME_NAME" "${RUNTIME_NAME}") #The runtime workdir
set_target_properties(${RUNTIME_TARGET_NAME} PROPERTIES "RUNTIME_GROUP" "${RUNTIME_GROUP}") #The runtime workdir
- set_target_properties(${RUNTIME_TARGET_NAME} PROPERTIES "RUNTIME_LOCATION" "${RUNTIME_LOCATION}") #The runtime workdir
+ set_target_properties(${RUNTIME_TARGET_NAME} PROPERTIES "RUNTIME_LOC" "${RUNTIME_LOC}") #The runtime workdir
set_target_properties(${RUNTIME_TARGET_NAME} PROPERTIES "RUNTIME_USE_TERM" "${RUNTIME_USE_TERM}") #Wether or not the use terminal
set_target_properties(${RUNTIME_TARGET_NAME} PROPERTIES "RUNTIME_LOG_TO_FILES" "${RUNTIME_LOG_TO_FILES}") #log to files or std out/err
set_target_properties(${RUNTIME_TARGET_NAME} PROPERTIES "RUNTIME_NEXT_DEPLOYMENT_ID" "0") #used for indexes int he bash scripts
@@ -80,7 +80,7 @@ function(add_runtime)
)
- #replaces list of $<TARGET_PROPERTY:<DEPLOY_NAME>,DEPLOY_LOCATION>, only needed for common
+ #replaces list of $<TARGET_PROPERTY:<DEPLOY_NAME>,DEPLOY_LOC>, only needed for common
file(GENERATE
OUTPUT "${COMMON_SCRIPT}"
INPUT "${CMAKE_CURRENT_BINARY_DIR}/common.sh.${RUNTIME_TARGET_NAME}.in.2"
@@ -127,9 +127,9 @@ function(runtime_deployments)
get_target_property(DEP_ID ${RUNTIME_NAME} "RUNTIME_NEXT_DEPLOYMENT_ID")
math(EXPR DEP_ID "${DEP_ID}+1")
set_target_properties(${RUNTIME_NAME} PROPERTIES "RUNTIME_DEPLOYMENT_${DEPLOYMENT}_ID" "${DEP_ID}")
- list(APPEND DEPLOYMENTS "DEPLOYMENT_NAMES[${DEP_ID}]=\"$<TARGET_PROPERTY:${DEPLOYMENT},DEPLOY_NAME>\"")
- list(APPEND DEPLOYMENTS "DEPLOYMENT_DIRS[${DEP_ID}]=\"$<TARGET_PROPERTY:${DEPLOYMENT},DEPLOY_LOCATION>\"")
- list(APPEND DEPLOYMENTS "DEPLOYMENT_DEBUG_OPTS[${DEP_ID}]=\"\${${DEPLOYMENT}_DEBUG_OPTS:-}\"")
+ list(APPEND DEPLOYMENTS "DEPLOYMENT_NAMES[${DEP_ID}]=\"$<TARGET_PROPERTY:${DEPLOYMENT},CONTAINER_NAME>\"")
+ list(APPEND DEPLOYMENTS "DEPLOYMENT_DIRS[${DEP_ID}]=\"$<TARGET_PROPERTY:${DEPLOYMENT},CONTAINER_LOC>\"")
+ list(APPEND DEPLOYMENTS "DEPLOYMENT_DEBUG_OPTS[${DEP_ID}]=\"\${${DEPLOYMENT}_DEBUG_OPTS:-}\"")
set_target_properties(${RUNTIME_NAME} PROPERTIES "RUNTIME_NEXT_DEPLOYMENT_ID" "${DEP_ID}")
endforeach()
@@ -142,7 +142,7 @@ function(runtime_deployment_wait_for)
list(GET ARGN 0 RUNTIME_NAME)
list(GET ARGN 1 DEPLOYMENT)
- set_target_properties(${RUNTIME_NAME} PROPERTIES "RUNTIME_WAIT_FOR_DEPLOYMENT" "$<TARGET_PROPERTY:${DEPLOYMENT},DEPLOY_LOCATION>")
+ set_target_properties(${RUNTIME_NAME} PROPERTIES "RUNTIME_WAIT_FOR_DEPLOYMENT" "$<TARGET_PROPERTY:${DEPLOYMENT},DEPLOY_LOC>")
set_target_properties(${RUNTIME_NAME} PROPERTIES "RUNTIME_WAIT_FOR_COMMAND" "")
endfunction()
http://git-wip-us.apache.org/repos/asf/celix/blob/27b9648b/cmake/cmake_celix/main.c.in
----------------------------------------------------------------------
diff --git a/cmake/cmake_celix/main.c.in b/cmake/cmake_celix/main.c.in
new file mode 100644
index 0000000..bd26e8b
--- /dev/null
+++ b/cmake/cmake_celix/main.c.in
@@ -0,0 +1,24 @@
+/**
+ *Licensed to the Apache Software Foundation (ASF) under one
+ *or more contributor license agreements. See the NOTICE file
+ *distributed with this work for additional information
+ *regarding copyright ownership. The ASF licenses this file
+ *to you under the Apache License, Version 2.0 (the
+ *"License"); you may not use this file except in compliance
+ *with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *Unless required by applicable law or agreed to in writing,
+ *software distributed under the License is distributed on an
+ *"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ *specific language governing permissions and limitations
+ *under the License.
+ */
+
+#include "celix_launcher.h"
+
+int main(int argc, char *argv[]) {
+ return celixLauncher_launchWithArgs(argc, argv);
+}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/celix/blob/27b9648b/cmake/cmake_celix/runtime_common.sh.in
----------------------------------------------------------------------
diff --git a/cmake/cmake_celix/runtime_common.sh.in b/cmake/cmake_celix/runtime_common.sh.in
index bc01470..b819bf8 100644
--- a/cmake/cmake_celix/runtime_common.sh.in
+++ b/cmake/cmake_celix/runtime_common.sh.in
@@ -2,7 +2,7 @@
#Locations
BUILD_DIR="${BUILD_DIR:-@PROJECT_BINARY_DIR@}"
-RUNTIME_DIR="${RUNTIME_DIR:-$<TARGET_PROPERTY:@RUNTIME_TARGET_NAME@,RUNTIME_LOCATION>}"
+RUNTIME_DIR="${RUNTIME_DIR:-$<TARGET_PROPERTY:@RUNTIME_TARGET_NAME@,RUNTIME_LOC>}"
DEPLOY_DIR="${DEPLOY_DIR:-${BUILD_DIR}/deploy}"
#Name & Group
http://git-wip-us.apache.org/repos/asf/celix/blob/27b9648b/cmake/cmake_celix/runtime_start.sh.in
----------------------------------------------------------------------
diff --git a/cmake/cmake_celix/runtime_start.sh.in b/cmake/cmake_celix/runtime_start.sh.in
index d3c1774..f929f18 100644
--- a/cmake/cmake_celix/runtime_start.sh.in
+++ b/cmake/cmake_celix/runtime_start.sh.in
@@ -1,6 +1,6 @@
#!/bin/bash
-source $<TARGET_PROPERTY:@RUNTIME_TARGET_NAME@,RUNTIME_LOCATION>/common.sh
+source $<TARGET_PROPERTY:@RUNTIME_TARGET_NAME@,RUNTIME_LOC>/common.sh
rt_init
rt_start_all
http://git-wip-us.apache.org/repos/asf/celix/blob/27b9648b/cmake/cmake_celix/runtime_stop.sh.in
----------------------------------------------------------------------
diff --git a/cmake/cmake_celix/runtime_stop.sh.in b/cmake/cmake_celix/runtime_stop.sh.in
index b0db1e6..79c3fe7 100644
--- a/cmake/cmake_celix/runtime_stop.sh.in
+++ b/cmake/cmake_celix/runtime_stop.sh.in
@@ -1,6 +1,6 @@
#!/bin/bash
-source $<TARGET_PROPERTY:@RUNTIME_TARGET_NAME@,RUNTIME_LOCATION>/common.sh
+source $<TARGET_PROPERTY:@RUNTIME_TARGET_NAME@,RUNTIME_LOC>/common.sh
#Options
USE_SIGNAL=${USE_SIGNAL:-}
http://git-wip-us.apache.org/repos/asf/celix/blob/27b9648b/pubsub/deploy/CMakeLists.txt
----------------------------------------------------------------------
diff --git a/pubsub/deploy/CMakeLists.txt b/pubsub/deploy/CMakeLists.txt
index a787c2b..5039aea 100644
--- a/pubsub/deploy/CMakeLists.txt
+++ b/pubsub/deploy/CMakeLists.txt
@@ -19,13 +19,13 @@ find_program(ETCD_CMD NAMES etcd)
find_program(XTERM_CMD NAMES xterm)
# UDP Multicast
-add_deploy("pubsub_publisher_udp_mc"
- GROUP "pubsub"
+add_deploy(pubsub_publisher_udp_mc
+ GROUP pubsub
BUNDLES
shell
shell_tui
- org.apache.celix.pubsub_serializer.PubSubSerializerJson
- org.apache.celix.pubsub_discovery.etcd.PubsubDiscovery
+ org.apache.celix.pubsub_serializer.PubSubSerializerJson
+ org.apache.celix.pubsub_discovery.etcd.PubsubDiscovery
org.apache.celix.pubsub_topology_manager.PubSubTopologyManager
org.apache.celix.pubsub_admin.PubSubAdminUdpMc
org.apache.celix.pubsub_publisher.PoiPublisher
@@ -37,8 +37,8 @@ add_deploy("pubsub_subscriber_udp_mc"
BUNDLES
shell
shell_tui
- org.apache.celix.pubsub_serializer.PubSubSerializerJson
- org.apache.celix.pubsub_discovery.etcd.PubsubDiscovery
+ org.apache.celix.pubsub_serializer.PubSubSerializerJson
+ org.apache.celix.pubsub_discovery.etcd.PubsubDiscovery
org.apache.celix.pubsub_topology_manager.PubSubTopologyManager
org.apache.celix.pubsub_admin.PubSubAdminUdpMc
org.apache.celix.pubsub_subscriber.PoiSubscriber
@@ -49,8 +49,8 @@ add_deploy("pubsub_subscriber2_udp_mc"
BUNDLES
shell
shell_tui
- org.apache.celix.pubsub_serializer.PubSubSerializerJson
- org.apache.celix.pubsub_discovery.etcd.PubsubDiscovery
+ org.apache.celix.pubsub_serializer.PubSubSerializerJson
+ org.apache.celix.pubsub_discovery.etcd.PubsubDiscovery
org.apache.celix.pubsub_topology_manager.PubSubTopologyManager
org.apache.celix.pubsub_admin.PubSubAdminUdpMc
org.apache.celix.pubsub_subscriber.PoiSubscriber
@@ -79,8 +79,8 @@ if (BUILD_PUBSUB_PSA_ZMQ)
BUNDLES
shell
shell_tui
- org.apache.celix.pubsub_serializer.PubSubSerializerJson
- org.apache.celix.pubsub_discovery.etcd.PubsubDiscovery
+ org.apache.celix.pubsub_serializer.PubSubSerializerJson
+ org.apache.celix.pubsub_discovery.etcd.PubsubDiscovery
org.apache.celix.pubsub_topology_manager.PubSubTopologyManager
org.apache.celix.pubsub_admin.PubSubAdminZmq
org.apache.celix.pubsub_admin.PubSubAdminUdpMc
@@ -96,8 +96,8 @@ if (BUILD_PUBSUB_PSA_ZMQ)
BUNDLES
shell
shell_tui
- org.apache.celix.pubsub_serializer.PubSubSerializerJson
- org.apache.celix.pubsub_discovery.etcd.PubsubDiscovery
+ org.apache.celix.pubsub_serializer.PubSubSerializerJson
+ org.apache.celix.pubsub_discovery.etcd.PubsubDiscovery
org.apache.celix.pubsub_topology_manager.PubSubTopologyManager
org.apache.celix.pubsub_admin.PubSubAdminZmq
org.apache.celix.pubsub_admin.PubSubAdminUdpMc
@@ -113,8 +113,8 @@ if (BUILD_PUBSUB_PSA_ZMQ)
BUNDLES
shell
shell_tui
- org.apache.celix.pubsub_serializer.PubSubSerializerJson
- org.apache.celix.pubsub_discovery.etcd.PubsubDiscovery
+ org.apache.celix.pubsub_serializer.PubSubSerializerJson
+ org.apache.celix.pubsub_discovery.etcd.PubsubDiscovery
org.apache.celix.pubsub_topology_manager.PubSubTopologyManager
org.apache.celix.pubsub_admin.PubSubAdminZmq
org.apache.celix.pubsub_publisher.PoiPublisher
@@ -126,8 +126,8 @@ if (BUILD_PUBSUB_PSA_ZMQ)
BUNDLES
shell
shell_tui
- org.apache.celix.pubsub_serializer.PubSubSerializerJson
- org.apache.celix.pubsub_discovery.etcd.PubsubDiscovery
+ org.apache.celix.pubsub_serializer.PubSubSerializerJson
+ org.apache.celix.pubsub_discovery.etcd.PubsubDiscovery
org.apache.celix.pubsub_topology_manager.PubSubTopologyManager
org.apache.celix.pubsub_admin.PubSubAdminZmq
org.apache.celix.pubsub_publisher.PoiPublisher
@@ -141,7 +141,7 @@ if (BUILD_PUBSUB_PSA_ZMQ)
BUNDLES
shell
shell_tui
- org.apache.celix.pubsub_serializer.PubSubSerializerJson
+ org.apache.celix.pubsub_serializer.PubSubSerializerJson
org.apache.celix.pubsub_discovery.etcd.PubsubDiscovery
org.apache.celix.pubsub_topology_manager.PubSubTopologyManager
org.apache.celix.pubsub_admin.PubSubAdminZmq
@@ -153,7 +153,7 @@ if (BUILD_PUBSUB_PSA_ZMQ)
BUNDLES
shell
shell_tui
- org.apache.celix.pubsub_serializer.PubSubSerializerJson
+ org.apache.celix.pubsub_serializer.PubSubSerializerJson
org.apache.celix.pubsub_discovery.etcd.PubsubDiscovery
org.apache.celix.pubsub_topology_manager.PubSubTopologyManager
org.apache.celix.pubsub_admin.PubSubAdminZmq
@@ -167,7 +167,7 @@ if (BUILD_PUBSUB_PSA_ZMQ)
BUNDLES
shell
shell_tui
- org.apache.celix.pubsub_serializer.PubSubSerializerJson
+ org.apache.celix.pubsub_serializer.PubSubSerializerJson
org.apache.celix.pubsub_discovery.etcd.PubsubDiscovery
org.apache.celix.pubsub_topology_manager.PubSubTopologyManager
org.apache.celix.pubsub_admin.PubSubAdminZmq
@@ -180,7 +180,7 @@ if (BUILD_PUBSUB_PSA_ZMQ)
shell
shell_tui
org.apache.celix.pubsub_serializer.PubSubSerializerJson
- org.apache.celix.pubsub_discovery.etcd.PubsubDiscovery
+ org.apache.celix.pubsub_discovery.etcd.PubsubDiscovery
org.apache.celix.pubsub_topology_manager.PubSubTopologyManager
org.apache.celix.pubsub_admin.PubSubAdminZmq
org.apache.celix.pubsub_publisher.MpPublisher
http://git-wip-us.apache.org/repos/asf/celix/blob/27b9648b/pubsub/test/CMakeLists.txt
----------------------------------------------------------------------
diff --git a/pubsub/test/CMakeLists.txt b/pubsub/test/CMakeLists.txt
index f8c0fd2..8279c0c 100644
--- a/pubsub/test/CMakeLists.txt
+++ b/pubsub/test/CMakeLists.txt
@@ -115,7 +115,7 @@ if (ETCD_CMD)
#USE_TERM
)
add_test(NAME pubsub_udpmc_test
- COMMAND $<TARGET_PROPERTY:pubsub_test_udpmc_runtime,RUNTIME_LOCATION>/start.sh
+ COMMAND $<TARGET_PROPERTY:pubsub_test_udpmc_runtime,RUNTIME_LOC>/start.sh
)
add_runtime(pubsub_test_zmq_runtime
@@ -134,6 +134,6 @@ if (ETCD_CMD)
#USE_TERM
)
add_test(NAME pubsub_zmq_test
- COMMAND $<TARGET_PROPERTY:pubsub_test_zmq_runtime,RUNTIME_LOCATION>/start.sh
+ COMMAND $<TARGET_PROPERTY:pubsub_test_zmq_runtime,RUNTIME_LOC>/start.sh
)
endif ()
http://git-wip-us.apache.org/repos/asf/celix/blob/27b9648b/pubsub/test/test/tst_activator.cpp
----------------------------------------------------------------------
diff --git a/pubsub/test/test/tst_activator.cpp b/pubsub/test/test/tst_activator.cpp
index 4183972..04be892 100644
--- a/pubsub/test/test/tst_activator.cpp
+++ b/pubsub/test/test/tst_activator.cpp
@@ -41,12 +41,12 @@ static int tst_pubAdded(void *handle, service_reference_pt reference, void *serv
static int tst_pubRemoved(void *handle, service_reference_pt reference, void *service);
struct activator {
- pubsub_subscriber_t subSvc;
+ pubsub_subscriber_t subSvc{};
service_registration_pt reg = nullptr;
service_tracker_pt tracker = nullptr;
- pthread_mutex_t mutex; //protects below
+ pthread_mutex_t mutex{}; //protects below
pubsub_publisher_t* pubSvc = nullptr;
unsigned int syncId = 0;
@@ -96,7 +96,7 @@ celix_status_t bundleActivator_destroy(__attribute__((unused)) void * userData,
return CELIX_SUCCESS;
}
-static int tst_receive(void *handle, const char *msgType, unsigned int msgTypeId, void *msg, pubsub_multipart_callbacks_t *callbacks, bool *release) {
+static int tst_receive(void *handle, const char * /*msgType*/, unsigned int msgTypeId, void * /*msg*/, pubsub_multipart_callbacks_t* /*callbacks*/, bool* /*release*/) {
struct activator* act = static_cast<struct activator*>(handle);
pthread_mutex_lock(&act->mutex);
if (msgTypeId == act->syncId) {
@@ -108,7 +108,7 @@ static int tst_receive(void *handle, const char *msgType, unsigned int msgTypeId
return CELIX_SUCCESS;
}
-static int tst_pubAdded(void *handle, service_reference_pt reference, void *service) {
+static int tst_pubAdded(void *handle, service_reference_pt /*reference*/, void *service) {
struct activator* act = static_cast<struct activator*>(handle);
pthread_mutex_lock(&act->mutex);
act->pubSvc = static_cast<pubsub_publisher_t*>(service);
@@ -120,7 +120,7 @@ static int tst_pubAdded(void *handle, service_reference_pt reference, void *serv
}
-static int tst_pubRemoved(void *handle, service_reference_pt reference, void *service) {
+static int tst_pubRemoved(void *handle, service_reference_pt /*reference*/, void *service) {
struct activator* act = static_cast<struct activator*>(handle);
pthread_mutex_lock(&act->mutex);
if (act->pubSvc == service) {
@@ -218,4 +218,4 @@ TEST(PUBSUB_INT_GROUP, sendRecvTest) {
int count = g_act.count;
pthread_mutex_unlock(&g_act.mutex);
CHECK_EQUAL(COUNT, count);
-}
\ No newline at end of file
+}