339 lines
12 KiB
RPMSpec
339 lines
12 KiB
RPMSpec
%bcond_without openal
|
|
|
|
%global fver v%{version}
|
|
# avoid building bundled libraries as shared
|
|
%undefine _cmake_shared_libs
|
|
|
|
Name: ags
|
|
Summary: Engine for creating and running videogames of adventure (quest) genre
|
|
Version: 3.6.2.16
|
|
URL: http://www.adventuregamestudio.co.uk/site/ags/
|
|
Release: 2%{?dist}
|
|
Source0: https://github.com/adventuregamestudio/ags/archive/%{fver}/ags-%{fver}.tar.gz
|
|
Patch0: ags-use-system-libraries.patch
|
|
Patch1: ags-build-tests-with-cxx17.patch
|
|
# Most code is under Artistic-2.0, except:
|
|
# Common/libsrc/aastr-0.1.1: LicenseRef-Fedora-UltraPermissive
|
|
# Common/libsrc/alfont-2.0.9: FTL
|
|
# Engine/libsrc/apeg-1.2.1: MPEG-SSG
|
|
# Engine/libsrc/glad: Apache-2.0 AND MIT-Khronos-old
|
|
# Engine/libsrc/libcda-0.5: Zlib
|
|
# Plugins/agsblend/agsblend: MIT
|
|
# Plugins/agspalrender/agspalrender/raycast.{cpp,h}: BSD-2-Clause
|
|
# Plugins/AGSSpriteFont: CC0-1.0
|
|
# libsrc/allegro: Giftware
|
|
License: Artistic-2.0 AND LicenseRef-Fedora-UltraPermissive AND FTL AND MPEG-SSG AND Apache-2.0 AND MIT-Khronos-old AND Zlib AND MIT AND BSD-2-Clause AND CC0-1.0 AND Giftware
|
|
# incorrect rendering with new FT: https://github.com/adventuregamestudio/ags/issues/1528
|
|
Provides: bundled(freetype) = 2.1.3
|
|
%if %{with openal}
|
|
BuildRequires: openal-soft-devel
|
|
%else
|
|
# https://github.com/icculus/mojoAL (zlib)
|
|
Provides: bundled(mojoal)
|
|
%endif
|
|
BuildRequires: cmake
|
|
BuildRequires: gcc-c++
|
|
BuildRequires: glad
|
|
BuildRequires: glm-devel
|
|
BuildRequires: gtest-devel
|
|
# for KHR/khrplatform.h
|
|
BuildRequires: libglvnd-devel
|
|
BuildRequires: libogg-devel
|
|
BuildRequires: libtheora-devel
|
|
BuildRequires: libvorbis-devel
|
|
BuildRequires: make
|
|
BuildRequires: cmake(miniz)
|
|
BuildRequires: SDL2-devel
|
|
BuildRequires: SDL2_sound-devel
|
|
BuildRequires: tinyxml2-devel
|
|
# https://web.archive.org/web/20050323070052/http://www.inp.nsk.su/~bukinm/dusty/aastr/ (Giftware)
|
|
# dead upstream, might be possible to use aastr2:
|
|
# https://www.allegro.cc/resource/Libraries/Graphics/AASTR2
|
|
Provides: bundled(aastr) = 0.1.1
|
|
# bundled alfont is patched
|
|
Provides: bundled(alfont) = 2.0.9
|
|
# bundled allegro is stripped and patched
|
|
Provides: bundled(allegro) = 4.4.3
|
|
# http://kcat.strangesoft.net/apeg.html (Public Domain)
|
|
Provides: bundled(apeg) = 1.2.1
|
|
# https://web.archive.org/web/20040104090747/http://www.alphalink.com.au/~tjaden/libcda/index.html (zlib)
|
|
# dead upstream
|
|
Provides: bundled(libcda) = 0.5
|
|
|
|
%description
|
|
Adventure Game Studio (AGS) - is the IDE and the engine meant for creating and
|
|
running videogames of adventure (aka "quest") genre. It has potential, although
|
|
limited, support for other genres as well.
|
|
|
|
Originally created by Chris Jones back in 1999, AGS was opensourced in 2011 and
|
|
since continued to be developed by contributors.
|
|
|
|
%package tools
|
|
Summary: Tools for Adventure Game Studio engine game development
|
|
Requires: %{name}%{_isa} = %{version}-%{release}
|
|
|
|
%description tools
|
|
This package contains the AGS engine game development tools.
|
|
|
|
%prep
|
|
%setup -q
|
|
%patch 0 -p1 -b .orig
|
|
%patch 1 -p1 -b .cxx17
|
|
# delete unused bundled stuff
|
|
pushd Common/libinclude
|
|
rm -r ogg
|
|
rm -r theora
|
|
rm -r vorbis
|
|
popd
|
|
pushd Common/libsrc
|
|
rmdir googletest
|
|
popd
|
|
pushd Engine/libsrc
|
|
rm -r glad{,-gles2}/{src,include}
|
|
glad --reproducible --out-path=glad --profile="compatibility" --api="gl=2.1" --generator="c" --spec="gl" --extensions="GL_EXT_framebuffer_object"
|
|
glad --reproducible --out-path=glad-gles2 --profile="core" --api="gles2=2.0" --generator="c" --spec="gl" --extensions=""
|
|
rm -r ogg
|
|
rm -r theora
|
|
rm -r vorbis
|
|
popd
|
|
pushd libsrc
|
|
rm -r glm
|
|
rm -r miniz
|
|
%if %{with openal}
|
|
rm -r mojoAL
|
|
%endif
|
|
rm -r tinyxml2
|
|
popd
|
|
iconv -o Changes.txt.utf-8 -f iso8859-1 -t utf-8 Changes.txt && \
|
|
touch -r Changes.txt Changes.txt.utf-8 && \
|
|
mv Changes.txt.utf-8 Changes.txt
|
|
|
|
%build
|
|
%cmake \
|
|
-DCMAKE_BUILD_TYPE=RelWithDebInfo \
|
|
-DAGS_BUILD_TOOLS=TRUE \
|
|
-DAGS_TESTS=TRUE \
|
|
-DAGS_USE_LOCAL_SDL2=TRUE \
|
|
-DAGS_USE_LOCAL_SDL2_SOUND=TRUE \
|
|
-DAGS_USE_LOCAL_OGG=TRUE \
|
|
-DAGS_USE_LOCAL_VORBIS=TRUE \
|
|
-DAGS_USE_LOCAL_THEORA=TRUE \
|
|
-DAGS_USE_LOCAL_GLM=TRUE \
|
|
-DAGS_USE_LOCAL_TINYXML2=TRUE \
|
|
-DAGS_USE_LOCAL_MINIZ=TRUE \
|
|
-DAGS_USE_LOCAL_GTEST=TRUE \
|
|
|
|
%cmake_build
|
|
|
|
%install
|
|
%cmake_install
|
|
|
|
%check
|
|
%ctest
|
|
|
|
%files
|
|
%license License.txt
|
|
%doc Changes.txt Copyright.txt OPTIONS.md README.md
|
|
%{_bindir}/ags
|
|
|
|
%files tools
|
|
%{_bindir}/agscc
|
|
%{_bindir}/agf2dlgasc
|
|
%{_bindir}/agfexport
|
|
%{_bindir}/agspak
|
|
%{_bindir}/agsunpak
|
|
%{_bindir}/crm2ash
|
|
%{_bindir}/crmpak
|
|
%{_bindir}/trac
|
|
%{_bindir}/ags
|
|
|
|
%changelog
|
|
* Fri Jan 16 2026 Fedora Release Engineering <releng@fedoraproject.org> - 3.6.2.16-2
|
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_44_Mass_Rebuild
|
|
|
|
* Wed Jan 14 2026 Dominik Mierzejewski <dominik@greysector.net> - 3.6.2.16-1
|
|
- update to 3.6.2.16
|
|
- drop obsolete patch
|
|
|
|
* Wed Nov 26 2025 Dominik Mierzejewski <dominik@greysector.net> - 3.6.2.15-1
|
|
- update to 3.6.2.15 (resolves rhbz#2416531)
|
|
- drop serial ctest call work-around, fixed upstream
|
|
(https://github.com/adventuregamestudio/ags/pull/2910)
|
|
|
|
* Mon Nov 03 2025 Benjamin A. Beasley <code@musicinmybrain.net> - 3.6.2.14-2
|
|
- Build tests as C++17; required for gtest 1.17
|
|
|
|
* Mon Oct 27 2025 Dominik Mierzejewski <dominik@greysector.net> - 3.6.2.14-1
|
|
- update to 3.6.2.14 (resolves rhbz#2405254)
|
|
|
|
* Fri Sep 05 2025 Dominik Mierzejewski <dominik@greysector.net> - 3.6.2.13-2
|
|
- build tools and run tests
|
|
|
|
* Thu Sep 04 2025 Dominik Mierzejewski <dominik@greysector.net> - 3.6.2.13-1
|
|
- update to 3.6.2.13 (resolves rhbz#2393079)
|
|
|
|
* Sat Aug 23 2025 Benjamin A. Beasley <code@musicinmybrain.net> - 3.6.2.12-4
|
|
- Rebuilt for tinyxml2 11.0.0
|
|
|
|
* Sun Aug 03 2025 Dominik Mierzejewski <dominik@greysector.net> - 3.6.2.12-3
|
|
- follow upstream convention in option naming
|
|
- drop custom miniz detection and require a fixed build instead
|
|
|
|
* Wed Jul 23 2025 Fedora Release Engineering <releng@fedoraproject.org> - 3.6.2.12-2
|
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild
|
|
|
|
* Sat Jul 19 2025 Dominik Mierzejewski <dominik@greysector.net> - 3.6.2.12-1
|
|
- update to 3.6.2.12
|
|
- switch back to bundled freetype per upstream recommendation
|
|
|
|
* Sun Jul 06 2025 Dominik Mierzejewski <dominik@greysector.net> - 3.6.2.11-1
|
|
- update to 3.6.2.11
|
|
|
|
* Fri May 09 2025 Dominik Mierzejewski <dominik@greysector.net> - 3.6.2.9-1
|
|
- update to 3.6.2.9
|
|
- regenerate glad sources
|
|
|
|
* Fri Feb 28 2025 Dominik Mierzejewski <dominik@greysector.net> - 3.6.2.7-1
|
|
- update to 3.6.2.7
|
|
- switch build system to cmake
|
|
- unbundle miniz
|
|
- update SPDX expression in License: field after review
|
|
|
|
* Thu Feb 27 2025 Dominik Mierzejewski <dominik@greysector.net> - 3.6.1.31-1
|
|
- update to 3.6.1.31
|
|
- fix build with C23 (resolves rhbz#2336273)
|
|
|
|
* Thu Jan 16 2025 Fedora Release Engineering <releng@fedoraproject.org> - 3.6.1.30-2
|
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild
|
|
|
|
* Sat Nov 30 2024 Dominik Mierzejewski <dominik@greysector.net> - 3.6.1.30-1
|
|
- update to 3.6.1.30
|
|
- drop obsolete patch
|
|
|
|
* Mon Nov 11 2024 Dominik Mierzejewski <dominik@greysector.net> - 3.6.0.56-5
|
|
- rebuild for tinyxml2
|
|
|
|
* Wed Jul 17 2024 Fedora Release Engineering <releng@fedoraproject.org> - 3.6.0.56-4
|
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild
|
|
|
|
* Mon Jan 29 2024 Fedora Release Engineering <releng@fedoraproject.org> - 3.6.0.56-3
|
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
|
|
|
|
* Mon Jan 22 2024 Fedora Release Engineering <releng@fedoraproject.org> - 3.6.0.56-2
|
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
|
|
|
|
* Fri Jan 19 2024 Dominik Mierzejewski <dominik@greysector.net> - 3.6.0.56-1
|
|
- update to 3.6.0.56
|
|
- fix build with GCC14
|
|
|
|
* Fri Jan 19 2024 Fedora Release Engineering <releng@fedoraproject.org> - 3.6.0.51-2
|
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
|
|
|
|
* Fri Sep 01 2023 Dominik Mierzejewski <dominik@greysector.net> - 3.6.0.51-1
|
|
- update to 3.6.0.51
|
|
|
|
* Wed Jul 19 2023 Fedora Release Engineering <releng@fedoraproject.org> - 3.6.0.48-2
|
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
|
|
|
|
* Sun May 14 2023 Dominik Mierzejewski <dominik@greysector.net> - 3.6.0.48-1
|
|
- update to 3.6.0.48 (#2192719)
|
|
|
|
* Tue Apr 04 2023 Dominik Mierzejewski <dominik@greysector.net> - 3.6.0.47-1
|
|
- update to 3.6.0.47 stable release (#2183747)
|
|
|
|
* Mon Mar 27 2023 Dominik Mierzejewski <dominik@greysector.net> - 3.6.0.46-1
|
|
- update to 3.6.0.46 (#2179689)
|
|
|
|
* Wed Mar 08 2023 Dominik Mierzejewski <dominik@greysector.net> - 3.6.0.44-1
|
|
- update to 3.6.0.44 (#2172608)
|
|
|
|
* Mon Feb 06 2023 Dominik Mierzejewski <dominik@greysector.net> - 3.6.0.42-1
|
|
- update to 3.6.0.42 (#2167149)
|
|
- drop obsolete patch
|
|
|
|
* Tue Jan 24 2023 Dominik Mierzejewski <dominik@greysector.net> - 3.6.0.41-1
|
|
- update to 3.6.0.41 (#2161376)
|
|
- fix build with GCC 13
|
|
|
|
* Wed Jan 18 2023 Fedora Release Engineering <releng@fedoraproject.org> - 3.6.0.40-2
|
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
|
|
|
|
* Sun Jan 08 2023 Dominik Mierzejewski <dominik@greysector.net> - 3.6.0.40-1
|
|
- update to 3.6.0.40 (#2158889)
|
|
|
|
* Tue Jan 03 2023 Dominik Mierzejewski <dominik@greysector.net> - 3.6.0.39-1
|
|
- update to 3.6.0.39 (#2156072)
|
|
|
|
* Tue Dec 06 2022 Dominik Mierzejewski <dominik@greysector.net> - 3.6.0.38-1
|
|
- update to 3.6.0.38 (#2143092)
|
|
|
|
* Mon Oct 10 2022 Dominik Mierzejewski <dominik@greysector.net> - 3.6.0.36-1
|
|
- update to 3.6.0.36 (#2108390)
|
|
|
|
* Thu Oct 06 2022 Dominik Mierzejewski <rpm@greysector.net> - 3.6.0.35-1
|
|
- update to 3.6.0.35 (#2108390)
|
|
|
|
* Sun Sep 25 2022 Rich Mattes <richmattes@gmail.com> - 3.6.0.33-2
|
|
- Rebuild for tinyxml2-9.0.0
|
|
|
|
* Sun Aug 14 2022 Dominik Mierzejewski <rpm@greysector.net> - 3.6.0.33-1
|
|
- update to 3.6.0.33 (#2108390)
|
|
|
|
* Wed Jul 20 2022 Fedora Release Engineering <releng@fedoraproject.org> - 3.6.0.30-2
|
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
|
|
|
|
* Mon Jul 18 2022 Dominik Mierzejewski <rpm@greysector.net> - 3.6.0.30-1
|
|
- update to 3.6.0.30 (#2105677)
|
|
|
|
* Tue Jul 05 2022 Dominik Mierzejewski <rpm@greysector.net> - 3.6.0.29-1
|
|
- update to 3.6.0.29 (#2100149)
|
|
|
|
* Wed Jun 08 2022 Dominik Mierzejewski <rpm@greysector.net> - 3.6.0.27-1
|
|
- update to 3.6.0.27 (#2091478)
|
|
|
|
* Thu May 12 2022 Dominik Mierzejewski <rpm@greysector.net> - 3.6.0.25-1
|
|
- update to 3.6.0.25
|
|
- unbundle khrplatform.h header
|
|
- unbundle glm, ogg, theora, tinyxml2 and vorbis
|
|
- use openal-soft instead of bundled mojoAL
|
|
|
|
* Wed Jan 19 2022 Fedora Release Engineering <releng@fedoraproject.org> - 3.5.0.32-3
|
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
|
|
|
|
* Wed Jul 21 2021 Fedora Release Engineering <releng@fedoraproject.org> - 3.5.0.32-2
|
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
|
|
|
|
* Thu May 13 2021 Dominik Mierzejewski <rpm@greysector.net> - 3.5.0.32-1
|
|
- update to 3.5.0.32
|
|
|
|
* Thu Apr 08 2021 Dominik Mierzejewski <rpm@greysector.net> - 3.5.0.31-1
|
|
- update to 3.5.0.31
|
|
- drop obsolete patches
|
|
|
|
* Mon Jan 25 2021 Fedora Release Engineering <releng@fedoraproject.org> - 3.5.0.25-2
|
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
|
|
|
|
* Mon Aug 03 2020 Dominik Mierzejewski <rpm@greysector.net> - 3.5.0.25-1
|
|
- update to 3.5.0.25 (#1862828)
|
|
- fix compilation with GCC10 (missing cstdio includes)
|
|
- unbundle freetype
|
|
- fix linking against system libdumb
|
|
- fix compilation on big-endian (missing include)
|
|
|
|
* Fri Jul 31 2020 Fedora Release Engineering <releng@fedoraproject.org> - 3.4.4.2-4
|
|
- Second attempt - Rebuilt for
|
|
https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
|
|
|
|
* Mon Jul 27 2020 Fedora Release Engineering <releng@fedoraproject.org> - 3.4.4.2-3
|
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
|
|
|
|
* Tue Jan 28 2020 Fedora Release Engineering <releng@fedoraproject.org> - 3.4.4.2-2
|
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
|
|
|
|
* Sat Nov 09 2019 Dominik Mierzejewski <rpm@greysector.net> - 3.4.4.2-1
|
|
- use upstream source directly, offending files were removed upstream
|
|
|
|
* Wed Oct 02 2019 Dominik Mierzejewski <rpm@greysector.net> - 3.4.4.1-1
|
|
- initial Fedora package of 3.4.4.1 release
|
|
- remove non-free Engine/libsrc/libcda-0.5/{bcd.doc,djgpp.c} from tarball
|
|
- convert Changes.txt to UTF-8
|