Commit Graph

3347 Commits

Author SHA1 Message Date
Andrew Johnson bd120c774d Various fixes
* VxWorks 5.5.2 doesn't like C++-style variable declarations in C code
* Older MS compiler doesn't have strto[u]ll
* Wrote release note entry for iocshLoad command.
2014-10-07 00:41:39 -05:00
Andrew Johnson 0a9c5d456b Merged iocshCmd-with-macros branch 2014-10-06 23:39:23 -05:00
Andrew Johnson 97e445f78d Merged epicsInt64-library-support branch 2014-10-06 20:28:35 -05:00
Andrew Johnson 78a9dd7bc5 Fixes for building on Solaris
The SunPro C++ compiler doesn't like osdElfFindAddr, so I converted
it back to C, but then I had to make the osdFindAddr files C to match.
Now elfRead() can't use a static initializer to get the program start
time, so I added a public routine to osiClockTime.c to return that.
Also fixed various indentations in Till's code.
2014-10-06 13:53:21 -05:00
Andrew Johnson ec7b0d5737 Merged the loadable-support branch 2014-10-02 16:53:15 -05:00
Andrew Johnson 70feb515c3 Merged parallel-cbthreads-3 branch 2014-10-02 15:07:07 -05:00
Andrew Johnson 0888992863 Fix MinGW cross-build from Linux 2014-09-28 23:28:29 -05:00
Michael Davidsaver 76dc827e29 libCom/test: link w/ winsock to get htons/htonl 2014-09-26 18:55:26 -04:00
Andrew Johnson b06ea01a18 Fix Windows build issue in epicsMMIODef.h 2014-09-26 16:40:44 -05:00
Andrew Johnson 5ae6dd3a7c Merged devlib2mmio branch 2014-09-26 14:28:28 -05:00
Andrew Johnson abc3417623 Merged stacktrace-1 branch 2014-09-26 12:46:16 -05:00
Andrew Johnson abff9a6954 Improve epicsSockResolveTest tests. 2014-09-26 10:11:47 -05:00
Andrew Johnson 8fde7fb4f3 Merged changes from 3.14 branch
Fixed issues building on Solaris.

Up to revno 12497.
2014-09-25 16:34:12 -05:00
Andrew Johnson d73b4eb470 Fix epicsSockResolveTest, host is now a real TLD 2014-09-23 15:31:53 -05:00
Keenan Lang bd3a030da8 remove unneeded forward declaration 2014-09-19 13:24:15 -05:00
Keenan Lang 688e821f3a remove macEnvExpandTest from epicsRunLibComTests.c 2014-09-19 13:21:43 -05:00
Till Straumann a018720511 - use time() instead of clock_gettime();
- when comparing modification to program start time use >= instead of >
2014-09-19 10:17:28 -07:00
Till Straumann f278ba656b - fixed c++ warnings 2014-09-18 14:06:04 -07:00
Till Straumann d925772857 - fixed c++ warnings 2014-09-18 14:05:32 -07:00
Till Straumann bbfb69ed8d - implemented suggestion by Michael Davidsaver: when reading ELF files
check modifification time against program start time and warn if the
   file was modified more recently since it could be out of date.
2014-09-18 12:19:47 -07:00
Till Straumann 012ee68199 - made osdBackTrace/osdFindAddr c++ sources to be more flexible for
implementations. Fixed compiler warnings (c++ more picky than cc).
2014-09-18 12:18:48 -07:00
Keenan Lang 79cb473b6a tests all pass now. 2014-09-17 17:22:04 -05:00
Keenan Lang 73b09f4976 Adding scoping test, combining some aspects of macEnvTest to allow removal of that test. 2014-09-16 13:55:40 -05:00
Keenan Lang 4cd8a41ce5 Updated macDefExpandTest to keep from dereferencing NULL 2014-09-15 16:59:11 -05:00
Andrew Johnson 42f0b9be21 Posix: Fix how we check POSIX features
Darwin defines some macros as -1, which means unsupported.
2014-09-11 17:08:49 -05:00
Janet Anderson 81fdbdebd9 Added dummy for solaris build. 2014-09-11 09:10:44 -05:00
Till Straumann f1bb532307 - simplified some code
- epicsStackTrace.c provides generic epicsStackTraceGetFeatures() testing
   the 'epicsBackTrace()' functionality. Call out to epicsFindAddrGetFeatures()
   to inquire about symbol lookup support.
