LOG New version 0.0.11 (sync with Cooker), minor spec cleanups

This commit is contained in:
Andrey Bondrov 2012-10-07 19:14:06 +11:00
parent 0e65d98fdd
commit f7f4da6571
6 changed files with 299 additions and 34 deletions

View file

@ -1,2 +1,2 @@
sources:
"0ad-r11863-alpha-unix-build.tar.xz": e52a2a86b585d9bb6fee38ec7a1964b1a704c367
"0ad-0.0.11-alpha-unix-build.tar.xz": b7696e0f6e6b0c3e222aa46b532943af1fe64435

19
0ad-libxml2.patch Normal file
View file

@ -0,0 +1,19 @@
diff -up 0ad-0.0.11-alpha/libraries/fcollada/src/FColladaPlugins/FArchiveXML/FArchiveXML.cpp.orig 0ad-0.0.11-alpha/libraries/fcollada/src/FColladaPlugins/FArchiveXML/FArchiveXML.cpp
--- 0ad-0.0.11-alpha/libraries/fcollada/src/FColladaPlugins/FArchiveXML/FArchiveXML.cpp.orig 2012-09-08 09:56:56.532955316 -0300
+++ 0ad-0.0.11-alpha/libraries/fcollada/src/FColladaPlugins/FArchiveXML/FArchiveXML.cpp 2012-09-08 09:57:27.200987159 -0300
@@ -523,8 +523,13 @@ bool FArchiveXML::EndExport(fm::vector<u
xmlOutputBufferPtr buf = xmlAllocOutputBuffer(NULL);
xmlNodeDumpOutput(buf, rootNode->doc, rootNode, 0, 0, NULL);
- outData.resize(buf->buffer->use * sizeof(xmlChar));
- memcpy(outData.begin(), buf->buffer->content, outData.size());
+#ifdef LIBXML2_NEW_BUFFER
+ outData.resize(xmlOutputBufferGetSize(buf) * sizeof(xmlChar));
+ memcpy(outData.begin(), xmlOutputBufferGetContent(buf), outData.size());
+#else
+ outData.resize(buf->buffer->use * sizeof(xmlChar));
+ memcpy(outData.begin(), buf->buffer->content, outData.size());
+#endif
xmlOutputBufferClose(buf);
daeDocument.ReleaseXmlData();

30
0ad-rpath.patch Normal file
View file

@ -0,0 +1,30 @@
diff -up 0ad-0.0.11-alpha/build/premake/premake4.lua.orig 0ad-0.0.11-alpha/build/premake/premake4.lua
--- 0ad-0.0.11-alpha/build/premake/premake4.lua.orig 2012-09-08 10:11:31.662784857 -0300
+++ 0ad-0.0.11-alpha/build/premake/premake4.lua 2012-09-08 10:11:41.465795036 -0300
@@ -308,26 +308,6 @@ function project_set_build_flags()
defines { "INSTALLED_LIBDIR=" .. _OPTIONS["libdir"] }
end
- if os.is("linux") or os.is("bsd") then
- -- To use our local shared libraries, they need to be found in the
- -- runtime dynamic linker path. Add their path to -rpath.
- if _OPTIONS["libdir"] then
- linkoptions {"-Wl,-rpath," .. _OPTIONS["libdir"] }
- else
- -- On FreeBSD we need to allow use of $ORIGIN
- if os.is("bsd") then
- linkoptions { "-Wl,-z,origin" }
- end
-
- -- Adding the executable path and taking care of correct escaping
- if _ACTION == "gmake" then
- linkoptions { "-Wl,-rpath,'$$ORIGIN'" }
- elseif _ACTION == "codeblocks" then
- linkoptions { "-Wl,-R\\\\$$ORIGIN" }
- end
- end
- end
-
end
end

144
0ad.6 Normal file
View file

@ -0,0 +1,144 @@
.TH 0AD "1" "Sep 8 2012" "0ad 0.0.11" "User Commands"
.SH NAME
0ad \- manual page for 0ad 0.0.11
.SH SYNOPSIS
.B 0ad
[\fIoptions\fR]
.SH 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.
.PP
Basic gameplay:
.TP
\fB\-autostart\fR
load a map instead of showing main menu (see below)
.TP
\fB\-editor\fR
launch the Atlas scenario editor
.TP
\fB\-mod\fR \fINAME\fR
start the game using \fINAME\fR mod
.TP
\fB\-quickstart\fR
load faster (disables audio and some system info logging)
.PP
Autostart:
.TP
\fB\-autostart\fR=\fINAME\fR
map \fINAME\fR for scenario, or rms name for random map
.TP
\fB\-autostart-ai\fR=\fIPLAYER\fR:\fIAI\fR
adds named \fIAI\fR to the given \fIPLAYER\fR (e.g. 2:testbot)
.PP
Multiplayer:
.TP
\fB\-autostart-playername\fR=\fINAME\fR
multiplayer local player \fINAME\fR (default 'anonymous')
.TP
\fB\-autostart-host\fR
multiplayer host mode
.TP
\fB\-autostart-players\fR=\fINUMBER\fR
multiplayer host: \fINUMBER\fR of client players (default 2)
.TP
\fB\-autostart-client\fR
multiplayer client mode
.TP
\fB\-autostart-ip\fR=\fIIP\fR
multiplayer client: connect to this host \fIIP\fR
.PP
Random maps only:
.TP
\fB\-autostart-random\fR
random map
.TP
\fB\-autostart-random\fR=\fISEED\fR
random map with \fISEED\fR value (default 0, use -1 for random)
.TP
\fB\-autostart-size\fR=\fITILES\fR
random map \fISIZE\fR in tiles (default 192)
.TP
\fB\-autostart-players\fR=\fINUMBER\fI
\fINUMBER\fR of players on random map
.PP
Configuration:
.TP
\fB\-conf\fR:\fIKEY\fR=\fIVALUE\fR
set a config value (overrides the contents of system.cfg)
.TP
\fB\-g\fR=\fIF\fR
set the gamma correction to '\fIF\fR' (default 1.0)
.TP
\fB\-nosound\fR
disable audio
.TP
\fB\-onlyPublicFiles\fR
force game to use only the public (default) mod
.TP
\fB\-shadows\fR
enable shadows
.TP
\fB\-vsync\fR
enable VSync, i.e. lock FPS to monitor refresh rate
.TP
\fB\-xres\fR=\fIN\fR
set screen \fIX\fR resolution to '\fIN\fR'
.TP
\fB\-yres\fR=\fIN\fR
set screen \fIY\fR resolution to '\fIN\fR'
.PP
Advanced / diagnostic:
.TP
\fB\-dumpSchema\fR
creates a file entity.rng in the working directory, containing
complete entity XML schema, used by various analysis tools
.TP
\fB\-replay\fR=\fIPATH\fR
non-visual replay of a previous game, used for analysis purposes
\fIPATH\fR is system path to commands.txt containing simulation log
.TP
\fB\-writableRoot\fR
store runtime game data in root data directory
(only use if you have write permissions on that directory)
.PP
Archive builder:
.TP
\fB\-archivebuild\fR=\fIPATH\fR
system \fIPATH\fR of the base directory containing mod data to be archived/precached
.TP
\fB\-archivebuild-output\fR=\fIPATH\fR
system \fIPATH\fR to output of the resulting .zip archive (use with archivebuild)
.TP
\fB\-archivebuild-compress\fR
enable deflate compression in the .zip
(no zip compression by default since it hurts compression of release packages)
.SH "REPORTING BUGS"
Bugs should be reported on Trac: http://trac.wildfiregames.com/
.br
On Linux / OS X: If the game detects an error, it should generate crashlog.txt
in ~/.config/0ad/logs/ . If it doesn't, it should at least print some
information on stdout. Attach crashlog.txt or the other information to the
bug report. It might also help to run the game in gdb and copy the output of
the "bt full" command, if possible.
.SH COPYRIGHT
0 A.D. is released as open source: you can freely use, copy, modify and
distribute the game's source code and data files, as long as you include
attribution to Wildfire Games and let anyone freely modify and distribute any
of your own modifications to the game's files.

138
0ad.spec
View file

@ -1,5 +1,10 @@
# http://trac.wildfiregames.com/wiki/BuildInstructions#Linux
# conditionals left for the sake of users building from source, but
# nvtt (due to s3tc patented code) is not supported and not built.
%global with_system_nvtt 0
%global without_nvtt 1
%bcond_with debug
%if %{with debug}
%define config debug
@ -15,50 +20,84 @@
%define debug_package %{nil}
%endif
Name: 0ad
Name: 0ad
Epoch: 1
Version: r11863
%if %mdkversion >= 201100
Release: 0.4
Version: 0.0.11
Release: 3
# BSD License:
# build/premake/*
# libraries/valgrind/* (not built/used)
# MIT License:
# libraries/enet/*
# libraries/fcollada/*
# source/third_party/*
# LGPLv2+
# libraries/cxxtest/* (not built/used)
# GPLv2+
# source/*
# IBM
# source/tools/fontbuilder2/Packer.py
# MPL-1.1
# libraries/spidermonkey/* (not built/used)
License: GPLv2+ and BSD and MIT and IBM
Group: Games/Strategy
Summary: Cross-Platform RTS Game of Ancient Warfare
Url: http://wildfiregames.com/0ad/
%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
Release: %mkrel 0.4
Source0: http://releases.wildfiregames.com/%{name}-%{version}-alpha-unix-build.tar.xz
%endif
License: GPLv2+
Group: Games/Strategy
Summary: Cross-Platform RTS Game of Ancient Warfare
Url: http://wildfiregames.com/0ad/
Source: http://releases.wildfiregames.com/0ad-%{version}-alpha-unix-build.tar.xz
Requires: 0ad-data
BuildRequires: boost-devel
BuildRequires: cmake
BuildRequires: desktop-file-utils
BuildRequires: devil-devel
BuildRequires: gamin-devel
BuildRequires: gcc-c++
# 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.
Source1: %{name}.6
Requires: %{name}-data
BuildRequires: boost-devel
BuildRequires: cmake
BuildRequires: desktop-file-utils
BuildRequires: devil-devel
BuildRequires: gamin-devel
BuildRequires: gcc-c++
BuildRequires: jpeg-devel
BuildRequires: libdnet-devel
BuildRequires: libjpeg-devel
BuildRequires: libpng-devel
BuildRequires: libvorbis-devel
BuildRequires: libxml2-devel
BuildRequires: nasm
BuildRequires: pkgconfig
BuildRequires: jpeg-devel
BuildRequires: pkgconfig(libpng)
BuildRequires: pkgconfig(vorbis)
BuildRequires: pkgconfig(libxml-2.0)
BuildRequires: nasm
%if %{with_system_nvtt}
BuildRequires: nvidia-texture-tools
%endif
BuildRequires: pkgconfig(libcurl)
BuildRequires: pkgconfig(libenet)
BuildRequires: pkgconfig(libpng)
BuildRequires: pkgconfig(libzip)
BuildRequires: pkgconfig(mozjs185)
BuildRequires: pkgconfig(openal)
BuildRequires: python
BuildRequires: SDL-devel
BuildRequires: subversion
#BuildRequires: wxGTK-devel
BuildRequires: wxgtku-devel
BuildRequires: python
BuildRequires: pkgconfig(sdl)
BuildRequires: subversion
BuildRequires: wxgtku-devel
# FAMMonitorDirectory fails if passing a relative directory
# Use FAMNoExists (gamin specific to speed up a little bit initialization
# as commented in the source)
Patch0: 0ad-r10803-gamin.patch
Patch0: %{name}-gamin.patch
# http://trac.wildfiregames.com/ticket/1421
Patch1: %{name}-rpath.patch
# Build with newer libxml2
Patch2: %{name}-libxml2.patch
%description
0 A.D. (pronounced "zero ey-dee") is a free, open-source, cross-platform
@ -75,26 +114,38 @@ hobbyist game developers, since 2001.
#-----------------------------------------------------------------------
%prep
%setup -q -n %{name}-%{version}-alpha
%patch0 -p1
%patch1 -p1
%patch2 -p1
#-----------------------------------------------------------------------
%build
export CFLAGS="%{optflags}"
export CPPFLAGS="%{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 %{_gamesbindir} \
--datadir %{_gamesdatadir}/%{name} \
--libdir %{_libdir}/%{name} \
--with-system-enet \
--with-system-mozjs185 \
%if %{with_system_nvtt}
--with-system-nvtt \
%endif
%if %{without_nvtt}
--without-nvtt \
%endif
%{_smp_mflags}
%make -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
@ -102,14 +153,20 @@ install -d -m 755 %{buildroot}%{_gamesbindir}
install -m 755 binaries/system/pyrogenesis%{dbg} %{buildroot}%{_gamesbindir}/pyrogenesis%{dbg}
install -d -m 755 %{buildroot}%{_libdir}/%{name}
for name in AtlasUI%{dbg} Collada%{dbg} nvcore nvimage nvmath nvtt; do
for name in AtlasUI%{dbg} Collada%{dbg}; do
install -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}%{_gamesdatadir}/applications
install -m 644 build/resources/0ad.desktop %{buildroot}%{_gamesdatadir}/applications/%{name}.desktop
perl -pi -e 's|%{_bindir}/0ad|%{_gamesbindir}/0ad|;' \
%{buildroot}%{_gamesdatadir}/applications/%{name}.desktop
perl -pi -e 's|%{_bindir}/0ad|%{_gamesbindir}/0ad|;' \
%{buildroot}%{_gamesdatadir}/applications/%{name}.desktop
install -d -m 755 %{buildroot}%{_gamesdatadir}/pixmaps
install -m 644 build/resources/0ad.png %{buildroot}%{_gamesdatadir}/pixmaps/%{name}.png
@ -117,6 +174,10 @@ install -m 644 build/resources/0ad.png %{buildroot}%{_gamesdatadir}/pixmaps/%{na
install -d -m 755 %{buildroot}%{_gamesdatadir}/%{name}
cp -a binaries/data/* %{buildroot}%{_gamesdatadir}/%{name}
install -d -m 755 %{buildroot}%{_mandir}/man6
install -p -m 644 %{SOURCE1} %{buildroot}%{_mandir}/man6/%{name}.6
ln -sf %{name}.6 %{buildroot}%{_mandir}/man6/pyrogenesis.6
mkdir -p %{buildroot}%{_datadir}
mv -f %{buildroot}%{_gamesdatadir}/{pixmaps,applications} %{buildroot}%{_datadir}
@ -142,9 +203,20 @@ export EXCLUDE_FROM_FULL_STRIP="libAtlasUI_dbg.so libCollada_dbg.so pyrogenesis_
%{_datadir}/pixmaps/%{name}.png
%{_datadir}/applications/%{name}.desktop
%{_gamesdatadir}/%{name}
%{_mandir}/man6/*.6*
%changelog
* Fri Sep 28 2012 Paulo Andrade <pcpa@mandriva.com.br> 1:0.0.11-2
+ Revision: 817861
- Do not build s3tc patent infringing code.
- Remove s3tc from implementation from main tarball.
- Sync with fedora package.
- Add patch to allow rebuilding when updating to newer libxml2.
+ Sergey Zhemoitel <serg@mandriva.org>
- update to 0.0.11 Alpha
* Fri Jun 29 2012 Bernhard Rosenkraenzer <bero@bero.eu> 1:r11863-0.4
+ Revision: 807484
- Update to alpha 10 (aka 11863)