]> cygwin.com Git - cygwin-apps/setup.git/blob - Makefile.am
2006-12-26 Max Bowsher <maxb1@ukf.net>
[cygwin-apps/setup.git] / Makefile.am
1 ## Process this file with automake to produce Makefile.in
2 #
3 # $Id$
4 #
5 # Copyright (c) 2000, Red Hat, Inc.
6 # Copyright (c) 2002, Robert Collins
7 #
8 # This program is free software; you can redistribute it and/or modify
9 # it under the terms of the GNU General Public License as published by
10 # the Free Software Foundation; either version 2 of the License, or
11 # (at your option) any later version.
12 #
13 # A copy of the GNU General Public License can be found at
14 # http://www.gnu.org/
15 #
16 # Written by Christopher Faylor <cgf@redhat.com>
17 # and Robert Collins <rbtcollins@hotmail.com>
18 #
19 # Makefile for Cygwin installer
20
21 AUTOMAKE_OPTIONS = dist-bzip2 subdir-objects 1.6 foreign
22 DIST_SUBDIRS = libgetopt++ tests
23 SUBDIRS = libgetopt++ tests
24
25 ## DISTCLEANFILES = include/stamp-h include/stamp-h[0-9]*
26
27 # We would like to use -Winline for C++ as well, but some STL code triggers
28 # this warning. (Bug verified present in gcc-3.3)
29 # -Wno-uninitialized added to deal with g++ 3.4.4's spurious STL warnings
30 # (http://gcc.gnu.org/bugzilla/show_bug.cgi?id=22207)
31 BASECXXFLAGS = -Wall -Wno-uninitialized -Wpointer-arith -Wcomments \
32 -Wcast-align -Wwrite-strings
33 AM_CXXFLAGS = -Werror $(BASECXXFLAGS)
34 AM_CFLAGS = $(AM_CXXFLAGS) -Wmissing-declarations -Winline \
35 -Wstrict-prototypes -Wmissing-prototypes
36
37 WINDRES := @WINDRES@
38
39 INCLUDES = -I$(srcdir)/libgetopt++/include -I/usr/include/mingw
40
41 noinst_PROGRAMS = \
42 setup \
43 @INILINT@
44
45 EXTRA_PROGRAMS = inilint
46 ## noinst_PROGRAMS +=inilint
47
48 EXTRA_DIST = \
49 CHANGES \
50 CONTRIBUTORS \
51 COPYING \
52 bootstrap.sh \
53 check-na.bmp \
54 check-no.bmp \
55 check-yes.bmp \
56 choose-rtarrow.bmp \
57 choose-spin.bmp \
58 cygwin.ico \
59 doconfigure \
60 inilex.l \
61 iniparse.y \
62 libmd5-rfc/README \
63 libmd5-rfc/md5main.c \
64 setup.exe.manifest \
65 tree-minus.bmp \
66 tree-plus.bmp
67
68 BUILT_SOURCES = setup_version.c \
69 inilex.cc \
70 iniparse.cc
71
72 if MINGWTARGET
73 inilint_extras = \
74 autoload.c \
75 mklink2.cc
76 else
77 inilint_extras =
78 endif
79
80 inilint_LDADD = libgetopt++/libgetopt++.la -luser32 -lkernel32
81 inilint_SOURCES = \
82 filemanip.cc \
83 filemanip.h \
84 find.cc \
85 find.h \
86 FindVisitor.cc \
87 FindVisitor.h \
88 LogSingleton.cc \
89 LogSingleton.h \
90 IniDBBuilder.cc \
91 IniDBBuilder.h \
92 inilex.cc \
93 inilintmain.cc \
94 iniparse.cc \
95 iniparse.h \
96 IniParseFeedback.cc \
97 IniParseFeedback.h \
98 io_stream.h \
99 io_stream.cc \
100 io_stream_file.h \
101 io_stream_file.cc \
102 IOStreamProvider.h \
103 mkdir.cc \
104 mkdir.h \
105 PackageSpecification.cc \
106 PackageSpecification.h \
107 PackageTrust.h \
108 csu_util/rfc1738.cc \
109 csu_util/rfc1738.h \
110 String++.cc \
111 String++.h \
112 $(inilint_extras)
113
114 # Obviously we are not really building a program called warnonly
115 # However, this dance was the most non-invasive way I could find
116 # of varying CFLAGS for a single file
117 EXTRA_PROGRAMS += warnonly
118 warnonly_CXXFLAGS = $(BASECXXFLAGS)
119 warnonly_SOURCES = inilex.cc
120 EXTRA_setup_SOURCES = $(warnonly_SOURCES)
121
122 setup_LDADD = warnonly-inilex.o res.o \
123 libgetopt++/libgetopt++.la \
124 /usr/lib/mingw/libbz2.a \
125 /usr/lib/mingw/libz.a \
126 -luser32 -lkernel32 \
127 -lcomctl32 -lole32 -lwsock32 -lnetapi32 -ladvapi32 -luuid
128 setup_LDFLAGS = -mwindows
129 setup_SOURCES = \
130 AntiVirus.cc \
131 AntiVirus.h \
132 archive.cc \
133 archive.h \
134 archive_tar.cc \
135 archive_tar.h \
136 archive_tar_file.cc \
137 autoload.c \
138 choose.cc \
139 choose.h \
140 compress.cc \
141 compress.h \
142 compress_bz.cc \
143 compress_bz.h \
144 compress_gz.cc \
145 compress_gz.h \
146 ConnectionSetting.cc \
147 ConnectionSetting.h \
148 ControlAdjuster.cc \
149 ControlAdjuster.h \
150 cygpackage.cc \
151 cygpackage.h \
152 desktop.cc \
153 desktop.h \
154 dialog.cc \
155 dialog.h \
156 diskfull.cc \
157 diskfull.h \
158 download.cc \
159 download.h \
160 Exception.cc \
161 Exception.h \
162 find.cc \
163 find.h \
164 FindVisitor.cc \
165 FindVisitor.h \
166 filemanip.cc \
167 filemanip.h \
168 fromcwd.cc \
169 Generic.h \
170 geturl.cc \
171 geturl.h \
172 ini.cc \
173 ini.h \
174 IniDBBuilder.cc \
175 IniDBBuilder.h \
176 IniDBBuilderPackage.cc \
177 IniDBBuilderPackage.h \
178 iniparse.cc \
179 iniparse.h \
180 IniParseFeedback.cc \
181 IniParseFeedback.h \
182 IniParseFindVisitor.cc \
183 IniParseFindVisitor.h \
184 install.cc \
185 io_stream.cc \
186 io_stream.h \
187 io_stream_cygfile.cc \
188 io_stream_cygfile.h \
189 io_stream_file.cc \
190 io_stream_file.h \
191 io_stream_memory.cc \
192 io_stream_memory.h \
193 IOStreamProvider.h \
194 localdir.cc \
195 localdir.h \
196 LogFile.cc \
197 LogFile.h \
198 LogSingleton.cc \
199 LogSingleton.h \
200 main.cc \
201 mkdir.cc \
202 mkdir.h \
203 mklink2.cc \
204 mklink2.h \
205 mount.cc \
206 mount.h \
207 msg.cc \
208 msg.h \
209 net.cc \
210 net.h \
211 netio.cc \
212 netio.h \
213 nio-ie5.cc \
214 nio-ie5.h \
215 nio-file.cc \
216 nio-file.h \
217 nio-ftp.cc \
218 nio-ftp.h \
219 nio-http.cc \
220 nio-http.h \
221 package_db.cc \
222 package_db.h \
223 package_meta.cc \
224 package_meta.h \
225 package_source.cc \
226 package_source.h \
227 package_version.cc \
228 package_version.h \
229 PackageSpecification.cc \
230 PackageSpecification.h \
231 PackageTrust.h \
232 PickCategoryLine.cc \
233 PickCategoryLine.h \
234 PickLine.h \
235 PickPackageLine.cc \
236 PickPackageLine.h \
237 PickView.cc \
238 PickView.h \
239 postinstall.cc \
240 prereq.cc \
241 prereq.h \
242 proppage.cc \
243 proppage.h \
244 propsheet.cc \
245 propsheet.h \
246 RECTWrapper.h \
247 res.rc \
248 resource.h \
249 root.cc \
250 root.h \
251 ScanFindVisitor.cc \
252 ScanFindVisitor.h \
253 script.cc \
254 script.h \
255 setup_version.h \
256 setup_version.c \
257 simpsock.cc \
258 simpsock.h \
259 site.cc \
260 site.h \
261 source.cc \
262 source.h \
263 SourceSetting.cc \
264 SourceSetting.h \
265 splash.cc \
266 splash.h \
267 state.cc \
268 state.h \
269 String++.cc \
270 String++.h \
271 threebar.cc \
272 threebar.h \
273 UserSetting.cc \
274 UserSetting.h \
275 UserSettings.cc \
276 UserSettings.h \
277 win32.h \
278 window.cc \
279 window.h \
280 csu_util/MD5Sum.cc \
281 csu_util/MD5Sum.h \
282 csu_util/rfc1738.cc \
283 csu_util/rfc1738.h \
284 csu_util/version_compare.cc \
285 csu_util/version_compare.h \
286 libmd5-rfc/md5.c \
287 libmd5-rfc/md5.h
288
289 setup_version.c : $(srcdir)/ChangeLog Makefile
290 V=`sed -ne 's/^\$$Revi[s]ion: *\([^ ]*\) *$$.*/\1/p' \
291 $(srcdir)/ChangeLog` ;\
292 (echo '#define VERSION_PREFIX "%%% setup-version"';\
293 echo 'static const char version_store[] = VERSION_PREFIX " '$$V'";';\
294 echo 'const char *setup_version = version_store + sizeof (VERSION_PREFIX);') > version.tmp;\
295 mv version.tmp setup_version.c
296
297 %.o: %.rc
298 $(WINDRES) --preprocessor "$(CC) -E -xc-header -DRC_INVOKED" --include-dir $(srcdir) -o $@ $<
299
300 iniparse.cc iniparse.h : iniparse.y
301 bison -d -o iniparse.cc $(srcdir)/iniparse.y
302 @mv iniparse.cc.h iniparse.h 2>/dev/null || mv iniparse.hh iniparse.h
303
304 inilex.cc : inilex.l iniparse.h
305 flex -8 $(srcdir)/inilex.l
306 mv lex.yy.c inilex.cc
307
308 # Make a distribution package and tarball
309 release: setup$(EXEEXT) dist-all $(srcdir)/ChangeLog Makefile
310 $(STRIP) setup.exe && \
311 upx --best setup.exe && \
312 V=`sed -ne 's/^\$$Revi[s]ion: *\([^ ]*\) *$$.*/\1/p' \
313 $(srcdir)/ChangeLog` ;\
314 mv setup.exe setup-$${V}.exe && \
315 mv setup-0.tar.bz2 setup-$${V}.tar.bz2 && \
316 tar cjf setup-$${V}-1-src.tar.bz2 setup-$${V}.tar.bz2
317
318 # Create a snapshot and upload it (requires write access)
319 snapshot: release
320 V=`sed -ne 's/^\$$Revi[s]ion: *\([^ ]*\) *$$.*/\1/p' \
321 $(srcdir)/ChangeLog` ;\
322 scp -C setup-$${V}.exe setup-$${V}.tar.bz2 $${cygwinsite}:setup-snapshots/
This page took 0.05237 seconds and 6 git commands to generate.