summaryrefslogtreecommitdiff
path: root/src/components
diff options
context:
space:
mode:
authorIvo Stoilov (GitHub) <istoilov@luxoft.com>2016-12-30 17:47:39 +0200
committerIvo Stoilov (GitHub) <istoilov@luxoft.com>2016-12-30 17:47:39 +0200
commit16a403b3cca43e4b211525f4b6c80a43466b5e97 (patch)
tree52c905b3f4afa687996156c965c0cb641fa3c153 /src/components
parent7d29edc6716188776d4a5668d7960dc58724f611 (diff)
downloadsdl_core-16a403b3cca43e4b211525f4b6c80a43466b5e97.tar.gz
Refactor CMake files
Merge components refactoring from Windows port barnch - add cmake tools - refactor protocol handler CMakeLists.txt file - refactor interfaces CMakeLists.txt file - refactor smart object CMakeLists.txt file - refactor formatters CMakeLists.txt file - refactor config profile CMakeLists.txt file - refactor policy CMakeLists.txt file - refactor resumption CMakeLists.txt file - refactor connection handler CMakeLists.txt file - refactor application manager CMakeLists.txt file - refactor security manager CMakeLists.txt file - refactor dbus CMakeLists.txt file - refactor hmi message handler CMakeLists.txt file - refactor transport manager CMakeLists.txt file - refactor utils CMakeLists.txt file - refactor components root CMakeLists.txt file - refactor utils CMakeLists.txt file - refactor components root CMakeLists.txt file - refactor media manager CMakeLists.txt file - refactor telemetry monitor CMakeLists.txt file - refactor appmain CMakeLists.txt file - refactor plugins CMakeLists.txt file - refactor 3rd party CMakeLists.txt files - create cmake helper for interface generation - refactor root CMakeLists.txt file Move cmake modules to tools Related taks APPLINK-30588 APPLINK-30972
Diffstat (limited to 'src/components')
-rw-r--r--src/components/CMakeLists.txt48
-rw-r--r--src/components/HMI/IVSU/PROPRIETARY_REQUEST~0
-rw-r--r--src/components/application_manager/CMakeLists.txt117
-rw-r--r--src/components/application_manager/test/CMakeLists.txt190
-rw-r--r--src/components/application_manager/test/commands/CMakeLists.txt2
-rw-r--r--src/components/application_manager/test/commands/mobile/alert_request_test.cc2
-rw-r--r--src/components/application_manager/test/commands/mobile/read_did_request_test.cc2
-rwxr-xr-xsrc/components/application_manager/test/message_helper/CMakeLists.txt.user189
-rw-r--r--src/components/application_manager/test/resumption/resume_ctrl_test.cc10
-rw-r--r--src/components/config_profile/CMakeLists.txt16
-rw-r--r--src/components/config_profile/test/CMakeLists.txt16
-rw-r--r--src/components/connection_handler/CMakeLists.txt19
-rw-r--r--src/components/connection_handler/test/CMakeLists.txt20
-rw-r--r--src/components/dbus/CMakeLists.txt19
-rw-r--r--src/components/dbus/test/CMakeLists.txt19
-rw-r--r--src/components/formatters/CMakeLists.txt24
-rw-r--r--src/components/formatters/test/CMakeLists.txt24
-rw-r--r--src/components/hmi_message_handler/CMakeLists.txt37
-rw-r--r--src/components/hmi_message_handler/test/CMakeLists.txt35
-rw-r--r--src/components/include/utils/threads/CMakeLists.txt5
-rw-r--r--src/components/interfaces/CMakeLists.txt66
-rw-r--r--src/components/media_manager/CMakeLists.txt119
-rw-r--r--src/components/media_manager/test/CMakeLists.txt10
-rw-r--r--src/components/policy/CMakeLists.txt94
-rw-r--r--src/components/policy/test/CMakeLists.txt23
-rw-r--r--src/components/protocol/CMakeLists.txt18
-rw-r--r--src/components/protocol_handler/CMakeLists.txt13
-rw-r--r--src/components/protocol_handler/test/CMakeLists.txt20
-rw-r--r--src/components/qt_hmi/test/CMakeLists.txt3
-rw-r--r--src/components/resumption/CMakeLists.txt9
-rw-r--r--src/components/resumption/test/CMakeLists.txt17
-rw-r--r--src/components/rpc_base/CMakeLists.txt28
-rw-r--r--src/components/rpc_base/test/CMakeLists.txt31
-rw-r--r--src/components/security_manager/CMakeLists.txt25
-rw-r--r--src/components/security_manager/test/CMakeLists.txt24
-rw-r--r--src/components/smart_objects/CMakeLists.txt30
-rw-r--r--src/components/smart_objects/test/CMakeLists.txt27
-rw-r--r--src/components/telemetry_monitor/CMakeLists.txt21
-rw-r--r--src/components/telemetry_monitor/test/CMakeLists.txt24
-rw-r--r--src/components/transport_manager/CMakeLists.txt102
-rw-r--r--src/components/transport_manager/test/CMakeLists.txt27
-rw-r--r--src/components/transport_manager/test/raw_message_matcher.cc2
-rw-r--r--src/components/utils/CMakeLists.txt107
-rw-r--r--src/components/utils/src/qdb_wrapper/CMakeLists.txt54
-rw-r--r--src/components/utils/src/signals_posix.cc (renamed from src/components/utils/src/signals_linux.cc)0
-rw-r--r--src/components/utils/src/threads/thread_posix.cc (renamed from src/components/utils/src/threads/posix_thread.cc)0
-rw-r--r--src/components/utils/test/CMakeLists.txt90
-rw-r--r--src/components/utils/test/test_generator/CMakeLists.txt35
48 files changed, 736 insertions, 1077 deletions
diff --git a/src/components/CMakeLists.txt b/src/components/CMakeLists.txt
index d31141b36c..28c8e68b54 100644
--- a/src/components/CMakeLists.txt
+++ b/src/components/CMakeLists.txt
@@ -29,68 +29,64 @@
# POSSIBILITY OF SUCH DAMAGE.
set(COMPONENTS_DIR ${CMAKE_SOURCE_DIR}/src/components)
+set(COMPONENTS_DIR ${COMPONENTS_DIR} PARENT_SCOPE)
-# --- HMI_API interfaces
+# --- HMI, MOBILE Interfaces
add_subdirectory(./interfaces)
-# --- ProtocolHandler
+# --- Protocol Handler
add_subdirectory(./protocol)
-# --- TransportManager
+# --- Transport Manager
add_subdirectory(./transport_manager)
-# --- Policies
+# --- Resumption
add_subdirectory(./resumption)
-# --- formatters
+# --- Formatters
add_subdirectory(./formatters)
-# --- ProtocolHandler
+# --- Protocol Handler
add_subdirectory(./protocol_handler)
-# --- ConnectionHandler
+# --- Connection Handler
add_subdirectory(./connection_handler)
# --- Utils
add_subdirectory(./utils)
-# --- Security manager
+# --- Security Manager
if(ENABLE_SECURITY)
add_subdirectory(./security_manager)
endif()
-#
-# --- Policy_impl
+
+# --- Policy
add_subdirectory(./policy)
-# --- Validated types
+# --- Validated Types
add_subdirectory(./rpc_base)
-# --- SmartObjects
+# --- Smart Objects
add_subdirectory(./smart_objects)
-# --- Application manager
+# --- Application Manager
add_subdirectory(./application_manager)
# --- HMI Message Handler
add_subdirectory(./hmi_message_handler)
-# --- Config
+# --- Config Profile
add_subdirectory(./config_profile)
-# --- AudioManager
+# --- Media Manager
add_subdirectory(./media_manager)
-if (TELEMETRY_MONITOR)
- add_subdirectory(./telemetry_monitor)
+# --- Telemetry Monitor
+if(TELEMETRY_MONITOR)
+ add_subdirectory(./telemetry_monitor)
endif()
-
-if (${HMI_DBUS_API})
# --- DBus
- add_subdirectory(./dbus)
-endif ()
-if (${QT_HMI})
-# --- Qt HMI
- add_subdirectory(./qt_hmi)
-endif ()
-
+if(HMI_DBUS_API)
+ add_subdirectory(./dbus)
+endif()
diff --git a/src/components/HMI/IVSU/PROPRIETARY_REQUEST~ b/src/components/HMI/IVSU/PROPRIETARY_REQUEST~
deleted file mode 100644
index e69de29bb2..0000000000
--- a/src/components/HMI/IVSU/PROPRIETARY_REQUEST~
+++ /dev/null
diff --git a/src/components/application_manager/CMakeLists.txt b/src/components/application_manager/CMakeLists.txt
index 32848b1c6d..591b2063b9 100644
--- a/src/components/application_manager/CMakeLists.txt
+++ b/src/components/application_manager/CMakeLists.txt
@@ -28,6 +28,8 @@
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
+include(${CMAKE_SOURCE_DIR}/tools/cmake/helpers/platform.cmake)
+include(${CMAKE_SOURCE_DIR}/tools/cmake/helpers/sources.cmake)
set (AM_SOURCE_DIR ${COMPONENTS_DIR}/application_manager)
set (AM_TEST_DIR ${AM_SOURCE_DIR}/test)
@@ -41,16 +43,14 @@ include_directories (
${COMPONENTS_DIR}/protocol_handler/include/
${COMPONENTS_DIR}/smart_objects/include/
${COMPONENTS_DIR}/hmi_message_handler/include
- ${COMPONENTS_DIR}/media_manager/include/
- ${COMPONENTS_DIR}/connection_handler/include/
- ${COMPONENTS_DIR}/config_profile/include/
- ${COMPONENTS_DIR}/request_watchdog/include/
- ${COMPONENTS_DIR}/resumption/include/
- ${COMPONENTS_DIR}/app_launch/include/
- ${COMPONENTS_DIR}/rpc_base/include/
- ${COMPONENTS_DIR}/interfaces
- ${CMAKE_BINARY_DIR}/src/components/
- ${COMPONENTS_DIR}/policy/include/
+ ${COMPONENTS_DIR}/media_manager/include
+ ${COMPONENTS_DIR}/connection_handler/include
+ ${COMPONENTS_DIR}/config_profile/include
+ ${COMPONENTS_DIR}/request_watchdog/include
+ ${COMPONENTS_DIR}/resumption/include
+ ${COMPONENTS_DIR}/rpc_base/include
+ ${COMPONENTS_DIR}/policy/include
+ ${CMAKE_BINARY_DIR}/src/components
${JSONCPP_INCLUDE_DIRECTORY}
${ENCRYPTION_INCLUDE_DIRECTORY}
${MESSAGE_BROKER_INCLUDE_DIRECTORY}
@@ -69,48 +69,60 @@ if (${CMAKE_SYSTEM_NAME} MATCHES "QNX")
)
endif()
-file (GLOB SOURCES
- ${AM_SOURCE_DIR}/src/*
+set (MESSAGE_HELPER_SOURCE_DIR
+ ${AM_SOURCE_DIR}/src/message_helper
)
-set (MESSAGE_HELPER_SOURCES
- ${AM_SOURCE_DIR}/src/message_helper/message_helper.cc
+set (MESSAGE_HELPER_PATHS
+ ${MESSAGE_HELPER_SOURCE_DIR}
)
+collect_sources(MESSAGE_HELPER_SOURCES "${MESSAGE_HELPER_PATHS}")
-set (POLICIES_MANAGER
-${AM_SOURCE_DIR}/src/policies/policy_handler.cc
-${AM_SOURCE_DIR}/src/usage_statistics.cc
-${AM_SOURCE_DIR}/src/policies/policy_event_observer.cc
-${AM_SOURCE_DIR}/src/policies/delegates/app_permission_delegate.cc
-${AM_SOURCE_DIR}/src/policies/delegates/statistics_delegate.cc
+
+set (POLICIES_SOURCE_DIR
+ ${AM_SOURCE_DIR}/src/policies
)
- include_directories(
- ${COMPONENTS_DIR}/policy/src/policy/policy_table/table_struct
- )
-file (GLOB EVENT_ENGINE
- ${AM_SOURCE_DIR}/src/event_engine/*
+set (POLICIES_MANAGER_SOURCES
+ ${POLICIES_SOURCE_DIR}/policy_handler.cc
+ ${POLICIES_SOURCE_DIR}/policy_event_observer.cc
+ ${POLICIES_SOURCE_DIR}/delegates/app_permission_delegate.cc
+ ${POLICIES_SOURCE_DIR}/delegates/statistics_delegate.cc
+ ${CMAKE_CURRENT_SOURCE_DIR}/src/usage_statistics.cc
)
-file (GLOB RESUMPTION
- ${AM_SOURCE_DIR}/src/resumption/*
+include_directories(
+ ${COMPONENTS_DIR}/policy/src/policy/policy_table/table_struct
)
-file (GLOB APP_LAUNCH
- ${AM_SOURCE_DIR}/src/app_launch/*
+set (EVENT_ENGINE_SOURCE_DIR
+ ${AM_SOURCE_DIR}/src/event_engine
)
+set (EVENT_ENGINE_PATHS
+ ${CMAKE_CURRENT_SOURCE_DIR}/include/application_manager/event_engine
+ ${EVENT_ENGINE_SOURCE_DIR}
+)
+collect_sources(EVENT_ENGINE_SOURCES "${EVENT_ENGINE_PATHS}")
+
set (COMMANDS_SOURCE_DIR
${AM_SOURCE_DIR}/src/commands
)
+collect_sources(POLICIES_SOURCES "${POLICIES_PATHS}")
-file (GLOB MOBILE_COMMANDS_SOURCES
- ${COMMANDS_SOURCE_DIR}/*
- ${COMMANDS_SOURCE_DIR}/mobile/*
+set(MOBILE_COMMANDS_EXCLUDE_PATHS
+ ${COMMANDS_SOURCE_DIR}/hmi
)
+set (MOBILE_COMMANDS_PATHS
+ ${CMAKE_CURRENT_SOURCE_DIR}/include/application_manager/commands
+ ${CMAKE_CURRENT_SOURCE_DIR}/include/application_manager/commands/mobile
+ ${COMMANDS_SOURCE_DIR}
+ ${COMMANDS_SOURCE_DIR}/mobile
+)
+collect_sources(MOBILE_COMMANDS_SOURCES "${MOBILE_COMMANDS_PATHS}" "${MOBILE_COMMANDS_EXCLUDE_PATHS}")
- set (HMI_COMMANDS_SOURCES
+set (HMI_COMMANDS_SOURCES
${COMMANDS_SOURCE_DIR}/hmi/request_to_hmi.cc
${COMMANDS_SOURCE_DIR}/hmi/response_from_hmi.cc
${COMMANDS_SOURCE_DIR}/hmi/request_from_hmi.cc
@@ -357,7 +369,20 @@ if (${HMI_DBUS_API})
set (HMI_COMMANDS_SOURCES ${HMI_COMMANDS_SOURCES} ${HMI_COMMANDS_SOURCES_DBUS})
endif (${HMI_DBUS_API})
-SET (LIBRARIES
+set(EXCLUDE_PATHS
+ ${COMMANDS_SOURCE_DIR}
+ ${EVENT_ENGINE_SOURCE_DIR}
+ ${MESSAGE_HELPER_SOURCE_DIR}
+ ${POLICIES_SOURCE_DIR}
+)
+
+set(PATHS
+ ${CMAKE_CURRENT_SOURCE_DIR}/include
+ ${CMAKE_CURRENT_SOURCE_DIR}/src
+)
+collect_sources(SOURCES "${PATHS}" "${EXCLUDE_PATHS}")
+
+set(LIBRARIES
HMI_API
MOBILE_API
v4_protocol_v1_2_no_extra
@@ -373,15 +398,14 @@ if (CMAKE_SYSTEM_NAME STREQUAL "Linux")
list(APPEND LIBRARIES sqlite3)
endif ()
-IF(${CMAKE_SYSTEM_NAME} MATCHES "QNX")
+if (${CMAKE_SYSTEM_NAME} MATCHES "QNX")
list(REMOVE_ITEM LIBRARIES dl)
endif()
-add_library("AMEventEngine" ${EVENT_ENGINE})
+add_library("AMEventEngine" ${EVENT_ENGINE_SOURCES})
target_link_libraries("AMEventEngine" ${LIBRARIES})
-
-add_library("AMPolicyLibrary" ${POLICIES_MANAGER} )
+add_library("AMPolicyLibrary" ${POLICIES_MANAGER_SOURCES} )
target_link_libraries("AMPolicyLibrary" ${LIBRARIES} AMEventEngine)
add_library("AMHMICommandsLibrary" ${HMI_COMMANDS_SOURCES})
@@ -392,18 +416,21 @@ add_library("MessageHelper" ${MESSAGE_HELPER_SOURCES})
add_library("AMMobileCommandsLibrary" ${MOBILE_COMMANDS_SOURCES} )
target_link_libraries("AMMobileCommandsLibrary" ${LIBRARIES} AMEventEngine)
-add_library("ApplicationManager" ${SOURCES} ${RESUMPTION} ${APP_LAUNCH})
+add_library("ApplicationManager" ${SOURCES})
-target_link_libraries("ApplicationManager" ${LIBRARIES} AMHMICommandsLibrary
- AMMobileCommandsLibrary
- AMEventEngine
- AMPolicyLibrary)
+list(APPEND LIBRARIES
+ AMEventEngine
+ AMPolicyLibrary
+ AMHMICommandsLibrary
+ AMMobileCommandsLibrary
+)
if(ENABLE_LOG)
- target_link_libraries("ApplicationManager" log4cxx -L${LOG4CXX_LIBS_DIRECTORY})
+ list(APPEND LIBRARIES log4cxx -L${LOG4CXX_LIBS_DIRECTORY})
endif()
+target_link_libraries("ApplicationManager" ${LIBRARIES})
+
if(BUILD_TESTS)
add_subdirectory(test)
- add_subdirectory(test/message_helper)
endif()
diff --git a/src/components/application_manager/test/CMakeLists.txt b/src/components/application_manager/test/CMakeLists.txt
index ba5d684df8..a81aa162cb 100644
--- a/src/components/application_manager/test/CMakeLists.txt
+++ b/src/components/application_manager/test/CMakeLists.txt
@@ -28,42 +28,44 @@
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
+include(${CMAKE_SOURCE_DIR}/tools/cmake/helpers/platform.cmake)
+include(${CMAKE_SOURCE_DIR}/tools/cmake/helpers/sources.cmake)
+
# TODO{ALeshin}: APPLINK-10792. Do not write tests which use
# application manager(AM) singleton while refactoring of AM is finished.
-if (BUILD_TESTS)
-
- include_directories(
- ${GMOCK_INCLUDE_DIRECTORY}
- ${CMAKE_BINARY_DIR}/src/components/
- ${COMPONENTS_DIR}/application_manager/include/
- ${COMPONENTS_DIR}/utils/include/
- ${COMPONENTS_DIR}/resumption/include/
- ${COMPONENTS_DIR}/utils/include/
- ${COMPONENTS_DIR}/policy/include/
- ${COMPONENTS_DIR}/media_manager/include/
- ${COMPONENTS_DIR}/security_manager/include/
- ${COMPONENTS_DIR}/policy/test/include/
- ${COMPONENTS_DIR}/application_manager/test/include/
- )
-
- set(testSources
- ${AM_TEST_DIR}/mobile_message_handler_test.cc
- ${AM_TEST_DIR}/mobile_message_handler_v1_test.cc
- ${AM_TEST_DIR}/request_info_test.cc
- ${AM_TEST_DIR}/resumption_sql_queries_test.cc
- ${AM_TEST_DIR}/event_engine_test.cc
- ${AM_TEST_DIR}/policy_event_observer_test.cc
- ${AM_TEST_DIR}/application_impl_test.cc
- ${AM_TEST_DIR}/hmi_capabilities_test.cc
- ${AM_TEST_DIR}/application_state_test.cc
- ${AM_TEST_DIR}/usage_statistics_test.cc
- ${AM_TEST_DIR}/policy_handler_test.cc
- ${AM_TEST_DIR}/mock_message_helper.cc
- )
- set (request_controller_SOURCES
- ${AM_TEST_DIR}/request_controller/request_controller_test.cc
- )
+include_directories(
+ ${GMOCK_INCLUDE_DIRECTORY}
+ ${CMAKE_BINARY_DIR}/src/components/
+ ${COMPONENTS_DIR}/application_manager/include/
+ ${COMPONENTS_DIR}/utils/include/
+ ${COMPONENTS_DIR}/resumption/include/
+ ${COMPONENTS_DIR}/utils/include/
+ ${COMPONENTS_DIR}/policy/include/
+ ${COMPONENTS_DIR}/media_manager/include/
+ ${COMPONENTS_DIR}/security_manager/include/
+ ${COMPONENTS_DIR}/policy/test/include/
+ ${COMPONENTS_DIR}/application_manager/test/include/
+)
+
+set(testSources
+ ${AM_TEST_DIR}/mobile_message_handler_test.cc
+ ${AM_TEST_DIR}/mobile_message_handler_v1_test.cc
+ ${AM_TEST_DIR}/request_info_test.cc
+ ${AM_TEST_DIR}/resumption_sql_queries_test.cc
+ ${AM_TEST_DIR}/event_engine_test.cc
+ ${AM_TEST_DIR}/policy_event_observer_test.cc
+ ${AM_TEST_DIR}/application_impl_test.cc
+ ${AM_TEST_DIR}/hmi_capabilities_test.cc
+ ${AM_TEST_DIR}/application_state_test.cc
+ ${AM_TEST_DIR}/usage_statistics_test.cc
+ ${AM_TEST_DIR}/policy_handler_test.cc
+ ${AM_TEST_DIR}/mock_message_helper.cc
+)
+
+set(request_controller_SOURCES
+ ${AM_TEST_DIR}/request_controller/request_controller_test.cc
+)
set(testLibraries
ApplicationManager
@@ -104,72 +106,74 @@ set(test_exec_libraries
Resumption
)
-IF(${CMAKE_SYSTEM_NAME} MATCHES "QNX")
+if (${CMAKE_SYSTEM_NAME} MATCHES "QNX")
+ list(REMOVE_ITEM test_exec_libraries dl)
+endif()
+
+set(testLibraries
+ Utils
+ ApplicationManager
+ jsoncpp
+ Policy
+ connectionHandler
+ HMI_API
+ MOBILE_API
+ v4_protocol_v1_2_no_extra
+ SmartObjects
+ formatters
+ gmock_main
+ UsageStatistics
+ dl
+ ProtocolLibrary
+ ConfigProfile
+ MediaManager
+ Resumption
+ ProtocolHandler
+ SecurityManager
+)
+
+if (${CMAKE_SYSTEM_NAME} MATCHES "QNX")
list(REMOVE_ITEM test_exec_libraries dl)
endif()
- set(testLibraries
- Utils
- ApplicationManager
- jsoncpp
- Policy
- connectionHandler
- HMI_API
- MOBILE_API
- v4_protocol_v1_2_no_extra
- SmartObjects
- formatters
- gmock_main
- UsageStatistics
- dl
- ProtocolLibrary
- ConfigProfile
- MediaManager
- Resumption
- ProtocolHandler
- SecurityManager
- )
-
- if (${CMAKE_SYSTEM_NAME} MATCHES "QNX")
- list(REMOVE_ITEM test_exec_libraries dl)
- endif()
-
- if (ENABLE_LOG)
- list(APPEND LIBRARIES log4cxx -L${LOG4CXX_LIBS_DIRECTORY})
- list(APPEND LIBRARIES apr-1 -L${APR_LIBS_DIRECTORY})
- list(APPEND LIBRARIES aprutil-1 -L${APR_UTIL_LIBS_DIRECTORY})
- list(APPEND LIBRARIES expat -L${EXPAT_LIBS_DIRECTORY})
- endif()
-
- file(COPY smartDeviceLink_test2.ini DESTINATION ${CMAKE_CURRENT_BINARY_DIR})
- file(COPY sdl_preloaded_pt.json DESTINATION ${CMAKE_CURRENT_BINARY_DIR})
- file(COPY sdl_pt_update.json DESTINATION ${CMAKE_CURRENT_BINARY_DIR})
+if (ENABLE_LOG)
+ list(APPEND LIBRARIES log4cxx -L${LOG4CXX_LIBS_DIRECTORY})
+ list(APPEND LIBRARIES apr-1 -L${APR_LIBS_DIRECTORY})
+ list(APPEND LIBRARIES aprutil-1 -L${APR_UTIL_LIBS_DIRECTORY})
+ list(APPEND LIBRARIES expat -L${EXPAT_LIBS_DIRECTORY})
+endif()
+
+file(COPY smartDeviceLink_test2.ini DESTINATION ${CMAKE_CURRENT_BINARY_DIR})
+file(COPY sdl_preloaded_pt.json DESTINATION ${CMAKE_CURRENT_BINARY_DIR})
+file(COPY sdl_pt_update.json DESTINATION ${CMAKE_CURRENT_BINARY_DIR})
add_custom_command(
-OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/libPolicy.so
- COMMAND ${CMAKE_COMMAND} -E
- copy ${COMPONENTS_DIR}/policy/libPolicy.so ${CMAKE_CURRENT_BINARY_DIR})
- set(CMAKE_EXE_LINKER_FLAGS
- "${CMAKE_EXE_LINKER_FLAGS} -Wl,-rpath=${CMAKE_CURRENT_BINARY_DIR}")
- create_test("application_manager_test" "${testSources}" "${testLibraries}" )
+ OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/libPolicy.so
+ COMMAND ${CMAKE_COMMAND} -E
+ copy ${COMPONENTS_DIR}/policy/libPolicy.so ${CMAKE_CURRENT_BINARY_DIR}
+)
+set(CMAKE_EXE_LINKER_FLAGS
+ "${CMAKE_EXE_LINKER_FLAGS} -Wl,-rpath=${CMAKE_CURRENT_BINARY_DIR}"
+)
+create_test("application_manager_test" "${testSources}" "${testLibraries}")
+
# TODO [AKozoriz] : Fix not buildable tests
- set(ResumptionData_SOURCES
- ${AM_TEST_DIR}/resumption/resumption_data_test.cc
- ${AM_TEST_DIR}/resumption/resumption_data_db_test.cc
- ${AM_TEST_DIR}/resumption/resumption_data_json_test.cc
- ${AM_TEST_DIR}/resumption/resume_ctrl_test.cc
- ${AM_TEST_DIR}/mock_message_helper.cc
- )
-
- file(COPY hmi_capabilities.json DESTINATION ${CMAKE_CURRENT_BINARY_DIR})
- file(COPY smartDeviceLink_test.ini DESTINATION ${CMAKE_CURRENT_BINARY_DIR})
-
- file(MAKE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/resumption)
- file(COPY smartDeviceLink_test.ini DESTINATION ${CMAKE_CURRENT_BINARY_DIR}/resumption)
- create_test("resumption/data_resumption_test" "${ResumptionData_SOURCES}" "${testLibraries}")
-
- add_subdirectory(state_controller)
-endif()
+set(ResumptionData_SOURCES
+ ${AM_TEST_DIR}/resumption/resumption_data_test.cc
+ ${AM_TEST_DIR}/resumption/resumption_data_db_test.cc
+ ${AM_TEST_DIR}/resumption/resumption_data_json_test.cc
+ ${AM_TEST_DIR}/resumption/resume_ctrl_test.cc
+ ${AM_TEST_DIR}/mock_message_helper.cc
+)
+
+file(COPY hmi_capabilities.json DESTINATION ${CMAKE_CURRENT_BINARY_DIR})
+file(COPY smartDeviceLink_test.ini DESTINATION ${CMAKE_CURRENT_BINARY_DIR})
+
+file(MAKE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/resumption)
+file(COPY smartDeviceLink_test.ini DESTINATION ${CMAKE_CURRENT_BINARY_DIR}/resumption)
+create_test("resumption/data_resumption_test" "${ResumptionData_SOURCES}" "${testLibraries}")
+add_subdirectory(message_helper)
+add_subdirectory(state_controller)
add_subdirectory(app_launch)
add_subdirectory(commands)
diff --git a/src/components/application_manager/test/commands/CMakeLists.txt b/src/components/application_manager/test/commands/CMakeLists.txt
index 068823fcfa..e5a083b5b2 100644
--- a/src/components/application_manager/test/commands/CMakeLists.txt
+++ b/src/components/application_manager/test/commands/CMakeLists.txt
@@ -28,7 +28,7 @@
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
-include(sources)
+include(${CMAKE_SOURCE_DIR}/tools/cmake/helpers/sources.cmake)
include_directories(
${GMOCK_INCLUDE_DIRECTORY}
diff --git a/src/components/application_manager/test/commands/mobile/alert_request_test.cc b/src/components/application_manager/test/commands/mobile/alert_request_test.cc
index e8ebcd0f60..b384cd9f11 100644
--- a/src/components/application_manager/test/commands/mobile/alert_request_test.cc
+++ b/src/components/application_manager/test/commands/mobile/alert_request_test.cc
@@ -210,4 +210,4 @@ TEST_F(AlertRequestTest, OnEvent_UI_HmiSendSuccess_UNSUPPORTED_RESOURCE) {
} // namespace mobile_commands_test
} // namespace commands_test
} // namespace components
-} // namespace tests
+} // namespace test
diff --git a/src/components/application_manager/test/commands/mobile/read_did_request_test.cc b/src/components/application_manager/test/commands/mobile/read_did_request_test.cc
index 111dbf4e27..334f559ae6 100644
--- a/src/components/application_manager/test/commands/mobile/read_did_request_test.cc
+++ b/src/components/application_manager/test/commands/mobile/read_did_request_test.cc
@@ -46,7 +46,7 @@
#include "interfaces/MOBILE_API.h"
#include "interfaces/HMI_API.h"
#include "application_manager/smart_object_keys.h"
-#include "event_engine/event.h"
+#include "application_manager/event_engine/event.h"
namespace test {
namespace components {
diff --git a/src/components/application_manager/test/message_helper/CMakeLists.txt.user b/src/components/application_manager/test/message_helper/CMakeLists.txt.user
deleted file mode 100755
index e7522c1793..0000000000
--- a/src/components/application_manager/test/message_helper/CMakeLists.txt.user
+++ /dev/null
@@ -1,189 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE QtCreatorProject>
-<!-- Written by QtCreator 3.5.1, 2015-11-19T12:59:06. -->
-<qtcreator>
- <data>
- <variable>EnvironmentId</variable>
- <value type="QByteArray">{6965f0e8-9b58-4b26-8426-81354d6c3400}</value>
- </data>
- <data>
- <variable>ProjectExplorer.Project.ActiveTarget</variable>
- <value type="int">0</value>
- </data>
- <data>
- <variable>ProjectExplorer.Project.EditorSettings</variable>
- <valuemap type="QVariantMap">
- <value type="bool" key="EditorConfiguration.AutoIndent">true</value>
- <value type="bool" key="EditorConfiguration.AutoSpacesForTabs">false</value>
- <value type="bool" key="EditorConfiguration.CamelCaseNavigation">true</value>
- <valuemap type="QVariantMap" key="EditorConfiguration.CodeStyle.0">
- <value type="QString" key="language">Cpp</value>
- <valuemap type="QVariantMap" key="value">
- <value type="QByteArray" key="CurrentPreferences">CppGlobal</value>
- </valuemap>
- </valuemap>
- <valuemap type="QVariantMap" key="EditorConfiguration.CodeStyle.1">
- <value type="QString" key="language">QmlJS</value>
- <valuemap type="QVariantMap" key="value">
- <value type="QByteArray" key="CurrentPreferences">QmlJSGlobal</value>
- </valuemap>
- </valuemap>
- <value type="int" key="EditorConfiguration.CodeStyle.Count">2</value>
- <value type="QByteArray" key="EditorConfiguration.Codec">UTF-8</value>
- <value type="bool" key="EditorConfiguration.ConstrainTooltips">false</value>
- <value type="int" key="EditorConfiguration.IndentSize">4</value>
- <value type="bool" key="EditorConfiguration.KeyboardTooltips">false</value>
- <value type="int" key="EditorConfiguration.MarginColumn">80</value>
- <value type="bool" key="EditorConfiguration.MouseHiding">true</value>
- <value type="bool" key="EditorConfiguration.MouseNavigation">true</value>
- <value type="int" key="EditorConfiguration.PaddingMode">1</value>
- <value type="bool" key="EditorConfiguration.ScrollWheelZooming">true</value>
- <value type="bool" key="EditorConfiguration.ShowMargin">false</value>
- <value type="int" key="EditorConfiguration.SmartBackspaceBehavior">0</value>
- <value type="bool" key="EditorConfiguration.SpacesForTabs">true</value>
- <value type="int" key="EditorConfiguration.TabKeyBehavior">0</value>
- <value type="int" key="EditorConfiguration.TabSize">8</value>
- <value type="bool" key="EditorConfiguration.UseGlobal">true</value>
- <value type="int" key="EditorConfiguration.Utf8BomBehavior">1</value>
- <value type="bool" key="EditorConfiguration.addFinalNewLine">true</value>
- <value type="bool" key="EditorConfiguration.cleanIndentation">true</value>
- <value type="bool" key="EditorConfiguration.cleanWhitespace">true</value>
- <value type="bool" key="EditorConfiguration.inEntireDocument">false</value>
- </valuemap>
- </data>
- <data>
- <variable>ProjectExplorer.Project.PluginSettings</variable>
- <valuemap type="QVariantMap"/>
- </data>
- <data>
- <variable>ProjectExplorer.Project.Target.0</variable>
- <valuemap type="QVariantMap">
- <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Desktop Qt 5.5.1 GCC 64bit</value>
- <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Desktop Qt 5.5.1 GCC 64bit</value>
- <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">qt.55.gcc_64_kit</value>
- <value type="int" key="ProjectExplorer.Target.ActiveBuildConfiguration">0</value>
- <value type="int" key="ProjectExplorer.Target.ActiveDeployConfiguration">0</value>
- <value type="int" key="ProjectExplorer.Target.ActiveRunConfiguration">0</value>
- <valuemap type="QVariantMap" key="ProjectExplorer.Target.BuildConfiguration.0">
- <value type="bool" key="CMakeProjectManager.CMakeBuildConfiguration.UseNinja">false</value>
- <value type="QString" key="ProjectExplorer.BuildConfiguration.BuildDirectory">/home/oherasym/sdl_panasonic/src/components/application_manager/test/message_helper-build</value>
- <valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
- <valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
- <value type="QString" key="CMakeProjectManager.MakeStep.AdditionalArguments"></value>
- <valuelist type="QVariantList" key="CMakeProjectManager.MakeStep.BuildTargets"/>
- <value type="bool" key="CMakeProjectManager.MakeStep.Clean">false</value>
- <value type="QString" key="CMakeProjectManager.MakeStep.MakeCommand"></value>
- <value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
- <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Make</value>
- <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
- <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">CMakeProjectManager.MakeStep</value>
- </valuemap>
- <value type="int" key="ProjectExplorer.BuildStepList.StepsCount">1</value>
- <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Build</value>
- <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
- <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Build</value>
- </valuemap>
- <valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.1">
- <valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
- <value type="QString" key="CMakeProjectManager.MakeStep.AdditionalArguments">clean</value>
- <valuelist type="QVariantList" key="CMakeProjectManager.MakeStep.BuildTargets"/>
- <value type="bool" key="CMakeProjectManager.MakeStep.Clean">true</value>
- <value type="QString" key="CMakeProjectManager.MakeStep.MakeCommand"></value>
- <value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
- <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Make</value>
- <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
- <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">CMakeProjectManager.MakeStep</value>
- </valuemap>
- <value type="int" key="ProjectExplorer.BuildStepList.StepsCount">1</value>
- <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Clean</value>
- <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
- <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Clean</value>
- </valuemap>
- <value type="int" key="ProjectExplorer.BuildConfiguration.BuildStepListCount">2</value>
- <value type="bool" key="ProjectExplorer.BuildConfiguration.ClearSystemEnvironment">false</value>
- <valuelist type="QVariantList" key="ProjectExplorer.BuildConfiguration.UserEnvironmentChanges"/>
- <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">all</value>
- <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
- <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">CMakeProjectManager.CMakeBuildConfiguration</value>
- </valuemap>
- <value type="int" key="ProjectExplorer.Target.BuildConfigurationCount">1</value>
- <valuemap type="QVariantMap" key="ProjectExplorer.Target.DeployConfiguration.0">
- <valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
- <value type="int" key="ProjectExplorer.BuildStepList.StepsCount">0</value>
- <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Deploy</value>
- <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
- <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Deploy</value>
- </valuemap>
- <value type="int" key="ProjectExplorer.BuildConfiguration.BuildStepListCount">1</value>
- <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Deploy locally</value>
- <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
- <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.DefaultDeployConfiguration</value>
- </valuemap>
- <value type="int" key="ProjectExplorer.Target.DeployConfigurationCount">1</value>
- <valuemap type="QVariantMap" key="ProjectExplorer.Target.PluginSettings"/>
- <valuemap type="QVariantMap" key="ProjectExplorer.Target.RunConfiguration.0">
- <valuelist type="QVariantList" key="Analyzer.Valgrind.AddedSuppressionFiles"/>
- <value type="bool" key="Analyzer.Valgrind.Callgrind.CollectBusEvents">false</value>
- <value type="bool" key="Analyzer.Valgrind.Callgrind.CollectSystime">false</value>
- <value type="bool" key="Analyzer.Valgrind.Callgrind.EnableBranchSim">false</value>
- <value type="bool" key="Analyzer.Valgrind.Callgrind.EnableCacheSim">false</value>
- <value type="bool" key="Analyzer.Valgrind.Callgrind.EnableEventToolTips">true</value>
- <value type="double" key="Analyzer.Valgrind.Callgrind.MinimumCostRatio">0.01</value>
- <value type="double" key="Analyzer.Valgrind.Callgrind.VisualisationMinimumCostRatio">10</value>
- <value type="bool" key="Analyzer.Valgrind.FilterExternalIssues">true</value>
- <value type="int" key="Analyzer.Valgrind.LeakCheckOnFinish">1</value>
- <value type="int" key="Analyzer.Valgrind.NumCallers">25</value>
- <valuelist type="QVariantList" key="Analyzer.Valgrind.RemovedSuppressionFiles"/>
- <value type="int" key="Analyzer.Valgrind.SelfModifyingCodeDetection">1</value>
- <value type="bool" key="Analyzer.Valgrind.Settings.UseGlobalSettings">true</value>
- <value type="bool" key="Analyzer.Valgrind.ShowReachable">false</value>
- <value type="bool" key="Analyzer.Valgrind.TrackOrigins">true</value>
- <value type="QString" key="Analyzer.Valgrind.ValgrindExecutable">valgrind</value>
- <valuelist type="QVariantList" key="Analyzer.Valgrind.VisibleErrorKinds">
- <value type="int">0</value>
- <value type="int">1</value>
- <value type="int">2</value>
- <value type="int">3</value>
- <value type="int">4</value>
- <value type="int">5</value>
- <value type="int">6</value>
- <value type="int">7</value>
- <value type="int">8</value>
- <value type="int">9</value>
- <value type="int">10</value>
- <value type="int">11</value>
- <value type="int">12</value>
- <value type="int">13</value>
- <value type="int">14</value>
- </valuelist>
- <value type="int" key="PE.EnvironmentAspect.Base">2</value>
- <valuelist type="QVariantList" key="PE.EnvironmentAspect.Changes"/>
- <value type="QString" key="ProjectExplorer.CustomExecutableRunConfiguration.Arguments"></value>
- <value type="QString" key="ProjectExplorer.CustomExecutableRunConfiguration.Executable"></value>
- <value type="QString" key="ProjectExplorer.CustomExecutableRunConfiguration.WorkingDirectory">%{buildDir}</value>
- <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Custom Executable</value>
- <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
- <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.CustomExecutableRunConfiguration</value>
- <value type="uint" key="RunConfiguration.QmlDebugServerPort">3768</value>
- <value type="bool" key="RunConfiguration.UseCppDebugger">false</value>
- <value type="bool" key="RunConfiguration.UseCppDebuggerAuto">true</value>
- <value type="bool" key="RunConfiguration.UseMultiProcess">false</value>
- <value type="bool" key="RunConfiguration.UseQmlDebugger">false</value>
- <value type="bool" key="RunConfiguration.UseQmlDebuggerAuto">true</value>
- </valuemap>
- <value type="int" key="ProjectExplorer.Target.RunConfigurationCount">1</value>
- </valuemap>
- </data>
- <data>
- <variable>ProjectExplorer.Project.TargetCount</variable>
- <value type="int">1</value>
- </data>
- <data>
- <variable>ProjectExplorer.Project.Updater.FileVersion</variable>
- <value type="int">18</value>
- </data>
- <data>
- <variable>Version</variable>
- <value type="int">18</value>
- </data>
-</qtcreator>
diff --git a/src/components/application_manager/test/resumption/resume_ctrl_test.cc b/src/components/application_manager/test/resumption/resume_ctrl_test.cc
index 14f6cf58cd..b62830aeff 100644
--- a/src/components/application_manager/test/resumption/resume_ctrl_test.cc
+++ b/src/components/application_manager/test/resumption/resume_ctrl_test.cc
@@ -49,6 +49,10 @@
#include "application_manager/mock_event_dispatcher.h"
#include "application_manager/mock_state_controller.h"
+#if defined(_MSC_VER)
+#define snprintf _snprintf_s
+#endif
+
namespace test {
namespace components {
namespace resumption_test {
@@ -187,7 +191,7 @@ TEST_F(ResumeCtrlTest, StartResumption_AppWithFiles) {
char numb[max_size];
for (uint32_t i = 0; i < count_of_files; i++) {
file_types[i] = i;
- std::snprintf(numb, max_size, "%d", i);
+ snprintf(numb, max_size, "%d", i);
file_names[i] = "test_file" + std::string(numb);
}
@@ -318,7 +322,7 @@ TEST_F(ResumeCtrlTest, StartResumption_AppWithChoiceSet) {
const size_t max_size = 12;
char numb[max_size];
for (uint32_t i = 0; i < count_of_choice; ++i) {
- std::snprintf(numb, max_size, "%d", i);
+ snprintf(numb, max_size, "%d", i);
choice[application_manager::strings::vr_commands] =
"VrCommand" + std::string(numb);
choice[application_manager::strings::choice_id] = i;
@@ -435,7 +439,7 @@ TEST_F(ResumeCtrlTest, StartResumption_AppWithSubscriptionToIVI) {
smart_objects::SmartObject app_vi;
int vtype = application_manager::VehicleDataType::GPS;
- uint i = 0;
+ uint32_t i = 0;
for (; vtype < application_manager::VehicleDataType::STEERINGWHEEL;
++i, ++vtype) {
app_vi[i] = vtype;
diff --git a/src/components/config_profile/CMakeLists.txt b/src/components/config_profile/CMakeLists.txt
index 107fd58127..2f8561fc2d 100644
--- a/src/components/config_profile/CMakeLists.txt
+++ b/src/components/config_profile/CMakeLists.txt
@@ -1,4 +1,4 @@
-# Copyright (c) 2014, Ford Motor Company
+# Copyright (c) 2016, Ford Motor Company
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
@@ -28,6 +28,7 @@
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
+include(${CMAKE_SOURCE_DIR}/tools/cmake/helpers/sources.cmake)
include_directories (
include
@@ -35,13 +36,18 @@ include_directories (
${LOG4CXX_INCLUDE_DIRECTORY}
)
-set (SOURCES
- ${COMPONENTS_DIR}/config_profile/src/profile.cc
- ${COMPONENTS_DIR}/config_profile/src/ini_file.cc
+set(PATHS
+ ${CMAKE_CURRENT_SOURCE_DIR}/include
+ ${CMAKE_CURRENT_SOURCE_DIR}/src
)
+set(LIBRARIES
+ Utils
+)
+
+collect_sources(SOURCES "${PATHS}")
add_library("ConfigProfile" ${SOURCES})
-target_link_libraries("ConfigProfile" Utils)
+target_link_libraries("ConfigProfile" ${LIBRARIES})
if(BUILD_TESTS)
add_subdirectory(test)
diff --git a/src/components/config_profile/test/CMakeLists.txt b/src/components/config_profile/test/CMakeLists.txt
index 1246bff066..597be8fe00 100644
--- a/src/components/config_profile/test/CMakeLists.txt
+++ b/src/components/config_profile/test/CMakeLists.txt
@@ -28,23 +28,20 @@
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
-if(BUILD_TESTS)
+include(${CMAKE_SOURCE_DIR}/tools/cmake/helpers/sources.cmake)
include_directories (
${GMOCK_INCLUDE_DIRECTORY}
${COMPONENTS_DIR}/config_profile/include
)
-
-set(testSources
- profile_test.cc
- ini_file_test.cc
-)
-
-set(testLibraries
+set(LIBRARIES
gmock
ConfigProfile
)
+
+collect_sources(SOURCES "${CMAKE_CURRENT_SOURCE_DIR}")
+create_test(config_profile_test "${SOURCES}" "${LIBRARIES}")
file(COPY smartDeviceLink.ini DESTINATION ${CMAKE_CURRENT_BINARY_DIR})
file(COPY smartDeviceLink_test.ini DESTINATION ${CMAKE_CURRENT_BINARY_DIR})
@@ -52,6 +49,3 @@ file(COPY smartDeviceLink_invalid_pairs.ini DESTINATION ${CMAKE_CURRENT_BINARY_D
file(COPY smartDeviceLink_invalid_string.ini DESTINATION ${CMAKE_CURRENT_BINARY_DIR})
file(COPY smartDeviceLink_invalid_int.ini DESTINATION ${CMAKE_CURRENT_BINARY_DIR})
file(COPY smartDeviceLink_invalid_boolean.ini DESTINATION ${CMAKE_CURRENT_BINARY_DIR})
-create_test("config_profile_test" "${testSources}" "${testLibraries}")
-
-endif()
diff --git a/src/components/connection_handler/CMakeLists.txt b/src/components/connection_handler/CMakeLists.txt
index dc1b2d24d6..2cdfec91f2 100644
--- a/src/components/connection_handler/CMakeLists.txt
+++ b/src/components/connection_handler/CMakeLists.txt
@@ -1,4 +1,4 @@
-# Copyright (c) 2014, Ford Motor Company
+# Copyright (c) 2016, Ford Motor Company
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
@@ -28,8 +28,7 @@
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
-
-set(CH_SRC_DIR ${COMPONENTS_DIR}/connection_handler/src)
+include(${CMAKE_SOURCE_DIR}/tools/cmake/helpers/sources.cmake)
include_directories (
include
@@ -39,20 +38,20 @@ include_directories (
${LOG4CXX_INCLUDE_DIRECTORY}
)
-set (SOURCES
- ${CH_SRC_DIR}/connection_handler_impl.cc
- ${CH_SRC_DIR}/connection.cc
- ${CH_SRC_DIR}/device.cc
- ${CH_SRC_DIR}/heartbeat_monitor.cc
+set(PATHS
+ ${CMAKE_CURRENT_SOURCE_DIR}/include
+ ${CMAKE_CURRENT_SOURCE_DIR}/src
)
set(LIBRARIES
ProtocolLibrary
+ encryption
)
+collect_sources(SOURCES "${PATHS}")
add_library(connectionHandler ${SOURCES})
-target_link_libraries(connectionHandler encryption)
+target_link_libraries(connectionHandler ${LIBRARIES})
if(BUILD_TESTS)
- add_subdirectory(test)
+ add_subdirectory(test)
endif()
diff --git a/src/components/connection_handler/test/CMakeLists.txt b/src/components/connection_handler/test/CMakeLists.txt
index 32da4bdcd8..033a45e97d 100644
--- a/src/components/connection_handler/test/CMakeLists.txt
+++ b/src/components/connection_handler/test/CMakeLists.txt
@@ -1,4 +1,4 @@
-# Copyright (c) 2015, Ford Motor Company
+# Copyright (c) 2016, Ford Motor Company
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
@@ -28,9 +28,7 @@
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
-if(BUILD_TESTS)
-
-set(appMain_DIR ${CMAKE_SOURCE_DIR}/src/appMain)
+include(${CMAKE_SOURCE_DIR}/tools/cmake/helpers/sources.cmake)
include_directories(
${GMOCK_INCLUDE_DIRECTORY}
@@ -46,15 +44,7 @@ set(LIBRARIES
ProtocolHandler
)
-set(SOURCES
- connection_handler_impl_test.cc
- connection_test.cc
- device_test.cc
- heart_beat_monitor_test.cc
-)
-
-file(COPY ${appMain_DIR}/smartDeviceLink.ini DESTINATION "./")
-
-create_test("connection_handler_test" "${SOURCES}" "${LIBRARIES}")
+collect_sources(SOURCES "${CMAKE_CURRENT_SOURCE_DIR}")
+create_test(connection_handler_test "${SOURCES}" "${LIBRARIES}")
-endif()
+file(COPY ${CMAKE_SOURCE_DIR}/src/appMain/smartDeviceLink.ini DESTINATION ${CMAKE_CURRENT_BINARY_DIR})
diff --git a/src/components/dbus/CMakeLists.txt b/src/components/dbus/CMakeLists.txt
index 7e7f2af787..cb1ce30a6d 100644
--- a/src/components/dbus/CMakeLists.txt
+++ b/src/components/dbus/CMakeLists.txt
@@ -1,4 +1,4 @@
-# Copyright (c) 2014, Ford Motor Company
+# Copyright (c) 2016, Ford Motor Company
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
@@ -28,6 +28,7 @@
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
+include(${CMAKE_SOURCE_DIR}/tools/cmake/helpers/sources.cmake)
include_directories (
${DBUS_INCLUDE_DIRS}
@@ -40,17 +41,17 @@ include_directories (
${CMAKE_BINARY_DIR}/src/components/
)
-set (SOURCES
+set(PATHS
+ ${CMAKE_CURRENT_SOURCE_DIR}/include
+ ${CMAKE_CURRENT_SOURCE_DIR}/src
${CMAKE_CURRENT_BINARY_DIR}/introspection_xml.cc
${CMAKE_CURRENT_BINARY_DIR}/message_descriptions.cc
- ${CMAKE_CURRENT_SOURCE_DIR}/src/dbus_adapter.cc
- ${CMAKE_CURRENT_SOURCE_DIR}/src/dbus_message.cc
- ${CMAKE_CURRENT_SOURCE_DIR}/src/dbus_message_controller.cc
- ${CMAKE_CURRENT_SOURCE_DIR}/src/schema.cc
)
+collect_sources(SOURCES "${PATHS}")
-set (LIBRARIES dbus-1 -L${DBUS_LIBS_DIRECTORY})
-
+set(LIBRARIES
+ dbus-1 -L${DBUS_LIBS_DIRECTORY}
+)
add_custom_command(
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/message_descriptions.cc
@@ -71,7 +72,7 @@ add_custom_command(
)
add_library("DBus" ${SOURCES})
-ADD_DEPENDENCIES("DBus" Utils install-3rd_party_dbus)
+add_dependecnies("DBus" Utils install-3rd_party_dbus)
target_link_libraries("DBus" "${LIBRARIES}")
diff --git a/src/components/dbus/test/CMakeLists.txt b/src/components/dbus/test/CMakeLists.txt
index d96f2388fb..1b3df2c0e7 100644
--- a/src/components/dbus/test/CMakeLists.txt
+++ b/src/components/dbus/test/CMakeLists.txt
@@ -28,13 +28,20 @@
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
-if(BUILD_TESTS)
+include(${CMAKE_SOURCE_DIR}/tools/cmake/helpers/sources.cmake)
include_directories (
${GMOCK_INCLUDE_DIRECTORY}
${COMPONENTS_DIR}/dbus/include/
)
+#FIXME: exclude some tests
+set (EXCLUDE_PATHS
+ test_dbus_message_controller.cc
+)
+
+collect_sources(SOURCES "${CMAKE_CURRENT_SOURCE_DIR}" ${EXCLUDE_PATHS})
+
set (LIBRARIES
gmock
DBus
@@ -42,12 +49,4 @@ set (LIBRARIES
SmartObjects
)
-set(testSources
- ${COMPONENTS_DIR}/dbus/test/test_schema.cc
- ${COMPONENTS_DIR}/dbus/test/test_dbus_adapter.cc
-)
-
-create_test("test_DBus_test" "${testSources}" "${LIBRARIES}")
-
-endif()
-
+create_test(test_DBus_test "${SOURCES}" "${LIBRARIES}")
diff --git a/src/components/formatters/CMakeLists.txt b/src/components/formatters/CMakeLists.txt
index 1858342ff3..02a337e278 100644
--- a/src/components/formatters/CMakeLists.txt
+++ b/src/components/formatters/CMakeLists.txt
@@ -1,4 +1,4 @@
-# Copyright (c) 2014, Ford Motor Company
+# Copyright (c) 2016, Ford Motor Company
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
@@ -28,8 +28,7 @@
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
-
-set(FORMATTERS_SRC_DIR ${COMPONENTS_DIR}/formatters/src)
+include(${CMAKE_SOURCE_DIR}/tools/cmake/helpers/sources.cmake)
include_directories (
include/
@@ -41,22 +40,13 @@ include_directories (
${COMPONENTS_DIR}/utils/include
)
-set (SOURCES
- ${FORMATTERS_SRC_DIR}/CSmartFactory.cc
-)
-
-set (FORMATTER_SOURCES
- ${FORMATTERS_SRC_DIR}/CFormatterJsonBase.cc
- ${FORMATTERS_SRC_DIR}/CFormatterJsonSDLRPCv1.cc
- ${FORMATTERS_SRC_DIR}/CFormatterJsonSDLRPCv2.cc
- ${FORMATTERS_SRC_DIR}/formatter_json_rpc.cc
- ${FORMATTERS_SRC_DIR}/meta_formatter.cc
- ${FORMATTERS_SRC_DIR}/generic_json_formatter.cc
+set(PATHS
+ ${CMAKE_CURRENT_SOURCE_DIR}/include
+ ${CMAKE_CURRENT_SOURCE_DIR}/src
)
-add_library("formatters" ${SOURCES}
- ${FORMATTER_SOURCES}
-)
+collect_sources(SOURCES "${PATHS}")
+add_library(formatters ${SOURCES})
if(BUILD_TESTS)
add_subdirectory(test)
diff --git a/src/components/formatters/test/CMakeLists.txt b/src/components/formatters/test/CMakeLists.txt
index d245626dae..c80c3d0e40 100644
--- a/src/components/formatters/test/CMakeLists.txt
+++ b/src/components/formatters/test/CMakeLists.txt
@@ -29,7 +29,7 @@
# POSSIBILITY OF SUCH DAMAGE.
-if(BUILD_TESTS)
+include(${CMAKE_SOURCE_DIR}/tools/cmake/helpers/sources.cmake)
include_directories(
${GMOCK_INCLUDE_DIRECTORY}
@@ -49,19 +49,15 @@ set(LIBRARIES
jsoncpp
)
-set(SOURCES
- ${COMPONENTS_DIR}/formatters/test/src/SmartFactoryTestHelper.cc
- ${COMPONENTS_DIR}/formatters/test/CSmartFactory_test.cc
- ${COMPONENTS_DIR}/formatters/test/CFormatterJsonBase_test.cc
- ${COMPONENTS_DIR}/formatters/test/generic_json_formatter_test.cc
- ${COMPONENTS_DIR}/formatters/test/formatter_json_rpc_test.cc
- ${COMPONENTS_DIR}/formatters/test/src/create_smartSchema.cc
- ${COMPONENTS_DIR}/formatters/test/cFormatterJsonSDLRPCv1_test.cc
- ${COMPONENTS_DIR}/formatters/test/cFormatterJsonSDLRPCv2_test.cc
- ${COMPONENTS_DIR}/formatters/test/src/meta_formatter_test_helper.cc
- ${COMPONENTS_DIR}/formatters/test/meta_formatter_test.cc
+set (SOURCES
+ ${CMAKE_CURRENT_SOURCE_DIR}/include
+ ${CMAKE_CURRENT_SOURCE_DIR}/src
+ ${CMAKE_CURRENT_SOURCE_DIR}
)
-create_test("formatters_test" "${SOURCES}" "${LIBRARIES}")
+set (EXCLUDE_PATHS
+)
+
+collect_sources(SOURCES "")
+create_test(formatters_test "${SOURCES}" "${LIBRARIES}")
-endif()
diff --git a/src/components/hmi_message_handler/CMakeLists.txt b/src/components/hmi_message_handler/CMakeLists.txt
index 49aea93bda..c1dfca5e67 100644
--- a/src/components/hmi_message_handler/CMakeLists.txt
+++ b/src/components/hmi_message_handler/CMakeLists.txt
@@ -1,4 +1,4 @@
-# Copyright (c) 2014, Ford Motor Company
+# Copyright (c) 2016, Ford Motor Company
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
@@ -28,6 +28,8 @@
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
+include(${CMAKE_SOURCE_DIR}/tools/cmake/helpers/platform.cmake)
+include(${CMAKE_SOURCE_DIR}/tools/cmake/helpers/sources.cmake)
include_directories (
include/
@@ -46,29 +48,36 @@ include_directories (
${LOG4CXX_INCLUDE_DIRECTORY}
)
-IF (HMIADAPTER STREQUAL "dbus")
- set (DBUS_SOURCE ./src/dbus_message_adapter.cc)
- set (DBUS_ADAPTER DBus)
-ENDIF ()
+set(PATHS
+ ${CMAKE_CURRENT_SOURCE_DIR}/include
+ ${CMAKE_CURRENT_SOURCE_DIR}/src
+)
+
+if (HMIADAPTER STREQUAL "dbus")
+ set(EXCLUDE_PATHS)
+ set(DBUS_ADAPTER DBus)
+else()
+ set(EXCLUDE_PATHS dbus_message_adapter.cc)
+ set(DBUS_ADAPTER)
+endif ()
-set (SOURCES
- ${COMPONENTS_DIR}/hmi_message_handler/src/hmi_message_handler_impl.cc
- ${COMPONENTS_DIR}/hmi_message_handler/src/messagebroker_adapter.cc
- ${COMPONENTS_DIR}/hmi_message_handler/src/hmi_message_adapter_impl.cc
- ${DBUS_SOURCE}
+list(APPEND EXCLUDE_PATHS
+ mqueue_adapter.cc
)
+collect_sources(SOURCES "${PATHS}" "${EXCLUDE_PATHS}")
+
set(LIBRARIES
- Utils
- ${DBUS_ADAPTER}
- ${RTLIB}
+ Utils
+ ${DBUS_ADAPTER}
+ ${RTLIB}
)
add_library("HMIMessageHandler" ${SOURCES})
target_link_libraries("HMIMessageHandler" ${LIBRARIES})
if(ENABLE_LOG)
- target_link_libraries("HMIMessageHandler" log4cxx -L${LOG4CXX_LIBS_DIRECTORY})
+ target_link_libraries("HMIMessageHandler" log4cxx -L${LOG4CXX_LIBS_DIRECTORY})
endif()
# Tests temporary are inactivated. For details please check
diff --git a/src/components/hmi_message_handler/test/CMakeLists.txt b/src/components/hmi_message_handler/test/CMakeLists.txt
index 98e9fd5653..0d7ccd9ee1 100644
--- a/src/components/hmi_message_handler/test/CMakeLists.txt
+++ b/src/components/hmi_message_handler/test/CMakeLists.txt
@@ -1,4 +1,4 @@
-# Copyright (c) 2014, Ford Motor Company
+# Copyright (c) 2016, Ford Motor Company
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
@@ -28,7 +28,8 @@
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
-if(BUILD_TESTS)
+include(${CMAKE_SOURCE_DIR}/tools/cmake/helpers/platform.cmake)
+include(${CMAKE_SOURCE_DIR}/tools/cmake/helpers/sources.cmake)
include_directories (
${GMOCK_INCLUDE_DIRECTORY}
@@ -36,27 +37,31 @@ include_directories (
${COMPONENTS_DIR}/hmi_message_handler/test/include
)
+if (HMIADAPTER STREQUAL "messagebroker")
+ set (BROKER_LIBRARIES
+ message_broker_client
+ message_broker_server
+ )
+endif()
+
+set(EXCLUDE_PATHS)
+
set(LIBRARIES
gmock
ApplicationManager
HMIMessageHandler
jsoncpp
- MessageBrokerClient
- MessageBrokerServer
+ ${BROKER_LIBRARIES}
ConfigProfile
)
-set(SOURCES
-${COMPONENTS_DIR}/hmi_message_handler/test/hmi_message_handler_impl_test.cc
-${COMPONENTS_DIR}/hmi_message_handler/test/hmi_message_adapter_test.cc
-)
-
-if(${QT_HMI})
- list (APPEND SOURCES
- ${COMPONENTS_DIR}/hmi_message_handler/test/mock_subscriber.cc
- ${COMPONENTS_DIR}/hmi_message_handler/test/dbus_message_adapter_test.cc
+if(NOT HMI_DBUS_API})
+ list (APPEND EXCLUDE_PATHS
+ mock_subscriber.cc
+ dbus_message_adapter_test.cc
)
endif()
-create_test("hmi_message_handler_test" "${SOURCES}" "${LIBRARIES}")
-endif()
+collect_sources(SOURCES "${CMAKE_CURRENT_SOURCE_DIR}" "${EXCLUDE_PATHS}")
+
+create_test(hmi_message_handler_test "${SOURCES}" "${LIBRARIES}")
diff --git a/src/components/include/utils/threads/CMakeLists.txt b/src/components/include/utils/threads/CMakeLists.txt
deleted file mode 100644
index f97039c21b..0000000000
--- a/src/components/include/utils/threads/CMakeLists.txt
+++ /dev/null
@@ -1,5 +0,0 @@
-set(UtilsIncludeDir ${COMPONENTS_DIR/utils/include)
-
-include_directories (
- ${UtilsIncludeDir}
-) \ No newline at end of file
diff --git a/src/components/interfaces/CMakeLists.txt b/src/components/interfaces/CMakeLists.txt
index bcb47976ea..2c84e48235 100644
--- a/src/components/interfaces/CMakeLists.txt
+++ b/src/components/interfaces/CMakeLists.txt
@@ -1,4 +1,4 @@
-# Copyright (c) 2014, Ford Motor Company
+# Copyright (c) 2016, Ford Motor Company
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
@@ -28,54 +28,46 @@
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
+include(${CMAKE_SOURCE_DIR}/tools/cmake/helpers/generators.cmake)
include_directories (
- ${COMPONENTS_DIR}/utils/include/
+ ${COMPONENTS_DIR}/include
+ ${COMPONENTS_DIR}/utils/include
${COMPONENTS_DIR}/formatters/include
+ ${COMPONENTS_DIR}/smart_objects/include
+ ${CMAKE_BINARY_DIR}
)
-
-GenerateInterface("v4_protocol_v1_2_no_extra.xml" "NsSmartDeviceLinkRPC::V1" "sdlrpcv1")
-GenerateInterface("MOBILE_API.xml" "mobile_apis" "sdlrpcv2")
-
-IF (${HMI_JSON_API})
- GenerateInterface("HMI_API.xml" "hmi_apis" "jsonrpc")
-ENDIF (${HMI_JSON_API})
-IF (${HMI_DBUS_API})
- set(hpp_file
- "${CMAKE_CURRENT_BINARY_DIR}/QT_HMI_API.h"
- "${CMAKE_CURRENT_BINARY_DIR}/QT_HMI_API_schema.h"
- )
+generate_interface("v4_protocol_v1_2_no_extra.xml" "NsSmartDeviceLinkRPC::V1" "sdlrpcv1")
+add_library(v4_protocol_v1_2_no_extra ${CMAKE_CURRENT_BINARY_DIR}/v4_protocol_v1_2_no_extra_schema.cc)
- set(cpp_file "${CMAKE_CURRENT_BINARY_DIR}/QT_HMI_API_schema.cc")
- set(full_xml_name "${CMAKE_CURRENT_SOURCE_DIR}/QT_HMI_API.xml")
+generate_interface("MOBILE_API.xml" "mobile_apis" "sdlrpcv2")
+add_library(MOBILE_API ${CMAKE_CURRENT_BINARY_DIR}/MOBILE_API_schema.cc)
- add_custom_command( OUTPUT ${hpp_file} ${cpp_file}
- COMMAND ${INTEFRACE_GENERATOR_CMD} ${full_xml_name} hmi_apis ${CMAKE_CURRENT_BINARY_DIR} "--parser-type" "jsonrpc"
- DEPENDS ${INTERFACE_GENERATOR_DEPENDENCIES} ${full_xml_name}
- COMMENT "Generating files:\n ${hpp_file}\n ${cpp_file}\nfrom:\n QT_HMI_API.xml ..."
- VERBATIM
- )
+if(HMI_JSON_API)
+ generate_interface("HMI_API.xml" "hmi_apis" "jsonrpc")
+ add_library(HMI_API ${CMAKE_CURRENT_BINARY_DIR}/HMI_API_schema.cc)
+endif()
- include_directories (
- ${COMPONENTS_DIR}/smart_objects/include
- ${COMPONENTS_DIR}/formatters/include/
- ${CMAKE_BINARY_DIR}
- )
+if(HMI_DBUS_API)
+ generate_interface("QT_HMI_API.xml" "hmi_apis" "jsonrpc")
- add_custom_command(
- OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/HMI_API.h"
+ add_custom_command(
+ OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/HMI_API.h"
COMMAND sed "-e" "s/QT_HMI_API/HMI_API/g" "${CMAKE_CURRENT_BINARY_DIR}/QT_HMI_API.h" > "${CMAKE_CURRENT_BINARY_DIR}/HMI_API.h"
- DEPENDS "${CMAKE_CURRENT_BINARY_DIR}/QT_HMI_API.h")
- add_custom_command(
- OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/HMI_API_schema.h"
+ DEPENDS "${CMAKE_CURRENT_BINARY_DIR}/QT_HMI_API.h"
+ )
+ add_custom_command(
+ OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/HMI_API_schema.h"
COMMAND sed "-e" "s/QT_HMI_API/HMI_API/g" "${CMAKE_CURRENT_BINARY_DIR}/QT_HMI_API_schema.h" > "${CMAKE_CURRENT_BINARY_DIR}/HMI_API_schema.h"
- DEPENDS "${CMAKE_CURRENT_BINARY_DIR}/QT_HMI_API_schema.h")
- add_custom_command(
- OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/HMI_API_schema.cc"
+ DEPENDS "${CMAKE_CURRENT_BINARY_DIR}/QT_HMI_API_schema.h"
+ )
+ add_custom_command(
+ OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/HMI_API_schema.cc"
COMMAND sed "-e" "s/QT_HMI_API/HMI_API/g" "${CMAKE_CURRENT_BINARY_DIR}/QT_HMI_API_schema.cc" > "${CMAKE_CURRENT_BINARY_DIR}/HMI_API_schema.cc"
DEPENDS "${CMAKE_CURRENT_BINARY_DIR}/QT_HMI_API_schema.cc" "${CMAKE_CURRENT_BINARY_DIR}/HMI_API_schema.h" "${CMAKE_CURRENT_BINARY_DIR}/HMI_API.h")
- add_library(HMI_API "${CMAKE_CURRENT_BINARY_DIR}/HMI_API_schema.cc")
-ENDIF (${HMI_DBUS_API})
+
+ add_library(HMI_API ${CMAKE_CURRENT_BINARY_DIR}/HMI_API_schema.cc)
+endif()
add_dependencies(HMI_API Utils)
diff --git a/src/components/media_manager/CMakeLists.txt b/src/components/media_manager/CMakeLists.txt
index 3ca02357ab..c143a7979e 100644
--- a/src/components/media_manager/CMakeLists.txt
+++ b/src/components/media_manager/CMakeLists.txt
@@ -1,4 +1,4 @@
-# Copyright (c) 2014, Ford Motor Company
+# Copyright (c) 2014-2015, Ford Motor Company
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
@@ -28,63 +28,10 @@
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
+include(${CMAKE_SOURCE_DIR}/tools/cmake/helpers/platform.cmake)
+include(${CMAKE_SOURCE_DIR}/tools/cmake/helpers/sources.cmake)
-if (EXTENDED_MEDIA_MODE)
-find_package(Gstreamer-1.0 REQUIRED)
-find_package(Glib-2.0 REQUIRED)
-find_package(PkgConfig)
-pkg_check_modules(GLIB2 REQUIRED glib-2.0)
-add_definitions(${GLIB2_CFLAGS})
-set(default_includes
- ${GSTREAMER_gst_INCLUDE_DIR}
- ${GSTREAMER_gstconfig_INCLUDE_DIR}
- ${GLIB_glib_2_INCLUDE_DIR}
-)
-set(default_sources
- ${COMPONENTS_DIR}/media_manager/src/audio/a2dp_source_player_adapter.cc
- ${COMPONENTS_DIR}/media_manager/src/audio/from_mic_recorder_adapter.cc
- ${COMPONENTS_DIR}/media_manager/src/audio/from_mic_to_file_recorder_thread.cc
- ${COMPONENTS_DIR}/media_manager/src/audio/socket_audio_streamer_adapter.cc
- ${COMPONENTS_DIR}/media_manager/src/audio/pipe_audio_streamer_adapter.cc
- ${COMPONENTS_DIR}/media_manager/src/audio/file_audio_streamer_adapter.cc
- ${COMPONENTS_DIR}/media_manager/src/video/socket_video_streamer_adapter.cc
- ${COMPONENTS_DIR}/media_manager/src/video/pipe_video_streamer_adapter.cc
- ${COMPONENTS_DIR}/media_manager/src/video/file_video_streamer_adapter.cc
- ${COMPONENTS_DIR}/media_manager/src/streamer_adapter.cc
- ${COMPONENTS_DIR}/media_manager/src/pipe_streamer_adapter.cc
- ${COMPONENTS_DIR}/media_manager/src/socket_streamer_adapter.cc
- ${COMPONENTS_DIR}/media_manager/src/file_streamer_adapter.cc
-)
-set(LIBRARIES
- ${GSTREAMER_gstreamer_LIBRARY}
- ApplicationManager
- pulse-simple
- pulse
- gobject-2.0
- glib-2.0
-)
-else(EXTENDED_MEDIA_MODE)
-set(default_includes
-)
-
-set(default_sources
- ${COMPONENTS_DIR}/media_manager/src/audio/socket_audio_streamer_adapter.cc
- ${COMPONENTS_DIR}/media_manager/src/audio/pipe_audio_streamer_adapter.cc
- ${COMPONENTS_DIR}/media_manager/src/audio/file_audio_streamer_adapter.cc
- ${COMPONENTS_DIR}/media_manager/src/video/socket_video_streamer_adapter.cc
- ${COMPONENTS_DIR}/media_manager/src/video/pipe_video_streamer_adapter.cc
- ${COMPONENTS_DIR}/media_manager/src/video/file_video_streamer_adapter.cc
- ${COMPONENTS_DIR}/media_manager/src/streamer_adapter.cc
- ${COMPONENTS_DIR}/media_manager/src/pipe_streamer_adapter.cc
- ${COMPONENTS_DIR}/media_manager/src/socket_streamer_adapter.cc
- ${COMPONENTS_DIR}/media_manager/src/file_streamer_adapter.cc
-)
-set(LIBRARIES
- ProtocolLibrary
-)
-endif()
-
-include_directories (
+include_directories(
include
${COMPONENTS_DIR}/media_manager/include/audio/
${COMPONENTS_DIR}/media_manager/include/video/
@@ -99,22 +46,60 @@ include_directories (
${JSONCPP_INCLUDE_DIRECTORY}
${CMAKE_BINARY_DIR}/src/components/
${COMPONENTS_DIR}/policy/include/
- ${default_includes}
${LOG4CXX_INCLUDE_DIRECTORY}
)
-set (SOURCES
- ${COMPONENTS_DIR}/media_manager/src/media_adapter_impl.cc
- ${COMPONENTS_DIR}/media_manager/src/audio/from_mic_recorder_listener.cc
- ${COMPONENTS_DIR}/media_manager/src/audio/audio_stream_sender_thread.cc
- ${COMPONENTS_DIR}/media_manager/src/streamer_listener.cc
- ${COMPONENTS_DIR}/media_manager/src/media_manager_impl.cc
+set(PATHS
+ ${CMAKE_CURRENT_SOURCE_DIR}/include
+ ${CMAKE_CURRENT_SOURCE_DIR}/src
)
-add_library("MediaManager" ${SOURCES} ${default_sources})
+set(EXCLUDE_PATHS
+ video_stream_to_file_adapter.cc
+)
+
+set(LIBRARIES
+ ProtocolLibrary
+)
+
+if(EXTENDED_MEDIA_MODE)
+ find_package(Gstreamer-1.0 REQUIRED)
+ find_package(Glib-2.0 REQUIRED)
+ find_package(PkgConfig)
+ pkg_check_modules(GLIB2 REQUIRED glib-2.0)
+ add_definitions(${GLIB2_CFLAGS})
+
+ include_directories(
+ ${GSTREAMER_gst_INCLUDE_DIR}
+ ${GSTREAMER_gstconfig_INCLUDE_DIR}
+ ${GLIB_glib_2_INCLUDE_DIR}
+ )
+ list(APPEND EXCLUDE_PATHS
+
+ )
+ list(APPEND LIBRARIES
+ ${GSTREAMER_gstreamer_LIBRARY}
+ pulse-simple
+ pulse
+ gobject-2.0
+ glib-2.0
+ )
+else()
+ list(APPEND EXCLUDE_PATHS
+ a2dp_source_player_adapter.cc
+ from_mic_recorder_adapter.cc
+ from_mic_to_file_recorder_thread.cc
+ )
+endif()
+
+collect_sources(SOURCES "${PATHS}" "${EXCLUDE_PATHS}")
+add_library("MediaManager" ${SOURCES})
target_link_libraries("MediaManager" ${LIBRARIES})
-if(BUILD_TESTS)
- add_subdirectory(test)
+if(ENABLE_LOG)
+ target_link_libraries("MediaManager" log4cxx -L${LOG4CXX_LIBS_DIRECTORY})
endif()
+if(BUILD_TESTS)
+ add_subdirectory(test)
+endif()
diff --git a/src/components/media_manager/test/CMakeLists.txt b/src/components/media_manager/test/CMakeLists.txt
index ede6f27f95..f5d596f681 100644
--- a/src/components/media_manager/test/CMakeLists.txt
+++ b/src/components/media_manager/test/CMakeLists.txt
@@ -28,7 +28,7 @@
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
-if(BUILD_TESTS)
+include(${CMAKE_SOURCE_DIR}/tools/cmake/helpers/sources.cmake)
include_directories(
${GMOCK_INCLUDE_DIRECTORY}
@@ -46,9 +46,7 @@ if(EXTENDED_MEDIA_MODE)
)
endif()
-set(SOURCES
- ${COMPONENTS_DIR}/media_manager/test/media_manager_impl_test.cc
-)
+collect_sources(SOURCES "${CMAKE_CURRENT_SOURCE_DIR}")
set(LIBRARIES
SmartObjects
@@ -74,7 +72,3 @@ create_test("media_manager_test" "${SOURCES}" "${LIBRARIES}")
if(ENABLE_LOG)
target_link_libraries("media_manager_test" log4cxx -L${LOG4CXX_LIBS_DIRECTORY})
endif()
-
-endif()
-
-# vim: set ts=2 sw=2 et:
diff --git a/src/components/policy/CMakeLists.txt b/src/components/policy/CMakeLists.txt
index 3a2b0829dc..ce6d7c227c 100644
--- a/src/components/policy/CMakeLists.txt
+++ b/src/components/policy/CMakeLists.txt
@@ -1,4 +1,4 @@
-# Copyright (c) 2013, Ford Motor Company
+# Copyright (c) 2016, Ford Motor Company
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
@@ -28,12 +28,8 @@
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
-set(target Policy)
-set(install_destination bin)
-set(copy_destination ${CMAKE_BINARY_DIR}/src/appMain)
-set(library_name ${CMAKE_SHARED_LIBRARY_PREFIX}${target}${CMAKE_SHARED_LIBRARY_SUFFIX})
-
-set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${CMAKE_SOURCE_DIR}/cmake/Modules/")
+include(${CMAKE_SOURCE_DIR}/tools/cmake/helpers/platform.cmake)
+include(${CMAKE_SOURCE_DIR}/tools/cmake/helpers/sources.cmake)
include_directories (
${COMPONENTS_DIR}/policy/include
@@ -44,37 +40,43 @@ include_directories (
${LOG4CXX_INCLUDE_DIRECTORY}
)
-set(SOURCES
- ${COMPONENTS_DIR}/policy/src/policy_manager_impl.cc
- ${COMPONENTS_DIR}/policy/src/policy_helper.cc
- ${COMPONENTS_DIR}/policy/src/policy_table.cc
- ${COMPONENTS_DIR}/policy/src/sql_pt_queries.cc
- ${COMPONENTS_DIR}/policy/src/sql_pt_representation.cc
- ${COMPONENTS_DIR}/policy/src/update_status_manager.cc
- ${COMPONENTS_DIR}/policy/src/cache_manager.cc
- ${COMPONENTS_DIR}/rpc_base/src/rpc_base/rpc_base.cc
+set(POLICY_TABLE_PATHS
+ ${CMAKE_CURRENT_SOURCE_DIR}/include/policy/policy_table
+ ${CMAKE_CURRENT_SOURCE_DIR}/src/policy_table
)
+collect_sources(POLICY_TABLE_SOURCES "${POLICY_TABLE_PATHS}")
+add_library(policy_struct ${POLICY_TABLE_SOURCES})
+target_link_libraries(policy_struct Utils)
-# --- Table struct section
-set(policy_struct_target policy_struct)
-set(POLICY_TABLE_SOURCES
- ${COMPONENTS_DIR}/policy/src/policy_table/enums.cc
- ${COMPONENTS_DIR}/policy/src/policy_table/types.cc
- ${COMPONENTS_DIR}/policy/src/policy_table/validation.cc
+set(USAGE_STATISTICS_PATHS
+ ${CMAKE_CURRENT_SOURCE_DIR}/include/policy/usage_statistics
+ ${CMAKE_CURRENT_SOURCE_DIR}/src/usage_statistics
)
+collect_sources(USAGE_STATISTICS_SOURCES "${USAGE_STATISTICS_PATHS}")
+add_library(UsageStatistics ${USAGE_STATISTICS_SOURCES})
-add_library(${policy_struct_target} ${POLICY_TABLE_SOURCES})
-target_link_libraries(${policy_struct_target} Utils)
-# --- end of Table struct section
+set(EXCLUDE_PATHS
+ ${POLICY_TABLE_PATHS}
+ ${USAGE_STATISTICS_PATHS}
+ sql_pt_ext_queries.cc
+ sql_pt_ext_representation.cc
+)
-# --- Usage statistics section
-set(USAGE_STATISTICS_SOURCES
- ${COMPONENTS_DIR}/policy/src/usage_statistics/counter.cc
+set(PATHS
+ ${CMAKE_CURRENT_SOURCE_DIR}/include/
+ ${CMAKE_CURRENT_SOURCE_DIR}/src/
+ ${COMPONENTS_DIR}/rpc_base/src/rpc_base/rpc_base.cc
+)
+collect_sources(SOURCES "${PATHS}" "${EXCLUDE_PATHS}")
+
+set(LIBRARIES
+ ConfigProfile
+ policy_struct
+ dbms
+ jsoncpp
+ Utils
)
-add_library(UsageStatistics ${USAGE_STATISTICS_SOURCES})
-# --- end of Usage statistics section
-set(LIBRARIES ConfigProfile policy_struct dbms jsoncpp Utils)
if (CMAKE_SYSTEM_NAME STREQUAL "QNX")
# --- QDB Wrapper
include_directories (${COMPONENTS_DIR}/utils/include/utils)
@@ -84,22 +86,28 @@ else ()
list(APPEND LIBRARIES sqlite3)
endif ()
-add_library(${target} SHARED ${SOURCES})
-target_link_libraries(${target} ${LIBRARIES} )
+add_library(Policy SHARED ${SOURCES})
+target_link_libraries(Policy ${LIBRARIES})
if(ENABLE_LOG)
- target_link_libraries(${target} log4cxx -L${LOG4CXX_LIBS_DIRECTORY})
+ target_link_libraries(Policy log4cxx -L${LOG4CXX_LIBS_DIRECTORY})
endif()
-add_custom_target(copy_library_${target} ALL
- COMMAND ${CMAKE_COMMAND} -E copy_if_different
- ${CMAKE_CURRENT_BINARY_DIR}/${library_name}
- ${copy_destination}
- DEPENDS ${target}
- COMMENT "Copying library ${library_name}")
+set(LIBRARY_NAME ${CMAKE_SHARED_LIBRARY_PREFIX}Policy${CMAKE_SHARED_LIBRARY_SUFFIX})
+set(TARGET_LOCATION ${CMAKE_CURRENT_BINARY_DIR}/${LIBRARY_NAME})
+set(INSTALL_DESTINATION bin)
+set(COPY_DESTINATION ${CMAKE_BINARY_DIR}/src/appMain)
-install(TARGETS ${target}
- DESTINATION ${install_destination}
+add_custom_target(copy_policy_library ALL
+ COMMAND ${CMAKE_COMMAND} -E copy_if_different
+ ${TARGET_LOCATION}
+ ${COPY_DESTINATION}/${LIBRARY_NAME}
+ DEPENDS Policy
+ COMMENT "Copying library ${LIBRARY_NAME}"
+)
+
+install(TARGETS Policy
+ DESTINATION ${INSTALL_DESTINATION}
PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE
GROUP_READ GROUP_EXECUTE
WORLD_READ WORLD_EXECUTE
@@ -107,4 +115,4 @@ install(TARGETS ${target}
if(BUILD_TESTS)
add_subdirectory(test)
-endif() # BUILD_TESTS
+endif()
diff --git a/src/components/policy/test/CMakeLists.txt b/src/components/policy/test/CMakeLists.txt
index 95a61f92ff..4f6abf2992 100644
--- a/src/components/policy/test/CMakeLists.txt
+++ b/src/components/policy/test/CMakeLists.txt
@@ -1,4 +1,4 @@
-# Copyright (c) 2015, Ford Motor Company
+# Copyright (c) 2016, Ford Motor Company
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
@@ -28,6 +28,8 @@
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
+include(${CMAKE_SOURCE_DIR}/tools/cmake/helpers/sources.cmake)
+
include_directories(
include
${COMPONENTS_DIR}
@@ -40,26 +42,17 @@ include_directories(
${COMPONENTS_DIR}/policy/test/include/
)
-set(testLibraries
+collect_sources(SOURCES "${CMAKE_CURRENT_SOURCE_DIR}" "${EXCLUDE_PATHS}")
+
+set(LIBRARIES
gmock
+ dbms
Utils
Policy
UsageStatistics
)
-set(testSources
- counter_test.cc
- shared_library_test.cc
- generated_code_test.cc
- policy_manager_impl_test.cc
- update_status_manager_test.cc
-)
-
-list (APPEND testSources
- sql_pt_representation_test.cc
-)
-
-create_test("policy_test" "${testSources}" "${testLibraries}")
+create_test(policy_test "${SOURCES}" "${LIBRARIES}")
file(COPY valid_sdl_pt_update.json DESTINATION ${CMAKE_CURRENT_BINARY_DIR})
file(COPY sdl_preloaded_pt.json DESTINATION ${CMAKE_CURRENT_BINARY_DIR})
diff --git a/src/components/protocol/CMakeLists.txt b/src/components/protocol/CMakeLists.txt
index 8524ff4f44..7d8579bdbc 100644
--- a/src/components/protocol/CMakeLists.txt
+++ b/src/components/protocol/CMakeLists.txt
@@ -1,4 +1,4 @@
-# Copyright (c) 2014, Ford Motor Company
+# Copyright (c) 2016, Ford Motor Company
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
@@ -28,18 +28,18 @@
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
+include(${CMAKE_SOURCE_DIR}/tools/cmake/helpers/sources.cmake)
include_directories(
- ./include
- ${APR_INCLUDE_DIRECTORY}
+ ${COMPONENTS_DIR}/include
+ ${COMPONENTS_DIR}/utils/include
)
-set(SOURCES
- ${COMPONENTS_DIR}/protocol/src/raw_message.cc
- ${COMPONENTS_DIR}/protocol/src/service_type.cc
- ${COMPONENTS_DIR}/protocol/src/message_priority.cc
- ${COMPONENTS_DIR}/protocol/src/rpc_type.cc
+collect_sources(SOURCES "${CMAKE_CURRENT_SOURCE_DIR}")
+
+set(LIBRARIES
+ Utils
)
add_library(ProtocolLibrary ${SOURCES})
-target_link_libraries(ProtocolLibrary Utils)
+target_link_libraries(ProtocolLibrary ${LIBRARIES})
diff --git a/src/components/protocol_handler/CMakeLists.txt b/src/components/protocol_handler/CMakeLists.txt
index a09a565844..559acf8956 100644
--- a/src/components/protocol_handler/CMakeLists.txt
+++ b/src/components/protocol_handler/CMakeLists.txt
@@ -1,4 +1,4 @@
-# Copyright (c) 2014, Ford Motor Company
+# Copyright (c) 2016, Ford Motor Company
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
@@ -28,6 +28,7 @@
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
+include(${CMAKE_SOURCE_DIR}/tools/cmake/helpers/sources.cmake)
include_directories(
include
@@ -37,13 +38,11 @@ include_directories(
${LOG4CXX_INCLUDE_DIRECTORY}
)
-set(SOURCES
- ${COMPONENTS_DIR}/protocol_handler/src/incoming_data_handler.cc
- ${COMPONENTS_DIR}/protocol_handler/src/protocol_handler_impl.cc
- ${COMPONENTS_DIR}/protocol_handler/src/protocol_packet.cc
- ${COMPONENTS_DIR}/protocol_handler/src/protocol_payload.cc
- ${COMPONENTS_DIR}/protocol_handler/src/multiframe_builder.cc
+set(PATHS
+ ${CMAKE_CURRENT_SOURCE_DIR}/include
+ ${CMAKE_CURRENT_SOURCE_DIR}/src
)
+collect_sources(SOURCES "${PATHS}")
set(LIBRARIES
ProtocolLibrary
diff --git a/src/components/protocol_handler/test/CMakeLists.txt b/src/components/protocol_handler/test/CMakeLists.txt
index 87d91bfd54..ca079dcc7e 100644
--- a/src/components/protocol_handler/test/CMakeLists.txt
+++ b/src/components/protocol_handler/test/CMakeLists.txt
@@ -28,7 +28,7 @@
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
-if (BUILD_TESTS)
+include(${CMAKE_SOURCE_DIR}/tools/cmake/helpers/sources.cmake)
include_directories (
include
@@ -38,9 +38,12 @@ include_directories (
${COMPONENTS_DIR}/protocol_handler/test/include
${COMPONENTS_DIR}/include/protocol
${JSONCPP_INCLUDE_DIRECTORY}
+ ${GMOCK_INCLUDE_DIRECTORY}
)
-set (LIBRARIES
+collect_sources(SOURCES ${CMAKE_CURRENT_SOURCE_DIR})
+
+set(LIBRARIES
gmock
ProtocolHandler
connectionHandler
@@ -49,15 +52,4 @@ set (LIBRARIES
ProtocolLibrary
)
-set (SOURCES
- incoming_data_handler_test.cc
- protocol_header_validator_test.cc
- protocol_handler_tm_test.cc
- protocol_packet_test.cc
- protocol_payload_test.cc
- multiframe_builder_test.cc
-)
-
-create_test ("protocol_handler_test" "${SOURCES}" "${LIBRARIES}")
-
-endif ()
+create_test(protocol_handler_test "${SOURCES}" "${LIBRARIES}")
diff --git a/src/components/qt_hmi/test/CMakeLists.txt b/src/components/qt_hmi/test/CMakeLists.txt
index b0c48a4348..91ec2cd20c 100644
--- a/src/components/qt_hmi/test/CMakeLists.txt
+++ b/src/components/qt_hmi/test/CMakeLists.txt
@@ -29,8 +29,6 @@
# POSSIBILITY OF SUCH DAMAGE.
-if(BUILD_TESTS)
-
cmake_minimum_required(VERSION 2.8.11)
set(QT_HMI_TESTS_LIST
@@ -67,4 +65,3 @@ foreach( file_i ${QT_HMI_TESTS_LIST})
file(COPY ${file_i} DESTINATION ${CMAKE_CURRENT_BINARY_DIR})
endforeach( file_i )
-endif() \ No newline at end of file
diff --git a/src/components/resumption/CMakeLists.txt b/src/components/resumption/CMakeLists.txt
index b8fa277cae..f142f59b1e 100644
--- a/src/components/resumption/CMakeLists.txt
+++ b/src/components/resumption/CMakeLists.txt
@@ -1,4 +1,4 @@
-# Copyright (c) 2015, Ford Motor Company
+# Copyright (c) 2016, Ford Motor Company
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
@@ -28,6 +28,7 @@
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
+include(${CMAKE_SOURCE_DIR}/tools/cmake/helpers/sources.cmake)
include_directories (
include
@@ -37,9 +38,11 @@ include_directories (
${LOG4CXX_INCLUDE_DIRECTORY}
)
-set (SOURCES
- ${COMPONENTS_DIR}/resumption/src/last_state.cc
+set(PATHS
+ ${CMAKE_CURRENT_SOURCE_DIR}/include
+ ${CMAKE_CURRENT_SOURCE_DIR}/src
)
+collect_sources(SOURCES "${PATHS}")
add_library("Resumption" ${SOURCES})
diff --git a/src/components/resumption/test/CMakeLists.txt b/src/components/resumption/test/CMakeLists.txt
index 6fa1c07381..a131470cd2 100644
--- a/src/components/resumption/test/CMakeLists.txt
+++ b/src/components/resumption/test/CMakeLists.txt
@@ -1,4 +1,4 @@
-# Copyright (c) 2015, Ford Motor Company
+# Copyright (c) 2016, Ford Motor Company
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
@@ -28,7 +28,7 @@
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
-if(BUILD_TESTS)
+include(${CMAKE_SOURCE_DIR}/tools/cmake/helpers/sources.cmake)
include_directories(
${LOG4CXX_INCLUDE_DIRECTORY}
@@ -41,6 +41,8 @@ include_directories(
${CMAKE_BINARY_DIR}
)
+collect_sources(SOURCES ${CMAKE_CURRENT_SOURCE_DIR})
+
set(LIBRARIES
gmock
ConfigProfile
@@ -50,13 +52,4 @@ set(LIBRARIES
ConfigProfile
)
-set(SOURCES
- ${COMPONENTS_DIR}/resumption/test/last_state_test.cc
-)
-
-#file(COPY smartDeviceLink_test.ini DESTINATION ${CMAKE_CURRENT_BINARY_DIR})
-#file(COPY app_info.dat DESTINATION ${CMAKE_CURRENT_BINARY_DIR})
-
-create_test("resumption_test" "${SOURCES}" "${LIBRARIES}")
-
-endif()
+create_test(resumption_test "${SOURCES}" "${LIBRARIES}")
diff --git a/src/components/rpc_base/CMakeLists.txt b/src/components/rpc_base/CMakeLists.txt
index 94e67cc985..700cec72bb 100644
--- a/src/components/rpc_base/CMakeLists.txt
+++ b/src/components/rpc_base/CMakeLists.txt
@@ -28,31 +28,27 @@
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
-
-set(RPC_BASE_INCLUDE_DIR ${COMPONENTS_DIR}/rpc_base/include)
+include(${CMAKE_SOURCE_DIR}/tools/cmake/helpers/sources.cmake)
include_directories(
- include
+ ${COMPONENTS_DIR}/rpc_base/include
+ ${COMPONENTS_DIR}/utils/include
${JSONCPP_INCLUDE_DIRECTORY}
)
-set (SOURCES
- ${COMPONENTS_DIR}/rpc_base/src/rpc_base/rpc_base.cc
+set(PATHS
+ ${CMAKE_CURRENT_SOURCE_DIR}/include
+ ${CMAKE_CURRENT_SOURCE_DIR}/src
)
+collect_sources(SOURCES "${PATHS}")
-set (HEADERS
- ${RPC_BASE_INCLUDE_DIR}/rpc_base/gtest_support.h
- ${RPC_BASE_INCLUDE_DIR}/rpc_base/rpc_base_dbus_inl.h
- ${RPC_BASE_INCLUDE_DIR}/rpc_base/rpc_base.h
- ${RPC_BASE_INCLUDE_DIR}/rpc_base/rpc_base_inl.h
- ${RPC_BASE_INCLUDE_DIR}/rpc_base/rpc_base_json_inl.h
- ${RPC_BASE_INCLUDE_DIR}/rpc_base/rpc_message.h
- ${RPC_BASE_INCLUDE_DIR}/rpc_base/validation_report.h
+set(LIBRARIES
+ jsoncpp
)
-add_library(rpc_base ${HEADERS} ${SOURCES})
-target_link_libraries(rpc_base jsoncpp)
+add_library(rpc_base ${SOURCES})
+target_link_libraries(rpc_base ${LIBRARIES})
if(BUILD_TESTS)
add_subdirectory(test)
-endif() \ No newline at end of file
+endif()
diff --git a/src/components/rpc_base/test/CMakeLists.txt b/src/components/rpc_base/test/CMakeLists.txt
index 76cf738f46..566f0ddcde 100644
--- a/src/components/rpc_base/test/CMakeLists.txt
+++ b/src/components/rpc_base/test/CMakeLists.txt
@@ -1,4 +1,4 @@
-# Copyright (c) 2015, Ford Motor Company
+# Copyright (c) 2016, Ford Motor Company
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
@@ -28,8 +28,9 @@
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
-if (BUILD_TESTS)
- include_directories (
+include(${CMAKE_SOURCE_DIR}/tools/cmake/helpers/sources.cmake)
+
+include_directories(
${COMPONENTS_DIR}/dbus/include
${COMPONENTS_DIR}/dbus/src
${COMPONENTS_DIR}/rpc_base/include
@@ -43,20 +44,16 @@ set(LIBRARIES
jsoncpp
)
-set(SOURCES
- rpc_base_json_test.cc
- rpc_base_test.cc
- validation_report_test.cc
-)
-
-if (${HMI_DBUS_API})
- # Build dbus tests
+if(${HMI_DBUS_API})
include_directories(${DBUS_INCLUDE_DIRS})
- set (LIBRARIES ${LIBRARIES} DBus)
- set (SOURCES ${SOURCES} rpc_base_dbus_test.cc)
-endif ()
-
-create_test("rpc_base_test" "${SOURCES}" "${LIBRARIES}")
-
+ list(APPEND LIBRARIES
+ DBus
+ )
+else()
+ set(EXCLUDE_PATHS
+ rpc_base_dbus_test.cc
+ )
endif()
+collect_sources(SOURCES "${CMAKE_CURRENT_SOURCE_DIR}" "${EXCLUDE_PATHS}")
+create_test(rpc_base_test "${SOURCES}" "${LIBRARIES}")
diff --git a/src/components/security_manager/CMakeLists.txt b/src/components/security_manager/CMakeLists.txt
index 3cc6178931..bb50ad50c9 100644
--- a/src/components/security_manager/CMakeLists.txt
+++ b/src/components/security_manager/CMakeLists.txt
@@ -1,4 +1,4 @@
-# Copyright (c) 2014, Ford Motor Company
+# Copyright (c) 2015, Ford Motor Company
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
@@ -27,7 +27,9 @@
# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
-
+
+
+include(${CMAKE_SOURCE_DIR}/tools/cmake/helpers/sources.cmake)
include_directories(
include/
@@ -41,15 +43,22 @@ include_directories(
${APR_INCLUDE_DIRECTORY}
)
-set (SOURCES
- ${COMPONENTS_DIR}/security_manager/src/security_manager_impl.cc
- ${COMPONENTS_DIR}/security_manager/src/security_query.cc
- ${COMPONENTS_DIR}/security_manager/src/crypto_manager_impl.cc
- ${COMPONENTS_DIR}/security_manager/src/ssl_context_impl.cc
+set(PATHS
+ ${CMAKE_CURRENT_SOURCE_DIR}/include
+ ${CMAKE_CURRENT_SOURCE_DIR}/src
+)
+collect_sources(SOURCES "${PATHS}")
+
+set(LIBRARIES
+ crypto
+ ssl
+ ProtocolHandler
+ jsoncpp
+ ProtocolLibrary
)
add_library(SecurityManager ${SOURCES})
-target_link_libraries(SecurityManager crypto ssl ProtocolHandler jsoncpp ProtocolLibrary)
+target_link_libraries(SecurityManager ${LIBRARIES})
if(BUILD_TESTS)
add_subdirectory(test)
diff --git a/src/components/security_manager/test/CMakeLists.txt b/src/components/security_manager/test/CMakeLists.txt
index 6707e5ea5a..ba1fbcca8b 100644
--- a/src/components/security_manager/test/CMakeLists.txt
+++ b/src/components/security_manager/test/CMakeLists.txt
@@ -28,8 +28,8 @@
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
-if (BUILD_TESTS)
-
+include(${CMAKE_SOURCE_DIR}/tools/cmake/helpers/sources.cmake)
+
include_directories(
${GMOCK_INCLUDE_DIRECTORY}
${COMPONENTS_DIR}/protocol_handler/test/include
@@ -39,20 +39,15 @@ include_directories(
${JSONCPP_INCLUDE_DIRECTORY}
)
-set(SOURCES
- ${COMPONENTS_DIR}/security_manager/test/crypto_manager_impl_test.cc
- ${COMPONENTS_DIR}/security_manager/test/security_manager_test.cc
- ${COMPONENTS_DIR}/security_manager/test/security_query_test.cc
- ${COMPONENTS_DIR}/security_manager/test/security_query_matcher.cc
- ${COMPONENTS_DIR}/security_manager/test/ssl_context_test.cc
- ${COMPONENTS_DIR}/security_manager/test/ssl_certificate_handshake_test.cc
- )
+collect_sources(SOURCES "${CMAKE_CURRENT_SOURCE_DIR}")
set(LIBRARIES
gmock
${SecurityManagerLibrary}
)
+create_test (security_manager_test "${SOURCES}" "${LIBRARIES}")
+
set(CERT_LIST
${CMAKE_SOURCE_DIR}/mycert.pem
${CMAKE_SOURCE_DIR}/mykey.pem
@@ -64,11 +59,8 @@ add_custom_target(generate_certificates
WORKING_DIRECTORY ${CMAKE_BINARY_DIR}
)
-foreach( file_i ${CERT_LIST})
- file(COPY ${file_i} DESTINATION ${CMAKE_CURRENT_BINARY_DIR})
-endforeach( file_i )
+foreach(CERT_ENTRY ${CERT_LIST})
+ file(COPY ${CERT_ENTRY} DESTINATION ${CMAKE_CURRENT_BINARY_DIR})
+endforeach()
-create_test (security_manager_test "${SOURCES}" "${LIBRARIES}")
add_dependencies(security_manager_test generate_certificates)
-
-endif ()
diff --git a/src/components/smart_objects/CMakeLists.txt b/src/components/smart_objects/CMakeLists.txt
index c1d599db67..339cf90ea4 100644
--- a/src/components/smart_objects/CMakeLists.txt
+++ b/src/components/smart_objects/CMakeLists.txt
@@ -1,4 +1,4 @@
-# Copyright (c) 2014, Ford Motor Company
+# Copyright (c) 2016, Ford Motor Company
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
@@ -28,28 +28,19 @@
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
+include(${CMAKE_SOURCE_DIR}/tools/cmake/helpers/sources.cmake)
-set(SMART_OBJECTS_SRC_DIR ${COMPONENTS_DIR}/smart_objects/src)
-
-include_directories (
- include
- ${COMPONENTS_DIR}/utils/include/
+include_directories(
+ ${COMPONENTS_DIR}/include
+ ${COMPONENTS_DIR}/smart_objects/include
+ ${COMPONENTS_DIR}/utils/include
)
-set (SOURCES
- ${SMART_OBJECTS_SRC_DIR}/smart_object.cc
- ${SMART_OBJECTS_SRC_DIR}/smart_schema.cc
- ${SMART_OBJECTS_SRC_DIR}/schema_item.cc
- ${SMART_OBJECTS_SRC_DIR}/always_false_schema_item.cc
- ${SMART_OBJECTS_SRC_DIR}/always_true_schema_item.cc
- ${SMART_OBJECTS_SRC_DIR}/default_shema_item.cc
- ${SMART_OBJECTS_SRC_DIR}/bool_schema_item.cc
- ${SMART_OBJECTS_SRC_DIR}/number_schema_item.cc
- ${SMART_OBJECTS_SRC_DIR}/enum_schema_item.cc
- ${SMART_OBJECTS_SRC_DIR}/string_schema_item.cc
- ${SMART_OBJECTS_SRC_DIR}/object_schema_item.cc
- ${SMART_OBJECTS_SRC_DIR}/array_schema_item.cc
+set(PATHS
+ ${CMAKE_CURRENT_SOURCE_DIR}/include
+ ${CMAKE_CURRENT_SOURCE_DIR}/src
)
+collect_sources(SOURCES "${PATHS}")
add_library("SmartObjects" ${SOURCES})
@@ -60,4 +51,3 @@ endif()
if(BUILD_TESTS)
add_subdirectory(test)
endif()
-
diff --git a/src/components/smart_objects/test/CMakeLists.txt b/src/components/smart_objects/test/CMakeLists.txt
index e8bc20b6b8..e0cc37e104 100644
--- a/src/components/smart_objects/test/CMakeLists.txt
+++ b/src/components/smart_objects/test/CMakeLists.txt
@@ -28,8 +28,11 @@
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
+include(${CMAKE_SOURCE_DIR}/tools/cmake/helpers/sources.cmake)
+
if(BUILD_TESTS)
-add_definitions(-DUNIT_TESTS)
+ add_definitions(-DUNIT_TESTS)
+endif()
include_directories (
${GMOCK_INCLUDE_DIRECTORY}
@@ -45,22 +48,10 @@ set(LIBRARIES
jsoncpp
)
-set(SOURCES
- ${COMPONENTS_DIR}/smart_objects/test/SmartObjectDraft_test.cc
- ${COMPONENTS_DIR}/smart_objects/test/SmartObjectInvalid_test.cc
- ${COMPONENTS_DIR}/smart_objects/test/SmartObjectStress_test.cc
- ${COMPONENTS_DIR}/smart_objects/test/SmartObjectUnit_test.cc
- ${COMPONENTS_DIR}/smart_objects/test/smart_object_performance_test.cc
- ${COMPONENTS_DIR}/smart_objects/test/map_performance_test.cc
- ${COMPONENTS_DIR}/smart_objects/test/BoolSchemaItem_test.cc
- ${COMPONENTS_DIR}/smart_objects/test/NumberSchemaItem_test.cc
- ${COMPONENTS_DIR}/smart_objects/test/StringSchemaItem_test.cc
- ${COMPONENTS_DIR}/smart_objects/test/ArraySchemaItem_test.cc
- ${COMPONENTS_DIR}/smart_objects/test/CObjectSchemaItem_test.cc
- ${COMPONENTS_DIR}/smart_objects/test/AlwaysTrueSchemaItem_test.cc
- ${COMPONENTS_DIR}/smart_objects/test/AlwaysFalseSchemaItem_test.cc
+set(EXCLUDE_PATHS
+ EnumSchemaItem_test.cc
+ SmartObjectConvertionTime_test.cc
)
-create_test("smart_object_test" "${SOURCES}" "${LIBRARIES}")
-
-endif()
+collect_sources(SOURCES "${CMAKE_CURRENT_SOURCE_DIR}" "${EXCLUDE_PATHS}")
+create_test(smart_object_test "${SOURCES}" "${LIBRARIES}")
diff --git a/src/components/telemetry_monitor/CMakeLists.txt b/src/components/telemetry_monitor/CMakeLists.txt
index f3004dc61e..594b56abc5 100644
--- a/src/components/telemetry_monitor/CMakeLists.txt
+++ b/src/components/telemetry_monitor/CMakeLists.txt
@@ -28,8 +28,7 @@
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
-
-set(TELEMETRY_MONITOR_SRC_DIR ${COMPONENTS_DIR}/telemetry_monitor/src)
+include(${CMAKE_SOURCE_DIR}/tools/cmake/helpers/sources.cmake)
include_directories (
include
@@ -49,15 +48,15 @@ include_directories (
${LOG4CXX_INCLUDE_DIRECTORY}
)
-set(SOURCES
- ${TELEMETRY_MONITOR_SRC_DIR}/metric_wrapper.cc
- ${TELEMETRY_MONITOR_SRC_DIR}/telemetry_monitor.cc
- ${TELEMETRY_MONITOR_SRC_DIR}/application_manager_observer.cc
- ${TELEMETRY_MONITOR_SRC_DIR}/transport_manager_observer.cc
- ${TELEMETRY_MONITOR_SRC_DIR}/protocol_handler_observer.cc
- ${TELEMETRY_MONITOR_SRC_DIR}/application_manager_metric_wrapper.cc
- ${TELEMETRY_MONITOR_SRC_DIR}/transport_manager_metric_wrapper.cc
- ${TELEMETRY_MONITOR_SRC_DIR}/protocol_handler_metric_wrapper.cc
+set(PATHS
+ ${CMAKE_CURRENT_SOURCE_DIR}/include
+ ${CMAKE_CURRENT_SOURCE_DIR}/src
+)
+collect_sources(SOURCES "${PATHS}")
+
+set(LIBRARIES
+ HMI_API
+ MOBILE_API
)
add_library("TelemetryMonitor" ${SOURCES})
diff --git a/src/components/telemetry_monitor/test/CMakeLists.txt b/src/components/telemetry_monitor/test/CMakeLists.txt
index 7d2de19854..ea2698dfb2 100644
--- a/src/components/telemetry_monitor/test/CMakeLists.txt
+++ b/src/components/telemetry_monitor/test/CMakeLists.txt
@@ -28,7 +28,7 @@
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
-if(BUILD_TESTS)
+include(${CMAKE_SOURCE_DIR}/tools/cmake/helpers/sources.cmake)
include_directories(
include
@@ -40,20 +40,10 @@ include_directories(
${COMPONENTS_DIR}/resumption/include
${JSONCPP_INCLUDE_DIRECTORY}
)
-
-set(testSources
- metric_wrapper_test.cc
- telemetry_monitor_test.cc
- protocol_handler_metric_test.cc
- protocol_handler_observer_test.cc
- transport_manager_metric_test.cc
- transport_manager_observer_test.cc
- application_manager_metric_test.cc
- application_manager_observer_test.cc
-)
+collect_sources(SOURCES "${CMAKE_CURRENT_SOURCE_DIR}")
-set(testLibraries
+set(LIBRARIES
gmock
TelemetryMonitor
jsoncpp
@@ -68,7 +58,7 @@ set(testLibraries
MessageHelper
Resumption
jsoncpp
- transport_manager
+ TransportManager
MediaManager
ProtocolHandler
connectionHandler
@@ -82,8 +72,8 @@ if (BUILD_BT_SUPPORT)
list(APPEND testLibraries bluetooth)
endif()
-file(COPY log4cxx.properties DESTINATION ${CMAKE_CURRENT_BINARY_DIR})
+create_test("telemetry_monitor_test" "${SOURCES}" "${LIBRARIES}")
+
+file(COPY ${COMPONENTS_DIR}/telemetry_monitor/test/log4cxx.properties DESTINATION ${CMAKE_CURRENT_BINARY_DIR})
-create_test("telemetry_monitor_test" "${testSources}" "${testLibraries}")
-endif()
diff --git a/src/components/transport_manager/CMakeLists.txt b/src/components/transport_manager/CMakeLists.txt
index fbe6018d6a..5d70aca285 100644
--- a/src/components/transport_manager/CMakeLists.txt
+++ b/src/components/transport_manager/CMakeLists.txt
@@ -28,8 +28,8 @@
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
-set(target TransportManager)
-set(TM_SRC_DIR ${COMPONENTS_DIR}/transport_manager/src)
+include(${CMAKE_SOURCE_DIR}/tools/cmake/helpers/platform.cmake)
+include(${CMAKE_SOURCE_DIR}/tools/cmake/helpers/sources.cmake)
include_directories (
include
@@ -42,83 +42,63 @@ include_directories (
${LIBUSB_INCLUDE_DIRECTORY}
${LOG4CXX_INCLUDE_DIRECTORY}
)
-if (BUILD_BT_SUPPORT)
- include_directories(
- )
-endif()
-set (SOURCES
- ${TM_SRC_DIR}/transport_manager_impl.cc
- ${TM_SRC_DIR}/transport_manager_default.cc
- ${TM_SRC_DIR}/transport_adapter/transport_adapter_listener_impl.cc
- ${TM_SRC_DIR}/transport_adapter/transport_adapter_impl.cc
- ${TM_SRC_DIR}/tcp/tcp_transport_adapter.cc
- ${TM_SRC_DIR}/transport_adapter/threaded_socket_connection.cc
- ${TM_SRC_DIR}/tcp/tcp_client_listener.cc
- ${TM_SRC_DIR}/tcp/tcp_device.cc
- ${TM_SRC_DIR}/tcp/tcp_socket_connection.cc
- ${TM_SRC_DIR}/tcp/tcp_connection_factory.cc
+set(PATHS
+ ${CMAKE_CURRENT_SOURCE_DIR}/include
+ ${CMAKE_CURRENT_SOURCE_DIR}/src
+)
+
+set(EXCLUDE_PATHS)
+
+set(LIBRARIES
+ ProtocolLibrary
)
-if (BUILD_BT_SUPPORT)
- list (APPEND SOURCES
- ${TM_SRC_DIR}/bluetooth/bluetooth_device_scanner.cc
- ${TM_SRC_DIR}/bluetooth/bluetooth_transport_adapter.cc
- ${TM_SRC_DIR}/bluetooth/bluetooth_connection_factory.cc
- ${TM_SRC_DIR}/bluetooth/bluetooth_socket_connection.cc
- ${TM_SRC_DIR}/bluetooth/bluetooth_device.cc
+if(BUILD_BT_SUPPORT)
+ list(APPEND LIBRARIES
+ bluetooth
+ )
+else()
+ list(APPEND EXCLUDE_PATHS
+ ${COMPONENTS_DIR}/transport_manager/include/transport_manager/bluetooth
+ ${COMPONENTS_DIR}/transport_manager/src/bluetooth
)
endif()
-if (BUILD_USB_SUPPORT)
- list (APPEND SOURCES
- ${TM_SRC_DIR}/usb/usb_aoa_adapter.cc
- ${TM_SRC_DIR}/usb/usb_connection_factory.cc
- ${TM_SRC_DIR}/usb/usb_device_scanner.cc
- )
+if(BUILD_USB_SUPPORT)
if (CMAKE_SYSTEM_NAME STREQUAL "Linux")
- list (APPEND SOURCES
- ${TM_SRC_DIR}/usb/libusb/usb_handler.cc
- ${TM_SRC_DIR}/usb/libusb/usb_connection.cc
- ${TM_SRC_DIR}/usb/libusb/platform_usb_device.cc
+ set(EXCLUDE_PATHS
+ ${COMPONENTS_DIR}/transport_manager/include/transport_manager/usb/qnx
+ ${COMPONENTS_DIR}/transport_manager/src/usb/qnx
+ )
+ list(APPEND LIBRARIES
+ Libusb-1.0.16
)
elseif(CMAKE_SYSTEM_NAME STREQUAL "QNX")
- list(APPEND SOURCES
- ${TM_SRC_DIR}/usb/qnx/usb_handler.cc
- ${TM_SRC_DIR}/usb/qnx/usb_connection.cc
- ${TM_SRC_DIR}/usb/qnx/platform_usb_device.cc
+ set(EXCLUDE_PATHS
+ ${COMPONENTS_DIR}/transport_manager/include/transport_manager/usb/libusb
+ ${COMPONENTS_DIR}/transport_manager/src/usb/libusb
+ )
+ list(APPEND LIBRARIES
+ usbdi
)
endif()
-endif(BUILD_USB_SUPPORT)
-
-
-if (CMAKE_SYSTEM_NAME STREQUAL "QNX")
+else()
+ list(APPEND EXCLUDE_PATHS
+ ${COMPONENTS_DIR}/transport_manager/include/transport_manager/usb
+ ${COMPONENTS_DIR}/transport_manager/src/usb
+ )
endif()
-add_library(${target} ${SOURCES})
-target_link_libraries(${target} ProtocolLibrary)
+collect_sources(SOURCES "${PATHS}" "${EXCLUDE_PATHS}")
-if (BUILD_USB_SUPPORT)
- if (CMAKE_SYSTEM_NAME STREQUAL "QNX")
- target_link_libraries(${target} usbdi)
- endif()
-endif(BUILD_USB_SUPPORT)
+add_library("TransportManager" ${SOURCES})
+target_link_libraries("TransportManager" ${LIBRARIES})
if(ENABLE_LOG)
- target_link_libraries(${target} log4cxx -L${LOG4CXX_LIBS_DIRECTORY})
-endif()
-
-if (BUILD_BT_SUPPORT)
- target_link_libraries(${target} bluetooth)
+ target_link_libraries("TransportManager" log4cxx -L${LOG4CXX_LIBS_DIRECTORY})
endif()
-if (CMAKE_SYSTEM_NAME STREQUAL "QNX")
-endif()
-
-add_library("transport_manager" ${SOURCES}
- ${TRANSPORT_MANAGER_SOURCES}
-)
-
if(BUILD_TESTS)
add_subdirectory(test)
endif()
diff --git a/src/components/transport_manager/test/CMakeLists.txt b/src/components/transport_manager/test/CMakeLists.txt
index da20f1d43c..757d0b4a63 100644
--- a/src/components/transport_manager/test/CMakeLists.txt
+++ b/src/components/transport_manager/test/CMakeLists.txt
@@ -1,4 +1,4 @@
-# Copyright (c) 2015, Ford Motor Company
+# Copyright (c) 2016, Ford Motor Company
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
@@ -28,8 +28,7 @@
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
-if(BUILD_TESTS)
-set(TM_TEST_DIR ${COMPONENTS_DIR}/transport_manager/test)
+include(${CMAKE_SOURCE_DIR}/tools/cmake/helpers/sources.cmake)
include_directories(
include
@@ -42,10 +41,16 @@ include_directories(
${JSONCPP_INCLUDE_DIRECTORY}
)
+set(EXCLUDE_PATHS
+ raw_message_matcher.cc
+)
+
+collect_sources(SOURCES "${CMAKE_CURRENT_SOURCE_DIR}" "${EXCLUDE_PATHS}")
+
set(LIBRARIES
gmock
ConfigProfile
- transport_manager
+ TransportManager
Utils
ConfigProfile
ProtocolLibrary
@@ -58,20 +63,12 @@ if (BUILD_USB_SUPPORT)
endif()
if (BUILD_BT_SUPPORT)
+ if (CMAKE_SYSTEM_NAME STREQUAL "Linux")
list(APPEND LIBRARIES bluetooth)
+ endif()
endif()
-set(SOURCES
- ${TM_TEST_DIR}/transport_manager_impl_test.cc
- ${TM_TEST_DIR}/transport_adapter_test.cc
- ${TM_TEST_DIR}/transport_adapter_listener_test.cc
- ${TM_TEST_DIR}/tcp_transport_adapter_test.cc
- ${TM_TEST_DIR}/tcp_device_test.cc
- ${TM_TEST_DIR}/tcp_client_listener_test.cc
- ${TM_TEST_DIR}/transport_manager_default_test.cc
-)
-
create_test("transport_manager_test" "${SOURCES}" "${LIBRARIES}")
+
file(COPY smartDeviceLink_test.ini DESTINATION ${CMAKE_CURRENT_BINARY_DIR})
file(COPY app_info_storage2 DESTINATION ${CMAKE_CURRENT_BINARY_DIR})
-endif()
diff --git a/src/components/transport_manager/test/raw_message_matcher.cc b/src/components/transport_manager/test/raw_message_matcher.cc
index 130ddc96c8..ae43838be9 100644
--- a/src/components/transport_manager/test/raw_message_matcher.cc
+++ b/src/components/transport_manager/test/raw_message_matcher.cc
@@ -30,7 +30,7 @@
* POSSIBILITY OF SUCH DAMAGE.
*/
-#include "include/raw_message_matcher.h"
+#include "include/transport_manager/raw_message_matcher.h"
//#include "../../include/protocol/raw_message.h"
namespace test {
diff --git a/src/components/utils/CMakeLists.txt b/src/components/utils/CMakeLists.txt
index f72d43e546..93e11d745b 100644
--- a/src/components/utils/CMakeLists.txt
+++ b/src/components/utils/CMakeLists.txt
@@ -1,4 +1,4 @@
-# Copyright (c) 2015, Ford Motor Company
+# Copyright (c) 2016, Ford Motor Company
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
@@ -28,62 +28,77 @@
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
+include(${CMAKE_SOURCE_DIR}/tools/cmake/helpers/platform.cmake)
+include(${CMAKE_SOURCE_DIR}/tools/cmake/helpers/sources.cmake)
-set(UTILS_INCLUDE_DIR ${COMPONENTS_DIR}/utils/include)
-set(UTILS_SRC_DIR ${COMPONENTS_DIR}/utils/src)
+find_package(SDLSqlite3 REQUIRED)
include_directories (
- ${UTILS_INCLUDE_DIR}
+ ${COMPONENTS_DIR}/utils/include
${COMPONENTS_DIR}/config_profile/include
${COMPONENTS_DIR}/media_manager/include
${COMPONENTS_DIR}/protocol_handler/include
${LOG4CXX_INCLUDE_DIRECTORY}
)
-set (SOURCES
- ${UTILS_SRC_DIR}/bitstream.cc
- ${UTILS_SRC_DIR}/conditional_variable_posix.cc
- ${UTILS_SRC_DIR}/file_system.cc
- ${UTILS_SRC_DIR}/threads/posix_thread.cc
- ${UTILS_SRC_DIR}/threads/thread_delegate.cc
- ${UTILS_SRC_DIR}/threads/thread_validator.cc
- ${UTILS_SRC_DIR}/threads/async_runner.cc
- ${UTILS_SRC_DIR}/lock_posix.cc
- ${UTILS_SRC_DIR}/rwlock_posix.cc
- ${UTILS_SRC_DIR}/date_time.cc
- ${UTILS_SRC_DIR}/signals_linux.cc
- ${UTILS_SRC_DIR}/system.cc
- ${UTILS_SRC_DIR}/resource_usage.cc
- ${UTILS_SRC_DIR}/appenders_loader.cc
- ${UTILS_SRC_DIR}/gen_hash.cc
- ${UTILS_SRC_DIR}/convert_utils.cc
- ${UTILS_SRC_DIR}/custom_string.cc
- ${UTILS_SRC_DIR}/timer.cc
+# dbms
+set(DBMS_PATHS
+ ${CMAKE_CURRENT_SOURCE_DIR}/include/utils/sqlite_wrapper
+ ${CMAKE_CURRENT_SOURCE_DIR}/src/sqlite_wrapper
+ ${CMAKE_CURRENT_SOURCE_DIR}/include/utils/qdb_wrapper
+ ${CMAKE_CURRENT_SOURCE_DIR}/src/qdb_wrapper
)
+set(EXCLUDE_PATHS
+ thread_manager.cc
+ pulse_thread_delegate.cc
+ ${DBMS_PATHS}
+)
+
+set(LIBRARIES)
+
+if(NOT BUILD_BACKTRACE_SUPPORT)
+ list(APPEND EXCLUDE_PATHS
+ back_trace.cc
+ )
+endif()
+
if(ENABLE_LOG)
- list(APPEND SOURCES
- ${UTILS_SRC_DIR}/push_log.cc
- ${UTILS_SRC_DIR}/log_message_loop_thread.cc
- ${UTILS_SRC_DIR}/logger_status.cc
- ${UTILS_SRC_DIR}/auto_trace.cc
- ${UTILS_SRC_DIR}/logger.cc
+ list(APPEND LIBRARIES
+ log4cxx -L${LOG4CXX_LIBS_DIRECTORY}
+ apr-1 -L${APR_LIBS_DIRECTORY}
+ aprutil-1 -L${APR_UTIL_LIBS_DIRECTORY}
+ ConfigProfile
+ )
+else()
+ list(APPEND EXCLUDE_PATHS
+ push_log.cc
+ log_message_loop_thread.cc
+ logger_status.cc
+ auto_trace.cc
+ logger.cc
)
endif()
-if (BUILD_BACKTRACE_SUPPORT)
- list(APPEND SOURCES
- ${UTILS_SRC_DIR}/back_trace.cc
- )
+if(NOT BUILD_BT_SUPPORT)
+ list(APPEND EXCLUDE_PATHS
+ ${CMAKE_CURRENT_SOURCE_DIR}/include/utils/bluetooth
+ ${CMAKE_CURRENT_SOURCE_DIR}/src/bluetooth
+ )
endif()
-if (CMAKE_SYSTEM_NAME STREQUAL "QNX")
- list(APPEND SOURCES
- ${UTILS_SRC_DIR}/threads/pulse_thread_delegate.cc
+if (NOT CMAKE_SYSTEM_NAME STREQUAL "QNX")
+ list(APPEND EXCLUDE_PATHS
+ pulse_thread_delegate.cc
)
endif()
-add_library("Utils" ${SOURCES})
+set(PATHS
+ ${CMAKE_CURRENT_SOURCE_DIR}/include
+ ${CMAKE_CURRENT_SOURCE_DIR}/src
+)
+
+collect_sources(SOURCES "${PATHS}" "${EXCLUDE_PATHS}")
if (CMAKE_SYSTEM_NAME STREQUAL "QNX")
# --- QDB Wrapper
@@ -94,26 +109,16 @@ else ()
endif ()
if(${CMAKE_SYSTEM_NAME} MATCHES "Linux")
- list(APPEND LIBRARIES dl)
+ list(APPEND LIBRARIES dl pthread ${RTLIB})
endif()
+add_library("Utils" ${SOURCES})
+target_link_libraries("Utils" ${LIBRARIES})
if(ENABLE_LOG)
- list(APPEND LIBRARIES log4cxx -L${LOG4CXX_LIBS_DIRECTORY})
- list(APPEND LIBRARIES apr-1 -L${APR_LIBS_DIRECTORY})
- list(APPEND LIBRARIES aprutil-1 -L${APR_UTIL_LIBS_DIRECTORY})
- list(APPEND LIBRARIES ConfigProfile)
-
- ADD_DEPENDENCIES(Utils install-3rd_party_logger)
+ add_dependencies("Utils" install-3rd_party_logger)
endif()
-if(CMAKE_SYSTEM_NAME STREQUAL "Linux")
- target_link_libraries("Utils" pthread ${RTLIB})
-endif()
-
-target_link_libraries("Utils" ${LIBRARIES})
-
-
if(BUILD_TESTS)
add_subdirectory(test)
endif()
diff --git a/src/components/utils/src/qdb_wrapper/CMakeLists.txt b/src/components/utils/src/qdb_wrapper/CMakeLists.txt
deleted file mode 100644
index c19321568e..0000000000
--- a/src/components/utils/src/qdb_wrapper/CMakeLists.txt
+++ /dev/null
@@ -1,54 +0,0 @@
-# Copyright (c) 2013, Ford Motor Company
-# All rights reserved.
-#
-# Redistribution and use in source and binary forms, with or without
-# modification, are permitted provided that the following conditions are met:
-#
-# Redistributions of source code must retain the above copyright notice, this
-# list of conditions and the following disclaimer.
-#
-# Redistributions in binary form must reproduce the above copyright notice,
-# this list of conditions and the following
-# disclaimer in the documentation and/or other materials provided with the
-# distribution.
-#
-# Neither the name of the Ford Motor Company nor the names of its contributors
-# may be used to endorse or promote products derived from this software
-# without specific prior written permission.
-#
-# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
-# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
-# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
-# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
-# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
-# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
-# POSSIBILITY OF SUCH DAMAGE.
-
-set(target dbms)
-
-include_directories(${COMPONENTS_DIR}/utils/include/utils)
-
-set(SOURCES
- ./sql_database.cc
- ./sql_query.cc
- ./sql_error.cc
-)
-
-add_library(${target} ${SOURCES})
-target_link_libraries(${target} qdb Utils)
-
-if (CMAKE_SYSTEM_NAME STREQUAL "QNX")
- file(COPY ${CMAKE_CURRENT_SOURCE_DIR}/policy.ini DESTINATION ${CMAKE_BINARY_DIR}/src/appMain)
- file(COPY ${CMAKE_CURRENT_SOURCE_DIR}/qdbserver.sh DESTINATION ${CMAKE_BINARY_DIR}/src/appMain)
-endif ()
-
-if (CMAKE_SYSTEM_NAME STREQUAL "QNX")
- install(FILES policy.ini DESTINATION bin)
- install(FILES qdbserver.sh DESTINATION bin
- PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ
- GROUP_EXECUTE WORLD_READ WORLD_EXECUTE)
-endif ()
diff --git a/src/components/utils/src/signals_linux.cc b/src/components/utils/src/signals_posix.cc
index 274c254716..274c254716 100644
--- a/src/components/utils/src/signals_linux.cc
+++ b/src/components/utils/src/signals_posix.cc
diff --git a/src/components/utils/src/threads/posix_thread.cc b/src/components/utils/src/threads/thread_posix.cc
index 51e59fa108..51e59fa108 100644
--- a/src/components/utils/src/threads/posix_thread.cc
+++ b/src/components/utils/src/threads/thread_posix.cc
diff --git a/src/components/utils/test/CMakeLists.txt b/src/components/utils/test/CMakeLists.txt
index 6ec12a17e6..81e7d15bcb 100644
--- a/src/components/utils/test/CMakeLists.txt
+++ b/src/components/utils/test/CMakeLists.txt
@@ -28,7 +28,8 @@
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
-if(BUILD_TESTS)
+include(${CMAKE_SOURCE_DIR}/tools/cmake/helpers/platform.cmake)
+include(${CMAKE_SOURCE_DIR}/tools/cmake/helpers/sources.cmake)
include_directories (
${JSONCPP_INCLUDE_DIRECTORY}
@@ -39,74 +40,61 @@ include_directories (
${COMPONENTS_DIR}/policy/include
)
-set(testSources
- messagemeter_test.cc
- file_system_test.cc
- date_time_test.cc
- system_test.cc
- thread_validator_test.cc
- conditional_variable_test.cc
- message_queue_test.cc
- resource_usage_test.cc
- bitstream_test.cc
- prioritized_queue_test.cc
- data_accessor_test.cc
- lock_posix_test.cc
- singleton_test.cc
- #posix_thread_test.cc
- stl_utils_test.cc
- rwlock_posix_test.cc
- async_runner_test.cc
- shared_ptr_test.cc
- scope_guard_test.cc
- atomic_object_test.cc
- message_loop_thread_test.cc
- custom_string_test.cc
- timer_test.cc
+set(EXCLUDE_PATHS
+ qdb_wrapper
+ test_generator
)
-set(testLibraries
- gmock
- Utils
- Policy
- ConfigProfile
-)
+if(NOT ENABLE_LOG)
+ list(APPEND EXCLUDE_PATHS
+ auto_trace_test.cc
+ log_message_loop_thread_test.cc
+ )
+endif()
+
+if(NOT BUILD_BACKTRACE_SUPPORT)
+ list(APPEND EXCLUDE_PATHS
+ back_trace_test.cc
+ )
+endif()
if (CMAKE_SYSTEM_NAME STREQUAL "QNX")
- # --- Tests for QDB Wrapper
- list (APPEND testSources
- ./qdb_wrapper/sql_database_test.cc
- ./qdb_wrapper/sql_query_test.cc
+ # exclude tests for SQLite wrapper
+ list (APPEND EXCLUDE_PATHS
+ ${CMAKE_CURRENT_SOURCE_DIR}/sqlite_wrapper
)
file(COPY qdbserver.sh DESTINATION ${CMAKE_CURRENT_BINARY_DIR})
file(COPY test-qdb.ini DESTINATION ${CMAKE_CURRENT_BINARY_DIR})
file(COPY policy.sql DESTINATION ${CMAKE_CURRENT_BINARY_DIR})
else ()
- # --- Tests for SQLite Wrapper
find_package(Sqlite3 REQUIRED)
- list (APPEND testSources
- ./sqlite_wrapper/sql_database_test.cc
- ./sqlite_wrapper/sql_query_test.cc
- generated_code_with_sqlite_test.cc
+ # exclude tests for QDB wrapper
+ list (APPEND EXCLUDE_PATHS
+ ${CMAKE_CURRENT_SOURCE_DIR}/qdb_wrapper
)
list (APPEND testLibraries sqlite3)
endif()
-if (ENABLE_LOG)
- list(APPEND testSources auto_trace_test.cc)
- list(APPEND testSources log_message_loop_thread_test.cc)
-endif()
+# exclude some tests
+list(APPEND EXCLUDE_PATHS
+ generated_code_with_sqlite_test.cc
+ posix_thread_test.cc
+ resource_usage_test.cc
+)
-if (BUILD_BACKTRACE_SUPPORT)
- list(APPEND testSources back_trace_test.cc)
-endif()
+collect_sources(SOURCES "${CMAKE_CURRENT_SOURCE_DIR}" "${EXCLUDE_PATHS}")
+
+set(LIBRARIES
+ gmock
+ Utils
+ Policy
+ ConfigProfile
+)
+
+create_test(utils_test "${SOURCES}" "${LIBRARIES}")
file(COPY testscript.sh DESTINATION ${CMAKE_CURRENT_BINARY_DIR})
file(COPY log4cxx.properties DESTINATION ${CMAKE_CURRENT_BINARY_DIR})
file(COPY smartDeviceLink.ini DESTINATION ${CMAKE_CURRENT_BINARY_DIR})
-create_test("utils_test" "${testSources}" "${testLibraries}")
-
add_subdirectory(test_generator)
-
-endif()
diff --git a/src/components/utils/test/test_generator/CMakeLists.txt b/src/components/utils/test/test_generator/CMakeLists.txt
index d649f927a5..5a7f939659 100644
--- a/src/components/utils/test/test_generator/CMakeLists.txt
+++ b/src/components/utils/test/test_generator/CMakeLists.txt
@@ -1,4 +1,4 @@
-# Copyright (c) 2015, Ford Motor Company
+# Copyright (c) 2016, Ford Motor Company
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
@@ -28,38 +28,35 @@
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
-if(BUILD_TESTS)
+include(${CMAKE_SOURCE_DIR}/tools/cmake/helpers/generators.cmake)
include_directories (
- ${JSONCPP_INCLUDE_DIRECTORY}
- ${CMAKE_SOURCE_DIR}/src/3rd_party-static/gmock-1.7.0/include
- ${CMAKE_SOURCE_DIR}/src/3rd_party-static/gmock-1.7.0/gtest/include
${CMAKE_SOURCE_DIR}/tools/interfaceGenerator
${CMAKE_CURRENT_BINARY_DIR}
${COMPONENTS_DIR}/utils/include/utils
${COMPONENTS_DIR}/include/utils
+ ${JSONCPP_INCLUDE_DIRECTORY}
+ ${GMOCK_INCLUDE_DIRECTORY}
)
-set(full_xml_name "${CMAKE_SOURCE_DIR}/src/components/interfaces/MOBILE_API.xml")
-
-add_custom_target( generate_version
- COMMAND ${INTEFRACE_GENERATOR_CMD} ${full_xml_name} "mobile_apis"
- ${CMAKE_CURRENT_BINARY_DIR} "--parser-type" "sdlrpcv2"
- DEPENDS ${INTERFACE_GENERATOR_DEPENDENCIES} ${full_xml_name}
- VERBATIM
- )
+set(XML_NAME ${CMAKE_SOURCE_DIR}/src/components/interfaces/MOBILE_API.xml)
+add_custom_target(generate_version
+ COMMAND ${INTEFRACE_GENERATOR_CMD} ${XML_NAME} "mobile_apis"
+ ${CMAKE_CURRENT_BINARY_DIR} "--parser-type" "sdlrpcv2"
+ DEPENDS ${INTERFACE_GENERATOR_DEPENDENCIES} ${XML_NAME}
+ VERBATIM
+)
-set(testLibraries
+set(LIBRARIES
gmock
Utils
)
-set(testSources
+set(SOURCES
generated_msg_version_test.cc
)
-file(COPY ${full_xml_name} DESTINATION ${CMAKE_CURRENT_BINARY_DIR})
-create_test("generator_test" "${testSources}" "${testLibraries}")
-add_dependencies("generator_test" generate_version)
+create_test(generator_test "${SOURCES}" "${LIBRARIES}")
+file(COPY ${XML_NAME} DESTINATION ${CMAKE_CURRENT_BINARY_DIR})
-endif()
+add_dependencies("generator_test" generate_version)