]> git.pld-linux.org Git - packages/quake3.git/blame - quake3.spec
updated snap to 20190729
[packages/quake3.git] / quake3.spec
CommitLineData
e7979576 1
1faea7fa 2%define dataver 1.32b3-1
bde92c26
JP
3%define snap 20190729
4%define rel 1
64ed5be4 5Summary: Quake3 for Linux
21562ba5
ER
6Summary(de.UTF-8): Quake3 für Linux
7Summary(pl.UTF-8): Quake3 dla Linuksa
64ed5be4 8Name: quake3
55e78a3b 9Version: 1.36
1faea7fa 10Release: 0.%{snap}.%{rel}
5036d35d 11License: GPL v2
842fa25f 12Group: X11/Applications/Games
55e78a3b 13# svn export svn://svn.icculus.org/quake3/branches/1.36 quake3
1faea7fa 14Source0: %{name}-%{snap}.tar.bz2
bde92c26 15# Source0-md5: e992c1043fbef63ddcb2b55af2d3543d
223ad215 16Source2: q3ded.init
17Source3: q3ded.sysconfig
bb4f2e83 18Source4: %{name}.desktop
19Source5: %{name}-smp.desktop
b256b220 20Patch0: %{name}-QUAKELIBDIR.patch
21Patch1: %{name}-alpha.patch
b8a6b47c 22URL: http://ioquake3.org/
78f4210b 23BuildRequires: OpenAL-devel
6121ffe3 24BuildRequires: OpenGL-GLU-devel
ec8f8bf7 25BuildRequires: OpenGL-devel
bde92c26 26BuildRequires: SDL2-devel
7d3050c0 27BuildRequires: curl-devel
bde92c26
JP
28BuildRequires: freetype-devel >= 2
29BuildRequires: libjpeg-devel
30BuildRequires: libogg-devel
b256b220 31BuildRequires: libvorbis-devel
bde92c26
JP
32BuildRequires: opus-devel
33BuildRequires: opusfile-devel
6121ffe3 34BuildRequires: pkgconfig
46095158 35BuildRequires: rpmbuild(macros) >= 1.268
6121ffe3 36BuildRequires: which
bde92c26 37BuildRequires: zlib-devel
4efc5e6b
JB
38Requires: %{name}-common = %{version}-%{release}
39Requires: OpenGL
1faea7fa 40Requires: quake3-data >= %{dataver}
64ed5be4
PS
41BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
42
b256b220 43# source has been fixed to work without those
44%define filterout_c -fwrapv -fno-strict-aliasing -fsigned-char
45
7d3050c0 46%define specflags -ffast-math -funroll-loops -fomit-frame-pointer
b256b220 47%define x86_flags -falign-loops=2 -falign-jumps=2 -falign-functions=2 -fstrength-reduce
48%define specflags_ia32 %{x86_flags}
49%define specflags_x86_64 %{x86_flags}
50%define specflags_amd64 %{x86_flags}
51%define specflags_ia32e %{x86_flags}
64ed5be4 52%define _noautoreqdep libGL.so.1 libGLU.so.1
64ed5be4
PS
53
54%description
6bd4d3b0 55Quake 3 for Linux.
64ed5be4 56
09704641
JR
57%description -l de.UTF-8
58Quake 3 für Linux.
73576dbb 59
09704641 60%description -l pl.UTF-8
f6d1e4e1 61Quake 3 dla Linuksa.
64ed5be4 62
2dbdf1bb
AA
63%package server
64Summary: Quake3 server
21562ba5
ER
65Summary(de.UTF-8): Quake3 Server
66Summary(pl.UTF-8): Serwer Quake3
842fa25f 67Group: X11/Applications/Games
46095158
ER
68Requires(post,preun): /sbin/chkconfig
69Requires(postun): /usr/sbin/groupdel
70Requires(postun): /usr/sbin/userdel
223ad215 71Requires(pre): /bin/id
72Requires(pre): /usr/bin/getgid
73Requires(pre): /usr/sbin/groupadd
74Requires(pre): /usr/sbin/useradd
2721d29f 75Requires(triggerpostun): /usr/sbin/usermod
fab6b60f 76Requires: %{name}-common = %{version}-%{release}
de879c95 77Requires: psmisc
46095158
ER
78Requires: rc-scripts
79Requires: screen
223ad215 80Provides: group(quake3)
81Provides: user(quake3)
2dbdf1bb
AA
82
83%description server
84Quake3 server.
85
09704641 86%description server -l de.UTF-8
73576dbb 87Quake3 Server.
88
09704641 89%description server -l pl.UTF-8
2dbdf1bb
AA
90Serwer Quake3.
91
92%package smp
c1a4c073 93Summary: Quake3 for SMP
21562ba5
ER
94Summary(de.UTF-8): Quake3 für SMP
95Summary(pl.UTF-8): Quake3 dla SMP
842fa25f 96Group: X11/Applications/Games
fab6b60f 97Requires: %{name}-common = %{version}-%{release}
1faea7fa 98Requires: quake3-data >= %{dataver}
2dbdf1bb
AA
99
100%description smp
101Quake3 for multi processor machine.
102
09704641
JR
103%description smp -l de.UTF-8
104Quake3 für Multiprocessor Rechner.
73576dbb 105
09704641 106%description smp -l pl.UTF-8
2dbdf1bb
AA
107Quake3 dla maszyny wieloprocesorowej.
108
fab6b60f 109%package common
73576dbb 110Summary: Common files for Quake3
21562ba5
ER
111Summary(de.UTF-8): Gemeinsame Dateien für Quake3
112Summary(pl.UTF-8): Pliki wspólne dla Quake3
842fa25f 113Group: X11/Applications/Games
4e95c34d
ER
114Requires(triggerpostun): /usr/sbin/groupdel
115Requires(triggerpostun): /usr/sbin/userdel
8362b1cd 116Obsoletes: quake3-single
2dbdf1bb 117
fab6b60f 118%description common
73576dbb 119Common files for Quake3 server and player game.
120
09704641
JR
121%description common -l de.UTF-8
122Gemeinsame Dateien für den Quake3 Server und das Spiel.
fab6b60f 123
09704641
JR
124%description common -l pl.UTF-8
125Pliki wspólne Quake3 dla serwera i trybu gracza.
2dbdf1bb 126
64ed5be4 127%prep
05c759cf 128%setup -q -n %{name}
223ad215 129%patch0 -p1
d58c0b3f 130%patch1 -p1
b256b220 131
132%build
133cat << 'EOF' > Makefile.local
134BUILD_STANDALONE= 0
cd8b61b4 135BUILD_CLIENT = 1
b256b220 136# smp broken
137BUILD_CLIENT_SMP= 0
cd8b61b4 138BUILD_SERVER = 1
139BUILD_GAME_SO = 1
140BUILD_GAME_QVM = 0
b256b220 141BUILD_MISSIONPACK= 1
142USE_OPENAL = 1
143USE_OPENAL_DLOPEN = 0
144USE_CURL = 1
145USE_CURL_DLOPEN = 0
146USE_CODEC_VORBIS = 1
bde92c26 147USE_FREETYPE = 1
b256b220 148USE_MUMBLE = 1
149USE_VOIP = 1
bde92c26 150USE_INTERNAL_LIBS = 0
b256b220 151GENERATE_DEPENDENCIES = 0
223ad215 152
dea25180 153DEFAULT_BASEDIR = %{_datadir}/games/%{name}
154
b256b220 155override OPTIMIZE = %{rpmcflags} \
bde92c26 156 -DQUAKELIBDIR=\"%{_libdir}/%{name}\"
b256b220 157
158# vim spec bug: "
159
160override CC = %{__cc}
dea25180 161override LDFLAGS = %{rpmldflags}
b256b220 162override BR = rel
163
164EOF
165
166%{__make} release
64ed5be4 167
64ed5be4
PS
168%install
169rm -rf $RPM_BUILD_ROOT
afc486fd 170install -d $RPM_BUILD_ROOT/etc/{rc.d/init.d,sysconfig} \
cb3503b5 171 $RPM_BUILD_ROOT{%{_bindir},%{_datadir}/games/%{name}/baseq3} \
b256b220 172 $RPM_BUILD_ROOT%{_libdir}/%{name}/{baseq3,missionpack} \
223ad215 173 $RPM_BUILD_ROOT{%{_pixmapsdir},%{_desktopdir}} \
cb3503b5 174 $RPM_BUILD_ROOT/var/games/quake3
223ad215 175
b256b220 176install rel/ioquake3.* $RPM_BUILD_ROOT%{_bindir}/%{name}
177#install rel/ioquake3-smp.* $RPM_BUILD_ROOT%{_bindir}/%{name}-smp
178install rel/ioq3ded.* $RPM_BUILD_ROOT%{_bindir}/q3ded
179
bde92c26
JP
180install rel/renderer*.so $RPM_BUILD_ROOT%{_libdir}/%{name}
181
b256b220 182install rel/baseq3/*.so $RPM_BUILD_ROOT%{_libdir}/%{name}/baseq3
183install rel/missionpack/*.so $RPM_BUILD_ROOT%{_libdir}/%{name}/missionpack
223ad215 184
185install %{SOURCE2} $RPM_BUILD_ROOT/etc/rc.d/init.d/q3ded
186install %{SOURCE3} $RPM_BUILD_ROOT/etc/sysconfig/q3ded
b256b220 187install misc/%{name}.svg $RPM_BUILD_ROOT%{_pixmapsdir}
bb4f2e83 188install %{SOURCE4} $RPM_BUILD_ROOT%{_desktopdir}/quake3.desktop
189install %{SOURCE5} $RPM_BUILD_ROOT%{_desktopdir}/quake3-smp.desktop
1395c3d7 190
ce08802c
JB
191%clean
192rm -rf $RPM_BUILD_ROOT
193
fab6b60f 194%post common
5e99e372 195if [ "$1" = "1" ]; then
6d92e45f 196 echo ""
cb3503b5 197 echo "You need to copy pak0.pk3 from your Quake3 CD into %{_datadir}/games/%{name}/baseq3/."
6d92e45f 198 echo "Or if you have got a Windows installation of Q3 make a symlink to save space."
223ad215 199 echo "You may place it in ~/.q3a/baseq3/ but you will have to put all pak files there (or make symlinks)."
6d92e45f 200 echo ""
5e99e372 201fi
2dbdf1bb 202
223ad215 203%pre server
4e0db59f 204%groupadd -P %{name}-server -g 38 quake3
f984404f 205%useradd -P %{name}-server -u 124 -d /var/games/quake3 -s /bin/sh -c "Quake ]|[ Arena" -g quake3 quake3
2721d29f 206
2dbdf1bb
AA
207%post server
208/sbin/chkconfig --add q3ded
46095158 209%service q3ded restart "Quake3 server"
01f91d2a 210
2dbdf1bb 211%preun server
01f91d2a 212if [ "$1" = "0" ]; then
46095158 213 %service q3ded stop
8c78bb60 214 /sbin/chkconfig --del q3ded
01f91d2a 215fi
64ed5be4 216
223ad215 217%postun server
aa45e1f4 218if [ "$1" = "0" ]; then
de879c95
ER
219 %userremove quake3
220 %groupremove quake3
aa45e1f4
SP
221fi
222
cb3503b5 223%triggerpostun server -- %{name}-server < 1.33
6121ffe3 224# server will fail because of lack of pak0.pk3
225%service q3ded stop
cb3503b5
ER
226if [ "`getent passwd quake3 | cut -d: -f6`" = "/opt/quake3" ]; then
227 /usr/sbin/usermod -d /var/games/quake3 -s /bin/sh quake3
228fi
229
230%triggerpostun common -- %{name}-common < 1.33
a5877514 231if [ ! -f %{_datadir}/games/%{name}/baseq3/pak0.pk3 ]; then
232 # Better don't link/move automatically, /opt may be on other partition than /usr
233 echo ""
234 echo "Quake 3 data location has changed, link or move pak0.pk3 to %{_datadir}/games/%{name}/baseq3/."
235 echo ""
236fi
46095158 237
cb3503b5
ER
238if [ "$1" = "0" ]; then
239 %userremove quake3
240 %groupremove quake3
241fi
242
64ed5be4 243%files
129cb6c3 244%defattr(644,root,root,755)
129cb6c3 245%attr(755,root,root) %{_bindir}/quake3
c1a4c073 246%{_desktopdir}/quake3.desktop
bde92c26 247%attr(755,root,root) %{_libdir}/%{name}/renderer*.so
fab6b60f
AA
248
249%files common
129cb6c3 250%defattr(644,root,root,755)
bde92c26 251%doc CONTRIBUTING.md id-readme.txt README.md SECURITY.md ChangeLog TODO
4e95c34d 252%dir %{_datadir}/games/%{name}
a5877514 253%dir %{_datadir}/games/%{name}/baseq3
ddd4839d 254%{_pixmapsdir}/quake3.svg
c0932dc6 255%dir %{_libdir}/%{name}
256%dir %{_libdir}/%{name}/baseq3
257%dir %{_libdir}/%{name}/missionpack
258%attr(755,root,root) %{_libdir}/%{name}/baseq3/*.so
259%attr(755,root,root) %{_libdir}/%{name}/missionpack/*.so
2dbdf1bb
AA
260
261%files server
d617273b 262%defattr(644,root,root,755)
efd8c6a1
SP
263%attr(754,root,root) /etc/rc.d/init.d/q3ded
264%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/q3ded
223ad215 265%attr(755,root,root) %{_bindir}/q3ded
cb3503b5 266%attr(750,quake3,quake3) /var/games/quake3
2dbdf1bb 267
b256b220 268%if 0
2dbdf1bb 269%files smp
129cb6c3 270%defattr(644,root,root,755)
129cb6c3 271%attr(755,root,root) %{_bindir}/quake3-smp
c1a4c073 272%{_desktopdir}/quake3-smp.desktop
b256b220 273%endif
This page took 0.124365 seconds and 4 git commands to generate.