diff options
Diffstat (limited to 'src/components/policy/CMakeLists.txt')
-rw-r--r-- | src/components/policy/CMakeLists.txt | 94 |
1 files changed, 51 insertions, 43 deletions
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() |