whee, nicely modular packages

This commit is contained in:
Bill Currie 2001-08-01 22:43:16 +00:00
parent 38a9a52290
commit f3c946599e
4 changed files with 300 additions and 3 deletions

1
RPM/.gitignore vendored
View file

@ -1,2 +1,3 @@
build_rpm
quakeforge.conf
quakeforge.spec

15
RPM/quakeforge.conf.in Normal file
View file

@ -0,0 +1,15 @@
// QuakeForge: Newtree Configuration
// Location of shared data
setrom fs_sharepath "@prefix@/share/games/quakeforge"
// Location of user's personal data
setrom fs_userpath "~/.quakeforge"
// Video defaults
set vid_width 640
set vid_height 480
set vid_fullscreen 0
// Uncomment for high-quality OpenGL rendering
//gl_texturemode gl_linear_mipmap_linear

View file

@ -11,6 +11,12 @@
%define HAVE_SVGA '@HAVE_SVGA@'
%define HAVE_X11 '@HAVE_X@'
%define HAVE_ALSA '@HAVE_ALSA@'
%define HAVE_OSS '@HAVE_OSS@'
%define BUILD_GL '@CAN_BUILD_GL@'
%define BUILD_SW '@CAN_BUILD_SW@'
Name: %{name}
Version: %{version}
Release: %{release}
@ -34,6 +40,12 @@ adding portability and optional extensions to enhance gameplay.
%package common
Summary: QuakeForge 3D game engine - common files
Group: Amusements/Games
#Requires:
%description common
%package server
Summary: QuakeForge 3D game engine - Server
Group: Amusements/Games
@ -96,6 +108,62 @@ Group: Amusements/Games
%description x11
%endif
%if "%{HAVE_ALSA}"=="'yes'"
%package snd-alsa
Summary: ALSA 0.9 sound plugin for QuakeForge
Group: Amusements/Games
#Requires:
%description snd-alsa
The ALSA 0.9 plugin for QuakeForge provides digital audio output for QuakeForge
targets that contain clients.
%endif
%if "%{HAVE_OSS}"=="'yes'"
%package snd-oss
Summary: OSS sound plugin for QuakeForge
Group: Amusements/Games
#Requires:
%description snd-oss
The OSS plugin for QuakeForge provides digital audio output (using OSS/Linux,
OSS/Free, or kernel sound) for QuakeForge targets that contain clients.
NOTE: This plugin does not work on all systems, since it uses memory-mapped
I/O for the output device. If you have trouble, try the quakeforge-alsa
package.
%endif
%if "%{HAVE_SDL}"=="'yes'"
%package snd-sdl
Summary: SDL sound plugin for QuakeForge
Group: Amusements/Games
#Requires:
%description snd-sdl
The SDL plugin for QuakeForge provides digital audio output for QuakeForge
targets that contain clients.
%endif
%if "%{BUILD_GL}"=="'yes'"
%package libs-gl
Summary: QuakeForge 3D game engine - OpenGL renderer libraries
Group: Amusements/Games
#Requires:
%description libs-gl
%endif
%if "%{BUILD_SW}"=="'yes'"
%package libs-sw
Summary: QuakeForge 3D game engine - Software renderer libraries
Group: Amusements/Games
#Requires:
%description libs-sw
%endif
%package devel
Summary: QuakeForge 3D game engine - headers and devel libs
Group: Amusements/Games
Requires: quakeforge-common
%description devel
@ -110,16 +178,48 @@ make
%install
if [ -d $RPM_BUILD_ROOT ]; then rm -rf $RPM_BUILD_ROOT; fi
mkdir -p $RPM_BUILD_ROOT
mkdir -p $RPM_BUILD_ROOT/etc
mkdir -p $RPM_BUILD_ROOT/%{_prefix}/share/games/quakeforge
make install DESTDIR=$RPM_BUILD_ROOT
cp RPM/quakeforge.conf $RPM_BUILD_ROOT/etc
%clean
rm -rf $RPM_BUILD_ROOT
%files
%doc COPYING INSTALL TODO doc/*
%attr(-,root,root) %dir %{_prefix}/share/games/quakeforge
%files common
%attr(-,root,root) /etc/quakeforge.conf
%attr(-,root,root) %{_prefix}/lib/libQFcd.so.1
%attr(-,root,root) %{_prefix}/lib/libQFcd.so.1.0.0
%attr(-,root,root) %{_prefix}/lib/libQFconsole.so.1
%attr(-,root,root) %{_prefix}/lib/libQFconsole.so.1.0.0
%attr(-,root,root) %{_prefix}/lib/libQFgamecode.so.1
%attr(-,root,root) %{_prefix}/lib/libQFgamecode.so.1.0.0
%attr(-,root,root) %{_prefix}/lib/libQFgib.so.1
%attr(-,root,root) %{_prefix}/lib/libQFgib.so.1.0.0
%attr(-,root,root) %{_prefix}/lib/libQFjs.so.1
%attr(-,root,root) %{_prefix}/lib/libQFjs.so.1.0.0
%attr(-,root,root) %{_prefix}/lib/libQFmodels.so.1
%attr(-,root,root) %{_prefix}/lib/libQFmodels.so.1.0.0
%attr(-,root,root) %{_prefix}/lib/libQFsound.so.1
%attr(-,root,root) %{_prefix}/lib/libQFsound.so.1.0.0
%attr(-,root,root) %{_prefix}/lib/libQFutil.so.1
%attr(-,root,root) %{_prefix}/lib/libQFutil.so.1.0.0
%attr(-,root,root) %{_prefix}/lib/quakeforge/libcd_null.so
%attr(-,root,root) %{_prefix}/lib/quakeforge/libcd_null.so.1
%attr(-,root,root) %{_prefix}/lib/quakeforge/libcd_null.so.1.0.0
%attr(-,root,root) %{_prefix}/lib/quakeforge/libsound_disk.so
%attr(-,root,root) %{_prefix}/lib/quakeforge/libsound_disk.so.1
%attr(-,root,root) %{_prefix}/lib/quakeforge/libsound_disk.so.1.0.0
%attr(-,root,root) %{_prefix}/lib/quakeforge/libsound_null.so
%attr(-,root,root) %{_prefix}/lib/quakeforge/libsound_null.so.1
%attr(-,root,root) %{_prefix}/lib/quakeforge/libsound_null.so.1.0.0
%if "%{HAVE_SERVER}"=="'yes'"
%files server
%attr(-,root,root) %{_prefix}/bin/qw-server
@ -167,3 +267,160 @@ rm -rf $RPM_BUILD_ROOT
%attr(-,root,root) %{_prefix}/bin/qw-client-x11
%attr(-,root,root) %{_prefix}/bin/nq-x11
%endif
%if "%{HAVE_ALSA}"=="'yes'"
%files snd-alsa
%attr(-,root,root) %{_prefix}/lib/quakeforge/libsound_alsa0_9.so
%attr(-,root,root) %{_prefix}/lib/quakeforge/libsound_alsa0_9.so.1
%attr(-,root,root) %{_prefix}/lib/quakeforge/libsound_alsa0_9.so.1.0.0
%endif
%if "%{HAVE_OSS}"=="'yes'"
%files snd-oss
%attr(-,root,root) %{_prefix}/lib/quakeforge/libsound_oss.so
%attr(-,root,root) %{_prefix}/lib/quakeforge/libsound_oss.so.1
%attr(-,root,root) %{_prefix}/lib/quakeforge/libsound_oss.so.1.0.0
%endif
%if "%{HAVE_SDL}"=="'yes'"
%files snd-sdl
%attr(-,root,root) %{_prefix}/lib/quakeforge/libsound_sdl.so
%attr(-,root,root) %{_prefix}/lib/quakeforge/libsound_sdl.so.1
%attr(-,root,root) %{_prefix}/lib/quakeforge/libsound_sdl.so.1.0.0
%endif
%if "%{BUILD_GL}"=="'yes'"
%files libs-gl
%attr(-,root,root) %{_prefix}/lib/libQFmodels_gl.so.1
%attr(-,root,root) %{_prefix}/lib/libQFmodels_gl.so.1.0.0
%attr(-,root,root) %{_prefix}/lib/libQFrenderer_gl.so.1
%attr(-,root,root) %{_prefix}/lib/libQFrenderer_gl.so.1.0.0
%endif
%if "%{BUILD_SW}"=="'yes'"
%files libs-sw
%attr(-,root,root) %{_prefix}/lib/libQFmodels_sw.so.1
%attr(-,root,root) %{_prefix}/lib/libQFmodels_sw.so.1.0.0
%attr(-,root,root) %{_prefix}/lib/libQFrenderer_sw.so.1
%attr(-,root,root) %{_prefix}/lib/libQFrenderer_sw.so.1.0.0
%endif
%files devel
%if "%{HAVE_3DFX}"=="'yes'"
%attr(-,root,root) %{_prefix}/lib/libQF3dfx.a
%attr(-,root,root) %{_prefix}/lib/libQF3dfx.la
%attr(-,root,root) %{_prefix}/lib/libQF3dfx.so
%endif
%attr(-,root,root) %{_prefix}/lib/libQFcd.a
%attr(-,root,root) %{_prefix}/lib/libQFcd.la
%attr(-,root,root) %{_prefix}/lib/libQFcd.so
%attr(-,root,root) %{_prefix}/lib/libQFconsole.a
%attr(-,root,root) %{_prefix}/lib/libQFconsole.la
%attr(-,root,root) %{_prefix}/lib/libQFconsole.so
%attr(-,root,root) %{_prefix}/lib/libQFgamecode.a
%attr(-,root,root) %{_prefix}/lib/libQFgamecode.la
%attr(-,root,root) %{_prefix}/lib/libQFgamecode.so
%attr(-,root,root) %{_prefix}/lib/libQFgib.a
%attr(-,root,root) %{_prefix}/lib/libQFgib.la
%attr(-,root,root) %{_prefix}/lib/libQFgib.so
%if "%{HAVE_GLX}"=="'yes'"
%attr(-,root,root) %{_prefix}/lib/libQFglx.a
%attr(-,root,root) %{_prefix}/lib/libQFglx.la
%attr(-,root,root) %{_prefix}/lib/libQFglx.so
%endif
%attr(-,root,root) %{_prefix}/lib/libQFjs.a
%attr(-,root,root) %{_prefix}/lib/libQFjs.la
%attr(-,root,root) %{_prefix}/lib/libQFjs.so
%attr(-,root,root) %{_prefix}/lib/libQFmodels.a
%attr(-,root,root) %{_prefix}/lib/libQFmodels.la
%attr(-,root,root) %{_prefix}/lib/libQFmodels.so
%if "%{HAVE_SDL}"=="'yes'"
%attr(-,root,root) %{_prefix}/lib/libQFsdl.a
%attr(-,root,root) %{_prefix}/lib/libQFsdl.la
%attr(-,root,root) %{_prefix}/lib/libQFsdl.so
%endif
%if "%{HAVE_SGL}"=="'yes'"
%attr(-,root,root) %{_prefix}/lib/libQFsgl.a
%attr(-,root,root) %{_prefix}/lib/libQFsgl.la
%attr(-,root,root) %{_prefix}/lib/libQFsgl.so
%endif
%attr(-,root,root) %{_prefix}/lib/libQFsound.a
%attr(-,root,root) %{_prefix}/lib/libQFsound.la
%attr(-,root,root) %{_prefix}/lib/libQFsound.so
%attr(-,root,root) %{_prefix}/lib/libQFutil.a
%attr(-,root,root) %{_prefix}/lib/libQFutil.la
%attr(-,root,root) %{_prefix}/lib/libQFutil.so
%if "%{HAVE_X11}"=="'yes'"
%attr(-,root,root) %{_prefix}/lib/libQFx11.a
%attr(-,root,root) %{_prefix}/lib/libQFx11.la
%attr(-,root,root) %{_prefix}/lib/libQFx11.so
%endif
%attr(-,root,root) %{_prefix}/include/QF/GL/defines.h
%attr(-,root,root) %{_prefix}/include/QF/GL/extensions.h
%attr(-,root,root) %{_prefix}/include/QF/GL/funcs.h
%attr(-,root,root) %{_prefix}/include/QF/GL/qf_funcs_list.h
%attr(-,root,root) %{_prefix}/include/QF/GL/qf_rlight.h
%attr(-,root,root) %{_prefix}/include/QF/GL/qf_rmain.h
%attr(-,root,root) %{_prefix}/include/QF/GL/qf_rsurf.h
%attr(-,root,root) %{_prefix}/include/QF/GL/qf_screen.h
%attr(-,root,root) %{_prefix}/include/QF/GL/qf_sky.h
%attr(-,root,root) %{_prefix}/include/QF/GL/qf_textures.h
%attr(-,root,root) %{_prefix}/include/QF/GL/qf_vid.h
%attr(-,root,root) %{_prefix}/include/QF/GL/types.h
%attr(-,root,root) %{_prefix}/include/QF/bspfile.h
%attr(-,root,root) %{_prefix}/include/QF/cdaudio.h
%attr(-,root,root) %{_prefix}/include/QF/checksum.h
%attr(-,root,root) %{_prefix}/include/QF/clip_hull.h
%attr(-,root,root) %{_prefix}/include/QF/cmd.h
%attr(-,root,root) %{_prefix}/include/QF/console.h
%attr(-,root,root) %{_prefix}/include/QF/crc.h
%attr(-,root,root) %{_prefix}/include/QF/cvar.h
%attr(-,root,root) %{_prefix}/include/QF/draw.h
%attr(-,root,root) %{_prefix}/include/QF/gcc_attr.h
%attr(-,root,root) %{_prefix}/include/QF/gib.h
%attr(-,root,root) %{_prefix}/include/QF/hash.h
%attr(-,root,root) %{_prefix}/include/QF/hl.h
%attr(-,root,root) %{_prefix}/include/QF/info.h
%attr(-,root,root) %{_prefix}/include/QF/input.h
%attr(-,root,root) %{_prefix}/include/QF/joystick.h
%attr(-,root,root) %{_prefix}/include/QF/keys.h
%attr(-,root,root) %{_prefix}/include/QF/link.h
%attr(-,root,root) %{_prefix}/include/QF/locs.h
%attr(-,root,root) %{_prefix}/include/QF/mathlib.h
%attr(-,root,root) %{_prefix}/include/QF/mdfour.h
%attr(-,root,root) %{_prefix}/include/QF/model.h
%attr(-,root,root) %{_prefix}/include/QF/modelgen.h
%attr(-,root,root) %{_prefix}/include/QF/msg.h
%attr(-,root,root) %{_prefix}/include/QF/pcx.h
%attr(-,root,root) %{_prefix}/include/QF/plugin.h
%attr(-,root,root) %{_prefix}/include/QF/plugin/cd.h
%attr(-,root,root) %{_prefix}/include/QF/plugin/console.h
%attr(-,root,root) %{_prefix}/include/QF/plugin/general.h
%attr(-,root,root) %{_prefix}/include/QF/plugin/input.h
%attr(-,root,root) %{_prefix}/include/QF/plugin/sound.h
%attr(-,root,root) %{_prefix}/include/QF/pr_comp.h
%attr(-,root,root) %{_prefix}/include/QF/pr_debug.h
%attr(-,root,root) %{_prefix}/include/QF/progs.h
%attr(-,root,root) %{_prefix}/include/QF/qargs.h
%attr(-,root,root) %{_prefix}/include/QF/qdefs.h
%attr(-,root,root) %{_prefix}/include/QF/qendian.h
%attr(-,root,root) %{_prefix}/include/QF/qfplist.h
%attr(-,root,root) %{_prefix}/include/QF/qtypes.h
%attr(-,root,root) %{_prefix}/include/QF/render.h
%attr(-,root,root) %{_prefix}/include/QF/screen.h
%attr(-,root,root) %{_prefix}/include/QF/sizebuf.h
%attr(-,root,root) %{_prefix}/include/QF/skin.h
%attr(-,root,root) %{_prefix}/include/QF/sound.h
%attr(-,root,root) %{_prefix}/include/QF/spritegn.h
%attr(-,root,root) %{_prefix}/include/QF/sys.h
%attr(-,root,root) %{_prefix}/include/QF/teamplay.h
%attr(-,root,root) %{_prefix}/include/QF/texture.h
%attr(-,root,root) %{_prefix}/include/QF/tga.h
%attr(-,root,root) %{_prefix}/include/QF/uint32.h
%attr(-,root,root) %{_prefix}/include/QF/va.h
%attr(-,root,root) %{_prefix}/include/QF/ver_check.h
%attr(-,root,root) %{_prefix}/include/QF/vfile.h
%attr(-,root,root) %{_prefix}/include/QF/vfs.h
%attr(-,root,root) %{_prefix}/include/QF/vid.h
%attr(-,root,root) %{_prefix}/include/QF/wad.h
%attr(-,root,root) %{_prefix}/include/QF/zone.h

View file

@ -606,6 +606,7 @@ AC_ARG_ENABLE(sound,
SOUND_TYPES=
AC_MSG_CHECKING(for sound support)
HAVE_ALSA=no
if test "x$enable_alsa" != "xno" -a \
"x$ac_cv_header_sys_asoundlib_h" = "xyes"; then
AC_EGREP_CPP([QF_maGiC_VALUE],
@ -618,7 +619,8 @@ QF_maGiC_VALUE
#endif
],
SOUND_TYPES="$SOUND_TYPES ALSA0.5"
ALSA_LIBS="-lasound",
ALSA_LIBS="-lasound"
HAVE_ALSA=yes,
AC_EGREP_CPP([QF_maGiC_VALUE],
[
#include <sys/asoundlib.h>
@ -630,10 +632,12 @@ QF_maGiC_VALUE
],
SOUND_TYPES="$SOUND_TYPES ALSA0.9"
ALSA_LIBS="-lasound"
HAVE_ALSA=yes
)
)
fi
AC_SUBST(ALSA_LIBS)
AC_SUBST(HAVE_ALSA)
dnl MME
if test "x$ac_cv_header_mme_mmsystem_h" = "xyes" -a \
@ -652,6 +656,7 @@ fi
AC_SUBST(MME_LIBS)
dnl OSS
HAVE_OSS=no
if test "x$ac_cv_header_sys_soundcard_h" = "xyes" -o \
"x$ac_cv_header_machine_soundcard_h" = "xyes" -o \
"x$ac_cv_header_linux_soundcard_h" = "xyes"; then
@ -662,7 +667,8 @@ if test "x$ac_cv_header_sys_soundcard_h" = "xyes" -o \
QF_maGiC_VALUE
#endif
],
SOUND_TYPES="$SOUND_TYPES OSS",
SOUND_TYPES="$SOUND_TYPES OSS"
HAVE_OSS=yes,
AC_EGREP_CPP([QF_maGiC_VALUE],
[
#include <linux/soundcard.h>
@ -670,7 +676,8 @@ QF_maGiC_VALUE
QF_maGiC_VALUE
#endif
],
SOUND_TYPES="$SOUND_TYPES OSS",
SOUND_TYPES="$SOUND_TYPES OSS"
HAVE_OSS=yes,
AC_EGREP_CPP([QF_maGiC_VALUE],
[
#include <machine/soundcard.h>
@ -679,10 +686,12 @@ QF_maGiC_VALUE
#endif
],
SOUND_TYPES="$SOUND_TYPES OSS"
HAVE_OSS=yes
)
)
)
fi
AC_SUBST(HAVE_OSS)
dnl SDL digital audio
if test "x$HAVE_SDL" = "xyes"; then
@ -1263,6 +1272,8 @@ SND_PLUGIN_TARGETS="libsound_null.la libsound_disk.la"
VID_TARGETS=""
BUILD_GL=no
BUILD_SW=no
CAN_BUILD_GL=no
CAN_BUILD_SW=no
HAVE_3DFX=no
HAVE_GLX=no
@ -1275,6 +1286,7 @@ if test "x$HAVE_GLIDE" = xyes -a "x$HAVE_SVGA" = xyes; then
BUILD_GL=yes
fi
HAVE_3DFX=yes
CAN_BUILD_GL=yes
fi
if test "x$HAVE_FBDEV" = xyes; then
if test "x$ENABLE_FBDEV" = xyes; then
@ -1284,6 +1296,7 @@ if test "x$HAVE_FBDEV" = xyes; then
VID_TARGETS="$VID_TARGETS libQFfbdev.la"
BUILD_SW=yes
fi
CAN_BUILD_SW=yes
fi
if test "x$HAVE_X" = xyes; then
if test "x$ENABLE_GLX" = xyes; then
@ -1294,6 +1307,7 @@ if test "x$HAVE_X" = xyes; then
BUILD_GL=yes
fi
HAVE_GLX=yes
CAN_BUILD_GL=yes
fi
if test "x$HAVE_MGL" = xyes; then
if test "x$ENABLE_MGL" = xyes; then
@ -1303,6 +1317,7 @@ if test "x$HAVE_MGL" = xyes; then
VID_TARGETS="$VID_TARGETS libQFwgl.la"
BUILD_SW=yes
fi
CAN_BUILD_SW=yes
fi
if test "x$HAVE_SDL" = xyes; then
if test "x$ENABLE_SDL" = xyes; then
@ -1312,6 +1327,7 @@ if test "x$HAVE_SDL" = xyes; then
VID_TARGETS="$VID_TARGETS libQFsdl.la"
BUILD_SW=yes
fi
CAN_BUILD_SW=yes
fi
if test "x$HAVE_SGL" = xyes; then
if test "x$ENABLE_SGL" = xyes; then
@ -1321,6 +1337,7 @@ if test "x$HAVE_SGL" = xyes; then
VID_TARGETS="$VID_TARGETS libQFsgl.la"
BUILD_GL=yes
fi
CAN_BUILD_GL=yes
fi
if test "x$HAVE_SVGA" = xyes; then
if test "x$ENABLE_SVGA" = xyes; then
@ -1330,6 +1347,7 @@ if test "x$HAVE_SVGA" = xyes; then
VID_TARGETS="$VID_TARGETS libQFsvga.la"
BUILD_SW=yes
fi
CAN_BUILD_SW=yes
fi
if test "x$mingw" = xyes; then
if test "x$ENABLE_WGL" = xyes; then
@ -1339,6 +1357,7 @@ if test "x$mingw" = xyes; then
VID_TARGETS="$VID_TARGETS libQFwgl.la"
BUILD_GL=yes
fi
CAN_BUILD_GL=yes
fi
if test "x$HAVE_X" = xyes; then
if test "x$ENABLE_X11" = xyes; then
@ -1348,12 +1367,16 @@ if test "x$HAVE_X" = xyes; then
VID_TARGETS="$VID_TARGETS libQFx11.la"
BUILD_SW=yes
fi
CAN_BUILD_SW=yes
fi
if test "x$SV_TARGETS" = xyes; then
QW_TARGETS="qw-server\$(EXEEXT) $QW_TARGETS"
# NQ_TARGETS="nq-server\$(EXEEXT) $NQ_TARGETS"
fi
AC_SUBST(CAN_BUILD_GL)
AC_SUBST(CAN_BUILD_SW)
AC_SUBST(HAVE_3DFX)
AC_SUBST(HAVE_FBDEV)
AC_SUBST(HAVE_GLX)
@ -1455,6 +1478,7 @@ AC_OUTPUT(
debian/Makefile
RPM/build_rpm
RPM/quakeforge.conf
RPM/quakeforge.spec,
chmod +x quakeforge-config RPM/build_rpm