#
-# wxGTK main source makefile
+# wxWindows/Unix main source makefile
#
# Copyright 1998, Markus Holzhem and Robert Roebling
#
-# wxGTK base directory
+# wxWindows base directory
WXBASEDIR=@WXBASEDIR@
# set the OS type for compilation
# define common stuff
-# needed for unactivated
-NONE =
-
-# define library name
-LIB_TARGET=wx_gtk
-LIB_MAJOR=0
-LIB_MINOR=12
-
-# define library sources
-
-LIB_CPP_SRC=\
-\
- common/cmndata.cpp \
- common/config.cpp \
- common/date.cpp \
- common/docview.cpp \
- common/dynarray.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/layout.cpp \
- common/list.cpp \
- common/log.cpp \
- common/matrix.cpp \
- common/memory.cpp \
- common/module.cpp \
- common/object.cpp \
- common/postscrp.cpp \
- common/prntbase.cpp \
- common/string.cpp \
- common/textfile.cpp \
- common/time.cpp \
- common/timercmn.cpp \
- common/utilscmn.cpp \
-\
- gtk/app.cpp \
- gtk/bitmap.cpp \
- gtk/bmpbuttn.cpp \
- gtk/brush.cpp \
- gtk/button.cpp \
- gtk/checkbox.cpp \
- gtk/choice.cpp \
- gtk/colour.cpp \
- gtk/control.cpp \
- gtk/cursor.cpp \
- gtk/data.cpp \
- gtk/dc.cpp \
- gtk/dcclient.cpp \
- gtk/dcmemory.cpp \
- gtk/dcscreen.cpp \
- gtk/dnd.cpp \
- gtk/dialog.cpp \
- gtk/filedlg.cpp \
- gtk/font.cpp \
- gtk/frame.cpp \
- gtk/gdiobj.cpp \
- gtk/icon.cpp \
- gtk/listbox.cpp \
- gtk/mdi.cpp \
- gtk/menu.cpp \
- gtk/palette.cpp \
- gtk/pen.cpp \
- gtk/radiobox.cpp \
- gtk/radiobut.cpp \
- gtk/region.cpp \
- gtk/scrolbar.cpp \
- gtk/settings.cpp \
- gtk/slider.cpp \
- gtk/statbox.cpp \
- gtk/stattext.cpp \
- gtk/tbargtk.cpp \
- gtk/textctrl.cpp \
- gtk/timer.cpp \
- gtk/utilsgtk.cpp \
- gtk/utilsres.cpp \
- gtk/window.cpp \
-\
- generic/choicdgg.cpp \
- generic/colrdlgg.cpp \
- generic/fontdlgg.cpp \
- generic/gridg.cpp \
- generic/imaglist.cpp \
- generic/listctrl.cpp \
- generic/msgdlgg.cpp \
- generic/panelg.cpp \
- generic/printps.cpp \
- generic/prntdlgg.cpp \
- generic/scrolwin.cpp \
- generic/splitter.cpp \
- generic/statusbr.cpp \
- generic/tabg.cpp \
- generic/textdlgg.cpp \
- generic/treectrl.cpp
-
-LIB_C_SRC=\
-\
- gtk/win_gtk.c \
-\
- png/png.c \
- png/pngset.c \
- png/pngget.c \
- png/pngrutil.c \
- png/pngtrans.c \
- png/pngwutil.c \
- png/pngread.c \
- png/pngrio.c \
- png/pngwio.c \
- png/pngwrite.c \
- png/pngrtran.c \
- png/pngwtran.c \
- png/pngmem.c \
- png/pngerror.c \
- png/pngpread.c \
-\
- zlib/adler32.c \
- zlib/compress.c \
- zlib/crc32.c \
- zlib/gzio.c \
- zlib/uncompr.c \
- zlib/deflate.c \
- zlib/trees.c \
- zlib/zutil.c \
- zlib/inflate.c \
- zlib/infblock.c \
- zlib/inftrees.c \
- zlib/infcodes.c \
- zlib/infutil.c \
- zlib/inffast.c \
-\
- gdk_imlib/cache.c \
- gdk_imlib/colors.c \
- gdk_imlib/globals.c \
- gdk_imlib/load.c \
- gdk_imlib/misc.c \
- gdk_imlib/rend.c \
- gdk_imlib/save.c \
- gdk_imlib/utils.c
-
-
+# include gtk.inc, qt.inc or motif.inc here
+include @MAKEINCLUDE@
+
+# determine library names
+STATIC_LIBRARY=lib$(LIB_TARGET).a
+SHARED_LIBRARY=lib$(LIB_TARGET).so.$(LIB_MAJOR).$(LIB_MINOR)
+
+LIB_CPP_ALL_SRC=$(LIB_CPP_SRC) @GTK_JOYSTICK@ @UNIX_THREAD@
+
+LIB_C_ALL_SRC=$(LIB_C_SRC) parser.c
+
#define library objects
LIB_OBJ=\
- $(LIB_CPP_SRC:.cpp=.o) \
- $(LIB_C_SRC:.c=.o)
+ $(LIB_CPP_ALL_SRC:.cpp=.o) \
+ $(LIB_C_ALL_SRC:.c=.o)
all::
- -../mkdirs
+ @if test ! -d gtk; then mkdir gtk; fi
+ @if test ! -d qt; then mkdir qt; fi
+ @if test ! -d motif; then mkdir motif; fi
+ @if test ! -d common; then mkdir common; fi
+ @if test ! -d generic; then mkdir generic; fi
+ @if test ! -d png; then mkdir png; fi
+ @if test ! -d zlib; then mkdir zlib; fi
+ @if test ! -d gdk_imlib; then mkdir gdk_imlib; fi
+ @if test ! -d iodbc; then mkdir iodbc; fi
+install::
+ @echo " "
+ @echo "Installing library files and headers.."
+ @echo " "
+ @echo " Creating directories.."
+ @$(WXBASEDIR)/mkinstalldirs \
+ $(includedir)/wx \
+ $(includedir)/wx/gtk \
+ $(includedir)/wx/common \
+ $(includedir)/wx/generic \
+ $(includedir)/wx/protocol \
+ $(libdir) \
+ $(bindir)
+ @echo " Copying headers from /include/wx"
+ @cd $(WXBASEDIR)/include/wx ; \
+ $(INSTALL) -d $(includedir)/wx ; \
+ for f in *.h ; do \
+ rm -f $(includedir)/wx/$$f ; \
+ $(INSTALL_DATA) $$f $(includedir)/wx/$$f ; \
+ done
+ @echo " Copying headers from /include/wx/gtk"
+ @cd $(WXBASEDIR)/include/wx/gtk ; \
+ $(INSTALL) -d $(includedir)/wx/gtk ; \
+ for f in *.h ; do \
+ rm -f $(includedir)/wx/gtk/$$f ; \
+ $(INSTALL_DATA) $$f $(includedir)/wx/gtk/$$f ; \
+ done ;
+ @echo " Copying headers from /include/wx/generic"
+ @cd $(WXBASEDIR)/include/wx/generic ; \
+ $(INSTALL) -d $(includedir)/wx/generic ; \
+ for f in *.h ; do \
+ rm -f $(includedir)/wx/generic/$$f ; \
+ $(INSTALL_DATA) $$f $(includedir)/wx/generic/$$f ; \
+ done
+ @echo " Copying headers from /include/wx/protocol"
+ @cd $(WXBASEDIR)/include/wx/protocol ; \
+ for f in *.h ; do \
+ rm -f $(includedir)/wx/protocol/$$f ; \
+ $(INSTALL_DATA) $$f $(includedir)/wx/protocol/$$f ; \
+ done
+ @echo " Copying wx-config"
+ @cd $(WXBASEDIR) ; \
+ $(INSTALL) -d $(bindir) ;\
+ rm -f $(bindir)/wx-config ; \
+ $(INSTALL_PROGRAM) wx-config $(bindir)/wx-config
+ @echo " Copying static library"
+ @cd $(WXBASEDIR)/lib/$(OS) ; \
+ rm -f $(libdir)/$(STATIC_LIBRARY) ; \
+ $(INSTALL_DATA) $(STATIC_LIBRARY) $(libdir)/$(STATIC_LIBRARY)
+ @if test -d $(SHARED_LIBRARY); then \
+ echo " Copying shared library" \
+ cd $(WXBASEDIR)/lib/$(OS) ; \
+ rm -f $(libdir)/$(SHARED_LIBRARY) ; \
+ $(INSTALL_PROGRAM) $(SHARED_LIBRARY) $(libdir)/$(SHARED_LIBRARY) ; \
+ $(LN_S) $(SHARED_LIBRARY) $(libdir)/lib$(LIB_TARGET).so.$(LIB_MAJOR) ; \
+ $(LN_S) $(SHARED_LIBRARY) $(libdir)/lib$(LIB_TARGET).so ; \
+ fi
+ @echo " "
+ @echo "Installation complete. You may have to run ldconfig!"
+ @echo " "
+
clean::
$(RM) -rf gtk
+ $(RM) -rf qt
+ $(RM) -rf motif
$(RM) -rf common
$(RM) -rf generic
$(RM) -rf png
$(RM) -rf zlib
$(RM) -rf gdk_imlib
+ $(RM) -rf iodbc
+ @$(RM) lexer.c parser.c
#additional things needed for compile
ADD_COMPILE= \
# include the definitions now
include ../../template.mak
+
+# things for the prolog stuff
+
+parser.c: ../common/parser.y lexer.c
+ @if test ! -f parser.y; then \
+ cp -f ../common/parser.y . ; \
+ fi
+ @$(YACC) parser.y
+ @sed -e "s/y.tab.c/parser.y/g" < y.tab.c | \
+ sed -e "s/BUFSIZ/5000/g" | \
+ sed -e "s/YYLMAX 200/YYLMAX 5000/g" | \
+ sed -e "s/yy/PROIO_yy/g" | \
+ sed -e "s/input/PROIO_input/g" | \
+ sed -e "s/unput/PROIO_unput/g" > parser.c
+ @$(RM) y.tab.c
+ @$(RM) parser.y
+
+lexer.c: ../common/lexer.l
+ @if test ! -f lexer.l; then \
+ cp -f ../common/lexer.l . ;\
+ fi
+ @$(LEX) lexer.l
+ @sed -e "s/lex.yy.c/lexer.l/g" < lex.yy.c | \
+ sed -e "s/yy/PROIO_yy/g" | \
+ sed -e "s/input/PROIO_input/g" | \
+ sed -e "s/unput/PROIO_unput/g" > lexer.c
+ @$(RM) lex.yy.c
+ @$(RM) lexer.l
+
+clean::
+