]> cygwin.com Git - cygwin-apps/setup.git/blame - Makefile.am
2004-11-11 Max Bowsher <maxb@ukf.net>
[cygwin-apps/setup.git] / Makefile.am
CommitLineData
f6100b6f
RC
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
48c7d667 21AUTOMAKE_OPTIONS = dist-bzip2 subdir-objects 1.6 foreign
2bbf91cf 22DIST_SUBDIRS = bz2lib zlib libgetopt++ tests
24649384 23SUBDIRS = bz2lib zlib libgetopt++ tests
f6100b6f
RC
24
25## DISTCLEANFILES = include/stamp-h include/stamp-h[0-9]*
26
8b726ef6
MB
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)
fc2ba841
MB
29BASECXXFLAGS = -Wall -Wpointer-arith -Wcomments -Wcast-align -Wwrite-strings
30AM_CXXFLAGS = -Werror $(BASECXXFLAGS)
d3c2a043
MB
31AM_CFLAGS = $(AM_CXXFLAGS) -Wmissing-declarations -Winline \
32 -Wstrict-prototypes -Wmissing-prototypes
f6100b6f
RC
33
34WINDRES := @WINDRES@
35
6908b7d7 36INCLUDES = -I$(srcdir)/bz2lib -I$(srcdir)/libgetopt++/include
f6100b6f 37
58ee6135 38noinst_PROGRAMS = \
19911586
RC
39 setup \
40 @INILINT@
58ee6135
RC
41
42EXTRA_PROGRAMS = inilint
19911586 43## noinst_PROGRAMS +=inilint
f6100b6f 44
45e01f23 45EXTRA_DIST = \
3baca7c9 46 GUIDELINES \
45e01f23
RC
47 check-na.bmp \
48 check-no.bmp \
49 check-yes.bmp \
50 choose-rtarrow.bmp \
51 choose-spin.bmp \
52 cygwin.ico \
53 inilex.l \
3baca7c9 54 iniparse.y
45e01f23 55
f6100b6f
RC
56BUILT_SOURCES = setup_version.c \
57 inilex.cc \
58 iniparse.cc
59
2b48ecd0
RC
60if MINGWTARGET
61 inilint_extras = \
62 autoload.c \
2b48ecd0
RC
63 mklink2.cc
64else
65 inilint_extras =
66endif
67
4361306f 68inilint_LDADD = libgetopt++/libgetopt++.la -luser32 -lkernel32
58ee6135 69inilint_SOURCES = \
b92028a4
RC
70 filemanip.cc \
71 filemanip.h \
aa1e3b4d
RC
72 find.cc \
73 find.h \
74 FindVisitor.cc \
75 FindVisitor.h \
9f4a0c62
RC
76 LogSingleton.cc \
77 LogSingleton.h \
076654e7
RC
78 IniDBBuilder.cc \
79 IniDBBuilder.h \
58ee6135
RC
80 inilex.cc \
81 inilintmain.cc \
82 iniparse.cc \
83 iniparse.h \
aa1e3b4d
RC
84 IniParseFeedback.cc \
85 IniParseFeedback.h \
076654e7
RC
86 io_stream.h \
87 io_stream.cc \
2b48ecd0
RC
88 io_stream_file.h \
89 io_stream_file.cc \
19911586 90 IOStreamProvider.h \
aa1e3b4d
RC
91 mkdir.cc \
92 mkdir.h \
84c4f5d1
RC
93 PackageSpecification.cc \
94 PackageSpecification.h \
076654e7 95 PackageTrust.h \
58ee6135
RC
96 rfc1738.cc \
97 rfc1738.h \
98 String++.cc \
2b48ecd0
RC
99 String++.h \
100 $(inilint_extras)
58ee6135 101
fc2ba841
MB
102# Obviously we are not really building a program called warnonly
103# However, this dance was the most non-invasive way I could find
104# of varying CFLAGS for a single file
105EXTRA_PROGRAMS += warnonly
106warnonly_CXXFLAGS = $(BASECXXFLAGS)
107warnonly_SOURCES = inilex.cc
108EXTRA_setup_SOURCES = $(warnonly_SOURCES)
109
110setup_LDADD = warnonly-inilex.o res.o \
111 zlib/libzcygw.a bz2lib/libbz2.a libgetopt++/libgetopt++.la \
4361306f 112 -luser32 -lkernel32 \
b401ef47 113 -lcomctl32 -lole32 -lwsock32 -lnetapi32 -ladvapi32 -luuid
58ee6135 114setup_LDFLAGS = -mwindows
f6100b6f 115setup_SOURCES = \
f9e903a3
RC
116 AntiVirus.cc \
117 AntiVirus.h \
f6100b6f 118 archive.cc \
45e01f23 119 archive.h \
f6100b6f 120 archive_tar.cc \
45e01f23 121 archive_tar.h \
f6100b6f
RC
122 archive_tar_file.cc \
123 autoload.c \
124 category.cc \
45e01f23 125 category.h \
f6100b6f 126 choose.cc \
45e01f23 127 choose.h \
f6100b6f 128 compress.cc \
45e01f23 129 compress.h \
f6100b6f 130 compress_bz.cc \
45e01f23 131 compress_bz.h \
f6100b6f 132 compress_gz.cc \
45e01f23 133 compress_gz.h \
39b42ff3
RC
134 ConnectionSetting.cc \
135 ConnectionSetting.h \
ee91d9be
RC
136 ControlAdjuster.cc \
137 ControlAdjuster.h \
f6100b6f 138 cygpackage.cc \
45e01f23 139 cygpackage.h \
f6100b6f 140 desktop.cc \
45e01f23 141 desktop.h \
f6100b6f 142 dialog.cc \
45e01f23 143 dialog.h \
f6100b6f 144 diskfull.cc \
45e01f23 145 diskfull.h \
f6100b6f 146 download.cc \
58ee6135
RC
147 download.h \
148 Exception.cc \
149 Exception.h \
f6100b6f 150 find.cc \
45e01f23 151 find.h \
b401ef47
RC
152 FindVisitor.cc \
153 FindVisitor.h \
864a5ec1
MB
154 FilterVisitor.cc \
155 FilterVisitor.h \
f6100b6f 156 filemanip.cc \
45e01f23 157 filemanip.h \
f6100b6f 158 fromcwd.cc \
31f0ccce 159 Generic.h \
f6100b6f 160 geturl.cc \
45e01f23 161 geturl.h \
f6100b6f 162 hash.cc \
45e01f23 163 hash.h \
f6100b6f 164 ini.cc \
45e01f23 165 ini.h \
076654e7
RC
166 IniDBBuilder.cc \
167 IniDBBuilder.h \
168 IniDBBuilderPackage.cc \
169 IniDBBuilderPackage.h \
f6100b6f
RC
170 iniparse.cc \
171 iniparse.h \
67829ce0
RC
172 IniParseFeedback.cc \
173 IniParseFeedback.h \
b401ef47
RC
174 IniParseFindVisitor.cc \
175 IniParseFindVisitor.h \
f6100b6f
RC
176 install.cc \
177 io_stream.cc \
45e01f23 178 io_stream.h \
f6100b6f 179 io_stream_cygfile.cc \
45e01f23 180 io_stream_cygfile.h \
f6100b6f 181 io_stream_file.cc \
45e01f23 182 io_stream_file.h \
f6100b6f 183 io_stream_memory.cc \
45e01f23 184 io_stream_memory.h \
19911586 185 IOStreamProvider.h \
f6100b6f 186 localdir.cc \
45e01f23 187 localdir.h \
f6100b6f 188 log.cc \
45e01f23 189 log.h \
9f4a0c62
RC
190 LogFile.cc \
191 LogFile.h \
192 LogSingleton.cc \
193 LogSingleton.h \
f6100b6f 194 main.cc \
58ee6135
RC
195 md5.c \
196 md5.h \
197 MD5++.cc \
198 MD5++.h \
f6100b6f 199 mkdir.cc \
45e01f23 200 mkdir.h \
f6100b6f 201 mklink2.cc \
45e01f23 202 mklink2.h \
f6100b6f 203 mount.cc \
45e01f23 204 mount.h \
f6100b6f 205 msg.cc \
45e01f23 206 msg.h \
f6100b6f 207 net.cc \
45e01f23 208 net.h \
f6100b6f 209 netio.cc \
45e01f23 210 netio.h \
f6100b6f 211 nio-ie5.cc \
45e01f23 212 nio-ie5.h \
f6100b6f 213 nio-file.cc \
45e01f23 214 nio-file.h \
f6100b6f 215 nio-ftp.cc \
45e01f23 216 nio-ftp.h \
f6100b6f 217 nio-http.cc \
45e01f23 218 nio-http.h \
f6100b6f 219 package_db.cc \
45e01f23 220 package_db.h \
f6100b6f 221 package_meta.cc \
45e01f23 222 package_meta.h \
f6100b6f 223 package_source.cc \
45e01f23 224 package_source.h \
f6100b6f 225 package_version.cc \
45e01f23 226 package_version.h \
aa1e3b4d
RC
227 PackageSpecification.cc \
228 PackageSpecification.h \
076654e7 229 PackageTrust.h \
f6100b6f 230 PickCategoryLine.cc \
45e01f23 231 PickCategoryLine.h \
f6100b6f 232 PickLine.cc \
45e01f23 233 PickLine.h \
f6100b6f 234 PickPackageLine.cc \
45e01f23 235 PickPackageLine.h \
f6100b6f 236 PickView.cc \
45e01f23 237 PickView.h \
f6100b6f
RC
238 postinstall.cc \
239 proppage.cc \
45e01f23 240 proppage.h \
f6100b6f 241 propsheet.cc \
45e01f23 242 propsheet.h \
8a264069 243 RECTWrapper.h \
f6100b6f 244 res.rc \
45e01f23 245 resource.h \
f6100b6f 246 rfc1738.cc \
45e01f23 247 rfc1738.h \
f6100b6f 248 root.cc \
45e01f23 249 root.h \
b401ef47
RC
250 ScanFindVisitor.cc \
251 ScanFindVisitor.h \
f6100b6f 252 script.cc \
45e01f23 253 script.h \
f6100b6f
RC
254 setup_version.c \
255 simpsock.cc \
45e01f23 256 simpsock.h \
f6100b6f 257 site.cc \
45e01f23 258 site.h \
f6100b6f 259 source.cc \
45e01f23 260 source.h \
6ff96351
RC
261 SourceSetting.cc \
262 SourceSetting.h \
f6100b6f 263 splash.cc \
45e01f23 264 splash.h \
f6100b6f 265 state.cc \
45e01f23 266 state.h \
f6100b6f 267 String++.cc \
45e01f23 268 String++.h \
f6100b6f 269 threebar.cc \
45e01f23 270 threebar.h \
ead15931
RC
271 UserSetting.cc \
272 UserSetting.h \
273 UserSettings.cc \
274 UserSettings.h \
f6100b6f 275 version.cc \
45e01f23 276 version.h \
f6100b6f 277 win32.cc \
45e01f23
RC
278 win32.h \
279 window.cc \
24649384 280 window.h
f6100b6f
RC
281
282setup_version.c : $(srcdir)/ChangeLog Makefile
84b9cc5e 283 V=`sed -ne 's/^\$$Revi[s]ion: *\([^ ]*\) *$$.*/\1/p' \
012374fe 284 $(srcdir)/ChangeLog` ;\
f6100b6f
RC
285 (echo '#define VERSION_PREFIX "%%% setup-version"';\
286 echo 'static const char version_store[] = VERSION_PREFIX " '$$V'";';\
287 echo 'const char *version = version_store + sizeof (VERSION_PREFIX);') > version.tmp;\
288 mv version.tmp setup_version.c
289
290%.o: %.rc
4361306f 291 $(WINDRES) --preprocessor "$(CC) -E -xc-header -DRC_INVOKED" --include-dir $(srcdir) -o $@ $<
f6100b6f 292
f6100b6f
RC
293iniparse.cc iniparse.h : iniparse.y
294 bison -d -o iniparse.cc $(srcdir)/iniparse.y
295 @mv iniparse.cc.h iniparse.h 2>/dev/null || mv iniparse.hh iniparse.h
296
297inilex.cc : inilex.l iniparse.h
298 flex -8 $(srcdir)/inilex.l
299 mv lex.yy.c inilex.cc
902c8a3f
RC
300
301# Make a distribution package and tarball
5090e3ce
RC
302release: setup$(EXEEXT) dist-all $(srcdir)/ChangeLog Makefile
303 $(STRIP) setup.exe && \
304 upx --best setup.exe && \
84b9cc5e 305 V=`sed -ne 's/^\$$Revi[s]ion: *\([^ ]*\) *$$.*/\1/p' \
012374fe 306 $(srcdir)/ChangeLog` ;\
4849e2fc 307 mv setup.exe setup-$${V}.exe && \
7cb35117
RC
308 mv setup-0.tar.bz2 setup-$${V}.tar.bz2 && \
309 tar cjf setup-$${V}-1-src.tar.bz2 setup-$${V}.tar.bz2
7d702af3
RC
310
311# Create a snapshot and upload it (requires write access)
312snapshot: release
84b9cc5e 313 V=`sed -ne 's/^\$$Revi[s]ion: *\([^ ]*\) *$$.*/\1/p' \
012374fe 314 $(srcdir)/ChangeLog` ;\
7d702af3 315 scp -C setup-$${V}.exe setup-$${V}.tar.bz2 $${cygwinsite}:setup-snapshots/
This page took 0.073168 seconds and 5 git commands to generate.