[CMake] Small, realistic Cpack example
Shead, Timothy
tshead at sandia.gov
Tue Sep 16 12:25:13 EDT 2008
On 9/16/08 9:43 AM, "Boudewijn Rempt" <boud at valdyas.org> wrote:
> On Tue, 16 Sep 2008, Shead, Timothy wrote:
>> K-3D doesn't use Qt, but it's a clean, realistic example of 3rd-parthy
>
> But still seems to want it:
>
> INCLUDE(FindQt4)
We provide an example of an alternate-user-interface plugin, but we don't
try to install it ;)
>> packaging on Linux, Win32, and MacOS:
>>
>> # Our overall organization for packaging:
>> http://k3d.svn.sourceforge.net/viewvc/k3d/trunk/distribution/
>>
>> # Adding 3rd party libraries to the Win32 install:
>> http://k3d.svn.sourceforge.net/viewvc/k3d/trunk/distribution/win32/CMakeList
>> s.txt?revision=1357&view=markup
>>
>> # Building an NSIS installer:
>> http://k3d.svn.sourceforge.net/viewvc/k3d/trunk/distribution/win32/nsis/CMak
>> eLists.txt?revision=940&view=markup
>
> It is interesting, but definitely not a small example! I'm reading through
> the CMakeLists.txt files and the cmake modules now... Does it also package
> frameworks on OS X, btw?
Hate to say it, but I've gone through this with several projects now, and
there seems to be an irreducible lower-limit on complexity. You can use
that first link to browse through our entire distribution hierarchy, which
organizes packaging for all three platforms:
distribution/ - source packaging, automated tagging & changelog-generation
osx/ - installation of OSX-specific 3rd-party dependencies
bundle/ - generating bundles
packagemaker/ - generating packagemaker packages
posix/ - generating binary tarballs
win32/ - installation of Win32-specific 3rd-party dependencies
nsis/ - generating NSIS installers
The main observation is that the INSTALL() commands for 3rd-party
dependencies vary enough between platforms that we keep them separate.
Similarly, the resources for different packaging systems (packagemaker
supports a certain subset of HTML for readmes, NSIS requires a splash image
with specific dimensions, etc) are different enough that we keep them
separate, too.
Cheers,
Tim
--
Timothy M. Shead
Scalable Analytics & Visualization (1424)
Sandia National Laboratories
505-284-0139
More information about the CMake
mailing list