summaryrefslogtreecommitdiffstats
path: root/Source/CPack/WiX/cmCPackWIXGenerator.cxx
Commit message (Collapse)AuthorAgeFilesLines
* Use quotes for non-system includesDaniel Pfeifer2017-04-111-9/+9
| | | | | | | | | | | | | Automate with: git grep -l '#include <cm_' -- Source \ | xargs sed -i 's/#include <\(cm_.*\)>/#include "\1"/g' git grep -l '#include <cmsys/' -- Source \ | xargs sed -i 's/#include <\(cmsys\/.*\)>/#include "\1"/g' git grep -l '#include <cm[A-Z]' -- Source \ | xargs sed -i 's/#include <\(cm[A-Z].*\)>/#include "\1"/g'
* CPack: drop CPack prefix for includesDaniel Pfeifer2017-04-111-2/+2
| | | | | | | | | | Automate with: git grep -l '#include <CPack/' -- Source \ | xargs sed -i 's/#include <CPack\/\(.*\)>/#include "\1"/g' git grep -l '#include "CPack/' -- Source \ | xargs sed -i 's/#include "CPack\/\(.*\)"/#include "\1"/g'
* CPackWIX: Introduce new CPACK_WIX_ROOT_FOLDER_ID variableNils Gladitz2017-02-061-5/+15
| | | | | | | | | | The new variable allows specification of a custom root folder ID. The implicit default is "ProgramFiles<64>Folder". The "<64>" token is replaced by "" for 32-bit and "64" for 64-bit builds. Inspired-By: Eric Backus Fixes: #16573
* avoid including cmStandardIncludes.hDaniel Pfeifer2016-11-281-0/+1
|
* Port hash computation to cmCryptoHashBrad King2016-11-101-2/+2
| | | | | Avoid using KWSys MD5 or `cm_sha2` and use the `cmCryptoHash` abstraction instead.
* Encoding: Remove option to use ANSI code page internallyClinton Stimpson2016-11-021-2/+1
| | | | | | The switch to use UTF-8 encoding has been defaulted to on for quite some time since commit v3.2.0-rc1~116^2 (Encoding: Switch to use UTF-8 internally by default on Windows, 2014-12-26).
* Simplify CMake per-source license noticesBrad King2016-09-271-12/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* CPackWIX: Enabled patching of WIX <Feature> tagsMichael Stürmer2016-09-091-2/+2
|
* CPackWIX: Fix incomplete CPACK_WIX_SKIP_PROGRAM_FOLDER implementationMichael Stürmer2016-09-061-14/+25
| | | | | | | | | | Commit 17bbf6af (CPackWIX: Implement new CPACK_WIX_SKIP_PROGRAM_FOLDER feature) generates GUIDs for most but not all components when the feature is active. Generate the remaining GUIDs as well. Co-Author: Nils Gladitz <nilsgladitz@gmail.com>
* CPackWIX: Implement new CPACK_WIX_SKIP_PROGRAM_FOLDER featureMichael Stürmer2016-08-081-0/+9
| | | | | The new variable allows setting of a custom absolute installation prefix outside of the ProgramFiles folders.
* CPackWIX: Support custom title and description for the root featureMichael Stürmer2016-08-021-1/+8
| | | | | | These can now be specified through the WIX generator specific CPack variables CPACK_WIX_ROOT_FEATURE_TITLE and CPACK_WIX_ROOT_FEATURE_DESCRIPTION.
* Avoid using KWSys auto_ptr by adopting it ourselvesBrad King2016-06-291-1/+1
| | | | | | | | | | | | Replace use of cmsys::auto_ptr with a CM_AUTO_PTR macro that maps to our own implementation adopted from the KWSys auto_ptr implementation. Later we may be able to map CM_AUTO_PTR to std::auto_ptr on compilers that do not warn about it. Automate the client site conversions: git grep -l auto_ptr -- Source/ | grep -v Source/kwsys/ | xargs sed -i \ 's|cmsys::auto_ptr|CM_AUTO_PTR|;s|cmsys/auto_ptr.hxx|cm_auto_ptr.hxx|'
* Prefer istringstream and ostringstream over stringstream.Daniel Pfeifer2016-06-141-6/+6
| | | | Use istringsream for parsing, ostringstream for generation.
* Revise C++ coding style using clang-formatKitware Robot2016-05-161-481/+350
| | | | | | | | | | | | | Run the `Utilities/Scripts/clang-format.bash` script to update all our C++ code to a new style defined by `.clang-format`. Use `clang-format` version 3.8. * If you reached this commit for a line in `git blame`, re-run the blame operation starting at the parent of this commit to see older history for the content. * See the parent commit for instructions to rebase a change across this style transition commit.
* Format include directive blocks and ordering with clang-formatBrad King2016-04-291-6/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Sort include directives within each block (separated by a blank line) in lexicographic order (except to prioritize `sys/types.h` first). First run `clang-format` with the config file: --- SortIncludes: false ... Commit the result temporarily. Then run `clang-format` again with: --- SortIncludes: true IncludeCategories: - Regex: 'sys/types.h' Priority: -1 ... Commit the result temporarily. Start a new branch and cherry-pick the second commit. Manually resolve conflicts to preserve indentation of re-ordered includes. This cleans up the include ordering without changing any other style. Use the following command to run `clang-format`: $ git ls-files -z -- \ '*.c' '*.cc' '*.cpp' '*.cxx' '*.h' '*.hh' '*.hpp' '*.hxx' | egrep -z -v '(Lexer|Parser|ParserHelper)\.' | egrep -z -v '^Source/cm_sha2' | egrep -z -v '^Source/(kwsys|CursesDialog/form)/' | egrep -z -v '^Utilities/(KW|cm).*/' | egrep -z -v '^Tests/Module/GenerateExportHeader' | egrep -z -v '^Tests/RunCMake/CommandLine/cmake_depends/test_UTF-16LE.h' | xargs -0 clang-format -i This selects source files that do not come from a third-party. Inspired-by: Daniel Pfeifer <daniel@pfeifer-mail.de>
* CPackWIX: Allow multiple patch files and diagnose if any are missingNils Gladitz2015-12-141-1/+10
| | | | | | | CPACK_WIX_PATCH_FILE now accepts a list of patch files. An error will now be produced if any of the patch files is missing. Previously this would be silently ignored.
* CPackWIX: Allow patching of shortcut componentsNils Gladitz2015-12-121-0/+2
|
* CPackWIX: Fix installed file property lookups when using componentsNils Gladitz2015-12-101-4/+19
| | | | | | | | | The WIX generator incorrectly looked for installed file properties by relative paths that included the component specific staging directory prefix. Remove that prefix in installed file property lookups when generating packages with components.
* CPackWIX: Don't allow users to deselect the top-level feature (#15838)Nils Gladitz2015-11-091-0/+1
| | | | | | | | | | The top-level WiX feature implicitly created by the WIX generator represents the package as a whole. As such it does not make sense to allow installer users to deselect it from the installation. Suggested-by: Mark Stijnman
* Replace foo.size() pattern with !foo.empty().Stephen Kelly2015-08-241-2/+2
|
* cmSystemTools: Teach RunSingleCommand to separate stdout and stderrBrad King2015-04-201-1/+2
| | | | | | | Extend the RunSingleCommand signature to capture stdout and stderr separately. Allow both to be captured to the same std::string to preserve existing behavior. Update all call sites to do this so that this refactoring does not introduce functional changes.
* CPackWIX: Omit codepage conversion when internal encoding is already UTF-8.Nils Gladitz2015-03-271-1/+1
|
* CPackWIX: Fix .wixobj output locations and filenames.Nils Gladitz2015-03-061-1/+18
| | | | | | | | Preserve all but the last extension when generating .wixobj output filenames from source files and make sure they are unique. Output .wixobj files in cpack staging area instead of the current working directory.
* CPackWIX: Support patching of root <Feature> elements.Nils Gladitz2015-03-061-0/+1
|
* CPackWIX: Add new CPACK_STARTUP_SHORTCUTS property.Nils Gladitz2015-02-211-0/+20
|
* CPackWIX: Add installed file properties for the creation of shortcuts.Nils Gladitz2015-02-211-2/+7
|
* CPackWIX: Refactor start menu and desktop shortcut creation.Nils Gladitz2015-02-211-91/+96
|
* CPackWIX: Extend the patching mechanism to allow adding content to <Product>.Nils Gladitz2015-02-131-1/+13
|
* Use two-iterator std::set::insert where appropriate.Stephen Kelly2015-01-111-6/+1
|
* CPackWiX: Work around RelativePath() returning an empty string for the rootNils Gladitz2014-10-031-0/+5
|
* CPackWiX: Extend CPACK_WIX_ACL to support directoriesNils Gladitz2014-09-271-3/+27
|
* CPackWiX: Teach WiX installers to remember the install location for upgradesNils Gladitz2014-09-191-0/+23
|
* CPackWiX: Implement CPACK_NEVER_OVERWRITE and CPACK_PERMANENT propertiesNils Gladitz2014-05-281-1/+5
|
* CPackWIX: Delay creation of cmWIXPatch until CPack has initialized LoggerNils Gladitz2014-04-181-5/+14
| | | | | Without the fix CPack will crash when the cmWIXPatch class tries to issue any diagnostics.
* CPackWIX: support installation of empty directoriesNils Gladitz2014-03-011-0/+10
|
* CPackWIX: Allow Windows Installer property customizationNils Gladitz2014-03-011-0/+37
|
* CPackWIX: refactor and cleanupNils Gladitz2014-02-261-444/+133
| | | | | Extract addtional classes and functions which are getting unsightly large. Use some of the coding conventions more consistently.
* CPackWiX: Add support for CPACK_CREATE_DESKTOP_LINKSTimo Rothenpieler2014-02-081-2/+101
|
* CPackWiX: added new CPACK_WIX_CMAKE_PACKAGE_REGISTRY variableNils Gladitz2014-01-081-1/+42
| | | | | Allows automatic registration of installed packages with the cmake package registry.
* Use cmsys::[io]fstream instead of cmsys_ios::[io]fstream.Clinton Stimpson2014-01-071-2/+3
| | | | | Also use SystemTools::Fopen() instead of fopen(). This is to eventually support utf-8 filenames.
* CPackWiX: transfer file read only flag during installationNils Gladitz2013-12-251-0/+11
|
* Merge topic 'wix-cmake-coding-conventions'Brad King2013-12-231-25/+25
|\ | | | | | | | | 37a1157 CPackWiX: adhere to CMake member naming convention
| * CPackWiX: adhere to CMake member naming conventionNils Gladitz2013-12-201-25/+25
| |
* | CPackWiX: replace slash with backslash in registry key pathNils Gladitz2013-12-201-1/+1
|/ | | | Forward slash is not understood as a key path separator.
* CPackWiX: allow customization of generated WiX sourcesNils Gladitz2013-12-171-0/+74
| | | | | | 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).
* Windows: Use wide-character system APIsClinton Stimpson2013-12-091-4/+6
| | | | | Make CMake compile with -DUNICODE. Make it possible for the 8 bit encoding to eventually be UTF-8 instead ANSI.
* CPackWiX: add CPack component supportNils Gladitz2013-11-261-42/+264
| | | | | | | 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.
* CPackWiX: Add variables for custom tool extensions and flagsNils Gladitz2013-11-121-6/+63
|
* CPackWiX: use safe IDs for generated start menu shortcutsNils Gladitz2013-10-261-116/+154
|
* Merge topic 'wix-extra-sources'Brad King2013-10-151-0/+28
|\ | | | | | | | | 2e6cadd CPackWiX: allow user supplied extra sources, objects and libraries