CMake/Help/module
Adriaan de Groot 2042cae9a5 CPack-FreeBSD: add a generator for FreeBSD pkg(8)
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.
2017-06-10 07:53:59 -04:00
..
AddFileDependencies.rst
AndroidTestUtilities.rst AndroidTestUtilities: Add module to help drive Android device tests 2016-09-30 13:49:47 -04:00
BundleUtilities.rst
CheckCCompilerFlag.rst
CheckCSourceCompiles.rst
CheckCSourceRuns.rst
CheckCXXCompilerFlag.rst
CheckCXXSourceCompiles.rst
CheckCXXSourceRuns.rst
CheckCXXSymbolExists.rst
CheckFortranCompilerFlag.rst CheckFortranCompilerFlag: Add module to check Fortran flag existence 2015-02-05 11:16:59 -05:00
CheckFortranFunctionExists.rst
CheckFortranSourceCompiles.rst Add CheckFortranSourceCompiles module (#14656) 2014-08-18 11:18:48 -04:00
CheckFunctionExists.rst
CheckIncludeFile.rst
CheckIncludeFileCXX.rst
CheckIncludeFiles.rst
CheckIPOSupported.rst CheckIPOSupported: New module to check for compiler/cmake IPO support 2017-03-11 19:46:25 +08:00
CheckLanguage.rst
CheckLibraryExists.rst
CheckPrototypeDefinition.rst
CheckStructHasMember.rst
CheckSymbolExists.rst
CheckTypeSize.rst
CheckVariableExists.rst
CMakeAddFortranSubdirectory.rst
CMakeBackwardCompatibilityCXX.rst
CMakeDependentOption.rst
CMakeDetermineVSServicePack.rst
CMakeExpandImportedTargets.rst
CMakeFindDependencyMacro.rst Split the find_dependency macro into a separate file. 2013-12-13 16:14:02 +01:00
CMakeFindFrameworks.rst
CMakeFindPackageMode.rst
CMakeForceCompiler.rst
CMakeGraphVizOptions.rst
CMakePackageConfigHelpers.rst
CMakeParseArguments.rst
CMakePrintHelpers.rst
CMakePrintSystemInformation.rst
CMakePushCheckState.rst
CMakeVerifyManifest.rst
CPack.rst
CPackArchive.rst CPack/Archive: per component filenames support 2017-05-17 00:47:15 +02:00
CPackBundle.rst
CPackComponent.rst
CPackCygwin.rst
CPackDeb.rst
CPackDMG.rst
CPackFreeBSD.rst CPack-FreeBSD: add a generator for FreeBSD pkg(8) 2017-06-10 07:53:59 -04:00
CPackIFW.rst CPack: Add an "IFW" generator for Qt Framework Installer 2014-07-28 10:24:03 -04:00
CPackIFWConfigureFile.rst Add cpack_ifw_configure_file command 2017-01-11 13:56:45 +03:00
CPackNSIS.rst
CPackPackageMaker.rst
CPackProductBuild.rst productbuild: Add new productbuild cpack generator. 2016-06-03 14:41:57 -06:00
CPackRPM.rst
CPackWIX.rst
CSharpUtilities.rst VS: add CSharpUtilities module 2017-03-01 15:31:05 -05:00
CTest.rst
CTestCoverageCollectGCOV.rst CTestCoverageCollectGCOV: Add module to run gcov 2015-01-22 11:15:54 -05:00
CTestScriptMode.rst
CTestUseLaunchers.rst
Dart.rst
DeployQt4.rst
Documentation.rst
ExternalData.rst
ExternalProject.rst
FeatureSummary.rst
FindALSA.rst
FindArmadillo.rst
FindASPELL.rst
FindAVIFile.rst
FindBacktrace.rst
FindBISON.rst
FindBLAS.rst
FindBoost.rst
FindBullet.rst
FindBZip2.rst
FindCABLE.rst
FindCoin3D.rst
FindCUDA.rst
FindCups.rst
FindCURL.rst
FindCurses.rst
FindCVS.rst
FindCxxTest.rst
FindCygwin.rst
FindDart.rst
FindDCMTK.rst
FindDevIL.rst
FindDoxygen.rst
FindEXPAT.rst
FindFLEX.rst
FindFLTK2.rst
FindFLTK.rst
FindFreetype.rst
FindGCCXML.rst
FindGDAL.rst
FindGettext.rst
FindGIF.rst
FindGit.rst
FindGLEW.rst
FindGLUT.rst
FindGnuplot.rst
FindGnuTLS.rst
FindGSL.rst FindGSL: Add module to find the GNU Scientific Library 2014-12-17 10:59:48 -05:00
FindGTest.rst
FindGTK2.rst
FindGTK.rst
FindHDF5.rst
FindHg.rst
FindHSPELL.rst
FindHTMLHelp.rst
FindIce.rst FindIce: New module to find ZeroC Ice 2014-08-21 14:45:01 +02:00
FindIcotool.rst
FindICU.rst FindICU: New module 2016-07-13 09:15:16 -04:00
FindImageMagick.rst
FindIntl.rst FindIntl: New module to find Gettext libintl 2014-11-11 13:02:16 -05:00
FindITK.rst FindITK: Drop this ancient compatibility module 2014-10-02 09:28:02 -04:00
FindJasper.rst
FindJava.rst
FindJNI.rst
FindJPEG.rst
FindKDE3.rst
FindKDE4.rst
FindLAPACK.rst
FindLATEX.rst
FindLibArchive.rst
FindLibLZMA.rst
FindLibXml2.rst
FindLibXslt.rst
FindLTTngUST.rst Add FindLTTngUST module to find LTTng-UST library 2016-03-07 11:46:49 -05:00
FindLua50.rst
FindLua51.rst
FindLua.rst
FindMatlab.rst
FindMFC.rst
FindMotif.rst
FindMPEG2.rst
FindMPEG.rst
FindMPI.rst
FindOpenAL.rst
FindOpenCL.rst Add FindOpenCL module 2014-02-26 08:53:00 -05:00
FindOpenGL.rst
FindOpenMP.rst
FindOpenSceneGraph.rst
FindOpenSSL.rst
FindOpenThreads.rst
Findosg_functions.rst
Findosg.rst
FindosgAnimation.rst
FindosgDB.rst
FindosgFX.rst
FindosgGA.rst
FindosgIntrospection.rst
FindosgManipulator.rst
FindosgParticle.rst
FindosgPresentation.rst
FindosgProducer.rst
FindosgQt.rst
FindosgShadow.rst
FindosgSim.rst
FindosgTerrain.rst
FindosgText.rst
FindosgUtil.rst
FindosgViewer.rst
FindosgVolume.rst
FindosgWidget.rst
FindPackageHandleStandardArgs.rst
FindPackageMessage.rst
FindPerl.rst
FindPerlLibs.rst
FindPHP4.rst
FindPhysFS.rst
FindPike.rst
FindPkgConfig.rst
FindPNG.rst
FindPostgreSQL.rst
FindProducer.rst
FindProtobuf.rst
FindPythonInterp.rst
FindPythonLibs.rst
FindQt3.rst
FindQt4.rst
FindQt.rst
FindQuickTime.rst
FindRTI.rst
FindRuby.rst
FindSDL_image.rst
FindSDL_mixer.rst
FindSDL_net.rst
FindSDL_sound.rst
FindSDL_ttf.rst
FindSDL.rst
FindSelfPackers.rst
FindSquish.rst
FindSubversion.rst
FindSWIG.rst
FindTCL.rst
FindTclsh.rst
FindTclStub.rst
FindThreads.rst
FindTIFF.rst
FindUnixCommands.rst
FindVTK.rst FindVTK: Drop this ancient compatibility module 2014-10-02 09:28:02 -04:00
FindVulkan.rst Add FindVulkan.cmake. 2016-06-08 12:44:03 -04:00
FindWget.rst
FindWish.rst
FindwxWidgets.rst
FindwxWindows.rst
FindX11.rst
FindXalanC.rst FindXalanC: New module to find the Apache Xalan-C++ library 2016-01-20 09:33:38 -05:00
FindXCTest.rst OS X: Add FindXCTest module 2015-03-23 09:12:19 -04:00
FindXercesC.rst Modules: Rename FindXerces to FindXercesC 2014-12-04 10:41:26 -05:00
FindXMLRPC.rst
FindZLIB.rst
FortranCInterface.rst
GenerateExportHeader.rst
GetPrerequisites.rst
GNUInstallDirs.rst
GoogleTest.rst GoogleTest: Add module to contain gtest_add_tests independently 2017-02-07 11:24:18 -05:00
InstallRequiredSystemLibraries.rst
MacroAddFileDependencies.rst
ProcessorCount.rst
SelectLibraryConfigurations.rst
SquishTestScript.rst
TestBigEndian.rst
TestCXXAcceptsFlag.rst
TestForANSIForScope.rst
TestForANSIStreamHeaders.rst
TestForSSTREAM.rst
TestForSTDNamespace.rst
Use_wxWindows.rst
UseEcos.rst
UseJava.rst
UseJavaClassFilelist.rst
UseJavaSymlinks.rst
UsePkgConfig.rst
UseSWIG.rst
UsewxWidgets.rst
WriteBasicConfigVersionFile.rst
WriteCompilerDetectionHeader.rst Add the WriteCompilerDetectionHeader module. 2014-05-14 13:57:30 -04:00