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,6458d1ee91b224ec X-Google-Attributes: gida07f3367d7,public,usenet X-Google-NewGroupId: yes X-Google-Language: ENGLISH,ASCII X-Received: by 10.180.89.133 with SMTP id bo5mr2385204wib.6.1361849333537; Mon, 25 Feb 2013 19:28:53 -0800 (PST) Path: bp2ni59445wib.1!nntp.google.com!feeder1.cambriumusenet.nl!feed.tweaknews.nl!194.109.133.87.MISMATCH!newsfeed.xs4all.nl!newsfeed1.news.xs4all.nl!xs4all!border4.nntp.ams.giganews.com!border2.nntp.ams.giganews.com!nntp.giganews.com!news.teledata-fn.de!weretis.net!feeder4.news.weretis.net!de-l.enfer-du-nord.net!feeder1.enfer-du-nord.net!usenet-fr.net!fdn.fr!feeder.news.orange.fr!not-for-mail Message-ID: <5123AB66.2040107@obry.net> Date: Tue, 19 Feb 2013 17:42:14 +0100 From: Pascal Obry Organization: Home - http://www.obry.net User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.0; fr-FR; rv:1.8.1.22) Gecko/20090605 Thunderbird/2.0.0.22 Mnenhy/0.7.5.0 MIME-Version: 1.0 Newsgroups: comp.lang.ada To: Jacob Sparre Andersen Subject: Re: chopping Ada source that have preprocessor symbols in them References: <5111a9d5$0$6567$9b4e6d93@newsspool3.arcor-online.net> <85txpnm1vp.fsf@stephe-leake.org> <5114fb61$0$6561$9b4e6d93@newsspool4.arcor-online.net> <85ehgqkxnf.fsf@stephe-leake.org> <51168e7e$0$6566$9b4e6d93@newsspool3.arcor-online.net> <85r4khdfm3.fsf@stephe-leake.org> <511e17c3$0$9520$9b4e6d93@newsspool1.arcor-online.net> <511E64AB.8030805@obry.net> <871ucffhtu.fsf@adaheads.sparre-andersen.dk> <87liakk4aa.fsf_-_@adaheads.sparre-andersen.dk> In-Reply-To: <87liakk4aa.fsf_-_@adaheads.sparre-andersen.dk> NNTP-Posting-Date: 19 Feb 2013 17:42:14 CET NNTP-Posting-Host: 81.249.60.249 X-Trace: 1361292134 reader.news.orange.fr 1404 81.249.60.249:7921 X-Complaints-To: abuse@orange.fr Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 8bit Date: 2013-02-19T17:42:14+01:00 List-Id: Le 19/02/2013 11:05, Jacob Sparre Andersen a �crit : > I've looked a little bit at Mercurial and its "subrepos" facility > (http://mercurial.selenic.com/wiki/Subrepository). I think it (combined > with a sensible use of separate bodies) does the trick. > > Taking Janus/Ada with two OS targets and two CPU architectures, you > would set up a structure like this: > > Janus_Ada/ - thin build management repository > Common/ - subrepo containing source files common to all targets > OS_Specific/ - subrepo containing branches for Linux/Windows > CPU_Specific/ - subrepo containing branches for ARM/Intel But this means that to do a fix for multiple OS/CPU (for example adding a new routine) you have to move branches! This is quite counter productive and it also means that you cannot do an atomic commit for related work on different branches. I do prefer the GNAT way. That is, having files for different OS/CPU on the same repo with a suffix starting with double _ to avoid having them picked up by default by the project file (as this is not a standard naming). Then using the package Naming and some variables you select the variant you want to use for a specific build. -- Pascal Obry / Magny Les Hameaux (78) The best way to travel is by means of imagination http://v2p.fr.eu.org http://www.obry.net gpg --keyserver keys.gnupg.net --recv-key F949BD3B