1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71
|
CC=cl.exe
CFLAGS=/nologo /Iinclude /W3 /O2 /DHAVE_CONFIG_H
LDFLAGS=/NOLOGO
TARGETS=.libs\ieee1284.lib .libs\ieee1284.dll
OBJECTS=src/access_io.obj src/access_lpt.obj src/access_ppdev.obj src/conf.obj \
src/debug.obj src/default.obj src/delay.obj src/detect.obj \
src/deviceid.obj src/interface.obj src/ports.obj src/state.obj
all: create_dir $(TARGETS) libieee1284_test.exe
create_dir:
if not exist .libs mkdir .libs
clean:
del /q src\*.obj
del /q tests\*.obj
del /q libieee1284_test.exe
rmdir /s /q .libs
distclean: clean
del /q include\config.h
del /q config.log
del /q config.status
.c.obj:
$(CC) $(CFLAGS) /c $< /Fo$@
.libs\ieee1284.lib: $(OBJECTS)
# .libs\ieee1284.lib is the static library. .libs\ieee1284dll.lib is the import
# library for the DLL.
lib.exe $(OBJECTS) $(LDFLAGS) /OUT:$@
.libs\ieee1284.dll: $(OBJECTS)
# I was thinking of using "/DEF:($*B).def". This doesn't work and M$'s
# documentation is terribly confusing.
link.exe $(OBJECTS) $(LDFLAGS) /DLL /DEF:ieee1284.def /IMPLIB:$*dll.lib /OUT:$@
libieee1284_test.exe: tests/test.obj
link.exe $** $(LDFLAGS) .libs\ieee1284.lib /OUT:$@
install:
uninstall:
# Dependencies
src/access_io.obj: include/ieee1284.h include/config.h
src/access_lpt.obj: include/ieee1284.h include/config.h
src/access_ppdev.obj: include/ieee1284.h include/config.h
src/conf.obj: include/ieee1284.h include/config.h
src/debug.obj: include/ieee1284.h include/config.h
src/default.obj: include/ieee1284.h include/config.h
src/delay.obj: include/ieee1284.h include/config.h
src/detect.obj: include/ieee1284.h include/config.h
src/deviceid.obj: include/ieee1284.h include/config.h
src/interface.obj: include/ieee1284.h include/config.h
src/ports.obj: include/ieee1284.h include/config.h
src/state.obj: include/ieee1284.h include/config.h
|