]> git.saurik.com Git - wxWidgets.git/blobdiff - src/msw/makefile.bcc
wxMenu and wxMenuBar modifications: now works much better with owner-drawn
[wxWidgets.git] / src / msw / makefile.bcc
index 8270dc47cc6da2df0b4f34ff05be3fadb203c208..26c0230cb975e9480bd49a717363d0d92a2c5223 100644 (file)
@@ -31,377 +31,712 @@ WXDIR = $(WXWIN)
 !include $(WXDIR)\src\makebcc.env
 
 THISDIR = $(WXDIR)\src\msw
-WXLIB = $(WXDIR)\lib
-WXINC = $(WXDIR)\include\msw
-WXBASESRC = $(WXDIR)\src\base
-WXBASEINC = $(WXDIR)\include\base
 
 # Please set these according to the settings in wx_setup.h, so we can include
 # the appropriate libraries in wx.lib
 USE_CTL3D=1
-USE_ITSYBITS=1
-USE_GAUGE=1
-USE_IMAGE_LOADING_IN_MSW=1
 USE_XPM_IN_MSW=0
-USE_WX_RESOURCES=1
-USE_RESOURCE_LOADING_IN_MSW=1
-USE_GNU_WXSTRING=1
 
 PERIPH_LIBS=
 PERIPH_TARGET=
 PERIPH_CLEAN_TARGET=
 
 !if "$(USE_CTL3D)" == "1"
-PERIPH_LIBS=$(WXDIR)\lib\ctl3dv2.lib $(PERIPH_LIBS)
-PERIPH_TARGET=ctl3d $(PERIPH_TARGET)
-PERIPH_CLEAN_TARGET=clean_ctl3d $(PERIPH_CLEAN_TARGET)
-!endif
-
-!if "$(USE_ITSYBITS)" == "1"
-PERIPH_LIBS=$(WXDIR)\contrib\itsybits\itsy.lib $(PERIPH_LIBS)
-PERIPH_TARGET=itsy $(PERIPH_TARGET)
-PERIPH_CLEAN_TARGET=clean_itsy $(PERIPH_CLEAN_TARGET)
-!endif
-
-!if "$(USE_GAUGE)" == "1"
-PERIPH_LIBS=$(WXDIR)\contrib\gauge\gauge.lib $(PERIPH_LIBS)
-PERIPH_TARGET=gauge $(PERIPH_TARGET)
-PERIPH_CLEAN_TARGET=clean_gauge $(PERIPH_CLEAN_TARGET)
+PERIPH_LIBS=$(BCCDIR)\lib\ctl3dv2.lib $(PERIPH_LIBS)
 !endif
 
 !if "$(USE_XPM_IN_MSW)" == "1"
-PERIPH_LIBS=$(WXDIR)\contrib\wxxpm\xpm.lib $(PERIPH_LIBS)
+PERIPH_LIBS=$(WXDIR)\xpm.lib $(PERIPH_LIBS)
 PERIPH_TARGET=xpm $(PERIPH_TARGET)
 PERIPH_CLEAN_TARGET=clean_xpm $(PERIPH_CLEAN_TARGET)
 !endif
 
-!if "$(USE_IMAGE_LOADING_IN_MSW)" == "1"
-PERIPH_LIBS=$(WXDIR)\utils\dib\dib.lib $(PERIPH_LIBS)
-PERIPH_TARGET=dib $(PERIPH_TARGET)
-PERIPH_CLEAN_TARGET=clean_dib $(PERIPH_CLEAN_TARGET)
-!endif
-
-!if "$(USE_WX_RESOURCES)" == "1"
-PERIPH_LIBS=$(WXDIR)\utils\prologio\lib\prologio.lib $(PERIPH_LIBS)
-PERIPH_TARGET=prologio $(PERIPH_TARGET)
-PERIPH_CLEAN_TARGET=clean_proio $(PERIPH_CLEAN_TARGET)
-!endif
-
-!if "$(USE_RESOURCE_LOADING_IN_MSW)" == "1"
-PERIPH_LIBS=$(WXDIR)\utils\rcparser\lib\rcparser.lib $(PERIPH_LIBS)
-PERIPH_TARGET=rcparser $(PERIPH_TARGET)
-PERIPH_CLEAN_TARGET=clean_rcp $(PERIPH_CLEAN_TARGET)
-!endif
-
-WXSTRINGOBJ=..\base\wxstring.obj
-
-!if "$(USE_GNU_WXSTRING)" == "1"
-PERIPH_LIBS=$(WXDIR)\contrib\wxstring\wxstring.lib $(PERIPH_LIBS)
-PERIPH_TARGET=wxstring $(PERIPH_TARGET)
-PERIPH_CLEAN_TARGET=clean_wxstring $(PERIPH_CLEAN_TARGET)
-WXSTRINGOBJ=
-!endif
+# TODO: add these libraries
+# PERIPH_LIBS=$(WXDIR)\lib\zlib.lib $(WXDIR)\lib\winpng.lib $(PERIPH_LIBS)
+PERIPH_TARGET=zlib png $(PERIPH_TARGET)
+PERIPH_CLEAN_TARGET=clean_zlib clean_png $(PERIPH_CLEAN_TARGET)
 
 CPPFLAGS=$(DEBUG_FLAGS) $(OPT) @$(CFG)
 
-LIBTARGET= $(WXLIB)\wx.lib
+LIBTARGET= $(WXLIBDIR)\wx.lib
 DUMMY=dummy
 
