]> git.saurik.com Git - wxWidgets.git/blobdiff - src/os2/makefile.va
corrected path splitting for mac relative paths
[wxWidgets.git] / src / os2 / makefile.va
index 044091894d7fb215d0119d1c14e25a66253b69d0..70f947a85bffc6964066ff653f29b6cdabd320bc 100644 (file)
@@ -22,6 +22,14 @@ LIBTARGET=$(WXDIR)\lib\$(WXLIBNAME).dll
 DUMMYOBJ=$D\dummydll.obj
 !else
 LIBTARGET=$(WXLIB)
+COMTEMPTGT1=$(WXDIR)\lib\wxcom1.lib
+COMTEMPTGT2=$(WXDIR)\lib\wxcom2.lib
+COMTEMPTGT3=$(WXDIR)\lib\wxcom3.lib
+GENTEMPTGT=$(WXDIR)\lib\wxgen.lib
+NONESTEMPTGT=$(WXDIR)\lib\wxnones.lib
+OS2TEMPTGT1=$(WXDIR)\lib\wxos21.lib
+OS2TEMPTGT2=$(WXDIR)\lib\wxos22.lib
+HTMLTEMPTGT=$(WXDIR)\lib\wxhtml.lib
 DUMMYOBJ=$D\dummy.obj
 !endif
 
@@ -44,6 +52,18 @@ COMMDIR=$(WXDIR)\src\common
 OS2DIR=$(WXDIR)\src\os2
 HTMLDIR = $(WXDIR)\src\html
 
+!if [md $(COMMDIR)\$D]
+!endif
+
+!if [md $(OS2DIR)\$D]
+!endif
+
+!if [md $(GENDIR)\$D]
+!endif
+
+!if [md $(HTMLDIR)\$D]
+!endif
+
 {..\generic}.cpp{..\generic\$D}.obj:
     @echo $<
     icc @<<
@@ -57,128 +77,382 @@ $(CPPFLAGS) /Fo$@ /Tp $<
 <<
 
 {..\os2}.cpp{..\os2\$D}.obj:
+    @echo $<
+    icc @<<
+$(CPPFLAGS) /Fo$@ /Tp $<
+<<
+
+{..\os2}.c{..\os2\$D}.obj:
+    @echo $<
     icc @<<
 $(CPPFLAGS) /Fo$@ /Tp $<
 <<
 
 {..\html}.cpp{..\html\$D}.obj:
+    @echo $<
     icc @<<
 $(CPPFLAGS) /Fo$@ /Tp $<
 <<
 
 GENERICOBJS= \
+  ..\generic\$D\busyinfo.obj \
+  ..\generic\$D\calctrl.obj \
+  ..\generic\$D\caret.obj \
   ..\generic\$D\choicdgg.obj \
-  ..\generic\$D\gridg.obj \
+  ..\generic\$D\colrdlgg.obj \
+  ..\generic\$D\dcpsg.obj \
+  ..\generic\$D\dirdlgg.obj \
+  ..\generic\$D\dirctrlg.obj \
+  ..\generic\$D\dragimgg.obj \
+  ..\generic\$D\fontdlgg.obj \
+  ..\generic\$D\fdrepdlg.obj \
+  ..\generic\$D\grid.obj \
+  ..\generic\$D\gridctrl.obj \
+  ..\generic\$D\gridsel.obj \
+  ..\generic\$D\helpext.obj \
+  ..\generic\$D\helphtml.obj \
+  ..\generic\$D\helpwxht.obj \
+  ..\generic\$D\helpxlp.obj \
+  ..\generic\$D\imaglist.obj \
   ..\generic\$D\laywin.obj \
+  ..\generic\$D\listctrl.obj \
+  ..\generic\$D\logg.obj \
+  ..\generic\$D\numdlgg.obj \
   ..\generic\$D\panelg.obj \
+  ..\generic\$D\printps.obj \
+  ..\generic\$D\prntdlgg.obj \
   ..\generic\$D\progdlgg.obj \
   ..\generic\$D\prop.obj \
   ..\generic\$D\propform.obj \
   ..\generic\$D\proplist.obj \
   ..\generic\$D\sashwin.obj \
-  ..\generic\$D\scrolwin.obj \
+  ..\generic\$D\scrlwing.obj \
+  ..\generic\$D\spinctlg.obj \
   ..\generic\$D\splitter.obj \
   ..\generic\$D\statusbr.obj \
   ..\generic\$D\tabg.obj \
+  ..\generic\$D\tbarsmpl.obj \
   ..\generic\$D\textdlgg.obj \
-  ..\generic\$D\extdlgg.obj \
   ..\generic\$D\tipdlg.obj \
-  ..\generic\$D\busyinfo.obj
+  ..\generic\$D\tipwin.obj \
+  ..\generic\$D\treectlg.obj \
+  ..\generic\$D\treelay.obj \
+  ..\generic\$D\wizard.obj
 
-#  ..\generic\$D\imaglist.obj \
-#  ..\generic\$D\treectrl.obj \
-#  ..\generic\$D\listctrl.obj \
+#  ..\generic\$D\gridg.obj \
 #  ..\generic\$D\notebook.obj \
 
-# These are generic things that don't need to be compiled on MSW,
+GENLIBOBJS= \
+  busyinfo.obj \
+  calctrl.obj \
+  caret.obj \
+  choicdgg.obj \
+  colrdlgg.obj \
+  dcpsg.obj \
+  dirdlgg.obj \
+  dirctrlg.obj \
+  dragimgg.obj \
+  fontdlgg.obj \
+  fdrepdlg.obj \
+  grid.obj \
+  gridctrl.obj \
+  gridsel.obj \
+  helpext.obj \
+  helphtml.obj \
+  helpwxht.obj \
+  helpxlp.obj \
+  imaglist.obj \
+  laywin.obj \
+  listctrl.obj \
+  logg.obj \
+  numdlgg.obj \
+  panelg.obj \
+  printps.obj \
+  prntdlgg.obj \
+  progdlgg.obj \
+  prop.obj \
+  propform.obj \
+  proplist.obj \
+  sashwin.obj \
+  scrlwing.obj \
+  spinctlg.obj \
+  splitter.obj \
+  statusbr.obj \
+  tabg.obj \
+  tbarsmpl.obj \
+  textdlgg.obj \
+  tipdlg.obj \
+  tipwin.obj \
+  treectlg.obj \
+  treelay.obj \
+  wizard.obj
+
+# These are generic things that don't need to be compiled on PM,
 # but sometimes it's useful to do so for testing purposes.
 NONESSENTIALOBJS= \
