changeset 373:c7d22fd36815

Base takes now the configuration options for Windows CE that are supplied by the developers using the autogen.sh script.
author Andre Heinecke <aheinecke@intevation.de>
date Mon, 21 Jun 2010 10:40:33 +0000
parents ef87d30468b6
children f8bfd95f02d9
files recipes/wince/gnupg/base.py
diffstat 1 files changed, 20 insertions(+), 15 deletions(-) [+]
line wrap: on
line diff
--- a/recipes/wince/gnupg/base.py	Mon Jun 21 08:23:30 2010 +0000
+++ b/recipes/wince/gnupg/base.py	Mon Jun 21 10:40:33 2010 +0000
@@ -95,7 +95,6 @@
     createtarball_script = """\
 #! /bin/bash
 set -e
-
 apt-get --assume-yes --force-yes install %(builddeps)s
 
 # copy the source tree to a directory that's under pbuilder control so
@@ -106,13 +105,6 @@
 cp -a %(basedir)s $workdir
 cd $workdir
 
-# tweak autoconf settings so that make dist produces a tar.gz, not a
-# tar.bz2. Removing all options whose names contain 'dist' should
-# achieve that.
-cp Makefile.am Makefile.am.orig
-sed -e '/AUTOMAKE_OPTIONS/ s/[a-zA-Z0-9-]*dist[a-zA-Z0-9-]*//g' \
-    Makefile.am.orig > Makefile.am
-
 export MINGWPATH=/opt/mingw32ce
 export INCLUDE=$MINGWPATH/arm-mingw32ce/include:$MINGWPATH/include:\
 /home/builder/wce-build/install/include:$INCLUDE
@@ -120,21 +112,17 @@
 /home/builder/wce-build/install/lib:$LIB
 export PATH=:$PATH:$MINGWPATH/bin:$MINGWPATH/arm-mingw32ce/bin:\
 $MINGWPATH/libexec/gcc/arm-mingw32ce/4.4.0:
+export w32ce_root=/opt/mingw32ce
 
-./autogen.sh
-./configure --enable-maintainer-mode --host=arm-mingw32ce
+./autogen.sh --build-w32ce
 
 # revert autoconf changes, so that the original Makefile.am ends up in
 # the tarball
 mv Makefile.am.orig Makefile.am
 
 %(make_dist_command)s
-
 mv *.tar.gz %(origtargz)s
 """
-
-    make_dist_command = "make dist"
-
     def __init__(self, *args):
         super(SmartSourcePackager, self).__init__(*args)
         self.pkgbasename = None
@@ -154,6 +142,23 @@
         self.origtargz = os.path.join(self.work_dir,
                                       self.pkgbasename + ".orig.tar.gz")
 
+        # tweak automake settings so that make dist produces a tar.gz not
+        # a tar.bz2
+        run.call(cmdexpand("/bin/sh -c \"cp Makefile.am Makefile.am.orig\""), 
+                           cwd=copied_working_copy,suppress_output=True)
+        run.call(cmdexpand("/bin/sh -c \"sed -e '/AUTOMAKE_OPTIONS/ \
+                            s/[a-zA-Z0-9-]*dist[a-zA-Z0-9-]*//g' \
+                            Makefile.am.orig > Makefile.am\""), cwd=copied_working_copy,
+                            suppress_output=True)
+        
+        run.call(cmdexpand("/bin/sh autogen.sh"), cwd=copied_working_copy,
+                 suppress_output=True)
+        orig_version = self.orig_source_version(copied_working_copy)
+        treepkg.util.replace_in_file(os.path.join(copied_working_copy, 
+                                                  "configure"), 
+                                     re.escape(orig_version) + "-svn0",
+                                     orig_version + "-svn%s" % self.revision)
+      
         script = (self.createtarball_script
                   % dict(builddeps=" ".join(self.track.dependencies_required()
                                             | self.tarball_dependencies),
@@ -201,7 +206,7 @@
 def define_gnupg_packager(pkg_basename,
                           tarball_dependencies=("autoconf", "automake",
                                                 "texinfo", "subversion"),
-                          make_dist_command=None):
+                          make_dist_command="make dist"):
     """Create a SourcePackager for a GnuPG package in the caller's globals().
     This is a helper function for the modules in the recipe.gnupg package.
     """
This site is hosted by Intevation GmbH (Datenschutzerklärung und Impressum | Privacy Policy and Imprint)