Commit Graph

28 Commits

Author SHA1 Message Date
Brad King 86578eccf2 Simplify CMake per-source license notices
Per-source copyright/license notice headers that spell out copyright holder
names and years are hard to maintain and often out-of-date or plain wrong.
Precise contributor information is already maintained automatically by the
version control tool.  Ultimately it is the receiver of a file who is
responsible for determining its licensing status, and per-source notices are
merely a convenience.  Therefore it is simpler and more accurate for
each source to have a generic notice of the license name and references to
more detailed information on copyright holders and full license terms.

Our `Copyright.txt` file now contains a list of Contributors whose names
appeared source-level copyright notices.  It also references version control
history for more precise information.  Therefore we no longer need to spell
out the list of Contributors in each source file notice.

Replace CMake per-source copyright/license notice headers with a short
description of the license and links to `Copyright.txt` and online information
available from "https://cmake.org/licensing".  The online URL also handles
cases of modules being copied out of our source into other projects, so we
can drop our notices about replacing links with full license text.

Run the `Utilities/Scripts/filter-notices.bash` script to perform the majority
of the replacements mechanically.  Manually fix up shebang lines and trailing
newlines in a few files.  Manually update the notices in a few files that the
script does not handle.
2016-09-27 15:14:44 -04:00
Brad King b7180cfee5 Utilities/Scripts: Add temporary script to filter license notices
Add a script to replace our previous per-source license notices with a
much simpler notice.  This will be used in a following commit and then
removed.
2016-09-27 15:04:28 -04:00
Brad King aa6682802e kwiml: Update import script for new upstream URL 2016-09-08 09:49:39 -04:00
Brad King fc3dab0ea9 Tests: Port GenerateExportHeader test to RunCMake infrastructure
This will allow build failure cases to be added later.
2016-09-05 09:45:42 -04:00
Brad King 6f8b93983a Merge topic 'import-libuv'
39ac889d cmake: Add trivial usage of libuv
7cf369fe Do not build libuv on HP-UX
075cae51 Do not build libuv on SPARC
9a53af40 Do not build libuv on Cygwin
219f7411 Do not build libuv on Mac OS X 10.4 and lower
8a5beef3 Add option to build CMake against a system libuv
e56aa462 FindLibUV: Add module to find libuv package
551d5aed libuv: Fix unused variable warning in uv_loop_close
f4f8074b libuv: Avoid including macOS CoreServices header globally
a63aaaed libuv: Always include our own header first
9130b53a libuv: Conditionally declare Windows APIs for VS 2008 and below
b52afa46 libuv: Fix anonymous union syntax
05dbc204 libuv: Fix Windows API function typedef syntax
75139374 libuv: Install LICENSE file with CMake documentation
95dcc4e4 libuv: Disable warnings to avoid changing 3rd party code
13b7e758 libuv: Build the library within CMake
...
2016-08-31 09:19:31 -04:00
Brad King 3800fc299f Add script to update libuv from upstream 2016-08-31 08:53:38 -04:00
Brad King 24e7ccb7ef curl: Update script to get curl from new repository
Curl is now hosted at

  https://github.com/curl/curl.git
