[CMake] #cmakedefine and the #if vs #ifdef argument
Hostile Fork
hostilefork at gmail.com
Thu Jun 11 17:32:52 EDT 2009
Hello list!
As a learning exercise, I am adding CMake and CTest to a small open-
source library I made which currently has no build system:
http://hostilefork.com/nstate/
http://hostilefork.com/nocycle/
For the first step, I have been applying the "configure_file"
methodology to this header:
http://github.com/hostilefork/nocycle/blob/1ac238aea7af9e02f3a49f0c7eb991074c8eb3fd/NocycleSettings.hpp
( Following these directions: http://www.vtk.org/Wiki/CMake_HowToDoPlatformChecks
)
It seems the #cmakedefine lines are replaced with one of these two
cases:
#define VAR_THAT_IS_ON
/* #undef VAR_THAT_IS_OFF */
However... in the past I have been persuaded by the argument that the
use of #if is superior to #ifdef for conditional compilation.
( Roddy's comment here on StackOverflow summarizes the advantages
pretty well: http://stackoverflow.com/questions/135069/ifdef-vs-if-which-is-bettersafer
)
Is it possible to get CMake to produce something more like:
#define VAR_THAT_IS_ON 1
#define VAR_THAT_IS_OFF 0
There are other questions I have lined up. :) But I'll start with
just that one, and if anyone wants to be proactive offer advice/
pointers/urls based on the existing source... please jump in!
Thanks!
---Brian
More information about the CMake
mailing list