]> cygwin.com Git - cygwin-apps/setup.git/blame_incremental - Makefile.am
Run libgcrypt self-tests
[cygwin-apps/setup.git] / Makefile.am
... / ...
CommitLineData
1## Process this file with automake to produce Makefile.in
2#
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#
14# Makefile for Cygwin installer
15
16SUBDIRS := @subdirs@ tests
17
18## DISTCLEANFILES = include/stamp-h include/stamp-h[0-9]*
19
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)
22BASECXXFLAGS = -Werror -Wall -Wpointer-arith -Wcomments \
23 -Wcast-align -Wwrite-strings -fno-builtin-sscanf \
24 -Wno-attributes
25AM_CXXFLAGS = $(BASECXXFLAGS) -std=gnu++11 ${$(*F)_CXXFLAGS}
26AM_CFLAGS = $(BASECXXFLAGS) -Wmissing-declarations -Winline \
27 -Wstrict-prototypes -Wmissing-prototypes
28AM_YFLAGS = -d
29AM_LFLAGS = -8
30WINDRES = @WINDRES@
31AM_CPPFLAGS = -DLZMA_API_STATIC -I$(srcdir)/libgetopt++/include \
32 $(ZLIB_CFLAGS) $(LZMA_CFLAGS) $(ZSTD_CFLAGS) $(LIBCRYPT_CFLAGS) $(LIBSOLV_CFLAGS)
33
34inilex_CXXFLAGS:=-Wno-sign-compare
35
36noinst_PROGRAMS = @SETUP@$(EXEEXT) inilint
37
38EXTRA_DIST = \
39 CHANGES \
40 CONTRIBUTORS \
41 COPYING \
42 bootstrap.sh \
43 cygwin.ico \
44 cygwin-setup.ico \
45 cygwin-terminal.ico \
46 setup.exe.manifest \
47 setup64.exe.manifest \
48 tree-minus.ico \
49 tree-plus.ico
50
51# iniparse.hh is generated from iniparse.yy via bison -d, so it needs to be
52# included here for proper tracking (but not iniparse.cc, since automake
53# knows about that already)
54BUILT_SOURCES = \
55 setup_version.c \
56 iniparse.hh
57
58CLEANFILES = setup_version.c
59
60inilint_LDADD = \
61 libgetopt++/libgetopt++.la \
62 -lntdll -luuid
63
64inilint_SOURCES = \
65 filemanip.cc \
66 filemanip.h \
67 CliParseFeedback.cc \
68 CliParseFeedback.h \
69 LogSingleton.cc \
70 LogSingleton.h \
71 IniDBBuilder.h \
72 inilintmain.cc \
73 inilex.ll \
74 iniparse.yy \
75 io_stream.cc \
76 io_stream.h \
77 io_stream_file.cc \
78 io_stream_file.h \
79 mkdir.cc \
80 mkdir.h \
81 mklink2.cc \
82 mklink2.h \
83 PackageTrust.h \
84 String++.cc \
85 String++.h \
86 win32.cc \
87 win32.h
88
89@SETUP@_LDADD = \
90 libgetopt++/libgetopt++.la \
91 $(LIBGCRYPT_LIBS) \
92 $(ZSTD_LIBS) \
93 $(LZMA_LIBS) \
94 $(BZ2_LIBS) \
95 $(ZLIB_LIBS) \
96 $(LIBSOLV_LIBS) -lregex \
97 -lshlwapi -lcomctl32 -lole32 -lpsapi -luuid -lntdll -lwininet -lws2_32 -lmingw32
98@SETUP@_LDFLAGS = -mwindows -Wc,-static -static-libtool-libs
99@SETUP@_SOURCES = \
100 actionlist.h \
101 AntiVirus.cc \
102 AntiVirus.h \
103 archive.cc \
104 archive.h \
105 archive_tar.cc \
106 archive_tar.h \
107 archive_tar_file.cc \
108 choose.cc \
109 choose.h \
110 compress.cc \
111 compress.h \
112 compress_bz.cc \
113 compress_bz.h \
114 compress_gz.cc \
115 compress_gz.h \
116 compress_xz.cc \
117 compress_xz.h \
118 compress_zstd.cc \
119 compress_zstd.h \
120 confirm.cc \
121 confirm.h \
122 ConnectionSetting.cc \
123 ConnectionSetting.h \
124 ControlAdjuster.cc \
125 ControlAdjuster.h \
126 crypto.cc \
127 crypto.h \
128 cyg-pubkey.h \
129 desktop.cc \
130 desktop.h \
131 dialog.cc \
132 dialog.h \
133 diskfull.cc \
134 diskfull.h \
135 download.cc \
136 download.h \
137 Exception.cc \
138 Exception.h \
139 find.cc \
140 find.h \
141 FindVisitor.cc \
142 FindVisitor.h \
143 filemanip.cc \
144 filemanip.h \
145 fromcwd.cc \
146 Generic.h \
147 geturl.cc \
148 geturl.h \
149 gpg-packet.cc \
150 gpg-packet.h \
151 ini.cc \
152 ini.h \
153 IniDBBuilder.h \
154 IniDBBuilderPackage.cc \
155 IniDBBuilderPackage.h \
156 inilex.ll \
157 iniparse.yy \
158 IniParseFeedback.h \
159 install.cc \
160 io_stream.cc \
161 io_stream.h \
162 io_stream_cygfile.cc \
163 io_stream_cygfile.h \
164 io_stream_file.cc \
165 io_stream_file.h \
166 io_stream_memory.cc \
167 io_stream_memory.h \
168 IOStreamProvider.h \
169 KeysSetting.cc \
170 KeysSetting.h \
171 libsolv.cc \
172 libsolv.h \
173 ListView.cc \
174 ListView.h \
175 localdir.cc \
176 localdir.h \
177 LogFile.cc \
178 LogFile.h \
179 LogSingleton.cc \
180 LogSingleton.h \
181 main.cc \
182 mkdir.cc \
183 mkdir.h \
184 mklink2.cc \
185 mklink2.h \
186 mount.cc \
187 mount.h \
188 msg.cc \
189 msg.h \
190 net.cc \
191 net.h \
192 netio.cc \
193 netio.h \
194 nio-ie5.cc \
195 nio-ie5.h \
196 package_db.cc \
197 package_db.h \
198 package_depends.h \
199 package_depends.cc \
200 package_meta.cc \
201 package_meta.h \
202 package_source.cc \
203 package_source.h \
204 package_version.h \
205 PackageSpecification.cc \
206 PackageSpecification.h \
207 PackageTrust.h \
208 PickCategoryLine.cc \
209 PickCategoryLine.h \
210 PickPackageLine.cc \
211 PickPackageLine.h \
212 PickView.cc \
213 PickView.h \
214 postinstall.cc \
215 postinstallresults.cc \
216 postinstallresults.h \
217 prereq.cc \
218 prereq.h \
219 processlist.cc \
220 processlist.h \
221 proppage.cc \
222 proppage.h \
223 propsheet.cc \
224 propsheet.h \
225 RECTWrapper.h \
226 res.rc \
227 resource.h \
228 root.cc \
229 root.h \
230 script.cc \
231 script.h \
232 setup_version.h \
233 setup_version.c \
234 sha2.h \
235 sha2.c \
236 site.cc \
237 site.h \
238 source.cc \
239 source.h \
240 SourceSetting.cc \
241 SourceSetting.h \
242 splash.cc \
243 splash.h \
244 state.cc \
245 state.h \
246 String++.cc \
247 String++.h \
248 threebar.cc \
249 threebar.h \
250 UserSettings.cc \
251 UserSettings.h \
252 win32.cc \
253 win32.h \
254 window.cc \
255 window.h \
256 csu_util/MD5Sum.cc \
257 csu_util/MD5Sum.h \
258 csu_util/rfc1738.cc \
259 csu_util/rfc1738.h \
260 csu_util/version_compare.cc \
261 csu_util/version_compare.h
262
263GITVER := $(shell cd $(srcdir) && git describe --match release_\* --abbrev=6 --dirty || "N/A")
264VER := $(subst release_,,$(GITVER))
265ARCH := @ARCH@
266
267setup_version.c : Makefile
268 @echo "Setup version: " $(VER)
269 $(AM_V_GEN)(echo '#define VERSION_PREFIX "%%% setup-version"';\
270 echo 'static const char version_store[] = VERSION_PREFIX " '$(VER)'";';\
271 echo 'const char *setup_version = version_store + sizeof (VERSION_PREFIX);') > version.tmp && \
272 mv version.tmp setup_version.c
273
274# setup.exe.manifest is included in res.rc
275res.o: @SETUP@.exe.manifest
276
277.rc.o:
278 $(AM_V_GEN)$(WINDRES) --include-dir $(srcdir) -o $@ $<
279
280setup-src:
281 @ver=setup-$(VER);\
282 cd ${srcdir}; rm -f $$ver; ln -sf . $$ver;\
283 git ls-files | tar -T - -cJf ${CURDIR}/$$ver-src.tar.xz;\
284 echo $$ver-src.tar.xz; exec rm -f $$ver
285
286# optional: strip and compress executable
287.PHONY: strip upx
288
289strip: all
290 $(OBJCOPY) --add-gnu-debuglink=/dev/null --only-keep-debug setup$(EXEEXT) setup.dbg
291 $(OBJCOPY) --strip-all setup$(EXEEXT)
292 $(OBJCOPY) --add-gnu-debuglink=setup.dbg setup$(EXEEXT) setup$(EXEEXT)
293
294CLEANFILES += setup.dbg
295
296upx: strip
297 @if [ -e `which upx` ]; then\
298 upx --best --lzma setup$(EXEEXT) ;\
299 else \
300 echo "UPX doesn't seem to be installed, cannot compress setup$(EXEEXT)." ;\
301 fi
302
303release: upx
304 cp setup.dbg setup-${VER}.${ARCH}.dbg
305 cp setup${EXEEXT} setup-${VER}.${ARCH}${EXEEXT}
306
307UPLOAD_HOST=cygwin-admin@cygwin.com
308UPLOAD_PATH=/www/sourceware/htdocs/cygwin/setup
309
310upload: release
311 scp setup-${VER}.$(ARCH).exe setup-${VER}.$(ARCH).dbg ${UPLOAD_HOST}:${UPLOAD_PATH}
312 ssh ${UPLOAD_HOST} gpg --detach-sign ${UPLOAD_PATH}/setup-${VER}.$(ARCH).exe
313
314clean-local:
315 rm -f setup*${EXEEXT} setup*.dbg
This page took 0.052662 seconds and 5 git commands to generate.