diff options
| author | Benjamin Linskey | 2026-06-08 16:11:41 -0400 |
|---|---|---|
| committer | Benjamin Linskey | 2026-06-08 17:01:22 -0400 |
| commit | 02f00eda40a9ab0f432433f5719b19bfd26c67d3 (patch) | |
| tree | 0a3565a2eff56b5144a8b839fc561ac389ebfc9d | |
| parent | d6dc193878eb0aed4e30fe5011559be949263557 (diff) | |
| download | rogue-02f00eda40a9ab0f432433f5719b19bfd26c67d3.tar.gz | |
Improve makefile and compilation flags
Reformatted makefile, removed unneeded macros, made makefile adhere to POSIX standard, and added compiler standard, optimization, and warning flags.
| -rw-r--r-- | Makefile | 42 |
1 files changed, 20 insertions, 22 deletions
@@ -1,32 +1,30 @@ # $NetBSD: Makefile,v 1.22 2023/06/03 09:09:09 lukem Exp $ # @(#)Makefile 8.1 (Berkeley) 5/31/93 -PROG= rogue -PREFIX= /usr/local -BIN_DIR:=$(PREFIX)/bin -CPPFLAGS+=-DUNIX -DUNIX_SYSV -SRCS= hit.c init.c inventory.c level.c machdep.c main.c \ - message.c monster.c move.c object.c pack.c play.c random.c ring.c \ - room.c save.c score.c spec_hit.c throw.c trap.c use.c zap.c \ - pathnames.c -OBJS= hit.o init.o inventory.o level.o machdep.o main.o \ - message.o monster.o move.o object.o pack.o play.o random.o ring.o \ - room.o save.o score.o spec_hit.o throw.o trap.o use.o zap.o \ - pathnames.o -HEADERS=rogue.h pathnames.h -DPADD= ${LIBCURSES} ${LIBTERMINFO} -LDADD= -lcurses -lterminfo -MAN= rogue.6 - -SUBDIR.roff+=USD.doc - -COPTS.score.c+= ${CC_WNO_FORMAT_TRUNCATION} +.POSIX: + +PROG = rogue +PREFIX = /usr/local +BIN_DIR = $(PREFIX)/bin +MAN = rogue.6 + +CC = cc +CFLAGS = -std=c99 -O2 -Wall -Wextra -Wpedantic +CPPFLAGS = -DUNIX -DUNIX_SYSV +LDLIBS = -lcurses + +SRCS != find . -name '*.c' -exec basename {} + +OBJS != echo $(SRCS) | awk '{gsub(/\.c/, ".o"); print}' +HEADERS != find . -name '*.h' -exec basename {} + $(PROG): $(OBJS) - cc -o $@ -lcurses $(OBJS) + cc -o $@ $(LDLIBS) $(OBJS) $(OBJS): $(HEADERS) +.c.o: + $(CC) $(CPPFLAGS) $(CFLAGS) -c $< + .PHONY: install install: $(PROG) chmod 755 $(PROG) @@ -41,4 +39,4 @@ clean: rm -f $(PROG) $(OBJS) tags tags: - ctags -d *.c *.h + ctags -d $(SRCS) $(HEADERS) |