2012/2/28 Andrea Crotti <andrea.crott...@gmail.com>: > On 02/28/2012 03:42 PM, Eric Noulard wrote: >> >> >>> At worst is there a way to just create my own .nsi file and use it >>> directly? >>> I need to create a page which simply asks for a directory to the user, >>> and >>> then use that to create a shortcut.. >>> >>> Any idea (also other solutions might be fine). >> >> 1) Copy the current NSIS.template.in in your project. >> and update it the way you like. >> >> 2) update CMAKE_MODULE_PATH >> list(APPEND CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR}/packaging) >> >> in order to make your NSIS.template.in in the CMAKE_MODULE_PATH >> (you can even use CPACK_MODULE_PATH) >> >> 3) run-rerun packaging an dmake sure that cpack is using your projevtc >> specific >> NSIS.template.in >> > > Ok thanks that's probably the best solution. > So if I understand correctly this is more or less the same as writing my own > nsi file, > run configure_file on it and then add a create_custom_target for packaging, > is that right?
Yes more or less beside the fact is CPack is doing more work than that: 1) CPack handles CPack-private install location for you (including the installation of the component selected to be put in the installer taken from CPACK_COMPONENTS_ALL) 2) It prepares componentization of the installer. (including possible COMPONENT dependencies, display name etc... 3) Finally if you use configure_file + add_custom_command you won't get all the CPACK_xxx vars CPack has :-( Because some of them my be computed dynamically by CPack which then does the configure_file in this context. I forgot to mention that "NSIS.template.in" is including an auxiliary file: "NSIS.InstallOptions.ini.in" which is configured as well. All this is doable by hand but may not be as easy as it seems in the general case. > I will then probably write the file from scratch, trying to understand whaqt > it does, because the template is quite mysterious at the moment.. Off course you'll have to learn NSIS nsi file syntax (I may not help you for that since I have no knowledge in this area) and I think you should have a look at the template as well for seeking the @CPACK_XXX@ in it Those are possibly important placeholder CPack will pre-compute for you. (if you go with CPack and not using add_custom_command). -- Erk Le gouvernement représentatif n'est pas la démocratie -- http://www.le-message.org -- Powered by www.kitware.com Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html Please keep messages on-topic and check the CMake FAQ at: http://www.cmake.org/Wiki/CMake_FAQ Follow this link to subscribe/unsubscribe: http://www.cmake.org/mailman/listinfo/cmake