File ioquake3-win32.spec of Package ioquake3-win32

#
# spec file for package ioquake3 (Version 1.35_SVN1189)
#
# Copyright (c) 2007 SUSE LINUX Products GmbH, Nuernberg, Germany.
# This file and all modifications and additions to the pristine
# package are under the same license as the package itself.
#
# Please submit bugfixes or comments via http://bugs.opensuse.org/
#

# norootforbuild

%if 0%{?_without_installer:1}
%define with_installer_default 0
%else
%if 0%{?opensuse_bs}
%define with_installer_default 1
%else
%define with_installer_default 0
%endif
%endif
%define with_installer %{?_with_installer:1}%{!?_with_installer:%with_installer_default}
#
BuildRequires:  pkgconfig
BuildRequires:  cross-mingw-binutils cross-mingw-gcc cross-mingw-runtime cross-mingw-w32api
BuildRequires:  nasm
BuildRequires:  SDL-win32
BuildRequires:  curl-win32
#BuildRequires:  speex-win32
BuildRequires:  openal-soft-win32
BuildRequires:  recode
%if %with_installer
BuildRequires:  nsis
%endif
Name:           ioquake3-win32
License:        GPL v2 or later
Url:            http://icculus.org/quake3/
Group:          Amusements/Games/3D/Shoot
%{expand:%(sed -n -e '/Version:/p;/^%package/q' < %_sourcedir/ioquake3.spec)}
Release:        1
Summary:        Quake III
BuildRoot:      %{_tmppath}/%{name}-%{version}-build
Source:         ioquake3-%{version}.tar.bz2
Prefix:         %{_prefix}/lib/ioquake3
Source99:       ioquake3.spec

%if %with_installer
%package setup
License:        GPL v2 or later
Summary:        Quake III nsis based installer
Group:          Amusements/Games/3D/Shoot
%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.

%if %with_installer
%description setup
Quake III first person shooter. This package includes the binary files
repackaged as nsis installer



Authors:
--------
    Id Software, Inc.

%endif

%prep
%setup -q -n ioquake3-%{version}
# we want to use our own
rm -r code/SDL12
rm code/libs/win32/*
mv README README.txt
recode utf8..ibmpc README.txt COPYING.txt id-readme.txt voip-readme.txt

%build
cat > dobuild <<'EOF'
#!/bin/sh
export PKG_CONFIG_PATH=/opt/cross/i386-mingw32msvc/lib/pkgconfig
exec make %{?jobs:-j%jobs} \
	VERSION=%{version} \
	RELEASE=%{release} \
	OPTIMIZE="%{optflags} -O3 -ffast-math -fno-strict-aliasing" \
	CC=/opt/cross/bin/i386-mingw32msvc-gcc \
	WINDRES=/opt/cross/bin/i386-mingw32msvc-windres \
	USE_LOCAL_HEADERS=0 \
	PLATFORM=mingw32 \
	GENERATE_DEPENDENCIES=0 \
	USE_CURL=1 \
	V=1 \
	"$@"
EOF
chmod 755 dobuild
./dobuild release
%install
q3dir=%{buildroot}%{_prefix}/lib/ioquake3-win32
install -d -m 755 $q3dir
install -d -m 755 $q3dir/baseq3
install -d -m 755 $q3dir/missionpack
pushd build/release-*
/opt/cross/bin/i386-mingw32msvc-strip *.exe */*.dll
install -m 755 ioquake3.x86.exe $q3dir/
install -m 755 ioq3ded.x86.exe $q3dir/
install -m 644 baseq3/*.dll $q3dir/baseq3
install -m 644 missionpack/*.dll $q3dir/missionpack
popd
%if %with_installer
for i in libcurl-4.dll SDL.dll OpenAL32.dll; do
  install -m 644 /opt/cross/i386-mingw32msvc/bin/$i misc/nsis
  /opt/cross/bin/i386-mingw32msvc-strip misc/nsis/$i
done
sed -i -e 's/openal32/OpenAL32/' misc/nsis/ioquake3.nsi.in
./dobuild installer
install -d %buildroot%_prefix/games
mv misc/nsis/ioquake3-%version-%release.x86.exe %buildroot%_prefix/games
%endif

%clean
rm -rf %{buildroot}

%files
%defattr(-,root,root)
%doc COPYING.txt README.txt id-readme.txt
%{_prefix}/lib/ioquake3-win32

%if %with_installer
%files setup
%defattr(-,root,root)
%{_prefix}/games/*
%endif
openSUSE Build Service is sponsored by