summaryrefslogtreecommitdiffstats
path: root/abs/extra/meson
diff options
context:
space:
mode:
Diffstat (limited to 'abs/extra/meson')
-rw-r--r--abs/extra/meson/0001-tests-skip-objc-nsstring-test-if-gnustep-is-not-inst.patch30
-rw-r--r--abs/extra/meson/PKGBUILD67
-rw-r--r--abs/extra/meson/arch-meson21
3 files changed, 118 insertions, 0 deletions
diff --git a/abs/extra/meson/0001-tests-skip-objc-nsstring-test-if-gnustep-is-not-inst.patch b/abs/extra/meson/0001-tests-skip-objc-nsstring-test-if-gnustep-is-not-inst.patch
new file mode 100644
index 0000000..973912b
--- /dev/null
+++ b/abs/extra/meson/0001-tests-skip-objc-nsstring-test-if-gnustep-is-not-inst.patch
@@ -0,0 +1,30 @@
+From 89d4decc9cdda01590c2a734c0f58924bcf30777 Mon Sep 17 00:00:00 2001
+Message-Id: <89d4decc9cdda01590c2a734c0f58924bcf30777.1517146929.git.jan.steffens@gmail.com>
+From: Dylan Baker <dylan@pnwbakers.com>
+Date: Tue, 19 Dec 2017 20:05:24 -0800
+Subject: [PATCH 1/2] tests: skip objc nsstring test if gnustep is not
+ installed
+
+---
+ test cases/objc/2 nsstring/meson.build | 5 ++++-
+ 1 file changed, 4 insertions(+), 1 deletion(-)
+
+diff --git a/test cases/objc/2 nsstring/meson.build b/test cases/objc/2 nsstring/meson.build
+index a877d746..7f2483f4 100644
+--- a/test cases/objc/2 nsstring/meson.build
++++ b/test cases/objc/2 nsstring/meson.build
+@@ -5,7 +5,10 @@ if host_machine.system() == 'darwin'
+ elif host_machine.system() == 'cygwin'
+ error('MESON_SKIP_TEST GNUstep is not packaged for Cygwin.')
+ else
+- dep = dependency('gnustep')
++ dep = dependency('gnustep', required : false)
++ if not dep.found()
++ error('MESON_SKIP_TEST: GNUstep is not installed')
++ endif
+ if host_machine.system() == 'linux' and meson.get_compiler('objc').get_id() == 'clang'
+ error('MESON_SKIP_TEST: GNUstep is broken on Linux with Clang')
+ endif
+--
+2.16.1
+
diff --git a/abs/extra/meson/PKGBUILD b/abs/extra/meson/PKGBUILD
new file mode 100644
index 0000000..4f93834
--- /dev/null
+++ b/abs/extra/meson/PKGBUILD
@@ -0,0 +1,67 @@
+# Maintainer: Jan Alexander Steffens (heftig) <jan.steffens@gmail.com>
+# Maintainer: Levente Polyak <anthraxx[at]archlinux[dot]org>
+# Contributor: Anatol Pomozov <anatol dot pomozov at gmail>
+
+pkgname=meson
+pkgver=0.44.1
+pkgrel=1
+pkgdesc='High productivity build system'
+url='http://mesonbuild.com/'
+arch=('any')
+license=('Apache')
+depends=('python' 'ninja')
+makedepends=('python-setuptools')
+checkdepends=('gcc-objc' 'vala' 'rust' 'gcc-fortran' 'mono' 'boost' 'qt4' 'qt5-base' 'git'
+ 'cython' 'gtkmm3' 'gtest' 'gmock' 'protobuf' 'wxgtk' 'python-gobject' 'gobject-introspection'
+ 'itstool' 'gtk3' 'java-environment=8' 'gtk-doc' 'llvm' 'clang' 'sdl2' 'graphviz'
+ 'doxygen' 'vulkan-validation-layers' 'openmpi' 'openssh' 'mercurial' 'gtk-sharp-2'
+ 'qt5-tools' 'libwmf' 'dmd' 'valgrind')
+source=(https://github.com/mesonbuild/meson/releases/download/${pkgver}/meson-${pkgver}.tar.gz{,.asc}
+ 0001-tests-skip-objc-nsstring-test-if-gnustep-is-not-inst.patch
+ arch-meson)
+sha512sums=('1ecccccfa24ec2c5c144f8c13fd95d250b59cb22b79676a2a1a6f9ed30a7b08adb71d5882b2d4421d07689ad6dd6d6aef139ac33f628e55a1d428cbc40b4d93e'
+ 'SKIP'
+ '04a0f113ba5f1ae57591fad3f5ecf812ef88b8809b4ffe063e82f6548e728a1a7bd51c171a948873884c2631fc10a9cd141f56de22cd7cf766cdb74996840eec'
+ 'e901f87f3ee1baa7b9aedb79bd5c9e50898a5695ac938f7f8420d8e81f526a09f07ceedadb65975437efa5a68fcf581110a040f579f2530437d1e6eb5addea76')
+validpgpkeys=('95181F4EED14FDF4E41B518D3BF4693BFEEB9428') # Jussi Pakkanen <jpakkane@gmail.com>
+
+prepare() {
+ cd ${pkgname}-${pkgver}
+
+ # Skip gnustep tests
+ patch -Np1 -i ../0001-tests-skip-objc-nsstring-test-if-gnustep-is-not-inst.patch
+}
+
+build() {
+ cd ${pkgname}-${pkgver}
+ python setup.py build
+}
+
+check() (
+ cd ${pkgname}-${pkgver}
+
+ # --as-needed breaks openmpi linking
+ LDFLAGS="${LDFLAGS/,--as-needed/}"
+
+ # set for debug output
+ #export MESON_PRINT_TEST_OUTPUT=1
+
+ export LC_CTYPE=en_US.UTF-8
+ ./run_tests.py
+)
+
+package() {
+ cd ${pkgname}-${pkgver}
+ python setup.py install --root="${pkgdir}" --optimize=1 --skip-build
+
+ for _f in data/syntax-highlighting/vim/*/*; do
+ install -Dt "${pkgdir}/usr/share/vim/vimfiles/$(basename "$(dirname "$_f")")" -m644 "$_f"
+ done
+ install -Dt "${pkgdir}/usr/share/emacs/site-lisp" -m644 data/syntax-highlighting/emacs/*
+ install -Dt "${pkgdir}/usr/share/zsh/site-functions" -m644 data/shell-completions/zsh/*
+
+ # Arch packaging helper
+ install -D ../arch-meson -t "${pkgdir}/usr/bin"
+}
+
+# vim: ts=2 sw=2 et:
diff --git a/abs/extra/meson/arch-meson b/abs/extra/meson/arch-meson
new file mode 100644
index 0000000..c4a9e7c
--- /dev/null
+++ b/abs/extra/meson/arch-meson
@@ -0,0 +1,21 @@
+#!/bin/bash -ex
+# Meson wrapper for Arch Linux packaging
+
+exec meson setup \
+ --prefix /usr \
+ --libdir /usr/lib \
+ --libexecdir /usr/lib \
+ --bindir /usr/bin \
+ --sbindir /usr/bin \
+ --includedir /usr/include \
+ --datadir /usr/share \
+ --mandir /usr/share/man \
+ --infodir /usr/share/info \
+ --localedir /usr/share/locale \
+ --sysconfdir /etc \
+ --localstatedir /var \
+ --sharedstatedir /var/lib \
+ --buildtype release \
+ --wrap-mode nofallback \
+ "$@" \
+ -D b_lto=true