comp.lang.ada
 help / color / mirror / Atom feed
From: Ludovic Brenta <ludovic@ludovic-brenta.org>
Subject: Re: Why no socket package in the standard ?
Date: Thu, 26 May 2011 23:59:25 +0200
Date: 2011-05-26T23:59:25+02:00	[thread overview]
Message-ID: <87hb8h6s3m.fsf@ludovic-brenta.org> (raw)
In-Reply-To: 4ddebc11$0$6554$9b4e6d93@newsspool4.arcor-online.net

Georg Bauhaus writes on comp.lang.ada:
> Make (or similar) is still good for building Ada programs, in
> particular, portable Ada programs (between compilers), and its
> associated documentation and the tests.

Make is a wrapper around shell scripts (the rules in Makefiles are shell
scripts).  You can use a Makefile as a wrapper around the compiler
driver but you might as well avoid Make and use shell scripts directly
because you do not need Make to figure dependencies or order of
compilation out.  In fact, Make's built-in rules and dependency engine
might get in the way.

Makefiles tend not to be portable between operating systems anyway;
that's what Automake and Configure are for :)

> For example, gnatmake is not enough if your program is this:
>
> procedure Hello;
> -- offer greetings to the world
>
> with Ada.Text_IO;
> procedure Hello is
> begin
>    Ada.Text_IO.Put_Line("Hello, World!");
> end Hello;
>
> I think gprbuild or at least a GNAT specific project file is needed.

Huh?

$ gnatmake hello
gcc-4.4 -c hello.adb
gnatbind -x hello.ali
gnatlink hello.ali
$ ./hello
Hello, World!

What is missing that makes gnatmake "not enough"?

> In the case of ObjectAda or other frontends built around AdaMagic a
> program called adareg or similar will permit adding files and paths to
> the Ada libary; files can consist of more than one compilation unit,
> no chopping is needed (even though a 1:1 correspondence has been
> recommended).  Additional programs include adamake or adabuild or
> adacomp.
>
> I understand that IBM Rational Apex is using a sophisticated Ada
> library management software.
>
> Make (or similar) on top of this is fairly simple to use and gives you
> another level of simple configuration. E.g., set environment variables
> that a GNAT project file will read; use VPATH if you have GNU make and
> easily switch configurations.

No, Makefiles wrappers around compiler drivers + Ada library management
would be complicated and difficult to maintain.  You'd be better off
with even simpler shell scripts or, why not, gprmake.

-- 
Ludovic Brenta.



  parent reply	other threads:[~2011-05-26 21:59 UTC|newest]

