You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
144 lines
4.4 KiB
144 lines
4.4 KiB
9 years ago
|
# Copyright 1999-2015 Gentoo Foundation
|
||
12 years ago
|
# Distributed under the terms of the GNU General Public License v2
|
||
9 years ago
|
# $Id$
|
||
12 years ago
|
|
||
|
EAPI=5
|
||
|
|
||
|
inherit autotools nsplugins eutils flag-o-matic java-pkg-opt-2 multilib
|
||
|
|
||
|
DESCRIPTION="VRML97 and X3D compliant browser, library, and web-browser plugin"
|
||
|
HOMEPAGE="http://freewrl.sourceforge.net/"
|
||
|
SRC_URI="mirror://sourceforge/freewrl/${P}.1.tar.bz2"
|
||
|
|
||
|
LICENSE="GPL-3"
|
||
|
SLOT="0"
|
||
|
KEYWORDS="~amd64 ~x86"
|
||
|
IUSE="curl debug +glew java libeai motif +nsplugin osc +sox static-libs"
|
||
|
|
||
|
COMMONDEPEND="x11-libs/libXau
|
||
|
x11-libs/libXdmcp
|
||
|
x11-libs/libXext
|
||
|
x11-libs/libX11
|
||
9 years ago
|
motif? ( x11-libs/motif:0= )
|
||
12 years ago
|
!motif? ( x11-libs/libXaw )
|
||
|
media-libs/mesa
|
||
|
glew? ( media-libs/glew )
|
||
|
virtual/opengl
|
||
9 years ago
|
media-libs/libpng:0=
|
||
|
virtual/jpeg:0=
|
||
12 years ago
|
media-libs/imlib2
|
||
|
>=media-libs/freetype-2
|
||
|
media-libs/fontconfig
|
||
|
curl? ( net-misc/curl )
|
||
|
osc? ( media-libs/liblo )
|
||
11 years ago
|
dev-lang/spidermonkey:0="
|
||
12 years ago
|
DEPEND="${COMMONDEPEND}
|
||
|
virtual/pkgconfig
|
||
|
java? ( >=virtual/jdk-1.4 )
|
||
|
nsplugin? ( net-misc/npapi-sdk )"
|
||
|
RDEPEND="${COMMONDEPEND}
|
||
|
media-fonts/dejavu
|
||
|
|| ( media-gfx/imagemagick
|
||
|
media-gfx/graphicsmagick[imagemagick] )
|
||
|
app-arch/unzip
|
||
|
java? ( >=virtual/jre-1.4 )
|
||
|
sox? ( media-sound/sox )"
|
||
|
|
||
|
src_prepare() {
|
||
|
epatch "${FILESDIR}"/${P}-fontconfig-match.patch
|
||
11 years ago
|
if has_version ">=dev-lang/spidermonkey-1.8.7:0" ; then
|
||
12 years ago
|
epatch "${FILESDIR}"/${P}-mozjs187-config.patch
|
||
|
fi
|
||
11 years ago
|
epatch "${FILESDIR}"/${P}-desktop.patch
|
||
11 years ago
|
epatch "${FILESDIR}"/${P}-java-fix.patch
|
||
11 years ago
|
epatch "${FILESDIR}"/${PN}-2.3.3-ld.gold.patch
|
||
11 years ago
|
eautoreconf
|
||
12 years ago
|
}
|
||
|
|
||
|
src_configure() {
|
||
|
local myconf="--enable-fontconfig
|
||
|
--without-expat
|
||
|
--with-x
|
||
|
--with-imageconvert=/usr/bin/convert
|
||
|
--with-unzip=/usr/bin/unzip"
|
||
|
if use motif; then
|
||
|
myconf+=" --with-target=motif --with-statusbar=standard"
|
||
|
else
|
||
|
myconf+=" --with-target=x11 --with-statusbar=hud"
|
||
|
fi
|
||
|
if use nsplugin; then
|
||
|
myconf+=" --with-plugindir=/usr/$(get_libdir)/${PLUGINS_DIR}"
|
||
|
myconf+=" --disable-mozilla-plugin --disable-xulrunner-plugin"
|
||
|
fi
|
||
|
if use sox; then
|
||
|
myconf+=" --with-soundconv=/usr/bin/sox"
|
||
|
fi
|
||
|
# disable the checks for other js libs, in case they are installed
|
||
11 years ago
|
if has_version ">=dev-lang/spidermonkey-1.8.5:0" ; then
|
||
12 years ago
|
# spidermonkey-1.8.5 provides a .pc to pkg-config, it should be findable via mozjs185
|
||
|
for x in mozilla-js xulrunner-js firefox-js firefox2-js seamonkey-js; do
|
||
|
myconf+=" --disable-${x}"
|
||
|
done
|
||
|
else
|
||
|
for x in mozjs187 mozjs185 mozilla-js xulrunner-js firefox-js seamonkey-js; do
|
||
|
myconf+=" --disable-${x}"
|
||
|
done
|
||
|
# spidermonkey pre-1.8.5 has no pkg-config, so override ./configure
|
||
|
JAVASCRIPT_ENGINE_CFLAGS="-I/usr/include/js -DXP_UNIX"
|
||
11 years ago
|
if has_version ">=dev-lang/spidermonkey-1.8:0" ; then
|
||
12 years ago
|
# spidermonkey-1.8 changed the name of the lib
|
||
|
JAVASCRIPT_ENGINE_LIBS="-lmozjs"
|
||
|
else
|
||
|
JAVASCRIPT_ENGINE_LIBS="-ljs"
|
||
|
fi
|
||
11 years ago
|
if has_version "dev-lang/spidermonkey:0[threadsafe]" ; then
|
||
12 years ago
|
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
|
||
|
fi
|
||
|
econf ${myconf} \
|
||
|
$(use_enable curl libcurl) \
|
||
|
$(use_with glew) \
|
||
|
$(use_enable debug) $(use_enable debug thread_colorized) \
|
||
|
$(use_enable libeai) \
|
||
|
$(use_enable java) \
|
||
|
$(use_enable nsplugin plugin) \
|
||
|
$(use_enable osc) \
|
||
|
$(use_enable static-libs static) \
|
||
|
$(use_enable sox sound)
|
||
|
}
|
||
|
|
||
|
src_install() {
|
||
|
emake DESTDIR="${D}" install
|
||
|
|
||
|
if use java; then
|
||
|
insinto /usr/share/${PN}/lib
|
||
|
doins src/java/java.policy
|
||
|
java-pkg_regjar src/java/vrml.jar
|
||
|
# install vrml.jar as a JRE extension
|
||
|
dodir /usr/java/packages/lib/ext
|
||
|
dosym /usr/share/${PN}/lib/vrml.jar /usr/java/packages/lib/ext/vrml.jar
|
||
|
if ! has_version "media-gfx/freewrl[java]" ; then
|
||
|
elog "Because vrml.jar requires access to sockets, you will need to incorporate the"
|
||
|
elog "contents of /usr/share/${PN}/lib/java.policy into your system or user's default"
|
||
|
elog "java policy:"
|
||
|
elog " cat /usr/share/${PN}/lib/java.policy >>~/.java.policy"
|
||
|
fi
|
||
|
fi
|
||
|
|
||
|
# remove unneeded .la files (as per Flameeyes' rant)
|
||
|
cd "${D}"
|
||
|
rm "usr/$(get_libdir)"/*.la "usr/$(get_libdir)/${PLUGINS_DIR}"/*.la
|
||
|
}
|
||
|
|
||
|
pkg_postinst() {
|
||
|
if [[ -z ${REPLACING_VERSIONS} ]]; then
|
||
|
elog "By default, FreeWRL expects to find the 'firefox' binary in your include"
|
||
|
elog "path. If you do not have firefox installed or you wish to use a different"
|
||
|
elog "web browser to open links that are within VRML / X3D files, please be sure to"
|
||
|
elog "specify the command via your BROWSER environment variable."
|
||
|
fi
|
||
|
}
|