Commit Graph

12436 Commits

Author SHA1 Message Date
Jeff Hill
eaa26363ad Andrew Johnson 2011-08-17 [merge] Merge 3.14 changes from 2011-06-06 to 2011-08-17 2011-08-19 14:35:04 -06:00
Jeff Hill
4d8045ab5a 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
Andrew Johnson
2b4edba8f3 Update copyright names and dates in LICENSE file. 2011-08-17 15:14:10 -05:00
Andrew Johnson
35b72b60fb shutdown: Lock records during dbCa link cleanup
CA links in records were being removed without locking them first.
We also now set the link type to CONSTANT, which prevents some
assertion failures if the record gets processed again before the
IOC finally dies.
2011-08-17 15:08:10 -05:00
Jeff Hill
9b8ee41860 removed lisc file changes 2011-08-17 09:05:05 -06:00
Jeff Hill
ef6a129079 committed merge 2011-08-16 18:34:36 -06:00
Jeff Hill
159ca986a3 o cosmetic change CONFIG_COMMON
o removed setting of default i586 arch from mingw and cygwin CONFIG_SITE
2011-08-16 18:32:41 -06:00
Jeff Hill
baaaa3a313 fixed missing missing locked func and broken func proto 2011-08-15 17:59:43 -06:00
Jeff Hill
b9900b8682 o no longer need to define OSD_ATOMIC_GCC
o removed function
epicsAtomicTestAndSetUIntT
o added new functions
epicsAtomicSetPtrT
epicsAtomicGetPtrT
epicsAtomicCmpAndSwapUIntT
epicsAtomicCmpAndSwapPtrT
o changed msvc intrinsics to define memory fence
o fixed mutex synchronized version so that its slow, but correct if the c++ compiler doesnt synchronized local scope static initialization
o changed most of the set/get methods to use memory barriers instead of some other primitive
o added additional tests
2011-08-15 17:00:01 -06:00
Jeff Hill
a50482a0c9 added epicsAtomicGetUIntT for completeness 2011-08-12 10:06:09 -06:00
Jeff Hill
049e070b3a o removed "-march=i586" from
configure/os/CONFIG.Common.cygwin-x86
configure/os/CONFIG.Common.linux-x86
configure/os/CONFIG.Common.win32-x86-cygwin
configure/os/CONFIG.Common.win32-x86-mingw

added commented out "-march=i586" to
configure/os/CONFIG_SITE.cygwin-x86.cygwin-x86
configure/os/CONFIG_SITE.win32-x86-cygwin.win32-x86-cygwin