-BASEHEADERS = $(WXBASEINC)\wx_defs.h \
-  $(WXBASEINC)\wb_buttn.h \
-  $(WXBASEINC)\wb_canvs.h \
-  $(WXBASEINC)\wb_check.h \
-  $(WXBASEINC)\wb_choic.h \
-  $(WXBASEINC)\wb_dc.h \
-  $(WXBASEINC)\wb_dccan.h \
-  $(WXBASEINC)\wb_dcmem.h \
-  $(WXBASEINC)\wb_dialg.h \
-  $(WXBASEINC)\wb_frame.h \
-  $(WXBASEINC)\wb_gdi.h \
-  $(WXBASEINC)\wb_ipc.h \
-  $(WXBASEINC)\wb_ipcob.h \
-  $(WXBASEINC)\wb_item.h \
-  $(WXBASEINC)\wb_lbox.h \
-  $(WXBASEINC)\wb_main.h \
-  $(WXBASEINC)\wb_menu.h \
-  $(WXBASEINC)\wb_messg.h \
-  $(WXBASEINC)\wb_mf.h \
-  $(WXBASEINC)\wb_mnuit.h \
-  $(WXBASEINC)\wb_mtxt.h \
-  $(WXBASEINC)\wb_panel.h \
-  $(WXBASEINC)\wb_slidr.h \
-  $(WXBASEINC)\wb_text.h \
-  $(WXBASEINC)\wb_timer.h \
-  $(WXBASEINC)\wb_txt.h \
-  $(WXBASEINC)\wb_win.h \
-  $(WXBASEINC)\wx_dcps.h \
-  $(WXBASEINC)\wx_form.h \
-  $(WXBASEINC)\wx_hash.h \
-  $(WXBASEINC)\wx_help.h \
-  $(WXBASEINC)\wx_list.h \
-  $(WXBASEINC)\wxstring.h \
-  $(WXBASEINC)\wx_mgstr.h \
-  $(WXBASEINC)\wx_obj.h \
-  $(WXBASEINC)\wx_stdev.h \
-  $(WXBASEINC)\wx_sysev.h \
-  $(WXBASEINC)\wx_types.h \
-  $(WXBASEINC)\wx_utils.h
-
-LOCALHEADERS = \
-  $(WXINC)\wx_buttn.h \
-  $(WXINC)\wx_canvs.h \
-  $(WXINC)\wx_check.h \
-  $(WXINC)\wx_choic.h \
-  $(WXINC)\wx_combo.h \
-  $(WXINC)\wx_dc.h \
-  $(WXINC)\wx_dccan.h \
-  $(WXINC)\wx_dcmem.h \
-  $(WXINC)\wx_dialg.h \
-  $(WXINC)\wx_frame.h \
-  $(WXINC)\wx_gdi.h \
-  $(WXINC)\wx_ipc.h \
-  $(WXINC)\wx_ipcob.h \
-  $(WXINC)\wx_item.h \
-  $(WXINC)\wx_lbox.h \
-  $(WXINC)\wx_main.h \
-  $(WXINC)\wx_menu.h \
-  $(WXINC)\wx_messg.h \
-  $(WXINC)\wx_mf.h \
-  $(WXINC)\wx_mnuit.h \
-  $(WXINC)\wx_mtxt.h \
-  $(WXINC)\wx_panel.h \
-  $(WXINC)\wx_privt.h \
-  $(WXINC)\wx_slidr.h \
-  $(WXINC)\wx_text.h \
-  $(WXINC)\wx_timer.h \
-  $(WXINC)\wx_txt.h \
-  $(WXINC)\wx_win.h
-
-OBJECTS1 = wx_win.obj wx_frame.obj wx_panel.obj wx_utils.obj wx_main.obj\
-  wx_item.obj
-
-OBJECTS2 = wx_text.obj wx_gdi.obj wx_dialg.obj wx_canvs.obj wx_dc.obj wx_mf.obj
-
-OBJECTS3 = wx_ipc.obj wx_timer.obj wx_clipb.obj wx_stat.obj wx_scrol.obj wx_vlbox.obj
-
-OBJECTS4 = wx_buttn.obj wx_messg.obj wx_check.obj wx_choic.obj wx_rbox.obj wx_lbox.obj \
- wx_group.obj wx_gauge.obj wx_txt.obj wx_mtxt.obj wx_slidr.obj wx_menu.obj wx_db.obj\
- wx_cmdlg.obj wx_combo.obj
-
-OBJECTS = $(OBJECTS1) $(OBJECTS2) $(OBJECTS3) $(OBJECTS4)
-
-BASEOBJECTS1 = ..\base\wb_data.obj ..\base\wb_win.obj ..\base\wb_frame.obj ..\base\wb_panel.obj\
-  ..\base\wb_utils.obj ..\base\wb_main.obj ..\base\wb_res.obj
-
-BASEOBJECTS2 = ..\base\wb_item.obj ..\base\wb_list.obj ..\base\wb_obj.obj\
-  ..\base\wb_ps.obj ..\base\wx_doc.obj ..\base\wx_tbar.obj ..\base\wx_bbar.obj
-
-BASEOBJECTS3 = ..\base\wb_text.obj ..\base\wb_gdi.obj ..\base\wb_dialg.obj\
-  ..\base\wb_canvs.obj ..\base\wx_date.obj ..\base\wx_time.obj ..\base\wx_frac.obj
-
-BASEOBJECTS4 = ..\base\wb_dc.obj ..\base\wb_mf.obj ..\base\wb_hash.obj\
-  ..\base\wb_ipc.obj ..\base\wx_lay.obj ..\base\wx_mem.obj ..\base\wb_cmdlg.obj
-
-BASEOBJECTS5 = ..\base\wb_form.obj ..\base\wb_timer.obj ..\base\wb_help.obj\
-  ..\base\wb_vlbox.obj ..\base\wb_scrol.obj ..\base\wb_stat.obj
-
-BASEOBJECTS6 = ..\base\wb_sysev.obj ..\base\wb_stdev.obj ..\base\wb_types.obj\
-  ..\base\wb_mgstr.obj ..\base\wb_print.obj $(WXSTRINGOBJ)
-
-BASEOBJECTS = $(BASEOBJECTS1) $(BASEOBJECTS2) $(BASEOBJECTS3)\
-  $(BASEOBJECTS4) $(BASEOBJECTS5) $(BASEOBJECTS6)
-
-
-all:    $(CFG) $(DUMMY).obj base $(OBJECTS) $(PERIPH_TARGET) $(LIBTARGET)
-
-base:
-       cd $(WXBASESRC)
-       make -f makefile.bcc -DCFG=$(CFG) -DWXDIR=$(WXDIR) DEBUG=$(DEBUG) -DDEBUG_FLAGS=$(DEBUG_FLAGS) -DOPT=$(OPT) -DFINAL=$(FINAL)
-       cd $(THISDIR)
-
-$(LIBTARGET): $(DUMMY).obj $(OBJECTS) $(BASEOBJECTS) $(PERIPH_LIBS)
+GENDIR=..\generic
+COMMDIR=..\common
+OLEDIR=.\ole
+MSWDIR=.
+
+DOCDIR = $(WXDIR)\docs
+
+GENERICOBJS= \
+  $(MSWDIR)\choicdgg.obj \
+  $(MSWDIR)\colrdlgg.obj \
+  $(MSWDIR)\fontdlgg.obj \
+  $(MSWDIR)\gridg.obj \
+  $(MSWDIR)\imaglist.obj \
+  $(MSWDIR)\helpxlp.obj \
+  $(MSWDIR)\laywin.obj \
+  $(MSWDIR)\listctrl.obj \
+  $(MSWDIR)\notebook.obj \
+  $(MSWDIR)\panelg.obj \
+  $(MSWDIR)\prop.obj \
+  $(MSWDIR)\propform.obj \
+  $(MSWDIR)\proplist.obj \
+  $(MSWDIR)\sashwin.obj \
+  $(MSWDIR)\scrolwin.obj \
+  $(MSWDIR)\splitter.obj \
+  $(MSWDIR)\statusbr.obj \
+  $(MSWDIR)\tabg.obj \
+  $(MSWDIR)\textdlgg.obj \
+  $(MSWDIR)\treectrl.obj
+
+#  $(MSWDIR)\msgdlgg.obj \
+#  $(MSWDIR)\printps.obj \
+#  $(MSWDIR)\prntdlgg.obj \
+
+COMMONOBJS = \
+  $(MSWDIR)\config.obj \
+  $(MSWDIR)\cmndata.obj \
+  $(MSWDIR)\docview.obj \
+  $(MSWDIR)\docmdi.obj \
+  $(MSWDIR)\dynarray.obj \
+  $(MSWDIR)\event.obj \
+  $(MSWDIR)\file.obj \
+  $(MSWDIR)\fileconf.obj \
+  $(MSWDIR)\filefn.obj \
+  $(MSWDIR)\framecmn.obj \
+  $(MSWDIR)\gdicmn.obj \
+  $(MSWDIR)\helpbase.obj \
+  $(MSWDIR)\image.obj \
+  $(MSWDIR)\intl.obj \
+  $(MSWDIR)\ipcbase.obj \
+  $(MSWDIR)\log.obj \
+  $(MSWDIR)\layout.obj \
+  $(MSWDIR)\memory.obj \
+  $(MSWDIR)\module.obj \
+  $(MSWDIR)\object.obj \
+  $(MSWDIR)\prntbase.obj \
+  $(MSWDIR)\resource.obj \
+  $(MSWDIR)\resourc2.obj \
+  $(MSWDIR)\tbarbase.obj \
+  $(MSWDIR)\tbarsmpl.obj \
+  $(MSWDIR)\textfile.obj \
+  $(MSWDIR)\timercmn.obj \
+  $(MSWDIR)\utilscmn.obj \
+  $(MSWDIR)\validate.obj \
+  $(MSWDIR)\valgen.obj \
+  $(MSWDIR)\valtext.obj \
+  $(MSWDIR)\variant.obj \
+  $(MSWDIR)\date.obj \
+  $(MSWDIR)\hash.obj \
+  $(MSWDIR)\list.obj \
+  $(MSWDIR)\paper.obj \
+  $(MSWDIR)\string.obj \
+  $(MSWDIR)\time.obj \
+  $(MSWDIR)\wxexpr.obj \
+  $(MSWDIR)\y_tab.obj \
+  $(MSWDIR)\stream.obj \
+  $(MSWDIR)\wfstream.obj \
+  $(MSWDIR)\mstream.obj \
+  $(MSWDIR)\zstream.obj \
+  $(MSWDIR)\datstrm.obj \
+  $(MSWDIR)\sckstrm.obj \
+  $(MSWDIR)\extended.obj \
+  $(MSWDIR)\wincmn.obj \
+  $(MSWDIR)\objstrm.obj \
+  $(MSWDIR)\dynlib.obj \
+  $(MSWDIR)\tokenzr.obj
+
+# Don't compile for WIN16
+#  $(MSWDIR)\socket.obj \
+#  $(MSWDIR)\sckaddr.obj \
+#  $(MSWDIR)\protocol.obj \
+#  $(MSWDIR)\url.obj \
+#  $(MSWDIR)\http.obj \
+#  $(MSWDIR)\ftp.obj \
+#  $(MSWDIR)\sckfile.obj \
+#  $(MSWDIR)\sckipc.obj \
+
+# Needs extra files (sql*.h) so not compiled by default.
+#  $(MSWDIR)\odbc.obj \
+
+# Uses WIN32 registry functions
+#  $(MSWDIR)\mimetype.obj \
+
+MSWOBJS = \
+  $(MSWDIR)\accel.obj \
+  $(MSWDIR)\app.obj \
+  $(MSWDIR)\bitmap.obj \
+  $(MSWDIR)\bmpbuttn.obj \
+  $(MSWDIR)\brush.obj \
+  $(MSWDIR)\button.obj \
+  $(MSWDIR)\checkbox.obj \
+  $(MSWDIR)\checklst.obj \
+  $(MSWDIR)\choice.obj \
+  $(MSWDIR)\clipbrd.obj \
+  $(MSWDIR)\colordlg.obj \
+  $(MSWDIR)\colour.obj \
+  $(MSWDIR)\combobox.obj \
+  $(MSWDIR)\control.obj \
+  $(MSWDIR)\curico.obj \
+  $(MSWDIR)\cursor.obj \
+  $(MSWDIR)\data.obj \
+  $(MSWDIR)\dc.obj \
+  $(MSWDIR)\dcmemory.obj \
+  $(MSWDIR)\dcclient.obj \
+  $(MSWDIR)\dcprint.obj \
+  $(MSWDIR)\dcscreen.obj \
+  $(MSWDIR)\dde.obj \
+  $(MSWDIR)\dialog.obj \
+  $(MSWDIR)\dib.obj \
+  $(MSWDIR)\dibutils.obj \
+  $(MSWDIR)\dirdlg.obj \
+  $(MSWDIR)\filedlg.obj \
+  $(MSWDIR)\font.obj \
+  $(MSWDIR)\fontdlg.obj \
+  $(MSWDIR)\frame.obj \
+  $(MSWDIR)\gaugemsw.obj \
+  $(MSWDIR)\gdiobj.obj \
+  $(MSWDIR)\helpwin.obj \
+  $(MSWDIR)\icon.obj \
+  $(MSWDIR)\iniconf.obj \
+  $(MSWDIR)\joystick.obj \
+  $(MSWDIR)\listbox.obj \
+  $(MSWDIR)\main.obj \
+  $(MSWDIR)\mdi.obj \
+  $(MSWDIR)\menu.obj \
+  $(MSWDIR)\menuitem.obj \
+  $(MSWDIR)\metafile.obj \
+  $(MSWDIR)\minifram.obj \
+  $(MSWDIR)\msgdlg.obj \
+  $(MSWDIR)\nativdlg.obj \
+  $(MSWDIR)\ownerdrw.obj \
+  $(MSWDIR)\palette.obj \
+  $(MSWDIR)\pen.obj \
+  $(MSWDIR)\penwin.obj \
+  $(MSWDIR)\pnghand.obj \
+  $(MSWDIR)\printdlg.obj \
+  $(MSWDIR)\printwin.obj \
+  $(MSWDIR)\radiobox.obj \
+  $(MSWDIR)\radiobut.obj \
+  $(MSWDIR)\region.obj \
+  $(MSWDIR)\scrolbar.obj \
+  $(MSWDIR)\settings.obj \
+  $(MSWDIR)\slidrmsw.obj \
+  $(MSWDIR)\spinbutt.obj \
+  $(MSWDIR)\statbmp.obj \
+  $(MSWDIR)\statbox.obj \
+  $(MSWDIR)\stattext.obj \
+  $(MSWDIR)\tbarmsw.obj \
+  $(MSWDIR)\textctrl.obj \
+  $(MSWDIR)\timer.obj \
+  $(MSWDIR)\utils.obj \
+  $(MSWDIR)\utilsexc.obj \
+  $(MSWDIR)\wave.obj \
+  $(MSWDIR)\window.obj \
+  $(MSWDIR)\xpmhand.obj
+
+# Unfortunately this causes a crash when the oleauto sample starts.
+#  $(MSWDIR)\automtn.obj
+
+# Not used for 16-bit compilation
+#  $(MSWDIR)\tooltip.obj \
+#  $(MSWDIR)\gauge95.obj \
+#  $(MSWDIR)\treectrl.obj \
+#  $(MSWDIR)\oleutils.obj \
+#  $(MSWDIR)\dataobj.obj \
+#  $(MSWDIR)\uuid.obj
+#  $(MSWDIR)\droptgt.obj \
+#  $(MSWDIR)\dropsrc.obj \
+#  $(MSWDIR)\imaglist.obj \
+#  $(MSWDIR)\notebook.obj \
+#  $(MSWDIR)\listctrl.obj \
+#  $(MSWDIR)\tabctrl.obj \
+#  $(MSWDIR)\taskbar.obj \
+#  $(MSWDIR)\tbar95.obj \
+#  $(MSWDIR)\thread.obj \
+#  $(MSWDIR)\slider95.obj \
+#  $(MSWDIR)\statbr95.obj \
+#  $(MSWDIR)\registry.obj \
+#  $(MSWDIR)\regconf.obj \
+
+OBJECTS = $(COMMONOBJS) $(GENERICOBJS) $(MSWOBJS)
+
+default:       wx
+
+wx:    $(CFG) $(DUMMY).obj $(OBJECTS) $(PERIPH_TARGET) $(LIBTARGET)
+
+$(LIBTARGET): $(DUMMY).obj $(OBJECTS) $(PERIPH_LIBS)
        erase $(LIBTARGET)
