| #!/usr/bin/python3 |
| |
| # Copyright 2020 Google LLC |
| # |
| # 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 |
| # |
| # https://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. |
| |
| # Build platform specific wheel files for the pyiree.rt package. |
| # Built artifacts are per-platform and build out of the build tree. |
| |
| import os |
| import platform |
| from setuptools import setup, find_namespace_packages |
| |
| # Make this setup position independent and make it not conflict with |
| # parallel scripts. |
| this_dir = os.path.abspath(os.path.dirname(__file__)) |
| setup_dir = os.path.join(this_dir, "setupbuild", "tools_tf") |
| os.makedirs(setup_dir, exist_ok=True) |
| os.chdir(setup_dir) |
| |
| exe_suffix = ".exe" if platform.system() == "Windows" else "" |
| |
| |
| def read(fname): |
| return open(os.path.join(this_dir, fname), "rt").read() |
| |
| |
| # Force platform specific wheel. |
| # https://stackoverflow.com/questions/45150304 |
| try: |
| from wheel.bdist_wheel import bdist_wheel as _bdist_wheel |
| |
| class bdist_wheel(_bdist_wheel): |
| |
| def finalize_options(self): |
| _bdist_wheel.finalize_options(self) |
| self.root_is_pure = False |
| except ImportError: |
| bdist_wheel = None |
| |
| setup( |
| name="google-iree-tools-tf", |
| version="@IREE_PYTHON_VERSION@", |
| author="The IREE Team", |
| author_email="iree-discuss@googlegroups.com", |
| license="Apache", |
| description="IREE Python TensorFlow Tools Binaries", |
| long_description= |
| "Package containing platform-specific binaries for TensorFlow " |
| "compiler tools", |
| long_description_content_type="text/plain", |
| url="https://github.com/google/iree", |
| classifiers=[ |
| "Programming Language :: Python :: 3", |
| "License :: OSI Approved :: Apache License", |
| "Operating System :: OS Independent", |
| "Development Status :: 3 - Alpha", |
| ], |
| python_requires=">=3.6", |
| package_dir={"": this_dir}, |
| packages=find_namespace_packages( |
| where=this_dir, |
| include=["pyiree.tools.tf", "pyiree.tf.support"], |
| exclude=["*.CMakeFiles"]), |
| # Matching the native extension as a data file keeps setuptools from |
| # "building" it (i.e. turning it into a static binary). |
| package_data={ |
| "pyiree.tools.tf": [f"iree-tf-import{exe_suffix}",], |
| }, |
| cmdclass={'bdist_wheel': bdist_wheel}, |
| zip_safe=False, |
| ) |