]> cygwin.com Git - cygwin-apps/setup.git/blame - Makefile.am
Remove NetIO_File
[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@
d88dca4a 31AM_CPPFLAGS = -DLZMA_API_STATIC -I$(srcdir)/libgetopt++/include
f6100b6f 32
6a03d5cd
CV
33inilex_CXXFLAGS:=-Wno-sign-compare
34
e49fef4d 35noinst_PROGRAMS = @SETUP@$(EXEEXT) @INILINT@
58ee6135
RC
36
37EXTRA_PROGRAMS = inilint
19911586 38## noinst_PROGRAMS +=inilint
f6100b6f 39
45e01f23 40EXTRA_DIST = \
89fc4ceb
MB
41 CHANGES \
42 CONTRIBUTORS \
43 COPYING \
44 bootstrap.sh \
45 check-na.bmp \
46 check-no.bmp \
47 check-yes.bmp \
48 choose-rtarrow.bmp \
49 choose-spin.bmp \
50 cygwin.ico \
c0342e37
CV
51 cygwin-setup.ico \
52 cygwin-terminal.ico \
89fc4ceb 53 setup.exe.manifest \
2258d2a1 54 setup64.exe.manifest \
89fc4ceb
MB
55 tree-minus.bmp \
56 tree-plus.bmp
45e01f23 57
443b9db6 58# iniparse.hh is generated from iniparse.yy via bison -d, so it needs to be
dacb1ebd
BD
59# included here for proper tracking (but not iniparse.cc, since automake
60# knows about that already)
89fc4ceb
MB
61BUILT_SOURCES = \
62 setup_version.c \
443b9db6 63 iniparse.hh
f6100b6f 64
92ef6cf8
BD
65CLEANFILES = setup_version.c
66
89fc4ceb 67inilint_LDADD = \
c63e8b4a 68 libgetopt++/libgetopt++.la
58ee6135 69inilint_SOURCES = \
89fc4ceb
MB
70 filemanip.cc \
71 filemanip.h \
72 find.cc \
73 find.h \
74 FindVisitor.cc \
75 FindVisitor.h \
76 LogSingleton.cc \
77 LogSingleton.h \
78 IniDBBuilder.h \
79 inilintmain.cc \
c63e8b4a 80 inilex.ll \
dacb1ebd 81 iniparse.yy \
89fc4ceb
MB
82 IniParseFeedback.cc \
83 IniParseFeedback.h \
84 io_stream.h \
85 io_stream.cc \
86 io_stream_file.h \
87 io_stream_file.cc \
88 IOStreamProvider.h \
89 mkdir.cc \
90 mkdir.h \
e49fef4d 91 mklink2.cc \
89fc4ceb
MB
92 PackageSpecification.cc \
93 PackageSpecification.h \
94 PackageTrust.h \
95 csu_util/rfc1738.cc \
96 csu_util/rfc1738.h \
97 String++.cc \
e49fef4d 98 String++.h
58ee6135 99
e49fef4d 100@SETUP@_LDADD = \
1c159e0a 101 libgetopt++/libgetopt++.la -lgcrypt -lgpg-error -llzma -lbz2 -lz -lsolv -lregex \
22819fa1 102 -lshlwapi -lcomctl32 -lole32 -lws2_32 -lpsapi -luuid -lntdll -lwininet -lmingw32
e49fef4d
YS
103@SETUP@_LDFLAGS = -mwindows -Wc,-static -static-libtool-libs
104@SETUP@_SOURCES = \
f9e903a3
RC
105 AntiVirus.cc \
106 AntiVirus.h \
f6100b6f 107 archive.cc \
45e01f23 108 archive.h \
f6100b6f 109 archive_tar.cc \
45e01f23 110 archive_tar.h \
f6100b6f 111 archive_tar_file.cc \
f6100b6f 112 choose.cc \
45e01f23 113 choose.h \
f6100b6f 114 compress.cc \
45e01f23 115 compress.h \
f6100b6f 116 compress_bz.cc \
45e01f23 117 compress_bz.h \
f6100b6f 118 compress_gz.cc \
45e01f23 119 compress_gz.h \
671140f9
CW
120 compress_xz.cc \
121 compress_xz.h \
b1902cbc
JT
122 confirm.cc \
123 confirm.h \
39b42ff3
RC
124 ConnectionSetting.cc \
125 ConnectionSetting.h \
ee91d9be
RC
126 ControlAdjuster.cc \
127 ControlAdjuster.h \
dbfe3c19
DK
128 crypto.cc \
129 crypto.h \
130 cyg-pubkey.h \
f6100b6f 131 desktop.cc \
45e01f23 132 desktop.h \
f6100b6f 133 dialog.cc \
45e01f23 134 dialog.h \
f6100b6f 135 diskfull.cc \
45e01f23 136 diskfull.h \
f6100b6f 137 download.cc \
58ee6135
RC
138 download.h \
139 Exception.cc \
140 Exception.h \
f6100b6f 141 find.cc \
45e01f23 142 find.h \
b401ef47
RC
143 FindVisitor.cc \
144 FindVisitor.h \
f6100b6f 145 filemanip.cc \
45e01f23 146 filemanip.h \
f6100b6f 147 fromcwd.cc \
31f0ccce 148 Generic.h \
f6100b6f 149 geturl.cc \
45e01f23 150 geturl.h \
dbfe3c19
DK
151 gpg-packet.cc \
152 gpg-packet.h \
f6100b6f 153 ini.cc \
45e01f23 154 ini.h \
076654e7
RC
155 IniDBBuilder.h \
156 IniDBBuilderPackage.cc \
157 IniDBBuilderPackage.h \
c63e8b4a 158 inilex.ll \
dacb1ebd 159 iniparse.yy \
67829ce0
RC
160 IniParseFeedback.cc \
161 IniParseFeedback.h \
f6100b6f
RC
162 install.cc \
163 io_stream.cc \
45e01f23 164 io_stream.h \
f6100b6f 165 io_stream_cygfile.cc \
45e01f23 166 io_stream_cygfile.h \
f6100b6f 167 io_stream_file.cc \
45e01f23 168 io_stream_file.h \
f6100b6f 169 io_stream_memory.cc \
45e01f23 170 io_stream_memory.h \
19911586 171 IOStreamProvider.h \
dbfe3c19
DK
172 KeysSetting.cc \
173 KeysSetting.h \
1c159e0a
JT
174 libsolv.cc \
175 libsolv.h \
f6100b6f 176 localdir.cc \
45e01f23 177 localdir.h \
9f4a0c62
RC
178 LogFile.cc \
179 LogFile.h \
180 LogSingleton.cc \
181 LogSingleton.h \
f6100b6f 182 main.cc \
f6100b6f 183 mkdir.cc \
45e01f23 184 mkdir.h \
f6100b6f 185 mklink2.cc \
45e01f23 186 mklink2.h \
f6100b6f 187 mount.cc \
45e01f23 188 mount.h \
f6100b6f 189 msg.cc \
45e01f23 190 msg.h \
f6100b6f 191 net.cc \
45e01f23 192 net.h \
f6100b6f 193 netio.cc \
45e01f23 194 netio.h \
f6100b6f 195 nio-ie5.cc \
45e01f23 196 nio-ie5.h \
f6100b6f 197 nio-http.cc \
45e01f23 198 nio-http.h \
f6100b6f 199 package_db.cc \
45e01f23 200 package_db.h \
711d8346 201 package_depends.h \
4cd71131 202 package_depends.cc \
f6100b6f 203 package_meta.cc \
45e01f23 204 package_meta.h \
f6100b6f 205 package_source.cc \
45e01f23 206 package_source.h \
f3992588 207 package_version.h \
aa1e3b4d
RC
208 PackageSpecification.cc \
209 PackageSpecification.h \
076654e7 210 PackageTrust.h \
f6100b6f 211 PickCategoryLine.cc \
45e01f23 212 PickCategoryLine.h \
45e01f23 213 PickLine.h \
f6100b6f 214 PickPackageLine.cc \
45e01f23 215 PickPackageLine.h \
f6100b6f 216 PickView.cc \
45e01f23 217 PickView.h \
f6100b6f 218 postinstall.cc \
018b960d
JT
219 postinstallresults.cc \
220 postinstallresults.h \
82306ac2
BD
221 prereq.cc \
222 prereq.h \
ec366f61
JT
223 processlist.cc \
224 processlist.h \
f6100b6f 225 proppage.cc \
45e01f23 226 proppage.h \
f6100b6f 227 propsheet.cc \
45e01f23 228 propsheet.h \
8a264069 229 RECTWrapper.h \
f6100b6f 230 res.rc \
45e01f23 231 resource.h \
f6100b6f 232 root.cc \
45e01f23 233 root.h \
f6100b6f 234 script.cc \
45e01f23 235 script.h \
2b734ec7 236 setup_version.h \
f6100b6f 237 setup_version.c \
be13ef43
CV
238 sha2.h \
239 sha2.c \
f6100b6f 240 simpsock.cc \
45e01f23 241 simpsock.h \
f6100b6f 242 site.cc \
45e01f23 243 site.h \
f6100b6f 244 source.cc \
45e01f23 245 source.h \
6ff96351
RC
246 SourceSetting.cc \
247 SourceSetting.h \
f6100b6f 248 splash.cc \
45e01f23 249 splash.h \
f6100b6f 250 state.cc \
45e01f23 251 state.h \
f6100b6f 252 String++.cc \
45e01f23 253 String++.h \
f6100b6f 254 threebar.cc \
45e01f23 255 threebar.h \
ead15931
RC
256 UserSettings.cc \
257 UserSettings.h \
5072c0bb 258 win32.cc \
45e01f23
RC
259 win32.h \
260 window.cc \
f4d80c3f 261 window.h \
0229b1d7
MB
262 csu_util/MD5Sum.cc \
263 csu_util/MD5Sum.h \
946198be
MB
264 csu_util/rfc1738.cc \
265 csu_util/rfc1738.h \
2b734ec7 266 csu_util/version_compare.cc \
d88dca4a 267 csu_util/version_compare.h
89fc4ceb 268
679f6a2e 269GITVER := $(shell cd $(srcdir) && git describe --match release_\* --abbrev=6 --dirty || "N/A")
ba3279e3 270VER := $(subst release_,,$(GITVER))
b9d154a2 271ARCH := @ARCH@
b941c8be 272
451e2119 273setup_version.c : Makefile
ba3279e3 274 @echo "Setup version: " $(VER)
e07b6f3d 275 $(AM_V_GEN)(echo '#define VERSION_PREFIX "%%% setup-version"';\
ba3279e3 276 echo 'static const char version_store[] = VERSION_PREFIX " '$(VER)'";';\
e07b6f3d 277 echo 'const char *setup_version = version_store + sizeof (VERSION_PREFIX);') > version.tmp && \
f6100b6f
RC
278 mv version.tmp setup_version.c
279
2ae3cf4e 280# setup.exe.manifest is included in res.rc
2258d2a1 281res.o: @SETUP@.exe.manifest
2ae3cf4e 282
92ef6cf8 283.rc.o:
e07b6f3d 284 $(AM_V_GEN)$(WINDRES) --include-dir $(srcdir) -o $@ $<
f6100b6f 285
a3cc7986 286setup-src:
06eb6617
AG
287 @ver=setup-$(VER);\
288 cd ${srcdir}; rm -f $$ver; ln -sf . $$ver;\
289 git ls-files | tar -T - -cJf ${CURDIR}/$$ver-src.tar.xz;\
290 echo $$ver-src.tar.xz; exec rm -f $$ver
a3cc7986 291
07f1b4a8
CV
292# optional: strip and compress executable
293.PHONY: strip upx
294
295strip: all
77ddbf45
JT
296 $(OBJCOPY) --add-gnu-debuglink=/dev/null --only-keep-debug setup$(EXEEXT) setup.dbg
297 $(OBJCOPY) --strip-all setup$(EXEEXT)
298 $(OBJCOPY) --add-gnu-debuglink=setup.dbg setup$(EXEEXT) setup$(EXEEXT)
299
b9d154a2
JT
300CLEANFILES += setup.dbg
301
07f1b4a8
CV
302upx: strip
303 @if [ -e `which upx` ]; then\
304 upx --best --lzma setup$(EXEEXT) ;\
305 else \
306 echo "UPX doesn't seem to be installed, cannot compress setup$(EXEEXT)." ;\
307 fi
b9d154a2
JT
308
309release: upx
310 cp setup.dbg setup-${VER}.${ARCH}.dbg
311 cp setup${EXEEXT} setup-${VER}.${ARCH}${EXEEXT}
312
71c57a35
JT
313UPLOAD_HOST=cygwin-admin@cygwin.com
314UPLOAD_PATH=/www/sourceware/htdocs/cygwin/setup
315
316upload: release
7a80c6d2
JT
317 scp setup-${VER}.$(ARCH).exe setup-${VER}.$(ARCH).dbg ${UPLOAD_HOST}:${UPLOAD_PATH}
318 ssh ${UPLOAD_HOST} gpg --detach-sign ${UPLOAD_PATH}/setup-${VER}.$(ARCH).exe
71c57a35 319
b9d154a2
JT
320clean-local:
321 rm -f setup*${EXEEXT} setup*.dbg
This page took 0.11238 seconds and 5 git commands to generate.