[CMake] Creating some kind of release target

Thomas Klausner tk at giga.or.at
Fri Mar 2 07:38:23 EST 2007


On Thu, Mar 01, 2007 at 08:04:12AM -0800, Alan W. Irwin wrote:
> Both source and binary releases are possible with the companion cpack
> programme which you can configure via cmake.  For fundamental information
> see http://www.cmake.org/Wiki/CMake:Packaging_With_CPack.  For a working
> example, see the top-level CMakeLists.txt file from the CMake software
> itself (or the PLplot software).  After such a cmake setup, then you create 
> a
> source release and binary release with the
> 
> make package_source
> 
> and
> 
> make package
> 
> commands.

I'm also interested in source packages, similar to 'make dist' in
auomake.  To make a useful source package only including what I
wanted to distribute, I had to make a long CPACK_SOURCE_IGNORE_FILES
list:
SET(CPACK_SOURCE_IGNORE_FILES
  ".a$"
  ".cmake$"
  ".o$"
  ".so$"
  "/.deps/"
  "/CMakeFiles/"
  "/CVS/"
  "/autom4te.cache/"
  "/docs/"
  "AdditionalInfo.txt$"
  "CMakeCache.txt$"
  "Makefile$"
  "\\\\.sh$"
  "_CPack_"
  "config.h$"
  "config.log$"
  "config.status$"
  "myprogram$"
  "anotherprogramofmine$"
  "html$"
  "install_manifest.txt$"
  "stamp-h1$"
  "tar.bz2"
  "tar.gz"
  "~$"
)

I find it annoying that any random file that's added to this
directory is added to the distfile, in particular even the files
created by CMake/CPack themselves.

Is there a way to specify exactly which files to include in a source
package, instead of specifying what to ignore?

Cheers,
 Thomas


More information about the CMake mailing list