summaryrefslogtreecommitdiff
path: root/Modules/CMakeExportBuildSettings.cmake
blob: a18f950623c0fcbe84f7a1bba85b29d6667332a5 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36

#=============================================================================
# Copyright 2002-2009 Kitware, Inc.
#
# Distributed under the OSI-approved BSD License (the "License");
# see accompanying file Copyright.txt for details.
#
# This software is distributed WITHOUT ANY WARRANTY; without even the
# implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
# See the License for more information.
#=============================================================================
# (To distribute this file outside of CMake, substitute the full
#  License text for the above reference.)

# This module is purposely no longer documented.  It does nothing useful.
if(NOT "${CMAKE_MINIMUM_REQUIRED_VERSION}" VERSION_LESS 2.7)
  message(FATAL_ERROR
    "The functionality of this module has been dropped as of CMake 2.8.  "
    "It was deemed harmful (confusing users by changing their compiler).  "
    "Please remove calls to the CMAKE_EXPORT_BUILD_SETTINGS macro and "
    "stop including this module.  "
    "If this project generates any files for use by external projects, "
    "remove any use of the CMakeImportBuildSettings module from them.")
endif()

# This macro used to store build settings of a project in a file to be
# loaded by another project using CMAKE_IMPORT_BUILD_SETTINGS.  Now it
# creates a file that refuses to load (with comment explaining why).
macro(CMAKE_EXPORT_BUILD_SETTINGS SETTINGS_FILE)
  if(${SETTINGS_FILE} MATCHES ".+")
    configure_file(${CMAKE_ROOT}/Modules/CMakeBuildSettings.cmake.in
                   ${SETTINGS_FILE} @ONLY IMMEDIATE)
  else()
    message(SEND_ERROR "CMAKE_EXPORT_BUILD_SETTINGS called with no argument.")
  endif()
endmacro()