-  ..\generic\$D\printps.obj \
-  ..\generic\$D\prntdlgg.obj \
-  ..\generic\$D\msgdlgg.obj \
-  ..\generic\$D\helpxlp.obj \
-  ..\generic\$D\colrdlgg.obj \
-  ..\generic\$D\fontdlgg.obj
+  ..\generic\$D\msgdlgg.obj
 
 COMMONOBJS = \
+  ..\common\$D\appcmn.obj \
+  ..\common\$D\choiccmn.obj \
+  ..\common\$D\clipcmn.obj \
+  ..\common\$D\clntdata.obj \
+  ..\common\$D\cmdline.obj \
   ..\common\$D\cmndata.obj \
+  ..\common\$D\cmdproc.obj \
   ..\common\$D\config.obj \
-  ..\common\$D\dcbase.obj \
+  ..\common\$D\containr.obj \
+  ..\common\$D\cshelp.obj \
+  ..\common\$D\ctrlcmn.obj \
+  ..\common\$D\ctrlsub.obj \
+  ..\common\$D\datetime.obj \
+  ..\common\$D\datstrm.obj \
+!if "$(WXMAKINGDLL)" != "1"
+# don't have an ODBC database
   ..\common\$D\db.obj \
+  ..\common\$D\dbgrid.obj \
   ..\common\$D\dbtable.obj \
-  ..\common\$D\docview.obj \
+!endif
+  ..\common\$D\dcbase.obj \
+  ..\common\$D\dircmn.obj \
+  ..\common\$D\dlgcmn.obj \
+  ..\common\$D\dndcmn.obj \
+  ..\common\$D\dobjcmn.obj \
   ..\common\$D\docmdi.obj \
+  ..\common\$D\docview.obj \
+  ..\common\$D\dseldlg.obj \
   ..\common\$D\dynarray.obj \
   ..\common\$D\dynlib.obj \
+  ..\common\$D\dynload.obj \
+  ..\common\$D\effects.obj \
+  ..\common\$D\encconv.obj \
   ..\common\$D\event.obj \
+  ..\common\$D\extended.obj \
+  ..\common\$D\fddlgcmn.obj \
+  ..\common\$D\ffile.obj \
   ..\common\$D\file.obj \
-  ..\common\$D\filefn.obj \
   ..\common\$D\fileconf.obj \
+  ..\common\$D\filefn.obj \
+  ..\common\$D\filename.obj \
+  ..\common\$D\filesys.obj \
+  ..\common\$D\fontcmn.obj \
+  ..\common\$D\fontmap.obj \
   ..\common\$D\framecmn.obj \
+  ..\common\$D\fs_inet.obj \
+  ..\common\$D\fs_mem.obj \
+  ..\common\$D\fs_zip.obj \
   ..\common\$D\ftp.obj \
+  ..\common\$D\gaugecmn.obj \
   ..\common\$D\gdicmn.obj \
-  ..\common\$D\image.obj \
+  ..\common\$D\geometry.obj \
+  ..\common\$D\gifdecod.obj \
+  ..\common\$D\hash.obj \
+  ..\common\$D\helpbase.obj \
+  ..\common\$D\http.obj \
+  ..\common\$D\imagall.obj \
   ..\common\$D\imagbmp.obj \
+  ..\common\$D\image.obj \
+  ..\common\$D\imaggif.obj \
+  ..\common\$D\imagiff.obj \
   ..\common\$D\imagjpeg.obj \
+  ..\common\$D\imagpcx.obj \
   ..\common\$D\imagpng.obj \
-  ..\common\$D\imaggif.obj \
+  ..\common\$D\imagpnm.obj \
+  ..\common\$D\imagtiff.obj \
+  ..\common\$D\imagxpm.obj \
   ..\common\$D\intl.obj \
   ..\common\$D\ipcbase.obj \
-  ..\common\$D\helpbase.obj \
   ..\common\$D\layout.obj \
+  ..\common\$D\lboxcmn.obj \
+  ..\common\$D\list.obj \
   ..\common\$D\log.obj \
+  ..\common\$D\longlong.obj \
+  ..\common\$D\matrix.obj \
   ..\common\$D\memory.obj \
-  ..\common\$D\mimetype.obj \
+  ..\common\$D\menucmn.obj \
+  ..\common\$D\mimecmn.obj \
   ..\common\$D\module.obj \
-  ..\common\$D\odbc.obj \
+  ..\common\$D\mstream.obj \
+  ..\common\$D\nbkbase.obj \
   ..\common\$D\object.obj \
+!if "$(WXMAKINGDLL)" != "1"
+# don't have an ODBC database
+  ..\common\$D\odbc.obj \
+!endif
+  ..\common\$D\paper.obj \
+  ..\common\$D\popupcmn.obj \
   ..\common\$D\prntbase.obj \
+  ..\common\$D\process.obj \
+  ..\common\$D\protocol.obj \
+  ..\common\$D\quantize.obj \
+  ..\common\$D\radiocmn.obj \
+  ..\common\$D\regex.obj \
   ..\common\$D\resource.obj \
+  ..\common\$D\sckaddr.obj \
+  ..\common\$D\sckfile.obj \
+  ..\common\$D\sckipc.obj \
+  ..\common\$D\sckstrm.obj \
+  ..\common\$D\sizer.obj \
+  ..\common\$D\socket.obj \
+  ..\common\$D\statbar.obj \
+  ..\common\$D\strconv.obj \
+  ..\common\$D\stream.obj \
+  ..\common\$D\string.obj \
+  ..\common\$D\sysopt.obj \
   ..\common\$D\tbarbase.obj \
-  ..\common\$D\tbarsmpl.obj \
+  ..\common\$D\textbuf.obj \
+  ..\common\$D\textcmn.obj \
   ..\common\$D\textfile.obj \
   ..\common\$D\timercmn.obj \
+  ..\common\$D\tokenzr.obj \
+  ..\common\$D\toplvcmn.obj \
+  ..\common\$D\treebase.obj \
+  ..\common\$D\txtstrm.obj \
+  ..\common\$D\unzip.obj \
+  ..\common\$D\url.obj \
   ..\common\$D\utilscmn.obj \
-  ..\common\$D\validate.obj \
   ..\common\$D\valgen.obj \
+  ..\common\$D\validate.obj \
   ..\common\$D\valtext.obj \
