]> cygwin.com Git - cygwin-apps/setup.git/blob - Makefile.in
2001-11-01 Robert Collins <rbtcollins@hotmail.com>
[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@
39 CXXFLAGS := @CXXFLAGS@ $(CFLAGS) -fno-exceptions -fno-rtti
40 CXX := @CXX@
41
42 WINDRES := @WINDRES@
43 OBJCOPY := @OBJCOPY@
44
45 include $(srcdir)/../Makefile.common
46
47 MINGW_INCLUDES := -I. -I$(srcdir) -I$(mingw_source)/include $(w32api_include) -I$(updir)/bz2lib
48
49 MINGW_CXXFLAGS := -MMD $(CXXFLAGS) -mno-cygwin $(MINGW_INCLUDES) -mwindows
50 MINGW_CFLAGS := -MMD $(CFLAGS) -mno-cygwin $(MINGW_INCLUDES) -mwindows
51
52 ZLIB := zlib/libzcygw.a
53 BZ2LIB := $(bupdir)/bz2lib/libbz2.a
54 libmingw32.a := $(mingw_build)/libmingw32.a
55 libuser32 := $(w32api_lib)/libuser32.a
56 libkernel32 := $(w32api_lib)/libkernel32.a
57
58 ALL_DEP_LDLIBS := $(ZLIB) $(BZ2LIB) $(w32api_lib)/libole32.a $(w32api_lib)/libwsock32.a \
59 $(w32api_lib)/libnetapi32.a $(w32api_lib)/libadvapi32.a \
60 $(w32api_lib)/libuuid.a $(libkernel32) $(w32api_lib)/libuser32.a \
61 $(libmingw32)
62
63 ALL_LDLIBS := ${patsubst $(mingw_build)/lib%.a,-l%,\
64 ${patsubst $(w32api_lib)/lib%.a,-l%,\
65 ${filter-out $(libmingw32),\
66 ${filter-out $(libuser32),\
67 ${filter-out $(libkernel32), $(ALL_DEP_LDLIBS)}}}}}
68
69 ALL_LDFLAGS := ${filter-out -I%, \
70 ${filter-out -W%, \
71 -B$(w32api_lib)/ -B${mingw_build}/ $(MINGW_CFLAGS) $(LDFLAGS)}}
72
73 PROGS := setup$(EXEEXT)
74
75 OBJS = \
76 autoload.o \
77 choose.o \
78 concat.o \
79 desktop.o \
80 dialog.o \
81 diskfull.o \
82 download.o \
83 find.o \
84 fromcwd.o \
85 geturl.o \
86 hash.o \
87 ini.o \
88 inilex.o \
89 iniparse.o \
90 install.o \
91 localdir.o \
92 log.o \
93 main.o \
94 mingw_getopt.o \
95 mkdir.o \
96 mklink2.o \
97 mount.o \
98 msg.o \
99 net.o \
100 netio.o \
101 nio-ie5.o \
102 nio-file.o \
103 nio-ftp.o \
104 nio-http.o \
105 other.o \
106 postinstall.o \
107 res.o \
108 root.o \
109 simpsock.o \
110 site.o \
111 source.o \
112 splash.o \
113 state.o \
114 tar.o \
115 version.o \
116 $E
117
118 .SUFFIXES:
119 .NOEXPORT:
120
121 .PHONY: all install clean realclean
122
123 all: Makefile $(PROGS)
124
125 setup$(EXEEXT): $(OBJS) $(ALL_DEP_LDLIBS)
126 ifdef VERBOSE
127 $(CXX) $(MINGW_CXXFLAGS) -o $@ ${filter-out $(ALL_DEP_LIBS),$^}
128 else
129 @echo $(CXX) ... -o $@ $(OBJS)
130 @$(CXX) $(MINGW_CXXFLAGS) -o $@ ${filter-out $(ALL_DEP_LIBS),$^} $(ALL_LDFLAGS) $(ALL_LDLIBS)
131 endif
132 @chmod a-x $@
133
134 mingw_getopt.o: $(cygwin_source)/lib/getopt.c
135 ifdef VERBOSE
136 ${filter-out -I$(newlib_source)/%,$(COMPILE_CC)} $c -o $(@D)/$(basename $@)$o $(MINGW_CFLAGS) $<
137 else
138 @echo $(CC) $c -o $(@D)/$(basename $@)$o $(MINGW_CFLAGS) ... $^;\
139 ${filter-out -I$(newlib_source)/%,$(COMPILE_CC)} $c -o $(@D)/$(basename$@)$o $(MINGW_CFLAGS) $<
140 endif
141
142 clean:
143 rm -f *.o $(PROGS) iniparse.c* iniparse.h* inilex.c* *.d
144 $(MAKE) -C zlib clean
145
146 realclean: clean
147 rm -f Makefile config.cache
148
149 install: all
150 $(SHELL) $(updir1)/mkinstalldirs $(bindir) $(etcdir)
151 for i in $(PROGS) ; do \
152 n=`echo $$i | sed '$(program_transform_name)'`; \
153 $(INSTALL_PROGRAM) $$i $(bindir)/$$n; \
154 done
155
156 $(libmingw32): $(mingw_build)/Makefile
157 @$(MAKE) -C $(@D) $(@F)
158
159 $(ZLIB): zlib/Makefile
160 $(MAKE) -C $(@D) $(@F) CC="$(CC)" CFLAGS='$(MINGW_CFLAGS)'
161
162 $(BZ2LIB): $(bupdir)/bz2lib/Makefile
163 $(MAKE) -C $(@D) $(@F) CC="$(CC)" CFLAGS='$(MINGW_CFLAGS)'
164
165 version.c : $(srcdir)/ChangeLog Makefile
166 V=`grep '^\$$Revision.*' $(srcdir)/ChangeLog \
167 | sed -e 's/\$$Revision:* *//' \
168 -e 's/ *$$.*//'` ;\
169 echo "char *version = \"$$V\";" > version.tmp ;\
170 echo "static char *id = \"\\n%%% setup-version $$V\\n\";" >> version.tmp
171 mv version.tmp version.c
172
173 %.o: %.rc
174 ifdef VERBOSE
175 $(WINDRES) --include-dir $(srcdir) --include-dir $(w32api_source)/include -o $@ $<
176 else
177 @echo $(WINDRES) -o $@ $(<F)
178 @$(WINDRES) --include-dir $(srcdir) --include-dir $(w32api_source)/include -o $@ $<
179 endif
180
181 %.o: %.c
182 ifdef VERBOSE
183 $(CC) $(MINGW_CFLAGS) -c -o $@ $<
184 else
185 @echo $(CC) -c $(CFLAGS) ... $(<F)
186 @$(CC) $(MINGW_CFLAGS) -c -o $@ $<
187 endif
188
189 %.o: %.cc
190 ifdef VERBOSE
191 $(CXX) $(MINGW_CXXFLAGS) -c -o $@ $<
192 else
193 @echo $(CXX) -c $(CXXFLAGS) ... $(<F)
194 @$(CXX) $(MINGW_CXXFLAGS) -c -o $@ $<
195 endif
196
197 autoload.o: autoload.c
198 ifdef VERBOSE
199 $(CC) $(MINGW_CFLAGS) -c -o $@ $< -fno-inline-functions
200 else
201 @echo $(CC) -c $(CFLAGS) ... $(<F) -fno-inline-functions
202 @$(CC) $(MINGW_CFLAGS) -c -o $@ $< -fno-inline-functions
203 endif
204
205 iniparse.cc iniparse.h : iniparse.y
206 bison -d -o iniparse.cc $(srcdir)/iniparse.y
207 @mv iniparse.cc.h iniparse.h
208
209 inilex.c : inilex.l iniparse.h
210 flex -8 $(srcdir)/inilex.l
211 mv lex.yy.c inilex.c
212
213 D:=$(wildcard *.d)
214 ifneq ($D,)
215 include $D
216 endif
This page took 0.04484 seconds and 6 git commands to generate.