diff options
author | Patrick J Volkerding <volkerdi@slackware.com> | 2023-03-09 20:28:23 +0000 |
---|---|---|
committer | Eric Hameleers <alien@slackware.com> | 2023-03-09 22:34:46 +0100 |
commit | 821601d7cba5012a437b87753ccee562d94540ca (patch) | |
tree | a24a2fe4ffd50c76c0359961eadb86e746698d1b /source/l/libieee1284 | |
parent | a24031248459c107553c13f30fd4bd94a44758e1 (diff) | |
download | current-821601d7cba5012a437b87753ccee562d94540ca.tar.gz current-821601d7cba5012a437b87753ccee562d94540ca.tar.xz |
Thu Mar 9 20:28:23 UTC 202320230309202823
a/openssl-solibs-3.0.8-x86_64-2.txz: Rebuilt.
ap/dc3dd-7.3.0-x86_64-1.txz: Upgraded.
ap/mariadb-10.11.2-x86_64-1.txz: Upgraded.
d/cmake-3.25.3-x86_64-1.txz: Upgraded.
l/imagemagick-7.1.1_1-x86_64-1.txz: Upgraded.
l/libieee1284-0.2.11-x86_64-7.txz: Rebuilt.
Rebuilt for python3. Thanks to Heinz Wiesinger.
l/libplist-2.2.0-x86_64-4.txz: Rebuilt.
Rebuilt for python3. Thanks to Heinz Wiesinger.
l/pipewire-0.3.67-x86_64-1.txz: Upgraded.
n/ModemManager-1.20.6-x86_64-1.txz: Upgraded.
n/NetworkManager-1.42.4-x86_64-1.txz: Upgraded.
n/openssl-3.0.8-x86_64-2.txz: Rebuilt.
Fixed man pages. Thanks to marav.
Add example for enabling the legacy algorithms to /etc/ssl/openssl.cnf.
Thanks to ctrlaltca.
n/openvpn-2.6.1-x86_64-1.txz: Upgraded.
x/ibus-libpinyin-1.15.2-x86_64-1.txz: Upgraded.
x/mesa-22.3.7-x86_64-1.txz: Upgraded.
Diffstat (limited to 'source/l/libieee1284')
-rw-r--r-- | source/l/libieee1284/libieee1284-add-more-python-bindings.patch | 62 | ||||
-rw-r--r-- | source/l/libieee1284/libieee1284-fix-warnings.patch | 103 | ||||
-rw-r--r-- | source/l/libieee1284/libieee1284-python3.patch | 266 | ||||
-rwxr-xr-x | source/l/libieee1284/libieee1284.SlackBuild | 16 | ||||
-rw-r--r-- | source/l/libieee1284/libieee1284.url | 1 |
5 files changed, 446 insertions, 2 deletions
diff --git a/source/l/libieee1284/libieee1284-add-more-python-bindings.patch b/source/l/libieee1284/libieee1284-add-more-python-bindings.patch new file mode 100644 index 000000000..eea4cb4fc --- /dev/null +++ b/source/l/libieee1284/libieee1284-add-more-python-bindings.patch @@ -0,0 +1,62 @@ +From b4d63327dfef8dbf12aabf4bba0f6818a3519995 Mon Sep 17 00:00:00 2001 +From: Tim Waugh <twaugh@redhat.com> +Date: Tue, 8 Mar 2011 15:07:04 +0000 +Subject: [PATCH] 2011-03-08 Tim Waugh <twaugh@redhat.com> + +* src/ieee1284module.c: Added bindings for get_irq_fd and +clear_irq. Patch by Sergey Temerkhanov. +--- + src/ieee1284module.c | 33 +++++++++++++++++++++++++++++++++ + 2 files changed, 38 insertions(+) + +diff --git a/src/ieee1284module.c b/src/ieee1284module.c +index 0093d6f..23c1f29 100644 +--- a/src/ieee1284module.c ++++ b/src/ieee1284module.c +@@ -189,6 +189,33 @@ Parport_open (ParportObject *self, PyObject *args) + return PyInt_FromLong (capabilities); + } + ++static PyObject * ++Parport_get_irq_fd (ParportObject *self) ++{ ++ int fd = ieee1284_get_irq_fd (self->port); ++ if (fd < 0) { ++ handle_error (fd); ++ return NULL; ++ } ++ ++ return PyInt_FromLong (fd); ++} ++ ++static PyObject * ++Parport_clear_irq (ParportObject *self) ++{ ++ int portcount = 0; ++ int r; ++ ++ int fd = ieee1284_clear_irq (self->port, &portcount); ++ if (r < 0) { ++ handle_error (r); ++ return NULL; ++ } ++ ++ return PyInt_FromLong (portcount); ++} ++ + static PyObject * + Parport_close (ParportObject *self) + { +@@ -484,6 +511,12 @@ PyMethodDef Parport_methods[] = { + { "close", (PyCFunction) Parport_close, METH_NOARGS, + "close() -> None\n" + "Closes a port." }, ++ { "get_irq_fd", (PyCFunction) Parport_get_irq_fd, METH_VARARGS, ++ "get_irq_fd() -> int\n" ++ "Returns a pollable IRQ file descriptor." }, ++ { "clear_irq", (PyCFunction) Parport_clear_irq, METH_NOARGS, ++ "clear_irq(portcount) -> int\n" ++ "Clears IRQ and returns number of IRQs raised." }, + { "claim", (PyCFunction) Parport_claim, METH_NOARGS, + "claim() -> None\n" + "Claims a port." }, diff --git a/source/l/libieee1284/libieee1284-fix-warnings.patch b/source/l/libieee1284/libieee1284-fix-warnings.patch new file mode 100644 index 000000000..b65824c8a --- /dev/null +++ b/source/l/libieee1284/libieee1284-fix-warnings.patch @@ -0,0 +1,103 @@ +From c48855528beee1397d883f9c8a5df7aed5c917a6 Mon Sep 17 00:00:00 2001 +From: Tim Waugh <twaugh@redhat.com> +Date: Wed, 23 Jun 2010 11:58:04 +0000 +Subject: [PATCH] 2010-06-23 Tim Waugh <twaugh@redhat.com> + +* src/ieee1284module.c: Fixed warnings. +--- + src/ieee1284module.c | 37 ++++++++++++++++++++++++++++--------- + 2 files changed, 29 insertions(+), 9 deletions(-) + +diff --git a/src/ieee1284module.c b/src/ieee1284module.c +index 30972f8..0093d6f 100644 +--- a/src/ieee1284module.c ++++ b/src/ieee1284module.c +@@ -28,6 +28,17 @@ typedef struct { + struct parport *port; + } ParportObject; + ++static PyObject * ++Parport_new (PyTypeObject *type, PyObject *args, PyObject *kwds) ++{ ++ ParportObject *self; ++ self = (ParportObject *) type->tp_alloc (type, 0); ++ if (self != NULL) ++ self->port = NULL; ++ ++ return (PyObject *) self; ++} ++ + static int + Parport_init (ParportObject *self, PyObject *args, PyObject *kwds) + { +@@ -215,7 +226,6 @@ Parport_release (ParportObject *self) + static PyObject * + Parport_read_data (ParportObject *self) + { +- unsigned char b[2]; + int r = ieee1284_read_data (self->port); + if (r < 0) { + handle_error (r); +@@ -258,7 +268,6 @@ Parport_data_dir (ParportObject *self, PyObject *args) + static PyObject * + Parport_read_status (ParportObject *self) + { +- unsigned char b[2]; + int r = ieee1284_read_status (self->port); + if (r < 0) { + handle_error (r); +@@ -293,7 +302,6 @@ Parport_wait_status (ParportObject *self, PyObject *args) + static PyObject * + Parport_read_control (ParportObject *self) + { +- unsigned char b[2]; + int r = ieee1284_read_control (self->port); + if (r < 0) { + handle_error (r); +@@ -435,7 +443,6 @@ Parport_##x (ParportObject *self, PyObject *args) \ + int len; \ + char *buffer; \ + ssize_t wrote; \ +- PyObject *ret; \ + \ + if (!PyArg_ParseTuple (args, "s#|i", &buffer, &len, &flags)) \ + return NULL; \ +@@ -562,6 +569,23 @@ static PyTypeObject ParportType = { + 0, /* tp_as_buffer */ + Py_TPFLAGS_DEFAULT, /* tp_flags */ + "parallel port object", /* tp_doc */ ++ 0, /* tp_traverse */ ++ 0, /* tp_clear */ ++ 0, /* tp_richcompare */ ++ 0, /* tp_weaklistoffset */ ++ 0, /* tp_iter */ ++ 0, /* tp_iternext */ ++ Parport_methods, /* tp_methods */ ++ 0, /* tp_members */ ++ Parport_getseters, /* tp_getset */ ++ 0, /* tp_base */ ++ 0, /* tp_dict */ ++ 0, /* tp_descr_get */ ++ 0, /* tp_descr_set */ ++ 0, /* tp_dictoffset */ ++ (initproc)Parport_init, /* tp_init */ ++ 0, /* tp_alloc */ ++ Parport_new, /* tp_new */ + }; + + static PyObject * +@@ -625,14 +649,9 @@ initieee1284 (void) + PyObject *d = PyModule_GetDict (m); + PyObject *c; + +- ParportType.tp_new = PyType_GenericNew; +- ParportType.tp_init = (initproc) Parport_init; +- ParportType.tp_getset = Parport_getseters; +- ParportType.tp_methods = Parport_methods; + if (PyType_Ready (&ParportType) < 0) + return; + +- Py_INCREF (&ParportType); + PyModule_AddObject (m, "Parport", (PyObject *) &ParportType); + + pyieee1284_error = PyErr_NewException("ieee1284.error", NULL, NULL); diff --git a/source/l/libieee1284/libieee1284-python3.patch b/source/l/libieee1284/libieee1284-python3.patch new file mode 100644 index 000000000..bed2be230 --- /dev/null +++ b/source/l/libieee1284/libieee1284-python3.patch @@ -0,0 +1,266 @@ +diff --git a/src/ieee1284module.c b/src/ieee1284module.c +index 23c1f29..c6d6928 100644 +--- a/src/ieee1284module.c ++++ b/src/ieee1284module.c +@@ -52,33 +52,32 @@ Parport_dealloc (ParportObject *self) + { + if (self->port) + ieee1284_unref (self->port); +- +- self->ob_type->tp_free ((PyObject *) self); ++ Py_TYPE(self)->tp_free((PyObject *) self); + } + + static PyObject * + Parport_getname (ParportObject *self, void *closure) + { +- return PyString_FromString (self->port->name); ++ return PyBytes_FromString (self->port->name); + } + + static PyObject * + Parport_getbase_addr (ParportObject *self, void *closure) + { +- return PyInt_FromLong (self->port->base_addr); ++ return PyLong_FromLong (self->port->base_addr); + } + + static PyObject * + Parport_gethibase_addr (ParportObject *self, void *closure) + { +- return PyInt_FromLong (self->port->hibase_addr); ++ return PyLong_FromLong (self->port->hibase_addr); + } + + static PyObject * + Parport_getfilename (ParportObject *self, void *closure) + { + if (self->port->filename) +- return PyString_FromString (self->port->filename); ++ return PyBytes_FromString (self->port->filename); + + Py_INCREF (Py_None); + return Py_None; +@@ -168,7 +167,7 @@ Parport_get_deviceid (ParportObject *self, PyObject *args) + return NULL; + } + +- return PyString_FromStringAndSize (buffer, r); ++ return PyBytes_FromStringAndSize (buffer, r); + } + + static PyObject * +@@ -186,7 +185,7 @@ Parport_open (ParportObject *self, PyObject *args) + return NULL; + } + +- return PyInt_FromLong (capabilities); ++ return PyLong_FromLong (capabilities); + } + + static PyObject * +@@ -198,7 +197,7 @@ Parport_get_irq_fd (ParportObject *self) + return NULL; + } + +- return PyInt_FromLong (fd); ++ return PyLong_FromLong (fd); + } + + static PyObject * +@@ -213,7 +212,7 @@ Parport_clear_irq (ParportObject *self) + return NULL; + } + +- return PyInt_FromLong (portcount); ++ return PyLong_FromLong (portcount); + } + + static PyObject * +@@ -259,7 +258,7 @@ Parport_read_data (ParportObject *self) + return NULL; + } + +- return PyInt_FromLong (r); ++ return PyLong_FromLong (r); + } + + static PyObject * +@@ -301,7 +300,7 @@ Parport_read_status (ParportObject *self) + return NULL; + } + +- return PyInt_FromLong (r); ++ return PyLong_FromLong (r); + } + + static PyObject * +@@ -335,7 +334,7 @@ Parport_read_control (ParportObject *self) + return NULL; + } + +- return PyInt_FromLong (r); ++ return PyLong_FromLong (r); + } + + static PyObject * +@@ -452,7 +451,7 @@ Parport_##x (ParportObject *self, PyObject *args) \ + return NULL; \ + } \ + \ +- ret = PyString_FromStringAndSize (buffer, got); \ ++ ret = PyBytes_FromStringAndSize (buffer, got); \ + free (buffer); \ + return ret; \ + } +@@ -480,7 +479,7 @@ Parport_##x (ParportObject *self, PyObject *args) \ + return NULL; \ + } \ + \ +- return PyInt_FromLong (wrote); \ ++ return PyLong_FromLong (wrote); \ + } + + #define WRITE_METHOD(x) \ +@@ -581,44 +580,53 @@ WRITE_METHOD(ecp_write_addr) + + static PyTypeObject ParportType = { + PyObject_HEAD_INIT(NULL) +- 0, /* ob_size */ +- "ieee1284.Parport", /* tp_name */ +- sizeof (ParportObject), /* tp_basicsize */ +- 0, /* tp_itemsize */ +- (destructor)Parport_dealloc, /* tp_dealloc */ +- 0, /* tp_print */ +- 0, /* tp_getattr */ +- 0, /* tp_setattr */ +- 0, /* tp_compare */ +- 0, /* tp_repr */ +- 0, /* tp_as_number */ +- 0, /* tp_as_sequence */ +- 0, /* tp_as_mapping */ +- 0, /* tp_hash */ +- 0, /* tp_call */ +- 0, /* tp_str */ +- 0, /* tp_getattro */ +- 0, /* tp_setattro */ +- 0, /* tp_as_buffer */ +- Py_TPFLAGS_DEFAULT, /* tp_flags */ +- "parallel port object", /* tp_doc */ +- 0, /* tp_traverse */ +- 0, /* tp_clear */ +- 0, /* tp_richcompare */ +- 0, /* tp_weaklistoffset */ +- 0, /* tp_iter */ +- 0, /* tp_iternext */ +- Parport_methods, /* tp_methods */ +- 0, /* tp_members */ +- Parport_getseters, /* tp_getset */ +- 0, /* tp_base */ +- 0, /* tp_dict */ +- 0, /* tp_descr_get */ +- 0, /* tp_descr_set */ +- 0, /* tp_dictoffset */ +- (initproc)Parport_init, /* tp_init */ +- 0, /* tp_alloc */ +- Parport_new, /* tp_new */ ++ "ieee1284.Parport", /* const char *tp_name; */ ++ sizeof (ParportObject), /* Py_ssize_t tp_basicsize */ ++ 0, /* Py_ssize_t tp_itemsize; */ ++ (destructor)Parport_dealloc, /* destructor tp_dealloc; */ ++ 0, /* printfunc tp_print; */ ++ 0, /* getattrfunc tp_getattr; */ ++ 0, /* setattrfunc tp_setattr; */ ++ 0, /* PyAsyncMethods *tp_as_async; */ ++ 0, /* reprfunc tp_repr; */ ++ 0, /* PyNumberMethods *tp_as_number; */ ++ 0, /* PySequenceMethods *tp_as_sequence; */ ++ 0, /* PyMappingMethods *tp_as_mapping; */ ++ 0, /* hashfunc tp_hash; */ ++ 0, /* ternaryfunc tp_call; */ ++ 0, /* reprfunc tp_str; */ ++ 0, /* getattrofunc tp_getattro; */ ++ 0, /* setattrofunc tp_setattro; */ ++ 0, /* PyBufferProcs *tp_as_buffer; */ ++ Py_TPFLAGS_DEFAULT, /* unsigned long tp_flags; */ ++ "parallel port object", /* const char *tp_doc; */ ++ 0, /* traverseproc tp_traverse; */ ++ 0, /* inquiry tp_clear; */ ++ 0, /* richcmpfunc tp_richcompare; */ ++ 0, /* Py_ssize_t tp_weaklistoffset; */ ++ 0, /* getiterfunc tp_iter; */ ++ 0, /* iternextfunc tp_iternext; */ ++ Parport_methods, /* struct PyMethodDef *tp_methods; */ ++ 0, /* struct PyMemberDef *tp_members; */ ++ Parport_getseters, /* struct PyGetSetDef *tp_getset; */ ++ 0, /* struct _typeobject *tp_base; */ ++ 0, /* PyObject *tp_dict; */ ++ 0, /* descrgetfunc tp_descr_get; */ ++ 0, /* descrsetfunc tp_descr_set; */ ++ 0, /* Py_ssize_t tp_dictoffset; */ ++ (initproc)Parport_init, /* initproc tp_init; */ ++ 0, /* allocfunc tp_alloc; */ ++ Parport_new, /* newfunc tp_new; */ ++ 0, /* freefunc tp_free; */ ++ 0, /* inquiry tp_is_gc; */ ++ 0, /* PyObject *tp_bases; */ ++ 0, /* PyObject *tp_mro; */ ++ 0, /* PyObject *tp_cache; */ ++ 0, /* PyObject *tp_subclasses; */ ++ 0, /* PyObject *tp_weaklist; */ ++ 0, /* destructor tp_del; */ ++ 0, /* unsigned int tp_version_tag; */ ++ 0 /* destructor tp_finalize; */ + }; + + static PyObject * +@@ -672,18 +680,30 @@ static PyMethodDef Ieee1284Methods[] = { + {NULL, NULL, 0, NULL} + }; + ++static struct PyModuleDef Ieee1284Module = { ++ PyModuleDef_HEAD_INIT, ++ "ieee1284", ++ NULL, /* documentation */ ++ -1, ++ Ieee1284Methods, ++ NULL, ++ NULL, ++ NULL, ++ NULL ++}; ++ + #ifndef PyMODINIT_FUNC + #define PyMODINIT_FUNC void + #endif + PyMODINIT_FUNC +-initieee1284 (void) ++PyInit_ieee1284module (void) + { +- PyObject *m = Py_InitModule ("ieee1284", Ieee1284Methods); ++ PyObject *m = PyModule_Create (&Ieee1284Module); + PyObject *d = PyModule_GetDict (m); + PyObject *c; + + if (PyType_Ready (&ParportType) < 0) +- return; ++ return NULL; + + PyModule_AddObject (m, "Parport", (PyObject *) &ParportType); + +@@ -693,7 +713,7 @@ initieee1284 (void) + + #define CONSTANT(x) \ + do { \ +- c = PyInt_FromLong (x); \ ++ c = PyLong_FromLong (x); \ + PyDict_SetItemString (d, #x, c); \ + Py_DECREF (c); \ + } while (0) +@@ -740,4 +760,6 @@ initieee1284 (void) + CONSTANT (F1284_SWE); + CONSTANT (F1284_RLE); + CONSTANT (F1284_FASTEPP); ++ ++ return m; + } diff --git a/source/l/libieee1284/libieee1284.SlackBuild b/source/l/libieee1284/libieee1284.SlackBuild index 326b6573e..1827ffda3 100755 --- a/source/l/libieee1284/libieee1284.SlackBuild +++ b/source/l/libieee1284/libieee1284.SlackBuild @@ -1,6 +1,6 @@ #!/bin/bash -# Copyright 2006, 2007, 2008, 2009, 2010, 2018 Patrick J. Volkerding, Sebeka, MN, USA +# Copyright 2006, 2007, 2008, 2009, 2010, 2018, 2023 Patrick J. Volkerding, Sebeka, MN, USA # All rights reserved. # # Redistribution and use of this script, with or without modification, is @@ -24,7 +24,7 @@ cd $(dirname $0) ; CWD=$(pwd) PKGNAM=libieee1284 VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)} -BUILD=${BUILD:-6} +BUILD=${BUILD:-7} # Automatically determine the architecture we're building on: if [ -z "$ARCH" ]; then @@ -78,8 +78,20 @@ find . \ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \ -exec chmod 644 {} \+ +# Upstream commits around better python bindings support +zcat $CWD/libieee1284-fix-warnings.patch.gz | patch -p1 --verbose || exit 1 +zcat $CWD/libieee1284-add-more-python-bindings.patch.gz | patch -p1 --verbose || exit 1 + +# Arch patch to update python bindings to python3 +zcat $CWD/libieee1284-python3.patch.gz | patch -p1 --verbose || exit 1 + +sed -i "s|print sys.version\[:3\]|print(sys.version\[:3\])|" ./configure +sed -i "s|print sys.platform|print(sys.platform)|" ./configure +sed -i "s|lib/python|lib$LIBDIRSUFFIX/python|" ./configure + # Configure: CFLAGS="$SLKCFLAGS" \ +PYTHON="/usr/bin/python3" \ ./configure \ --prefix=/usr \ --libdir=/usr/lib${LIBDIRSUFFIX} \ diff --git a/source/l/libieee1284/libieee1284.url b/source/l/libieee1284/libieee1284.url new file mode 100644 index 000000000..3e23f17bb --- /dev/null +++ b/source/l/libieee1284/libieee1284.url @@ -0,0 +1 @@ +https://github.com/twaugh/libieee1284 |