# # File: makefile.unx # Author: Julian Smart # Created: 1998 # Updated: # Copyright: (c) 1998 # # # Makefile for wxMotif library, Unix EXTRACFLAGS=-DLEX_SCANNER include ../make.env LIB_CPP_SRC=\ \ ../common/cmndata.cpp \ ../common/config.cpp \ ../common/date.cpp \ ../common/docmdi.cpp \ ../common/docview.cpp \ ../common/dynarray.cpp \ ../common/dynlib.cpp \ ../common/event.cpp \ ../common/file.cpp \ ../common/fileconf.cpp \ ../common/filefn.cpp \ ../common/gdicmn.cpp \ ../common/hash.cpp \ ../common/helpbase.cpp \ ../common/intl.cpp \ ../common/ipcbase.cpp \ ../common/image.cpp \ ../common/layout.cpp \ ../common/list.cpp \ ../common/log.cpp \ ../common/matrix.cpp \ ../common/memory.cpp \ ../common/module.cpp \ ../common/object.cpp \ ../common/odbc.cpp \ ../common/prntbase.cpp \ ../common/resource.cpp \ ../common/serbase.cpp \ ../common/string.cpp \ ../common/textfile.cpp \ ../common/tbarbase.cpp \ ../common/tbarsmpl.cpp \ ../common/time.cpp \ ../common/timercmn.cpp \ ../common/utilscmn.cpp \ ../common/wincmn.cpp \ ../common/framecmn.cpp \ ../common/stream.cpp \ ../common/datstrm.cpp \ ../common/wfstream.cpp \ ../common/mstream.cpp \ ../common/zstream.cpp \ ../common/objstrm.cpp \ ../common/sckstrm.cpp \ ../common/validate.cpp \ ../common/valgen.cpp \ ../common/valtext.cpp \ ../common/variant.cpp \ ../common/wxexpr.cpp \ ../common/socket.cpp \ ../common/sckaddr.cpp \ ../common/sckipc.cpp \ ../common/protocol.cpp \ ../common/ftp.cpp \ ../common/http.cpp \ ../common/url.cpp \ ../common/tokenzr.cpp \ \ accel.cpp \ app.cpp \ bitmap.cpp \ bmpbuttn.cpp \ brush.cpp \ button.cpp \ checkbox.cpp \ choice.cpp \ clipbrd.cpp \ colour.cpp \ control.cpp \ combobox.cpp \ cursor.cpp \ data.cpp \ dataobj.cpp \ dc.cpp \ dcclient.cpp \ dcmemory.cpp \ dcscreen.cpp \ dialog.cpp \ dnd.cpp \ filedlg.cpp \ font.cpp \ frame.cpp \ gauge.cpp \ gdiobj.cpp \ icon.cpp \ listbox.cpp \ joystick.cpp \ main.cpp \ mdi.cpp \ menu.cpp \ menuitem.cpp \ minifram.cpp \ msgdlg.cpp \ palette.cpp \ pen.cpp \ radiobox.cpp \ radiobut.cpp \ region.cpp \ scrolbar.cpp \ settings.cpp \ slider.cpp \ spinbutt.cpp \ statbox.cpp \ statbmp.cpp \ stattext.cpp \ taskbar.cpp \ textctrl.cpp \ thread.cpp \ timer.cpp \ toolbar.cpp \ utils.cpp \ utilsexc.cpp \ wave.cpp \ window.cpp \ \ ../generic/choicdgg.cpp \ ../generic/colrdlgg.cpp \ ../generic/dirdlgg.cpp \ ../generic/dcpsg.cpp \ ../generic/fontdlgg.cpp \ ../generic/gridg.cpp \ ../generic/helphtml.cpp \ ../generic/helpext.cpp \ ../generic/imaglist.cpp \ ../generic/listctrl.cpp \ ../generic/laywin.cpp \ ../generic/msgdlgg.cpp \ ../generic/notebook.cpp \ ../generic/panelg.cpp \ ../generic/printps.cpp \ ../generic/prntdlgg.cpp \ ../generic/prop.cpp \ ../generic/propform.cpp \ ../generic/proplist.cpp \ ../generic/sashwin.cpp \ ../generic/scrolwin.cpp \ ../generic/splitter.cpp \ ../generic/statusbr.cpp \ ../generic/tabg.cpp \ ../generic/textdlgg.cpp \ ../generic/treectrl.cpp ZLIB_SRC=\ ../zlib/adler32.c ../zlib/deflate.c ../zlib/infblock.c\ ../zlib/inflate.c ../zlib/zutil.c ../zlib/compress.c \ ../zlib/infcodes.c ../zlib/inftrees.c ../zlib/trees.c \ ../zlib/crc32.c ../zlib/gzio.c ../zlib/inffast.c\ ../zlib/infutil.c ../zlib/uncompr.c LIB_C_SRC=\ \ ../common/y_tab.c \ ../common/extended.c # Only need to compile zlib files if we don't # already have a zlib library installed on our system # (or we wish to statically link them for some reason) EXTRA_C_SRC=\ xmcombo/xmcombo.c EXTRA_CPP_SRC= # mdi/lib/XsComponent.C\ # mdi/lib/XsMDICanvas.C\ # mdi/lib/XsMDIWindow.C\ # mdi/lib/XsMotifWindow.C\ # mdi/lib/XsMoveOutline.C\ # mdi/lib/XsOutline.C\ # mdi/lib/XsResizeOutline.C all: $(WXLIB) png zlib # Define library objects OBJECTS=\ $(LIB_CPP_SRC:.cpp=.o) $(LIB_C_SRC:.c=.o) $(EXTRA_C_SRC:.c=.o) $(EXTRA_CPP_SRC:.C=.o) $(WXLIB) : $(OBJECTS) ar $(AROPTIONS) $@ $(OBJECTS) $(RANLIB) $@ ../common/y_tab.$(OBJSUFF): ../common/y_tab.c ../common/lex_yy.c $(CCLEX) -c $(CFLAGS) -DNO_CONFIGURE -o $@ ../common/y_tab.c # Replace lex with flex if you run into compilation # problems with lex_yy.c. See also note about LEX_SCANNER # above. ../common/lex_yy.c: ../common/lexer.l $(LEX) ../common/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" > ../common/lex_yy.c /bin/rm -f lex.yy.c # The above should work with both lex and flex, but just in case not, # here are alternative syntaxes. # # Flex-style syntax: # $(LEX) -olex.yy.c ../common/lexer.l # Lex-style syntax: # $(LEX) ../common/lexer.l # Replace yacc with bison if you run into compilation # problems with y_tab.c. ../common/y_tab.c: ../common/parser.y $(YACC) ../common/parser.y mv y.tab.c ../common/y_tab.c combobox/combobox.o: combobox/combobox.c $(CCC) -c $(CFLAGS) -o $@ combobox/combobox.c zlib: cd ../zlib; make -f makefile.unx motif png: cd ../png; make -f makefile.unx motif clean: cleanzlib cleanpng rm -f $(OBJECTS) $(WXLIB) cleanzlib: cd ../zlib; make -f makefile.unx cleanmotif cleanpng: cd ../png; make -f makefile.unx cleanmotif