wmake: Added support for the new OneAPI Intel compiler
The icx and icpx Intel compilers are selected by WM_COMPILER=Icx These compilers are based on the Clang front-end and hence the configuration files are based on and nearly identical to those for Clang. Support for the new OneAPI compilers replaces the now deprecated Intel icc, icpc compilers.
This commit is contained in:
16
wmake/rules/linuxIcx/c
Normal file
16
wmake/rules/linuxIcx/c
Normal file
@ -0,0 +1,16 @@
|
||||
SUFFIXES += .c
|
||||
|
||||
cWARN =
|
||||
|
||||
cc = icc -gcc-version=400
|
||||
|
||||
include $(DEFAULT_RULES)/c$(WM_COMPILE_OPTION)
|
||||
|
||||
cFLAGS = $(GFLAGS) $(cWARN) $(cOPT) $(cDBUG) $(LIB_HEADER_DIRS) -KPIC
|
||||
|
||||
ctoo = $(WM_SCHEDULER) $(cc) $(cFLAGS) -c $< -o $@
|
||||
|
||||
LINK_LIBS = $(cDBUG)
|
||||
|
||||
LINKLIBSO = $(cc) $(cFLAGS) -shared
|
||||
LINKEXE = $(cc) $(cFLAGS) -Xlinker --add-needed -Xlinker -z -Xlinker nodefs
|
||||
27
wmake/rules/linuxIcx/c++
Normal file
27
wmake/rules/linuxIcx/c++
Normal file
@ -0,0 +1,27 @@
|
||||
SUFFIXES += .C
|
||||
|
||||
c++WARN = -Wall -Wextra -Wold-style-cast -Wnon-virtual-dtor \
|
||||
-Wno-unused-parameter -Wno-invalid-offsetof \
|
||||
-Wno-undefined-var-template
|
||||
|
||||
# Suppress some warnings for flex++ and CGAL
|
||||
c++LESSWARN = -Wno-old-style-cast -Wno-unused-local-typedefs \
|
||||
-Wno-tautological-undefined-compare -Wno-shift-negative-value
|
||||
|
||||
CC = icpc -std=c++14 -fp-model precise
|
||||
|
||||
include $(DEFAULT_RULES)/c++$(WM_COMPILE_OPTION)
|
||||
|
||||
ptFLAGS = -DNoRepository -ftemplate-depth-100
|
||||
|
||||
c++FLAGS = $(GFLAGS) $(c++WARN) $(c++OPT) $(c++DBUG) $(ptFLAGS) $(LIB_HEADER_DIRS) -KPIC
|
||||
|
||||
Ctoo = $(WM_SCHEDULER) $(CC) $(c++FLAGS) -c $< -o $@
|
||||
cxxtoo = $(Ctoo)
|
||||
cctoo = $(Ctoo)
|
||||
cpptoo = $(Ctoo)
|
||||
|
||||
LINK_LIBS = $(c++DBUG)
|
||||
|
||||
LINKLIBSO = $(CC) $(c++FLAGS) -shared
|
||||
LINKEXE = $(CC) $(c++FLAGS) -Xlinker --add-needed
|
||||
2
wmake/rules/linuxIcx/c++Debug
Normal file
2
wmake/rules/linuxIcx/c++Debug
Normal file
@ -0,0 +1,2 @@
|
||||
c++DBUG = -g -DFULLDEBUG -O0
|
||||
c++OPT =
|
||||
2
wmake/rules/linuxIcx/c++Opt
Normal file
2
wmake/rules/linuxIcx/c++Opt
Normal file
@ -0,0 +1,2 @@
|
||||
c++DBUG =
|
||||
c++OPT = -O3
|
||||
2
wmake/rules/linuxIcx/c++Prof
Normal file
2
wmake/rules/linuxIcx/c++Prof
Normal file
@ -0,0 +1,2 @@
|
||||
c++DBUG = -pg
|
||||
c++OPT = -O2
|
||||
2
wmake/rules/linuxIcx/cDebug
Normal file
2
wmake/rules/linuxIcx/cDebug
Normal file
@ -0,0 +1,2 @@
|
||||
cDBUG = -g -DFULLDEBUG -O0
|
||||
cOPT =
|
||||
2
wmake/rules/linuxIcx/cOpt
Normal file
2
wmake/rules/linuxIcx/cOpt
Normal file
@ -0,0 +1,2 @@
|
||||
cDBUG =
|
||||
cOPT = -O3
|
||||
2
wmake/rules/linuxIcx/cProf
Normal file
2
wmake/rules/linuxIcx/cProf
Normal file
@ -0,0 +1,2 @@
|
||||
cDBUG = -pg
|
||||
cOPT = -O2
|
||||
8
wmake/rules/linuxIcx/general
Normal file
8
wmake/rules/linuxIcx/general
Normal file
@ -0,0 +1,8 @@
|
||||
LD = ld -melf_i386
|
||||
|
||||
PROJECT_LIBS = -l$(WM_PROJECT) -ldl
|
||||
|
||||
include $(GENERAL_RULES)/standard
|
||||
|
||||
include $(DEFAULT_RULES)/c
|
||||
include $(DEFAULT_RULES)/c++
|
||||
Reference in New Issue
Block a user