プリプロセッサに対してマクロシンボル名 name を def と定義します。
このオプションは、ソースファイルの先頭に #define 指令を記述するのと同じです。-D オプションは複数指定できます。
次の値は SPARC と x86 用に事前定義されています。
_ _BUILTIN_VA_ARG_INCR (varargs.h、stdarg.h および sys/varargs.h 内のキーワード _ _builtin_alloca、_ _builtin_va_alist、および _ _builtin_va_arg_incr で使用)
_ _cplusplus
_ _DATE_ _
_ _ FILE_ _
_ _LINE_ _
_ _STDC_ _
_ _TIME_ _
_ _sun
sun については、次の値があらかじめ定義されています。
_ _SUNPRO_CC=0x500 (__SUNPRO_CC の値はコンパイラのリリース番号です)
_ _SUNPRO_CC_COMPAT=(4|5)
_ _SVR4
_ _'uname -s' 'uname-r'の結果_ (uname は uname -s の結果であり、無効な文字は下線で置き換えられます。たとえば、-D__SunOS_5_3、-D_SunOS_5_4 のようになります。)
_ _unix
次の値は UNIX 用に事前定義されています。
_WCHAR_T
次の値は SPARC 用にのみ定義されています。
_ _sparc (32 ビットコンパイルモードのみ)
次の値は SPARC v9 用にのみ定義されています。
__sparcv9 (64 ビットコンパイルモードのみ)
次の値は x86 用にのみ定義されています。
_ _i386
これらの値は、#ifdef のようなプリプロセッサに対する条件式の中で使用できます。
=def を使用しないと、name は 1 になります。
-U