1# Makefile for PDCurses library - WIN32 LCC-Win32 2# 3# Usage: make -f lccwin32.mak [target] 4# 5# where target can be any of: 6# [all|demos|pdcurses.lib|testcurs.exe...] 7 8PDCURSES_SRCDIR = .. 9 10PDCURSES_CURSES_H = $(PDCURSES_SRCDIR)\curses.h 11PDCURSES_CURSPRIV_H = $(PDCURSES_SRCDIR)\curspriv.h 12PDCURSES_HEADERS = $(PDCURSES_CURSES_H) $(PDCURSES_CURSPRIV_H) 13 14PANEL_HEADER = $(PDCURSES_SRCDIR)\panel.h 15TERM_HEADER = $(PDCURSES_SRCDIR)\term.h 16 17srcdir = $(PDCURSES_SRCDIR)\pdcurses 18osdir = $(PDCURSES_SRCDIR)\win32 19demodir = $(PDCURSES_SRCDIR)\demos 20 21PDCURSES_WIN_H = $(osdir)\pdcwin.h 22 23CC = lcc 24 25#CFLAGS = -c -g3 -A -ansic 26CFLAGS = -c -O -A -ansic 27 28CPPFLAGS = -I$(PDCURSES_SRCDIR) #-DPDC_WIDE -DPDC_FORCE_UTF8 29 30LINK = lcclnk 31LIBEXE = lcclib 32 33LIBCURSES = pdcurses.lib 34 35BUILD = $(CC) $(CFLAGS) $(CPPFLAGS) 36PDCLIBS = $(LIBCURSES) 37 38DEMOS = testcurs.exe newdemo.exe xmas.exe tuidemo.exe \ 39firework.exe ptest.exe rain.exe worm.exe 40 41all: $(PDCLIBS) $(DEMOS) 42 43clean: 44 -del *.obj 45 -del *.lib 46 -del *.exe 47 48LIBOBJS = addch.obj addchstr.obj addstr.obj attr.obj beep.obj bkgd.obj \ 49border.obj clear.obj color.obj delch.obj deleteln.obj deprec.obj getch.obj \ 50getstr.obj getyx.obj inch.obj inchstr.obj initscr.obj inopts.obj \ 51insch.obj insstr.obj instr.obj kernel.obj keyname.obj mouse.obj move.obj \ 52outopts.obj overlay.obj pad.obj panel.obj printw.obj refresh.obj \ 53scanw.obj scr_dump.obj scroll.obj slk.obj termattr.obj terminfo.obj \ 54touch.obj util.obj window.obj debug.obj 55 56PDCOBJS = pdcclip.obj pdcdisp.obj pdcgetsc.obj pdckbd.obj pdcscrn.obj \ 57pdcsetsc.obj pdcutil.obj 58 59DEMOOBJS = testcurs.obj newdemo.obj xmas.obj tuidemo.obj tui.obj \ 60firework.obj ptest.obj rain.obj worm.obj 61 62$(LIBOBJS) $(PDCOBJS) : $(PDCURSES_HEADERS) 63$(PDCOBJS) : $(PDCURSES_WIN_H) 64panel.obj ptest.obj: $(PANEL_HEADER) 65terminfo.obj: $(TERM_HEADER) 66 67$(DEMOOBJS) : $(PDCURSES_CURSES_H) 68$(DEMOS) : $(LIBCURSES) 69 70$(LIBCURSES) : $(LIBOBJS) $(PDCOBJS) 71 $(LIBEXE) /out:$@ $(LIBOBJS) $(PDCOBJS) 72 -copy $(LIBCURSES) panel.lib 73 74SRCBUILD = $(BUILD) $(srcdir)\$*.c 75OSBUILD = $(BUILD) $(osdir)\$*.c 76 77addch.obj: $(srcdir)\addch.c 78 $(SRCBUILD) 79 80addchstr.obj: $(srcdir)\addchstr.c 81 $(SRCBUILD) 82 83addstr.obj: $(srcdir)\addstr.c 84 $(SRCBUILD) 85 86attr.obj: $(srcdir)\attr.c 87 $(SRCBUILD) 88 89beep.obj: $(srcdir)\beep.c 90 $(SRCBUILD) 91 92bkgd.obj: $(srcdir)\bkgd.c 93 $(SRCBUILD) 94 95border.obj: $(srcdir)\border.c 96 $(SRCBUILD) 97 98clear.obj: $(srcdir)\clear.c 99 $(SRCBUILD) 100 101color.obj: $(srcdir)\color.c 102 $(SRCBUILD) 103 104delch.obj: $(srcdir)\delch.c 105 $(SRCBUILD) 106 107deleteln.obj: $(srcdir)\deleteln.c 108 $(SRCBUILD) 109 110deprec.obj: $(srcdir)\deprec.c 111 $(SRCBUILD) 112 113getch.obj: $(srcdir)\getch.c 114 $(SRCBUILD) 115 116getstr.obj: $(srcdir)\getstr.c 117 $(SRCBUILD) 118 119getyx.obj: $(srcdir)\getyx.c 120 $(SRCBUILD) 121 122inch.obj: $(srcdir)\inch.c 123 $(SRCBUILD) 124 125inchstr.obj: $(srcdir)\inchstr.c 126 $(SRCBUILD) 127 128initscr.obj: $(srcdir)\initscr.c 129 $(SRCBUILD) 130 131inopts.obj: $(srcdir)\inopts.c 132 $(SRCBUILD) 133 134insch.obj: $(srcdir)\insch.c 135 $(SRCBUILD) 136 137insstr.obj: $(srcdir)\insstr.c 138 $(SRCBUILD) 139 140instr.obj: $(srcdir)\instr.c 141 $(SRCBUILD) 142 143kernel.obj: $(srcdir)\kernel.c 144 $(SRCBUILD) 145 146keyname.obj: $(srcdir)\keyname.c 147 $(SRCBUILD) 148 149mouse.obj: $(srcdir)\mouse.c 150 $(SRCBUILD) 151 152move.obj: $(srcdir)\move.c 153 $(SRCBUILD) 154 155outopts.obj: $(srcdir)\outopts.c 156 $(SRCBUILD) 157 158overlay.obj: $(srcdir)\overlay.c 159 $(SRCBUILD) 160 161pad.obj: $(srcdir)\pad.c 162 $(SRCBUILD) 163 164panel.obj: $(srcdir)\panel.c 165 $(SRCBUILD) 166 167printw.obj: $(srcdir)\printw.c 168 $(SRCBUILD) 169 170refresh.obj: $(srcdir)\refresh.c 171 $(SRCBUILD) 172 173scanw.obj: $(srcdir)\scanw.c 174 $(SRCBUILD) 175 176scr_dump.obj: $(srcdir)\scr_dump.c 177 $(SRCBUILD) 178 179scroll.obj: $(srcdir)\scroll.c 180 $(SRCBUILD) 181 182slk.obj: $(srcdir)\slk.c 183 $(SRCBUILD) 184 185termattr.obj: $(srcdir)\termattr.c 186 $(SRCBUILD) 187 188terminfo.obj: $(srcdir)\terminfo.c 189 $(SRCBUILD) 190 191touch.obj: $(srcdir)\touch.c 192 $(SRCBUILD) 193 194util.obj: $(srcdir)\util.c 195 $(SRCBUILD) 196 197window.obj: $(srcdir)\window.c 198 $(SRCBUILD) 199 200debug.obj: $(srcdir)\debug.c 201 $(SRCBUILD) 202 203pdcclip.obj: $(osdir)\pdcclip.c 204 $(OSBUILD) 205 206pdcdisp.obj: $(osdir)\pdcdisp.c 207 $(OSBUILD) 208 209pdcgetsc.obj: $(osdir)\pdcgetsc.c 210 $(OSBUILD) 211 212pdckbd.obj: $(osdir)\pdckbd.c 213 $(OSBUILD) 214 215pdcscrn.obj: $(osdir)\pdcscrn.c 216 $(OSBUILD) 217 218pdcsetsc.obj: $(osdir)\pdcsetsc.c 219 $(OSBUILD) 220 221pdcutil.obj: $(osdir)\pdcutil.c 222 $(OSBUILD) 223 224firework.exe: firework.obj 225 $(LINK) -o $@ firework.obj $(LIBCURSES) 226 227newdemo.exe: newdemo.obj 228 $(LINK) -o $@ newdemo.obj $(LIBCURSES) 229 230ptest.exe: ptest.obj 231 $(LINK) -o $@ ptest.obj $(LIBCURSES) 232 233rain.exe: rain.obj 234 $(LINK) -o $@ rain.obj $(LIBCURSES) 235 236testcurs.exe: testcurs.obj 237 $(LINK) -o $@ testcurs.obj $(LIBCURSES) 238 239tuidemo.exe: tuidemo.obj tui.obj 240 $(LINK) -o $@ tuidemo.obj tui.obj $(LIBCURSES) 241 242worm.exe: worm.obj 243 $(LINK) -o $@ worm.obj $(LIBCURSES) 244 245xmas.exe: xmas.obj 246 $(LINK) -o $@ xmas.obj $(LIBCURSES) 247 248firework.obj: $(demodir)\firework.c 249 $(BUILD) $(demodir)\$*.c 250 251newdemo.obj: $(demodir)\newdemo.c 252 $(BUILD) $(demodir)\$*.c 253 254ptest.obj: $(demodir)\ptest.c 255 $(BUILD) $(demodir)\$*.c 256 257rain.obj: $(demodir)\rain.c 258 $(BUILD) $(demodir)\$*.c 259 260testcurs.obj: $(demodir)\testcurs.c 261 $(BUILD) $(demodir)\$*.c 262 263tui.obj: $(demodir)\tui.c $(demodir)\tui.h 264 $(BUILD) -I$(demodir) $(demodir)\$*.c 265 266tuidemo.obj: $(demodir)\tuidemo.c 267 $(BUILD) -I$(demodir) $(demodir)\$*.c 268 269worm.obj: $(demodir)\worm.c 270 $(BUILD) $(demodir)\$*.c 271 272xmas.obj: $(demodir)\xmas.c 273 $(BUILD) $(demodir)\$*.c 274