some fixes to make quakeforge build on solaris. not quite done yet as the

server doesn't get linked with the network libs yet.

.gitignore: add quakeforge-*.tar.gz (I'm tired of seeing that with ? :)
include/Makefile.am: forgot to add the new x11 related headers
source/makefile.am: move snd_dma.c from cient sources to snd lib and add
	snd_null.c
source/cl_sys_unix.c: replace FNDELAY with O_NONBLOCK
This commit is contained in:
Bill Currie 2000-05-25 05:01:20 +00:00
parent 08ae0f5305
commit 43b5a87fbd
6 changed files with 132 additions and 9 deletions

1
.gitignore vendored
View file

@ -7,3 +7,4 @@ config.log
config.status
configure
quakeforge.lsm
quakeforge-*.tar.gz

View file

@ -553,6 +553,7 @@ AM_CONDITIONAL(SNDTYPE_MME, test "$SNDTYPE" = "MME")
AM_CONDITIONAL(SNDTYPE_OSS, test "$SNDTYPE" = "OSS")
AM_CONDITIONAL(SNDTYPE_ALSA, test "$SNDTYPE" = "ALSA")
AM_CONDITIONAL(SNDTYPE_WIN32, test "$SNDTYPE" = "WIN32")
AM_CONDITIONAL(SNDTYPE_NULL, test "$SNDTYPE" != "WIN32" -a "$SNDTYPE" != "ALSA" -a "$SNDTYPE" != "OSS" -a "$SNDTYPE" != "MME")
dnl ==================================================================

View file

@ -11,4 +11,4 @@ EXTRA_DIST = adivtab.h anorm_dots.h anorms.h asm_draw.h asm_i386.h block16.h \
sbar.h screen.h server.h sizebuf.h sound.h spritegn.h sys.h \
uint32.h vid.h view.h wad.h winquake.h world.h zone.h \
win32/fnmatch.h win32/bc/config.h win32/vc/config.h win32/vc/dirent.h \
win32/version.h
win32/version.h context_x11.h dga_check.h

View file

@ -21,15 +21,18 @@ EXTRA_libqfsys_cl_a_SOURCES = cl_sys_unix.c cl_sys_win.c sys_win.c sys_unix.c fn
EXTRA_libqfsys_sv_a_SOURCES = sv_sys_unix.c sv_sys_win.c sys_win.c sys_unix.c fnmatch.c dirent.c
if SNDTYPE_WIN32
libqfsnd_a_SOURCES = snd_win.c
libqfsnd_a_SOURCES = snd_dma.c snd_win.c
endif
if SNDTYPE_OSS
libqfsnd_a_SOURCES = snd_oss.c
libqfsnd_a_SOURCES = snd_dma.c snd_oss.c
endif
if SNDTYPE_ALSA
libqfsnd_a_SOURCES = snd_alsa.c
libqfsnd_a_SOURCES = snd_dma.c snd_alsa.c
endif
EXTRA_libqfsnd_a_SOURCES = snd_win.c snd_oss.c snd_alsa.c
if SNDTYPE_NULL
libqfsnd_a_SOURCES = snd_null.c
endif
EXTRA_libqfsnd_a_SOURCES = snd_dma.c snd_win.c snd_oss.c snd_alsa.c snd_null.c
if CDTYPE_WIN32
libqfcd_a_SOURCES = cd_win.c
@ -51,7 +54,7 @@ server_SOURCES= pr_cmds.c pr_edict.c pr_exec.c sv_init.c sv_main.c sv_misc.c \
sv_user.c sv_ccmds.c world.c worlda.S sv_cvar.c
client_SOURCES= cl_cmd.c cl_cvar.c cl_demo.c cl_ents.c cl_input.c cl_main.c \
cl_math.S cl_misc.c cl_parse.c cl_pred.c cl_tent.c cl_cam.c \
r_view.c wad.c snd_dma.c snd_mem.c snd_mix.c snd_mixa.S \
r_view.c wad.c snd_mem.c snd_mix.c snd_mixa.S \
skin.c sbar.c nonintel.c menu.c keys.c console.c \
sys_x86.S cl_slist.c
soft_SOURCES= cl_model.c cl_trans.c d_edge.c d_fill.c d_init.c d_modech.c \

View file

@ -118,7 +118,7 @@ void Sys_Printf (char *fmt, ...)
void Sys_Quit (void)
{
Host_Shutdown();
fcntl (0, F_SETFL, fcntl (0, F_GETFL, 0) & ~FNDELAY);
fcntl (0, F_SETFL, fcntl (0, F_GETFL, 0) & ~O_NONBLOCK);
exit(0);
}
@ -136,7 +136,7 @@ void Sys_Error (char *error, ...)
char string[1024];
// change stdin to non blocking
fcntl (0, F_SETFL, fcntl (0, F_GETFL, 0) & ~FNDELAY);
fcntl (0, F_SETFL, fcntl (0, F_GETFL, 0) & ~O_NONBLOCK);
va_start (argptr, error);
vsnprintf (string, sizeof(string), error, argptr);
@ -243,7 +243,7 @@ int main (int c, char **v)
noconinput = COM_CheckParm("-noconinput");
if (!noconinput)
fcntl(0, F_SETFL, fcntl (0, F_GETFL, 0) | FNDELAY);
fcntl(0, F_SETFL, fcntl (0, F_GETFL, 0) | O_NONBLOCK);
if (COM_CheckParm("-nostdout")) Cvar_Set(sys_nostdout, "1");
Host_Init(&parms);

118
source/snd_null.c Normal file
View file

@ -0,0 +1,118 @@
/*
snd_null.c
include this instead of all the other snd_* files to have no sound
code whatsoever
Copyright (C) 1996-1997 Id Software, Inc.
Copyright (C) 1999,2000 contributors of the QuakeForge project
Please see the file "AUTHORS" for a list of contributors
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
as published by the Free Software Foundation; either version 2
of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to:
Free Software Foundation, Inc.
59 Temple Place - Suite 330
Boston, MA 02111-1307, USA
$Id$
*/
#include <qtypes.h>
#include <sound.h>
// =======================================================================
// Various variables also defined in snd_dma.c
// FIXME - should be put in one place
// =======================================================================
channel_t channels[MAX_CHANNELS];
int total_channels;
volatile dma_t *shm = 0;
cvar_t *loadas8bit;
int paintedtime; // sample PAIRS
cvar_t *bgmvolume;
cvar_t *volume;
void S_Init (void)
{
}
void S_AmbientOff (void)
{
}
void S_AmbientOn (void)
{
}
void S_Shutdown (void)
{
}
void S_TouchSound (char *sample)
{
}
void S_ClearBuffer (void)
{
}
void S_StaticSound (sfx_t *sfx, vec3_t origin, float vol, float attenuation)
{
}
void S_StartSound (int entnum, int entchannel, sfx_t *sfx, vec3_t origin, float fvol, float attenuation)
{
}
void S_StopSound (int entnum, int entchannel)
{
}
sfx_t *S_PrecacheSound (char *sample)
{
return NULL;
}
void S_ClearPrecache (void)
{
}
void S_Update (vec3_t origin, vec3_t v_forward, vec3_t v_right, vec3_t v_up)
{
}
void S_StopAllSounds (qboolean clear)
{
}
void S_BeginPrecaching (void)
{
}
void S_EndPrecaching (void)
{
}
void S_ExtraUpdate (void)
{
}
void S_LocalSound (char *s)
{
}