Reengineered ALSA expression and patched alsaLib to prevent compilation errors

svn path=/nixpkgs/branches/stdenv-updates/; revision=15206
This commit is contained in:
Sander van der Burg 2009-04-21 09:56:02 +00:00
parent 0ebb410014
commit be04acaf45
5 changed files with 55 additions and 53 deletions

View File

@ -0,0 +1,24 @@
{stdenv, fetchurl}:
stdenv.mkDerivation {
name = "alsa-lib-1.0.19";
src = fetchurl {
url = ftp://ftp.alsa-project.org/pub/lib/alsa-lib-1.0.19.tar.bz2;
sha256 = "11i898dc6qbachn046gl6dg6g7bl2k8crddl97f3z5i57bcjdvij";
};
configureFlags = "--disable-xmlto";
# Fix pcm.h file in order to prevent some compilation bugs
patchPhase = ''
sed -i -e 's|//int snd_pcm_mixer_element(snd_pcm_t \*pcm, snd_mixer_t \*mixer, snd_mixer_elem_t \*\*elem);|/\*int snd_pcm_mixer_element(snd_pcm_t \*pcm, snd_mixer_t \*mixer, snd_mixer_elem_t \*\*elem);\*/|' include/pcm.h
'';
meta = {
description = "ALSA, the Advanced Linux Sound Architecture libraries";
longDescription = ''
The Advanced Linux Sound Architecture (ALSA) provides audio and
MIDI functionality to the Linux-based operating system.
'';
homepage = http://www.alsa-project.org/;
};
}

View File

@ -0,0 +1,22 @@
{stdenv, fetchurl, alsaLib, gettext, ncurses}:
stdenv.mkDerivation {
name = "alsa-utils-1.0.19";
src = fetchurl {
url = ftp://ftp.alsa-project.org/pub/utils/alsa-utils-1.0.19.tar.bz2;
sha256 = "1bcchd5nwgb2hy0z9c6jxbqlzirkh6wvxv6nldjcwmvqmvsj8j8z";
};
buildInputs = [ alsaLib gettext ncurses ];
configureFlags = "--disable-xmlto";
meta = {
description = "ALSA, the Advanced Linux Sound Architecture utils";
longDescription = ''
The Advanced Linux Sound Architecture (ALSA) provides audio and
MIDI functionality to the Linux-based operating system.
'';
homepage = http://www.alsa-project.org/;
};
}

View File

@ -1,18 +0,0 @@
{fetchurl, stdenv, ncurses, gettext}:
let version = "1.0.19"; in
rec {
alsaLib = import ./common.nix {
pkgName = "lib";
sha256 = "11i898dc6qbachn046gl6dg6g7bl2k8crddl97f3z5i57bcjdvij";
inherit fetchurl stdenv version;
};
alsaUtils = import ./common.nix {
pkgName = "utils";
sha256 = "1bcchd5nwgb2hy0z9c6jxbqlzirkh6wvxv6nldjcwmvqmvsj8j8z";
buildInputs = [alsaLib ncurses gettext];
inherit fetchurl stdenv version;
};
}

View File

@ -1,27 +0,0 @@
{ stdenv, fetchurl, pkgName, sha256, version
, buildInputs ? [], propagatedBuildInputs ? []
}:
stdenv.mkDerivation rec {
name = "alsa-${pkgName}-${version}";
src = fetchurl {
url = "ftp://ftp.alsa-project.org/pub/${pkgName}/${name}.tar.bz2";
inherit sha256;
};
inherit buildInputs propagatedBuildInputs;
configureFlags = "--disable-xmlto";
meta = {
description = "ALSA, the Advanced Linux Sound Architecture (${pkgName})";
longDescription = ''
The Advanced Linux Sound Architecture (ALSA) provides audio and
MIDI functionality to the Linux-based operating system.
'';
homepage = http://www.alsa-project.org/;
};
}

View File

@ -6554,7 +6554,7 @@ let
intltool gettext;
inherit (gtkLibs) glib;
inherit (xlibs) libX11 libICE libSM;
inherit (alsa) alsaLib; # Needs ALSA >= 1.0.17.
inherit alsaLib; # Needs ALSA >= 1.0.17.
gconf = gnome.GConf;
# Work around Libtool 1.5 interaction with Ltdl 2.x
@ -6695,12 +6695,13 @@ let
inherit fetchurl stdenv;
};
alsa = import ../os-specific/linux/alsa/1.0.19.nix {
inherit fetchurl stdenv ncurses gettext;
alsaLib = import ../os-specific/linux/alsa-lib {
inherit stdenv fetchurl;
};
alsaUtils = import ../os-specific/linux/alsa-utils {
inherit stdenv fetchurl alsaLib gettext ncurses;
};
alsaLib = alsa.alsaLib;
alsaUtils = alsa.alsaUtils;
blcr = builderDefsPackage (selectVersion ../os-specific/linux/blcr "0.6.5"){
inherit perl;
@ -8205,7 +8206,7 @@ let
python dbus dbus_glib freetype fontconfig bzip2;
inherit (gtkLibs) gtk pango;
inherit (gnome) libIDL;
inherit (alsa) alsaLib;
inherit alsaLib;
#enableOfficialBranding = true;
xulrunner = xulrunner3_1;
autoconf = autoconf213;
@ -8216,7 +8217,7 @@ let
python dbus dbus_glib freetype fontconfig bzip2 xlibs file;
inherit (gtkLibs) gtk pango;
inherit (gnome) libIDL;
inherit (alsa) alsaLib;
inherit alsaLib;
autoconf = autoconf213;
#enableOfficialBranding = true;
});