added "-march=i586" to (I know that this compiler currently defaults to 386)
configure/os/CONFIG_SITE.win32-x86-mingw.win32-x86-mingw
2011-08-11 09:49:09 -06:00
Jeff Hill
bd2bccf982 fixed test for earlier gcc supporting intel instrinsic atomic operations 2011-08-10 13:15:51 -06:00
Jeff Hill
ca78732dac fixed solaris 64 compiler error (I dont have that version of solaris here) 2011-08-09 12:26:40 -06:00
Janet Anderson
d286a81ef0 configure: Remove T_A=* from MAKEFLAGS before findstring s in ECHO def. 2011-08-09 11:39:00 -05:00
Jeff Hill
04c30aee0e redo change reversed by merge 2011-08-08 18:38:39 -06:00
Jeff Hill
96723b66d7 make the default minimum arch for 32 bit linux pentium 2011-08-08 18:31:42 -06:00
Jeff Hill
3a99279692 merged changes from launchpad 2011-08-08 18:03:11 -06:00
Jeff Hill
e8bcfbe2c1 o fixed compile errors in epicsAtomicOSD.h (I didnt have the proper version of solaris to test)
o fixed darwin compile errors (I dont have access to darwin)
2011-08-08 17:54:43 -06:00
Jeff Hill
eefc3b34e0 o moved -march=i586 from CONFIG.arch.arch to CONFIG.Common.arch {cygwin-x86,win32-x86-cygwin,win32-x86-mingw
o removed -march=i586 from CONFIG.linux-x86.linux-x86
o fixed compile errors in epicsAtomicOSD.h (I didnt have the proper version of solaris for initial testing here)
2011-08-08 17:33:19 -06:00
Ralph Lange
bc4a7854ec libCom: Explicitly use namespace std for size_t declaration in epicsSingleton.h
This fixes a compile error that occurs in new gcc versions (since ~4.6.1)
2011-08-08 18:31:19 +02:00
Jeff Hill
921df1dd5c fixed epicsAtomicTestAndSetUIntT for solaris 2011-08-05 17:32:06 -06:00
Jeff Hill
a3d9bf1e3f fixed modern vxWorks atomics 2011-08-05 17:12:33 -06:00
Jeff Hill
89e47e5fae fixed test names 2011-08-05 17:11:29 -06:00
Jeff Hill
deb74a10b7 o fixed include guard to match file names
o fixed legacy vxWorks support
2011-08-05 16:23:50 -06:00
Jeff Hill
d6cfa286b2 changed test iterations to accomodate old systems 2011-08-05 11:14:37 -06:00
Janet Anderson
f59825a462 Added HDEPENDS_METHOD override for cross builds 2011-08-05 12:02:30 -05:00
Jeff Hill
a05a836295 enable gcc atomic intrinsics on certain older gcc that does not advertize its atomics when targeting intel 2011-08-05 10:50:25 -06:00
Jeff Hill
31f5ae048f track name changes 2011-08-05 09:51:05 -06:00
Jeff Hill
100c79b88b o added epicsAtomic implementation including compiler and os specific files
o added functionality and performance testing
2011-08-05 09:13:38 -06:00
Jeff Hill
ee2e367dad o added CMPL_CLASD definition to CONFIG.gnuCommon, CONFIG.solarisCommon.solarisCommon, configure/os/CONFIG.win32-x86.win32-x86
o added CMPLR_SRC_DIRS to ALL_SRC_DIRS, and added compiler/$CMPLR_CLASS) to INSTALL_INCLUDES in CONFIG_COMMON
o added additional compiler specific rule deciding where things are installed to  in CONFIG_COMMON
o added compiler specific include install to RULES_BUILD
o changed configure/os/CONFIG.linux-x86.linux-x86 to specify minimum arch is 586 (pentium circa 1995)
o changed configure/os/CONFIG.win32-x86-cygwin.win32-x86-cygwin to specify minimum arch is 586 (pentium circa 1995)
o added epicsAtoimic facility to libCom/Makefile
o added testing and performance measurement to  libCom/test/Makefile
2011-08-05 08:57:15 -06:00
Janet Anderson
c49db7c176 Added commented changes from Eric Norum to build with CLANG 2011-07-27 16:10:56 -05:00
Janet Anderson
7783f0044b Added commented changes from Eric Norum to build with CLANG 2011-07-27 16:08:02 -05:00
Jeff Hill
1b9ca756cc Changed repeaterTimerNotify interface implementation into a nested class of udpiiu so that we dont use multiple inheritance, and therefore hopefully avoid code generation problems with certain versions of g++ on MacOSX (I cant reproduce this problem on any ofthe machines here) 2011-07-26 16:23:34 -06:00
Jeff Hill
f9f8d1150c fixed spelling and formatting nits 2011-07-26 10:40:37 -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
afc629ed42 dev: Added devHistogramSoft to devSoft.dbd 2011-07-21 13:37:00 -05:00
Andrew Johnson
743b11e6f1 misc: Added histogram record to base.dbd 2011-07-21 12:33:19 -05:00
Andrew Johnson
a367e4be95 tools: use AbsPath() instead of abs_path() in checkRelease
abs_path() dies for dirs that don't exist.
2011-07-13 10:38:13 -05:00
Michael Davidsaver
a80bd1a630 libCom: Avoid race in errlog shutdown.
A rare race during shutdown.  The contenders are the log thread
coming out of its loop and calling errlogCleanup(), and the
exitHandler signaling waitForWork.

This solution is to move cleanup completely into exitHandler,
which already waits for the log thread to exit.
2011-07-08 11:18:00 -05:00
Andrew Johnson
515712c0e7 startup: Fix host arch for 64-bit darwin kernels
"uname -m" returns x86_86 on those machines, which we weren't expecting.
2011-06-27 15:09:54 -05:00
Andrew Johnson
2fb7df8548 libCom: __attribute__((deprecated)) not in gcc 2.x
Only apply this attribute for gcc 3 and later.
2011-06-20 13:52:32 -05:00
Andrew Johnson
4448a5501a Document recent commits. 2011-06-10 16:23:02 -05:00
Andrew Johnson
dafb7d5d4c configure: Stop make displaying COMMENT lines... 2011-06-10 16:21:52 -05:00
Andrew Johnson
5343b836b8 configure: Reorganized the uninstall targets in RULES_TOP
Useful rules:
    uninstall.<arch> - Remove bin & lib directories for <arch> only.
    archuninstall    - Remove bin & lib directories created by this hostarch.
    realuninstall    - Removes ALL install dirs
2011-06-10 16:17:41 -05:00
Andrew Johnson
d0423738d1 configure: Make the vxWorks macro expand to itself
This fixes a problem in .st sequence programs that do this:
  %%#include <vxWorks.h>
The pre-processor was replacing the token since the line is not a
pre-processor directive (yet) and it doesn't appear inside "quotes".

NB: This will break any code that is incorrectly using
  #if vxWorks
instead of
  #ifdef vxWorks
2011-06-10 10:14:40 -05:00
Andrew Johnson
3bf5b21f57 tools: Improve makeDbDepends
Rewrite, add support for quotes around filenames in "file" statements.
2011-06-08 12:26:01 -05:00
Andrew Johnson
8d15407e2f tools: Remove warning from newer versions of Perl.
Replace \1 with $1 in substitution strings.
2011-06-08 12:15:18 -05:00
Andrew Johnson
7560fb1bb1 rec/compress: Post monitors on NUSE field
Matt Pearson asked for NUSE monitors, so clients can track how
much data has been collected.
2011-06-08 11:16:26 -05:00
Andrew Johnson
445b5e473b configure: Delete %.C (C++) build rule
Breaks build of %.c files on Windows with some versions of Make.
2011-06-07 09:52:54 -05:00