summaryrefslogtreecommitdiff
path: root/audio
diff options
context:
space:
mode:
authorTilman Keskinoz <arved@FreeBSD.org>2004-06-01 09:23:47 +0000
committerTilman Keskinoz <arved@FreeBSD.org>2004-06-01 09:23:47 +0000
commitb5ec41e3fb9ede348b0da8cf7ae19af85544c8c2 (patch)
tree4590d07aa65c59ed87b6b187614dca062bc548db /audio
parentUpgrade to 4.16, the latest release. It contains 4 new screensavers, (diff)
Update to 0.98.1:
- The OSS driver is now part of the distribution - Many FreeBSD fixes have been integrated - Depend on doxygen to build Documentation - Pretend not to maintain this port
Diffstat (limited to 'audio')
-rw-r--r--audio/jack/Makefile10
-rw-r--r--audio/jack/distinfo4
-rw-r--r--audio/jack/files/Makefile.in494
-rw-r--r--audio/jack/files/patch-aa1344
-rw-r--r--audio/jack/files/patch-client.c107
-rw-r--r--audio/jack/files/patch-configure19
-rw-r--r--audio/jack/files/patch-driver.c31
-rw-r--r--audio/jack/files/patch-drivers-Makefile.in14
-rw-r--r--audio/jack/files/patch-drivers-oss-oss_driver.c10
-rw-r--r--audio/jack/files/patch-engine.c25
-rw-r--r--audio/jack/files/patch-ringbuffer.c10
-rw-r--r--audio/jack/pkg-plist40
12 files changed, 57 insertions, 2051 deletions
diff --git a/audio/jack/Makefile b/audio/jack/Makefile
index 27d7be930565..deadd544b1f3 100644
--- a/audio/jack/Makefile
+++ b/audio/jack/Makefile
@@ -5,21 +5,22 @@
# $FreeBSD$
PORTNAME= jackit
-PORTVERSION= 0.94.0
-PORTREVISION= 4
+PORTVERSION= 0.98.1
CATEGORIES= audio
MASTER_SITES= ${MASTER_SITE_SOURCEFORGE}
MASTER_SITE_SUBDIR= jackit
DISTNAME= jack-audio-connection-kit-${PORTVERSION}
-MAINTAINER= arved@FreeBSD.org
+MAINTAINER= ports@FreeBSD.org
COMMENT= JACK is a low-latency audio server
+BUILD_DEPENDS= doxygen:${PORTSDIR}/devel/doxygen
LIB_DEPENDS= portaudio.0:${PORTSDIR}/audio/portaudio \
sndfile.1:${PORTSDIR}/audio/libsndfile
CONFIGURE_ENV= LIBS="${PTHREAD_LIBS}" LDFLAGS="-L${LOCALBASE}/lib" \
- CPPFLAGS="-I${LOCALBASE}/include" CFLAGS="${CFLAGS} ${PTHREAD_CFLAGS}"
+ CPPFLAGS="-I${LOCALBASE}/include" \
+ CFLAGS="${CFLAGS} ${PTHREAD_CFLAGS}"
GNU_CONFIGURE= yes
USE_GETOPT_LONG= yes
USE_REINPLACE= yes
@@ -45,6 +46,5 @@ post-patch:
${WRKSRC}/example-clients/Makefile.in
${REINPLACE_CMD} -e "s,-ldl,," ${WRKSRC}/jackd/Makefile.in \
${WRKSRC}/example-clients/Makefile.in
- ${CP} ${FILESDIR}/Makefile.in ${WRKSRC}/drivers/oss
.include <bsd.port.post.mk>
diff --git a/audio/jack/distinfo b/audio/jack/distinfo
index 9ada027034ba..f2519c5835e2 100644
--- a/audio/jack/distinfo
+++ b/audio/jack/distinfo
@@ -1,2 +1,2 @@
-MD5 (jack-audio-connection-kit-0.94.0.tar.gz) = 9c3d60f0ca73696ba5c479a3ee7db855
-SIZE (jack-audio-connection-kit-0.94.0.tar.gz) = 561277
+MD5 (jack-audio-connection-kit-0.98.1.tar.gz) = 6ebd659a431e75b841fa5e0c397372ee
+SIZE (jack-audio-connection-kit-0.98.1.tar.gz) = 706100
diff --git a/audio/jack/files/Makefile.in b/audio/jack/files/Makefile.in
deleted file mode 100644
index da467bed60c4..000000000000
--- a/audio/jack/files/Makefile.in
+++ /dev/null
@@ -1,494 +0,0 @@
-# Makefile.in generated by automake 1.7.8 from Makefile.am.
-# @configure_input@
-
-# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
-# 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.
-
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
-# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
-# PARTICULAR PURPOSE.
-
-@SET_MAKE@
-
-srcdir = @srcdir@
-top_srcdir = @top_srcdir@
-VPATH = @srcdir@
-pkgdatadir = $(datadir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
-pkgincludedir = $(includedir)/@PACKAGE@
-top_builddir = ../..
-
-am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
-INSTALL = @INSTALL@
-install_sh_DATA = $(install_sh) -c -m 644
-install_sh_PROGRAM = $(install_sh) -c
-install_sh_SCRIPT = $(install_sh) -c
-INSTALL_HEADER = $(INSTALL_DATA)
-transform = $(program_transform_name)
-NORMAL_INSTALL = :
-PRE_INSTALL = :
-POST_INSTALL = :
-NORMAL_UNINSTALL = :
-PRE_UNINSTALL = :
-POST_UNINSTALL = :
-host_triplet = @host@
-ACLOCAL = @ACLOCAL@
-ADDON_DIR = @ADDON_DIR@
-ALSA_FALSE = @ALSA_FALSE@
-ALSA_LIBS = @ALSA_LIBS@
-ALSA_TRUE = @ALSA_TRUE@
-AMDEP_FALSE = @AMDEP_FALSE@
-AMDEP_TRUE = @AMDEP_TRUE@
-AMTAR = @AMTAR@
-AR = @AR@
-AUTOCONF = @AUTOCONF@
-AUTOHEADER = @AUTOHEADER@
-AUTOMAKE = @AUTOMAKE@
-AWK = @AWK@
-CC = @CC@
-CCDEPMODE = @CCDEPMODE@
-CFLAGS = @CFLAGS@
-CPP = @CPP@
-CPPFLAGS = @CPPFLAGS@
-CXX = @CXX@
-CXXCPP = @CXXCPP@
-CXXDEPMODE = @CXXDEPMODE@
-CXXFLAGS = @CXXFLAGS@
-CYGPATH_W = @CYGPATH_W@
-DEFAULT_TMP_DIR = @DEFAULT_TMP_DIR@
-DEFS = @DEFS@
-DEPDIR = @DEPDIR@
-ECHO = @ECHO@
-ECHO_C = @ECHO_C@
-ECHO_N = @ECHO_N@
-ECHO_T = @ECHO_T@
-EGREP = @EGREP@
-EXEEXT = @EXEEXT@
-F77 = @F77@
-FFLAGS = @FFLAGS@
-HAVE_ALSA_FALSE = @HAVE_ALSA_FALSE@
-HAVE_ALSA_TRUE = @HAVE_ALSA_TRUE@
-HAVE_CAPABILITIES = @HAVE_CAPABILITIES@
-HAVE_DOXYGEN = @HAVE_DOXYGEN@
-HAVE_DOXYGEN_FALSE = @HAVE_DOXYGEN_FALSE@
-HAVE_DOXYGEN_TRUE = @HAVE_DOXYGEN_TRUE@
-HAVE_PA_FALSE = @HAVE_PA_FALSE@
-HAVE_PA_TRUE = @HAVE_PA_TRUE@
-HAVE_READLINE_FALSE = @HAVE_READLINE_FALSE@
-HAVE_READLINE_TRUE = @HAVE_READLINE_TRUE@
-HAVE_SNDFILE_FALSE = @HAVE_SNDFILE_FALSE@
-HAVE_SNDFILE_TRUE = @HAVE_SNDFILE_TRUE@
-HTML_DIR = @HTML_DIR@
-IEC61883_FALSE = @IEC61883_FALSE@
-IEC61883_TRUE = @IEC61883_TRUE@
-INSTALL_DATA = @INSTALL_DATA@
-INSTALL_PROGRAM = @INSTALL_PROGRAM@
-INSTALL_SCRIPT = @INSTALL_SCRIPT@
-INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
-JACK_API_MAJOR_VERSION = @JACK_API_MAJOR_VERSION@
-JACK_API_MICRO_VERSION = @JACK_API_MICRO_VERSION@
-JACK_API_MINOR_VERSION = @JACK_API_MINOR_VERSION@
-JACK_CFLAGS = @JACK_CFLAGS@
-JACK_MAJOR_VERSION = @JACK_MAJOR_VERSION@
-JACK_MICRO_VERSION = @JACK_MICRO_VERSION@
-JACK_MINOR_VERSION = @JACK_MINOR_VERSION@
-JACK_PROTOCOL_VERSION = @JACK_PROTOCOL_VERSION@
-JACK_RELEASE = @JACK_RELEASE@
-JACK_SO_VERSION = @JACK_SO_VERSION@
-JACK_VERSION = @JACK_VERSION@
-LDFLAGS = @LDFLAGS@
-LIBOBJS = @LIBOBJS@
-LIBS = @LIBS@
-LIBTOOL = @LIBTOOL@
-LN_S = @LN_S@
-LTLIBOBJS = @LTLIBOBJS@
-MAINT = @MAINT@
-MAINTAINER_MODE_FALSE = @MAINTAINER_MODE_FALSE@
-MAINTAINER_MODE_TRUE = @MAINTAINER_MODE_TRUE@
-MAKEINFO = @MAKEINFO@
-OBJEXT = @OBJEXT@
-PACKAGE = @PACKAGE@
-PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
-PACKAGE_NAME = @PACKAGE_NAME@
-PACKAGE_STRING = @PACKAGE_STRING@
-PACKAGE_TARNAME = @PACKAGE_TARNAME@
-PACKAGE_VERSION = @PACKAGE_VERSION@
-PATH_SEPARATOR = @PATH_SEPARATOR@
-PA_LIBS = @PA_LIBS@
-PKG_CONFIG = @PKG_CONFIG@
-PORTAUDIO_FALSE = @PORTAUDIO_FALSE@
-PORTAUDIO_TRUE = @PORTAUDIO_TRUE@
-RANLIB = @RANLIB@
-RAW1394_LIBS = @RAW1394_LIBS@
-READLINE_DEPS = @READLINE_DEPS@
-SET_MAKE = @SET_MAKE@
-SHELL = @SHELL@
-SNDFILE_CFLAGS = @SNDFILE_CFLAGS@
-SNDFILE_LIBS = @SNDFILE_LIBS@
-STRIP = @STRIP@
-STRIPPED_JACKD_FALSE = @STRIPPED_JACKD_FALSE@
-STRIPPED_JACKD_TRUE = @STRIPPED_JACKD_TRUE@
-USE_CAPABILITIES_FALSE = @USE_CAPABILITIES_FALSE@
-USE_CAPABILITIES_TRUE = @USE_CAPABILITIES_TRUE@
-VERSION = @VERSION@
-ac_ct_AR = @ac_ct_AR@
-ac_ct_CC = @ac_ct_CC@
-ac_ct_CXX = @ac_ct_CXX@
-ac_ct_F77 = @ac_ct_F77@
-ac_ct_RANLIB = @ac_ct_RANLIB@
-ac_ct_STRIP = @ac_ct_STRIP@
-am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
-am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
-am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
-am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
-am__include = @am__include@
-am__leading_dot = @am__leading_dot@
-am__quote = @am__quote@
-bindir = @bindir@
-build = @build@
-build_alias = @build_alias@
-build_cpu = @build_cpu@
-build_os = @build_os@
-build_vendor = @build_vendor@
-datadir = @datadir@
-exec_prefix = @exec_prefix@
-host = @host@
-host_alias = @host_alias@
-host_cpu = @host_cpu@
-host_os = @host_os@
-host_vendor = @host_vendor@
-includedir = @includedir@
-infodir = @infodir@
-install_sh = @install_sh@
-libdir = @libdir@
-libexecdir = @libexecdir@
-localstatedir = @localstatedir@
-mandir = @mandir@
-oldincludedir = @oldincludedir@
-prefix = @prefix@
-program_transform_name = @program_transform_name@
-sbindir = @sbindir@
-sharedstatedir = @sharedstatedir@
-sysconfdir = @sysconfdir@
-target = @target@
-target_alias = @target_alias@
-target_cpu = @target_cpu@
-target_os = @target_os@
-target_vendor = @target_vendor@
-MAINTAINERCLEANFILES = Makefile.in
-
-AM_CFLAGS = $(JACK_CFLAGS)
-
-plugindir = $(ADDON_DIR)
-
-plugin_LTLIBRARIES = jack_oss.la
-
-jack_oss_la_LDFLAGS = -module -avoid-version
-jack_oss_la_SOURCES = oss_driver.c oss_driver.h
-
-noinst_HEADERS = oss_driver.h
-
-subdir = drivers/oss
-ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
-CONFIG_HEADER = $(top_builddir)/config.h
-CONFIG_CLEAN_FILES =
-LTLIBRARIES = $(plugin_LTLIBRARIES)
-
-jack_oss_la_DEPENDENCIES =
-am_jack_oss_la_OBJECTS = oss_driver.lo
-jack_oss_la_OBJECTS = $(am_jack_oss_la_OBJECTS)
-
-DEFAULT_INCLUDES = -I. -I$(srcdir) -I$(top_builddir)
-depcomp = $(SHELL) $(top_srcdir)/depcomp
-am__depfiles_maybe = depfiles
-@AMDEP_TRUE@DEP_FILES = ./$(DEPDIR)/oss_driver.Plo
-COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
- $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
-LTCOMPILE = $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) \
- $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
-CCLD = $(CC)
-LINK = $(LIBTOOL) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
- $(AM_LDFLAGS) $(LDFLAGS) -o $@
-DIST_SOURCES = $(jack_oss_la_SOURCES)
-HEADERS = $(noinst_HEADERS)
-
-DIST_COMMON = $(noinst_HEADERS) $(srcdir)/Makefile.in Makefile.am
-SOURCES = $(jack_oss_la_SOURCES)
-
-all: all-am
-
-.SUFFIXES:
-.SUFFIXES: .c .lo .o .obj
-$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4)
- cd $(top_srcdir) && \
- $(AUTOMAKE) --foreign drivers/oss/Makefile
-Makefile: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.in $(top_builddir)/config.status
- cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)
-pluginLTLIBRARIES_INSTALL = $(INSTALL)
-install-pluginLTLIBRARIES: $(plugin_LTLIBRARIES)
- @$(NORMAL_INSTALL)
- $(mkinstalldirs) $(DESTDIR)$(plugindir)
- @list='$(plugin_LTLIBRARIES)'; for p in $$list; do \
- if test -f $$p; then \
- f="`echo $$p | sed -e 's|^.*/||'`"; \
- echo " $(LIBTOOL) --mode=install $(pluginLTLIBRARIES_INSTALL) $(INSTALL_STRIP_FLAG) $$p $(DESTDIR)$(plugindir)/$$f"; \
- $(LIBTOOL) --mode=install $(pluginLTLIBRARIES_INSTALL) $(INSTALL_STRIP_FLAG) $$p $(DESTDIR)$(plugindir)/$$f; \
- else :; fi; \
- done
-
-uninstall-pluginLTLIBRARIES:
- @$(NORMAL_UNINSTALL)
- @list='$(plugin_LTLIBRARIES)'; for p in $$list; do \
- p="`echo $$p | sed -e 's|^.*/||'`"; \
- echo " $(LIBTOOL) --mode=uninstall rm -f $(DESTDIR)$(plugindir)/$$p"; \
- $(LIBTOOL) --mode=uninstall rm -f $(DESTDIR)$(plugindir)/$$p; \
- done
-
-clean-pluginLTLIBRARIES:
- -test -z "$(plugin_LTLIBRARIES)" || rm -f $(plugin_LTLIBRARIES)
- @list='$(plugin_LTLIBRARIES)'; for p in $$list; do \
- dir="`echo $$p | sed -e 's|/[^/]*$$||'`"; \
- test "$$dir" = "$$p" && dir=.; \
- echo "rm -f \"$${dir}/so_locations\""; \
- rm -f "$${dir}/so_locations"; \
- done
-jack_oss.la: $(jack_oss_la_OBJECTS) $(jack_oss_la_DEPENDENCIES)
- $(LINK) -rpath $(plugindir) $(jack_oss_la_LDFLAGS) $(jack_oss_la_OBJECTS) $(jack_oss_la_LIBADD) $(LIBS)
-
-mostlyclean-compile:
- -rm -f *.$(OBJEXT) core *.core
-
-distclean-compile:
- -rm -f *.tab.c
-
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oss_driver.Plo@am__quote@
-
-.c.o:
-@am__fastdepCC_TRUE@ if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
-@am__fastdepCC_TRUE@ -c -o $@ `test -f '$<' || echo '$(srcdir)/'`$<; \
-@am__fastdepCC_TRUE@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
-@am__fastdepCC_TRUE@ else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
-@am__fastdepCC_TRUE@ fi
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ depfile='$(DEPDIR)/$*.Po' tmpdepfile='$(DEPDIR)/$*.TPo' @AMDEPBACKSLASH@
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(COMPILE) -c `test -f '$<' || echo '$(srcdir)/'`$<
-
-.c.obj:
-@am__fastdepCC_TRUE@ if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
-@am__fastdepCC_TRUE@ -c -o $@ `if test -f '$<'; then $(CYGPATH_W) '$<'; else $(CYGPATH_W) '$(srcdir)/$<'; fi`; \
-@am__fastdepCC_TRUE@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
-@am__fastdepCC_TRUE@ else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
-@am__fastdepCC_TRUE@ fi
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ depfile='$(DEPDIR)/$*.Po' tmpdepfile='$(DEPDIR)/$*.TPo' @AMDEPBACKSLASH@
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(COMPILE) -c `if test -f '$<'; then $(CYGPATH_W) '$<'; else $(CYGPATH_W) '$(srcdir)/$<'; fi`
-
-.c.lo:
-@am__fastdepCC_TRUE@ if $(LTCOMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
-@am__fastdepCC_TRUE@ -c -o $@ `test -f '$<' || echo '$(srcdir)/'`$<; \
-@am__fastdepCC_TRUE@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Plo"; \
-@am__fastdepCC_TRUE@ else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
-@am__fastdepCC_TRUE@ fi
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ depfile='$(DEPDIR)/$*.Plo' tmpdepfile='$(DEPDIR)/$*.TPlo' @AMDEPBACKSLASH@
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(LTCOMPILE) -c -o $@ `test -f '$<' || echo '$(srcdir)/'`$<
-
-mostlyclean-libtool:
- -rm -f *.lo
-
-clean-libtool:
- -rm -rf .libs _libs
-
-distclean-libtool:
- -rm -f libtool
-uninstall-info-am:
-
-ETAGS = etags
-ETAGSFLAGS =
-
-CTAGS = ctags
-CTAGSFLAGS =
-
-tags: TAGS
-
-ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
- list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
- unique=`for i in $$list; do \
- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- done | \
- $(AWK) ' { files[$$0] = 1; } \
- END { for (i in files) print i; }'`; \
- mkid -fID $$unique
-
-TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
- $(TAGS_FILES) $(LISP)
- tags=; \
- here=`pwd`; \
- list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
- unique=`for i in $$list; do \
- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- done | \
- $(AWK) ' { files[$$0] = 1; } \
- END { for (i in files) print i; }'`; \
- test -z "$(ETAGS_ARGS)$$tags$$unique" \
- || $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
- $$tags $$unique
-
-ctags: CTAGS
-CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
- $(TAGS_FILES) $(LISP)
- tags=; \
- here=`pwd`; \
- list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
- unique=`for i in $$list; do \
- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- done | \
- $(AWK) ' { files[$$0] = 1; } \
- END { for (i in files) print i; }'`; \
- test -z "$(CTAGS_ARGS)$$tags$$unique" \
- || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
- $$tags $$unique
-
-GTAGS:
- here=`$(am__cd) $(top_builddir) && pwd` \
- && cd $(top_srcdir) \
- && gtags -i $(GTAGS_ARGS) $$here
-
-distclean-tags:
- -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
-DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
-
-top_distdir = ../..
-distdir = $(top_distdir)/$(PACKAGE)-$(VERSION)
-
-distdir: $(DISTFILES)
- @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
- topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \
- list='$(DISTFILES)'; for file in $$list; do \
- case $$file in \
- $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \
- $(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \
- esac; \
- if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
- dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
- if test "$$dir" != "$$file" && test "$$dir" != "."; then \
- dir="/$$dir"; \
- $(mkinstalldirs) "$(distdir)$$dir"; \
- else \
- dir=''; \
- fi; \
- if test -d $$d/$$file; then \
- if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
- cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
- fi; \
- cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
- else \
- test -f $(distdir)/$$file \
- || cp -p $$d/$$file $(distdir)/$$file \
- || exit 1; \
- fi; \
- done
-check-am: all-am
-check: check-am
-all-am: Makefile $(LTLIBRARIES) $(HEADERS)
-
-installdirs:
- $(mkinstalldirs) $(DESTDIR)$(plugindir)
-install: install-am
-install-exec: install-exec-am
-install-data: install-data-am
-uninstall: uninstall-am
-
-install-am: all-am
- @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
-
-installcheck: installcheck-am
-install-strip:
- $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
- INSTALL_STRIP_FLAG=-s \
- `test -z '$(STRIP)' || \
- echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
-mostlyclean-generic:
-
-clean-generic:
-
-distclean-generic:
- -rm -f $(CONFIG_CLEAN_FILES)
-
-maintainer-clean-generic:
- @echo "This command is intended for maintainers to use"
- @echo "it deletes files that may require special tools to rebuild."
- -test -z "$(MAINTAINERCLEANFILES)" || rm -f $(MAINTAINERCLEANFILES)
-clean: clean-am
-
-clean-am: clean-generic clean-libtool clean-pluginLTLIBRARIES \
- mostlyclean-am
-
-distclean: distclean-am
- -rm -rf ./$(DEPDIR)
- -rm -f Makefile
-distclean-am: clean-am distclean-compile distclean-generic \
- distclean-libtool distclean-tags
-
-dvi: dvi-am
-
-dvi-am:
-
-info: info-am
-
-info-am:
-
-install-data-am: install-pluginLTLIBRARIES
-
-install-exec-am:
-
-install-info: install-info-am
-
-install-man:
-
-installcheck-am:
-
-maintainer-clean: maintainer-clean-am
- -rm -rf ./$(DEPDIR)
- -rm -f Makefile
-maintainer-clean-am: distclean-am maintainer-clean-generic
-
-mostlyclean: mostlyclean-am
-
-mostlyclean-am: mostlyclean-compile mostlyclean-generic \
- mostlyclean-libtool
-
-pdf: pdf-am
-
-pdf-am:
-
-ps: ps-am
-
-ps-am:
-
-uninstall-am: uninstall-info-am uninstall-pluginLTLIBRARIES
-
-.PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \
- clean-libtool clean-pluginLTLIBRARIES ctags distclean \
- distclean-compile distclean-generic distclean-libtool \
- distclean-tags distdir dvi dvi-am info info-am install \
- install-am install-data install-data-am install-exec \
- install-exec-am install-info install-info-am install-man \
- install-pluginLTLIBRARIES install-strip installcheck \
- installcheck-am installdirs maintainer-clean \
- maintainer-clean-generic mostlyclean mostlyclean-compile \
- mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
- tags uninstall uninstall-am uninstall-info-am \
- uninstall-pluginLTLIBRARIES
-
-# Tell versions [3.59,3.63) of GNU make to not export all variables.
-# Otherwise a system limit (for SysV at least) may be exceeded.
-.NOEXPORT:
diff --git a/audio/jack/files/patch-aa b/audio/jack/files/patch-aa
deleted file mode 100644
index 9f178de94dc0..000000000000
--- a/audio/jack/files/patch-aa
+++ /dev/null
@@ -1,1344 +0,0 @@
-diff -urN jack-audio-connection-kit-0.94.0.orig/configure.in configure.in
---- jack-audio-connection-kit-0.94.0.orig/configure.in 2004-01-13 04:43:12.000000000 +0200
-+++ configure.in 2004-03-15 21:24:21.000000000 +0200
-@@ -116,7 +116,7 @@
-
- JACK_CORE_CFLAGS="-I\$(top_srcdir) -I\$(top_builddir) -D_REENTRANT -D_POSIX_PTHREAD_SEMANTICS -Wall"
-
--JACK_CFLAGS="$JACK_CORE_CFLAGS -g"
-+JACK_CFLAGS="$JACK_CORE_CFLAGS -g $CFLAGS"
- dnl
- dnl figure out how best to optimize
- dnl
-@@ -162,6 +162,8 @@
- fi
- fi
-
-+JACK_OPT_CFLAGS="$JACK_CORE_CFLAGS -march=pentium2 -mcpu=pentium4 -mmmx -O3 -ffast-math -funroll-loops -fprefetch-loop-arrays"
-+
- AC_ARG_ENABLE(optimize,
- [ --enable-optimize ask the compiler for its best optimizations],
- [ if test "x$enable_optimize" != "xno" ; then JACK_CFLAGS="$JACK_OPT_CFLAGS" ; fi ])
-@@ -416,6 +418,7 @@
- drivers/dummy/Makefile
- drivers/portaudio/Makefile
- drivers/iec61883/Makefile
-+drivers/oss/Makefile
- example-clients/Makefile
- doc/Makefile
- doc/reference.doxygen
-diff -urN jack-audio-connection-kit-0.94.0.orig/drivers/oss/Makefile.am drivers/oss/Makefile.am
---- jack-audio-connection-kit-0.94.0.orig/drivers/oss/Makefile.am 1970-01-01 02:00:00.000000000 +0200
-+++ drivers/oss/Makefile.am 2004-03-15 21:25:01.000000000 +0200
-@@ -0,0 +1,14 @@
-+MAINTAINCLEANFILES = Makefile.in
-+
-+AM_CFLAGS = $(JACK_CFLAGS) -I/opt/oss/include -D_XOPEN_SOURCE=600 -DUSE_BARRIER
-+#AM_CFLAGS = $(JACK_CFLAGS) -I/opt/oss/include -D_XOPEN_SOURCE=600
-+AM_LDFLAGS = $(JACK_LDFLAGS) -lpthread -lrt
-+
-+plugindir = $(ADDON_DIR)
-+
-+plugin_LTLIBRARIES = jack_oss.la
-+
-+jack_oss_la_LDFLAGS = -module -avoid-version
-+jack_oss_la_SOURCES = oss_driver.c oss_driver.h
-+
-+noinst_HEADERS = oss_driver.h
-diff -urN jack-audio-connection-kit-0.94.0.orig/drivers/oss/oss_driver.c drivers/oss/oss_driver.c
---- jack-audio-connection-kit-0.94.0.orig/drivers/oss/oss_driver.c 1970-01-01 02:00:00.000000000 +0200
-+++ drivers/oss/oss_driver.c 2004-03-23 23:27:15.000000000 +0200
-@@ -0,0 +1,1195 @@
-+/*
-+
-+ OSS driver for Jack
-+ Copyright (C) 2003-2004 Jussi Laako <jussi@sonarnerd.net>
-+
-+ 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 <config.h>
-+
-+#include <stdio.h>
-+#include <stdlib.h>
-+#include <string.h>
-+#include <unistd.h>
-+#include <fcntl.h>
-+#include <errno.h>
-+#include <math.h>
-+#include <float.h>
-+#include <sys/types.h>
-+#include <sys/stat.h>
-+#include <sys/ioctl.h>
-+#include <sys/soundcard.h>
-+#include <stdarg.h>
-+#include <getopt.h>
-+#include <pthread.h>
-+#include <semaphore.h>
-+
-+#include <jack/types.h>
-+#include <jack/internal.h>
-+#include <jack/engine.h>
-+#include <jack/time.h>
-+
-+#include "oss_driver.h"
-+
-+
-+#define OSS_DRIVER_N_PARAMS 9
-+const static jack_driver_param_desc_t oss_params[OSS_DRIVER_N_PARAMS] = {
-+ { "rate",
-+ 'r',
-+ JackDriverParamUInt,
-+ { .ui = OSS_DRIVER_DEF_FS },
-+ "sample rate",
-+ "sample rate"
-+ },
-+ { "period",
-+ 'p',
-+ JackDriverParamUInt,
-+ { .ui = OSS_DRIVER_DEF_BLKSIZE },
-+ "period size",
-+ "period size"
-+ },
-+ { "wordlength",
-+ 'w',
-+ JackDriverParamInt,
-+ { .i = OSS_DRIVER_DEF_BITS },
-+ "word length",
-+ "word length"
-+ },
-+ { "inchannels",
-+ 'i',
-+ JackDriverParamUInt,
-+ { .ui = OSS_DRIVER_DEF_INS },
-+ "capture channels",
-+ "capture channels"
-+ },
-+ { "outchannels",
-+ 'o',
-+ JackDriverParamUInt,
-+ { .ui = OSS_DRIVER_DEF_OUTS },
-+ "playback channels",
-+ "playback channels"
-+ },
-+ { "capture",
-+ 'C',
-+ JackDriverParamString,
-+ { .str = OSS_DRIVER_DEF_DEV },
-+ "input device",
-+ "input device"
-+ },
-+ { "playback",
-+ 'P',
-+ JackDriverParamString,
-+ { .str = OSS_DRIVER_DEF_DEV },
-+ "output device",
-+ "output device"
-+ },
-+ { "ignorehwbuf",
-+ 'b',
-+ JackDriverParamBool,
-+ { },
-+ "ignore hardware period size",
-+ "ignore hardware period size"
-+ },
-+ { "help",
-+ 'h',
-+ JackDriverParamBool,
-+ { },
-+ "help",
-+ "help"
-+ }
-+};
-+
-+
-+
-+/* internal functions */
-+
-+
-+static inline void update_times (oss_driver_t *driver)
-+{
-+ driver->last_periodtime = jack_get_microseconds();
-+ if (driver->next_periodtime > 0)
-+ {
-+ driver->iodelay = (float)
-+ ((long double) driver->last_periodtime -
-+ (long double) driver->next_periodtime);
-+ }
-+ else driver->iodelay = 0.0F;
-+ driver->next_periodtime =
-+ driver->last_periodtime +
-+ driver->period_usecs;
-+}
-+
-+
-+static inline void driver_cycle (oss_driver_t *driver)
-+{
-+ update_times(driver);
-+ driver->engine->transport_cycle_start(driver->engine,
-+ driver->last_periodtime);
-+
-+ driver->last_wait_ust = driver->last_periodtime;
-+ driver->engine->run_cycle(driver->engine,
-+ driver->period_size, driver->iodelay);
-+}
-+
-+
-+static void copy_and_convert_in (jack_sample_t *dst, void *src,
-+ size_t nframes, int channel, int chcount, int bits)
-+{
-+ int srcidx;
-+ int dstidx;
-+ signed short *s16src = (signed short *) src;
-+ signed int *s32src = (signed int *) src;
-+ double *f64src = (double *) src;
-+ jack_sample_t scale;
-+
-+ srcidx = channel;
-+ switch (bits)
-+ {
-+ case 16:
-+ scale = 1.0f / 0x7fff;
-+ for (dstidx = 0; dstidx < nframes; dstidx++)
-+ {
-+ dst[dstidx] = (jack_sample_t)
-+ s16src[srcidx] * scale;
-+ srcidx += chcount;
-+ }
-+ break;
-+ case 24:
-+ scale = 1.0f / 0x7fffff;
-+ for (dstidx = 0; dstidx < nframes; dstidx++)
-+ {
-+ dst[dstidx] = (jack_sample_t)
-+ s32src[srcidx] * scale;
-+ srcidx += chcount;
-+ }
-+ break;
-+ case 32:
-+ scale = 1.0f / 0x7fffffff;
-+ for (dstidx = 0; dstidx < nframes; dstidx++)
-+ {
-+ dst[dstidx] = (jack_sample_t)
-+ s32src[srcidx] * scale;
-+ srcidx += chcount;
-+ }
-+ break;
-+ case 64:
-+ for (dstidx = 0; dstidx < nframes; dstidx++)
-+ {
-+ dst[dstidx] = (jack_sample_t) f64src[srcidx];
-+ srcidx += chcount;
-+ }
-+ break;
-+ }
-+}
-+
-+
-+static void copy_and_convert_out (void *dst, jack_sample_t *src,
-+ size_t nframes, int channel, int chcount, int bits)
-+{
-+ int srcidx;
-+ int dstidx;
-+ signed short *s16dst = (signed short *) dst;
-+ signed int *s32dst = (signed int *) dst;
-+ double *f64dst = (double *) dst;
-+ jack_sample_t scale;
-+
-+ dstidx = channel;
-+ switch (bits)
-+ {
-+ case 16:
-+ scale = 0x7fff;
-+ for (srcidx = 0; srcidx < nframes; srcidx++)
-+ {
-+ s16dst[dstidx] = (signed short)
-+ (src[srcidx] * scale + 0.5f);
-+ dstidx += chcount;
-+ }
-+ break;
-+ case 24:
-+ scale = 0x7fffff;
-+ for (srcidx = 0; srcidx < nframes; srcidx++)
-+ {
-+ s32dst[dstidx] = (signed int)
-+ (src[srcidx] * scale + 0.5f);
-+ dstidx += chcount;
-+ }
-+ break;
-+ case 32:
-+ scale = 0x7fffffff;
-+ for (srcidx = 0; srcidx < nframes; srcidx++)
-+ {
-+ s32dst[dstidx] = (signed int)
-+ (src[srcidx] * scale + 0.5f);
-+ dstidx += chcount;
-+ }
-+ break;
-+ case 64:
-+ for (srcidx = 0; srcidx < nframes; srcidx++)
-+ {
-+ f64dst[dstidx] = (double) src[srcidx];
-+ dstidx += chcount;
-+ }
-+ break;
-+ }
-+}
-+
-+
-+static void set_fragment (int fd, int fragsize)
-+{
-+ int fragcount;
-+ int fragsize_2p;
-+ int fragments;
-+
-+ fragcount = 2;
-+ //fragcount = 3;
-+ //fragcount = 0xffff / fragsize;
-+ fragsize_2p = (int) (log(fragsize) / log(2.0) + 0.5);
-+ fragments = ((fragcount << 16) | (fragsize_2p & 0xffff));
-+ if (ioctl(fd, SNDCTL_DSP_SETFRAGMENT, &fragments) < 0)
-+ {
-+ jack_error("OSS: failed to set fragment size: %s@%i",
-+ __FILE__, __LINE__);
-+ }
-+}
-+
-+
-+static int get_fragment (int fd)
-+{
-+ int fragsize;
-+
-+ if (ioctl(fd, SNDCTL_DSP_GETBLKSIZE, &fragsize) < 0)
-+ {
-+ jack_error("OSS: failed to get fragment size: %s@%i",
-+ __FILE__, __LINE__);
-+ return 0;
-+ }
-+ return fragsize;
-+}
-+
-+
-+static void *io_thread (void *);
-+
-+
-+/* jack driver interface */
-+
-+
-+static int oss_driver_attach (oss_driver_t *driver, jack_engine_t *engine)
-+{
-+ int port_flags;
-+ unsigned int channel;
-+ char channel_name[64];
-+ jack_port_t *port;
-+
-+ driver->engine = engine;
-+
-+ engine->set_buffer_size(engine, driver->period_size);
-+ engine->set_sample_rate(engine, driver->sample_rate);
-+
-+ port_flags = JackPortIsOutput|JackPortIsPhysical|JackPortIsTerminal;
-+ for (channel = 0; channel < driver->capture_channels; channel++)
-+ {
-+ snprintf(channel_name, sizeof(channel_name),
-+ "capture_%u", channel + 1);
-+ port = jack_port_register(driver->client, channel_name,
-+ JACK_DEFAULT_AUDIO_TYPE, port_flags, 0);
-+ if (port == NULL)
-+ {
-+ jack_error("OSS: cannot register port for %s: %s@%i",
-+ channel_name, __FILE__, __LINE__);
-+ break;
-+ }
-+ driver->capture_ports =
-+ jack_slist_append(driver->capture_ports, port);
-+ }
-+
-+ port_flags = JackPortIsInput|JackPortIsPhysical|JackPortIsTerminal;
-+ for (channel = 0; channel < driver->playback_channels; channel++)
-+ {
-+ snprintf(channel_name, sizeof(channel_name),
-+ "playback_%u", channel + 1);
-+ port = jack_port_register(driver->client, channel_name,
-+ JACK_DEFAULT_AUDIO_TYPE, port_flags, 0);
-+ if (port == NULL)
-+ {
-+ jack_error("OSS: cannot register port for %s: %s@%i",
-+ channel_name, __FILE__, __LINE__);
-+ break;
-+ }
-+ driver->playback_ports =
-+ jack_slist_append(driver->playback_ports, port);
-+ }
-+
-+ jack_activate(driver->client);
-+
-+ return 0;
-+}
-+
-+
-+static int oss_driver_detach (oss_driver_t *driver, jack_engine_t *engine)
-+{
-+ JSList *node;
-+
-+ if (driver->engine == NULL)
-+ return -1;
-+
-+ node = driver->capture_ports;
-+ while (node != NULL)
-+ {
-+ jack_port_unregister(driver->client,
-+ ((jack_port_t *) node->data));
-+ node = jack_slist_next(node);
-+ }
-+ jack_slist_free(driver->capture_ports);
-+ driver->capture_ports = NULL;
-+
-+ node = driver->playback_ports;
-+ while (node != NULL)
-+ {
-+ jack_port_unregister(driver->client,
-+ ((jack_port_t *) node->data));
-+ node = jack_slist_next(node);
-+ }
-+ jack_slist_free(driver->playback_ports);
-+ driver->playback_ports = NULL;
-+
-+ driver->engine = NULL;
-+
-+ return 0;
-+}
-+
-+
-+static int oss_driver_start (oss_driver_t *driver)
-+{
-+ int format;
-+ int channels;
-+ int samplerate;
-+ int infd = driver->infd;
-+ int outfd = driver->outfd;
-+ unsigned int period_size;
-+ size_t samplesize;
-+ size_t fragsize;
-+ const char *indev = driver->indev;
-+ const char *outdev = driver->outdev;
-+
-+ switch (driver->bits)
-+ {
-+ case 24:
-+ case 32:
-+ samplesize = sizeof(int);
-+ break;
-+ case 64:
-+ samplesize = sizeof(double);
-+ break;
-+ case 16:
-+ default:
-+ samplesize = sizeof(short);
-+ break;
-+ }
-+ if (strcmp(indev, outdev) != 0)
-+ {
-+ if (driver->capture_channels > 0)
-+ {
-+ infd = open(indev, O_RDONLY);
-+ if (infd < 0)
-+ {
-+ jack_error(
-+ "OSS: failed to open input device %s: %s@%i",
-+ indev, __FILE__, __LINE__);
-+ }
-+ fragsize = driver->period_size *
-+ driver->capture_channels * samplesize;
-+ set_fragment(infd, fragsize);
-+ }
-+ else infd = -1;
-+
-+ if (driver->playback_channels > 0)
-+ {
-+ outfd = open(outdev, O_WRONLY);
-+ if (outfd < 0)
-+ {
-+ jack_error(
-+ "OSS: failed to open output device %s: %s@%i",
-+ outdev, __FILE__, __LINE__);
-+ }
-+ fragsize = driver->period_size *
-+ driver->playback_channels * samplesize;
-+ set_fragment(outfd, fragsize);
-+ }
-+ else outfd = -1;
-+ }
-+ else
-+ {
-+ if (driver->capture_channels != 0 &&
-+ driver->playback_channels == 0)
-+ {
-+ infd = open(indev, O_RDWR);
-+ outfd = -1;
-+ if (infd < 0)
-+ {
-+ jack_error(
-+ "OSS: failed to open device %s: %s@%i",
-+ indev, __FILE__, __LINE__);
-+ return -1;
-+ }
-+ }
-+ else if (driver->capture_channels == 0 &&
-+ driver->playback_channels != 0)
-+ {
-+ infd = -1;
-+ outfd = open(outdev, O_RDWR);
-+ if (outfd < 0)
-+ {
-+ jack_error(
-+ "OSS: failed to open device %s: %s@%i",
-+ outdev, __FILE__, __LINE__);
-+ return -1;
-+ }
-+ }
-+ else
-+ {
-+ infd = outfd = open(indev, O_RDWR);
-+ if (infd < 0)
-+ {
-+ jack_error(
-+ "OSS: failed to open device %s: %s@%i",
-+ indev, __FILE__, __LINE__);
-+ return -1;
-+ }
-+ }
-+ if (infd >= 0 && outfd >= 0)
-+ {
-+ if (ioctl(infd, SNDCTL_DSP_SETDUPLEX, 0) < 0)
-+ {
-+ jack_error(
-+ "OSS: failed to enable full duplex for %s: %s@%i",
-+ indev, __FILE__, __LINE__);
-+ }
-+ }
-+ if (infd >= 0)
-+ {
-+ fragsize = driver->period_size *
-+ driver->capture_channels * samplesize;
-+ set_fragment(infd, fragsize);
-+ }
-+ if (outfd >= 0 && infd < 0)
-+ {
-+ fragsize = driver->period_size *
-+ driver->playback_channels * samplesize;
-+ set_fragment(outfd, fragsize);
-+ }
-+ }
-+ driver->infd = infd;
-+ driver->outfd = outfd;
-+
-+ if (infd >= 0)
-+ {
-+ format = driver->format;
-+ if (ioctl(infd, SNDCTL_DSP_SETFMT, &format) < 0)
-+ jack_error(
-+ "OSS: failed to set format for %s: %s@%i",
-+ indev, __FILE__, __LINE__);
-+ channels = driver->capture_channels;
-+ if (ioctl(infd, SNDCTL_DSP_CHANNELS, &channels) < 0)
-+ jack_error(
-+ "OSS: failed to set channels for %s: %s@%i",
-+ indev, __FILE__, __LINE__);
-+ samplerate = driver->sample_rate;
-+ if (ioctl(infd, SNDCTL_DSP_SPEED, &samplerate) < 0)
-+ jack_error(
-+ "OSS: failed to set samplerate for %s: %s@%i",
-+ indev, __FILE__, __LINE__);
-+ printf("oss_driver: %s : 0x%x/%i/%i (%i)\n", indev,
-+ format, channels, samplerate, get_fragment(infd));
-+
-+ period_size = get_fragment(infd) / samplesize / channels;
-+ if (period_size != driver->period_size &&
-+ !driver->ignorehwbuf)
-+ {
-+ printf("oss_driver: period size update: %u\n",
-+ period_size);
-+ driver->period_size = period_size;
-+ driver->period_usecs =
-+ ((double) driver->period_size /
-+ (double) driver->sample_rate) * 1e6;
-+ driver->engine->set_buffer_size(driver->engine,
-+ driver->period_size);
-+ }
-+ }
-+
-+ if (outfd >= 0 && infd != outfd)
-+ {
-+ format = driver->format;
-+ if (ioctl(outfd, SNDCTL_DSP_SETFMT, &format) < 0)
-+ jack_error(
-+ "OSS: failed to set format for %s: %s@%i",
-+ outdev, __FILE__, __LINE__);
-+ channels = driver->playback_channels;
-+ if (ioctl(outfd, SNDCTL_DSP_CHANNELS, &channels) < 0)
-+ jack_error(
-+ "OSS: failed to set channels for %s: %s@%i",
-+ outdev, __FILE__, __LINE__);
-+ samplerate = driver->sample_rate;
-+ if (ioctl(outfd, SNDCTL_DSP_SPEED, &samplerate) < 0)
-+ jack_error(
-+ "OSS: failed to set samplerate for %s: %s@%i",
-+ outdev, __FILE__, __LINE__);
-+ printf("oss_driver: %s : 0x%x/%i/%i (%i)\n", outdev,
-+ format, channels, samplerate,
-+ get_fragment(outfd));
-+
-+ period_size = get_fragment(outfd) / samplesize / channels;
-+ if (period_size != driver->period_size &&
-+ !driver->ignorehwbuf)
-+ {
-+ printf("oss_driver: period size update: %u\n",
-+ period_size);
-+ driver->period_size = period_size;
-+ driver->period_usecs =
-+ ((double) driver->period_size /
-+ (double) driver->sample_rate) * 1e6;
-+ driver->engine->set_buffer_size(driver->engine,
-+ driver->period_size);
-+ }
-+ }
-+
-+ if (driver->capture_channels > 0)
-+ {
-+ driver->indevbufsize = driver->period_size *
-+ driver->capture_channels * samplesize;
-+ driver->indevbuf = malloc(driver->indevbufsize);
-+ if (driver->indevbuf == NULL)
-+ {
-+ jack_error( "OSS: malloc() failed: %s@%i",
-+ __FILE__, __LINE__);
-+ return -1;
-+ }
-+ memset(driver->indevbuf, 0x00, driver->indevbufsize);
-+ }
-+ else
-+ {
-+ driver->indevbufsize = 0;
-+ driver->indevbuf = NULL;
-+ }
-+
-+ if (driver->playback_channels > 0)
-+ {
-+ driver->outdevbufsize = driver->period_size *
-+ driver->playback_channels * samplesize;
-+ driver->outdevbuf = malloc(driver->outdevbufsize);
-+ if (driver->outdevbuf == NULL)
-+ {
-+ jack_error("OSS: malloc() failed: %s@%i",
-+ __FILE__, __LINE__);
-+ return -1;
-+ }
-+ memset(driver->outdevbuf, 0x00, driver->outdevbufsize);
-+ }
-+ else
-+ {
-+ driver->outdevbufsize = 0;
-+ driver->outdevbuf = NULL;
-+ }
-+
-+ printf("oss_driver: indevbuf %u B, outdevbuf %u B\n",
-+ driver->indevbufsize, driver->outdevbufsize);
-+
-+ pthread_mutex_init(&driver->mutex_in, NULL);
-+ pthread_mutex_init(&driver->mutex_out, NULL);
-+# ifdef USE_BARRIER
-+ pthread_barrier_init(&driver->barrier, NULL, 2);
-+# endif
-+ sem_init(&driver->sem_start, 0, 0);
-+ driver->run = 1;
-+ driver->threads = 0;
-+ if (infd >= 0)
-+ {
-+ if (pthread_create(&driver->thread_in, NULL, io_thread,
-+ driver) < 0)
-+ {
-+ jack_error("OSS: pthread_create() failed: %s@%i",
-+ __FILE__, __LINE__);
-+ return -1;
-+ }
-+ driver->threads |= 1;
-+ }
-+# ifdef USE_BARRIER
-+ if (outfd >= 0)
-+ {
-+ if (pthread_create(&driver->thread_out, NULL, io_thread,
-+ driver) < 0)
-+ {
-+ jack_error("OSS: pthread_create() failed: %s@%i",
-+ __FILE__, __LINE__);
-+ return -1;
-+ }
-+ driver->threads |= 2;
-+ }
-+# endif
-+
-+ if (driver->threads & 1) sem_post(&driver->sem_start);
-+ if (driver->threads & 2) sem_post(&driver->sem_start);
-+
-+ driver->last_periodtime = jack_get_microseconds();
-+ driver->next_periodtime = 0;
-+ driver->iodelay = 0.0F;
-+
-+ return 0;
-+}
-+
-+
-+static int oss_driver_stop (oss_driver_t *driver)
-+{
-+ void *retval;
-+
-+ driver->run = 0;
-+ if (driver->threads & 1)
-+ {
-+ if (pthread_join(driver->thread_in, &retval) < 0)
-+ {
-+ jack_error("OSS: pthread_join() failed: %s@%i",
-+ __FILE__, __LINE__);
-+ return -1;
-+ }
-+ }
-+ if (driver->threads & 2)
-+ {
-+ if (pthread_join(driver->thread_out, &retval) < 0)
-+ {
-+ jack_error("OSS: pthread_join() failed: %s@%i",
-+ __FILE__, __LINE__);
-+ return -1;
-+ }
-+ }
-+ sem_destroy(&driver->sem_start);
-+# ifdef USE_BARRIER
-+ pthread_barrier_destroy(&driver->barrier);
-+# endif
-+ pthread_mutex_destroy(&driver->mutex_in);
-+ pthread_mutex_destroy(&driver->mutex_out);
-+
-+ if (driver->outfd >= 0 && driver->outfd != driver->infd)
-+ {
-+ close(driver->outfd);
-+ driver->outfd = -1;
-+ }
-+ if (driver->infd >= 0)
-+ {
-+ close(driver->infd);
-+ driver->infd = -1;
-+ }
-+
-+ if (driver->indevbuf != NULL)
-+ {
-+ free(driver->indevbuf);
-+ driver->indevbuf = NULL;
-+ }
-+ if (driver->outdevbuf != NULL)
-+ {
-+ free(driver->outdevbuf);
-+ driver->outdevbuf = NULL;
-+ }
-+
-+ return 0;
-+}
-+
-+
-+static int oss_driver_read (oss_driver_t *driver, jack_nframes_t nframes)
-+{
-+ int channel;
-+ jack_sample_t *portbuf;
-+ JSList *node;
-+ jack_port_t *port;
-+
-+ if (nframes != driver->period_size)
-+ {
-+ jack_error(
-+ "OSS: read failed nframes != period_size (%u/%u): %s@%i",
-+ nframes, driver->period_size, __FILE__, __LINE__);
-+ return -1;
-+ }
-+
-+ pthread_mutex_lock(&driver->mutex_in);
-+
-+ node = driver->capture_ports;
-+ channel = 0;
-+ while (node != NULL)
-+ {
-+ port = (jack_port_t *) node->data;
-+
-+ if (jack_port_connected(port))
-+ {
-+ portbuf = jack_port_get_buffer(port, nframes);
-+ copy_and_convert_in(portbuf, driver->indevbuf,
-+ nframes, channel,
-+ driver->capture_channels,
-+ driver->bits);
-+ }
-+
-+ node = jack_slist_next(node);
-+ channel++;
-+ }
-+
-+ pthread_mutex_unlock(&driver->mutex_in);
-+
-+ return 0;
-+}
-+
-+
-+static int oss_driver_write (oss_driver_t *driver, jack_nframes_t nframes)
-+{
-+ int channel;
-+ jack_sample_t *portbuf;
-+ JSList *node;
-+ jack_port_t *port;
-+
-+ if (nframes != driver->period_size)
-+ {
-+ jack_error(
-+ "OSS: write failed nframes != period_size (%u/%u): %s@%i",
-+ nframes, driver->period_size, __FILE__, __LINE__);
-+ return -1;
-+ }
-+
-+ pthread_mutex_lock(&driver->mutex_out);
-+
-+ node = driver->playback_ports;
-+ channel = 0;
-+ while (node != NULL)
-+ {
-+ port = (jack_port_t *) node->data;
-+
-+ if (jack_port_connected(port))
-+ {
-+ portbuf = jack_port_get_buffer(port, nframes);
-+ copy_and_convert_out(driver->outdevbuf, portbuf,
-+ nframes, channel,
-+ driver->playback_channels,
-+ driver->bits);
-+ }
-+
-+ node = jack_slist_next(node);
-+ channel++;
-+ }
-+
-+ pthread_mutex_unlock(&driver->mutex_out);
-+
-+ return 0;
-+}
-+
-+
-+static int oss_driver_null_cycle (oss_driver_t *driver, jack_nframes_t nframes)
-+{
-+ pthread_mutex_lock(&driver->mutex_in);
-+ memset(driver->indevbuf, 0x00, driver->indevbufsize);
-+ pthread_mutex_unlock(&driver->mutex_in);
-+
-+ pthread_mutex_lock(&driver->mutex_out);
-+ memset(driver->outdevbuf, 0x00, driver->outdevbufsize);
-+ pthread_mutex_unlock(&driver->mutex_out);
-+
-+ return 0;
-+}
-+
-+
-+static int oss_driver_bufsize (oss_driver_t *driver, jack_nframes_t nframes)
-+{
-+ oss_driver_stop(driver);
-+
-+ driver->period_size = nframes;
-+ driver->period_usecs =
-+ ((double) driver->period_size /
-+ (double) driver->sample_rate) * 1e6;
-+ printf("oss_driver: period size update: %u\n", driver->period_size);
-+
-+ oss_driver_start(driver);
-+
-+ return 0;
-+}
-+
-+
-+/* internal driver thread */
-+
-+
-+#ifdef USE_BARRIER
-+static inline void synchronize (oss_driver_t *driver)
-+{
-+ if (driver->threads == 3)
-+ {
-+ if (pthread_barrier_wait(&driver->barrier) ==
-+ PTHREAD_BARRIER_SERIAL_THREAD)
-+ {
-+ driver_cycle(driver);
-+ }
-+ }
-+ else
-+ {
-+ driver_cycle(driver);
-+ }
-+}
-+#endif
-+
-+
-+static void *io_thread (void *param)
-+{
-+ int schedpol;
-+ size_t localsize;
-+ void *localbuf;
-+ oss_driver_t *driver = (oss_driver_t *) param;
-+ struct sched_param schedp;
-+
-+ if (pthread_getschedparam(pthread_self(), &schedpol, &schedp) == 0)
-+ {
-+ schedpol = SCHED_FIFO;
-+ schedp.sched_priority = sched_get_priority_max(SCHED_FIFO) - 1;
-+ if (pthread_setschedparam(pthread_self(), schedpol,
-+ &schedp) != 0)
-+ {
-+ puts("oss_driver: pthread_setschedparam() failed\n");
-+ }
-+ }
-+ else
-+ {
-+ puts("oss_driver: pthread_getschedparam() failed\n");
-+ }
-+
-+ sem_wait(&driver->sem_start);
-+
-+# ifdef USE_BARRIER
-+ if (pthread_self() == driver->thread_in)
-+ {
-+ localsize = driver->indevbufsize;
-+ localbuf = malloc(localsize);
-+ if (localbuf == NULL)
-+ {
-+ jack_error("OSS: malloc() failed: %s@%i",
-+ __FILE__, __LINE__);
-+ return NULL;
-+ }
-+
-+ while (driver->run)
-+ {
-+ if (read(driver->infd, localbuf, localsize) <
-+ (ssize_t) localsize)
-+ {
-+ jack_error("OSS: read() failed: %s@%i",
-+ __FILE__, __LINE__);
-+ break;
-+ }
-+
-+ pthread_mutex_lock(&driver->mutex_in);
-+ memcpy(driver->indevbuf, localbuf, localsize);
-+ pthread_mutex_unlock(&driver->mutex_in);
-+
-+ synchronize(driver);
-+ }
-+
-+ free(localbuf);
-+ }
-+ else if (pthread_self() == driver->thread_out)
-+ {
-+ localsize = driver->outdevbufsize;
-+ localbuf = malloc(localsize);
-+ if (localbuf == NULL)
-+ {
-+ jack_error("OSS: malloc() failed: %s@%i",
-+ __FILE__, __LINE__);
-+ return NULL;
-+ }
-+
-+ while (driver->run)
-+ {
-+ pthread_mutex_lock(&driver->mutex_out);
-+ memcpy(localbuf, driver->outdevbuf, localsize);
-+ pthread_mutex_unlock(&driver->mutex_out);
-+
-+ if (write(driver->outfd, localbuf, localsize) <
-+ (ssize_t) localsize)
-+ {
-+ jack_error("OSS: write() failed: %s@%i",
-+ __FILE__, __LINE__);
-+ break;
-+ }
-+
-+ synchronize(driver);
-+ }
-+
-+ free(localbuf);
-+ }
-+# else
-+ localsize = (driver->indevbufsize >= driver->outdevbufsize) ?
-+ driver->indevbufsize : driver->outdevbufsize;
-+ localbuf = malloc(localsize);
-+ if (localbuf == NULL)
-+ {
-+ jack_error("OSS: malloc() failed: %s@%i", __FILE__, __LINE__);
-+ return NULL;
-+ }
-+
-+ while (driver->run)
-+ {
-+ if (driver->playback_channels > 0)
-+ {
-+ pthread_mutex_lock(&driver->mutex_out);
-+ memcpy(localbuf, driver->outdevbuf,
-+ driver->outdevbufsize);
-+ pthread_mutex_unlock(&driver->mutex_out);
-+
-+ if (write(driver->outfd, localbuf,
-+ driver->outdevbufsize) <
-+ (ssize_t) driver->outdevbufsize)
-+ {
-+ jack_error("OSS: write() failed: %s@%i",
-+ __FILE__, __LINE__);
-+ break;
-+ }
-+ }
-+
-+ if (driver->capture_channels > 0)
-+ {
-+ if (read(driver->infd, localbuf,
-+ driver->indevbufsize) <
-+ (ssize_t) driver->indevbufsize)
-+ {
-+ jack_error("OSS: read() failed: %s@%i",
-+ __FILE__, __LINE__);
-+ break;
-+ }
-+
-+ pthread_mutex_lock(&driver->mutex_in);
-+ memcpy(driver->indevbuf, localbuf,
-+ driver->indevbufsize);
-+ pthread_mutex_unlock(&driver->mutex_in);
-+ }
-+
-+ driver_cycle(driver);
-+ }
-+
-+ free(localbuf);
-+# endif
-+
-+ return NULL;
-+}
-+
-+
-+/* jack driver published interface */
-+
-+
-+const char driver_client_name[] = "oss";
-+
-+
-+void driver_finish (jack_driver_t *);
-+
-+
-+jack_driver_desc_t * driver_get_descriptor ()
-+{
-+ jack_driver_desc_t *desc;
-+ jack_driver_param_desc_t *params;
-+
-+ desc = (jack_driver_desc_t *) calloc(1, sizeof(jack_driver_desc_t));
-+ if (desc == NULL)
-+ {
-+ printf("oss_driver: malloc() failed: %s@%i\n",
-+ __FILE__, __LINE__);
-+ return NULL;
-+ }
-+ strcpy(desc->name, driver_client_name);
-+ desc->nparams = OSS_DRIVER_N_PARAMS;
-+
-+ params = calloc(desc->nparams, sizeof(jack_driver_param_desc_t));
-+ memcpy(params, oss_params,
-+ OSS_DRIVER_N_PARAMS * sizeof(jack_driver_param_desc_t));
-+ desc->params = params;
-+
-+ return desc;
-+}
-+
-+
-+jack_driver_t * driver_initialize (jack_client_t *client,
-+ JSList * params)
-+{
-+ int bits = OSS_DRIVER_DEF_BITS;
-+ jack_nframes_t sample_rate = OSS_DRIVER_DEF_FS;
-+ jack_nframes_t period_size = OSS_DRIVER_DEF_BLKSIZE;
-+ unsigned int capture_channels = OSS_DRIVER_DEF_INS;
-+ unsigned int playback_channels = OSS_DRIVER_DEF_OUTS;
-+ const JSList *pnode;
-+ const jack_driver_param_t *param;
-+ oss_driver_t *driver;
-+
-+ driver = (oss_driver_t *) malloc(sizeof(oss_driver_t));
-+ if (driver == NULL)
-+ {
-+ jack_error("OSS: malloc() failed: %s@%i", __FILE__, __LINE__);
-+ return NULL;
-+ }
-+ jack_driver_init((jack_driver_t *) driver);
-+
-+ driver->attach = (JackDriverAttachFunction) oss_driver_attach;
-+ driver->detach = (JackDriverDetachFunction) oss_driver_detach;
-+ driver->start = (JackDriverStartFunction) oss_driver_start;
-+ driver->stop = (JackDriverStopFunction) oss_driver_stop;
-+ driver->read = (JackDriverReadFunction) oss_driver_read;
-+ driver->write = (JackDriverWriteFunction) oss_driver_write;
-+ driver->null_cycle = (JackDriverNullCycleFunction)
-+ oss_driver_null_cycle;
-+ driver->bufsize = (JackDriverBufSizeFunction) oss_driver_bufsize;
-+
-+ driver->indev = NULL;
-+ driver->outdev = NULL;
-+ driver->ignorehwbuf = 0;
-+
-+ pnode = params;
-+ while (pnode != NULL)
-+ {
-+ param = (const jack_driver_param_t *) pnode->data;
-+
-+ switch (param->character)
-+ {
-+ case 'r':
-+ sample_rate = param->value.ui;
-+ break;
-+ case 'p':
-+ period_size = param->value.ui;
-+ break;
-+ case 'w':
-+ bits = param->value.i;
-+ break;
-+ case 'i':
-+ capture_channels = param->value.ui;
-+ break;
-+ case 'o':
-+ playback_channels = param->value.ui;
-+ break;
-+ case 'C':
-+ driver->indev = strdup(param->value.str);
-+ break;
-+ case 'P':
-+ driver->outdev = strdup(param->value.str);
-+ break;
-+ case 'b':
-+ driver->ignorehwbuf = 1;
-+ break;
-+ case 'h':
-+ puts("-r <fs>\tsample rate");
-+ puts("-p <size>\tperiod size");
-+ puts("-w <bits>\tword length");
-+ puts("-i <chs>\tcapture channels");
-+ puts("-o <chs>\tplayback channels");
-+ puts("-C <dev>\tcapture device");
-+ puts("-P <dev>\tplayback device");
-+ puts("-b\tignore hardware buffer size");
-+ puts("-h\tthis help");
-+ break;
-+ }
-+ pnode = jack_slist_next(pnode);
-+ }
-+
-+ driver->sample_rate = sample_rate;
-+ driver->period_size = period_size;
-+ driver->bits = bits;
-+ driver->capture_channels = capture_channels;
-+ driver->playback_channels = playback_channels;
-+
-+ driver->period_usecs =
-+ ((double) period_size / (double) sample_rate) * 1e6;
-+ driver->last_wait_ust = 0;
-+ driver->last_periodtime = jack_get_microseconds();
-+ driver->next_periodtime = 0;
-+ driver->iodelay = 0.0F;
-+
-+ driver->finish = driver_finish;
-+
-+ if (driver->indev == NULL)
-+ driver->indev = strdup(OSS_DRIVER_DEF_DEV);
-+ if (driver->outdev == NULL)
-+ driver->outdev = strdup(OSS_DRIVER_DEF_DEV);
-+ driver->infd = -1;
-+ driver->outfd = -1;
-+ switch (driver->bits)
-+ {
-+# ifndef OSS_ENDIAN
-+# ifdef __GNUC__
-+# if (defined(__i386__) || defined(__alpha__) || defined(__arm__) || defined(__x86_64__))
-+# define OSS_LITTLE_ENDIAN 1234
-+# define OSS_ENDIAN OSS_LITTLE_ENDIAN
-+# else
-+# define OSS_BIG_ENDIAN 4321
-+# define OSS_ENDIAN OSS_BIG_ENDIAN
-+# endif
-+# else /* __GNUC__ */
-+# if (defined(_AIX) || defined(AIX) || defined(sparc) || defined(__hppa) || defined(PPC) || defined(__powerpc__) && !defined(i386) && !defined(__i386) && !defined(__i386__))
-+# define OSS_BIG_ENDIAN 4321
-+# define OSS_ENDIAN OSS_BIG_ENDIAN
-+# else
-+# define OSS_LITTLE_ENDIAN 1234
-+# define OSS_ENDIAN OSS_LITTLE_ENDIAN
-+# endif
-+# endif /* __GNUC__ */
-+# endif /* OSS_ENDIAN */
-+# if (OSS_ENDIAN == 1234)
-+ /* little-endian architectures */
-+ case 24: /* little-endian LSB aligned 24-bits in 32-bits integer */
-+ driver->format = 0x00008000;
-+ break;
-+ case 32: /* little-endian 32-bit integer */
-+ driver->format = 0x00001000;
-+ break;
-+ case 64: /* native-endian 64-bit float */
-+ driver->format = 0x00004000;
-+ break;
-+ case 16: /* little-endian 16-bit integer */
-+ default:
-+ driver->format = 0x00000010;
-+ break;
-+ /* big-endian architectures */
-+# else
-+ case 24: /* big-endian LSB aligned 24-bits in 32-bits integer */
-+ break;
-+ driver->format = 0x00010000;
-+ case 32: /* big-endian 32-bit integer */
-+ driver->format = 0x00002000;
-+ break;
-+ case 64: /* native-endian 64-bit float */
-+ driver->format = 0x00004000;
-+ break;
-+ case 16: /* big-endian 16-bit integer */
-+ default:
-+ driver->format = 0x00000020;
-+# endif
-+ }
-+
-+ driver->indevbuf = driver->outdevbuf = NULL;
-+
-+ driver->capture_ports = NULL;
-+ driver->playback_ports = NULL;
-+
-+ driver->engine = NULL;
-+ driver->client = client;
-+
-+ return ((jack_driver_t *) driver);
-+}
-+
-+
-+void driver_finish (jack_driver_t *driver)
-+{
-+ free(((oss_driver_t *) driver)->indev);
-+ free(((oss_driver_t *) driver)->outdev);
-+ free(driver);
-+}
-+
-diff -urN jack-audio-connection-kit-0.94.0.orig/drivers/oss/oss_driver.h drivers/oss/oss_driver.h
---- jack-audio-connection-kit-0.94.0.orig/drivers/oss/oss_driver.h 1970-01-01 02:00:00.000000000 +0200
-+++ drivers/oss/oss_driver.h 2004-03-15 21:25:31.000000000 +0200
-@@ -0,0 +1,94 @@
-+/*
-+
-+ OSS driver for Jack
-+ Copyright (C) 2003-2004 Jussi Laako <jussi@sonarnerd.net>
-+
-+ 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
-+
-+*/
-+
-+
-+#ifndef __JACK_OSS_DRIVER_H__
-+#define __JACK_OSS_DRIVER_H__
-+
-+#include <pthread.h>
-+#include <semaphore.h>
-+
-+#include <jack/types.h>
-+#include <jack/jslist.h>
-+#include <jack/driver.h>
-+#include <jack/time.h>
-+#include <jack/jack.h>
-+
-+
-+#define OSS_DRIVER_DEF_DEV "/dev/dsp"
-+#define OSS_DRIVER_DEF_FS 48000
-+#define OSS_DRIVER_DEF_BLKSIZE 1024
-+#define OSS_DRIVER_DEF_BITS 16
-+#define OSS_DRIVER_DEF_INS 2
-+#define OSS_DRIVER_DEF_OUTS 2
-+
-+
-+typedef jack_default_audio_sample_t jack_sample_t;
-+
-+typedef struct _oss_driver
-+{
-+ JACK_DRIVER_DECL
-+
-+ jack_nframes_t sample_rate;
-+ jack_nframes_t period_size;
-+ int bits;
-+ unsigned int capture_channels;
-+ unsigned int playback_channels;
-+
-+ char *indev;
-+ char *outdev;
-+ int infd;
-+ int outfd;
-+ int format;
-+ int ignorehwbuf;
-+
-+ size_t indevbufsize;
-+ size_t outdevbufsize;
-+ size_t portbufsize;
-+ void *indevbuf;
-+ void *outdevbuf;
-+
-+ float iodelay;
-+ jack_time_t last_periodtime;
-+ jack_time_t next_periodtime;
-+
-+ JSList *capture_ports;
-+ JSList *playback_ports;
-+
-+ jack_engine_t *engine;
-+ jack_client_t *client;
-+
-+ volatile int run;
-+ volatile int threads;
-+ pthread_t thread_in;
-+ pthread_t thread_out;
-+ pthread_mutex_t mutex_in;
-+ pthread_mutex_t mutex_out;
-+# ifdef USE_BARRIER
-+ pthread_barrier_t barrier;
-+# endif
-+ sem_t sem_start;
-+} oss_driver_t;
-+
-+
-+#endif
-+
diff --git a/audio/jack/files/patch-client.c b/audio/jack/files/patch-client.c
deleted file mode 100644
index edbe8e4d1bfa..000000000000
--- a/audio/jack/files/patch-client.c
+++ /dev/null
@@ -1,107 +0,0 @@
---- libjack/client.c.orig Sun Jan 11 20:07:14 2004
-+++ libjack/client.c Wed Mar 10 13:13:55 2004
-@@ -26,20 +26,23 @@
- #else
- #include <sys/poll.h>
- #endif
--
-+#include <sys/types.h>
- #include <sys/socket.h>
- #include <sys/un.h>
- #include <pthread.h>
- #include <errno.h>
- #include <fcntl.h>
--#include <sys/types.h>
-+
- #include <sys/ipc.h>
- #include <sys/mman.h>
-
- #include <stdarg.h>
- #include <stdio.h>
-+#if HAVE_STDINT_H
- #include <stdint.h>
-+#endif
- #include <regex.h>
-+#include <string.h>
-
- #include <config.h>
-
-@@ -1152,8 +1155,12 @@
- "thread (%s)", strerror (errno));
- return -1;
- }
--
--#if defined(__APPLE__) && defined(__POWERPC__)
-+
-+#ifdef __FreeBSD__
-+#include <osreldate.h>
-+#endif
-+#if defined(__APPLE__) && defined(__POWERPC__) || (__FreeBSD_version < 501000)
-+
- // To be implemented
- #else
- if (mlockall (MCL_CURRENT | MCL_FUTURE) != 0) {
-@@ -1307,8 +1314,11 @@
- * pages are actually mapped (more important for mlockall(2)
- * usage in jack_start_thread())
- */
--
--#if defined(__APPLE__) && defined(__POWERPC__)
-+
-+#ifdef __FreeBSD__
-+#include <osreldate.h>
-+#endif
-+#if (defined(__APPLE__) && defined(__POWERPC__)) || (__FreeBSD_version < 501000)
- /* a bigger stack makes the application crash... */
- #define BIG_ENOUGH_STACK 10000
- #else
-@@ -1748,6 +1758,15 @@
- return client->thread_id;
- }
-
-+static int64_t
-+rdtsc(void)
-+{
-+ unsigned int i, j;
-+#define RDTSC ".byte 0x0f, 0x31; "
-+ asm(RDTSC : "=a"(i), "=d"(j) : );
-+ return ((int64_t)j<<32) + (int64_t)i;
-+}
-+
- #if defined(__APPLE__) && defined(__POWERPC__)
-
- double __jack_time_ratio;
-@@ -1763,6 +1782,7 @@
- jack_time_t
- jack_get_mhz (void)
- {
-+#ifndef __FreeBSD__
- FILE *f = fopen("/proc/cpuinfo", "r");
- if (f == 0)
- {
-@@ -1803,6 +1823,25 @@
- return (jack_time_t)mhz;
- }
- }
-+
-+#else
-+ int64_t tsc_start, tsc_end;
-+ struct timeval tv_start, tv_end;
-+ int usec_delay;
-+ jack_time_t mhz;
-+
-+ tsc_start = rdtsc();
-+ gettimeofday(&tv_start, NULL);
-+ usleep(100000);
-+ tsc_end = rdtsc();
-+ gettimeofday(&tv_end, NULL);
-+
-+ usec_delay = 1000000 * (tv_end.tv_sec - tv_start.tv_sec)
-+ + (tv_end.tv_usec - tv_start.tv_usec);
-+ mhz = (tsc_end - tsc_start) / usec_delay;
-+ printf("cpu MHz:\t %.3f\n",(double) mhz);
-+ return mhz;
-+#endif
- }
-
- jack_time_t __jack_cpu_mhz;
diff --git a/audio/jack/files/patch-configure b/audio/jack/files/patch-configure
deleted file mode 100644
index c519fbe94d90..000000000000
--- a/audio/jack/files/patch-configure
+++ /dev/null
@@ -1,19 +0,0 @@
---- configure.bak Wed Mar 10 14:17:41 2004
-+++ configure Wed Mar 10 14:20:41 2004
-@@ -20782,7 +20782,7 @@
- fi
-
-
-- ac_config_files="$ac_config_files Makefile jack.pc jack.spec jack/Makefile jack/version.h jackd/Makefile jackd/jackd.1 libjack/Makefile drivers/Makefile drivers/alsa/Makefile drivers/dummy/Makefile drivers/portaudio/Makefile drivers/iec61883/Makefile example-clients/Makefile doc/Makefile doc/reference.doxygen"
-+ ac_config_files="$ac_config_files Makefile jack.pc jack.spec jack/Makefile jack/version.h jackd/Makefile jackd/jackd.1 libjack/Makefile drivers/Makefile drivers/alsa/Makefile drivers/dummy/Makefile drivers/portaudio/Makefile drivers/iec61883/Makefile drivers/oss/Makefile example-clients/Makefile doc/Makefile doc/reference.doxygen"
- cat >confcache <<\_ACEOF
- # This file is a shell script that caches the results of configure
- # tests run on this system so they can be shared between configure
-@@ -21428,6 +21428,7 @@
- "drivers/dummy/Makefile" ) CONFIG_FILES="$CONFIG_FILES drivers/dummy/Makefile" ;;
- "drivers/portaudio/Makefile" ) CONFIG_FILES="$CONFIG_FILES drivers/portaudio/Makefile" ;;
- "drivers/iec61883/Makefile" ) CONFIG_FILES="$CONFIG_FILES drivers/iec61883/Makefile" ;;
-+ "drivers/oss/Makefile" ) CONFIG_FILES="$CONFIG_FILES drivers/oss/Makefile" ;;
- "example-clients/Makefile" ) CONFIG_FILES="$CONFIG_FILES example-clients/Makefile" ;;
- "doc/Makefile" ) CONFIG_FILES="$CONFIG_FILES doc/Makefile" ;;
- "doc/reference.doxygen" ) CONFIG_FILES="$CONFIG_FILES doc/reference.doxygen" ;;
diff --git a/audio/jack/files/patch-driver.c b/audio/jack/files/patch-driver.c
deleted file mode 100644
index 15194d406eeb..000000000000
--- a/audio/jack/files/patch-driver.c
+++ /dev/null
@@ -1,31 +0,0 @@
---- libjack/driver.c.orig Thu Dec 11 00:50:40 2003
-+++ libjack/driver.c Tue Mar 9 19:52:04 2004
-@@ -24,6 +24,7 @@
- #include <stdarg.h>
- #include <stdlib.h>
- #include <stdio.h>
-+#include <sys/types.h>
- #include <sys/mman.h>
- #include <errno.h>
-
-@@ -105,6 +106,11 @@
- return -1;
- }
-
-+#ifdef __FreeBSD__
-+#include <osreldate.h>
-+#endif
-+#if (defined(__APPLE__) && defined(__POWERPC__)) || (__FreeBSD_version < 501000)
-+#else
- if (mlockall (MCL_CURRENT | MCL_FUTURE) != 0) {
- jack_error ("cannot lock down memory for RT thread (%s)",
- strerror (errno));
-@@ -112,7 +118,7 @@
- return -1;
- #endif /* ENSURE_MLOCK */
- }
--
-+#endif
- return 0;
- }
-
diff --git a/audio/jack/files/patch-drivers-Makefile.in b/audio/jack/files/patch-drivers-Makefile.in
deleted file mode 100644
index 52c413f69dea..000000000000
--- a/audio/jack/files/patch-drivers-Makefile.in
+++ /dev/null
@@ -1,14 +0,0 @@
---- drivers/Makefile.in.bak Tue Jan 13 03:44:36 2004
-+++ drivers/Makefile.in Wed Mar 10 14:23:02 2004
-@@ -187,9 +187,9 @@
- @HAVE_PA_TRUE@PA_DIR = portaudio
- @HAVE_PA_FALSE@PA_DIR =
-
--SUBDIRS = dummy iec61883 $(ALSA_DIR) $(PA_DIR)
-+SUBDIRS = dummy iec61883 oss $(ALSA_DIR) $(PA_DIR)
-
--DIST_SUBDIRS = dummy iec61883 alsa portaudio
-+DIST_SUBDIRS = dummy iec61883 oss alsa portaudio
- subdir = drivers
- ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
- mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
diff --git a/audio/jack/files/patch-drivers-oss-oss_driver.c b/audio/jack/files/patch-drivers-oss-oss_driver.c
new file mode 100644
index 000000000000..633186167a73
--- /dev/null
+++ b/audio/jack/files/patch-drivers-oss-oss_driver.c
@@ -0,0 +1,10 @@
+--- drivers/oss/oss_driver.c.orig Sat May 1 10:53:47 2004
++++ drivers/oss/oss_driver.c Sat May 1 10:58:57 2004
+@@ -23,6 +23,7 @@
+
+ #include <config.h>
+
++#define __BSD_VISIBLE 1
+ #ifdef USE_BARRIER
+ /*
+ * POSIX conformance level should be globally defined somewhere, possibly
diff --git a/audio/jack/files/patch-engine.c b/audio/jack/files/patch-engine.c
deleted file mode 100644
index 1c6607fed22a..000000000000
--- a/audio/jack/files/patch-engine.c
+++ /dev/null
@@ -1,25 +0,0 @@
---- jackd/engine.c.orig Sun Jan 11 20:07:13 2004
-+++ jackd/engine.c Tue Mar 9 19:43:47 2004
-@@ -36,7 +36,9 @@
- #include <fcntl.h>
- #include <stdio.h>
- #include <stdarg.h>
-+#ifdef HAVE_STDINT_H
- #include <stdint.h>
-+#endif
- #include <dirent.h>
- #include <sys/ipc.h>
- #include <signal.h>
-@@ -2119,8 +2124,10 @@
- strerror (errno));
- return -1;
- }
--
--#if defined(__APPLE__) && defined(__POWERPC__)
-+#ifdef __FreeBSD__
-+#include <osreldate.h>
-+#endif
-+#if (defined(__APPLE__) && defined(__POWERPC__)) || (__FreeBSD_version < 501000)
- // To be implemented
- #else
- if (mlockall (MCL_CURRENT | MCL_FUTURE) != 0) {
diff --git a/audio/jack/files/patch-ringbuffer.c b/audio/jack/files/patch-ringbuffer.c
deleted file mode 100644
index 7e5bf885a72f..000000000000
--- a/audio/jack/files/patch-ringbuffer.c
+++ /dev/null
@@ -1,10 +0,0 @@
---- libjack/ringbuffer.c.orig Tue Mar 9 18:57:50 2004
-+++ libjack/ringbuffer.c Tue Mar 9 18:58:07 2004
-@@ -22,6 +22,7 @@
-
- #include <stdlib.h>
- #include <string.h>
-+#include <sys/types.h>
- #include <sys/mman.h>
- #include <jack/ringbuffer.h>
-
diff --git a/audio/jack/pkg-plist b/audio/jack/pkg-plist
index 31aefddb59b5..496823929243 100644
--- a/audio/jack/pkg-plist
+++ b/audio/jack/pkg-plist
@@ -32,5 +32,45 @@ lib/libjack.la
lib/libjack.so
lib/libjack.so.0
libdata/pkgconfig/jack.pc
+share/jack-audio-connection-kit/reference/html/annotated.html
+share/jack-audio-connection-kit/reference/html/deprecated.html
+share/jack-audio-connection-kit/reference/html/files.html
+share/jack-audio-connection-kit/reference/html/functions.html
+share/jack-audio-connection-kit/reference/html/functions_vars.html
+share/jack-audio-connection-kit/reference/html/globals.html
+share/jack-audio-connection-kit/reference/html/globals_defs.html
+share/jack-audio-connection-kit/reference/html/globals_enum.html
+share/jack-audio-connection-kit/reference/html/globals_eval.html
+share/jack-audio-connection-kit/reference/html/globals_func.html
+share/jack-audio-connection-kit/reference/html/globals_type.html
+share/jack-audio-connection-kit/reference/html/globals_vars.html
+share/jack-audio-connection-kit/reference/html/index.html
+share/jack-audio-connection-kit/reference/html/inprocess_8c.html
+share/jack-audio-connection-kit/reference/html/jack_8h-source.html
+share/jack-audio-connection-kit/reference/html/jack_8h.html
+share/jack-audio-connection-kit/reference/html/mainpage_8dox.html
+share/jack-audio-connection-kit/reference/html/pages.html
+share/jack-audio-connection-kit/reference/html/porting-guide.html
+share/jack-audio-connection-kit/reference/html/porting_8dox.html
+share/jack-audio-connection-kit/reference/html/ringbuffer_8h-source.html
+share/jack-audio-connection-kit/reference/html/ringbuffer_8h.html
+share/jack-audio-connection-kit/reference/html/simple__client_8c.html
+share/jack-audio-connection-kit/reference/html/structjack__position__t.html
+share/jack-audio-connection-kit/reference/html/structjack__ringbuffer__data__t.html
+share/jack-audio-connection-kit/reference/html/structjack__ringbuffer__t.html
+share/jack-audio-connection-kit/reference/html/structjack__transport__info__t.html
+share/jack-audio-connection-kit/reference/html/structport__pair__t.html
+share/jack-audio-connection-kit/reference/html/transport-design.html
+share/jack-audio-connection-kit/reference/html/transport_8dox.html
+share/jack-audio-connection-kit/reference/html/transport_8h-source.html
+share/jack-audio-connection-kit/reference/html/transport_8h.html
+share/jack-audio-connection-kit/reference/html/types_8h-source.html
+share/jack-audio-connection-kit/reference/html/types_8h.html
+share/jack-audio-connection-kit/reference/html/doxygen.png
+share/jack-audio-connection-kit/reference/html/fsm.png
+share/jack-audio-connection-kit/reference/html/doxygen.css
+@dirrm share/jack-audio-connection-kit/reference/html
+@dirrm share/jack-audio-connection-kit/reference
+@dirrm share/jack-audio-connection-kit
@dirrm include/jack
@dirrm lib/jack