setup.py 1.75 KB
Newer Older
Hang Zhang's avatar
init  
Hang Zhang committed
1
2
3
4
5
6
7
8
9
10
11
12
##+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
## 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 
##+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

import os
import sys
13
import subprocess
Hang Zhang's avatar
init  
Hang Zhang committed
14
15

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

this_file = os.path.dirname(__file__)

21
#extra_compile_args = ['-std=c++11', '-Wno-write-strings']
Hang Zhang's avatar
tested  
Hang Zhang committed
22
if os.getenv('PYTORCH_BINARY_BUILD') and platform.system() == 'Linux':
Hang Zhang's avatar
indent  
Hang Zhang committed
23
24
25
    print('PYTORCH_BINARY_BUILD found. Static linking libstdc++ on Linux')
    extra_compile_args += ['-static-libstdc++']
    extra_link_args += ['-static-libstdc++']
Hang Zhang's avatar
tested  
Hang Zhang committed
26

27
28
29
30
31
32
class TestCommand(install):
    """Post-installation mode.""" 
    def run(self):
        install.run(self)
        subprocess.check_call("python test/test.py".split())

Hang Zhang's avatar
init  
Hang Zhang committed
33
setup(
Hang Zhang's avatar
indent  
Hang Zhang committed
34
35
36
37
38
39
40
41
42
43
44
    name="encoding",
    version="0.0.1",
    description="PyTorch Encoding Layer",
    url="https://github.com/zhanghang1989/PyTorch-Encoding-Layer",
    author="Hang Zhang",
    author_email="zhang.hang@rutgers.edu",
    # Require cffi.
    install_requires=["cffi>=1.0.0"],
    setup_requires=["cffi>=1.0.0"],
    # Exclude the build files.
    packages=find_packages(exclude=["build"]),
45
    #extra_compile_args=extra_compile_args,
Hang Zhang's avatar
indent  
Hang Zhang committed
46
47
48
49
50
51
    # Package where to put the extensions. Has to be a prefix of build.py.
    ext_package="",
    # Extensions to compile.
    cffi_modules=[
        os.path.join(this_file, "build.py:ffi")
    ],
52
53
54
    cmdclass={
        'install': TestCommand,
    },
Hang Zhang's avatar
init  
Hang Zhang committed
55
)