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,XPRIO autolearn=no autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 103376,112ee4ae931079e6,start X-Google-Attributes: gid103376,public X-Google-ArrivalTime: 2003-09-04 15:31:31 PST Path: archiver1.google.com!news1.google.com!newsfeed.stanford.edu!cyclone.bc.net!snoopy.risq.qc.ca!nf3.bellglobal.com!nf1.bellglobal.com!nf2.bellglobal.com!news20.bellglobal.com.POSTED!not-for-mail Reply-To: "Tim Spargo" From: "Tim Spargo" Newsgroups: comp.lang.ada Subject: Using GNU make with ObjectAda X-Priority: 3 X-MSMail-Priority: Normal X-Newsreader: Microsoft Outlook Express 6.00.2800.1158 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1165 Message-ID: Date: Thu, 4 Sep 2003 18:16:23 -0400 NNTP-Posting-Host: 64.230.111.155 X-Complaints-To: abuse@sympatico.ca X-Trace: news20.bellglobal.com 1062713784 64.230.111.155 (Thu, 04 Sep 2003 18:16:24 EDT) NNTP-Posting-Date: Thu, 04 Sep 2003 18:16:24 EDT Organization: Bell Sympatico Xref: archiver1.google.com comp.lang.ada:42155 Date: 2003-09-04T18:16:23-04:00 List-Id: Hi, I am relatively new to Ada (from the Dark side - C++). I am trying to use GNU make to create a makefile for some ObjectAda projects I am working on. Through a combination of GNU make (3.80) and Perl (5.8), I have made progress and have a working makefile, however the outstanding issue is automatically generating dependencies. The problem is I need to selectively generate all dependencies of a particular Ada file pair, which is a subset of just getting a list of all .ads and .adb files in a particular directory (which can be done using vpath with pattern matching in GNU make). I am trying to avoid reinventing the wheel by building a dependancy tree in Perl. Since I have no choice but to use ObjectAda (7.2 - old), I believe that this excludes use of the GNAT tool set which supports automatic dependency generation using the gcc "-M" option. In fact I quickly tried to use gnatmake on the project and for various reasons the code base will not compile under gnatmake. gcc needs to be able to compile an Ada file before it can generate dependencies for it. Perhaps I need to look into this more... ObjectAda itself is designed to be GUI driven and therefore all files within a particular project are added manually by the user. Once added to the project, the files are added to the UNIT.MAP file. The ObjectAda CLI commands (i.e. adareg, adamake, adabuild, etc) manipulate this and other files to determine the dependency list. I don't believe the ObjectAda tools support "-M" or similar functionality, since essentially they work around the need for automatic dependancies it in a simplistic way. Any thoughts from the learned Ada people out there would be appreciated... Even a general direction would be helpful...