Opened on 05/10/17 at 15:25:47
Last modified on 02/23/18 at 02:34:40
#3019 assigned defect
Update RSB to use gcc-4.9.4 for rtems 4.11
Reported by: | Jan Sommer | Owned by: | Chris Johns |
---|---|---|---|
Priority: | normal | Milestone: | Indefinite |
Component: | tool/gcc | Version: | 4.11 |
Severity: | normal | Keywords: | |
Cc: | Blocked By: | ||
Blocking: |
Description
To have a working Ada compiler on rtems several patches are needed which are part of the gcc-4.9.4 release.
Change History (11)
comment:1 Changed on 05/28/17 at 22:00:32 by Chris Johns
Owner: | set to Chris Johns |
---|---|
Status: | new → assigned |
comment:3 Changed on 08/22/17 at 03:01:41 by Chris Johns
ARM has this error so I am wondering what needs to change?
libtool: compile: /opt/work/chris/rtems/rsb/rtems-source-builder.git/rtems/build/arm-rtems4.11-gcc-4.9.4-newlib-2.2.0.20150423-x86_64-freebsd11.1-1/build/./gcc/xgcc -B/opt/work/chris/rtems/rsb/rtems-source-builder.git/rtems/build/arm-rtems4.11-gcc-4.9.4-newlib-2.2.0.20150423-x86_64-freebsd11.1-1/build/./gcc/ -nostdinc -B/opt/work/chris/rtems/rsb/rtems-source-builder.git/rtems/build/arm-rtems4.11-gcc-4.9.4-newlib-2.2.0.20150423-x86_64-freebsd11.1-1/build/arm-rtems4.11/newlib/ -isystem /opt/work/chris/rtems/rsb/rtems-source-builder.git/rtems/build/arm-rtems4.11-gcc-4.9.4-newlib-2.2.0.20150423-x86_64-freebsd11.1-1/build/arm-rtems4.11/newlib/targ-include -isystem /opt/work/chris/rtems/rsb/rtems-source-builder.git/rtems/build/arm-rtems4.11-gcc-4.9.4-newlib-2.2.0.20150423-x86_64-freebsd11.1-1/gcc-4.9.4/newlib/libc/include -B/opt/work/rtems/4.11/arm-rtems4.11/bin/ -B/opt/work/rtems/4.11/arm-rtems4.11/lib/ -isystem /opt/work/rtems/4.11/arm-rtems4.11/include -isystem /opt/work/rtems/4.11/arm-rtems4.11/sys-include -DHAVE_CONFIG_H -I../../../gcc-4.9.4/libatomic/config/rtems -I../../../gcc-4.9.4/libatomic -I. -Wall -Werror -g -O2 -MT fand_1_.lo -MD -MP -MF .deps/fand_1_.lo.Ppo -DN=1 -c ../../../gcc-4.9.4/libatomic/fand_n.c -o fand_1_.o In file included from ../../../gcc-4.9.4/libatomic/libatomic_i.h:230:0, from ../../../gcc-4.9.4/libatomic/gstore.c:25: ../../../gcc-4.9.4/libatomic/config/rtems/host-config.h:27:32: fatal error: machine/_libatomic.h: No such file or directory #include <machine/_libatomic.h> ^ compilation terminated. In file included from ../../../gcc-4.9.4/libatomic/libatomic_i.h:230:0, from ../../../gcc-4.9.4/libatomic/gcas.c:25: ../../../gcc-4.9.4/libatomic/config/rtems/host-config.h:27:32: fatal error: machine/_libatomic.h: No such file or directory #include <machine/_libatomic.h> ^ compilation terminated. In file included from ../../../gcc-4.9.4/libatomic/libatomic_i.h:230:0, from ../../../gcc-4.9.4/libatomic/gload.c:25: ../../../gcc-4.9.4/libatomic/config/rtems/host-config.h:27:32: fatal error: machine/_libatomic.h: No such file or directory #include <machine/_libatomic.h> ^ compilation terminated. In file included from ../../../gcc-4.9.4/libatomic/libatomic_i.h:230:0, from ../../../gcc-4.9.4/libatomic/glfree.c:25: ../../../gcc-4.9.4/libatomic/config/rtems/host-config.h:27:32: fatal error: machine/_libatomic.h: No such file or directory #include <machine/_libatomic.h> ^ compilation terminated. gmake[4]: *** [Makefile:454: gstore.lo] Error 1 In file included from ../../../gcc-4.9.4/libatomic/libatomic_i.h:230:0, from ../../../gcc-4.9.4/libatomic/gexch.c:25: ../../../gcc-4.9.4/libatomic/config/rtems/host-config.h:27:32: fatal error: machine/_libatomic.h: No such file or directory #include <machine/_libatomic.h> ^ gmake[4]: *** Waiting for unfinished jobs.... compilation terminated. In file included from ../../../gcc-4.9.4/libatomic/libatomic_i.h:230:0, from ../../../gcc-4.9.4/libatomic/fenv.c:24: ../../../gcc-4.9.4/libatomic/config/rtems/host-config.h:27:32: fatal error: machine/_libatomic.h: No such file or directory #include <machine/_libatomic.h> ^ compilation terminated. In file included from ../../../gcc-4.9.4/libatomic/libatomic_i.h:230:0, from ../../../gcc-4.9.4/libatomic/config/rtems/lock.c:25: ../../../gcc-4.9.4/libatomic/config/rtems/host-config.h:27:32: fatal error: machine/_libatomic.h: No such file or directory #include <machine/_libatomic.h> ^ compilation terminated. gmake[4]: *** [Makefile:454: gcas.lo] Error 1
comment:4 Changed on 08/23/17 at 01:36:11 by Chris Johns
On gcc-4.9.3 the configure log is:
+ ../gcc-4.9.3/configure '--prefix=/opt/work/rtems/4.11' '--bindir=/opt/work/rtems/4.11/bin' '--exec_prefix=/opt/work/rtems/4.11' '--includedir=/opt/work/rtems/4.11/include' '--libdir=/opt/work/rtems/4.11/lib' '--libexecdir=/opt/work/rtems/4.11/libexec' '--mandir=/opt/work/rtems/4.11/share/man' '--infodir=/opt/work/rtems/4.11/share/info' '--datadir=/opt/work/rtems/4.11/share' '--build=x86_64-freebsd1 1.1' '--host=x86_64-freebsd11.1' '--target=arm-rtems4.11' --disable-libstdcxx-pch --with-gnu-as --with-gnu-ld --verbose --with-newlib --with-system-zlib --disable-nls --without-included-gettext --disable-win32-registry --enable-version-specific-runtime-libs --disable-lto --enable-newlib-io-c99-formats --enable-newlib-iconv '--enable-newlib-iconv-encodings=big5,cp775,cp850,cp852,cp855,cp866,euc_jp,euc _kr,euc_tw,iso_8859_1,iso_8859_10,iso_8859_11,iso_8859_13,iso_8859_14,iso_8859_15,iso_8859_2,iso_8859_3,iso_8859_4,iso_8859_5,iso_8859_6,iso_8859_7,iso_8859_8,iso_8859_9,iso_ir_111,koi8_r,koi8_ru,koi8_u,koi8_uni,ucs_2,ucs_2_internal,ucs_2be,ucs_2le,ucs_4,ucs_4_internal,ucs_4be,ucs_4le,us_ascii,utf_16,utf_16be,utf_16le,utf_8,win_1250,win_1251,win_1252,win_1253,win_1254,win_1255,win_1256,win_1257,win_1 258' --enable-threads --disable-plugin --enable-obsolete --enable-libgomp '--enable-languages=c,c++' checking build system type... x86_64-pc-freebsd11.1 checking host system type... x86_64-pc-freebsd11.1 checking target system type... arm-unknown-rtems4.11 checking for a BSD-compatible install... /usr/bin/install -c checking whether ln works... yes checking whether ln -s works... yes checking for a sed that does not truncate output... /usr/bin/sed checking for gawk... no checking for mawk... no checking for nawk... nawk checking for libatomic support... no
and on:
+ ../gcc-4.9.4/configure '--prefix=/opt/work/rtems/4.11' '--bindir=/opt/work/rtems/4.11/bin' '--exec_prefix=/opt/work/rtems/4.11' '--includedir=/opt/work/rtems/4.11/include' '--libdir=/opt/work/rtems/4.11/lib' '--libexecdir=/opt/work/rtems/4.11/libexec' '--mandir=/opt/work/rtems/4.11/share/man' '--infodir=/opt/work/rtems/4.11/share/info' '--datadir=/opt/work/rtems/4.11/share' '--build=x86_64-freebsd1 1.1' '--host=x86_64-freebsd11.1' '--target=arm-rtems4.11' --disable-libstdcxx-pch --with-gnu-as --with-gnu-ld --verbose --with-newlib --with-system-zlib --disable-nls --without-included-gettext --disable-win32-registry --enable-version-specific-runtime-libs --disable-lto --enable-newlib-io-c99-formats --enable-newlib-iconv '--enable-newlib-iconv-encodings=big5,cp775,cp850,cp852,cp855,cp866,euc_jp,euc _kr,euc_tw,iso_8859_1,iso_8859_10,iso_8859_11,iso_8859_13,iso_8859_14,iso_8859_15,iso_8859_2,iso_8859_3,iso_8859_4,iso_8859_5,iso_8859_6,iso_8859_7,iso_8859_8,iso_8859_9,iso_ir_111,koi8_r,koi8_ru,koi8_u,koi8_uni,ucs_2,ucs_2_internal,ucs_2be,ucs_2le,ucs_4,ucs_4_internal,ucs_4be,ucs_4le,us_ascii,utf_16,utf_16be,utf_16le,utf_8,win_1250,win_1251,win_1252,win_1253,win_1254,win_1255,win_1256,win_1257,win_1 258' --enable-threads --disable-plugin --enable-obsolete --enable-libgomp '--enable-languages=c,c++' checking build system type... x86_64-pc-freebsd11.1 checking host system type... x86_64-pc-freebsd11.1 checking target system type... arm-unknown-rtems4.11 checking for a BSD-compatible install... /usr/bin/install -c checking whether ln works... yes checking whether ln -s works... yes checking for a sed that does not truncate output... /usr/local/bin/gsed checking for gawk... no checking for mawk... no checking for nawk... nawk checking for libatomic support... yes
Why would GCC's functionality change on a dot release on a release branch to this degree?
comment:5 Changed on 08/23/17 at 01:57:55 by Chris Johns
We need to revert this patch in the RSB for us to use 4.9.4 on the 4.11 branch:
https://github.com/gcc-mirror/gcc/commit/624631dc0d52021122e9491a186ec4f0eed1ee6c
comment:6 follow-up: 7 Changed on 08/23/17 at 04:59:15 by Sebastian Huber
Alternatively, we can back port the libatomic support to RTEMS 4.11.3. See #2695.
comment:7 Changed on 08/23/17 at 05:06:59 by Chris Johns
Replying to Sebastian Huber:
Alternatively, we can back port the libatomic support to RTEMS 4.11.3. See #2695.
I do not have the time set aside to do this. Are you able to back port the changes?
You are happy the change is fine for a working release, it is a dot point release?
Chris
comment:8 Changed on 08/23/17 at 05:11:06 by Sebastian Huber
My focus is currently RTEMS 4.12. Maybe Jan Sommer can do this.
comment:9 Changed on 08/23/17 at 05:27:53 by Sebastian Huber
Milestone: | 4.11.3 → 4.11.4 |
---|
comment:11 Changed on 02/23/18 at 02:34:40 by Chris Johns
Component: | unspecified → tool/gcc |
---|---|
Milestone: | 4.11.4 → Indefinite |
Needs funding to resolve this ticket.
This will be the 4.11.3 release which will follow the 4.11.2 release.