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: 103376,6426898aedaa5880 X-Google-Attributes: gid103376,public,usenet X-Google-Language: ENGLISH,ASCII Path: g2news2.google.com!news2.google.com!news.glorb.com!newscon02.news.prodigy.net!prodigy.net!uns-out.usenetserver.com!news.usenetserver.com!pc02.usenetserver.com!news.flashnewsgroups.com-b7.4zTQh5tI3A!not-for-mail Newsgroups: comp.lang.ada Subject: Re: Pragma for conditional compilation? (Ada 2005 vs. 95) References: <1190879769.361848.188220@22g2000hsm.googlegroups.com> <1190929570.915553.284000@19g2000hsx.googlegroups.com> <4p1jdf.ssa.ln@hunter.axlog.fr> <1190993095.488093.244130@r29g2000hsg.googlegroups.com> <1v8jdf.rc4.ln@hunter.axlog.fr> From: Stephen Leake Date: Sat, 29 Sep 2007 06:18:40 -0400 Message-ID: User-Agent: Gnus/5.1006 (Gnus v5.10.6) Emacs/22.1 (windows-nt) Cancel-Lock: sha1:JxmX3gRH7va9Df/LGp2aCMlX6tQ= MIME-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit X-Complaints-To: abuse@flashnewsgroups.com Organization: FlashNewsgroups.com X-Trace: c83f746fe267fe05e48ed15718 Xref: g2news2.google.com comp.lang.ada:2215 Date: 2007-09-29T06:18:40-04:00 List-Id: Jean-Pierre Rosen writes: > Ludovic Brenta a �crit : >> Jean-Pierre Rosen writes: >>> Library package renaming is a way to achieve the same effect without >>> resorting to CM. >> But what if you want to maintain two versions of the software in >> parallel, like the OP does? You'll want two versions of the renaming. >> I don't see how you'd do that without some sort of configuration >> management system. OK, maybe I'm biased: I haven't worked without a >> configuration management system since 1999 :) >> > If you have something like: > > with OS_Services_Linux; > package OS_Services renames OS_Services_Linux; > > You certainly need to edit the source to move to -say- a Windows > version, but I claim that it is not much more work than changing the > value of a variable in a Make file.... You can have _two_ make files, in two build directories, and compile both without editing anything. Each top-level make file can define the relevant variables, then call a common makefile that does the real work. Or you can have two GNAT project files that declare source names for package OS_Services, again in two build directories, and compile both without editing. You can't do that with your solution. You need two build directories anyway, since all (or at least some of) the object files will be different. A true solution involves _zero_ manual steps. -- -- Stephe