-       tlib $(WXLIB)\wx.lib /P512 @&&!
-+$(OBJECTS:.obj =.obj +) +$(BASEOBJECTS:.obj =.obj +) +$(PERIPH_LIBS:.lib =.lib +)
+       tlib $(LIBTARGET) /P1024 @&&!
++$(OBJECTS:.obj =.obj +) +$(PERIPH_LIBS:.lib =.lib +)
 !
 
-dummy.obj: dummy.$(SRCSUFF) $(LOCALHEADERS) $(BASEHEADERS) $(WXDIR)\include\base\wx.h
-       
-
-dummydll.obj: dummydll.$(SRCSUFF) $(LOCALHEADERS) $(BASEHEADERS) $(WXDIR)\include\base\wx.h
-
-wx_obj.obj:     $(WXBASEINC)\wx_obj.h
-
-wx_win.obj:     $(WXBASEINC)\wx_defs.h $(WXINC)\wx_win.h $(WXBASEINC)\wx_obj.h \
-  $(WXBASEINC)\wx_utils.h wx_win.$(SRCSUFF) $(WXINC)\wx_gdi.h $(WXINC)\wx_privt.h
-
-wx_main.obj:   $(WXBASEINC)\wx_defs.h $(WXBASEINC)\wx_obj.h $(WXINC)\wx_frame.h $(WXBASEINC)\wx_utils.h \
-  $(WXINC)\wx_main.h wx_main.$(SRCSUFF) $(WXINC)\wx_privt.h
-
-wx_frame.obj:   $(WXBASEINC)\wx_defs.h $(WXINC)\wx_win.h $(WXBASEINC)\wx_obj.h $(WXBASEINC)\wx_utils.h $(WXINC)\wx_frame.h wx_frame.$(SRCSUFF)\
-               $(WXBASEINC)\wx_stdev.h $(WXINC)\wx_privt.h
-
-wx_panel.obj:   $(WXBASEINC)\wx_defs.h $(WXINC)\wx_win.h $(WXBASEINC)\wx_obj.h $(WXBASEINC)\wx_utils.h $(WXINC)\wx_frame.h $(WXINC)\wx_panel.h\
-               wx_panel.$(SRCSUFF) $(WXBASEINC)\wx_stdev.h $(WXINC)\wx_privt.h
-
-wx_text.obj:    $(WXBASEINC)\wx_defs.h $(WXINC)\wx_win.h $(WXBASEINC)\wx_obj.h $(WXBASEINC)\wx_utils.h $(WXINC)\wx_frame.h $(WXINC)\wx_text.h\
-               wx_text.$(SRCSUFF) $(WXBASEINC)\wx_stdev.h $(WXINC)\wx_privt.h
-
-wx_canvs.obj:    $(WXBASEINC)\wx_defs.h $(WXINC)\wx_win.h $(WXBASEINC)\wx_obj.h $(WXBASEINC)\wx_utils.h $(WXINC)\wx_frame.h $(WXINC)\wx_canvs.h\
-                wx_canvs.$(SRCSUFF) $(WXBASEINC)\wx_stdev.h $(WXINC)\wx_gdi.h\
-                $(WXINC)\wx_dc.h $(WXINC)\wx_privt.h
-
-wx_dc.obj:    $(WXBASEINC)\wx_defs.h $(WXINC)\wx_win.h $(WXBASEINC)\wx_obj.h $(WXBASEINC)\wx_utils.h $(WXINC)\wx_frame.h $(WXINC)\wx_canvs.h\
-                wx_dc.$(SRCSUFF) $(WXBASEINC)\wx_stdev.h $(WXINC)\wx_gdi.h $(WXINC)\wx_dc.h\
-       $(WXINC)\wx_dccan.h $(WXINC)\wx_dcmem.h
-
-wx_mf.obj:    $(WXBASEINC)\wx_defs.h $(WXINC)\wx_win.h $(WXBASEINC)\wx_obj.h\
-                wx_mf.$(SRCSUFF) $(WXBASEINC)\wx_stdev.h $(WXINC)\wx_gdi.h $(WXINC)\wx_mf.h
-       
-wx_item.obj:    $(WXBASEINC)\wx_defs.h $(WXINC)\wx_win.h $(WXBASEINC)\wx_obj.h $(WXBASEINC)\wx_utils.h $(WXINC)\wx_frame.h $(WXINC)\wx_item.h\
-               wx_item.$(SRCSUFF) $(WXBASEINC)\wx_stdev.h $(WXINC)\wx_privt.h
-       
-wx_utils.obj:   $(WXBASEINC)\wx_defs.h $(WXBASEINC)\wx_obj.h $(WXBASEINC)\wx_utils.h wx_utils.$(SRCSUFF)
-       
-wx_ipc.obj:   $(WXBASEINC)\wx_defs.h $(WXBASEINC)\wx_obj.h $(WXBASEINC)\wx_utils.h $(WXINC)\wx_ipc.h wx_ipc.$(SRCSUFF)
-       
-wx_gdi.obj:   $(WXBASEINC)\wx_defs.h $(WXINC)\wx_gdi.h $(WXBASEINC)\wx_utils.h wx_gdi.$(SRCSUFF)
-       
-wx_dialg.obj:   $(WXBASEINC)\wx_defs.h wx_dialg.$(SRCSUFF) $(WXINC)\wx_dialg.h $(WXINC)\wx_win.h\
-  $(WXBASEINC)\wx_utils.h $(WXINC)\wx_panel.h $(WXINC)\wx_privt.h
-       
-wx_timer.obj:   $(WXBASEINC)\wx_defs.h wx_timer.$(SRCSUFF) $(WXINC)\wx_timer.h
-       
-wx_clipb.obj:   $(WXBASEINC)\wx_defs.h wx_clipb.$(SRCSUFF) $(WXINC)\wx_clipb.h
-
-wx_stat.obj:   $(WXBASEINC)\wx_defs.h wx_stat.$(SRCSUFF)
-wx_vlbox.obj:   $(WXBASEINC)\wx_defs.h wx_vlbox.$(SRCSUFF)
-wx_messg.obj:   $(WXBASEINC)\wx_defs.h wx_messg.$(SRCSUFF) $(WXINC)\wx_messg.h
-wx_buttn.obj:   $(WXBASEINC)\wx_defs.h wx_buttn.$(SRCSUFF) $(WXINC)\wx_buttn.h
-wx_check.obj:   $(WXBASEINC)\wx_defs.h wx_check.$(SRCSUFF) $(WXINC)\wx_check.h
-wx_choic.obj:   $(WXBASEINC)\wx_defs.h wx_choic.$(SRCSUFF) $(WXINC)\wx_choic.h
-wx_combo.obj:   $(WXBASEINC)\wx_defs.h wx_combo.$(SRCSUFF) $(WXINC)\wx_combo.h
-wx_group.obj:   $(WXBASEINC)\wx_defs.h wx_group.$(SRCSUFF) $(WXINC)\wx_group.h
-wx_gauge.obj:   $(WXBASEINC)\wx_defs.h wx_gauge.$(SRCSUFF) $(WXINC)\wx_gauge.h
-wx_lbox.obj:   $(WXBASEINC)\wx_defs.h wx_lbox.$(SRCSUFF) $(WXINC)\wx_lbox.h
-wx_rbox.obj:   $(WXBASEINC)\wx_defs.h wx_rbox.$(SRCSUFF) $(WXINC)\wx_rbox.h
-wx_menu.obj:   $(WXBASEINC)\wx_defs.h wx_menu.$(SRCSUFF) $(WXINC)\wx_menu.h
-wx_txt.obj:   $(WXBASEINC)\wx_defs.h wx_txt.$(SRCSUFF) $(WXINC)\wx_txt.h
-wx_mtxt.obj:   $(WXBASEINC)\wx_defs.h wx_mtxt.$(SRCSUFF) $(WXINC)\wx_mtxt.h
-wx_slidr.obj:   $(WXBASEINC)\wx_defs.h wx_slidr.$(SRCSUFF) $(WXINC)\wx_slidr.h
-wx_db.obj:   $(WXBASEINC)\wx_defs.h wx_db.$(SRCSUFF) $(WXINC)\wx_db.h
-wx_cmdlg.obj:   $(WXBASEINC)\wx_defs.h wx_cmdlg.$(SRCSUFF) $(WXINC)\wx_cmdlg.h
-
-$(WXINC)\wx_win.h:  $(WXBASEINC)\wb_win.h
-$(WXINC)\wx_main.h:  $(WXBASEINC)\wb_main.h
-$(WXINC)\wx_frame.h:  $(WXBASEINC)\wb_frame.h
-$(WXINC)\wx_panel.h:  $(WXBASEINC)\wb_panel.h
-$(WXINC)\wx_text.h:  $(WXBASEINC)\wb_text.h
-$(WXINC)\wx_dialg.h:  $(WXBASEINC)\wb_dialg.h
-$(WXINC)\wx_ipc.h:  $(WXBASEINC)\wb_ipc.h
-$(WXINC)\wx_gdi.h:  $(WXBASEINC)\wb_gdi.h
-$(WXINC)\wx_event.h:  $(WXBASEINC)\wb_event.h
-$(WXINC)\wx_canvs.h:  $(WXBASEINC)\wb_canvs.h
-$(WXINC)\wx_mf.h:  $(WXBASEINC)\wb_mf.h
-$(WXINC)\wx_item.h:  $(WXBASEINC)\wb_item.h
-$(WXINC)\wx_buttn.h:  $(WXBASEINC)\wb_buttn.h
-$(WXINC)\wx_messg.h:  $(WXBASEINC)\wb_messg.h
-$(WXINC)\wx_choic.h:  $(WXBASEINC)\wb_choic.h
-$(WXINC)\wx_combo.h:  $(WXBASEINC)\wb_combo.h
-$(WXINC)\wx_check.h:  $(WXBASEINC)\wb_check.h
-$(WXINC)\wx_lbox.h:  $(WXBASEINC)\wb_lbox.h
-$(WXINC)\wx_txt.h:  $(WXBASEINC)\wb_txt.h
-$(WXINC)\wx_mtxt.h:  $(WXBASEINC)\wb_mtxt.h
-$(WXINC)\wx_slidr.h:  $(WXBASEINC)\wb_slidr.h
-$(WXINC)\wx_menu.h:  $(WXBASEINC)\wb_menu.h
-
-# Peripheral components
-
-ctl3d:
-    cd $(WXDIR)\contrib\ctl3d\borland
-    make -f makefile.bcc DEBUG=$(DEBUG) 
-    cd $(WXDIR)\src\msw
+dummy.obj: dummy.$(SRCSUFF) $(LOCALHEADERS) $(BASEHEADERS) $(WXDIR)\include\wx\wx.h
+dummydll.obj: dummydll.$(SRCSUFF) $(LOCALHEADERS) $(BASEHEADERS) $(WXDIR)\include\wx\wx.h
 
