blob: 6f0ab87ce78a8fea9f964b4b8625a9fd56152c28 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
|
# Copyright 1999-2007 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/media-sound/mpg123/mpg123-0.59s-r11.ebuild,v 1.12 2007/03/02 12:47:10 genstef Exp $
inherit eutils toolchain-funcs
PATCH_VER="1.6"
S="${WORKDIR}/${PN}"
DESCRIPTION="Real Time mp3 player"
HOMEPAGE="http://www.mpg123.de/"
SRC_URI="http://www.mpg123.de/mpg123/${PN}-pre${PV}.tar.gz
mirror://gentoo/${P}-gentoo-${PATCH_VER}.tar.bz2"
LICENSE="as-is"
SLOT="0"
KEYWORDS="alpha amd64 hppa ia64 mips ppc ppc64 sparc x86"
IUSE="mmx 3dnow esd nas oss"
RDEPEND="esd? ( media-sound/esound )
nas? ( media-libs/nas )"
# alsa-1 b0rks and it's not a simple fix
# alsa? ( media-libs/alsa-lib )"
DEPEND="${RDEPEND}
dev-lang/perl"
PROVIDE="virtual/mpg123"
PATCHDIR="${WORKDIR}/patches"
src_unpack() {
unpack ${A}
cd ${S}
EPATCH_SUFFIX="patch"
epatch ${PATCHDIR}
# Bug #70592; terminal line settings should only be set once; not everytime a new song starts
epatch ${FILESDIR}/${PV}-set-terminal-line-settings-once.patch
# Bug #87539; user CFLAGS are not respected on amd64
epatch ${FILESDIR}/${PN}-respectusercflags.patch
if use ppc-macos;
then
einfo "Patching for OSX build"
epatch ${FILESDIR}/${PN}-osx.diff
fi
sed -i "s:${PV}-mh4:${PVR}:" version.h
epatch "${FILESDIR}/${P}-gmake-3.81.patch"
# Bug #130577
perl -e 'my @text = <STDIN>; my $str = join "",@text; $str =~ s/\\\n//gs; print $str' < Makefile > Makefile.fixed
mv Makefile.fixed Makefile
}
src_compile() {
mkdir gentoo-bin
# The last one in $styles is the default
local styles
use nas && styles="${styles} -nas"
use oss && styles="${styles} -generic"
atype="linux"
case $ARCH in
ppc64)
use esd && styles="${styles} -ppc64-esd"
use oss && styles="${styles} -ppc64"
[[ -z "${styles}" ]] && styles="-ppc64"
;;
ppc)
if use ppc-macos; then
[ -z "${styles}" ] && styles="macos"
atype=""
else
use esd && styles="${styles} -ppc-esd"
use oss && styles="${styles} -ppc"
[ -z "${styles}" ] && styles="-ppc"
fi
;;
x86)
use esd && styles="${styles} -esd"
use esd && use 3dnow && styles="${styles} -3dnow-esd"
use oss && styles="${styles} -i486"
use oss && use mmx && styles="${styles} -mmx"
use oss && use 3dnow && styles="${styles} -3dnow"
# use alsa && styles="${styles} -alsa"
# use alsa && use 3dnow && styles="${styles} -3dnow-alsa"
[[ -z "${styles}" ]] && styles="-generic"
;;
sparc*)
use esd && styles="${styles} -sparc-esd"
styles="${styles} -sparc -generic"
;;
amd64)
use esd && styles="${styles} -x86_64-esd"
use oss && styles="${styles} -x86_64"
# use alsa && styles="${styles} -x86_64-alsa"
[[ -z "${styles}" ]] && styles="-x86_64"
;;
alpha)
use esd && styles="${styles} -alpha-esd"
use oss && styles="${styles} -alpha"
# use alsa && styles="${styles} -alpha-alsa"
[[ -z "${styles}" ]] && styles="-generic"
;;
mips|hppa|ia64)
# use alsa && styles="${styles} -mips-alsa"
[[ -z "${styles}" ]] && styles="-generic"
;;
*)
eerror "No support has been added for your architecture."
exit 1
;;
esac
for style in ${styles};
do
emake -j1 clean ${atype}${style} CFLAGS="${CFLAGS}" CC="$(tc-getCC)" || die
mv mpg123 gentoo-bin/mpg123${style}
[[ -L "gentoo-bin/mpg123" ]] && rm gentoo-bin/mpg123
ln -s mpg123${style} gentoo-bin/mpg123
done
}
src_install() {
dodir /usr
cp -R gentoo-bin ${D}/usr/bin
doman mpg123.1
dodoc BENCHMARKING BUGS CHANGES JUKEBOX README* TODO
}
|