diff --git a/cpp/daal/src/externals/service_stat_mkl.h b/cpp/daal/src/externals/service_stat_mkl.h index fe8647fbc4a..83160afd15a 100644 --- a/cpp/daal/src/externals/service_stat_mkl.h +++ b/cpp/daal/src/externals/service_stat_mkl.h @@ -83,7 +83,6 @@ extern "C" #define __DAAL_VSL_SS_ERROR_BAD_QUANT_ORDER VSL_SS_ERROR_BAD_QUANT_ORDER #define __DAAL_VSL_SS_ERROR_INDICES_NOT_SUPPORTED VSL_SS_ERROR_INDICES_NOT_SUPPORTED - } namespace daal diff --git a/cpp/daal/src/externals/service_stat_ref.h b/cpp/daal/src/externals/service_stat_ref.h index cf502ddef64..e37a067f146 100644 --- a/cpp/daal/src/externals/service_stat_ref.h +++ b/cpp/daal/src/externals/service_stat_ref.h @@ -72,7 +72,6 @@ extern "C" #define __DAAL_VSL_SS_ERROR_BAD_QUANT_ORDER -4022 #define __DAAL_VSL_SS_ERROR_INDICES_NOT_SUPPORTED -4085 - } namespace daal diff --git a/dev/make/common.mk b/dev/make/common.mk index 2f2108700d8..291ca7e406b 100644 --- a/dev/make/common.mk +++ b/dev/make/common.mk @@ -72,40 +72,10 @@ secure.opts.icc.lnx = -Wformat -Wformat-security -O2 -D_FORTIFY_SOURCE=2 -fstack secure.opts.icc.mac = -Wformat -Wformat-security -O2 -D_FORTIFY_SOURCE=2 -fstack-protector -ifeq ($(COMPILER),vc) - DEBL := $(if $(REQDBG),$(if $(OS_is_win),/debug,)) -else ifeq ($(COMPILER),msvc) - DEBL := $(if $(REQDBG),$(if $(OS_is_win),/debug,)) -else - DEBL := $(if $(REQDBG),$(if $(OS_is_win),-debug,)) -endif - secure.opts.link.win = -DYNAMICBASE -NXCOMPAT -ifeq ($(COMPILER),vc) - secure.opts.link.win := /DYNAMICBASE /NXCOMPAT -else ifeq ($(COMPILER),msvc) - secure.opts.link.win := /DYNAMICBASE /NXCOMPAT -endif - secure.opts.link.lnx = -z relro -z now -z noexecstack secure.opts.link.mac = -link.dynamic.flags = -WX -nologo -map - -ifeq ($(COMPILER),vc) - link.dynamic.flags := /WX /nologo /map -else ifeq ($(COMPILER),msvc) - link.dynamic.flags := /WX /nologo /map -endif - -link.dynamic.flags_dpc = -WX -nologo -map -dll - -ifeq ($(COMPILER),vc) - link.dynamic.flags_dpc := /WX /nologo /map /dll -else ifeq ($(COMPILER),msvc) - link.dynamic.flags_dpc := /WX /nologo /map /dll -endif - RC.COMPILE = rc.exe $(RCOPT) -fo$@ $< # Used as $(eval $(call set_c_compile,$(COMPILER),$(_OS),$(gcc_toolchain)) @@ -147,7 +117,7 @@ LINK.DYNAMIC = $(mkdir)$(call rm,$@)$(link.dynamic.cmd) link.dynamic.cmd = $(call link.dynamic.$(_OS),$(secure.opts.link.$(_OS)) $(or $1,$(^.no-mkdeps)) $(LOPT)) link.dynamic.lnx = $(if $(link.dynamic.lnx.$(COMPILER)),$(link.dynamic.lnx.$(COMPILER)),$(error link.dynamic.lnx.$(COMPILER) must be defined)) \ -Wl,-soname,$(@F).$(MAJORBINARY) -shared $(-sGRP) $(patsubst %_link.txt,@%_link.txt,$(patsubst %_link.def,@%_link.def,$1)) $(-eGRP) -o $@ -link.dynamic.win = link $(link.dynamic.win.$(COMPILER)) $(link.dynamic.flags) $(DEBL) \ +link.dynamic.win = link $(link.dynamic.win.$(COMPILER)) -WX -nologo -map -dll $(-DEBL) \ $(patsubst %_link.txt,@%_link.txt,$(patsubst %.def,-DEF:%.def,$1)) -out:$@ link.dynamic.mac = $(if $(link.dynamic.mac.$(COMPILER)),$(link.dynamic.mac.$(COMPILER)),$(error link.dynamic.mac.$(COMPILER) must be defined)) \ -undefined dynamic_lookup -dynamiclib -Wl,-flat_namespace -Wl,-install_name,@rpath/$(subst .dylib,.$(MAJORBINARY).dylib,$(@F)) \ @@ -162,7 +132,7 @@ dpc.link.dynamic.lnx = $(if $(link.dynamic.lnx.dpcpp),$(link.dynamic.lnx.dpcpp), $(secure.opts.link.lnx) -shared $(-sGRP) $(patsubst %_link.txt,@%_link.txt,$(patsubst %_link.def,@%_link.def,$1)) $(-eGRP) -o $@ dpc.link.dynamic.win = $(if $(link.dynamic.win.dpcpp),$(link.dynamic.win.dpcpp),$(error link.dynamic.win.dpcpp must be defined)) \ -LD $(patsubst %_link.txt,@%_link.txt,$(filter %_link.txt,$1)) $(filter-out -IMPLIB:%,$(filter %.lib,$1)) -o$@ \ - -link $(secure.opts.link.win) $(filter -IMPLIB:%,$1) $(patsubst %.def,-DEF:%.def,$(filter %.def,$1)) $(link.dynamic.flags_dpc) $(DEBL) + -link $(secure.opts.link.win) $(filter -IMPLIB:%,$1) $(patsubst %.def,-DEF:%.def,$(filter %.def,$1)) -WX -nologo -map $(-DEBL) LINK.DYNAMIC.POST = $(call link.dynamic.post.$(_OS)) link.dynamic.post.lnx = diff --git a/dev/make/deps.mkl.mk b/dev/make/deps.mkl.mk index e9c6938dbde..5fd39feab7d 100644 --- a/dev/make/deps.mkl.mk +++ b/dev/make/deps.mkl.mk @@ -18,6 +18,22 @@ # Math backend (MKL) definitions for makefile #-- +ifdef PLAT + ifeq ($(PLAT),lnx32e) + start_group := -Wl,--start-group + end_group := -Wl,--end-group + else ifeq ($(PLAT),mac32e) + start_group := -Wl,--start-group + end_group := -Wl,--end-group + else ifeq ($(PLAT),fbsd32e) + start_group := -Wl,--start-group + end_group := -Wl,--end-group + else ifeq ($(PLAT),win32e) + start_group := + end_group := + endif +endif + MKLFPKDIR:= $(subst \,/,$(MKLROOT)) MKLFPKDIR.include := $(MKLFPKDIR)/include MKLFPKDIR.libia := $(MKLFPKDIR)/lib @@ -35,7 +51,8 @@ daaldep.math_backend_oneapi.incdir := $(MKLFPKDIR.include) $(MKLGPUFPKDIR.includ daaldep.lnx32e.mkl.thr := $(MKLFPKDIR.libia)/$(plib)mkl_tbb_thread.$a daaldep.lnx32e.mkl.seq := $(MKLFPKDIR.libia)/$(plib)mkl_sequential.$a -daaldep.lnx32e.mkl.core := $(MKLFPKDIR.libia)/$(plib)mkl_core.$a $(MKLFPKDIR.libia)/$(plib)mkl_intel_ilp64.$a +daaldep.lnx32e.mkl.core := $(MKLFPKDIR.libia)/$(plib)mkl_core.$a +daaldep.lnx32e.mkl.interfaces := $(MKLFPKDIR.libia)/$(plib)mkl_intel_ilp64.$a daaldep.lnx32e.mkl.sycl := $(MKLGPUFPKDIR.lib)/$(plib)mkl_sycl.$a daaldep.win32e.mkl.thr := $(MKLFPKDIR.libia)/mkl_tbb_thread$d.$a @@ -54,6 +71,7 @@ daaldep.fbsd32e.mkl.seq := $(MKLFPKDIR.libia)/$(plib)daal_mkl_sequential.$a daaldep.fbsd32e.mkl := $(MKLFPKDIR.libia)/$(plib)daal_vmlipp_core.$a daaldep.mkl := $(daaldep.$(PLAT).mkl.core) +daaldep.mkl_interfaces := $(daaldep.$(PLAT).mkl.interfaces) daaldep.math_backend.thr := $(daaldep.$(PLAT).mkl.thr) daaldep.math_backend.seq := $(daaldep.$(PLAT).mkl.seq) daaldep.math_backend.sycl := $(daaldep.$(PLAT).mkl.sycl) @@ -73,6 +91,6 @@ daaldep.fbsd32e.ipp := $(if $(COV.libia),$(COV.libia)/libcov.a) daaldep.vml := $(daaldep.$(PLAT).vml) daaldep.ipp := $(daaldep.$(PLAT).ipp) -daaldep.math_backend.ext := $(daaldep.ipp) $(daaldep.vml) $(daaldep.mkl) +daaldep.math_backend.ext := $(start_group) $(daaldep.ipp) $(daaldep.vml) $(daaldep.mkl_interfaces) $(daaldep.math_backend.thr) $(daaldep.mkl) $(end_group) daaldep.math_backend.sycl := $(daaldep.math_backend.sycl) daaldep.math_backend.oneapi := $(daaldep.ipp) $(daaldep.vml) $(daaldep.mkl)