[CMake] make package_source and binary subdir of source
Alan W. Irwin
irwin at beluga.phys.uvic.ca
Sat Mar 8 15:33:35 EST 2008
To summarize, Erk's current proposal is to implement
set_source_files_properties(file1 file2
PROPERTIES CPACK_PACKAGE_SOURCE true)
and
CPACK_SOURCE_ADD_FILES "list of regular_expressions"
for inclusion and
set_source_files_properties(file1 file2
PROPERTIES CPACK_PACKAGE_SOURCE false)
for exclusion to supplement the current
CPACK_SOURCE_IGNORE_FILES "list of regular_expressions"
for exclusion.
I think these ideas are good ones. In particular, I have a couple of
projects where I add generated documentation to the source tarball,
and it is pretty ugly to contaminate the source tree by copying the
generated documentation back to it so it can be included in the source
tarball. Thus, it would be great to use CPACK_SOURCE_ADD_FILES to add
some files that are generated in the build tree to the source package.
I think the following has been assumed by Erk, but I want to explicitly
state for the record that we should stick to the current result which is the
source package is made up of everything in the source tree by default. This
maintains backwards compatibility and also is a pretty good default since it
is often a good approximation to what is wanted in the source package.
Finally, the inclusion rules should override the exclusion rules if there
is a conflict between them. For example, this would allow those who want to
be completely explicit about what files are included to get rid of the
default by
set(CPACK_SOURCE_IGNORE_FILES "^${PROJECT_SOURCE_DIR}/")
but then add back whatever files they want to cherry pick from the source
tree using CPACK_SOURCE_ADD_FILES or PROPERTIES CPACK_PACKAGE_SOURCE.
Thoughts?
Alan
__________________________
Alan W. Irwin
Astronomical research affiliation with Department of Physics and Astronomy,
University of Victoria (astrowww.phys.uvic.ca).
Programming affiliations with the FreeEOS equation-of-state implementation
for stellar interiors (freeeos.sf.net); PLplot scientific plotting software
package (plplot.org); the libLASi project (unifont.org/lasi); the Loads of
Linux Links project (loll.sf.net); and the Linux Brochure Project
(lbproject.sf.net).
__________________________
Linux-powered Science
__________________________
More information about the CMake
mailing list