1CPACK(1) CMake CPACK(1)
2
3
4
6 cpack - CPack Command-Line Reference
7
9 cpack [<options>]
10
12 The cpack executable is the CMake packaging program. It generates in‐
13 stallers and source packages in a variety of formats.
14
15 For each installer or package format, cpack has a specific backend,
16 called "generator". A generator is responsible for generating the re‐
17 quired inputs and invoking the specific package creation tools. These
18 installer or package generators are not to be confused with the make‐
19 file generators of the cmake command.
20
21 All supported generators are specified in the cpack-generators manual.
22 The command cpack --help prints a list of generators supported for the
23 target platform. Which of them are to be used can be selected through
24 the CPACK_GENERATOR variable or through the command-line option -G.
25
26 The cpack program is steered by a configuration file written in the
27 CMake language. Unless chosen differently through the command-line op‐
28 tion --config, the file CPackConfig.cmake in the current directory is
29 used.
30
31 In the standard CMake workflow, the file CPackConfig.cmake is generated
32 by the cmake executable, provided the CPack module is included by the
33 project's CMakeLists.txt file.
34
36 -G <generators>
37 <generators> is a semicolon-separated list of generator names.
38 cpack will iterate through this list and produce package(s) in
39 that generator's format according to the details provided in the
40 CPackConfig.cmake configuration file. If this option is not
41 given, the CPACK_GENERATOR variable determines the default set
42 of generators that will be used.
43
44 -C <configs>
45 Specify the project configuration(s) to be packaged (e.g. Debug,
46 Release, etc.), where <configs> is a semicolon-separated list.
47 When the CMake project uses a multi-configuration generator such
48 as Xcode or Visual Studio, this option is needed to tell cpack
49 which built executables to include in the package. The user is
50 responsible for ensuring that the configuration(s) listed have
51 already been built before invoking cpack.
52
53 -D <var>=<value>
54 Set a CPack variable. This will override any value set for
55 <var> in the input file read by cpack.
56
57 --config <configFile>
58 Specify the configuration file read by cpack to provide the
59 packaging details. By default, CPackConfig.cmake in the current
60 directory will be used.
61
62 -V, --verbose
63 Run cpack with verbose output. This can be used to show more
64 details from the package generation tools and is suitable for
65 project developers.
66
67 --debug
68 Run cpack with debug output. This option is intended mainly for
69 the developers of cpack itself and is not normally needed by
70 project developers.
71
72 --trace
73 Put the underlying cmake scripts in trace mode.
74
75 --trace-expand
76 Put the underlying cmake scripts in expanded trace mode.
77
78 -P <packageName>
79 Override/define the value of the CPACK_PACKAGE_NAME variable
80 used for packaging. Any value set for this variable in the
81 CPackConfig.cmake file will then be ignored.
82
83 -R <packageVersion>
84 Override/define the value of the CPACK_PACKAGE_VERSION variable
85 used for packaging. It will override a value set in the CPack‐
86 Config.cmake file or one automatically computed from
87 CPACK_PACKAGE_VERSION_MAJOR, CPACK_PACKAGE_VERSION_MINOR and
88 CPACK_PACKAGE_VERSION_PATCH.
89
90 -B <packageDirectory>
91 Override/define CPACK_PACKAGE_DIRECTORY, which controls the di‐
92 rectory where CPack will perform its packaging work. The resul‐
93 tant package(s) will be created at this location by default and
94 a _CPack_Packages subdirectory will also be created below this
95 directory to use as a working area during package creation.
96
97 --vendor <vendorName>
98 Override/define CPACK_PACKAGE_VENDOR.
99
100 --preset <presetName>
101 Use a preset from cmake-presets(7).
102
103 --list-presets
104 List presets from cmake-presets(7).
105
106 -version [<file>], --version [<file>], /V [<file>]
107 Show program name/version banner and exit. The output is
108 printed to a named <file> if given.
109
110 -h, -H, --help, -help, -usage, /?
111 Print usage information and exit.
112
113 Usage describes the basic command line interface and its op‐
114 tions.
115
116 --help-full [<file>]
117 Print all help manuals and exit.
118
119 All manuals are printed in a human-readable text format. The
120 output is printed to a named <file> if given.
121
122 --help-manual <man> [<file>]
123 Print one help manual and exit.
124
125 The specified manual is printed in a human-readable text format.
126 The output is printed to a named <file> if given.
127
128 --help-manual-list [<file>]
129 List help manuals available and exit.
130
131 The list contains all manuals for which help may be obtained by
132 using the --help-manual option followed by a manual name. The
133 output is printed to a named <file> if given.
134
135 --help-command <cmd> [<file>]
136 Print help for one command and exit.
137
138 The cmake-commands(7) manual entry for <cmd> is printed in a hu‐
139 man-readable text format. The output is printed to a named
140 <file> if given.
141
142 --help-command-list [<file>]
143 List commands with help available and exit.
144
145 The list contains all commands for which help may be obtained by
146 using the --help-command option followed by a command name. The
147 output is printed to a named <file> if given.
148
149 --help-commands [<file>]
150 Print cmake-commands manual and exit.
151
152 The cmake-commands(7) manual is printed in a human-readable text
153 format. The output is printed to a named <file> if given.
154
155 --help-module <mod> [<file>]
156 Print help for one module and exit.
157
158 The cmake-modules(7) manual entry for <mod> is printed in a hu‐
159 man-readable text format. The output is printed to a named
160 <file> if given.
161
162 --help-module-list [<file>]
163 List modules with help available and exit.
164
165 The list contains all modules for which help may be obtained by
166 using the --help-module option followed by a module name. The
167 output is printed to a named <file> if given.
168
169 --help-modules [<file>]
170 Print cmake-modules manual and exit.
171
172 The cmake-modules(7) manual is printed in a human-readable text
173 format. The output is printed to a named <file> if given.
174
175 --help-policy <cmp> [<file>]
176 Print help for one policy and exit.
177
178 The cmake-policies(7) manual entry for <cmp> is printed in a hu‐
179 man-readable text format. The output is printed to a named
180 <file> if given.
181
182 --help-policy-list [<file>]
183 List policies with help available and exit.
184
185 The list contains all policies for which help may be obtained by
186 using the --help-policy option followed by a policy name. The
187 output is printed to a named <file> if given.
188
189 --help-policies [<file>]
190 Print cmake-policies manual and exit.
191
192 The cmake-policies(7) manual is printed in a human-readable text
193 format. The output is printed to a named <file> if given.
194
195 --help-property <prop> [<file>]
196 Print help for one property and exit.
197
198 The cmake-properties(7) manual entries for <prop> are printed in
199 a human-readable text format. The output is printed to a named
200 <file> if given.
201
202 --help-property-list [<file>]
203 List properties with help available and exit.
204
205 The list contains all properties for which help may be obtained
206 by using the --help-property option followed by a property name.
207 The output is printed to a named <file> if given.
208
209 --help-properties [<file>]
210 Print cmake-properties manual and exit.
211
212 The cmake-properties(7) manual is printed in a human-readable
213 text format. The output is printed to a named <file> if given.
214
215 --help-variable <var> [<file>]
216 Print help for one variable and exit.
217
218 The cmake-variables(7) manual entry for <var> is printed in a
219 human-readable text format. The output is printed to a named
220 <file> if given.
221
222 --help-variable-list [<file>]
223 List variables with help available and exit.
224
225 The list contains all variables for which help may be obtained
226 by using the --help-variable option followed by a variable name.
227 The output is printed to a named <file> if given.
228
229 --help-variables [<file>]
230 Print cmake-variables manual and exit.
231
232 The cmake-variables(7) manual is printed in a human-readable
233 text format. The output is printed to a named <file> if given.
234
236 The following resources are available to get help using CMake:
237
238 Home Page
239 https://cmake.org
240
241 The primary starting point for learning about CMake.
242
243 Online Documentation and Community Resources
244 https://cmake.org/documentation
245
246 Links to available documentation and community resources may be
247 found on this web page.
248
249 Discourse Forum
250 https://discourse.cmake.org
251
252 The Discourse Forum hosts discussion and questions about CMake.
253
255 2000-2023 Kitware, Inc. and Contributors
256
257
258
259
2603.27.7 Oct 07, 2023 CPACK(1)