-clean_ctl3d:
-    cd $(WXDIR)\contrib\ctl3d\borland
-    make -f makefile.bcc clean
-    cd $(WXDIR)\src\msw
+$(MSWDIR)\y_tab.obj:     $(COMMDIR)\y_tab.c $(COMMDIR)\lex_yy.c
 
-itsy:
-    cd $(WXDIR)\contrib\itsybits
-    make -f makefile.bcc DEBUG=$(DEBUG) 
-    cd $(WXDIR)\src\msw
+#        cl @<<
+#$(CPPFLAGS2) /c $*.c -DUSE_DEFINE -DYY_USE_PROTOS /Fo$@
+#<<
 
-clean_itsy:
-    cd $(WXDIR)\contrib\itsybits
-    make -f makefile.bcc clean
-    cd $(WXDIR)\src\msw
+$(COMMDIR)\y_tab.c:     $(COMMDIR)\dosyacc.c
+        copy $(COMMDIR)\dosyacc.c $(COMMDIR)\y_tab.c
 
-gauge:
-    cd $(WXDIR)\contrib\gauge
-    make -f makefile.bcc DEBUG=$(DEBUG) 
-    cd $(WXDIR)\src\msw
+$(COMMDIR)\lex_yy.c:    $(COMMDIR)\doslex.c
+    copy $(COMMDIR)\doslex.c $(COMMDIR)\lex_yy.c
 
