forked from root-project/root
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Makefile.linuxx8664icc
96 lines (85 loc) · 2.47 KB
/
Makefile.linuxx8664icc
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
# -*- mode: makefile -*-
#
# Makefile of ROOT for Linux on AMD64 and Intel EM64T with icc >= v8 compiler
PLATFORM = linux
DEBUGFLAGS = -g
OPTFLAGS = -O -DNDEBUG
ifeq (debug,$(findstring debug,$(ROOTBUILD)))
OPT = $(DEBUGFLAGS)
NOOPT = -O0
else
OPT = $(OPTFLAGS)
NOOPT = -O0
endif
ifeq ($(CXX14),yes)
CXX11FLAGS = -std=c++1y
else
CXX11FLAGS = -std=c++11
endif
# Compiler:
CXX = icc
CC = icc
CXXFLAGS = -fPIC $(CXX11FLAGS) -wd1476 $(EXTRA_CXXFLAGS) $(USERCONF_CXXFLAGS)
CFLAGS = -fPIC $(EXTRA_CFLAGS) -restrict $(USERCONF_CFLAGS)
# 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),version)
ICC_MAJOR := $(shell $(CXX) -v 2>&1 | awk '{ if (NR==1) print $$3 }' | \
cut -d'.' -f1)
ICC_MINOR := $(shell $(CXX) -v 2>&1 | awk '{ if (NR==1) print $$3 }' | \
cut -d'.' -f2)
endif
ifeq ($(ICC_MAJOR),9)
CXXFLAGS += -wd1572
CFLAGS += -wd1572
ICC_GE_9 = $(ICC_MAJOR)
endif
ifeq ($(ICC_MAJOR),10)
CXXFLAGS += -wd1572
CFLAGS += -wd1572
ICC_GE_9 = $(ICC_MAJOR)
ifneq ($(ICC_MINOR),0)
ICC_GE_101 = $(ICC_MAJOR)$(ICC_MINOR)
endif
endif
ifeq ($(findstring $(ICC_MAJOR),10 9),)
CXXFLAGS += -m64 -wd1572 -wd279
CFLAGS += -m64 -wd1572 -wd279
LDFLAGS += -m64
ICC_GE_9 = $(ICC_MAJOR)
ICC_GE_101 = $(ICC_MAJOR)$(ICC_MINOR)
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 ($(findstring $(ICC_MAJOR),11 10 9),)
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