Initial revision
[chise/xemacs-chise.git] / netinstall / Makefile.in.in
1 ## Copyright (c) 2000, Red Hat, Inc.
2 ##
3 ##     This program is free software; you can redistribute it and/or modify
4 ##     it under the terms of the GNU General Public License as published by
5 ##     the Free Software Foundation; either version 2 of the License, or
6 ##     (at your option) any later version.
7 ##
8 ##     A copy of the GNU General Public License can be found at
9 ##     http://www.gnu.org/
10 ##
11 ## Written by Christopher Faylor <cgf@redhat.com>
12 ## Adapted for XEmacs by Andy Piper <andy@xemacs.org>
13 ##
14 ## Makefile for Cygwin installer
15
16 ## FIXME: integrate autoload.c so that wininet doesn't have to be linked.
17
18 ## For performance and consistency, no built-in rules
19 .SUFFIXES:
20 .SUFFIXES: .c .cc .h .o
21 ## ==================== Things "configure" will edit ====================
22
23 @SET_MAKE@
24 SHELL = /bin/sh
25 RM = rm -f
26 pwd = /bin/pwd
27
28 CC=@CC@
29 CPP=@CPP@
30 CFLAGS=@CFLAGS@
31 CPPFLAGS=@CPPFLAGS@
32 LDFLAGS=@LDFLAGS@
33 ALLOCA=@ALLOCA@
34 LN_S=@LN_S@
35 version=@version@
36
37 ## This will be the name of the generated binary and is set automatically
38 ## by configure.
39 PROGNAME=@PROGNAME@
40 INSTALLABLES=setup
41 #ifdef USE_GNU_MAKE
42 vpath %.c @srcdir@
43 vpath %.cc @srcdir@
44 vpath %.h @srcdir@
45 #else
46 VPATH=@srcdir@
47 #endif
48
49 ## ==================== Where To Install Things ====================
50
51 prefix=@prefix@
52 exec_prefix=@exec_prefix@
53 bindir=@bindir@
54 libdir=@libdir@
55 srcdir=@srcdir@
56 datadir=@datadir@
57 instvardir=@instvardir@
58 top_srcdir=@top_srcdir@
59 archlibdir=@archlibdir@
60 configuration=@configuration@
61 moduledir=@moduledir@
62 sitemoduledir=@sitemoduledir@
63
64 ## ==================== Utility Programs for the Build =================
65
66 INSTALL = @install_pp@ @INSTALL@
67 INSTALL_PROGRAM = @INSTALL_PROGRAM@
68 INSTALL_DATA = @INSTALL_DATA@
69 SHELL = @SHELL@
70 ## ========================== Lists of Files ===========================
71
72 #define NO_SHORTNAMES
73 #define NOT_C_CODE
74 #include "../src/config.h"
75
76 program_transform_name = @program_transform_name@
77
78 CC              = @CC@
79 CC_FOR_TARGET   = $(CC)
80
81 LOCALCFLAGS = $(CFLAGS) -DMINGW
82 CXXFLAGS        = $(LOCALCFLAGS) -fno-exceptions -nostdinc++ -fno-rtti
83
84 WINDRES         = windres
85 MINGW_INCLUDES  = -I. -I$(srcdir) 
86 MINGW_CXXFLAGS  = $(CXXFLAGS) -mno-cygwin $(MINGW_INCLUDES) -mwindows
87 MINGW_CFLAGS    = $(LOCALCFLAGS) -mno-cygwin $(MINGW_INCLUDES) -mwindows
88 MINGW_ZLIB_DIR  = /usr/local/lib
89
90 PROGS   = setup.exe
91
92 CONFIG_H = ../src/config.h
93
94 OBJS = \
95         choose.o \
96         concat.o \
97         desktop.o \
98         dialog.o \
99         diskfull.o \
100         download.o \
101         find.o \
102         fromcwd.o \
103         geturl.o \
104         hash.o \
105         ini.o \
106         inilex.o \
107         iniparse.o \
108         install.o \
109         localdir.o \
110         log.o \
111         main.o \
112         mkdir.o \
113         mklink2.o \
114         regedit.o \
115         msg.o \
116         net.o \
117         netio.o \
118         nio-ie5.o \
119         nio-file.o \
120         nio-ftp.o \
121         nio-http.o \
122         other.o \
123         postinstall.o \
124         res.o \
125         root.o \
126         simpsock.o \
127         site.o \
128         source.o \
129         splash.o \
130         state.o \
131         tar.o \
132         version.o
133
134 .SUFFIXES:
135 .NOEXPORT:
136
137 .PHONY: all install
138
139 all: Makefile $(PROGS)
140
141 setup.exe: $(OBJS)
142         $(CXX) $(MINGW_CXXFLAGS) -o $@ $(OBJS) \
143                 -lole32 -lwsock32 -lnetapi32 -ladvapi32 \
144                 -luuid -lkernel32 -luser32 -lwininet \
145                 -L$(MINGW_ZLIB_DIR) -lz -lmingw32
146         @chmod a-x $@
147
148 install:
149         @echo; echo "Installing net setup."
150         for file in ${INSTALLABLES} ; do \
151           (cd .. && $(INSTALL_PROGRAM) netinstall/$${file} ${bindir}/$${file}) ; \
152         done
153
154 version.c : $(srcdir)/ChangeLog Makefile
155         V=`grep '^\$$Revision.*' $(srcdir)/ChangeLog \
156         | sed -e 's/\$$Revision:* *//' \
157           -e 's/ *$$.*//'` ;\
158         echo "char *version = \"$$V\";" > version.tmp ;\
159         echo "static char *id = \"\\n%%% setup-version $$V\\n\";" >> version.tmp
160         mv version.tmp version.c
161
162 %.o: %.rc
163         $(WINDRES) --include-dir $(srcdir) -o $@ $<
164
165 %.o: %.c
166         $(CC) $(MINGW_CFLAGS) -c -o $@ ${srcdir}/$<
167
168 %.o: %.cc
169         $(CC) $(MINGW_CXXFLAGS) -c -o $@ ${srcdir}/$<
170
171 iniparse.c iniparse.h : iniparse.y
172         bison -d -o iniparse.c $(srcdir)/iniparse.y
173
174 inilex.c : inilex.l iniparse.h
175         flex -8 $(srcdir)/inilex.l
176         mv lex.yy.c inilex.c
177
178 .PHONY: mostlyclean clean distclean realclean extraclean
179
180 mostlyclean:
181         $(RM) *.o *.i core $(PROGS)
182
183 clean: mostlyclean
184
185 distclean: clean
186         $(RM) GNUmakefile Makefile Makefile.in TAGS
187
188 realclean: distclean
189
190 extraclean: distclean
191         $(RM) *~ \#*
192
193 choose.o: choose.cc win32.h dialog.h resource.h state.h ini.h concat.h \
194  msg.h log.h find.h reginfo.h
195 concat.o: concat.cc
196 desktop.o: desktop.cc win32.h resource.h ini.h msg.h state.h concat.h \
197  mkdir.h dialog.h version.h port.h
198 dialog.o: dialog.cc win32.h dialog.h msg.h log.h
199 diskfull.o: diskfull.cc win32.h diskfull.h
200 download.o: download.cc win32.h resource.h msg.h ini.h dialog.h \
201  concat.h geturl.h state.h mkdir.h log.h
202 find.o: find.cc win32.h port.h
203 fromcwd.o: fromcwd.cc win32.h ini.h resource.h concat.h state.h \
204  dialog.h msg.h find.h version.h port.h
205 geturl.o: geturl.cc win32.h dialog.h \
206  geturl.h resource.h netio.h msg.h log.h
207 hash.o: hash.cc hash.h
208 ini.o: ini.cc win32.h ini.h resource.h concat.h state.h geturl.h \
209  dialog.h msg.h mkdir.h log.h reginfo.h version.h
210 inilex.o: inilex.c win32.h \
211  ini.h \
212  iniparse.h
213 iniparse.o: iniparse.c ini.h \
214  iniparse.h \
215  port.h
216 install.o: install.cc win32.h \
217  resource.h ini.h dialog.h concat.h geturl.h mkdir.h state.h tar.h \
218  diskfull.h msg.h regedit.h reginfo.h log.h hash.h port.h
219 localdir.o: localdir.cc win32.h dialog.h resource.h state.h msg.h \
220  concat.h log.h
221 log.o: log.cc win32.h resource.h msg.h log.h dialog.h state.h concat.h \
222  mkdir.h
223 main.o: main.cc win32.h resource.h dialog.h state.h msg.h netio.h \
224  find.h log.h port.h
225 mkdir.o: mkdir.cc win32.h mkdir.h
226 mklink2.o: mklink2.c win32.h /usr/include/w32api/shlobj.h
227 msg.o: msg.cc win32.h dialog.h log.h
228 net.o: net.cc win32.h dialog.h resource.h state.h msg.h log.h
229 netio.o: netio.cc win32.h resource.h state.h msg.h netio.h nio-file.h \
230  nio-ie5.h nio-http.h nio-ftp.h dialog.h log.h port.h
231 nio-file.o: nio-file.cc win32.h netio.h nio-file.h resource.h msg.h
232 nio-ftp.o: nio-ftp.cc win32.h resource.h state.h simpsock.h log.h \
233  netio.h nio-ftp.h
234 nio-http.o: nio-http.cc win32.h resource.h state.h simpsock.h msg.h \
235  netio.h nio-http.h
236 nio-ie5.o: nio-ie5.cc win32.h resource.h state.h dialog.h msg.h \
237  netio.h nio-ie5.h
238 other.o: other.cc win32.h dialog.h resource.h state.h msg.h log.h
239 postinstall.o: postinstall.cc win32.h state.h dialog.h find.h concat.h \
240  port.h
241 regedit.o: regedit.cc win32.h reginfo.h regedit.h msg.h resource.h \
242  dialog.h
243 root.o: root.cc win32.h dialog.h resource.h state.h msg.h regedit.h \
244  reginfo.h concat.h log.h
245 simpsock.o: simpsock.cc win32.h simpsock.h msg.h
246 site.o: site.cc win32.h dialog.h resource.h state.h geturl.h msg.h \
247  concat.h regedit.h reginfo.h log.h port.h
248 source.o: source.cc win32.h dialog.h resource.h state.h msg.h log.h
249 splash.o: splash.cc win32.h dialog.h resource.h msg.h version.h
250 state.o: state.cc state.h
251 tar.o: tar.cc win32.h tar.h mkdir.h log.h port.h
252 version.o: version.c