Commit Graph

2902 Commits

Author SHA1 Message Date
Andrew Johnson
f1a00dd667 libCom/osi: Warn if NTP time stops or decreases.
Add warnings if the NTP time provider sees NTP time stopping or going
backwards.  Should never happen, but...
2010-10-20 11:44:48 -05:00
Ralph Lange
3df265103d libcom/osd/rtems: Fix by M. Davidsaver to use an epheremal receiver port for the NTP synchronization. 2010-10-20 10:35:51 -04:00
Andrew Johnson
ed916cd1b3 Delete osf-alpha target (and host) support, no longer working or needed at KEK. 2010-10-14 14:01:40 -05:00
Andrew Johnson
6f8c946d76 libCom: Recognize -pre and -rc in version snapshot. 2010-10-08 15:17:55 -05:00
Andrew Johnson
881d13ac07 Merged the expand-calc-size branch.
This allows calc and calcout record expressions to be up to
79 characters long, and shortens the postfix buffer needed by
introducing integer literals.  Also removes the length limit
for access security CALC expressions.
2010-10-07 14:16:24 -05:00
Andrew Johnson
fbda9f3280 RCS keyword updates for Bazaar
Replaced $Id$ and $Header$ keywords with $Revision-Id$
Deleted $Log$ keywords and any log messages
2010-10-05 14:27:37 -05:00
Andrew Johnson
5d17059cb1 libCom: Changes to epicsVersion.h generation
Use DEV instead of CVS in names.
Lower-case the -rc<n> status strings.
Rename CVS_DATE to COMMIT_DATE.
No Bazaar equivalent to the CVS tag $Name$ exists.
Modernize and "use strict" in the Perl code.
2010-10-05 13:33:35 -05:00
Andrew Johnson
6d1cc23a7e libCom/test: Enhanced epicsCalcTest.
Added testArgs() function and tests, and more bad expression tests.
2010-10-04 13:39:02 -05:00
Andrew Johnson
bb7d8d6435 libCom/calc: Added integer literals, which use less space in Postfix.
Renamed LITERAL to LITERAL_DOUBLE and added LITERAL_INT.
postfix() only uses LITERAL_INT if the results are identical.
Adjusted INFIX_TO_POSTFIX_SIZE() macro to match.
Cleaned up some other internal issues.
2010-10-04 13:32:34 -05:00
Andrew Johnson
641aa70eb1 libCom/test: Added Michael Davidsaver's unit tests for errlog 2010-09-30 14:36:30 -05:00
Andrew Johnson
48aabfc6ad libCom/test/epicsStringTest: %Zd isn't portable. 2010-09-29 17:44:10 -05:00
Andrew Johnson
eaaea901e0 libCom: fix epicsNAN generation on vxWorks. 2010-09-29 17:42:10 -05:00
Andrew Johnson
46c21d276b Merged the apple-ios branch, iPad & iPhone target support! 2010-09-23 15:48:23 -05:00
Andrew Johnson
9678b69c1e libCom/errlog: Rewrote msgbufGetNode() to use buffer better.
Michael Davidsaver pointed out that the original algorithm used is
dumb, it can't reuse empty space at the beginning until all messages
have been drained.  This new version can, and is more efficient.
2010-09-23 15:41:55 -05:00
Andrew Johnson
5b860ec3ec libCom: Use SIG_IGN to ignore signals.
Simplified the code in osdSignal, also solves problems if a handler is
already installed that uses the 3-argument callback.
2010-09-23 15:09:03 -05:00
Andrew Johnson
eacb6602bc libCom: Use OS NAN and INFINITY macros where available.
bug: 545385
2010-09-23 14:18:03 -05:00
Andrew Johnson
4e99cfc763 Added target support for Apple's iOS devices.
Tom Pelaia II and Mark Engbretson contributed the build configuration
and OS-dependent files, I modified the build config to bring it up to
R3.14.12 standards and added the Release Notes.
2010-09-22 16:26:15 -05:00
Michael Davidsaver
aee66600ef errPrintf() newline fix.
errPrintf() was adding a newline when writing to the err log buffer,
but not when printing to the screen.  This results in the error
message running together with the next line.  Added a newline to the
stderr output.
2010-09-01 14:56:51 -05:00
Andrew Johnson
a6a01e6822 Converted buckTest.c to use epicsTime.h instead of time.h
This should finally resolve the build conflict between RTEMS-uc5282
and Windows, and remove the build warning on vxWorks.
2010-08-17 17:53:43 -05:00
Jeff Hill
a3dd3e1a2f unistd.h isnt available on windows, and doesnt appear to be required by this code? 2010-08-16 17:34:39 -06:00
Andrew Johnson
09c0c43865 Cleanup a couple of compiler warnings. 2010-08-16 16:15:26 -05:00
Jeff Hill
c1bd11de58 fixed bug where win32 version of epicsThreadHighestPriorityLevelBelow didnt map to a lower priority successfully if the epics priority was mapping into the 2nd win32 priority bucket 2010-08-13 18:15:49 -06:00
Andrew Johnson
a0fb7fbed7 Clean up warnings from vxWorks 6.8.
Added back the -include vxWorks.h option for gcc with vxWorks 6,
it resolves many warnings about OFFSET being redefined.
2010-08-11 10:45:17 -05:00
Andrew Johnson
eda402cf66 Merged Ralph's ca-over-tcp branch.
Fixed some vxWorks compile errors, and made a number of edits
to the HTML in the CAref.html documentation.
2010-08-10 16:05:46 -05:00
Andrew Johnson
cc95161af0 Merged base-tests branch from epics-base-testing team.
Modified testspec output to omit Tests: line when empty
Added testspec generation to src/db/test/Makefile.
2010-08-04 14:16:14 -05:00
Andrew Johnson
0f431edbe6 Add support for vxWorks 6.8. 2010-07-29 12:39:54 -05:00
Eric Norum
31326b8b9f Add RTEMS R4.10 support 2010-07-23 09:21:02 -07:00
unknown
6cfb241404 Fix RTEMS build issue finding close() 2010-07-19 14:01:41 -05:00
Andrew Johnson
c33607f2d2 Merged Michael's devlib-cleanup branch 2010-07-01 11:59:22 -05:00
Ralph Lange
bb740373bc Fix: Replaced C++ style comments in C code with standard C comments. 2010-06-16 15:46:09 -04:00
Michael Davidsaver
5ce74f2a41 include compatibility definition of pdevLibVirtualOS 2010-05-28 12:04:46 +01:00
Nick Rees
31790737e4 Added Andrews changes to RULES_BUILD to generate a hint file for the runner 2010-05-27 15:36:52 +01:00
unknown
8337b5063d Fix NULL handle issue 2010-05-27 05:47:07 -05:00
Michael Davidsaver
7d3986664e fix typo in rtems internal function names
Not externally visible so no reason not to fix
2010-05-27 09:35:29 +01:00
Michael Davidsaver
eaf07d4f05 copyright boilerplate for devLibVME 2010-05-26 17:17:26 +01:00
Michael Davidsaver
a161e42e82 [PATCH 11/12] remove unimplimented PCI api 2010-05-25 13:58:52 +01:00
Michael Davidsaver
c1142675b6 [PATCH 10/12] move general macros and error codes to devLib.h
includes devLibVME.h for compatibility
2010-05-25 13:58:51 +01:00
Michael Davidsaver
50bcef9c63 [PATCH 09/12] rename vme pointer table 2010-05-25 13:58:50 +01:00
Michael Davidsaver
000c98dbaa [PATCH 08/12] fix includes 2010-05-25 13:58:50 +01:00
Michael Davidsaver
4a3b4358c3 [PATCH 07/12] rename devLib to devLibVME 2010-05-25 13:58:49 +01:00
Michael Davidsaver
46ec38756b [PATCH 06/12] use epics extern macro 2010-05-25 13:58:46 +01:00
Michael Davidsaver
e21cde013d [PATCH 05/12] reorganize devLib.h
Group functions by bus type with general functions at the top

