[CMake] CPack specify filename

David Cole david.cole at kitware.com
Fri Jun 3 11:16:26 EDT 2011


On Fri, Jun 3, 2011 at 4:38 AM, NoRulez <norulez at me.com> wrote:
> Is this the only way? Because i would like to have only one CTestScript.cmake file which came from the build server.
>

Of course it's not the only way. (TMTOWTDI: always, even if you're not
using perl.) It is a reasonable suggestion, though. It's what I would
do if I wanted CPack generator-specific behavior.

Another way would be to run cpack explicitly, once for each generator,
and then rename/copy the output file each time.

cpack -G PackageMaker
copy/rename output file
cpack -G DragNDrop
copy/rename output file
cpack -G Bundle
copy/rename output file
cpack -G OSXX11
copy/rename output file

If you're driving from a cmake/ctest script, you could certainly
execute these via execute_process calls.

Although, I think you'll find, when you dig into them a little bit
more, that the Bundle and OSXX11 generators are only appropriate for
certain types of projects, and I'd be surprised if you had a project
where all 4 would actually work. The Bundle and OSXX11 generators
essentially wrap "command line style unix tools" with a Mac bundle
.app such that double clicking on it yields a sort of
not-quite-Mac-like GUI anyway, even though you didn't do the work to
make your app a "real" Mac app.

If you did do the work, and you do have a real Mac app, you'll only be
interested in the PackageMaker and DragNDrop cpack generators anyway.

This is not a more common question because most folks only really want
one of these installer types at a time.


HTH,
David


> Am 01.06.2011 um 23:48 schrieb Clinton Stimpson <clinton at elemtech.com>:
>
>> On Wednesday, June 01, 2011 02:58:22 pm NoRulez wrote:
>>> Hi,
>>>
>>> if I use PackageMaker, DragNDrop, Bundle, OSXX11 then the problem is that
>>> all 4 filenames are equal (e.g. "Project.dmg"). The problem now is, that
>>> each cpack routine overwrites the package.
>>>
>>> Is it possible to avoid this behavior with a custom filename per Generator?
>>>
>>> E.g.: Project_OSXX11.dmg, Project_DragNDrop.dmg, ...
>>>
>>> Thanks in advance
>>
>> <http://www.vtk.org/Wiki/CMake:CPackPackageGenerators#Overall_usage_.28common_to_all_generators.29>
>>
>> You can set CPACK_PROJECT_CONFIG_FILE and in that file include per-generator
>> code.
>>
>> --
>> Clinton Stimpson
>> Elemental Technologies, Inc
>> Computational Simulation Software, LLC
>> www.csimsoft.com
>> _______________________________________________
>> 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
> _______________________________________________
> 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
>


More information about the CMake mailing list