2 # wxWindows/Unix main source makefile
4 # Copyright 1998, Markus Holzhem and Robert Roebling
7 # wxWindows base directory
10 # set the OS type for compilation
13 # compile a library only
35 # include gtk.inc, qt.inc or motif.inc here
38 # determine library names
39 STATIC_LIBRARY=lib$(LIB_TARGET).a
40 SHARED_LIBRARY=lib$(LIB_TARGET).so.$(LIB_MAJOR).$(LIB_MINOR)
42 LIB_CPP_ALL_SRC=$(LIB_CPP_SRC) @GTK_JOYSTICK@ @UNIX_THREAD@
44 LIB_C_ALL_SRC=$(LIB_C_SRC) @IODBC_C_SRC@ parser.c
46 #define library objects
48 $(LIB_CPP_ALL_SRC:.cpp=.o) \
49 $(LIB_C_ALL_SRC:.c=.o)
52 @if test ! -d gtk; then mkdir gtk; fi
53 @if test ! -d qt; then mkdir qt; fi
54 @if test ! -d motif; then mkdir motif; fi
55 @if test ! -d motif/xmcombo; then mkdir motif/xmcombo; fi
56 @if test ! -d common; then mkdir common; fi
57 @if test ! -d generic; then mkdir generic; fi
58 @if test ! -d png; then mkdir png; fi
59 @if test ! -d zlib; then mkdir zlib; fi
60 @if test ! -d iodbc; then mkdir iodbc; fi
64 @echo "Installing library files and headers.."
66 @echo " Creating directories.."
67 @$(WXBASEDIR)/mkinstalldirs \
69 $(includedir)/wx/gtk \
70 $(includedir)/wx/common \
71 $(includedir)/wx/generic \
72 $(includedir)/wx/protocol \
73 $(libdir)/wx/include/wx/gtk \
76 @echo " Copying headers from /include/wx"
77 @cd $(WXBASEDIR)/include/wx ; \
78 $(INSTALL) -d $(includedir)/wx ; \
80 rm -f $(includedir)/wx/$$f ; \
81 $(INSTALL_DATA) $$f $(includedir)/wx/$$f ; \
83 @echo " Copying headers from /include/wx/gtk"
84 @cd $(WXBASEDIR)/include/wx/gtk ; \
85 $(INSTALL) -d $(includedir)/wx/gtk ; \
87 rm -f $(includedir)/wx/gtk/$$f ; \
88 $(INSTALL_DATA) $$f $(includedir)/wx/gtk/$$f ; \
90 @echo " Copying headers from /include/wx/generic"
91 @cd $(WXBASEDIR)/include/wx/generic ; \
92 $(INSTALL) -d $(includedir)/wx/generic ; \
94 rm -f $(includedir)/wx/generic/$$f ; \
95 $(INSTALL_DATA) $$f $(includedir)/wx/generic/$$f ; \
97 @echo " Copying headers from /include/wx/protocol"
98 @cd $(WXBASEDIR)/include/wx/protocol ; \
100 rm -f $(includedir)/wx/protocol/$$f ; \
101 $(INSTALL_DATA) $$f $(includedir)/wx/protocol/$$f ; \
103 @echo " Moving setup.h to library path"
104 @$(INSTALL) -d $(libdir)/wx/include/wx/gtk ;\
105 mv $(includedir)/wx/gtk/setup.h $(libdir)/wx/include/wx/gtk/setup.h ;
106 @echo " Copying wx-config"
108 $(INSTALL) -d $(bindir) ;\
109 rm -f $(bindir)/wx-config ; \
110 $(INSTALL_PROGRAM) wx-config $(bindir)/wx-config
111 @echo " Copying static library"
112 @cd $(WXBASEDIR)/lib/$(OS) ; \
113 rm -f $(libdir)/$(STATIC_LIBRARY) ; \
114 $(INSTALL_DATA) $(STATIC_LIBRARY) $(libdir)/$(STATIC_LIBRARY)
115 @if test -f $(WXBASEDIR)/lib/$(OS)/$(SHARED_LIBRARY) ; then \
116 echo " Copying shared library" ; \
117 cd $(WXBASEDIR)/lib/$(OS) ; \
118 rm -f $(libdir)/lib$(LIB_TARGET).so* ; \
119 $(INSTALL_PROGRAM) $(SHARED_LIBRARY) $(libdir)/$(SHARED_LIBRARY) ; \
120 $(LN_S) $(SHARED_LIBRARY) $(libdir)/lib$(LIB_TARGET).so.$(LIB_MAJOR) ; \
121 $(LN_S) $(SHARED_LIBRARY) $(libdir)/lib$(LIB_TARGET).so ; \
123 echo " You may have to run ldconfig!" ; \
127 @echo "Installation complete."
139 @$(RM) lexer.c parser.c
141 #additional things needed for compile
144 # include the definitions now
145 include ../../template.mak
147 # things for the prolog stuff
149 parser.c: ../common/parser.y lexer.c
150 @if test ! -f parser.y; then \
151 cp -f ../common/parser.y . ; \
154 @sed -e "s/y.tab.c/parser.y/g" < y.tab.c | \
155 sed -e "s/BUFSIZ/5000/g" | \
156 sed -e "s/YYLMAX 200/YYLMAX 5000/g" | \
157 sed -e "s/yy/PROIO_yy/g" | \
158 sed -e "s/input/PROIO_input/g" | \
159 sed -e "s/unput/PROIO_unput/g" > parser.c
163 lexer.c: ../common/lexer.l
164 @if test ! -f lexer.l; then \
165 cp -f ../common/lexer.l . ;\
168 @sed -e "s/lex.yy.c/lexer.l/g" < lex.yy.c | \
169 sed -e "s/yy/PROIO_yy/g" | \
170 sed -e "s/input/PROIO_input/g" | \
171 sed -e "s/unput/PROIO_unput/g" > lexer.c