#1607 CMake based tarballs
|Reported by||Christoph Grüninger (firstname.lastname@example.org)|
|Reported at||Apr 1, 2015 18:18|
|Version||Git (pre2.4) [cmake]|
|Operating System||Unspecified / All|
I have investigated the way CMake handles creation of tarballs. I want to share my insights and discuss the changes to future tarballs.
How to create a tarball
- Make sure no file are part of the source directory that do not belong there like left-over Makefile.in's.
- Go to the build directory and run "make package_source"
- Several types of tarballs are created. You'll find an additional directory in your build folder "_CPack_Packages". It contains a copy of the module which is created prior to its packaging. Delete it, as dunecontrol get confused by it (it contains copies of the dune.module file).
First I was surprised that CPack is not involved, but I start to see the rationals behind it.
- The process is like "git archive" are simply using tar for whole source directory. There are no generated files. Neither for configuration nor for documentation.
- This means neither the PDFs nor Doxygen class documentation are part of the packages. We could fiddle that into the tarballs. My question is, do we mind? I never used the documentation from the tarball. I either generated them myself or used the Dune homepage to get them.
- CMake is necessary anyway. As there is no autoscan, configure script or automake involved, this is not a downside. Actually, we could drop the distinction of Dune from Git and Dune from tarball. Then we could drop this magic stamp mechanism.
What do you think? Are documentation still necessary in the tarballs? Do you need further information?