add macro to exclude deprecated api
2010-05-25 13:58:45 +01:00
Michael Davidsaver
83adda7e6c [PATCH 04/12] move "virtual os" definition to a seperate file
The virtual os table is not something ordinary devLib users
should know or care about.
2010-05-25 13:58:44 +01:00
Michael Davidsaver
ad8cd28f7d [PATCH 03/12] mark all implimentation functions as static 2010-05-25 13:58:43 +01:00
Michael Davidsaver
acb905fcfc [PATCH 02/12] add devInterruptInUseVME to function table
Add test for interrupt handler function to the virtual os table.
Adds a stub implementation to devLib.c
Renames OS implementations functions for RTEMS and vxWorks to avoid symbol name conflicts
2010-05-25 13:58:43 +01:00
Michael Davidsaver
62d035c310 [PATCH 01/12] add jumping VME interrupt routines to independent implementation
Adds implementations which use the virtual os table to invoke the
OS specific call.

rename conflicting functions
2010-05-25 13:58:42 +01:00
Andrew Johnson
6790acf78f Fix for hang from Ron Sluiter. 2010-05-18 16:12:36 -05:00
Andrew Johnson
6eb36e1224 Fix build on Windows. 2010-05-18 16:10:07 -05:00
Andrew Johnson
6b64304570 Optimize epicsThreadOnce() routines.
Don't call epicsThreadGetIdSelf() unnecessarily, check for the value
EPICS_THREAD_ONCE_DONE first, since that's the most common state.
2010-05-14 17:26:54 -05:00
Andrew Johnson
6cd22d4efe Don't call errlogPrintf() in epicsThreadGetOsiPriorityValue()
This is a partial fix of a WIN32-only problem Mark Rivers reported.
A WIN32 thread created by a manufacturer's library is used to call one
of his callback routines, which tries to use an epics facility that has
an epicsThreadOnce().  The new version of epicsThreadOnce() uses
epicsThreadGetIdSelf() to detect recursive initialization; the thread
doesn't have an epicsThreadId yet, so epicsThreadImplicitCreate() is
asked to make one.  It calls epicsThreadGetOsiPriorityValue(), but
osdPriority is 15 which is not known by that code, so it reports an
error by calling errlogPrintf().  That checks epicsThreadIsOkToBlock()
which calls epicsThreadOnce() but that needs our epicsThreadId...

This doesn't solve the issue of the unknown osdPriority value 15
(priorityClass = 32), but it allows the IOC to continue working with
just a warning message at init time.

It also points out that calling epicsThreadGetIdSelf() every time we
check an epicsThreadOnce() is probably not good for performance.
2010-05-14 16:49:32 -05:00