Commit Graph

44 Commits

Author SHA1 Message Date
Brad King
fa23f66ad5 CMakeCPack: Exclude version-control-specific files from source package 2017-09-26 08:49:28 -04:00
Konstantin Podsvirov
4971799360 QtIFW: Improved packaging
Now cpack_ifw_configure_file command used to configure
template files of component's scripts.

Now for these template files we can use QtIFW predefined
variables (like @VAR@) and template variables
in Qt/IFW/SDK/Creator templates style (like %VAR%).

Now CMake_INSTALL_INFIX advanced variable used to configure
CMake installation destination when package as part of QtSDK.
2017-01-12 19:29:52 +03:00
Konstantin Podsvirov
d07d24b8a3 QtIFW: Configurable root component 2016-11-30 18:36:06 +03:00
Konstantin Podsvirov
ea51b71a4f QtIFW: Developer Reference installation 2016-08-16 19:02:35 +03:00
Konstantin Podsvirov
8ae035a569 CMake: install COMPONENT cmcldeps
Added in Tools group with IFW installer
2016-07-13 10:02:12 -04:00
Nils Gladitz
a12b0f1b19 CMake: Prevent WiX installations over existing NSIS installations
Use a custom action to look for Uninstall.exe in the user
selected installation prefix.

Its presence indicates a previous NSIS installation.
Inform the user and request manual resolution of the issue.
2016-02-09 10:28:57 -05:00
Nils Gladitz
24cdb9df59 CMake: Mimic NSIS options dialog in WiX installer 2015-12-17 15:57:30 +01:00
Brad King
4c60e07d85 CMake: Fix WiX-generated .msi package file name convention
Update our configuration of the CPack WIX generator for CMake itself to
produce file names consistent with other CPack generators.
2015-12-10 14:33:40 -05:00
Adam Strzelecki
4bca940126 Improve appearance of CMake .dmg package on OS X
Configure our use of the CPack DragNDrop generator to specify a custom
background image and script.
2015-11-13 08:46:54 -05:00
Brad King
da7276cf94 Replace http://www.cmake.org URLs with https://cmake.org
The latter is now the preferred URL for visiting cmake.org with a
browser.  Convert using the shell code:

 git ls-files -z | xargs -0 sed -i 's|http://www\.cmake|https://cmake|g'
2015-09-25 15:47:39 -04:00
Konstantin Podsvirov
d7725a178b CMake: Add cmakexbuild component as REQUIRED to Tools group for IFW installer 2015-07-07 09:20:13 -04:00
Konstantin Podsvirov
ecca26855a CMake: optional show LGPLv2.1 license when install cmake-gui component
In IFW installer if cmake-gui component selected and
CMake_GUI_DISTRIBUTE_WITH_Qt_LGPL enabled license will be
showed.
2015-07-07 09:16:44 -04:00
Konstantin Podsvirov
c823f04e0c CMake: New option CMake_INSTALL_COMPONENTS
By default is OFF.
Now it's used with CPack IFW himself installer.
2015-07-07 09:16:40 -04:00
Konstantin Podsvirov
7383e4d722 CMake: Install COMPONENTs (sphinx-man)
Added component sphinx-man
2015-07-07 08:11:10 +03:00
Konstantin Podsvirov
938bbc4352 CMake: Install COMPONENTs
Added components:
- cmake
- ctest
- cpack
- cmake-gui
- ccmake
- data
- sphinx-html
- sphinx-singlehtml
- sphinx-qthelp

Other now Unspecified.
2015-07-07 08:11:09 +03:00
Konstantin Podsvirov
342d15cbc2 Update packaging of CMake for QtIFW 2.0 2015-05-15 11:02:49 -04:00
Nils Gladitz
1bda8f1fdb CPackWIX: Customize CMake installer theme. 2015-03-12 20:44:27 +01:00
Nils Gladitz
135febf069 CPackWIX: Enhance CMake CPack WIX generated installer. 2015-02-22 15:20:33 +01:00
Konstantin Podsvirov
e6496b6023 CPackIFW: Revise this generator
CPack IFW generator updates:
- Group now can have script;
- Root package (for monolithic or one package installers) can be
  configured from group.

