10 lib_LTLIBRARIES = libopenconnect.la
11 sbin_PROGRAMS = openconnect
12 man8_MANS = openconnect.8
14 AM_CPPFLAGS = -DLOCALEDIR="\"$(localedir)\""
15 openconnect_SOURCES = xml.c main.c dtls.c cstp.c mainloop.c tun.c
17 openconnect_CFLAGS = $(SSL_CFLAGS) $(DTLS_SSL_CFLAGS) $(LIBXML2_CFLAGS) $(LIBPROXY_CFLAGS) $(ZLIB_CFLAGS)
18 openconnect_LDADD = libopenconnect.la $(SSL_LIBS) $(DTLS_SSL_LIBS) $(LIBXML2_LIBS) $(LIBPROXY_LIBS) $(ZLIB_LIBS) $(LIBINTL)
20 library_srcs = ssl.c http.c auth.c library.c compat.c
21 lib_srcs_gnutls = gnutls.c gnutls_pkcs12.c
22 lib_srcs_openssl = openssl.c
24 library_srcs += $(lib_srcs_gnutls)
26 if OPENCONNECT_OPENSSL
27 library_srcs += $(lib_srcs_openssl)
29 libopenconnect_la_SOURCES = version.c $(library_srcs)
30 libopenconnect_la_CFLAGS = $(SSL_CFLAGS) $(LIBXML2_CFLAGS) $(LIBPROXY_CFLAGS) $(P11KIT_CFLAGS) $(TSS_CFLAGS)
31 libopenconnect_la_LIBADD = $(SSL_LIBS) $(LIBXML2_LIBS) $(LIBPROXY_LIBS) $(LIBINTL) $(P11KIT_LIBS) $(TSS_LIBS)
32 libopenconnect_la_LDFLAGS = -version-number @APIMAJOR@:@APIMINOR@
33 noinst_HEADERS = openconnect-internal.h openconnect.h
34 include_HEADERS = openconnect.h
35 if HAVE_SYMBOL_VERSIONING
36 libopenconnect_la_LDFLAGS += -Wl,@VERSION_SCRIPT_ARG@,libopenconnect.map
37 libopenconnect_la_DEPENDENCIES = libopenconnect.map
40 pkgconfig_DATA = openconnect.pc
42 EXTRA_DIST = version.sh COPYING.LGPL $(lib_srcs_openssl) $(lib_srcs_gnutls)
44 DISTCLEANFILES = $(pkgconfig_DATA)
47 version.c: $(library_srcs) $(lib_openssl_srcs) $(lib_gnutls_srcs) \
48 $(openconnect_SOURCES) Makefile.am configure.ac \
49 openconnect.h openconnect-internal.h version.sh @GITVERSIONDEPS@
50 @cd $(srcdir) && ./version.sh $(abs_builddir)/version.c
52 tmp-dist: uncommitted-check
53 $(MAKE) $(AM_MAKEFLAGS) VERSION=$(patsubst v%,%,$(shell git describe --tags)) DISTHOOK=0 dist
56 @if ! git update-index --refresh --unmerged || \
57 ! git diff-index --name-only --exit-code HEAD; then \
58 echo "*** ERROR: Uncommitted changes in above files"; exit 1; fi
61 dist-hook: uncommitted-check
62 @if [ $(DISTHOOK) = 1 ]; then \
63 if ! git rev-parse --verify v$(VERSION) &> /dev/null; then \
64 echo "*** ERROR: Version v$(VERSION) is not tagged"; exit 1; fi ; \
65 if ! git diff --name-only --exit-code v$(VERSION) HEAD > /dev/null; then \
66 echo "*** ERROR: Git checkout not at version v$(VERSION)"; exit 1; fi ; \
70 @for a in $(DIST_ARCHIVES); do \
71 gpg --default-key 67E2F359 --detach-sign -a $$a ; \
74 tag: uncommitted-check
75 @if git rev-parse --verify v$(VERSION) &> /dev/null; then \
76 echo "*** ERROR: Version v$(VERSION) is already tagged"; exit 1; fi
77 @sed 's/AC_INIT.*/AC_INIT(openconnect, $(VERSION))/' -i $(srcdir)/configure.ac
78 @sed 's/^v=.*/v="v$(VERSION)"/' -i $(srcdir)/version.sh
79 @( echo '1,/<!-- latest-release-start -->/p' ;\
80 echo '/<!-- latest-release-end -->/,$$p' ;\
81 echo '/<!-- latest-release-start -->/a\' ;\
82 echo 'The latest release is <a href="ftp://ftp.infradead.org/pub/openconnect/openconnect-$(VERSION).tar.gz">OpenConnect v$(VERSION)</a>\' ;\
83 echo '<i>(<a href="ftp://ftp.infradead.org/pub/openconnect/openconnect-$(VERSION).tar.gz.asc">PGP signature</a>)</i>,\' ;\
84 echo 'released on $(shell date +%Y-%m-%d) with the following changelog:</p>\' ;\
85 sed '0,/<b>OpenConnect HEAD/d;/<\/ul><br\/>/,$$d;s/$$/\\/' $(srcdir)/www/changelog.xml ;\
87 sed -n -f - -i $(srcdir)/www/download.xml
88 @( echo "s/Last modified: .*/Last modified: $(shell date)/" ;\
89 echo '/ <li><b>OpenConnect HEAD/a\' ;\
91 echo ' <li><i>No changelog entries yet</i></li>\';\
92 echo ' </ul><br/>\' ; echo ' </li>\' ;\
93 echo ' <li><b><a href="ftp://ftp.infradead.org/pub/openconnect/openconnect-$(VERSION).tar.gz">OpenConnect v$(VERSION)</a></b>\' ;\
94 echo ' <i>(<a href="ftp://ftp.infradead.org/pub/openconnect/openconnect-$(VERSION).tar.gz.asc">PGP signature</a>)</i> — $(shell date +%Y-%m-%d)' ) | \
95 sed -f - -i $(srcdir)/www/changelog.xml
96 # stupid syntax highlighting '
97 @cd $(srcdir) && git commit -s -m "Tag version $(VERSION)" configure.ac version.sh www/download.xml www/changelog.xml
99 @cd $(srcdir) && ./autogen.sh
102 @cd $(top_srcdir); if ! git diff-index --name-only --exit-code HEAD -- po/; then \
103 echo "*** ERROR: Uncommitted changes in above files"; exit 1; \
105 tx pull -af ; git commit -s -m "Update translations from Transifex" -- po/ ; \
109 if [ ${abs_top_builddir} != $(abs_top_srcdir) ]; then \
110 ln -sf ${abs_top_srcdir}/.tx .tx; fi
111 @make -C po openconnect.pot && tx push -s