summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'sci-astronomy/esomidas/files')
-rw-r--r--sci-astronomy/esomidas/files/esomidas-madrid.patch25
-rw-r--r--sci-astronomy/esomidas/files/esomidas-nonlinux.patch23
2 files changed, 48 insertions, 0 deletions
diff --git a/sci-astronomy/esomidas/files/esomidas-madrid.patch b/sci-astronomy/esomidas/files/esomidas-madrid.patch
new file mode 100644
index 000000000000..cd3d8bf3fb00
--- /dev/null
+++ b/sci-astronomy/esomidas/files/esomidas-madrid.patch
@@ -0,0 +1,25 @@
+Author: Ole Streicher <olebole@debian.org>
+Description: Fix size of MADRID array in test
+ When gfortran-6 is called with an optimization (-O1 or higher), arrays with a
+ length 1 seem to be converted to a scalar and assumed to always return the same
+ value.
+ .
+ This fails with the MADRID array, which is a placeholder for an array.
+ Specifically ftoc_commf.for fails then, which leads to a missing ftoc_comm.h.
+ .
+ The simple workaround is to use a size > 1 here.
+ .
+ Note that the MADRID array is defined with a length=1 in ~350 places all over
+ eso-midas. They are not changed yet since the verification succeeds. If we get
+ strange bugreports, this may be considered as the problem.
+--- a/system/ftoc-new/ftoc_commf.for
++++ b/system/ftoc-new/ftoc_commf.for
+@@ -34,7 +34,7 @@
+ C
+ PROGRAM F2CCOM
+ C
+- INTEGER MADRID(1)
++ INTEGER MADRID(3)
+ INTEGER VALUE(3)
+ INTEGER STAT,MANY,NOPIX,NOBYT
+ INTEGER*8 PNTR
diff --git a/sci-astronomy/esomidas/files/esomidas-nonlinux.patch b/sci-astronomy/esomidas/files/esomidas-nonlinux.patch
new file mode 100644
index 000000000000..e5f68f11e618
--- /dev/null
+++ b/sci-astronomy/esomidas/files/esomidas-nonlinux.patch
@@ -0,0 +1,23 @@
+Author: Ole Streicher <olebole@debian.org>
+Description: Fixes for non-linux (kFreeBSD, Hurd)
+--- a/system/unix/inmidas
++++ b/system/unix/inmidas
+@@ -425,7 +425,7 @@
+ #
+ os=`uname`
+ case "$os" in
+- "SunOS"|"Linux")
++ SunOS|Linux|GNU|GNU/*)
+ if [ -z "$LD_LIBRARY_PATH" ] ; then
+ LD_LIBRARY_PATH=$MIDASHOME/$MIDVERS/lib
+ else
+--- a/test/prim/veriall.prg
++++ b/test/prim/veriall.prg
+@@ -204,6 +204,7 @@
+ write/keyw in_b MID_WORK:veriall_{out_b(1:{inputi})}.{inputc}
+ endif
+ endif
++write/keyw in_b MID_WORK:veriall_debian.{inputc}
+ open/file {in_b} write fc
+ if fc(1) .lt. 0 then
+ write/out Could not create file: "MID_WORK:veriall_{out_b}.{inputc} ..."