[Checkins] SVN: z3c.recipe.staticlxml/trunk/ Fix to reduce the lxml tax -- dont rebuild all the time

Stefan Eletzhofer stefan.eletzhofer at inquant.de
Wed Feb 18 15:51:09 EST 2009


Log message for revision 96709:
  Fix to reduce the lxml tax -- dont rebuild all the time

Changed:
  U   z3c.recipe.staticlxml/trunk/CHANGES.txt
  U   z3c.recipe.staticlxml/trunk/buildout.cfg
  U   z3c.recipe.staticlxml/trunk/src/z3c/recipe/staticlxml/__init__.py

-=-
Modified: z3c.recipe.staticlxml/trunk/CHANGES.txt
===================================================================
--- z3c.recipe.staticlxml/trunk/CHANGES.txt	2009-02-18 20:20:04 UTC (rev 96708)
+++ z3c.recipe.staticlxml/trunk/CHANGES.txt	2009-02-18 20:51:08 UTC (rev 96709)
@@ -1,6 +1,11 @@
 trunk
 =====
 
+- Fix to prevent rebuilding lxml all the time, thus reducing the lxml tax. [seletz]
+
+0.3 (2008-12-01)
+================
+
 - Only add ``iconv`` on darwin. [seletz]
 
 0.2.1 (2008-11-28)

Modified: z3c.recipe.staticlxml/trunk/buildout.cfg
===================================================================
--- z3c.recipe.staticlxml/trunk/buildout.cfg	2009-02-18 20:20:04 UTC (rev 96708)
+++ z3c.recipe.staticlxml/trunk/buildout.cfg	2009-02-18 20:51:08 UTC (rev 96709)
@@ -2,6 +2,8 @@
 develop = .
 parts = test
 
+eggs-directory = eggs
+
 [test]
 recipe = zc.recipe.testrunner
 eggs = z3c.recipe.staticlxml

Modified: z3c.recipe.staticlxml/trunk/src/z3c/recipe/staticlxml/__init__.py
===================================================================
--- z3c.recipe.staticlxml/trunk/src/z3c/recipe/staticlxml/__init__.py	2009-02-18 20:20:04 UTC (rev 96708)
+++ z3c.recipe.staticlxml/trunk/src/z3c/recipe/staticlxml/__init__.py	2009-02-18 20:51:08 UTC (rev 96709)
@@ -10,13 +10,11 @@
 
 import distutils.core
 from distutils import sysconfig
-import setuptools.command.easy_install
 
 from zc.buildout import UserError
 from zc.buildout import easy_install
 
 from zc.recipe.egg.custom import Custom
-from zc.recipe.egg.custom import build_ext
 
 import zc.recipe.cmmi
 
@@ -124,7 +122,11 @@
             loc = self.xml2_cmmi.install()
         self.options["xml2-location"] = self.xml2_location = loc
 
+    def update(self):
+        pass
+
     def install(self):
+        options = self.options
 
         # build dependent libs if requested
         if self.build_xml2:
@@ -145,36 +147,35 @@
             self.remove_dynamic_libs(self.xml2_location)
 
         # build LXML
-        dest = self.options.get("location")
+        dest = options.get("location")
         if not os.path.exists(dest):
             os.mkdir(dest)
 
-        self.options["include-dirs"] = "%s %s" % (
+        options["include-dirs"] = "%s %s" % (
                 os.path.join(self.xml2_location, "include", "libxml2"),
                 os.path.join(self.xslt_location, "include"),
                 )
-        self.options["library-dirs"] = "%s %s" % (
+        options["library-dirs"] = "%s %s" % (
                 os.path.join(self.xml2_location, "lib"),
                 os.path.join(self.xslt_location, "lib"),
                 )
-        self.options["rpath"] = "%s %s" % (
+        options["rpath"] = "%s %s" % (
                 os.path.join(self.xml2_location, "lib"),
                 os.path.join(self.xslt_location, "lib"),
                 )
 
         if "darwin" in sys.platform:
             self.logger.warn("Adding ``iconv`` to libs due to a lxml setup bug.")
-            self.options["libraries"] = "iconv"
+            options["libraries"] = "iconv"
 
         self.lxml_custom = Custom(self.buildout, self.name, self.options)
         self.lxml_custom.environment = self.lxml_build_env()
+        self.lxml_custom.options["_d"] = self.buildout['buildout']['eggs-directory']
 
         self.logger.info("Building lxml ...")
         self.lxml_dest = self.lxml_custom.install()
 
-        dest = [dest, ] # dont report libxml2 and libxslt to buildout -- BO removes them
-        dest.extend(self.lxml_dest)
-        return tuple(dest)
+        return ()
 
     def get_ldshared(self):
         import distutils.sysconfig



More information about the Checkins mailing list