[Mlir-commits] [mlir] 1a6c26d - Revert "[mlir] Allow out-of-tree python building from installed MLIR."
Mehdi Amini
llvmlistbot at llvm.org
Thu Nov 11 18:31:21 PST 2021
Author: Mehdi Amini
Date: 2021-11-12T02:30:53Z
New Revision: 1a6c26d1f52999edbfbf6a978ae3f0e6759ea755
URL: https://github.com/llvm/llvm-project/commit/1a6c26d1f52999edbfbf6a978ae3f0e6759ea755
DIFF: https://github.com/llvm/llvm-project/commit/1a6c26d1f52999edbfbf6a978ae3f0e6759ea755.diff
LOG: Revert "[mlir] Allow out-of-tree python building from installed MLIR."
This reverts commit c7be8b75399c727ec9e1ddc3f81510f284c65155.
Build is broken (multiple buildbots)
Added:
Modified:
mlir/cmake/modules/AddMLIRPython.cmake
mlir/cmake/modules/MLIRConfig.cmake.in
mlir/examples/standalone/CMakeLists.txt
mlir/examples/standalone/include/Standalone/StandaloneOps.td
mlir/examples/standalone/test/CMakeLists.txt
mlir/examples/standalone/test/lit.cfg.py
mlir/examples/standalone/test/lit.site.cfg.py.in
mlir/python/CMakeLists.txt
mlir/test/Examples/standalone/test.toy
Removed:
mlir/examples/standalone/python/CMakeLists.txt
mlir/examples/standalone/python/StandaloneExtension.cpp
mlir/examples/standalone/python/mlir_standalone/dialects/StandaloneOps.td
mlir/examples/standalone/python/mlir_standalone/dialects/standalone.py
mlir/examples/standalone/test/python/lit.local.cfg
mlir/examples/standalone/test/python/smoketest.py
################################################################################
diff --git a/mlir/cmake/modules/AddMLIRPython.cmake b/mlir/cmake/modules/AddMLIRPython.cmake
index dd5b7093c143f..cc9770001ea7b 100644
--- a/mlir/cmake/modules/AddMLIRPython.cmake
+++ b/mlir/cmake/modules/AddMLIRPython.cmake
@@ -35,7 +35,6 @@ function(declare_mlir_python_sources name)
if(NOT ARG_ROOT_DIR)
set(ARG_ROOT_DIR "${CMAKE_CURRENT_SOURCE_DIR}")
endif()
- set(_install_destination "src/python/${name}")
# Process the glob.
set(_glob_sources)
@@ -51,44 +50,21 @@ function(declare_mlir_python_sources name)
# We create a custom target to carry properties and dependencies for
# generated sources.
- add_library(${name} INTERFACE)
+ add_custom_target(${name})
set(_file_depends "${ARG_SOURCES}")
list(TRANSFORM _file_depends PREPEND "${ARG_ROOT_DIR}/")
set_target_properties(${name} PROPERTIES
- # Yes: Leading-lowercase property names are load bearing and the recommended
- # way to do this: https://gitlab.kitware.com/cmake/cmake/-/issues/19261
- # Note that ROOT_DIR and FILE_DEPENDS are not exported because they are
- # only relevant to in-tree uses.
- EXPORT_PROPERTIES "mlir_python_SOURCES_TYPE;mlir_python_DEST_PREFIX;mlir_python_DEST_PREFIX;mlir_python_SOURCES;mlir_python_DEPENDS"
- mlir_python_SOURCES_TYPE pure
- mlir_python_ROOT_DIR "${ARG_ROOT_DIR}"
- mlir_python_DEST_PREFIX "${ARG_DEST_PREFIX}"
- mlir_python_SOURCES "${ARG_SOURCES}"
- mlir_python_FILE_DEPENDS "${_file_depends}"
- mlir_python_DEPENDS ""
- )
- # Note that an "include" directory has no meaning to such faux targets,
- # but it is a CMake supported way to specify a directory search list in a
- # way that works both in-tree and out. It has some super powers which are
- # not possible to emulate with custom properties (because of the prohibition
- # on using generator expressions in exported custom properties and the
- # special dispensation for $<INSTALL_PREFIX>).
- target_include_directories(${name} INTERFACE
- "$<BUILD_INTERFACE:${ARG_ROOT_DIR}>"
- "$<INSTALL_INTERFACE:${_install_destination}>"
+ PYTHON_SOURCES_TYPE pure
+ PYTHON_ROOT_DIR "${ARG_ROOT_DIR}"
+ PYTHON_DEST_PREFIX "${ARG_DEST_PREFIX}"
+ PYTHON_SOURCES "${ARG_SOURCES}"
+ PYTHON_FILE_DEPENDS "${_file_depends}"
+ PYTHON_DEPENDS ""
)
# Add to parent.
if(ARG_ADD_TO_PARENT)
- set_property(TARGET ${ARG_ADD_TO_PARENT} APPEND PROPERTY mlir_python_DEPENDS ${name})
- endif()
-
- # Install.
- if(NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
- _mlir_python_install_sources(
- ${name} "${ARG_ROOT_DIR}" "${_install_destination}"
- ${ARG_SOURCES}
- )
+ set_property(TARGET ${ARG_ADD_TO_PARENT} APPEND PROPERTY PYTHON_DEPENDS ${name})
endif()
endfunction()
@@ -96,8 +72,6 @@ endfunction()
# Declares a buildable python extension from C++ source files. The built
# module is considered a python source file and included as everything else.
# Arguments:
-# ROOT_DIR: Root directory where sources are interpreted relative to.
-# Defaults to CMAKE_CURRENT_SOURCE_DIR.
# MODULE_NAME: Local import name of the module (i.e. "_mlir").
# ADD_TO_PARENT: Same as for declare_mlir_python_sources.
# SOURCES: C++ sources making up the module.
@@ -110,77 +84,27 @@ endfunction()
function(declare_mlir_python_extension name)
cmake_parse_arguments(ARG
""
- "ROOT_DIR;MODULE_NAME;ADD_TO_PARENT"
+ "MODULE_NAME;ADD_TO_PARENT"
"SOURCES;PRIVATE_LINK_LIBS;EMBED_CAPI_LINK_LIBS"
${ARGN})
- if(NOT ARG_ROOT_DIR)
- set(ARG_ROOT_DIR "${CMAKE_CURRENT_SOURCE_DIR}")
- endif()
- set(_install_destination "src/python/${name}")
-
- add_library(${name} INTERFACE)
+ add_custom_target(${name})
set_target_properties(${name} PROPERTIES
- # Yes: Leading-lowercase property names are load bearing and the recommended
- # way to do this: https://gitlab.kitware.com/cmake/cmake/-/issues/19261
- # Note that ROOT_DIR and FILE_DEPENDS are not exported because they are
- # only relevant to in-tree uses.
- EXPORT_PROPERTIES "mlir_python_SOURCES_TYPE;mlir_python_EXTENSION_MODULE_NAME;mlir_python_CPP_SOURCES;mlir_python_PRIVATE_LINK_LIBS;mlir_python_EMBED_CAPI_LINK_LIBS;mlir_python_DEPENDS"
- mlir_python_SOURCES_TYPE extension
- mlir_python_ROOT_DIR "${ARG_ROOT_DIR}"
- mlir_python_EXTENSION_MODULE_NAME "${ARG_MODULE_NAME}"
- mlir_python_CPP_SOURCES "${ARG_SOURCES}"
- mlir_python_PRIVATE_LINK_LIBS "${ARG_PRIVATE_LINK_LIBS}"
- mlir_python_EMBED_CAPI_LINK_LIBS "${ARG_EMBED_CAPI_LINK_LIBS}"
- mlir_python_FILE_DEPENDS ""
- mlir_python_DEPENDS ""
- )
- # Note that an "include" directory has no meaning to such faux targets,
- # but it is a CMake supported way to specify an install-prefix relative
- # directory. It has some super powers which are not possible to emulate
- # with custom properties (because of the prohibition on using generator
- # expressions in exported custom properties and the special dispensation
- # for $<INSTALL_PREFIX> and $<INSTALL_INTERFACE>). On imported targets,
- # this is used as a single value, not as a list, so it must only have one
- # item in it.
- target_include_directories(${name} INTERFACE
- "$<INSTALL_INTERFACE:${_install_destination}>"
+ PYTHON_SOURCES_TYPE extension
+ PYTHON_EXTENSION_MODULE_NAME "${ARG_MODULE_NAME}"
+ PYTHON_CPP_SOURCES "${ARG_SOURCES}"
+ PYTHON_PRIVATE_LINK_LIBS "${ARG_PRIVATE_LINK_LIBS}"
+ PYTHON_EMBED_CAPI_LINK_LIBS "${ARG_EMBED_CAPI_LINK_LIBS}"
+ PYTHON_FILE_DEPENDS ""
+ PYTHON_DEPENDS ""
)
# Add to parent.
if(ARG_ADD_TO_PARENT)
- set_property(TARGET ${ARG_ADD_TO_PARENT} APPEND PROPERTY mlir_python_DEPENDS ${name})
- endif()
-
- # Install.
- if(NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
- _mlir_python_install_sources(
- ${name} "${ARG_ROOT_DIR}" "src/python/${name}"
- ${ARG_SOURCES}
- )
+ set_property(TARGET ${ARG_ADD_TO_PARENT} APPEND PROPERTY PYTHON_DEPENDS ${name})
endif()
endfunction()
-function(_mlir_python_install_sources name source_root_dir destination)
- foreach(source_relative_path ${ARGN})
- # Transform "a/b/c.py" -> "${install_prefix}/a/b" for installation.
- get_filename_component(
- dest_relative_path "${source_relative_path}" DIRECTORY
- BASE_DIR "${source_root_dir}"
- )
- install(
- FILES "${source_root_dir}/${source_relative_path}"
- DESTINATION "${destination}/${dest_relative_path}"
- COMPONENT "${name}"
- )
- endforeach()
- get_target_export_arg(${name} MLIR export_to_mlirtargets UMBRELLA mlir-libraries)
- install(TARGETS ${name}
- COMPONENT ${name}
- ${export_to_mlirtargets}
- )
-endfunction()
-
# Function: add_mlir_python_modules
# Adds python modules to a project, building them from a list of declared
# source groupings (see declare_mlir_python_sources and
@@ -204,26 +128,12 @@ function(add_mlir_python_modules name)
${ARGN})
# Helper to process an individual target.
function(_process_target modules_target sources_target)
- get_target_property(_source_type ${sources_target} mlir_python_SOURCES_TYPE)
-
- # The root directory
diff ers based on whether it is IMPORTED (installed
- # dep).
- get_target_property(_is_imported ${sources_target} IMPORTED)
- if(NOT _is_imported)
- # In-tree.
- get_target_property(_python_root_dir ${sources_target} mlir_python_ROOT_DIR)
- else()
- # Imported.
- # Note: We only populate a single directory in
- # INTERFACE_INCLUDE_DIRECTORIES, so we can get away with just using it
- # as a single value.
- get_target_property(_python_root_dir ${sources_target} INTERFACE_INCLUDE_DIRECTORIES)
- endif()
-
+ get_target_property(_source_type ${sources_target} PYTHON_SOURCES_TYPE)
if(_source_type STREQUAL "pure")
# Pure python sources to link into the tree.
- get_target_property(_python_sources ${sources_target} mlir_python_SOURCES)
- get_target_property(_specified_dest_prefix ${sources_target} mlir_python_DEST_PREFIX)
+ get_target_property(_python_root_dir ${sources_target} PYTHON_ROOT_DIR)
+ get_target_property(_python_sources ${sources_target} PYTHON_SOURCES)
+ get_target_property(_specified_dest_prefix ${sources_target} PYTHON_DEST_PREFIX)
foreach(_source_relative_path ${_python_sources})
set(_dest_relative_path "${_source_relative_path}")
if(_specified_dest_prefix)
@@ -252,11 +162,9 @@ function(add_mlir_python_modules name)
endforeach()
elseif(_source_type STREQUAL "extension")
# Native CPP extension.
- get_target_property(_module_name ${sources_target} mlir_python_EXTENSION_MODULE_NAME)
- get_target_property(_cpp_sources ${sources_target} mlir_python_CPP_SOURCES)
- get_target_property(_private_link_libs ${sources_target} mlir_python_PRIVATE_LINK_LIBS)
- # Transform relative source to based on root dir.
- list(TRANSFORM _cpp_sources PREPEND "${_python_root_dir}/")
+ get_target_property(_module_name ${sources_target} PYTHON_EXTENSION_MODULE_NAME)
+ get_target_property(_cpp_sources ${sources_target} PYTHON_CPP_SOURCES)
+ get_target_property(_private_link_libs ${sources_target} PYTHON_PRIVATE_LINK_LIBS)
set(_extension_target "${name}.extension.${_module_name}.dso")
add_mlir_python_extension(${_extension_target} "${_module_name}"
INSTALL_COMPONENT ${modules_target}
@@ -279,10 +187,8 @@ function(add_mlir_python_modules name)
# Collect dependencies.
set(_depends)
foreach(sources_target ${_flat_targets})
- get_target_property(_local_depends ${sources_target} mlir_python_FILE_DEPENDS)
- if(_local_depends)
- list(APPEND _depends ${_local_depends})
- endif()
+ get_target_property(_local_depends ${sources_target} PYTHON_FILE_DEPENDS)
+ list(APPEND _depends ${_local_depends})
endforeach()
# Build the modules target.
@@ -428,7 +334,7 @@ function(add_mlir_python_common_capi_library name)
set(_embed_libs ${ARG_EMBED_LIBS})
_flatten_mlir_python_targets(_all_source_targets ${ARG_DECLARED_SOURCES})
foreach(t ${_all_source_targets})
- get_target_property(_local_embed_libs ${t} mlir_python_EMBED_CAPI_LINK_LIBS)
+ get_target_property(_local_embed_libs ${t} PYTHON_EMBED_CAPI_LINK_LIBS)
if(_local_embed_libs)
list(APPEND _embed_libs ${_local_embed_libs})
endif()
@@ -466,8 +372,8 @@ endfunction()
function(_flatten_mlir_python_targets output_var)
set(_flattened)
foreach(t ${ARGN})
- get_target_property(_source_type ${t} mlir_python_SOURCES_TYPE)
- get_target_property(_depends ${t} mlir_python_DEPENDS)
+ get_target_property(_source_type ${t} PYTHON_SOURCES_TYPE)
+ get_target_property(_depends ${t} PYTHON_DEPENDS)
if(_source_type)
list(APPEND _flattened "${t}")
if(_depends)
diff --git a/mlir/cmake/modules/MLIRConfig.cmake.in b/mlir/cmake/modules/MLIRConfig.cmake.in
index 9f70647b6a003..93ca16230c85b 100644
--- a/mlir/cmake/modules/MLIRConfig.cmake.in
+++ b/mlir/cmake/modules/MLIRConfig.cmake.in
@@ -10,7 +10,6 @@ set(MLIR_CMAKE_DIR "@MLIR_CONFIG_CMAKE_DIR@")
set(MLIR_INCLUDE_DIRS "@MLIR_CONFIG_INCLUDE_DIRS@")
set(MLIR_TABLEGEN_EXE "@MLIR_TABLEGEN_EXE@")
set(MLIR_INSTALL_AGGREGATE_OBJECTS "@MLIR_INSTALL_AGGREGATE_OBJECTS@")
-set(MLIR_ENABLE_BINDINGS_PYTHON "@MLIR_ENABLE_BINDINGS_PYTHON@")
# For mlir_tablegen()
set(MLIR_INCLUDE_DIR "@MLIR_INCLUDE_DIR@")
diff --git a/mlir/examples/standalone/CMakeLists.txt b/mlir/examples/standalone/CMakeLists.txt
index 3c6d5d0e7be8f..fc42e3e5aba4b 100644
--- a/mlir/examples/standalone/CMakeLists.txt
+++ b/mlir/examples/standalone/CMakeLists.txt
@@ -20,12 +20,6 @@ include(TableGen)
include(AddLLVM)
include(AddMLIR)
include(HandleLLVMOptions)
-include(MLIRDetectPythonEnv)
-
-if(MLIR_ENABLE_BINDINGS_PYTHON)
- include(MLIRDetectPythonEnv)
- mlir_configure_python_dev_packages()
-endif()
include_directories(${LLVM_INCLUDE_DIRS})
include_directories(${MLIR_INCLUDE_DIRS})
@@ -36,10 +30,6 @@ add_definitions(${LLVM_DEFINITIONS})
add_subdirectory(include)
add_subdirectory(lib)
-if(MLIR_ENABLE_BINDINGS_PYTHON)
- message(STATUS "Enabling Python API")
- add_subdirectory(python)
-endif()
add_subdirectory(test)
add_subdirectory(standalone-opt)
add_subdirectory(standalone-translate)
diff --git a/mlir/examples/standalone/include/Standalone/StandaloneOps.td b/mlir/examples/standalone/include/Standalone/StandaloneOps.td
index 3cf0310bcab06..19c7dab3d8010 100644
--- a/mlir/examples/standalone/include/Standalone/StandaloneOps.td
+++ b/mlir/examples/standalone/include/Standalone/StandaloneOps.td
@@ -9,7 +9,7 @@
#ifndef STANDALONE_OPS
#define STANDALONE_OPS
-include "Standalone/StandaloneDialect.td"
+include "StandaloneDialect.td"
include "mlir/Interfaces/SideEffectInterfaces.td"
def Standalone_FooOp : Standalone_Op<"foo", [NoSideEffect,
diff --git a/mlir/examples/standalone/python/CMakeLists.txt b/mlir/examples/standalone/python/CMakeLists.txt
deleted file mode 100644
index 014d6061f7f0f..0000000000000
--- a/mlir/examples/standalone/python/CMakeLists.txt
+++ /dev/null
@@ -1,58 +0,0 @@
-include(AddMLIRPython)
-
-# Specifies that all MLIR packages are co-located under the `mlir_standalone`
-# top level package (the API has been embedded in a relocatable way).
-# TODO: Add an upstream cmake param for this vs having a global here.
-add_compile_definitions("MLIR_PYTHON_PACKAGE_PREFIX=mlir_standalone.")
-
-
-################################################################################
-# Sources
-################################################################################
-
-declare_mlir_python_sources(StandalonePythonSources)
-
-declare_mlir_dialect_python_bindings(
- ADD_TO_PARENT StandalonePythonSources
- ROOT_DIR "${CMAKE_CURRENT_SOURCE_DIR}/mlir_standalone"
- TD_FILE dialects/StandaloneOps.td
- SOURCES
- dialects/standalone.py
- DIALECT_NAME standalone)
-
-declare_mlir_python_extension(StandalonePythonSources.Extension
- MODULE_NAME _standaloneDialects
- ADD_TO_PARENT StandalonePythonSources
- SOURCES
- StandaloneExtension.cpp
- EMBED_CAPI_LINK_LIBS
- StandaloneCAPI
-)
-
-################################################################################
-# Common CAPI
-################################################################################
-
-add_mlir_python_common_capi_library(StandalonePythonCAPI
- INSTALL_COMPONENT StandalonePythonModules
- INSTALL_DESTINATION python_packages/standalone/mlir_standalone/_mlir_libs
- OUTPUT_DIRECTORY "${MLIR_BINARY_DIR}/python_packages/standalone/mlir_standalone/_mlir_libs"
- RELATIVE_INSTALL_ROOT "../../../.."
- DECLARED_SOURCES
- StandalonePythonSources
- MLIRPythonSources.Core
-)
-
-################################################################################
-# Instantiation of all Python modules
-################################################################################
-
-add_mlir_python_modules(StandalonePythonModules
- ROOT_PREFIX "${MLIR_BINARY_DIR}/python_packages/standalone/mlir_standalone"
- INSTALL_PREFIX "python_packages/standalone/mlir_standalone"
- DECLARED_SOURCES
- StandalonePythonSources
- MLIRPythonSources
- COMMON_CAPI_LINK_LIBS
- StandalonePythonCAPI
- )
diff --git a/mlir/examples/standalone/python/StandaloneExtension.cpp b/mlir/examples/standalone/python/StandaloneExtension.cpp
deleted file mode 100644
index 4c2043ad0aa7a..0000000000000
--- a/mlir/examples/standalone/python/StandaloneExtension.cpp
+++ /dev/null
@@ -1,31 +0,0 @@
-//===- StandaloneExtension.cpp - Extension module -------------------------===//
-//
-// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
-// See https://llvm.org/LICENSE.txt for license information.
-// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
-//
-//===----------------------------------------------------------------------===//
-
-#include "Standalone-c/Dialects.h"
-#include "mlir/Bindings/Python/PybindAdaptors.h"
-
-namespace py = pybind11;
-using namespace mlir::python::adaptors;
-
-PYBIND11_MODULE(_standaloneDialects, m) {
- //===--------------------------------------------------------------------===//
- // standalone dialect
- //===--------------------------------------------------------------------===//
- auto standalone_m = m.def_submodule("standalone");
-
- standalone_m.def(
- "register_dialect",
- [](MlirContext context, bool load) {
- MlirDialectHandle handle = mlirGetDialectHandle__standalone__();
- mlirDialectHandleRegisterDialect(handle, context);
- if (load) {
- mlirDialectHandleLoadDialect(handle, context);
- }
- },
- py::arg("context") = py::none(), py::arg("load") = true);
-}
diff --git a/mlir/examples/standalone/python/mlir_standalone/dialects/StandaloneOps.td b/mlir/examples/standalone/python/mlir_standalone/dialects/StandaloneOps.td
deleted file mode 100644
index 6cfa6b7aba3ef..0000000000000
--- a/mlir/examples/standalone/python/mlir_standalone/dialects/StandaloneOps.td
+++ /dev/null
@@ -1,15 +0,0 @@
-//===-- StandaloneOps.td - Python bindings for standalone --*- tablegen -*-===//
-//
-// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
-// See https://llvm.org/LICENSE.txt for license information.
-// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
-//
-//===---------------------------------------------------------------------===//
-
-#ifndef PYTHON_BINDINGS_STANDALONE_OPS
-#define PYTHON_BINDINGS_STANDALONE_OPS
-
-include "mlir/Bindings/Python/Attributes.td"
-include "Standalone/StandaloneOps.td"
-
-#endif
diff --git a/mlir/examples/standalone/python/mlir_standalone/dialects/standalone.py b/mlir/examples/standalone/python/mlir_standalone/dialects/standalone.py
deleted file mode 100644
index c958b2ac19368..0000000000000
--- a/mlir/examples/standalone/python/mlir_standalone/dialects/standalone.py
+++ /dev/null
@@ -1,6 +0,0 @@
-# Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
-# See https://llvm.org/LICENSE.txt for license information.
-# SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
-
-from ._standalone_ops_gen import *
-from .._mlir_libs._standaloneDialects.standalone import *
diff --git a/mlir/examples/standalone/test/CMakeLists.txt b/mlir/examples/standalone/test/CMakeLists.txt
index 1405c981efa43..50327ffef21ef 100644
--- a/mlir/examples/standalone/test/CMakeLists.txt
+++ b/mlir/examples/standalone/test/CMakeLists.txt
@@ -1,7 +1,3 @@
-llvm_canonicalize_cmake_booleans(
- MLIR_ENABLE_BINDINGS_PYTHON
-)
-
configure_lit_site_cfg(
${CMAKE_CURRENT_SOURCE_DIR}/lit.site.cfg.py.in
${CMAKE_CURRENT_BINARY_DIR}/lit.site.cfg.py
diff --git a/mlir/examples/standalone/test/lit.cfg.py b/mlir/examples/standalone/test/lit.cfg.py
index 96dbd3159263e..1f600a6118454 100644
--- a/mlir/examples/standalone/test/lit.cfg.py
+++ b/mlir/examples/standalone/test/lit.cfg.py
@@ -56,12 +56,7 @@
tools = [
'standalone-capi-test',
'standalone-opt',
- 'standalone-translate',
- ToolSubst('%PYTHON', config.python_executable, unresolved='ignore'),
+ 'standalone-translate'
]
llvm_config.add_tool_substitutions(tools, tool_dirs)
-
-llvm_config.with_environment('PYTHONPATH', [
- os.path.join(config.mlir_binary_dir, 'python_packages', 'standalone'),
-], append_path=True)
diff --git a/mlir/examples/standalone/test/lit.site.cfg.py.in b/mlir/examples/standalone/test/lit.site.cfg.py.in
index f2c9e76f46ea9..26fb8aab87f6c 100644
--- a/mlir/examples/standalone/test/lit.site.cfg.py.in
+++ b/mlir/examples/standalone/test/lit.site.cfg.py.in
@@ -12,9 +12,7 @@ config.llvm_shlib_dir = "@SHLIBDIR@"
config.llvm_shlib_ext = "@SHLIBEXT@"
config.llvm_exe_ext = "@EXEEXT@"
config.lit_tools_dir = "@LLVM_LIT_TOOLS_DIR@"
-config.mlir_binary_dir = "@MLIR_BINARY_DIR@"
-config.python_executable = "@Python3_EXECUTABLE@"
-config.enable_bindings_python = @MLIR_ENABLE_BINDINGS_PYTHON@
+config.python_executable = "@PYTHON_EXECUTABLE@"
config.gold_executable = "@GOLD_EXECUTABLE@"
config.ld64_executable = "@LD64_EXECUTABLE@"
config.enable_shared = @ENABLE_SHARED@
diff --git a/mlir/examples/standalone/test/python/lit.local.cfg b/mlir/examples/standalone/test/python/lit.local.cfg
deleted file mode 100644
index b70b9d7a34fdd..0000000000000
--- a/mlir/examples/standalone/test/python/lit.local.cfg
+++ /dev/null
@@ -1,4 +0,0 @@
-config.suffixes.add('.py')
-
-if not config.enable_bindings_python:
- config.unsupported = True
diff --git a/mlir/examples/standalone/test/python/smoketest.py b/mlir/examples/standalone/test/python/smoketest.py
deleted file mode 100644
index 29d1e3b5e4ef6..0000000000000
--- a/mlir/examples/standalone/test/python/smoketest.py
+++ /dev/null
@@ -1,17 +0,0 @@
-# RUN: %PYTHON %s | FileCheck %s
-
-from mlir_standalone.ir import *
-from mlir_standalone.dialects import (
- builtin as builtin_d,
- standalone as standalone_d
-)
-
-with Context():
- standalone_d.register_dialect()
- module = Module.parse("""
- %0 = constant 2 : i32
- %1 = standalone.foo %0 : i32
- """)
- # CHECK: %[[C:.*]] = constant 2 : i32
- # CHECK: standalone.foo %[[C]] : i32
- print(str(module))
diff --git a/mlir/python/CMakeLists.txt b/mlir/python/CMakeLists.txt
index 644530f0e3798..6a49c773e8fe9 100644
--- a/mlir/python/CMakeLists.txt
+++ b/mlir/python/CMakeLists.txt
@@ -174,26 +174,18 @@ set(PYTHON_SOURCE_DIR "${MLIR_SOURCE_DIR}/lib/Bindings/Python")
declare_mlir_python_extension(MLIRPythonExtension.Core
MODULE_NAME _mlir
ADD_TO_PARENT MLIRPythonSources.Core
- ROOT_DIR "${PYTHON_SOURCE_DIR}"
SOURCES
- DialectLinalg.cpp # TODO: Break this out.
- DialectSparseTensor.cpp # TODO: Break this out.
- MainModule.cpp
- IRAffine.cpp
- IRAttributes.cpp
- IRCore.cpp
- IRInterfaces.cpp
- IRModule.cpp
- IRTypes.cpp
- PybindUtils.cpp
- Pass.cpp
-
- # Headers must be included explicitly so they are installed.
- Dialects.h
- Globals.h
- IRModule.h
- Pass.h
- PybindUtils.h
+ ${PYTHON_SOURCE_DIR}/DialectLinalg.cpp # TODO: Break this out.
+ ${PYTHON_SOURCE_DIR}/DialectSparseTensor.cpp # TODO: Break this out.
+ ${PYTHON_SOURCE_DIR}/MainModule.cpp
+ ${PYTHON_SOURCE_DIR}/IRAffine.cpp
+ ${PYTHON_SOURCE_DIR}/IRAttributes.cpp
+ ${PYTHON_SOURCE_DIR}/IRCore.cpp
+ ${PYTHON_SOURCE_DIR}/IRInterfaces.cpp
+ ${PYTHON_SOURCE_DIR}/IRModule.cpp
+ ${PYTHON_SOURCE_DIR}/IRTypes.cpp
+ ${PYTHON_SOURCE_DIR}/PybindUtils.cpp
+ ${PYTHON_SOURCE_DIR}/Pass.cpp
PRIVATE_LINK_LIBS
LLVMSupport
EMBED_CAPI_LINK_LIBS
@@ -210,9 +202,8 @@ declare_mlir_python_extension(MLIRPythonExtension.Core
declare_mlir_python_extension(MLIRPythonExtension.AllPassesRegistration
MODULE_NAME _mlirAllPassesRegistration
- ROOT_DIR "${PYTHON_SOURCE_DIR}"
SOURCES
- AllPassesRegistration.cpp
+ ${PYTHON_SOURCE_DIR}/AllPassesRegistration.cpp
PRIVATE_LINK_LIBS
LLVMSupport
EMBED_CAPI_LINK_LIBS
@@ -223,9 +214,8 @@ declare_mlir_python_extension(MLIRPythonExtension.AllPassesRegistration
declare_mlir_python_extension(MLIRPythonExtension.AsyncDialectPasses
MODULE_NAME _mlirAsyncPasses
ADD_TO_PARENT MLIRPythonSources.Dialects.async_dialect
- ROOT_DIR "${PYTHON_SOURCE_DIR}"
SOURCES
- AsyncPasses.cpp
+ ${PYTHON_SOURCE_DIR}/AsyncPasses.cpp
PRIVATE_LINK_LIBS
LLVMSupport
EMBED_CAPI_LINK_LIBS
@@ -235,9 +225,8 @@ declare_mlir_python_extension(MLIRPythonExtension.AsyncDialectPasses
declare_mlir_python_extension(MLIRPythonExtension.Conversions
MODULE_NAME _mlirConversions
ADD_TO_PARENT MLIRPythonSources.Passes
- ROOT_DIR "${PYTHON_SOURCE_DIR}"
SOURCES
- Conversions/Conversions.cpp
+ ${PYTHON_SOURCE_DIR}/Conversions/Conversions.cpp
PRIVATE_LINK_LIBS
LLVMSupport
EMBED_CAPI_LINK_LIBS
@@ -247,9 +236,8 @@ declare_mlir_python_extension(MLIRPythonExtension.Conversions
declare_mlir_python_extension(MLIRPythonExtension.ExecutionEngine
MODULE_NAME _mlirExecutionEngine
ADD_TO_PARENT MLIRPythonSources.ExecutionEngine
- ROOT_DIR "${PYTHON_SOURCE_DIR}"
SOURCES
- ExecutionEngineModule.cpp
+ ${PYTHON_SOURCE_DIR}/ExecutionEngineModule.cpp
PRIVATE_LINK_LIBS
LLVMSupport
EMBED_CAPI_LINK_LIBS
@@ -259,9 +247,8 @@ declare_mlir_python_extension(MLIRPythonExtension.ExecutionEngine
declare_mlir_python_extension(MLIRPythonExtension.GPUDialectPasses
MODULE_NAME _mlirGPUPasses
ADD_TO_PARENT MLIRPythonSources.Dialects.gpu
- ROOT_DIR "${PYTHON_SOURCE_DIR}"
SOURCES
- GPUPasses.cpp
+ ${PYTHON_SOURCE_DIR}/GPUPasses.cpp
PRIVATE_LINK_LIBS
LLVMSupport
EMBED_CAPI_LINK_LIBS
@@ -271,9 +258,8 @@ declare_mlir_python_extension(MLIRPythonExtension.GPUDialectPasses
declare_mlir_python_extension(MLIRPythonExtension.LinalgPasses
MODULE_NAME _mlirLinalgPasses
ADD_TO_PARENT MLIRPythonSources.Dialects.linalg
- ROOT_DIR "${PYTHON_SOURCE_DIR}"
SOURCES
- LinalgPasses.cpp
+ ${PYTHON_SOURCE_DIR}/LinalgPasses.cpp
PRIVATE_LINK_LIBS
LLVMSupport
EMBED_CAPI_LINK_LIBS
@@ -283,9 +269,8 @@ declare_mlir_python_extension(MLIRPythonExtension.LinalgPasses
declare_mlir_python_extension(MLIRPythonExtension.SparseTensorDialectPasses
MODULE_NAME _mlirSparseTensorPasses
ADD_TO_PARENT MLIRPythonSources.Dialects.sparse_tensor
- ROOT_DIR "${PYTHON_SOURCE_DIR}"
SOURCES
- SparseTensorPasses.cpp
+ ${PYTHON_SOURCE_DIR}/SparseTensorPasses.cpp
PRIVATE_LINK_LIBS
LLVMSupport
EMBED_CAPI_LINK_LIBS
@@ -295,9 +280,8 @@ declare_mlir_python_extension(MLIRPythonExtension.SparseTensorDialectPasses
declare_mlir_python_extension(MLIRPythonExtension.Transforms
MODULE_NAME _mlirTransforms
ADD_TO_PARENT MLIRPythonSources.Passes
- ROOT_DIR "${PYTHON_SOURCE_DIR}"
SOURCES
- Transforms/Transforms.cpp
+ ${PYTHON_SOURCE_DIR}/Transforms/Transforms.cpp
PRIVATE_LINK_LIBS
LLVMSupport
EMBED_CAPI_LINK_LIBS
diff --git a/mlir/test/Examples/standalone/test.toy b/mlir/test/Examples/standalone/test.toy
index 02385f28ead07..2e5c4cd575e66 100644
--- a/mlir/test/Examples/standalone/test.toy
+++ b/mlir/test/Examples/standalone/test.toy
@@ -1,6 +1,4 @@
# RUN: %cmake %mlir_src_root/examples/standalone -DCMAKE_CXX_COMPILER=%host_cxx -DCMAKE_C_COMPILER=%host_cc -DLLVM_ENABLE_LIBCXX=%enable_libcxx -DMLIR_DIR=%mlir_cmake_dir ; %cmake --build . --target check-standalone | tee %t | FileCheck %s
-# Note: The number of checked tests is not important. The command will fail
-# if any fail.
-# CHECK: Passed
+# CHECK: Passed: 4
# UNSUPPORTED: windows, android
More information about the Mlir-commits
mailing list