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  <20102011  2012  2013  2014  2015  2016  2017  2018  2019  Index 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  <20102011  2012  2013  2014  2015  2016  2017  2018  2019 
<== Date ==> <== Thread ==>

Subject: Re: Building StreamDevice 2-4 / SynApps / Win32
From: "J. Lewis Muir" <jlmuir@anl.gov>
To: EPICS Tech-Talk <tech-talk@aps.anl.gov>
Date: Fri, 12 Mar 2010 09:52:15 -0600
On 3/12/10 9:39 AM, J. Lewis Muir wrote:
> On 3/12/10 9:34 AM, John Dobbins wrote:
>> J. Lewis Muir wrote:
>>> On 3/11/10 10:55 PM, Mark Rivers wrote:
>>>> I don't think shell is important on Windows, you can build EPICS in a
>>>> Cygwin bash shell or a Windows cmd shell without having to worry about
>>>> it.
>>>
>>> Hi, Mark.
>>>
>>> Note I'm not talking about the shell from which the make command is
>>> executed; I'm talking about the shell that make uses to execute commands
>>> for a given target.
>>>
>>> Lewis
>>
>>
>> Lewis, Mark, All,
>>
>> It seems to me that an easy thing would be to write a Perl script that
>> replicates this code (which is just generating a test file):
>>
>> # create stream.dbd from all RECORDS
>> $(COMMON_DIR)/$(LIBRARY_DEFAULT).dbd: ../CONFIG_STREAM
>>     @for r in $(RECORDS); \
>>     do     echo "device($$r,INST_IO,dev$${r}Stream,\"stream\")"; \
>>     done > $@
>>     @echo "driver(stream)" >> $@
>>     @echo "variable(streamDebug, int)" >> $@
>>     @echo "registrar(streamRegistrar)" >> $@
>>
>> endif
>>
>> I can do that but am not sure about how to invoke the Perl script and
>> pass from $(RECORDS) to the Perl script.
>> It would be nice to not have this one part of EPICS dependent on cygwin
>> when the rest it not.
> 
> Hi, John.
> 
> That would work, but I'm not convinced this one part is dependent on
> Cygwin.  I still think the problem is just that the target commands are
> getting passed to either the wrong shell or a broken shell.

Hi, John.

Could you try setting the SHELL make variable when you run make?

1. Find where your sh binary is (this example is from a Bourne shell):

   $ which sh
   /bin/sh

2. Run make with the SHELL variable set to the location of the sh
   binary:

   $ make SHELL=/bin/sh

Lewis

References:
Building StreamDevice 2-4 / SynApps / Win32 John Dobbins
RE: Building StreamDevice 2-4 / SynApps / Win32 Mark Rivers
RE: Building StreamDevice 2-4 / SynApps / Win32 John Dobbins
RE: Building StreamDevice 2-4 / SynApps / Win32 Mark Rivers
Re: Building StreamDevice 2-4 / SynApps / Win32 J. Lewis Muir
Re: Building StreamDevice 2-4 / SynApps / Win32 John Dobbins
Re: Building StreamDevice 2-4 / SynApps / Win32 J. Lewis Muir
RE: Building StreamDevice 2-4 / SynApps / Win32 Mark Rivers
Re: Building StreamDevice 2-4 / SynApps / Win32 J. Lewis Muir
Re: Building StreamDevice 2-4 / SynApps / Win32 John Dobbins
Re: Building StreamDevice 2-4 / SynApps / Win32 J. Lewis Muir

Navigate by Date:
Prev: Re: Building StreamDevice 2-4 / SynApps / Win32 John Dobbins
Next: Re: Building StreamDevice 2-4 / SynApps / Win32 J. Lewis Muir
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  <20102011  2012  2013  2014  2015  2016  2017  2018  2019 
Navigate by Thread:
Prev: Re: Building StreamDevice 2-4 / SynApps / Win32 Andrew Johnson
Next: Re: Building StreamDevice 2-4 / SynApps / Win32 Dirk Zimoch
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  <20102011  2012  2013  2014  2015  2016  2017  2018  2019 
ANJ, 02 Sep 2010 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·