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.txt44
-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, 61 insertions, 16 deletions
diff --git a/src/build-data/cc/bcc.txt b/src/build-data/cc/bcc.txt
index df09daff0..4315c379f 100644
--- a/src/build-data/cc/bcc.txt
+++ b/src/build-data/cc/bcc.txt
@@ -1,4 +1,4 @@
-realname "Borland C++"
+macro_name "BORLAND"
binary_name "bcc32"
diff --git a/src/build-data/cc/clang.txt b/src/build-data/cc/clang.txt
new file mode 100644
index 000000000..18f3580ce
--- /dev/null
+++ b/src/build-data/cc/clang.txt
@@ -0,0 +1,44 @@
+# 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..9ad6514ab 100644
--- a/src/build-data/cc/compaq.txt
+++ b/src/build-data/cc/compaq.txt
@@ -1,4 +1,4 @@
-realname "Compaq C++"
+macro_name "COMPAQ"
binary_name "cxx"
diff --git a/src/build-data/cc/ekopath.txt b/src/build-data/cc/ekopath.txt
index ca2471059..ecd813629 100644
--- a/src/build-data/cc/ekopath.txt
+++ b/src/build-data/cc/ekopath.txt
@@ -1,4 +1,4 @@
-realname "PathScale EKOPath C++"
+macro_name "PATHSCALE"
binary_name "pathCC"
diff --git a/src/build-data/cc/gcc.txt b/src/build-data/cc/gcc.txt
index 978ed6d58..370bb84d7 100644
--- a/src/build-data/cc/gcc.txt
+++ b/src/build-data/cc/gcc.txt
@@ -1,4 +1,4 @@
-realname "GNU C++"
+macro_name "GCC"
binary_name "g++"
@@ -14,10 +14,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..5bde87de9 100644
--- a/src/build-data/cc/hpcc.txt
+++ b/src/build-data/cc/hpcc.txt
@@ -1,4 +1,4 @@
-realname "HP-UX C++"
+macro_name "HP_ACC"
binary_name "aCC"
diff --git a/src/build-data/cc/icc.txt b/src/build-data/cc/icc.txt
index 7d8e9682f..628a59e2d 100644
--- a/src/build-data/cc/icc.txt
+++ b/src/build-data/cc/icc.txt
@@ -1,4 +1,4 @@
-realname "Intel C++"
+macro_name "INTEL"
binary_name "icpc"
diff --git a/src/build-data/cc/kai.txt b/src/build-data/cc/kai.txt
index 8585e54e0..d0ff1c28a 100644
--- a/src/build-data/cc/kai.txt
+++ b/src/build-data/cc/kai.txt
@@ -1,4 +1,4 @@
-realname "KAI C++"
+macro_name "KAI"
binary_name "KCC"
diff --git a/src/build-data/cc/mipspro.txt b/src/build-data/cc/mipspro.txt
index b75fc4fb3..c518f4c26 100644
--- a/src/build-data/cc/mipspro.txt
+++ b/src/build-data/cc/mipspro.txt
@@ -1,4 +1,4 @@
-realname "SGI MIPSPro C++"
+macro_name "MIPSPRO"
binary_name "CC"
diff --git a/src/build-data/cc/msvc.txt b/src/build-data/cc/msvc.txt
index 68e4517f8..603ea449b 100644
--- a/src/build-data/cc/msvc.txt
+++ b/src/build-data/cc/msvc.txt
@@ -1,4 +1,4 @@
-realname "Visual C++"
+macro_name "MSVC"
binary_name "cl.exe"
diff --git a/src/build-data/cc/open64.txt b/src/build-data/cc/open64.txt
index b7c1e9e99..e794c755e 100644
--- a/src/build-data/cc/open64.txt
+++ b/src/build-data/cc/open64.txt
@@ -1,4 +1,4 @@
-realname "Open64"
+macro_name "OPEN64"
binary_name "openCC"
diff --git a/src/build-data/cc/pgi.txt b/src/build-data/cc/pgi.txt
index 35f466477..a6d2416ab 100644
--- a/src/build-data/cc/pgi.txt
+++ b/src/build-data/cc/pgi.txt
@@ -1,4 +1,4 @@
-realname "Portland Group C++"
+macro_name "PORTLAND_GROUP"
binary_name "pgCC"
diff --git a/src/build-data/cc/sgipro64.txt b/src/build-data/cc/sgipro64.txt
index 28132ffcc..073f2fec0 100644
--- a/src/build-data/cc/sgipro64.txt
+++ b/src/build-data/cc/sgipro64.txt
@@ -1,4 +1,4 @@
-realname "SGI Pro64"
+macro_name "SGI_PRO64"
binary_name "sgiCC"
diff --git a/src/build-data/cc/sunwspro.txt b/src/build-data/cc/sunwspro.txt
index e1bc0b26f..7065d4129 100644
--- a/src/build-data/cc/sunwspro.txt
+++ b/src/build-data/cc/sunwspro.txt
@@ -1,4 +1,4 @@
-realname "Sun Workshop Pro C++"
+macro_name "SUN_WORKSHOP"
binary_name "CC"
diff --git a/src/build-data/cc/xlc.txt b/src/build-data/cc/xlc.txt
index 64b888421..521624395 100644
--- a/src/build-data/cc/xlc.txt
+++ b/src/build-data/cc/xlc.txt
@@ -1,4 +1,4 @@
-realname "IBM XL C/C++"
+macro_name "IBM_XLC"
binary_name "xlC"