comp.lang.ada
 help / color / mirror / Atom feed
From: rjs@moss.ATT.COM
Subject: Re: Conditional compilation
Date: 17 Jun 88 14:48:27 GMT	[thread overview]
Message-ID: <28255@clyde.ATT.COM> (raw)
In-Reply-To: 909*haug@vax.runit.unit.uninett

In article <909*haug@vax.runit.unit.uninett>
haug%vax.runit.unit.uninett@TOR.NTA.NO (Steinar Haug) asks:
>I'm developing programs for both DEC VAX (VAX/VMS Ada compiler) and
>SUN-3 (Alsys Ada compiler). I need to use some form of conditional
>compilation.
>
>The LRM contains a reference [10.6] to conditional compilation but
>it seems rather cryptic and it is not obvious to me how I could use
>it in practice.
>
This seems to be the type of mechansim that 10.6 is referring to:

-- At the beginning of your source, or in a separate package that you
-- include in any module that needs to conditionally compile based on
-- the target, make the following declarations.

type MACHINE_NAME is (VAX, SUN3);
TARGET : constant MACHINE_NAME := VAX;  -- Change this line to compile
                                          -- for a different target


-- Then wherever you need to conditionally compile code based on the 
-- target machine, use the following:

case TARGET is
  when VAX =>
	-- VAX specific code goes here.
  when SUN3 =>
	-- SUN-3 specific code goes here.
end case;


Of course this solution assumes that you can put all your conditional
stuff in a case statement.  The compiler is allowed to not generate any
of the code for the obviously FALSE case.
Good Luck.

	Robert Snyder
	{ihnp4|clyde}!moss!rjs
	(201) 386-4467
The above statements are my own thoughts and observations and are not
intended to represent my employer's position on the subject(s).

  parent reply	other threads:[~1988-06-17 14:48 UTC|newest]

Thread overview: 50+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
1988-06-13  0:24 Conditional compilation Steinar Haug
1988-06-17 13:53 ` rds
1988-06-22  0:44   ` Jeff Bartlett
1988-06-23 13:01   ` Arny B. Engelson
1988-06-27 18:01     ` Dave Seward
1988-06-29 13:32   ` brucej
1988-06-17 14:48 ` rjs [this message]
  -- strict thread matches above, loose matches on Subject: below --
1989-12-12  0:08 conditional compilation Emery
2000-07-31  0:00 Matthew Woodcraft
2000-07-31  0:00 ` Marin D. Condic
2000-07-31  0:00   ` Ira D. Baxter
2000-08-01  0:00   ` Simon Brady
2000-07-31  0:00     ` Marin D. Condic
2000-08-01  0:00     ` Ted Dennison
2000-08-01  0:00       ` Robert A Duff
2000-08-01  0:00         ` Laurent Guerby
2000-08-02  0:00       ` Simon Brady
2000-08-02  0:00         ` Robert A Duff
2000-08-02  0:00           ` Brian Rogoff
2000-08-03  0:00             ` Robert A Duff
2000-08-02  0:00           ` Georg Bauhaus
2000-08-03  0:00             ` Robert A Duff
2000-08-03  0:00           ` Florian Weimer
2000-08-02  0:00         ` Simon Brady
2000-08-01  0:00           ` William J. Thomas
2000-08-02  0:00         ` Georg Bauhaus
2000-09-19  0:00 Conditional Compilation Kenneth Kueny
2000-09-19  0:00 ` Jeffrey Carter
2000-09-19  0:00   ` Samuel T. Harris
2000-09-20  0:44     ` Robert Dewar
2000-09-19  0:00 ` Ted Dennison
2000-09-19  0:00 ` David Starner
2000-09-19  0:00 ` Richard Riehle
2000-09-19  0:00 ` E. Robert Tisdale
2000-09-19  0:00   ` David Starner
2000-09-20  0:52     ` Robert Dewar
2000-09-19  0:00   ` Larry Kilgallen
2000-09-19  0:00     ` Jeff Allen
2000-09-20  0:49       ` Robert Dewar
2000-09-19  0:00         ` Bobby D. Bryant
2000-09-24  0:00           ` Robert Dewar
2000-09-20  0:47   ` Robert Dewar
2000-10-09  0:00   ` John McCabe
2000-09-20  1:33 ` tmoran
     [not found]   ` <8qauu3$7ei$1@nnrp1.deja.com>
2000-09-24  0:00     ` Robert Dewar
2000-09-25  2:45       ` Ted Dennison
2000-09-25  0:00         ` peter
     [not found] ` <39CA31F2.E160F0D8@res.raytheon.com>
2000-09-24  0:00   ` Robert Dewar
2001-01-02 13:27 ` Andrew Hately
2001-01-02 16:46   ` Robert Dewar
replies disabled

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