Commit Graph

10536 Commits

Author SHA1 Message Date
Andrew Johnson 3ff49fc9b2 Fixed build errors, remove dependency on std.
Build errors: Include guard missing from epicsUnitTest.h;
    dbShutdownTest.c was calling the non-universal strcasecmp()
    instead of epicsStrCaseCmp().

ioc/db/test no longer depends on std. I modified
    xRecord to make it a working record type, and simplified the
    other test programs so they all use the same new expanded
    dbd file rather than each making their own. I also added
    dbShutdownTest() to epicsRunDbTests().
2014-07-10 14:27:44 -05:00
Michael Davidsaver a9d4204d43 dbLock: free LSET 2014-06-23 16:28:28 -04:00
Michael Davidsaver 0c73bb9448 dbChannel: atexit 2014-06-23 16:28:27 -04:00
Michael Davidsaver c8d9d5e952 dbLock: atexit 2014-06-23 16:28:27 -04:00
Michael Davidsaver c838d5d870 dbBkpt: atexit 2014-06-23 16:28:26 -04:00
Michael Davidsaver ddaa6e4eb6 dbNotify: cleanup atexit 2014-06-23 16:28:26 -04:00
Andrew Johnson 60a0c7f181 Make epicsExit subsystem reusable.
Calling epicsAtExit() after epicsExitCallAtExits() now
recreates the per-process list and registers the routine.
2014-06-23 16:28:25 -04:00
Michael Davidsaver 80dd66a58d add dbUnitTest.h
hide boilerplate of tests using the PDB
2014-06-23 16:28:25 -04:00
Michael Davidsaver 1ae2ab1de6 dbShutdownTest 2014-06-23 16:28:24 -04:00
Michael Davidsaver 5caaf2d13c cleanup initHook 2014-06-23 16:28:23 -04:00
Michael Davidsaver 3ca42fc838 cleanup iocsh 2014-06-23 16:28:22 -04:00
Michael Davidsaver ad2bb0725d asShutdown 2014-06-23 16:28:22 -04:00
Ralph Lange 2d4e143987 db/callback: add callbackShutdown() to API, add shutdown handling 2014-06-23 16:28:21 -04:00
Ralph Lange e83bc13a5e db/dbCa: add dbCaShutdown() to API, complete shutdown handling 2014-06-23 16:28:21 -04:00
Ralph Lange 23e22313f1 db/dbScan: add scanShutdown() to API, complete shutdown handling 2014-06-23 16:28:21 -04:00
Michael Davidsaver 564a527489 misc/iocInit: add iocBuildNoCA() and iocShutdown() to API, split up
iocBuild in three phases
2014-06-23 16:28:20 -04:00
Michael Davidsaver 8a42190e39 ensure the errlog is started with iocInit 2014-06-23 16:28:20 -04:00
Michael Davidsaver f405b444a3 errlog: nicer exit handler name 2014-06-23 16:28:19 -04:00
Michael Davidsaver a28a561d8a epicsExit: optional debug printing
Add a flag to cause a string to be printed
before each handler is run to show the order.
2014-06-23 16:28:18 -04:00
Andrew Johnson 3cf2d9057f Allow appended .db files to omit record type
This .db file syntax is now legal, provided the
named record already exists:

  record("*", "named") {
    field(VAL, 10)
  }
2014-06-12 14:47:42 -05:00
Ralph Lange 41bd895cd5 ioc: Fix more MSVC 12.0 warnings 2014-06-04 21:18:43 +02:00
Ralph Lange 32c2775940 ioc/dbStatic: fix bug introduced in revision 12486 2014-06-04 17:07:16 +02:00
Ralph Lange 5754dc136e src/ioc: fix numerous warnings appearing on MSVC 12.0 / Windows (64bit) 2014-06-04 15:56:51 +02:00
Ralph Lange f8b746287e ioc/db/test: make chfPluginTest more flexible wrt %e formatting of double 2014-06-04 11:55:40 +02:00
Ralph Lange e7416ce144 ioc/db: fix issue with compiler differences between MSVC and GNU (enum signedness) 2014-06-04 11:53:32 +02:00
Andrew Johnson 9e1ebf8d0f Clean up build warnings from Darwin (clang). 2014-05-30 12:36:50 -05:00
Andrew Johnson c980613bd8 db/dbChannel: Rename dbr_final_type -> final_dbr_type 2014-05-29 12:31:47 -05:00
Ralph Lange 271e1811e3 ioc/dbStatic: make offset in field description an unsigned short, add cast to code generator
fixes ~2600 compiler warnings (on windows-x64)
2014-05-22 16:18:02 +02:00
Andrew Johnson 7dd5e217f6 Merged Ralph's get-cpus branch. 2014-05-19 09:44:05 -05:00
Ralph Lange 722d5eeba7 libCom/osi: use epicsThreadGetCPUs implementation from thread-pool branch (posix, WIN32) 2014-05-18 17:24:38 +02:00
Andrew Johnson f24dafa1e0 libCom: Adjust the Posix epicsMutexOSD structure
Make pthread_mutex_t lock the first member of the
parent structure, so it's easy to convert between them.
2014-04-01 11:09:36 -05:00
Andrew Johnson 312fdee91d cap5: Fix fisibility of boot_Cap5
Old method doesn't work any more, not sure what changed.
2014-03-18 14:18:08 -05:00
Andrew Johnson 4b18edc586 Merged changes from 3.14 branch.
Up to revno 12479.
2014-03-13 15:04:31 -05:00
Andrew Johnson b1ece5d8d2 cap5: Added CA->version function
Documented.
2014-03-11 17:46:14 -05:00
Andrew Johnson f5b9db9583 libCom: Fix epicsString.h comparison functions
The string comparison functions epicsStrCaseCmp() and
epicsStrnCaseCmp() were returning incorrect results
when the strings did not match.

