setup.py
author Tero Marttila <terom@qmsk.net>
Sat, 04 Oct 2014 03:03:17 +0300
changeset 174 58c9e2de0dd4
parent 161 310f53b700dd
permissions -rw-r--r--
pngtile.cache: set last_modified/cache-control in 304 response as well..
30
53e99e552122 move the python/web code in
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
     1
from distutils.core import setup
53e99e552122 move the python/web code in
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
     2
from distutils.extension import Extension
117
2da34e3aa885 setup.py: fallback to .c if we don't have Cython
Tero Marttila <terom@fixme.fi>
parents: 30
diff changeset
     3
2da34e3aa885 setup.py: fallback to .c if we don't have Cython
Tero Marttila <terom@fixme.fi>
parents: 30
diff changeset
     4
import os.path
2da34e3aa885 setup.py: fallback to .c if we don't have Cython
Tero Marttila <terom@fixme.fi>
parents: 30
diff changeset
     5
2da34e3aa885 setup.py: fallback to .c if we don't have Cython
Tero Marttila <terom@fixme.fi>
parents: 30
diff changeset
     6
try :
132
0260aeca943c cleanup readme, drop pypngtile bits from Makefile, fixup setup.py for pypngtile
Tero Marttila <terom@paivola.fi>
parents: 117
diff changeset
     7
    from Cython.Build import cythonize
117
2da34e3aa885 setup.py: fallback to .c if we don't have Cython
Tero Marttila <terom@fixme.fi>
parents: 30
diff changeset
     8
132
0260aeca943c cleanup readme, drop pypngtile bits from Makefile, fixup setup.py for pypngtile
Tero Marttila <terom@paivola.fi>
parents: 117
diff changeset
     9
    CYTHON = True
0260aeca943c cleanup readme, drop pypngtile bits from Makefile, fixup setup.py for pypngtile
Tero Marttila <terom@paivola.fi>
parents: 117
diff changeset
    10
except ImportError :
0260aeca943c cleanup readme, drop pypngtile bits from Makefile, fixup setup.py for pypngtile
Tero Marttila <terom@paivola.fi>
parents: 117
diff changeset
    11
    CYTHON = False
0260aeca943c cleanup readme, drop pypngtile bits from Makefile, fixup setup.py for pypngtile
Tero Marttila <terom@paivola.fi>
parents: 117
diff changeset
    12
151
dfd8022d000e setup: sdist only includes the .c and the .pyx, so skip CYTHON then
Tero Marttila <terom@paivola.fi>
parents: 132
diff changeset
    13
if CYTHON and os.path.exists('python/pypngtile.pyx'):
dfd8022d000e setup: sdist only includes the .c and the .pyx, so skip CYTHON then
Tero Marttila <terom@paivola.fi>
parents: 132
diff changeset
    14
    pypngtile_sources = [ 'python/pypngtile.pyx' ]
132
0260aeca943c cleanup readme, drop pypngtile bits from Makefile, fixup setup.py for pypngtile
Tero Marttila <terom@paivola.fi>
parents: 117
diff changeset
    15
elif os.path.exists("python/pypngtile.c"):
151
dfd8022d000e setup: sdist only includes the .c and the .pyx, so skip CYTHON then
Tero Marttila <terom@paivola.fi>
parents: 132
diff changeset
    16
    pypngtile_sources = [ 'python/pypngtile.c' ]
132
0260aeca943c cleanup readme, drop pypngtile bits from Makefile, fixup setup.py for pypngtile
Tero Marttila <terom@paivola.fi>
parents: 117
diff changeset
    17
else:
0260aeca943c cleanup readme, drop pypngtile bits from Makefile, fixup setup.py for pypngtile
Tero Marttila <terom@paivola.fi>
parents: 117
diff changeset
    18
    raise Exception("Building from source requires Cython")
0260aeca943c cleanup readme, drop pypngtile bits from Makefile, fixup setup.py for pypngtile
Tero Marttila <terom@paivola.fi>
parents: 117
diff changeset
    19
0260aeca943c cleanup readme, drop pypngtile bits from Makefile, fixup setup.py for pypngtile
Tero Marttila <terom@paivola.fi>
parents: 117
diff changeset
    20
ext_modules = [Extension("pypngtile",
0260aeca943c cleanup readme, drop pypngtile bits from Makefile, fixup setup.py for pypngtile
Tero Marttila <terom@paivola.fi>
parents: 117
diff changeset
    21
    sources         = pypngtile_sources,
0260aeca943c cleanup readme, drop pypngtile bits from Makefile, fixup setup.py for pypngtile
Tero Marttila <terom@paivola.fi>
parents: 117
diff changeset
    22
    libraries       = ['pngtile'],
0260aeca943c cleanup readme, drop pypngtile bits from Makefile, fixup setup.py for pypngtile
Tero Marttila <terom@paivola.fi>
parents: 117
diff changeset
    23
)]
0260aeca943c cleanup readme, drop pypngtile bits from Makefile, fixup setup.py for pypngtile
Tero Marttila <terom@paivola.fi>
parents: 117
diff changeset
    24
0260aeca943c cleanup readme, drop pypngtile bits from Makefile, fixup setup.py for pypngtile
Tero Marttila <terom@paivola.fi>
parents: 117
diff changeset
    25
if CYTHON:
0260aeca943c cleanup readme, drop pypngtile bits from Makefile, fixup setup.py for pypngtile
Tero Marttila <terom@paivola.fi>
parents: 117
diff changeset
    26
    ext_modules = cythonize(ext_modules)
30
53e99e552122 move the python/web code in
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    27
53e99e552122 move the python/web code in
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    28
setup(
132
0260aeca943c cleanup readme, drop pypngtile bits from Makefile, fixup setup.py for pypngtile
Tero Marttila <terom@paivola.fi>
parents: 117
diff changeset
    29
    name            = 'pngtile',
0260aeca943c cleanup readme, drop pypngtile bits from Makefile, fixup setup.py for pypngtile
Tero Marttila <terom@paivola.fi>
parents: 117
diff changeset
    30
    version         = '1.0-dev',
160
9953c5fe3629 setup.py: also include pngtile package
Tero Marttila <terom@qmsk.net>
parents: 151
diff changeset
    31
    
9953c5fe3629 setup.py: also include pngtile package
Tero Marttila <terom@qmsk.net>
parents: 151
diff changeset
    32
    packages        = [ 'pngtile' ],
132
0260aeca943c cleanup readme, drop pypngtile bits from Makefile, fixup setup.py for pypngtile
Tero Marttila <terom@paivola.fi>
parents: 117
diff changeset
    33
    ext_modules     = ext_modules,
161
310f53b700dd setup.py: include bin/ scripts
Tero Marttila <terom@qmsk.net>
parents: 160
diff changeset
    34
    scripts         = [
310f53b700dd setup.py: include bin/ scripts
Tero Marttila <terom@qmsk.net>
parents: 160
diff changeset
    35
        'bin/pypngtile',
310f53b700dd setup.py: include bin/ scripts
Tero Marttila <terom@qmsk.net>
parents: 160
diff changeset
    36
        'bin/tile-server',
310f53b700dd setup.py: include bin/ scripts
Tero Marttila <terom@qmsk.net>
parents: 160
diff changeset
    37
    ],
30
53e99e552122 move the python/web code in
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    38
)
53e99e552122 move the python/web code in
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    39