+++ /dev/null
-#
-# in order to use a private copy of openssl instead of the installed one,
-# set OPENSSL to the path to the source directory that you built openssl in
-#
-# OPENSSL := ../openssl-0.9.8i
-
-ifdef RPM_OPT_FLAGS
-OPT_FLAGS := $(RPM_OPT_FLAGS)
-else
-OPT_FLAGS := -O2 -g -Wall
-endif
-
-PKGCONFIG=$(shell pkg-config --version)
-ifeq ($(PKGCONFIG),)
-$(error "No pkg-config. Cannot continue");
-endif
-
-# Allow people to override OpenSSL and build it statically, if they need
-# a special build for the DTLS support. $(OPENSSL) points to the build
-# dir; there's no need to install it anywhere (we link it statically).
-ifdef OPENSSL
-SSL_CFLAGS += -I$(OPENSSL)/include
-SSL_LDFLAGS += $(OPENSSL)/libssl.a $(OPENSSL)/libcrypto.a
-else
-SSL_CFLAGS += $(shell pkg-config --cflags openssl)
-SSL_LDFLAGS += $(shell pkg-config --libs openssl)
-ifeq ($(SSL_LDFLAGS),)
-$(error "No OpenSSL support. Cannot continue");
-endif
-endif
-
-XML2_CFLAGS += $(shell xml2-config --cflags)
-XML2_LDFLAGS += $(shell xml2-config --libs)
-ifeq ($(XML2_LDFLAGS),)
-$(error "No libxml2 support. Cannot continue");
-endif
-
-CFLAGS := $(OPT_FLAGS) $(SSL_CFLAGS) $(XML2_CFLAGS) $(EXTRA_CFLAGS)
-LDFLAGS := -lz $(SSL_LDFLAGS) $(XML2_LDFLAGS) $(EXTRA_LDFLAGS)
-
-ifdef SSL_UI
-CFLAGS += -DSSL_UI
-endif
-
--include Make.config
-
-ifneq ($(IF_TUN_HDR),)
-CFLAGS_tun.o += -DIF_TUN_HDR=\"$(IF_TUN_HDR)\"
-endif
-
-ifneq ($(LIBPROXY_HDR),)
-CFLAGS += -DOPENCONNECT_LIBPROXY -DLIBPROXY_HDR=\"$(LIBPROXY_HDR)\"
-LDFLAGS += -lproxy
-endif
-
-OPENCONNECT_OBJS := xml.o main.o $(SSL_UI)
-CONNECTION_OBJS := dtls.o cstp.o mainloop.o tun.o
-AUTH_OBJECTS := ssl.o http.o version.o auth.o library.o
-
-VERSION_OBJS := $(filter-out version.o, \
- $(OPENCONNECT_OBJS) $(CONNECTION_OBJS) $(AUTH_OBJECTS))
-
-.PHONY: all clean realclean install tag tarball openconnect.pc
-
-all: openconnect
-
-libopenconnect.a: ${AUTH_OBJECTS}
- $(AR) rcs $@ $^
-
-version.c: $(patsubst %.o,%.c,$(VERSION_OBJS)) Makefile openconnect.h \
- openconnect-internal.h $(wildcard .git/index .git/refs/tags) \
- version.sh
- @./version.sh
-
-openconnect: $(OPENCONNECT_OBJS) $(CONNECTION_OBJS) libopenconnect.a
- $(CC) -o $@ $^ $(LDFLAGS)
-
-%.o: %.c
- $(CC) -c -o $@ $(CFLAGS) $(CFLAGS_$@) $< -MD -MF .$@.dep
-
-clean:
- rm -f *.o *.a openconnect $(wildcard .*.o.dep .*.h.dep) Make.config openconnect.pc
-
-realclean: clean
- rm -f *~
-
-install: all
- mkdir -p $(DESTDIR)/usr/bin $(DESTDIR)/usr/share/man/man8
- install -m 0755 openconnect $(DESTDIR)/usr/bin
- install -m 0644 openconnect.8 $(DESTDIR)/usr/share/man/man8
-
-include /dev/null $(wildcard .*.o.dep)
-
-HDRTEST = for a in $2 ; do if echo "\#include <$$a>" | $(CC) -o/dev/null -xc - -M -MF $1 -MP -MT Make.config 2>/dev/null; then \
- echo $$a; break ; fi; done
-
-Make.config: LIBPROXY_H = $(shell $(call HDRTEST,.libproxy.h.dep,proxy.h libproxy/proxy.h))
-Make.config: IF_TUN_H = $(shell $(call HDRTEST,.if_tun.h.dep, linux/if_tun.h net/if_tun.h net/tun/if_tun.h))
-Make.config: Makefile
- ( echo "IF_TUN_HDR := $(IF_TUN_H)"; echo "LIBPROXY_HDR := $(LIBPROXY_H)" ) > $@
-
--include Make.config
-
-INCDIR := /usr/include
-LIBDIR := /usr/lib
-PKGCONFIGDIR := ${LIBDIR}/pkgconfig
-ifeq ($(LIBPROXY_HDR),)
-LIBPROXYPC :=
-else
-LIBPROXYPC := libproxy-1.0
-endif
-
-openconnect.pc: VERSION = $(shell sed 's/.*v\(.*\)";/\1/' version.c)
-openconnect.pc: openconnect.pc.in version.c
- sed -e 's^VERSION^$(VERSION)^' -e 's^LIBDIR^$(LIBDIR)^' -e 's^LIBPROXY^$(LIBPROXYPC)^' $< > $@
-
-install-lib: libopenconnect.a openconnect.pc
- install -D -m 0644 libopenconnect.a $(DESTDIR)$(LIBDIR)/libopenconnect.a
- install -D -m 0644 openconnect.pc $(DESTDIR)$(PKGCONFIGDIR)/openconnect.pc
- install -D -m 0644 openconnect.h $(DESTDIR)$(INCDIR)/openconnect.h
-
-ifdef VERSION
-tag:
- @git update-index --refresh --unmerged
- @if git diff-index --name-only HEAD | grep ^ ; then \
- echo Uncommitted changes in above files; exit 1; fi
- @sed 's/^v=.*/v="v$(VERSION)"/' -i version.sh
- @( echo "s/Last modified: .*/Last modified: $(shell date)/" ;\
- echo '/ <LI><B>OpenConnect HEAD/a\' ;\
- echo ' <UL>\' ;\
- echo ' <LI><I>No changelog entries yet</I></LI>\';\
- echo ' </UL><BR>\' ; echo ' </LI>\' ;\
- echo ' <LI><B><A HREF="ftp://ftp.infradead.org/pub/openconnect/openconnect-$(VERSION).tar.gz">OpenConnect v$(VERSION)</a></B> — $(shell date +%Y-%m-%d)<BR>' ) | \
- sed -f - -i openconnect.html
-# stupid syntax highlighting '
- @git commit -s -m "Tag version $(VERSION)" version.sh openconnect.html
- @git tag v$(VERSION)
-
-tarball: version.c
- @if ! grep -q '"v$(VERSION)"' version.c; then \
- echo "Tree not at v$(VERSION)"; exit 1 ; fi
- @git update-index --refresh --unmerged
- @if git diff-index --name-only HEAD | grep ^ ; then \
- echo Uncommitted changes in above files; exit 1; fi
- git add -f version.c
- git write-tree
- git commit -m "add version.c for v$(VERSION)" version.c
- git archive --format=tar --prefix=openconnect-$(VERSION)/ `git write-tree` | gzip -9 > openconnect-$(VERSION).tar.gz
- git reset v$(VERSION)
- git gc --prune
-endif
-
--- /dev/null
+
+
+lib_LTLIBRARIES = libopenconnect.la
+bin_PROGRAMS = openconnect
+man8_MANS = openconnect.8
+
+openconnect_SOURCES = xml.c main.c dtls.c cstp.c mainloop.c tun.c
+
+openconnect_CFLAGS = $(OPENSSL_CFLAGS) $(LIBXML2_CFLAGS) $(LIBPROXY_CFLAGS)
+openconnect_LDADD = libopenconnect.la $(OPENSSL_LIBS) $(LIBXML2_LIBS) $(LIBPROXY_LIBS)
+
+libopenconnect_la_SOURCES = ssl.c http.c version.c auth.c library.c
+libopenconnect_la_CFLAGS = $(OPENSSL_CFLAGS) $(LIBXML2_CFLAGS) $(LIBPROXY_CFLAGS)
+libopenconnect_la_LIBADD = $(OPENSSL_LIBS) $(LIBXML2_LIBS) $(LIBPROXY_LIBS)
+libopenconnect_la_LDFLAGS = -version-number 1:2
+noinst_HEADERS = openconnect-internal.h openconnect.h
+include_HEADERS = openconnect.h
+
+pkgconfigdir = $(libdir)/pkgconfig
+pkgconfig_DATA = openconnect.pc
+
+EXTRA_DIST = version.sh openconnect.html openconnect.8 COPYING.LGPL
+
+DISTCLEANFILES = $(pkgconfig_DATA) version.c
+
+version.c: $(filter-out version.c, $(libopenconnect_la_SOURCES)) \
+ $(openconnect_SOURCES) Makefile.am configure.ac \
+ openconnect.h openconnect-internal.h version.sh \
+ $(wildcard .git/index .git/refs/tags)
+ @./version.sh
+
+dist-hook:
+ @git update-index --refresh --unmerged
+ @if git diff-index --name-only HEAD | grep ^ ; then \
+ echo Uncommitted changes in above files; exit 1; fi
+
+ ifdef VERSION
+tag:
+ @git update-index --refresh --unmerged
+ @if git diff-index --name-only HEAD | grep ^ ; then \
+ echo Uncommitted changes in above files; exit 1; fi
+ @sed 's/AC_INIT.*/AC_INIT(openconnect, $(VERSION))/' -i configure.ac
+ @sed 's/^v=.*/v="v$(VERSION)"/' -i version.sh
+ @( echo "s/Last modified: .*/Last modified: $(shell date)/" ;\
+ echo '/ <LI><B>OpenConnect HEAD/a\' ;\
+ echo ' <UL>\' ;\
+ echo ' <LI><I>No changelog entries yet</I></LI>\';\
+ echo ' </UL><BR>\' ; echo ' </LI>\' ;\
+ echo ' <LI><B><A HREF="ftp://ftp.infradead.org/pub/openconnect/openconnect-$(VERSION).tar.gz">OpenConnect v$(VERSION)</a></B> — $(shell date +%Y-%m-%d)<BR>' ) | \
+ sed -f - -i openconnect.html
+# stupid syntax highlighting '
+ @git commit -s -m "Tag version $(VERSION)" configure.ac version.sh openconnect.html
+ @git tag v$(VERSION)
+ @./autogen.sh
+
+ endif
--- /dev/null
+
+AC_INIT(openconnect, 3.02)
+PKG_PROG_PKG_CONFIG
+AC_LANG_C
+AM_INIT_AUTOMAKE([foreign])
+
+AC_ARG_WITH([openssl],
+ AS_HELP_STRING([--with-openssl],
+ [Location of OpenSSL build dir]),
+ [OPENSSL_CFLAGS="-I${with_openssl}/include"
+ OPENSSL_LIBS="${with_openssl}/libssl.a ${with_openssl}/libcrypto.a -ldl -lz"
+ AC_SUBST(OPENSSL_CFLAGS)
+ AC_SUBST(OPENSSL_LIBS)
+ AC_ENABLE_STATIC
+ AC_DISABLE_SHARED],
+ [PKG_CHECK_MODULES(OPENSSL, openssl)
+ AC_ENABLE_SHARED
+ AC_DISABLE_STATIC])
+
+AC_PROG_LIBTOOL
+
+PKG_CHECK_MODULES(LIBXML2, libxml-2.0)
+
+libproxy_hdr=no
+AC_CHECK_HEADER([libproxy.h],
+ [libproxy_hdr='"libproxy.h"'],
+ [AC_CHECK_HEADER([proxy.h],
+ [libproxy_hdr='"libproxy.h"'])])
+if (test "$libproxy_hdr" != "no"); then
+ AC_DEFINE([LIBPROXY_HDR], $libproxy_hdr)
+ PKG_CHECK_MODULES(LIBPROXY, libproxy-1.0, AC_SUBST(LIBPROXY_PC, libproxy-1.0), dummy=yes)
+fi
+
+AC_CHECK_HEADER([if_tun.h],
+ [AC_DEFINE([IF_TUN_HDR], ["if_tun.h"])],
+ [AC_CHECK_HEADER([linux/if_tun.h],
+ [AC_DEFINE([IF_TUN_HDR], ["linux/if_tun.h"])],
+ [AC_CHECK_HEADER([net/if_tun.h],
+ [AC_DEFINE([IF_TUN_HDR], ["net/if_tun.h"])],
+ [AC_CHECK_HEADER([net/tun/if_tun.h],
+ [AC_DEFINE([IF_TUN_HDR], ["net/tun/if_tun.h"])])])])])
+
+AC_OUTPUT(Makefile openconnect.pc)