aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHeinz Wiesinger <pprkut@liwjatan.at>2010-07-25 21:44:44 -0500
committerErik Hanson <erik@slackbuilds.org>2010-07-25 21:52:42 -0500
commited89d626b0af8bed0d13de89006d8f463189328a (patch)
tree1c7c3e2bee82f1c3771792cc384c441122f5ad47
parentc7891ae2d3a6b4962dd7b4e82db0f840144201d2 (diff)
academic/celestia: Added (Realtime Space Simulation)
Signed-off-by: Erik Hanson <erik@slackbuilds.org>
-rw-r--r--academic/celestia/README11
-rw-r--r--academic/celestia/celestia-1.5.1-gcc44.patch30
-rw-r--r--academic/celestia/celestia-1.6.0-libpng14.patch14
-rw-r--r--academic/celestia/celestia.SlackBuild105
-rw-r--r--academic/celestia/celestia.info10
-rw-r--r--academic/celestia/doinst.sh7
-rw-r--r--academic/celestia/slack-desc19
7 files changed, 196 insertions, 0 deletions
diff --git a/academic/celestia/README b/academic/celestia/README
new file mode 100644
index 000000000000..563f6bc11e38
--- /dev/null
+++ b/academic/celestia/README
@@ -0,0 +1,11 @@
+A real-time space simulation that lets you experience our universe
+in three dimensions.
+
+There are four frontend possibilities to choose. The Glut one works
+out of the box. The GTK frontend needs gtkglext (also available
+from SlackBuilds.org). The Gnome frontend wasn't tested.
+The KDE frontend requires kde3 and will not work with the kde3 compat
+packages.
+
+Celestia may use lua for its script engine, if available at compile time.
+Lua is also available from SlackBuilds.org.
diff --git a/academic/celestia/celestia-1.5.1-gcc44.patch b/academic/celestia/celestia-1.5.1-gcc44.patch
new file mode 100644
index 000000000000..6f484484f777
--- /dev/null
+++ b/academic/celestia/celestia-1.5.1-gcc44.patch
@@ -0,0 +1,30 @@
+diff -NrU5 celestia-1.5.1.orig/src/celengine/overlay.h celestia-1.5.1/src/celengine/overlay.h
+--- celestia-1.5.1.orig/src/celengine/overlay.h 2009-05-17 15:01:34.000000000 -0600
++++ celestia-1.5.1/src/celengine/overlay.h 2009-05-17 15:02:56.000000000 -0600
+@@ -9,10 +9,11 @@
+
+ #ifndef _OVERLAY_H_
+ #define _OVERLAY_H_
+
+ #include <string>
++#include <cstdio>
+ #include <iostream>
+ #include <celtxf/texturefont.h>
+
+
+ class Overlay;
+diff -NrU5 celestia-1.5.1.orig/src/celengine/star.cpp celestia-1.5.1/src/celengine/star.cpp
+--- celestia-1.5.1.orig/src/celengine/star.cpp 2009-05-17 15:01:34.000000000 -0600
++++ celestia-1.5.1/src/celengine/star.cpp 2009-05-17 15:03:43.000000000 -0600
+@@ -7,10 +7,11 @@
+ // as published by the Free Software Foundation; either version 2
+ // of the License, or (at your option) any later version.
+
+ #include <celmath/mathlib.h>
+ #include <cstring>
++#include <cstdio>
+ #include <cassert>
+ #include "celestia.h"
+ #include "astro.h"
+ #include "orbit.h"
+ #include "star.h"
diff --git a/academic/celestia/celestia-1.6.0-libpng14.patch b/academic/celestia/celestia-1.6.0-libpng14.patch
new file mode 100644
index 000000000000..ac6f07aeac0d
--- /dev/null
+++ b/academic/celestia/celestia-1.6.0-libpng14.patch
@@ -0,0 +1,14 @@
+http://bugs.gentoo.org/show_bug.cgi?id=307429
+http://repos.archlinux.org/wsvn/packages/celestia/trunk/libpng14.patch
+
+--- src/celengine/image.cpp
++++ src/celengine/image.cpp
+@@ -737,7 +737,7 @@
+
+ if (color_type == PNG_COLOR_TYPE_GRAY && bit_depth < 8)
+ {
+- png_set_gray_1_2_4_to_8(png_ptr);
++ png_set_expand_gray_1_2_4_to_8(png_ptr);
+ }
+
+ if (png_get_valid(png_ptr, info_ptr, PNG_INFO_tRNS))
diff --git a/academic/celestia/celestia.SlackBuild b/academic/celestia/celestia.SlackBuild
new file mode 100644
index 000000000000..d662525482c4
--- /dev/null
+++ b/academic/celestia/celestia.SlackBuild
@@ -0,0 +1,105 @@
+#!/bin/sh
+
+# Slackware build script for celestia
+
+# Copyright 2008-2009 Heinz Wiesinger <pprkut@liwjatan.at>
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ''AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+PRGNAM=celestia
+VERSION=1.6.0
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i486 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+CWD=$(pwd)
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+if [ "$ARCH" = "i486" ]; then
+ SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+fi
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $PRGNAM-$VERSION
+tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
+cd $PRGNAM-$VERSION
+chown -R root:root .
+find . \
+ \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
+ -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
+ -exec chmod 644 {} \;
+
+# Celestia can only be built with one frontend enabled. The
+# Default one is gtk, but you are free to choose glut, gnome and
+# kde as well, though they may require additional dependencies.
+# Note that the kde frontend will only build with kde3
+FRONTEND=${FRONTEND:-gtk}
+
+# Fix detecting libpng 1.4
+patch -p0 -i $CWD/celestia-1.6.0-libpng14.patch
+
+# Fix build errors for gcc 4.4
+patch -p1 -i $CWD/celestia-1.5.1-gcc44.patch
+
+CFLAGS="$SLKCFLAGS" \
+CXXFLAGS="$SLKCFLAGS" \
+./configure \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ --libdir=/usr/lib$LIBDIRSUFFIX \
+ --localstatedir=/var \
+ --with-$FRONTEND \
+ --build=$ARCH-slackware-linux \
+ --host=$ARCH-slackware-linux
+
+make
+make install-strip DESTDIR=$PKG
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a ABOUT-NLS AUTHORS ChangeLog COPYING INSTALL NEWS README TRANSLATORS \
+ $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+cat $CWD/doinst.sh > $PKG/install/doinst.sh
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/academic/celestia/celestia.info b/academic/celestia/celestia.info
new file mode 100644
index 000000000000..a82f1c9fbff6
--- /dev/null
+++ b/academic/celestia/celestia.info
@@ -0,0 +1,10 @@
+PRGNAM="celestia"
+VERSION="1.6.0"
+HOMEPAGE="http://www.shatters.net/celestia/"
+DOWNLOAD="http://downloads.sourceforge.net/celestia/celestia-1.6.0.tar.gz"
+DOWNLOAD_x86_64=""
+MD5SUM="9b96a8e7666ab5a26f032b9d605e023d"
+MD5SUM_x86_64=""
+MAINTAINER="Heinz Wiesinger"
+EMAIL="pprkut@liwjatan.at"
+APPROVED="Erik Hanson"
diff --git a/academic/celestia/doinst.sh b/academic/celestia/doinst.sh
new file mode 100644
index 000000000000..e651b937108a
--- /dev/null
+++ b/academic/celestia/doinst.sh
@@ -0,0 +1,7 @@
+if [ -x /usr/bin/update-desktop-database ]; then
+ /usr/bin/update-desktop-database usr/share/applications >/dev/null 2>&1
+fi
+
+if [ -x /usr/bin/update-mime-database ]; then
+ /usr/bin/update-mime-database usr/share/mime >/dev/null 2>&1
+fi
diff --git a/academic/celestia/slack-desc b/academic/celestia/slack-desc
new file mode 100644
index 000000000000..cf5907eecf3e
--- /dev/null
+++ b/academic/celestia/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description. Line
+# up the first '|' above the ':' following the base package name, and the '|'
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':'.
+
+ |-----handy-ruler----------------------------------------------------|
+celestia: celestia (Realtime Space Simulation)
+celestia:
+celestia: A real-time space simulation that lets you experience our universe
+celestia: in three dimensions.
+celestia:
+celestia: Homepage: http://www.shatters.net/celestia/
+celestia:
+celestia:
+celestia:
+celestia:
+celestia: