diff options
author | Matt Coffin | 2019-11-26 02:29:17 -0700 |
---|---|---|
committer | Matt Coffin | 2019-11-26 02:29:17 -0700 |
commit | cac6fa1691a19f5b74e19a3ddfb647eed253dfe8 (patch) | |
tree | 1f0d2bb162d6fad1f817d63a25681a6719271373 | |
parent | 1790ca15ed9ed6b924c089d676d4ff23c2ae6b7c (diff) | |
download | aur-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-- | .SRCINFO | 14 | ||||
-rw-r--r-- | 0001-build-Fix-build-on-systems-where-gettid-is-provided-.patch | 88 | ||||
-rw-r--r-- | PKGBUILD | 53 |
3 files changed, 130 insertions, 25 deletions
@@ -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 + @@ -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 } |