Commit Graph
1223 Commits
Author SHA1 Message Date
Andrew Johnson dbaa045afc Merged compiler-specific include files branch. 2011-09-01 11:42:37 -05:00
Andrew Johnson 2def6a3d80 Move default macros to compilerDependencies.h
Added check in gcc-specific header to error if __clang__ defined
Some versions of clang don't support __has_attribute()
2011-08-31 17:35:18 -05:00
Andrew Johnson 712bb052ef Merged the epicsEvent-api branch.
Modified epicsEventTest.cpp to use the new names.
2011-08-23 18:19:55 -05:00
Jeff Hill a05348d63e merged andrews merge to R3.15 2011-08-19 14:43:35 -06:00
Jeff Hill be1c21fc51 o changed the build system so that we can implement functionality which is compiler specific in a separate file for each compiler. This will avoid accumulating MxN ifdef's where M is the number of OS and N is the number of comilers (worst case). This will make it easier to find code that is compiler specific centralizing all of it under libCom/osi/compiler. That should make it mush easier to port EPICS to run on a new compiler.
o refactored compilerDependencies.h into code that is compiler specific (one libCom/osi/compiler/xxx/compilerDependent.h for each comiler) and code that isnt  libCom/osi/compilerDependencies.h (this is a new location and is no longer in libCom/misc).
2011-08-17 13:57:46 -06:00
Andrew Johnson 8dea585dc2 FreeBSD update to osdSock.h from Gerrit Kuehn. 2011-04-05 12:32:39 -05:00
Jeff Hill 0dab032751 avoid c++ static initialization order issues 2011-04-05 09:23:22 -06:00
Jeff Hill 4b780b1011 avoid c++ static initialization order issues 2011-04-04 17:50:49 -06:00
Jeff Hill fc3e876d57 avoid c++ static initialization order issues 2011-04-04 17:29:51 -06:00
Michael DavidsaverandAndrew Johnson f7fc564556 Fold antelope/flex and asHost into libCom
Build lexer and parser from libCom/Makefile.
Since libCom now includes asLib.c and asLib_lex.c we must build
antelope and flex without linking them to Com.  This works because
they only need epicsTempFile anyway.  However make doesn't like a
subdirectory with the same name as a target object, so the antelope
source directory is now called yacc.  The two main.c files were also
renamed to avoid other build problems.

Merge asHost into Com and remove mentions in CONFIG_BASE

Lots of noise since SRCS must be renamed to Com_SRCS
2011-02-25 15:39:44 -06:00
Jeff HillandAndrew Johnson fd72cb63bf libCom/WIN32: Merged Jeff's fix for bug 717252
o Fixed race condition where win32 thread parm was not pushed onto the
  list before the thread was started, and so if the thread exits very
  quickly it can try to remove a non-existent thread parameter from
  the list.
o This impacts only win32.
2011-02-11 16:33:58 -06:00
Andrew Johnson c698853394 libCom: Merged Jeff's epicsThread change.
When finished waiting for a thread to exit, signal the event in case
other threads are waiting also.
2011-02-11 15:04:04 -06:00
Andrew Johnson 22f1e8201f libCom/WIN32: Merged Jeff's WIN32/osdThread changes
Fixed spelling and other cosmetic changes.
2011-02-11 15:01:39 -06:00
Andrew Johnson b38127450e libCom/WIN32: Merged Jeff's osdTime fix
Fixed last time compare in PLL drift factor update loop.
2011-02-11 14:59:35 -06:00
Andrew Johnson 072b449bb1 libCom: Fixed epicsEvent issues on Win32 and cygwin.
* Removed all epicsShareAPI decorations
* Return value from Win32 epicsEventTrigger() inverted
* Return OK from posix epicsEventTrigger() omitted.
2011-02-08 14:17:47 -06:00
Andrew Johnson 77192b3228 libCom: Reworked the epicsEvent APIs
* Renamed the enum epicsEventWaitStatus to epicsEventStatus
* Defined epicsEventWaitStatus as a macro for epicsEventStatus
* Renamed epicsEventWaitOk to epicsEventOk
* Renamed epicsEventWaitError to epicsEventError
* Defined epicsEventWaitOK and epicsEventWaitError as macros
* Added epicsEventTrigger(id) which triggers an event and returns OK or an
    error status if the underlying OS primitives report an error
