Spaces:
Running
on
Zero
Running
on
Zero
# Copyright (c) 2020, NVIDIA CORPORATION. All rights reserved. | |
# | |
# NVIDIA CORPORATION and its licensors retain all intellectual property | |
# and proprietary rights in and to this software, related documentation | |
# and any modifications thereto. Any use, reproduction, disclosure or | |
# distribution of this software and related documentation without an express | |
# license agreement from NVIDIA CORPORATION is strictly prohibited. | |
import nvdiffrast | |
import setuptools | |
import os | |
from torch.utils.cpp_extension import CUDAExtension, BuildExtension | |
with open("README.md", "r") as fh: | |
long_description = fh.read() | |
setuptools.setup( | |
name="nvdiffrast", | |
version=nvdiffrast.__version__, | |
author="Samuli Laine", | |
author_email="slaine@nvidia.com", | |
description="nvdiffrast - modular primitives for high-performance differentiable rendering", | |
long_description=long_description, | |
long_description_content_type="text/markdown", | |
url="https://github.com/NVlabs/nvdiffrast", | |
packages=setuptools.find_packages(), | |
# package_data={ | |
# 'nvdiffrast': [ | |
# 'common/*.h', | |
# 'common/*.inl', | |
# 'common/*.cu', | |
# 'common/*.cpp', | |
# 'common/cudaraster/*.hpp', | |
# 'common/cudaraster/impl/*.cpp', | |
# 'common/cudaraster/impl/*.hpp', | |
# 'common/cudaraster/impl/*.inl', | |
# 'common/cudaraster/impl/*.cu', | |
# 'lib/*.h', | |
# 'torch/*.h', | |
# 'torch/*.inl', | |
# 'torch/*.cpp', | |
# 'tensorflow/*.cu', | |
# ] + (['lib/*.lib'] if os.name == 'nt' else []) | |
# }, | |
# include_package_data=True, | |
ext_modules=[ | |
CUDAExtension( | |
name="nvdiffrast.torch._C", | |
sources=[ | |
'nvdiffrast/common/cudaraster/impl/Buffer.cpp', | |
'nvdiffrast/common/cudaraster/impl/CudaRaster.cpp', | |
'nvdiffrast/common/cudaraster/impl/RasterImpl_.cu', | |
'nvdiffrast/common/cudaraster/impl/RasterImpl.cpp', | |
'nvdiffrast/common/common.cpp', | |
'nvdiffrast/common/rasterize.cu', | |
'nvdiffrast/common/interpolate.cu', | |
'nvdiffrast/common/texture_.cu', | |
'nvdiffrast/common/texture.cpp', | |
'nvdiffrast/common/antialias.cu', | |
'nvdiffrast/torch/torch_bindings.cpp', | |
'nvdiffrast/torch/torch_rasterize.cpp', | |
'nvdiffrast/torch/torch_interpolate.cpp', | |
'nvdiffrast/torch/torch_texture.cpp', | |
'nvdiffrast/torch/torch_antialias.cpp', | |
], | |
extra_compile_args={ | |
'cxx': ['-DNVDR_TORCH'], | |
'nvcc': ['-DNVDR_TORCH', '-lineinfo'], | |
}, | |
) | |
], | |
cmdclass={ | |
'build_ext': BuildExtension | |
}, | |
install_requires=['numpy'], # note: can't require torch here as it will install torch even for a TensorFlow container | |
classifiers=[ | |
"Programming Language :: Python :: 3", | |
"Operating System :: OS Independent", | |
], | |
python_requires='>=3.6', | |
) | |