390 lines
14 KiB
RPMSpec
390 lines
14 KiB
RPMSpec
# http://trac.wildfiregames.com/wiki/BuildInstructions#Linux
|
|
|
|
# enable special maintainer debug build ?
|
|
%define with_debug 0
|
|
%if %{with_debug}
|
|
%define config debug
|
|
%define dbg _dbg
|
|
%else
|
|
%define config release
|
|
%define dbg %{nil}
|
|
%endif
|
|
|
|
# Remember to rerun licensecheck after every update:
|
|
# https://bugzilla.redhat.com/show_bug.cgi?id=818401#c46
|
|
# http://trac.wildfiregames.com/ticket/1682
|
|
|
|
%global with_system_nvtt 1
|
|
%global without_nvtt 0
|
|
|
|
Name: 0ad
|
|
Version: 0.0.17
|
|
Release: 1%{?dist}
|
|
# BSD License:
|
|
# build/premake/*
|
|
# libraries/source/miniupnpc/* (not built/used)
|
|
# libraries/source/valgrind/* (not built/used)
|
|
# MIT License:
|
|
# libraries/source/fcollada/*
|
|
# libraries/source/nvtt/* (not built/used)
|
|
# source/third_party/*
|
|
# LGPLv2+
|
|
# libraries/source/cxxtest*/* (not built/used)
|
|
# GPLv2+
|
|
# source/*
|
|
# IBM
|
|
# source/tools/fontbuilder2/Packer.py
|
|
# MPL-1.1
|
|
# libraries/source/spidermonkey/* (not built/used)
|
|
License: GPLv2+ and BSD and MIT and IBM
|
|
Group: Amusements/Games
|
|
Summary: Cross-Platform RTS Game of Ancient Warfare
|
|
Url: http://play0ad.com
|
|
|
|
%if %{without_nvtt}
|
|
# wget http://releases.wildfiregames.com/%%{name}-%%{version}-alpha-unix-build.tar.xz
|
|
# tar Jxf %%{name}-%%{version}-alpha-unix-build.tar.xz
|
|
# rm -fr %%{name}-%%{version}-alpha/libraries/nvtt
|
|
# rm -f %%{name}-%%{version}-alpha-unix-build.tar.xz
|
|
# tar Jcf %%{name}-%%{version}-alpha-unix-build.tar.xz %%{name}-%%{version}-alpha
|
|
Source0: %{name}-%{version}-alpha-unix-build.tar.xz
|
|
%else
|
|
Source0: http://releases.wildfiregames.com/%{name}-%{version}-alpha-unix-build.tar.xz
|
|
%endif
|
|
|
|
# Simplify checking differences when updating the package
|
|
# (also to validate one did not forget to remake the tarball if
|
|
# %{without_nvtt} is enabled) Create it with:
|
|
# cd BUILD/%{name}-%{version}-alpha
|
|
# licensecheck -r . | sort > ../../SOURCES/%{name}-licensecheck.txt
|
|
Source1: %{name}-licensecheck.txt
|
|
|
|
# adapted from binaries/system/readme.txt
|
|
# It is advisable to review this file at on newer versions, to update the
|
|
# version field and check for extra options. Note that windows specific,
|
|
# and disabled options were not added to the manual page.
|
|
Source2: %{name}.6
|
|
|
|
Requires: %{name}-data = %{version}
|
|
BuildRequires: boost-devel
|
|
BuildRequires: cmake
|
|
BuildRequires: desktop-file-utils
|
|
BuildRequires: gamin-devel
|
|
BuildRequires: gloox-devel
|
|
BuildRequires: libcurl-devel
|
|
BuildRequires: libdnet-devel
|
|
BuildRequires: libicu-devel
|
|
BuildRequires: libjpeg-turbo-devel
|
|
BuildRequires: libpng-devel
|
|
BuildRequires: libvorbis-devel
|
|
BuildRequires: libxml2-devel
|
|
BuildRequires: libzip-devel
|
|
BuildRequires: miniupnpc-devel
|
|
BuildRequires: mozjs24-devel
|
|
%if %{with_system_nvtt}
|
|
BuildRequires: nvidia-texture-tools-devel
|
|
%endif
|
|
BuildRequires: openal-soft-devel
|
|
BuildRequires: openjpeg-devel
|
|
BuildRequires: pkgconfig
|
|
BuildRequires: python
|
|
BuildRequires: SDL-devel
|
|
BuildRequires: subversion
|
|
BuildRequires: valgrind-devel
|
|
BuildRequires: wxGTK-devel
|
|
|
|
ExclusiveArch: %{ix86} x86_64 %{arm}
|
|
|
|
# http://trac.wildfiregames.com/ticket/1421
|
|
Patch0: %{name}-rpath.patch
|
|
|
|
# Only do fcollada debug build with enabling debug maintainer mode
|
|
# It also prevents assumption there that it is building in x86
|
|
Patch1: %{name}-debug.patch
|
|
|
|
# https://bugzilla.redhat.com/show_bug.cgi?id=1141464
|
|
Patch3: %{name}-valgrind.patch
|
|
|
|
%description
|
|
0 A.D. (pronounced "zero ey-dee") is a free, open-source, cross-platform
|
|
real-time strategy (RTS) game of ancient warfare. In short, it is a
|
|
historically-based war/economy game that allows players to relive or rewrite
|
|
the history of Western civilizations, focusing on the years between 500 B.C.
|
|
and 500 A.D. The project is highly ambitious, involving state-of-the-art 3D
|
|
graphics, detailed artwork, sound, and a flexible and powerful custom-built
|
|
game engine.
|
|
|
|
The game has been in development by Wildfire Games (WFG), a group of volunteer,
|
|
hobbyist game developers, since 2001.
|
|
|
|
#-----------------------------------------------------------------------
|
|
%prep
|
|
%setup -q -n %{name}-%{version}-alpha
|
|
%patch0 -p1
|
|
%if !%{with_debug}
|
|
# disable debug build, and "int 0x3" to trap to debugger (x86 only)
|
|
%patch1 -p1
|
|
%endif
|
|
%patch3 -p1
|
|
|
|
%if %{with_system_nvtt}
|
|
rm -fr libraries/source/nvtt
|
|
%endif
|
|
|
|
rm -fr libraries/source/valgrind
|
|
|
|
#-----------------------------------------------------------------------
|
|
%build
|
|
export CFLAGS="%{optflags}"
|
|
# avoid warnings with gcc 4.7 due to _FORTIFY_SOURCE in CPPFLAGS
|
|
export CPPFLAGS="`echo %{optflags} | sed -e 's/-Wp,-D_FORTIFY_SOURCE=2//'`"
|
|
build/workspaces/update-workspaces.sh \
|
|
--bindir %{_bindir} \
|
|
--datadir %{_datadir}/%{name} \
|
|
--libdir %{_libdir}/%{name} \
|
|
--with-system-mozjs24 \
|
|
--with-system-miniupnpc \
|
|
%if %{with_system_nvtt}
|
|
--with-system-nvtt \
|
|
%endif
|
|
%if %{without_nvtt}
|
|
--without-nvtt \
|
|
%endif
|
|
%{?_smp_mflags}
|
|
|
|
make %{?_smp_mflags} -C build/workspaces/gcc config=%{config} verbose=1
|
|
|
|
#-----------------------------------------------------------------------
|
|
# Depends on availablity of nvtt
|
|
%if !%{without_nvtt}
|
|
%check
|
|
LD_LIBRARY_PATH=binaries/system binaries/system/test%{dbg} -libdir binaries/system
|
|
%endif
|
|
|
|
#-----------------------------------------------------------------------
|
|
%install
|
|
install -d -m 755 %{buildroot}%{_bindir}
|
|
install -p -m 755 binaries/system/pyrogenesis%{dbg} %{buildroot}%{_bindir}/pyrogenesis%{dbg}
|
|
|
|
install -d -m 755 %{buildroot}%{_libdir}/%{name}
|
|
for name in AtlasUI%{dbg} Collada%{dbg}; do
|
|
install -p -m 755 binaries/system/lib${name}.so %{buildroot}%{_libdir}/%{name}/lib${name}.so
|
|
done
|
|
|
|
%if !%{without_nvtt} && !%{with_system_nvtt}
|
|
for name in nvcore nvimage nvmath nvtt; do
|
|
install -p -m 755 binaries/system/lib${name}.so %{buildroot}%{_libdir}/%{name}/lib${name}.so
|
|
done
|
|
%endif
|
|
|
|
install -d -m 755 %{buildroot}%{_datadir}/appdata
|
|
install -p -m 644 build/resources/0ad.appdata.xml %{buildroot}%{_datadir}/appdata
|
|
|
|
install -d -m 755 %{buildroot}%{_datadir}/applications
|
|
install -p -m 644 build/resources/0ad.desktop %{buildroot}%{_datadir}/applications/%{name}.desktop
|
|
|
|
install -d -m 755 %{buildroot}%{_datadir}/pixmaps
|
|
install -p -m 644 build/resources/0ad.png %{buildroot}%{_datadir}/pixmaps/%{name}.png
|
|
|
|
install -d -m 755 %{buildroot}%{_datadir}/%{name}
|
|
cp -a binaries/data/* %{buildroot}%{_datadir}/%{name}
|
|
|
|
install -d -m 755 %{buildroot}%{_mandir}/man6
|
|
install -p -m 644 %{SOURCE2} %{buildroot}%{_mandir}/man6/%{name}.6
|
|
ln -sf %{name}.6 %{buildroot}%{_mandir}/man6/pyrogenesis.6
|
|
|
|
desktop-file-validate %{buildroot}%{_datadir}/applications/%{name}.desktop
|
|
|
|
cat > %{buildroot}%{_bindir}/0ad <<EOF
|
|
#!/bin/sh
|
|
|
|
cd %{_datadir}/0ad
|
|
LD_LIBRARY_PATH=%{_libdir}/0ad %{_bindir}/pyrogenesis%{dbg} "\$@"
|
|
EOF
|
|
chmod +x %{buildroot}%{_bindir}/0ad
|
|
|
|
%if %{with_debug}
|
|
export STRIP=/bin/true
|
|
%endif
|
|
|
|
#-----------------------------------------------------------------------
|
|
%files
|
|
%doc README.txt LICENSE.txt
|
|
%doc license_gpl-2.0.txt license_lgpl-2.1.txt
|
|
%{_bindir}/0ad
|
|
%{_bindir}/pyrogenesis%{dbg}
|
|
%{_libdir}/%{name}
|
|
%{_datadir}/pixmaps/%{name}.png
|
|
%{_datadir}/appdata/0ad.appdata.xml
|
|
%{_datadir}/applications/%{name}.desktop
|
|
%{_datadir}/%{name}
|
|
%{_mandir}/man6/*.6*
|
|
|
|
%changelog
|
|
* Sun Oct 12 2014 pcpa <paulo.cesar.pereira.de.andrade@gmail.com> - 0.0.17-1
|
|
- Update to latest upstream release
|
|
- Remove no longer needed miniupnpc patch
|
|
- Remove backport changeset_15334 patch
|
|
|
|
* Sun Sep 14 2014 pcpa <paulo.cesar.pereira.de.andrade@gmail.com> - 0.0.16-11
|
|
- Remove unused valgrind sources and use system valgrind.h (#1141464)
|
|
|
|
* Thu Aug 28 2014 David Tardon <dtardon@redhat.com> - 0.0.16-10
|
|
- rebuild for ICU 53.1
|
|
|
|
* Fri Aug 15 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.0.16-9
|
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
|
|
|
|
* Fri Aug 15 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.0.16-8
|
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
|
|
|
|
* Wed Jul 23 2014 pcpa <paulo.cesar.pereira.de.andrade@gmail.com> - 0.0.16-7
|
|
- Rebuild for latest gloox
|
|
|
|
* Wed Jun 18 2014 pcpa <paulo.cesar.pereira.de.andrade@gmail.com> - 0.0.16-6
|
|
- Add proper patch for gcc 4.9 build
|
|
|
|
* Fri Jun 6 2014 Peter Robinson <pbrobinson@fedoraproject.org> 0.0.16-5
|
|
- Remove old Fedora release conditionals
|
|
|
|
* Fri Jun 06 2014 Dennis Gilmore <dennis@ausil.us> - 0.0.16-4
|
|
- add %%{arm} tp the ExclusiveArch list
|
|
|
|
* Fri Jun 06 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.0.16-3
|
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
|
|
|
|
* Fri May 23 2014 Petr Machata <pmachata@redhat.com> - 0.0.16-2
|
|
- Rebuild for boost 1.55.0
|
|
|
|
* Sat May 17 2014 Kalev Lember <kalevlember@gmail.com> - 0.0.16-1
|
|
- Update to latest upstream release
|
|
|
|
* Mon May 5 2014 pcpa <paulo.cesar.pereira.de.andrade@gmail.com> - 0.0.15-5
|
|
- Rebuild for newer enet
|
|
|
|
* Fri Apr 18 2014 pcpa <paulo.cesar.pereira.de.andrade@gmail.com> - 0.0.15-4
|
|
- Add workaround for %%check failure with gcc 4.9 on i686
|
|
|
|
* Fri Apr 18 2014 pcpa <paulo.cesar.pereira.de.andrade@gmail.com> - 0.0.15-3
|
|
- Rebuild with minupnpc 1.9
|
|
|
|
* Tue Jan 21 2014 pcpa <paulo.cesar.pereira.de.andrade@gmail.com> - 0.0.15-2
|
|
- Rebuild for latest gloox
|
|
|
|
* Fri Dec 27 2013 pcpa <paulo.cesar.pereira.de.andrade@gmail.com> - 0.0.15-1
|
|
- Update to latest upstream release
|
|
- Add new gloox and minupnpc build requires
|
|
- Use 0ad.appdata.xml from upstream tarball
|
|
|
|
* Sat Oct 12 2013 pcpa <paulo.cesar.pereira.de.andrade@gmail.com> - 0.0.14-2
|
|
- Install appdata file (#1018385)
|
|
|
|
* Thu Sep 5 2013 pcpa <paulo.cesar.pereira.de.andrade@gmail.com> - 0.0.14-1
|
|
- Update to latest upstream release
|
|
|
|
* Wed Aug 7 2013 pcpa <paulo.cesar.pereira.de.andrade@gmail.com> - 0.0.13-8
|
|
- Make package x86_64 and ix86 only as arm support is not finished.
|
|
|
|
* Wed Aug 7 2013 pcpa <paulo.cesar.pereira.de.andrade@gmail.com> - 0.0.13-7
|
|
- Correct build with boost 1.54.0 (#991906).
|
|
|
|
* Fri Aug 02 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.0.13-6
|
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild
|
|
|
|
* Sat Jul 27 2013 pmachata@redhat.com - 0.0.13-5
|
|
- Rebuild for boost 1.54.0
|
|
|
|
* Thu Jun 27 2013 Bruno Wolff III <bruno@wolff.to> - 0.0.13-4
|
|
- Rebuild for enet soname change
|
|
|
|
* Sat Jun 15 2013 Bruno Wolff III <bruno@wolff.to> - 0.0.13-3
|
|
- Rebuild for enet 1.3.8 soname bump
|
|
|
|
* Sat Apr 27 2013 Bruno Wolff III <bruno@wolff.to> - 0.0.13-2
|
|
- Rebuild for enet 1.3.7 soname bump
|
|
|
|
* Wed Apr 3 2013 pcpa <paulo.cesar.pereira.de.andrade@gmail.com> - 0.0.13-1
|
|
- Update to latest upstream release
|
|
- Update the manual page for new and renamed options
|
|
- Regenerate the licensecheck text file and patches
|
|
|
|
* Sun Feb 10 2013 Denis Arnaud <denis.arnaud_fedora@m4x.org> - 0.0.12-5
|
|
- Rebuild for Boost-1.53.0
|
|
|
|
* Sat Feb 09 2013 Denis Arnaud <denis.arnaud_fedora@m4x.org> - 0.0.12-4
|
|
- Rebuild for Boost-1.53.0
|
|
|
|
* Fri Jan 18 2013 Adam Tkac <atkac redhat com> - 0.0.12-3
|
|
- rebuild due to "jpeg8-ABI" feature drop
|
|
|
|
* Wed Dec 19 2012 pcpa <paulo.cesar.pereira.de.andrade@gmail.com> - 0.0.12-2
|
|
- Enable build with system nvtt as it is now approved in Fedora (#823096)
|
|
- Correct release date in manual page
|
|
- Minor consistency correction in manual page formatting
|
|
- Regenerate the licensecheck text file to match pristine tarball
|
|
|
|
* Tue Dec 18 2012 pcpa <paulo.cesar.pereira.de.andrade@gmail.com> - 0.0.12-1
|
|
- Update to latest upstream release
|
|
- Remove no longer required gamin patch
|
|
- Rediff rpath patch
|
|
- Remove libxml2 patch already applied upstream
|
|
- Update 0ad manpage for newer options and release information
|
|
- Add versioned requires to data files
|
|
- Add 0ad licensecheck text file to simplify checking changes
|
|
|
|
* Sat Nov 3 2012 pcpa <paulo.cesar.pereira.de.andrade@gmail.com> - 0.0.11-4
|
|
- Add %%with_debug maintainer mode build
|
|
- Disable fcollada debug build if %%with_debug is false
|
|
- Add patch to not crash and display helful messages in editor (#872801)
|
|
|
|
* Tue Sep 11 2012 pcpa <paulo.cesar.pereira.de.andrade@gmail.com> - 0.0.11-3
|
|
- Clarify source tree licenses information in spec (#818401)
|
|
- Preserve time stamp of installed files (#818401)
|
|
|
|
* Sat Sep 8 2012 pcpa <paulo.cesar.pereira.de.andrade@gmail.com> - 0.0.11-2
|
|
- Correct manpage group and symlink 0ad manual to pyrogenesis manual (#818401)
|
|
- Correct some typos and wrong information in 0ad.6
|
|
|
|
* Sat Sep 8 2012 pcpa <paulo.cesar.pereira.de.andrade@gmail.com> - 0.0.11-1
|
|
- Update to latest upstream release
|
|
- Switch to new versioning pattern
|
|
- Remove rpath patch already applied upstream
|
|
- Remove without-nvtt patch already applied upstream
|
|
- Remove boost patch already applied upstream
|
|
- Remake rpath patch to avoid package build special conditions
|
|
|
|
* Thu Sep 6 2012 pcpa <paulo.cesar.pereira.de.andrade@gmail.com> - r11863-6
|
|
- Repackage tarball to not redistribute patented s3tc implementation (#818401)
|
|
- Add patch to rebuild with newer libxml2.
|
|
- Add upstream trac patch for build with newer boost.
|
|
- Rename patches to remove %%version and use %%name in source files.
|
|
|
|
* Fri Jul 13 2012 pcpa <paulo.cesar.pereira.de.andrade@gmail.com> - r11863-5
|
|
- Clearly state nvtt is not mean't to be used (unless user build from sources).
|
|
- Update to use patch in wildfire trac instead of my patch to remove rpath.
|
|
|
|
* Fri Jun 1 2012 pcpa <paulo.cesar.pereira.de.andrade@gmail.com> - r11863-4
|
|
- Actually remove %%defattr.
|
|
- Correct wrong fedora release check for enet-devel build requires.
|
|
|
|
* Sat May 26 2012 pcpa <paulo.cesar.pereira.de.andrade@gmail.com> - r11863-4
|
|
- Make package build in Fedora 16 (rpmfusion #2342).
|
|
- Add conditionals to build with or without system nvtt or disable nvtt.
|
|
|
|
* Tue May 22 2012 pcpa <paulo.cesar.pereira.de.andrade@gmail.com> - r11863-3
|
|
- Remove %%defattr from spec (#823096).
|
|
- Run desktop-file-validate (#823096).
|
|
|
|
* Mon May 21 2012 pcpa <paulo.cesar.pereira.de.andrade@gmail.com> - r11863-2
|
|
- Disable dependency on nvidia-texture-tools (#823096).
|
|
- Disable %%check as it requires nvtt.
|
|
- Add manual page.
|
|
|
|
* Sat May 19 2012 pcpa <paulo.cesar.pereira.de.andrade@gmail.com> - r11863-1
|
|
- Correct package license.
|
|
- Update to latest upstream release.
|
|
- Remove license_dbghelp.txt as dbghelp.dll is not in sources neither installed.
|
|
|
|
* Tue May 1 2012 pcpa <paulo.cesar.pereira.de.andrade@gmail.com> - r11339-1
|
|
- Initial 0ad spec.
|