Skip to content

Commit 1b663ce

Browse files
committed
build: cmake 3.1 compatibility
* fix problem with REMOVE_DUPLICATES on undefined lists * since 3.1 file(GLOB FILEPATHS RELATIVE .. returns single / instead of // as previously - necessary adoptions for regex and matches done. Should work with all cmake versions. Tested with 3.1.0-rc3
1 parent 10ee2f7 commit 1b663ce

File tree

5 files changed

+11
-9
lines changed

5 files changed

+11
-9
lines changed

channels/CMakeLists.txt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -253,8 +253,8 @@ set(FILENAME "ChannelOptions.cmake")
253253
file(GLOB FILEPATHS RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} "*/${FILENAME}")
254254

255255
foreach(FILEPATH ${FILEPATHS})
256-
if(${FILEPATH} MATCHES "^([^/]*)//${FILENAME}")
257-
string(REGEX REPLACE "^([^/]*)//${FILENAME}" "\\1" DIR ${FILEPATH})
256+
if(${FILEPATH} MATCHES "^([^/]*)/+${FILENAME}")
257+
string(REGEX REPLACE "^([^/]*)/+${FILENAME}" "\\1" DIR ${FILEPATH})
258258
set(CHANNEL_OPTION)
259259
include(${FILEPATH})
260260
if(${CHANNEL_OPTION})

channels/client/CMakeLists.txt

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,9 @@ set(${MODULE_PREFIX}_SRCS
2424
${CMAKE_CURRENT_SOURCE_DIR}/addin.c
2525
${CMAKE_CURRENT_SOURCE_DIR}/addin.h)
2626

27+
if(CHANNEL_STATIC_CLIENT_ENTRIES)
2728
list(REMOVE_DUPLICATES CHANNEL_STATIC_CLIENT_ENTRIES)
29+
endif()
2830

2931
foreach(STATIC_ENTRY ${CHANNEL_STATIC_CLIENT_ENTRIES})
3032
foreach(STATIC_MODULE ${CHANNEL_STATIC_CLIENT_MODULES})

client/CMakeLists.txt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -63,8 +63,8 @@ set(FILENAME "ModuleOptions.cmake")
6363
file(GLOB FILEPATHS RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} "*/${FILENAME}")
6464

6565
foreach(FILEPATH ${FILEPATHS})
66-
if(${FILEPATH} MATCHES "^([^/]*)//${FILENAME}")
67-
string(REGEX REPLACE "^([^/]*)//${FILENAME}" "\\1" FREERDP_CLIENT ${FILEPATH})
66+
if(${FILEPATH} MATCHES "^([^/]*)/+${FILENAME}")
67+
string(REGEX REPLACE "^([^/]*)/+${FILENAME}" "\\1" FREERDP_CLIENT ${FILEPATH})
6868
set(FREERDP_CLIENT_ENABLED 0)
6969
include(${FILEPATH})
7070
if(FREERDP_CLIENT_ENABLED)

server/CMakeLists.txt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -48,8 +48,8 @@ set(FILENAME "ModuleOptions.cmake")
4848
file(GLOB FILEPATHS RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} "*/${FILENAME}")
4949

5050
foreach(FILEPATH ${FILEPATHS})
51-
if(${FILEPATH} MATCHES "^([^/]*)//${FILENAME}")
52-
string(REGEX REPLACE "^([^/]*)//${FILENAME}" "\\1" FREERDP_SERVER ${FILEPATH})
51+
if(${FILEPATH} MATCHES "^([^/]*)/+${FILENAME}")
52+
string(REGEX REPLACE "^([^/]*)/+${FILENAME}" "\\1" FREERDP_SERVER ${FILEPATH})
5353
set(FREERDP_SERVER_ENABLED 0)
5454
include(${FILEPATH})
5555
if(FREERDP_SERVER_ENABLED)

third-party/CMakeLists.txt

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -22,11 +22,11 @@
2222
file(GLOB all_valid_subdirs RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} "*/CMakeLists.txt")
2323

2424
foreach(dir ${all_valid_subdirs})
25-
if(${dir} MATCHES "^([^/]*)//CMakeLists.txt")
26-
string(REGEX REPLACE "^([^/]*)//CMakeLists.txt" "\\1" dir_trimmed ${dir})
25+
if(${dir} MATCHES "^([^/]*)/+CMakeLists.txt")
26+
string(REGEX REPLACE "^([^/]*)/+CMakeLists.txt" "\\1" dir_trimmed ${dir})
2727
message(STATUS "Adding third-party component ${dir_trimmed}")
2828
add_subdirectory(${dir_trimmed})
2929
endif()
3030
endforeach(dir)
3131

32-
set(THIRD_PARTY_INCLUDES ${THIRD_PARTY_INCLUDES} PARENT_SCOPE)
32+
set(THIRD_PARTY_INCLUDES ${THIRD_PARTY_INCLUDES} PARENT_SCOPE)

0 commit comments

Comments
 (0)