Commit Graph

62 Commits

Author SHA1 Message Date
Alex Turbov
8de02a14c8 ci(pre-commit): version bump typos hook plus fix found typos 2025-10-23 21:14:25 +04:00
Peter Kokot
1d0b46111e Help: Add remaining intro code blocks to modules
This is a follow-up to add intro code blocks to all remaining utility
and find modules.

Fixes: #26555
2025-08-18 11:52:56 +02:00
Kitware Robot
1772622772 LICENSE: Replace references to Copyright.txt with LICENSE.rst
```
git grep -lz 'Copyright.txt or https://cmake.org/licensing ' |
  while IFS= read -r -d $'\0' f ; do
    sed -i '/Copyright.txt or https:\/\/cmake.org\/licensing / {
              s/Copyright.txt/LICENSE.rst/
            }' "$f" ; done
```
2025-03-03 10:43:35 -05:00
Nikita Nemkin
9890cfc4ec Help: More syntax highlighting for literal blocks
Covers almost all blocks containing actual code, except:

* Parsed-literal blocks can't be highlighted, including many command
  summaries and substitution-heavy docs like find_... commands.
  This is a Sphinx limitation.

* Code with errors, like CMP0049, DEPLOYMENT_ADDITIONAL_FILES,
  DEPLOYMENT_REMOTE_DIRECTORY, @PACKAGE_INIT@ substitution in the
  tutorial, bracket arguments/comments in cmake-language.7 and
  cmake-developer.7.

* FindQt4 module, which needs reformatting.
2025-01-29 16:48:53 -05:00
Peter Kokot
9f2efc3270 Remove optional arguments from else() and end*() commands
This adds a brief explanation of the optional condition in the `else()`
and removes all legacy usages of `else()` and `end*()` commands.
2025-01-28 03:01:23 +01:00
Brad King
3c5b34af9d Help: Replace links with their permanent redirects 2023-02-17 08:45:01 -05:00
Erlend E. Aasland
351239b776 CPack/IFW: Add support for QtIFW 4.5
Fixes: #24164
2022-11-15 16:30:50 -05:00
Erlend E. Aasland
de6764126a CPackIFW: Add support for missing QtIFW patch and minor releases
Fixes: #24035
2022-10-10 13:31:29 +02:00
Erlend E. Aasland
e848ce21c9 CPack/IFW: Add support for QtIFW 4.4
Fixes: #24027
2022-10-05 15:48:08 -04:00
Craig Scott
343ed1f913 CPack/IFW: Add support for QtIFW 4.3 2022-03-25 22:05:24 +11:00
Erlend E. Aasland
51a2afe6e7 CPack/IFW: Add support for QtIFW 4.2 2021-10-27 14:31:22 -04:00
Erlend E. Aasland
5895f236ae CPack/IFW: Add support for QtIFW 4.1
Fixes: #22722
2021-10-05 09:18:52 -04:00
Craig Scott
a43783a08d CPackIFW: Fix parsing of name and version in component DEPENDS
The DEPENDS or DEPENDENCIES arguments in a call to
cpack_ifw_configure_component() or cpack_ifw_configure_component_group()
specify a name and optionally a version constraint as a single string.
QtIFW also allows a colon (requires QtIFW 3.1 or later) or a hyphen to
separate the name and version. The version may optionally contain a
leading operator, with = being assumed when no operator is present.

The previous code was not handling : as a separator at all and was
erroneously dropping the version part when no operator was given.
Fix both of those non-conforming behaviors and also warn if trying
to use a hyphen in a name with a QtIFW version that isn't recent enough
to support it.

Fixes: #21697
2021-03-27 07:44:00 +11:00
Nikita Nemkin
8fea95319b Help: Add .. versionadded directives to module docs
Issue: #19715
2020-12-02 21:00:30 +05:00
Brad King
c457670711 Merge topic 'qtifw-archivegen'
5ab75dd7dd CPack/IFW: Locate the archivegen utility

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5503
2020-11-13 09:45:33 -05:00
Erlend Egeberg Aasland
5ab75dd7dd CPack/IFW: Locate the archivegen utility
Fixes: #21427
2020-11-12 21:22:53 +01:00
Erlend Egeberg Aasland
63ae96a317 CPack/IFW: Add support for QtIFW 4.0
installerbase v4.0 segfaults on macOS if you pass `--framework-version`,
so re-order flags to try `--version` first.

Fixes: #21426
2020-11-12 09:53:51 -05:00
Kitware Robot
496ec6036f Help: Add Sphinx 'versionadded' directives to each top-level document
Run the `Utilities/Sphinx/update_versions.py` script to add initial
markup to every top-level document and find module.

