Version in base suite: 3.3.0-6 Base version: libcgns_3.3.0-6 Target version: libcgns_3.3.0-7~deb10u1 Base file: /srv/ftp-master.debian.org/ftp/pool/main/libc/libcgns/libcgns_3.3.0-6.dsc Target file: /srv/ftp-master.debian.org/policy/pool/main/libc/libcgns/libcgns_3.3.0-7~deb10u1.dsc changelog | 13 + patches/gcc-pr92361.patch | 557 ++++++++++++++++++++++++++++++++++++++++++++++ patches/series | 1 3 files changed, 571 insertions(+) diff -Nru libcgns-3.3.0/debian/changelog libcgns-3.3.0/debian/changelog --- libcgns-3.3.0/debian/changelog 2018-03-06 20:22:21.000000000 +0000 +++ libcgns-3.3.0/debian/changelog 2020-01-14 00:10:12.000000000 +0000 @@ -1,3 +1,16 @@ +libcgns (3.3.0-7~deb10u1) buster; urgency=medium + + * Rebuild for buster. + + -- Andreas Beckmann Tue, 14 Jan 2020 01:10:12 +0100 + +libcgns (3.3.0-7) unstable; urgency=medium + + * Backport fix from experimental + * New patch gcc-pr92361.patch to fix FTBFS on ppcel64 (closes: #944127) + + -- Gilles Filippini Sat, 16 Nov 2019 10:19:19 +0100 + libcgns (3.3.0-6) unstable; urgency=medium [ Aurelien Jarno ] diff -Nru libcgns-3.3.0/debian/patches/gcc-pr92361.patch libcgns-3.3.0/debian/patches/gcc-pr92361.patch --- libcgns-3.3.0/debian/patches/gcc-pr92361.patch 1970-01-01 00:00:00.000000000 +0000 +++ libcgns-3.3.0/debian/patches/gcc-pr92361.patch 2019-11-16 09:14:16.000000000 +0000 @@ -0,0 +1,557 @@ +Description: Neither Fortran standard nor gfortran support calling + vararg C function from Fortran. It used to work 'by chance' for + most Debian supported architectures, but was broken for POWER by + GCC PR fortran/87689 [1]. + This GCC PR request [2] explains it all. + . + [1] https://gcc.gnu.org/viewcvs/gcc?view=revision&revision=268992 + [2] https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92361 +Author: Gilles Filippini +Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=944127 +Forwarded: https://cgnsorg.atlassian.net/browse/CGNS-179 +Index: libcgns/src/cg_ftoc.c +=================================================================== +--- libcgns.orig/src/cg_ftoc.c ++++ libcgns/src/cg_ftoc.c +@@ -2652,11 +2652,8 @@ CGNSDLL void __stdcall cg_goto_f(cgint_f + CGNSDLL void FMNAME(cg_goto_f, CG_GOTO_F)(cgint_f *fn, cgint_f *B, cgint_f *ier, ...) + #endif + { +-#ifdef _CRAY +- _fcd cray_string; +-#endif +- char *f_label[CG_MAX_GOTO_DEPTH], *label[CG_MAX_GOTO_DEPTH]; +- int index[CG_MAX_GOTO_DEPTH], n, i, len[CG_MAX_GOTO_DEPTH]; ++ char *label[CG_MAX_GOTO_DEPTH]; ++ int index[CG_MAX_GOTO_DEPTH], n, i; + va_list ap; + + /* initialize ap to the last parameter before the variable argument list */ +@@ -2666,19 +2663,9 @@ CGNSDLL void FMNAME(cg_goto_f, CG_GOTO_F + + /* read arguments */ + for (n = 0; n < CG_MAX_GOTO_DEPTH; n++) { +-#ifdef _CRAY +- cray_string = va_arg(ap, _fcd); +- f_label[n] = _fcdtocp(cray_string); +- len[n] = _fcdlen(cray_string); +-#else +- f_label[n] = va_arg(ap, char *); +-# ifdef WIN32_FORTRAN +- /* In Windows, the arguments appear in a different order: char*, len, index,...*/ +- len[n] = (int)va_arg(ap, int); +-# endif +-#endif +- if (f_label[n][0] == ' ' || 0 == strncmp(f_label[n],"end",3) || +- 0 == strncmp(f_label[n],"END",3)) break; ++ label[n] = va_arg(ap, char *); ++ if (label[n][0] == ' ' || 0 == strncmp(label[n],"end",3) || ++ 0 == strncmp(label[n],"END",3)) break; + + index[n] = (int)*(va_arg(ap, cgint_f *)); + if (index[n] < 0) { +@@ -2688,19 +2675,8 @@ CGNSDLL void FMNAME(cg_goto_f, CG_GOTO_F + } + } + +-#if !defined(_CRAY) && !defined(WIN32_FORTRAN) +- for (i=0; i