summary refs log tree commit diff
diff options
context:
space:
mode:
authorRicardo Wurmus <rekado@elephly.net>2022-07-02 23:52:49 +0200
committerRicardo Wurmus <rekado@elephly.net>2022-07-02 23:56:10 +0200
commit4745be8514c6f99216c9636e0060f41818401f3e (patch)
tree6a07187ff23c7ee70df3294837305688707ce7e7
parenta0142125e6d6eb25653d097fa1c24a9127bccce2 (diff)
downloadguix-4745be8514c6f99216c9636e0060f41818401f3e.tar.gz
gnu: r-ifultools: Patch in removed macros to fix build.
* gnu/packages/cran.scm (r-ifultools)[arguments]: Define removed compatibility
macros.
-rw-r--r--gnu/packages/cran.scm19
1 files changed, 19 insertions, 0 deletions
diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm
index a6590e30a8..02aa63af56 100644
--- a/gnu/packages/cran.scm
+++ b/gnu/packages/cran.scm
@@ -7238,6 +7238,25 @@ provides some missing S-PLUS functionality in R.")
         (base32
          "16a7rbvlym3bnfm93ikr5kl0l86ppk0s41fva6idvcx765g3fqkk"))))
     (build-system r-build-system)
+    (arguments
+     (list
+      #:phases
+      `(modify-phases %standard-phases
+         (add-after 'unpack 'compatibility
+           (lambda _
+             ;; These definitions are no longer part of R since 4.2.0.  See
+             ;; https://cran.r-project.org/doc/manuals/r-devel/NEWS.html for
+             ;; details.
+             (substitute* "inst/include/ut_RS.h"
+               (("#include \"R.h\"" m)
+                (string-append "\
+#define R_PROBLEM_BUFSIZE 4096
+#define PROBLEM	{char R_problem_buf[R_PROBLEM_BUFSIZE];(sprintf)(R_problem_buf,
+#define MESSAGE {char R_problem_buf[R_PROBLEM_BUFSIZE];(sprintf)(R_problem_buf,
+#define ERROR	),error(R_problem_buf);}
+#define WARNING(x)		),warning(R_problem_buf);}
+#define WARN			WARNING(NULL)
+" m))))))))
     (propagated-inputs
      (list r-mass r-splus2r))
     (home-page "https://cran.r-project.org/web/packages/ifultools/")