From f2071dda0b6016afed8777a4dd23f0ada537026b Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Wed, 14 Jul 1999 22:46:12 +0000 Subject: [PATCH] the template files for generating all MSW makefiles with tmake and the (one and only one) file containing the list of all wxWindows sources. git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3003 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- distrib/msw/tmake/b32.t | 324 +++++++++++++++++ distrib/msw/tmake/bcc.t | 299 ++++++++++++++++ distrib/msw/tmake/dos.t | 255 ++++++++++++++ distrib/msw/tmake/filelist.t | 52 +++ distrib/msw/tmake/filelist.txt | 228 ++++++++++++ distrib/msw/tmake/g95.t | 187 ++++++++++ distrib/msw/tmake/makeall.bat | 53 +++ distrib/msw/tmake/sc.t | 114 ++++++ distrib/msw/tmake/vc.t | 625 +++++++++++++++++++++++++++++++++ distrib/msw/tmake/vc6.t | 146 ++++++++ distrib/msw/tmake/wat.t | 321 +++++++++++++++++ 11 files changed, 2604 insertions(+) create mode 100644 distrib/msw/tmake/b32.t create mode 100644 distrib/msw/tmake/bcc.t create mode 100644 distrib/msw/tmake/dos.t create mode 100644 distrib/msw/tmake/filelist.t create mode 100644 distrib/msw/tmake/filelist.txt create mode 100644 distrib/msw/tmake/g95.t create mode 100755 distrib/msw/tmake/makeall.bat create mode 100644 distrib/msw/tmake/sc.t create mode 100644 distrib/msw/tmake/vc.t create mode 100644 distrib/msw/tmake/vc6.t create mode 100644 distrib/msw/tmake/wat.t diff --git a/distrib/msw/tmake/b32.t b/distrib/msw/tmake/b32.t new file mode 100644 index 0000000000..d63783965c --- /dev/null +++ b/distrib/msw/tmake/b32.t @@ -0,0 +1,324 @@ +#!############################################################################# +#! File: b32.t +#! Purpose: tmake template file from which makefile.b32 is generated by running +#! tmake -t b32 wxwin.pro +#! Author: Vadim Zeitlin +#! Created: 14.07.99 +#! Version: $Id$ +#!############################################################################# + +#${ + #! include the code which parses filelist.txt file and initializes + #! %wxCommon, %wxGeneric and %wxMSW hashes. + IncludeTemplate("filelist.t"); + + #! now transform these hashes into $project tags + foreach $file (sort keys %wxGeneric) { + my $tag = ""; + if ( $wxGeneric{$file} =~ /\b(G|16|U)\b/ ) { + next; + } + + $file =~ s/cp?p?$/obj/; + $project{"WXGENERICOBJS"} .= "\$(MSWDIR)\\" . $file . " " + } + + foreach $file (sort keys %wxCommon) { + $file =~ s/cp?p?$/obj/; + $project{"WXCOMMONOBJS"} .= "\$(MSWDIR)\\" . $file . " " + } + + foreach $file (sort keys %wxMSW) { + next if $wxMSW{$file} =~ /\b16\b/; + + if ( file =~ /automtn/ ) { + #! comment in old makefile.b32 seems to imply that this file can't + #! be compiled with Borland (leads to crash in oleauto sample) + next; + } + + $file =~ s/cp?p?$/obj/; + $project{"WXMSWOBJS"} .= "\$(MSWDIR)\\" . $file . " " + } +#$} + +# This file was automatically generated by tmake at #$ Now() +# DO NOT CHANGE THIS FILE, YOUR CHANGES WILL BE LOST! CHANGE B32.T! + +# +# File: makefile.b32 +# Author: Julian Smart +# Created: 1998 +# Updated: +# Copyright: +# +# "%W% %G%" +# +# Makefile : Builds wxWindows library wx.lib for MS Windows, +# and Borland C++ (32-bit). + +!if "$(BCCDIR)" == "" +!error You must define the BCCDIR variable in autoexec.bat, e.g. BCCDIR=d:\bc4 +!endif + +!if "$(WXWIN)" == "" +!error You must define the WXWIN variable in autoexec.bat, e.g. WXWIN=c:\wx +!endif + +WXDIR = $(WXWIN) + +# Set all these to 1 if you want to build a dynamic library +!if "$(DLL)" == "1" +WXMAKINGDLL=1 +WXBUILDDLL=1 +!endif + +!include $(WXDIR)\src\makeb32.env + +# Please set these according to the settings in wx_setup.h, so we can include +# the appropriate libraries in wx.lib +USE_CTL3D=0 +USE_XPM_IN_MSW=0 + +PERIPH_LIBS= +PERIPH_TARGET= +PERIPH_CLEAN_TARGET= + +!if "$(USE_CTL3D)" == "1" +#Use WIN32S/WIN95 32 bit version ctl3d32.dll under win95 (Andre Beltman) +PERIPH_LIBS=$(WXDIR)\lib\ctl3d32.lib $(PERIPH_LIBS) +PERIPH_TARGET=ctl3d $(PERIPH_TARGET) +PERIPH_CLEAN_TARGET=clean_ctl3d $(PERIPH_CLEAN_TARGET) +!endif + +!if "$(USE_XPM_IN_MSW)" == "1" +PERIPH_LIBS=$(WXLIB)\xpm.lib $(PERIPH_LIBS) +PERIPH_TARGET=xpm $(PERIPH_TARGET) +PERIPH_CLEAN_TARGET=clean_xpm $(PERIPH_CLEAN_TARGET) +!endif + +#PERIPH_LIBS=$(WXDIR)\lib\zlib.lib $(WXDIR)\lib\winpng.lib $(WXDIR)\lib\jpeg.lib $(PERIPH_LIBS) +PERIPH_LIBS= +PERIPH_TARGET=zlib png jpeg $(PERIPH_TARGET) +PERIPH_CLEAN_TARGET=clean_zlib clean_png clean_jpeg $(PERIPH_CLEAN_TARGET) + +!if "$(DLL)" == "0" +DUMMY=dummy +!else +DUMMY=dummydll +LIBS= cw32 import32 ole2w32 +!endif + +LIBTARGET=$(WXLIB) + +GENDIR=..\generic +COMMDIR=..\common +OLEDIR=.\ole +MSWDIR=. + +DOCDIR = $(WXDIR)\docs + +GENERICOBJS= #$ ExpandList("WXGENERICOBJS"); + +# Not needed: +# $(MSWDIR)\colrdlgg.obj \ +# $(MSWDIR)\fontdlgg.obj \ +# $(MSWDIR)\helpxlp.obj \ +# $(MSWDIR)\msgdlgg.obj \ +# $(MSWDIR)\printps.obj \ +# $(MSWDIR)\prntdlgg.obj \ +# $(MSWDIR)\listctrl.obj \ +# $(MSWDIR)\notebook.obj \ +# $(MSWDIR)\treectrl.obj + +COMMONOBJS = \ + $(MSWDIR)\y_tab.obj \ + #$ ExpandList("WXCOMMONOBJS"); + +MSWOBJS = #$ ExpandList("WXMSWOBJS"); + +OBJECTS = $(COMMONOBJS) $(GENERICOBJS) $(MSWOBJS) + +default: wx + +wx: $(CFG) $(DUMMY).obj $(OBJECTS) $(PERIPH_TARGET) $(LIBTARGET) + +all: all_libs all_execs + +!if "$(DLL)" == "0" + +$(LIBTARGET): $(DUMMY).obj $(OBJECTS) + -erase $(LIBTARGET) + tlib $(LIBTARGET) /P512 @&&! ++$(OBJECTS:.obj =.obj +) +$(PERIPH_LIBS:.lib =.lib +) +! + +!else + +$(LIBTARGET): $(DUMMY).obj $(OBJECTS) + -erase $(LIBTARGET) + -erase $(WXLIBDIR)\wx.dll + tlink32 $(LINK_FLAGS) /v @&&! +c0d32.obj $(OBJECTS) +$(WXLIBDIR)\wx +nul +$(PERIPH_LIBS) $(LIBS) +wxb32 +! + implib -c $(LIBTARGET) $(WXLIBDIR)\wx.dll + +!endif + +dummy.obj: dummy.$(SRCSUFF) $(LOCALHEADERS) $(BASEHEADERS) $(WXDIR)\include\wx\wx.h +dummydll.obj: dummydll.$(SRCSUFF) $(LOCALHEADERS) $(BASEHEADERS) $(WXDIR)\include\wx\wx.h + +$(MSWDIR)\y_tab.obj: $(COMMDIR)\y_tab.c $(COMMDIR)\lex_yy.c + +# cl @<< +# $(CPPFLAGS2) /c $*.c -DUSE_DEFINE -DYY_USE_PROTOS /Fo$@ +# << + +$(COMMDIR)\y_tab.c: $(COMMDIR)\dosyacc.c + copy $(COMMDIR)\dosyacc.c $(COMMDIR)\y_tab.c + +$(COMMDIR)\lex_yy.c: $(COMMDIR)\doslex.c + copy $(COMMDIR)\doslex.c $(COMMDIR)\lex_yy.c + +# $(OBJECTS): $(WXDIR)\include\wx\setup.h + +#${ + $_ = $project{"WXMSWOBJS"}; + my @objs = split; + foreach (@objs) { + $text .= $_ . ": "; + s/obj$/\$(SRCSUFF)/; + $text .= $_ . "\n\n"; + } +#$} + +######################################################## +# Common objects (always compiled) + +#${ + $_ = $project{"WXCOMMONOBJS"}; + my @objs = split; + foreach (@objs) { + $text .= $_ . ": "; + s/MSWDIR/COMMDIR/; + s/obj$/\$(SRCSUFF)/; + $text .= $_ . "\n\n"; + } +#$} + +######################################################## +# Generic objects (not always compiled, depending on +# whether platforms have native implementations) + +#${ + $_ = $project{"WXGENERICOBJS"}; + my @objs = split; + foreach (@objs) { + $text .= $_ . ": "; + s/MSWDIR/GENDIR/; + s/obj$/\$(SRCSUFF)/; + $text .= $_ . "\n\n"; + } +#$} + + +all_utils: + cd $(WXDIR)\utils + make -f makefile.b32 + cd $(WXDIR)\src\msw + +all_samples: + cd $(WXDIR)\samples + make -f makefile.b32 + cd $(WXDIR)\src\msw + +all_execs: + cd $(WXDIR)\utils + make -f makefile.b32 all_execs + cd $(WXDIR)\src\msw + +wxxpm: $(CFG) + cd $(WXDIR)\src\xpm + make -f makefile.b32 -DCFG=$(CFG) -DFINAL=$(FINAL) -DWXWIN=$(WXDIR) -DDEBUG=$(DEBUG) + cd $(WXDIR)\src\msw + +clean_wxxpm: $(CFG) + cd $(WXDIR)\src\xpm + make -f makefile.b32 clean + cd $(WXDIR)\src\msw + +png: $(CFG) + cd $(WXDIR)\src\png + make -f makefile.b32 + cd $(WXDIR)\src\msw + +clean_png: + cd $(WXDIR)\src\png + make -f makefile.b32 clean + cd $(WXDIR)\src\msw + +zlib: $(CFG) + cd $(WXDIR)\src\zlib + make -f makefile.b32 lib + cd $(WXDIR)\src\msw + +clean_zlib: + cd $(WXDIR)\src\zlib + make -f makefile.b32 clean + cd $(WXDIR)\src\msw + +jpeg: $(CFG) + cd $(WXDIR)\src\jpeg + make -f makefile.b32 + cd $(WXDIR)\src\msw + +clean_jpeg: + cd $(WXDIR)\src\jpeg + make -f makefile.b32 clean + cd $(WXDIR)\src\msw + +$(CFG): makefile.b32 + copy &&! +-H=$(WXDIR)\src\msw\wx32.csm +-3 +-d +-R- +-X +-w-par +-w-aus +-w-hid # virtual function A hides virtual function B +-WE +-tWM + +-I$(WXINC);$(BCCDIR)\include;$(WXDIR)/src/png;$(WXDIR)/src/jpeg;$(WXDIR)/src/zlib;$(WXDIR)/src/xpm +-I$(WXDIR)\include\wx\msw\gnuwin32 + +-L$(BCCDIR)\lib +-D__WXWIN__ +-D__WXMSW__ +-D__WINDOWS__ +-DWIN32 +$(OPT) +$(DEBUG_FLAGS) +$(WIN95FLAG) +! $(CFG) + +#-I$(WXDIR)\src\common\wxxpm\libxpm.34b\lib +# -Oxt + +clean: $(PERIPH_CLEAN_TARGET) + -erase $(LIBTARGET) + -erase *.obj + -erase *.pch + -erase *.csm + -erase *.cfg + -erase ..\common\y_tab.c + -erase ..\common\lex_yy.c + +cleanall: clean + + diff --git a/distrib/msw/tmake/bcc.t b/distrib/msw/tmake/bcc.t new file mode 100644 index 0000000000..b3c3ffe111 --- /dev/null +++ b/distrib/msw/tmake/bcc.t @@ -0,0 +1,299 @@ +#!############################################################################# +#! File: bcc.t +#! Purpose: tmake template file from which makefile.bcc is generated by running +#! tmake -t bcc wxwin.pro -o makefile.bcc +#! Author: Vadim Zeitlin +#! Created: 14.07.99 +#! Version: $Id$ +#!############################################################################# + +#${ + #! include the code which parses filelist.txt file and initializes + #! %wxCommon, %wxGeneric and %wxMSW hashes. + IncludeTemplate("filelist.t"); + + #! now transform these hashes into $project tags + foreach $file (sort keys %wxGeneric) { + my $tag = ""; + next if $wxGeneric{$file} =~ /\b(PS|G|U)\b/; + + $file =~ s/cp?p?$/obj/; + $project{"WXGENERICOBJS"} .= "\$(MSWDIR)\\" . $file . " " + } + + foreach $file (sort keys %wxCommon) { + #! socket files don't compile under Win16 currently + next if $wxCommon{$file} =~ /\b(32|S)\b/; + + #! needs extra files (sql*.h) so not compiled by default. + next if $file =~ /^odbc\./; + + $file =~ s/cp?p?$/obj/; + $project{"WXCOMMONOBJS"} .= "\$(MSWDIR)\\" . $file . " " + } + + #! special hack for Borland in 16 bits needs this file + $project{"WXCOMMONOBJS"} .= '${MSWDIR}\resourc2.cpp'; + + foreach $file (sort keys %wxMSW) { + #! don't take files not appropriate for 16-bit Windows + next if $wxMSW{$file} =~ /\b(32|O)\b/; + + $file =~ s/cp?p?$/obj/; + $project{"WXMSWOBJS"} .= "\$(MSWDIR)\\" . $file . " " + } +#$} + +# This file was automatically generated by tmake at #$ Now() +# DO NOT CHANGE THIS FILE, YOUR CHANGES WILL BE LOST! CHANGE BCC.T! + +# +# File: makefile.bcc +# Author: Julian Smart +# Created: 1993 +# Updated: +# Copyright:(c) 1993, AIAI, University of Edinburgh +# +# "%W% %G%" +# +# Makefile : Builds wxWindows library wx.lib for Windows 3.1 +# and Borland C++ 3.1 + +!if "$(BCCDIR)" == "" +!error You must define the BCCDIR variable in autoexec.bat, e.g. BCCDIR=d:\bc4 +!endif + +!if "$(WXWIN)" == "" +!error You must define the WXWIN variable in autoexec.bat, e.g. WXWIN=c:\wx +!endif + +!if "$(CFG)" == "" +# !error You must start compiling from wx\src, not wx\src\msw. +!endif + +!ifndef DEBUG +DEBUG=0 +!endif + +WXDIR = $(WXWIN) + +!include $(WXDIR)\src\makebcc.env + +THISDIR = $(WXDIR)\src\msw + +# 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_XPM_IN_MSW=0 + +PERIPH_LIBS= +PERIPH_TARGET= +PERIPH_CLEAN_TARGET= + +!if "$(USE_CTL3D)" == "1" +PERIPH_LIBS=$(BCCDIR)\lib\ctl3dv2.lib $(PERIPH_LIBS) +!endif + +!if "$(USE_XPM_IN_MSW)" == "1" +PERIPH_LIBS=$(WXDIR)\xpm.lib $(PERIPH_LIBS) +PERIPH_TARGET=xpm $(PERIPH_TARGET) +PERIPH_CLEAN_TARGET=clean_xpm $(PERIPH_CLEAN_TARGET) +!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= $(WXLIBDIR)\wx.lib +DUMMY=dummy + +GENDIR=..\generic +COMMDIR=..\common +OLEDIR=.\ole +MSWDIR=. + +DOCDIR = $(WXDIR)\docs + +GENERICOBJS= #$ ExpandList("WXGENERICOBJS"); + +COMMONOBJS = \ + $(MSWDIR)\y_tab.obj \ + #$ ExpandList("WXCOMMONOBJS"); + +MSWOBJS = #$ ExpandList("WXMSWOBJS"); + +OBJECTS = $(COMMONOBJS) $(GENERICOBJS) $(MSWOBJS) + +default: wx + +wx: $(CFG) $(DUMMY).obj $(OBJECTS) $(PERIPH_TARGET) $(LIBTARGET) + +$(LIBTARGET): $(DUMMY).obj $(OBJECTS) $(PERIPH_LIBS) + erase $(LIBTARGET) + tlib $(LIBTARGET) /P1024 @&&! ++$(OBJECTS:.obj =.obj +) +$(PERIPH_LIBS:.lib =.lib +) +! + +dummy.obj: dummy.$(SRCSUFF) $(LOCALHEADERS) $(BASEHEADERS) $(WXDIR)\include\wx\wx.h +dummydll.obj: dummydll.$(SRCSUFF) $(LOCALHEADERS) $(BASEHEADERS) $(WXDIR)\include\wx\wx.h + +$(MSWDIR)\y_tab.obj: $(COMMDIR)\y_tab.c $(COMMDIR)\lex_yy.c + +# cl @<< +# $(CPPFLAGS2) /c $*.c -DUSE_DEFINE -DYY_USE_PROTOS /Fo$@ +# << + +$(COMMDIR)\y_tab.c: $(COMMDIR)\dosyacc.c + copy $(COMMDIR)\dosyacc.c $(COMMDIR)\y_tab.c + +$(COMMDIR)\lex_yy.c: $(COMMDIR)\doslex.c + copy $(COMMDIR)\doslex.c $(COMMDIR)\lex_yy.c + +# $(OBJECTS): $(WXDIR)\include\wx\setup.h + +#${ + $_ = $project{"WXMSWOBJS"}; + my @objs = split; + foreach (@objs) { + $text .= $_ . ": "; + s/obj/\$(SRCSUFF)/; + $text .= $_ . "\n\n"; + } +#$} + +######################################################## +# Common objects (always compiled) + +#${ + $_ = $project{"WXCOMMONOBJS"}; + my @objs = split; + foreach (@objs) { + $text .= $_ . ": "; + s/MSWDIR/COMMDIR/; + s/obj/\$(SRCSUFF)/; + $text .= $_ . "\n\n"; + } +#$} + +######################################################## +# Generic objects (not always compiled, depending on +# whether platforms have native implementations) + +#${ + $_ = $project{"WXGENERICOBJS"}; + my @objs = split; + foreach (@objs) { + $text .= $_ . ": "; + s/MSWDIR/GENDIR/; + s/obj/\$(SRCSUFF)/; + $text .= $_ . "\n\n"; + } +#$} + +all_utils: + cd $(WXDIR)\utils + make -f makefile.bcc + cd $(WXDIR)\src\msw + +all_samples: + cd $(WXDIR)\samples + make -f makefile.bcc + cd $(WXDIR)\src\msw + +all_execs: + cd $(WXDIR)\utils + make -f makefile.bcc all_execs + cd $(WXDIR)\src\msw + +all_libs: + cd $(WXDIR)\src\msw + make -f makefile.bcc ctl3d dib fafa gauge hytext itsy prologio rcparser wx wxgraph\ + wxstring wxtree mfutils # wxxpm + +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) + erase *.obj + erase *.pch + erase *.csm + erase *.cfg + erase ..\common\y_tab.c + erase ..\common\lex_yy.c + +cleanall: clean + + diff --git a/distrib/msw/tmake/dos.t b/distrib/msw/tmake/dos.t new file mode 100644 index 0000000000..0b92a431af --- /dev/null +++ b/distrib/msw/tmake/dos.t @@ -0,0 +1,255 @@ +#!############################################################################# +#! File: dos.t +#! Purpose: tmake template file from which makefile.dos is generated by running +#! tmake -t dos wxwin.pro -o makefile.dos +#! Author: Vadim Zeitlin +#! Created: 14.07.99 +#! Version: $Id$ +#!############################################################################# + +#${ + #! include the code which parses filelist.txt file and initializes + #! %wxCommon, %wxGeneric and %wxMSW hashes. + IncludeTemplate("filelist.t"); + + #! now transform these hashes into $project tags + foreach $file (sort keys %wxGeneric) { + if ( $wxGeneric{$file} =~ /\b(PS|G|U)\b/ ) { + #! this file for some reason was compiled for VC++ 1.52 + next unless $file =~ /^prntdlgg\./; + } + + $file =~ s/cp?p?$/obj/; + $project{"WXGENERICOBJS"} .= "\$(GENDIR)\\" . $file . " " + } + + foreach $file (sort keys %wxCommon) { + #! socket files don't compile under Win16 currently + next if $wxCommon{$file} =~ /\b(32|S)\b/; + + $file =~ s/cp?p?$/obj/; + $project{"WXCOMMONOBJS"} .= "\$(COMMDIR)\\" . $file . " " + } + + foreach $file (sort keys %wxMSW) { + #! don't take files not appropriate for 16-bit Windows + next if $wxMSW{$file} =~ /\b(32|O)\b/; + + $file =~ s/cp?p?$/obj/; + $project{"WXMSWOBJS"} .= "\$(MSWDIR)\\" . $file . " " + } +#$} + +# This file was automatically generated by tmake at #$ Now() +# DO NOT CHANGE THIS FILE, YOUR CHANGES WILL BE LOST! CHANGE DOS.T! + +# +# File: makefile.dos +# Author: Julian Smart +# Created: 1997 +# Updated: +# Copyright:(c) 1997, Julian Smart +# +# "%W% %G%" +# +# Makefile : Builds wxWindows library wx.lib for VC++ (16-bit) +# Arguments: +# +# FINAL=1 argument to nmake to build version with no debugging info. +# +!include <..\makemsc.env> + +LIBTARGET=$(WXLIB) +DUMMYOBJ=dummy.obj + +# Please set these according to the settings in wx_setup.h, so we can include +# the appropriate libraries in wx.lib + +# This one overrides the others, to be consistent with the settings in wx_setup.h +MINIMAL_WXWINDOWS_SETUP=0 + +USE_XPM_IN_MSW=0 +USE_CTL3D=1 + +!if "$(MINIMAL_WXWINDOWS_SETUP)" == "1" +USE_CTL3D=0 +USE_XPM_IN_MSW=0 +!endif + +PERIPH_LIBS= +PERIPH_TARGET= +PERIPH_CLEAN_TARGET= + +# !if "$(USE_CTL3D)" == "1" +# PERIPH_LIBS=d:\msdev\lib\ctl3d32.lib $(PERIPH_LIBS) +# !endif + +!if "$(USE_XPM_IN_MSW)" == "1" +PERIPH_LIBS=$(WXDIR)\contrib\wxxpm\xpm.lib $(PERIPH_LIBS) +PERIPH_TARGET=xpm $(PERIPH_TARGET) +PERIPH_CLEAN_TARGET=clean_xpm $(PERIPH_CLEAN_TARGET) +!endif + +# PNG and Zlib +PERIPH_TARGET=png zlib $(PERIPH_TARGET) +PERIPH_CLEAN_TARGET=clean_png clean_zlib $(PERIPH_CLEAN_TARGET) + +GENDIR=..\generic +COMMDIR=..\common +OLEDIR=.\ole +MSWDIR=. + +GENERICOBJS= #$ ExpandList("WXGENERICOBJS"); + +COMMONOBJS = \ + $(COMMDIR)\y_tab.obj \ + #$ ExpandList("WXCOMMONOBJS"); + +MSWOBJS = #$ ExpandList("WXMSWOBJS"); + +# TODO: Implement XPM and PNG targets in this makefile! +# $(OLEDIR)\xpmhand \ +# $(OLEDIR)\pnghand \ + +OBJECTS = $(COMMONOBJS) $(GENERICOBJS) $(MSWOBJS) + +# Normal, static library +all: $(DUMMYOBJ) $(WXDIR)\lib\wx1.lib $(WXDIR)\lib\wx2.lib $(WXDIR)\lib\wx3.lib + + +# $(WXDIR)\lib\wx.lib: dummy.obj $(OBJECTS) $(PERIPH_LIBS) +# -erase $(LIBTARGET) +# lib /PAGESIZE:128 @<< +# $(LIBTARGET) +# y +# $(OBJECTS) $(PERIPH_LIBS) +# nul +# ; +# << + +$(WXDIR)\lib\wx1.lib: $(COMMONOBJS) $(PERIPH_LIBS) + -erase $(WXDIR)\lib\wx1.lib + lib /PAGESIZE:128 @<< +$(WXDIR)\lib\wx1.lib +y +$(COMMONOBJS) $(PERIPH_LIBS) +nul +; +<< + +$(WXDIR)\lib\wx2.lib: $(GENERICOBJS) + -erase $(WXDIR)\lib\wx2.lib + lib /PAGESIZE:128 @<< +$(WXDIR)\lib\wx2.lib +y +$(GENERICOBJS) +nul +; +<< + +$(WXDIR)\lib\wx3.lib: $(MSWOBJS) + -erase $(WXDIR)\lib\wx3.lib + lib /PAGESIZE:128 @<< +$(WXDIR)\lib\wx3.lib +y +$(MSWOBJS) +nul +; +<< + +######################################################## +# Windows-specific objects + +dummy.obj: dummy.$(SRCSUFF) $(WXDIR)\include\wx\wx.h + cl @<< + cl $(CPPFLAGS) /YcWX/WXPREC.H $(DEBUG_FLAGS) /c /Tp $*.$(SRCSUFF) +<< + +#dummy.obj: dummy.$(SRCSUFF) $(WXDIR)\include\wx\wx.h +# cl $(CPPFLAGS) /YcWX/WXPREC.H $(DEBUG_FLAGS) /c /Tp $*.$(SRCSUFF) + +dummydll.obj: dummydll.$(SRCSUFF) $(WXDIR)\include\wx\wx.h + cl @<< +$(CPPFLAGS) /YcWX/WXPREC.H /c /Tp $*.$(SRCSUFF) +<< + +#${ + $_ = $project{"WXMSWOBJS"} . $project{"WXCOMMONOBJS"} . $project{"WXGENERICOBJS"}; + my @objs = split; + foreach (@objs) { + s:\\:/:; + $text .= $_ . ': $*.$(SRCSUFF)' . "\n" . + ' cl @<<' . "\n" . + '$(CPPFLAGS) /Fo$@ /c /Tp $*.$(SRCSUFF)' . "\n" . + "<<\n\n"; + } +#$} + +$(COMMDIR)/y_tab.obj: $*.c $(COMMDIR)/lex_yy.c + cl @<< +$(CPPFLAGS2) -DUSE_DEFINE -DYY_USE_PROTOS /Fo$@ /I ..\common /c $*.c +<< + +$(COMMDIR)/y_tab.c: $(COMMDIR)/dosyacc.c + copy $(COMMDIR)\dosyacc.c $(COMMDIR)\y_tab.c + +$(COMMDIR)/lex_yy.c: $(COMMDIR)/doslex.c + copy $(COMMDIR)\doslex.c $(COMMDIR)\lex_yy.c + +$(OBJECTS): $(WXDIR)/include/wx/setup.h + +# Peripheral components + +xpm: + cd $(WXDIR)\src\xpm + nmake -f makefile.dos FINAL=$(FINAL) + cd $(WXDIR)\src\msw + +clean_xpm: + cd $(WXDIR)\src\xpm + nmake -f makefile.dos clean + cd $(WXDIR)\src\msw + +zlib: + cd $(WXDIR)\src\zlib + nmake -f makefile.dos FINAL=$(FINAL) + cd $(WXDIR)\src\msw + +clean_zlib: + cd $(WXDIR)\src\zlib + nmake -f makefile.dos clean + cd $(WXDIR)\src\msw + +png: + cd $(WXDIR)\src\png + nmake -f makefile.dos FINAL=$(FINAL) + cd $(WXDIR)\src\msw + +clean_png: + cd $(WXDIR)\src\png + nmake -f makefile.dos clean + cd $(WXDIR)\src\msw + +clean: $(PERIPH_CLEAN_TARGET) + -erase *.obj + -erase ..\lib\*.lib + -erase *.pdb + -erase *.sbr + -erase *.pch + cd $(WXDIR)\src\generic + -erase *.pdb + -erase *.sbr + -erase *.obj + cd $(WXDIR)\src\common + -erase *.pdb + -erase *.sbr + -erase *.obj + cd $(WXDIR)\src\msw\ole + -erase *.pdb + -erase *.sbr + -erase *.obj + cd $(WXDIR)\src\msw + +cleanall: clean + + diff --git a/distrib/msw/tmake/filelist.t b/distrib/msw/tmake/filelist.t new file mode 100644 index 0000000000..07d041c9e2 --- /dev/null +++ b/distrib/msw/tmake/filelist.t @@ -0,0 +1,52 @@ +#!############################################################################# +#! File: filelist.t +#! Purpose: tmake template file containig Perl code to parse the filelist.txt +#! file - this is used by all other templates. +#! Author: Vadim Zeitlin +#! Created: 14.07.99 +#! Version: $Id$ +#!############################################################################# +#${ + open(FILELIST, "filelist.txt") or die "Can't open filelist file: $!\n"; + + my %wxfiles; + + line: while ( defined($_ = ) ) { + chomp; + + #! comment or blank line, skip + next line if ( $_ eq "" or /^#/ ); + + #! if ( $verbose ) { + #! print STDERR "Processing line: '$_'\n"; + #! } + + my @fields = split "\t"; + if ( $#fields > 2 ) { + warn "Ignoring malformed line $_ in the filelist file.\n"; + next line; + } elsif ( $#fields == 1 ) { + #! add an empty flags string + $fields[2] = ""; + } + + if ( $verbose ) { + print STDERR "File $fields[0]: type '$fields[1]', flags '$fields[2]'\n"; + } + + #! first column is filename, second is type, third is flags + if ( $fields[1] eq "C" ) { + $wxCommon{$fields[0]} = $fields[2]; + } elsif ( $fields[1] eq "G" ) { + $wxGeneric{$fields[0]} = $fields[2]; + } elsif ( $fields[1] eq "M" ) { + $wxMSW{$fields[0]} = $fields[2]; + } else { + warn "Unknown file type $fields[1] for $fields[0], ignoring.\n"; + next line; + } + } + + close(FILELIST); +#$} +#! vim:sw=4:ts=4:list:et diff --git a/distrib/msw/tmake/filelist.txt b/distrib/msw/tmake/filelist.txt new file mode 100644 index 0000000000..c6a45ae7d8 --- /dev/null +++ b/distrib/msw/tmake/filelist.txt @@ -0,0 +1,228 @@ +############################################################################### +# File: src/msw/filelist.cpp +# Purpose: The list of source files for MSW version of wxWindows. +# Author: Vadim Zeitlin +# Created: 14.07.99 +# Version: $Id$ +# +# Format of this file: TAB separated columns. The first column contains the +# filename, the second 'G', 'C' or 'M' for generic/common/msw files. Flags +# column may be empty or contain some additional info about this file (only +# compile it in 16bit mode, don't compile it with this or that compiler, &c) +# +# Known flags: +# 16 a generic file implementing Win32 control for Win16 +# 32 only can be compiled under Win32 +# PS PostScript related file, normally not compiled under Windows +# G generic code which might be used instead of native one +# U Unix-ish file, normally not compiled under Windows +# O OLE file (needs Win32 and a decent compiler) +# S Socket file (currently doesn't compile under Win16 nor with GNU) +############################################################################### + +# File name Type Flags + +busyinfo.cpp G +choicdgg.cpp G +colrdlgg.cpp G G +dirdlgg.cpp G 16 +extdlgg.cpp G +fontdlgg.cpp G G +gridg.cpp G +helpxlp.cpp G G +imaglist.cpp G 16 +laywin.cpp G +listctrl.cpp G 16 +msgdlgg.cpp G G +notebook.cpp G 16 +panelg.cpp G +printps.cpp G PS +prntdlgg.cpp G PS,U +progdlgg.cpp G +prop.cpp G +propform.cpp G +proplist.cpp G +sashwin.cpp G +scrolwin.cpp G +splitter.cpp G +statusbr.cpp G +tabg.cpp G +textdlgg.cpp G +tipdlg.cpp G +treectrl.cpp G 16 + +cmndata.cpp C +config.cpp C +date.cpp C +datstrm.cpp C +db.cpp C +dbtable.cpp C +dcbase.cpp C +dlgcmn.cpp C +docmdi.cpp C +docview.cpp C +dynarray.cpp C +dynlib.cpp C +event.cpp C +extended.c C +ffile.cpp C +file.cpp C +fileconf.cpp C +filefn.cpp C +filesys.cpp C +framecmn.cpp C +fs_inet.cpp C +fs_zip.cpp C +ftp.cpp C S +gdicmn.cpp C +hash.cpp C +helpbase.cpp C +http.cpp C S +imagbmp.cpp C +image.cpp C +imaggif.cpp C +imagjpeg.cpp C +imagpng.cpp C +intl.cpp C +ipcbase.cpp C +layout.cpp C +list.cpp C +log.cpp C +memory.cpp C +mimetype.cpp C 32 +module.cpp C +mstream.cpp C +object.cpp C +objstrm.cpp C +odbc.cpp C +paper.cpp C +prntbase.cpp C +process.cpp C 32 +protocol.cpp C S +resource.cpp C +sckaddr.cpp C S +sckfile.cpp C S +sckint.cpp C S +sckipc.cpp C S +sckstrm.cpp C S +socket.cpp C S +stream.cpp C +string.cpp C +tbarbase.cpp C +tbarsmpl.cpp C 16 +textcmn.cpp C +textfile.cpp C +time.cpp C +timercmn.cpp C +tokenzr.cpp C +txtstrm.cpp C +unzip.c C +url.cpp C S +utilscmn.cpp C +valgen.cpp C +validate.cpp C +valtext.cpp C +variant.cpp C +wfstream.cpp C +wincmn.cpp C +wxchar.cpp C +wxexpr.cpp C +zipstream.cpp C +zstream.cpp C + +accel.cpp M +app.cpp M +automtn.cpp M O +bitmap.cpp M +bmpbuttn.cpp M +brush.cpp M +button.cpp M +caret.cpp M +checkbox.cpp M +checklst.cpp M +choice.cpp M +clipbrd.cpp M +colordlg.cpp M +colour.cpp M +combobox.cpp M +control.cpp M +curico.cpp M +cursor.cpp M +data.cpp M +dataobj.cpp M O +dc.cpp M +dcclient.cpp M +dcmemory.cpp M +dcprint.cpp M +dcscreen.cpp M +dde.cpp M +dialog.cpp M +dib.cpp M +dibutils.cpp M +dirdlg.cpp M 32 +dragimag.cpp M +dropsrc.cpp M O +droptgt.cpp M O +filedlg.cpp M +font.cpp M +fontdlg.cpp M +frame.cpp M +gauge95.cpp M 32 +gaugemsw.cpp M 16 +gdiobj.cpp M +helpwin.cpp M +icon.cpp M +imaglist.cpp M 32 +iniconf.cpp M +joystick.cpp M +listbox.cpp M +listctrl.cpp M 32 +main.cpp M +mdi.cpp M +menu.cpp M +menuitem.cpp M +metafile.cpp M +minifram.cpp M +msgdlg.cpp M +nativdlg.cpp M +notebook.cpp M +oleutils.cpp M O +ownerdrw.cpp M +palette.cpp M +pen.cpp M +penwin.cpp M +pnghand.cpp M +printdlg.cpp M +printwin.cpp M +radiobox.cpp M +radiobut.cpp M +regconf.cpp M 32 +region.cpp M +registry.cpp M 32 +scrolbar.cpp M +settings.cpp M +slider95.cpp M 32 +slidrmsw.cpp M 16 +spinbutt.cpp M +statbmp.cpp M +statbox.cpp M +statbr95.cpp M 32 +statline.cpp M +stattext.cpp M +tabctrl.cpp M +taskbar.cpp M 32 +tbar95.cpp M 32 +tbarmsw.cpp M 16 +textctrl.cpp M +thread.cpp M 32 +timer.cpp M +tooltip.cpp M 32 +treectrl.cpp M 32 +utils.cpp M +utilsexc.cpp M +uuid.cpp M O +wave.cpp M +window.cpp M +xpmhand.cpp M + +# vi: set noet ts=16: diff --git a/distrib/msw/tmake/g95.t b/distrib/msw/tmake/g95.t new file mode 100644 index 0000000000..888e742eb6 --- /dev/null +++ b/distrib/msw/tmake/g95.t @@ -0,0 +1,187 @@ +#!############################################################################# +#! File: g95.t +#! Purpose: tmake template file from which makefile.g95 is generated by running +#! tmake -t g95 wxwin.pro -o makefile.g95 +#! Author: Vadim Zeitlin +#! Created: 14.07.99 +#! Version: $Id$ +#!############################################################################# + +#${ + #! include the code which parses filelist.txt file and initializes + #! %wxCommon, %wxGeneric and %wxMSW hashes. + IncludeTemplate("filelist.t"); + + #! now transform these hashes into $project tags + foreach $file (sort keys %wxGeneric) { + #! native wxDirDlg can't be compiled due to GnuWin32/OLE limitations, + #! so take the generic version + if ( $wxGeneric{$file} =~ /\b(PS|G|U)\b/ ) { + next unless $file =~ /^dirdlgg\./; + } + + $file =~ s/cp?p?$/\$(OBJSUFF)/; + $project{"WXGENERICOBJS"} .= '$(GENDIR)\\' . $file . " " + } + + foreach $file (sort keys %wxCommon) { + #! socket files don't compile under Win16 currently + next if $wxCommon{$file} =~ /\b(32|S)\b/; + + #! needs extra files (sql*.h) so not compiled by default. + next if $file =~ /^odbc\./; + + $file =~ s/cp?p?$/\$(OBJSUFF)/; + $project{"WXCOMMONOBJS"} .= '$(COMMDIR)\\' . $file . " " + } + + foreach $file (sort keys %wxMSW) { + #! Mingw32 doesn't have the OLE headers and has some troubles with + #! socket code + next if $wxMSW{$file} =~ /\b(O|S|16)\b/; + + $file =~ s/cp?p?$/\$(OBJSUFF)/; + $project{"WXMSWOBJS"} .= $file . " " + } +#$} + +# This file was automatically generated by tmake at #$ Now() +# DO NOT CHANGE THIS FILE, YOUR CHANGES WILL BE LOST! CHANGE G95.T! + +# +# File: makefile.unx +# Author: Julian Smart +# Created: 1993 +# Updated: +# Copyright:(c) 1993, AIAI, University of Edinburgh +# +# "@(#)makefile.unx 1.2 5/9/94" +# +# Makefile for libwx.a + +# Replace this with your own path if necessary +WXDIR = ../.. + +# All common UNIX compiler flags and options are now in +# this central makefile. +include $(WXDIR)/src/makeg95.env + +# IMPORTANT: if you want to link in subsidiary libraries, +# required for some optional parts of wxWindows, you must +# set EXTRATARGETS and EXTRAOBJS to match the settings in wx_setup.h. +# Having done this, you won't have to worry about linking them +# into each application. +# +# Here's the full list. +# prologio: Required if using the wxWindows resource facility +# USE_WX_RESOURCES should be 1 +# xmgauge: Gauge class (required for Motif only) +# USE_GAUGE should be 1 +# xpm: XPM pixmap support +# USE_XPM_IN_X should be 1 +# wxstring: string class +# USE_GNU_WXSTRING should be 1 +# +# Unfortunately, 'ar' doesn't like combining objects and libraries, +# so we must identify all the objects from the subordinate libraries. Yuck! +XPMSRC=../../contrib/wxxpm/objects$(GUISUFFIX) +XPMOBJS=$(XPMSRC)/crbuffri.$(OBJSUFF) $(XPMSRC)/crbuffrp.$(OBJSUFF) $(XPMSRC)/crdatfri.$(OBJSUFF) $(XPMSRC)/crdatfrp.$(OBJSUFF)\ + $(XPMSRC)/create.$(OBJSUFF) $(XPMSRC)/crifrbuf.$(OBJSUFF) $(XPMSRC)/crifrdat.$(OBJSUFF) $(XPMSRC)/crpfrbuf.$(OBJSUFF) $(XPMSRC)/crpfrdat.$(OBJSUFF)\ + $(XPMSRC)/data.$(OBJSUFF) $(XPMSRC)/hashtab.$(OBJSUFF) $(XPMSRC)/misc.$(OBJSUFF) $(XPMSRC)/parse.$(OBJSUFF) $(XPMSRC)/rdftodat.$(OBJSUFF)\ + $(XPMSRC)/rdftoi.$(OBJSUFF) $(XPMSRC)/rdftop.$(OBJSUFF) $(XPMSRC)/rgb.$(OBJSUFF) $(XPMSRC)/scan.$(OBJSUFF) $(XPMSRC)/simx.$(OBJSUFF)\ + $(XPMSRC)/wrffrdat.$(OBJSUFF) $(XPMSRC)/wrffri.$(OBJSUFF) $(XPMSRC)/wrffrp.$(OBJSUFF) + +# Subordinate library possibilities + +EXTRAOBJS= + +GENDIR=../generic +COMMDIR=../common +XPMDIR=../xpm +OLEDIR=ole +MSWDIR=. + +DOCDIR = $(WXDIR)\docs + +GENERICOBJS= #$ ExpandList("WXGENERICOBJS"); + +COMMONOBJS = \ + $(COMMDIR)/y_tab.$(OBJSUFF) \ + #$ ExpandList("WXCOMMONOBJS"); + +MSWOBJS = #$ ExpandList("WXMSWOBJS"); + +XPMOBJECTS = $(XPMDIR)/crbuffri.o\ + $(XPMDIR)/crdatfri.o\ + $(XPMDIR)/create.o $(XPMDIR)/crifrbuf.o\ + $(XPMDIR)/crifrdat.o\ + $(XPMDIR)/data.o\ + $(XPMDIR)/hashtab.o $(XPMDIR)/misc.o\ + $(XPMDIR)/parse.o $(XPMDIR)/rdftodat.o\ + $(XPMDIR)/rdftoi.o\ + $(XPMDIR)/rgb.o $(XPMDIR)/scan.o\ + $(XPMDIR)/simx.o $(XPMDIR)/wrffrdat.o\ + $(XPMDIR)/wrffrp.o $(XPMDIR)/wrffri.o + +OBJECTS = $(MSWOBJS) $(COMMONOBJS) $(GENERICOBJS) # $(XPMOBJECTS) + +all: $(OBJECTS) $(WXLIB) + +base: + cd $(WXDIR)/src/common; $(MAKE) -f makefile.g95 GUI=$(GUI) GUISUFFIX=$(GUISUFFIX) CC=$(CC)\ + OPTIONS='$(OPTIONS)' DEBUG='$(DEBUG)' DEBUGFLAGS='$(DEBUGFLAGS)' WARN='$(WARN)' XLIB='$(XLIB)' XINCLUDE='$(XINCLUDE)' + + +$(WXLIB): $(OBJECTS) $(EXTRAOBJS) + ar $(AROPTIONS) $@ $(EXTRAOBJS) $(OBJECTS) + $(RANLIB) $@ + +$(OBJECTS): $(WXINC)/wx/defs.h $(WXINC)/wx/object.h $(WXINC)/wx/setup.h + +$(COMMDIR)/y_tab.$(OBJSUFF): $(COMMDIR)/y_tab.c $(COMMDIR)/lex_yy.c + $(CCLEX) -c $(CPPFLAGS) -o $@ $(COMMDIR)/y_tab.c + +# Replace lex with flex if you run into compilation +# problems with lex_yy.c. See also note about LEX_SCANNER +# above. +$(COMMDIR)/lex_yy.c: $(COMMDIR)/lexer.l + $(LEX) -L -o$(COMMDIR)/lex_yy.c $(COMMDIR)/lexer.l + +# Try one of these if the above line doesn't work. +# Alternative syntax (1) +# $(LEX) -t -L $(COMMDIR)/lexer.l > $(COMMDIR)/lex_yy.c +# Alternative syntax (2) +# $(LEX) -L -o$(COMMDIR)/lex_yy.c $(COMMDIR)/lexer.l + +# sed -e "s/BUFSIZ/5000/g" < lex.yy.c | \ +# sed -e "s/yyoutput(c)/void yyoutput(c)/g" | \ +# sed -e "s/YYLMAX 200/YYLMAX 5000/g" > lex_yy.c +# rm -f lex.yy.c + +# Replace yacc with bison if you run into compilation +# problems with y_tab.c. + +$(COMMDIR)/y_tab.c: $(COMMDIR)/parser.y + $(YACC) -o $(COMMDIR)/y_tab.c $(COMMDIR)/parser.y + +# If you use e.g. gcc on Unix, uncomment these lines +# and comment out the above. + +# $(COMMDIR)/y_tab.c: $(COMMDIR)/parser.y +# $(YACC) $(COMMDIR)/parser.y +# mv y.tab.c $(COMMDIR)/y_tab.c + +# Extra targets +rcparser: + cd $(WXDIR)/utils/rcparser/src; $(MAKE) -f makefile.g95 + cd $(WXDIR)/src/msw + +clean_rcp: + cd $(WXDIR)/utils/rcparser/src; $(MAKE) -f makefile.g95 clean + cd $(WXDIR)/src/msw + +clean: + rm -f $(OBJECTS) $(EXTRAOBJS) ../common/y_tab.c ../common/lex_yy.c $(WXDIR)/lib/libwx$(GUISUFFIX).a core + +cleanall: clean + diff --git a/distrib/msw/tmake/makeall.bat b/distrib/msw/tmake/makeall.bat new file mode 100755 index 0000000000..6c82dab153 --- /dev/null +++ b/distrib/msw/tmake/makeall.bat @@ -0,0 +1,53 @@ +@echo off +rem File: makeall.bat +rem Purpose: create wxWindows makefiles for all compilers +rem Author: Vadim Zeitlin +rem Created: 14.07.99 +rem Copyright: (c) 1999 Vadim Zeitlin +rem Version: $Id$ +rem +rem Makefile to create the makefiles for all compilers from the templates using +rem tmake. The environment variable WX or WXWIN should be defined and contain +rem the root directory of wxWindows installation. TMAKE program should be in +rem path or, alternatively, TMAKE environment variable should be set. + +if "x%WX%" == "x" goto skip +set WXDIR=%WX% +goto ok + +:skip +if "x%WXWIN%" == "x" goto no_wx +set WXDIR=%WXWIN% +goto ok + +:no_wx +echo "Please set WX environment variable!" +goto end + +:ok +set TM=tmake +if "x%TMAKE%" == "x" goto skip2 +set TM=%TMAKE% + +:skip2 + +rem this loop just doesn't want to work under command.com and cmd.exe and +rem 4nt.exe, so I preferred to unroll it. +rem for %%c in (b32 bcc dos g95 sc vc wat) %TM% -t %c% wxwin.pro -o %WXDIR%\src\msw\makefile.%c% + +echo Generating for Visual C++ 4.0... +%TM% -t vc wxwin.pro -o makefile.vc +echo Generating for Borland C++ (32 bits)... +%TM% -t b32 wxwin.pro -o makefile.b32 +echo Generating for Visual C++ 1.52... +%TM% -t dos wxwin.pro -o makefile.dos +echo Generating for Borland C++ (16 bits)... +%TM% -t bcc wxwin.pro -o makefile.bcc +echo Generating for Cygwin/Mingw32 +%TM% -t g95 wxwin.pro -o makefile.g95 +echo Generating for Symantec C++... +%TM% -t sc wxwin.pro -o makefile.sc +echo Generating for Watcom C++... +%TM% -t wat wxwin.pro -o makefile.wat + +:end diff --git a/distrib/msw/tmake/sc.t b/distrib/msw/tmake/sc.t new file mode 100644 index 0000000000..f79733cfd8 --- /dev/null +++ b/distrib/msw/tmake/sc.t @@ -0,0 +1,114 @@ +#!############################################################################# +#! File: sc.t +#! Purpose: tmake template file from which makefile.sc is generated by running +#! tmake -t sc wxwin.pro -o makefile.sc +#! Author: Vadim Zeitlin +#! Created: 14.07.99 +#! Version: $Id$ +#!############################################################################# + +#${ + #! include the code which parses filelist.txt file and initializes + #! %wxCommon, %wxGeneric and %wxMSW hashes. + IncludeTemplate("filelist.t"); + + #! now transform these hashes into $project tags + foreach $file (sort keys %wxGeneric) { + my $tag = ""; + if ( $wxGeneric{$file} =~ /\b(PS|G|16|U)\b/ ) { + $tag = "WXNONESSENTIALOBJS"; + } + else { + $tag = "WXGENERICOBJS"; + } + + $file =~ s/cp?p?$/obj/; + $project{$tag} .= '$(GENDIR)\\' . $file . " " + } + + foreach $file (sort keys %wxCommon) { + $file =~ s/cp?p?$/obj/; + $project{"WXCOMMONOBJS"} .= '$(COMMDIR)\\' . $file . " " + } + + foreach $file (sort keys %wxMSW) { + #! these files don't compile with SC++ 6 + next if $file =~ /^(joystick|pnghand)\./; + + next if $wxGeneric{$file} =~ /\b16\b/; + + $file =~ s/cp?p?$/obj/; + $project{"WXMSWOBJS"} .= '$(MSWDIR)\\' . $file . " " + } +#$} + +# This file was automatically generated by tmake at #$ Now() +# DO NOT CHANGE THIS FILE, YOUR CHANGES WILL BE LOST! CHANGE SC.T! + +# Symantec C++ makefile for the msw objects +# called from src\makefile.sc + +# configuration section (see src\makefile.sc) ########################### + +WXDIR = $(WXWIN) + +include ..\makesc.env + +DEBUG=0 + +LIBTARGET = $(LIBDIR)\wx.lib + +OPTIONS= + +# end of configuration section ########################################## + +GENDIR=$(WXDIR)\src\generic +COMMDIR=$(WXDIR)\src\common +XPMDIR=$(WXDIR)\src\xpm +OLEDIR=ole +MSWDIR=$(WXDIR)\src\msw + +GENERICOBJS= #$ ExpandList("WXGENERICOBJS"); + +COMMONOBJS = \ + $(COMMDIR)\y_tab.obj \ + #$ ExpandList("WXCOMMONOBJS"); + +MSWOBJS = #$ ExpandList("WXMSWOBJS"); + +XPMOBJECTS = $(XPMDIR)\crbuffri.obj\ + $(XPMDIR)\crdatfri.obj\ + $(XPMDIR)\create.obj $(XPMDIR)\crifrbuf.obj\ + $(XPMDIR)\crifrdat.obj\ + $(XPMDIR)\data.obj\ + $(XPMDIR)\hashtab.obj $(XPMDIR)\misc.obj\ + $(XPMDIR)\parse.obj $(XPMDIR)\rdftodat.obj\ + $(XPMDIR)\rdftoi.obj\ + $(XPMDIR)\rgb.obj $(XPMDIR)\scan.obj\ + $(XPMDIR)\simx.obj $(XPMDIR)\wrffrdat.obj\ + $(XPMDIR)\wrffrp.obj $(XPMDIR)\wrffri.obj + +# Add $(NONESSENTIALOBJS) if wanting generic dialogs, PostScript etc. +OBJECTS = $(COMMONOBJS) $(GENERICOBJS) $(MSWOBJS) # $(XPMOBJECTS) + +all: $(LIBTARGET) + +$(LIBTARGET): $(OBJECTS) + -del $(LIBTARGET) + *lib /PAGESIZE:512 $(LIBTARGET) y $(OBJECTS), nul; + +clean: + -del *.obj + -del $(LIBTARGET) + +$(COMMDIR)\y_tab.obj: $(COMMDIR)\y_tab.c $(COMMDIR)\lex_yy.c + +$(COMMDIR)\y_tab.c: $(COMMDIR)\dosyacc.c + copy $(COMMDIR)\dosyacc.c $(COMMDIR)\y_tab.c + +$(COMMDIR)\lex_yy.c: $(COMMDIR)\doslex.c + copy $(COMMDIR)\doslex.c $(COMMDIR)\lex_yy.c + +# $(COMMDIR)\cmndata.obj: $(COMMDIR)\cmndata.cpp +# *$(CC) -c $(CFLAGS) -I$(INCLUDE) $(OPTIONS) $(COMMDIR)\cmndata.cpp -o$(COMMDIR)\cmndata.obj + diff --git a/distrib/msw/tmake/vc.t b/distrib/msw/tmake/vc.t new file mode 100644 index 0000000000..619ab1f3c0 --- /dev/null +++ b/distrib/msw/tmake/vc.t @@ -0,0 +1,625 @@ +#!############################################################################# +#! File: vc.t +#! Purpose: tmake template file from which makefile.vc is generated by running +#! tmake -t vc wxwin.pro -o makefile.vc +#! Author: Vadim Zeitlin +#! Created: 14.07.99 +#! Version: $Id$ +#!############################################################################# + +#${ + #! include the code which parses filelist.txt file and initializes + #! %wxCommon, %wxGeneric and %wxMSW hashes. + IncludeTemplate("filelist.t"); + + #! now transform these hashes into $project tags + foreach $file (sort keys %wxGeneric) { + my $tag = ""; + if ( $wxGeneric{$file} =~ /\b(PS|G|16|U)\b/ ) { + $tag = "WXNONESSENTIALOBJS"; + } + else { + $tag = "WXGENERICOBJS"; + } + + $file =~ s/cp?p?$/obj/; + $project{$tag} .= "..\\generic\\\$D\\" . $file . " " + } + + foreach $file (sort keys %wxCommon) { + next if $wxCommon{$file} =~ /\b16\b/; + + $file =~ s/cp?p?$/obj/; + $project{"WXCOMMONOBJS"} .= "..\\common\\\$D\\" . $file . " " + } + + foreach $file (sort keys %wxMSW) { + next if $wxMSW{$file} =~ /\b16\b/; + + $file =~ s/cp?p?$/obj/; + $project{"WXMSWOBJS"} .= "..\\msw\\\$D\\" . $file . " " + } +#$} + +# This file was automatically generated by tmake at #$ Now() +# DO NOT CHANGE THIS FILE, YOUR CHANGES WILL BE LOST! CHANGE VC.T! + +# File: makefile.vc +# Author: Julian Smart +# Created: 1997 +# Updated: +# Copyright: (c) 1997, Julian Smart +# +# "%W% %G%" +# +# Makefile : Builds wxWindows library wx.lib for VC++ (32-bit) +# Arguments: +# +# FINAL=1 argument to nmake to build version with no debugging info. +# dll builds a library (wxdll.lib) suitable for creating DLLs +# +!include <..\makevc.env> + +THISDIR=$(WXWIN)\src\msw + +!if "$(WXMAKINGDLL)" == "1" +LIBTARGET=$(WXDIR)\lib\$(WXLIBNAME).dll +DUMMYOBJ=$D\dummydll.obj +!else +LIBTARGET=$(WXLIB) +DUMMYOBJ=$D\dummy.obj +!endif + +# Please set these according to the settings in setup.h, so we can include +# the appropriate libraries in wx.lib + +# This one overrides the others, to be consistent with the settings in setup.h +MINIMAL_WXWINDOWS_SETUP=0 + +PERIPH_LIBS= +PERIPH_TARGET= +PERIPH_CLEAN_TARGET= + +# 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=$(WXDIR)\src\msw +DOCDIR = $(WXDIR)\docs +HTMLDIR = $(WXDIR)\src\html + +{..\generic}.cpp{..\generic\$D}.obj: + cl @<< +$(CPPFLAGS) /Fo$@ /c /Tp $< +<< + +{..\common}.cpp{..\common\$D}.obj: + cl @<< +$(CPPFLAGS) /Fo$@ /c /Tp $< +<< + +{..\msw}.cpp{..\msw\$D}.obj: + cl @<< +$(CPPFLAGS) /Fo$@ /c /Tp $< +<< + +{..\msw\ole}.cpp{..\msw\ole\$D}.obj: + cl @<< +$(CPPFLAGS) /Fo$@ /c /Tp $< +<< + +{..\html}.cpp{..\html\$D}.obj: + cl @<< +$(CPPFLAGS) /Fo$@ /c /Tp $< +<< + +GENERICOBJS= #$ ExpandList("WXGENERICOBJS"); + +# 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= #$ ExpandList("WXNONESSENTIALOBJS"); + +COMMONOBJS = \ + ..\common\$D\y_tab.obj \ + #$ ExpandList("WXCOMMONOBJS"); + +MSWOBJS = #$ ExpandList("WXMSWOBJS"); + +HTMLOBJS = \ + ..\html\$D\htmlcell.obj \ + ..\html\$D\htmlfilter.obj \ + ..\html\$D\htmlhelp.obj \ + ..\html\$D\htmlhelp_io.obj \ + ..\html\$D\htmlparser.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 + +# Add $(NONESSENTIALOBJS) if wanting generic dialogs, PostScript etc. +# Add $(HTMLOBJS) if wanting wxHTML classes +OBJECTS = $(COMMONOBJS) $(GENERICOBJS) $(MSWOBJS) + +# Normal, static library +all: dirs $(DUMMYOBJ) $(OBJECTS) $(PERIPH_TARGET) png zlib xpm jpeg $(LIBTARGET) + +dirs: $(MSWDIR)\$D $(COMMDIR)\$D $(GENDIR)\$D $(OLEDIR)\$D $(HTMLDIR)\$D + + +test: $(MSWDIR)\$D\wave.obj +test2: ..\common\Debug\config.obj + +$D: + mkdir $D + +$(COMMDIR)\$D: + mkdir $(COMMDIR)\$D + +$(MSWDIR)\$D: + mkdir $(MSWDIR)\$D + +$(GENDIR)\$D: + mkdir $(GENDIR)\$D + +$(OLEDIR)\$D: + mkdir $(OLEDIR)\$D + +$(HTMLDIR)\$D: + mkdir $(HTMLDIR)\$D + +# wxWindows library as DLL +dll: + nmake -f makefile.vc all FINAL=$(FINAL) DLL=1 WXMAKINGDLL=1 NEW_WXLIBNAME=$(NEW_WXLIBNAME) + +cleandll: + nmake -f makefile.vc clean FINAL=$(FINAL) DLL=1 WXMAKINGDLL=1 NEW_WXLIBNAME=$(NEW_WXLIBNAME) + +# wxWindows + app as DLL. Only affects main.cpp. +dllapp: + nmake -f makefile.vc all FINAL=$(FINAL) DLL=1 + +# wxWindows + app as DLL, for Netscape plugin - remove DllMain. +dllnp: + nmake -f makefile.vc all NOMAIN=1 FINAL=$(FINAL) DLL=1 + +# Use this to make dummy.obj and generate a PCH. +# You might use the dll target, then the pch target, in order to +# generate a DLL, then a PCH/dummy.obj for compiling your applications with. +# +# Explanation: Normally, when compiling a static version of wx.lib, your dummy.obj/PCH +# are associated with wx.lib. When using a DLL version of wxWindows, however, +# the DLL is compiled without a PCH, so you only need it for compiling the app. +# In fact headers are compiled differently depending on whether a DLL is being made +# or an app is calling the DLL exported functionality (WXDLLEXPORT is different +# in each case) so you couldn't use the same PCH. +pch: + nmake -f makefile.vc pch1 WXUSINGDLL=1 FINAL=$(FINAL) NEW_WXLIBNAME=$(NEW_WXLIBNAME) + +pch1: dirs $(DUMMYOBJ) + echo $(DUMMYOBJ) + +!if "$(WXMAKINGDLL)" != "1" + +### Static library + +$(WXDIR)\lib\$(WXLIBNAME).lib: $D\dummy.obj $(OBJECTS) $(PERIPH_LIBS) + -erase $(LIBTARGET) + $(implib) @<< +-out:$@ +-machine:$(CPU) +$(OBJECTS) $(PERIPH_LIBS) +<< + +!else + +### Update the import library + +$(WXDIR)\lib\$(WXLIBNAME).lib: $(DUMMYOBJ) $(OBJECTS) + $(implib) @<< + -machine:$(CPU) + -def:wx.def + $(DUMMYOBJ) $(OBJECTS) + -out:$(WXDIR)\lib\$(WXLIBNAME).lib +<< + +# Update the dynamic link library +$(WXDIR)\lib\$(WXLIBNAME).dll: $(DUMMYOBJ) $(OBJECTS) $(WXDIR)\lib\$(WXLIBNAME).lib + $(link) @<< + $(LINKFLAGS) + -out:$(WXDIR)\lib\$(WXLIBNAME).dll + $(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 $(WXDIR)\lib\xpm.lib $(WXDIR)\lib\jpeg.lib +<< + +!endif + + +######################################################## +# Windows-specific objects + +$D\dummy.obj: dummy.$(SRCSUFF) $(WXDIR)\include\wx\wx.h $(WXDIR)\include\wx\msw\setup.h + cl $(CPPFLAGS) $(MAKEPRECOMP) /Fo$D\dummy.obj /c /Tp dummy.cpp + +$D\dummydll.obj: dummydll.$(SRCSUFF) $(WXDIR)\include\wx\wx.h $(WXDIR)\include\wx\msw\setup.h + cl @<< +$(CPPFLAGS) $(MAKEPRECOMP) /Fo$D\dummydll.obj /c /Tp dummydll.cpp +<< + +# If taking wxWindows from CVS, setup.h doesn't exist yet. +# Actually the 'if not exist setup.h' test doesn't work +# (copies the file anyway) +# we'll have to comment this rule out. + +# $(WXDIR)\include\wx\msw\setup.h: $(WXDIR)\include\wx\msw\setup0.h +# cd "$(WXDIR)"\include\wx\msw +# if not exist setup.h copy setup0.h setup.h +# cd "$(WXDIR)"\src\msw + +..\common\$D\y_tab.obj: ..\common\y_tab.c ..\common\lex_yy.c + cl @<< +$(CPPFLAGS2) /c ..\common\y_tab.c -DUSE_DEFINE -DYY_USE_PROTOS /Fo$@ +<< + +..\common\y_tab.c: ..\common\dosyacc.c + copy "..\common"\dosyacc.c "..\common"\y_tab.c + +..\common\lex_yy.c: ..\common\doslex.c + copy "..\common"\doslex.c "..\common"\lex_yy.c + +$(OBJECTS): $(WXDIR)/include/wx/setup.h + +..\common\$D\unzip.obj: ..\common\unzip.c + cl @<< +$(CPPFLAGS2) /c $(COMMDIR)\unzip.c /Fo$@ +<< + +# Peripheral components + +png: + cd $(WXDIR)\src\png + nmake -f makefile.vc FINAL=$(FINAL) DLL=$(DLL) WXMAKINGDLL=$(WXMAKINGDLL) + cd $(WXDIR)\src\msw + +clean_png: + cd $(WXDIR)\src\png + nmake -f makefile.vc clean + cd $(WXDIR)\src\msw + +zlib: + cd $(WXDIR)\src\zlib + nmake -f makefile.vc FINAL=$(FINAL) DLL=$(DLL) WXMAKINGDLL=$(WXMAKINGDLL) + cd $(WXDIR)\src\msw + +clean_zlib: + cd $(WXDIR)\src\zlib + nmake -f makefile.vc clean + cd $(WXDIR)\src\msw + +jpeg: + cd $(WXDIR)\src\jpeg + nmake -f makefile.vc FINAL=$(FINAL) DLL=$(DLL) WXMAKINGDLL=$(WXMAKINGDLL) all + cd $(WXDIR)\src\msw + +clean_jpeg: + cd $(WXDIR)\src\jpeg + nmake -f makefile.vc clean + cd $(WXDIR)\src\msw + +xpm: + cd $(WXDIR)\src\xpm + nmake -f makefile.vc FINAL=$(FINAL) DLL=$(DLL) WXMAKINGDLL=$(WXMAKINGDLL) + cd $(WXDIR)\src\msw + +clean_xpm: + cd $(WXDIR)\src\xpm + nmake -f makefile.vc clean + cd $(WXDIR)\src\msw + +rcparser: + cd $(WXDIR)\utils\rcparser\src + nmake -f makefile.vc FINAL=$(FINAL) + cd $(WXDIR)\src\msw + +clean: $(PERIPH_CLEAN_TARGET) clean_png clean_zlib clean_jpeg clean_xpm + -erase $(LIBTARGET) + -erase $(WXDIR)\lib\$(WXLIBNAME).pdb + -erase ..\..\lib\wx200.dll + -erase ..\..\lib\wx200.lib + -erase ..\..\lib\wx200.exp + -erase ..\..\lib\wx200.pdb + -erase ..\..\lib\wx200.ilk + -erase *.pdb + -erase *.sbr + -erase $(WXLIBNAME).pch + -erase $(GENDIR)\$D\*.obj + -erase $(GENDIR)\$D\*.pdb + -erase $(GENDIR)\$D\*.sbr + -erase $(COMMDIR)\$D\*.obj + -erase $(COMMDIR)\$D\*.pdb + -erase $(COMMDIR)\$D\*.sbr + -erase $(COMMDIR)\\y_tab.c + -erase $(COMMDIR)\lex_yy.c + -erase $(MSWDIR)\$D\*.obj + -erase $(MSWDIR)\$D\*.sbr + -erase $(MSWDIR)\$D\*.pdb + -erase $(OLEDIR)\$D\*.obj + -erase $(OLEDIR)\$D\*.sbr + -erase $(OLEDIR)\$D\*.pdb + -rmdir $(D) + -rmdir ole\$(D) + -rmdir ..\generic\$(D) + -rmdir ..\common\$(D) + +cleanall: clean + +# Making documents +docs: allhlp allhtml allpdfrtf +alldocs: docs +hlp: wxhlp portinghlp +wxhlp: $(DOCDIR)/winhelp/wx.hlp +prophlp: $(DOCDIR)/winhelp/prop.hlp +refhlp: $(DOCDIR)/winhelp/techref.hlp +rtf: $(DOCDIR)/winhelp/wx.rtf +proprtf: $(DOCDIR)/winhelp/prop.rtf +pdfrtf: $(DOCDIR)/pdf/wx.rtf +proppdfrtf: $(DOCDIR)/pdf/prop.rtf +refpdfrtf: $(DOCDIR)/pdf/techref.rtf +html: wxhtml portinghtml +wxhtml: $(DOCDIR)\html\wx\wx.htm +htmlhelp: $(DOCDIR)\html\wx\wx.chm +prophtml: $(DOCDIR)\html\proplist\prop.htm +ps: wxps referencps +wxps: $(WXDIR)\docs\ps\wx.ps +propps: $(WXDIR)\docs\ps\prop.ps +referencps: $(WXDIR)\docs\ps\referenc.ps + +portinghtml: $(DOCDIR)\html\porting\port.htm +portingrtf: $(DOCDIR)/winhelp/porting.rtf +portinghlp: $(DOCDIR)/winhelp/porting.hlp +portingpdfrtf: $(DOCDIR)/pdf/porting.rtf +portingps: $(WXDIR)\docs\ps\porting.ps + +allhlp: wxhlp portinghlp prophlp + cd $(WXDIR)\utils\dialoged\src + nmake -f makefile.vc hlp + cd $(THISDIR) + +# cd $(WXDIR)\utils\wxhelp\src +# nmake -f makefile.vc hlp +# cd $(WXDIR)\utils\tex2rtf\src +# nmake -f makefile.vc hlp +# cd $(WXDIR)\utils\wxgraph\src +# nmake -f makefile.vc hlp +# cd $(WXDIR)\utils\wxchart\src +# nmake -f makefile.vc hlp +# cd $(WXDIR)\utils\wxtree\src +# nmake -f makefile.vc hlp +# cd $(WXDIR)\utils\wxbuild\src +# nmake -f makefile.vc hlp +# cd $(WXDIR)\utils\wxgrid\src +# nmake -f makefile.vc hlp + +allhtml: wxhtml portinghtml prophtml + cd $(WXDIR)\utils\dialoged\src + nmake -f makefile.vc html + cd $(THISDIR) + +# nmake -f makefile.vc html +# cd $(WXDIR)\utils\dialoged\src +# nmake -f makefile.vc html +# cd $(WXDIR)\utils\hytext\src +# nmake -f makefile.vc html +# cd $(WXDIR)\utils\wxhelp\src +# nmake -f makefile.vc html +# cd $(WXDIR)\utils\tex2rtf\src +# nmake -f makefile.vc html +# cd $(WXDIR)\utils\wxgraph\src +# nmake -f makefile.vc html +# cd $(WXDIR)\utils\wxchart\src +# nmake -f makefile.vc html +# cd $(WXDIR)\utils\wxtree\src +# nmake -f makefile.vc html + +allps: wxps referencps portingps propps + cd $(WXDIR)\utils\dialoged\src + nmake -f makefile.vc ps + cd $(THISDIR) + +allpdfrtf: pdfrtf portingpdfrtf proppdfrtf + cd $(WXDIR)\utils\dialoged\src + nmake -f makefile.vc pdfrtf + cd $(THISDIR) + +# cd $(WXDIR)\utils\wxhelp\src +# nmake -f makefile.vc ps +# cd $(WXDIR)\utils\tex2rtf\src +# nmake -f makefile.vc ps +# cd $(WXDIR)\utils\wxgraph\src +# nmake -f makefile.vc ps +# cd $(WXDIR)\utils\wxchart\src +# nmake -f makefile.vc ps +# cd $(WXDIR)\utils\wxtree\src +# nmake -f makefile.vc ps +# cd $(THISDIR) + +$(DOCDIR)/winhelp/wx.hlp: $(DOCDIR)/latex/wx/wx.rtf $(DOCDIR)/latex/wx/wx.hpj + cd $(DOCDIR)/latex/wx + -erase wx.ph + hc wx + move wx.hlp $(DOCDIR)\winhelp\wx.hlp + move wx.cnt $(DOCDIR)\winhelp\wx.cnt + cd $(THISDIR) + +$(DOCDIR)/winhelp/porting.hlp: $(DOCDIR)/latex/porting/porting.rtf $(DOCDIR)/latex/porting/porting.hpj + cd $(DOCDIR)/latex/porting + -erase porting.ph + hc porting + move porting.hlp $(DOCDIR)\winhelp\porting.hlp + move porting.cnt $(DOCDIR)\winhelp\porting.cnt + cd $(THISDIR) + +$(DOCDIR)/winhelp/prop.hlp: $(DOCDIR)/latex/proplist/prop.rtf $(DOCDIR)/latex/proplist/prop.hpj + cd $(DOCDIR)/latex/proplist + -erase prop.ph + hc prop + move prop.hlp $(DOCDIR)\winhelp\prop.hlp + move prop.cnt $(DOCDIR)\winhelp\prop.cnt + cd $(THISDIR) + +$(DOCDIR)/winhelp/techref.hlp: $(DOCDIR)/latex/techref/techref.rtf $(DOCDIR)/latex/techref/techref.hpj + cd $(DOCDIR)/latex/techref + -erase techref.ph + hc techref + move techref.hlp $(DOCDIR)\winhelp\techref.hlp + move techref.cnt $(DOCDIR)\winhelp\techref.cnt + cd $(THISDIR) + +$(DOCDIR)/latex/wx/wx.rtf: $(DOCDIR)/latex/wx/classes.tex $(DOCDIR)/latex/wx/body.tex $(DOCDIR)/latex/wx/topics.tex $(DOCDIR)/latex/wx/manual.tex + cd $(DOCDIR)\latex\wx + -start $(WAITFLAG) tex2rtf $(DOCDIR)/latex/wx/manual.tex $(DOCDIR)/latex/wx/wx.rtf -twice -winhelp + cd $(THISDIR) + +$(DOCDIR)/latex/porting/porting.rtf: $(DOCDIR)/latex/porting/porting.tex + cd $(DOCDIR)\latex\porting + -start $(WAITFLAG) tex2rtf $(DOCDIR)/latex/porting/porting.tex $(DOCDIR)/latex/porting/porting.rtf -twice -winhelp + cd $(THISDIR) + +$(DOCDIR)/latex/proplist/prop.rtf: $(DOCDIR)/latex/proplist/prop.tex $(DOCDIR)/latex/proplist/body.tex $(DOCDIR)/latex/proplist/classes.tex $(DOCDIR)/latex/proplist/changes.tex + cd $(DOCDIR)\latex\proplist + -start $(WAITFLAG) tex2rtf $(DOCDIR)/latex/proplist/prop.tex $(DOCDIR)/latex/proplist/prop.rtf -twice -winhelp + cd $(THISDIR) + +$(DOCDIR)/latex/techref/techref.rtf: $(DOCDIR)/latex/techref/techref.tex + cd $(DOCDIR)\latex\techref + -start $(WAITFLAG) tex2rtf $(DOCDIR)/latex/techref/techref.tex $(DOCDIR)/latex/techref/techref.rtf -twice -winhelp + cd $(THISDIR) + +$(DOCDIR)/pdf/wx.rtf: $(DOCDIR)/latex/wx/classes.tex $(DOCDIR)/latex/wx/body.tex $(DOCDIR)/latex/wx/topics.tex $(DOCDIR)/latex/wx/manual.tex + cd $(DOCDIR)\latex\wx + -copy *.bmp *.wmf $(DOCDIR)\pdf + -start $(WAITFLAG) tex2rtf $(DOCDIR)/latex/wx/manual.tex $(DOCDIR)/pdf/wx.rtf -twice -rtf + cd $(THISDIR) + +$(DOCDIR)/pdf/porting.rtf: $(DOCDIR)/latex/porting/porting.tex + cd $(DOCDIR)\latex\porting + -copy *.bmp *.wmf $(DOCDIR)\pdf + -start $(WAITFLAG) tex2rtf $(DOCDIR)/latex/porting/porting.tex $(DOCDIR)/pdf/porting.rtf -twice -rtf + cd $(THISDIR) + +$(DOCDIR)/pdf/prop.rtf: $(DOCDIR)/latex/proplist/prop.tex $(DOCDIR)/latex/proplist/body.tex $(DOCDIR)/latex/proplist/classes.tex $(DOCDIR)/latex/proplist/changes.tex + cd $(DOCDIR)\latex\proplist + -copy *.bmp *.wmf $(DOCDIR)\pdf + -start $(WAITFLAG) tex2rtf $(DOCDIR)/latex/proplist/prop.tex $(DOCDIR)/pdf/prop.rtf -twice -rtf + cd $(THISDIR) + +$(DOCDIR)/pdf/techref.rtf: $(DOCDIR)/latex/techref/techref.tex + cd $(DOCDIR)\latex\techref + -copy *.bmp *.wmf $(DOCDIR)\pdf + -start $(WAITFLAG) tex2rtf $(DOCDIR)/latex/techref/techref.tex $(DOCDIR)/pdf/techref.rtf -twice -rtf + cd $(THISDIR) + +$(DOCDIR)\html\wx\wx.htm: $(DOCDIR)\latex\wx\classes.tex $(DOCDIR)\latex\wx\body.tex $(DOCDIR)/latex/wx/topics.tex $(DOCDIR)\latex\wx\manual.tex + cd $(DOCDIR)\latex\wx + -mkdir $(DOCDIR)\html\wx + -start $(WAITFLAG) tex2rtf $(DOCDIR)\latex\wx\manual.tex $(DOCDIR)\html\wx\wx.htm -twice -html + -erase $(DOCDIR)\html\wx\*.con + -erase $(DOCDIR)\html\wx\*.ref + -erase $(DOCDIR)\latex\wx\*.con + -erase $(DOCDIR)\latex\wx\*.ref + cd $(THISDIR) + +$(DOCDIR)\html\wx\wx.chm : $(DOCDIR)\html\wx\wx.htm $(DOCDIR)\html\wx\wx.hhp + cd $(DOCDIR)\html\wx + -hhc wx.hhp + cd $(THISDIR) + + +$(DOCDIR)\html\porting\port.htm: $(DOCDIR)\latex\porting\porting.tex + cd $(DOCDIR)\latex\porting + -mkdir $(DOCDIR)\html\porting + -start $(WAITFLAG) tex2rtf $(DOCDIR)\latex\porting\porting.tex $(DOCDIR)\html\porting\port.htm -twice -html + -erase $(DOCDIR)\html\porting\*.con + -erase $(DOCDIR)\html\porting\*.ref + -erase $(DOCDIR)\latex\porting\*.con + -erase $(DOCDIR)\latex\porting\*.ref + cd $(THISDIR) + +$(DOCDIR)\html\proplist\prop.htm: $(DOCDIR)\latex\proplist\prop.tex $(DOCDIR)\latex\proplist\body.tex $(DOCDIR)\latex\proplist\classes.tex $(DOCDIR)\latex\proplist\changes.tex + cd $(DOCDIR)\latex\proplist + -mkdir $(DOCDIR)\html\proplist + -start $(WAITFLAG) tex2rtf $(DOCDIR)\latex\proplist\prop.tex $(DOCDIR)\html\proplist\prop.htm -twice -html + -erase $(DOCDIR)\html\proplist\*.con + -erase $(DOCDIR)\html\proplist\*.ref + -erase $(DOCDIR)\latex\proplist\*.con + -erase $(DOCDIR)\latex\proplist\*.ref + cd $(THISDIR) + +$(WXDIR)\docs\latex\wx\manual.dvi: $(DOCDIR)/latex/wx/body.tex $(DOCDIR)/latex/wx/manual.tex + cd $(WXDIR)\docs\latex\wx + -latex manual + -latex manual + -makeindx manual + -bibtex manual + -latex manual + -latex manual + cd $(THISDIR) + +$(WXDIR)\docs\latex\porting\porting.dvi: $(DOCDIR)/latex/porting/porting.tex + cd $(WXDIR)\docs\latex\porting + -latex porting + -latex porting + -makeindx porting + -bibtex porting + -latex porting + -latex porting + cd $(THISDIR) + +$(WXDIR)\docs\ps\wx.ps: $(WXDIR)\docs\latex\wx\manual.dvi + cd $(WXDIR)\docs\latex\wx + -dvips32 -o wx.ps manual + move wx.ps $(WXDIR)\docs\ps\wx.ps + cd $(THISDIR) + +$(WXDIR)\docs\ps\porting.ps: $(WXDIR)\docs\latex\porting\porting.dvi + cd $(WXDIR)\docs\latex\porting + -dvips32 -o porting.ps porting + move porting.ps $(WXDIR)\docs\ps\porting.ps + cd $(THISDIR) + +$(WXDIR)\docs\latex\wx\referenc.dvi: $(DOCDIR)/latex/wx/classes.tex $(DOCDIR)/latex/wx/topics.tex $(DOCDIR)/latex/wx/referenc.tex + cd $(WXDIR)\docs\latex\wx + -latex referenc + -latex referenc + -makeindx referenc + -bibtex referenc + -latex referenc + -latex referenc + cd $(THISDIR) + +$(WXDIR)\docs\ps\referenc.ps: $(WXDIR)\docs\latex\wx\referenc.dvi + cd $(WXDIR)\docs\latex\wx + -dvips32 -o referenc.ps referenc + move referenc.ps $(WXDIR)\docs\ps\referenc.ps + cd $(THISDIR) + +# In order to force document reprocessing +touchmanual: + -touch $(WXDIR)\docs\latex\wx\manual.tex + +updatedocs: touchmanual alldocs + +# Start Word, running the GeneratePDF macro. MakeManual.dot should be in the +# Office StartUp folder, and PDFMaker should be installed. +updatepdf: # touchmanual pdfrtf + start $(WAITFLAG) "winword d:\wx2\wxWindows\docs\latex\pdf\wx.rtf /mGeneratePDF" + diff --git a/distrib/msw/tmake/vc6.t b/distrib/msw/tmake/vc6.t new file mode 100644 index 0000000000..46e966fd40 --- /dev/null +++ b/distrib/msw/tmake/vc6.t @@ -0,0 +1,146 @@ +#!############################################################################# +#! File: vc6.t +#! Purpose: tmake template file from which wxWindows.dsp is generated by running +#! tmake -t vc6 wxwin.pro -o wxWindows.dsp +#! Author: Vadim Zeitlin +#! Created: 14.07.99 +#! Version: $Id$ +#!############################################################################# +#${ + #! include the code which parses filelist.txt file and initializes + #! %wxCommon, %wxGeneric and %wxMSW hashes. + IncludeTemplate("filelist.t"); + + #! now transform these hashes into $project tags + foreach $file (sort keys %wxGeneric) { + next if $wxGeneric{$file} =~ /\b(PS|G|16|U)\b/; + $project{"WXGENERICSRCS"} .= $file . " " + } + + foreach $file (sort keys %wxCommon) { + next if $wxCommon{$file} =~ /\b16\b/; + + my $tag = $file =~ /\.c$/ ? "WXCSRCS" : "WXCOMMONSRCS"; + $project{$tag} .= $file . " " + } + + foreach $file (sort keys %wxMSW) { + next if $wxMSW{$file} =~ /\b16\b/; + + my $tag = $wxMSW{$file} =~ /\bO\b/ ? "WXOLESRCS" : "WXMSWSRCS"; + $project{$tag} .= $file . " " + } +#$} +# Microsoft Developer Studio Project File - Name="wxWindows" - Package Owner=<4> +# Microsoft Developer Studio Generated Build File, Format Version 6.00 +# ** DO NOT EDIT ** + +# TARGTYPE "Win32 (x86) Static Library" 0x0104 + +CFG=wxWindows - Win32 Debug +!MESSAGE This is not a valid makefile. To build this project using NMAKE, +!MESSAGE use the Export Makefile command and run +!MESSAGE +!MESSAGE NMAKE /f "wxWindows.mak". +!MESSAGE +!MESSAGE You can specify a configuration when running NMAKE +!MESSAGE by defining the macro CFG on the command line. For example: +!MESSAGE +!MESSAGE NMAKE /f "wxWindows.mak" CFG="wxWindows - Win32 Debug" +!MESSAGE +!MESSAGE Possible choices for configuration are: +!MESSAGE +!MESSAGE "wxWindows - Win32 Release" (based on "Win32 (x86) Static Library") +!MESSAGE "wxWindows - Win32 Debug" (based on "Win32 (x86) Static Library") +!MESSAGE + +# Begin Project +# PROP AllowPerConfigDependencies 0 +# PROP Scc_ProjName "" +# PROP Scc_LocalPath "" +CPP=cl.exe +RSC=rc.exe + +!IF "$(CFG)" == "wxWindows - Win32 Release" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release" +# PROP BASE Intermediate_Dir "Release" +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release" +# PROP Intermediate_Dir "Release" +# PROP Target_Dir "" +# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /YX /FD /c +# ADD CPP /nologo /W3 /Zi /O2 /I "$(wx)\include" /I "$(wx)\src\zlib" /D "NDEBUG" /D WIN95=1 /D "__WIN95__" /D "WIN32" /D "_WIN32" /D WINVER=0x400 /D "__WINDOWS__" /D "__WXMSW__" /D "__WIN32__" /Yu"wx/wxprec.h" /FD /c +# ADD BASE RSC /l 0x409 +# ADD RSC /l 0x409 +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LIB32=link.exe -lib +# ADD BASE LIB32 /nologo +# ADD LIB32 /nologo + +!ELSEIF "$(CFG)" == "wxWindows - Win32 Debug" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug" +# PROP BASE Intermediate_Dir "Debug" +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug" +# PROP Intermediate_Dir "Debug" +# PROP Target_Dir "" +# ADD BASE CPP /nologo /W3 /GX /Z7 /Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /YX /FD /c +# ADD CPP /nologo /W4 /Zi /Od /I "$(wx)\include" /I "$(wx)\src\zlib" /D "_DEBUG" /D DEBUG=1 /D WXDEBUG=1 /D "__WXDEBUG__" /D "__WIN95__" /D "WIN32" /D "_WIN32" /D WINVER=0x400 /D "__WINDOWS__" /D "__WIN32__" /D "__WXMSW__" /Fr /Yu"wx/wxprec.h" /FD /c +# ADD BASE RSC /l 0x409 +# ADD RSC /l 0x409 +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo /o"lib/wxWindows.bsc" +LIB32=link.exe -lib +# ADD BASE LIB32 /nologo +# ADD LIB32 /nologo + +!ENDIF + +# Begin Target + +# Name "wxWindows - Win32 Release" +# Name "wxWindows - Win32 Debug" + +# PROP Default_Filter "" +# Begin Source File + +SOURCE=.\src\msw\dummy.cpp +# ADD CPP /Yc"wx/wxprec.h" +# End Source File +#$ ExpandGlue("WXMSWSRCS", "# Begin Source File\n\nSOURCE=.\\src\\msw\\", "\n# End Source File\n# Begin Source File\n\nSOURCE=.\\src\\msw\\", "\n# End Source File\n"); +#$ ExpandGlue("WXOLESRCS", "# Begin Source File\n\nSOURCE=.\\src\\msw\\ole\\", "\n# End Source File\n# Begin Source File\n\nSOURCE=.\\src\\msw\\ole\\", "\n# End Source File\n"); +#$ ExpandGlue("WXGENERICSRCS", "# Begin Source File\n\nSOURCE=.\\src\\generic\\", "\n# End Source File\n# Begin Source File\n\nSOURCE=.\\src\\generic\\", "\n# End Source File\n"); +#$ ExpandGlue("WXCOMMONSRCS", "# Begin Source File\n\nSOURCE=.\\src\\common\\", "\n# End Source File\n# Begin Source File\n\nSOURCE=.\\src\\common\\", "\n# End Source File\n"); +#$ ExpandGlue("WXCSRCS", "# Begin Source File\n\nSOURCE=.\\src\\common\\", "\n# SUBTRACT CPP /YX /Yc /Yu\n# End Source File\n# Begin Source File\n\nSOURCE=.\\src\\common\\", "\n# SUBTRACT CPP /YX /Yc /Yu\n# End Source File\n"); + +# Begin Source File + +SOURCE=.\src\common\y_tab.c + +!IF "$(CFG)" == "wxWindows - Win32 Release" + +# SUBTRACT CPP /YX /Yc /Yu + +!ELSEIF "$(CFG)" == "wxWindows - Win32 Debug" + +# ADD CPP /W1 +# SUBTRACT CPP /YX /Yc /Yu + +!ENDIF + +# End Source File +# End Target +# End Project diff --git a/distrib/msw/tmake/wat.t b/distrib/msw/tmake/wat.t new file mode 100644 index 0000000000..4fb9b6452a --- /dev/null +++ b/distrib/msw/tmake/wat.t @@ -0,0 +1,321 @@ +#!############################################################################# +#! File: wat.t +#! Purpose: tmake template file from which makefile.wat is generated by running +#! tmake -t wat wxwin.pro -o makefile.wat +#! Author: Vadim Zeitlin +#! Created: 14.07.99 +#! Version: $Id$ +#!############################################################################# + +#${ + #! include the code which parses filelist.txt file and initializes + #! %wxCommon, %wxGeneric and %wxMSW hashes. + IncludeTemplate("filelist.t"); + + #! now transform these hashes into $project tags + foreach $file (sort keys %wxGeneric) { + my $tag = ""; + if ( $wxGeneric{$file} =~ /\b(PS|G|16|U)\b/ ) { + $tag = "WXNONESSENTIALOBJS"; + } + else { + $tag = "WXGENERICOBJS"; + } + + $file =~ s/cp?p?$/obj/; + $project{$tag} .= $file . " " + } + + foreach $file (sort keys %wxCommon) { + #! doesn't compile, apparently + next if $file =~ /^imagjpeg\./; + + $file =~ s/cp?p?$/obj/; + $project{"WXCOMMONOBJS"} .= $file . " " + } + + foreach $file (sort keys %wxMSW) { + #! these files don't compile + next if $file =~ /^pnghand\./; + + next if $wxGeneric{$file} =~ /\b16\b/; + + $file =~ s/cp?p?$/obj/; + $project{"WXMSWOBJS"} .= $file . " " + } +#$} + +# This file was automatically generated by tmake at #$ Now() +# DO NOT CHANGE THIS FILE, YOUR CHANGES WILL BE LOST! CHANGE WAT.T! + +#! an attempt to embed '#' directly in the string somehow didn't work... +#$ $text = chr(35) . '!/binb/wmake.exe'; + +# +# File: makefile.wat +# Author: Julian Smart +# Created: 1998 +# +# Makefile : Builds wxWindows library for Watcom C++, WIN32 + +WXDIR = ..\.. + +!include $(WXDIR)\src\makewat.env + +WXLIB = $(WXDIR)\lib + +LIBTARGET = $(WXLIB)\wx.lib +DUMMY=dummydll +# ODBCLIB = ..\..\contrib\odbc\odbc32.lib + +EXTRATARGETS = xpm png zlib +EXTRATARGETSCLEAN = clean_xpm clean_png clean_zlib +GENDIR=$(WXDIR)\src\generic +COMMDIR=$(WXDIR)\src\common +XPMDIR=$(WXDIR)\src\xpm +OLEDIR=ole +MSWDIR=$(WXDIR)\src\msw + +DOCDIR = $(WXDIR)\docs + +GENERICOBJS= #$ ExpandGlue("WXGENERICOBJS", "", " &\n\t") + +# 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= #$ ExpandGlue("WXNONESSENTIALOBJS", "", " &\n\t") + +COMMONOBJS = & + y_tab.obj & + #$ ExpandGlue("WXCOMMONOBJS", "", " &\n\t") + +MSWOBJS = #$ ExpandGlue("WXMSWOBJS", "", " &\n\t") + +# Add $(NONESSENTIALOBJS) if wanting generic dialogs, PostScript etc. +OBJECTS = $(COMMONOBJS) $(GENERICOBJS) $(MSWOBJS) + +all: $(OBJECTS) $(LIBTARGET) $(EXTRATARGETS) + +$(LIBTARGET) : $(OBJECTS) + %create tmp.lbc + @for %i in ( $(OBJECTS) ) do @%append tmp.lbc +%i + wlib /b /c /n /p=512 $^@ @tmp.lbc + +#test : $(OBJECTS) +# %create tmp.lbc +# @for %i in ( $(OBJECTS) ) do @%append tmp.lbc +%i +# wlib /b /c /n /p=512 $^@ @tmp.lbc + + +clean: .SYMBOLIC $(EXTRATARGETSCLEAN) + -erase *.obj + -erase $(LIBTARGET) + -erase *.pch + -erase *.err + -erase *.lbc + +cleanall: clean + +#${ + $_ = $project{"WXMSWOBJS"}; + my @objs = split; + foreach (@objs) { + $text .= $_ . ': $('; + s/\.obj$//; + if ( $wxMSW{$_} =~ /\bO\b/ ) { + $text .= 'OLEDIR)\\'; + } else { + $text .= 'MSWDIR)\\'; + } + $text .= $_ . ".cpp\n" . + ' *$(CCC) $(CPPFLAGS) $(IFLAGS) $<' . "\n\n"; + } +#$} + +######################################################## +# Common objects (always compiled) + +#${ + $_ = $project{"WXCOMMONOBJS"}; + my @objs = split; + foreach (@objs) { + $text .= $_; + s/\.obj$//; + $text .= ': $(COMMDIR)\\'; + $text .= $_ . ".cpp\n" . + ' *$(CCC) $(CPPFLAGS) $(IFLAGS) $<' . "\n\n"; + } +#$} + +y_tab.obj: $(COMMDIR)\y_tab.c $(COMMDIR)\lex_yy.c + *$(CC) $(CPPFLAGS) $(IFLAGS) -DUSE_DEFINE $(COMMDIR)\y_tab.c + +# *$(CC) $(CPPFLAGS) $(IFLAGS) -DUSE_DEFINE -DYY_USE_PROTOS $(COMMDIR)\y_tab.c + +$(COMMDIR)\y_tab.c: $(COMMDIR)\dosyacc.c + copy $(COMMDIR)\dosyacc.c $(COMMDIR)\y_tab.c + +$(COMMDIR)\lex_yy.c: $(COMMDIR)\doslex.c + copy $(COMMDIR)\doslex.c $(COMMDIR)\lex_yy.c + +######################################################## +# Generic objects (not always compiled, depending on +# whether platforms have native implementations) + +#${ + $_ = $project{"WXGENERICOBJS"}; + my @objs = split; + foreach (@objs) { + $text .= $_; + s/\.obj$//; + $text .= ': $(GENDIR)\\'; + $text .= $_ . ".cpp\n" . + ' *$(CCC) $(CPPFLAGS) $(IFLAGS) $<' . "\n\n"; + } +#$} + +crbuffri.obj: $(XPMDIR)\crbuffri.c + *$(CC) $(CPPFLAGS) $(IFLAGS) $< + +crbuffrp.obj: $(XPMDIR)\crbuffrp.c + *$(CC) $(CPPFLAGS) $(IFLAGS) $< + +crdatfri.obj: $(XPMDIR)\crdatfri.c + *$(CC) $(CPPFLAGS) $(IFLAGS) $< + +crdatfrp.obj: $(XPMDIR)\crdatfrp.c + *$(CC) $(CPPFLAGS) $(IFLAGS) $< + +create.obj: $(XPMDIR)\create.c + *$(CC) $(CPPFLAGS) $(IFLAGS) $< + +crifrbuf.obj: $(XPMDIR)\crifrbuf.c + *$(CC) $(CPPFLAGS) $(IFLAGS) $< + +crifrdat.obj: $(XPMDIR)\crifrdat.c + *$(CC) $(CPPFLAGS) $(IFLAGS) $< + +crpfrbuf.obj: $(XPMDIR)\crpfrbuf.c + *$(CC) $(CPPFLAGS) $(IFLAGS) $< + +crpfrdat.obj: $(XPMDIR)\crpfrdat.c + *$(CC) $(CPPFLAGS) $(IFLAGS) $< + +# TODO: what to do about this clash of filename???? +#data.obj: $(XPMDIR)\data.c +# *$(CC) $(CPPFLAGS) $(IFLAGS) $< + +hashtab.obj: $(XPMDIR)\hashtab.c + *$(CC) $(CPPFLAGS) $(IFLAGS) $< + +misc.obj: $(XPMDIR)\misc.c + *$(CC) $(CPPFLAGS) $(IFLAGS) $< + +parse.obj: $(XPMDIR)\parse.c + *$(CC) $(CPPFLAGS) $(IFLAGS) $< + +rdftodat.obj: $(XPMDIR)\rdftodat.c + *$(CC) $(CPPFLAGS) $(IFLAGS) $< + +rdftoi.obj: $(XPMDIR)\rdftoi.c + *$(CC) $(CPPFLAGS) $(IFLAGS) $< + +rdftop.obj: $(XPMDIR)\rdftop.c + *$(CC) $(CPPFLAGS) $(IFLAGS) $< + +rgb.obj: $(XPMDIR)\rgb.c + *$(CC) $(CPPFLAGS) $(IFLAGS) $< + +scan.obj: $(XPMDIR)\scan.c + *$(CC) $(CPPFLAGS) $(IFLAGS) $< + +simx.obj: $(XPMDIR)\simx.c + *$(CC) $(CPPFLAGS) $(IFLAGS) $< + +wrffrdat.obj: $(XPMDIR)\wrffrdat.c + *$(CC) $(CPPFLAGS) $(IFLAGS) $< + +wrffri.obj: $(XPMDIR)\wrffri.c + *$(CC) $(CPPFLAGS) $(IFLAGS) $< + +wrffrp.obj: $(XPMDIR)\wrffrp.c + *$(CC) $(CPPFLAGS) $(IFLAGS) $< + +OBJ1 = adler32$(O) compress$(O) crc32$(O) gzio$(O) uncompr$(O) deflate$(O) \ + trees$(O) +OBJ2 = zutil$(O) inflate$(O) infblock$(O) inftrees$(O) infcodes$(O) \ + infutil$(O) inffast$(O) + +adler32.obj: adler32.c zutil.h zlib.h zconf.h + $(CC) -c $(CFLAGS) $*.c + +compress.obj: compress.c zlib.h zconf.h + $(CC) -c $(CFLAGS) $*.c + +crc32.obj: crc32.c zutil.h zlib.h zconf.h + $(CC) -c $(CFLAGS) $*.c + +deflate.obj: deflate.c deflate.h zutil.h zlib.h zconf.h + $(CC) -c $(CFLAGS) $*.c + +gzio.obj: gzio.c zutil.h zlib.h zconf.h + $(CC) -c $(CFLAGS) $*.c + +infblock.obj: infblock.c zutil.h zlib.h zconf.h infblock.h inftrees.h\ + infcodes.h infutil.h + $(CC) -c $(CFLAGS) $*.c + +infcodes.obj: infcodes.c zutil.h zlib.h zconf.h inftrees.h infutil.h\ + infcodes.h inffast.h + $(CC) -c $(CFLAGS) $*.c + +inflate.obj: inflate.c zutil.h zlib.h zconf.h infblock.h + $(CC) -c $(CFLAGS) $*.c + +inftrees.obj: inftrees.c zutil.h zlib.h zconf.h inftrees.h + $(CC) -c $(CFLAGS) $*.c + +infutil.obj: infutil.c zutil.h zlib.h zconf.h inftrees.h infutil.h + $(CC) -c $(CFLAGS) $*.c + +inffast.obj: inffast.c zutil.h zlib.h zconf.h inftrees.h infutil.h inffast.h + $(CC) -c $(CFLAGS) $*.c + +trees.obj: trees.c deflate.h zutil.h zlib.h zconf.h + $(CC) -c $(CFLAGS) $*.c + +uncompr.obj: uncompr.c zlib.h zconf.h + $(CC) -c $(CFLAGS) $*.c + +zutil.obj: zutil.c zutil.h zlib.h zconf.h + $(CC) -c $(CFLAGS) $*.c + +xpm: .SYMBOLIC + cd $(WXDIR)\src\xpm + wmake -f makefile.wat all + cd $(WXDIR)\src\msw + +clean_xpm: .SYMBOLIC + cd $(WXDIR)\src\xpm + wmake -f makefile.wat clean + cd $(WXDIR)\src\msw + +png: .SYMBOLIC + cd $(WXDIR)\src\png + wmake -f makefile.wat all + cd $(WXDIR)\src\msw + +clean_png: .SYMBOLIC + cd $(WXDIR)\src\png + wmake -f makefile.wat clean + cd $(WXDIR)\src\msw + +zlib: .SYMBOLIC + cd $(WXDIR)\src\zlib + wmake -f makefile.wat all + cd $(WXDIR)\src\msw + +clean_zlib: .SYMBOLIC + cd $(WXDIR)\src\zlib + wmake -f makefile.wat clean + cd $(WXDIR)\src\msw + -- 2.45.2