[Erp5-report] r40266 luke - in /erp5/trunk/buildout: software-profiles/ tests/

nobody at svn.erp5.org nobody at svn.erp5.org
Mon Nov 15 14:05:10 CET 2010


Author: luke
Date: Mon Nov 15 14:05:09 2010
New Revision: 40266

URL: http://svn.erp5.org?rev=40266&view=rev
Log:
 - build itools against locally provided software and use
   plone.recipe.command with uninstall ability by exposing location
 - add a test for itools proper installation

Modified:
    erp5/trunk/buildout/software-profiles/erp5-2.12.cfg
    erp5/trunk/buildout/tests/assertSoftware.py

Modified: erp5/trunk/buildout/software-profiles/erp5-2.12.cfg
URL: http://svn.erp5.org/erp5/trunk/buildout/software-profiles/erp5-2.12.cfg?rev=40266&r1=40265&r2=40266&view=diff
==============================================================================
--- erp5/trunk/buildout/software-profiles/erp5-2.12.cfg [utf8] (original)
+++ erp5/trunk/buildout/software-profiles/erp5-2.12.cfg [utf8] Mon Nov 15 14:05:09 2010
@@ -7,6 +7,7 @@ extends =
   python-ldap-python.cfg
   subversion.cfg
   git.cfg
+  glib.cfg
 
 parts =
   itools-build
@@ -36,19 +37,16 @@ md5sum = 12704cc354e2201e0921a832bf6b155
 destination = ${itools:source}
 
 [itools-build]
-recipe = collective.recipe.cmd
-on_install = True
-on_update = True
+recipe = plone.recipe.command
 # reference itools-download:destination instead of itools:source to trigger its
 # execution
-cmds =
+command =
     cd ${itools-download:destination}
-    env CFLAGS="$(pkg-config glib-2.0 --cflags-only-I)" ${python2.6:executable} setup.py install_lib -d ${itools:lib}
+    CFLAGS="-I${glib:location}/include/glib-2.0 -I${glib:location}/lib/glib-2.0/include" LDFLAGS="-L${glib:location}/lib -Wl,-rpath -Wl,${glib:location}/lib" ${python2.6:executable} setup.py install_lib -d ${itools:lib}
 
-uninstall_cmds =
-    cd ${itools-download:destination}
-    ${python2.6:executable} setup.py clean
-    rm -rf ${itools:lib}
+update-command = ${:command}
+location = ${itools:location}
+stop-on-error = true
 
 [mysql-python-env]
 PATH =${software_definition:mysql_software}/bin:%(PATH)s

Modified: erp5/trunk/buildout/tests/assertSoftware.py
URL: http://svn.erp5.org/erp5/trunk/buildout/tests/assertSoftware.py?rev=40266&r1=40265&r2=40266&view=diff
==============================================================================
--- erp5/trunk/buildout/tests/assertSoftware.py [utf8] (original)
+++ erp5/trunk/buildout/tests/assertSoftware.py [utf8] Mon Nov 15 14:05:09 2010
@@ -427,5 +427,16 @@ class AssertApache(unittest.TestCase):
     self.assertEqual([], failed_module_list,
         'Apache modules not found:\n'+'\n'.join(failed_module_list))
 
+class AssertItools(unittest.TestCase):
+  def test_ld_parserso(self):
+    elf_dict = readElfAsDict('parts/itools/lib/itools/xml/parser.so')
+    self.assertEqual(sorted(['libc', 'libglib-2.0', 'libpthread']),
+        elf_dict['library_list'])
+    soft_dir = os.path.join(os.path.abspath(os.curdir), 'parts')
+    expected_rpath_list = [os.path.join(soft_dir, software, 'lib') for
+        software in ['glib']]
+    self.assertEqual(sorted(expected_rpath_list), elf_dict['rpath_list'])
+    self.assertEqual(sorted(expected_rpath_list), elf_dict['runpath_list'])
+
 if __name__ == '__main__':
   unittest.main()




More information about the Erp5-report mailing list