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=-0.3 required=5.0 tests=BAYES_00, REPLYTO_WITHOUT_TO_CC autolearn=no autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 103376,d6f7b92fd11ab291 X-Google-Attributes: gid103376,public X-Google-ArrivalTime: 2003-07-23 00:23:05 PST Path: archiver1.google.com!news1.google.com!newsfeed.stanford.edu!bloom-beacon.mit.edu!nycmny1-snh1.gtei.net!news.gtei.net!newsfeed.mathworks.com!fu-berlin.de!uni-berlin.de!adsl-213-200-246-247.cybernet.CH!not-for-mail From: Vinzent Hoefler Newsgroups: comp.lang.ada Subject: Re: Crosspost: Help wanted from comp.compilers Date: Wed, 23 Jul 2003 09:20:56 +0200 Organization: JeLlyFish software Message-ID: References: <2OERa.4718$0F4.3216@nwrdny02.gnilink.net> <1058539398.178565@master.nyc.kbcfp.com> <3F18D647.9020505@attbi.com> <3F1B207B.6090308@attbi.com> <1058800464.63505@master.nyc.kbcfp.com> <3F1C48F6.8010700@attbi.com> <3b1Ta.14846$0F4.12183@nwrdny02.gnilink.net> <3F1CC567.5000407@attbi.com> <1058901373.624808@master.nyc.kbcfp.com> Reply-To: v.hoefler@acm.org NNTP-Posting-Host: adsl-213-200-246-247.cybernet.ch (213.200.246.247) Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: quoted-printable X-Trace: news.uni-berlin.de 1058944981 16689958 213.200.246.247 (16 [175126]) X-Newsreader: Forte Agent 1.8/32.548 Xref: archiver1.google.com comp.lang.ada:40682 Date: 2003-07-23T09:20:56+02:00 List-Id: Hyman Rosen wrote: >consistent. I'm trying to get around the implication that >once everything is compiled, the simple act of recompiling >a unit, when neither its source nor its compilation flags >have changed, forces all dependent units to be recompiled, >as a requirement of the Ada programming language. Look at this: |C:\prj\elan520>gmake clean |rm -f *.ali *.o *.s | |C:\prj\elan520>gnatmake -m elan520 |gcc -c elan520.adb |gcc -c elan520-basic_types.ads |gcc -c elan520-cpu_registers.ads |gcc -c elan520-mmcr.ads |gcc -c elan520-programmable_address_region.ads |gcc -c elan520-registers.ads |gcc -c elan520-sdram_controller_registers.ads |gcc -c elan520-sdram_buffer_control.ads | |C:\prj\elan520>\djgpp\bin\touch elan520-sdram_buffer_control.ads | |C:\prj\elan520>gnatmake -m elan520 | |C:\prj\elan520>gnatmake elan520 |gcc -c elan520.adb |gcc -c elan520-mmcr.ads |gcc -c elan520-sdram_buffer_control.ads As you see, after just updating the timestamp, gnatmake -m[0] still does nothing, but gnatmake without the "minimum recompile" option still recompiles all dependent units, of course. My guess is, gnatmake -m is still a valid Ada compiler, so doing the recompile can't be a requirement of the language. ;) >I still do not believe that this is the case. Me neither. :) Vinzent. [0] From GNAT User's Guide: -m Specifies that the minimum necessary amount of recompilations be performed. In this mode gnatmake ignores time stamp differences when the only modifications to a source file consist in adding/removing comments, empty lines, spaces or tabs. [...]