Revision c82c629337f26377618d6092cd45955fceb17b7f authored by Fons Rademakers on 04 July 2011, 15:43:59 UTC, committed by Fons Rademakers on 04 July 2011, 15:43:59 UTC

git-svn-id: http://root.cern.ch/svn/root/branches/v5-30-00-patches@40128 27541ba8-7e3a-0410-8455-c3a389f83636
1 parent 9432aef
Raw File
Makefile.linuxx8664icc
# -*- mode: makefile -*-
#
# Makefile of ROOT for Linux on AMD64 and Intel EM64T with icc >= v8 compiler

PLATFORM      = linux

DEBUGFLAGS    = -g
OPTFLAGS      = -O
ifeq (debug,$(findstring debug,$(ROOTBUILD)))
OPT           = $(DEBUGFLAGS)
NOOPT         = -O0
else
OPT           = $(OPTFLAGS)
NOOPT         = -O0
endif

# Compiler:
CXX           = icc
CC            = icc
CXXFLAGS      = -fPIC -wd1476 $(EXTRA_CXXFLAGS)
CFLAGS        = -fPIC $(EXTRA_CFLAGS) -restrict
CINTCXXFLAGS  = -fPIC $(EXTRA_CXXFLAGS) \
                -DG__REGEXP -DG__UNIX -DG__SHAREDLIB \
                -DG__OSFDLL -DG__ROOT -DG__REDIRECTIO \
                -DG__STD_EXCEPTION -DG__64BIT
CINTCFLAGS    = -fPIC $(EXTRA_CFLAGS) -restrict \
                -DG__REGEXP -DG__UNIX -DG__SHAREDLIB \
                -DG__OSFDLL -DG__ROOT -DG__REDIRECTIO \
                -DG__STD_EXCEPTION -DG__64BIT

# Linker:
LD            = icpc
LDFLAGS       = $(OPT) $(EXTRA_LDFLAGS)
SOFLAGS       = -shared -Wl,-soname,
SOEXT         = so

# Compiler version:
ICC_MAJOR    := $(shell $(CXX) -v 2>&1 | awk '{ if (NR==1) print $$2 }' | \
                cut -d'.' -f1)
ICC_MINOR    := $(shell $(CXX) -v 2>&1 | awk '{ if (NR==1) print $$2 }' | \
                cut -d'.' -f2)

ifeq ($(ICC_MAJOR),9)
CXXFLAGS     += -wd1572
CFLAGS       += -wd1572
CINTCXXFLAGS += -wd1572
CINTCFLAGS   += -wd1572
ICC_GE_9      = 9
endif

ifeq ($(ICC_MAJOR),10)
CXXFLAGS     += -wd1572
CFLAGS       += -wd1572
CINTCXXFLAGS += -wd1572
CINTCFLAGS   += -wd1572
ICC_GE_9      = 10
ifneq ($(ICC_MINOR),0)
ICC_GE_101    = 101
endif
endif

ifeq ($(ICC_MAJOR),11)
CXXFLAGS     += -m64 -wd1572 -wd279
CFLAGS       += -m64 -wd1572 -wd279
CINTCXXFLAGS += -m64 -wd1572 -wd279
CINTCFLAGS   += -m64 -wd1572 -wd279
LDFLAGS      += -m64
ICC_GE_9      = 11
ICC_GE_101    = 110
endif

ifeq ($(ICC_MAJOR),12)
CXXFLAGS     += -m64 -wd1572 -wd279
CFLAGS       += -m64 -wd1572 -wd279
CINTCXXFLAGS += -m64 -wd1572 -wd279
CINTCFLAGS   += -m64 -wd1572 -wd279
LDFLAGS      += -m64
ICC_GE_9      = 12
ICC_GE_101    = 120
endif

# System libraries:
SYSLIBS       = -limf -lm -ldl $(OSTHREADLIBDIR) $(OSTHREADLIB) \
                $(ALLOCLIBDIR) $(ALLOCLIB) -rdynamic
XLIBS         = $(XPMLIBDIR) $(XPMLIB) $(X11LIBDIR) -lXext -lX11
CILIBS        = -limf -lm -ldl -rdynamic
CRYPTLIBS     = -lcrypt

# Fortran:
ifeq ($(F77),ifort)
F77           = ifort
F77FLAGS      = -fPIC
ifeq ($(ICC_MAJOR),12)
F77LIBS      := -L$(shell which ifort | sed -e 's|bin/intel64/ifort|compiler/lib|') \
                -lifcore
F77FLAGS     += -m64
else
ifeq ($(ICC_MAJOR),11)
F77LIBS      := -L$(shell which ifort | sed -e 's|bin/intel64/ifort|lib/intel64|') \
                -lifcore
F77FLAGS     += -m64
else
F77LIBS      := -L$(shell which ifort | sed -e 's|bin/ifort|lib|') \
                -lifcore
endif
endif
endif

# Extras
back to top