Argonne National Laboratory

Experimental Physics and
Industrial Control System

2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  <20182019  2020  2021  Index 2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  <20182019  2020  2021 
<== Date ==> <== Thread ==>

Subject: Re: Problem with INSTALL_LOCATION and "make uninstall" in 7.0.1
From: Ralph Lange <ralph.lange@gmx.de>
To: EPICS Core Talk <core-talk@aps.anl.gov>
Date: Fri, 15 Jun 2018 21:10:41 -0500
The idea was:
In case the make install run installed (copied over) the configure directory under INSTALL_LOCATION, it should also remove it when doing "make uninstall".
If INSTALL_LOCATION == TOP (the "normal" case), configure is already in place, not being created and should not be removed.

I still think that "make uninstall" should remove everything that the build created under INSTALL_LOCATION. Maybe the if clause is not appropriate?

Installing multiple modules into one location is indeed a dangerous mode of operation.
Even without that rule, running "make uninstall" in *any* of the modules will remove the installed binaries, libraries, includes, dbd files of *all* modules, which doesn't seem right.
The right thing would be saving the list of all installed files during the build and have "make uninstall" remove exactly the files that were installed.
But that is actually what package managers are about, and pretty much out-of-scope for the build itself.

Sorry for the inconvenience - not intended.
~Ralph



On Fri, Jun 15, 2018 at 4:50 PM Andrew Johnson <anj@aps.anl.gov> wrote:
On 06/15/2018 04: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. 
>
> 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.

The problem also occurs in the Base-7 modules and is caused by these
lines in configure/RULES_TOP:

> ifneq ($(INSTALL_LOCATION),$(TOP))
> UNINSTALL_DIRS += $(INSTALL_CONFIG)
> endif

Since INSTALL_CONFIG is in these cases pointing to a configure directory
that we didn't create, the uninstallDirs make target shouldn't be
deleting it. I suspect we should just remove the above lines, so 'make
uninstall' never deletes that particular directory.

- Andrew

--
Arguing for surveillance because you have nothing to hide is no
different than making the claim, "I don't care about freedom of
speech because I have nothing to say." -- Edward Snowdon

Replies:
Re: Problem with INSTALL_LOCATION and "make uninstall" in 7.0.1 J. Lewis Muir
Re: Problem with INSTALL_LOCATION and "make uninstall" in 7.0.1 Dirk Zimoch
References:
Problem with INSTALL_LOCATION and "make uninstall" in 7.0.1 Mark Rivers
Re: Problem with INSTALL_LOCATION and "make uninstall" in 7.0.1 Andrew Johnson

Navigate by Date:
Prev: Re: Problem with INSTALL_LOCATION and "make uninstall" in 7.0.1 Andrew Johnson
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  <20182019  2020  2021 
Navigate by Thread:
Prev: Re: Problem with INSTALL_LOCATION and "make uninstall" in 7.0.1 Andrew Johnson
Next: Re: Problem with INSTALL_LOCATION and "make uninstall" in 7.0.1 J. Lewis Muir
Index: 2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  <20182019  2020  2021 
ANJ, 20 Jun 2018 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·