aboutsummaryrefslogtreecommitdiffstats
path: root/testing
diff options
context:
space:
mode:
authorRoberto Oliveira <robertoguimaraes8@gmail.com>2018-06-15 14:48:34 +0000
committerRoberto Oliveira <robertoguimaraes8@gmail.com>2018-06-15 14:48:34 +0000
commitc83c8958ae4251a893d1424f36c72552b605c389 (patch)
tree7578bb1e1470afa3f6e67d630d87fa2315c00821 /testing
parent9f17c3e5bd68a97db829596f0ef446656a0648f3 (diff)
downloadaports-c83c8958ae4251a893d1424f36c72552b605c389.tar.bz2
aports-c83c8958ae4251a893d1424f36c72552b605c389.tar.xz
testing/csync2: fix build on ppc64le
Diffstat (limited to 'testing')
-rw-r--r--testing/csync2/APKBUILD11
-rw-r--r--testing/csync2/fix-build-ppc64le.patch48
2 files changed, 54 insertions, 5 deletions
diff --git a/testing/csync2/APKBUILD b/testing/csync2/APKBUILD
index 6220a1307c..c012b1b5ba 100644
--- a/testing/csync2/APKBUILD
+++ b/testing/csync2/APKBUILD
@@ -2,18 +2,18 @@
# Maintainer: Jakub Jirutka <jakub@jirutka.cz>
pkgname=csync2
pkgver=2.0
-pkgrel=1
+pkgrel=2
pkgdesc="Cluster synchronization tool"
url="http://oss.linbit.com/csync2/"
-# ppc64le: failed to build
-arch="all !ppc64le"
+arch="all"
license="GPL-2.0-or-later"
options="!check" # tests needs to modify system's network config
makedepends="autoconf automake bison flex gnutls-dev librsync-dev sqlite-dev"
depends="bash"
subpackages="$pkgname-doc $pkgname-openrc"
source="https://github.com/LINBIT/$pkgname/archive/$pkgname-$pkgver.tar.gz
- $pkgname.initd"
+ $pkgname.initd
+ fix-build-ppc64le.patch"
builddir="$srcdir/$pkgname-$pkgname-$pkgver"
prepare() {
@@ -43,4 +43,5 @@ package() {
}
sha512sums="7555e2d958d6213e29cfa8b3b7415eea9a9868036865c519d724ae404006d913fba4aeeb61a916d3fc95669a6ca12160d4f52dc7d15bd59403e8a7de50ee8094 csync2-2.0.tar.gz
-e2df7f2993781709dadd0ce24bc31e16259382c8b3c432c47c3790f78b37124d38fb5036e87a06747538d864fdf68b8984bf2d4bce09158cddd58c10f4411d9f csync2.initd"
+e2df7f2993781709dadd0ce24bc31e16259382c8b3c432c47c3790f78b37124d38fb5036e87a06747538d864fdf68b8984bf2d4bce09158cddd58c10f4411d9f csync2.initd
+4566ba1139615e5011c881e670d8976d3b5226e27521fd6ced126a5a3687683c145931fa89a9b6b0ab967f982bf778c33148e6c9f7ee29ef5154593ae02efb2a fix-build-ppc64le.patch"
diff --git a/testing/csync2/fix-build-ppc64le.patch b/testing/csync2/fix-build-ppc64le.patch
new file mode 100644
index 0000000000..36d996d15f
--- /dev/null
+++ b/testing/csync2/fix-build-ppc64le.patch
@@ -0,0 +1,48 @@
+From b66d2989e45605cf927fd0f2144696d320e08180 Mon Sep 17 00:00:00 2001
+From: Roland Kammerer <roland.kammerer@linbit.com>
+Date: Fri, 15 Jun 2018 16:16:45 +0200
+Subject: [PATCH] build: check for strlcpy()
+
+Check for stlcpy() and if found, disable the internal compat code.
+
+This does not fix all cases, as we would also have to check for libbsd
+and link with "-lbsd". Still, this helps Alpine, as their favorite libc
+(musl) implements strlcpy().
+---
+ configure.ac | 2 +-
+ rsync.c | 2 ++
+ 2 files changed, 3 insertions(+), 1 deletion(-)
+
+diff --git a/configure.ac b/configure.ac
+index 741010f..f3ebff7 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -43,7 +43,7 @@ AM_CONDITIONAL([HAVE_PDFLATEX], test -n "$PDFLATEX")
+
+
+ dnl inspired by rsync's configure.ac
+-AC_CHECK_FUNCS(fchmod setmode open64 mkstemp64)
++AC_CHECK_FUNCS(fchmod setmode open64 mkstemp64 strlcpy)
+ AC_CACHE_CHECK([for secure mkstemp],csync_cv_HAVE_SECURE_MKSTEMP,[
+ AC_TRY_RUN([#include <stdlib.h>
+ #include <sys/types.h>
+diff --git a/rsync.c b/rsync.c
+index 3eb6b3e..667a227 100644
+--- a/rsync.c
++++ b/rsync.c
+@@ -49,6 +49,7 @@
+ *
+ * @return index of the terminating byte.
+ **/
++#ifndef HAVE_STRLCPY
+ static size_t strlcpy(char *d, const char *s, size_t bufsize)
+ {
+ size_t len = strlen(s);
+@@ -61,6 +62,7 @@ static size_t strlcpy(char *d, const char *s, size_t bufsize)
+ }
+ return ret;
+ }
++#endif
+
+ /* splits filepath at the last '/', if any, like so:
+ * dirname basename filepath