]> cygwin.com Git - cygwin-apps/setup.git/blob - Makefile.in
2002-01-04 Jan Nieuwenhuizen <janneke@gnu.org>
[cygwin-apps/setup.git] / Makefile.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 #
13 # Makefile for Cygwin installer
14
15 SHELL := @SHELL@
16
17 srcdir := @srcdir@
18 VPATH := @srcdir@
19 prefix := @prefix@
20 exec_prefix := @exec_prefix@
21
22 bindir := @bindir@
23 etcdir := $(exec_prefix)/etc
24
25 program_transform_name := @program_transform_name@
26
27 INSTALL := @INSTALL@
28 INSTALL_PROGRAM := @INSTALL_PROGRAM@
29 INSTALL_DATA := @INSTALL_DATA@
30
31 EXEEXT := @EXEEXT@
32 EXEEXT_FOR_BUILD := @EXEEXT_FOR_BUILD@
33
34 CC := @CC@
35 CC_FOR_TARGET := $(CC)
36 CXX := @CXX@
37
38 CFLAGS := @CFLAGS@ -Werror -Winline -Wall -Wpointer-arith -Wcast-align\
39 -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes \
40 -Wmissing-declarations -Wcomments
41 CXXFLAGS := @CXXFLAGS@ $(CFLAGS) -fno-rtti
42 CXX := @CXX@
43
44 WINDRES := @WINDRES@
45 OBJCOPY := @OBJCOPY@
46
47 include $(srcdir)/../Makefile.common
48
49 MINGW_INCLUDES := -I. -I$(srcdir) -I$(mingw_source)/include $(w32api_include) -I$(updir)/bz2lib
50
51 MINGW_CXXFLAGS := -MMD $(CXXFLAGS) -mno-cygwin $(MINGW_INCLUDES) -mwindows
52 MINGW_CFLAGS := -MMD $(CFLAGS) -mno-cygwin $(MINGW_INCLUDES) -mwindows
53 # to avoid false errors that assembly generates
54 WARNONLY_CFLAGS := -MMD @CFLAGS@ -Winline -Wall -Wpointer-arith -Wcast-align \
55 -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes \
56 -Wmissing-declarations -Wcomments \
57 -mno-cygwin $(MINGW_INCLUDES) -mwindows
58
59 ZLIB := zlib/libzcygw.a
60 BZ2LIB := $(bupdir)/bz2lib/libbz2.a
61 libmingw32.a := $(mingw_build)/libmingw32.a
62 libuser32 := $(w32api_lib)/libuser32.a
63 libkernel32 := $(w32api_lib)/libkernel32.a
64 libcomctl32 := $(w32api_lib)/libcomctl32.a
65
66 ALL_DEP_LDLIBS := $(ZLIB) $(BZ2LIB) $(w32api_lib)/libole32.a $(w32api_lib)/libwsock32.a \
67 $(w32api_lib)/libnetapi32.a $(w32api_lib)/libadvapi32.a \
68 $(w32api_lib)/libuuid.a $(libkernel32) $(libuser32) \
69 $(libcomctl32) $(libmingw32)
70
71 ALL_LDLIBS := ${patsubst $(mingw_build)/lib%.a,-l%,\
72 ${patsubst $(w32api_lib)/lib%.a,-l%,\
73 ${filter-out $(libmingw32),\
74 ${filter-out $(libuser32),\
75 ${filter-out $(libkernel32), $(ALL_DEP_LDLIBS)}}}}}
76
77 ALL_LDFLAGS := ${filter-out -I%, \
78 ${filter-out -W%, \
79 -B$(w32api_lib)/ -B${mingw_build}/ $(MINGW_CFLAGS) $(LDFLAGS)}}
80
81 PROGS := setup$(EXEEXT)
82
83 OBJS = \
84 archive.o \
85 archive_tar.o \
86 archive_tar_file.o \
87 autoload.o \
88 category.o \
89 choose.o \
90 cistring.o \
91 compress.o \
92 compress_bz.o \
93 compress_gz.o \
94 concat.o \
95 cygpackage.o \
96 desktop.o \
97 dialog.o \
98 diskfull.o \
99 download.o \
100 find.o \
101 filemanip.o \
102 fromcwd.o \
103 geturl.o \
104 hash.o \
105 ini.o \
106 inilex.o \
107 iniparse.o \
108 install.o \
109 io_stream.o \
110 io_stream_cygfile.o \
111 io_stream_file.o \
112 io_stream_memory.o \
113 localdir.o \
114 log.o \
115 main.o \
116 mingw_getopt.o \
117 mkdir.o \
118 mklink2.o \
119 mount.o \
120 msg.o \
121 net.o \
122 netio.o \
123 nio-ie5.o \
124 nio-file.o \
125 nio-ftp.o \
126 nio-http.o \
127 package_db.o \
128 package_meta.o \
129 package_source.o \
130 package_version.o \
131 postinstall.o \
132 proppage.o \
133 propsheet.o \
134 res.o \
135 rfc1738.o \
136 root.o \
137 script.o \
138 setup_version.o \
139 simpsock.o \
140 site.o \
141 source.o \
142 splash.o \
143 state.o \
144 threebar.o \
145 version.o \
146 window.o \
147 $E
148
149 .SUFFIXES:
150 .NOEXPORT:
151
152 .PHONY: all install clean realclean
153
154 all: Makefile $(PROGS)
155
156 setup$(EXEEXT): $(OBJS) $(ALL_DEP_LDLIBS)
157 ifdef VERBOSE
158 $(CXX) $(MINGW_CXXFLAGS) -o $@ ${filter-out $(ALL_DEP_LIBS),$^}
159 else
160 @echo $(CXX) ... -o $@ $(OBJS)
161 @$(CXX) $(MINGW_CXXFLAGS) -o $@ ${filter-out $(ALL_DEP_LIBS),$^} $(ALL_LDFLAGS) $(ALL_LDLIBS)
162 endif
163 @chmod a-x $@
164
165 mingw_getopt.o: $(cygwin_source)/lib/getopt.c
166 ifdef VERBOSE
167 ${filter-out -I$(newlib_source)/%,$(COMPILE_CC)} $c -o $(@D)/$(basename $@)$o $(MINGW_CFLAGS) $<
168 else
169 @echo $(CC) $c -o $(@D)/$(basename $@)$o $(MINGW_CFLAGS) ... $^;\
170 ${filter-out -I$(newlib_source)/%,$(COMPILE_CC)} $c -o $(@D)/$(basename $@)$o $(MINGW_CFLAGS) $<
171 endif
172
173 clean:
174 rm -f *.o $(PROGS) iniparse.c* iniparse.h* inilex.c* *.d
175 $(MAKE) -C zlib clean
176
177 realclean: clean
178 rm -f Makefile
179 rm -f config.cache config.log config.status
180
181 install: all
182 $(SHELL) $(updir1)/mkinstalldirs $(bindir) $(etcdir)
183 for i in $(PROGS) ; do \
184 n=`echo $$i | sed '$(program_transform_name)'`; \
185 $(INSTALL_PROGRAM) $$i $(bindir)/$$n; \
186 done
187
188 $(libmingw32): $(mingw_build)/Makefile
189 @$(MAKE) -C $(@D) $(@F)
190
191 $(ZLIB): zlib/Makefile
192 $(MAKE) -C $(@D) $(@F) CC="$(CC)" CFLAGS='$(MINGW_CFLAGS)'
193
194 $(BZ2LIB): $(bupdir)/bz2lib/Makefile
195 $(MAKE) -C $(@D) $(@F) CC="$(CC)" CFLAGS='$(MINGW_CFLAGS)'
196
197 setup_version.c : $(srcdir)/ChangeLog Makefile
198 V=`grep '^\$$Revision.*' $(srcdir)/ChangeLog \
199 | sed -e 's/\$$Revision:* *//' \
200 -e 's/ *$$.*//'` ;\
201 echo "const char *version = \"$$V\";" > version.tmp ;\
202 mv version.tmp setup_version.c
203
204 %.o: %.rc
205 ifdef VERBOSE
206 $(WINDRES) --include-dir $(srcdir) --include-dir $(w32api_source)/include -o $@ $<
207 else
208 @echo $(WINDRES) -o $@ $(<F)
209 @$(WINDRES) --include-dir $(srcdir) --include-dir $(w32api_source)/include -o $@ $<
210 endif
211
212 %.o: %.c
213 ifdef VERBOSE
214 $(CC) $(MINGW_CFLAGS) -c -o $@ $<
215 else
216 @echo $(CC) -c $(CFLAGS) ... $(<F)
217 @$(CC) $(MINGW_CFLAGS) -c -o $@ $<
218 endif
219
220 %.o: %.cc
221 ifdef VERBOSE
222 $(CXX) $(MINGW_CXXFLAGS) -c -o $@ $<
223 else
224 @echo $(CXX) -c $(CXXFLAGS) ... $(<F)
225 @$(CXX) $(MINGW_CXXFLAGS) -c -o $@ $<
226 endif
227
228 autoload.o: autoload.c
229 ifdef VERBOSE
230 $(CC) $(WARNONLY_CFLAGS) -c -o $@ $< -fno-inline-functions
231 else
232 @echo $(CC) -c $(WARNONLY_CFLAGS) ... $(<F) -fno-inline-functions
233 @$(CC) $(WARNONLY_CFLAGS) -c -o $@ $< -fno-inline-functions
234 endif
235
236 inilex.o: inilex.cc
237 ifdef VERBOSE
238 $(CXX) @CXXFLAGS@ $(WARNONLY_CFLAGS) -fno-rtti -c -o $@ $<
239 else
240 @echo $(CXX) -c @CXXFLAGS@ $(WARNONLY_CFLAGS) ... $(<F) -fno-rtti
241 @$(CXX) @CXXFLAGS@ $(WARNONLY_CFLAGS) -c -o $@ $< -fno-rtti
242 endif
243
244 iniparse.o: iniparse.cc
245 ifdef VERBOSE
246 $(CXX) @CXXFLAGS@ $(WARNONLY_CFLAGS) -fno-rtti -c -o $@ $<
247 else
248 @echo $(CXX) -c @CXXFLAGS@ $(WARNONLY_CFLAGS) ... $(<F) -fno-rtti
249 @$(CXX) @CXXFLAGS@ $(WARNONLY_CFLAGS) -c -o $@ $< -fno-rtti
250 endif
251
252 iniparse.cc iniparse.h : iniparse.y
253 bison -d -o iniparse.cc $(srcdir)/iniparse.y
254 @mv iniparse.cc.h iniparse.h 2>/dev/null || mv iniparse.hh iniparse.h
255
256 inilex.cc : inilex.l iniparse.h
257 flex -8 $(srcdir)/inilex.l
258 mv lex.yy.c inilex.cc
259
260 D:=$(wildcard *.d)
261 ifneq ($D,)
262 include $D
263 endif
This page took 0.04391 seconds and 5 git commands to generate.