summary refs log tree commit diff
path: root/gnu
diff options
context:
space:
mode:
authorGuillaume Le Vaillant <glv@posteo.net>2020-05-14 17:04:32 +0200
committerGuillaume Le Vaillant <glv@posteo.net>2020-05-14 17:17:47 +0200
commitac4847ebaf1ed22cf9c0fe3c0ed2e5123777cace (patch)
tree4940e4d0bbaaff2339bd72c951947a4f93ed777c /gnu
parentb79794a7630a04668d2769aee50ebc25e0d7c3d2 (diff)
downloadguix-ac4847ebaf1ed22cf9c0fe3c0ed2e5123777cace.tar.gz
gnu: js8call: Fix undefined symbol error when starting the program.
* gnu/packages/radio.scm (js8call)[arguments]: Add 'work-around-runtime-bug'
  phase.
Diffstat (limited to 'gnu')
-rw-r--r--gnu/packages/radio.scm11
1 files changed, 11 insertions, 0 deletions
diff --git a/gnu/packages/radio.scm b/gnu/packages/radio.scm
index 2eb0a82415..cbfb068e3c 100644
--- a/gnu/packages/radio.scm
+++ b/gnu/packages/radio.scm
@@ -915,6 +915,17 @@ weak-signal conditions.")
                                (assoc-ref outputs "out")
                                "/share")))
              #t))
+         (add-after 'fix-paths 'work-around-runtime-bug
+           (lambda _
+             ;; Some of the programs in this package fail to find symbols
+             ;; in libm at runtime. Adding libm manually at the end of the
+             ;; library lists when linking the programs seems to help.
+             ;; TODO: find exactly what is wrong in the way the programs
+             ;; are built.
+             (substitute* "CMakeLists.txt"
+               (("target_link_libraries \\((.*)\\)" all libs)
+                (string-append "target_link_libraries (" libs " m)")))
+             #t))
          (add-after 'unpack 'fix-hamlib
            (lambda _
              (substitute* "CMake/Modules/Findhamlib.cmake"