Thread overview: 121+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-05-24  1:22 Why no socket package in the standard ? Yannick Duchêne (Hibou57)
2011-05-24  1:39 ` Yannick Duchêne (Hibou57)
2011-05-24  6:11   ` tmoran
2011-05-24 17:23     ` Pascal Obry
2011-05-24 19:10     ` Yannick Duchêne (Hibou57)
2011-05-25 15:12     ` Tero Koskinen
2011-05-25 18:43       ` Tero Koskinen
2011-05-25 19:08         ` Yannick Duchêne (Hibou57)
2011-05-24  6:24 ` georg bauhaus
2011-05-24  7:07   ` Maciej Sobczak
2011-05-24  7:19     ` Thomas Løcke
2011-05-24  7:35       ` Ludovic Brenta
2011-05-24 10:00       ` Georg Bauhaus
2011-05-24 12:53         ` Dmitry A. Kazakov
2011-05-24 14:28           ` Georg Bauhaus
2011-05-24 14:59             ` Dmitry A. Kazakov
2011-05-24 16:07               ` Adam Beneschan
2011-05-24 19:21                 ` Dmitry A. Kazakov
2011-05-25  0:53                   ` Yannick Duchêne (Hibou57)
2011-05-25  0:21                 ` Yannick Duchêne (Hibou57)
2011-05-25 11:25                   ` Peter C. Chapin
2011-05-24 16:10               ` Georg Bauhaus
2011-05-24 19:36                 ` Dmitry A. Kazakov
2011-05-25  0:57               ` Yannick Duchêne (Hibou57)
2011-05-24 23:20             ` Yannick Duchêne (Hibou57)
2011-05-25  0:32               ` Georg Bauhaus
2011-05-25  0:49                 ` Yannick Duchêne (Hibou57)
2011-05-25  7:55                 ` Pascal Obry
2011-05-25  8:38                   ` Georg Bauhaus
2011-05-25  8:05                 ` Dmitry A. Kazakov
2011-05-25  7:52               ` Dmitry A. Kazakov
2011-05-24 19:38         ` Yannick Duchêne (Hibou57)
2011-05-24 19:54           ` Ludovic Brenta
2011-05-24 20:10             ` Yannick Duchêne (Hibou57)
2011-05-24 21:57               ` Ludovic Brenta
2011-05-24 22:35                 ` Yannick Duchêne (Hibou57)
2011-05-24 23:34                   ` Adam Beneschan
2011-05-24 23:40                     ` Ludovic Brenta
2011-05-24 23:50                       ` Yannick Duchêne (Hibou57)
2011-05-24 23:35                   ` Ludovic Brenta
2011-05-25  3:07                     ` Shark8
2011-05-25  4:01                       ` Yannick Duchêne (Hibou57)
2011-05-25  7:39                         ` Georg Bauhaus
2011-05-25  7:42                         ` Ludovic Brenta
2011-05-25 10:46                           ` Manuel Collado
2011-05-25 10:44                         ` Peter C. Chapin
2011-05-25 15:28                           ` Yannick Duchêne (Hibou57)
2011-05-25 16:36                             ` Ludovic Brenta
2011-05-25 16:46                               ` Yannick Duchêne (Hibou57)
2011-05-26 12:10                               ` Maciej Sobczak
2011-05-26 12:42                                 ` Ludovic Brenta
2011-05-26 14:36                                   ` Georg Bauhaus
2011-05-26 15:56                                     ` Ludovic Brenta
2011-05-26 18:20                                   ` Maciej Sobczak
2011-05-26 18:29                                     ` Yannick Duchêne (Hibou57)
2011-05-26 20:46                                       ` Georg Bauhaus
2011-05-26 21:02                                         ` Yannick Duchêne (Hibou57)
2011-05-26 21:44                                           ` Georg Bauhaus
2011-05-26 21:59                                         ` Ludovic Brenta [this message]
2011-05-27  7:54                                           ` Georg Bauhaus
2011-05-27 13:12                                           ` Simon Wright
2011-05-27 15:43                                             ` Ludovic Brenta
2011-05-26 18:31                                     ` Vinzent Hoefler
2011-05-26 19:05                                       ` Ludovic Brenta
2011-05-26 19:14                                       ` Yannick Duchêne (Hibou57)
2011-05-26 19:44                                         ` Ludovic Brenta
2011-05-27  2:02                                       ` anon
2011-05-27 11:44                                     ` Stephen Leake
2011-05-26 14:50                               ` Adam Beneschan
2011-05-26 15:57                                 ` Ludovic Brenta
2011-05-27 11:46                                   ` Stephen Leake
2011-05-27 12:21                                     ` Dmitry A. Kazakov
2011-05-27 12:49                                       ` Make, Automake, Configure, Autocong, GPRbuild etc (was: Why no socket package in the standard ?) Ludovic Brenta
2011-05-27 13:10                                         ` Make, Automake, Configure, Autocong, GPRbuild etc Dmitry A. Kazakov
2011-05-27 15:45                                           ` Ludovic Brenta
2011-05-25  7:40                       ` Why no socket package in the standard ? Georg Bauhaus
2011-05-25 10:48                         ` Pascal Obry
2011-05-25  7:49                       ` Ludovic Brenta
2011-05-25  2:47             ` Shark8
2011-05-25  9:12             ` Thomas Løcke
2011-05-24 21:42           ` Yannick Duchêne (Hibou57)
2011-05-24 23:09           ` Georg Bauhaus
2011-05-24 23:25             ` Yannick Duchêne (Hibou57)
2011-05-25  9:06             ` Dmitry A. Kazakov
2011-05-24 23:11           ` Georg Bauhaus
2011-05-24 23:28             ` Yannick Duchêne (Hibou57)
2011-05-24 23:57               ` Georg Bauhaus
2011-05-25  0:36                 ` Yannick Duchêne (Hibou57)
2011-05-24  7:25     ` Dmitry A. Kazakov
2011-05-24 21:22       ` Maciej Sobczak
2011-05-25  9:14         ` Dmitry A. Kazakov
2011-05-25 11:54           ` Maciej Sobczak
2011-05-25 12:26             ` Dmitry A. Kazakov
2011-05-24 22:04       ` Yannick Duchêne (Hibou57)
2011-05-25  9:19         ` Dmitry A. Kazakov
2011-05-24 19:17   ` Yannick Duchêne (Hibou57)
2011-05-24 19:30     ` J-P. Rosen
2011-05-24 19:49       ` Yannick Duchêne (Hibou57)
2011-05-24 22:39     ` Georg Bauhaus
2011-05-24 22:54       ` Yannick Duchêne (Hibou57)
2011-05-24 23:54         ` Georg Bauhaus
2011-05-25  0:34           ` Yannick Duchêne (Hibou57)
2011-05-25  1:20             ` Yannick Duchêne (Hibou57)
2011-05-24 12:38 ` AdaMagica
2011-05-24 15:00   ` Yannick Duchêne (Hibou57)
2011-05-24 18:29 ` anon
2011-05-24 19:08   ` Yannick Duchêne (Hibou57)
2011-06-02  2:41 ` Randy Brukardt
2011-06-02 13:55   ` Florian Weimer
2011-06-02 20:38     ` anon
2011-06-02 20:44       ` Florian Weimer
2011-06-02 21:18       ` J-P. Rosen
2011-06-04 21:35         ` anon
2011-06-05  8:39           ` J-P. Rosen
2011-06-07  1:50             ` anon
2011-06-02 21:34     ` Randy Brukardt
2011-06-05 11:06       ` Florian Weimer
2011-06-05 13:45         ` Dmitry A. Kazakov
2011-06-05 14:51           ` Florian Weimer
2011-06-05 15:30             ` Dmitry A. Kazakov
2011-06-07  2:49             ` Randy Brukardt
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox