Commit Graph

624 Commits

Author SHA1 Message Date
Ben Boeckel 191f25e2bd stringapi: Prevent a NULL dereference in WiX 2014-03-08 13:05:40 -05:00
Ben Boeckel b3bf31a548 stringapi: Miscellaneous char* parameters 2014-03-08 13:05:37 -05:00
Ben Boeckel 2b17626e9b stringapi: Pass strings as install directories in CPack 2014-03-08 13:05:37 -05:00
Ben Boeckel 84fdc9921c stringapi: Pass configuration names as strings 2014-03-08 13:05:36 -05:00
Ben Boeckel 270eb96df0 strings: Remove cmStdString references
Casts from std::string -> cmStdString were high on the list of things
taking up time. Avoid such implicit casts across function calls by just
using std::string everywhere.

The comment that the symbol name is too long is no longer relevant since
modern debuggers alias the templates anyways and the size is a
non-issue since the underlying methods are generated since it's
inherited.
2014-03-08 13:05:35 -05:00
Ben Boeckel 473ca1ac4a stringapi: Use string for OS X resource names 2014-03-08 13:05:32 -05:00
Ben Boeckel 9f48d3bac2 stringapi: Use strings in CPack generator parameters
Most of these are turned into strings in the body of the method
(multiple times in some cases). Accept strings to simplify the API and
keep string construction down.
2014-03-08 13:05:30 -05:00
Ben Boeckel 3742bb0d32 stringapi: Use strings for variable names
Variable names are always generated by CMake and should never be NULL.
2014-03-08 13:05:28 -05:00
Nils Gladitz 642fa25da0 CPackWIX: support installation of empty directories 2014-03-02 00:51:42 +01:00
Nils Gladitz 378eb5b712 CPackWIX: Allow Windows Installer property customization 2014-03-01 23:13:35 +01:00
Nils Gladitz 6fcd835c07 CPackWIX: refactor and cleanup
Extract addtional classes and functions which are getting unsightly large.
Use some of the coding conventions more consistently.
2014-02-26 14:15:13 +01:00
Timo Rothenpieler b78d74de64 CPackWiX: Add support for CPACK_CREATE_DESKTOP_LINKS 2014-02-08 19:19:33 +01:00
Nils Gladitz 92c4d4039e CPackWiX: added new CPACK_WIX_CMAKE_PACKAGE_REGISTRY variable
Allows automatic registration of installed packages with
the cmake package registry.
2014-01-08 01:28:24 +01:00
Brad King 3a024ce0d8 Merge topic 'unicode-fstream'
5730710 Use cmsys::[io]fstream instead of cmsys_ios::[io]fstream.
2014-01-07 09:39:17 -05:00
Clinton Stimpson 5730710c86 Use cmsys::[io]fstream instead of cmsys_ios::[io]fstream.
Also use SystemTools::Fopen() instead of fopen().
This is to eventually support utf-8 filenames.
2014-01-07 09:27:44 -05:00
Clinton Stimpson a1e542f195 Use Encoding::CommandLineArguments for main() functions. 2014-01-04 10:43:12 -07:00
Brad King 81311c670e Merge topic 'wix-rtf-encoding'
950d76e CPackWiX: allow and convert UTF-8 sequences in RTF writer
2014-01-02 14:24:25 -05:00
Nils Gladitz 950d76ed48 CPackWiX: allow and convert UTF-8 sequences in RTF writer 2013-12-26 15:23:54 +01:00
Nils Gladitz 44a7543c53 CPackWiX: transfer file read only flag during installation 2013-12-26 00:14:44 +01:00
Brad King b5ef7fd47e Merge topic 'wix-cmake-coding-conventions'
37a1157 CPackWiX: adhere to CMake member naming convention
2013-12-23 10:19:29 -05:00
Nils Gladitz 37a1157aa9 CPackWiX: adhere to CMake member naming convention 2013-12-20 18:12:01 +01:00
Nils Gladitz 7eea71ea57 CPackWiX: replace slash with backslash in registry key path
Forward slash is not understood as a key path separator.
2013-12-20 12:01:28 +01:00
Nils Gladitz 8632233a2f CPackWiX: allow customization of generated WiX sources
Added a new variable CPACK_WIX_PATCH_FILE that users can point at an
XML patch file. Fragments defined within the patch file will be inserted
at supported insertion points (currently Component, File and Directory).
2013-12-17 14:14:42 +01:00
Clinton Stimpson 0b9906c2fb Windows: Use wide-character system APIs
Make CMake compile with -DUNICODE.  Make it possible for the 8 bit
encoding to eventually be UTF-8 instead ANSI.
2013-12-09 10:29:43 -05:00
Brad King ed1de30da0 Merge topic 'wix-components'
7b390f7 CPackWiX: add CPack component support
2013-12-02 12:07:24 -05:00
Nils Gladitz 7b390f75e8 CPackWiX: add CPack component support
Creates a hierarchy of WiX features from CPack components and component groups.
Switch to the FeatureTree UI in case components have been defined.
Handles the component REQUIRE and HIDDEN options
and the component group EXPANDED option.
2013-11-26 22:15:57 +01:00
Nils Gladitz 5bc64440e1 CPack: use IsOn instead of IsSet for boolean CPack options
The CPackComponent macros specifically set CPack options to FALSE
which CPack previously interpreted to mean "true".
2013-11-19 23:52:39 +01:00
Brad King 8904d1410b cmGlobalGenerator: Cleanup GenerateBuildCommand API
All cmGlobalGenerator::GenerateBuildCommand call sites that need to
produce a string now generate "cmake --build" commands.  The remaining
call sites immediately pass the result to cmSystemTools::RunSingleCommand.
Avoid the intermediate string and argument parsing by directly producing a
vector of strings.  Also drop the ignoreErrors argument because no call
sites remain that use it.
2013-11-18 08:26:21 -05:00
Brad King 3822f5bcac Merge topic 'wix-custom-arguments'
096591b CPackWiX: Add variables for custom tool extensions and flags
2013-11-13 09:56:30 -05:00
Nils Gladitz 096591b96a CPackWiX: Add variables for custom tool extensions and flags 2013-11-12 14:10:01 -05:00
Brad King d1526f825e Refactor internal resource location APIs and initialization
Rename cmSystemTools::FindExecutableDirectory to FindCMakeResources.
Teach it to compute the locations of cmake, ctest, cpack, ccmake, and
cmake-gui executables, and the location of CMAKE_ROOT.  Provide this
information from static cmSystemTools::Get<resource>() methods.
Refactor code that needs these locations to use the new APIs.

Teach FindCMakeResources to use the OS X system API to lookup the
executable location.  When running from the CMake build tree itself,
leave a file in the tree that FindCMakeResources can use to read the
location of the source tree.  This avoids the need to compile the source
tree location into a binary that may be installed and used without the
source tree.

Teach the QtDialog on OS X to create a "cmake-gui" symlink in the build
tree next to "cmake" and the other tools, as is already done in the
install tree for the application bundle.  This ensures a consistent set
of executables are available in one directory.
2013-11-12 08:23:35 -05:00
Clinton Stimpson 53d6ebb360 cpack: For DragNDrop generator, add sysroot option when calling Rez. 2013-11-01 05:31:07 -06:00
Clinton Stimpson 193029c4aa cpack: For DragNDrop generator, add sysroot option when calling Rez.
Also adding overwrite option (-ov) in case multiple temporary
dmg files are being created.

Fixes bug #14536.
2013-10-31 20:25:12 -06:00
Nils Gladitz fe7f8c99a4 CPackWiX: use safe IDs for generated start menu shortcuts 2013-10-26 10:15:19 -04:00
Brad King 765d783972 cmSystemTools: Drop old RunCommand method
All calls to this method have been replaced by newer infrastructure.
Remove it and the supporting cmWin32ProcessExecution class.
2013-10-19 07:25:43 -04:00
Brad King 9b212ad01a Make --help-* options available from all command-line tools
Make the standard --help-* options available from all command-line
tools.  Drop options that are no longer supported:

  --copyright, --help-full, --help-html, --help-man,
  --help-compatcommands, --help-custom-modules

