Merge branch 'backport-license-rst' (early part) into license-rst

This commit is contained in:
Brad King 2025-03-03 10:42:50 -05:00
commit 67b6964efa
16 changed files with 52 additions and 40 deletions

View File

@ -10,8 +10,8 @@ skip =
.git,
.typos.toml,
build,
Copyright.txt,
CTestCustom.cmake.in,
LICENSE.rst,
Modules/Internal/CPack/NSIS.template.in,
Source/CursesDialog/form/*,
Source/kwsys/*,

View File

@ -25,7 +25,7 @@ for try in $(seq $n); do
git reset -q --hard FETCH_HEAD
Source/CMakeVersion.bash
git update-index -q --ignore-missing --refresh
modified=$(git diff-index --name-only HEAD -- "Source/CMakeVersion.cmake" "Copyright.txt")
modified=$(git diff-index --name-only HEAD -- "Source/CMakeVersion.cmake" "LICENSE.rst")
if test -n "$modified"; then
echo "version changed"
git add -u

View File

@ -57,7 +57,7 @@ SEH = "SEH"
ignore-hidden = false
ignore-dot = false
extend-exclude = [
"Copyright.txt"
"LICENSE.rst"
# Exclude third-party sources.
, "Source/CursesDialog/form/"
, "Source/kwsys/"

View File

@ -14,10 +14,12 @@ if(CMake_INSTALL_DEPENDENCIES)
include(${CMake_SOURCE_DIR}/Modules/InstallRequiredSystemLibraries.cmake)
endif()
set(CPACK_RESOURCE_FILE_LICENSE "${CMAKE_CURRENT_BINARY_DIR}/CMakeFiles/LICENSE.txt")
configure_file("${CMake_LICENSE_FILE}" "${CPACK_RESOURCE_FILE_LICENSE}" COPYONLY)
set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "CMake is a build tool")
set(CPACK_PACKAGE_VENDOR "Kitware")
set(CPACK_PACKAGE_DESCRIPTION_FILE "${CMAKE_CURRENT_SOURCE_DIR}/Copyright.txt")
set(CPACK_RESOURCE_FILE_LICENSE "${CMAKE_CURRENT_SOURCE_DIR}/Copyright.txt")
set(CPACK_PACKAGE_DESCRIPTION_FILE "${CPACK_RESOURCE_FILE_LICENSE}")
set(CPACK_PACKAGE_NAME "${CMAKE_PROJECT_NAME}")
set(CPACK_PACKAGE_VERSION "${CMake_VERSION}")
set(CPACK_PACKAGE_INSTALL_DIRECTORY "${CPACK_PACKAGE_NAME}")

View File

@ -386,6 +386,7 @@ endif()
# The main section of the CMakeLists file
#
#-----------------------------------------------------------------------
include(Source/CMakeCopyright.cmake)
include(Source/CMakeVersion.cmake)
include(CTest)
@ -533,7 +534,9 @@ endif()
if(NOT CMake_TEST_EXTERNAL_CMAKE)
# Install license file as it requires.
install(FILES Copyright.txt DESTINATION ${CMAKE_DOC_DIR})
install(FILES
"${CMake_LICENSE_FILE}"
DESTINATION ${CMAKE_DOC_DIR})
# Install script directories.
install(

View File

@ -74,6 +74,6 @@ License
We do not require any formal copyright assignment or contributor license
agreement. Any contributions intentionally sent upstream are presumed
to be offered under terms of the OSI-approved BSD 3-clause License.
See `Copyright.txt`_ for details.
See `LICENSE.rst`_ for details.
.. _`Copyright.txt`: Copyright.txt
.. _`LICENSE.rst`: LICENSE.rst

View File

@ -1,6 +1,4 @@
CMake - Cross Platform Makefile Generator
Copyright 2000-2025 Kitware, Inc. and Contributors
All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions
@ -29,9 +27,10 @@ THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
------------------------------------------------------------------------------
Contributors
************
The following individuals and institutions are among the Contributors:
The following individuals and institutions are among the contributors:
* Aaron C. Meadows <cmake@shadowguarddev.com>
* Adriaan de Groot <groot@kde.org>
@ -114,23 +113,27 @@ The following individuals and institutions are among the Contributors:
See version control history for details of individual contributions.
Copyright
=========
The above copyright and license notice applies to distributions of
CMake in source and binary form. Third-party software packages supplied
with CMake under compatible licenses provide their own copyright notices
documented in corresponding subdirectories or source files.
------------------------------------------------------------------------------
Sponsorship
===========
CMake was initially developed by Kitware with the following sponsorship:
* National Library of Medicine at the National Institutes of Health
as part of the Insight Segmentation and Registration Toolkit (ITK).
* National Library of Medicine at the National Institutes of Health
as part of the Insight Segmentation and Registration Toolkit (ITK).
* US National Labs (Los Alamos, Livermore, Sandia) ASC Parallel
Visualization Initiative.
* US National Labs (Los Alamos, Livermore, Sandia) ASC Parallel
Visualization Initiative.
* National Alliance for Medical Image Computing (NAMIC) is funded by the
National Institutes of Health through the NIH Roadmap for Medical Research,
Grant U54 EB005149.
* National Alliance for Medical Image Computing (NAMIC) is funded by the
National Institutes of Health through the NIH Roadmap for Medical Research,
Grant U54 EB005149.
* Kitware, Inc.
* Kitware, Inc.

View File

@ -22,9 +22,9 @@ License
=======
CMake is distributed under the OSI-approved BSD 3-clause License.
See `Copyright.txt`_ for details.
See `LICENSE.rst`_ for details.
.. _`Copyright.txt`: Copyright.txt
.. _`LICENSE.rst`: LICENSE.rst
Building CMake
==============

View File

@ -0,0 +1,10 @@
# CMake license file and copyright line.
set(CMake_LICENSE_FILE "${CMake_SOURCE_DIR}/LICENSE.rst")
file(STRINGS "${CMake_LICENSE_FILE}" CMake_COPYRIGHT_LINE LIMIT_COUNT 1 REGEX "^Copyright ")
if(NOT CMake_COPYRIGHT_LINE MATCHES [[^Copyright 2000-2[0-9][0-9][0-9] Kitware, Inc\. and Contributors$]])
message(FATAL_ERROR
"The CMake license file:\n"
" ${CMake_LICENSE_FILE}\n"
"does not contain a copyright line matching the expected pattern."
)
endif()

View File

@ -12,6 +12,6 @@ if version_patch_line=$(grep -E '^set\(CMake_VERSION_PATCH [0-9]{8}\)' "$version
if [[ "$version_patch_year" =~ ^[0-9][0-9][0-9][0-9]$ ]] ; then
sed -i -e '
s/\(^Copyright 2000-\)[0-9][0-9][0-9][0-9]\( .*\)/\1'"$version_patch_year"'\2/
' "${BASH_SOURCE%/*}/../Copyright.txt"
' "${BASH_SOURCE%/*}/../LICENSE.rst"
fi
fi

View File

@ -308,15 +308,12 @@ Checks: '-*,llvm-twine-local'
")
if(APPLE)
file(STRINGS "${CMake_SOURCE_DIR}/Copyright.txt" copyright_line
LIMIT_COUNT 1 REGEX "^Copyright 2000-20[0-9][0-9] Kitware")
set_target_properties(cmake-gui PROPERTIES
OUTPUT_NAME CMake
MACOSX_BUNDLE_INFO_PLIST "${CMAKE_CURRENT_SOURCE_DIR}/Info.plist.in"
MACOSX_BUNDLE_SHORT_VERSION_STRING "${CMAKE_BUNDLE_VERSION}"
# TBD: MACOSX_BUNDLE_BUNDLE_VERSION "${CMAKE_BUNDLE_VERSION}"
MACOSX_BUNDLE_COPYRIGHT "${copyright_line}"
MACOSX_BUNDLE_COPYRIGHT "${CMake_COPYRIGHT_LINE}"
MACOSX_BUNDLE_GUI_IDENTIFIER "org.cmake.cmake"
)

View File

@ -1026,8 +1026,7 @@ void CMakeSetupDialog::doAbout()
"CMake suite maintained and supported by Kitware (kitware.com/cmake).\n"
"Distributed under terms of the BSD 3-Clause License.\n"
"\n"
"CMake GUI maintained by csimsoft,\n"
"built using Qt %2 (qt-project.org).\n"
"CMake GUI built using Qt %2 (qt-project.org).\n"
#ifdef USE_LGPL
"\n"
"The Qt Toolkit is Copyright (C) The Qt Company Ltd.\n"

View File

@ -1,21 +1,21 @@
if(CMAKE_VERSION MATCHES "\\.(20[0-9][0-9])[0-9][0-9][0-9][0-9](-|$)")
set(version_year "${CMAKE_MATCH_1}")
set(copyright_line_regex "^Copyright 2000-(20[0-9][0-9]) Kitware")
file(STRINGS "${CMAKE_CURRENT_LIST_DIR}/../Copyright.txt" copyright_line
file(STRINGS "${CMAKE_CURRENT_LIST_DIR}/../LICENSE.rst" copyright_line
LIMIT_COUNT 1 REGEX "${copyright_line_regex}")
if(copyright_line MATCHES "${copyright_line_regex}")
set(copyright_year "${CMAKE_MATCH_1}")
if(copyright_year LESS version_year)
message(FATAL_ERROR "Copyright.txt contains\n"
message(FATAL_ERROR "LICENSE.rst contains\n"
" ${copyright_line}\n"
"but the current version year is ${version_year}.")
else()
message(STATUS "PASSED: Copyright.txt contains\n"
message(STATUS "PASSED: LICENSE.rst contains\n"
" ${copyright_line}\n"
"and the current version year is ${version_year}.")
endif()
else()
message(FATAL_ERROR "Copyright.txt has no Copyright line of expected format!")
message(FATAL_ERROR "LICENSE.rst has no Copyright line of expected format!")
endif()
else()
message(STATUS "SKIPPED: CMAKE_VERSION does not know the year: ${CMAKE_VERSION}")

View File

@ -1,6 +1,6 @@
# Regex to match license notices at the top of module files.
set(notice_regex [[^# Distributed under the OSI-approved BSD 3-Clause License\. See accompanying
# file Copyright\.txt or https://cmake\.org/licensing for details\.
# file LICENSE\.rst or https://cmake\.org/licensing for details\.
]])
string(REPLACE "\n" "\r?\n" notice_regex "${notice_regex}")

View File

@ -7,6 +7,7 @@ if(NOT CMake_SOURCE_DIR)
get_filename_component(tmp "${CMAKE_CURRENT_SOURCE_DIR}" PATH)
get_filename_component(CMake_SOURCE_DIR "${tmp}" PATH)
include(${CMake_SOURCE_DIR}/Modules/CTestUseLaunchers.cmake)
include(${CMake_SOURCE_DIR}/Source/CMakeCopyright.cmake)
include(${CMake_SOURCE_DIR}/Source/CMakeVersion.cmake)
include(${CMake_SOURCE_DIR}/Source/CMakeInstallDestinations.cmake)
configure_file(${CMAKE_CURRENT_SOURCE_DIR}/CTestCustom.cmake.in ${CMAKE_CURRENT_BINARY_DIR}/CTestCustom.cmake @ONLY)
@ -50,10 +51,7 @@ elseif(NOT SPHINX_EXECUTABLE)
message(FATAL_ERROR "SPHINX_EXECUTABLE (sphinx-build) is not found!")
endif()
set(copyright_line_regex "^Copyright (2000-20[0-9][0-9] Kitware.*)")
file(STRINGS "${CMake_SOURCE_DIR}/Copyright.txt" copyright_line
LIMIT_COUNT 1 REGEX "${copyright_line_regex}")
if(copyright_line MATCHES "${copyright_line_regex}")
if(CMake_COPYRIGHT_LINE MATCHES "^Copyright (.*)$")
set(conf_copyright "${CMAKE_MATCH_1}")
else()
set(conf_copyright "Kitware, Inc.")

View File

@ -64,7 +64,7 @@ if test "$cmake_version_rc" != ""; then
cmake_version="${cmake_version}-rc${cmake_version_rc}"
fi
cmake_copyright="`grep '^Copyright .* Kitware' "${cmake_source_dir}/Copyright.txt"`"
cmake_copyright="`grep '^Copyright .* Kitware' "${cmake_source_dir}/LICENSE.rst"`"
cmake_bin_dir_keyword="OTHER"
cmake_data_dir_keyword="OTHER"