summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'sci-astronomy/stellarium/stellarium-0.22.1-r1.ebuild')
-rw-r--r--sci-astronomy/stellarium/stellarium-0.22.1-r1.ebuild148
1 files changed, 148 insertions, 0 deletions
diff --git a/sci-astronomy/stellarium/stellarium-0.22.1-r1.ebuild b/sci-astronomy/stellarium/stellarium-0.22.1-r1.ebuild
new file mode 100644
index 000000000000..1a50f8899404
--- /dev/null
+++ b/sci-astronomy/stellarium/stellarium-0.22.1-r1.ebuild
@@ -0,0 +1,148 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{8..10} )
+inherit cmake desktop flag-o-matic python-any-r1 xdg virtualx
+
+DESCRIPTION="3D photo-realistic skies in real time"
+HOMEPAGE="https://stellarium.org/"
+MY_DSO_VERSION="3.15"
+SRC_URI="
+ https://github.com/Stellarium/stellarium/releases/download/v${PV}/${P}.tar.gz
+ deep-sky? (
+ https://github.com/Stellarium/stellarium-data/releases/download/dso-${MY_DSO_VERSION}/catalog-${MY_DSO_VERSION}.dat -> ${PN}-dso-catalog-${MY_DSO_VERSION}.dat
+ )
+ doc? (
+ https://github.com/Stellarium/stellarium/releases/download/v${PV}/stellarium_user_guide-${PV}-1.pdf
+ )
+ stars? (
+ https://github.com/Stellarium/stellarium-data/releases/download/stars-2.0/stars_4_1v0_2.cat
+ https://github.com/Stellarium/stellarium-data/releases/download/stars-2.0/stars_5_2v0_1.cat
+ https://github.com/Stellarium/stellarium-data/releases/download/stars-2.0/stars_6_2v0_1.cat
+ https://github.com/Stellarium/stellarium-data/releases/download/stars-2.0/stars_7_2v0_1.cat
+ https://github.com/Stellarium/stellarium-data/releases/download/stars-2.0/stars_8_2v0_1.cat
+ )"
+
+LICENSE="GPL-2+ SGI-B-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~ppc64 ~riscv ~x86"
+IUSE="debug deep-sky doc gps media nls stars telescope test webengine"
+
+# Python interpreter is used while building RemoteControl plugin
+BDEPEND="
+ ${PYTHON_DEPS}
+ doc? ( app-doc/doxygen[dot] )
+ nls? ( dev-qt/linguist-tools:5 )
+"
+RDEPEND="
+ dev-libs/qtcompress:=
+ dev-qt/qtcharts:5
+ dev-qt/qtcore:5
+ dev-qt/qtgui:5
+ dev-qt/qtnetwork:5
+ dev-qt/qtopengl:5
+ dev-qt/qtprintsupport:5
+ dev-qt/qtscript:5
+ dev-qt/qtwidgets:5
+ media-fonts/dejavu
+ sys-libs/zlib
+ virtual/opengl
+ gps? (
+ dev-qt/qtpositioning:5
+ dev-qt/qtserialport:5
+ sci-geosciences/gpsd:=[cxx]
+ )
+ media? ( dev-qt/qtmultimedia:5[widgets] )
+ telescope? (
+ dev-qt/qtserialport:5
+ sci-libs/indilib:=
+ )
+ webengine? ( dev-qt/qtwebengine:5[widgets] )
+"
+DEPEND="${RDEPEND}
+ dev-qt/qtconcurrent:5
+ test? ( dev-qt/qttest:5 )
+"
+
+RESTRICT="!test? ( test )"
+
+PATCHES=(
+ "${FILESDIR}/stellarium-0.20.3-unbundle-indi.patch"
+ "${FILESDIR}/stellarium-0.20.3-unbundle-zlib.patch"
+ "${FILESDIR}/stellarium-0.22.1-fix-star-manager-segfault.patch"
+ "${FILESDIR}/stellarium-0.22.1-unbundle-qtcompress.patch"
+ "${FILESDIR}/stellarium-0.22.1-fix-test-x86.patch"
+ "${FILESDIR}/stellarium-0.22.1-fix-conv.patch"
+)
+
+src_prepare() {
+ cmake_src_prepare
+ use debug || append-cppflags -DQT_NO_DEBUG #415769
+
+ # Several libraries are bundled, remove them.
+ rm -r src/external/{libindi,qtcompress,zlib}/ || die
+
+ # qcustomplot can't be easily unbundled because it uses qcustomplot 1
+ # while we have qcustomplot 2 in tree which changed API a bit
+ # Also the license of the external qcustomplot is incompatible with stellarium
+
+ # for glues_stel aka libtess I couldn't find an upstream with the same API
+
+ # unbundling of qxlsx depends on https://github.com/QtExcel/QXlsx/pull/185
+
+ local remaining="$(cd src/external/ && echo */)"
+ if [[ "${remaining}" != "glues_stel/ qcustomplot/ qxlsx/" ]]; then
+ eqawarn "Need to unbundle more deps: ${remaining}"
+ fi
+}
+
+src_configure() {
+ local mycmakeargs=(
+ -DENABLE_GPS="$(usex gps)"
+ -DENABLE_MEDIA="$(usex media)"
+ -DENABLE_NLS="$(usex nls)"
+ -DENABLE_TESTING="$(usex test)"
+ -DUSE_PLUGIN_TELESCOPECONTROL="$(usex telescope)"
+ $(cmake_use_find_package webengine Qt5WebEngine)
+ $(cmake_use_find_package webengine Qt5WebEngineWidgets)
+ )
+ cmake_src_configure
+}
+
+src_test() {
+ virtx cmake_src_test
+}
+
+src_compile() {
+ cmake_src_compile
+
+ if use doc ; then
+ cmake_build apidoc
+ fi
+}
+
+src_install() {
+ if use doc ; then
+ local HTML_DOCS=( "${BUILD_DIR}/doc/html/." )
+ dodoc "${DISTDIR}/stellarium_user_guide-${PV}-1.pdf"
+ fi
+ cmake_src_install
+
+ # use the more up-to-date system fonts
+ rm "${ED}"/usr/share/stellarium/data/DejaVuSans{Mono,}.ttf || die
+ dosym ../../fonts/dejavu/DejaVuSans.ttf /usr/share/stellarium/data/DejaVuSans.ttf
+ dosym ../../fonts/dejavu/DejaVuSansMono.ttf /usr/share/stellarium/data/DejaVuSansMono.ttf
+
+ if use stars ; then
+ insinto /usr/share/${PN}/stars/default
+ doins "${DISTDIR}"/stars_4_1v0_2.cat
+ doins "${DISTDIR}"/stars_{5,6,7,8}_2v0_1.cat
+ fi
+ if use deep-sky ; then
+ insinto /usr/share/${PN}/nebulae/default
+ newins "${DISTDIR}/${PN}-dso-catalog-${MY_DSO_VERSION}.dat" catalog.dat
+ fi
+ newicon doc/images/stellarium-logo.png ${PN}.png
+}