From 727fe66f27cd467fe67ce95f26bdc6584b873fdc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Martin=20v=2E=20L=C3=B6wis?= Date: Sun, 26 Jan 2003 11:48:20 +0000 Subject: [PATCH] Add _iconv_codec to Setup.dist. Use PyModule_ functions. --- Modules/Setup.dist | 3 +++ Modules/_iconv_codec.c | 11 +++-------- 2 files changed, 6 insertions(+), 8 deletions(-) diff --git a/Modules/Setup.dist b/Modules/Setup.dist index 538808625a3..bebcd08dae5 100644 --- a/Modules/Setup.dist +++ b/Modules/Setup.dist @@ -474,6 +474,9 @@ GLHACK=-Dclear=__GLclear #EXPAT_DIR=/usr/local/src/expat-1.95.2 #pyexpat pyexpat.c -DHAVE_EXPAT_H -I$(EXPAT_DIR)/lib -L$(EXPAT_DIR) -lexpat +# Wrapper for iconv(3). This requires either GNU iconv, or a native +# iconv implementation (only Linux, Solaris, and BSD are known to work) +#_iconv_codec _iconv_codec -I$(prefix)/include -L$(exec_prefix)/lib -liconv # Example -- included for reference only: # xx xxmodule.c diff --git a/Modules/_iconv_codec.c b/Modules/_iconv_codec.c index 9f08102d82a..4a93aaa475d 100644 --- a/Modules/_iconv_codec.c +++ b/Modules/_iconv_codec.c @@ -603,17 +603,12 @@ static struct PyMethodDef _iconv_codec_methods[] = { void init_iconv_codec(void) { - PyObject *m, *d, *t; + PyObject *m; m = Py_InitModule("_iconv_codec", _iconv_codec_methods); - d = PyModule_GetDict(m); - - t = PyString_FromString(__version__); - PyDict_SetItemString(d, "__version__", t); - Py_DECREF(t); - - PyDict_SetItemString(d, "iconvcodec", (PyObject *)(&iconvcodec_Type)); + PyModule_AddStringConstant(m, "__version__", (char*)__version__); + PyModule_AddObject(m, "iconvcodec", (PyObject *)(&iconvcodec_Type)); PyModule_AddStringConstant(m, "internal_encoding", UNICODE_ENCODING); if (PyErr_Occurred())