Index: etc/config/icc.config =================================================================== --- etc/config/icc.config (revision 509218) +++ etc/config/icc.config (working copy) @@ -15,8 +15,11 @@ endif CCVER := $(shell $(CXX) -V foo.c 2>&1 | sed -n "s/.*Version *\([0-9.]*\).*/\1/p") +CXX_MAJOR := $(shell echo "$(CCVER)" | sed "s/^\([1-9][0-9]*\).*/\1/") +CXX_MINOR := $(shell echo "$(CCVER)" | sed "s/[1-9]*\.\([0-9]*\).*/\1/") + + CPPFLAGS = -I$(TOPDIR)/include/ansi -CXXFLAGS = -Xc -no_cpprt WARNFLAGS = -w1 PHWARNFLAGS = @@ -26,11 +29,22 @@ ICCDIR = `which $(CXX) | sed 's:bin/$(CXX):lib:'` -LD = $(CXX) -no_cpprt $(ICCDIR)/crtxi.o -LDFLAGS = LDSOFLAGS = -shared -LDLIBS = -Bstatic -lcxa -lunwind -Bdynamic $(ICCDIR)/crtxn.o +# -cxxlib-nostd, present in all compilers since 8.1, will be documented in 10.x +ifeq ($(shell [ $(CXX_MAJOR) -gt 8 -o $(CXX_MAJOR) -eq 8 -a $(CXX_MINOR) -ge 1 ]), 0) + LD = $(CXX) -no_cpprt $(ICCDIR)/crtxi.o + CXXFLAGS = -Xc -no_cpprt + LDFLAGS = + LDLIBS = -Bstatic -lcxa -lunwind -Bdynamic $(ICCDIR)/crtxn.o +else + LD = $(CXX) + CXXFLAGS = -cxxlib-nostd + LDFLAGS = -cxxlib-nostd + LDLIBS = -lcxaguard -lsupc++ +endif + + # The flag(s) to use to embed a library search path into generated executables. RPATH = -Wl,-R