Skip to content
Snippets Groups Projects

Components XML files for opGUI - Gtest for component Algorithm_RouteControl

Files
92
+ 17
8
################################################################################
# Copyright (c) 2020-2024 Bayerische Motoren Werke Aktiengesellschaft (BMW AG)
# 2020 HLRS, University of Stuttgart
# 2024 Volkswagen AG
#
# This program and the accompanying materials are made available under the
# terms of the Eclipse Public License 2.0 which is available at
@@ -80,7 +81,7 @@ endif()
# [HEADERS <headerfiles>]
# [INCDIRS <include-directories>]
# [LIBRARIES <libraries>]
# [UIS <qt_uis>]
# [GUIXML <guixmlfiles>]
# [FOLDER <category>]
# [COMPONENT <sim|core|bin|module>])
#
@@ -91,7 +92,7 @@ endif()
# [HEADERS <headerfiles>]
# [INCDIRS <include-directories>]
# [LIBRARIES <libraries>]
# [UIS <qt_uis>]
# [GUIXML <guixmlfiles>]
# [FOLDER <category>]
# [COMPONENT <sim|core|bin|module>])
#
@@ -101,7 +102,7 @@ endif()
# [HEADERS <headerfiles>]
# [INCDIRS <include-directories>]
# [LIBRARIES <libraries>]
# [UIS <qt_uis>]
# [GUIXML <guixmlfiles>]
# [DEFAULT_MAIN]
# [SIMCORE_DEPS <dependencies>]
# [RESOURCES <directories>]
@@ -113,7 +114,7 @@ endif()
# LINKAGE Specifies static or shared linkage for library targets
# SOURCES Source files
# HEADERS Header files
# UIS Qt UI files
# GUIXML xml files for GUI system editor
# INCDIRS Additional private include directories
# LIBRARIES Additional libraries to link
# DEFAULT_MAIN Links a simple main() implementation for running GTest
@@ -135,7 +136,7 @@ endif()
# - Target property DEBUG_POSTFIX is set to CMAKE_DEBUG_POSTFIX
##
function(add_openpass_target)
cmake_parse_arguments(PARSED_ARG "DEFAULT_MAIN" "NAME;TYPE;LINKAGE" "HEADERS;SOURCES;INCDIRS;LIBRARIES;UIS;SIMCORE_DEPS;RESOURCES;FOLDER;COMPONENT" ${ARGN})
cmake_parse_arguments(PARSED_ARG "DEFAULT_MAIN" "NAME;TYPE;LINKAGE" "HEADERS;SOURCES;INCDIRS;LIBRARIES;GUIXML;SIMCORE_DEPS;RESOURCES;FOLDER;COMPONENT" ${ARGN})
if(TARGET ${PARSED_ARG_NAME})
message(STATUS "Target '${PARSED_ARG_NAME}' already defined. Skipping.")
@@ -165,7 +166,7 @@ function(add_openpass_target)
string(TOUPPER "${PARSED_ARG_LINKAGE}" PARSED_ARG_LINKAGE)
endif()
add_library(${PARSED_ARG_NAME} ${PARSED_ARG_LINKAGE} ${PARSED_ARG_HEADERS} ${PARSED_ARG_SOURCES} ${PARSED_ARG_UIS})
add_library(${PARSED_ARG_NAME} ${PARSED_ARG_LINKAGE} ${PARSED_ARG_HEADERS} ${PARSED_ARG_SOURCES})
set_target_properties(${PARSED_ARG_NAME} PROPERTIES INSTALL_RPATH "\$ORIGIN:\$ORIGIN/../${SUBDIR_LIB_EXTERNAL}:\$ORIGIN/../../${SUBDIR_LIB_EXTERNAL}:\$ORIGIN/../${SUBDIR_LIB_COMMON}:\$ORIGIN/../../${SUBDIR_LIB_COMMON}")
if("${PARSED_ARG_LINKAGE}" STREQUAL "SHARED")
@@ -193,7 +194,7 @@ function(add_openpass_target)
message(WARNING "LINKAGE parameter isn't used by target type 'executable'")
endif()
add_executable(${PARSED_ARG_NAME} ${PARSED_ARG_HEADERS} ${PARSED_ARG_SOURCES} ${PARSED_ARG_UIS})
add_executable(${PARSED_ARG_NAME} ${PARSED_ARG_HEADERS} ${PARSED_ARG_SOURCES})
set_target_properties(${PARSED_ARG_NAME} PROPERTIES INSTALL_RPATH "\$ORIGIN/${SUBDIR_LIB_EXTERNAL}:\$ORIGIN/${SUBDIR_LIB_COMMON}")
install(TARGETS ${PARSED_ARG_NAME} RUNTIME DESTINATION "${DESTDIR}")
add_to_global_target_list(exe_target_list ${PARSED_ARG_NAME})
@@ -223,7 +224,7 @@ function(add_openpass_target)
)
endif()
add_executable(${PARSED_ARG_NAME} EXCLUDE_FROM_ALL ${PARSED_ARG_HEADERS} ${PARSED_ARG_SOURCES} ${PARSED_ARG_UIS})
add_executable(${PARSED_ARG_NAME} EXCLUDE_FROM_ALL ${PARSED_ARG_HEADERS} ${PARSED_ARG_SOURCES})
target_include_directories(${PARSED_ARG_NAME} PRIVATE
${MANTLE_TEST_INCLUDE_DIR}
@@ -441,6 +442,14 @@ function(add_openpass_target)
message(WARNING "RESOURCES only used for 'test' openpass targets")
endif()
endif()
if(DEFINED PARSED_ARG_GUIXML)
if("${PARSED_ARG_TYPE}" STREQUAL "library")
foreach(XML IN LISTS PARSED_ARG_GUIXML)
install(FILES ${XML} DESTINATION "${SUBDIR_XML_COMPONENTS}")
endforeach()
endif()
endif()
endif()
endfunction()
Loading