<machine/stdint.h>: Check __cplusplus first.
[dragonfly.git] / etc / defaults / compilers.conf
blob6dceb4a93de14379f5debe563081e5e8d3e9e723
2 # Copyright (c) 2014 The DragonFly Project.  All rights reserved.
4 # Redistribution and use in source and binary forms, with or without
5 # modification, are permitted provided that the following conditions
6 # are met:
8 # 1. Redistributions of source code must retain the above copyright
9 #    notice, this list of conditions and the following disclaimer.
10 # 2. Redistributions in binary form must reproduce the above copyright
11 #    notice, this list of conditions and the following disclaimer in
12 #    the documentation and/or other materials provided with the
13 #    distribution.
14 # 3. Neither the name of The DragonFly Project nor the names of its
15 #    contributors may be used to endorse or promote products derived
16 #    from this software without specific, prior written permission.
18 # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
19 # ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
20 # LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
21 # FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE
22 # COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
23 # INCIDENTAL, SPECIAL, EXEMPLARY OR CONSEQUENTIAL DAMAGES (INCLUDING,
24 # BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
25 # LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
26 # AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
27 # OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
28 # OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
29 # SUCH DAMAGE.
33 STD_INCOPT="-nostdinc -iprefix ${INCPREFIX} -iwithprefixbefore /usr/include"
34 DPORT_GCC_STD_INCOPTXX="-isystem /usr/local/lib/${CCVER}/include/c++ \
35         -isystem /usr/local/lib/${CCVER}/include/c++/${MACHARCH}-portbld-dragonfly${MACHREL}"
36 DPORT_CLANG_STD_INCOPTXX="-cxx-isystem /usr/include/c++/5.0"
39 # For each custom compiler definition, it is mandatory to define the
40 # following variables:
41 #     <CCVER>_CC         (path to C compiler)
42 #     <CCVER>_CXX        (path to C++ compiler)
43 #     <CCVER>_CPP        (path to pre-processor)
44 #     <CCVER>_INCOPT     (include options for cc, c++ and cpp)
45 #     <CCVER>_INCOPTCXX  (extra include options for c++)
47 # The following variables are optional:
48 #     <CCVER>_CFLAGS     (extra CFLAGS)
49 #     <CCVER>_CXXFLAGS   (extra CXXFLAGS)
50 #     <CCVER>_CPPFLAGS   (extra CPPFLAGS)
51 #     <CCVER>_GCOV       (path to gcov, /usr/libexec/gcc50/gcov is default)
53 # The following commands call the base compilers by default:
54 #     gcc, g++, clang, clang++, clang-cpp
56 # However, these can be individually overridden:
57 #     <CCVER>_GCC        (path executed when /usr/bin/gcc called)
58 #     <CCVER>_GXX        (path executed when /usr/bin/g++ called)
59 #     <CCVER>_CLANG      (path executed when /usr/bin/clang called)
60 #     <CCVER>_CLANGCXX   (path executed when /usr/bin/clang++ called)
61 #     <CCVER>_CLANGCPP   (path executed when /usr/bin/clang-cpp called)
65 # lang/gcc5 (dports)
67 gcc5_CC=/usr/local/bin/gcc5
68 gcc5_CXX=/usr/local/bin/g++5
69 gcc5_CPP=/usr/local/bin/cpp5
70 gcc5_GCOV=/usr/local/bin/gcov5
71 gcc5_INCOPT=${STD_INCOPT}
72 gcc5_INCOPTCXX=${DPORT_GCC_STD_INCOPTXX}
73 gcc5_GCC=${gcc5_CC}
74 gcc5_GXX=${gcc5_CXX}
76 # Put the 3 following lines uncommented in /etc/compilers.conf to force
77 # /usr/bin/clang* to execute the custom gcc5 compiler instead of base clang
78 #     gcc5_CLANG=${gcc5_CC}
79 #     gcc5_CLANGCXX=${gcc5_CXX}
80 #     gcc5_CLANGCPP=${gcc5_CPP}
83 # lang/gcc6-devel (dports)
85 gcc6_CC=/usr/local/bin/gcc6
86 gcc6_CXX=/usr/local/bin/g++6
87 gcc6_CPP=/usr/local/bin/cpp6
88 gcc6_GCOV=/usr/local/bin/gcov6
89 gcc6_INCOPT=${STD_INCOPT}
90 gcc6_INCOPTCXX=${DPORT_GCC_STD_INCOPTXX}
91 gcc6_GCC=${gcc6_CC}
92 gcc6_GXX=${gcc6_CXX}
95 # lang/gcc49 (dports)
97 gcc49_CC=/usr/local/bin/gcc49
98 gcc49_CXX=/usr/local/bin/g++49
99 gcc49_CPP=/usr/local/bin/cpp49
100 gcc49_GCOV=/usr/local/bin/gcov49
101 gcc49_INCOPT=${STD_INCOPT}
102 gcc49_INCOPTCXX=${DPORT_GCC_STD_INCOPTXX}
103 gcc49_GCC=${gcc49_CC}
104 gcc49_GXX=${gcc49_CXX}
107 # lang/gcc48 (dports)
109 gcc48_CC=/usr/local/bin/gcc48
110 gcc48_CXX=/usr/local/bin/g++48
111 gcc48_CPP=/usr/local/bin/cpp48
112 gcc48_GCOV=/usr/local/bin/gcov48
113 gcc48_INCOPT=${STD_INCOPT}
114 gcc48_INCOPTCXX=${DPORT_GCC_STD_INCOPTXX}
115 gcc48_GCC=${gcc48_CC}
116 gcc48_GXX=${gcc48_CXX}
119 # lang/clang35 (dports)
121 clang35_CC=/usr/local/bin/clang35
122 clang35_CXX=/usr/local/bin/clang++35
123 clang35_CPP=/usr/local/bin/clang-cpp35
124 clang35_INCOPT=${STD_INCOPT}
125 clang35_INCOPTCXX=${DPORT_CLANG_STD_INCOPTXX}
126 clang35_CLANG=${clang35_CC}
127 clang35_CLANGCXX=${clang35_CXX}
128 clang35_CLANGCPP=${clang35_CPP}
130 # Put the 2 following lines uncommented in /etc/compilers.conf to force
131 # /usr/bin/gcc* to execute the custom clang35 compiler instead of base gcc
132 #     clang35_GCC=${clang35_CC}
133 #     clang35_GXX=${clang35_CXX}
136 # lang/clang36 (dports)
138 clang36_CC=/usr/local/bin/clang36
139 clang36_CXX=/usr/local/bin/clang++36
140 clang36_CPP=/usr/local/bin/clang-cpp36
141 clang36_INCOPT=${STD_INCOPT}
142 clang36_INCOPTCXX=${DPORT_CLANG_STD_INCOPTXX}
143 clang36_CLANG=${clang36_CC}
144 clang36_CLANGCXX=${clang36_CXX}
145 clang36_CLANGCPP=${clang36_CPP}
148 # lang/clang37 (dports)
150 clang37_CC=/usr/local/bin/clang37
151 clang37_CXX=/usr/local/bin/clang++37
152 clang37_CPP=/usr/local/bin/clang-cpp37
153 clang37_INCOPT=${STD_INCOPT}
154 clang37_INCOPTCXX=${DPORT_CLANG_STD_INCOPTXX}
155 clang37_CLANG=${clang37_CC}
156 clang37_CLANGCXX=${clang37_CXX}
157 clang37_CLANGCPP=${clang37_CPP}
160 # devel/llvm-devel (dports)
162 clangnext_CC=/usr/local/bin/clang-devel
163 clangnext_CXX=/usr/local/bin/clang++-devel
164 clangnext_CPP=/usr/local/bin/clang-cpp-devel
165 clangnext_INCOPT=${STD_INCOPT}
166 clangnext_INCOPTCXX=${DPORT_CLANG_STD_INCOPTXX}
167 clangnext_CLANG=${clangnext_CC}
168 clangnext_CLANGCXX=${clangnext_CXX}
169 clangnext_CLANGCPP=${clangnext_CPP}