254 lines
4.7 KiB
Makefile
254 lines
4.7 KiB
Makefile
|
# Makefile for PDCurses library - WIN32 Digital Mars
|
||
|
#
|
||
|
# Usage: make -f dmcwin32.mak [target]
|
||
|
#
|
||
|
# where target can be any of:
|
||
|
# [all|demos|pdcurses.lib|testcurs.exe...]
|
||
|
|
||
|
PDCURSES_SRCDIR = ..
|
||
|
|
||
|
PDCURSES_CURSES_H = $(PDCURSES_SRCDIR)\curses.h
|
||
|
PDCURSES_CURSPRIV_H = $(PDCURSES_SRCDIR)\curspriv.h
|
||
|
PDCURSES_HEADERS = $(PDCURSES_CURSES_H) $(PDCURSES_CURSPRIV_H)
|
||
|
|
||
|
PANEL_HEADER = $(PDCURSES_SRCDIR)\panel.h
|
||
|
TERM_HEADER = $(PDCURSES_SRCDIR)\term.h
|
||
|
|
||
|
srcdir = $(PDCURSES_SRCDIR)\pdcurses
|
||
|
osdir = $(PDCURSES_SRCDIR)\win32
|
||
|
demodir = $(PDCURSES_SRCDIR)\demos
|
||
|
|
||
|
PDCURSES_WIN_H = $(osdir)\pdcwin.h
|
||
|
|
||
|
CC = dmc
|
||
|
|
||
|
CFLAGS = -c -o+space -Nc
|
||
|
|
||
|
CPPFLAGS = -I$(PDCURSES_SRCDIR) #-DPDC_WIDE -DPDC_FORCE_UTF8
|
||
|
|
||
|
LINK = dmc
|
||
|
LIBEXE = lib
|
||
|
|
||
|
LIBCURSES = pdcurses.lib
|
||
|
|
||
|
BUILD = $(CC) $(CFLAGS) $(CPPFLAGS)
|
||
|
|
||
|
DEMOS = testcurs.exe newdemo.exe xmas.exe tuidemo.exe \
|
||
|
firework.exe ptest.exe rain.exe worm.exe
|
||
|
|
||
|
all: $(LIBCURSES) $(DEMOS)
|
||
|
|
||
|
clean:
|
||
|
-del *.obj
|
||
|
-del *.lib
|
||
|
-del *.exe
|
||
|
-del *.map
|
||
|
-del advapi32.def
|
||
|
|
||
|
LIBOBJS = addch.obj addchstr.obj addstr.obj attr.obj beep.obj bkgd.obj \
|
||
|
border.obj clear.obj color.obj delch.obj deleteln.obj deprec.obj getch.obj \
|
||
|
getstr.obj getyx.obj inch.obj inchstr.obj initscr.obj inopts.obj \
|
||
|
insch.obj insstr.obj instr.obj kernel.obj keyname.obj mouse.obj move.obj \
|
||
|
outopts.obj overlay.obj pad.obj panel.obj printw.obj refresh.obj \
|
||
|
scanw.obj scr_dump.obj scroll.obj slk.obj termattr.obj terminfo.obj \
|
||
|
touch.obj util.obj window.obj debug.obj
|
||
|
|
||
|
PDCOBJS = pdcclip.obj pdcdisp.obj pdcgetsc.obj pdckbd.obj pdcscrn.obj \
|
||
|
pdcsetsc.obj pdcutil.obj
|
||
|
|
||
|
DEMOOBJS = testcurs.obj newdemo.obj xmas.obj tuidemo.obj tui.obj \
|
||
|
firework.obj ptest.obj rain.obj worm.obj
|
||
|
|
||
|
$(LIBOBJS) $(PDCOBJS) : $(PDCURSES_HEADERS)
|
||
|
$(PDCOBJS) : $(PDCURSES_WIN_H)
|
||
|
panel.obj ptest.obj: $(PANEL_HEADER)
|
||
|
terminfo.obj: $(TERM_HEADER)
|
||
|
|
||
|
$(DEMOOBJS) : $(PDCURSES_CURSES_H)
|
||
|
$(DEMOS) : $(LIBCURSES)
|
||
|
|
||
|
$(LIBCURSES) : $(LIBOBJS) $(PDCOBJS)
|
||
|
$(LIBEXE) -c $@ $(LIBOBJS) $(PDCOBJS)
|
||
|
-copy $(LIBCURSES) panel.lib
|
||
|
|
||
|
SRCBUILD = $(BUILD) $(srcdir)\$*.c
|
||
|
OSBUILD = $(BUILD) $(osdir)\$*.c
|
||
|
DEMOBUILD = $(LINK) $(CPPFLAGS) -o+space $@ $**
|
||
|
|
||
|
addch.obj: $(srcdir)\addch.c
|
||
|
$(SRCBUILD)
|
||
|
|
||
|
addchstr.obj: $(srcdir)\addchstr.c
|
||
|
$(SRCBUILD)
|
||
|
|
||
|
addstr.obj: $(srcdir)\addstr.c
|
||
|
$(SRCBUILD)
|
||
|
|
||
|
attr.obj: $(srcdir)\attr.c
|
||
|
$(SRCBUILD)
|
||
|
|
||
|
beep.obj: $(srcdir)\beep.c
|
||
|
$(SRCBUILD)
|
||
|
|
||
|
bkgd.obj: $(srcdir)\bkgd.c
|
||
|
$(SRCBUILD)
|
||
|
|
||
|
border.obj: $(srcdir)\border.c
|
||
|
$(SRCBUILD)
|
||
|
|
||
|
clear.obj: $(srcdir)\clear.c
|
||
|
$(SRCBUILD)
|
||
|
|
||
|
color.obj: $(srcdir)\color.c
|
||
|
$(SRCBUILD)
|
||
|
|
||
|
delch.obj: $(srcdir)\delch.c
|
||
|
$(SRCBUILD)
|
||
|
|
||
|
deleteln.obj: $(srcdir)\deleteln.c
|
||
|
$(SRCBUILD)
|
||
|
|
||
|
deprec.obj: $(srcdir)\deprec.c
|
||
|
$(SRCBUILD)
|
||
|
|
||
|
getch.obj: $(srcdir)\getch.c
|
||
|
$(SRCBUILD)
|
||
|
|
||
|
getstr.obj: $(srcdir)\getstr.c
|
||
|
$(SRCBUILD)
|
||
|
|
||
|
getyx.obj: $(srcdir)\getyx.c
|
||
|
$(SRCBUILD)
|
||
|
|
||
|
inch.obj: $(srcdir)\inch.c
|
||
|
$(SRCBUILD)
|
||
|
|
||
|
inchstr.obj: $(srcdir)\inchstr.c
|
||
|
$(SRCBUILD)
|
||
|
|
||
|
initscr.obj: $(srcdir)\initscr.c
|
||
|
$(SRCBUILD)
|
||
|
|
||
|
inopts.obj: $(srcdir)\inopts.c
|
||
|
$(SRCBUILD)
|
||
|
|
||
|
insch.obj: $(srcdir)\insch.c
|
||
|
$(SRCBUILD)
|
||
|
|
||
|
insstr.obj: $(srcdir)\insstr.c
|
||
|
$(SRCBUILD)
|
||
|
|
||
|
instr.obj: $(srcdir)\instr.c
|
||
|
$(SRCBUILD)
|
||
|
|
||
|
kernel.obj: $(srcdir)\kernel.c
|
||
|
$(SRCBUILD)
|
||
|
|
||
|
keyname.obj: $(srcdir)\keyname.c
|
||
|
$(SRCBUILD)
|
||
|
|
||
|
mouse.obj: $(srcdir)\mouse.c
|
||
|
$(SRCBUILD)
|
||
|
|
||
|
move.obj: $(srcdir)\move.c
|
||
|
$(SRCBUILD)
|
||
|
|
||
|
outopts.obj: $(srcdir)\outopts.c
|
||
|
$(SRCBUILD)
|
||
|
|
||
|
overlay.obj: $(srcdir)\overlay.c
|
||
|
$(SRCBUILD)
|
||
|
|
||
|
pad.obj: $(srcdir)\pad.c
|
||
|
$(SRCBUILD)
|
||
|
|
||
|
panel.obj: $(srcdir)\panel.c
|
||
|
$(SRCBUILD)
|
||
|
|
||
|
printw.obj: $(srcdir)\printw.c
|
||
|
$(SRCBUILD)
|
||
|
|
||
|
refresh.obj: $(srcdir)\refresh.c
|
||
|
$(SRCBUILD)
|
||
|
|
||
|
scanw.obj: $(srcdir)\scanw.c
|
||
|
$(SRCBUILD)
|
||
|
|
||
|
scr_dump.obj: $(srcdir)\scr_dump.c
|
||
|
$(SRCBUILD)
|
||
|
|
||
|
scroll.obj: $(srcdir)\scroll.c
|
||
|
$(SRCBUILD)
|
||
|
|
||
|
slk.obj: $(srcdir)\slk.c
|
||
|
$(SRCBUILD)
|
||
|
|
||
|
termattr.obj: $(srcdir)\termattr.c
|
||
|
$(SRCBUILD)
|
||
|
|
||
|
terminfo.obj: $(srcdir)\terminfo.c
|
||
|
$(SRCBUILD)
|
||
|
|
||
|
touch.obj: $(srcdir)\touch.c
|
||
|
$(SRCBUILD)
|
||
|
|
||
|
util.obj: $(srcdir)\util.c
|
||
|
$(SRCBUILD)
|
||
|
|
||
|
window.obj: $(srcdir)\window.c
|
||
|
$(SRCBUILD)
|
||
|
|
||
|
debug.obj: $(srcdir)\debug.c
|
||
|
$(SRCBUILD)
|
||
|
|
||
|
pdcclip.obj: $(osdir)\pdcclip.c
|
||
|
$(OSBUILD)
|
||
|
|
||
|
pdcdisp.obj: $(osdir)\pdcdisp.c
|
||
|
$(OSBUILD)
|
||
|
|
||
|
pdcgetsc.obj: $(osdir)\pdcgetsc.c
|
||
|
$(OSBUILD)
|
||
|
|
||
|
pdckbd.obj: $(osdir)\pdckbd.c
|
||
|
$(OSBUILD)
|
||
|
|
||
|
pdcscrn.obj: $(osdir)\pdcscrn.c
|
||
|
$(OSBUILD)
|
||
|
|
||
|
pdcsetsc.obj: $(osdir)\pdcsetsc.c
|
||
|
$(OSBUILD)
|
||
|
|
||
|
pdcutil.obj: $(osdir)\pdcutil.c
|
||
|
$(OSBUILD)
|
||
|
|
||
|
firework.exe: $(demodir)\firework.c
|
||
|
$(DEMOBUILD)
|
||
|
|
||
|
newdemo.exe: $(demodir)\newdemo.c
|
||
|
$(DEMOBUILD)
|
||
|
|
||
|
ptest.exe: $(demodir)\ptest.c
|
||
|
$(DEMOBUILD)
|
||
|
|
||
|
rain.exe: $(demodir)\rain.c
|
||
|
$(DEMOBUILD)
|
||
|
|
||
|
testcurs.exe: $(demodir)\testcurs.c
|
||
|
$(DEMOBUILD) advapi32.lib
|
||
|
|
||
|
tuidemo.exe: tuidemo.obj tui.obj
|
||
|
$(DEMOBUILD)
|
||
|
|
||
|
worm.exe: $(demodir)\worm.c
|
||
|
$(DEMOBUILD)
|
||
|
|
||
|
xmas.exe: $(demodir)\xmas.c
|
||
|
$(DEMOBUILD)
|
||
|
|
||
|
tui.obj: $(demodir)\tui.c $(demodir)\tui.h
|
||
|
$(BUILD) -I$(demodir) $(demodir)\$*.c
|
||
|
|
||
|
tuidemo.obj: $(demodir)\tuidemo.c
|
||
|
$(BUILD) -I$(demodir) $(demodir)\$*.c
|