-INCLUDES=-I$(top_srcdir)/include
+AM_CPPFLAGS=-I$(top_srcdir)/include
SUBDIRS = include alsactl alsaucm utils m4 po
if ALSAMIXER
-# Makefile.in generated by automake 1.11.3 from Makefile.am.
+# Makefile.in generated by automake 1.12.2 from Makefile.am.
# @configure_input@
-# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software
-# Foundation, Inc.
+# Copyright (C) 1994-2012 Free Software Foundation, Inc.
+
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
@SET_MAKE@
VPATH = @srcdir@
+am__make_dryrun = \
+ { \
+ am__dry=no; \
+ case $$MAKEFLAGS in \
+ *\\[\ \ ]*) \
+ echo 'am--echo: ; @echo "AM" OK' | $(MAKE) -f - 2>/dev/null \
+ | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
+ *) \
+ for am__flg in $$MAKEFLAGS; do \
+ case $$am__flg in \
+ *=*|--*) ;; \
+ *n*) am__dry=yes; break;; \
+ esac; \
+ done;; \
+ esac; \
+ test $$am__dry = yes; \
+ }
pkgdatadir = $(datadir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
DIST_COMMON = README $(am__configure_deps) $(srcdir)/Makefile.am \
$(srcdir)/Makefile.in $(top_srcdir)/alsaconf/po/Makefile.in \
$(top_srcdir)/configure ABOUT-NLS COPYING ChangeLog INSTALL \
- TODO config.guess config.rpath config.sub depcomp install-sh \
- missing
+ TODO config.guess config.rpath config.sub install-sh missing
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/m4/gettext.m4 \
$(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/lib-ld.m4 \
$(top_srcdir)/m4/lib-link.m4 $(top_srcdir)/m4/lib-prefix.m4 \
$(top_srcdir)/m4/nls.m4 $(top_srcdir)/m4/po.m4 \
$(top_srcdir)/m4/progtest.m4 $(top_srcdir)/acinclude.m4 \
- $(top_srcdir)/configure.in
+ $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \
install-pdf-recursive install-ps-recursive install-recursive \
installcheck-recursive installdirs-recursive pdf-recursive \
ps-recursive uninstall-recursive
+am__can_run_installinfo = \
+ case $$AM_UPDATE_INFO_DIR in \
+ n|no|NO) false;; \
+ *) (install-info --version) >/dev/null 2>&1;; \
+ esac
RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \
distclean-recursive maintainer-clean-recursive
AM_RECURSIVE_TARGETS = $(RECURSIVE_TARGETS:-recursive=) \
$(RECURSIVE_CLEAN_TARGETS:-recursive=) tags TAGS ctags CTAGS \
- distdir dist dist-all distcheck
+ cscope distdir dist dist-all distcheck
ETAGS = etags
CTAGS = ctags
+CSCOPE = cscope
DIST_SUBDIRS = include alsactl alsaucm utils m4 po alsamixer amixer \
amidi alsaconf aplay iecset speaker-test alsaloop seq
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
&& rm -rf "$(distdir)" \
|| { sleep 5 && rm -rf "$(distdir)"; }; \
else :; fi
+am__post_remove_distdir = $(am__remove_distdir)
am__relativize = \
dir0=`pwd`; \
sed_first='s,^\([^/]*\)/.*$$,\1,'; \
reldir="$$dir2"
DIST_ARCHIVES = $(distdir).tar.gz
GZIP_ENV = --best
+DIST_TARGETS = dist-gzip
distuninstallcheck_listfiles = find . -type f -print
am__distuninstallcheck_listfiles = $(distuninstallcheck_listfiles) \
| sed 's|^\./|$(prefix)/|' | grep -v '$(infodir)/dir$$'
distcleancheck_listfiles = find . -type f -print
ACLOCAL = @ACLOCAL@
+ALSACTL_DAEMONSWITCH = @ALSACTL_DAEMONSWITCH@
+ALSACTL_PIDFILE_DIR = @ALSACTL_PIDFILE_DIR@
ALSA_CFLAGS = @ALSA_CFLAGS@
ALSA_LIBS = @ALSA_LIBS@
AMTAR = @AMTAR@
+ASOUND_LOCK_DIR = @ASOUND_LOCK_DIR@
ASOUND_STATE_DIR = @ASOUND_STATE_DIR@
AUTOCONF = @AUTOCONF@
AUTOHEADER = @AUTOHEADER@
LTLIBICONV = @LTLIBICONV@
LTLIBINTL = @LTLIBINTL@
LTLIBOBJS = @LTLIBOBJS@
+MAINT = @MAINT@
MAKEINFO = @MAKEINFO@
MKDIR_P = @MKDIR_P@
MSGFMT = @MSGFMT@
localstatedir = @localstatedir@
mandir = @mandir@
mkdir_p = @mkdir_p@
+mydatadir = @mydatadir@
ncurses5_config = @ncurses5_config@
ncursesw5_config = @ncursesw5_config@
oldincludedir = @oldincludedir@
top_srcdir = @top_srcdir@
udevrulesdir = @udevrulesdir@
xmlto = @xmlto@
-INCLUDES = -I$(top_srcdir)/include
+AM_CPPFLAGS = -I$(top_srcdir)/include
SUBDIRS = include alsactl alsaucm utils m4 po $(am__append_1) \
$(am__append_2) $(am__append_3) $(am__append_4) \
$(am__append_5) $(am__append_6) $(am__append_7)
.SUFFIXES:
am--refresh: Makefile
@:
-$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps)
@for dep in $?; do \
case '$(am__configure_deps)' in \
*$$dep*) \
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
$(SHELL) ./config.status --recheck
-$(top_srcdir)/configure: $(am__configure_deps)
+$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
$(am__cd) $(srcdir) && $(AUTOCONF)
-$(ACLOCAL_M4): $(am__aclocal_m4_deps)
+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
$(am__cd) $(srcdir) && $(ACLOCAL) $(ACLOCAL_AMFLAGS)
$(am__aclocal_m4_deps):
alsaconf/po/Makefile: $(top_builddir)/config.status $(top_srcdir)/alsaconf/po/Makefile.in
cd $(top_builddir) && $(SHELL) ./config.status $@
# This directory's subdirectories are mostly independent; you can cd
-# into them and run `make' without going through this Makefile.
-# To change the values of `make' variables: instead of editing Makefiles,
-# (1) if the variable is set in `config.status', edit `config.status'
-# (which will cause the Makefiles to be regenerated when you run `make');
-# (2) otherwise, pass the desired values on the `make' command line.
-$(RECURSIVE_TARGETS):
+# into them and run 'make' without going through this Makefile.
+# To change the values of 'make' variables: instead of editing Makefiles,
+# (1) if the variable is set in 'config.status', edit 'config.status'
+# (which will cause the Makefiles to be regenerated when you run 'make');
+# (2) otherwise, pass the desired values on the 'make' command line.
+$(RECURSIVE_TARGETS) $(RECURSIVE_CLEAN_TARGETS):
@fail= failcom='exit 1'; \
for f in x $$MAKEFLAGS; do \
case $$f in \
done; \
dot_seen=no; \
target=`echo $@ | sed s/-recursive//`; \
- list='$(SUBDIRS)'; for subdir in $$list; do \
+ case "$@" in \
+ distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \
+ *) list='$(SUBDIRS)' ;; \
+ esac; \
+ for subdir in $$list; do \
echo "Making $$target in $$subdir"; \
if test "$$subdir" = "."; then \
dot_seen=yes; \
if test "$$dot_seen" = "no"; then \
$(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \
fi; test -z "$$fail"
-
-$(RECURSIVE_CLEAN_TARGETS):
- @fail= failcom='exit 1'; \
- for f in x $$MAKEFLAGS; do \
- case $$f in \
- *=* | --[!k]*);; \
- *k*) failcom='fail=yes';; \
- esac; \
- done; \
- dot_seen=no; \
- case "$@" in \
- distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \
- *) list='$(SUBDIRS)' ;; \
- esac; \
- rev=''; for subdir in $$list; do \
- if test "$$subdir" = "."; then :; else \
- rev="$$subdir $$rev"; \
- fi; \
- done; \
- rev="$$rev ."; \
- target=`echo $@ | sed s/-recursive//`; \
- for subdir in $$rev; do \
- echo "Making $$target in $$subdir"; \
- if test "$$subdir" = "."; then \
- local_target="$$target-am"; \
- else \
- local_target="$$target"; \
- fi; \
- ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
- || eval $$failcom; \
- done && test -z "$$fail"
tags-recursive:
list='$(SUBDIRS)'; for subdir in $$list; do \
test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
list='$(SUBDIRS)'; for subdir in $$list; do \
test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
done
+cscopelist-recursive:
+ list='$(SUBDIRS)'; for subdir in $$list; do \
+ test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) cscopelist); \
+ done
ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
&& $(am__cd) $(top_srcdir) \
&& gtags -i $(GTAGS_ARGS) "$$here"
+cscope: cscope.files
+ test ! -s cscope.files \
+ || $(CSCOPE) -b -q $(AM_CSCOPEFLAGS) $(CSCOPEFLAGS) -i cscope.files $(CSCOPE_ARGS)
+
+clean-cscope:
+ -rm -f cscope.files
+
+cscope.files: clean-cscope cscopelist-recursive cscopelist
+
+cscopelist: cscopelist-recursive $(HEADERS) $(SOURCES) $(LISP)
+ list='$(SOURCES) $(HEADERS) $(LISP)'; \
+ case "$(srcdir)" in \
+ [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
+ *) sdir=$(subdir)/$(srcdir) ;; \
+ esac; \
+ for i in $$list; do \
+ if test -f "$$i"; then \
+ echo "$(subdir)/$$i"; \
+ else \
+ echo "$$sdir/$$i"; \
+ fi; \
+ done >> $(top_builddir)/cscope.files
+
distclean-tags:
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
+ -rm -f cscope.out cscope.in.out cscope.po.out cscope.files
distdir: $(DISTFILES)
$(am__remove_distdir)
done
@list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
if test "$$subdir" = .; then :; else \
- test -d "$(distdir)/$$subdir" \
- || $(MKDIR_P) "$(distdir)/$$subdir" \
- || exit 1; \
- fi; \
- done
- @list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
- if test "$$subdir" = .; then :; else \
+ $(am__make_dryrun) \
+ || test -d "$(distdir)/$$subdir" \
+ || $(MKDIR_P) "$(distdir)/$$subdir" \
+ || exit 1; \
dir1=$$subdir; dir2="$(distdir)/$$subdir"; \
$(am__relativize); \
new_distdir=$$reldir; \
|| chmod -R a+r "$(distdir)"
dist-gzip: distdir
tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz
- $(am__remove_distdir)
+ $(am__post_remove_distdir)
dist-bzip2: distdir
tardir=$(distdir) && $(am__tar) | BZIP2=$${BZIP2--9} bzip2 -c >$(distdir).tar.bz2
- $(am__remove_distdir)
+ $(am__post_remove_distdir)
dist-lzip: distdir
tardir=$(distdir) && $(am__tar) | lzip -c $${LZIP_OPT--9} >$(distdir).tar.lz
- $(am__remove_distdir)
-
-dist-lzma: distdir
- tardir=$(distdir) && $(am__tar) | lzma -9 -c >$(distdir).tar.lzma
- $(am__remove_distdir)
+ $(am__post_remove_distdir)
dist-xz: distdir
tardir=$(distdir) && $(am__tar) | XZ_OPT=$${XZ_OPT--e} xz -c >$(distdir).tar.xz
- $(am__remove_distdir)
+ $(am__post_remove_distdir)
dist-tarZ: distdir
tardir=$(distdir) && $(am__tar) | compress -c >$(distdir).tar.Z
- $(am__remove_distdir)
+ $(am__post_remove_distdir)
dist-shar: distdir
shar $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).shar.gz
- $(am__remove_distdir)
+ $(am__post_remove_distdir)
dist-zip: distdir
-rm -f $(distdir).zip
zip -rq $(distdir).zip $(distdir)
- $(am__remove_distdir)
+ $(am__post_remove_distdir)
-dist dist-all: distdir
- tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz
- $(am__remove_distdir)
+dist dist-all:
+ $(MAKE) $(AM_MAKEFLAGS) $(DIST_TARGETS) am__post_remove_distdir='@:'
+ $(am__post_remove_distdir)
# This target untars the dist file and tries a VPATH configuration. Then
# it guarantees that the distribution is self-contained by making another
GZIP=$(GZIP_ENV) gzip -dc $(distdir).tar.gz | $(am__untar) ;;\
*.tar.bz2*) \
bzip2 -dc $(distdir).tar.bz2 | $(am__untar) ;;\
- *.tar.lzma*) \
- lzma -dc $(distdir).tar.lzma | $(am__untar) ;;\
*.tar.lz*) \
lzip -dc $(distdir).tar.lz | $(am__untar) ;;\
*.tar.xz*) \
*.zip*) \
unzip $(distdir).zip ;;\
esac
- chmod -R a-w $(distdir); chmod a+w $(distdir)
+ chmod -R a-w $(distdir); chmod u+w $(distdir)
mkdir $(distdir)/_build
mkdir $(distdir)/_inst
chmod a-w $(distdir)
&& $(MAKE) $(AM_MAKEFLAGS) distcleancheck \
&& cd "$$am__cwd" \
|| exit 1
- $(am__remove_distdir)
+ $(am__post_remove_distdir)
@(echo "$(distdir) archives ready for distribution: "; \
list='$(DIST_ARCHIVES)'; for i in $$list; do echo $$i; done) | \
sed -e 1h -e 1s/./=/g -e 1p -e 1x -e '$$p' -e '$$x'
uninstall-am:
-.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) ctags-recursive \
- install-am install-data-am install-strip tags-recursive
+.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) \
+ cscopelist-recursive ctags-recursive install-am \
+ install-data-am install-strip tags-recursive
.PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \
- all all-am am--refresh check check-am clean clean-generic \
- ctags ctags-recursive dist dist-all dist-bzip2 dist-gzip \
- dist-hook dist-lzip dist-lzma dist-shar dist-tarZ dist-xz \
- dist-zip distcheck distclean distclean-generic distclean-tags \
- distcleancheck distdir distuninstallcheck dvi dvi-am html \
- html-am info info-am install install-am install-data \
- install-data-am install-data-hook install-dvi install-dvi-am \
- install-exec install-exec-am install-html install-html-am \
- install-info install-info-am install-man install-pdf \
- install-pdf-am install-ps install-ps-am install-strip \
- installcheck installcheck-am installdirs installdirs-am \
- maintainer-clean maintainer-clean-generic mostlyclean \
- mostlyclean-generic pdf pdf-am ps ps-am tags tags-recursive \
- uninstall uninstall-am
+ all all-am am--refresh check check-am clean clean-cscope \
+ clean-generic cscope cscopelist cscopelist-recursive ctags \
+ ctags-recursive dist dist-all dist-bzip2 dist-gzip dist-hook \
+ dist-lzip dist-shar dist-tarZ dist-xz dist-zip distcheck \
+ distclean distclean-generic distclean-tags distcleancheck \
+ distdir distuninstallcheck dvi dvi-am html html-am info \
+ info-am install install-am install-data install-data-am \
+ install-data-hook install-dvi install-dvi-am install-exec \
+ install-exec-am install-html install-html-am install-info \
+ install-info-am install-man install-pdf install-pdf-am \
+ install-ps install-ps-am install-strip installcheck \
+ installcheck-am installdirs installdirs-am maintainer-clean \
+ maintainer-clean-generic mostlyclean mostlyclean-generic pdf \
+ pdf-am ps ps-am tags tags-recursive uninstall uninstall-am
rpm: dist
-# generated automatically by aclocal 1.11.3 -*- Autoconf -*-
+# generated automatically by aclocal 1.12.2 -*- Autoconf -*-
+
+# Copyright (C) 1996-2012 Free Software Foundation, Inc.
-# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004,
-# 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software Foundation,
-# Inc.
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
m4_ifndef([AC_AUTOCONF_VERSION],
[m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
-m4_if(m4_defn([AC_AUTOCONF_VERSION]), [2.68],,
-[m4_warning([this file was generated for autoconf 2.68.
+m4_if(m4_defn([AC_AUTOCONF_VERSION]), [2.69],,
+[m4_warning([this file was generated for autoconf 2.69.
You have another version of autoconf. It may work, but is not guaranteed to.
If you have problems, you may need to regenerate the build system entirely.
-To do so, use the procedure documented by the package, typically `autoreconf'.])])
+To do so, use the procedure documented by the package, typically 'autoreconf'.])])
dnl Configure Paths for Alsa
dnl Some modifications by Richard Boulton <richard-alsa@tartarus.org>
fi[]dnl
])# PKG_CHECK_MODULES
-# Copyright (C) 2002, 2003, 2005, 2006, 2007, 2008, 2011 Free Software
-# Foundation, Inc.
+# Copyright (C) 2002-2012 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
-# serial 1
+# serial 8
# AM_AUTOMAKE_VERSION(VERSION)
# ----------------------------
# generated from the m4 files accompanying Automake X.Y.
# (This private macro should not be called outside this file.)
AC_DEFUN([AM_AUTOMAKE_VERSION],
-[am__api_version='1.11'
+[am__api_version='1.12'
dnl Some users find AM_AUTOMAKE_VERSION and mistake it for a way to
dnl require some minimum version. Point them to the right macro.
-m4_if([$1], [1.11.3], [],
+m4_if([$1], [1.12.2], [],
[AC_FATAL([Do not call $0, use AM_INIT_AUTOMAKE([$1]).])])dnl
])
# Call AM_AUTOMAKE_VERSION and AM_AUTOMAKE_VERSION so they can be traced.
# This function is AC_REQUIREd by AM_INIT_AUTOMAKE.
AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION],
-[AM_AUTOMAKE_VERSION([1.11.3])dnl
+[AM_AUTOMAKE_VERSION([1.12.2])dnl
m4_ifndef([AC_AUTOCONF_VERSION],
[m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
_AM_AUTOCONF_VERSION(m4_defn([AC_AUTOCONF_VERSION]))])
# AM_AUX_DIR_EXPAND -*- Autoconf -*-
-# Copyright (C) 2001, 2003, 2005, 2011 Free Software Foundation, Inc.
+# Copyright (C) 2001-2012 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
-# serial 1
+# serial 2
# For projects using AC_CONFIG_AUX_DIR([foo]), Autoconf sets
-# $ac_aux_dir to `$srcdir/foo'. In other projects, it is set to
-# `$srcdir', `$srcdir/..', or `$srcdir/../..'.
+# $ac_aux_dir to '$srcdir/foo'. In other projects, it is set to
+# '$srcdir', '$srcdir/..', or '$srcdir/../..'.
#
# Of course, Automake must honor this variable whenever it calls a
# tool from the auxiliary directory. The problem is that $srcdir (and
#
# The reason of the latter failure is that $top_srcdir and $ac_aux_dir
# are both prefixed by $srcdir. In an in-source build this is usually
-# harmless because $srcdir is `.', but things will broke when you
+# harmless because $srcdir is '.', but things will broke when you
# start a VPATH build or use an absolute $srcdir.
#
# So we could use something similar to $top_srcdir/$ac_aux_dir/missing,
# AM_CONDITIONAL -*- Autoconf -*-
-# Copyright (C) 1997, 2000, 2001, 2003, 2004, 2005, 2006, 2008
-# Free Software Foundation, Inc.
+# Copyright (C) 1997-2012 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
-# serial 9
+# serial 10
# AM_CONDITIONAL(NAME, SHELL-CONDITION)
# -------------------------------------
# Define a conditional.
AC_DEFUN([AM_CONDITIONAL],
-[AC_PREREQ(2.52)dnl
- ifelse([$1], [TRUE], [AC_FATAL([$0: invalid condition: $1])],
- [$1], [FALSE], [AC_FATAL([$0: invalid condition: $1])])dnl
+[AC_PREREQ([2.52])dnl
+ m4_if([$1], [TRUE], [AC_FATAL([$0: invalid condition: $1])],
+ [$1], [FALSE], [AC_FATAL([$0: invalid condition: $1])])dnl
AC_SUBST([$1_TRUE])dnl
AC_SUBST([$1_FALSE])dnl
_AM_SUBST_NOTMAKE([$1_TRUE])dnl
Usually this means the macro was only invoked conditionally.]])
fi])])
-# Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2009,
-# 2010, 2011 Free Software Foundation, Inc.
+# Copyright (C) 1999-2012 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
-# serial 12
+# serial 17
-# There are a few dirty hacks below to avoid letting `AC_PROG_CC' be
+# There are a few dirty hacks below to avoid letting 'AC_PROG_CC' be
# written in clear, in which case automake, when reading aclocal.m4,
# will think it sees a *use*, and therefore will trigger all it's
# C support machinery. Also note that it means that autoscan, seeing
# _AM_DEPENDENCIES(NAME)
# ----------------------
# See how the compiler implements dependency checking.
-# NAME is "CC", "CXX", "GCJ", or "OBJC".
+# NAME is "CC", "CXX", "OBJC", "OBJCXX", "UPC", or "GJC".
# We try a few techniques and use that to set a single cache variable.
#
# We don't AC_REQUIRE the corresponding AC_PROG_CC since the latter was
AC_REQUIRE([AM_MAKE_INCLUDE])dnl
AC_REQUIRE([AM_DEP_TRACK])dnl
-ifelse([$1], CC, [depcc="$CC" am_compiler_list=],
- [$1], CXX, [depcc="$CXX" am_compiler_list=],
- [$1], OBJC, [depcc="$OBJC" am_compiler_list='gcc3 gcc'],
- [$1], UPC, [depcc="$UPC" am_compiler_list=],
- [$1], GCJ, [depcc="$GCJ" am_compiler_list='gcc3 gcc'],
- [depcc="$$1" am_compiler_list=])
+m4_if([$1], [CC], [depcc="$CC" am_compiler_list=],
+ [$1], [CXX], [depcc="$CXX" am_compiler_list=],
+ [$1], [OBJC], [depcc="$OBJC" am_compiler_list='gcc3 gcc'],
+ [$1], [OBJCXX], [depcc="$OBJCXX" am_compiler_list='gcc3 gcc'],
+ [$1], [UPC], [depcc="$UPC" am_compiler_list=],
+ [$1], [GCJ], [depcc="$GCJ" am_compiler_list='gcc3 gcc'],
+ [depcc="$$1" am_compiler_list=])
AC_CACHE_CHECK([dependency style of $depcc],
[am_cv_$1_dependencies_compiler_type],
# We make a subdir and do the tests there. Otherwise we can end up
# making bogus files that we don't know about and never remove. For
# instance it was reported that on HP-UX the gcc test will end up
- # making a dummy file named `D' -- because `-MD' means `put the output
- # in D'.
+ # making a dummy file named 'D' -- because '-MD' means "put the output
+ # in D".
rm -rf conftest.dir
mkdir conftest.dir
# Copy depcomp to subdir because otherwise we won't find it if we're
: > sub/conftest.c
for i in 1 2 3 4 5 6; do
echo '#include "conftst'$i'.h"' >> sub/conftest.c
- # Using `: > sub/conftst$i.h' creates only sub/conftst1.h with
- # Solaris 8's {/usr,}/bin/sh.
- touch sub/conftst$i.h
+ # Using ": > sub/conftst$i.h" creates only sub/conftst1.h with
+ # Solaris 10 /bin/sh.
+ echo '/* dummy */' > sub/conftst$i.h
done
echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf
- # We check with `-c' and `-o' for the sake of the "dashmstdout"
+ # We check with '-c' and '-o' for the sake of the "dashmstdout"
# mode. It turns out that the SunPro C++ compiler does not properly
- # handle `-M -o', and we need to detect this. Also, some Intel
- # versions had trouble with output in subdirs
+ # handle '-M -o', and we need to detect this. Also, some Intel
+ # versions had trouble with output in subdirs.
am__obj=sub/conftest.${OBJEXT-o}
am__minus_obj="-o $am__obj"
case $depmode in
test "$am__universal" = false || continue
;;
nosideeffect)
- # after this tag, mechanisms are not by side-effect, so they'll
- # only be used when explicitly requested
+ # After this tag, mechanisms are not by side-effect, so they'll
+ # only be used when explicitly requested.
if test "x$enable_dependency_tracking" = xyes; then
continue
else
fi
;;
msvc7 | msvc7msys | msvisualcpp | msvcmsys)
- # This compiler won't grok `-c -o', but also, the minuso test has
+ # This compiler won't grok '-c -o', but also, the minuso test has
# not run yet. These depmodes are late enough in the game, and
# so weak that their functioning should not be impacted.
am__obj=conftest.${OBJEXT-o}
# AM_SET_DEPDIR
# -------------
# Choose a directory name for dependency files.
-# This macro is AC_REQUIREd in _AM_DEPENDENCIES
+# This macro is AC_REQUIREd in _AM_DEPENDENCIES.
AC_DEFUN([AM_SET_DEPDIR],
[AC_REQUIRE([AM_SET_LEADING_DOT])dnl
AC_SUBST([DEPDIR], ["${am__leading_dot}deps"])dnl
# AM_DEP_TRACK
# ------------
AC_DEFUN([AM_DEP_TRACK],
-[AC_ARG_ENABLE(dependency-tracking,
-[ --disable-dependency-tracking speeds up one-time build
- --enable-dependency-tracking do not reject slow dependency extractors])
+[AC_ARG_ENABLE([dependency-tracking], [dnl
+AS_HELP_STRING(
+ [--enable-dependency-tracking],
+ [do not reject slow dependency extractors])
+AS_HELP_STRING(
+ [--disable-dependency-tracking],
+ [speeds up one-time build])])
if test "x$enable_dependency_tracking" != xno; then
am_depcomp="$ac_aux_dir/depcomp"
AMDEPBACKSLASH='\'
# Generate code to set up dependency tracking. -*- Autoconf -*-
-# Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2008
-# Free Software Foundation, Inc.
+# Copyright (C) 1999-2012 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
-#serial 5
+# serial 6
# _AM_OUTPUT_DEPENDENCY_COMMANDS
# ------------------------------
# Strip MF so we end up with the name of the file.
mf=`echo "$mf" | sed -e 's/:.*$//'`
# Check whether this is an Automake generated Makefile or not.
- # We used to match only the files named `Makefile.in', but
+ # We used to match only the files named 'Makefile.in', but
# some people rename them; so instead we look at the file content.
# Grep'ing the first line is not enough: some people post-process
# each Makefile.in and add a new line on top of each file to say so.
continue
fi
# Extract the definition of DEPDIR, am__include, and am__quote
- # from the Makefile without running `make'.
+ # from the Makefile without running 'make'.
DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"`
test -z "$DEPDIR" && continue
am__include=`sed -n 's/^am__include = //p' < "$mf"`
test -z "am__include" && continue
am__quote=`sed -n 's/^am__quote = //p' < "$mf"`
- # When using ansi2knr, U may be empty or an underscore; expand it
- U=`sed -n 's/^U = //p' < "$mf"`
# Find all dependency output files, they are included files with
# $(DEPDIR) in their names. We invoke sed twice because it is the
# simplest approach to changing $(DEPDIR) to its actual value in the
# expansion.
for file in `sed -n "
s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \
- sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do
+ sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g'`; do
# Make sure the directory exists.
test -f "$dirpart/$file" && continue
fdir=`AS_DIRNAME(["$file"])`
# This macro should only be invoked once -- use via AC_REQUIRE.
#
# This code is only required when automatic dependency tracking
-# is enabled. FIXME. This creates each `.P' file that we will
+# is enabled. FIXME. This creates each '.P' file that we will
# need in order to bootstrap the dependency handling code.
AC_DEFUN([AM_OUTPUT_DEPENDENCY_COMMANDS],
[AC_CONFIG_COMMANDS([depfiles],
[AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir"])
])
-# Copyright (C) 1996, 1997, 2000, 2001, 2003, 2005
-# Free Software Foundation, Inc.
-#
-# This file is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# serial 8
-
-# AM_CONFIG_HEADER is obsolete. It has been replaced by AC_CONFIG_HEADERS.
-AU_DEFUN([AM_CONFIG_HEADER], [AC_CONFIG_HEADERS($@)])
-
# Do all the work for Automake. -*- Autoconf -*-
-# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004,
-# 2005, 2006, 2008, 2009 Free Software Foundation, Inc.
+# Copyright (C) 1996-2012 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
-# serial 16
+# serial 19
# This macro actually does too much. Some checks are only needed if
# your package does certain things. But this isn't really a big deal.
# Define the identity of the package.
dnl Distinguish between old-style and new-style calls.
m4_ifval([$2],
-[m4_ifval([$3], [_AM_SET_OPTION([no-define])])dnl
+[AC_DIAGNOSE([obsolete],
+[$0: two- and three-arguments forms are deprecated. For more info, see:
+http://www.gnu.org/software/automake/manual/automake.html#Modernize-AM_INIT_AUTOMAKE-invocation])
+m4_ifval([$3], [_AM_SET_OPTION([no-define])])dnl
AC_SUBST([PACKAGE], [$1])dnl
AC_SUBST([VERSION], [$2])],
[_AM_SET_OPTIONS([$1])dnl
dnl Diagnose old-style AC_INIT with new-style AM_AUTOMAKE_INIT.
-m4_if(m4_ifdef([AC_PACKAGE_NAME], 1)m4_ifdef([AC_PACKAGE_VERSION], 1), 11,,
+m4_if(
+ m4_ifdef([AC_PACKAGE_NAME], [ok]):m4_ifdef([AC_PACKAGE_VERSION], [ok]),
+ [ok:ok],,
[m4_fatal([AC_INIT should be called with package and version arguments])])dnl
AC_SUBST([PACKAGE], ['AC_PACKAGE_TARNAME'])dnl
AC_SUBST([VERSION], ['AC_PACKAGE_VERSION'])])dnl
_AM_IF_OPTION([no-define],,
-[AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE", [Name of package])
- AC_DEFINE_UNQUOTED(VERSION, "$VERSION", [Version number of package])])dnl
+[AC_DEFINE_UNQUOTED([PACKAGE], ["$PACKAGE"], [Name of package])
+ AC_DEFINE_UNQUOTED([VERSION], ["$VERSION"], [Version number of package])])dnl
# Some tools Automake needs.
AC_REQUIRE([AM_SANITY_CHECK])dnl
AC_REQUIRE([AC_ARG_PROGRAM])dnl
-AM_MISSING_PROG(ACLOCAL, aclocal-${am__api_version})
-AM_MISSING_PROG(AUTOCONF, autoconf)
-AM_MISSING_PROG(AUTOMAKE, automake-${am__api_version})
-AM_MISSING_PROG(AUTOHEADER, autoheader)
-AM_MISSING_PROG(MAKEINFO, makeinfo)
+AM_MISSING_PROG([ACLOCAL], [aclocal-${am__api_version}])
+AM_MISSING_PROG([AUTOCONF], [autoconf])
+AM_MISSING_PROG([AUTOMAKE], [automake-${am__api_version}])
+AM_MISSING_PROG([AUTOHEADER], [autoheader])
+AM_MISSING_PROG([MAKEINFO], [makeinfo])
AC_REQUIRE([AM_PROG_INSTALL_SH])dnl
AC_REQUIRE([AM_PROG_INSTALL_STRIP])dnl
-AC_REQUIRE([AM_PROG_MKDIR_P])dnl
+AC_REQUIRE([AC_PROG_MKDIR_P])dnl
+# For better backward compatibility. To be removed once Automake 1.9.x
+# dies out for good. For more background, see:
+# <http://lists.gnu.org/archive/html/automake/2012-07/msg00001.html>
+# <http://lists.gnu.org/archive/html/automake/2012-07/msg00014.html>
+AC_SUBST([mkdir_p], ['$(MKDIR_P)'])
# We need awk for the "check" target. The system "awk" is bad on
# some platforms.
AC_REQUIRE([AC_PROG_AWK])dnl
[_AM_PROG_TAR([v7])])])
_AM_IF_OPTION([no-dependencies],,
[AC_PROVIDE_IFELSE([AC_PROG_CC],
- [_AM_DEPENDENCIES(CC)],
- [define([AC_PROG_CC],
- defn([AC_PROG_CC])[_AM_DEPENDENCIES(CC)])])dnl
+ [_AM_DEPENDENCIES([CC])],
+ [m4_define([AC_PROG_CC],
+ m4_defn([AC_PROG_CC])[_AM_DEPENDENCIES([CC])])])dnl
AC_PROVIDE_IFELSE([AC_PROG_CXX],
- [_AM_DEPENDENCIES(CXX)],
- [define([AC_PROG_CXX],
- defn([AC_PROG_CXX])[_AM_DEPENDENCIES(CXX)])])dnl
+ [_AM_DEPENDENCIES([CXX])],
+ [m4_define([AC_PROG_CXX],
+ m4_defn([AC_PROG_CXX])[_AM_DEPENDENCIES([CXX])])])dnl
AC_PROVIDE_IFELSE([AC_PROG_OBJC],
- [_AM_DEPENDENCIES(OBJC)],
- [define([AC_PROG_OBJC],
- defn([AC_PROG_OBJC])[_AM_DEPENDENCIES(OBJC)])])dnl
+ [_AM_DEPENDENCIES([OBJC])],
+ [m4_define([AC_PROG_OBJC],
+ m4_defn([AC_PROG_OBJC])[_AM_DEPENDENCIES([OBJC])])])dnl
+dnl Support for Objective C++ was only introduced in Autoconf 2.65,
+dnl but we still cater to Autoconf 2.62.
+m4_ifdef([AC_PROG_OBJCXX],
+[AC_PROVIDE_IFELSE([AC_PROG_OBJCXX],
+ [_AM_DEPENDENCIES([OBJCXX])],
+ [m4_define([AC_PROG_OBJCXX],
+ m4_defn([AC_PROG_OBJCXX])[_AM_DEPENDENCIES([OBJCXX])])])])dnl
])
_AM_IF_OPTION([silent-rules], [AC_REQUIRE([AM_SILENT_RULES])])dnl
-dnl The `parallel-tests' driver may need to know about EXEEXT, so add the
-dnl `am__EXEEXT' conditional if _AM_COMPILER_EXEEXT was seen. This macro
+dnl The 'parallel-tests' driver may need to know about EXEEXT, so add the
+dnl 'am__EXEEXT' conditional if _AM_COMPILER_EXEEXT was seen. This macro
dnl is hooked onto _AC_COMPILER_EXEEXT early, see below.
AC_CONFIG_COMMANDS_PRE(dnl
[m4_provide_if([_AM_COMPILER_EXEEXT],
[AM_CONDITIONAL([am__EXEEXT], [test -n "$EXEEXT"])])])dnl
])
-dnl Hook into `_AC_COMPILER_EXEEXT' early to learn its expansion. Do not
+dnl Hook into '_AC_COMPILER_EXEEXT' early to learn its expansion. Do not
dnl add the conditional right here, as _AC_COMPILER_EXEEXT may be further
dnl mangled by Autoconf and run in a shell conditional statement.
m4_define([_AC_COMPILER_EXEEXT],
done
echo "timestamp for $_am_arg" >`AS_DIRNAME(["$_am_arg"])`/stamp-h[]$_am_stamp_count])
-# Copyright (C) 2001, 2003, 2005, 2008, 2011 Free Software Foundation,
-# Inc.
+# Copyright (C) 2001-2012 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
-# serial 1
+# serial 8
# AM_PROG_INSTALL_SH
# ------------------
install_sh="\${SHELL} $am_aux_dir/install-sh"
esac
fi
-AC_SUBST(install_sh)])
+AC_SUBST([install_sh])])
-# Copyright (C) 2003, 2005 Free Software Foundation, Inc.
+# Copyright (C) 2003-2012 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
rmdir .tst 2>/dev/null
AC_SUBST([am__leading_dot])])
+# Add --enable-maintainer-mode option to configure. -*- Autoconf -*-
+# From Jim Meyering
+
+# Copyright (C) 1996-2012 Free Software Foundation, Inc.
+#
+# This file is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# serial 7
+
+# AM_MAINTAINER_MODE([DEFAULT-MODE])
+# ----------------------------------
+# Control maintainer-specific portions of Makefiles.
+# Default is to disable them, unless 'enable' is passed literally.
+# For symmetry, 'disable' may be passed as well. Anyway, the user
+# can override the default with the --enable/--disable switch.
+AC_DEFUN([AM_MAINTAINER_MODE],
+[m4_case(m4_default([$1], [disable]),
+ [enable], [m4_define([am_maintainer_other], [disable])],
+ [disable], [m4_define([am_maintainer_other], [enable])],
+ [m4_define([am_maintainer_other], [enable])
+ m4_warn([syntax], [unexpected argument to AM@&t@_MAINTAINER_MODE: $1])])
+AC_MSG_CHECKING([whether to enable maintainer-specific portions of Makefiles])
+ dnl maintainer-mode's default is 'disable' unless 'enable' is passed
+ AC_ARG_ENABLE([maintainer-mode],
+ [AS_HELP_STRING([--]am_maintainer_other[-maintainer-mode],
+ am_maintainer_other[ make rules and dependencies not useful
+ (and sometimes confusing) to the casual installer])],
+ [USE_MAINTAINER_MODE=$enableval],
+ [USE_MAINTAINER_MODE=]m4_if(am_maintainer_other, [enable], [no], [yes]))
+ AC_MSG_RESULT([$USE_MAINTAINER_MODE])
+ AM_CONDITIONAL([MAINTAINER_MODE], [test $USE_MAINTAINER_MODE = yes])
+ MAINT=$MAINTAINER_MODE_TRUE
+ AC_SUBST([MAINT])dnl
+]
+)
+
+AU_DEFUN([jm_MAINTAINER_MODE], [AM_MAINTAINER_MODE])
+
# Check to see how 'make' treats includes. -*- Autoconf -*-
-# Copyright (C) 2001, 2002, 2003, 2005, 2009 Free Software Foundation, Inc.
+# Copyright (C) 2001-2012 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
-# serial 4
+# serial 5
# AM_MAKE_INCLUDE()
# -----------------
_am_result=none
# First try GNU make style include.
echo "include confinc" > confmf
-# Ignore all kinds of additional output from `make'.
+# Ignore all kinds of additional output from 'make'.
case `$am_make -s -f confmf 2> /dev/null` in #(
*the\ am__doit\ target*)
am__include=include
# Fake the existence of programs that GNU maintainers use. -*- Autoconf -*-
-# Copyright (C) 1997, 1999, 2000, 2001, 2003, 2004, 2005, 2008
-# Free Software Foundation, Inc.
+# Copyright (C) 1997-2012 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
-# serial 6
+# serial 7
# AM_MISSING_PROG(NAME, PROGRAM)
# ------------------------------
am_missing_run="$MISSING --run "
else
am_missing_run=
- AC_MSG_WARN([`missing' script is too old or missing])
+ AC_MSG_WARN(['missing' script is too old or missing])
fi
])
-# Copyright (C) 2003, 2004, 2005, 2006, 2011 Free Software Foundation,
-# Inc.
+# Copyright (C) 2003-2012 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
-# serial 1
+# serial 3
# AM_PROG_MKDIR_P
# ---------------
-# Check for `mkdir -p'.
+# Check for 'mkdir -p'.
AC_DEFUN([AM_PROG_MKDIR_P],
[AC_PREREQ([2.60])dnl
AC_REQUIRE([AC_PROG_MKDIR_P])dnl
+dnl FIXME to be removed in Automake 1.13.
+AC_DIAGNOSE([obsolete],
+[$0: this macro is deprecated, and will soon be removed.
+You should use the Autoconf-provided 'AC][_PROG_MKDIR_P' macro instead,
+and use '$(MKDIR_P)' instead of '$(mkdir_p)'in your Makefile.am files.])
dnl Automake 1.8 to 1.9.6 used to define mkdir_p. We now use MKDIR_P,
dnl while keeping a definition of mkdir_p for backward compatibility.
dnl @MKDIR_P@ is magic: AC_OUTPUT adjusts its value for each Makefile.
# Helper functions for option handling. -*- Autoconf -*-
-# Copyright (C) 2001, 2002, 2003, 2005, 2008, 2010 Free Software
-# Foundation, Inc.
+# Copyright (C) 2001-2012 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
-# serial 5
+# serial 6
# _AM_MANGLE_OPTION(NAME)
# -----------------------
# --------------------
# Set option NAME. Presently that only means defining a flag for this option.
AC_DEFUN([_AM_SET_OPTION],
-[m4_define(_AM_MANGLE_OPTION([$1]), 1)])
+[m4_define(_AM_MANGLE_OPTION([$1]), [1])])
# _AM_SET_OPTIONS(OPTIONS)
# ------------------------
# Check to make sure that the build environment is sane. -*- Autoconf -*-
-# Copyright (C) 1996, 1997, 2000, 2001, 2003, 2005, 2008
-# Free Software Foundation, Inc.
+# Copyright (C) 1996-2012 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
-# serial 5
+# serial 9
# AM_SANITY_CHECK
# ---------------
AC_DEFUN([AM_SANITY_CHECK],
[AC_MSG_CHECKING([whether build environment is sane])
-# Just in case
-sleep 1
-echo timestamp > conftest.file
# Reject unsafe characters in $srcdir or the absolute working directory
# name. Accept space and tab only in the latter.
am_lf='
esac
case $srcdir in
*[[\\\"\#\$\&\'\`$am_lf\ \ ]]*)
- AC_MSG_ERROR([unsafe srcdir value: `$srcdir']);;
+ AC_MSG_ERROR([unsafe srcdir value: '$srcdir']);;
esac
-# Do `set' in a subshell so we don't clobber the current shell's
+# Do 'set' in a subshell so we don't clobber the current shell's
# arguments. Must try -L first in case configure is actually a
# symlink; some systems play weird games with the mod time of symlinks
# (eg FreeBSD returns the mod time of the symlink's containing
# directory).
if (
- set X `ls -Lt "$srcdir/configure" conftest.file 2> /dev/null`
- if test "$[*]" = "X"; then
- # -L didn't work.
- set X `ls -t "$srcdir/configure" conftest.file`
- fi
- rm -f conftest.file
- if test "$[*]" != "X $srcdir/configure conftest.file" \
- && test "$[*]" != "X conftest.file $srcdir/configure"; then
-
- # If neither matched, then we have a broken ls. This can happen
- # if, for instance, CONFIG_SHELL is bash and it inherits a
- # broken ls alias from the environment. This has actually
- # happened. Such a system could not be considered "sane".
- AC_MSG_ERROR([ls -t appears to fail. Make sure there is not a broken
-alias in your environment])
- fi
-
+ am_has_slept=no
+ for am_try in 1 2; do
+ echo "timestamp, slept: $am_has_slept" > conftest.file
+ set X `ls -Lt "$srcdir/configure" conftest.file 2> /dev/null`
+ if test "$[*]" = "X"; then
+ # -L didn't work.
+ set X `ls -t "$srcdir/configure" conftest.file`
+ fi
+ if test "$[*]" != "X $srcdir/configure conftest.file" \
+ && test "$[*]" != "X conftest.file $srcdir/configure"; then
+
+ # If neither matched, then we have a broken ls. This can happen
+ # if, for instance, CONFIG_SHELL is bash and it inherits a
+ # broken ls alias from the environment. This has actually
+ # happened. Such a system could not be considered "sane".
+ AC_MSG_ERROR([ls -t appears to fail. Make sure there is not a broken
+ alias in your environment])
+ fi
+ if test "$[2]" = conftest.file || test $am_try -eq 2; then
+ break
+ fi
+ # Just in case.
+ sleep 1
+ am_has_slept=yes
+ done
test "$[2]" = conftest.file
)
then
AC_MSG_ERROR([newly created file is older than distributed files!
Check your system clock])
fi
-AC_MSG_RESULT(yes)])
+AC_MSG_RESULT([yes])
+# If we didn't sleep, we still need to ensure time stamps of config.status and
+# generated files are strictly newer.
+am_sleep_pid=
+if grep 'slept: no' conftest.file >/dev/null 2>&1; then
+ ( sleep 1 ) &
+ am_sleep_pid=$!
+fi
+AC_CONFIG_COMMANDS_PRE(
+ [AC_MSG_CHECKING([that generated files are newer than configure])
+ if test -n "$am_sleep_pid"; then
+ # Hide warnings about reused PIDs.
+ wait $am_sleep_pid 2>/dev/null
+ fi
+ AC_MSG_RESULT([done])])
+rm -f conftest.file
+])
-# Copyright (C) 2001, 2003, 2005, 2011 Free Software Foundation, Inc.
+# Copyright (C) 2001-2012 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
-# serial 1
+# serial 2
# AM_PROG_INSTALL_STRIP
# ---------------------
-# One issue with vendor `install' (even GNU) is that you can't
+# One issue with vendor 'install' (even GNU) is that you can't
# specify the program used to strip binaries. This is especially
# annoying in cross-compiling environments, where the build's strip
# is unlikely to handle the host's binaries.
# Fortunately install-sh will honor a STRIPPROG variable, so we
-# always use install-sh in `make install-strip', and initialize
+# always use install-sh in "make install-strip", and initialize
# STRIPPROG with the value of the STRIP variable (set by the user).
AC_DEFUN([AM_PROG_INSTALL_STRIP],
[AC_REQUIRE([AM_PROG_INSTALL_SH])dnl
-# Installed binaries are usually stripped using `strip' when the user
-# run `make install-strip'. However `strip' might not be the right
+# Installed binaries are usually stripped using 'strip' when the user
+# run "make install-strip". However 'strip' might not be the right
# tool to use in cross-compilation environments, therefore Automake
-# will honor the `STRIP' environment variable to overrule this program.
-dnl Don't test for $cross_compiling = yes, because it might be `maybe'.
+# will honor the 'STRIP' environment variable to overrule this program.
+dnl Don't test for $cross_compiling = yes, because it might be 'maybe'.
if test "$cross_compiling" != no; then
AC_CHECK_TOOL([STRIP], [strip], :)
fi
INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s"
AC_SUBST([INSTALL_STRIP_PROGRAM])])
-# Copyright (C) 2006, 2008, 2010 Free Software Foundation, Inc.
+# Copyright (C) 2006-2012 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# Check how to create a tarball. -*- Autoconf -*-
-# Copyright (C) 2004, 2005, 2012 Free Software Foundation, Inc.
+# Copyright (C) 2004-2012 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
-# serial 2
+# serial 3
# _AM_PROG_TAR(FORMAT)
# --------------------
# Check how to create a tarball in format FORMAT.
-# FORMAT should be one of `v7', `ustar', or `pax'.
+# FORMAT should be one of 'v7', 'ustar', or 'pax'.
#
# Substitute a variable $(am__tar) that is a command
# writing to stdout a FORMAT-tarball containing the directory
_am_tools='gnutar m4_if([$1], [ustar], [plaintar]) pax cpio none'
_am_tools=${am_cv_prog_tar_$1-$_am_tools}
# Do not fold the above two line into one, because Tru64 sh and
-# Solaris sh will not grok spaces in the rhs of `-'.
+# Solaris sh will not grok spaces in the rhs of '-'.
for _am_tool in $_am_tools
do
case $_am_tool in
-# Makefile.in generated by automake 1.11.3 from Makefile.am.
+# Makefile.in generated by automake 1.12.2 from Makefile.am.
# @configure_input@
-# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software
-# Foundation, Inc.
+# Copyright (C) 1994-2012 Free Software Foundation, Inc.
+
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
@SET_MAKE@
VPATH = @srcdir@
+am__make_dryrun = \
+ { \
+ am__dry=no; \
+ case $$MAKEFLAGS in \
+ *\\[\ \ ]*) \
+ echo 'am--echo: ; @echo "AM" OK' | $(MAKE) -f - 2>/dev/null \
+ | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
+ *) \
+ for am__flg in $$MAKEFLAGS; do \
+ case $$am__flg in \
+ *=*|--*) ;; \
+ *n*) am__dry=yes; break;; \
+ esac; \
+ done;; \
+ esac; \
+ test $$am__dry = yes; \
+ }
pkgdatadir = $(datadir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
$(top_srcdir)/m4/lib-link.m4 $(top_srcdir)/m4/lib-prefix.m4 \
$(top_srcdir)/m4/nls.m4 $(top_srcdir)/m4/po.m4 \
$(top_srcdir)/m4/progtest.m4 $(top_srcdir)/acinclude.m4 \
- $(top_srcdir)/configure.in
+ $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(install_sh) -d
install-pdf-recursive install-ps-recursive install-recursive \
installcheck-recursive installdirs-recursive pdf-recursive \
ps-recursive uninstall-recursive
+am__can_run_installinfo = \
+ case $$AM_UPDATE_INFO_DIR in \
+ n|no|NO) false;; \
+ *) (install-info --version) >/dev/null 2>&1;; \
+ esac
man8dir = $(mandir)/man8
NROFF = nroff
MANS = $(man_MANS)
done; \
reldir="$$dir2"
ACLOCAL = @ACLOCAL@
+ALSACTL_DAEMONSWITCH = @ALSACTL_DAEMONSWITCH@
+ALSACTL_PIDFILE_DIR = @ALSACTL_PIDFILE_DIR@
ALSA_CFLAGS = @ALSA_CFLAGS@
ALSA_LIBS = @ALSA_LIBS@
AMTAR = @AMTAR@
+ASOUND_LOCK_DIR = @ASOUND_LOCK_DIR@
ASOUND_STATE_DIR = @ASOUND_STATE_DIR@
AUTOCONF = @AUTOCONF@
AUTOHEADER = @AUTOHEADER@
LTLIBICONV = @LTLIBICONV@
LTLIBINTL = @LTLIBINTL@
LTLIBOBJS = @LTLIBOBJS@
+MAINT = @MAINT@
MAKEINFO = @MAKEINFO@
MKDIR_P = @MKDIR_P@
MSGFMT = @MSGFMT@
localstatedir = @localstatedir@
mandir = @mandir@
mkdir_p = @mkdir_p@
+mydatadir = @mydatadir@
ncurses5_config = @ncurses5_config@
ncursesw5_config = @ncursesw5_config@
oldincludedir = @oldincludedir@
all: all-recursive
.SUFFIXES:
-$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps)
@for dep in $?; do \
case '$(am__configure_deps)' in \
*$$dep*) \
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-$(top_srcdir)/configure: $(am__configure_deps)
+$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-$(ACLOCAL_M4): $(am__aclocal_m4_deps)
+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(am__aclocal_m4_deps):
alsaconf: $(top_builddir)/config.status $(srcdir)/alsaconf.in
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@
install-sbinSCRIPTS: $(sbin_SCRIPTS)
@$(NORMAL_INSTALL)
- test -z "$(sbindir)" || $(MKDIR_P) "$(DESTDIR)$(sbindir)"
@list='$(sbin_SCRIPTS)'; test -n "$(sbindir)" || list=; \
+ if test -n "$$list"; then \
+ echo " $(MKDIR_P) '$(DESTDIR)$(sbindir)'"; \
+ $(MKDIR_P) "$(DESTDIR)$(sbindir)" || exit 1; \
+ fi; \
for p in $$list; do \
if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
if test -f "$$d$$p"; then echo "$$d$$p"; echo "$$p"; else :; fi; \
dir='$(DESTDIR)$(sbindir)'; $(am__uninstall_files_from_dir)
# This directory's subdirectories are mostly independent; you can cd
-# into them and run `make' without going through this Makefile.
-# To change the values of `make' variables: instead of editing Makefiles,
-# (1) if the variable is set in `config.status', edit `config.status'
-# (which will cause the Makefiles to be regenerated when you run `make');
-# (2) otherwise, pass the desired values on the `make' command line.
-$(RECURSIVE_TARGETS):
+# into them and run 'make' without going through this Makefile.
+# To change the values of 'make' variables: instead of editing Makefiles,
+# (1) if the variable is set in 'config.status', edit 'config.status'
+# (which will cause the Makefiles to be regenerated when you run 'make');
+# (2) otherwise, pass the desired values on the 'make' command line.
+$(RECURSIVE_TARGETS) $(RECURSIVE_CLEAN_TARGETS):
@fail= failcom='exit 1'; \
for f in x $$MAKEFLAGS; do \
case $$f in \
done; \
dot_seen=no; \
target=`echo $@ | sed s/-recursive//`; \
- list='$(SUBDIRS)'; for subdir in $$list; do \
+ case "$@" in \
+ distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \
+ *) list='$(SUBDIRS)' ;; \
+ esac; \
+ for subdir in $$list; do \
echo "Making $$target in $$subdir"; \
if test "$$subdir" = "."; then \
dot_seen=yes; \
if test "$$dot_seen" = "no"; then \
$(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \
fi; test -z "$$fail"
-
-$(RECURSIVE_CLEAN_TARGETS):
- @fail= failcom='exit 1'; \
- for f in x $$MAKEFLAGS; do \
- case $$f in \
- *=* | --[!k]*);; \
- *k*) failcom='fail=yes';; \
- esac; \
- done; \
- dot_seen=no; \
- case "$@" in \
- distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \
- *) list='$(SUBDIRS)' ;; \
- esac; \
- rev=''; for subdir in $$list; do \
- if test "$$subdir" = "."; then :; else \
- rev="$$subdir $$rev"; \
- fi; \
- done; \
- rev="$$rev ."; \
- target=`echo $@ | sed s/-recursive//`; \
- for subdir in $$rev; do \
- echo "Making $$target in $$subdir"; \
- if test "$$subdir" = "."; then \
- local_target="$$target-am"; \
- else \
- local_target="$$target"; \
- fi; \
- ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
- || eval $$failcom; \
- done && test -z "$$fail"
tags-recursive:
list='$(SUBDIRS)'; for subdir in $$list; do \
test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
list='$(SUBDIRS)'; for subdir in $$list; do \
test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
done
+cscopelist-recursive:
+ list='$(SUBDIRS)'; for subdir in $$list; do \
+ test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) cscopelist); \
+ done
ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
&& $(am__cd) $(top_srcdir) \
&& gtags -i $(GTAGS_ARGS) "$$here"
+cscopelist: cscopelist-recursive $(HEADERS) $(SOURCES) $(LISP)
+ list='$(SOURCES) $(HEADERS) $(LISP)'; \
+ case "$(srcdir)" in \
+ [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
+ *) sdir=$(subdir)/$(srcdir) ;; \
+ esac; \
+ for i in $$list; do \
+ if test -f "$$i"; then \
+ echo "$(subdir)/$$i"; \
+ else \
+ echo "$$sdir/$$i"; \
+ fi; \
+ done >> $(top_builddir)/cscope.files
+
distclean-tags:
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
if test -f "$$d$$p"; then echo "$$d$$p"; else :; fi; done`; \
if test -n "$$list" && \
grep 'ab help2man is required to generate this page' $$list >/dev/null; then \
- echo "error: found man pages containing the \`missing help2man' replacement text:" >&2; \
+ echo "error: found man pages containing the 'missing help2man' replacement text:" >&2; \
grep -l 'ab help2man is required to generate this page' $$list | sed 's/^/ /' >&2; \
echo " to fix them, install help2man, remove and regenerate the man pages;" >&2; \
- echo " typically \`make maintainer-clean' will remove them" >&2; \
+ echo " typically 'make maintainer-clean' will remove them" >&2; \
exit 1; \
else :; fi; \
else :; fi
done
@list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
if test "$$subdir" = .; then :; else \
- test -d "$(distdir)/$$subdir" \
- || $(MKDIR_P) "$(distdir)/$$subdir" \
- || exit 1; \
- fi; \
- done
- @list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
- if test "$$subdir" = .; then :; else \
+ $(am__make_dryrun) \
+ || test -d "$(distdir)/$$subdir" \
+ || $(MKDIR_P) "$(distdir)/$$subdir" \
+ || exit 1; \
dir1=$$subdir; dir2="$(distdir)/$$subdir"; \
$(am__relativize); \
new_distdir=$$reldir; \
uninstall-man: uninstall-man8
-.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) ctags-recursive \
- install-am install-strip tags-recursive
+.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) \
+ cscopelist-recursive ctags-recursive install-am install-strip \
+ tags-recursive
.PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \
- all all-am check check-am clean clean-generic ctags \
- ctags-recursive distclean distclean-generic distclean-tags \
- distdir dvi dvi-am html html-am info info-am install \
- install-am install-data install-data-am install-dvi \
- install-dvi-am install-exec install-exec-am install-html \
- install-html-am install-info install-info-am install-man \
- install-man8 install-pdf install-pdf-am install-ps \
- install-ps-am install-sbinSCRIPTS install-strip installcheck \
- installcheck-am installdirs installdirs-am maintainer-clean \
- maintainer-clean-generic mostlyclean mostlyclean-generic pdf \
- pdf-am ps ps-am tags tags-recursive uninstall uninstall-am \
- uninstall-man uninstall-man8 uninstall-sbinSCRIPTS
+ all all-am check check-am clean clean-generic cscopelist \
+ cscopelist-recursive ctags ctags-recursive distclean \
+ distclean-generic distclean-tags distdir dvi dvi-am html \
+ html-am info info-am install install-am install-data \
+ install-data-am install-dvi install-dvi-am install-exec \
+ install-exec-am install-html install-html-am install-info \
+ install-info-am install-man install-man8 install-pdf \
+ install-pdf-am install-ps install-ps-am install-sbinSCRIPTS \
+ install-strip installcheck installcheck-am installdirs \
+ installdirs-am maintainer-clean maintainer-clean-generic \
+ mostlyclean mostlyclean-generic pdf pdf-am ps ps-am tags \
+ tags-recursive uninstall uninstall-am uninstall-man \
+ uninstall-man8 uninstall-sbinSCRIPTS
install-man8:
exit 1
fi
else
-if [ "$distribution" = "gentoo" ]; then
- cfgfile="/etc/modules.d/alsa"
-elif [ "$kernel" = "new" ]; then
+if [ "$kernel" = "new" ]; then
cfgfile="/etc/modprobe.conf"
if [ -d /etc/modprobe.d ]; then
cfgout="/etc/modprobe.d/50-sound.conf"
cfgoldout="/etc/modprobe.d/sound"
if [ ! -f $cfgout ]; then
- modver=$(modprobe -V | sed -e's/^module-init-tools version //')
- case "$modver" in
- 3.[789]*)
+ case "$(modprobe -V)" in
+ "module-init-tools version "3.[789]*|\
+ "module-init-tools version "3.1[0-9]*)
+ ;;
+ "kmod version "*)
;;
*)
cfgout="/etc/modprobe.d/sound"
+++ /dev/null
-ACTION=="add", SUBSYSTEM=="sound", KERNEL=="controlC*", KERNELS=="card*", \
- RUN+="/usr/sbin/alsactl restore $attr{number}"
-ACTION=="add", SUBSYSTEM=="sound", KERNEL=="controlC*", KERNELS=="card*", \
- RUN+="@sbindir@/alsactl restore $attr{number}"
+ACTION=="add", SUBSYSTEM=="sound", KERNEL=="controlC*", KERNELS!="card*", TEST=="@sbindir@", TEST=="@mydatadir@", GOTO="alsa_restore_go"
+GOTO="alsa_restore_end"
+
+LABEL="alsa_restore_go"
+TEST!="@daemonswitch@", RUN+="@sbindir@/alsactl restore $attr{device/number}"
+TEST=="@daemonswitch@", RUN+="@sbindir@/alsactl nrestore $attr{device/number}"
+
+LABEL="alsa_restore_end"
endif
EXTRA_DIST=alsactl.1 alsactl_init.xml
-alsactl_SOURCES=alsactl.c state.c utils.c init_parse.c
-alsactl_CFLAGS=$(AM_CFLAGS) -DSYS_ASOUNDRC=\"$(ASOUND_STATE_DIR)/asound.state\"
-noinst_HEADERS=alsactl.h list.h init_sysdeps.c init_utils_string.c init_utils_run.c init_sysfs.c
+alsactl_SOURCES=alsactl.c state.c lock.c utils.c init_parse.c daemon.c \
+ monitor.c
-dist_udevrules_DATA = \
+alsactl_CFLAGS=$(AM_CFLAGS) -D__USE_GNU \
+ -DSYS_ASOUNDRC=\"$(ASOUND_STATE_DIR)/asound.state\" \
+ -DSYS_LOCKFILE=\"$(ASOUND_LOCK_DIR)/asound.state.lock\" \
+ -DSYS_PIDFILE=\"$(ALSACTL_PIDFILE_DIR)/alsactl.pid\"
+
+noinst_HEADERS=alsactl.h list.h init_sysdeps.c init_utils_string.c \
+ init_utils_run.c init_sysfs.c
+
+udevrules_DATA = \
90-alsa-restore.rules
if HAVE_SYSTEMD
systemdsystemunit_DATA = \
- alsa-store.service \
- alsa-restore.service
+ alsa-state.service \
+ alsa-restore.service \
+ alsa-store.service
install-data-hook:
$(MKDIR_P) -m 0755 \
$(DESTDIR)$(systemdsystemunitdir)/basic.target.wants \
$(DESTDIR)$(systemdsystemunitdir)/shutdown.target.wants
( cd $(DESTDIR)$(systemdsystemunitdir)/basic.target.wants && \
- rm -f alsa-restore.service && \
- $(LN_S) ../alsa-restore.service alsa-restore.service )
+ rm -f alsa-state.service alsa-restore.service && \
+ $(LN_S) ../alsa-state.service alsa-state.service && \
+ $(LN_S) ../alsa-restore.service alsa-restore.service)
( cd $(DESTDIR)$(systemdsystemunitdir)/shutdown.target.wants && \
rm -f alsa-store.service && \
$(LN_S) ../alsa-store.service alsa-store.service )
endif
edit = \
- $(SED) -r 's,@sbindir\@,$(sbindir),g' < $< > $@ || rm $@
+ $(SED) -r -e 's,@sbindir\@,$(sbindir),g' \
+ -e 's,@mydatadir\@,$(mydatadir),g' \
+ -e 's,@daemonswitch\@,$(ALSACTL_DAEMONSWITCH),g' \
+ < $< > $@ || rm $@
-alsa-store.service: alsa-store.service.in
+alsa-state.service: alsa-state.service.in
$(edit)
alsa-restore.service: alsa-restore.service.in
$(edit)
+alsa-store.service: alsa-store.service.in
+ $(edit)
+
90-alsa-restore.rules: 90-alsa-restore.rules.in
$(edit)
EXTRA_DIST += \
- alsa-store.service.in \
+ alsa-state.service.in \
alsa-restore.service.in \
+ alsa-store.service.in \
90-alsa-restore.rules.in
CLEANFILES = \
- alsa-store.service \
+ alsa-state.service \
alsa-restore.service \
+ alsa-store.service \
90-alsa-restore.rules
%.7: %.xml
-# Makefile.in generated by automake 1.11.3 from Makefile.am.
+# Makefile.in generated by automake 1.12.2 from Makefile.am.
# @configure_input@
-# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software
-# Foundation, Inc.
+# Copyright (C) 1994-2012 Free Software Foundation, Inc.
+
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
VPATH = @srcdir@
+am__make_dryrun = \
+ { \
+ am__dry=no; \
+ case $$MAKEFLAGS in \
+ *\\[\ \ ]*) \
+ echo 'am--echo: ; @echo "AM" OK' | $(MAKE) -f - 2>/dev/null \
+ | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
+ *) \
+ for am__flg in $$MAKEFLAGS; do \
+ case $$am__flg in \
+ *=*|--*) ;; \
+ *n*) am__dry=yes; break;; \
+ esac; \
+ done;; \
+ esac; \
+ test $$am__dry = yes; \
+ }
pkgdatadir = $(datadir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
sbin_PROGRAMS = alsactl$(EXEEXT)
@USE_XMLTO_TRUE@am__append_1 = alsactl_init.7
subdir = alsactl
-DIST_COMMON = $(dist_udevrules_DATA) $(noinst_HEADERS) \
- $(srcdir)/Makefile.am $(srcdir)/Makefile.in
+DIST_COMMON = $(noinst_HEADERS) $(srcdir)/Makefile.am \
+ $(srcdir)/Makefile.in $(top_srcdir)/depcomp
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/m4/gettext.m4 \
$(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/lib-ld.m4 \
$(top_srcdir)/m4/lib-link.m4 $(top_srcdir)/m4/lib-prefix.m4 \
$(top_srcdir)/m4/nls.m4 $(top_srcdir)/m4/po.m4 \
$(top_srcdir)/m4/progtest.m4 $(top_srcdir)/acinclude.m4 \
- $(top_srcdir)/configure.in
+ $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(install_sh) -d
CONFIG_CLEAN_FILES =
CONFIG_CLEAN_VPATH_FILES =
am__installdirs = "$(DESTDIR)$(sbindir)" "$(DESTDIR)$(man1dir)" \
- "$(DESTDIR)$(man7dir)" "$(DESTDIR)$(udevrulesdir)" \
- "$(DESTDIR)$(systemdsystemunitdir)"
+ "$(DESTDIR)$(man7dir)" "$(DESTDIR)$(systemdsystemunitdir)" \
+ "$(DESTDIR)$(udevrulesdir)"
PROGRAMS = $(sbin_PROGRAMS)
am_alsactl_OBJECTS = alsactl-alsactl.$(OBJEXT) alsactl-state.$(OBJEXT) \
- alsactl-utils.$(OBJEXT) alsactl-init_parse.$(OBJEXT)
+ alsactl-lock.$(OBJEXT) alsactl-utils.$(OBJEXT) \
+ alsactl-init_parse.$(OBJEXT) alsactl-daemon.$(OBJEXT) \
+ alsactl-monitor.$(OBJEXT)
alsactl_OBJECTS = $(am_alsactl_OBJECTS)
alsactl_LDADD = $(LDADD)
alsactl_LINK = $(CCLD) $(alsactl_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \
install-pdf-recursive install-ps-recursive install-recursive \
installcheck-recursive installdirs-recursive pdf-recursive \
ps-recursive uninstall-recursive
+am__can_run_installinfo = \
+ case $$AM_UPDATE_INFO_DIR in \
+ n|no|NO) false;; \
+ *) (install-info --version) >/dev/null 2>&1;; \
+ esac
am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
am__vpath_adj = case $$p in \
$(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
man7dir = $(mandir)/man7
NROFF = nroff
MANS = $(man_MANS)
-DATA = $(dist_udevrules_DATA) $(systemdsystemunit_DATA)
+DATA = $(systemdsystemunit_DATA) $(udevrules_DATA)
HEADERS = $(noinst_HEADERS)
RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \
distclean-recursive maintainer-clean-recursive
done; \
reldir="$$dir2"
ACLOCAL = @ACLOCAL@
+ALSACTL_DAEMONSWITCH = @ALSACTL_DAEMONSWITCH@
+ALSACTL_PIDFILE_DIR = @ALSACTL_PIDFILE_DIR@
ALSA_CFLAGS = @ALSA_CFLAGS@
ALSA_LIBS = @ALSA_LIBS@
AMTAR = @AMTAR@
+ASOUND_LOCK_DIR = @ASOUND_LOCK_DIR@
ASOUND_STATE_DIR = @ASOUND_STATE_DIR@
AUTOCONF = @AUTOCONF@
AUTOHEADER = @AUTOHEADER@
LTLIBICONV = @LTLIBICONV@
LTLIBINTL = @LTLIBINTL@
LTLIBOBJS = @LTLIBOBJS@
+MAINT = @MAINT@
MAKEINFO = @MAKEINFO@
MKDIR_P = @MKDIR_P@
MSGFMT = @MSGFMT@
localstatedir = @localstatedir@
mandir = @mandir@
mkdir_p = @mkdir_p@
+mydatadir = @mydatadir@
ncurses5_config = @ncurses5_config@
ncursesw5_config = @ncursesw5_config@
oldincludedir = @oldincludedir@
xmlto = @xmlto@
SUBDIRS = init
man_MANS = alsactl.1 $(am__append_1)
-EXTRA_DIST = alsactl.1 alsactl_init.xml alsa-store.service.in \
- alsa-restore.service.in 90-alsa-restore.rules.in
-alsactl_SOURCES = alsactl.c state.c utils.c init_parse.c
-alsactl_CFLAGS = $(AM_CFLAGS) -DSYS_ASOUNDRC=\"$(ASOUND_STATE_DIR)/asound.state\"
-noinst_HEADERS = alsactl.h list.h init_sysdeps.c init_utils_string.c init_utils_run.c init_sysfs.c
-dist_udevrules_DATA = \
+EXTRA_DIST = alsactl.1 alsactl_init.xml alsa-state.service.in \
+ alsa-restore.service.in alsa-store.service.in \
+ 90-alsa-restore.rules.in
+alsactl_SOURCES = alsactl.c state.c lock.c utils.c init_parse.c daemon.c \
+ monitor.c
+
+alsactl_CFLAGS = $(AM_CFLAGS) -D__USE_GNU \
+ -DSYS_ASOUNDRC=\"$(ASOUND_STATE_DIR)/asound.state\" \
+ -DSYS_LOCKFILE=\"$(ASOUND_LOCK_DIR)/asound.state.lock\" \
+ -DSYS_PIDFILE=\"$(ALSACTL_PIDFILE_DIR)/alsactl.pid\"
+
+noinst_HEADERS = alsactl.h list.h init_sysdeps.c init_utils_string.c \
+ init_utils_run.c init_sysfs.c
+
+udevrules_DATA = \
90-alsa-restore.rules
@HAVE_SYSTEMD_TRUE@systemdsystemunit_DATA = \
-@HAVE_SYSTEMD_TRUE@ alsa-store.service \
-@HAVE_SYSTEMD_TRUE@ alsa-restore.service
+@HAVE_SYSTEMD_TRUE@ alsa-state.service \
+@HAVE_SYSTEMD_TRUE@ alsa-restore.service \
+@HAVE_SYSTEMD_TRUE@ alsa-store.service
edit = \
- $(SED) -r 's,@sbindir\@,$(sbindir),g' < $< > $@ || rm $@
+ $(SED) -r -e 's,@sbindir\@,$(sbindir),g' \
+ -e 's,@mydatadir\@,$(mydatadir),g' \
+ -e 's,@daemonswitch\@,$(ALSACTL_DAEMONSWITCH),g' \
+ < $< > $@ || rm $@
CLEANFILES = \
- alsa-store.service \
+ alsa-state.service \
alsa-restore.service \
+ alsa-store.service \
90-alsa-restore.rules
all: all-recursive
.SUFFIXES:
.SUFFIXES: .c .o .obj
-$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps)
@for dep in $?; do \
case '$(am__configure_deps)' in \
*$$dep*) \
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-$(top_srcdir)/configure: $(am__configure_deps)
+$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-$(ACLOCAL_M4): $(am__aclocal_m4_deps)
+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(am__aclocal_m4_deps):
install-sbinPROGRAMS: $(sbin_PROGRAMS)
@$(NORMAL_INSTALL)
- test -z "$(sbindir)" || $(MKDIR_P) "$(DESTDIR)$(sbindir)"
@list='$(sbin_PROGRAMS)'; test -n "$(sbindir)" || list=; \
+ if test -n "$$list"; then \
+ echo " $(MKDIR_P) '$(DESTDIR)$(sbindir)'"; \
+ $(MKDIR_P) "$(DESTDIR)$(sbindir)" || exit 1; \
+ fi; \
for p in $$list; do echo "$$p $$p"; done | \
sed 's/$(EXEEXT)$$//' | \
while read p p1; do if test -f $$p; \
-rm -f *.tab.c
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/alsactl-alsactl.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/alsactl-daemon.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/alsactl-init_parse.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/alsactl-lock.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/alsactl-monitor.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/alsactl-state.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/alsactl-utils.Po@am__quote@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(alsactl_CFLAGS) $(CFLAGS) -c -o alsactl-state.obj `if test -f 'state.c'; then $(CYGPATH_W) 'state.c'; else $(CYGPATH_W) '$(srcdir)/state.c'; fi`
+alsactl-lock.o: lock.c
+@am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(alsactl_CFLAGS) $(CFLAGS) -MT alsactl-lock.o -MD -MP -MF $(DEPDIR)/alsactl-lock.Tpo -c -o alsactl-lock.o `test -f 'lock.c' || echo '$(srcdir)/'`lock.c
+@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/alsactl-lock.Tpo $(DEPDIR)/alsactl-lock.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='lock.c' object='alsactl-lock.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(alsactl_CFLAGS) $(CFLAGS) -c -o alsactl-lock.o `test -f 'lock.c' || echo '$(srcdir)/'`lock.c
+
+alsactl-lock.obj: lock.c
+@am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(alsactl_CFLAGS) $(CFLAGS) -MT alsactl-lock.obj -MD -MP -MF $(DEPDIR)/alsactl-lock.Tpo -c -o alsactl-lock.obj `if test -f 'lock.c'; then $(CYGPATH_W) 'lock.c'; else $(CYGPATH_W) '$(srcdir)/lock.c'; fi`
+@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/alsactl-lock.Tpo $(DEPDIR)/alsactl-lock.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='lock.c' object='alsactl-lock.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(alsactl_CFLAGS) $(CFLAGS) -c -o alsactl-lock.obj `if test -f 'lock.c'; then $(CYGPATH_W) 'lock.c'; else $(CYGPATH_W) '$(srcdir)/lock.c'; fi`
+
alsactl-utils.o: utils.c
@am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(alsactl_CFLAGS) $(CFLAGS) -MT alsactl-utils.o -MD -MP -MF $(DEPDIR)/alsactl-utils.Tpo -c -o alsactl-utils.o `test -f 'utils.c' || echo '$(srcdir)/'`utils.c
@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/alsactl-utils.Tpo $(DEPDIR)/alsactl-utils.Po
@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='init_parse.c' object='alsactl-init_parse.obj' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(alsactl_CFLAGS) $(CFLAGS) -c -o alsactl-init_parse.obj `if test -f 'init_parse.c'; then $(CYGPATH_W) 'init_parse.c'; else $(CYGPATH_W) '$(srcdir)/init_parse.c'; fi`
+
+alsactl-daemon.o: daemon.c
+@am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(alsactl_CFLAGS) $(CFLAGS) -MT alsactl-daemon.o -MD -MP -MF $(DEPDIR)/alsactl-daemon.Tpo -c -o alsactl-daemon.o `test -f 'daemon.c' || echo '$(srcdir)/'`daemon.c
+@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/alsactl-daemon.Tpo $(DEPDIR)/alsactl-daemon.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='daemon.c' object='alsactl-daemon.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(alsactl_CFLAGS) $(CFLAGS) -c -o alsactl-daemon.o `test -f 'daemon.c' || echo '$(srcdir)/'`daemon.c
+
+alsactl-daemon.obj: daemon.c
+@am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(alsactl_CFLAGS) $(CFLAGS) -MT alsactl-daemon.obj -MD -MP -MF $(DEPDIR)/alsactl-daemon.Tpo -c -o alsactl-daemon.obj `if test -f 'daemon.c'; then $(CYGPATH_W) 'daemon.c'; else $(CYGPATH_W) '$(srcdir)/daemon.c'; fi`
+@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/alsactl-daemon.Tpo $(DEPDIR)/alsactl-daemon.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='daemon.c' object='alsactl-daemon.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(alsactl_CFLAGS) $(CFLAGS) -c -o alsactl-daemon.obj `if test -f 'daemon.c'; then $(CYGPATH_W) 'daemon.c'; else $(CYGPATH_W) '$(srcdir)/daemon.c'; fi`
+
+alsactl-monitor.o: monitor.c
+@am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(alsactl_CFLAGS) $(CFLAGS) -MT alsactl-monitor.o -MD -MP -MF $(DEPDIR)/alsactl-monitor.Tpo -c -o alsactl-monitor.o `test -f 'monitor.c' || echo '$(srcdir)/'`monitor.c
+@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/alsactl-monitor.Tpo $(DEPDIR)/alsactl-monitor.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='monitor.c' object='alsactl-monitor.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(alsactl_CFLAGS) $(CFLAGS) -c -o alsactl-monitor.o `test -f 'monitor.c' || echo '$(srcdir)/'`monitor.c
+
+alsactl-monitor.obj: monitor.c
+@am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(alsactl_CFLAGS) $(CFLAGS) -MT alsactl-monitor.obj -MD -MP -MF $(DEPDIR)/alsactl-monitor.Tpo -c -o alsactl-monitor.obj `if test -f 'monitor.c'; then $(CYGPATH_W) 'monitor.c'; else $(CYGPATH_W) '$(srcdir)/monitor.c'; fi`
+@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/alsactl-monitor.Tpo $(DEPDIR)/alsactl-monitor.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='monitor.c' object='alsactl-monitor.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(alsactl_CFLAGS) $(CFLAGS) -c -o alsactl-monitor.obj `if test -f 'monitor.c'; then $(CYGPATH_W) 'monitor.c'; else $(CYGPATH_W) '$(srcdir)/monitor.c'; fi`
install-man1: $(man_MANS)
@$(NORMAL_INSTALL)
- test -z "$(man1dir)" || $(MKDIR_P) "$(DESTDIR)$(man1dir)"
- @list=''; test -n "$(man1dir)" || exit 0; \
- { for i in $$list; do echo "$$i"; done; \
- l2='$(man_MANS)'; for i in $$l2; do echo "$$i"; done | \
- sed -n '/\.1[a-z]*$$/p'; \
+ @list1=''; \
+ list2='$(man_MANS)'; \
+ test -n "$(man1dir)" \
+ && test -n "`echo $$list1$$list2`" \
+ || exit 0; \
+ echo " $(MKDIR_P) '$(DESTDIR)$(man1dir)'"; \
+ $(MKDIR_P) "$(DESTDIR)$(man1dir)" || exit 1; \
+ { for i in $$list1; do echo "$$i"; done; \
+ if test -n "$$list2"; then \
+ for i in $$list2; do echo "$$i"; done \
+ | sed -n '/\.1[a-z]*$$/p'; \
+ fi; \
} | while read p; do \
if test -f $$p; then d=; else d="$(srcdir)/"; fi; \
echo "$$d$$p"; echo "$$p"; \
dir='$(DESTDIR)$(man1dir)'; $(am__uninstall_files_from_dir)
install-man7: $(man_MANS)
@$(NORMAL_INSTALL)
- test -z "$(man7dir)" || $(MKDIR_P) "$(DESTDIR)$(man7dir)"
- @list=''; test -n "$(man7dir)" || exit 0; \
- { for i in $$list; do echo "$$i"; done; \
- l2='$(man_MANS)'; for i in $$l2; do echo "$$i"; done | \
- sed -n '/\.7[a-z]*$$/p'; \
+ @list1=''; \
+ list2='$(man_MANS)'; \
+ test -n "$(man7dir)" \
+ && test -n "`echo $$list1$$list2`" \
+ || exit 0; \
+ echo " $(MKDIR_P) '$(DESTDIR)$(man7dir)'"; \
+ $(MKDIR_P) "$(DESTDIR)$(man7dir)" || exit 1; \
+ { for i in $$list1; do echo "$$i"; done; \
+ if test -n "$$list2"; then \
+ for i in $$list2; do echo "$$i"; done \
+ | sed -n '/\.7[a-z]*$$/p'; \
+ fi; \
} | while read p; do \
if test -f $$p; then d=; else d="$(srcdir)/"; fi; \
echo "$$d$$p"; echo "$$p"; \
} | sed -e 's,.*/,,;h;s,.*\.,,;s,^[^7][0-9a-z]*$$,7,;x' \
-e 's,\.[0-9a-z]*$$,,;$(transform);G;s,\n,.,'`; \
dir='$(DESTDIR)$(man7dir)'; $(am__uninstall_files_from_dir)
-install-dist_udevrulesDATA: $(dist_udevrules_DATA)
+install-systemdsystemunitDATA: $(systemdsystemunit_DATA)
@$(NORMAL_INSTALL)
- test -z "$(udevrulesdir)" || $(MKDIR_P) "$(DESTDIR)$(udevrulesdir)"
- @list='$(dist_udevrules_DATA)'; test -n "$(udevrulesdir)" || list=; \
+ @list='$(systemdsystemunit_DATA)'; test -n "$(systemdsystemunitdir)" || list=; \
+ if test -n "$$list"; then \
+ echo " $(MKDIR_P) '$(DESTDIR)$(systemdsystemunitdir)'"; \
+ $(MKDIR_P) "$(DESTDIR)$(systemdsystemunitdir)" || exit 1; \
+ fi; \
for p in $$list; do \
if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
echo "$$d$$p"; \
done | $(am__base_list) | \
while read files; do \
- echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(udevrulesdir)'"; \
- $(INSTALL_DATA) $$files "$(DESTDIR)$(udevrulesdir)" || exit $$?; \
+ echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(systemdsystemunitdir)'"; \
+ $(INSTALL_DATA) $$files "$(DESTDIR)$(systemdsystemunitdir)" || exit $$?; \
done
-uninstall-dist_udevrulesDATA:
+uninstall-systemdsystemunitDATA:
@$(NORMAL_UNINSTALL)
- @list='$(dist_udevrules_DATA)'; test -n "$(udevrulesdir)" || list=; \
+ @list='$(systemdsystemunit_DATA)'; test -n "$(systemdsystemunitdir)" || list=; \
files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
- dir='$(DESTDIR)$(udevrulesdir)'; $(am__uninstall_files_from_dir)
-install-systemdsystemunitDATA: $(systemdsystemunit_DATA)
+ dir='$(DESTDIR)$(systemdsystemunitdir)'; $(am__uninstall_files_from_dir)
+install-udevrulesDATA: $(udevrules_DATA)
@$(NORMAL_INSTALL)
- test -z "$(systemdsystemunitdir)" || $(MKDIR_P) "$(DESTDIR)$(systemdsystemunitdir)"
- @list='$(systemdsystemunit_DATA)'; test -n "$(systemdsystemunitdir)" || list=; \
+ @list='$(udevrules_DATA)'; test -n "$(udevrulesdir)" || list=; \
+ if test -n "$$list"; then \
+ echo " $(MKDIR_P) '$(DESTDIR)$(udevrulesdir)'"; \
+ $(MKDIR_P) "$(DESTDIR)$(udevrulesdir)" || exit 1; \
+ fi; \
for p in $$list; do \
if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
echo "$$d$$p"; \
done | $(am__base_list) | \
while read files; do \
- echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(systemdsystemunitdir)'"; \
- $(INSTALL_DATA) $$files "$(DESTDIR)$(systemdsystemunitdir)" || exit $$?; \
+ echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(udevrulesdir)'"; \
+ $(INSTALL_DATA) $$files "$(DESTDIR)$(udevrulesdir)" || exit $$?; \
done
-uninstall-systemdsystemunitDATA:
+uninstall-udevrulesDATA:
@$(NORMAL_UNINSTALL)
- @list='$(systemdsystemunit_DATA)'; test -n "$(systemdsystemunitdir)" || list=; \
+ @list='$(udevrules_DATA)'; test -n "$(udevrulesdir)" || list=; \
files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
- dir='$(DESTDIR)$(systemdsystemunitdir)'; $(am__uninstall_files_from_dir)
+ dir='$(DESTDIR)$(udevrulesdir)'; $(am__uninstall_files_from_dir)
# This directory's subdirectories are mostly independent; you can cd
-# into them and run `make' without going through this Makefile.
-# To change the values of `make' variables: instead of editing Makefiles,
-# (1) if the variable is set in `config.status', edit `config.status'
-# (which will cause the Makefiles to be regenerated when you run `make');
-# (2) otherwise, pass the desired values on the `make' command line.
-$(RECURSIVE_TARGETS):
+# into them and run 'make' without going through this Makefile.
+# To change the values of 'make' variables: instead of editing Makefiles,
+# (1) if the variable is set in 'config.status', edit 'config.status'
+# (which will cause the Makefiles to be regenerated when you run 'make');
+# (2) otherwise, pass the desired values on the 'make' command line.
+$(RECURSIVE_TARGETS) $(RECURSIVE_CLEAN_TARGETS):
@fail= failcom='exit 1'; \
for f in x $$MAKEFLAGS; do \
case $$f in \
done; \
dot_seen=no; \
target=`echo $@ | sed s/-recursive//`; \
- list='$(SUBDIRS)'; for subdir in $$list; do \
+ case "$@" in \
+ distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \
+ *) list='$(SUBDIRS)' ;; \
+ esac; \
+ for subdir in $$list; do \
echo "Making $$target in $$subdir"; \
if test "$$subdir" = "."; then \
dot_seen=yes; \
if test "$$dot_seen" = "no"; then \
$(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \
fi; test -z "$$fail"
-
-$(RECURSIVE_CLEAN_TARGETS):
- @fail= failcom='exit 1'; \
- for f in x $$MAKEFLAGS; do \
- case $$f in \
- *=* | --[!k]*);; \
- *k*) failcom='fail=yes';; \
- esac; \
- done; \
- dot_seen=no; \
- case "$@" in \
- distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \
- *) list='$(SUBDIRS)' ;; \
- esac; \
- rev=''; for subdir in $$list; do \
- if test "$$subdir" = "."; then :; else \
- rev="$$subdir $$rev"; \
- fi; \
- done; \
- rev="$$rev ."; \
- target=`echo $@ | sed s/-recursive//`; \
- for subdir in $$rev; do \
- echo "Making $$target in $$subdir"; \
- if test "$$subdir" = "."; then \
- local_target="$$target-am"; \
- else \
- local_target="$$target"; \
- fi; \
- ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
- || eval $$failcom; \
- done && test -z "$$fail"
tags-recursive:
list='$(SUBDIRS)'; for subdir in $$list; do \
test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
list='$(SUBDIRS)'; for subdir in $$list; do \
test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
done
+cscopelist-recursive:
+ list='$(SUBDIRS)'; for subdir in $$list; do \
+ test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) cscopelist); \
+ done
ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
&& $(am__cd) $(top_srcdir) \
&& gtags -i $(GTAGS_ARGS) "$$here"
+cscopelist: cscopelist-recursive $(HEADERS) $(SOURCES) $(LISP)
+ list='$(SOURCES) $(HEADERS) $(LISP)'; \
+ case "$(srcdir)" in \
+ [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
+ *) sdir=$(subdir)/$(srcdir) ;; \
+ esac; \
+ for i in $$list; do \
+ if test -f "$$i"; then \
+ echo "$(subdir)/$$i"; \
+ else \
+ echo "$$sdir/$$i"; \
+ fi; \
+ done >> $(top_builddir)/cscope.files
+
distclean-tags:
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
if test -f "$$d$$p"; then echo "$$d$$p"; else :; fi; done`; \
if test -n "$$list" && \
grep 'ab help2man is required to generate this page' $$list >/dev/null; then \
- echo "error: found man pages containing the \`missing help2man' replacement text:" >&2; \
+ echo "error: found man pages containing the 'missing help2man' replacement text:" >&2; \
grep -l 'ab help2man is required to generate this page' $$list | sed 's/^/ /' >&2; \
echo " to fix them, install help2man, remove and regenerate the man pages;" >&2; \
- echo " typically \`make maintainer-clean' will remove them" >&2; \
+ echo " typically 'make maintainer-clean' will remove them" >&2; \
exit 1; \
else :; fi; \
else :; fi
done
@list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
if test "$$subdir" = .; then :; else \
- test -d "$(distdir)/$$subdir" \
- || $(MKDIR_P) "$(distdir)/$$subdir" \
- || exit 1; \
- fi; \
- done
- @list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
- if test "$$subdir" = .; then :; else \
+ $(am__make_dryrun) \
+ || test -d "$(distdir)/$$subdir" \
+ || $(MKDIR_P) "$(distdir)/$$subdir" \
+ || exit 1; \
dir1=$$subdir; dir2="$(distdir)/$$subdir"; \
$(am__relativize); \
new_distdir=$$reldir; \
all-am: Makefile $(PROGRAMS) $(MANS) $(DATA) $(HEADERS)
installdirs: installdirs-recursive
installdirs-am:
- for dir in "$(DESTDIR)$(sbindir)" "$(DESTDIR)$(man1dir)" "$(DESTDIR)$(man7dir)" "$(DESTDIR)$(udevrulesdir)" "$(DESTDIR)$(systemdsystemunitdir)"; do \
+ for dir in "$(DESTDIR)$(sbindir)" "$(DESTDIR)$(man1dir)" "$(DESTDIR)$(man7dir)" "$(DESTDIR)$(systemdsystemunitdir)" "$(DESTDIR)$(udevrulesdir)"; do \
test -z "$$dir" || $(MKDIR_P) "$$dir"; \
done
install: install-recursive
info-am:
-install-data-am: install-dist_udevrulesDATA install-man \
- install-systemdsystemunitDATA
+install-data-am: install-man install-systemdsystemunitDATA \
+ install-udevrulesDATA
@$(NORMAL_INSTALL)
$(MAKE) $(AM_MAKEFLAGS) install-data-hook
install-dvi: install-dvi-recursive
ps-am:
-uninstall-am: uninstall-dist_udevrulesDATA uninstall-man \
- uninstall-sbinPROGRAMS uninstall-systemdsystemunitDATA
+uninstall-am: uninstall-man uninstall-sbinPROGRAMS \
+ uninstall-systemdsystemunitDATA uninstall-udevrulesDATA
uninstall-man: uninstall-man1 uninstall-man7
-.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) ctags-recursive \
- install-am install-data-am install-strip tags-recursive
+.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) \
+ cscopelist-recursive ctags-recursive install-am \
+ install-data-am install-strip tags-recursive
.PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \
all all-am check check-am clean clean-generic \
- clean-sbinPROGRAMS ctags ctags-recursive distclean \
- distclean-compile distclean-generic distclean-tags distdir dvi \
- dvi-am html html-am info info-am install install-am \
- install-data install-data-am install-data-hook \
- install-dist_udevrulesDATA install-dvi install-dvi-am \
- install-exec install-exec-am install-html install-html-am \
- install-info install-info-am install-man install-man1 \
- install-man7 install-pdf install-pdf-am install-ps \
- install-ps-am install-sbinPROGRAMS install-strip \
- install-systemdsystemunitDATA installcheck installcheck-am \
- installdirs installdirs-am maintainer-clean \
- maintainer-clean-generic mostlyclean mostlyclean-compile \
- mostlyclean-generic pdf pdf-am ps ps-am tags tags-recursive \
- uninstall uninstall-am uninstall-dist_udevrulesDATA \
- uninstall-man uninstall-man1 uninstall-man7 \
- uninstall-sbinPROGRAMS uninstall-systemdsystemunitDATA
+ clean-sbinPROGRAMS cscopelist cscopelist-recursive ctags \
+ ctags-recursive distclean distclean-compile distclean-generic \
+ distclean-tags distdir dvi dvi-am html html-am info info-am \
+ install install-am install-data install-data-am \
+ install-data-hook install-dvi install-dvi-am install-exec \
+ install-exec-am install-html install-html-am install-info \
+ install-info-am install-man install-man1 install-man7 \
+ install-pdf install-pdf-am install-ps install-ps-am \
+ install-sbinPROGRAMS install-strip \
+ install-systemdsystemunitDATA install-udevrulesDATA \
+ installcheck installcheck-am installdirs installdirs-am \
+ maintainer-clean maintainer-clean-generic mostlyclean \
+ mostlyclean-compile mostlyclean-generic pdf pdf-am ps ps-am \
+ tags tags-recursive uninstall uninstall-am uninstall-man \
+ uninstall-man1 uninstall-man7 uninstall-sbinPROGRAMS \
+ uninstall-systemdsystemunitDATA uninstall-udevrulesDATA
@HAVE_SYSTEMD_TRUE@install-data-hook:
@HAVE_SYSTEMD_TRUE@ $(DESTDIR)$(systemdsystemunitdir)/basic.target.wants \
@HAVE_SYSTEMD_TRUE@ $(DESTDIR)$(systemdsystemunitdir)/shutdown.target.wants
@HAVE_SYSTEMD_TRUE@ ( cd $(DESTDIR)$(systemdsystemunitdir)/basic.target.wants && \
-@HAVE_SYSTEMD_TRUE@ rm -f alsa-restore.service && \
-@HAVE_SYSTEMD_TRUE@ $(LN_S) ../alsa-restore.service alsa-restore.service )
+@HAVE_SYSTEMD_TRUE@ rm -f alsa-state.service alsa-restore.service && \
+@HAVE_SYSTEMD_TRUE@ $(LN_S) ../alsa-state.service alsa-state.service && \
+@HAVE_SYSTEMD_TRUE@ $(LN_S) ../alsa-restore.service alsa-restore.service)
@HAVE_SYSTEMD_TRUE@ ( cd $(DESTDIR)$(systemdsystemunitdir)/shutdown.target.wants && \
@HAVE_SYSTEMD_TRUE@ rm -f alsa-store.service && \
@HAVE_SYSTEMD_TRUE@ $(LN_S) ../alsa-store.service alsa-store.service )
-alsa-store.service: alsa-store.service.in
+alsa-state.service: alsa-state.service.in
$(edit)
alsa-restore.service: alsa-restore.service.in
$(edit)
+alsa-store.service: alsa-store.service.in
+ $(edit)
+
90-alsa-restore.rules: 90-alsa-restore.rules.in
$(edit)
+#
+# Note that two different ALSA card state management schemes exist and they
+# can be switched using a file exist check - /etc/alsa/state-daemon.conf .
+#
+
[Unit]
Description=Restore Sound Card State
+ConditionPathExists=!@daemonswitch@
DefaultDependencies=no
-After=sysinit.target
+After=alsa-state.service
Before=shutdown.target
Conflicts=shutdown.target
--- /dev/null
+#
+# Note that two different ALSA card state management schemes exist and they
+# can be switched using a file exist check - /etc/alsa/state-daemon.conf .
+#
+
+[Unit]
+Description=Manage Sound Card State (restore and store)
+ConditionPathExists=@daemonswitch@
+DefaultDependencies=no
+After=sysinit.target
+Before=shutdown.target
+Conflicts=shutdown.target
+
+[Service]
+Type=simple
+ExecStart=-@sbindir@/alsactl -s -n 19 -c rdaemon
+ExecStop=-@sbindir@/alsactl -s kill save_and_quit
+#
+# Note that two different ALSA card state management schemes exist and they
+# can be switched using a file exist check - /etc/alsa/state-daemon.conf .
+#
+
[Unit]
Description=Store Sound Card State
+ConditionPathExists=!@daemonswitch@
DefaultDependencies=no
Before=shutdown.target
-.TH ALSACTL 1 "15 May 2001"
+.TH ALSACTL 1 "07 May 2014"
.SH NAME
alsactl \- advanced controls for ALSA soundcard driver
\fBalsactl\fP [\fIoptions\fP] [\fIstore\fP|\fIrestore\fP|\fIinit\fP] <card # or id or device>
+\fBalsactl\fP \fImonitor\fP <card # or id>
+
.SH DESCRIPTION
\fBalsactl\fP is used to control advanced settings for the ALSA
soundcard drivers. It supports multiple soundcards. If your card has
configuration file. If restoring fails (eventually partly), the init
action is called.
+\fInrestore\fP is like \fIrestore\fP, but it notifies also the daemon
+to do new rescan for available soundcards.
+
\fIinit\fP tries to initialize all devices to a default state. If device
is not known, error code 99 is returned.
-If no soundcards are specified, setup for all cards will be saved or
-loaded.
+\fIdaemon\fP manages to save periodically the sound state.
+
+\fIrdaemon\fP like \fIdaemon\fP but restore the sound state at first.
+
+\fIkill\fP notifies the daemon to do the specified operation (quit,
+rescan, save_and_quit).
+
+\fImonitor\fP is for monitoring the events received from the given
+control device.
+
+If no soundcards are specified, setup for all cards will be saved,
+loaded or monitored.
.SH OPTIONS
Select the configuration file to use. The default is /var/lib/alsa/asound.state.
.TP
+\fI\-l, \-\-lock\fP
+Use the file locking to serialize the concurrent access to the state file (this
+option is default for the global state file).
+
+.TP
+\fI\-L, \-\-no-lock\fP
+Do not use the file locking to serialize the concurrent access to the state
+file (including the global state file).
+
+.TP
+\fI\-O, \-\-lock-state-file\fP
+Select the state lock file path.
+
+.TP
\fI\-F, \-\-force\fP
Used with restore command. Try to restore the matching control elements
as much as possible. This option is set as default now.
useful for "boot" scripts).
.TP
-\fI\-i, \-\-initfile\fP #=#
+\fI\-i, \-\-initfile\fP
The configuration file for init. By default, PREFIX/share/alsa/init/00main
is used.
+.TP
+\fI\-p, \-\-period\fP
+The store period in seconds for the daemon command.
+
+.TP
+\fI\-e, \-\-pid-file\fP
+The pathname to store the process-id file in the HDB UUCP format (ASCII).
+
+.TP
+\fI\-b, \-\-background\fP
+Run the task in background.
+
+.TP
+\fI\-s, \-\-syslog\fP
+Use syslog for messages.
+
+.TP
+\fI\-n, \-\-nice\fP
+Set the process priority (see 'man nice')
+
+.TP
+\fI\-c, \-\-sched-idle\fP
+Set the process scheduling policy to idle (SCHED_IDLE).
+
.SH FILES
\fI/var/lib/alsa/asound.state\fP (or whatever file you specify with the
\fB\-f\fP flag) is used to store current settings for your
#include <stdio.h>
#include <assert.h>
#include <errno.h>
+#include <syslog.h>
+#include <sched.h>
#include <alsa/asoundlib.h>
#include "alsactl.h"
#ifndef SYS_ASOUNDRC
#define SYS_ASOUNDRC "/var/lib/alsa/asound.state"
#endif
+#ifndef SYS_PIDFILE
+#define SYS_PIDFILE "/var/run/alsactl.pid"
+#endif
+#ifndef SYS_LOCKPATH
+#define SYS_LOCKPATH "/var/lock"
+#endif
int debugflag = 0;
int force_restore = 1;
int ignore_nocards = 0;
+int do_lock = 0;
+int use_syslog = 0;
char *command;
char *statefile = NULL;
+char *lockfile = SYS_LOCKFILE;
+
+#define TITLE 0x0100
+#define HEADER 0x0200
+#define FILEARG 0x0400
+#define ENVARG 0x0800
+#define INTARG 0x1000
+#define EMPCMD 0x2000
+#define CARDCMD 0x4000
+#define KILLCMD 0x8000
+
+struct arg {
+ int sarg;
+ char *larg;
+ char *comment;
+};
+
+static struct arg args[] = {
+{ TITLE, NULL, "Usage: alsactl <options> command" },
+{ HEADER, NULL, "global options:" },
+{ 'h', "help", "this help" },
+{ 'd', "debug", "debug mode" },
+{ 'v', "version", "print version of this program" },
+{ HEADER, NULL, "Available state options:" },
+{ FILEARG | 'f', "file", "configuration file (default " SYS_ASOUNDRC ")" },
+{ 'l', "lock", "use file locking to serialize concurrent access" },
+{ 'L', "no-lock", "do not use file locking to serialize concurrent access" },
+{ FILEARG | 'O', "lock-state-file", "state lock file path (default " SYS_LOCKFILE ")" },
+{ 'F', "force", "try to restore the matching controls as much as possible" },
+{ 0, NULL, " (default mode)" },
+{ 'g', "ignore", "ignore 'No soundcards found' error" },
+{ 'P', "pedantic", "do not restore mismatching controls (old default)" },
+{ 'I', "no-init-fallback", "" },
+{ 0, NULL, "don't initialize even if restore fails" },
+{ FILEARG | 'r', "runstate", "save restore and init state to this file (only errors)" },
+{ 0, NULL, " default settings is 'no file set'" },
+{ 'R', "remove", "remove runstate file at first, otherwise append errors" },
+{ INTARG | 'p', "period", "store period in seconds for the daemon command" },
+{ FILEARG | 'e', "pid-file", "pathname for the process id (daemon mode)" },
+{ HEADER, NULL, "Available init options:" },
+{ ENVARG | 'E', "env", "set environment variable for init phase (NAME=VALUE)" },
+{ FILEARG | 'i', "initfile", "main configuation file for init phase" },
+{ 0, NULL, " (default " DATADIR "/init/00main)" },
+{ 'b', "background", "run daemon in background" },
+{ 's', "syslog", "use syslog for messages" },
+{ INTARG | 'n', "nice", "set the process priority (see 'man nice')" },
+{ 'c', "sched-idle", "set the process scheduling policy to idle (SCHED_IDLE)" },
+{ HEADER, NULL, "Available commands:" },
+{ CARDCMD, "store", "save current driver setup for one or each soundcards" },
+{ EMPCMD, NULL, " to configuration file" },
+{ CARDCMD, "restore", "load current driver setup for one or each soundcards" },
+{ EMPCMD, NULL, " from configuration file" },
+{ CARDCMD, "nrestore", "like restore, but notify the daemon to rescan soundcards" },
+{ CARDCMD, "init", "initialize driver to a default state" },
+{ CARDCMD, "daemon", "store state periodically for one or each soundcards" },
+{ CARDCMD, "rdaemon", "like daemon but do the state restore at first" },
+{ KILLCMD, "kill", "notify daemon to quit, rescan or save_and_quit" },
+{ CARDCMD, "monitor", "monitor control events" },
+{ 0, NULL, NULL }
+};
static void help(void)
{
- printf("Usage: alsactl <options> command\n");
- printf("\nAvailable global options:\n");
- printf(" -h,--help this help\n");
- printf(" -d,--debug debug mode\n");
- printf(" -v,--version print version of this program\n");
- printf("\nAvailable state options:\n");
- printf(" -f,--file # configuration file (default " SYS_ASOUNDRC ")\n");
- printf(" -F,--force try to restore the matching controls as much as possible\n");
- printf(" (default mode)\n");
- printf(" -g,--ignore ignore 'No soundcards found' error\n");
- printf(" -P,--pedantic do not restore mismatching controls (old default)\n");
- printf(" -I,--no-init-fallback\n"
- " don't initialize even if restore fails\n");
- printf(" -r,--runstate # save restore and init state to this file (only errors)\n");
- printf(" default settings is 'no file set'\n");
- printf(" -R,--remove remove runstate file at first, otherwise append errors\n");
- printf("\nAvailable init options:\n");
- printf(" -E,--env #=# set environment variable for init phase (NAME=VALUE)\n");
- printf(" -i,--initfile # main configuation file for init phase (default " DATADIR "/init/00main)\n");
- printf("\n");
- printf("\nAvailable commands:\n");
- printf(" store <card #> save current driver setup for one or each soundcards\n");
- printf(" to configuration file\n");
- printf(" restore <card #> load current driver setup for one or each soundcards\n");
- printf(" from configuration file\n");
- printf(" init <card #> initialize driver to a default state\n");
+ struct arg *n = args, *a;
+ char *larg, sa[4], buf[32];
+ int sarg;
+
+ sa[0] = '-';
+ sa[2] = ',';
+ sa[3] = '\0';
+ while (n->comment) {
+ a = n;
+ n++;
+ sarg = a->sarg;
+ if (sarg & (HEADER|TITLE)) {
+ printf("%s%s\n", (sarg & HEADER) != 0 ? "\n" : "",
+ a->comment);
+ continue;
+ }
+ buf[0] = '\0';
+ larg = a->larg;
+ if (sarg & (EMPCMD|CARDCMD|KILLCMD)) {
+ if (sarg & CARDCMD)
+ strcat(buf, "<card>");
+ else if (sarg & KILLCMD)
+ strcat(buf, "<cmd>");
+ printf(" %-8s %-6s %s\n", larg ? larg : "",
+ buf, a->comment);
+ continue;
+ }
+ sa[1] = a->sarg;
+ sprintf(buf, "%s%s%s", sa[1] ? sa : "",
+ larg ? "--" : "", larg ? larg : "");
+ if (sarg & ENVARG)
+ strcat(buf, " #=#");
+ else if (sarg & (FILEARG|INTARG))
+ strcat(buf, " #");
+ printf(" %-15s %s\n", buf, a->comment);
+ }
+}
+
+#define NO_NICE (-100000)
+
+static void do_nice(int use_nice, int sched_idle)
+{
+ struct sched_param sched_param;
+
+ if (use_nice != NO_NICE && nice(use_nice) < 0)
+ error("nice(%i): %s", use_nice, strerror(errno));
+ if (sched_idle) {
+ if (sched_getparam(0, &sched_param) >= 0) {
+ sched_param.sched_priority = 0;
+ if (!sched_setscheduler(0, SCHED_RR, &sched_param))
+ error("sched_setparam failed: %s", strerror(errno));
+ } else {
+ error("sched_getparam failed: %s", strerror(errno));
+ }
+ }
}
int main(int argc, char *argv[])
{
- static const struct option long_option[] =
- {
- {"help", 0, NULL, 'h'},
- {"file", 1, NULL, 'f'},
- {"env", 1, NULL, 'E'},
- {"initfile", 1, NULL, 'i'},
- {"no-init-fallback", 0, NULL, 'I'},
- {"force", 0, NULL, 'F'},
- {"ignore", 0, NULL, 'g'},
- {"pedantic", 0, NULL, 'P'},
- {"runstate", 0, NULL, 'r'},
- {"remove", 0, NULL, 'R'},
- {"debug", 0, NULL, 'd'},
- {"version", 0, NULL, 'v'},
- {NULL, 0, NULL, 0},
- };
static const char *const devfiles[] = {
"/dev/snd/controlC",
"/dev/snd/pcmC",
};
char *cfgfile = SYS_ASOUNDRC;
char *initfile = DATADIR "/init/00main";
+ char *pidfile = SYS_PIDFILE;
char *cardname, ncardname[16];
+ char *cmd;
const char *const *tmp;
int removestate = 0;
int init_fallback = 1; /* new default behavior */
- int res;
+ int period = 5*60;
+ int background = 0;
+ int daemoncmd = 0;
+ int use_nice = NO_NICE;
+ int sched_idle = 0;
+ struct arg *a;
+ struct option *o;
+ int i, j, k, res;
+ struct option *long_option;
+ char *short_option;
+ long_option = calloc(ARRAY_SIZE(args), sizeof(struct option));
+ if (long_option == NULL)
+ exit(EXIT_FAILURE);
+ short_option = malloc(128);
+ if (short_option == NULL) {
+ free(long_option);
+ exit(EXIT_FAILURE);
+ }
+ for (i = j = k = 0; i < ARRAY_SIZE(args); i++) {
+ a = &args[i];
+ if ((a->sarg & 0xff) == 0)
+ continue;
+ o = &long_option[j];
+ o->name = a->larg;
+ o->has_arg = (a->sarg & (ENVARG|FILEARG|INTARG)) != 0;
+ o->flag = NULL;
+ o->val = a->sarg & 0xff;
+ j++;
+ short_option[k++] = o->val;
+ if (o->has_arg)
+ short_option[k++] = ':';
+ }
+ short_option[k] = '\0';
command = argv[0];
while (1) {
int c;
- if ((c = getopt_long(argc, argv, "hdvf:FgE:i:IPr:R", long_option, NULL)) < 0)
+ if ((c = getopt_long(argc, argv, short_option, long_option,
+ NULL)) < 0)
break;
switch (c) {
case 'h':
help();
- return EXIT_SUCCESS;
+ res = EXIT_SUCCESS;
+ goto out;
case 'f':
cfgfile = optarg;
break;
+ case 'l':
+ do_lock = 1;
+ break;
+ case 'L':
+ do_lock = -1;
+ break;
+ case 'O':
+ lockfile = optarg;
+ break;
case 'F':
force_restore = 1;
break;
case 'E':
if (putenv(optarg)) {
fprintf(stderr, "environment string '%s' is wrong\n", optarg);
- return EXIT_FAILURE;
+ res = EXIT_FAILURE;
+ goto out;
}
break;
case 'i':
case 'P':
force_restore = 0;
break;
+ case 'p':
+ period = atoi(optarg);
+ if (period < 10)
+ period = 5*60;
+ else if (period > 24*60*60)
+ period = 24*60*60;
+ break;
+ case 'e':
+ pidfile = optarg;
+ break;
+ case 'b':
+ background = 1;
+ break;
+ case 's':
+ use_syslog = 1;
+ break;
+ case 'n':
+ use_nice = atoi(optarg);
+ if (use_nice < -20)
+ use_nice = -20;
+ else if (use_nice > 19)
+ use_nice = 19;
+ break;
+ case 'c':
+ sched_idle = 1;
+ break;
case 'd':
debugflag = 1;
break;
case 'v':
printf("alsactl version " SND_UTIL_VERSION_STR "\n");
- return EXIT_SUCCESS;
+ res = EXIT_SUCCESS;
+ goto out;
case '?': // error msg already printed
help();
- return EXIT_FAILURE;
- break;
+ res = EXIT_FAILURE;
+ goto out;
default: // should never happen
fprintf(stderr,
"Invalid option '%c' (%d) not handled??\n", c, c);
}
}
+ free(short_option);
+ short_option = NULL;
+ free(long_option);
+ long_option = NULL;
if (argc - optind <= 0) {
fprintf(stderr, "alsactl: Specify command...\n");
- return 0;
+ res = 0;
+ goto out;
}
cardname = argc - optind > 1 ? argv[optind + 1] : NULL;
}
}
- if (!strcmp(argv[optind], "init")) {
+ /* the global system file should be always locked */
+ if (strcmp(cfgfile, SYS_ASOUNDRC) == 0 && do_lock >= 0)
+ do_lock = 1;
+
+ /* when running in background, use syslog for reports */
+ if (background) {
+ use_syslog = 1;
+ daemon(0, 0);
+ }
+
+ cmd = argv[optind];
+ daemoncmd = strcmp(cmd, "daemon") == 0 || strcmp(cmd, "rdaemon") == 0;
+
+ if (use_syslog) {
+ openlog("alsactl", LOG_CONS|LOG_PID, LOG_DAEMON);
+ if (daemoncmd)
+ syslog(LOG_INFO, "alsactl " SND_UTIL_VERSION_STR " daemon started");
+ }
+
+ if (!strcmp(cmd, "init")) {
res = init(initfile, cardname);
- } else if (!strcmp(argv[optind], "store")) {
+ snd_config_update_free_global();
+ } else if (!strcmp(cmd, "store")) {
res = save_state(cfgfile, cardname);
- } else if (!strcmp(argv[optind], "restore")) {
+ } else if (!strcmp(cmd, "restore") ||
+ !strcmp(cmd, "rdaemon") ||
+ !strcmp(cmd, "nrestore")) {
if (removestate)
remove(statefile);
res = load_state(cfgfile, initfile, cardname, init_fallback);
+ if (!strcmp(cmd, "rdaemon")) {
+ do_nice(use_nice, sched_idle);
+ res = state_daemon(cfgfile, cardname, period, pidfile);
+ }
+ if (!strcmp(cmd, "nrestore"))
+ res = state_daemon_kill(pidfile, "rescan");
+ } else if (!strcmp(cmd, "daemon")) {
+ do_nice(use_nice, sched_idle);
+ res = state_daemon(cfgfile, cardname, period, pidfile);
+ } else if (!strcmp(cmd, "kill")) {
+ res = state_daemon_kill(pidfile, cardname);
+ } else if (!strcmp(cmd, "monitor")) {
+ res = monitor(cardname);
} else {
- fprintf(stderr, "alsactl: Unknown command '%s'...\n",
- argv[optind]);
+ fprintf(stderr, "alsactl: Unknown command '%s'...\n", cmd);
res = -ENODEV;
}
snd_config_update_free_global();
+ if (use_syslog) {
+ if (daemoncmd)
+ syslog(LOG_INFO, "alsactl daemon stopped");
+ closelog();
+ }
return res < 0 ? -res : 0;
+
+out:
+ free(short_option);
+ free(long_option);
+ return res;
}
extern int debugflag;
extern int force_restore;
extern int ignore_nocards;
+extern int do_lock;
+extern int use_syslog;
extern char *command;
extern char *statefile;
+extern char *lockfile;
-#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 95)
-#define info(...) do {\
- fprintf(stdout, "%s: %s:%d: ", command, __FUNCTION__, __LINE__); \
- fprintf(stdout, __VA_ARGS__); \
- putc('\n', stdout); \
-} while (0)
-#else
-#define info(args...) do {\
- fprintf(stdout, "%s: %s:%d: ", command, __FUNCTION__, __LINE__); \
- fprintf(stdout, ##args); \
- putc('\n', stdout); \
-} while (0)
-#endif
-
-#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 95)
-#define error(...) do {\
- fprintf(stderr, "%s: %s:%d: ", command, __FUNCTION__, __LINE__); \
- fprintf(stderr, __VA_ARGS__); \
- putc('\n', stderr); \
-} while (0)
-#else
-#define error(args...) do {\
- fprintf(stderr, "%s: %s:%d: ", command, __FUNCTION__, __LINE__); \
- fprintf(stderr, ##args); \
- putc('\n', stderr); \
-} while (0)
-#endif
-
-#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 95)
-#define cerror(cond, ...) do {\
- if (cond || debugflag) { \
- fprintf(stderr, "%s%s: %s:%d: ", debugflag ? "WARNING: " : "", command, __FUNCTION__, __LINE__); \
- fprintf(stderr, __VA_ARGS__); \
- putc('\n', stderr); \
- } \
-} while (0)
-#else
-#define cerror(cond, args...) do {\
- if (cond || debugflag) { \
- fprintf(stderr, "%s%s: %s:%d: ", debugflag ? "WARNING: " : "", command, __FUNCTION__, __LINE__); \
- fprintf(stderr, ##args); \
- putc('\n', stderr); \
- } \
-} while (0)
-#endif
+void info_(const char *fcn, long line, const char *fmt, ...);
+void error_(const char *fcn, long line, const char *fmt, ...);
+void cerror_(const char *fcn, long line, int cond, const char *fmt, ...);
+void dbg_(const char *fcn, long line, const char *fmt, ...);
#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 95)
-#define dbg(...) do {\
- if (!debugflag) break; \
- fprintf(stderr, "%s: %s:%d: ", command, __FUNCTION__, __LINE__); \
- fprintf(stderr, __VA_ARGS__); \
- putc('\n', stderr); \
-} while (0)
+#define info(...) do { info_(__FUNCTION__, __LINE__, __VA_ARGS__); } while (0)
+#define error(...) do { error_(__FUNCTION__, __LINE__, __VA_ARGS__); } while (0)
+#define cerror(cond, ...) do { cerror_(__FUNCTION__, __LINE__, (cond) != 0, __VA_ARGS__); } while (0)
+#define dbg(...) do { dbg_(__FUNCTION__, __LINE__, __VA_ARGS__); } while (0)
#else
-#define dbg(args...) do {\
- if (!debugflag) break; \
- fprintf(stderr, "%s: %s:%d: ", command, __FUNCTION__, __LINE__); \
- fprintf(stderr, ##args); \
- putc('\n', stderr); \
-} while (0)
+#define info(args...) do { info_(__FUNCTION__, __LINE__, ##args); } while (0)
+#define error(args...) do { error_(__FUNCTION__, __LINE__, ##args); } while (0)
+#define cerror(cond, ...) do { error_(__FUNCTION__, __LINE__, (cond) != 0, ##args); } while (0)
+#define dbg(args...) do { dbg_(__FUNCTION__, __LINE__, ##args); } while (0)
#endif
int init(const char *file, const char *cardname);
+int state_lock(const char *file, int lock, int timeout);
int save_state(const char *file, const char *cardname);
int load_state(const char *file, const char *initfile, const char *cardname,
int do_init);
int power(const char *argv[], int argc);
-int generate_names(const char *cfgfile);
+int state_daemon(const char *file, const char *cardname, int period,
+ const char *pidfile);
+int state_daemon_kill(const char *pidfile, const char *cmd);
/* utils */
return -1;
return c;
}
+
+#define ARRAY_SIZE(a) (sizeof (a) / sizeof (a)[0])
--- /dev/null
+/*
+ * Advanced Linux Sound Architecture Control Program
+ * Copyright (c) by Jaroslav Kysela <perex@perex.cz>
+ *
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ *
+ */
+
+#include "aconfig.h"
+#include "version.h"
+#include <getopt.h>
+#include <stdarg.h>
+#include <stdio.h>
+#include <assert.h>
+#include <errno.h>
+#include <signal.h>
+#include <time.h>
+#include <poll.h>
+#include <alsa/asoundlib.h>
+#include "alsactl.h"
+
+struct id_list {
+ snd_ctl_elem_id_t **list;
+ int size;
+};
+
+struct card {
+ int index;
+ int pfds;
+ snd_ctl_t *handle;
+ struct id_list whitelist;
+ struct id_list blacklist;
+};
+
+static int quit = 0;
+static int rescan = 0;
+static int save_now = 0;
+
+static void signal_handler_quit(int sig)
+{
+ quit = 1;
+ signal(sig, signal_handler_quit);
+}
+
+static void signal_handler_save_and_quit(int sig)
+{
+ quit = save_now = 1;
+ signal(sig, signal_handler_quit);
+}
+
+static void signal_handler_rescan(int sig)
+{
+ rescan = 1;
+ signal(sig, signal_handler_rescan);
+}
+
+static void free_list(struct id_list *list)
+{
+ int i;
+
+ for (i = 0; i < list->size; i++)
+ free(list->list[i]);
+ free(list->list);
+}
+
+static void card_free(struct card **card)
+{
+ struct card *c = *card;
+
+ free_list(&c->blacklist);
+ free_list(&c->whitelist);
+ if (c->handle)
+ snd_ctl_close(c->handle);
+ free(c);
+ *card = NULL;
+}
+
+static void add_card(struct card ***cards, int *count, const char *cardname)
+{
+ struct card *card, **cc;
+ int i, index, findex;
+ char device[16];
+
+ index = snd_card_get_index(cardname);
+ if (index < 0)
+ return;
+ for (i = 0, findex = -1; i < *count; i++) {
+ if ((*cards)[i] == NULL) {
+ findex = i;
+ } else {
+ if ((*cards)[i]->index == index)
+ return;
+ }
+ }
+ card = calloc(1, sizeof(*card));
+ if (card == NULL)
+ return;
+ card->index = index;
+ sprintf(device, "hw:%i", index);
+ if (snd_ctl_open(&card->handle, device, SND_CTL_READONLY|SND_CTL_NONBLOCK) < 0) {
+ card_free(&card);
+ return;
+ }
+ card->pfds = snd_ctl_poll_descriptors_count(card->handle);
+ if (card->pfds < 0) {
+ card_free(&card);
+ return;
+ }
+ if (snd_ctl_subscribe_events(card->handle, 1) < 0) {
+ card_free(&card);
+ return;
+ }
+ if (findex >= 0) {
+ (*cards)[findex] = card;
+ } else {
+ cc = realloc(*cards, sizeof(void *) * (*count + 1));
+ if (cc == NULL) {
+ card_free(&card);
+ return;
+ }
+ cc[*count] = card;
+ *count = *count + 1;
+ *cards = cc;
+ }
+}
+
+static void add_cards(struct card ***cards, int *count)
+{
+ int card = -1;
+ char cardname[16];
+
+ while (1) {
+ if (snd_card_next(&card) < 0)
+ break;
+ if (card < 0)
+ break;
+ if (card >= 0) {
+ sprintf(cardname, "%i", card);
+ add_card(cards, count, cardname);
+ }
+ }
+}
+
+static int compare_ids(snd_ctl_elem_id_t *id1, snd_ctl_elem_id_t *id2)
+{
+ if (id1 == NULL || id2 == NULL)
+ return 0;
+ return snd_ctl_elem_id_get_interface(id1) == snd_ctl_elem_id_get_interface(id2) &&
+ snd_ctl_elem_id_get_index(id1) == snd_ctl_elem_id_get_index(id2) &&
+ strcmp(snd_ctl_elem_id_get_name(id1), snd_ctl_elem_id_get_name(id2)) == 0 &&
+ snd_ctl_elem_id_get_device(id1) == snd_ctl_elem_id_get_device(id2) &&
+ snd_ctl_elem_id_get_subdevice(id1) == snd_ctl_elem_id_get_subdevice(id2);
+}
+
+static int in_list(struct id_list *list, snd_ctl_elem_id_t *id)
+{
+ int i;
+ snd_ctl_elem_id_t *id1;
+
+ for (i = 0; i < list->size; i++) {
+ id1 = list->list[i];
+ if (id1 == NULL)
+ continue;
+ if (compare_ids(id, id1))
+ return 1;
+ }
+ return 0;
+}
+
+static void remove_from_list(struct id_list *list, snd_ctl_elem_id_t *id)
+{
+ int i;
+
+ for (i = 0; i < list->size; i++) {
+ if (compare_ids(id, list->list[i])) {
+ free(list->list[i]);
+ list->list[i] = NULL;
+ }
+ }
+}
+
+static void add_to_list(struct id_list *list, snd_ctl_elem_id_t *id)
+{
+ snd_ctl_elem_id_t *id1;
+ snd_ctl_elem_id_t **n;
+ int i;
+
+ if (snd_ctl_elem_id_malloc(&id1))
+ return;
+ snd_ctl_elem_id_copy(id1, id);
+ for (i = 0; i < list->size; i++) {
+ if (list->list[i] == NULL) {
+ list->list[i] = id1;
+ return;
+ }
+ }
+ n = realloc(list->list, sizeof(void *) * (list->size + 1));
+ if (n == NULL)
+ return;
+ n[list->size] = id1;
+ list->size++;
+ list->list = n;
+}
+
+static int check_lists(struct card *card, snd_ctl_elem_id_t *id)
+{
+ snd_ctl_elem_info_t *info;
+ snd_ctl_elem_info_alloca(&info);
+
+ if (in_list(&card->blacklist, id))
+ return 0;
+ if (in_list(&card->whitelist, id))
+ return 1;
+ snd_ctl_elem_info_set_id(info, id);
+ if (snd_ctl_elem_info(card->handle, info) < 0)
+ return 0;
+ if (snd_ctl_elem_info_is_writable(info) ||
+ snd_ctl_elem_info_is_tlv_writable(info)) {
+ add_to_list(&card->whitelist, id);
+ return 1;
+ } else {
+ add_to_list(&card->blacklist, id);
+ return 0;
+ }
+}
+
+static int card_events(struct card *card)
+{
+ int res = 0;
+ snd_ctl_event_t *ev;
+ snd_ctl_event_type_t type;
+ unsigned int mask;
+ snd_ctl_elem_id_t *id;
+ snd_ctl_event_alloca(&ev);
+ snd_ctl_elem_id_alloca(&id);
+
+ while (snd_ctl_read(card->handle, ev) == 1) {
+ type = snd_ctl_event_get_type(ev);
+ if (type != SND_CTL_EVENT_ELEM)
+ continue;
+ mask = snd_ctl_event_elem_get_mask(ev);
+ snd_ctl_event_elem_get_id(ev, id);
+ if (mask == SND_CTL_EVENT_MASK_REMOVE) {
+ remove_from_list(&card->whitelist, id);
+ remove_from_list(&card->blacklist, id);
+ continue;
+ }
+ if (mask & SND_CTL_EVENT_MASK_INFO) {
+ remove_from_list(&card->whitelist, id);
+ remove_from_list(&card->blacklist, id);
+ }
+ if (mask & (SND_CTL_EVENT_MASK_VALUE|
+ SND_CTL_EVENT_MASK_ADD|
+ SND_CTL_EVENT_MASK_TLV)) {
+ if (check_lists(card, id))
+ res = 1;
+ }
+ }
+ return res;
+}
+
+static long read_pid_file(const char *pidfile)
+{
+ int fd, err;
+ char pid_txt[12];
+
+ fd = open(pidfile, O_RDONLY);
+ if (fd >= 0) {
+ err = read(fd, pid_txt, 11);
+ if (err != 11)
+ err = err < 0 ? -errno : -EIO;
+ close(fd);
+ pid_txt[11] = '\0';
+ return atol(pid_txt);
+ } else {
+ return -errno;
+ }
+}
+
+static int write_pid_file(const char *pidfile)
+{
+ int fd, err;
+ char pid_txt[12];
+
+ sprintf(pid_txt, "%10li\n", (long)getpid());
+ fd = open(pidfile, O_WRONLY|O_CREAT|O_EXCL, 0600);
+ if (fd >= 0) {
+ err = write(fd, pid_txt, 11);
+ if (err != 11) {
+ err = err < 0 ? -errno : -EIO;
+ unlink(pidfile);
+ } else {
+ err = 0;
+ }
+ close(fd);
+ } else {
+ err = -errno;
+ }
+ return err;
+}
+
+int state_daemon_kill(const char *pidfile, const char *cmd)
+{
+ long pid;
+ int sig = SIGHUP;
+
+ if (cmd == NULL) {
+ error("Specify kill command (quit, rescan or save_and_quit)");
+ return -EINVAL;
+ }
+ if (strcmp(cmd, "rescan") == 0)
+ sig = SIGUSR1;
+ else if (strcmp(cmd, "save_and_quit") == 0)
+ sig = SIGUSR2;
+ else if (strcmp(cmd, "quit") == 0)
+ sig = SIGTERM;
+ if (sig == SIGHUP) {
+ error("Unknown kill command '%s'", cmd);
+ return -EINVAL;
+ }
+ pid = read_pid_file(pidfile);
+ if (pid > 0) {
+ if (kill(pid, sig) >= 0)
+ return 0;
+ return -errno;
+ }
+ return 0;
+}
+
+static int check_another_instance(const char *pidfile)
+{
+ long pid;
+
+ pid = read_pid_file(pidfile);
+ if (pid >= 0) {
+ /* invoke new card rescan */
+ if (kill(pid, SIGUSR1) >= 0) {
+ usleep(1000);
+ pid = read_pid_file(pidfile);
+ if (pid >= 0)
+ return 1;
+ }
+ }
+ return 0;
+}
+
+int state_daemon(const char *file, const char *cardname, int period,
+ const char *pidfile)
+{
+ int count = 0, pcount, psize = 0, i, j, k, changed = 0;
+ time_t last_write, now;
+ unsigned short revents;
+ struct card **cards = NULL;
+ struct pollfd *pfd = NULL, *pfdn;
+
+ if (check_another_instance(pidfile))
+ return 0;
+ rescan = 1;
+ signal(SIGABRT, signal_handler_quit);
+ signal(SIGTERM, signal_handler_quit);
+ signal(SIGINT, signal_handler_quit);
+ signal(SIGUSR1, signal_handler_rescan);
+ signal(SIGUSR2, signal_handler_save_and_quit);
+ write_pid_file(pidfile);
+ time(&last_write);
+ while (!quit || save_now) {
+ if (save_now)
+ goto save;
+ if (rescan) {
+ if (cardname) {
+ add_card(&cards, &count, cardname);
+ } else {
+ add_cards(&cards, &count);
+ }
+ snd_config_update_free_global();
+ rescan = 0;
+ }
+ for (i = pcount = 0; i < count; i++) {
+ if (cards[i] == NULL)
+ continue;
+ pcount += cards[i]->pfds;
+ }
+ if (pcount > psize) {
+ pfdn = realloc(pfd, sizeof(struct pollfd) * pcount);
+ if (pfdn) {
+ psize = pcount;
+ pfd = pfdn;
+ } else {
+ error("No enough memory...");
+ goto out;
+ }
+ }
+ for (i = j = 0; i < count; i++) {
+ if (cards[i] == NULL)
+ continue;
+ k = snd_ctl_poll_descriptors(cards[i]->handle, pfd + j, pcount - j);
+ if (k != cards[i]->pfds) {
+ error("poll prepare failed: %i", k);
+ goto out;
+ }
+ j += k;
+ }
+ i = poll(pfd, j, (period / 2) * 1000);
+ if (i < 0 && errno == EINTR)
+ continue;
+ if (i < 0) {
+ error("poll failed: %s", strerror(errno));
+ break;
+ }
+ time(&now);
+ for (i = j = 0; i < count; i++) {
+ if (cards[i] == NULL)
+ continue;
+ k = snd_ctl_poll_descriptors_revents(cards[i]->handle,
+ pfd + j, cards[i]->pfds, &revents);
+ if (k < 0) {
+ error("poll post failed: %i\n", k);
+ goto out;
+ }
+ j += cards[i]->pfds;
+ if (revents & (POLLERR|POLLNVAL)) {
+ card_free(&cards[i]);
+ } else if (revents & POLLIN) {
+ if (card_events(cards[i])) {
+ /* delay the write */
+ if (!changed)
+ last_write = now;
+ changed = 1;
+ }
+ }
+ }
+ if ((now - last_write >= period && changed) || save_now) {
+save:
+ changed = save_now = 0;
+ save_state(file, cardname);
+ }
+ }
+out:
+ free(pfd);
+ remove(pidfile);
+ for (i = 0; i < count; i++)
+ card_free(&cards[i]);
+ free(cards);
+ return 0;
+}
init_files = \
00main default help info test \
- hda
+ hda ca0106
EXTRA_DIST = $(init_files)
alsainitdir = $(datadir)/alsa/init
alsainit_DATA = $(init_files)
-# Makefile.in generated by automake 1.11.3 from Makefile.am.
+# Makefile.in generated by automake 1.12.2 from Makefile.am.
# @configure_input@
-# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software
-# Foundation, Inc.
+# Copyright (C) 1994-2012 Free Software Foundation, Inc.
+
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
@SET_MAKE@
VPATH = @srcdir@
+am__make_dryrun = \
+ { \
+ am__dry=no; \
+ case $$MAKEFLAGS in \
+ *\\[\ \ ]*) \
+ echo 'am--echo: ; @echo "AM" OK' | $(MAKE) -f - 2>/dev/null \
+ | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
+ *) \
+ for am__flg in $$MAKEFLAGS; do \
+ case $$am__flg in \
+ *=*|--*) ;; \
+ *n*) am__dry=yes; break;; \
+ esac; \
+ done;; \
+ esac; \
+ test $$am__dry = yes; \
+ }
pkgdatadir = $(datadir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
$(top_srcdir)/m4/lib-link.m4 $(top_srcdir)/m4/lib-prefix.m4 \
$(top_srcdir)/m4/nls.m4 $(top_srcdir)/m4/po.m4 \
$(top_srcdir)/m4/progtest.m4 $(top_srcdir)/acinclude.m4 \
- $(top_srcdir)/configure.in
+ $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(install_sh) -d
CONFIG_CLEAN_VPATH_FILES =
SOURCES =
DIST_SOURCES =
+am__can_run_installinfo = \
+ case $$AM_UPDATE_INFO_DIR in \
+ n|no|NO) false;; \
+ *) (install-info --version) >/dev/null 2>&1;; \
+ esac
am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
am__vpath_adj = case $$p in \
$(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
DATA = $(alsainit_DATA)
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
ACLOCAL = @ACLOCAL@
+ALSACTL_DAEMONSWITCH = @ALSACTL_DAEMONSWITCH@
+ALSACTL_PIDFILE_DIR = @ALSACTL_PIDFILE_DIR@
ALSA_CFLAGS = @ALSA_CFLAGS@
ALSA_LIBS = @ALSA_LIBS@
AMTAR = @AMTAR@
+ASOUND_LOCK_DIR = @ASOUND_LOCK_DIR@
ASOUND_STATE_DIR = @ASOUND_STATE_DIR@
AUTOCONF = @AUTOCONF@
AUTOHEADER = @AUTOHEADER@
LTLIBICONV = @LTLIBICONV@
LTLIBINTL = @LTLIBINTL@
LTLIBOBJS = @LTLIBOBJS@
+MAINT = @MAINT@
MAKEINFO = @MAKEINFO@
MKDIR_P = @MKDIR_P@
MSGFMT = @MSGFMT@
localstatedir = @localstatedir@
mandir = @mandir@
mkdir_p = @mkdir_p@
+mydatadir = @mydatadir@
ncurses5_config = @ncurses5_config@
ncursesw5_config = @ncursesw5_config@
oldincludedir = @oldincludedir@
xmlto = @xmlto@
init_files = \
00main default help info test \
- hda
+ hda ca0106
EXTRA_DIST = $(init_files)
alsainitdir = $(datadir)/alsa/init
all: all-am
.SUFFIXES:
-$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps)
@for dep in $?; do \
case '$(am__configure_deps)' in \
*$$dep*) \
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-$(top_srcdir)/configure: $(am__configure_deps)
+$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-$(ACLOCAL_M4): $(am__aclocal_m4_deps)
+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(am__aclocal_m4_deps):
install-alsainitDATA: $(alsainit_DATA)
@$(NORMAL_INSTALL)
- test -z "$(alsainitdir)" || $(MKDIR_P) "$(DESTDIR)$(alsainitdir)"
@list='$(alsainit_DATA)'; test -n "$(alsainitdir)" || list=; \
+ if test -n "$$list"; then \
+ echo " $(MKDIR_P) '$(DESTDIR)$(alsainitdir)'"; \
+ $(MKDIR_P) "$(DESTDIR)$(alsainitdir)" || exit 1; \
+ fi; \
for p in $$list; do \
if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
echo "$$d$$p"; \
ctags: CTAGS
CTAGS:
+cscope cscopelist:
+
distdir: $(DISTFILES)
@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
--- /dev/null
+# Configuration for CA0106 driver
+
+CTL{reset}="mixer"
+CTL{name}="Master Playback Volume", CTL{value}="-20dB"
+CTL{name}="Master Playback Switch", CTL{value}="on"
+CTL{name}="Analog Front Playback Volume", CTL{value}="0dB"
+CTL{name}="Analog Front Playback Switch", CTL{value}="on"
+CTL{name}="Analog Rear Playback Volume", CTL{value}="0dB"
+CTL{name}="Analog Rear Playback Switch", CTL{value}="on"
+CTL{name}="Analog Center/LFE Playback Volume", CTL{value}="0dB"
+CTL{name}="Analog Center/LFE Playback Switch", CTL{value}="on"
+CTL{name}="Analog Side Playback Volume", CTL{value}="0dB"
+CTL{name}="Analog Side Playback Switch", CTL{value}="on"
+CTL{name}="IEC958 Front Playback Volume", CTL{value}="0dB"
+CTL{name}="IEC958 Rear Playback Volume", CTL{value}="0dB"
+CTL{name}="IEC958 Center/LFE Playback Volume", CTL{value}="0dB"
+# capture
+CTL{name}="Analog Source Capture Enum", CTL{value}="Mic"
+CTL{name}="Mic Capture Volume", CTL{value}="6dB"
+CTL{name}="Shared Mic/Line in Capture Switch", CTL{value}="Mic in"
+
+# some variants have also AC97 mixer
+
+CTL{reset}="mixer"
+CTL{name}="AC97 Line Capture Volume",PROGRAM!="__ctl_search",GOTO="ac97_end"
+CTL{name}="Analog Source Capture Enum", CTL{value}="AC97 in"
+CTL{name}="AC97 Mic Capture Switch", "on"
+CTL{name}="AC97 Mic Capture Value", "6dB"
+LABEL="ac97_end"
+
+RESULT="true", EXIT="return"
--- /dev/null
+/*
+ * Advanced Linux Sound Architecture Control Program
+ * Copyright (c) by Jaroslav Kysela <perex@perex.cz>
+ *
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ *
+ */
+
+#include "aconfig.h"
+#include "version.h"
+#include <stdio.h>
+#include <stdlib.h>
+#include <unistd.h>
+#include <fcntl.h>
+#include <errno.h>
+#include <string.h>
+#include <sys/stat.h>
+#include "alsactl.h"
+
+static int state_lock_(const char *file, int lock, int timeout)
+{
+ int fd = -1, err = 0;
+ struct flock lck;
+ struct stat st;
+ char lcktxt[12];
+ char *nfile = lockfile;
+
+ if (do_lock <= 0)
+ return 0;
+
+ lck.l_type = lock ? F_WRLCK : F_UNLCK;
+ lck.l_whence = SEEK_SET;
+ lck.l_start = 0;
+ lck.l_len = 11;
+ lck.l_pid = 0;
+ if (lock) {
+ snprintf(lcktxt, sizeof(lcktxt), "%10li\n", (long)getpid());
+ } else {
+ snprintf(lcktxt, sizeof(lcktxt), "%10s\n", "");
+ }
+ while (fd < 0 && timeout-- > 0) {
+ fd = open(nfile, O_RDWR);
+ if (fd < 0) {
+ fd = open(nfile, O_RDWR|O_CREAT|O_EXCL, 0644);
+ if (fd < 0) {
+ if (errno == EBUSY || errno == EAGAIN) {
+ sleep(1);
+ timeout--;
+ } else {
+ err = -errno;
+ goto out;
+ }
+ }
+ }
+ }
+ if (fd < 0 && timeout <= 0) {
+ err = -EBUSY;
+ goto out;
+ }
+ if (fstat(fd, &st) < 0) {
+ err = -errno;
+ goto out;
+ }
+ if (st.st_size != 11) {
+ if (write(fd, lcktxt, 11) != 11) {
+ err = -EIO;
+ goto out;
+ }
+ if (lseek(fd, 0, SEEK_SET)) {
+ err = -errno;
+ goto out;
+ }
+ }
+ while (timeout > 0) {
+ if (fcntl(fd, F_SETLK, &lck) < 0) {
+ sleep(1);
+ timeout--;
+ } else {
+ break;
+ }
+ }
+ if (timeout <= 0) {
+ err = -EBUSY;
+ goto out;
+ }
+ if (write(fd, lcktxt, 11) != 11) {
+ err = -EIO;
+ goto out;
+ }
+out:
+ return err;
+}
+
+int state_lock(const char *file, int lock, int timeout)
+{
+ int err;
+
+ err = state_lock_(file, lock, timeout);
+ if (err < 0)
+ error("file %s %slock error: %s", file,
+ lock ? "" : "un", strerror(-err));
+ return err;
+}
--- /dev/null
+/*
+ * Advanced Linux Sound Architecture Control Program
+ * Copyright (c) by Takashi Iwai <tiwai@suse.de>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ */
+
+#include "aconfig.h"
+#include "version.h"
+#include <stdio.h>
+#include <alsa/asoundlib.h>
+
+static int open_ctl(const char *name, snd_ctl_t **ctlp)
+{
+ snd_ctl_t *ctl;
+ int err;
+
+ err = snd_ctl_open(&ctl, name, SND_CTL_READONLY);
+ if (err < 0) {
+ fprintf(stderr, "Cannot open ctl %s\n", name);
+ return err;
+ }
+ err = snd_ctl_subscribe_events(ctl, 1);
+ if (err < 0) {
+ fprintf(stderr, "Cannot open subscribe events to ctl %s\n", name);
+ snd_ctl_close(ctl);
+ return err;
+ }
+ *ctlp = ctl;
+ return 0;
+}
+
+static int print_event(int card, snd_ctl_t *ctl)
+{
+ snd_ctl_event_t *event;
+ unsigned int mask;
+ int err;
+
+ snd_ctl_event_alloca(&event);
+ err = snd_ctl_read(ctl, event);
+ if (err < 0)
+ return err;
+
+ if (snd_ctl_event_get_type(event) != SND_CTL_EVENT_ELEM)
+ return 0;
+
+ if (card >= 0)
+ printf("card %d, ", card);
+ printf("#%d (%i,%i,%i,%s,%i)",
+ snd_ctl_event_elem_get_numid(event),
+ snd_ctl_event_elem_get_interface(event),
+ snd_ctl_event_elem_get_device(event),
+ snd_ctl_event_elem_get_subdevice(event),
+ snd_ctl_event_elem_get_name(event),
+ snd_ctl_event_elem_get_index(event));
+
+ mask = snd_ctl_event_elem_get_mask(event);
+ if (mask == SND_CTL_EVENT_MASK_REMOVE) {
+ printf(" REMOVE\n");
+ return 0;
+ }
+
+ if (mask & SND_CTL_EVENT_MASK_VALUE)
+ printf(" VALUE");
+ if (mask & SND_CTL_EVENT_MASK_INFO)
+ printf(" INFO");
+ if (mask & SND_CTL_EVENT_MASK_ADD)
+ printf(" ADD");
+ if (mask & SND_CTL_EVENT_MASK_TLV)
+ printf(" TLV");
+ printf("\n");
+ return 0;
+}
+
+#define MAX_CARDS 256
+
+int monitor(const char *name)
+{
+ snd_ctl_t *ctls[MAX_CARDS];
+ int ncards = 0;
+ int show_cards;
+ int i, err;
+
+ if (!name) {
+ int card = -1;
+ while (snd_card_next(&card) >= 0 && card >= 0) {
+ char cardname[16];
+ if (ncards >= MAX_CARDS) {
+ fprintf(stderr, "alsactl: too many cards\n");
+ err = -E2BIG;
+ goto error;
+ }
+ sprintf(cardname, "hw:%d", card);
+ err = open_ctl(cardname, &ctls[ncards]);
+ if (err < 0)
+ goto error;
+ ncards++;
+ }
+ show_cards = 1;
+ } else {
+ err = open_ctl(name, &ctls[0]);
+ if (err < 0)
+ goto error;
+ ncards++;
+ show_cards = 0;
+ }
+
+ for (;;) {
+ struct pollfd fds[ncards];
+
+ for (i = 0; i < ncards; i++)
+ snd_ctl_poll_descriptors(ctls[i], &fds[i], 1);
+
+ err = poll(fds, ncards, -1);
+ if (err <= 0) {
+ err = 0;
+ break;
+ }
+
+ for (i = 0; i < ncards; i++) {
+ unsigned short revents;
+ snd_ctl_poll_descriptors_revents(ctls[i], &fds[i], 1,
+ &revents);
+ if (revents & POLLIN)
+ print_event(show_cards ? i : -1, ctls[i]);
+ }
+ }
+
+ error:
+ for (i = 0; i < ncards; i++)
+ snd_ctl_close(ctls[i]);
+ return err;
+}
#include "alsactl.h"
-#define ARRAY_SIZE(a) (sizeof (a) / sizeof (a)[0])
-
-
static char *id_str(snd_ctl_elem_id_t *id)
{
static char str[128];
char *s = tlv_to_str(tlv);
if (s) {
err = snd_config_string_add(comment, "tlv", s);
+ free(s);
if (err < 0) {
error("snd_config_string_add: %s", snd_strerror(err));
return err;
}
- free(s);
}
}
snd_input_t *in;
snd_output_t *out;
int stdio;
+ char *nfile = NULL;
err = snd_config_top(&config);
if (err < 0) {
return err;
}
stdio = !strcmp(file, "-");
+ if (!stdio) {
+ nfile = malloc(strlen(file) + 5);
+ if (nfile == NULL) {
+ error("No enough memory...");
+ goto out;
+ }
+ strcpy(nfile, file);
+ strcat(nfile, ".new");
+ if (state_lock(file, 1, 10) != 0)
+ goto out;
+ }
if (!stdio && (err = snd_input_stdio_open(&in, file, "r")) >= 0) {
err = snd_config_load(config, in);
snd_input_close(in);
#if 0
if (err < 0) {
error("snd_config_load error: %s", snd_strerror(err));
- return err;
+ goto out;
}
#endif
}
if (card < 0) {
if (first) {
if (ignore_nocards) {
- return 0;
+ err = 0;
+ goto out;
} else {
error("No soundcards found...");
- return -ENODEV;
+ err = -ENODEV;
+ goto out;
}
}
break;
}
first = 0;
if ((err = get_controls(card, config)))
- return err;
+ goto out;
}
} else {
int cardno;
cardno = snd_card_get_index(cardname);
if (cardno < 0) {
error("Cannot find soundcard '%s'...", cardname);
- return cardno;
+ err = cardno;
+ goto out;
}
if ((err = get_controls(cardno, config))) {
- return err;
+ goto out;
}
}
- if (stdio)
+ if (stdio) {
err = snd_output_stdio_attach(&out, stdout, 0);
- else
- err = snd_output_stdio_open(&out, file, "w");
+ } else {
+ err = snd_output_stdio_open(&out, nfile, "w");
+ }
if (err < 0) {
error("Cannot open %s for writing: %s", file, snd_strerror(err));
- return -errno;
+ err = -errno;
+ goto out;
}
err = snd_config_save(config, out);
snd_output_close(out);
- if (err < 0)
+ if (err < 0) {
error("snd_config_save: %s", snd_strerror(err));
- return 0;
+ } else {
+ err = rename(nfile, file);
+ if (err < 0)
+ error("rename failed: %s (%s)", strerror(-err), file);
+ }
+out:
+ if (!stdio)
+ state_lock(file, 0, 10);
+ free(nfile);
+ snd_config_delete(config);
+ snd_config_update_free_global();
+ return err;
}
int load_state(const char *file, const char *initfile, const char *cardname,
int err, finalerr = 0;
snd_config_t *config;
snd_input_t *in;
- int stdio;
+ int stdio, locked = 0;
err = snd_config_top(&config);
if (err < 0) {
return err;
}
stdio = !strcmp(file, "-");
- if (stdio)
+ if (stdio) {
err = snd_input_stdio_attach(&in, stdin, 0);
- else
- err = snd_input_stdio_open(&in, file, "r");
+ } else {
+ err = state_lock(file, 1, 10);
+ locked = err >= 0;
+ err = err >= 0 ? snd_input_stdio_open(&in, file, "r") : err;
+ }
if (err >= 0) {
err = snd_config_load(config, in);
snd_input_close(in);
+ if (locked)
+ state_lock(file, 0, 10);
if (err < 0) {
error("snd_config_load error: %s", snd_strerror(err));
- return err;
+ goto out;
}
} else {
int card, first = 1;
card = snd_card_get_index(cardname);
if (card < 0) {
error("Cannot find soundcard '%s'...", cardname);
- return -ENODEV;
+ err = -ENODEV;
+ goto out;
}
goto single;
} else {
}
if (first)
finalerr = 0; /* no cards, no error code */
- return finalerr;
+ err = finalerr;
+ goto out;
}
if (!cardname) {
if (card < 0) {
if (first) {
if (ignore_nocards) {
- return 0;
+ err = 0;
+ goto out;
} else {
error("No soundcards found...");
- return -ENODEV;
+ err = -ENODEV;
+ goto out;
}
}
break;
cardno = snd_card_get_index(cardname);
if (cardno < 0) {
error("Cannot find soundcard '%s'...", cardname);
- return -ENODEV;
+ err = -ENODEV;
+ goto out;
}
/* do a check if controls matches state file */
if (do_init && set_controls(cardno, config, 0)) {
if ((err = set_controls(cardno, config, 1))) {
initfailed(cardno, "restore", err);
if (!force_restore)
- return err;
+ goto out;
}
}
- return finalerr;
+ err = finalerr;
+out:
+ snd_config_delete(config);
+ snd_config_update_free_global();
+ return err;
}
#include <errno.h>
#include <ctype.h>
#include <dirent.h>
+#include <syslog.h>
#include <sys/stat.h>
#include <sys/mman.h>
close(fp);
free(str);
}
+
+static void syslog_(int prio, const char *fcn, long line,
+ const char *fmt, va_list ap)
+{
+ char buf[1024];
+
+ snprintf(buf, sizeof(buf), "%s: %s:%ld", command, fcn, line);
+ buf[sizeof(buf)-1] = '\0';
+ vsnprintf(buf + strlen(buf), sizeof(buf)-strlen(buf), fmt, ap);
+ buf[sizeof(buf)-1] = '\0';
+ syslog(LOG_INFO, "%s", buf);
+}
+
+void info_(const char *fcn, long line, const char *fmt, ...)
+{
+ va_list ap;
+
+ va_start(ap, fmt);
+ if (use_syslog) {
+ syslog_(LOG_INFO, fcn, line, fmt, ap);
+ } else {
+ fprintf(stdout, "%s: %s:%ld: ", command, fcn, line);
+ vfprintf(stdout, fmt, ap);
+ putc('\n', stdout);
+ }
+ va_end(ap);
+}
+
+void error_(const char *fcn, long line, const char *fmt, ...)
+{
+ va_list ap;
+
+ va_start(ap, fmt);
+ if (use_syslog) {
+ syslog_(LOG_ERR, fcn, line, fmt, ap);
+ } else {
+ fprintf(stderr, "%s: %s:%ld: ", command, fcn, line);
+ vfprintf(stderr, fmt, ap);
+ putc('\n', stderr);
+ }
+ va_end(ap);
+}
+
+void cerror_(const char *fcn, long line, int cond, const char *fmt, ...)
+{
+ va_list ap;
+
+ if (!cond && !debugflag)
+ return;
+ va_start(ap, fmt);
+ if (use_syslog) {
+ syslog_(LOG_ERR, fcn, line, fmt, ap);
+ } else {
+ fprintf(stderr, "%s: %s:%ld: ", command, fcn, line);
+ vfprintf(stderr, fmt, ap);
+ putc('\n', stderr);
+ va_end(ap);
+ }
+}
+
+void dbg_(const char *fcn, long line, const char *fmt, ...)
+{
+ va_list ap;
+
+ if (!debugflag)
+ return;
+ va_start(ap, fmt);
+ if (use_syslog) {
+ syslog_(LOG_DEBUG, fcn, line, fmt, ap);
+ } else {
+ fprintf(stderr, "%s: %s:%ld: ", command, fcn, line);
+ vfprintf(stderr, fmt, ap);
+ putc('\n', stderr);
+ va_end(ap);
+ }
+}
-INCLUDES = -I$(top_srcdir)/include
+AM_CPPFLAGS = -I$(top_srcdir)/include
LDADD = -lm
AM_CFLAGS = -D_GNU_SOURCE
if HAVE_SAMPLERATE
-# Makefile.in generated by automake 1.11.3 from Makefile.am.
+# Makefile.in generated by automake 1.12.2 from Makefile.am.
# @configure_input@
-# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software
-# Foundation, Inc.
+# Copyright (C) 1994-2012 Free Software Foundation, Inc.
+
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
VPATH = @srcdir@
+am__make_dryrun = \
+ { \
+ am__dry=no; \
+ case $$MAKEFLAGS in \
+ *\\[\ \ ]*) \
+ echo 'am--echo: ; @echo "AM" OK' | $(MAKE) -f - 2>/dev/null \
+ | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
+ *) \
+ for am__flg in $$MAKEFLAGS; do \
+ case $$am__flg in \
+ *=*|--*) ;; \
+ *n*) am__dry=yes; break;; \
+ esac; \
+ done;; \
+ esac; \
+ test $$am__dry = yes; \
+ }
pkgdatadir = $(datadir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
bin_PROGRAMS = alsaloop$(EXEEXT)
subdir = alsaloop
DIST_COMMON = $(noinst_HEADERS) $(srcdir)/Makefile.am \
- $(srcdir)/Makefile.in
+ $(srcdir)/Makefile.in $(top_srcdir)/depcomp
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/m4/gettext.m4 \
$(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/lib-ld.m4 \
$(top_srcdir)/m4/lib-link.m4 $(top_srcdir)/m4/lib-prefix.m4 \
$(top_srcdir)/m4/nls.m4 $(top_srcdir)/m4/po.m4 \
$(top_srcdir)/m4/progtest.m4 $(top_srcdir)/acinclude.m4 \
- $(top_srcdir)/configure.in
+ $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(install_sh) -d
LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
SOURCES = $(alsaloop_SOURCES)
DIST_SOURCES = $(alsaloop_SOURCES)
+am__can_run_installinfo = \
+ case $$AM_UPDATE_INFO_DIR in \
+ n|no|NO) false;; \
+ *) (install-info --version) >/dev/null 2>&1;; \
+ esac
am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
am__vpath_adj = case $$p in \
$(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
CTAGS = ctags
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
ACLOCAL = @ACLOCAL@
+ALSACTL_DAEMONSWITCH = @ALSACTL_DAEMONSWITCH@
+ALSACTL_PIDFILE_DIR = @ALSACTL_PIDFILE_DIR@
ALSA_CFLAGS = @ALSA_CFLAGS@
ALSA_LIBS = @ALSA_LIBS@
AMTAR = @AMTAR@
+ASOUND_LOCK_DIR = @ASOUND_LOCK_DIR@
ASOUND_STATE_DIR = @ASOUND_STATE_DIR@
AUTOCONF = @AUTOCONF@
AUTOHEADER = @AUTOHEADER@
LTLIBICONV = @LTLIBICONV@
LTLIBINTL = @LTLIBINTL@
LTLIBOBJS = @LTLIBOBJS@
+MAINT = @MAINT@
MAKEINFO = @MAKEINFO@
MKDIR_P = @MKDIR_P@
MSGFMT = @MSGFMT@
localstatedir = @localstatedir@
mandir = @mandir@
mkdir_p = @mkdir_p@
+mydatadir = @mydatadir@
ncurses5_config = @ncurses5_config@
ncursesw5_config = @ncursesw5_config@
oldincludedir = @oldincludedir@
top_srcdir = @top_srcdir@
udevrulesdir = @udevrulesdir@
xmlto = @xmlto@
-INCLUDES = -I$(top_srcdir)/include
+AM_CPPFLAGS = -I$(top_srcdir)/include
LDADD = -lm $(am__append_1)
AM_CFLAGS = -D_GNU_SOURCE
alsaloop_SOURCES = alsaloop.c pcmjob.c control.c
.SUFFIXES:
.SUFFIXES: .c .o .obj
-$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps)
@for dep in $?; do \
case '$(am__configure_deps)' in \
*$$dep*) \
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-$(top_srcdir)/configure: $(am__configure_deps)
+$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-$(ACLOCAL_M4): $(am__aclocal_m4_deps)
+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(am__aclocal_m4_deps):
install-binPROGRAMS: $(bin_PROGRAMS)
@$(NORMAL_INSTALL)
- test -z "$(bindir)" || $(MKDIR_P) "$(DESTDIR)$(bindir)"
@list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \
+ if test -n "$$list"; then \
+ echo " $(MKDIR_P) '$(DESTDIR)$(bindir)'"; \
+ $(MKDIR_P) "$(DESTDIR)$(bindir)" || exit 1; \
+ fi; \
for p in $$list; do echo "$$p $$p"; done | \
sed 's/$(EXEEXT)$$//' | \
while read p p1; do if test -f $$p; \
@am__fastdepCC_FALSE@ $(COMPILE) -c `$(CYGPATH_W) '$<'`
install-man1: $(man_MANS)
@$(NORMAL_INSTALL)
- test -z "$(man1dir)" || $(MKDIR_P) "$(DESTDIR)$(man1dir)"
- @list=''; test -n "$(man1dir)" || exit 0; \
- { for i in $$list; do echo "$$i"; done; \
- l2='$(man_MANS)'; for i in $$l2; do echo "$$i"; done | \
- sed -n '/\.1[a-z]*$$/p'; \
+ @list1=''; \
+ list2='$(man_MANS)'; \
+ test -n "$(man1dir)" \
+ && test -n "`echo $$list1$$list2`" \
+ || exit 0; \
+ echo " $(MKDIR_P) '$(DESTDIR)$(man1dir)'"; \
+ $(MKDIR_P) "$(DESTDIR)$(man1dir)" || exit 1; \
+ { for i in $$list1; do echo "$$i"; done; \
+ if test -n "$$list2"; then \
+ for i in $$list2; do echo "$$i"; done \
+ | sed -n '/\.1[a-z]*$$/p'; \
+ fi; \
} | while read p; do \
if test -f $$p; then d=; else d="$(srcdir)/"; fi; \
echo "$$d$$p"; echo "$$p"; \
&& $(am__cd) $(top_srcdir) \
&& gtags -i $(GTAGS_ARGS) "$$here"
+cscopelist: $(HEADERS) $(SOURCES) $(LISP)
+ list='$(SOURCES) $(HEADERS) $(LISP)'; \
+ case "$(srcdir)" in \
+ [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
+ *) sdir=$(subdir)/$(srcdir) ;; \
+ esac; \
+ for i in $$list; do \
+ if test -f "$$i"; then \
+ echo "$(subdir)/$$i"; \
+ else \
+ echo "$$sdir/$$i"; \
+ fi; \
+ done >> $(top_builddir)/cscope.files
+
distclean-tags:
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
if test -f "$$d$$p"; then echo "$$d$$p"; else :; fi; done`; \
if test -n "$$list" && \
grep 'ab help2man is required to generate this page' $$list >/dev/null; then \
- echo "error: found man pages containing the \`missing help2man' replacement text:" >&2; \
+ echo "error: found man pages containing the 'missing help2man' replacement text:" >&2; \
grep -l 'ab help2man is required to generate this page' $$list | sed 's/^/ /' >&2; \
echo " to fix them, install help2man, remove and regenerate the man pages;" >&2; \
- echo " typically \`make maintainer-clean' will remove them" >&2; \
+ echo " typically 'make maintainer-clean' will remove them" >&2; \
exit 1; \
else :; fi; \
else :; fi
.MAKE: install-am install-strip
.PHONY: CTAGS GTAGS all all-am check check-am clean clean-binPROGRAMS \
- clean-generic ctags distclean distclean-compile \
+ clean-generic cscopelist ctags distclean distclean-compile \
distclean-generic distclean-tags distdir dvi dvi-am html \
html-am info info-am install install-am install-binPROGRAMS \
install-data install-data-am install-dvi install-dvi-am \
.TH ALSALOOP 1 "5 Aug 2010"
.SH NAME
-alsaloop \- command-line PCM loopback
+alsaloop \- command\-line PCM loopback
.SH SYNOPSIS
\fBalsaloop\fP [\fI\-option\fP] [\fIcmd\fP]
.SH DESCRIPTION
contains the command line options for one job. The '#' means comment and
rest of line is ignored. Example:
- # First line - comment, second line - first job
- -C hw:1,0 -P hw:0,0 -t 50000 -T 1
- # Third line - comment, fourth line - second job
- -C hw:1,1 -P hw:0,1 -t 40000 -T 2
+ # First line \- comment, second line \- first job
+ \-C hw:1,0 \-P hw:0,0 \-t 50000 \-T 1
+ # Third line \- comment, fourth line \- second job
+ \-C hw:1,1 \-P hw:0,1 \-t 40000 \-T 2
.TP
\fI\-d\fP | \fI\-\-daemonize\fP
.TP
\fI\-f <format>\fP | \fI\-\-format=<format>\fP
-Format specification (usually S16_LE S32_LE). Use -h to list all formats.
+Format specification (usually S16_LE S32_LE). Use \-h to list all formats.
Default format is S16_LE.
.TP
.TP
\fI\-n\fP | \fI\-\-resample\fP
-Allow rate resampling using alsa-lib.
+Allow rate resampling using alsa\-lib.
.TP
\fI\-A <converter>\fP | \fI\-\-samplerate=<converter>\fP
Use libsamplerate and choose a converter:
- 0 or sincbest - best quality
- 1 or sincmedium - medium quality
- 2 or sincfastest - lowest quality
- 3 or zerohold - hold zero samples
- 4 or linear - worst quality - linear resampling
- 5 or auto - choose best method
+ 0 or sincbest \- best quality
+ 1 or sincmedium \- medium quality
+ 2 or sincfastest \- lowest quality
+ 3 or zerohold \- hold zero samples
+ 4 or linear \- worst quality - linear resampling
+ 5 or auto \- choose best method
.TP
\fI\-B <size>\fP | \fI\-\-buffer=<size>\fP
.TP
\fI\-b\fP | \fI\-\-nblock\fP
-Non-block mode (very early process wakeup). Eats more CPU.
+Non\-block mode (very early process wakeup). Eats more CPU.
.TP
\fI\-S <mode>\fP | \fI\-\-sync=<mode>\fP
Sync mode specification for capture to playback stream:
- 0 or none - do not touch the stream
- 1 or simple - add or remove samples to keep
+ 0 or none \- do not touch the stream
+ 1 or simple \- add or remove samples to keep
both streams synchronized
- 2 or captshift - use driver for the capture device
+ 2 or captshift \- use driver for the capture device
(if supported) to compensate
the rate shift
- 3 or playshift - use driver for the playback device
+ 3 or playshift \- use driver for the playback device
(if supported) to compensate
the rate shift
- 4 or samplerate - use samplerate library to do rate resampling
- 5 or auto - automatically selects the best method
+ 4 or samplerate \- use samplerate library to do rate resampling
+ 5 or auto \- automatically selects the best method
in this order: captshift, playshift,
samplerate, simple
.TP
\fI\-T <num>\fP | \fI\-\-thread=<num>\fP
-Thread number (-1 means create a unique thread). All jobs with same
+Thread number (\-1 means create a unique thread). All jobs with same
thread numbers are run within one thread.
.TP
Known attributes:
- name - control ID name
- index - control ID index
- device - control ID device
- subdevice - control ID subdevice
- iface - control ID interface
- numid - control ID numid
+ name \- control ID name
+ index \- control ID index
+ device \- control ID device
+ subdevice \- control ID subdevice
+ iface \- control ID interface
+ numid \- control ID numid
.TP
\fI\-O <ossmixid>\fP | \fI\-\-ossmixer=<midid>\fP
#include <math.h>
#include <pthread.h>
#include <syslog.h>
-#include <sys/signal.h>
+#include <signal.h>
#include "alsaloop.h"
struct loopback_thread {
"-w,--workaround use workaround (serialopen)\n"
"-U,--xrun xrun profiling\n"
"-W,--wake process wake timeout in ms\n"
+"-z,--syslog use syslog for errors\n"
);
printf("\nRecognized sample formats are:");
for (k = 0; k < SND_PCM_FORMAT_LAST; ++k) {
return 0;
}
+static void enable_syslog(void)
+{
+ if (!use_syslog) {
+ use_syslog = 1;
+ openlog("alsaloop", LOG_NDELAY|LOG_PID, LOG_DAEMON);
+ }
+}
+
static int parse_config_file(const char *file, snd_output_t *output);
static int parse_config(int argc, char *argv[], snd_output_t *output,
{"ossmixer", 1, NULL, 'O'},
{"workaround", 1, NULL, 'w'},
{"xrun", 0, NULL, 'U'},
+ {"syslog", 0, NULL, 'z'},
{NULL, 0, NULL, 0},
};
int err, morehelp;
int arg_nblock = 0;
int arg_effect = 0;
int arg_resample = 0;
+#ifdef USE_SAMPLERATE
int arg_samplerate = SRC_SINC_FASTEST + 1;
+#endif
int arg_sync = SYNC_TYPE_AUTO;
int arg_slave = SLAVE_TYPE_AUTO;
int arg_thread = 0;
while (1) {
int c;
if ((c = getopt_long(argc, argv,
- "hdg:P:C:X:Y:l:t:F:f:c:r:s:benvA:S:a:m:T:O:w:UW:",
+ "hdg:P:C:X:Y:l:t:F:f:c:r:s:benvA:S:a:m:T:O:w:UW:z",
long_option, NULL)) < 0)
break;
switch (c) {
break;
case 'd':
daemonize = 1;
- use_syslog = 1;
- openlog("alsaloop", LOG_NDELAY|LOG_PID, LOG_DAEMON);
+ enable_syslog();
break;
case 'P':
arg_pdevice = strdup(optarg);
case 'n':
arg_resample = 1;
break;
+#ifdef USE_SAMPLERATE
case 'A':
if (strcasecmp(optarg, "sincbest") == 0)
arg_samplerate = SRC_SINC_BEST_QUALITY;
arg_sync = SRC_SINC_FASTEST;
arg_samplerate += 1;
break;
+#endif
case 'S':
if (strcasecmp(optarg, "samplerate") == 0)
arg_sync = SYNC_TYPE_SAMPLERATE;
if (cmdline)
arg_default_wake = arg_wake;
break;
+ case 'z':
+ enable_syslog();
+ break;
}
}
loop->src_enable = arg_samplerate > 0;
if (loop->src_enable)
loop->src_converter_type = arg_samplerate - 1;
-#else
- if (arg_samplerate > 0) {
- logit(LOG_CRIT, "No libsamplerate support.\n");
- exit(EXIT_FAILURE);
- }
#endif
set_loop_time(loop, arg_loop_time);
add_loop(loop);
};
#endif
-static pthread_mutex_t pcm_open_mutex =
- PTHREAD_RECURSIVE_MUTEX_INITIALIZER_NP;
+static pthread_once_t pcm_open_mutex_once = PTHREAD_ONCE_INIT;
+static pthread_mutex_t pcm_open_mutex;
+
+static void pcm_open_init_mutex(void)
+{
+ pthread_mutexattr_t attr;
+
+ pthread_mutexattr_init(&attr);
+ pthread_mutexattr_settype(&attr, PTHREAD_MUTEX_RECURSIVE);
+ pthread_mutex_init(&pcm_open_mutex, &attr);
+ pthread_mutexattr_destroy(&attr);
+}
static inline void pcm_open_lock(void)
{
+ pthread_once(&pcm_open_mutex_once, pcm_open_init_mutex);
if (workarounds & WORKAROUND_SERIALOPEN)
pthread_mutex_lock(&pcm_open_mutex);
}
widget.c widget.h
man_MANS = alsamixer.1
EXTRA_DIST = alsamixer.1
-alsamixer_INCLUDES = -I$(top_srcdir)/include
+alsamixer_CPPFLAGS = -I$(top_srcdir)/include
#LDFLAGS = -static
#CFLAGS += -g -Wall
-# Makefile.in generated by automake 1.11.3 from Makefile.am.
+# Makefile.in generated by automake 1.12.2 from Makefile.am.
# @configure_input@
-# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software
-# Foundation, Inc.
+# Copyright (C) 1994-2012 Free Software Foundation, Inc.
+
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
@SET_MAKE@
VPATH = @srcdir@
+am__make_dryrun = \
+ { \
+ am__dry=no; \
+ case $$MAKEFLAGS in \
+ *\\[\ \ ]*) \
+ echo 'am--echo: ; @echo "AM" OK' | $(MAKE) -f - 2>/dev/null \
+ | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
+ *) \
+ for am__flg in $$MAKEFLAGS; do \
+ case $$am__flg in \
+ *=*|--*) ;; \
+ *n*) am__dry=yes; break;; \
+ esac; \
+ done;; \
+ esac; \
+ test $$am__dry = yes; \
+ }
pkgdatadir = $(datadir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
host_triplet = @host@
bin_PROGRAMS = alsamixer$(EXEEXT)
subdir = alsamixer
-DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
+DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in \
+ $(top_srcdir)/depcomp
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/m4/gettext.m4 \
$(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/lib-ld.m4 \
$(top_srcdir)/m4/lib-link.m4 $(top_srcdir)/m4/lib-prefix.m4 \
$(top_srcdir)/m4/nls.m4 $(top_srcdir)/m4/po.m4 \
$(top_srcdir)/m4/progtest.m4 $(top_srcdir)/acinclude.m4 \
- $(top_srcdir)/configure.in
+ $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(install_sh) -d
CONFIG_CLEAN_VPATH_FILES =
am__installdirs = "$(DESTDIR)$(bindir)" "$(DESTDIR)$(man1dir)"
PROGRAMS = $(bin_PROGRAMS)
-am_alsamixer_OBJECTS = card_select.$(OBJEXT) cli.$(OBJEXT) \
- colors.$(OBJEXT) device_name.$(OBJEXT) die.$(OBJEXT) \
- mainloop.$(OBJEXT) mem.$(OBJEXT) mixer_controls.$(OBJEXT) \
- mixer_display.$(OBJEXT) mixer_widget.$(OBJEXT) \
- proc_files.$(OBJEXT) textbox.$(OBJEXT) utils.$(OBJEXT) \
- volume_mapping.$(OBJEXT) widget.$(OBJEXT)
+am_alsamixer_OBJECTS = alsamixer-card_select.$(OBJEXT) \
+ alsamixer-cli.$(OBJEXT) alsamixer-colors.$(OBJEXT) \
+ alsamixer-device_name.$(OBJEXT) alsamixer-die.$(OBJEXT) \
+ alsamixer-mainloop.$(OBJEXT) alsamixer-mem.$(OBJEXT) \
+ alsamixer-mixer_controls.$(OBJEXT) \
+ alsamixer-mixer_display.$(OBJEXT) \
+ alsamixer-mixer_widget.$(OBJEXT) \
+ alsamixer-proc_files.$(OBJEXT) alsamixer-textbox.$(OBJEXT) \
+ alsamixer-utils.$(OBJEXT) alsamixer-volume_mapping.$(OBJEXT) \
+ alsamixer-widget.$(OBJEXT)
alsamixer_OBJECTS = $(am_alsamixer_OBJECTS)
alsamixer_LDADD = $(LDADD)
alsamixer_DEPENDENCIES =
LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
SOURCES = $(alsamixer_SOURCES)
DIST_SOURCES = $(alsamixer_SOURCES)
+am__can_run_installinfo = \
+ case $$AM_UPDATE_INFO_DIR in \
+ n|no|NO) false;; \
+ *) (install-info --version) >/dev/null 2>&1;; \
+ esac
am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
am__vpath_adj = case $$p in \
$(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
CTAGS = ctags
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
ACLOCAL = @ACLOCAL@
+ALSACTL_DAEMONSWITCH = @ALSACTL_DAEMONSWITCH@
+ALSACTL_PIDFILE_DIR = @ALSACTL_PIDFILE_DIR@
ALSA_CFLAGS = @ALSA_CFLAGS@
ALSA_LIBS = @ALSA_LIBS@
AMTAR = @AMTAR@
+ASOUND_LOCK_DIR = @ASOUND_LOCK_DIR@
ASOUND_STATE_DIR = @ASOUND_STATE_DIR@
AUTOCONF = @AUTOCONF@
AUTOHEADER = @AUTOHEADER@
LTLIBICONV = @LTLIBICONV@
LTLIBINTL = @LTLIBINTL@
LTLIBOBJS = @LTLIBOBJS@
+MAINT = @MAINT@
MAKEINFO = @MAKEINFO@
MKDIR_P = @MKDIR_P@
MSGFMT = @MSGFMT@
localstatedir = @localstatedir@
mandir = @mandir@
mkdir_p = @mkdir_p@
+mydatadir = @mydatadir@
ncurses5_config = @ncurses5_config@
ncursesw5_config = @ncursesw5_config@
oldincludedir = @oldincludedir@
man_MANS = alsamixer.1
EXTRA_DIST = alsamixer.1
-alsamixer_INCLUDES = -I$(top_srcdir)/include
+alsamixer_CPPFLAGS = -I$(top_srcdir)/include
all: all-am
.SUFFIXES:
.SUFFIXES: .c .o .obj
-$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps)
@for dep in $?; do \
case '$(am__configure_deps)' in \
*$$dep*) \
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-$(top_srcdir)/configure: $(am__configure_deps)
+$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-$(ACLOCAL_M4): $(am__aclocal_m4_deps)
+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(am__aclocal_m4_deps):
install-binPROGRAMS: $(bin_PROGRAMS)
@$(NORMAL_INSTALL)
- test -z "$(bindir)" || $(MKDIR_P) "$(DESTDIR)$(bindir)"
@list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \
+ if test -n "$$list"; then \
+ echo " $(MKDIR_P) '$(DESTDIR)$(bindir)'"; \
+ $(MKDIR_P) "$(DESTDIR)$(bindir)" || exit 1; \
+ fi; \
for p in $$list; do echo "$$p $$p"; done | \
sed 's/$(EXEEXT)$$//' | \
while read p p1; do if test -f $$p; \
distclean-compile:
-rm -f *.tab.c
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/card_select.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/cli.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/colors.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/device_name.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/die.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mainloop.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mem.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mixer_controls.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mixer_display.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mixer_widget.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/proc_files.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/textbox.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/utils.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/volume_mapping.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/widget.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/alsamixer-card_select.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/alsamixer-cli.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/alsamixer-colors.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/alsamixer-device_name.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/alsamixer-die.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/alsamixer-mainloop.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/alsamixer-mem.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/alsamixer-mixer_controls.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/alsamixer-mixer_display.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/alsamixer-mixer_widget.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/alsamixer-proc_files.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/alsamixer-textbox.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/alsamixer-utils.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/alsamixer-volume_mapping.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/alsamixer-widget.Po@am__quote@
.c.o:
@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCC_FALSE@ $(COMPILE) -c `$(CYGPATH_W) '$<'`
+
+alsamixer-card_select.o: card_select.c
+@am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(alsamixer_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT alsamixer-card_select.o -MD -MP -MF $(DEPDIR)/alsamixer-card_select.Tpo -c -o alsamixer-card_select.o `test -f 'card_select.c' || echo '$(srcdir)/'`card_select.c
+@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/alsamixer-card_select.Tpo $(DEPDIR)/alsamixer-card_select.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='card_select.c' object='alsamixer-card_select.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(alsamixer_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o alsamixer-card_select.o `test -f 'card_select.c' || echo '$(srcdir)/'`card_select.c
+
+alsamixer-card_select.obj: card_select.c
+@am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(alsamixer_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT alsamixer-card_select.obj -MD -MP -MF $(DEPDIR)/alsamixer-card_select.Tpo -c -o alsamixer-card_select.obj `if test -f 'card_select.c'; then $(CYGPATH_W) 'card_select.c'; else $(CYGPATH_W) '$(srcdir)/card_select.c'; fi`
+@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/alsamixer-card_select.Tpo $(DEPDIR)/alsamixer-card_select.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='card_select.c' object='alsamixer-card_select.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(alsamixer_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o alsamixer-card_select.obj `if test -f 'card_select.c'; then $(CYGPATH_W) 'card_select.c'; else $(CYGPATH_W) '$(srcdir)/card_select.c'; fi`
+
+alsamixer-cli.o: cli.c
+@am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(alsamixer_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT alsamixer-cli.o -MD -MP -MF $(DEPDIR)/alsamixer-cli.Tpo -c -o alsamixer-cli.o `test -f 'cli.c' || echo '$(srcdir)/'`cli.c
+@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/alsamixer-cli.Tpo $(DEPDIR)/alsamixer-cli.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='cli.c' object='alsamixer-cli.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(alsamixer_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o alsamixer-cli.o `test -f 'cli.c' || echo '$(srcdir)/'`cli.c
+
+alsamixer-cli.obj: cli.c
+@am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(alsamixer_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT alsamixer-cli.obj -MD -MP -MF $(DEPDIR)/alsamixer-cli.Tpo -c -o alsamixer-cli.obj `if test -f 'cli.c'; then $(CYGPATH_W) 'cli.c'; else $(CYGPATH_W) '$(srcdir)/cli.c'; fi`
+@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/alsamixer-cli.Tpo $(DEPDIR)/alsamixer-cli.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='cli.c' object='alsamixer-cli.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(alsamixer_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o alsamixer-cli.obj `if test -f 'cli.c'; then $(CYGPATH_W) 'cli.c'; else $(CYGPATH_W) '$(srcdir)/cli.c'; fi`
+
+alsamixer-colors.o: colors.c
+@am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(alsamixer_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT alsamixer-colors.o -MD -MP -MF $(DEPDIR)/alsamixer-colors.Tpo -c -o alsamixer-colors.o `test -f 'colors.c' || echo '$(srcdir)/'`colors.c
+@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/alsamixer-colors.Tpo $(DEPDIR)/alsamixer-colors.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='colors.c' object='alsamixer-colors.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(alsamixer_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o alsamixer-colors.o `test -f 'colors.c' || echo '$(srcdir)/'`colors.c
+
+alsamixer-colors.obj: colors.c
+@am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(alsamixer_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT alsamixer-colors.obj -MD -MP -MF $(DEPDIR)/alsamixer-colors.Tpo -c -o alsamixer-colors.obj `if test -f 'colors.c'; then $(CYGPATH_W) 'colors.c'; else $(CYGPATH_W) '$(srcdir)/colors.c'; fi`
+@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/alsamixer-colors.Tpo $(DEPDIR)/alsamixer-colors.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='colors.c' object='alsamixer-colors.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(alsamixer_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o alsamixer-colors.obj `if test -f 'colors.c'; then $(CYGPATH_W) 'colors.c'; else $(CYGPATH_W) '$(srcdir)/colors.c'; fi`
+
+alsamixer-device_name.o: device_name.c
+@am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(alsamixer_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT alsamixer-device_name.o -MD -MP -MF $(DEPDIR)/alsamixer-device_name.Tpo -c -o alsamixer-device_name.o `test -f 'device_name.c' || echo '$(srcdir)/'`device_name.c
+@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/alsamixer-device_name.Tpo $(DEPDIR)/alsamixer-device_name.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='device_name.c' object='alsamixer-device_name.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(alsamixer_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o alsamixer-device_name.o `test -f 'device_name.c' || echo '$(srcdir)/'`device_name.c
+
+alsamixer-device_name.obj: device_name.c
+@am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(alsamixer_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT alsamixer-device_name.obj -MD -MP -MF $(DEPDIR)/alsamixer-device_name.Tpo -c -o alsamixer-device_name.obj `if test -f 'device_name.c'; then $(CYGPATH_W) 'device_name.c'; else $(CYGPATH_W) '$(srcdir)/device_name.c'; fi`
+@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/alsamixer-device_name.Tpo $(DEPDIR)/alsamixer-device_name.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='device_name.c' object='alsamixer-device_name.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(alsamixer_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o alsamixer-device_name.obj `if test -f 'device_name.c'; then $(CYGPATH_W) 'device_name.c'; else $(CYGPATH_W) '$(srcdir)/device_name.c'; fi`
+
+alsamixer-die.o: die.c
+@am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(alsamixer_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT alsamixer-die.o -MD -MP -MF $(DEPDIR)/alsamixer-die.Tpo -c -o alsamixer-die.o `test -f 'die.c' || echo '$(srcdir)/'`die.c
+@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/alsamixer-die.Tpo $(DEPDIR)/alsamixer-die.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='die.c' object='alsamixer-die.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(alsamixer_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o alsamixer-die.o `test -f 'die.c' || echo '$(srcdir)/'`die.c
+
+alsamixer-die.obj: die.c
+@am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(alsamixer_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT alsamixer-die.obj -MD -MP -MF $(DEPDIR)/alsamixer-die.Tpo -c -o alsamixer-die.obj `if test -f 'die.c'; then $(CYGPATH_W) 'die.c'; else $(CYGPATH_W) '$(srcdir)/die.c'; fi`
+@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/alsamixer-die.Tpo $(DEPDIR)/alsamixer-die.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='die.c' object='alsamixer-die.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(alsamixer_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o alsamixer-die.obj `if test -f 'die.c'; then $(CYGPATH_W) 'die.c'; else $(CYGPATH_W) '$(srcdir)/die.c'; fi`
+
+alsamixer-mainloop.o: mainloop.c
+@am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(alsamixer_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT alsamixer-mainloop.o -MD -MP -MF $(DEPDIR)/alsamixer-mainloop.Tpo -c -o alsamixer-mainloop.o `test -f 'mainloop.c' || echo '$(srcdir)/'`mainloop.c
+@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/alsamixer-mainloop.Tpo $(DEPDIR)/alsamixer-mainloop.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='mainloop.c' object='alsamixer-mainloop.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(alsamixer_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o alsamixer-mainloop.o `test -f 'mainloop.c' || echo '$(srcdir)/'`mainloop.c
+
+alsamixer-mainloop.obj: mainloop.c
+@am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(alsamixer_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT alsamixer-mainloop.obj -MD -MP -MF $(DEPDIR)/alsamixer-mainloop.Tpo -c -o alsamixer-mainloop.obj `if test -f 'mainloop.c'; then $(CYGPATH_W) 'mainloop.c'; else $(CYGPATH_W) '$(srcdir)/mainloop.c'; fi`
+@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/alsamixer-mainloop.Tpo $(DEPDIR)/alsamixer-mainloop.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='mainloop.c' object='alsamixer-mainloop.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(alsamixer_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o alsamixer-mainloop.obj `if test -f 'mainloop.c'; then $(CYGPATH_W) 'mainloop.c'; else $(CYGPATH_W) '$(srcdir)/mainloop.c'; fi`
+
+alsamixer-mem.o: mem.c
+@am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(alsamixer_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT alsamixer-mem.o -MD -MP -MF $(DEPDIR)/alsamixer-mem.Tpo -c -o alsamixer-mem.o `test -f 'mem.c' || echo '$(srcdir)/'`mem.c
+@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/alsamixer-mem.Tpo $(DEPDIR)/alsamixer-mem.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='mem.c' object='alsamixer-mem.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(alsamixer_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o alsamixer-mem.o `test -f 'mem.c' || echo '$(srcdir)/'`mem.c
+
+alsamixer-mem.obj: mem.c
+@am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(alsamixer_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT alsamixer-mem.obj -MD -MP -MF $(DEPDIR)/alsamixer-mem.Tpo -c -o alsamixer-mem.obj `if test -f 'mem.c'; then $(CYGPATH_W) 'mem.c'; else $(CYGPATH_W) '$(srcdir)/mem.c'; fi`
+@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/alsamixer-mem.Tpo $(DEPDIR)/alsamixer-mem.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='mem.c' object='alsamixer-mem.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(alsamixer_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o alsamixer-mem.obj `if test -f 'mem.c'; then $(CYGPATH_W) 'mem.c'; else $(CYGPATH_W) '$(srcdir)/mem.c'; fi`
+
+alsamixer-mixer_controls.o: mixer_controls.c
+@am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(alsamixer_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT alsamixer-mixer_controls.o -MD -MP -MF $(DEPDIR)/alsamixer-mixer_controls.Tpo -c -o alsamixer-mixer_controls.o `test -f 'mixer_controls.c' || echo '$(srcdir)/'`mixer_controls.c
+@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/alsamixer-mixer_controls.Tpo $(DEPDIR)/alsamixer-mixer_controls.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='mixer_controls.c' object='alsamixer-mixer_controls.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(alsamixer_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o alsamixer-mixer_controls.o `test -f 'mixer_controls.c' || echo '$(srcdir)/'`mixer_controls.c
+
+alsamixer-mixer_controls.obj: mixer_controls.c
+@am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(alsamixer_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT alsamixer-mixer_controls.obj -MD -MP -MF $(DEPDIR)/alsamixer-mixer_controls.Tpo -c -o alsamixer-mixer_controls.obj `if test -f 'mixer_controls.c'; then $(CYGPATH_W) 'mixer_controls.c'; else $(CYGPATH_W) '$(srcdir)/mixer_controls.c'; fi`
+@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/alsamixer-mixer_controls.Tpo $(DEPDIR)/alsamixer-mixer_controls.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='mixer_controls.c' object='alsamixer-mixer_controls.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(alsamixer_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o alsamixer-mixer_controls.obj `if test -f 'mixer_controls.c'; then $(CYGPATH_W) 'mixer_controls.c'; else $(CYGPATH_W) '$(srcdir)/mixer_controls.c'; fi`
+
+alsamixer-mixer_display.o: mixer_display.c
+@am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(alsamixer_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT alsamixer-mixer_display.o -MD -MP -MF $(DEPDIR)/alsamixer-mixer_display.Tpo -c -o alsamixer-mixer_display.o `test -f 'mixer_display.c' || echo '$(srcdir)/'`mixer_display.c
+@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/alsamixer-mixer_display.Tpo $(DEPDIR)/alsamixer-mixer_display.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='mixer_display.c' object='alsamixer-mixer_display.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(alsamixer_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o alsamixer-mixer_display.o `test -f 'mixer_display.c' || echo '$(srcdir)/'`mixer_display.c
+
+alsamixer-mixer_display.obj: mixer_display.c
+@am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(alsamixer_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT alsamixer-mixer_display.obj -MD -MP -MF $(DEPDIR)/alsamixer-mixer_display.Tpo -c -o alsamixer-mixer_display.obj `if test -f 'mixer_display.c'; then $(CYGPATH_W) 'mixer_display.c'; else $(CYGPATH_W) '$(srcdir)/mixer_display.c'; fi`
+@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/alsamixer-mixer_display.Tpo $(DEPDIR)/alsamixer-mixer_display.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='mixer_display.c' object='alsamixer-mixer_display.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(alsamixer_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o alsamixer-mixer_display.obj `if test -f 'mixer_display.c'; then $(CYGPATH_W) 'mixer_display.c'; else $(CYGPATH_W) '$(srcdir)/mixer_display.c'; fi`
+
+alsamixer-mixer_widget.o: mixer_widget.c
+@am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(alsamixer_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT alsamixer-mixer_widget.o -MD -MP -MF $(DEPDIR)/alsamixer-mixer_widget.Tpo -c -o alsamixer-mixer_widget.o `test -f 'mixer_widget.c' || echo '$(srcdir)/'`mixer_widget.c
+@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/alsamixer-mixer_widget.Tpo $(DEPDIR)/alsamixer-mixer_widget.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='mixer_widget.c' object='alsamixer-mixer_widget.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(alsamixer_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o alsamixer-mixer_widget.o `test -f 'mixer_widget.c' || echo '$(srcdir)/'`mixer_widget.c
+
+alsamixer-mixer_widget.obj: mixer_widget.c
+@am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(alsamixer_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT alsamixer-mixer_widget.obj -MD -MP -MF $(DEPDIR)/alsamixer-mixer_widget.Tpo -c -o alsamixer-mixer_widget.obj `if test -f 'mixer_widget.c'; then $(CYGPATH_W) 'mixer_widget.c'; else $(CYGPATH_W) '$(srcdir)/mixer_widget.c'; fi`
+@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/alsamixer-mixer_widget.Tpo $(DEPDIR)/alsamixer-mixer_widget.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='mixer_widget.c' object='alsamixer-mixer_widget.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(alsamixer_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o alsamixer-mixer_widget.obj `if test -f 'mixer_widget.c'; then $(CYGPATH_W) 'mixer_widget.c'; else $(CYGPATH_W) '$(srcdir)/mixer_widget.c'; fi`
+
+alsamixer-proc_files.o: proc_files.c
+@am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(alsamixer_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT alsamixer-proc_files.o -MD -MP -MF $(DEPDIR)/alsamixer-proc_files.Tpo -c -o alsamixer-proc_files.o `test -f 'proc_files.c' || echo '$(srcdir)/'`proc_files.c
+@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/alsamixer-proc_files.Tpo $(DEPDIR)/alsamixer-proc_files.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='proc_files.c' object='alsamixer-proc_files.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(alsamixer_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o alsamixer-proc_files.o `test -f 'proc_files.c' || echo '$(srcdir)/'`proc_files.c
+
+alsamixer-proc_files.obj: proc_files.c
+@am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(alsamixer_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT alsamixer-proc_files.obj -MD -MP -MF $(DEPDIR)/alsamixer-proc_files.Tpo -c -o alsamixer-proc_files.obj `if test -f 'proc_files.c'; then $(CYGPATH_W) 'proc_files.c'; else $(CYGPATH_W) '$(srcdir)/proc_files.c'; fi`
+@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/alsamixer-proc_files.Tpo $(DEPDIR)/alsamixer-proc_files.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='proc_files.c' object='alsamixer-proc_files.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(alsamixer_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o alsamixer-proc_files.obj `if test -f 'proc_files.c'; then $(CYGPATH_W) 'proc_files.c'; else $(CYGPATH_W) '$(srcdir)/proc_files.c'; fi`
+
+alsamixer-textbox.o: textbox.c
+@am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(alsamixer_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT alsamixer-textbox.o -MD -MP -MF $(DEPDIR)/alsamixer-textbox.Tpo -c -o alsamixer-textbox.o `test -f 'textbox.c' || echo '$(srcdir)/'`textbox.c
+@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/alsamixer-textbox.Tpo $(DEPDIR)/alsamixer-textbox.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='textbox.c' object='alsamixer-textbox.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(alsamixer_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o alsamixer-textbox.o `test -f 'textbox.c' || echo '$(srcdir)/'`textbox.c
+
+alsamixer-textbox.obj: textbox.c
+@am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(alsamixer_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT alsamixer-textbox.obj -MD -MP -MF $(DEPDIR)/alsamixer-textbox.Tpo -c -o alsamixer-textbox.obj `if test -f 'textbox.c'; then $(CYGPATH_W) 'textbox.c'; else $(CYGPATH_W) '$(srcdir)/textbox.c'; fi`
+@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/alsamixer-textbox.Tpo $(DEPDIR)/alsamixer-textbox.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='textbox.c' object='alsamixer-textbox.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(alsamixer_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o alsamixer-textbox.obj `if test -f 'textbox.c'; then $(CYGPATH_W) 'textbox.c'; else $(CYGPATH_W) '$(srcdir)/textbox.c'; fi`
+
+alsamixer-utils.o: utils.c
+@am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(alsamixer_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT alsamixer-utils.o -MD -MP -MF $(DEPDIR)/alsamixer-utils.Tpo -c -o alsamixer-utils.o `test -f 'utils.c' || echo '$(srcdir)/'`utils.c
+@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/alsamixer-utils.Tpo $(DEPDIR)/alsamixer-utils.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='utils.c' object='alsamixer-utils.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(alsamixer_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o alsamixer-utils.o `test -f 'utils.c' || echo '$(srcdir)/'`utils.c
+
+alsamixer-utils.obj: utils.c
+@am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(alsamixer_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT alsamixer-utils.obj -MD -MP -MF $(DEPDIR)/alsamixer-utils.Tpo -c -o alsamixer-utils.obj `if test -f 'utils.c'; then $(CYGPATH_W) 'utils.c'; else $(CYGPATH_W) '$(srcdir)/utils.c'; fi`
+@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/alsamixer-utils.Tpo $(DEPDIR)/alsamixer-utils.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='utils.c' object='alsamixer-utils.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(alsamixer_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o alsamixer-utils.obj `if test -f 'utils.c'; then $(CYGPATH_W) 'utils.c'; else $(CYGPATH_W) '$(srcdir)/utils.c'; fi`
+
+alsamixer-volume_mapping.o: volume_mapping.c
+@am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(alsamixer_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT alsamixer-volume_mapping.o -MD -MP -MF $(DEPDIR)/alsamixer-volume_mapping.Tpo -c -o alsamixer-volume_mapping.o `test -f 'volume_mapping.c' || echo '$(srcdir)/'`volume_mapping.c
+@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/alsamixer-volume_mapping.Tpo $(DEPDIR)/alsamixer-volume_mapping.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='volume_mapping.c' object='alsamixer-volume_mapping.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(alsamixer_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o alsamixer-volume_mapping.o `test -f 'volume_mapping.c' || echo '$(srcdir)/'`volume_mapping.c
+
+alsamixer-volume_mapping.obj: volume_mapping.c
+@am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(alsamixer_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT alsamixer-volume_mapping.obj -MD -MP -MF $(DEPDIR)/alsamixer-volume_mapping.Tpo -c -o alsamixer-volume_mapping.obj `if test -f 'volume_mapping.c'; then $(CYGPATH_W) 'volume_mapping.c'; else $(CYGPATH_W) '$(srcdir)/volume_mapping.c'; fi`
+@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/alsamixer-volume_mapping.Tpo $(DEPDIR)/alsamixer-volume_mapping.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='volume_mapping.c' object='alsamixer-volume_mapping.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(alsamixer_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o alsamixer-volume_mapping.obj `if test -f 'volume_mapping.c'; then $(CYGPATH_W) 'volume_mapping.c'; else $(CYGPATH_W) '$(srcdir)/volume_mapping.c'; fi`
+
+alsamixer-widget.o: widget.c
+@am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(alsamixer_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT alsamixer-widget.o -MD -MP -MF $(DEPDIR)/alsamixer-widget.Tpo -c -o alsamixer-widget.o `test -f 'widget.c' || echo '$(srcdir)/'`widget.c
+@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/alsamixer-widget.Tpo $(DEPDIR)/alsamixer-widget.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='widget.c' object='alsamixer-widget.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(alsamixer_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o alsamixer-widget.o `test -f 'widget.c' || echo '$(srcdir)/'`widget.c
+
+alsamixer-widget.obj: widget.c
+@am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(alsamixer_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT alsamixer-widget.obj -MD -MP -MF $(DEPDIR)/alsamixer-widget.Tpo -c -o alsamixer-widget.obj `if test -f 'widget.c'; then $(CYGPATH_W) 'widget.c'; else $(CYGPATH_W) '$(srcdir)/widget.c'; fi`
+@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/alsamixer-widget.Tpo $(DEPDIR)/alsamixer-widget.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='widget.c' object='alsamixer-widget.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(alsamixer_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o alsamixer-widget.obj `if test -f 'widget.c'; then $(CYGPATH_W) 'widget.c'; else $(CYGPATH_W) '$(srcdir)/widget.c'; fi`
install-man1: $(man_MANS)
@$(NORMAL_INSTALL)
- test -z "$(man1dir)" || $(MKDIR_P) "$(DESTDIR)$(man1dir)"
- @list=''; test -n "$(man1dir)" || exit 0; \
- { for i in $$list; do echo "$$i"; done; \
- l2='$(man_MANS)'; for i in $$l2; do echo "$$i"; done | \
- sed -n '/\.1[a-z]*$$/p'; \
+ @list1=''; \
+ list2='$(man_MANS)'; \
+ test -n "$(man1dir)" \
+ && test -n "`echo $$list1$$list2`" \
+ || exit 0; \
+ echo " $(MKDIR_P) '$(DESTDIR)$(man1dir)'"; \
+ $(MKDIR_P) "$(DESTDIR)$(man1dir)" || exit 1; \
+ { for i in $$list1; do echo "$$i"; done; \
+ if test -n "$$list2"; then \
+ for i in $$list2; do echo "$$i"; done \
+ | sed -n '/\.1[a-z]*$$/p'; \
+ fi; \
} | while read p; do \
if test -f $$p; then d=; else d="$(srcdir)/"; fi; \
echo "$$d$$p"; echo "$$p"; \
&& $(am__cd) $(top_srcdir) \
&& gtags -i $(GTAGS_ARGS) "$$here"
+cscopelist: $(HEADERS) $(SOURCES) $(LISP)
+ list='$(SOURCES) $(HEADERS) $(LISP)'; \
+ case "$(srcdir)" in \
+ [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
+ *) sdir=$(subdir)/$(srcdir) ;; \
+ esac; \
+ for i in $$list; do \
+ if test -f "$$i"; then \
+ echo "$(subdir)/$$i"; \
+ else \
+ echo "$$sdir/$$i"; \
+ fi; \
+ done >> $(top_builddir)/cscope.files
+
distclean-tags:
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
if test -f "$$d$$p"; then echo "$$d$$p"; else :; fi; done`; \
if test -n "$$list" && \
grep 'ab help2man is required to generate this page' $$list >/dev/null; then \
- echo "error: found man pages containing the \`missing help2man' replacement text:" >&2; \
+ echo "error: found man pages containing the 'missing help2man' replacement text:" >&2; \
grep -l 'ab help2man is required to generate this page' $$list | sed 's/^/ /' >&2; \
echo " to fix them, install help2man, remove and regenerate the man pages;" >&2; \
- echo " typically \`make maintainer-clean' will remove them" >&2; \
+ echo " typically 'make maintainer-clean' will remove them" >&2; \
exit 1; \
else :; fi; \
else :; fi
.MAKE: install-am install-strip
.PHONY: CTAGS GTAGS all all-am check check-am clean clean-binPROGRAMS \
- clean-generic ctags distclean distclean-compile \
+ clean-generic cscopelist ctags distclean distclean-compile \
distclean-generic distclean-tags distdir dvi dvi-am html \
html-am info info-am install install-am install-binPROGRAMS \
install-data install-data-am install-dvi install-dvi-am \
int main(int argc, char *argv[])
{
+ if (!isatty(fileno(stdin)))
+ return 0;
+
setlocale(LC_ALL, "");
#ifdef ENABLE_NLS_IN_CURSES
textdomain(PACKAGE);
}
if (!active_widget)
break;
- if (controls_changed)
+ if (controls_changed) {
+ controls_changed = FALSE;
+ create_controls();
+ control_values_changed = FALSE;
display_controls();
+ } else if (control_values_changed) {
+ control_values_changed = FALSE;
+ display_controls();
+ }
}
free(pollfds);
}
display_no_controls();
}
display_scroll_indicators();
- controls_changed = FALSE;
}
void compute_controls_layout(void)
snd_mixer_selem_id_t *current_selem_id;
unsigned int current_control_flags;
+bool control_values_changed;
bool controls_changed;
enum channel_mask {
static int elem_callback(snd_mixer_elem_t *elem, unsigned int mask)
{
- unsigned int i;
-
- if (mask & (SND_CTL_EVENT_MASK_REMOVE |
- SND_CTL_EVENT_MASK_INFO |
- SND_CTL_EVENT_MASK_VALUE))
+ if (mask == SND_CTL_EVENT_MASK_REMOVE) {
controls_changed = TRUE;
+ } else {
+ if (mask & SND_CTL_EVENT_MASK_VALUE)
+ control_values_changed = TRUE;
- if (mask & SND_CTL_EVENT_MASK_INFO)
- for (i = 0; i < controls_count; ++i)
- if (controls[i].elem == elem) {
- controls[i].flags &= ~IS_ACTIVE;
- if (snd_mixer_selem_is_active(controls[i].elem))
- controls[i].flags |= IS_ACTIVE;
- }
+ if (mask & SND_CTL_EVENT_MASK_INFO)
+ controls_changed = TRUE;
+ }
return 0;
}
extern snd_mixer_selem_id_t *current_selem_id;
extern unsigned int current_control_flags;
+extern bool control_values_changed;
extern bool controls_changed;
void create_mixer_object(struct snd_mixer_selem_regopt *selem_regopt);
alsaucm_SOURCES = usecase.c
-INCLUDES = \
+AM_CPPFLAGS = \
-Wall -I$(top_srcdir)/include
alsaucm_LDADD = -lasound
# local build
-INCLUDES += -I$(top_srcdir)/../alsa-lib/include
+AM_CPPFLAGS += -I$(top_srcdir)/../alsa-lib/include
alsaucm_LDADD += -L$(top_srcdir)/../alsa-lib/src/.libs
-# Makefile.in generated by automake 1.11.3 from Makefile.am.
+# Makefile.in generated by automake 1.12.2 from Makefile.am.
# @configure_input@
-# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software
-# Foundation, Inc.
+# Copyright (C) 1994-2012 Free Software Foundation, Inc.
+
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
@SET_MAKE@
VPATH = @srcdir@
+am__make_dryrun = \
+ { \
+ am__dry=no; \
+ case $$MAKEFLAGS in \
+ *\\[\ \ ]*) \
+ echo 'am--echo: ; @echo "AM" OK' | $(MAKE) -f - 2>/dev/null \
+ | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
+ *) \
+ for am__flg in $$MAKEFLAGS; do \
+ case $$am__flg in \
+ *=*|--*) ;; \
+ *n*) am__dry=yes; break;; \
+ esac; \
+ done;; \
+ esac; \
+ test $$am__dry = yes; \
+ }
pkgdatadir = $(datadir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
host_triplet = @host@
bin_PROGRAMS = alsaucm$(EXEEXT)
subdir = alsaucm
-DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
+DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in \
+ $(top_srcdir)/depcomp
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/m4/gettext.m4 \
$(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/lib-ld.m4 \
$(top_srcdir)/m4/lib-link.m4 $(top_srcdir)/m4/lib-prefix.m4 \
$(top_srcdir)/m4/nls.m4 $(top_srcdir)/m4/po.m4 \
$(top_srcdir)/m4/progtest.m4 $(top_srcdir)/acinclude.m4 \
- $(top_srcdir)/configure.in
+ $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(install_sh) -d
LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
SOURCES = $(alsaucm_SOURCES)
DIST_SOURCES = $(alsaucm_SOURCES)
+am__can_run_installinfo = \
+ case $$AM_UPDATE_INFO_DIR in \
+ n|no|NO) false;; \
+ *) (install-info --version) >/dev/null 2>&1;; \
+ esac
ETAGS = etags
CTAGS = ctags
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
ACLOCAL = @ACLOCAL@
+ALSACTL_DAEMONSWITCH = @ALSACTL_DAEMONSWITCH@
+ALSACTL_PIDFILE_DIR = @ALSACTL_PIDFILE_DIR@
ALSA_CFLAGS = @ALSA_CFLAGS@
ALSA_LIBS = @ALSA_LIBS@
AMTAR = @AMTAR@
+ASOUND_LOCK_DIR = @ASOUND_LOCK_DIR@
ASOUND_STATE_DIR = @ASOUND_STATE_DIR@
AUTOCONF = @AUTOCONF@
AUTOHEADER = @AUTOHEADER@
LTLIBICONV = @LTLIBICONV@
LTLIBINTL = @LTLIBINTL@
LTLIBOBJS = @LTLIBOBJS@
+MAINT = @MAINT@
MAKEINFO = @MAKEINFO@
MKDIR_P = @MKDIR_P@
MSGFMT = @MSGFMT@
localstatedir = @localstatedir@
mandir = @mandir@
mkdir_p = @mkdir_p@
+mydatadir = @mydatadir@
ncurses5_config = @ncurses5_config@
ncursesw5_config = @ncursesw5_config@
oldincludedir = @oldincludedir@
alsaucm_SOURCES = usecase.c
# local build
-INCLUDES = -Wall -I$(top_srcdir)/include \
+AM_CPPFLAGS = -Wall -I$(top_srcdir)/include \
-I$(top_srcdir)/../alsa-lib/include
alsaucm_LDADD = -lasound -L$(top_srcdir)/../alsa-lib/src/.libs
all: all-am
.SUFFIXES:
.SUFFIXES: .c .o .obj
-$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps)
@for dep in $?; do \
case '$(am__configure_deps)' in \
*$$dep*) \
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-$(top_srcdir)/configure: $(am__configure_deps)
+$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-$(ACLOCAL_M4): $(am__aclocal_m4_deps)
+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(am__aclocal_m4_deps):
install-binPROGRAMS: $(bin_PROGRAMS)
@$(NORMAL_INSTALL)
- test -z "$(bindir)" || $(MKDIR_P) "$(DESTDIR)$(bindir)"
@list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \
+ if test -n "$$list"; then \
+ echo " $(MKDIR_P) '$(DESTDIR)$(bindir)'"; \
+ $(MKDIR_P) "$(DESTDIR)$(bindir)" || exit 1; \
+ fi; \
for p in $$list; do echo "$$p $$p"; done | \
sed 's/$(EXEEXT)$$//' | \
while read p p1; do if test -f $$p; \
&& $(am__cd) $(top_srcdir) \
&& gtags -i $(GTAGS_ARGS) "$$here"
+cscopelist: $(HEADERS) $(SOURCES) $(LISP)
+ list='$(SOURCES) $(HEADERS) $(LISP)'; \
+ case "$(srcdir)" in \
+ [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
+ *) sdir=$(subdir)/$(srcdir) ;; \
+ esac; \
+ for i in $$list; do \
+ if test -f "$$i"; then \
+ echo "$(subdir)/$$i"; \
+ else \
+ echo "$$sdir/$$i"; \
+ fi; \
+ done >> $(top_builddir)/cscope.files
+
distclean-tags:
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
.MAKE: install-am install-strip
.PHONY: CTAGS GTAGS all all-am check check-am clean clean-binPROGRAMS \
- clean-generic ctags distclean distclean-compile \
+ clean-generic cscopelist ctags distclean distclean-compile \
distclean-generic distclean-tags distdir dvi dvi-am html \
html-am info info-am install install-am install-binPROGRAMS \
install-data install-data-am install-dvi install-dvi-am \
-INCLUDES = -I$(top_srcdir)/include
+AM_CPPFLAGS = -I$(top_srcdir)/include
EXTRA_DIST = amidi.1
bin_PROGRAMS = amidi
-# Makefile.in generated by automake 1.11.3 from Makefile.am.
+# Makefile.in generated by automake 1.12.2 from Makefile.am.
# @configure_input@
-# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software
-# Foundation, Inc.
+# Copyright (C) 1994-2012 Free Software Foundation, Inc.
+
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
@SET_MAKE@
VPATH = @srcdir@
+am__make_dryrun = \
+ { \
+ am__dry=no; \
+ case $$MAKEFLAGS in \
+ *\\[\ \ ]*) \
+ echo 'am--echo: ; @echo "AM" OK' | $(MAKE) -f - 2>/dev/null \
+ | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
+ *) \
+ for am__flg in $$MAKEFLAGS; do \
+ case $$am__flg in \
+ *=*|--*) ;; \
+ *n*) am__dry=yes; break;; \
+ esac; \
+ done;; \
+ esac; \
+ test $$am__dry = yes; \
+ }
pkgdatadir = $(datadir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
host_triplet = @host@
bin_PROGRAMS = amidi$(EXEEXT)
subdir = amidi
-DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
+DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in \
+ $(top_srcdir)/depcomp
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/m4/gettext.m4 \
$(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/lib-ld.m4 \
$(top_srcdir)/m4/lib-link.m4 $(top_srcdir)/m4/lib-prefix.m4 \
$(top_srcdir)/m4/nls.m4 $(top_srcdir)/m4/po.m4 \
$(top_srcdir)/m4/progtest.m4 $(top_srcdir)/acinclude.m4 \
- $(top_srcdir)/configure.in
+ $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(install_sh) -d
LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
SOURCES = amidi.c
DIST_SOURCES = amidi.c
+am__can_run_installinfo = \
+ case $$AM_UPDATE_INFO_DIR in \
+ n|no|NO) false;; \
+ *) (install-info --version) >/dev/null 2>&1;; \
+ esac
am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
am__vpath_adj = case $$p in \
$(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
CTAGS = ctags
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
ACLOCAL = @ACLOCAL@
+ALSACTL_DAEMONSWITCH = @ALSACTL_DAEMONSWITCH@
+ALSACTL_PIDFILE_DIR = @ALSACTL_PIDFILE_DIR@
ALSA_CFLAGS = @ALSA_CFLAGS@
ALSA_LIBS = @ALSA_LIBS@
AMTAR = @AMTAR@
+ASOUND_LOCK_DIR = @ASOUND_LOCK_DIR@
ASOUND_STATE_DIR = @ASOUND_STATE_DIR@
AUTOCONF = @AUTOCONF@
AUTOHEADER = @AUTOHEADER@
LTLIBICONV = @LTLIBICONV@
LTLIBINTL = @LTLIBINTL@
LTLIBOBJS = @LTLIBOBJS@
+MAINT = @MAINT@
MAKEINFO = @MAKEINFO@
MKDIR_P = @MKDIR_P@
MSGFMT = @MSGFMT@
localstatedir = @localstatedir@
mandir = @mandir@
mkdir_p = @mkdir_p@
+mydatadir = @mydatadir@
ncurses5_config = @ncurses5_config@
ncursesw5_config = @ncursesw5_config@
oldincludedir = @oldincludedir@
top_srcdir = @top_srcdir@
udevrulesdir = @udevrulesdir@
xmlto = @xmlto@
-INCLUDES = -I$(top_srcdir)/include
+AM_CPPFLAGS = -I$(top_srcdir)/include
EXTRA_DIST = amidi.1
man_MANS = amidi.1
all: all-am
.SUFFIXES:
.SUFFIXES: .c .o .obj
-$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps)
@for dep in $?; do \
case '$(am__configure_deps)' in \
*$$dep*) \
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-$(top_srcdir)/configure: $(am__configure_deps)
+$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-$(ACLOCAL_M4): $(am__aclocal_m4_deps)
+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(am__aclocal_m4_deps):
install-binPROGRAMS: $(bin_PROGRAMS)
@$(NORMAL_INSTALL)
- test -z "$(bindir)" || $(MKDIR_P) "$(DESTDIR)$(bindir)"
@list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \
+ if test -n "$$list"; then \
+ echo " $(MKDIR_P) '$(DESTDIR)$(bindir)'"; \
+ $(MKDIR_P) "$(DESTDIR)$(bindir)" || exit 1; \
+ fi; \
for p in $$list; do echo "$$p $$p"; done | \
sed 's/$(EXEEXT)$$//' | \
while read p p1; do if test -f $$p; \
@am__fastdepCC_FALSE@ $(COMPILE) -c `$(CYGPATH_W) '$<'`
install-man1: $(man_MANS)
@$(NORMAL_INSTALL)
- test -z "$(man1dir)" || $(MKDIR_P) "$(DESTDIR)$(man1dir)"
- @list=''; test -n "$(man1dir)" || exit 0; \
- { for i in $$list; do echo "$$i"; done; \
- l2='$(man_MANS)'; for i in $$l2; do echo "$$i"; done | \
- sed -n '/\.1[a-z]*$$/p'; \
+ @list1=''; \
+ list2='$(man_MANS)'; \
+ test -n "$(man1dir)" \
+ && test -n "`echo $$list1$$list2`" \
+ || exit 0; \
+ echo " $(MKDIR_P) '$(DESTDIR)$(man1dir)'"; \
+ $(MKDIR_P) "$(DESTDIR)$(man1dir)" || exit 1; \
+ { for i in $$list1; do echo "$$i"; done; \
+ if test -n "$$list2"; then \
+ for i in $$list2; do echo "$$i"; done \
+ | sed -n '/\.1[a-z]*$$/p'; \
+ fi; \
} | while read p; do \
if test -f $$p; then d=; else d="$(srcdir)/"; fi; \
echo "$$d$$p"; echo "$$p"; \
&& $(am__cd) $(top_srcdir) \
&& gtags -i $(GTAGS_ARGS) "$$here"
+cscopelist: $(HEADERS) $(SOURCES) $(LISP)
+ list='$(SOURCES) $(HEADERS) $(LISP)'; \
+ case "$(srcdir)" in \
+ [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
+ *) sdir=$(subdir)/$(srcdir) ;; \
+ esac; \
+ for i in $$list; do \
+ if test -f "$$i"; then \
+ echo "$(subdir)/$$i"; \
+ else \
+ echo "$$sdir/$$i"; \
+ fi; \
+ done >> $(top_builddir)/cscope.files
+
distclean-tags:
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
if test -f "$$d$$p"; then echo "$$d$$p"; else :; fi; done`; \
if test -n "$$list" && \
grep 'ab help2man is required to generate this page' $$list >/dev/null; then \
- echo "error: found man pages containing the \`missing help2man' replacement text:" >&2; \
+ echo "error: found man pages containing the 'missing help2man' replacement text:" >&2; \
grep -l 'ab help2man is required to generate this page' $$list | sed 's/^/ /' >&2; \
echo " to fix them, install help2man, remove and regenerate the man pages;" >&2; \
- echo " typically \`make maintainer-clean' will remove them" >&2; \
+ echo " typically 'make maintainer-clean' will remove them" >&2; \
exit 1; \
else :; fi; \
else :; fi
.MAKE: install-am install-strip
.PHONY: CTAGS GTAGS all all-am check check-am clean clean-binPROGRAMS \
- clean-generic ctags distclean distclean-compile \
+ clean-generic cscopelist ctags distclean distclean-compile \
distclean-generic distclean-tags distdir dvi dvi-am html \
html-am info info-am install install-am install-binPROGRAMS \
install-data install-data-am install-dvi install-dvi-am \
.SH DESCRIPTION
.B amidi
-is a command-line utility which allows to receive and send
+is a command-line utility which allows one to receive and send
SysEx (system exclusive) data from/to external MIDI devices.
It can also send any other MIDI commands.
default rawmidi definitions
.br
.I /etc/asound.conf
-system-wide rawmidi definitions
+system\-wide rawmidi definitions
.br
.I ~/.asoundrc
user specific rawmidi definitions
-INCLUDES = -I$(top_srcdir)/include
+AM_CPPFLAGS = -I$(top_srcdir)/include
LDADD = -lm
# LDFLAGS = -static
# CFLAGS += -g -Wall
-# Makefile.in generated by automake 1.11.3 from Makefile.am.
+# Makefile.in generated by automake 1.12.2 from Makefile.am.
# @configure_input@
-# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software
-# Foundation, Inc.
+# Copyright (C) 1994-2012 Free Software Foundation, Inc.
+
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
VPATH = @srcdir@
+am__make_dryrun = \
+ { \
+ am__dry=no; \
+ case $$MAKEFLAGS in \
+ *\\[\ \ ]*) \
+ echo 'am--echo: ; @echo "AM" OK' | $(MAKE) -f - 2>/dev/null \
+ | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
+ *) \
+ for am__flg in $$MAKEFLAGS; do \
+ case $$am__flg in \
+ *=*|--*) ;; \
+ *n*) am__dry=yes; break;; \
+ esac; \
+ done;; \
+ esac; \
+ test $$am__dry = yes; \
+ }
pkgdatadir = $(datadir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
bin_PROGRAMS = amixer$(EXEEXT)
subdir = amixer
DIST_COMMON = $(noinst_HEADERS) $(srcdir)/Makefile.am \
- $(srcdir)/Makefile.in
+ $(srcdir)/Makefile.in $(top_srcdir)/depcomp
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/m4/gettext.m4 \
$(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/lib-ld.m4 \
$(top_srcdir)/m4/lib-link.m4 $(top_srcdir)/m4/lib-prefix.m4 \
$(top_srcdir)/m4/nls.m4 $(top_srcdir)/m4/po.m4 \
$(top_srcdir)/m4/progtest.m4 $(top_srcdir)/acinclude.m4 \
- $(top_srcdir)/configure.in
+ $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(install_sh) -d
LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
SOURCES = $(amixer_SOURCES)
DIST_SOURCES = $(amixer_SOURCES)
+am__can_run_installinfo = \
+ case $$AM_UPDATE_INFO_DIR in \
+ n|no|NO) false;; \
+ *) (install-info --version) >/dev/null 2>&1;; \
+ esac
am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
am__vpath_adj = case $$p in \
$(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
CTAGS = ctags
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
ACLOCAL = @ACLOCAL@
+ALSACTL_DAEMONSWITCH = @ALSACTL_DAEMONSWITCH@
+ALSACTL_PIDFILE_DIR = @ALSACTL_PIDFILE_DIR@
ALSA_CFLAGS = @ALSA_CFLAGS@
ALSA_LIBS = @ALSA_LIBS@
AMTAR = @AMTAR@
+ASOUND_LOCK_DIR = @ASOUND_LOCK_DIR@
ASOUND_STATE_DIR = @ASOUND_STATE_DIR@
AUTOCONF = @AUTOCONF@
AUTOHEADER = @AUTOHEADER@
LTLIBICONV = @LTLIBICONV@
LTLIBINTL = @LTLIBINTL@
LTLIBOBJS = @LTLIBOBJS@
+MAINT = @MAINT@
MAKEINFO = @MAKEINFO@
MKDIR_P = @MKDIR_P@
MSGFMT = @MSGFMT@
localstatedir = @localstatedir@
mandir = @mandir@
mkdir_p = @mkdir_p@
+mydatadir = @mydatadir@
ncurses5_config = @ncurses5_config@
ncursesw5_config = @ncursesw5_config@
oldincludedir = @oldincludedir@
top_srcdir = @top_srcdir@
udevrulesdir = @udevrulesdir@
xmlto = @xmlto@
-INCLUDES = -I$(top_srcdir)/include
+AM_CPPFLAGS = -I$(top_srcdir)/include
LDADD = -lm
amixer_SOURCES = amixer.c ../alsamixer/volume_mapping.c
noinst_HEADERS = amixer.h
.SUFFIXES:
.SUFFIXES: .c .o .obj
-$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps)
@for dep in $?; do \
case '$(am__configure_deps)' in \
*$$dep*) \
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-$(top_srcdir)/configure: $(am__configure_deps)
+$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-$(ACLOCAL_M4): $(am__aclocal_m4_deps)
+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(am__aclocal_m4_deps):
install-binPROGRAMS: $(bin_PROGRAMS)
@$(NORMAL_INSTALL)
- test -z "$(bindir)" || $(MKDIR_P) "$(DESTDIR)$(bindir)"
@list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \
+ if test -n "$$list"; then \
+ echo " $(MKDIR_P) '$(DESTDIR)$(bindir)'"; \
+ $(MKDIR_P) "$(DESTDIR)$(bindir)" || exit 1; \
+ fi; \
for p in $$list; do echo "$$p $$p"; done | \
sed 's/$(EXEEXT)$$//' | \
while read p p1; do if test -f $$p; \
@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o volume_mapping.obj `if test -f '../alsamixer/volume_mapping.c'; then $(CYGPATH_W) '../alsamixer/volume_mapping.c'; else $(CYGPATH_W) '$(srcdir)/../alsamixer/volume_mapping.c'; fi`
install-man1: $(man_MANS)
@$(NORMAL_INSTALL)
- test -z "$(man1dir)" || $(MKDIR_P) "$(DESTDIR)$(man1dir)"
- @list=''; test -n "$(man1dir)" || exit 0; \
- { for i in $$list; do echo "$$i"; done; \
- l2='$(man_MANS)'; for i in $$l2; do echo "$$i"; done | \
- sed -n '/\.1[a-z]*$$/p'; \
+ @list1=''; \
+ list2='$(man_MANS)'; \
+ test -n "$(man1dir)" \
+ && test -n "`echo $$list1$$list2`" \
+ || exit 0; \
+ echo " $(MKDIR_P) '$(DESTDIR)$(man1dir)'"; \
+ $(MKDIR_P) "$(DESTDIR)$(man1dir)" || exit 1; \
+ { for i in $$list1; do echo "$$i"; done; \
+ if test -n "$$list2"; then \
+ for i in $$list2; do echo "$$i"; done \
+ | sed -n '/\.1[a-z]*$$/p'; \
+ fi; \
} | while read p; do \
if test -f $$p; then d=; else d="$(srcdir)/"; fi; \
echo "$$d$$p"; echo "$$p"; \
&& $(am__cd) $(top_srcdir) \
&& gtags -i $(GTAGS_ARGS) "$$here"
+cscopelist: $(HEADERS) $(SOURCES) $(LISP)
+ list='$(SOURCES) $(HEADERS) $(LISP)'; \
+ case "$(srcdir)" in \
+ [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
+ *) sdir=$(subdir)/$(srcdir) ;; \
+ esac; \
+ for i in $$list; do \
+ if test -f "$$i"; then \
+ echo "$(subdir)/$$i"; \
+ else \
+ echo "$$sdir/$$i"; \
+ fi; \
+ done >> $(top_builddir)/cscope.files
+
distclean-tags:
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
if test -f "$$d$$p"; then echo "$$d$$p"; else :; fi; done`; \
if test -n "$$list" && \
grep 'ab help2man is required to generate this page' $$list >/dev/null; then \
- echo "error: found man pages containing the \`missing help2man' replacement text:" >&2; \
+ echo "error: found man pages containing the 'missing help2man' replacement text:" >&2; \
grep -l 'ab help2man is required to generate this page' $$list | sed 's/^/ /' >&2; \
echo " to fix them, install help2man, remove and regenerate the man pages;" >&2; \
- echo " typically \`make maintainer-clean' will remove them" >&2; \
+ echo " typically 'make maintainer-clean' will remove them" >&2; \
exit 1; \
else :; fi; \
else :; fi
.MAKE: install-am install-strip
.PHONY: CTAGS GTAGS all all-am check check-am clean clean-binPROGRAMS \
- clean-generic ctags distclean distclean-compile \
+ clean-generic cscopelist ctags distclean distclean-compile \
distclean-generic distclean-tags distdir dvi dvi-am html \
html-am info info-am install install-am install-binPROGRAMS \
install-data install-data-am install-dvi install-dvi-am \
.SH SYNOPSIS
\fBamixer\fP [\fI\-option\fP] [\fIcmd\fP]
.SH DESCRIPTION
-\fBamixer\fP allows command-line control of the mixer for the ALSA
+\fBamixer\fP allows command\-line control of the mixer for the ALSA
soundcard driver.
\fBamixer\fP supports multiple soundcards.
\fIset\fP or \fIsset\fP <\fISCONTROL\fP> <\fIPARAMETER\fP> ...
Sets the simple mixer control contents. The parameter can be the volume
either as a percentage from 0% to 100% with \fI%\fP suffix,
-a dB gain with \fIdB\fP suffix (like -12.5dB), or an exact hardware value.
+a dB gain with \fIdB\fP suffix (like \-12.5dB), or an exact hardware value.
The dB gain can be used only for the mixer elements with available
dB information.
When plus(+) or minus(\-) letter is appended after
\fI\-s\fP | \fI\-\-stdin\fP
Read from stdin and execute the command on each line sequentially.
-When this option is given, the command in command-line arguments is ignored.
+When this option is given, the command in command\-line arguments is ignored.
Only sset and cset are accepted. Other commands are ignored.
The commands to unmatched ids are ignored without errors too.
capture (recording).\fR
.TP
-\fBamixer \-c 1 \-\- sset Master playback -20dB\fR
-will set the master volume of the second card to -20dB. If the master
+\fBamixer \-c 1 \-\- sset Master playback \-20dB\fR
+will set the master volume of the second card to \-20dB. If the master
has multiple channels, all channels are set to the same value.
.TP
return 0;
}
-static const char *control_iface(snd_ctl_elem_id_t *id)
-{
- return snd_ctl_elem_iface_name(snd_ctl_elem_id_get_interface(id));
-}
-
static const char *control_type(snd_ctl_elem_info_t *info)
{
return snd_ctl_elem_type_name(snd_ctl_elem_info_get_type(info));
#define convert_prange1(val, min, max) \
ceil((val) * ((max) - (min)) * 0.01 + (min))
-static long get_integer(char **ptr, long min, long max)
-{
- long val = min;
- char *p = *ptr, *s;
-
- if (*p == ':')
- p++;
- if (*p == '\0' || (!isdigit(*p) && *p != '-'))
- goto out;
-
- s = p;
- val = strtol(s, &p, 10);
- if (*p == '.') {
- p++;
- strtol(p, &p, 10);
- }
- if (*p == '%') {
- val = (long)convert_prange1(strtod(s, NULL), min, max);
- p++;
- }
- val = check_range(val, min, max);
- if (*p == ',')
- p++;
- out:
- *ptr = p;
- return val;
-}
-
-static long get_integer64(char **ptr, long long min, long long max)
-{
- long long val = min;
- char *p = *ptr, *s;
-
- if (*p == ':')
- p++;
- if (*p == '\0' || (!isdigit(*p) && *p != '-'))
- goto out;
-
- s = p;
- val = strtol(s, &p, 10);
- if (*p == '.') {
- p++;
- strtol(p, &p, 10);
- }
- if (*p == '%') {
- val = (long long)convert_prange1(strtod(s, NULL), min, max);
- p++;
- }
- val = check_range(val, min, max);
- if (*p == ',')
- p++;
- out:
- *ptr = p;
- return val;
-}
-
struct volume_ops {
int (*get_range)(snd_mixer_elem_t *elem, long *min, long *max);
int (*get)(snd_mixer_elem_t *elem, snd_mixer_selem_channel_id_t c,
invalid = 1;
if (*p == '+') {
val = orig + val;
- correct = -1;
+ correct = 1;
} else {
val = orig - val;
- correct = 1;
+ correct = -1;
}
}
p++;
static void show_control_id(snd_ctl_elem_id_t *id)
{
- unsigned int index, device, subdevice;
- printf("numid=%u,iface=%s,name='%s'",
- snd_ctl_elem_id_get_numid(id),
- control_iface(id),
- snd_ctl_elem_id_get_name(id));
- index = snd_ctl_elem_id_get_index(id);
- device = snd_ctl_elem_id_get_device(id);
- subdevice = snd_ctl_elem_id_get_subdevice(id);
- if (index)
- printf(",index=%i", index);
- if (device)
- printf(",device=%i", device);
- if (subdevice)
- printf(",subdevice=%i", subdevice);
+ char *str;
+
+ str = snd_ctl_ascii_elem_id_get(id);
+ if (str)
+ printf("%s", str);
+ free(str);
}
static void print_spaces(unsigned int spaces)
static void print_dB(long dB)
{
- printf("%li.%02lidB", dB / 100, (dB < 0 ? -dB : dB) % 100);
+ if (dB < 0) {
+ printf("-%li.%02lidB", -dB / 100, -dB % 100);
+ } else {
+ printf("%li.%02lidB", dB / 100, dB % 100);
+ }
}
static void decode_tlv(unsigned int spaces, unsigned int *tlv, unsigned int tlv_size)
unsigned int type = tlv[0];
unsigned int size;
unsigned int idx = 0;
+ const char *chmap_type = NULL;
if (tlv_size < 2 * sizeof(unsigned int)) {
printf("TLV size error!\n");
}
switch (type) {
case SND_CTL_TLVT_CONTAINER:
+ printf("container\n");
size += sizeof(unsigned int) -1;
size /= sizeof(unsigned int);
while (idx < size) {
printf("TLV size error in compound!\n");
return;
}
- decode_tlv(spaces + 2, tlv + idx, tlv[idx+1]);
- idx += 2 + (tlv[1] + sizeof(unsigned int) - 1) / sizeof(unsigned int);
+ decode_tlv(spaces + 2, tlv + idx, tlv[idx+1] + 8);
+ idx += 2 + (tlv[idx+1] + sizeof(unsigned int) - 1) / sizeof(unsigned int);
}
break;
case SND_CTL_TLVT_DB_SCALE:
}
} else {
printf("min=");
- print_dB(tlv[2]);
+ print_dB((int)tlv[2]);
printf(",max=");
- print_dB(tlv[3]);
+ print_dB((int)tlv[3]);
}
break;
#endif
}
} else {
printf("min=");
- print_dB(tlv[2]);
+ print_dB((int)tlv[2]);
printf(",max=");
- print_dB(tlv[3]);
+ print_dB((int)tlv[3]);
+ }
+ break;
+#endif
+#ifdef SND_CTL_TLVT_CHMAP_FIXED
+ case SND_CTL_TLVT_CHMAP_FIXED:
+ chmap_type = "fixed";
+ /* Fall through */
+ case SND_CTL_TLVT_CHMAP_VAR:
+ if (!chmap_type)
+ chmap_type = "variable";
+ /* Fall through */
+ case SND_CTL_TLVT_CHMAP_PAIRED:
+ if (!chmap_type)
+ chmap_type = "paired";
+ printf("chmap-%s=", chmap_type);
+
+ while (size > 0) {
+ printf("%s", snd_pcm_chmap_name(tlv[idx++]));
+ size -= sizeof(unsigned int);
+ if (size > 0)
+ printf(",");
}
break;
#endif
return 0;
}
-static int parse_control_id(const char *str, snd_ctl_elem_id_t *id)
-{
- int c, size, numid;
- char *ptr;
-
- while (*str == ' ' || *str == '\t')
- str++;
- if (!(*str))
- return -EINVAL;
- snd_ctl_elem_id_set_interface(id, SND_CTL_ELEM_IFACE_MIXER); /* default */
- while (*str) {
- if (!strncasecmp(str, "numid=", 6)) {
- str += 6;
- numid = atoi(str);
- if (numid <= 0) {
- fprintf(stderr, "amixer: Invalid numid %d\n", numid);
- return -EINVAL;
- }
- snd_ctl_elem_id_set_numid(id, atoi(str));
- while (isdigit(*str))
- str++;
- } else if (!strncasecmp(str, "iface=", 6)) {
- str += 6;
- if (!strncasecmp(str, "card", 4)) {
- snd_ctl_elem_id_set_interface(id, SND_CTL_ELEM_IFACE_CARD);
- str += 4;
- } else if (!strncasecmp(str, "mixer", 5)) {
- snd_ctl_elem_id_set_interface(id, SND_CTL_ELEM_IFACE_MIXER);
- str += 5;
- } else if (!strncasecmp(str, "pcm", 3)) {
- snd_ctl_elem_id_set_interface(id, SND_CTL_ELEM_IFACE_PCM);
- str += 3;
- } else if (!strncasecmp(str, "rawmidi", 7)) {
- snd_ctl_elem_id_set_interface(id, SND_CTL_ELEM_IFACE_RAWMIDI);
- str += 7;
- } else if (!strncasecmp(str, "timer", 5)) {
- snd_ctl_elem_id_set_interface(id, SND_CTL_ELEM_IFACE_TIMER);
- str += 5;
- } else if (!strncasecmp(str, "sequencer", 9)) {
- snd_ctl_elem_id_set_interface(id, SND_CTL_ELEM_IFACE_SEQUENCER);
- str += 9;
- } else {
- return -EINVAL;
- }
- } else if (!strncasecmp(str, "name=", 5)) {
- char buf[64];
- str += 5;
- ptr = buf;
- size = 0;
- if (*str == '\'' || *str == '\"') {
- c = *str++;
- while (*str && *str != c) {
- if (size < (int)sizeof(buf)) {
- *ptr++ = *str;
- size++;
- }
- str++;
- }
- if (*str == c)
- str++;
- } else {
- while (*str && *str != ',') {
- if (size < (int)sizeof(buf)) {
- *ptr++ = *str;
- size++;
- }
- str++;
- }
- }
- *ptr = '\0';
- snd_ctl_elem_id_set_name(id, buf);
- } else if (!strncasecmp(str, "index=", 6)) {
- str += 6;
- snd_ctl_elem_id_set_index(id, atoi(str));
- while (isdigit(*str))
- str++;
- } else if (!strncasecmp(str, "device=", 7)) {
- str += 7;
- snd_ctl_elem_id_set_device(id, atoi(str));
- while (isdigit(*str))
- str++;
- } else if (!strncasecmp(str, "subdevice=", 10)) {
- str += 10;
- snd_ctl_elem_id_set_subdevice(id, atoi(str));
- while (isdigit(*str))
- str++;
- }
- if (*str == ',') {
- str++;
- } else {
- if (*str)
- return -EINVAL;
- }
- }
- return 0;
-}
-
static int parse_simple_id(const char *str, snd_mixer_selem_id_t *sid)
{
int c, size;
return 0;
}
-static int get_ctl_enum_item_index(snd_ctl_t *handle, snd_ctl_elem_info_t *info,
- char **ptrp)
-{
- char *ptr = *ptrp;
- int items, i, len;
- const char *name;
-
- items = snd_ctl_elem_info_get_items(info);
- if (items <= 0)
- return -1;
-
- for (i = 0; i < items; i++) {
- snd_ctl_elem_info_set_item(info, i);
- if (snd_ctl_elem_info(handle, info) < 0)
- return -1;
- name = snd_ctl_elem_info_get_item_name(info);
- len = strlen(name);
- if (! strncmp(name, ptr, len)) {
- if (! ptr[len] || ptr[len] == ',' || ptr[len] == '\n') {
- ptr += len;
- *ptrp = ptr;
- return i;
- }
- }
- }
- return -1;
-}
-
static int cset(int argc, char *argv[], int roflag, int keep_handle)
{
int err;
snd_ctl_elem_info_t *info;
snd_ctl_elem_id_t *id;
snd_ctl_elem_value_t *control;
- char *ptr;
- unsigned int idx, count;
- long tmp;
- snd_ctl_elem_type_t type;
snd_ctl_elem_info_alloca(&info);
snd_ctl_elem_id_alloca(&id);
snd_ctl_elem_value_alloca(&control);
fprintf(stderr, "Specify a full control identifier: [[iface=<iface>,][name='name',][index=<index>,][device=<device>,][subdevice=<subdevice>]]|[numid=<numid>]\n");
return -EINVAL;
}
- if (parse_control_id(argv[0], id)) {
+ if (snd_ctl_ascii_elem_id_parse(id, argv[0])) {
fprintf(stderr, "Wrong control identifier: %s\n", argv[0]);
return -EINVAL;
}
}
return err;
}
- snd_ctl_elem_info_get_id(info, id); /* FIXME: Remove it when hctl find works ok !!! */
- type = snd_ctl_elem_info_get_type(info);
- count = snd_ctl_elem_info_get_count(info);
- snd_ctl_elem_value_set_id(control, id);
-
+ snd_ctl_elem_info_get_id(info, id); /* FIXME: Remove it when hctl find works ok !!! */
if (!roflag) {
- ptr = argv[1];
- for (idx = 0; idx < count && idx < 128 && ptr && *ptr; idx++) {
- switch (type) {
- case SND_CTL_ELEM_TYPE_BOOLEAN:
- tmp = 0;
- if (!strncasecmp(ptr, "on", 2) || !strncasecmp(ptr, "up", 2)) {
- tmp = 1;
- ptr += 2;
- } else if (!strncasecmp(ptr, "yes", 3)) {
- tmp = 1;
- ptr += 3;
- } else if (!strncasecmp(ptr, "toggle", 6)) {
- tmp = snd_ctl_elem_value_get_boolean(control, idx);
- tmp = tmp > 0 ? 0 : 1;
- ptr += 6;
- } else if (isdigit(*ptr)) {
- tmp = atoi(ptr) > 0 ? 1 : 0;
- while (isdigit(*ptr))
- ptr++;
- } else {
- while (*ptr && *ptr != ',')
- ptr++;
- }
- snd_ctl_elem_value_set_boolean(control, idx, tmp);
- break;
- case SND_CTL_ELEM_TYPE_INTEGER:
- tmp = get_integer(&ptr,
- snd_ctl_elem_info_get_min(info),
- snd_ctl_elem_info_get_max(info));
- snd_ctl_elem_value_set_integer(control, idx, tmp);
- break;
- case SND_CTL_ELEM_TYPE_INTEGER64:
- tmp = get_integer64(&ptr,
- snd_ctl_elem_info_get_min64(info),
- snd_ctl_elem_info_get_max64(info));
- snd_ctl_elem_value_set_integer64(control, idx, tmp);
- break;
- case SND_CTL_ELEM_TYPE_ENUMERATED:
- tmp = get_ctl_enum_item_index(handle, info, &ptr);
- if (tmp < 0)
- tmp = get_integer(&ptr, 0, snd_ctl_elem_info_get_items(info) - 1);
- snd_ctl_elem_value_set_enumerated(control, idx, tmp);
- break;
- case SND_CTL_ELEM_TYPE_BYTES:
- tmp = get_integer(&ptr, 0, 255);
- snd_ctl_elem_value_set_byte(control, idx, tmp);
- break;
- default:
- break;
+ snd_ctl_elem_value_set_id(control, id);
+ if ((err = snd_ctl_elem_read(handle, control)) < 0) {
+ if (ignore_error)
+ return 0;
+ error("Cannot read the given element from control %s\n", card);
+ if (! keep_handle) {
+ snd_ctl_close(handle);
+ handle = NULL;
}
- if (!strchr(argv[1], ','))
- ptr = argv[1];
- else if (*ptr == ',')
- ptr++;
+ return err;
+ }
+ err = snd_ctl_ascii_value_parse(handle, control, info, argv[1]);
+ if (err < 0) {
+ if (!ignore_error)
+ error("Control %s parse error: %s\n", card, snd_strerror(err));
+ if (!keep_handle) {
+ snd_ctl_close(handle);
+ handle = NULL;
+ }
+ return ignore_error ? 0 : err;
}
if ((err = snd_ctl_elem_write(handle, control)) < 0) {
if (!ignore_error)
LIBRT = @LIBRT@
-INCLUDES = -I$(top_srcdir)/include
+AM_CPPFLAGS = -I$(top_srcdir)/include
LDADD = $(LIBINTL) $(LIBRT)
# debug flags
-# Makefile.in generated by automake 1.11.3 from Makefile.am.
+# Makefile.in generated by automake 1.12.2 from Makefile.am.
# @configure_input@
-# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software
-# Foundation, Inc.
+# Copyright (C) 1994-2012 Free Software Foundation, Inc.
+
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
VPATH = @srcdir@
+am__make_dryrun = \
+ { \
+ am__dry=no; \
+ case $$MAKEFLAGS in \
+ *\\[\ \ ]*) \
+ echo 'am--echo: ; @echo "AM" OK' | $(MAKE) -f - 2>/dev/null \
+ | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
+ *) \
+ for am__flg in $$MAKEFLAGS; do \
+ case $$am__flg in \
+ *=*|--*) ;; \
+ *n*) am__dry=yes; break;; \
+ esac; \
+ done;; \
+ esac; \
+ test $$am__dry = yes; \
+ }
pkgdatadir = $(datadir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
bin_PROGRAMS = aplay$(EXEEXT)
subdir = aplay
DIST_COMMON = $(noinst_HEADERS) $(srcdir)/Makefile.am \
- $(srcdir)/Makefile.in
+ $(srcdir)/Makefile.in $(top_srcdir)/depcomp
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/m4/gettext.m4 \
$(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/lib-ld.m4 \
$(top_srcdir)/m4/lib-link.m4 $(top_srcdir)/m4/lib-prefix.m4 \
$(top_srcdir)/m4/nls.m4 $(top_srcdir)/m4/po.m4 \
$(top_srcdir)/m4/progtest.m4 $(top_srcdir)/acinclude.m4 \
- $(top_srcdir)/configure.in
+ $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(install_sh) -d
LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
SOURCES = aplay.c
DIST_SOURCES = aplay.c
+am__can_run_installinfo = \
+ case $$AM_UPDATE_INFO_DIR in \
+ n|no|NO) false;; \
+ *) (install-info --version) >/dev/null 2>&1;; \
+ esac
am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
am__vpath_adj = case $$p in \
$(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
CTAGS = ctags
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
ACLOCAL = @ACLOCAL@
+ALSACTL_DAEMONSWITCH = @ALSACTL_DAEMONSWITCH@
+ALSACTL_PIDFILE_DIR = @ALSACTL_PIDFILE_DIR@
ALSA_CFLAGS = @ALSA_CFLAGS@
ALSA_LIBS = @ALSA_LIBS@
AMTAR = @AMTAR@
+ASOUND_LOCK_DIR = @ASOUND_LOCK_DIR@
ASOUND_STATE_DIR = @ASOUND_STATE_DIR@
AUTOCONF = @AUTOCONF@
AUTOHEADER = @AUTOHEADER@
LTLIBICONV = @LTLIBICONV@
LTLIBINTL = @LTLIBINTL@
LTLIBOBJS = @LTLIBOBJS@
+MAINT = @MAINT@
MAKEINFO = @MAKEINFO@
MKDIR_P = @MKDIR_P@
MSGFMT = @MSGFMT@
localstatedir = @localstatedir@
mandir = @mandir@
mkdir_p = @mkdir_p@
+mydatadir = @mydatadir@
ncurses5_config = @ncurses5_config@
ncursesw5_config = @ncursesw5_config@
oldincludedir = @oldincludedir@
top_srcdir = @top_srcdir@
udevrulesdir = @udevrulesdir@
xmlto = @xmlto@
-INCLUDES = -I$(top_srcdir)/include
+AM_CPPFLAGS = -I$(top_srcdir)/include
LDADD = $(LIBINTL) $(LIBRT)
man_MANS = aplay.1 arecord.1
noinst_HEADERS = formats.h
.SUFFIXES:
.SUFFIXES: .c .o .obj
-$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps)
@for dep in $?; do \
case '$(am__configure_deps)' in \
*$$dep*) \
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-$(top_srcdir)/configure: $(am__configure_deps)
+$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-$(ACLOCAL_M4): $(am__aclocal_m4_deps)
+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(am__aclocal_m4_deps):
install-binPROGRAMS: $(bin_PROGRAMS)
@$(NORMAL_INSTALL)
- test -z "$(bindir)" || $(MKDIR_P) "$(DESTDIR)$(bindir)"
@list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \
+ if test -n "$$list"; then \
+ echo " $(MKDIR_P) '$(DESTDIR)$(bindir)'"; \
+ $(MKDIR_P) "$(DESTDIR)$(bindir)" || exit 1; \
+ fi; \
for p in $$list; do echo "$$p $$p"; done | \
sed 's/$(EXEEXT)$$//' | \
while read p p1; do if test -f $$p; \
@am__fastdepCC_FALSE@ $(COMPILE) -c `$(CYGPATH_W) '$<'`
install-man1: $(man_MANS)
@$(NORMAL_INSTALL)
- test -z "$(man1dir)" || $(MKDIR_P) "$(DESTDIR)$(man1dir)"
- @list=''; test -n "$(man1dir)" || exit 0; \
- { for i in $$list; do echo "$$i"; done; \
- l2='$(man_MANS)'; for i in $$l2; do echo "$$i"; done | \
- sed -n '/\.1[a-z]*$$/p'; \
+ @list1=''; \
+ list2='$(man_MANS)'; \
+ test -n "$(man1dir)" \
+ && test -n "`echo $$list1$$list2`" \
+ || exit 0; \
+ echo " $(MKDIR_P) '$(DESTDIR)$(man1dir)'"; \
+ $(MKDIR_P) "$(DESTDIR)$(man1dir)" || exit 1; \
+ { for i in $$list1; do echo "$$i"; done; \
+ if test -n "$$list2"; then \
+ for i in $$list2; do echo "$$i"; done \
+ | sed -n '/\.1[a-z]*$$/p'; \
+ fi; \
} | while read p; do \
if test -f $$p; then d=; else d="$(srcdir)/"; fi; \
echo "$$d$$p"; echo "$$p"; \
&& $(am__cd) $(top_srcdir) \
&& gtags -i $(GTAGS_ARGS) "$$here"
+cscopelist: $(HEADERS) $(SOURCES) $(LISP)
+ list='$(SOURCES) $(HEADERS) $(LISP)'; \
+ case "$(srcdir)" in \
+ [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
+ *) sdir=$(subdir)/$(srcdir) ;; \
+ esac; \
+ for i in $$list; do \
+ if test -f "$$i"; then \
+ echo "$(subdir)/$$i"; \
+ else \
+ echo "$$sdir/$$i"; \
+ fi; \
+ done >> $(top_builddir)/cscope.files
+
distclean-tags:
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
if test -f "$$d$$p"; then echo "$$d$$p"; else :; fi; done`; \
if test -n "$$list" && \
grep 'ab help2man is required to generate this page' $$list >/dev/null; then \
- echo "error: found man pages containing the \`missing help2man' replacement text:" >&2; \
+ echo "error: found man pages containing the 'missing help2man' replacement text:" >&2; \
grep -l 'ab help2man is required to generate this page' $$list | sed 's/^/ /' >&2; \
echo " to fix them, install help2man, remove and regenerate the man pages;" >&2; \
- echo " typically \`make maintainer-clean' will remove them" >&2; \
+ echo " typically 'make maintainer-clean' will remove them" >&2; \
exit 1; \
else :; fi; \
else :; fi
.MAKE: install-am install-data-am install-exec-am install-strip
.PHONY: CTAGS GTAGS all all-am check check-am clean clean-binPROGRAMS \
- clean-generic ctags distclean distclean-compile \
+ clean-generic cscopelist ctags distclean distclean-compile \
distclean-generic distclean-tags distdir dvi dvi-am html \
html-am info info-am install install-am install-binPROGRAMS \
install-data install-data-am install-data-hook install-dvi \
.TH APLAY 1 "1 January 2010"
.SH NAME
-arecord, aplay \- command-line sound recorder and player for ALSA
+arecord, aplay \- command\-line sound recorder and player for ALSA
soundcard driver
.SH SYNOPSIS
\fBarecord\fP [\fIflags\fP] [filename]
\fBaplay\fP [\fIflags\fP] [filename [filename]] ...
.SH DESCRIPTION
-\fBarecord\fP is a command-line soundfile recorder for the ALSA soundcard
+\fBarecord\fP is a command\-line soundfile recorder for the ALSA soundcard
driver. It supports several file formats and multiple soundcards with
multiple devices. If recording with interleaved mode samples the file is
automatically split before the 2GB filesize.
Min ticks to sleep. The default is not to sleep.
.TP
\fI\-M, \-\-mmap\fP
-Use memory-mapped (mmap) I/O mode for the audio stream.
+Use memory\-mapped (mmap) I/O mode for the audio stream.
If this option is not set, the read/write I/O mode will be used.
.TP
\fI\-N, \-\-nonblock\fP
-Open the audio device in non-blocking mode. If the device is busy the program will exit immediately.
+Open the audio device in non\-blocking mode. If the device is busy the program will exit immediately.
If this option is not set the program will block until the audio device is available again.
.TP
\fI\-F, \-\-period\-time=#\fP
is given twice or three times.
.TP
\fI\-V, \-\-vumeter=TYPE\fP
-Specifies the VU-meter type, either \fIstereo\fP or \fImono\fP.
-The stereo VU-meter is available only for 2-channel stereo samples
+Specifies the VU\-meter type, either \fIstereo\fP or \fImono\fP.
+The stereo VU\-meter is available only for 2\-channel stereo samples
with interleaved format.
.TP
\fI\-I, \-\-separate\-channels\fP
Allow interactive operation via stdin.
Currently only pause/resume via space or enter key is implemented.
.TP
+\fI-m, \-\-chmap=ch1,ch2,...\fP
+Give the channel map to override or follow. Pass channel position
+strings like \fIFL\fP, \fIFR\fP, etc.
+
+If a device supports the override of the channel map, \fBaplay\fP
+tries to pass the given channel map.
+If it doesn't support the channel map override but still it provides
+the channel map information, \fBaplay\fP tries to rearrange the
+channel order in the buffer to match with the returned channel map
+from the device.
+.TP
\fI\-\-disable\-resample\fP
Disable automatic rate resample.
.TP
Minimum value is 1.
.TP
\fI\-\-test\-nowait\fP
-Do not wait for the ring buffer--eats the whole CPU.
+Do not wait for the ring buffer \(hy eats the whole CPU.
.TP
\fI\-\-max\-file\-time\fP
While recording, when the output file has been accumulating
send signals to it.
.TP
\fI\-\-use\-strftime\fP
-When recording, interpret %-codes in the file name parameter using
+When recording, interpret %\-codes in the file name parameter using
the strftime facility whenever the output file is opened. The
important strftime codes are: %Y is the year, %m month, %d day of
the month, %H hour, %M minute and %S second. In addition, %v is
.TP
\fBaplay \-c 1 \-t raw \-r 22050 \-f mu_law foobar\fR
will play the raw file "foobar" as a
-22050-Hz, mono, 8-bit, Mu-Law .au file.
+22050\-Hz, mono, 8\-bit, Mu\-Law .au file.
.TP
\fBarecord \-d 10 \-f cd \-t wav \-D copy foobar.wav\fP
-will record foobar.wav as a 10-second, CD-quality wave file, using the
+will record foobar.wav as a 10\-second, CD\-quality wave file, using the
PCM "copy" (which might be defined in the user's .asoundrc file as:
.nf
pcm.copy {
.fi
.TP
-\fBarecord \-t wav \-\-max-file-time 30 mon.wav\fP
+\fBarecord \-t wav \-\-max\-file\-time 30 mon.wav\fP
Record from the default audio source in monaural, 8,000 samples
per second, 8 bits per sample. Start a new file every
-30 seconds. File names are mon-nn.wav, where nn increases
-from 01. The file after mon-99.wav is mon-100.wav.
+30 seconds. File names are mon\-nn.wav, where nn increases
+from 01. The file after mon\-99.wav is mon\-100.wav.
.TP
-\fBarecord \-f cd \-t wav \-\-max-file-time 3600 --use-strftime %Y/%m/%d/listen-%H-%M-%v.wav\fP
+\fBarecord \-f cd \-t wav \-\-max\-file\-time 3600 \-\-use-strftime %Y/%m/%d/listen-%H-%M-%v.wav\fP
Record in stereo from the default audio source. Create a new file
every hour. The files are placed in directories based on their start dates
and have names which include their start times and file numbers.
#include "formats.h"
#include "version.h"
+#ifdef SND_CHMAP_API_VERSION
+#define CONFIG_SUPPORT_CHMAP 1
+#endif
+
#ifndef LLONG_MAX
#define LLONG_MAX 9223372036854775807LL
#endif
static int mmap_flag = 0;
static int interleaved = 1;
static int nonblock = 0;
+static int in_aborting = 0;
static u_char *audiobuf = NULL;
static snd_pcm_uframes_t chunk_size = 0;
static unsigned period_time = 0;
FILE *pidf = NULL;
static int pidfile_written = 0;
+#ifdef CONFIG_SUPPORT_CHMAP
+static snd_pcm_chmap_t *channel_map = NULL; /* chmap to override */
+static unsigned int *hw_map = NULL; /* chmap to follow */
+#endif
+
/* needed prototypes */
static void done_stdin(void);
"-V, --vumeter=TYPE enable VU meter (TYPE: mono or stereo)\n"
"-I, --separate-channels one file for each channel\n"
"-i, --interactive allow interactive operation from stdin\n"
+"-m, --chmap=ch1,ch2,.. Give the channel map to override or follow\n"
" --disable-resample disable automatic rate resample\n"
" --disable-channels disable automatic channel conversions\n"
" --disable-format disable automatic format conversions\n"
" --process-id-file write the process ID here\n"
" --use-strftime apply the strftime facility to the output file name\n"
" --dump-hw-params dump hw_params of the device\n"
-" --fatal-errors treat all errors as fatal\n")
+" --fatal-errors treat all errors as fatal\n"
+ )
, command);
printf(_("Recognized sample formats are:"));
- for (k = 0; k < SND_PCM_FORMAT_LAST; ++k) {
+ for (k = 0; k <= SND_PCM_FORMAT_LAST; ++k) {
const char *s = snd_pcm_format_name(k);
if (s)
printf(" %s", s);
}
printf(_("\nSome of these may not be available on selected hardware\n"));
- printf(_("The availabled format shortcuts are:\n"));
+ printf(_("The available format shortcuts are:\n"));
printf(_("-f cd (16 bit little endian, 44100, stereo)\n"));
printf(_("-f cdr (16 bit big endian, 44100, stereo)\n"));
printf(_("-f dat (16 bit little endian, 48000, stereo)\n"));
static void signal_handler(int sig)
{
- static int in_aborting;
-
if (in_aborting)
return;
putchar('\n');
if (!quiet_mode)
fprintf(stderr, _("Aborted by signal %s...\n"), strsignal(sig));
- if (stream == SND_PCM_STREAM_CAPTURE) {
- if (fmt_rec_table[file_type].end) {
- fmt_rec_table[file_type].end(fd);
- fd = -1;
- }
- stream = -1;
- }
- if (fd > 1) {
- close(fd);
- fd = -1;
- }
- if (handle && sig != SIGABRT) {
- snd_pcm_close(handle);
+ if (handle)
+ snd_pcm_abort(handle);
+ if (sig == SIGABRT) {
+ /* do not call snd_pcm_close() and abort immediately */
handle = NULL;
+ prg_exit(EXIT_FAILURE);
}
- prg_exit(EXIT_FAILURE);
+ signal(sig, signal_handler);
}
/* call on SIGUSR1 signal. */
int main(int argc, char *argv[])
{
int option_index;
- static const char short_options[] = "hnlLD:qt:c:f:r:d:MNF:A:R:T:B:vV:IPCi";
+ static const char short_options[] = "hnlLD:qt:c:f:r:d:MNF:A:R:T:B:vV:IPCi"
+#ifdef CONFIG_SUPPORT_CHMAP
+ "m:"
+#endif
+ ;
static const struct option long_options[] = {
{"help", 0, 0, 'h'},
{"version", 0, 0, OPT_VERSION},
{"interactive", 0, 0, 'i'},
{"dump-hw-params", 0, 0, OPT_DUMP_HWPARAMS},
{"fatal-errors", 0, 0, OPT_FATAL_ERRORS},
+#ifdef CONFIG_SUPPORT_CHMAP
+ {"chmap", 1, 0, 'm'},
+#endif
{0, 0, 0, 0}
};
char *pcm_name = "default";
int tmp, err, c;
int do_device_list = 0, do_pcm_list = 0;
snd_pcm_info_t *info;
+ FILE *direction;
#ifdef ENABLE_NLS
setlocale(LC_ALL, "");
file_type = FORMAT_WAVE;
command = "arecord";
start_delay = 1;
+ direction = stdout;
} else if (strstr(argv[0], "aplay")) {
stream = SND_PCM_STREAM_PLAYBACK;
command = "aplay";
+ direction = stdin;
} else {
error(_("command should be named either arecord or aplay"));
return 1;
}
+ if (isatty(fileno(direction)) && (argc == 1)) {
+ usage(command);
+ return 1;
+ }
+
chunk_size = -1;
rhwparams.format = DEFAULT_FORMAT;
rhwparams.rate = DEFAULT_SPEED;
case OPT_FATAL_ERRORS:
fatal_errors = 1;
break;
+#ifdef CONFIG_SUPPORT_CHMAP
+ case 'm':
+ channel_map = snd_pcm_chmap_parse_string(optarg);
+ if (!channel_map) {
+ fprintf(stderr, _("Unable to parse channel map string: %s\n"), optarg);
+ return 1;
+ }
+ break;
+#endif
default:
fprintf(stderr, _("Try `%s --help' for more information.\n"), command);
return 1;
{
ssize_t result = 0, res;
- while (count > 0) {
+ while (count > 0 && !in_aborting) {
if ((res = read(fd, buf, count)) == 0)
break;
if (res < 0)
WaveFmtBody *f;
WaveChunkHeader *c;
u_int type, len;
+ unsigned short format, channels;
+ int big_endian, native_format;
if (size < sizeof(WaveHeader))
return -1;
- if (h->magic != WAV_RIFF || h->type != WAV_WAVE)
+ if (h->magic == WAV_RIFF)
+ big_endian = 0;
+ else if (h->magic == WAV_RIFX)
+ big_endian = 1;
+ else
+ return -1;
+ if (h->type != WAV_WAVE)
return -1;
+
if (size > sizeof(WaveHeader)) {
check_wavefile_space(buffer, size - sizeof(WaveHeader), blimit);
memcpy(buffer, _buffer + sizeof(WaveHeader), size - sizeof(WaveHeader));
test_wavefile_read(fd, buffer, &size, sizeof(WaveChunkHeader), __LINE__);
c = (WaveChunkHeader*)buffer;
type = c->type;
- len = LE_INT(c->length);
+ len = TO_CPU_INT(c->length, big_endian);
len += len % 2;
if (size > sizeof(WaveChunkHeader))
memmove(buffer, buffer + sizeof(WaveChunkHeader), size - sizeof(WaveChunkHeader));
check_wavefile_space(buffer, len, blimit);
test_wavefile_read(fd, buffer, &size, len, __LINE__);
f = (WaveFmtBody*) buffer;
- if (LE_SHORT(f->format) == WAV_FMT_EXTENSIBLE) {
+ format = TO_CPU_SHORT(f->format, big_endian);
+ if (format == WAV_FMT_EXTENSIBLE) {
WaveFmtExtensibleBody *fe = (WaveFmtExtensibleBody*)buffer;
if (len < sizeof(WaveFmtExtensibleBody)) {
error(_("unknown length of extensible 'fmt ' chunk (read %u, should be %u at least)"),
error(_("wrong format tag in extensible 'fmt ' chunk"));
prg_exit(EXIT_FAILURE);
}
- f->format = fe->guid_format;
+ format = TO_CPU_SHORT(fe->guid_format, big_endian);
}
- if (LE_SHORT(f->format) != WAV_FMT_PCM &&
- LE_SHORT(f->format) != WAV_FMT_IEEE_FLOAT) {
- error(_("can't play WAVE-file format 0x%04x which is not PCM or FLOAT encoded"), LE_SHORT(f->format));
+ if (format != WAV_FMT_PCM &&
+ format != WAV_FMT_IEEE_FLOAT) {
+ error(_("can't play WAVE-file format 0x%04x which is not PCM or FLOAT encoded"), format);
prg_exit(EXIT_FAILURE);
}
- if (LE_SHORT(f->channels) < 1) {
- error(_("can't play WAVE-files with %d tracks"), LE_SHORT(f->channels));
+ channels = TO_CPU_SHORT(f->channels, big_endian);
+ if (channels < 1) {
+ error(_("can't play WAVE-files with %d tracks"), channels);
prg_exit(EXIT_FAILURE);
}
- hwparams.channels = LE_SHORT(f->channels);
- switch (LE_SHORT(f->bit_p_spl)) {
+ hwparams.channels = channels;
+ switch (TO_CPU_SHORT(f->bit_p_spl, big_endian)) {
case 8:
if (hwparams.format != DEFAULT_FORMAT &&
hwparams.format != SND_PCM_FORMAT_U8)
hwparams.format = SND_PCM_FORMAT_U8;
break;
case 16:
+ if (big_endian)
+ native_format = SND_PCM_FORMAT_S16_BE;
+ else
+ native_format = SND_PCM_FORMAT_S16_LE;
if (hwparams.format != DEFAULT_FORMAT &&
- hwparams.format != SND_PCM_FORMAT_S16_LE)
- fprintf(stderr, _("Warning: format is changed to S16_LE\n"));
- hwparams.format = SND_PCM_FORMAT_S16_LE;
+ hwparams.format != native_format)
+ fprintf(stderr, _("Warning: format is changed to %s\n"),
+ snd_pcm_format_name(native_format));
+ hwparams.format = native_format;
break;
case 24:
- switch (LE_SHORT(f->byte_p_spl) / hwparams.channels) {
+ switch (TO_CPU_SHORT(f->byte_p_spl, big_endian) / hwparams.channels) {
case 3:
+ if (big_endian)
+ native_format = SND_PCM_FORMAT_S24_3BE;
+ else
+ native_format = SND_PCM_FORMAT_S24_3LE;
if (hwparams.format != DEFAULT_FORMAT &&
- hwparams.format != SND_PCM_FORMAT_S24_3LE)
- fprintf(stderr, _("Warning: format is changed to S24_3LE\n"));
- hwparams.format = SND_PCM_FORMAT_S24_3LE;
+ hwparams.format != native_format)
+ fprintf(stderr, _("Warning: format is changed to %s\n"),
+ snd_pcm_format_name(native_format));
+ hwparams.format = native_format;
break;
case 4:
+ if (big_endian)
+ native_format = SND_PCM_FORMAT_S24_BE;
+ else
+ native_format = SND_PCM_FORMAT_S24_LE;
if (hwparams.format != DEFAULT_FORMAT &&
- hwparams.format != SND_PCM_FORMAT_S24_LE)
- fprintf(stderr, _("Warning: format is changed to S24_LE\n"));
- hwparams.format = SND_PCM_FORMAT_S24_LE;
+ hwparams.format != native_format)
+ fprintf(stderr, _("Warning: format is changed to %s\n"),
+ snd_pcm_format_name(native_format));
+ hwparams.format = native_format;
break;
default:
error(_(" can't play WAVE-files with sample %d bits in %d bytes wide (%d channels)"),
- LE_SHORT(f->bit_p_spl), LE_SHORT(f->byte_p_spl), hwparams.channels);
+ TO_CPU_SHORT(f->bit_p_spl, big_endian),
+ TO_CPU_SHORT(f->byte_p_spl, big_endian),
+ hwparams.channels);
prg_exit(EXIT_FAILURE);
}
break;
case 32:
- if (LE_SHORT(f->format) == WAV_FMT_PCM)
- hwparams.format = SND_PCM_FORMAT_S32_LE;
- else if (LE_SHORT(f->format) == WAV_FMT_IEEE_FLOAT)
- hwparams.format = SND_PCM_FORMAT_FLOAT_LE;
+ if (format == WAV_FMT_PCM) {
+ if (big_endian)
+ native_format = SND_PCM_FORMAT_S32_BE;
+ else
+ native_format = SND_PCM_FORMAT_S32_LE;
+ hwparams.format = native_format;
+ } else if (format == WAV_FMT_IEEE_FLOAT) {
+ if (big_endian)
+ native_format = SND_PCM_FORMAT_FLOAT_BE;
+ else
+ native_format = SND_PCM_FORMAT_FLOAT_LE;
+ hwparams.format = native_format;
+ }
break;
default:
error(_(" can't play WAVE-files with sample %d bits wide"),
- LE_SHORT(f->bit_p_spl));
+ TO_CPU_SHORT(f->bit_p_spl, big_endian));
prg_exit(EXIT_FAILURE);
}
- hwparams.rate = LE_INT(f->sample_fq);
+ hwparams.rate = TO_CPU_INT(f->sample_fq, big_endian);
if (size > len)
memmove(buffer, buffer + len, size - len);
test_wavefile_read(fd, buffer, &size, sizeof(WaveChunkHeader), __LINE__);
c = (WaveChunkHeader*)buffer;
type = c->type;
- len = LE_INT(c->length);
+ len = TO_CPU_INT(c->length, big_endian);
if (size > sizeof(WaveChunkHeader))
memmove(buffer, buffer + sizeof(WaveChunkHeader), size - sizeof(WaveChunkHeader));
size -= sizeof(WaveChunkHeader);
snd_pcm_format_t format;
fprintf(stderr, "Available formats:\n");
- for (format = 0; format < SND_PCM_FORMAT_LAST; format++) {
+ for (format = 0; format <= SND_PCM_FORMAT_LAST; format++) {
if (snd_pcm_hw_params_test_format(handle, params, format) == 0)
fprintf(stderr, "- %s\n", snd_pcm_format_name(format));
}
}
+#ifdef CONFIG_SUPPORT_CHMAP
+static int setup_chmap(void)
+{
+ snd_pcm_chmap_t *chmap = channel_map;
+ char mapped[hwparams.channels];
+ snd_pcm_chmap_t *hw_chmap;
+ unsigned int ch, i;
+ int err;
+
+ if (!chmap)
+ return 0;
+
+ if (chmap->channels != hwparams.channels) {
+ error(_("Channel numbers don't match between hw_params and channel map"));
+ return -1;
+ }
+ err = snd_pcm_set_chmap(handle, chmap);
+ if (!err)
+ return 0;
+
+ hw_chmap = snd_pcm_get_chmap(handle);
+ if (!hw_chmap) {
+ fprintf(stderr, _("Warning: unable to get channel map\n"));
+ return 0;
+ }
+
+ if (hw_chmap->channels == chmap->channels &&
+ !memcmp(hw_chmap, chmap, 4 * (chmap->channels + 1))) {
+ /* maps are identical, so no need to convert */
+ free(hw_chmap);
+ return 0;
+ }
+
+ hw_map = calloc(hwparams.channels, sizeof(int));
+ if (!hw_map) {
+ error(_("not enough memory"));
+ return -1;
+ }
+
+ memset(mapped, 0, sizeof(mapped));
+ for (ch = 0; ch < hw_chmap->channels; ch++) {
+ if (chmap->pos[ch] == hw_chmap->pos[ch]) {
+ mapped[ch] = 1;
+ hw_map[ch] = ch;
+ continue;
+ }
+ for (i = 0; i < hw_chmap->channels; i++) {
+ if (!mapped[i] && chmap->pos[ch] == hw_chmap->pos[i]) {
+ mapped[i] = 1;
+ hw_map[ch] = i;
+ break;
+ }
+ }
+ if (i >= hw_chmap->channels) {
+ char buf[256];
+ error(_("Channel %d doesn't match with hw_parmas"), ch);
+ snd_pcm_chmap_print(hw_chmap, sizeof(buf), buf);
+ fprintf(stderr, "hardware chmap = %s\n", buf);
+ return -1;
+ }
+ }
+ free(hw_chmap);
+ return 0;
+}
+#else
+#define setup_chmap() 0
+#endif
+
static void set_params(void)
{
snd_pcm_hw_params_t *params;
prg_exit(EXIT_FAILURE);
}
+ if (setup_chmap())
+ prg_exit(EXIT_FAILURE);
+
if (verbose)
snd_pcm_dump(handle, log);
if (!interactive)
return;
+ if (!isatty(fileno(stdin))) {
+ interactive = 0;
+ return;
+ }
tcgetattr(fileno(stdin), &term);
term_c_lflag = term.c_lflag;
if (fd == fileno(stdin))
timermsub(&now, &tstamp, &diff);
fprintf(stderr, _("%s!!! (at least %.3f ms long)\n"),
stream == SND_PCM_STREAM_PLAYBACK ? _("underrun") : _("overrun"),
- diff.tv_sec * 1000 + diff.tv_nsec / 10000000.0);
+ diff.tv_sec * 1000 + diff.tv_nsec / 1000000.0);
#else
fprintf(stderr, "%s !!!\n", _("underrun"));
#endif
fflush(stderr);
}
else if(verbose==3) {
- printf(_("Max peak (%li samples): 0x%08x "), (long)ocount, max_peak[0]);
+ fprintf(stderr, _("Max peak (%li samples): 0x%08x "), (long)ocount, max_peak[0]);
for (val = 0; val < 20; val++)
if (val <= perc[0] / 5)
- putchar('#');
+ putc('#', stderr);
else
- putchar(' ');
+ putc(' ', stderr);
fprintf(stderr, " %i%%\n", perc[0]);
fflush(stderr);
}
}
/*
+ */
+#ifdef CONFIG_SUPPORT_CHMAP
+static u_char *remap_data(u_char *data, size_t count)
+{
+ static u_char *tmp, *src, *dst;
+ static size_t tmp_size;
+ size_t sample_bytes = bits_per_sample / 8;
+ size_t step = bits_per_frame / 8;
+ size_t chunk_bytes;
+ unsigned int ch, i;
+
+ if (!hw_map)
+ return data;
+
+ chunk_bytes = count * bits_per_frame / 8;
+ if (tmp_size < chunk_bytes) {
+ free(tmp);
+ tmp = malloc(chunk_bytes);
+ if (!tmp) {
+ error(_("not enough memory"));
+ exit(1);
+ }
+ tmp_size = count;
+ }
+
+ src = data;
+ dst = tmp;
+ for (i = 0; i < count; i++) {
+ for (ch = 0; ch < hwparams.channels; ch++) {
+ memcpy(dst, src + sample_bytes * hw_map[ch],
+ sample_bytes);
+ dst += sample_bytes;
+ }
+ src += step;
+ }
+ return tmp;
+}
+
+static u_char **remap_datav(u_char **data, size_t count)
+{
+ static u_char **tmp;
+ unsigned int ch;
+
+ if (!hw_map)
+ return data;
+
+ if (!tmp) {
+ tmp = malloc(sizeof(*tmp) * hwparams.channels);
+ if (!tmp) {
+ error(_("not enough memory"));
+ exit(1);
+ }
+ for (ch = 0; ch < hwparams.channels; ch++)
+ tmp[ch] = data[hw_map[ch]];
+ }
+ return tmp;
+}
+#else
+#define remap_data(data, count) (data)
+#define remap_datav(data, count) (data)
+#endif
+
+/*
* write function
*/
snd_pcm_format_set_silence(hwparams.format, data + count * bits_per_frame / 8, (chunk_size - count) * hwparams.channels);
count = chunk_size;
}
- while (count > 0) {
+ data = remap_data(data, count);
+ while (count > 0 && !in_aborting) {
if (test_position)
do_test_position();
check_stdin();
snd_pcm_format_set_silence(hwparams.format, data[channel] + offset * bits_per_sample / 8, remaining);
count = chunk_size;
}
- while (count > 0) {
+ data = remap_datav(data, count);
+ while (count > 0 && !in_aborting) {
unsigned int channel;
void *bufs[channels];
size_t offset = result;
count = chunk_size;
}
- while (count > 0) {
+ while (count > 0 && !in_aborting) {
if (test_position)
do_test_position();
check_stdin();
data += r * bits_per_frame / 8;
}
}
- return rcount;
+ return result;
}
static ssize_t pcm_readv(u_char **data, unsigned int channels, size_t rcount)
count = chunk_size;
}
- while (count > 0) {
+ while (count > 0 && !in_aborting) {
unsigned int channel;
void *bufs[channels];
size_t offset = result;
count -= r;
}
}
- return rcount;
+ return result;
}
/*
return; /* not fatal error */
}
snd_pcm_format_set_silence(hwparams.format, buf, chunk_size * hwparams.channels);
- while (x > 0) {
+ while (x > 0 && !in_aborting) {
l = x;
if (l > chunk_size)
l = chunk_size;
u_char *data, *buf;
char was_extended = 0, output = 0;
u_short *sp, repeat = 0;
- size_t silence;
off64_t filepos = 0;
#define COUNT(x) nextblock -= x; in_buffer -= x; data += x
set_params();
in_buffer = nextblock = 0;
- while (1) {
+ while (!in_aborting) {
Fill_the_buffer: /* need this for repeat */
if (in_buffer < 32) {
/* move the rest of buffer to pos 0 and fill the buf up */
COUNT1(1);
hwparams.rate = 1000000 / (256 - hwparams.rate);
set_params();
- silence = (((size_t) * sp) * 1000) / hwparams.rate;
#if 0
- d_printf("Silence for %d ms\n", (int) silence);
+ {
+ size_t silence;
+ silence = (((size_t) * sp) * 1000) / hwparams.rate;
+ d_printf("Silence for %d ms\n", (int) silence);
+ }
#endif
voc_write_silence(*sp);
break;
header(rtype, name);
set_params();
- while (loaded > chunk_bytes && written < count) {
+ while (loaded > chunk_bytes && written < count && !in_aborting) {
if (pcm_write(audiobuf + written, chunk_size) <= 0)
return;
written += chunk_bytes;
memmove(audiobuf, audiobuf + written, loaded);
l = loaded;
- while (written < count) {
+ while (written < count && !in_aborting) {
do {
c = count - written;
if (c > chunk_bytes)
/* capture */
fdcount = 0;
- while (rest > 0 && recycle_capture_file == 0) {
+ while (rest > 0 && recycle_capture_file == 0 && !in_aborting) {
size_t c = (rest <= (off64_t)chunk_bytes) ?
(size_t)rest : chunk_bytes;
size_t f = c * 8 / bits_per_frame;
fd = -1;
}
+ if (in_aborting)
+ break;
+
/* repeat the loop when format is raw without timelimit or
* requested counts of data are recorded
*/
for (channel = 0; channel < channels; ++channel)
bufs[channel] = audiobuf + vsize * channel;
- while (count > 0) {
+ while (count > 0 && !in_aborting) {
size_t c = 0;
size_t expected = count / channels;
if (expected > vsize)
for (channel = 0; channel < channels; ++channel)
bufs[channel] = audiobuf + vsize * channel;
- while (count > 0) {
+ while (count > 0 && !in_aborting) {
size_t rv;
c = count;
if (c > chunk_bytes)
.TH APLAY 1 "1 January 2010"
.SH NAME
-arecord, aplay \- command-line sound recorder and player for ALSA
+arecord, aplay \- command\-line sound recorder and player for ALSA
soundcard driver
.SH SYNOPSIS
\fBarecord\fP [\fIflags\fP] [filename]
\fBaplay\fP [\fIflags\fP] [filename [filename]] ...
.SH DESCRIPTION
-\fBarecord\fP is a command-line soundfile recorder for the ALSA soundcard
+\fBarecord\fP is a command\-line soundfile recorder for the ALSA soundcard
driver. It supports several file formats and multiple soundcards with
multiple devices. If recording with interleaved mode samples the file is
automatically split before the 2GB filesize.
Min ticks to sleep. The default is not to sleep.
.TP
\fI\-M, \-\-mmap\fP
-Use memory-mapped (mmap) I/O mode for the audio stream.
+Use memory\-mapped (mmap) I/O mode for the audio stream.
If this option is not set, the read/write I/O mode will be used.
.TP
\fI\-N, \-\-nonblock\fP
-Open the audio device in non-blocking mode. If the device is busy the program will exit immediately.
+Open the audio device in non\-blocking mode. If the device is busy the program will exit immediately.
If this option is not set the program will block until the audio device is available again.
.TP
\fI\-F, \-\-period\-time=#\fP
is given twice or three times.
.TP
\fI\-V, \-\-vumeter=TYPE\fP
-Specifies the VU-meter type, either \fIstereo\fP or \fImono\fP.
-The stereo VU-meter is available only for 2-channel stereo samples
+Specifies the VU\-meter type, either \fIstereo\fP or \fImono\fP.
+The stereo VU\-meter is available only for 2\-channel stereo samples
with interleaved format.
.TP
\fI\-I, \-\-separate\-channels\fP
Allow interactive operation via stdin.
Currently only pause/resume via space or enter key is implemented.
.TP
+\fI-m, \-\-chmap=ch1,ch2,...\fP
+Give the channel map to override or follow. Pass channel position
+strings like \fIFL\fP, \fIFR\fP, etc.
+
+If a device supports the override of the channel map, \fBaplay\fP
+tries to pass the given channel map.
+If it doesn't support the channel map override but still it provides
+the channel map information, \fBaplay\fP tries to rearrange the
+channel order in the buffer to match with the returned channel map
+from the device.
+.TP
\fI\-\-disable\-resample\fP
Disable automatic rate resample.
.TP
Minimum value is 1.
.TP
\fI\-\-test\-nowait\fP
-Do not wait for the ring buffer--eats the whole CPU.
+Do not wait for the ring buffer \(hy eats the whole CPU.
.TP
\fI\-\-max\-file\-time\fP
While recording, when the output file has been accumulating
send signals to it.
.TP
\fI\-\-use\-strftime\fP
-When recording, interpret %-codes in the file name parameter using
+When recording, interpret %\-codes in the file name parameter using
the strftime facility whenever the output file is opened. The
important strftime codes are: %Y is the year, %m month, %d day of
the month, %H hour, %M minute and %S second. In addition, %v is
.TP
\fBaplay \-c 1 \-t raw \-r 22050 \-f mu_law foobar\fR
will play the raw file "foobar" as a
-22050-Hz, mono, 8-bit, Mu-Law .au file.
+22050\-Hz, mono, 8\-bit, Mu\-Law .au file.
.TP
\fBarecord \-d 10 \-f cd \-t wav \-D copy foobar.wav\fP
-will record foobar.wav as a 10-second, CD-quality wave file, using the
+will record foobar.wav as a 10\-second, CD\-quality wave file, using the
PCM "copy" (which might be defined in the user's .asoundrc file as:
.nf
pcm.copy {
.fi
.TP
-\fBarecord \-t wav \-\-max-file-time 30 mon.wav\fP
+\fBarecord \-t wav \-\-max\-file\-time 30 mon.wav\fP
Record from the default audio source in monaural, 8,000 samples
per second, 8 bits per sample. Start a new file every
-30 seconds. File names are mon-nn.wav, where nn increases
-from 01. The file after mon-99.wav is mon-100.wav.
+30 seconds. File names are mon\-nn.wav, where nn increases
+from 01. The file after mon\-99.wav is mon\-100.wav.
.TP
-\fBarecord \-f cd \-t wav \-\-max-file-time 3600 --use-strftime %Y/%m/%d/listen-%H-%M-%v.wav\fP
+\fBarecord \-f cd \-t wav \-\-max\-file\-time 3600 \-\-use-strftime %Y/%m/%d/listen-%H-%M-%v.wav\fP
Record in stereo from the default audio source. Create a new file
every hour. The files are placed in directories based on their start dates
and have names which include their start times and file numbers.
#error "Wrong endian"
#endif
+/* Note: the following macros evaluate the parameter v twice */
+#define TO_CPU_SHORT(v, be) \
+ ((be) ? BE_SHORT(v) : LE_SHORT(v))
+#define TO_CPU_INT(v, be) \
+ ((be) ? BE_INT(v) : LE_INT(v))
+
#define WAV_RIFF COMPOSE_ID('R','I','F','F')
+#define WAV_RIFX COMPOSE_ID('R','I','F','X')
#define WAV_WAVE COMPOSE_ID('W','A','V','E')
#define WAV_FMT COMPOSE_ID('f','m','t',' ')
#define WAV_DATA COMPOSE_ID('d','a','t','a')
# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010,
# 2011, 2012 Free Software Foundation, Inc.
-timestamp='2012-01-01'
+timestamp='2012-06-10'
# This file is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License as published by
# General Public License for more details.
#
# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA
-# 02110-1301, USA.
+# along with this program; if not, see <http://www.gnu.org/licenses/>.
#
# As a special exception to the GNU General Public License, if you
# distribute this file as part of a program that contains a
i*86:Minix:*:*)
echo ${UNAME_MACHINE}-pc-minix
exit ;;
+ aarch64:Linux:*:*)
+ echo ${UNAME_MACHINE}-unknown-linux-gnu
+ exit ;;
+ aarch64_be:Linux:*:*)
+ UNAME_MACHINE=aarch64_be
+ echo ${UNAME_MACHINE}-unknown-linux-gnu
+ exit ;;
alpha:Linux:*:*)
case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in
EV5) UNAME_MACHINE=alphaev5 ;;
NEO-?:NONSTOP_KERNEL:*:*)
echo neo-tandem-nsk${UNAME_RELEASE}
exit ;;
- NSE-?:NONSTOP_KERNEL:*:*)
+ NSE-*:NONSTOP_KERNEL:*:*)
echo nse-tandem-nsk${UNAME_RELEASE}
exit ;;
NSR-?:NONSTOP_KERNEL:*:*)
i*86:AROS:*:*)
echo ${UNAME_MACHINE}-pc-aros
exit ;;
+ x86_64:VMkernel:*:*)
+ echo ${UNAME_MACHINE}-unknown-esx
+ exit ;;
esac
#echo '(No uname command or uname output not recognized.)' 1>&2
# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010,
# 2011, 2012 Free Software Foundation, Inc.
-timestamp='2012-01-01'
+timestamp='2012-04-18'
# This file is (in principle) common to ALL GNU software.
# The presence of a machine in this file suggests that SOME GNU software
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA
-# 02110-1301, USA.
+# along with this program; if not, see <http://www.gnu.org/licenses/>.
#
# As a special exception to the GNU General Public License, if you
# distribute this file as part of a program that contains a
os=-$maybe_os
basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`
;;
+ android-linux)
+ os=-linux-android
+ basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`-unknown
+ ;;
*)
basic_machine=`echo $1 | sed 's/-[^-]*$//'`
if [ $basic_machine != $1 ]
-isc*)
basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
;;
+ -lynx*178)
+ os=-lynxos178
+ ;;
+ -lynx*5)
+ os=-lynxos5
+ ;;
-lynx*)
os=-lynxos
;;
# Some are omitted here because they have special meanings below.
1750a | 580 \
| a29k \
+ | aarch64 | aarch64_be \
| alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \
| alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \
| am33_2.0 \
c6x)
basic_machine=tic6x-unknown
;;
- m6811 | m68hc11 | m6812 | m68hc12 | picochip)
+ m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x | picochip)
basic_machine=$basic_machine-unknown
os=-none
;;
strongarm | thumb | xscale)
basic_machine=arm-unknown
;;
-
+ xgate)
+ basic_machine=$basic_machine-unknown
+ os=-none
+ ;;
xscaleeb)
basic_machine=armeb-unknown
;;
# Recognize the basic CPU types with company name.
580-* \
| a29k-* \
+ | aarch64-* | aarch64_be-* \
| alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \
| alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \
| alphapca5[67]-* | alpha64pca5[67]-* | arc-* \
c4x-* | tic4x-*)
os=-coff
;;
+ hexagon-*)
+ os=-elf
+ ;;
tic54x-*)
os=-coff
;;
#! /bin/sh
# Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.68.
+# Generated by GNU Autoconf 2.69 for alsa-utils 1.0.28.
#
#
-# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001,
-# 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free Software
-# Foundation, Inc.
+# Copyright (C) 1992-1996, 1998-2012 Free Software Foundation, Inc.
#
#
# This configure script is free software; the Free Software Foundation
# CDPATH.
(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
+# Use a proper internal environment variable to ensure we don't fall
+ # into an infinite loop, continuously re-executing ourselves.
+ if test x"${_as_can_reexec}" != xno && test "x$CONFIG_SHELL" != x; then
+ _as_can_reexec=no; export _as_can_reexec;
+ # We cannot yet assume a decent shell, so we have to provide a
+# neutralization value for shells without unset; and this also
+# works around shells that cannot unset nonexistent variables.
+# Preserve -v and -x to the replacement shell.
+BASH_ENV=/dev/null
+ENV=/dev/null
+(unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV
+case $- in # ((((
+ *v*x* | *x*v* ) as_opts=-vx ;;
+ *v* ) as_opts=-v ;;
+ *x* ) as_opts=-x ;;
+ * ) as_opts= ;;
+esac
+exec $CONFIG_SHELL $as_opts "$as_myself" ${1+"$@"}
+# Admittedly, this is quite paranoid, since all the known shells bail
+# out after a failed `exec'.
+$as_echo "$0: could not re-execute with $CONFIG_SHELL" >&2
+as_fn_exit 255
+ fi
+ # We don't want this to propagate to other subprocesses.
+ { _as_can_reexec=; unset _as_can_reexec;}
if test "x$CONFIG_SHELL" = x; then
as_bourne_compatible="if test -n \"\${ZSH_VERSION+set}\" && (emulate sh) >/dev/null 2>&1; then :
emulate sh
else
exitcode=1; echo positional parameters were not saved.
fi
-test x\$exitcode = x0 || exit 1"
+test x\$exitcode = x0 || exit 1
+test -x / || exit 1"
as_suggested=" as_lineno_1=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_1a=\$LINENO
as_lineno_2=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_2a=\$LINENO
eval 'test \"x\$as_lineno_1'\$as_run'\" != \"x\$as_lineno_2'\$as_run'\" &&
if test "x$CONFIG_SHELL" != x; then :
- # We cannot yet assume a decent shell, so we have to provide a
- # neutralization value for shells without unset; and this also
- # works around shells that cannot unset nonexistent variables.
- # Preserve -v and -x to the replacement shell.
- BASH_ENV=/dev/null
- ENV=/dev/null
- (unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV
- export CONFIG_SHELL
- case $- in # ((((
- *v*x* | *x*v* ) as_opts=-vx ;;
- *v* ) as_opts=-v ;;
- *x* ) as_opts=-x ;;
- * ) as_opts= ;;
- esac
- exec "$CONFIG_SHELL" $as_opts "$as_myself" ${1+"$@"}
+ export CONFIG_SHELL
+ # We cannot yet assume a decent shell, so we have to provide a
+# neutralization value for shells without unset; and this also
+# works around shells that cannot unset nonexistent variables.
+# Preserve -v and -x to the replacement shell.
+BASH_ENV=/dev/null
+ENV=/dev/null
+(unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV
+case $- in # ((((
+ *v*x* | *x*v* ) as_opts=-vx ;;
+ *v* ) as_opts=-v ;;
+ *x* ) as_opts=-x ;;
+ * ) as_opts= ;;
+esac
+exec $CONFIG_SHELL $as_opts "$as_myself" ${1+"$@"}
+# Admittedly, this is quite paranoid, since all the known shells bail
+# out after a failed `exec'.
+$as_echo "$0: could not re-execute with $CONFIG_SHELL" >&2
+exit 255
fi
if test x$as_have_required = xno; then :
} # as_fn_mkdir_p
+
+# as_fn_executable_p FILE
+# -----------------------
+# Test if FILE is an executable regular file.
+as_fn_executable_p ()
+{
+ test -f "$1" && test -x "$1"
+} # as_fn_executable_p
# as_fn_append VAR VALUE
# ----------------------
# Append the text in VALUE to the end of the definition contained in VAR. Take
chmod +x "$as_me.lineno" ||
{ $as_echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2; as_fn_exit 1; }
+ # If we had to re-execute with $CONFIG_SHELL, we're ensured to have
+ # already done that, so ensure we don't try to do so again and fall
+ # in an infinite loop. This has already happened in practice.
+ _as_can_reexec=no; export _as_can_reexec
# Don't try to exec as it changes $[0], causing all sort of problems
# (the dirname of $[0] is not the place where we might find the
# original and so on. Autoconf is especially sensitive to this).
# ... but there are two gotchas:
# 1) On MSYS, both `ln -s file dir' and `ln file dir' fail.
# 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable.
- # In both cases, we have to default to `cp -p'.
+ # In both cases, we have to default to `cp -pR'.
ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe ||
- as_ln_s='cp -p'
+ as_ln_s='cp -pR'
elif ln conf$$.file conf$$ 2>/dev/null; then
as_ln_s=ln
else
- as_ln_s='cp -p'
+ as_ln_s='cp -pR'
fi
else
- as_ln_s='cp -p'
+ as_ln_s='cp -pR'
fi
rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file
rmdir conf$$.dir 2>/dev/null
as_mkdir_p=false
fi
-if test -x / >/dev/null 2>&1; then
- as_test_x='test -x'
-else
- if ls -dL / >/dev/null 2>&1; then
- as_ls_L_option=L
- else
- as_ls_L_option=
- fi
- as_test_x='
- eval sh -c '\''
- if test -d "$1"; then
- test -d "$1/.";
- else
- case $1 in #(
- -*)set "./$1";;
- esac;
- case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in #((
- ???[sx]*):;;*)false;;esac;fi
- '\'' sh
- '
-fi
-as_executable_p=$as_test_x
+as_test_x='test -x'
+as_executable_p=as_fn_executable_p
# Sed expression to map a string onto a valid CPP name.
as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'"
MAKEFLAGS=
# Identity of this package.
-PACKAGE_NAME=
-PACKAGE_TARNAME=
-PACKAGE_VERSION=
-PACKAGE_STRING=
-PACKAGE_BUGREPORT=
-PACKAGE_URL=
+PACKAGE_NAME='alsa-utils'
+PACKAGE_TARNAME='alsa-utils'
+PACKAGE_VERSION='1.0.28'
+PACKAGE_STRING='alsa-utils 1.0.28'
+PACKAGE_BUGREPORT=''
+PACKAGE_URL=''
ac_unique_file="aplay/aplay.c"
ac_default_prefix=/usr
am__EXEEXT_TRUE
LTLIBOBJS
LIBOBJS
+ALSACTL_DAEMONSWITCH
+ALSACTL_PIDFILE_DIR
+ASOUND_LOCK_DIR
ASOUND_STATE_DIR
HAVE_SYSTEMD_FALSE
HAVE_SYSTEMD_TRUE
SND_UTIL_MAJOR
SND_UTIL_VERSION
TESTSOUND
+mydatadir
CURSES_CFLAGS
CURSESLIB
CURSESINC
MSGFMT
GETTEXT_MACRO_VERSION
USE_NLS
+MAINT
+MAINTAINER_MODE_FALSE
+MAINTAINER_MODE_TRUE
am__untar
am__tar
AMTAR
ac_subst_files=''
ac_user_opts='
enable_option_checking
+enable_maintainer_mode
enable_nls
enable_dependency_tracking
with_gnu_ld
enable_largefile
with_systemdsystemunitdir
with_asound_state_dir
+with_alsactl_lock_dir
+with_alsactl_pidfile_dir
+with_alsactl_daemonswitch
'
ac_precious_vars='build_alias
host_alias
localstatedir='${prefix}/var'
includedir='${prefix}/include'
oldincludedir='/usr/include'
-docdir='${datarootdir}/doc/${PACKAGE}'
+docdir='${datarootdir}/doc/${PACKAGE_TARNAME}'
infodir='${datarootdir}/info'
htmldir='${docdir}'
dvidir='${docdir}'
if test "x$host_alias" != x; then
if test "x$build_alias" = x; then
cross_compiling=maybe
- $as_echo "$as_me: WARNING: if you wanted to set the --build type, don't use --host.
- If a cross compiler is detected then cross compile mode will be used" >&2
elif test "x$build_alias" != "x$host_alias"; then
cross_compiling=yes
fi
# Omit some internal or obsolete options to make the list less imposing.
# This message is too long to be a string in the A/UX 3.1 sh.
cat <<_ACEOF
-\`configure' configures this package to adapt to many kinds of systems.
+\`configure' configures alsa-utils 1.0.28 to adapt to many kinds of systems.
Usage: $0 [OPTION]... [VAR=VALUE]...
--infodir=DIR info documentation [DATAROOTDIR/info]
--localedir=DIR locale-dependent data [DATAROOTDIR/locale]
--mandir=DIR man documentation [DATAROOTDIR/man]
- --docdir=DIR documentation root [DATAROOTDIR/doc/PACKAGE]
+ --docdir=DIR documentation root [DATAROOTDIR/doc/alsa-utils]
--htmldir=DIR html documentation [DOCDIR]
--dvidir=DIR dvi documentation [DOCDIR]
--pdfdir=DIR pdf documentation [DOCDIR]
fi
if test -n "$ac_init_help"; then
-
+ case $ac_init_help in
+ short | recursive ) echo "Configuration of alsa-utils 1.0.28:";;
+ esac
cat <<\_ACEOF
Optional Features:
--disable-option-checking ignore unrecognized --enable/--with options
--disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no)
--enable-FEATURE[=ARG] include FEATURE [ARG=yes]
+ --disable-maintainer-mode
+ disable make rules and dependencies not useful (and
+ sometimes confusing) to the casual installer
--disable-nls do not use Native Language Support
- --disable-dependency-tracking speeds up one-time build
- --enable-dependency-tracking do not reject slow dependency extractors
+ --enable-dependency-tracking
+ do not reject slow dependency extractors
+ --disable-dependency-tracking
+ speeds up one-time build
--disable-rpath do not hardcode runtime library paths
--disable-alsatest Do not try to compile and run a test Alsa program
--disable-alsamixer Disable alsamixer compilation
--with-alsa-prefix=PFX Prefix where Alsa library is installed(optional)
--with-alsa-inc-prefix=PFX Prefix where include libraries are (optional)
--with-librt Use librt for monotonic clock (default = yes)
- --with-udev-rules-dir Directory where to install udev rules to (defaults
- to /lib/udev/rules.d)
+ --with-udev-rules-dir=DIR
+ Directory where to install udev rules to
+ (default=auto)
--with-curses=libname Specify the curses library to use (default=auto)
--with-testsound=file give the path of test sound file for alsaconf
--with-systemdsystemunitdir=DIR
Directory for systemd service files
--with-asound-state-dir=DIR
Directory to place asound.state file in
+ --with-alsactl-lock-dir=DIR
+ Directory to place lock files in
+ --with-alsactl-pidfile-dir=DIR
+ Directory to place alsactl.pid file in
+ --with-alsactl-daemonswitch=FILE
+ File to test for the daemon mode
Some influential environment variables:
CC C compiler command
test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then
cat <<\_ACEOF
-configure
-generated by GNU Autoconf 2.68
+alsa-utils configure 1.0.28
+generated by GNU Autoconf 2.69
-Copyright (C) 2010 Free Software Foundation, Inc.
+Copyright (C) 2012 Free Software Foundation, Inc.
This configure script is free software; the Free Software Foundation
gives unlimited permission to copy, distribute and modify it.
_ACEOF
test ! -s conftest.err
} && test -s conftest$ac_exeext && {
test "$cross_compiling" = yes ||
- $as_test_x conftest$ac_exeext
+ test -x conftest$ac_exeext
}; then :
ac_retval=0
else
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
-It was created by $as_me, which was
-generated by GNU Autoconf 2.68. Invocation command line was
+It was created by alsa-utils $as_me 1.0.28, which was
+generated by GNU Autoconf 2.69. Invocation command line was
$ $0 $@
-am__api_version='1.11'
+
+am__api_version='1.12'
ac_aux_dir=
for ac_dir in "$srcdir" "$srcdir/.." "$srcdir/../.."; do
# by default.
for ac_prog in ginstall scoinst install; do
for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_prog$ac_exec_ext" && $as_test_x "$as_dir/$ac_prog$ac_exec_ext"; }; then
+ if as_fn_executable_p "$as_dir/$ac_prog$ac_exec_ext"; then
if test $ac_prog = install &&
grep dspmsg "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
# AIX install. It has an incompatible calling convention.
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether build environment is sane" >&5
$as_echo_n "checking whether build environment is sane... " >&6; }
-# Just in case
-sleep 1
-echo timestamp > conftest.file
# Reject unsafe characters in $srcdir or the absolute working directory
# name. Accept space and tab only in the latter.
am_lf='
esac
case $srcdir in
*[\\\"\#\$\&\'\`$am_lf\ \ ]*)
- as_fn_error $? "unsafe srcdir value: \`$srcdir'" "$LINENO" 5;;
+ as_fn_error $? "unsafe srcdir value: '$srcdir'" "$LINENO" 5;;
esac
-# Do `set' in a subshell so we don't clobber the current shell's
+# Do 'set' in a subshell so we don't clobber the current shell's
# arguments. Must try -L first in case configure is actually a
# symlink; some systems play weird games with the mod time of symlinks
# (eg FreeBSD returns the mod time of the symlink's containing
# directory).
if (
- set X `ls -Lt "$srcdir/configure" conftest.file 2> /dev/null`
- if test "$*" = "X"; then
- # -L didn't work.
- set X `ls -t "$srcdir/configure" conftest.file`
- fi
- rm -f conftest.file
- if test "$*" != "X $srcdir/configure conftest.file" \
- && test "$*" != "X conftest.file $srcdir/configure"; then
-
- # If neither matched, then we have a broken ls. This can happen
- # if, for instance, CONFIG_SHELL is bash and it inherits a
- # broken ls alias from the environment. This has actually
- # happened. Such a system could not be considered "sane".
- as_fn_error $? "ls -t appears to fail. Make sure there is not a broken
-alias in your environment" "$LINENO" 5
- fi
-
+ am_has_slept=no
+ for am_try in 1 2; do
+ echo "timestamp, slept: $am_has_slept" > conftest.file
+ set X `ls -Lt "$srcdir/configure" conftest.file 2> /dev/null`
+ if test "$*" = "X"; then
+ # -L didn't work.
+ set X `ls -t "$srcdir/configure" conftest.file`
+ fi
+ if test "$*" != "X $srcdir/configure conftest.file" \
+ && test "$*" != "X conftest.file $srcdir/configure"; then
+
+ # If neither matched, then we have a broken ls. This can happen
+ # if, for instance, CONFIG_SHELL is bash and it inherits a
+ # broken ls alias from the environment. This has actually
+ # happened. Such a system could not be considered "sane".
+ as_fn_error $? "ls -t appears to fail. Make sure there is not a broken
+ alias in your environment" "$LINENO" 5
+ fi
+ if test "$2" = conftest.file || test $am_try -eq 2; then
+ break
+ fi
+ # Just in case.
+ sleep 1
+ am_has_slept=yes
+ done
test "$2" = conftest.file
)
then
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
$as_echo "yes" >&6; }
+# If we didn't sleep, we still need to ensure time stamps of config.status and
+# generated files are strictly newer.
+am_sleep_pid=
+if grep 'slept: no' conftest.file >/dev/null 2>&1; then
+ ( sleep 1 ) &
+ am_sleep_pid=$!
+fi
+
+rm -f conftest.file
+
test "$program_prefix" != NONE &&
program_transform_name="s&^&$program_prefix&;$program_transform_name"
# Use a double $ so make ignores it.
am_missing_run="$MISSING --run "
else
am_missing_run=
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: \`missing' script is too old or missing" >&5
-$as_echo "$as_me: WARNING: \`missing' script is too old or missing" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: 'missing' script is too old or missing" >&5
+$as_echo "$as_me: WARNING: 'missing' script is too old or missing" >&2;}
fi
if test x"${install_sh}" != xset; then
esac
fi
-# Installed binaries are usually stripped using `strip' when the user
-# run `make install-strip'. However `strip' might not be the right
+# Installed binaries are usually stripped using 'strip' when the user
+# run "make install-strip". However 'strip' might not be the right
# tool to use in cross-compilation environments, therefore Automake
-# will honor the `STRIP' environment variable to overrule this program.
+# will honor the 'STRIP' environment variable to overrule this program.
if test "$cross_compiling" != no; then
if test -n "$ac_tool_prefix"; then
# Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args.
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
ac_cv_prog_STRIP="${ac_tool_prefix}strip"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
ac_cv_prog_ac_ct_STRIP="strip"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
test -z "$as_dir" && as_dir=.
for ac_prog in mkdir gmkdir; do
for ac_exec_ext in '' $ac_executable_extensions; do
- { test -f "$as_dir/$ac_prog$ac_exec_ext" && $as_test_x "$as_dir/$ac_prog$ac_exec_ext"; } || continue
+ as_fn_executable_p "$as_dir/$ac_prog$ac_exec_ext" || continue
case `"$as_dir/$ac_prog$ac_exec_ext" --version 2>&1` in #(
'mkdir (GNU coreutils) '* | \
'mkdir (coreutils) '* | \
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $MKDIR_P" >&5
$as_echo "$MKDIR_P" >&6; }
-mkdir_p="$MKDIR_P"
-case $mkdir_p in
- [\\/$]* | ?:[\\/]*) ;;
- */*) mkdir_p="\$(top_builddir)/$mkdir_p" ;;
-esac
-
for ac_prog in gawk mawk nawk awk
do
# Extract the first word of "$ac_prog", so it can be a program name with args.
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
ac_cv_prog_AWK="$ac_prog"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
# Define the identity of the package.
- PACKAGE=alsa-utils
- VERSION=1.0.26
+ PACKAGE='alsa-utils'
+ VERSION='1.0.28'
cat >>confdefs.h <<_ACEOF
MAKEINFO=${MAKEINFO-"${am_missing_run}makeinfo"}
+# For better backward compatibility. To be removed once Automake 1.9.x
+# dies out for good. For more background, see:
+# <http://lists.gnu.org/archive/html/automake/2012-07/msg00001.html>
+# <http://lists.gnu.org/archive/html/automake/2012-07/msg00014.html>
+mkdir_p='$(MKDIR_P)'
+
# We need awk for the "check" target. The system "awk" is bad on
# some platforms.
# Always define AMTAR for backward compatibility. Yes, it's still used
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to enable maintainer-specific portions of Makefiles" >&5
+$as_echo_n "checking whether to enable maintainer-specific portions of Makefiles... " >&6; }
+ # Check whether --enable-maintainer-mode was given.
+if test "${enable_maintainer_mode+set}" = set; then :
+ enableval=$enable_maintainer_mode; USE_MAINTAINER_MODE=$enableval
+else
+ USE_MAINTAINER_MODE=yes
+fi
+
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $USE_MAINTAINER_MODE" >&5
+$as_echo "$USE_MAINTAINER_MODE" >&6; }
+ if test $USE_MAINTAINER_MODE = yes; then
+ MAINTAINER_MODE_TRUE=
+ MAINTAINER_MODE_FALSE='#'
+else
+ MAINTAINER_MODE_TRUE='#'
+ MAINTAINER_MODE_FALSE=
+fi
+
+ MAINT=$MAINTAINER_MODE_TRUE
+
+
+
+
+mkdir_p="$MKDIR_P"
+case $mkdir_p in
+ [\\/$]* | ?:[\\/]*) ;;
+ */*) mkdir_p="\$(top_builddir)/$mkdir_p" ;;
+esac
+
+
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether NLS is requested" >&5
$as_echo_n "checking whether NLS is requested... " >&6; }
# Check whether --enable-nls was given.
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
ac_cv_path_GMSGFMT="$as_dir/$ac_word$ac_exec_ext"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
_am_result=none
# First try GNU make style include.
echo "include confinc" > confmf
-# Ignore all kinds of additional output from `make'.
+# Ignore all kinds of additional output from 'make'.
case `$am_make -s -f confmf 2> /dev/null` in #(
*the\ am__doit\ target*)
am__include=include
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
ac_cv_prog_CC="${ac_tool_prefix}gcc"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
ac_cv_prog_ac_ct_CC="gcc"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
ac_cv_prog_CC="${ac_tool_prefix}cc"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
if test "$as_dir/$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then
ac_prog_rejected=yes
continue
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
ac_cv_prog_CC="$ac_tool_prefix$ac_prog"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
ac_cv_prog_ac_ct_CC="$ac_prog"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
/* end confdefs.h. */
#include <stdarg.h>
#include <stdio.h>
-#include <sys/types.h>
-#include <sys/stat.h>
+struct stat;
/* Most of the following tests are stolen from RCS 5.7's src/conf.sh. */
struct buf { int x; };
FILE * (*rcsopen) (struct buf *, struct stat *, int);
# We make a subdir and do the tests there. Otherwise we can end up
# making bogus files that we don't know about and never remove. For
# instance it was reported that on HP-UX the gcc test will end up
- # making a dummy file named `D' -- because `-MD' means `put the output
- # in D'.
+ # making a dummy file named 'D' -- because '-MD' means "put the output
+ # in D".
rm -rf conftest.dir
mkdir conftest.dir
# Copy depcomp to subdir because otherwise we won't find it if we're
: > sub/conftest.c
for i in 1 2 3 4 5 6; do
echo '#include "conftst'$i'.h"' >> sub/conftest.c
- # Using `: > sub/conftst$i.h' creates only sub/conftst1.h with
- # Solaris 8's {/usr,}/bin/sh.
- touch sub/conftst$i.h
+ # Using ": > sub/conftst$i.h" creates only sub/conftst1.h with
+ # Solaris 10 /bin/sh.
+ echo '/* dummy */' > sub/conftst$i.h
done
echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf
- # We check with `-c' and `-o' for the sake of the "dashmstdout"
+ # We check with '-c' and '-o' for the sake of the "dashmstdout"
# mode. It turns out that the SunPro C++ compiler does not properly
- # handle `-M -o', and we need to detect this. Also, some Intel
- # versions had trouble with output in subdirs
+ # handle '-M -o', and we need to detect this. Also, some Intel
+ # versions had trouble with output in subdirs.
am__obj=sub/conftest.${OBJEXT-o}
am__minus_obj="-o $am__obj"
case $depmode in
test "$am__universal" = false || continue
;;
nosideeffect)
- # after this tag, mechanisms are not by side-effect, so they'll
- # only be used when explicitly requested
+ # After this tag, mechanisms are not by side-effect, so they'll
+ # only be used when explicitly requested.
if test "x$enable_dependency_tracking" = xyes; then
continue
else
fi
;;
msvc7 | msvc7msys | msvisualcpp | msvcmsys)
- # This compiler won't grok `-c -o', but also, the minuso test has
+ # This compiler won't grok '-c -o', but also, the minuso test has
# not run yet. These depmodes are late enough in the game, and
# so weak that their functioning should not be impacted.
am__obj=conftest.${OBJEXT-o}
for ac_prog in grep ggrep; do
for ac_exec_ext in '' $ac_executable_extensions; do
ac_path_GREP="$as_dir/$ac_prog$ac_exec_ext"
- { test -f "$ac_path_GREP" && $as_test_x "$ac_path_GREP"; } || continue
+ as_fn_executable_p "$ac_path_GREP" || continue
# Check for GNU ac_path_GREP and select it if it is found.
# Check for GNU $ac_path_GREP
case `"$ac_path_GREP" --version 2>&1` in
for ac_prog in egrep; do
for ac_exec_ext in '' $ac_executable_extensions; do
ac_path_EGREP="$as_dir/$ac_prog$ac_exec_ext"
- { test -f "$ac_path_EGREP" && $as_test_x "$ac_path_EGREP"; } || continue
+ as_fn_executable_p "$ac_path_EGREP" || continue
# Check for GNU ac_path_EGREP and select it if it is found.
# Check for GNU $ac_path_EGREP
case `"$ac_path_EGREP" --version 2>&1` in
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
ac_cv_prog_CC="${ac_tool_prefix}gcc"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
ac_cv_prog_ac_ct_CC="gcc"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
ac_cv_prog_CC="${ac_tool_prefix}cc"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
if test "$as_dir/$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then
ac_prog_rejected=yes
continue
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
ac_cv_prog_CC="$ac_tool_prefix$ac_prog"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
ac_cv_prog_ac_ct_CC="$ac_prog"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
/* end confdefs.h. */
#include <stdarg.h>
#include <stdio.h>
-#include <sys/types.h>
-#include <sys/stat.h>
+struct stat;
/* Most of the following tests are stolen from RCS 5.7's src/conf.sh. */
struct buf { int x; };
FILE * (*rcsopen) (struct buf *, struct stat *, int);
# We make a subdir and do the tests there. Otherwise we can end up
# making bogus files that we don't know about and never remove. For
# instance it was reported that on HP-UX the gcc test will end up
- # making a dummy file named `D' -- because `-MD' means `put the output
- # in D'.
+ # making a dummy file named 'D' -- because '-MD' means "put the output
+ # in D".
rm -rf conftest.dir
mkdir conftest.dir
# Copy depcomp to subdir because otherwise we won't find it if we're
: > sub/conftest.c
for i in 1 2 3 4 5 6; do
echo '#include "conftst'$i'.h"' >> sub/conftest.c
- # Using `: > sub/conftst$i.h' creates only sub/conftst1.h with
- # Solaris 8's {/usr,}/bin/sh.
- touch sub/conftst$i.h
+ # Using ": > sub/conftst$i.h" creates only sub/conftst1.h with
+ # Solaris 10 /bin/sh.
+ echo '/* dummy */' > sub/conftst$i.h
done
echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf
- # We check with `-c' and `-o' for the sake of the "dashmstdout"
+ # We check with '-c' and '-o' for the sake of the "dashmstdout"
# mode. It turns out that the SunPro C++ compiler does not properly
- # handle `-M -o', and we need to detect this. Also, some Intel
- # versions had trouble with output in subdirs
+ # handle '-M -o', and we need to detect this. Also, some Intel
+ # versions had trouble with output in subdirs.
am__obj=sub/conftest.${OBJEXT-o}
am__minus_obj="-o $am__obj"
case $depmode in
test "$am__universal" = false || continue
;;
nosideeffect)
- # after this tag, mechanisms are not by side-effect, so they'll
- # only be used when explicitly requested
+ # After this tag, mechanisms are not by side-effect, so they'll
+ # only be used when explicitly requested.
if test "x$enable_dependency_tracking" = xyes; then
continue
else
fi
;;
msvc7 | msvc7msys | msvisualcpp | msvcmsys)
- # This compiler won't grok `-c -o', but also, the minuso test has
+ # This compiler won't grok '-c -o', but also, the minuso test has
# not run yet. These depmodes are late enough in the game, and
# so weak that their functioning should not be impacted.
am__obj=conftest.${OBJEXT-o}
for ac_prog in sed gsed; do
for ac_exec_ext in '' $ac_executable_extensions; do
ac_path_SED="$as_dir/$ac_prog$ac_exec_ext"
- { test -f "$ac_path_SED" && $as_test_x "$ac_path_SED"; } || continue
+ as_fn_executable_p "$ac_path_SED" || continue
# Check for GNU ac_path_SED and select it if it is found.
# Check for GNU $ac_path_SED
case `"$ac_path_SED" --version 2>&1` in
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
ac_cv_path_PKG_CONFIG="$as_dir/$ac_word$ac_exec_ext"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
ac_cv_path_ac_pt_PKG_CONFIG="$as_dir/$ac_word$ac_exec_ext"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
$as_echo "$ALSA_LIBS" >&6; }
if test "x$enable_alsatest" = "xyes"; then
-min_alsa_version=1.0.24
+min_alsa_version=1.0.27
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for libasound headers version >= $min_alsa_version" >&5
$as_echo_n "checking for libasound headers version >= $min_alsa_version... " >&6; }
no_alsa=""
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
ac_cv_prog_xmlto="yes"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
# Check whether --with-udev-rules-dir was given.
if test "${with_udev_rules_dir+set}" = set; then :
- withval=$with_udev_rules_dir; udevrulesdir=$withval
+ withval=$with_udev_rules_dir; udevrulesdir="$withval"
else
- udevrulesdir="/lib/udev/rules.d"
+ udevdir=$($PKG_CONFIG udev --variable=udevdir)
+ if test "x$udevdir" = "x"; then
+ udevrulesdir="/lib/udev/rules.d"
+ else
+ udevrulesdir="$udevdir/rules.d"
+ fi
fi
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
ac_cv_prog_ncursesw5_config="yes"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
ac_cv_prog_ncursesw5_config="yes"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
ac_cv_prog_ncurses5_config="yes"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
ac_cv_prog_ncurses5_config="yes"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
+
# Check whether --with-testsound was given.
if test "${with_testsound+set}" = set; then :
withval=$with_testsound; TESTSOUND="$withval"
int
main ()
{
-/* FIXME: Include the comments suggested by Paul. */
+
#ifndef __cplusplus
- /* Ultrix mips cc rejects this. */
+ /* Ultrix mips cc rejects this sort of thing. */
typedef int charset[2];
- const charset cs;
+ const charset cs = { 0, 0 };
/* SunOS 4.1.1 cc rejects this. */
char const *const *pcpcc;
char **ppc;
++pcpcc;
ppc = (char**) pcpcc;
pcpcc = (char const *const *) ppc;
- { /* SCO 3.2v4 cc rejects this. */
- char *t;
+ { /* SCO 3.2v4 cc rejects this sort of thing. */
+ char tx;
+ char *t = &tx;
char const *s = 0 ? (char *) 0 : (char const *) 0;
*t++ = 0;
iptr p = 0;
++p;
}
- { /* AIX XL C 1.02.0.0 rejects this saying
+ { /* AIX XL C 1.02.0.0 rejects this sort of thing, saying
"k.c", line 2.27: 1506-025 (S) Operand must be a modifiable lvalue. */
- struct s { int j; const int *ap[3]; };
- struct s *b; b->j = 5;
+ struct s { int j; const int *ap[3]; } bx;
+ struct s *b = &bx; b->j = 5;
}
{ /* ULTRIX-32 V3.1 (Rev 9) vcc rejects this */
const int foo = 10;
esac
rm -rf conftest*
fi
+
+
fi
+
+# Check whether --with-alsactl-lock-dir was given.
+if test "${with_alsactl_lock_dir+set}" = set; then :
+ withval=$with_alsactl_lock_dir; ASOUND_LOCK_DIR="$withval"
+else
+ ASOUND_LOCK_DIR="/var/lock"
+fi
+
+
+
+
+# Check whether --with-alsactl-pidfile-dir was given.
+if test "${with_alsactl_pidfile_dir+set}" = set; then :
+ withval=$with_alsactl_pidfile_dir; ALSACTL_PIDFILE_DIR="$withval"
+else
+ ALSACTL_PIDFILE_DIR="/var/run"
+fi
+
+
+
+
+# Check whether --with-alsactl-daemonswitch was given.
+if test "${with_alsactl_daemonswitch+set}" = set; then :
+ withval=$with_alsactl_daemonswitch; ALSACTL_DAEMONSWITCH="$withval"
+else
+ ALSACTL_DAEMONSWITCH="/etc/alsa/state-daemon.conf"
+fi
+
+
+
ac_config_files="$ac_config_files Makefile alsactl/Makefile alsactl/init/Makefile alsamixer/Makefile amidi/Makefile amixer/Makefile m4/Makefile po/Makefile.in alsaconf/alsaconf alsaconf/Makefile alsaconf/po/Makefile alsaucm/Makefile aplay/Makefile include/Makefile iecset/Makefile utils/Makefile utils/alsa-utils.spec seq/Makefile seq/aconnect/Makefile seq/aplaymidi/Makefile seq/aseqdump/Makefile seq/aseqnet/Makefile speaker-test/Makefile speaker-test/samples/Makefile alsaloop/Makefile"
cat >confcache <<\_ACEOF
LTLIBOBJS=$ac_ltlibobjs
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking that generated files are newer than configure" >&5
+$as_echo_n "checking that generated files are newer than configure... " >&6; }
+ if test -n "$am_sleep_pid"; then
+ # Hide warnings about reused PIDs.
+ wait $am_sleep_pid 2>/dev/null
+ fi
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: done" >&5
+$as_echo "done" >&6; }
if test -n "$EXEEXT"; then
am__EXEEXT_TRUE=
am__EXEEXT_FALSE='#'
am__EXEEXT_FALSE=
fi
+if test -z "${MAINTAINER_MODE_TRUE}" && test -z "${MAINTAINER_MODE_FALSE}"; then
+ as_fn_error $? "conditional \"MAINTAINER_MODE\" was never defined.
+Usually this means the macro was only invoked conditionally." "$LINENO" 5
+fi
if test -z "${AMDEP_TRUE}" && test -z "${AMDEP_FALSE}"; then
as_fn_error $? "conditional \"AMDEP\" was never defined.
Usually this means the macro was only invoked conditionally." "$LINENO" 5
# ... but there are two gotchas:
# 1) On MSYS, both `ln -s file dir' and `ln file dir' fail.
# 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable.
- # In both cases, we have to default to `cp -p'.
+ # In both cases, we have to default to `cp -pR'.
ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe ||
- as_ln_s='cp -p'
+ as_ln_s='cp -pR'
elif ln conf$$.file conf$$ 2>/dev/null; then
as_ln_s=ln
else
- as_ln_s='cp -p'
+ as_ln_s='cp -pR'
fi
else
- as_ln_s='cp -p'
+ as_ln_s='cp -pR'
fi
rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file
rmdir conf$$.dir 2>/dev/null
as_mkdir_p=false
fi
-if test -x / >/dev/null 2>&1; then
- as_test_x='test -x'
-else
- if ls -dL / >/dev/null 2>&1; then
- as_ls_L_option=L
- else
- as_ls_L_option=
- fi
- as_test_x='
- eval sh -c '\''
- if test -d "$1"; then
- test -d "$1/.";
- else
- case $1 in #(
- -*)set "./$1";;
- esac;
- case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in #((
- ???[sx]*):;;*)false;;esac;fi
- '\'' sh
- '
-fi
-as_executable_p=$as_test_x
+
+# as_fn_executable_p FILE
+# -----------------------
+# Test if FILE is an executable regular file.
+as_fn_executable_p ()
+{
+ test -f "$1" && test -x "$1"
+} # as_fn_executable_p
+as_test_x='test -x'
+as_executable_p=as_fn_executable_p
# Sed expression to map a string onto a valid CPP name.
as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'"
# report actual input values of CONFIG_FILES etc. instead of their
# values after options handling.
ac_log="
-This file was extended by $as_me, which was
-generated by GNU Autoconf 2.68. Invocation command line was
+This file was extended by alsa-utils $as_me 1.0.28, which was
+generated by GNU Autoconf 2.69. Invocation command line was
CONFIG_FILES = $CONFIG_FILES
CONFIG_HEADERS = $CONFIG_HEADERS
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
ac_cs_version="\\
-config.status
-configured by $0, generated by GNU Autoconf 2.68,
+alsa-utils config.status 1.0.28
+configured by $0, generated by GNU Autoconf 2.69,
with options \\"\$ac_cs_config\\"
-Copyright (C) 2010 Free Software Foundation, Inc.
+Copyright (C) 2012 Free Software Foundation, Inc.
This config.status script is free software; the Free Software Foundation
gives unlimited permission to copy, distribute and modify it."
_ACEOF
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
if \$ac_cs_recheck; then
- set X '$SHELL' '$0' $ac_configure_args \$ac_configure_extra_args --no-create --no-recursion
+ set X $SHELL '$0' $ac_configure_args \$ac_configure_extra_args --no-create --no-recursion
shift
\$as_echo "running CONFIG_SHELL=$SHELL \$*" >&6
CONFIG_SHELL='$SHELL'
# Strip MF so we end up with the name of the file.
mf=`echo "$mf" | sed -e 's/:.*$//'`
# Check whether this is an Automake generated Makefile or not.
- # We used to match only the files named `Makefile.in', but
+ # We used to match only the files named 'Makefile.in', but
# some people rename them; so instead we look at the file content.
# Grep'ing the first line is not enough: some people post-process
# each Makefile.in and add a new line on top of each file to say so.
continue
fi
# Extract the definition of DEPDIR, am__include, and am__quote
- # from the Makefile without running `make'.
+ # from the Makefile without running 'make'.
DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"`
test -z "$DEPDIR" && continue
am__include=`sed -n 's/^am__include = //p' < "$mf"`
test -z "am__include" && continue
am__quote=`sed -n 's/^am__quote = //p' < "$mf"`
- # When using ansi2knr, U may be empty or an underscore; expand it
- U=`sed -n 's/^U = //p' < "$mf"`
# Find all dependency output files, they are included files with
# $(DEPDIR) in their names. We invoke sed twice because it is the
# simplest approach to changing $(DEPDIR) to its actual value in the
# expansion.
for file in `sed -n "
s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \
- sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do
+ sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g'`; do
# Make sure the directory exists.
test -f "$dirpart/$file" && continue
fdir=`$as_dirname -- "$file" ||
dnl Process this file with autoconf to produce a configure script.
AC_PREREQ(2.59)
-AC_INIT(aplay/aplay.c)
+AC_INIT(alsa-utils, 1.0.28)
+AC_CONFIG_SRCDIR([aplay/aplay.c])
AC_PREFIX_DEFAULT(/usr)
-AM_INIT_AUTOMAKE(alsa-utils, 1.0.26)
+AM_INIT_AUTOMAKE
+
+AM_MAINTAINER_MODE([enable])
AM_GNU_GETTEXT([external])
AM_GNU_GETTEXT_VERSION([0.15])
AC_PROG_LN_S
AC_PROG_SED
PKG_PROG_PKG_CONFIG
-AM_PATH_ALSA(1.0.24)
+AM_PATH_ALSA(1.0.27)
if test "x$enable_alsatest" = "xyes"; then
AC_CHECK_FUNC([snd_ctl_elem_add_enumerated],
, [AC_ERROR([No user enum control support in alsa-lib])])
AC_ARG_WITH(
[udev-rules-dir],
- AS_HELP_STRING([--with-udev-rules-dir],[Directory where to install udev rules to (defaults to /lib/udev/rules.d)]),
- [udevrulesdir=$withval], [udevrulesdir="/lib/udev/rules.d"])
+ AS_HELP_STRING([--with-udev-rules-dir=DIR],[Directory where to install udev rules to (default=auto)]),
+ [udevrulesdir="$withval"],
+ [udevdir=$($PKG_CONFIG udev --variable=udevdir)
+ if test "x$udevdir" = "x"; then
+ udevrulesdir="/lib/udev/rules.d"
+ else
+ udevrulesdir="$udevdir/rules.d"
+ fi])
AC_SUBST(udevrulesdir)
dnl Checks for header files.
mydatadir="$dir/alsa"
AC_DEFINE_UNQUOTED(DATADIR, "$mydatadir", [directory containing alsa configuration])
+AC_SUBST(mydatadir)
AC_ARG_WITH(testsound,
AS_HELP_STRING([--with-testsound=file], [give the path of test sound file for alsaconf]),
TESTSOUND="$dir/test.wav")
AC_SUBST(TESTSOUND)
-AM_CONFIG_HEADER(include/aconfig.h)
+AC_CONFIG_HEADERS(include/aconfig.h)
dnl Checks for typedefs, structures, and compiler characteristics.
AC_C_CONST
[ASOUND_STATE_DIR="/var/lib/alsa"])
AC_SUBST(ASOUND_STATE_DIR)
+AC_ARG_WITH([alsactl-lock-dir],
+ AS_HELP_STRING([--with-alsactl-lock-dir=DIR], [Directory to place lock files in]),
+ [ASOUND_LOCK_DIR="$withval"],
+ [ASOUND_LOCK_DIR="/var/lock"])
+AC_SUBST(ASOUND_LOCK_DIR)
+
+AC_ARG_WITH([alsactl-pidfile-dir],
+ AS_HELP_STRING([--with-alsactl-pidfile-dir=DIR], [Directory to place alsactl.pid file in]),
+ [ALSACTL_PIDFILE_DIR="$withval"],
+ [ALSACTL_PIDFILE_DIR="/var/run"])
+AC_SUBST(ALSACTL_PIDFILE_DIR)
+
+AC_ARG_WITH([alsactl-daemonswitch],
+ AS_HELP_STRING([--with-alsactl-daemonswitch=FILE], [File to test for the daemon mode]),
+ [ALSACTL_DAEMONSWITCH="$withval"],
+ [ALSACTL_DAEMONSWITCH="/etc/alsa/state-daemon.conf"])
+AC_SUBST(ALSACTL_DAEMONSWITCH)
+
AC_OUTPUT(Makefile alsactl/Makefile alsactl/init/Makefile \
alsamixer/Makefile amidi/Makefile amixer/Makefile \
m4/Makefile po/Makefile.in \
#! /bin/sh
# depcomp - compile a program generating dependencies as side-effects
-scriptversion=2011-12-04.11; # UTC
+scriptversion=2012-03-27.16; # UTC
-# Copyright (C) 1999, 2000, 2003, 2004, 2005, 2006, 2007, 2009, 2010,
-# 2011 Free Software Foundation, Inc.
+# Copyright (C) 1999-2012 Free Software Foundation, Inc.
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
case $1 in
'')
- echo "$0: No command. Try \`$0 --help' for more information." 1>&2
+ echo "$0: No command. Try '$0 --help' for more information." 1>&2
exit 1;
;;
-h | --h*)
Environment variables:
depmode Dependency tracking mode.
- source Source file read by `PROGRAMS ARGS'.
- object Object file output by `PROGRAMS ARGS'.
+ source Source file read by 'PROGRAMS ARGS'.
+ object Object file output by 'PROGRAMS ARGS'.
DEPDIR directory where to store dependencies.
depfile Dependency file to output.
tmpdepfile Temporary file to use when outputting dependencies.
;;
esac
+# A tabulation character.
+tab=' '
+# A newline character.
+nl='
+'
+
if test -z "$depmode" || test -z "$source" || test -z "$object"; then
echo "depcomp: Variables source, object and depmode must be set" 1>&2
exit 1
depmode=msvc7
fi
+if test "$depmode" = xlc; then
+ # IBM C/C++ Compilers xlc/xlC can output gcc-like dependency informations.
+ gccflag=-qmakedep=gcc,-MF
+ depmode=gcc
+fi
+
case "$depmode" in
gcc3)
## gcc 3 implements dependency tracking that does exactly what
## The second -e expression handles DOS-style file names with drive letters.
sed -e 's/^[^:]*: / /' \
-e 's/^['$alpha']:\/[^:]*: / /' < "$tmpdepfile" >> "$depfile"
-## This next piece of magic avoids the `deleted header file' problem.
+## This next piece of magic avoids the "deleted header file" problem.
## The problem is that when a header file which appears in a .P file
## is deleted, the dependency causes make to die (because there is
## typically no way to rebuild the header). We avoid this by adding
## dummy dependencies for each header file. Too bad gcc doesn't do
## this for us directly.
- tr ' ' '
-' < "$tmpdepfile" |
-## Some versions of gcc put a space before the `:'. On the theory
+ tr ' ' "$nl" < "$tmpdepfile" |
+## Some versions of gcc put a space before the ':'. On the theory
## that the space means something, we add a space to the output as
## well. hp depmode also adds that space, but also prefixes the VPATH
## to the object. Take care to not repeat it in the output.
# clever and replace this with sed code, as IRIX sed won't handle
# lines with more than a fixed number of characters (4096 in
# IRIX 6.2 sed, 8192 in IRIX 6.5). We also remove comment lines;
- # the IRIX cc adds comments like `#:fec' to the end of the
+ # the IRIX cc adds comments like '#:fec' to the end of the
# dependency line.
- tr ' ' '
-' < "$tmpdepfile" \
+ tr ' ' "$nl" < "$tmpdepfile" \
| sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' | \
- tr '
-' ' ' >> "$depfile"
+ tr "$nl" ' ' >> "$depfile"
echo >> "$depfile"
# The second pass generates a dummy entry for each header file.
- tr ' ' '
-' < "$tmpdepfile" \
+ tr ' ' "$nl" < "$tmpdepfile" \
| sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' -e 's/$/:/' \
>> "$depfile"
else
rm -f "$tmpdepfile"
;;
+xlc)
+ # This case exists only to let depend.m4 do its work. It works by
+ # looking at the text of this script. This case will never be run,
+ # since it is checked for above.
+ exit 1
+ ;;
+
aix)
# The C for AIX Compiler uses -M and outputs the dependencies
# in a .u file. In older versions, this file always lives in the
- # current directory. Also, the AIX compiler puts `$object:' at the
+ # current directory. Also, the AIX compiler puts '$object:' at the
# start of each line; $object doesn't have directory information.
# Version 6 uses the directory in both cases.
dir=`echo "$object" | sed -e 's|/[^/]*$|/|'`
test -f "$tmpdepfile" && break
done
if test -f "$tmpdepfile"; then
- # Each line is of the form `foo.o: dependent.h'.
+ # Each line is of the form 'foo.o: dependent.h'.
# Do two passes, one to just change these to
- # `$object: dependent.h' and one to simply `dependent.h:'.
+ # '$object: dependent.h' and one to simply 'dependent.h:'.
sed -e "s,^.*\.[a-z]*:,$object:," < "$tmpdepfile" > "$depfile"
- # That's a tab and a space in the [].
- sed -e 's,^.*\.[a-z]*:[ ]*,,' -e 's,$,:,' < "$tmpdepfile" >> "$depfile"
+ sed -e 's,^.*\.[a-z]*:['"$tab"' ]*,,' -e 's,$,:,' < "$tmpdepfile" >> "$depfile"
else
# The sourcefile does not contain any dependencies, so just
# store a dummy comment line, to avoid errors with the Makefile
;;
icc)
- # Intel's C compiler understands `-MD -MF file'. However on
- # icc -MD -MF foo.d -c -o sub/foo.o sub/foo.c
+ # Intel's C compiler anf tcc (Tiny C Compiler) understand '-MD -MF file'.
+ # However on
+ # $CC -MD -MF foo.d -c -o sub/foo.o sub/foo.c
# ICC 7.0 will fill foo.d with something like
# foo.o: sub/foo.c
# foo.o: sub/foo.h
- # which is wrong. We want:
+ # which is wrong. We want
# sub/foo.o: sub/foo.c
# sub/foo.o: sub/foo.h
# sub/foo.c:
# sub/foo.h:
# ICC 7.1 will output
# foo.o: sub/foo.c sub/foo.h
- # and will wrap long lines using \ :
+ # and will wrap long lines using '\':
# foo.o: sub/foo.c ... \
# sub/foo.h ... \
# ...
-
+ # tcc 0.9.26 (FIXME still under development at the moment of writing)
+ # will emit a similar output, but also prepend the continuation lines
+ # with horizontal tabulation characters.
"$@" -MD -MF "$tmpdepfile"
stat=$?
if test $stat -eq 0; then :
exit $stat
fi
rm -f "$depfile"
- # Each line is of the form `foo.o: dependent.h',
- # or `foo.o: dep1.h dep2.h \', or ` dep3.h dep4.h \'.
+ # Each line is of the form 'foo.o: dependent.h',
+ # or 'foo.o: dep1.h dep2.h \', or ' dep3.h dep4.h \'.
# Do two passes, one to just change these to
- # `$object: dependent.h' and one to simply `dependent.h:'.
- sed "s,^[^:]*:,$object :," < "$tmpdepfile" > "$depfile"
- # Some versions of the HPUX 10.20 sed can't process this invocation
- # correctly. Breaking it into two sed invocations is a workaround.
- sed 's,^[^:]*: \(.*\)$,\1,;s/^\\$//;/^$/d;/:$/d' < "$tmpdepfile" |
- sed -e 's/$/ :/' >> "$depfile"
+ # '$object: dependent.h' and one to simply 'dependent.h:'.
+ sed -e "s/^[ $tab][ $tab]*/ /" -e "s,^[^:]*:,$object :," \
+ < "$tmpdepfile" > "$depfile"
+ sed '
+ s/[ '"$tab"'][ '"$tab"']*/ /g
+ s/^ *//
+ s/ *\\*$//
+ s/^[^:]*: *//
+ /^$/d
+ /:$/d
+ s/$/ :/
+ ' < "$tmpdepfile" >> "$depfile"
rm -f "$tmpdepfile"
;;
done
if test -f "$tmpdepfile"; then
sed -e "s,^.*\.[a-z]*:,$object:," "$tmpdepfile" > "$depfile"
- # Add `dependent.h:' lines.
+ # Add 'dependent.h:' lines.
sed -ne '2,${
s/^ *//
s/ \\*$//
tru64)
# The Tru64 compiler uses -MD to generate dependencies as a side
- # effect. `cc -MD -o foo.o ...' puts the dependencies into `foo.o.d'.
+ # effect. 'cc -MD -o foo.o ...' puts the dependencies into 'foo.o.d'.
# At least on Alpha/Redhat 6.1, Compaq CCC V6.2-504 seems to put
- # dependencies in `foo.d' instead, so we check for that too.
+ # dependencies in 'foo.d' instead, so we check for that too.
# Subdirectories are respected.
dir=`echo "$object" | sed -e 's|/[^/]*$|/|'`
test "x$dir" = "x$object" && dir=
done
if test -f "$tmpdepfile"; then
sed -e "s,^.*\.[a-z]*:,$object:," < "$tmpdepfile" > "$depfile"
- # That's a tab and a space in the [].
- sed -e 's,^.*\.[a-z]*:[ ]*,,' -e 's,$,:,' < "$tmpdepfile" >> "$depfile"
+ sed -e 's,^.*\.[a-z]*:['"$tab"' ]*,,' -e 's,$,:,' < "$tmpdepfile" >> "$depfile"
else
echo "#dummy" > "$depfile"
fi
p
}' | $cygpath_u | sort -u | sed -n '
s/ /\\ /g
-s/\(.*\)/ \1 \\/p
+s/\(.*\)/'"$tab"'\1 \\/p
s/.\(.*\) \\/\1:/
H
$ {
- s/.*/ /
+ s/.*/'"$tab"'/
G
p
}' >> "$depfile"
shift
fi
- # Remove `-o $object'.
+ # Remove '-o $object'.
IFS=" "
for arg
do
done
test -z "$dashmflag" && dashmflag=-M
- # Require at least two characters before searching for `:'
+ # Require at least two characters before searching for ':'
# in the target name. This is to cope with DOS-style filenames:
- # a dependency such as `c:/foo/bar' could be seen as target `c' otherwise.
+ # a dependency such as 'c:/foo/bar' could be seen as target 'c' otherwise.
"$@" $dashmflag |
- sed 's:^[ ]*[^: ][^:][^:]*\:[ ]*:'"$object"'\: :' > "$tmpdepfile"
+ sed 's:^['"$tab"' ]*[^:'"$tab"' ][^:][^:]*\:['"$tab"' ]*:'"$object"'\: :' > "$tmpdepfile"
rm -f "$depfile"
cat < "$tmpdepfile" > "$depfile"
- tr ' ' '
-' < "$tmpdepfile" | \
+ tr ' ' "$nl" < "$tmpdepfile" | \
## Some versions of the HPUX 10.20 sed can't process this invocation
## correctly. Breaking it into two sed invocations is a workaround.
sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile"
# makedepend may prepend the VPATH from the source file name to the object.
# No need to regex-escape $object, excess matching of '.' is harmless.
sed "s|^.*\($object *:\)|\1|" "$tmpdepfile" > "$depfile"
- sed '1,2d' "$tmpdepfile" | tr ' ' '
-' | \
+ sed '1,2d' "$tmpdepfile" | tr ' ' "$nl" | \
## Some versions of the HPUX 10.20 sed can't process this invocation
## correctly. Breaking it into two sed invocations is a workaround.
sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile"
shift
fi
- # Remove `-o $object'.
+ # Remove '-o $object'.
IFS=" "
for arg
do
sed -n '/^#line [0-9][0-9]* "\([^"]*\)"/ s::\1:p' | $cygpath_u | sort -u > "$tmpdepfile"
rm -f "$depfile"
echo "$object : \\" > "$depfile"
- sed < "$tmpdepfile" -n -e 's% %\\ %g' -e '/^\(.*\)$/ s:: \1 \\:p' >> "$depfile"
- echo " " >> "$depfile"
+ sed < "$tmpdepfile" -n -e 's% %\\ %g' -e '/^\(.*\)$/ s::'"$tab"'\1 \\:p' >> "$depfile"
+ echo "$tab" >> "$depfile"
sed < "$tmpdepfile" -n -e 's% %\\ %g' -e '/^\(.*\)$/ s::\1\::p' >> "$depfile"
rm -f "$tmpdepfile"
;;
aclocal $alsa_m4_flags $ACLOCAL_FLAGS
# save original files to avoid stupid modifications by gettextize
cp Makefile.am Makefile.am.ok
-cp configure.in configure.in.ok
+cp configure.ac configure.ac.ok
gettextize -c -f --no-changelog
echo "EXTRA_DIST = gettext.m4" > m4/Makefile.am
cp Makefile.am.ok Makefile.am
-cp configure.in.ok configure.in
+cp configure.ac.ok configure.ac
autoheader
automake --foreign --copy --add-missing
touch depcomp # for older automake
-INCLUDES = -I$(top_srcdir)/include
+AM_CPPFLAGS = -I$(top_srcdir)/include
LDADD = -lm
# LDFLAGS = -static
# CFLAGS += -g -Wall
-# Makefile.in generated by automake 1.11.3 from Makefile.am.
+# Makefile.in generated by automake 1.12.2 from Makefile.am.
# @configure_input@
-# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software
-# Foundation, Inc.
+# Copyright (C) 1994-2012 Free Software Foundation, Inc.
+
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
@SET_MAKE@
VPATH = @srcdir@
+am__make_dryrun = \
+ { \
+ am__dry=no; \
+ case $$MAKEFLAGS in \
+ *\\[\ \ ]*) \
+ echo 'am--echo: ; @echo "AM" OK' | $(MAKE) -f - 2>/dev/null \
+ | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
+ *) \
+ for am__flg in $$MAKEFLAGS; do \
+ case $$am__flg in \
+ *=*|--*) ;; \
+ *n*) am__dry=yes; break;; \
+ esac; \
+ done;; \
+ esac; \
+ test $$am__dry = yes; \
+ }
pkgdatadir = $(datadir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
host_triplet = @host@
bin_PROGRAMS = iecset$(EXEEXT)
subdir = iecset
-DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
+DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in \
+ $(top_srcdir)/depcomp
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/m4/gettext.m4 \
$(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/lib-ld.m4 \
$(top_srcdir)/m4/lib-link.m4 $(top_srcdir)/m4/lib-prefix.m4 \
$(top_srcdir)/m4/nls.m4 $(top_srcdir)/m4/po.m4 \
$(top_srcdir)/m4/progtest.m4 $(top_srcdir)/acinclude.m4 \
- $(top_srcdir)/configure.in
+ $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(install_sh) -d
LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
SOURCES = $(iecset_SOURCES)
DIST_SOURCES = $(iecset_SOURCES)
+am__can_run_installinfo = \
+ case $$AM_UPDATE_INFO_DIR in \
+ n|no|NO) false;; \
+ *) (install-info --version) >/dev/null 2>&1;; \
+ esac
am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
am__vpath_adj = case $$p in \
$(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
CTAGS = ctags
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
ACLOCAL = @ACLOCAL@
+ALSACTL_DAEMONSWITCH = @ALSACTL_DAEMONSWITCH@
+ALSACTL_PIDFILE_DIR = @ALSACTL_PIDFILE_DIR@
ALSA_CFLAGS = @ALSA_CFLAGS@
ALSA_LIBS = @ALSA_LIBS@
AMTAR = @AMTAR@
+ASOUND_LOCK_DIR = @ASOUND_LOCK_DIR@
ASOUND_STATE_DIR = @ASOUND_STATE_DIR@
AUTOCONF = @AUTOCONF@
AUTOHEADER = @AUTOHEADER@
LTLIBICONV = @LTLIBICONV@
LTLIBINTL = @LTLIBINTL@
LTLIBOBJS = @LTLIBOBJS@
+MAINT = @MAINT@
MAKEINFO = @MAKEINFO@
MKDIR_P = @MKDIR_P@
MSGFMT = @MSGFMT@
localstatedir = @localstatedir@
mandir = @mandir@
mkdir_p = @mkdir_p@
+mydatadir = @mydatadir@
ncurses5_config = @ncurses5_config@
ncursesw5_config = @ncursesw5_config@
oldincludedir = @oldincludedir@
top_srcdir = @top_srcdir@
udevrulesdir = @udevrulesdir@
xmlto = @xmlto@
-INCLUDES = -I$(top_srcdir)/include
+AM_CPPFLAGS = -I$(top_srcdir)/include
LDADD = -lm
iecset_SOURCES = iecset.c iecbits.c
man_MANS = iecset.1
.SUFFIXES:
.SUFFIXES: .c .o .obj
-$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps)
@for dep in $?; do \
case '$(am__configure_deps)' in \
*$$dep*) \
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-$(top_srcdir)/configure: $(am__configure_deps)
+$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-$(ACLOCAL_M4): $(am__aclocal_m4_deps)
+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(am__aclocal_m4_deps):
install-binPROGRAMS: $(bin_PROGRAMS)
@$(NORMAL_INSTALL)
- test -z "$(bindir)" || $(MKDIR_P) "$(DESTDIR)$(bindir)"
@list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \
+ if test -n "$$list"; then \
+ echo " $(MKDIR_P) '$(DESTDIR)$(bindir)'"; \
+ $(MKDIR_P) "$(DESTDIR)$(bindir)" || exit 1; \
+ fi; \
for p in $$list; do echo "$$p $$p"; done | \
sed 's/$(EXEEXT)$$//' | \
while read p p1; do if test -f $$p; \
@am__fastdepCC_FALSE@ $(COMPILE) -c `$(CYGPATH_W) '$<'`
install-man1: $(man_MANS)
@$(NORMAL_INSTALL)
- test -z "$(man1dir)" || $(MKDIR_P) "$(DESTDIR)$(man1dir)"
- @list=''; test -n "$(man1dir)" || exit 0; \
- { for i in $$list; do echo "$$i"; done; \
- l2='$(man_MANS)'; for i in $$l2; do echo "$$i"; done | \
- sed -n '/\.1[a-z]*$$/p'; \
+ @list1=''; \
+ list2='$(man_MANS)'; \
+ test -n "$(man1dir)" \
+ && test -n "`echo $$list1$$list2`" \
+ || exit 0; \
+ echo " $(MKDIR_P) '$(DESTDIR)$(man1dir)'"; \
+ $(MKDIR_P) "$(DESTDIR)$(man1dir)" || exit 1; \
+ { for i in $$list1; do echo "$$i"; done; \
+ if test -n "$$list2"; then \
+ for i in $$list2; do echo "$$i"; done \
+ | sed -n '/\.1[a-z]*$$/p'; \
+ fi; \
} | while read p; do \
if test -f $$p; then d=; else d="$(srcdir)/"; fi; \
echo "$$d$$p"; echo "$$p"; \
&& $(am__cd) $(top_srcdir) \
&& gtags -i $(GTAGS_ARGS) "$$here"
+cscopelist: $(HEADERS) $(SOURCES) $(LISP)
+ list='$(SOURCES) $(HEADERS) $(LISP)'; \
+ case "$(srcdir)" in \
+ [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
+ *) sdir=$(subdir)/$(srcdir) ;; \
+ esac; \
+ for i in $$list; do \
+ if test -f "$$i"; then \
+ echo "$(subdir)/$$i"; \
+ else \
+ echo "$$sdir/$$i"; \
+ fi; \
+ done >> $(top_builddir)/cscope.files
+
distclean-tags:
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
if test -f "$$d$$p"; then echo "$$d$$p"; else :; fi; done`; \
if test -n "$$list" && \
grep 'ab help2man is required to generate this page' $$list >/dev/null; then \
- echo "error: found man pages containing the \`missing help2man' replacement text:" >&2; \
+ echo "error: found man pages containing the 'missing help2man' replacement text:" >&2; \
grep -l 'ab help2man is required to generate this page' $$list | sed 's/^/ /' >&2; \
echo " to fix them, install help2man, remove and regenerate the man pages;" >&2; \
- echo " typically \`make maintainer-clean' will remove them" >&2; \
+ echo " typically 'make maintainer-clean' will remove them" >&2; \
exit 1; \
else :; fi; \
else :; fi
.MAKE: install-am install-strip
.PHONY: CTAGS GTAGS all all-am check check-am clean clean-binPROGRAMS \
- clean-generic ctags distclean distclean-compile \
+ clean-generic cscopelist ctags distclean distclean-compile \
distclean-generic distclean-tags distdir dvi dvi-am html \
html-am info info-am install install-am install-binPROGRAMS \
install-data install-data-am install-dvi install-dvi-am \
printf("user-defined\n");
break;
default:
- printf("unkown\n");
+ printf("unknown\n");
break;
}
printf("Sample Bits: ");
version.h: stamp-vh
@:
-stamp-vh: $(top_builddir)/configure.in
+stamp-vh: $(top_builddir)/configure.ac
@echo "/*" > ver.tmp
@echo " * version.h" >> ver.tmp
@echo " */" >> ver.tmp
echo timestamp > stamp-vh)
-@rm -f ver.tmp
-INCLUDES=-I$(top_srcdir)/include
+AM_CPPFLAGS=-I$(top_srcdir)/include
-# Makefile.in generated by automake 1.11.3 from Makefile.am.
+# Makefile.in generated by automake 1.12.2 from Makefile.am.
# @configure_input@
-# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software
-# Foundation, Inc.
+# Copyright (C) 1994-2012 Free Software Foundation, Inc.
+
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
@SET_MAKE@
VPATH = @srcdir@
+am__make_dryrun = \
+ { \
+ am__dry=no; \
+ case $$MAKEFLAGS in \
+ *\\[\ \ ]*) \
+ echo 'am--echo: ; @echo "AM" OK' | $(MAKE) -f - 2>/dev/null \
+ | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
+ *) \
+ for am__flg in $$MAKEFLAGS; do \
+ case $$am__flg in \
+ *=*|--*) ;; \
+ *n*) am__dry=yes; break;; \
+ esac; \
+ done;; \
+ esac; \
+ test $$am__dry = yes; \
+ }
pkgdatadir = $(datadir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
$(top_srcdir)/m4/lib-link.m4 $(top_srcdir)/m4/lib-prefix.m4 \
$(top_srcdir)/m4/nls.m4 $(top_srcdir)/m4/po.m4 \
$(top_srcdir)/m4/progtest.m4 $(top_srcdir)/acinclude.m4 \
- $(top_srcdir)/configure.in
+ $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(install_sh) -d
CONFIG_CLEAN_VPATH_FILES =
SOURCES =
DIST_SOURCES =
+am__can_run_installinfo = \
+ case $$AM_UPDATE_INFO_DIR in \
+ n|no|NO) false;; \
+ *) (install-info --version) >/dev/null 2>&1;; \
+ esac
HEADERS = $(noinst_HEADERS)
ETAGS = etags
CTAGS = ctags
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
ACLOCAL = @ACLOCAL@
+ALSACTL_DAEMONSWITCH = @ALSACTL_DAEMONSWITCH@
+ALSACTL_PIDFILE_DIR = @ALSACTL_PIDFILE_DIR@
ALSA_CFLAGS = @ALSA_CFLAGS@
ALSA_LIBS = @ALSA_LIBS@
AMTAR = @AMTAR@
+ASOUND_LOCK_DIR = @ASOUND_LOCK_DIR@
ASOUND_STATE_DIR = @ASOUND_STATE_DIR@
AUTOCONF = @AUTOCONF@
AUTOHEADER = @AUTOHEADER@
LTLIBICONV = @LTLIBICONV@
LTLIBINTL = @LTLIBINTL@
LTLIBOBJS = @LTLIBOBJS@
+MAINT = @MAINT@
MAKEINFO = @MAKEINFO@
MKDIR_P = @MKDIR_P@
MSGFMT = @MSGFMT@
localstatedir = @localstatedir@
mandir = @mandir@
mkdir_p = @mkdir_p@
+mydatadir = @mydatadir@
ncurses5_config = @ncurses5_config@
ncursesw5_config = @ncursesw5_config@
oldincludedir = @oldincludedir@
udevrulesdir = @udevrulesdir@
xmlto = @xmlto@
noinst_HEADERS = version.h gettext.h gettext_curses.h
-INCLUDES = -I$(top_srcdir)/include
+AM_CPPFLAGS = -I$(top_srcdir)/include
all: aconfig.h
$(MAKE) $(AM_MAKEFLAGS) all-am
.SUFFIXES:
-$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps)
@for dep in $?; do \
case '$(am__configure_deps)' in \
*$$dep*) \
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-$(top_srcdir)/configure: $(am__configure_deps)
+$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-$(ACLOCAL_M4): $(am__aclocal_m4_deps)
+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(am__aclocal_m4_deps):
stamp-h1: $(srcdir)/aconfig.h.in $(top_builddir)/config.status
@rm -f stamp-h1
cd $(top_builddir) && $(SHELL) ./config.status include/aconfig.h
-$(srcdir)/aconfig.h.in: $(am__configure_deps)
+$(srcdir)/aconfig.h.in: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
($(am__cd) $(top_srcdir) && $(AUTOHEADER))
rm -f stamp-h1
touch $@
&& $(am__cd) $(top_srcdir) \
&& gtags -i $(GTAGS_ARGS) "$$here"
+cscopelist: $(HEADERS) $(SOURCES) $(LISP)
+ list='$(SOURCES) $(HEADERS) $(LISP)'; \
+ case "$(srcdir)" in \
+ [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
+ *) sdir=$(subdir)/$(srcdir) ;; \
+ esac; \
+ for i in $$list; do \
+ if test -f "$$i"; then \
+ echo "$(subdir)/$$i"; \
+ else \
+ echo "$$sdir/$$i"; \
+ fi; \
+ done >> $(top_builddir)/cscope.files
+
distclean-tags:
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
.MAKE: all install-am install-strip
.PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \
- ctags distclean distclean-generic distclean-hdr distclean-tags \
- distdir dvi dvi-am html html-am info info-am install \
- install-am install-data install-data-am install-dvi \
+ cscopelist ctags distclean distclean-generic distclean-hdr \
+ distclean-tags distdir dvi dvi-am html html-am info info-am \
+ install install-am install-data install-data-am install-dvi \
install-dvi-am install-exec install-exec-am install-html \
install-html-am install-info install-info-am install-man \
install-pdf install-pdf-am install-ps install-ps-am \
version.h: stamp-vh
@:
-stamp-vh: $(top_builddir)/configure.in
+stamp-vh: $(top_builddir)/configure.ac
@echo "/*" > ver.tmp
@echo " * version.h" >> ver.tmp
@echo " */" >> ver.tmp
-/* include/aconfig.h.in. Generated from configure.in by autoheader. */
+/* include/aconfig.h.in. Generated from configure.ac by autoheader. */
/* directory containing alsa configuration */
#undef DATADIR
/* ALSA util version */
#undef VERSION
+/* Enable large inode numbers on Mac OS X 10.5. */
+#ifndef _DARWIN_USE_64_BIT_INODE
+# define _DARWIN_USE_64_BIT_INODE 1
+#endif
+
/* Number of bits in a file offset, on hosts where this is settable. */
#undef _FILE_OFFSET_BITS
#define SND_UTIL_MAJOR 1
#define SND_UTIL_MINOR 0
-#define SND_UTIL_SUBMINOR 26
+#define SND_UTIL_SUBMINOR 28
#define SND_UTIL_VERSION ((SND_UTIL_MAJOR<<16)|\
(SND_UTIL_MINOR<<8)|\
SND_UTIL_SUBMINOR)
-#define SND_UTIL_VERSION_STR "1.0.26"
+#define SND_UTIL_VERSION_STR "1.0.28"
#!/bin/sh
# install - install a program, script, or datafile
-scriptversion=2011-01-19.21; # UTC
+scriptversion=2011-11-20.07; # UTC
# This originates from X11R5 (mit/util/scripts/install.sh), which was
# later released in X11R6 (xc/config/util/install.sh) with the
# FSF changes to this file are in the public domain.
#
# Calling this script install-sh is preferred over install.sh, to prevent
-# `make' implicit rules from creating a file called install from it
+# 'make' implicit rules from creating a file called install from it
# when there is no Makefile.
#
# This script is compatible with the BSD install script, but was written
-s) stripcmd=$stripprog;;
-t) dst_arg=$2
- # Protect names problematic for `test' and other utilities.
+ # Protect names problematic for 'test' and other utilities.
case $dst_arg in
-* | [=\(\)!]) dst_arg=./$dst_arg;;
esac
fi
shift # arg
dst_arg=$arg
- # Protect names problematic for `test' and other utilities.
+ # Protect names problematic for 'test' and other utilities.
case $dst_arg in
-* | [=\(\)!]) dst_arg=./$dst_arg;;
esac
echo "$0: no input file specified." >&2
exit 1
fi
- # It's OK to call `install-sh -d' without argument.
+ # It's OK to call 'install-sh -d' without argument.
# This can happen when creating conditional directories.
exit 0
fi
for src
do
- # Protect names problematic for `test' and other utilities.
+ # Protect names problematic for 'test' and other utilities.
case $src in
-* | [=\(\)!]) src=./$src;;
esac
if test -z "$dir_arg" || {
# Check for POSIX incompatibilities with -m.
# HP-UX 11.23 and IRIX 6.5 mkdir -m -p sets group- or
- # other-writeable bit of parent directory when it shouldn't.
+ # other-writable bit of parent directory when it shouldn't.
# FreeBSD 6.1 mkdir -m -p sets mode of existing directory.
ls_ld_tmpdir=`ls -ld "$tmpdir"`
case $ls_ld_tmpdir in
-# Makefile.in generated by automake 1.11.3 from Makefile.am.
+# Makefile.in generated by automake 1.12.2 from Makefile.am.
# @configure_input@
-# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software
-# Foundation, Inc.
+# Copyright (C) 1994-2012 Free Software Foundation, Inc.
+
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
@SET_MAKE@
VPATH = @srcdir@
+am__make_dryrun = \
+ { \
+ am__dry=no; \
+ case $$MAKEFLAGS in \
+ *\\[\ \ ]*) \
+ echo 'am--echo: ; @echo "AM" OK' | $(MAKE) -f - 2>/dev/null \
+ | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
+ *) \
+ for am__flg in $$MAKEFLAGS; do \
+ case $$am__flg in \
+ *=*|--*) ;; \
+ *n*) am__dry=yes; break;; \
+ esac; \
+ done;; \
+ esac; \
+ test $$am__dry = yes; \
+ }
pkgdatadir = $(datadir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
$(top_srcdir)/m4/lib-link.m4 $(top_srcdir)/m4/lib-prefix.m4 \
$(top_srcdir)/m4/nls.m4 $(top_srcdir)/m4/po.m4 \
$(top_srcdir)/m4/progtest.m4 $(top_srcdir)/acinclude.m4 \
- $(top_srcdir)/configure.in
+ $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(install_sh) -d
CONFIG_CLEAN_VPATH_FILES =
SOURCES =
DIST_SOURCES =
+am__can_run_installinfo = \
+ case $$AM_UPDATE_INFO_DIR in \
+ n|no|NO) false;; \
+ *) (install-info --version) >/dev/null 2>&1;; \
+ esac
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
ACLOCAL = @ACLOCAL@
+ALSACTL_DAEMONSWITCH = @ALSACTL_DAEMONSWITCH@
+ALSACTL_PIDFILE_DIR = @ALSACTL_PIDFILE_DIR@
ALSA_CFLAGS = @ALSA_CFLAGS@
ALSA_LIBS = @ALSA_LIBS@
AMTAR = @AMTAR@
+ASOUND_LOCK_DIR = @ASOUND_LOCK_DIR@
ASOUND_STATE_DIR = @ASOUND_STATE_DIR@
AUTOCONF = @AUTOCONF@
AUTOHEADER = @AUTOHEADER@
LTLIBICONV = @LTLIBICONV@
LTLIBINTL = @LTLIBINTL@
LTLIBOBJS = @LTLIBOBJS@
+MAINT = @MAINT@
MAKEINFO = @MAKEINFO@
MKDIR_P = @MKDIR_P@
MSGFMT = @MSGFMT@
localstatedir = @localstatedir@
mandir = @mandir@
mkdir_p = @mkdir_p@
+mydatadir = @mydatadir@
ncurses5_config = @ncurses5_config@
ncursesw5_config = @ncursesw5_config@
oldincludedir = @oldincludedir@
all: all-am
.SUFFIXES:
-$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps)
@for dep in $?; do \
case '$(am__configure_deps)' in \
*$$dep*) \
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-$(top_srcdir)/configure: $(am__configure_deps)
+$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-$(ACLOCAL_M4): $(am__aclocal_m4_deps)
+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(am__aclocal_m4_deps):
tags: TAGS
ctags: CTAGS
CTAGS:
+cscope cscopelist:
+
distdir: $(DISTFILES)
@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
#! /bin/sh
# Common stub for a few missing GNU programs while installing.
-scriptversion=2012-01-06.13; # UTC
+scriptversion=2012-01-06.18; # UTC
-# Copyright (C) 1996, 1997, 1999, 2000, 2002, 2003, 2004, 2005, 2006,
-# 2008, 2009, 2010, 2011, 2012 Free Software Foundation, Inc.
+# Copyright (C) 1996-2012 Free Software Foundation, Inc.
# Originally by Fran,cois Pinard <pinard@iro.umontreal.ca>, 1996.
# This program is free software; you can redistribute it and/or modify
# the same distribution terms that you use for the rest of that program.
if test $# -eq 0; then
- echo 1>&2 "Try \`$0 --help' for more information"
+ echo 1>&2 "Try '$0 --help' for more information"
exit 1
fi
sed_output='s/.* --output[ =]\([^ ]*\).*/\1/p'
sed_minuso='s/.* -o \([^ ]*\).*/\1/p'
-# In the cases where this matters, `missing' is being run in the
+# In the cases where this matters, 'missing' is being run in the
# srcdir already.
if test -f configure.ac; then
configure_ac=configure.ac
echo "\
$0 [OPTION]... PROGRAM [ARGUMENT]...
-Handle \`PROGRAM [ARGUMENT]...' for when PROGRAM is missing, or return an
+Handle 'PROGRAM [ARGUMENT]...' for when PROGRAM is missing, or return an
error status if there is no known handling for PROGRAM.
Options:
--run try to run the given command, and emulate it if it fails
Supported PROGRAM values:
- aclocal touch file \`aclocal.m4'
- autoconf touch file \`configure'
- autoheader touch file \`config.h.in'
+ aclocal touch file 'aclocal.m4'
+ autoconf touch file 'configure'
+ autoheader touch file 'config.h.in'
autom4te touch the output file, or create a stub one
- automake touch all \`Makefile.in' files
- bison create \`y.tab.[ch]', if possible, from existing .[ch]
- flex create \`lex.yy.c', if possible, from existing .c
+ automake touch all 'Makefile.in' files
+ bison create 'y.tab.[ch]', if possible, from existing .[ch]
+ flex create 'lex.yy.c', if possible, from existing .c
help2man touch the output file
- lex create \`lex.yy.c', if possible, from existing .c
+ lex create 'lex.yy.c', if possible, from existing .c
makeinfo touch the output file
- yacc create \`y.tab.[ch]', if possible, from existing .[ch]
+ yacc create 'y.tab.[ch]', if possible, from existing .[ch]
-Version suffixes to PROGRAM as well as the prefixes \`gnu-', \`gnu', and
-\`g' are ignored when checking the name.
+Version suffixes to PROGRAM as well as the prefixes 'gnu-', 'gnu', and
+'g' are ignored when checking the name.
Send bug reports to <bug-automake@gnu.org>."
exit $?
;;
-*)
- echo 1>&2 "$0: Unknown \`$1' option"
- echo 1>&2 "Try \`$0 --help' for more information"
+ echo 1>&2 "$0: Unknown '$1' option"
+ echo 1>&2 "Try '$0 --help' for more information"
exit 1
;;
exit 1
elif test "x$2" = "x--version" || test "x$2" = "x--help"; then
# Could not run --version or --help. This is probably someone
- # running `$TOOL --version' or `$TOOL --help' to check whether
+ # running '$TOOL --version' or '$TOOL --help' to check whether
# $TOOL exists and not knowing $TOOL uses missing.
exit 1
fi
case $program in
aclocal*)
echo 1>&2 "\
-WARNING: \`$1' is $msg. You should only need it if
- you modified \`acinclude.m4' or \`${configure_ac}'. You might want
- to install the \`Automake' and \`Perl' packages. Grab them from
+WARNING: '$1' is $msg. You should only need it if
+ you modified 'acinclude.m4' or '${configure_ac}'. You might want
+ to install the Automake and Perl packages. Grab them from
any GNU archive site."
touch aclocal.m4
;;
autoconf*)
echo 1>&2 "\
-WARNING: \`$1' is $msg. You should only need it if
- you modified \`${configure_ac}'. You might want to install the
- \`Autoconf' and \`GNU m4' packages. Grab them from any GNU
+WARNING: '$1' is $msg. You should only need it if
+ you modified '${configure_ac}'. You might want to install the
+ Autoconf and GNU m4 packages. Grab them from any GNU
archive site."
touch configure
;;
autoheader*)
echo 1>&2 "\
-WARNING: \`$1' is $msg. You should only need it if
- you modified \`acconfig.h' or \`${configure_ac}'. You might want
- to install the \`Autoconf' and \`GNU m4' packages. Grab them
+WARNING: '$1' is $msg. You should only need it if
+ you modified 'acconfig.h' or '${configure_ac}'. You might want
+ to install the Autoconf and GNU m4 packages. Grab them
from any GNU archive site."
files=`sed -n 's/^[ ]*A[CM]_CONFIG_HEADER(\([^)]*\)).*/\1/p' ${configure_ac}`
test -z "$files" && files="config.h"
automake*)
echo 1>&2 "\
-WARNING: \`$1' is $msg. You should only need it if
- you modified \`Makefile.am', \`acinclude.m4' or \`${configure_ac}'.
- You might want to install the \`Automake' and \`Perl' packages.
+WARNING: '$1' is $msg. You should only need it if
+ you modified 'Makefile.am', 'acinclude.m4' or '${configure_ac}'.
+ You might want to install the Automake and Perl packages.
Grab them from any GNU archive site."
find . -type f -name Makefile.am -print |
sed 's/\.am$/.in/' |
autom4te*)
echo 1>&2 "\
-WARNING: \`$1' is needed, but is $msg.
+WARNING: '$1' is needed, but is $msg.
You might have modified some files without having the
proper tools for further handling them.
- You can get \`$1' as part of \`Autoconf' from any GNU
+ You can get '$1' as part of Autoconf from any GNU
archive site."
file=`echo "$*" | sed -n "$sed_output"`
bison*|yacc*)
echo 1>&2 "\
-WARNING: \`$1' $msg. You should only need it if
- you modified a \`.y' file. You may need the \`Bison' package
+WARNING: '$1' $msg. You should only need it if
+ you modified a '.y' file. You may need the Bison package
in order for those modifications to take effect. You can get
- \`Bison' from any GNU archive site."
+ Bison from any GNU archive site."
rm -f y.tab.c y.tab.h
if test $# -ne 1; then
eval LASTARG=\${$#}
lex*|flex*)
echo 1>&2 "\
-WARNING: \`$1' is $msg. You should only need it if
- you modified a \`.l' file. You may need the \`Flex' package
+WARNING: '$1' is $msg. You should only need it if
+ you modified a '.l' file. You may need the Flex package
in order for those modifications to take effect. You can get
- \`Flex' from any GNU archive site."
+ Flex from any GNU archive site."
rm -f lex.yy.c
if test $# -ne 1; then
eval LASTARG=\${$#}
help2man*)
echo 1>&2 "\
-WARNING: \`$1' is $msg. You should only need it if
+WARNING: '$1' is $msg. You should only need it if
you modified a dependency of a manual page. You may need the
- \`Help2man' package in order for those modifications to take
- effect. You can get \`Help2man' from any GNU archive site."
+ Help2man package in order for those modifications to take
+ effect. You can get Help2man from any GNU archive site."
file=`echo "$*" | sed -n "$sed_output"`
test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"`
makeinfo*)
echo 1>&2 "\
-WARNING: \`$1' is $msg. You should only need it if
- you modified a \`.texi' or \`.texinfo' file, or any other file
+WARNING: '$1' is $msg. You should only need it if
+ you modified a '.texi' or '.texinfo' file, or any other file
indirectly affecting the aspect of the manual. The spurious
- call might also be the consequence of using a buggy \`make' (AIX,
- DU, IRIX). You might want to install the \`Texinfo' package or
- the \`GNU make' package. Grab either from any GNU archive site."
+ call might also be the consequence of using a buggy 'make' (AIX,
+ DU, IRIX). You might want to install the Texinfo package or
+ the GNU make package. Grab either from any GNU archive site."
# The file to touch is that specified with -o ...
file=`echo "$*" | sed -n "$sed_output"`
test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"`
*)
echo 1>&2 "\
-WARNING: \`$1' is needed, and is $msg.
+WARNING: '$1' is needed, and is $msg.
You might have modified some files without having the
- proper tools for further handling them. Check the \`README' file,
+ proper tools for further handling them. Check the 'README' file,
it often tells you about the needed prerequisites for installing
this package. You may also peek at any GNU archive site, in case
- some other package would contain this missing \`$1' program."
+ some other package would contain this missing '$1' program."
exit 1
;;
esac
# This is the list of locale categories, beyond LC_MESSAGES, for which the
# message catalogs shall be used. It is usually empty.
EXTRA_LOCALE_CATEGORIES =
+
+# This tells whether the $(DOMAIN).pot file contains messages with an 'msgctxt'
+# context. Possible values are "yes" and "no". Set this to yes if the
+# package uses functions taking also a message context, like pgettext(), or
+# if in $(XGETTEXT_OPTIONS) you define keywords with a context argument.
+USE_MSGCTXT = no
+
+# These options get passed to msgmerge.
+# Useful options are in particular:
+# --previous to keep previous msgids of translated messages,
+# --quiet to reduce the verbosity.
+MSGMERGE_OPTIONS =
#, fuzzy
msgid ""
msgstr ""
-"Project-Id-Version: alsa-utils 1.0.26\n"
+"Project-Id-Version: alsa-utils 1.0.28\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2012-09-06 10:45+0200\n"
+"POT-Creation-Date: 2014-06-13 19:24+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
msgid "Rear"
msgstr ""
-#: alsamixer/mixer_display.c:598 speaker-test/speaker-test.c:108
+#: alsamixer/mixer_display.c:598 speaker-test/speaker-test.c:124
msgid "Center"
msgstr ""
msgid "Side"
msgstr ""
-#: alsamixer/mixer_widget.c:95 alsamixer/mixer_widget.c:100
+#: alsamixer/mixer_widget.c:91 alsamixer/mixer_widget.c:96
msgid "cannot open mixer"
msgstr ""
-#: alsamixer/mixer_widget.c:106 alsamixer/mixer_widget.c:183
+#: alsamixer/mixer_widget.c:102 alsamixer/mixer_widget.c:179
msgid "cannot load mixer controls"
msgstr ""
-#: alsamixer/mixer_widget.c:173
+#: alsamixer/mixer_widget.c:169
#, c-format
msgid "Cannot open mixer device '%s'."
msgstr ""
-#: alsamixer/mixer_widget.c:194
+#: alsamixer/mixer_widget.c:190
msgid "Esc Exit"
msgstr ""
-#: alsamixer/mixer_widget.c:195
+#: alsamixer/mixer_widget.c:191
msgid "F1 ? H Help"
msgstr ""
-#: alsamixer/mixer_widget.c:196
+#: alsamixer/mixer_widget.c:192
msgid "F2 / System information"
msgstr ""
-#: alsamixer/mixer_widget.c:197
+#: alsamixer/mixer_widget.c:193
msgid "F3 Show playback controls"
msgstr ""
-#: alsamixer/mixer_widget.c:198
+#: alsamixer/mixer_widget.c:194
msgid "F4 Show capture controls"
msgstr ""
-#: alsamixer/mixer_widget.c:199
+#: alsamixer/mixer_widget.c:195
msgid "F5 Show all controls"
msgstr ""
-#: alsamixer/mixer_widget.c:200
+#: alsamixer/mixer_widget.c:196
msgid "Tab Toggle view mode (F3/F4/F5)"
msgstr ""
-#: alsamixer/mixer_widget.c:201
+#: alsamixer/mixer_widget.c:197
msgid "F6 S Select sound card"
msgstr ""
-#: alsamixer/mixer_widget.c:202
+#: alsamixer/mixer_widget.c:198
msgid "L Redraw screen"
msgstr ""
-#: alsamixer/mixer_widget.c:204
+#: alsamixer/mixer_widget.c:200
msgid "Left Move to the previous control"
msgstr ""
-#: alsamixer/mixer_widget.c:205
+#: alsamixer/mixer_widget.c:201
msgid "Right Move to the next control"
msgstr ""
-#: alsamixer/mixer_widget.c:207
+#: alsamixer/mixer_widget.c:203
msgid "Up/Down Change volume"
msgstr ""
-#: alsamixer/mixer_widget.c:208
+#: alsamixer/mixer_widget.c:204
msgid "+ - Change volume"
msgstr ""
-#: alsamixer/mixer_widget.c:209
+#: alsamixer/mixer_widget.c:205
msgid "Page Up/Dn Change volume in big steps"
msgstr ""
-#: alsamixer/mixer_widget.c:210
+#: alsamixer/mixer_widget.c:206
msgid "End Set volume to 0%"
msgstr ""
-#: alsamixer/mixer_widget.c:211
+#: alsamixer/mixer_widget.c:207
msgid "0-9 Set volume to 0%-90%"
msgstr ""
-#: alsamixer/mixer_widget.c:212
+#: alsamixer/mixer_widget.c:208
msgid "Q W E Increase left/both/right volumes"
msgstr ""
#. TRANSLATORS: or Y instead of Z
-#: alsamixer/mixer_widget.c:214
+#: alsamixer/mixer_widget.c:210
msgid "Z X C Decrease left/both/right volumes"
msgstr ""
-#: alsamixer/mixer_widget.c:215
+#: alsamixer/mixer_widget.c:211
msgid "B Balance left and right volumes"
msgstr ""
-#: alsamixer/mixer_widget.c:217
+#: alsamixer/mixer_widget.c:213
msgid "M Toggle mute"
msgstr ""
#. TRANSLATORS: or , .
-#: alsamixer/mixer_widget.c:219
+#: alsamixer/mixer_widget.c:215
msgid "< > Toggle left/right mute"
msgstr ""
-#: alsamixer/mixer_widget.c:221
+#: alsamixer/mixer_widget.c:217
msgid "Space Toggle capture"
msgstr ""
#. TRANSLATORS: or Insert Delete
-#: alsamixer/mixer_widget.c:223
+#: alsamixer/mixer_widget.c:219
msgid "; ' Toggle left/right capture"
msgstr ""
-#: alsamixer/mixer_widget.c:225
+#: alsamixer/mixer_widget.c:221
msgid "Authors:"
msgstr ""
-#: alsamixer/mixer_widget.c:226
+#: alsamixer/mixer_widget.c:222
msgid " Tim Janik"
msgstr ""
-#: alsamixer/mixer_widget.c:227
+#: alsamixer/mixer_widget.c:223
msgid " Jaroslav Kysela <perex@perex.cz>"
msgstr ""
-#: alsamixer/mixer_widget.c:228
+#: alsamixer/mixer_widget.c:224
msgid " Clemens Ladisch <clemens@ladisch.de>"
msgstr ""
-#: alsamixer/mixer_widget.c:230
+#: alsamixer/mixer_widget.c:226
msgid "Help"
msgstr ""
msgid "Cannot open file \"%s\"."
msgstr ""
-#: aplay/aplay.c:165
+#: aplay/aplay.c:175
msgid "raw data"
msgstr ""
-#: aplay/aplay.c:166
+#: aplay/aplay.c:176
msgid "VOC"
msgstr ""
-#: aplay/aplay.c:168
+#: aplay/aplay.c:178
msgid "WAVE"
msgstr ""
-#: aplay/aplay.c:169
+#: aplay/aplay.c:179
msgid "Sparc Audio"
msgstr ""
-#: aplay/aplay.c:190
+#: aplay/aplay.c:200
#, c-format
msgid ""
"Usage: %s [OPTION]... [FILE]...\n"
"-V, --vumeter=TYPE enable VU meter (TYPE: mono or stereo)\n"
"-I, --separate-channels one file for each channel\n"
"-i, --interactive allow interactive operation from stdin\n"
+"-m, --chmap=ch1,ch2,.. Give the channel map to override or follow\n"
" --disable-resample disable automatic rate resample\n"
" --disable-channels disable automatic channel conversions\n"
" --disable-format disable automatic format conversions\n"
" --fatal-errors treat all errors as fatal\n"
msgstr ""
-#: aplay/aplay.c:232 speaker-test/speaker-test.c:819
+#: aplay/aplay.c:244 speaker-test/speaker-test.c:1021
#, c-format
msgid "Recognized sample formats are:"
msgstr ""
-#: aplay/aplay.c:238
+#: aplay/aplay.c:250
#, c-format
msgid ""
"\n"
"Some of these may not be available on selected hardware\n"
msgstr ""
-#: aplay/aplay.c:239
+#: aplay/aplay.c:251
#, c-format
-msgid "The availabled format shortcuts are:\n"
+msgid "The available format shortcuts are:\n"
msgstr ""
-#: aplay/aplay.c:240
+#: aplay/aplay.c:252
#, c-format
msgid "-f cd (16 bit little endian, 44100, stereo)\n"
msgstr ""
-#: aplay/aplay.c:241
+#: aplay/aplay.c:253
#, c-format
msgid "-f cdr (16 bit big endian, 44100, stereo)\n"
msgstr ""
-#: aplay/aplay.c:242
+#: aplay/aplay.c:254
#, c-format
msgid "-f dat (16 bit little endian, 48000, stereo)\n"
msgstr ""
-#: aplay/aplay.c:256
+#: aplay/aplay.c:268
msgid "no soundcards found..."
msgstr ""
-#: aplay/aplay.c:259
+#: aplay/aplay.c:271
#, c-format
msgid "**** List of %s Hardware Devices ****\n"
msgstr ""
-#: aplay/aplay.c:288
+#: aplay/aplay.c:300
#, c-format
msgid "card %i: %s [%s], device %i: %s [%s]\n"
msgstr ""
-#: aplay/aplay.c:294
+#: aplay/aplay.c:306
#, c-format
msgid " Subdevices: %i/%i\n"
msgstr ""
-#: aplay/aplay.c:301
+#: aplay/aplay.c:313
#, c-format
msgid " Subdevice #%i: %s\n"
msgstr ""
-#: aplay/aplay.c:384
+#: aplay/aplay.c:394
#, c-format
msgid "Aborted by signal %s...\n"
msgstr ""
-#: aplay/aplay.c:500
+#: aplay/aplay.c:512
msgid "command should be named either arecord or aplay"
msgstr ""
-#: aplay/aplay.c:539
+#: aplay/aplay.c:556
#, c-format
msgid "unrecognized file format %s"
msgstr ""
-#: aplay/aplay.c:546
+#: aplay/aplay.c:563
#, c-format
msgid "value %i for channels is invalid"
msgstr ""
-#: aplay/aplay.c:565
+#: aplay/aplay.c:582
#, c-format
msgid "wrong extended format '%s'"
msgstr ""
-#: aplay/aplay.c:576
+#: aplay/aplay.c:593
#, c-format
msgid "bad speed value %i"
msgstr ""
-#: aplay/aplay.c:680
+#: aplay/aplay.c:700 speaker-test/speaker-test.c:665
+#, c-format
+msgid "Unable to parse channel map string: %s\n"
+msgstr ""
+
+#: aplay/aplay.c:706
#, c-format
msgid "Try `%s --help' for more information.\n"
msgstr ""
-#: aplay/aplay.c:696
+#: aplay/aplay.c:722
#, c-format
msgid "audio open error: %s"
msgstr ""
-#: aplay/aplay.c:701
+#: aplay/aplay.c:727
#, c-format
msgid "info error: %s"
msgstr ""
-#: aplay/aplay.c:708
+#: aplay/aplay.c:734
#, c-format
msgid "nonblock setting error: %s"
msgstr ""
-#: aplay/aplay.c:718 aplay/aplay.c:842 aplay/aplay.c:1217
+#: aplay/aplay.c:744 aplay/aplay.c:868 aplay/aplay.c:1158 aplay/aplay.c:1351
+#: aplay/aplay.c:1867 aplay/aplay.c:1897
msgid "not enough memory"
msgstr ""
-#: aplay/aplay.c:742
+#: aplay/aplay.c:768
#, c-format
msgid "Cannot create process ID file %s: %s"
msgstr ""
-#: aplay/aplay.c:832
+#: aplay/aplay.c:858
#, c-format
msgid "read error (called from line %i)"
msgstr ""
-#: aplay/aplay.c:890
+#: aplay/aplay.c:925
#, c-format
msgid "unknown length of 'fmt ' chunk (read %u, should be %u at least)"
msgstr ""
-#: aplay/aplay.c:900
+#: aplay/aplay.c:936
#, c-format
msgid ""
"unknown length of extensible 'fmt ' chunk (read %u, should be %u at least)"
msgstr ""
-#: aplay/aplay.c:905
+#: aplay/aplay.c:941
msgid "wrong format tag in extensible 'fmt ' chunk"
msgstr ""
-#: aplay/aplay.c:912
+#: aplay/aplay.c:948
#, c-format
msgid "can't play WAVE-file format 0x%04x which is not PCM or FLOAT encoded"
msgstr ""
-#: aplay/aplay.c:916
+#: aplay/aplay.c:953
#, c-format
msgid "can't play WAVE-files with %d tracks"
msgstr ""
-#: aplay/aplay.c:924 aplay/aplay.c:1024
+#: aplay/aplay.c:961 aplay/aplay.c:1087
#, c-format
msgid "Warning: format is changed to U8\n"
msgstr ""
-#: aplay/aplay.c:930
-#, c-format
-msgid "Warning: format is changed to S16_LE\n"
-msgstr ""
-
-#: aplay/aplay.c:938
+#: aplay/aplay.c:971 aplay/aplay.c:984 aplay/aplay.c:995
#, c-format
-msgid "Warning: format is changed to S24_3LE\n"
+msgid "Warning: format is changed to %s\n"
msgstr ""
-#: aplay/aplay.c:944
-#, c-format
-msgid "Warning: format is changed to S24_LE\n"
-msgstr ""
-
-#: aplay/aplay.c:948
+#: aplay/aplay.c:1000
#, c-format
msgid ""
" can't play WAVE-files with sample %d bits in %d bytes wide (%d channels)"
msgstr ""
-#: aplay/aplay.c:960
+#: aplay/aplay.c:1023
#, c-format
msgid " can't play WAVE-files with sample %d bits wide"
msgstr ""
-#: aplay/aplay.c:1018
+#: aplay/aplay.c:1081
#, c-format
msgid "Warning: format is changed to MU_LAW\n"
msgstr ""
-#: aplay/aplay.c:1030
+#: aplay/aplay.c:1093
#, c-format
msgid "Warning: format is changed to S16_BE\n"
msgstr ""
-#: aplay/aplay.c:1043 aplay/aplay.c:1980 aplay/aplay.c:1987 aplay/aplay.c:2510
-#: aplay/aplay.c:2522
+#: aplay/aplay.c:1106 aplay/aplay.c:2182 aplay/aplay.c:2189 aplay/aplay.c:2715
+#: aplay/aplay.c:2727
msgid "read error"
msgstr ""
-#: aplay/aplay.c:1073
+#: aplay/aplay.c:1136
+msgid "Channel numbers don't match between hw_params and channel map"
+msgstr ""
+
+#: aplay/aplay.c:1145
+#, c-format
+msgid "Warning: unable to get channel map\n"
+msgstr ""
+
+#: aplay/aplay.c:1178
+#, c-format
+msgid "Channel %d doesn't match with hw_parmas"
+msgstr ""
+
+#: aplay/aplay.c:1204
msgid "Broken configuration for this PCM: no configurations available"
msgstr ""
-#: aplay/aplay.c:1077
+#: aplay/aplay.c:1208
#, c-format
msgid "HW Params of device \"%s\":\n"
msgstr ""
-#: aplay/aplay.c:1097
+#: aplay/aplay.c:1228
msgid "Access type not available"
msgstr ""
-#: aplay/aplay.c:1102
+#: aplay/aplay.c:1233
msgid "Sample format non available"
msgstr ""
-#: aplay/aplay.c:1108
+#: aplay/aplay.c:1239
msgid "Channels count non available"
msgstr ""
-#: aplay/aplay.c:1123
+#: aplay/aplay.c:1254
#, c-format
msgid "Warning: rate is not accurate (requested = %iHz, got = %iHz)\n"
msgstr ""
-#: aplay/aplay.c:1129
+#: aplay/aplay.c:1260
#, c-format
msgid " please, try the plug plugin %s\n"
msgstr ""
-#: aplay/aplay.c:1166
+#: aplay/aplay.c:1297
msgid "Unable to install hw params:"
msgstr ""
-#: aplay/aplay.c:1173
+#: aplay/aplay.c:1304
#, c-format
msgid "Can't use period equal to buffer size (%lu == %lu)"
msgstr ""
-#: aplay/aplay.c:1204
+#: aplay/aplay.c:1335
msgid "unable to install sw params:"
msgstr ""
-#: aplay/aplay.c:1235
+#: aplay/aplay.c:1369
#, c-format
msgid "snd_pcm_mmap_begin problem: %s"
msgstr ""
-#: aplay/aplay.c:1260
+#: aplay/aplay.c:1398
#, c-format
msgid "stdin O_NONBLOCK flag setup failed\n"
msgstr ""
-#: aplay/aplay.c:1284
+#: aplay/aplay.c:1422
#, c-format
msgid "\rPAUSE command ignored (no hw support)\n"
msgstr ""
-#: aplay/aplay.c:1289
+#: aplay/aplay.c:1427
#, c-format
msgid "pause push error: %s"
msgstr ""
-#: aplay/aplay.c:1298
+#: aplay/aplay.c:1436
#, c-format
msgid "pause release error: %s"
msgstr ""
-#: aplay/aplay.c:1314
+#: aplay/aplay.c:1452
#, c-format
msgid ""
"\r=== PAUSE === "
msgstr ""
-#: aplay/aplay.c:1356
+#: aplay/aplay.c:1494
#, c-format
msgid "status error: %s"
msgstr ""
-#: aplay/aplay.c:1361
+#: aplay/aplay.c:1499
#, c-format
msgid "fatal %s: %s"
msgstr ""
-#: aplay/aplay.c:1362 aplay/aplay.c:1373 aplay/aplay.c:1376 aplay/aplay.c:1384
+#: aplay/aplay.c:1500 aplay/aplay.c:1511 aplay/aplay.c:1514 aplay/aplay.c:1522
msgid "underrun"
msgstr ""
-#: aplay/aplay.c:1362 aplay/aplay.c:1373 aplay/aplay.c:1384
+#: aplay/aplay.c:1500 aplay/aplay.c:1511 aplay/aplay.c:1522
msgid "overrun"
msgstr ""
-#: aplay/aplay.c:1372 aplay/aplay.c:1383
+#: aplay/aplay.c:1510 aplay/aplay.c:1521
#, c-format
msgid "%s!!! (at least %.3f ms long)\n"
msgstr ""
-#: aplay/aplay.c:1388
+#: aplay/aplay.c:1526
#, c-format
msgid "Status:\n"
msgstr ""
-#: aplay/aplay.c:1392
+#: aplay/aplay.c:1530
#, c-format
msgid "xrun: prepare error: %s"
msgstr ""
-#: aplay/aplay.c:1398
+#: aplay/aplay.c:1536
#, c-format
msgid "Status(DRAINING):\n"
msgstr ""
-#: aplay/aplay.c:1402
+#: aplay/aplay.c:1540
#, c-format
msgid "capture stream format change? attempting recover...\n"
msgstr ""
-#: aplay/aplay.c:1404
+#: aplay/aplay.c:1542
#, c-format
msgid "xrun(DRAINING): prepare error: %s"
msgstr ""
-#: aplay/aplay.c:1411
+#: aplay/aplay.c:1549
#, c-format
msgid "Status(R/W):\n"
msgstr ""
-#: aplay/aplay.c:1414
+#: aplay/aplay.c:1552
#, c-format
msgid "read/write error, state = %s"
msgstr ""
-#: aplay/aplay.c:1424
+#: aplay/aplay.c:1562
#, c-format
msgid "Suspended. Trying resume. "
msgstr ""
-#: aplay/aplay.c:1429
+#: aplay/aplay.c:1567
#, c-format
msgid "Failed. Restarting stream. "
msgstr ""
-#: aplay/aplay.c:1431
+#: aplay/aplay.c:1569
#, c-format
msgid "suspend: prepare error: %s"
msgstr ""
-#: aplay/aplay.c:1436
+#: aplay/aplay.c:1574
#, c-format
msgid "Done.\n"
msgstr ""
-#: aplay/aplay.c:1458
+#: aplay/aplay.c:1596
#, c-format
msgid " !clip "
msgstr ""
-#: aplay/aplay.c:1605
+#: aplay/aplay.c:1743
#, c-format
msgid "Unsupported bit size %d.\n"
msgstr ""
-#: aplay/aplay.c:1639
+#: aplay/aplay.c:1777
#, c-format
msgid "Max peak (%li samples): 0x%08x "
msgstr ""
-#: aplay/aplay.c:1673
+#: aplay/aplay.c:1811
#, c-format
msgid ""
"Suspicious buffer position (%li total): avail = %li, delay = %li, buffer = "
"%li\n"
msgstr ""
-#: aplay/aplay.c:1737
+#: aplay/aplay.c:1939
#, c-format
msgid "write error: %s"
msgstr ""
-#: aplay/aplay.c:1784
+#: aplay/aplay.c:1987
#, c-format
msgid "writev error: %s"
msgstr ""
-#: aplay/aplay.c:1828
+#: aplay/aplay.c:2031
#, c-format
msgid "read error: %s"
msgstr ""
-#: aplay/aplay.c:1872
+#: aplay/aplay.c:2075
#, c-format
msgid "readv error: %s"
msgstr ""
-#: aplay/aplay.c:1920
+#: aplay/aplay.c:2123
msgid "can't allocate buffer for silence"
msgstr ""
-#: aplay/aplay.c:1929 aplay/aplay.c:2155 aplay/aplay.c:2160 aplay/aplay.c:2207
-#: aplay/aplay.c:2216 aplay/aplay.c:2223 aplay/aplay.c:2233 aplay/aplay.c:2239
-#: aplay/aplay.c:2311 aplay/aplay.c:2341 aplay/aplay.c:2355
+#: aplay/aplay.c:2132 aplay/aplay.c:2360 aplay/aplay.c:2365 aplay/aplay.c:2412
+#: aplay/aplay.c:2421 aplay/aplay.c:2428 aplay/aplay.c:2438 aplay/aplay.c:2444
+#: aplay/aplay.c:2516 aplay/aplay.c:2546 aplay/aplay.c:2560
msgid "write error"
msgstr ""
-#: aplay/aplay.c:1942
+#: aplay/aplay.c:2145
#, c-format
msgid "voc_pcm_flush - silence error"
msgstr ""
-#: aplay/aplay.c:1945
+#: aplay/aplay.c:2148
msgid "voc_pcm_flush error"
msgstr ""
-#: aplay/aplay.c:1971
+#: aplay/aplay.c:2173
msgid "malloc error"
msgstr ""
-#: aplay/aplay.c:1975
+#: aplay/aplay.c:2177
#, c-format
msgid "Playing Creative Labs Channel file '%s'...\n"
msgstr ""
-#: aplay/aplay.c:2043 aplay/aplay.c:2135
+#: aplay/aplay.c:2245 aplay/aplay.c:2340
msgid "can't play packed .voc files"
msgstr ""
-#: aplay/aplay.c:2095
+#: aplay/aplay.c:2300
#, c-format
msgid "can't play loops; %s isn't seekable\n"
msgstr ""
-#: aplay/aplay.c:2144
+#: aplay/aplay.c:2349
#, c-format
msgid "unknown blocktype %d. terminate."
msgstr ""
-#: aplay/aplay.c:2275
+#: aplay/aplay.c:2480
#, c-format
msgid "Wave doesn't support %s format..."
msgstr ""
-#: aplay/aplay.c:2335
+#: aplay/aplay.c:2540
#, c-format
msgid "Sparc Audio doesn't support %s format..."
msgstr ""
-#: aplay/aplay.c:2416
+#: aplay/aplay.c:2621
msgid "Playing"
msgstr ""
-#: aplay/aplay.c:2416
+#: aplay/aplay.c:2621
msgid "Recording"
msgstr ""
-#: aplay/aplay.c:2420
+#: aplay/aplay.c:2625
#, c-format
msgid "Rate %d Hz, "
msgstr ""
-#: aplay/aplay.c:2422
+#: aplay/aplay.c:2627
#, c-format
msgid "Mono"
msgstr ""
-#: aplay/aplay.c:2424
+#: aplay/aplay.c:2629
#, c-format
msgid "Stereo"
msgstr ""
-#: aplay/aplay.c:2426
+#: aplay/aplay.c:2631
#, c-format
msgid "Channels %i"
msgstr ""
-#: aplay/aplay.c:2937 aplay/aplay.c:2990
+#: aplay/aplay.c:3145 aplay/aplay.c:3198
#, c-format
msgid "You need to specify %d files"
msgstr ""
msgid "kernel"
msgstr ""
-#: seq/aconnect/aconnect.c:307
+#: seq/aconnect/aconnect.c:308
#, c-format
msgid "can't open sequencer\n"
msgstr ""
-#: seq/aconnect/aconnect.c:335
+#: seq/aconnect/aconnect.c:336
#, c-format
msgid "can't get client id\n"
msgstr ""
-#: seq/aconnect/aconnect.c:342
+#: seq/aconnect/aconnect.c:343
#, c-format
msgid "can't set client info\n"
msgstr ""
-#: seq/aconnect/aconnect.c:349
+#: seq/aconnect/aconnect.c:350
#, c-format
msgid "invalid sender address %s\n"
msgstr ""
-#: seq/aconnect/aconnect.c:354 seq/aseqnet/aseqnet.c:290
+#: seq/aconnect/aconnect.c:355 seq/aseqnet/aseqnet.c:290
#, c-format
msgid "invalid destination address %s\n"
msgstr ""
-#: seq/aconnect/aconnect.c:368
+#: seq/aconnect/aconnect.c:369
#, c-format
msgid "No subscription is found\n"
msgstr ""
-#: seq/aconnect/aconnect.c:373
+#: seq/aconnect/aconnect.c:374
#, c-format
msgid "Disconnection failed (%s)\n"
msgstr ""
-#: seq/aconnect/aconnect.c:379
+#: seq/aconnect/aconnect.c:380
#, c-format
msgid "Connection is already subscribed\n"
msgstr ""
-#: seq/aconnect/aconnect.c:384
+#: seq/aconnect/aconnect.c:385
#, c-format
msgid "Connection failed (%s)\n"
msgstr ""
#: seq/aseqnet/aseqnet.c:170
#, c-format
-msgid " -p,--port # : sepcify TCP port (digit or service name)\n"
+msgid " -p,--port # : specify TCP port (digit or service name)\n"
msgstr ""
#: seq/aseqnet/aseqnet.c:171
msgid "disconnected\n"
msgstr ""
-#: speaker-test/speaker-test.c:104
+#: speaker-test/speaker-test.c:120
msgid "Front Left"
msgstr ""
-#: speaker-test/speaker-test.c:105
+#: speaker-test/speaker-test.c:121
msgid "Front Right"
msgstr ""
-#: speaker-test/speaker-test.c:106
+#: speaker-test/speaker-test.c:122
msgid "Rear Left"
msgstr ""
-#: speaker-test/speaker-test.c:107
+#: speaker-test/speaker-test.c:123
msgid "Rear Right"
msgstr ""
-#: speaker-test/speaker-test.c:109
+#: speaker-test/speaker-test.c:125
msgid "LFE"
msgstr ""
-#: speaker-test/speaker-test.c:110
+#: speaker-test/speaker-test.c:126
msgid "Side Left"
msgstr ""
-#: speaker-test/speaker-test.c:111
+#: speaker-test/speaker-test.c:127
msgid "Side Right"
msgstr ""
-#: speaker-test/speaker-test.c:112
+#: speaker-test/speaker-test.c:128
msgid "Channel 9"
msgstr ""
-#: speaker-test/speaker-test.c:113
+#: speaker-test/speaker-test.c:129
msgid "Channel 10"
msgstr ""
-#: speaker-test/speaker-test.c:114
+#: speaker-test/speaker-test.c:130
msgid "Channel 11"
msgstr ""
-#: speaker-test/speaker-test.c:115
+#: speaker-test/speaker-test.c:131
msgid "Channel 12"
msgstr ""
-#: speaker-test/speaker-test.c:116
+#: speaker-test/speaker-test.c:132
msgid "Channel 13"
msgstr ""
-#: speaker-test/speaker-test.c:117
+#: speaker-test/speaker-test.c:133
msgid "Channel 14"
msgstr ""
-#: speaker-test/speaker-test.c:118
+#: speaker-test/speaker-test.c:134
msgid "Channel 15"
msgstr ""
-#: speaker-test/speaker-test.c:119
+#: speaker-test/speaker-test.c:135
msgid "Channel 16"
msgstr ""
-#: speaker-test/speaker-test.c:383
+#: speaker-test/speaker-test.c:518
#, c-format
msgid "Broken configuration for playback: no configurations available: %s\n"
msgstr ""
-#: speaker-test/speaker-test.c:390
+#: speaker-test/speaker-test.c:525
#, c-format
msgid "Access type not available for playback: %s\n"
msgstr ""
-#: speaker-test/speaker-test.c:397
+#: speaker-test/speaker-test.c:532
#, c-format
msgid "Sample format not available for playback: %s\n"
msgstr ""
-#: speaker-test/speaker-test.c:404
+#: speaker-test/speaker-test.c:539
#, c-format
msgid "Channels count (%i) not available for playbacks: %s\n"
msgstr ""
-#: speaker-test/speaker-test.c:412
+#: speaker-test/speaker-test.c:547
#, c-format
msgid "Rate %iHz not available for playback: %s\n"
msgstr ""
-#: speaker-test/speaker-test.c:417
+#: speaker-test/speaker-test.c:552
#, c-format
msgid "Rate doesn't match (requested %iHz, get %iHz, err %d)\n"
msgstr ""
-#: speaker-test/speaker-test.c:421
+#: speaker-test/speaker-test.c:556
#, c-format
msgid "Rate set to %iHz (requested %iHz)\n"
msgstr ""
-#: speaker-test/speaker-test.c:427
+#: speaker-test/speaker-test.c:562
#, c-format
msgid "Buffer size range from %lu to %lu\n"
msgstr ""
-#: speaker-test/speaker-test.c:428
+#: speaker-test/speaker-test.c:563
#, c-format
msgid "Period size range from %lu to %lu\n"
msgstr ""
-#: speaker-test/speaker-test.c:430
+#: speaker-test/speaker-test.c:565
#, c-format
msgid "Requested period time %u us\n"
msgstr ""
-#: speaker-test/speaker-test.c:433
+#: speaker-test/speaker-test.c:568
#, c-format
msgid "Unable to set period time %u us for playback: %s\n"
msgstr ""
-#: speaker-test/speaker-test.c:439
+#: speaker-test/speaker-test.c:574
#, c-format
msgid "Requested buffer time %u us\n"
msgstr ""
-#: speaker-test/speaker-test.c:442
+#: speaker-test/speaker-test.c:577
#, c-format
msgid "Unable to set buffer time %u us for playback: %s\n"
msgstr ""
-#: speaker-test/speaker-test.c:451
+#: speaker-test/speaker-test.c:586
#, c-format
msgid "Using max buffer size %lu\n"
msgstr ""
-#: speaker-test/speaker-test.c:454
+#: speaker-test/speaker-test.c:589
#, c-format
msgid "Unable to set buffer size %lu for playback: %s\n"
msgstr ""
-#: speaker-test/speaker-test.c:460
+#: speaker-test/speaker-test.c:595
#, c-format
msgid "Periods = %u\n"
msgstr ""
-#: speaker-test/speaker-test.c:463
+#: speaker-test/speaker-test.c:598
#, c-format
msgid "Unable to set nperiods %u for playback: %s\n"
msgstr ""
-#: speaker-test/speaker-test.c:472
+#: speaker-test/speaker-test.c:607
#, c-format
msgid "Unable to set hw params for playback: %s\n"
msgstr ""
-#: speaker-test/speaker-test.c:478
+#: speaker-test/speaker-test.c:613
#, c-format
msgid "was set period_size = %lu\n"
msgstr ""
-#: speaker-test/speaker-test.c:479
+#: speaker-test/speaker-test.c:614
#, c-format
msgid "was set buffer_size = %lu\n"
msgstr ""
-#: speaker-test/speaker-test.c:481
+#: speaker-test/speaker-test.c:616
#, c-format
msgid "buffer to small, could not use\n"
msgstr ""
-#: speaker-test/speaker-test.c:494
+#: speaker-test/speaker-test.c:629
#, c-format
msgid "Unable to determine current swparams for playback: %s\n"
msgstr ""
-#: speaker-test/speaker-test.c:501
+#: speaker-test/speaker-test.c:636
#, c-format
msgid "Unable to set start threshold mode for playback: %s\n"
msgstr ""
-#: speaker-test/speaker-test.c:508
+#: speaker-test/speaker-test.c:643
#, c-format
msgid "Unable to set avail min for playback: %s\n"
msgstr ""
-#: speaker-test/speaker-test.c:515
+#: speaker-test/speaker-test.c:650
#, c-format
msgid "Unable to set sw params for playback: %s\n"
msgstr ""
-#: speaker-test/speaker-test.c:530
+#: speaker-test/speaker-test.c:670
+#, c-format
+msgid "Unable to set channel map: %s\n"
+msgstr ""
+
+#: speaker-test/speaker-test.c:695
#, c-format
msgid "Can't recovery from underrun, prepare failed: %s\n"
msgstr ""
-#: speaker-test/speaker-test.c:541
+#: speaker-test/speaker-test.c:706
#, c-format
msgid "Can't recovery from suspend, prepare failed: %s\n"
msgstr ""
-#: speaker-test/speaker-test.c:605 speaker-test/speaker-test.c:1025
+#: speaker-test/speaker-test.c:770 speaker-test/speaker-test.c:1261
#, c-format
msgid "No enough memory\n"
msgstr ""
-#: speaker-test/speaker-test.c:610
+#: speaker-test/speaker-test.c:775
#, c-format
msgid "Cannot open WAV file %s\n"
msgstr ""
-#: speaker-test/speaker-test.c:614 speaker-test/speaker-test.c:643
+#: speaker-test/speaker-test.c:779 speaker-test/speaker-test.c:808
#, c-format
msgid "Invalid WAV file %s\n"
msgstr ""
-#: speaker-test/speaker-test.c:619
+#: speaker-test/speaker-test.c:784
#, c-format
msgid "Not a WAV file: %s\n"
msgstr ""
-#: speaker-test/speaker-test.c:623
+#: speaker-test/speaker-test.c:788
#, c-format
msgid "Unsupported WAV format %d for %s\n"
msgstr ""
-#: speaker-test/speaker-test.c:628
+#: speaker-test/speaker-test.c:793
#, c-format
msgid "%s is not a mono stream (%d channels)\n"
msgstr ""
-#: speaker-test/speaker-test.c:633
+#: speaker-test/speaker-test.c:798
#, c-format
msgid "Sample rate doesn't match (%d) for %s\n"
msgstr ""
-#: speaker-test/speaker-test.c:638
+#: speaker-test/speaker-test.c:803
#, c-format
msgid "Unsupported sample format bits %d for %s\n"
msgstr ""
-#: speaker-test/speaker-test.c:688
+#: speaker-test/speaker-test.c:864
#, c-format
msgid "Undefined channel %d\n"
msgstr ""
-#: speaker-test/speaker-test.c:739
+#: speaker-test/speaker-test.c:915
#, c-format
msgid "Write error: %d,%s\n"
msgstr ""
-#: speaker-test/speaker-test.c:741
+#: speaker-test/speaker-test.c:917
#, c-format
msgid "xrun_recovery failed: %d,%s\n"
msgstr ""
-#: speaker-test/speaker-test.c:803
+#: speaker-test/speaker-test.c:1003
#, c-format
msgid ""
"Usage: speaker-test [OPTION]... \n"
"-s,--speaker\tsingle speaker test. Values 1=Left, 2=right, etc\n"
"-w,--wavfile\tUse the given WAV file as a test sound\n"
"-W,--wavdir\tSpecify the directory containing WAV files\n"
+"-m,--chmap\tSpecify the channel map to override\n"
+"-X,--force-frequency\tforce frequencies outside the 30-8000hz range\n"
"\n"
msgstr ""
-#: speaker-test/speaker-test.c:921
+#: speaker-test/speaker-test.c:1132
#, c-format
msgid "Invalid number of periods %d\n"
msgstr ""
-#: speaker-test/speaker-test.c:937 speaker-test/speaker-test.c:941
+#: speaker-test/speaker-test.c:1148 speaker-test/speaker-test.c:1152
#, c-format
msgid "Invalid test type %s\n"
msgstr ""
-#: speaker-test/speaker-test.c:953
+#: speaker-test/speaker-test.c:1164
#, c-format
msgid "Invalid parameter for -s option.\n"
msgstr ""
-#: speaker-test/speaker-test.c:967
+#: speaker-test/speaker-test.c:1186
#, c-format
msgid "Unknown option '%c'\n"
msgstr ""
-#: speaker-test/speaker-test.c:981
+#: speaker-test/speaker-test.c:1207
#, c-format
msgid "Playback device is %s\n"
msgstr ""
-#: speaker-test/speaker-test.c:982
+#: speaker-test/speaker-test.c:1208
#, c-format
msgid "Stream parameters are %iHz, %s, %i channels\n"
msgstr ""
-#: speaker-test/speaker-test.c:985
+#: speaker-test/speaker-test.c:1211
#, c-format
msgid "Using 16 octaves of pink noise\n"
msgstr ""
-#: speaker-test/speaker-test.c:988
+#: speaker-test/speaker-test.c:1214
#, c-format
msgid "Sine wave rate is %.4fHz\n"
msgstr ""
-#: speaker-test/speaker-test.c:991
+#: speaker-test/speaker-test.c:1217
#, c-format
msgid "WAV file(s)\n"
msgstr ""
-#: speaker-test/speaker-test.c:997
+#: speaker-test/speaker-test.c:1227
#, c-format
msgid "Playback open error: %d,%s\n"
msgstr ""
-#: speaker-test/speaker-test.c:1002
+#: speaker-test/speaker-test.c:1233
#, c-format
msgid "Setting of hwparams failed: %s\n"
msgstr ""
-#: speaker-test/speaker-test.c:1007
+#: speaker-test/speaker-test.c:1237
#, c-format
msgid "Setting of swparams failed: %s\n"
msgstr ""
-#: speaker-test/speaker-test.c:1056 speaker-test/speaker-test.c:1078
+#: speaker-test/speaker-test.c:1284 speaker-test/speaker-test.c:1306
#, c-format
msgid "Transfer failed: %s\n"
msgstr ""
-#: speaker-test/speaker-test.c:1066
+#: speaker-test/speaker-test.c:1292
#, c-format
msgid "Time per period = %lf\n"
msgstr ""
msgstr ""
"Project-Id-Version: alsa-utils 1.0.23\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2012-09-06 10:45+0200\n"
+"POT-Creation-Date: 2014-06-13 19:24+0200\n"
"PO-Revision-Date: 2010-11-09 21:12+0100\n"
"Last-Translator: Clemens Ladisch <clemens@ladisch.de>\n"
"Language-Team: German\n"
msgid "Rear"
msgstr "Hinten"
-#: alsamixer/mixer_display.c:598 speaker-test/speaker-test.c:108
+#: alsamixer/mixer_display.c:598 speaker-test/speaker-test.c:124
msgid "Center"
msgstr "Mitte"
msgid "Side"
msgstr "Seiten"
-#: alsamixer/mixer_widget.c:95 alsamixer/mixer_widget.c:100
+#: alsamixer/mixer_widget.c:91 alsamixer/mixer_widget.c:96
msgid "cannot open mixer"
msgstr "Fehler beim Öffen des Mixer-Gerätes"
-#: alsamixer/mixer_widget.c:106 alsamixer/mixer_widget.c:183
+#: alsamixer/mixer_widget.c:102 alsamixer/mixer_widget.c:179
msgid "cannot load mixer controls"
msgstr "Fehler beim Laden der Mixer-Regler"
-#: alsamixer/mixer_widget.c:173
+#: alsamixer/mixer_widget.c:169
#, c-format
msgid "Cannot open mixer device '%s'."
msgstr "Fehler beim Öffnen des Mixer-Gerätes '%s'."
-#: alsamixer/mixer_widget.c:194
+#: alsamixer/mixer_widget.c:190
msgid "Esc Exit"
msgstr "Esc Beenden"
-#: alsamixer/mixer_widget.c:195
+#: alsamixer/mixer_widget.c:191
msgid "F1 ? H Help"
msgstr "F1 ? H Hilfe"
-#: alsamixer/mixer_widget.c:196
+#: alsamixer/mixer_widget.c:192
msgid "F2 / System information"
msgstr "F2 / System-Informationen"
-#: alsamixer/mixer_widget.c:197
+#: alsamixer/mixer_widget.c:193
msgid "F3 Show playback controls"
msgstr "F3 Ansicht Wiedergabe-Regler"
-#: alsamixer/mixer_widget.c:198
+#: alsamixer/mixer_widget.c:194
msgid "F4 Show capture controls"
msgstr "F4 Ansicht Aufnahme-Regler"
-#: alsamixer/mixer_widget.c:199
+#: alsamixer/mixer_widget.c:195
msgid "F5 Show all controls"
msgstr "F5 Ansicht alle Regler"
-#: alsamixer/mixer_widget.c:200
+#: alsamixer/mixer_widget.c:196
msgid "Tab Toggle view mode (F3/F4/F5)"
msgstr "Tab Ansichts-Modus umschalten (F3/F4/F5)"
-#: alsamixer/mixer_widget.c:201
+#: alsamixer/mixer_widget.c:197
msgid "F6 S Select sound card"
msgstr "F6 S Soundkarte auswählen"
-#: alsamixer/mixer_widget.c:202
+#: alsamixer/mixer_widget.c:198
msgid "L Redraw screen"
msgstr "L Bildschirm neu darstellen"
-#: alsamixer/mixer_widget.c:204
+#: alsamixer/mixer_widget.c:200
msgid "Left Move to the previous control"
msgstr "Links gehe zum vorherigen Regler"
-#: alsamixer/mixer_widget.c:205
+#: alsamixer/mixer_widget.c:201
msgid "Right Move to the next control"
msgstr "Rechts gehe zum nächsten Regler"
-#: alsamixer/mixer_widget.c:207
+#: alsamixer/mixer_widget.c:203
msgid "Up/Down Change volume"
msgstr "Oben/Unten Lautstärke ändern"
-#: alsamixer/mixer_widget.c:208
+#: alsamixer/mixer_widget.c:204
msgid "+ - Change volume"
msgstr "+ - Lautstärke ändern"
-#: alsamixer/mixer_widget.c:209
+#: alsamixer/mixer_widget.c:205
msgid "Page Up/Dn Change volume in big steps"
msgstr "Bild ^/v Lautstärke in großen Schritten ändern"
-#: alsamixer/mixer_widget.c:210
+#: alsamixer/mixer_widget.c:206
msgid "End Set volume to 0%"
msgstr "Ende Lautstärke auf 0% setzen"
-#: alsamixer/mixer_widget.c:211
+#: alsamixer/mixer_widget.c:207
msgid "0-9 Set volume to 0%-90%"
msgstr "0-9 Lautstärke auf 0%-90% setzen"
-#: alsamixer/mixer_widget.c:212
+#: alsamixer/mixer_widget.c:208
msgid "Q W E Increase left/both/right volumes"
msgstr "Q W E linke/beide/rechte Lautstärke erhöhen"
#. TRANSLATORS: or Y instead of Z
-#: alsamixer/mixer_widget.c:214
+#: alsamixer/mixer_widget.c:210
msgid "Z X C Decrease left/both/right volumes"
msgstr "Y X C linke/beide/rechte Lautstärke verringern"
-#: alsamixer/mixer_widget.c:215
+#: alsamixer/mixer_widget.c:211
msgid "B Balance left and right volumes"
msgstr "B linke und rechte Lautstärke angleichen"
-#: alsamixer/mixer_widget.c:217
+#: alsamixer/mixer_widget.c:213
msgid "M Toggle mute"
msgstr "M stumm umschalten"
#. TRANSLATORS: or , .
-#: alsamixer/mixer_widget.c:219
+#: alsamixer/mixer_widget.c:215
msgid "< > Toggle left/right mute"
msgstr ", . stumm links/rechts umschalten"
-#: alsamixer/mixer_widget.c:221
+#: alsamixer/mixer_widget.c:217
msgid "Space Toggle capture"
msgstr "Leertaste Aufnahme umschalten"
#. TRANSLATORS: or Insert Delete
-#: alsamixer/mixer_widget.c:223
+#: alsamixer/mixer_widget.c:219
msgid "; ' Toggle left/right capture"
msgstr "Einfg Entf Aufnahme links/rechts umschalten"
-#: alsamixer/mixer_widget.c:225
+#: alsamixer/mixer_widget.c:221
msgid "Authors:"
msgstr "Autoren:"
-#: alsamixer/mixer_widget.c:226
+#: alsamixer/mixer_widget.c:222
msgid " Tim Janik"
msgstr " Tim Janik"
-#: alsamixer/mixer_widget.c:227
+#: alsamixer/mixer_widget.c:223
msgid " Jaroslav Kysela <perex@perex.cz>"
msgstr " Jaroslav Kysela <perex@perex.cz>"
-#: alsamixer/mixer_widget.c:228
+#: alsamixer/mixer_widget.c:224
msgid " Clemens Ladisch <clemens@ladisch.de>"
msgstr " Clemens Ladisch <clemens@ladisch.de>"
-#: alsamixer/mixer_widget.c:230
+#: alsamixer/mixer_widget.c:226
msgid "Help"
msgstr "Hilfe"
msgid "Cannot open file \"%s\"."
msgstr "Fehler beim Öffnen der Datei \"%s\"."
-#: aplay/aplay.c:165
+#: aplay/aplay.c:175
msgid "raw data"
msgstr "Rohdaten"
-#: aplay/aplay.c:166
+#: aplay/aplay.c:176
msgid "VOC"
msgstr "VOC"
-#: aplay/aplay.c:168
+#: aplay/aplay.c:178
msgid "WAVE"
msgstr "WAVE"
-#: aplay/aplay.c:169
+#: aplay/aplay.c:179
msgid "Sparc Audio"
msgstr "Sparc-Audio"
-#: aplay/aplay.c:190
+#: aplay/aplay.c:200
#, fuzzy, c-format
msgid ""
"Usage: %s [OPTION]... [FILE]...\n"
"-V, --vumeter=TYPE enable VU meter (TYPE: mono or stereo)\n"
"-I, --separate-channels one file for each channel\n"
"-i, --interactive allow interactive operation from stdin\n"
+"-m, --chmap=ch1,ch2,.. Give the channel map to override or follow\n"
" --disable-resample disable automatic rate resample\n"
" --disable-channels disable automatic channel conversions\n"
" --disable-format disable automatic format conversions\n"
" --process-id-file=# schreibe Prozess-ID in diese Datei\n"
" --use-strftime formatiere Dateiname mit strftime; %%v=Dateinummer\n"
-#: aplay/aplay.c:232 speaker-test/speaker-test.c:819
+#: aplay/aplay.c:244 speaker-test/speaker-test.c:1021
#, c-format
msgid "Recognized sample formats are:"
msgstr "Unterstützte Sample-Formate:"
-#: aplay/aplay.c:238
+#: aplay/aplay.c:250
#, c-format
msgid ""
"\n"
"\n"
"Nicht alle davon sind auf jeder Hardware verfügbar.\n"
-#: aplay/aplay.c:239
-#, c-format
-msgid "The availabled format shortcuts are:\n"
+#: aplay/aplay.c:251
+#, fuzzy, c-format
+msgid "The available format shortcuts are:\n"
msgstr "Unterstütze Format-Abkürzungen:\n"
-#: aplay/aplay.c:240
+#: aplay/aplay.c:252
#, c-format
msgid "-f cd (16 bit little endian, 44100, stereo)\n"
msgstr "-f cd (16 Bits, Little Endian, 44100 Hz, stereo)\n"
-#: aplay/aplay.c:241
+#: aplay/aplay.c:253
#, c-format
msgid "-f cdr (16 bit big endian, 44100, stereo)\n"
msgstr "-f cdr (16 Bits, Big Endian, 44100 Hz, stereo)\n"
-#: aplay/aplay.c:242
+#: aplay/aplay.c:254
#, c-format
msgid "-f dat (16 bit little endian, 48000, stereo)\n"
msgstr "-f dat (16 Bits, Little Endian, 48000 Hz, stereo)\n"
-#: aplay/aplay.c:256
+#: aplay/aplay.c:268
msgid "no soundcards found..."
msgstr "keine Soundkarten gefunden ..."
-#: aplay/aplay.c:259
+#: aplay/aplay.c:271
#, c-format
msgid "**** List of %s Hardware Devices ****\n"
msgstr "**** Liste der Hardware-Geräte (%s) ****\n"
-#: aplay/aplay.c:288
+#: aplay/aplay.c:300
#, c-format
msgid "card %i: %s [%s], device %i: %s [%s]\n"
msgstr "Karte %i: %s [%s], Gerät %i: %s [%s]\n"
-#: aplay/aplay.c:294
+#: aplay/aplay.c:306
#, c-format
msgid " Subdevices: %i/%i\n"
msgstr " Sub-Geräte: %i/%i\n"
-#: aplay/aplay.c:301
+#: aplay/aplay.c:313
#, c-format
msgid " Subdevice #%i: %s\n"
msgstr " Sub-Gerät #%i: %s\n"
-#: aplay/aplay.c:384
+#: aplay/aplay.c:394
#, c-format
msgid "Aborted by signal %s...\n"
msgstr "Abbruch durch Signal %s ...\n"
-#: aplay/aplay.c:500
+#: aplay/aplay.c:512
msgid "command should be named either arecord or aplay"
msgstr "Befehl sollte arecord oder aplay sein"
-#: aplay/aplay.c:539
+#: aplay/aplay.c:556
#, c-format
msgid "unrecognized file format %s"
msgstr "unbekanntes Dateiformat %s"
-#: aplay/aplay.c:546
+#: aplay/aplay.c:563
#, c-format
msgid "value %i for channels is invalid"
msgstr "Kanalanzahl %i ist ungültig"
-#: aplay/aplay.c:565
+#: aplay/aplay.c:582
#, c-format
msgid "wrong extended format '%s'"
msgstr "erweitertes Format '%s' ist ungültig"
-#: aplay/aplay.c:576
+#: aplay/aplay.c:593
#, c-format
msgid "bad speed value %i"
msgstr "ungültige Rate %i"
-#: aplay/aplay.c:680
+#: aplay/aplay.c:700 speaker-test/speaker-test.c:665
+#, fuzzy, c-format
+msgid "Unable to parse channel map string: %s\n"
+msgstr "Fehler beim Setzen des Mindest-verfügbar-Wertes: %s\n"
+
+#: aplay/aplay.c:706
#, c-format
msgid "Try `%s --help' for more information.\n"
msgstr "Siehe `%s --help' für mehr Informationen.\n"
-#: aplay/aplay.c:696
+#: aplay/aplay.c:722
#, c-format
msgid "audio open error: %s"
msgstr "Fehler beim Öffnen des Gerätes: %s"
-#: aplay/aplay.c:701
+#: aplay/aplay.c:727
#, c-format
msgid "info error: %s"
msgstr "Fehler beim Lesen der Geräteinformationen: %s"
-#: aplay/aplay.c:708
+#: aplay/aplay.c:734
#, c-format
msgid "nonblock setting error: %s"
msgstr "Fehler beim Setzen des nonblock-Modus: %s"
-#: aplay/aplay.c:718 aplay/aplay.c:842 aplay/aplay.c:1217
+#: aplay/aplay.c:744 aplay/aplay.c:868 aplay/aplay.c:1158 aplay/aplay.c:1351
+#: aplay/aplay.c:1867 aplay/aplay.c:1897
msgid "not enough memory"
msgstr "nicht genug Speicher"
-#: aplay/aplay.c:742
+#: aplay/aplay.c:768
#, c-format
msgid "Cannot create process ID file %s: %s"
msgstr "Fehler beim Schreiben der Prozess-ID-Datei %s: %s"
-#: aplay/aplay.c:832
+#: aplay/aplay.c:858
#, c-format
msgid "read error (called from line %i)"
msgstr "Lesefehler (aufgerufen von Zeile %i)"
-#: aplay/aplay.c:890
+#: aplay/aplay.c:925
#, c-format
msgid "unknown length of 'fmt ' chunk (read %u, should be %u at least)"
msgstr ""
"unbekannte Länge des 'fmt '-Blocks (gelesen: %u, sollte mindestens %u sein)"
-#: aplay/aplay.c:900
+#: aplay/aplay.c:936
#, c-format
msgid ""
"unknown length of extensible 'fmt ' chunk (read %u, should be %u at least)"
"unbekannte Länge des erweiterten 'fmt '-Blocks (gelesen: %u, sollte "
"mindestens %u sein)"
-#: aplay/aplay.c:905
+#: aplay/aplay.c:941
msgid "wrong format tag in extensible 'fmt ' chunk"
msgstr "ungültiger Format-Wert im erweiterten 'fmt '-Block"
-#: aplay/aplay.c:912
+#: aplay/aplay.c:948
#, c-format
msgid "can't play WAVE-file format 0x%04x which is not PCM or FLOAT encoded"
msgstr ""
"kann WAVE-Datei-Format 0x%04x nicht abspielen; ist weder PCM noch FLOAT"
-#: aplay/aplay.c:916
+#: aplay/aplay.c:953
#, c-format
msgid "can't play WAVE-files with %d tracks"
msgstr "kann WAVE-Datei mit %d Kanälen nicht abspielen"
-#: aplay/aplay.c:924 aplay/aplay.c:1024
+#: aplay/aplay.c:961 aplay/aplay.c:1087
#, c-format
msgid "Warning: format is changed to U8\n"
msgstr "Warnung: benutztes Format ist U8\n"
-#: aplay/aplay.c:930
-#, c-format
-msgid "Warning: format is changed to S16_LE\n"
-msgstr "Warnung: benutztes Format ist S16_LE\n"
-
-#: aplay/aplay.c:938
-#, c-format
-msgid "Warning: format is changed to S24_3LE\n"
-msgstr "Warnung: benutztes Format ist S24_3LE\n"
-
-#: aplay/aplay.c:944
-#, c-format
-msgid "Warning: format is changed to S24_LE\n"
-msgstr "Warnung: benutztes Format ist S24_LE\n"
+#: aplay/aplay.c:971 aplay/aplay.c:984 aplay/aplay.c:995
+#, fuzzy, c-format
+msgid "Warning: format is changed to %s\n"
+msgstr "Warnung: benutztes Format ist U8\n"
-#: aplay/aplay.c:948
+#: aplay/aplay.c:1000
#, c-format
msgid ""
" can't play WAVE-files with sample %d bits in %d bytes wide (%d channels)"
msgstr ""
"kann WAVE-Datei mit %d-Bit-Samples in %d Bytes (%d Kanäle) nicht abspielen"
-#: aplay/aplay.c:960
+#: aplay/aplay.c:1023
#, c-format
msgid " can't play WAVE-files with sample %d bits wide"
msgstr "kann WAVE-Datei mit %d-Bit-Samples nicht abspielen"
-#: aplay/aplay.c:1018
+#: aplay/aplay.c:1081
#, c-format
msgid "Warning: format is changed to MU_LAW\n"
msgstr "Warnung: benutztes Format ist MU_LAW\n"
-#: aplay/aplay.c:1030
+#: aplay/aplay.c:1093
#, c-format
msgid "Warning: format is changed to S16_BE\n"
msgstr "Warnung: benutztes Format ist S16_BE\n"
-#: aplay/aplay.c:1043 aplay/aplay.c:1980 aplay/aplay.c:1987 aplay/aplay.c:2510
-#: aplay/aplay.c:2522
+#: aplay/aplay.c:1106 aplay/aplay.c:2182 aplay/aplay.c:2189 aplay/aplay.c:2715
+#: aplay/aplay.c:2727
msgid "read error"
msgstr "Lesefehler"
-#: aplay/aplay.c:1073
+#: aplay/aplay.c:1136
+msgid "Channel numbers don't match between hw_params and channel map"
+msgstr ""
+
+#: aplay/aplay.c:1145
+#, c-format
+msgid "Warning: unable to get channel map\n"
+msgstr ""
+
+#: aplay/aplay.c:1178
+#, c-format
+msgid "Channel %d doesn't match with hw_parmas"
+msgstr ""
+
+#: aplay/aplay.c:1204
msgid "Broken configuration for this PCM: no configurations available"
msgstr ""
"ungültige Konfiguration für dieses Gerät: keine unterstützte Konfiguration"
-#: aplay/aplay.c:1077
+#: aplay/aplay.c:1208
#, c-format
msgid "HW Params of device \"%s\":\n"
msgstr ""
-#: aplay/aplay.c:1097
+#: aplay/aplay.c:1228
msgid "Access type not available"
msgstr "Zugriffs-Modus nicht unterstützt"
-#: aplay/aplay.c:1102
+#: aplay/aplay.c:1233
msgid "Sample format non available"
msgstr "Sample-Format nicht unterstützt"
-#: aplay/aplay.c:1108
+#: aplay/aplay.c:1239
msgid "Channels count non available"
msgstr "Kanalanzahl nicht unterstützt"
-#: aplay/aplay.c:1123
+#: aplay/aplay.c:1254
#, c-format
msgid "Warning: rate is not accurate (requested = %iHz, got = %iHz)\n"
msgstr ""
"Warnung: Rate ist nicht exakt (angefordert: %i Hz, unterstützt: %i Hz)\n"
-#: aplay/aplay.c:1129
+#: aplay/aplay.c:1260
#, c-format
msgid " please, try the plug plugin %s\n"
msgstr " probieren Sie bitte das plug-Plugin: %s\n"
-#: aplay/aplay.c:1166
+#: aplay/aplay.c:1297
msgid "Unable to install hw params:"
msgstr "Fehler beim Setzen der Hardware-Parameter:"
-#: aplay/aplay.c:1173
+#: aplay/aplay.c:1304
#, c-format
msgid "Can't use period equal to buffer size (%lu == %lu)"
msgstr "Periode gleich der Puffer-Größe wird nicht unterstützt (%lu == %lu)"
-#: aplay/aplay.c:1204
+#: aplay/aplay.c:1335
msgid "unable to install sw params:"
msgstr "Fehler beim Setzen der Software-Parameter:"
-#: aplay/aplay.c:1235
+#: aplay/aplay.c:1369
#, c-format
msgid "snd_pcm_mmap_begin problem: %s"
msgstr "Fehler bei snd_pcm_mmap_begin: %s"
-#: aplay/aplay.c:1260
+#: aplay/aplay.c:1398
#, c-format
msgid "stdin O_NONBLOCK flag setup failed\n"
msgstr "Fehler beim Setzen von O_NONBLOCK in stdin\n"
-#: aplay/aplay.c:1284
+#: aplay/aplay.c:1422
#, c-format
msgid "\rPAUSE command ignored (no hw support)\n"
msgstr "\rPause-Kommando ignoriert (keine HW-Unterstützung)\n"
-#: aplay/aplay.c:1289
+#: aplay/aplay.c:1427
#, c-format
msgid "pause push error: %s"
msgstr "Fehler beim Pausieren: %s"
-#: aplay/aplay.c:1298
+#: aplay/aplay.c:1436
#, c-format
msgid "pause release error: %s"
msgstr "Fehler beim Beenden der Pause: %s"
-#: aplay/aplay.c:1314
+#: aplay/aplay.c:1452
#, c-format
msgid ""
"\r=== PAUSE === "
msgstr ""
"\r=== PAUSE === "
-#: aplay/aplay.c:1356
+#: aplay/aplay.c:1494
#, c-format
msgid "status error: %s"
msgstr "Status-Fehler: %s"
-#: aplay/aplay.c:1361
+#: aplay/aplay.c:1499
#, fuzzy, c-format
msgid "fatal %s: %s"
msgstr "%s: %s\n"
-#: aplay/aplay.c:1362 aplay/aplay.c:1373 aplay/aplay.c:1376 aplay/aplay.c:1384
+#: aplay/aplay.c:1500 aplay/aplay.c:1511 aplay/aplay.c:1514 aplay/aplay.c:1522
msgid "underrun"
msgstr "Unterlauf"
-#: aplay/aplay.c:1362 aplay/aplay.c:1373 aplay/aplay.c:1384
+#: aplay/aplay.c:1500 aplay/aplay.c:1511 aplay/aplay.c:1522
msgid "overrun"
msgstr "Überlauf"
-#: aplay/aplay.c:1372 aplay/aplay.c:1383
+#: aplay/aplay.c:1510 aplay/aplay.c:1521
#, c-format
msgid "%s!!! (at least %.3f ms long)\n"
msgstr "%s!!! (mindestens %.3f ms)\n"
-#: aplay/aplay.c:1388
+#: aplay/aplay.c:1526
#, c-format
msgid "Status:\n"
msgstr "Status:\n"
-#: aplay/aplay.c:1392
+#: aplay/aplay.c:1530
#, c-format
msgid "xrun: prepare error: %s"
msgstr "Unter-/Überlauf: Fehler beim Re-Initialisieren des Gerätes: %s"
-#: aplay/aplay.c:1398
+#: aplay/aplay.c:1536
#, c-format
msgid "Status(DRAINING):\n"
msgstr "Status (DRAINING):\n"
-#: aplay/aplay.c:1402
+#: aplay/aplay.c:1540
#, c-format
msgid "capture stream format change? attempting recover...\n"
msgstr "Format-Wechsel der Aufnahme-Daten? Versuche Wiederherstellung ...\n"
-#: aplay/aplay.c:1404
+#: aplay/aplay.c:1542
#, c-format
msgid "xrun(DRAINING): prepare error: %s"
msgstr "XRUN (DRAINING): Fehler beim Re-Initialisieren des Gerätes: %s"
-#: aplay/aplay.c:1411
+#: aplay/aplay.c:1549
#, c-format
msgid "Status(R/W):\n"
msgstr "Status (R/W):\n"
-#: aplay/aplay.c:1414
+#: aplay/aplay.c:1552
#, c-format
msgid "read/write error, state = %s"
msgstr "Lese-/Schreibfehler, Status = %s"
-#: aplay/aplay.c:1424
+#: aplay/aplay.c:1562
#, c-format
msgid "Suspended. Trying resume. "
msgstr "Ruhezustand. Versuche, aufzuwecken. "
-#: aplay/aplay.c:1429
+#: aplay/aplay.c:1567
#, c-format
msgid "Failed. Restarting stream. "
msgstr "Fehlgeschlagen. Re-Initialisierung. "
-#: aplay/aplay.c:1431
+#: aplay/aplay.c:1569
#, c-format
msgid "suspend: prepare error: %s"
msgstr "Ruhezustand: Fehler beim Re-Initialisieren: %s"
-#: aplay/aplay.c:1436
+#: aplay/aplay.c:1574
#, c-format
msgid "Done.\n"
msgstr "Fertig.\n"
-#: aplay/aplay.c:1458
+#: aplay/aplay.c:1596
#, c-format
msgid " !clip "
msgstr " !clip "
-#: aplay/aplay.c:1605
+#: aplay/aplay.c:1743
#, c-format
msgid "Unsupported bit size %d.\n"
msgstr "%d-Bit-Samples werden nicht unterstützt.\n"
-#: aplay/aplay.c:1639
+#: aplay/aplay.c:1777
#, c-format
msgid "Max peak (%li samples): 0x%08x "
msgstr "Höchstwert (%li Samples): 0x%08x "
-#: aplay/aplay.c:1673
+#: aplay/aplay.c:1811
#, c-format
msgid ""
"Suspicious buffer position (%li total): avail = %li, delay = %li, buffer = "
"verdächtige Puffer-Position (total %li): avail = %li, delay = %li, buffer = "
"%li\n"
-#: aplay/aplay.c:1737
+#: aplay/aplay.c:1939
#, c-format
msgid "write error: %s"
msgstr "Schreibfehler: %s"
-#: aplay/aplay.c:1784
+#: aplay/aplay.c:1987
#, c-format
msgid "writev error: %s"
msgstr "Vektor-Schreib-Fehler: %s"
-#: aplay/aplay.c:1828
+#: aplay/aplay.c:2031
#, c-format
msgid "read error: %s"
msgstr "Lesefehler: %s"
-#: aplay/aplay.c:1872
+#: aplay/aplay.c:2075
#, c-format
msgid "readv error: %s"
msgstr "Vektor-Lese-Fehler: %s"
-#: aplay/aplay.c:1920
+#: aplay/aplay.c:2123
msgid "can't allocate buffer for silence"
msgstr "nicht genug Speicher für Stille-Block"
-#: aplay/aplay.c:1929 aplay/aplay.c:2155 aplay/aplay.c:2160 aplay/aplay.c:2207
-#: aplay/aplay.c:2216 aplay/aplay.c:2223 aplay/aplay.c:2233 aplay/aplay.c:2239
-#: aplay/aplay.c:2311 aplay/aplay.c:2341 aplay/aplay.c:2355
+#: aplay/aplay.c:2132 aplay/aplay.c:2360 aplay/aplay.c:2365 aplay/aplay.c:2412
+#: aplay/aplay.c:2421 aplay/aplay.c:2428 aplay/aplay.c:2438 aplay/aplay.c:2444
+#: aplay/aplay.c:2516 aplay/aplay.c:2546 aplay/aplay.c:2560
msgid "write error"
msgstr "Schreibfehler"
-#: aplay/aplay.c:1942
+#: aplay/aplay.c:2145
#, c-format
msgid "voc_pcm_flush - silence error"
msgstr "voc_pcm_flush - Fehler in set_silence"
-#: aplay/aplay.c:1945
+#: aplay/aplay.c:2148
msgid "voc_pcm_flush error"
msgstr "Schreibfehler"
-#: aplay/aplay.c:1971
+#: aplay/aplay.c:2173
msgid "malloc error"
msgstr "nicht genug Speicher"
-#: aplay/aplay.c:1975
+#: aplay/aplay.c:2177
#, c-format
msgid "Playing Creative Labs Channel file '%s'...\n"
msgstr "Spiele Creative Labs Channel-Datei '%s'...\n"
-#: aplay/aplay.c:2043 aplay/aplay.c:2135
+#: aplay/aplay.c:2245 aplay/aplay.c:2340
msgid "can't play packed .voc files"
msgstr "kann komprimierte .voc-Dateien nicht abspielen"
-#: aplay/aplay.c:2095
+#: aplay/aplay.c:2300
#, c-format
msgid "can't play loops; %s isn't seekable\n"
msgstr ""
"kann Schleife nicht abspielen; Dateiposition in %s ist nicht änderbar\n"
-#: aplay/aplay.c:2144
+#: aplay/aplay.c:2349
#, c-format
msgid "unknown blocktype %d. terminate."
msgstr "Unbekannter Block-Typ %d. Abbruch."
-#: aplay/aplay.c:2275
+#: aplay/aplay.c:2480
#, c-format
msgid "Wave doesn't support %s format..."
msgstr "Format %s wird in WAVE nicht unterstützt ..."
-#: aplay/aplay.c:2335
+#: aplay/aplay.c:2540
#, c-format
msgid "Sparc Audio doesn't support %s format..."
msgstr "Format %s wird in Sparc-Audio nicht unterstützt ..."
-#: aplay/aplay.c:2416
+#: aplay/aplay.c:2621
msgid "Playing"
msgstr "Wiedergabe:"
-#: aplay/aplay.c:2416
+#: aplay/aplay.c:2621
msgid "Recording"
msgstr "Aufnahme:"
-#: aplay/aplay.c:2420
+#: aplay/aplay.c:2625
#, c-format
msgid "Rate %d Hz, "
msgstr "Rate: %d Hz, "
-#: aplay/aplay.c:2422
+#: aplay/aplay.c:2627
#, c-format
msgid "Mono"
msgstr "mono"
-#: aplay/aplay.c:2424
+#: aplay/aplay.c:2629
#, c-format
msgid "Stereo"
msgstr "stereo"
-#: aplay/aplay.c:2426
+#: aplay/aplay.c:2631
#, c-format
msgid "Channels %i"
msgstr "%i Kanäle"
-#: aplay/aplay.c:2937 aplay/aplay.c:2990
+#: aplay/aplay.c:3145 aplay/aplay.c:3198
#, c-format
msgid "You need to specify %d files"
msgstr "Es werden %d Dateien benötigt."
msgid "kernel"
msgstr "Kernel"
-#: seq/aconnect/aconnect.c:307
+#: seq/aconnect/aconnect.c:308
#, c-format
msgid "can't open sequencer\n"
msgstr "Fehler beim Öffnen des Sequenzers\n"
-#: seq/aconnect/aconnect.c:335
+#: seq/aconnect/aconnect.c:336
#, c-format
msgid "can't get client id\n"
msgstr "Fehler beim Lesen der Client-ID\n"
-#: seq/aconnect/aconnect.c:342
+#: seq/aconnect/aconnect.c:343
#, c-format
msgid "can't set client info\n"
msgstr "Fehler beim Setzen des Client-Namens\n"
-#: seq/aconnect/aconnect.c:349
+#: seq/aconnect/aconnect.c:350
#, c-format
msgid "invalid sender address %s\n"
msgstr "ungültige Sender-Adresse %s\n"
-#: seq/aconnect/aconnect.c:354 seq/aseqnet/aseqnet.c:290
+#: seq/aconnect/aconnect.c:355 seq/aseqnet/aseqnet.c:290
#, c-format
msgid "invalid destination address %s\n"
msgstr "ungültige Ziel-Adresse %s\n"
-#: seq/aconnect/aconnect.c:368
+#: seq/aconnect/aconnect.c:369
#, c-format
msgid "No subscription is found\n"
msgstr "keine Verbindung gefunden\n"
-#: seq/aconnect/aconnect.c:373
+#: seq/aconnect/aconnect.c:374
#, c-format
msgid "Disconnection failed (%s)\n"
msgstr "Verbindungs-Trennung fehlgeschlagen (%s)\n"
-#: seq/aconnect/aconnect.c:379
+#: seq/aconnect/aconnect.c:380
#, c-format
msgid "Connection is already subscribed\n"
msgstr "Verbindung ist bereits vorhanden\n"
-#: seq/aconnect/aconnect.c:384
+#: seq/aconnect/aconnect.c:385
#, c-format
msgid "Connection failed (%s)\n"
msgstr "Verbindung fehlgeschlagen (%s)\n"
msgstr "Optionen:\n"
#: seq/aseqnet/aseqnet.c:170
-#, c-format
-msgid " -p,--port # : sepcify TCP port (digit or service name)\n"
+#, fuzzy, c-format
+msgid " -p,--port # : specify TCP port (digit or service name)\n"
msgstr " -p,--port # : TCP-Port (Zahl oder Service-Name)\n"
#: seq/aseqnet/aseqnet.c:171
msgid "disconnected\n"
msgstr "Verbindung getrennt\n"
-#: speaker-test/speaker-test.c:104
+#: speaker-test/speaker-test.c:120
msgid "Front Left"
msgstr "Vorne links"
-#: speaker-test/speaker-test.c:105
+#: speaker-test/speaker-test.c:121
msgid "Front Right"
msgstr "Vorne rechts"
-#: speaker-test/speaker-test.c:106
+#: speaker-test/speaker-test.c:122
msgid "Rear Left"
msgstr "Hinten links"
-#: speaker-test/speaker-test.c:107
+#: speaker-test/speaker-test.c:123
msgid "Rear Right"
msgstr "Hinten rechts"
-#: speaker-test/speaker-test.c:109
+#: speaker-test/speaker-test.c:125
msgid "LFE"
msgstr "Bass"
-#: speaker-test/speaker-test.c:110
+#: speaker-test/speaker-test.c:126
msgid "Side Left"
msgstr "Seitlich links"
-#: speaker-test/speaker-test.c:111
+#: speaker-test/speaker-test.c:127
msgid "Side Right"
msgstr "Seitlich rechts"
-#: speaker-test/speaker-test.c:112
+#: speaker-test/speaker-test.c:128
msgid "Channel 9"
msgstr "Kanal 9"
-#: speaker-test/speaker-test.c:113
+#: speaker-test/speaker-test.c:129
msgid "Channel 10"
msgstr "Kanal 10"
-#: speaker-test/speaker-test.c:114
+#: speaker-test/speaker-test.c:130
msgid "Channel 11"
msgstr "Kanal 11"
-#: speaker-test/speaker-test.c:115
+#: speaker-test/speaker-test.c:131
msgid "Channel 12"
msgstr "Kanal 12"
-#: speaker-test/speaker-test.c:116
+#: speaker-test/speaker-test.c:132
msgid "Channel 13"
msgstr "Kanal 13"
-#: speaker-test/speaker-test.c:117
+#: speaker-test/speaker-test.c:133
msgid "Channel 14"
msgstr "Kanal 14"
-#: speaker-test/speaker-test.c:118
+#: speaker-test/speaker-test.c:134
msgid "Channel 15"
msgstr "Kanal 15"
-#: speaker-test/speaker-test.c:119
+#: speaker-test/speaker-test.c:135
msgid "Channel 16"
msgstr "Kanal 16"
-#: speaker-test/speaker-test.c:383
+#: speaker-test/speaker-test.c:518
#, c-format
msgid "Broken configuration for playback: no configurations available: %s\n"
msgstr "Ungültige Konfiguration: keine unterstützte Konfiguration: %s\n"
-#: speaker-test/speaker-test.c:390
+#: speaker-test/speaker-test.c:525
#, c-format
msgid "Access type not available for playback: %s\n"
msgstr "Zugriffsmodus nicht unterstützt: %s\n"
-#: speaker-test/speaker-test.c:397
+#: speaker-test/speaker-test.c:532
#, c-format
msgid "Sample format not available for playback: %s\n"
msgstr "Sample-Format nicht unterstützt: %s\n"
-#: speaker-test/speaker-test.c:404
+#: speaker-test/speaker-test.c:539
#, c-format
msgid "Channels count (%i) not available for playbacks: %s\n"
msgstr "Kanal-Anzahl %i nicht unterstützt: %s\n"
-#: speaker-test/speaker-test.c:412
+#: speaker-test/speaker-test.c:547
#, c-format
msgid "Rate %iHz not available for playback: %s\n"
msgstr "Rate %i Hz nicht unterstützt: %s\n"
-#: speaker-test/speaker-test.c:417
+#: speaker-test/speaker-test.c:552
#, c-format
msgid "Rate doesn't match (requested %iHz, get %iHz, err %d)\n"
msgstr ""
"Rate ist nicht exakt (angefordert: %i Hz, unterstützt: %i Hz, Fehlercode "
"%d)\n"
-#: speaker-test/speaker-test.c:421
+#: speaker-test/speaker-test.c:556
#, c-format
msgid "Rate set to %iHz (requested %iHz)\n"
msgstr "Rate ist %i Hz (angefordert: %i Hz)\n"
-#: speaker-test/speaker-test.c:427
+#: speaker-test/speaker-test.c:562
#, c-format
msgid "Buffer size range from %lu to %lu\n"
msgstr "Puffergröße von %lu bis %lu\n"
-#: speaker-test/speaker-test.c:428
+#: speaker-test/speaker-test.c:563
#, c-format
msgid "Period size range from %lu to %lu\n"
msgstr "Periodengröße von %lu bis %lu\n"
-#: speaker-test/speaker-test.c:430
+#: speaker-test/speaker-test.c:565
#, c-format
msgid "Requested period time %u us\n"
msgstr "Angeforderte Periodenzeit %u µs\n"
-#: speaker-test/speaker-test.c:433
+#: speaker-test/speaker-test.c:568
#, c-format
msgid "Unable to set period time %u us for playback: %s\n"
msgstr "Fehler beim Setzen der Periodenzeit %u µs: %s\n"
-#: speaker-test/speaker-test.c:439
+#: speaker-test/speaker-test.c:574
#, c-format
msgid "Requested buffer time %u us\n"
msgstr "Angeforderte Pufferlänge %u µs\n"
-#: speaker-test/speaker-test.c:442
+#: speaker-test/speaker-test.c:577
#, c-format
msgid "Unable to set buffer time %u us for playback: %s\n"
msgstr "Fehler beim Setzen der Pufferlänge %u µs: %s\n"
-#: speaker-test/speaker-test.c:451
+#: speaker-test/speaker-test.c:586
#, c-format
msgid "Using max buffer size %lu\n"
msgstr "Verwende maximale Puffergröße %lu\n"
-#: speaker-test/speaker-test.c:454
+#: speaker-test/speaker-test.c:589
#, c-format
msgid "Unable to set buffer size %lu for playback: %s\n"
msgstr "Fehler beim Setzen der Puffergröße %lu: %s\n"
-#: speaker-test/speaker-test.c:460
+#: speaker-test/speaker-test.c:595
#, c-format
msgid "Periods = %u\n"
msgstr "Perioden = %u\n"
-#: speaker-test/speaker-test.c:463
+#: speaker-test/speaker-test.c:598
#, c-format
msgid "Unable to set nperiods %u for playback: %s\n"
msgstr "Fehler beim Setzen der Periodenanzahl %u: %s\n"
-#: speaker-test/speaker-test.c:472
+#: speaker-test/speaker-test.c:607
#, c-format
msgid "Unable to set hw params for playback: %s\n"
msgstr "Fehler beim Setzen der Hardware-Parameter: %s\n"
-#: speaker-test/speaker-test.c:478
+#: speaker-test/speaker-test.c:613
#, c-format
msgid "was set period_size = %lu\n"
msgstr "gesetzt: period_size = %lu\n"
-#: speaker-test/speaker-test.c:479
+#: speaker-test/speaker-test.c:614
#, c-format
msgid "was set buffer_size = %lu\n"
msgstr "gesetzt: buffer_size = %lu\n"
-#: speaker-test/speaker-test.c:481
+#: speaker-test/speaker-test.c:616
#, c-format
msgid "buffer to small, could not use\n"
msgstr "Puffer zu klein, kann nicht benutzt werden\n"
-#: speaker-test/speaker-test.c:494
+#: speaker-test/speaker-test.c:629
#, c-format
msgid "Unable to determine current swparams for playback: %s\n"
msgstr "Fehler beim Lesen der Software-Parameter: %s\n"
-#: speaker-test/speaker-test.c:501
+#: speaker-test/speaker-test.c:636
#, c-format
msgid "Unable to set start threshold mode for playback: %s\n"
msgstr "Fehler beim Setzen des Start-Schwellenwertes: %s\n"
-#: speaker-test/speaker-test.c:508
+#: speaker-test/speaker-test.c:643
#, c-format
msgid "Unable to set avail min for playback: %s\n"
msgstr "Fehler beim Setzen des Mindest-verfügbar-Wertes: %s\n"
-#: speaker-test/speaker-test.c:515
+#: speaker-test/speaker-test.c:650
#, c-format
msgid "Unable to set sw params for playback: %s\n"
msgstr "Fehler beim Setzen der Software-Parameter: %s\n"
-#: speaker-test/speaker-test.c:530
+#: speaker-test/speaker-test.c:670
+#, fuzzy, c-format
+msgid "Unable to set channel map: %s\n"
+msgstr "Fehler beim Setzen des Mindest-verfügbar-Wertes: %s\n"
+
+#: speaker-test/speaker-test.c:695
#, c-format
msgid "Can't recovery from underrun, prepare failed: %s\n"
msgstr ""
"Fehler bei Unterlauf-Behandlung, Re-Initialisierung fehlgeschlagen: %s\n"
-#: speaker-test/speaker-test.c:541
+#: speaker-test/speaker-test.c:706
#, c-format
msgid "Can't recovery from suspend, prepare failed: %s\n"
msgstr ""
"Fehler beim Aufwachen aus dem Ruhezustand, Re-Initialisierung "
"fehlgeschlagen: %s\n"
-#: speaker-test/speaker-test.c:605 speaker-test/speaker-test.c:1025
+#: speaker-test/speaker-test.c:770 speaker-test/speaker-test.c:1261
#, c-format
msgid "No enough memory\n"
msgstr "Nicht genug Speicher\n"
-#: speaker-test/speaker-test.c:610
+#: speaker-test/speaker-test.c:775
#, c-format
msgid "Cannot open WAV file %s\n"
msgstr "Kann WAV-Datei %s nicht öffnen\n"
-#: speaker-test/speaker-test.c:614 speaker-test/speaker-test.c:643
+#: speaker-test/speaker-test.c:779 speaker-test/speaker-test.c:808
#, c-format
msgid "Invalid WAV file %s\n"
msgstr "Ungültige WAV-Datei %s\n"
-#: speaker-test/speaker-test.c:619
+#: speaker-test/speaker-test.c:784
#, c-format
msgid "Not a WAV file: %s\n"
msgstr "Keine WAV-Datei: %s\n"
-#: speaker-test/speaker-test.c:623
+#: speaker-test/speaker-test.c:788
#, c-format
msgid "Unsupported WAV format %d for %s\n"
msgstr "Nicht unterstütztes WAV-Format %d in %s\n"
-#: speaker-test/speaker-test.c:628
+#: speaker-test/speaker-test.c:793
#, c-format
msgid "%s is not a mono stream (%d channels)\n"
msgstr "%s ist keine Mono-Datei (%d Kanäle)\n"
-#: speaker-test/speaker-test.c:633
+#: speaker-test/speaker-test.c:798
#, c-format
msgid "Sample rate doesn't match (%d) for %s\n"
msgstr "Sample-Rate (%d) stimmt nicht überein in %s\n"
-#: speaker-test/speaker-test.c:638
+#: speaker-test/speaker-test.c:803
#, c-format
msgid "Unsupported sample format bits %d for %s\n"
msgstr "Nicht unterstütztes Sample-Format mit %d Bits in %s\n"
-#: speaker-test/speaker-test.c:688
+#: speaker-test/speaker-test.c:864
#, c-format
msgid "Undefined channel %d\n"
msgstr "Kanal %d nicht definiert\n"
-#: speaker-test/speaker-test.c:739
+#: speaker-test/speaker-test.c:915
#, c-format
msgid "Write error: %d,%s\n"
msgstr "Schreibfehler: %d, %s\n"
-#: speaker-test/speaker-test.c:741
+#: speaker-test/speaker-test.c:917
#, c-format
msgid "xrun_recovery failed: %d,%s\n"
msgstr "xrun_recovery fehlgeschlagen: %d, %s\n"
-#: speaker-test/speaker-test.c:803
-#, c-format
+#: speaker-test/speaker-test.c:1003
+#, fuzzy, c-format
msgid ""
"Usage: speaker-test [OPTION]... \n"
"-h,--help\thelp\n"
"-s,--speaker\tsingle speaker test. Values 1=Left, 2=right, etc\n"
"-w,--wavfile\tUse the given WAV file as a test sound\n"
"-W,--wavdir\tSpecify the directory containing WAV files\n"
+"-m,--chmap\tSpecify the channel map to override\n"
+"-X,--force-frequency\tforce frequencies outside the 30-8000hz range\n"
"\n"
msgstr ""
"Verwendung: speaker-test [Option]...\n"
"-s,--speaker teste einen einzelnen Lautsprecher; 1=links, 2=rechts, usw.\n"
"-w,--wavfile benutze WAV-Datei als Testton\n"
"-W,--wavdir benutze Verzeichnis mit darin enthaltenen WAV-Dateien\n"
+"-X,--force-frequency\termöglichen Frequenzen außerhalb der 30-8000Hz "
+"Bereich\n"
"\n"
-#: speaker-test/speaker-test.c:921
+#: speaker-test/speaker-test.c:1132
#, c-format
msgid "Invalid number of periods %d\n"
msgstr "Ungültige Periodenanzahl %d\n"
-#: speaker-test/speaker-test.c:937 speaker-test/speaker-test.c:941
+#: speaker-test/speaker-test.c:1148 speaker-test/speaker-test.c:1152
#, c-format
msgid "Invalid test type %s\n"
msgstr "Ungültiger Test-Typ %s\n"
-#: speaker-test/speaker-test.c:953
+#: speaker-test/speaker-test.c:1164
#, c-format
msgid "Invalid parameter for -s option.\n"
msgstr "Ungültiger Wert für Option -s\n"
-#: speaker-test/speaker-test.c:967
+#: speaker-test/speaker-test.c:1186
#, c-format
msgid "Unknown option '%c'\n"
msgstr "Unbekannte Options '%c'\n"
-#: speaker-test/speaker-test.c:981
+#: speaker-test/speaker-test.c:1207
#, c-format
msgid "Playback device is %s\n"
msgstr "Wiedergabe-Gerät ist %s\n"
-#: speaker-test/speaker-test.c:982
+#: speaker-test/speaker-test.c:1208
#, c-format
msgid "Stream parameters are %iHz, %s, %i channels\n"
msgstr "Stream-Parameter sind %i Hz, %s, %i Kanäle\n"
-#: speaker-test/speaker-test.c:985
+#: speaker-test/speaker-test.c:1211
#, c-format
msgid "Using 16 octaves of pink noise\n"
msgstr "Verwende 16 Oktaven rosa Rauschen\n"
-#: speaker-test/speaker-test.c:988
+#: speaker-test/speaker-test.c:1214
#, c-format
msgid "Sine wave rate is %.4fHz\n"
msgstr "Sinuswelle mit Frequenz %.4f Hz\n"
-#: speaker-test/speaker-test.c:991
+#: speaker-test/speaker-test.c:1217
#, c-format
msgid "WAV file(s)\n"
msgstr "WAV-Datei(en)\n"
-#: speaker-test/speaker-test.c:997
+#: speaker-test/speaker-test.c:1227
#, c-format
msgid "Playback open error: %d,%s\n"
msgstr "Fehler beim Öffnen des Gerätes: %d, %s\n"
-#: speaker-test/speaker-test.c:1002
+#: speaker-test/speaker-test.c:1233
#, c-format
msgid "Setting of hwparams failed: %s\n"
msgstr "Fehler beim Setzen der Hardware-Parameter: %s\n"
-#: speaker-test/speaker-test.c:1007
+#: speaker-test/speaker-test.c:1237
#, c-format
msgid "Setting of swparams failed: %s\n"
msgstr "Fehler beim Setzen der Software-Parameter: %s\n"
-#: speaker-test/speaker-test.c:1056 speaker-test/speaker-test.c:1078
+#: speaker-test/speaker-test.c:1284 speaker-test/speaker-test.c:1306
#, c-format
msgid "Transfer failed: %s\n"
msgstr "Schreibfehler: %s\n"
-#: speaker-test/speaker-test.c:1066
+#: speaker-test/speaker-test.c:1292
#, c-format
msgid "Time per period = %lf\n"
msgstr "Zeit pro Periode = %lf\n"
+
+#~ msgid "Warning: format is changed to S16_LE\n"
+#~ msgstr "Warnung: benutztes Format ist S16_LE\n"
+
+#~ msgid "Warning: format is changed to S24_3LE\n"
+#~ msgstr "Warnung: benutztes Format ist S24_3LE\n"
+
+#~ msgid "Warning: format is changed to S24_LE\n"
+#~ msgstr "Warnung: benutztes Format ist S24_LE\n"
msgstr ""
"Project-Id-Version: alsa-utils 1.0.23\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2012-09-06 10:45+0200\n"
+"POT-Creation-Date: 2014-06-13 19:24+0200\n"
"PO-Revision-Date: 2011-01-07 06:23+0100\n"
"Last-Translator: Christoph J. Thompson <cjsthompson@gmail.com>\n"
"Language-Team: French <fr@li.org>\n"
msgid "Rear"
msgstr "Arrière"
-#: alsamixer/mixer_display.c:598 speaker-test/speaker-test.c:108
+#: alsamixer/mixer_display.c:598 speaker-test/speaker-test.c:124
msgid "Center"
msgstr "Centre"
msgid "Side"
msgstr "Côté"
-#: alsamixer/mixer_widget.c:95 alsamixer/mixer_widget.c:100
+#: alsamixer/mixer_widget.c:91 alsamixer/mixer_widget.c:96
msgid "cannot open mixer"
msgstr "le mixeur ne peut pas être ouvert"
-#: alsamixer/mixer_widget.c:106 alsamixer/mixer_widget.c:183
+#: alsamixer/mixer_widget.c:102 alsamixer/mixer_widget.c:179
msgid "cannot load mixer controls"
msgstr "les commandes de mixage ne peuvent pas être chargés"
-#: alsamixer/mixer_widget.c:173
+#: alsamixer/mixer_widget.c:169
#, c-format
msgid "Cannot open mixer device '%s'."
msgstr "Le périphérique de mixage '%s' ne peut pas être ouvert."
-#: alsamixer/mixer_widget.c:194
+#: alsamixer/mixer_widget.c:190
msgid "Esc Exit"
msgstr "Esc Quitter"
-#: alsamixer/mixer_widget.c:195
+#: alsamixer/mixer_widget.c:191
msgid "F1 ? H Help"
msgstr "F1 ? H Aide"
-#: alsamixer/mixer_widget.c:196
+#: alsamixer/mixer_widget.c:192
msgid "F2 / System information"
msgstr "F2 / Informations système"
-#: alsamixer/mixer_widget.c:197
+#: alsamixer/mixer_widget.c:193
msgid "F3 Show playback controls"
msgstr "F3 Afficher les commandes de lecture"
-#: alsamixer/mixer_widget.c:198
+#: alsamixer/mixer_widget.c:194
msgid "F4 Show capture controls"
msgstr "F4 Afficher les commandes de capture"
-#: alsamixer/mixer_widget.c:199
+#: alsamixer/mixer_widget.c:195
msgid "F5 Show all controls"
msgstr "F5 Afficher toutes les commandes"
-#: alsamixer/mixer_widget.c:200
+#: alsamixer/mixer_widget.c:196
msgid "Tab Toggle view mode (F3/F4/F5)"
msgstr "Tab Choisir le mode de visualisation (F3/F4/F5)"
-#: alsamixer/mixer_widget.c:201
+#: alsamixer/mixer_widget.c:197
msgid "F6 S Select sound card"
msgstr "F6 S Choisir la carte son"
-#: alsamixer/mixer_widget.c:202
+#: alsamixer/mixer_widget.c:198
msgid "L Redraw screen"
msgstr "L Actualiser l'écran"
-#: alsamixer/mixer_widget.c:204
+#: alsamixer/mixer_widget.c:200
msgid "Left Move to the previous control"
msgstr "Gauche Aller à la commande précédente"
-#: alsamixer/mixer_widget.c:205
+#: alsamixer/mixer_widget.c:201
msgid "Right Move to the next control"
msgstr "Droite Aller à la commande suivante"
-#: alsamixer/mixer_widget.c:207
+#: alsamixer/mixer_widget.c:203
msgid "Up/Down Change volume"
msgstr "Haut/Bas Ajuster le volume"
-#: alsamixer/mixer_widget.c:208
+#: alsamixer/mixer_widget.c:204
msgid "+ - Change volume"
msgstr "+ - Ajuster le volume"
-#: alsamixer/mixer_widget.c:209
+#: alsamixer/mixer_widget.c:205
msgid "Page Up/Dn Change volume in big steps"
msgstr "Page Préc./Suiv. Ajuster le volume en grandes intervalles"
-#: alsamixer/mixer_widget.c:210
+#: alsamixer/mixer_widget.c:206
msgid "End Set volume to 0%"
msgstr "Fin Couper le volume"
-#: alsamixer/mixer_widget.c:211
+#: alsamixer/mixer_widget.c:207
msgid "0-9 Set volume to 0%-90%"
msgstr "0-9 Ajuster le volume entre 0 et 90%"
-#: alsamixer/mixer_widget.c:212
+#: alsamixer/mixer_widget.c:208
msgid "Q W E Increase left/both/right volumes"
msgstr "Q W E Augmenter les volumes de gauche/centre/droite"
#. TRANSLATORS: or Y instead of Z
-#: alsamixer/mixer_widget.c:214
+#: alsamixer/mixer_widget.c:210
msgid "Z X C Decrease left/both/right volumes"
msgstr "Z X C Baisser les volumes de gauche/centre/droite"
-#: alsamixer/mixer_widget.c:215
+#: alsamixer/mixer_widget.c:211
msgid "B Balance left and right volumes"
msgstr "B Égaliser les volumes de gauche et droite"
-#: alsamixer/mixer_widget.c:217
+#: alsamixer/mixer_widget.c:213
msgid "M Toggle mute"
msgstr "M (Dés)activer le mode muet"
#. TRANSLATORS: or , .
-#: alsamixer/mixer_widget.c:219
+#: alsamixer/mixer_widget.c:215
msgid "< > Toggle left/right mute"
msgstr "< > (Dés)activer le mode muet à gauche et à droite"
-#: alsamixer/mixer_widget.c:221
+#: alsamixer/mixer_widget.c:217
msgid "Space Toggle capture"
msgstr "Espace (Dés)activer la capture"
#. TRANSLATORS: or Insert Delete
-#: alsamixer/mixer_widget.c:223
+#: alsamixer/mixer_widget.c:219
msgid "; ' Toggle left/right capture"
msgstr "; (Dés)activer la capture à gauche et à droite"
-#: alsamixer/mixer_widget.c:225
+#: alsamixer/mixer_widget.c:221
msgid "Authors:"
msgstr "Auteurs:"
-#: alsamixer/mixer_widget.c:226
+#: alsamixer/mixer_widget.c:222
msgid " Tim Janik"
msgstr ""
-#: alsamixer/mixer_widget.c:227
+#: alsamixer/mixer_widget.c:223
msgid " Jaroslav Kysela <perex@perex.cz>"
msgstr ""
-#: alsamixer/mixer_widget.c:228
+#: alsamixer/mixer_widget.c:224
msgid " Clemens Ladisch <clemens@ladisch.de>"
msgstr ""
-#: alsamixer/mixer_widget.c:230
+#: alsamixer/mixer_widget.c:226
msgid "Help"
msgstr "Aide"
msgid "Cannot open file \"%s\"."
msgstr "Le fichier \"%s\" n'a pas pu être ouvert."
-#: aplay/aplay.c:165
+#: aplay/aplay.c:175
msgid "raw data"
msgstr "données brutes"
-#: aplay/aplay.c:166
+#: aplay/aplay.c:176
msgid "VOC"
msgstr ""
-#: aplay/aplay.c:168
+#: aplay/aplay.c:178
msgid "WAVE"
msgstr ""
-#: aplay/aplay.c:169
+#: aplay/aplay.c:179
msgid "Sparc Audio"
msgstr ""
-#: aplay/aplay.c:190
+#: aplay/aplay.c:200
#, fuzzy, c-format
msgid ""
"Usage: %s [OPTION]... [FILE]...\n"
"-V, --vumeter=TYPE enable VU meter (TYPE: mono or stereo)\n"
"-I, --separate-channels one file for each channel\n"
"-i, --interactive allow interactive operation from stdin\n"
+"-m, --chmap=ch1,ch2,.. Give the channel map to override or follow\n"
" --disable-resample disable automatic rate resample\n"
" --disable-channels disable automatic channel conversions\n"
" --disable-format disable automatic format conversions\n"
" --process-id-file écrire l'identifiant du processus ici\n"
" --use-strftime utiliser strftime pour le nom du fichier de capture\n"
-#: aplay/aplay.c:232 speaker-test/speaker-test.c:819
+#: aplay/aplay.c:244 speaker-test/speaker-test.c:1021
#, c-format
msgid "Recognized sample formats are:"
msgstr "Les formats d'échantillonage connus sont:"
-#: aplay/aplay.c:238
+#: aplay/aplay.c:250
#, c-format
msgid ""
"\n"
"\n"
"Certains de ceux-ci ne sont peut être pas disponibles avec ce matériel\n"
-#: aplay/aplay.c:239
-#, c-format
-msgid "The availabled format shortcuts are:\n"
+#: aplay/aplay.c:251
+#, fuzzy, c-format
+msgid "The available format shortcuts are:\n"
msgstr "Les raccourcis format disponibles sont:\n"
-#: aplay/aplay.c:240
+#: aplay/aplay.c:252
#, c-format
msgid "-f cd (16 bit little endian, 44100, stereo)\n"
msgstr "-f cd (16 bit petit boutiste, 44100, stéréo)\n"
-#: aplay/aplay.c:241
+#: aplay/aplay.c:253
#, c-format
msgid "-f cdr (16 bit big endian, 44100, stereo)\n"
msgstr "-f cdr (16 bit gros boutiste, 44100, stéréo)\n"
-#: aplay/aplay.c:242
+#: aplay/aplay.c:254
#, c-format
msgid "-f dat (16 bit little endian, 48000, stereo)\n"
msgstr "-f dat (16 bit petit boutiste, 48000, stéréo)\n"
-#: aplay/aplay.c:256
+#: aplay/aplay.c:268
msgid "no soundcards found..."
msgstr "aucune carte son n'a été trouvée..."
-#: aplay/aplay.c:259
+#: aplay/aplay.c:271
#, c-format
msgid "**** List of %s Hardware Devices ****\n"
msgstr "**** Liste des Périphériques Matériels %s ****\n"
-#: aplay/aplay.c:288
+#: aplay/aplay.c:300
#, c-format
msgid "card %i: %s [%s], device %i: %s [%s]\n"
msgstr "carte %i: %s [%s], périphérique %i: %s [%s]\n"
-#: aplay/aplay.c:294
+#: aplay/aplay.c:306
#, c-format
msgid " Subdevices: %i/%i\n"
msgstr " Sous-périphériques: %i/%i\n"
-#: aplay/aplay.c:301
+#: aplay/aplay.c:313
#, c-format
msgid " Subdevice #%i: %s\n"
msgstr " Sous-périphérique #%i: %s\n"
-#: aplay/aplay.c:384
+#: aplay/aplay.c:394
#, c-format
msgid "Aborted by signal %s...\n"
msgstr "Interrompu par le signal %s...\n"
-#: aplay/aplay.c:500
+#: aplay/aplay.c:512
msgid "command should be named either arecord or aplay"
msgstr "la commande doit être nommée arecord ou aplay"
-#: aplay/aplay.c:539
+#: aplay/aplay.c:556
#, c-format
msgid "unrecognized file format %s"
msgstr "format de fichier inconnu %s"
-#: aplay/aplay.c:546
+#: aplay/aplay.c:563
#, c-format
msgid "value %i for channels is invalid"
msgstr "la valeur %i pour les canaux est incorrecte"
-#: aplay/aplay.c:565
+#: aplay/aplay.c:582
#, c-format
msgid "wrong extended format '%s'"
msgstr "format étendu '%s' erronné"
-#: aplay/aplay.c:576
+#: aplay/aplay.c:593
#, c-format
msgid "bad speed value %i"
msgstr "mauvaise valeur de vitesse %i"
-#: aplay/aplay.c:680
+#: aplay/aplay.c:700 speaker-test/speaker-test.c:665
+#, c-format
+msgid "Unable to parse channel map string: %s\n"
+msgstr ""
+
+#: aplay/aplay.c:706
#, c-format
msgid "Try `%s --help' for more information.\n"
msgstr "Essayez `%s --help' pour plus d'informations.\n"
-#: aplay/aplay.c:696
+#: aplay/aplay.c:722
#, c-format
msgid "audio open error: %s"
msgstr "erreur à l'ouverture audio: %s"
-#: aplay/aplay.c:701
+#: aplay/aplay.c:727
#, c-format
msgid "info error: %s"
msgstr "erreur info: %s"
-#: aplay/aplay.c:708
+#: aplay/aplay.c:734
#, c-format
msgid "nonblock setting error: %s"
msgstr "paramètre de non-blocage erronné: %s"
-#: aplay/aplay.c:718 aplay/aplay.c:842 aplay/aplay.c:1217
+#: aplay/aplay.c:744 aplay/aplay.c:868 aplay/aplay.c:1158 aplay/aplay.c:1351
+#: aplay/aplay.c:1867 aplay/aplay.c:1897
msgid "not enough memory"
msgstr "pas assez de mémoire"
-#: aplay/aplay.c:742
+#: aplay/aplay.c:768
#, c-format
msgid "Cannot create process ID file %s: %s"
msgstr "Le fichier de numéro de processus %s n'a pas pu être créé: %s"
-#: aplay/aplay.c:832
+#: aplay/aplay.c:858
#, c-format
msgid "read error (called from line %i)"
msgstr "erreur de lecture (appelé à la ligne %i)"
-#: aplay/aplay.c:890
+#: aplay/aplay.c:925
#, c-format
msgid "unknown length of 'fmt ' chunk (read %u, should be %u at least)"
msgstr "longueur du morceau 'fmt ' inconnue (lu %u, devrait être au moins %u)"
-#: aplay/aplay.c:900
+#: aplay/aplay.c:936
#, c-format
msgid ""
"unknown length of extensible 'fmt ' chunk (read %u, should be %u at least)"
"longueur du morceau 'fmt ' extensible inconnue (lu %u, devrait être au moins "
"%u)"
-#: aplay/aplay.c:905
+#: aplay/aplay.c:941
msgid "wrong format tag in extensible 'fmt ' chunk"
msgstr "libellé de format erronné dans le morceau extensible 'fmt '"
-#: aplay/aplay.c:912
+#: aplay/aplay.c:948
#, c-format
msgid "can't play WAVE-file format 0x%04x which is not PCM or FLOAT encoded"
msgstr ""
"Les formats de ficher WAVE 0x%04x qui ne sont pas encodés en PCM ouFLOAT ne "
"sont pas supportés"
-#: aplay/aplay.c:916
+#: aplay/aplay.c:953
#, c-format
msgid "can't play WAVE-files with %d tracks"
msgstr "Les fichiers WAVE avec %d pistes ne sont pas supportés"
-#: aplay/aplay.c:924 aplay/aplay.c:1024
+#: aplay/aplay.c:961 aplay/aplay.c:1087
#, c-format
msgid "Warning: format is changed to U8\n"
msgstr "Avertissement: le format est changé en U8\n"
-#: aplay/aplay.c:930
-#, c-format
-msgid "Warning: format is changed to S16_LE\n"
-msgstr "Avertissement: le format est changé en S16_LE\n"
-
-#: aplay/aplay.c:938
-#, c-format
-msgid "Warning: format is changed to S24_3LE\n"
-msgstr "Avertissement: le format est changé en S24_3LE\n"
-
-#: aplay/aplay.c:944
-#, c-format
-msgid "Warning: format is changed to S24_LE\n"
-msgstr "Avertissement: le format est changé en S24_LE\n"
+#: aplay/aplay.c:971 aplay/aplay.c:984 aplay/aplay.c:995
+#, fuzzy, c-format
+msgid "Warning: format is changed to %s\n"
+msgstr "Avertissement: le format est changé en U8\n"
-#: aplay/aplay.c:948
+#: aplay/aplay.c:1000
#, c-format
msgid ""
" can't play WAVE-files with sample %d bits in %d bytes wide (%d channels)"
" les fichiers WAVE échantillonés %d bits par %d octets en largeur (%d canaux)"
"ne sont pas supportés"
-#: aplay/aplay.c:960
+#: aplay/aplay.c:1023
#, c-format
msgid " can't play WAVE-files with sample %d bits wide"
msgstr ""
" les fichiers WAVES échantillonés %d bits en largeur ne sont passupportés"
-#: aplay/aplay.c:1018
+#: aplay/aplay.c:1081
#, c-format
msgid "Warning: format is changed to MU_LAW\n"
msgstr "Avertissement: le format est changé en MU_LAW\n"
-#: aplay/aplay.c:1030
+#: aplay/aplay.c:1093
#, c-format
msgid "Warning: format is changed to S16_BE\n"
msgstr "Avertissement: le format est changé en S16_BE\n"
-#: aplay/aplay.c:1043 aplay/aplay.c:1980 aplay/aplay.c:1987 aplay/aplay.c:2510
-#: aplay/aplay.c:2522
+#: aplay/aplay.c:1106 aplay/aplay.c:2182 aplay/aplay.c:2189 aplay/aplay.c:2715
+#: aplay/aplay.c:2727
msgid "read error"
msgstr "erreur de lecture"
-#: aplay/aplay.c:1073
+#: aplay/aplay.c:1136
+msgid "Channel numbers don't match between hw_params and channel map"
+msgstr ""
+
+#: aplay/aplay.c:1145
+#, c-format
+msgid "Warning: unable to get channel map\n"
+msgstr ""
+
+#: aplay/aplay.c:1178
+#, c-format
+msgid "Channel %d doesn't match with hw_parmas"
+msgstr ""
+
+#: aplay/aplay.c:1204
msgid "Broken configuration for this PCM: no configurations available"
msgstr "Configuration erronée pour ce périphérique PCM: pas de configuration"
-#: aplay/aplay.c:1077
+#: aplay/aplay.c:1208
#, c-format
msgid "HW Params of device \"%s\":\n"
msgstr ""
-#: aplay/aplay.c:1097
+#: aplay/aplay.c:1228
msgid "Access type not available"
msgstr "Ce type d'accès n'est pas disponible"
-#: aplay/aplay.c:1102
+#: aplay/aplay.c:1233
msgid "Sample format non available"
msgstr "Ce format d'échantillonage n'est pas disponible"
-#: aplay/aplay.c:1108
+#: aplay/aplay.c:1239
msgid "Channels count non available"
msgstr "Nombre de canaux non disponible"
-#: aplay/aplay.c:1123
+#: aplay/aplay.c:1254
#, c-format
msgid "Warning: rate is not accurate (requested = %iHz, got = %iHz)\n"
msgstr ""
"Avertissement: la fréquence n'est pas précise (demandé = %iHz,\n"
"obtenu = %iHz)\n"
-#: aplay/aplay.c:1129
+#: aplay/aplay.c:1260
#, c-format
msgid " please, try the plug plugin %s\n"
msgstr " veuillez essayez le greffon de branchement %s\n"
-#: aplay/aplay.c:1166
+#: aplay/aplay.c:1297
msgid "Unable to install hw params:"
msgstr "Les paramètres matériel n'ont pas pu être installés:"
-#: aplay/aplay.c:1173
+#: aplay/aplay.c:1304
#, c-format
msgid "Can't use period equal to buffer size (%lu == %lu)"
msgstr ""
"Une période égale à la taille du tampon (%lu == %lu) ne peut êtreutilisée"
-#: aplay/aplay.c:1204
+#: aplay/aplay.c:1335
msgid "unable to install sw params:"
msgstr "Les paramètres logiciel n'ont pas pu être installés:"
-#: aplay/aplay.c:1235
+#: aplay/aplay.c:1369
#, c-format
msgid "snd_pcm_mmap_begin problem: %s"
msgstr ""
-#: aplay/aplay.c:1260
+#: aplay/aplay.c:1398
#, c-format
msgid "stdin O_NONBLOCK flag setup failed\n"
msgstr ""
-#: aplay/aplay.c:1284
+#: aplay/aplay.c:1422
#, c-format
msgid "\rPAUSE command ignored (no hw support)\n"
msgstr ""
-#: aplay/aplay.c:1289
+#: aplay/aplay.c:1427
#, fuzzy, c-format
msgid "pause push error: %s"
msgstr "erreur d'état: %s"
-#: aplay/aplay.c:1298
+#: aplay/aplay.c:1436
#, fuzzy, c-format
msgid "pause release error: %s"
msgstr "suspension: prepare error: %s"
-#: aplay/aplay.c:1314
+#: aplay/aplay.c:1452
#, c-format
msgid ""
"\r=== PAUSE === "
msgstr ""
-#: aplay/aplay.c:1356
+#: aplay/aplay.c:1494
#, c-format
msgid "status error: %s"
msgstr "erreur d'état: %s"
-#: aplay/aplay.c:1361
+#: aplay/aplay.c:1499
#, fuzzy, c-format
msgid "fatal %s: %s"
msgstr "%s: %s\n"
-#: aplay/aplay.c:1362 aplay/aplay.c:1373 aplay/aplay.c:1376 aplay/aplay.c:1384
+#: aplay/aplay.c:1500 aplay/aplay.c:1511 aplay/aplay.c:1514 aplay/aplay.c:1522
msgid "underrun"
msgstr "perte"
-#: aplay/aplay.c:1362 aplay/aplay.c:1373 aplay/aplay.c:1384
+#: aplay/aplay.c:1500 aplay/aplay.c:1511 aplay/aplay.c:1522
msgid "overrun"
msgstr "dépassement"
-#: aplay/aplay.c:1372 aplay/aplay.c:1383
+#: aplay/aplay.c:1510 aplay/aplay.c:1521
#, c-format
msgid "%s!!! (at least %.3f ms long)\n"
msgstr "%s!!! (au moins longue de %.3f ms)\n"
-#: aplay/aplay.c:1388
+#: aplay/aplay.c:1526
#, c-format
msgid "Status:\n"
msgstr "État:\n"
-#: aplay/aplay.c:1392
+#: aplay/aplay.c:1530
#, c-format
msgid "xrun: prepare error: %s"
msgstr ""
-#: aplay/aplay.c:1398
+#: aplay/aplay.c:1536
#, c-format
msgid "Status(DRAINING):\n"
msgstr ""
-#: aplay/aplay.c:1402
+#: aplay/aplay.c:1540
#, c-format
msgid "capture stream format change? attempting recover...\n"
msgstr ""
"changement de format de flux de capture? tentative de récupération...\n"
-#: aplay/aplay.c:1404
+#: aplay/aplay.c:1542
#, c-format
msgid "xrun(DRAINING): prepare error: %s"
msgstr ""
-#: aplay/aplay.c:1411
+#: aplay/aplay.c:1549
#, c-format
msgid "Status(R/W):\n"
msgstr ""
-#: aplay/aplay.c:1414
+#: aplay/aplay.c:1552
#, c-format
msgid "read/write error, state = %s"
msgstr "erreur de lecture/écriture, état = %s"
-#: aplay/aplay.c:1424
+#: aplay/aplay.c:1562
#, c-format
msgid "Suspended. Trying resume. "
msgstr "Suspendu. Tentative de reprise. "
-#: aplay/aplay.c:1429
+#: aplay/aplay.c:1567
#, c-format
msgid "Failed. Restarting stream. "
msgstr "Échec. Redémarrage du flux."
-#: aplay/aplay.c:1431
+#: aplay/aplay.c:1569
#, c-format
msgid "suspend: prepare error: %s"
msgstr "suspension: prepare error: %s"
-#: aplay/aplay.c:1436
+#: aplay/aplay.c:1574
#, c-format
msgid "Done.\n"
msgstr "Terminé.\n"
-#: aplay/aplay.c:1458
+#: aplay/aplay.c:1596
#, c-format
msgid " !clip "
msgstr ""
-#: aplay/aplay.c:1605
+#: aplay/aplay.c:1743
#, c-format
msgid "Unsupported bit size %d.\n"
msgstr "%d bit(s) non supporté(s).\n"
-#: aplay/aplay.c:1639
+#: aplay/aplay.c:1777
#, c-format
msgid "Max peak (%li samples): 0x%08x "
msgstr "Pic max. (%li échantillons): 0x%08x "
-#: aplay/aplay.c:1673
+#: aplay/aplay.c:1811
#, c-format
msgid ""
"Suspicious buffer position (%li total): avail = %li, delay = %li, buffer = "
"Position de tampon suspicieuse (total %li): dispo = %li, délai = %li, tampon "
"= %li\n"
-#: aplay/aplay.c:1737
+#: aplay/aplay.c:1939
#, c-format
msgid "write error: %s"
msgstr "erreur en écriture: %s"
-#: aplay/aplay.c:1784
+#: aplay/aplay.c:1987
#, c-format
msgid "writev error: %s"
msgstr "erreur de writev: %s"
-#: aplay/aplay.c:1828
+#: aplay/aplay.c:2031
#, c-format
msgid "read error: %s"
msgstr "erreur en lecture: %s"
-#: aplay/aplay.c:1872
+#: aplay/aplay.c:2075
#, c-format
msgid "readv error: %s"
msgstr "erreur de readv: %s"
-#: aplay/aplay.c:1920
+#: aplay/aplay.c:2123
msgid "can't allocate buffer for silence"
msgstr "Un tampon pour silence n'a pas pu être alloué"
-#: aplay/aplay.c:1929 aplay/aplay.c:2155 aplay/aplay.c:2160 aplay/aplay.c:2207
-#: aplay/aplay.c:2216 aplay/aplay.c:2223 aplay/aplay.c:2233 aplay/aplay.c:2239
-#: aplay/aplay.c:2311 aplay/aplay.c:2341 aplay/aplay.c:2355
+#: aplay/aplay.c:2132 aplay/aplay.c:2360 aplay/aplay.c:2365 aplay/aplay.c:2412
+#: aplay/aplay.c:2421 aplay/aplay.c:2428 aplay/aplay.c:2438 aplay/aplay.c:2444
+#: aplay/aplay.c:2516 aplay/aplay.c:2546 aplay/aplay.c:2560
msgid "write error"
msgstr "erreur en écriture"
-#: aplay/aplay.c:1942
+#: aplay/aplay.c:2145
#, c-format
msgid "voc_pcm_flush - silence error"
msgstr "voc_pcm_flush - erreur de silence"
-#: aplay/aplay.c:1945
+#: aplay/aplay.c:2148
msgid "voc_pcm_flush error"
msgstr "erreur voc_pcm_flush"
-#: aplay/aplay.c:1971
+#: aplay/aplay.c:2173
msgid "malloc error"
msgstr "erreur malloc"
-#: aplay/aplay.c:1975
+#: aplay/aplay.c:2177
#, c-format
msgid "Playing Creative Labs Channel file '%s'...\n"
msgstr "Lecture du ficher de canaux Creative Labs '%s'...\n"
-#: aplay/aplay.c:2043 aplay/aplay.c:2135
+#: aplay/aplay.c:2245 aplay/aplay.c:2340
msgid "can't play packed .voc files"
msgstr "les fichiers .voc de type 'packed' ne sont pas supportés"
-#: aplay/aplay.c:2095
+#: aplay/aplay.c:2300
#, c-format
msgid "can't play loops; %s isn't seekable\n"
msgstr "%s n'est pas navigable; les motifs n'ont pas pu être lus\n"
-#: aplay/aplay.c:2144
+#: aplay/aplay.c:2349
#, c-format
msgid "unknown blocktype %d. terminate."
msgstr "type de bloc %d inconnu. fin."
-#: aplay/aplay.c:2275
+#: aplay/aplay.c:2480
#, c-format
msgid "Wave doesn't support %s format..."
msgstr "Le format wave %s n'est pas supporté..."
-#: aplay/aplay.c:2335
+#: aplay/aplay.c:2540
#, c-format
msgid "Sparc Audio doesn't support %s format..."
msgstr "Le format %s Sparc Audio n'est pas supporté..."
-#: aplay/aplay.c:2416
+#: aplay/aplay.c:2621
msgid "Playing"
msgstr "Lecture"
-#: aplay/aplay.c:2416
+#: aplay/aplay.c:2621
msgid "Recording"
msgstr "Capture"
-#: aplay/aplay.c:2420
+#: aplay/aplay.c:2625
#, c-format
msgid "Rate %d Hz, "
msgstr "Fréquence %d Hz, "
-#: aplay/aplay.c:2422
+#: aplay/aplay.c:2627
#, c-format
msgid "Mono"
msgstr ""
-#: aplay/aplay.c:2424
+#: aplay/aplay.c:2629
#, c-format
msgid "Stereo"
msgstr "Stéréo"
-#: aplay/aplay.c:2426
+#: aplay/aplay.c:2631
#, c-format
msgid "Channels %i"
msgstr "%i Canaux"
-#: aplay/aplay.c:2937 aplay/aplay.c:2990
+#: aplay/aplay.c:3145 aplay/aplay.c:3198
#, c-format
msgid "You need to specify %d files"
msgstr "Vous devez spécifier %d fichiers"
msgid "kernel"
msgstr "noyau"
-#: seq/aconnect/aconnect.c:307
+#: seq/aconnect/aconnect.c:308
#, c-format
msgid "can't open sequencer\n"
msgstr "le séquenceur n'a pas pu être ouvert\n"
-#: seq/aconnect/aconnect.c:335
+#: seq/aconnect/aconnect.c:336
#, c-format
msgid "can't get client id\n"
msgstr "l'identifiant du client n'as pas pu être obtenu\n"
-#: seq/aconnect/aconnect.c:342
+#: seq/aconnect/aconnect.c:343
#, c-format
msgid "can't set client info\n"
msgstr "les infos du client n'ont pas pu être définies\n"
-#: seq/aconnect/aconnect.c:349
+#: seq/aconnect/aconnect.c:350
#, c-format
msgid "invalid sender address %s\n"
msgstr "l'addresse envoyeur %s est incorrecte\n"
-#: seq/aconnect/aconnect.c:354 seq/aseqnet/aseqnet.c:290
+#: seq/aconnect/aconnect.c:355 seq/aseqnet/aseqnet.c:290
#, c-format
msgid "invalid destination address %s\n"
msgstr "l'addresse destinataire %s est incorrecte\n"
-#: seq/aconnect/aconnect.c:368
+#: seq/aconnect/aconnect.c:369
#, c-format
msgid "No subscription is found\n"
msgstr "Aucune souscription trouvée\n"
-#: seq/aconnect/aconnect.c:373
+#: seq/aconnect/aconnect.c:374
#, c-format
msgid "Disconnection failed (%s)\n"
msgstr "La déconnexion a échoué (%s)\n"
-#: seq/aconnect/aconnect.c:379
+#: seq/aconnect/aconnect.c:380
#, c-format
msgid "Connection is already subscribed\n"
msgstr "La connexion a déjà été souscrite\n"
-#: seq/aconnect/aconnect.c:384
+#: seq/aconnect/aconnect.c:385
#, c-format
msgid "Connection failed (%s)\n"
msgstr "Échec de connexion (%s)\n"
msgstr "options:\n"
#: seq/aseqnet/aseqnet.c:170
-#, c-format
-msgid " -p,--port # : sepcify TCP port (digit or service name)\n"
+#, fuzzy, c-format
+msgid " -p,--port # : specify TCP port (digit or service name)\n"
msgstr " -p,--port # : spécifier le port TCP (numéro ou nom de service)\n"
#: seq/aseqnet/aseqnet.c:171
msgid "disconnected\n"
msgstr "déconnecté\n"
-#: speaker-test/speaker-test.c:104
+#: speaker-test/speaker-test.c:120
msgid "Front Left"
msgstr "Avant Gauche"
-#: speaker-test/speaker-test.c:105
+#: speaker-test/speaker-test.c:121
msgid "Front Right"
msgstr "Avant Droit"
-#: speaker-test/speaker-test.c:106
+#: speaker-test/speaker-test.c:122
msgid "Rear Left"
msgstr "Arrière Gauche"
-#: speaker-test/speaker-test.c:107
+#: speaker-test/speaker-test.c:123
msgid "Rear Right"
msgstr "Arrière Droit"
-#: speaker-test/speaker-test.c:109
+#: speaker-test/speaker-test.c:125
msgid "LFE"
msgstr ""
-#: speaker-test/speaker-test.c:110
+#: speaker-test/speaker-test.c:126
msgid "Side Left"
msgstr "Côté Gauche"
-#: speaker-test/speaker-test.c:111
+#: speaker-test/speaker-test.c:127
msgid "Side Right"
msgstr "Côté Droit"
-#: speaker-test/speaker-test.c:112
+#: speaker-test/speaker-test.c:128
msgid "Channel 9"
msgstr "Canal 9"
-#: speaker-test/speaker-test.c:113
+#: speaker-test/speaker-test.c:129
msgid "Channel 10"
msgstr "Canal 10"
-#: speaker-test/speaker-test.c:114
+#: speaker-test/speaker-test.c:130
msgid "Channel 11"
msgstr "Canal 11"
-#: speaker-test/speaker-test.c:115
+#: speaker-test/speaker-test.c:131
msgid "Channel 12"
msgstr "Canal 12"
-#: speaker-test/speaker-test.c:116
+#: speaker-test/speaker-test.c:132
msgid "Channel 13"
msgstr "Canal 13"
-#: speaker-test/speaker-test.c:117
+#: speaker-test/speaker-test.c:133
msgid "Channel 14"
msgstr "Canal 14"
-#: speaker-test/speaker-test.c:118
+#: speaker-test/speaker-test.c:134
msgid "Channel 15"
msgstr "Canal 15"
-#: speaker-test/speaker-test.c:119
+#: speaker-test/speaker-test.c:135
msgid "Channel 16"
msgstr "Canal 16"
-#: speaker-test/speaker-test.c:383
+#: speaker-test/speaker-test.c:518
#, c-format
msgid "Broken configuration for playback: no configurations available: %s\n"
msgstr "Configuration erronée pour la lecture: pas de configuration: %s\n"
-#: speaker-test/speaker-test.c:390
+#: speaker-test/speaker-test.c:525
#, c-format
msgid "Access type not available for playback: %s\n"
msgstr "Le type d'accès est indisponible à la lecture: %s\n"
-#: speaker-test/speaker-test.c:397
+#: speaker-test/speaker-test.c:532
#, c-format
msgid "Sample format not available for playback: %s\n"
msgstr "Le format d'échantillonage est indisponible à la lecture: %s\n"
-#: speaker-test/speaker-test.c:404
+#: speaker-test/speaker-test.c:539
#, c-format
msgid "Channels count (%i) not available for playbacks: %s\n"
msgstr "Le nombre (%i) de canaux est indisponible à la lecture: %s\n"
-#: speaker-test/speaker-test.c:412
+#: speaker-test/speaker-test.c:547
#, c-format
msgid "Rate %iHz not available for playback: %s\n"
msgstr "La fréquence %iHz est indisponible à la lecture: %s\n"
-#: speaker-test/speaker-test.c:417
+#: speaker-test/speaker-test.c:552
#, c-format
msgid "Rate doesn't match (requested %iHz, get %iHz, err %d)\n"
msgstr ""
"La fréquence ne correspond pas (demandée: %iHz, obtenue %iHz, err %d)\n"
-#: speaker-test/speaker-test.c:421
+#: speaker-test/speaker-test.c:556
#, c-format
msgid "Rate set to %iHz (requested %iHz)\n"
msgstr "La fréquence est %iHz (demandée %iHz)\n"
-#: speaker-test/speaker-test.c:427
+#: speaker-test/speaker-test.c:562
#, c-format
msgid "Buffer size range from %lu to %lu\n"
msgstr "L'intervalle de la taille du tampon est de %lu à %lu\n"
-#: speaker-test/speaker-test.c:428
+#: speaker-test/speaker-test.c:563
#, c-format
msgid "Period size range from %lu to %lu\n"
msgstr "L'intervalle de la taille de la période est de %lu à %lu\n"
-#: speaker-test/speaker-test.c:430
+#: speaker-test/speaker-test.c:565
#, c-format
msgid "Requested period time %u us\n"
msgstr "Temps de période demandé %u µs\n"
-#: speaker-test/speaker-test.c:433
+#: speaker-test/speaker-test.c:568
#, c-format
msgid "Unable to set period time %u us for playback: %s\n"
msgstr "Le temps de période %u µs n'a pas pu être défini pour la lecture: %s\n"
-#: speaker-test/speaker-test.c:439
+#: speaker-test/speaker-test.c:574
#, c-format
msgid "Requested buffer time %u us\n"
msgstr "Temps tampon demandé %u µs\n"
-#: speaker-test/speaker-test.c:442
+#: speaker-test/speaker-test.c:577
#, c-format
msgid "Unable to set buffer time %u us for playback: %s\n"
msgstr "Le temps tampon de %u µs n'a pas pu être définie pour la lecture: %s\n"
-#: speaker-test/speaker-test.c:451
+#: speaker-test/speaker-test.c:586
#, c-format
msgid "Using max buffer size %lu\n"
msgstr "Taille max. de tampon %lu utilisée\n"
-#: speaker-test/speaker-test.c:454
+#: speaker-test/speaker-test.c:589
#, c-format
msgid "Unable to set buffer size %lu for playback: %s\n"
msgstr "La taile de tampon %lu n'a pas pu être définie pour la lecture: %s\n"
-#: speaker-test/speaker-test.c:460
+#: speaker-test/speaker-test.c:595
#, c-format
msgid "Periods = %u\n"
msgstr "Périodes = %u\n"
-#: speaker-test/speaker-test.c:463
+#: speaker-test/speaker-test.c:598
#, c-format
msgid "Unable to set nperiods %u for playback: %s\n"
msgstr "nperiods %u n'a pas pu être défini pour la lecture: %s\n"
-#: speaker-test/speaker-test.c:472
+#: speaker-test/speaker-test.c:607
#, c-format
msgid "Unable to set hw params for playback: %s\n"
msgstr ""
"Les paramètres matériel n'ont pas pu être définis pour la lecture: %s\n"
-#: speaker-test/speaker-test.c:478
+#: speaker-test/speaker-test.c:613
#, c-format
msgid "was set period_size = %lu\n"
msgstr ""
-#: speaker-test/speaker-test.c:479
+#: speaker-test/speaker-test.c:614
#, c-format
msgid "was set buffer_size = %lu\n"
msgstr ""
-#: speaker-test/speaker-test.c:481
+#: speaker-test/speaker-test.c:616
#, c-format
msgid "buffer to small, could not use\n"
msgstr "tampon trop petit, il n'a pas pu être utilisé\n"
-#: speaker-test/speaker-test.c:494
+#: speaker-test/speaker-test.c:629
#, c-format
msgid "Unable to determine current swparams for playback: %s\n"
msgstr ""
"Les paramètres logiciels actuels n'ont pas pu être déterminés pour la "
"lecture: %s\n"
-#: speaker-test/speaker-test.c:501
+#: speaker-test/speaker-test.c:636
#, c-format
msgid "Unable to set start threshold mode for playback: %s\n"
msgstr ""
-#: speaker-test/speaker-test.c:508
+#: speaker-test/speaker-test.c:643
#, c-format
msgid "Unable to set avail min for playback: %s\n"
msgstr ""
-#: speaker-test/speaker-test.c:515
+#: speaker-test/speaker-test.c:650
#, c-format
msgid "Unable to set sw params for playback: %s\n"
msgstr ""
"Les paramètres logiciel n'ont pas pu être définis pour la lecture: %s\n"
-#: speaker-test/speaker-test.c:530
+#: speaker-test/speaker-test.c:670
+#, fuzzy, c-format
+msgid "Unable to set channel map: %s\n"
+msgstr ""
+"Les paramètres matériel n'ont pas pu être définis pour la lecture: %s\n"
+
+#: speaker-test/speaker-test.c:695
#, c-format
msgid "Can't recovery from underrun, prepare failed: %s\n"
msgstr ""
-#: speaker-test/speaker-test.c:541
+#: speaker-test/speaker-test.c:706
#, c-format
msgid "Can't recovery from suspend, prepare failed: %s\n"
msgstr ""
-#: speaker-test/speaker-test.c:605 speaker-test/speaker-test.c:1025
+#: speaker-test/speaker-test.c:770 speaker-test/speaker-test.c:1261
#, c-format
msgid "No enough memory\n"
msgstr "Pas assez de mémoire\n"
-#: speaker-test/speaker-test.c:610
+#: speaker-test/speaker-test.c:775
#, c-format
msgid "Cannot open WAV file %s\n"
msgstr "Le fichier WAV %s n'a pas pu être ouvert\n"
-#: speaker-test/speaker-test.c:614 speaker-test/speaker-test.c:643
+#: speaker-test/speaker-test.c:779 speaker-test/speaker-test.c:808
#, c-format
msgid "Invalid WAV file %s\n"
msgstr "Fichier WAV incorrect %s\n"
-#: speaker-test/speaker-test.c:619
+#: speaker-test/speaker-test.c:784
#, c-format
msgid "Not a WAV file: %s\n"
msgstr "Le fichier %s n'est pas au format WAV\n"
-#: speaker-test/speaker-test.c:623
+#: speaker-test/speaker-test.c:788
#, c-format
msgid "Unsupported WAV format %d for %s\n"
msgstr "Format WAV %d non supporté pour %s\n"
-#: speaker-test/speaker-test.c:628
+#: speaker-test/speaker-test.c:793
#, c-format
msgid "%s is not a mono stream (%d channels)\n"
msgstr "%s n'est pas un flux en mono (%d canaux)\n"
-#: speaker-test/speaker-test.c:633
+#: speaker-test/speaker-test.c:798
#, c-format
msgid "Sample rate doesn't match (%d) for %s\n"
msgstr "La fréquence d'échantillonage (%d) ne correspond pas à %s\n"
-#: speaker-test/speaker-test.c:638
+#: speaker-test/speaker-test.c:803
#, c-format
msgid "Unsupported sample format bits %d for %s\n"
msgstr "Le format d'échantillonage %d bits n'est pas supporté pour %s\n"
-#: speaker-test/speaker-test.c:688
+#: speaker-test/speaker-test.c:864
#, c-format
msgid "Undefined channel %d\n"
msgstr "Canal non-défini %d\n"
-#: speaker-test/speaker-test.c:739
+#: speaker-test/speaker-test.c:915
#, c-format
msgid "Write error: %d,%s\n"
msgstr "Erreur en écriture: %d,%s\n"
-#: speaker-test/speaker-test.c:741
+#: speaker-test/speaker-test.c:917
#, c-format
msgid "xrun_recovery failed: %d,%s\n"
msgstr ""
-#: speaker-test/speaker-test.c:803
-#, c-format
+#: speaker-test/speaker-test.c:1003
+#, fuzzy, c-format
msgid ""
"Usage: speaker-test [OPTION]... \n"
"-h,--help\thelp\n"
"-s,--speaker\tsingle speaker test. Values 1=Left, 2=right, etc\n"
"-w,--wavfile\tUse the given WAV file as a test sound\n"
"-W,--wavdir\tSpecify the directory containing WAV files\n"
+"-m,--chmap\tSpecify the channel map to override\n"
+"-X,--force-frequency\tforce frequencies outside the 30-8000hz range\n"
"\n"
msgstr ""
"Utilisation: speaker-test [OPTION]...\n"
"\t\tValeurs 1=Gauche, 2=Droite, et c.\n"
"-w,--wavfile\tUtiliser le fichier WAV spécifié pour le test\n"
"-w,--wavdir\tSpécifier le répertoire contenant les fichiers WAV\n"
+"-X,--force-frequency\tpermettre fréquences en dehors de la gamme 30-8000Hz\n"
"\n"
-#: speaker-test/speaker-test.c:921
+#: speaker-test/speaker-test.c:1132
#, c-format
msgid "Invalid number of periods %d\n"
msgstr "Nombre de périodes %d incorrect\n"
-#: speaker-test/speaker-test.c:937 speaker-test/speaker-test.c:941
+#: speaker-test/speaker-test.c:1148 speaker-test/speaker-test.c:1152
#, c-format
msgid "Invalid test type %s\n"
msgstr "Type de test %s incorrect\n"
-#: speaker-test/speaker-test.c:953
+#: speaker-test/speaker-test.c:1164
#, c-format
msgid "Invalid parameter for -s option.\n"
msgstr "Paramètre incorrect pour l'option -s.\n"
-#: speaker-test/speaker-test.c:967
+#: speaker-test/speaker-test.c:1186
#, c-format
msgid "Unknown option '%c'\n"
msgstr "Option '%c' inconnue\n"
-#: speaker-test/speaker-test.c:981
+#: speaker-test/speaker-test.c:1207
#, c-format
msgid "Playback device is %s\n"
msgstr "Le périphérique de lecture est %s\n"
-#: speaker-test/speaker-test.c:982
+#: speaker-test/speaker-test.c:1208
#, c-format
msgid "Stream parameters are %iHz, %s, %i channels\n"
msgstr "Les paramètres du flux sont %iHz, %s, %i canaux\n"
-#: speaker-test/speaker-test.c:985
+#: speaker-test/speaker-test.c:1211
#, c-format
msgid "Using 16 octaves of pink noise\n"
msgstr "Utilisation de 16 octaves de 'pink noise'\n"
-#: speaker-test/speaker-test.c:988
+#: speaker-test/speaker-test.c:1214
#, c-format
msgid "Sine wave rate is %.4fHz\n"
msgstr "La fréquence de la courbe sinus est %.4fHz\n"
-#: speaker-test/speaker-test.c:991
+#: speaker-test/speaker-test.c:1217
#, c-format
msgid "WAV file(s)\n"
msgstr "fichier(s) WAV\n"
-#: speaker-test/speaker-test.c:997
+#: speaker-test/speaker-test.c:1227
#, c-format
msgid "Playback open error: %d,%s\n"
msgstr "Erreur d'ouverture à la lecture: %d,%s\n"
-#: speaker-test/speaker-test.c:1002
+#: speaker-test/speaker-test.c:1233
#, c-format
msgid "Setting of hwparams failed: %s\n"
msgstr "Échec de la configuration des paramètres matériel: %s\n"
-#: speaker-test/speaker-test.c:1007
+#: speaker-test/speaker-test.c:1237
#, c-format
msgid "Setting of swparams failed: %s\n"
msgstr "Échec de la configuration des paramètres logiciel: %s\n"
-#: speaker-test/speaker-test.c:1056 speaker-test/speaker-test.c:1078
+#: speaker-test/speaker-test.c:1284 speaker-test/speaker-test.c:1306
#, c-format
msgid "Transfer failed: %s\n"
msgstr "Échec du transfer: %s\n"
-#: speaker-test/speaker-test.c:1066
+#: speaker-test/speaker-test.c:1292
#, c-format
msgid "Time per period = %lf\n"
msgstr "Temps par période = %lf\n"
+
+#~ msgid "Warning: format is changed to S16_LE\n"
+#~ msgstr "Avertissement: le format est changé en S16_LE\n"
+
+#~ msgid "Warning: format is changed to S24_3LE\n"
+#~ msgstr "Avertissement: le format est changé en S24_3LE\n"
+
+#~ msgid "Warning: format is changed to S24_LE\n"
+#~ msgstr "Avertissement: le format est changé en S24_LE\n"
msgstr ""
"Project-Id-Version: alsa-utils 1.0.9a\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2012-09-06 10:45+0200\n"
+"POT-Creation-Date: 2014-06-13 19:24+0200\n"
"PO-Revision-Date: 2009-05-27 15:08+0200\n"
"Last-Translator: Takashi Iwai <tiwai@suse.de>\n"
"Language-Team: Japanese\n"
msgid "Rear"
msgstr "リア"
-#: alsamixer/mixer_display.c:598 speaker-test/speaker-test.c:108
+#: alsamixer/mixer_display.c:598 speaker-test/speaker-test.c:124
msgid "Center"
msgstr "センター"
msgid "Side"
msgstr "サイド"
-#: alsamixer/mixer_widget.c:95 alsamixer/mixer_widget.c:100
+#: alsamixer/mixer_widget.c:91 alsamixer/mixer_widget.c:96
msgid "cannot open mixer"
msgstr "ミキサーを開けません"
-#: alsamixer/mixer_widget.c:106 alsamixer/mixer_widget.c:183
+#: alsamixer/mixer_widget.c:102 alsamixer/mixer_widget.c:179
msgid "cannot load mixer controls"
msgstr "ミキサーをロードできません"
-#: alsamixer/mixer_widget.c:173
+#: alsamixer/mixer_widget.c:169
#, c-format
msgid "Cannot open mixer device '%s'."
msgstr "ミキサーデバイス'%s'を開けません"
-#: alsamixer/mixer_widget.c:194
+#: alsamixer/mixer_widget.c:190
msgid "Esc Exit"
msgstr "Esc 終了"
-#: alsamixer/mixer_widget.c:195
+#: alsamixer/mixer_widget.c:191
msgid "F1 ? H Help"
msgstr "F1 ? H ヘルプ"
-#: alsamixer/mixer_widget.c:196
+#: alsamixer/mixer_widget.c:192
msgid "F2 / System information"
msgstr "F2 / システム情報"
-#: alsamixer/mixer_widget.c:197
+#: alsamixer/mixer_widget.c:193
msgid "F3 Show playback controls"
msgstr "F3 再生ミキサー表示"
-#: alsamixer/mixer_widget.c:198
+#: alsamixer/mixer_widget.c:194
msgid "F4 Show capture controls"
msgstr "F4 録音ミキサー表示"
-#: alsamixer/mixer_widget.c:199
+#: alsamixer/mixer_widget.c:195
msgid "F5 Show all controls"
msgstr "F5 全て表示"
-#: alsamixer/mixer_widget.c:200
+#: alsamixer/mixer_widget.c:196
msgid "Tab Toggle view mode (F3/F4/F5)"
msgstr "Tab 表示モード変更 (F3/F4/F5)"
-#: alsamixer/mixer_widget.c:201
+#: alsamixer/mixer_widget.c:197
msgid "F6 S Select sound card"
msgstr "F5 S サウンドカード選択"
-#: alsamixer/mixer_widget.c:202
+#: alsamixer/mixer_widget.c:198
msgid "L Redraw screen"
msgstr "L 画面再描画"
-#: alsamixer/mixer_widget.c:204
+#: alsamixer/mixer_widget.c:200
msgid "Left Move to the previous control"
msgstr "← 前の項目に移る"
-#: alsamixer/mixer_widget.c:205
+#: alsamixer/mixer_widget.c:201
msgid "Right Move to the next control"
msgstr "→ 次の項目に移る"
# ↑
-#: alsamixer/mixer_widget.c:207
+#: alsamixer/mixer_widget.c:203
msgid "Up/Down Change volume"
msgstr "↑/↓ 音量変更"
-#: alsamixer/mixer_widget.c:208
+#: alsamixer/mixer_widget.c:204
msgid "+ - Change volume"
msgstr "+ - 音量変更"
-#: alsamixer/mixer_widget.c:209
+#: alsamixer/mixer_widget.c:205
msgid "Page Up/Dn Change volume in big steps"
msgstr "Page Up/dn 音量変更"
-#: alsamixer/mixer_widget.c:210
+#: alsamixer/mixer_widget.c:206
msgid "End Set volume to 0%"
msgstr "End 音量 0%"
-#: alsamixer/mixer_widget.c:211
+#: alsamixer/mixer_widget.c:207
msgid "0-9 Set volume to 0%-90%"
msgstr "0-9 音量 0%-90%"
-#: alsamixer/mixer_widget.c:212
+#: alsamixer/mixer_widget.c:208
msgid "Q W E Increase left/both/right volumes"
msgstr "Q W E 左/両/右音量アップ"
#. TRANSLATORS: or Y instead of Z
-#: alsamixer/mixer_widget.c:214
+#: alsamixer/mixer_widget.c:210
msgid "Z X C Decrease left/both/right volumes"
msgstr "Z X C 左/両/右音量ダウン"
-#: alsamixer/mixer_widget.c:215
+#: alsamixer/mixer_widget.c:211
msgid "B Balance left and right volumes"
msgstr "B 左右音量を平均化する"
-#: alsamixer/mixer_widget.c:217
+#: alsamixer/mixer_widget.c:213
msgid "M Toggle mute"
msgstr "M ミュートをトグル"
#. TRANSLATORS: or , .
-#: alsamixer/mixer_widget.c:219
+#: alsamixer/mixer_widget.c:215
msgid "< > Toggle left/right mute"
msgstr "< > 左/右ミュートをトグル"
-#: alsamixer/mixer_widget.c:221
+#: alsamixer/mixer_widget.c:217
msgid "Space Toggle capture"
msgstr "スペース 録音をトグル"
#. TRANSLATORS: or Insert Delete
-#: alsamixer/mixer_widget.c:223
+#: alsamixer/mixer_widget.c:219
msgid "; ' Toggle left/right capture"
msgstr "; ' 左/右録音をトグル"
-#: alsamixer/mixer_widget.c:225
+#: alsamixer/mixer_widget.c:221
msgid "Authors:"
msgstr "作者:"
-#: alsamixer/mixer_widget.c:226
+#: alsamixer/mixer_widget.c:222
msgid " Tim Janik"
msgstr ""
-#: alsamixer/mixer_widget.c:227
+#: alsamixer/mixer_widget.c:223
msgid " Jaroslav Kysela <perex@perex.cz>"
msgstr ""
-#: alsamixer/mixer_widget.c:228
+#: alsamixer/mixer_widget.c:224
msgid " Clemens Ladisch <clemens@ladisch.de>"
msgstr ""
-#: alsamixer/mixer_widget.c:230
+#: alsamixer/mixer_widget.c:226
msgid "Help"
msgstr "ヘルプ"
msgid "Cannot open file \"%s\"."
msgstr "\"%s\"をオープンできません"
-#: aplay/aplay.c:165
+#: aplay/aplay.c:175
msgid "raw data"
msgstr "raw データ"
-#: aplay/aplay.c:166
+#: aplay/aplay.c:176
msgid "VOC"
msgstr "VOC"
-#: aplay/aplay.c:168
+#: aplay/aplay.c:178
msgid "WAVE"
msgstr "WAVE"
-#: aplay/aplay.c:169
+#: aplay/aplay.c:179
msgid "Sparc Audio"
msgstr "Sparc オーディオ"
-#: aplay/aplay.c:190
+#: aplay/aplay.c:200
#, fuzzy, c-format
msgid ""
"Usage: %s [OPTION]... [FILE]...\n"
"-V, --vumeter=TYPE enable VU meter (TYPE: mono or stereo)\n"
"-I, --separate-channels one file for each channel\n"
"-i, --interactive allow interactive operation from stdin\n"
+"-m, --chmap=ch1,ch2,.. Give the channel map to override or follow\n"
" --disable-resample disable automatic rate resample\n"
" --disable-channels disable automatic channel conversions\n"
" --disable-format disable automatic format conversions\n"
" テスト範囲: coef * (buffer_size / 2)\n"
" --test-nowait リングバッファのウエイトを禁止 - 注意:高CPU負荷\n"
-#: aplay/aplay.c:232 speaker-test/speaker-test.c:819
+#: aplay/aplay.c:244 speaker-test/speaker-test.c:1021
#, c-format
msgid "Recognized sample formats are:"
msgstr "認識されるサンプルフォーマット:"
-#: aplay/aplay.c:238
+#: aplay/aplay.c:250
#, c-format
msgid ""
"\n"
"\n"
"これらのいくつかは指定のハードウェアで使用不可能な場合があります\n"
-#: aplay/aplay.c:239
-#, c-format
-msgid "The availabled format shortcuts are:\n"
+#: aplay/aplay.c:251
+#, fuzzy, c-format
+msgid "The available format shortcuts are:\n"
msgstr "可能なフォーマットの省略形:\n"
-#: aplay/aplay.c:240
+#: aplay/aplay.c:252
#, c-format
msgid "-f cd (16 bit little endian, 44100, stereo)\n"
msgstr "-f cd (16 ビット、リトルエンディアン、44100、ステレオ)\n"
-#: aplay/aplay.c:241
+#: aplay/aplay.c:253
#, c-format
msgid "-f cdr (16 bit big endian, 44100, stereo)\n"
msgstr "-f cdr (16 ビット、ビッグエンディアン、44100、ステレオ)\n"
-#: aplay/aplay.c:242
+#: aplay/aplay.c:254
#, c-format
msgid "-f dat (16 bit little endian, 48000, stereo)\n"
msgstr "-f dat (16 ビット、リトルエンディアン、48000、ステレオ)\n"
-#: aplay/aplay.c:256
+#: aplay/aplay.c:268
msgid "no soundcards found..."
msgstr "サウンドカードが見つかりません..."
-#: aplay/aplay.c:259
+#: aplay/aplay.c:271
#, c-format
msgid "**** List of %s Hardware Devices ****\n"
msgstr "**** ハードウェアデバイス %s のリスト ****\n"
-#: aplay/aplay.c:288
+#: aplay/aplay.c:300
#, c-format
msgid "card %i: %s [%s], device %i: %s [%s]\n"
msgstr "カード %i: %s [%s], デバイス %i: %s [%s]\n"
-#: aplay/aplay.c:294
+#: aplay/aplay.c:306
#, c-format
msgid " Subdevices: %i/%i\n"
msgstr " サブデバイス: %i/%i\n"
-#: aplay/aplay.c:301
+#: aplay/aplay.c:313
#, c-format
msgid " Subdevice #%i: %s\n"
msgstr " サブデバイス #%i: %s\n"
-#: aplay/aplay.c:384
+#: aplay/aplay.c:394
#, c-format
msgid "Aborted by signal %s...\n"
msgstr "シグナル %s で中断...\n"
-#: aplay/aplay.c:500
+#: aplay/aplay.c:512
msgid "command should be named either arecord or aplay"
msgstr "arecord または aplay コマンドのみ可能"
-#: aplay/aplay.c:539
+#: aplay/aplay.c:556
#, c-format
msgid "unrecognized file format %s"
msgstr "不正なファイルフォーマット %s"
-#: aplay/aplay.c:546
+#: aplay/aplay.c:563
#, c-format
msgid "value %i for channels is invalid"
msgstr "不正なチャネル数 %i"
-#: aplay/aplay.c:565
+#: aplay/aplay.c:582
#, c-format
msgid "wrong extended format '%s'"
msgstr "不正な拡張フォーマット '%s'"
-#: aplay/aplay.c:576
+#: aplay/aplay.c:593
#, c-format
msgid "bad speed value %i"
msgstr "不正なレート値 %i"
-#: aplay/aplay.c:680
+#: aplay/aplay.c:700 speaker-test/speaker-test.c:665
+#, fuzzy, c-format
+msgid "Unable to parse channel map string: %s\n"
+msgstr "avail_min を設定できません: %s\n"
+
+#: aplay/aplay.c:706
#, c-format
msgid "Try `%s --help' for more information.\n"
msgstr "より詳しい情報は「%s --help」を実行してください\n"
-#: aplay/aplay.c:696
+#: aplay/aplay.c:722
#, c-format
msgid "audio open error: %s"
msgstr ""
-#: aplay/aplay.c:701
+#: aplay/aplay.c:727
#, c-format
msgid "info error: %s"
msgstr ""
-#: aplay/aplay.c:708
+#: aplay/aplay.c:734
#, c-format
msgid "nonblock setting error: %s"
msgstr ""
-#: aplay/aplay.c:718 aplay/aplay.c:842 aplay/aplay.c:1217
+#: aplay/aplay.c:744 aplay/aplay.c:868 aplay/aplay.c:1158 aplay/aplay.c:1351
+#: aplay/aplay.c:1867 aplay/aplay.c:1897
msgid "not enough memory"
msgstr "メモリが足りません"
-#: aplay/aplay.c:742
+#: aplay/aplay.c:768
#, fuzzy, c-format
msgid "Cannot create process ID file %s: %s"
msgstr "WAVファイルがオープンできません: %s\n"
-#: aplay/aplay.c:832
+#: aplay/aplay.c:858
#, c-format
msgid "read error (called from line %i)"
msgstr "リードエラー (%i 行)"
-#: aplay/aplay.c:890
+#: aplay/aplay.c:925
#, c-format
msgid "unknown length of 'fmt ' chunk (read %u, should be %u at least)"
msgstr ""
-#: aplay/aplay.c:900
+#: aplay/aplay.c:936
#, c-format
msgid ""
"unknown length of extensible 'fmt ' chunk (read %u, should be %u at least)"
msgstr ""
-#: aplay/aplay.c:905
+#: aplay/aplay.c:941
msgid "wrong format tag in extensible 'fmt ' chunk"
msgstr ""
-#: aplay/aplay.c:912
+#: aplay/aplay.c:948
#, c-format
msgid "can't play WAVE-file format 0x%04x which is not PCM or FLOAT encoded"
msgstr ""
-#: aplay/aplay.c:916
+#: aplay/aplay.c:953
#, c-format
msgid "can't play WAVE-files with %d tracks"
msgstr "%d トラックを含む WAVE ファイルは再生できません"
-#: aplay/aplay.c:924 aplay/aplay.c:1024
+#: aplay/aplay.c:961 aplay/aplay.c:1087
#, c-format
msgid "Warning: format is changed to U8\n"
msgstr "警告: フォーマットは U8 に変更されます\n"
-#: aplay/aplay.c:930
-#, c-format
-msgid "Warning: format is changed to S16_LE\n"
-msgstr "警告: フォーマットは S16_LE に変更されます\n"
-
-#: aplay/aplay.c:938
-#, c-format
-msgid "Warning: format is changed to S24_3LE\n"
-msgstr "警告: フォーマットは S24_3LE に変更されます\n"
-
-#: aplay/aplay.c:944
-#, c-format
-msgid "Warning: format is changed to S24_LE\n"
-msgstr "警告: フォーマットは S24_LE に変更されます\n"
+#: aplay/aplay.c:971 aplay/aplay.c:984 aplay/aplay.c:995
+#, fuzzy, c-format
+msgid "Warning: format is changed to %s\n"
+msgstr "警告: フォーマットは U8 に変更されます\n"
-#: aplay/aplay.c:948
+#: aplay/aplay.c:1000
#, c-format
msgid ""
" can't play WAVE-files with sample %d bits in %d bytes wide (%d channels)"
"%2$d バイト長 %1$d サンプルビット (%3$d チャネル) の WAVE ファイルは再生でき"
"ません"
-#: aplay/aplay.c:960
+#: aplay/aplay.c:1023
#, c-format
msgid " can't play WAVE-files with sample %d bits wide"
msgstr "%d ビット長のサンプルの WAVE ファイルは再生できません"
-#: aplay/aplay.c:1018
+#: aplay/aplay.c:1081
#, c-format
msgid "Warning: format is changed to MU_LAW\n"
msgstr "警告: フォーマットは MU_LAW に変更されます\n"
-#: aplay/aplay.c:1030
+#: aplay/aplay.c:1093
#, c-format
msgid "Warning: format is changed to S16_BE\n"
msgstr "警告: フォーマットは S16_BE に変更されます\n"
-#: aplay/aplay.c:1043 aplay/aplay.c:1980 aplay/aplay.c:1987 aplay/aplay.c:2510
-#: aplay/aplay.c:2522
+#: aplay/aplay.c:1106 aplay/aplay.c:2182 aplay/aplay.c:2189 aplay/aplay.c:2715
+#: aplay/aplay.c:2727
msgid "read error"
msgstr "リードエラー"
-#: aplay/aplay.c:1073
+#: aplay/aplay.c:1136
+msgid "Channel numbers don't match between hw_params and channel map"
+msgstr ""
+
+#: aplay/aplay.c:1145
+#, c-format
+msgid "Warning: unable to get channel map\n"
+msgstr ""
+
+#: aplay/aplay.c:1178
+#, c-format
+msgid "Channel %d doesn't match with hw_parmas"
+msgstr ""
+
+#: aplay/aplay.c:1204
msgid "Broken configuration for this PCM: no configurations available"
msgstr "指定の PCM を使用できません: 設定がありません"
-#: aplay/aplay.c:1077
+#: aplay/aplay.c:1208
#, c-format
msgid "HW Params of device \"%s\":\n"
msgstr ""
-#: aplay/aplay.c:1097
+#: aplay/aplay.c:1228
msgid "Access type not available"
msgstr "アクセスタイプが使用不可能"
-#: aplay/aplay.c:1102
+#: aplay/aplay.c:1233
msgid "Sample format non available"
msgstr "サンプルフォーマットが使用不可能"
-#: aplay/aplay.c:1108
+#: aplay/aplay.c:1239
msgid "Channels count non available"
msgstr "チャネル数が使用不可能"
-#: aplay/aplay.c:1123
+#: aplay/aplay.c:1254
#, c-format
msgid "Warning: rate is not accurate (requested = %iHz, got = %iHz)\n"
msgstr "警告: レートが不正確です (要求値 = %iHz, 使用値 = %iHz)\n"
-#: aplay/aplay.c:1129
+#: aplay/aplay.c:1260
#, c-format
msgid " please, try the plug plugin %s\n"
msgstr " plug プラグイン%s を使用してください\n"
-#: aplay/aplay.c:1166
+#: aplay/aplay.c:1297
msgid "Unable to install hw params:"
msgstr "hw params のインストールに失敗しました:"
-#: aplay/aplay.c:1173
+#: aplay/aplay.c:1304
#, c-format
msgid "Can't use period equal to buffer size (%lu == %lu)"
msgstr "period と buffer サイズには同じ値を使用できません (%lu == %lu)"
-#: aplay/aplay.c:1204
+#: aplay/aplay.c:1335
msgid "unable to install sw params:"
msgstr "sw params のインストールに失敗しました:"
-#: aplay/aplay.c:1235
+#: aplay/aplay.c:1369
#, c-format
msgid "snd_pcm_mmap_begin problem: %s"
msgstr ""
-#: aplay/aplay.c:1260
+#: aplay/aplay.c:1398
#, c-format
msgid "stdin O_NONBLOCK flag setup failed\n"
msgstr ""
-#: aplay/aplay.c:1284
+#: aplay/aplay.c:1422
#, c-format
msgid "\rPAUSE command ignored (no hw support)\n"
msgstr ""
-#: aplay/aplay.c:1289
+#: aplay/aplay.c:1427
#, fuzzy, c-format
msgid "pause push error: %s"
msgstr "ステータスエラー: %s"
-#: aplay/aplay.c:1298
+#: aplay/aplay.c:1436
#, fuzzy, c-format
msgid "pause release error: %s"
msgstr "サスペンド: prepare エラー: %s"
-#: aplay/aplay.c:1314
+#: aplay/aplay.c:1452
#, c-format
msgid ""
"\r=== PAUSE === "
msgstr ""
-#: aplay/aplay.c:1356
+#: aplay/aplay.c:1494
#, c-format
msgid "status error: %s"
msgstr "ステータスエラー: %s"
-#: aplay/aplay.c:1361
+#: aplay/aplay.c:1499
#, c-format
msgid "fatal %s: %s"
msgstr ""
-#: aplay/aplay.c:1362 aplay/aplay.c:1373 aplay/aplay.c:1376 aplay/aplay.c:1384
+#: aplay/aplay.c:1500 aplay/aplay.c:1511 aplay/aplay.c:1514 aplay/aplay.c:1522
msgid "underrun"
msgstr "アンダーラン"
-#: aplay/aplay.c:1362 aplay/aplay.c:1373 aplay/aplay.c:1384
+#: aplay/aplay.c:1500 aplay/aplay.c:1511 aplay/aplay.c:1522
msgid "overrun"
msgstr "オーバーラン"
-#: aplay/aplay.c:1372 aplay/aplay.c:1383
+#: aplay/aplay.c:1510 aplay/aplay.c:1521
#, c-format
msgid "%s!!! (at least %.3f ms long)\n"
msgstr "%s!!! (少なくとも %.3f ms)\n"
-#: aplay/aplay.c:1388
+#: aplay/aplay.c:1526
#, c-format
msgid "Status:\n"
msgstr "ステータス:\n"
-#: aplay/aplay.c:1392
+#: aplay/aplay.c:1530
#, c-format
msgid "xrun: prepare error: %s"
msgstr ""
-#: aplay/aplay.c:1398
+#: aplay/aplay.c:1536
#, c-format
msgid "Status(DRAINING):\n"
msgstr "ステータス(DRAINING):\n"
-#: aplay/aplay.c:1402
+#: aplay/aplay.c:1540
#, c-format
msgid "capture stream format change? attempting recover...\n"
msgstr "録音ストリームのフォーマットが変更? 修復を試みます...\n"
-#: aplay/aplay.c:1404
+#: aplay/aplay.c:1542
#, c-format
msgid "xrun(DRAINING): prepare error: %s"
msgstr ""
-#: aplay/aplay.c:1411
+#: aplay/aplay.c:1549
#, c-format
msgid "Status(R/W):\n"
msgstr "ステータス(R/W):\n"
-#: aplay/aplay.c:1414
+#: aplay/aplay.c:1552
#, c-format
msgid "read/write error, state = %s"
msgstr "読み書きエラー, ステータス = %s"
-#: aplay/aplay.c:1424
+#: aplay/aplay.c:1562
#, c-format
msgid "Suspended. Trying resume. "
msgstr "サスペンド中です。レジュームします。"
-#: aplay/aplay.c:1429
+#: aplay/aplay.c:1567
#, c-format
msgid "Failed. Restarting stream. "
msgstr "失敗しました。ストリームを再スタートします。"
-#: aplay/aplay.c:1431
+#: aplay/aplay.c:1569
#, c-format
msgid "suspend: prepare error: %s"
msgstr "サスペンド: prepare エラー: %s"
-#: aplay/aplay.c:1436
+#: aplay/aplay.c:1574
#, c-format
msgid "Done.\n"
msgstr "終了\n"
-#: aplay/aplay.c:1458
+#: aplay/aplay.c:1596
#, c-format
msgid " !clip "
msgstr ""
-#: aplay/aplay.c:1605
+#: aplay/aplay.c:1743
#, c-format
msgid "Unsupported bit size %d.\n"
msgstr ""
-#: aplay/aplay.c:1639
+#: aplay/aplay.c:1777
#, c-format
msgid "Max peak (%li samples): 0x%08x "
msgstr "最大ピーク (%li サンプル): 0x%08x "
-#: aplay/aplay.c:1673
+#: aplay/aplay.c:1811
#, c-format
msgid ""
"Suspicious buffer position (%li total): avail = %li, delay = %li, buffer = "
"%li\n"
msgstr ""
-#: aplay/aplay.c:1737
+#: aplay/aplay.c:1939
#, c-format
msgid "write error: %s"
msgstr "書込エラー: %s"
-#: aplay/aplay.c:1784
+#: aplay/aplay.c:1987
#, c-format
msgid "writev error: %s"
msgstr "書込(writev)エラー: %s"
-#: aplay/aplay.c:1828
+#: aplay/aplay.c:2031
#, c-format
msgid "read error: %s"
msgstr "読込エラー: %s"
-#: aplay/aplay.c:1872
+#: aplay/aplay.c:2075
#, c-format
msgid "readv error: %s"
msgstr "読込(readv)エラー: %s"
-#: aplay/aplay.c:1920
+#: aplay/aplay.c:2123
msgid "can't allocate buffer for silence"
msgstr "サイレンス用のバッファの取得に失敗しました"
-#: aplay/aplay.c:1929 aplay/aplay.c:2155 aplay/aplay.c:2160 aplay/aplay.c:2207
-#: aplay/aplay.c:2216 aplay/aplay.c:2223 aplay/aplay.c:2233 aplay/aplay.c:2239
-#: aplay/aplay.c:2311 aplay/aplay.c:2341 aplay/aplay.c:2355
+#: aplay/aplay.c:2132 aplay/aplay.c:2360 aplay/aplay.c:2365 aplay/aplay.c:2412
+#: aplay/aplay.c:2421 aplay/aplay.c:2428 aplay/aplay.c:2438 aplay/aplay.c:2444
+#: aplay/aplay.c:2516 aplay/aplay.c:2546 aplay/aplay.c:2560
msgid "write error"
msgstr "書込エラー"
-#: aplay/aplay.c:1942
+#: aplay/aplay.c:2145
#, c-format
msgid "voc_pcm_flush - silence error"
msgstr ""
-#: aplay/aplay.c:1945
+#: aplay/aplay.c:2148
msgid "voc_pcm_flush error"
msgstr ""
-#: aplay/aplay.c:1971
+#: aplay/aplay.c:2173
msgid "malloc error"
msgstr "malloc エラー"
-#: aplay/aplay.c:1975
+#: aplay/aplay.c:2177
#, c-format
msgid "Playing Creative Labs Channel file '%s'...\n"
msgstr "Creative Labs Channel ファイル '%s' を演奏中...\n"
-#: aplay/aplay.c:2043 aplay/aplay.c:2135
+#: aplay/aplay.c:2245 aplay/aplay.c:2340
msgid "can't play packed .voc files"
msgstr "packed .voc ファイルは演奏できません"
-#: aplay/aplay.c:2095
+#: aplay/aplay.c:2300
#, c-format
msgid "can't play loops; %s isn't seekable\n"
msgstr "ループ演奏できません。%s はシーク不可能です\n"
-#: aplay/aplay.c:2144
+#: aplay/aplay.c:2349
#, c-format
msgid "unknown blocktype %d. terminate."
msgstr "未知のブロックタイプ %d: 終了します。"
-#: aplay/aplay.c:2275
+#: aplay/aplay.c:2480
#, c-format
msgid "Wave doesn't support %s format..."
msgstr "WAVE は %s フォーマットをサポートしません..."
-#: aplay/aplay.c:2335
+#: aplay/aplay.c:2540
#, c-format
msgid "Sparc Audio doesn't support %s format..."
msgstr "Sparc オーディオは %s フォーマットをサポートしません..."
-#: aplay/aplay.c:2416
+#: aplay/aplay.c:2621
msgid "Playing"
msgstr "再生中"
-#: aplay/aplay.c:2416
+#: aplay/aplay.c:2621
msgid "Recording"
msgstr "録音中"
-#: aplay/aplay.c:2420
+#: aplay/aplay.c:2625
#, c-format
msgid "Rate %d Hz, "
msgstr "レート %d Hz, "
-#: aplay/aplay.c:2422
+#: aplay/aplay.c:2627
#, c-format
msgid "Mono"
msgstr "モノラル"
-#: aplay/aplay.c:2424
+#: aplay/aplay.c:2629
#, c-format
msgid "Stereo"
msgstr "ステレオ"
-#: aplay/aplay.c:2426
+#: aplay/aplay.c:2631
#, c-format
msgid "Channels %i"
msgstr "チャネル数 %i"
-#: aplay/aplay.c:2937 aplay/aplay.c:2990
+#: aplay/aplay.c:3145 aplay/aplay.c:3198
#, c-format
msgid "You need to specify %d files"
msgstr "%d 個のファイルを指定してください"
msgid "kernel"
msgstr "カーネル"
-#: seq/aconnect/aconnect.c:307
+#: seq/aconnect/aconnect.c:308
#, c-format
msgid "can't open sequencer\n"
msgstr "sequencer をオープンできません\n"
-#: seq/aconnect/aconnect.c:335
+#: seq/aconnect/aconnect.c:336
#, c-format
msgid "can't get client id\n"
msgstr "クライアント ID を取得できません\n"
-#: seq/aconnect/aconnect.c:342
+#: seq/aconnect/aconnect.c:343
#, c-format
msgid "can't set client info\n"
msgstr "クライアント情報を取得できません\n"
-#: seq/aconnect/aconnect.c:349
+#: seq/aconnect/aconnect.c:350
#, c-format
msgid "invalid sender address %s\n"
msgstr "送信アドレスが不正です: %s\n"
-#: seq/aconnect/aconnect.c:354 seq/aseqnet/aseqnet.c:290
+#: seq/aconnect/aconnect.c:355 seq/aseqnet/aseqnet.c:290
#, c-format
msgid "invalid destination address %s\n"
msgstr "受信アドレスが不正です: %s\n"
-#: seq/aconnect/aconnect.c:368
+#: seq/aconnect/aconnect.c:369
#, c-format
msgid "No subscription is found\n"
msgstr "接続が見つかりません\n"
-#: seq/aconnect/aconnect.c:373
+#: seq/aconnect/aconnect.c:374
#, c-format
msgid "Disconnection failed (%s)\n"
msgstr "切り離しに失敗 (%s)\n"
-#: seq/aconnect/aconnect.c:379
+#: seq/aconnect/aconnect.c:380
#, c-format
msgid "Connection is already subscribed\n"
msgstr "既に接続されています\n"
-#: seq/aconnect/aconnect.c:384
+#: seq/aconnect/aconnect.c:385
#, c-format
msgid "Connection failed (%s)\n"
msgstr "接続に失敗 (%s)\n"
msgstr "オプション:\n"
#: seq/aseqnet/aseqnet.c:170
-#, c-format
-msgid " -p,--port # : sepcify TCP port (digit or service name)\n"
+#, fuzzy, c-format
+msgid " -p,--port # : specify TCP port (digit or service name)\n"
msgstr " -p,--port # : TCP ポートの指定 (数字またはサービス名)\n"
#: seq/aseqnet/aseqnet.c:171
msgid "disconnected\n"
msgstr "切り離し\n"
-#: speaker-test/speaker-test.c:104
+#: speaker-test/speaker-test.c:120
msgid "Front Left"
msgstr ""
-#: speaker-test/speaker-test.c:105
+#: speaker-test/speaker-test.c:121
msgid "Front Right"
msgstr ""
-#: speaker-test/speaker-test.c:106
+#: speaker-test/speaker-test.c:122
msgid "Rear Left"
msgstr ""
-#: speaker-test/speaker-test.c:107
+#: speaker-test/speaker-test.c:123
msgid "Rear Right"
msgstr ""
-#: speaker-test/speaker-test.c:109
+#: speaker-test/speaker-test.c:125
msgid "LFE"
msgstr ""
-#: speaker-test/speaker-test.c:110
+#: speaker-test/speaker-test.c:126
msgid "Side Left"
msgstr ""
-#: speaker-test/speaker-test.c:111
+#: speaker-test/speaker-test.c:127
msgid "Side Right"
msgstr ""
-#: speaker-test/speaker-test.c:112
+#: speaker-test/speaker-test.c:128
msgid "Channel 9"
msgstr ""
-#: speaker-test/speaker-test.c:113
+#: speaker-test/speaker-test.c:129
msgid "Channel 10"
msgstr ""
-#: speaker-test/speaker-test.c:114
+#: speaker-test/speaker-test.c:130
msgid "Channel 11"
msgstr ""
-#: speaker-test/speaker-test.c:115
+#: speaker-test/speaker-test.c:131
msgid "Channel 12"
msgstr ""
-#: speaker-test/speaker-test.c:116
+#: speaker-test/speaker-test.c:132
msgid "Channel 13"
msgstr ""
-#: speaker-test/speaker-test.c:117
+#: speaker-test/speaker-test.c:133
msgid "Channel 14"
msgstr ""
-#: speaker-test/speaker-test.c:118
+#: speaker-test/speaker-test.c:134
msgid "Channel 15"
msgstr ""
-#: speaker-test/speaker-test.c:119
+#: speaker-test/speaker-test.c:135
msgid "Channel 16"
msgstr ""
-#: speaker-test/speaker-test.c:383
+#: speaker-test/speaker-test.c:518
#, c-format
msgid "Broken configuration for playback: no configurations available: %s\n"
msgstr "再生用に設定できません: 設定がみつかりません: %s\n"
-#: speaker-test/speaker-test.c:390
+#: speaker-test/speaker-test.c:525
#, c-format
msgid "Access type not available for playback: %s\n"
msgstr "アクセスタイプが不正です: %s\n"
-#: speaker-test/speaker-test.c:397
+#: speaker-test/speaker-test.c:532
#, c-format
msgid "Sample format not available for playback: %s\n"
msgstr "指定のサンプルフォーマットを使用できません: %s\n"
-#: speaker-test/speaker-test.c:404
+#: speaker-test/speaker-test.c:539
#, c-format
msgid "Channels count (%i) not available for playbacks: %s\n"
msgstr "チャネル数 (%i) を使用できません: %s\n"
-#: speaker-test/speaker-test.c:412
+#: speaker-test/speaker-test.c:547
#, c-format
msgid "Rate %iHz not available for playback: %s\n"
msgstr "レート %iHz を使用できません: %s\n"
-#: speaker-test/speaker-test.c:417
+#: speaker-test/speaker-test.c:552
#, c-format
msgid "Rate doesn't match (requested %iHz, get %iHz, err %d)\n"
msgstr "設定レートが一致しません< (要求値 %iHz, 取得値 %iHz, エラー %d)\n"
-#: speaker-test/speaker-test.c:421
+#: speaker-test/speaker-test.c:556
#, c-format
msgid "Rate set to %iHz (requested %iHz)\n"
msgstr "レート %iHz (要求値 %iHz)\n"
-#: speaker-test/speaker-test.c:427
+#: speaker-test/speaker-test.c:562
#, c-format
msgid "Buffer size range from %lu to %lu\n"
msgstr "バッファサイズ範囲 %lu 〜 %lu\n"
-#: speaker-test/speaker-test.c:428
+#: speaker-test/speaker-test.c:563
#, c-format
msgid "Period size range from %lu to %lu\n"
msgstr "ピリオドサイズ範囲 %lu 〜 %lu\n"
-#: speaker-test/speaker-test.c:430
+#: speaker-test/speaker-test.c:565
#, c-format
msgid "Requested period time %u us\n"
msgstr "要求されたピリオド長 %u us\n"
-#: speaker-test/speaker-test.c:433
+#: speaker-test/speaker-test.c:568
#, c-format
msgid "Unable to set period time %u us for playback: %s\n"
msgstr "ピリオド長 %u us を設定できません: %s\n"
-#: speaker-test/speaker-test.c:439
+#: speaker-test/speaker-test.c:574
#, c-format
msgid "Requested buffer time %u us\n"
msgstr "要求されたバッファ長 %u us\n"
-#: speaker-test/speaker-test.c:442
+#: speaker-test/speaker-test.c:577
#, c-format
msgid "Unable to set buffer time %u us for playback: %s\n"
msgstr "バッファ長 %u us を設定できません: %s\n"
-#: speaker-test/speaker-test.c:451
+#: speaker-test/speaker-test.c:586
#, c-format
msgid "Using max buffer size %lu\n"
msgstr "最大バッファサイズ %lu を使用\n"
-#: speaker-test/speaker-test.c:454
+#: speaker-test/speaker-test.c:589
#, c-format
msgid "Unable to set buffer size %lu for playback: %s\n"
msgstr "バッファサイズ %lu を設定できません: %s\n"
-#: speaker-test/speaker-test.c:460
+#: speaker-test/speaker-test.c:595
#, c-format
msgid "Periods = %u\n"
msgstr "ピリオド数 = %u\n"
-#: speaker-test/speaker-test.c:463
+#: speaker-test/speaker-test.c:598
#, c-format
msgid "Unable to set nperiods %u for playback: %s\n"
msgstr "ピリオド数 %u を設定できません: %s\n"
-#: speaker-test/speaker-test.c:472
+#: speaker-test/speaker-test.c:607
#, c-format
msgid "Unable to set hw params for playback: %s\n"
msgstr "hw params を設定できません: %s\n"
-#: speaker-test/speaker-test.c:478
+#: speaker-test/speaker-test.c:613
#, c-format
msgid "was set period_size = %lu\n"
msgstr "period_size = %lu で設定\n"
-#: speaker-test/speaker-test.c:479
+#: speaker-test/speaker-test.c:614
#, c-format
msgid "was set buffer_size = %lu\n"
msgstr "buffer_size = %lu で設定\n"
-#: speaker-test/speaker-test.c:481
+#: speaker-test/speaker-test.c:616
#, c-format
msgid "buffer to small, could not use\n"
msgstr "バッファが小さすぎます\n"
-#: speaker-test/speaker-test.c:494
+#: speaker-test/speaker-test.c:629
#, c-format
msgid "Unable to determine current swparams for playback: %s\n"
msgstr "現在の swparams を取得できません: %s\n"
-#: speaker-test/speaker-test.c:501
+#: speaker-test/speaker-test.c:636
#, c-format
msgid "Unable to set start threshold mode for playback: %s\n"
msgstr "start_threshold モードを設定できません: %s\n"
-#: speaker-test/speaker-test.c:508
+#: speaker-test/speaker-test.c:643
#, c-format
msgid "Unable to set avail min for playback: %s\n"
msgstr "avail_min を設定できません: %s\n"
-#: speaker-test/speaker-test.c:515
+#: speaker-test/speaker-test.c:650
#, c-format
msgid "Unable to set sw params for playback: %s\n"
msgstr "再生用の sw params を設定できません: %s\n"
-#: speaker-test/speaker-test.c:530
+#: speaker-test/speaker-test.c:670
+#, fuzzy, c-format
+msgid "Unable to set channel map: %s\n"
+msgstr "avail_min を設定できません: %s\n"
+
+#: speaker-test/speaker-test.c:695
#, c-format
msgid "Can't recovery from underrun, prepare failed: %s\n"
msgstr "アンダーランから復帰失敗: %s\n"
-#: speaker-test/speaker-test.c:541
+#: speaker-test/speaker-test.c:706
#, c-format
msgid "Can't recovery from suspend, prepare failed: %s\n"
msgstr "サスペンドから復帰失敗: %s\n"
-#: speaker-test/speaker-test.c:605 speaker-test/speaker-test.c:1025
+#: speaker-test/speaker-test.c:770 speaker-test/speaker-test.c:1261
#, c-format
msgid "No enough memory\n"
msgstr "メモリが足りません\n"
-#: speaker-test/speaker-test.c:610
+#: speaker-test/speaker-test.c:775
#, c-format
msgid "Cannot open WAV file %s\n"
msgstr "WAVファイルがオープンできません: %s\n"
-#: speaker-test/speaker-test.c:614 speaker-test/speaker-test.c:643
+#: speaker-test/speaker-test.c:779 speaker-test/speaker-test.c:808
#, c-format
msgid "Invalid WAV file %s\n"
msgstr "不正なWAVファイルです: %s\n"
-#: speaker-test/speaker-test.c:619
+#: speaker-test/speaker-test.c:784
#, c-format
msgid "Not a WAV file: %s\n"
msgstr "WAVファイルではありません: %s\n"
-#: speaker-test/speaker-test.c:623
+#: speaker-test/speaker-test.c:788
#, c-format
msgid "Unsupported WAV format %d for %s\n"
msgstr "未サポートのWAVフォーマット %d: %s\n"
-#: speaker-test/speaker-test.c:628
+#: speaker-test/speaker-test.c:793
#, c-format
msgid "%s is not a mono stream (%d channels)\n"
msgstr "%s はモノストリームではありません (%d チャネル)\n"
-#: speaker-test/speaker-test.c:633
+#: speaker-test/speaker-test.c:798
#, c-format
msgid "Sample rate doesn't match (%d) for %s\n"
msgstr "サンプルレートが不一致です(%d): %s\n"
-#: speaker-test/speaker-test.c:638
+#: speaker-test/speaker-test.c:803
#, c-format
msgid "Unsupported sample format bits %d for %s\n"
msgstr "未サポートのサンプルフォーマットビット %d: %s\n"
-#: speaker-test/speaker-test.c:688
+#: speaker-test/speaker-test.c:864
#, c-format
msgid "Undefined channel %d\n"
msgstr "未定義のチャネル %d\n"
-#: speaker-test/speaker-test.c:739
+#: speaker-test/speaker-test.c:915
#, c-format
msgid "Write error: %d,%s\n"
msgstr "書込エラー: %d,%s\n"
-#: speaker-test/speaker-test.c:741
+#: speaker-test/speaker-test.c:917
#, c-format
msgid "xrun_recovery failed: %d,%s\n"
msgstr "xrun_recovery 失敗: %d,%s\n"
-#: speaker-test/speaker-test.c:803
-#, c-format
+#: speaker-test/speaker-test.c:1003
+#, fuzzy, c-format
msgid ""
"Usage: speaker-test [OPTION]... \n"
"-h,--help\thelp\n"
"-s,--speaker\tsingle speaker test. Values 1=Left, 2=right, etc\n"
"-w,--wavfile\tUse the given WAV file as a test sound\n"
"-W,--wavdir\tSpecify the directory containing WAV files\n"
+"-m,--chmap\tSpecify the channel map to override\n"
+"-X,--force-frequency\tforce frequencies outside the 30-8000hz range\n"
"\n"
msgstr ""
"使用法: speaker-test [オプション]...\n"
"-s,--speaker 単一スピーカーテスト 1=左 または 2=右\n"
"-w,--wavfile 指定のWAVファイルをテスト音源として使用\n"
"-W,--wavdir WAVファイルのあるディレクトリを指定\n"
+"-X,--force-frequency\t30-8000Hz範囲外許可\n"
"\n"
-#: speaker-test/speaker-test.c:921
+#: speaker-test/speaker-test.c:1132
#, c-format
msgid "Invalid number of periods %d\n"
msgstr "不正なピリオド数 %d\n"
-#: speaker-test/speaker-test.c:937 speaker-test/speaker-test.c:941
+#: speaker-test/speaker-test.c:1148 speaker-test/speaker-test.c:1152
#, c-format
msgid "Invalid test type %s\n"
msgstr "不正なテストタイプ %s\n"
-#: speaker-test/speaker-test.c:953
+#: speaker-test/speaker-test.c:1164
#, c-format
msgid "Invalid parameter for -s option.\n"
msgstr "-s オプションの値が不正です\n"
-#: speaker-test/speaker-test.c:967
+#: speaker-test/speaker-test.c:1186
#, c-format
msgid "Unknown option '%c'\n"
msgstr "未知のオプション '%c'\n"
-#: speaker-test/speaker-test.c:981
+#: speaker-test/speaker-test.c:1207
#, c-format
msgid "Playback device is %s\n"
msgstr "再生デバイス: %s\n"
-#: speaker-test/speaker-test.c:982
+#: speaker-test/speaker-test.c:1208
#, c-format
msgid "Stream parameters are %iHz, %s, %i channels\n"
msgstr "ストリームパラメータ: %iHz, %s, %i チャネル\n"
-#: speaker-test/speaker-test.c:985
+#: speaker-test/speaker-test.c:1211
#, c-format
msgid "Using 16 octaves of pink noise\n"
msgstr "16 オクターブのピンクノイズを使用\n"
-#: speaker-test/speaker-test.c:988
+#: speaker-test/speaker-test.c:1214
#, c-format
msgid "Sine wave rate is %.4fHz\n"
msgstr "正弦波レート: %.4fHz\n"
-#: speaker-test/speaker-test.c:991
+#: speaker-test/speaker-test.c:1217
#, c-format
msgid "WAV file(s)\n"
msgstr "WAV ファイル\n"
-#: speaker-test/speaker-test.c:997
+#: speaker-test/speaker-test.c:1227
#, c-format
msgid "Playback open error: %d,%s\n"
msgstr "再生オープンエラー: %d,%s\n"
-#: speaker-test/speaker-test.c:1002
+#: speaker-test/speaker-test.c:1233
#, c-format
msgid "Setting of hwparams failed: %s\n"
msgstr "hwparams の設定に失敗: %s\n"
-#: speaker-test/speaker-test.c:1007
+#: speaker-test/speaker-test.c:1237
#, c-format
msgid "Setting of swparams failed: %s\n"
msgstr "swparams の設定に失敗: %s\n"
-#: speaker-test/speaker-test.c:1056 speaker-test/speaker-test.c:1078
+#: speaker-test/speaker-test.c:1284 speaker-test/speaker-test.c:1306
#, c-format
msgid "Transfer failed: %s\n"
msgstr "転送に失敗しました: %s\n"
-#: speaker-test/speaker-test.c:1066
+#: speaker-test/speaker-test.c:1292
#, c-format
msgid "Time per period = %lf\n"
msgstr "ピリオド時間 = %lf\n"
+
+#~ msgid "Warning: format is changed to S16_LE\n"
+#~ msgstr "警告: フォーマットは S16_LE に変更されます\n"
+
+#~ msgid "Warning: format is changed to S24_3LE\n"
+#~ msgstr "警告: フォーマットは S24_3LE に変更されます\n"
+
+#~ msgid "Warning: format is changed to S24_LE\n"
+#~ msgstr "警告: フォーマットは S24_LE に変更されます\n"
-# Makefile.in generated by automake 1.11.3 from Makefile.am.
+# Makefile.in generated by automake 1.12.2 from Makefile.am.
# @configure_input@
-# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software
-# Foundation, Inc.
+# Copyright (C) 1994-2012 Free Software Foundation, Inc.
+
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
@SET_MAKE@
VPATH = @srcdir@
+am__make_dryrun = \
+ { \
+ am__dry=no; \
+ case $$MAKEFLAGS in \
+ *\\[\ \ ]*) \
+ echo 'am--echo: ; @echo "AM" OK' | $(MAKE) -f - 2>/dev/null \
+ | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
+ *) \
+ for am__flg in $$MAKEFLAGS; do \
+ case $$am__flg in \
+ *=*|--*) ;; \
+ *n*) am__dry=yes; break;; \
+ esac; \
+ done;; \
+ esac; \
+ test $$am__dry = yes; \
+ }
pkgdatadir = $(datadir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
$(top_srcdir)/m4/lib-link.m4 $(top_srcdir)/m4/lib-prefix.m4 \
$(top_srcdir)/m4/nls.m4 $(top_srcdir)/m4/po.m4 \
$(top_srcdir)/m4/progtest.m4 $(top_srcdir)/acinclude.m4 \
- $(top_srcdir)/configure.in
+ $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(install_sh) -d
install-pdf-recursive install-ps-recursive install-recursive \
installcheck-recursive installdirs-recursive pdf-recursive \
ps-recursive uninstall-recursive
+am__can_run_installinfo = \
+ case $$AM_UPDATE_INFO_DIR in \
+ n|no|NO) false;; \
+ *) (install-info --version) >/dev/null 2>&1;; \
+ esac
RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \
distclean-recursive maintainer-clean-recursive
AM_RECURSIVE_TARGETS = $(RECURSIVE_TARGETS:-recursive=) \
done; \
reldir="$$dir2"
ACLOCAL = @ACLOCAL@
+ALSACTL_DAEMONSWITCH = @ALSACTL_DAEMONSWITCH@
+ALSACTL_PIDFILE_DIR = @ALSACTL_PIDFILE_DIR@
ALSA_CFLAGS = @ALSA_CFLAGS@
ALSA_LIBS = @ALSA_LIBS@
AMTAR = @AMTAR@
+ASOUND_LOCK_DIR = @ASOUND_LOCK_DIR@
ASOUND_STATE_DIR = @ASOUND_STATE_DIR@
AUTOCONF = @AUTOCONF@
AUTOHEADER = @AUTOHEADER@
LTLIBICONV = @LTLIBICONV@
LTLIBINTL = @LTLIBINTL@
LTLIBOBJS = @LTLIBOBJS@
+MAINT = @MAINT@
MAKEINFO = @MAKEINFO@
MKDIR_P = @MKDIR_P@
MSGFMT = @MSGFMT@
localstatedir = @localstatedir@
mandir = @mandir@
mkdir_p = @mkdir_p@
+mydatadir = @mydatadir@
ncurses5_config = @ncurses5_config@
ncursesw5_config = @ncursesw5_config@
oldincludedir = @oldincludedir@
all: all-recursive
.SUFFIXES:
-$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps)
@for dep in $?; do \
case '$(am__configure_deps)' in \
*$$dep*) \
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-$(top_srcdir)/configure: $(am__configure_deps)
+$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-$(ACLOCAL_M4): $(am__aclocal_m4_deps)
+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(am__aclocal_m4_deps):
# This directory's subdirectories are mostly independent; you can cd
-# into them and run `make' without going through this Makefile.
-# To change the values of `make' variables: instead of editing Makefiles,
-# (1) if the variable is set in `config.status', edit `config.status'
-# (which will cause the Makefiles to be regenerated when you run `make');
-# (2) otherwise, pass the desired values on the `make' command line.
-$(RECURSIVE_TARGETS):
+# into them and run 'make' without going through this Makefile.
+# To change the values of 'make' variables: instead of editing Makefiles,
+# (1) if the variable is set in 'config.status', edit 'config.status'
+# (which will cause the Makefiles to be regenerated when you run 'make');
+# (2) otherwise, pass the desired values on the 'make' command line.
+$(RECURSIVE_TARGETS) $(RECURSIVE_CLEAN_TARGETS):
@fail= failcom='exit 1'; \
for f in x $$MAKEFLAGS; do \
case $$f in \
done; \
dot_seen=no; \
target=`echo $@ | sed s/-recursive//`; \
- list='$(SUBDIRS)'; for subdir in $$list; do \
+ case "$@" in \
+ distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \
+ *) list='$(SUBDIRS)' ;; \
+ esac; \
+ for subdir in $$list; do \
echo "Making $$target in $$subdir"; \
if test "$$subdir" = "."; then \
dot_seen=yes; \
if test "$$dot_seen" = "no"; then \
$(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \
fi; test -z "$$fail"
-
-$(RECURSIVE_CLEAN_TARGETS):
- @fail= failcom='exit 1'; \
- for f in x $$MAKEFLAGS; do \
- case $$f in \
- *=* | --[!k]*);; \
- *k*) failcom='fail=yes';; \
- esac; \
- done; \
- dot_seen=no; \
- case "$@" in \
- distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \
- *) list='$(SUBDIRS)' ;; \
- esac; \
- rev=''; for subdir in $$list; do \
- if test "$$subdir" = "."; then :; else \
- rev="$$subdir $$rev"; \
- fi; \
- done; \
- rev="$$rev ."; \
- target=`echo $@ | sed s/-recursive//`; \
- for subdir in $$rev; do \
- echo "Making $$target in $$subdir"; \
- if test "$$subdir" = "."; then \
- local_target="$$target-am"; \
- else \
- local_target="$$target"; \
- fi; \
- ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
- || eval $$failcom; \
- done && test -z "$$fail"
tags-recursive:
list='$(SUBDIRS)'; for subdir in $$list; do \
test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
list='$(SUBDIRS)'; for subdir in $$list; do \
test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
done
+cscopelist-recursive:
+ list='$(SUBDIRS)'; for subdir in $$list; do \
+ test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) cscopelist); \
+ done
ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
&& $(am__cd) $(top_srcdir) \
&& gtags -i $(GTAGS_ARGS) "$$here"
+cscopelist: cscopelist-recursive $(HEADERS) $(SOURCES) $(LISP)
+ list='$(SOURCES) $(HEADERS) $(LISP)'; \
+ case "$(srcdir)" in \
+ [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
+ *) sdir=$(subdir)/$(srcdir) ;; \
+ esac; \
+ for i in $$list; do \
+ if test -f "$$i"; then \
+ echo "$(subdir)/$$i"; \
+ else \
+ echo "$$sdir/$$i"; \
+ fi; \
+ done >> $(top_builddir)/cscope.files
+
distclean-tags:
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
done
@list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
if test "$$subdir" = .; then :; else \
- test -d "$(distdir)/$$subdir" \
- || $(MKDIR_P) "$(distdir)/$$subdir" \
- || exit 1; \
- fi; \
- done
- @list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
- if test "$$subdir" = .; then :; else \
+ $(am__make_dryrun) \
+ || test -d "$(distdir)/$$subdir" \
+ || $(MKDIR_P) "$(distdir)/$$subdir" \
+ || exit 1; \
dir1=$$subdir; dir2="$(distdir)/$$subdir"; \
$(am__relativize); \
new_distdir=$$reldir; \
uninstall-am:
-.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) ctags-recursive \
- install-am install-strip tags-recursive
+.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) \
+ cscopelist-recursive ctags-recursive install-am install-strip \
+ tags-recursive
.PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \
- all all-am check check-am clean clean-generic ctags \
- ctags-recursive distclean distclean-generic distclean-tags \
- distdir dvi dvi-am html html-am info info-am install \
- install-am install-data install-data-am install-dvi \
- install-dvi-am install-exec install-exec-am install-html \
- install-html-am install-info install-info-am install-man \
- install-pdf install-pdf-am install-ps install-ps-am \
- install-strip installcheck installcheck-am installdirs \
- installdirs-am maintainer-clean maintainer-clean-generic \
- mostlyclean mostlyclean-generic pdf pdf-am ps ps-am tags \
- tags-recursive uninstall uninstall-am
+ all all-am check check-am clean clean-generic cscopelist \
+ cscopelist-recursive ctags ctags-recursive distclean \
+ distclean-generic distclean-tags distdir dvi dvi-am html \
+ html-am info info-am install install-am install-data \
+ install-data-am install-dvi install-dvi-am install-exec \
+ install-exec-am install-html install-html-am install-info \
+ install-info-am install-man install-pdf install-pdf-am \
+ install-ps install-ps-am install-strip installcheck \
+ installcheck-am installdirs installdirs-am maintainer-clean \
+ maintainer-clean-generic mostlyclean mostlyclean-generic pdf \
+ pdf-am ps ps-am tags tags-recursive uninstall uninstall-am
# Tell versions [3.59,3.63) of GNU make to not export all variables.
-INCLUDES = -I$(top_srcdir)/include
+AM_CPPFLAGS = -I$(top_srcdir)/include
EXTRA_DIST = README.aconnect aconnect.1
LDADD = $(LIBINTL)
-# Makefile.in generated by automake 1.11.3 from Makefile.am.
+# Makefile.in generated by automake 1.12.2 from Makefile.am.
# @configure_input@
-# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software
-# Foundation, Inc.
+# Copyright (C) 1994-2012 Free Software Foundation, Inc.
+
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
@SET_MAKE@
VPATH = @srcdir@
+am__make_dryrun = \
+ { \
+ am__dry=no; \
+ case $$MAKEFLAGS in \
+ *\\[\ \ ]*) \
+ echo 'am--echo: ; @echo "AM" OK' | $(MAKE) -f - 2>/dev/null \
+ | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
+ *) \
+ for am__flg in $$MAKEFLAGS; do \
+ case $$am__flg in \
+ *=*|--*) ;; \
+ *n*) am__dry=yes; break;; \
+ esac; \
+ done;; \
+ esac; \
+ test $$am__dry = yes; \
+ }
pkgdatadir = $(datadir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
host_triplet = @host@
bin_PROGRAMS = aconnect$(EXEEXT)
subdir = seq/aconnect
-DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
+DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in \
+ $(top_srcdir)/depcomp
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/m4/gettext.m4 \
$(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/lib-ld.m4 \
$(top_srcdir)/m4/lib-link.m4 $(top_srcdir)/m4/lib-prefix.m4 \
$(top_srcdir)/m4/nls.m4 $(top_srcdir)/m4/po.m4 \
$(top_srcdir)/m4/progtest.m4 $(top_srcdir)/acinclude.m4 \
- $(top_srcdir)/configure.in
+ $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(install_sh) -d
LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
SOURCES = $(aconnect_SOURCES)
DIST_SOURCES = $(aconnect_SOURCES)
+am__can_run_installinfo = \
+ case $$AM_UPDATE_INFO_DIR in \
+ n|no|NO) false;; \
+ *) (install-info --version) >/dev/null 2>&1;; \
+ esac
am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
am__vpath_adj = case $$p in \
$(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
CTAGS = ctags
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
ACLOCAL = @ACLOCAL@
+ALSACTL_DAEMONSWITCH = @ALSACTL_DAEMONSWITCH@
+ALSACTL_PIDFILE_DIR = @ALSACTL_PIDFILE_DIR@
ALSA_CFLAGS = @ALSA_CFLAGS@
ALSA_LIBS = @ALSA_LIBS@
AMTAR = @AMTAR@
+ASOUND_LOCK_DIR = @ASOUND_LOCK_DIR@
ASOUND_STATE_DIR = @ASOUND_STATE_DIR@
AUTOCONF = @AUTOCONF@
AUTOHEADER = @AUTOHEADER@
LTLIBICONV = @LTLIBICONV@
LTLIBINTL = @LTLIBINTL@
LTLIBOBJS = @LTLIBOBJS@
+MAINT = @MAINT@
MAKEINFO = @MAKEINFO@
MKDIR_P = @MKDIR_P@
MSGFMT = @MSGFMT@
localstatedir = @localstatedir@
mandir = @mandir@
mkdir_p = @mkdir_p@
+mydatadir = @mydatadir@
ncurses5_config = @ncurses5_config@
ncursesw5_config = @ncursesw5_config@
oldincludedir = @oldincludedir@
top_srcdir = @top_srcdir@
udevrulesdir = @udevrulesdir@
xmlto = @xmlto@
-INCLUDES = -I$(top_srcdir)/include
+AM_CPPFLAGS = -I$(top_srcdir)/include
EXTRA_DIST = README.aconnect aconnect.1
LDADD = $(LIBINTL)
aconnect_SOURCES = aconnect.c
.SUFFIXES:
.SUFFIXES: .c .o .obj
-$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps)
@for dep in $?; do \
case '$(am__configure_deps)' in \
*$$dep*) \
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-$(top_srcdir)/configure: $(am__configure_deps)
+$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-$(ACLOCAL_M4): $(am__aclocal_m4_deps)
+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(am__aclocal_m4_deps):
install-binPROGRAMS: $(bin_PROGRAMS)
@$(NORMAL_INSTALL)
- test -z "$(bindir)" || $(MKDIR_P) "$(DESTDIR)$(bindir)"
@list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \
+ if test -n "$$list"; then \
+ echo " $(MKDIR_P) '$(DESTDIR)$(bindir)'"; \
+ $(MKDIR_P) "$(DESTDIR)$(bindir)" || exit 1; \
+ fi; \
for p in $$list; do echo "$$p $$p"; done | \
sed 's/$(EXEEXT)$$//' | \
while read p p1; do if test -f $$p; \
@am__fastdepCC_FALSE@ $(COMPILE) -c `$(CYGPATH_W) '$<'`
install-man1: $(man_MANS)
@$(NORMAL_INSTALL)
- test -z "$(man1dir)" || $(MKDIR_P) "$(DESTDIR)$(man1dir)"
- @list=''; test -n "$(man1dir)" || exit 0; \
- { for i in $$list; do echo "$$i"; done; \
- l2='$(man_MANS)'; for i in $$l2; do echo "$$i"; done | \
- sed -n '/\.1[a-z]*$$/p'; \
+ @list1=''; \
+ list2='$(man_MANS)'; \
+ test -n "$(man1dir)" \
+ && test -n "`echo $$list1$$list2`" \
+ || exit 0; \
+ echo " $(MKDIR_P) '$(DESTDIR)$(man1dir)'"; \
+ $(MKDIR_P) "$(DESTDIR)$(man1dir)" || exit 1; \
+ { for i in $$list1; do echo "$$i"; done; \
+ if test -n "$$list2"; then \
+ for i in $$list2; do echo "$$i"; done \
+ | sed -n '/\.1[a-z]*$$/p'; \
+ fi; \
} | while read p; do \
if test -f $$p; then d=; else d="$(srcdir)/"; fi; \
echo "$$d$$p"; echo "$$p"; \
&& $(am__cd) $(top_srcdir) \
&& gtags -i $(GTAGS_ARGS) "$$here"
+cscopelist: $(HEADERS) $(SOURCES) $(LISP)
+ list='$(SOURCES) $(HEADERS) $(LISP)'; \
+ case "$(srcdir)" in \
+ [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
+ *) sdir=$(subdir)/$(srcdir) ;; \
+ esac; \
+ for i in $$list; do \
+ if test -f "$$i"; then \
+ echo "$(subdir)/$$i"; \
+ else \
+ echo "$$sdir/$$i"; \
+ fi; \
+ done >> $(top_builddir)/cscope.files
+
distclean-tags:
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
if test -f "$$d$$p"; then echo "$$d$$p"; else :; fi; done`; \
if test -n "$$list" && \
grep 'ab help2man is required to generate this page' $$list >/dev/null; then \
- echo "error: found man pages containing the \`missing help2man' replacement text:" >&2; \
+ echo "error: found man pages containing the 'missing help2man' replacement text:" >&2; \
grep -l 'ab help2man is required to generate this page' $$list | sed 's/^/ /' >&2; \
echo " to fix them, install help2man, remove and regenerate the man pages;" >&2; \
- echo " typically \`make maintainer-clean' will remove them" >&2; \
+ echo " typically 'make maintainer-clean' will remove them" >&2; \
exit 1; \
else :; fi; \
else :; fi
.MAKE: install-am install-strip
.PHONY: CTAGS GTAGS all all-am check check-am clean clean-binPROGRAMS \
- clean-generic ctags distclean distclean-compile \
+ clean-generic cscopelist ctags distclean distclean-compile \
distclean-generic distclean-tags distdir dvi dvi-am html \
html-am info info-am install install-am install-binPROGRAMS \
install-data install-data-am install-dvi install-dvi-am \
convert_real = 0;
break;
case 'l':
+ command = LIST;
list_subs = 1;
break;
case 'x':
-INCLUDES = -I$(top_srcdir)/include
+AM_CPPFLAGS = -I$(top_srcdir)/include
EXTRA_DIST = aplaymidi.1 arecordmidi.1
bin_PROGRAMS = aplaymidi arecordmidi
-# Makefile.in generated by automake 1.11.3 from Makefile.am.
+# Makefile.in generated by automake 1.12.2 from Makefile.am.
# @configure_input@
-# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software
-# Foundation, Inc.
+# Copyright (C) 1994-2012 Free Software Foundation, Inc.
+
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
@SET_MAKE@
VPATH = @srcdir@
+am__make_dryrun = \
+ { \
+ am__dry=no; \
+ case $$MAKEFLAGS in \
+ *\\[\ \ ]*) \
+ echo 'am--echo: ; @echo "AM" OK' | $(MAKE) -f - 2>/dev/null \
+ | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
+ *) \
+ for am__flg in $$MAKEFLAGS; do \
+ case $$am__flg in \
+ *=*|--*) ;; \
+ *n*) am__dry=yes; break;; \
+ esac; \
+ done;; \
+ esac; \
+ test $$am__dry = yes; \
+ }
pkgdatadir = $(datadir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
host_triplet = @host@
bin_PROGRAMS = aplaymidi$(EXEEXT) arecordmidi$(EXEEXT)
subdir = seq/aplaymidi
-DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
+DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in \
+ $(top_srcdir)/depcomp
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/m4/gettext.m4 \
$(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/lib-ld.m4 \
$(top_srcdir)/m4/lib-link.m4 $(top_srcdir)/m4/lib-prefix.m4 \
$(top_srcdir)/m4/nls.m4 $(top_srcdir)/m4/po.m4 \
$(top_srcdir)/m4/progtest.m4 $(top_srcdir)/acinclude.m4 \
- $(top_srcdir)/configure.in
+ $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(install_sh) -d
LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
SOURCES = aplaymidi.c arecordmidi.c
DIST_SOURCES = aplaymidi.c arecordmidi.c
+am__can_run_installinfo = \
+ case $$AM_UPDATE_INFO_DIR in \
+ n|no|NO) false;; \
+ *) (install-info --version) >/dev/null 2>&1;; \
+ esac
am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
am__vpath_adj = case $$p in \
$(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
CTAGS = ctags
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
ACLOCAL = @ACLOCAL@
+ALSACTL_DAEMONSWITCH = @ALSACTL_DAEMONSWITCH@
+ALSACTL_PIDFILE_DIR = @ALSACTL_PIDFILE_DIR@
ALSA_CFLAGS = @ALSA_CFLAGS@
ALSA_LIBS = @ALSA_LIBS@
AMTAR = @AMTAR@
+ASOUND_LOCK_DIR = @ASOUND_LOCK_DIR@
ASOUND_STATE_DIR = @ASOUND_STATE_DIR@
AUTOCONF = @AUTOCONF@
AUTOHEADER = @AUTOHEADER@
LTLIBICONV = @LTLIBICONV@
LTLIBINTL = @LTLIBINTL@
LTLIBOBJS = @LTLIBOBJS@
+MAINT = @MAINT@
MAKEINFO = @MAKEINFO@
MKDIR_P = @MKDIR_P@
MSGFMT = @MSGFMT@
localstatedir = @localstatedir@
mandir = @mandir@
mkdir_p = @mkdir_p@
+mydatadir = @mydatadir@
ncurses5_config = @ncurses5_config@
ncursesw5_config = @ncursesw5_config@
oldincludedir = @oldincludedir@
top_srcdir = @top_srcdir@
udevrulesdir = @udevrulesdir@
xmlto = @xmlto@
-INCLUDES = -I$(top_srcdir)/include
+AM_CPPFLAGS = -I$(top_srcdir)/include
EXTRA_DIST = aplaymidi.1 arecordmidi.1
man_MANS = aplaymidi.1 arecordmidi.1
all: all-am
.SUFFIXES:
.SUFFIXES: .c .o .obj
-$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps)
@for dep in $?; do \
case '$(am__configure_deps)' in \
*$$dep*) \
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-$(top_srcdir)/configure: $(am__configure_deps)
+$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-$(ACLOCAL_M4): $(am__aclocal_m4_deps)
+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(am__aclocal_m4_deps):
install-binPROGRAMS: $(bin_PROGRAMS)
@$(NORMAL_INSTALL)
- test -z "$(bindir)" || $(MKDIR_P) "$(DESTDIR)$(bindir)"
@list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \
+ if test -n "$$list"; then \
+ echo " $(MKDIR_P) '$(DESTDIR)$(bindir)'"; \
+ $(MKDIR_P) "$(DESTDIR)$(bindir)" || exit 1; \
+ fi; \
for p in $$list; do echo "$$p $$p"; done | \
sed 's/$(EXEEXT)$$//' | \
while read p p1; do if test -f $$p; \
@am__fastdepCC_FALSE@ $(COMPILE) -c `$(CYGPATH_W) '$<'`
install-man1: $(man_MANS)
@$(NORMAL_INSTALL)
- test -z "$(man1dir)" || $(MKDIR_P) "$(DESTDIR)$(man1dir)"
- @list=''; test -n "$(man1dir)" || exit 0; \
- { for i in $$list; do echo "$$i"; done; \
- l2='$(man_MANS)'; for i in $$l2; do echo "$$i"; done | \
- sed -n '/\.1[a-z]*$$/p'; \
+ @list1=''; \
+ list2='$(man_MANS)'; \
+ test -n "$(man1dir)" \
+ && test -n "`echo $$list1$$list2`" \
+ || exit 0; \
+ echo " $(MKDIR_P) '$(DESTDIR)$(man1dir)'"; \
+ $(MKDIR_P) "$(DESTDIR)$(man1dir)" || exit 1; \
+ { for i in $$list1; do echo "$$i"; done; \
+ if test -n "$$list2"; then \
+ for i in $$list2; do echo "$$i"; done \
+ | sed -n '/\.1[a-z]*$$/p'; \
+ fi; \
} | while read p; do \
if test -f $$p; then d=; else d="$(srcdir)/"; fi; \
echo "$$d$$p"; echo "$$p"; \
&& $(am__cd) $(top_srcdir) \
&& gtags -i $(GTAGS_ARGS) "$$here"
+cscopelist: $(HEADERS) $(SOURCES) $(LISP)
+ list='$(SOURCES) $(HEADERS) $(LISP)'; \
+ case "$(srcdir)" in \
+ [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
+ *) sdir=$(subdir)/$(srcdir) ;; \
+ esac; \
+ for i in $$list; do \
+ if test -f "$$i"; then \
+ echo "$(subdir)/$$i"; \
+ else \
+ echo "$$sdir/$$i"; \
+ fi; \
+ done >> $(top_builddir)/cscope.files
+
distclean-tags:
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
if test -f "$$d$$p"; then echo "$$d$$p"; else :; fi; done`; \
if test -n "$$list" && \
grep 'ab help2man is required to generate this page' $$list >/dev/null; then \
- echo "error: found man pages containing the \`missing help2man' replacement text:" >&2; \
+ echo "error: found man pages containing the 'missing help2man' replacement text:" >&2; \
grep -l 'ab help2man is required to generate this page' $$list | sed 's/^/ /' >&2; \
echo " to fix them, install help2man, remove and regenerate the man pages;" >&2; \
- echo " typically \`make maintainer-clean' will remove them" >&2; \
+ echo " typically 'make maintainer-clean' will remove them" >&2; \
exit 1; \
else :; fi; \
else :; fi
.MAKE: install-am install-strip
.PHONY: CTAGS GTAGS all all-am check check-am clean clean-binPROGRAMS \
- clean-generic ctags distclean distclean-compile \
+ clean-generic cscopelist ctags distclean distclean-compile \
distclean-generic distclean-tags distdir dvi dvi-am html \
html-am info info-am install install-am install-binPROGRAMS \
install-data install-data-am install-dvi install-dvi-am \
-INCLUDES = -I$(top_srcdir)/include
+AM_CPPFLAGS = -I$(top_srcdir)/include
EXTRA_DIST = aseqdump.1
bin_PROGRAMS = aseqdump
-# Makefile.in generated by automake 1.11.3 from Makefile.am.
+# Makefile.in generated by automake 1.12.2 from Makefile.am.
# @configure_input@
-# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software
-# Foundation, Inc.
+# Copyright (C) 1994-2012 Free Software Foundation, Inc.
+
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
@SET_MAKE@
VPATH = @srcdir@
+am__make_dryrun = \
+ { \
+ am__dry=no; \
+ case $$MAKEFLAGS in \
+ *\\[\ \ ]*) \
+ echo 'am--echo: ; @echo "AM" OK' | $(MAKE) -f - 2>/dev/null \
+ | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
+ *) \
+ for am__flg in $$MAKEFLAGS; do \
+ case $$am__flg in \
+ *=*|--*) ;; \
+ *n*) am__dry=yes; break;; \
+ esac; \
+ done;; \
+ esac; \
+ test $$am__dry = yes; \
+ }
pkgdatadir = $(datadir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
host_triplet = @host@
bin_PROGRAMS = aseqdump$(EXEEXT)
subdir = seq/aseqdump
-DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
+DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in \
+ $(top_srcdir)/depcomp
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/m4/gettext.m4 \
$(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/lib-ld.m4 \
$(top_srcdir)/m4/lib-link.m4 $(top_srcdir)/m4/lib-prefix.m4 \
$(top_srcdir)/m4/nls.m4 $(top_srcdir)/m4/po.m4 \
$(top_srcdir)/m4/progtest.m4 $(top_srcdir)/acinclude.m4 \
- $(top_srcdir)/configure.in
+ $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(install_sh) -d
LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
SOURCES = aseqdump.c
DIST_SOURCES = aseqdump.c
+am__can_run_installinfo = \
+ case $$AM_UPDATE_INFO_DIR in \
+ n|no|NO) false;; \
+ *) (install-info --version) >/dev/null 2>&1;; \
+ esac
am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
am__vpath_adj = case $$p in \
$(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
CTAGS = ctags
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
ACLOCAL = @ACLOCAL@
+ALSACTL_DAEMONSWITCH = @ALSACTL_DAEMONSWITCH@
+ALSACTL_PIDFILE_DIR = @ALSACTL_PIDFILE_DIR@
ALSA_CFLAGS = @ALSA_CFLAGS@
ALSA_LIBS = @ALSA_LIBS@
AMTAR = @AMTAR@
+ASOUND_LOCK_DIR = @ASOUND_LOCK_DIR@
ASOUND_STATE_DIR = @ASOUND_STATE_DIR@
AUTOCONF = @AUTOCONF@
AUTOHEADER = @AUTOHEADER@
LTLIBICONV = @LTLIBICONV@
LTLIBINTL = @LTLIBINTL@
LTLIBOBJS = @LTLIBOBJS@
+MAINT = @MAINT@
MAKEINFO = @MAKEINFO@
MKDIR_P = @MKDIR_P@
MSGFMT = @MSGFMT@
localstatedir = @localstatedir@
mandir = @mandir@
mkdir_p = @mkdir_p@
+mydatadir = @mydatadir@
ncurses5_config = @ncurses5_config@
ncursesw5_config = @ncursesw5_config@
oldincludedir = @oldincludedir@
top_srcdir = @top_srcdir@
udevrulesdir = @udevrulesdir@
xmlto = @xmlto@
-INCLUDES = -I$(top_srcdir)/include
+AM_CPPFLAGS = -I$(top_srcdir)/include
EXTRA_DIST = aseqdump.1
man_MANS = aseqdump.1
all: all-am
.SUFFIXES:
.SUFFIXES: .c .o .obj
-$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps)
@for dep in $?; do \
case '$(am__configure_deps)' in \
*$$dep*) \
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-$(top_srcdir)/configure: $(am__configure_deps)
+$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-$(ACLOCAL_M4): $(am__aclocal_m4_deps)
+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(am__aclocal_m4_deps):
install-binPROGRAMS: $(bin_PROGRAMS)
@$(NORMAL_INSTALL)
- test -z "$(bindir)" || $(MKDIR_P) "$(DESTDIR)$(bindir)"
@list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \
+ if test -n "$$list"; then \
+ echo " $(MKDIR_P) '$(DESTDIR)$(bindir)'"; \
+ $(MKDIR_P) "$(DESTDIR)$(bindir)" || exit 1; \
+ fi; \
for p in $$list; do echo "$$p $$p"; done | \
sed 's/$(EXEEXT)$$//' | \
while read p p1; do if test -f $$p; \
@am__fastdepCC_FALSE@ $(COMPILE) -c `$(CYGPATH_W) '$<'`
install-man1: $(man_MANS)
@$(NORMAL_INSTALL)
- test -z "$(man1dir)" || $(MKDIR_P) "$(DESTDIR)$(man1dir)"
- @list=''; test -n "$(man1dir)" || exit 0; \
- { for i in $$list; do echo "$$i"; done; \
- l2='$(man_MANS)'; for i in $$l2; do echo "$$i"; done | \
- sed -n '/\.1[a-z]*$$/p'; \
+ @list1=''; \
+ list2='$(man_MANS)'; \
+ test -n "$(man1dir)" \
+ && test -n "`echo $$list1$$list2`" \
+ || exit 0; \
+ echo " $(MKDIR_P) '$(DESTDIR)$(man1dir)'"; \
+ $(MKDIR_P) "$(DESTDIR)$(man1dir)" || exit 1; \
+ { for i in $$list1; do echo "$$i"; done; \
+ if test -n "$$list2"; then \
+ for i in $$list2; do echo "$$i"; done \
+ | sed -n '/\.1[a-z]*$$/p'; \
+ fi; \
} | while read p; do \
if test -f $$p; then d=; else d="$(srcdir)/"; fi; \
echo "$$d$$p"; echo "$$p"; \
&& $(am__cd) $(top_srcdir) \
&& gtags -i $(GTAGS_ARGS) "$$here"
+cscopelist: $(HEADERS) $(SOURCES) $(LISP)
+ list='$(SOURCES) $(HEADERS) $(LISP)'; \
+ case "$(srcdir)" in \
+ [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
+ *) sdir=$(subdir)/$(srcdir) ;; \
+ esac; \
+ for i in $$list; do \
+ if test -f "$$i"; then \
+ echo "$(subdir)/$$i"; \
+ else \
+ echo "$$sdir/$$i"; \
+ fi; \
+ done >> $(top_builddir)/cscope.files
+
distclean-tags:
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
if test -f "$$d$$p"; then echo "$$d$$p"; else :; fi; done`; \
if test -n "$$list" && \
grep 'ab help2man is required to generate this page' $$list >/dev/null; then \
- echo "error: found man pages containing the \`missing help2man' replacement text:" >&2; \
+ echo "error: found man pages containing the 'missing help2man' replacement text:" >&2; \
grep -l 'ab help2man is required to generate this page' $$list | sed 's/^/ /' >&2; \
echo " to fix them, install help2man, remove and regenerate the man pages;" >&2; \
- echo " typically \`make maintainer-clean' will remove them" >&2; \
+ echo " typically 'make maintainer-clean' will remove them" >&2; \
exit 1; \
else :; fi; \
else :; fi
.MAKE: install-am install-strip
.PHONY: CTAGS GTAGS all all-am check check-am clean clean-binPROGRAMS \
- clean-generic ctags distclean distclean-compile \
+ clean-generic cscopelist ctags distclean distclean-compile \
distclean-generic distclean-tags distdir dvi dvi-am html \
html-am info info-am install install-am install-binPROGRAMS \
install-data install-data-am install-dvi install-dvi-am \
-INCLUDES = -I$(top_srcdir)/include
+AM_CPPFLAGS = -I$(top_srcdir)/include
EXTRA_DIST = README.aseqnet aseqnet.1
bin_PROGRAMS = aseqnet
-# Makefile.in generated by automake 1.11.3 from Makefile.am.
+# Makefile.in generated by automake 1.12.2 from Makefile.am.
# @configure_input@
-# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software
-# Foundation, Inc.
+# Copyright (C) 1994-2012 Free Software Foundation, Inc.
+
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
@SET_MAKE@
VPATH = @srcdir@
+am__make_dryrun = \
+ { \
+ am__dry=no; \
+ case $$MAKEFLAGS in \
+ *\\[\ \ ]*) \
+ echo 'am--echo: ; @echo "AM" OK' | $(MAKE) -f - 2>/dev/null \
+ | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
+ *) \
+ for am__flg in $$MAKEFLAGS; do \
+ case $$am__flg in \
+ *=*|--*) ;; \
+ *n*) am__dry=yes; break;; \
+ esac; \
+ done;; \
+ esac; \
+ test $$am__dry = yes; \
+ }
pkgdatadir = $(datadir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
host_triplet = @host@
bin_PROGRAMS = aseqnet$(EXEEXT)
subdir = seq/aseqnet
-DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
+DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in \
+ $(top_srcdir)/depcomp
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/m4/gettext.m4 \
$(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/lib-ld.m4 \
$(top_srcdir)/m4/lib-link.m4 $(top_srcdir)/m4/lib-prefix.m4 \
$(top_srcdir)/m4/nls.m4 $(top_srcdir)/m4/po.m4 \
$(top_srcdir)/m4/progtest.m4 $(top_srcdir)/acinclude.m4 \
- $(top_srcdir)/configure.in
+ $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(install_sh) -d
LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
SOURCES = $(aseqnet_SOURCES)
DIST_SOURCES = $(aseqnet_SOURCES)
+am__can_run_installinfo = \
+ case $$AM_UPDATE_INFO_DIR in \
+ n|no|NO) false;; \
+ *) (install-info --version) >/dev/null 2>&1;; \
+ esac
am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
am__vpath_adj = case $$p in \
$(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
CTAGS = ctags
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
ACLOCAL = @ACLOCAL@
+ALSACTL_DAEMONSWITCH = @ALSACTL_DAEMONSWITCH@
+ALSACTL_PIDFILE_DIR = @ALSACTL_PIDFILE_DIR@
ALSA_CFLAGS = @ALSA_CFLAGS@
ALSA_LIBS = @ALSA_LIBS@
AMTAR = @AMTAR@
+ASOUND_LOCK_DIR = @ASOUND_LOCK_DIR@
ASOUND_STATE_DIR = @ASOUND_STATE_DIR@
AUTOCONF = @AUTOCONF@
AUTOHEADER = @AUTOHEADER@
LTLIBICONV = @LTLIBICONV@
LTLIBINTL = @LTLIBINTL@
LTLIBOBJS = @LTLIBOBJS@
+MAINT = @MAINT@
MAKEINFO = @MAKEINFO@
MKDIR_P = @MKDIR_P@
MSGFMT = @MSGFMT@
localstatedir = @localstatedir@
mandir = @mandir@
mkdir_p = @mkdir_p@
+mydatadir = @mydatadir@
ncurses5_config = @ncurses5_config@
ncursesw5_config = @ncursesw5_config@
oldincludedir = @oldincludedir@
top_srcdir = @top_srcdir@
udevrulesdir = @udevrulesdir@
xmlto = @xmlto@
-INCLUDES = -I$(top_srcdir)/include
+AM_CPPFLAGS = -I$(top_srcdir)/include
EXTRA_DIST = README.aseqnet aseqnet.1
aseqnet_SOURCES = aseqnet.c
aseqnet_LDADD = $(INTLLIBS)
.SUFFIXES:
.SUFFIXES: .c .o .obj
-$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps)
@for dep in $?; do \
case '$(am__configure_deps)' in \
*$$dep*) \
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-$(top_srcdir)/configure: $(am__configure_deps)
+$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-$(ACLOCAL_M4): $(am__aclocal_m4_deps)
+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(am__aclocal_m4_deps):
install-binPROGRAMS: $(bin_PROGRAMS)
@$(NORMAL_INSTALL)
- test -z "$(bindir)" || $(MKDIR_P) "$(DESTDIR)$(bindir)"
@list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \
+ if test -n "$$list"; then \
+ echo " $(MKDIR_P) '$(DESTDIR)$(bindir)'"; \
+ $(MKDIR_P) "$(DESTDIR)$(bindir)" || exit 1; \
+ fi; \
for p in $$list; do echo "$$p $$p"; done | \
sed 's/$(EXEEXT)$$//' | \
while read p p1; do if test -f $$p; \
@am__fastdepCC_FALSE@ $(COMPILE) -c `$(CYGPATH_W) '$<'`
install-man1: $(man_MANS)
@$(NORMAL_INSTALL)
- test -z "$(man1dir)" || $(MKDIR_P) "$(DESTDIR)$(man1dir)"
- @list=''; test -n "$(man1dir)" || exit 0; \
- { for i in $$list; do echo "$$i"; done; \
- l2='$(man_MANS)'; for i in $$l2; do echo "$$i"; done | \
- sed -n '/\.1[a-z]*$$/p'; \
+ @list1=''; \
+ list2='$(man_MANS)'; \
+ test -n "$(man1dir)" \
+ && test -n "`echo $$list1$$list2`" \
+ || exit 0; \
+ echo " $(MKDIR_P) '$(DESTDIR)$(man1dir)'"; \
+ $(MKDIR_P) "$(DESTDIR)$(man1dir)" || exit 1; \
+ { for i in $$list1; do echo "$$i"; done; \
+ if test -n "$$list2"; then \
+ for i in $$list2; do echo "$$i"; done \
+ | sed -n '/\.1[a-z]*$$/p'; \
+ fi; \
} | while read p; do \
if test -f $$p; then d=; else d="$(srcdir)/"; fi; \
echo "$$d$$p"; echo "$$p"; \
&& $(am__cd) $(top_srcdir) \
&& gtags -i $(GTAGS_ARGS) "$$here"
+cscopelist: $(HEADERS) $(SOURCES) $(LISP)
+ list='$(SOURCES) $(HEADERS) $(LISP)'; \
+ case "$(srcdir)" in \
+ [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
+ *) sdir=$(subdir)/$(srcdir) ;; \
+ esac; \
+ for i in $$list; do \
+ if test -f "$$i"; then \
+ echo "$(subdir)/$$i"; \
+ else \
+ echo "$$sdir/$$i"; \
+ fi; \
+ done >> $(top_builddir)/cscope.files
+
distclean-tags:
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
if test -f "$$d$$p"; then echo "$$d$$p"; else :; fi; done`; \
if test -n "$$list" && \
grep 'ab help2man is required to generate this page' $$list >/dev/null; then \
- echo "error: found man pages containing the \`missing help2man' replacement text:" >&2; \
+ echo "error: found man pages containing the 'missing help2man' replacement text:" >&2; \
grep -l 'ab help2man is required to generate this page' $$list | sed 's/^/ /' >&2; \
echo " to fix them, install help2man, remove and regenerate the man pages;" >&2; \
- echo " typically \`make maintainer-clean' will remove them" >&2; \
+ echo " typically 'make maintainer-clean' will remove them" >&2; \
exit 1; \
else :; fi; \
else :; fi
.MAKE: install-am install-strip
.PHONY: CTAGS GTAGS all all-am check check-am clean clean-binPROGRAMS \
- clean-generic ctags distclean distclean-compile \
+ clean-generic cscopelist ctags distclean distclean-compile \
distclean-generic distclean-tags distdir dvi dvi-am html \
html-am info info-am install install-am install-binPROGRAMS \
install-data install-data-am install-dvi install-dvi-am \
printf(_(" server mode: aseqnet [-options]\n"));
printf(_(" client mode: aseqnet [-options] server_host\n"));
printf(_("options:\n"));
- printf(_(" -p,--port # : sepcify TCP port (digit or service name)\n"));
+ printf(_(" -p,--port # : specify TCP port (digit or service name)\n"));
printf(_(" -s,--source addr : read from given addr (client:port)\n"));
printf(_(" -d,--dest addr : write to given addr (client:port)\n"));
printf(_(" -v, --verbose : print verbose messages\n"));
-INCLUDES = -I$(top_srcdir)/include
+AM_CPPFLAGS = -I$(top_srcdir)/include
SUBDIRS= samples
LDADD = $(LIBINTL) -lm
-# Makefile.in generated by automake 1.11.3 from Makefile.am.
+# Makefile.in generated by automake 1.12.2 from Makefile.am.
# @configure_input@
-# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software
-# Foundation, Inc.
+# Copyright (C) 1994-2012 Free Software Foundation, Inc.
+
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
@SET_MAKE@
VPATH = @srcdir@
+am__make_dryrun = \
+ { \
+ am__dry=no; \
+ case $$MAKEFLAGS in \
+ *\\[\ \ ]*) \
+ echo 'am--echo: ; @echo "AM" OK' | $(MAKE) -f - 2>/dev/null \
+ | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
+ *) \
+ for am__flg in $$MAKEFLAGS; do \
+ case $$am__flg in \
+ *=*|--*) ;; \
+ *n*) am__dry=yes; break;; \
+ esac; \
+ done;; \
+ esac; \
+ test $$am__dry = yes; \
+ }
pkgdatadir = $(datadir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
host_triplet = @host@
bin_PROGRAMS = speaker-test$(EXEEXT)
subdir = speaker-test
-DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
+DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in \
+ $(top_srcdir)/depcomp
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/m4/gettext.m4 \
$(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/lib-ld.m4 \
$(top_srcdir)/m4/lib-link.m4 $(top_srcdir)/m4/lib-prefix.m4 \
$(top_srcdir)/m4/nls.m4 $(top_srcdir)/m4/po.m4 \
$(top_srcdir)/m4/progtest.m4 $(top_srcdir)/acinclude.m4 \
- $(top_srcdir)/configure.in
+ $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(install_sh) -d
install-pdf-recursive install-ps-recursive install-recursive \
installcheck-recursive installdirs-recursive pdf-recursive \
ps-recursive uninstall-recursive
+am__can_run_installinfo = \
+ case $$AM_UPDATE_INFO_DIR in \
+ n|no|NO) false;; \
+ *) (install-info --version) >/dev/null 2>&1;; \
+ esac
am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
am__vpath_adj = case $$p in \
$(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
done; \
reldir="$$dir2"
ACLOCAL = @ACLOCAL@
+ALSACTL_DAEMONSWITCH = @ALSACTL_DAEMONSWITCH@
+ALSACTL_PIDFILE_DIR = @ALSACTL_PIDFILE_DIR@
ALSA_CFLAGS = @ALSA_CFLAGS@
ALSA_LIBS = @ALSA_LIBS@
AMTAR = @AMTAR@
+ASOUND_LOCK_DIR = @ASOUND_LOCK_DIR@
ASOUND_STATE_DIR = @ASOUND_STATE_DIR@
AUTOCONF = @AUTOCONF@
AUTOHEADER = @AUTOHEADER@
LTLIBICONV = @LTLIBICONV@
LTLIBINTL = @LTLIBINTL@
LTLIBOBJS = @LTLIBOBJS@
+MAINT = @MAINT@
MAKEINFO = @MAKEINFO@
MKDIR_P = @MKDIR_P@
MSGFMT = @MSGFMT@
localstatedir = @localstatedir@
mandir = @mandir@
mkdir_p = @mkdir_p@
+mydatadir = @mydatadir@
ncurses5_config = @ncurses5_config@
ncursesw5_config = @ncursesw5_config@
oldincludedir = @oldincludedir@
top_srcdir = @top_srcdir@
udevrulesdir = @udevrulesdir@
xmlto = @xmlto@
-INCLUDES = -I$(top_srcdir)/include
+AM_CPPFLAGS = -I$(top_srcdir)/include
SUBDIRS = samples
LDADD = $(LIBINTL) -lm
speaker_test_SOURCES = speaker-test.c pink.c
.SUFFIXES:
.SUFFIXES: .c .o .obj
-$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps)
@for dep in $?; do \
case '$(am__configure_deps)' in \
*$$dep*) \
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-$(top_srcdir)/configure: $(am__configure_deps)
+$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-$(ACLOCAL_M4): $(am__aclocal_m4_deps)
+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(am__aclocal_m4_deps):
install-binPROGRAMS: $(bin_PROGRAMS)
@$(NORMAL_INSTALL)
- test -z "$(bindir)" || $(MKDIR_P) "$(DESTDIR)$(bindir)"
@list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \
+ if test -n "$$list"; then \
+ echo " $(MKDIR_P) '$(DESTDIR)$(bindir)'"; \
+ $(MKDIR_P) "$(DESTDIR)$(bindir)" || exit 1; \
+ fi; \
for p in $$list; do echo "$$p $$p"; done | \
sed 's/$(EXEEXT)$$//' | \
while read p p1; do if test -f $$p; \
@am__fastdepCC_FALSE@ $(COMPILE) -c `$(CYGPATH_W) '$<'`
install-man1: $(man_MANS)
@$(NORMAL_INSTALL)
- test -z "$(man1dir)" || $(MKDIR_P) "$(DESTDIR)$(man1dir)"
- @list=''; test -n "$(man1dir)" || exit 0; \
- { for i in $$list; do echo "$$i"; done; \
- l2='$(man_MANS)'; for i in $$l2; do echo "$$i"; done | \
- sed -n '/\.1[a-z]*$$/p'; \
+ @list1=''; \
+ list2='$(man_MANS)'; \
+ test -n "$(man1dir)" \
+ && test -n "`echo $$list1$$list2`" \
+ || exit 0; \
+ echo " $(MKDIR_P) '$(DESTDIR)$(man1dir)'"; \
+ $(MKDIR_P) "$(DESTDIR)$(man1dir)" || exit 1; \
+ { for i in $$list1; do echo "$$i"; done; \
+ if test -n "$$list2"; then \
+ for i in $$list2; do echo "$$i"; done \
+ | sed -n '/\.1[a-z]*$$/p'; \
+ fi; \
} | while read p; do \
if test -f $$p; then d=; else d="$(srcdir)/"; fi; \
echo "$$d$$p"; echo "$$p"; \
dir='$(DESTDIR)$(man1dir)'; $(am__uninstall_files_from_dir)
# This directory's subdirectories are mostly independent; you can cd
-# into them and run `make' without going through this Makefile.
-# To change the values of `make' variables: instead of editing Makefiles,
-# (1) if the variable is set in `config.status', edit `config.status'
-# (which will cause the Makefiles to be regenerated when you run `make');
-# (2) otherwise, pass the desired values on the `make' command line.
-$(RECURSIVE_TARGETS):
+# into them and run 'make' without going through this Makefile.
+# To change the values of 'make' variables: instead of editing Makefiles,
+# (1) if the variable is set in 'config.status', edit 'config.status'
+# (which will cause the Makefiles to be regenerated when you run 'make');
+# (2) otherwise, pass the desired values on the 'make' command line.
+$(RECURSIVE_TARGETS) $(RECURSIVE_CLEAN_TARGETS):
@fail= failcom='exit 1'; \
for f in x $$MAKEFLAGS; do \
case $$f in \
done; \
dot_seen=no; \
target=`echo $@ | sed s/-recursive//`; \
- list='$(SUBDIRS)'; for subdir in $$list; do \
+ case "$@" in \
+ distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \
+ *) list='$(SUBDIRS)' ;; \
+ esac; \
+ for subdir in $$list; do \
echo "Making $$target in $$subdir"; \
if test "$$subdir" = "."; then \
dot_seen=yes; \
if test "$$dot_seen" = "no"; then \
$(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \
fi; test -z "$$fail"
-
-$(RECURSIVE_CLEAN_TARGETS):
- @fail= failcom='exit 1'; \
- for f in x $$MAKEFLAGS; do \
- case $$f in \
- *=* | --[!k]*);; \
- *k*) failcom='fail=yes';; \
- esac; \
- done; \
- dot_seen=no; \
- case "$@" in \
- distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \
- *) list='$(SUBDIRS)' ;; \
- esac; \
- rev=''; for subdir in $$list; do \
- if test "$$subdir" = "."; then :; else \
- rev="$$subdir $$rev"; \
- fi; \
- done; \
- rev="$$rev ."; \
- target=`echo $@ | sed s/-recursive//`; \
- for subdir in $$rev; do \
- echo "Making $$target in $$subdir"; \
- if test "$$subdir" = "."; then \
- local_target="$$target-am"; \
- else \
- local_target="$$target"; \
- fi; \
- ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
- || eval $$failcom; \
- done && test -z "$$fail"
tags-recursive:
list='$(SUBDIRS)'; for subdir in $$list; do \
test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
list='$(SUBDIRS)'; for subdir in $$list; do \
test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
done
+cscopelist-recursive:
+ list='$(SUBDIRS)'; for subdir in $$list; do \
+ test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) cscopelist); \
+ done
ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
&& $(am__cd) $(top_srcdir) \
&& gtags -i $(GTAGS_ARGS) "$$here"
+cscopelist: cscopelist-recursive $(HEADERS) $(SOURCES) $(LISP)
+ list='$(SOURCES) $(HEADERS) $(LISP)'; \
+ case "$(srcdir)" in \
+ [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
+ *) sdir=$(subdir)/$(srcdir) ;; \
+ esac; \
+ for i in $$list; do \
+ if test -f "$$i"; then \
+ echo "$(subdir)/$$i"; \
+ else \
+ echo "$$sdir/$$i"; \
+ fi; \
+ done >> $(top_builddir)/cscope.files
+
distclean-tags:
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
if test -f "$$d$$p"; then echo "$$d$$p"; else :; fi; done`; \
if test -n "$$list" && \
grep 'ab help2man is required to generate this page' $$list >/dev/null; then \
- echo "error: found man pages containing the \`missing help2man' replacement text:" >&2; \
+ echo "error: found man pages containing the 'missing help2man' replacement text:" >&2; \
grep -l 'ab help2man is required to generate this page' $$list | sed 's/^/ /' >&2; \
echo " to fix them, install help2man, remove and regenerate the man pages;" >&2; \
- echo " typically \`make maintainer-clean' will remove them" >&2; \
+ echo " typically 'make maintainer-clean' will remove them" >&2; \
exit 1; \
else :; fi; \
else :; fi
done
@list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
if test "$$subdir" = .; then :; else \
- test -d "$(distdir)/$$subdir" \
- || $(MKDIR_P) "$(distdir)/$$subdir" \
- || exit 1; \
- fi; \
- done
- @list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
- if test "$$subdir" = .; then :; else \
+ $(am__make_dryrun) \
+ || test -d "$(distdir)/$$subdir" \
+ || $(MKDIR_P) "$(distdir)/$$subdir" \
+ || exit 1; \
dir1=$$subdir; dir2="$(distdir)/$$subdir"; \
$(am__relativize); \
new_distdir=$$reldir; \
uninstall-man: uninstall-man1
-.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) ctags-recursive \
- install-am install-strip tags-recursive
+.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) \
+ cscopelist-recursive ctags-recursive install-am install-strip \
+ tags-recursive
.PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \
all all-am check check-am clean clean-binPROGRAMS \
- clean-generic ctags ctags-recursive distclean \
- distclean-compile distclean-generic distclean-tags distdir dvi \
- dvi-am html html-am info info-am install install-am \
- install-binPROGRAMS install-data install-data-am install-dvi \
- install-dvi-am install-exec install-exec-am install-html \
- install-html-am install-info install-info-am install-man \
- install-man1 install-pdf install-pdf-am install-ps \
- install-ps-am install-strip installcheck installcheck-am \
- installdirs installdirs-am maintainer-clean \
- maintainer-clean-generic mostlyclean mostlyclean-compile \
- mostlyclean-generic pdf pdf-am ps ps-am tags tags-recursive \
- uninstall uninstall-am uninstall-binPROGRAMS uninstall-man \
- uninstall-man1
+ clean-generic cscopelist cscopelist-recursive ctags \
+ ctags-recursive distclean distclean-compile distclean-generic \
+ distclean-tags distdir dvi dvi-am html html-am info info-am \
+ install install-am install-binPROGRAMS install-data \
+ install-data-am install-dvi install-dvi-am install-exec \
+ install-exec-am install-html install-html-am install-info \
+ install-info-am install-man install-man1 install-pdf \
+ install-pdf-am install-ps install-ps-am install-strip \
+ installcheck installcheck-am installdirs installdirs-am \
+ maintainer-clean maintainer-clean-generic mostlyclean \
+ mostlyclean-compile mostlyclean-generic pdf pdf-am ps ps-am \
+ tags tags-recursive uninstall uninstall-am \
+ uninstall-binPROGRAMS uninstall-man uninstall-man1
# Tell versions [3.59,3.63) of GNU make to not export all variables.
-# Makefile.in generated by automake 1.11.3 from Makefile.am.
+# Makefile.in generated by automake 1.12.2 from Makefile.am.
# @configure_input@
-# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software
-# Foundation, Inc.
+# Copyright (C) 1994-2012 Free Software Foundation, Inc.
+
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
@SET_MAKE@
VPATH = @srcdir@
+am__make_dryrun = \
+ { \
+ am__dry=no; \
+ case $$MAKEFLAGS in \
+ *\\[\ \ ]*) \
+ echo 'am--echo: ; @echo "AM" OK' | $(MAKE) -f - 2>/dev/null \
+ | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
+ *) \
+ for am__flg in $$MAKEFLAGS; do \
+ case $$am__flg in \
+ *=*|--*) ;; \
+ *n*) am__dry=yes; break;; \
+ esac; \
+ done;; \
+ esac; \
+ test $$am__dry = yes; \
+ }
pkgdatadir = $(datadir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
$(top_srcdir)/m4/lib-link.m4 $(top_srcdir)/m4/lib-prefix.m4 \
$(top_srcdir)/m4/nls.m4 $(top_srcdir)/m4/po.m4 \
$(top_srcdir)/m4/progtest.m4 $(top_srcdir)/acinclude.m4 \
- $(top_srcdir)/configure.in
+ $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(install_sh) -d
CONFIG_CLEAN_VPATH_FILES =
SOURCES =
DIST_SOURCES =
+am__can_run_installinfo = \
+ case $$AM_UPDATE_INFO_DIR in \
+ n|no|NO) false;; \
+ *) (install-info --version) >/dev/null 2>&1;; \
+ esac
am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
am__vpath_adj = case $$p in \
$(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
DATA = $(alsa_DATA) $(sound_DATA)
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
ACLOCAL = @ACLOCAL@
+ALSACTL_DAEMONSWITCH = @ALSACTL_DAEMONSWITCH@
+ALSACTL_PIDFILE_DIR = @ALSACTL_PIDFILE_DIR@
ALSA_CFLAGS = @ALSA_CFLAGS@
ALSA_LIBS = @ALSA_LIBS@
AMTAR = @AMTAR@
+ASOUND_LOCK_DIR = @ASOUND_LOCK_DIR@
ASOUND_STATE_DIR = @ASOUND_STATE_DIR@
AUTOCONF = @AUTOCONF@
AUTOHEADER = @AUTOHEADER@
LTLIBICONV = @LTLIBICONV@
LTLIBINTL = @LTLIBINTL@
LTLIBOBJS = @LTLIBOBJS@
+MAINT = @MAINT@
MAKEINFO = @MAKEINFO@
MKDIR_P = @MKDIR_P@
MSGFMT = @MSGFMT@
localstatedir = @localstatedir@
mandir = @mandir@
mkdir_p = @mkdir_p@
+mydatadir = @mydatadir@
ncurses5_config = @ncurses5_config@
ncursesw5_config = @ncursesw5_config@
oldincludedir = @oldincludedir@
all: all-am
.SUFFIXES:
-$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps)
@for dep in $?; do \
case '$(am__configure_deps)' in \
*$$dep*) \
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-$(top_srcdir)/configure: $(am__configure_deps)
+$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-$(ACLOCAL_M4): $(am__aclocal_m4_deps)
+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(am__aclocal_m4_deps):
install-alsaDATA: $(alsa_DATA)
@$(NORMAL_INSTALL)
- test -z "$(alsadir)" || $(MKDIR_P) "$(DESTDIR)$(alsadir)"
@list='$(alsa_DATA)'; test -n "$(alsadir)" || list=; \
+ if test -n "$$list"; then \
+ echo " $(MKDIR_P) '$(DESTDIR)$(alsadir)'"; \
+ $(MKDIR_P) "$(DESTDIR)$(alsadir)" || exit 1; \
+ fi; \
for p in $$list; do \
if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
echo "$$d$$p"; \
dir='$(DESTDIR)$(alsadir)'; $(am__uninstall_files_from_dir)
install-soundDATA: $(sound_DATA)
@$(NORMAL_INSTALL)
- test -z "$(sounddir)" || $(MKDIR_P) "$(DESTDIR)$(sounddir)"
@list='$(sound_DATA)'; test -n "$(sounddir)" || list=; \
+ if test -n "$$list"; then \
+ echo " $(MKDIR_P) '$(DESTDIR)$(sounddir)'"; \
+ $(MKDIR_P) "$(DESTDIR)$(sounddir)" || exit 1; \
+ fi; \
for p in $$list; do \
if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
echo "$$d$$p"; \
ctags: CTAGS
CTAGS:
+cscope cscopelist:
+
distdir: $(DISTFILES)
@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
. fi
. PP
..
-.TH SPEAKER\-TEST 1 "April 2nd, 2011" speaker-test
+.TH SPEAKER\-TEST 1 "April 2nd, 2011" speaker\-test
.SH NAME
-speaker\-test \- command-line speaker test tone generator for ALSA
+speaker\-test \- command\-line speaker test tone generator for ALSA
.SH SYNOPSIS
.B speaker\-test [\-options]
.SH DESCRIPTION
\fBspeaker\-test\fP generates a tone that can be used to test the speakers of a computer.
-\fBspeaker-test\fP by default will test the \fIdefault\fP device. If you
+\fBspeaker\-test\fP by default will test the \fIdefault\fP device. If you
want to test another sound device you will have first to get a list of
all of the sound cards in your system and the devices associated with
those cards. Notice that there might be for example, one device for
analog sound, one for digital sound and one for HDMI sound.
-To get the list of available cards and devices you can run \fBaplay -L\fR.
+To get the list of available cards and devices you can run \fBaplay \-L\fR.
.P \fBaplay\fR's output will be similar to this one:
.nf
-$ aplay -L
+$ aplay \-L
null
Discard all samples (playback) or generate zero samples (capture)
default:CARD=ICH5
.P Each of the devices is listed in the beginning of the definition so,
in the above example, there are four devices listed: null, default, front
-and surround40. So, if you want to test the last device you can
-run \fBspeaker-test -Dsurround40:ICH5 -c 6\fR. The \fB-c\fR option will
+and surround40. So, if you want to test the last device you can
+run \fBspeaker\-test \-Dsurround40:ICH5 \-c 6\fR. The \fB\-c\fR option will
indicate that the six audio channels in the device have to be tested.
The default value is 0.
.TP
-\fB\-P\fP | \fB\-\-nperiods\fP \fPERIODS\fP
+\fB\-P\fP | \fB\-\-nperiods\fP \fIPERIODS\fP
Use number of periods. The default value is 4.
.TP
You can pass the number from 1 to 3 as a backward compatibility.
.TP
-\fB\-l\fP | \fB\-\-nloops\fP \fBCOUNT\fP
+\fB\-l\fP | \fB\-\-nloops\fP \fICOUNT\fP
Specifies the number of loops. Zero means to run infinitely.
always a single-shot without looping.
.TP
-\fB\-s\fP | \fB\-\-speaker\fP \fBCHANNEL\fP
+\fB\-s\fP | \fB\-\-speaker\fP \fICHANNEL\fP
Do a single-shot speaker test for the given channel. The channel number starts from 1.
The channel number corresponds to left, right, rear-left, rear-right, center, LFE,
side-left, side-right, and so on.
with looping.
.TP
-\fB\-w\fP | \fB\-\-wavfile\fP
+\fB\-w\fP | \fB\-\-wavfile\fP \fIFILE\fP
Use the given WAV file for the playback instead of pre-defined WAV files.
.TP
-\fB\-W\fP | \fB\-\-wavdir\fP
+\fB\-W\fP | \fB\-\-wavdir\fP \fIDIRECTORY\fP
Specify the directory containing WAV files for playback.
The default path is \fI/usr/share/sounds/alsa\fP.
+.TP
+\fB\-m\fP | \fB\-\-chmap\fP \fIMAP\fP
+Pass the channel map to override.
+If the playback in a specific channel order or channel positions is
+required, pass the channel position strings to this option.
+
+.TP
+\fB\-X\fP | \fB\-\-force-frequency\fP
+Allow supplied \fIFREQ\fP to be outside the default range of 30-8000Hz. A minimum of 1Hz is still enforced.
.SH USAGE EXAMPLES
Produce stereo sound from one stereo jack:
.EX
- speaker-test -Dplug:front -c2
+ speaker\-test \-Dplug:front \-c2
.EE
Produce 4 speaker sound from two stereo jacks:
.EX
- speaker-test -Dplug:surround40 -c4
+ speaker\-test \-Dplug:surround40 \-c4
.EE
Produce 5.1 speaker sound from three stereo jacks:
.EX
- speaker-test -Dplug:surround51 -c6
+ speaker\-test \-Dplug:surround51 \-c6
.EE
To send a nice low 75Hz tone to the Woofer and then exit without touching any other speakers:
.EX
- speaker-test -Dplug:surround51 -c6 -s1 -f75
+ speaker\-test \-Dplug:surround51 \-c6 \-s1 \-f75
.EE
-To do a 2-speaker test using the spdif (coax or optical) output:
+To do a 2\-speaker test using the spdif (coax or optical) output:
.EX
- speaker-test -Dplug:spdif -c2
+ speaker\-test \-Dplug:spdif \-c2
.EE
+Play in the order of front\-right and front-left from the front PCM
+.EX
+ speaker\-test \-Dplug:front \-c2 \-mFR,FL
+.EE
.SH SEE ALSO
.BR aplay(1)
.SH AUTHOR
-The speaker-test program was written by James Courtier-Dutton.
+The speaker\-test program was written by James Courtier-Dutton.
Pink noise support was added by Nathan Hurst.
Further extensions by Takashi Iwai.
#include <inttypes.h>
#include <ctype.h>
#include <byteswap.h>
+#include <signal.h>
#define ALSA_PCM_NEW_HW_PARAMS_API
#define ALSA_PCM_NEW_SW_PARAMS_API
#include <locale.h>
#endif
+#ifdef SND_CHMAP_API_VERSION
+#define CONFIG_SUPPORT_CHMAP 1
+#endif
+
enum {
TEST_PINK_NOISE = 1,
TEST_SINE,
#define BE_INT(v) (v)
#endif
+#define ARRAY_SIZE(x) (int)(sizeof(x)/sizeof(x[0]))
+
static char *device = "default"; /* playback device */
static snd_pcm_format_t format = SND_PCM_FORMAT_S16; /* sample format */
static unsigned int rate = 48000; /* stream rate */
static const char *given_test_wav_file = NULL;
static char *wav_file_dir = SOUNDSDIR;
static int debug = 0;
+static int force_frequency = 0;
+static int in_aborting = 0;
+static snd_pcm_t *pcm_handle = NULL;
+
+#ifdef CONFIG_SUPPORT_CHMAP
+static snd_pcm_chmap_t *channel_map;
+static int channel_map_set;
+static unsigned int *ordered_channels;
+#endif
static const char *const channel_name[MAX_CHANNELS] = {
/* 0 */ N_("Front Left"),
6, /* Side Left */
5, /* LFE */
};
+
+#ifdef CONFIG_SUPPORT_CHMAP
+/* circular clockwise and bottom-to-top order */
+static const int channel_order[] = {
+ [SND_CHMAP_FLW] = 10,
+ [SND_CHMAP_FL] = 20,
+ [SND_CHMAP_TFL] = 30,
+ [SND_CHMAP_FLC] = 40,
+ [SND_CHMAP_TFLC] = 50,
+ [SND_CHMAP_FC] = 60,
+ [SND_CHMAP_TFC] = 70,
+ [SND_CHMAP_FRC] = 80,
+ [SND_CHMAP_TFRC] = 90,
+ [SND_CHMAP_FR] = 100,
+ [SND_CHMAP_TFR] = 110,
+ [SND_CHMAP_FRW] = 120,
+ [SND_CHMAP_SR] = 130,
+ [SND_CHMAP_TSR] = 140,
+ [SND_CHMAP_RR] = 150,
+ [SND_CHMAP_TRR] = 160,
+ [SND_CHMAP_RRC] = 170,
+ [SND_CHMAP_RC] = 180,
+ [SND_CHMAP_TRC] = 190,
+ [SND_CHMAP_RLC] = 200,
+ [SND_CHMAP_RL] = 210,
+ [SND_CHMAP_TRL] = 220,
+ [SND_CHMAP_SL] = 230,
+ [SND_CHMAP_TSL] = 240,
+ [SND_CHMAP_BC] = 250,
+ [SND_CHMAP_TC] = 260,
+ [SND_CHMAP_LLFE] = 270,
+ [SND_CHMAP_LFE] = 280,
+ [SND_CHMAP_RLFE] = 290,
+ /* not in table = 10000 */
+ [SND_CHMAP_UNKNOWN] = 20000,
+ [SND_CHMAP_NA] = 30000,
+};
+
+static int chpos_cmp(const void *chnum1p, const void *chnum2p)
+{
+ int chnum1 = *(int *)chnum1p;
+ int chnum2 = *(int *)chnum2p;
+ int chpos1 = channel_map->pos[chnum1];
+ int chpos2 = channel_map->pos[chnum2];
+ int weight1 = 10000;
+ int weight2 = 10000;
+
+ if (chpos1 < ARRAY_SIZE(channel_order) && channel_order[chpos1])
+ weight1 = channel_order[chpos1];
+ if (chpos2 < ARRAY_SIZE(channel_order) && channel_order[chpos2])
+ weight2 = channel_order[chpos2];
+
+ if (weight1 == weight2) {
+ /* order by channel number if both have the same position (e.g. UNKNOWN)
+ * or if neither is in channel_order[] */
+ return chnum1 - chnum2;
+ }
+
+ /* order according to channel_order[] */
+ return weight1 - weight2;
+}
+
+static int *order_channels(void)
+{
+ /* create a (playback order => channel number) table with channels ordered
+ * according to channel_order[] values */
+ int i;
+ int *ordered_chs;
+
+ ordered_chs = calloc(channel_map->channels, sizeof(*ordered_chs));
+ if (!ordered_chs)
+ return NULL;
+
+ for (i = 0; i < channel_map->channels; i++)
+ ordered_chs[i] = i;
+
+ qsort(ordered_chs, channel_map->channels, sizeof(*ordered_chs), chpos_cmp);
+
+ return ordered_chs;
+}
+#endif
+
+static int get_speaker_channel(int chn)
+{
+#ifdef CONFIG_SUPPORT_CHMAP
+ if (channel_map_set || (ordered_channels && chn >= channel_map->channels))
+ return chn;
+ if (ordered_channels)
+ return ordered_channels[chn];
+#endif
+
+ switch (channels) {
+ case 4:
+ chn = channels4[chn];
+ break;
+ case 6:
+ chn = channels6[chn];
+ break;
+ case 8:
+ chn = channels8[chn];
+ break;
+ }
+
+ return chn;
+}
+
+static const char *get_channel_name(int chn)
+{
+#ifdef CONFIG_SUPPORT_CHMAP
+ if (channel_map) {
+ const char *name = NULL;
+ if (chn < channel_map->channels)
+ name = snd_pcm_chmap_long_name(channel_map->pos[chn]);
+ return name ? name : "Unknown";
+ }
+#endif
+ return gettext(channel_name[chn]);
+}
+
static const int supported_formats[] = {
SND_PCM_FORMAT_S8,
SND_PCM_FORMAT_S16_LE,
return 0;
}
+#ifdef CONFIG_SUPPORT_CHMAP
+static int config_chmap(snd_pcm_t *handle, const char *mapstr)
+{
+ int err;
+
+ if (mapstr) {
+ channel_map = snd_pcm_chmap_parse_string(mapstr);
+ if (!channel_map) {
+ fprintf(stderr, _("Unable to parse channel map string: %s\n"), mapstr);
+ return -EINVAL;
+ }
+ err = snd_pcm_set_chmap(handle, channel_map);
+ if (err < 0) {
+ fprintf(stderr, _("Unable to set channel map: %s\n"), mapstr);
+ return err;
+ }
+ channel_map_set = 1;
+ return 0;
+ }
+
+ channel_map = snd_pcm_get_chmap(handle);
+
+ /* create a channel order table for default layouts */
+ if (channel_map)
+ ordered_channels = order_channels();
+
+ return 0;
+}
+#endif
+
/*
* Underrun and suspend recovery
*/
if (given_test_wav_file)
return check_wav_file(chn, given_test_wav_file);
- else
- return check_wav_file(chn, wavs[chn]);
+
+#ifdef CONFIG_SUPPORT_CHMAP
+ if (channel_map_set && chn < channel_map->channels) {
+ int channel = channel_map->pos[chn] - SND_CHMAP_FL;
+ if (channel >= 0 && channel < MAX_CHANNELS)
+ return check_wav_file(chn, wavs[channel]);
+ }
+#endif
+
+ return check_wav_file(chn, wavs[chn]);
}
static int read_wav(uint16_t *buf, int channel, int offset, int bufsize)
static FILE *wavfp = NULL;
int size;
+ if (in_aborting)
+ return -EFAULT;
+
if (! wav_file[channel]) {
fprintf(stderr, _("Undefined channel %d\n"), channel);
return -EINVAL;
{
int err;
- while (cptr > 0) {
+ while (cptr > 0 && !in_aborting) {
err = snd_pcm_writei(handle, ptr, cptr);
if (err < 0) {
fprintf(stderr, _("Write error: %d,%s\n"), err, snd_strerror(err));
- if (xrun_recovery(handle, err) < 0) {
+ if ((err = xrun_recovery(handle, err)) < 0) {
fprintf(stderr, _("xrun_recovery failed: %d,%s\n"), err, snd_strerror(err));
- return -1;
+ return err;
}
break; /* skip one period */
}
if (test_type == TEST_WAV) {
int bufsize = snd_pcm_frames_to_bytes(handle, period_size);
n = 0;
- while ((err = read_wav((uint16_t *)frames, channel, n, bufsize)) > 0) {
+ while ((err = read_wav((uint16_t *)frames, channel, n, bufsize)) > 0 && !in_aborting) {
n += err;
if ((err = write_buffer(handle, frames,
snd_pcm_bytes_to_frames(handle, err * channels))) < 0)
break;
}
- if (buffer_size > n) {
+ if (buffer_size > n && !in_aborting) {
snd_pcm_drain(handle);
snd_pcm_prepare(handle);
}
if (periods <= 0)
periods = 1;
- for(n = 0; n < periods; n++) {
+ for(n = 0; n < periods && !in_aborting; n++) {
if (test_type == TEST_PINK_NOISE)
generate_pink_noise(frames, channel, period_size);
else if (test_type == TEST_PATTERN)
if ((err = write_buffer(handle, frames, period_size)) < 0)
return err;
}
- if (buffer_size > n * period_size) {
+ if (buffer_size > n * period_size && !in_aborting) {
snd_pcm_drain(handle);
snd_pcm_prepare(handle);
}
return 0;
}
+static int prg_exit(int code)
+{
+ if (pcm_handle)
+ snd_pcm_close(pcm_handle);
+ exit(code);
+ return code;
+}
+
+static void signal_handler(int sig)
+{
+ if (in_aborting)
+ return;
+
+ in_aborting = 1;
+
+ if (pcm_handle)
+ snd_pcm_abort(pcm_handle);
+ if (sig == SIGABRT) {
+ pcm_handle = NULL;
+ prg_exit(EXIT_FAILURE);
+ }
+ signal(sig, signal_handler);
+}
+
static void help(void)
{
const int *fmt;
"-s,--speaker single speaker test. Values 1=Left, 2=right, etc\n"
"-w,--wavfile Use the given WAV file as a test sound\n"
"-W,--wavdir Specify the directory containing WAV files\n"
+ "-m,--chmap Specify the channel map to override\n"
+ "-X,--force-frequency force frequencies outside the 30-8000hz range\n"
"\n"));
printf(_("Recognized sample formats are:"));
for (fmt = supported_formats; *fmt >= 0; fmt++) {
double time1,time2,time3;
unsigned int n, nloops;
struct timeval tv1,tv2;
+#ifdef CONFIG_SUPPORT_CHMAP
+ const char *chmap = NULL;
+#endif
static const struct option long_option[] = {
{"help", 0, NULL, 'h'},
{"wavfile", 1, NULL, 'w'},
{"wavdir", 1, NULL, 'W'},
{"debug", 0, NULL, 'd'},
+ {"force-frequency", 0, NULL, 'X'},
+#ifdef CONFIG_SUPPORT_CHMAP
+ {"chmap", 1, NULL, 'm'},
+#endif
{NULL, 0, NULL, 0 },
};
while (1) {
int c;
- if ((c = getopt_long(argc, argv, "hD:r:c:f:F:b:p:P:t:l:s:w:W:d", long_option, NULL)) < 0)
+ if ((c = getopt_long(argc, argv, "hD:r:c:f:F:b:p:P:t:l:s:w:W:d:X"
+#ifdef CONFIG_SUPPORT_CHMAP
+ "m:"
+#endif
+ , long_option, NULL)) < 0)
break;
switch (c) {
case 'r':
rate = atoi(optarg);
rate = rate < 4000 ? 4000 : rate;
- rate = rate > 196000 ? 196000 : rate;
+ rate = rate > 384000 ? 384000 : rate;
break;
case 'c':
channels = atoi(optarg);
break;
case 'f':
freq = atof(optarg);
- freq = freq < 30.0 ? 30.0 : freq;
- freq = freq > 5000.0 ? 5000.0 : freq;
break;
case 'b':
buffer_time = atoi(optarg);
case 'd':
debug = 1;
break;
+ case 'X':
+ force_frequency = 1;
+ break;
+#ifdef CONFIG_SUPPORT_CHMAP
+ case 'm':
+ chmap = optarg;
+ break;
+#endif
default:
fprintf(stderr, _("Unknown option '%c'\n"), c);
exit(EXIT_FAILURE);
exit(EXIT_SUCCESS);
}
+ if (!force_frequency) {
+ freq = freq < 30.0 ? 30.0 : freq;
+ freq = freq > 8000.0 ? 8000.0 : freq;
+ } else {
+ freq = freq < 1.0 ? 1.0 : freq;
+ }
+
if (test_type == TEST_WAV)
format = SND_PCM_FORMAT_S16_LE; /* fixed format */
}
+ signal(SIGINT, signal_handler);
+ signal(SIGTERM, signal_handler);
+ signal(SIGABRT, signal_handler);
+
if ((err = snd_pcm_open(&handle, device, SND_PCM_STREAM_PLAYBACK, 0)) < 0) {
printf(_("Playback open error: %d,%s\n"), err,snd_strerror(err));
- exit(EXIT_FAILURE);
+ prg_exit(EXIT_FAILURE);
}
+ pcm_handle = handle;
if ((err = set_hwparams(handle, hwparams, SND_PCM_ACCESS_RW_INTERLEAVED)) < 0) {
printf(_("Setting of hwparams failed: %s\n"), snd_strerror(err));
- snd_pcm_close(handle);
- exit(EXIT_FAILURE);
+ prg_exit(EXIT_FAILURE);
}
if ((err = set_swparams(handle, swparams)) < 0) {
printf(_("Setting of swparams failed: %s\n"), snd_strerror(err));
- snd_pcm_close(handle);
- exit(EXIT_FAILURE);
+ prg_exit(EXIT_FAILURE);
}
+
+#ifdef CONFIG_SUPPORT_CHMAP
+ err = config_chmap(handle, chmap);
+ if (err < 0)
+ prg_exit(EXIT_FAILURE);
+#endif
+
if (debug) {
snd_output_t *log;
err = snd_output_stdio_attach(&log, stderr, 0);
if (frames == NULL) {
fprintf(stderr, _("No enough memory\n"));
- exit(EXIT_FAILURE);
+ prg_exit(EXIT_FAILURE);
}
+
if (speaker==0) {
if (test_type == TEST_WAV) {
for (chn = 0; chn < channels; chn++) {
- if (setup_wav_file(chn) < 0)
- exit(EXIT_FAILURE);
+ if (setup_wav_file(get_speaker_channel(chn)) < 0)
+ prg_exit(EXIT_FAILURE);
}
}
- for (n = 0; ! nloops || n < nloops; n++) {
+ for (n = 0; (! nloops || n < nloops) && !in_aborting; n++) {
gettimeofday(&tv1, NULL);
for(chn = 0; chn < channels; chn++) {
- int channel=chn;
- if (channels == 4) {
- channel=channels4[chn];
- }
- if (channels == 6) {
- channel=channels6[chn];
- }
- if (channels == 8) {
- channel=channels8[chn];
- }
- printf(" %d - %s\n", channel, gettext(channel_name[channel]));
+ int channel = get_speaker_channel(chn);
+ printf(" %d - %s\n", channel, get_channel_name(channel));
err = write_loop(handle, channel, ((rate*3)/period_size), frames);
if (err < 0) {
fprintf(stderr, _("Transfer failed: %s\n"), snd_strerror(err));
- free(frames);
- snd_pcm_close(handle);
- exit(EXIT_SUCCESS);
+ prg_exit(EXIT_SUCCESS);
}
}
gettimeofday(&tv2, NULL);
printf(_("Time per period = %lf\n"), time3 );
}
} else {
+ chn = get_speaker_channel(speaker - 1);
+
if (test_type == TEST_WAV) {
- if (setup_wav_file(speaker - 1) < 0)
- exit(EXIT_FAILURE);
+ if (setup_wav_file(chn) < 0)
+ prg_exit(EXIT_FAILURE);
}
- printf(" - %s\n", gettext(channel_name[speaker-1]));
- err = write_loop(handle, speaker-1, ((rate*5)/period_size), frames);
+ printf(" - %s\n", get_channel_name(chn));
+ err = write_loop(handle, chn, ((rate*5)/period_size), frames);
if (err < 0) {
fprintf(stderr, _("Transfer failed: %s\n"), snd_strerror(err));
free(frames);
- snd_pcm_close(handle);
+#ifdef CONFIG_SUPPORT_CHMAP
+ free(ordered_channels);
+#endif
- exit(EXIT_SUCCESS);
+ return prg_exit(EXIT_SUCCESS);
}
-# Makefile.in generated by automake 1.11.3 from Makefile.am.
+# Makefile.in generated by automake 1.12.2 from Makefile.am.
# @configure_input@
-# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software
-# Foundation, Inc.
+# Copyright (C) 1994-2012 Free Software Foundation, Inc.
+
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
@SET_MAKE@
VPATH = @srcdir@
+am__make_dryrun = \
+ { \
+ am__dry=no; \
+ case $$MAKEFLAGS in \
+ *\\[\ \ ]*) \
+ echo 'am--echo: ; @echo "AM" OK' | $(MAKE) -f - 2>/dev/null \
+ | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
+ *) \
+ for am__flg in $$MAKEFLAGS; do \
+ case $$am__flg in \
+ *=*|--*) ;; \
+ *n*) am__dry=yes; break;; \
+ esac; \
+ done;; \
+ esac; \
+ test $$am__dry = yes; \
+ }
pkgdatadir = $(datadir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
$(top_srcdir)/m4/lib-link.m4 $(top_srcdir)/m4/lib-prefix.m4 \
$(top_srcdir)/m4/nls.m4 $(top_srcdir)/m4/po.m4 \
$(top_srcdir)/m4/progtest.m4 $(top_srcdir)/acinclude.m4 \
- $(top_srcdir)/configure.in
+ $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(install_sh) -d
CONFIG_CLEAN_VPATH_FILES =
SOURCES =
DIST_SOURCES =
+am__can_run_installinfo = \
+ case $$AM_UPDATE_INFO_DIR in \
+ n|no|NO) false;; \
+ *) (install-info --version) >/dev/null 2>&1;; \
+ esac
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
ACLOCAL = @ACLOCAL@
+ALSACTL_DAEMONSWITCH = @ALSACTL_DAEMONSWITCH@
+ALSACTL_PIDFILE_DIR = @ALSACTL_PIDFILE_DIR@
ALSA_CFLAGS = @ALSA_CFLAGS@
ALSA_LIBS = @ALSA_LIBS@
AMTAR = @AMTAR@
+ASOUND_LOCK_DIR = @ASOUND_LOCK_DIR@
ASOUND_STATE_DIR = @ASOUND_STATE_DIR@
AUTOCONF = @AUTOCONF@
AUTOHEADER = @AUTOHEADER@
LTLIBICONV = @LTLIBICONV@
LTLIBINTL = @LTLIBINTL@
LTLIBOBJS = @LTLIBOBJS@
+MAINT = @MAINT@
MAKEINFO = @MAKEINFO@
MKDIR_P = @MKDIR_P@
MSGFMT = @MSGFMT@
localstatedir = @localstatedir@
mandir = @mandir@
mkdir_p = @mkdir_p@
+mydatadir = @mydatadir@
ncurses5_config = @ncurses5_config@
ncursesw5_config = @ncursesw5_config@
oldincludedir = @oldincludedir@
all: all-am
.SUFFIXES:
-$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps)
@for dep in $?; do \
case '$(am__configure_deps)' in \
*$$dep*) \
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-$(top_srcdir)/configure: $(am__configure_deps)
+$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-$(ACLOCAL_M4): $(am__aclocal_m4_deps)
+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(am__aclocal_m4_deps):
alsa-utils.spec: $(top_builddir)/config.status $(srcdir)/alsa-utils.spec.in
ctags: CTAGS
CTAGS:
+cscope cscopelist:
+
distdir: $(DISTFILES)
@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \