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  <20082009  2010  2011  2012  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  <20082009  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
<== Date ==> <== Thread ==>

Subject: Re: Support for shell variables in the EPICS build system
From: Andrew Johnson <[email protected]>
To: Remi Machet <[email protected]>
Cc: "Ernest L. Williams Jr." <[email protected]>, [email protected]
Date: Tue, 9 Dec 2008 16:56:49 -0600
On Tuesday 09 December 2008 15:56:34 Remi Machet wrote:
>
> I am used to work on multiple projects at the same time and I have seen
> over the years that even on a single project, having multiple 'views' of
> a software can increase quite a lot productivity (like a base with extra
> printf and one other clean). I am trying to setup an EPICS environment
> that can do exactly that for myself.

You can turn off the checkRelease process for a module if you want it to be 
able to use a different support module than any related modules are using 
directly, such as switching to a different version of Base.  To do that edit 
the module's configure/Makefile and set CHECK_RELEASE to NO, change the 
configure/RELEASE file (or any file it includes) as needed, and then do 
a 'make rebuild' from the top directory of the module.

> I would suggest modifying convertRelease.pl to at least explicitly
> refuse using environment variables (ie : display an error message when
> one is found), because it can get extremely confusing for newbies (right
> now the variable is just replaced by '').

The following patch to Base will cause convertRelease.pl to output a warning 
whenever it attempts to expand an undefined variable.  If this helps I think 
it would be a worthwhile change to include -- thanks for the suggestion.

Index: src/tools/EPICS/Release.pm
===================================================================
--- src/tools/EPICS/Release.pm    29 Aug 2008 21:06:56 -0000      1.1.2.2
+++ src/tools/EPICS/Release.pm    9 Dec 2008 22:36:37 -0000
@@ -84,6 +84,8 @@ sub expandRelease {

     while (my ($macro, $path) = each %$Rmacros) {
         while (my ($pre,$var,$post) = $path =~ m/(.*)\$\((\w+?)\)(.*)/) {
+            warn "Undefined macro \$($var) used in RELEASE file\n"
+                unless exists $Rmacros->{$var};
             $path = $pre . $Rmacros->{$var} . $post;
             $Rmacros->{$macro} = $path;
         }


- Andrew
-- 
The best FOSS code is written to be read by other humans -- Harold Welte

References:
Support for shell variables in the EPICS build system Remi Machet
Re: Support for shell variables in the EPICS build system Andrew Johnson
Re: Support for shell variables in the EPICS build system Remi Machet

Navigate by Date:
Prev: Re: Support for shell variables in the EPICS build system Remi Machet
Next: lockset question Till Straumann
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  <20082009  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
Navigate by Thread:
Prev: Re: Support for shell variables in the EPICS build system Remi Machet
Next: Video solutions Terry Carlino
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  <20082009  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
ANJ, 02 Sep 2010 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·