diff --git a/src/lib/libast/features/common b/src/lib/libast/features/common index a01fcbeb4..fd6ff158a 100644 --- a/src/lib/libast/features/common +++ b/src/lib/libast/features/common @@ -36,12 +36,6 @@ cat{ # define __OPTIMIZE_SIZE__ 1 #endif - /* enable POSIX standard on Solaris */ - #ifdef __sun - # undef _XPG6 - # define _XPG6 1 - #endif - /* __STD_C indicates that the language is ANSI C or C++ */ #if !defined(__STD_C) && __STDC__ # define __STD_C 1 diff --git a/src/lib/libast/features/standards b/src/lib/libast/features/standards index 5b6dcbb0e..75702d092 100644 --- a/src/lib/libast/features/standards +++ b/src/lib/libast/features/standards @@ -19,6 +19,18 @@ if tst note{ FreeBSD or DragonFly BSD }end compile{ #endif }end { } +elif tst note{ SunOS (Solaris, illumos) }end compile{ + #if !__sun + #error dark + #endif + }end { + #define _XPG7 1 + #define _XPG6 1 + #define _XPG5 1 + #define _XPG4 1 + #define __EXTENSIONS__ 1 + #define _XOPEN_SOURCE 9900 + } elif tst note{ _ALL_SOURCE & _POSIX_SOURCE & _POSIX_C_SOURCE & _XOPEN_SOURCE & _GNU_SOURCE & _DARWIN_C_SOURCE & __EXTENSIONS__ works }end compile{ #define _ALL_SOURCE 1 #define _POSIX_SOURCE 1