public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug libfortran/104006] New: [12 regression] power-ieee128 merge breaks Solaris build
@ 2022-01-13 12:39 ro at gcc dot gnu.org
  2022-01-13 12:40 ` [Bug libfortran/104006] " ro at gcc dot gnu.org
                   ` (28 more replies)
  0 siblings, 29 replies; 30+ messages in thread
From: ro at gcc dot gnu.org @ 2022-01-13 12:39 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104006

            Bug ID: 104006
           Summary: [12 regression] power-ieee128 merge breaks Solaris
                    build
           Product: gcc
           Version: 12.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: libfortran
          Assignee: unassigned at gcc dot gnu.org
          Reporter: ro at gcc dot gnu.org
                CC: jakub at gcc dot gnu.org, tkoenig at gcc dot gnu.org
  Target Milestone: ---
            Target: *-*-solaris2.11

Between 20220111 and 20220112, Solaris bootstrap (both sparc and x86) got badly
broken, obviously due to the power-ieee128 merge:

* Initially, the build aborted with

make[2]: *** No rule to make target 'gfortran.ver-sun', needed by 'all'.  Stop.

  This can easily be fixed by renaming the target to gfortran.ver-sun.

* What's way worse, however, is that parallel builds fail repeatedly in
  libgfortran:

  On x86 (-j48), I get

In file included from
/vol/gcc/src/hg/master/local/libgfortran/runtime/bounds.c:25:
/vol/gcc/src/hg/master/local/libgfortran/libgfortran.h:393:31: error: unknown
type name 'GFC_REAL_4'
  393 | typedef GFC_ARRAY_DESCRIPTOR (GFC_REAL_4) gfc_array_r4;
      |                               ^~~~~~~~~~
/vol/gcc/src/hg/master/local/libgfortran/libgfortran.h:375:3: note: in
definition of macro 'GFC_ARRAY_DESCRIPTOR'
  375 |   type *base_addr;\
      |   ^~~~
/vol/gcc/src/hg/master/local/libgfortran/libgfortran.h:394:31: error: unknown
type name 'GFC_REAL_8'
  394 | typedef GFC_ARRAY_DESCRIPTOR (GFC_REAL_8) gfc_array_r8;
      |                               ^~~~~~~~~~
/vol/gcc/src/hg/master/local/libgfortran/libgfortran.h:375:3: note: in
definition of macro 'GFC_ARRAY_DESCRIPTOR'
  375 |   type *base_addr;\
      |   ^~~~
/vol/gcc/src/hg/master/local/libgfortran/libgfortran.h:404:31: error: unknown
type name 'GFC_COMPLEX_4'
  404 | typedef GFC_ARRAY_DESCRIPTOR (GFC_COMPLEX_4) gfc_array_c4;
      |                               ^~~~~~~~~~~~~
/vol/gcc/src/hg/master/local/libgfortran/libgfortran.h:375:3: note: in
definition of macro 'GFC_ARRAY_DESCRIPTOR'
  375 |   type *base_addr;\
      |   ^~~~
/vol/gcc/src/hg/master/local/libgfortran/libgfortran.h:405:31: error: unknown
type name 'GFC_COMPLEX_8'
  405 | typedef GFC_ARRAY_DESCRIPTOR (GFC_COMPLEX_8) gfc_array_c8;
      |                               ^~~~~~~~~~~~~
/vol/gcc/src/hg/master/local/libgfortran/libgfortran.h:375:3: note: in
definition of macro 'GFC_ARRAY_DESCRIPTOR'
  375 |   type *base_addr;\
      |   ^~~~

  also for several other files.  All those definitions live in the generated
  kinds.h.  I cannot yet tell if the header isn't generated atomically.

  On sparc (-j64), I get instead:

/vol/gcc/src/hg/master/local/libgfortran/ieee/ieee_exceptions.F90:28:2:

   28 | #include "c99_protos.inc"
      |  1~~~~~~~~~~
Fatal Error: kinds.inc: No such file or directory

  I notice that there's no .deps/*.Plo file for this source file; probably
  some dependencies are missing.

Manually restarting the libgfortran build (often several times) ultimately
lets the build succeed.

For comparison's sake I also tried -j64 builds on x86_64-pc-linux-gnu and
i686-pc-linux-gnu.  Both succeeded without issues.

^ permalink raw reply	[flat|nested] 30+ messages in thread

* [Bug libfortran/104006] [12 regression] power-ieee128 merge breaks Solaris build
  2022-01-13 12:39 [Bug libfortran/104006] New: [12 regression] power-ieee128 merge breaks Solaris build ro at gcc dot gnu.org
@ 2022-01-13 12:40 ` ro at gcc dot gnu.org
  2022-01-13 13:17 ` jakub at gcc dot gnu.org
                   ` (27 subsequent siblings)
  28 siblings, 0 replies; 30+ messages in thread
From: ro at gcc dot gnu.org @ 2022-01-13 12:40 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104006

Rainer Orth <ro at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
   Target Milestone|---                         |12.0

^ permalink raw reply	[flat|nested] 30+ messages in thread

* [Bug libfortran/104006] [12 regression] power-ieee128 merge breaks Solaris build
  2022-01-13 12:39 [Bug libfortran/104006] New: [12 regression] power-ieee128 merge breaks Solaris build ro at gcc dot gnu.org
  2022-01-13 12:40 ` [Bug libfortran/104006] " ro at gcc dot gnu.org
@ 2022-01-13 13:17 ` jakub at gcc dot gnu.org
  2022-01-13 13:20 ` jakub at gcc dot gnu.org
                   ` (26 subsequent siblings)
  28 siblings, 0 replies; 30+ messages in thread
From: jakub at gcc dot gnu.org @ 2022-01-13 13:17 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104006

Jakub Jelinek <jakub at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
   Last reconfirmed|                            |2022-01-13
             Status|UNCONFIRMED                 |ASSIGNED
     Ever confirmed|0                           |1
           Assignee|unassigned at gcc dot gnu.org      |jakub at gcc dot gnu.org

--- Comment #1 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
Created attachment 52176
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=52176&action=edit
gcc12-pr104006.patch

Sorry for the gfortran.map-sun left-over.  The kinds.inc missing dependency
seems to be there since forever, wonder what changed.
Anyway, this patch ought to fix both.

^ permalink raw reply	[flat|nested] 30+ messages in thread

* [Bug libfortran/104006] [12 regression] power-ieee128 merge breaks Solaris build
  2022-01-13 12:39 [Bug libfortran/104006] New: [12 regression] power-ieee128 merge breaks Solaris build ro at gcc dot gnu.org
  2022-01-13 12:40 ` [Bug libfortran/104006] " ro at gcc dot gnu.org
  2022-01-13 13:17 ` jakub at gcc dot gnu.org
@ 2022-01-13 13:20 ` jakub at gcc dot gnu.org
  2022-01-13 13:43 ` ro at CeBiTec dot Uni-Bielefeld.DE
                   ` (25 subsequent siblings)
  28 siblings, 0 replies; 30+ messages in thread