-  ..\common\$D\date.obj \
-  ..\common\$D\hash.obj \
-  ..\common\$D\list.obj \
-  ..\common\$D\paper.obj \
-  ..\common\$D\string.obj \
-  ..\common\$D\socket.obj \
-  ..\common\$D\sckaddr.obj \
-  ..\common\$D\sckint.obj \
-  ..\common\$D\sckfile.obj \
-  ..\common\$D\sckipc.obj \
-  ..\common\$D\sckstrm.obj \
-  ..\common\$D\url.obj \
-  ..\common\$D\http.obj \
-  ..\common\$D\protocol.obj \
-  ..\common\$D\time.obj \
-  ..\common\$D\tokenzr.obj \
-  ..\common\$D\wxexpr.obj \
-  ..\common\$D\y_tab.obj \
-  ..\common\$D\extended.obj \
-  ..\common\$D\process.obj \
-  ..\common\$D\wfstream.obj \
-  ..\common\$D\mstream.obj \
-  ..\common\$D\zstream.obj \
-  ..\common\$D\stream.obj \
-  ..\common\$D\datstrm.obj \
-  ..\common\$D\objstrm.obj \
   ..\common\$D\variant.obj \
-  ..\common\$D\dlgcmn.obj \
+  ..\common\$D\wfstream.obj \
   ..\common\$D\wincmn.obj \
-  ..\common\$D\txtstrm.obj \
   ..\common\$D\wxchar.obj \
-  ..\common\$D\unzip.obj \
-  ..\common\$D\zipstream.obj \
-  ..\common\$D\filesys.obj \
-  ..\common\$D\fs_inet.obj \
-  ..\common\$D\fs_zip.obj
+  ..\common\$D\wxexpr.obj \
+  ..\common\$D\xpmdecod.obj \
+  ..\common\$D\y_tab.obj \
+  ..\common\$D\zipstrm.obj \
+  ..\common\$D\zstream.obj
 
+COMLIBOBJS1 = \
+  appcmn.obj \
+  choiccmn.obj \
+  clipcmn.obj \
+  clntdata.obj \
+  cmdline.obj \
+  cmndata.obj \
+  cmdproc.obj \
+  config.obj \
+  containr.obj \
+  cshelp.obj \
+  ctrlcmn.obj \
+  ctrlsub.obj \
+  datetime.obj \
+  datstrm.obj \
+  db.obj \
+  dbgrid.obj \
+  dbtable.obj \
+  dcbase.obj \
+  dircmn.obj \
+  dndcmn.obj \
+  dlgcmn.obj \
+  dobjcmn.obj \
+  docmdi.obj \
+  docview.obj \
+  dseldlg.obj \
+  dynarray.obj \
+  dynlib.obj \
+  dynload.obj \
+  effects.obj \
+  encconv.obj \
+  event.obj \
+  extended.obj \
+  fddlgcmn.obj \
+  ffile.obj \
+  file.obj \
+  fileconf.obj \
+  filefn.obj \
+  filename.obj \
+  filesys.obj \
+  fontcmn.obj \
+  fontmap.obj \
+  framecmn.obj \
+  fs_inet.obj
+
+COMLIBOBJS2 = \
+  fs_mem.obj \
+  fs_zip.obj \
+  ftp.obj \
+  gaugecmn.obj \
+  gdicmn.obj \
+  geometry.obj \
+  gifdecod.obj \
+  hash.obj \
+  helpbase.obj \
+  http.obj \
+  imagall.obj \
+  imagbmp.obj \
+  image.obj \
+  imaggif.obj \
+  imagiff.obj \
+  imagjpeg.obj \
+  imagpcx.obj \
+  imagpng.obj \
+  imagpnm.obj \
+  imagtiff.obj \
+  imagxpm.obj \
+  intl.obj \
+  ipcbase.obj \
+  layout.obj \
+  lboxcmn.obj \
+  list.obj \
+  log.obj \
+  longlong.obj \
+  matrix.obj \
+  memory.obj \
+  menucmn.obj \
+  mimecmn.obj \
+  module.obj \
+  mstream.obj \
+  nbkbase.obj \
+  object.obj \
+  odbc.obj \
+  paper.obj \
+  popupcmn.obj \
+  prntbase.obj \
+  process.obj \
+  protocol.obj
+
+COMLIBOBJS3 = \
+  quantize.obj \
+  radiocmn.obj \
+  regex.obj \
+  resource.obj \
+  sckaddr.obj \
+  sckfile.obj \
+  sckipc.obj \
+  sckstrm.obj \
+  sizer.obj \
+  socket.obj \
+  statbar.obj \
+  strconv.obj \
+  stream.obj \
+  string.obj \
+  sysopt.obj \
+  tbarbase.obj \
+  textbuf.obj \
+  textcmn.obj \
+  textfile.obj \
+  timercmn.obj \
+  tokenzr.obj \
+  toplvcmn.obj \
+  treebase.obj \
+  txtstrm.obj \
+  unzip.obj \
+  url.obj \
+  utilscmn.obj \
+  valgen.obj \
+  validate.obj \
+  valtext.obj \
+  variant.obj \
+  wfstream.obj \
+  wincmn.obj \
+  wxchar.obj \
+  wxexpr.obj \
+  xpmdecod.obj \
+  y_tab.obj \
+  zipstrm.obj \
+  zstream.obj
 
 OS2OBJS = \
   ..\os2\$D\accel.obj \
@@ -191,31 +465,42 @@ OS2OBJS = \
   ..\os2\$D\checklst.obj \
   ..\os2\$D\choice.obj \
   ..\os2\$D\clipbrd.obj \
+  ..\os2\$D\colour.obj \
+  ..\os2\$D\combobox.obj \
+  ..\os2\$D\control.obj \
+  ..\os2\$D\cursor.obj \
+  ..\os2\$D\data.obj \
+  ..\os2\$D\dataobj.obj \
+  ..\os2\$D\dc.obj \
+  ..\os2\$D\dcclient.obj \
+  ..\os2\$D\dcmemory.obj \
   ..\os2\$D\dcprint.obj \
   ..\os2\$D\dcscreen.obj \
-  ..\os2\$D\dde.obj \
   ..\os2\$D\dialog.obj \
-  ..\os2\$D\dib.obj \
-  ..\os2\$D\dibutils.obj \
-  ..\os2\$D\dirdlg.obj \
+  ..\os2\$D\dir.obj \
+  ..\os2\$D\dnd.obj \
   ..\os2\$D\filedlg.obj \
   ..\os2\$D\font.obj \
   ..\os2\$D\fontdlg.obj \
+  ..\os2\$D\fontenum.obj \
+  ..\os2\$D\fontutil.obj \
   ..\os2\$D\frame.obj \
   ..\os2\$D\gauge.obj \
+  ..\os2\$D\gdiimage.obj \
   ..\os2\$D\gdiobj.obj \
+  ..\os2\$D\gsocket.obj \
+  ..\os2\$D\gsockpm.obj \
   ..\os2\$D\helpwin.obj \
   ..\os2\$D\icon.obj \
   ..\os2\$D\iniconf.obj \
   ..\os2\$D\joystick.obj \
