summaryrefslogtreecommitdiff
path: root/sci-astronomy/celestia/celestia-1.6.1-r1.ebuild
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2017-10-09 18:53:29 +0100
committerV3n3RiX <venerix@redcorelinux.org>2017-10-09 18:53:29 +0100
commit4f2d7949f03e1c198bc888f2d05f421d35c57e21 (patch)
treeba5f07bf3f9d22d82e54a462313f5d244036c768 /sci-astronomy/celestia/celestia-1.6.1-r1.ebuild
reinit the tree, so we can have metadata
Diffstat (limited to 'sci-astronomy/celestia/celestia-1.6.1-r1.ebuild')
-rw-r--r--sci-astronomy/celestia/celestia-1.6.1-r1.ebuild120
1 files changed, 120 insertions, 0 deletions
diff --git a/sci-astronomy/celestia/celestia-1.6.1-r1.ebuild b/sci-astronomy/celestia/celestia-1.6.1-r1.ebuild
new file mode 100644
index 000000000000..99276ceb7056
--- /dev/null
+++ b/sci-astronomy/celestia/celestia-1.6.1-r1.ebuild
@@ -0,0 +1,120 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+WANT_AUTOMAKE="1.11"
+
+inherit eutils flag-o-matic gnome2 autotools
+
+DESCRIPTION="OpenGL 3D space simulator"
+HOMEPAGE="http://www.shatters.net/celestia/"
+SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 ppc ppc64 x86 ~amd64-linux ~x86-linux"
+IUSE="cairo gnome gtk nls pch theora threads"
+
+RDEPEND="
+ virtual/opengl
+ virtual/jpeg:0
+ media-libs/libpng:0=
+ <dev-lang/lua-5.2:*
+ gtk? ( !gnome? ( x11-libs/gtk+:2 >=x11-libs/gtkglext-1.0 ) )
+ gnome? (
+ x11-libs/gtk+:2
+ >=x11-libs/gtkglext-1.0
+ >=gnome-base/libgnomeui-2.0
+ )
+ !gtk? ( !gnome? ( media-libs/freeglut ) )
+ cairo? ( x11-libs/cairo )
+ theora? ( media-libs/libtheora )"
+
+DEPEND="${RDEPEND}
+ virtual/pkgconfig"
+
+pkg_setup() {
+ # Check for one for the following use flags to be set.
+ if use gnome; then
+ einfo "USE=\"gnome\" detected."
+ USE_DESTDIR="1"
+ CELESTIA_GUI="gnome"
+ elif use gtk; then
+ einfo "USE=\"gtk\" detected."
+ CELESTIA_GUI="gtk"
+ else
+ ewarn "If you want to use the full gui, set USE=\"{gnome|gtk}\""
+ ewarn "Defaulting to glut support (no GUI)."
+ CELESTIA_GUI="glut"
+ fi
+}
+
+src_prepare() {
+ # make better desktop files
+ epatch "${FILESDIR}"/${PN}-1.5.0-desktop.patch
+ # add a ~/.celestia for extra directories
+ epatch "${FILESDIR}"/${PN}-1.6.0-cfg.patch
+ # fix missing includes for gcc-4.6
+ epatch "${FILESDIR}"/${P}-gcc46.patch
+ # missing zlib.h include with libpng15
+ epatch "${FILESDIR}"/${P}-libpng15.patch \
+ "${FILESDIR}"/${P}-linking.patch
+
+ # gcc-47, #414015
+ epatch "${FILESDIR}"/${P}-gcc47.patch
+
+ # libpng16 #464764
+ epatch "${FILESDIR}"/${P}-libpng16.patch
+
+ # remove flags to let the user decide
+ local
+ for cf in -O2 -ffast-math \
+ -fexpensive-optimizations \
+ -fomit-frame-pointer; do
+ sed -i \
+ -e "s/${cf}//g" \
+ configure.in admin/* || die "sed failed"
+ done
+ # remove an unused gconf macro killing autoconf when no gnome
+ # (not needed without eautoreconf)
+ if ! use gnome; then
+ sed -i \
+ -e '/AM_GCONF_SOURCE_2/d' \
+ configure.in || die "sed failed"
+ fi
+ eautoreconf
+ filter-flags "-funroll-loops -frerun-loop-opt"
+
+ ### This version of Celestia has a bug in the font rendering and
+ ### requires -fsigned-char. We should be able to force this flag
+ ### on all architectures. See bug #316573.
+ append-flags "-fsigned-char"
+}
+
+src_configure() {
+ # force lua in 1.6.1. seems to be inevitable
+ econf \
+ --disable-rpath \
+ --with-${CELESTIA_GUI} \
+ --with-lua \
+ $(use_enable cairo) \
+ $(use_enable threads threading) \
+ $(use_enable nls) \
+ $(use_enable pch) \
+ $(use_enable theora)
+}
+
+src_install() {
+ if [[ ${CELESTIA_GUI} == gnome ]]; then
+ gnome2_src_install
+ else
+ emake DESTDIR="${D}" install
+ local size
+ for size in 16 22 32 48 ; do
+ insinto /usr/share/icons/hicolor/${size}x${size}/apps
+ newins "${S}"/src/celestia/kde/data/hi${size}-app-${PN}.png ${PN}.png
+ done
+ fi
+ [[ ${CELESTIA_GUI} == glut ]] && domenu celestia.desktop
+ dodoc AUTHORS README TRANSLATORS *.txt
+}