From 858d5a0b3e52dbae635fac5a6944fba23a362f5b Mon Sep 17 00:00:00 2001 From: Brad King Date: Tue, 9 Sep 2014 09:09:57 -0400 Subject: [PATCH] Fix if() checks of CMAKE_SYSTEM_NAME on Cygwin The CMAKE_SYSTEM_NAME is "CYGWIN", but we also define a variable named "CYGWIN" to "1". Avoid allowing if() to expand the "CYGWIN" string as a variable. --- CMakeCPack.cmake | 2 +- CMakeLists.txt | 2 +- Source/CMakeLists.txt | 2 +- Tests/CMakeLists.txt | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/CMakeCPack.cmake b/CMakeCPack.cmake index 66ec900a5..22ca8cfa1 100644 --- a/CMakeCPack.cmake +++ b/CMakeCPack.cmake @@ -50,7 +50,7 @@ if(EXISTS "${CMAKE_ROOT}/Modules/CPack.cmake") if(NOT DEFINED CPACK_SYSTEM_NAME) # make sure package is not Cygwin-unknown, for Cygwin just # cygwin is good for the system name - if("${CMAKE_SYSTEM_NAME}" STREQUAL "CYGWIN") + if("x${CMAKE_SYSTEM_NAME}" STREQUAL "xCYGWIN") set(CPACK_SYSTEM_NAME Cygwin) else() set(CPACK_SYSTEM_NAME ${CMAKE_SYSTEM_NAME}-${CMAKE_SYSTEM_PROCESSOR}) diff --git a/CMakeLists.txt b/CMakeLists.txt index 54aad8302..14f60ae1d 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -381,7 +381,7 @@ macro (CMAKE_BUILD_UTILITIES) # Use curses? if (UNIX) # there is a bug in the Syllable libraries which makes linking ccmake fail, Alex - if(NOT "${CMAKE_SYSTEM_NAME}" MATCHES syllable) + if(NOT CMAKE_SYSTEM_NAME MATCHES syllable) set(CURSES_NEED_NCURSES TRUE) find_package(Curses QUIET) if (CURSES_LIBRARY) diff --git a/Source/CMakeLists.txt b/Source/CMakeLists.txt index c3f77f472..f9405b364 100644 --- a/Source/CMakeLists.txt +++ b/Source/CMakeLists.txt @@ -451,7 +451,7 @@ if (WIN32) endif () # Watcom support -if(WIN32 OR "${CMAKE_SYSTEM_NAME}" STREQUAL "Linux") +if(WIN32 OR CMAKE_SYSTEM_NAME STREQUAL "Linux") set_property(SOURCE cmake.cxx APPEND PROPERTY COMPILE_DEFINITIONS CMAKE_USE_WMAKE) list(APPEND SRCS cmGlobalWatcomWMakeGenerator.cxx diff --git a/Tests/CMakeLists.txt b/Tests/CMakeLists.txt index 7242a0029..128498cc5 100644 --- a/Tests/CMakeLists.txt +++ b/Tests/CMakeLists.txt @@ -1392,7 +1392,7 @@ ${CMake_BINARY_DIR}/bin/cmake -DDIR=dev -P ${CMake_SOURCE_DIR}/Utilities/Release ) list(APPEND TEST_BUILD_DIRS "${CMake_BINARY_DIR}/Tests/Dependency") - if("${CMAKE_SYSTEM_NAME}" MATCHES syllable) + if(CMAKE_SYSTEM_NAME MATCHES syllable) # RPATH isn't supported under Syllable, so the tests don't # find their libraries. In order to fix that LIBRARY_OUTPUT_DIR