Ping patch GCC-6
Hi! I would like to ping a couple of unreviewed patches for GCC-6 branch (they are already in trunk): - Backport new Phoenix-RTOS OS name to config.sub https://gcc.gnu.org/ml/gcc-patches/2016-07/msg01441.html - Backport support for Phoenix-RTOS targets in GCC's config for ARM platform. https://gcc.gnu.org/ml/gcc-patches/2016-07/msg01442.html - Backport support for Phoenix-RTOS targets in libgcc's config for ARM platform. https://gcc.gnu.org/ml/gcc-patches/2016-07/msg01440.html Thanks, Kuba Sejdak -- Jakub Sejdak Software Engineer Phoenix Systems (www.phoesys.com) +48 608 050 163
[PING v2] Unreviewed GCC-6 patches
Hi! I would like to ping a couple of unreviewed patches for GCC-6 branch (they are already in trunk): - Backport new Phoenix-RTOS OS name to config.sub https://gcc.gnu.org/ml/gcc-patches/2016-07/msg01441.html - Backport support for Phoenix-RTOS targets in GCC's config for ARM platform. https://gcc.gnu.org/ml/gcc-patches/2016-07/msg01442.html - Backport support for Phoenix-RTOS targets in libgcc's config for ARM platform. https://gcc.gnu.org/ml/gcc-patches/2016-07/msg01440.html Thanks, Kuba Sejdak -- Jakub Sejdak Software Engineer Phoenix Systems (www.phoesys.com) +48 608 050 163
[PING v3] Unreviewed GCC-6 patches
Hi! I would like to ping a couple of unreviewed patches for GCC-6 branch (they are already in trunk): - Backport new Phoenix-RTOS OS name to config.sub https://gcc.gnu.org/ml/gcc-patches/2016-07/msg01441.html - Backport support for Phoenix-RTOS targets in GCC's config for ARM platform. https://gcc.gnu.org/ml/gcc-patches/2016-07/msg01442.html - Backport support for Phoenix-RTOS targets in libgcc's config for ARM platform. https://gcc.gnu.org/ml/gcc-patches/2016-07/msg01440.html Thanks, Kuba Sejdak -- Jakub Sejdak Software Engineer Phoenix Systems (www.phoesys.com) +48 608 050 163
Re: [PING v3] Unreviewed GCC-6 patches
> Ok. > > Thanks, > Richard. Sorry for silly question, but does it mean that I have a green light to commit it to SVN or did you just acknowledge the fact and will take a look at this later? For future: I'm planning to commit it to GCC-5 also later. Do I have to send another patch or maybe it is good enough to commit to both GCC-6 and GCC-5 at the same time? Thanks for quick response, Kuba -- Jakub Sejdak Software Engineer Phoenix Systems (www.phoesys.com) +48 608 050 163
Re: [PATCH] Add port for Phoenix-RTOS on ARM platform.
Hello, > First of all, do you or your employer have a copyright assignment > to the FSF? The above link contains instructions on how to do that. > It is a necessary prerequisite to accepting any non-small change. Sorry for a late response, but it took me some time to fulfill requirements mentioned above. We (Phoenix Systems) now have a copyright assignment to the FSF. > As described in https://gcc.gnu.org/svnwrite.html the contents of this file > list the people with write access permissions as well as the maintainers of > each > gcc component. Maintainers are appointed by the GCC steering committee > (CC'ed one of them who is also an arm port maintainer). > So you should remove this hunk and apply it separately > if the steering committee takes that decision. It was not my intention to have a write access permission, just to let others know, who should they contact in case of troubles. What should I do then, to be appointed by GCC steering committee to be maintainer of our OS port? > The rest of the patch looks sane to me but you'd need to sort out the above > before this can progress. Since part of this patch should be removed, I will split it and send again in separate email. 2016-05-19 10:59 GMT+02:00 Kyrill Tkachov : > Hi Jakub, > > For future reference, as per https://gcc.gnu.org/contribute.html the usual > practice > is to wait for a week or two before pinging a patch... > > > > On 17/05/16 09:42, Kuba Sejdak wrote: >> >> --- >> ChangeLog| 6 ++ >> MAINTAINERS | 1 + >> configure| 6 ++ >> configure.ac | 6 ++ >> gcc/ChangeLog| 6 ++ >> gcc/config.gcc | 11 +++ >> gcc/config/arm/t-phoenix | 29 + >> gcc/config/phoenix.h | 33 + >> libgcc/ChangeLog | 4 >> libgcc/config.host | 7 +++ >> 10 files changed, 109 insertions(+) >> create mode 100644 gcc/config/arm/t-phoenix >> create mode 100644 gcc/config/phoenix.h >> >> diff --git a/ChangeLog b/ChangeLog >> index 8698133..2d25a91 100644 >> --- a/ChangeLog >> +++ b/ChangeLog >> @@ -1,3 +1,9 @@ >> +2016-05-17 Jakub Sejdak >> + >> +* configure.ac: Disable libgcj and libgloss for Phoenix-RTOS targets. >> +* configure: Regenerated. >> + * MAINTAINERS (OS maintainers): Add myself. >> + > > > First of all, do you or your employer have a copyright assignment > to the FSF? The above link contains instructions on how to do that. > It is a necessary prerequisite to accepting any non-small change. > >> 2016-05-16 Jakub Sejdak >> * config.guess: Import version 2016-04-02 (newest). >> diff --git a/MAINTAINERS b/MAINTAINERS >> index c615168..1d22df6 100644 >> --- a/MAINTAINERS >> +++ b/MAINTAINERS >> @@ -134,6 +134,7 @@ hpuxSteve Ellcey >> >> solaris Rainer Orth >> >> netbsdJason Thorpe >> >> netbsdKrister Walfridsson >> >> +Phoenix-RTOS Jakub Sejdak >> sh-linux-gnu Kaz Kojima >> RTEMS Ports Joel Sherrill >> RTEMS Ports Ralf Corsepius > > > As described in https://gcc.gnu.org/svnwrite.html the contents of this file > list the people with write access permissions as well as the maintainers of > each > gcc component. Maintainers are appointed by the GCC steering committee > (CC'ed one of them who is also an arm port maintainer). > So you should remove this hunk and apply it separately > if the steering committee takes that decision. > > The rest of the patch looks sane to me but you'd need to sort out the above > before this can progress. > > Kyrill > > >> diff --git a/configure b/configure >> index ea63784..19451d2 100755 >> --- a/configure >> +++ b/configure >> @@ -3469,6 +3469,9 @@ case "${target}" in >> *-*-netware*) >> noconfigdirs="$noconfigdirs ${libgcj}" >> ;; >> + *-*-phoenix*) >> +noconfigdirs="$noconfigdirs ${libgcj}" >> +;; >> *-*-rtems*) >> noconfigdirs="$noconfigdirs ${libgcj}" >> ;; >> @@ -3725,6 +3728,9 @@ case "${target}" in >> ;; >> *-*-netware*) >> ;; >> + *-*-phoenix*) >> +noconfigdirs="$noconfigdirs target-libgloss" >> +;; >> *-*-
Re: [PATCH] Add port for Phoenix-RTOS on ARM platform.
Actually, if possible, I would skip the "arm" part, because we plan to port Phoenix-RTOS for other platforms. It will be easier to do it once. 2016-06-16 10:52 GMT+02:00 Kyrill Tkachov : > > On 15/06/16 23:23, Jeff Law wrote: >> >> On 06/15/2016 08:21 AM, Jakub Sejdak wrote: >>> >>> Hello, >>> >>>> First of all, do you or your employer have a copyright assignment >>>> to the FSF? The above link contains instructions on how to do that. >>>> It is a necessary prerequisite to accepting any non-small change. >>> >>> >>> Sorry for a late response, but it took me some time to fulfill >>> requirements mentioned above. >>> We (Phoenix Systems) now have a copyright assignment to the FSF. >> >> Which I can confirm was recently recorded by the FSF. >> > > Thanks Jeff, > > Could you please give some guidance with respect to Jakub's request at: > https://gcc.gnu.org/ml/gcc-patches/2016-06/msg01153.html ? > > This is regarding being appointed maintainer for the arm*-*-phoenix* > targets. > > Thanks, > Kyrill > >> Jeff > > -- Jakub Sejdak Software Engineer Phoenix Systems (www.phoesys.com) +48 608 050 163
Re: [PATCH] Add port for Phoenix-RTOS on ARM platform.
> So at least in the immediate term let's get you write privileges so you can > commit approved changes and on the path towards maintaining the Phoenix-RTOS > configurations. Do I have to apply for this permission somewhere? Provided page states only, that it has to be granted by an existing maintainer. 2016-06-16 18:28 GMT+02:00 Jeff Law : > On 06/16/2016 02:59 AM, Jakub Sejdak wrote: >> >> Actually, if possible, I would skip the "arm" part, because we plan to >> port Phoenix-RTOS for other platforms. It will be easier to do it >> once. > > Generally we prefer to see an ongoing commitment to the GCC project along > with regular high quality contributions to appoint maintainers. > > So at least in the immediate term let's get you write privileges so you can > commit approved changes and on the path towards maintaining the Phoenix-RTOS > configurations. > > https://www.gnu.org/software/gcc/svnwrite.html > > jeff > -- Jakub Sejdak Software Engineer Phoenix Systems (www.phoesys.com) +48 608 050 163
Re: [PATCH 1/3] Disable libgcj and libgloss for Phoenix-RTOS targets.
The whole idea of this patch is to disable those things in newlib, but they must synchronize this file with GCC. So if merging this into trunk will be all they need, then I have no need to merge this into release branches. 2016-06-21 22:08 GMT+02:00 Jeff Law : > On 06/15/2016 08:22 AM, Kuba Sejdak wrote: >> >> This patch disables libgcj and libgloss in main configure.ac for new OS >> port - Phoenix-RTOS. >> Those libs are unnecessary to build GCC or newlib for arm-phoenix. >> >> Is it ok for trunk? If possible, If possible, please merge it also to >> GCC-6 and GCC-5 branches. >> >> 2016-06-15 Jakub Sejdak >> >> * configure.ac: Disable libgcj and libgloss for Phoenix-RTOS targets. >> * configure: Regenerated. > > These are fine for the trunk. Please go ahead and commit once your SVN > write access is set up. > > We generally don't do feature enablement in release branches. Jakub, Joseph > or Richi would have go grant an exception for this to be accepted on the > release branches. > > jeff > -- Jakub Sejdak Software Engineer Phoenix Systems (www.phoesys.com) +48 608 050 163
Re: [PATCH 3/3] Add support for arm*-*-phoenix* targets in libgcc.
How about backporting this to gcc-6 and gcc-5? 2016-06-21 22:11 GMT+02:00 Jeff Law : > On 06/15/2016 08:22 AM, Kuba Sejdak wrote: >> >> Is it ok for trunk? If possible, If possible, please merge it also to >> GCC-6 and GCC-5 branches. >> >> 2016-06-15 Jakub Sejdak >> >>* config.host: Add suport for arm*-*-phoenix* targets. > > OK for the trunk. > > jeff > -- Jakub Sejdak Software Engineer Phoenix Systems (www.phoesys.com) +48 608 050 163
Re: [PATCH 2/3] Add support for arm*-*-phoenix* targets.
How about backporting this to gcc-6 and gcc-5? 2016-06-21 22:10 GMT+02:00 Jeff Law : > On 06/15/2016 08:22 AM, Kuba Sejdak wrote: >> >> Is it ok for trunk? If possible, If possible, please merge it also to >> GCC-6 and GCC-5 branches. >> >> 2016-06-15 Jakub Sejdak >> >>* config.gcc: Add support for arm*-*-phoenix* targets. >>* config/arm/t-phoenix: New. >>* config/phoenix.h: New. >> >> --- >> gcc/ChangeLog| 6 ++ >> gcc/config.gcc | 11 +++ >> gcc/config/arm/t-phoenix | 29 + >> gcc/config/phoenix.h | 33 + >> 4 files changed, 79 insertions(+) >> create mode 100644 gcc/config/arm/t-phoenix >> create mode 100644 gcc/config/phoenix.h >> > >> +arm*-*-phoenix*) >> + tm_file="dbxelf.h elfos.h arm/unknown-elf.h arm/elf.h arm/bpabi.h" >> + tm_file="${tm_file} newlib-stdint.h phoenix.h" >> + tm_file="${tm_file} arm/aout.h arm/arm.h" >> + tmake_file="${tmake_file} arm/t-arm arm/t-bpabi arm/t-phoenix" > > Do you really need dbxelf.h? We're trying to get away from stabs, so unless > there's a strong need, avoid dbxelf.h :-) > > OK for the trunk with dbxelf.h removed. > > jeff -- Jakub Sejdak Software Engineer Phoenix Systems (www.phoesys.com) +48 608 050 163
Re: Importing gnulib into the gcc tree
I think, that you missed the patch file or it was removed from your email by server. 2016-06-25 14:06 GMT+02:00 ayush goel : > Hey, > As a first step of my GSOC project > (https://gcc.gnu.org/wiki/replacelibibertywithgnulib) I have imported the > gnulib library inside the gcc tree. I have created gnulib as a top level > directory which contains the necessary scripts to import the modules. It also > contains the necessary Makefile.in and configure.ac files. > I have made the corresponding changes in the Makefile.def and configure.ac > files, adding gnulib both as a build and host library, and subsequently > regenerated the Makefile.in and configure files. > > Initially I have just imported the bcopy module from gnulib which will > eventually replace gcc’s dependency on libiberty’s bcopy. > > > Bootstrapped/regtested on x86_64-linux and x86_64-apple-darwin15.5.0 > > > —— > > M src/Makefile.def > M src/Makefile.in > M src/configure > M src/configure.ac > A src/gnulib > A src/gnulib/Makefile.in > A src/gnulib/aclocal.m4 > A src/gnulib/config.in > A src/gnulib/configure > A src/gnulib/configure.ac > A src/gnulib/import > A src/gnulib/import/Makefile.am > A src/gnulib/import/Makefile.in > A src/gnulib/import/bcopy.c > A src/gnulib/import/dummy.c > A src/gnulib/import/extra > A src/gnulib/import/extra/snippet > A src/gnulib/import/extra/snippet/arg-nonnull.h > A src/gnulib/import/extra/snippet/c++defs.h > A src/gnulib/import/extra/snippet/warn-on-use.h > A src/gnulib/import/m4 > A src/gnulib/import/m4/00gnulib.m4 > A src/gnulib/import/m4/absolute-header.m4 > A src/gnulib/import/m4/gnulib-cache.m4 > A src/gnulib/import/m4/gnulib-common.m4 > A src/gnulib/import/m4/gnulib-comp.m4 > A src/gnulib/import/m4/gnulib-tool.m4 > A src/gnulib/import/m4/include_next.m4 > A src/gnulib/import/m4/off_t.m4 > A src/gnulib/import/m4/ssize_t.m4 > A src/gnulib/import/m4/strings_h.m4 > A src/gnulib/import/m4/sys_types_h.m4 > A src/gnulib/import/m4/warn-on-use.m4 > A src/gnulib/import/strings.in.h > A src/gnulib/import/sys_types.in.h > A src/gnulib/update-gnulib.sh > > > > -- > Thanks, > Ayush Goel > -- Jakub Sejdak Software Engineer Phoenix Systems (www.phoesys.com) +48 608 050 163
__DTOR_LIST__ and __CTOR_END__ undeclared when portting to new ARM target
libgcc/config.host gcc-5.2.0_phoenix/libgcc/config.host --- gcc-5.2.0/libgcc/config.host 2015-06-25 19:55:02.0 +0200 +++ gcc-5.2.0_phoenix/libgcc/config.host 2016-04-05 10:37:14.127783472 +0200 @@ -408,6 +408,10 @@ tmake_file="$tmake_file t-softfp-sfdf t-softfp-excl arm/t-softfp t-softfp" unwind_header=config/arm/unwind-arm.h ;; +arm*-*-phoenix*) + tmake_file="t-hardfp t-softfp arm/t-arm arm/t-elf arm/t-softfp arm/t-phoenix" + extra_parts="crtbegin.o crtend.o crti.o crtn.o" + ;; avr-*-rtems*) tmake_file="$tmake_file avr/t-avr avr/t-rtems t-fpbit" tm_file="$tm_file avr/avr-lib.h" --- And here is compilation error: --- Adding multilib support to Makefile in /home/kuba/Projects/phoenix-rtos/toolchain/arm/gcc-5.2.0/libgcc with_multisubdir=thumb/fpu/interwork /home/kuba/Projects/phoenix-rtos/toolchain/arm/gcc-5.2.0/libgcc/crtstuff.c: In function '__do_global_dtors_aux': /home/kuba/Projects/phoenix-rtos/toolchain/arm/gcc-5.2.0/libgcc/crtstuff.c:404:26: error: '__DTOR_LIST__' undeclared (first use in this function) static func_ptr *p = __DTOR_LIST__ + 1; ^ /home/kuba/Projects/phoenix-rtos/toolchain/arm/gcc-5.2.0/libgcc/crtstuff.c:404:26: note: each undeclared identifier is reported only once for each function it appears in /home/kuba/Projects/phoenix-rtos/toolchain/arm/gcc-5.2.0/libgcc/crtstuff.c: In function '__do_global_ctors_aux': /home/kuba/Projects/phoenix-rtos/toolchain/arm/gcc-5.2.0/libgcc/crtstuff.c:706:12: error: '__CTOR_END__' undeclared (first use in this function) for (p = __CTOR_END__ - 1; *p != (func_ptr) -1; p--) ^ /home/kuba/Projects/phoenix-rtos/toolchain/arm/gcc-5.2.0/libgcc/crtstuff.c:706:12: note: each undeclared identifier is reported only once for each function it appears in Makefile:983: recipe for target 'crtbegin.o' failed make[2]: *** [crtbegin.o] Error 1 make[2]: *** Waiting for unfinished jobs Makefile:986: recipe for target 'crtend.o' failed make[2]: *** [crtend.o] Error 1 /home/kuba/Projects/phoenix-rtos/toolchain/arm/gcc-5.2.0/libgcc/crtstuff.c: In function '__do_global_dtors_aux': /home/kuba/Projects/phoenix-rtos/toolchain/arm/gcc-5.2.0/libgcc/crtstuff.c:404:26: error: '__DTOR_LIST__' undeclared (first use in this function) static func_ptr *p = __DTOR_LIST__ + 1; ^ /home/kuba/Projects/phoenix-rtos/toolchain/arm/gcc-5.2.0/libgcc/crtstuff.c:404:26: note: each undeclared identifier is reported only once for each function it appears in Makefile:983: recipe for target 'crtbegin.o' failed make[4]: *** [crtbegin.o] Error 1 Makefile:1154: recipe for target 'multi-do' failed make[3]: *** [multi-do] Error 1 Makefile:117: recipe for target 'all-multi' failed make[2]: *** [all-multi] Error 2 Makefile:10963: recipe for target 'all-target-libgcc' failed make[1]: *** [all-target-libgcc] Error 2 Makefile:87: recipe for target 'toolchain' failed make: *** [toolchain] Error 2 --- I have noticed, that hacking gcc/config/arm/arm.h like this, does the trick: diff -Nrdu gcc-5.2.0/gcc/config/arm/arm.h gcc-5.2.0_phoenix/gcc/config/arm/arm.h --- gcc-5.2.0/gcc/config/arm/arm.h 2015-02-26 05:03:22.0 +0100 +++ gcc-5.2.0_phoenix/gcc/config/arm/arm.h 2016-04-06 10:01:20.728612662 +0200 @@ -1905,7 +1905,7 @@ #else /* !defined (IN_LIBGCC2) */ /* In libgcc, CTORS_SECTION_ASM_OP must be a compile-time constant, so we cannot use the definition above. */ -# ifdef __ARM_EABI__ +# if 0 /* def __ARM_EABI__ */ /* The .ctors section is not part of the EABI, so we do not define CTORS_SECTION_ASM_OP when in libgcc; that prevents crtstuff from trying to use it. We do define it when doing normal I call configure like this: ./configure --target=$CROSS_TARGET --prefix=$TOOLCHAIN_ROOT --enable-languages=c --disable-libssp --with-gmp=$TOOLCHAIN_ROOT --with-mpfr=$TOOLCHAIN_ROOT --with-mpc=$TOOLCHAIN_ROOT --disable-nls --with-newlib --with-sysroot=${TOOLCHAIN_ROOT}${CROSS_TARGET} --with-arch=armv7-a --with-fpu=neon-vfpv4 --with-mode=thumb --with-abi=aapcs --enable-interwork Can anyone help me? Thanks, Jakub Sejdak
Re: [PATCH 3/3] Add support for arm*-*-phoenix* targets in libgcc.
Ping. If this is OK for both branches (or at least one) would you rather prefer separate patch? 2016-06-23 9:37 GMT+02:00 Jakub Sejdak : > How about backporting this to gcc-6 and gcc-5? > > 2016-06-21 22:11 GMT+02:00 Jeff Law : >> On 06/15/2016 08:22 AM, Kuba Sejdak wrote: >>> >>> Is it ok for trunk? If possible, If possible, please merge it also to >>> GCC-6 and GCC-5 branches. >>> >>> 2016-06-15 Jakub Sejdak >>> >>>* config.host: Add suport for arm*-*-phoenix* targets. >> >> OK for the trunk. >> >> jeff >> > > > > -- > Jakub Sejdak > Software Engineer > Phoenix Systems (www.phoesys.com) > +48 608 050 163 -- Jakub Sejdak Software Engineer Phoenix Systems (www.phoesys.com) +48 608 050 163
Re: [PATCH 2/3] Add support for arm*-*-phoenix* targets.
Ping. If this is OK for both branches (or at least one) would you rather prefer separate patch? 2016-06-23 9:37 GMT+02:00 Jakub Sejdak : > How about backporting this to gcc-6 and gcc-5? > > 2016-06-21 22:10 GMT+02:00 Jeff Law : >> On 06/15/2016 08:22 AM, Kuba Sejdak wrote: >>> >>> Is it ok for trunk? If possible, If possible, please merge it also to >>> GCC-6 and GCC-5 branches. >>> >>> 2016-06-15 Jakub Sejdak >>> >>>* config.gcc: Add support for arm*-*-phoenix* targets. >>>* config/arm/t-phoenix: New. >>>* config/phoenix.h: New. >>> >>> --- >>> gcc/ChangeLog| 6 ++ >>> gcc/config.gcc | 11 +++ >>> gcc/config/arm/t-phoenix | 29 + >>> gcc/config/phoenix.h | 33 + >>> 4 files changed, 79 insertions(+) >>> create mode 100644 gcc/config/arm/t-phoenix >>> create mode 100644 gcc/config/phoenix.h >>> >> >>> +arm*-*-phoenix*) >>> + tm_file="dbxelf.h elfos.h arm/unknown-elf.h arm/elf.h arm/bpabi.h" >>> + tm_file="${tm_file} newlib-stdint.h phoenix.h" >>> + tm_file="${tm_file} arm/aout.h arm/arm.h" >>> + tmake_file="${tmake_file} arm/t-arm arm/t-bpabi arm/t-phoenix" >> >> Do you really need dbxelf.h? We're trying to get away from stabs, so unless >> there's a strong need, avoid dbxelf.h :-) >> >> OK for the trunk with dbxelf.h removed. >> >> jeff > > > > -- > Jakub Sejdak > Software Engineer > Phoenix Systems (www.phoesys.com) > +48 608 050 163 -- Jakub Sejdak Software Engineer Phoenix Systems (www.phoesys.com) +48 608 050 163
[PING][PATCH 1/3][GCC-6] Backport support for Phoenix-RTOS targets in config.sub.
Hi, I'd like to ping this patch to GCC-6 branch. Regards, Kuba Sejdak 2016-07-22 8:27 GMT+02:00 Kuba Sejdak : > This patch is already in trunk. It adds no new features, just new OS target. > I have SVN write access, so only approval is needed. Is it OK for gcc-6 > branch? > > 2016-07-22 Jakub Sejdak > >* config.sub: Add support for Phoenix-RTOS targets. > > --- > ChangeLog | 4 > config.sub | 2 +- > 2 files changed, 5 insertions(+), 1 deletion(-) > > diff --git a/ChangeLog b/ChangeLog > index 4a1334a..68f4a83 100644 > --- a/ChangeLog > +++ b/ChangeLog > @@ -1,3 +1,7 @@ > +2016-07-22 Jakub Sejdak > + > + * config.sub: Add support for Phoenix-RTOS targets. > + > 2016-04-27 Release Manager > > * GCC 6.1.0 released. > diff --git a/config.sub b/config.sub > index da6d1b6..41146e1 100755 > --- a/config.sub > +++ b/config.sub > @@ -1399,7 +1399,7 @@ case $os in > | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \ > | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \ > | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es* \ > - | -onefs* | -tirtos*) > + | -onefs* | -tirtos* | -phoenix*) > # Remember, each alternative MUST END IN *, to match a version number. > ;; > -qnx*) > -- > 2.7.4 > -- Jakub Sejdak Software Engineer Phoenix Systems (www.phoesys.com) +48 608 050 163
[PING][PATCH 2/3][GCC-6] Backport support for arm*-*-phoenix* targets.
Hi, I'd like to ping this patch to GCC-6 branch. Regards, Kuba Sejdak 2016-07-22 8:27 GMT+02:00 Kuba Sejdak : > This patch is already in trunk. It adds no new features, just new arm-phoenix* > OS target to gcc config. > I have SVN write access, so only approval is needed. Is it OK for gcc-6 > branch? > > 2016-07-22 Jakub Sejdak > >* config.gcc: Add support for arm*-*-phoenix* targets. >* config/arm/t-phoenix: New. >* config/phoenix.h: New. > > --- > gcc/ChangeLog| 6 ++ > gcc/config.gcc | 11 +++ > gcc/config/arm/t-phoenix | 29 + > gcc/config/phoenix.h | 33 + > 4 files changed, 79 insertions(+) > create mode 100644 gcc/config/arm/t-phoenix > create mode 100644 gcc/config/phoenix.h > > diff --git a/gcc/ChangeLog b/gcc/ChangeLog > index 262456a..0591a49 100644 > --- a/gcc/ChangeLog > +++ b/gcc/ChangeLog > @@ -1,3 +1,9 @@ > +2016-07-22 Jakub Sejdak > + > + * config.gcc: Add support for arm*-*-phoenix* targets. > + * config/arm/t-phoenix: New. > + * config/phoenix.h: New. > + > 2016-07-21 Jakub Jelinek > > * tree-object-size.c (unknown): Use HOST_WIDE_INT_M1U instead of -1. > diff --git a/gcc/config.gcc b/gcc/config.gcc > index 82cc9a9..cc0a175 100644 > --- a/gcc/config.gcc > +++ b/gcc/config.gcc > @@ -815,6 +815,11 @@ case ${target} in >;; >esac >;; > +*-*-phoenix*) > + gas=yes > + gnu_ld=yes > + default_use_cxa_atexit=yes > + ;; > *-*-rtems*) >case ${enable_threads} in > "" | yes | rtems) thread_file='rtems' ;; > @@ -1097,6 +1102,12 @@ arm*-*-uclinux*eabi*)# ARM ucLinux > # The EABI requires the use of __cxa_atexit. > default_use_cxa_atexit=yes > ;; > +arm*-*-phoenix*) > + tm_file="elfos.h arm/unknown-elf.h arm/elf.h arm/bpabi.h" > + tm_file="${tm_file} newlib-stdint.h phoenix.h" > + tm_file="${tm_file} arm/aout.h arm/arm.h" > + tmake_file="${tmake_file} arm/t-arm arm/t-bpabi arm/t-phoenix" > + ;; > arm*-*-eabi* | arm*-*-symbianelf* | arm*-*-rtems*) > case ${target} in > arm*eb-*-eabi*) > diff --git a/gcc/config/arm/t-phoenix b/gcc/config/arm/t-phoenix > new file mode 100644 > index 000..d881884 > --- /dev/null > +++ b/gcc/config/arm/t-phoenix > @@ -0,0 +1,29 @@ > +# Copyright (C) 2016 Free Software Foundation, Inc. > +# > +# This file is part of GCC. > +# > +# GCC is free software; you can redistribute it and/or modify > +# it under the terms of the GNU General Public License as published by > +# the Free Software Foundation; either version 3, or (at your option) > +# any later version. > +# > +# GCC is distributed in the hope that it will be useful, > +# but WITHOUT ANY WARRANTY; without even the implied warranty of > +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the > +# GNU General Public License for more details. > +# > +# You should have received a copy of the GNU General Public License > +# along with GCC; see the file COPYING3. If not see > +# <http://www.gnu.org/licenses/>. > + > +MULTILIB_OPTIONS = marm/mthumb > +MULTILIB_DIRNAMES= arm thumb > +MULTILIB_EXCEPTIONS = > +MULTILIB_MATCHES = > + > +MULTILIB_OPTIONS += mfloat-abi=hard > +MULTILIB_DIRNAMES+= fpu > +MULTILIB_MATCHES += mfloat-abi?hard=mhard-float > + > +MULTILIB_OPTIONS += mno-thumb-interwork/mthumb-interwork > +MULTILIB_DIRNAMES+= normal interwork > diff --git a/gcc/config/phoenix.h b/gcc/config/phoenix.h > new file mode 100644 > index 000..9ffb958 > --- /dev/null > +++ b/gcc/config/phoenix.h > @@ -0,0 +1,33 @@ > +/* Base configuration file for all Phoenix-RTOS targets. > + Copyright (C) 2016 Free Software Foundation, Inc. > + > +This file is part of GCC. > + > +GCC is free software; you can redistribute it and/or modify > +it under the terms of the GNU General Public License as published by > +the Free Software Foundation; either version 3, or (at your option) > +any later version. > + > +GCC is distributed in the hope that it will be useful, > +but WITHOUT ANY WARRANTY; without even the implied warranty of > +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the > +GNU General Public License for more details. > + > +You should have received a copy of the GNU General Public License > +along with GCC; see the file COPYING3. If not see > +<http://www.gnu.org/licenses/>. */ > + > +#undef TARGET_OS_CPP_BUILTINS > +#define TARGET_OS_CPP_BUILTINS() \ &g
[PING][PATCH 3/3][GCC-6] Backport support for arm*-*-phoenix* targets in libgcc.
Hi, I'd like to ping this patch to GCC-6 branch. Regards, Kuba Sejdak 2016-07-22 8:27 GMT+02:00 Kuba Sejdak : > This patch is already in trunk. It adds no new features, just new arm-phoenix* > OS target to libgcc. > I have SVN write access, so only approval is needed. Is it OK for gcc-6 > branch? > > 2016-07-22 Jakub Sejdak > >* config.host: Add suport for arm*-*-phoenix* targets. > > --- > libgcc/ChangeLog | 4 > libgcc/config.host | 7 +++ > 2 files changed, 11 insertions(+) > > diff --git a/libgcc/ChangeLog b/libgcc/ChangeLog > index 934cddf..fd6e5b3 100644 > --- a/libgcc/ChangeLog > +++ b/libgcc/ChangeLog > @@ -1,3 +1,7 @@ > +2016-07-22 Jakub Sejdak > + > + * config.host: Add suport for arm*-*-phoenix* targets. > + > 2016-07-14 Bill Schmidt > > Backport from mainline > diff --git a/libgcc/config.host b/libgcc/config.host > index 16a45c8..cf5fae2 100644 > --- a/libgcc/config.host > +++ b/libgcc/config.host > @@ -402,6 +402,13 @@ arm*-*-uclinux*) # ARM ucLinux > unwind_header=config/arm/unwind-arm.h > extra_parts="$extra_parts crti.o crtn.o" > ;; > +arm*-*-phoenix*) > + tmake_file="t-hardfp t-softfp arm/t-arm arm/t-elf arm/t-softfp > arm/t-phoenix" > + tmake_file="${tmake_file} arm/t-bpabi" > + tm_file="$tm_file arm/bpabi-lib.h" > + extra_parts="crtbegin.o crtend.o crti.o crtn.o" > + unwind_header=config/arm/unwind-arm.h > + ;; > arm*-*-eabi* | arm*-*-symbianelf* | arm*-*-rtems*) > tmake_file="${tmake_file} arm/t-arm arm/t-elf t-fixedpoint-gnu-prefix" > tm_file="$tm_file arm/bpabi-lib.h" > -- > 2.7.4 > -- Jakub Sejdak Software Engineer Phoenix Systems (www.phoesys.com) +48 608 050 163
Please update config.sub from GNU config
Hello, I'm currently working on port for new OS for both binutils and GCC. My patches depend on config.sub, which has been recently updated for Phoenix OS. Please synchronize, so I could test and send my patches here later on. Thanks, Jakub
[PATCH] Import config.sub and config.guess from upstream.
From: Kuba Sejdak --- ChangeLog| 4 +++ config.guess | 93 config.sub | 8 -- 3 files changed, 59 insertions(+), 46 deletions(-) diff --git a/ChangeLog b/ChangeLog index eac1cc6..e092878 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,7 @@ +2016-05-13 Jakub Sejdak +* config.guess: Import version 2016-04-02 (newest). +* config.sub: Import version 2016-05-10 (newest). + 2016-05-09 Aaron Sawdey * MAINTAINERS (Write After Approval): Add myself. diff --git a/config.guess b/config.guess index dcd5149..0967f2a 100755 --- a/config.guess +++ b/config.guess @@ -2,7 +2,7 @@ # Attempt to guess a canonical system name. # Copyright 1992-2016 Free Software Foundation, Inc. -timestamp='2016-01-01' +timestamp='2016-04-02' # This file is free software; you can redistribute it and/or modify it # under the terms of the GNU General Public License as published by @@ -237,6 +237,10 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'` echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE} exit ;; +*:LibertyBSD:*:*) + UNAME_MACHINE_ARCH=`arch | sed 's/^.*BSD\.//'` + echo ${UNAME_MACHINE_ARCH}-unknown-libertybsd${UNAME_RELEASE} + exit ;; *:ekkoBSD:*:*) echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE} exit ;; @@ -268,42 +272,42 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^ The alpha \(.*\) processor.*$/\1/p' | head -n 1` case "$ALPHA_CPU_TYPE" in "EV4 (21064)") - UNAME_MACHINE="alpha" ;; + UNAME_MACHINE=alpha ;; "EV4.5 (21064)") - UNAME_MACHINE="alpha" ;; + UNAME_MACHINE=alpha ;; "LCA4 (21066/21068)") - UNAME_MACHINE="alpha" ;; + UNAME_MACHINE=alpha ;; "EV5 (21164)") - UNAME_MACHINE="alphaev5" ;; + UNAME_MACHINE=alphaev5 ;; "EV5.6 (21164A)") - UNAME_MACHINE="alphaev56" ;; + UNAME_MACHINE=alphaev56 ;; "EV5.6 (21164PC)") - UNAME_MACHINE="alphapca56" ;; + UNAME_MACHINE=alphapca56 ;; "EV5.7 (21164PC)") - UNAME_MACHINE="alphapca57" ;; + UNAME_MACHINE=alphapca57 ;; "EV6 (21264)") - UNAME_MACHINE="alphaev6" ;; + UNAME_MACHINE=alphaev6 ;; "EV6.7 (21264A)") - UNAME_MACHINE="alphaev67" ;; + UNAME_MACHINE=alphaev67 ;; "EV6.8CB (21264C)") - UNAME_MACHINE="alphaev68" ;; + UNAME_MACHINE=alphaev68 ;; "EV6.8AL (21264B)") - UNAME_MACHINE="alphaev68" ;; + UNAME_MACHINE=alphaev68 ;; "EV6.8CX (21264D)") - UNAME_MACHINE="alphaev68" ;; + UNAME_MACHINE=alphaev68 ;; "EV6.9A (21264/EV69A)") - UNAME_MACHINE="alphaev69" ;; + UNAME_MACHINE=alphaev69 ;; "EV7 (21364)") - UNAME_MACHINE="alphaev7" ;; + UNAME_MACHINE=alphaev7 ;; "EV7.9 (21364A)") - UNAME_MACHINE="alphaev79" ;; + UNAME_MACHINE=alphaev79 ;; esac # A Pn.n version is a patched version. # A Vn.n version is a released version. # A Tn.n version is a released field test version. # A Xn.n version is an unreleased experimental baselevel. # 1.2 uses "1.2" for uname -r. - echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[PVTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'` + echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[PVTX]//' | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz` # Reset EXIT trap before exiting to avoid spurious non-zero exit code. exitcode=$? trap '' 0 @@ -376,16 +380,16 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in exit ;; i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*) eval $set_cc_for_build - SUN_ARCH="i386" + SUN_ARCH=i386 # If there is a compiler, see if it is configured for 64-bit objects. # Note that the Sun cc does not turn __LP64__ into 1 like gcc does.
Re: [PATCH] Import config.sub and config.guess from upstream.
Is it OK for trunk, gcc-4.9, gcc-5 and gcc-6 branches? 2016-05-13 9:52 GMT+02:00 Jakub Sejdak : > From: Kuba Sejdak > > --- > ChangeLog| 4 +++ > config.guess | 93 > > config.sub | 8 -- > 3 files changed, 59 insertions(+), 46 deletions(-) > > diff --git a/ChangeLog b/ChangeLog > index eac1cc6..e092878 100644 > --- a/ChangeLog > +++ b/ChangeLog > @@ -1,3 +1,7 @@ > +2016-05-13 Jakub Sejdak > +* config.guess: Import version 2016-04-02 (newest). > +* config.sub: Import version 2016-05-10 (newest). > + > 2016-05-09 Aaron Sawdey > > * MAINTAINERS (Write After Approval): Add myself. > diff --git a/config.guess b/config.guess > index dcd5149..0967f2a 100755 > --- a/config.guess > +++ b/config.guess > @@ -2,7 +2,7 @@ > # Attempt to guess a canonical system name. > # Copyright 1992-2016 Free Software Foundation, Inc. > > -timestamp='2016-01-01' > +timestamp='2016-04-02' > > # This file is free software; you can redistribute it and/or modify it > # under the terms of the GNU General Public License as published by > @@ -237,6 +237,10 @@ case > "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in > UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'` > echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE} > exit ;; > +*:LibertyBSD:*:*) > + UNAME_MACHINE_ARCH=`arch | sed 's/^.*BSD\.//'` > + echo ${UNAME_MACHINE_ARCH}-unknown-libertybsd${UNAME_RELEASE} > + exit ;; > *:ekkoBSD:*:*) > echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE} > exit ;; > @@ -268,42 +272,42 @@ case > "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in > ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^ The alpha > \(.*\) processor.*$/\1/p' | head -n 1` > case "$ALPHA_CPU_TYPE" in > "EV4 (21064)") > - UNAME_MACHINE="alpha" ;; > + UNAME_MACHINE=alpha ;; > "EV4.5 (21064)") > - UNAME_MACHINE="alpha" ;; > + UNAME_MACHINE=alpha ;; > "LCA4 (21066/21068)") > - UNAME_MACHINE="alpha" ;; > + UNAME_MACHINE=alpha ;; > "EV5 (21164)") > - UNAME_MACHINE="alphaev5" ;; > + UNAME_MACHINE=alphaev5 ;; > "EV5.6 (21164A)") > - UNAME_MACHINE="alphaev56" ;; > + UNAME_MACHINE=alphaev56 ;; > "EV5.6 (21164PC)") > - UNAME_MACHINE="alphapca56" ;; > + UNAME_MACHINE=alphapca56 ;; > "EV5.7 (21164PC)") > - UNAME_MACHINE="alphapca57" ;; > + UNAME_MACHINE=alphapca57 ;; > "EV6 (21264)") > - UNAME_MACHINE="alphaev6" ;; > + UNAME_MACHINE=alphaev6 ;; > "EV6.7 (21264A)") > - UNAME_MACHINE="alphaev67" ;; > + UNAME_MACHINE=alphaev67 ;; > "EV6.8CB (21264C)") > - UNAME_MACHINE="alphaev68" ;; > + UNAME_MACHINE=alphaev68 ;; > "EV6.8AL (21264B)") > - UNAME_MACHINE="alphaev68" ;; > + UNAME_MACHINE=alphaev68 ;; > "EV6.8CX (21264D)") > - UNAME_MACHINE="alphaev68" ;; > + UNAME_MACHINE=alphaev68 ;; > "EV6.9A (21264/EV69A)") > - UNAME_MACHINE="alphaev69" ;; > + UNAME_MACHINE=alphaev69 ;; > "EV7 (21364)") > - UNAME_MACHINE="alphaev7" ;; > + UNAME_MACHINE=alphaev7 ;; > "EV7.9 (21364A)") > - UNAME_MACHINE="alphaev79" ;; > + UNAME_MACHINE=alphaev79 ;; > esac > # A Pn.n version is a patched version. > # A Vn.n version is a released version. > # A Tn.n version is a released field test version. > # A Xn.n version is an unreleased experimental baselevel. > # 1.2 uses "1.2" for uname -r. > - echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e > 's/^[PVTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'` > + echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed
Re: [PATCH] Import config.sub and config.guess from upstream.
OK I understand. So am I right, that in such a case there is no way to introduce new OS targets to branch 4.9 and 5? What about 6 branch and trunk? On the other hand: this is my first patch and I'm not quite familiar with the procedure of applying patches to upstream. Who should upload my patch, when it gets accepted? Thank you, Jakub 2016-05-13 20:03 GMT+02:00 Joseph Myers : > On Fri, 13 May 2016, Jakub Sejdak wrote: > >> Is it OK for trunk, gcc-4.9, gcc-5 and gcc-6 branches? > > It's not appropriate to update these scripts from upstream on release > branches. For example, config.guess changed a while back to output > x86_64-pc-linux-gnu in place of x86_64-unknown-linux-gnu, and clearly we > don't want to make such a change on 4.9 and 5 branches, which have > versions predating that change. > > -- > Joseph S. Myers > jos...@codesourcery.com
Re: [PATCH] Import config.sub and config.guess from upstream.
OK so just one final question to be clear: This patch was created from trunk with config,sub and config.guess copied from GNU config upstream. If you say, that I should just modify bits for my port, then this patch is still bad (since it modifies much more). Then when those scripts get copied 'as they are' from GNU config? Only for newly created branches? 2016-05-13 22:18 GMT+02:00 Mike Stump : > On May 13, 2016, at 11:50 AM, Jakub Sejdak wrote: >> >> OK I understand. So am I right, that in such a case there is no way to >> introduce new OS targets to branch 4.9 and 5? > > No. You just hand edit in the bits you need for your port, and seek approval > for that. > > In general, all new work goes into trunk, first. Once it is there, then you > can back port to the first oldest release branch. Once there, then you can > back port to the next oldest and so on. If it can't make it into a branch, > it can't go onto the next oldest branch. > > So, be be concrete, get 5 in first, then ask for 4.9. Get 6 in first, then > ask for 5. Get trunk in first, then ask for 6. > >> What about 6 branch and trunk? > > 6 would have the same answer as 4.9 and 5. For trunk, import from upstream > is the usual way to pick up that work. > >> On the other hand: this is my first patch and I'm not quite familiar >> with the procedure of applying patches to upstream. Who should upload >> my patch, when it gets accepted? > > Anyone with write access.
Re: [PATCH] Import config.sub and config.guess from upstream.
So please confirm that this is OK for trunk only and apply it. Then I will start working on backporting this for other branches. 2016-05-14 11:29 GMT+02:00 Mike Stump : > On May 14, 2016, at 1:15 AM, Jakub Sejdak wrote: >> Then when those scripts get copied 'as they are' from GNU config? Only >> for newly created branches? > > Only for trunk...
Re: [PATCH] Import config.sub and config.guess from upstream.
Ping. 2016-05-14 13:36 GMT+02:00 Jakub Sejdak : > So please confirm that this is OK for trunk only and apply it. > Then I will start working on backporting this for other branches. > > 2016-05-14 11:29 GMT+02:00 Mike Stump : >> On May 14, 2016, at 1:15 AM, Jakub Sejdak wrote: >>> Then when those scripts get copied 'as they are' from GNU config? Only >>> for newly created branches? >> >> Only for trunk...
Re: [PATCH] Add port for Phoenix-RTOS on ARM platform.
OK for trunk and backports to branch 6 and 5? 2016-05-17 10:42 GMT+02:00 Kuba Sejdak : > --- > ChangeLog| 6 ++ > MAINTAINERS | 1 + > configure| 6 ++ > configure.ac | 6 ++ > gcc/ChangeLog| 6 ++ > gcc/config.gcc | 11 +++ > gcc/config/arm/t-phoenix | 29 + > gcc/config/phoenix.h | 33 + > libgcc/ChangeLog | 4 > libgcc/config.host | 7 +++ > 10 files changed, 109 insertions(+) > create mode 100644 gcc/config/arm/t-phoenix > create mode 100644 gcc/config/phoenix.h > > diff --git a/ChangeLog b/ChangeLog > index 8698133..2d25a91 100644 > --- a/ChangeLog > +++ b/ChangeLog > @@ -1,3 +1,9 @@ > +2016-05-17 Jakub Sejdak > + > +* configure.ac: Disable libgcj and libgloss for Phoenix-RTOS targets. > +* configure: Regenerated. > + * MAINTAINERS (OS maintainers): Add myself. > + > 2016-05-16 Jakub Sejdak > > * config.guess: Import version 2016-04-02 (newest). > diff --git a/MAINTAINERS b/MAINTAINERS > index c615168..1d22df6 100644 > --- a/MAINTAINERS > +++ b/MAINTAINERS > @@ -134,6 +134,7 @@ hpuxSteve Ellcey > > solarisRainer Orth > > netbsd Jason Thorpe > netbsd Krister Walfridsson > > +Phoenix-RTOS Jakub Sejdak > sh-linux-gnu Kaz Kojima > RTEMS PortsJoel Sherrill > RTEMS PortsRalf Corsepius > diff --git a/configure b/configure > index ea63784..19451d2 100755 > --- a/configure > +++ b/configure > @@ -3469,6 +3469,9 @@ case "${target}" in >*-*-netware*) > noconfigdirs="$noconfigdirs ${libgcj}" > ;; > + *-*-phoenix*) > +noconfigdirs="$noconfigdirs ${libgcj}" > +;; >*-*-rtems*) > noconfigdirs="$noconfigdirs ${libgcj}" > ;; > @@ -3725,6 +3728,9 @@ case "${target}" in > ;; >*-*-netware*) > ;; > + *-*-phoenix*) > +noconfigdirs="$noconfigdirs target-libgloss" > +;; >*-*-rtems*) > noconfigdirs="$noconfigdirs target-libgloss" > # this is not caught below because this stanza matches earlier > diff --git a/configure.ac b/configure.ac > index 54558df..d965059 100644 > --- a/configure.ac > +++ b/configure.ac > @@ -805,6 +805,9 @@ case "${target}" in >*-*-netware*) > noconfigdirs="$noconfigdirs ${libgcj}" > ;; > + *-*-phoenix*) > +noconfigdirs="$noconfigdirs ${libgcj}" > +;; >*-*-rtems*) > noconfigdirs="$noconfigdirs ${libgcj}" > ;; > @@ -1061,6 +1064,9 @@ case "${target}" in > ;; >*-*-netware*) > ;; > + *-*-phoenix*) > +noconfigdirs="$noconfigdirs target-libgloss" > +;; >*-*-rtems*) > noconfigdirs="$noconfigdirs target-libgloss" > # this is not caught below because this stanza matches earlier > diff --git a/gcc/ChangeLog b/gcc/ChangeLog > index c854a3e..0b1f96b 100644 > --- a/gcc/ChangeLog > +++ b/gcc/ChangeLog > @@ -1,3 +1,9 @@ > +2016-05-17 Jakub Sejdak > + > + * config.gcc: Add support for arm*-*-phoenix* targets. > + * config/arm/t-phoenix: New. > + * config/phoenix.h: New. > + > 2016-05-16 Wilco Dijkstra > > * doc/invoke.texi (AArch64 Options): Various updates. > diff --git a/gcc/config.gcc b/gcc/config.gcc > index 51af122a..5470fa6 100644 > --- a/gcc/config.gcc > +++ b/gcc/config.gcc > @@ -815,6 +815,11 @@ case ${target} in >;; >esac >;; > +*-*-phoenix*) > + gas=yes > + gnu_ld=yes > + default_use_cxa_atexit=yes > + ;; > *-*-rtems*) >case ${enable_threads} in > "" | yes | rtems) thread_file='rtems' ;; > @@ -1099,6 +1104,12 @@ arm*-*-uclinux*eabi*)# ARM ucLinux > # The EABI requires the use of __cxa_atexit. > default_use_cxa_atexit=yes > ;; > +arm*-*-phoenix*) > + tm_file="dbxelf.h elfos.h arm/unknown-elf.h arm/elf.h arm/bpabi.h" > + tm_file="${tm_file} newlib-stdint.h phoenix.h" > + tm_file="${tm_file} arm/aout.h arm/arm.h" > + tmake_file="${tmake_file} arm/t-arm arm/t-bpabi arm/t-phoenix" > + ;; > arm*-*-eabi* | arm*-*-symbianelf* | arm*-*-rtems*) > case ${target} in > arm*eb-*-eabi*) > diff --git a/
Re: [PATCH] Add port for Phoenix-RTOS on ARM platform.
Ping, 2016-05-18 9:03 GMT+02:00 Jakub Sejdak : > OK for trunk and backports to branch 6 and 5? > > 2016-05-17 10:42 GMT+02:00 Kuba Sejdak : >> --- >> ChangeLog| 6 ++ >> MAINTAINERS | 1 + >> configure| 6 ++ >> configure.ac | 6 ++ >> gcc/ChangeLog| 6 ++ >> gcc/config.gcc | 11 +++ >> gcc/config/arm/t-phoenix | 29 + >> gcc/config/phoenix.h | 33 + >> libgcc/ChangeLog | 4 >> libgcc/config.host | 7 +++ >> 10 files changed, 109 insertions(+) >> create mode 100644 gcc/config/arm/t-phoenix >> create mode 100644 gcc/config/phoenix.h >> >> diff --git a/ChangeLog b/ChangeLog >> index 8698133..2d25a91 100644 >> --- a/ChangeLog >> +++ b/ChangeLog >> @@ -1,3 +1,9 @@ >> +2016-05-17 Jakub Sejdak >> + >> +* configure.ac: Disable libgcj and libgloss for Phoenix-RTOS targets. >> +* configure: Regenerated. >> + * MAINTAINERS (OS maintainers): Add myself. >> + >> 2016-05-16 Jakub Sejdak >> >> * config.guess: Import version 2016-04-02 (newest). >> diff --git a/MAINTAINERS b/MAINTAINERS >> index c615168..1d22df6 100644 >> --- a/MAINTAINERS >> +++ b/MAINTAINERS >> @@ -134,6 +134,7 @@ hpuxSteve Ellcey >> >> solarisRainer Orth >> >> netbsd Jason Thorpe >> netbsd Krister Walfridsson >> >> +Phoenix-RTOS Jakub Sejdak >> sh-linux-gnu Kaz Kojima >> RTEMS PortsJoel Sherrill >> RTEMS PortsRalf Corsepius >> diff --git a/configure b/configure >> index ea63784..19451d2 100755 >> --- a/configure >> +++ b/configure >> @@ -3469,6 +3469,9 @@ case "${target}" in >>*-*-netware*) >> noconfigdirs="$noconfigdirs ${libgcj}" >> ;; >> + *-*-phoenix*) >> +noconfigdirs="$noconfigdirs ${libgcj}" >> +;; >>*-*-rtems*) >> noconfigdirs="$noconfigdirs ${libgcj}" >> ;; >> @@ -3725,6 +3728,9 @@ case "${target}" in >> ;; >>*-*-netware*) >> ;; >> + *-*-phoenix*) >> +noconfigdirs="$noconfigdirs target-libgloss" >> +;; >>*-*-rtems*) >> noconfigdirs="$noconfigdirs target-libgloss" >> # this is not caught below because this stanza matches earlier >> diff --git a/configure.ac b/configure.ac >> index 54558df..d965059 100644 >> --- a/configure.ac >> +++ b/configure.ac >> @@ -805,6 +805,9 @@ case "${target}" in >>*-*-netware*) >> noconfigdirs="$noconfigdirs ${libgcj}" >> ;; >> + *-*-phoenix*) >> +noconfigdirs="$noconfigdirs ${libgcj}" >> +;; >>*-*-rtems*) >> noconfigdirs="$noconfigdirs ${libgcj}" >> ;; >> @@ -1061,6 +1064,9 @@ case "${target}" in >> ;; >>*-*-netware*) >> ;; >> + *-*-phoenix*) >> +noconfigdirs="$noconfigdirs target-libgloss" >> +;; >>*-*-rtems*) >> noconfigdirs="$noconfigdirs target-libgloss" >> # this is not caught below because this stanza matches earlier >> diff --git a/gcc/ChangeLog b/gcc/ChangeLog >> index c854a3e..0b1f96b 100644 >> --- a/gcc/ChangeLog >> +++ b/gcc/ChangeLog >> @@ -1,3 +1,9 @@ >> +2016-05-17 Jakub Sejdak >> + >> + * config.gcc: Add support for arm*-*-phoenix* targets. >> + * config/arm/t-phoenix: New. >> + * config/phoenix.h: New. >> + >> 2016-05-16 Wilco Dijkstra >> >> * doc/invoke.texi (AArch64 Options): Various updates. >> diff --git a/gcc/config.gcc b/gcc/config.gcc >> index 51af122a..5470fa6 100644 >> --- a/gcc/config.gcc >> +++ b/gcc/config.gcc >> @@ -815,6 +815,11 @@ case ${target} in >>;; >>esac >>;; >> +*-*-phoenix*) >> + gas=yes >> + gnu_ld=yes >> + default_use_cxa_atexit=yes >> + ;; >> *-*-rtems*) >>case ${enable_threads} in >> "" | yes | rtems) thread_file='rtems' ;; >> @@ -1099,6 +1104,12 @@ arm*-*-uclinux*eabi*)# ARM ucLinux >> # The EABI requires th