%define q3dir %{buildroot}%{_libdir}/ioquake3 #define svnrev 1486 Name: ioquake3 %define with_installer %{?_with_installer:1}%{!?_with_installer:0} BuildRequires: SDL-devel curl-devel nasm openal-devel %if 0%{?mandriva_version} BuildRequires: mesagl-devel mesaglu-devel openal-devel # XXX: ambiguous requirement of alsa-plugins BuildRequires: libspeex %else %endif %if 0%{?fedora_version} || 0%{?rhel_version} || 0%{?centos_version} # XXX bug in openal-devel, should be worked around in build config BuildRequires: openal-devel %endif %if %with_installer BuildRequires: loki_setup xdg-utils %endif License: GPLv2+ URL: http://www.ioquake3.org/ Group: Games/Arcade # don't forget to change the version in the win32 spec file as well! Version: 1.36 %define rel 1 %if %{?svnrev:1}%{?!svnrev:0} Release: %mkrel %rel -c %{svnrev} %else Release: %mkrel %rel %endif Summary: Quake III BuildRoot: %{_tmppath}/%{name}-%{version}-build #Source: ioquake3-%{version}%{?svnrev:_SVN%{svnrev}}.tar.bz2 Source: ioquake3-%{version}.tar.bz2 Patch0: fix_printf_asm_tool.patch %if %with_installer Recommends: openal %endif %package devel License: GPLv2+ Summary: Quake III Group: Development/Other %if %with_installer %package setup License: GPLv2+ Summary: Quake III loki-setup based installer Group: Games/Arcade %endif %description Quake III first person shooter. This package only includes the binary files, you still need the data files from the original Quake III CD or the Demo. Authors: -------- Id Software, Inc. %description devel Quake III development tools for creating mods: q3lcc, q3rcc, q3cpp, q3asm Authors: -------- Id Software, Inc. %if %with_installer %description setup Quake III first person shooter. This package includes the binary files repackaged as loki-setup installer Authors: -------- Id Software, Inc. %endif %prep #%setup -q -n %{name}-%{version}%{?svnrev:_SVN%{svnrev}} %setup -q -n %{name}-%{version} rm -rf code/SDL12 code/libs code/AL %patch0 -p1 %build cat > dobuild <<'EOF' #!/bin/sh make %{?jobs:-j%jobs} \ VERSION=%{version} \ RELEASE=%{release} \ OPTIMIZE="%{optflags} -O3 -ffast-math -fno-strict-aliasing" \ TOOLS_OPTIMIZE="%{optflags} -fno-strict-aliasing" \ GENERATE_DEPENDENCIES=0 \ USE_LOCAL_HEADERS=0 \ %if %with_installer USE_OPENAL_DLOPEN=1 \ %endif V=1 \ "$@" EOF chmod 755 dobuild # ./dobuild release # %if %with_installer ./dobuild installer %endif # %install rm -rf %{buildroot} arch=`uname -m` case $arch in i?86) arch=i386 ;; esac install -d -m 755 %{q3dir} install -d -m 755 %{q3dir}/baseq3/vm install -d -m 755 %{q3dir}/demoq3 install -d -m 755 %{q3dir}/missionpack/vm pushd build/release-linux-$arch/ install -m 755 ioquake3.$arch %{q3dir}/ #install -m 755 linuxquake3-smp %{q3dir}/ioquake3-smp.$arch install -m 755 ioq3ded.$arch %{q3dir}/ install -m 644 baseq3/*.so %{q3dir}/baseq3 install -m 644 baseq3/vm/*.qvm %{q3dir}/baseq3/vm pushd %{q3dir}/demoq3 ln -s ../baseq3/*.so . popd install -m 644 missionpack/*.so %{q3dir}/missionpack install -m 644 missionpack/vm/*.qvm %{q3dir}/missionpack/vm popd # # icons and start scripts install -d -m 755 %{buildroot}%{_bindir} install -d -m 755 %{buildroot}%{_datadir}/pixmaps install -d -m 755 %{buildroot}%{_datadir}/applications install -m 644 misc/quake3.png %{buildroot}%{_datadir}/pixmaps install -m 644 misc/setup/ioquake3.desktop %{buildroot}%{_datadir}/applications/ioquake3.desktop install -m 755 misc/setup/ioq3demo.sh %{q3dir}/ install -m 755 misc/setup/ioquake3.sh %{q3dir}/ # COOLO! *grr* #ln -s %{_prefix}/lib/quake3/ioq3demo.sh %{buildroot}%{_bindir}/ioq3demo #ln -s %{_prefix}/lib/quake3/ioquake3.sh %{buildroot}%{_bindir}/ioquake3 for i in ioq3demo ioquake3; do echo -e "#!/bin/sh\nexec /usr/lib/ioquake3/$i.sh \"\$@\"" > %{buildroot}%{_bindir}/$i chmod 755 %{buildroot}%{_bindir}/$i done # # devel tools install -d -m 755 %{buildroot}%{_bindir} install -m 755 build/release-linux-$arch/tools/q3{lcc,cpp,rcc,asm} %{buildroot}%{_bindir} # # installer %if %with_installer install -d -m 755 %{buildroot}/%{_gamesbindir} install -m 755 misc/setup/*.run %{buildroot}/%{_gamesbindir} %endif %clean rm -rf %{buildroot} %post %files %defattr(-,root,root) %doc COPYING.txt README id-readme.txt %doc voip-readme.txt %{_bindir}/ioq* %{_libdir}/ioquake3 %{_datadir}/applications/* %{_datadir}/pixmaps/* %files devel %defattr(-,root,root) %doc code/tools/lcc/COPYRIGHT %{_bindir}/q3* %if %with_installer %files setup %defattr(-,root,root) %{_prefix}/games/* %endif %changelog * Mon Sep 28 2009 Juan Luis Baptiste <juancho@mandriva.org> 1.36-1mdv2010.0 + Revision: 450586 - Patch to fix compilation issue from 1.36 - Added back TOOLS_OPTIMIZE to make options and patched code to make it compile with -Werror=format-security - Removed a forgotten debug print message. - Updated to 1.36. Removed TOOLS_OPTIMIZE from make options as expanded flags from %%{optflags} break compilation. + Thierry Vignaud <tvignaud@mandriva.com> - rebuild * Fri Dec 05 2008 Zombie Ryushu <ryushu@mandriva.org> 1.35-0.1486.1mdv2009.1 + Revision: 310695 - Fix Invalid Group - Fix License Tags - Fix OpenAL BuildRequires - import ioquake3 + Buchan Milne <bgmilne@mandriva.org> - Fix snapshot versioning - Buildrequire openal-devel * Mon Nov 10 2008 lnussel@suse.de - update to SVN1486 in trunk * Wed Nov 5 2008 lnussel@suse.de - update to SVN1481 in trunk * Fri Sep 12 2008 lnussel@suse.de - update to SVN1470 in trunk * Wed Sep 3 2008 lnussel@suse.de - update to SVN1469 in trunk * Wed Aug 20 2008 lnussel@suse.de - update to SVN1450 in trunk * Sat Aug 9 2008 lnussel@suse.de - update to SVN 1443 in trunk * Thu Jul 17 2008 lnussel@suse.de - update to SVN 1429 in trunk * Wed Jul 16 2008 lnussel@suse.de - update to SVN 1427 in trunk * Sun Jul 6 2008 lnussel@suse.de - update to SVN 1419 in trunk * Sun Jul 6 2008 lnussel@suse.de - update to SVN 1413 in trunk * Sat Jul 5 2008 lnussel@suse.de - update to SVN 1403 in trunk * Wed Jun 25 2008 lnussel@suse.de - update to SVN 1398 in trunk * Wed Jun 25 2008 lnussel@suse.de - update to SVN 1394 in trunk * Sun Jun 8 2008 lnussel@suse.de - update to SVN 1382 in trunk * now support voice activation for voip * Sat Jun 7 2008 lnussel@suse.de - update to SVN 1371 in trunk - use upstream desktop file * Thu Jun 5 2008 lnussel@suse.de - update to SVN 1369 in trunk * Tue Jun 3 2008 lnussel@suse.de - update to SVN 1363 in trunk - includes voip support * Sat May 31 2008 lnussel@suse.de - update to SVN 1347 in trunk - use dlopen for libopenal in installer build * Wed May 7 2008 lnussel@suse.de - update to SVN 1341 in trunk * Sat May 3 2008 lnussel@suse.de - update to SVN 1337 in trunk * Mon Apr 28 2008 lnussel@suse.de - update to SVN 1332 in trunk * supports stereoscopic view * Tue Apr 22 2008 lnussel@suse.de - update to SVN 1324 in trunk * Tue Apr 15 2008 lnussel@suse.de - update to SVN 1321 in trunk * Sat Apr 12 2008 lnussel@suse.de - update to SVN 1318 in trunk * Thu Apr 10 2008 lnussel@suse.de - update to SVN 1307 in trunk * Mon Apr 7 2008 lnussel@suse.de - update to SVN 1303 in trunk * Sun Apr 6 2008 lnussel@suse.de - update to SVN 1300 in trunk * Sat Apr 5 2008 lnussel@suse.de - update to SVN 1294 in trunk * Sat Apr 5 2008 lnussel@suse.de - update to SVN 1290 in trunk * initial ipv6 support * Fri Mar 28 2008 lnussel@suse.de - update to SVN 1287 in trunk * Thu Mar 27 2008 lnussel@suse.de - update to SVN 1286 in trunk * Fri Mar 21 2008 lnussel@suse.de - update to SVN 1272 in trunk * Sun Mar 9 2008 lnussel@suse.de - update to SVN 1270 in trunk * Wed Jan 23 2008 lnussel@suse.de - update to SVN 1250 in trunk * fixes several format string bugs * Wed Jan 9 2008 lnussel@suse.de - update to SVN 1248 in trunk * Sat Dec 8 2007 lnussel@suse.de - update to SVN 1231 in trunk * Fri Nov 16 2007 lnussel@suse.de - update to SVN 1212 in trunk * Tue Oct 23 2007 lnussel@suse.de - update to SVN 1201 in trunk * Fri Oct 5 2007 lnussel@suse.de - update to SVN 1189 in trunk * Tue Sep 11 2007 lnussel@suse.de - update to SVN 1176 in trunk * Thu Sep 6 2007 lnussel@suse.de - update to SVN 1166 in trunk * Mon Aug 27 2007 lnussel@suse.de - update to SVN 1138 in trunk * Sun Aug 19 2007 lnussel@suse.de - update to SVN 1126 in trunk * Wed Jul 4 2007 lnussel@suse.de - update to SVN 1106 in trunk - update vm_x86_64 assembler patch * Fri Jun 29 2007 lnussel@suse.de - update to SVN 1103 in trunk - add experimental vm_x86_64 assembler patch * Fri May 11 2007 lnussel@suse.de - update to SVN 1083 in trunk * Tue Jan 23 2007 lnussel@suse.de - update to SVN 1036 in trunk - rename to ioquake3 * Fri Dec 1 2006 lnussel@suse.de - update to SVN 996 in 1.34 branch (1.34RC3) * Thu Oct 26 2006 lnussel@suse.de - update to SVN 955 in 1.34 branch * fixes wrong use of strncat - disable installer * Tue Sep 5 2006 lnussel@suse.de - update to SVN 892 (1.34RC2) * Mon Jun 5 2006 lnussel@suse.de - update to SVN 797 * fixes buffer overflow in CL_ParseDownload * fixes ppc vm * Mon May 8 2006 lnussel@suse.de - update to SVN 777 * fixes directory traversal bug (CVE-2006-2082) * Sat May 6 2006 lnussel@suse.de - update to SVN 772 * fixes exploitable buffer overflow (CVE-2006-2236) * Thu Mar 9 2006 lnussel@suse.de - update to current SVN * fixes among other things SEGV on i386 without READ_IMPLIES_EXEC * Tue Feb 21 2006 lnussel@suse.de - update to current SVN - add desktop file and start script * Mon Jan 30 2006 ro@suse.de - added Mesa-devel to BuildRequires * Wed Jan 25 2006 mls@suse.de - converted neededforbuild to BuildRequires * Tue Jan 17 2006 lnussel@suse.de - update to current SVN * offending EULA removed (#136922) * Thu Dec 1 2005 lnussel@suse.de - update to current SVN * quake3-setup subpackage builds installer for upstream * Mon Nov 14 2005 lnussel@suse.de - update to current SVN * with openal support * Thu Nov 3 2005 lnussel@suse.de - update to current SVN * Sun Oct 9 2005 lnussel@suse.de - update to current SVN - add devel subpackage that contains qvm compiler and assembler * Fri Sep 9 2005 lnussel@suse.de - update to current SVN * supposed to fix soundlag * works on 16bit displays * Thu Sep 1 2005 lnussel@suse.de - update to current SVN, now with SDL sound * Wed Aug 31 2005 lnussel@suse.de - new package