-  ..\os2\$D\imaglist.obj \
   ..\os2\$D\listbox.obj \
-  ..\os2\$D\listctrl.obj \
   ..\os2\$D\main.obj \
   ..\os2\$D\mdi.obj \
   ..\os2\$D\menu.obj \
   ..\os2\$D\menuitem.obj \
   ..\os2\$D\metafile.obj \
+  ..\os2\$D\mimetype.obj \
   ..\os2\$D\minifram.obj \
   ..\os2\$D\msgdlg.obj \
   ..\os2\$D\nativdlg.obj \
@@ -223,63 +508,169 @@ OS2OBJS = \
   ..\os2\$D\ownerdrw.obj \
   ..\os2\$D\palette.obj \
   ..\os2\$D\pen.obj \
-  ..\os2\$D\penwin.obj \
   ..\os2\$D\pnghand.obj \
-  ..\os2\$D\printdlg.obj \
-  ..\os2\$D\printwin.obj \
+  ..\os2\$D\print.obj \
   ..\os2\$D\radiobox.obj \
   ..\os2\$D\radiobut.obj \
   ..\os2\$D\region.obj \
-  ..\os2\$D\registry.obj \
-  ..\os2\$D\regconf.obj \
   ..\os2\$D\scrolbar.obj \
   ..\os2\$D\settings.obj \
-  ..\os2\$D\slidrmsw.obj \
-  ..\os2\$D\slider95.obj \
+  ..\os2\$D\slider.obj \
   ..\os2\$D\spinbutt.obj \
+  ..\os2\$D\spinctrl.obj \
   ..\os2\$D\statbmp.obj \
   ..\os2\$D\statbox.obj \
-  ..\os2\$D\statusbr.obj \
+  ..\os2\$D\statline.obj \
   ..\os2\$D\stattext.obj \
   ..\os2\$D\tabctrl.obj \
   ..\os2\$D\taskbar.obj \
-  ..\os2\$D\tbarmsw.obj \
   ..\os2\$D\textctrl.obj \
   ..\os2\$D\thread.obj \
   ..\os2\$D\timer.obj \
   ..\os2\$D\toolbar.obj \
   ..\os2\$D\tooltip.obj \
-  ..\os2\$D\treectrl.obj \
+  ..\os2\$D\toplevel.obj \
   ..\os2\$D\utils.obj \
   ..\os2\$D\utilsexc.obj \
   ..\os2\$D\wave.obj \
   ..\os2\$D\window.obj \
-  ..\os2\$D\xpmhand.obj \
+  ..\os2\$D\xpmhand.obj
+
+OS2LIBOBJS1 = \
+  accel.obj \
+  app.obj \
+  bitmap.obj \
+  bmpbuttn.obj \
+  brush.obj \
+  button.obj \
+  checkbox.obj \
+  checklst.obj \
+  choice.obj \
+  clipbrd.obj \
+  colour.obj \
+  combobox.obj \
+  control.obj \
+  cursor.obj \
+  data.obj \
+  dataobj.obj \
+  dc.obj \
+  dcclient.obj \
+  dcmemory.obj \
+  dcprint.obj \
+  dcscreen.obj \
+  dialog.obj \
+  dir.obj \
+  dnd.obj \
+  filedlg.obj \
+  font.obj \
+  fontdlg.obj \
+  fontenum.obj \
+  fontutil.obj \
+  frame.obj \
+  gauge.obj \
+  gdiimage.obj \
+  gdiobj.obj \
+  gsocket.obj \
+  gsockpm.obj \
+  helpwin.obj \
+  icon.obj \
+  iniconf.obj \
+  joystick.obj \
+  listbox.obj \
+  main.obj \
+  mdi.obj \
+  menu.obj \
+  menuitem.obj \
+  metafile.obj
+
+OS2LIBOBJS2 = \
+  mimetype.obj \
+  minifram.obj \
+  msgdlg.obj \
+  nativdlg.obj \
+  notebook.obj \
+  ownerdrw.obj \
+  palette.obj \
+  pen.obj \
+  pnghand.obj \
+  print.obj \
+  radiobox.obj \
+  radiobut.obj \
+  region.obj \
+  scrolbar.obj \
+  settings.obj \
+  slider.obj \
+  spinbutt.obj \
+  spinctrl.obj \
+  statbmp.obj \
+  statbox.obj \
+  stattext.obj \
+  statline.obj \
+  tabctrl.obj \
+  taskbar.obj \
+  textctrl.obj \
+  thread.obj \
+  timer.obj \
+  toolbar.obj \
+  tooltip.obj \
+  toplevel.obj \
+  utils.obj \
+  utilsexc.obj \
+  wave.obj \
+  window.obj \
+  xpmhand.obj
 
 HTMLOBJS = \
+  ..\html\$D\helpctrl.obj \
+  ..\html\$D\helpdata.obj \
+  ..\html\$D\helpfrm.obj \
   ..\html\$D\htmlcell.obj \
-  ..\html\$D\htmlfilter.obj \
-  ..\html\$D\htmlhelp.obj \
-  ..\html\$D\htmlhelp_io.obj \
-  ..\html\$D\htmlparser.obj \
+  ..\html\$D\htmlfilt.obj \
+  ..\html\$D\htmlpars.obj \
   ..\html\$D\htmltag.obj \
   ..\html\$D\htmlwin.obj \
-  ..\html\$D\htmlwinparser.obj \
-  ..\html\$D\mod_fonts.obj \
-  ..\html\$D\mod_hline.obj \
-  ..\html\$D\mod_image.obj \
-  ..\html\$D\mod_layout.obj \
-  ..\html\$D\mod_links.obj \
-  ..\html\$D\mod_list.obj \
-  ..\html\$D\mod_pre.obj \
-  ..\html\$D\mod_tables.obj \
-  ..\html\$D\search.obj
+  ..\html\$D\htmprint.obj \
+  ..\html\$D\m_dflist.obj \
+  ..\html\$D\m_fonts.obj \
+  ..\html\$D\m_hline.obj \
+  ..\html\$D\m_image.obj \
+  ..\html\$D\m_layout.obj \
+  ..\html\$D\m_links.obj \
+  ..\html\$D\m_list.obj \
+  ..\html\$D\m_meta.obj \
+  ..\html\$D\m_pre.obj \
+  ..\html\$D\m_style.obj \
+  ..\html\$D\m_tables.obj \
+  ..\html\$D\winpars.obj
+
+HTMLLIBOBJS = \
+  helpctrl.obj \
+  helpdata.obj \
+  helpfrm.obj \
+  htmlcell.obj \
+  htmlfilt.obj \
+  htmlpars.obj \
+  htmltag.obj \
+  htmlwin.obj \
+  htmprint.obj \
+  m_dflist.obj \
+  m_fonts.obj \
+  m_hline.obj \
+  m_image.obj \
+  m_layout.obj \
+  m_links.obj \
+  m_list.obj \
+  m_meta.obj \
+  m_pre.obj \
+  m_style.obj \
+  m_tables.obj \
+  winpars.obj
 
 # Add $(NONESSENTIALOBJS) if wanting generic dialogs, PostScript etc.
