From e620883a3cfc28d8cd80456368e122e5330a0191 Mon Sep 17 00:00:00 2001 From: Toyohisa Kameyama Date: Thu, 15 Aug 2019 00:38:50 +0900 Subject: masurca: build on arm. (#12416) * remove -minline-all-stringops when target is arm. * change int3 to raise(SIGTRAP) when target is arm. --- var/spack/repos/builtin/packages/masurca/arm.patch | 46 ++++++++++++++++++++++ .../repos/builtin/packages/masurca/package.py | 9 +++++ 2 files changed, 55 insertions(+) create mode 100644 var/spack/repos/builtin/packages/masurca/arm.patch (limited to 'var') diff --git a/var/spack/repos/builtin/packages/masurca/arm.patch b/var/spack/repos/builtin/packages/masurca/arm.patch new file mode 100644 index 0000000000..34ae1c73d6 --- /dev/null +++ b/var/spack/repos/builtin/packages/masurca/arm.patch @@ -0,0 +1,46 @@ +diff -ru spack-src/global-1/PacBio/include/charb.hpp spack-src.new/global-1/PacBio/include/charb.hpp +--- spack-src/global-1/PacBio/include/charb.hpp 2018-01-23 05:03:06.000000000 +0900 ++++ spack-src.new/global-1/PacBio/include/charb.hpp 2019-08-14 10:32:47.741826823 +0900 +@@ -25,6 +25,7 @@ + #include + #include + #include ++#include + #include + #include + +@@ -186,7 +187,11 @@ + } + cptr += char_read; + if(cptr == b.base_) ++#ifdef __x86_64 + asm("int3;"); ++#else ++ raise(SIGTRAP); ++#endif + if(cptr < b.end_ - 1 || *(cptr - 1) == '\n') + break; + size_t off = cptr - b.base_; +diff -ru spack-src/global-1/SuperReads/include/charb.hpp spack-src.new/global-1/SuperReads/include/charb.hpp +--- spack-src/global-1/SuperReads/include/charb.hpp 2018-12-15 01:57:56.000000000 +0900 ++++ spack-src.new/global-1/SuperReads/include/charb.hpp 2019-08-14 10:34:10.501841240 +0900 +@@ -25,6 +25,7 @@ + #include + #include + #include ++#include + #include + #include + +@@ -186,7 +187,11 @@ + } + cptr += char_read; + if(cptr == b.base_) ++#ifdef __x86_64 + asm("int3;"); ++#else ++ raise(SIGTRAP); ++#endif + if(cptr < b.end_ - 1 || *(cptr - 1) == '\n') + break; + size_t off = cptr - b.base_; diff --git a/var/spack/repos/builtin/packages/masurca/package.py b/var/spack/repos/builtin/packages/masurca/package.py index be0ea2ab94..98adbafe9f 100644 --- a/var/spack/repos/builtin/packages/masurca/package.py +++ b/var/spack/repos/builtin/packages/masurca/package.py @@ -20,6 +20,15 @@ class Masurca(Package): depends_on('perl', type=('build', 'run')) depends_on('boost') depends_on('zlib') + patch('arm.patch', when='target=aarch64') + + def patch(self): + if self.spec.satisfies('target=aarch64'): + for makefile in 'Makefile.am', 'Makefile.in': + m = join_path('global-1', 'prepare', makefile) + filter_file('-minline-all-stringops', '', m) + m = join_path('global-1', makefile) + filter_file('-minline-all-stringops', '', m) def install(self, spec, prefix): installer = Executable('./install.sh') -- cgit v1.2.3-70-g09d2