summaryrefslogtreecommitdiffstats
path: root/Source/CPack/WiX
Commit message (Collapse)AuthorAgeFilesLines
* Simplify CMake per-source license noticesBrad King2016-09-2720-240/+40
| | | | | | | | | | | | | | | | | | | | | | | | | | | 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-093-8/+15
|
* CPackWIX: Fix incomplete CPACK_WIX_SKIP_PROGRAM_FOLDER implementationMichael Stürmer2016-09-0610-38/+79
| | | | | | | | | | 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>
* make sure to include cmConfigure.h before cmStandardIncludes.hDaniel Pfeifer2016-09-031-0/+2
|
* CPackWIX: Implement new CPACK_WIX_SKIP_PROGRAM_FOLDER featureMichael Stürmer2016-08-084-4/+31
| | | | | 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.
* CPackWIX: Support CPACK_COMPONENT_<compName>_DISABLEDMichael Stürmer2016-07-221-0/+4
| | | | Reviewed-by: Nils Gladitz <nilsgladitz@gmail.com>
* 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-145-10/+10
| | | | Use istringsream for parsing, ostringstream for generation.
* Revise C++ coding style using clang-formatKitware Robot2016-05-1619-1075/+769
| | | | | | | | | | | | | 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.
* Help clang-format wrap after braces on long initializer listsBrad King2016-05-061-0/+1
| | | | | | Add a long comment inside a few braced initializer lists in order to convince clang-format to break after the opening brace and format the list without indenting every value past the opening brace.
* Source: Sort includes the way clang-format wouldBrad King2016-05-031-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | Re-apply the approach from commit e1c77472 (Format include directive blocks and ordering with clang-format, 2016-04-29) but this time be more careful about exclusion of parser generator sources: $ git ls-files -z -- \ '*.c' '*.cc' '*.cpp' '*.cxx' '*.h' '*.hh' '*.hpp' '*.hxx' | egrep -z -v '^Source/cmCommandArgumentLexer\.' | egrep -z -v '^Source/cmCommandArgumentParser\.' | egrep -z -v '^Source/cmDependsJavaLexer\.' | egrep -z -v '^Source/cmDependsJavaParser\.' | egrep -z -v '^Source/cmExprLexer\.' | egrep -z -v '^Source/cmExprParser\.' | egrep -z -v '^Source/cmFortranLexer\.' | egrep -z -v '^Source/cmFortranParser\.' | egrep -z -v '^Source/cmListFileLexer\.' | 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 Also drop use of custom sorting for `sys/types.h`.
* Source: Stabilize include order of sys/types.h before sys/stat.hBrad King2016-05-031-0/+1
| | | | | Include the two headers in an isolated block with a comment separating them so that tools that re-order includes do not re-order these.
* Format include directive blocks and ordering with clang-formatBrad King2016-04-297-12/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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>
* Source: Stabilize include orderBrad King2016-04-2910-13/+17
| | | | | Each source file has a logical first include file. Include it in an isolated block so that tools that sort includes do not move them.
* CPackWIX: Allow multiple patch files and diagnose if any are missingNils Gladitz2015-12-143-4/+21
| | | | | | | 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-102-4/+22
| | | | | | | | | 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
* CPackWIX: Handle text nodes in XML patch contentNils Gladitz2015-10-126-19/+118
|
* Replace foo.size() pattern with !foo.empty().Stephen Kelly2015-08-244-5/+5
|
* 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.
* Merge topic 'wix-fix-utf8'Brad King2015-03-303-4/+10
|\ | | | | | | | | 98a3b2e2 CPackWIX: Omit codepage conversion when internal encoding is already UTF-8.
| * CPackWIX: Omit codepage conversion when internal encoding is already UTF-8.Nils Gladitz2015-03-273-4/+10
| |
* | CPackWIX: Add static_casts for XML_Parser.Nils Gladitz2015-03-261-2/+2
|/ | | | | | | "XML_Parser" in cmexpat is a typedef for void* while newer releases of expat seem to use struct XML_ParserStruct *XML_Parser. Add static_casts so that the build works with either variant.
* 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-215-1/+39
|
* CPackWIX: Add installed file properties for the creation of shortcuts.Nils Gladitz2015-02-216-12/+67
|
* CPackWIX: Refactor start menu and desktop shortcut creation.Nils Gladitz2015-02-216-150/+248
|
* CPackWIX: Extend the patching mechanism to allow adding content to <Product>.Nils Gladitz2015-02-132-2/+16
|
* 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-273-5/+38
|
* CPackWiX: Teach WiX installers to remember the install location for upgradesNils Gladitz2014-09-191-0/+23
|
* CPackWIX: Implement CPACK_WIX_ACL (Access Control List) propertyNils Gladitz2014-08-094-2/+205
|
* CPackWiX: Implement CPACK_NEVER_OVERWRITE and CPACK_PERMANENT propertiesNils Gladitz2014-05-283-3/+23
|
* CPackWIX: Delay creation of cmWIXPatch until CPack has initialized LoggerNils Gladitz2014-04-182-6/+16
| | | | | Without the fix CPack will crash when the cmWIXPatch class tries to issue any diagnostics.
* stringapi: Miscellaneous char* parametersBen Boeckel2014-03-082-9/+7
|
* CPackWIX: support installation of empty directoriesNils Gladitz2014-03-013-0/+36
|
* CPackWIX: Allow Windows Installer property customizationNils Gladitz2014-03-012-0/+39
|
* CPackWIX: refactor and cleanupNils Gladitz2014-02-2617-534/+842
| | | | | 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-082-2/+113
|
* CPackWiX: added new CPACK_WIX_CMAKE_PACKAGE_REGISTRY variableNils Gladitz2014-01-082-1/+45
| | | | | Allows automatic registration of installed packages with the cmake package registry.
* Use cmsys::[io]fstream instead of cmsys_ios::[io]fstream.Clinton Stimpson2014-01-073-6/+7
| | | | | Also use SystemTools::Fopen() instead of fopen(). This is to eventually support utf-8 filenames.
* Merge topic 'wix-rtf-encoding'Brad King2014-01-022-1/+98
|\ | | | | | | | | 950d76e CPackWiX: allow and convert UTF-8 sequences in RTF writer
| * CPackWiX: allow and convert UTF-8 sequences in RTF writerNils Gladitz2013-12-262-1/+98
| |
* | CPackWiX: transfer file read only flag during installationNils Gladitz2013-12-251-0/+11
|/
* Merge topic 'wix-cmake-coding-conventions'Brad King2013-12-238-108/+108
|\ | | | | | | | | 37a1157 CPackWiX: adhere to CMake member naming convention
| * CPackWiX: adhere to CMake member naming conventionNils Gladitz2013-12-208-108/+108
| |