123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484 |
- #
- # Quake Makefile for Solaris
- #
- # Nov '97 by Zoid <zoid@idsoftware.com>
- #
- # ELF only
- #
- VERSION=1.09
- ifneq (,$(findstring i86pc,$(shell uname -m)))
- ARCH=i386
- else
- ARCH=sparc
- endif
- MOUNT_DIR=/grog/Projects/WinQuake
- BUILD_DEBUG_DIR=debug$(ARCH)
- BUILD_RELEASE_DIR=release$(ARCH)
- CC=gcc
- BASE_CFLAGS=-I/usr/openwin/include
- RELEASE_CFLAGS=$(BASE_CFLAGS) -O6 -ffast-math -funroll-loops -fomit-frame-pointer -fexpensive-optimizations
- DEBUG_CFLAGS=$(BASE_CFLAGS) -g
- LDFLAGS=-R /usr/openwin/lib -L /usr/openwin/lib -lm -lX11 -lXext -lsocket -lnsl -lthread -ldl
- XIL_LDFLAGS=-L /opt/SUNWits/Graphics-sw/xil/lib -R /opt/SUNWits/Graphics-sw/xil/lib:/usr/openwin/lib -L /usr/openwin/lib -lm -lxil -lX11 -lXext -lsocket -lnsl -lthread -ldl
- DO_CC=$(CC) $(CFLAGS) -o $@ -c $<
- DO_AS=$(CC) $(CFLAGS) -DELF -x assembler-with-cpp -o $@ -c $<
- #############################################################################
- # SETUP AND BUILD
- #############################################################################
- TARGETS=$(BUILDDIR)/quake.sw $(BUILDDIR)/quake.xil
- build_debug:
- @-mkdir $(BUILD_DEBUG_DIR)
- $(MAKE) targets BUILDDIR=$(BUILD_DEBUG_DIR) CFLAGS="$(DEBUG_CFLAGS)"
- build_release:
- @-mkdir $(BUILD_RELEASE_DIR)
- $(MAKE) targets BUILDDIR=$(BUILD_RELEASE_DIR) CFLAGS="$(RELEASE_CFLAGS)"
- all: build_debug build_release
- targets: $(TARGETS)
- #############################################################################
- # CLIENT/SERVER
- #############################################################################
- QUAKE_OBJS= \
- $(BUILDDIR)/chase.o \
- $(BUILDDIR)/cl_demo.o \
- $(BUILDDIR)/cl_input.o \
- $(BUILDDIR)/cl_main.o \
- $(BUILDDIR)/cl_parse.o \
- $(BUILDDIR)/cl_tent.o \
- $(BUILDDIR)/cmd.o \
- $(BUILDDIR)/common.o \
- $(BUILDDIR)/console.o \
- $(BUILDDIR)/crc.o \
- $(BUILDDIR)/cvar.o \
- $(BUILDDIR)/draw.o \
- $(BUILDDIR)/d_edge.o \
- $(BUILDDIR)/d_fill.o \
- $(BUILDDIR)/d_init.o \
- $(BUILDDIR)/d_modech.o \
- $(BUILDDIR)/d_part.o \
- $(BUILDDIR)/d_polyse.o \
- $(BUILDDIR)/d_scan.o \
- $(BUILDDIR)/d_sky.o \
- $(BUILDDIR)/d_sprite.o \
- $(BUILDDIR)/d_surf.o \
- $(BUILDDIR)/d_vars.o \
- $(BUILDDIR)/d_zpoint.o \
- $(BUILDDIR)/host.o \
- $(BUILDDIR)/host_cmd.o \
- $(BUILDDIR)/keys.o \
- $(BUILDDIR)/menu.o \
- $(BUILDDIR)/mathlib.o \
- $(BUILDDIR)/model.o \
- $(BUILDDIR)/nonintel.o \
- $(BUILDDIR)/pr_cmds.o \
- $(BUILDDIR)/pr_edict.o \
- $(BUILDDIR)/pr_exec.o \
- $(BUILDDIR)/r_aclip.o \
- $(BUILDDIR)/r_alias.o \
- $(BUILDDIR)/r_bsp.o \
- $(BUILDDIR)/r_light.o \
- $(BUILDDIR)/r_draw.o \
- $(BUILDDIR)/r_efrag.o \
- $(BUILDDIR)/r_edge.o \
- $(BUILDDIR)/r_misc.o \
- $(BUILDDIR)/r_main.o \
- $(BUILDDIR)/r_sky.o \
- $(BUILDDIR)/r_sprite.o \
- $(BUILDDIR)/r_surf.o \
- $(BUILDDIR)/r_part.o \
- $(BUILDDIR)/r_vars.o \
- $(BUILDDIR)/screen.o \
- $(BUILDDIR)/sbar.o \
- $(BUILDDIR)/sv_main.o \
- $(BUILDDIR)/sv_phys.o \
- $(BUILDDIR)/sv_move.o \
- $(BUILDDIR)/sv_user.o \
- $(BUILDDIR)/zone.o \
- $(BUILDDIR)/view.o \
- $(BUILDDIR)/wad.o \
- $(BUILDDIR)/world.o \
- $(BUILDDIR)/cd_null.o \
- $(BUILDDIR)/snd_dma.o \
- $(BUILDDIR)/snd_mix.o \
- $(BUILDDIR)/snd_mem.o \
- $(BUILDDIR)/net_dgrm.o \
- $(BUILDDIR)/net_loop.o \
- $(BUILDDIR)/net_main.o \
- $(BUILDDIR)/net_vcr.o \
- $(BUILDDIR)/net_udp.o \
- $(BUILDDIR)/net_bsd.o \
- $(BUILDDIR)/sys_sun.o \
- $(BUILDDIR)/snd_sun.o
- QUAKE_AS_OBJS= \
- $(BUILDDIR)/d_copy.o \
- $(BUILDDIR)/d_draw.o \
- $(BUILDDIR)/d_draw16.o \
- $(BUILDDIR)/d_parta.o \
- $(BUILDDIR)/d_polysa.o \
- $(BUILDDIR)/d_scana.o \
- $(BUILDDIR)/d_spr8.o \
- $(BUILDDIR)/d_varsa.o \
- $(BUILDDIR)/math.o \
- $(BUILDDIR)/r_aliasa.o \
- $(BUILDDIR)/r_drawa.o \
- $(BUILDDIR)/r_edgea.o \
- $(BUILDDIR)/r_varsa.o \
- $(BUILDDIR)/surf16.o \
- $(BUILDDIR)/surf8.o \
- $(BUILDDIR)/worlda.o \
- $(BUILDDIR)/r_aclipa.o \
- $(BUILDDIR)/snd_mixa.o \
- $(BUILDDIR)/sys_dosa.o
- QUAKE_X_OBJS = $(BUILDDIR)/vid_sunx.o
- QUAKE_XIL_OBJS = $(BUILDDIR)/vid_sunxil.o
- ifeq ($(ARCH),i386)
- $(BUILDDIR)/quake.sw : $(QUAKE_OBJS) $(QUAKE_AS_OBJS) $(QUAKE_X_OBJS)
- $(CC) -o $(@) $(QUAKE_OBJS) $(QUAKE_AS_OBJS) $(QUAKE_X_OBJS) $(LDFLAGS)
- $(BUILDDIR)/quake.xil: $(QUAKE_OBJS) $(QUAKE_AS_OBJS) $(QUAKE_XIL_OBJS)
- $(CC) -o $(@) $(QUAKE_OBJS) $(QUAKE_AS_OBJS) $(QUAKE_XIL_OBJS) $(XIL_LDFLAGS)
- else
- $(BUILDDIR)/quake.sw : $(QUAKE_OBJS) $(QUAKE_X_OBJS)
- $(CC) -o $(@) $(QUAKE_OBJS) $(QUAKE_X_OBJS) $(LDFLAGS)
- $(BUILDDIR)/quake.xil: $(QUAKE_OBJS) $(QUAKE_XIL_OBJS)
- $(CC) -o $(@) $(QUAKE_OBJS) $(QUAKE_XIL_OBJS) $(XIL_LDFLAGS)
- endif
- ##
- $(BUILDDIR)/chase.o : $(MOUNT_DIR)/chase.c
- $(DO_CC)
- $(BUILDDIR)/cl_demo.o : $(MOUNT_DIR)/cl_demo.c
- $(DO_CC)
- $(BUILDDIR)/cl_input.o : $(MOUNT_DIR)/cl_input.c
- $(DO_CC)
- $(BUILDDIR)/cl_main.o : $(MOUNT_DIR)/cl_main.c
- $(DO_CC)
- $(BUILDDIR)/cl_parse.o : $(MOUNT_DIR)/cl_parse.c
- $(DO_CC)
- $(BUILDDIR)/cl_tent.o : $(MOUNT_DIR)/cl_tent.c
- $(DO_CC)
- $(BUILDDIR)/cmd.o : $(MOUNT_DIR)/cmd.c
- $(DO_CC)
- $(BUILDDIR)/common.o : $(MOUNT_DIR)/common.c
- $(DO_CC)
- $(BUILDDIR)/console.o : $(MOUNT_DIR)/console.c
- $(DO_CC)
- $(BUILDDIR)/crc.o : $(MOUNT_DIR)/crc.c
- $(DO_CC)
- $(BUILDDIR)/cvar.o : $(MOUNT_DIR)/cvar.c
- $(DO_CC)
- $(BUILDDIR)/draw.o : $(MOUNT_DIR)/draw.c
- $(DO_CC)
- $(BUILDDIR)/d_edge.o : $(MOUNT_DIR)/d_edge.c
- $(DO_CC)
- $(BUILDDIR)/d_fill.o : $(MOUNT_DIR)/d_fill.c
- $(DO_CC)
- $(BUILDDIR)/d_init.o : $(MOUNT_DIR)/d_init.c
- $(DO_CC)
- $(BUILDDIR)/d_modech.o : $(MOUNT_DIR)/d_modech.c
- $(DO_CC)
- $(BUILDDIR)/d_part.o : $(MOUNT_DIR)/d_part.c
- $(DO_CC)
- $(BUILDDIR)/d_polyse.o : $(MOUNT_DIR)/d_polyse.c
- $(DO_CC)
- $(BUILDDIR)/d_scan.o : $(MOUNT_DIR)/d_scan.c
- $(DO_CC)
- $(BUILDDIR)/d_sky.o : $(MOUNT_DIR)/d_sky.c
- $(DO_CC)
- $(BUILDDIR)/d_sprite.o : $(MOUNT_DIR)/d_sprite.c
- $(DO_CC)
- $(BUILDDIR)/d_surf.o : $(MOUNT_DIR)/d_surf.c
- $(DO_CC)
- $(BUILDDIR)/d_vars.o : $(MOUNT_DIR)/d_vars.c
- $(DO_CC)
- $(BUILDDIR)/d_zpoint.o : $(MOUNT_DIR)/d_zpoint.c
- $(DO_CC)
- $(BUILDDIR)/host.o : $(MOUNT_DIR)/host.c
- $(DO_CC)
- $(BUILDDIR)/host_cmd.o : $(MOUNT_DIR)/host_cmd.c
- $(DO_CC)
- $(BUILDDIR)/keys.o : $(MOUNT_DIR)/keys.c
- $(DO_CC)
- $(BUILDDIR)/menu.o : $(MOUNT_DIR)/menu.c
- $(DO_CC)
- $(BUILDDIR)/mathlib.o : $(MOUNT_DIR)/mathlib.c
- $(DO_CC)
- $(BUILDDIR)/model.o : $(MOUNT_DIR)/model.c
- $(DO_CC)
- $(BUILDDIR)/nonintel.o : $(MOUNT_DIR)/nonintel.c
- $(DO_CC)
- $(BUILDDIR)/pr_cmds.o : $(MOUNT_DIR)/pr_cmds.c
- $(DO_CC)
- $(BUILDDIR)/pr_edict.o : $(MOUNT_DIR)/pr_edict.c
- $(DO_CC)
- $(BUILDDIR)/pr_exec.o : $(MOUNT_DIR)/pr_exec.c
- $(DO_CC)
- $(BUILDDIR)/r_aclip.o : $(MOUNT_DIR)/r_aclip.c
- $(DO_CC)
- $(BUILDDIR)/r_alias.o : $(MOUNT_DIR)/r_alias.c
- $(DO_CC)
- $(BUILDDIR)/r_bsp.o : $(MOUNT_DIR)/r_bsp.c
- $(DO_CC)
- $(BUILDDIR)/r_light.o : $(MOUNT_DIR)/r_light.c
- $(DO_CC)
- $(BUILDDIR)/r_draw.o : $(MOUNT_DIR)/r_draw.c
- $(DO_CC)
- $(BUILDDIR)/r_efrag.o : $(MOUNT_DIR)/r_efrag.c
- $(DO_CC)
- $(BUILDDIR)/r_edge.o : $(MOUNT_DIR)/r_edge.c
- $(DO_CC)
- $(BUILDDIR)/r_misc.o : $(MOUNT_DIR)/r_misc.c
- $(DO_CC)
- $(BUILDDIR)/r_main.o : $(MOUNT_DIR)/r_main.c
- $(DO_CC)
- $(BUILDDIR)/r_sky.o : $(MOUNT_DIR)/r_sky.c
- $(DO_CC)
- $(BUILDDIR)/r_sprite.o : $(MOUNT_DIR)/r_sprite.c
- $(DO_CC)
- $(BUILDDIR)/r_surf.o : $(MOUNT_DIR)/r_surf.c
- $(DO_CC)
- $(BUILDDIR)/r_part.o : $(MOUNT_DIR)/r_part.c
- $(DO_CC)
- $(BUILDDIR)/r_vars.o : $(MOUNT_DIR)/r_vars.c
- $(DO_CC)
- $(BUILDDIR)/screen.o : $(MOUNT_DIR)/screen.c
- $(DO_CC)
- $(BUILDDIR)/sbar.o : $(MOUNT_DIR)/sbar.c
- $(DO_CC)
- $(BUILDDIR)/sv_main.o : $(MOUNT_DIR)/sv_main.c
- $(DO_CC)
- $(BUILDDIR)/sv_phys.o : $(MOUNT_DIR)/sv_phys.c
- $(DO_CC)
- $(BUILDDIR)/sv_move.o : $(MOUNT_DIR)/sv_move.c
- $(DO_CC)
- $(BUILDDIR)/sv_user.o : $(MOUNT_DIR)/sv_user.c
- $(DO_CC)
- $(BUILDDIR)/zone.o : $(MOUNT_DIR)/zone.c
- $(DO_CC)
- $(BUILDDIR)/view.o : $(MOUNT_DIR)/view.c
- $(DO_CC)
- $(BUILDDIR)/wad.o : $(MOUNT_DIR)/wad.c
- $(DO_CC)
- $(BUILDDIR)/world.o : $(MOUNT_DIR)/world.c
- $(DO_CC)
- $(BUILDDIR)/cd_null.o : $(MOUNT_DIR)/cd_null.c
- $(DO_CC)
- $(BUILDDIR)/snd_dma.o : $(MOUNT_DIR)/snd_dma.c
- $(DO_CC)
- $(BUILDDIR)/snd_mix.o : $(MOUNT_DIR)/snd_mix.c
- $(DO_CC)
- $(BUILDDIR)/snd_mem.o : $(MOUNT_DIR)/snd_mem.c
- $(DO_CC)
- $(BUILDDIR)/net_dgrm.o : $(MOUNT_DIR)/net_dgrm.c
- $(DO_CC)
- $(BUILDDIR)/net_loop.o : $(MOUNT_DIR)/net_loop.c
- $(DO_CC)
- $(BUILDDIR)/net_main.o : $(MOUNT_DIR)/net_main.c
- $(DO_CC)
- $(BUILDDIR)/net_vcr.o : $(MOUNT_DIR)/net_vcr.c
- $(DO_CC)
- $(BUILDDIR)/net_udp.o : $(MOUNT_DIR)/net_udp.c
- $(DO_CC)
- $(BUILDDIR)/net_bsd.o : $(MOUNT_DIR)/net_bsd.c
- $(DO_CC)
- $(BUILDDIR)/sys_sun.o : $(MOUNT_DIR)/sys_sun.c
- $(DO_CC)
- $(BUILDDIR)/snd_sun.o : $(MOUNT_DIR)/snd_sun.c
- $(DO_CC)
- $(BUILDDIR)/in_sun.o : $(MOUNT_DIR)/in_sun.c
- $(DO_CC)
- $(BUILDDIR)/vid_sunx.o : $(MOUNT_DIR)/vid_sunx.c
- $(DO_CC)
- $(BUILDDIR)/vid_sunxil.o : $(MOUNT_DIR)/vid_sunxil.c
- $(DO_CC)
- #####
- $(BUILDDIR)/d_copy.o : $(MOUNT_DIR)/d_copy.s
- $(DO_AS)
- $(BUILDDIR)/d_draw.o : $(MOUNT_DIR)/d_draw.s
- $(DO_AS)
- $(BUILDDIR)/d_draw16.o : $(MOUNT_DIR)/d_draw16.s
- $(DO_AS)
- $(BUILDDIR)/d_parta.o : $(MOUNT_DIR)/d_parta.s
- $(DO_AS)
- $(BUILDDIR)/d_polysa.o : $(MOUNT_DIR)/d_polysa.s
- $(DO_AS)
- $(BUILDDIR)/d_scana.o : $(MOUNT_DIR)/d_scana.s
- $(DO_AS)
- $(BUILDDIR)/d_spr8.o : $(MOUNT_DIR)/d_spr8.s
- $(DO_AS)
- $(BUILDDIR)/d_varsa.o : $(MOUNT_DIR)/d_varsa.s
- $(DO_AS)
- $(BUILDDIR)/math.o : $(MOUNT_DIR)/math.s
- $(DO_AS)
- $(BUILDDIR)/r_aliasa.o : $(MOUNT_DIR)/r_aliasa.s
- $(DO_AS)
- $(BUILDDIR)/r_drawa.o : $(MOUNT_DIR)/r_drawa.s
- $(DO_AS)
- $(BUILDDIR)/r_edgea.o : $(MOUNT_DIR)/r_edgea.s
- $(DO_AS)
- $(BUILDDIR)/r_varsa.o : $(MOUNT_DIR)/r_varsa.s
- $(DO_AS)
- $(BUILDDIR)/surf16.o : $(MOUNT_DIR)/surf16.s
- $(DO_AS)
- $(BUILDDIR)/surf8.o : $(MOUNT_DIR)/surf8.s
- $(DO_AS)
- $(BUILDDIR)/worlda.o : $(MOUNT_DIR)/worlda.s
- $(DO_AS)
- $(BUILDDIR)/r_aclipa.o : $(MOUNT_DIR)/r_aclipa.s
- $(DO_AS)
- $(BUILDDIR)/snd_mixa.o : $(MOUNT_DIR)/snd_mixa.s
- $(DO_AS)
- $(BUILDDIR)/sys_dosa.o : $(MOUNT_DIR)/sys_dosa.s
- $(DO_AS)
- #############################################################################
- # TAR
- #############################################################################
- # Make RPMs. You need to be root to make this work
- RPMDIR = /var/tmp/quake-$(VERSION)
- tar:
- if [ ! -d archives ];then mkdir archives;fi
- $(MAKE) copyfiles COPYDIR=$(RPMDIR)
- cd $(RPMDIR); tar cvf q2ded-$(VERSION)-$(ARCH)-sun-solaris2.5.1.tar *
- cd $(RPMDIR); compress q2ded-$(VERSION)-$(ARCH)-sun-solaris2.5.1.tar
- mv $(RPMDIR)/*.tar.Z archives/.
- rm -rf $(RPMDIR)
- copyfiles:
- -mkdirhier $(COPYDIR)
- cp $(BUILD_RELEASE_DIR)/quake.sw $(COPYDIR)
- cp $(BUILD_RELEASE_DIR)/quake.xil $(COPYDIR)
- strip $(COPYDIR)/quake
- strip $(COPYDIR)/quake.xil
- cp $(MOUNT_DIR)/README.Solaris $(COPYDIR)/README.Solaris
- #############################################################################
- # MISC
- #############################################################################
- clean: clean-debug clean-release
- clean-debug:
- $(MAKE) clean2 BUILDDIR=$(BUILD_DEBUG_DIR) CFLAGS="$(DEBUG_CFLAGS)"
- clean-release:
- $(MAKE) clean2 BUILDDIR=$(BUILD_RELEASE_DIR) CFLAGS="$(DEBUG_CFLAGS)"
- clean2:
- -rm -f $(QUAKE_OBJS) $(QUAKE_X_OBJS) $(QUAKE_XIL_OBJS)
|