# Makefile of ROOT for Linux with glibc and Intel icc 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 = $(EXTRA_CXXFLAGS)
CFLAGS = $(EXTRA_CFLAGS) -restrict
CINTCXXFLAGS = $(EXTRA_CXXFLAGS) \
-DG__REGEXP -DG__UNIX -DG__SHAREDLIB \
-DG__OSFDLL -DG__ROOT -DG__REDIRECTIO
CINTCFLAGS = $(EXTRA_CFLAGS) -restrict \
-DG__REGEXP -DG__UNIX -DG__SHAREDLIB \
-DG__OSFDLL -DG__ROOT -DG__REDIRECTIO
# Compiler version:
ICC_MAJOR := $(shell $(CXX) -V 2>&1 | awk '{ if (NR==1) print $$8 }' | \
cut -d'.' -f1)
ICC_MINOR := $(shell $(CXX) -V 2>&1 | awk '{ if (NR==1) print $$8 }' | \
cut -d'.' -f2)
# Linker:
LD = icc
LDFLAGS = $(OPT) $(EXTRA_LDFLAGS)
SOFLAGS = -shared -Wl,-soname,
SOEXT = so
# System libraries:
SYSLIBS = -lm -ldl $(OSTHREADLIBDIR) $(OSTHREADLIB) -rdynamic
XLIBS = $(XPMLIBDIR) $(XPMLIB) $(X11LIBDIR) -lX11
CILIBS = -lm -ldl -rdynamic
CRYPTLIBS = -lcrypt
# Fortran:
ifeq ($(ICC_MAJOR),8)
F77 = ifort
else
F77 = ifc
endif
F77FLAGS =
# check path for libg2c and libfrtbegin
LIBG2C := $(shell gcc -print-file-name=libg2c.a | \
awk '{ if ($$1 != "libg2c.a") print $$1}')
LIBFRTBEGIN := $(shell gcc -print-file-name=libfrtbegin.a | \
awk '{ if ($$1 != "libfrtbegin.a") print $$1}')
ifeq ($(ICC_MAJOR),8)
F77LIBS = $(LIBFRTBEGIN) $(LIBG2C) \
-L$(shell which ifort | sed -e 's|bin/ifort|lib|') \
-lifcore
else
F77LIBS = $(LIBFRTBEGIN) $(LIBG2C) \
-L$(shell which ifc | sed -e 's|bin/ifc|lib|') \
-lF90 -lCEPCF90 -lintrins
endif
# Extras