Note: LucasForums Archive Project
The content here was reconstructed by scraping the Wayback Machine in an effort to restore some of what was lost when LF went down. The LucasForums Archive Project claims no ownership over the content or assets that were archived on archive.org.

This project is meant for research purposes only.

The Official ICC Makefile for JKA's SDK

Page: 1 of 1
 razorace
04-08-2004, 1:26 AM
#1
That's right ladies, I just got the ICC makefile directly from the dude that did the linux compiles for Raven. I hope this helps everyone.
Attachced... Just replace the makefile in the codemp/unix directory, and run
make release
to build a final releae or
make
or
make debug
to create a debug release

#
# GNU Make required
#

PLATFORM=$(shell uname|tr A-Z a-z)
PLATFORM_RELEASE=$(shell uname -r)

###
### These paths are where you probably want to change things
###

# Where we are building from (where the source code should be!)
MOUNT_DIR=../


# Where we are building to, libMesaVoodooGL.so.3.3 should be here, etc.
# the demo pk3 file should be here in demoq3/pak0.pk3 or baseq3/pak0.pk3
BDIR=$(MOUNT_DIR)/../run


# Build name
# BUILD_NAME=$(BUILD_NAME)
BUILD_NAME=jamp



################################################## ###########################
##
## You shouldn't have to touch anything below here
##
################################################## ###########################

BASEQ3_DIR=$(BDIR)/base

BD=debug$(ARCH)$(GLIBC)
BR=release$(ARCH)$(GLIBC)
CDIR=$(MOUNT_DIR)/client
SDIR=$(MOUNT_DIR)/server
RDIR=$(MOUNT_DIR)/renderer
CMDIR=$(MOUNT_DIR)/qcommon
UDIR=$(MOUNT_DIR)/unix
GDIR=$(MOUNT_DIR)/game
CGDIR=$(MOUNT_DIR)/cgame
BAIDIR=$(GDIR)
BLIBDIR=$(MOUNT_DIR)/botlib
NDIR=$(MOUNT_DIR)/null
UIDIR=$(MOUNT_DIR)/ui
Q3UIDIR=$(MOUNT_DIR)/q3_ui
FTDIR=$(MOUNT_DIR)/ft2
JPDIR=$(MOUNT_DIR)/jpeg-6
SPLNDIR=$(MOUNT_DIR)/splines
GHOUL2DIR=$(MOUNT_DIR)/ghoul2
IDIR=$(MOUNT_DIR)/icarus
ZLIB=$(MOUNT_DIR)/zlib32
RMGDIR=$(MOUNT_DIR)/RMG

################################################## ###########################
# SETUP AND BUILD -- LINUX
################################################## ###########################

## Defaults
DLL_ONLY=false

ifneq (,$(findstring libc6,$(shell if [ -e /lib/libc.so.6* ];then echo libc6;fi)))
GLIBC=-glibc
else
GLIBC=
endif #libc6 test

MESADIR=../Mesa/
ARCH=i386
RPMARCH=i386
VENDOR=unknown
DLL_ONLY=false

BASE_CFLAGS = -D_JK2 -D_M_IX86 -Kc++ -w -I/opt/intel/compiler50/ia32/include
# rcg010216: DLL_ONLY for PPC
ifeq ($(strip $(DLL_ONLY)),true)
BASE_CFLAGS += -DDLL_ONLY
endif


GL_CFAGS = -I/usr/X11R6/include

DEBUG_CFLAGS=$(BASE_CFLAGS) -g
NEWPGCC=/opt/intel/compiler50/ia32/bin/icc
CC=$(shell if [ -f $(NEWPGCC) ]; then echo $(NEWPGCC); else echo pgcc; fi )
CXX=/usr/bin/g++
# NOTE: the -fomit-frame-pointer option leads to an unstable binary on my test box if it was built on the main box
# but building on the Mdk 7.2 baseline seems to work
# -O2 -unroll
RELEASE_CFLAGS=$(BASE_CFLAGS) -DNDEBUG -O2 -unroll -DFINAL_BUILD

LIBEXT=a

SHLIBEXT=so
SHLIBCFLAGS=-D_JK2 -DJK2AWARDS -DQAGAME -DMISSIONPACK
SHLIBLDFLAGS=-shared $(LDFLAGS)

ARFLAGS=ar rv
RANLIB=ranlib

THREAD_LDFLAGS=-lpthread
LDFLAGS=-ldl -lm
GLLDFLAGS=-L/usr/X11R6/lib -L$(MESADIR)/lib -lX11 -lXext -lXxf86dga -lXxf86vm

# TARGETS=\
# $(B)/$(PLATFORM)jampded \
# $(B)/baseq3/jampgame$(ARCH).$(SHLIBEXT)

TARGETS=\
$(B)/baseq3/jampgame$(ARCH).$(SHLIBEXT)

DO_CC=$(CC) $(CFLAGS) -o $@ -c $<
DO_CXX=$(CXX) $(CFLAGS) -o $@ -c $<
DO_SMP_CC=$(CC) $(CFLAGS) -DSMP -o $@ -c $<
DO_BOT_CC=$(CC) $(CFLAGS) -use_msasm -DBOTLIB -o $@ -c $< # $(SHLIBCFLAGS) # bk001212
DO_DEBUG_CC=$(CC) $(DEBUG_CFLAGS) -o $@ -c $<
DO_SHLIB_CC=$(CC) $(CFLAGS) $(SHLIBCFLAGS) -use_msasm -o $@ -c $<
DO_SHLIB_DEBUG_CC=$(CC) $(DEBUG_CFLAGS) $(SHLIBCFLAGS) -o $@ -c $<
DO_AS=$(CC) $(CFLAGS) -DELF -x assembler-with-cpp -o $@ -c $<
DO_NASM=nasm -f elf -o $@ $<
DO_DED_CC=$(CC) -DDEDICATED -DC_ONLY $(CFLAGS) -use_msasm -o $@ -c $<
DO_DED_CC2=$(CC) -D__linux2__ -DDEDICATED -DC_ONLY $(CFLAGS) -o $@ -c $<
DO_DED_CPP=$(CXX) -DDEDICATED -DC_ONLY $(CFLAGS) -o $@ -c $<

#DO_LCC=$(LCC) -o $@ -S -Wf-target=bytecode -Wf-g -DQ3_VM -I$(CGDIR) -I$(GDIR) -I$(UIDIR) $<

#### DEFAULT TARGET
default:build_debug

debug: build_debug
release: build_release

build_debug:
$(MAKE) targets B=$(BD) CFLAGS="$(DEBUG_CFLAGS)"

build_release:
$(MAKE) targets B=$(BR) CFLAGS="$(RELEASE_CFLAGS)"

#Build both debug and release builds
all:build_debug build_release


targets:makedirs $(TARGETS)

makedirs:
@if [ ! -d $(B) ];then mkdir $(B);fi
@if [ ! -d $(B)/ded ];then mkdir $(B)/ded;fi
@if [ ! -d $(B)/baseq3 ];then mkdir $(B)/baseq3;fi
@if [ ! -d $(B)/baseq3/game ];then mkdir $(B)/baseq3/game;fi


