set path=<<
>>\msys\1.0\bin;%path%
sh ./Configure --without-gmp --with-qt=no 2>&1 | tee -a 00c00
Replace paricfg.h by the Math::Pari version (with PARIVERSION PARIINFO added for gp.c)
Change DOTEST line to have 64 in <<>>/Makefile.
With plotting patch: plotterm should have Unixified line-endings.
make -k bench 2>&1 | tee -a 00t00
The only problem: install()
--- pari-2.3.5/src/language/init.c-pre 2019-03-28 21:32:27.308266800 -0700
+++ pari-2.3.5/src/language/init.c 2019-03-28 21:43:52.938482600 -0700
@@ -19,15 +19,16 @@ Foundation, Inc., 59 Temple Place - Suit
/* */
/*******************************************************************/
#include
-#include "pari.h"
-#include "paripriv.h"
-#include "anal.h"
#ifdef _WIN32
# ifndef WINCE
# include
# endif
#endif
+#include "pari.h"
+#include "paripriv.h"
+#include "anal.h"
+
GEN gnil, gen_0, gen_1, gen_m1, gen_2, ghalf, gi;
GEN gpi, geuler, bernzone;
GEN primetab; /* private primetable */
--- pari-2.3.5/src/language/es.c-pre 2019-03-28 21:32:27.193260200 -0700
+++ pari-2.3.5/src/language/es.c 2019-03-28 21:40:33.206058600 -0700
@@ -18,6 +18,13 @@ Foundation, Inc., 59 Temple Place - Suit
/** INPUT/OUTPUT SUBROUTINES **/
/** **/
/*******************************************************************/
+#ifdef HAS_STAT
+#include
+#endif
+#ifdef HAS_OPENDIR
+#include
+#endif
+
#include "pari.h"
#include "paripriv.h"
#include "anal.h"
--- pari-2.3.5/src/headers/parigen.h-pre 2019-03-28 21:32:25.971190300 -0700
+++ pari-2.3.5/src/headers/parigen.h 2019-03-28 21:36:03.087608700 -0700
@@ -15,8 +15,25 @@ Foundation, Inc., 59 Temple Place - Suit
/* This file defines the parameters of the GEN type */
-typedef long *GEN;
+#if defined(_WIN64) || defined(WIN64) /* It seems that _WIN64 may be not defined, only WIN64: https://www.cpantesters.org/cpan/report/625390d2-6ee9-1014-8de1-4f76cf55203a */
+typedef unsigned long long pari_ulong;
+/* Avoid redefinition of symbols to a different type (error in gcc v13).
+ May just move the error to the time of substitution! */
+#define long long long
+# ifdef _WIN64_REALLY_HARD /* Not needed anymore; do not work anyway (but only from .xs???!!!): https://www.cpantesters.org/cpan/report/e4b8ea8a-6c58-1014-ae52-ef181c4f203f */
+#define labs(x) CONCAT2(l,labs)(x)
+#define atol(x) CONCAT2(atol,l)(x)
+#define atoul(x) CONCAT2(atoul,l)(x)
+#define strtol(x,y,z) CONCAT2(strtol,l)(x,y,z)
+#define strtoul(x,y,z) CONCAT2(strtoul,l)(x,y,z)
+#define CONCAT2_IMPL(x, y) x##y
+#define CONCAT2(x, y) CONCAT2_IMPL(x, y)
+# endif /* _WIN64_REALLY_HARD */
+#else
typedef unsigned long pari_ulong;
+#endif
+
+typedef long *GEN;
#define ulong pari_ulong
#ifdef LONG_IS_64BIT