# Makefile for PDCurses library for SDL O = o ifndef PDCURSES_SRCDIR PDCURSES_SRCDIR = .. endif include $(PDCURSES_SRCDIR)/libobjs.mif osdir = $(PDCURSES_SRCDIR)/sdl1 PDCURSES_SDL_H = $(osdir)/pdcsdl.h SFLAGS = $(shell sdl-config --cflags) SLIBS = $(shell sdl-config --libs) # If your system doesn't have these, remove the defines here SFLAGS += -DHAVE_VSNPRINTF -DHAVE_VSSCANF ifeq ($(DEBUG),Y) CFLAGS = -g -Wall -DPDCDEBUG else CFLAGS = -O2 -Wall endif BUILD = $(CC) $(CFLAGS) -I$(PDCURSES_SRCDIR) ifeq ($(shell uname),Darwin) DEMOFLAGS = -Dmain=SDL_main endif LINK = $(CC) LDFLAGS = $(LIBCURSES) $(SLIBS) RANLIB = ranlib LIBCURSES = libpdcurses.a DEMOS = firework newdemo ptest rain testcurs tuidemo worm xmas \ sdltest .PHONY: all libs clean demos all: libs demos libs: $(LIBCURSES) clean: -rm -rf *.o trace $(LIBCURSES) $(DEMOS) demos: $(DEMOS) strip $(DEMOS) $(LIBCURSES) : $(LIBOBJS) $(PDCOBJS) ar rv $@ $? -$(RANLIB) $@ $(LIBOBJS) $(PDCOBJS) : $(PDCURSES_HEADERS) $(PDCOBJS) : $(PDCURSES_SDL_H) $(DEMOS) : $(PDCURSES_CURSES_H) $(LIBCURSES) tui.o tuidemo.o : $(PDCURSES_CURSES_H) terminfo.o: $(TERM_HEADER) panel.o ptest: $(PANEL_HEADER) $(LIBOBJS) : %.o: $(srcdir)/%.c $(BUILD) $(SFLAGS) -c $< $(PDCOBJS) : %.o: $(osdir)/%.c $(BUILD) $(SFLAGS) -c $< firework: $(demodir)/firework.c $(BUILD) $(DEMOFLAGS) -o $@ $< $(LDFLAGS) newdemo: $(demodir)/newdemo.c $(BUILD) $(DEMOFLAGS) -o $@ $< $(LDFLAGS) ptest: $(demodir)/ptest.c $(BUILD) $(DEMOFLAGS) -o $@ $< $(LDFLAGS) rain: $(demodir)/rain.c $(BUILD) $(DEMOFLAGS) -o $@ $< $(LDFLAGS) testcurs: $(demodir)/testcurs.c $(BUILD) $(DEMOFLAGS) -o $@ $< $(LDFLAGS) tuidemo: tuidemo.o tui.o $(LINK) tui.o tuidemo.o -o $@ $(LDFLAGS) worm: $(demodir)/worm.c $(BUILD) $(DEMOFLAGS) -o $@ $< $(LDFLAGS) xmas: $(demodir)/xmas.c $(BUILD) $(DEMOFLAGS) -o $@ $< $(LDFLAGS) sdltest: $(osdir)/sdltest.c $(BUILD) $(DEMOFLAGS) -o $@ $< $(LDFLAGS) tui.o: $(demodir)/tui.c $(demodir)/tui.h $(BUILD) -c $(DEMOFLAGS) $(demodir)/tui.c tuidemo.o: $(demodir)/tuidemo.c $(BUILD) -c $(DEMOFLAGS) $(demodir)/tuidemo.c