################################################## ###########################
# DEDICATED SERVER
################################################## ###########################

Q3DOBJ = \
$(B)/ded/sv_bot.o \
$(B)/ded/sv_client.o \
$(B)/ded/sv_ccmds.o \
$(B)/ded/sv_game.o \
$(B)/ded/sv_init.o \
$(B)/ded/sv_main.o \
$(B)/ded/sv_net_chan.o \
$(B)/ded/sv_snapshot.o \
$(B)/ded/sv_world.o \
\
$(B)/ded/cm_load.o \
$(B)/ded/stringed_ingame.o \
$(B)/ded/stringed_interface.o \
$(B)/ded/GenericParser2.o \
$(B)/ded/cm_patch.o \
$(B)/ded/cm_polylib.o \
$(B)/ded/cm_test.o \
$(B)/ded/cm_trace.o \
$(B)/ded/common.o \
$(B)/ded/cvar.o \
$(B)/ded/md4.o \
$(B)/ded/msg.o \
$(B)/ded/net_chan.o \
$(B)/ded/huffman.o \
\
$(B)/ded/q_math.o \
$(B)/ded/q_shared.o \
$(B)/ded/z_memman_pc.o \
\
$(B)/ded/inflate.o \
$(B)/ded/deflate.o \
$(B)/ded/zipcommon.o \
\
$(B)/ded/unzip.o \
$(B)/ded/vm.o \
$(B)/ded/vm_interpreted.o \
\
$(B)/ded/be_aas_bspq3.o \
$(B)/ded/be_aas_cluster.o \
$(B)/ded/be_aas_debug.o \
$(B)/ded/be_aas_entity.o \
$(B)/ded/be_aas_file.o \
$(B)/ded/be_aas_main.o \
$(B)/ded/be_aas_move.o \
$(B)/ded/be_aas_optimize.o \
$(B)/ded/be_aas_reach.o \
$(B)/ded/be_aas_route.o \
$(B)/ded/be_aas_routealt.o \
$(B)/ded/be_aas_sample.o \
$(B)/ded/be_ai_char.o \
$(B)/ded/be_ai_chat.o \
$(B)/ded/be_ai_gen.o \
$(B)/ded/be_ai_goal.o \
$(B)/ded/be_ai_move.o \
$(B)/ded/be_ai_weap.o \
$(B)/ded/be_ai_weight.o \
$(B)/ded/be_ea.o \
$(B)/ded/be_interface.o \
$(B)/ded/l_crc.o \
$(B)/ded/l_libvar.o \
$(B)/ded/l_log.o \
$(B)/ded/l_memory.o \
$(B)/ded/l_precomp.o \
$(B)/ded/l_script.o \
$(B)/ded/l_struct.o \
\
$(B)/ded/linux_common.o \
$(B)/ded/unix_main.o \
$(B)/ded/unix_net.o \
$(B)/ded/unix_shared.o \
\
$(B)/ded/G2_API.o \
$(B)/ded/G2_bolts.o \
$(B)/ded/G2_surfaces.o \
$(B)/ded/G2_misc.o \
\
$(B)/ded/null_client.o \
$(B)/ded/null_input.o \
$(B)/ded/null_snddma.o \
$(B)/ded/null_glimp.o \
$(B)/ded/null_renderer.o \
\
$(B)/ded/BlockStream.o \
$(B)/ded/GameInterface.o \
$(B)/ded/Instance.o \
$(B)/ded/Interface.o \
$(B)/ded/Memory.o \
$(B)/ded/Q3_Interface.o \
$(B)/ded/Q3_Registers.o \
$(B)/ded/Sequence.o \
$(B)/ded/Sequencer.o \
$(B)/ded/TaskManager.o \
\
$(B)/ded/tr_model.o \
$(B)/ded/tr_image.o \
$(B)/ded/RoffSystem.o \
$(B)/ded/tr_ghoul2.o \
$(B)/ded/matcomp.o \
$(B)/ded/tr_init.o \
$(B)/ded/tr_main.o \
$(B)/ded/tr_backend.o \
$(B)/ded/tr_mesh.o \
$(B)/ded/G2_bones.o \
$(B)/ded/tr_shader.o \
$(B)/ded/cmd_pc.o \
$(B)/ded/navigator.o \
$(B)/ded/gameCallbacks.o \
$(B)/ded/files_common.o \
$(B)/ded/cmd_common.o \
$(B)/ded/files_pc.o \
$(B)/ded/RM_Manager.o \
$(B)/ded/RM_Mission.o \
$(B)/ded/RM_Instance.o \
$(B)/ded/RM_InstanceFile.o \
$(B)/ded/RM_Instance_BSP.o \
$(B)/ded/RM_Instance_Group.o \
$(B)/ded/RM_Instance_Void.o \
$(B)/ded/RM_Instance_Random.o \
$(B)/ded/RM_Objective.o \
$(B)/ded/RM_Terrain.o \
$(B)/ded/RM_Path.o \
$(B)/ded/RM_Area.o \
$(B)/ded/cm_terrain.o \
$(B)/ded/cm_randomterrain.o \
$(B)/ded/cm_shader.o \

#ifeq ($(ARCH),i386)
Q3DOBJ += $(B)/ded/vm_x86.o $(B)/ded/ftol.o $(B)/ded/snapvector.o
#endif

ifeq ($(ARCH),ppc)
ifeq ($(DLL_ONLY),false)
Q3DOBJ += $(B)/ded/vm_ppc.o
endif
endif

$(B)/$(PLATFORM)jampded : $(Q3DOBJ)
$(CC) -o $@ $(Q3DOBJ) $(LDFLAGS)

$(B)/ded/sv_bot.o : $(SDIR)/sv_bot.cpp; $(DO_DED_CC)
$(B)/ded/sv_client.o : $(SDIR)/sv_client.cpp; $(DO_DED_CC)
$(B)/ded/sv_ccmds.o : $(SDIR)/sv_ccmds.cpp; $(DO_DED_CC)
$(B)/ded/sv_game.o : $(SDIR)/sv_game.cpp; $(DO_DED_CC)
$(B)/ded/sv_init.o : $(SDIR)/sv_init.cpp; $(DO_DED_CC)
$(B)/ded/sv_main.o : $(SDIR)/sv_main.cpp; $(DO_DED_CC)
$(B)/ded/sv_net_chan.o : $(SDIR)/sv_net_chan.cpp; $(DO_DED_CC)
$(B)/ded/sv_snapshot.o : $(SDIR)/sv_snapshot.cpp; $(DO_DED_CC)
$(B)/ded/sv_world.o : $(SDIR)/sv_world.cpp; $(DO_DED_CC)
$(B)/ded/gameCallbacks.o : $(SDIR)/NPCNav/gameCallbacks.cpp; $(DO_DED_CC)
$(B)/ded/navigator.o: $(SDIR)/NPCNav/navigator.cpp; $(DO_DED_CC)

