From f3638ec5a1eb1b439ca51f7034c194343d88f020 Mon Sep 17 00:00:00 2001 From: Marco Residori Date: Wed, 25 Jun 2014 09:29:34 +0200 Subject: Improve CMakeLists.txt files and to yocto recipe --- build-all.sh | 2 +- enhanced-position-service/CMakeLists.txt | 35 +++++++++++++++------- .../test/enhanced-position-client.cpp | 2 +- gnss-service/CMakeLists.txt | 3 +- gnss-service/src/CMakeLists.txt | 2 +- gnss-service/test/CMakeLists.txt | 2 +- gnss-service/test/compliance-test/CMakeLists.txt | 2 ++ gnss-service/test/gnss-service-client.c | 2 +- positioning_1.0.bb | 17 +++++++---- run-test.sh | 9 +++--- sensors-service/src/CMakeLists.txt | 24 +++++++-------- sensors-service/test/CMakeLists.txt | 8 ++--- 12 files changed, 66 insertions(+), 42 deletions(-) diff --git a/build-all.sh b/build-all.sh index b007fa1..bfe68e2 100755 --- a/build-all.sh +++ b/build-all.sh @@ -23,7 +23,7 @@ # modify the following flags as needed: GNSS_SERVICE_FLAGS='-DWITH_DLT=OFF -DWITH_GPSD=OFF -DWITH_REPLAYER=ON -DWITH_TESTS=ON' SENSORS_SERVICE_FLAGS='-DWITH_DLT=OFF -DWITH_REPLAYER=ON -DWITH_IPHONE=OFF -DWITH_TESTS=ON' -ENHANCED_POSITION_SERVICE_FLAGS='-DWITH_DLT=OFF -DWITH_GPSD=OFF -DWITH_REPLAYER=ON -DWITH_TESTS=ON' +ENHANCED_POSITION_SERVICE_FLAGS='-DWITH_DLT=OFF -DWITH_GPSD=OFF -DWITH_REPLAYER=ON -DWITH_IPHONE=OFF -DWITH_TESTS=ON' LOG_REPLAYER_FLAGS='-DWITH_DLT=OFF -DWITH_TESTS=ON' #-------------------------------------------------------------------------- diff --git a/enhanced-position-service/CMakeLists.txt b/enhanced-position-service/CMakeLists.txt index 60a2f9e..ed92182 100644 --- a/enhanced-position-service/CMakeLists.txt +++ b/enhanced-position-service/CMakeLists.txt @@ -22,36 +22,51 @@ cmake_minimum_required(VERSION 2.6.0) option(WITH_DLT "Enable DLT logging" OFF) +option(WITH_GPSD + "Use GPSD as source of GPS data" OFF) + +option(WITH_REPLAYER + "Use REPLAYER as source of GPS data" ON) + +option(WITH_TESTS + "Compile test applications" OFF) + message(STATUS) message(STATUS "---------------------------------------------------------") set(gnss-service_INCLUDE_DIRS "${PROJECT_SOURCE_DIR}/../gnss-service/api") set(gnss-service_LIBRARY_DIRS "${PROJECT_BINARY_DIR}/../gnss-service/src") -if(WITH_REPLAYER) +if(WITH_GPSD) + set(gnss-service_LIBRARIES "gnss-service-use-gpsd") +elseif(WITH_REPLAYER) set(gnss-service_LIBRARIES "gnss-service-use-replayer") -elseif(WITH_GPSD) - set(gnss-service_LIBRARIES "gnss-service-use-gpsd") +else() + message(STATUS "Invalid cmake options!") endif() set(sensors-service_INCLUDE_DIRS "${PROJECT_SOURCE_DIR}/../sensors-service/api") set(sensors-service_LIBRARY_DIRS "${PROJECT_BINARY_DIR}/../sensors-service/src") -if(WITH_REPLAYER) - set(sensors-service_LIBRARIES "sensors-service-use-replayer") +if(WITH_IPHONE) + set(sensors-service_LIBRARIES "sensors-service-use-iphone") +elseif(WITH_REPLAYER) + set(sensors-service_LIBRARIES "sensors-service-use-replayer") +else() + message(STATUS "Invalid cmake options!") endif() include_directories(api src test ${gnss-service_INCLUDE_DIRS} ${sensors-service_INCLUDE_DIRS}) add_subdirectory(src) -message(STATUS "---------------------------------------------------------") -if(WITH_TESTS) -add_subdirectory(test) message(STATUS "---------------------------------------------------------") -add_subdirectory(test/compliance-test) -message(STATUS "---------------------------------------------------------") +if(WITH_TESTS) + add_subdirectory(test) + message(STATUS "---------------------------------------------------------") + add_subdirectory(test/compliance-test) + message(STATUS "---------------------------------------------------------") endif() message(STATUS) diff --git a/enhanced-position-service/test/enhanced-position-client.cpp b/enhanced-position-service/test/enhanced-position-client.cpp index 6b9e00a..838183a 100644 --- a/enhanced-position-service/test/enhanced-position-client.cpp +++ b/enhanced-position-service/test/enhanced-position-client.cpp @@ -107,7 +107,7 @@ int main() DLT_REGISTER_APP("ENHPOS", "EnhancedPositionClient"); DLT_REGISTER_CONTEXT(gCtx,"EPCL", "Global Context"); - LOG_INFO_MSG(gCtx,"starting EnhancedPositionClient..."); + LOG_INFO_MSG(gCtx,"Starting EnhancedPositionClient..."); signal(SIGTERM, signalhandler); signal(SIGINT, signalhandler); diff --git a/gnss-service/CMakeLists.txt b/gnss-service/CMakeLists.txt index 1288fca..83dde1b 100644 --- a/gnss-service/CMakeLists.txt +++ b/gnss-service/CMakeLists.txt @@ -41,10 +41,11 @@ add_subdirectory(src) message(STATUS "---------------------------------------------------------") if(WITH_TESTS) -add_subdirectory(test) + add_subdirectory(test) message(STATUS "---------------------------------------------------------") add_subdirectory(test/compliance-test) + message(STATUS "---------------------------------------------------------") endif() diff --git a/gnss-service/src/CMakeLists.txt b/gnss-service/src/CMakeLists.txt index edf7b2a..1c802fe 100644 --- a/gnss-service/src/CMakeLists.txt +++ b/gnss-service/src/CMakeLists.txt @@ -54,7 +54,7 @@ elseif(WITH_REPLAYER) add_library(gnss-service-use-replayer SHARED ${LIB_SRC_USE_REPLAYER}) target_link_libraries(gnss-service-use-replayer ${LIBRARIES}) else() - message(STATUS "Invalid cmake option!") + message(STATUS "Invalid cmake options!") endif() diff --git a/gnss-service/test/CMakeLists.txt b/gnss-service/test/CMakeLists.txt index 86bb3c4..c40ef32 100755 --- a/gnss-service/test/CMakeLists.txt +++ b/gnss-service/test/CMakeLists.txt @@ -35,7 +35,7 @@ if(WITH_GPSD) elseif(WITH_REPLAYER) set(LIBRARIES gnss-service-use-replayer) else() - message(STATUS "Invalid cmake option!") + message(STATUS "Invalid cmake options!") endif() if(WITH_DLT) diff --git a/gnss-service/test/compliance-test/CMakeLists.txt b/gnss-service/test/compliance-test/CMakeLists.txt index 4bf194c..51da891 100644 --- a/gnss-service/test/compliance-test/CMakeLists.txt +++ b/gnss-service/test/compliance-test/CMakeLists.txt @@ -35,6 +35,8 @@ if(WITH_GPSD) set(LIBRARIES gnss-service-use-gpsd gps) elseif(WITH_REPLAYER) set(LIBRARIES gnss-service-use-replayer) +else() + message(STATUS "Invalid cmake options!") endif() if(WITH_DLT) diff --git a/gnss-service/test/gnss-service-client.c b/gnss-service/test/gnss-service-client.c index 86f7c17..969bfdc 100644 --- a/gnss-service/test/gnss-service-client.c +++ b/gnss-service/test/gnss-service-client.c @@ -154,7 +154,7 @@ int main() DLT_REGISTER_APP("GNSS", "GNSS-SERVICE-CLIENT"); DLT_REGISTER_CONTEXT(gCtx,"GCLT", "Global Context"); - LOG_INFO_MSG(gCtx,"starting gnss-service-client..."); + LOG_INFO_MSG(gCtx,"Starting gnss-service-client..."); // register for GNSS gnssSimpleRegisterPositionCallback(&cbPosition); diff --git a/positioning_1.0.bb b/positioning_1.0.bb index 3b4439a..1e40c0a 100755 --- a/positioning_1.0.bb +++ b/positioning_1.0.bb @@ -18,7 +18,9 @@ # # Description: This is a Yocto recipe of the 4 proofs of concept contained -# in the positioning repository +# in the positioning repository. +# Each PoC has its own sub-package. In this way it is possible to install +# only the PoC(s) that are of interest # # Status: Work in Progress # @@ -47,23 +49,26 @@ inherit cmake pkgconfig PACKAGES =+ "${PN}-gnss ${PN}-gnss-test ${PN}-sns ${PN}-sns-test ${PN}-repl ${PN}-repl-test ${PN}-enhpos ${PN}-enhpos-test " +RDEPENDS_${PN}-repl-test = "${PN}-repl" +DEPENDS_${PN}-repl-test = "${PN}-repl" + RDEPENDS_${PN}-gnss-test = "${PN}-gnss" DEPENDS_${PN}-gnss-test = "${PN}-gnss" RDEPENDS_${PN}-sns-test = "${PN}-sns" DEPENDS_${PN}-sns-test = "${PN}-sns" +RDEPENDS_${PN}-enhpos = "${PN}-gnss ${PN}-sns" +DEPENDS_${PN}-enhpos = "${PN}-gnss ${PN}-sns" + RDEPENDS_${PN}-enhpos-test = "${PN}-enhpos" DEPENDS_${PN}-enhpos-test = "${PN}-enhpos" -RDEPENDS_${PN}-repl-test = "${PN}-repl" -DEPENDS_${PN}-repl-test = "${PN}-repl" - do_configure() { - cd ${S}/gnss-service && cmake -DWITH_DLT=OFF -DWITH_GPSD=OFF -DWITH_REPLAYER=ON -DWITH_TESTS=ON . + cd ${S}/gnss-service && cmake -DWITH_DLT=ON -DWITH_GPSD=OFF -DWITH_REPLAYER=ON -DWITH_TESTS=ON . cd ${S}/sensors-service && cmake -DWITH_DLT=OFF -DWITH_REPLAYER=ON -DWITH_IPHONE=OFF -DWITH_TESTS=ON . cd ${S}/log-replayer && cmake -DWITH_DLT=OFF -DWITH_TESTS=ON . - cd ${S}/enhanced-position-service && cmake -DWITH_DLT=OFF -DWITH_GPSD=OFF -DWITH_REPLAYER=ON -DWITH_TESTS=ON . + cd ${S}/enhanced-position-service && cmake -DWITH_DLT=OFF -DWITH_GPSD=OFF -DWITH_REPLAYER=ON -DWITH_IPHONE=OFF -DWITH_TESTS=ON . } do_compile() { diff --git a/run-test.sh b/run-test.sh index b4d2eaa..8a63e21 100755 --- a/run-test.sh +++ b/run-test.sh @@ -62,7 +62,7 @@ testEnhancedPositionService() sleep 3 echo 'starting log replayer...' build/log-replayer/src/log-replayer log-replayer/logs/geneve-cologny.log > /dev/null 2>&1 & - sleep 10 + sleep 20 echo 'stopping test...' killall enhanced-position-client killall enhanced-position-service @@ -71,11 +71,12 @@ testEnhancedPositionService() testLogReplayer() { - build/log-replayer/test/test-log-replayer 9930 & - sleep 3 echo 'starting log replayer...' - build/log-replayer/src/log-replayer log-replayer/logs/geneve-cologny.log > /dev/null 2>&1 + build/log-replayer/src/log-replayer log-replayer/logs/geneve-cologny.log > /dev/null 2>&1 & #build/log-replayer/src/log-replayer log-replayer/logs/20100411_Geko_Regensburg_short.log > /dev/null 2>&1 & + sleep 1 + echo 'starting test application...' + build/log-replayer/test/test-log-replayer 9930 & sleep 10 echo 'stopping test...' killall log-replayer diff --git a/sensors-service/src/CMakeLists.txt b/sensors-service/src/CMakeLists.txt index 9656133..c4c5aed 100644 --- a/sensors-service/src/CMakeLists.txt +++ b/sensors-service/src/CMakeLists.txt @@ -36,17 +36,7 @@ if(WITH_DLT) set(LIBRARIES ${LIBRARIES} ${DLT_LIBRARIES}) endif() -if(WITH_REPLAYER) - #generate library using replayer as input - set(LIB_SRC_USE_REPLAYER ${CMAKE_SOURCE_DIR}/src/sns-use-replayer.c - ${CMAKE_SOURCE_DIR}/src/wheeltick.c - ${CMAKE_SOURCE_DIR}/src/gyroscope.c - ${CMAKE_SOURCE_DIR}/src/vehicle-speed.c - ${CMAKE_SOURCE_DIR}/src/sns-meta-data.c) - - add_library(sensors-service-use-replayer SHARED ${LIB_SRC_USE_REPLAYER}) - target_link_libraries(sensors-service-use-replayer ${LIBRARIES}) -elseif(WITH_IPHONE) +if(WITH_IPHONE) #generate library using iphone as input set(LIB_SRC_USE_IPHONE ${CMAKE_SOURCE_DIR}/src/sns-use-iphone.c ${CMAKE_SOURCE_DIR}/src/wheeltick.c @@ -56,8 +46,18 @@ elseif(WITH_IPHONE) add_library(sensors-service-use-iphone SHARED ${LIB_SRC_USE_IPHONE}) target_link_libraries(sensors-service-use-iphone ${LIBRARIES}) +elseif(WITH_REPLAYER) + #generate library using replayer as input + set(LIB_SRC_USE_REPLAYER ${CMAKE_SOURCE_DIR}/src/sns-use-replayer.c + ${CMAKE_SOURCE_DIR}/src/wheeltick.c + ${CMAKE_SOURCE_DIR}/src/gyroscope.c + ${CMAKE_SOURCE_DIR}/src/vehicle-speed.c + ${CMAKE_SOURCE_DIR}/src/sns-meta-data.c) + + add_library(sensors-service-use-replayer SHARED ${LIB_SRC_USE_REPLAYER}) + target_link_libraries(sensors-service-use-replayer ${LIBRARIES}) else() - message(STATUS "Invalid cmake option!") + message(STATUS "Invalid cmake options!") endif() diff --git a/sensors-service/test/CMakeLists.txt b/sensors-service/test/CMakeLists.txt index 7b8f05e..8b67f2a 100644 --- a/sensors-service/test/CMakeLists.txt +++ b/sensors-service/test/CMakeLists.txt @@ -26,12 +26,12 @@ include_directories("${PROJECT_SOURCE_DIR}/src") find_package(PkgConfig) -if(WITH_REPLAYER) - set(LIBRARIES sensors-service-use-replayer) -elseif(WITH_IPHONE) +if(WITH_IPHONE) set(LIBRARIES sensors-service-use-iphone) +elseif(WITH_REPLAYER) + set(LIBRARIES sensors-service-use-replayer) else() - message(STATUS "Invalid cmake option!") + message(STATUS "Invalid cmake options!") endif() if(WITH_DLT) -- cgit v1.2.1