]> cygwin.com Git - cygwin-apps/setup.git/blame - Makefile.am
Add CliParseFeedback class
[cygwin-apps/setup.git] / Makefile.am
CommitLineData
f6100b6f
RC
1## Process this file with automake to produce Makefile.in
2#
f6100b6f
RC
3# Copyright (c) 2000, Red Hat, Inc.
4# Copyright (c) 2002, Robert Collins
5#
6# This program is free software; you can redistribute it and/or modify
7# it under the terms of the GNU General Public License as published by
8# the Free Software Foundation; either version 2 of the License, or
9# (at your option) any later version.
10#
11# A copy of the GNU General Public License can be found at
12# http://www.gnu.org/
13#
f6100b6f
RC
14# Makefile for Cygwin installer
15
fe434e30 16SUBDIRS := @subdirs@ tests
f6100b6f
RC
17
18## DISTCLEANFILES = include/stamp-h include/stamp-h[0-9]*
19
8b726ef6
MB
20# We would like to use -Winline for C++ as well, but some STL code triggers
21# this warning. (Bug verified present in gcc-3.3)
abad8c0c 22BASECXXFLAGS = -Werror -Wall -Wpointer-arith -Wcomments \
99f33a3b
CV
23 -Wcast-align -Wwrite-strings -fno-builtin-sscanf \
24 -Wno-attributes
1c6add37 25AM_CXXFLAGS = $(BASECXXFLAGS) -std=gnu++11 ${$(*F)_CXXFLAGS}
abad8c0c 26AM_CFLAGS = $(BASECXXFLAGS) -Wmissing-declarations -Winline \
43fe4376 27 -Wstrict-prototypes -Wmissing-prototypes
dacb1ebd
BD
28AM_YFLAGS = -d
29AM_LFLAGS = -8
92ef6cf8 30WINDRES = @WINDRES@
4221a216 31AM_CPPFLAGS = -DLZMA_API_STATIC -I$(srcdir)/libgetopt++/include \
c9641752 32 $(ZLIB_CFLAGS) $(LZMA_CFLAGS) $(ZSTD_CFLAGS) $(LIBCRYPT_CFLAGS) $(LIBSOLV_CFLAGS)
f6100b6f 33
6a03d5cd
CV
34inilex_CXXFLAGS:=-Wno-sign-compare
35
e49fef4d 36noinst_PROGRAMS = @SETUP@$(EXEEXT) @INILINT@
58ee6135
RC
37
38EXTRA_PROGRAMS = inilint
19911586 39## noinst_PROGRAMS +=inilint
f6100b6f 40
45e01f23 41EXTRA_DIST = \
89fc4ceb
MB
42 CHANGES \
43 CONTRIBUTORS \
44 COPYING \
45 bootstrap.sh \
89fc4ceb 46 cygwin.ico \
c0342e37
CV
47 cygwin-setup.ico \
48 cygwin-terminal.ico \
89fc4ceb 49 setup.exe.manifest \
db1c5abc
JT
50 setup64.exe.manifest \
51 tree-minus.ico \
52 tree-plus.ico
45e01f23 53
443b9db6 54# iniparse.hh is generated from iniparse.yy via bison -d, so it needs to be
dacb1ebd
BD
55# included here for proper tracking (but not iniparse.cc, since automake
56# knows about that already)
89fc4ceb
MB
57BUILT_SOURCES = \
58 setup_version.c \
443b9db6 59 iniparse.hh
f6100b6f 60
92ef6cf8
BD
61CLEANFILES = setup_version.c
62
89fc4ceb 63inilint_LDADD = \
c63e8b4a 64 libgetopt++/libgetopt++.la
58ee6135 65inilint_SOURCES = \
4b81d7a1
JT
66 CliParseFeedback.cc \
67 CliParseFeedback.h \
89fc4ceb
MB
68 filemanip.cc \
69 filemanip.h \
70 find.cc \
71 find.h \
72 FindVisitor.cc \
73 FindVisitor.h \
74 LogSingleton.cc \
75 LogSingleton.h \
76 IniDBBuilder.h \
77 inilintmain.cc \
c63e8b4a 78 inilex.ll \
dacb1ebd 79 iniparse.yy \
89fc4ceb
MB
80 io_stream.h \
81 io_stream.cc \
82 io_stream_file.h \
83 io_stream_file.cc \
84 IOStreamProvider.h \
85 mkdir.cc \
86 mkdir.h \
e49fef4d 87 mklink2.cc \
89fc4ceb
MB
88 PackageSpecification.cc \
89 PackageSpecification.h \
90 PackageTrust.h \
91 csu_util/rfc1738.cc \
92 csu_util/rfc1738.h \
93 String++.cc \
e49fef4d 94 String++.h
58ee6135 95
e49fef4d 96@SETUP@_LDADD = \
4221a216
JT
97 libgetopt++/libgetopt++.la \
98 $(LIBGCRYPT_LIBS) \
c9641752 99 $(ZSTD_LIBS) \
4221a216
JT
100 $(LZMA_LIBS) \
101 $(BZ2_LIBS) \
102 $(ZLIB_LIBS) \
103 $(LIBSOLV_LIBS) -lregex \
da93010a 104 -lshlwapi -lcomctl32 -lole32 -lpsapi -luuid -lntdll -lwininet -lws2_32 -lmingw32
e49fef4d
YS
105@SETUP@_LDFLAGS = -mwindows -Wc,-static -static-libtool-libs
106@SETUP@_SOURCES = \
8ba85a54 107 actionlist.h \
f9e903a3
RC
108 AntiVirus.cc \
109 AntiVirus.h \
f6100b6f 110 archive.cc \
45e01f23 111 archive.h \
f6100b6f 112 archive_tar.cc \
45e01f23 113 archive_tar.h \
f6100b6f 114 archive_tar_file.cc \
f6100b6f 115 choose.cc \
45e01f23 116 choose.h \
f6100b6f 117 compress.cc \
45e01f23 118 compress.h \
f6100b6f 119 compress_bz.cc \
45e01f23 120 compress_bz.h \
f6100b6f 121 compress_gz.cc \
45e01f23 122 compress_gz.h \
671140f9
CW
123 compress_xz.cc \
124 compress_xz.h \
c9641752
AG
125 compress_zstd.cc \
126 compress_zstd.h \
b1902cbc
JT
127 confirm.cc \
128 confirm.h \
39b42ff3
RC
129 ConnectionSetting.cc \
130 ConnectionSetting.h \
ee91d9be
RC
131 ControlAdjuster.cc \
132 ControlAdjuster.h \
dbfe3c19
DK
133 crypto.cc \
134 crypto.h \
135 cyg-pubkey.h \
f6100b6f 136 desktop.cc \
45e01f23 137 desktop.h \
f6100b6f 138 dialog.cc \
45e01f23 139 dialog.h \
f6100b6f 140 diskfull.cc \
45e01f23 141 diskfull.h \
f6100b6f 142 download.cc \
58ee6135
RC
143 download.h \
144 Exception.cc \
145 Exception.h \
f6100b6f 146 find.cc \
45e01f23 147 find.h \
b401ef47
RC
148 FindVisitor.cc \
149 FindVisitor.h \
f6100b6f 150 filemanip.cc \
45e01f23 151 filemanip.h \
f6100b6f 152 fromcwd.cc \
31f0ccce 153 Generic.h \
f6100b6f 154 geturl.cc \
45e01f23 155 geturl.h \
dbfe3c19
DK
156 gpg-packet.cc \
157 gpg-packet.h \
f6100b6f 158 ini.cc \
45e01f23 159 ini.h \
076654e7
RC
160 IniDBBuilder.h \
161 IniDBBuilderPackage.cc \
162 IniDBBuilderPackage.h \
c63e8b4a 163 inilex.ll \
dacb1ebd 164 iniparse.yy \
67829ce0 165 IniParseFeedback.h \
f6100b6f
RC
166 install.cc \
167 io_stream.cc \
45e01f23 168 io_stream.h \
f6100b6f 169 io_stream_cygfile.cc \
45e01f23 170 io_stream_cygfile.h \
f6100b6f 171 io_stream_file.cc \
45e01f23 172 io_stream_file.h \
f6100b6f 173 io_stream_memory.cc \
45e01f23 174 io_stream_memory.h \
19911586 175 IOStreamProvider.h \
dbfe3c19
DK
176 KeysSetting.cc \
177 KeysSetting.h \
1c159e0a
JT
178 libsolv.cc \
179 libsolv.h \
ce9f6dd0
JT
180 ListView.cc \
181 ListView.h \
f6100b6f 182 localdir.cc \
45e01f23 183 localdir.h \
9f4a0c62
RC
184 LogFile.cc \
185 LogFile.h \
186 LogSingleton.cc \
187 LogSingleton.h \
f6100b6f 188 main.cc \
f6100b6f 189 mkdir.cc \
45e01f23 190 mkdir.h \
f6100b6f 191 mklink2.cc \
45e01f23 192 mklink2.h \
f6100b6f 193 mount.cc \
45e01f23 194 mount.h \
f6100b6f 195 msg.cc \
45e01f23 196 msg.h \
f6100b6f 197 net.cc \
45e01f23 198 net.h \
f6100b6f 199 netio.cc \
45e01f23 200 netio.h \
f6100b6f 201 nio-ie5.cc \
45e01f23 202 nio-ie5.h \
f6100b6f 203 package_db.cc \
45e01f23 204 package_db.h \
711d8346 205 package_depends.h \
4cd71131 206 package_depends.cc \
f6100b6f 207 package_meta.cc \
45e01f23 208 package_meta.h \
f6100b6f 209 package_source.cc \
45e01f23 210 package_source.h \
f3992588 211 package_version.h \
aa1e3b4d
RC
212 PackageSpecification.cc \
213 PackageSpecification.h \
076654e7 214 PackageTrust.h \
f6100b6f 215 PickCategoryLine.cc \
45e01f23 216 PickCategoryLine.h \
f6100b6f 217 PickPackageLine.cc \
45e01f23 218 PickPackageLine.h \
f6100b6f 219 PickView.cc \
45e01f23 220 PickView.h \
f6100b6f 221 postinstall.cc \
018b960d
JT
222 postinstallresults.cc \
223 postinstallresults.h \
82306ac2
BD
224 prereq.cc \
225 prereq.h \
ec366f61
JT
226 processlist.cc \
227 processlist.h \
f6100b6f 228 proppage.cc \
45e01f23 229 proppage.h \
f6100b6f 230 propsheet.cc \
45e01f23 231 propsheet.h \
8a264069 232 RECTWrapper.h \
f6100b6f 233 res.rc \
45e01f23 234 resource.h \
f6100b6f 235 root.cc \
45e01f23 236 root.h \
f6100b6f 237 script.cc \
45e01f23 238 script.h \
2b734ec7 239 setup_version.h \
f6100b6f 240 setup_version.c \
be13ef43
CV
241 sha2.h \
242 sha2.c \
f6100b6f 243 site.cc \
45e01f23 244 site.h \
f6100b6f 245 source.cc \
45e01f23 246 source.h \
6ff96351
RC
247 SourceSetting.cc \
248 SourceSetting.h \
f6100b6f 249 splash.cc \
45e01f23 250 splash.h \
f6100b6f 251 state.cc \
45e01f23 252 state.h \
f6100b6f 253 String++.cc \
45e01f23 254 String++.h \
f6100b6f 255 threebar.cc \
45e01f23 256 threebar.h \
ead15931
RC
257 UserSettings.cc \
258 UserSettings.h \
5072c0bb 259 win32.cc \
45e01f23
RC
260 win32.h \
261 window.cc \
f4d80c3f 262 window.h \
0229b1d7
MB
263 csu_util/MD5Sum.cc \
264 csu_util/MD5Sum.h \
946198be
MB
265 csu_util/rfc1738.cc \
266 csu_util/rfc1738.h \
2b734ec7 267 csu_util/version_compare.cc \
d88dca4a 268 csu_util/version_compare.h
89fc4ceb 269
679f6a2e 270GITVER := $(shell cd $(srcdir) && git describe --match release_\* --abbrev=6 --dirty || "N/A")
ba3279e3 271VER := $(subst release_,,$(GITVER))
b9d154a2 272ARCH := @ARCH@
b941c8be 273
451e2119 274setup_version.c : Makefile
ba3279e3 275 @echo "Setup version: " $(VER)
e07b6f3d 276 $(AM_V_GEN)(echo '#define VERSION_PREFIX "%%% setup-version"';\
ba3279e3 277 echo 'static const char version_store[] = VERSION_PREFIX " '$(VER)'";';\
e07b6f3d 278 echo 'const char *setup_version = version_store + sizeof (VERSION_PREFIX);') > version.tmp && \
f6100b6f
RC
279 mv version.tmp setup_version.c
280
2ae3cf4e 281# setup.exe.manifest is included in res.rc
2258d2a1 282res.o: @SETUP@.exe.manifest
2ae3cf4e 283
92ef6cf8 284.rc.o:
e07b6f3d 285 $(AM_V_GEN)$(WINDRES) --include-dir $(srcdir) -o $@ $<
f6100b6f 286
a3cc7986 287setup-src:
06eb6617
AG
288 @ver=setup-$(VER);\
289 cd ${srcdir}; rm -f $$ver; ln -sf . $$ver;\
290 git ls-files | tar -T - -cJf ${CURDIR}/$$ver-src.tar.xz;\
291 echo $$ver-src.tar.xz; exec rm -f $$ver
a3cc7986 292
07f1b4a8
CV
293# optional: strip and compress executable
294.PHONY: strip upx
295
296strip: all
77ddbf45
JT
297 $(OBJCOPY) --add-gnu-debuglink=/dev/null --only-keep-debug setup$(EXEEXT) setup.dbg
298 $(OBJCOPY) --strip-all setup$(EXEEXT)
299 $(OBJCOPY) --add-gnu-debuglink=setup.dbg setup$(EXEEXT) setup$(EXEEXT)
300
b9d154a2
JT
301CLEANFILES += setup.dbg
302
07f1b4a8
CV
303upx: strip
304 @if [ -e `which upx` ]; then\
305 upx --best --lzma setup$(EXEEXT) ;\
306 else \
307 echo "UPX doesn't seem to be installed, cannot compress setup$(EXEEXT)." ;\
308 fi
b9d154a2
JT
309
310release: upx
311 cp setup.dbg setup-${VER}.${ARCH}.dbg
312 cp setup${EXEEXT} setup-${VER}.${ARCH}${EXEEXT}
313
71c57a35
JT
314UPLOAD_HOST=cygwin-admin@cygwin.com
315UPLOAD_PATH=/www/sourceware/htdocs/cygwin/setup
316
317upload: release
7a80c6d2
JT
318 scp setup-${VER}.$(ARCH).exe setup-${VER}.$(ARCH).dbg ${UPLOAD_HOST}:${UPLOAD_PATH}
319 ssh ${UPLOAD_HOST} gpg --detach-sign ${UPLOAD_PATH}/setup-${VER}.$(ARCH).exe
71c57a35 320
b9d154a2
JT
321clean-local:
322 rm -f setup*${EXEEXT} setup*.dbg
This page took 0.185781 seconds and 5 git commands to generate.