mirror of
https://github.com/Kitware/CMake.git
synced 2025-10-15 20:46:37 +08:00

The sub-build should never try to use a toolchain file. The toolchain file may itself be getting downloaded by FetchContent. If the CMAKE_TOOLCHAIN_FILE environment variable is set, CMake uses it to initialize the CMake variable of the same name. We need to explicitly clear them before the first project call of the sub-build. Fixes: #24535
35 lines
1.3 KiB
CMake
35 lines
1.3 KiB
CMake
# Distributed under the OSI-approved BSD 3-Clause License. See accompanying
|
|
# file Copyright.txt or https://cmake.org/licensing for details.
|
|
|
|
cmake_minimum_required(VERSION @CMAKE_VERSION@)
|
|
|
|
# Reject any attempt to use a toolchain file. We must not use one because
|
|
# we could be downloading it here. If the CMAKE_TOOLCHAIN_FILE environment
|
|
# variable is set, the cache variable will have been initialized from it.
|
|
unset(CMAKE_TOOLCHAIN_FILE CACHE)
|
|
unset(ENV{CMAKE_TOOLCHAIN_FILE})
|
|
|
|
# We name the project and the target for the ExternalProject_Add() call
|
|
# to something that will highlight to the user what we are working on if
|
|
# something goes wrong and an error message is produced.
|
|
|
|
project(@contentName@-populate NONE)
|
|
|
|
@__FETCHCONTENT_CACHED_INFO@
|
|
|
|
include(ExternalProject)
|
|
ExternalProject_Add(@contentName@-populate
|
|
@ARG_EXTRA@
|
|
SOURCE_DIR "@ARG_SOURCE_DIR@"
|
|
BINARY_DIR "@ARG_BINARY_DIR@"
|
|
CONFIGURE_COMMAND ""
|
|
BUILD_COMMAND ""
|
|
INSTALL_COMMAND ""
|
|
TEST_COMMAND ""
|
|
USES_TERMINAL_DOWNLOAD YES
|
|
USES_TERMINAL_UPDATE YES
|
|
USES_TERMINAL_PATCH YES
|
|
)
|
|
|
|
@__FETCHCONTENT_COPY_FILE@
|