From: jakub at gcc dot gnu.org @ 2022-01-13 13:20 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104006

--- Comment #2 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
Sorry, only added kinds.inc dependencies and not kinds.h.

^ permalink raw reply	[flat|nested] 30+ messages in thread

* [Bug libfortran/104006] [12 regression] power-ieee128 merge breaks Solaris build
  2022-01-13 12:39 [Bug libfortran/104006] New: [12 regression] power-ieee128 merge breaks Solaris build ro at gcc dot gnu.org
                   ` (2 preceding siblings ...)
  2022-01-13 13:20 ` jakub at gcc dot gnu.org
@ 2022-01-13 13:43 ` ro at CeBiTec dot Uni-Bielefeld.DE
  2022-01-13 14:01 ` jakub at gcc dot gnu.org
                   ` (24 subsequent siblings)
  28 siblings, 0 replies; 30+ messages in thread
From: ro at CeBiTec dot Uni-Bielefeld.DE @ 2022-01-13 13:43 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104006

--- Comment #3 from ro at CeBiTec dot Uni-Bielefeld.DE <ro at CeBiTec dot Uni-Bielefeld.DE> ---
> --- Comment #1 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
> Created attachment 52176
>   --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=52176&action=edit
> gcc12-pr104006.patch

The patch lists gcc as toplevel dir instead of libgfortran...

> Sorry for the gfortran.map-sun left-over.  The kinds.inc missing dependency

No worries, that was easily fixed.

> seems to be there since forever, wonder what changed.
> Anyway, this patch ought to fix both.

I've moved the previous libgfortran dirs (32 and 64-bit) aside on both
sparc and x86, the ran make -jN configure-target-libgfortran
all-target-libgfortran.

On x86 (-j48), the build worked just fine, on sparc (-j64) I now get the
same error I had on x86 before (while compiling runtime/bounds.c,
libgfortran.h doesn't find GFC_(REAL|COMPLEX)_[48] definitions),
apparently only in the sparcv9 multilib.  Rerunning the make
all-target-libgfortran succeeds, though.

Really strange.  If kinds.h were missing completely at that point, I'd
expect gcc message to that effect, that's why I suspected the header
being incomplete instead.

^ permalink raw reply	[flat|nested] 30+ messages in thread

* [Bug libfortran/104006] [12 regression] power-ieee128 merge breaks Solaris build
  2022-01-13 12:39 [Bug libfortran/104006] New: [12 regression] power-ieee128 merge breaks Solaris build ro at gcc dot gnu.org
                   ` (3 preceding siblings ...)
  2022-01-13 13:43 ` ro at CeBiTec dot Uni-Bielefeld.DE
@ 2022-01-13 14:01 ` jakub at gcc dot gnu.org
  2022-01-13 14:04 ` jakub at gcc dot gnu.org
                   ` (23 subsequent siblings)
  28 siblings, 0 replies; 30+ messages in thread
From: jakub at gcc dot gnu.org @ 2022-01-13 14:01 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104006

Jakub Jelinek <jakub at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
  Attachment #52176|0                           |1
        is obsolete|                            |

--- Comment #4 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
Created attachment 52177
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=52177&action=edit
gcc12-pr104006.patch

Updated patch.

^ permalink raw reply	[flat|nested] 30+ messages in thread

* [Bug libfortran/104006] [12 regression] power-ieee128 merge breaks Solaris build
  2022-01-13 12:39 [Bug libfortran/104006] New: [12 regression] power-ieee128 merge breaks Solaris build ro at gcc dot gnu.org
                   ` (4 preceding siblings ...)
  2022-01-13 14:01 ` jakub at gcc dot gnu.org
@ 2022-01-13 14:04 ` jakub at gcc dot gnu.org
  2022-01-13 14:28 ` ro at CeBiTec dot Uni-Bielefeld.DE
                   ` (22 subsequent siblings)
  28 siblings, 0 replies; 30+ messages in thread
From: jakub at gcc dot gnu.org @ 2022-01-13 14:04 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104006

--- Comment #5 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
(In reply to ro@CeBiTec.Uni-Bielefeld.DE from comment #3)
> Really strange.  If kinds.h were missing completely at that point, I'd
> expect gcc message to that effect, that's why I suspected the header
> being incomplete instead.

You can hit the case where kinds.h has been created already but nothing has
been stored to it yet, mk-kinds-h.sh script is invoked with > kinds.h so that
is created immediately kinds.h goal starts, but does some compilations first
before it echoes something to stdout.

^ permalink raw reply	[flat|nested] 30+ messages in thread

* [Bug libfortran/104006] [12 regression] power-ieee128 merge breaks Solaris build
  2022-01-13 12:39 [Bug libfortran/104006] New: [12 regression] power-ieee128 merge breaks Solaris build ro at gcc dot gnu.org
                   ` (5 preceding siblings ...)
  2022-01-13 14:04 ` jakub at gcc dot gnu.org
@ 2022-01-13 14:28 ` ro at CeBiTec dot Uni-Bielefeld.DE
  2022-01-13 14:30 ` ro at CeBiTec dot Uni-Bielefeld.DE
                   ` (21 subsequent siblings)
  28 siblings, 0 replies; 30+ messages in thread
From: ro at CeBiTec dot Uni-Bielefeld.DE @ 2022-01-13 14:28 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104006

--- Comment #6 from ro at CeBiTec dot Uni-Bielefeld.DE <ro at CeBiTec dot Uni-Bielefeld.DE> ---
> --- Comment #4 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
> Created attachment 52177
>   --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=52177&action=edit
> gcc12-pr104006.patch
>
> Updated patch.

Thanks.  The previous errors are gone, but now I get

/vol/gcc/src/hg/master/local/libgfortran/intrinsics/selected_real_kind.f90:56:31:

   56 |     if (p2 <= real_infos (i) % precision) found_p = .true.
      |                               1
Error: Symbol ‘real_infos’ at (1) has no IMPLICIT type

