@@ -28,6 +28,21 @@ set(SHELL_EXECUTABLE "")
28
28
set (TINYXML2_LIB_DIR_COMPOSE_VOLUME "" )
29
29
set (TINYXML2_LIB_DIR_COMPOSE_LD_LIBRARY_PATH "" )
30
30
31
+ # Configure TinyXML2 library path if installed in user library path
32
+ if (NOT (TINYXML2_FROM_SOURCE OR TINYXML2_FROM_THIRDPARTY))
33
+ message (STATUS "TINYXML2_LIBRARY " ${TINYXML2_LIBRARY} )
34
+ file (GLOB TINYXML2_LIBRARY_DIRS LIST_DIRECTORIES false ${TINYXML2_LIBRARY} )
35
+ if (TINYXML2_LIBRARY_DIRS)
36
+ list (GET TINYXML2_LIBRARY_DIRS 0 TINYXML2_LIBRARY_HEAD_DIR)
37
+ get_filename_component (TINYXML2_LIB_DIR ${TINYXML2_LIBRARY_HEAD_DIR} DIRECTORY )
38
+ message (STATUS "TINYXML2_LIB_DIR " ${TINYXML2_LIB_DIR} )
39
+ set (TINYXML2_LIB_DIR_COMPOSE_VOLUME "- ${TINYXML2_LIB_DIR} :${CMAKE_INSTALL_PREFIX} /${DATA_INSTALL_DIR} /fastdds:ro" )
40
+ set (TINYXML2_LIB_DIR_COMPOSE_LD_LIBRARY_PATH "${CMAKE_INSTALL_PREFIX} /${DATA_INSTALL_DIR} /fastdds" )
41
+ else ()
42
+ message (FATAL_ERROR "Could not find a valid TinyXML 2 lirbary path." )
43
+ endif ()
44
+ endif ()
45
+
31
46
# Linux configurations
32
47
if (UNIX AND NOT (APPLE ) AND NOT (QNXNTO) AND NOT (ANDROID))
33
48
# Find bash
@@ -39,6 +54,21 @@ if(UNIX AND NOT(APPLE) AND NOT(QNXNTO) AND NOT(ANDROID))
39
54
set (SHELL_EXECUTABLE ${BASH_EXECUTABLE} )
40
55
set (DOCKER_IMAGE_NAME "ubuntu:22.04" )
41
56
57
+ set (PROJECT_BINATY_DIR_COMPOSE_VOLUME "${PROJECT_BINARY_DIR} :${PROJECT_BINARY_DIR} " )
58
+ set (fastcdr_LIB_DIR_COMPOSE_VOLUME "${fastcdr_LIB_DIR} :${fastcdr_LIB_DIR} " )
59
+ set (CMAKE_INSTALL_PREFIX_COMPOSE_VOLUME "${CMAKE_INSTALL_PREFIX} :${CMAKE_INSTALL_PREFIX} " )
60
+
61
+ set (PATH_ENVIRONMENT_VARIABLE_COMPOSE "LD_LIBRARY_PATH: ${PROJECT_BINARY_DIR} /src/cpp:${fastcdr_LIB_DIR} " )
62
+ if (TINYXML2_LIB_DIR_COMPOSE_LD_LIBRARY_PATH)
63
+ set (PATH_ENVIRONMENT_VARIABLE_COMPOSE "${PATH_ENVIRONMENT_VARIABLE_COMPOSE} :${TINYXML2_LIB_DIR_COMPOSE_LD_LIBRARY_PATH} " )
64
+ endif ()
65
+ set (EXAMPLE_PREFIX_DIR_COMPOSE "${PROJECT_BINARY_DIR} /examples/cpp" )
66
+ set (EXAMPLE_SUFFIX_DIR_COMPOSE "" )
67
+ set (FASTDDS_DEFAULT_PROFILES_FILE_PREFIX_COMPOSE "${PROJECT_BINARY_DIR} /examples/cpp/" )
68
+ set (COMMAND_EXAMPLE_DIR_PREFIX_COMPOSE "$\$ {EXAMPLE_DIR}" )
69
+ set (COMMAND_CONCATENATE_COMPOSE "&" )
70
+ set (COMMAND_BACKGROUND_JOB_COMPOSE "" )
71
+
42
72
# Windows configurations
43
73
elseif (WIN32 )
44
74
# Find pwsh
@@ -47,8 +77,8 @@ elseif(WIN32)
47
77
message (FATAL_ERROR "pwsh not found" )
48
78
endif ()
49
79
50
- # Temporary, in the is installed here
51
- set (SHELL_EXECUTABLE "C:/Program Files/PowerShell/latest /pwsh.exe" )
80
+ set (PWSH_VERSION_DOCKER "latest" )
81
+ set (SHELL_EXECUTABLE "C:/Program Files/PowerShell/${PWSH_VERSION_DOCKER} /pwsh.exe" )
52
82
53
83
set (FILE_EXTENSION ".exe" )
54
84
set (DOCKER_IMAGE_NAME "windows-testing" )
@@ -60,6 +90,18 @@ elseif(WIN32)
60
90
string (REGEX REPLACE ".:" "C:" PROJECT_BINARY_DIR_C ${PROJECT_BINARY_DIR} )
61
91
string (REGEX REPLACE ".:" "C:" fastcdr_INSTALL_DIR_C ${fastcdr_INSTALL_DIR} )
62
92
93
+ set (PROJECT_BINATY_DIR_COMPOSE_VOLUME "${PROJECT_BINARY_DIR} :${PROJECT_BINARY_DIR_C} " )
94
+ set (fastcdr_LIB_DIR_COMPOSE_VOLUME "${fastcdr_INSTALL_DIR} /bin:${fastcdr_INSTALL_DIR_C} /bin" )
95
+ set (CMAKE_INSTALL_PREFIX_COMPOSE_VOLUME "${CMAKE_INSTALL_PREFIX} /bin:${CMAKE_INSTALL_PREFIX_C} /bin" )
96
+
97
+ set (PATH_ENVIRONMENT_VARIABLE_COMPOSE "PATH: C:/Program Files/OpenSSL-Win64;${CMAKE_INSTALL_PREFIX_C} /bin;${fastcdr_INSTALL_DIR_C} /bin;C:/Windows/System32;C:/Windows/System32/downlevel;" )
98
+ set (EXAMPLE_PREFIX_DIR_COMPOSE "${PROJECT_BINARY_DIR_C} /examples/cpp" )
99
+ set (EXAMPLE_SUFFIX_DIR_COMPOSE "RelWithDebInfo" )
100
+ set (FASTDDS_DEFAULT_PROFILES_FILE_PREFIX_COMPOSE "${PROJECT_BINARY_DIR_C} /examples/cpp" )
101
+ set (COMMAND_EXAMPLE_DIR_PREFIX_COMPOSE "& $\$ Env:EXAMPLE_DIR" )
102
+ set (COMMAND_CONCATENATE_COMPOSE "&\" \" &" )
103
+ set (COMMAND_BACKGROUND_JOB_COMPOSE "; Receive-Job 1 -Wait" )
104
+
63
105
set (WIN_DOCKERFILE ${CMAKE_CURRENT_LIST_DIR} /windows/Dockerfile)
64
106
# Generate image for testing
65
107
add_custom_target (
@@ -77,21 +119,6 @@ else()
77
119
message (FATAL_ERROR "Unsupported platform" )
78
120
endif ()
79
121
80
- # Configure TinyXML2 library path if installed in user library path
81
- if (NOT (TINYXML2_FROM_SOURCE OR TINYXML2_FROM_THIRDPARTY))
82
- message (STATUS "TINYXML2_LIBRARY " ${TINYXML2_LIBRARY} )
83
- file (GLOB TINYXML2_LIBRARY_DIRS LIST_DIRECTORIES false ${TINYXML2_LIBRARY} )
84
- if (TINYXML2_LIBRARY_DIRS)
85
- list (GET TINYXML2_LIBRARY_DIRS 0 TINYXML2_LIBRARY_HEAD_DIR)
86
- get_filename_component (TINYXML2_LIB_DIR ${TINYXML2_LIBRARY_HEAD_DIR} DIRECTORY )
87
- message (STATUS "TINYXML2_LIB_DIR " ${TINYXML2_LIB_DIR} )
88
- set (TINYXML2_LIB_DIR_COMPOSE_VOLUME "- ${TINYXML2_LIB_DIR} :${CMAKE_INSTALL_PREFIX} /${DATA_INSTALL_DIR} /fastdds:ro" )
89
- set (TINYXML2_LIB_DIR_COMPOSE_LD_LIBRARY_PATH ":${CMAKE_INSTALL_PREFIX} /${DATA_INSTALL_DIR} /fastdds" )
90
- else ()
91
- message (FATAL_ERROR "Could not find a valid TinyXML 2 lirbary path." )
92
- endif ()
93
- endif ()
94
-
95
122
# Find all pytest files for testing
96
123
file (GLOB examples_python_tests RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_CURRENT_SOURCE_DIR} /*world.py)
97
124
0 commit comments