-OBJECTS = $(COMMONOBJS) $(GENERICOBJS) $(NONESSENTIALOBJS) $(OS2OBJS)
+OBJECTS = $(COMMONOBJS) $(GENERICOBJS) $(HTMLOBJS) $(NONESSENTIALOBJS) $(OS2OBJS)
 
 # Normal, static library
-all:    $(OBJECTS) $(PERIPH_TARGET) $(LIBTARGET)
+all:  $(WXDIR)\include\wx\setup.h $(DUMMYOBJ) $(OBJECTS) $(PERIPH_TARGET) zlib png jpeg xpm tiff $(LIBTARGET)
 
 dirs: $(OS2DIR)\$D $(COMMDIR)\$D $(GENDIR)\$D $(HTMLDIR)\$D
 
@@ -287,20 +678,300 @@ dirs: $(OS2DIR)\$D $(COMMDIR)\$D $(GENDIR)\$D $(HTMLDIR)\$D
 test:   $(OS2DIR)\$D\wave.obj
 test2:  ..\common\Debug\config.obj
 
-$D:
-    md $D
+# If taking wxWindows from CVS, setup.h doesn't exist yet.
+$(WXDIR)\include\wx\os2\setup.h: $(WXDIR)\include\wx\os2\setup0.h
+    copy "$(WXDIR)"\include\wx\os2\setup0.h "$(WXDIR)"\include\wx\os2\setup.h
 
-$(COMMDIR)\$D:
-    md $(COMMDIR)\$D
+$(WXDIR)\include\wx\setup.h: $(WXDIR)\include\wx\os2\setup.h
+    copy "$(WXDIR)"\include\wx\os2\setup.h "$(WXDIR)"\include\wx\setup.h
 
-$(OS2DIR)\$D:
-    md $(OS2DIR)\$D
+$D\dummy.obj: dummy.$(SRCSUFF) $(WXDIR)\include\wx\wx.h $(WXDIR)\include\wx\os2\setup.h
+        icc $(CPPFLAGS) $(MAKEPRECOMP) /Fo$D\dummy.obj /Tp dummy.cpp
 
