-
Notifications
You must be signed in to change notification settings - Fork 8
/
Copy pathsetup.py
126 lines (105 loc) · 3.69 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
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import sys
import re
try:
import multiprocessing
del multiprocessing
except:
pass
def setup_python3():
# Taken from "distribute" setup.py
from distutils.filelist import FileList
from distutils import dir_util, file_util, util, log
from os.path import join
tmp_src = join("build", "src")
log.set_verbosity(1)
fl = FileList()
for line in open("MANIFEST.in"):
if not line.strip():
continue
fl.process_template_line(line)
dir_util.create_tree(tmp_src, fl.files)
outfiles_2to3 = []
for f in fl.files:
outf, copied = file_util.copy_file(f, join(tmp_src, f), update=1)
if copied and outf.endswith(".py"):
outfiles_2to3.append(outf)
util.run_2to3(outfiles_2to3)
# arrange setup to use the copy
sys.path.insert(0, tmp_src)
return tmp_src
# Find version. We have to do this because we can't import it in Python 3 until
# its been automatically converted in the setup process.
def find_version(filename):
_version_re = re.compile(r'__version__ = "(.*)"')
for line in open(filename):
version_match = _version_re.match(line)
if version_match:
return version_match.group(1)
__version__ = find_version('rdflib_rdfjson/__init__.py')
install_requires = ["rdflib>=3.0",
"rdfextras>=0.1",
]
if sys.version_info[:2] < (2, 6):
install_requires.append("simplejson")
config = dict(
name='rdflib-rdfjson',
version=__version__,
description="rdflib extension adding RDF/JSON parser and serializer",
author="Graham Higgins",
author_email="[email protected]",
url="http://github.com/RDFLib/rdflib-rdfjson",
download_url="https://github.com/RDFLib/rdflib-rdfjson/zipball/master",
license="BSD",
platforms=["any"],
long_description="""\
This parser/serialiser will
* read in an RDF/JSON formatted document and create an RDF graph
* serialize an RDF graph to RDF/JSON formatted output
See:
http://docs.api.talis.com/platform-api/output-types/rdf-json
It was originally written by Rob Sanderson as a plugin for RDFLib 2.x.
This version modifies the import paths for compatibility with RDFLib 3.x
and changes its name to RdfJsonParser due to the large number of
other JSON serialisations of RDF.
See:
http://code.google.com/p/rdflib/issues/detail?id=76
""",
classifiers=[
"Programming Language :: Python",
"Programming Language :: Python :: 2",
"Programming Language :: Python :: 3",
"Programming Language :: Python :: 2.5",
"Programming Language :: Python :: 2.6",
"Programming Language :: Python :: 2.7",
"Programming Language :: Python :: 3.2",
"License :: OSI Approved :: BSD License",
"Topic :: Software Development :: Libraries :: Python Modules",
"Operating System :: OS Independent",
"Natural Language :: English",
],
packages=["rdflib_rdfjson",
],
test_suite="test",
install_requires=install_requires,
entry_points={
'rdf.plugins.parser': [
'rdf-json = rdflib_rdfjson.rdfjson_parser:RdfJsonParser',
],
'rdf.plugins.serializer': [
'rdf-json = rdflib_rdfjson.rdfjson_serializer:RdfJsonSerializer',
],
}
)
if sys.version_info[0] >= 3:
from setuptools import setup
config.update({'use_2to3': True})
config.update({'src_root': setup_python3()})
else:
try:
from setuptools import setup
config.update({'test_suite': "nose.collector"})
except ImportError:
from distutils.core import setup
setup(**config)