blob: 4f9d3ce833aa5104c70a685cebfb9556826684e3 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
|
These are configuration files for various features as detected by configure.
Include only those files you need (in order to reduce rebuilds when a setting changes).
Settings here are only C/C++ #define directives, so they apply only to C/C++ source,
not to Makefiles.
Adding a new setting:
=====================
- do AC_DEFINE(HAVE_FOO) in configure.ac when a setting should be set
- choose the proper config_host/config_XXX.h file to use
- if it is a global setting (such as availability of a compiler feature),
use config_host/config_global.h
- otherwise check if there is a matching config_host/config_XXX.h file
- if none matches, add a new one:
- add config_host/config_XXX.h.in here, with just #ifndef include guard
- add AC_CONFIG_HEADERS([config_host/config_XXX.h]) next to the others
in configure.ac
- add config_XXX.h to config_host/.gitignore
- add #undef HAVE_FOO to the config_host/config_XXX.h , possibly with a comment
- if the setting is an on/off setting (i.e. not a value of anything),
add the following block right after it
#ifndef HAVE_FOO
#define HAVE_FOO 0
#endif
- add #include <config_XXX.h> before any #if HAVE_FOO in a source file
- make sure you use #if HAVE_FOO, do not use #ifdef
|