diff options
author | Mustafa Ozcelikors | 2017-11-28 20:01:11 +0000 |
---|---|---|
committer | Mustafa Ozcelikors | 2017-11-28 20:01:11 +0000 |
commit | 9620dc232f864876ef3a988a26a0d6f42c2f6aee (patch) | |
tree | 7db0e528d8a07f3433c97eb246a4f50a748ca35f | |
parent | 350fb5f15c8aacb82f62499a79afe78401cfeb20 (diff) | |
download | org.eclipse.app4mc.examples-9620dc232f864876ef3a988a26a0d6f42c2f6aee.tar.gz org.eclipse.app4mc.examples-9620dc232f864876ef3a988a26a0d6f42c2f6aee.tar.xz org.eclipse.app4mc.examples-9620dc232f864876ef3a988a26a0d6f42c2f6aee.zip |
ROVER - Changes to CMake file and added CMake modules
Signed-off-by: Mustafa Ozcelikors <mozcelikors@gmail.com>
-rw-r--r-- | rover/CMakeLists.txt | 32 | ||||
-rw-r--r-- | rover/ExternalCMakeModules/Findraspicam.cmake | 34 | ||||
-rw-r--r-- | rover/ExternalCMakeModules/raspicamConfig.cmake | 34 |
3 files changed, 96 insertions, 4 deletions
diff --git a/rover/CMakeLists.txt b/rover/CMakeLists.txt index 01f6d58..54d2711 100644 --- a/rover/CMakeLists.txt +++ b/rover/CMakeLists.txt @@ -10,8 +10,12 @@ cmake_minimum_required (VERSION 2.8.11) project (roverapp) -#For find_package packages, export someextlib_DIR=/path/to/.. +# To find modules from other cmake-built projects that are searched with find_package, +# external cmake modules need to be provided. Those are typically named as Find<package>.cmake or <package>Config.cmake. +# Those must be added to the CMAKE_MODULE_PATH set below: +set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${CMAKE_SOURCE_DIR}/ExternalCMakeModules) +#For find_package packages, export someextlib_DIR=/path/to/.. # Required packages find_package (OpenCV REQUIRED) find_package (raspicam REQUIRED) @@ -35,6 +39,7 @@ include_directories (${CMAKE_SOURCE_DIR}/include/drivers/oled_drivers) #Include directories for external libraries include_directories( ${OpenCV_INCLUDE_DIRS} ) +include_directories( ${raspicam_INCLUDE_DIRS} ) #include_directories( ${jsoncpp_INCLUDE_DIRS} ) #include_directories( ${bluetooth_INCLUDE_DIRS} ) @@ -42,8 +47,12 @@ include_directories( ${OpenCV_INCLUDE_DIRS} ) # LIBRARIES # -#Add api -add_library(roverapi SHARED ${CMAKE_SOURCE_DIR}/src/api/basic_psys_rover.c) +#Add roverapi +file (GLOB_RECURSE ROVERAPI_FILES + ${CMAKE_SOURCE_DIR}/src/roverapi/*.c + ${CMAKE_SOURCE_DIR}/src/roverapi/*.cpp +) +add_library (roverapi SHARED ${ROVERAPI_FILES}) set(CUSTOM_LIBS_DIR ${CMAKE_SOURCE_DIR}/src/libraries) @@ -80,12 +89,27 @@ add_library (roverappdrivers SHARED ${ROVERAPP_DRIVER_FILES}) add_executable(roverapp ${CMAKE_SOURCE_DIR}/src/roverapp.cpp) # +# LINKING TO ROVER API +# + +target_link_libraries (roverapi wiringPi) +target_link_libraries (roverapi wiringPiDev) + +target_link_libraries(roverapi hono_interaction) +target_link_libraries(roverapi pthread_distribution) +target_link_libraries(roverapi status_library) +target_link_libraries(roverapi pthread_monitoring) +target_link_libraries(roverapi timing) + +target_link_libraries (roverapi roverappdrivers) + +# # LINKING TO ROVER TASKS # #Link external libraries # Search with sudo find / -name *libx* -# If there is an x.so, you can link x library +# If there is an x.so in /usr/lib/ or /usr/local/lib/, you can link x library target_link_libraries (roverapptasks opencv_core) target_link_libraries (roverapptasks opencv_imgproc) target_link_libraries (roverapptasks opencv_highgui) diff --git a/rover/ExternalCMakeModules/Findraspicam.cmake b/rover/ExternalCMakeModules/Findraspicam.cmake new file mode 100644 index 0000000..5c27b7c --- /dev/null +++ b/rover/ExternalCMakeModules/Findraspicam.cmake @@ -0,0 +1,34 @@ +# =================================================================================== +# raspicam CMake configuration file +# +# ** File generated automatically, do not modify ** +# +# Usage from an external project: +# In your CMakeLists.txt, add these lines: +# +# FIND_PACKAGE(raspicam REQUIRED ) +# TARGET_LINK_LIBRARIES(MY_TARGET_NAME ) +# +# This file will define the following variables: +# - raspicam_LIBS : The list of libraries to links against. +# - raspicam_LIB_DIR : The directory where lib files are. Calling LINK_DIRECTORIES +# with this path is NOT needed. +# - raspicam_VERSION : The version of this PROJECT_NAME build. Example: "1.2.0" +# - raspicam_VERSION_MAJOR : Major version part of VERSION. Example: "1" +# - raspicam_VERSION_MINOR : Minor version part of VERSION. Example: "2" +# - raspicam_VERSION_PATCH : Patch version part of VERSION. Example: "0" +# +# =================================================================================== +INCLUDE_DIRECTORIES(;/usr/local/include) +LINK_DIRECTORIES("/usr/local/lib") + +SET(raspicam_LIBS /opt/vc/lib/libmmal_core.so;/opt/vc/lib/libmmal_util.so;/opt/vc/lib/libmmal.so raspicam) +SET(raspicam_FOUND "YES") + +SET(raspicam_CV_FOUND "YES") +SET(raspicam_CV_LIBS /opt/vc/lib/libmmal_core.so;/opt/vc/lib/libmmal_util.so;/opt/vc/lib/libmmal.so raspicam opencv_calib3d;opencv_core;opencv_features2d;opencv_flann;opencv_highgui;opencv_imgcodecs;opencv_imgproc;opencv_ml;opencv_objdetect;opencv_photo;opencv_shape;opencv_stitching;opencv_superres;opencv_video;opencv_videoio;opencv_videostab;opencv_aruco;opencv_bgsegm;opencv_bioinspired;opencv_ccalib;opencv_datasets;opencv_dnn;opencv_dpm;opencv_face;opencv_freetype;opencv_fuzzy;opencv_line_descriptor;opencv_optflow;opencv_phase_unwrapping;opencv_plot;opencv_reg;opencv_rgbd;opencv_saliency;opencv_stereo;opencv_structured_light;opencv_surface_matching;opencv_text;opencv_tracking;opencv_xfeatures2d;opencv_ximgproc;opencv_xobjdetect;opencv_xphoto raspicam_cv) + +SET(raspicam_VERSION 0.1.2) +SET(raspicam_VERSION_MAJOR 0) +SET(raspicam_VERSION_MINOR 1) +SET(raspicam_VERSION_PATCH 2) diff --git a/rover/ExternalCMakeModules/raspicamConfig.cmake b/rover/ExternalCMakeModules/raspicamConfig.cmake new file mode 100644 index 0000000..5c27b7c --- /dev/null +++ b/rover/ExternalCMakeModules/raspicamConfig.cmake @@ -0,0 +1,34 @@ +# =================================================================================== +# raspicam CMake configuration file +# +# ** File generated automatically, do not modify ** +# +# Usage from an external project: +# In your CMakeLists.txt, add these lines: +# +# FIND_PACKAGE(raspicam REQUIRED ) +# TARGET_LINK_LIBRARIES(MY_TARGET_NAME ) +# +# This file will define the following variables: +# - raspicam_LIBS : The list of libraries to links against. +# - raspicam_LIB_DIR : The directory where lib files are. Calling LINK_DIRECTORIES +# with this path is NOT needed. +# - raspicam_VERSION : The version of this PROJECT_NAME build. Example: "1.2.0" +# - raspicam_VERSION_MAJOR : Major version part of VERSION. Example: "1" +# - raspicam_VERSION_MINOR : Minor version part of VERSION. Example: "2" +# - raspicam_VERSION_PATCH : Patch version part of VERSION. Example: "0" +# +# =================================================================================== +INCLUDE_DIRECTORIES(;/usr/local/include) +LINK_DIRECTORIES("/usr/local/lib") + +SET(raspicam_LIBS /opt/vc/lib/libmmal_core.so;/opt/vc/lib/libmmal_util.so;/opt/vc/lib/libmmal.so raspicam) +SET(raspicam_FOUND "YES") + +SET(raspicam_CV_FOUND "YES") +SET(raspicam_CV_LIBS /opt/vc/lib/libmmal_core.so;/opt/vc/lib/libmmal_util.so;/opt/vc/lib/libmmal.so raspicam opencv_calib3d;opencv_core;opencv_features2d;opencv_flann;opencv_highgui;opencv_imgcodecs;opencv_imgproc;opencv_ml;opencv_objdetect;opencv_photo;opencv_shape;opencv_stitching;opencv_superres;opencv_video;opencv_videoio;opencv_videostab;opencv_aruco;opencv_bgsegm;opencv_bioinspired;opencv_ccalib;opencv_datasets;opencv_dnn;opencv_dpm;opencv_face;opencv_freetype;opencv_fuzzy;opencv_line_descriptor;opencv_optflow;opencv_phase_unwrapping;opencv_plot;opencv_reg;opencv_rgbd;opencv_saliency;opencv_stereo;opencv_structured_light;opencv_surface_matching;opencv_text;opencv_tracking;opencv_xfeatures2d;opencv_ximgproc;opencv_xobjdetect;opencv_xphoto raspicam_cv) + +SET(raspicam_VERSION 0.1.2) +SET(raspicam_VERSION_MAJOR 0) +SET(raspicam_VERSION_MINOR 1) +SET(raspicam_VERSION_PATCH 2) |