summaryrefslogtreecommitdiff
path: root/include/makeinclude/platform_linux_icc.GNU
diff options
context:
space:
mode:
Diffstat (limited to 'include/makeinclude/platform_linux_icc.GNU')
-rw-r--r--include/makeinclude/platform_linux_icc.GNU32
1 files changed, 17 insertions, 15 deletions
diff --git a/include/makeinclude/platform_linux_icc.GNU b/include/makeinclude/platform_linux_icc.GNU
index df8ee77e647..2709f2f616f 100644
--- a/include/makeinclude/platform_linux_icc.GNU
+++ b/include/makeinclude/platform_linux_icc.GNU
@@ -52,25 +52,26 @@ PLATFORM_WX_LDFLAGS = $(shell wx-config --ldflags) $(PLATFORM_GTK_LDFLAGS)
PLATFORM_AIO_SUPPORT := \
$(shell test -e /usr/lib/librt.so && echo -DACE_HAS_AIO_CALLS)
+#
+# Intel compiler comes in two flavors with different binaries. The first,
+# icc, is for IA32 platforms and the second, ecc, is for IA64 platforms.
+# They share most options except those influencing target machine code
+# generation, therefore we should pick sensible defaults for both
+# depending on system architecture.
+#
SYSARCH := $(shell uname -m)
ifeq ($(insure),1)
- CC = insure
- CXX = insure
+CC = insure
+CXX = insure
else
- CC = icc
- CXX = icc
-endif
-
-ifndef CXX_VERSION
- CXX_VERSION := $(shell $(CXX) --version)
-endif
-
-ifeq (8.0,$(findstring 8.0,$(CXX_VERSION)))
- CFLAGS += -wd1476,1505
-endif
-ifeq (8.1,$(findstring 8.1,$(CXX_VERSION)))
- CFLAGS += -wd1476,1505 -no-gcc
+ ifeq ($(SYSARCH),ia64)
+ CC = ecc
+ CXX = ecc
+ else
+ CC = icc
+ CXX = icc
+ endif
endif
CFLAGS += -w1
@@ -78,6 +79,7 @@ ifeq ($(threads),1)
CPPFLAGS += -D_REENTRANT $(PLATFORM_AIO_SUPPORT)
endif # threads
+
CCFLAGS += $(CFLAGS) $(IMPLICIT_TEMPLATES_FLAG) -ip
DCFLAGS += -g
DLD = $(CXX)