1# Written by Simon Josefsson <simon@josefsson.org>. 2# Copyright (c) 2006-2014 Yubico AB 3# All rights reserved. 4# 5# Redistribution and use in source and binary forms, with or without 6# modification, are permitted provided that the following conditions are 7# met: 8# 9# * Redistributions of source code must retain the above copyright 10# notice, this list of conditions and the following disclaimer. 11# 12# * Redistributions in binary form must reproduce the above 13# copyright notice, this list of conditions and the following 14# disclaimer in the documentation and/or other materials provided 15# with the distribution. 16# 17# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 18# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 19# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 20# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 21# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 22# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 23# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 24# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 25# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 26# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 27# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 28 29SUBDIRS=. tests 30 31ACLOCAL_AMFLAGS = -I m4 32 33DISTCHECK_CONFIGURE_FLAGS = --enable-gcc-warnings 34 35AM_CFLAGS = $(WARN_CFLAGS) 36 37# The library. 38 39lib_LTLIBRARIES = libyubikey.la 40include_HEADERS = yubikey.h 41 42libyubikey_la_SOURCES = yktoken.c ykhex.c ykcrc.c ykaes.c 43libyubikey_la_SOURCES += libyubikey.map 44libyubikey_la_LDFLAGS = -no-undefined \ 45 -version-info $(LT_CURRENT):$(LT_REVISION):$(LT_AGE) 46 47if HAVE_LD_VERSION_SCRIPT 48libyubikey_la_LDFLAGS += -Wl,--version-script=$(srcdir)/libyubikey.map 49else 50libyubikey_la_LDFLAGS += -export-symbols-regex '^yubikey_.*' 51endif 52 53# The command line tools. 54 55bin_PROGRAMS = modhex ykparse ykgenerate 56 57modhex_SOURCES = modhex.c 58modhex_LDADD = ./libyubikey.la 59 60ykparse_SOURCES = ykparse.c 61ykparse_LDADD = ./libyubikey.la 62 63ykgenerate_SOURCES = ykgenerate.c 64ykgenerate_LDADD = ./libyubikey.la 65 66dist_man_MANS = modhex.1 ykparse.1 ykgenerate.1 67DISTCLEANFILES = $(dist_man_MANS) 68 69SUFFIXES = .1.txt .1 70.1.txt.1: 71 $(A2X) --format=manpage -a revdate="Version $(VERSION)" $< 72 73MANSOURCES = modhex.1.txt ykparse.1.txt ykgenerate.1.txt 74EXTRA_DIST = $(MANSOURCES) simple.mk THANKS 75 76# Maintainer rules 77 78indent: 79 indent *.c *.h tests/*.c 80 indent *.c *.h tests/*.c 81 82ChangeLog: 83 cd $(srcdir) && git2cl > ChangeLog 84 85PROJECT = yubico-c 86 87release: 88 @if test -z "$(KEYID)"; then \ 89 echo "Try this instead:"; \ 90 echo " make release KEYID=[PGPKEYID]"; \ 91 echo "For example:"; \ 92 echo " make release KEYID=2117364A"; \ 93 exit 1; \ 94 fi 95 @if test ! -d "$(YUBICO_WWW_REPO)"; then \ 96 echo "yubico www repo not found!"; \ 97 echo "Make sure that YUBICO_WWW_REPO is set"; \ 98 exit 1; \ 99 fi 100 @head -3 $(srcdir)/NEWS | grep -q "Version $(VERSION) .released `date -I`" || \ 101 (echo 'error: You need to update date/version in $(srcdir)/NEWS'; exit 1) 102 rm -f $(srcdir)/ChangeLog 103 make ChangeLog distcheck 104 gpg --detach-sign --default-key $(KEYID) $(PACKAGE)-$(VERSION).tar.gz 105 gpg --verify $(PACKAGE)-$(VERSION).tar.gz.sig 106 cd $(srcdir) && git push 107 cd $(srcdir) && git tag -u $(KEYID) -m $(VERSION) $(PACKAGE)-$(VERSION) 108 cd $(srcdir) && git push --tags 109 $(YUBICO_WWW_REPO)/save-mans $(PROJECT) $(MANSOURCES) 110 $(YUBICO_WWW_REPO)/publish $(PROJECT) $(VERSION) $(PACKAGE)-$(VERSION).tar.gz* 111