$(B)/ded/cm_load.o : $(CMDIR)/cm_load.cpp; $(DO_DED_CC)
$(B)/ded/stringed_ingame.o : $(CMDIR)/stringed_ingame.cpp; $(DO_DED_CC)
$(B)/ded/stringed_interface.o : $(CMDIR)/stringed_interface.cpp; $(DO_DED_CC)
$(B)/ded/GenericParser2.o : $(CMDIR)/GenericParser2.cpp; $(DO_DED_CC)
$(B)/ded/cm_shader.o : $(CMDIR)/cm_shader.cpp; $(DO_DED_CC)
$(B)/ded/cm_polylib.o : $(CMDIR)/cm_polylib.cpp; $(DO_DED_CC)
$(B)/ded/cm_test.o : $(CMDIR)/cm_test.cpp; $(DO_DED_CC)
$(B)/ded/cm_trace.o : $(CMDIR)/cm_trace.cpp; $(DO_DED_CC)
$(B)/ded/cm_patch.o : $(CMDIR)/cm_patch.cpp; $(DO_DED_CC)
$(B)/ded/common.o : $(CMDIR)/common.cpp; $(DO_DED_CC)
$(B)/ded/cvar.o : $(CMDIR)/cvar.cpp; $(DO_DED_CC)
$(B)/ded/files.o : $(CMDIR)/files.cpp; $(DO_DED_CC)
$(B)/ded/md4.o : $(CMDIR)/md4.cpp; $(DO_DED_CC)
$(B)/ded/msg.o : $(CMDIR)/msg.cpp; $(DO_DED_CC)
$(B)/ded/net_chan.o : $(CMDIR)/net_chan.cpp; $(DO_DED_CC)
$(B)/ded/huffman.o : $(CMDIR)/huffman.cpp; $(DO_DED_CC)
$(B)/ded/q_shared.o : $(CMDIR)/q_shared.cpp; $(DO_DED_CC)
$(B)/ded/q_math.o : $(GDIR)/q_math.c; $(DO_DED_CC)
$(B)/ded/z_memman_pc.o : $(CMDIR)/z_memman_pc.cpp; $(DO_DED_CC)
$(B)/ded/files_common.o : $(CMDIR)/files_common.cpp; $(DO_DED_CC)
$(B)/ded/cmd_common.o : $(CMDIR)/cmd_common.cpp; $(DO_DED_CC)
$(B)/ded/files_pc.o : $(CMDIR)/files_pc.cpp; $(DO_DED_CC)

$(B)/ded/RM_Manager.o : $(RMGDIR)/RM_Manager.cpp; $(DO_DED_CC)
$(B)/ded/RM_Mission.o : $(RMGDIR)/RM_Mission.cpp; $(DO_DED_CC)
$(B)/ded/RM_Instance.o: $(RMGDIR)/RM_Instance.cpp; $(DO_DED_CC)
$(B)/ded/RM_InstanceFile.o : $(RMGDIR)/RM_InstanceFile.cpp; $(DO_DED_CC)
$(B)/ded/RM_Instance_Void.o : $(RMGDIR)/RM_Instance_Void.cpp; $(DO_DED_CC)
$(B)/ded/RM_Instance_Random.o : $(RMGDIR)/RM_Instance_Random.cpp; $(DO_DED_CC)
$(B)/ded/RM_Instance_Group.o : $(RMGDIR)/RM_Instance_Group.cpp; $(DO_DED_CC)
$(B)/ded/RM_Instance_BSP.o : $(RMGDIR)/RM_Instance_BSP.cpp; $(DO_DED_CC)
$(B)/ded/RM_Objective.o : $(RMGDIR)/RM_Objective.cpp; $(DO_DED_CC)
$(B)/ded/RM_Path.o : $(RMGDIR)/RM_Path.cpp; $(DO_DED_CC)
$(B)/ded/RM_Area.o : $(RMGDIR)/RM_Area.cpp; $(DO_DED_CC)
$(B)/ded/RM_Terrain.o : $(RMGDIR)/RM_Terrain.cpp; $(DO_DED_CC)
$(B)/ded/tr_terrain.o : $(RDIR)/tr_terrain.cpp; $(DO_DED_CC)
$(B)/ded/cm_terrain.o : $(CMDIR)/cm_terrain.cpp; $(DO_DED_CC)
$(B)/ded/cm_randomterrain.o : $(CMDIR)/cm_randomterrain.cpp; $(DO_DED_CC)

$(B)/ded/G2_API.o : $(GHOUL2DIR)/G2_API.cpp; $(DO_DED_CC)
$(B)/ded/G2_bolts.o : $(GHOUL2DIR)/G2_bolts.cpp; $(DO_DED_CC)
$(B)/ded/G2_bones.o : $(GHOUL2DIR)/G2_bones.cpp; $(DO_DED_CC)
$(B)/ded/G2_misc.o : $(GHOUL2DIR)/G2_misc.cpp; $(DO_DED_CC)
$(B)/ded/G2_surfaces.o : $(GHOUL2DIR)/G2_surfaces.cpp; $(DO_DED_CC)

$(B)/ded/RoffSystem.o : $(CMDIR)/RoffSystem.cpp; $(DO_DED_CC)

$(B)/ded/inflate.o : $(ZLIB)/inflate.cpp; $(DO_DED_CC)
$(B)/ded/deflate.o : $(ZLIB)/deflate.cpp; $(DO_DED_CC)
$(B)/ded/zipcommon.o : $(ZLIB)/zipcommon.cpp; $(DO_DED_CC)

