diff options
author | Andy Fiddaman <omnios@citrus-it.co.uk> | 2018-10-13 21:12:19 +0000 |
---|---|---|
committer | Dan McDonald <danmcd@joyent.com> | 2018-10-24 15:27:58 -0400 |
commit | e8921a52c53ee69f7b65f054d9b2e886139daa59 (patch) | |
tree | 47ff09b2c3cf4a36bb54f09c2f24debb5f5f513a /usr/src/lib/pysolaris/common/misc.c | |
parent | e24b44e5c3120c9b5c8e9b7440bc10c8b7413bfb (diff) | |
download | illumos-gate-e8921a52c53ee69f7b65f054d9b2e886139daa59.tar.gz |
9894 Deliver python3 modules
9904 Split python modules out into separate packages
5571 Provide 64-bit python modules
Reviewed by: Alexander Pyhalov <apyhalov@gmail.com>
Reviewed by: Toomas Soome <tsoome@me.com>
Approved by: Dan McDonald <danmcd@joyent.com>
Diffstat (limited to 'usr/src/lib/pysolaris/common/misc.c')
-rw-r--r-- | usr/src/lib/pysolaris/common/misc.c | 36 |
1 files changed, 33 insertions, 3 deletions
diff --git a/usr/src/lib/pysolaris/common/misc.c b/usr/src/lib/pysolaris/common/misc.c index 13280d461f..211ab1b983 100644 --- a/usr/src/lib/pysolaris/common/misc.c +++ b/usr/src/lib/pysolaris/common/misc.c @@ -21,6 +21,7 @@ /* * Copyright 2010 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. + * Copyright 2018 OmniOS Community Edition (OmniOSce) Association. */ #include <Python.h> @@ -85,7 +86,7 @@ py_sid_to_name(PyObject *self, PyObject *args) return (NULL); } - ret = PyString_FromString(name); + ret = PyUnicode_FromString(name); free(name); return (ret); } @@ -121,8 +122,37 @@ static PyMethodDef solarismethods[] = { {NULL, NULL, 0, NULL} }; -void +#if PY_MAJOR_VERSION >= 3 +static struct PyModuleDef solaris_module = { + PyModuleDef_HEAD_INIT, + "solaris.misc", + NULL, + -1, + solarismethods +}; +#endif + +static PyObject * +moduleinit() +{ +#if PY_MAJOR_VERSION >= 3 + return (PyModule_Create(&solaris_module)); +#else + (void) Py_InitModule("solaris.misc", solarismethods); + return (NULL); +#endif +} + +#if PY_MAJOR_VERSION >= 3 +PyMODINIT_FUNC +PyInit_misc(void) +{ + return (moduleinit()); +} +#else +PyMODINIT_FUNC initmisc(void) { - PyObject *solaris_misc = Py_InitModule("solaris.misc", solarismethods); + (void) moduleinit(); } +#endif |