blob: 3c87fbae01f8a6aee2528d4f5fbd8733eeb9fcbb (
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
|
# Copyright 1999-2007 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/media-libs/libmpeg3/libmpeg3-1.5.2-r3.ebuild,v 1.14 2007/02/17 00:47:42 flameeyes Exp $
inherit flag-o-matic eutils toolchain-funcs
PATCHLEVEL="3"
DESCRIPTION="An mpeg library for linux"
HOMEPAGE="http://heroinewarrior.com/libmpeg3.php3"
SRC_URI="mirror://sourceforge/heroines/${P}-src.tar.bz2
mirror://gentoo/${PN}-patches-${PATCHLEVEL}.tar.bz2
mirror://gentoo/${P}-textrel-fix.patch.bz2"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="alpha amd64 arm hppa ia64 mips ppc ppc64 sh sparc x86"
IUSE="mmx"
RDEPEND="sys-libs/zlib
media-libs/jpeg
media-libs/a52dec"
DEPEND="${RDEPEND}
mmx? ( dev-lang/nasm )"
pkg_setup() {
if use x86; then
if is-flagq -O3 || is-flagq -finline-functions; then
# with flag -fforce-addr we have too less registers for mmx-asm-code on x86 (Bug #141323)
is-flagq -fforce-addr && einfo "Removing flag -fforce-addr to get enough registers for mmx-code."
filter-flags -fforce-addr
fi
fi
}
src_unpack() {
unpack ${A}
cd "${S}"
if [[ $(gcc-version) == "3.3" ]]; then
eerror "You're using an old version of GCC, but this package is"
eerror "designed to work only with GCC 3.4 or later."
eerror "Please upgrade your GCC or change the selected profile"
eerror "and then merge this again."
die "Package won't build with GCC 3.3."
fi
# The Makefile is patched to install the header files as well.
# This patch was generated using the info in the src.rpm that
# SourceForge provides for this package.
[ "`gcc-version`" == "3.4" -o "`gcc-major-version`" -ge 4 ] || \
EPATCH_EXCLUDE="${EPATCH_EXCLUDE} 08_all_gcc34.patch"
[ "`gcc-major-version`" -ge 4 ] || \
EPATCH_EXCLUDE="${EPATCH_EXCLUDE} 09_all_gcc4.patch"
EPATCH_SUFFIX="patch" epatch ${WORKDIR}/${PV}
sed -i -e "/LIBS = /s:$: -la52:" Makefile
epatch "${FILESDIR}/${P}-a52.patch"
epatch "${FILESDIR}/${P}-gnustack.patch"
epatch "${DISTDIR}/${P}-textrel-fix.patch.bz2"
epatch "${FILESDIR}/${P}-soname.patch"
if ! use mmx; then
sed -i -e 's:^NASM =.*:NASM =:' \
-e 's|^HAVE_NASM :=.*|HAVE_NASM=n|' \
-e 's|USE_MMX = 1|USE_MMX = 0|' \
Makefile
fi
}
src_compile() {
local obj_dir=$(uname --machine)
mkdir $obj_dir
rm -f ${obj_dir}/*.o &> /dev/null
emake CC="$(tc-getCC)" || die "make failed"
}
src_install() {
# This patch patches the .h files that get installed into /usr/include
# to show the correct include syntax '<>' instead of '""' This patch
# was also generated using info from SF's src.rpm
epatch ${WORKDIR}/${PV}/gentoo-p2.patch
make DESTDIR="${D}/usr" LIBDIR="$(get_libdir)" install || die
dohtml -r docs
}
|