summaryrefslogtreecommitdiffstats
path: root/Source/CPack/cmCPackFreeBSDGenerator.cxx
Commit message (Collapse)AuthorAgeFilesLines
* Source code: Use cmExpandList instead of cmSystemTools::ExpandListArgumentSebastian Holtermann2019-08-141-6/+4
|
* tidy: Fix modernize-raw-string-literal in FreeBSD CPack generatorBrad King2019-04-051-1/+1
|
* Replace use of CollapseCombinedPath with CollapseFullPathBrad King2019-03-191-2/+1
| | | | | | | | | | | `CollapseCombinedPath` was introduced by commit 551d3343cd (cmDependsC: Collapse relative include paths, 2013-06-19, v2.8.12~237^2) where the existing `CollapseFullPath` should have been used instead. Then its use proliferated slightly. Since `CollapseCombinedPath` is less widely used and less robust (see issue #19049), use `CollapseFullPath` everywhere instead. Issue: #19050
* clang-tidy: Use `= default`Regina Pfeifer2019-01-251-4/+2
| | | | | | Suppress some cases in `Source/cmGeneratorExpressionNode.cxx` and `Source/cmUVHandlePtr.h` where a few older compilers require a user-defined default constructor (with `{}`).
* clang-tidy: Pass by valueRegina Pfeifer2019-01-221-4/+5
|
* clang-tidy: Simplify boolean expressionsRegina Pfeifer2019-01-151-7/+2
|
* cmCPackFreeBSDGenerator: fix clang-tidy issuesRegina Pfeifer2018-12-061-26/+19
| | | | | | Install FreeBSD's libpkg on Linux and configure CMake with CPACK_ENABLE_FREEBSD_PKG and CMake_RUN_IWYU set to ON. Then, fix all warnings.
* CPack: Move internal implementation modules into Internal/CPack directoryKyle Edwards2018-06-211-1/+1
| | | | | | | | | | | | | | | 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.
* Use C++11 override instead of CM_OVERRIDEBrad King2017-09-151-3/+3
| | | | | | | | We now require C++11 support including `override`. Drop use of the old compatibility macro. Convert references as follows: git grep -l CM_OVERRIDE -- '*.h' '*.hxx' '*.cxx' | xargs sed -i 's/CM_OVERRIDE/override/g'
* CPack-FreeBSD: add a generator for FreeBSD pkg(8)Adriaan de Groot2017-06-101-0/+359
Adds an option CPACK_ENABLE_FREEBSD_PKG to allow CPack to look for FreeBSD's libpkg / pkg(8). If this is set and the libpkg headers and library are found (which they will be, by default, on any FreeBSD system), then add a FreeBSD pkg(8) generator. The FreeBSD package tool pkg(8) uses tar.xz files (.txz) with two metadata files embedded (+MANIFEST and +COMPACT_MANIFEST). This introduces a bunch of FreeBSD-specific CPACK_FREEBSD_PACKAGE_* variables for filling in the metadata; the Debian generator does something similar. Documentation for the CPack CMake-script is styled after the Debian generator. Implementation notes: - Checks for libpkg -- the underlying implementation for pkg(8) -- and includes FreeBSD package-generation if building CMake on a UNIX host. Since libpkg can be used on BSDs, Linux and OSX, this potentially adds one more packaging format. In practice, this will only happen on FreeBSD and DragonflyBSD. - Copy-paste from cmCPackArchiveGenerator to special-case the metadata generation and to run around the internal archive generation: use libpkg instead. - Generating the metadata files is a little contrived. - Most of the validation logic for package settings is in CPackFreeBSD.cmake, as well as the code that tries to re-use packaging settings that may already be set up for Debian. - libpkg has its own notion of output filename, so we have another contrived bit of code that munges the output file list so that CPack can find the output. - Stick with C++98.