From 5d42e60745df46fc1937a439270950981d2e9018 Mon Sep 17 00:00:00 2001 From: Michael Davidsaver Date: Mon, 29 Feb 2016 20:43:40 -0500 Subject: [PATCH] rec/test: asTest fixup rtems test harness Since this test has device support it must appear in a DLL for windows dynamic builds. However, the rRDD function is in the executable, and not accessible here. So use iocsh. For rtems/vxworks the test harness clears iocsh registrations, so iocsh can't work here. --- src/std/rec/test/asTestLib.c | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/src/std/rec/test/asTestLib.c b/src/std/rec/test/asTestLib.c index 2eca72775..62b5e62fc 100644 --- a/src/std/rec/test/asTestLib.c +++ b/src/std/rec/test/asTestLib.c @@ -217,6 +217,10 @@ static void hookPass1(initHookState state) dbFinishEntry(&entry); } +#if defined(__rtems__) || defined(vxWorks) +void asTestIoc_registerRecordDeviceDriver(struct dbBase *); +#endif + epicsShareFunc void testRestore(void) { @@ -231,7 +235,18 @@ void testRestore(void) testdbReadDatabase("asTestIoc.dbd", NULL, NULL); + /* since this test has device support it must appear in a + * DLL for windows dynamic builds. + * However, the rRDD function is in the executable, + * and not accessible here. So use iocsh. + * For rtems/vxworks the test harness clears + * iocsh registrations, so iocsh can't work here. + */ +#if defined(__rtems__) || defined(vxWorks) + asTestIoc_registerRecordDeviceDriver(pdbbase); +#else iocshCmd("asTestIoc_registerRecordDeviceDriver(pdbbase)"); +#endif testdbReadDatabase("asTest.db", NULL, NULL);