Michael Davidsaver
f405b444a3
errlog: nicer exit handler name
2014-06-23 16:28:19 -04:00
Michael Davidsaver
a28a561d8a
epicsExit: optional debug printing
...
Add a flag to cause a string to be printed
before each handler is run to show the order.
2014-06-23 16:28:18 -04:00
Andrew Johnson
9e1ebf8d0f
Clean up build warnings from Darwin (clang).
2014-05-30 12:36:50 -05:00
Andrew Johnson
7dd5e217f6
Merged Ralph's get-cpus branch.
2014-05-19 09:44:05 -05:00
Ralph Lange
722d5eeba7
libCom/osi: use epicsThreadGetCPUs implementation from thread-pool branch (posix, WIN32)
2014-05-18 17:24:38 +02:00
Andrew Johnson
f24dafa1e0
libCom: Adjust the Posix epicsMutexOSD structure
...
Make pthread_mutex_t lock the first member of the
parent structure, so it's easy to convert between them.
2014-04-01 11:09:36 -05:00
Andrew Johnson
4b18edc586
Merged changes from 3.14 branch.
...
Up to revno 12479.
2014-03-13 15:04:31 -05:00
Andrew Johnson
f5b9db9583
libCom: Fix epicsString.h comparison functions
...
The string comparison functions epicsStrCaseCmp() and
epicsStrnCaseCmp() were returning incorrect results
when the strings did not match.
These functions now match their BSD equivalents, and
have working tests to confirm their operation.
2014-03-11 17:12:41 -05:00
Andrew Johnson
5bdd9ddca6
Windows: Fix static builds on MinGW
...
Xiaoqiang Wang proposed some fixes that allow static builds on
the MinGW targets to succeed. Some additional changes made to
blockingSockTest.cpp also clean that up.
2014-02-25 15:56:13 -06:00
Andrew Johnson
0dc2746d68
libCom: Added echo command to iocsh
2014-02-21 15:49:15 -06:00
Andrew Johnson
1a70f1e347
libCom: Added macro EPICS_UNUSED to compilerDependencies.h
...
Stop unnecessary warnings.
2014-02-20 18:05:42 -06:00
Andrew Johnson
3fd8d4515c
libCom/test: Finish converting blockingSockTest to epicsUnitTest
...
Don't call assert() from a test program,
it stops the tests from running if the assert fails.
2014-02-20 16:36:58 -06:00
a3354f5db9
libCom: NTP Time Provider adjusts to OS tick rate changes
...
Allow the NTP Time provider (used on VxWorks and RTEMS only)
to adapt to changes in the OS clock tick rate after the provider
has been initialized.
Changing the tick rate after iocInit() is not advisable,
other software might still misbehave if initialized before
an OS tick rate change.
2014-02-13 10:09:12 -06:00
Andrew Johnson
e1e389a2dd
Low-memory behaviour fixes.
...
Fix unchecked buffer allocation in dbChannel.c
Replace calls to epicsStrDup() with checked malloc() for
things that happen often after iocInit.
Michael Davidsaver pointed out this issue.
2014-02-07 17:19:28 -06:00
Andrew Johnson
502366fdc3
epicsMutex C++ API: New constructor and newEpicsMutex macro
...
The new constructor accepts source file & line number.
The macro passes these in.
2014-02-07 14:13:12 -06:00
Andrew Johnson
b32127c5de
libCom: Fix epicsTime::strftime() roll-over bug
...
Fractional seconds could round-up to .000 without
incrementing the integer seconds.
We can't actually do the latter, so we prevent the
roll-over and clamp at all 9's instead.
Idea from Eric Norum.
2014-01-29 16:52:22 -06:00
Andrew Johnson
dbb8d232ee
libCom/test: Losen the timer error threshold.
...
Windows was consistently failing the fastest timer tests.
2013-12-17 17:13:27 -06:00
unknown
b93601bc22
libCom/test: epicsStrGlobMatch() tests
2013-12-17 16:37:46 -06:00
Andrew Johnson
9e37ab649b
libCom: Clear up warnings from VxWorks 6.9.
2013-12-17 14:19:18 -06:00
Andrew Johnson
0a2020e2fc
Merged changes from 3.14 branch
...
Up to 3.14.12.4 release.
2013-12-17 12:54:04 -06:00
Andrew Johnson
97636a45e0
libCom: Remove epicsShareAPI from epicsExit APIs
...
Passing epicsExitCallAtExits into atexit() was generating
a warning about passing in a __stdcall routine pointer.
2013-12-16 14:52:29 -06:00
Andrew Johnson
a50c66b6ff
libCom/test: Added epicsEnvTest.c
...
VxWorks 6.x can make environment variables private to each
thread, which doesn't work too well.
A test failure on VxWorks explains how to change the image
configuration to fix this.
2013-12-16 12:48:25 -06:00
Andrew Johnson
197e992241
Fixed iocsh stream redirection for several commands
...
Eric provided the fixes to iocsh (empty commands would not reset
redirected streams), I fixed various commands.
2013-12-11 17:50:29 -06:00
Andrew Johnson
78a4e462d5
libCom: Recognize hex literals in epicsStrtod()
...
Allows Windows and VxWorks to accept hex integers as a double.
2013-12-02 11:12:19 -06:00
Jeff Hill
b38e48642e
probably fixed PPC build (its not easy to test this here)
2013-11-20 17:55:44 -07:00
Andrew Johnson
773eb1b33d
Clean up array subscript has type ‘char’ warnings.
2013-11-20 17:28:41 -06:00
Jeff Hill
0a86ec01fa
o fixed spelling in comments
...
o fixed warnings during MSVC based build
2013-11-20 10:51:14 -07:00
Andrew Johnson
93be1400c1
Fixed various 64-bit windows build issues.
2013-11-19 18:42:45 -06:00
Andrew Johnson
176ee926ad
cygwin: Fixed SocketSystemCallInterruptMechanism
...
Cygwin changed it back again.
2013-11-19 18:41:03 -06:00
Andrew Johnson
2d52067484
libCom: Clean up build warnings from Visual Studio.
2013-11-19 15:26:22 -06:00
Andrew Johnson
4d64941bd2
libCom: truncateFile size arg should be unsigned long
...
It gets compared against LONG_MAX and cast to a long, so now
we have architectures where int != long we must distinguish them
2013-11-15 17:24:33 -06:00
Andrew Johnson
66209118f6
libCom/macLib: Don't use unsigned chars in macParseDefns()
...
These pointers are really pointing to standard chars.
2013-11-13 12:39:23 -06:00
Jeff Hill
280ff742c5
fix for mingw gcc V3 build
2013-11-07 18:56:17 -07:00
Andrew Johnson
72d65c60a4
epicsErrlogTest: Shorten output lines
...
Shorten test output from long messages.
2013-09-20 13:44:28 -05:00
Andrew Johnson
01f0fdbf1e
More file permission fixes.
2013-08-19 15:46:51 -05:00
Janet Anderson
d3b6d01807
Added WIN32 system library for epicsSockResolveTest
2013-07-17 15:55:49 -05:00
Andrew Johnson
c96db4c877
libCom: Replaced errlogRemoveListener()
...
New version errlogRemoveListeners() is safer.
2013-06-28 12:35:43 -05:00
Andrew Johnson
2be5e15346
Merged changes from 3.14 branch
...
Up to revno 12420 inclusive.
2013-06-07 18:08:38 -05:00
Andrew Johnson
ef5d88d3e5
libCom: Back-ported aToIPAddr fix from 3.15 branch.
...
Cherry-picked 3.15 revno 12398 with some changes.
2013-06-07 17:03:55 -05:00
Andrew Johnson
863e8fdd3b
libCom: Fix VxWorks localtime_r() and gmtime_r() wrappers
...
Wind River changed the return value between VxWorks 6.8 and 6.9.
2013-06-07 14:35:45 -05:00
Andrew Johnson
7f82c2f32e
libCom: Added osi/os/WIN32/osdFindSymbol.c
...
Implemented by Dirk Zimoch.
2013-05-28 14:16:22 -05:00
Andrew Johnson
7addfc8ddd
libCom/test: Make epicsUnitTestTest.plt more Perlish
...
Use Perl's __DATA__ stream for the expected data string.
2013-05-24 15:33:56 -05:00
Andrew Johnson
34744264e1
libCom: Fix win32 handle leak
...
Closing an epicsThread would leak one Win32 handle.
Reported by Giles Knap, Diamond.
2013-05-06 17:29:10 -05:00
Andrew Johnson
7e347b2de9
libCom: Fix sysAtReboot registration on vxWorks 6.8+
...
Removed C++ static constructor, do it from epicsThreadInit()
2013-04-24 12:52:05 -05:00
Andrew Johnson
5bc15b72a1
libCom: Add some missing #include guards.
...
There are still quite a few missing in libCom/osi/os/*
2013-04-11 12:56:56 -05:00
Andrew Johnson
f9a0c82a63
libCom/osi: Resolve bcopyLongs() conflict on vxWorks 6.9
2013-03-28 17:17:41 -05:00
Ralph Lange
90b9965caf
libCom/osi: add epicsThreadGetCPUs()
...
* Implementation for posix and WIN32 tries to get the CPUs available for this process,
rather than the complete number of CPUs in the system.
* For the time being, vxWorks returns 1. (This will have to change for vxWorks SMP.)
2013-03-28 15:03:29 +01:00
Ralph Lange
64a2e4e19b
libCom/osi: Make EPICS ID in epicsThreadShow 2 characters wider (for 64bit)
2013-03-27 10:56:34 +01:00
Andrew Johnson
4f9928bc3c
Merged changes from 3.14 branch
...
Up to revno 12404.
2013-03-15 15:23:55 -05:00
Andrew Johnson
738b8ca55f
libCom: Add a High-Resolution Time Provider on MacOS
...
Since Apple don't support clock_gettime(CLOCK_REALTIME) I added a
new time provider that uses the Mach kernel Clock service to get
nanosecond resolution time.
2013-03-13 14:48:34 -05:00