EPICS Controls Argonne National Laboratory

Experimental Physics and
Industrial Control System

2002  2003  2004  2005  2006  2007  2008  2009  <20102011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024  Index 2002  2003  2004  2005  2006  2007  2008  2009  <20102011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
<== Date ==> <== Thread ==>

Subject: Re: src/ reorganization
From: Andrew Johnson <[email protected]>
To: [email protected]
Date: Fri, 10 Dec 2010 13:41:09 -0600
Hi Michael,

On Friday 10 December 2010 11:47:32 Davidsaver, Michael wrote:
> In the interest of not doing too much at once I'd like to do the
> reorganization in stages.  The first stage to be just moving whole
> directories.  The second would be file moves.  Third would be merging
> the lib*Ioc libraries.  The intent is that to ensure that things remain
> buildable after each step.

Sounds good.  Please remember to check that the makeBaseApp templates still 
work while you're doing that.

> If there aren't major changes then next week I will create a branch with
> these changes and request a merge.
>
> The first stage will look like:
> > == Full list of renames
> >
> > tools      = tools
> > libCom     = libCom
> > toolsComm  = libCom/tools
> > RTEMS      = libCom/RTEMS
> > as         = ioc/as
> > bpt        = ioc/bpt
> > db         = ioc/db
> > dbStatic   = ioc/dbStatic
> > dbtools    = ioc/dbtemplate
> > misc       = ioc/misc
> > registry   = ioc/registry
> > rsrv       = ioc/rsrv
> > dev/softDev= std/dev
> > dev/testDev= std/test
> > rec        = std/rec
> > softIoc    = std/softIoc
> > ca         = ca/client
> > cap5       = ca/client/perl
> > catools    = ca/client/tools
> > cas        = ca/legacy/pcas
> > excas      = ca/legacy/pcas/ex
> > gdd        = ca/legacy/gdd
> > makeBaseApp= template/base
> > makeBaseExt= template/ext
> > util       = util

One question about the layout: I'm wondering whether in the final structure 
individual directories should either be a branch node or a leaf node, i.e. 
they should either contain sub-directories and a Makefile, or they contain 
source files and a Makefile, but never both.  Your ca/client and 
ca/legacy/pcas directories are currently mixed nodes.

The existing db directory is structurally a mixed node, but to the build 
system the db/test directory is an immediate child of the src/Makefile.

The libCom directory is a weird combination, because while there are no source 
files in src/libCom that's where the Makefile is that compiles everything and 
where the O.* directories are created.  Most of the libCom/* sub-directories 
do not contain Makefiles, except for libCom/test which the build system treats 
as another immediate child of src/Makefile.

Was your intention to follow the libCom model for source directories?  My 
worry is that the libCom/Makefile is unwieldy because it has to name all of 
the files in the different sub-directories.  I am looking at a fix for that 
though, moving those parts into Makefile fragments that live next to their 
associated source files.

- Andrew
-- 
If a man is offered a fact which goes against his instincts, he will
scrutinize it closely, and unless the evidence is overwhelming, he will
refuse to believe it.  If, on the other hand, he is offered something
which affords a reason for acting in accordance to his instincts, he
will accept it even on the slightest evidence.  -- Bertrand Russell


Replies:
RE: src/ reorganization Davidsaver, Michael
References:
src/ reorganization Davidsaver, Michael
RE: src/ reorganization Davidsaver, Michael

Navigate by Date:
Prev: Re: src/ reorganization Ben Franksen
Next: Re: src/ reorganization Andrew Johnson
Index: 2002  2003  2004  2005  2006  2007  2008  2009  <20102011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
Navigate by Thread:
Prev: Re: src/ reorganization Andrew Johnson
Next: RE: src/ reorganization Davidsaver, Michael
Index: 2002  2003  2004  2005  2006  2007  2008  2009  <20102011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
ANJ, 02 Feb 2012 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·