EPICS Controls Argonne National Laboratory

Experimental Physics and
Industrial Control System

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

Subject: Re: Daylight savings time
From: Eric Norum <[email protected]>
To: tech-talk tech-talk <[email protected]>
Date: Tue, 13 Mar 2007 17:27:06 -0500
After some more investigation it appears that nothing needs to be changed. None of the systems we looked at need an explicit call to tzset() after changes are made to TZ.

I was misled by a bug in the current newlib implementation of these routines. The bug should affect only RTEMS IOCs. Until this bug is fixed it is necessary to explicitly specify the daylight savings time offset from UTC:

epicsEnvSet TZ "CST6CDT5,M3.2.0,M11.1.0"



On Mar 13, 2007, at 11:34 AM, Eric Norum wrote:

I think that WIN32 does provide this routine -- at least my quick check with google seems to imply this.
The vxWorks case is a little trickier. I suppose that someone out there actually uses the IOC shell rather than the vxWorks shell.
What's' your feeling on weak references?
How about an epicsTzset() macro in some os-dependent header. This would do nothing on vxWorks and expand to tzset() on all others.


On Mar 13, 2007, at 11:17 AM, Andrew Johnson wrote:

Eric Norum wrote:
Since we're on the topic of time, I'd like to propose the following change to the IOC shell. This is in the handler function for the epicsEnvSet command.
...
epicsEnvSet (name, value);
+ if (strcmp(name, "TZ") == 0) {
+ extern void tzset(void);
+ tzset();
+ }
}
This will ensure that changes to the TZ environment variable (in an st.cmd file, for example) actually have an effect.

That change is not portable; according to my reference manual vxWorks doesn't have a tzset() routine, and I have similar doubts about WIN32. Maybe the correct solution would be to register an OS- specific command that can set the IOC's timezone data?


--
The right to be heard does not automatically include
the right to be taken seriously. -- Hubert H. Humphrey

-- Eric Norum <[email protected]> Advanced Photon Source Argonne National Laboratory (630) 252-4793



-- Eric Norum <[email protected]> Advanced Photon Source Argonne National Laboratory (630) 252-4793



References:
Daylight savings time Thompson, David H.
Re: Daylight savings time Lawrence T. Hoff
Re: Daylight savings time Andrew Johnson
Re: Daylight savings time Eric Norum
Re: Daylight savings time Andrew Johnson
Re: Daylight savings time Eric Norum

Navigate by Date:
Prev: RE: Darwin and EPICS_CA_AUTO_ADDR_LIST issue Jeff Hill
Next: Controls developer position open at Fermilab in Batavia, IL Margaret Votava
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  <20072008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
Navigate by Thread:
Prev: Re: Daylight savings time Andrew Johnson
Next: RE: Daylight savings time Gurd, Pamela A.
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  <20072008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
ANJ, 10 Nov 2011 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·