2016-08-26 08:32:45 -04:00
Ben Boeckel dcb2e39fda update-third-party: support Git 2.9.0's new merge restrictions
Use the `--allow-unrelated-histories` flag to declare that we Know What
We're Doing™ (but only if necessary).
2016-08-24 14:16:13 -04:00
Brad King 0966f1c548 Add script to update vim-cmake-syntax from upstream 2016-08-17 09:11:06 -04:00
Brad King 85d966dcd7 Merge topic 'update-curl'
f59ab433 curl: Remove CMake-specific README
f53f4a8a Merge branch 'upstream-curl' into update-curl
202adcfe curl 2016-08-03 (f2cb3a01)
e1c11352 curl: Update script to get curl 7.50.1
a51c6c53 Merge branch 'upstream-curl' into update-curl
7ec709d3 curl 2015-08-11 (1a7f66a3)
3e9b0343 Add script to update curl from upstream
2016-08-04 09:56:39 -04:00
Brad King e1c11352f2 curl: Update script to get curl 7.50.1 2016-08-03 14:26:02 -04:00
Brad King 3e9b03439f Add script to update curl from upstream 2016-08-03 11:51:27 -04:00
Brad King 4c476cc9b2 Merge topic 'clang-format-script'
a77d597b clang-format.bash: Fix filter-branch example documentation
2016-07-01 09:12:43 -04:00
Brad King a77d597b86 clang-format.bash: Fix filter-branch example documentation
Inside `git filter-branch --tree-filter` we must format all tracked
files because formatting of the tree for each commit is independent
from earlier commits.
2016-06-30 16:11:36 -04:00
Brad King d4f524040e liblzma: Revise update script to get version 5.0.8 2016-06-29 10:07:48 -04:00
Daniel Pfeifer ec8f744a11 Add script to update liblzma from upstream 2016-06-29 10:01:33 -04:00
Brad King 2f2117e7d4 clang-format.bash: Limit formatting to files selected by options
Now that our one-shot clang-format run is complete we rarely need to
filter the entire tree anymore.  Filter nothing if no options are given
and just print the usage message.  Offer options to specify selection of
some set of files from Git as needed for various workflows.
2016-05-20 13:57:25 -04:00
Brad King bf451d9ff9 Add a script to run clang-format on the entire source tree
List all sources in version control and filter out those that we should
not format for various reasons.  Then run the clang-format tool to do an
in-place update.
2016-05-16 16:04:46 -04:00
Brad King f4bd9d43b8 Add script to update Expat from upstream 2016-05-05 14:42:12 -04:00
Brad King 91e6da10eb Add script to update LibArchive from upstream 2016-05-02 10:25:15 -04:00
Ben Boeckel 97149ff8db update-third-party: read attributes from the worktree
This should be done so that any attributes for ignoring certain files
when exporting can be appended to the file during the extraction step,
but ignored in the actual import. Necessary for importing the gitsetup
repository.
2016-03-09 13:57:57 -05:00
Brad King a35f4be61f update-third-party: Add license notice
Our Git infrastructure scripts use the "Apache License 2.0".
2016-03-09 13:57:41 -05:00
Ben Boeckel afac3d107d update-third-party: remove empty directories as well
The `git ls-files | xargs rm` removes only files; directories which are
empty are left laying around. This later chokes the `mv` which puts the
"reduced" directory into place. Remove the empty directories as well.
2016-03-09 13:57:27 -05:00
Brad King a53e0168c3 Merge topic 'import-kwiml'
a5dd0c9d Add option to use a system-installed KWIML
036b6ef7 Port CMake from cmIML to KWIML
12293371 Merge branch 'upstream-KWIML' into import-kwiml
3fdbb0a8 KWIML 2015-12-09 (43f9f8d0)
55b21d07 Add script to update KWIML from upstream
c7d9a249 Utilities/KWIML: Drop sources to make room for fresh import
2015-12-21 09:41:09 -05:00
Brad King 55b21d072e Add script to update KWIML from upstream 2015-12-17 14:56:31 -05:00
Brad King c4282347e2 Add script to update KWSys from upstream 2015-12-17 14:46:09 -05:00
Ben Boeckel 498c36850b Add a script to help update third-party sources
Use the VTK `ThirdParty/update-common.sh` script as of commit
2f24b7b0f60b67a2a28b9aef210f06f904e7a977.

Co-Author: Brad King <brad.king@kitware.com>
2015-12-17 14:44:53 -05:00
Roger Leigh 8a60e6961e Utilities: Add BoostScanDeps script
This script scans Boost headers in order to determine inter-library
dependencies, using the "autolink" information embedded in the
headers for automatic linking on Windows.  This information is then
output in a form suitable for use in FindBoost.cmake.
2015-12-02 09:40:17 -05:00