1 # Distributed under the OSI-approved BSD 3-Clause License. See accompanying
2 # file Copyright.txt or https://cmake.org/licensing for details.
5 # This file is included by cmGlobalGenerator::EnableLanguage.
6 # It is included before the compiler has been determined.
8 # before cmake 2.6 these variables were set in cmMakefile.cxx. This is still
9 # done to keep scripts and custom language and compiler modules working.
10 # But they are reset here and set again in the platform files for the target
11 # platform, so they can be used for testing the target platform instead
12 # of testing the host platform.
21 # The CMAKE_EFFECTIVE_SYSTEM_NAME is used to load compiler and compiler
22 # wrapper configuration files. By default it equals to CMAKE_SYSTEM_NAME
23 # but could be overridden in the ${CMAKE_SYSTEM_NAME}-Initialize files.
25 # It is useful to share the same aforementioned configuration files and
26 # avoids duplicating them in case of tightly related platforms.
28 # An example are the platforms supported by Xcode (macOS, iOS, tvOS, visionOS
29 # and watchOS). For all of those the CMAKE_EFFECTIVE_SYSTEM_NAME is
30 # set to Apple which results in using
31 # Platform/Apple-AppleClang-CXX.cmake for the Apple C++ compiler.
32 set(CMAKE_EFFECTIVE_SYSTEM_NAME "${CMAKE_SYSTEM_NAME}")
34 include(Platform/${CMAKE_SYSTEM_NAME}-Initialize OPTIONAL)
36 set(CMAKE_SYSTEM_SPECIFIC_INITIALIZE_LOADED 1)