EPICS Controls Argonne National Laboratory

Experimental Physics and
Industrial Control System

1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  <20182019  2020  2021  2022  2023  2024  Index 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  <20182019  2020  2021  2022  2023  2024 
<== Date ==> <== Thread ==>

Subject: Re: base-3.15.5/templates/makeBaseApp/top/iocBoot/ioc/Makefile@Common
From: John Dobbins <[email protected]>
To: Andrew Johnson <[email protected]>
Cc: "[email protected]" <[email protected]>
Date: Mon, 23 Apr 2018 19:30:52 +0000

Andrew,


For the sake of completeness:


I restarted from scratch with 3.15.5 and got same result.


Did same with 3.15.4 and got same result.


3.15.3 works. All of this is consistent with the date of the change you indicated.


Note that if I go to iocBoot/iocmyExample and run make (GNU Make 3.82)  I get


> $ make
make: Nothing to be done for `all'

"make envPaths"  works

> $ make envPaths
perl -CSD /nfs/bbl/online/user/jad22/base-3.15.4/bin/linux-x86_64/convertRelease.pl -t /nfs/bbl/online/user/jad22/example_3.15.4 envPaths

"make clean" produces

$ make clean
make: Nothing to be done for `clean

Contents of iocboot/iocmyExample is

TOP = ../..
include $(TOP)/configure/CONFIG
TARGETS = envPaths
include $(TOP)/configure/RULES.ioc


I did  "make -d"  in iocBoot/iocmyExample  and reproduce the tail here:

Updating goal targets....
Considering target file `all'.
 File `all' does not exist.
  Considering target file `install'.
   File `install' does not exist.
    Considering target file `buildInstall'.
     File `buildInstall' does not exist.
     Finished prerequisites of target file `buildInstall'.
    Must remake target `buildInstall'.
    Successfully remade target file `buildInstall'.
   Finished prerequisites of target file `install'.
  Must remake target `install'.
  Successfully remade target file `install'.
 Finished prerequisites of target file `all'.
Must remake target `all'.
Successfully remade target file `all'.
make: Nothing to be done for `all'.

The target envPaths is not considered. This used to be considered after buildInstall.

John







From: Andrew Johnson <[email protected]>
Sent: Monday, April 23, 2018 11:49 AM
To: John Dobbins
Cc: [email protected]
Subject: Re: base-3.15.5/templates/makeBaseApp/top/iocBoot/ioc/Makefile@Common
 
Hi John,

On 04/22/2018 04:08 PM, John Dobbins wrote:
> I am installing EPICS 3.15.5 on a new filesystem, host is scientific
> linux 7.   Downloaded 3.15.5, set EPICS_HOST_ARCH=linux-x86_64, ran make
> to build base.
>
> Next ran makeBaseApp.pl for an example IOC. 
>
> however envPaths does not appear in iocBoot/iocmyExample when I run make
> in IOC  $(TOP)

Does your Makefile still contain this line?

  TARGETS = envPaths

That's what tells GNUmake to construct that file.

> I see that the Makefile in iocBoot/iocmyExample is missing the line
>
> ARCH = linux-x86_64
>
> Upon investigating I see that
>
> base-3.15.5/templates/makeBaseApp/top/iocBoot/ioc/Makefile@Common
>
> is missing the line
>
>     ARCH = _ARCH_
>
> which appears in my previous installations (3.14.12.2).
>
> 1) should this line still be there (restoring it fixes the problem)

That ARCH variable was explicitly removed from that template file with
this git commit:

> commit 230603f4acf03a8cf147e502626e01a87dae66ce
> Author: Andrew Johnson <[email protected]>
> Date:   Thu Apr 28 18:50:41 2016 -0500
>
>     Remove ARCH from cdCommands and envPaths files
>    
>     Set it in iocshRegisterCommon() instead.
>     Remove ARCH from iocBoot/ioc/Makefile@Common templates.

It shouldn't be needed any more for Unix-like host targets, the envPaths
file is now architecture-neutral; my RHEL7 box happily creates it both
with and without ARCH being set. The ARCH variable is still needed to
create some of the other iocBoot/ioc files though, such as cdCommands
(used for VxWorks targets) and dllPath (Windows targets).

> 2) if yes, any idea where I went astray?

Not yet. This was from inside my iocBoot/iochost directory created from
the example template:

> tux% make clean
> rm -f cdCommands envPaths dllPath.bat relPaths.sh
> tux% cat Makefile
> TOP = ../..
> include $(TOP)/configure/CONFIG
> TARGETS = envPaths
> include $(TOP)/configure/RULES.ioc
> tux% make
> perl -CSD /home/phoebus/ANJ/epics/base/3.15/bin/linux-x86_64/convertRelease.pl -t /home/phoebus3/ANJ/apps/3.15-example envPaths
> tux% cat envPaths
> epicsEnvSet("IOC","iochost")
> epicsEnvSet("TOP","/home/phoebus3/ANJ/apps/3.15-example")
> epicsEnvSet("EPICS_BASE","/home/phoebus/ANJ/epics/base/3.15")
> tux%

- 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: base-3.15.5/templates/makeBaseApp/top/iocBoot/ioc/Makefile@Common Andrew Johnson
References:
base-3.15.5/templates/makeBaseApp/top/iocBoot/ioc/Makefile@Common John Dobbins
Re: base-3.15.5/templates/makeBaseApp/top/iocBoot/ioc/Makefile@Common Andrew Johnson

Navigate by Date:
Prev: Re: ADPointGrey with AD3-2, and base-7.0.1.1 Shen, Guobao
Next: RE: ADPointGrey with AD3-2, and base-7.0.1.1 Gofron, Kazimierz
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  <20182019  2020  2021  2022  2023  2024 
Navigate by Thread:
Prev: Re: base-3.15.5/templates/makeBaseApp/top/iocBoot/ioc/Makefile@Common Andrew Johnson
Next: Re: base-3.15.5/templates/makeBaseApp/top/iocBoot/ioc/Makefile@Common Andrew Johnson
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  <20182019  2020  2021  2022  2023  2024 
ANJ, 23 Apr 2018 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·