From ac4847ebaf1ed22cf9c0fe3c0ed2e5123777cace Mon Sep 17 00:00:00 2001 From: Guillaume Le Vaillant Date: Thu, 14 May 2020 17:04:32 +0200 Subject: [PATCH] gnu: js8call: Fix undefined symbol error when starting the program. * gnu/packages/radio.scm (js8call)[arguments]: Add 'work-around-runtime-bug' phase. --- gnu/packages/radio.scm | 11 +++++++++++ 1 file changed, 11 insertions(+) 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 @@ (define-public js8call (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"