On 29.11.2017 21:59, Mark Rivers wrote:
It's even more complicated than that though; once we get Base to only
build the PVA modules for some target architectures and not for others,
how are the Makefiles in downstream modules such as AreaDetector
supposed to be set up to only build things that depend on PVA for
targets that have PVA built?
areaDetector already handles this. All of its Makefiles have constructs like this for things that depend on PVA (aka EPICS_V4).
ifeq ($(WITH_EPICS_V4), YES)
DBD += NDPluginPva.dbd
INC += NDPluginPva.h
LIB_SRCS += NDPluginPva.cpp
endif
I was thinking of a similar solution, but WITH_PVA instead of WITH_EPICS_V4.
Also setting a macro for conditional compilation may be useful:
-D WITH_PVA
Maybe also -D WITH_CA for later?
Of course this brings up my favorite complaint about the fact that dbd files are in O.Common rather than an architecture-specific directory. We now have to play silly games with naming DBD files differently for each architecture if one supports PVA and another does not.
Yes, really a pain. Once has to implement dummies.
Mark
-----Original Message-----
From: [email protected] [mailto:[email protected]] On Behalf Of Andrew Johnson
Sent: Wednesday, November 29, 2017 1:48 PM
To: [email protected]
Subject: Re: EPICS 7.0.1-pre1 -- vxWorks 6.2
On 11/29/2017 02:07 AM, Dirk Zimoch wrote:
I will try to implement something. My first attempt failed for the
reason Andrew outlined. It is not possible to simply skip the all PVA
modules for a specific T_A because at that time T_A is not yet defined.
A flag needs to be checked inside every module.
It's even more complicated than that though; once we get Base to only
build the PVA modules for some target architectures and not for others,
how are the Makefiles in downstream modules such as AreaDetector
supposed to be set up to only build things that depend on PVA for
targets that have PVA built?
After thinking this over last night I now think it would be much more
complex and invasive than the original idea appears. It certainly isn't
going to be possible in the 7.0.1 release.
If you want to use EPICS 7, I think you will have to upgrade your
devices to run on a fully supported OS; partial support like this is
likely to be too invasive to be cost-effective.
- Andrew
- References:
- EPICS 7.0.1-pre1 Andrew Johnson
- Re: EPICS 7.0.1-pre1 Dirk Zimoch
- Re: EPICS 7.0.1-pre1 -- vxWorks 6.2 Dirk Zimoch
- Re: EPICS 7.0.1-pre1 -- vxWorks 6.2 Dirk Zimoch
- Re: EPICS 7.0.1-pre1 -- vxWorks 6.2 Hartman, Steven M.
- Re: EPICS 7.0.1-pre1 -- vxWorks 6.2 Timo Korhonen
- Re: EPICS 7.0.1-pre1 -- vxWorks 6.2 Andrew Johnson
- Re: EPICS 7.0.1-pre1 -- vxWorks 6.2 Dirk Zimoch
- Re: EPICS 7.0.1-pre1 -- vxWorks 6.2 Andrew Johnson
- RE: EPICS 7.0.1-pre1 -- vxWorks 6.2 Mark Rivers
- Navigate by Date:
- Prev:
Re: EPICS 7.0.1-pre1 -- vxWorks 6.2 Dirk Zimoch
- Next:
Re: EPICS 7.0.1-pre1 -- vxWorks 6.2 Dirk Zimoch
- Index:
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:
RE: EPICS 7.0.1-pre1 -- vxWorks 6.2 Mark Rivers
- Next:
RE: EPICS 7.0.1-pre1 -- vxWorks 6.2 Mark Rivers
- Index:
2002
2003
2004
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
<2017>
2018
2019
2020
2021
2022
2023
2024
|