[CMake] CPack - skipping licensing screen
Bill Hoffman
bill.hoffman at kitware.com
Fri Apr 24 12:39:16 EDT 2009
James Bigler wrote:
> On Fri, Apr 24, 2009 at 7:07 AM, Daniel Blezek <Blezek.Daniel at mayo.edu> wrote:
>> Hi,
>>
>> I’m not sure if there is a CPack-specific mailing list, direct me if I’m
>> wrong.
>>
>> I find the empty license screen a little annoying in the NSIS installer
>> for windows. This occurs when you don’t specify a license file for your
>> installer. CPack generates one for you, but a better behavior would be to
>> skip that step of the install entirely.
>>
>> Is this an easy fix?
>>
>> Thanks,
>> -dan
>
> Depends on your definition of easy. The NSIS installer is script
> based. The script that is used to generate the installer is found in
> the Modules/NSIS.template.in file. In that file you will see a pages
> section:
>
> ;--------------------------------
> ;Pages
> !insertmacro MUI_PAGE_WELCOME
>
> !insertmacro MUI_PAGE_LICENSE "@CPACK_RESOURCE_FILE_LICENSE@"
> Page custom InstallOptionsPage
> !insertmacro MUI_PAGE_DIRECTORY
>
> ;Start Menu Folder Page Configuration
> ...
>
> See the insertmacro MUI_PAGE_LICENSE line? That's the one that
> inserts the license dialog in your installer. You can see the
> documentation for these pages here:
> http://nsis.sourceforge.net/Docs/Modern%20UI/Readme.html
>
> Unfortunately, I don't see an option to deactivate a MUI page after
> you inserted it. There could be one (I'm only just learning NSIS
> script).
>
> You have a some of options at this point that increase in complexity
> and time to solution.
>
> 1. Edit your installed copy of NSIS.template.in to exclude that page.
> Easiest to do, but least maintainable or portable.
> 2. Copy NSIS.template.in and somehow get CMake/CPack to use that
> version instead of the installed version. You have to maintain your
> own copy, but it should be portable.
All you have to do is use CMAKE_MODULE_PATH to change to a different
NSIS.template.in file.
> 3. Submit a patch to CMake that makes that page optional (say for
> example if you don't specify a license file). Everyone gets to
> benefit, but you have to put in the effort and wait for a release or
> use a nightly.
That would be good as well.
-Bill
More information about the CMake
mailing list