Date: Friday, November 9, 2018 @ 21:08:03 Author: foutrelis Revision: 404524
archrelease: copy trunk to community-staging-x86_64 Added: libmesode/repos/community-staging-x86_64/ libmesode/repos/community-staging-x86_64/PKGBUILD (from rev 404523, libmesode/trunk/PKGBUILD) libmesode/repos/community-staging-x86_64/openssl-1.1.0.patch (from rev 404523, libmesode/trunk/openssl-1.1.0.patch) ---------------------+ PKGBUILD | 52 +++++++++++++++++++++++++++++++++++++++++ openssl-1.1.0.patch | 62 ++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 114 insertions(+) Copied: libmesode/repos/community-staging-x86_64/PKGBUILD (from rev 404523, libmesode/trunk/PKGBUILD) =================================================================== --- community-staging-x86_64/PKGBUILD (rev 0) +++ community-staging-x86_64/PKGBUILD 2018-11-09 21:08:03 UTC (rev 404524) @@ -0,0 +1,52 @@ +# Maintainer: Levente Polyak <anthraxx[at]archlinux[dot]org> + +pkgbase=libmesode +pkgname=('libmesode' 'libmesode-doc') +pkgver=0.9.1 +pkgrel=4 +pkgdesc='Simple, lightweight C library for writing prifanity XMPP client' +url='https://github.com/boothj5/libmesode' +arch=('x86_64') +license=('GPL3' 'MIT') +makedepends=('openssl' 'expat' 'doxygen') +checkdepends=('check') +options=('staticlibs') +source=(${pkgname}-${pkgver}.tar.gz::https://github.com/boothj5/libmesode/archive/${pkgver}.tar.gz openssl-1.1.0.patch) +sha512sums=('b549c17e61aa3e1d80a93783ac47d5a9e87767876173500c30613e9326d10ed413f284c7435b4f24c028a51f8a8d9be913cd7de9baaa5b358cac5951496d9076' + 'a7025d7d6913f3f1d7b266587c4c4ee26b06bf3f7c2754b8e1fbcf6153e48de6a87f326927c7bb613fd9c67d8e0f5040cb6ee2b594f555733b270e1e87bc6396') + +prepare() { + cd ${pkgbase}-${pkgver} + patch -Np1 -i $srcdir/openssl-1.1.0.patch + ./bootstrap.sh +} + +build() { + cd ${pkgbase}-${pkgver} + ./configure --prefix=/usr + make + doxygen +} + +check() { + make -C ${pkgbase}-${pkgver} check +} + +package_libmesode() { + depends=('openssl' 'expat') + cd ${pkgbase}-${pkgver} + make DESTDIR="${pkgdir}" install + install -Dm 644 MIT-LICENSE.txt "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE-MIT" +} + +package_libmesode-doc() { + pkgdesc+=' (documentation and samples)' + options=('!strip') + optdepends=('libmesode') + cd ${pkgbase}-${pkgver} + install -Dm 644 docs/html/* -t "${pkgdir}/usr/share/doc/${pkgname}/html" + install -Dm 644 examples/{README.md,*.c} -t "${pkgdir}/usr/share/doc/${pkgname}/examples" + install -Dm 644 MIT-LICENSE.txt "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE-MIT" +} + +# vim: ts=2 sw=2 et: Copied: libmesode/repos/community-staging-x86_64/openssl-1.1.0.patch (from rev 404523, libmesode/trunk/openssl-1.1.0.patch) =================================================================== --- community-staging-x86_64/openssl-1.1.0.patch (rev 0) +++ community-staging-x86_64/openssl-1.1.0.patch 2018-11-09 21:08:03 UTC (rev 404524) @@ -0,0 +1,62 @@ +diff --git a/configure.ac b/configure.ac +index 6d19f2e..9799ea3 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -35,18 +35,28 @@ PARSER_LIBS=$expat_LIBS + AC_ARG_ENABLE([tls], + [AS_HELP_STRING([--disable-tls], [disable TLS support])]) + ++openssl=no + if test "x$enable_tls" != xno; then + PKG_CHECK_MODULES([openssl], [openssl], +- [PC_REQUIRES="openssl ${PC_REQUIRES}"], ++ [PC_REQUIRES="openssl ${PC_REQUIRES}" ++ openssl=yes], + [AC_CHECK_HEADER([openssl/ssl.h], + [ + openssl_LIBS="-lssl -lcrypto" + PC_LIBS="${openssl_LIBS} ${PC_LIBS}" ++ openssl=yes + ], + [AC_MSG_ERROR([openssl not found; openssl required])] + )]) + fi + ++if test "x$openssl" == xyes; then ++ AC_SEARCH_LIBS(X509_get0_tbs_sigalg, ++ [ssl crypto], ++ AC_DEFINE([HAVE_X509_GET0_TBS_SIGALG]) ++ ) ++fi ++ + AC_SEARCH_LIBS([socket], [socket]) + + AS_CASE([$PLATFORM], +diff --git a/src/tls_openssl.c b/src/tls_openssl.c +index 3118adc..422abad 100644 +--- a/src/tls_openssl.c ++++ b/src/tls_openssl.c +@@ -168,7 +168,11 @@ static struct _tlscert_t *_x509_to_tlscert(xmpp_ctx_t *ctx, X509 *cert) + } + + tlscert->keyalg = NULL; ++#ifndef HAVE_X509_GET0_TBS_SIGALG + int alg_nid = OBJ_obj2nid(cert->cert_info->key->algor->algorithm); ++#else ++ int alg_nid = OBJ_obj2nid(X509_get0_tbs_sigalg(cert)->algorithm); ++#endif /* HAVE_X509_GET0_TBS_SIGALG */ + if (alg_nid != NID_undef) { + const char* keyalg = OBJ_nid2ln(alg_nid); + if (keyalg) { +@@ -177,7 +181,11 @@ static struct _tlscert_t *_x509_to_tlscert(xmpp_ctx_t *ctx, X509 *cert) + } + + tlscert->sigalg = NULL; ++#ifndef HAVE_X509_GET0_TBS_SIGALG + alg_nid = OBJ_obj2nid(cert->sig_alg->algorithm); ++#else ++ alg_nid = OBJ_obj2nid(X509_get0_tbs_sigalg(cert)->algorithm); ++#endif /* HAVE_X509_GET0_TBS_SIGALG */ + if (alg_nid != NID_undef) { + const char* sigalg = OBJ_nid2ln(alg_nid); + if (sigalg) {