FreeBSD Bugzilla – Attachment 218412 Details for
Bug 245321
audio/alsa-lib: (and others) update to 1.2.2
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
Remember
[x]
|
Forgot Password
Login:
[x]
[patch]
alsa.patch v2
alsa.patch (text/plain), 41.63 KB, created by
Val Packett
on 2020-09-29 17:42:15 UTC
(
hide
)
Description:
alsa.patch v2
Filename:
MIME Type:
Creator:
Val Packett
Created:
2020-09-29 17:42:15 UTC
Size:
41.63 KB
patch
obsolete
>diff --git c/audio/alsa-lib/Makefile i/audio/alsa-lib/Makefile >index 04dffb5d4f06..53827c009016 100644 >--- c/audio/alsa-lib/Makefile >+++ i/audio/alsa-lib/Makefile >@@ -1,48 +1,47 @@ > # Created by: Aragon Gouveia <aragon@phat.za.net> > # $FreeBSD$ > > PORTNAME= alsa-lib >-PORTVERSION= 1.1.2 >-PORTREVISION= 2 >+PORTVERSION= 1.2.2 > CATEGORIES= audio > MASTER_SITES= ftp://ftp.alsa-project.org/pub/lib/ \ > GENTOO > >-MAINTAINER= ports@FreeBSD.org >+MAINTAINER= greg@unrelenting.technology > COMMENT= ALSA compatibility library > > LICENSE= LGPL21+ > > USES= cpe libtool:keepla tar:bzip2 > CPE_VENDOR= alsa > USE_LDCONFIG= yes > GNU_CONFIGURE= yes > CONFIGURE_ARGS= --with-pkgconfdir="\$${prefix}/libdata/pkgconfig" > CONFIGURE_ENV= ac_cv_header_endian_h=no > INSTALL_TARGET= install-strip > TEST_ENV= ${MAKE_ENV} \ > ALSA_CONFIG_PATH="${FILESDIR}/asound.conf.sample" > TEST_TARGET= check > CPPFLAGS+= -I${FILESDIR} > > OPTIONS_DEFINE= PYTHON > OPTIONS_SUB= yes > > PYTHON_USES= python >-PYTHON_CONFIGURE_ENABLE= python >+PYTHON_CONFIGURE_ENABLE= python mixer-pymods > > post-patch: .SILENT > ${REINPLACE_CMD} -e '/LIBS/ { s/-ldl//g; s/-lrt//g; }' \ >- -e 's/python-config/${PYTHON_CMD:T}-config/g' \ >+ -e 's/python3-config/${PYTHON_CMD:T}-config/g' \ > -e '/pythonlibs/s/--libs/--ldflags/' \ > -e '/_GNU_SOURCE/d' \ > -e '/lt_cv_dlopen/s/-ldl//g' ${WRKSRC}/configure > ${REINPLACE_CMD} '/LIBADD/s/-ldl//g' \ > ${WRKSRC}/modules/mixer/simple/Makefile.in > ${REINPLACE_CMD} 's|/etc|${PREFIX}&|g' \ > ${WRKSRC}/src/conf/alsa.conf > > post-install: > ${INSTALL_DATA} ${FILESDIR}/asound.conf.sample ${STAGEDIR}${PREFIX}/etc > > .include <bsd.port.mk> >diff --git c/audio/alsa-lib/distinfo i/audio/alsa-lib/distinfo >index ef2e685aca82..0b7cf950fec8 100644 >--- c/audio/alsa-lib/distinfo >+++ i/audio/alsa-lib/distinfo >@@ -1,2 +1,3 @@ >-SHA256 (alsa-lib-1.1.2.tar.bz2) = d38dacd9892b06b8bff04923c380b38fb2e379ee5538935ff37e45b395d861d6 >-SIZE (alsa-lib-1.1.2.tar.bz2) = 947423 >+TIMESTAMP = 1585921554 >+SHA256 (alsa-lib-1.2.2.tar.bz2) = d8e853d8805574777bbe40937812ad1419c9ea7210e176f0def3e6ed255ab3ec >+SIZE (alsa-lib-1.2.2.tar.bz2) = 1030747 >diff --git c/audio/alsa-lib/files/linux/types.h i/audio/alsa-lib/files/linux/types.h >index b6de02a9c29a..0329d94e09dd 100644 >--- c/audio/alsa-lib/files/linux/types.h >+++ i/audio/alsa-lib/files/linux/types.h >@@ -1,15 +1,25 @@ > #ifndef _LINUX_TYPES_H > #define _LINUX_TYPES_H > > #include <sys/types.h> > > #define __bitwise > #define __le16 __u16 > #define __le32 __u32 > #define __le64 __u64 > > typedef pid_t __kernel_pid_t; > typedef off_t __kernel_off_t; >+typedef long __kernel_long_t; > >+typedef uint8_t __u8; >+typedef uint16_t __u16; >+typedef uint32_t __u32; > typedef uint64_t __u64; >+ >+typedef int8_t __s8; >+typedef int16_t __s16; >+typedef int32_t __s32; >+typedef int64_t __s64; >+ > #endif /* _LINUX_TYPES_H */ >diff --git c/audio/alsa-lib/files/patch-include_alsa-symbols.h i/audio/alsa-lib/files/patch-include_alsa-symbols.h >deleted file mode 100644 >index 2dee729b1344..000000000000 >--- c/audio/alsa-lib/files/patch-include_alsa-symbols.h >+++ /dev/null >@@ -1,59 +0,0 @@ >-commit 3bad0a21b4d13d8d10691f382c836897fa7a7cb9 >-Author: Breno Leitao <leitao@debian.org> >-Date: Wed Feb 22 16:45:00 2017 -0300 >- >- Drop ppc64-specific workaround for versioned symbols >- >- Currently aserver fails to build when using parameter >- --without-versioned, due to an workaround for ppc64 >- (06221f86d207cb33ddd4867ca5301eeb247c4400). This workaround is >- not required anymore on the ppc64 ABI v2, and, in fact is breaking the >- compilation. Reverting this commit >- >- Signed-off-by: Breno Leitao <leitao@debian.org> >- Signed-off-by: Takashi Iwai <tiwai@suse.de> >- >---- include/alsa-symbols.h.orig 2016-08-02 17:48:38 UTC >-+++ include/alsa-symbols.h >-@@ -29,19 +29,10 @@ >- #define INTERNAL_CONCAT2_2(Pre, Post) Pre##Post >- #define INTERNAL(Name) INTERNAL_CONCAT2_2(__, Name) >- >--#ifdef __powerpc64__ >--# define symbol_version(real, name, version) \ >-- __asm__ (".symver " ASM_NAME(#real) "," ASM_NAME(#name) "@" #version); \ >-- __asm__ (".symver ." ASM_NAME(#real) ",." ASM_NAME(#name) "@" #version) >--# define default_symbol_version(real, name, version) \ >-- __asm__ (".symver " ASM_NAME(#real) "," ASM_NAME(#name) "@@" #version); \ >-- __asm__ (".symver ." ASM_NAME(#real) ",." ASM_NAME(#name) "@@" #version) >--#else >- # define symbol_version(real, name, version) \ >- __asm__ (".symver " ASM_NAME(#real) "," ASM_NAME(#name) "@" #version) >- # define default_symbol_version(real, name, version) \ >- __asm__ (".symver " ASM_NAME(#real) "," ASM_NAME(#name) "@@" #version) >--#endif >- >- #ifdef USE_VERSIONED_SYMBOLS >- #define use_symbol_version(real, name, version) \ >-@@ -50,13 +41,6 @@ >- default_symbol_version(real, name, version) >- #else >- #define use_symbol_version(real, name, version) /* nothing */ >--#ifdef __powerpc64__ >--#define use_default_symbol_version(real, name, version) \ >-- __asm__ (".weak " ASM_NAME(#name)); \ >-- __asm__ (".weak ." ASM_NAME(#name)); \ >-- __asm__ (".set " ASM_NAME(#name) "," ASM_NAME(#real)); \ >-- __asm__ (".set ." ASM_NAME(#name) ",." ASM_NAME(#real)) >--#else >- #if defined(__alpha__) || defined(__mips__) >- #define use_default_symbol_version(real, name, version) \ >- __asm__ (".weak " ASM_NAME(#name)); \ >-@@ -65,7 +49,6 @@ >- #define use_default_symbol_version(real, name, version) \ >- __asm__ (".weak " ASM_NAME(#name)); \ >- __asm__ (".set " ASM_NAME(#name) "," ASM_NAME(#real)) >--#endif >- #endif >- #endif >- >diff --git c/audio/alsa-lib/files/patch-modules_mixer_simple_python.c i/audio/alsa-lib/files/patch-modules_mixer_simple_python.c >deleted file mode 100644 >index 2afa4df4a5dc..000000000000 >--- c/audio/alsa-lib/files/patch-modules_mixer_simple_python.c >+++ /dev/null >@@ -1,565 +0,0 @@ >-https://git.alsa-project.org/?p=alsa-lib.git;a=commitdiff;h=345843fc24b3 >- >---- modules/mixer/simple/python.c.orig 2016-08-02 17:48:38 UTC >-+++ modules/mixer/simple/python.c >-@@ -25,6 +25,10 @@ >- #include "asoundlib.h" >- #include "mixer_abst.h" >- >-+#if (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 2)) >-+#pragma GCC diagnostic ignored "-Wstrict-aliasing" >-+#endif >-+ >- struct python_priv { >- int py_initialized; >- PyObject *py_event_func; >-@@ -56,20 +60,49 @@ struct pymixer { >- >- static PyInterpreterState *main_interpreter; >- >-+#if PY_MAJOR_VERSION >= 3 >-+ #define PyInt_FromLong PyLong_FromLong >-+#endif >-+ >-+static inline int get_long(PyObject *o, long *val) >-+{ >-+#if PY_MAJOR_VERSION < 3 >-+ if (PyInt_Check(o)) { >-+ *val = PyInt_AsLong(o); >-+ return 0; >-+ } >-+#endif >-+ if (PyLong_Check(o)) { >-+ *val = PyLong_AsLong(o); >-+ return 0; >-+ } >-+ return 1; >-+} >-+ >-+static inline PyObject *InternFromString(const char *name) >-+{ >-+#if PY_MAJOR_VERSION < 3 >-+ return PyString_InternFromString(name); >-+#else >-+ return PyUnicode_InternFromString(name); >-+#endif >-+} >-+ >- static void *get_C_ptr(PyObject *obj, const char *attr) >- { >- PyObject *o; >-+ long val; >- >-- o = PyObject_GetAttr(obj, PyString_InternFromString(attr)); >-+ o = PyObject_GetAttr(obj, InternFromString(attr)); >- if (!o) { >- PyErr_Format(PyExc_TypeError, "missing '%s' attribute", attr); >- return NULL; >- } >-- if (!PyInt_Check(o)) { >-- PyErr_Format(PyExc_TypeError, "'%s' attribute is not integer", attr); >-+ if (get_long(o, &val)) { >-+ PyErr_Format(PyExc_TypeError, "'%s' attribute is not Int or Long", attr); >- return NULL; >- } >-- return (void *)PyInt_AsLong(o); >-+ return (void *)val; >- } >- >- static struct pymelem *melem_to_pymelem(snd_mixer_elem_t *elem) >-@@ -80,11 +113,11 @@ static struct pymelem *melem_to_pymelem(snd_mixer_elem >- static int pcall(struct pymelem *pymelem, const char *attr, PyObject *args, PyObject **_res) >- { >- PyObject *obj = (PyObject *)pymelem, *res; >-- int xres = 0; >-+ long xres = 0; >- >- if (_res) >- *_res = NULL; >-- obj = PyObject_GetAttr(obj, PyString_InternFromString(attr)); >-+ obj = PyObject_GetAttr(obj, InternFromString(attr)); >- if (!obj) { >- PyErr_Format(PyExc_TypeError, "missing '%s' attribute", attr); >- PyErr_Print(); >-@@ -103,8 +136,12 @@ static int pcall(struct pymelem *pymelem, const char * >- *_res = res; >- res = PyTuple_GetItem(res, 0); >- } >-- if (PyInt_Check(res)) { >-+ if (PyLong_Check(res)) { >-+ xres = PyLong_AsLong(res); >-+#if PY_MAJOR_VERSION < 3 >-+ } else if (PyInt_Check(res)) { >- xres = PyInt_AsLong(res); >-+#endif >- } else if (res == Py_None) { >- xres = 0; >- } else if (PyBool_Check(res)) { >-@@ -155,7 +192,7 @@ static int is_ops(snd_mixer_elem_t *elem, int dir, int >- static int get_x_range_ops(snd_mixer_elem_t *elem, int dir, >- long *min, long *max, const char *attr) >- { >-- PyObject *obj1, *res; >-+ PyObject *obj1, *t1, *t2, *res; >- struct pymelem *pymelem = melem_to_pymelem(elem); >- int err; >- >-@@ -163,21 +200,23 @@ static int get_x_range_ops(snd_mixer_elem_t *elem, int >- PyTuple_SET_ITEM(obj1, 0, PyInt_FromLong(dir)); >- err = pcall(pymelem, attr, obj1, &res); >- if (err >= 0) { >-- err = !PyInt_Check(PyTuple_GetItem(res, 1)) || !PyInt_Check(PyTuple_GetItem(res, 2)); >-- if (err) { >-- err = !PyLong_Check(PyTuple_GetItem(res, 1)) || !PyLong_Check(PyTuple_GetItem(res, 2)); >-- if (err) { >-- PyErr_Format(PyExc_TypeError, "wrong result (invalid tuple)"); >-- PyErr_Print(); >-- PyErr_Clear(); >-- err = -EIO; >-- } else { >-- *min = PyLong_AsLong(PyTuple_GetItem(res, 1)); >-- *max = PyLong_AsLong(PyTuple_GetItem(res, 2)); >-- } >-- } else { >-+ t1 = PyTuple_GetItem(res, 1); >-+ t2 = PyTuple_GetItem(res, 2); >-+ if (PyLong_Check(t1) && PyLong_Check(t2)) { >-+ *min = PyLong_AsLong(PyTuple_GetItem(res, 1)); >-+ *max = PyLong_AsLong(PyTuple_GetItem(res, 2)); >-+ err = 0; >-+#if PY_MAJOR_VERSION < 3 >-+ } else if (PyInt_Check(t1) && PyInt_Check(t2)) { >- *min = PyInt_AsLong(PyTuple_GetItem(res, 1)); >- *max = PyInt_AsLong(PyTuple_GetItem(res, 2)); >-+ err = 0; >-+#endif >-+ } else { >-+ PyErr_Format(PyExc_TypeError, "wrong result (invalid tuple)"); >-+ PyErr_Print(); >-+ PyErr_Clear(); >-+ err = -EIO; >- } >- } >- Py_XDECREF(res); >-@@ -207,7 +246,7 @@ static int get_x_ops(snd_mixer_elem_t *elem, int dir, >- long channel, long *value, >- const char *attr) >- { >-- PyObject *obj1, *res; >-+ PyObject *obj1, *t1, *res; >- struct pymelem *pymelem = melem_to_pymelem(elem); >- int err; >- >-@@ -216,19 +255,20 @@ static int get_x_ops(snd_mixer_elem_t *elem, int dir, >- PyTuple_SET_ITEM(obj1, 1, PyInt_FromLong(channel)); >- err = pcall(pymelem, attr, obj1, &res); >- if (err >= 0) { >-- err = !PyInt_Check(PyTuple_GetItem(res, 1)); >-- if (err) { >-- err = !PyLong_Check(PyTuple_GetItem(res, 1)); >-- if (err) { >-- PyErr_Format(PyExc_TypeError, "wrong result (invalid tuple)"); >-- PyErr_Print(); >-- PyErr_Clear(); >-- err = -EIO; >-- } else { >-- *value = PyLong_AsLong(PyTuple_GetItem(res, 1)); >-- } >-+ t1 = PyTuple_GetItem(res, 1); >-+ if (PyLong_Check(t1)) { >-+ *value = PyLong_AsLong(t1); >-+ err = 0; >-+#if PY_MAJOR_VERSION < 3 >-+ } else if (PyInt_Check(t1)) { >-+ *value = PyInt_AsLong(t1); >-+ err = 0; >-+#endif >- } else { >-- *value = PyInt_AsLong(PyTuple_GetItem(res, 1)); >-+ PyErr_Format(PyExc_TypeError, "wrong result (invalid tuple)"); >-+ PyErr_Print(); >-+ PyErr_Clear(); >-+ err = -EIO; >- } >- } >- Py_XDECREF(res); >-@@ -265,7 +305,7 @@ static int ask_dB_vol_ops(snd_mixer_elem_t *elem, >- long *dbValue, >- int xdir) >- { >-- PyObject *obj1, *res; >-+ PyObject *obj1, *t1, *res; >- struct pymelem *pymelem = melem_to_pymelem(elem); >- int err; >- >-@@ -275,19 +315,20 @@ static int ask_dB_vol_ops(snd_mixer_elem_t *elem, >- PyTuple_SET_ITEM(obj1, 2, PyInt_FromLong(xdir)); >- err = pcall(pymelem, "opsGetDBVol", obj1, &res); >- if (err >= 0) { >-- err = !PyInt_Check(PyTuple_GetItem(res, 1)); >-- if (err) { >-- err = !PyLong_Check(PyTuple_GetItem(res, 1)); >-- if (err) { >-- PyErr_Format(PyExc_TypeError, "wrong result (invalid tuple)"); >-- PyErr_Print(); >-- PyErr_Clear(); >-- err = -EIO; >-- } else { >-- *dbValue = PyLong_AsLong(PyTuple_GetItem(res, 1)); >-- } >-+ t1 = PyTuple_GetItem(res, 1); >-+ if (PyLong_Check(t1)) { >-+ *dbValue = PyLong_AsLong(t1); >-+ err = 0; >-+#if PY_MAJOR_VERSION < 3 >-+ } else if (PyInt_Check(t1)) { >-+ *dbValue = PyInt_AsLong(t1); >-+ err = 0; >-+#endif >- } else { >-- *dbValue = PyInt_AsLong(PyTuple_GetItem(res, 1)); >-+ PyErr_Format(PyExc_TypeError, "wrong result (invalid tuple)"); >-+ PyErr_Print(); >-+ PyErr_Clear(); >-+ err = -EIO; >- } >- } >- Py_XDECREF(res); >-@@ -353,7 +394,7 @@ static int enum_item_name_ops(snd_mixer_elem_t *elem, >- unsigned int item, >- size_t maxlen, char *buf) >- { >-- PyObject *obj1, *res; >-+ PyObject *obj1, *obj2, *t1, *res; >- struct pymelem *pymelem = melem_to_pymelem(elem); >- int err; >- unsigned int len; >-@@ -363,19 +404,35 @@ static int enum_item_name_ops(snd_mixer_elem_t *elem, >- PyTuple_SET_ITEM(obj1, 0, PyInt_FromLong(item)); >- err = pcall(pymelem, "opsGetEnumItemName", obj1, &res); >- if (err >= 0) { >-- err = !PyString_Check(PyTuple_GetItem(res, 1)); >-- if (err) { >-- PyErr_Format(PyExc_TypeError, "wrong result (invalid tuple)"); >-- PyErr_Print(); >-- PyErr_Clear(); >-- err = -EIO; >-- } else { >-- s = PyString_AsString(PyTuple_GetItem(res, 1)); >-+ t1 = PyTuple_GetItem(res, 1); >-+ if (PyUnicode_Check(t1)) { >-+ obj2 = PyUnicode_AsEncodedString(t1, "utf-8", "strict"); >-+ if (obj2) { >-+ s = PyBytes_AsString(obj2); >-+ len = strlen(s); >-+ if (maxlen - 1 > len) >-+ len = maxlen - 1; >-+ memcpy(buf, s, len); >-+ buf[len] = '\0'; >-+ Py_DECREF(obj2); >-+ } else { >-+ goto errlbl; >-+ } >-+#if PY_MAJOR_VERSION < 3 >-+ } else if (PyString_Check(t1)) { >-+ s = PyString_AsString(t1); >- len = strlen(s); >- if (maxlen - 1 > len) >- len = maxlen - 1; >- memcpy(buf, s, len); >- buf[len] = '\0'; >-+#endif >-+ } else { >-+errlbl: >-+ PyErr_Format(PyExc_TypeError, "wrong result (invalid tuple)"); >-+ PyErr_Print(); >-+ PyErr_Clear(); >-+ err = -EIO; >- } >- } >- Py_XDECREF(res); >-@@ -386,7 +443,7 @@ static int get_enum_item_ops(snd_mixer_elem_t *elem, >- snd_mixer_selem_channel_id_t channel, >- unsigned int *itemp) >- { >-- PyObject *obj1, *res; >-+ PyObject *obj1, *t1, *res; >- struct pymelem *pymelem = melem_to_pymelem(elem); >- int err; >- >-@@ -394,14 +451,20 @@ static int get_enum_item_ops(snd_mixer_elem_t *elem, >- PyTuple_SET_ITEM(obj1, 0, PyInt_FromLong(channel)); >- err = pcall(pymelem, "opsGetEnumItem", obj1, &res); >- if (err >= 0) { >-- err = !PyInt_Check(PyTuple_GetItem(res, 1)); >-- if (err) { >-+ t1 = PyTuple_GetItem(res, 1); >-+ if (PyLong_Check(t1)) { >-+ *itemp = PyLong_AsLong(t1); >-+ err = 0; >-+#if PY_MAJOR_VERSION < 3 >-+ } else if (PyInt_Check(t1)) { >-+ *itemp = PyInt_AsLong(t1); >-+ err = 0; >-+#endif >-+ } else { >- PyErr_Format(PyExc_TypeError, "wrong result (invalid tuple)"); >- PyErr_Print(); >- PyErr_Clear(); >- err = -EIO; >-- } else { >-- *itemp = PyInt_AsLong(PyTuple_GetItem(res, 1)); >- } >- } >- Py_XDECREF(res); >-@@ -464,7 +527,7 @@ pymelem_get_caps(struct pymelem *pymelem, void *priv A >- static PyObject * >- pymelem_get_name(struct pymelem *pymelem, void *priv ATTRIBUTE_UNUSED) >- { >-- return PyString_FromString(snd_mixer_selem_id_get_name(pymelem->selem.id)); >-+ return PyUnicode_FromString(snd_mixer_selem_id_get_name(pymelem->selem.id)); >- } >- >- static PyObject * >-@@ -476,12 +539,18 @@ pymelem_get_index(struct pymelem *pymelem, void *priv >- static int >- pymelem_set_caps(struct pymelem *pymelem, PyObject *val, void *priv ATTRIBUTE_UNUSED) >- { >-- if (!PyInt_Check(val)) { >-- PyErr_SetString(PyExc_TypeError, "The last attribute value must be an integer"); >-- return -1; >-+ if (PyLong_Check(val)) { >-+ pymelem->selem.caps = PyLong_AsLong(val); >-+ return 0; >- } >-- pymelem->selem.caps = PyInt_AsLong(val); >-- return 0; >-+#if PY_MAJOR_VERSION < 3 >-+ if (PyInt_Check(val)) { >-+ pymelem->selem.caps = PyInt_AsLong(val); >-+ return 0; >-+ } >-+#endif >-+ PyErr_SetString(PyExc_TypeError, "The last attribute value must be an integer"); >-+ return -1; >- } >- >- static PyObject * >-@@ -588,7 +657,6 @@ static void >- pymelem_dealloc(struct pymelem *self) >- { >- selem_free(self->melem); >-- self->ob_type->tp_free(self); >- } >- >- static PyGetSetDef pymelem_getseters[] = { >-@@ -634,7 +702,7 @@ static PyMethodDef pymelem_methods[] = { >- }; >- >- static PyTypeObject pymelem_type = { >-- PyObject_HEAD_INIT(0) >-+ PyVarObject_HEAD_INIT(NULL, 0) >- tp_name: "smixer_python.InternalMElement", >- tp_basicsize: sizeof(struct pymelem), >- tp_dealloc: (destructor)pymelem_dealloc, >-@@ -708,7 +776,7 @@ pymixer_melement_new(struct pymixer *pymixer, PyObject >- obj1 = PyTuple_New(4); >- if (PyTuple_SET_ITEM(obj1, 0, (PyObject *)pymixer)) >- Py_INCREF((PyObject *)pymixer); >-- PyTuple_SET_ITEM(obj1, 1, PyString_FromString(name)); >-+ PyTuple_SET_ITEM(obj1, 1, PyUnicode_FromString(name)); >- PyTuple_SET_ITEM(obj1, 2, PyInt_FromLong(index)); >- PyTuple_SET_ITEM(obj1, 3, PyInt_FromLong(weight)); >- obj2 = PyObject_CallObject(obj, obj1); >-@@ -800,7 +868,6 @@ static void >- pymixer_dealloc(struct pymixer *self) >- { >- pymixer_free(self); >-- self->ob_type->tp_free(self); >- } >- >- static PyGetSetDef pymixer_getseters[] = { >-@@ -816,7 +883,7 @@ static PyMethodDef pymixer_methods[] = { >- }; >- >- static PyTypeObject pymixer_type = { >-- PyObject_HEAD_INIT(0) >-+ PyVarObject_HEAD_INIT(NULL, 0) >- tp_name: "smixer_python.InternalMixer", >- tp_basicsize: sizeof(struct pymixer), >- tp_dealloc: (destructor)pymixer_dealloc, >-@@ -910,12 +977,12 @@ int alsa_mixer_simple_event(snd_mixer_class_t *class, >- snd_hctl_elem_t *helem, snd_mixer_elem_t *melem) >- { >- struct python_priv *priv = snd_mixer_sbasic_get_private(class); >-- PyThreadState *tstate, *origstate; >-+ PyThreadState *tstate; >- PyObject *t, *o, *r; >- int res = -ENOMEM; >- >- tstate = PyThreadState_New(main_interpreter); >-- origstate = PyThreadState_Swap(tstate); >-+ PyThreadState_Swap(tstate); >- >- t = PyTuple_New(3); >- if (t) { >-@@ -935,8 +1002,12 @@ int alsa_mixer_simple_event(snd_mixer_class_t *class, >- r = PyObject_CallObject(priv->py_event_func, t); >- Py_DECREF(t); >- if (r) { >-- if (PyInt_Check(r)) { >-+ if (PyLong_Check(r)) { >-+ res = PyLong_AsLong(r); >-+#if PY_MAJOR_VERSION < 3 >-+ } else if (PyInt_Check(r)) { >- res = PyInt_AsLong(r); >-+#endif >- } else if (r == Py_None) { >- res = 0; >- } >-@@ -966,6 +1037,71 @@ static void alsa_mixer_simple_free(snd_mixer_class_t * >- free(priv); >- } >- >-+static int alsa_mixer_simple_pyinit(struct python_priv *priv, >-+ PyObject *py_mod, >-+ FILE *fp, >-+ const char *file, >-+ snd_mixer_class_t *class, >-+ snd_mixer_t *mixer, >-+ const char *device) >-+{ >-+ PyObject *obj, *obj1, *obj2, *mdict; >-+ >-+ mdict = priv->py_mdict = PyModule_GetDict(py_mod); >-+ obj = PyUnicode_FromString(file); >-+ if (obj) >-+ PyDict_SetItemString(mdict, "__file__", obj); >-+ Py_XDECREF(obj); >-+ obj = PyUnicode_FromString(device); >-+ if (obj) >-+ PyDict_SetItemString(mdict, "device", obj); >-+ Py_XDECREF(obj); >-+ Py_INCREF(&pymelem_type); >-+ Py_INCREF(&pymixer_type); >-+ PyModule_AddObject(py_mod, "InternalMElement", (PyObject *)&pymelem_type); >-+ PyModule_AddObject(py_mod, "InternalMixer", (PyObject *)&pymixer_type); >-+ obj = PyDict_GetItemString(mdict, "InternalMixer"); >-+ if (obj) { >-+ obj1 = PyTuple_New(3); >-+ PyTuple_SET_ITEM(obj1, 0, PyInt_FromLong((long)class)); >-+ PyTuple_SET_ITEM(obj1, 1, PyInt_FromLong((long)mixer)); >-+ if (PyTuple_SET_ITEM(obj1, 2, mdict)) >-+ Py_INCREF(mdict); >-+ obj2 = PyObject_CallObject(obj, obj1); >-+ Py_XDECREF(obj1); >-+ PyDict_SetItemString(mdict, "mixer", obj2); >-+ priv->py_mixer = obj2; >-+ } else { >-+ SNDERR("Unable to create InternalMixer object"); >-+ return -EIO; >-+ } >-+ >-+ obj = PyRun_FileEx(fp, file, Py_file_input, mdict, mdict, 1); >-+ if (obj == NULL) >-+ PyErr_Print(); >-+ Py_XDECREF(obj); >-+ priv->py_event_func = PyDict_GetItemString(mdict, "event"); >-+ if (priv->py_event_func == NULL) { >-+ SNDERR("Unable to find python function 'event'"); >-+ return -EIO; >-+ } >-+ return 0; >-+} >-+ >-+#if PY_MAJOR_VERSION >= 3 >-+static struct PyModuleDef smixer_python_module = { >-+ PyModuleDef_HEAD_INIT, >-+ "smixer_python", >-+ NULL, >-+ 0, >-+ python_methods, >-+ NULL, >-+ NULL, >-+ NULL, >-+ NULL >-+}; >-+#endif >-+ >- int alsa_mixer_simple_finit(snd_mixer_class_t *class, >- snd_mixer_t *mixer, >- const char *device) >-@@ -973,7 +1109,7 @@ int alsa_mixer_simple_finit(snd_mixer_class_t *class, >- struct python_priv *priv; >- FILE *fp; >- const char *file; >-- PyObject *obj, *obj1, *obj2, *py_mod, *mdict; >-+ PyObject *obj, *py_mod; >- >- priv = calloc(1, sizeof(*priv)); >- if (priv == NULL) >-@@ -993,54 +1129,21 @@ int alsa_mixer_simple_finit(snd_mixer_class_t *class, >- } >- >- Py_Initialize(); >-- if (PyType_Ready(&pymelem_type) < 0) >-+ if (PyType_Ready(&pymelem_type) < 0 || >-+ PyType_Ready(&pymixer_type) < 0) { >-+ fclose(fp); >- return -EIO; >-- if (PyType_Ready(&pymixer_type) < 0) >-- return -EIO; >-+ } >-+#if PY_MAJOR_VERSION < 3 >- Py_InitModule("smixer_python", python_methods); >-+#else >-+ PyModule_Create(&smixer_python_module); >-+#endif >- priv->py_initialized = 1; >- main_interpreter = PyThreadState_Get()->interp; >- obj = PyImport_GetModuleDict(); >- py_mod = PyDict_GetItemString(obj, "__main__"); >-- if (py_mod) { >-- mdict = priv->py_mdict = PyModule_GetDict(py_mod); >-- obj = PyString_FromString(file); >-- if (obj) >-- PyDict_SetItemString(mdict, "__file__", obj); >-- Py_XDECREF(obj); >-- obj = PyString_FromString(device); >-- if (obj) >-- PyDict_SetItemString(mdict, "device", obj); >-- Py_XDECREF(obj); >-- Py_INCREF(&pymixer_type); >-- PyModule_AddObject(py_mod, "InternalMElement", (PyObject *)&pymelem_type); >-- PyModule_AddObject(py_mod, "InternalMixer", (PyObject *)&pymixer_type); >-- obj = PyDict_GetItemString(mdict, "InternalMixer"); >-- if (obj) { >-- obj1 = PyTuple_New(3); >-- PyTuple_SET_ITEM(obj1, 0, PyInt_FromLong((long)class)); >-- PyTuple_SET_ITEM(obj1, 1, PyInt_FromLong((long)mixer)); >-- if (PyTuple_SET_ITEM(obj1, 2, mdict)) >-- Py_INCREF(mdict); >-- obj2 = PyObject_CallObject(obj, obj1); >-- Py_XDECREF(obj1); >-- PyDict_SetItemString(mdict, "mixer", obj2); >-- priv->py_mixer = obj2; >-- } else { >-- SNDERR("Unable to create InternalMixer object"); >-- return -EIO; >-- } >-- >-- >-- obj = PyRun_FileEx(fp, file, Py_file_input, mdict, mdict, 1); >-- if (obj == NULL) >-- PyErr_Print(); >-- Py_XDECREF(obj); >-- priv->py_event_func = PyDict_GetItemString(mdict, "event"); >-- if (priv->py_event_func == NULL) { >-- SNDERR("Unable to find python function 'event'"); >-- return -EIO; >-- } >-- } >-+ if (py_mod) >-+ alsa_mixer_simple_pyinit(priv, py_mod, fp, file, class, mixer, device); >- return 0; >- } >diff --git c/audio/alsa-lib/pkg-plist i/audio/alsa-lib/pkg-plist >index 9d1cbcdef704..5b6f5bfe2873 100644 >--- c/audio/alsa-lib/pkg-plist >+++ i/audio/alsa-lib/pkg-plist >@@ -1,190 +1,139 @@ > bin/aserver >-include/alsa/alisp.h > include/alsa/asoundef.h > include/alsa/asoundlib.h > include/alsa/conf.h > include/alsa/control.h > include/alsa/control_external.h > include/alsa/error.h > include/alsa/global.h > include/alsa/hwdep.h > include/alsa/input.h > include/alsa/mixer.h > include/alsa/mixer_abst.h > include/alsa/output.h > include/alsa/pcm.h > include/alsa/pcm_external.h > include/alsa/pcm_extplug.h > include/alsa/pcm_ioplug.h > include/alsa/pcm_old.h > include/alsa/pcm_plugin.h > include/alsa/pcm_rate.h > include/alsa/rawmidi.h > include/alsa/seq.h > include/alsa/seq_event.h > include/alsa/seq_midi_event.h > include/alsa/seqmid.h > include/alsa/sound/asoc.h > include/alsa/sound/asound_fm.h > include/alsa/sound/emu10k1.h > include/alsa/sound/hdsp.h > include/alsa/sound/hdspm.h > include/alsa/sound/sb16_csp.h > include/alsa/sound/sscape_ioctl.h > include/alsa/sound/tlv.h > include/alsa/sound/type_compat.h >+include/alsa/sound/uapi/asoc.h >+include/alsa/sound/uapi/asound_fm.h >+include/alsa/sound/uapi/emu10k1.h >+include/alsa/sound/uapi/hdsp.h >+include/alsa/sound/uapi/hdspm.h >+include/alsa/sound/uapi/sb16_csp.h >+include/alsa/sound/uapi/sscape_ioctl.h >+include/alsa/sound/uapi/tlv.h > include/alsa/timer.h > include/alsa/topology.h > include/alsa/use-case.h > include/alsa/version.h >+include/asoundlib.h > include/sys/asoundlib.h >-lib/alsa-lib/smixer/smixer-ac97.la >-lib/alsa-lib/smixer/smixer-ac97.so >-lib/alsa-lib/smixer/smixer-hda.la >-lib/alsa-lib/smixer/smixer-hda.so > %%PYTHON%%lib/alsa-lib/smixer/smixer-python.la > %%PYTHON%%lib/alsa-lib/smixer/smixer-python.so >-lib/alsa-lib/smixer/smixer-sbase.la >-lib/alsa-lib/smixer/smixer-sbase.so > lib/libasound.la > lib/libasound.so > lib/libasound.so.2 > lib/libasound.so.2.0.0 >+lib/libatopology.la >+lib/libatopology.so >+lib/libatopology.so.2 >+lib/libatopology.so.2.0.0 >+libdata/pkgconfig/alsa-topology.pc > libdata/pkgconfig/alsa.pc > share/aclocal/alsa.m4 > share/alsa/alsa.conf >-share/alsa/alsa.conf.d/README > share/alsa/cards/AACI.conf > share/alsa/cards/ATIIXP-MODEM.conf > share/alsa/cards/ATIIXP-SPDMA.conf > share/alsa/cards/ATIIXP.conf > share/alsa/cards/AU8810.conf > share/alsa/cards/AU8820.conf > share/alsa/cards/AU8830.conf > share/alsa/cards/Audigy.conf > share/alsa/cards/Audigy2.conf > share/alsa/cards/Aureon51.conf > share/alsa/cards/Aureon71.conf > share/alsa/cards/CA0106.conf > share/alsa/cards/CMI8338-SWIEC.conf > share/alsa/cards/CMI8338.conf > share/alsa/cards/CMI8738-MC6.conf > share/alsa/cards/CMI8738-MC8.conf > share/alsa/cards/CMI8788.conf > share/alsa/cards/CS46xx.conf > share/alsa/cards/EMU10K1.conf > share/alsa/cards/EMU10K1X.conf > share/alsa/cards/ENS1370.conf > share/alsa/cards/ENS1371.conf > share/alsa/cards/ES1968.conf > share/alsa/cards/Echo_Echo3G.conf > share/alsa/cards/FM801.conf > share/alsa/cards/FWSpeakers.conf > share/alsa/cards/FireWave.conf > share/alsa/cards/GUS.conf > share/alsa/cards/HDA-Intel.conf >+share/alsa/cards/HdmiLpeAudio.conf > share/alsa/cards/ICE1712.conf > share/alsa/cards/ICE1724.conf > share/alsa/cards/ICH-MODEM.conf > share/alsa/cards/ICH.conf > share/alsa/cards/ICH4.conf > share/alsa/cards/Loopback.conf > share/alsa/cards/Maestro3.conf > share/alsa/cards/NFORCE.conf > share/alsa/cards/PC-Speaker.conf > share/alsa/cards/PMac.conf > share/alsa/cards/PMacToonie.conf > share/alsa/cards/PS3.conf > share/alsa/cards/RME9636.conf > share/alsa/cards/RME9652.conf > share/alsa/cards/SB-XFi.conf > share/alsa/cards/SI7018.conf >-share/alsa/cards/SI7018/sndoc-mixer.alisp >-share/alsa/cards/SI7018/sndop-mixer.alisp > share/alsa/cards/TRID4DWAVENX.conf > share/alsa/cards/USB-Audio.conf > share/alsa/cards/VIA686A.conf > share/alsa/cards/VIA8233.conf > share/alsa/cards/VIA8233A.conf > share/alsa/cards/VIA8237.conf > share/alsa/cards/VX222.conf > share/alsa/cards/VXPocket.conf > share/alsa/cards/VXPocket440.conf > share/alsa/cards/YMF744.conf >-share/alsa/cards/aliases.alisp > share/alsa/cards/aliases.conf >+share/alsa/cards/pistachio-card.conf >+share/alsa/cards/vc4-hdmi.conf > share/alsa/pcm/center_lfe.conf > share/alsa/pcm/default.conf > share/alsa/pcm/dmix.conf > share/alsa/pcm/dpl.conf > share/alsa/pcm/dsnoop.conf > share/alsa/pcm/front.conf > share/alsa/pcm/hdmi.conf > share/alsa/pcm/iec958.conf > share/alsa/pcm/modem.conf > share/alsa/pcm/rear.conf > share/alsa/pcm/side.conf > share/alsa/pcm/surround21.conf > share/alsa/pcm/surround40.conf > share/alsa/pcm/surround41.conf > share/alsa/pcm/surround50.conf > share/alsa/pcm/surround51.conf > share/alsa/pcm/surround71.conf >-share/alsa/smixer.conf >-share/alsa/sndo-mixer.alisp >-share/alsa/topology/broadwell/broadwell.conf >-share/alsa/topology/sklrt286/codec0_in-cpr-1.bin >-share/alsa/topology/sklrt286/codec0_in-mi.bin >-share/alsa/topology/sklrt286/codec0_out-cpr-4.bin >-share/alsa/topology/sklrt286/codec0_out-mo.bin >-share/alsa/topology/sklrt286/codec1_out-cpr-5.bin >-share/alsa/topology/sklrt286/codec1_out-mo.bin >-share/alsa/topology/sklrt286/dmic01_hifi_in-cpr-3.bin >-share/alsa/topology/sklrt286/dmic01_hifi_in-mi.bin >-share/alsa/topology/sklrt286/hdmi1_pt_out-cpr-7.bin >-share/alsa/topology/sklrt286/hdmi1_pt_out-cpr-8.bin >-share/alsa/topology/sklrt286/hdmi2_pt_out-cpr-10.bin >-share/alsa/topology/sklrt286/hdmi2_pt_out-cpr-9.bin >-share/alsa/topology/sklrt286/hdmi3_pt_out-cpr-11.bin >-share/alsa/topology/sklrt286/hdmi3_pt_out-cpr-12.bin >-share/alsa/topology/sklrt286/media0_in-cpr-0.bin >-share/alsa/topology/sklrt286/media0_in-mi.bin >-share/alsa/topology/sklrt286/media0_out-cpr-6.bin >-share/alsa/topology/sklrt286/media0_out-mo.bin >-share/alsa/topology/sklrt286/skl_i2s.conf >-share/alsa/ucm/DAISY-I2S/DAISY-I2S.conf >-share/alsa/ucm/DAISY-I2S/HiFi.conf >-share/alsa/ucm/GoogleNyan/GoogleNyan.conf >-share/alsa/ucm/GoogleNyan/HiFi.conf >-share/alsa/ucm/PAZ00/HiFi.conf >-share/alsa/ucm/PAZ00/PAZ00.conf >-share/alsa/ucm/PAZ00/Record.conf >-share/alsa/ucm/PandaBoard/FMAnalog >-share/alsa/ucm/PandaBoard/PandaBoard.conf >-share/alsa/ucm/PandaBoard/hifi >-share/alsa/ucm/PandaBoard/hifiLP >-share/alsa/ucm/PandaBoard/record >-share/alsa/ucm/PandaBoard/voice >-share/alsa/ucm/PandaBoard/voiceCall >-share/alsa/ucm/PandaBoardES/FMAnalog >-share/alsa/ucm/PandaBoardES/PandaBoardES.conf >-share/alsa/ucm/PandaBoardES/hifi >-share/alsa/ucm/PandaBoardES/hifiLP >-share/alsa/ucm/PandaBoardES/record >-share/alsa/ucm/PandaBoardES/voice >-share/alsa/ucm/PandaBoardES/voiceCall >-share/alsa/ucm/SDP4430/FMAnalog >-share/alsa/ucm/SDP4430/SDP4430.conf >-share/alsa/ucm/SDP4430/hifi >-share/alsa/ucm/SDP4430/hifiLP >-share/alsa/ucm/SDP4430/record >-share/alsa/ucm/SDP4430/voice >-share/alsa/ucm/SDP4430/voiceCall >-share/alsa/ucm/VEYRON-I2S/HiFi.conf >-share/alsa/ucm/VEYRON-I2S/VEYRON-I2S.conf >-share/alsa/ucm/broadwell-rt286/HiFi >-share/alsa/ucm/broadwell-rt286/broadwell-rt286.conf >-share/alsa/ucm/chtrt5645/HiFi.conf >-share/alsa/ucm/chtrt5645/chtrt5645.conf >-share/alsa/ucm/tegraalc5632/tegraalc5632.conf > @sample etc/asound.conf.sample >diff --git c/audio/alsa-plugins/Makefile i/audio/alsa-plugins/Makefile >index 027f10093f18..725139910439 100644 >--- c/audio/alsa-plugins/Makefile >+++ i/audio/alsa-plugins/Makefile >@@ -1,63 +1,63 @@ > # Created by: Aragon Gouveia <aragon@phat.za.net> > # $FreeBSD$ > > PORTNAME= alsa-plugins >-PORTVERSION= 1.1.1 >-PORTREVISION= 6 >+PORTVERSION= 1.2.2 > CATEGORIES= audio > MASTER_SITES= ftp://ftp.alsa-project.org/pub/plugins/ \ > GENTOO > >-MAINTAINER= ports@FreeBSD.org >+MAINTAINER= greg@unrelenting.technology > COMMENT= ALSA compatibility library plugins > > LICENSE= LGPL21+ > > LIB_DEPENDS= libasound.so:audio/alsa-lib > > USES= alias libtool:keepla localbase pkgconfig tar:bzip2 > GNU_CONFIGURE= yes >+MAKE_ARGS+= RM="${RM}" > EXTRA_PATCHES+= ${FILESDIR}/alsa-plugins.patch > INSTALL_TARGET= install-strip > CPPFLAGS+= -I${.CURDIR}/../alsa-lib/files > >-OPTIONS_DEFAULT=BUFSZ_P2 IO_PTR >+OPTIONS_DEFAULT=PULSEAUDIO BUFSZ_P2 IO_PTR > OPTIONS_DEFINE= JACK FFMPEG PULSEAUDIO SAMPLERATE SPEEX > OPTIONS_SUB= yes > > OPTIONS_GROUP= OSS > OPTIONS_GROUP_OSS=IO_PTR BLKCNT_P2 BUFSZ_P2 VERBOSE > > IO_PTR_DESC= Precise playback/recording pointer > BLKCNT_P2_DESC= Restrict number of fragments to ^2 aligned > BUFSZ_P2_DESC= Restrict buffer size to ^2 aligned > VERBOSE_DESC= Print debugging messages > > IO_PTR_CFLAGS= -DFREEBSD_OSS_USE_IO_PTR > BLKCNT_P2_CFLAGS=-DFREEBSD_OSS_BLKCNT_P2 > BUFSZ_P2_CFLAGS=-DFREEBSD_OSS_BUFSZ_P2 > VERBOSE_CFLAGS= -DFREEBSD_OSS_DEBUG_VERBOSE > > JACK_LIB_DEPENDS= libjack.so:audio/jack > JACK_CONFIGURE_ENABLE= jack > JACK_IMPLIES= SAMPLERATE > > FFMPEG_LIB_DEPENDS= libavcodec.so:multimedia/ffmpeg > FFMPEG_CONFIGURE_ENABLE=avcodec > > PULSEAUDIO_LIB_DEPENDS= libpulse.so:audio/pulseaudio > PULSEAUDIO_CONFIGURE_ENABLE=pulseaudio > > SAMPLERATE_LIB_DEPENDS= libsamplerate.so:audio/libsamplerate > SAMPLERATE_CONFIGURE_ENABLE=samplerate > > SPEEX_LIB_DEPENDS= libspeex.so:audio/speex > SPEEX_CONFIGURE_ON= --with-speex=lib > SPEEX_CONFIGURE_OFF= --without-speex > > post-patch: .SILENT > ${REINPLACE_CMD} -e '/LIBS/s/-ldl//g' \ > -e '/lt_cv_dlopen/s/-ldl//g' \ > ${WRKSRC}/configure > > .include <bsd.port.mk> >diff --git c/audio/alsa-plugins/distinfo i/audio/alsa-plugins/distinfo >index 6548bf004a76..ca008eccbaaf 100644 >--- c/audio/alsa-plugins/distinfo >+++ i/audio/alsa-plugins/distinfo >@@ -1,2 +1,3 @@ >-SHA256 (alsa-plugins-1.1.1.tar.bz2) = 8ea4d1e082c36528a896a2581e5eb62d4dc2683238e353050d0d624e65f901f1 >-SIZE (alsa-plugins-1.1.1.tar.bz2) = 366193 >+TIMESTAMP = 1585923260 >+SHA256 (alsa-plugins-1.2.2.tar.bz2) = 1c0f06450c928d711719686c9dbece2d480184f36fab11b8f0534cb7b41e337d >+SIZE (alsa-plugins-1.2.2.tar.bz2) = 406494 >diff --git c/audio/alsa-plugins/pkg-plist i/audio/alsa-plugins/pkg-plist >index a7a8b1d3dbdb..4847ffc641be 100644 >--- c/audio/alsa-plugins/pkg-plist >+++ i/audio/alsa-plugins/pkg-plist >@@ -1,42 +1,53 @@ >+@comment etc/alsa/conf.d/50-arcam-av-ctl.conf >+@comment etc/alsa/conf.d/50-oss.conf >+@comment etc/alsa/conf.d/50-pulseaudio.conf >+@comment etc/alsa/conf.d/60-upmix.conf >+@comment etc/alsa/conf.d/60-vdownmix.conf >+@comment etc/alsa/conf.d/98-usb-stream.conf >+@comment etc/alsa/conf.d/99-pulseaudio-default.conf.example > %%PULSEAUDIO%%lib/alsa-lib/libasound_module_conf_pulse.la > %%PULSEAUDIO%%lib/alsa-lib/libasound_module_conf_pulse.so > lib/alsa-lib/libasound_module_ctl_arcam_av.la > lib/alsa-lib/libasound_module_ctl_arcam_av.so > lib/alsa-lib/libasound_module_ctl_oss.la > lib/alsa-lib/libasound_module_ctl_oss.so > %%PULSEAUDIO%%lib/alsa-lib/libasound_module_ctl_pulse.la > %%PULSEAUDIO%%lib/alsa-lib/libasound_module_ctl_pulse.so > %%FFMPEG%%lib/alsa-lib/libasound_module_pcm_a52.la > %%FFMPEG%%lib/alsa-lib/libasound_module_pcm_a52.so > %%JACK%%lib/alsa-lib/libasound_module_pcm_jack.la > %%JACK%%lib/alsa-lib/libasound_module_pcm_jack.so > lib/alsa-lib/libasound_module_pcm_oss.la > lib/alsa-lib/libasound_module_pcm_oss.so > %%PULSEAUDIO%%lib/alsa-lib/libasound_module_pcm_pulse.la > %%PULSEAUDIO%%lib/alsa-lib/libasound_module_pcm_pulse.so > %%SPEEX%%lib/alsa-lib/libasound_module_pcm_speex.la > %%SPEEX%%lib/alsa-lib/libasound_module_pcm_speex.so > lib/alsa-lib/libasound_module_pcm_upmix.la > lib/alsa-lib/libasound_module_pcm_upmix.so > lib/alsa-lib/libasound_module_pcm_usb_stream.la > lib/alsa-lib/libasound_module_pcm_usb_stream.so > lib/alsa-lib/libasound_module_pcm_vdownmix.la > lib/alsa-lib/libasound_module_pcm_vdownmix.so > %%FFMPEG%%lib/alsa-lib/libasound_module_rate_lavcrate.la > %%FFMPEG%%lib/alsa-lib/libasound_module_rate_lavcrate.so > %%FFMPEG%%lib/alsa-lib/libasound_module_rate_lavcrate_fast.so > %%FFMPEG%%lib/alsa-lib/libasound_module_rate_lavcrate_faster.so > %%FFMPEG%%lib/alsa-lib/libasound_module_rate_lavcrate_high.so > %%FFMPEG%%lib/alsa-lib/libasound_module_rate_lavcrate_higher.so > %%SAMPLERATE%%lib/alsa-lib/libasound_module_rate_samplerate.la > %%SAMPLERATE%%lib/alsa-lib/libasound_module_rate_samplerate.so > %%SAMPLERATE%%lib/alsa-lib/libasound_module_rate_samplerate_best.so > %%SAMPLERATE%%lib/alsa-lib/libasound_module_rate_samplerate_linear.so > %%SAMPLERATE%%lib/alsa-lib/libasound_module_rate_samplerate_medium.so > %%SAMPLERATE%%lib/alsa-lib/libasound_module_rate_samplerate_order.so > %%SPEEX%%lib/alsa-lib/libasound_module_rate_speexrate.la > %%SPEEX%%lib/alsa-lib/libasound_module_rate_speexrate.so > %%SPEEX%%lib/alsa-lib/libasound_module_rate_speexrate_best.so > %%SPEEX%%lib/alsa-lib/libasound_module_rate_speexrate_medium.so >+@comment share/alsa/alsa.conf.d/50-arcam-av-ctl.conf >+@comment share/alsa/alsa.conf.d/50-oss.conf > %%PULSEAUDIO%%share/alsa/alsa.conf.d/50-pulseaudio.conf >-%%PULSEAUDIO%%share/alsa/alsa.conf.d/99-pulseaudio-default.conf.example >+@comment share/alsa/alsa.conf.d/60-upmix.conf >+@comment share/alsa/alsa.conf.d/60-vdownmix.conf >+@comment share/alsa/alsa.conf.d/98-usb-stream.conf >diff --git c/audio/alsa-utils/Makefile i/audio/alsa-utils/Makefile >index 25d30b6ea2dd..ea1e6a30f3a7 100644 >--- c/audio/alsa-utils/Makefile >+++ i/audio/alsa-utils/Makefile >@@ -1,58 +1,62 @@ > # Created by: Aragon Gouveia <aragon@phat.za.net> > # $FreeBSD$ > > PORTNAME= alsa-utils >-PORTVERSION= 1.1.2 >-PORTREVISION= 1 >+PORTVERSION= 1.2.2 > CATEGORIES= audio > MASTER_SITES= ftp://ftp.alsa-project.org/pub/utils/ \ > GENTOO > >-MAINTAINER= ports@FreeBSD.org >+MAINTAINER= greg@unrelenting.technology > COMMENT= ALSA compatibility utils > > LICENSE= GPLv2+ > > LIB_DEPENDS= libasound.so:audio/alsa-lib \ >- libfftw3f.so:math/fftw3-float >+ libfftw3f.so:math/fftw3-float \ >+ libinotify.so:devel/libinotify \ >+ libepoll-shim.so:devel/libepoll-shim > RUN_DEPENDS= ${LOCALBASE}/lib/alsa-lib/libasound_module_pcm_oss.so:audio/alsa-plugins > > USES= gmake localbase ncurses shebangfix tar:bzip2 > GNU_CONFIGURE= yes > CONFIGURE_ARGS= --with-udev-rules-dir="\$${prefix}/lib/udev" > SHEBANG_FILES= alsa-info/alsa-info.sh alsaconf/alsaconf.in bat/alsabat-test.sh > INSTALL_TARGET= install-strip > CPPFLAGS+= -I${.CURDIR}/../alsa-lib/files >+CFLAGS+= -I${LOCALBASE}/include/libepoll-shim -DSCHED_IDLE=SCHED_OTHER -Dlseek64=lseek >+LDFLAGS+= -linotify -lepoll-shim > > OPTIONS_SUB= yes > OPTIONS_DEFINE= BAT MANPAGES NLS SAMPLERATE > OPTIONS_DEFAULT=BAT MANPAGES > > BAT_DESC= Basic Audio Tester support >-BAT_LIB_DEPENDS=libfftw3.so:math/fftw3 >+BAT_LIB_DEPENDS=libfftw3.so:math/fftw3 \ >+ libfftw3f.so:math/fftw3-float > BAT_CONFIGURE_ENABLE=bat > > MANPAGES_BUILD_DEPENDS= minixmlto:textproc/minixmlto > MANPAGES_CONFIGURE_ENV= ac_cv_prog_xmlto=minixmlto > MANPAGES_CONFIGURE_ENABLE=xmlto > > NLS_USES= gettext > NLS_CONFIGURE_ENABLE=nls > NLS_LIBS= -lintl > > SAMPLERATE_LIB_DEPENDS= libsamplerate.so:audio/libsamplerate > SAMPLERATE_CONFIGURE_ENV_OFF=ac_cv_header_samplerate_h=no > > post-patch: .SILENT > ${REINPLACE_CMD} -e '/LIBS/s/-ldl//g; /LIBRT/s/-lrt//g;' \ > -e '/x"$$xmlto"/s/= xyes/!= xno/' \ > ${WRKSRC}/configure > ${REINPLACE_CMD} -e 's/ xmlto/ $$(xmlto)/' \ > ${WRKSRC}/alsactl/Makefile.in > ${FIND} -E ${WRKSRC} -type f -regex \ > '.*\.([[:digit:]]|spec\.in|csv|xml)' -exec \ > ${REINPLACE_CMD} -i .pathfix.bak \ > -e 's|/usr/share|${PREFIX}/share|g' \ > -e 's|/etc/asound\.conf|${LOCALBASE}&|g' {} + > > .include <bsd.port.mk> >diff --git c/audio/alsa-utils/distinfo i/audio/alsa-utils/distinfo >index 1ff95fce2c78..e43be666d981 100644 >--- c/audio/alsa-utils/distinfo >+++ i/audio/alsa-utils/distinfo >@@ -1,2 +1,3 @@ >-SHA256 (alsa-utils-1.1.2.tar.bz2) = 7af603c0877d1251599d65b4fbc372e63a54371b888f5c26c6a86ac1d0519071 >-SIZE (alsa-utils-1.1.2.tar.bz2) = 1193140 >+TIMESTAMP = 1585922350 >+SHA256 (alsa-utils-1.2.2.tar.bz2) = 44807bd578c5f6df6e91a11b8d37e546424a5a1ea8d8e659ee359fe01730e4f3 >+SIZE (alsa-utils-1.2.2.tar.bz2) = 1274821 >diff --git c/audio/alsa-utils/files/patch-alsamixer_volume__mapping.c i/audio/alsa-utils/files/patch-alsamixer_volume__mapping.c >deleted file mode 100644 >index 34cc3e0973a2..000000000000 >--- c/audio/alsa-utils/files/patch-alsamixer_volume__mapping.c >+++ /dev/null >@@ -1,11 +0,0 @@ >---- alsamixer/volume_mapping.c.orig 2016-03-31 14:37:02 UTC >-+++ alsamixer/volume_mapping.c >-@@ -37,7 +37,7 @@ >- #include <stdbool.h> >- #include "volume_mapping.h" >- >--#ifdef __UCLIBC__ >-+#ifndef __GLIBC__ >- /* 10^x = 10^(log e^x) = (e^x)^log10 = e^(x * log 10) */ >- #define exp10(x) (exp((x) * log(10))) >- #endif /* __UCLIBC__ */ >diff --git c/audio/alsa-utils/files/patch-aplay_aplay.c i/audio/alsa-utils/patch-aplay_aplay.c >similarity index 70% >rename from audio/alsa-utils/files/patch-aplay_aplay.c >rename to audio/alsa-utils/patch-aplay_aplay.c >index f50a227535d9..61a9046313b2 100644 >--- c/audio/alsa-utils/files/patch-aplay_aplay.c >+++ i/audio/alsa-utils/patch-aplay_aplay.c >@@ -1,23 +1,23 @@ >---- aplay/aplay.c.orig 2016-03-31 14:37:02 UTC >+--- aplay/aplay.c.orig 2020-02-19 12:02:10 UTC > +++ aplay/aplay.c >-@@ -48,7 +48,6 @@ >+@@ -49,7 +49,6 @@ > #include <sys/time.h> > #include <sys/stat.h> > #include <sys/types.h> > -#include <endian.h> >- #include "aconfig.h" > #include "gettext.h" > #include "formats.h" >+ #include "version.h" > @@ -70,6 +69,12 @@ >+ #define be16toh(x) __be16_to_cpu(x) >+ #define le32toh(x) __le32_to_cpu(x) > #define be32toh(x) __be32_to_cpu(x) >- #endif >- >++#endif >++ > +#ifndef _LARGEFILE64_SOURCE > +/* assume modern system */ > +typedef off_t off64_t; > +#define lseek64 lseek >-+#endif >-+ >- #define DEFAULT_FORMAT SND_PCM_FORMAT_U8 >- #define DEFAULT_SPEED 8000 >+ #endif > >+ #define DEFAULT_FORMAT SND_PCM_FORMAT_U8 >diff --git c/audio/alsa-utils/pkg-plist i/audio/alsa-utils/pkg-plist >index 60c87911f8ff..f6d2819638ab 100644 >--- c/audio/alsa-utils/pkg-plist >+++ i/audio/alsa-utils/pkg-plist >@@ -1,64 +1,70 @@ > bin/aconnect > %%BAT%%bin/alsabat > bin/alsaloop > bin/alsamixer > bin/alsatplg > bin/alsaucm > bin/amidi > bin/amixer > bin/aplay > bin/aplaymidi > bin/arecord > bin/arecordmidi > bin/aseqdump > bin/aseqnet >+bin/axfer > bin/iecset > bin/speaker-test >+lib/udev/89-alsa-ucm.rules > lib/udev/90-alsa-restore.rules > man/fr/man8/alsaconf.8.gz > man/man1/aconnect.1.gz >+man/man1/alsa-info.sh.1.gz >+%%BAT%%man/man1/alsabat.1.gz > man/man1/alsactl.1.gz > man/man1/alsaloop.1.gz > man/man1/alsamixer.1.gz >+man/man1/alsatplg.1.gz >+man/man1/alsaucm.1.gz > man/man1/amidi.1.gz > man/man1/amixer.1.gz > man/man1/aplay.1.gz > man/man1/aplaymidi.1.gz > man/man1/arecord.1.gz > man/man1/arecordmidi.1.gz > man/man1/aseqdump.1.gz > man/man1/aseqnet.1.gz >+man/man1/axfer-list.1.gz >+man/man1/axfer-transfer.1.gz >+man/man1/axfer.1.gz > man/man1/iecset.1.gz > man/man1/speaker-test.1.gz >-man/man1/alsa-info.sh.1.gz >-%%BAT%%man/man1/alsabat.1.gz >-%%MANPAGES%%man/man7/alsactl_init.7.gz > man/man8/alsaconf.8.gz > sbin/alsa-info.sh > %%BAT%%sbin/alsabat-test.sh > sbin/alsaconf > sbin/alsactl > share/alsa/init/00main > share/alsa/init/ca0106 > share/alsa/init/default > share/alsa/init/hda > share/alsa/init/help > share/alsa/init/info > share/alsa/init/test > share/alsa/speaker-test/sample_map.csv > %%NLS%%share/locale/de/LC_MESSAGES/alsa-utils.mo > %%NLS%%share/locale/fr/LC_MESSAGES/alsa-utils.mo > %%NLS%%share/locale/ja/LC_MESSAGES/alsa-utils.mo > %%NLS%%share/locale/ja/LC_MESSAGES/alsaconf.mo > %%NLS%%share/locale/ru/LC_MESSAGES/alsaconf.mo > share/sounds/alsa/Front_Center.wav > share/sounds/alsa/Front_Left.wav > share/sounds/alsa/Front_Right.wav > share/sounds/alsa/Noise.wav > share/sounds/alsa/Rear_Center.wav > share/sounds/alsa/Rear_Left.wav > share/sounds/alsa/Rear_Right.wav > share/sounds/alsa/Side_Left.wav > share/sounds/alsa/Side_Right.wav > @dir /var/lib/alsa > @dir /var/lib
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
Attachments on
bug 245321
:
213022
| 218412 |
223196