How to split strings across multiple lines in CMake?
cmake
Solution
Update for CMake 3.0 and newer :
line continuation is possible with `\`. see the latest cmake docs
message("\
This is the first line of a quoted argument. \
In fact it is the only line but since it is long \
the source code uses line continuation.\
")
Availability of CMake versions:
Debian Wheezy (2013): 2.8.9 Debian Wheezy-backports: 2.8.11 Debian Jessy (2015): 3.0.2 Ubuntu 14.04 (LTS): 2.8.12 Ubuntu 15.04 : 3.0.2 Mac OSX : cmake-3 available through Homebrew, Macports and Fink Windows: cmake-3 available through Chocolatey
Problem
I usually have a policy in my project, to never create lines in text files that exceed a line length of 80, so they are easily editable in all kinds of editors (you know the deal). But with CMake I get the problem that I do not know how to split a simple string into multiple lines to avoid one huge line. Consider this basic code: ``` set(MYPROJ_VERSION_MAJOR "1") set(MYPROJ_VERSION_MINOR "0") set(MYPROJ_VERSION_PATCH "0") set(MYPROJ_VERSION_EXTRA "rc1") set(MYPROJ_VERSION "${VERSION_MAJOR}.${VERSION_MINOR}.${VERSION_PATCH}-${VERSION_EXTRA}") ``` It already exceeds the 80 column limit. So how do I break a line in CMake into multiple lines without getting to verbose (multiple `list(APPEND ...)` or the like)?