De-duplicate Help/manual/*.1.rst help options by using an
OPTIONS_HELP.txt file included from each manual.
2013-10-16 16:24:51 -04:00
Brad King 0c39a757da Drop the 'Full' field from cmDocumentationEntry
We need only 'Brief' for usage documentation.  We no longer have builtin
'Full' documentation, which is now in Help/*/*.rst files.
2013-10-16 09:22:37 -04:00
Brad King 399e9c46d8 Drop builtin property documentation
Drop all DefineProperty calls for non-chained properties.  Drop the
documentation from the chained ones.  The documentation for all
properties is now in Help/prop_*/*.rst files.
2013-10-16 09:22:36 -04:00
Brad King 87cc62cab9 Drop "full" documentation output types
We will no longer support full documentation generation from executables
and will instead generate documentation with other tools.  Disable (with
a warning left behind) the command-line options:

 --copyright
 --help-compatcommands
 --help-full
 --help-html
 --help-man

Drop supporting code.  Drop manual sections generation from executables.
Remove internal documentation construction APIs.  Drop unused sections
See Also, Author, Copyright, Compat Commands, Custom Modules.
2013-10-15 14:12:49 -04:00
Brad King 0d0fec1524 Drop CPack module documentation markup extraction
This will be replaced by alternative markup later.
2013-10-15 10:47:39 -04:00
Brad King 69fd12583c Merge topic 'wix-extra-sources'
2e6cadd CPackWiX: allow user supplied extra sources, objects and libraries
2013-10-15 09:33:22 -04:00
Nils Gladitz 2e6cadde13 CPackWiX: allow user supplied extra sources, objects and libraries 2013-10-13 13:16:54 +02:00
Nils Gladitz 3a4a74828c CPackWiX: generate deterministic ids for directories, components and files 2013-10-12 10:41:05 +02:00
Adrien Destugues 1dc61f8142 Haiku: Remove use of B_COMMON_DIRECTORY
The common directory was removed in Haiku. Applications are now
installed in the system directory.

Applied-by: Rolf Eike Beer <eike@sf-mail.de>
2013-10-08 09:55:38 -04:00
Eric NOULARD e507bf28c2 CPack: Fix clang -Wdocumentation warnings 2013-09-24 14:29:24 +02:00
Yury G. Kudryashov 807a564e7a CPack: Fix a typo in documentation 2013-08-15 13:11:57 -04:00
Brad King 29859c09af Merge topic 'cpack-wix'
bf23891 CPackWIX: Add support for custom WiX templates
155bb01 CMakeCPack: Provide an upgrade guid for WiX
bfa2e29 CPackWIX: Add option to specify the language(s) of the installer
6e51ea9 CPackWIX: Handle multiple shortcuts in the start menu
6d77e1a CPackWIX: Fix MSI package layout regression from parent
8c0e325 CPackWIX: Handle CPACK_PACKAGE_EXECUTABLES (#13967)
2013-07-22 09:48:32 -04:00
Adam J. Weigold bf23891942 CPackWIX: Add support for custom WiX templates
WiX provides a lot of functionality for installers that cannot be
supported (easily) in the default WIX.template.in file.

For most users, the default template should be fine.  However if users
want to produce merge modules, include custom actions, etc, this new
option allows for a hook into how the wxs is produced.
2013-07-19 14:50:43 -04:00
Richard Ulrich bfa2e299ae CPackWIX: Add option to specify the language(s) of the installer
Add option "CPACK_WIX_CULTURES".
2013-07-19 14:50:43 -04:00
Richard Ulrich 6e51ea9870 CPackWIX: Handle multiple shortcuts in the start menu 2013-07-19 14:50:42 -04:00
Ian Monroe 6d77e1ab3f CPackWIX: Fix MSI package layout regression from parent
The parent commit added a regression where if the install directory had:

  parent
    child A
    child B

the produced MSI would install:

  parent
    child A
       child B
2013-07-19 10:49:20 -04:00
Fredrik Axelsson 8c0e32550c CPackWIX: Handle CPACK_PACKAGE_EXECUTABLES (#13967)
Add start menu items including an uninstall shortcut.  Add variable
CPACK_WIX_PROGRAM_MENU_FOLDER to configure folder name.
2013-07-19 10:49:00 -04:00
Brad King 0dc0e7d885 Merge topic 'doc-improvements'
7cc2805 Docs: Clarify wording "flag used" => "flag (to|will) be used"
2378a69 Docs: Clarify that CMAKE_*_(PREFIX|SUFFIX) affect filenames
56ca34d Docs: Update description of CMAKE_(BUILD_TYPE|CONFIGURATION_TYPES)
2bab472 VS10: add detailed comment about MIDL processing
e619111 Explain distribution of Win9x binary on all Windows versions.
5ca4336 FindwxWidgets: add DOC strings with usual style
f57800d Fix spelling and typos (product names)
bf019d7 Fix spelling and typos (non-binary)
ddac8d3 Fix spelling and typos (affecting binary data / module messages)
86832ce Fix spelling and typos (affecting users)
2013-05-16 14:38:07 -04:00
Andreas Mohr ddac8d3d2d Fix spelling and typos (affecting binary data / module messages) 2013-05-07 08:39:19 -04:00
Petr Kmoch de8be9ef7d Add projectDir parameter to GenerateBuildCommand
Extend the cmGlobalGenerator::GenerateBuildCommand virtual method
signature with a "projectDir" parameter specifying the top of the
project build tree for which the build command will be generated.
Populate it from call sites in cmGlobalGenerator::Build where a
fully-generated build tree should be available.
2013-04-12 11:35:35 -04:00
Paul Kunysch 0fca154344 CPack: Avoid "format expects 'unsigned int'" warnings
Cast sprintf uid and gid arguments to match the type expected by their
"%-6u" format strings.
2013-03-22 08:53:58 -04:00
Gerald Hofmann 794789047d CPack: Fix NSIS version check without release version (#9721)
Only check a release version for the minimum required version.  If NSIS
returns a CVS build version string (as when built by Macports), skip the
version check altogether and assume a sufficiently new version.  Also
correctly handle the case where the version check fails and the
CPACK_TOPLEVEL_DIRECTORY option is not set.

Co-Author: Graham Menhennitt <graham@menhennitt.com.au>
2013-03-08 08:17:05 -05:00
Brad King a943b5c4f3 Fail early if no current working directory exists
Remove the old "nocwd" behavior that attempts to provide the "--help"
output when no working directory is available.  The long help output
scrolls the real error message out of typical terminal sizes.  Also
execute as little code as possible when no working directory exists.
2013-02-07 08:53:50 -05:00
Rolf Eike Beer 7a1b961de8 Haiku no longer defines __BEOS__ 2013-01-07 21:20:11 +01:00
Eric LaFranchi 3793dca08a CPack: WIX Product Icon, UI Banner, UI Dialog support (#13789) 2012-12-28 15:32:15 -05:00
David Cole a74bd470a4 CPack: Fix dashboard errors and warnings (#11575)
...revealed by the Nightly dashboard runs last night.

Use "size_t" instead of "std::size_t" so that it compiles with
Visual Studio 6, too.

Fix warnings about shadowed "tmp" local variable and ordering of
member variables vs. lines of code in the constructor initializer
list.
2012-12-04 14:37:41 -05:00
David Cole ad0f73573f CPack: Fix dashboard warnings (#11575)
Fix int vs. size_t conversion warnings that only showed up in
the 64-bit builds.
2012-12-03 13:35:29 -05:00
David Cole 0729ad476c CPack: Fix dashboard errors (#11575)
Use same technique here with UuidToString as already found in
cmGlobalVisualStudio7Generator::CreateGUID to avoid using a type
that is not defined on older systems... (VS 7.0 and Borland)
2012-12-03 13:16:35 -05:00
Nils Gladitz 85baac1503 CPack: Add a WiX Generator (#11575)
This new CPack generator produces an *.msi installer file.
Requires having the WiX Toolset installed in order to work
properly.

Download the WiX Toolset installer "WiX36.exe" here:

  http://wix.codeplex.com/releases/view/93929
2012-12-03 11:00:31 -05:00
Brad King 4046fc0104 Merge topic 'use-cmsys-auto_ptr'
ddc0520 Always use the auto_ptr from cmsys.
2012-11-27 13:34:25 -05:00
Stephen Kelly ddc052052b Always use the auto_ptr from cmsys.
This is for consistency throughout cmake. The cmsys version exists
becaues uses of auto_ptr types as return types does not work with
some implementations in ancient compilers.
2012-11-21 00:56:36 +01:00
David Golub 6ff730a498 CPack/NSIS: Add support for 64-bit NSIS (#13203) 2012-11-19 20:08:31 -05:00
Brad King 7cdc95ac36 Merge topic 'CPack-BugFixesSet'
b6f7881 Remove seemingly bogus duplicate CPACK_PACKAGE_FILE_NAME call.
2012-11-13 14:32:09 -05:00
Andreas Mohr b6f7881962 Remove seemingly bogus duplicate CPACK_PACKAGE_FILE_NAME call.
Signed-off-by: Eric NOULARD <eric.noulard@gmail.com>
2012-11-11 21:54:35 +01:00
Andreas Mohr 572d9e1e05 Correct string literal typo (have "(NULL)" like all other cases).
Signed-off-by: Eric NOULARD <eric.noulard@gmail.com>
2012-11-10 15:49:05 +01:00
Brad King a0074b64fc Merge topic 'deb-rpm-all_components_in_one'
e7e2694 CPack: Fix RPM/Deb package names to not include "ALL_COMPONENTS_IN_ONE"
2012-11-06 14:13:44 -05:00
Clinton Stimpson e7e2694823 CPack: Fix RPM/Deb package names to not include "ALL_COMPONENTS_IN_ONE" 2012-11-06 11:50:07 -05:00
David Cole e2006ce5a9 Merge topic 'packagemaker-component-postflight'
4374441 PackageMaker: Enable postflight script in component mode (#12375)
2012-10-31 16:35:05 -04:00
David Cole bd394d42e6 Merge topic 'cpack-rez-error'
14561e3 Fix for possible Rez errors when creating dmg.
2012-10-31 16:33:56 -04:00
David Cole 72632f885c Merge topic 'fix-9629-add-unicode-nsis-reg-key'
668dda0 CPack: Add automatic detection of the Unicode makensis (#9629)
2012-10-31 16:33:27 -04:00
Clinton Stimpson 4374441f3f PackageMaker: Enable postflight script in component mode (#12375)
Previously, setting CPACK_POSTFLIGHT_SCRIPT had no effect in
component mode, when CPACK_COMPONENTS_ALL was set.

In component mode, a .mpkg is created that contains multiple .pkg's.
Because postflight scripts only work in a .pkg, add another .pkg to the
.mpkg and put the postflight script in that.
This is the same approach taken by the PackageMaker GUI when adding
a postflight script to a metapackage.
2012-10-31 16:23:48 -04:00
Clinton Stimpson 14561e3d35 Fix for possible Rez errors when creating dmg.
Rez appears to have a limit on the length of lines it processes.
Break up long lines from a license file to avoid the error.
2012-10-22 23:06:16 -06:00
David Cole 7ff422fb8e Merge topic 'CPack-ArchiveGen-andDESTIR_ON'
ddec053 Make CPACK_SET_DESTDIR work with archive generator + component-based packaging
2012-10-17 16:44:06 -04:00
David Cole 5ca2c49173 Merge topic 'fix-some-CPackDoc-typos'
2aad678 Document CPACK_COMPONENT_INCLUDE_TOPLEVEL_DIRECTORY and fix some typo.
2012-10-17 16:43:53 -04:00
David Cole 668dda034f CPack: Add automatic detection of the Unicode makensis (#9629) 2012-10-17 13:45:18 -04:00
Eric NOULARD ddec053321 Make CPACK_SET_DESTDIR work with archive generator + component-based packaging
Fix bug #13004. The patch is from Stanislaw Szymczyk.
2012-10-14 18:50:57 +02:00
Eric NOULARD 2aad678f23 Document CPACK_COMPONENT_INCLUDE_TOPLEVEL_DIRECTORY and fix some typo. 2012-10-14 14:58:19 +02:00
Eric NOULARD 561b4baead CPACK_XX_ON_ABSOLUTE_INSTALL_DESTINATION is now properly checked for ON/OFF
This fixes bug #0013490
2012-10-14 14:36:14 +02:00
Eric NOULARD d593cef58f Enhance DESTDIR documentation. Fixes #0012374. 2012-08-14 20:15:22 +02:00
Kitware Robot 7bbaa4283d Remove trailing whitespace from most CMake and C/C++ code
Our Git commit hooks disallow modification or addition of lines with
trailing whitespace.  Wipe out all remnants of trailing whitespace
everywhere except third-party code.

Run the following shell code:

git ls-files -z -- \
 bootstrap doxygen.config '*.readme' \
 '*.c' '*.cmake' '*.cpp' '*.cxx' \
 '*.el' '*.f' '*.f90' '*.h' '*.in' '*.in.l' '*.java' \
 '*.mm' '*.pike' '*.py' '*.txt' '*.vim' |
egrep -z -v '^(Utilities/cm|Source/(kwsys|CursesDialog/form)/)' |
egrep -z -v '^(Modules/CPack\..*\.in)' |
xargs -0 sed -i 's/ \+$//'
2012-08-13 14:18:39 -04:00
David Cole c1bbdbff57 Merge topic 'DoNotInvokeCPackAtCMakeTime-forCMakeTests'
b47cffa CPack: Use bin subdir when looking for dpkg and rpmbuild
a8c659c Find dpkg and rpmbuild in usual Fink and MacPort paths
848f220 Do not run cpack at CMake time it is not available.
2012-07-24 17:03:37 -04:00
David Cole b47cffa9b8 CPack: Use bin subdir when looking for dpkg and rpmbuild 2012-07-20 11:53:56 -04:00
David Cole b636728e39 Merge topic 'CPack-honorCPACK_XXX-valuesInScriptFile'
05a8630 Do not provide defaul value for CPACK_PACKAGE_DIRECTORY if found in config.
2012-07-09 14:23:28 -04:00
Eric NOULARD 05a8630ee6 Do not provide defaul value for CPACK_PACKAGE_DIRECTORY if found in config.
This fixes bug #0012906.
2012-07-04 23:08:32 +02:00
Eric NOULARD 926d634d3e CPack fix regression between 2.8.7 and 2.8.8 when running cpack with no arg.
In 2.8.7 running cpack with no arguments would run the packaging iff
a CPackConfig.cmake file is found whereas
In 2.8.8 it displays the help.
This commit restore the 2.8.7.
We should add a test for this but this is not included in this commit.
2012-07-03 15:28:07 +02:00
Eric NOULARD a8c659cd6e Find dpkg and rpmbuild in usual Fink and MacPort paths 2012-07-02 19:49:07 +02:00
Fraser Hutchison cfc11f9bff CPack: Fixed incorrect error log for CPACK_NSIS_MENU_LINKS.
This was a pull request: https://github.com/Kitware/CMake/pull/5

Signed-off-by: Eric NOULARD <eric.noulard@gmail.com>
2012-05-28 17:15:29 +02:00
David Cole 3e23da0688 Merge topic 'CPack-activateRPM-DEB-onMacOS'
801ea70 Calm down Borland compiler warning about "always true"
2a34b57 CPack allow RPM and DEB generator to be used on OSX.
2012-05-24 13:38:13 -04:00
David Cole db1857e142 Merge topic 'CPackNSIS-warnDESTDIRandABSOLUTE'
4986d52 Use CPACK_xxx and CMAKE_xxx in a consistent way.
f90223c Fix KWStyle warning
47f0dbd CPack add necessary check to detect/warns/error on ABSOLUTE DESTINATION
6ba055b CPack add easy possibility to warn about CPACK_SET_DESTDIR
2012-05-24 13:38:03 -04:00
Eric NOULARD 801ea70c08 Calm down Borland compiler warning about "always true" 2012-05-21 14:39:18 +02:00
Eric NOULARD 2a34b57938 CPack allow RPM and DEB generator to be used on OSX.
More generally add the check for possible generator "activation" at
runtime depending on a generator specific check.
The dynamic behavior is currently implemented only for MacOS
and should be fully backward compatible for other system.

Inspired-By Tom Hughes <tomtheengineer@gmail.com>
2012-05-20 22:04:32 +02:00
Eric NOULARD 4986d525af Use CPACK_xxx and CMAKE_xxx in a consistent way.
CMAKE_xxx vars are now used in the CMake-generated cmake_install.cmake
script while CPACK_xxx equivalent vars are used from within CPack.
CPack is responsible for getting/forwarding definitions of
CPACK_xxxx var corresponding to CMAKE_xxxx when invoking
CMake-generated install scripts.
As a consequence:
CMAKE_ABSOLUTE_DESTINATION_FILES
CMAKE_WARN_ON_ABSOLUTE_INSTALL_DESTINATION
CMAKE_ERROR_ON_ABSOLUTE_INSTALL_DESTINATION
may be used from outside CPack as well.
e.g.
cmake -DCMAKE_ERROR_ON_ABSOLUTE_INSTALL_DESTINATION=1 -P cmake_install.cmake
works as expected.
2012-05-20 17:28:54 +02:00
Eric NOULARD 47f0dbd70b CPack add necessary check to detect/warns/error on ABSOLUTE DESTINATION
The [usually] wrong usage of absolute DESTINATION in INSTALL rules
keeps popping-up on the ML. We shall have some way to:
  1) easily detect it.
  2) forbids this for some CPack generator like NSIS
In fact it should certainly be forbidden for *any* generators
when used on Windows but we may implements that on top of the current
patch.
The patch ask the task to the generated cmake_install.cmake scripts.
Those scripts are a little bit more complicated with that but
iff there are absolute DESTINATION. This cost nothing if relative
DESTINATION are used.
Two new vars are introduced (and documented to handle that):
CPACK_WARN_ON_ABSOLUTE_INSTALL_DESTINATION
and
CPACK_ERROR_ON_ABSOLUTE_INSTALL_DESTINATION
2012-05-14 23:29:42 +02:00
Eric NOULARD 6ba055bacd CPack add easy possibility to warn about CPACK_SET_DESTDIR
CPackNSIS will only warn but sooner or later it should error out
2012-05-14 20:26:15 +02:00
Eric NOULARD 3d10f65e39 CPack - preserve timestamp for CPACK_INSTALLED_DIRECTORIES. fixes: #0013193 2012-05-09 18:02:13 +02:00
Eric NOULARD abc9b32375 Use fakeroot for control.tar.gz as well 2012-04-17 09:22:07 +02:00
Brad King 0e339f7054 Merge topic 'CPack-fixCPACK_MONOLITHIC_INSTALL-handling'
805c1b2 Handle CPACK_MONOLITHIC_INSTALL in some rare use cases.
2012-03-19 14:42:00 -04:00
Brad King 1df15c68d5 Merge topic 'CPack-fixSTGZpermission-bug13046'
4576f40 CPack STGZ put execute permission on all packages files (component case)
2012-03-19 14:41:56 -04:00
Brad King bfc8d137c5 Merge topic 'fix-12621-xcode43'
0f4dfa6 CPack: Use real path to PackageMaker to find its version file (#12621)
4693cf8 Xcode: Detect new default locations of Xcode 4.3 bits and pieces (#12621)
2012-03-19 14:41:43 -04:00
Eric NOULARD 805c1b21d6 Handle CPACK_MONOLITHIC_INSTALL in some rare use cases.
For example, when CPACK_<GEN>_COMPONENT_INSTALL and
CPACK_MONOLITHIC_INSTALL are both set. Previously, this
combination of variable settings produced an error without
any explanation. Now, in this case CPACK_MONOLITHIC_INSTALL wins
without trouble.
This is useful for when e.g. CPACK_ARCHIVE_COMPONENT_INSTALL is
globally on and one wants MONOLITHIC install for STGZ (but not
other generators). The same behavior may be obtained by re-setting
CPACK_ARCHIVE_COMPONENT_INSTALL to 0 but in any case the
'both set' case should have been handled without error.
2012-03-18 20:21:35 +01:00
Eric NOULARD 4576f40ee0 CPack STGZ put execute permission on all packages files (component case) 2012-03-18 17:52:56 +01:00
David Cole 0f4dfa6960 CPack: Use real path to PackageMaker to find its version file (#12621)
On machines where a usr/bin/packagemaker symlink is found, we were
unable to find the version.plist file relative to the symlink.
Resolve the symlink first, so we can find it relative to the
real PackageMaker.
2012-03-13 14:01:19 -04:00
David Cole 05a76d53c0 CPack: Fix retry logic when calls to hdiutil fail
The long-standing sporadic failures of CPack tests on the Mac dashboards
are caused by an occasional problem running hdiutil. To compensate for
this, a retry loop was added in the code in a previous commit: a9fa71a4
... but the logic for breaking out of the retry loop was flawed, breaking
out of the loop (and not retrying) when the hdiutil command returns an
error instead of when it returns success.

This commit fixes the flawed logic, bumps up the number of retries from
4 to 10, and adds a half-second delay in between retries.

The delay is specifically added in case a virus checker or spotlight indexer
is temporarily causing the hdiutil failure by hanging onto a newly created
file longer than hdiutil expects it to.

As with all sporadically occurring issues, we'll never know if this is
really fixed all the way. But I'll be happy even if we can only get it to
happen just a bit less often.
2012-03-09 11:39:01 -05:00
David Cole 4693cf8492 Xcode: Detect new default locations of Xcode 4.3 bits and pieces (#12621)
Xcode 4.3 installs into "/Applications" by default, from the Mac App Store.

Also, the paths to the available SDKs changed: they are now within the
Xcode.app bundle.

PackageMaker is installed as a separate program, and may be installed
anywhere. It is not installed with Xcode 4.3 by default anymore.
Download the "Auxiliary Tools for Xcode" to get PackageMaker.
Put PackageMaker inside the Xcode.app bundle, in its nested Applications
folder, or put it alongside Xcode in "/Applications" and CMake will find
it.

Update references to "find" paths: add new possible locations for finding
Xcode.app and PackageMaker.app. Prefer the most recent version's locations
first, but keep the old locations as fallback search paths, too.

Thanks to all the contributors who provided and tested out various patches
for fixing this issue. Especially, but by no means limited to:
Francisco Requena Espí, Jamie Kirkpatrick and drfrogsplat.
2012-03-08 22:43:19 -05:00
Eric NOULARD b0cb29bb06 Fix some typos in CPACK_SET_DESTDIR doc 2012-03-06 21:23:11 +01:00
David Cole af87e8abb0 Merge topic 'dragndrop-sla'
5663e43 DragNDrop: Fix problem with relocated files in Xcode 4.3
2012-03-02 11:48:55 -05:00
Clinton Stimpson 5663e436ab DragNDrop: Fix problem with relocated files in Xcode 4.3
Remove dependency on /Developer/Headers/FlatCarbon when creating SLAs for DMG images.
Instead, of adding those .r files on the command line, include the necessary .r files
from the generated .r file.
2012-02-29 08:29:46 -07:00
Eric NOULARD 94a269304e Review and update CPack variable documentation.
This concerns all variables common to all CPack generators.
Variables mainly used and/or set in CPack.cmake are documented
therein. C++ built-in variables are documented in
cmCPackDocumentVariables.cxx.
2012-02-25 23:07:07 +01:00
Eric NOULARD a6bce55aef Dynamically add documentation section specified in documented script.
Modify CPackDeb and CPackRPM as an example
2012-02-18 22:07:39 +01:00
David Cole 4f9c114dfa Merge topic 'ImproveCPackDoc-reloaded'
d4b77eb Avoid discovering system infos for documentation. Adding some path is enough.
9002f73 Fix non existent std::string::clear on VS6
02ccb32 Create getDocumentedModulesListInDir which may be used in other context.
24fbc28 Add missing section markup for CPackComponent
bafd8a9 Example of builtin variable documentation (i.e. only used in C++ source code).
543f1ad Make the load of script documentation more efficient and dynamic.
cdbd1a9 Fix another compiler warning due to a typo
52c53de Really avoid compiler warning about unused vars
37f90ed Calm down compiler warning about unused var
7c82b7f Fix potential bad memory access, thanks to Eike
62b589b Suppress unused var, beautify code, avoid 1 extra newline.
751713f Update bash completion file in order to handle new CPack doc options.
1629615 CPack Documentation extraction from CMake script begins to work
83e34dd Implement simple CMake script comment markup language.
c6a0169 CPack begin the implementation of --help-command* and --help-variables*
2012-02-14 16:14:56 -05:00
David Cole 4f81c709d1 Merge topic 'CPackNSIS-fixIgnore-INCLUDE_TOPLEVEL'
6a74eb1 CPackNSIS fix #0012935 switch from LOG_WARNING to avoid final error.
2012-02-14 16:14:45 -05:00
Eric NOULARD d4b77eba17 Avoid discovering system infos for documentation. Adding some path is enough. 2012-02-14 16:05:24 -05:00
Eric NOULARD 02ccb3291b Create getDocumentedModulesListInDir which may be used in other context.
This should makes it easier to use the same "documented module"
techniques for CTest, CMake or user module.
2012-02-14 16:05:23 -05:00
Eric NOULARD bafd8a9e79 Example of builtin variable documentation (i.e. only used in C++ source code). 2012-02-14 16:05:23 -05:00
Eric NOULARD 543f1adfa4 Make the load of script documentation more efficient and dynamic.
CPack help will be searched in any CPack*.cmake file located
near to CPack.cmake file. The script files is parsed iff
the first line begin with ##section. Moreover the documentation
section name is specified on the remaining part of the line
minus the space immediately following ##section.
2012-02-14 16:05:23 -05:00
Eric NOULARD 52c53deb1b Really avoid compiler warning about unused vars 2012-02-14 16:05:23 -05:00
Eric NOULARD 6a74eb1d36 CPackNSIS fix #0012935 switch from LOG_WARNING to avoid final error. 2012-02-05 13:13:48 +01:00
Eric NOULARD 5d18851b25 CPackArchive restore default behavior and provide new variable.
CPACK_COMPONENT_INCLUDE_TOPLEVEL_DIRECTORY should be set by the user
in order to get the toplevel directory included in the archive
whenever a componentized archive is requested. This solves bug #12129
and keeps fully backward compatible behavior.
2012-02-01 23:32:50 +01:00
Eric NOULARD 37f90ed576 Calm down compiler warning about unused var 2012-01-31 22:45:07 +01:00
Eric NOULARD 1629615a10 CPack Documentation extraction from CMake script begins to work
- Enhance extract doc parser. Seems robust now. The legacy
   module documentation parser works as before ignoring
   the new markup.

 - Proof of concept for CPack (generic), CPack RPM and CPack Deb
   generator for macro and variables.
   Try cpack --help-command and cpack --help-variables
2012-01-22 13:31:24 +01:00
Eric NOULARD 83e34dd9e6 Implement simple CMake script comment markup language.
The language is very simple. It use ##<keyword> special comment
which opens a structured documentation block and ##end closes it.
This may be used to extract documentation for macro as 'command'
and 'variables' such that cpack --help-command and --help-variable
does parse builtin modules files (CPack.cmake, CPackComponent.cmake,
...) in order to extract the corresponding doc.
2012-01-22 11:44:05 +01:00
Eric NOULARD c6a0169442 CPack begin the implementation of --help-command* and --help-variables*
This modifications set tries to keep the unified doc for cmake/ctest/cpack
while introducing tool specific documentation separated.
Some documentation sections for CMake do not fit well to CPack.
2012-01-22 11:42:49 +01:00
Daniel Nelson 3cab24a974 CPack Add top level directory in component install for Archive Generators
This patch fixes bug #0012129
Signed-off-by: Eric NOULARD <eric.noulard@gmail.com>
2012-01-13 22:01:53 +01:00
Eric NOULARD d2c9626d5a Document undocumented (but existing) cpack options (fix #0010134) 2012-01-03 16:47:35 +01:00
Nicolas Despres de512644d8 Usage: Print help, version and copyright options in usage information.
There were missing for ctest, cpack and ccmake.
2011-10-23 22:18:14 +02:00
Nicolas Despres a92f14f338 Doxygen: Fix warnings. 2011-10-23 22:18:08 +02:00
Nicolas Despres d3d7e45df2 Remove trailing white-spaces. 2011-10-23 22:15:20 +02:00
David Cole 682a989fdb Merge topic 'CPackDeb-fakeroot'
49da3bd CPackDeb fix #10325 automagically use fakeroot for DEB if fakeroot is found
2011-09-21 17:29:16 -04:00
Johan Björk 7b8dcdd173 CPack: Do not recurse through directory symlinks (#12284)
...when building CPack archive-based packages (.tar.gz and similar)

Rather, put the symlinks-to-directories into the archive as files,
and expect/trust that the things the symlinks point to are also in
the archive.
2011-09-06 14:04:37 -04:00
Eric NOULARD 49da3bdb2d CPackDeb fix #10325 automagically use fakeroot for DEB if fakeroot is found 2011-09-05 22:43:45 +02:00
David Cole ab24bdeecc Merge topic 'cpack-nsis-multi-installs'
e6d2bcf CPack/NSIS: Fix reinstall and multiple install issues when using components.
2011-08-02 15:10:47 -04:00
Clinton Stimpson e6d2bcfde2 CPack/NSIS: Fix reinstall and multiple install issues when using components.
Fix NSIS template to more thoroughly use CPACK_PACKAGE_INSTALL_REGISTRY_KEY.
This allows different versions of software to have a separate sections in the
registry to keep track of things (installed components, and uninstall stuff).

Change default of CPACK_PACKAGE_INSTALL_REGISTRY_KEY to follow the value of
CPACK_PACKAGE_INSTALL_DIRECTORY so if an installation overwrites another installation,
the proper registry entries are more likely to be overwritten.

Fix CPack/NSIS generator to not insert code in the NSIS template to skip installation
of already installed components.  This enables a repair like behavior and also enables
installing patch releases on top of an older installation.
2011-07-29 12:23:22 -06:00
Johan Björk 856a9e499f RunSingleCommand: Replace verbose boolean with enum
No behaviour change, this prepares for adding a flag to skip the merging
of output streams.
2011-07-28 10:42:03 -04:00
Wesley Turner 0fb388c733 Ensure executable files have executable permissions.
Fix the OSX X11 CPack generator to make sure the installer
that it generates contains executable files.
2011-05-16 18:15:32 -04:00
Eric NOULARD d3fd945900 CPackRPM Fix #12096: handle absolute install path with component install 2011-04-17 17:12:38 +02:00
Martin Konrad b22fcfb0c5 CPackDeb: Handle dirs for CONTROL_EXTRA correctly when packaging components
Copy the files specified in CPACK_DEBIAN_PACKAGE_CONTROL_EXTRA to the right
directory when packaging components. This fixes #12061.
Signed-off-by: Eric NOULARD <eric.noulard@gmail.com>
2011-04-09 09:30:19 +02:00
Brad King b7b9597b75 Merge topic 'drag-n-drop-components'
dd04608 Fix KWStyle warnings
2973c1f Add component support to DragNDrop generator.
2011-04-05 14:29:06 -04:00
Eric NOULARD 9c43824066 Fix KWStyle warnings 2011-04-04 14:59:58 -04:00
Eric NOULARD dd04608132 Fix KWStyle warnings 2011-04-01 19:27:34 +02:00
Clinton Stimpson 2973c1fbeb Add component support to DragNDrop generator. 2011-03-31 13:33:10 -04:00
Clinton Stimpson 64a5e20999 Combine component packaging methods into an enum.
Also allow generators to override the default packaging method.
Add a ONE_PER_GROUP option so that method can be specified by the user without relying on defaults.
2011-03-31 13:33:03 -04:00
Eric NOULARD 6dfc818394 CPack fix #11930 and simplifies component packaging options 2011-03-23 18:28:05 +01:00
Eric NOULARD 21007f8989 CPack fix CPackDeb crash when CPackDeb.cmake ends with a FATAL_ERROR 2011-03-19 11:12:31 +01:00
M. Konrad bf7066c6ce CPackDeb add Component Support to DEB generator fix #0011655
Contribution by Martin Konrad
Signed-off-by: Eric NOULARD <eric.noulard@gmail.com>
2011-03-11 08:47:15 +01:00
Brad King ba14c92254 Merge topic 'CPack-MoreRobustComponentFileList'
b813f86 CPack  fix compile error on VS70 and avoid KWStyle warnings
77333a9 CPack  more robust way to collect files belonging to a component
2011-03-08 14:22:32 -05:00
Eric NOULARD b813f863e6 CPack fix compile error on VS70 and avoid KWStyle warnings 2011-03-04 22:57:37 +01:00
Eric NOULARD 77333a92c2 CPack more robust way to collect files belonging to a component 2011-03-03 22:43:31 +01:00
Eric NOULARD fe530ff5e9 CPackArchive package all components specified in CPACK_COMPONENTS_ALL
When asking for group packaging the components not belonging to
any group should be packaged separately.
2011-03-03 21:19:13 +01:00
Brad King b5b4aa2f71 Merge topic 'CPack-ChangeComponentNamingScheme'
3fb89cf CPack remove previously CPack generated files (if any) before running CPack
f2ab270 CPack  fix KWStyle warning
4deb308 CPack Authorize DISPLAY_NAME usage in component package
8c450f6 CPack remove "-ALL" suffix for ALL-IN-ONE packages
2011-03-01 15:30:14 -05:00
Eric NOULARD 5b4cbdb45e CPackRPM Replace space in some CPACK_ vars (Fix bug 9932) 2011-02-25 16:47:11 +01:00
Eric NOULARD f2ab270e6f CPack fix KWStyle warning 2011-02-24 00:29:25 +01:00
Eric NOULARD 4deb308e82 CPack Authorize DISPLAY_NAME usage in component package
Second (last) part fix of feature request #11814
2011-02-22 23:49:49 +01:00
Eric NOULARD 8c450f6287 CPack remove "-ALL" suffix for ALL-IN-ONE packages
First part fix of feature request 11814
2011-02-22 22:56:26 +01:00
Brad King 5239fb0dfe Merge topic 'CPackRPM-HonorAllComponentWays'
0cf1d72 CPackRPM  fix IRIX compiler warning (variable never used)
494bb8a CPackRPM  honors all the different ways of packaging components
2011-02-22 14:32:36 -05:00
Brad King 377ed8e764 Merge topic 'fix-11526-mac-remove-carbon-refs'
0037dcb Removed most usage of Carbon in favour of CoreFoundation
2011-02-22 14:30:12 -05:00
Eric NOULARD 0cf1d72e3c CPackRPM fix IRIX compiler warning (variable never used) 2011-02-15 19:55:36 +01:00
Eric NOULARD 494bb8ada7 CPackRPM honors all the different ways of packaging components
RPM cannot easily 'merge' differents directory into a single RPM
with shared prefix. So more flexibility has been added to generic
CPackGenerator in order to let the specific generator chose the
local installation directory for each component.
2011-02-06 21:23:10 +01:00
David Cole c310450daf Silence the may be used uninitialized warnings: initialize stuff. 2011-02-03 10:21:32 -05:00
Sean McBride 0037dcb6af Removed most usage of Carbon in favour of CoreFoundation 2011-01-31 18:21:20 -05:00
Brad King 3272d2d96f Merge topic 'fix-10644-cpack-menu-links'
1bbe4e6 CPack: Detect more URLs in CPACK_NSIS_MENU_LINKS (#10644)
2011-01-11 15:48:24 -05:00
David Cole 1bbe4e6917 CPack: Detect more URLs in CPACK_NSIS_MENU_LINKS (#10644)
Previously, only strings containing "http:" qualified as
URLs when found in CPACK_NSIS_MENU_LINKS. Now, we use a
regex to detect strings beginning with any of the following:

  ftp://
  ftps://
  http://
  https://
  news://
  mailto:

This commit also moves the caller of CreateMenuLinks outside
the "if (cpackPackageExecutables)" block, allowing clients to
use CPACK_NSIS_MENU_LINKS without also having CPACK_PACKAGE_EXECUTABLES
defined. That bit of this commit fixes the remainder of the
issue described in http://public.kitware.com/Bug/view.php?id=7828

Also, added a set(CPACK_NSIS_MENU_LINKS ...) to the CPackComponents
test to enable verifying that all of this actually works.
2011-01-07 14:24:04 -05:00
Mike McQuaid bee514c361 Add CPack NSIS MUI_FINISHPAGE_RUN support (#11144)
MUI_FINISHPAGE_RUN is frequently used with NSIS and provides a checkbox
on the finish page of an installer which specifies whether the specified
executable should be run when the installer exits. This commit adds support
for this setting in CPack.
2011-01-06 16:21:36 -05:00
Mike McQuaid 702c8f8ba7 Add CPACK_NSIS_EXECUTABLES_DIRECTORY (#7828)
NSIS installers default to assuming the executables exist in a
directory named "bin" under the installation directory. As this
isn't usual for Windows programs, the addition of this variable
allows the customization of this directory and links still to be
created correctly.
2011-01-06 16:21:23 -05:00
Mike McQuaid fec32328b1 Allow NSIS package or uninstall icon (#11143)
Previously both CPACK_NSIS_MUI_ICON and CPACK_NSIS_MUI_UNIICON
needed to be set for either to take effect. This commit allows
either to be set rather than requiring both as users may well
want to e.g. use a default uninstall icon but a custom install
icon.
2011-01-06 15:14:38 -05:00
David Cole cd9aa73f3a CPack: look for makensis in the PATH (#8210)
Previously, we would search in the Windows registry for the path
to makensis, and fail immediately if we could not read the registry
value, assuming that it was simply not installed.

This change looks for makensis in the PATH even if the registry value
is not there, enabling the scenario where makensis is installed without
admin privileges and never even touches HKEY_LOCAL_MACHINE during the
non-admin install.
2010-12-17 13:29:10 -05:00
Brad King ceae8b1062 Merge topic 'CPack-MoreComponentControls'
6d94ea3 CPack  use IsOn when it's better than IsSet
2010-12-16 13:59:45 -05:00
Eric NOULARD 6d94ea3692 CPack use IsOn when it's better than IsSet
This authorize more control because one can set
CPACK_ARCHIVE_COMPONENT_INSTALL to ON globally
and then set it selectively to OFF inside
a CPack project config file.
Sidenote: GetOption ought to be a 'const' method.
2010-12-12 12:55:02 +01:00
Eric NOULARD 17b05e6d7f CPack Honor CPACK_MONOLITHIC_INSTALL at CPack time too 2010-12-12 12:30:42 +01:00
Eric NOULARD 12a7125b32 CPack Fix KWStyle error 2010-12-01 21:00:38 +01:00
Eric NOULARD d0eb89c17b CPack backward compatibility fix 2.8.3-2.8.2 (bug 11452)
One should set CPACK_ARCHIVE_COMPONENT_INSTALL=1 in order to
trigger component install for ARCHIVE generators
2010-11-29 18:57:24 +01:00
Eric NOULARD 66e86b4770 CPack fix kwstyle breakage and make CPackRPM backward compatible
backward compatible= No componentized RPM unless requested
using CPACK_RPM_COMP0NENT_INSTALL
2010-11-15 20:54:19 +01:00
Eric NOULARD 2c84d169b3 CPackRPM add basic component support to CPackRPM
basic means 1 RPM per component and no dependency handling
this implies some CPackGenerator refactoring
2010-11-13 17:56:36 +01:00
Eric NOULARD a749724029 CPackDeb Added several optional debian binary package fields
This fixes bugs #0011355  and 0008342.
The merged patch is a contribution from Michael Lasmanis and Petri Hodju
with some extra documentation added by the merger.
2010-10-25 20:40:45 +02:00
Bill Hoffman 390117435a Fix KWStyle line length issues. 2010-09-15 16:41:41 -04:00
Brad King c9b0e1da5c Merge topic 'CPack-PreserveSymlinksInInstalledDirs-v2'
013e003 CPack  handle symlinks in CPACK_INSTALLED_DIRECTORIES fix for bug5430
2010-09-08 11:07:38 -04:00
Brad King 65fa0f0235 Merge topic 'CPackArchiveGenerator-ComponentSupport'
a986daf CPack fix broken compilation for CygwinSource generator
873e99a CPackArchiveGenerator improve usability and robustness
654683a CPackArchiveGenerator  add component supports
36a550a CPackArchiveGenerator  use cmArchiveWrite wrapper
2010-08-31 14:24:32 -04:00
Eric NOULARD 013e0039ee CPack handle symlinks in CPACK_INSTALLED_DIRECTORIES fix for bug5430
The proposed solution is to avoid to CopyIfDifferent any links
found in CPACK_INSTALLED_DIRECTORIES but memorize them instead
then at the end of the processing for each dir do re-create the
link in the installed tree.
Current patch should work if the link are "local" to the directory.
2010-08-28 16:50:06 +02:00
Eric NOULARD a986dafd7f CPack fix broken compilation for CygwinSource generator 2010-08-25 11:04:49 +02:00
Eric NOULARD 873e99a27d CPackArchiveGenerator improve usability and robustness
Handle the "no group defined" case
Implement the idea from Rolf Eike Beer to have a single
var CPACK_COMPONENTS_GROUPING with several values
2010-08-24 21:42:54 +02:00
Eric NOULARD 654683adc7 CPackArchiveGenerator add component supports 2010-08-24 21:42:21 +02:00
Eric NOULARD 36a550ae7a CPackArchiveGenerator use cmArchiveWrite wrapper 2010-08-24 21:41:32 +02:00
Eric NOULARD 6a521f8604 CPack Enable better handling of absolute installed files
The idea of the patch is to let the install generator define
CPACK_ABSOLUTE_INSTALL_FILES then when CMake is installing
project he will concatenate the list of files and give
it to specific CPack Generator by defining CPACK_ABSOLUTE_INSTALL_FILES
to be the list of ALL files that were installed using absolute destination.
An example of use has been applied to RPM generator which now
tries to automatically build a relocatable package.
2010-08-23 17:38:33 +02:00
Eric NOULARD 40dc97dc73 CPack Backward-compatibly enforce DESTDIR for DEB and RPM 2010-08-23 16:14:40 +02:00
Brad King cc2ba7f9c2 Merge topic 'CPack-APIredesign'
bd510fe CPack: Avoid member shadowing after API refactor (part2)
31a313d CPack: Avoid member shadowing after API refactor
cd7b8a0 CPack: Refactor API in order to handle multi-file packages
2010-08-17 15:12:42 -04:00
Eric NOULARD bd510fe4ea CPack: Avoid member shadowing after API refactor (part2)
After converting method arguments to members we need to avoid use of the
same names as local variables and other method arguments. One more fix.
2010-08-12 20:18:46 +02:00
Brad King 31a313d470 CPack: Avoid member shadowing after API refactor
After converting method arguments to members we need to avoid use of the
same names as local variables and other method arguments.
2010-08-11 16:17:09 -04:00
Eric NOULARD cd7b8a03f5 CPack: Refactor API in order to handle multi-file packages
The multi-argument CompressFiles(...) method has been replace by the
no-argument PackageFiles() method and 3 more member variables.  This
will enable implemention of multi-package generators.  Now each specific
generator (which overloads PackageFiles()) may decide to change the name
and/or the number of generated package files.
2010-08-11 14:09:52 -04:00
Brad King ac267371e6 Merge branch 'system-libarchive-include' into libarchive-wrapper 2010-08-05 17:12:42 -04:00
Brad King 3296e6ad90 Include headers from chosen libarchive (#10923)
When CMAKE_USE_SYSTEM_LIBARCHIVE is on we must include the system
libarchive headers to match the library that will be linked.
2010-08-05 17:06:10 -04:00
Brad King 1820a05cb2 Merge topic 'CPackDEB-auto-dependency-support'
ded3a15 CPackDeb  optionally generates auto-dependency list part fix of bug 10292
2010-08-03 16:12:37 -04:00
Eric NOULARD ded3a1585b CPackDeb optionally generates auto-dependency list part fix of bug 10292
The default behavior is not to activate this option because it may break
DEB package building for project who does not use INSTALL RPATH.
2010-07-28 18:24:20 +02:00
Eric NOULARD 5495a6d975 CPackDEB: merge wrong installed size patch. see bugs 10296 (and 10292) 2010-07-28 17:03:14 +02:00
Brad King e1a4c02bac Merge topic 'resolve/doc-spelling/CPackRPM'
7739d78 Merge CPackRPM changes into doc-spelling
9203e91 Fix spelling errors reported by Lintian.
2010-07-20 16:00:29 -04:00
Brad King 7739d786a4 Merge CPackRPM changes into doc-spelling
Conflicts:
	Modules/CPackRPM.cmake
2010-07-13 09:46:52 -04:00
Kai Wasserbäch 9203e9187e Fix spelling errors reported by Lintian.
During a Lintian run on the binary packages of CMake in Debian I was
notified of many spelling mistakes.
2010-07-13 09:41:37 -04:00
Brad King 54b1dc4161 Merge branch 'fix-cmake-conversion-warnings' 2010-07-06 10:20:50 -04:00
Brad King 050af165bb Fix integer conversions in cpack
These were revealed by GCC's -Wconversion option.
2010-06-30 09:57:07 -04:00
David Cole 415900ba77 Eliminate -Wconversion warnings.
Change types of local variables, or casting, or re-arrange
expressions to get rid of "conversion may alter value" warnings
as seen on recent dashboard submissions from londinium.kitware.
2010-06-27 11:22:05 -04:00
Brad King fdb5f78705 CPack: Try harder to remove temporary dir (#10793)
Windows filesystems sometimes lock files temporarily.  Try removing the
CPack temp install folder multiple times before giving up.
2010-06-04 14:32:08 -04:00
David Cole 10a4abddfd Add missing archive_read_finish calls to fix some of the presently reported valgrind memory leaks. 2009-12-28 13:15:19 -05:00
Bill Hoffman 22fb266d06 use different tar format to handle longer file names 2009-11-14 08:48:32 -05:00
Bill Hoffman 70dbbcc542 add better error checking and run from correct directory. 2009-11-09 09:58:03 -05:00
Bill Hoffman 4fd75f959a add better error checking and support for symlinks to cpack's use of libarchive 2009-11-08 20:54:13 -05:00
Bill Hoffman b0d43475c6 Fix warning 2009-11-03 17:21:25 -05:00
Bill Hoffman 5f41fe03ca Fix warnings for unused variables 2009-11-03 16:50:49 -05:00
Bill Hoffman 78b2d5097c Fix cygwin package stuff to work with libarchive 2009-11-03 09:40:57 -05:00
Bill Hoffman d4b8945301 Fix for hpux... 2009-11-02 09:20:53 -05:00
Bill Hoffman fb51d98562 Switch to using libarchive from libtar for cpack and cmake -E tar
This allows for a built in bzip and zip capability, so external tools
will not be needed for these packagers.  The cmake -E tar xf should be
able to handle all compression types now as well.
2009-10-30 13:10:56 -04:00
David Cole 43d07f6620 Fix more mismatched new[] / delete[] (eliminate invalid auto_ptr use) to correct valgrind reported memory issues. 2009-10-30 10:31:54 -04:00
David Cole e0bbaa889a Correct one of the valgrind errors from the CPackTestAllGenerators test. Do not use auto_ptr on a new [] allocation because auto_ptr does not use delete []. 2009-10-26 13:49:20 -04:00
Bill Hoffman a9fa71a47c Try to avoid cronic random failures on some Macs. 2009-10-04 09:54:55 -04:00
Bill Hoffman 78f68ef1b7 Try to avoid cronic random failures on some Macs. 2009-10-04 09:32:48 -04:00
Alexander Neundorf eb91859d6f remove unused variables, reported by icpc
Alex
2009-10-03 08:35:57 -04:00
David Cole 44bcba7461 Fix warnings in CMake source code. Suppress rampant warnings emanating from Qt files. 2009-10-01 16:47:08 -04:00
Brad King f40406ed6b Fix default install prefix on Haiku
Since Haiku does not have /usr (and therefore /usr/local), this commit
changes the default install prefix to the equivalent directory of
/boot/common.

See issue #9607.
2009-09-30 08:31:53 -04:00
David Cole a091e99cb9 Fix issue #8818 - escape quotes in the license file when using the DragNDrop cpack generator. Thanks to Clinton Stimpson for the patch. 2009-09-28 17:14:53 -04:00
Brad King 96afb12087 Convert CMake to OSI-approved BSD License
This converts the CMake license to a pure 3-clause OSI-approved BSD
License.  We drop the previous license clause requiring modified
versions to be plainly marked.  We also update the CMake copyright to
cover the full development time range.
2009-09-28 11:43:28 -04:00
Brad King b41a548d86 Add parentheses around '&&' between '||' for gcc
The GNU compiler warns about possible operator precedence mistakes and
asks for explicit parentheses (-Wparentheses).  We add the parentheses
to silence the warning.  This also fixes one real logic error in the
find_package() implementation by correcting expression evaluation order.
2009-09-11 08:18:15 -04:00
Brad King e9d7ebb3ec BUG: Do not double-initialize local generators
All global generator CreateLocalGenerator methods automatically
initialize the local generator instances with SetGlobalGenerator.  In
several places we were calling SetGlobalGenerator again after receiving
the return value from CreateLocalGenerator.  The double-initializations
leaked the resources allocated by the first call to SetGlobalGenerator.
This fix removes the unnecessary calls.
2009-07-28 10:47:02 -04:00
David Cole 42c033ccd6 BUG: Fix issue #8759 - add support for setting dmg volume name and compression type by CPack variables. Also add custom .DS_Store and background image support. Thanks to Mike Arthur for the patches. 2009-04-03 13:12:53 -04:00
David Cole 60a46ca76e STYLE: Fix line length violation. 2009-02-24 09:34:03 -05:00
David Cole c148714b82 ENH: Add license file presentation to the Drag-N-Drop dmg file CPack generator. Fixes issue #8442. Thanks to Clinton Stimpson for the patch. 2009-02-23 13:25:18 -05:00
David Cole c6051d7ad0 STYLE: Fix style line-too-long violations. 2009-02-20 10:14:40 -05:00
David Cole 1bf669207b BUG: A little bit more refactoring from BundleGenerator to DragNDropGenerator. See issue #8556. Thanks for Clinton Stimpson for the patch. 2009-02-19 10:39:08 -05:00
Brad King dc13914cd6 ENH: Create cmXMLSafe to help escapes in XML
This class provides easy syntax to efficiently insert blocks of data
into XML documents with proper escapes.  It replaces the old
cmCTest::MakeXMLSafe and cmSystemTools::MakeXMLSafe methods which
allocated extra memory instead of directly streaming the data.
2009-02-05 16:31:37 -05:00
David Cole 2914b740c2 BUG: Forgot to change parent class in cmCPackTypeMacro when I added cmCPackDragNDropGenerator. Fix it now that it really matters. (The BundleGenerator test started failing after the last commit. This fixes it.) 2009-01-22 14:23:44 -05:00
David Cole 6bf31875ce BUG: Fix issue #8383. Avoid crashing when using the Bundle CPack generator and CPACK_BUNDLE_NAME is not set. Instead, fail gracefully giving an informative error message and non-zero exit code. 2009-01-22 13:56:13 -05:00
David Cole 3a4f76949a BUG: Fix issue #8402. Add a drag and drop bundle generator to the Mac build of CPack. Add a test of it in the CPackComponents test. Thanks to Clinton Stimpson for the patch. 2009-01-22 12:12:44 -05:00
David Cole 36c228814b BUG: Fix issue #7523: Analyze output of 'hdiutil attach' to get the name of the volume that was mounted. Eliminates the need to use the -mountpoint arg of hdiutil which has a silly 90 character limit on the name of the mount point. Also add a custom volume icon to the BundleGeneratorTest to cover this code. 2009-01-21 13:39:22 -05:00
David Cole c647ed54d9 BUG: Fix issue #7833: Add file extension handling to CPack generated installers for OSXX11 applications. Also modify the X11 test to build such an installer on Mac builds that test CPack and have X11 available. Thanks to Wes Turner for the patch. 2009-01-21 11:54:30 -05:00
David Cole 03c940aeb3 BUG: Fix for issue #7470. Allow spaces in the path names of installed files with the NSIS CPack generator and component-based installs. Add an installed file to the CPackComponents test: it failed before the fix; now it passes. 2009-01-20 14:29:41 -05:00
Bill Hoffman 81515ba8a5 ENH: allow startup command to be optional 2008-12-04 09:09:55 -05:00
David Cole cc51ddd34b BUG: Use the DESTDIR prefix when creating the directory in CPack when CPACK_SET_DESTDIR is ON. Thanks to Petri Hodju for reporting this regression to the CMake mailing list: http://www.cmake.org/pipermail/cmake/2008-October/024563.html. 2008-10-15 09:35:27 -04:00
David Cole c3976b0283 BUG: Fix issue #7800. Enable CPack to find the NSIS installer on Windows 2000. 2008-10-10 17:08:00 -04:00
Bill Hoffman 71fee8522e STYLE: fix line length issues 2008-10-02 09:18:47 -04:00
Bill Hoffman ecf312ccc8 STYLE: fix line length stuff for KWStyle 2008-10-01 09:04:27 -04:00
Bill Hoffman d31c890220 ENH: missed one 2008-09-24 10:01:32 -04:00
Bill Hoffman 302aadadb3 STYLE: fix compiler warning 2008-09-24 09:57:52 -04:00
Bill Hoffman 7fd080d695 STYLE: fix warning and rename method 2008-09-23 10:15:13 -04:00
Bill Hoffman 52e6733fbc BUG: fix 7669, cpack did not work with symlinks 2008-09-22 18:12:54 -04:00
Bill Hoffman 7e5222165d ENH: add installed size to deb package 2008-09-11 10:48:49 -04:00
David Cole b2f041f6a8 BUG: Fix issue #7414 - do not crash when given components with circular dependencies. Thanks to Doug Gregor for the patch. 2008-07-30 13:28:17 -04:00
David Cole b3752abc8d ENH: Improvements to the bundle cpack generator from second patch attached to feature request #7170. Thanks to Tim Shead. 2008-07-18 16:12:36 -04:00
David Cole d7b9041516 COMP: Fix HP continuous. Pull stl headers into CMake header files using cmStandardIncludes.h 2008-07-09 16:30:53 -04:00
David Cole 71f61636b6 ENH: One more patch from Doug Gregor including PackageMaker functionality for componentized-for-the-end-user and download-some-bit-on-demand installers. 2008-07-09 13:38:56 -04:00