#3027 closed defect (fixed)

RTEMS source builder fails when building gcc documentation with newer versions of gcc

Reported by: Worth Burruss Owned by: Chris Johns
Priority: normal Milestone: 5.1
Component: tool/rsb Version: 5
Severity: normal Keywords: msys2, gcc
Cc: Blocked By:
Blocking:

Description

Originally discovered with MSYS2 on windows. Building the gcc compiler fails for older versions of gcc (ie 4.8.3) when building bfin and m32c architectures. The gcc maintainers recommend the use of MISSING=texinfo switch during configuration. A possible solution is attached.

Attachments (1)

gcc-MakeInfoFix-20170529-1.patch (497 bytes) - added by Worth Burruss on 05/30/17 at 17:26:17.

Download all attachments as: .zip

Change History (14)

Changed on 05/30/17 at 17:26:17 by Worth Burruss

comment:1 Changed on 05/31/17 at 00:52:01 by Worth Burruss

Originally discovered with MSYS2 on windows while building rtems 4.11. Building the gcc compiler fails when trying to build the documentation. This applies when a new version of gcc is used to build older versions of gcc (ie 4.8.3 such as when building bfin and m32c architectures for 4.11). The gcc maintainers recommend the use of MISSING=texinfo switch during configuration. A possible solution is attached.

NOTE: this problem should also exist when trying to build rtems 4.10 compilers and earlier.

comment:2 Changed on 06/13/17 at 00:32:49 by Chris Johns

Is it MISSING=texinfo per the comments or MAKEINFO=missing as in the patch?

Also I am thinking of adding this before the configure command set the environment variable:

%if %{_host_os} == win32
  export MAKEINFO=missing
%endif

comment:3 Changed on 06/13/17 at 05:45:21 by Chris Johns

Milestone: 4.11.2

comment:4 Changed on 06/13/17 at 13:27:39 by Worth Burruss

Milestone: 4.11.2

Sorry for the Confusion. I have been using: MAKEINFO=missing. I can not fathom where I got the other the switch from or if it is even valid.

Limiting the solution to just windows fixes the problem for now, but will become a problem down the road as more OS's move to newer versions of GCC. From my point of view having a test to see if the Host GCC version is > 6.x is the way to do it. but I do not see a way to execute that logic. So for the short term that solution looks good.

comment:5 Changed on 06/14/17 at 00:06:10 by Chris Johns

Thanks for clearing up which to use.

There is a reference on line to where the GCC developers discuss this issue and the solution?

I am sorry but I am not following the relationship with makeinfo and the host's gcc version.

comment:6 Changed on 06/14/17 at 18:25:56 by Worth Burruss

Chris, you are correct it is not GCC version, I should have looked a little further it is makeinfo version. I got my original patch idea from here:
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=60961
with better descriptions here:
https://dev.openwrt.org/ticket/13039
and here:
https://osmocom.org/issues/1916

My MSYS2 is using makeinfo version 6.3
My CentOS was building fine and currently has makeinfo version 5.1

comment:7 in reply to:  6 Changed on 06/15/17 at 03:13:29 by Chris Johns

Replying to Worth Burruss:

Chris, you are correct it is not GCC version, I should have looked a little further it is makeinfo version. I got my original patch idea from here:
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=60961

Thanks. Yes we need to disabled it for all gcc-4 builds.

This says MISSING=texinfo.

with better descriptions here:
https://dev.openwrt.org/ticket/13039

Here says MAKEINFO=missing.

and here:
https://osmocom.org/issues/1916

and this has no solution.

My MSYS2 is using makeinfo version 6.3
My CentOS was building fine and currently has makeinfo version 5.1

Looks like we need this handled on the master branch as well.

comment:8 Changed on 06/29/17 at 04:52:36 by Chris Johns

I have a tried a both options and makeinfo is being run. I cannot make this work.

comment:9 Changed on 06/29/17 at 05:43:27 by Chris Johns

I was wrong MAKEINFO=missing is the solution. It seems like it is a configure thing.

comment:10 Changed on 07/03/17 at 03:38:22 by Chris Johns <chrisj@…>

In 0a916c3/rtems-source-builder:

gcc: Disable makenfo cause newer verisons do not build gcc-4.8 docs.

Newer makeinfo tools cannot build the existing texinfo in gcc so
disable building it. This will not be fixed on the gcc branches.

Updates #3027.

comment:11 Changed on 08/07/17 at 01:51:09 by Chris Johns

Milestone: 4.12.0
Status: newassigned
Version: 4.114.12

Moving this to 4.12 as it has been fixed on 4.11.

comment:12 Changed on 11/09/17 at 06:27:14 by Sebastian Huber

Milestone: 4.12.05.1

Milestone renamed

comment:13 Changed on 04/10/18 at 07:37:33 by Chris Johns

Resolution: fixed
Status: assignedclosed
Note: See TracTickets for help on using tickets.