Author: Armin Rigo <[email protected]>
Branch: kill-exported-symbols-list
Changeset: r74123:eade611af677
Date: 2014-10-23 15:44 +0200
http://bitbucket.org/pypy/pypy/changeset/eade611af677/
Log: fixfixfixfixfixfix
diff --git a/pypy/module/_multibytecodec/c_codecs.py
b/pypy/module/_multibytecodec/c_codecs.py
--- a/pypy/module/_multibytecodec/c_codecs.py
+++ b/pypy/module/_multibytecodec/c_codecs.py
@@ -1,6 +1,7 @@
import py
from rpython.rtyper.lltypesystem import lltype, rffi
from rpython.translator.tool.cbuild import ExternalCompilationInfo
+from rpython.translator import cdir
UNICODE_REPLACEMENT_CHARACTER = u'\uFFFD'
@@ -49,20 +50,7 @@
srcdir.join('src', 'cjkcodecs', 'multibytecodec.c'),
],
includes = ['src/cjkcodecs/multibytecodec.h'],
- include_dirs = [str(srcdir)],
- export_symbols = [
- "pypy_cjk_dec_new",
- "pypy_cjk_dec_init", "pypy_cjk_dec_free", "pypy_cjk_dec_chunk",
- "pypy_cjk_dec_outbuf", "pypy_cjk_dec_outlen",
- "pypy_cjk_dec_inbuf_remaining", "pypy_cjk_dec_inbuf_consumed",
- "pypy_cjk_dec_replace_on_error",
-
- "pypy_cjk_enc_new",
- "pypy_cjk_enc_init", "pypy_cjk_enc_free", "pypy_cjk_enc_chunk",
- "pypy_cjk_enc_reset", "pypy_cjk_enc_outbuf", "pypy_cjk_enc_outlen",
- "pypy_cjk_enc_inbuf_remaining", "pypy_cjk_enc_inbuf_consumed",
- "pypy_cjk_enc_replace_on_error", "pypy_cjk_enc_getcodec",
- ] + ["pypy_cjkcodec_%s" % codec for codec in codecs],
+ include_dirs = [str(srcdir), cdir],
)
MBERR_TOOSMALL = -1 # insufficient output buffer space
diff --git a/pypy/module/_multibytecodec/src/cjkcodecs/multibytecodec.h
b/pypy/module/_multibytecodec/src/cjkcodecs/multibytecodec.h
--- a/pypy/module/_multibytecodec/src/cjkcodecs/multibytecodec.h
+++ b/pypy/module/_multibytecodec/src/cjkcodecs/multibytecodec.h
@@ -2,6 +2,8 @@
#ifndef _PYPY_MULTIBYTECODEC_H_
#define _PYPY_MULTIBYTECODEC_H_
+#include "src/precommondefs.h"
+
#include <stddef.h>
#include <assert.h>
@@ -95,15 +97,24 @@
Py_UNICODE *outbuf_start, *outbuf, *outbuf_end;
};
+RPY_EXPORTED_FOR_TESTS
struct pypy_cjk_dec_s *pypy_cjk_dec_new(const MultibyteCodec *codec);
+RPY_EXPORTED_FOR_TESTS
Py_ssize_t pypy_cjk_dec_init(struct pypy_cjk_dec_s *d,
char *inbuf, Py_ssize_t inlen);
+RPY_EXPORTED_FOR_TESTS
void pypy_cjk_dec_free(struct pypy_cjk_dec_s *);
+RPY_EXPORTED_FOR_TESTS
Py_ssize_t pypy_cjk_dec_chunk(struct pypy_cjk_dec_s *);
+RPY_EXPORTED_FOR_TESTS
Py_UNICODE *pypy_cjk_dec_outbuf(struct pypy_cjk_dec_s *);
+RPY_EXPORTED_FOR_TESTS
Py_ssize_t pypy_cjk_dec_outlen(struct pypy_cjk_dec_s *);
+RPY_EXPORTED_FOR_TESTS
Py_ssize_t pypy_cjk_dec_inbuf_remaining(struct pypy_cjk_dec_s *d);
+RPY_EXPORTED_FOR_TESTS
Py_ssize_t pypy_cjk_dec_inbuf_consumed(struct pypy_cjk_dec_s* d);
+RPY_EXPORTED_FOR_TESTS
Py_ssize_t pypy_cjk_dec_replace_on_error(struct pypy_cjk_dec_s* d,
Py_UNICODE *, Py_ssize_t, Py_ssize_t);
@@ -114,24 +125,35 @@
unsigned char *outbuf_start, *outbuf, *outbuf_end;
};
+RPY_EXPORTED_FOR_TESTS
struct pypy_cjk_enc_s *pypy_cjk_enc_new(const MultibyteCodec *codec);
+RPY_EXPORTED_FOR_TESTS
Py_ssize_t pypy_cjk_enc_init(struct pypy_cjk_enc_s *d,
Py_UNICODE *inbuf, Py_ssize_t inlen);
+RPY_EXPORTED_FOR_TESTS
void pypy_cjk_enc_free(struct pypy_cjk_enc_s *);
+RPY_EXPORTED_FOR_TESTS
Py_ssize_t pypy_cjk_enc_chunk(struct pypy_cjk_enc_s *, Py_ssize_t);
+RPY_EXPORTED_FOR_TESTS
Py_ssize_t pypy_cjk_enc_reset(struct pypy_cjk_enc_s *);
+RPY_EXPORTED_FOR_TESTS
char *pypy_cjk_enc_outbuf(struct pypy_cjk_enc_s *);
+RPY_EXPORTED_FOR_TESTS
Py_ssize_t pypy_cjk_enc_outlen(struct pypy_cjk_enc_s *);
+RPY_EXPORTED_FOR_TESTS
Py_ssize_t pypy_cjk_enc_inbuf_remaining(struct pypy_cjk_enc_s *d);
+RPY_EXPORTED_FOR_TESTS
Py_ssize_t pypy_cjk_enc_inbuf_consumed(struct pypy_cjk_enc_s* d);
+RPY_EXPORTED_FOR_TESTS
Py_ssize_t pypy_cjk_enc_replace_on_error(struct pypy_cjk_enc_s* d,
char *, Py_ssize_t, Py_ssize_t);
+RPY_EXPORTED_FOR_TESTS
const MultibyteCodec *pypy_cjk_enc_getcodec(struct pypy_cjk_enc_s *);
/* list of codecs defined in the .c files */
#define DEFINE_CODEC(name) \
- MultibyteCodec *pypy_cjkcodec_##name(void);
+ RPY_EXPORTED_FOR_TESTS MultibyteCodec *pypy_cjkcodec_##name(void);
// _codecs_cn
DEFINE_CODEC(gb2312)
_______________________________________________
pypy-commit mailing list
[email protected]
https://mail.python.org/mailman/listinfo/pypy-commit