On 06/15/2018 02:40 PM, Mark Rivers wrote:
> One of the areaDetector optional plugins is in areaDetector/ADPluginEdge. Its CONFIG_SITE contains this line:
>
>
>
> INSTALL_LOCATION=$(AREA_DETECTOR)/ADCore
>
>
>
> It thus installs its library, dbd, and .template file into ADCore.
Ick! IMO this sort of incremental re-build is a recipe for disaster.
Sooner or later you're going to accumulate some unanticipated installed
"state", and end up with an unreproducible build.
> Much to my surprise running “make uninstall” on EPICS 7 at the top level of ADPluginEdge deletes the ADCore/configure directory! Needed to run “git checkout master .” to recover it.
>
>
>
> I have removed that line from CONFIG_SITE because I don’t think it is what we really want to do anyway, but this definitely seems like a dangerous bug in EPICS 7. That directory could have had local edits that were lost.
IMO "make uninstall" is inherently dangerous.
FYI, I've run into situations like this in the past where I can't/don't
use a proper package manager (the real solution), but want to do incremental
rebuilds. Usually involving tools like GCC which take a long time to build.
With the EPICS makefiles a sort of proto package manager can be achieved by
using both INSTALL_LOCATION and FINAL_LOCATION. Making a tar file of
each module in INSTALL_LOCATION, then untaring it in FINAL_LOCATION.
A clean "uninstall" can be achieved by wiping FINAL_LOCATION and untaring
each module (in order, in case of conflicts).
- References:
- Problem with INSTALL_LOCATION and "make uninstall" in 7.0.1 Mark Rivers
- Navigate by Date:
- Prev:
wrapped shared_ptr games Michael Davidsaver
- Next:
Re: Q: Structured argument types for PVA RPC service call Ralph Lange
- 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: Problem with INSTALL_LOCATION and "make uninstall" in 7.0.1 Dirk Zimoch
- Next:
Q: Structured argument types for PVA RPC service call Ralph Lange
- Index:
2002
2003
2004
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
<2018>
2019
2020
2021
2022
2023
2024
|