These functions now match their BSD equivalents, and
have working tests to confirm their operation.
2014-03-11 17:12:41 -05:00
Andrew Johnson 5bdd9ddca6 Windows: Fix static builds on MinGW
Xiaoqiang Wang proposed some fixes that allow static builds on
the MinGW targets to succeed. Some additional changes made to
blockingSockTest.cpp also clean that up.
2014-02-25 15:56:13 -06:00
Andrew Johnson 0dc2746d68 libCom: Added echo command to iocsh 2014-02-21 15:49:15 -06:00
Andrew Johnson 1a70f1e347 libCom: Added macro EPICS_UNUSED to compilerDependencies.h
Stop unnecessary warnings.
2014-02-20 18:05:42 -06:00
Andrew Johnson 3fd8d4515c libCom/test: Finish converting blockingSockTest to epicsUnitTest
Don't call assert() from a test program,
it stops the tests from running if the assert fails.
2014-02-20 16:36:58 -06:00
Andrew Johnson 84426ea334 templates: Unify PV name prefixes, remove "Host"
The difference between host IOCs and embedded ones does not
justify having a different prefix.
2014-02-18 18:32:29 -06:00
Eric Norum 52f654a5a3 templates: Make st.cmd templates safe against spaces in TOP. 2014-02-18 18:21:15 -06:00
Ralph Lange 6ad30c92bb ca/legacy/pcas: fix compiler warnings (different signedness in comparison) 2014-02-16 19:29:58 +01:00
zimoch a3354f5db9 libCom: NTP Time Provider adjusts to OS tick rate changes
Allow the NTP Time provider (used on VxWorks and RTEMS only)
to adapt to changes in the OS clock tick rate after the provider
has been initialized.

Changing the tick rate after iocInit() is not advisable,
other software might still misbehave if initialized before
an OS tick rate change.
2014-02-13 10:09:12 -06:00
Andrew Johnson 6ad61aea32 Fix missing spaces in ADDR_LIST formats. 2014-02-11 17:44:14 -06:00
Andrew Johnson e1e389a2dd Low-memory behaviour fixes.
Fix unchecked buffer allocation in dbChannel.c
Replace calls to epicsStrDup() with checked malloc() for
things that happen often after iocInit.

Michael Davidsaver pointed out this issue.
2014-02-07 17:19:28 -06:00
Andrew Johnson 502366fdc3 epicsMutex C++ API: New constructor and newEpicsMutex macro
The new constructor accepts source file & line number.
The macro passes these in.
2014-02-07 14:13:12 -06:00
Andrew Johnson b32127c5de libCom: Fix epicsTime::strftime() roll-over bug
Fractional seconds could round-up to .000 without
incrementing the integer seconds.
We can't actually do the latter, so we prevent the
roll-over and clamp at all 9's instead.
Idea from Eric Norum.
2014-01-29 16:52:22 -06:00
Andrew Johnson 3f0e633fd1 dbStatic: Clean up warning on darwin 2013-12-20 09:59:49 -06:00
Andrew Johnson 0c52d41e95 db/test: Tell Win32 to only print 2-digit exponents
By default the MS libraries print 3-digit exponents,
whereas the ANSI standard is for 2-digits.
2013-12-17 17:41:13 -06:00
Andrew Johnson dbb8d232ee libCom/test: Losen the timer error threshold.
Windows was consistently failing the fastest timer tests.
2013-12-17 17:13:27 -06:00