Skip to contentSkip to conversation

openal: New package

PATCH New André Hentschel 2 participants 2 messages Dec 7, 2015 – Dec 13, 2015

lore
Share & tools
lore
#0 lore raw

PATCH v4 1/1 openal: New package

---

Tested on various backends, archs and toolchains (uclibc, glibc, musl, extern, intern)

v4: Bump to 1.17; Removed selections/dependencies on backends as it is already useful for computations without a backend
v3: Added dependency on threads and select alsa as default backend, fixed license and check for dependencies (suggested by Thomas Petazzoni)
Fixed ordering in Config.in and patch style (suggested by Vicente Olivert Riera)
Added C++ dependency (spotted myself)
v2: Added check for static lib build, added URL to description (suggested by Bernd Kuhls)

 package/Config.in          |  1 +
 package/openal/Config.in   | 14 ++++++++++++++
 package/openal/openal.hash |  2 ++
 package/openal/openal.mk   | 39 +++++++++++++++++++++++++++++++++++++++
 4 files changed, 56 insertions(+)
 create mode 100644 package/openal/Config.in
 create mode 100644 package/openal/openal.hash
 create mode 100644 package/openal/openal.mk
package/Config.in +1 -0
index 2bdad01..ea344b0 100644
@@ -726,6 +726,7 @@ menu "Audio/Sound"
 	source "package/libsoxr/Config.in"
 	source "package/libvorbis/Config.in"
 	source "package/mp4v2/Config.in"
+	source "package/openal/Config.in"
 	source "package/opencore-amr/Config.in"
 	source "package/opus/Config.in"
 	source "package/opusfile/Config.in"
package/openal/Config.in new file +14 -0
new file mode 100644
index 0000000..cfd41fa
@@ -0,0 +1,14 @@
+config BR2_PACKAGE_OPENAL
+	bool "openal"
+	depends on BR2_INSTALL_LIBSTDCPP
+	depends on BR2_TOOLCHAIN_HAS_THREADS # alsa-lib
+	help
+	  OpenAL provides capabilities for playing audio in a virtual
+	  3D environment. Distance attenuation, doppler shift, and
+	  directional sound emitters are among the features handled by
+	  the API.
+
+	  http://kcat.strangesoft.net/openal.html
+
+comment "openal needs a toolchain w/ threads, C++"
+	depends on !BR2_TOOLCHAIN_HAS_THREADS || !BR2_INSTALL_LIBSTDCPP
package/openal/openal.hash new file +2 -0
new file mode 100644
index 0000000..26a9919
@@ -0,0 +1,2 @@
+# Locally calculated
+sha256 5e93336de2e7c50f3a01beba51861d6f61c3e4045a896191dc806591e46264d1 openal-soft-1.17.0.tar.bz2
package/openal/openal.mk new file +39 -0
new file mode 100644
index 0000000..ff1cc3d
@@ -0,0 +1,39 @@
+################################################################################
+#
+# openal
+#
+################################################################################
+
+OPENAL_VERSION = 1.17.0
+OPENAL_SOURCE = openal-soft-$(OPENAL_VERSION).tar.bz2
+OPENAL_SITE = http://kcat.strangesoft.net/openal-releases
+OPENAL_LICENSE = LGPLv2+
+OPENAL_LICENSE_FILES = COPYING
+OPENAL_INSTALL_STAGING = YES
+
+ifeq ($(BR2_PACKAGE_ALSA_LIB),y)
+OPENAL_DEPENDENCIES += alsa-lib
+OPENAL_CONF_OPTS += -DALSOFT_REQUIRE_ALSA=ON
+else
+OPENAL_CONF_OPTS += -DALSOFT_REQUIRE_ALSA=OFF
+endif
+
+ifeq ($(BR2_PACKAGE_PORTAUDIO),y)
+OPENAL_DEPENDENCIES += portaudio
+OPENAL_CONF_OPTS += -DALSOFT_REQUIRE_PORTAUDIO=ON
+else
+OPENAL_CONF_OPTS += -DALSOFT_REQUIRE_PORTAUDIO=OFF
+endif
+
+ifeq ($(BR2_PACKAGE_PULSEAUDIO),y)
+OPENAL_DEPENDENCIES += pulseaudio
+OPENAL_CONF_OPTS += -DALSOFT_REQUIRE_PULSEAUDIO=ON
+else
+OPENAL_CONF_OPTS += -DALSOFT_REQUIRE_PULSEAUDIO=OFF
+endif
+
+ifeq ($(BR2_STATIC_LIBS),y)
+OPENAL_CONF_OPTS += -DLIBTYPE=STATIC
+endif
+
+$(eval $(cmake-package))
Signature · 1 line
1.9.1
#1 lore raw

PATCH v4 1/1 openal: New package

Dear Andr? Hentschel,

package/openal/Config.in line 4

Quoted 10 lines · Andr? Hentschel
package/openal/Config.in new file +4 -0
new file mode 100644
index 0000000..cfd41fa
@@ -0,0 +1,14 @@
+config BR2_PACKAGE_OPENAL
+	bool "openal"
+	depends on BR2_INSTALL_LIBSTDCPP
+	depends on BR2_TOOLCHAIN_HAS_THREADS # alsa-lib

The comment "# alsa-lib" was bogus, since you don't select alsa-lib. However, even without ALSA support, OpenAL needs thread support, so I've removed this comment.

The rest of your patch looked good, so I applied it. However, quickly after being pushed, a first build issue appeared:

http://autobuild.buildroot.org/results/3b8/3b8dadb1fcb71dae3daf500df95e270c2f86ec3b/build-end.log

Can you have a look ?

Thanks!

Thomas

Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com