summary refs log tree commit diff
path: root/gnu/packages/engineering.scm
diff options
context:
space:
mode:
authorEric Bavier <bavier@cray.com>2017-12-14 17:03:58 -0600
committerEric Bavier <bavier@member.fsf.org>2018-01-04 15:34:52 -0600
commit007c75f56fc48b031c1383c98b6bbb3c1e3c30ad (patch)
treee104a1af6ba8d780314c267b91c1d74131607edf /gnu/packages/engineering.scm
parent17e1e21603e7cba622cf4ec41c0e1467972fd449 (diff)
downloadguix-007c75f56fc48b031c1383c98b6bbb3c1e3c30ad.tar.gz
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.
Diffstat (limited to 'gnu/packages/engineering.scm')
-rw-r--r--gnu/packages/engineering.scm22
1 files changed, 12 insertions, 10 deletions
diff --git a/gnu/packages/engineering.scm b/gnu/packages/engineering.scm
index 77b1386b53..61abd6058b 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 .*")