[pypy-svn] r57666 - pypy/branch/cross-compilation/pypy/translator/c/test

fijal at codespeak.net fijal at codespeak.net
Thu Aug 28 12:01:59 CEST 2008


Author: fijal
Date: Thu Aug 28 12:01:57 2008
New Revision: 57666

Modified:
   pypy/branch/cross-compilation/pypy/translator/c/test/test_standalone.py
Log:
Some tests for standalone cross-compilation


Modified: pypy/branch/cross-compilation/pypy/translator/c/test/test_standalone.py
==============================================================================
--- pypy/branch/cross-compilation/pypy/translator/c/test/test_standalone.py	(original)
+++ pypy/branch/cross-compilation/pypy/translator/c/test/test_standalone.py	Thu Aug 28 12:01:57 2008
@@ -1,5 +1,5 @@
 import py
-import sys, os
+import sys, os, re
 
 from pypy.rlib.rarithmetic import r_longlong
 from pypy.translator.translator import TranslationContext
@@ -226,3 +226,30 @@
     assert "  ll_strtod.h" in makefile
     assert "  ll_strtod.o" in makefile
 
+def test_cross_compilation():
+    from pypy.tool.pyplatform import Platform
+    from pypy.config.translationoption import set_platform
+
+    class X(Platform):
+        def get_compiler(self):
+            return 'x'
+
+    def entry_point(argv):
+        return 0
+
+    t = TranslationContext()
+    t.buildannotator().build_types(entry_point, [s_list_of_strings])
+    t.buildrtyper().specialize()
+
+    set_platform(t.config, X())
+    try:
+        eci = ExternalCompilationInfo(platform=X())
+
+        cbuilder = CStandaloneBuilder(t, entry_point, t.config)
+        cbuilder.generate_source()
+
+        makefile = udir.join(cbuilder.modulename, 'Makefile').read()
+
+        m = re.search('^CC\s*=\s*x$', makefile)
+    finally:
+        set_platform(t.config, Platform())



More information about the Pypy-commit mailing list