Issue: #19715
2020-07-06 10:23:20 -04:00
Frederik Gladhorn
b79aad8069 CPack/IFW: Add Qt installer framework version 3.2
Qt 5.15 comes with IFW 3.2
2020-06-08 08:11:39 -04:00
Frederik Gladhorn
f859e6f812 CPack/IFW: Fix documentation typo: REQUARED 2020-06-08 08:08:58 -04:00
Joachim Wuttke (o)
e240371ab1 Help: CPackIFWGenerator: explain relation to CPackIWF
* Make overview more focussed
* Explain the relation to CPackIFW
2020-02-11 10:47:26 -05:00
Joachim Wuttke (o)
78779c6111 Help: Show external link only once per page; explain abbreviation QtIFW. 2020-02-11 10:47:26 -05:00
Clément Rezvoy
6f6e0966a7 CPackIFW: Add missing cpack_ifw_configure_component_group option processing
Both commit 88ecfd8ba1 (CPackIFW: Add some options, 2016-11-11,
v3.8.0-rc1~248^2) and commit e5089c562c (CPackIFW: Add some options,
2017-01-24, v3.8.0-rc1~53^2) added some options to this macro's
documentation and implementation, but the actual processing of the
parsed options was never added.  Add it now.

Reviewed-by: Konstantin Podsvirov <konstantin@podsvirov.pro>
2019-03-28 14:59:08 -04:00
Joachim Wuttke (o)
60a8d4c5f4 CPack/IFW: Correct wording in error message 2019-02-07 06:51:15 -05:00
Kyle Edwards
48bc8b2b82 CPack: Move internal implementation modules into Internal/CPack directory
These modules are not meant to be included by user code, they are
only an internal implementation detail for CPack. Having them live
in the main Modules directory with documentation was misleading, so
they have been moved into Modules/Internal/CPack, and their
documentation has been stripped following its move into the new
"CPack Generators" section. No-op modules which contained only
documentation have been removed entirely.

The only module that hasn't been moved is CPackIFW, because it
contains user-facing macros which would be lost if it were moved.
So, the CPackIFW module has been updated with a note explaining what
needs to (eventually) happen.
2018-06-21 11:00:28 -04:00
Kyle Edwards
2a2829cc75 Help: Add new section for CPack generators
The documentation for CPack generators previously lived in their
respective internal CMake modules. This setup was misleading,
because it implied that you should include the modules in your own
code, which is not the case. Moving the documentation into a
separate section does a better job of hiding the internal modules,
which are just an implementation detail. The generator documentation
has also been modified to remove any references to the module name.

The CPackIFW module is a special exception: since it has user-facing
macros, the documentation for these macros has been kept in the module
page, while all other documentation related to the IFW generator has
been moved into the new section.

To make it easier to find the new documentation, the old help pages
for the CPack*.cmake modules have not been deleted, but have been
replaced with a link to their respective help page in the new
documentation section.
2018-06-21 11:00:25 -04:00
Kyle Edwards
be6267808a CPackIFW: Turn documentation into a block comment 2018-06-21 10:57:29 -04:00
Luz Paz
3ab7bf8285 Various typo fixes
Some are user-facing. Others are source comments.
2018-01-04 06:52:01 +11:00
Jean-Philippe Lebel
739ae1d090 CPack/IFW: Add option to control deletion of the install directory
Added support for QT IFW "RemoveTargetDir" boolean option.  QTIFW
supports an option to prevent, or not, deletion of the installation
directory. This is a direct pass-through to that variable.
2017-12-15 13:24:58 -05:00
luzpaz
777e87ae00 Fix trivial typos in text
Some are user facing.