$(B)/ded/tr_model.o : $(RDIR)/tr_model.cpp; $(DO_DED_CC)
$(B)/ded/tr_image.o : $(RDIR)/tr_image.cpp; $(DO_DED_CC)
$(B)/ded/tr_ghoul2.o : $(RDIR)/tr_ghoul2.cpp; $(DO_DED_CC)
$(B)/ded/tr_shader.o : $(RDIR)/tr_shader.cpp; $(DO_DED_CC)
$(B)/ded/tr_sky.o : $(RDIR)/tr_shader.cpp; $(DO_DED_CC)
$(B)/ded/tr_cmds.o : $(RDIR)/tr_cmds.cpp; $(DO_DED_CC)
$(B)/ded/tr_backend.o : $(RDIR)/tr_backend.cpp; $(DO_DED_CC)
$(B)/ded/tr_animation.o : $(RDIR)/tr_animation.cpp; $(DO_DED_CC)
$(B)/ded/tr_bsp.o : $(RDIR)/tr_bsp.cpp; $(DO_DED_CC)
$(B)/ded/tr_curve.o : $(RDIR)/tr_curve.cpp; $(DO_DED_CC)
$(B)/ded/tr_flares.o : $(RDIR)/tr_flares.cpp; $(DO_DED_CC)
$(B)/ded/tr_font.o : $(RDIR)/tr_font.cpp; $(DO_DED_CC)
$(B)/ded/tr_init.o : $(RDIR)/tr_init.cpp; $(DO_DED_CC)
$(B)/ded/tr_light.o : $(RDIR)/tr_light.cpp; $(DO_DED_CC)
$(B)/ded/tr_main.o : $(RDIR)/tr_main.cpp; $(DO_DED_CC)
$(B)/ded/tr_marks.o : $(RDIR)/tr_marks.cpp; $(DO_DED_CC)
$(B)/ded/tr_mesh.o : $(RDIR)/tr_mesh.cpp; $(DO_DED_CC)
$(B)/ded/tr_noise.o : $(RDIR)/tr_noise.cpp; $(DO_DED_CC)
$(B)/ded/tr_quicksprite.o : $(RDIR)/tr_quicksprite.cpp; $(DO_DED_CC)
$(B)/ded/tr_scene.o : $(RDIR)/tr_scene.cpp; $(DO_DED_CC)
$(B)/ded/tr_shade.o : $(RDIR)/tr_shade.cpp; $(DO_DED_CC)
$(B)/ded/tr_shade_calc.o : $(RDIR)/tr_shade_calc.cpp; $(DO_DED_CC)
$(B)/ded/tr_shadows.o : $(RDIR)/tr_shadows.cpp; $(DO_DED_CC)
$(B)/ded/tr_surface.o : $(RDIR)/tr_surface.cpp; $(DO_DED_CC)
$(B)/ded/tr_surfacesprites.o : $(RDIR)/tr_surfacesprites.cpp; $(DO_DED_CC)
$(B)/ded/tr_world.o : $(RDIR)/tr_world.cpp; $(DO_DED_CC)
$(B)/ded/tr_worldeffects.o : $(RDIR)/tr_worldeffects.cpp; $(DO_DED_CC)
$(B)/ded/matcomp.o : $(RDIR)/matcomp.c; $(DO_DED_CC)


$(B)/ded/be_aas_bspq3.o : $(BLIBDIR)/be_aas_bspq3.cpp; $(DO_BOT_CC)
$(B)/ded/be_aas_cluster.o : $(BLIBDIR)/be_aas_cluster.cpp; $(DO_BOT_CC)
$(B)/ded/be_aas_debug.o : $(BLIBDIR)/be_aas_debug.cpp; $(DO_BOT_CC)
$(B)/ded/be_aas_entity.o : $(BLIBDIR)/be_aas_entity.cpp; $(DO_BOT_CC)
$(B)/ded/be_aas_file.o : $(BLIBDIR)/be_aas_file.cpp; $(DO_BOT_CC)
$(B)/ded/be_aas_main.o : $(BLIBDIR)/be_aas_main.cpp; $(DO_BOT_CC)
$(B)/ded/be_aas_move.o : $(BLIBDIR)/be_aas_move.cpp; $(DO_BOT_CC)
$(B)/ded/be_aas_optimize.o : $(BLIBDIR)/be_aas_optimize.cpp; $(DO_BOT_CC)
$(B)/ded/be_aas_reach.o : $(BLIBDIR)/be_aas_reach.cpp; $(DO_BOT_CC)
$(B)/ded/be_aas_route.o : $(BLIBDIR)/be_aas_route.cpp; $(DO_BOT_CC)
$(B)/ded/be_aas_routealt.o : $(BLIBDIR)/be_aas_routealt.cpp; $(DO_BOT_CC)
$(B)/ded/be_aas_sample.o : $(BLIBDIR)/be_aas_sample.cpp; $(DO_BOT_CC)
$(B)/ded/be_ai_char.o : $(BLIBDIR)/be_ai_char.cpp; $(DO_BOT_CC)
$(B)/ded/be_ai_chat.o : $(BLIBDIR)/be_ai_chat.cpp; $(DO_BOT_CC)
$(B)/ded/be_ai_gen.o : $(BLIBDIR)/be_ai_gen.cpp; $(DO_BOT_CC)
$(B)/ded/be_ai_goal.o : $(BLIBDIR)/be_ai_goal.cpp; $(DO_BOT_CC)
$(B)/ded/be_ai_move.o : $(BLIBDIR)/be_ai_move.cpp; $(DO_BOT_CC)
$(B)/ded/be_ai_weap.o : $(BLIBDIR)/be_ai_weap.cpp; $(DO_BOT_CC)
$(B)/ded/be_ai_weight.o : $(BLIBDIR)/be_ai_weight.cpp; $(DO_BOT_CC)
$(B)/ded/be_ea.o : $(BLIBDIR)/be_ea.cpp; $(DO_BOT_CC)
$(B)/ded/be_interface.o : $(BLIBDIR)/be_interface.cpp; $(DO_BOT_CC)
$(B)/ded/l_crc.o : $(BLIBDIR)/l_crc.cpp; $(DO_BOT_CC)
$(B)/ded/l_libvar.o : $(BLIBDIR)/l_libvar.cpp; $(DO_BOT_CC)
$(B)/ded/l_log.o : $(BLIBDIR)/l_log.cpp; $(DO_BOT_CC)
$(B)/ded/l_memory.o : $(BLIBDIR)/l_memory.cpp; $(DO_BOT_CC)
$(B)/ded/l_precomp.o : $(BLIBDIR)/l_precomp.cpp; $(DO_BOT_CC)
$(B)/ded/l_script.o : $(BLIBDIR)/l_script.cpp; $(DO_BOT_CC)
$(B)/ded/l_struct.o : $(BLIBDIR)/l_struct.cpp; $(DO_BOT_CC)

$(B)/ded/linux_common.o : $(UDIR)/linux_common.c; $(DO_CC)
$(B)/ded/linux_glimp.o : $(UDIR)/linux_glimp.c; $(DO_DED_CC)
$(B)/ded/unix_main.o : $(UDIR)/unix_main.c; $(DO_DED_CC)
$(B)/ded/unix_net.o : $(UDIR)/unix_net.c; $(DO_DED_CC)
$(B)/ded/unix_shared.o : $(UDIR)/unix_shared.cpp; $(DO_DED_CC)
$(B)/ded/linux_qgl.o : $(UDIR)/linux_qgl.c; $(DO_DED_CC)
$(B)/ded/null_client.o : $(NDIR)/null_client.cpp; $(DO_DED_CC)
$(B)/ded/null_input.o : $(NDIR)/null_input.cpp; $(DO_DED_CC)
$(B)/ded/null_snddma.o : $(NDIR)/null_snddma.cpp; $(DO_DED_CC)
$(B)/ded/null_glimp.o : $(NDIR)/null_glimp.cpp; $(DO_DED_CC)
$(B)/ded/null_main.o : $(NDIR)/null_main.cpp; $(DO_DED_CC)
$(B)/ded/null_net.o : $(NDIR)/null_net.cpp; $(DO_DED_CC)
$(B)/ded/null_renderer.o : $(NDIR)/null_renderer.cpp; $(DO_DED_CC)
$(B)/ded/unzip.o : $(CMDIR)/unzip.cpp; $(DO_DED_CC)
$(B)/ded/vm.o : $(CMDIR)/vm.cpp; $(DO_DED_CC)
$(B)/ded/vm_interpreted.o : $(CMDIR)/vm_interpreted.cpp; $(DO_DED_CC)
$(B)/ded/cmd_pc.o : $(CMDIR)/cmd_pc.cpp; $(DO_DED_CC)