* Added epicsEventMustTrigger(id) which halts on error
* Defined epicsEventSignal(id) as a macro for epicsEventMustTrigger(id)
* Added a new C++ method epicsEvent::trigger() which throws an
    epicsEvent::invalidSemaphore in the event of an error
* epicsEvent::signal() makes an inline call to epicsEvent::trigger()
* epicsEventWait() and epicsEventWaitWithTimeout() now return an error
    status if the underlying OS primitives report an error
* All the epicsEventMust...() routines are now implemented in the common
    libCom/osi/epicsEvent.cpp source file, and call cantProceed() instead of
    mis-using assert()
* Implemented epicsEventShow() on Posix
2011-02-08 12:02:08 -06:00
Jeff Hill 5a11866431 when finished waiting for a thread to exit, signal the event in case other threads are waiting also 2011-01-14 18:01:53 -07:00
Jeff Hill 253036c36c o committing merge of r3.14 trunk change
o fixed spelling and other cosmetic changes
2011-01-14 18:00:02 -07:00
Jeff Hill 793639f4da fixed last time compare in PLL drift factor update loop 2011-01-14 17:56:49 -07:00
Andrew Johnson 9a831f9dc5 libCom: Simplify libCom/Makefile by splitting into parts
Each SRC_DIR gets its own Makefile fragment, and where it needs
private build rules a RULES files.

If this pattern gets used elsewhere we could automate the include
lines (search $(SRC_DIRS) for Makefiles and RULES files?).
2010-12-10 15:23:42 -06:00
Andrew Johnson e71785edf6 libCom/devLib: Make unsolicitedHandlerEPICS() visible
This symbol is required to be visible on non-PowerPC (68k) vxWorks
systems for devInterruptInUseVME() to recognize interrupt vectors
that the devDisconnectInterruptVME() routine has marked as not used.
2011-07-21 16:10:50 -05:00
Andrew Johnson 2477bf52e6 libCom: Cygwin socket unblocking again...
It helps to include the cygwin header file that
actually has the version number in it...
2010-11-04 14:24:13 -05:00
Andrew Johnson e7179fc289 libCom: Fix cygwin socket shutdown issue.
Cygwin 1.7 changed the socket shutdown method from BothShutdown
to Close. This fix looks at the cygwin version to work out what
value to return from esscimqi().
2010-11-04 13:30:44 -05:00
Janet Anderson 143fef7508 Modified test for _MINGW and _TIMESPEC_DEFINED. 2010-10-26 16:48:40 -05:00
Janet Anderson 87e670f5ca Added ifdef around timespec definition for MinGW build. 2010-10-26 16:25:30 -05:00
Andrew Johnson 66864fcb23 libCom/osi: More NTP time quality checking.
Reject NTP timespec values before the EPICS epoch.
2010-10-22 17:34:13 -05:00
jba 2957fdcaf7 Changed (DWORD*) to (const ULONG_PTR*) to avoid windows-x64 debug build
error.
2010-10-22 17:08:41 -05:00
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 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 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 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
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 0f431edbe6 Add support for vxWorks 6.8. 2010-07-29 12:39:54 -05:00
unknownandAndrew Johnson 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 DavidsaverandMichael Davidsaver 5ce74f2a41 include compatibility definition of pdevLibVirtualOS 2010-05-28 12:04:46 +01:00
Michael DavidsaverandMichael 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 DavidsaverandMichael Davidsaver eaf07d4f05 copyright boilerplate for devLibVME 2010-05-26 17:17:26 +01:00
Michael DavidsaverandMichael Davidsaver a161e42e82 [PATCH 11/12] remove unimplimented PCI api 2010-05-25 13:58:52 +01:00
Michael DavidsaverandMichael 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 DavidsaverandMichael Davidsaver 50bcef9c63 [PATCH 09/12] rename vme pointer table 2010-05-25 13:58:50 +01:00
Michael DavidsaverandMichael Davidsaver 000c98dbaa [PATCH 08/12] fix includes 2010-05-25 13:58:50 +01:00
Michael DavidsaverandMichael Davidsaver 4a3b4358c3 [PATCH 07/12] rename devLib to devLibVME 2010-05-25 13:58:49 +01:00