XenevaOS
Loading...
Searching...
No Matches
Macros
kconfig.h File Reference
#include <linux/autoconf.h>
Include dependency graph for kconfig.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Macros

#define __LITTLE_ENDIAN   1234
 
#define __ARG_PLACEHOLDER_1   0,
 
#define __take_second_arg(__ignored, val, ...)   val
 
#define __and(x, y)   ___and(x, y)
 
#define ___and(x, y)   ____and(__ARG_PLACEHOLDER_##x, y)
 
#define ____and(arg1_or_junk, y)   __take_second_arg(arg1_or_junk y, 0)
 
#define __or(x, y)   ___or(x, y)
 
#define ___or(x, y)   ____or(__ARG_PLACEHOLDER_##x, y)
 
#define ____or(arg1_or_junk, y)   __take_second_arg(arg1_or_junk 1, y)
 
#define __is_defined(x)   ___is_defined(x)
 
#define ___is_defined(val)   ____is_defined(__ARG_PLACEHOLDER_##val)
 
#define ____is_defined(arg1_or_junk)   __take_second_arg(arg1_or_junk 1, 0)
 
#define IS_BUILTIN(option)   __is_defined(option)
 
#define IS_MODULE(option)   __is_defined(option##_MODULE)
 
#define IS_REACHABLE(option)
 
#define IS_ENABLED(option)   __or(IS_BUILTIN(option), IS_MODULE(option))
 

Macro Definition Documentation

◆ ____and

#define ____and (   arg1_or_junk,
  y 
)    __take_second_arg(arg1_or_junk y, 0)

◆ ____is_defined

#define ____is_defined (   arg1_or_junk)    __take_second_arg(arg1_or_junk 1, 0)

◆ ____or

#define ____or (   arg1_or_junk,
  y 
)    __take_second_arg(arg1_or_junk 1, y)

◆ ___and

#define ___and (   x,
  y 
)    ____and(__ARG_PLACEHOLDER_##x, y)

◆ ___is_defined

#define ___is_defined (   val)    ____is_defined(__ARG_PLACEHOLDER_##val)

◆ ___or

#define ___or (   x,
  y 
)    ____or(__ARG_PLACEHOLDER_##x, y)

◆ __and

#define __and (   x,
  y 
)    ___and(x, y)

◆ __ARG_PLACEHOLDER_1

#define __ARG_PLACEHOLDER_1   0,

◆ __is_defined

#define __is_defined (   x)    ___is_defined(x)

◆ __LITTLE_ENDIAN

#define __LITTLE_ENDIAN   1234

◆ __or

#define __or (   x,
  y 
)    ___or(x, y)

◆ __take_second_arg

#define __take_second_arg (   __ignored,
  val,
  ... 
)    val

◆ IS_BUILTIN

#define IS_BUILTIN (   option)    __is_defined(option)

◆ IS_ENABLED

#define IS_ENABLED (   option)    __or(IS_BUILTIN(option), IS_MODULE(option))

◆ IS_MODULE

#define IS_MODULE (   option)    __is_defined(option##_MODULE)

◆ IS_REACHABLE

#define IS_REACHABLE (   option)
Value:
__or(IS_BUILTIN(option), \
__and(IS_MODULE(option), __is_defined(MODULE)))
#define __and(x, y)
Definition kconfig.h:27
#define IS_MODULE(option)
Definition kconfig.h:64
#define IS_BUILTIN(option)
Definition kconfig.h:57
#define __is_defined(x)
Definition kconfig.h:48
#define __or(x, y)
Definition kconfig.h:31