1 ## Process this file with automake to produce Makefile.in
5 # Copyright (c) 2000, Red Hat, Inc.
6 # Copyright (c) 2002, Robert Collins
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.
13 # A copy of the GNU General Public License can be found at
16 # Written by Christopher Faylor <cgf@redhat.com>
17 # and Robert Collins <rbtcollins@hotmail.com>
19 # Makefile for Cygwin installer
21 AUTOMAKE_OPTIONS = dist-bzip2 subdir-objects 1.6 foreign
22 DIST_SUBDIRS = libgetopt++ tests
23 SUBDIRS = libgetopt++ tests
25 ## DISTCLEANFILES = include/stamp-h include/stamp-h[0-9]*
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
37 INCLUDES = -I$(srcdir)/libgetopt++/include -I/usr/include/mingw
39 noinst_PROGRAMS = setup @INILINT@
41 EXTRA_PROGRAMS = inilint
42 ## noinst_PROGRAMS +=inilint
59 libmd5-rfc/md5main.c \
78 warnonly-inilex.o libgetopt++/libgetopt++.la \
102 PackageSpecification.cc \
103 PackageSpecification.h \
105 csu_util/rfc1738.cc \
111 # Obviously we are not really building a program called warnonly
112 # However, this dance was the most non-invasive way I could find
113 # of varying CFLAGS for a single file
114 EXTRA_PROGRAMS += warnonly
115 warnonly_CXXFLAGS = $(BASECXXFLAGS)
116 warnonly_SOURCES = inilex.cc
117 EXTRA_setup_SOURCES = $(warnonly_SOURCES)
118 EXTRA_inilint_SOURCES = $(warnonly_SOURCES)
121 warnonly-inilex.o libgetopt++/libgetopt++.la \
123 /usr/lib/mingw/libbz2.a /usr/lib/mingw/libz.a \
124 -luser32 -lkernel32 -lcomctl32 -lole32 -lwsock32 -lnetapi32 -ladvapi32 -luuid
125 setup_LDFLAGS = -mwindows
133 archive_tar_file.cc \
143 ConnectionSetting.cc \
144 ConnectionSetting.h \
172 IniDBBuilderPackage.cc \
173 IniDBBuilderPackage.h \
176 IniParseFeedback.cc \
178 IniParseFindVisitor.cc \
179 IniParseFindVisitor.h \
183 io_stream_cygfile.cc \
184 io_stream_cygfile.h \
187 io_stream_memory.cc \
225 PackageSpecification.cc \
226 PackageSpecification.h \
228 PickCategoryLine.cc \
279 csu_util/rfc1738.cc \
281 csu_util/version_compare.cc \
282 csu_util/version_compare.h \
286 setup_version.c : $(srcdir)/ChangeLog Makefile
287 V=`sed -ne 's/^\$$Revi[s]ion: *\([^ ]*\) *$$.*/\1/p' \
288 $(srcdir)/ChangeLog` ;\
289 (echo '#define VERSION_PREFIX "%%% setup-version"';\
290 echo 'static const char version_store[] = VERSION_PREFIX " '$$V'";';\
291 echo 'const char *setup_version = version_store + sizeof (VERSION_PREFIX);') > version.tmp;\
292 mv version.tmp setup_version.c
295 $(WINDRES) --preprocessor "$(CC) -E -xc-header -DRC_INVOKED" --include-dir $(srcdir) -o $@ $<
297 iniparse.cc iniparse.h : iniparse.y
298 bison -d -o iniparse.cc $(srcdir)/iniparse.y
299 @mv iniparse.cc.h iniparse.h 2>/dev/null || mv iniparse.hh iniparse.h
301 inilex.cc : inilex.l iniparse.h
302 flex -8 $(srcdir)/inilex.l
303 mv lex.yy.c inilex.cc
305 # Make a distribution package and tarball
306 release: setup$(EXEEXT) dist-all $(srcdir)/ChangeLog Makefile
307 $(STRIP) setup.exe && \
308 upx --best setup.exe && \
309 V=`sed -ne 's/^\$$Revi[s]ion: *\([^ ]*\) *$$.*/\1/p' \
310 $(srcdir)/ChangeLog` ;\
311 mv setup.exe setup-$${V}.exe && \
312 mv setup-0.tar.bz2 setup-$${V}.tar.bz2 && \
313 tar cjf setup-$${V}-1-src.tar.bz2 setup-$${V}.tar.bz2
315 # Create a snapshot and upload it (requires write access)
317 V=`sed -ne 's/^\$$Revi[s]ion: *\([^ ]*\) *$$.*/\1/p' \
318 $(srcdir)/ChangeLog` ;\
319 scp -C setup-$${V}.exe setup-$${V}.tar.bz2 $${cygwinsite}:setup-snapshots/