[arch-commits] Commit in meson/trunk (3 files)

Jan Steffens heftig at archlinux.org
Sun Jan 28 13:47:01 UTC 2018


    Date: Sunday, January 28, 2018 @ 13:46:55
  Author: heftig
Revision: 315532

0.44.0-2: Remove GNUstep, fix DMD and use it instead of LDC

Added:
  meson/trunk/0001-tests-skip-objc-nsstring-test-if-gnustep-is-not-inst.patch
  meson/trunk/0002-d-Detect-recent-DMD-compilers.patch
Modified:
  meson/trunk/PKGBUILD

-----------------------------------------------------------------+
 0001-tests-skip-objc-nsstring-test-if-gnustep-is-not-inst.patch |   30 ++++++++
 0002-d-Detect-recent-DMD-compilers.patch                        |   33 ++++++++
 PKGBUILD                                                        |   37 ++++++----
 3 files changed, 88 insertions(+), 12 deletions(-)

Added: 0001-tests-skip-objc-nsstring-test-if-gnustep-is-not-inst.patch
===================================================================
--- 0001-tests-skip-objc-nsstring-test-if-gnustep-is-not-inst.patch	                        (rev 0)
+++ 0001-tests-skip-objc-nsstring-test-if-gnustep-is-not-inst.patch	2018-01-28 13:46:55 UTC (rev 315532)
@@ -0,0 +1,30 @@
+From 89d4decc9cdda01590c2a734c0f58924bcf30777 Mon Sep 17 00:00:00 2001
+Message-Id: <89d4decc9cdda01590c2a734c0f58924bcf30777.1517146929.git.jan.steffens at gmail.com>
+From: Dylan Baker <dylan at 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
+

Added: 0002-d-Detect-recent-DMD-compilers.patch
===================================================================
--- 0002-d-Detect-recent-DMD-compilers.patch	                        (rev 0)
+++ 0002-d-Detect-recent-DMD-compilers.patch	2018-01-28 13:46:55 UTC (rev 315532)
@@ -0,0 +1,33 @@
+From 67d5488753911b06b80afd57066e36b4eddec892 Mon Sep 17 00:00:00 2001
+Message-Id: <67d5488753911b06b80afd57066e36b4eddec892.1517146929.git.jan.steffens at gmail.com>
+In-Reply-To: <89d4decc9cdda01590c2a734c0f58924bcf30777.1517146929.git.jan.steffens at gmail.com>
+References: <89d4decc9cdda01590c2a734c0f58924bcf30777.1517146929.git.jan.steffens at gmail.com>
+From: Matthias Klumpp <matthias at tenstral.net>
+Date: Sun, 7 Jan 2018 17:57:43 +0100
+Subject: [PATCH 2/2] d: Detect recent DMD compilers
+
+They now are published by the D Language Foundation, and not Digital
+Mars. Therefore, their signature has changed slightly.
+(We can not check for 'DMD', because that string appears in every
+compiler version output to denote the frontend version used by the
+compiler).
+---
+ mesonbuild/environment.py | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/mesonbuild/environment.py b/mesonbuild/environment.py
+index 0cb1450e..7fa4732a 100644
+--- a/mesonbuild/environment.py
++++ b/mesonbuild/environment.py
+@@ -725,7 +725,7 @@ class Environment:
+             return compilers.LLVMDCompiler(exelist, version, is_cross)
+         elif 'gdc' in out:
+             return compilers.GnuDCompiler(exelist, version, is_cross)
+-        elif 'Digital Mars' in out:
++        elif 'The D Language Foundation' in out or 'Digital Mars' in out:
+             return compilers.DmdDCompiler(exelist, version, is_cross)
+         raise EnvironmentException('Unknown compiler "' + ' '.join(exelist) + '"')
+ 
+-- 
+2.16.1
+

Modified: PKGBUILD
===================================================================
--- PKGBUILD	2018-01-28 13:26:18 UTC (rev 315531)
+++ PKGBUILD	2018-01-28 13:46:55 UTC (rev 315532)
@@ -4,7 +4,7 @@
 
 pkgname=meson
 pkgver=0.44.0
-pkgrel=1
+pkgrel=2
 pkgdesc='High productivity build system'
 url='http://mesonbuild.com/'
 arch=('any')
@@ -11,21 +11,30 @@
 license=('Apache')
 depends=('python' 'ninja')
 makedepends=('python-setuptools')
-checkdepends=('gcc-objc' 'vala' 'rust' 'gcc-fortran' 'mono' 'boost' 'qt4' 'qt5-base' 'git' 'gnustep-base'
+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'
+              'itstool' 'gtk3' 'java-environment=8' 'gtk-doc' 'llvm' 'clang' 'sdl2' 'graphviz'
               'doxygen' 'vulkan-validation-layers' 'openmpi' 'openssh' 'mercurial' 'gtk-sharp-2'
-              'qt5-tools' 'libwmf')
-checkdepends_x86_64=('ldc' 'valgrind')
+              '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
+        0002-d-Detect-recent-DMD-compilers.patch
         arch-meson)
 sha512sums=('9aefa52d92d7750528e9a9236f19131c8e58bfc21212595c311f4e2787ad40bb53d6085f52283cad13923ddf12da1a59067d48424c72ace47fc127978d1af2ff'
             'SKIP'
+            '04a0f113ba5f1ae57591fad3f5ecf812ef88b8809b4ffe063e82f6548e728a1a7bd51c171a948873884c2631fc10a9cd141f56de22cd7cf766cdb74996840eec'
+            'b38af817966e60db19c1efcc5e8e4f1b822925bf823b0a68c33eb0bfd0aa4ccff1439e352d8df032d0a189cd0ff37fb7dcefe0ed7a272e45f963f7e3d0b63f0f'
             'e901f87f3ee1baa7b9aedb79bd5c9e50898a5695ac938f7f8420d8e81f526a09f07ceedadb65975437efa5a68fcf581110a040f579f2530437d1e6eb5addea76')
 validpgpkeys=('95181F4EED14FDF4E41B518D3BF4693BFEEB9428') # Jussi Pakkanen <jpakkane at gmail.com>
 
 prepare() {
   cd ${pkgname}-${pkgver}
+
+  # Skip gnustep tests
+  patch -Np1 -i ../0001-tests-skip-objc-nsstring-test-if-gnustep-is-not-inst.patch
+
+  # Fix for recent DMD
+  patch -Np1 -i ../0002-d-Detect-recent-DMD-compilers.patch
 }
 
 build() {
@@ -33,15 +42,19 @@
   python setup.py build
 }
 
-check() {
+check() (
   cd ${pkgname}-${pkgver}
-  unset CLASSPATH  # GNUstep breaks java tests
-  LDFLAGS="${LDFLAGS/,--as-needed/}" # --as-needed breaks openmpi linking
-  # export MESON_PRINT_TEST_OUTPUT=1 # set this for debug output
-  # graphviz: Installing breaks doxygen tests
-  LC_CTYPE=en_US.UTF-8 DC=ldc ./run_tests.py
-}
 
+  # --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



More information about the arch-commits mailing list