-clean_gauge:
-    cd $(WXDIR)\contrib\gauge
-    make -f makefile.bcc clean
-    cd $(WXDIR)\src\msw
+#$(OBJECTS):   $(WXDIR)\include\wx\setup.h
 
-xpm:
-    cd $(WXDIR)\contrib\wxxpm
-    make -f makefile.bcc DEBUG=$(DEBUG) 
-    cd $(WXDIR)\src\msw
+$(MSWDIR)\accel.obj:     $(MSWDIR)\accel.$(SRCSUFF)
 
-clean_xpm:
-    cd $(WXDIR)\contrib\wxxpm
-    make -f makefile.bcc clean
-    cd $(WXDIR)\src\msw
+$(MSWDIR)\app.obj:     $(MSWDIR)\app.$(SRCSUFF)
 
-dib:
-    cd $(WXDIR)\utils\dib
-    make -f makefile.bcc DEBUG=$(DEBUG) 
-    cd $(WXDIR)\src\msw
+$(MSWDIR)\bitmap.obj:     $(MSWDIR)\bitmap.$(SRCSUFF)
 
-clean_dib:
-    cd $(WXDIR)\utils\dib
-    make -f makefile.bcc clean
-    cd $(WXDIR)\src\msw
+$(MSWDIR)\bmpbuttn.obj:     $(MSWDIR)\bmpbuttn.$(SRCSUFF)
 
