Project import
diff --git a/Makefile b/Makefile
new file mode 100644
index 0000000..d2f1256
--- /dev/null
+++ b/Makefile
@@ -0,0 +1,122 @@
+#
+#    Copyright (c) 2010-2014 Nest, Inc.
+#    All rights reserved.
+#
+#    This document is the property of Nest. It is considered
+#    confidential and proprietary information.
+#
+#    This document may not be reproduced or transmitted in any form,
+#    in whole or in part, without the express written permission of
+#    Nest.
+#
+#    Description:
+#      This file is the makefile for the ALSA User space library
+#
+
+BuildConfigSpecialized	:= No
+BuildProductSpecialized	:= No
+
+include pre.mak
+
+PackageName		:= alsa-lib
+
+PackageExtension	:= tar.bz2
+PackageSeparator	:= -
+
+PackagePatchArgs	:= -p1
+
+PackageArchive		:= $(PackageName).$(PackageExtension)
+PackageSourceDir	:= $(PackageName)$(PackageSeparator)$(PackageVersion)/
+
+PackageBuildMakefile	= $(call GenerateBuildPaths,Makefile)
+
+CleanPaths		+= $(PackageLicenseFile)
+
+AsoundConfigFile	:= asound.conf
+AlsaUserIncDir		:= /usr/include/alsa/
+AlsaUserLibDir		:= /usr/lib/
+ifeq ($(BUILD_FEATURE_SIMULATOR),1)
+AlsaConfDir 		:= /tmp/alsa
+DebugFlags		:= -g -O0
+else
+AlsaConfDir 		:= /usr/share/alsa
+DebugFlags		:=
+endif
+
+all: $(PackageDefaultGoal)
+
+# Generate the package license contents.
+
+$(PackageSourceDir)/LICENSE: source
+
+$(PackageLicenseFile): $(PackageSourceDir)/LICENSE
+	$(copy-result)
+
+# Extract the source from the archive and apply patches, if any.
+
+$(PackageSourceDir): $(PackageArchive) $(PackagePatchPaths)
+	$(expand-and-patch-package)
+
+# Prepare the sources.
+
+.PHONY: source
+source: | $(PackageSourceDir)
+
+# Patch the sources, if necessary.
+
+.PHONY: patch
+patch: source
+
+# Generate the package build makefile.
+
+$(PackageBuildMakefile): | $(PackageSourceDir) $(BuildDirectory)
+	$(Verbose)cd $(BuildDirectory) && \
+	$(CURDIR)/$(PackageSourceDir)/configure \
+	CC="$(CC) $(DebugFlags)" CXX="$(CXX)" AR=$(AR) RANLIB=$(RANLIB) STRIP=$(STRIP) \
+	INSTALL="$(INSTALL) $(INSTALLFLAGS)" \
+	--build=$(HostTuple) \
+	--host=$(TargetTuple) \
+	--with-configdir=$(AlsaConfDir) \
+	--with-versioned=no \
+	--prefix=/usr \
+	--sysconfdir=/etc \
+	--localstatedir=/var \
+	--includedir=$(AlsaUserIncDir) \
+	--libdir=$(AlsaUserLibDir) \
+	--disable-rawmidi \
+	--disable-seq \
+	--disable-old-symbols \
+	--disable-python \
+	--disable-alisp
+
+# Configure the source for building.
+configure: PATH := $(HostBinDir):$(PATH)
+
+.PHONY: configure
+configure: source $(PackageBuildMakefile)
+
+# Build the source.
+#
+# We have to unset MAKEFLAGS since they confuse the package build otherwise.
+
+.PHONY: build
+build: configure
+	$(Verbose)unset MAKEFLAGS && \
+	$(MAKE) $(JOBSFLAG) -C $(BuildDirectory) all
+
+# Stage the build to a temporary installation area.
+#
+# We have to unset MAKEFLAGS since they confuse the package build otherwise.
+
+.PHONY: stage
+stage: build | $(ResultDirectory)
+	$(Verbose)unset MAKEFLAGS && \
+	$(MAKE) $(JOBSFLAG) -C $(BuildDirectory) DESTDIR=$(ResultDirectory) install
+	$(Verbose)cp -f $(AsoundConfigFile) $(ResultDirectory)
+
+clean:
+	$(Verbose)$(RM) $(RMFLAGS) -r $(PackageSourceDir)
+	$(Verbose)$(RM) $(RMFLAGS) -r $(BuildDirectory)
+	$(Verbose)$(RM) $(RMFLAGS) -r $(ResultDirectory)
+
+include post.mak
diff --git a/alsa-lib.tar.bz2 b/alsa-lib.tar.bz2
new file mode 100644
index 0000000..be32560
--- /dev/null
+++ b/alsa-lib.tar.bz2
Binary files differ
diff --git a/alsa-lib.url b/alsa-lib.url
new file mode 100644
index 0000000..92ea637
--- /dev/null
+++ b/alsa-lib.url
@@ -0,0 +1 @@
+ftp://ftp.alsa-project.org/pub/lib/alsa-lib-1.0.27.2.tar.bz2
diff --git a/alsa-lib.version b/alsa-lib.version
new file mode 100644
index 0000000..6ce29ad
--- /dev/null
+++ b/alsa-lib.version
@@ -0,0 +1 @@
+1.0.27.2
diff --git a/asound.conf b/asound.conf
new file mode 100644
index 0000000..3e6c0eb
--- /dev/null
+++ b/asound.conf
@@ -0,0 +1,40 @@
+pcm_slave.speaker_16khz_slave {
+	pcm "hw:0,0"
+	format S16_LE
+	channels 1
+	rate 16000
+	period_time 50000
+	buffer_time 100000
+}
+
+pcm.speaker_16khz {
+	type dmix
+	ipc_key 1000  # any unique value
+	ipc_key_add_uid true
+	slave speaker_16khz_slave
+}
+
+pcm_slave.speaker_any_format_slave {
+	pcm "speaker_16khz"
+}
+
+pcm.speaker_any_format {
+	type plug
+	slave speaker_any_format_slave
+}
+
+pcm_slave.mic_16khz_mono_slave {
+	pcm "hw:0,1"
+	format S16_LE
+	channels 1
+	rate 16000
+	period_time 50000
+	buffer_time 100000
+}
+
+pcm.mic_16khz_mono {
+	type dsnoop
+	ipc_key 1000  # any unique value
+	ipc_key_add_uid true
+	slave mic_16khz_mono_slave
+}