Testing the existence of a header file
requires knowing what language the header file is.
A configure context has a CheckCHeader
method
that checks for the existence of a C header file:
env = Environment() conf = Configure(env) if not conf.CheckCHeader('math.h'): print 'Math.h must be installed!' Exit(1) if conf.CheckCHeader('foo.h'): conf.env.Append('-DHAS_FOO_H') env = conf.Finish()
Note that you can choose to terminate the build if a given header file doesn't exist, or you can modify the construction environment based on the existence of a header file.
If you need to check for the existence
a C++ header file,
use the CheckCXXHeader
method:
env = Environment() conf = Configure(env) if not conf.CheckCXXHeader('vector.h'): print 'vector.h must be installed!' Exit(1) env = conf.Finish()