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