CMake updates:
- Native installation (no Unspecified component).
2014-08-12 15:20:59 -04:00
Konstantin Podsvirov
e7511b7fbe CPackIFW: Add package configuration variables 2014-07-29 15:55:19 -04:00
Konstantin Podsvirov
44850a267d CPack: Add an "IFW" generator for Qt Framework Installer
Add support for packaging with the Qt Framework Installer tools:

 http://qt-project.org/doc/qtinstallerframework/index.html

Reviewed-by: Nils Gladitz <nilsgladitz@gmail.com>
2014-07-28 10:24:03 -04:00
Brad King
7cbab17871 Change version scheme to use only two components for feature levels
Historically CMake used three version components for the feature level.
We released new features while incrementing only the third version
component.  Since commit v2.8.2~105^2~4 (New version scheme to support
branchy workflow, 2010-04-23) we used the fourth version component for
bug-fix releases and the development date:

 <major>.<minor>.<patch>[.<tweak>][-rc<n>] = Release
 <major>.<minor>.<patch>.<date>[-<id>]     = Development

This solidified use of three components for the feature level, and was
necessary to continue releasing 2.x versions because:

* Some existing projects performed floating-point comparisons of
  ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION} to 2.x numbers
  so ``x`` could never be higher than 9.

* Version 2.9.<date> was used briefly in post-2.8.0 development in
  CVS prior to the transition to Git, so using it in releases may
  have caused confusion.

Now that we are moving to 3.x versions, these two restrictions go away.
Therefore we now change to use only two components for the feature
level and use the scheme:

 <major>.<minor>.<patch>[-rc<n>] = Release
 <major>.<minor>.<date>[-<id>]   = Development
2014-02-19 09:30:13 -05:00
Brad King
76550297b6 Configure NSIS-packaged CMake documentation link in Start Menu
Now that we use Sphinx to generate the documentation there is a single
entry point to link from the start menu.  Drop all the (now broken)
links to the individual html document pages and provide a single link to
the index.html "CMake Documentation" entry point.
2013-11-12 15:47:06 -05:00
Andreas Mohr
bf019d765d Fix spelling and typos (non-binary) 2013-05-07 08:39:19 -04: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
Kitware Robot
9db3116226 Remove CMake-language block-end command arguments
Ancient versions of CMake required else(), endif(), and similar block
termination commands to have arguments matching the command starting the
block.  This is no longer the preferred style.

Run the following shell code:

for c in else endif endforeach endfunction endmacro endwhile; do
    echo 's/\b'"$c"'\(\s*\)(.\+)/'"$c"'\1()/'
done >convert.sed &&
git ls-files -z -- bootstrap '*.cmake' '*.cmake.in' '*CMakeLists.txt' |
egrep -z -v '^(Utilities/cm|Source/kwsys/)' |
egrep -z -v 'Tests/CMakeTests/While-Endwhile-' |
xargs -0 sed -i -f convert.sed &&
rm convert.sed
2012-08-13 14:19:16 -04:00
Kitware Robot
77543bde41 Convert CMake-language commands to lower case
Ancient CMake versions required upper-case commands.  Later command
names became case-insensitive.  Now the preferred style is lower-case.

Run the following shell code:

cmake --help-command-list |
grep -v "cmake version" |
while read c; do
    echo 's/\b'"$(echo $c | tr '[:lower:]' '[:upper:]')"'\(\s*\)(/'"$c"'\1(/g'
done >convert.sed &&
git ls-files -z -- bootstrap '*.cmake' '*.cmake.in' '*CMakeLists.txt' |
egrep -z -v '^(Utilities/cm|Source/kwsys/)' |
xargs -0 sed -i -f convert.sed &&
rm convert.sed
2012-08-13 14:19:16 -04: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
96cd16380a Add CPACK_NSIS_INSTALL_ROOT for CMake's own installer (#9148)
Problem with CMake 2.8.4-rc1: when you launch the NSIS exe installer
on Windows, the default install path shown to the end user is, at first,
"\CMake 2.8".

