Incorporate rmustacc's review feedback.
1 #
2 # This file and its contents are supplied under the terms of the
3 # Common Development and Distribution License ("CDDL"), version 1.0.
4 # You may only use this file in accordance with the terms of version
5 # 1.0 of the CDDL.
6 #
7 # A full copy of the text of the CDDL should have accompanied this
8 # source. A copy of the CDDL is also available via the Internet at
9 # http://www.illumos.org/license/CDDL.
10 #
11
12 #
13 # Copyright 2015 Garrett D'Amore <garrett@damore.org>
14 #
15
16 #
17 # Compilation environments.
18 #
19 # Each compilation environment is declared using the keyword "env", like
20 # this:
21 #
22 # env | <name> | <std> | <defs>
23 #
24 # <name> is just a symbolic name for environment.
25 # <std> indicates either c89 or c99, i.e. which C standard to compile
26 # under. This infuences choice of compiler and switches.
27 # <defs> is a list of CPP style -D or -U flags to define C preprocessor
28 # symbols.
29 #
30 # Groups of compilation environments can be named, using the "env_group"
31 # keyword (this can also be used to create aliases):
32 #
33 # env_group | <name> | <envs>
34 #
35 # <name> is a name for the group or alias
36 # <envs> is a whitespace separated list of previously declared environments
37 # or environment groups (or aliases).
38 #
39
40 env | XPG3 | c89 | -D_XOPEN_SOURCE
41 env | XPG4 | c89 | -D_XOPEN_SOURCE -D_XOPEN_VERSION=4
42 env | SUSv1 | c89 | -D_XOPEN_SOURCE -D_XOPEN_SOURCE_EXTENDED=1
43 env | SUSv2 | c89 | -D_XOPEN_SOURCE=500
44 env | SUSv3 | c99 | -D_XOPEN_SOURCE=600
45 env | SUSv4 | c99 | -D_XOPEN_SOURCE=700
46 env | POSIX-1990 | c89 | -D_POSIX_SOURCE
47 env | POSIX-1992 | c89 | -D_POSIX_SOURCE -D_POSIX_C_SOURCE=2
48 env | POSIX-1993 | c89 | -D_POSIX_C_SOURCE=199309L
49 env | POSIX-1995 | c89 | -D_POSIX_C_SOURCE=199506L
50 env | POSIX-2001 | c99 | -D_POSIX_C_SOURCE=200112L
51 env | POSIX-2008 | c99 | -D_POSIX_C_SOURCE=200809L
52 env | C90 | c89 |
53 env | C99 | c99 |
54
55 #
56 # These are ordered from less inclusive (most recent) to most inclusive.
57 # This allows for us to "include" by reference.
58 #
59 env_group | POSIX-2008+ | POSIX-2008
60 env_group | POSIX-2001+ | POSIX-2008+ POSIX-2001
61 env_group | POSIX-1995+ | POSIX-2001+ POSIX-1995
62 env_group | POSIX-1993+ | POSIX-1995+ POSIX-1993
63 env_group | POSIX-1992+ | POSIX-1993+ POSIX-1992
64 env_group | POSIX-1990+ | POSIX-1992+ POSIX-1990
65 env_group | POSIX+ | POSIX-1990+
66 env_group | SUSv4+ | SUSv4 POSIX-2008+
67 env_group | SUSv3+ | SUSv3 SUSv4+ POSIX-2001+
68 env_group | SUSv2+ | SUSv2 SUSv3+
69 env_group | SUSv1+ | SUSv1 SUSv2+
70 env_group | SUS+ | SUSv1+
71 env_group | XPG4+ | XPG4 SUSv1+
72 env_group | XPG3+ | XPG3 XPG4+
73 env_group | C99+ | C99 POSIX-2001+ SUSv3+
74 env_group | C+ | C90 C99 POSIX+ SUS+
75 env_group | ALL | C+
76
77 #
78 # Aliases.
79 #
80 env_group | XPG4v2 | SUSv1
81 env_group | XPG4v2+ | SUSv1+
82 env_group | XPG5 | SUSv2
83 env_group | XPG5+ | SUSv2+
84 env_group | XPG6 | SUSv3
85 env_group | XPG6+ | SUSv3+
86 env_group | XPG7 | SUSv4
87 env_group | XPG7+ | SUSv4+
--- EOF ---