unofficial mirror of guix-patches@gnu.org 
 help / color / mirror / code / Atom feed
From: Eric Bavier <bavier@cray.com>
To: 29982@debbugs.gnu.org
Subject: [bug#29982] [PATCH] gnu: ao-cad: Update and fix for aarch64.
Date: Thu, 4 Jan 2018 11:35:40 -0600	[thread overview]
Message-ID: <20180104173540.GJ188239@pe06.us.cray.com> (raw)

[-- Attachment #1: Type: text/plain, Size: 182 bytes --]

This patch updates the 'ao-cad' package snapshot and fixes the build
for aarch64.  This could be split into two commits if desired.

-- 
Eric Bavier, Scientific Libraries, Cray Inc.

[-- Attachment #2: 0001-gnu-ao-cad-Update-and-fix-for-aarch64.patch --]
[-- Type: text/x-patch, Size: 5228 bytes --]

From 686fd80fdc3e507c78ca0592ddf248c49a2e04ef Mon Sep 17 00:00:00 2001
From: Eric Bavier <bavier@cray.com>
Date: Thu, 14 Dec 2017 17:03:58 -0600
Subject: [PATCH] gnu: ao-cad: Update and fix for aarch64.

* gnu/packages/patches/ao-cad-aarch64-support.patch: New patch.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/engineering.scm (ao-cad)[source]: Use it.  Update snapshot to
fb288c9.  Use VCS helpers for version and file-name.
[arguments]: Add 'remove-native-compilation' phase.
---
 gnu/local.mk                                      |  1 +
 gnu/packages/engineering.scm                      | 22 ++++++++++++----------
 gnu/packages/patches/ao-cad-aarch64-support.patch | 18 ++++++++++++++++++
 3 files changed, 31 insertions(+), 10 deletions(-)
 create mode 100644 gnu/packages/patches/ao-cad-aarch64-support.patch

diff --git a/gnu/local.mk b/gnu/local.mk
index d02cb3449..952fe3c61 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -538,6 +538,7 @@ dist_patch_DATA =						\
   %D%/packages/patches/agg-am_c_prototype.patch			\
   %D%/packages/patches/ansible-wrap-program-hack.patch		\
   %D%/packages/patches/antiword-CVE-2014-8123.patch			\
+  %D%/packages/patches/ao-cad-aarch64-support.patch		\
   %D%/packages/patches/apr-skip-getservbyname-test.patch	\
   %D%/packages/patches/aspell-default-dict-dir.patch		\
   %D%/packages/patches/ath9k-htc-firmware-binutils.patch	\
diff --git a/gnu/packages/engineering.scm b/gnu/packages/engineering.scm
index 77b1386b5..61abd6058 100644
--- a/gnu/packages/engineering.scm
+++ b/gnu/packages/engineering.scm
@@ -559,10 +559,11 @@ as well as pick-place files.")
     (license license:gpl2+)))
 
 (define-public ao
-  (let ((commit "0bc2354b8dcd1a82a0fd6647706b126045e52734"))
+  (let ((commit "fb288c945aa7e30d9be10a564edad7e1b6a6c1ae")
+        (revision "1"))
     (package
       (name "ao-cad")            ;XXX: really "ao", but it collides with libao
-      (version (string-append "0." (string-take commit 7)))
+      (version (git-version "0" revision commit))
       (source (origin
                 (method git-fetch)
                 (uri (git-reference
@@ -570,8 +571,9 @@ as well as pick-place files.")
                       (commit commit)))
                 (sha256
                  (base32
-                  "0lm7iljklafs8dhlvaab2yhwx4xymrdjrqk9c5xvn59hlvbgl1j5"))
-                (file-name (string-append name "-" version "-checkout"))
+                  "0syplfqiq7ng7md44yriq5cz41jp8q9z3pl2iwkkllds6p9ylyal"))
+                (file-name (git-file-name name version))
+                (patches (search-patches "ao-cad-aarch64-support.patch"))
                 (modules '((guix build utils)))
                 (snippet
                  ;; Remove bundled libraries: Eigen, glm, and catch.  TODO:
@@ -594,6 +596,10 @@ as well as pick-place files.")
 
          #:phases
          (modify-phases %standard-phases
+           (add-after 'unpack 'remove-native-compilation
+             (lambda _
+               (substitute* "CMakeLists.txt" (("-march=native") ""))
+               #t))
            (add-before 'build 'add-eigen-to-search-path
              (lambda* (#:key inputs #:allow-other-keys)
                ;; Allow things to find our own Eigen and Catch.
@@ -615,16 +621,12 @@ as well as pick-place files.")
                  (with-directory-excursion ,(string-append "../"
                                                            name "-" version
                                                            "-checkout")
-                   (substitute* "bind/guile/ao/bind.scm"
+                   (substitute* "bind/guile/ao/sys/libao.scm"
                      (("\\(define libao \\(dynamic-link .*$")
                       (string-append "(define libao (dynamic-link \""
                                      out "/lib/libao\")) ;")))
 
-                   (for-each (lambda (file)
-                               (install-file file
-                                             (string-append moddir
-                                                            "/ao")))
-                             (find-files "bind/guile" "\\.scm$"))
+                   (copy-recursively "bind/guile/ao" (string-append moddir "/ao"))
 
                    (substitute* "bin/ao-guile"
                      (("\\(add-to-load-path .*")
diff --git a/gnu/packages/patches/ao-cad-aarch64-support.patch b/gnu/packages/patches/ao-cad-aarch64-support.patch
new file mode 100644
index 000000000..291369cd9
--- /dev/null
+++ b/gnu/packages/patches/ao-cad-aarch64-support.patch
@@ -0,0 +1,18 @@
+Support in ao-cad for aarch64.
+
+Submitted upstream at https://github.com/mkeeter/ao/issues/69
+
+--- ao/ui/vendor/efsw/src/efsw/inotify-nosys.h.orig	2017-12-14 16:27:16.125871099 -0600
++++ ao/ui/vendor/efsw/src/efsw/inotify-nosys.h	2017-12-14 16:26:39.786022981 -0600
+@@ -69,6 +69,11 @@
+ # define __NR_inotify_add_watch (__NR_SYSCALL_BASE+317)
+ # define __NR_inotify_rm_watch (__NR_SYSCALL_BASE+318)
+ 
++#elif defined (__aarch64__)
++# define __NR_inotify_init 1043
++# define __NR_inotify_add_watch 27
++# define __NR_inotify_rm_watch 28
++
+ #elif defined (__frv__)
+ # define __NR_inotify_init 291
+ # define __NR_inotify_add_watch 292
-- 
2.15.0


             reply	other threads:[~2018-01-04 17:37 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-01-04 17:35 Eric Bavier [this message]
2018-01-04 18:03 ` [bug#29982] [PATCH] gnu: ao-cad: Update and fix for aarch64 Leo Famulari
2018-01-05  3:01   ` bug#29982: " Eric Bavier

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://guix.gnu.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20180104173540.GJ188239@pe06.us.cray.com \
    --to=bavier@cray.com \
    --cc=29982@debbugs.gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).