5 usage
='usage: files.bash [<options>] [--]
9 --version <ver> CMake <major>.<minor> version number to push.
10 Defaults to version of source tree.
14 echo "$@" 1>&2; exit 1
17 readonly cmake_source_dir
="${BASH_SOURCE%/*}/../.."
19 cmake_version_component
()
22 /^set(CMake_VERSION_${1}/ {s/set(CMake_VERSION_${1} *\([0-9]*\))/\1/;p;}
23 " "${cmake_source_dir}/Source/CMakeVersion.cmake"
28 while test "$#" != 0; do
30 --version) shift; version
="$1" ;;
37 test "$#" = 0 || die
"$usage"
39 if test -z "$version"; then
40 cmake_version_major
="$(cmake_version_component MAJOR)"
41 cmake_version_minor
="$(cmake_version_component MINOR)"
42 cmake_version_patch
="$(cmake_version_component PATCH)"
43 cmake_version_rc
="$(cmake_version_component RC)"
44 version
="${cmake_version_major}.${cmake_version_minor}.${cmake_version_patch}"
45 if test -n "$cmake_version_rc"; then
46 version
="$version-rc$cmake_version_rc"
51 IFS
='.-' read version_major version_minor version_patch version_suffix
<<< "$version"
52 readonly version_major
53 readonly version_minor
54 readonly version_patch
55 readonly version_suffix
57 if test -n "$version_suffix"; then
58 maybe_version_suffix
='"suffix": "'"$version_suffix"'",'
60 maybe_version_suffix
=''
62 readonly maybe_version_suffix
64 readonly files_v1_in
="${BASH_SOURCE%/*}/files-v1.json.in"
66 s/@version@/$version/g
67 s/@version_major@/$version_major/g
68 s/@version_minor@/$version_minor/g
69 s/@version_patch@/$version_patch/g
70 s/@maybe_version_suffix@/$maybe_version_suffix/g
73 > "cmake-$version-files-v1.json"
78 for algo
in $algos; do
80 "cmake-$version-files-v1.json" \
81 $
(jq
-r '.files[].name' "cmake-$version-files-v1.json") \
82 | LC_ALL
=C
sort -k 2 \
83 > "cmake-$version-SHA-$algo.txt"