# File: makefile.nt
# Author: Julian Smart
# Created: 1997
-# Updated:
+# Updated:
# Copyright: (c) 1997, Julian Smart
#
# "%W% %G%"
PERIPH_CLEAN_TARGET=clean_xpm $(PERIPH_CLEAN_TARGET)
!endif
-GENDIR=..\generic
-COMMDIR=..\common
+# These are absolute paths, so that the compiler
+# generates correct __FILE__ symbols for debugging.
+# Otherwise you don't be able to double-click on a memory
+# error to load that file.
+GENDIR=$(WXDIR)\src\generic
+COMMDIR=$(WXDIR)\src\common
OLEDIR=ole
-MSWDIR=.
+MSWDIR=$(WXDIR)\src\msw
DOCDIR = $(WXDIR)\docs
GENERICOBJS= \
$(GENDIR)\choicdgg.obj \
- $(GENDIR)\colrdlgg.obj \
- $(GENDIR)\fontdlgg.obj \
$(GENDIR)\gridg.obj \
- $(GENDIR)\helpxlp.obj \
- $(GENDIR)\msgdlgg.obj \
+ $(GENDIR)\laywin.obj \
$(GENDIR)\panelg.obj \
- $(GENDIR)\printps.obj \
- $(GENDIR)\prntdlgg.obj \
+ $(GENDIR)\sashwin.obj \
$(GENDIR)\scrolwin.obj \
$(GENDIR)\splitter.obj \
$(GENDIR)\statusbr.obj \
$(GENDIR)\tabg.obj \
$(GENDIR)\textdlgg.obj
+# These are generic things that don't need to be compiled on MSW,
+# but sometimes it's useful to do so for testing purposes.
+NONESSENTIALOBJS= \
+ $(GENDIR)\printps.obj \
+ $(GENDIR)\prntdlgg.obj \
+ $(GENDIR)\msgdlgg.obj \
+ $(GENDIR)\helpxlp.obj \
+ $(GENDIR)\colrdlgg.obj \
+ $(GENDIR)\fontdlgg.obj \
+ $(COMMDIR)\postscrp.obj
+
COMMONOBJS = \
$(COMMDIR)\cmndata.obj \
$(COMMDIR)\config.obj \
+ $(COMMDIR)\db.obj \
+ $(COMMDIR)\dbtable.obj \
$(COMMDIR)\docview.obj \
+ $(COMMDIR)\docmdi.obj \
$(COMMDIR)\dynarray.obj \
+ $(COMMDIR)\dynlib.obj \
$(COMMDIR)\event.obj \
$(COMMDIR)\file.obj \
- $(COMMDIR)\fileconf.obj \
$(COMMDIR)\filefn.obj \
+ $(COMMDIR)\fileconf.obj \
+ $(COMMDIR)\framecmn.obj \
$(COMMDIR)\gdicmn.obj \
$(COMMDIR)\intl.obj \
$(COMMDIR)\ipcbase.obj \
$(COMMDIR)\log.obj \
$(COMMDIR)\memory.obj \
$(COMMDIR)\module.obj \
- $(COMMDIR)\object.obj \
$(COMMDIR)\odbc.obj \
- $(COMMDIR)\postscrp.obj \
+ $(COMMDIR)\object.obj \
$(COMMDIR)\prntbase.obj \
$(COMMDIR)\resource.obj \
$(COMMDIR)\tbarbase.obj \
$(COMMDIR)\hash.obj \
$(COMMDIR)\list.obj \
$(COMMDIR)\string.obj \
+ $(COMMDIR)\socket.obj \
+ $(COMMDIR)\sckaddr.obj \
+ $(COMMDIR)\sckfile.obj \
+ $(COMMDIR)\sckipc.obj \
+ $(COMMDIR)\sckstrm.obj \
+ $(COMMDIR)\url.obj \
+ $(COMMDIR)\http.obj \
+ $(COMMDIR)\protocol.obj \
$(COMMDIR)\time.obj \
+ $(COMMDIR)\tokenzr.obj \
$(COMMDIR)\wxexpr.obj \
$(COMMDIR)\y_tab.obj \
- $(COMMDIR)\datstrm.obj \
$(COMMDIR)\extended.obj \
- $(COMMDIR)\process.obj
-
-# $(COMMDIR)\wxstrgnu\wxstrgnu.obj \
-# $(COMMDIR)\wxstrgnu\wxregex.obj \
-# $(COMMDIR)\matrix.obj \
+ $(COMMDIR)\process.obj \
+ $(COMMDIR)\fstream.obj \
+ $(COMMDIR)\mstream.obj \
+ $(COMMDIR)\zstream.obj \
+ $(COMMDIR)\stream.obj \
+ $(COMMDIR)\datstrm.obj \
+ $(COMMDIR)\objstrm.obj \
+ $(COMMDIR)\variant.obj \
+ $(COMMDIR)\wincmn.obj
MSWOBJS = \
+ $(MSWDIR)\accel.obj \
$(MSWDIR)\app.obj \
$(MSWDIR)\bitmap.obj \
$(MSWDIR)\bmpbuttn.obj \
$(MSWDIR)\helpwin.obj \
$(MSWDIR)\icon.obj \
$(MSWDIR)\imaglist.obj \
+ $(MSWDIR)\iniconf.obj \
$(MSWDIR)\joystick.obj \
$(MSWDIR)\listbox.obj \
$(MSWDIR)\listctrl.obj \
$(MSWDIR)\minifram.obj \
$(MSWDIR)\msgdlg.obj \
$(MSWDIR)\nativdlg.obj \
+ $(MSWDIR)\notebook.obj \
$(MSWDIR)\ownerdrw.obj \
$(MSWDIR)\palette.obj \
$(MSWDIR)\pen.obj \
$(MSWDIR)\radiobut.obj \
$(MSWDIR)\region.obj \
$(MSWDIR)\registry.obj \
+ $(MSWDIR)\regconf.obj \
$(MSWDIR)\scrolbar.obj \
$(MSWDIR)\settings.obj \
$(MSWDIR)\slidrmsw.obj \
$(OLEDIR)\uuid.obj
+# Add $(NONESSENTIALOBJS) if wanting generic dialogs, PostScript etc.
OBJECTS = $(COMMONOBJS) $(GENERICOBJS) $(MSWOBJS)
# Normal, static library
-all: $(DUMMYOBJ) $(OBJECTS) $(PERIPH_TARGET) $(LIBTARGET)
+all: $(DUMMYOBJ) $(OBJECTS) $(PERIPH_TARGET) png zlib $(LIBTARGET)
# wxWindows library as DLL
dll:
$(link) @<<
$(LINKFLAGS)
-out:$(WXDIR)\lib\wx200.dll
- $(DUMMYOBJ) $(OBJECTS) $(guilibsdll) shell32.lib comctl32.lib ctl3d32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib
+ $(DUMMYOBJ) $(OBJECTS) $(guilibsdll) shell32.lib comctl32.lib ctl3d32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib odbc32.lib advapi32.lib winmm.lib $(WXDIR)\lib\winpng.lib $(WXDIR)\lib\zlib.lib
<<
########################################################
$(CPPFLAGS) $(MAKEPRECOMP) /c /Tp $*.$(SRCSUFF)
<<
+$(MSWDIR)/accel.obj: $*.$(SRCSUFF)
+ cl @<<
+$(CPPFLAGS) /c /Tp $*.$(SRCSUFF) /Fo$@
+<<
+
$(MSWDIR)/app.obj: $*.$(SRCSUFF)
cl @<<
$(CPPFLAGS) /c /Tp $*.$(SRCSUFF) /Fo$@
$(CPPFLAGS) /c /Tp $*.$(SRCSUFF) /Fo$@
<<
+$(MSWDIR)/regconf.obj: $*.$(SRCSUFF)
+ cl @<<
+$(CPPFLAGS) /c /Tp $*.$(SRCSUFF) /Fo$@
+<<
+
$(MSWDIR)/scrolbar.obj: $*.$(SRCSUFF)
cl @<<
$(CPPFLAGS) /c /Tp $*.$(SRCSUFF) /Fo$@
$(CPPFLAGS) /c /Tp $*.$(SRCSUFF) /Fo$@
<<
+$(COMMDIR)/db.obj: $*.$(SRCSUFF)
+ echo $(CPPFLAGS)
+ cl @<<
+$(CPPFLAGS) /c /Tp $*.$(SRCSUFF) /Fo$@
+<<
+
+$(COMMDIR)/dbtable.obj: $*.$(SRCSUFF)
+ echo $(CPPFLAGS)
+ cl @<<
+$(CPPFLAGS) /c /Tp $*.$(SRCSUFF) /Fo$@
+<<
+
$(COMMDIR)/docview.obj: $*.$(SRCSUFF)
cl @<<
$(CPPFLAGS) /c /Tp $*.$(SRCSUFF) /Fo$@
<<
+$(COMMDIR)/docmdi.obj: $*.$(SRCSUFF)
+ cl @<<
+$(CPPFLAGS) /c /Tp $*.$(SRCSUFF) /Fo$@
+<<
+
$(COMMDIR)/dynarray.obj: $*.$(SRCSUFF)
cl @<<
$(CPPFLAGS) /c /Tp $*.$(SRCSUFF) /Fo$@
<<
+$(COMMDIR)/dynlib.obj: $*.$(SRCSUFF)
+ cl @<<
+$(CPPFLAGS) /c /Tp $*.$(SRCSUFF) /Fo$@
+<<
+
$(COMMDIR)/event.obj: $*.$(SRCSUFF)
cl @<<
$(CPPFLAGS) /c /Tp $*.$(SRCSUFF) /Fo$@
$(CPPFLAGS) /c /Tp $*.$(SRCSUFF) /Fo$@
<<
+$(COMMDIR)/framecmn.obj: $*.$(SRCSUFF)
+ cl @<<
+$(CPPFLAGS) /c /Tp $*.$(SRCSUFF) /Fo$@
+<<
+
$(COMMDIR)/gdicmn.obj: $*.$(SRCSUFF)
cl @<<
$(CPPFLAGS) /c /Tp $*.$(SRCSUFF) /Fo$@
<<
+$(COMMDIR)/iniconf.obj: $*.$(SRCSUFF)
+ cl @<<
+$(CPPFLAGS) /c /Tp $*.$(SRCSUFF) /Fo$@
+<<
+
$(COMMDIR)/intl.obj: $*.$(SRCSUFF)
cl @<<
$(CPPFLAGS) /c /Tp $*.$(SRCSUFF) /Fo$@
$(CPPFLAGS) /c /Tp $*.$(SRCSUFF) /Fo$@
<<
-$(COMMDIR)/matrix.obj: $*.$(SRCSUFF)
+$(COMMDIR)/socket.obj: $*.$(SRCSUFF)
+ cl @<<
+$(CPPFLAGS) /c /Tp $*.$(SRCSUFF) /Fo$@
+<<
+
+$(COMMDIR)/sckaddr.obj: $*.$(SRCSUFF)
+ cl @<<
+$(CPPFLAGS) /c /Tp $*.$(SRCSUFF) /Fo$@
+<<
+
+$(COMMDIR)/sckfile.obj: $*.$(SRCSUFF)
+ cl @<<
+$(CPPFLAGS) /c /Tp $*.$(SRCSUFF) /Fo$@
+<<
+
+$(COMMDIR)/sckipc.obj: $*.$(SRCSUFF)
+ cl @<<
+$(CPPFLAGS) /c /Tp $*.$(SRCSUFF) /Fo$@
+<<
+
+$(COMMDIR)/sckstrm.obj: $*.$(SRCSUFF)
+ cl @<<
+$(CPPFLAGS) /c /Tp $*.$(SRCSUFF) /Fo$@
+<<
+
+$(COMMDIR)/url.obj: $*.$(SRCSUFF)
+ cl @<<
+$(CPPFLAGS) /c /Tp $*.$(SRCSUFF) /Fo$@
+<<
+
+$(COMMDIR)/http.obj: $*.$(SRCSUFF)
cl @<<
$(CPPFLAGS) /c /Tp $*.$(SRCSUFF) /Fo$@
<<
-#$(COMMDIR)/wxstrgnu/wxstrgnu.obj: $*.$(SRCSUFF)
-# cl @<<
-#$(CPPFLAGS2) /c /Tp $*.$(SRCSUFF) /Fo$@
-#<<
+$(COMMDIR)/protocol.obj: $*.$(SRCSUFF)
+ cl @<<
+$(CPPFLAGS) /c /Tp $*.$(SRCSUFF) /Fo$@
+<<
-#$(COMMDIR)/wxstrgnu/wxregex.obj: $*.$(SRCSUFF)
-# cl @<<
-#$(CPPFLAGS2) /c /Tp $*.$(SRCSUFF) /Fo$@
-#<<
+$(COMMDIR)/tokenzr.obj: $*.$(SRCSUFF)
+ cl @<<
+$(CPPFLAGS) /c /Tp $*.$(SRCSUFF) /Fo$@
+<<
+
+$(COMMDIR)/matrix.obj: $*.$(SRCSUFF)
+ cl @<<
+$(CPPFLAGS) /c /Tp $*.$(SRCSUFF) /Fo$@
+<<
$(COMMDIR)/time.obj: $*.$(SRCSUFF)
cl @<<
$(CPPFLAGS) /c /Tp $*.$(SRCSUFF) /Fo$@
<<
+$(COMMDIR)\stream.obj: $*.$(SRCSUFF)
+ cl @<<
+$(CPPFLAGS) /c /Tp $*.$(SRCSUFF) /Fo$@
+<<
+
+$(COMMDIR)\fstream.obj: $*.$(SRCSUFF)
+ cl @<<
+$(CPPFLAGS) /c /Tp $*.$(SRCSUFF) /Fo$@
+<<
+
+$(COMMDIR)\mstream.obj: $*.$(SRCSUFF)
+ cl @<<
+$(CPPFLAGS) /c /Tp $*.$(SRCSUFF) /Fo$@
+<<
+
+$(COMMDIR)\zstream.obj: $*.$(SRCSUFF)
+ cl @<<
+$(CPPFLAGS) /c /Tp $*.$(SRCSUFF) /Fo$@
+<<
+
$(COMMDIR)\datstrm.obj: $*.$(SRCSUFF)
cl @<<
$(CPPFLAGS) /c /Tp $*.$(SRCSUFF) /Fo$@
<<
+$(COMMDIR)\objstrm.obj: $*.$(SRCSUFF)
+ cl @<<
+$(CPPFLAGS) /c /Tp $*.$(SRCSUFF) /Fo$@
+<<
+
$(COMMDIR)/extended.obj: $*.c
cl @<<
-$(CPPFLAGS2) /c /Tp $*.c /Fo$@
+$(CPPFLAGS2) /c $*.c /Fo$@
<<
$(COMMDIR)/process.obj: $*.$(SRCSUFF)
cl @<<
-$(CPPFLAGS2) /c /Tp $*.$(SRCSUFF) /Fo$@
+$(CPPFLAGS) /c /Tp $*.$(SRCSUFF) /Fo$@
+<<
+
+$(COMMDIR)/variant.obj: $*.$(SRCSUFF)
+ cl @<<
+$(CPPFLAGS) /c /Tp $*.$(SRCSUFF) /Fo$@
+<<
+
+$(COMMDIR)/wincmn.obj: $*.$(SRCSUFF)
+ cl @<<
+$(CPPFLAGS) /c /Tp $*.$(SRCSUFF) /Fo$@
<<
$(COMMDIR)/y_tab.obj: $*.c $(COMMDIR)/lex_yy.c
$(CPPFLAGS) /c /Tp $*.$(SRCSUFF) /Fo$@
<<
+$(GENDIR)/laywin.obj: $*.$(SRCSUFF)
+ cl @<<
+$(CPPFLAGS) /c /Tp $*.$(SRCSUFF) /Fo$@
+<<
+
$(GENDIR)/msgdlgg.obj: $*.$(SRCSUFF)
cl @<<
$(CPPFLAGS) /c /Tp $*.$(SRCSUFF) /Fo$@
$(CPPFLAGS) /c /Tp $*.$(SRCSUFF) /Fo$@
<<
+$(GENDIR)/sashwin.obj: $*.$(SRCSUFF)
+ cl @<<
+$(CPPFLAGS) /c /Tp $*.$(SRCSUFF) /Fo$@
+<<
+
$(GENDIR)/scrolwin.obj: $*.$(SRCSUFF)
cl @<<
$(CPPFLAGS) /c /Tp $*.$(SRCSUFF) /Fo$@
# Peripheral components
+png:
+ cd $(WXDIR)\src\png
+ nmake -f makefile.nt FINAL=$(FINAL)
+ cd $(WXDIR)\src\msw
+
+clean_png:
+ cd $(WXDIR)\src\png
+ nmake -f makefile.nt clean
+ cd $(WXDIR)\src\msw
+
+zlib:
+ cd $(WXDIR)\src\zlib
+ nmake -f makefile.nt FINAL=$(FINAL)
+ cd $(WXDIR)\src\msw
+
+clean_zlib:
+ cd $(WXDIR)\src\zlib
+ nmake -f makefile.nt clean
+ cd $(WXDIR)\src\msw
+
xpm:
- cd $(WXDIR)\contrib\wxxpm
+ cd $(WXDIR)\src\wxxpm
nmake -f makefile.nt FINAL=$(FINAL)
cd $(WXDIR)\src\msw
clean_xpm:
- cd $(WXDIR)\contrib\wxxpm
+ cd $(WXDIR)\src\wxxpm
nmake -f makefile.nt clean
cd $(WXDIR)\src\msw
nmake -f makefile.nt clean
cd $(WXDIR)\src\msw
-clean: $(PERIPH_CLEAN_TARGET)
+clean: $(PERIPH_CLEAN_TARGET) clean_png clean_zlib
-erase *.obj
-erase $(LIBTARGET)
-erase $(WXDIR)\lib\*.pdb
# Making documents
docs: hlp
-hlp: wxhlp refhlp portinghlp # faqhlp
+hlp: wxhlp portinghlp # faqhlp
wxhlp: $(DOCDIR)/winhelp/wx.hlp
faqhlp: $(DOCDIR)/winhelp/faq.hlp
refhlp: $(DOCDIR)/winhelp/techref.hlp
move faq.ps $(WXDIR)\docs\ps\faq.ps
cd $(THISDIR)
-
+# In order to force document reprocessing
+touchmanual:
+ -touch $(WXDIR)\docs\latex\wx\manual.tex