and several more on both sparc and x86.

^ permalink raw reply	[flat|nested] 30+ messages in thread

* [Bug libfortran/104006] [12 regression] power-ieee128 merge breaks Solaris build
  2022-01-13 12:39 [Bug libfortran/104006] New: [12 regression] power-ieee128 merge breaks Solaris build ro at gcc dot gnu.org
                   ` (6 preceding siblings ...)
  2022-01-13 14:28 ` ro at CeBiTec dot Uni-Bielefeld.DE
@ 2022-01-13 14:30 ` ro at CeBiTec dot Uni-Bielefeld.DE
  2022-01-13 14:37 ` jakub at gcc dot gnu.org
                   ` (20 subsequent siblings)
  28 siblings, 0 replies; 30+ messages in thread
From: ro at CeBiTec dot Uni-Bielefeld.DE @ 2022-01-13 14:30 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104006

--- Comment #7 from ro at CeBiTec dot Uni-Bielefeld.DE <ro at CeBiTec dot Uni-Bielefeld.DE> ---
> --- Comment #5 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
> (In reply to ro@CeBiTec.Uni-Bielefeld.DE from comment #3)
>> Really strange.  If kinds.h were missing completely at that point, I'd
>> expect gcc message to that effect, that's why I suspected the header
>> being incomplete instead.
>
> You can hit the case where kinds.h has been created already but nothing has
> been stored to it yet, mk-kinds-h.sh script is invoked with > kinds.h so that
> is created immediately kinds.h goal starts, but does some compilations first
> before it echoes something to stdout.

Which suggests kinds.h (and other files generated in a similar way)
should use move-if-change to avoid this.

make kinds.h takes about 1.2s on my sparc box, so there's a considerable
window the file could be incomplete.

^ permalink raw reply	[flat|nested] 30+ messages in thread

* [Bug libfortran/104006] [12 regression] power-ieee128 merge breaks Solaris build
  2022-01-13 12:39 [Bug libfortran/104006] New: [12 regression] power-ieee128 merge breaks Solaris build ro at gcc dot gnu.org
                   ` (7 preceding siblings ...)
  2022-01-13 14:30 ` ro at CeBiTec dot Uni-Bielefeld.DE
@ 2022-01-13 14:37 ` jakub at gcc dot gnu.org
  2022-01-13 14:52 ` jakub at gcc dot gnu.org
                   ` (19 subsequent siblings)
  28 siblings, 0 replies; 30+ messages in thread
From: jakub at gcc dot gnu.org @ 2022-01-13 14:37 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104006

--- Comment #8 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
libgfortran/ieee/ieee_arithmetic.F90:#include "fpu-target.inc"
libgfortran/ieee/ieee_exceptions.F90:#include "fpu-target.inc"
libgfortran/intrinsics/selected_int_kind.f90:  include "selected_int_kind.inc"
libgfortran/intrinsics/selected_real_kind.f90:  include
"selected_real_kind.inc"
libgfortran/runtime/fpu.c:#include "fpu-target.h"

^ permalink raw reply	[flat|nested] 30+ messages in thread

* [Bug libfortran/104006] [12 regression] power-ieee128 merge breaks Solaris build
  2022-01-13 12:39 [Bug libfortran/104006] New: [12 regression] power-ieee128 merge breaks Solaris build ro at gcc dot gnu.org
                   ` (8 preceding siblings ...)
  2022-01-13 14:37 ` jakub at gcc dot gnu.org
@ 2022-01-13 14:52 ` jakub at gcc dot gnu.org
  2022-01-13 15:02 ` ro at CeBiTec dot Uni-Bielefeld.DE
                   ` (18 subsequent siblings)
  28 siblings, 0 replies; 30+ messages in thread
From: jakub at gcc dot gnu.org @ 2022-01-13 14:52 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104006

Jakub Jelinek <jakub at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
  Attachment #52177|0                           |1
        is obsolete|                            |

--- Comment #9 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
Created attachment 52180
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=52180&action=edit
gcc12-pr104006.patch

So yet another version.

^ permalink raw reply	[flat|nested] 30+ messages in thread

* [Bug libfortran/104006] [12 regression] power-ieee128 merge breaks Solaris build
  2022-01-13 12:39 [Bug libfortran/104006] New: [12 regression] power-ieee128 merge breaks Solaris build ro at gcc dot gnu.org
                   ` (9 preceding siblings ...)
  2022-01-13 14:52 ` jakub at gcc dot gnu.org
@ 2022-01-13 15:02 ` ro at CeBiTec dot Uni-Bielefeld.DE
  2022-01-13 15:07 ` jakub at gcc dot gnu.org
                   ` (17 subsequent siblings)
  28 siblings, 0 replies; 30+ messages in thread
From: ro at CeBiTec dot Uni-Bielefeld.DE @ 2022-01-13 15:02 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104006

--- Comment #10 from ro at CeBiTec dot Uni-Bielefeld.DE <ro at CeBiTec dot Uni-Bielefeld.DE> ---
> --- Comment #9 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
> Created attachment 52180
>   --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=52180&action=edit
> gcc12-pr104006.patch
>
> So yet another version.

That one's quite promising: only one error left on both sparc and x86:

/vol/gcc/src/hg/master/local/libgfortran/ieee/ieee_arithmetic.F90:33:7:

   33 |   use IEEE_EXCEPTIONS
      |       1
Fatal Error: Cannot open module file ‘ieee_exceptions.mod’ for reading at (1):
No such file or directory
compilation terminated.
make[1]: *** [Makefile:7643: ieee_arithmetic.lo] Error 1

^ permalink raw reply	[flat|nested] 30+ messages in thread

* [Bug libfortran/104006] [12 regression] power-ieee128 merge breaks Solaris build
  2022-01-13 12:39 [Bug libfortran/104006] New: [12 regression] power-ieee128 merge breaks Solaris build ro at gcc dot gnu.org
                   ` (10 preceding siblings ...)
  2022-01-13 15:02 ` ro at CeBiTec dot Uni-Bielefeld.DE
