EPICS Controls 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  2018  <20192020  2021  2022  2023  2024  Index 2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  <20192020  2021  2022  2023  2024 
<== Date ==> <== Thread ==>

Subject: Re: [Bug 1722535] Re: 'make distclean' inside a submodule
From: Andrew Johnson via Core-talk <[email protected]>
To: [email protected]
Date: Mon, 13 May 2019 23:11:59 -0000
Hi Mark,

On 5/13/19 5:57 PM, Mark Rivers wrote:

Running 'make distclean' inside a base-7.0 submodule deletes the parent
module's bin and lib directories. Not a major problem, but a little
unfriendly and unexpected:


It also deleted the parent module's configure directory, right?  I think
that was a more serious problem, since there can be local edits there to
add new ARCHs, etc.


True, although I might not have known that when I wrote the original description for this bug report. Anyway that's all fixed in 7.0.2.2 which completely disables the dangerous targets from RULES_TOP when building a sub-module:

tux% cd modules/database/
tux% make uninstall
/local/anj/base-7.0/configure/RULES_TOP:66: *** Target 'uninstall' not available in a submodule.  Stop.
tux% make help
Usage: gnumake [options] [target] ...
Targets supported by all Makefiles:
     all            - Same as install (default rule)
     inc            - Installs header files
     build          - Builds and installs all targets
     install        - Builds and installs all targets
     buildInstall   - Same as install (deprecated)
     clean          - Removes the O.<arch> dirs created by running make
                      In O.<arch> dir, clean removes build created files
     realclean      - Removes ALL O.<arch> dirs
                      Cannot be used within an O.<arch> dir
     rebuild        - Same as clean install
     archclean      - Removes O.<arch> dirs but not O.Common dir
     depclean       - Removes .d files from all O.<arch> dirs.
     cvsclean       - Removes backup files etc. from all dirs below
     runtests       - Run self-tests, summarize results immediately
     tapfiles       - Run self-tests, save to O.<arch>/*.tap files
     test-results   - Summarize all O.<arch>/*.tap files
     clean-tests    - Removes all O.<arch>/*.tap files
"Partial" build targets supported by Makefiles:
     host           - Builds and installs linux-x86_64 only.
     inc.<arch>     - Installs <arch> only header files.
     build.<arch>   - Builds and installs <arch> only.
     install.<arch> - Builds and installs <arch> only.
     clean.<arch>   - Cleans <arch> binaries in O.<arch> dirs only.
Targets supported by top level Makefile:
     help           - Prints this list of valid make targets
Object targets are supported by the O.<arch> level Makefile .e.g
     xxxRecord.o

- Andrew


--
Complexity comes for free, Simplicity you have to work for.

-- 
You received this bug notification because you are a member of EPICS
Core Developers, which is subscribed to EPICS Base.
Matching subscriptions: epics-core-list-subscription
https://bugs.launchpad.net/bugs/1722535

Title:
  'make distclean' inside a submodule

Status in EPICS Base:
  Fix Released

Bug description:
  Running 'make distclean' inside a base-7.0 submodule deletes the
  parent module's bin and lib directories. Not a major problem, but a
  little unfriendly and unexpected:

  woz$ git st
  On branch libcom/master
  Your branch is up-to-date with 'origin/libcom/master'.
  nothing to commit, working directory clean
  woz$ make distclean
  /Applications/Xcode.app/Contents/Developer/usr/bin/make -C ./configure realclean 
  rm -rf O.*
  /Applications/Xcode.app/Contents/Developer/usr/bin/make -C ./src realclean 
  rm -rf O.*
  /Applications/Xcode.app/Contents/Developer/usr/bin/make -C ./RTEMS realclean 
  rm -rf O.*
  /Applications/Xcode.app/Contents/Developer/usr/bin/make -C ./test realclean 
  rm -rf O.*
  perl -CSD /Users/anj/Software/epics/base-7.0/bin/darwin-x86/cvsclean.pl
  rm -rf ./../../dbd ./../../include ./../../doc ./../../html ./../../templates ./../../db ./../../adl ./../../alh ./../../cfg ./../../edl ./../../lib/perl ./../../lib/pkgconfig ./../../configure
  rm -rf ./../../bin
  rm -rf ./../../lib

To manage notifications about this bug go to:
https://bugs.launchpad.net/epics-base/+bug/1722535/+subscriptions

Navigate by Date:
Prev: [Bug 1828900] [NEW] dbUnitTest::testdbRecordPtr() is easy to mis-use Andrew Johnson via Core-talk
Next: Re: Excessive scan times for periodic scans Konrad, Martin via Core-talk
Index: 2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  <20192020  2021  2022  2023  2024 
Navigate by Thread:
Prev: [Bug 1722535] Re: 'make distclean' inside a submodule Andrew Johnson via Core-talk
Next: [Bug 1828900] [NEW] dbUnitTest::testdbRecordPtr() is easy to mis-use Andrew Johnson via Core-talk
Index: 2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  <20192020  2021  2022  2023  2024 
ANJ, 13 May 2019 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·