[CMake] CPack+ NSIS Template modificaiton
Eric Noulard
eric.noulard at gmail.com
Thu Mar 20 06:06:48 EDT 2014
2014-03-20 10:02 GMT+01:00 Lloyd <lloydkl.tech at gmail.com>:
> Hi,
>
> We are using NSIS to install our application. It makes use of custom NSIS
> plugin and MUI2 based custom interface. In order to accommodate this, I
> thought of creating a new NSIS template for our project.
>
> I have gone through the existing NSIS template (It uses MUI*1*). Is there
> any document that help me to write the template?
>
> The problem I face is, I am not able to identify the relationship between
> the CPack variables (CPackConfig.cmake) and the variables in
> NSIS.template.in file. As an example, CPackConfig.cmake file refers a
> variable "CPACK_NSIS_MUI_ICON" but this variable is not present in the
> "NSIS.template.in", instead there is a variable
> "@CPACK_NSIS_INSTALLER_MUI_ICON_CODE@" which controls the package's main
> icon.
I guess not all NSIS specific variables are documented, but you can
find a list of var
there:
http://www.cmake.org/cmake/help/v2.8.8/cpack.html#section_VariablesspecifictoCPackNSISgenerator
If you use CPack 2.8.X then
cpack --help-variable CPACK_NSIS_MUI_ICON
will give you the documentation of the concerned variable (if there is some).
> Anybody know this relationship works?
Not me.
May be you can have a look into Source/CPack/cmCPackNSISGenerator.cxx.
> What is going on here, what is the right method to follow? I am reluctant to
> use the existing NSIS template as it is bit complicated (from our point of
> application) and also we want more functionality.
>From what you say I guess replacing the NSIS template is the way to go.
In order to know what you can expect to be filled in by CPack
you should review the list of generic CPACK_xx variables and the list
of CPACK_NSIS_xxx variable:
http://www.cmake.org/cmake/help/v2.8.8/cpack.html#section_Variables
Those variable may be used in your custom template.
Beware that the NSIS generator uses 2 customizable files:
NSIS.template.in
and
NSIS.InstallOptions.ini.in
both files are "configured" by the generator.
--
Erk
L'élection n'est pas la démocratie -- http://www.le-message.org
More information about the CMake
mailing list