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