$(B)/ded/BlockStream.o : $(IDIR)/BlockStream.cpp; $(DO_DED_CC)
$(B)/ded/GameInterface.o : $(IDIR)/GameInterface.cpp; $(DO_DED_CC)
$(B)/ded/Instance.o : $(IDIR)/Instance.cpp; $(DO_DED_CC)
$(B)/ded/Interface.o : $(IDIR)/Interface.cpp; $(DO_DED_CC)
$(B)/ded/Memory.o : $(IDIR)/Memory.cpp; $(DO_DED_CC)
$(B)/ded/Q3_Interface.o : $(IDIR)/Q3_Interface.cpp; $(DO_DED_CC)
$(B)/ded/Q3_Registers.o : $(IDIR)/Q3_Registers.cpp; $(DO_DED_CC)
$(B)/ded/Sequence.o: $(IDIR)/Sequence.cpp; $(DO_DED_CC)
$(B)/ded/Sequencer.o : $(IDIR)/Sequencer.cpp; $(DO_DED_CC)
$(B)/ded/TaskManager.o: $(IDIR)/TaskManager.cpp; $(DO_DED_CC)

#ifeq ($(ARCH),i386)
$(B)/ded/vm_x86.o : $(CMDIR)/vm_x86.cpp; $(DO_DED_CC2)
$(B)/ded/ftol.o : $(UDIR)/ftol.nasm; $(DO_NASM)
$(B)/ded/snapvector.o : $(UDIR)/snapvector.nasm; $(DO_NASM)
#endif

ifeq ($(ARCH),ppc)
ifeq ($(DLL_ONLY),false)
$(B)/ded/vm_ppc.o : $(CMDIR)/vm_ppc.c; $(DO_DED_CC)
endif
endif


################################################## ###########################
## BASEQ3 GAME
################################################## ###########################

Q3GOBJ = \
$(B)/baseq3/game/g_main.o \
$(B)/baseq3/game/AnimalNPC.o \
$(B)/baseq3/game/FighterNPC.o \
$(B)/baseq3/game/NPC.o \
$(B)/baseq3/game/NPC_AI_Atst.o \
$(B)/baseq3/game/NPC_AI_Default.o \
$(B)/baseq3/game/NPC_AI_Droid.o \
$(B)/baseq3/game/NPC_AI_GalakMech.o \
$(B)/baseq3/game/NPC_AI_Grenadier.o \
$(B)/baseq3/game/NPC_AI_Howler.o \
$(B)/baseq3/game/NPC_AI_ImperialProbe.o \
$(B)/baseq3/game/NPC_AI_Interrogator.o \
$(B)/baseq3/game/NPC_AI_Jedi.o \
$(B)/baseq3/game/NPC_AI_Mark1.o \
$(B)/baseq3/game/NPC_AI_Mark2.o \
$(B)/baseq3/game/NPC_AI_MineMonster.o \
$(B)/baseq3/game/NPC_AI_Rancor.o \
$(B)/baseq3/game/NPC_AI_Remote.o \
$(B)/baseq3/game/NPC_AI_Seeker.o \
$(B)/baseq3/game/NPC_AI_Sentry.o \
$(B)/baseq3/game/NPC_AI_Sniper.o \
$(B)/baseq3/game/NPC_AI_Stormtrooper.o \
$(B)/baseq3/game/NPC_AI_Utils.o \
$(B)/baseq3/game/NPC_AI_Wampa.o \
$(B)/baseq3/game/NPC_behavior.o \
$(B)/baseq3/game/NPC_combat.o \
$(B)/baseq3/game/NPC_goal.o \
$(B)/baseq3/game/NPC_misc.o \
$(B)/baseq3/game/NPC_move.o \
$(B)/baseq3/game/NPC_reactions.o \
$(B)/baseq3/game/NPC_senses.o \
$(B)/baseq3/game/NPC_sounds.o \
$(B)/baseq3/game/NPC_spawn.o \
$(B)/baseq3/game/NPC_stats.o \
$(B)/baseq3/game/NPC_utils.o \
$(B)/baseq3/game/SpeederNPC.o \
$(B)/baseq3/game/WalkerNPC.o \
$(B)/baseq3/game/ai_main.o \
$(B)/baseq3/game/ai_util.o \
$(B)/baseq3/game/ai_wpnav.o \
$(B)/baseq3/game/bg_g2_utils.o \
$(B)/baseq3/game/bg_lib.o \
$(B)/baseq3/game/bg_misc.o \
$(B)/baseq3/game/bg_panimate.o \
$(B)/baseq3/game/bg_pmove.o \
$(B)/baseq3/game/bg_saber.o \
$(B)/baseq3/game/bg_saberLoad.o \
$(B)/baseq3/game/bg_saga.o \
$(B)/baseq3/game/bg_slidemove.o \
$(B)/baseq3/game/bg_vehicleLoad.o \
$(B)/baseq3/game/bg_weapons.o \
$(B)/baseq3/game/g_ICARUScb.o \
$(B)/baseq3/game/g_active.o \
$(B)/baseq3/game/g_arenas.o \
$(B)/baseq3/game/g_bot.o \
$(B)/baseq3/game/g_client.o \
$(B)/baseq3/game/g_cmds.o \
$(B)/baseq3/game/g_combat.o \
$(B)/baseq3/game/g_exphysics.o \
$(B)/baseq3/game/g_items.o \
$(B)/baseq3/game/g_log.o \
$(B)/baseq3/game/g_mem.o \
$(B)/baseq3/game/g_misc.o \
$(B)/baseq3/game/g_missile.o \
$(B)/baseq3/game/g_mover.o \
$(B)/baseq3/game/g_nav.o \
$(B)/baseq3/game/g_navnew.o \
$(B)/baseq3/game/g_object.o \
$(B)/baseq3/game/g_saga.o \
$(B)/baseq3/game/g_session.o \
$(B)/baseq3/game/g_spawn.o \
$(B)/baseq3/game/g_strap.o \
$(B)/baseq3/game/g_svcmds.o \
$(B)/baseq3/game/g_syscalls.o \
$(B)/baseq3/game/g_target.o \
$(B)/baseq3/game/g_team.o \
$(B)/baseq3/game/g_timer.o \
$(B)/baseq3/game/g_trigger.o \
$(B)/baseq3/game/g_turret.o \
$(B)/baseq3/game/g_turret_G2.o \
$(B)/baseq3/game/g_utils.o \
$(B)/baseq3/game/g_vehicleTurret.o \
$(B)/baseq3/game/g_vehicles.o \
$(B)/baseq3/game/g_weapon.o \
$(B)/baseq3/game/tri_coll_test.o \
$(B)/baseq3/game/w_force.o \
$(B)/baseq3/game/w_saber.o \
\
$(B)/baseq3/game/q_math.o \
$(B)/baseq3/game/q_shared.o

