Skip to content

Commit fef60e7

Browse files
committed
Update setup.py: removing PROJ.4
Removed sections for building PROJ.4. Using a different (clearer?) way to check sys.version_info for python version 2.4 or greater.
1 parent 82d77b5 commit fef60e7

File tree

1 file changed

+10
-43
lines changed

1 file changed

+10
-43
lines changed

setup.py

Lines changed: 10 additions & 43 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
import sys, glob, os, subprocess
22

3-
major, minor1, minor2, s, tmp = sys.version_info
4-
if major==2 and minor1<4 or major<2:
3+
if sys.version_info < (2, 4):
54
raise SystemExit("""matplotlib and the basemap toolkit require Python 2.4 or later.""")
65

76
from distutils.dist import Distribution
@@ -81,57 +80,26 @@ def checkversion(GEOS_dir):
8180
geos_include_dirs=[os.path.join(GEOS_dir,'include'),inc_dirs]
8281
geos_library_dirs=[os.path.join(GEOS_dir,'lib'),os.path.join(GEOS_dir,'lib64')]
8382

84-
# proj4 and geos extensions.
85-
deps = glob.glob('src/*.c')
86-
deps.remove(os.path.join('src','_proj.c'))
87-
deps.remove(os.path.join('src','_geoslib.c'))
88-
8983
packages = ['mpl_toolkits','mpl_toolkits.basemap']
9084
namespace_packages = ['mpl_toolkits']
9185
package_dirs = {'':'lib'}
92-
extensions = [Extension("mpl_toolkits.basemap._proj",deps+['src/_proj.c'],include_dirs = ['src'],)]
93-
# can't install _geoslib in mpl_toolkits.basemap namespace,
94-
# or Basemap objects won't be pickleable.
95-
if sys.platform == 'win32':
96-
# don't use runtime_library_dirs on windows (workaround
97-
# for a distutils bug - http://bugs.python.org/issue2437).
98-
#extensions.append(Extension("mpl_toolkits.basemap._geoslib",['src/_geoslib.c'],
99-
extensions.append(Extension("_geoslib",['src/_geoslib.c'],
100-
library_dirs=geos_library_dirs,
101-
include_dirs=geos_include_dirs,
102-
libraries=['geos']))
103-
else:
104-
#extensions.append(Extension("mpl_toolkits.basemap._geoslib",['src/_geoslib.c'],
105-
extensions.append(Extension("_geoslib",['src/_geoslib.c'],
106-
library_dirs=geos_library_dirs,
107-
runtime_library_dirs=geos_library_dirs,
108-
include_dirs=geos_include_dirs,
109-
libraries=['geos_c']))
11086

11187
# Specify all the required mpl data
11288
# create pyproj binary datum shift grid files.
11389
pathout =\
11490
os.path.join('lib',os.path.join('mpl_toolkits',os.path.join('basemap','data')))
115-
if sys.argv[1] not in ['sdist','clean']:
116-
cc = ccompiler.new_compiler()
117-
sysconfig.get_config_vars()
118-
sysconfig.customize_compiler(cc)
119-
cc.set_include_dirs(['src'])
120-
objects = cc.compile(['nad2bin.c', 'src/pj_malloc.c'])
121-
execname = 'nad2bin'
122-
cc.link_executable(objects, execname)
123-
llafiles = glob.glob('datumgrid/*.lla')
124-
cmd = os.path.join(os.getcwd(),execname)
125-
for f in llafiles:
126-
fout = os.path.basename(f.split('.lla')[0])
127-
fout = os.path.join(pathout,fout)
128-
strg = '%s %s < %s' % (cmd, fout, f)
129-
sys.stdout.write('executing %s\n' % strg)
130-
subprocess.call(strg,shell=True)
91+
13192
datafiles = glob.glob(os.path.join(pathout,'*'))
13293
datafiles = [os.path.join('data',os.path.basename(f)) for f in datafiles]
13394
package_data = {'mpl_toolkits.basemap':datafiles}
13495

96+
requirements = [
97+
"numpy>=1.2.1",
98+
"matplotlib>=1.0.0",
99+
"pyproj >= 1.9.3",
100+
"pyshp >= 1.2.0"
101+
]
102+
135103
__version__ = "1.0.8"
136104
setup(
137105
name = "basemap",
@@ -146,7 +114,7 @@ def checkversion(GEOS_dir):
146114
download_url = "https://downloads.sourceforge.net/project/matplotlib/matplotlib-toolkits/basemap-{0}/basemap-{0}.tar.gz".format(__version__),
147115
author = "Jeff Whitaker",
148116
author_email = "[email protected]",
149-
install_requires = ["numpy>=1.2.1", "matplotlib>=1.0.0"],
117+
install_requires = requirements,
150118
platforms = ["any"],
151119
license = "OSI Approved",
152120
keywords = ["python","plotting","plots","graphs","charts","GIS","mapping","map projections","maps"],
@@ -161,7 +129,6 @@ def checkversion(GEOS_dir):
161129
packages = packages,
162130
namespace_packages = namespace_packages,
163131
package_dir = package_dirs,
164-
ext_modules = extensions,
165132
cmdclass = {'build_py': build_py},
166133
package_data = package_data
167134
)

0 commit comments

Comments
 (0)