]> 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.h \
91 inilex.cc \
92 inilintmain.cc \
93 iniparse.cc \
94 iniparse.h \
95 IniParseFeedback.cc \
96 IniParseFeedback.h \
97 io_stream.h \
98 io_stream.cc \
99 io_stream_file.h \
100 io_stream_file.cc \
101 IOStreamProvider.h \
102 mkdir.cc \
103 mkdir.h \
104 PackageSpecification.cc \
105 PackageSpecification.h \
106 PackageTrust.h \
107 csu_util/rfc1738.cc \
108 csu_util/rfc1738.h \
109 String++.cc \
110 String++.h \
111 $(inilint_extras)
112
113 # Obviously we are not really building a program called warnonly
114 # However, this dance was the most non-invasive way I could find
115 # of varying CFLAGS for a single file
116 EXTRA_PROGRAMS += warnonly
117 warnonly_CXXFLAGS = $(BASECXXFLAGS)
118 warnonly_SOURCES = inilex.cc
119 EXTRA_setup_SOURCES = $(warnonly_SOURCES)
120
121 setup_LDADD = warnonly-inilex.o res.o \
122 libgetopt++/libgetopt++.la \
123 /usr/lib/mingw/libbz2.a \
124 /usr/lib/mingw/libz.a \
125 -luser32 -lkernel32 \
126 -lcomctl32 -lole32 -lwsock32 -lnetapi32 -ladvapi32 -luuid
127 setup_LDFLAGS = -mwindows
128 setup_SOURCES = \
129 AntiVirus.cc \
130 AntiVirus.h \
131 archive.cc \
132 archive.h \
133 archive_tar.cc \
134 archive_tar.h \
135 archive_tar_file.cc \
136 autoload.c \
137 choose.cc \
138 choose.h \
139 compress.cc \
140 compress.h \
141 compress_bz.cc \
142 compress_bz.h \
143 compress_gz.cc \
144 compress_gz.h \
145 ConnectionSetting.cc \
146 ConnectionSetting.h \
147 ControlAdjuster.cc \
148 ControlAdjuster.h \
149 cygpackage.cc \
150 cygpackage.h \
151 desktop.cc \
152 desktop.h \
153 dialog.cc \
154 dialog.h \
155 diskfull.cc \
156 diskfull.h \
157 download.cc \
158 download.h \
159 Exception.cc \
160 Exception.h \
161 find.cc \
162 find.h \
163 FindVisitor.cc \
164 FindVisitor.h \
165 filemanip.cc \
166 filemanip.h \
167 fromcwd.cc \
168 Generic.h \
169 geturl.cc \
170 geturl.h \
171 ini.cc \
172 ini.h \
173 IniDBBuilder.h \
174 IniDBBuilderPackage.cc \
175 IniDBBuilderPackage.h \
176 iniparse.cc \
177 iniparse.h \
178 IniParseFeedback.cc \
179 IniParseFeedback.h \
180 IniParseFindVisitor.cc \
181 IniParseFindVisitor.h \
182 install.cc \
183 io_stream.cc \
184 io_stream.h \
185 io_stream_cygfile.cc \
186 io_stream_cygfile.h \
187 io_stream_file.cc \
188 io_stream_file.h \
189 io_stream_memory.cc \
190 io_stream_memory.h \
191 IOStreamProvider.h \
192 localdir.cc \
193 localdir.h \
194 LogFile.cc \
195 LogFile.h \
196 LogSingleton.cc \
197 LogSingleton.h \
198 main.cc \
199 mkdir.cc \
200 mkdir.h \
201 mklink2.cc \
202 mklink2.h \
203 mount.cc \
204 mount.h \
205 msg.cc \
206 msg.h \
207 net.cc \
208 net.h \
209 netio.cc \
210 netio.h \
211 nio-ie5.cc \
212 nio-ie5.h \
213 nio-file.cc \
214 nio-file.h \
215 nio-ftp.cc \
216 nio-ftp.h \
217 nio-http.cc \
218 nio-http.h \
219 package_db.cc \
220 package_db.h \
221 package_meta.cc \
222 package_meta.h \
223 package_source.cc \
224 package_source.h \
225 package_version.cc \
226 package_version.h \
227 PackageSpecification.cc \
228 PackageSpecification.h \
229 PackageTrust.h \
230 PickCategoryLine.cc \
231 PickCategoryLine.h \
232 PickLine.h \
233 PickPackageLine.cc \
234 PickPackageLine.h \
235 PickView.cc \
236 PickView.h \
237 postinstall.cc \
238 prereq.cc \
239 prereq.h \
240 proppage.cc \
241 proppage.h \
242 propsheet.cc \
243 propsheet.h \
244 RECTWrapper.h \
245 res.rc \
246 resource.h \
247 root.cc \
248 root.h \
249 ScanFindVisitor.cc \
250 ScanFindVisitor.h \
251 script.cc \
252 script.h \
253 setup_version.h \
254 setup_version.c \
255 simpsock.cc \
256 simpsock.h \
257 site.cc \
258 site.h \
259 source.cc \
260 source.h \
261 SourceSetting.cc \
262 SourceSetting.h \
263 splash.cc \
264 splash.h \
265 state.cc \
266 state.h \
267 String++.cc \
268 String++.h \
269 threebar.cc \
270 threebar.h \
271 UserSetting.cc \
272 UserSetting.h \
273 UserSettings.cc \
274 UserSettings.h \
275 win32.h \
276 window.cc \
277 window.h \
278 csu_util/MD5Sum.cc \
279 csu_util/MD5Sum.h \
280 csu_util/rfc1738.cc \
281 csu_util/rfc1738.h \
282 csu_util/version_compare.cc \
283 csu_util/version_compare.h \
284 libmd5-rfc/md5.c \
285 libmd5-rfc/md5.h
286
287 setup_version.c : $(srcdir)/ChangeLog Makefile
288 V=`sed -ne 's/^\$$Revi[s]ion: *\([^ ]*\) *$$.*/\1/p' \
289 $(srcdir)/ChangeLog` ;\
290 (echo '#define VERSION_PREFIX "%%% setup-version"';\
291 echo 'static const char version_store[] = VERSION_PREFIX " '$$V'";';\
292 echo 'const char *setup_version = version_store + sizeof (VERSION_PREFIX);') > version.tmp;\
293 mv version.tmp setup_version.c
294
295 %.o: %.rc
296 $(WINDRES) --preprocessor "$(CC) -E -xc-header -DRC_INVOKED" --include-dir $(srcdir) -o $@ $<
297
298 iniparse.cc iniparse.h : iniparse.y
299 bison -d -o iniparse.cc $(srcdir)/iniparse.y
300 @mv iniparse.cc.h iniparse.h 2>/dev/null || mv iniparse.hh iniparse.h
301
302 inilex.cc : inilex.l iniparse.h
303 flex -8 $(srcdir)/inilex.l
304 mv lex.yy.c inilex.cc
305
306 # Make a distribution package and tarball
307 release: setup$(EXEEXT) dist-all $(srcdir)/ChangeLog Makefile
308 $(STRIP) setup.exe && \
309 upx --best setup.exe && \
310 V=`sed -ne 's/^\$$Revi[s]ion: *\([^ ]*\) *$$.*/\1/p' \
311 $(srcdir)/ChangeLog` ;\
312 mv setup.exe setup-$${V}.exe && \
313 mv setup-0.tar.bz2 setup-$${V}.tar.bz2 && \
314 tar cjf setup-$${V}-1-src.tar.bz2 setup-$${V}.tar.bz2
315
316 # Create a snapshot and upload it (requires write access)
317 snapshot: release
318 V=`sed -ne 's/^\$$Revi[s]ion: *\([^ ]*\) *$$.*/\1/p' \
319 $(srcdir)/ChangeLog` ;\
320 scp -C setup-$${V}.exe setup-$${V}.tar.bz2 $${cygwinsite}:setup-snapshots/
This page took 0.203977 seconds and 6 git commands to generate.