$(B)/baseq3/jampgame$(ARCH).$(SHLIBEXT) : $(Q3GOBJ)
$(CC) $(SHLIBLDFLAGS) -o $@ $(Q3GOBJ)

$(B)/baseq3/game/ai_main.o : $(GDIR)/ai_main.c; $(DO_SHLIB_CC)
$(B)/baseq3/game/ai_util.o : $(GDIR)/ai_util.c; $(DO_SHLIB_CC)
$(B)/baseq3/game/ai_wpnav.o : $(GDIR)/ai_wpnav.c; $(DO_SHLIB_CC)
$(B)/baseq3/game/AnimalNPC.o : $(GDIR)/AnimalNPC.c; $(DO_SHLIB_CC)
$(B)/baseq3/game/FighterNPC.o : $(GDIR)/FighterNPC.c; $(DO_SHLIB_CC)
$(B)/baseq3/game/NPC.o : $(GDIR)/NPC.c; $(DO_SHLIB_CC)
$(B)/baseq3/game/NPC_AI_Atst.o : $(GDIR)/NPC_AI_Atst.c; $(DO_SHLIB_CC)
$(B)/baseq3/game/NPC_AI_Default.o : $(GDIR)/NPC_AI_Default.c; $(DO_SHLIB_CC)
$(B)/baseq3/game/NPC_AI_Droid.o : $(GDIR)/NPC_AI_Droid.c; $(DO_SHLIB_CC)
$(B)/baseq3/game/NPC_AI_GalakMech.o : $(GDIR)/NPC_AI_GalakMech.c; $(DO_SHLIB_CC)
$(B)/baseq3/game/NPC_AI_Grenadier.o : $(GDIR)/NPC_AI_Grenadier.c; $(DO_SHLIB_CC)
$(B)/baseq3/game/NPC_AI_Howler.o : $(GDIR)/NPC_AI_Howler.c; $(DO_SHLIB_CC)
$(B)/baseq3/game/NPC_AI_ImperialProbe.o : $(GDIR)/NPC_AI_ImperialProbe.c; $(DO_SHLIB_CC)
$(B)/baseq3/game/NPC_AI_Interrogator.o : $(GDIR)/NPC_AI_Interrogator.c; $(DO_SHLIB_CC)
$(B)/baseq3/game/NPC_AI_Jedi.o : $(GDIR)/NPC_AI_Jedi.c; $(DO_SHLIB_CC)
$(B)/baseq3/game/NPC_AI_Mark1.o : $(GDIR)/NPC_AI_Mark1.c; $(DO_SHLIB_CC)
$(B)/baseq3/game/NPC_AI_Mark2.o : $(GDIR)/NPC_AI_Mark2.c; $(DO_SHLIB_CC)
$(B)/baseq3/game/NPC_AI_MineMonster.o : $(GDIR)/NPC_AI_MineMonster.c; $(DO_SHLIB_CC)
$(B)/baseq3/game/NPC_AI_Rancor.o : $(GDIR)/NPC_AI_Rancor.c; $(DO_SHLIB_CC)
$(B)/baseq3/game/NPC_AI_Remote.o : $(GDIR)/NPC_AI_Remote.c; $(DO_SHLIB_CC)
$(B)/baseq3/game/NPC_AI_Seeker.o : $(GDIR)/NPC_AI_Seeker.c; $(DO_SHLIB_CC)
$(B)/baseq3/game/NPC_AI_Sentry.o : $(GDIR)/NPC_AI_Sentry.c; $(DO_SHLIB_CC)
$(B)/baseq3/game/NPC_AI_Sniper.o : $(GDIR)/NPC_AI_Sniper.c; $(DO_SHLIB_CC)
$(B)/baseq3/game/NPC_AI_Stormtrooper.o : $(GDIR)/NPC_AI_Stormtrooper.c; $(DO_SHLIB_CC)
$(B)/baseq3/game/NPC_AI_Utils.o : $(GDIR)/NPC_AI_Utils.c; $(DO_SHLIB_CC)
$(B)/baseq3/game/NPC_AI_Wampa.o : $(GDIR)/NPC_AI_Wampa.c; $(DO_SHLIB_CC)
$(B)/baseq3/game/NPC_behavior.o : $(GDIR)/NPC_behavior.c; $(DO_SHLIB_CC)
$(B)/baseq3/game/NPC_combat.o : $(GDIR)/NPC_combat.c; $(DO_SHLIB_CC)
$(B)/baseq3/game/NPC_goal.o : $(GDIR)/NPC_goal.c; $(DO_SHLIB_CC)
$(B)/baseq3/game/NPC_misc.o : $(GDIR)/NPC_misc.c; $(DO_SHLIB_CC)
$(B)/baseq3/game/NPC_reactions.o : $(GDIR)/NPC_reactions.c; $(DO_SHLIB_CC)
$(B)/baseq3/game/NPC_senses.o : $(GDIR)/NPC_senses.c; $(DO_SHLIB_CC)
$(B)/baseq3/game/NPC_sounds.o : $(GDIR)/NPC_sounds.c; $(DO_SHLIB_CC)
$(B)/baseq3/game/NPC_spawn.o : $(GDIR)/NPC_spawn.c; $(DO_SHLIB_CC)
$(B)/baseq3/game/NPC_stats.o : $(GDIR)/NPC_stats.c; $(DO_SHLIB_CC)
$(B)/baseq3/game/NPC_utils.o : $(GDIR)/NPC_utils.c; $(DO_SHLIB_CC)
$(B)/baseq3/game/SpeederNPC.o : $(GDIR)/SpeederNPC.c; $(DO_SHLIB_CC)
$(B)/baseq3/game/WalkerNPC.o : $(GDIR)/WalkerNPC.c; $(DO_SHLIB_CC)
$(B)/baseq3/game/NPC_move.o : $(GDIR)/NPC_move.c; $(DO_SHLIB_CC)
$(B)/baseq3/game/bg_g2_utils.o : $(GDIR)/bg_g2_utils.c; $(DO_SHLIB_CC)
$(B)/baseq3/game/bg_lib.o : $(GDIR)/bg_lib.c; $(DO_SHLIB_CC)
$(B)/baseq3/game/bg_misc.o : $(GDIR)/bg_misc.c; $(DO_SHLIB_CC)
$(B)/baseq3/game/bg_panimate.o : $(GDIR)/bg_panimate.c; $(DO_SHLIB_CC)
$(B)/baseq3/game/bg_pmove.o : $(GDIR)/bg_pmove.c; $(DO_SHLIB_CC)
$(B)/baseq3/game/bg_saber.o : $(GDIR)/bg_saber.c; $(DO_SHLIB_CC)
$(B)/baseq3/game/bg_saberLoad.o : $(GDIR)/bg_saberLoad.c; $(DO_SHLIB_CC)
$(B)/baseq3/game/bg_saga.o : $(GDIR)/bg_saga.c; $(DO_SHLIB_CC)
$(B)/baseq3/game/bg_slidemove.o : $(GDIR)/bg_slidemove.c; $(DO_SHLIB_CC)
$(B)/baseq3/game/bg_vehicleLoad.o : $(GDIR)/bg_vehicleLoad.c; $(DO_SHLIB_CC)
$(B)/baseq3/game/bg_weapons.o : $(GDIR)/bg_weapons.c; $(DO_SHLIB_CC)
$(B)/baseq3/game/g_ICARUScb.o : $(GDIR)/g_ICARUScb.c; $(DO_SHLIB_CC)
$(B)/baseq3/game/g_active.o : $(GDIR)/g_active.c; $(DO_SHLIB_CC)
$(B)/baseq3/game/g_arenas.o : $(GDIR)/g_arenas.c; $(DO_SHLIB_CC)
$(B)/baseq3/game/g_bot.o : $(GDIR)/g_bot.c; $(DO_SHLIB_CC)
$(B)/baseq3/game/g_client.o : $(GDIR)/g_client.c; $(DO_SHLIB_CC)
$(B)/baseq3/game/g_cmds.o : $(GDIR)/g_cmds.c; $(DO_SHLIB_CC)
$(B)/baseq3/game/g_combat.o : $(GDIR)/g_combat.c; $(DO_SHLIB_CC)
$(B)/baseq3/game/g_exphysics.o : $(GDIR)/g_exphysics.c; $(DO_SHLIB_CC)
$(B)/baseq3/game/g_items.o : $(GDIR)/g_items.c; $(DO_SHLIB_CC)
$(B)/baseq3/game/g_log.o : $(GDIR)/g_log.c; $(DO_SHLIB_CC)
$(B)/baseq3/game/g_main.o : $(GDIR)/g_main.c; $(DO_SHLIB_CC)
$(B)/baseq3/game/g_mem.o : $(GDIR)/g_mem.c; $(DO_SHLIB_CC)
$(B)/baseq3/game/g_misc.o : $(GDIR)/g_misc.c; $(DO_SHLIB_CC)
$(B)/baseq3/game/g_missile.o : $(GDIR)/g_missile.c; $(DO_SHLIB_CC)
$(B)/baseq3/game/g_mover.o : $(GDIR)/g_mover.c; $(DO_SHLIB_CC)
$(B)/baseq3/game/g_nav.o : $(GDIR)/g_nav.c; $(DO_SHLIB_CC)
$(B)/baseq3/game/g_navnew.o : $(GDIR)/g_navnew.c; $(DO_SHLIB_CC)
$(B)/baseq3/game/g_object.o : $(GDIR)/g_object.c; $(DO_SHLIB_CC)
$(B)/baseq3/game/g_saga.o : $(GDIR)/g_saga.c; $(DO_SHLIB_CC)
$(B)/baseq3/game/g_session.o : $(GDIR)/g_session.c; $(DO_SHLIB_CC)
$(B)/baseq3/game/g_spawn.o : $(GDIR)/g_spawn.c; $(DO_SHLIB_CC)
$(B)/baseq3/game/g_strap.o : $(GDIR)/g_strap.c; $(DO_SHLIB_CC)
$(B)/baseq3/game/g_svcmds.o : $(GDIR)/g_svcmds.c; $(DO_SHLIB_CC)
$(B)/baseq3/game/g_syscalls.o : $(GDIR)/g_syscalls.c; $(DO_SHLIB_CC)
$(B)/baseq3/game/g_target.o : $(GDIR)/g_target.c; $(DO_SHLIB_CC)
$(B)/baseq3/game/g_team.o : $(GDIR)/g_team.c; $(DO_SHLIB_CC)
$(B)/baseq3/game/g_timer.o : $(GDIR)/g_timer.c; $(DO_SHLIB_CC)
$(B)/baseq3/game/g_trigger.o : $(GDIR)/g_trigger.c; $(DO_SHLIB_CC)
$(B)/baseq3/game/g_turret.o : $(GDIR)/g_turret.c; $(DO_SHLIB_CC)
$(B)/baseq3/game/g_turret_G2.o : $(GDIR)/g_turret_G2.c; $(DO_SHLIB_CC)
$(B)/baseq3/game/g_utils.o : $(GDIR)/g_utils.c; $(DO_SHLIB_CC)
$(B)/baseq3/game/g_vehicleTurret.o : $(GDIR)/g_vehicleTurret.c; $(DO_SHLIB_CC)
$(B)/baseq3/game/g_vehicles.o : $(GDIR)/g_vehicles.c; $(DO_SHLIB_CC)
$(B)/baseq3/game/g_weapon.o : $(GDIR)/g_weapon.c; $(DO_SHLIB_CC)
$(B)/baseq3/game/tri_coll_test.o : $(GDIR)/tri_coll_test.c; $(DO_SHLIB_CC)
$(B)/baseq3/game/w_force.o : $(GDIR)/w_force.c; $(DO_SHLIB_CC)
$(B)/baseq3/game/w_saber.o : $(GDIR)/w_saber.c; $(DO_SHLIB_CC)
$(B)/baseq3/game/q_math.o : $(GDIR)/q_math.c; $(DO_SHLIB_CC)
$(B)/baseq3/game/q_shared.o : $(GDIR)/q_shared.c; $(DO_SHLIB_CC)