@ 2022-01-13 15:07 ` jakub at gcc dot gnu.org
  2022-01-13 15:13 ` ro at CeBiTec dot Uni-Bielefeld.DE
                   ` (16 subsequent siblings)
  28 siblings, 0 replies; 30+ messages in thread
From: jakub at gcc dot gnu.org @ 2022-01-13 15:07 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104006

--- Comment #11 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
That is weird.
We have:
ieee_arithmetic.lo: ieee/ieee_arithmetic.F90 ieee_exceptions.lo
dependency and ieee_exceptions.mod is created when compiling
ieee_exceptions.lo.

^ permalink raw reply	[flat|nested] 30+ messages in thread

* [Bug libfortran/104006] [12 regression] power-ieee128 merge breaks Solaris build
  2022-01-13 12:39 [Bug libfortran/104006] New: [12 regression] power-ieee128 merge breaks Solaris build ro at gcc dot gnu.org
                   ` (11 preceding siblings ...)
  2022-01-13 15:07 ` jakub at gcc dot gnu.org
@ 2022-01-13 15:13 ` ro at CeBiTec dot Uni-Bielefeld.DE
  2022-01-13 16:39 ` jakub at gcc dot gnu.org
                   ` (15 subsequent siblings)
  28 siblings, 0 replies; 30+ messages in thread
From: ro at CeBiTec dot Uni-Bielefeld.DE @ 2022-01-13 15:13 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104006

--- Comment #12 from ro at CeBiTec dot Uni-Bielefeld.DE <ro at CeBiTec dot Uni-Bielefeld.DE> ---
> --- Comment #11 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
> That is weird.
> We have:
> ieee_arithmetic.lo: ieee/ieee_arithmetic.F90 ieee_exceptions.lo
> dependency and ieee_exceptions.mod is created when compiling
> ieee_exceptions.lo.

Here's what I see: ieee_exceptions.mod is missing.

$ make -n ieee_arithmetic.lo
/bin/ksh ./libtool  --tag=FC   --mode=compile
/var/gcc/regression/master/11.4-gcc/build/./gcc/gfortran
-B/var/gcc/regression/master/11.4-gcc/build/./gcc/
-B/vol/gcc/i386-pc-solaris2.11/bin/ -B/vol/gcc/i386-pc-solaris2.11/lib/
-isystem /vol/gcc/i386-pc-solaris2.11/include -isystem
/vol/gcc/i386-pc-solaris2.11/sys-include    -DHAVE_CONFIG_H -I.
-I/vol/gcc/src/hg/master/local/libgfortran 
-iquote/vol/gcc/src/hg/master/local/libgfortran/io
-I/vol/gcc/src/hg/master/local/libgfortran/../gcc
-I/vol/gcc/src/hg/master/local/libgfortran/../gcc/config
-I/vol/gcc/src/hg/master/local/libgfortran/../libquadmath -I../.././gcc
-I/vol/gcc/src/hg/master/local/libgfortran/../libgcc -I../libgcc
-I/vol/gcc/src/hg/master/local/libgfortran/../libbacktrace -I../libbacktrace
-I../libbacktrace  -I . -Wall -Werror -fimplicit-none -fno-repack-arrays
-fno-underscoring   -Wno-unused-dummy-argument -Wno-c-binding-type
-ffree-line-length-0 -fallow-leading-underscore -fsignaling-nans
-fbuilding-libgfortran -g -O2 -c -o ieee_arithmetic.lo
/vol/gcc/src/hg/master/local/libgfortran/ieee/ieee_arithmetic.F90
$ make -n ieee_exceptions.mod
:
$ make -n ieee_exceptions.lo
make: Nothing to be done for 'ieee_exceptions.lo'.

ieee_exceptions.lo doesn't exist either.

^ permalink raw reply	[flat|nested] 30+ messages in thread

* [Bug libfortran/104006] [12 regression] power-ieee128 merge breaks Solaris build
  2022-01-13 12:39 [Bug libfortran/104006] New: [12 regression] power-ieee128 merge breaks Solaris build ro at gcc dot gnu.org
                   ` (12 preceding siblings ...)
  2022-01-13 15:13 ` ro at CeBiTec dot Uni-Bielefeld.DE
@ 2022-01-13 16:39 ` jakub at gcc dot gnu.org
  2022-01-13 16:42 ` jakub at gcc dot gnu.org
                   ` (14 subsequent siblings)
  28 siblings, 0 replies; 30+ messages in thread
From: jakub at gcc dot gnu.org @ 2022-01-13 16:39 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104006

Jakub Jelinek <jakub at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
  Attachment #52180|0                           |1
        is obsolete|                            |

--- Comment #13 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
Created attachment 52181
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=52181&action=edit
gcc12-pr104006.patch

Updated patch that should cure it.
But reading the automake manual and the generated Makefile, I actually don't
understand why you are getting any problems (except the gfortran.ver-sun).

All these generated *.inc and *.h files are mentioned in BUILT_SOURCES, and
e.g. the all: rule looks like:
all: $(BUILT_SOURCES) config.h
        $(MAKE) $(AM_MAKEFLAGS) all-am
so make all (and other goes like make check) should make sure all these *.inc
and *.h generated files appear before running recursive make to build
everything.

^ permalink raw reply	[flat|nested] 30+ messages in thread

* [Bug libfortran/104006] [12 regression] power-ieee128 merge breaks Solaris build
  2022-01-13 12:39 [Bug libfortran/104006] New: [12 regression] power-ieee128 merge breaks Solaris build ro at gcc dot gnu.org
                   ` (13 preceding siblings ...)
  2022-01-13 16:39 ` jakub at gcc dot gnu.org
@ 2022-01-13 16:42 ` jakub at gcc dot gnu.org
  2022-01-13 16:50 ` cvs-commit at gcc dot gnu.org
                   ` (13 subsequent siblings)
  28 siblings, 0 replies; 30+ messages in thread
From: jakub at gcc dot gnu.org @ 2022-01-13 16:42 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104006

--- Comment #14 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
Anyway, let me commit the gfortran.ver-sun fix as obvious separately.

^ permalink raw reply	[flat|nested] 30+ messages in thread

* [Bug libfortran/104006] [12 regression] power-ieee128 merge breaks Solaris build
  2022-01-13 12:39 [Bug libfortran/104006] New: [12 regression] power-ieee128 merge breaks Solaris build ro at gcc dot gnu.org
                   ` (14 preceding siblings ...)
  2022-01-13 16:42 ` jakub at gcc dot gnu.org
