aacgain: Use more up-to-date upstream repository.

Use more up-to-date upstream repostiory, which allows for a cleaner
build. It includes mp4v2 and faad, which will be built statically and
linked to the resulting binary.
This commit is contained in:
Robbin C 2015-06-11 00:12:46 +08:00 committed by Rok Garbas
parent 681cbedd4a
commit c07fb11cd2

View File

@ -1,60 +1,33 @@
{ stdenv, fetchFromGitHub, unzip, m4, libtool, automake, autoconf, mp3gain, mp4v2, faad2 }: { stdenv, fetchFromGitHub }:
stdenv.mkDerivation { stdenv.mkDerivation {
name = "aacgain-1.9"; name = "aacgain-1.9.0";
srcs = [ src = fetchFromGitHub {
(fetchFromGitHub { owner = "mulx";
owner = "mecke";
repo = "aacgain"; repo = "aacgain";
rev = "4a7d59d78eadbbd5413e905af8f91fe9184ce7a8"; rev = "7c29dccd878ade1301710959aeebe87a8f0828f5";
sha256 = "0y25avgmm1xpbggvkhby1a7v9wmhsp3wmp74q06sf8ph8xsfajw4"; sha256 = "07hl432vsscqg01b6wr99qmsj4gbx0i02x4k565432y6zpfmaxm0";
}) };
mp3gain.src
mp4v2.src
faad2.src
];
buildInputs = [ unzip m4 libtool automake autoconf ];
setSourceRoot = "sourceRoot=`pwd`";
postUnpack = ''
cd $sourceRoot
# mp3gain does not unzip to its own directory, so move files accordingly.
mkdir mp3gain
find . -type f -maxdepth 1 -exec mv {} mp3gain/ \;
mv mpglibDBL mp3gain/
mv aacgain-* aacgain
mv faad2-* faad2
mv mp4v2-* mp4v2
'';
patchPhase = ''
cd $sourceRoot
patch -p2 -N < aacgain/linux/mp3gain.patch
'';
configurePhase = '' configurePhase = ''
cd $sourceRoot/mp4v2 cd mp4v2
./configure ./configure
cd $sourceRoot/faad2 cd ../faad2
./configure
cd ..
./configure ./configure
''; '';
buildPhase = '' buildPhase = ''
cd $sourceRoot/mp4v2 cd mp4v2
make libmp4v2.la make libmp4v2.la
cd $sourceRoot/faad2/libfaad cd ../faad2
make make LDFLAGS=-static
cd $sourceRoot/aacgain/linux cd ..
sh prepare.sh
mkdir build
cd build
../../../configure
make make
''; '';
@ -65,7 +38,7 @@ stdenv.mkDerivation {
meta = { meta = {
description = "ReplayGain for AAC files"; description = "ReplayGain for AAC files";
homepage = https://github.com/mecke/aacgain.git; homepage = https://github.com/mulx/aacgain;
license = stdenv.lib.licenses.gpl2; license = stdenv.lib.licenses.gpl2;
platforms = stdenv.lib.platforms.linux; platforms = stdenv.lib.platforms.linux;
maintainers = [ stdenv.lib.maintainers.robbinch ]; maintainers = [ stdenv.lib.maintainers.robbinch ];