################################################## ###########################
# MISC
################################################## ###########################

# TTimo: FIXME: doesn't clean the binary and .so

clean:clean-debug clean-release

clean2: clean-bins
rm -f $(Q3OBJ) $(Q3POBJ) $(Q3POBJ_SMP) $(Q3DOBJ) $(MPGOBJ) $(Q3GOBJ) $(Q3CGOBJ) $(MPCGOBJ) $(Q3UIOBJ) $(MPUIOBJ)
rm -f $(CGDIR)/vm/*.asm
rm -f $(GDIR)/vm/*.asm
rm -f $(UIDIR)/vm/*.asm
rm -f $(Q3UIDIR)/vm/*.asm

# TTimo: linuxq3ded linuxquake3 linuxquake3-smp .. hardcoded the names .. maybe not such a good thing
# FIXME: also, removing the *.so is crappy .. I just want to avoid rm -rf debugi386-glibc to save the symlinks to pk3's for testing
clean-bins:
if [ -d $(B) ];then (find $(B) -name '*.so' -exec rm {} \;)fi
rm -f $(B)/linuxq3ded
rm -f $(B)/linuxquake3
rm -f $(B)/linuxquake3-smp
rm -f $(B)/baseq3/vm/cgame.qvm
rm -f $(B)/baseq3/vm/ui.qvm
rm -f $(B)/baseq3/vm/qagame.qvm
rm -f $(B)/missionpack/vm/cgame.qvm
rm -f $(B)/missionpack/vm/qagame.qvm
rm -f $(B)/missionpack/vm/ui.qvm

clean-debug:
$(MAKE) clean2 B=$(BD) CFLAGS="$(DEBUG_CFLAGS)"

clean-release:
$(MAKE) clean2 B=$(BR) CFLAGS="$(DEBUG_CFLAGS)"
 Slider744
04-09-2004, 2:02 PM
#2
is ICC supposed to compile the .so file better than gcc for intel hardware CPU?
 Wudan
04-09-2004, 9:29 PM
#3
It's rumored to compile the code without any changes, so you can just compile a win32, then compile linux without breaking your skull in 2.
 razorace
04-10-2004, 3:37 AM
#4
Exactly. And the source of that rumor is straight from Raven. I tend to beleive them, especially when they did it for the Asteriods code as well.
 RenegadeOfPhunk
04-10-2004, 10:56 AM
#5
Well, I'd like more clarification about this - because the fact is you can alter the code and set up ANY linux compiler so that you dont' have to change the code between Win and Linux. It's a matter of wrapping changes between Win and Linux within a few preprocessor defines.

...so when Raven say they don't have to make any changes to compile it between Windows and Linux, do they mean I could download the original source code directly and wiithout one change, stick it into the Intel compiler for Linux and it would compile propely?
Or only after I had put in some initial #if's first?

..if the latter, then you don't actually need to use the Intel compiler - you can do what they did with any linux compiler. THe only other worry then I guess is whether it all compiles 'right'. e.g. like the push bug that Mushroom mentioned.
 razorace
04-10-2004, 6:44 PM
#6
Well, the push bug is a bug in the code that Raven didn't fix for the original SDK. Remember that that's just a logic bug associated with different rand max defines.

However, that is the only problem that I'm aware of. Everything else should compile/run fine as long as you use ICC to compile.
 Tido
05-26-2006, 4:04 PM
#7
Attachced... Just replace the makefile in the codemp/unix directory, and run

In the JA SDK, there is no 'unix' directory :(. I tried making one 'codemp/unix', but that didn't work either.

And when I try to use this makefile, I always get this error:
makefile:148: *** missing separator. Stop.

line 148: @if [ ! -d $(B) ];then mkdir $(B);fi


Any ideas?
 Tido
05-26-2006, 8:10 PM
#8
Ah ended up finding out my own answer! The forum's code thingy doesn't remember TABs and the makefile requires one for all of those lines. I eventually got the makefile to work only to discover a new problem:

todd@Harp:~/JA/Jedi_Academy_SDK/codemp/unix$ make
make targets B=debugi386-glibc CFLAGS="-D_JK2 -D_M_IX86 -Kc++ -w -I/opt/intel/cc/9.0/include -g "
make[1]: Entering directory `/home/todd/JA/Jedi_Academy_SDK/codemp/unix'
/opt/intel/cc/9.0/bin/icc -D_JK2 -D_M_IX86 -Kc++ -w -I/opt/intel/cc/9.0/include -g -D_JK2 -DJK2AWARDS -DQAGAME -DMISSIONPACK -use_msasm -o debugi386-glibc/baseq3/game/g_main.o -c /home/todd/JA/Jedi_Academy_SDK/codemp/game/g_main.c
/home/todd/JA/Jedi_Academy_SDK/codemp/game/g_public.h(726): catastrophic error: could not open source file "../icarus/icarus.h"
#include "../icarus/icarus.h"
^

compilation aborted for /home/todd/JA/Jedi_Academy_SDK/codemp/game/g_main.c (code 4)
make[1]: *** [debugi386-glibc/baseq3/game/g_main.o] Error 4
make[1]: Leaving directory `/home/todd/JA/Jedi_Academy_SDK/codemp/unix'
make: *** [build_debug] Error 2

There is no icarus.h in ../icarus :(.
 Tinny
05-26-2006, 8:36 PM
#9
Wanna comment that line out and see what it does?
 Tido
05-26-2006, 8:38 PM
#10
Hehe ok, I'll give that a shot. I thought I read that doing that would mess up the mod's ability to play siege, though? Makes sense, though, since no other mod has icarus.h either.

*EDIT*

Well, doing that did work, but I'm not out of the woods yet:

todd@Harp:~/JA/Jedi_Academy_SDK/codemp/unix$ make debug
make targets B=debugi386-glibc CFLAGS="-D_JK2 -D_M_IX86 -Kc++ -w -I/opt/intel/cc/9.0/include -g "
make[1]: Entering directory `/home/todd/JA/Jedi_Academy_SDK/codemp/unix'
/opt/intel/cc/9.0/bin/icc -D_JK2 -D_M_IX86 -Kc++ -w -I/opt/intel/cc/9.0/include -g -D_JK2 -DJK2AWARDS -DQAGAME -DMISSIONPACK -use_msasm -o debugi386-glibc/baseq3/game/g_main.o -c /home/todd/JA/Jedi_Academy_SDK/codemp/game/g_main.c
/home/todd/JA/Jedi_Academy_SDK/codemp/game/g_main.c(512): error: argument of type "int" is incompatible with parameter of type "qboolean="
return (int)ClientConnect( arg0, arg1, arg2 );
^

/home/todd/JA/Jedi_Academy_SDK/codemp/game/g_main.c(512): error: argument of type "int" is incompatible with parameter of type "qboolean="
return (int)ClientConnect( arg0, arg1, arg2 );
^

/home/todd/JA/Jedi_Academy_SDK/codemp/game/g_main.c(1015): error: a value of type "bool" cannot be assigned to an entity of type "qboolean="
navCalculatePaths = ( trap_Nav_Load( mapname.string, ckSum.integer ) == qfalse );
^

/home/todd/JA/Jedi_Academy_SDK/codemp/game/g_main.c(1057): error: argument of type "int" is incompatible with parameter of type "qboolean="
G_InitBots( restart );
^

/home/todd/JA/Jedi_Academy_SDK/codemp/game/g_main.c(2553): error: return value type does not match the function type
return level.teamScores[TEAM_RED] == level.teamScores[TEAM_BLUE];
^

/home/todd/JA/Jedi_Academy_SDK/codemp/game/g_main.c(2559): error: return value type does not match the function type
return a == b;
^

/home/todd/JA/Jedi_Academy_SDK/codemp/game/g_main.c(4067): error: a value of type "int" cannot be assigned to an entity of type "qboolean="
gQueueScoreMessage = 0;
^

compilation aborted for /home/todd/JA/Jedi_Academy_SDK/codemp/game/g_main.c (code 2)
make[1]: *** [debugi386-glibc/baseq3/game/g_main.o] Error 2
make[1]: Leaving directory `/home/todd/JA/Jedi_Academy_SDK/codemp/unix'
make: *** [build_debug] Error 2
 razorace
05-31-2006, 10:32 PM
#11
bah, what it's doing is erroring in situations where a qbooleaning is being manually set with a 1 or a 0. You're going to have to look thru the ICC manual and figure out how to turn off the warning/error checks for implicate typecasting.
 Tido
06-04-2006, 12:13 AM
#12
bah, what it's doing is erroring in situations where a qbooleaning is being manually set with a 1 or a 0. You're going to have to look thru the ICC manual and figure out how to turn off the warning/error checks for implicate typecasting.

Hmm, having a hard time finding anything in the ICC docs about that. Got any other terms to try?
 razorace
06-08-2006, 5:25 PM
#13
Check the manual's section on disabling compiler warnings/errors. I can't really get more specific. Maybe try Google? That normally helps me. :)
Page: 1 of 1