Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
Please login to access the resource
home:munix9:unstable
celestia
celestia.spec
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File celestia.spec of Package celestia
# # spec file for package celestia # # copyright (c) 2024 munix9@googlemail.com # %define _sver 1_7 %define _gitv %{nil} %define _desc Celestia is a free 3D astronomy program. Based on the Hipparcos\ Catalogue, it allows users to display objects ranging in scale from\ artificial satellites to entire galaxies in three dimensions using\ OpenGL. Unlike most planetarium software, the user is free to travel\ about the Universe. %ifarch %{arm} %{arm64} %bcond_without gles %else %bcond_with gles %endif Name: celestia Version: 1.7.0~git20241110+69315a0a Release: 0 Summary: Real-time visual space simulation License: GPL-2.0-or-later AND MIT-0 URL: https://celestiaproject.space/ Source0: %{name}-%{version}.tar.gz Source1: baselibs.conf Source2: x-%{name}-script.xml Source10: https://data.iana.org/time-zones/data/leap-seconds.list Source99: %{name}.rpmlintrc Patch0: fix-appimage_dir.patch Patch1: fix-leap-seconds.patch Patch2: fix-spice-call-to-mktemp.patch Patch3: fix-copyright-date.patch BuildRequires: boost-devel BuildRequires: cmake BuildRequires: fdupes BuildRequires: gperf BuildRequires: ninja BuildRequires: pkgconfig BuildRequires: pkgconfig(eigen3) BuildRequires: pkgconfig(epoxy) BuildRequires: pkgconfig(fmt) >= 8 BuildRequires: pkgconfig(freetype2) BuildRequires: pkgconfig(icu-uc) BuildRequires: pkgconfig(libavcodec) BuildRequires: pkgconfig(libavformat) BuildRequires: pkgconfig(libavif) BuildRequires: pkgconfig(libavutil) BuildRequires: pkgconfig(libjpeg) BuildRequires: pkgconfig(libpng) BuildRequires: pkgconfig(libswscale) BuildRequires: pkgconfig(luajit) BuildRequires: pkgconfig(zlib) Requires: %{name}-common = %{version} Requires: %{name}-data >= 1.7.0~ Requires: %{name}-ui = %{version} Recommends: %{name}-qt5 = %{version} Suggests: %{name}-tools %if %{with gles} BuildRequires: pkgconfig(glesv2) %endif %if 0%{?suse_version} < 1600 BuildRequires: gcc10-PIE BuildRequires: gcc10-c++ %else BuildRequires: gcc-c++ %endif %description %{_desc} %package -n lib%{name}%{_sver} Summary: Library for the Celestia space simulator Suggests: %{name} = %{version} %description -n lib%{name}%{_sver} %{_desc} This package includes the libcelestia library, which is necessary to run Celestia. %package qt5 Summary: Real-time visual space simulation (Qt 5 frontend) BuildRequires: libqt5-qtbase-private-headers-devel BuildRequires: pkgconfig(Qt5Core) BuildRequires: pkgconfig(Qt5Gui) BuildRequires: pkgconfig(Qt5OpenGL) BuildRequires: pkgconfig(Qt5Widgets) BuildRequires: pkgconfig(wayland-client) BuildRequires: pkgconfig(wayland-protocols) BuildRequires: pkgconfig(wayland-scanner) Requires: %{name} = %{version} Provides: %{name}-ui = %{version} Provides: %{name}-qt = %{version} Obsoletes: %{name}-qt < %{version} %description qt5 %{_desc} This package contains the Qt 5 frontend for Celestia. %package qt6 Summary: Real-time visual space simulation (Qt 6 frontend) BuildRequires: qt6-base-private-devel BuildRequires: cmake(Qt6OpenGLWidgets) BuildRequires: cmake(Qt6Widgets) Requires: %{name} = %{version} Provides: %{name}-ui = %{version} %description qt6 %{_desc} This package contains the Qt 6 frontend for Celestia. %package gtk Summary: Real-time visual space simulation (GTK+ 3 frontend) BuildRequires: pkgconfig(cairo) BuildRequires: pkgconfig(egl) BuildRequires: pkgconfig(gtk+-3.0) Requires: %{name} = %{version} Provides: %{name}-ui = %{version} %description gtk %{_desc} This package contains the GTK+ 3 frontend for Celestia. %package sdl Summary: Real-time visual space simulation (SDL frontend) BuildRequires: pkgconfig(sdl2) Requires: %{name} = %{version} Provides: %{name}-ui = %{version} %description sdl %{_desc} This package contains the SDL frontend for Celestia. %package common Summary: Common files for Celestia, a real-time visual space simulation BuildRequires: dejavu-fonts Requires: %{name} = %{version} Requires: dejavu-fonts Obsoletes: %{name}-doc < %{version} Provides: %{name}-doc = %{version} Obsoletes: %{name}-lang < %{version} Provides: %{name}-lang = %{version} BuildArch: noarch %description common %{_desc} This package contains the files common for all Celestia frontends. %package tools Summary: Real-time visual space simulation Suggests: %{name} >= 1.7.0~ Suggests: %{name}-tools-qt5 Suggests: %{name}-tools-qt6 %description tools %{_desc} This package contains tools required to create data files for Celestia. %package tools-qt5 Summary: Real-time visual space simulation Provides: %{name}-tools-qt = %{version} Obsoletes: %{name}-tools-qt < %{version} Suggests: %{name} >= 1.7.0~ Suggests: %{name}-tools %description tools-qt5 %{_desc} This package contains Qt 5 tools required to create data files for Celestia. %package tools-qt6 Summary: Real-time visual space simulation Suggests: %{name} >= 1.7.0~ Suggests: %{name}-tools %description tools-qt6 %{_desc} This package contains Qt 6 tools required to create data files for Celestia. %prep %autosetup -p1 # fix wrong-file-end-of-line-encoding sed -i 's/\r$//' src/tools/xindex/{buildxindices.pl,readme.txt} # fix env-script-interpreter sed -i '1s|^#!.*|#!%{_bindir}/python3|' src/tools/stardb/prunestars.py %build %define __builder ninja export CFLAGS="%{optflags} -I$(pkg-config --variable=includedir wayland-client) -fno-strict-aliasing" export CXXFLAGS="$CFLAGS" # required by doctest export LD_LIBRARY_PATH=$PWD/build/src/%{name}:$LD_LIBRARY_PATH if [ -n "%{_gitv}" ] ; then _git_commit=$(echo "%{_gitv}" | head -c 9) elif echo "%{version}" | grep -q '~git' ; then _git_commit=$(echo '%{version}' | cut -d'+' -f2) #elif [ -f "%%{_sourcedir}/%%{name}.obsinfo" ] ; then # _git_commit=$(sed -n -e 's,^commit: \(.\{9\}\).*,\1,p' "%%{_sourcedir}/%%{name}.obsinfo") else _git_commit=$(date -u -d@$SOURCE_DATE_EPOCH '+%%F') fi %cmake \ %if 0%{?suse_version} < 1600 -DCMAKE_C_COMPILER=gcc-10 \ -DCMAKE_CXX_COMPILER=g++-10 \ %endif -DCMAKE_SKIP_RPATH=ON \ -DCELCFG_EXTRAS_DIRS="\"~/.celestia\"" \ -DENABLE_FFMPEG=ON \ %if %{with gles} -DENABLE_GLES=ON \ %endif -DENABLE_GTK=ON \ -DENABLE_LIBAVIF=ON \ -DENABLE_LTO=ON \ -DENABLE_MINIAUDIO=ON \ -DENABLE_QT5=ON \ -DENABLE_QT6=ON \ -DENABLE_SDL=ON \ -DENABLE_SPICE=ON \ -DENABLE_TESTS=ON \ -DENABLE_TOOLS=ON \ -DENABLE_WIN=OFF \ -DGIT_COMMIT="$_git_commit" \ -DLUA_INCLUDE_DIR="$(pkg-config --variable=includedir luajit)" \ -DSPICE_BUILD_SHARED_LIBRARY=OFF \ -DUSE_GTK3=ON \ -DUSE_ICU=ON \ -DUSE_WAYLAND=ON %cmake_build %install # required by doctest export LD_LIBRARY_PATH=$PWD/build/src/%{name}:$LD_LIBRARY_PATH %cmake_install # leap-seconds.list (use system default, if available) install -D -m 0644 -t %{buildroot}%{_datadir}/%{name} %{SOURCE10} if [ -s %{_datadir}/zoneinfo/leap-seconds.list ] ; then mv -v %{buildroot}%{_datadir}/%{name}/leap-seconds.{list,%{name}} ln -sfv %{_datadir}/zoneinfo/leap-seconds.list %{buildroot}%{_datadir}/%{name}/ fi # move celestia.cfg to /etc/ install -D -m 0644 -t %{buildroot}%{_sysconfdir} %{buildroot}%{_datadir}/%{name}/%{name}.cfg ln -sfv %{_sysconfdir}/%{name}.cfg %{buildroot}%{_datadir}/%{name}/ # use system fonts ln -sfv %{_datadir}/fonts/truetype/DejaVuSans{,-Bold}.ttf %{buildroot}%{_datadir}/%{name}/fonts/ # mime install -D -m 0644 -t %{buildroot}%{_datadir}/mime/packages %{SOURCE2} # tools install -m 0755 -t %{buildroot}%{_bindir} src/tools/stardb/prunestars.py \ build/src/tools/spice2xyzv/spice2xyzv install -D -m 0644 src/tools/cmod/readme.txt %{buildroot}%{_docdir}/%{name}-tools/cmod-readme.txt install -m 0644 src/tools/stardb/readme.txt %{buildroot}%{_docdir}/%{name}-tools/stardb-readme.txt install -m 0644 src/tools/xindex/readme.txt %{buildroot}%{_docdir}/%{name}-tools/xindex-readme.txt # miniaudio install -m 0644 thirdparty/miniaudio/LICENSE LICENSE.miniaudio %find_lang %{name} %fdupes -s %{buildroot}%{_datadir}/%{name} %check export LD_LIBRARY_PATH=%{buildroot}%{_libdir}:$LD_LIBRARY_PATH %ctest --parallel 1 --timeout 60 --verbose %ldconfig_scriptlets -n lib%{name}%{_sver} %files %license COPYING LICENSE.miniaudio %doc AUTHORS README README.md TRANSLATORS %dir %{_datadir}/%{name} %files -n lib%{name}%{_sver} %license COPYING %{_libdir}/lib%{name}* %files qt5 %{_bindir}/%{name}-qt5 %{_datadir}/applications/space.%{name}project.%{name}_qt5.desktop %{_datadir}/metainfo/space.%{name}project.%{name}_qt5.metainfo.xml %{_mandir}/man1/%{name}-qt5.1%{?ext_man} %files qt6 %{_bindir}/%{name}-qt6 %{_datadir}/applications/space.%{name}project.%{name}_qt6.desktop %{_datadir}/metainfo/space.%{name}project.%{name}_qt6.metainfo.xml %{_mandir}/man1/%{name}-qt6.1%{?ext_man} %files gtk %{_bindir}/%{name}-gtk %{_datadir}/%{name}/%{name}ui.xml %{_datadir}/applications/space.%{name}project.%{name}_gtk.desktop %{_datadir}/metainfo/space.%{name}project.%{name}_gtk.metainfo.xml %{_mandir}/man1/%{name}-gtk.1%{?ext_man} %files sdl %{_bindir}/%{name}-sdl %{_datadir}/applications/space.%{name}project.%{name}_sdl.desktop %{_datadir}/metainfo/space.%{name}project.%{name}_sdl.metainfo.xml %{_mandir}/man1/%{name}-sdl.1%{?ext_man} %files common -f %{name}.lang %{_datadir}/%{name}/%{name}.cfg %{_datadir}/%{name}/%{name}-logo.png %{_datadir}/%{name}/COPYING %{_datadir}/%{name}/controls.txt %{_datadir}/%{name}/demo.cel %{_datadir}/%{name}/fonts %{_datadir}/%{name}/guide.cel %{_datadir}/%{name}/help %{_datadir}/%{name}/images %{_datadir}/%{name}/leap-seconds.* %{_datadir}/%{name}/locale %{_datadir}/%{name}/scripts %{_datadir}/%{name}/shaders %{_datadir}/%{name}/splash %{_datadir}/%{name}/start.cel %{_datadir}/mime/packages/x-%{name}-script.xml %{_datadir}/pixmaps/%{name}.png %config(noreplace) %{_sysconfdir}/%{name}.cfg %files tools %license COPYING %doc %{_docdir}/%{name}-tools %{_bindir}/3dstocmod %{_bindir}/bin2xyzv %{_bindir}/buildxindices.pl %{_bindir}/charm2.pl %{_bindir}/charm2simbatch.pl %{_bindir}/cmodfix %{_bindir}/cmodsphere %{_bindir}/deepsky.pl %{_bindir}/globulars.pl %{_bindir}/makestardb %{_bindir}/makexindex %{_bindir}/prunestars.py %{_bindir}/scattersim %{_bindir}/scattertable %{_bindir}/spectbins.pl %{_bindir}/spice2xyzv %{_bindir}/startextdump %{_bindir}/txt2cmod %{_bindir}/visualbins.pl %{_bindir}/vsoptrunc-rect %{_bindir}/vsoptrunc-sph %{_bindir}/xyzv2bin %{_bindir}/xyzv2bin.pl %dir %{_datadir}/%{name} %{_datadir}/%{name}/naif0012.tls %files tools-qt5 %license COPYING %{_bindir}/cmodview-qt5 %files tools-qt6 %license COPYING %{_bindir}/cmodview-qt6 %changelog
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor