From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,FREEMAIL_FROM autolearn=unavailable autolearn_force=no version=3.4.4 X-Received: by 10.99.114.3 with SMTP id n3mr13401464pgc.140.1480444346982; Tue, 29 Nov 2016 10:32:26 -0800 (PST) X-Received: by 10.157.11.120 with SMTP id p53mr1264948otd.19.1480444346915; Tue, 29 Nov 2016 10:32:26 -0800 (PST) Path: eternal-september.org!reader01.eternal-september.org!reader02.eternal-september.org!news.eternal-september.org!news.eternal-september.org!feeder.eternal-september.org!news.glorb.com!n6no3032733qtd.0!news-out.google.com!j8ni12143qtc.0!nntp.google.com!n6no3032730qtd.0!postnews.google.com!glegroupsg2000goo.googlegroups.com!not-for-mail Newsgroups: comp.lang.ada Date: Tue, 29 Nov 2016 10:32:26 -0800 (PST) In-Reply-To: <145e7204-aa27-4bb6-9c46-7f3700030a84@googlegroups.com> Complaints-To: groups-abuse@google.com Injection-Info: glegroupsg2000goo.googlegroups.com; posting-host=2003:62:4738:ef00:ec7f:43c6:3248:622e; posting-account=mOyWBQoAAAD7S-NBmMUOr9hRClcL0vqR NNTP-Posting-Host: 2003:62:4738:ef00:ec7f:43c6:3248:622e References: <145e7204-aa27-4bb6-9c46-7f3700030a84@googlegroups.com> User-Agent: G2/1.0 MIME-Version: 1.0 Message-ID: <7730ace9-1961-4844-98f1-6f47d6848e06@googlegroups.com> Subject: Re: Things AVR-Ada needs to sort out - calling Rolf From: rrr.eee.27@gmail.com Injection-Date: Tue, 29 Nov 2016 18:32:26 +0000 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Xref: news.eternal-september.org comp.lang.ada:32514 Date: 2016-11-29T10:32:26-08:00 List-Id: On Monday, November 28, 2016 at 7:39:45 PM UTC+1, Lucretia wrote: > Hi, =20 Hi, > Looking back at AVR stuff again and I still cannot believe Rolf Ebert hac= ks up the GCC build so much still. That depends on the meaning of "so much". I ported my patches for building gcc to gcc-5.3 and last February to gcc-6.= 2. > As of GCC-4.9.4, the ability to build bare metal GNAT builds has been put= back in place, see https://gcc.gnu.org/viewcvs/gcc/trunk/gcc/ada/gcc-inter= face/Makefile.in?r1=3D218003&r2=3D219183&pathrev=3D219183 for the patch. I read about it in the gcc-patches mailing, but cannot find it in your refe= rence. Actually I always wanted to move my build patches to your (or Simon= 's) way. =20 > This then renders 23-gcc-4.7-ada-Makefile.patch and 24-gcc-4.7-ada-gnatto= ols.patch unnecessary and quite possibly no_25-gcc-4.7-ada-gnattools_bug552= 43.patch too.=20 I still use the first two ones (23-gcc..., 25-gcc...). The last one is pref= ixed with a no_ indicating that it wasn't necessary anymore when you picked= it up (my build script only accepts patches starting with numbers and endi= ng in .patch) =20 > The -ffreestanding is part of the C standard for compiling OS kernels whe= re there is no C runtime libs and has nothing to do with Ada, this should b= e removed, it should never have even been there. Therefore, 71-gcc-4.7-ada-= freestanding.patch is irrelevant. Perhaps the name of the patch is misleading. Actually when I first created = it (gcc-3.4?) it removed about 200 bytes in the generated code from the bin= der file. It still makes the generated binder code a few bytes smaller. I c= ould live without it, definitely. > As for 72-gcc-4.7-ada-timebase.patch, I'm not sure about this one. Is the= re really a need for this at all? Why does the time duration need to be cha= nged for AVR? That patch is also an attempt to reduce the code size on the target. Deviat= ing from the Ada standard I can use a time base of 1ms and a time variable = of only 32 bits. A few years ago 64 bit integers didn't work well on AVR. > Given the above, I cannot see the need for 73-gcc-4.7-ada-gnat1_print_pat= h.patch either. I already removed that one in gcc-4.9, 5.3 and 6.2 =20 > The way to build this new compiler is to use --disable-libada in the conf= igure command then: >=20 > make all-gcc > make all-target-libgcc > make -C gcc cross-gnattools ada.all.cross > make install-strip-gcc install-target-libgcc Actually, I have difficulties to make that work.=20 > as can be seen here - https://github.com/Lucretia/free-ada/blob/develop/i= ncludes/bare_metal.inc I looked at your script last February. In the end I sticked to my patches b= ecause I wanted to proceed and did not want to beautify my set of patches. > I think if this were sorted out, it would make building the compiler easi= er and any extra patches could be passed onto the FSF for inclusion into th= e source, with proper copyright assignments in place. You would only then r= equire your custom runtime to be distributed to be built. There aren't any extra patches anymore that need to be included in the upst= ream gcc! Thanks for your hints. I'll see if I can streamline building AVR-Ada in the= future. best regards Rolf