-prologio:
-    cd $(WXDIR)\utils\prologio\src
-    make -f makefile.bcc DEBUG=$(DEBUG) 
-    cd $(WXDIR)\src\msw
+$(MSWDIR)\brush.obj:     $(MSWDIR)\brush.$(SRCSUFF)
+
+$(MSWDIR)\button.obj:     $(MSWDIR)\button.$(SRCSUFF)
+
+$(MSWDIR)\choice.obj:     $(MSWDIR)\choice.$(SRCSUFF)
+
+$(MSWDIR)\checkbox.obj:     $(MSWDIR)\checkbox.$(SRCSUFF)
+
+$(MSWDIR)\checklst.obj:     $(MSWDIR)\checklst.$(SRCSUFF)
+
+$(MSWDIR)\clipbrd.obj:     $(MSWDIR)\clipbrd.$(SRCSUFF)
+
+$(MSWDIR)\colordlg.obj:     $(MSWDIR)\colordlg.$(SRCSUFF)
+
+$(MSWDIR)\colour.obj:     $(MSWDIR)\colour.$(SRCSUFF)
+
+$(MSWDIR)\combobox.obj:     $(MSWDIR)\combobox.$(SRCSUFF)
+
+$(MSWDIR)\control.obj:     $(MSWDIR)\control.$(SRCSUFF)
+
+$(MSWDIR)\curico.obj:     $(MSWDIR)\curico.$(SRCSUFF)
+
+$(MSWDIR)\cursor.obj:     $(MSWDIR)\cursor.$(SRCSUFF)
+
+$(MSWDIR)\data.obj:     $(MSWDIR)\data.$(SRCSUFF)
+
+$(MSWDIR)\dde.obj:     $(MSWDIR)\dde.$(SRCSUFF)
+
+$(MSWDIR)\dc.obj:     $(MSWDIR)\dc.$(SRCSUFF)
+
+$(MSWDIR)\dcmemory.obj:     $(MSWDIR)\dcmemory.$(SRCSUFF)
+
+$(MSWDIR)\dcclient.obj:     $(MSWDIR)\dcclient.$(SRCSUFF)
+
+$(MSWDIR)\dcprint.obj:     $(MSWDIR)\dcprint.$(SRCSUFF)
+
+$(MSWDIR)\dcscreen.obj:     $(MSWDIR)\dcscreen.$(SRCSUFF)
+
+$(MSWDIR)\dialog.obj:     $(MSWDIR)\dialog.$(SRCSUFF)
+
+$(MSWDIR)\dib.obj:     $(MSWDIR)\dib.$(SRCSUFF)
+
+$(MSWDIR)\dirdlg.obj:     $(MSWDIR)\dirdlg.$(SRCSUFF)
+
+$(MSWDIR)\filedlg.obj:     $(MSWDIR)\filedlg.$(SRCSUFF)
+
+$(MSWDIR)\font.obj:     $(MSWDIR)\font.$(SRCSUFF)
+
+$(MSWDIR)\fontdlg.obj:     $(MSWDIR)\fontdlg.$(SRCSUFF)
+
+$(MSWDIR)\frame.obj:     $(MSWDIR)\frame.$(SRCSUFF)
+
+$(MSWDIR)\gaugemsw.obj:     $(MSWDIR)\gaugemsw.$(SRCSUFF)
+
+$(MSWDIR)\gauge95.obj:     $(MSWDIR)\gauge95.$(SRCSUFF)
+
+$(MSWDIR)\gdiobj.obj:     $(MSWDIR)\gdiobj.$(SRCSUFF)
+
+$(MSWDIR)\icon.obj:     $(MSWDIR)\icon.$(SRCSUFF)
+
+# $(MSWDIR)\imaglist.obj:     $(MSWDIR)\imaglist.$(SRCSUFF)
+
+$(MSWDIR)\joystick.obj:     $(MSWDIR)\joystick.$(SRCSUFF)
+
+$(MSWDIR)\listbox.obj:     $(MSWDIR)\listbox.$(SRCSUFF)
+
+# $(MSWDIR)\listctrl.obj:     $(MSWDIR)\listctrl.$(SRCSUFF)
+
+$(MSWDIR)\main.obj:     $(MSWDIR)\main.$(SRCSUFF)
+
+$(MSWDIR)\mdi.obj:     $(MSWDIR)\mdi.$(SRCSUFF)
+
+$(MSWDIR)\menu.obj:     $(MSWDIR)\menu.$(SRCSUFF)
+
+$(MSWDIR)\menuitem.obj:     $(MSWDIR)\menu.$(SRCSUFF)
+
+$(MSWDIR)\metafile.obj:     $(MSWDIR)\metafile.$(SRCSUFF)
+
+$(MSWDIR)\minifram.obj:     $(MSWDIR)\minifram.$(SRCSUFF)
+
+$(MSWDIR)\msgdlg.obj:     $(MSWDIR)\msgdlg.$(SRCSUFF)
+
+$(MSWDIR)\nativdlg.obj:     $(MSWDIR)\nativdlg.$(SRCSUFF)
+
+# $(MSWDIR)\notebook.obj:     $(MSWDIR)\notebook.$(SRCSUFF)
+
+$(MSWDIR)\ownerdrw.obj:     $(MSWDIR)\ownerdrw.$(SRCSUFF)
+
+$(MSWDIR)\palette.obj:     $(MSWDIR)\palette.$(SRCSUFF)
+
+$(MSWDIR)\pen.obj:     $(MSWDIR)\pen.$(SRCSUFF)
+
+$(MSWDIR)\penwin.obj:     $(MSWDIR)\penwin.$(SRCSUFF)
+
+$(MSWDIR)\printdlg.obj:     $(MSWDIR)\printdlg.$(SRCSUFF)
+
+$(MSWDIR)\printwin.obj:     $(MSWDIR)\printwin.$(SRCSUFF)
+
+$(MSWDIR)\radiobox.obj:     $(MSWDIR)\radiobox.$(SRCSUFF)
+
+$(MSWDIR)\radiobut.obj:     $(MSWDIR)\radiobut.$(SRCSUFF)
+
+$(MSWDIR)\region.obj:     $(MSWDIR)\region.$(SRCSUFF)
+
+$(MSWDIR)\registry.obj:     $(MSWDIR)\registry.$(SRCSUFF)
+
+$(MSWDIR)\regconf.obj:     $(MSWDIR)\regconf.$(SRCSUFF)
+
+$(MSWDIR)\scrolbar.obj:     $(MSWDIR)\scrolbar.$(SRCSUFF)
+
+$(MSWDIR)\settings.obj:     $(MSWDIR)\settings.$(SRCSUFF)
+
+$(MSWDIR)\slidrmsw.obj:     $(MSWDIR)\slidrmsw.$(SRCSUFF)
+
+$(MSWDIR)\slider95.obj:     $(MSWDIR)\slider95.$(SRCSUFF)
+
+$(MSWDIR)\spinbutt.obj:     $(MSWDIR)\spinbutt.$(SRCSUFF)
+
+$(MSWDIR)\statbmp.obj:     $(MSWDIR)\statbmp.$(SRCSUFF)
+
+$(MSWDIR)\statbox.obj:     $(MSWDIR)\statbox.$(SRCSUFF)
+
+$(MSWDIR)\statbr95.obj:     $(MSWDIR)\statbr95.$(SRCSUFF)
+
+$(MSWDIR)\stattext.obj:     $(MSWDIR)\stattext.$(SRCSUFF)
+
+$(MSWDIR)\tabctrl.obj:     $(MSWDIR)\tabctrl.$(SRCSUFF)
+
+$(MSWDIR)\taskbar.obj:     $(MSWDIR)\taskbar.$(SRCSUFF)
+
+$(MSWDIR)\tbar95.obj:     $(MSWDIR)\tbar95.$(SRCSUFF)
+
+$(MSWDIR)\tbarmsw.obj:     $(MSWDIR)\tbarmsw.$(SRCSUFF)
+
+$(MSWDIR)\textctrl.obj:     $(MSWDIR)\textctrl.$(SRCSUFF)
+
+$(MSWDIR)\thread.obj:     $(MSWDIR)\thread.$(SRCSUFF)
+
+$(MSWDIR)\timer.obj:     $(MSWDIR)\timer.$(SRCSUFF)
+
+$(MSWDIR)\tooltip.obj:     $(MSWDIR)\tooltip.$(SRCSUFF)
+
+# $(MSWDIR)\treectrl.obj:     $(MSWDIR)\treectrl.$(SRCSUFF)
+
+$(MSWDIR)\utils.obj:     $(MSWDIR)\utils.$(SRCSUFF)
+
+$(MSWDIR)\utilsexc.obj:        $(MSWDIR)\utilsexc.$(SRCSUFF)
+
+$(MSWDIR)\wave.obj:     $(MSWDIR)\wave.$(SRCSUFF)
+
+$(MSWDIR)\window.obj:     $(MSWDIR)\window.$(SRCSUFF)
 