Found using

    codespell -q 3 --skip="./Utilities" -I .cmake-whitelist.txt`

whereby the whitelist contained:

    ans
    dum
    helpfull
    emmited
    emmitted
    buil
    iff
    isnt
    nto
    ot
    pathes
    substract
    te
    todays
    upto
    whitespaces
2017-11-03 10:25:05 -04:00
Konstantin Podsvirov
9a24ab6b63 CPackIFW: Add some options
The `CPackIFW` module `cpack_ifw_configure_component` and
`cpack_ifw_configure_component_group` commands gained a new
`REPLACES` and `CHECKABLE` options.
2017-09-21 21:34:33 +03:00
Konstantin Podsvirov
5fe64511d6 CPackIFW: Add CPACK_IFW_REPOSITORIES_DIRECTORIES variable
Add CPACK_IFW_REPOSITORIES_DIRECTORIES variable to specify
additional repositories dirs that will be used to resolve and
repack dependent components
2017-08-17 21:41:16 +03:00
Konstantin Podsvirov
45623e7255 CPackIFW: Add CPACK_IFW_PACKAGE_FILE_EXTENSION variable
Add CPACK_IFW_PACKAGE_FILE_EXTENSION variable to customize
target binary format.
2017-08-10 00:20:11 +03:00
Konstantin Podsvirov
72ac7ad98d CPackIFW: Internationalization Support
Changes:
- DISPLAY_NAME and DESCRIPTION in CPackIFW module now is MULTI_ARGS;
- Added internationalization support for DisplayName and Description
  properties in cmCPackIFWPackage class;
- Added documentation to CPackIFW module;
- Added release note.
2017-05-13 02:34:15 +03:00
Konstantin Podsvirov
993ebdc72d CPackIFW: Framework version
Improved algorithm for finding the version of QtIFW tools.
2017-04-25 21:43:21 +03:00
Konstantin Podsvirov
049be8b95f CPackIFW: Added new QtIFW versions for search 2017-04-15 07:02:11 +03:00
Konstantin Podsvirov
d97978b887 CPackIFW: Improved QtIFW search algorithm
Improvements:
- Added new hint CPACK_IFW_ROOT variable;
- Extend documentation.
2017-04-15 06:52:13 +03:00
Konstantin Podsvirov
e5089c562c CPackIFW: Add some options
The cpack_ifw_configure_component_group command gained options:
- DEPENDS.

The cpack_ifw_configure_component and
cpack_ifw_configure_component_group commands gained options:
- REQUIRES_ADMIN_RIGHTS;
- UPDATE_TEXT;
- SORTING_PRIORITY; # New name for PRIORITY
- DEPENDENCIES; # Alias for DEPENDS
- AUTO_DEPEND_ON;
- TRANSLATIONS.

For both commands PRIORITY option now is depreceted. Please
use SORTING_PRIORITY instead.
2017-01-24 17:03:37 +03:00
Alexander Voitenko
3fc4a2b71a QtIFW: Added new options to QtIFW cpack generator for modifying wizard style 2017-01-17 14:12:02 +03:00
Daniel Pfeifer
d6877e6c40 Don't include CMakeParseArguments
The cmake_parse_arguments command is builtin with version 3.5.
The CMakeParseArguments module is empty and exists for backwards
compatibility with CMake 3.4 and lower.

Remove the includes of CMakeParseArguments from CMake's modules.
The modules are always used with the current version of CMake.

Leave the includes in the tests, as the tests may be run with an older
version of CMake.
2017-01-11 13:14:57 +01:00
Konstantin Podsvirov
88ecfd8ba1 CPackIFW: Add some options
New options is: DEFAULT, VIRTUAL, FORCED_INSTALLATION,
DISPLAY_NAME, DESCRIPTION and RELEASE_DATE.

Options added for both cpack_ifw_configure_component and
cpack_ifw_configure_component_group command.
2016-11-24 17:05:51 +03:00
Konstantin Podsvirov
20cc76c93a CPackIFW: Update search to find QtIFW distributed with QtSDK
Also avoid CMP0007 warnings.
2016-11-03 09:28:15 -04:00
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
Konstantin Podsvirov
b807cd9b54 CPackIFW: Add 'cpack_ifw_add_package_resources' command 2016-09-19 13:17:59 -04:00
Brad King
a327b20694 CPackIFW: Format documentation
Place command documentation in explicit markup blocks and remove
horizontal dividers.  Use definition lists and bullet lists as
appropriate.
2016-09-16 10:40:17 -04:00
Pierluigi Taddei
c2f0f41f63 CPackIFW: Add USER_INTERFACES option
Add to CPackIFW the capability of accepting a list of
USER_INTERFACES that are copied to the meta folder and
added to the component description.
2016-09-16 10:29:00 -04:00
Daniel Pfeifer
5d0d980d99 Use string(APPEND) in Modules
Automate with:

find Modules -type f -print0 | xargs -0 perl -i -0pe \
's/set\(([a-zA-Z0-9_]+)(\s+)"\$\{\1\}([^"])/string(APPEND \1\2"\3/g'
2016-07-28 00:41:13 +02:00
Konstantin Podsvirov
9e505285e3 CPackIFW: Using cpack_append_list_variable_set_command
This is necessary for proper processing of the list items.
2016-06-29 19:14:05 +03:00
Konstantin Podsvirov
06ca7795f4 CPackIFW: Command cpack_ifw_configure_component learned ESSENTIAL option 2016-05-23 19:09:03 +03:00
Konstantin Podsvirov
222fa595cd CPackIFW: Doc decoration 2016-05-23 19:09:03 +03:00