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=ham autolearn_force=no version=3.4.4 X-Google-Thread: a07f3367d7,8cbb5d23e501c27a X-Google-Attributes: gida07f3367d7,public,usenet X-Google-NewGroupId: yes X-Google-Language: ENGLISH,ASCII-7-bit Path: g2news2.google.com!news2.google.com!news.glorb.com!feeder.erje.net!newsfeed.velia.net!news.tu-darmstadt.de!news.belwue.de!newsfeed.arcor.de!newsspool3.arcor-online.net!news.arcor.de.POSTED!not-for-mail Date: Thu, 05 Nov 2009 16:31:36 +0100 From: Georg Bauhaus User-Agent: Thunderbird 2.0.0.23 (Macintosh/20090812) MIME-Version: 1.0 Newsgroups: comp.lang.ada Subject: Re: Tricks Of The Trade: How To Compile Large Program On Two Very Different Compilers References: <81734679-bcfc-4d52-b5c2-104f0d75b592@i12g2000prg.googlegroups.com> <687d5205-3e93-4b10-8d5d-e31d20e19e08@2g2000prl.googlegroups.com> <4af2a2cd$0$26303$4f793bc4@news.tdc.fi> In-Reply-To: Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Message-ID: <4af2efd8$0$6564$9b4e6d93@newsspool4.arcor-online.net> Organization: Arcor NNTP-Posting-Date: 05 Nov 2009 16:31:37 CET NNTP-Posting-Host: 5468f7f8.newsspool4.arcor-online.net X-Trace: DXC=>bS8?2CZ;AEj7E:bke<5HF4IUK]GbD7bOnc\616M64>JLh>_cHTX3jMTZR>c=ViFYM X-Complaints-To: usenet-abuse@arcor.de Xref: g2news2.google.com comp.lang.ada:9001 Date: 2009-11-05T16:31:37+01:00 List-Id: ChristopherL schrieb: > On Nov 5, 2:02 am, Niklas Holsti > wrote: >> - Are they simply different versions of the same Ada packages, one >> version tailored for system A, the other for system B, but implementing >> the same functionality? Tailoring could be necessary for compiler >> differences, O/S differences, or computer differences. > > They are different versions of the same Ada packages, one version > tailored > for system A, the other for system B, but implementing the same > functionality. > > Query: Is there some way I can combine the two sets of 30 files into > one set of > 30 files. > > Or, is it best to just forget trying to combine these two sets of 30 > files in some way. And, just manually compile the appropriate set of > 30 files on what ever system I am working on. Does anyone have any > ideas. I'm not sure I understand what you mean by combine. Manual work seems unneccessary, and maybe the whole combination approach is not really the best option: Would it be OK to perform the distinction by system at run-time, e.g. during program setup by setting some pointers or by running main loops in instances of suitable generic instances? If not, it was suggested to use directories, and instruct the respective compilers to look for the respective 30 files in these directories. Assuming you have the typical set of spec files, body files, and some files containing full subprograms. A directory setup might look like this: /1000+-common/ /1000+-common/30-system-A /1000+-common/30-system-B Is this something you have in mind: Package Foo specifies functions for both systems A and B, but the bodies are different for systems A and B. I'd put the spec file of package Foo in /1000+-common. Body files go in the ./30-system-{A,B} subdirectories. Then I tell the compiler X for system A to look in /1000+-common and in /1000+-common/30-system-A. I tell the compiler Y for system B to look in /1000+-common and in /1000+-common/30-system-B. The compiler will find specs in the directory of common files, and bodies either in the subdirectory 30-system-A or 30-system-B, as specified. If compiler X should compily for system B, too, I'd say that in the same way, for another run. And similarly for compiler Y for system A.