From ff877a567e1767f08bcd2d6a3bb1ccff564fd586 Mon Sep 17 00:00:00 2001
From: Toyohisa Kameyama <kameyama@riken.jp>
Date: Fri, 28 Jun 2019 07:34:11 +0900
Subject: [PATCH] Gotcha package: fixed to build on ARM. (#11840)

Apply patch to current version which has not yet been merged in the
upstream package repo.
---
 .../repos/builtin/packages/gotcha/arm.patch   | 19 +++++++++++++++++++
 .../repos/builtin/packages/gotcha/package.py  |  1 +
 2 files changed, 20 insertions(+)
 create mode 100644 var/spack/repos/builtin/packages/gotcha/arm.patch

diff --git a/var/spack/repos/builtin/packages/gotcha/arm.patch b/var/spack/repos/builtin/packages/gotcha/arm.patch
new file mode 100644
index 0000000000..0790c257b5
--- /dev/null
+++ b/var/spack/repos/builtin/packages/gotcha/arm.patch
@@ -0,0 +1,19 @@
+commit 6f494384b0f00513d950b94a60c14ad1c20eb353
+Author: David Poliakoff <david.poliakoff@gmail.com>
+Date:   Thu Sep 20 10:59:54 2018 -0700
+
+    Pushed fix to help build on ARM systems
+
+diff --git a/src/libc_wrappers.c b/src/libc_wrappers.c
+index 504e31a..5937e5a 100644
+--- a/src/libc_wrappers.c
++++ b/src/libc_wrappers.c
+@@ -358,7 +358,7 @@ int gotcha_open(const char *pathname, int flags, ...)
+    }
+    va_end(args);
+ 
+-   result = syscall(SYS_open, pathname, flags, mode);
++   result = syscall(SYS_openat, AT_FDCWD, pathname, flags, mode);
+    if (result >= 0)
+       return (int) result;
+    
diff --git a/var/spack/repos/builtin/packages/gotcha/package.py b/var/spack/repos/builtin/packages/gotcha/package.py
index 0a01391161..44d22bcc7e 100644
--- a/var/spack/repos/builtin/packages/gotcha/package.py
+++ b/var/spack/repos/builtin/packages/gotcha/package.py
@@ -19,6 +19,7 @@ class Gotcha(CMakePackage):
     version('0.0.2', tag='0.0.2')
 
     variant('test', default=False, description='Build tests for Gotcha')
+    patch('arm.patch', when='@1.0.2')
 
     def configure_args(self):
         spec = self.spec
-- 
GitLab