Mercurial > hg > early-roguelike
view arogue7/Makefile.in @ 232:bac2c81fec78
Makefiles: don't rely on built-in implicit rules.
Not all make implementations will use CPPFLAGS when compiling C files.
author | John "Elwin" Edwards |
---|---|
date | Tue, 08 Mar 2016 19:45:41 -0500 |
parents | 455464db5800 |
children | 0b3d1b38998f |
line wrap: on
line source
# # Makefile for rogue # # Advanced Rogue # Copyright (C) 1984, 1985, 1986 Michael Morgan, Ken Dalka and AT&T # All rights reserved. # # Based on "Rogue: Exploring the Dungeons of Doom" # Copyright (C) 1980, 1981 Michael Toy, Ken Arnold and Glenn Wichman # All rights reserved. # # See the file LICENSE.TXT for full copyright and licensing information. # # # Makefile for rogue # DISTNAME=@PACKAGE_TARNAME@@PACKAGE_VERSION@ PROGRAM=@PROGRAM@ PACKAGE_TARNAME=@PACKAGE_TARNAME@-@PACKAGE_VERSION@ SAVEDIR=@SAVEDIR@ SCOREFILE=@SCOREFILE@ LOGFILE=@LOGFILE@ GROUPOWNER=@GROUPOWNER@ DESTDIR= prefix=@prefix@ exec_prefix=@exec_prefix@ datarootdir=@datarootdir@ bindir=@bindir@ docdir=@docdir@ O=o HDRS= rogue.h mach_dep.h network.h OBJS1 = vers.$(O) actions.$(O) chase.$(O) command.$(O) daemon.$(O) \ daemons.$(O) eat.$(O) effects.$(O) encumb.$(O) fight.$(O) init.$(O) \ io.$(O) list.$(O) main.$(O) maze.$(O) mdport.$(O) misc.$(O) \ monsters.$(O) OBJS2 = move.$(O) new_level.$(O) options.$(O) outside.$(O) pack.$(O) \ passages.$(O) player.$(O) potions.$(O) rings.$(O) rip.$(O) rogue.$(O) \ rooms.$(O) save.$(O) scrolls.$(O) state.$(O) sticks.$(O) things.$(O) \ trader.$(O) util.$(O) weapons.$(O) wear.$(O) wizard.$(O) xcrypt.$(O) OBJS = $(OBJS1) $(OBJS2) CFILES= vers.c actions.c chase.c command.c daemon.c \ daemons.c eat.c effects.c encumb.c fight.c init.c \ io.c list.c main.c maze.c mdport.c misc.c monsters.c \ move.c new_level.c options.c outside.c pack.c \ passages.c player.c potions.c rings.c rip.c rogue.c \ rooms.c save.c scrolls.c state.c sticks.c things.c \ trader.c util.c weapons.c wear.c wizard.c xcrypt.c MISC_C= DOCSRC= aguide.mm #DOCS = $(PROGRAM).doc $(PROGRAM).html DOCS = $(PROGRAM).doc arogue77.html MISC = Makefile $(MISC_C) LICENSE.TXT $(PROGRAM).sln $(PROGRAM).vcproj $(DOCS)\ $(DOCSRC) CC = @CC@ CPPFLAGS =@DEFS@ ROPTS = COPTS = CFLAGS= $(COPTS) $(ROPTS) LIBS = @LIBS@ RM = rm -f INSTALL=@INSTALL@ GROFF=@GROFF@ NROFF=@NROFF@ COLCRT=@COLCRT@ TBL=@TBL@ .SUFFIXES: .obj .o .c .c.obj: $(CC) $(CFLAGS) /c $*.c .c.o: $(CC) $(CPPFLAGS) $(CFLAGS) -c $*.c all: $(PROGRAM) docs $(PROGRAM): $(HDRS) $(OBJS) $(CC) $(CFLAGS) $(LDFLAGS) $(OBJS) $(LIBS) -o $@ docs: $(DOCS) $(PROGRAM).doc: aguide.mm if test "x$(GROFF)" != "x" ; then \ $(GROFF) -P-c -P-b -P-u -t -mm -Tascii aguide.mm > $(PROGRAM).doc ;\ elif test "x$(NROFF)" != "x" && test "x$(TBL)" != "x" && test "x$(COLCRT)" != "x" ; then \ $(TBL) aguide.mm | $(NROFF) -mm | $(COLCRT) - > $(PROGRAM).doc ;\ fi install: all touch test if test ! -f $(DESTDIR)$(SCOREFILE) ; then \ mkdir -p `dirname $(DESTDIR)$(SCOREFILE)` ; \ $(INSTALL) -m 0664 test $(DESTDIR)$(SCOREFILE) ; fi if test "x$(LOGFILE)" != "x" && test ! -f $(DESTDIR)$(LOGFILE) ; then \ mkdir -p `dirname $(DESTDIR)$(LOGFILE)` ; \ $(INSTALL) -m 0664 test $(DESTDIR)$(LOGFILE) ; fi if test "x$(SAVEDIR)" != "x" && test ! -d $(DESTDIR)$(SAVEDIR) ; then \ mkdir -p $(DESTDIR)$(SAVEDIR) ; fi mkdir -p $(DESTDIR)$(bindir) $(INSTALL) -m 0755 $(PROGRAM) $(DESTDIR)$(bindir)/$(PROGRAM) -if test "x$(GROUPOWNER)" != "x" ; then \ chgrp $(GROUPOWNER) $(DESTDIR)$(SCOREFILE) ; \ chgrp $(GROUPOWNER) $(DESTDIR)$(LOGFILE) ; \ chgrp $(GROUPOWNER) $(DESTDIR)$(bindir)/$(PROGRAM) ; \ chgrp $(GROUPOWNER) $(DESTDIR)$(SAVEDIR) ; \ chmod 02755 $(DESTDIR)$(bindir)/$(PROGRAM) ; \ chmod 0464 $(DESTDIR)$(SCOREFILE) ; \ chmod 0464 $(DESTDIR)$(LOGFILE) ; \ chmod 0775 $(DESTDIR)$(SAVEDIR) ; \ fi if test ! -d $(DESTDIR)$(docdir) ; \ then mkdir -p $(DESTDIR)$(docdir) ; fi $(INSTALL) -m 0644 LICENSE.TXT $(DESTDIR)$(docdir)/LICENSE.TXT $(INSTALL) -m 0644 $(DOCS) $(DOCSRC) $(DESTDIR)$(docdir) $(RM) test uninstall: $(RM) $(DESTDIR)$(bindir)/$(PROGRAM) $(RM) -r $(DESTDIR)$(docdir) reinstall: uninstall install clean: $(RM) $(OBJS1) $(RM) $(OBJS2) $(RM) core a.exe a.out a.exe.stackdump $(PROGRAM) $(PROGRAM).exe $(PROGRAM).lck $(PROGRAM).doc $(RM) $(PROGRAM).tar $(PROGRAM).tar.gz $(PROGRAM).zip dist.src: make clean tar cf $(DISTNAME)-src.tar $(CFILES) $(HDRS) $(MISC) gzip -f $(DISTNAME)-src.tar doc.nroff: tbl aguide.mm | nroff -mm | colcrt - > arogue77.doc doc.groff: groff -P-c -t -mm -Tascii aguide.mm | sed -e 's/.\x08//g' > arogue77.doc groff -t -mm -Thtml aguide.mm > arogue77.ht dist.irix: make clean make CC=cc COPTS="-woff 1116 -O3" $(PROGRAM) tar cf $(DISTNAME)-irix.tar $(PROGRAM) LICENSE.TXT $(DOCS) gzip -f $(DISTNAME)-irix.tar dist.aix: make clean make CC=xlc COPTS="-qmaxmem=16768 -O3 -qstrict" $(PROGRAM) tar cf $(DISTNAME)-aix.tar $(PROGRAM) LICENSE.TXT $(DOCS) gzip -f $(DISTNAME)-aix.tar dist.linux: make clean make $(PROGRAM) tar cf $(DISTNAME)-linux.tar $(PROGRAM) LICENSE.TXT $(DOCS) gzip -f $(DISTNAME)-linux.tar dist.interix: @$(MAKE) clean @$(MAKE) COPTS="-ansi" $(PROGRAM) tar cf $(DISTNAME)-interix.tar $(PROGRAM) LICENSE.TXT $(DOCS) gzip -f $(DISTNAME)-interix.tar dist.cygwin: @$(MAKE) --no-print-directory clean @$(MAKE) --no-print-directory $(PROGRAM) tar cf $(DISTNAME)-cygwin.tar $(PROGRAM).exe LICENSE.TXT $(DOCS) gzip -f $(DISTNAME)-cygwin.tar # # Use MINGW32-MAKE to build this target # dist.mingw32: @$(MAKE) --no-print-directory RM="cmd /c del" clean @$(MAKE) --no-print-directory LIBS="-lpdcurses" $(PROGRAM) cmd /c del $(DISTNAME)-mingw32.zip zip $(DISTNAME)-mingw32.zip $(PROGRAM).exe LICENSE.TXT $(DOCS) dist.msys: @$(MAKE) --no-print-directory clean @$(MAKE) --no-print-directory LIBS="-lcurses" $(PROGRAM) tar cf $(DISTNAME)-msys.tar $(PROGRAM).exe LICENSE.TXT $(DOCS) gzip -f $(DISTNAME)-msys.tar dist.djgpp: @$(MAKE) --no-print-directory clean @$(MAKE) --no-print-directory LDFLAGS="-L$(DJDIR)/LIB" \ LIBS="-lpdcurses" $(PROGRAM) rm -f $(DISTNAME)-djgpp.zip zip $(DISTNAME)-djgpp.zip $(PROGRAM).exe LICENSE.TXT $(DOCS) # # Use NMAKE to build this targer # dist.win32: @$(MAKE) /NOLOGO O="obj" RM="-del" clean @$(MAKE) /NOLOGO O="obj" CC="CL" \ LIBS="..\pdcurses\pdcurses.lib shfolder.lib user32.lib Advapi32.lib" \ COPTS="-nologo -I..\pdcurses \ -Ox -wd4033 -wd4716" $(PROGRAM) -del $(DISTNAME)-win32.zip zip $(DISTNAME)-win32.zip $(PROGRAM).exe LICENSE.TXT $(DOCS) actions.o: rogue.h chase.o: rogue.h command.o: rogue.h command.o: mach_dep.h daemon.o: rogue.h daemons.o: rogue.h eat.o: rogue.h edit.o: mach_dep.h edit.o: rogue.h effects.o: rogue.h encumb.o: rogue.h fight.o: rogue.h init.o: rogue.h init.o: mach_dep.h io.o: rogue.h list.o: rogue.h main.o: mach_dep.h main.o: network.h main.o: rogue.h maze.o: rogue.h misc.o: rogue.h monsters.o: rogue.h move.o: rogue.h new_level.o: rogue.h options.o: rogue.h outside.o: rogue.h pack.o: rogue.h passages.o: rogue.h player.o: rogue.h potions.o: rogue.h rings.o: rogue.h rip.o: mach_dep.h rip.o: network.h rip.o: rogue.h rogue.o: rogue.h rooms.o: rogue.h save.o: rogue.h save.o: mach_dep.h scrolls.o: rogue.h sticks.o: rogue.h things.o: rogue.h trader.o: rogue.h util.o: rogue.h weapons.o: rogue.h wear.o: rogue.h wizard.o: rogue.h