[mapserver-users] Python Mapscript MS 3.6.1

Norman Vine nhv@cape.com
Sun, 14 Jul 2002 07:34:49 -0400


This is a multi-part message in MIME format.

------=_NextPart_000_0011_01C22B08.F0B01700
Content-Type: text/plain;
	charset="iso-8859-1"
Content-Transfer-Encoding: 7bit

 Vinko Vrsalovic writes:
>
>On Thu, Jul 11, 2002 at 08:15:36AM -0400, Frank Warmerdam wrote:
>
>> I have also committed Norman Vine's setup.py script to CVS though I find
it
>> takes quite a bit of hand editing to build and install for different sets
of
>> build options.  It would be nice for it to pick up more information about
the
>> MapServer build from the configure output at some point, but that isn't
>> high on my priority list.
>
>
>Yes, i totally agree, i may give it a try

the attached setup.py works for me with Cygwin picking up the
'configuration' automagically  :-)

Note my use of the 'extra_objects' field < see # comment in script >

Cheers

Norman

------=_NextPart_000_0011_01C22B08.F0B01700
Content-Type: text/plain;
	name="setup.py"
Content-Transfer-Encoding: quoted-printable
Content-Disposition: attachment;
	filename="setup.py"

#! /usr/bin/env python=0A=
# Distutils setup for UMN Mapserver mapscript v.3.7=0A=
# Norman Vine 7/13/2002=0A=
=0A=
# Should work as is on 'Unix' like systems=0A=
=0A=
# To Install=0A=
# build mapserver=0A=
# Copy this file to $MAPSERVER_SRC / mapscript / python=0A=
# invoke as ./setup.py install=0A=
=0A=
# should work on any python version with Distutils=0A=
=0A=
from distutils.core import setup, Extension=0A=
from distutils.spawn import spawn=0A=
from distutils.dir_util import mkpath=0A=
from distutils.file_util import copy_file=0A=
from distutils.sysconfig import parse_makefile,expand_makefile_vars=0A=
from string import split=0A=
=0A=
import os=0A=
from os import path=0A=
=0A=
noisy=3D1=0A=
swig_cmd =3D ["swig",=0A=
            "-python",=0A=
            "-shadow",=0A=
#            "-opt",=0A=
            "-DPYTHON",=0A=
            "-DUSE_GD_PNG",=0A=
            "-DUSE_GD_JPEG",=0A=
            "-module",=0A=
            "mapscript",=0A=
            "-o",=0A=
            "./mapscript_wrap.c",=0A=
            "../mapscript.i" ]=0A=
            =0A=
spawn(swig_cmd, verbose=3Dnoisy)=0A=
=0A=
# make package directory and package __init__ script=0A=
mkpath("mapscript")=0A=
init_file=3Dopen(path.join("mapscript","__init__.py"),"w")=0A=
init_file.write("from mapscript import *\n")=0A=
init_file.close()=0A=
=0A=
copy_file("mapscript.py", path.join("mapscript","mapscript.py"), =
verbose=3Dnoisy)=0A=
=0A=
# change to reflect the gd version you are using=0A=
gd_dir=3D"gd-1.8.4"=0A=
ms_dir=3Dpath.join("..","..")=0A=
local_dir=3D"/usr/local"=0A=
=0A=
# parse mapserver Makefile using distutils to determine configured libs=0A=
DICT =3D parse_makefile(path.join(ms_dir,"Makefile"))=0A=
tmp =3D split(DICT[expand_makefile_vars("LDFLAGS",DICT)])=0A=
lib_list =3D []=0A=
for lib in tmp:=0A=
    if lib[1:2] =3D=3D 'l':=0A=
        if lib =3D=3D '-lmap':=0A=
            continue=0A=
        lib_list.append(lib[2:])=0A=
=0A=
setup (# Distribution meta-data=0A=
       name =3D "pymapscript",=0A=
       version =3D "3.7",=0A=
       description =3D "pre release",=0A=
       author =3D "Steve Lime",=0A=
       author_email =3D "steve.lime@dnr.state.mn.us",=0A=
       url =3D "http://mapserver.gis.umn.edu/",=0A=
=0A=
       # Description of the modules and packages in the distribution=0A=
       packages =3D ['mapscript'],=0A=
       ext_modules =3D =0A=
           [Extension('mapscriptc', ['mapscript_wrap.c'],=0A=
                      =
define_macros=3D[('TIFF_STATIC',None),('JPEG_STATIC',None),('ZLIB_STATIC'=
,None),=0A=
                          =
('IGNORE_MISSING_DATA',None),('USE_EPPL',None),('USE_PROJ',None),('USE_PR=
OJ_API_H',None),=0A=
                          =
('USE_WMS',None),('USE_TIFF',None),('USE_JPEG',None),('USE_GD_PNG',None),=
('USE_GD_JPEG',None),=0A=
                          =
('USE_GD_WBMP',None),('USE_GDAL',None),('USE_POSTGIS',None)],=0A=
                      include_dirs=3D[ms_dir,=0A=
#                          path.join(ms_dir,gd_dir),=0A=
#                          path.join(ms_dir,"gdft"),=0A=
#                          path.join(local_dir,'include/freetype'),=0A=
                          path.join(local_dir,'include')=0A=
                                    ],=0A=
                      library_dirs=3D[ms_dir,=0A=
#                          path.join(ms_dir,gd_dir),=0A=
#                          path.join(ms_dir,"gdft"),=0A=
                          '/lib',=0A=
                          path.join(local_dir,'lib')],=0A=
                      # link order matters with Cygwin=0A=
                      =
extra_objects=3D[path.join(ms_dir,'libmap.a'),'/usr/local/lib/ogr.a'],=0A=
                      libraries =3D lib_list, ), ]=0A=
      )=0A=

------=_NextPart_000_0011_01C22B08.F0B01700--