summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorMatt Coffin2019-11-26 02:29:17 -0700
committerMatt Coffin2019-11-26 02:29:17 -0700
commitcac6fa1691a19f5b74e19a3ddfb647eed253dfe8 (patch)
tree1f0d2bb162d6fad1f817d63a25681a6719271373
parent1790ca15ed9ed6b924c089d676d4ff23c2ae6b7c (diff)
downloadaur-mesos.tar.gz
version: 1.9.0
1.8.0 -> 1.9.0 Fixed issue with grpc on systems where libc provides gettid in headers where it previously was not
-rw-r--r--.SRCINFO14
-rw-r--r--0001-build-Fix-build-on-systems-where-gettid-is-provided-.patch88
-rw-r--r--PKGBUILD53
3 files changed, 130 insertions, 25 deletions
diff --git a/.SRCINFO b/.SRCINFO
index cfd141055380..a435c3f26b5e 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,6 +1,6 @@
pkgbase = mesos
pkgdesc = A cluster manager that simplifies the complexity of running applications on a shared pool of servers
- pkgver = 1.8.0
+ pkgver = 1.9.0
pkgrel = 1
url = http://mesos.apache.org/
arch = i686
@@ -23,12 +23,16 @@ pkgbase = mesos
depends = boost
depends = boost-libs
depends = leveldb
+ depends = libarchive
+ depends = rapidjson
+ depends = google-glog
optdepends = openssl: ssl support
- source = ftp://apache.cs.utah.edu/apache.org/mesos/1.8.0/mesos-1.8.0.tar.gz
- source = https://apache.org/dist/mesos/1.8.0/mesos-1.8.0.tar.gz.asc
+ source = ftp://apache.cs.utah.edu/apache.org/mesos/1.9.0/mesos-1.9.0.tar.gz
+ source = https://apache.org/dist/mesos/1.9.0/mesos-1.9.0.tar.gz.asc
source = mesos-master.service
source = mesos-slave.service
source = hardcode-sources.patch
+ source = 0001-build-Fix-build-on-systems-where-gettid-is-provided-.patch
validpgpkeys = 4BF2061E73003185CA06E30FF99D6AD0F6FB762C
validpgpkeys = CE2C077CF6F6F7002DB0DB6AB5DA0D371B207A4D
validpgpkeys = 90A7F1E40A9BE920A82F4302CD56EF3924E79653
@@ -47,11 +51,13 @@ pkgbase = mesos
validpgpkeys = 070745B0AB67A2D3314D335623B0ADA4EF26082C
validpgpkeys = 30B6CAF9AB8560B2A3DAB2A6D10295D0D6EF55AD
validpgpkeys = 526039B46E41368725C5B8790D5D2740E285E9AE
- sha512sums = SKIP
+ validpgpkeys = DDE08F9E628A61F091D791AECA6CF752916F1F0B
+ sha512sums = 77b88719691a0442b05d53fb022f8f147deaf65a47e0c95bd9e25f888b7bca32b5e6f91c1361e4bdbb5f8e299f01f55a37c003ba66e7c72c43900572d35735cb
sha512sums = SKIP
sha512sums = 42d7e11412ca9634297e55f33867c8897c58da7a10c113f6892311a5e362066d7e54377be2856c4fed641bcff75843cc243d5ac65e7eafbe79c8d25e5c033d14
sha512sums = a270d59551aaeb2bdbec7e5c6a2da02249299d208dba0ed3c9503b36b7928cc6a4920e795d865ce71c5a7fb4d492e37f434a210acd7beac9613f5bb155d79132
sha512sums = 92425bd2eb1c56812bdddf8ec540579b773043353ee9bf3f4c7e20bb4970c83c7b9ea1faecc38dc6d3f27e4125ceca9c35f7082e013c706ce6a28bc06d223cfe
+ sha512sums = 020ebdd3026643585d4cc8366ea9ac2144df7ee27f3ef42ef57d3dbb9d8a9bb5d3a0c3631ff9d0bfcae2eada1219bb8f0c92962cbc8f4fb9630892c945f1d77b
pkgname = mesos
diff --git a/0001-build-Fix-build-on-systems-where-gettid-is-provided-.patch b/0001-build-Fix-build-on-systems-where-gettid-is-provided-.patch
new file mode 100644
index 000000000000..c9c96aa4aa0e
--- /dev/null
+++ b/0001-build-Fix-build-on-systems-where-gettid-is-provided-.patch
@@ -0,0 +1,88 @@
+From 829c33dbc28116cb108bdff10ccfddec12247d56 Mon Sep 17 00:00:00 2001
+From: Matt Coffin <mcoffin13@gmail.com>
+Date: Tue, 26 Nov 2019 01:48:45 -0700
+Subject: [PATCH] build: Fix build on systems where gettid is provided in
+ headers
+
+---
+ 3rdparty/Makefile.am | 13 ++++++++++---
+ 3rdparty/grpc-1.10.0.patch | 12 ++++++++++++
+ configure.ac | 2 ++
+ 3 files changed, 24 insertions(+), 3 deletions(-)
+
+diff --git a/3rdparty/Makefile.am b/3rdparty/Makefile.am
+index 0de005dad..eb7f26b1b 100644
+--- a/3rdparty/Makefile.am
++++ b/3rdparty/Makefile.am
+@@ -503,6 +503,12 @@ LIB_GRPC = $(GRPC)/libs/opt/libgrpc++$(GRPC_VARIANT).a \
+
+ $(LIB_GRPC): $(GRPC)-build-stamp
+
++if HAVE_GETTID
++GRPC_DEFINES = -DHAVE_GETTID=1
++else
++GRPC_DEFINES =
++endif
++
+ # NOTE: We pass compiler flags through environment variables rather than the
+ # command line because gRPC uses target-specific assignments to append compiler
+ # flags, which will be overwritten by the command line. See:
+@@ -517,18 +523,19 @@ $(LIB_GRPC): $(GRPC)-build-stamp
+ # and set up proper include and linker flags instead.
+ $(GRPC)-build-stamp: $(GRPC)-stamp \
+ $(PROTOBUF)-build-stamp
++ echo GRPC_DEFINES: $(GRPC_DEFINES)
+ cd $(GRPC) && \
+ CPPFLAGS="$(PROTOBUF_INCLUDE_FLAGS) \
+ $(SSL_INCLUDE_FLAGS) \
+ $(ZLIB_INCLUDE_FLAGS) \
+ $(CPPFLAGS)" \
+- CFLAGS="$(CFLAGS)" \
+- CXXFLAGS="$(CXXFLAGS)" \
++ CFLAGS="$(CFLAGS)" \
++ CXXFLAGS="$(CXXFLAGS)" \
+ $(MAKE) $(AM_MAKEFLAGS) \
+ $(LIB_GRPC:%=$(realpath $(abs_builddir))/%) \
+ CC="$(CC)" \
+ CXX="$(CXX)" \
+- EXTRA_CPPFLAGS=-Wno-error \
++ EXTRA_CPPFLAGS="-Wno-error $(GRPC_DEFINES)" \
+ LD="$(CC)" \
+ LDXX="$(CXX)" \
+ LDFLAGS="$(PROTOBUF_LINKER_FLAGS) \
+diff --git a/3rdparty/grpc-1.10.0.patch b/3rdparty/grpc-1.10.0.patch
+index 00dddbcbe..0f602a340 100644
+--- a/3rdparty/grpc-1.10.0.patch
++++ b/3rdparty/grpc-1.10.0.patch
+@@ -86,3 +86,15 @@ index 83f642a675..8e2253fb39 100644
+ --
+ 2.17.2 (Apple Git-113)
+
++--- a/src/core/lib/gpr/log_linux.cc
+++++ b/src/core/lib/gpr/log_linux.cc
++@@ -39,7 +39,9 @@
++ #include <time.h>
++ #include <unistd.h>
++
+++#ifndef HAVE_GETTID
++ static long gettid(void) { return syscall(__NR_gettid); }
+++#endif
++
++ void gpr_log(const char* file, int line, gpr_log_severity severity,
++ const char* format, ...) {
+diff --git a/configure.ac b/configure.ac
+index f274f34e6..58bf265b8 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -2883,6 +2883,8 @@ AS_IF([test -f ${srcdir}/${git_config} || test -f ${git_config}], [AC_MSG_RESULT
+ AC_CONFIG_FILES([${git_config}])
+ ])
+
++AC_CHECK_FUNCS([gettid], [have_gettid=true], [have_gettid=false])
++AM_CONDITIONAL(HAVE_GETTID, $have_gettid)
+
+ AC_OUTPUT
+
+--
+2.24.0
+
diff --git a/PKGBUILD b/PKGBUILD
index 7af7971b0bff..70e87e321ccc 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -2,14 +2,14 @@
# Contributor: Matt Coffin <mcoffin13@gmail.com>
_python2_ver_major=$(pacman -Qi python2|gawk '$1~/Version/{split($3,v,".");print v[1] "." v[2]}')
pkgname=mesos
-pkgver=1.8.0
+pkgver=1.9.0
pkgrel=1
pkgdesc="A cluster manager that simplifies the complexity of running applications on a shared pool of servers"
arch=('i686' 'x86_64')
url=http://mesos.apache.org/
license=('Apache')
groups=('science')
-depends=('python2' 'zlib' 'curl' 'java-environment' 'apr' 'subversion' 'cyrus-sasl' 'libnl>=3.2.28' 'libevent>=2' 'boost' 'boost-libs' 'leveldb')
+depends=('python2' 'zlib' 'curl' 'java-environment' 'apr' 'subversion' 'cyrus-sasl' 'libnl>=3.2.28' 'libevent>=2' 'boost' 'boost-libs' 'leveldb' 'libarchive' 'rapidjson' 'google-glog')
optdepends=('openssl: ssl support')
makedepends=('maven' 'python2-setuptools' 'openssl' 'ninja')
#conflicts=('python2-shutilwhich')
@@ -17,15 +17,17 @@ source=("ftp://apache.cs.utah.edu/apache.org/$pkgname/$pkgver/$pkgname-${pkgver}
"https://apache.org/dist/$pkgname/$pkgver/$pkgname-$pkgver.tar.gz.asc"
"$pkgname-master.service"
"$pkgname-slave.service"
- "hardcode-sources.patch")
+ "hardcode-sources.patch"
+ 0001-build-Fix-build-on-systems-where-gettid-is-provided-.patch)
# keys from: https://apache.org/dist/mesos/KEYS
-validpgpkeys=('4BF2061E73003185CA06E30FF99D6AD0F6FB762C' 'CE2C077CF6F6F7002DB0DB6AB5DA0D371B207A4D' '90A7F1E40A9BE920A82F4302CD56EF3924E79653' '3C0F564C3072733A83DC4511D1F466FDEDBC014B' '77F89AEEAD21B78B7C2DA9DB1A4EF22FD495B11E' '81BF3C55090CBE9684680A0348AF30DC5E47E0EA' 'D8FF2F25C752BA1354CB3F29CD910E8DFA23D685' '2A145F425F2299357E20004CC5BCD6DC398DF4F4' 'D6A0C1307D16A1F5DCD1E5C8CAFE789EAA31D1F2' 'FCD2F95760240B4D6ECAEA1BBAE9E5C50C4D1C63' 'E2454C1707E80C55B76B768C82F0CB466AACBD2B' '7FDF9F586C1BE20B192DB40DA479BB4EED50F391' '291ACACD6BD9A90C1ABFFE7517F6D528A2C2C74A' '7144142BE6DD206231B170DD174FB9FAC5FF85C1' 'D64C61111ED9909C9071524FBDC218FB9AF7DC86' '070745B0AB67A2D3314D335623B0ADA4EF26082C' '30B6CAF9AB8560B2A3DAB2A6D10295D0D6EF55AD' '526039B46E41368725C5B8790D5D2740E285E9AE')
+validpgpkeys=('4BF2061E73003185CA06E30FF99D6AD0F6FB762C' 'CE2C077CF6F6F7002DB0DB6AB5DA0D371B207A4D' '90A7F1E40A9BE920A82F4302CD56EF3924E79653' '3C0F564C3072733A83DC4511D1F466FDEDBC014B' '77F89AEEAD21B78B7C2DA9DB1A4EF22FD495B11E' '81BF3C55090CBE9684680A0348AF30DC5E47E0EA' 'D8FF2F25C752BA1354CB3F29CD910E8DFA23D685' '2A145F425F2299357E20004CC5BCD6DC398DF4F4' 'D6A0C1307D16A1F5DCD1E5C8CAFE789EAA31D1F2' 'FCD2F95760240B4D6ECAEA1BBAE9E5C50C4D1C63' 'E2454C1707E80C55B76B768C82F0CB466AACBD2B' '7FDF9F586C1BE20B192DB40DA479BB4EED50F391' '291ACACD6BD9A90C1ABFFE7517F6D528A2C2C74A' '7144142BE6DD206231B170DD174FB9FAC5FF85C1' 'D64C61111ED9909C9071524FBDC218FB9AF7DC86' '070745B0AB67A2D3314D335623B0ADA4EF26082C' '30B6CAF9AB8560B2A3DAB2A6D10295D0D6EF55AD' '526039B46E41368725C5B8790D5D2740E285E9AE' 'DDE08F9E628A61F091D791AECA6CF752916F1F0B')
-sha512sums=('SKIP'
+sha512sums=('77b88719691a0442b05d53fb022f8f147deaf65a47e0c95bd9e25f888b7bca32b5e6f91c1361e4bdbb5f8e299f01f55a37c003ba66e7c72c43900572d35735cb'
'SKIP'
'42d7e11412ca9634297e55f33867c8897c58da7a10c113f6892311a5e362066d7e54377be2856c4fed641bcff75843cc243d5ac65e7eafbe79c8d25e5c033d14'
'a270d59551aaeb2bdbec7e5c6a2da02249299d208dba0ed3c9503b36b7928cc6a4920e795d865ce71c5a7fb4d492e37f434a210acd7beac9613f5bb155d79132'
- '92425bd2eb1c56812bdddf8ec540579b773043353ee9bf3f4c7e20bb4970c83c7b9ea1faecc38dc6d3f27e4125ceca9c35f7082e013c706ce6a28bc06d223cfe')
+ '92425bd2eb1c56812bdddf8ec540579b773043353ee9bf3f4c7e20bb4970c83c7b9ea1faecc38dc6d3f27e4125ceca9c35f7082e013c706ce6a28bc06d223cfe'
+ '020ebdd3026643585d4cc8366ea9ac2144df7ee27f3ef42ef57d3dbb9d8a9bb5d3a0c3631ff9d0bfcae2eada1219bb8f0c92962cbc8f4fb9630892c945f1d77b')
prepare() {
@@ -44,6 +46,10 @@ prepare() {
pushd src/java
patch < ../../../hardcode-sources.patch
popd
+
+ # Fix gettid
+ patch -p1 < $srcdir/0001-build-Fix-build-on-systems-where-gettid-is-provided-.patch
+ ./bootstrap
}
build() {
@@ -60,7 +66,12 @@ build() {
--enable-libevent \
--with-boost=/usr \
--with-leveldb=/usr \
+ --with-libarchive=/usr \
+ --with-rapidjson=/usr \
+ --with-glog=/usr \
--disable-java \
+ --disable-python \
+ --disable-werror \
--with-network-isolator
make
# cmake .. -G Ninja \
@@ -83,22 +94,22 @@ package() {
make DESTDIR="$pkgdir/" install
mkdir -p -m755 $pkgdir/usr/share/java/$pkgname
mkdir -p -m755 $pkgdir/var/{lib,log}/$pkgname
- install -m644 ./src/java/mesos.pom $pkgdir/usr/share/java/$pkgname/
- install -m644 ./src/java/target/*.jar $pkgdir/usr/share/java/$pkgname/
+ # install -m644 ./src/java/mesos.pom $pkgdir/usr/share/java/$pkgname/
+ # install -m644 ./src/java/target/*.jar $pkgdir/usr/share/java/$pkgname/
mkdir -p -m755 $pkgdir/usr/lib/systemd/system
install -m644 $srcdir/$pkgname-{master,slave}.service $pkgdir/usr/lib/systemd/system
- mkdir -p -m755 $pkgdir/usr/share/mesos/python-eggs
- cp ./src/python/dist/mesos*.egg $pkgdir/usr/share/mesos/python-eggs
+ # mkdir -p -m755 $pkgdir/usr/share/mesos/python-eggs
+ # cp ./src/python/dist/mesos*.egg $pkgdir/usr/share/mesos/python-eggs
# python
- pushd src/python
- python2 setup.py install --root="$pkgdir" --optimize=1
- popd
- pushd ${pkgdir}/usr/lib/python${_python2_ver_major}/site-packages
- ls | grep -v mesos | xargs rm -rf
- popd
- pushd ${pkgdir}/usr/bin
- rm -rf easy_install*
- popd
- chmod 755 ${pkgdir}/usr/lib/python${_python2_ver_major}
- chmod 755 ${pkgdir}/usr/lib/python${_python2_ver_major}/site-packages
+ # pushd src/python
+ # python2 setup.py install --root="$pkgdir" --optimize=1
+ # popd
+ # pushd ${pkgdir}/usr/lib/python${_python2_ver_major}/site-packages
+ # ls | grep -v mesos | xargs rm -rf
+ # popd
+ # pushd ${pkgdir}/usr/bin
+ # rm -rf easy_install*
+ # popd
+ # chmod 755 ${pkgdir}/usr/lib/python${_python2_ver_major}
+ # chmod 755 ${pkgdir}/usr/lib/python${_python2_ver_major}/site-packages
}