-clean_proio:
-    cd $(WXDIR)\utils\prologio\src
-    make -f makefile.bcc clean
+$(MSWDIR)\droptgt.obj:     $(OLEDIR)\droptgt.$(SRCSUFF)
+
+$(MSWDIR)\dropsrc.obj:     $(OLEDIR)\dropsrc.$(SRCSUFF)
+
+$(MSWDIR)\dataobj.obj:     $(OLEDIR)\dataobj.$(SRCSUFF)
+
+$(MSWDIR)\oleutils.obj:     $(OLEDIR)\oleutils.$(SRCSUFF)
+
+$(MSWDIR)\uuid.obj:     $(OLEDIR)\uuid.$(SRCSUFF)
+
+$(MSWDIR)\automtn.obj:     $(OLEDIR)\automtn.$(SRCSUFF)
+
+########################################################
+# Common objects (always compiled)
+
+$(MSWDIR)\config.obj:     $(COMMDIR)\config.$(SRCSUFF)
+
+$(MSWDIR)\cmndata.obj:     $(COMMDIR)\cmndata.$(SRCSUFF)
+
+$(MSWDIR)\docview.obj:     $(COMMDIR)\docview.$(SRCSUFF)
+
+$(MSWDIR)\docmdi.obj:     $(COMMDIR)\docmdi.$(SRCSUFF)
+
+$(MSWDIR)\dynarray.obj:     $(COMMDIR)\dynarray.$(SRCSUFF)
+
+$(MSWDIR)\dynlib.obj:   $(COMMDIR)\dynlib.$(SRCSUFF)
+
+$(MSWDIR)\event.obj:     $(COMMDIR)\event.$(SRCSUFF)
+
+$(MSWDIR)\file.obj:     $(COMMDIR)\file.$(SRCSUFF)
+
+$(MSWDIR)\fileconf.obj:     $(COMMDIR)\fileconf.$(SRCSUFF)
+
+$(MSWDIR)\filefn.obj:     $(COMMDIR)\filefn.$(SRCSUFF)
+
+$(MSWDIR)\framecmn.obj:     $(COMMDIR)\framecmn.$(SRCSUFF)
+
+$(MSWDIR)\gdicmn.obj:     $(COMMDIR)\gdicmn.$(SRCSUFF)
+
+$(MSWDIR)\image.obj:     $(COMMDIR)\image.$(SRCSUFF)
+
+$(MSWDIR)\intl.obj:     $(COMMDIR)\intl.$(SRCSUFF)
+
+$(MSWDIR)\ipcbase.obj:     $(COMMDIR)\ipcbase.$(SRCSUFF)
+
+$(MSWDIR)\helpbase.obj:     $(COMMDIR)\helpbase.$(SRCSUFF)
+
+$(MSWDIR)\layout.obj:     $(COMMDIR)\layout.$(SRCSUFF)
+
+$(MSWDIR)\log.obj:     $(COMMDIR)\log.$(SRCSUFF)
+
+$(MSWDIR)\memory.obj:     $(COMMDIR)\memory.$(SRCSUFF)
+
+$(MSWDIR)\mimetype.obj:     $(COMMDIR)\mimetype.$(SRCSUFF)
+
+$(MSWDIR)\module.obj:     $(COMMDIR)\module.$(SRCSUFF)
+
+$(MSWDIR)\object.obj:     $(COMMDIR)\object.$(SRCSUFF)
+
+$(MSWDIR)\odbc.obj:     $(COMMDIR)\odbc.$(SRCSUFF)
+
+$(MSWDIR)\prntbase.obj:     $(COMMDIR)\prntbase.$(SRCSUFF)
+
+$(MSWDIR)\resource.obj:     $(COMMDIR)\resource.$(SRCSUFF)
+
+$(MSWDIR)\resourc2.obj:     $(COMMDIR)\resourc2.$(SRCSUFF)
+
+$(MSWDIR)\tbarbase.obj:     $(COMMDIR)\tbarbase.$(SRCSUFF)
+
+$(MSWDIR)\tbarsmpl.obj:     $(COMMDIR)\tbarsmpl.$(SRCSUFF)
+
+$(MSWDIR)\textfile.obj:     $(COMMDIR)\textfile.$(SRCSUFF)
+
+$(MSWDIR)\timercmn.obj:     $(COMMDIR)\timercmn.$(SRCSUFF)
+
+$(MSWDIR)\utilscmn.obj:     $(COMMDIR)\utilscmn.$(SRCSUFF)
+
+$(MSWDIR)\validate.obj:     $(COMMDIR)\validate.$(SRCSUFF)
+
+$(MSWDIR)\valgen.obj:     $(COMMDIR)\valgen.$(SRCSUFF)
+
+$(MSWDIR)\valtext.obj:     $(COMMDIR)\valtext.$(SRCSUFF)
+
+$(MSWDIR)\date.obj:     $(COMMDIR)\date.$(SRCSUFF)
+
+$(MSWDIR)\wxexpr.obj:     $(COMMDIR)\wxexpr.$(SRCSUFF)
+
+$(MSWDIR)\hash.obj:     $(COMMDIR)\hash.$(SRCSUFF)
+
+$(MSWDIR)\list.obj:     $(COMMDIR)\list.$(SRCSUFF)
+
+$(MSWDIR)\paper.obj:     $(COMMDIR)\paper.$(SRCSUFF)
+
+$(MSWDIR)\string.obj:     $(COMMDIR)\string.$(SRCSUFF)
+
+$(MSWDIR)\variant.obj:     $(COMMDIR)\variant.$(SRCSUFF)
+
+$(MSWDIR)\matrix.obj:     $(COMMDIR)\matrix.$(SRCSUFF)
+
+$(MSWDIR)\time.obj:     $(COMMDIR)\time.$(SRCSUFF)
+
+$(MSWDIR)\datstrm.obj: $(COMMDIR)\datstrm.$(SRCSUFF)
+
+$(MSWDIR)\sckstrm.obj:  $(COMMDIR)\sckstrm.$(SRCSUFF)
+
+$(MSWDIR)\mstream.obj: $(COMMDIR)\mstream.$(SRCSUFF)
+
+$(MSWDIR)\zstream.obj: $(COMMDIR)\zstream.$(SRCSUFF)
+
+$(MSWDIR)\wfstream.obj:        $(COMMDIR)\wfstream.$(SRCSUFF)
+
+$(MSWDIR)\stream.obj:  $(COMMDIR)\stream.$(SRCSUFF)
+
+$(MSWDIR)\objstrm.obj:  $(COMMDIR)\objstrm.$(SRCSUFF)
+
+$(MSWDIR)\wincmn.obj:  $(COMMDIR)\wincmn.$(SRCSUFF)
+
+$(MSWDIR)\extended.obj:        $(COMMDIR)\extended.c
+
+$(MSWDIR)\tokenzr.obj: $(COMMDIR)\tokenzr.$(SRCSUFF)
+
+$(MSWDIR)\socket.obj:  $(COMMDIR)\socket.$(SRCSUFF)
+
+$(MSWDIR)\sckaddr.obj: $(COMMDIR)\sckaddr.$(SRCSUFF)
+
+$(MSWDIR)\protocol.obj: $(COMMDIR)\protocol.$(SRCSUFF)
+
+$(MSWDIR)\url.obj:     $(COMMDIR)\url.$(SRCSUFF)
+
+$(MSWDIR)\http.obj:    $(COMMDIR)\http.$(SRCSUFF)
+
+$(MSWDIR)\ftp.obj:     $(COMMDIR)\ftp.$(SRCSUFF)
+
+$(MSWDIR)\sckfile.obj: $(COMMDIR)\sckfile.$(SRCSUFF)
+
+$(MSWDIR)\sckipc.obj:  $(COMMDIR)\sckipc.$(SRCSUFF)
+
+########################################################
+# Generic objects (not always compiled, depending on
+# whether platforms have native implementations)
+
+$(MSWDIR)\choicdgg.obj:     $(GENDIR)\choicdgg.$(SRCSUFF)
+
+$(MSWDIR)\colrdlgg.obj:     $(GENDIR)\colrdlgg.$(SRCSUFF)
+
+$(MSWDIR)\fontdlgg.obj:     $(GENDIR)\fontdlgg.$(SRCSUFF)
+
+$(MSWDIR)\gridg.obj:     $(GENDIR)\gridg.$(SRCSUFF)
+
+$(MSWDIR)\helpxlp.obj:     $(GENDIR)\helpxlp.$(SRCSUFF)
+
+$(MSWDIR)\laywin.obj:     $(GENDIR)\laywin.$(SRCSUFF)
+
+$(MSWDIR)\msgdlgg.obj:     $(GENDIR)\msgdlgg.$(SRCSUFF)
+
+$(MSWDIR)\panelg.obj:     $(GENDIR)\panelg.$(SRCSUFF)
+
+$(MSWDIR)\printps.obj:     $(GENDIR)\printps.$(SRCSUFF)
+
+$(MSWDIR)\prntdlgg.obj:     $(GENDIR)\prntdlgg.$(SRCSUFF)
+
+$(MSWDIR)\prop.obj:     $(GENDIR)\prop.$(SRCSUFF)
+
+$(MSWDIR)\proplist.obj:     $(GENDIR)\proplist.$(SRCSUFF)
+
+$(MSWDIR)\propform.obj:     $(GENDIR)\propform.$(SRCSUFF)
+
+$(MSWDIR)\sashwin.obj:     $(GENDIR)\sashwin.$(SRCSUFF)
+
+$(MSWDIR)\scrolwin.obj:     $(GENDIR)\scrolwin.$(SRCSUFF)
+
+$(MSWDIR)\splitter.obj:     $(GENDIR)\splitter.$(SRCSUFF)
+
+$(MSWDIR)\statusbr.obj:     $(GENDIR)\statusbr.$(SRCSUFF)
+
+$(MSWDIR)\textdlgg.obj:     $(GENDIR)\textdlgg.$(SRCSUFF)
+
+$(MSWDIR)\tabg.obj:     $(GENDIR)\tabg.$(SRCSUFF)
+
+$(MSWDIR)\treectrl.obj:     $(GENDIR)\treectrl.$(SRCSUFF)
+
+$(MSWDIR)\listctrl.obj:     $(GENDIR)\listctrl.$(SRCSUFF)
+
+$(MSWDIR)\imaglist.obj:     $(GENDIR)\imaglist.$(SRCSUFF)
+
+$(MSWDIR)\notebook.obj:     $(GENDIR)\notebook.$(SRCSUFF)
+
+all_utils:
+    cd $(WXDIR)\utils
+    make -f makefile.bcc
     cd $(WXDIR)\src\msw
 
