From 9ee6d97c2883d42f204a533a8bc1f4562df778fb Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Wed, 16 Sep 2020 09:32:48 +0100 Subject: gentoo resync : 16.09.2020 --- dev-tcltk/tclpython/Manifest | 5 +- .../tclpython/files/tclpython-4.1-python-3.patch | 229 --------------------- dev-tcltk/tclpython/tclpython-4.1-r6.ebuild | 55 ----- dev-tcltk/tclpython/tclpython-5.0.ebuild | 2 +- 4 files changed, 2 insertions(+), 289 deletions(-) delete mode 100644 dev-tcltk/tclpython/files/tclpython-4.1-python-3.patch delete mode 100644 dev-tcltk/tclpython/tclpython-4.1-r6.ebuild (limited to 'dev-tcltk/tclpython') diff --git a/dev-tcltk/tclpython/Manifest b/dev-tcltk/tclpython/Manifest index 77b55b9f741a..ae54eebf21cb 100644 --- a/dev-tcltk/tclpython/Manifest +++ b/dev-tcltk/tclpython/Manifest @@ -1,7 +1,4 @@ -AUX tclpython-4.1-python-3.patch 8863 BLAKE2B 6c1c2fa8f29240b6703911fde24519961f740cdac0d331cea7df3fb90fed769319ca0c00422ebe58275be90584c28debdf906f1b8c923e96d0c834a2af621077 SHA512 530d057501ef72e7f28cfff1f0af2076b93739085154fc4d20a5b59b26e33d1418bf694093b05e840055734438232dd9414ba0262720fb4bd2e35249769b24e7 AUX tclpython-5.0-gentoo.patch 856 BLAKE2B cd2efc191b03a24ed9fc7ed69349a8503228de30b9f79d01d81a11b1b166819e202901a6a1f246d0c142ae55fd7589a3c2ad7e81a1cbc7ca5ef486b5424c7292 SHA512 2cf2a99979d7457e5b16c795c86883b81069ecb01b485d52990e1c69ef412dbced3a10dfcfb803b8e1aa0cb0a09221598d7317a19dd20576e4c9fe163d29811f -DIST tclpython-4.1.tar.bz2 10580 BLAKE2B 98d4783cc52bc907c21d50ee393e25ee084b449db7c393c16b0b1f0420469bd0904d16dc2a6806b776dad7dabd521e5f2e8cc942c720d9e69750385302355608 SHA512 5f08e7129a7d9afeb1ac6bf1ab1c83ad3bb481593c9516c0653c7b4ba0dfb1b3129a336e64b998cec8ef2d2377a6a366b73c640d25839ab280d5079c0b220d54 DIST tclpython-5.0.tar.gz 19327 BLAKE2B bad25a6eb04dbcd9ca3e9bc81d44f098f31f2acf367ecc32307596d5da3ed95752b3c60d9ee74fc04e21669e0361f0790edad3ad5793c78ece4904beacd92900 SHA512 fe15218fe00e921384dbd9611685b86cb6dfacb515a95545079550aeadaaafc3964e6ef0594a268a3fd900f40d178659e8b7f6f2a6d9aa507b59a8be0bd116af -EBUILD tclpython-4.1-r6.ebuild 1279 BLAKE2B 684acb03b7a6d3a5684d16494f3a10d23abfd1da164b528c6dccb78c131bc67554809e318b44604eb4dc07697f5f950dd4634ef8a9c5a0df6d3678fdfb0b6a57 SHA512 addcbf2fb4e252dfdc7915f7df82086c1c62d62f27372e8dbd2b6eccf9d9334d5a89f5b3ae0151666d65974729dbe351d18c1908e2309d471508913ae7daa1f2 -EBUILD tclpython-5.0.ebuild 988 BLAKE2B 41e669046b2f94984a1747f06824980bf125e6c00aa21e6fcedc9ea2b39c039ac183f998390c9760fe9511afb468f1649ef1802d2f5bceae8cbb6d74163f0acb SHA512 30b24fad3800f2e4fefd516df2059f90b0365aec018992fabb5847173d6488a510ddedf27a56264d0262e0f0f16573fba069121119c5663c8033482f3831f0b7 +EBUILD tclpython-5.0.ebuild 987 BLAKE2B bdd616c2573819d66826726ade9703124e9087f59aaed7d55f0c8cd98e85bce93ccd76fb1542e7d4259572995b1de5e4d42163b8ce585d6ea9cac3038fe81709 SHA512 ae0d00e15dc63885f6773207a9f1d136fe1a809c6b50182f2f6b00804781e1a792fc258468e7ef0be42b836bf6a9cb2badd8da7645774126b1cf1320c27fbb52 MISC metadata.xml 259 BLAKE2B 174c3c7b4292350e73a38b09d473abba172ee6e82ca1b5bcb6815a9927609a7fbac063a19498e7c5deaa32530d10d8c493760ff5b6e489f821410cfeccadf566 SHA512 5943f2c9dc9a55862bae4c01be9e1f27304ffc1ce48d67341b4a19793c0bb11fe3d1a419af924ac360aeeafbce28018971602019a559a8a6c5939e05e3567639 diff --git a/dev-tcltk/tclpython/files/tclpython-4.1-python-3.patch b/dev-tcltk/tclpython/files/tclpython-4.1-python-3.patch deleted file mode 100644 index 2a26f647c10e..000000000000 --- a/dev-tcltk/tclpython/files/tclpython-4.1-python-3.patch +++ /dev/null @@ -1,229 +0,0 @@ ---- a/tclpython.c 2006-03-07 16:28:03.000000000 +0300 -+++ b/tclpython.c 2014-05-06 23:33:41.713623943 +0400 -@@ -19,13 +19,83 @@ - $ cc -fpic -I/usr/local/include/tcltk/tcl8.3 -c tclthread.c - $ ld -o tclpython.so -Bshareable -L/usr/X11R6/lib -L/usr/local/lib -L/usr/local/share/python/config tclpython.o tclthread.o -lpython -lutil -lreadline -ltermcap -lcrypt -lgmp -lgdbm -lpq -lz -ltcl83 -ltk83 -lX11 - -+Patched for Python 3 with respect to https://github.com/facebook/fbthrift/blob/master/thrift/lib/py/protocol/fastbinary.c -+ - */ - - #include - #include --#include -+ -+#if PY_MAJOR_VERSION >= 3 -+ #define PyInt_FromLong PyLong_FromLong -+ #define PyInt_AsLong PyLong_AsLong -+ #define PyString_FromStringAndSize PyBytes_FromStringAndSize -+#else -+ #include -+#endif -+ - #include "tclpython.h" - -+// Mostly copied from cStringIO.c -+#if PY_MAJOR_VERSION >= 3 -+ -+/** io module in python3. */ -+static PyObject* Python3IO; -+ -+typedef struct { -+ PyObject_HEAD -+ char *buf; -+ Py_ssize_t pos, string_size; -+} IOobject; -+ -+#define IOOOBJECT(O) ((IOobject*)(O)) -+ -+static int -+IO__opencheck(IOobject *self) { -+ if (!self->buf) { -+ PyErr_SetString(PyExc_ValueError, -+ "I/O operation on closed file"); -+ return 0; -+ } -+ return 1; -+} -+ -+static PyObject * -+IO_cgetval(PyObject *self) { -+ if (!IO__opencheck(IOOOBJECT(self))) return NULL; -+ assert(IOOOBJECT(self)->pos >= 0); -+ return PyBytes_FromStringAndSize(((IOobject*)self)->buf, -+ ((IOobject*)self)->pos); -+} -+#endif -+ -+/* -- PYTHON MODULE SETUP STUFF --- */ -+ -+static PyObject *pythonTclEvaluate(PyObject *self, PyObject *args); -+ -+static PyMethodDef tclMethods[] = { -+ {"eval", pythonTclEvaluate, METH_VARARGS, "Evaluate a Tcl script."}, -+ {0, 0, 0, 0} /* sentinel */ -+}; -+ -+#if PY_MAJOR_VERSION >= 3 -+struct module_state { -+ PyObject *error; -+}; -+ -+static struct PyModuleDef TclModuleDef = { -+ PyModuleDef_HEAD_INIT, -+ "tcl", -+ NULL, -+ sizeof(struct module_state), -+ tclMethods, -+ NULL, -+ NULL, -+ NULL, -+ NULL -+}; -+#endif -+ - #ifndef WIN32 - /* George Petasis, 21 Feb 2006: - * The following check cannot be handled correctly -@@ -66,13 +136,13 @@ - - static int pythonInterpreter(ClientData clientData, Tcl_Interp *interpreter, int numberOfArguments, Tcl_Obj * CONST arguments[]) - { -- int identifier; -+ intptr_t identifier; - PyObject *output; - PyObject *message; - PyObject *result; - PyObject *globals; - char *string = 0; -- int length; -+ Py_ssize_t length; - Tcl_Obj *object; - struct Tcl_HashEntry *entry; - unsigned evaluate; -@@ -111,12 +181,22 @@ - /* choose start token depending on whether this is an evaluation or an execution: */ - result = PyRun_String(Tcl_GetString(arguments[2]), (evaluate? Py_eval_input: Py_file_input), globals, globals); - if (result == 0) { /* an error occured */ -+#if PY_MAJOR_VERSION >= 3 -+ output = PyObject_CallMethod(Python3IO, "BytesIO", "()"); -+#else - output = PycStringIO->NewOutput(1024); /* use a reasonable initial size but big enough to handle most cases */ -- PySys_SetObject("stderr", output); /* capture all interpreter error output */ -+#endif -+ PySys_SetObject("sys.stderr", output); /* capture all interpreter error output */ - PyErr_Print(); /* so that error is printed on standard error, redirected above */ -+#if PY_MAJOR_VERSION >= 3 -+ message = IO_cgetval(output); -+ string = PyBytes_AsString(message); -+ length = (string == NULL) ? 0 : strlen(string); -+#else - message = PycStringIO->cgetvalue(output); - string = PyString_AsString(message); - length = PyString_Size(message); -+#endif - if ((length > 0) && (string[length - 1] == '\n')) length--; /* eventually remove trailing new line character */ - object = Tcl_NewObj(); - Tcl_AppendStringsToObj(object, Tcl_GetString(arguments[0]), ": ", 0); /* identify interpreter in error */ -@@ -124,7 +204,11 @@ - Py_DECREF(output); - } else { - if (evaluate) { -+#if PY_MAJOR_VERSION >= 3 -+ string = PyUnicode_AsUTF8(PyObject_Str(result)); -+#else - string = PyString_AsString(PyObject_Str(result)); -+#endif - object = Tcl_NewStringObj(string, -1); /* return evaluation result */ - } else /* execute */ - object = Tcl_NewObj(); /* always return an empty result or an error */ -@@ -139,9 +223,9 @@ - - Tcl_Interp *tclInterpreter(CONST char *name) /* public function for use in extensions to this extension */ - { -- int identifier; -+ intptr_t identifier; - -- if ((sscanf(name, "tcl%u", &identifier) == 0) || (identifier != 0)) { -+ if ((sscanf(name, "tcl%lu", &identifier) == 0) || (identifier != 0)) { - return 0; /* invalid name */ - } else { - return mainInterpreter; /* sole available interpreter */ -@@ -188,14 +272,9 @@ - return Py_BuildValue("s", result); - } - --static PyMethodDef tclMethods[] = { -- {"eval", pythonTclEvaluate, METH_VARARGS, "Evaluate a Tcl script."}, -- {0, 0, 0, 0} /* sentinel */ --}; -- - static int newInterpreter(Tcl_Interp *interpreter) - { -- int identifier; -+ intptr_t identifier; - Tcl_Obj *object; - int created; - #ifdef WITH_THREAD -@@ -214,19 +293,31 @@ - return TCL_ERROR; - } else { - Py_Initialize(); /* initialize main interpreter */ -+#if PY_MAJOR_VERSION >= 3 -+ Python3IO = PyImport_ImportModule("io"); -+#else - PycString_IMPORT; -+#endif - } - Tcl_SetHashValue(Tcl_CreateHashEntry(&threadStates, (ClientData)identifier, &created), 0); - #else - if (existingInterpreters == 0) { - Py_Initialize(); /* initialize main interpreter */ - PyEval_InitThreads(); /* initialize and acquire the global interpreter lock */ -+#if PY_MAJOR_VERSION >= 3 -+ Python3IO = PyImport_ImportModule("io"); -+#else - PycString_IMPORT; -+#endif - globalState = PyThreadState_Swap(0); /* save the global thread */ - } else { - PyEval_AcquireLock(); /* needed in order to be able to create a new interpreter */ - } -+#if PY_MAJOR_VERSION >= 3 -+ if (Python3IO == 0) { /* make sure string input/output is properly initialized */ -+#else - if (PycStringIO == 0) { /* make sure string input/output is properly initialized */ -+#endif - Tcl_SetResult(interpreter, "fatal error: could not initialize Python string input/output module", TCL_STATIC); - return TCL_ERROR; - } -@@ -250,7 +341,11 @@ - newIdentifier++; - #endif - existingInterpreters++; -+#if PY_MAJOR_VERSION >= 3 -+ tcl = PyModule_Create(&TclModuleDef); -+#else - tcl = Py_InitModule("tcl", tclMethods); /* add a new 'tcl' module to the python interpreter */ -+#endif - Py_INCREF(tcl); - PyModule_AddObject(PyImport_AddModule("__builtin__"), "tcl", tcl); - return TCL_OK; -@@ -260,7 +355,7 @@ - { - int index; - char *name; -- int identifier; -+ intptr_t identifier; - struct Tcl_HashEntry *entry; - Tcl_Obj *object; - #ifdef WITH_THREAD -@@ -270,7 +365,7 @@ - for (index = 0; index < numberOfArguments; index++) { - name = Tcl_GetString(arguments[index]); /* interpreter name is "pythonN" */ - entry = 0; -- if (sscanf(name, "python%u", &identifier) == 1) { -+ if (sscanf(name, "python%lu", &identifier) == 1) { - identifier = atoi(name + 6); - entry = Tcl_FindHashEntry(&threadStates, (ClientData)identifier); - } diff --git a/dev-tcltk/tclpython/tclpython-4.1-r6.ebuild b/dev-tcltk/tclpython/tclpython-4.1-r6.ebuild deleted file mode 100644 index e6896c3a0158..000000000000 --- a/dev-tcltk/tclpython/tclpython-4.1-r6.ebuild +++ /dev/null @@ -1,55 +0,0 @@ -# Copyright 1999-2020 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=5 - -PYTHON_COMPAT=( python3_6 ) - -inherit eutils multilib python-single-r1 toolchain-funcs - -DESCRIPTION="Python package for Tcl" -HOMEPAGE="http://jfontain.free.fr/tclpython.htm" -SRC_URI="http://jfontain.free.fr/${P}.tar.bz2" - -LICENSE="GPL-2" -SLOT="0" -KEYWORDS="amd64 ppc x86" -IUSE="" - -REQUIRED_USE="${PYTHON_REQUIRED_USE}" - -DEPEND="${PYTHON_DEPS} - dev-lang/tcl:0= - sys-libs/binutils-libs" -RDEPEND="${DEPEND}" - -PATCHES=( - "${FILESDIR}"/${P}-python-3.patch -) - -src_prepare() { - epatch "${PATCHES[@]}" -} - -src_compile() { - local cfile="tclpython tclthread" - for src in ${cfile}; do - compile="$(tc-getCC) -shared -fPIC ${CFLAGS} -I$(python_get_includedir) -c ${src}.c" - einfo "${compile}" - eval "${compile}" || die - done - - link="$(tc-getCC) -fPIC -shared ${LDFLAGS} -o tclpython.so.${PV} tclpython.o tclthread.o -lpthread -lutil $(python_get_LIBS) -ltcl" - einfo "${link}" - eval "${link}" || die -} - -src_install() { - insinto /usr/$(get_libdir)/tclpython - doins tclpython.so.${PV} pkgIndex.tcl - fperms 775 /usr/$(get_libdir)/tclpython/tclpython.so.${PV} - dosym tclpython.so.${PV} /usr/$(get_libdir)/tclpython/tclpython.so - - dodoc CHANGES INSTALL README - dohtml tclpython.htm -} diff --git a/dev-tcltk/tclpython/tclpython-5.0.ebuild b/dev-tcltk/tclpython/tclpython-5.0.ebuild index fabbc284352e..9e90cd3285ae 100644 --- a/dev-tcltk/tclpython/tclpython-5.0.ebuild +++ b/dev-tcltk/tclpython/tclpython-5.0.ebuild @@ -13,7 +13,7 @@ SRC_URI="https://github.com/amykyta3/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz" LICENSE="GPL-2" SLOT="0" -KEYWORDS="amd64 ~ppc x86" +KEYWORDS="amd64 ppc x86" IUSE="" REQUIRED_USE="${PYTHON_REQUIRED_USE}" -- cgit v1.2.3