# 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", )