Commit Graph

480 Commits

Author SHA1 Message Date
Michael Davidsaver 95cb81c286 generalTime short circuit current time
epicsTimeGetCurrent() is called frequently.
Unless more than the default provider is registered,
locking and going through the timeProvider list each
time is a waste.

Instead, short circuit to directly call the default
time current time provider unless a another has
been registered.
2019-03-10 16:36:54 -07:00
Michael Davidsaver d38fcd5247 no need to search for perl modules under bin/ 2019-01-03 20:18:16 -08:00
Michael Davidsaver d7841f407a drop unnecessary *ModuleDirs 2019-01-03 20:18:11 -08:00
Michael Davidsaver 49b323b93c avoided embedded TOP for non sub-modules 2019-01-03 20:17:58 -08:00
Michael Davidsaver 4f2228fb1d replace most internal getCurrent() -> getMonotonic()
every place where a time delta is computed, and then some.
2019-01-03 19:34:47 -08:00
Michael Davidsaver 5087c4cb2f monotonic adapt to regular time APIs 2019-01-03 19:34:35 -08:00
Andrew Johnson 8481ae3787 Set embedded modules' SHRLIB_VERSION from CONFIG variables 2018-12-17 17:19:10 -06:00
Andrew Johnson 58aa30ab0a Merge 3.15 branch into 7.0
First direct merge since 3.16 branch closed.
2018-12-14 17:05:59 -06:00
Andrew Johnson 6d5f57daf1 Merge 3.16 branch into 7.0 2018-12-12 15:17:02 -06:00
Michael Davidsaver 84831e13e7 epicsGetExecName WIN32, Darwin, solaris, freebsd 2018-11-20 22:00:42 -08:00
Michael Davidsaver 32340584b4 epicsGetExecDir() paths relative to executable
For linux, enable softIoc to find .dbd relative to the executable
location.

The same could be done for other targets

*bsd
  may have symlink /proc/curproc/file
  fallback to sysctl() with KERN_PROC_PATHNAME

solaris
  getexecname()

mac
  _NSGetExecutablePath()

WIN32
  GetModuleFileName(NULL)

others
  out of luck...
2018-11-20 22:00:42 -08:00
Michael Davidsaver 530eba133f as,rsrv: use real client IP instead of untrusted host name 2018-11-14 20:03:55 -08:00
Michael Davidsaver bb19bd519e asLib add asInitMem() 2018-11-14 19:46:54 -08:00
Michael Davidsaver 3c2fe264cd epicsThreadRealtimeLock: clarify errors
give some more descriptive, linux specific, error messages
2018-11-14 09:55:19 -08:00
Michael Davidsaver f9092783f8 RTEMS thread join 2018-11-04 20:06:18 -08:00
Michael Davidsaver 149ab1186a epicsThread fix join 2018-11-04 20:06:18 -08:00
Michael Davidsaver 460e58e3e5 libCom "join" win32 threads
Wait for completion
2018-11-04 20:06:18 -08:00
Michael Davidsaver c9dcab95a6 class epicsThread is joinable 2018-11-04 20:06:18 -08:00
Michael Davidsaver d989c8fade libCom: joinable threads (posix only)
Add epicsThreadJoin() and epicsThreadOpts::joinable.
For compatibility, default threads aren't joinable
by default.

Currently only POSIX can join.
2018-11-04 20:06:18 -08:00
Michael Davidsaver ca800fa57d libCom: add epicsThreadCreateOpt()
Variant of epicsThreadCreate() which accepts optional
arguments via a structure to allow for compatible
addition of new arguments.
2018-11-04 20:06:18 -08:00
Michael Davidsaver ebe7cf046e libCom: iocshRegisterVariable() only warn on actual redefinition
Avoid noise if simply called twice.
2018-11-04 19:32:48 -08:00
Andrew Johnson f0bbae1767 Merge Dirk's FixShellCommands branch into 7.0 2018-10-30 09:51:02 -05:00
Michael Davidsaver 78b6312f49 fix mingw build 2018-10-28 19:03:42 -07:00
Andrew Johnson 2efe56c6d1 Merge 3.16 (after 3.16.2-rc1) into 7.0 2018-10-26 17:04:53 -05:00
zimoch 4190f38db0 add macro IOCSH_STATIC_FUNC to avoid '#ifdef vxWorks' in code 2018-10-23 17:51:46 +02:00
zimoch 9b328a0ca4 Removed usage messages from epicsEnvSet except for vxWorks but kept the check for NULL. For vxWorks removed the () from usage message. 2018-09-28 11:38:29 +02:00
zimoch d44f5616a9 add missing command line functions to vxWorks shell 2018-09-27 13:35:45 +02:00
zimoch 1cb0c5b4d0 Fix command line functions: print error if required arguments are missing 2018-09-27 13:35:10 +02:00
Michael Davidsaver dc310a4238 move initHooks to libCom 2018-06-27 18:00:14 -07:00
Ralph Lange 833648c977 Move all under modules/libcom 2018-06-19 11:25:46 +02:00