@ 2022-01-13 16:50 ` cvs-commit at gcc dot gnu.org
  2022-01-13 17:26 ` jakub at gcc dot gnu.org
                   ` (12 subsequent siblings)
  28 siblings, 0 replies; 30+ messages in thread
From: cvs-commit at gcc dot gnu.org @ 2022-01-13 16:50 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104006

--- Comment #15 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The master branch has been updated by Jakub Jelinek <jakub@gcc.gnu.org>:

https://gcc.gnu.org/g:70ba28304b7ff91761db248bc8354eda8e9a4796

commit r12-6555-g70ba28304b7ff91761db248bc8354eda8e9a4796
Author: Jakub Jelinek <jakub@redhat.com>
Date:   Thu Jan 13 17:45:58 2022 +0100

    libgfortran: Fix Solaris version file creation [PR104006]

    I forgot to change the gfortran.map-sun goal to gfortran.ver-sun
    when changing other spots for the preprocessed version file.

    2022-01-13  Jakub Jelinek  <jakub@redhat.com>

            PR libfortran/104006
            * Makefile.am (gfortran.map-sun): Rename target to ...
            (gfortran.ver-sun): ... this.
            * Makefile.in: Regenerated.

^ permalink raw reply	[flat|nested] 30+ messages in thread

* [Bug libfortran/104006] [12 regression] power-ieee128 merge breaks Solaris build
  2022-01-13 12:39 [Bug libfortran/104006] New: [12 regression] power-ieee128 merge breaks Solaris build ro at gcc dot gnu.org
                   ` (15 preceding siblings ...)
  2022-01-13 16:50 ` cvs-commit at gcc dot gnu.org
@ 2022-01-13 17:26 ` jakub at gcc dot gnu.org
  2022-01-13 18:32 ` ro at CeBiTec dot Uni-Bielefeld.DE
                   ` (11 subsequent siblings)
  28 siblings, 0 replies; 30+ messages in thread
From: jakub at gcc dot gnu.org @ 2022-01-13 17:26 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104006

--- Comment #16 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
The version file is now fixed.
Can you perhaps rm -rf the libgfortran build directories and retry, if it
wasn't some weird BUILT_SOURCES problem caused by it failing early because of
the gfortran version file failure?  Have you ever seen such failures before?
As documented in automake, BUILT_SOURCES is only for all, check and install
goals, if one does make fpu.lo it will not work.

^ permalink raw reply	[flat|nested] 30+ messages in thread

* [Bug libfortran/104006] [12 regression] power-ieee128 merge breaks Solaris build
  2022-01-13 12:39 [Bug libfortran/104006] New: [12 regression] power-ieee128 merge breaks Solaris build ro at gcc dot gnu.org
                   ` (16 preceding siblings ...)
  2022-01-13 17:26 ` jakub at gcc dot gnu.org
@ 2022-01-13 18:32 ` ro at CeBiTec dot Uni-Bielefeld.DE
  2022-01-13 18:39 ` jakub at gcc dot gnu.org
                   ` (10 subsequent siblings)
  28 siblings, 0 replies; 30+ messages in thread
From: ro at CeBiTec dot Uni-Bielefeld.DE @ 2022-01-13 18:32 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104006

--- Comment #17 from ro at CeBiTec dot Uni-Bielefeld.DE <ro at CeBiTec dot Uni-Bielefeld.DE> ---
> --- Comment #16 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
> The version file is now fixed.

Thanks.

> Can you perhaps rm -rf the libgfortran build directories and retry, if it
> wasn't some weird BUILT_SOURCES problem caused by it failing early because of
> the gfortran version file failure?  Have you ever seen such failures before?

I believe I've tried that before and now did again with just the version
file fix: no dice.

And no, this is the first time ever that I had such an issue.

> As documented in automake, BUILT_SOURCES is only for all, check and install
> goals, if one does make fpu.lo it will not work.

After the fresh built, among others with

/vol/gcc/src/hg/master/local/libgfortran/ieee/ieee_exceptions.F90:28:2:

   28 | #include "c99_protos.inc"
      |  1~~~~~~~~~~
Fatal Error: kinds.inc: No such file or directory

I compared make --debug=verbose for that file and bounds.lo: one glaring
difference is that for bounds.lo the debug output lists

Considering target file 'bounds.lo'.
 File 'bounds.lo' does not exist.
  Considering target file
'/vol/gcc/src/hg/master/local/libgfortran/runtime/bounds.c'.
   Finished prerequisites of target file
'/vol/gcc/src/hg/master/local/libgfortran/runtime/bounds.c'.
  No need to remake target
'/vol/gcc/src/hg/master/local/libgfortran/runtime/bounds.c'.
  Pruning file '/vol/gcc/src/hg/master/local/libgfortran/runtime/bounds.c'.
  Considering target file
'/vol/gcc/src/hg/master/local/libgfortran/libgfortran.h'.
   Finished prerequisites of target file
'/vol/gcc/src/hg/master/local/libgfortran/libgfortran.h'.
[...]

while ieee_exceptions.lo has only

Considering target file 'ieee_exceptions.lo'.
 File 'ieee_exceptions.lo' does not exist.
  Considering target file 'ieee/ieee_exceptions.F90'.
   Finished prerequisites of target file 'ieee/ieee_exceptions.F90'.
  No need to remake target 'ieee/ieee_exceptions.F90'; using VPATH name
'/vol/gcc/src/hg/master/local/libgfortran/ieee/ieee_exceptions.F90'.
 Finished prerequisites of target file 'ieee_exceptions.lo'.
Must remake target 'ieee_exceptions.lo'.

i.e. it lists no prerequisites beside the source itself.  The bounds.lo
prerequisites are both from the Makefile proper and .deps/bounds.Plo
while .deps/ieee_exceptions.Plo doesn't exist/isn't generated.

The compile command for bounds.lo includes -MF $(DEPDIR)/bounds.Tpo has
nothing of the kind.  No idea why.  Maybe a difference between C and
Fortran sources in Automake?

^ permalink raw reply	[flat|nested] 30+ messages in thread

* [Bug libfortran/104006] [12 regression] power-ieee128 merge breaks Solaris build
  2022-01-13 12:39 [Bug libfortran/104006] New: [12 regression] power-ieee128 merge breaks Solaris build ro at gcc dot gnu.org
                   ` (17 preceding siblings ...)
  2022-01-13 18:32 ` ro at CeBiTec dot Uni-Bielefeld.DE
@ 2022-01-13 18:39 ` jakub at gcc dot gnu.org
  2022-01-13 21:26 ` ro at CeBiTec dot Uni-Bielefeld.DE
                   ` (9 subsequent siblings)
  28 siblings, 0 replies; 30+ messages in thread
From: jakub at gcc dot gnu.org @ 2022-01-13 18:39 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104006

--- Comment #18 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
Some of the patches before #c13 were just buggy and could cause such errors.
Do you see the above on vanilla trunk?
Can you perhaps patch your Makefile like:
 all: $(BUILT_SOURCES) config.h
