* [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