-$(GENDIR)\$D:
-    md $(GENDIR)\$D
+$D\dummydll.obj: dummydll.$(SRCSUFF) $(WXDIR)\include\wx\wx.h $(WXDIR)\include\wx\os2\setup.h
+        icc $(CPPFLAGS) $(MAKEPRECOMP) /Fo$D\dummydll.obj /Tp dummydll.cpp
+
+$(COMLIBOBJS1):
+  copy ..\common\$D\appcmn.obj
+  copy ..\common\$D\choiccmn.obj
+  copy ..\common\$D\clipcmn.obj
+  copy ..\common\$D\clntdata.obj
+  copy ..\common\$D\cmdline.obj
+  copy ..\common\$D\cmndata.obj
+  copy ..\common\$D\cmdproc.obj
+  copy ..\common\$D\config.obj
+  copy ..\common\$D\containr.obj
+  copy ..\common\$D\cshelp.obj
+  copy ..\common\$D\ctrlcmn.obj
+  copy ..\common\$D\ctrlsub.obj
+  copy ..\common\$D\datetime.obj
+  copy ..\common\$D\datstrm.obj
+  copy ..\common\$D\db.obj
+  copy ..\common\$D\dbgrid.obj
+  copy ..\common\$D\dbtable.obj
+  copy ..\common\$D\dcbase.obj
+  copy ..\common\$D\dlgcmn.obj
+  copy ..\common\$D\dircmn.obj
+  copy ..\common\$D\dndcmn.obj
+  copy ..\common\$D\dobjcmn.obj
+  copy ..\common\$D\docmdi.obj
+  copy ..\common\$D\docview.obj
+  copy ..\common\$D\dseldlg.obj
+  copy ..\common\$D\dynarray.obj
+  copy ..\common\$D\dynlib.obj
+  copy ..\common\$D\dynload.obj
+  copy ..\common\$D\effects.obj
+  copy ..\common\$D\encconv.obj
+  copy ..\common\$D\event.obj
+  copy ..\common\$D\extended.obj
+  copy ..\common\$D\fddlgcmn.obj
+  copy ..\common\$D\ffile.obj
+  copy ..\common\$D\file.obj
+  copy ..\common\$D\fileconf.obj
+  copy ..\common\$D\filefn.obj
+  copy ..\common\$D\filename.obj
+  copy ..\common\$D\filesys.obj
+  copy ..\common\$D\fontcmn.obj
+  copy ..\common\$D\fontmap.obj
+  copy ..\common\$D\framecmn.obj
+  copy ..\common\$D\fs_inet.obj
+
+$(COMLIBOBJS2):
+  copy ..\common\$D\fs_mem.obj
+  copy ..\common\$D\fs_zip.obj
+  copy ..\common\$D\ftp.obj
+  copy ..\common\$D\gaugecmn.obj
+  copy ..\common\$D\gdicmn.obj
+  copy ..\common\$D\geometry.obj
+  copy ..\common\$D\gifdecod.obj
+  copy ..\common\$D\hash.obj
+  copy ..\common\$D\helpbase.obj
+  copy ..\common\$D\http.obj
+  copy ..\common\$D\imagall.obj
+  copy ..\common\$D\imagbmp.obj
+  copy ..\common\$D\image.obj
+  copy ..\common\$D\imaggif.obj
+  copy ..\common\$D\imagiff.obj
+  copy ..\common\$D\imagjpeg.obj
+  copy ..\common\$D\imagpcx.obj
+  copy ..\common\$D\imagpng.obj
+  copy ..\common\$D\imagpnm.obj
+  copy ..\common\$D\imagtiff.obj
+  copy ..\common\$D\imagxpm.obj
+  copy ..\common\$D\intl.obj
+  copy ..\common\$D\ipcbase.obj
+  copy ..\common\$D\layout.obj
+  copy ..\common\$D\lboxcmn.obj
+  copy ..\common\$D\list.obj
+  copy ..\common\$D\log.obj
+  copy ..\common\$D\longlong.obj
+  copy ..\common\$D\matrix.obj
+  copy ..\common\$D\memory.obj
+  copy ..\common\$D\menucmn.obj
+  copy ..\common\$D\mimecmn.obj
+  copy ..\common\$D\module.obj
+  copy ..\common\$D\mstream.obj
+  copy ..\common\$D\nbkbase.obj
+  copy ..\common\$D\object.obj
+  copy ..\common\$D\odbc.obj
+  copy ..\common\$D\paper.obj
+  copy ..\common\$D\popupcmn.obj
+  copy ..\common\$D\prntbase.obj
+  copy ..\common\$D\process.obj
+  copy ..\common\$D\protocol.obj
+
+$(COMLIBOBJS3):
+  copy ..\common\$D\quantize.obj
+  copy ..\common\$D\radiocmn.obj
+  copy ..\common\$D\regex.obj
+  copy ..\common\$D\resource.obj
+  copy ..\common\$D\sckaddr.obj
+  copy ..\common\$D\sckfile.obj
+  copy ..\common\$D\sckipc.obj
+  copy ..\common\$D\sckstrm.obj
+  copy ..\common\$D\sizer.obj
+  copy ..\common\$D\socket.obj
+  copy ..\common\$D\statbar.obj
+  copy ..\common\$D\strconv.obj
+  copy ..\common\$D\stream.obj
+  copy ..\common\$D\string.obj
+  copy ..\common\$D\sysopt.obj
+  copy ..\common\$D\tbarbase.obj
+  copy ..\common\$D\textbuf.obj
+  copy ..\common\$D\textcmn.obj
+  copy ..\common\$D\textfile.obj
+  copy ..\common\$D\timercmn.obj
+  copy ..\common\$D\tokenzr.obj
+  copy ..\common\$D\toplvcmn.obj
+  copy ..\common\$D\treebase.obj
+  copy ..\common\$D\txtstrm.obj
+  copy ..\common\$D\unzip.obj
+  copy ..\common\$D\url.obj
+  copy ..\common\$D\utilscmn.obj
+  copy ..\common\$D\valgen.obj
+  copy ..\common\$D\validate.obj
+  copy ..\common\$D\valtext.obj
+  copy ..\common\$D\variant.obj
+  copy ..\common\$D\wfstream.obj
+  copy ..\common\$D\wincmn.obj
+  copy ..\common\$D\wxchar.obj
+  copy ..\common\$D\wxexpr.obj
+  copy ..\common\$D\xpmdecod.obj
+  copy ..\common\$D\y_tab.obj
+  copy ..\common\$D\zipstrm.obj
+  copy ..\common\$D\zstream.obj
+
+$(GENLIBOBJS):
+  copy ..\generic\$D\busyinfo.obj
+  copy ..\generic\$D\calctrl.obj
+  copy ..\generic\$D\caret.obj
+  copy ..\generic\$D\choicdgg.obj
+  copy ..\generic\$D\colrdlgg.obj
+  copy ..\generic\$D\dragimgg.obj
+  copy ..\generic\$D\dcpsg.obj
+  copy ..\generic\$D\dirdlgg.obj
+  copy ..\generic\$D\dirctrlg.obj
+  copy ..\generic\$D\fontdlgg.obj
+  copy ..\generic\$D\fdrepdlg.obj
+  copy ..\generic\$D\grid.obj
+  copy ..\generic\$D\gridctrl.obj
+  copy ..\generic\$D\gridsel.obj
+  copy ..\generic\$D\helpext.obj
+  copy ..\generic\$D\helphtml.obj
+  copy ..\generic\$D\helpwxht.obj
+  copy ..\generic\$D\helpxlp.obj
+  copy ..\generic\$D\imaglist.obj
+  copy ..\generic\$D\laywin.obj
+  copy ..\generic\$D\listctrl.obj
+  copy ..\generic\$D\logg.obj
+  copy ..\generic\$D\numdlgg.obj
+  copy ..\generic\$D\panelg.obj
+  copy ..\generic\$D\printps.obj
+  copy ..\generic\$D\prntdlgg.obj
+  copy ..\generic\$D\progdlgg.obj
+  copy ..\generic\$D\prop.obj
+  copy ..\generic\$D\propform.obj
+  copy ..\generic\$D\proplist.obj
+  copy ..\generic\$D\sashwin.obj
+  copy ..\generic\$D\scrlwing.obj
+  copy ..\generic\$D\spinctlg.obj
+  copy ..\generic\$D\splitter.obj
+  copy ..\generic\$D\statusbr.obj
+  copy ..\generic\$D\tabg.obj
+  copy ..\generic\$D\tbarsmpl.obj
+  copy ..\generic\$D\textdlgg.obj
+  copy ..\generic\$D\tipdlg.obj
+  copy ..\generic\$D\tipwin.obj
+  copy ..\generic\$D\treectlg.obj
+  copy ..\generic\$D\treelay.obj
+  copy ..\generic\$D\wizard.obj
 
