Pinwheel/GLIP-BLIP-Object-Detection-VQA
61
1# Copyright (c) Facebook, Inc. and its affiliates. All Rights Reserved.2#!/usr/bin/env python3 4import glob5import os6 7import torch8from setuptools import find_packages9from setuptools import setup10from torch.utils.cpp_extension import CUDA_HOME11from torch.utils.cpp_extension import CppExtension12from torch.utils.cpp_extension import CUDAExtension13 14requirements = ["torch", "torchvision"]15 16 17def get_extensions():18 this_dir = os.path.dirname(os.path.abspath(__file__))19 extensions_dir = os.path.join(this_dir, "maskrcnn_benchmark", "csrc")20 21 main_file = glob.glob(os.path.join(extensions_dir, "*.cpp"))22 source_cpu = glob.glob(os.path.join(extensions_dir, "cpu", "*.cpp"))23 source_cuda = glob.glob(os.path.join(extensions_dir, "cuda", "*.cu"))24 25 sources = main_file + source_cpu26 extension = CppExtension27 28 extra_compile_args = {"cxx": []}29 define_macros = []30 31 if (torch.cuda.is_available() and CUDA_HOME is not None) or os.getenv("FORCE_CUDA", "0") == "1":32 extension = CUDAExtension33 sources += source_cuda34 define_macros += [("WITH_CUDA", None)]35 extra_compile_args["nvcc"] = [36 "-DCUDA_HAS_FP16=1",37 "-D__CUDA_NO_HALF_OPERATORS__",38 "-D__CUDA_NO_HALF_CONVERSIONS__",39 "-D__CUDA_NO_HALF2_OPERATORS__",40 ]41 42 sources = [os.path.join(extensions_dir, s) for s in sources]43 44 include_dirs = [extensions_dir]45 46 ext_modules = [47 extension(48 "maskrcnn_benchmark._C",49 sources,50 include_dirs=include_dirs,51 define_macros=define_macros,52 extra_compile_args=extra_compile_args,53 )54 ]55 56 return ext_modules57 58 59setup(60 name="maskrcnn_benchmark",61 version="0.1",62 author="fmassa",63 url="https://github.com/facebookresearch/maskrcnn-benchmark",64 description="object detection in pytorch",65 packages=find_packages(exclude=("configs", "tests",)),66 # install_requires=requirements,67 ext_modules=get_extensions(),68 cmdclass={"build_ext": torch.utils.cpp_extension.BuildExtension},69)70 