From 6107aab3274ce81e6114b1726da86c9f65ab073e Mon Sep 17 00:00:00 2001 From: "Komarova, Evseniia" Date: Mon, 24 Mar 2025 17:08:48 +0100 Subject: [PATCH 1/2] Support mkl_random in virtual environment out of the box --- mkl_random/__init__.py | 2 ++ mkl_random/_init_helper.py | 30 ++++++++++++++++++++++++++++++ 2 files changed, 32 insertions(+) create mode 100644 mkl_random/_init_helper.py diff --git a/mkl_random/__init__.py b/mkl_random/__init__.py index a7af229..70863cb 100644 --- a/mkl_random/__init__.py +++ b/mkl_random/__init__.py @@ -26,6 +26,8 @@ from __future__ import division, absolute_import, print_function +from . import _init_helper + from .mklrand import * from ._version import __version__ diff --git a/mkl_random/_init_helper.py b/mkl_random/_init_helper.py new file mode 100644 index 0000000..7d56cbe --- /dev/null +++ b/mkl_random/_init_helper.py @@ -0,0 +1,30 @@ +# Copyright 2020-2024 Intel Corporation +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import os +import os.path +import sys + +is_venv_win32 = ( + sys.platform == "win32" + and sys.base_exec_prefix != sys.exec_prefix + and os.path.isfile(os.path.join(sys.exec_prefix, "pyvenv.cfg")) +) + +if is_venv_win32: + dll_dir = os.path.join(sys.exec_prefix, "Library", "bin") + if os.path.isdir(dll_dir): + os.add_dll_directory(dll_dir) + +del is_venv_win32 From a3e963ad907dd6ef6e1d415fa48d3d5c6232ff55 Mon Sep 17 00:00:00 2001 From: "Komarova, Evseniia" Date: Mon, 24 Mar 2025 17:42:55 +0100 Subject: [PATCH 2/2] Fix copyright and add comment --- mkl_random/__init__.py | 1 + mkl_random/_init_helper.py | 3 ++- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/mkl_random/__init__.py b/mkl_random/__init__.py index 70863cb..51586c2 100644 --- a/mkl_random/__init__.py +++ b/mkl_random/__init__.py @@ -42,3 +42,4 @@ test = PytestTester(__name__) del PytestTester +del _init_helper diff --git a/mkl_random/_init_helper.py b/mkl_random/_init_helper.py index 7d56cbe..3a4c1dd 100644 --- a/mkl_random/_init_helper.py +++ b/mkl_random/_init_helper.py @@ -1,4 +1,4 @@ -# Copyright 2020-2024 Intel Corporation +# Copyright 2025 Intel Corporation # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -23,6 +23,7 @@ ) if is_venv_win32: + # In Windows venv: add Library/bin to PATH for proper DLL loading dll_dir = os.path.join(sys.exec_prefix, "Library", "bin") if os.path.isdir(dll_dir): os.add_dll_directory(dll_dir)