]> git.saurik.com Git - wxWidgets.git/blobdiff - src/makeprog.wat
fix bug in Borland (bcc32 really hates ?)
[wxWidgets.git] / src / makeprog.wat
index 431ecc5d3fc9330dc617165e9a328c5537e98a35..d52cc801e1520db736f880ac6708a83f4bc377a9 100644 (file)
@@ -3,37 +3,50 @@ WXDIR = $(%WXWIN)
 !include $(WXDIR)\src\makewat.env
 
 WXLIB = $(WXDIR)\lib
-LNK = $(PROGRAM).lnk
+LNK = $(OUTPUTDIR)$(PROGRAM).lnk
 
-all: $(PROGRAM).exe $(EXTRATARGETS)
+all: $(OUTPUTDIR) $(OUTPUTDIR)$(PROGRAM).exe $(EXTRATARGETS) .SYMBOLIC
 
-$(PROGRAM).exe : $(OBJECTS) $(PROGRAM).res $(LNK) $(WXLIB)\wx.lib
+$(OUTPUTDIR):
+       @if not exist $^@ mkdir $^@
+
+!ifeq wxUSE_GUI 0
+RESFILE=
+!else
+RESFILE=$(OUTPUTDIR)$(PROGRAM).res
+!endif
+
+$(OUTPUTDIR)$(PROGRAM).exe : $(OBJECTS) $(RESFILE) $(LNK) $(WXLIB)\$(LIBNAME).lib
     wlink @$(LNK)
-    $(BINDCOMMAND) $(PROGRAM).res
+!ifneq wxUSE_GUI 0
+    $(BINDCOMMAND) $(RESFILE)
+!endif
 
-$(PROGRAM).res :      $(PROGRAM).rc $(WXDIR)\include\wx\msw\wx.rc
-     $(RC) $(RESFLAGS1) $(PROGRAM).rc
+!ifneq wxUSE_GUI 0
+$(RESFILE): $(PROGRAM).rc $(WXDIR)\include\wx\msw\wx.rc
+     $(RC) $(RESFLAGS) /fo=$(RESFILE) $(PROGRAM).rc
+!endif
 
 $(LNK) : makefile.wat
     %create $(LNK)
-    @%append $(LNK) debug all
-    @%append $(LNK) system $(LINKOPTION)
+    @%append $(LNK) $(LDFLAGS)
+    @%append $(LNK) $(DEBUGINFO)
+    @%append $(LNK) system $(LINKSYSTEM)
     @%append $(LNK) $(STACK)
-    @%append $(LNK) name $(PROGRAM).exe
-    @for %i in ($(LIBS)) do @%append $(LNK) file %i
-    @for %i in ($(EXTRALIBS)) do @%append $(LNK) file %i
+    @%append $(LNK) name $(OUTPUTDIR)$(PROGRAM).exe
     @for %i in ($(OBJECTS)) do @%append $(LNK) file %i
-#    @%append $(LNK) $(MINDATA)
-#    @%append $(LNK) $(MAXDATA)
+    @for %i in ($(LIBS)) do @%append $(LNK) lib %i
+    @for %i in ($(EXTRALIBS)) do @%append $(LNK) lib %i
 
 clean:   .SYMBOLIC
-    -erase *.obj
-    -erase *.bak
-    -erase *.err
-    -erase *.pch
-    -erase *.lib
+    -erase $(OUTPUTDIR)*.obj
+    -erase $(OUTPUTDIR)*.bak
+    -erase $(OUTPUTDIR)*.err
+    -erase $(OUTPUTDIR)*.pch
+    -erase $(OUTPUTDIR)*.lib
     -erase $(LNK)
-    -erase *.res
-    -erase *.exe
-    -erase *.lbc
+    -erase $(OUTPUTDIR)*.res
+    -erase $(OUTPUTDIR)*.exe
+    -erase $(OUTPUTDIR)*.lbc
+       -rmdir $(OUTPUTDIR)