diff --git a/python/CMakeLists.txt b/python/CMakeLists.txt index f0b6de07dd..a2e8f58d24 100644 --- a/python/CMakeLists.txt +++ b/python/CMakeLists.txt @@ -12,7 +12,7 @@ if(SKBUILD) endif() if(MATERIALX_INSTALL_PYTHON AND PYTHON_EXECUTABLE AND NOT SKBUILD) - set(SETUP_PY "${CMAKE_INSTALL_PREFIX}/python/setup.py") - configure_file("${CMAKE_CURRENT_SOURCE_DIR}/setup.py.in" "${SETUP_PY}") + set(PYPROJECT_TOML "${CMAKE_INSTALL_PREFIX}/python/pyproject.toml") + configure_file("${CMAKE_CURRENT_SOURCE_DIR}/pyproject.toml.in" "${PYPROJECT_TOML}") install(CODE "execute_process(COMMAND ${PYTHON_EXECUTABLE} -m pip install . WORKING_DIRECTORY ${CMAKE_INSTALL_PREFIX}/python)") endif() diff --git a/python/MaterialX/MANIFEST.in b/python/MaterialX/MANIFEST.in deleted file mode 100644 index 576179d13a..0000000000 --- a/python/MaterialX/MANIFEST.in +++ /dev/null @@ -1 +0,0 @@ -recursive-include libraries diff --git a/python/pyproject.toml.in b/python/pyproject.toml.in new file mode 100644 index 0000000000..f0f65abd6a --- /dev/null +++ b/python/pyproject.toml.in @@ -0,0 +1,13 @@ +[build-system] +requires = ["setuptools"] +build-backend = "setuptools.build_meta" + +[project] +name = "MaterialX" +version = "${MATERIALX_MAJOR_VERSION}.${MATERIALX_MINOR_VERSION}.${MATERIALX_BUILD_VERSION}" + +[tool.setuptools] +packages = ["MaterialX"] + +[tool.setuptools.package-data] +MaterialX = ["**/*"] diff --git a/python/setup.py.in b/python/setup.py.in deleted file mode 100644 index 072bafa968..0000000000 --- a/python/setup.py.in +++ /dev/null @@ -1,18 +0,0 @@ -from setuptools import setup -import os - -os.chdir(os.path.dirname(os.path.abspath(__file__))) - -def getRecursivePackageData(root): - packageData = [] - for dirpath, dirnames, filenames in os.walk(root): - relpath = os.path.relpath(dirpath, root) - packageData.append(os.path.join(relpath, '*.*')) - return packageData - -setup(name='MaterialX', - url='www.materialx.org', - version='${MATERIALX_MAJOR_VERSION}.${MATERIALX_MINOR_VERSION}.${MATERIALX_BUILD_VERSION}', - packages=['MaterialX'], - package_data={'MaterialX' : getRecursivePackageData('MaterialX')}, - zip_safe = False)