Snap! CMake Modules

Snap! CMake Modules ExtensionsIntroduction

Snap! comes with many different projects, all of which need a common set of cmake rules and some of those are rather complex. For that reason we created a common project used to compile all of those projects. This project is the Snap! CMake Modules.



At this point this project is available as source on our git repository at or as a Debian package on Launch PAD.

sudo add-apt-repository ppa:snapcpp/ppa
sudo apt-get update
sudo apt-get install snapcmakemodules


You got a problem with the scripts? An idea to improve them? Please post a ticket in the Support area on


In themselves the scripts do not require much that would not already be installed on a Linux system, although each script has a specific use and most require something (outside of cmake itself, of course).

For example, the macros used to lint XML files make use of the xmllint tool from libxml2. If that tool is not available those macros fail. Some scripts are written in Perl to manage Debian packages. And some script require bash instead of just sh.


The files are generally self documented. There is currently no command to extract that documentation. In general, the scripts work and you should not have to tweak them to generate the tools, libraries, and services.

Snap! Websites
An Open Source CMS System in C++

Contact Us Directly