From f54cbb245206aac8bb9e128383d2a739043100ea Mon Sep 17 00:00:00 2001 From: Alexandr-Solovev Date: Thu, 9 Apr 2026 03:29:01 -0700 Subject: [PATCH 01/10] experimental --- makefile | 53 +++++++---------------------------------------------- 1 file changed, 7 insertions(+), 46 deletions(-) diff --git a/makefile b/makefile index b748a94d864..d3bddab4110 100644 --- a/makefile +++ b/makefile @@ -377,12 +377,9 @@ release.ONEAPI.LIBS_A := $(oneapi_a) \ release.ONEAPI.LIBS_Y := $(oneapi_y) # DPC++ static library is only built on Windows -ifdef OS_is_win -release.ONEAPI.LIBS_A.dpc := $(oneapi_a.dpc) \ - $(if $(OS_is_win),$(foreach ilib,$(oneapi_a.dpc),$(ilib:%.lib=%_dll.lib)),) -else + release.ONEAPI.LIBS_A.dpc := -endif + release.ONEAPI.LIBS_Y.dpc := $(oneapi_y.dpc) release.PARAMETERS.LIBS_A := $(parameters_a) \ @@ -651,11 +648,9 @@ ONEAPI.srcs.mangled.dpc := $(subst /,-,$(ONEAPI.srcs.dpc)) ONEAPI.objs_a := $(ONEAPI.srcs.mangled:%.cpp=$(ONEAPI.tmpdir_a)/%.$o) ONEAPI.objs_y := $(ONEAPI.srcs.mangled:%.cpp=$(ONEAPI.tmpdir_y)/%.$o) # DPC++ static library is only built on Windows -ifdef OS_is_win -ONEAPI.objs_a.dpc := $(ONEAPI.srcs.mangled.dpc:%.cpp=$(ONEAPI.tmpdir_a.dpc)/%.$o) -else + ONEAPI.objs_a.dpc := -endif + ONEAPI.objs_y.dpc := $(ONEAPI.srcs.mangled.dpc:%.cpp=$(ONEAPI.tmpdir_y.dpc)/%.$o) ONEAPI.objs_a.all := $(ONEAPI.objs_a) $(ONEAPI.objs_a.dpc) ONEAPI.objs_y.all := $(ONEAPI.objs_y) $(ONEAPI.objs_y.dpc) @@ -677,17 +672,12 @@ endef $(eval $(call .populate_cpus,ONEAPI.objs_a,$(ONEAPI.objs_a))) $(eval $(call .populate_cpus,ONEAPI.objs_y,$(ONEAPI.objs_y))) # DPC++ static library is only built on Windows -ifdef OS_is_win -$(eval $(call .populate_cpus,ONEAPI.objs_a.dpc,$(ONEAPI.objs_a.dpc))) -endif + $(eval $(call .populate_cpus,ONEAPI.objs_y.dpc,$(ONEAPI.objs_y.dpc))) -include $(ONEAPI.tmpdir_a)/*.d -include $(ONEAPI.tmpdir_y)/*.d # DPC++ static library is only built on Windows -ifdef OS_is_win --include $(ONEAPI.tmpdir_a.dpc)/*.d -endif -include $(ONEAPI.tmpdir_y.dpc)/*.d # Declares target for object file compilation @@ -725,10 +715,7 @@ $(ONEAPI.tmpdir_y)/inc_y_folders.txt: | $(ONEAPI.tmpdir_y)/. $(call WRITE.PREREQS,$(ONEAPI.include_options),$(space)) # DPC++ static library is only built on Windows -ifdef OS_is_win -$(ONEAPI.tmpdir_a.dpc)/inc_a_folders.txt: | $(ONEAPI.tmpdir_a.dpc)/. - $(call WRITE.PREREQS,$(ONEAPI.include_options),$(space)) -endif + $(ONEAPI.tmpdir_y.dpc)/inc_y_folders.txt: | $(ONEAPI.tmpdir_y.dpc)/. $(call WRITE.PREREQS,$(ONEAPI.include_options),$(space)) @@ -746,19 +733,7 @@ $(ONEAPI.objs_a): COPT += $(-fPIC) $(-cxx17) $(-optlevel) $(-Zl) $(-sanitize) $( $(eval $(call update_copt_from_dispatcher_tag,$(ONEAPI.objs_a))) # DPC++ static library is only built on Windows -ifdef OS_is_win -$(ONEAPI.objs_a.dpc): $(ONEAPI.dispatcher_cpu) $(ONEAPI.tmpdir_a.dpc)/inc_a_folders.txt -$(ONEAPI.objs_a.dpc): COPT += $(-fPIC) $(-cxx17) $(-optlevel.dpcpp) $(-Zl_DPCPP) $(-sanitize) $(-DMKL_LP64) $(-DEBC_DPCPP) $(-EHsc) $(pedantic.opts.dpcpp) \ - -DDAAL_NOTHROW_EXCEPTIONS \ - -DDAAL_HIDE_DEPRECATED \ - -DONEDAL_DATA_PARALLEL \ - -D__TBB_NO_IMPLICIT_LINKAGE \ - -D_ENABLE_ATOMIC_ALIGNMENT_FIX \ - -DTBB_USE_ASSERT=0 \ - @$(ONEAPI.tmpdir_a.dpc)/inc_a_folders.txt -$(eval $(call update_copt_from_dispatcher_tag,$(ONEAPI.objs_a.dpc),.dpcpp)) -endif # Set compilation options to the object files which are part of DYNAMIC lib $(ONEAPI.objs_y): $(ONEAPI.dispatcher_cpu) $(ONEAPI.tmpdir_y)/inc_y_folders.txt @@ -794,10 +769,6 @@ ONEAPI.objs_a.filtered := $(filter-out %parameters.$(o) %parameters_impl.$(o),$( PARAMETERS.objs_y.filtered := $(filter %parameters.$(o) %parameters_impl.$(o),$(ONEAPI.objs_y)) ONEAPI.objs_y.filtered := $(filter-out %parameters.$(o) %parameters_impl.$(o),$(ONEAPI.objs_y)) # DPC++ static library is only built on Windows -ifdef OS_is_win -PARAMETERS.objs_a.dpc.filtered := $(filter %parameters.$(o) %parameters_impl.$(o) %parameters_dpc.$(o),$(ONEAPI.objs_a.dpc)) -ONEAPI.objs_a.dpc.filtered := $(filter-out %parameters.$(o) %parameters_impl.$(o) %parameters_dpc.$(o),$(ONEAPI.objs_a.dpc)) -else PARAMETERS.objs_a.dpc.filtered := ONEAPI.objs_a.dpc.filtered := endif @@ -810,10 +781,6 @@ $(foreach x,$(ONEAPI.objs_y.filtered),$(eval $(call .ONEAPI.compile,$x,$(ONEAPI. $(foreach x,$(PARAMETERS.objs_a.filtered),$(eval $(call .ONEAPI.compile,$x,$(ONEAPI.tmpdir_a),C))) $(foreach x,$(PARAMETERS.objs_y.filtered),$(eval $(call .ONEAPI.compile,$x,$(ONEAPI.tmpdir_y),C))) # DPC++ static library is only built on Windows -ifdef OS_is_win -$(foreach x,$(ONEAPI.objs_a.dpc.filtered),$(eval $(call .ONEAPI.compile,$x,$(ONEAPI.tmpdir_a.dpc),DPC))) -$(foreach x,$(PARAMETERS.objs_a.dpc.filtered),$(eval $(call .ONEAPI.compile,$x,$(ONEAPI.tmpdir_a.dpc),DPC))) -endif $(foreach x,$(ONEAPI.objs_y.dpc.filtered),$(eval $(call .ONEAPI.compile,$x,$(ONEAPI.tmpdir_y.dpc),DPC))) $(foreach x,$(PARAMETERS.objs_y.dpc.filtered),$(eval $(call .ONEAPI.compile,$x,$(ONEAPI.tmpdir_y.dpc),DPC))) @@ -821,13 +788,7 @@ $(foreach x,$(PARAMETERS.objs_y.dpc.filtered),$(eval $(call .ONEAPI.compile,$x,$ ifeq ($(BUILD_PARAMETERS_LIB),yes) $(eval $(call .ONEAPI.declare_static_lib,$(WORKDIR.lib)/$(oneapi_a),$(ONEAPI.objs_a.filtered))) # DPC++ static library is only built on Windows -ifdef OS_is_win -$(eval $(call .ONEAPI.declare_static_lib,$(WORKDIR.lib)/$(oneapi_a.dpc),$(ONEAPI.objs_a.dpc.filtered))) -endif $(eval $(call .ONEAPI.declare_static_lib,$(WORKDIR.lib)/$(parameters_a),$(PARAMETERS.objs_a.filtered))) -ifdef OS_is_win -$(eval $(call .ONEAPI.declare_static_lib,$(WORKDIR.lib)/$(parameters_a.dpc),$(PARAMETERS.objs_a.dpc.filtered))) -endif else $(eval $(call .ONEAPI.declare_static_lib,$(WORKDIR.lib)/$(oneapi_a),$(ONEAPI.objs_a))) $(if $(OS_is_win),$(eval $(call .ONEAPI.declare_static_lib,$(WORKDIR.lib)/$(oneapi_a.dpc),$(ONEAPI.objs_a.dpc)))) @@ -1003,7 +964,7 @@ _parameters_c: $(WORKDIR.lib)/$(parameters_a) $(WORKDIR.lib)/$(parameters_y) _parameters_dpc: info.building.parameters.DPC++.part # DPC++ static library is only built on Windows -_parameters_dpc: $(if $(OS_is_win),$(WORKDIR.lib)/$(parameters_a.dpc),) $(WORKDIR.lib)/$(parameters_y.dpc) +_parameters_dpc: $(WORKDIR.lib)/$(parameters_y.dpc) _release_parameters_c: _parameters_c _release_parameters_dpc: _parameters_dpc From 3492694c21abaf8ccfee040bd598078a041bb1f3 Mon Sep 17 00:00:00 2001 From: Alexandr-Solovev Date: Thu, 9 Apr 2026 04:24:55 -0700 Subject: [PATCH 02/10] fixes --- makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/makefile b/makefile index d3bddab4110..f380adab1f5 100644 --- a/makefile +++ b/makefile @@ -771,7 +771,7 @@ ONEAPI.objs_y.filtered := $(filter-out %parameters.$(o) %parameters_impl.$(o),$( # DPC++ static library is only built on Windows PARAMETERS.objs_a.dpc.filtered := ONEAPI.objs_a.dpc.filtered := -endif + PARAMETERS.objs_y.dpc.filtered := $(filter %parameters.$(o) %parameters_impl.$(o) %parameters_dpc.$(o),$(ONEAPI.objs_y.dpc)) ONEAPI.objs_y.dpc.filtered := $(filter-out %parameters.$(o) %parameters_impl.$(o) %parameters_dpc.$(o),$(ONEAPI.objs_y.dpc)) From 7ae2d0c6329ae08f84c9b0ede0ebaa6a71c91405 Mon Sep 17 00:00:00 2001 From: Alexandr-Solovev Date: Thu, 9 Apr 2026 09:18:17 -0700 Subject: [PATCH 03/10] fixes for dpc static --- makefile | 27 +-------------------------- 1 file changed, 1 insertion(+), 26 deletions(-) diff --git a/makefile b/makefile index f380adab1f5..184bd5f3209 100644 --- a/makefile +++ b/makefile @@ -356,11 +356,9 @@ core_a := $(plib)onedal_core$d.$a core_y := $(plib)onedal_core$d$(if $(OS_is_win),.$(MAJORBINARY),).$y oneapi_a := $(plib)onedal$d.$a oneapi_y := $(plib)onedal$d$(if $(OS_is_win),.$(MAJORBINARY),).$y -oneapi_a.dpc := $(plib)onedal_dpc$d.$a oneapi_y.dpc := $(plib)onedal_dpc$d$(if $(OS_is_win),.$(MAJORBINARY),).$y parameters_a := $(plib)onedal_parameters$d.$a parameters_y := $(plib)onedal_parameters$d$(if $(OS_is_win),.$(MAJORBINARY),).$y -parameters_a.dpc := $(plib)onedal_parameters_dpc$d.$a parameters_y.dpc := $(plib)onedal_parameters_dpc$d$(if $(OS_is_win),.$(MAJORBINARY),).$y thr_tbb_a := $(plib)onedal_thread$d.$a @@ -376,22 +374,12 @@ release.ONEAPI.LIBS_A := $(oneapi_a) \ $(if $(OS_is_win),$(foreach ilib,$(oneapi_a),$(ilib:%.lib=%_dll.lib)),) release.ONEAPI.LIBS_Y := $(oneapi_y) -# DPC++ static library is only built on Windows - -release.ONEAPI.LIBS_A.dpc := - release.ONEAPI.LIBS_Y.dpc := $(oneapi_y.dpc) release.PARAMETERS.LIBS_A := $(parameters_a) \ $(if $(OS_is_win),$(foreach ilib,$(parameters_a),$(ilib:%.lib=%_dll.lib)),) release.PARAMETERS.LIBS_Y := $(parameters_y) -ifdef OS_is_win -release.PARAMETERS.LIBS_A.dpc := $(parameters_a.dpc) \ - $(if $(OS_is_win),$(foreach ilib,$(parameters_a.dpc),$(ilib:%.lib=%_dll.lib)),) -else -release.PARAMETERS.LIBS_A.dpc := -endif release.PARAMETERS.LIBS_Y.dpc := $(parameters_y.dpc) @@ -602,9 +590,7 @@ ONEAPI.tmpdir_a := $(WORKDIR)/oneapi_static ONEAPI.tmpdir_y := $(WORKDIR)/oneapi_dynamic PARAMETERS.tmpdir_a := $(WORKDIR)/parameters_static PARAMETERS.tmpdir_y := $(WORKDIR)/parameters_dynamic -ONEAPI.tmpdir_a.dpc := $(WORKDIR)/oneapi_dpc_static ONEAPI.tmpdir_y.dpc := $(WORKDIR)/oneapi_dpc_dynamic -PARAMETERS.tmpdir_a.dpc := $(WORKDIR)/parameters_dpc_static PARAMETERS.tmpdir_y.dpc := $(WORKDIR)/parameters_dpc_dynamic ONEAPI.incdirs.common := $(CPPDIR) @@ -647,13 +633,8 @@ ONEAPI.srcs.mangled.dpc := $(subst /,-,$(ONEAPI.srcs.dpc)) ONEAPI.objs_a := $(ONEAPI.srcs.mangled:%.cpp=$(ONEAPI.tmpdir_a)/%.$o) ONEAPI.objs_y := $(ONEAPI.srcs.mangled:%.cpp=$(ONEAPI.tmpdir_y)/%.$o) -# DPC++ static library is only built on Windows - -ONEAPI.objs_a.dpc := ONEAPI.objs_y.dpc := $(ONEAPI.srcs.mangled.dpc:%.cpp=$(ONEAPI.tmpdir_y.dpc)/%.$o) -ONEAPI.objs_a.all := $(ONEAPI.objs_a) $(ONEAPI.objs_a.dpc) -ONEAPI.objs_y.all := $(ONEAPI.objs_y) $(ONEAPI.objs_y.dpc) # Populate _cpu files -> _cpu_%cpu_name%, where %cpu_name% is $(USECPUS.files) # $1 Output variable name @@ -768,9 +749,6 @@ PARAMETERS.objs_a.filtered := $(filter %parameters.$(o) %parameters_impl.$(o),$( ONEAPI.objs_a.filtered := $(filter-out %parameters.$(o) %parameters_impl.$(o),$(ONEAPI.objs_a)) PARAMETERS.objs_y.filtered := $(filter %parameters.$(o) %parameters_impl.$(o),$(ONEAPI.objs_y)) ONEAPI.objs_y.filtered := $(filter-out %parameters.$(o) %parameters_impl.$(o),$(ONEAPI.objs_y)) -# DPC++ static library is only built on Windows -PARAMETERS.objs_a.dpc.filtered := -ONEAPI.objs_a.dpc.filtered := PARAMETERS.objs_y.dpc.filtered := $(filter %parameters.$(o) %parameters_impl.$(o) %parameters_dpc.$(o),$(ONEAPI.objs_y.dpc)) ONEAPI.objs_y.dpc.filtered := $(filter-out %parameters.$(o) %parameters_impl.$(o) %parameters_dpc.$(o),$(ONEAPI.objs_y.dpc)) @@ -791,7 +769,6 @@ $(eval $(call .ONEAPI.declare_static_lib,$(WORKDIR.lib)/$(oneapi_a),$(ONEAPI.obj $(eval $(call .ONEAPI.declare_static_lib,$(WORKDIR.lib)/$(parameters_a),$(PARAMETERS.objs_a.filtered))) else $(eval $(call .ONEAPI.declare_static_lib,$(WORKDIR.lib)/$(oneapi_a),$(ONEAPI.objs_a))) -$(if $(OS_is_win),$(eval $(call .ONEAPI.declare_static_lib,$(WORKDIR.lib)/$(oneapi_a.dpc),$(ONEAPI.objs_a.dpc)))) endif ONEAPI.objs_y.lib := $(ONEAPI.objs_y.filtered) @@ -977,7 +954,7 @@ _oneapi_c: info.building.oneapi.C++.part _oneapi_c: $(WORKDIR.lib)/$(oneapi_a) $(WORKDIR.lib)/$(oneapi_y) _oneapi_dpc: info.building.oneapi.DPC++.part -_oneapi_dpc: $(if $(OS_is_win),$(WORKDIR.lib)/$(oneapi_a.dpc),) $(WORKDIR.lib)/$(oneapi_y.dpc) +_oneapi_dpc: $(WORKDIR.lib)/$(oneapi_y.dpc) _release_oneapi_c: _release_oneapi_c_h _release_oneapi_dpc: _release_oneapi_c @@ -1036,13 +1013,11 @@ $(foreach x,$(release.LIBS_A),$(eval $(call .release.a_win,$x,$(RELEASEDIR.libia $(foreach x,$(release.LIBS_Y),$(eval $(call .release.y_win,$x,$(RELEASEDIR.soia),_release_c))) $(foreach x,$(release.ONEAPI.LIBS_A),$(eval $(call .release.a_win,$x,$(RELEASEDIR.libia),_release_oneapi_c))) $(foreach x,$(release.ONEAPI.LIBS_Y),$(eval $(call .release.y_win,$x,$(RELEASEDIR.soia),_release_oneapi_c))) -$(foreach x,$(release.ONEAPI.LIBS_A.dpc),$(eval $(call .release.a_win,$x,$(RELEASEDIR.libia),_release_oneapi_dpc))) $(foreach x,$(release.ONEAPI.LIBS_Y.dpc),$(eval $(call .release.y_win,$x,$(RELEASEDIR.soia),_release_oneapi_dpc))) ifeq ($(BUILD_PARAMETERS_LIB),yes) $(foreach x,$(release.PARAMETERS.LIBS_A),$(eval $(call .release.a_win,$x,$(RELEASEDIR.libia),_release_parameters_c))) $(foreach x,$(release.PARAMETERS.LIBS_Y),$(eval $(call .release.y_win,$x,$(RELEASEDIR.soia),_release_parameters_c))) -$(foreach x,$(release.PARAMETERS.LIBS_A.dpc),$(eval $(call .release.a_win,$x,$(RELEASEDIR.libia),_release_parameters_dpc))) $(foreach x,$(release.PARAMETERS.LIBS_Y.dpc),$(eval $(call .release.y_win,$x,$(RELEASEDIR.soia),_release_parameters_dpc))) endif endif From 37d05aa138046d979212db24362cd1da7f7c443c Mon Sep 17 00:00:00 2001 From: Alexandr-Solovev Date: Thu, 9 Apr 2026 09:41:29 -0700 Subject: [PATCH 04/10] fixes --- makefile | 3 --- 1 file changed, 3 deletions(-) diff --git a/makefile b/makefile index 184bd5f3209..3250511dd4e 100644 --- a/makefile +++ b/makefile @@ -713,9 +713,6 @@ $(ONEAPI.objs_a): COPT += $(-fPIC) $(-cxx17) $(-optlevel) $(-Zl) $(-sanitize) $( $(eval $(call update_copt_from_dispatcher_tag,$(ONEAPI.objs_a))) -# DPC++ static library is only built on Windows - - # Set compilation options to the object files which are part of DYNAMIC lib $(ONEAPI.objs_y): $(ONEAPI.dispatcher_cpu) $(ONEAPI.tmpdir_y)/inc_y_folders.txt $(ONEAPI.objs_y): COPT += $(-fPIC) $(-cxx17) $(-optlevel) $(-Zl) $(-visibility) $(-sanitize) $(-DMKL_ILP64) $(-DEBC) $(-EHsc) $(pedantic.opts) \ From 902e65b8ed6fb7c47bce3e6251c6be7a3306b02d Mon Sep 17 00:00:00 2001 From: Alexandr-Solovev Date: Fri, 10 Apr 2026 02:31:46 -0700 Subject: [PATCH 05/10] minor fixes --- makefile | 10 +--------- 1 file changed, 1 insertion(+), 9 deletions(-) diff --git a/makefile b/makefile index 3250511dd4e..8cf045e0feb 100644 --- a/makefile +++ b/makefile @@ -652,13 +652,12 @@ endef $(eval $(call .populate_cpus,ONEAPI.objs_a,$(ONEAPI.objs_a))) $(eval $(call .populate_cpus,ONEAPI.objs_y,$(ONEAPI.objs_y))) -# DPC++ static library is only built on Windows + $(eval $(call .populate_cpus,ONEAPI.objs_y.dpc,$(ONEAPI.objs_y.dpc))) -include $(ONEAPI.tmpdir_a)/*.d -include $(ONEAPI.tmpdir_y)/*.d -# DPC++ static library is only built on Windows -include $(ONEAPI.tmpdir_y.dpc)/*.d # Declares target for object file compilation @@ -695,8 +694,6 @@ $(ONEAPI.tmpdir_a)/inc_a_folders.txt: | $(ONEAPI.tmpdir_a)/. $(ONEAPI.tmpdir_y)/inc_y_folders.txt: | $(ONEAPI.tmpdir_y)/. $(call WRITE.PREREQS,$(ONEAPI.include_options),$(space)) -# DPC++ static library is only built on Windows - $(ONEAPI.tmpdir_y.dpc)/inc_y_folders.txt: | $(ONEAPI.tmpdir_y.dpc)/. $(call WRITE.PREREQS,$(ONEAPI.include_options),$(space)) @@ -755,14 +752,12 @@ $(foreach x,$(ONEAPI.objs_a.filtered),$(eval $(call .ONEAPI.compile,$x,$(ONEAPI. $(foreach x,$(ONEAPI.objs_y.filtered),$(eval $(call .ONEAPI.compile,$x,$(ONEAPI.tmpdir_y),C))) $(foreach x,$(PARAMETERS.objs_a.filtered),$(eval $(call .ONEAPI.compile,$x,$(ONEAPI.tmpdir_a),C))) $(foreach x,$(PARAMETERS.objs_y.filtered),$(eval $(call .ONEAPI.compile,$x,$(ONEAPI.tmpdir_y),C))) -# DPC++ static library is only built on Windows $(foreach x,$(ONEAPI.objs_y.dpc.filtered),$(eval $(call .ONEAPI.compile,$x,$(ONEAPI.tmpdir_y.dpc),DPC))) $(foreach x,$(PARAMETERS.objs_y.dpc.filtered),$(eval $(call .ONEAPI.compile,$x,$(ONEAPI.tmpdir_y.dpc),DPC))) # Create Host and DPC++ oneapi libraries ifeq ($(BUILD_PARAMETERS_LIB),yes) $(eval $(call .ONEAPI.declare_static_lib,$(WORKDIR.lib)/$(oneapi_a),$(ONEAPI.objs_a.filtered))) -# DPC++ static library is only built on Windows $(eval $(call .ONEAPI.declare_static_lib,$(WORKDIR.lib)/$(parameters_a),$(PARAMETERS.objs_a.filtered))) else $(eval $(call .ONEAPI.declare_static_lib,$(WORKDIR.lib)/$(oneapi_a),$(ONEAPI.objs_a))) @@ -773,7 +768,6 @@ ifeq ($(BUILD_PARAMETERS_LIB),no) ONEAPI.objs_y.lib += $(PARAMETERS.objs_y.filtered) endif -# TODO: replace MKL usage with one of the suggested apporach in 'common.mk'. $(ONEAPI.tmpdir_y)/$(oneapi_y:%.$y=%_link.txt): \ $(ONEAPI.objs_y.lib) $(if $(OS_is_win),$(ONEAPI.tmpdir_y)/dll.res,) | $(ONEAPI.tmpdir_y)/. ; $(WRITE.PREREQS) $(WORKDIR.lib)/$(oneapi_y): \ @@ -809,7 +803,6 @@ ifeq ($(BUILD_PARAMETERS_LIB),no) ONEAPI.objs_y.dpc.lib += $(PARAMETERS.objs_y.dpc.filtered) endif -# TODO: replace MKL usage with one of the suggested apporach in 'common.mk'. $(ONEAPI.tmpdir_y.dpc)/$(oneapi_y.dpc:%.$y=%_link.txt): \ $(ONEAPI.objs_y.dpc.lib) $(if $(OS_is_win),$(ONEAPI.tmpdir_y.dpc)/dll.res,) | $(ONEAPI.tmpdir_y.dpc)/. ; $(WRITE.PREREQS) $(WORKDIR.lib)/$(oneapi_y.dpc): \ @@ -937,7 +930,6 @@ _parameters_c: info.building.parameters.C++.part _parameters_c: $(WORKDIR.lib)/$(parameters_a) $(WORKDIR.lib)/$(parameters_y) _parameters_dpc: info.building.parameters.DPC++.part -# DPC++ static library is only built on Windows _parameters_dpc: $(WORKDIR.lib)/$(parameters_y.dpc) _release_parameters_c: _parameters_c From 1a256a6fdb39f856afc59f0210c63fd21626b6b5 Mon Sep 17 00:00:00 2001 From: Alexandr-Solovev Date: Fri, 10 Apr 2026 04:09:36 -0700 Subject: [PATCH 06/10] fixes --- makefile | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/makefile b/makefile index cb3d0b43cad..3143356cd7d 100644 --- a/makefile +++ b/makefile @@ -375,12 +375,23 @@ release.ONEAPI.LIBS_A := $(oneapi_a) \ release.ONEAPI.LIBS_Y := $(oneapi_y) release.ONEAPI.LIBS_Y.dpc := $(oneapi_y.dpc) +# DPC DLL import library only (static DPC lib removed) +ifdef OS_is_win +release.ONEAPI.LIBS_A.dpc := $(oneapi_y.dpc:%.$(MAJORBINARY).dll=%_dll.lib) +else +release.ONEAPI.LIBS_A.dpc := +endif release.PARAMETERS.LIBS_A := $(parameters_a) \ $(if $(OS_is_win),$(foreach ilib,$(parameters_a),$(ilib:%.lib=%_dll.lib)),) release.PARAMETERS.LIBS_Y := $(parameters_y) release.PARAMETERS.LIBS_Y.dpc := $(parameters_y.dpc) +ifdef OS_is_win +release.PARAMETERS.LIBS_A.dpc := $(parameters_y.dpc:%.$(MAJORBINARY).dll=%_dll.lib) +else +release.PARAMETERS.LIBS_A.dpc := +endif $(eval $(call set_daal_rt_deps)) @@ -1010,11 +1021,13 @@ $(foreach x,$(release.LIBS_A),$(eval $(call .release.a_win,$x,$(RELEASEDIR.libia $(foreach x,$(release.LIBS_Y),$(eval $(call .release.y_win,$x,$(RELEASEDIR.soia),_release_c))) $(foreach x,$(release.ONEAPI.LIBS_A),$(eval $(call .release.a_win,$x,$(RELEASEDIR.libia),_release_oneapi_c))) $(foreach x,$(release.ONEAPI.LIBS_Y),$(eval $(call .release.y_win,$x,$(RELEASEDIR.soia),_release_oneapi_c))) +$(foreach x,$(release.ONEAPI.LIBS_A.dpc),$(eval $(call .release.a_win,$x,$(RELEASEDIR.libia),_release_oneapi_dpc))) $(foreach x,$(release.ONEAPI.LIBS_Y.dpc),$(eval $(call .release.y_win,$x,$(RELEASEDIR.soia),_release_oneapi_dpc))) ifeq ($(BUILD_PARAMETERS_LIB),yes) $(foreach x,$(release.PARAMETERS.LIBS_A),$(eval $(call .release.a_win,$x,$(RELEASEDIR.libia),_release_parameters_c))) $(foreach x,$(release.PARAMETERS.LIBS_Y),$(eval $(call .release.y_win,$x,$(RELEASEDIR.soia),_release_parameters_c))) +$(foreach x,$(release.PARAMETERS.LIBS_A.dpc),$(eval $(call .release.a_win,$x,$(RELEASEDIR.libia),_release_parameters_dpc))) $(foreach x,$(release.PARAMETERS.LIBS_Y.dpc),$(eval $(call .release.y_win,$x,$(RELEASEDIR.soia),_release_parameters_dpc))) endif endif From 03683712a554f7b48c471de36eaa7429def67620 Mon Sep 17 00:00:00 2001 From: Alexandr-Solovev Date: Sun, 12 Apr 2026 23:54:13 -0700 Subject: [PATCH 07/10] fixes --- makefile | 13 ++++--------- 1 file changed, 4 insertions(+), 9 deletions(-) diff --git a/makefile b/makefile index 3143356cd7d..e2cd0cdf390 100644 --- a/makefile +++ b/makefile @@ -374,24 +374,19 @@ release.ONEAPI.LIBS_A := $(oneapi_a) \ $(if $(OS_is_win),$(foreach ilib,$(oneapi_a),$(ilib:%.lib=%_dll.lib)),) release.ONEAPI.LIBS_Y := $(oneapi_y) -release.ONEAPI.LIBS_Y.dpc := $(oneapi_y.dpc) -# DPC DLL import library only (static DPC lib removed) ifdef OS_is_win -release.ONEAPI.LIBS_A.dpc := $(oneapi_y.dpc:%.$(MAJORBINARY).dll=%_dll.lib) -else -release.ONEAPI.LIBS_A.dpc := +release.ONEAPI.LIBS_Y.import.dpc := $(oneapi_y.dpc:%.$(MAJORBINARY).dll=%_dll.lib) endif +release.ONEAPI.LIBS_Y.dpc := $(oneapi_y.dpc) release.PARAMETERS.LIBS_A := $(parameters_a) \ $(if $(OS_is_win),$(foreach ilib,$(parameters_a),$(ilib:%.lib=%_dll.lib)),) release.PARAMETERS.LIBS_Y := $(parameters_y) -release.PARAMETERS.LIBS_Y.dpc := $(parameters_y.dpc) ifdef OS_is_win -release.PARAMETERS.LIBS_A.dpc := $(parameters_y.dpc:%.$(MAJORBINARY).dll=%_dll.lib) -else -release.PARAMETERS.LIBS_A.dpc := +release.PARAMETERS.LIBS_Y.import.dpc := $(parameters_y.dpc:%.$(MAJORBINARY).dll=%_dll.lib) endif +release.PARAMETERS.LIBS_Y.dpc := $(parameters_y.dpc) $(eval $(call set_daal_rt_deps)) From 5790383ae84931104aa8da31dbd40d635eddc418 Mon Sep 17 00:00:00 2001 From: Alexandr-Solovev Date: Tue, 14 Apr 2026 23:28:51 -0700 Subject: [PATCH 08/10] fixes --- makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/makefile b/makefile index e2cd0cdf390..c031f8bcf1d 100644 --- a/makefile +++ b/makefile @@ -374,10 +374,10 @@ release.ONEAPI.LIBS_A := $(oneapi_a) \ $(if $(OS_is_win),$(foreach ilib,$(oneapi_a),$(ilib:%.lib=%_dll.lib)),) release.ONEAPI.LIBS_Y := $(oneapi_y) +release.ONEAPI.LIBS_Y.dpc := $(oneapi_y.dpc) ifdef OS_is_win release.ONEAPI.LIBS_Y.import.dpc := $(oneapi_y.dpc:%.$(MAJORBINARY).dll=%_dll.lib) endif -release.ONEAPI.LIBS_Y.dpc := $(oneapi_y.dpc) release.PARAMETERS.LIBS_A := $(parameters_a) \ $(if $(OS_is_win),$(foreach ilib,$(parameters_a),$(ilib:%.lib=%_dll.lib)),) From 12c442427b7514adcd92c2ce4d55bced50acf62c Mon Sep 17 00:00:00 2001 From: Aleksandr Solovev Date: Mon, 4 May 2026 11:03:03 +0200 Subject: [PATCH 09/10] update pattern --- makefile | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/makefile b/makefile index 767c5fec6d7..fecd786a904 100644 --- a/makefile +++ b/makefile @@ -376,7 +376,8 @@ release.ONEAPI.LIBS_Y := $(oneapi_y) release.ONEAPI.LIBS_Y.dpc := $(oneapi_y.dpc) ifdef OS_is_win -release.ONEAPI.LIBS_Y.import.dpc := $(oneapi_y.dpc:%.$(MAJORBINARY).dll=%_dll.lib) +release.ONEAPI.LIBS_Y.import.dpc := \ + $(oneapi_y.dpc:.$(MAJORBINARY).dll=_dll.$(MAJORBINARY).lib) endif release.PARAMETERS.LIBS_A := $(parameters_a) \ @@ -384,7 +385,7 @@ release.PARAMETERS.LIBS_A := $(parameters_a) \ release.PARAMETERS.LIBS_Y := $(parameters_y) ifdef OS_is_win -release.PARAMETERS.LIBS_Y.import.dpc := $(parameters_y.dpc:%.$(MAJORBINARY).dll=%_dll.lib) +release.PARAMETERS.LIBS_Y.import.dpc := $(parameters_y.dpc:.$(MAJORBINARY).dll=_dll.$(MAJORBINARY).lib) endif release.PARAMETERS.LIBS_Y.dpc := $(parameters_y.dpc) From cbefbb4f7bbf23e0ed54fb66c7589c9102553e83 Mon Sep 17 00:00:00 2001 From: Alexandr-Solovev Date: Thu, 7 May 2026 07:19:04 -0700 Subject: [PATCH 10/10] fixes --- makefile | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/makefile b/makefile index fecd786a904..a12ea56f74f 100644 --- a/makefile +++ b/makefile @@ -377,7 +377,7 @@ release.ONEAPI.LIBS_Y := $(oneapi_y) release.ONEAPI.LIBS_Y.dpc := $(oneapi_y.dpc) ifdef OS_is_win release.ONEAPI.LIBS_Y.import.dpc := \ - $(oneapi_y.dpc:.$(MAJORBINARY).dll=_dll.$(MAJORBINARY).lib) + $(oneapi_y.dpc:.$(MAJORBINARY).dll=_dll.lib) endif release.PARAMETERS.LIBS_A := $(parameters_a) \ @@ -385,7 +385,7 @@ release.PARAMETERS.LIBS_A := $(parameters_a) \ release.PARAMETERS.LIBS_Y := $(parameters_y) ifdef OS_is_win -release.PARAMETERS.LIBS_Y.import.dpc := $(parameters_y.dpc:.$(MAJORBINARY).dll=_dll.$(MAJORBINARY).lib) +release.PARAMETERS.LIBS_Y.import.dpc := $(parameters_y.dpc:.$(MAJORBINARY).dll=_dll.lib) endif release.PARAMETERS.LIBS_Y.dpc := $(parameters_y.dpc) @@ -1017,13 +1017,13 @@ $(foreach x,$(release.LIBS_A),$(eval $(call .release.a_win,$x,$(RELEASEDIR.libia $(foreach x,$(release.LIBS_Y),$(eval $(call .release.y_win,$x,$(RELEASEDIR.soia),_release_c))) $(foreach x,$(release.ONEAPI.LIBS_A),$(eval $(call .release.a_win,$x,$(RELEASEDIR.libia),_release_oneapi_c))) $(foreach x,$(release.ONEAPI.LIBS_Y),$(eval $(call .release.y_win,$x,$(RELEASEDIR.soia),_release_oneapi_c))) -$(foreach x,$(release.ONEAPI.LIBS_A.dpc),$(eval $(call .release.a_win,$x,$(RELEASEDIR.libia),_release_oneapi_dpc))) +$(foreach x,$(release.ONEAPI.LIBS_Y.import.dpc),$(eval $(call .release.a_win,$x,$(RELEASEDIR.libia),_release_oneapi_dpc))) $(foreach x,$(release.ONEAPI.LIBS_Y.dpc),$(eval $(call .release.y_win,$x,$(RELEASEDIR.soia),_release_oneapi_dpc))) ifeq ($(BUILD_PARAMETERS_LIB),yes) $(foreach x,$(release.PARAMETERS.LIBS_A),$(eval $(call .release.a_win,$x,$(RELEASEDIR.libia),_release_parameters_c))) $(foreach x,$(release.PARAMETERS.LIBS_Y),$(eval $(call .release.y_win,$x,$(RELEASEDIR.soia),_release_parameters_c))) -$(foreach x,$(release.PARAMETERS.LIBS_A.dpc),$(eval $(call .release.a_win,$x,$(RELEASEDIR.libia),_release_parameters_dpc))) +$(foreach x,$(release.PARAMETERS.LIBS_Y.import.dpc),$(eval $(call .release.a_win,$x,$(RELEASEDIR.libia),_release_parameters_dpc))) $(foreach x,$(release.PARAMETERS.LIBS_Y.dpc),$(eval $(call .release.y_win,$x,$(RELEASEDIR.soia),_release_parameters_dpc))) endif endif