You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
141 lines
2.7 KiB
Makefile
141 lines
2.7 KiB
Makefile
# Makefile for PDCurses library for VT
|
|
#
|
|
# Usage: [g]make [DEBUG=Y] [WIDE=Y] [UTF8=Y] [target]
|
|
#
|
|
# where target can be any of:
|
|
# [all|demos|libpdcurses.a|testcurs]...
|
|
|
|
O = o
|
|
|
|
ifndef PDCURSES_SRCDIR
|
|
PDCURSES_SRCDIR = ..
|
|
endif
|
|
|
|
include $(PDCURSES_SRCDIR)/libobjs.mif
|
|
|
|
osdir = $(PDCURSES_SRCDIR)/vt
|
|
|
|
# If your system doesn't have these, remove the defines here
|
|
SFLAGS = -DHAVE_VSNPRINTF -DHAVE_VSSCANF
|
|
|
|
ifeq ($(DEBUG),Y)
|
|
CFLAGS = -g -Wall -pedantic -DPDCDEBUG
|
|
else
|
|
CFLAGS = -O2 -Wall -pedantic
|
|
endif
|
|
|
|
ifeq ($(DOS),Y)
|
|
CFLAGS += -DDOS
|
|
EXE = .exe
|
|
else
|
|
CFLAGS += -fPIC
|
|
endif
|
|
|
|
ifeq ($(WIDE),Y)
|
|
CFLAGS += -DPDC_WIDE
|
|
endif
|
|
|
|
ifeq ($(UTF8),Y)
|
|
CFLAGS += -DPDC_FORCE_UTF8
|
|
endif
|
|
|
|
ifdef CHTYPE_32
|
|
CFLAGS += -DCHTYPE_32
|
|
endif
|
|
|
|
ifdef CHTYPE_16
|
|
CFLAGS += -DCHTYPE_16
|
|
endif
|
|
|
|
ifdef _w64
|
|
PREFIX = x86_64-w64-mingw32-
|
|
EXE = .exe
|
|
endif
|
|
|
|
ifdef _w32
|
|
PREFIX = i686-w64-mingw32-
|
|
EXE = .exe
|
|
endif
|
|
|
|
CC = $(PREFIX)gcc
|
|
AR = $(PREFIX)ar
|
|
STRIP = $(PREFIX)strip
|
|
|
|
BUILD = $(CC) $(CFLAGS) -I$(PDCURSES_SRCDIR)
|
|
|
|
LINK = $(CC)
|
|
LDFLAGS = $(LIBCURSES)
|
|
RANLIB = ranlib
|
|
LIBCURSES = libpdcurses.a
|
|
|
|
DEMOS = firework$(EXE) ozdemo$(EXE) newtest$(EXE) ptest$(EXE) rain$(EXE) \
|
|
testcurs$(EXE) tuidemo$(EXE) worm$(EXE) xmas$(EXE)
|
|
|
|
.PHONY: all libs clean demos
|
|
|
|
all: libs demos
|
|
|
|
libs: $(LIBCURSES)
|
|
|
|
clean:
|
|
-rm -rf *.o trace $(LIBCURSES) $(DEMOS)
|
|
|
|
demos: $(DEMOS)
|
|
ifneq ($(DEBUG),Y)
|
|
strip $(DEMOS)
|
|
endif
|
|
|
|
$(LIBCURSES) : $(LIBOBJS) $(PDCOBJS)
|
|
ar rv $@ $?
|
|
-$(RANLIB) $@
|
|
|
|
$(LIBOBJS) $(PDCOBJS) : $(PDCURSES_HEADERS)
|
|
$(DEMOS) : $(PDCURSES_CURSES_H) $(LIBCURSES)
|
|
tui.o tuidemo.o : $(PDCURSES_CURSES_H)
|
|
panel.o ptest: $(PANEL_HEADER)
|
|
|
|
$(LIBOBJS) : %.o: $(srcdir)/%.c
|
|
$(BUILD) $(SFLAGS) -c $<
|
|
|
|
$(PDCOBJS) : %.o: $(osdir)/%.c
|
|
$(BUILD) $(SFLAGS) -c $<
|
|
|
|
firework$(EXE) : $(demodir)/firework.c
|
|
$(BUILD) $(DEMOFLAGS) -o $@ $< $(LDFLAGS)
|
|
|
|
ozdemo$(EXE) : $(demodir)/ozdemo.c
|
|
$(BUILD) $(DEMOFLAGS) -o $@ $< $(LDFLAGS)
|
|
|
|
newtest$(EXE) : $(demodir)/newtest.c
|
|
$(BUILD) $(DEMOFLAGS) -o $@ $< $(LDFLAGS)
|
|
|
|
picsview$(EXE) : $(demodir)/picsview.c
|
|
$(BUILD) $(DEMOFLAGS) -o $@ $< $(LDFLAGS)
|
|
|
|
ptest$(EXE) : $(demodir)/ptest.c
|
|
$(BUILD) $(DEMOFLAGS) -o $@ $< $(LDFLAGS)
|
|
|
|
rain$(EXE) : $(demodir)/rain.c
|
|
$(BUILD) $(DEMOFLAGS) -o $@ $< $(LDFLAGS)
|
|
|
|
speed$(EXE) : $(demodir)/speed.c
|
|
$(BUILD) $(DEMOFLAGS) -o $@ $< $(LDFLAGS)
|
|
|
|
testcurs$(EXE) : $(demodir)/testcurs.c
|
|
$(BUILD) $(DEMOFLAGS) -o $@ $< $(LDFLAGS)
|
|
|
|
tuidemo$(EXE) : tuidemo.o tui.o
|
|
$(LINK) tui.o tuidemo.o -o $@ $(LDFLAGS)
|
|
|
|
worm$(EXE) : $(demodir)/worm.c
|
|
$(BUILD) $(DEMOFLAGS) -o $@ $< $(LDFLAGS)
|
|
|
|
xmas$(EXE) : $(demodir)/xmas.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
|