/[thuban]/branches/WIP-pyshapelib-bramz/setup.py
ViewVC logotype

Diff of /branches/WIP-pyshapelib-bramz/setup.py

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 532 by jonathan, Fri Mar 14 11:31:24 2003 UTC revision 928 by jonathan, Tue May 20 15:22:10 2003 UTC
# Line 17  __version__ = "$Revision$" Line 17  __version__ = "$Revision$"
17    
18  import os  import os
19  from types import TupleType  from types import TupleType
20    import glob
21  from distutils.core import setup, Extension, Command  from distutils.core import setup, Extension, Command
22  from distutils.command.install import install, INSTALL_SCHEMES, subst_vars  from distutils.command.install import install, INSTALL_SCHEMES, subst_vars
23  from distutils.command.build_py import build_py  from distutils.command.build_py import build_py
# Line 227  extensions.append(Extension("Lib.wxproj" Line 228  extensions.append(Extension("Lib.wxproj"
228                              library_dirs = [proj4_libdir] + wx_libdirs,                              library_dirs = [proj4_libdir] + wx_libdirs,
229                              libraries = [proj4_lib] + wx_libs))                              libraries = [proj4_lib] + wx_libs))
230    
231    extensions.append(Extension("Lib.gdalwarp",
232                                [ext_dir + "/thuban/gdalwarp.cpp",
233                                 ext_dir + "/thuban/cpl_mfile.cpp",
234                                 ext_dir + "/thuban/bmpdataset.cpp"],
235                                libraries = [proj4_lib] + ["gdal.1.1"]))
236    
237    
238  #  #
239  # shapelib wrappers are also distributed with thuban  # shapelib wrappers are also distributed with thuban
240  #  #
# Line 264  py_modules.append(ext_dir + "/pyprojecti Line 272  py_modules.append(ext_dir + "/pyprojecti
272  data_files = []  data_files = []
273    
274  # bitmaps  # bitmaps
275  dir = "Resources/Bitmaps"  for d, pattern in [("Resources/Bitmaps", "Resources/Bitmaps/*.xpm"),
276  bitmaps = []                     ("Resources/Locale", "Resources/Locale/*/LC_MESSAGES/*.mo")
277  for file in os.listdir(os.path.join("Resources", "Bitmaps")):                     ]:
278      if string.lower(file[-4:]) == ".xpm":      data_files.append((d, glob.glob(pattern)))
         bitmaps.append(dir + '/' +  file)  
 data_files.append((dir, bitmaps))  
279    
280  #  #
281  #       Command definitions  #       Command definitions
# Line 756  cp extensions/pyshapelib/{COPYING,COPYIN Line 762  cp extensions/pyshapelib/{COPYING,COPYIN
762  cp extensions/pyprojection/{LICENSE,LICENSE.pyprojection}  cp extensions/pyprojection/{LICENSE,LICENSE.pyprojection}
763  '''  '''
764    
765    bdist_rpm_build_script = '''
766    env PATH="$PATH:%(prefix)s/lib/wxPython/bin:/usr/lib/wxPython/bin" CFLAGS="$RPM_OPT_FLAGS" %(python)s setup.py build
767    '''
768    
769  bdist_rpm_install_script = '''  bdist_rpm_install_script = '''
770  %(python)s setup.py install --root=$RPM_BUILD_ROOT --record=INSTALLED_FILES \  %(python)s setup.py install --root=$RPM_BUILD_ROOT --record=INSTALLED_FILES \
771     --prefix=%(prefix)s     --prefix=%(prefix)s
# Line 779  class thuban_bdist_rpm(bdist_rpm): Line 789  class thuban_bdist_rpm(bdist_rpm):
789          # scripts such as the python interpreter to use are only known          # scripts such as the python interpreter to use are only known
790          # then.          # then.
791          open("bdist_rpm_prep", "w").close()          open("bdist_rpm_prep", "w").close()
792            open("bdist_rpm_build", "w").close()
793          open("bdist_rpm_install", "w").close()          open("bdist_rpm_install", "w").close()
794          bdist_rpm.initialize_options(self)          bdist_rpm.initialize_options(self)
795    
# Line 786  class thuban_bdist_rpm(bdist_rpm): Line 797  class thuban_bdist_rpm(bdist_rpm):
797          # create the scripts for the spec-file. Now we know the python          # create the scripts for the spec-file. Now we know the python
798          # interpreter to use.          # interpreter to use.
799          open("bdist_rpm_prep", "w").write(bdist_rpm_prep_script)          open("bdist_rpm_prep", "w").write(bdist_rpm_prep_script)
800    
801            build = bdist_rpm_build_script % {"python": self.python,
802                                              "prefix": self.prefix}
803            open("bdist_rpm_build", "w").write(build)
804    
805          install = bdist_rpm_install_script % {"python": self.python,          install = bdist_rpm_install_script % {"python": self.python,
806                                                "prefix": self.prefix}                                                "prefix": self.prefix}
807          open("bdist_rpm_install", "w").write(install)          open("bdist_rpm_install", "w").write(install)
# Line 873  class bdist_inno(Command): Line 889  class bdist_inno(Command):
889          """Execute the command. install_options if given, should be a          """Execute the command. install_options if given, should be a
890          directory of additional options to set in the install step"""          directory of additional options to set in the install step"""
891          # Obviously have to build before we can install          # Obviously have to build before we can install
892    
893          if not self.skip_build:          if not self.skip_build:
894              self.run_command('build')              self.run_command('build')
895    
# Line 985  class thuban_bdist_inno(bdist_inno): Line 1002  class thuban_bdist_inno(bdist_inno):
1002      def run(self):      def run(self):
1003          install_options = {          install_options = {
1004              "prefix": ".",              "prefix": ".",
1005                "install_lib": "$base",
1006                "install_data": "$base",
1007              "install_scripts": "$base",              "install_scripts": "$base",
1008              "warn_dir": 0,              "warn_dir": 0,
1009              "extra_files": ["COPYING", "Lib/proj.dll"],              "extra_files": ["COPYING", "Lib/proj.dll"],
# Line 992  class thuban_bdist_inno(bdist_inno): Line 1011  class thuban_bdist_inno(bdist_inno):
1011          # don't make a symlink because we're simulating windows, so          # don't make a symlink because we're simulating windows, so
1012          # that we can generate the iss-file even on Linux          # that we can generate the iss-file even on Linux
1013          install_options["do_symlink"] = 0          install_options["do_symlink"] = 0
1014    
1015          bdist_inno.run(self, install_options)          bdist_inno.run(self, install_options)
1016    
1017    class thuban_build_docs(Command):
1018    
1019        """Command to generate documentation from source code."""
1020    
1021        description = "Generate documentation."
1022    
1023        user_options = []
1024    
1025        def initialize_options(self): pass
1026    
1027        def finalize_options(self): pass
1028    
1029        def run(self, install_options = None):
1030            self.spawn(["happydoc", "-d./Doc", "./Thuban"])
1031    
1032  #  #
1033  #   Run the script  #   Run the script
# Line 1047  setup(name = "Thuban", Line 1081  setup(name = "Thuban",
1081                    "install": ThubanInstall,                    "install": ThubanInstall,
1082                    "bdist_rpm": thuban_bdist_rpm,                    "bdist_rpm": thuban_bdist_rpm,
1083                    "bdist_inno": thuban_bdist_inno,                    "bdist_inno": thuban_bdist_inno,
1084                    "data_dist": data_dist                    "data_dist": data_dist,
1085                      "build_docs": thuban_build_docs
1086                    })                    })
1087    
1088    

Legend:
Removed from v.532  
changed lines
  Added in v.928

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26