summaryrefslogtreecommitdiff
path: root/libcanberra-32
diff options
context:
space:
mode:
authorDanny Rawlins <monster.romster@gmail.com>2019-08-04 22:24:51 +1000
committerDanny Rawlins <monster.romster@gmail.com>2019-08-04 22:29:23 +1000
commit1d14b0d25fb78ca44b2e1a08b41d016f10fa5584 (patch)
tree4ef96bb433b49174b22ef00c1cda5bb4d0069b34 /libcanberra-32
parent009b37e0ad65adde4fd35d639e973c44a3874f73 (diff)
downloadcompat-32-1d14b0d25fb78ca44b2e1a08b41d016f10fa5584.tar.gz
compat-32-1d14b0d25fb78ca44b2e1a08b41d016f10fa5584.tar.xz
libcanberra-32: initial import
Diffstat (limited to 'libcanberra-32')
-rw-r--r--libcanberra-32/.32bit0
-rw-r--r--libcanberra-32/.footprint15
-rw-r--r--libcanberra-32/.signature7
-rw-r--r--libcanberra-32/Pkgfile32
-rw-r--r--libcanberra-32/libcanberra-broadway-fix.patch71
-rw-r--r--libcanberra-32/libcanberra-multi-backend.patch26
6 files changed, 151 insertions, 0 deletions
diff --git a/libcanberra-32/.32bit b/libcanberra-32/.32bit
new file mode 100644
index 00000000..e69de29b
--- /dev/null
+++ b/libcanberra-32/.32bit
diff --git a/libcanberra-32/.footprint b/libcanberra-32/.footprint
new file mode 100644
index 00000000..84bd5f0e
--- /dev/null
+++ b/libcanberra-32/.footprint
@@ -0,0 +1,15 @@
+drwxr-xr-x root/root usr/
+drwxr-xr-x root/root usr/lib32/
+drwxr-xr-x root/root usr/lib32/libcanberra-0.30/
+-rwxr-xr-x root/root usr/lib32/libcanberra-0.30/libcanberra-alsa.la
+-rwxr-xr-x root/root usr/lib32/libcanberra-0.30/libcanberra-alsa.so
+-rwxr-xr-x root/root usr/lib32/libcanberra-0.30/libcanberra-multi.la
+-rwxr-xr-x root/root usr/lib32/libcanberra-0.30/libcanberra-multi.so
+-rwxr-xr-x root/root usr/lib32/libcanberra-0.30/libcanberra-null.la
+-rwxr-xr-x root/root usr/lib32/libcanberra-0.30/libcanberra-null.so
+-rwxr-xr-x root/root usr/lib32/libcanberra.la
+lrwxrwxrwx root/root usr/lib32/libcanberra.so -> libcanberra.so.0.2.5
+lrwxrwxrwx root/root usr/lib32/libcanberra.so.0 -> libcanberra.so.0.2.5
+-rwxr-xr-x root/root usr/lib32/libcanberra.so.0.2.5
+drwxr-xr-x root/root usr/lib32/pkgconfig/
+-rw-r--r-- root/root usr/lib32/pkgconfig/libcanberra.pc
diff --git a/libcanberra-32/.signature b/libcanberra-32/.signature
new file mode 100644
index 00000000..89db909b
--- /dev/null
+++ b/libcanberra-32/.signature
@@ -0,0 +1,7 @@
+untrusted comment: verify with /etc/ports/compat-32.pub
+RWSwxGo/zH7eXdl3P1R4+cgnAdqPdXIfUGJPIIWPXxXkXVgLOBIm6dPQzrzhybc4+N2eU6qqmwWs2tYHXWZpebJDKfIxuQ4piw4=
+SHA256 (Pkgfile) = 2f20f50fe2104f9239bea010ae3cf721c99a229231e9c4cfd60f67ed4ce2f247
+SHA256 (.footprint) = 4c240323b3c234ceeee69a6b29384fcf0b561d15798590a3de53c9aa7bbee14d
+SHA256 (libcanberra-0.30.tar.xz) = c2b671e67e0c288a69fc33dc1b6f1b534d07882c2aceed37004bf48c601afa72
+SHA256 (libcanberra-broadway-fix.patch) = 5c07bf6a7199d992e6f797de157bf4368391e597ab7a332da401269a8d8dd12b
+SHA256 (libcanberra-multi-backend.patch) = de146cae3e40a16b38c8edb4f1a3a423c64eb9c5000e36c316b677e9909c9b06
diff --git a/libcanberra-32/Pkgfile b/libcanberra-32/Pkgfile
new file mode 100644
index 00000000..9952bb50
--- /dev/null
+++ b/libcanberra-32/Pkgfile
@@ -0,0 +1,32 @@
+# Description: A small and lightweight implementation of the XDG Sound Theme Specification
+# URL: http://0pointer.de/lennart/projects/libcanberra
+# Maintainer: CRUX compat-32 Team, compat-32-ports at crux dot nu
+# Depends on: gtk-32 libcanberra xorg-libxdamage-32 libtool-32 alsa-lib-32 libvorbis-32
+# Optional: pulseaudio-32
+
+name=libcanberra-32
+version=0.30
+release=1
+source=(https://0pointer.de/lennart/projects/libcanberra/libcanberra-$version.tar.xz
+ libcanberra-broadway-fix.patch
+ libcanberra-multi-backend.patch)
+
+build() {
+ cd ${name:0:11}-$version
+
+ patch -p1 -i $SRC/libcanberra-broadway-fix.patch
+ patch -p1 -i $SRC/libcanberra-multi-backend.patch
+
+ ./configure \
+ --prefix=/usr \
+ --libdir=/usr/lib32 \
+ --enable-alsa \
+ --disable-oss \
+ --with-builtin=dso \
+ --with-pic
+
+ make
+ make -j1 DESTDIR=$PKG install
+
+ rm -r $PKG/usr/{bin,share,include}
+}
diff --git a/libcanberra-32/libcanberra-broadway-fix.patch b/libcanberra-32/libcanberra-broadway-fix.patch
new file mode 100644
index 00000000..2ce914bf
--- /dev/null
+++ b/libcanberra-32/libcanberra-broadway-fix.patch
@@ -0,0 +1,71 @@
+From c0620e432650e81062c1967cc669829dbd29b310 Mon Sep 17 00:00:00 2001
+From: Michael Meeks <michael.meeks@suse.com>
+Date: Fri, 9 Nov 2012 16:16:40 +0000
+Subject: [PATCH] gtk: Don't assume all GdkDisplays are GdkX11Displays:
+ broadway/wayland
+
+---
+ src/canberra-gtk-module.c | 15 +++++++++++++++
+ src/canberra-gtk.c | 5 +++++
+ 2 files changed, 20 insertions(+), 0 deletions(-)
+
+diff --git a/src/canberra-gtk-module.c b/src/canberra-gtk-module.c
+index 67791f0..c1532ab 100644
+--- a/src/canberra-gtk-module.c
++++ b/src/canberra-gtk-module.c
+@@ -307,6 +307,11 @@ static gint window_get_desktop(GdkDisplay *d, GdkWindow *w) {
+ guchar *data = NULL;
+ gint ret = -1;
+
++#ifdef GDK_IS_X11_DISPLAY
++ if (!GDK_IS_X11_DISPLAY(d))
++ return 0;
++#endif
++
+ if (XGetWindowProperty(GDK_DISPLAY_XDISPLAY(d), GDK_WINDOW_XID(w),
+ gdk_x11_get_xatom_by_name_for_display(d, "_NET_WM_DESKTOP"),
+ 0, G_MAXLONG, False, XA_CARDINAL, &type_return,
+@@ -335,6 +340,11 @@ static gint display_get_desktop(GdkDisplay *d) {
+ guchar *data = NULL;
+ gint ret = -1;
+
++#ifdef GDK_IS_X11_DISPLAY
++ if (!GDK_IS_X11_DISPLAY(d))
++ return 0;
++#endif
++
+ if (XGetWindowProperty(GDK_DISPLAY_XDISPLAY(d), DefaultRootWindow(GDK_DISPLAY_XDISPLAY(d)),
+ gdk_x11_get_xatom_by_name_for_display(d, "_NET_CURRENT_DESKTOP"),
+ 0, G_MAXLONG, False, XA_CARDINAL, &type_return,
+@@ -365,6 +375,11 @@ static gboolean window_is_xembed(GdkDisplay *d, GdkWindow *w) {
+ gboolean ret = FALSE;
+ Atom xembed;
+
++#ifdef GDK_IS_X11_DISPLAY
++ if (!GDK_IS_X11_DISPLAY(d))
++ return FALSE;
++#endif
++
+ /* Gnome Panel applets are XEMBED windows. We need to make sure we
+ * ignore them */
+
+diff --git a/src/canberra-gtk.c b/src/canberra-gtk.c
+index 34446f5..08cb668 100644
+--- a/src/canberra-gtk.c
++++ b/src/canberra-gtk.c
+@@ -185,6 +185,11 @@ static gint window_get_desktop(GdkDisplay *d, GdkWindow *w) {
+ guchar *data = NULL;
+ gint ret = -1;
+
++#ifdef GDK_IS_X11_DISPLAY
++ if (!GDK_IS_X11_DISPLAY(d))
++ return 0;
++#endif
++
+ if (XGetWindowProperty(GDK_DISPLAY_XDISPLAY(d), GDK_WINDOW_XID(w),
+ gdk_x11_get_xatom_by_name_for_display(d, "_NET_WM_DESKTOP"),
+ 0, G_MAXLONG, False, XA_CARDINAL, &type_return,
+--
+1.7.7
+
+
diff --git a/libcanberra-32/libcanberra-multi-backend.patch b/libcanberra-32/libcanberra-multi-backend.patch
new file mode 100644
index 00000000..c5462404
--- /dev/null
+++ b/libcanberra-32/libcanberra-multi-backend.patch
@@ -0,0 +1,26 @@
+Index: libcanberra-0.29/src/driver-order.c
+===================================================================
+--- libcanberra-0.29.orig/src/driver-order.c
++++ libcanberra-0.29/src/driver-order.c
+@@ -30,6 +30,7 @@
+ #include "driver-order.h"
+
+ const char* const ca_driver_order[] = {
++ "multi",
+ #ifdef HAVE_PULSE
+ "pulse",
+ #endif
+Index: libcanberra-0.29/src/multi.c
+===================================================================
+--- libcanberra-0.29.orig/src/multi.c
++++ libcanberra-0.29/src/multi.c
+@@ -107,8 +107,7 @@ int driver_open(ca_context *c) {
+ int ret = CA_SUCCESS;
+
+ ca_return_val_if_fail(c, CA_ERROR_INVALID);
+- ca_return_val_if_fail(c->driver, CA_ERROR_NODRIVER);
+- ca_return_val_if_fail(!strncmp(c->driver, "multi", 5), CA_ERROR_NODRIVER);
++ ca_return_val_if_fail(!c->driver || strncmp(c->driver, "multi", 5) == 0, CA_ERROR_NODRIVER);
+ ca_return_val_if_fail(!PRIVATE(c), CA_ERROR_STATE);
+
+ if (!(c->private = p = ca_new0(struct private, 1)))

Generated by cgit