-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathsetup.py
82 lines (70 loc) · 2 KB
/
setup.py
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
#!/usr/bin/python
#-*- coding: utf-8
from setuptools import setup, Extension
import platform
import os
include_dirs = ['src/include']
library_dirs = []
extra_link_args = []
src_files = [
'src/module/init.c',
'src/module/types.c',
'src/session/type.c',
'src/action/methods.cc',
'src/action/new.cc',
'src/action/tools.cc',
'src/module/properties.cc',
'src/session/actions.cc',
'src/session/attributes.cc',
'src/session/get.cc',
'src/session/init.cc',
'src/session/misc.cc',
'src/session/network.cc',
'src/session/set.cc',
'src/session/tools.cc',
'src/session/wait.cc',
'src/objects/action.cc',
'src/objects/session.cc',
'src/module/tools.cc'
]
library_names = [
]
if platform.system() == 'Windows':
extra_link_args.append("/delayload:lib3270.dll")
#extra_link_args.append("/NODEFAULTLIB:LIBCMT")
src_files.append('src/module/windows/init.cc' )
library_names.append('ipc3270.static')
if os.path.isdir('ipc3270'):
include_dirs.append('ipc3270/include')
library_dirs.append('ipc3270/lib')
else:
include_dirs.append(os.getenv('PW3270_SDK_PATH') + '/include')
library_dirs.append(os.getenv('PW3270_SDK_PATH') + '/lib')
else:
library_names.append('ipc3270')
tn3270 = Extension(
'tn3270',
include_dirs = include_dirs,
libraries = library_names,
library_dirs=library_dirs,
extra_link_args=extra_link_args,
sources=src_files
)
package_version='5.5'
with open(r'configure.ac', 'r') as fp:
lines = fp.readlines()
for line in lines:
if line.find('AC_INIT') != -1:
package_version = line.split('[')[2].split(']')[0].strip()
break;
setup ( name = 'tn3270',
version = package_version,
description = 'Python bindings for lib3270/pw3270.',
author = 'Perry Werneck',
author_email = 'perry.werneck@gmail.com',
url = 'https://github.com/PerryWerneck/python3-tn3270',
long_description = '''
This is an extension allowing tn3270 acess for python applications
using lib3270 directly or ipc calls to an enabled pw3270 window.
''',
ext_modules = [ tn3270 ])