Commit Graph

3019 Commits

Author SHA1 Message Date
Andrew Johnson
2905b5bb72 Parallel build rule fixes 2011-11-14 18:28:26 -06:00
Andrew Johnson
ab4376c54a Merge 3.14 changes up to 3.14.12.2-pre1 release 2011-11-14 17:42:50 -06:00
Jeff Hill
6ef52b5d03 fixed launchpad bug 697509, Thread synchronization issue in libCom/osi/os/WIN32/osdTime.cpp 2011-11-10 17:34:47 -07:00
Jeff Hill
652235ef13 fixed LP Bug #697517, WIN32 osdtime should handle the system time change properly 2011-11-10 17:22:22 -07:00
Jeff Hill
5b46eebe1a fixed LP bug 697516, PLL time adjustments fail if user sets system time before EPICS epoch 2011-11-10 14:52:22 -07:00
Jeff Hill
a252218e69 fixed launchpad bug 697519 (rollover time diff calc off by two ticks) 2011-11-10 14:03:01 -07:00
Andrew Johnson
bb14c6594b Win32: Fix for lp:861214 2011-11-08 15:57:15 -06:00
Andrew Johnson
b36b07db9e Clean up some compiler warnings reported by J. Lewis Muir. 2011-11-07 11:58:09 -06:00
Andrew Johnson
4d0c0f4b51 Merged changes from 3.14 branch up to 2011-11-02 2011-11-02 14:59:18 -05:00
Michael Davidsaver
5c8e6e9224 libCom: printf spec for cantProceed 2011-10-28 15:30:08 -05:00
Andrew Johnson
0b92d61a14 libCom/test: Added epicsTypesTest, checks type sizes. 2011-10-28 15:19:54 -05:00
Till Straumann
6c4164d953 libCom: Second fix for RT thread priority
The previous fix prevented epicsThreads from working properly when
the RT scheduler is *not* used.

