summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobin H. Johnson <robbat2@gentoo.org>2015-08-08 13:49:04 -0700
committerRobin H. Johnson <robbat2@gentoo.org>2015-08-08 17:38:18 -0700
commit56bd759df1d0c750a065b8c845e93d5dfa6b549d (patch)
tree3f91093cdb475e565ae857f1c5a7fd339e2d781e /dev-games/crystalspace
downloadgentoo-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 'dev-games/crystalspace')
-rw-r--r--dev-games/crystalspace/Manifest1
-rw-r--r--dev-games/crystalspace/crystalspace-2.0.ebuild129
-rw-r--r--dev-games/crystalspace/files/crystalspace-2.0-gcc47.patch110
-rw-r--r--dev-games/crystalspace/metadata.xml30
4 files changed, 270 insertions, 0 deletions
diff --git a/dev-games/crystalspace/Manifest b/dev-games/crystalspace/Manifest
new file mode 100644
index 000000000000..290cc0805692
--- /dev/null
+++ b/dev-games/crystalspace/Manifest
@@ -0,0 +1 @@
+DIST crystalspace-src-2.0.tar.bz2 185925180 SHA256 f1cda74fd998e44088746803209b1ea6625e80e3d4fb72023d8bed6b677b7b6a SHA512 f09d40669268e26542a2854560ac5033e7f89d0bd5def870e5062e08611c36a0875666abe0c705bb5f9f37dafa619f33f900e358d5fe255746a86127a3899f97 WHIRLPOOL a1705cb88b64eb0e8f6a146c2a75baab01aa598d07b8d36ab0671a47d4092b5c9b53c13f46bb1e56663b2b228c4b95cee3a355554c1de92c3d931187e97c4ca1
diff --git a/dev-games/crystalspace/crystalspace-2.0.ebuild b/dev-games/crystalspace/crystalspace-2.0.ebuild
new file mode 100644
index 000000000000..657cd1b907c9
--- /dev/null
+++ b/dev-games/crystalspace/crystalspace-2.0.ebuild
@@ -0,0 +1,129 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit eutils flag-o-matic multilib java-pkg-opt-2 autotools wxwidgets versionator multiprocessing
+
+MY_P=${PN}-src-${PV}
+PATH_P=${PN}-$(get_version_component_range 1-2)
+
+DESCRIPTION="Portable 3D Game Development Kit written in C++"
+HOMEPAGE="http://crystal.sourceforge.net/"
+SRC_URI="mirror://sourceforge/crystal/${MY_P}.tar.bz2"
+
+LICENSE="LGPL-2.1"
+SLOT="0"
+KEYWORDS="amd64 x86"
+IUSE="3ds alsa bullet cal3d cegui cg doc java jpeg mng ode png speex truetype vorbis wxwidgets"
+
+COMMON_DEP="virtual/opengl
+ media-libs/openal
+ x11-libs/libXt
+ x11-libs/libXxf86vm
+ sys-libs/zlib
+ cg? ( media-gfx/nvidia-cg-toolkit )
+ ode? ( <dev-games/ode-0.12 )
+ cal3d? ( >=media-libs/cal3d-0.11 )
+ jpeg? ( virtual/jpeg )
+ bullet? ( sci-physics/bullet )
+ vorbis? ( media-libs/libvorbis )
+ speex? ( media-libs/libogg
+ media-libs/speex )
+ truetype? ( >=media-libs/freetype-2.1 )
+ alsa? ( media-libs/alsa-lib )
+ mng? ( media-libs/libmng )
+ png? ( media-libs/libpng:0 )
+ wxwidgets? ( x11-libs/wxGTK:2.8[X,opengl] )
+ cegui? ( >=dev-games/cegui-0.5.0 )
+ 3ds? ( media-libs/lib3ds )"
+
+RDEPEND="${COMMON_DEP}
+ java? ( >=virtual/jre-1.5 )"
+
+DEPEND="${COMMON_DEP}
+ java? ( >=virtual/jdk-1.5
+ dev-java/ant-core )
+ dev-util/ftjam
+ dev-lang/swig
+ virtual/pkgconfig"
+
+S=${WORKDIR}/${MY_P}
+
+src_prepare() {
+ # Installing doc conflict with dodoc on src_install
+ # Removing conflicting target
+ sed -i \
+ -e "/^InstallDoc/d" \
+ Jamfile.in \
+ docs/Jamfile || die
+ epatch "${FILESDIR}"/${P}-gcc47.patch
+ AT_M4DIR=mk/autoconf
+ eautoreconf
+}
+
+src_configure() {
+ if use wxwidgets; then
+ WX_GTK_VER="2.8"
+ need-wxwidgets unicode
+ fi
+
+ econf \
+ --disable-as-needed \
+ --enable-cpu-specific-optimizations=no \
+ --disable-separate-debug-info \
+ --without-lcms \
+ --without-jackasyn \
+ --without-perl \
+ $(use_with java) \
+ --disable-make-emulation \
+ $(use_with bullet) \
+ --without-python \
+ $(use_with png) \
+ $(use_with jpeg) \
+ $(use_with mng) \
+ $(use_with vorbis) \
+ $(use_with speex) \
+ $(use_with 3ds) \
+ $(use_with ode) \
+ $(use_with truetype freetype2) \
+ $(use_with cal3d) \
+ $(use_with wxwidgets wx) \
+ $(use_with cegui CEGUI) \
+ $(use_with cg Cg) \
+ $(use_with alsa asound)
+ #remove unwanted CFLAGS added by ./configure
+ sed -i -e '/COMPILER\.CFLAGS\.optimize/d' \
+ Jamconfig || die
+}
+
+src_compile() {
+ jam -q -dx -j$(makeopts_jobs) || die
+}
+
+src_install() {
+ for installTarget in bin plugin lib include data config bindings
+ do
+ jam -q -s DESTDIR="${D}" install_${installTarget} || die
+ done
+ if use doc; then
+ jam -q -s DESTDIR="${D}" install_doc || die
+ fi
+ dodoc README docs/history*
+
+ echo "CRYSTAL_PLUGIN=/usr/$(get_libdir)/${PATH_P}" > 90crystalspace
+ echo "CRYSTAL_CONFIG=/etc/${PATH_P}" >> 90crystalspace
+ doenvd 90crystalspace
+}
+
+pkg_postinst() {
+ elog "Examples coming with this package, need correct light calculation"
+ elog "Do the following commands, with the root account, to fix that:"
+ # Fill cache directory for the examples
+ local dir
+ for dir in castle flarge isomap parallaxtest partsys r3dtest stenciltest \
+ terrain terrainf;
+ do
+ elog "cslight -video=null /usr/share/${PATH_P}/data/maps/${dir}"
+ done
+}
diff --git a/dev-games/crystalspace/files/crystalspace-2.0-gcc47.patch b/dev-games/crystalspace/files/crystalspace-2.0-gcc47.patch
new file mode 100644
index 000000000000..5b76b2e94707
--- /dev/null
+++ b/dev-games/crystalspace/files/crystalspace-2.0-gcc47.patch
@@ -0,0 +1,110 @@
+https://bugs.gentoo.org/426870
+https://bugs.gentoo.org/459440
+
+ include/csplugincommon/rendermanager/render.h | 6 +++---
+ include/csutil/blockallocator.h | 6 +++---
+ include/csutil/parray.h | 2 +-
+ include/csutil/redblacktree.h | 4 ++--
+ include/csutil/refarr.h | 2 +-
+ 5 files changed, 10 insertions(+), 10 deletions(-)
+
+--- a/include/csplugincommon/rendermanager/render.h
++++ b/include/csplugincommon/rendermanager/render.h
+@@ -194,7 +194,7 @@ namespace RenderManager
+ || (mesh.preCopyNum != 0))
+ {
+ // Render the latest batch of meshes
+- RenderMeshes (context, node->meshes, lastShader, lastTicket, lastRenderedMesh, m);
++ this->RenderMeshes (context, node->meshes, lastShader, lastTicket, lastRenderedMesh, m);
+ lastRenderedMesh = m;
+
+ lastShader = shader;
+@@ -208,7 +208,7 @@ namespace RenderManager
+ }
+ }
+
+- RenderMeshes (context, node->meshes, lastShader, lastTicket, lastRenderedMesh, node->meshes.GetSize ());
++ this->RenderMeshes (context, node->meshes, lastShader, lastTicket, lastRenderedMesh, node->meshes.GetSize ());
+ }
+ };
+
+@@ -242,7 +242,7 @@ namespace RenderManager
+ iShader* shader = context.shaderArray[mesh.contextLocalId+layerOffset];
+
+ size_t ticket = context.ticketArray[mesh.contextLocalId+layerOffset];
+- RenderMeshes (context, node->meshes, shader, ticket, m, m+1);
++ this->RenderMeshes (context, node->meshes, shader, ticket, m, m+1);
+ }
+ }
+ }
+--- a/include/csutil/blockallocator.h
++++ b/include/csutil/blockallocator.h
+@@ -193,7 +193,7 @@ public:
+ ~csBlockAllocator()
+ {
+ ObjectDispose dispose (*this, false);
+- DisposeAll (dispose);
++ this->DisposeAll (dispose);
+ }
+
+ /**
+@@ -204,7 +204,7 @@ public:
+ void Empty ()
+ {
+ ObjectDispose dispose (*this, true);
+- FreeAll (dispose);
++ this->FreeAll (dispose);
+ }
+
+ /**
+@@ -215,7 +215,7 @@ public:
+ void DeleteAll ()
+ {
+ ObjectDispose dispose (*this, true);
+- DisposeAll (dispose);
++ this->DisposeAll (dispose);
+ }
+
+ /**
+--- a/include/csutil/parray.h
++++ b/include/csutil/parray.h
+@@ -112,7 +112,7 @@ public:
+ {
+ CS_ASSERT (this->GetSize () > 0);
+ T* ret = GetAndClear (this->GetSize () - 1); // see *1*
+- Truncate (this->GetSize () - 1);
++ this->Truncate (this->GetSize () - 1);
+ return ret;
+ }
+
+--- a/include/csutil/redblacktree.h
++++ b/include/csutil/redblacktree.h
+@@ -1155,7 +1155,7 @@ public:
+ T* Put (const K& key, const T &value)
+ {
+ csRedBlackTreePayload<K, T>* payload = (csRedBlackTreePayload<K, T>*)
+- Insert (csRedBlackTreePayload<K, T>(key, value));
++ this->Insert (csRedBlackTreePayload<K, T>(key, value));
+ return (payload != 0) ? &payload->GetValue() : 0;
+ }
+ /**
+@@ -1194,7 +1194,7 @@ public:
+ */
+ const T& Get (const K& key, const T& fallback) const
+ {
+- const csRedBlackTreePayload<K, T>* payload = Find (key);
++ const csRedBlackTreePayload<K, T>* payload = this->Find (key);
+ if (payload == 0) return fallback;
+ return payload->GetValue();
+ }
+--- a/include/csutil/refarr.h
++++ b/include/csutil/refarr.h
+@@ -111,7 +111,7 @@ public:
+ {
+ CS_ASSERT (this->GetSize () > 0);
+ csRef<T> ret = this->Get (this->GetSize () - 1); // see *1*
+- SetSize (this->GetSize () - 1);
++ this->SetSize (this->GetSize () - 1);
+ return ret;
+ }
+ };
diff --git a/dev-games/crystalspace/metadata.xml b/dev-games/crystalspace/metadata.xml
new file mode 100644
index 000000000000..eb8bc207ec7d
--- /dev/null
+++ b/dev-games/crystalspace/metadata.xml
@@ -0,0 +1,30 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>games</herd>
+ <longdescription>
+Crystal Space is a free (LGPL) and portable 3D Game
+Development Kit written in C++. It supports: true six degrees
+of freedom, colored lighting, lightmapped and stencil based
+lighting, shader support, mipmapping, portals, mirrors, alpha
+transparency, reflective surfaces, 3D sprites (frame based or
+with skeletal animation, also using cal3d animation library),
+procedural textures, particle systems, halos, volumetric fog,
+scripting (using Python, Perl, Java, or potentially other
+languages), 16-bit and 32-bit display support, OpenGL, and
+software renderer, font support, hierarchical
+transformations, physics plugin based on ODE, ... See the
+extensive list of features for more details.
+</longdescription>
+ <use>
+ <flag name="3ds">Enables support for .3DS files in CrystalSpace</flag>
+ <flag name="bullet">include support for Bullet library</flag>
+ <flag name="cal3d">include support for skeleton animation</flag>
+ <flag name="cegui">include support for Crazy Eddie GUI</flag>
+ <flag name="cg">NVIDIA toolkit plugin</flag>
+ <flag name="ode">include support for Open Dynamics Engine</flag>
+ </use>
+ <upstream>
+ <remote-id type="sourceforge">crystal</remote-id>
+ </upstream>
+</pkgmetadata>