diff options
author | Johannes Loher | 2016-01-18 10:50:33 +0100 |
---|---|---|
committer | Johannes Loher | 2016-01-18 10:50:33 +0100 |
commit | 5f5416b6a163505bb3ca189aadb0179a3274ab47 (patch) | |
tree | 1f445f6331782e762a061b3ee0a303188892999d | |
download | aur-5f5416b6a163505bb3ca189aadb0179a3274ab47.tar.gz |
Initial import
-rw-r--r-- | .SRCINFO | 21 | ||||
-rw-r--r-- | PKGBUILD | 37 | ||||
-rw-r--r-- | crypto++_headers.patch | 100 |
3 files changed, 158 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO new file mode 100644 index 000000000000..8c2591b729eb --- /dev/null +++ b/.SRCINFO @@ -0,0 +1,21 @@ +# Generated by mksrcinfo v8 +# Mon Jan 18 09:47:26 UTC 2016 +pkgbase = codecrypt + pkgdesc = The post-quantum cryptography tool + pkgver = 1.7.1 + pkgrel = 1 + url = http://e-x-a.org/codecrypt/ + arch = x86_64 + arch = i686 + license = LGPL3 + depends = gmp + depends = fftw>=3.0 + depends = crypto++ + provides = codecrypt + source = https://github.com/exaexa/codecrypt/archive/v1.7.1.tar.gz + source = crypto++_headers.patch + md5sums = 879c2a75dea2d70fb895a15edd51d896 + md5sums = 4aa83a903edaba67a6334b8aec2ebc0c + +pkgname = codecrypt + diff --git a/PKGBUILD b/PKGBUILD new file mode 100644 index 000000000000..2b6839b29554 --- /dev/null +++ b/PKGBUILD @@ -0,0 +1,37 @@ +# Maintainer: Johannes Loher <johannes dot loher at fg4f dot de> + +pkgname=codecrypt +pkgver=1.7.1 +pkgrel=1 +pkgdesc='The post-quantum cryptography tool' +arch=('x86_64' 'i686') +url='http://e-x-a.org/codecrypt/' +license=('LGPL3') +depends=('gmp' 'fftw>=3.0' 'crypto++') +provides=("${pkgname}") +source=('https://github.com/exaexa/codecrypt/archive/v1.7.1.tar.gz' + 'crypto++_headers.patch') +md5sums=('879c2a75dea2d70fb895a15edd51d896' + '4aa83a903edaba67a6334b8aec2ebc0c') + +prepare() { + cd "${srcdir}/${pkgname}-${pkgver}" + patch -p1 < "${srcdir}/crypto++_headers.patch" +} + +build() { + cd "${srcdir}/${pkgname}-${pkgver}" + ./autogen.sh + ./configure LIBS=-lpthread --prefix=/usr + make +} + +check() { + cd "${srcdir}/${pkgname}-${pkgver}" + make -k check +} + +package() { + cd "${srcdir}/${pkgname}-${pkgver}" + make DESTDIR="$pkgdir/" install +} diff --git a/crypto++_headers.patch b/crypto++_headers.patch new file mode 100644 index 000000000000..9a0fd71513f0 --- /dev/null +++ b/crypto++_headers.patch @@ -0,0 +1,100 @@ +diff --git a/autogen.sh b/autogen.sh +index c11562f..d8c4966 100755 +--- a/autogen.sh ++++ b/autogen.sh +@@ -27,8 +27,8 @@ echo "noinst_HEADERS = `find src/ -type f -name \*.h |tr \"\n\" \" \" `" >>$OUT + echo "${NAME}_CPPFLAGS = -I\$(srcdir)/$i/ ${COMMON_CPPFLAGS}" >>$OUT + echo "${NAME}_CFLAGS = ${COMMON_CFLAGS}" >>$OUT + echo "${NAME}_CXXFLAGS = ${COMMON_CXXFLAGS}" >>$OUT +-echo "${NAME}_LDFLAGS = ${COMMON_LDFLAGS}" >>$OUT +-echo "${NAME}_LDADD = -lgmp -lfftw3 -lm @CRYPTOPP_LIBS@ ${COMMON_LDADD} " >>$OUT ++echo "${NAME}_LDFLAGS = ${COMMON_LDFLAGS} \$(CRYPTOPP_CFLAGS) " >>$OUT ++echo "${NAME}_LDADD = -lgmp -lfftw3 -lm \$(CRYPTOPP_LIBS) ${COMMON_LDADD} " >>$OUT + + libtoolize --force && aclocal && autoconf && automake --add-missing + +diff --git a/configure.ac b/configure.ac +index c7ee564..2399b42 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -31,12 +31,20 @@ AC_ARG_WITH([cryptopp], + #and check crypto++ + if test "$WITH_CRYPTOPP" = "yes"; then + ++ PKG_CHECK_MODULES([CRYPTOPP],[libcrypto++]) ++ ++ #crypto++ headers are either in include/crypto++ or include/cryptopp, ++ #the information is otherwise unavailable from standard configuration ++ #means. Please report/add more tests if you encounter distros that ++ #place them elsewhere. + AC_LANG_PUSH([C++]) +- AC_CHECK_HEADERS([crypto++/sha.h crypto++/tiger.h crypto++/ripemd.h], , AC_MSG_ERROR([Codecrypt requires Crypto++])) ++ AC_CHECK_HEADER([crypto++/config.h], ++ AC_DEFINE([CRYPTOPP_DIR_PLUS], [1]), ++ AC_DEFINE([CRYPTOPP_DIR_PLUS], [0]) ++ ) + AC_LANG_POP([C++]) + + AC_DEFINE([HAVE_CRYPTOPP], [1]) +- AC_SUBST([CRYPTOPP_LIBS], [-lcryptopp]) + else + AC_DEFINE([HAVE_CRYPTOPP], [0]) + fi +diff --git a/src/rmd_hash.h b/src/rmd_hash.h +index 2c14a96..b2b3de0 100644 +--- a/src/rmd_hash.h ++++ b/src/rmd_hash.h +@@ -22,8 +22,13 @@ + + #if HAVE_CRYPTOPP==1 + +-#include "sha_hash.h" +-#include <crypto++/ripemd.h> ++#include "hash.h" ++#if CRYPTOPP_DIR_PLUS ++# include <crypto++/ripemd.h> ++#else ++# include <cryptopp/ripemd.h> ++#endif ++ + + //it's used just like SHA, so create it from SHA + class rmd128hash : public shahash<CryptoPP::RIPEMD128> {}; +diff --git a/src/sha_hash.h b/src/sha_hash.h +index 93a7772..0a18dfd 100644 +--- a/src/sha_hash.h ++++ b/src/sha_hash.h +@@ -22,8 +22,11 @@ + #if HAVE_CRYPTOPP==1 + + #include "hash.h" +- +-#include <crypto++/sha.h> ++#if CRYPTOPP_DIR_PLUS ++# include <crypto++/sha.h> ++#else ++# include <cryptopp/sha.h> ++#endif + + template <class shatype> + class shahash : public hash_func +diff --git a/src/tiger_hash.h b/src/tiger_hash.h +index 915b85b..f21ab12 100644 +--- a/src/tiger_hash.h ++++ b/src/tiger_hash.h +@@ -22,8 +22,13 @@ + + #if HAVE_CRYPTOPP==1 + +-#include "sha_hash.h" +-#include <crypto++/tiger.h> ++#include "hash.h" ++ ++#if CRYPTOPP_DIR_PLUS ++# include <crypto++/tiger.h> ++#else ++# include <cryptopp/tiger.h> ++#endif + + //it's used just like SHA, so create it from SHA + class tiger192hash : public shahash<CryptoPP::Tiger> {}; |