[pypy-commit] pypy kill-exported-symbols-list: fiiiiiix
arigo
noreply at buildbot.pypy.org
Thu Oct 23 16:23:02 CEST 2014
Author: Armin Rigo <arigo at tunes.org>
Branch: kill-exported-symbols-list
Changeset: r74135:acbc2816fd8b
Date: 2014-10-23 16:22 +0200
http://bitbucket.org/pypy/pypy/changeset/acbc2816fd8b/
Log: fiiiiiix
diff --git a/rpython/rtyper/lltypesystem/test/test_ll2ctypes.py b/rpython/rtyper/lltypesystem/test/test_ll2ctypes.py
--- a/rpython/rtyper/lltypesystem/test/test_ll2ctypes.py
+++ b/rpython/rtyper/lltypesystem/test/test_ll2ctypes.py
@@ -12,6 +12,7 @@
from rpython.rtyper.annlowlevel import llhelper
from rpython.rlib import rposix
from rpython.translator.tool.cbuild import ExternalCompilationInfo
+from rpython.translator import cdir
from rpython.tool.udir import udir
from rpython.rtyper.test.test_llinterp import interpret
from rpython.annotator.annrpython import RPythonAnnotator
@@ -497,11 +498,12 @@
def test_funcptr_cast(self):
eci = ExternalCompilationInfo(
+ include_dirs = [cdir],
separate_module_sources=["""
+ #include "src/precommondefs.h"
long mul(long x, long y) { return x*y; }
- long(*get_mul(long x)) () { return &mul; }
- """],
- export_symbols=['get_mul'])
+ RPY_EXPORTED long(*get_mul(long x)) () { return &mul; }
+ """])
get_mul = rffi.llexternal(
'get_mul', [],
lltype.Ptr(lltype.FuncType([lltype.Signed], lltype.Signed)),
@@ -834,8 +836,11 @@
def test_llexternal_source(self):
eci = ExternalCompilationInfo(
- separate_module_sources = ["int fn() { return 42; }"],
- export_symbols = ['fn'],
+ include_dirs = [cdir],
+ separate_module_sources = ["""
+ #include "src/precommondefs.h"
+ RPY_EXPORTED int fn() { return 42; }
+ """],
)
fn = rffi.llexternal('fn', [], rffi.INT, compilation_info=eci)
res = fn()
@@ -904,14 +909,17 @@
def test_c_callback(self):
c_source = py.code.Source("""
+ #include "src/precommondefs.h"
+
+ RPY_EXPORTED
int eating_callback(int arg, int(*call)(int))
{
return call(arg);
}
""")
- eci = ExternalCompilationInfo(separate_module_sources=[c_source],
- export_symbols=['eating_callback'])
+ eci = ExternalCompilationInfo(include_dirs=[cdir],
+ separate_module_sources=[c_source])
args = [rffi.INT, rffi.CCallback([rffi.INT], rffi.INT)]
eating_callback = rffi.llexternal('eating_callback', args, rffi.INT,
@@ -1397,8 +1405,11 @@
tmpdir = udir.join('lib_on_libppaths')
tmpdir.ensure(dir=1)
c_file = tmpdir.join('c_file.c')
- c_file.write('int f(int a, int b) { return (a + b); }')
- eci = ExternalCompilationInfo(export_symbols=['f'])
+ c_file.write('''
+ #include "src/precommondefs.h"
+ RPY_EXPORTED int f(int a, int b) { return (a + b); }
+ ''')
+ eci = ExternalCompilationInfo(include_dirs=[cdir])
so = platform.compile([c_file], eci, standalone=False)
eci = ExternalCompilationInfo(
libraries = ['c_file'],
@@ -1418,8 +1429,11 @@
tmpdir = udir.join('lib_on_libppaths_prefix')
tmpdir.ensure(dir=1)
c_file = tmpdir.join('c_file.c')
- c_file.write('int f(int a, int b) { return (a + b); }')
- eci = ExternalCompilationInfo()
+ c_file.write('''
+ #include "src/precommondefs.h"
+ RPY_EXPORTED int f(int a, int b) { return (a + b); }
+ ''')
+ eci = ExternalCompilationInfo(include_dirs=[cdir])
so = platform.compile([c_file], eci, standalone=False)
sopath = py.path.local(so)
sopath.move(sopath.dirpath().join('libc_file.so'))
More information about the pypy-commit
mailing list