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 autolearn=unavailable autolearn_force=no version=3.4.4 Path: eternal-september.org!reader01.eternal-september.org!reader02.eternal-september.org!news.eternal-september.org!mx02.eternal-september.org!feeder.eternal-september.org!aioe.org!.POSTED!not-for-mail From: Luke A. Guest Newsgroups: comp.lang.ada Subject: Re: Ada and C++ in the same binary, was: Re: Current status of Ada development for an Android target ? Date: Sun, 19 Jun 2016 19:40:44 +0100 Organization: Aioe.org NNTP Server Message-ID: <1798364738.488053639.060517.laguest-archeia.com@nntp.aioe.org> References: <623218455.487799273.877639.laguest-archeia.com@nntp.aioe.org> <7cc0e66f-2a45-4cca-b670-0c3859f4b004@googlegroups.com> <421848116.488042939.962509.laguest-archeia.com@nntp.aioe.org> NNTP-Posting-Host: sa8AiQCBDKs7tRLBVKdeIg.user.gioia.aioe.org Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Complaints-To: abuse@aioe.org User-Agent: NewsTap/5.1.8 (iPhone/iPod Touch) X-Notice: Filtered by postfilter v. 0.8.2 Cancel-Lock: sha1:I6lIxHbWr231wUXMHR/CBIR0fJU= Xref: news.eternal-september.org comp.lang.ada:30816 Date: 2016-06-19T19:40:44+01:00 List-Id: Simon Clubley wrote: >> In this specific case it would help to know which specific targets you >> need. >> > > I suppose in some ways that's at the core of the problem; I don't fully > know and I don't know what's going to be along in a couple of years > (both architecture and operating system wise) that I might want to use You can only really target what's here for here, kind of 😏 > some of this code with. My new project is initially Linux desktop based As in GUI? Another are Ada lacks. > but some of the lower level stuff is probably going to find it's way > into some embedded and portable applications. > > Right now on my desk, I've got stuff with MIPS, AVR and ARM cores (both Anything with Linux support will be one's that'll be the easiest to get going. > Cortex M0/M4 class and A8 class as well as traditional ARM cores). I've > got stuff that's running a mixture of bare metal code, RTEMS and a bit Also bare metal isn't hard compiler wise, but you'll need to decide what runtime you want and you'll need to port the bits you need. > of Linux. (Because of various reasons, including the historical embedded > compiler situation, most of the above is running C code; Ada is more of > a desktop environment language for me at the moment). I've also got > Android devices that I am wanting to get more into as well. I would like to the portability of Ada with SDLAda and my Vulkan bindings across oses and devices, iOS will be the hardest -can't build a cross compiler, binutils wont build ld for some reason picking a Linux ld! > > The requirement to port parts of my new project to unknown future > targets is what originally drove me (reluctantly) initially down the > pure C path before I abandoned that idea as not viable. The next logical > step up is C++ (because it's probably going to be available on most of > the new targets C is) but I do prefer Ada. Yeah I get that. But as long as the compiler supports CPU X then adding gnat is trivialish. One problem is organisations like Leonardo who keep their own tree and apply tons of patches but don't pass these back to FSF so knowing what they've added is unknown and they don't tend to keep the compilers other than the trendy set working there means it's nigh on impossible to get gnat working. > > However, having said all that, the immediate new target of interest > is Android which I've got a couple of future ideas for. One concern > however is with the potential closing of Android by moving away from They've closed android source? Is this the new N stuff? > the AOSP (and potential internals changes) along with, as you pointed > out, the move to LLVM. As such I do wonder if gcc is going to be left > out in the cold on new Android versions. Like I mentioned, they've added s bunch of patches and I've only found a few. The diff between their 4.9 and FSF 4.9.2 is huge. Not knowing what they've applied to the code gen stuff is the hardest to work out, as in, I'd it right or is FSF right? Building a new compiler but tartar getting gnat in the meantime has been something I've been thinking about for a long time now. > > BTW, thanks for asking that question. :-) Writing the above in a form > suitable for someone else to read has helped sort out some ideas in > my head. :-) No probs