1if("${CMAKE_MINIMUM_REQUIRED_VERSION}" VERSION_LESS "2.8.3.20101214" AND NOT MSYS)
2  set(__USE_CMAKE_LEGACY_CYGWIN_WIN32 1)
3endif()
4if(NOT DEFINED WIN32 AND NOT MSYS)
5  set(WIN32 0)
6  if(DEFINED __USE_CMAKE_LEGACY_CYGWIN_WIN32)
7    if(NOT DEFINED CMAKE_LEGACY_CYGWIN_WIN32
8        AND DEFINED ENV{CMAKE_LEGACY_CYGWIN_WIN32})
9      set(CMAKE_LEGACY_CYGWIN_WIN32 $ENV{CMAKE_LEGACY_CYGWIN_WIN32})
10    endif()
11    if(CMAKE_LEGACY_CYGWIN_WIN32)
12      message(STATUS "Defining WIN32 under Cygwin due to CMAKE_LEGACY_CYGWIN_WIN32")
13      set(WIN32 1)
14    elseif("x${CMAKE_LEGACY_CYGWIN_WIN32}" STREQUAL "x")
15      message(WARNING "CMake no longer defines WIN32 on Cygwin!"
16        "\n"
17        "(1) If you are just trying to build this project, ignore this warning "
18        "or quiet it by setting CMAKE_LEGACY_CYGWIN_WIN32=0 in your environment or "
19        "in the CMake cache.  "
20        "If later configuration or build errors occur then this project may "
21        "have been written under the assumption that Cygwin is WIN32.  "
22        "In that case, set CMAKE_LEGACY_CYGWIN_WIN32=1 instead."
23        "\n"
24        "(2) If you are developing this project, add the line\n"
25        "  set(CMAKE_LEGACY_CYGWIN_WIN32 0) # Remove when CMake >= 2.8.4 is required\n"
26        "at the top of your top-level CMakeLists.txt file or set the minimum "
27        "required version of CMake to 2.8.4 or higher.  "
28        "Then teach your project to build on Cygwin without WIN32.")
29    endif()
30  elseif(DEFINED CMAKE_LEGACY_CYGWIN_WIN32)
31    message(AUTHOR_WARNING "CMAKE_LEGACY_CYGWIN_WIN32 ignored because\n"
32      "  cmake_minimum_required(VERSION ${CMAKE_MINIMUM_REQUIRED_VERSION})\n"
33      "is at least 2.8.4.")
34  endif()
35endif()
36if(DEFINED __USE_CMAKE_LEGACY_CYGWIN_WIN32)
37  # Pass WIN32 legacy setting to scripts.
38  if(WIN32)
39    set(ENV{CMAKE_LEGACY_CYGWIN_WIN32} 1)
40  else()
41    set(ENV{CMAKE_LEGACY_CYGWIN_WIN32} 0)
42  endif()
43  unset(__USE_CMAKE_LEGACY_CYGWIN_WIN32)
44endif()
45
46set(CYGWIN 1)
47
48set(CMAKE_SHARED_LIBRARY_PREFIX "cyg")
49set(CMAKE_SHARED_LIBRARY_SUFFIX ".dll")
50set(CMAKE_SHARED_MODULE_PREFIX "cyg")
51set(CMAKE_SHARED_MODULE_SUFFIX ".dll")
52set(CMAKE_IMPORT_LIBRARY_PREFIX "lib")
53set(CMAKE_IMPORT_LIBRARY_SUFFIX ".dll.a")
54set(CMAKE_EXECUTABLE_SUFFIX ".exe")          # .exe
55# Modules have a different default prefix that shared libs.
56set(CMAKE_MODULE_EXISTS 1)
57
58set(CMAKE_FIND_LIBRARY_PREFIXES "lib")
59set(CMAKE_FIND_LIBRARY_SUFFIXES ".dll.a" ".a")
60
61# Shared libraries on cygwin can be named with their version number.
62set(CMAKE_SHARED_LIBRARY_NAME_WITH_VERSION 1)
63
64include(Platform/UnixPaths)
65
66# Windows API on Cygwin
67list(APPEND CMAKE_SYSTEM_INCLUDE_PATH
68  /usr/include/w32api
69  )
70
71# Windows API on Cygwin
72list(APPEND CMAKE_SYSTEM_LIBRARY_PATH
73  /usr/lib/w32api
74  )
75