diff options
author | Robin H. Johnson <robbat2@gentoo.org> | 2015-08-08 13:49:04 -0700 |
---|---|---|
committer | Robin H. Johnson <robbat2@gentoo.org> | 2015-08-08 17:38:18 -0700 |
commit | 56bd759df1d0c750a065b8c845e93d5dfa6b549d (patch) | |
tree | 3f91093cdb475e565ae857f1c5a7fd339e2d781e /media-gfx/freewrl | |
download | gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.gz gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.bz2 gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.zip |
proj/gentoo: Initial commit
This commit represents a new era for Gentoo:
Storing the gentoo-x86 tree in Git, as converted from CVS.
This commit is the start of the NEW history.
Any historical data is intended to be grafted onto this point.
Creation process:
1. Take final CVS checkout snapshot
2. Remove ALL ChangeLog* files
3. Transform all Manifests to thin
4. Remove empty Manifests
5. Convert all stale $Header$/$Id$ CVS keywords to non-expanded Git $Id$
5.1. Do not touch files with -kb/-ko keyword flags.
Signed-off-by: Robin H. Johnson <robbat2@gentoo.org>
X-Thanks: Alec Warner <antarus@gentoo.org> - did the GSoC 2006 migration tests
X-Thanks: Robin H. Johnson <robbat2@gentoo.org> - infra guy, herding this project
X-Thanks: Nguyen Thai Ngoc Duy <pclouds@gentoo.org> - Former Gentoo developer, wrote Git features for the migration
X-Thanks: Brian Harring <ferringb@gentoo.org> - wrote much python to improve cvs2svn
X-Thanks: Rich Freeman <rich0@gentoo.org> - validation scripts
X-Thanks: Patrick Lauer <patrick@gentoo.org> - Gentoo dev, running new 2014 work in migration
X-Thanks: Michał Górny <mgorny@gentoo.org> - scripts, QA, nagging
X-Thanks: All of other Gentoo developers - many ideas and lots of paint on the bikeshed
Diffstat (limited to 'media-gfx/freewrl')
-rw-r--r-- | media-gfx/freewrl/Manifest | 2 | ||||
-rw-r--r-- | media-gfx/freewrl/files/freewrl-1.22.13-desktop.patch | 11 | ||||
-rw-r--r-- | media-gfx/freewrl/files/freewrl-1.22.13-fontconfig-match.patch | 19 | ||||
-rw-r--r-- | media-gfx/freewrl/files/freewrl-1.22.13-java-fix.patch | 54 | ||||
-rw-r--r-- | media-gfx/freewrl/files/freewrl-1.22.13-mozjs187-config.patch | 10 | ||||
-rw-r--r-- | media-gfx/freewrl/files/freewrl-2.3.3-ld.gold.patch | 35 | ||||
-rw-r--r-- | media-gfx/freewrl/freewrl-1.22.13-r3.ebuild | 143 | ||||
-rw-r--r-- | media-gfx/freewrl/freewrl-2.3.3.ebuild | 140 | ||||
-rw-r--r-- | media-gfx/freewrl/freewrl-9999.ebuild | 144 | ||||
-rw-r--r-- | media-gfx/freewrl/metadata.xml | 28 |
10 files changed, 586 insertions, 0 deletions
diff --git a/media-gfx/freewrl/Manifest b/media-gfx/freewrl/Manifest new file mode 100644 index 000000000000..80dab2c5b08c --- /dev/null +++ b/media-gfx/freewrl/Manifest @@ -0,0 +1,2 @@ +DIST freewrl-1.22.13.1.tar.bz2 1830305 SHA256 29069d63604dbbfde0f684f342f34e9d0eb216a026f83317a00fbdd31ece17e8 SHA512 6e751835a256ce08d4099e5301c0702e28e5cae2e77d8a51ab38f6f0c08680f22a9ef25ef9d2bb860680fc8c1fc22cfebf14cfb14b50ee514b5ef76e71ab1192 WHIRLPOOL 58d301f4f3c1d145b041bb626c8af18954d9cd3da88f348d2341928c2ff050b15e077855b1ef5a2fe18b2218b8d2f8a75e229ca5bf5d683c0c98e4ed132f71cd +DIST freewrl-2.3.3.1.tar.gz 1731651 SHA256 71ed11f5f3b4b6a1d2fc740e8e3ed62a83b484c9695968fac5e30db14dbb6fef SHA512 e205e8d11a3650ddf4f7dd089bdca36fc1879424c88392229ca8c0d532ebc4662f4f2e3bc491a0a1d6300e78c55cebbb57eeef2145a8c96c727c35dfb2a7d00a WHIRLPOOL d61f65b9f0db94f73760d6b1800be5f77f9898e2305ec93cc43aa8a8631e5d002602a1b79bbec91d30a040479ae01530cb470cb411d803ff8f04c3792e35e545 diff --git a/media-gfx/freewrl/files/freewrl-1.22.13-desktop.patch b/media-gfx/freewrl/files/freewrl-1.22.13-desktop.patch new file mode 100644 index 000000000000..6d620b7ab94b --- /dev/null +++ b/media-gfx/freewrl/files/freewrl-1.22.13-desktop.patch @@ -0,0 +1,11 @@ +--- a/freewrl-1.22.13/data/freewrl.desktop 2009-06-08 06:26:21.000000000 -0400 ++++ b/freewrl-1.22.13/data/freewrl.desktop 2013-12-23 10:45:54.916307951 -0500 +@@ -3,7 +3,7 @@ + Name=FreeWRL + Comment=View X3D and VRML files + Exec=/usr/bin/freewrl +-Icon=freewrl.png ++Icon=freewrl + Terminal=false + Type=Application + Categories=Graphics;3DGraphics;Viewer; diff --git a/media-gfx/freewrl/files/freewrl-1.22.13-fontconfig-match.patch b/media-gfx/freewrl/files/freewrl-1.22.13-fontconfig-match.patch new file mode 100644 index 000000000000..36b844ea8b62 --- /dev/null +++ b/media-gfx/freewrl/files/freewrl-1.22.13-fontconfig-match.patch @@ -0,0 +1,19 @@ +--- src/lib/scenegraph/Component_Text.c 15 Aug 2012 13:31:45 -0000 1.56 ++++ src/lib/scenegraph/Component_Text.c 29 Aug 2012 14:18:43 -0000 1.57 +@@ -370,6 +370,7 @@ + FcPattern *FW_fp=NULL; + FcPattern *FW_fm=NULL; + FcChar8 *FW_file=NULL; ++ FcResult fcjunkresult; + #else + + if (!p->font_directory) { +@@ -487,7 +488,7 @@ + #ifdef HAVE_FONTCONFIG + FcConfigSubstitute(0,FW_fp,FcMatchPattern); + FcDefaultSubstitute(FW_fp); +- if (!(FW_fm = FcFontMatch(0,FW_fp,0))) { ++ if (!(FW_fm = FcFontMatch(0,FW_fp,&fcjunkresult))) { + /* do whatever is done when no match found */ + printf ("could not find font for id %x\n",num); + } else { diff --git a/media-gfx/freewrl/files/freewrl-1.22.13-java-fix.patch b/media-gfx/freewrl/files/freewrl-1.22.13-java-fix.patch new file mode 100644 index 000000000000..882062cb7e10 --- /dev/null +++ b/media-gfx/freewrl/files/freewrl-1.22.13-java-fix.patch @@ -0,0 +1,54 @@ +--- a/src/java/Makefile.sources ++++ b/src/java/Makefile.sources +@@ -1,4 +1,4 @@ +-dist_noinst_JAVA = \ ++noinst_JAVA = \ + org/web3d/x3d/sai/Browser.java \ + org/web3d/x3d/sai/BrowserEvent.java \ + org/web3d/x3d/sai/BrowserFactoryImpl.java \ +@@ -309,6 +309,7 @@ noinst_JAVA = \ + vrml/InvalidFieldException.java \ + vrml/InvalidRouteException.java \ + vrml/InvalidVRMLSyntaxException.java \ ++ vrml/InvalidX3DSyntaxException.java \ + vrml/MField.java \ + vrml/field/ConstMFColor.java \ + vrml/field/ConstMFFloat.java \ +--- /dev/null ++++ b/src/java/vrml/InvalidX3DSyntaxException.java +@@ -0,0 +1,6 @@ ++package vrml; ++ ++public class InvalidX3DSyntaxException extends Exception { ++ public InvalidX3DSyntaxException() { super(); } ++ public InvalidX3DSyntaxException(String s) { super(s); } ++} +--- a/src/java/Makefile.am 2014-03-10 10:37:09.000000000 -0400 ++++ b/src/java/Makefile.am 2014-03-12 12:29:42.000000000 -0400 +@@ -1,5 +1,10 @@ + # Java Classes for EAI/SAI/etc. + ++# NOTE - automake-1.11.6 changed how class*.stamp is generated, now need ++# to use noinst_JAVA and EXTRA_DIST instead of dist_noinst_JAVA to ++# keep behaviour consistent and compatible with both automake-1.11.6 and ++# older automake ++ + # Get global variables for Makefile defined by toplevel Makefile.globals + include $(top_srcdir)/Makefile.globals + +@@ -9,11 +14,12 @@ + jarfile = vrml.jar + jardir = $(JAVA_DIR) + +-$(jarfile): $(dist_noinst_JAVA) classdist_noinst.stamp +- $(JAR) cmf $(JAVAROOT)/manifest.extras $@ -C $(JAVAROOT) $$(echo $(dist_noinst_JAVA:.java=.class)) ++$(jarfile): $(noinst_JAVA) manifest.extras classnoinst.stamp ++ $(JAR) cmf $(JAVAROOT)/manifest.extras $@ -C $(JAVAROOT) $$(echo $(noinst_JAVA:.java=.class)) + + jar_DATA = $(jarfile) + +-CLEANFILES = $(jarfile) $$(echo $(dist_noinst_JAVA:.java=.class)) ++CLEANFILES = $(jarfile) $$(echo $(noinst_JAVA:.java=.class)) ++EXTRA_DIST = $(noinst_JAVA) java.policy manifest.extras + + include Makefile.sources diff --git a/media-gfx/freewrl/files/freewrl-1.22.13-mozjs187-config.patch b/media-gfx/freewrl/files/freewrl-1.22.13-mozjs187-config.patch new file mode 100644 index 000000000000..645a2315c161 --- /dev/null +++ b/media-gfx/freewrl/files/freewrl-1.22.13-mozjs187-config.patch @@ -0,0 +1,10 @@ +--- a/configure.ac 2012-06-13 13:17:43.000000000 -0400 ++++ b/configure.ac 2012-06-18 15:34:59.000000000 -0400 +@@ -192,6 +192,7 @@ + AC_MY_CHECK_MODULE(JAVASCRIPT_ENGINE,[spidermonkey],[>=],[1.7.0]) + ;; + *) ++ AC_MY_CHECK_MODULE(JAVASCRIPT_ENGINE,[mozjs187]) + AC_MY_CHECK_MODULE(JAVASCRIPT_ENGINE,[mozjs185]) + AC_MY_CHECK_MODULE(JAVASCRIPT_ENGINE,[mozilla-js],[>=],[1.9]) + AC_MY_CHECK_MODULE(JAVASCRIPT_ENGINE,[xulrunner-js],[>=],[1.8]) diff --git a/media-gfx/freewrl/files/freewrl-2.3.3-ld.gold.patch b/media-gfx/freewrl/files/freewrl-2.3.3-ld.gold.patch new file mode 100644 index 000000000000..6660f175b502 --- /dev/null +++ b/media-gfx/freewrl/files/freewrl-2.3.3-ld.gold.patch @@ -0,0 +1,35 @@ +commit 57d2d3b900c7d57e167fb7c90b36ca8c9c80b8bd +Author: Ian Stakenvicius <axs@gentoo.org> +Date: Mon Apr 28 10:53:57 2014 -0400 + + autotools: fixed underlinking issue with libm + + Signed-off-by: Ian Stakenvicius <axs@gentoo.org> + +diff --git a/freex3d/configure.ac b/freex3d/configure.ac +index 49db07c..48b09c8 100644 +--- a/freex3d/configure.ac ++++ b/freex3d/configure.ac +@@ -73,6 +73,8 @@ AC_PROG_GCC_TRADITIONAL + dnl AC_FUNC_MALLOC + AC_CHECK_FUNCS([strchr strrchr strdup strndup strerror getopt getopt_long getopt_long_only malloc calloc realloc usleep gettimeofday]) + ++# Check for math ++AC_CHECK_LIBM + + # ==================================================== + # FreeWRL specific configuration: target system +diff --git a/freex3d/src/lib/Makefile.am b/freex3d/src/lib/Makefile.am +index ae7fb05..1b1af8a 100644 +--- a/freex3d/src/lib/Makefile.am ++++ b/freex3d/src/lib/Makefile.am +@@ -40,7 +40,8 @@ EXTERNAL_LIBS = \ + $(PNG_LIBS) \ + $(LIBCURL_LIBS) \ + $(IMLIB2_LIBS) \ +- $(LIBLO_LIBS) ++ $(LIBLO_LIBS) \ ++ $(LIBM) + + + # X11 flags specific to x11 target (default on Linux -- optional on Mac) diff --git a/media-gfx/freewrl/freewrl-1.22.13-r3.ebuild b/media-gfx/freewrl/freewrl-1.22.13-r3.ebuild new file mode 100644 index 000000000000..aaf371c7e816 --- /dev/null +++ b/media-gfx/freewrl/freewrl-1.22.13-r3.ebuild @@ -0,0 +1,143 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +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 + motif? ( x11-libs/motif ) + !motif? ( x11-libs/libXaw ) + media-libs/mesa + glew? ( media-libs/glew ) + virtual/opengl + media-libs/libpng + virtual/jpeg + media-libs/imlib2 + >=media-libs/freetype-2 + media-libs/fontconfig + curl? ( net-misc/curl ) + osc? ( media-libs/liblo ) + dev-lang/spidermonkey:0=" +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 + if has_version ">=dev-lang/spidermonkey-1.8.7:0" ; then + epatch "${FILESDIR}"/${P}-mozjs187-config.patch + fi + epatch "${FILESDIR}"/${P}-desktop.patch + epatch "${FILESDIR}"/${P}-java-fix.patch + epatch "${FILESDIR}"/${PN}-2.3.3-ld.gold.patch + eautoreconf +} + +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 + if has_version ">=dev-lang/spidermonkey-1.8.5:0" ; then + # 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" + if has_version ">=dev-lang/spidermonkey-1.8:0" ; then + # spidermonkey-1.8 changed the name of the lib + JAVASCRIPT_ENGINE_LIBS="-lmozjs" + else + JAVASCRIPT_ENGINE_LIBS="-ljs" + fi + if has_version "dev-lang/spidermonkey:0[threadsafe]" ; then + 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 +} diff --git a/media-gfx/freewrl/freewrl-2.3.3.ebuild b/media-gfx/freewrl/freewrl-2.3.3.ebuild new file mode 100644 index 000000000000..05dfd309df18 --- /dev/null +++ b/media-gfx/freewrl/freewrl-2.3.3.ebuild @@ -0,0 +1,140 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 + +inherit autotools nsplugins eutils flag-o-matic java-pkg-opt-2 multilib + +if [[ ${PV} == "9999" ]]; then + inherit git-r3 + EGIT_REPO_URI="git://git.code.sf.net/p/freewrl/git" + S="${WORKDIR}/${P}/freex3d" + SRC_URI= + KEYWORDS= +else + SRC_URI="mirror://sourceforge/freewrl/${P}.1.tar.gz" + KEYWORDS="~amd64 ~x86" +fi + +DESCRIPTION="VRML97 and X3D compliant browser, library, and web-browser plugin" +HOMEPAGE="http://freewrl.sourceforge.net/" +LICENSE="GPL-3" +SLOT="0" +IUSE="curl debug java libeai motif +nsplugin opencl osc +sox static-libs" + +COMMONDEPEND="x11-libs/libXau + x11-libs/libXdmcp + x11-libs/libXext + x11-libs/libX11 + motif? ( x11-libs/motif ) + !motif? ( x11-libs/libXaw ) + media-libs/mesa + virtual/opengl + media-libs/libpng + virtual/jpeg + media-libs/imlib2 + >=media-libs/freetype-2 + media-libs/fontconfig + curl? ( net-misc/curl ) + osc? ( media-libs/liblo ) + opencl? ( virtual/opencl ) + dev-lang/spidermonkey:0=" +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}-ld.gold.patch + epatch_user + eautoreconf +} + +src_configure() { + # list of js libs without .pc support, to disable ./configure auto-checking + local spidermonkeys=( mozilla-js xulrunner-js firefox-js firefox2-js seamonkey-js ) + # list of .pc supported spidermonkeys, to disable ./configure auto-checking + local spidermonkeys_pc=( mozjs187 mozjs185 ) + + local myconf="--enable-fontconfig + --without-expat + --with-x + --with-imageconvert=/usr/bin/convert + --with-unzip=/usr/bin/unzip + ${spidermonkeys[@]/#/ --disable-}" + + if has_version "<dev-lang/spidermonkey-1.8.5" ; then + # spidermonkey pre-1.8.5 has no pkg-config, so override ./configure + myconf+="${spidermonkeys_pc[@]/#/ --disable-}" + JAVASCRIPT_ENGINE_CFLAGS="-I/usr/include/js -DXP_UNIX" + if has_version ">=dev-lang/spidermonkey-1.8:0" ; then + # spidermonkey-1.8 changed the name of the lib + JAVASCRIPT_ENGINE_LIBS="-lmozjs" + else + JAVASCRIPT_ENGINE_LIBS="-ljs" + fi + if has_version "dev-lang/spidermonkey:0[threadsafe]" ; then + 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 + if use nsplugin; then + myconf+=" --with-plugindir=/usr/$(get_libdir)/${PLUGINS_DIR}" + myconf+=" --disable-mozilla-plugin --disable-xulrunner-plugin" + fi + econf ${myconf} \ + $(use_enable curl libcurl) \ + $(use_with opencl OpenCL) \ + $(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) \ + $(usex sox "--with-soundconv=/usr/bin/sox") \ + $(usex motif "--with-target=motif" "--with-target=x11") \ + $(usex motif "--with-statusbar=standard" "--with-statusbar=hud") +} + +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 +} diff --git a/media-gfx/freewrl/freewrl-9999.ebuild b/media-gfx/freewrl/freewrl-9999.ebuild new file mode 100644 index 000000000000..f1c85f6628f8 --- /dev/null +++ b/media-gfx/freewrl/freewrl-9999.ebuild @@ -0,0 +1,144 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 + +inherit autotools nsplugins eutils flag-o-matic java-pkg-opt-2 multilib + +if [[ ${PV} == "9999" ]]; then + inherit git-r3 + EGIT_REPO_URI="git://git.code.sf.net/p/freewrl/git" + S="${WORKDIR}/${P}/freex3d" + SRC_URI= + KEYWORDS= +else + SRC_URI="mirror://sourceforge/freewrl/${P}.tar.bz2" + KEYWORDS="~amd64 ~x86" +fi + +DESCRIPTION="VRML97 and X3D compliant browser, library, and web-browser plugin" +HOMEPAGE="http://freewrl.sourceforge.net/" +LICENSE="GPL-3" +SLOT="0" +IUSE="curl debug java libeai motif +nsplugin opencl osc +sox static-libs" + +COMMONDEPEND="x11-libs/libXau + x11-libs/libXdmcp + x11-libs/libXext + x11-libs/libX11 + motif? ( x11-libs/motif ) + !motif? ( x11-libs/libXaw ) + media-libs/mesa + virtual/opengl + media-libs/libpng + virtual/jpeg + media-libs/imlib2 + >=media-libs/freetype-2 + media-libs/fontconfig + curl? ( net-misc/curl ) + osc? ( media-libs/liblo ) + opencl? ( virtual/opencl ) + dev-lang/spidermonkey:0=" +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() { + if [[ ${PV} != "9999" ]]; then + epatch "${FILESDIR}"/${P}-fontconfig-match.patch + epatch "${FILESDIR}"/${P}-mozjs187-config.patch + fi + epatch_user + eautoreconf +} + +src_configure() { + # list of js libs without .pc support, to disable ./configure auto-checking + local spidermonkeys=( mozilla-js xulrunner-js firefox-js firefox2-js seamonkey-js ) + # list of .pc supported spidermonkeys, to disable ./configure auto-checking + local spidermonkeys_pc=( mozjs187 mozjs185 ) + + local myconf="--enable-fontconfig + --without-expat + --with-x + --with-imageconvert=/usr/bin/convert + --with-unzip=/usr/bin/unzip + --disable-mozjs-17.0 + ${spidermonkeys[@]/#/ --disable-}" + + if has_version "<dev-lang/spidermonkey-1.8.5" ; then + # spidermonkey pre-1.8.5 has no pkg-config, so override ./configure + myconf+="${spidermonkeys_pc[@]/#/ --disable-}" + JAVASCRIPT_ENGINE_CFLAGS="-I/usr/include/js -DXP_UNIX" + if has_version ">=dev-lang/spidermonkey-1.8:0" ; then + # spidermonkey-1.8 changed the name of the lib + JAVASCRIPT_ENGINE_LIBS="-lmozjs" + else + JAVASCRIPT_ENGINE_LIBS="-ljs" + fi + if has_version "dev-lang/spidermonkey:0[threadsafe]" ; then + 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 + if use nsplugin; then + myconf+=" --with-plugindir=/usr/$(get_libdir)/${PLUGINS_DIR}" + myconf+=" --disable-mozilla-plugin --disable-xulrunner-plugin" + fi + econf ${myconf} \ + $(use_enable curl libcurl) \ + $(use_with opencl OpenCL) \ + $(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) \ + $(usex sox "--with-soundconv=/usr/bin/sox") \ + $(usex motif "--with-target=motif" "--with-target=x11") \ + $(usex motif "--with-statusbar=standard" "--with-statusbar=hud") +} + +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 +} diff --git a/media-gfx/freewrl/metadata.xml b/media-gfx/freewrl/metadata.xml new file mode 100644 index 000000000000..548b124ab6bb --- /dev/null +++ b/media-gfx/freewrl/metadata.xml @@ -0,0 +1,28 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer> + <email>axs@gentoo.org</email> + <name>Ian Stakenvicius</name> + </maintainer> + <longdescription> +FreeWRL is a VRML97 (VRML-2.0) and X3D interactive viewer, providing both a traditional Xorg application +and a nsbrowser plugin for use with many available web browsers. The package depends heavily on OpenGL +support for rendering. When developing your 3D world or model, you can program with GLSL Shaders using the +X3D Shaders Component, put your model exactly where you want them with the Geospatial Component, or just +throw triangles to the screen as Extrusions, IndexedFaceSets, TriangleSets, Circle2D, Disk2D, Spheres, Boxes, +Cubes; the list goes on and on. With royalty free open standards, your models will continue to render, year after year. +<pkg>=media-gfx/freewrl-1.22*</pkg> uses traditional OpenGL calls, while <pkg>>=media-gfx/freewrl-2</pkg> uses +"shaders" and requires hardware capable of at least OpenGL-2.0 or OpenGL-ES. +</longdescription> + <use> + <flag name="glew">Enable glew extensions</flag> + <flag name="libeai">Build EAI C library</flag> + <flag name="opencl">Enable OpenCL support</flag> + <flag name="osc">Allows for OSC-based control and communication between multiple freewrl instances</flag> + <flag name="java">Build and install java EAI/SAI support library</flag> + </use> + <upstream> + <remote-id type="sourceforge">freewrl</remote-id> + </upstream> +</pkgmetadata> |