-$(HTMLDIR)\$D:
-    md $(HTMLDIR)\$D
+$(HTMLLIBOBJS):
+  copy ..\html\$D\helpctrl.obj
+  copy ..\html\$D\helpdata.obj
+  copy ..\html\$D\helpfrm.obj
+  copy ..\html\$D\htmlcell.obj
+  copy ..\html\$D\htmlfilt.obj
+  copy ..\html\$D\htmlpars.obj
+  copy ..\html\$D\htmltag.obj
+  copy ..\html\$D\htmlwin.obj
+  copy ..\html\$D\htmprint.obj
+  copy ..\html\$D\m_dflist.obj
+  copy ..\html\$D\m_fonts.obj
+  copy ..\html\$D\m_hline.obj
+  copy ..\html\$D\m_image.obj
+  copy ..\html\$D\m_layout.obj
+  copy ..\html\$D\m_links.obj
+  copy ..\html\$D\m_list.obj
+  copy ..\html\$D\m_meta.obj
+  copy ..\html\$D\m_pre.obj
+  copy ..\html\$D\m_style.obj
+  copy ..\html\$D\m_tables.obj
+  copy ..\html\$D\winpars.obj
+
+$(OS2LIBOBJS1):
+  copy ..\os2\$D\accel.obj
+  copy ..\os2\$D\app.obj
+  copy ..\os2\$D\bitmap.obj
+  copy ..\os2\$D\bmpbuttn.obj
+  copy ..\os2\$D\brush.obj
+  copy ..\os2\$D\button.obj
+  copy ..\os2\$D\checkbox.obj
+  copy ..\os2\$D\checklst.obj
+  copy ..\os2\$D\choice.obj
+  copy ..\os2\$D\clipbrd.obj
+  copy ..\os2\$D\colour.obj
+  copy ..\os2\$D\combobox.obj
+  copy ..\os2\$D\control.obj
+  copy ..\os2\$D\cursor.obj
+  copy ..\os2\$D\data.obj
+  copy ..\os2\$D\dataobj.obj
+  copy ..\os2\$D\dc.obj
+  copy ..\os2\$D\dcclient.obj
+  copy ..\os2\$D\dcmemory.obj
+  copy ..\os2\$D\dcprint.obj
+  copy ..\os2\$D\dcscreen.obj
+  copy ..\os2\$D\dialog.obj
+  copy ..\os2\$D\dir.obj
+  copy ..\os2\$D\dnd.obj
+  copy ..\os2\$D\filedlg.obj
+  copy ..\os2\$D\font.obj
+  copy ..\os2\$D\fontdlg.obj
+  copy ..\os2\$D\fontenum.obj
+  copy ..\os2\$D\fontutil.obj
+  copy ..\os2\$D\frame.obj
+  copy ..\os2\$D\gauge.obj
+  copy ..\os2\$D\gdiimage.obj
+  copy ..\os2\$D\gdiobj.obj
+  copy ..\os2\$D\gsocket.obj
+  copy ..\os2\$D\gsockpm.obj
+  copy ..\os2\$D\helpwin.obj
+  copy ..\os2\$D\icon.obj
+  copy ..\os2\$D\iniconf.obj
+  copy ..\os2\$D\joystick.obj
+  copy ..\os2\$D\listbox.obj
+  copy ..\os2\$D\main.obj
+  copy ..\os2\$D\mdi.obj
+  copy ..\os2\$D\menu.obj
+  copy ..\os2\$D\menuitem.obj
+  copy ..\os2\$D\metafile.obj
+
+$(OS2LIBOBJS2):
+  copy ..\os2\$D\mimetype.obj
+  copy ..\os2\$D\minifram.obj
+  copy ..\os2\$D\msgdlg.obj
+  copy ..\os2\$D\nativdlg.obj
+  copy ..\os2\$D\notebook.obj
+  copy ..\os2\$D\ownerdrw.obj
+  copy ..\os2\$D\palette.obj
+  copy ..\os2\$D\pen.obj
+  copy ..\os2\$D\pnghand.obj
+  copy ..\os2\$D\print.obj
+  copy ..\os2\$D\radiobox.obj
+  copy ..\os2\$D\radiobut.obj
+  copy ..\os2\$D\region.obj
+  copy ..\os2\$D\scrolbar.obj
+  copy ..\os2\$D\settings.obj
+  copy ..\os2\$D\slider.obj
+  copy ..\os2\$D\spinbutt.obj
+  copy ..\os2\$D\spinctrl.obj
+  copy ..\os2\$D\statbmp.obj
+  copy ..\os2\$D\statbox.obj
+  copy ..\os2\$D\statline.obj
+  copy ..\os2\$D\stattext.obj
+  copy ..\os2\$D\tabctrl.obj
+  copy ..\os2\$D\taskbar.obj
+  copy ..\os2\$D\textctrl.obj
+  copy ..\os2\$D\thread.obj
+  copy ..\os2\$D\timer.obj
+  copy ..\os2\$D\toolbar.obj
+  copy ..\os2\$D\tooltip.obj
+  copy ..\os2\$D\toplevel.obj
+  copy ..\os2\$D\utils.obj
+  copy ..\os2\$D\utilsexc.obj
+  copy ..\os2\$D\wave.obj
+  copy ..\os2\$D\window.obj
+  copy ..\os2\$D\xpmhand.obj
 
 # wxWindows library as DLL
 dll:
@@ -337,42 +1008,103 @@ pch1:   dirs $(DUMMYOBJ)
 
 ### Static library
 
-$(WXDIR)\lib\wx.lib: $D\dummy.obj $(OBJECTS) $(PERIPH_LIBS)
- del $(LIBTARGET)
- ilib $(LINKFLAGS) $@ @<<
-    $**
+$(WXDIR)\lib\wxcom1.lib: $(COMLIBOBJS1)
+ -touch $(WXDIR)\lib\wxcom1.lib
+ -del $(WXDIR)\lib\wxcom1.lib
+ ilib $(LIBFLAGS) $@ @<<
+    $**;
 <<
 
-!else
+$(WXDIR)\lib\wxcom2.lib: $(COMLIBOBJS2)
+ -touch $(WXDIR)\lib\wxcom2.lib
+ -del $(WXDIR)\lib\wxcom2.lib
+ ilib $(LIBFLAGS) $@ @<<
+    $**;
+<<
 
-# Update the import library
-$(WXDIR)\lib\wx200.lib: $(OBJECTS)
-    implib $(WXDIR)\lib\wx200.lib $(WXDIR)\lib\wx200.def
+$(WXDIR)\lib\wxcom3.lib: $(COMLIBOBJS3)
+ -touch $(WXDIR)\lib\wxcom3.lib
+ -del $(WXDIR)\lib\wxcom3.lib
+ ilib $(LIBFLAGS) $@ @<<
+    $**;
+<<
+
+$(WXDIR)\lib\wxgen.lib: $(GENLIBOBJS)
+ -touch $(WXDIR)\lib\wxgen.lib
+ -del $(WXDIR)\lib\wxgen.lib
+ ilib $(LIBFLAGS) $@ @<<
+    $**;
+<<
+
+$(WXDIR)\lib\wxhtml.lib: $(HTMLLIBOBJS)
+ -touch $(WXDIR)\lib\wxhtml.lib
+ -del $(WXDIR)\lib\wxhtml.lib
+ ilib $(LIBFLAGS) $@ @<<
+    $**;
+<<
+
+$(WXDIR)\lib\wxnones.lib: $(NONESSENTIALOBJS)
+ -touch $(WXDIR)\lib\wxnones.lib
+ -del $(WXDIR)\lib\wxnones.lib
+ ilib $(LIBFLAGS) $@ @<<
+    $**;
+<<
+
+$(WXDIR)\lib\wxos21.lib: $(OS2LIBOBJS1)
+ -touch $(WXDIR)\lib\wxos21.lib
+ -del $(WXDIR)\lib\wxos21.lib
+ ilib $(LIBFLAGS) $@ @<<
+    $**;
+<<
+
+$(WXDIR)\lib\wxos22.lib: $(OS2LIBOBJS2)
+ -touch $(WXDIR)\lib\wxos22.lib
+ -del $(WXDIR)\lib\wxos22.lib
+ ilib $(LIBFLAGS) $@ @<<
+    $**;
+<<
+ del *.obj
+
+$(WXDIR)\lib\wx.lib: \
+  $D\dummy.obj \
+  $(COMTEMPTGT1) \
+  $(COMTEMPTGT2) \
+  $(COMTEMPTGT3) \
+  $(GENTEMPTGT) \
+  $(HTMLTEMPTGT) \
+  $(NONESTEMPTGT) \
+  $(OS2TEMPTGT1) \
+  $(OS2TEMPTGT2) \
+  $(PERIPH_LIBS)
+ -touch $(LIBTARGET)
+ -del $(LIBTARGET)
+ ilib $(LIBFLAGS) $@ @<<
+    $**;
+<<
+ del $(COMTEMPTGT1)
+ del $(COMTEMPTGT2)
+ del $(COMTEMPTGT3)
+ del $(GENTEMPTGT)
+ del $(HTMLTEMPTGT)
+ del $(NONESTEMPTGT)
+ del $(OS2TEMPTGT1)
+ del $(OS2TEMPTGT2)
+
+!else
 
 # Update the dynamic link library
