blob: 469ebbb3ade8fd1fbe715b97660e31094e4eb38c (
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
|
# Copyright 1999-2004 Gentoo Technologies, Inc.
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/media-sound/mpg123/mpg123-0.59s-r3.ebuild,v 1.7 2004/06/01 18:24:05 mr_bones_ Exp $
inherit eutils
IUSE="mmx 3dnow esd nas oss"
DESCRIPTION="Real Time mp3 player"
HOMEPAGE="http://www.mpg123.de/"
SRC_URI="http://www.mpg123.de/mpg123/${PN}-pre${PV}.tar.gz"
LICENSE="as-is"
SLOT="0"
KEYWORDS="x86 ~ia64 ~amd64 ~ppc ~sparc ~alpha ~hppa ~mips"
RDEPEND="virtual/glibc
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}
>=sys-apps/sed-4"
PROVIDE="virtual/mpg123"
S=${WORKDIR}/${PN}
src_unpack() {
unpack ${A} && cd ${S} || die "unpack failed"
# Apply security fixes
epatch ${FILESDIR}/${P}-security.diff
epatch ${FILESDIR}/${P}-heapfix.diff
# Add linux-generic target
epatch ${FILESDIR}/${PV}-generic.patch
# Always apply this patch, even though it's particularly for
# amd64. It's good to understand the distinction between int and
# long: ANSI says that int should be 32-bits, long should be the
# native size of the CPU (usually the same as a pointer).
epatch ${FILESDIR}/${P}-amd64.patch
# Fix Makefile missing quotes
epatch ${FILESDIR}/${P}-Makefile.patch
# Don't force gcc since icc/ccc might be possible
sed -i -e "s|CC=gcc||" Makefile
# Fix a glitch in the x86 related section of the Makefile
sed -i -e "s:-m486::g" Makefile
# Fix a glitch in the ppc-related section of the Makefile
sed -i -e "s:-mcpu=ppc::" Makefile
# Make sure we use our CFLAGS
sed -i -e "s:-O2::g" 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"
case $ARCH in
ppc*)
use esd && styles="${styles} -ppc-esd"
use oss && styles="${styles} -ppc"
[ -z "${styles}" ] && styles="-ppc"
;;
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"
;;
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)
# 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
make clean linux${style} CFLAGS="${CFLAGS}" || 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 -dR gentoo-bin ${D}/usr/bin
doman mpg123.1
dodoc BENCHMARKING BUGS CHANGES COPYING JUKEBOX README* TODO
}
|