Experimental Physics and Industrial Control System
On 04/05/2017 07:30 PM, Hugo Slepicka wrote:
> Hi,
>
> Here at SLAC we organize our RELEASE files with variables for the
> versions of the modules and after that the path for them, e.g.:
>
> ASYN_MODULE_VERSION=R4.30-0.3.0
> CEXP_MODULE_VERSION=R1.0.1
> STREAM_MODULE_VERSION=R2.7.7-0.1
> YAMLLOADER_VERSION=R1.0.1
>
> ASYN=$(EPICS_MODULES)/asyn/$(ASYN_MODULE_VERSION)
> CEXP=$(EPICS_MODULES)/cexpsh/$(CEXP_MODULE_VERSION)
> STREAM=$(EPICS_MODULES)/streamdevice/$(STREAM_MODULE_VERSION)
> YAMLLOADER=$(EPICS_MODULES)/yamlloader/$(YAMLLOADER_VERSION)
>
> With the migration to R3.15.5 and the change on our tag naming
Strictly speaking RELEASE should contain only epics module path
definitions. In addition to GNUMake, it is parsed by a script to
construct the compiler/linker search paths (eg '-I/foo -I/bar').
So this RELEASE will look for eg. a directory "./R1.0.1/include".
Note that relative module paths are supported by using "$(TOP)". eg.
"ASYN=$(TOP)/../asyn".
> *Here are the questions:*
> - What would be the problem of having more than one variable pointing to
> the same place?
"-I/foo -I/bar -I/foo" will give unpleasant results if /foo and /bar
contain the same header.
> - Are the order of the includes and linking defined by the other that
> they appear at the RELEASE file?
Yes.
> We know that there are solutions such as adding the variables
> immediately above or below the other and also bring the version number
> to the module path to avoid conflicts but we are curious to understand why.
>
> *The additional checks were introduced with this commit:
> *
> https://github.com/epics-base/epics-base/commit/67097456e33cac9f33af0673c4ee5daa7fe09272#diff-62e7292bd50b6eeaec4ca166b146ba7eR243
As the commit message hints, this was done to support site which use my
debian package scheme which installs many modules together in
"/usr/lib/epics".
- References:
- Additional RELEASE file checks Hugo Slepicka
- Navigate by Date:
- Prev:
Additional RELEASE file checks Hugo Slepicka
- Next:
Re: Additional RELEASE file checks Konrad, Martin
- Index:
1994
1995
1996
1997
1998
1999
2000
2001
2002
2003
2004
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
<2017>
2018
2019
2020
2021
2022
2023
2024
- Navigate by Thread:
- Prev:
Additional RELEASE file checks Hugo Slepicka
- Next:
Re: Additional RELEASE file checks Konrad, Martin
- Index:
1994
1995
1996
1997
1998
1999
2000
2001
2002
2003
2004
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
<2017>
2018
2019
2020
2021
2022
2023
2024