File size: 3,114 Bytes
15fe7bc |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 |
# 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',
)
|