Thanks John,
Now tracked at https://bugs.launchpad.net/epics-base/+bug/1766349
- Andrew
On 04/23/2018 03:38 PM, John Dobbins wrote:
> Andrew,
>
>
> In fact on my machine
>
>
> >echo $ARCH
> x86_64
>
> Unsetting it fixed the problem.
>
> Thanks for your follow through.
>
> John
>
>
>
>
> ------------------------------------------------------------------------
> *From:* Andrew Johnson <[email protected]>
> *Sent:* Monday, April 23, 2018 4:24 PM
> *To:* John Dobbins
> *Cc:* [email protected]
> *Subject:* Re:
> base-3.15.5/templates/makeBaseApp/top/iocBoot/ioc/Makefile@Common
>
> Hi John.
>
> On 04/23/2018 02:30 PM, John Dobbins wrote:
>> 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.
>
> Interesting. I just switched to a different account so I shouldn't be
> relying on any personal configurations and created a new makeBaseApp
> example IOC from a different Base-3.15.5 tree, and the result works.
> There's something different about your setup; I'm running RHEL-7.5, but
> I also tried it on RHEl-6.9 with no difference. The difference must be
> due to something in our environments (more below).
>
>> 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.
>
> For comparison, here's my tail from 'make -d':
>
>> 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.
>> Considering target file `envPaths'.
>> File `envPaths' does not exist.
>> Considering target file `../../configure/RELEASE'.
>> File `../../configure/RELEASE' was considered already.
>> Considering target file `../../configure/CONFIG_SITE'.
>> File `../../configure/CONFIG_SITE' was considered already.
>> Finished prerequisites of target file `envPaths'.
>> Must remake target `envPaths'.
>> Invoking recipe from /iocapps2/R3.15.5/base/3-15-5-aes1/configure/RULES.ioc:34 to update target `envPaths'.
>> perl -CSD /iocapps2/R3.15.5/base/3-15-5-aes1/bin/linux-x86_64/convertRelease.pl -t /home/phoebus/EPICS/TEMP/3.15-example envPaths
>> Putting child 0x25652b0 (envPaths) PID 24690 on the chain.
>> Live child 0x25652b0 (envPaths) PID 24690
>> Reaping winning child 0x25652b0 PID 24690
>> Removing child 0x25652b0 PID 24690 from chain.
>> Successfully remade target file `envPaths'.
>> 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'.
>
> So in my case envPaths is seen as a dependency of buildInstall, but it
> isn't in yours. The appropriate build rules are found in the base-3.15
> configure/RULES.ioc file which was not modified when the ARCH variable
> was removed from those Makefiles, but it looks like it probably should
> have been. This part explains why:
>
>> ifeq ($(filter $(ARCH),$(BUILD_ARCHS)),$(strip $(ARCH)))
>> buildInstall$(DIVIDER)$(ARCH) buildInstall: $(TARGETS)
>>
>> clean$(DIVIDER)$(ARCH) clean:
>> $(RM) cdCommands envPaths dllPath.bat relPaths.sh
>> else
>> buildInstall$(DIVIDER)$(ARCH) buildInstall:
>> clean$(DIVIDER)$(ARCH) clean:
>> endif
>
> That if condition assumes that ARCH is set and is one of the words in
> BUILD_ARCHS. If ARCH is unset the if condition is apparently evaluated
> as true, but if your environment has the environment variable ARCH set
> to something that is not a configured EPICS build architecture the else
> branch would be taken and the contents of TARGETS will be ignored.
>
> I set ARCH in my environment to garbage and got the same results as you.
>
> Could you try 'echo $ARCH' and see what you get?
>
> The proper solution might be to set ARCH to $(EPICS_HOST_ARCH) in
> Makefile@Common but I need to think about this a bit to decide what the
> best fix is. There should be other changes to that file if it is to work
> properly with ARCH unset.
>
> Thanks for helping track this down!
>
> - 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
--
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
- 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
- Re: 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
- Re: base-3.15.5/templates/makeBaseApp/top/iocBoot/ioc/Makefile@Common John Dobbins
- Navigate by Date:
- Prev:
Re: base-3.15.5/templates/makeBaseApp/top/iocBoot/ioc/Makefile@Common John Dobbins
- Next:
Re: Security Hardening for EPICS/RTEMS 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
<2018>
2019
2020
2021
2022
2023
2024
- Navigate by Thread:
- Prev:
Re: base-3.15.5/templates/makeBaseApp/top/iocBoot/ioc/Makefile@Common John Dobbins
- Next:
dbReadDatabase in base-7.0 Benjamin Franksen
- 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
<2018>
2019
2020
2021
2022
2023
2024
|