EPICS Controls Argonne National Laboratory

Experimental Physics and
Industrial Control System

1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  <20112012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024  Index 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  <20112012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
<== Date ==> <== Thread ==>

Subject: Re: Sequencer Preprocessor Build Rules
From: Andrew Johnson <[email protected]>
To: [email protected]
Date: Thu, 16 Jun 2011 11:21:17 -0500
Hi Benjamin,

On 2011-06-15 Benjamin Franksen wrote:
> Am Freitag, 10. Juni 2011, um 17:48:09 schrieben Sie:
> > My guess is that for this vxWorks.h problem, the C preprocessor
> > sees a line starting with "%%" and concludes it is not a
> > preprocessor command, hence the bad substitution; it would
> > normally understand an include command and know not to
> > substitute within the angle brackets.  If this is the case, I
> > think another workaround would be to use the SNL block escape
> > syntax instead of the single line syntax:
> >
> >   %{
> >     #include <vxWorks.h>
> >   }%
> 
> Yes, this should work (with the "#" as first character on the line).

There could be subtle semantic differences using this syntax, as any macros 
defined by the vxWorks.h file will get expanded out in the SNL program before 
it reaches the SNL compiler whereas the old version didn't expand them until 
afterwards.  I tried this last week and snc does correctly ignore the expanded 
header file, but I wouldn't really recommend it.

I committed the -DvxWorks=vxWorks change to the 3.14 branch last Friday.

- Andrew
-- 
Optimization is the process of taking something that works and
replacing it with something that almost works, but costs less.
-- Roger Needham

References:
Sequencer Preprocessor Build Rules Andrew Johnson
Re: Sequencer Preprocessor Build Rules J. Lewis Muir
Re: Sequencer Preprocessor Build Rules Benjamin Franksen

Navigate by Date:
Prev: RE: Hardware needed to setup an IOC matthew.pearson
Next: Re: Snr Controls Engineer Contract Position Australian Synchrotron Maren Purves
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  <20112012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
Navigate by Thread:
Prev: Re: Sequencer Preprocessor Build Rules Benjamin Franksen
Next: driver support for SIS3302 and SIS3305 Hu, Yong
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  <20112012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
ANJ, 18 Nov 2013 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·