feat: drop dpc static for windows#3600
Conversation
|
/intelci: run |
0f237fe to
3492694
Compare
|
/intelci: run |
48d4620 to
7ae2d0c
Compare
|
/intelci: run |
3d76c41 to
7ae2d0c
Compare
|
/intelci: run |
063e848 to
902e65b
Compare
|
/intelci: run |
|
/intelci: run |
There was a problem hiding this comment.
Pull request overview
This PR updates the top-level Make build to stop producing Windows DPC++ static libraries and instead rely on the DPC++ DLL + its import library for packaging/release.
Changes:
- Remove Windows-only DPC++ static library naming, object lists, and build rules for
onedal_dpcandonedal_parameters_dpc. - Update release library lists/targets to publish only the DPC++ DLL and its
_dll.libimport library on Windows. - Simplify top-level DPC targets to depend only on the DPC++ dynamic library outputs.
| 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)),) | ||
| release.ONEAPI.LIBS_A.dpc := $(oneapi_y.dpc:%.$(MAJORBINARY).dll=%_dll.lib) |
There was a problem hiding this comment.
The changes look good, I only have concern about the naming.
_A suffix in this file is related to static libraries, and this is not really a static library. The comment is there, but the code that uses this variable can look misleading anyway.
Maybe something like release.ONEAPI.LIBS_Y.dll.lib.dpc ?
There was a problem hiding this comment.
what do you think about release.ONEAPI.LIBS_Y.import.dpc?
|
/intelci: run |
|
/intelci: run |
Vika-F
left a comment
There was a problem hiding this comment.
Sorry for the delay. LGTM.
|
/intelci: run |
|
/intelci: run |
|
/intelci: run |
|
/intelci: run |
Description
This PR removes the static DPC library for oneDAL on Windows.
Motivation
Recent changes in MKL mean that static DPC libraries are no longer provided. As a result, continuing to build and link against a static DPC library on Windows is no longer possible and leads to build/link inconsistencies.
Changes
Impact
Notes
This change ensures compatibility with the latest MKL versions and avoids relying on artifacts that are no longer shipped.
Checklist:
Completeness and readability
Testing
Performance