aboutsummaryrefslogtreecommitdiffstats
path: root/src/build-data/cc
diff options
context:
space:
mode:
Diffstat (limited to 'src/build-data/cc')
-rw-r--r--src/build-data/cc/bcc.txt2
-rw-r--r--src/build-data/cc/clang.txt46
-rw-r--r--src/build-data/cc/compaq.txt2
-rw-r--r--src/build-data/cc/ekopath.txt2
-rw-r--r--src/build-data/cc/gcc.txt7
-rw-r--r--src/build-data/cc/hpcc.txt2
-rw-r--r--src/build-data/cc/icc.txt2
-rw-r--r--src/build-data/cc/kai.txt2
-rw-r--r--src/build-data/cc/mipspro.txt2
-rw-r--r--src/build-data/cc/msvc.txt2
-rw-r--r--src/build-data/cc/open64.txt2
-rw-r--r--src/build-data/cc/pgi.txt2
-rw-r--r--src/build-data/cc/sgipro64.txt2
-rw-r--r--src/build-data/cc/sunwspro.txt2
-rw-r--r--src/build-data/cc/xlc.txt2
15 files changed, 77 insertions, 2 deletions
diff --git a/src/build-data/cc/bcc.txt b/src/build-data/cc/bcc.txt
index df09daff0..fe88c270e 100644
--- a/src/build-data/cc/bcc.txt
+++ b/src/build-data/cc/bcc.txt
@@ -1,5 +1,7 @@
realname "Borland C++"
+macro_name "BORLAND"
+
binary_name "bcc32"
compile_option "-c "
diff --git a/src/build-data/cc/clang.txt b/src/build-data/cc/clang.txt
new file mode 100644
index 000000000..480794faf
--- /dev/null
+++ b/src/build-data/cc/clang.txt
@@ -0,0 +1,46 @@
+realname "Clang/LLVM"
+
+# Largely copied from the gcc config
+
+macro_name "CLANG"
+
+binary_name clang
+
+compile_option "-c "
+output_to_option "-o "
+add_include_dir_option "-I"
+add_lib_dir_option "-L"
+add_lib_option "-l"
+
+lang_flags "-D_REENTRANT -ansi -Wno-long-long"
+warning_flags "-W -Wall"
+
+makefile_style unix
+
+lib_opt_flags "-O2"
+check_opt_flags "-O2"
+shared_flags "-fPIC"
+debug_flags "-g"
+no_debug_flags "-finline-functions"
+
+<so_link_flags>
+# The default works for GNU ld and several other Unix linkers
+default -> "$(CXX) -shared -fPIC -Wl,-soname,$(SONAME)"
+</so_link_flags>
+
+<mach_abi_linking>
+amd64 -> "-m64"
+mips64 -> "-mabi=64"
+s390 -> "-m31"
+s390x -> "-m64"
+sparc32 -> "-m32 -mno-app-regs"
+sparc64 -> "-m64 -mno-app-regs"
+ppc64 -> "-m64"
+
+# This should probably be used on most/all targets, but the docs are incomplete
+openbsd -> "-pthread"
+freebsd -> "-pthread"
+dragonfly -> "-pthread"
+netbsd -> "-pthread -D_NETBSD_SOURCE"
+qnx -> "-fexceptions -D_QNX_SOURCE"
+</mach_abi_linking>
diff --git a/src/build-data/cc/compaq.txt b/src/build-data/cc/compaq.txt
index 66d3a5219..94075e888 100644
--- a/src/build-data/cc/compaq.txt
+++ b/src/build-data/cc/compaq.txt
@@ -1,5 +1,7 @@
realname "Compaq C++"
+macro_name "COMPAQ"
+
binary_name "cxx"
compile_option "-c "
diff --git a/src/build-data/cc/ekopath.txt b/src/build-data/cc/ekopath.txt
index ca2471059..38516e2f3 100644
--- a/src/build-data/cc/ekopath.txt
+++ b/src/build-data/cc/ekopath.txt
@@ -1,5 +1,7 @@
realname "PathScale EKOPath C++"
+macro_name "PATHSCALE"
+
binary_name "pathCC"
compile_option "-c "
diff --git a/src/build-data/cc/gcc.txt b/src/build-data/cc/gcc.txt
index 978ed6d58..9adef8cfb 100644
--- a/src/build-data/cc/gcc.txt
+++ b/src/build-data/cc/gcc.txt
@@ -1,5 +1,7 @@
realname "GNU C++"
+macro_name "GCC"
+
binary_name "g++"
compiler_has_tr1 yes
@@ -14,10 +16,11 @@ lang_flags "-D_REENTRANT -ansi -Wno-long-long"
warning_flags "-W -Wall"
#warning_flags "-Wextra -Wall -Wstrict-aliasing -Wstrict-overflow=5 -Wcast-align -Wmissing-declarations -Wno-unused-parameter"
-lib_opt_flags "-O2 -finline-functions"
-check_opt_flags "-O2"
+lib_opt_flags "-O2"
+check_opt_flags "-O"
shared_flags "-fPIC"
debug_flags "-g"
+no_debug_flags "-finline-functions"
dll_import_flags ""
dll_export_flags ""
diff --git a/src/build-data/cc/hpcc.txt b/src/build-data/cc/hpcc.txt
index 284e92ca6..9c0d4a784 100644
--- a/src/build-data/cc/hpcc.txt
+++ b/src/build-data/cc/hpcc.txt
@@ -1,5 +1,7 @@
realname "HP-UX C++"
+macro_name "HP_ACC"
+
binary_name "aCC"
compile_option "-c "
diff --git a/src/build-data/cc/icc.txt b/src/build-data/cc/icc.txt
index 7d8e9682f..9595714f6 100644
--- a/src/build-data/cc/icc.txt
+++ b/src/build-data/cc/icc.txt
@@ -1,5 +1,7 @@
realname "Intel C++"
+macro_name "INTEL"
+
binary_name "icpc"
compiler_has_tr1 yes
diff --git a/src/build-data/cc/kai.txt b/src/build-data/cc/kai.txt
index 8585e54e0..52ddba4ab 100644
--- a/src/build-data/cc/kai.txt
+++ b/src/build-data/cc/kai.txt
@@ -1,5 +1,7 @@
realname "KAI C++"
+macro_name "KAI"
+
binary_name "KCC"
compile_option "-c "
diff --git a/src/build-data/cc/mipspro.txt b/src/build-data/cc/mipspro.txt
index b75fc4fb3..a4cfbd1ee 100644
--- a/src/build-data/cc/mipspro.txt
+++ b/src/build-data/cc/mipspro.txt
@@ -1,5 +1,7 @@
realname "SGI MIPSPro C++"
+macro_name "MIPSPRO"
+
binary_name "CC"
compile_option "-c "
diff --git a/src/build-data/cc/msvc.txt b/src/build-data/cc/msvc.txt
index 68e4517f8..c19d93e2b 100644
--- a/src/build-data/cc/msvc.txt
+++ b/src/build-data/cc/msvc.txt
@@ -1,5 +1,7 @@
realname "Visual C++"
+macro_name "MSVC"
+
binary_name "cl.exe"
compile_option "/nologo /c "
diff --git a/src/build-data/cc/open64.txt b/src/build-data/cc/open64.txt
index b7c1e9e99..0157440cf 100644
--- a/src/build-data/cc/open64.txt
+++ b/src/build-data/cc/open64.txt
@@ -1,5 +1,7 @@
realname "Open64"
+macro_name "OPEN64"
+
binary_name "openCC"
compile_option "-c "
diff --git a/src/build-data/cc/pgi.txt b/src/build-data/cc/pgi.txt
index 35f466477..c4fdb9e70 100644
--- a/src/build-data/cc/pgi.txt
+++ b/src/build-data/cc/pgi.txt
@@ -1,5 +1,7 @@
realname "Portland Group C++"
+macro_name "PORTLAND_GROUP"
+
binary_name "pgCC"
compile_option "-c "
diff --git a/src/build-data/cc/sgipro64.txt b/src/build-data/cc/sgipro64.txt
index 28132ffcc..be91ac69a 100644
--- a/src/build-data/cc/sgipro64.txt
+++ b/src/build-data/cc/sgipro64.txt
@@ -1,5 +1,7 @@
realname "SGI Pro64"
+macro_name "SGI_PRO64"
+
binary_name "sgiCC"
compile_option "-c "
diff --git a/src/build-data/cc/sunwspro.txt b/src/build-data/cc/sunwspro.txt
index e1bc0b26f..9756f8538 100644
--- a/src/build-data/cc/sunwspro.txt
+++ b/src/build-data/cc/sunwspro.txt
@@ -1,5 +1,7 @@
realname "Sun Workshop Pro C++"
+macro_name "SUN_WORKSHOP"
+
binary_name "CC"
compile_option "-c "
diff --git a/src/build-data/cc/xlc.txt b/src/build-data/cc/xlc.txt
index 64b888421..6d06b4c43 100644
--- a/src/build-data/cc/xlc.txt
+++ b/src/build-data/cc/xlc.txt
@@ -1,5 +1,7 @@
realname "IBM XL C/C++"
+macro_name "IBM_XLC"
+
binary_name "xlC"
compile_option "-c "