blob: 243eb8739a2230f99a6d492b60b7a5c699abef79 (
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
|
# Copyright 1999-2010 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/media-gfx/freewrl/freewrl-1.22.8.ebuild,v 1.3 2010/07/25 19:17:49 nirbheek Exp $
EAPI="2"
inherit nsplugins eutils flag-o-matic
DESCRIPTION="VRML2 and X3D compliant browser"
SRC_URI="mirror://sourceforge/freewrl/${P}.tar.bz2"
HOMEPAGE="http://freewrl.sourceforge.net/"
LICENSE="GPL-3"
SLOT="0"
KEYWORDS="~amd64 ~x86"
IUSE="curl debug libeai +glew +motif nsplugin +sox spidermonkey static +xulrunner"
COMMONDEPEND="x11-libs/libXau
x11-libs/libXdmcp
x11-libs/libXext
x11-libs/libX11
motif? ( x11-libs/openmotif )
media-libs/mesa
glew? ( media-libs/glew )
virtual/opengl
media-libs/libpng
media-libs/jpeg
media-libs/imlib2
>=media-libs/freetype-2
curl? ( net-misc/curl )
xulrunner? ( net-libs/xulrunner )
!xulrunner? (
spidermonkey? ( dev-lang/spidermonkey )
!spidermonkey? ( || (
=www-client/firefox-3*[-xulrunner]
=www-client/firefox-2*
) )
)
nsplugin? ( || ( xulrunner? ( net-libs/xulrunner )
>=www-client/firefox-2.0 ) )"
DEPEND="${COMMONDEPEND}
>=dev-util/pkgconfig-0.22"
RDEPEND="${COMMONDEPEND}
media-fonts/ttf-bitstream-vera
media-gfx/imagemagick
app-arch/unzip
sox? ( media-sound/sox )"
pkg_setup() {
if use xulrunner && use spidermonkey; then
eerror "Please choose only one of xulrunner or spidermonkey."
die "Cannot USE both spidermonkey and xulrunner"
fi
}
src_prepare() {
# A hack to get around expat being grabbed from xulrunner
if use xulrunner && has_version ">=net-libs/xulrunner-1.9.2"; then
mkdir "${S}/src/lib/include";
cp /usr/include/expat.h "${S}/src/lib/include/";
cp /usr/include/expat_external.h "${S}/src/lib/include/";
fi
}
src_configure() {
local myconf="--with-fontsdir=/usr/share/fonts/ttf-bitstream-vera
--with-imageconvert=/usr/bin/convert
--with-unzip=/usr/bin/unzip"
if use motif; then
myconf="${myconf} --with-x --with-target=motif"
else
myconf="${myconf} --with-x --with-target=x11"
fi
if use nsplugin; then
myconf="${myconf} --with-plugindir=/usr/$(get_libdir)/${PLUGINS_DIR}"
fi
if ! use glew; then
myconf="${myconf} --without-glew"
fi
if use sox; then
myconf="${myconf} --with-soundconv=/usr/bin/sox"
fi
if use xulrunner; then
if has_version net-libs/xulrunner:1.9 ; then
if has_version ">=net-libs/xulrunner-1.9.2"; then
# more hack to get around expat being grabbed from xulrunner
myconf="${myconf} --with-expat=${S}/src/lib"
else
# fix missing library path to xulrunner-1.9 libraries
append-ldflags "-R/usr/$(get_libdir)/xulrunner-1.9/lib"
fi
fi
elif use spidermonkey; then
# disable the checks for other js libs, in case they are installed
myconf="${myconf} --disable-mozilla-js --disable-xulrunner-js --disable-firefox-js --disable-seamonkey-js"
# spidermonkey has no pkg-config, so override ./configure
JAVASCRIPT_ENGINE_CFLAGS="-I/usr/include/js -DXP_UNIX"
JAVASCRIPT_ENGINE_LIBS="-ljs"
if has_version dev-lang/spidermonkey[threadsafe] ; then
JAVASCRIPT_ENGINE_CFLAGS="${JAVASCRIPT_ENGINE_CFLAGS} -DJS_THREADSAFE $(pkg-config --cflags nspr)"
JAVASCRIPT_ENGINE_LIBS="$(pkg-config --libs nspr) ${JAVASCRIPT_ENGINE_LIBS}"
fi
export JAVASCRIPT_ENGINE_CFLAGS
export JAVASCRIPT_ENGINE_LIBS
else
# disable checks for xulrunner libs, in case they are installed
myconf="${myconf} --disable-mozilla-js --disable-xulrunner-js"
# not using xulrunner, so ./configure grabs js directly from firefox/mozilla/thunderbird/wherever
if has_version =www-client/firefox-3* ; then
# override ./configure for firefox-3 as pkg-config doesn't detect the right settings
export MOZILLA_PLUGIN_CFLAGS="-I/usr/include/mozilla-firefox/stable $(pkg-config --cflags nspr)"
export MOZILLA_PLUGIN_LIBS=" "
export JAVASCRIPT_ENGINE_CFLAGS="-DXP_UNIX -DJS_THREADSAFE -DMOZILLA_JS_UNSTABLE_INCLUDES ${MOZILLA_PLUGIN_CFLAGS}"
export JAVASCRIPT_ENGINE_LIBS="$(pkg-config --libs nspr) -L/usr/$(get_libdir)/mozilla-firefox -lmozjs"
append-ldflags "-R/usr/$(get_libdir)/mozilla-firefox"
fi
fi
econf ${myconf} \
$(use_enable curl libcurl) \
$(use_enable debug) \
$(use_enable libeai) \
$(use_enable nsplugin plugin) \
$(use_enable static) \
$(use_enable sox sound)
}
src_install() {
emake DESTDIR="${D}" install || die "emake install failed"
# remove unneeded .la files (as per Flameeyes' rant)
cd "${D}"
rm "usr/$(get_libdir)"/*.la "usr/$(get_libdir)/${PLUGINS_DIR}"/*.la
}
|