From fedb9571eb423bff0f806ae3fcb106e16e1e56e9 Mon Sep 17 00:00:00 2001
From: Andreas Enge <andreas@enge.fr>
Date: Thu, 20 Jun 2019 18:36:13 +0200
Subject: gnu: Add lcalc.

* gnu/packages/sagemath.scm (lcalc): New variable.
* gnu/packages/patches/lcalc-default-parameters-1.patch,
gnu/packages/patches/lcalc-default-parameters-2.patch,
gnu/packages/patches/lcalc-lcommon-h.patch,
gnu/packages/patches/lcalc-using-namespace-std.patch: New files.
* gnu/local.mk (dist_patch_DATA): Register patches.
---
 .../patches/lcalc-using-namespace-std.patch        | 43 ++++++++++++++++++++++
 1 file changed, 43 insertions(+)
 create mode 100644 gnu/packages/patches/lcalc-using-namespace-std.patch

(limited to 'gnu/packages/patches/lcalc-using-namespace-std.patch')

diff --git a/gnu/packages/patches/lcalc-using-namespace-std.patch b/gnu/packages/patches/lcalc-using-namespace-std.patch
new file mode 100644
index 0000000000..6e0075fdc8
--- /dev/null
+++ b/gnu/packages/patches/lcalc-using-namespace-std.patch
@@ -0,0 +1,43 @@
+Patch taken from the Sage packaging system.
+
+diff --git a/include/Lcommon.h b/include/Lcommon.h
+index 1b3be43..bf40532 100644
+--- a/include/Lcommon.h
++++ b/include/Lcommon.h
+@@ -48,7 +48,7 @@ const bool outputSeries=true;	  // Whether to output the coefficients or just th
+ 
+ // Loop i from m to n
+ // Useful in tidying up most for loops
+-#define loop(i,m,n) for(typeof(m) i=(m); i!=(n); i++)
++#define loop(i,m,n) for(auto i=(m); i!=(n); i++)
+ 
+ // A class for calculations involving polynomials of small degree
+ // Not efficient enough for huge polynomials
+diff --git a/include/Lcommon_ld.h b/include/Lcommon_ld.h
+index 86ae4df..33c560c 100644
+--- a/include/Lcommon_ld.h
++++ b/include/Lcommon_ld.h
+@@ -53,7 +53,7 @@ const bool outputSeries=true;	  // Whether to output the coefficients or just th
+ 
+ // Loop i from m to n
+ // Useful in tidying up most for loops
+-#define loop(i,m,n) for(typeof(m) i=(m); i!=(n); i++)
++#define loop(i,m,n) for(auto i=(m); i!=(n); i++)
+ 
+ // A class for calculations involving polynomials of small degree
+ // Not efficient enough for huge polynomials
+diff --git a/include/Lglobals.h b/include/Lglobals.h
+index 60002e4..ca2606c 100644
+--- a/include/Lglobals.h
++++ b/include/Lglobals.h
+@@ -24,9 +24,9 @@
+ #ifndef Lglobals_H
+ #define Lglobals_H
+ 
++#include <valarray>
+ using namespace std;
+ 
+-#include <valarray>
+ #ifdef USE_MPFR
+     #include "Lgmpfrxx.h"
+     typedef mpfr_class Double;
-- 
cgit v1.2.3