-rcparser:
-    cd $(WXDIR)\utils\rcparser\src
-    make -f makefile.bcc DEBUG=$(DEBUG) 
+all_samples:
+    cd $(WXDIR)\samples
+    make -f makefile.bcc
     cd $(WXDIR)\src\msw
 
-wxstring:
-    cd $(WXDIR)\contrib\wxstring
-    make -f makefile.bcc OPTIONS="$(OPTIONS)" DEBUG="$(DEBUG)"
+all_execs:
+    cd $(WXDIR)\utils
+    make -f makefile.bcc all_execs
     cd $(WXDIR)\src\msw
 
-clean_wxstring:
-    cd $(WXDIR)\contrib\wxstring
-    make -f makefile.bcc clean
+all_libs:
     cd $(WXDIR)\src\msw
+    make -f makefile.bcc ctl3d dib fafa gauge hytext itsy prologio rcparser wx wxgraph\
+          wxstring wxtree mfutils # wxxpm
 
-clean_rcp:
-    cd $(WXDIR)\utils\rcparser\src
-    make -f makefile.bcc clean
+all_contribs:
     cd $(WXDIR)\src\msw
+    make -f makefile.bcc ctl3d fafa wxstring itsy gauge # wxxpm
+
+# CONTRIB
+ctl3d:  $(CFG)
+        cd $(WXDIR)\src\msw\ctl3d\borland
+        make -f makefile.bcc -DCFG=$(CFG)
+        cd $(WXDIR)\src\msw
+
+wxxpm: $(CFG)
+       cd $(WXDIR)\src\xpm
+       make -f makefile.bcc -DCFG=$(CFG) -DFINAL=$(FINAL) -DWXWIN=$(WXDIR) -DDEBUG=$(DEBUG)
+       cd $(WXDIR)\src\msw
+
+png:    $(CFG)
+        cd $(WXDIR)\src\png
+        make -f makefile.bcc 
+        cd $(WXDIR)\src\msw
+
+clean_png:
+        cd $(WXDIR)\src\png
+        make -f makefile.bcc clean
+        cd $(WXDIR)\src\msw
+
+zlib:   $(CFG)
+        cd $(WXDIR)\src\zlib
+        make -f makefile.bcc
+        cd $(WXDIR)\src\msw
+
+clean_zlib:
+        cd $(WXDIR)\src\zlib
+        make -f makefile.bcc clean
+        cd $(WXDIR)\src\msw
+
+$(CFG): makefile.bcc
+       copy &&!
+-H=$(WXDIR)\src\msw\borland.pch
+-2
+-P
+-d
+-w-hid
+-w-par
+-w-pia
+-w-aus
+-w-rch
+-ml
+-Od
+-WE
+-Fs-
+-Vf
+-Ff=4
+-I$(WXINC);$(BCCDIR)\include;$(WXDIR)/src/png;$(WXDIR)/src/zlib;$(WXDIR)/src/xpm
+-I$(WXDIR)\include\wx\msw\gnuwin32
+-L$(BCCDIR)\lib
+-D__WXWIN__
+-D__WXMSW__
+-D__WINDOWS__
+-D__WIN16__
+! $(CFG)
+!if "$(BOR_VER)" == "3.1"
+       echo -Ff=4 >>$(CFG)
+!elif "$(BOR_VER)" == "4"
+       echo -Ff=512 >>$(CFG)
+       echo -dc >>$(CFG)
+!else
+       echo -Ff=512 >>$(CFG)
+       echo -dc >>$(CFG)
+!endif
+
+# -O was: -Oxt
 
 clean: $(PERIPH_CLEAN_TARGET)
     erase $(LIBTARGET)
-    cd $(WXDIR)\src\base
-    erase *.obj
-    cd $(WXDIR)\src\msw
     erase *.obj
+    erase *.pch
+    erase *.csm
+    erase *.cfg
+       erase ..\common\y_tab.c
+    erase ..\common\lex_yy.c
 
 cleanall: clean
+
+