From 9c485513955c72b0540de5a3ed580e0fd322f7e6 Mon Sep 17 00:00:00 2001 From: Stephan Raue Date: Tue, 27 Sep 2011 20:51:07 +0200 Subject: [PATCH 01/11] libsndfile: add patch to fix autotools scripts, fix build Signed-off-by: Stephan Raue --- packages/audio/libsndfile/build | 5 ++++ .../patches/libsndfile-1.0.25-configure.patch | 25 +++++++++++++++++++ 2 files changed, 30 insertions(+) create mode 100644 packages/audio/libsndfile/patches/libsndfile-1.0.25-configure.patch diff --git a/packages/audio/libsndfile/build b/packages/audio/libsndfile/build index c16241fa6f..3589a7ddda 100755 --- a/packages/audio/libsndfile/build +++ b/packages/audio/libsndfile/build @@ -28,9 +28,14 @@ cd $PKG_BUILD --prefix=/usr \ --disable-static \ --enable-shared \ + --disable-silent-rules \ --disable-sqlite \ --enable-alsa \ --disable-external-libs \ + --disable-experimental \ + --disable-test-coverage \ + --enable-largefile \ + --with-gnu-ld make -C src cp sndfile.pc $SYSROOT_PREFIX/usr/lib/pkgconfig diff --git a/packages/audio/libsndfile/patches/libsndfile-1.0.25-configure.patch b/packages/audio/libsndfile/patches/libsndfile-1.0.25-configure.patch new file mode 100644 index 0000000000..ece79a7d2b --- /dev/null +++ b/packages/audio/libsndfile/patches/libsndfile-1.0.25-configure.patch @@ -0,0 +1,25 @@ +diff -Naur libsndfile-1.0.25-old/configure.ac libsndfile-1.0.25-new/configure.ac +--- libsndfile-1.0.25-old/configure.ac 2011-07-13 01:59:57.000000000 -0700 ++++ libsndfile-1.0.25-new/configure.ac 2011-07-13 17:04:14.000000000 -0700 +@@ -18,9 +18,6 @@ + AM_INIT_AUTOMAKE($PACKAGE_NAME,$PACKAGE_VERSION) + AM_SILENT_RULES([yes]) + +-dnl Add parameters for aclocal +-AC_SUBST(ACLOCAL_AMFLAGS, "-I M4") +- + AC_LANG([C]) + + AC_PROG_CC +diff -Naur libsndfile-1.0.25-old/Makefile.am libsndfile-1.0.25-new/Makefile.am +--- libsndfile-1.0.25-old/Makefile.am 2011-07-07 02:47:24.000000000 -0700 ++++ libsndfile-1.0.25-new/Makefile.am 2011-07-13 17:04:14.000000000 -0700 +@@ -2,6 +2,8 @@ + + DISTCHECK_CONFIGURE_FLAGS = --enable-gcc-werror + ++ACLOCAL_AMFLAGS = -I M4 ++ + if BUILD_OCTAVE_MOD + octave_dir = Octave + endif From a0ad12d8f7e514340eea81fb76baa6164975d1b7 Mon Sep 17 00:00:00 2001 From: Stephan Raue Date: Tue, 27 Sep 2011 20:57:10 +0200 Subject: [PATCH 02/11] new package: add package 'json-c', thanks to Gujs Signed-off-by: Stephan Raue --- packages/devel/json-c/build | 37 +++++++++++++++++++++++++++++++++++ packages/devel/json-c/install | 27 +++++++++++++++++++++++++ packages/devel/json-c/meta | 36 ++++++++++++++++++++++++++++++++++ 3 files changed, 100 insertions(+) create mode 100755 packages/devel/json-c/build create mode 100755 packages/devel/json-c/install create mode 100644 packages/devel/json-c/meta diff --git a/packages/devel/json-c/build b/packages/devel/json-c/build new file mode 100755 index 0000000000..4c3ce5525d --- /dev/null +++ b/packages/devel/json-c/build @@ -0,0 +1,37 @@ +#!/bin/sh + +################################################################################ +# This file is part of OpenELEC - http://www.openelec.tv +# Copyright (C) 2009-2011 Stephan Raue (stephan@openelec.tv) +# +# 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, 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 OpenELEC.tv; see the file COPYING. If not, write to +# the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. +# http://www.gnu.org/copyleft/gpl.html +################################################################################ + +. config/options $1 + +cd $PKG_BUILD +./configure --host=$TARGET_NAME \ + --build=$HOST_NAME \ + --prefix=/usr \ + --exec-prefix=/usr \ + --sysconfdir=/etc \ + --datadir=/usr/share \ + --enable-shared \ + --disable-static \ + +make + +$MAKEINSTALL diff --git a/packages/devel/json-c/install b/packages/devel/json-c/install new file mode 100755 index 0000000000..56e600ecb8 --- /dev/null +++ b/packages/devel/json-c/install @@ -0,0 +1,27 @@ +#!/bin/sh + +################################################################################ +# This file is part of OpenELEC - http://www.openelec.tv +# Copyright (C) 2009-2011 Stephan Raue (stephan@openelec.tv) +# +# 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, 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 OpenELEC.tv; see the file COPYING. If not, write to +# the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. +# http://www.gnu.org/copyleft/gpl.html +################################################################################ + +. config/options $1 + +mkdir -p $INSTALL/usr/lib + cp -P $PKG_BUILD/.libs/libjson*.so* $INSTALL/usr/lib + diff --git a/packages/devel/json-c/meta b/packages/devel/json-c/meta new file mode 100644 index 0000000000..bd14e416f6 --- /dev/null +++ b/packages/devel/json-c/meta @@ -0,0 +1,36 @@ +################################################################################ +# This file is part of OpenELEC - http://www.openelec.tv +# Copyright (C) 2009-2011 Stephan Raue (stephan@openelec.tv) +# +# 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, 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 OpenELEC.tv; see the file COPYING. If not, write to +# the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. +# http://www.gnu.org/copyleft/gpl.html +################################################################################ + +PKG_NAME="json-c" +PKG_VERSION="0.9" +PKG_REV="1" +PKG_ARCH="any" +PKG_LICENSE="MIT" +PKG_SITE="http://oss.metaparadigm.com/json-c/" +PKG_URL="http://oss.metaparadigm.com/$PKG_NAME/$PKG_NAME-$PKG_VERSION.tar.gz" +PKG_DEPENDS="" +PKG_BUILD_DEPENDS="toolchain" +PKG_PRIORITY="optional" +PKG_SECTION="devel" +PKG_SHORTDESC="json-c: A JSON implementation in C" +PKG_LONGDESC="JSON-C implements a reference counting object model that allows you to easily construct JSON objects in C, output them as JSON formatted strings and parse JSON formatted strings back into the C representation of JSON objects." +PKG_IS_ADDON="no" + +PKG_AUTORECONF="yes" From f814eea15a4744d68092203a5fd5aa264c848884 Mon Sep 17 00:00:00 2001 From: Stephan Raue Date: Wed, 28 Sep 2011 01:26:10 +0200 Subject: [PATCH 03/11] new package: add package 'autoconf-archive' Signed-off-by: Stephan Raue --- .../devel/autotools/autoconf-archive/build | 36 +++++++++++++++++++ .../devel/autotools/autoconf-archive/meta | 36 +++++++++++++++++++ 2 files changed, 72 insertions(+) create mode 100755 packages/toolchain/devel/autotools/autoconf-archive/build create mode 100644 packages/toolchain/devel/autotools/autoconf-archive/meta diff --git a/packages/toolchain/devel/autotools/autoconf-archive/build b/packages/toolchain/devel/autotools/autoconf-archive/build new file mode 100755 index 0000000000..0546c63078 --- /dev/null +++ b/packages/toolchain/devel/autotools/autoconf-archive/build @@ -0,0 +1,36 @@ +#!/bin/sh + +################################################################################ +# This file is part of OpenELEC - http://www.openelec.tv +# Copyright (C) 2009-2011 Stephan Raue (stephan@openelec.tv) +# +# 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, 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 OpenELEC.tv; see the file COPYING. If not, write to +# the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. +# http://www.gnu.org/copyleft/gpl.html +################################################################################ + +. config/options $1 + +setup_toolchain host + +cd $PKG_BUILD + +./configure --host=$HOST_NAME \ + --build=$HOST_NAME \ + --target=$TARGET_NAME \ + --prefix=$ROOT/$TOOLCHAIN \ + +make +# make install +make prefix=$SYSROOT_PREFIX/usr install diff --git a/packages/toolchain/devel/autotools/autoconf-archive/meta b/packages/toolchain/devel/autotools/autoconf-archive/meta new file mode 100644 index 0000000000..ac656dd7ee --- /dev/null +++ b/packages/toolchain/devel/autotools/autoconf-archive/meta @@ -0,0 +1,36 @@ +################################################################################ +# This file is part of OpenELEC - http://www.openelec.tv +# Copyright (C) 2009-2011 Stephan Raue (stephan@openelec.tv) +# +# 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, 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 OpenELEC.tv; see the file COPYING. If not, write to +# the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. +# http://www.gnu.org/copyleft/gpl.html +################################################################################ + +PKG_NAME="autoconf-archive" +PKG_VERSION="2011.09.17" +PKG_REV="1" +PKG_ARCH="any" +PKG_LICENSE="GPL" +PKG_SITE="http://ftp.gnu.org/gnu/autoconf-archive" +PKG_URL="http://ftp.gnu.org/gnu/autoconf-archive/$PKG_NAME-$PKG_VERSION.tar.bz2" +PKG_DEPENDS="" +PKG_BUILD_DEPENDS="ccache" +PKG_PRIORITY="optional" +PKG_SECTION="toolchain/devel" +PKG_SHORTDESC="autoconf-archive: macros for autoconf" +PKG_LONGDESC="autoconf-archive is an package of m4 macros" +PKG_IS_ADDON="no" + +PKG_AUTORECONF="no" From 4cd3342d6f51eea1e4ef27b3158befd1f9ddd685 Mon Sep 17 00:00:00 2001 From: Stephan Raue Date: Wed, 28 Sep 2011 01:27:18 +0200 Subject: [PATCH 04/11] libtool: dont autoreconf Signed-off-by: Stephan Raue --- packages/devel/libtool/meta | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/devel/libtool/meta b/packages/devel/libtool/meta index 0f81acece3..0842529948 100644 --- a/packages/devel/libtool/meta +++ b/packages/devel/libtool/meta @@ -33,4 +33,4 @@ PKG_SHORTDESC="libtool: Generic library support script" PKG_LONGDESC="This is GNU Libtool, a generic library support script. Libtool hides the complexity of using shared libraries behind a consistent, portable interface." PKG_IS_ADDON="no" -PKG_AUTORECONF="yes" +PKG_AUTORECONF="no" From f3f7e5326fb3e9dc6e7ce0412b1d719b8f8b3890 Mon Sep 17 00:00:00 2001 From: Stephan Raue Date: Wed, 28 Sep 2011 01:27:53 +0200 Subject: [PATCH 05/11] toolchain: install autoconf-archive Signed-off-by: Stephan Raue --- packages/toolchain/meta | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/toolchain/meta b/packages/toolchain/meta index a54c60e700..a1aae5528d 100644 --- a/packages/toolchain/meta +++ b/packages/toolchain/meta @@ -26,7 +26,7 @@ PKG_LICENSE="GPL" PKG_SITE="http://www.openelec.tv" PKG_URL="" PKG_DEPENDS="" -PKG_BUILD_DEPENDS="make xz sed pkg-config automake autoconf intltool gcc-final bison flex cmake jam yasm nasm" +PKG_BUILD_DEPENDS="make xz sed pkg-config automake autoconf autoconf-archive intltool gcc-final bison flex cmake jam yasm nasm" PKG_PRIORITY="optional" PKG_SECTION="toolchain/devel" PKG_SHORTDESC="toolchain: OpenELEC.tv' toolchain" From 1a8c4a454a0bd26b96f4ad20a2872e3435e40640 Mon Sep 17 00:00:00 2001 From: Stephan Raue Date: Wed, 28 Sep 2011 04:14:21 +0200 Subject: [PATCH 06/11] json-c: force use of libc's malloc and realloc functions Signed-off-by: Stephan Raue --- packages/devel/json-c/build | 2 ++ 1 file changed, 2 insertions(+) diff --git a/packages/devel/json-c/build b/packages/devel/json-c/build index 4c3ce5525d..632c3cf34b 100755 --- a/packages/devel/json-c/build +++ b/packages/devel/json-c/build @@ -23,6 +23,8 @@ . config/options $1 cd $PKG_BUILD +ac_cv_func_malloc_0_nonnull=yes \ +ac_cv_func_realloc_0_nonnull=yes \ ./configure --host=$TARGET_NAME \ --build=$HOST_NAME \ --prefix=/usr \ From f344fbbec07548990640c9e8a87df9bd57fb810e Mon Sep 17 00:00:00 2001 From: Stephan Raue Date: Wed, 28 Sep 2011 04:15:28 +0200 Subject: [PATCH 07/11] SDL: build with pulseaudio support if enabled Signed-off-by: Stephan Raue --- packages/multimedia/SDL/build | 9 +++++++-- packages/multimedia/SDL/meta | 6 ++++++ 2 files changed, 13 insertions(+), 2 deletions(-) diff --git a/packages/multimedia/SDL/build b/packages/multimedia/SDL/build index e1135f60ee..a17f05fafd 100755 --- a/packages/multimedia/SDL/build +++ b/packages/multimedia/SDL/build @@ -22,6 +22,12 @@ . config/options $1 +if [ "$PULSEAUDIO_SUPPORT" = yes ]; then + SDL_PULSEAUDIO="--enable-pulseaudio --enable-pulseaudio-shared" +else + SDL_PULSEAUDIO="--disable-pulseaudio --disable-pulseaudio-shared" +fi + cd $PKG_BUILD rm -f acinclude/alsa.m4 @@ -58,8 +64,7 @@ rm -f acinclude/alsa.m4 --disable-esd \ --disable-esdtest \ --disable-esd-shared \ - --disable-pulseaudio \ - --disable-pulseaudio-shared \ + $SDL_PULSEAUDIO \ --disable-arts \ --disable-arts-shared \ --disable-nas \ diff --git a/packages/multimedia/SDL/meta b/packages/multimedia/SDL/meta index 64142859ca..b6adedb2c8 100644 --- a/packages/multimedia/SDL/meta +++ b/packages/multimedia/SDL/meta @@ -34,3 +34,9 @@ PKG_LONGDESC="Simple DirectMedia Layer is a cross-platform multimedia library de PKG_IS_ADDON="no" PKG_AUTORECONF="" + +if [ "$PULSEAUDIO_SUPPORT" = yes ]; then + PKG_DEPENDS="$PKG_DEPENDS pulseaudio" + PKG_BUILD_DEPENDS="$PKG_BUILD_DEPENDS pulseaudio" +fi + From 44304ef384ae93702644139f46127ed1a3637753 Mon Sep 17 00:00:00 2001 From: Stephan Raue Date: Wed, 28 Sep 2011 04:15:58 +0200 Subject: [PATCH 08/11] alsa: install alsa-plugins Signed-off-by: Stephan Raue --- packages/audio/alsa/meta | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/audio/alsa/meta b/packages/audio/alsa/meta index 512a494749..b77fc5208c 100644 --- a/packages/audio/alsa/meta +++ b/packages/audio/alsa/meta @@ -25,7 +25,7 @@ PKG_ARCH="any" PKG_LICENSE="GPL" PKG_SITE="http://www.alsa-project.org/" PKG_URL="" -PKG_DEPENDS="alsa-lib alsa-utils" +PKG_DEPENDS="alsa-lib alsa-utils alsa-plugins" PKG_BUILD_DEPENDS="toolchain" PKG_PRIORITY="optional" PKG_SECTION="audio" From 9eec520c19c73b81e3408b3afc7a77bacaf49f58 Mon Sep 17 00:00:00 2001 From: Stephan Raue Date: Wed, 28 Sep 2011 04:17:07 +0200 Subject: [PATCH 09/11] alsa-plugins: build with pulseaudio support if enabled, build with libsamplerate support Signed-off-by: Stephan Raue --- packages/audio/alsa-plugins/build | 10 ++++++++-- packages/audio/alsa-plugins/meta | 9 +++++++-- 2 files changed, 15 insertions(+), 4 deletions(-) diff --git a/packages/audio/alsa-plugins/build b/packages/audio/alsa-plugins/build index 21a1c57afb..451928f8da 100755 --- a/packages/audio/alsa-plugins/build +++ b/packages/audio/alsa-plugins/build @@ -22,6 +22,12 @@ . config/options $1 +if [ "$PULSEAUDIO_SUPPORT" = yes ]; then + ALSA_PULSEAUDIO="--enable-pulseaudio" +else + ALSA_PULSEAUDIO="--disable-pulseaudio" +fi + cd $PKG_BUILD ./configure --host=$TARGET_NAME \ @@ -33,9 +39,9 @@ cd $PKG_BUILD --disable-static \ --enable-shared \ --disable-jack \ - --disable-samplerate \ + --enable-samplerate \ --disable-avcodec \ - --disable-pulseaudio \ + $ALSA_PULSEAUDIO \ --with-speex=lib \ $MAKE diff --git a/packages/audio/alsa-plugins/meta b/packages/audio/alsa-plugins/meta index a52f351db4..c40512074f 100644 --- a/packages/audio/alsa-plugins/meta +++ b/packages/audio/alsa-plugins/meta @@ -25,8 +25,8 @@ PKG_ARCH="any" PKG_LICENSE="GPL" PKG_SITE="http://www.alsa-project.org/" PKG_URL="ftp://ftp.alsa-project.org/pub/plugins/$PKG_NAME-$PKG_VERSION.tar.bz2" -PKG_DEPENDS="alsa-lib speex" -PKG_BUILD_DEPENDS="toolchain alsa-lib speex" +PKG_DEPENDS="alsa-lib speex libsamplerate" +PKG_BUILD_DEPENDS="toolchain alsa-lib speex libsamplerate" PKG_PRIORITY="optional" PKG_SECTION="audio" PKG_SHORTDESC="alsa-plugins: Advanced Linux Sound Architecture Plugins" @@ -34,3 +34,8 @@ PKG_LONGDESC="ALSA (Advanced Linux Sound Architecture) is the next generation Li PKG_IS_ADDON="no" PKG_AUTORECONF="yes" + +if [ "$PULSEAUDIO_SUPPORT" = yes ]; then + PKG_DEPENDS="$PKG_DEPENDS pulseaudio" + PKG_BUILD_DEPENDS="$PKG_BUILD_DEPENDS pulseaudio" +fi From 95e318b8cc68b03be1babbeef54adb8708ec3bc6 Mon Sep 17 00:00:00 2001 From: Stephan Raue Date: Wed, 28 Sep 2011 04:45:58 +0200 Subject: [PATCH 10/11] busybox: add 'su' applet Signed-off-by: Stephan Raue --- packages/sysutils/busybox/config/busybox.conf | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/packages/sysutils/busybox/config/busybox.conf b/packages/sysutils/busybox/config/busybox.conf index ff0a3db60f..bdb144c03c 100644 --- a/packages/sysutils/busybox/config/busybox.conf +++ b/packages/sysutils/busybox/config/busybox.conf @@ -1,7 +1,7 @@ # # Automatically generated make config: don't edit -# Busybox version: 1.19.0 -# Sun Aug 14 01:33:34 2011 +# Busybox version: 1.19.2 +# Wed Sep 28 04:19:49 2011 # CONFIG_HAVE_DOT_CONFIG=y @@ -465,9 +465,9 @@ CONFIG_LOGIN_SCRIPTS=y # CONFIG_FEATURE_PASSWD_WEAK_CHECK is not set # CONFIG_CRYPTPW is not set # CONFIG_CHPASSWD is not set -# CONFIG_SU is not set -# CONFIG_FEATURE_SU_SYSLOG is not set -# CONFIG_FEATURE_SU_CHECKS_SHELLS is not set +CONFIG_SU=y +CONFIG_FEATURE_SU_SYSLOG=y +CONFIG_FEATURE_SU_CHECKS_SHELLS=y # CONFIG_SULOGIN is not set # CONFIG_VLOCK is not set From b6ce821ef67092e54012659cf9f7ef47fbf9c593 Mon Sep 17 00:00:00 2001 From: Stephan Raue Date: Wed, 28 Sep 2011 04:48:42 +0200 Subject: [PATCH 11/11] new package: add package 'pulseaudio', disabled per default Signed-off-by: Stephan Raue --- packages/audio/pulseaudio/build | 98 +++++++++++++++++++++++++++++++ packages/audio/pulseaudio/install | 56 ++++++++++++++++++ packages/audio/pulseaudio/meta | 42 +++++++++++++ projects/ATV/options | 3 + projects/Fusion/options | 3 + projects/Generic/options | 3 + projects/Generic_OSS/options | 3 + projects/ION/options | 3 + projects/Intel/options | 3 + projects/Ultra/options | 3 + 10 files changed, 217 insertions(+) create mode 100755 packages/audio/pulseaudio/build create mode 100755 packages/audio/pulseaudio/install create mode 100644 packages/audio/pulseaudio/meta diff --git a/packages/audio/pulseaudio/build b/packages/audio/pulseaudio/build new file mode 100755 index 0000000000..e24c25f40f --- /dev/null +++ b/packages/audio/pulseaudio/build @@ -0,0 +1,98 @@ +#!/bin/sh + +################################################################################ +# This file is part of OpenELEC - http://www.openelec.tv +# Copyright (C) 2009-2011 Stephan Raue (stephan@openelec.tv) +# +# 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, 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 OpenELEC.tv; see the file COPYING. If not, write to +# the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. +# http://www.gnu.org/copyleft/gpl.html +################################################################################ + +. config/options $1 + +# pulseaudio fails to build with LTO support + strip_lto + +# dont build parallel +# MAKEFLAGS=-j1 + +if [ "$AVAHI_DAEMON" = yes ]; then + PULSEAUDIO_AVAHI="--enable-avahi" +else + PULSEAUDIO_AVAHI="--disable-avahi" +fi + +cd $PKG_BUILD + +./configure --host=$TARGET_NAME \ + --build=$HOST_NAME \ + --prefix=/usr \ + --sysconfdir=/etc \ + --localstatedir=/var \ + --disable-static \ + --enable-shared \ + --disable-silent-rules \ + --disable-nls \ + --enable-largefile \ + --disable-rpath \ + --disable-x11 \ + --disable-samplerate \ + --disable-oss-output \ + --disable-oss-wrapper \ + --disable-coreaudio-output \ + --enable-alsa \ + --disable-solaris \ + --disable-waveout \ + --disable-glib2 \ + --disable-gtk2 \ + --disable-gconf \ + $PULSEAUDIO_AVAHI \ + --disable-jack \ + --disable-asyncns \ + --disable-tcpwrap \ + --disable-lirc \ + --enable-dbus \ + --disable-hal \ + --disable-bluez \ + --enable-udev \ + --disable-hal-compat \ + --enable-ipv6 \ + --enable-openssl \ + --disable-orc \ + --disable-manpages \ + --disable-per-user-esound-socket \ + --disable-legacy-runtime-dir \ + --disable-legacy-database-entry-format \ + --with-system-user=pulse \ + --with-system-group=pulse \ + --with-access-group=pulse-access \ + --with-module-dir="/usr/lib/pulse" \ + +# --with-system-user=root \ +# --with-system-group=root \ +# --with-access-group=root \ + +make + +mkdir -p $SYSROOT_PREFIX/usr/lib + cp -P src/.libs/libpulse.so* $SYSROOT_PREFIX/usr/lib + cp -P src/.libs/libpulse-simple.so* $SYSROOT_PREFIX/usr/lib + +mkdir -p $SYSROOT_PREFIX/usr/lib/pkgconfig + cp libpulse.pc $SYSROOT_PREFIX/usr/lib/pkgconfig + cp libpulse-simple.pc $SYSROOT_PREFIX/usr/lib/pkgconfig + +make DESTDIR="$SYSROOT_PREFIX" -C src install-pulseincludeHEADERS + diff --git a/packages/audio/pulseaudio/install b/packages/audio/pulseaudio/install new file mode 100755 index 0000000000..a50853cd39 --- /dev/null +++ b/packages/audio/pulseaudio/install @@ -0,0 +1,56 @@ +#!/bin/sh + +. config/options $1 + +add_user pulse x 499 498 "PulseAudio System Daemon" "/var/run/pulse" "/bin/sh" +add_group pulse 498 +add_group pulse-access 497 + +mkdir -p $INSTALL/etc/dbus-1/system.d + cp $PKG_BUILD/src/daemon/pulseaudio-system.conf $INSTALL/etc/dbus-1/system.d +# sed -e 's%user="pulse"%user="root"%g' -i $INSTALL/etc/dbus-1/system.d/pulseaudio-system.conf + +mkdir -p $INSTALL/etc/pulse + cp $PKG_BUILD/src/client.conf $INSTALL/etc/pulse + cp $PKG_BUILD/src/daemon.conf $INSTALL/etc/pulse + cp $PKG_BUILD/src/default.pa $INSTALL/etc/pulse +# cp $PKG_DIR/config/default.pa $INSTALL/etc/pulse + cp $PKG_BUILD/src/system.pa $INSTALL/etc/pulse + +mkdir -p $INSTALL/lib/udev/rules.d + cp $PKG_BUILD/src/modules/alsa/mixer/profile-sets/90-pulseaudio.rules $INSTALL/lib/udev/rules.d + +mkdir -p $INSTALL/usr/bin + cp $PKG_BUILD/src/.libs/pacat $INSTALL/usr/bin + cp $PKG_BUILD/src/.libs/pacmd $INSTALL/usr/bin + cp $PKG_BUILD/src/.libs/pactl $INSTALL/usr/bin + ln -sf pactl $INSTALL/usr/bin/pamon + ln -sf pactl $INSTALL/usr/bin/paplay + ln -sf pactl $INSTALL/usr/bin/parec + ln -sf pactl $INSTALL/usr/bin/parecord + cp $PKG_BUILD/src/.libs/pasuspender $INSTALL/usr/bin + cp $PKG_BUILD/src/.libs/pulseaudio $INSTALL/usr/bin +# cp $PKG_BUILD/src/start-pulseaudio-x11 $INSTALL/usr/bin + +mkdir -p $INSTALL/usr/lib + cp -P $PKG_BUILD/src/.libs/libpulse*.so* $INSTALL/usr/lib + rm -rf $INSTALL/usr/lib/libpulse*.so*T + +mkdir -p $INSTALL/usr/lib/pulse + cp -P $PKG_BUILD/src/.libs/libalsa-util.so $INSTALL/usr/lib/pulse + cp -P $PKG_BUILD/src/.libs/libavahi-wrap.so $INSTALL/usr/lib/pulse + cp -P $PKG_BUILD/src/.libs/libcli.so $INSTALL/usr/lib/pulse + cp -P $PKG_BUILD/src/.libs/libprotocol-cli.so $INSTALL/usr/lib/pulse + cp -P $PKG_BUILD/src/.libs/libprotocol-esound.so $INSTALL/usr/lib/pulse + cp -P $PKG_BUILD/src/.libs/libprotocol-http.so $INSTALL/usr/lib/pulse + cp -P $PKG_BUILD/src/.libs/libprotocol-native.so $INSTALL/usr/lib/pulse + cp -P $PKG_BUILD/src/.libs/libprotocol-simple.so $INSTALL/usr/lib/pulse + cp -P $PKG_BUILD/src/.libs/libraop.so $INSTALL/usr/lib/pulse + cp -P $PKG_BUILD/src/.libs/librtp.so $INSTALL/usr/lib/pulse + cp -P $PKG_BUILD/src/.libs/module-*.so $INSTALL/usr/lib/pulse + +mkdir -p $INSTALL/usr/share/pulseaudio/alsa-mixer/paths + cp $PKG_BUILD/src/modules/alsa/mixer/paths/* $INSTALL/usr/share/pulseaudio/alsa-mixer/paths + +mkdir -p $INSTALL/usr/share/pulseaudio/alsa-mixer/profile-sets + cp $PKG_BUILD/src/modules/alsa/mixer/profile-sets/*.conf $INSTALL/usr/share/pulseaudio/alsa-mixer/profile-sets diff --git a/packages/audio/pulseaudio/meta b/packages/audio/pulseaudio/meta new file mode 100644 index 0000000000..7973ff9b26 --- /dev/null +++ b/packages/audio/pulseaudio/meta @@ -0,0 +1,42 @@ +################################################################################ +# This file is part of OpenELEC - http://www.openelec.tv +# Copyright (C) 2009-2011 Stephan Raue (stephan@openelec.tv) +# +# 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, 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 OpenELEC.tv; see the file COPYING. If not, write to +# the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. +# http://www.gnu.org/copyleft/gpl.html +################################################################################ + +PKG_NAME="pulseaudio" +PKG_VERSION="1.0" +PKG_REV="1" +PKG_ARCH="any" +PKG_LICENSE="GPL" +PKG_SITE="http://pulseaudio.org/" +PKG_URL="http://freedesktop.org/software/pulseaudio/releases/$PKG_NAME-$PKG_VERSION.tar.gz" +PKG_DEPENDS="libtool json-c alsa-lib libsndfile speex dbus udev openssl" +PKG_BUILD_DEPENDS="toolchain libtool json-c alsa-lib libsndfile speex dbus udev openssl" +PKG_PRIORITY="optional" +PKG_SECTION="audio" +PKG_SHORTDESC="pulseaudio: Yet another sound server for Unix" +PKG_LONGDESC="PulseAudio is a sound server for Linux and other Unix-like operating systems. It is intended to be an improved drop-in replacement for the Enlightened Sound Daemon (esound or esd). In addition to the features esound provides, PulseAudio has an extensible plugin architecture, support for more than one sink per source, better low-latency behavior, the ability to be embedded into other software, a completely asynchronous C API, a simple command line interface for reconfiguring the daemon while running, flexible and implicit sample type conversion and resampling, and a "Zero-Copy" architecture." +PKG_IS_ADDON="no" + +PKG_AUTORECONF="no" + +if [ "$AVAHI_DAEMON" = yes ]; then + PKG_DEPENDS="$PKG_DEPENDS avahi" + PKG_BUILD_DEPENDS="$PKG_BUILD_DEPENDS avahi" +fi + diff --git a/projects/ATV/options b/projects/ATV/options index 14fbd7a423..02454c17e2 100644 --- a/projects/ATV/options +++ b/projects/ATV/options @@ -123,6 +123,9 @@ # build and install 'ProjectM' Visualization (yes / no) XBMC_VIS_PROJECTM="yes" +# build and install PulseAudio support (yes / no) + PULSEAUDIO_SUPPORT="no" + # build and install with non-free support # (RAR compression support in XBMC) (yes / no) NONFREE_SUPPORT="yes" diff --git a/projects/Fusion/options b/projects/Fusion/options index 507d65df6b..d64ce1f8c6 100644 --- a/projects/Fusion/options +++ b/projects/Fusion/options @@ -123,6 +123,9 @@ # build and install 'ProjectM' Visualization (yes / no) XBMC_VIS_PROJECTM="yes" +# build and install PulseAudio support (yes / no) + PULSEAUDIO_SUPPORT="no" + # build and install with non-free support # (RAR compression support in XBMC) (yes / no) NONFREE_SUPPORT="yes" diff --git a/projects/Generic/options b/projects/Generic/options index b6d542ca54..ffaacafa52 100644 --- a/projects/Generic/options +++ b/projects/Generic/options @@ -123,6 +123,9 @@ # build and install 'ProjectM' Visualization (yes / no) XBMC_VIS_PROJECTM="yes" +# build and install PulseAudio support (yes / no) + PULSEAUDIO_SUPPORT="no" + # build and install with non-free support # (RAR compression support in XBMC) (yes / no) NONFREE_SUPPORT="yes" diff --git a/projects/Generic_OSS/options b/projects/Generic_OSS/options index 147eb49306..59a37bfcde 100644 --- a/projects/Generic_OSS/options +++ b/projects/Generic_OSS/options @@ -123,6 +123,9 @@ # build and install 'ProjectM' Visualization (yes / no) XBMC_VIS_PROJECTM="yes" +# build and install PulseAudio support (yes / no) + PULSEAUDIO_SUPPORT="no" + # build and install with non-free support # (RAR compression support in XBMC) (yes / no) NONFREE_SUPPORT="yes" diff --git a/projects/ION/options b/projects/ION/options index 5763dc04c3..17b86a1718 100644 --- a/projects/ION/options +++ b/projects/ION/options @@ -123,6 +123,9 @@ # build and install 'ProjectM' Visualization (yes / no) XBMC_VIS_PROJECTM="yes" +# build and install PulseAudio support (yes / no) + PULSEAUDIO_SUPPORT="no" + # build and install with non-free support # (RAR compression support in XBMC) (yes / no) NONFREE_SUPPORT="yes" diff --git a/projects/Intel/options b/projects/Intel/options index 3628f5c64e..69588f338a 100644 --- a/projects/Intel/options +++ b/projects/Intel/options @@ -123,6 +123,9 @@ # build and install 'ProjectM' Visualization (yes / no) XBMC_VIS_PROJECTM="yes" +# build and install PulseAudio support (yes / no) + PULSEAUDIO_SUPPORT="no" + # build and install with non-free support # (RAR compression support in XBMC) (yes / no) NONFREE_SUPPORT="yes" diff --git a/projects/Ultra/options b/projects/Ultra/options index 4bdf145579..8878924975 100644 --- a/projects/Ultra/options +++ b/projects/Ultra/options @@ -123,6 +123,9 @@ # build and install 'ProjectM' Visualization (yes / no) XBMC_VIS_PROJECTM="yes" +# build and install PulseAudio support (yes / no) + PULSEAUDIO_SUPPORT="no" + # build and install with non-free support # (RAR compression support in XBMC) (yes / no) NONFREE_SUPPORT="yes"