fixes lp:835138
2011-09-21 09:55:52 -05:00
Andrew Johnson
d59a0ac06f Merged 3.14 changes from 2011-08-23 to 2011-09-15 2011-09-20 13:07:52 -05:00
Janet Anderson
69609896e4 Made all clean rules single colon rules. Added CLEANS macro to list
created files to be removed by "make clean" in O.<arch> directory.
Replaced clean rule in Makefiles with a CLEANS definition.
2011-09-15 14:05:05 -05:00
unknown
4fa6f0556c fixed 64 bit compiler warnings 2011-09-12 15:44:52 -06:00
Andrew Johnson
dfb8c8ed2b Merged the rebased-atomics branch.
There are still quite a lot of warnings that need cleaning
up when compiling epicsAtomicTest.cpp on a 64-bit system.
2011-09-09 18:09:48 -05:00
Andrew Johnson
75aa05d30f libCom: Remove extern "C" { #include <...> } from osdSock.h
Our joint conclusion was that wrapping system includes with
extern "C" used to be necessary on some OS builds when C++
was much less common, but is now wrong.
2011-09-09 17:14:35 -05:00
Andrew Johnson
3cfa011760 libCom: Clean up warning from Darwin. 2011-09-09 17:10:32 -05:00
Andrew Johnson
26757f5317 libCom/osi: Clean up compiler warnings on vxWorks 2011-09-07 10:59:11 -05:00
Andrew Johnson
8e028f0f3d libCom/test: errlog test needs -lsocket on Solaris 2011-09-07 10:05:42 -05:00
Jeff Hill
57953e6e24 fixed sunos compiler issue (I dont have sunos 5.10 here) 2011-09-06 18:51:04 -06:00
Andrew Johnson
841978e8c8 Remove epicsAtomicLocked.{h,cpp} from Makefile too. 2011-09-06 10:33:56 -05:00
Jeff Hill
fd10e77518 o hopefully fixed missing functions with sunos 5.10 or higher
o removed unused trash files which somehow reappeared after rebase
2011-09-02 18:18:46 -06:00
Jeff Hill
1ff2408ba4 o hoping that atomic_inc_ptr_nv and atomic_dec_ptr_nv interface definitions will be available if we use sys/atomic.h instead of atomic.h
o fixed issue introduced by last revision where definition of lock functions and lock key were not present if its sunos 5.10 or greater
(its time consuming to develop code if you can only run the (SUNPRO) compiler indirectly)
2011-09-02 09:59:03 -06:00
Jeff Hill
c76b800f2a must ... not .. use the improved c++ casts in c code 2011-09-01 11:43:14 -06:00
Jeff Hill
f5c374c556 o improved comments
o dont include epicsAtomicOSD.h from any of the implementations of epicsAtomicCD.h unless the compiler has support for an inline keyword
o removed superfluous ifdef on EPICS_ATOMIC_INLINE all versions of epicsAtomicDefault.h and epicsAtomicOSD.h
o In the implementations of epicsAtomicOSD.cpp if EPICS_ATOMIC_INLINE isnt defined define it to be empty and then include epicsAtomicOSD.h
o fixing some compile time issues for solaris version of epicsAtomicOSD.h (so that Janet can run another compile on that os)
2011-09-01 11:25:53 -06:00
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
Michael Davidsaver
2714ff703b Fix source reorg issues from Windows
* fix libCom exports for things which used to be built differently
* logserver needs winsock
* errlog prefix: fix warnings on win32
* fix dll imports in ioc/db
2011-08-30 18:09:11 -05:00
Andrew Johnson
c5212ea23c libCom: epicsVersion.h changes
Make version numbers easier to compare.
2011-08-30 17:50:53 -05:00
Jeff Hill
3bae2a470f fixed names on redefinition protection macros for vxWorks 2011-08-30 14:46:24 -06:00
Jeff Hill
5f096a8b80 fixed epics atomic read memory barrier name - old versions of vxWorks 2011-08-30 14:04:36 -06:00
Till Straumann
f203e9a48b libCom: Fix OS priority mapping on Posix
Fixes lp:835138
2011-08-30 14:47:31 -05:00
Jeff Hill
798f1f2ace fixed word missing from vxWorks specific read and write memory barrier functions 2011-08-30 13:34:17 -06:00
Jeff Hill
43fa23bba6 fixed vxWorks name for epicsAtomicTest 2011-08-30 10:49:52 -06:00
Jeff Hill
ad669d6ece fixed wrong return type old vxWorks epicsAtomicUnlock 2011-08-30 10:29:56 -06:00
Jeff Hill
734ea0789a fixed vxWorks jumbled ifdef 2011-08-30 09:01:08 -06:00
unknown
f0afcef02e o changed to more generic implementation to reduce the code size
o changed name, OSD_ATOMIC_INLINE to EPICS_ATOMIC_INLINE
o changed supported data types, unsigned removed and int added (per reveiw at codeathon)
o added add/subtract functions (per reveiw at codeathon)
o now presuming that __sync_synchronize available all gcc 4  mingw does not provide windows mem barrier)
o consolodated on one implemention for Microsoft invarient of cmplr intrinisic or win32 by using macros to config a shared header file
o improved doc in epicsAtomic.h
o added overloaded c++ interface in namespace epics :: atomic to epicsAtomic.h
o added epicsAtomicReadMemoryBarrier and epicsAtomicWriteMemoryBarrier interface to epicsAtomic.h
o changed the implementation so that each of the functions can be individually specified for a particular compiler, os, or in the generic implementation (this is accomplished with macros)
o modified the functional and performance test so that they are based on templates so we can easily support new data types
o modified performance tests to repeat function calls and measure performance using a template
2011-08-29 19:02:41 -06:00
Andrew Johnson
e15e42cff3 Merged Murali Shankar's iocLogPrefix changes.
Adjusted a few things during the merge.
2011-08-25 18:17:09 -05:00
Murali Shankar
c12f6808f1 Added a couple of units tests for iocLogPrefix 2011-08-24 11:25:06 -07:00
Murali Shankar
0a4daefee3 Added the iocLogPrefix to the header so that we can use it in the unit test 2011-08-24 11:24:26 -07: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
Andrew Johnson
8ff3dcdf2d libCom: cleanup after rebase
remove empty src/libCom/tools dir
include as/RULES, lost during rebase
2011-08-23 17:28:20 -05:00
Murali Shankar
5a0364b74a iocLogPrefix does not let you change the prefix if the prefix has already been set. Display the prefix as
part of iocLogShow.
2011-08-23 11:51:19 -07:00
Till Straumann
2b65025d93 RTEMS: Time registration when dynamically loading
The old test for discriminating between statically and dynamically
linked applications (os/RTEMS/osdTime.cpp:staticTimeRegister()) is
wrong, it never detects a dynamically loaded app.

fixes lp:831648
-------------- This line and the following will be ignored
--------------

modified:
  src/libCom/osi/os/RTEMS/osdTime.cpp
2011-08-23 13:20:00 -05:00
Murali Shankar
0cb7c9aafe Added support for iocLogPrefix
Refactored logClientSend in libCom/logClient/logClient.c; took the code between the mutex operations and
moved it to a private method - sendLogMessageinChunks. Call this method once for the prefix (if it exists) and once
for the actual message.
Added ioCsh registration code into src/libCom/iocsh/libComRegister.c registering a command called
"iocLogPrefix" that sets this prefix.

Unit tested with and without prefixes.
Performance tested with and without prefixes - without prefix is approx the same. With prefix is about
twice the time (reflecting the two calls to sendLogMessageinChunks I think)
2011-08-23 11:04:09 -07:00
Jeff Hill
a05348d63e merged andrews merge to R3.15 2011-08-19 14:43:35 -06:00
Jeff Hill
e8154577db fixed issues in posix and vxWorks specific epicsAtomic found during testing 2011-08-19 14:17:59 -06:00
Jeff Hill
8a8ba04405 o merged in changes from the "compiler specific build" branch
o changed implementation of default mutex locked version to be POSIX specific 
so we can use a static pthread mutex which is more efficent
2011-08-19 13:48:03 -06:00
Andrew Johnson
d25ee10b71 Merge 3.14 changes from 2011-06-06 to 2011-08-17 2011-08-17 16:36:38 -05:00