This problem started occurring when configuring CMake itself with an
older CMake, after adding CPACK_NSIS_INSTALL_ROOT to fix issue 9148.
So... it's a regression from 2.8.3.

I forgot (again) that when you add a new CPack variable, you must
add it to CMake's CMakeCPack.cmake file or else it is empty when
configured with an older CMake. And on Windows, without a bootstrap
build available, the releases are always configured with an older
version of CMake. This may be the last time this has bitten me,
though, because it is now burned into my brain that problems with
CMake's installer itself are inevitably associated with adding new
CPack variables.

In addition to adding a definition for CPACK_NSIS_INSTALL_ROOT,
I've gone ahead and made it differ for the 32- and 64-bit builds
of CMake to give the end user the expected default value for the
Program Files folder for each one.

And, since I was adding a new 32/64 differentiator anyhow, I made
the "NSIS package name" and "installer registry key base" different
for 64-bit builds, too, by appending " (Win64)" to each one.

These address the concerns mentioned in 9148's related issue:
http://public.kitware.com/Bug/view.php?id=9094 (at least as far
as CMake's installer is concerned). 9094 could still use a good
general fix for all projects, though, and remains open for now.
2011-01-13 16:57:50 -05:00
Bill Hoffman
72bc82a98a Use cmake-gui.exe for the install/uninstall icon for cmake. 2009-09-25 11:26:28 -04:00
Bill Hoffman
1554265aa6 Remove CMakeSetup. Long live cmake-gui, start building Qt now. 2009-09-03 17:01:07 -04:00
David Cole
9f629f7a16 BUG: Add CPACK_NSIS_PACKAGE_NAME to the list of CPack variables that CMake overrides. We use the same value as the CPack-provided default, but do it here such that configuring with an older CMake will still give us this new variable. Necessary so that the CMake release process works with the new variable: CMake is configured with a previous CMake, but packaged with the freshly built CPack. (This fix is necessary because the fix for issue #8682 caused the side effect of having an empty CPACK_NSIS_PACKAGE_NAME for the CMake nightly package.) 2009-07-20 12:08:34 -04:00
Bill Hoffman
ec10b44d1e ENH: do not create a desktop link for CMakeSetup 2009-06-26 10:18:11 -04:00
Bill Hoffman
f59e3348b9 ENH: add cmake gui docs 2009-02-13 21:51:46 -05:00
Bill Hoffman
a3790d258b ENH: deprecate CMakeSetup 2009-02-13 16:29:03 -05:00
Bill Hoffman
8c065add0c ENH: fix install in add/remove programs, again... 2008-07-01 10:58:57 -04:00
Bill Hoffman
042f4c334d ENH: fix crash in cpack when CPACK_CYGWIN_PATCH_NUMBER not specified 2008-03-12 21:54:27 -04:00
Bill Hoffman
a3781c85fc ENH: install seems to be working for cmake-gui 2008-02-18 15:50:37 -05:00
Bill Hoffman
f6014938cb ENH: make it so cmake-gui only installs if qt is static on windows 2008-02-09 09:53:52 -05:00
Bill Hoffman
9afb2100c1 ENH: for windows only allow a static qt for install and NSIS of cmake-gui 2008-02-07 11:43:20 -05:00
Bill Hoffman
4a426d4718 ENH: fix add/remove program name 2008-01-15 17:02:44 -05:00
David Cole
764f6838a7 ENH: Give Mac installers package relocation capability. Default location is still the same for backwards compatibility, but packages will now be relocatable by default like they are on Windows via the NSIS installer. New CPack variables for controlling this functionality are CPACK_PACKAGE_DEFAULT_LOCATION and CPACK_PACKAGE_RELOCATABLE. 2007-12-26 16:57:13 -05:00
Bill Hoffman
87c22309b8 ENH: change CPACK_CREATE_DESKTOP_LINKS to something that can handle spaces in the name of the exectuable 2007-11-07 13:11:58 -05:00
Bill Hoffman
e65c40f94a ENH: add CPACK_PROJECT_CONFIG_FILE option to CPack 2007-10-31 12:55:04 -04:00