2014-09-10 12:04:36 -07:00
Till Straumann 0252dd1905 - simplified code
- provide epicsFindAddrGetFeatures() instead of epicsStackTraceGetFeatures()
2014-09-10 12:03:50 -07:00
Till Straumann a2339b9219 - WIN32 can now use default osdFindAddr (until symbol lookup is implemented) 2014-09-10 12:03:04 -07:00
Till Straumann cc04994d12 - updated copyright info
- let epicsFindAddr clear out returned symbol info
 - provide epicsFindAddrGetFeatures instead of epicsStackTraceGetFeatures
2014-09-10 12:01:50 -07:00
Till Straumann fad25a3b11 - cleanup
- reduced epicsStackTraceGetFeatures to epicsFindAddrGetFeatures
2014-09-10 12:00:51 -07:00
Till Straumann 438863ebd9 - updated copyright info 2014-09-10 12:00:08 -07:00
Andrew Johnson 431e87f95c libCom/posix: Drop SCHED_FIFO before exec() in child process
osiSpawnDetachedProcess() switches to SCHED_OTHER after fork() so
the new program will not be real-time unless is requests it itself.
Only happens when USE_POSIX_THREAD_PRIORITY_SCHEDULING = YES
2014-09-09 18:06:09 -05:00
strauman 6890166376 - renamed:
src/libCom/osi/os/posix/osdBackTrace.c => src/libCom/osi/os/posix/osdExecinfoBackTrace.c
  src/libCom/osi/os/posix/osdFindAddr.c => src/libCom/osi/os/posix/osdElfFindAddr.c

  not all 'posix' platforms can use the above versions (since the used APIs are not really POSIX)
  but a subset can. The platforms which can use either version #include it from 'their'
  osdBackTrace.c/osdFindAddr.c.
2014-09-08 23:28:30 -07:00
Till Straumann 51f5a2fc99 - fixed illegal void* pointer arithmetic by casting to char* 2014-09-08 23:09:18 -07:00
Till Straumann 252af56144 - renamed symbol that clashed on solaris 2014-09-08 23:08:33 -07:00
Till Straumann 278a8dac05 - solaris implementation of epicsBackTrace() via walkcontext() 2014-09-08 23:07:51 -07:00
Till Straumann 8477dec61f - added windows versions of osdBackTrace.c, osdFindAddr.c; the latter
does not implement addr->symbol conversion yet.
2014-09-08 22:31:11 -07:00
Till Straumann 8931954d28 - fixed illegal void* pointer arithmetic (by casting to char*) 2014-09-08 22:30:34 -07:00
Till Straumann 954ba66027 - fixed illegal void* pointer arithmetic by casting to char*
- removed more unused stuff
2014-09-08 22:29:46 -07:00
Till Straumann 4e1677a38f - (hopefully) correct usage of sharedLib.h... 2014-09-08 22:28:41 -07:00
strauman e349b3ab94 - first stab at breaking stack trace facility into separate files 2014-09-08 19:41:06 -07:00
Andrew Johnson 3f88273d0f Linux builds: Define _GNU_SOURCE and _DEFAULT_SOURCE
These replace the mixture of macros used to pick the features
presented by the standard system header files on Linux.

Updated the section of the CA reference manual that showed some
example compile lines to correct for 3.15 build changes.

Removed unused code & out-of-date comments.
2014-09-08 17:57:18 -05:00
Till Straumann fa41fcbe40 - use unistd's _POSIX_MAPPED_FILES to determine if a system has mmap. 2014-09-08 08:10:16 -07:00
Till Straumann 9dd130afb6 - forget about backtrace_symbols() -- always use 'dladdr'. (The former
is non-standard either and AFAIK always based on the latter.) Always
   using dladdr allows us to precisely control the printout formatting
   and keep it consistent.
2014-09-05 15:29:32 -07:00
Till Straumann 423709b795 - call first epicsStackTraceRecurseGbl() through function pointer -- clang
(darwin) had optimized it away.
2014-09-05 11:17:17 -07:00
Till Straumann fd9fed2262 - canonicalized printout formatting
- added EPICS_STACKTRACE_DYN_SYMBOL
 - added USE_DLADDR branch (which is a 'super' of USE_ELF, i.e., the latter
   depends on the former)
2014-09-04 10:59:39 -07:00
Till Straumann 68429f03f2 - added EPICS_STACKTRACE_DYN_SYMBOL 2014-09-04 10:58:27 -07:00
Andrew Johnson 7a9407d7ab libCom: Clean up MS compiler warnings.
This doesn't fix the Microsoft link failure though, that may
need an upgrade of MS Visual Studio on our Hudson Windows VM.
2014-09-04 11:07:59 -05:00
Till Straumann fab9ef6147 - added test case for library symbols
- replaced TABs by spaces
2014-09-03 13:23:23 -07:00