mlir/0001-mlir-python-Reuse-the-library-directory.patch
Tulio Magno Quites Machado Filho d5802648fa Enable Python bindings
Create package python3-mlir that distributes all the MLIR Python bindings.
2023-09-06 08:10:31 -03:00

73 lines
2.7 KiB
Diff

From d8d712c632e925139a6e5e53ee64749301358b25 Mon Sep 17 00:00:00 2001
From: Tulio Magno Quites Machado Filho <tuliom@redhat.com>
Date: Tue, 5 Sep 2023 10:35:37 -0300
Subject: [PATCH] [mlir][python] Reuse the library directory
Prefer to get the path to the shared libraries from config.llvm_shlib_dir.
Fallback to the previous path only if config.llvm_shlib_dir is not
defined.
This ensures the test will pass regardless of the build configuration
used downstream.
---
mlir/test/lit.cfg.py | 1 +
mlir/test/python/execution_engine.py | 12 +++++++-----
2 files changed, 8 insertions(+), 5 deletions(-)
diff --git a/mlir/test/lit.cfg.py b/mlir/test/lit.cfg.py
index 3a8bdbfcec28..eb8e66a2491c 100644
--- a/mlir/test/lit.cfg.py
+++ b/mlir/test/lit.cfg.py
@@ -130,6 +130,7 @@ tools.extend(
ToolSubst("toyc-ch7", unresolved="ignore"),
ToolSubst('transform-opt-ch2', unresolved='ignore'),
ToolSubst('transform-opt-ch3', unresolved='ignore'),
+ ToolSubst("%llvm_shlib_dir", config.llvm_shlib_dir, unresolved="ignore"),
ToolSubst("%mlir_lib_dir", config.mlir_lib_dir, unresolved="ignore"),
ToolSubst("%mlir_src_dir", config.mlir_src_root, unresolved="ignore"),
]
diff --git a/mlir/test/python/execution_engine.py b/mlir/test/python/execution_engine.py
index e8b47007a890..0cb78dd0bac6 100644
--- a/mlir/test/python/execution_engine.py
+++ b/mlir/test/python/execution_engine.py
@@ -1,4 +1,4 @@
-# RUN: %PYTHON %s 2>&1 | FileCheck %s
+# RUN: env LLVM_SHLIB_DIR=%llvm_shlib_dir %PYTHON %s 2>&1 | FileCheck %s
# REQUIRES: host-supports-jit
import gc, sys, os, tempfile
from mlir.ir import *
@@ -6,6 +6,8 @@ from mlir.passmanager import *
from mlir.execution_engine import *
from mlir.runtime import *
+_DEFAULT_LIB_DIR = "../../../../lib"
+LIB_DIR = os.getenv("LLVM_SHLIB_DIR", _DEFAULT_LIB_DIR)
# Log everything to stderr and flush so that we have a unified stream to match
# errors/info emitted by MLIR to stderr.
@@ -540,8 +542,8 @@ def testSharedLibLoad():
]
else:
shared_libs = [
- "../../../../lib/libmlir_runner_utils.so",
- "../../../../lib/libmlir_c_runner_utils.so",
+ LIB_DIR + "/libmlir_runner_utils.so",
+ LIB_DIR + "/libmlir_c_runner_utils.so",
]
execution_engine = ExecutionEngine(
@@ -583,8 +585,8 @@ def testNanoTime():
]
else:
shared_libs = [
- "../../../../lib/libmlir_runner_utils.so",
- "../../../../lib/libmlir_c_runner_utils.so",
+ LIB_DIR + "/libmlir_runner_utils.so",
+ LIB_DIR + "/libmlir_c_runner_utils.so",
]
execution_engine = ExecutionEngine(
--
2.41.0