+        ls -l config.h kinds.h fpu-target.h *.inc
         $(MAKE) $(AM_MAKEFLAGS) all-am
and then
make -j64 all > LOG 2>&1
?

^ permalink raw reply	[flat|nested] 30+ messages in thread

* [Bug libfortran/104006] [12 regression] power-ieee128 merge breaks Solaris build
  2022-01-13 12:39 [Bug libfortran/104006] New: [12 regression] power-ieee128 merge breaks Solaris build ro at gcc dot gnu.org
                   ` (18 preceding siblings ...)
  2022-01-13 18:39 ` jakub at gcc dot gnu.org
@ 2022-01-13 21:26 ` ro at CeBiTec dot Uni-Bielefeld.DE
  2022-01-13 21:27 ` ro at gcc dot gnu.org
                   ` (8 subsequent siblings)
  28 siblings, 0 replies; 30+ messages in thread
From: ro at CeBiTec dot Uni-Bielefeld.DE @ 2022-01-13 21:26 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104006

--- Comment #19 from ro at CeBiTec dot Uni-Bielefeld.DE <ro at CeBiTec dot Uni-Bielefeld.DE> ---
> --- Comment #18 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
> Some of the patches before #c13 were just buggy and could cause such errors.
> Do you see the above on vanilla trunk?

I do.

> Can you perhaps patch your Makefile like:
>  all: $(BUILT_SOURCES) config.h
> +        ls -l config.h kinds.h fpu-target.h *.inc
>          $(MAKE) $(AM_MAKEFLAGS) all-am
> and then
> make -j64 all > LOG 2>&1
> ?

That ls -l and its output don't even occur in the log (both when run
manually and within a regular bootstrap): tons of sources are compiled
before that point, and some of them fail.

^ permalink raw reply	[flat|nested] 30+ messages in thread

* [Bug libfortran/104006] [12 regression] power-ieee128 merge breaks Solaris build
  2022-01-13 12:39 [Bug libfortran/104006] New: [12 regression] power-ieee128 merge breaks Solaris build ro at gcc dot gnu.org
                   ` (19 preceding siblings ...)
  2022-01-13 21:26 ` ro at CeBiTec dot Uni-Bielefeld.DE
@ 2022-01-13 21:27 ` ro at gcc dot gnu.org
  2022-01-13 21:39 ` jakub at gcc dot gnu.org
                   ` (7 subsequent siblings)
  28 siblings, 0 replies; 30+ messages in thread
From: ro at gcc dot gnu.org @ 2022-01-13 21:27 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104006

--- Comment #20 from Rainer Orth <ro at gcc dot gnu.org> ---
Created attachment 52183
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=52183&action=edit
i386-pc-solaris2.11 libgfortran make -j48 output

^ permalink raw reply	[flat|nested] 30+ messages in thread

* [Bug libfortran/104006] [12 regression] power-ieee128 merge breaks Solaris build
  2022-01-13 12:39 [Bug libfortran/104006] New: [12 regression] power-ieee128 merge breaks Solaris build ro at gcc dot gnu.org
                   ` (20 preceding siblings ...)
  2022-01-13 21:27 ` ro at gcc dot gnu.org
@ 2022-01-13 21:39 ` jakub at gcc dot gnu.org
  2022-01-13 21:52 ` ro at CeBiTec dot Uni-Bielefeld.DE
                   ` (6 subsequent siblings)
  28 siblings, 0 replies; 30+ messages in thread
From: jakub at gcc dot gnu.org @ 2022-01-13 21:39 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104006

--- Comment #21 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
That is make -j48 from where?
Toplevel, or the libgfortran build dir, or toplevel make -j48
all-target-libgfortran or make -j48 maybe-all-target-libgfortran?
>From what I can see, toplevel all-target-libgfortran should do make all in the
libgfortran build dir:
ARGET-target-libgfortran=all
maybe-all-target-libgfortran: all-target-libgfortran
all-target-libgfortran: configure-target-libgfortran
        @: $(MAKE); $(unstage)
        @r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(NORMAL_TARGET_EXPORTS)  \
        (cd $(TARGET_SUBDIR)/libgfortran && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_TARGET_FLAGS)   \
                $(TARGET-target-libgfortran))
and all: in the libgfortran Makefile should be:
all: $(BUILT_SOURCES) config.h
        $(MAKE) $(AM_MAKEFLAGS) all-am
(in your case with the ls -l added above it).
Perhaps also above the ls do
        echo all in libgfortran, BUILT_SOURCES is $(BUILT_SOUCES)
What version of GNU make are you using?
I just don't understand how it could start building the object files etc.
which is done from all-am before actually ensuring all those $(BUILT_SOURCES)
like kinds.h exist.

^ permalink raw reply	[flat|nested] 30+ messages in thread

* [Bug libfortran/104006] [12 regression] power-ieee128 merge breaks Solaris build
  2022-01-13 12:39 [Bug libfortran/104006] New: [12 regression] power-ieee128 merge breaks Solaris build ro at gcc dot gnu.org
                   ` (21 preceding siblings ...)
  2022-01-13 21:39 ` jakub at gcc dot gnu.org
@ 2022-01-13 21:52 ` ro at CeBiTec dot Uni-Bielefeld.DE
  2022-01-13 22:39 ` jakub at gcc dot gnu.org
                   ` (5 subsequent siblings)
  28 siblings, 0 replies; 30+ messages in thread
From: ro at CeBiTec dot Uni-Bielefeld.DE @ 2022-01-13 21:52 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104006

--- Comment #22 from ro at CeBiTec dot Uni-Bielefeld.DE <ro at CeBiTec dot Uni-Bielefeld.DE> ---
> --- Comment #21 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
> That is make -j48 from where?
> Toplevel, or the libgfortran build dir, or toplevel make -j48
> all-target-libgfortran or make -j48 maybe-all-target-libgfortran?

Both make -j48 from toplevel (within a regular bootstrap) and make -j48
all from libgfortran build dir.

> From what I can see, toplevel all-target-libgfortran should do make all in the
> libgfortran build dir:
[...]
> and all: in the libgfortran Makefile should be:
> all: $(BUILT_SOURCES) config.h
>         $(MAKE) $(AM_MAKEFLAGS) all-am
> (in your case with the ls -l added above it).

Right.

> Perhaps also above the ls do
>         echo all in libgfortran, BUILT_SOURCES is $(BUILT_SOUCES)

