X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/2662e49e09dcdddd8c0c571e70893bc702449e93..afc94fa6b43722d604017798a767fa84ef883b47:/distrib/msw/tmake/g95.t diff --git a/distrib/msw/tmake/g95.t b/distrib/msw/tmake/g95.t index 1552732d17..64d65ba3b1 100644 --- a/distrib/msw/tmake/g95.t +++ b/distrib/msw/tmake/g95.t @@ -2,11 +2,10 @@ #! 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 +#! Author: Vadim Zeitlin, Robert Roebling, Julian Smart #! Created: 14.07.99 #! Version: $Id$ #!############################################################################# - #${ #! include the code which parses filelist.txt file and initializes #! %wxCommon, %wxGeneric and %wxMSW hashes. @@ -17,7 +16,7 @@ #! native wxDirDlg can't be compiled due to GnuWin32/OLE limitations, #! so take the generic version if ( $wxGeneric{$file} =~ /\b(PS|G|U|16)\b/ ) { - next unless $file =~ /^dirdlgg\./; + next #! unless $file =~ /^dirdlgg\./; } $file =~ s/cp?p?$/\$(OBJSUFF)/; @@ -28,90 +27,197 @@ next if $wxCommon{$file} =~ /\b(16)\b/; #! needs extra files (sql*.h) so not compiled by default. - next if $file =~ /^odbc\./; + #! next if $file =~ /^odbc\./; - $file =~ s/cp?p?$/\$(OBJSUFF)/; - $project{"WXCOMMONOBJS"} .= '$(COMMDIR)/' . $file . " " + if ( $file =~ /^odbc\./ ) + { + $file =~ s/cp?p?$/\$(OBJSUFF)/; + $project{"ADVANCEDOBJS"} .= '$(COMMDIR)/' . $file . " " + } + else + { + $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|16)\b/; - #! native wxDirDlg can't be compiled due to GnuWin32/OLE limitations, next if $file =~ /^dirdlg\./; + next if $wxMSW{$file} =~ /\b(16)\b/; + + #! Mingw32 doesn't have the OLE headers and has some troubles with + #! socket code, so put in ADVANCEDOBJS + if ( $wxMSW{$file} =~ /\b(O)\b/ ) + { + $file =~ s/cp?p?$/\$(OBJSUFF)/; + $project{"ADVANCEDOBJS"} .= '$(MSWDIR)/ole/' . $file . " " + } + else + { + $file =~ s/cp?p?$/\$(OBJSUFF)/; + $project{"WXMSWOBJS"} .= '$(MSWDIR)/' . $file . " " + } + + } + + foreach $file (sort keys %wxHTML) { $file =~ s/cp?p?$/\$(OBJSUFF)/; - $project{"WXMSWOBJS"} .= $file . " " + $project{"WXHTMLOBJS"} .= '$(HTMLDIR)/' . $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 +# File: makefile.g95 +# Author: Julian Smart, Robert Roebling, Vadim Zeitlin # Created: 1993 -# Updated: -# Copyright:(c) 1993, AIAI, University of Edinburgh -# -# "@(#)makefile.unx 1.2 5/9/94" +# Updated: 1999 +# Copyright:(c) 1993, AIAI, University of Edinburgh, +# Copyright:(c) 1999, Vadim Zeitlin +# Copyright:(c) 1999, Robert Roebling # # Makefile for libwx.a # Replace this with your own path if necessary WXDIR = ../.. -# All common UNIX compiler flags and options are now in +# All common 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=. +GENDIR = $(WXDIR)/src/generic +COMMDIR = $(WXDIR)/src/common +HTMLDIR = $(WXDIR)/src/html +XPMDIR = $(WXDIR)/src/xpm +PNGDIR = $(WXDIR)/src/png +JPEGDIR = $(WXDIR)/src/jpeg +ZLIBDIR = $(WXDIR)/src/zlib +OLEDIR = $(WXDIR)/src/msw/ole +MSWDIR = $(WXDIR)/src/msw -DOCDIR = $(WXDIR)\docs +PNGLIB = $(WXDIR)/lib/libpng.a +ZLIBLIB = $(WXDIR)/lib/libzlib.a +JPEGLIB = $(WXDIR)/lib/libjpeg.a -GENERICOBJS= #$ ExpandList("WXGENERICOBJS"); +DOCDIR = $(WXDIR)\docs -COMMONOBJS = \ +# Only use the WIN32 wxDirDialog if we have a recent +# version of Mingw32 +ifeq ($(MINGW32),1) + ifeq ($(MINGW32VERSION),2.95) + DIRDLGOBJ = $(MSWDIR)/dirdlg.$(OBJSUFF) + else + DIRDLGOBJ = $(GENDIR)/dirdlgg.$(OBJSUFF) + endif +else + DIRDLGOBJ = $(GENDIR)/dirdlgg.$(OBJSUFF) +endif + +GENERICOBJS = \ + #$ ExpandList("WXGENERICOBJS"); + +COMMONOBJS = \ $(COMMDIR)/y_tab.$(OBJSUFF) \ #$ ExpandList("WXCOMMONOBJS"); -MSWOBJS = #$ ExpandList("WXMSWOBJS"); +HTMLOBJS = \ + #$ ExpandList("WXHTMLOBJS"); + +MSWOBJS = \ + #$ ExpandList("WXMSWOBJS"); + +ADVANCEDOBJS = \ + #$ ExpandList("ADVANCEDOBJS"); + +ZLIBOBJS = \ + $(ZLIBDIR)/adler32.$(OBJSUFF) \ + $(ZLIBDIR)/compress.$(OBJSUFF) \ + $(ZLIBDIR)/crc32.$(OBJSUFF) \ + $(ZLIBDIR)/gzio.$(OBJSUFF) \ + $(ZLIBDIR)/uncompr.$(OBJSUFF) \ + $(ZLIBDIR)/deflate.$(OBJSUFF) \ + $(ZLIBDIR)/trees.$(OBJSUFF) \ + $(ZLIBDIR)/zutil.$(OBJSUFF) \ + $(ZLIBDIR)/inflate.$(OBJSUFF) \ + $(ZLIBDIR)/infblock.$(OBJSUFF) \ + $(ZLIBDIR)/inftrees.$(OBJSUFF) \ + $(ZLIBDIR)/infcodes.$(OBJSUFF) \ + $(ZLIBDIR)/infutil.$(OBJSUFF) \ + $(ZLIBDIR)/inffast.$(OBJSUFF) + +PNGOBJS = \ + $(PNGDIR)/png.$(OBJSUFF) \ + $(PNGDIR)/pngread.$(OBJSUFF) \ + $(PNGDIR)/pngrtran.$(OBJSUFF) \ + $(PNGDIR)/pngrutil.$(OBJSUFF) \ + $(PNGDIR)/pngpread.$(OBJSUFF) \ + $(PNGDIR)/pngtrans.$(OBJSUFF) \ + $(PNGDIR)/pngwrite.$(OBJSUFF) \ + $(PNGDIR)/pngwtran.$(OBJSUFF) \ + $(PNGDIR)/pngwutil.$(OBJSUFF) \ + $(PNGDIR)/pngerror.$(OBJSUFF) \ + $(PNGDIR)/pngmem.$(OBJSUFF) \ + $(PNGDIR)/pngwio.$(OBJSUFF) \ + $(PNGDIR)/pngrio.$(OBJSUFF) \ + $(PNGDIR)/pngget.$(OBJSUFF) \ + $(PNGDIR)/pngset.$(OBJSUFF) + + +JPEGOBJS = \ + $(JPEGDIR)/jcomapi.$(OBJSUFF) \ + $(JPEGDIR)/jutils.$(OBJSUFF) \ + $(JPEGDIR)/jerror.$(OBJSUFF) \ + $(JPEGDIR)/jmemmgr.$(OBJSUFF) \ + $(JPEGDIR)/jmemnobs.$(OBJSUFF) \ + $(JPEGDIR)/jcapimin.$(OBJSUFF) \ + $(JPEGDIR)/jcapistd.$(OBJSUFF) \ + $(JPEGDIR)/jctrans.$(OBJSUFF) \ + $(JPEGDIR)/jcparam.$(OBJSUFF) \ + $(JPEGDIR)/jdatadst.$(OBJSUFF) \ + $(JPEGDIR)/jcinit.$(OBJSUFF) \ + $(JPEGDIR)/jcmaster.$(OBJSUFF) \ + $(JPEGDIR)/jcmarker.$(OBJSUFF) \ + $(JPEGDIR)/jcmainct.$(OBJSUFF) \ + $(JPEGDIR)/jcprepct.$(OBJSUFF) \ + $(JPEGDIR)/jccoefct.$(OBJSUFF) \ + $(JPEGDIR)/jccolor.$(OBJSUFF) \ + $(JPEGDIR)/jcsample.$(OBJSUFF) \ + $(JPEGDIR)/jchuff.$(OBJSUFF) \ + $(JPEGDIR)/jcphuff.$(OBJSUFF) \ + $(JPEGDIR)/jcdctmgr.$(OBJSUFF) \ + $(JPEGDIR)/jfdctfst.$(OBJSUFF) \ + $(JPEGDIR)/jfdctflt.$(OBJSUFF) \ + $(JPEGDIR)/jfdctint.$(OBJSUFF) \ + $(JPEGDIR)/jdapimin.$(OBJSUFF) \ + $(JPEGDIR)/jdapistd.$(OBJSUFF) \ + $(JPEGDIR)/jdtrans.$(OBJSUFF) \ + $(JPEGDIR)/jdatasrc.$(OBJSUFF) \ + $(JPEGDIR)/jdmaster.$(OBJSUFF) \ + $(JPEGDIR)/jdinput.$(OBJSUFF) \ + $(JPEGDIR)/jdmarker.$(OBJSUFF) \ + $(JPEGDIR)/jdhuff.$(OBJSUFF) \ + $(JPEGDIR)/jdphuff.$(OBJSUFF) \ + $(JPEGDIR)/jdmainct.$(OBJSUFF) \ + $(JPEGDIR)/jdcoefct.$(OBJSUFF) \ + $(JPEGDIR)/jdpostct.$(OBJSUFF) \ + $(JPEGDIR)/jddctmgr.$(OBJSUFF) \ + $(JPEGDIR)/jidctfst.$(OBJSUFF) \ + $(JPEGDIR)/jidctflt.$(OBJSUFF) \ + $(JPEGDIR)/jidctint.$(OBJSUFF) \ + $(JPEGDIR)/jidctred.$(OBJSUFF) \ + $(JPEGDIR)/jdsample.$(OBJSUFF) \ + $(JPEGDIR)/jdcolor.$(OBJSUFF) \ + $(JPEGDIR)/jquant1.$(OBJSUFF) \ + $(JPEGDIR)/jquant2.$(OBJSUFF) \ + $(JPEGDIR)/jdmerge.$(OBJSUFF) XPMOBJECTS = $(XPMDIR)/crbuffri.o\ $(XPMDIR)/crdatfri.o\ @@ -125,69 +231,92 @@ XPMOBJECTS = $(XPMDIR)/crbuffri.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)' +ifeq ($(MINGW32),1) + ifeq ($(MINGW32VERSION),2.95) + OBJECTS = $(MSWOBJS) $(COMMONOBJS) $(GENERICOBJS) $(HTMLOBJS) $(DIRDLGOBJ) $(ADVANCEDOBJS) # $(XPMOBJECTS) + else + OBJECTS = $(MSWOBJS) $(COMMONOBJS) $(GENERICOBJS) $(HTMLOBJS) $(DIRDLGOBJ) # $(XPMOBJECTS) + endif +else + OBJECTS = $(MSWOBJS) $(COMMONOBJS) $(GENERICOBJS) $(HTMLOBJS) $(DIRDLGOBJ) # $(XPMOBJECTS) +endif +all: $(OBJECTS) $(WXLIB) $(ZLIBLIB) $(JPEGLIB) $(PNGLIB) $(WXLIB): $(OBJECTS) $(EXTRAOBJS) ar $(AROPTIONS) $@ $(EXTRAOBJS) $(OBJECTS) $(RANLIB) $@ +$(ZLIBLIB): $(ZLIBOBJS) + ar $(AROPTIONS) $@ $(ZLIBOBJS) + $(RANLIB) $@ + +$(PNGLIB): $(PNGOBJS) + ar $(AROPTIONS) $@ $(PNGOBJS) + $(RANLIB) $@ + +$(JPEGLIB): $(JPEGOBJS) + ar $(AROPTIONS) $@ $(JPEGOBJS) + $(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 + $(CCLEX) -c $(CPPFLAGS) -DUSE_DEFINE -DYY_USE_PROTOS -o $@ $(COMMDIR)/y_tab.c + +$(COMMDIR)/y_tab.c: $(COMMDIR)/dosyacc.c + $(COPY) ..\\common\\dosyacc.c ..\\common\\y_tab.c + +$(COMMDIR)/lex_yy.c: $(COMMDIR)/doslex.c + $(COPY) ..\\common\\doslex.c ..\\common\\lex_yy.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 - +# $(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 - +# +# $(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: - erase *.o - erase ../common/y_tab.c - erase ../common/lex_yy.c - erase $(WXDIR)/lib/libwx$(GUISUFFIX).a - erase core + -$(RM) *.o + -$(RM) ole/*.o + -$(RM) *.bak + -$(RM) core + -$(RM) ../common/y_tab.c + -$(RM) ../common/lex_yy.c + -$(RM) ../common/*.o + -$(RM) ../common/*.bak + -$(RM) ../generic/*.o + -$(RM) ../generic/*.bak + -$(RM) ../html/*.o + -$(RM) ../png/*.o + -$(RM) ../png/*.bak + -$(RM) ../zlib/*.o + -$(RM) ../zlib/*.bak + -$(RM) ../jpeg/*.o + -$(RM) ../../lib/libwx.a cleanall: clean -