quakeforge/qw/source/Makefile.am
Brian Koropoff 9b63402f12 Added llist.[ch], a set of general-purpose linked list routines. Added
cl_chat.[ch] to qw to hold advanced chat features, the first of which is
the ability to ignore chat messages from annoying players.  Some polishing
in this area still remains, but the current implementation seems to work.
2003-07-18 06:27:26 +00:00

263 lines
8.3 KiB
Makefile

## Process this file with automake to produce Makefile.in
#
# Makefile.am
#
# Automake-using build system for QuakeForge
#
# Copyright (C) 2000 Jeff Teunissen <deek@quakeforge.net>
#
# This Makefile 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$
#
AUTOMAKE_OPTIONS= foreign
# Stuff that is common to both client and server
INCLUDES= -I$(top_srcdir)/include -I$(top_srcdir)/qw/include
SDL_LIBS = @SDL_LIBS@
bin_PROGRAMS= @QW_TARGETS@
EXTRA_PROGRAMS= qw-client-fbdev qw-client-glx qw-client-mgl qw-client-sdl \
qw-client-sdl32 qw-client-sgl qw-client-svga qw-client-3dfx \
qw-client-wgl qw-client-x11 qw-server qw-master
if ASM_ARCH
asm= libasm.a
else
asm=
endif
noinst_LIBRARIES= @qw_libs@ $(asm)
EXTRA_LIBRARIES=libasm.a libqw_client.a libqw_common.a libqw_sdl.a libqw_server.a
libasm_a_SOURCES= worlda.S
libqw_common_a_SOURCES= com.c game.c msg_ucmd.c pmove.c pmovetst.c net_packetlog.c
libqw_sdl_a_SOURCES=cl_sys_sdl.c
libqw_sdl_a_CFLAGS=$(SDL_CFLAGS)
common_ldflags= -export-dynamic
# Server builds
#
# ... System type
if SYSTYPE_WIN32
syssv_SRC= sv_sys_win.c
else
syssv_SRC= sv_sys_unix.c
endif
EXTRA_DIST=sv_sys_win.c sv_sys_unix.c
libqw_server_a_SOURCES= \
crudefile.c sv_ccmds.c sv_demo.c sv_ents.c sv_gib.c sv_init.c sv_main.c \
sv_move.c sv_nchan.c sv_phys.c sv_pr_cmds.c sv_progs.c sv_send.c \
sv_user.c world.c $(syssv_SRC)
qf_server_LIBS= \
$(SERVER_PLUGIN_STATIC_LIBS) \
$(top_builddir)/libs/net/libnet_chan.la \
$(top_builddir)/libs/gamecode/builtins/libQFcsqc.la \
$(top_builddir)/libs/models/libQFmodels.la \
$(top_builddir)/libs/gamecode/builtins/libQFgamecode_builtins.la \
$(top_builddir)/libs/gamecode/engine/libQFgamecode.la \
$(top_builddir)/libs/console/libQFconsole.la \
$(top_builddir)/libs/util/libQFutil.la \
$(top_builddir)/libs/gib/libQFgib.la
qw_server_SOURCES= sv_model.c
qw_server_LDADD= libqw_server.a libqw_common.a libasm.a $(qf_server_LIBS) $(NET_LIBS) $(DL_LIBS) $(CURSES_LIBS)
qw_server_LDFLAGS= $(common_ldflags)
qw_server_DEPENDENCIES= libqw_common.a libqw_server.a libasm.a $(qf_server_LIBS)
qw_master_SOURCES= master.c
qw_master_LDADD= $(top_builddir)/libs/util/libQFutil.la $(NET_LIBS)
qw_master_LDFLAGS= $(common_ldflags) -static
cl_plugin_LIBS= \
$(CLIENT_PLUGIN_STATIC_LIBS) \
$(top_builddir)/libs/gamecode/builtins/libQFcsqc.la
qf_client_LIBS= \
$(top_builddir)/libs/net/libnet_chan.la \
$(top_builddir)/libs/console/libQFconsole.la \
$(top_builddir)/libs/video/targets/libQFjs.la \
$(top_builddir)/libs/gamecode/builtins/libQFgamecode_builtins.la \
$(top_builddir)/libs/gamecode/engine/libQFgamecode.la \
$(top_builddir)/libs/audio/libQFcd.la \
$(top_builddir)/libs/audio/libQFsound.la \
$(top_builddir)/libs/util/libQFutil.la \
$(top_builddir)/libs/gib/libQFgib.la
client_LIBS= libasm.a $(qf_client_LIBS)
client_libs= libqw_client.a libqw_common.a
libqw_client_a_SOURCES= \
cl_cam.c cl_chat.c cl_cmd.c cl_cvar.c cl_demo.c cl_ents.c \
cl_input.c cl_main.c cl_ngraph.c cl_parse.c cl_pred.c \
cl_screen.c cl_skin.c cl_slist.c cl_tent.c cl_view.c \
locs.c sbar.c skin.c teamplay.c
# Software-rendering clients
# We need libQFrenderer_sw to always be static -- there's assembler in there
soft_LIBS= $(top_builddir)/libs/video/renderer/libQFrenderer_sw.la \
$(top_builddir)/libs/models/libQFmodels_sw.la
# ... Linux FBDev
qw_client_fbdev_libs= \
$(client_libs) \
$(cl_plugin_LIBS) \
$(soft_LIBS) \
$(top_builddir)/libs/video/targets/libQFfbdev.la \
$(client_LIBS)
qw_client_fbdev_SOURCES= cl_sys_unix.c
qw_client_fbdev_LDADD= $(qw_client_fbdev_libs) $(NET_LIBS)
qw_client_fbdev_LDFLAGS= $(common_ldflags)
qw_client_fbdev_DEPENDENCIES= $(qw_client_fbdev_libs)
# ... SciTech MGL
qw_client_mgl_libs= \
$(client_libs) \
$(cl_plugin_LIBS) \
$(soft_LIBS) \
$(top_builddir)/libs/video/targets/libQFmgl.la \
$(client_LIBS)
qw_client_mgl_SOURCES= cl_sys_win.c
qw_client_mgl_LDADD= $(qw_client_mgl_libs) $(MGL_LIBS) $(NET_LIBS)
qw_client_mgl_LDFLAGS= $(common_ldflags)
qw_client_mgl_DEPENDENCIES= $(qw_client_mgl_libs)
# ... Simple DirectMedia Layer, version 1.2 and higher
qw_client_sdl_libs= \
libqw_sdl.a \
$(client_libs) \
$(cl_plugin_LIBS) \
$(soft_LIBS) \
$(top_builddir)/libs/video/targets/libQFsdl.la \
$(client_LIBS)
qw_client_sdl_SOURCES=sdl_link.c
qw_client_sdl_LDADD= libqw_sdl.a $(qw_client_sdl_libs) $(SDL_LIBS) $(NET_LIBS)
qw_client_sdl_LDFLAGS= $(common_ldflags)
qw_client_sdl_DEPENDENCIES= libqw_sdl.a $(qw_client_sdl_libs)
# ... 32-bit software, SDL
qw_client_sdl32_libs= \
libqw_sdl.a \
$(client_libs) \
$(cl_plugin_LIBS) \
$(top_builddir)/libs/video/renderer/libQFrenderer_sw32.la \
$(top_builddir)/libs/models/libQFmodels_sw.la \
$(top_builddir)/libs/video/targets/libQFsdl32.la \
$(client_LIBS)
qw_client_sdl32_SOURCES=sdl_link.c
qw_client_sdl32_LDADD= libqw_sdl.a $(qw_client_sdl32_libs) $(SDL_LIBS) $(NET_LIBS)
qw_client_sdl32_LDFLAGS=$(common_ldflags)
qw_client_sdl32_DEPENDENCIES= libqw_sdl.a $(qw_client_sdl32_libs)
# ... Linux SVGAlib
qw_client_svga_libs= \
$(client_libs) \
$(cl_plugin_LIBS) \
$(soft_LIBS) \
$(top_builddir)/libs/video/targets/libQFsvga.la \
$(client_LIBS)
qw_client_svga_SOURCES= cl_sys_unix.c
qw_client_svga_LDADD= $(qw_client_svga_libs) $(SVGA_LIBS) $(NET_LIBS)
qw_client_svga_LDFLAGS= $(common_ldflags)
qw_client_svga_DEPENDENCIES= $(qw_client_svga_libs)
# ... X11
qw_client_x11_libs= \
$(client_libs) \
$(cl_plugin_LIBS) \
$(soft_LIBS) \
$(top_builddir)/libs/video/targets/libQFx11.la \
$(client_LIBS)
qw_client_x11_SOURCES= cl_sys_unix.c
qw_client_x11_LDADD= $(qw_client_x11_libs) \
$(X_PRE_LIBS) $(VIDMODE_LIBS) $(DGA_LIBS) $(X_LIBS) -lX11 \
$(X_EXTRA_LIBS) $(X_SHM_LIB) $(NET_LIBS)
qw_client_x11_LDFLAGS= $(common_ldflags)
qw_client_x11_DEPENDENCIES= $(qw_client_x11_libs)
# OpenGL-using clients
opengl_LIBS= $(top_builddir)/libs/video/renderer/libQFrenderer_gl.la \
$(top_builddir)/libs/models/libQFmodels_gl.la
# ... OpenGL in X Window
qw_client_glx_libs= \
$(client_libs) \
$(cl_plugin_LIBS) \
$(opengl_LIBS) \
$(top_builddir)/libs/video/targets/libQFglx.la \
$(client_LIBS)
qw_client_glx_SOURCES= cl_sys_unix.c
qw_client_glx_LDADD= $(qw_client_glx_libs) \
$(X_PRE_LIBS) $(VIDMODE_LIBS) $(DGA_LIBS) $(X_LIBS) -lX11 \
-lXext $(X_EXTRA_LIBS) $(DL_LIBS) $(NET_LIBS)
qw_client_glx_LDFLAGS= $(common_ldflags)
qw_client_glx_DEPENDENCIES= $(qw_client_glx_libs)
# ... Linux 3DFX
qw_client_3dfx_libs= \
$(client_libs) \
$(cl_plugin_LIBS) \
$(opengl_LIBS) \
$(top_builddir)/libs/video/targets/libQFtdfx.la \
$(client_LIBS)
qw_client_3dfx_SOURCES= cl_sys_unix.c
qw_client_3dfx_LDADD= $(qw_client_3dfx_libs) \
$(SVGA_LIBS) $(NET_LIBS)
qw_client_3dfx_LDFLAGS= $(common_ldflags)
qw_client_3dfx_DEPENDENCIES= $(qw_client_3dfx_libs)
# ... Simple DirectMedia Layer, version 1.2 and higher, in GL mode
qw_client_sgl_libs= \
libqw_sdl.a \
$(client_libs) \
$(cl_plugin_LIBS) \
$(opengl_LIBS) \
$(top_builddir)/libs/video/targets/libQFsgl.la \
$(client_LIBS)
qw_client_sgl_SOURCES=sdl_link.c
qw_client_sgl_LDADD= $(qw_client_sgl_libs) $(SDL_LIBS) $(DL_LIBS) $(NET_LIBS)
qw_client_sgl_LDFLAGS= $(common_ldflags)
qw_client_sgl_DEPENDENCIES= $(qw_client_sgl_libs)
# ... SGI/Microsoft WGL (Windows OpenGL)
qw_client_wgl_libs= \
$(client_libs) \
$(cl_plugin_LIBS) \
$(opengl_LIBS) \
$(top_builddir)/libs/video/targets/libQFwgl.la \
$(client_LIBS)
qw_client_wgl_SOURCES= cl_sys_win.c
qw_client_wgl_LDADD= $(qw_client_wgl_libs) -lgdi32 -lwinmm $(NET_LIBS)
qw_client_wgl_LDFLAGS= $(common_ldflags)
qw_client_wgl_DEPENDENCIES= $(qw_client_wgl_libs)
# Stuff that doesn't get linked into an executable NEEDS to be mentioned here,
# or it won't be distributed with 'make dist'
# Kill the temp files, hopefully.
CLEANFILES = *.i *.s $(YACCLEX_CLEANFILES)