No difference: that output doesn't show up in the log.

> What version of GNU make are you using?

Usually, it's 4.2.92 in an attempt to avoid make SEGVs I sometimes
observed on Solaris 10.  However, I tried the same with 4.2.1: same
result.

> I just don't understand how it could start building the object files etc.
> which is done from all-am before actually ensuring all those $(BUILT_SOURCES)
> like kinds.h exist.

I've attached the log.  The first one it builds (after creating
selected_int_kind.inc, selected_real_kind.inc, kinds.h, c99_protos.h,
fpu-target.h, and ISO_Fortran_binding.h) is bounds.lo.

^ permalink raw reply	[flat|nested] 30+ messages in thread

* [Bug libfortran/104006] [12 regression] power-ieee128 merge breaks Solaris build
  2022-01-13 12:39 [Bug libfortran/104006] New: [12 regression] power-ieee128 merge breaks Solaris build ro at gcc dot gnu.org
                   ` (22 preceding siblings ...)
  2022-01-13 21:52 ` ro at CeBiTec dot Uni-Bielefeld.DE
@ 2022-01-13 22:39 ` jakub at gcc dot gnu.org
  2022-01-13 22:42 ` jakub at gcc dot gnu.org
                   ` (4 subsequent siblings)
  28 siblings, 0 replies; 30+ messages in thread
From: jakub at gcc dot gnu.org @ 2022-01-13 22:39 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104006

--- Comment #23 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
Ah, I finally understand.
gfortran.ver-sun is now (newly) in BUILT_SOURCES through $(version_dep).
And it depends on all the sources being built:
$(libgfortran_la_OBJECTS) $(libgfortran_la_LIBADD)

^ permalink raw reply	[flat|nested] 30+ messages in thread

* [Bug libfortran/104006] [12 regression] power-ieee128 merge breaks Solaris build
  2022-01-13 12:39 [Bug libfortran/104006] New: [12 regression] power-ieee128 merge breaks Solaris build ro at gcc dot gnu.org
                   ` (23 preceding siblings ...)
  2022-01-13 22:39 ` jakub at gcc dot gnu.org
@ 2022-01-13 22:42 ` jakub at gcc dot gnu.org
  2022-01-13 22:52 ` ro at CeBiTec dot Uni-Bielefeld.DE
                   ` (3 subsequent siblings)
  28 siblings, 0 replies; 30+ messages in thread
From: jakub at gcc dot gnu.org @ 2022-01-13 22:42 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104006

--- Comment #24 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
Created attachment 52184
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=52184&action=edit
gcc12-pr104006.patch

Fix.  I've added $(version_dep) to BUILT_SOURCES because I thought it is a
generated file like the others (it is), but missed that in the Solaris case it
depends on all those *.lo files, and BUILT_SOURCES is something that should
be done before all-am.  So, this patch reverts that part of the change and
instead cleans the $(version_dep) files in clean-local, so that they are ever
removed when make clean/distclean.

^ permalink raw reply	[flat|nested] 30+ messages in thread

* [Bug libfortran/104006] [12 regression] power-ieee128 merge breaks Solaris build
  2022-01-13 12:39 [Bug libfortran/104006] New: [12 regression] power-ieee128 merge breaks Solaris build ro at gcc dot gnu.org
                   ` (24 preceding siblings ...)
  2022-01-13 22:42 ` jakub at gcc dot gnu.org
@ 2022-01-13 22:52 ` ro at CeBiTec dot Uni-Bielefeld.DE
  2022-01-14  6:45 ` ro at CeBiTec dot Uni-Bielefeld.DE
                   ` (2 subsequent siblings)
  28 siblings, 0 replies; 30+ messages in thread
From: ro at CeBiTec dot Uni-Bielefeld.DE @ 2022-01-13 22:52 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104006

--- Comment #25 from ro at CeBiTec dot Uni-Bielefeld.DE <ro at CeBiTec dot Uni-Bielefeld.DE> ---
> --- Comment #24 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
> Created attachment 52184
>   --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=52184&action=edit
> gcc12-pr104006.patch
>
> Fix.  I've added $(version_dep) to BUILT_SOURCES because I thought it is a
> generated file like the others (it is), but missed that in the Solaris case it
> depends on all those *.lo files, and BUILT_SOURCES is something that should
> be done before all-am.  So, this patch reverts that part of the change and
> instead cleans the $(version_dep) files in clean-local, so that they are ever
> removed when make clean/distclean.

A quick parallel make configure-target-libgfortran all-target-libfortran
completed without issues.  I've just fired off full bootstraps with that
patch before going to bed.

Thanks a lot!

^ permalink raw reply	[flat|nested] 30+ messages in thread

* [Bug libfortran/104006] [12 regression] power-ieee128 merge breaks Solaris build
  2022-01-13 12:39 [Bug libfortran/104006] New: [12 regression] power-ieee128 merge breaks Solaris build ro at gcc dot gnu.org
                   ` (25 preceding siblings ...)
  2022-01-13 22:52 ` ro at CeBiTec dot Uni-Bielefeld.DE
@ 2022-01-14  6:45 ` ro at CeBiTec dot Uni-Bielefeld.DE
  2022-01-14 11:19 ` cvs-commit at gcc dot gnu.org
  2022-01-15 12:22 ` jakub at gcc dot gnu.org
  28 siblings, 0 replies; 30+ messages in thread
From: ro at CeBiTec dot Uni-Bielefeld.DE @ 2022-01-14  6:45 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104006

--- Comment #26 from ro at CeBiTec dot Uni-Bielefeld.DE <ro at CeBiTec dot Uni-Bielefeld.DE> ---
> A quick parallel make configure-target-libgfortran all-target-libfortran
> completed without issues.  I've just fired off full bootstraps with that
> patch before going to bed.

Those completed successfully, too.

^ permalink raw reply	[flat|nested] 30+ messages in thread

* [Bug libfortran/104006] [12 regression] power-ieee128 merge breaks Solaris build
  2022-01-13 12:39 [Bug libfortran/104006] New: [12 regression] power-ieee128 merge breaks Solaris build ro at gcc dot gnu.org
                   ` (26 preceding siblings ...)
  2022-01-14  6:45 ` ro at CeBiTec dot Uni-Bielefeld.DE
@ 2022-01-14 11:19 ` cvs-commit at gcc dot gnu.org
  2022-01-15 12:22 ` jakub at gcc dot gnu.org
  28 siblings, 0 replies; 30+ messages in thread