-$(WXDIR)\lib\wx200.dll: $(OBJECTS) $(WXDIR)\lib\wx200.lib
+$(WXDIR)\lib\wx23.dll: $(OBJECTS)
     icc @<<
     /B" $(LINKFLAGS)" /Fe$@
     $(LIBS)
+    $(DUMMYOBJ)
     $(OBJECTS)
-    $(WXDIR)\lib\wx200.def
+    $(WXDIR)\src\os2\wx23.def
 <<
+    implib $(WXDIR)\lib\wx23.lib $(WXDIR)\src\os2\wx23.def
 
 !endif
 
-$D\dummy.obj: dummy.$(SRCSUFF) $(WXDIR)\include\wx\wx.h $(WXDIR)\include\wx\os2\setup.h
-        icc $(CPPFLAGS) $(MAKEPRECOMP) /Fo$D\dummy.obj /Tp dummy.cpp
-
-$D\dummydll.obj: dummydll.$(SRCSUFF) $(WXDIR)\include\wx\wx.h $(WXDIR)\include\wx\os2\setup.h
-        icc @<<
-$(CPPFLAGS) $(MAKEPRECOMP) /Fo$D\dummydll.obj /c /Tp dummydll.cpp
-<<
-
-# If taking wxWindows from CVS, setup.h doesn't exist yet.
-$(WXDIR)\include\wx\os2\setup.h: $(WXDIR)\include\wx\os2\setup0.h
-    copy "$(WXDIR)"\include\wx\os2\setup.h "$(WXDIR)"\include\wx\os2\setup.bak
-    copy "$(WXDIR)"\include\wx\os2\setup0.h "$(WXDIR)"\include\wx\os2\setup.h
-
 ..\common\$D\extended.obj:     ..\common\extended.c
         icc @<<
 $(CPPFLAGS2) /Fo$@ $(COMMDIR)\extended.c
@@ -396,19 +1128,72 @@ $(OBJECTS): $(WXDIR)/include/wx/setup.h
 $(CPPFLAGS2) /Fo$@ $(COMMDIR)\unzip.c
 <<
 
-clean: $(PERIPH_CLEAN_TARGET) clean_png clean_zlib clean_jpeg clean_xpm
-        -erase $(LIBTARGET)
-        -erase ..\..\lib\wx200.dll
-        -erase ..\..\lib\wx200.lib
-        -erase $(GENDIR)\$D\*.obj
-        -erase $(COMMDIR)\$D\*.obj
-        -erase $(COMMDIR)\\y_tab.c
-        -erase $(COMMDIR)\lex_yy.c
-        -erase $(OS2DIR)\$D\*.obj
-        -rmdir $(D)
-        -rmdir ole\$(D)
-        -rmdir ..\generic\$(D)
-        -rmdir ..\common\$(D)
+png:
+    cd $(WXDIR)\src\png
+    nmake -f makefile.va FINAL=$(FINAL) DLL=$(DLL) WXMAKINGDLL=$(WXMAKINGDLL)
+    cd $(WXDIR)\src\os2
+
+clean_png:
+    cd $(WXDIR)\src\png
+    nmake -f makefile.va clean
+    cd $(WXDIR)\src\os2
+
+zlib:
+    cd $(WXDIR)\src\zlib
+    nmake -f makefile.va FINAL=$(FINAL) DLL=$(DLL) WXMAKINGDLL=$(WXMAKINGDLL)
+    cd $(WXDIR)\src\os2
+
+clean_zlib:
+    cd $(WXDIR)\src\zlib
+    nmake -f makefile.va clean
+    cd $(WXDIR)\src\os2
+
+jpeg:
+    cd $(WXDIR)\src\jpeg
+    nmake -f makefile.va FINAL=$(FINAL) DLL=$(DLL) WXMAKINGDLL=$(WXMAKINGDLL)
+    cd $(WXDIR)\src\os2
+
+clean_jpeg:
+    cd $(WXDIR)\src\jpeg
+    nmake -f makefile.va clean
+    cd $(WXDIR)\src\os2
+
+xpm:
+    cd $(WXDIR)\src\xpm
+    nmake -f makefile.va FINAL=$(FINAL) DLL=$(DLL) WXMAKINGDLL=$(WXMAKINGDLL)
+    cd $(WXDIR)\src\os2
+
+clean_xpm:
+    cd $(WXDIR)\src\xpm
+    nmake -f makefile.va clean
+    cd $(WXDIR)\src\os2
+
+tiff:
+    cd $(WXDIR)\src\tiff
+    nmake -f makefile.va FINAL=$(FINAL) DLL=$(DLL) WXMAKINGDLL=$(WXMAKINGDLL)
+    cd $(WXDIR)\src\os2
+
+clean_tiff:
+    cd $(WXDIR)\src\tiff
+    nmake -f makefile.va clean
+    cd $(WXDIR)\src\os2
+
+clean:  $(PERIPH_CLEAN_TARGET) clean_png clean_zlib clean_jpeg clean_xpm clean_tiff
+        erase /N $(GENDIR)\$D\*.obj
+        erase /N $(COMMDIR)\$D\*.obj
+        erase /N $(HTMLDIR)\$D\*.obj
+        erase /N $(OS2DIR)\$D\*.obj
+        rd       $(D)
+        rd      ..\generic\$D
+        rd      ..\common\$D
+        rd      ..\html\$D
+        rd      ..\os2\$D
+        del      $(LIBTARGET)
+!if "$(WXMAKINGDLL)" == "1"
+        erase /N ..\..\lib\wx23.lib
+!endif
+        erase /N $(COMMDIR)\y_tab.c
+        erase /N $(COMMDIR)\lex_yy.c
 
 cleanall: clean