summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--var/spack/repos/builtin/packages/alsa-lib/package.py25
-rw-r--r--var/spack/repos/builtin/packages/alsa-lib/python.patch20
2 files changed, 44 insertions, 1 deletions
diff --git a/var/spack/repos/builtin/packages/alsa-lib/package.py b/var/spack/repos/builtin/packages/alsa-lib/package.py
index e766a8cc16..9b53de24e9 100644
--- a/var/spack/repos/builtin/packages/alsa-lib/package.py
+++ b/var/spack/repos/builtin/packages/alsa-lib/package.py
@@ -12,6 +12,29 @@ class AlsaLib(AutotoolsPackage):
space library that developers compile ALSA applications against."""
homepage = "https://www.alsa-project.org"
- url = "ftp://ftp.alsa-project.org/pub/lib/alsa-lib-1.1.4.1.tar.bz2"
+ url = "ftp://ftp.alsa-project.org/pub/lib/alsa-lib-1.2.2.tar.bz2"
+ version('1.2.2', sha256='d8e853d8805574777bbe40937812ad1419c9ea7210e176f0def3e6ed255ab3ec')
version('1.1.4.1', sha256='91bb870c14d1c7c269213285eeed874fa3d28112077db061a3af8010d0885b76')
+
+ variant('python', default=False, description='enable python')
+
+ patch('python.patch', when='@1.1.4:1.1.5 +python')
+
+ depends_on('python', type=('link', 'run'), when='+python')
+
+ def configure_args(self):
+ spec = self.spec
+ args = []
+ if spec.satisfies('+python'):
+ args.append(
+ '--with-pythonlibs={0}'.format(spec['python'].libs.ld_flags)
+ )
+ args.append(
+ '--with-pythonincludes={0}'.format(
+ spec['python'].headers.include_flags
+ )
+ )
+ else:
+ args.append('--disable-python')
+ return args
diff --git a/var/spack/repos/builtin/packages/alsa-lib/python.patch b/var/spack/repos/builtin/packages/alsa-lib/python.patch
new file mode 100644
index 0000000000..6cc6cdb40e
--- /dev/null
+++ b/var/spack/repos/builtin/packages/alsa-lib/python.patch
@@ -0,0 +1,20 @@
+diff --git a/modules/mixer/simple/python.c b/modules/mixer/simple/python.c
+index c822c52a..917a5d0a 100644
+--- a/modules/mixer/simple/python.c
++++ b/modules/mixer/simple/python.c
+@@ -588,7 +588,6 @@
+ pymelem_dealloc(struct pymelem *self)
+ {
+ selem_free(self->melem);
+- self->ob_type->tp_free(self);
+ }
+
+ static PyGetSetDef pymelem_getseters[] = {
+@@ -800,7 +799,6 @@
+ pymixer_dealloc(struct pymixer *self)
+ {
+ pymixer_free(self);
+- self->ob_type->tp_free(self);
+ }
+
+ static PyGetSetDef pymixer_getseters[] = {