From: cvs-commit at gcc dot gnu.org @ 2022-01-14 11:19 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104006

--- Comment #27 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The master branch has been updated by Jakub Jelinek <jakub@gcc.gnu.org>:

https://gcc.gnu.org/g:ac6a1181209b756882f89cdba6128565fad1a56e

commit r12-6580-gac6a1181209b756882f89cdba6128565fad1a56e
Author: Jakub Jelinek <jakub@redhat.com>
Date:   Fri Jan 14 12:11:00 2022 +0100

    libgfortran: Partly revert my r12-6498 change to fix Solaris build
[PR104006]

    In r12-6498 I've added $(version_dep) to BUILT_SOURCES, previously
version_dep
    on Linux used to be a file in $(srcdir), but with my changes it is a
generated
    file in the object directory (preprocessed version of the $(srcdir) file)
    and I thought generated files belong to BUILT_SOURCES so that they are
    cleaned up etc.
    For Linux that is fine, but it broke parallel builds on Solaris.
    BUILT_SOURCES is a special variable for automake where automake ensures
    that for make all, make check and make install all those $(BUILT_SOURCES)
    are generated before actually starting building in parallel the various
    object files.  That way we can avoid hacks like:
    $(patsubst %.F90,%.lo,$(notdir $(filter %.F90,$(prereq_SRC)))): kinds.inc
c99_protos.inc
    $(patsubst %.c,%.lo,$(notdir $(filter %.c,$(prereq_SRC)))): kinds.h
    $(patsubst %.f90,%.lo,selected_real_kind.f90): selected_real_kind.inc
    $(patsubst %.f90,%.lo,selected_int_kind.f90): selected_int_kind.inc
    $(patsubst %.F90,%.lo,ieee_exceptions.F90): fpu-target.inc
    $(patsubst %.F90,%.lo,ieee_arithmetic.F90): fpu-target.inc
ieee_exceptions.lo
    $(patsubst %.c,%.lo,fpu.c): fpu-target.h
    which makes those dependencies explicit but hides it from automake, so that
it
    doesn't throw away its rules for those object files.
    On Solaris, $(version_dep) contains gfortran.ver and gfortran.ver-sun.
    gfortran.ver is like on Linux, it can be in $(BUILT_SOURCES), but
unfortunately
    gfortran.ver-sun depends on all the object files being compiled already,
    so if gfortran.ver-sun appears in $(BUILT_SOURCES), the BUILT_SOURCES
function
    of ensuring the generated files are generated before building object files
    is gone, almost everything is built before all-am is entered and there
    are no explicit dependencies that e.g. *.F90 files depend on
    kinds.inc etc.

    So, this change reverts that mistake and instead adds $(version_dep) to
    what is removed during make clean (clean-local in particular).

    2022-01-14  Jakub Jelinek  <jakub@redhat.com>

            PR libfortran/104006
            * Makefile.am (BUILT_SOURCES): Don't include $(version_dep).
            (clean-local): Remove $(version_dep).
            * Makefile.in: Regenerated.

^ permalink raw reply	[flat|nested] 30+ messages in thread

* [Bug libfortran/104006] [12 regression] power-ieee128 merge breaks Solaris build
  2022-01-13 12:39 [Bug libfortran/104006] New: [12 regression] power-ieee128 merge breaks Solaris build ro at gcc dot gnu.org
                   ` (27 preceding siblings ...)
  2022-01-14 11:19 ` cvs-commit at gcc dot gnu.org
@ 2022-01-15 12:22 ` jakub at gcc dot gnu.org
  28 siblings, 0 replies; 30+ messages in thread
From: jakub at gcc dot gnu.org @ 2022-01-15 12:22 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104006

Jakub Jelinek <jakub at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
         Resolution|---                         |FIXED
             Status|ASSIGNED                    |RESOLVED

--- Comment #28 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
Hopefully everything is fixed now. Sorry for the breakages.

^ permalink raw reply	[flat|nested] 30+ messages in thread

end of thread, other threads:[~2022-01-15 12:22 UTC | newest]

Thread overview: 30+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-01-13 12:39 [Bug libfortran/104006] New: [12 regression] power-ieee128 merge breaks Solaris build ro at gcc dot gnu.org
2022-01-13 12:40 ` [Bug libfortran/104006] " ro at gcc dot gnu.org
2022-01-13 13:17 ` jakub at gcc dot gnu.org
2022-01-13 13:20 ` jakub at gcc dot gnu.org
2022-01-13 13:43 ` ro at CeBiTec dot Uni-Bielefeld.DE
2022-01-13 14:01 ` jakub at gcc dot gnu.org
2022-01-13 14:04 ` jakub at gcc dot gnu.org
2022-01-13 14:28 ` ro at CeBiTec dot Uni-Bielefeld.DE
2022-01-13 14:30 ` ro at CeBiTec dot Uni-Bielefeld.DE
2022-01-13 14:37 ` jakub at gcc dot gnu.org
2022-01-13 14:52 ` jakub at gcc dot gnu.org
2022-01-13 15:02 ` ro at CeBiTec dot Uni-Bielefeld.DE
2022-01-13 15:07 ` jakub at gcc dot gnu.org
2022-01-13 15:13 ` ro at CeBiTec dot Uni-Bielefeld.DE
2022-01-13 16:39 ` jakub at gcc dot gnu.org
2022-01-13 16:42 ` jakub at gcc dot gnu.org
2022-01-13 16:50 ` cvs-commit at gcc dot gnu.org
2022-01-13 17:26 ` jakub at gcc dot gnu.org
2022-01-13 18:32 ` ro at CeBiTec dot Uni-Bielefeld.DE
2022-01-13 18:39 ` jakub at gcc dot gnu.org
2022-01-13 21:26 ` ro at CeBiTec dot Uni-Bielefeld.DE
2022-01-13 21:27 ` ro at gcc dot gnu.org
2022-01-13 21:39 ` jakub at gcc dot gnu.org
2022-01-13 21:52 ` ro at CeBiTec dot Uni-Bielefeld.DE
2022-01-13 22:39 ` jakub at gcc dot gnu.org
2022-01-13 22:42 ` jakub at gcc dot gnu.org
2022-01-13 22:52 ` ro at CeBiTec dot Uni-Bielefeld.DE
2022-01-14  6:45 ` ro at CeBiTec dot Uni-Bielefeld.DE
2022-01-14 11:19 ` cvs-commit at gcc dot gnu.org
2022-01-15 12:22 ` jakub at gcc dot gnu.org

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).