#
# File:		makefile.nt
# Author:	Julian Smart
# Created:	1993
# Updated:	Ulrich Leodolter <ulrich@lab1.psy.univie.ac.at>
# Copyright:	(c) 1993, AIAI, University of Edinburgh
#
# "%W% %G%"
#
# Makefile : Builds PROLOGIO library on Windows NT
#
!include <..\..\..\src\ntwxwin.mak>

PROLOGDIR = $(WXDIR)\utils\prologio
PROLOGINC = $(PROLOGDIR)\src

INC = /I$(WXBASEINC) /I$(WXINC)

PROLOGLIB = $(PROLOGDIR)\lib\prologio.lib



SOURCES = read.cc prorpc.cc y_tab.c lex.yy.c
HEADERS = read.h expr.h prorpc.h
OBJECTS = read.obj prorpc.obj y_tab.obj

all:    $(PROLOGLIB)

wx:
        cd $(WXDIR)\src
        nmake -f makefile.nt
        cd $(PROLOGDIR)\src

$(PROLOGLIB): $(OBJECTS)
	-erase $(PROLOGLIB)
	$(implib) @<<
-out:$(PROLOGLIB)
-machine:$(CPU)
$(OBJECTS)
<<

$(OBJECTS):     $(PROLOGINC)\read.h $(PROLOGINC)\expr.h

read.obj: read.cc $(PROLOGINC)\read.h $(PROLOGINC)\expr.h
        $(cc) @<<
$(CPPFLAGS) /c /Tp $*.cc
<<

prorpc.obj: prorpc.cc $(PROLOGINC)\read.h $(PROLOGINC)\expr.h $(PROLOGINC)\prorpc.h
        $(cc) @<<
$(CPPFLAGS) /c /Tp $*.cc
<<

#expr.obj: expr.c $(PROLOGINC)\read.h $(PROLOGINC)\expr.h
#        $(cc) $(CFLAGS) /c /Tc $*.c

# *** These lines ensure you don't need
# *** YACC or FLEX
y_tab.c:    dosyacc.c
    copy dosyacc.c y_tab.c

lex_yy.c:    doslex.c
    copy doslex.c lex_yy.c

y_tab.obj:    y_tab.c lex_yy.c
        $(cc) $(CPPFLAGS) -DUSE_DEFINE -DYY_USE_PROTOS /c /Tc $*.c

# *** This is how you would recreate the files
# *** using the YACC and FLEX

#y_tab.c:      parser.y
#        yacc parser.y

#lex_yy.c:     lexer.l
#        flex -t -L lexer.l > lex_yy.c

test.exe:      $(WXLIB) $(PROLOGLIB) test.obj test.res
	$(link) @<<
-out:test.exe
-machine:$(CPU)
-subsystem:windows
$(LINKFLAGS)
$(WXDIR)\src\msw\dummy.obj test.obj test.res
$(PROLOGLIB) $(WXLIB)
shell32.lib $(guilibs)
<<


test.obj:      test.cc
        $(cc) @<<
$(CPPFLAGS) /c /Tp $*.cc
<<

test.res :      test.rc $(WXDIR)\include\msw\wx.rc
    $(rc) -r /i$(WXDIR)\include\msw /i$(WXDIR)\contrib\fafa -fo$@ test.rc

clean:
        erase *.exe *.obj y_tab.c *.lib $(PROLOGLIB)

cleanall:
        erase *.exe *.obj *.pch y_tab.c $(PROLOGLIB)
