setup.py 2.26 KB
Newer Older
Hang Zhang's avatar
init  
Hang Zhang committed
1
2
3
4
5
6
7
8
9
10
##+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
## Created by: Hang Zhang
## ECE Department, Rutgers University
## Email: zhang.hang@rutgers.edu
## Copyright (c) 2017
##
## This source code is licensed under the MIT-style license found in the
## LICENSE file in the root directory of this source tree 
##+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Hang Zhang's avatar
v1.0.1  
Hang Zhang committed
11
import io
Hang Zhang's avatar
init  
Hang Zhang committed
12
import os
13
import subprocess
Hang Zhang's avatar
init  
Hang Zhang committed
14
15

from setuptools import setup, find_packages
Hang Zhang's avatar
v0.1.0  
Hang Zhang committed
16
17
import setuptools.command.develop 
import setuptools.command.install 
Hang Zhang's avatar
init  
Hang Zhang committed
18

Hang Zhang's avatar
v0.1.0  
Hang Zhang committed
19
cwd = os.path.dirname(os.path.abspath(__file__))
Hang Zhang's avatar
init  
Hang Zhang committed
20

Hang Zhang's avatar
Hang Zhang committed
21
version = '1.2.0'
Hang Zhang's avatar
v0.1.0  
Hang Zhang committed
22
try:
Hang Zhang's avatar
Hang Zhang committed
23
24
    from datetime import date
    today = date.today()
Stacy Yang's avatar
Stacy Yang committed
25
    day = today.strftime("b%Y%m%d")
Hang Zhang's avatar
Hang Zhang committed
26
    version += day
Hang Zhang's avatar
v0.1.0  
Hang Zhang committed
27
28
except Exception:
    pass
29

Zhang's avatar
v0.4.2  
Zhang committed
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
def create_version_file():
    global version, cwd
    print('-- Building version ' + version)
    version_path = os.path.join(cwd, 'encoding', 'version.py')
    with open(version_path, 'w') as f:
        f.write('"""This is encoding version file."""\n')
        f.write("__version__ = '{}'\n".format(version))

# run test scrip after installation
class install(setuptools.command.install.install):
    def run(self):
        create_version_file()
        setuptools.command.install.install.run(self)

class develop(setuptools.command.develop.develop):
    def run(self):
        create_version_file()
        setuptools.command.develop.develop.run(self)

Hang Zhang's avatar
Hang Zhang committed
49
readme = open('README.md').read()
Zhang's avatar
Zhang committed
50
51
52
53
54

requirements = [
    'numpy',
    'tqdm',
    'nose',
Hang Zhang's avatar
Hang Zhang committed
55
    'portalocker',
Hang Zhang's avatar
Hang Zhang committed
56
57
    'torch>=1.4.0',
    'torchvision>=0.5.0',
Zhang's avatar
v0.4.2  
Zhang committed
58
59
60
61
62
    'Pillow',
    'scipy',
    'requests',
]

Hang Zhang's avatar
init  
Hang Zhang committed
63
setup(
Hang Zhang's avatar
Hang Zhang committed
64
    name="torch-encoding",
Hang Zhang's avatar
v0.1.0  
Hang Zhang committed
65
    version=version,
Hang Zhang's avatar
indent  
Hang Zhang committed
66
    author="Hang Zhang",
Zhang's avatar
Zhang committed
67
68
69
70
    author_email="zhanghang0704@gmail.com",
    url="https://github.com/zhanghang1989/PyTorch-Encoding",
    description="PyTorch Encoding Package",
    long_description=readme,
Hang Zhang's avatar
Hang Zhang committed
71
    long_description_content_type='text/markdown',
Zhang's avatar
Zhang committed
72
73
74
75
    license='MIT',
    install_requires=requirements,
    packages=find_packages(exclude=["tests", "experiments"]),
    package_data={ 'encoding': [
Hang Zhang's avatar
Hang Zhang committed
76
        'LICENSE',
Zhang's avatar
v0.4.2  
Zhang committed
77
78
79
80
81
        'lib/cpu/*.h',
        'lib/cpu/*.cpp',
        'lib/gpu/*.h',
        'lib/gpu/*.cpp',
        'lib/gpu/*.cu',
Hang Zhang's avatar
path  
Hang Zhang committed
82
    ]},
83
    cmdclass={
Hang Zhang's avatar
v0.1.0  
Hang Zhang committed
84
        'install': install,
Zhang's avatar
v0.4.2  
Zhang committed
85
        'develop': develop,
86
    },
Hang Zhang's avatar
init  
Hang Zhang committed
87
)