Compare commits

...

2239 Commits

Author SHA1 Message Date
Andrew Johnson
e613d685fd Merge 3.16 into database/master 2018-03-22 23:25:56 -05:00
Andrew Johnson
a3c01bbf77 Merge 3.16 into 3.17 2018-03-22 18:07:25 -05:00
Andrew Johnson
086bc961a4 Merge 3.15 into 3.16 2018-03-15 17:53:10 -05:00
Andrew Johnson
58dc1ced9b Fix softTest synchronization bug
Local CA output links do *not* trigger processing in the same thread;
need to wait for the dest record in Group 3, but not in Group 4.
2018-03-15 17:52:52 -05:00
Andrew Johnson
d8802c8b24 Merge 3.14 into 3.15 2018-03-15 17:46:48 -05:00
Andrew Johnson
b7d4609e57 Merge Bruce Hill's camonitor-server-relative-ts-bug-3.14 branch 2018-03-15 17:33:32 -05:00
Andrew Johnson
7b5b23f6d3 Merge 3.14 into 3.15 2018-03-15 17:11:20 -05:00
Andrew Johnson
c8a7e1597d VxWorks Timezone updates
Remove 2017; fix hour in MET settings
2018-03-15 10:57:55 -05:00
Andrew Johnson
0f7a7902e4 Merge ~bhill:checkRelease-error-msgs into 3.16 2018-03-14 17:59:28 -05:00
Andrew Johnson
42403232e9 Merge 3.15 into 3.16 2018-03-14 16:11:36 -05:00
Andrew Johnson
8333338f99 Merge 3.14 into 3.15 2018-03-14 16:08:07 -05:00
Andrew Johnson
ceaff61c09 Pull in the podToHtml.pl script and rules from 3.15
This lets src/cap5 build with Perl installations that lack Perl's
podchecker and pod2html scripts (e.g. Fedora 27).
2018-03-14 14:12:12 -05:00
Bruce Hill
12bb8969ad Rework module dependency conflict error message for easier debugging.
Now a simply grep for asyn in the build log will show you line by
line which modules depend on which asyn versions.
2018-03-12 18:47:04 -07:00
Andrew Johnson
ea408578e0 Merge 3.15 branch into 3.16 2018-03-12 16:51:23 -05:00
Andrew Johnson
2307e94d1c Rules for building bootable TESTPROD_RTEMS targets
Previously if you wanted a .boot file it had to be installed.
2018-03-12 16:34:54 -05:00
Andrew Johnson
f44da65942 Merge 3.15 branch into 3.16 2018-03-09 13:21:09 -06:00
Andrew Johnson
be8f35d782 Fix for lp: #1754298
Cleaned up and reformatted since Dirk's original.
2018-03-09 12:46:46 -06:00
Bruce Hill
6cc623a7b4 Fixed camonitor server side relative timestamps bug
tsFirst needs to get initialized from the first server side
timestamp instead of the client side tsNow.
2018-03-08 01:40:11 -08:00
Andrew Johnson
d7e416e76a Now dbGetString() works before iocInit, fix asTest to match
Previously dbGetString() of a link field would return an empty string
until iocInit was run. I fixed that earlier today, so asTest started
failing because it was checking for the old behavior.
2018-03-07 00:02:45 -06:00
Andrew Johnson
c05101bb3f Make dbGetString() fetch link fields properly before iocInit 2018-03-06 18:23:34 -06:00
Andrew Johnson
958c81db89 Protect dbGetString() if field has overflowed
Only return the number of characters that a string field can actually
hold, in case it had a buffer overflow.
2018-03-06 17:25:42 -06:00
Andrew Johnson
9020c2ce1a testdbConvert: Add some minor overflow checks 2018-03-06 14:45:06 -06:00
Andrew Johnson
1458f8640e Merge 3.15 into 3.16 2018-03-04 15:58:26 -06:00
Andrew Johnson
a9764c8f62 tools/caput: Report errors from ca_array_put*()
Fixes LP: #1747983
2018-03-04 15:51:39 -06:00
Andrew Johnson
98d9ea4545 ca/client: Catch by reference, missing '&' 2018-03-04 15:45:15 -06:00
Andrew Johnson
8eb4eec7d2 Corrected fix from Bruce Hill's Github PR#19 2018-03-03 17:17:34 -06:00
Andrew Johnson
98930eebc4 strcpy() -> strncpy() changes from Bruce Hill
Also added some additional static assertions for string field sizes.
2018-03-03 00:12:59 -06:00
Andrew Johnson
0e0a919567 Merge 3.16 into database/master 2018-02-25 00:28:39 -06:00
Andrew Johnson
cfdd689000 Merge 3.16 into 3.17 2018-02-25 00:07:45 -06:00
Andrew Johnson
292141458c Merge 3.15 branch into 3.16 2018-02-24 21:35:01 -06:00
Andrew Johnson
c18b6f2ccf Deny use of dbgf, dbpf, dbtr, dbtgf and dbtpf before iocInit
Can't use locking dbAccess routines until lock-sets have been calculated.
Fixes LP: #1725248
2018-02-24 20:15:08 -06:00
Andrew Johnson
e41f8bf518 Translate and escape chars in info tag strings
Fixes LP: #1716998
2018-02-24 19:11:54 -06:00
Andrew Johnson
ae548d3400 Remove cantProceed() from dbGetLink() and dbPutLink()
Fixes LP: #1528314
Affects 3.15 branch only.
2018-02-24 17:40:45 -06:00
Andrew Johnson
85c6e9bdfb Merge clang fixes from 3.15 into 3.16 2018-02-09 11:35:55 -06:00
Andrew Johnson
550beeab9f More clang warning clean-ups
The short => int change is a UB issue, the second argument to va_start()
must be of a type that does not undergo promotion. See
https://wiki.sei.cmu.edu/confluence/display/cplusplus/EXP58-CPP.+Pass+an+object+of+the+correct+type+to+va_start
2018-02-09 11:29:16 -06:00
Andrew Johnson
bf91275200 Merge clang fixes from 3.14 into 3.15 2018-02-09 11:16:26 -06:00
Andrew Johnson
ac4d5c95ac Clean up some compiler warnings from clang 2018-02-09 10:56:52 -06:00
Andrew Johnson
a4f072238a Merge 3.16 into database/master 2018-02-05 13:29:29 -06:00
Andrew Johnson
6603d778cb Merge 3.16 into 3.17 2018-02-05 12:51:06 -06:00
Andrew Johnson
cd8fd8a08f Merge 3.15 into 3.16 2018-02-05 12:06:37 -06:00
Andrew Johnson
61296b8cff Merge 3.14 into 3.15
Fix for LP: #1743076
2018-02-05 12:03:28 -06:00
Andrew Johnson
de442e9584 Fix for LP: #1743076
Never zero the CA client context private ID.
2018-02-05 12:02:13 -06:00
Andrew Johnson
ac367398b3 Merge fix for lp: #1747091 from 3.14 into 3.15 2018-02-02 17:49:00 -06:00
Andrew Johnson
713c2d5080 Fix for lp: #1747091
generalTimeGetEvent()
2018-02-02 17:47:35 -06:00
Andrew Johnson
eef6f3afbb Merge 3.15 branch into 3.16 2018-02-01 15:05:44 -06:00
Andrew Johnson
af07016464 Merge 3.14 branch into 3.15
Actually a different fix to Michael's 3.14 commit due to divergent code.
2018-02-01 14:20:47 -06:00
Michael Davidsaver
734d16291f rsrv: buffer for IP too small
An IPv4 address and port number
has 21 characters max.
2018-02-01 09:42:51 -08:00
Andrew Johnson
f1e5e9689b Merge 3.14 branch into 3.15 2018-02-01 11:23:29 -06:00
Andrew Johnson
1454f42a27 Config fix for parallel builds with MSVC 2015 and later
From Mark Rivers and Freddie Akeroyd.
2018-02-01 11:19:08 -06:00
Andrew Johnson
3174e22faf Merge 3.16 into 3.17 2018-01-21 00:50:16 -06:00
Andrew Johnson
506be838af Merge 3.15 into 3.16 2018-01-21 00:45:38 -06:00
Andrew Johnson
ddbdcf9462 rec/test: Add missing filename to DBDDEPENDS_FILES 2018-01-21 00:44:10 -06:00
Andrew Johnson
a5e58829fd Merge up changes from below 2018-01-20 19:17:35 -06:00
Andrew Johnson
729e6fda4d tools: Add some context to the 'Undefined macro' warning
Mark Rivers saw this warning when he forgot to configure and build a
dependent module properly. The additional information given by this
change would have helped him track down the problem faster.
2018-01-19 13:14:13 -06:00
Andrew Johnson
0315e90e6e Revert "tools: Use Carp"
This reverts commit f207b00b05.

None of these warn/die messages request a stack dump since they all
end with \n, but carp & croak ignore that.
2018-01-19 11:06:23 -06:00
Andrew Johnson
00f30ac53a Merge URL updates from 3.15 branch into 3.16 2018-01-18 23:52:18 -06:00
Andrew Johnson
66c6aaa44f Merge URL updates from 3.14 branch into 3.15 2018-01-18 23:46:42 -06:00
Andrew Johnson
c830a3a4ee Updated links to new EPICS website at Argonne
Only done for documents that are still present in EPICS 7.
2018-01-18 23:35:09 -06:00
Andrew Johnson
1daab5fb35 Add soft-channel tests for local dbCa links, both input and output
Update test descriptions.
Renamed records to match their group number.
103 more tests, but some could fail on a busy system...
2018-01-18 23:16:42 -06:00
Andrew Johnson
f5cd555383 Describe recent 3.16-only fixes in Release Notes
Preparing for Base-3.16.2 at some point.
2018-01-08 16:53:11 -06:00
Andrew Johnson
f527e5939e Cleanup epicsReadline.c
No real code changes, just reformatting and variable renames.
2018-01-08 11:58:20 -06:00
Andrew Johnson
d41f2e6806 Configure command-line interface for VxWorks
Add new LEDLIB and OTHER configuration options.
Fix typo in vxWorks/osdReadline.c
Use LEDLIB on VxWorks.

Fixes LP: #1741578
2018-01-08 11:56:37 -06:00
Andrew Johnson
692b971e06 Merge branch '3.15' into 3.16 2018-01-04 14:48:25 -06:00
Andrew Johnson
8766ce05aa Fix slow callback test failures.
Slow callbacks no longer cause test failures, now they just emit a
diagnostic. Jenkins on MacOS frequently failed those tests.

We should never test for something that we can't fix.
2018-01-04 11:41:38 -06:00
Ralph Lange
84e0220852 Merge appveyor change from 3.15 2018-01-04 09:05:49 +01:00
Ralph Lange
8f62940265 Merge appveyor change from 3.14 2018-01-04 09:03:50 +01:00
Ralph Lange
8a1477ecab appveyor-ci: update APS download URL 2018-01-04 09:00:18 +01:00
Andrew Johnson
5c97e54cf7 Drop seconds from genVersionHeader's build date/time
On Windows a build can loop forever if seconds are included.
2017-12-28 11:28:41 -06:00
Ralph Lange
3646493014 Merge appveyor changes from 3.15 into 3.16 2017-12-19 09:54:23 +01:00
Ralph Lange
89cbb95c2c Merge appveyor changes from 3.14 2017-12-19 09:52:15 +01:00
Ralph Lange
006ce1a240 appveyor-ci: remove VS 2008, add VS 2017 2017-12-19 09:39:57 +01:00
Ralph Lange
276dee2c3e appveyor-ci: use curl for download of make.zip 2017-12-19 09:39:10 +01:00
Andrew Johnson
98a2871727 Reset SNAPSHOT to -DEV after tagging 3.14.12.7 2017-12-15 16:09:21 -06:00
Andrew Johnson
5ca1bb3bd5 Set SNAPSHOT for 3.14.12.7 final release 2017-12-15 16:06:08 -06:00
Andrew Johnson
07e8cf162d Update version number after tagging release 2017-12-14 16:16:21 -06:00
Andrew Johnson
610f008529 Reset DEVELOPMENT_FLAG for database-3.17.0 release 2017-12-14 16:14:05 -06:00
Ralph Lange
1c03e615f1 template: add circle.db to exampleApp for pdbGroup 2017-12-14 17:21:44 +01:00
Ralph Lange
efee52b6d7 template: fix compiler warning in dev...Version.c 2017-12-14 17:07:05 +01:00
Ralph Lange
0f9d5cb5c1 template: add qsrv (if available) to exampleApp 2017-12-14 14:50:18 +01:00
Andrew Johnson
f6be3c7f70 Set snapshot to -rc1-DEV 2017-12-08 16:40:08 -06:00
Andrew Johnson
00924dcba0 About to tag 3.14.12.7-rc1 2017-12-08 16:37:03 -06:00
Andrew Johnson
f44bfd897e Install databaseModuleDirs.pm into bin/<host>
Adjust all scripts to use it from there.
Host arch's may use different absolute paths to the same Base directory,
so they can't share a single copy of that module.
2017-12-06 22:09:49 -06:00
Andrew Johnson
7d105aec9e Include <top>/../RELEASE.<host>.local 2017-12-06 20:33:19 -06:00
Andrew Johnson
20312f82ed Merge Release.pm fix from 3.16 into 3.17 2017-12-06 16:55:51 -06:00
Andrew Johnson
8e2b782b7c Merge Release.pm fix from 3.15 into 3.16 2017-12-06 16:52:04 -06:00
Andrew Johnson
3b0f34e0be Fix recursive check in Release.pm 2017-12-06 16:29:31 -06:00
Andrew Johnson
eac8865b7f Merge 'ignore-siml-failure' into database/master 2017-11-30 17:16:01 -06:00
Andrew Johnson
6635e3f8dc Restore behaviour when no getValue() method exists 2017-11-30 17:07:07 -06:00
Andrew Johnson
e43fb954ce Remove poptions arg from dbTryGetLink() 2017-11-30 17:02:15 -06:00
Ralph Lange
2ae721c268 test/rec: add tests for new SIML fetch failure behavior 2017-11-30 14:40:59 +01:00
Ralph Lange
a59abe82f4 db: don't set record INVALID if fetching SIML fails 2017-11-30 14:39:53 +01:00
Andrew Johnson
d1a1832968 Merge 3.16 into database/master 2017-11-18 13:47:52 -06:00
Andrew Johnson
ab555a280b Merge 3.16 into 3.17 2017-11-18 13:32:59 -06:00
Andrew Johnson
2d1f1ed2fa Merge 3.15 into 3.16 2017-11-18 13:30:06 -06:00
Andrew Johnson
db005ac3fe RULES_TARGET: Define $(lib)_DIR before it is needed
TESTLIBRARY products were being installed, because an executable
that was linked to one added a dependency assuming it would be in
the INSTALL_LIB directory. The $(lib)_DIR was being set too late
for test libraries, so the fallback location was used instead.
This fix sets $(lib)_DIR for test libraries before any rules use it.
2017-11-17 14:55:50 -06:00
Andrew Johnson
73c7b8224d Merge changes from 3.16 into database/master 2017-11-15 23:32:48 -06:00
Andrew Johnson
527a49bfc1 Merge branch 3.16 into 3.17 2017-11-15 22:23:32 -06:00
Andrew Johnson
c28a360357 Merge changes from 3.15 branch into 3.16 2017-11-15 22:20:42 -06:00
Andrew Johnson
0f0deb8903 Merge fixups/db_close_events into 3.15 2017-11-15 21:23:28 -06:00
Andrew Johnson
baf997193e Merge aSubRecord fixes from 3.14 into 3.15 2017-11-15 21:15:51 -06:00
Andrew Johnson
5278799575 aSubRecord: Copy the right amount of data
Initialize OVLx from VALx with NEVx elements, size from FTVx
2017-11-15 20:59:06 -06:00
Andrew Johnson
56b6644b87 Export tool configurations as cfg/CONFIG_* files 2017-11-14 23:34:25 -06:00
Andrew Johnson
2be750a2a0 Update epicsInstallDir.h after any CONFIG_SITE* change
INSTALL_LOCATION changes should trigger an update.
2017-11-14 21:20:39 -06:00
Andrew Johnson
e2e0dc2687 RELEASE file must define EPICS_BASE when building modules 2017-11-11 23:52:57 -06:00
Andrew Johnson
b71ec8c781 Set path to msi in CONFIG for individual module builds
This approach doesn't solve the problem of how to get to these
tools for the next module in the chain though, we need to install
a CFG file with these definitions in them, in place of the central
CONFIG_BASE file. This fixes it for now though.
2017-11-11 23:51:11 -06:00
Andrew Johnson
f36ce8ca3d Merge 3.16 into 3.17 2017-11-11 18:17:54 -06:00
Andrew Johnson
aebfe587d8 Merge installEpics.pl fix from 3.15 into 3.16 2017-11-11 18:04:46 -06:00
Andrew Johnson
031e755303 installEpics.pl: Make temporary install filename more different
A parallel build was seen matching the temporary name in a wildcard.
Now the temporary name both starts and ends differently.
2017-11-11 18:00:57 -06:00
Andrew Johnson
491ab52c98 Remove spurious files from configure 2017-11-10 15:28:20 -06:00
Michael Davidsaver
e794639e31 ioc/db: avoid possible race in db_close_events()
lp:1730982
2017-11-08 14:42:08 -06:00
Michael Davidsaver
2af98c33c9 std/rec: aSub handle INAM changing outputs
Allow EFLG="On Change" to work with INAM.
2017-11-08 14:29:30 -06:00
Andrew Johnson
c528ca5ae4 Merge development branches into database/master 2017-11-07 21:26:10 -06:00
Andrew Johnson
5e5e56b39a Restore dbVerify() to dbStaticLib 2017-11-07 17:54:50 -06:00
Andrew Johnson
94628f59f2 Merge branch 'monotonictime' into 3.17 2017-11-02 17:32:46 -05:00
Andrew Johnson
924e11a8bc rsrv: Fix include list for Windows builds
For some reason epicsExport.h doesn't work here, we have to
explicitly define epicsExportSharedSymbols and them pull in
epicsExport.h separately later. Must be something to do with
the #undef and redef that goes on in server.h
2017-11-02 17:08:42 -05:00
Andrew Johnson
2237061c85 Merge branch 'impr-sim-mode-2' into 3.17 2017-11-02 16:37:42 -05:00
Andrew Johnson
7fc6639bfa Merged branch 'rsrv-register' into 3.17 2017-11-02 14:45:05 -05:00
Andrew Johnson
d5fc85a451 Merge changes from 3.16 branch and below into database/master
Also removes some extraneous template files
2017-11-01 16:16:07 -05:00
Andrew Johnson
a50dddbd7b Move base.plt into test/tools and adjust lib path 2017-11-01 11:30:15 -05:00
Andrew Johnson
e25f95be50 Source formatting in dbFastLinkConv 2017-10-31 12:54:41 -05:00
Andrew Johnson
9a0eacd67e More tests in rec/test/softTest 2017-10-31 12:54:03 -05:00
Andrew Johnson
c94c1b47d8 More debug printf()s in lnkConst 2017-10-31 12:52:46 -05:00
Andrew Johnson
a2b963b2d9 Fix bug in fast-convert from int64 to enum
Discovered on Solaris-sparc (big-endian).
2017-10-31 12:50:53 -05:00
Andrew Johnson
f76d453a7a ringPointerTest: Prevent warnings 2017-10-30 19:54:09 -05:00
Andrew Johnson
71675fc7a4 Disable yajlTest: Duh! 2017-10-30 18:15:37 -05:00
Andrew Johnson
fbcbd58c30 libCom/test: Disable yajlTest on WIN32
Works OK on Cygwin; Perl's IPC::Open3 is likely the problem.
2017-10-30 17:56:04 -05:00
Andrew Johnson
5f1435c775 Merge yajl-2.1.0 branch into 3.16 2017-10-30 16:14:35 -05:00
Andrew Johnson
0b5577205c Merge fix-tsel branch into 3.16 2017-10-30 14:16:50 -05:00
Andrew Johnson
49d638be97 VxWorks osdMonotonic implementation
PowerPC time-base frequencies are 32-bit.
Adjust when warnings are printed.
Use long double to calculate time from time-base.
2017-10-27 15:17:38 -05:00
Andrew Johnson
05d4d7431e Merge changes from 3.15 branch into 3.16 2017-10-27 12:32:14 -05:00
Andrew Johnson
e38252eecc Fix osiSockOptMcastLoop_t for solaris 2017-10-26 16:29:03 -05:00
Andrew Johnson
31c7d91884 libCom/test/Makefile: Clean up SYS_LIBS var's
Add PROD_SYS_LIBS_solaris global setting
Remove settings for individual tests
2017-10-26 16:28:24 -05:00
Andrew Johnson
42d37eb19a Merge branch 'osiSockTest' into 3.15 2017-10-26 14:30:38 -05:00
Andrew Johnson
77de87cfb0 dbServer: Only call client() and report() methods when running
Also adjusts the tests to confirm that behaviour.
2017-10-26 13:02:20 -05:00
Andrew Johnson
48ea653ba9 Clean up taskwdTest
Ensure other threads don't interfere with test results,
let only test threads generate pass/fail outputs.
2017-10-24 21:10:00 -05:00
Michael Davidsaver
d0378adc91 ioc/db/test: check TSEL to .TIME 2017-10-24 09:30:38 -05:00
Andrew Johnson
a1d2f337f4 Initial VxWorks support code
Implemented for both PowerPC and i86.
Builds, but not tested yet.
2017-10-23 11:30:29 -05:00
Andrew Johnson
62db42bf35 Delete unused variable 2017-10-23 11:27:51 -05:00
Andrew Johnson
cec4f4e24b Unify rsrv socket errors, add missing error string 2017-10-20 14:12:49 -05:00
Andrew Johnson
67323ed84f Fix warnings reported by clang 9.0.0 2017-10-20 10:47:50 -05:00
Ralph Lange
269e93d284 Merge 3.16 into database/master 2017-10-20 17:05:16 +02:00
Andrew Johnson
d5a3df506c Fix regex's, add tests for DBD::Base
Changed $RXname to accept {} chars in the middle of a PV name.
RXdqs now handles escaped double-quotes and back-slashes properly.
New test program for the DBD::Base class and checks for each of
the $RXxxx variable regex's.
2017-10-19 23:19:27 -05:00
Andrew Johnson
7a0b095fd3 Remove /o flags from Perl regex's
Apparently they don't help in modern Perls, and can cause problems.
This commit also replaces \d with [0-9], \d also matches foreign digits.
2017-10-19 23:14:12 -05:00
Andrew Johnson
11d2a64507 Clarify release entry wording 2017-10-18 20:12:20 -05:00
Andrew Johnson
2b15bc5f70 Can't dbUnregisterServer() if stopped & no stop() method
Unregistration is allowed if we're still registering though.
This allows for cases like rsrv, which doesn't have a stop method.
However the semantics of restarting servers after they have been
stopped hasn't been defined, and rsrv probably wouldn't work if
you tried that anyway, so I'm not convinced this is useful.
2017-10-18 19:12:50 -05:00
Andrew Johnson
fb5a2d8475 Added dbUnregisterServer() routine, plus tests 2017-10-18 18:12:21 -05:00
Andrew Johnson
0406ecebe9 Ignore dbServer registrations after init
Actually store all server states, and display it in dbsr()
2017-10-18 17:35:37 -05:00
Andrew Johnson
a939324270 Added call to dbStopServers() in iocShutdown()
Renamed buildRSRV => buildServers.
Don't call other dbXxxServers() routines or announce their related
initHook states when in buildIsolated mode.
2017-10-18 17:13:46 -05:00
Andrew Johnson
e3c9d5900e Added timestamp support to the lnkCalc link type. 2017-10-18 15:39:22 -05:00
Ralph Lange
16b7a413df doc: add simulation mode changes to release notes 2017-10-17 11:28:02 +02:00
Ralph Lange
f482ee6fe1 rec: add tests for simulation mode 2017-10-16 17:15:36 +02:00
Ralph Lange
4541551211 rec: improve and streamline simulation mode 2017-10-16 17:15:01 +02:00
Ralph Lange
597c93681f db: add utility functions for simulation mode 2017-10-16 17:13:24 +02:00
Ralph Lange
c623715604 dbstatic: allow initial value of 65535 for MENU fields 2017-10-13 13:15:21 +02:00
Andrew Johnson
58460d25b9 Release Notes 2017-10-13 10:57:21 +02:00
Andrew Johnson
9e75b8b32d libcom/test: osiSockTest fix for RTEMS
Instead of 0/1 RTEMS gives 0/32 (32==SO_BROADCAST).
So switch the test to zero/non-zero.
2017-10-13 10:42:19 +02:00
Ralph Lange
3011ac2143 ioc/misc: remove double inclusion of dbBase.h in iocInit.c 2017-10-10 13:16:09 +02:00
Andrew Johnson
7eef48102c Merge changes from 3.15 branch into 3.16 2017-10-10 09:56:31 +02:00
Andrew Johnson
32a6f6c4f1 Fix DBD parsing slow-up with Perl 5.20 and later 2017-10-09 14:45:01 +02:00
Andrew Johnson
cd14e2ee9f Add missing calls to yajl_complete_parse()
Fixes leak when link parses OK but JSON errors follow.
Includes regression test.
2017-09-30 11:30:50 -05:00
Michael Davidsaver
d8d52e433c rsrv: epicsExport.h is last import 2017-09-27 17:11:58 -05:00
Michael Davidsaver
6f4e466989 yajl: add EPICS_YAJL_API_VERSION macro 2017-09-27 17:03:54 -05:00
Michael Davidsaver
8f679e1133 yajl: missing LL defs 2017-09-27 16:47:39 -05:00
Michael Davidsaver
06b2d4bb76 db/test: dbStressTest use monotonic
Conflicts:
	src/ioc/db/test/dbStressLock.c
2017-09-27 16:36:54 -05:00
Michael Davidsaver
1c00e79b6b monotonic: fix osx 2017-09-27 16:01:54 -05:00
Michael Davidsaver
cccab7437f move EPICS_EXPOSE_LIBCOM_MONOTONIC_PRIVATE before all local includes 2017-09-27 16:01:54 -05:00
Michael Davidsaver
6aec8d9bcb libCom/osi: fetch monotonic time 2017-09-27 16:01:54 -05:00
Andrew Johnson
169e9f2699 Merged 3.14 changes into 3.15 2017-09-25 15:45:53 -05:00
Andrew Johnson
22debb3532 Fix for LP: #1702298 2017-09-25 15:41:31 -05:00
Andrew Johnson
c441cdd5a4 Adjust comments about EPICS_TIMEZONE 2017-09-25 12:14:48 -05:00
Andrew Johnson
a866ead649 Use 'make test-results' target 2017-09-22 14:39:43 -05:00
Andrew Johnson
8843d20bc6 Update comments in RELEASE file 2017-09-22 14:36:36 -05:00
Andrew Johnson
c56fbc84b0 dbExpand.pl needs databaseModuleDirs
When built stand-alone, needs it to locate EPICS::Getopts
2017-09-22 14:28:55 -05:00
Andrew Johnson
044b7a31ef Use @TOP@ and @ARCH@ in .plt files
No need for msi-copy(.exe) as a result.
Tests should now work with INSTALL_LOCATION set, and
don't need to use databaseModuleDirs either.
2017-09-22 14:27:14 -05:00
Andrew Johnson
9be4d01e8a Move macLib.plt to libcom 2017-09-22 14:21:34 -05:00
Ralph Lange
ec30e4ac84 travis-ci: fix RTEMS/qemu builds 2017-09-22 11:29:38 +02:00
Ralph Lange
bfefd9e16e ci: add defaults for location macros 2017-09-21 17:25:27 +02:00
Ralph Lange
c0742264e2 ci: simplify .travis.yml 2017-09-21 17:06:30 +02:00
Ralph Lange
f7fc668dda ci: add single module build for Travis CI 2017-09-21 12:56:30 +02:00
Ralph Lange
c72294f99e Freeze SONAME=3.17.0 2017-09-20 16:50:13 +02:00
Ralph Lange
81d3ac78aa configure: use $(abspath) for executables 2017-09-20 11:15:10 +02:00
Ralph Lange
4793b27a0c db: fix dbUnitTest for changes in error symbol table 2017-09-20 11:15:04 +02:00
Ralph Lange
f6c205dafe ioc: add module version numbering 2017-09-20 11:14:58 +02:00
Ralph Lange
6ab01f23c5 test: fix path to private db includes 2017-09-20 11:14:50 +02:00
Ralph Lange
a028de1e7b Perl scripts use perl module for RELEASE dependencies 2017-09-20 09:33:29 +02:00
Ralph Lange
3b469fec58 Change paths for tools from this module 2017-09-20 09:33:22 +02:00
Ralph Lange
7ad0210ef6 Structural changes to create database module 2017-09-20 09:32:53 +02:00
Andrew Johnson
a861760dbb Give dbRegisterServer a return value (0/-1)
Add tests to check registration failures.
2017-09-19 22:24:06 -05:00
Andrew Johnson
d1018d27a4 Fix check for double-registration, add test 2017-09-19 22:09:41 -05:00
Andrew Johnson
cffa2e8f46 Fix typo in cvtFast.c
Probably only affects MEDM
2017-09-19 16:38:27 -05:00
Andrew Johnson
5641afa0e2 Change pvlOptTSELisTime to DBLINK_FLAG_TSELisTIME
Renames recGblTSELwasModified() to TSEL_modified() in dbLink.c.
Adds some tests for using JSON link types in dbCommon links.
2017-09-19 00:12:18 -05:00
Michael Davidsaver
c036fd056b missing test files 2017-09-15 17:10:04 -05:00
Michael Davidsaver
522c2e562e libCom/test: epicsThreadTest cleanup 2017-09-15 17:06:03 -05:00
Michael Davidsaver
90359d87ba quiet win32 warnings 2017-09-15 17:05:46 -05:00
Andrew Johnson
6ee2cc6039 Merged 3.14 branch into 3.15 2017-09-07 17:48:05 -05:00
Andrew Johnson
13fa1e2722 Travis: Use 'make test-results' for more compact output 2017-09-07 17:39:42 -05:00
Andrew Johnson
fad89189da Fix typo in CAref.html 2017-09-07 17:38:58 -05:00
Andrew Johnson
1fe3e9e772 Add dummy putValue methods to const link types
Includes a new softTest program to detect regressions.
Resolves http://www.aps.anl.gov/epics/core-talk/2017/msg00503.php
2017-09-07 13:48:39 -05:00
Andrew Johnson
736b81e044 Merge changes from 3.15 branch
Includes separate fix for alarm severity regression.
2017-09-02 23:52:22 -05:00
Andrew Johnson
2e4634853c Don't inherit alarm severity from self-referential links
This behavior was present in 3.14 and got lost in my link changes.
Includes a new regression test to detect the broken behavior.
2017-09-02 23:35:07 -05:00
Andrew Johnson
e0757204cc More tests, check both true and false values for options. 2017-08-30 13:58:17 -05:00
Andrew Johnson
78abb25884 Add osiSockOptMcastLoop_t and osiSockTest 2017-08-28 22:36:25 -05:00
Andrew Johnson
73f3e76150 Merged 3.14 branch config changes into 3.15 2017-08-18 17:19:05 -05:00
Andrew Johnson
4ab56518a0 Add readline support to linux-xscale_be rules
Also moves cross-build config to the right host-arch's
2017-08-18 15:14:42 -05:00
Andrew Johnson
80dbc7aeef Clean up the cross-build rules slightly 2017-08-18 15:10:13 -05:00
Andrew Johnson
238f6772bd Dirk's simpler VxWorks version rules 2017-08-18 15:06:38 -05:00
Andrew Johnson
dc9859cee9 Fix RPATH and readline for linux-arm cross-builds 2017-08-18 11:59:17 -05:00
Andrew Johnson
5d5f27a486 Don't set RPATH if STATIC_BUILD=YES 2017-08-18 11:57:50 -05:00
Andrew Johnson
ad6a16d7c4 Update EPICS_TIMEZONE settings, extend to 2022 2017-08-18 11:33:17 -05:00
Michael Davidsaver
0205dcc61f Merge branch '3.15'
* 3.15:
  rsrv: fix recv() error handling on WIN32
  rsrv: export CASDEBUG to iocsh
  rsrv: flush any queued messages before forced disconnect
  rsrv: locking in cas_send_bs_msg()
  rsrv: missing send lock around send_err()
  rsrv: drop un-commited VERSION message
  rsrv: add some comments
  rsrv: avoid possible overflow in vsend_err()
  Use static strings for epicsInterruptContextMessage()

# Conflicts:
#	src/ioc/rsrv/camessage.c
2017-08-01 17:20:21 +02:00
Michael Davidsaver
111cac8e47 merge 3.14 2017-08-01 17:14:34 +02:00
Michael Davidsaver
5c8e5c52ef rsrv: fix recv() error handling on WIN32
For WIN32 osiSockIoctl_t is unsigned, so

> osiSockIoctl_t nchars = recv(...

is casting signed -> unsigned which treats
errors as success.
2017-08-01 17:02:41 +02:00
Michael Davidsaver
546df1c1f0 rsrv: export CASDEBUG to iocsh 2017-08-01 17:02:41 +02:00
Michael Davidsaver
603331e7a5 rsrv: flush any queued messages before forced disconnect
Avoid loss of various ERROR messages which camessage()
has queued.
2017-08-01 16:44:48 +02:00
Michael Davidsaver
4b272cc0cf rsrv: locking in cas_send_bs_msg()
Must lock around "pclient->send.stk = 0u;"
2017-08-01 16:44:48 +02:00
Michael Davidsaver
619a99bf99 rsrv: missing send lock around send_err() 2017-08-01 16:44:48 +02:00
Michael Davidsaver
1f8cb740f1 rsrv: drop un-commited VERSION message
This is a no-op as cas_commit_msg() isn't called.
A VERSION message is already queued during create_tcp_client().
2017-08-01 16:44:29 +02:00
Michael Davidsaver
322f7a97de rsrv: add some comments 2017-08-01 16:44:29 +02:00
Michael Davidsaver
0fc770166c rsrv: avoid possible overflow in vsend_err()
Accounting of message size doesn't take into account
space used by header of failed message (16 or 24 bytes).
This would allow a theoretical really long error message
to overflow the send buffer by 16 or 24 bytes.
2017-08-01 16:44:08 +02:00
Andrew Johnson
d1f60e4c8c dbRegisterServer: Don't ignore sub-string names
Also adjusts the tests to check we do it properly.
2017-07-29 01:30:45 -05:00
Andrew Johnson
7c6b037252 Add explicit "no servers" message to dbsr()
Make dbsr explicitly say so if no dbServer layers have been
registered with the dbServer API.
2017-07-29 00:51:31 -05:00
Michael Davidsaver
296fb35a5c db_cleanup_events handle 0 2017-07-28 11:18:56 +02:00
Andrew Johnson
519a75fde6 Merge vpath fix from 3.15 branch 2017-07-26 12:04:25 -05:00
Andrew Johnson
f04f17f9bf Remove vpath for %.pl files
It isn't needed, and in some configurations it causes build failures.
Similar problems could still occur for other file types with a similar
vpath, but it's less likely that other file types would be installed in
an equivalent $(TOP)/../<dir> path.

The original issue with .pl files was caused by an installation of Base
where the parent directory had a bin/<host> soft-link pointing to the
same bin/<host> of a newer installation of the same version of Base, so
it had all the necessary .pl files in it. The vpath allowed the build in
src/tools to search $(TOP)/../bin/<host> when checking the buildInstall
dependency, and since it found those .pl files through the vpath it
didn't bother to install them. When they were run later on in the build
from the $(TOP)/bin/<host>/ path they weren't present so it failed.
2017-07-26 12:02:24 -05:00
Michael Davidsaver
d2fad17be7 rsrv: fix large array expansion
Causes a crash when a larger buffer is made even larger.
Previous buffer not being free'd correctly.
2017-07-26 17:58:01 +02:00
Andrew Johnson
461daadd5b Release Notes entry 2017-07-25 00:39:40 -05:00
Andrew Johnson
2cf997ddbf Test EPICS_IOC_IGNORE_SERVERS variable 2017-07-25 00:38:34 -05:00
Andrew Johnson
1a70855e25 Use static strings for epicsInterruptContextMessage()
The callbackRequest() routine was passing a stack-allocated
string to epicsInterruptContextMessage() but on RTEMS the
pointer is queued without copying the string. This fix uses
static strings for the 3 messages instead.

Fixes LP: #1705219
2017-07-24 11:19:20 -05:00
Andrew Johnson
ba9763f551 Set test plan 2017-07-23 23:35:03 -05:00
Andrew Johnson
17e6060d16 Added some dbServer unit tests 2017-07-23 23:30:04 -05:00
Andrew Johnson
306a53503a Add no-strict-aliasing compiler flags to gdd & pcas 2017-07-05 17:02:28 -05:00
Andrew Johnson
7a571989f8 Add yajl test for trailing commas in arrays and maps 2017-06-26 23:34:07 -05:00
Andrew Johnson
50028f2eda Fix yajl_test bug
Test program doesn't always read from stdin, although in both
the original and the EPICS test director it does.
2017-06-26 23:32:10 -05:00
Andrew Johnson
c288de3bf2 Add yajl parser tests
yajl_test.c is the test runner, from the yajl distribution.
The yajlTestConverter.pl script converts the yajl distribution's
test case files into a data structure in yajlTestCases.pm.
yajlTest.plt is a test director which reads the test cases from
yajlTestCases.pm and runs them through the yajl_test program.
2017-06-26 00:40:17 -05:00
Andrew Johnson
08ad4de161 yajl: Out-of-memory handling; another size_t 2017-06-24 01:20:39 -05:00
Andrew Johnson
c2d22ed925 Added Doxygen comments for dbServer API 2017-06-24 00:04:20 -05:00
Andrew Johnson
db3e79e4b7 Merged changes from 3.15 branch into 3.16 2017-06-22 19:00:51 -05:00
Andrew Johnson
fb9e55a76e Fix scalar link initialization from hex constants
Partially fixes LP: #1699445
Includes regression tests, with TODO for arrays which are still broken
and need a full JSON5 parser to fix.
2017-06-22 18:45:10 -05:00
Andrew Johnson
745109e423 Add loop detection to Release.pm
GNUmake will *usually* spot recursive "include" loops first, but
not if the loop is in another module that we're just checking.
In that case Release.pm eats file descriptors until they run out
without this fix.
2017-06-22 18:38:07 -05:00
Andrew Johnson
b9d2712738 Argh!!! 2017-06-22 17:07:56 -05:00
Andrew Johnson
a69bd833fc More msi.plt retries for Jenkins builds on Windows 2017-06-22 16:45:00 -05:00
Andrew Johnson
630b4f375d Fix 'make test-results' rule for Windows 2017-06-22 16:42:53 -05:00
Andrew Johnson
9d4a90ac34 Fix link initialization from hex constants
Fixes LP: #1699445
Includes regression tests (some of which will fail on 3.16)
2017-06-22 14:29:04 -05:00
Andrew Johnson
cc0dacedb5 Merge changes from 3.15 branch into 3.16 2017-06-20 15:54:35 -05:00
Andrew Johnson
83cb50574a Merge bug-fix from 3.14 branch into 3.15 2017-06-20 15:50:49 -05:00
Andrew Johnson
6b5e7da4fd catools: dbr_long_t is only 32 bits wide
Don't print it as a native long.
Fixes LP: #1699332
2017-06-20 15:49:41 -05:00
Andrew Johnson
69d530f1db Cross-build fix for generated .t files
The *target* OS should determine whether to use system or exec.
2017-06-16 15:37:55 -05:00
Andrew Johnson
411a60c32d Add missing link libraries 2017-06-16 12:44:10 -05:00
Andrew Johnson
79fe79ad56 Merged changes from 3.15 branch into 3.16 2017-06-14 14:55:53 -05:00
Andrew Johnson
105e831442 Merge changes from 3.14 branch into 3.15 2017-06-14 10:17:31 -05:00
Andrew Johnson
a1dc16848c configure: Fix include CONFIG_APP_INCLUDE
which needs to happen *after* CONFIG_SITE overrides.
2017-06-14 10:03:43 -05:00
Andrew Johnson
2819d7ea3d Posix epicsEventWaitWithTimeout() max delay
Limit timeouts on Posix to max-out at 10 years.
Adds a test that will fail when that time-out hits Y2038 on
systems where time_t is still a 32-bit integer.
2017-06-14 10:01:23 -05:00
Andrew Johnson
6efe292494 Add EPICS_IOC_IGNORE_SERVERS environment variable
dbServers cannot be registered when their names appear in this
variable, so they should remain inactive. This feature is mainly
intended for debugging, so the crude name search should be OK.
2017-06-13 23:36:30 -05:00
Andrew Johnson
f464274439 Remove declarations of previously-deleted functions
Fixes LP: #1696801
2017-06-12 18:15:12 -05:00
Andrew Johnson
6ef995525a Restore the use of DBL_MAX in timerQueue.cpp 2017-06-09 13:44:30 -05:00
Andrew Johnson
18dee384ec Fix tv_sec casts to use time_t, not long 2017-06-09 12:20:16 -05:00
Andrew Johnson
b369aa67f1 Use 1000 years as 'forever' in timers
DBL_MAX causes problems...
2017-06-08 21:55:12 -05:00
Andrew Johnson
085fab4aed Merge 3.14 branch into 3.15 2017-06-08 09:55:05 -04:00
Andrew Johnson
c853234e01 Remove artificial 60-minute timeout limit (Posix) 2017-06-08 09:53:07 -04:00
Andrew Johnson
2d1d14e4b4 Make rsrv register itself using a DBD file
This allows the rsrv to be excluded by removing 'include rsrv.dbd'
from a local copy of the base.dbd file.
Server initialization, running and pausing are moved to new
methods of the dbServer object, and the existing registration
path is converted to just use the new rsrv.dbd file.
2017-06-06 23:18:55 -04:00
Andrew Johnson
4c6b570a46 Permit trailing commas in JSON maps & arrays
Handled in both dbYacc and yajl parsers.
Adds tests to linkInitTest.
2017-06-05 12:49:26 -05:00
Andrew Johnson
e1ba1c6bba Fix YAJL token names, brace <=> bracket
This breaks future updates from upstream, but it looks like the
original author has abandoned the project anyway.
2017-06-05 12:01:37 -05:00
Andrew Johnson
7980d78908 Add tests for 64-bit constant link initializers 2017-06-04 00:40:53 -05:00
Andrew Johnson
80fa616a86 Convert lnkConst to 64 bit integers 2017-06-04 00:40:53 -05:00
Andrew Johnson
70a46e9c2c Adjust IOC code for yajl-2.1.0 API 2017-06-04 00:40:53 -05:00
Andrew Johnson
de43941083 Upgrade yajl sources to 2.1.0 2017-06-04 00:40:53 -05:00
Andrew Johnson
d47b1a1854 Reset snapshot to -DEV 2017-06-02 14:57:58 -05:00
Andrew Johnson
ee91b29fe0 Clear version snapshot for 3.16.1 final release 2017-06-02 14:54:58 -05:00
Andrew Johnson
0c9254f768 Final documentation updates 2017-06-02 14:53:11 -05:00
Andrew Johnson
073f3f33a6 Merge 3.15 branch into 3.16 2017-06-01 16:42:10 -05:00
Andrew Johnson
1293747cf3 Merge 3.14 branch into 3.15 2017-06-01 16:40:33 -05:00
Andrew Johnson
9c859ffdca Protect casStatsFetch() if called before rsrv_init()
Also ensures clientQ is initialized before creating clientQlock.

Fixes LP: #1694966
2017-06-01 15:37:34 -05:00
Andrew Johnson
29c069db3d Testing msi: Add retries if necessary
Hoping this will fix the annoying problems on Windows Jenkins.
2017-05-31 12:51:39 -05:00
Andrew Johnson
77c00faabe Merge 3.15 branch into 3.16 2017-05-30 17:17:59 -05:00
Andrew Johnson
12d22e392f Merge 3.14 branch into 3.15 2017-05-30 17:14:56 -05:00
Andrew Johnson
0dc850f4ec A gitignore pattern for vi on MacOS 2017-05-30 17:13:56 -05:00
Andrew Johnson
117e294ec6 Set asynSoftTest plan 2017-05-27 21:59:44 -05:00
Andrew Johnson
afdb6af0c7 Fix buffer size issue in devI64inSoftCallback 2017-05-27 21:56:10 -05:00
Andrew Johnson
b97f04464c Add asyncSoftTest to record test harness 2017-05-27 21:45:46 -05:00
Andrew Johnson
b2473f939f Rename asyncSoft main routine 2017-05-27 21:41:37 -05:00
Andrew Johnson
c05fa4ddb7 Add tests for Async Soft Channel devices 2017-05-27 20:57:42 -05:00
Andrew Johnson
c8fcfbea9f Convert all Async Soft Channel input devices to use link support 2017-05-27 20:35:53 -05:00
Andrew Johnson
07aa712b07 Convert int64out Async Soft Channel device to use link support 2017-05-27 20:33:38 -05:00
Michael Davidsaver
1865e84321 ioc/db: dbLockCleanupRecords() warn only if lockSets remain 2017-05-24 18:41:32 -04:00
Andrew Johnson
7efba21d1f Fix 32-bit issue in linkInitTest.c 2017-05-24 16:41:34 -04:00
Andrew Johnson
c22c94a3aa Convert devI64inSoft for Link Support
Includes tests to make sure it actually works
2017-05-24 00:20:38 -04:00
Andrew Johnson
542353aedb Fix aai constant initialization
The aai record is "special" and does things its own way.
These changes let it support {const:[...]} initialization without
breaking regular input link types which could be initialized twice
without the new DBLINK_FLAG_INITIALIZED guard in dbInitLink().

Also adds tests for this, and for similar links for waveform.
2017-05-23 23:51:26 -04:00
Andrew Johnson
c670ef0199 Merge 3.15 branch into master 2017-05-19 17:42:40 -05:00
Andrew Johnson
98b0f7e48b Merge 3.14 branch into 3.15 2017-05-19 17:34:49 -05:00
Andrew Johnson
672fd16ec8 Add make targets test-results and clean-tests
These are mainly intended for CI builds.
2017-05-19 15:44:15 -05:00
Ralph Lange
dcadeac903 ci: add appveyor configuration 2017-05-19 13:38:39 +09:00
Andrew Johnson
43ea188385 Merge 3.15 branch into 3.16
# Conflicts:
#	configure/CONFIG_BASE
#	configure/RULES_BUILD
2017-05-18 17:10:40 -05:00
Andrew Johnson
0b3e44747e Merge 3.14 branch into 3.15
# Conflicts:
#	configure/RULES.Db
#	configure/RULES_ARCHS
#	configure/RULES_BUILD
#	documentation/RELEASE_NOTES.html
2017-05-18 17:07:41 -05:00
Andrew Johnson
b7b3dd2b37 Support for 'make junitfiles' target.
The Perl XML::Generator module must be installed to use this.
2017-05-18 16:31:43 -05:00
Andrew Johnson
ffa7399c71 Merge changes from 3.15 branch 2017-05-11 16:39:52 -05:00
Andrew Johnson
b14d77dcf2 Fix tools/test/*.plt 'use lib' lines
This allows the tests to work when INSTALL_LOCATION is set.
2017-05-11 15:29:52 -05:00
Andrew Johnson
cb89710bbd Update comments in the configure/RELEASE file 2017-05-11 14:50:00 -05:00
Andrew Johnson
b3bbf67ce8 Add support for a CONFIG_SITE.local file 2017-05-11 14:49:04 -05:00
Ralph Lange
78b910574d ci/appveyor: print perl version to console log 2017-05-10 17:31:25 +02:00
Xiaoqiang Wang
82396ee3ef fix data size of gdd container type
getDataSizeElement of gdd container returns the number of sub fields.
It has to be called on the "value" field. This fix has already been done
in monitorReponse.
2017-05-10 10:22:13 -05:00
Andrew Johnson
020f09e83a Fix EPICS_CA_AUTO_ARRAY_BYTES doc'n in CAref.html 2017-05-09 14:58:40 -05:00
Andrew Johnson
ac590e671e Adjustments to Checklist commands 2017-05-09 14:46:25 -05:00
Andrew Johnson
e0dea7ab23 Set snapshot to -rc1-DEV 2017-05-09 14:45:55 -05:00
Andrew Johnson
7aefee6737 Set Base version number for 3.16.1-rc1 2017-05-09 14:00:29 -05:00
Andrew Johnson
f9564a3b82 Various Release Notes tweaks 2017-05-09 13:57:17 -05:00
Andrew Johnson
17da4bfc1f Additional ReleaseChecklist updates 2017-05-09 13:08:59 -05:00
Ralph Lange
2fe8d82872 ci: make appveyor version number unambiguous 2017-05-09 14:03:40 +02:00
Ralph Lange
2ff9f249a0 ci: add appveyor configuration 2017-05-09 12:01:36 +02:00
Andrew Johnson
5ec1340902 Convert ReleaseChecklist commands to git 2017-05-08 20:45:39 -05:00
Michael Davidsaver
269f828733 ca: assume that CA name servers have minor version >=12
Assume that servers listed in EPICS_CA_NAME_SERVERS
support CA >=12, practically >=1 to support the
authentication messages.
2017-05-07 20:27:34 -04:00
Michael Davidsaver
4ce60c9797 src/tools: avoid dep. warning in rRDD generated
when building a support module
2017-05-07 20:27:34 -04:00
Michael Davidsaver
d5fc8c9b76 ioc/dbStatic: reduce warning spam for typed rset
There are an amazing number of warnings in any code which
includes recSup.h indirectly, including dbStaticLib.h.
Don't use the RECSUPFUN typedef internally to reduce
the number.
2017-05-07 10:06:38 -04:00
Andrew Johnson
93c0dcd3e5 Missing include 2017-05-06 01:11:53 -05:00
Andrew Johnson
fd583ac594 Fix MSC 2-digit-exponent in cvtFastTest.c 2017-05-06 00:41:52 -05:00
Michael Davidsaver
9621ff1552 libCom/test: cvtFastTest improve output 2017-05-05 20:54:19 -04:00
Michael Davidsaver
3f49787be1 ioc/db/test: fix jlinkz dllimport/export 2017-05-05 20:38:20 -04:00
Michael Davidsaver
bbd9ba0b6d std/filters: fix filters test harness 2017-05-05 20:15:03 -04:00
Michael Davidsaver
fcd443a026 missing test spec 2017-05-05 17:14:15 -04:00
Michael Davidsaver
02809de380 fix long long constants 2017-05-04 21:13:07 -04:00
Michael Davidsaver
987943be4e Merge remote-tracking branch 'int64b/master'
* int64b/master: (25 commits)
  std/rec: streamline variable names in int64in/int64out
  std/rec/test: recMiscTest check in64in/out
  ioc/db: dbUnitTest helps support int64
  std/rec: ioc64in/outRecord typed rset
  minor
  std/rec: fix copyright in int64in sources
  std: remove SCM keywords from int64in and int64out sources
  std/rec: fix promptgroups in dbd.pod files
  std/rec: add and improve pod for int64in and int64out
  std/rec: add pod documentation content for int64out
  std/rec: add pod documentation for int64out record
  dbStatic: dbPutStringNum() overflow handling
  dbStatic: more informative error for bad field value
  dbStatic: dbPutStringNum(, "") not an error
  Release Notes
  cvtFastPerform: Rename reserved member names, fix for vxWorks
  Simplify epicsConvertDoubleToFloat()
  More cvtFastPerform changes
  Collate and report by precision
  Restructure cvtFastPerform, fix VxWorks build
  ...
2017-05-04 20:18:24 -04:00
Michael Davidsaver
16a3657613 Merge remote-tracking branch 'linksup/master'
* linksup/master: (112 commits)
  ioc/dbStatic: rename link debugging info tags
  jlif future proof for 64-bit json parser
  Demonstrate and use numeric literals in calc args
  separate jlink and lset debug flags
  std/link: runtime conditional debugging in calc/const
  std/rec/test: extend linkRetargetLink w/ jlink
  ioc/db: dbUnitTest add testdbPutArrFieldOk()
  ioc/db: cleanup dbEvent freeLists
  ioc/db: dbUnitTest testMonitor leaks dbChannel
  std/link: all calc example
  jlink conditional debug print
  ioc/as: dbCore needs ca
  Additional linkInitTest checks
  Minimize work done in readLocked routine
  Minimize work done in readLocked() routine
  Cosmetic changes to various soft device supports
  Enhancements to subArray record & soft device support
  Fix bug in eventRecord::init_record
  Updates to Release Notes and links.html
  Make dbLinkIs{Constant|Volatile}() return only true/false
  ...

Conflicts:
	documentation/RELEASE_NOTES.html
	src/ioc/db/dbAccess.c
2017-05-04 20:14:30 -04:00
Michael Davidsaver
8ae7930375 ioc/dbStatic: rename link debugging info tags 2017-05-04 20:12:02 -04:00
Andrew Johnson
05d3e640cd Testing msi: Add retries if necessary
Hoping this will fix the annoying problems on Windows Jenkins.
2017-05-04 14:48:18 -05:00
Andrew Johnson
efe8d69f82 dbStaticTest: More friendly test output 2017-05-04 12:33:32 -05:00
Andrew Johnson
2c65739286 Change indfield settings in new dbInitEntryFrom*()
Can get indfield value from dbAddr->pflddes->indRecordType.
Make FromRecord set indfield=0 like dbFindRecord() does.

Adjust dbStaticTest to match.
2017-05-04 12:31:17 -05:00
Andrew Johnson
93fe387e87 Fix dbStaticTest recnode flags check 2017-05-04 12:23:57 -05:00
Ralph Lange
ad0695b119 std/rec: streamline variable names in int64in/int64out 2017-05-04 09:27:23 +02:00
Michael Davidsaver
8f880a614c ioc/db/test: check record node flags 2017-05-03 19:32:50 -04:00
Michael Davidsaver
7805fbe295 ioc/dbStatic: rename dbRecordNode aliasedRecord -> aliasedRecnode 2017-05-03 19:31:38 -04:00
Michael Davidsaver
2a81e0b338 std/rec/test: recMiscTest check in64in/out 2017-05-03 19:18:52 -04:00
Michael Davidsaver
5e0dc5d1c9 ioc/db: dbUnitTest helps support int64 2017-05-03 18:39:43 -04:00
Michael Davidsaver
1b16c7130b std/rec: ioc64in/outRecord typed rset 2017-05-03 17:58:29 -04:00
Michael Davidsaver
925d03bcec minor 2017-05-03 17:54:58 -04:00
Michael Davidsaver
1151d78cb5 Merge remote-tracking branch 'launchpad/master'
* launchpad/master: (116 commits)
  ioc/rsrv: bounds check DBR
  CAref mention EPICS_CA_MCAST_TTL
  EPICS_CA_AUTO_MAX_ARRAY_BYTES -> EPICS_CA_AUTO_ARRAY_BYTES
  missing include
  ioc/db/test: dbStaticTest dbInitEntryFromAddr() works before iocInit()
  ioc/db/test: dbStaticTest test operations on aliases
  ioc: rename dbCommonPvt::recnode
  ioc/dbStatic: better alias tracking
  ioc/dbStatic: add dbInitEntryFromRecord()
  ioc: populate RDES early
  rename dbInitEntryFromChannel -> dbInitEntryFromAddr
  ioc/db: Add dbCommonPvt
  ioc/dbStatic: add dbInitEntryFromChannel()
  ioc/dbStatic: dbAllocRecord whitespace
  ioc/rsrv: fix C89 issue
  add EPICS_CA_MCAST_TTL
  update RELEASE_NOTES
  replace caLimitArray with EPICS_CA_AUTO_MAX_ARRAY_BYTES
  update RELEASE_NOTES
  rename iocshFind -> iocshFindCommand
  ...

Conflicts:
	documentation/RELEASE_NOTES.html
	src/ioc/db/dbConvert.c
	src/ioc/db/dbFastLinkConv.c
	src/ioc/db/test/Makefile
	src/ioc/db/test/dbPutGetTest.c
	src/ioc/db/test/dbPutGetTest.db
	src/ioc/dbStatic/dbStaticRun.c
2017-05-03 17:54:43 -04:00
Michael Davidsaver
b4c625d8d1 jlif future proof for 64-bit json parser 2017-05-03 17:27:57 -04:00
Michael Davidsaver
096fb5e0a2 Merge remote-tracking branch 'addr2entry/master'
* addr2entry/master:
  ioc/db/test: dbStaticTest dbInitEntryFromAddr() works before iocInit()
  ioc/db/test: dbStaticTest test operations on aliases
  ioc: rename dbCommonPvt::recnode
  ioc/dbStatic: better alias tracking
  ioc/dbStatic: add dbInitEntryFromRecord()
  ioc: populate RDES early
  rename dbInitEntryFromChannel -> dbInitEntryFromAddr
  ioc/db: Add dbCommonPvt
  ioc/dbStatic: add dbInitEntryFromChannel()
  ioc/dbStatic: dbAllocRecord whitespace
2017-05-03 17:07:07 -04:00
Michael Davidsaver
8640e1c9fb Merge remote-tracking branch 'launchpad/3.15'
* launchpad/3.15:
  ioc/rsrv: bounds check DBR
2017-05-03 17:06:51 -04:00
Michael Davidsaver
a7c14ec995 Merge remote-tracking branch 'launchpad/3.14'
* launchpad/3.14:
  ioc/rsrv: bounds check DBR
2017-05-03 16:53:43 -04:00
Michael Davidsaver
e430d097b7 ioc/rsrv: bounds check DBR
avoid array overrun when evaluating dbr_size_n() macro.
2017-05-03 16:49:28 -04:00
Michael Davidsaver
d154d8eab7 CAref mention EPICS_CA_MCAST_TTL 2017-05-03 14:17:56 -04:00
Michael Davidsaver
3fbdcdb032 EPICS_CA_AUTO_MAX_ARRAY_BYTES -> EPICS_CA_AUTO_ARRAY_BYTES 2017-05-03 13:59:35 -04:00
Ralph Lange
eedf296cd2 std/rec: fix copyright in int64in sources 2017-05-03 17:07:46 +02:00
Ralph Lange
f0d7d42ab4 std: remove SCM keywords from int64in and int64out sources 2017-05-03 17:07:06 +02:00
Ralph Lange
5761028d6f std/rec: fix promptgroups in dbd.pod files 2017-05-03 17:00:19 +02:00
Michael Davidsaver
fbc1ed26f0 missing include 2017-05-03 10:18:32 -04:00
Ralph Lange
93b47f103e std/rec: add and improve pod for int64in and int64out 2017-05-03 16:17:27 +02:00
Michael Davidsaver
1917d0563a ioc/db/test: dbStaticTest dbInitEntryFromAddr() works before iocInit() 2017-05-02 21:30:43 -04:00
Michael Davidsaver
da4bf2d5ee ioc/db/test: dbStaticTest test operations on aliases 2017-05-02 21:12:09 -04:00
Michael Davidsaver
ec3a89e43c ioc: rename dbCommonPvt::recnode 2017-05-02 21:11:46 -04:00
Michael Davidsaver
62475a383e ioc/dbStatic: better alias tracking
Ensure that alias of alias sets DBRN_FLAGS_HASALIAS
on the aliased dbRecordNode.

Add dbFollowAlias() for completeness.
2017-05-02 21:11:46 -04:00
Michael Davidsaver
6ba949cdb4 ioc/dbStatic: add dbInitEntryFromRecord() 2017-05-02 21:11:46 -04:00
Michael Davidsaver
5d37bc2996 ioc: populate RDES early
The record type is known at allocation time,
so store RDES immediately.
2017-05-02 21:11:46 -04:00
Michael Davidsaver
2eaede9925 rename dbInitEntryFromChannel -> dbInitEntryFromAddr 2017-05-02 21:11:46 -04:00
Michael Davidsaver
12d68e6021 ioc/db: Add dbCommonPvt
Add some hidden "fields" for every record.
Allows Base internal hidden accounting
which can be changed without an ABI break.
2017-05-02 21:11:46 -04:00
Michael Davidsaver
78a7ad168e ioc/dbStatic: add dbInitEntryFromChannel()
Constant time population of a DBENTRY from
a valid dbAddr.
2017-05-02 21:11:46 -04:00
Michael Davidsaver
f716b1b26a ioc/dbStatic: dbAllocRecord whitespace 2017-05-02 21:11:46 -04:00
Michael Davidsaver
0bbb381efd ioc/rsrv: fix C89 issue 2017-05-02 21:06:35 -04:00
Michael Davidsaver
f2a1834dc9 add EPICS_CA_MCAST_TTL
may be necessary/helpful for mcast search/beacon usage
across sub-nets.
2017-05-02 20:35:00 -04:00
Michael Davidsaver
6572816a6a update RELEASE_NOTES 2017-05-02 20:16:49 -04:00
Michael Davidsaver
c304e29da6 Merge remote-tracking branch 'cahuge/master'
* cahuge/master:
  replace caLimitArray with EPICS_CA_AUTO_MAX_ARRAY_BYTES
  ca: fix export caLimitArray on win32
  rsrv: export variable caLimitArray
  rsrv: optional max_array_bytes
  cas: simplify buffer alloc
  ca: large array free list is optional
  rsrv: support larger than max. array bytes
  pcas: support larger than max array bytes
  ca: support alloc larger than max array bytes
2017-05-02 20:06:54 -04:00
Michael Davidsaver
9fd8eec2e2 replace caLimitArray with EPICS_CA_AUTO_MAX_ARRAY_BYTES 2017-05-02 19:31:21 -04:00
Michael Davidsaver
a873c4f3dc Merge remote-tracking branch 'launchpad/3.15'
* launchpad/3.15:
  rename iocshFind -> iocshFindCommand
  Added patch
  Changed function outputs to remove pointer to next function.
  more whitespace
  whitespace
  Added functions to allow access to what functions and variables the ioc shell has registered.
  missing include
  ioc/dbStatic: dbFreeBase() don't double free alias'd records
  ioc/dbStatic: plug leak in dbFreeBase()
  ioc/dbStatic: whitespace
  Fix indentation warning from GCC
  libCom/test: errlog test more verbose
  libCom: STATIC_ASSERT use c++11 static_assert when possible
  Check for empty PV names in Perl catools

Conflicts:
	src/std/rec/subRecord.c
2017-05-02 19:08:51 -04:00
Michael Davidsaver
26650d6cbf update RELEASE_NOTES 2017-05-02 19:02:18 -04:00
Michael Davidsaver
d1a0b74c83 Merge remote-tracking branch 'camodern/master'
* camodern/master:
  cas: ignore CA client version older than v4.4
  rsrv: remove !CA_V44() code
  rsrv: no ca exception response to UDP
  rsrv: ignore CA client version older than v4.4
  cas: honor DOREPLY for TCP searches
  cas: ignore echo and unexpected UDP
  rsrv: send channel create failure
  rsrv: UDP search ignore DOREPLY
  rsrv: ignore echo and unexpected UDP

Conflicts:
	src/ca/legacy/pcas/generic/casDGClient.cc
2017-05-02 18:41:09 -04:00
Michael Davidsaver
875e4db3f9 Merge remote-tracking branch 'launchpad/3.14'
* launchpad/3.14:
  missing include

Conflicts:
	src/ioc/dbStatic/dbStaticLib.c
2017-05-02 18:38:40 -04:00
Michael Davidsaver
8c8604c503 Merge remote-tracking branch 'launchpad/3.14'
* launchpad/3.14:
  ioc/dbStatic: dbFreeBase() don't double free alias'd records
  ioc/dbStatic: plug leak in dbFreeBase()
  ioc/dbStatic: whitespace
  Fix indentation warning from GCC
  libCom/test: errlog test more verbose
  libCom: STATIC_ASSERT use c++11 static_assert when possible
  Check for empty PV names in Perl catools

Conflicts:
	src/ioc/dbStatic/dbStaticLib.c
	src/libCom/osi/epicsAssert.h
2017-05-02 18:31:40 -04:00
Michael Davidsaver
9d7c4434ad rename iocshFind -> iocshFindCommand 2017-05-02 18:23:52 -04:00
Keenan Lang
67e12bca9f Added patch 2017-05-02 18:23:52 -04:00
Keenan Lang
15cb72acbc Changed function outputs to remove pointer to next function. 2017-05-02 18:23:52 -04:00
Keenan Lang
45ed461665 more whitespace 2017-05-02 18:23:52 -04:00
Keenan Lang
3986e43135 whitespace 2017-05-02 18:23:51 -04:00
Keenan Lang
daad3c6995 Added functions to allow access to what functions and variables the ioc shell has registered. 2017-05-02 18:23:51 -04:00
Michael Davidsaver
38be82a154 missing include 2017-05-02 18:22:57 -04:00
Michael Davidsaver
27cd9fd051 ioc/dbStatic: dbFreeBase() don't double free alias'd records
dbFreeBase() has been broken since alias() was introduced.

Traversal of recList in the function assumed that dbDeleteRecord()
remove only the current dbRecordNode.  However, dbDeleteRecord()
called dbDeleteAliases() which removes alias dbRecordNode s.
If this happens (as it often does) to be the node immediately
after the real node, dbFreeBase() will then iterate using
a ellDelete()d node.
2017-05-02 18:04:06 -04:00
Michael Davidsaver
1ffce72a38 ioc/dbStatic: plug leak in dbFreeBase() 2017-05-02 18:02:05 -04:00
Michael Davidsaver
dcac64d50f ioc/dbStatic: whitespace 2017-05-02 18:01:39 -04:00
Andrew Johnson
83428d2b2c db/test: Cleanup unused variable 2017-05-02 12:39:09 -05:00
Ralph Lange
1235ad76e7 std/rec: add pod documentation content for int64out 2017-05-02 13:51:44 +02:00
Andrew Johnson
1cad1c5ba6 Demonstrate and use numeric literals in calc args 2017-04-29 20:43:54 -05:00
Michael Davidsaver
12fc7ed07c libCom: add EPICS_FUNCTION
Automatic macro which expands to the current function name.
Useful in debug prints.
2017-04-28 19:19:14 -04:00
Michael Davidsaver
564ef01951 typo 2017-04-28 19:19:14 -04:00
Michael Davidsaver
f65b2119ad separate jlink and lset debug flags
"lsetDebug" for lset callbacks and "jlinkDebug" for jlink parsing.
2017-04-28 17:11:47 -04:00
Michael Davidsaver
4a9fe82575 std/link: runtime conditional debugging in calc/const 2017-04-28 16:59:26 -04:00
Michael Davidsaver
2a1f790909 std/rec/test: extend linkRetargetLink w/ jlink 2017-04-28 16:59:26 -04:00
Michael Davidsaver
d752b962d5 ioc/db: dbUnitTest add testdbPutArrFieldOk() 2017-04-28 16:44:18 -04:00
Andrew Johnson
0bf789db4c Fix indentation warning from GCC 2017-04-28 14:56:18 -05:00
Michael Davidsaver
b4db176e48 ioc/db: cleanup dbEvent freeLists 2017-04-28 15:47:27 -04:00
Michael Davidsaver
d397f0fd92 ioc/db: dbUnitTest testMonitor leaks dbChannel 2017-04-28 15:43:17 -04:00
Ralph Lange
b096dc3e01 std/rec: add pod documentation for int64out record 2017-04-28 16:41:02 +02:00
Michael Davidsaver
be8de34130 std/link: all calc example 2017-04-27 19:50:46 -04:00
Michael Davidsaver
579a0791ea jlink conditional debug print
Enable magic info("linkDebug","YES") to enable
debug prints during parsing.
2017-04-27 19:46:33 -04:00
Michael Davidsaver
e51cc39b0c ioc/as: dbCore needs ca 2017-04-27 17:24:23 -04:00
Michael Davidsaver
e296e99667 Merge remote-tracking branch 'launchpad/master'
* launchpad/master:
  libCom: dbmfMalloc cantProeed() on failure
  ioc/db/test: dbCaLinkTest fix sync
  oops
  std/filter/test: use dbUnitTest
  travis-ci enable mingw w/ dll
  travisci
  catools: Fix SEGFAULT from bad PV names
  typo
  Fix for dbCa warning seg-fault
  Fix postfix.h macro arg, document
  libCom/test: epicsCalcTest use exact postifx buffers

Conflicts:
	src/ioc/db/test/dbCaLinkTest.c
2017-04-27 17:17:29 -04:00
Michael Davidsaver
57cbe61709 libCom/test: errlog test more verbose 2017-04-27 16:53:40 -04:00
Michael Davidsaver
a2ab17a782 libCom: STATIC_ASSERT use c++11 static_assert when possible 2017-04-27 16:52:33 -04:00
Michael Davidsaver
8677c84528 libCom: dbmfMalloc cantProeed() on failure
most calling code doesn't check for NULL.
2017-04-27 15:30:35 -04:00
Michael Davidsaver
052573f4ca ioc/db/test: dbCaLinkTest fix sync 2017-04-27 15:14:58 -04:00
Michael Davidsaver
7a727bbd41 Merge remote-tracking branch 'launchpad/3.15'
* launchpad/3.15:
  oops
  std/filter/test: use dbUnitTest
  travis-ci enable mingw w/ dll
  travisci
  catools: Fix SEGFAULT from bad PV names
  typo
  Fix for dbCa warning seg-fault
  Fix postfix.h macro arg, document
  libCom/test: epicsCalcTest use exact postifx buffers
2017-04-27 14:31:53 -04:00
Michael Davidsaver
c6910decfc oops 2017-04-27 14:19:15 -04:00
Michael Davidsaver
b01dd38526 std/filter/test: use dbUnitTest 2017-04-27 14:09:41 -04:00
Andrew Johnson
d825f87359 Check for empty PV names in Perl catools 2017-04-27 12:10:27 -05:00
Michael Davidsaver
82ff67a204 travis-ci enable mingw w/ dll 2017-04-27 12:57:01 -04:00
Michael Davidsaver
e751480b06 Merge remote-tracking branch 'launchpad/3.14'
* launchpad/3.14:
  travisci
  catools: Fix SEGFAULT from bad PV names
  typo
2017-04-27 12:55:35 -04:00
Michael Davidsaver
3184371e8d travisci 2017-04-27 12:53:35 -04:00
Andrew Johnson
f2e54be965 catools: Fix SEGFAULT from bad PV names 2017-04-27 10:52:07 -05:00
Andrew Johnson
0748adfb9a Additional linkInitTest checks
Now tests array record types and the eventRecord.
Also moved repeated IOC startup code into separate function.
2017-04-26 16:04:13 -05:00
Andrew Johnson
4813b37538 Minimize work done in readLocked routine
Move post-I/O back to read_event.
Fix initialization bug.
2017-04-26 16:01:09 -05:00
Andrew Johnson
bbd94928bb Minimize work done in readLocked() routine
Move post-I/O work back to the read_xx routines.
2017-04-26 15:59:03 -05:00
Andrew Johnson
c13a4f24ce Cosmetic changes to various soft device supports 2017-04-26 15:55:03 -05:00
Andrew Johnson
d1af663705 Enhancements to subArray record & soft device support
Permit record's use as a look-up-table by reading constant
input array data in dset::read_sa() routine.

Move sub-array operation into a separate function.
Extract subarray from constant INP value at device init.
Reduce the work done inside readLocked() to a minimum.
Limit NELM value to at most MALM in record init routine.
2017-04-26 15:52:08 -05:00
Andrew Johnson
4eafb6fd8e Fix bug in eventRecord::init_record
Look up event handle /after/ the device init routine has been run,
in case it modified the event name in VAL. That didn't used to
be possible because constant links couldn't return strings.
2017-04-26 15:03:43 -05:00
Andrew Johnson
33f3145fcc Updates to Release Notes and links.html 2017-04-25 22:52:08 -05:00
Andrew Johnson
c71afb631c Make dbLinkIs{Constant|Volatile}() return only true/false 2017-04-25 20:37:09 -05:00
Jeong Han Lee
c22670cbb0 typo 2017-04-24 21:06:30 -04:00
Andrew Johnson
35385bc688 Merge changes from 3.14 into 3.15
Changes to be committed:
	modified:   src/ioc/db/dbCa.c
	modified:   src/libCom/calc/postfix.h
	modified:   src/libCom/test/epicsCalcTest.cpp
2017-04-24 18:10:53 -05:00
Andrew Johnson
c5decfbd12 Fix for dbCa warning seg-fault
Don't queue an errlog message containing a pointer to a string
that will disappear soon.

Thanks to Matt Pearson for the bug analysis.
2017-04-24 18:03:53 -05:00
Andrew Johnson
da94b7a2e4 Fix dbConstLink to handle a long-string array properly
Added a new parser dbLSConvertJSON for long-string arrays.
New test checks that only the first string element is used.
2017-04-24 17:09:01 -05:00
Andrew Johnson
311ad57e93 printfRecord: Handle const long-strings in "%ls"
Adds some tests for printfRecord.
2017-04-24 15:18:52 -05:00
Andrew Johnson
30e634b97b Adjust calcout's handling of undefined links 2017-04-23 23:32:15 -05:00
Andrew Johnson
421a2c8eb9 Tidy up lnkConst.c after Michael's bug-fix changes
Should make the code easier to follow.
2017-04-23 00:11:22 -05:00
Michael Davidsaver
cfe9a51c5d std/rec/test: start linkInitTest 2017-04-21 17:26:58 -04:00
Michael Davidsaver
066984e11d Merge branch 'master' into link
* master: (226 commits)
  ioc/db: testdbGetFieldEqual() detect zero size
  Cleanup in asLib
  Allow whitespace before comments in AS config files
  Supress MS warning C4251
  Add a plan to std/filters/test/syncTest.c
  Fix dbUnitTest.c
  avoid void* +=
  Fix and test for macLib losing error status
  update notes
  libCom/test: ipAddrToAsciiTest skip cleanup unless valgrind is possible
  libCom/test: add ipAddrToAsciiTest to testHarness
  db/test: dbPutGetTest check dbGet() of long string field
  db: dbGet() ensure long string nil and actual string length
  db/test: dbPutGetTest check for dbGet() attribute crash
  db: fix dbGet() for attributes as long string
  db/test: dbPutGetTest add test for lp:1678494
  db: fix dbGet() of link fields as DBF_CHAR
  dbUnitTest: add testdbGetArrFieldEqual()
  db/test: add dbPutGetTest
  Update release notes as per Michael's review comment
  ...

Conflicts:
	src/ioc/db/dbLink.c
	src/ioc/db/test/Makefile
	src/std/dev/devSoSoftCallback.c
	src/std/rec/boRecord.c
	src/std/rec/dfanoutRecord.c
	src/std/rec/longinRecord.c
	src/std/rec/longoutRecord.c
2017-04-21 17:20:12 -04:00
Andrew Johnson
e25a2964bc Fix postfix.h macro arg, document 2017-04-21 16:09:36 -05:00
Michael Davidsaver
6c062981fb Merge remote-tracking branch 'launchpad/3.15'
* launchpad/3.15:
  ioc/db: testdbGetFieldEqual() detect zero size
  Cleanup in asLib
  Allow whitespace before comments in AS config files
  Supress MS warning C4251
  Add a plan to std/filters/test/syncTest.c
  Fix dbUnitTest.c
  avoid void* +=
  Fix and test for macLib losing error status
  update notes
  libCom/test: ipAddrToAsciiTest skip cleanup unless valgrind is possible
  libCom/test: add ipAddrToAsciiTest to testHarness
  Adjusted .gitignore patterns
  libCom/test: add network libraries for Windows builds
  Moved .bzrignore to .gitignore
  libCom/test: add ipAddrToAsciiTest
  libCom: revise ipAddrToAscii
2017-04-21 16:16:03 -04:00
Michael Davidsaver
22b10adf29 ioc/db: testdbGetFieldEqual() detect zero size 2017-04-21 16:14:43 -04:00
Michael Davidsaver
8382367495 libCom/test: epicsCalcTest use exact postifx buffers
exposes INFIX_TO_POSTFIX_SIZE() bug
2017-04-21 16:13:18 -04:00
Michael Davidsaver
54e94a1e12 std/link: lnkConst refactor
Avoid variable with same name as typedef.
Confuses qtcreator.
2017-04-21 16:08:48 -04:00
Michael Davidsaver
414e5b82b8 std/link: lnkCalc require expression
error if 'expr' key isn't provided.
2017-04-21 16:08:33 -04:00
Michael Davidsaver
b99a7b9252 std/link: lnkConst fix mem leak and hard fail on no mem 2017-04-21 16:08:15 -04:00
Michael Davidsaver
43f6a06bcd std/link: lnkConst avoid cantProceed() 2017-04-21 16:08:10 -04:00
Michael Davidsaver
7121b016d5 ioc/db: dbConstLoadLS handle size=0
handle size=0 and clarify
2017-04-21 16:08:04 -04:00
Michael Davidsaver
8b24383e9e arrayOpTest: check initial dbGet value 2017-04-21 16:07:55 -04:00
Andrew Johnson
e99fe61e07 Fix postfix.h macro arg and document 2017-04-21 14:18:05 -05:00
Andrew Johnson
23cef0339e Fix buffer allocation bug in lnkCalc.c 2017-04-21 13:56:49 -05:00
Andrew Johnson
611cb3f52e Fix typos, remove FIXMEs from lnkConst.c 2017-04-21 13:55:59 -05:00
Andrew Johnson
7e60faae10 No need to truncate const string array elements 2017-04-21 13:04:53 -05:00
Andrew Johnson
821fb1302b Merged changes from 3.14 branch into 3.15 2017-04-20 16:57:08 -05:00
Andrew Johnson
64c16c0f6e Cleanup in asLib
Improve error messages.
Remove unnecessary pointer casts.
2017-04-20 16:27:20 -05:00
Andrew Johnson
9f01c47542 Allow whitespace before comments in AS config files
Fixes lp: #1677302
Makes the lexer patterns more like dbStatic.
Handle non-printable invalid characters in input properly.
2017-04-20 16:23:36 -05:00
Andrew Johnson
aca7b44a05 Supress MS warning C4251 2017-04-20 11:42:52 -05:00
Michael Davidsaver
4f1b244589 ca: fix export caLimitArray on win32 2017-04-20 09:54:05 -04:00
Andrew Johnson
dcb1f75b4d Cosmetic cleanups 2017-04-19 16:53:12 -05:00
Andrew Johnson
89f13aa51b Modify soft devices to synchronize TSEL=-2 timestamps
Use dbLinkDoLocked() to ensure a timestamp set by TSEL=-2
comes from the same update as the value.
2017-04-19 16:50:38 -05:00
Andrew Johnson
d2db634ed2 Add dbLinkDoLocked() support
New lset method, implemented in all link types.
Includes a test for the dbCa implementation.
2017-04-19 16:44:11 -05:00
Andrew Johnson
b8f542fc0d Add a plan to std/filters/test/syncTest.c 2017-04-18 14:49:40 -05:00
Andrew Johnson
6f9905d060 Fix dbUnitTest.c 2017-04-18 14:48:54 -05:00
Michael Davidsaver
f3841c4767 avoid void* += 2017-04-17 18:58:19 -04:00
Andrew Johnson
4f8fd545fa Merge branch 'fix-async-dns/master' into 3.14 2017-04-17 15:52:10 -05:00
Andrew Johnson
d4552af39b Fix and test for macLib losing error status
Problem found & diagnosed by Mark Rivers.
2017-04-17 11:47:21 -05:00
Michael Davidsaver
0c02c5cb30 update notes 2017-04-15 19:38:56 -04:00
Michael Davidsaver
1f90e98491 libCom/test: ipAddrToAsciiTest skip cleanup unless valgrind is possible 2017-04-15 19:34:04 -04:00
Michael Davidsaver
352fd32c45 libCom/test: add ipAddrToAsciiTest to testHarness 2017-04-12 20:30:23 -04:00
Michael Davidsaver
6bf66d1c93 Merge remote-tracking branch 'launchpad/3.15'
* launchpad/3.15:
  db/test: dbPutGetTest check dbGet() of long string field
  db: dbGet() ensure long string nil and actual string length
  db/test: dbPutGetTest check for dbGet() attribute crash
  db: fix dbGet() for attributes as long string
  db/test: dbPutGetTest add test for lp:1678494
  db: fix dbGet() of link fields as DBF_CHAR
  dbUnitTest: add testdbGetArrFieldEqual()
  db/test: add dbPutGetTest
  Adjusted .gitignore patterns
  Move .bzrignore to .gitignore
2017-04-06 20:32:48 -04:00
Michael Davidsaver
b624222a0f db/test: dbPutGetTest check dbGet() of long string field 2017-04-06 20:28:04 -04:00
Michael Davidsaver
739a112bec db: dbGet() ensure long string nil and actual string length 2017-04-06 20:28:01 -04:00
Michael Davidsaver
5e082bb75d db/test: dbPutGetTest check for dbGet() attribute crash 2017-04-06 20:27:37 -04:00
Michael Davidsaver
8ebfd0821a db: fix dbGet() for attributes as long string
dbGet() of "rec.RTYP$" with DBF_CHAR and nRequest==1
not handled correctly.  Results in crash.
2017-04-06 20:27:34 -04:00
Michael Davidsaver
fc8d4c2b5f db/test: dbPutGetTest add test for lp:1678494 2017-04-06 20:27:18 -04:00
Michael Davidsaver
1888253093 db: fix dbGet() of link fields as DBF_CHAR
dbGet() DBF_CHAR with nRequest==1 not handled correctly.
Results in crash.
2017-04-06 20:27:13 -04:00
Michael Davidsaver
8edefb9d63 dbUnitTest: add testdbGetArrFieldEqual() 2017-04-06 20:27:03 -04:00
Michael Davidsaver
0f31e35b87 db/test: add dbPutGetTest 2017-04-06 20:25:55 -04:00
Ralph Lange
865a870912 Merged typed-recsup branch (by Ben / Ralph) 2017-04-05 09:42:16 +02:00
Ralph Lange
9bfc8d8fad Update release notes as per Michael's review comment 2017-04-03 09:55:06 +02:00
Andrew Johnson
23a856ae9b Adjusted .gitignore patterns 2017-03-31 12:22:29 -05:00
Andrew Johnson
5a73ac59a1 Adjusted .gitignore patterns 2017-03-31 12:18:43 -05:00
Andrew Johnson
e0af3e2af5 Adjusted .gitignore patterns 2017-03-31 12:08:03 -05:00
Ralph Lange
5726ca6964 libCom/test: add network libraries for Windows builds 2017-03-31 15:01:51 +02:00
Ralph Lange
f164b14ba1 Moved .bzrignore to .gitignore 2017-03-30 15:43:15 -05:00
Ralph Lange
4c06cdc660 Move .bzrignore to .gitignore 2017-03-30 17:10:52 +02:00
Ralph Lange
6884e0ce61 Moved .bzrignore to .gitignore 2017-03-30 17:08:29 +02:00
Ralph Lange
9e778511ee Add opt-in switch to makeBaseApp example 2017-03-30 16:35:54 +02:00
Ralph Lange
bad1b0ead3 Update release notes with opt-in instructions 2017-03-30 16:26:54 +02:00
Ralph Lange
ecf5ab4a4c Deprecate RECSUPFUN and the untyped struct rset. 2017-03-30 16:14:09 +02:00
Ralph Lange
2f510af603 Use (typed) rset instead of (untyped) struct rset inside Base 2017-03-30 14:35:24 +02:00
Ralph Lange
0f2e26bc4c Make generated code always use typed_rset
always cast to cover old-style supports
2017-03-30 14:33:06 +02:00
Ralph Lange
26a4e1489f Make compilation inside Base USE_TYPED_RSET 2017-03-30 14:30:53 +02:00
Ralph Lange
19be96ec3a Add opt-in switch USE_TYPED_RSET 2017-03-30 14:28:48 +02:00
Ralph Lange
6397204354 Update release notes, C++ instructions are tested 2017-03-27 09:51:32 +02:00
Ralph Lange
89a858f655 Remove remaining REC_TYPE defines 2017-03-27 09:49:30 +02:00
Ralph Lange
0b410c1b03 Update release notes entry 2017-03-24 17:16:18 +01:00
Ralph Lange
4f8134c63c Fix xxxRecord in templates to make exampleApp work 2017-03-24 17:08:07 +01:00
Ralph Lange
ef2da59c24 Remove REC_TYPE and UNTYPED_RSET/oldRecSup.h; add casts to record types 2017-03-24 17:07:22 +01:00
Ben Franksen
40c9e4799b use new typed rset only if UNTYPED_RSET is not defined, adapted release notes
Also moved the old definition(s) to a separate header file named oldRecSup.h
to avoid cluttering the new header file.
2017-03-21 17:01:13 +01:00
Michael Davidsaver
675c2aff14 rsrv: export variable caLimitArray 2017-03-18 17:41:33 -04:00
Michael Davidsaver
1636f3d9fe rsrv: optional max_array_bytes
use of large array free list is optional
2017-03-18 17:41:33 -04:00
Michael Davidsaver
1e7c80c909 cas: simplify buffer alloc
eliminate casBufferFactory.
move small buffer free list into clientBufMemoryManager
2017-03-18 17:41:33 -04:00
Michael Davidsaver
2096c60652 ca: large array free list is optional 2017-03-18 17:41:33 -04:00
Michael Davidsaver
3009f88f64 rsrv: support larger than max. array bytes 2017-03-13 19:22:56 -04:00
Michael Davidsaver
b783427bf7 pcas: support larger than max array bytes
clientBufMemoryManager already supports allocations
larger than max array bytes, adjust callers inBuf/outBuf
to actually request larger allocations.
2017-03-13 19:22:53 -04:00
Michael Davidsaver
85b6b5c507 ca: support alloc larger than max array bytes
automatically try to allocate a custom buffer
when a message larger than ca max array bytes
is encountered.
2017-03-13 19:22:50 -04:00
Andrew Johnson
20627c0465 Merged changes from 3.15 branch to revno 12809 2017-03-08 10:36:41 -06:00
Andrew Johnson
f71102982f Fix "make -q" problems with shared library stubs 2017-03-06 18:46:46 -06:00
Andrew Johnson
d6b0c3041e Merged changes from 3.14 branch to revno 12703 2017-03-06 15:40:28 -06:00
Andrew Johnson
214e9534cc Allow 'make -q' to work with CHECK_RELEASE=NO 2017-03-03 18:18:57 -06:00
Andrew Johnson
17bd1ae6d0 db/test: Fix warning from clang 2017-03-03 12:23:36 -06:00
Ben Franksen
f71fe62bc3 added release notes entry 2017-03-03 17:40:24 +01:00
Ben Franksen
825c075df7 fixes in recSup and record types according to merge review
* removed struct valueDes
* made get_value take void (no arguments), added deprecation note
* removed misleading array size comment for get_units

Also added const to method parameters exactly where called in base with
const arguments.
2017-03-03 16:43:50 +01:00
Ben Franksen
ff91ede462 revert use of struct dbr_precision in call to get_precision in dbAccess.c 2017-03-03 16:41:03 +01:00
Michael Davidsaver
1d749ac7e7 dbLock: add assert in dbScanLock
catch locking attempts before iocInit()
2017-02-28 21:00:57 -06:00
Michael Davidsaver
6377c2e1e4 db/test: dbPutLinkTest include json links and more 2017-02-28 20:58:11 -06:00
Andrew Johnson
8069d9d80b dbUnitTest: Improve output slightly 2017-02-28 20:55:05 -06:00
Michael Davidsaver
46993a5e38 dbUnitTest: more informative dbPutField*() 2017-02-28 20:09:21 -06:00
Michael Davidsaver
2bb02e732a libCom: add errSymMsg() error message lookup
Like errSymLookup() but always returns a static string.
2017-02-28 20:06:42 -06:00
Michael Davidsaver
428dfe7a5c add testing lset 2017-02-28 18:00:51 -06:00
Andrew Johnson
5dcd3483ba dbStatic: dbPutStringNum() overflow handling
Default to accepting over-size integers in DB fields, truncate to field size.
E.g. permits setting DBF_LONG fields to 0xffffffff.
Adds dbConvertStrict config variable to disable this.
2017-02-28 00:25:43 -06:00
Michael Davidsaver
2a0cd00958 libca: lock when removing from msgMultiPVList 2017-02-27 14:48:30 -05:00
Michael Davidsaver
d744b06a28 libca: findOrCreateVirtCircuit() can return w/ piiu==NULL 2017-02-27 11:07:17 -05:00
Ben Franksen
1c3ffa1c76 fixed the wrong fix for getOptions in dbAccess.h 2017-02-26 13:54:58 +01:00
Michael Davidsaver
048b75304d libCom/test: add ipAddrToAsciiTest 2017-02-25 19:08:46 -05:00
Ben Franksen
aaafb1a5de db: call rset::get_precision with wrong type 2017-02-25 16:42:29 -05:00
Ben Franksen
cc946b760c partly fix lp:1666924, i.e. for rset only, as described in the ticket
This means:

* typed method definitions for struct rset
* using REC_TYPE macro in place of dbCommon
* define REC_TYPE as dbCommon unless defined
* in record supports, define REC_TYPE before including epics headers
* fix a few method types in record supports (e.g. void* -> REC_TYPE*)
* fix the type errors gcc finds in dbAccess.c and dbConvert.c
2017-02-24 21:11:11 +01:00
Michael Davidsaver
5783823e25 libCom: revise ipAddrToAscii
create multiple light-weight engines to
track transactions by engine and cancel
all transactions when an engine is released.

prior to fix for lp:1527636 this was ensured
for the last/only owner for the engine singleton.
2017-02-23 20:08:46 -05:00
Andrew Johnson
00549c832a Fix HTML entities 2017-02-17 14:16:57 -06:00
Andrew Johnson
c52088205e Remove constant link checks from test device 2017-02-17 14:15:31 -06:00
Andrew Johnson
e95fcb2e06 Merged changes from 3.15 branch, to revno 12807 2017-02-01 11:57:04 -06:00
Andrew Johnson
a7f0525ac7 Update Release Checklist 2017-01-30 18:04:47 -06:00
Andrew Johnson
de698f370a Merged Windows fixes from 3.14 branch, to revno 12699 2017-01-30 14:31:04 -06:00
Andrew Johnson
faf691a5be VS2015 starting to dislike '/' for compiler flags 2017-01-30 12:11:29 -06:00
Andrew Johnson
3a0e52fc3f Fix Windows dllPath.bat properly 2017-01-24 14:17:37 -06:00
Andrew Johnson
a105c6f538 Always quote Windows PATH arg's 2017-01-24 11:48:36 -06:00
Andrew Johnson
73eecbb759 Merged ARCH and bind fixes from 3.14 branch, revno 12696 2017-01-23 17:20:51 -06:00
Andrew Johnson
3e58c59377 Fix CA server bind issue from Freddie Akeroyd 2017-01-19 12:33:54 -06:00
Andrew Johnson
b9ae6c3308 Allow ARCH with trailing spaces 2017-01-18 10:59:36 -06:00
Andrew Johnson
3fd659e693 Merged PATH fix from 3.14 branch, revno 12694 2017-01-16 16:12:04 -06:00
Andrew Johnson
7310d78057 Prepend to PATH, not append 2017-01-16 10:46:56 -06:00
Andrew Johnson
051c059938 Removed some Revision-Id keywords 2017-01-06 17:31:51 -06:00
Andrew Johnson
dfc1b8ac23 Merged scan-rate protection changes from 3.14 branch, to revno 12693 2017-01-06 17:24:57 -06:00
Andrew Johnson
49e0e23f76 Better protection against bad periodic scan rates 2017-01-06 15:38:03 -06:00
Andrew Johnson
4a0fd0b954 Fix error message 2017-01-05 14:09:03 -06:00
Andrew Johnson
20dda339cc Make *_INC files order-only prerequisites 2017-01-04 16:32:13 -06:00
Andrew Johnson
7ec6be5d14 Update version numbers in documents for 3.15.6 2016-12-13 17:03:54 -06:00
Ralph Lange
eff44268e9 Set version to 3.15.5-DEV, close 3.15.5 chapter in release notes 2016-12-13 15:33:01 +01:00
Ralph Lange
fd53e175b4 Update CONFIG_BASE_VERSION for 3.15.5, remove "not released" from RELEASE_NOTES 2016-12-13 14:25:23 +01:00
Andrew Johnson
fab5ce675f Update comments in calcoutRecord 2016-12-12 17:44:01 -06:00
Andrew Johnson
85b5551b3b Merged final changes from 3.14.12.6 release 2016-12-09 17:27:35 -06:00
Andrew Johnson
260bc64b59 Set SNAPSHOT back to -DEV 2016-12-09 13:50:17 -06:00
Andrew Johnson
a13416309c Merged asLib fix from 3.14 branch, to revno 12688 2016-12-08 14:00:52 -06:00
Andrew Johnson
63b059c35e Resolve additional cppcheck issues; fix iOS build 2016-12-07 17:51:00 -06:00
Andrew Johnson
dba6971e07 Merged changes from 3.14 branch to revno 12687 2016-12-07 16:36:58 -06:00
Andrew Johnson
c3bb2bf2c2 Merged changes from 3.14 branch to revno 12682 2016-11-30 12:04:00 -06:00
Ralph Lange
2841af7069 rec: add promptgroups for OFFS and SHFT of fanout and seq 2016-11-29 14:48:57 +01:00
Andrew Johnson
0a4981093a Update mingw32 cross-target name for RHEL7 2016-11-15 17:44:21 -06:00
Andrew Johnson
726d7c6715 Fix chfPluginTest for MS 2015 compiler 2016-11-15 10:34:10 -06:00
Andrew Johnson
3e0ddbb542 Set snapshot to -rc1-DEV 2016-10-31 18:06:50 -05:00
Ralph Lange
628382d72d Update version to 3.15.5-rc1 2016-10-31 13:48:06 +01:00
Andrew Johnson
3c546617ab Merged release note updates from 3.14 branch, to revno 12677 2016-10-29 15:56:49 -05:00
Andrew Johnson
e2c897bb54 Corrections/updates to release documentation 2016-10-21 14:43:16 -05:00
Andrew Johnson
33025641fc Update version to 3.15.5-pre1-DEV 2016-10-21 12:16:25 -05:00
Andrew Johnson
9ea2ac7bc1 Update version to 3.15.5-pre1 2016-10-21 12:15:09 -05:00
Andrew Johnson
14819ef1ec Update version numbers in docs 2016-10-21 12:07:26 -05:00
Andrew Johnson
321e87aabf Merged changes from the 3.14 branch, to revno 12674 2016-10-20 15:32:06 -05:00
Andrew Johnson
b59a60e266 Merged the bigdb-3.15 branch with PHAS fix 2016-10-07 17:35:07 -05:00
Ralph Lange
a32faa573c ioc/misc: add dbRecordsAbcSorted to dbCore.dbd 2016-10-07 11:56:06 +02:00
Ralph Lange
3fa8f2ac22 libCom/ellLib: make sort comparator args const pointers 2016-10-07 10:52:13 +02:00
Ralph Lange
de6a442048 dbStatic: fix compiler warnings (unused variables) 2016-10-07 10:29:28 +02:00
Ralph Lange
768c6234bd Mention dbRenameRecord() removal in release notes 2016-10-06 15:44:02 +02:00
Ralph Lange
336bd656c8 dbStatic: only sort records alphabetically if explicitly configured (default: no sorting) 2016-10-06 15:36:44 +02:00
Ralph Lange
344928bdc6 dbStatic: remove dbRenameRecord() 2016-10-06 13:31:40 +02:00
Ralph Lange
843fb8ca95 dbStatic: update dbCreateAlias() to add to record list (instead of insertion sort) 2016-10-06 13:02:46 +02:00
Andrew Johnson
8d6875fe15 Merged changes from the 3.14 branch to revno 12664 2016-10-03 15:21:48 -05:00
Andrew Johnson
8fb2267218 Revert breaktable point() syntax, not in dbStatic 2016-09-27 16:57:53 -05:00
Michael Davidsaver
99500b9be4 dbStatic: more informative error for bad field value 2016-09-18 17:35:19 -04:00
Michael Davidsaver
0821c8c4ff dbStatic: dbPutStringNum(, "") not an error
Restore previous behavour that empty string
is equivalent to numeric zero.

epicsParse*() returns S_stdlib_noConversion
where previously strtoul() did not.

Conflicts:
	src/ioc/db/test/Makefile
2016-09-12 18:20:02 -04:00
Andrew Johnson
da5455ed22 Fixes for Windows builds 2016-09-09 11:14:59 -05:00
Andrew Johnson
58c78af4f9 Initialize all fields of jlink, link types may not use calloc 2016-09-07 23:35:39 -05:00
Andrew Johnson
813166128e Merged changes from 3.15 branch, to revno 12781 2016-09-07 10:04:54 -05:00
Andrew Johnson
b2012fdfb5 Added test link type, fix dbPutLinkTest for JSON_LINKs 2016-09-07 00:50:40 -05:00
Andrew Johnson
c12a35e388 Clean up memory leaks 2016-09-07 00:47:51 -05:00
Andrew Johnson
8a9707e74f Fixed a small memory leak in lnkCalc 2016-09-06 22:28:36 -05:00
Andrew Johnson
2d4301f0bb Fix warnings from clang 2016-09-05 22:36:45 -05:00
Andrew Johnson
268e59b052 Minor updates 2016-09-05 15:38:16 -05:00
Andrew Johnson
5b74799605 Some documentation updates 2016-09-05 15:12:09 -05:00
Andrew Johnson
cd49e245c2 Added JLink reporting infrastructure
Command 'dbjlr <record|*> <level>' calls the report method for
all JSON links in all records, or in one named record.
Added level and indent arguments to the jlif::report() method.

Added jlif::map_children() method for recursing through all
JSON links, plus dbJLinkMapChildren() and dbJLinkMapAll() APIs.

Implemented the report and map_children methods in the const
and calc link types.
2016-09-05 14:25:33 -05:00
Andrew Johnson
19447dc7ff Make the long-string buffer for link fields bigger
When representing a link field as a long string (.INP$)
we have to pick some size limit for the buffer.
Previously this was the max length of a PV name + 12 chars,
but with JSON links that's not big enough.

This commit sets it to 1KB and defines a macro so it will be
easier to change in the future if necessary.
2016-09-04 16:56:15 -05:00
Andrew Johnson
dd311be319 JLink: Convert parser->linkDepth into jlink->parseDepth
This counter is indicates when we've finished parsing a link,
and needs to be stored with link rather than the parser so it
keeps its value while parsing embedded links. This fixes the
embedded links bug.

Also removed the limit on a link name's length.
2016-09-04 16:33:10 -05:00
Andrew Johnson
4448317d73 Add lnkConst_remove, fix debug messages 2016-09-04 16:02:59 -05:00
Andrew Johnson
ec6d86c91c Fix jlink memory leak in dbStaticLib
Added dbFreeLinkInfo(), use everywhere to release dbLinkInfo resources.

Renamed link_type => expected_type in db[Can]SetLink(),
my brain understands this name faster.
2016-09-04 15:56:39 -05:00
Andrew Johnson
4302da3628 Minor fixes to the calc link-type 2016-09-03 22:24:55 -05:00
Andrew Johnson
25315882ec Clean up JSON_LINKs in doCloseLinks 2016-09-03 22:22:12 -05:00
Andrew Johnson
f8d6cd98a0 Minor cleanups 2016-09-03 19:44:49 -05:00
Andrew Johnson
5fe3e8bfb5 Added calc link-type 2016-09-03 19:22:55 -05:00
Andrew Johnson
8d1c416551 Moved PV_LINK-specific code out of dbLink.c into link types
This required a change to the lset::getValue arguments, removing
the pstat and psevr pointers. Links can still return a non-zero
value from getValue and trigger a LINK:INVALID alarm, but for any
other alarm settings they must manipulate the record themselves.
2016-09-03 19:21:11 -05:00
Andrew Johnson
07b09eed1f Fixes to dbJLink, added dbJLinkFree()
Moved the clearing of key_is_link to the right place,
embedded links now parse correctly.
2016-09-03 13:36:17 -05:00
Andrew Johnson
1e1c52cb69 Use new epicsStrnDup() API 2016-09-03 13:27:30 -05:00
Andrew Johnson
6e88d48615 Added epicsStrnDup() and dbmfStrndup() routines
The JSON parser passes string arguments with a length
instead or nil-terminating them. These routines make it
simple to copy such strings into either permanent or
temporary storage.
2016-09-03 13:25:19 -05:00
Andrew Johnson
147166849b Empty merge of backported big-fix from 3.14 branch, to revno 12660 2016-09-02 15:17:07 -05:00
Andrew Johnson
4686a062c8 Merged generalTime update from 3.14 branch, revno 12659 2016-09-02 12:47:23 -05:00
Andrew Johnson
25b3eae1c7 Merged changes from the 3.14 branch to revno 12658 2016-09-02 11:54:23 -05:00
Andrew Johnson
23c71e9965 Various improvements
* Added new lset::openLink() method, called on JSON_LINKs only
* Cleanup in dbJLink.c to prevent memory leaks.
* Removed jlif::start_parse() method.
* Renamed jlif::end_parse() to end_child, which will be called on
the parent link when a child link has succesfully finished parsing.
2016-09-01 23:21:23 -05:00
Andrew Johnson
3992d4b92a Split dbJLinkInit, JLinks are now parsed at load-time 2016-09-01 00:56:26 -05:00
Andrew Johnson
40a3a66745 Added loadLS routine to lset
The long string in/out records use a different initializer
for constant links. The new loadLS method allows a constant
link type to initialize such a long string field.

NB: This routine was added in the middle of the lset table.
Any external link support implementations must be adjusted.
2016-08-31 00:36:23 -05:00
Andrew Johnson
d0dcd61b23 Add code for arrays of strings 2016-08-30 23:03:08 -05:00
Andrew Johnson
5ec0633282 Pass link dbfType to jlif allocator; needed! 2016-08-30 01:13:15 -05:00
Andrew Johnson
33e565b67d Fix build warning from clang 2016-08-29 10:41:51 -05:00
Andrew Johnson
7edc0c67ca JSON Links implementation
The lnkConst.c implementation is not yet complete, no support for arrays of
strings (JMOP).

Link error messages should display their record & field name, which is not yet
possible.

The ability to embed links as parameters to other link types is not complete
yet; this will be required for the calc link type.

This code currently passes all existing tests, but additional tests are needed
for the new functionality.
2016-08-29 01:12:09 -05:00
Andrew Johnson
056edc0d8a Undo buggy change 2016-08-28 23:41:35 -05:00
Andrew Johnson
fc66793ee2 Start documenting changes 2016-08-27 16:31:49 -05:00
Andrew Johnson
37b6cbb50c Use new dbLink APIs instead of checking link.type 2016-08-27 16:30:48 -05:00
Andrew Johnson
cca6a5d05a Add isConstant and isVolatile to LSET 2016-08-27 16:26:55 -05:00
Andrew Johnson
82385c9f1b Missed a spot handling JSON_LINK field values 2016-08-18 00:18:41 -05:00
Andrew Johnson
cbc7af0ef8 Remove 2 obsolete dbStatic routines (forms) 2016-08-15 20:19:19 -05:00
Andrew Johnson
bed1c618a8 Use dbPutLinkAsync() in all output SoftCallback dev's 2016-08-13 21:53:31 -05:00
Andrew Johnson
7df97f074e Add lset::dbPutLinkAsync and S_db_noLSET 2016-08-13 21:42:23 -05:00
Andrew Johnson
fe71fc98b8 Undo a small & unnecessary behaviour change 2016-08-12 23:53:42 -05:00
Andrew Johnson
d3a9ba7701 Fix issues related to const array initialization 2016-08-12 23:21:26 -05:00
Andrew Johnson
bb58598eba A cleaner way to close CA & DB links 2016-08-12 23:20:24 -05:00
Michael Davidsaver
899feb24b2 iocInit: close CA_LINKs through lset 2016-08-12 19:50:17 -04:00
Andrew Johnson
57b8617cca dbdExpand.pl 2016-08-11 15:48:01 -05:00
Andrew Johnson
fb785e45c7 Adjust record and device support for array constants 2016-08-10 12:53:39 -05:00
Andrew Johnson
519208833f Add lset::loadArray and JSON parsing
Replace lset::loadLink with lset::loadScalar, add lset::loadArray
Add dbLoadLinkArray() routine to dbLink.h API
New dbConvertJSON.h API for use by dbConstLoadArray()
2016-08-10 12:49:49 -05:00
Andrew Johnson
ae2180f5b5 Comments in Makefile 2016-08-10 12:21:03 -05:00
Andrew Johnson
dafe2a83a3 libCom: Make yajl_alloc.h usable 2016-08-10 12:19:53 -05:00
Michael Davidsaver
ebfaca8228 cas: ignore CA client version older than v4.4
CAS ignore search and version messages
from CA minor versions older than 4.4.
2016-07-30 11:45:42 -04:00
Michael Davidsaver
da78e01e89 rsrv: remove !CA_V44() code
Remove code supporting deprecated
CA minor versions < 3
2016-07-31 19:49:08 -04:00
Michael Davidsaver
caf70216d3 rsrv: no ca exception response to UDP 2016-07-31 19:35:25 -04:00
Michael Davidsaver
95fd255dd6 rsrv: ignore CA client version older than v4.4
RSRV ignore search and version messages
from CA minor versions older than 4.
2016-07-30 10:35:49 -04:00
Michael Davidsaver
2dd16f4362 cas: honor DOREPLY for TCP searches 2016-07-31 15:10:36 -04:00
Michael Davidsaver
4c2b8819cd cas: ignore echo and unexpected UDP
Ignore UDP echo.
By default, don't log unexpected/invalid
UDP messages.
2016-07-30 11:46:28 -04:00
Michael Davidsaver
8992d5a593 rsrv: send channel create failure 2016-07-30 12:09:33 -04:00
Michael Davidsaver
802f29df47 rsrv: UDP search ignore DOREPLY
Don't send notice of failure
for lookup via. UDP.
2016-07-30 10:46:21 -04:00
Michael Davidsaver
16c419350b rsrv: ignore echo and unexpected UDP
Ignore UDP echo.
By default, don't log unexpected/invalid
UDP messages.
2016-07-30 10:41:39 -04:00
Andrew Johnson
e9abac25bc Merged changes from 3.14 branch to revo 12652 2016-07-21 23:37:54 -05:00
Andrew Johnson
f169781de0 Merged remove-keywords-3.15 branch 2016-07-21 14:12:51 -05:00
Andrew Johnson
3d4d3181de DOS to Unix line-ending conversions 2016-07-21 12:47:48 -05:00
Michael Davidsaver
4223b31f9a bswap16/32 as functions
Turn bswap16() and bswap32() into functions
to avoid evaluating the argument more than once.
2016-07-08 16:20:35 -04:00
Andrew Johnson
935ab02bc1 Fix build failure on Solaris 2016-06-07 12:31:15 -05:00
Andrew Johnson
63d8651474 Make Perl DB parser handle duplicates and rtyp '*' 2016-06-07 01:00:38 -05:00
Andrew Johnson
c01967d64f Remove spurious include dbCa.h 2016-06-02 22:29:45 -05:00
Andrew Johnson
d1986edd9e Simplify link-type checks in record supports 2016-06-02 22:22:11 -05:00
Andrew Johnson
7627454f63 Simplify link-type checks in soft device supports 2016-06-02 22:02:54 -05:00
Andrew Johnson
667f74759d Allow (discard) comments inside JSON 2016-06-01 15:46:24 -05:00
Andrew Johnson
11e98798bb Fix dependency file generation on Windows & Darwin 2016-05-27 23:15:59 +02:00
Ralph Lange
d1e49a97b5 Set version to 3.15.4-DEV, close 3.15.4 chapter in release notes 2016-05-27 09:12:58 +02:00
Ralph Lange
65574b5971 Update CONFIG_BASE_VERSION for 3.15.4, remove "not released" from RELEASE_NOTES 2016-05-27 08:54:04 +02:00
Andrew Johnson
4284222b54 Convert GUI_ promptgroup strings to new-style 2016-05-26 16:15:48 +02:00
Ralph Lange
54bab1e2f0 pcas: fix compiler warning (gcc 5.3.1) 2016-05-26 14:14:56 +02:00
Andrew Johnson
df200de27f Fix lsi/lso puts with DBF_STRING data 2016-05-26 13:49:18 +02:00
Ralph Lange
22d6ebe7e1 Merge changes from 3.14 branch up to rev 12642 2016-05-26 13:18:38 +02:00
Ralph Lange
23fd4e202b ca: Fix client bug (race condition) in ipAddrToAsciiEngine 2016-05-25 12:26:32 +02:00
Andrew Johnson
1f726c8760 Recognize arrays as constant links 2016-05-24 12:01:38 +02:00
Andrew Johnson
08b7802009 Recognize numbers before barewords 2016-05-24 11:59:08 +02:00
Andrew Johnson
f6c4099634 Make info tags also JSON objects 2016-05-23 12:00:11 +02:00
Andrew Johnson
b9f0ef5158 Merge 3.14 version and add 3.15 edits 2016-05-22 14:38:18 +02:00
Andrew Johnson
988614ae8a Reset SNAPSHOT after -rc1 tagged 2016-05-22 06:06:53 +02:00
Andrew Johnson
c76041b14c Rename JSON_STR to JSON_LINK 2016-05-20 20:32:39 -05:00
Ralph Lange
fe887b4f83 Update CONFIG_BASE_VERSION for 3.15.4-rc1 2016-05-20 16:37:06 +02:00
Andrew Johnson
7ea544673a Accept bareword JSON strings, quote them 2016-05-20 00:02:45 -05:00
Andrew Johnson
6e6ae4354b Fix warnings from dbmfStrdup() change 2016-05-19 14:01:05 -05:00
Andrew Johnson
61e82ee1ae Fix memory allocation bugs 2016-05-19 01:32:12 -05:00
Andrew Johnson
28b3b1678c ioc/dbStatic: Add JSON parsing of field values
The parsing removes all white-space outside of quotes from the JSON.
dbRecordField() now strips quotes from simple string values itself.
2016-05-19 01:15:33 -05:00
Andrew Johnson
efb5ba27ae libCom/dbmf: Add dbmfStrcat3() for JSON parsing
Also removed all epicsShareAPI attributes
Made string arguments const char *
2016-05-19 00:58:45 -05:00
Andrew Johnson
574db56740 Make antelope's error messages slightly nicer 2016-05-19 00:51:23 -05:00
Andrew Johnson
7be7ad2768 Merge changes from 3.14 branch, to revno 12640 2016-05-18 10:44:16 -05:00
Andrew Johnson
4ccc2e9d3a Merged my devEnviron branch 2016-05-18 09:48:22 -05:00
Andrew Johnson
122fb6c731 New "getenv" device support for string input types 2016-05-17 19:09:48 -05:00
Andrew Johnson
04a9fdb4e3 Clean up warnings from gcc 5.2 2016-05-16 17:02:34 -05:00
Andrew Johnson
3c61880d79 Allow some callback slow-ups before failing tests
The tests occasionally fail on Windows because the server
is busy; this will accept up to 4 slow callbacks without
them causing the build to fail.
2016-05-16 16:55:50 -05:00
Andrew Johnson
998c3c1648 Clean up warnings from gcc 5.2 2016-05-16 14:55:58 -05:00
Andrew Johnson
8081d3ada4 Merged Till's fix for lp:1581212, modified 2016-05-13 14:48:08 -05:00
Andrew Johnson
b87f3eaaee Merged changes from 3.14 branch to revno 12636 2016-05-13 13:12:08 -05:00
Michael Davidsaver
0f6c997288 osdNetIntf: ignore 0.0.0.0 as a broadcast address
It seems in some situations Linux (at least)
sets IFF_BROADCAST bug leaves the bcast address
set to 0.0.0.0.

Fixes lp:1581505
2016-05-13 09:31:26 -04:00
Michael Davidsaver
704c748fbd Revert "libCom/osi: osiSockDiscoverBroadcastAddresses() finds 127.255.255.255"
This reverts commit e805abe971.
2016-05-13 09:14:20 -04:00
Andrew Johnson
82456f83ee Fix Menu declaration test 2016-05-12 16:35:54 -05:00
Andrew Johnson
e98a6bbafa Make <menu>_NUM_CHOICES not an enum tag
Fixes lp:1580972
2016-05-12 15:05:18 -05:00
Andrew Johnson
6a592dc2c0 Support "link(name, lset)" syntax in DBD files
Both Perl and dbStaticLib support included.
Also added a new std/link directory for link types.
Nothing looks up the registered link support tables yet.
2016-05-08 22:57:42 -05:00
Andrew Johnson
ac5c7b0314 Merged Michael's cxxcleanup branch 2016-05-04 17:50:59 -05:00
Michael Davidsaver
d674866219 epicsGuard.h add typedefs linking guard and release 2016-05-02 20:53:51 -04:00
Michael Davidsaver
a1bd644502 drop all templateInstances.cpp
No longer needed by any targets.
2016-05-02 20:51:11 -04:00
Andrew Johnson
3c8af4c571 Catch bad attribute names/values to prevent a segfault 2016-05-02 11:38:51 -05:00
Michael Davidsaver
26c04844cf add test for lp:1577108 2016-05-01 13:30:45 -04:00
Michael Davidsaver
a3d981ad0a dbLink.c: fix dbGetLink for array of length 1 2016-05-01 13:30:45 -04:00
Ralph Lange
924aa2f93b Set Base version to -pre1-DEV 2016-04-29 12:20:35 +02:00
Ralph Lange
457fb8fa13 Update CONFIG_BASE_VERSION for 3.15.4-pre1 2016-04-29 11:34:05 +02:00
Ralph Lange
b8b259de6f Merge Andrew's libs-prereq branch 2016-04-29 10:42:03 +02:00
Andrew Johnson
7ce8e5ea01 Fix RTEMS Makefile issue 2016-04-28 23:59:39 -05:00
Andrew Johnson
496414c88c Fix for VxWorks 5.5 compiler 2016-04-28 23:28:39 -05:00
Andrew Johnson
2acde8bac7 Merged changes from 3.14 branch to revno 12630 2016-04-28 21:39:55 -05:00
Andrew Johnson
2c69ddbee5 Merged my ioc-arch branch, manually re-based 2016-04-28 19:26:11 -05:00
Andrew Johnson
ba0d5f9443 Disallow single-quoted strings in Perl DBD parser 2016-04-28 19:03:17 -05:00
Andrew Johnson
08fd987c60 Perl script clean-up 2016-04-28 19:00:37 -05:00
Andrew Johnson
5a605fa0c3 Set various EPICS_VERSION_* environment variables
These are set at the same time as the ARCH variable.
Had to add EPICS_VERSION_SHORT and EPICS_VERSION_FULL to epicsVersion.h.

This uses more uniform names, should we change epicsVersion.h names?
We would continue to support the old names in parallel for some time.
2016-04-28 18:58:07 -05:00
Andrew Johnson
0e5dc2a21c More build parameters.
Renamed EPICS_TARGET_ARCH to EPICS_BUILD_TARGET_ARCH
Added EPICS_BUILD_OS_CLASS and EPICS_BUILD_COMPILER_CLASS
2016-04-28 18:56:03 -05:00
Andrew Johnson
230603f4ac Remove ARCH from cdCommands and envPaths files
Set it in iocshRegisterCommon() instead.
Remove ARCH from iocBoot/ioc/Makefile@Common templates.
2016-04-28 18:50:41 -05:00
Andrew Johnson
396ff3c484 Add EPICS_TARGET_ARCH parameter
Set its default value automatically in the generated envData.c
2016-04-28 18:49:10 -05:00
Andrew Johnson
09fbeaf6d3 Merged Ralph's new-promptgroups branch 2016-04-28 18:27:15 -05:00
Andrew Johnson
b4a8a1ac98 Fix dbFreeBase() issue causing segfaults 2016-04-28 18:10:26 -05:00
Andrew Johnson
ee87aecd6e Always have linker search INSTALL_LIB 2016-04-28 14:32:21 -05:00
Michael Davidsaver
a38dccfb1a add guard/release typedefs for epicsMutex 2016-04-28 09:20:13 -04:00
Michael Davidsaver
17edfd0652 use epicsMin/Max instead of tsMin/Max
Don't remove tsMinMax.h yet as it appeared
in caServerApp template.
2016-04-28 09:20:13 -04:00
Michael Davidsaver
afd48be98c drop unused tsBTree.h 2016-04-28 09:20:13 -04:00
Michael Davidsaver
d92af8c44d remove unused autoPtrDestroy.h 2016-04-28 09:20:13 -04:00
Michael Davidsaver
2af37d076d drop unused epicsOnce 2016-04-28 09:20:13 -04:00
Michael Davidsaver
64c1a28f69 remove unused locationException.h includes 2016-04-28 09:20:13 -04:00
Michael Davidsaver
954874dbd6 drop epicsMemory.h 2016-04-28 09:20:13 -04:00
Michael Davidsaver
673cb24fc2 replace use of epics_auto_ptr w/ eapt_array
add helpers for udpiiu to calculate parameters maxPeriod and nTimers,
allowing them to be const.
Add SearchArray to hold fixed-size array of auto_ptr.
2016-04-28 09:20:13 -04:00
Michael Davidsaver
05c347434b use auto_ptr instead of epics_auto_ptr where applicable 2016-04-28 09:20:13 -04:00
Andrew Johnson
13294f80cc Add basic support and tests for a JSON link address type 2016-04-27 20:47:17 -05:00
Andrew Johnson
778aa18c00 More cleanup 2016-04-27 20:29:16 -05:00
Michael Davidsaver
55895e6d66 ellSort: comments and redundant asserts 2016-04-27 07:58:39 -04:00
Ralph Lange
1f36670175 dbStatic: remove obsolete GUIGROUPS_GBLSOURCE definition 2016-04-27 09:14:51 +02:00
Andrew Johnson
0348c2295b Cleanup 2016-04-26 22:13:12 -05:00
Michael Davidsaver
77d6609bbd fixup comments 2016-04-26 20:19:19 -04:00
Andrew Johnson
1ede873200 Fixed some space/tab issues in DBD files 2016-04-26 16:20:12 -05:00
Andrew Johnson
c933d77963 Add rule to install libraries before linking executables
The rule must be disabled for building libCom and gdd though.
2016-04-26 15:18:31 -05:00
Michael Davidsaver
b035bd9963 test ellSortStable 2016-04-26 13:57:22 -04:00
Michael Davidsaver
70fc52bca0 dbCreateRecord use ellSortStable()
sort records once per dbLoadCOM()
2016-04-26 13:57:22 -04:00
Michael Davidsaver
40d110fd7d ellSort 2016-04-26 13:56:57 -04:00
Michael Davidsaver
56d5a59356 dbScan: optimize addToList
Insert from back to maintain ~same order.
Avoid iterating entire list each time
in the common case where all PHAS==0
2016-04-26 13:56:57 -04:00
Michael Davidsaver
b392c1ca7d whitespace 2016-04-26 13:56:57 -04:00
Ralph Lange
473992cfb9 Update release notes 2016-04-26 13:47:12 +02:00
Ralph Lange
6a362f467d rec: implement new promptgroup (gui_group) choices 2016-04-26 13:28:28 +02:00
Andrew Johnson
af07e0fd51 Fix oops in last commit 2016-04-25 12:24:05 -05:00
Andrew Johnson
de38b80795 Apply partial solution for Windows builds of Cap5 2016-04-25 11:54:17 -05:00
Ralph Lange
7bb27ad3e7 dbStatic: deprecate guigroup.h; remove from includes 2016-04-22 17:02:21 +02:00
Ralph Lange
1e1799c30e tools: change RE to allow any value for promptgroup in the Perl DBD parser 2016-04-18 09:56:41 +02:00
Andrew Johnson
79f1257f1d Merged commit 12739 from 3.15 branch = 12623 from 3.14 branch. 2016-04-15 17:41:26 -05:00
Andrew Johnson
8358580190 Merged commit 12623 from 3.14 branch. 2016-04-15 17:38:41 -05:00
Ralph Lange
ce7044c711 dbStatic: collect promptgroup enum choices when reading dbd 2016-04-06 15:38:35 +02:00
Andrew Johnson
8a5d1a08ad Restore loadLink to lset, move CONSTANT link code into its own source file 2016-04-03 01:29:28 -05:00
Andrew Johnson
1e028d68d8 Move DBLINK support code into its own source file 2016-04-03 00:49:36 -05:00
Andrew Johnson
c888b4b6f0 Merged changes from 3.15 branch, to revno 12738 2016-03-30 12:39:36 -05:00
Andrew Johnson
177090e35e Merged fixes for lp:1558206 and lp:1563191 from 3.14 branch, revno 12622 2016-03-30 11:26:53 -05:00
Michael Davidsaver
7a1766279c dbLock: dbLockerAlloc() accept const array of non-const pointers 2016-03-24 13:42:49 -04:00
Andrew Johnson
cec0222c5a Merged Keenan Lang's iocsh-silent branch 2016-03-24 10:13:17 -05:00
Andrew Johnson
d33c402b00 Release Notes 2016-03-23 17:15:57 -05:00
Andrew Johnson
bc2a47b849 cvtFastPerform: Rename reserved member names, fix for vxWorks 2016-03-23 16:56:34 -05:00
Andrew Johnson
0a0b9a93a2 Simplify epicsConvertDoubleToFloat() 2016-03-22 18:14:12 -05:00
Andrew Johnson
d949e34c13 More cvtFastPerform changes
Added a converter using std::streambuf (slow!)
Pass buffer size to converters
Added verbose flag and # numbers to measure
Do the small number tests first
2016-03-22 17:47:03 -05:00
Andrew Johnson
db4f208659 Collate and report by precision 2016-03-22 01:01:51 -05:00
Keenan Lang
394820318c Getting branch up to date with trunk 2016-03-21 10:01:11 -05:00
Michael Davidsaver
45db78981c iocInit: no need to break DB_LINK when isolated
This is being done to free the link private struct,
but dbDbRemoveLink() is not used to avoid the overhead
of splitting every lockset just before the PDB
is free'd.

No reason to do this for non-isolated until scans threads
are stopped.
2016-03-20 09:43:40 -04:00
Michael Davidsaver
7d94d05bb7 iocInit: special clear link set in doCloseLinks() 2016-03-19 17:15:08 -04:00
Andrew Johnson
e82449171f Restructure cvtFastPerform, fix VxWorks build 2016-03-18 17:45:52 -05:00
Andrew Johnson
e7bba39737 Add int64 record types and device support, from long 2016-03-16 13:14:49 -05:00
Andrew Johnson
59fea64390 Add missing dependencies for Test.dbd files 2016-03-16 13:10:17 -05:00
Andrew Johnson
f97c1a345e Fix cvtFast and tests
We might still want to change the actual behaviour though,
see the FIXME comments.
2016-03-16 09:44:35 -05:00
Keenan Lang
5c93eb6049 Updated Changelog 2016-03-15 16:04:57 -05:00
Andrew Johnson
f260124733 Ensure mbb* MASK calculated properly 2016-03-10 13:05:00 -06:00
Keenan Lang
92bd217ade Updating example iocsh startup scripts 2016-03-07 14:38:59 -06:00
Keenan Lang
f0b5b52cef Whitespace 2016-03-07 14:14:33 -06:00
Keenan Lang
e0b578aff5 Eliminated @-sign echo disabling, replaced with ability to disable comment echoing with '#-' 2016-03-07 14:12:04 -06:00
Keenan Lang
0fd07d1632 Updated iocsh to allow user to select that lines from included scripts not be echoed. 2016-03-04 16:08:05 -06:00
Andrew Johnson
fbf6b6d3e5 The usual post-tag updates 2016-03-03 17:41:58 -06:00
Andrew Johnson
82042e270e CONFIG_BASE_VERSION for R3.16.0.1 2016-03-03 17:36:43 -06:00
Andrew Johnson
32c3f8a44f Merged reformatted Release Notes from 3.15, to revno 12735 2016-03-03 17:32:51 -06:00
Andrew Johnson
fc4f010972 Documentation updates for release 2016-03-03 17:19:50 -06:00
Andrew Johnson
bd2ada3f8c Reformat Release Notes slightly 2016-03-03 16:02:46 -06:00
Andrew Johnson
3d7e95b88a Debug print value of IF flags in default/osdNetIntf.c 2016-03-03 13:39:48 -06:00
Andrew Johnson
8fea0117ae Clean up build rules, remove CapFast & dbst support 2016-03-02 14:20:53 -06:00
Andrew Johnson
8392106f59 Merged revno 12734 from 3.15 branch 2016-03-02 10:44:40 -06:00
Andrew Johnson
9502841b55 Silence unused variable warning 2016-03-02 10:41:34 -06:00
Michael Davidsaver
19680d7869 libCom/test: fixup epicsAtomicTest
Add testBasic to check basic op symantics.
Add anon namespace to hide symbols other than MAIN(epicsAtomicTest).
Replace using namespace with using for individual functions.
For RTEMS skip the tests using threads as the use of
RTEMS_NO_TIMESLICE prevents them from being meaningful
2016-03-01 10:57:26 -05:00
Michael Davidsaver
4a0ef34771 edit RELEASE_NOTES.html 2016-02-29 21:08:25 -05:00
Michael Davidsaver
5d42e60745 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.
2016-02-29 20:43:40 -05:00
Michael Davidsaver
e01d4b14d6 rec/test: add missing TESTFILES 2016-02-29 20:37:25 -05:00
Andrew Johnson
791fa1310a Merge fixes from 3.15 branch, to revno 12733 2016-02-29 18:15:28 -06:00
Andrew Johnson
b4404c8266 Clean up Release Notes merge 2016-02-29 17:53:59 -06:00
Andrew Johnson
f73f3332fa Merge RTEMS NTP fix from 3.14 branch, to revno 12615 2016-02-29 17:49:08 -06:00
Andrew Johnson
64cd49410e Make epicsMutex intialization use epicsThreadOnceId
Includes Michael's patch to replace calls to the epicsMutex API
from inside the libCom/osi/os/RTEMS/osdThread.c code.

Fixes lp:1542539
2016-02-29 16:22:43 -06:00
Andrew Johnson
0f6f833e91 Merged link-support branch 2016-02-29 13:48:18 -06:00
Andrew Johnson
c08df82898 Merged compress branch 2016-02-29 13:24:16 -06:00
Andrew Johnson
f0c56bcbba Merged 3.15 changes, to revno 12731 2016-02-26 18:16:26 -06:00
Andrew Johnson
76c422c5fd Merge Cygwin fix from 3.14, fix in rsrv too 2016-02-26 17:10:35 -06:00
Michael Davidsaver
2c48bcc26b dbChannelShow reporting detail level changed 2016-02-26 16:07:47 -05:00
Andrew Johnson
a3ab342833 Fix Release Notes for last commit 2016-02-26 14:22:00 -06:00
Andrew Johnson
3304470323 Merged the rsrvbindiface branch 2016-02-26 14:15:22 -06:00
Andrew Johnson
4f2f910d09 Added extern "C" wrappers to clean up some Solaris warnings 2016-02-26 13:50:39 -06:00
Andrew Johnson
217f515985 Merged fix-dbGet-arrays branch 2016-02-26 12:29:20 -06:00
Andrew Johnson
ebc59a4223 Add epicsAtomicTest to epicsRunLibComTests 2016-02-26 12:27:33 -06:00
Andrew Johnson
58285501de Revert, test programs may be included in harness without being run 2016-02-26 12:25:59 -06:00
Andrew Johnson
fa07bc3efe Added build files for cygwin to cross-compile linux-arm targets
Slightly strange combination and not actually tested, but could
be useful for some developers -- some FPGA tool-sets come with a
Cygwin cross-build environment for their target devices.
2016-02-26 11:19:37 -06:00
Michael Davidsaver
bfa8e324f7 remove dbChArrTest from testHarness
dbChArrTest calls iocInit() and so can't
be in the shared test harness
2016-02-25 21:10:42 -05:00
Michael Davidsaver
51a69862e7 ioc/db: single return for dbGet()
Single return path after call to prset->get_array_info
to ensure that paddr->pfield is restored.
2016-02-25 20:59:10 -05:00
Michael Davidsaver
4b8c11aeef memset transposed arguments 2016-02-25 20:08:44 -05:00
Andrew Johnson
62efa2e96a Fix the dbGet() array with field-log bug.
This also fixes a problem where the array is used in circular buffer
mode and the request has an offset, but the array is not actually
full at the time; to copy the data out of the array the convert()
routine needs to know the capacity of the array to know when to wrap
around, but we were passing it the current length instead.
2016-02-25 17:50:33 -06:00
Andrew Johnson
c7bcb09540 Add tests for dbGet() with db_field_log
Regression testing for a bug where an array field with a sub-array
channel filter can read past the end of the db_field_log array,
because in dbGet() the call to prset->get_array_info() occurs even
when pfl is supposed to be overriding the record's array.
2016-02-25 17:44:45 -06:00
Andrew Johnson
5ee778b0c2 Merged changes from Base-3.14, to revno 12613 2016-02-25 14:13:40 -06:00
Michael Davidsaver
7b3a040b34 rsrv: use SOCKERRNO
Must use OSI SOCKERRNO for correct handling
of errors w/ winsock
2016-02-25 11:32:56 -05:00
Andrew Johnson
e721be4ff5 Merged the posix-mlockall branch 2016-02-25 10:20:56 -06:00
Michael Davidsaver
88b47c021c cygwin inherits winsock broadcast behavior 2016-02-25 11:10:28 -05:00
Michael Davidsaver
d0a316f7ca win32: include ws2tcpip.h from osdSock.h
Needed to get some additional definitions
including IP_ADD_MEMBERSHIP
2016-02-25 11:02:09 -05:00
Ralph Lange
ba307ba6e7 rsrv: populate the server list - also on Windows builds 2016-02-25 09:36:31 +01:00
Andrew Johnson
66b0acbe3e Report UDP client status on Windows 2016-02-24 11:07:33 -06:00
Ralph Lange
822c6815c5 pcas: fix compilation on MSC Windows 2016-02-24 11:24:17 +01:00
Andrew Johnson
e18eca80db Changes from patch in lp:1539791 2016-02-23 15:43:26 -06:00
Michael Davidsaver
ffb23a3480 pcas: don't send beacons w/ connect()d socket
use sendto() and leave the origin field to 0.0.0.0
so it will be filled in by the receiving repeater
2016-02-16 16:28:04 -05:00
Michael Davidsaver
2be59e985d Avoid race in linkRetarget
Add dbCaSync() to avoid a race between a call to dbCaGetField()
and the link becoming connected.
2016-02-16 15:07:40 -05:00
Michael Davidsaver
b4fd19e7db libCom/test: remove test_debug from epicsStackTraceTest
No one will look at this output unless the test fails,
then more output is better.
2016-02-15 17:09:44 -05:00
Michael Davidsaver
969b1030b2 RTEMS: show PWD and nfsMount() args on start 2016-02-15 12:29:22 -05:00
Michael Davidsaver
84880e876d dbUnitTest: show PWD when database load fails 2016-02-15 12:29:22 -05:00
Michael Davidsaver
45a741ac6f libCom/RTEMS: ensure lookup of localhost on RTEMS
create /etc/hosts if it doesn't already exist
2016-02-15 12:29:06 -05:00
Michael Davidsaver
0575d3764f libCom/test: fixup RTEMS tests to run clean 2016-02-15 12:29:06 -05:00
Michael Davidsaver
48da96cce5 libCom/test: epicsMMIOTest missing test spec 2016-02-15 12:29:06 -05:00
Michael Davidsaver
18d863b918 db/test: missing/wrong .db file names 2016-02-15 12:06:10 -05:00
Andrew Johnson
61e61aab24 Use MS' strto[u]ll() if present 2016-02-12 15:15:19 -06:00
Andrew Johnson
d3e046a466 Document [s:e] and [s] filter usage 2016-02-12 14:20:33 -06:00
Andrew Johnson
f528f347cd Increase testMonitorWait() timeout 2016-02-12 11:33:54 -06:00
Andrew Johnson
ffed8910c0 Merged Michael's dbcadynamic branch 2016-02-12 10:22:47 -06:00
Andrew Johnson
0fb923186a Merged dbentrybuf branch 2016-02-10 14:27:38 -06:00
Andrew Johnson
ce500bc98c More indentation and other trivial cleanup 2016-02-10 14:03:52 -06:00
Andrew Johnson
6376ae8b1a Fixed some issues with indentation 2016-02-09 18:31:17 -06:00
Andrew Johnson
445c0ada8c Fix Windows problems from Valgrind merge. 2016-02-09 14:10:51 -06:00
Andrew Johnson
87759d1c1d Merged Michael's valgrind branch 2016-02-08 18:01:59 -06:00
Andrew Johnson
9d95528eba Show UDP name server status in casr 2+ output 2016-02-08 16:34:37 -06:00
Michael Davidsaver
95a1998e0b update release notes 2016-02-04 19:09:44 -05:00
Michael Davidsaver
5769db3862 rsrv: "casr 1" shows ignore list 2016-02-04 18:57:02 -05:00
Michael Davidsaver
00a74fbb4e libCom: fix debug print formats in osiSockDiscoverBroadcastAddresses() 2016-02-04 18:45:18 -05:00
Michael Davidsaver
03fde89dd4 rsrv: EPICS_CAS_IGNORE_ADDR_LIST 2016-02-04 18:44:33 -05:00
Michael Davidsaver
8421b46398 update release notes 2016-02-04 17:59:08 -05:00
Michael Davidsaver
650aaea203 ca: update CAref.html with changes to beacon address list
Note that server beacon address list will no longer
consider client address list as a fallback.
2016-02-04 17:56:31 -05:00
Michael Davidsaver
fcfe7ed312 pcas: no fallbacks for beacon address list
Don't mix client and server configuration
by defaulting the server beacon list to use
the client address list.
2016-02-04 17:39:28 -05:00
Andrew Johnson
f2c4b2c81e Add config for linux cross-compile to windows-x64-mingw 2016-02-04 15:57:23 -06:00
Michael Davidsaver
167dea3735 rsrv: decouple some client/server config
the automatic beacon address list should follow
the server interface address list, and not be
effected by any client config.

Also, don't populate the interface address list
from EPICS_CAS_BEACON_ADDR_LIST as this will
almost never contain local interface addresses.
2016-01-29 08:33:41 -05:00
Andrew Johnson
1c1eb030a9 Improve casr() output 2016-01-27 17:59:38 -06:00
Andrew Johnson
43cf5af621 dbQuietMacroWarnings control 2016-01-26 12:28:00 -06:00
Michael Davidsaver
235e4bd835 rsrv: more beacon address fixups
should really be based on *server* config
as beacons should be sent to clients attempting
to connect to the server.

By default send beacons to bcast addresses
from the interface address list.
2016-01-23 16:15:17 -05:00
Michael Davidsaver
601d6d9fe8 rsrv: oops
improper rebase
2016-01-23 13:53:44 -05:00
Michael Davidsaver
b961b25151 rsrv: fix wildcard check ordering
filter out mcast addresses before wildcard uniqueness check.
2016-01-23 13:53:44 -05:00
Michael Davidsaver
eb9246e4c9 rsrv: beaconCounter not updated 2016-01-21 17:14:23 -05:00
Andrew Johnson
d729006908 Fix build for vxWorks 5.5.2 (again) 2016-01-21 12:27:01 -06:00
Michael Davidsaver
cba449d53b pcas: listen for mcast search request 2016-01-21 12:17:02 -05:00
Michael Davidsaver
cdffcbfbae update release notes 2016-01-21 12:17:02 -05:00
Michael Davidsaver
ba5ea5da93 don't use EPICS_CA_ADDR_LIST for server interface list
keep existing behavior, and server binds wildcard
when only client address list is specified.
2016-01-21 12:17:02 -05:00
Michael Davidsaver
c884175a86 rsrv: loopback mcast beacons 2016-01-21 12:17:02 -05:00
Michael Davidsaver
a4e9dcff00 rsrv: fixup beacon address list handling
should be based on client interface list,
not server.
2016-01-21 12:17:02 -05:00
Michael Davidsaver
c9323da5e3 minor
fix typo
expand error message
skip redundant (and misleading) print of beacon address list
2016-01-21 12:17:02 -05:00
Andrew Johnson
ffe441d032 Fix build for vxWorks 5.5.2 2016-01-21 10:34:32 -06:00
Michael Davidsaver
6143520680 update release notes 2016-01-13 21:46:00 -05:00
Michael Davidsaver
f814398d77 std/rec/test: add compressTest
test circular buffer mode for FIFO and LIFO
2016-01-13 20:58:58 -05:00
Michael Davidsaver
d2e4fcbbac compressRecord: LIFO doesn't zero pad
Change handling of OFF so that reading a partially
populated buffer doesn't pad with zero.

Simplify put_value() and get_array_info()
2016-01-13 20:58:58 -05:00
Michael Davidsaver
4cca4673ca compress: copy some text from RRM wiki
Still a lot remaining.  No idea what to do about the images.
2016-01-13 20:58:58 -05:00
Michael Davidsaver
840da801fb std/filters: arr wrap on capacity not length 2016-01-13 20:58:58 -05:00
Michael Davidsaver
e75f44100e dbAccess: dbGet wrap at capacity count not valid count
Change the usage of rset::get_array_info in dbGet()
in the case that offset>0 and no_elements<max_elements.
Presently this results in an early wrap which corrupts
the last valid element in the result buffer
in the case that offset==1 and no_element==max_elements-1.

Should have no effect in other situations.
2016-01-13 20:58:58 -05:00
Ralph Lange
45c8a173f3 libCom/osi: fix timespec definition for MinGW 2016-01-13 17:28:23 +01:00
Michael Davidsaver
e227ae3590 update asTest
test dbGetString()
and fix cleanup order
2016-01-12 11:37:01 -05:00
Michael Davidsaver
ecedd9c362 Move dbGetStringNum() to dbStaticLib.c
use getpMessage() and keep it private
2016-01-12 11:36:58 -05:00
Michael Davidsaver
4e7b185977 update release notes 2016-01-12 10:13:10 -05:00
Michael Davidsaver
b74ecff2fc dbCa: set putnelements for scalar case
ensure that putnelements is kept in sync. w/ pputNative
2016-01-12 09:38:28 -05:00
Michael Davidsaver
1255e75828 db/test: missing coverage for dbGetLink w/ larger element count 2016-01-12 09:32:47 -05:00
Michael Davidsaver
d6eea14fd0 dbCa: dbCaGet/PutLink dynamic size
dbCaGetLink return actual number of elements w/o zero padding.
dbCaPutLink write only requested number of elements, w/o padding
2016-01-11 23:01:26 -05:00
Michael Davidsaver
98504d1cdc libca: enable mcast loopback 2016-01-11 20:59:08 -05:00
Michael Davidsaver
568ece9c27 rsrv: multicast name lookup 2016-01-11 20:59:08 -05:00
Michael Davidsaver
f876bdb42c rsrv: don't leak sockets when building tcp set 2016-01-11 20:59:08 -05:00
Michael Davidsaver
605074a580 rsrv: additional fallback for interface list 2016-01-11 20:59:08 -05:00
Michael Davidsaver
64da181e6f expand beacon address list when binding to wildcard 2016-01-11 20:59:08 -05:00
Michael Davidsaver
823613fb4f libca: addAddrToChannelAccessAddressList report success 2016-01-11 20:59:08 -05:00
Michael Davidsaver
f837add8c4 envDefs: add envGetBoolConfigParam 2016-01-11 20:59:08 -05:00
Michael Davidsaver
15307c4db6 rsrv: redo initialization to support bind multiple interfaces.
consolidate most setup tasks in rsrv_init(),
which now spawns threads directly.
For each interface create 3-4 sockets,

* TCP listener
* UDP receiver (unicast)
* UDP receiver (broadcast optional)
* UDP beacon sender
2016-01-11 20:59:07 -05:00
Michael Davidsaver
8d5815ac95 rsrv: move some from req_server to rsrv_init 2016-01-11 20:59:07 -05:00
Michael Davidsaver
25d7d46e08 rsrv: no lazy init of BUCKET 2016-01-11 20:59:07 -05:00
Michael Davidsaver
5f31d9d2b1 rsrv: unglobalize IOC_sock 2016-01-11 20:59:07 -05:00
Michael Davidsaver
bb67c9db2f rsrv: UDP listener on more than one iface 2016-01-11 20:59:07 -05:00
Michael Davidsaver
cb965611ce rsrv: casr show multiple UDP clients 2016-01-11 20:59:07 -05:00
Michael Davidsaver
e805abe971 libCom/osi: osiSockDiscoverBroadcastAddresses() finds 127.255.255.255
For the default implementation of osiSockDiscoverBroadcastAddresses()
allow the loopback interface to have IFF_BROADCAST set (usually isn't)
and on Linux assume that the loopback broadcast address is usable
even if IFF_BROADCAST isn't set.
2016-01-11 20:59:07 -05:00
Michael Davidsaver
c80f71e294 rsrv: more renaming 2016-01-11 20:59:07 -05:00
Michael Davidsaver
692bbafffe rsrv: placeholder for cast_server thread shutdown 2016-01-11 20:59:07 -05:00
Michael Davidsaver
fd863738be rename prsrv_cast_client in cast_server() 2016-01-11 20:59:07 -05:00
Michael Davidsaver
2052062324 remove global prsrv_cast_client 2016-01-11 20:59:07 -05:00
Michael Davidsaver
5d74216017 rsrv: unnecessary use of global 2016-01-11 20:59:07 -05:00
Michael Davidsaver
991ff308e0 rsrv: when binding to a specific interface also bind to iface bcast
An oddness of BSD sockets (not winsock) is that binding to
INADDR_ANY will receive unicast and broadcast, but binding to
a specific interface address receives only unicast.  The trick
is to bind a second socket to the interface broadcast address,
which will then receive only broadcasts.
2016-01-11 20:59:07 -05:00
Andrew Johnson
9779d6987c Merged Michael's dbunittestmonitor branch 2016-01-07 13:22:43 -06:00
Michael Davidsaver
b7c2815c21 linkRetargetLinkTest set number of tests 2016-01-07 14:08:51 -05:00
Michael Davidsaver
77a5f0db77 epicsMMIODef.h use static inline
'static inline' is necessary for consistent behavior with C and C++.
Plain 'inline' in C can result in multiply defined symbol
errors when linking.
2016-01-05 21:31:51 -05:00
Bjorklund, Eric A
8d6469957e vxWorks: missing extern "C" around sysPci* prototypes 2016-01-05 21:16:04 -05:00
Michael Davidsaver
29d2b7f6a2 RTEMS: readline missing } 2015-12-28 16:36:58 -05:00
Michael Davidsaver
ef39f658cd dbStaticLib: dbGetString() fix spaces in link modifiers 2015-12-21 19:42:31 -05:00
Michael Davidsaver
e298fb4c27 dbStatic: avoid write past end of DBENTRY::message
Prevent long link strings (and maybe others)
from overflowing the fixed length string
buffer associated with each DBENTRY.
2015-12-21 18:56:39 -05:00
Michael Davidsaver
d94840ae6c std/filter: plugins cleanup freeList 2015-12-21 13:44:23 -05:00
Michael Davidsaver
c1f742e741 libCom: valgrind track taskwd freelist 2015-12-21 13:44:23 -05:00
Michael Davidsaver
6f0814108a libCom: all valgrind hooks to epicsMutex free-list 2015-12-21 13:44:23 -05:00
Michael Davidsaver
770d9ab313 freeListLib: instrument with valgrind 2015-12-21 13:44:23 -05:00
Michael Davidsaver
7e7cca6164 dbmf: instrument with valgrind 2015-12-21 13:44:23 -05:00
Michael Davidsaver
03bdf4effa include valgrind.h 2015-12-21 13:44:23 -05:00
Michael Davidsaver
3258927bab freeListLib: cleanup indent
all whitespace
2015-12-21 13:44:23 -05:00
Michael Davidsaver
a8e285067d dbmf: cleanup indent
whitespace only
2015-12-21 13:44:23 -05:00
Ralph Lange
fda3824ab4 Set version back to -DEV, add "not released" to RELEASE_NOTES 2015-11-22 18:10:40 +01:00
Ralph Lange
42a67524e0 Update CONFIG_BASE_VERSION for 3.15.3, remove "not released" from RELEASE_NOTES 2015-11-22 17:54:12 +01:00
Ralph Lange
d4ed70154b doc: add reference to LP bug #1466129 to known problems page 2015-11-22 17:33:58 +01:00
Andrew Johnson
f776f6b422 Set Base version to -rc1-DEV 2015-10-26 14:31:25 -05:00
Ralph Lange
cd746a339f configure: update CONFIG_BASE_VERSION for 3.15.3-rc1 2015-10-26 17:22:37 +01:00
Ralph Lange
6438750615 tools: change builtin _USER_ macro name to avoid clashes with makeBaseApp 2015-10-26 13:41:46 +01:00
Andrew Johnson
b099ea2966 Clean up g++ unused-but-set-variable warning in pcas 2015-10-18 21:41:46 -05:00
Andrew Johnson
2ec5c80652 Fix internal anchor in filters.pod 2015-10-13 18:39:50 -05:00
Andrew Johnson
e1039bacfc Merged DB file parser fix from 3.14, revno 12605 2015-10-13 14:41:39 -05:00
Andrew Johnson
69d3c94328 Set Base version to -pre1-DEV 2015-10-12 10:38:00 -05:00
Ralph Lange
a02860728e configure: update CONFIG_BASE_VERSION for 3.15.3-pre1 2015-10-12 10:35:30 +02:00
Ralph Lange
440ccc3c4a Merged Andrew's ntptime-on-vxworks branch 2015-10-11 12:04:16 +02:00
Ralph Lange
3d19f19d81 Merge Ralph's config-from-snippets branch 2015-10-11 09:59:39 +02:00
Andrew Johnson
214edd42d1 Minor RULES_EXPAND changes
Added support for a _PATTERN variable which calls $(wildcard) and
prepends .. and the other SRC_DIRS automatically.
Use $(ECHO) instead of @echo so make -s works silently.
Added another meta-rule to create .d files when make needs one.
2015-10-11 00:50:50 -05:00
Ralph Lange
f8b0b2f5f0 tools: add new builtin macros to assemblies 2015-10-10 19:12:11 +02:00
Ralph Lange
8596dc41f2 configure: add assemblies to RULES_EXPAND 2015-10-10 18:55:17 +02:00
Ralph Lange
88cb33a04d tools: fix in assembleSnippets script and test for Windows (getpwuid() not implemented) 2015-10-10 18:54:20 +02:00
Ralph Lange
5af0663058 Back out 12706 (assembly integration in build system) 2015-10-10 18:17:35 +02:00
Ralph Lange
830704021d Add creating config files from snippets to build system. 2015-10-09 17:28:46 +02:00
Ralph Lange
96ee2cd00c tools: install assembleSnippets.pl 2015-10-09 15:28:40 +02:00
Ralph Lange
c2d2f671bb tools: add -M option to assembleSnippets.pl (creates dependency file) 2015-10-09 14:15:26 +02:00
Ralph Lange
4b9958304d tools: add assembleSnippets.pl and test 2015-10-09 11:25:45 +02:00
Andrew Johnson
d0875f4f12 Make the NTPTime provider optional on VxWorks 2015-10-05 17:44:26 -05:00
Andrew Johnson
c4b128dfff Merged changes from 3.15 branch, to revno 12702 2015-09-18 18:13:58 -05:00
Andrew Johnson
c74eb27474 Merged changes from 3.14 branch, to revno 12604 2015-09-18 11:51:51 -05:00
Ralph Lange
a245c3805a ioc/db/test: fix Makefile to link against librt on Solaris and Linux only 2015-09-16 17:33:20 +02:00
Ralph Lange
122b9d3185 db/test: Link dbStressTest against librt on all targets (not just solaris)
man clock_gettime: "Link with -lrt (only for glibc versions before 2.17)."
2015-09-16 13:43:43 +02:00
Andrew Johnson
4081377c4b Build fixes for Solaris 2015-09-10 13:26:37 -05:00
Andrew Johnson
405f50533e Fix for linux-x86 2015-09-10 09:56:50 -05:00
Michael Davidsaver
8f0950288a dbChannelTest missing call to testdbPrepare() 2015-09-08 10:04:06 -04:00
Michael Davidsaver
3551513297 dbStressLock: attempt to fix solaris linking failure 2015-09-08 09:52:52 -04:00
Michael Davidsaver
fc775d76aa asTest: copy+paste error
Didn't remove all use of local variable
2015-09-07 15:37:46 -04:00
Michael Davidsaver
7195372caf release note for new locking 2015-09-07 15:23:04 -04:00
Michael Davidsaver
655735fa13 asTest: fix link with mingw
This test has device support, which the registerRDD script
always emits as dllimport, so it fails to link if the dsets
are part of the executable itself.

Use iocsh to avoid calling the RDD function directly since
a DLL can't link against functions in the main executable.
2015-09-07 15:06:02 -04:00
Michael Davidsaver
8aea808b1d libCom: cross mingw imports posix time.h by default
at least mingw 4.9.1 for Debian 8 i386 host.
2015-09-07 10:50:48 -04:00
Andrew Johnson
66e126bae8 Merged Micheal's lockopt branch 2015-09-06 23:15:21 -05:00
Andrew Johnson
8ce86bb061 Undefine LOCKSET_DEBUG & LOCKSET_NOFREE 2015-08-31 16:08:08 -05:00
Andrew Johnson
f2ff270644 Fix comment 2015-08-31 15:55:39 -05:00
Andrew Johnson
895b415968 dbCaLinkTest fixes
* Attempt to fix Windows build failures
* Use C-style comments, not C++
2015-08-31 11:29:46 -05:00
Michael Davidsaver
87999c7047 dbLock: better error check when recursive locking attempted 2015-08-31 11:20:35 -04:00
Michael Davidsaver
9331ca3f44 dbLockTest: check additional recursive case 2015-08-31 11:17:34 -04:00
Andrew Johnson
1587c44d79 db/test: Add missing dependency 2015-08-28 15:19:23 -05:00
Michael Davidsaver
51f0a4509b std/rec/test: missing testdbPrepare() 2015-08-27 15:43:05 -04:00
Michael Davidsaver
94f00cb0c6 dbCa: more verbose error message in eventCallback 2015-08-27 12:44:50 -04:00
Michael Davidsaver
4544be090d std/rec/test: add linkRetargetLinkTest 2015-08-27 12:13:49 -04:00
Michael Davidsaver
15db30ba79 dbUnitTest: add testMonitor
Synchronize unittests by waiting for monitor updates
2015-08-27 13:46:22 -04:00
Andrew Johnson
cd79a7b53d dbCa: use dbf_type_to_DBR_TIME() macro 2015-08-27 10:30:42 -05:00
Michael Davidsaver
717d7ff4eb db/test: dbStressTest conditional TIME_STATS 2015-08-25 18:00:39 -04:00
Andrew Johnson
696e00eec9 Cleanup in callback.c 2015-08-24 12:18:23 -05:00
Andrew Johnson
a81d123ea5 Undo s/printf/errlogPrintf/ in iocsh commands 2015-08-24 11:26:25 -05:00
Andrew Johnson
f21fce0b42 Remove some unnecesary #includes 2015-08-24 10:47:51 -05:00
Andrew Johnson
6fffcf9985 Make dbLockTest work when LOCKSET_DEBUG undefined 2015-08-24 10:32:37 -05:00
Michael Davidsaver
d890c80961 dbLock: restore initialization of PV_LINK
PV_LINK -> DB_LINK must happen in doResolveLinks after add_record
2015-08-20 15:52:30 -04:00
Andrew Johnson
d49fc94314 Merge changes from 3.15 branch, to revno 12701 2015-08-20 11:24:07 -05:00
Andrew Johnson
88864e949b Merge changes from 3.14 branch, to revno 12599 2015-08-20 11:14:01 -05:00
Andrew Johnson
536c6e91ff Export private dbLock*Ref() functions for tests 2015-08-19 11:26:47 -05:00
Michael Davidsaver
35c07a958f libCom/osi: osiLocalAddr() missing free() 2015-08-19 07:28:53 -04:00
Ambroz Bizjak
67aa96b957 freeListItemsAvail.patch from lp:1479316 2015-08-18 15:51:38 -04:00
Michael Davidsaver
041423092f osdnetIntf.c cleanup indentation 2015-08-18 15:51:38 -04:00
Michael Davidsaver
869410d6f6 libCom/osi: osiLocalAddr() avoid race on initialization 2015-08-18 15:46:22 -04:00
Ambroz Bizjak
6862ef6580 timerQueueActive.patch from lp:1479316 2015-08-18 14:39:27 -04:00
Ambroz Bizjak
b6aea68304 epicsSingletonMutex.patch from lp:1479316 2015-08-18 14:38:18 -04:00
Michael Davidsaver
9d00978176 src/ca/client: no need to remove const 2015-08-18 14:33:44 -04:00
Ambroz Bizjak
b6fbea9610 repeaterSubscribeTimer.patch from lp:1479316 2015-08-18 14:24:10 -04:00
Michael Davidsaver
180f40c1f7 dbLock: fix unlock w/o lock during iocInit 2015-08-18 11:09:35 -04:00
Michael Davidsaver
d5832354e8 iocInit: Don't free LSET until scan tasks have stopped 2015-08-18 11:09:35 -04:00
Michael Davidsaver
44980a1dac dbContextReadNotifyCache: variable length for CAC gets 2015-08-18 10:46:20 -04:00
Michael Davidsaver
af1daea3e7 dbContext: local CA variable length 2015-08-18 10:46:20 -04:00
Michael Davidsaver
b2716f0a19 dbCa: subscribe to variable length arrays 2015-08-18 10:46:20 -04:00
Michael Davidsaver
050b9f9a48 ioc/db/test: dbChannelTest use dbUnitTest.h 2015-08-18 09:07:18 -04:00
Michael Davidsaver
4ab6aa79e3 ioc/db/test: fixup arrShorthandTest to use dbUnitTest 2015-08-18 09:07:18 -04:00
Michael Davidsaver
1e39224836 dbCa: simplify shutdown
Don't need partial shutdown case anymore.
Also avoid race when destorying startStopEvent
2015-08-18 09:07:18 -04:00
Michael Davidsaver
f99fbe1964 move dbCaShutdown earlier
shutdown dbCa thread before free'ing records
2015-08-18 09:07:18 -04:00
Michael Davidsaver
aa04941119 ioc/db/test: wrong variable for -I 2015-08-18 09:07:18 -04:00
Andrew Johnson
46853d6862 Clean up compiler warnings 2015-08-16 17:43:10 -05:00
Andrew Johnson
fe4f607e63 libCom/errlog: Don't store stderr in pvtData.console
Some VxWorks BSPs close the stderr stream that the shell running
the startup script created and open a new one for the interactive
shell. This change makes pvtData.console==NULL mean use stderr
instead of storing the stderr value in pvtData.console at init.
2015-08-13 10:44:52 -05:00
Michael Davidsaver
02ac91aa2a epicsReadline: ensure readline context is zero'd
Otherwise ->osd != NULL for the default RTEMS readline impl
2015-08-12 10:17:31 -05:00
Andrew Johnson
f1b403b59a Merged calinktest branch 2015-07-28 14:22:06 -05:00
Andrew Johnson
877a409de1 Fix podToHtml build issue on Windows 2015-07-24 15:59:38 -05:00
Andrew Johnson
7395d1d88d Make dbCa routines macros to dbLink wrappers 2015-07-24 14:06:45 -05:00
Andrew Johnson
4d3831ce58 Merged changes from 3.15 branch to revno 12699 2015-07-24 12:01:53 -05:00
Andrew Johnson
c5130468cd Let dbdToHtml work with wrong newlines 2015-07-24 10:42:09 -05:00
Andrew Johnson
7dd067e887 Merged dbCa bug-fix from 3.14 branch, revno 12595 2015-07-23 18:02:54 -05:00
Andrew Johnson
2f8e6bf17e Fix smoothing for Nan/Inf values in devAiSoftCallback 2015-07-23 13:05:38 -05:00
Andrew Johnson
144281e0a3 Removed extraneous .db file 2015-07-23 12:34:05 -05:00
Andrew Johnson
83c2414ad0 Merged changes from 3.14 branch to revno 12594 2015-07-23 10:13:07 -05:00
Andrew Johnson
1d99ad6cfc Move closer to having pluggable link types.
All link types now have a plink->precord pointer.
Add link support entry tables for const, DB and CA link types.
Route all link I/O options through the new plink->lset.
2015-07-22 14:56:48 -05:00
Andrew Johnson
bd4d8ec26b Merged lockopt branch 2015-08-21 22:44:11 -05:00
Michael Davidsaver
504665bf09 iocInit: move dbCaShutdown earlier
Switch dbCaShutdown from an exit hook to
be called from iocShutdown.  Place it
after callback shutdown.
2015-07-21 19:08:07 -04:00
Michael Davidsaver
1411522a11 dbCa: only add dbCaExit once 2015-07-21 15:53:37 -04:00
Michael Davidsaver
8bfa40d858 dbScan: avoid race on shutdown 2015-07-16 17:05:41 -04:00
Michael Davidsaver
138e2f1ad5 callback: fix race on shutdown
epicsEventDestory() in the main thread could be called
before epicsEventTrigger() completes in the worker.
2015-07-16 17:05:41 -04:00
Andrew Johnson
a5e1f367d6 Merged cbshutdown changes from 3.15 branch, revno 12690 2015-07-16 11:54:40 -05:00
Michael Davidsaver
fefe6fd1fc Fix shutdown issues with scan and callback.
The main reason for this merge proposal is the change to "public" API functions.

Use atomic counter to resolve data race on threadsRunning in callback.

Split up callbackShutdown() and scanShutdown() into two phases *Stop() and
*Cleanup(). The *Stop() functions signal worker threads, and wait for them to
exit. The *Cleanup() functions actually reclaim global resources.

These two mechanisms have couplings which are quite complex. I/O Intr scans
involve both scan lists and callbacks.
2015-07-16 11:48:29 -05:00
Michael Davidsaver
eb31fcedeb iocInit: dbCa shutdown order 2015-07-13 17:51:46 -04:00
Michael Davidsaver
dd6edb103c scanIoTest: set # of tests 2015-07-13 17:51:46 -04:00
Andrew Johnson
50e6a305b1 Merged changes from 3.15 branch to revno 12689 2015-07-13 13:42:10 -05:00
Andrew Johnson
5eb49ebaf0 Merged changes from 3.14 branch to revno 12590 2015-07-13 13:05:33 -05:00
Andrew Johnson
58602cfa80 Clean up in src/ioc/db/test/scanIoTest.c 2015-07-10 16:22:31 -05:00
Andrew Johnson
1e68f3899d Merged gen-vcs-version branch 2015-07-10 14:02:01 -05:00
Michael Davidsaver
8b3d37d392 genVersionHeader: work with git repo w/o tags
--always is necessary for (new) repositories w/o any tags.
--abbrev=20 to get more than the default 7 characters of the hash
2015-07-10 14:19:44 -04:00
Andrew Johnson
ed4bcd831f Update example template, release notes
Changed device support to use the long string input rectype.
Moved the device registration into its own file.
Used _APPNAME_ more, trying to prevent future name clashes.
2015-07-10 12:28:49 -05:00
Andrew Johnson
837111296e Updates to build rules and genVersionHeader.pl script
Added -q (quiet) flag, renamed INSTALL_QUIETLY build variable.
Moved GENVERSION variables into normal locations.
Changed from :: rule to : rule with FORCE dependency.
Removed use of --git-dir, only works when CWD is TOP.
Simplified some parts, more perlish.
Added VCS used to generated output file.
Expanded on the -v (verbose) output.
2015-07-10 12:09:37 -05:00
Michael Davidsaver
9198428619 dbLock: minor
must match following condition
2015-07-09 17:16:39 -04:00
Michael Davidsaver
8f3fcc2787 dbLock: fix initialization of self links
initPVLinks() doesn't correctly handle case where a record links
to itself.  This results it being added twice to lockRecordList,
which corrupts the list count, and the lockset ref. counter.

The error appears in dbLockCleanupRecords() when not all
locksets are free'd.
2015-07-09 17:07:49 -04:00
Kukhee Kim
a308fb7c1e fill zeros into buffer when BALG is changed to LIFO from FIFO. 2015-07-09 13:34:37 -07:00
Andrew Johnson
60823bd2fb Some edits to the Perl script 2015-07-08 16:46:34 -05:00
Andrew Johnson
d0790c3060 Merged epicsTime-status branch 2015-07-08 10:54:28 -05:00
Andrew Johnson
9f0d34656a Remove old libCom HTML files 2015-07-06 11:27:03 -05:00
Andrew Johnson
f6cdbe2693 tools: Support for DB files, added dbExpand.pl 2015-07-06 11:26:35 -05:00
Andrew Johnson
3a54e97758 libCom: epicsReadline refactoring 2015-06-29 17:45:18 -05:00
Andrew Johnson
fa1ddeeb1b Removed the last vestiges of RSET::get_value() 2015-06-23 18:04:33 -05:00
Andrew Johnson
a613a96ad3 libCom: Fix routine name in error message 2015-06-18 10:56:43 -05:00
Andrew Johnson
155017bf09 Removed references to VxWorks 5.x 2015-06-09 15:36:28 -05:00
Andrew Johnson
961dc450c4 Merged changes from 3.15 branch up to Revno 12686 2015-06-05 13:48:57 -05:00
Ralph Lange
fbd2d4dd31 dbStatic: fix buffer overrun in printing functions by extending the local buffer accordingly 2015-06-05 11:10:10 +02:00
Andrew Johnson
53d01f6fb4 Show how to make time providers backwards-compatible 2015-06-03 00:15:39 -05:00
Michael Davidsaver
7fd4ac5a67 update template
use waveform as long string
use app. name in header and macro name
2015-06-01 19:19:24 -04:00
Michael Davidsaver
1240f09797 genVersionHeader: update HG, add SVN and BZR
Update the HG case to use --cwd to avoid dependence on shell syntax.
2015-06-01 19:19:24 -04:00
Michael Davidsaver
7947807e09 fix typo 2015-05-18 21:46:01 -04:00
Andrew Johnson
9946681f72 Update version numbers in documentation for 3.15.3 2015-05-15 10:06:06 -05:00
Ralph Lange
196baac7da documentation: put back red "not released yet" header to RELEASE_NOTES 2015-05-15 14:05:59 +02:00
Ralph Lange
ce93142fe1 configure: set version snapshot back to -DEV 2015-05-15 13:50:14 +02:00
Ralph Lange
e7b20537b9 configure: update CONFIG_BASE_VERSION for 3.15.2 (2nd time for tag move) 2015-05-15 13:47:33 +02:00
Ralph Lange
42a8e61832 documentation: remove red "not released yet" header from RELEASE_NOTES 2015-05-15 13:36:42 +02:00
Ralph Lange
37e1feac12 configure: set version snapshot back to -DEV 2015-05-14 14:16:53 +02:00
Ralph Lange
3090561b5e configure: update CONFIG_BASE_VERSION for 3.15.2 2015-05-14 14:09:28 +02:00
Ralph Lange
1849b9f4ab Update KnownProblems to new version, add Windows parallel build issue 2015-05-14 14:08:18 +02:00
Ralph Lange
2bf58d3187 Update ReleaseChecklist to new version. 2015-05-14 14:06:47 +02:00
Andrew Johnson
2f6fad0cc3 Fixing and/or investigating Cygwin issues 2015-05-01 11:38:54 -05:00
Andrew Johnson
f384232864 Merged Cygwin fix from 3.14 branch, revno 12584 2015-04-29 14:21:40 -05:00
Ralph Lange
b7b9e2a79b configure: set version snapshot to -rc1-DEV 2015-04-29 14:20:18 +02:00
Ralph Lange
6de155e97a configure: update CONFIG_BASE_VERSION for 3.15.2-rc1 2015-04-29 13:58:56 +02:00
Andrew Johnson
1f73716d5c Adjust linux-x86 & -x86_64 flags
Moved -m64 from ARCH_DEP_*FLAGS to OP_SYS_*FLAGS where it is on -x86.
Added GNU_TUNE_CFLAGS to -x86_64, adjust related comments
Added -D_FILE_OFFSET_BITS=64 to -x86 builds
2015-04-28 11:27:06 -05:00
Andrew Johnson
3a7cb33234 Fixed some build issues in db/test 2015-04-22 18:01:20 -05:00
Andrew Johnson
6b6eb5ff6a Merged fix from 3.15 branch, up to revno 12671 2015-04-22 16:54:30 -05:00
Andrew Johnson
2774b4c4af Fix type problem with local CA channels
This commit fixes a problem introduced in Bazaar commit 12658.
Local CA channels were seeing the data type of a channel as an
IOC-specific (dbFldTypes.h) type value instead of the CA type
value from db_access.h.

We introduce a pair of dbChannel*CAType() macros which convert
the dbChannel's dbr_field_type and final_type values into the
CA equivalent type values, and use these macros whenever the
CA encoded field type value is needed. This ensures that the
meaning of the dbChannel member fields never changes (in 3.14
the addr.dbr_field_type was overwritten with the converted
value when connected to by rsrv).
2015-04-22 16:51:31 -05:00
Andrew Johnson
e4f336de94 Perl style fixes, document more Perl programs 2015-04-21 15:09:24 -05:00
Andrew Johnson
fa23ba8a6a Merged changes from 3.15 branch up to revno 12670 2015-04-16 18:12:59 -05:00
Ralph Lange
bcf47ac663 gdd: fix 64 bit warnings using explicit casts for strlen() results 2015-04-16 14:05:33 +02:00
Ralph Lange
da93312b79 configure: fix Windows builds - don't use static link to create DLL stub 2015-04-16 10:55:14 +02:00
Andrew Johnson
ee8bf98f94 Generate documentation from Perl modules
Add rules to generate HTML from POD in Perl modules and scripts.
Generate docs from several EPICS/ Perl modules.
2015-04-15 18:01:26 -05:00
Andrew Johnson
874087f454 Update some version numbers in documentation 2015-04-14 17:58:33 -05:00
Andrew Johnson
a6d3c4f792 Document -D option to msi 2015-04-14 17:57:10 -05:00
Ralph Lange
f168a0f612 configure: set version snapshot to -pre1-DEV 2015-04-14 11:04:27 +02:00
Ralph Lange
5c3032059c configure: update CONFIG_BASE_VERSION for 3.15.2-pre1 2015-04-14 10:14:29 +02:00
Andrew Johnson
76205e5c58 Add podRemove.pl script
Use this to generate .dbd files from .dbd.pod files
so installed *Record.dbd files don't have the
dbdCommon.dbd file expanded out.

Fixes lp:1417428
2015-04-13 10:36:13 -05:00
Ralph Lange
09fab352b0 dbstatic: raise link field length limit to 256 by bumping internal buffer size 2015-04-13 17:13:09 +02:00
Andrew Johnson
30b8872150 Merged changes from 3.15 branch, to revno 12662 2015-04-09 16:13:54 -05:00
Andrew Johnson
2a0356c84f Merged fix to ReadNotifyCache buffer size issue from 3.14 branch 2015-04-09 15:53:16 -05:00
Michael Davidsaver
7a8266c419 ioc/db/test: ensure dbCaLinkTest tests dbContextReadNotifyCacheAllocator
Read the same size twice to ensure that a cached buffer is reused
2015-04-09 14:55:56 -04:00
Michael Davidsaver
0c16937a5a ioc/db/test: extend dbCaLinkTest to check CAC get operation 2015-04-09 14:36:14 -04:00
Michael Davidsaver
ad6f55d92f dbStatic: always clear parser tempList
Warn if tempList is not empty when it should be
2015-04-08 18:37:12 -04:00
Michael Davidsaver
e852de64ff dbStatic: fix leak in parser
"% cdef" not free'd
2015-04-02 18:58:15 -04:00
Michael Davidsaver
f72ebb9fb9 dbmf: add flag to disable freelist 2015-04-02 18:58:15 -04:00
Andrew Johnson
198dedba93 Move section divider comment in RULES_BUILD 2015-03-30 11:19:07 -05:00
Andrew Johnson
ffcbd4ca8b Merge changes from 3.14.12.5 (revno 12582) 2015-03-25 12:53:13 -05:00
Michael Davidsaver
6ac1e050bd dbCa: missing inc. ref. when scan requests are queued
Missing caLinkInc() in scanComplete() drops ref.
2015-03-24 18:44:28 -04:00
Michael Davidsaver
ff4c88ed05 dbLock: comments 2015-03-24 14:18:11 -04:00
Michael Davidsaver
7a5d4cf6cc dbLock: minor 2015-03-24 14:18:11 -04:00
Michael Davidsaver
765fb7c63e dbLock: remove some unnecessary code
no need to hold spinlock for lockRecordList
the lockRecordList is protected by the lockSet::lock
2015-03-24 14:18:11 -04:00
Michael Davidsaver
fa4678798c iocInit: remove no-op
The work which was done here is moved to dbCloseLinks()
2015-03-24 14:18:11 -04:00
Michael Davidsaver
127bdfd9aa dbLock: comments 2015-03-24 14:18:11 -04:00
Michael Davidsaver
8fea2f5ae6 dbLock: default build options
Enable extra debugging.
Disable lockSet free list.
Enable recomputeCnt optimization
2015-03-24 14:18:11 -04:00
Michael Davidsaver
07bb2fbef7 dbLock: no c++ comments in c code 2015-03-24 14:18:11 -04:00
Michael Davidsaver
58a8a07cc4 dbAccess.c: dbLocker needs at most two refs 2015-03-24 14:18:11 -04:00
Michael Davidsaver
a78abd0070 dbLock: describe build options 2015-03-24 14:18:11 -04:00
Michael Davidsaver
c26b02c20d dbCaTest: adjust locking in dbcar() 2015-03-24 14:18:11 -04:00
Michael Davidsaver
ee297dc558 dbLock: use new backref tracking 2015-03-24 14:18:11 -04:00
Michael Davidsaver
8ce0ba1e54 dbLink: backward link tracking 2015-03-24 14:18:11 -04:00
Michael Davidsaver
b8a7da18d2 iocInit: links now initialized in dbLockInitRecords() 2015-03-24 14:18:11 -04:00
Michael Davidsaver
8af3ffb653 dbAccess: multi-locking in dbPutFieldLink
Use new locking API in dbPutFieldLink()
Adjust dbAddLink() and dbRemoveLink()
to pass a dbLocker* through to lockSet merge/split
2015-03-24 14:18:11 -04:00
Michael Davidsaver
ffd188bea3 dbLockTest and dbStressLock 2015-03-24 14:14:46 -04:00
Michael Davidsaver
af89b716f4 dbLock: multi-locking
new API to lock 2 or more lockSets simultaneously
removes global locks for dbScanLock() only
one global lock for debugging/freelist
Introduce dbLockPvt.h for internal API
2015-03-24 14:14:46 -04:00
Michael Davidsaver
adcde46e9e populate RDES early 2015-03-24 14:12:00 -04:00
Michael Davidsaver
c9d889ef3e asTest: quiet 2015-03-19 11:26:48 -04:00
Andrew Johnson
490540b005 Merged from 3.14 branch up to revno 12575 2015-03-19 10:22:15 -05:00
Andrew Johnson
8344b4ed79 Merged changes from 3.15 up to revno 12658 2015-03-18 17:01:34 -05:00
Andrew Johnson
eaef9aabdf Fix export type of .LINK$ fields, add tests 2015-03-18 16:48:07 -05:00
Andrew Johnson
1fd91f52e2 dbStatic: Add field type lookup routines 2015-03-18 16:34:07 -05:00
Michael Davidsaver
3a647fb38b iocInit: prepareLinks after autosave pass0
Allow autosave to restore link fields again...
2015-03-17 19:13:33 -04:00
Michael Davidsaver
8bf765365f std/rec/test: add asTest to RTEMS test harness 2015-03-17 15:26:08 -04:00
Michael Davidsaver
e7037cc519 dbStatic: fix CONSTANT links
constantStr==NULL and constantStr=="" have different
meanings for recGblInitConstantLink() which is used with DOL.
constantStr should remain NULL unless explicitly set
by either initial("") or field(..., "")
2015-03-17 11:34:36 -04:00
Michael Davidsaver
0d41dd0113 std/rec/test: add asTest 2015-03-16 18:47:58 -04:00
Michael Davidsaver
52fc47dec5 start dbCaLinkTest 2015-03-13 15:24:07 -04:00
Michael Davidsaver
e73ed24631 db/test: copy arrRecord from std/filters/test 2015-03-13 15:24:07 -04:00
Michael Davidsaver
40cb21df9f std/filters/test: add input link to arrRecord 2015-03-13 15:24:07 -04:00
Michael Davidsaver
40d4d608ed std/filters/test: add simple processing callback to arrRecord 2015-03-13 15:24:07 -04:00
Michael Davidsaver
77efc973da iocInit: free PPNR 2015-03-13 15:24:07 -04:00
Michael Davidsaver
3e8ba7d7cf dbCa: enable unittests 2015-03-13 15:24:07 -04:00
Michael Davidsaver
a7a87372aa dbNotify: cleanup freelist 2015-03-13 15:24:07 -04:00
Michael Davidsaver
a014314384 db/test: add simple processing callback to xRecord 2015-03-13 15:24:07 -04:00
Michael Davidsaver
8ef1e0d177 re-write scanIoTest 2015-03-13 15:24:07 -04:00
Michael Davidsaver
b9cbf7a3ac Add xRecord device support 2015-03-13 15:24:06 -04:00
Michael Davidsaver
4bd4b93649 dbCa: update comments on locking 2015-03-13 15:15:03 -04:00
Michael Davidsaver
c120027768 dbCa: fix race in scanComplete
Use a reference counter in caLink to ensure it isn't
free'd while callbacks remain in the scanOnce queue.
2015-03-13 15:15:03 -04:00
Andrew Johnson
e1b2a0c5a3 Merged changes from 3.14 branch up to revno 12573 2015-03-13 11:50:26 -05:00
Andrew Johnson
cc3a01d460 Merged changes from 3.15 branch up to revno 12655 2015-03-11 17:20:40 -05:00
Andrew Johnson
99f1dbb75e Merged changes from 3.14 branch up to revno 12570 2015-03-11 16:26:15 -05:00
Andrew Johnson
9577615bba Merged changes from 3.14 branch up to revno 12564 2015-03-11 16:08:29 -05:00
Andrew Johnson
1cacb8ef72 Make TOP an absolute path when running test programs
If the test starts an IOC, the registerRecordDeviceDriver
routine will compare the absolute path of TOP at build time
against the environment variable value (normally relative)
and print a warning if they differ.
This change cleans up the .tap output from such tests.
2015-03-10 13:04:15 -05:00
Michael Davidsaver
fb7273046c epicsAtomic: also prevent vxWorks from using posix/epicsAtomicOSD.cpp 2015-03-10 10:39:37 -04:00
Michael Davidsaver
5bbd954ec8 epicsAtomic: fix noop OSDs
Ensure that all are epicsAtomicOSD.cpp and use
no-op to prevent RTEMS from using the posix
implementation.
2015-03-09 21:27:49 -04:00
Michael Davidsaver
6bf3f5554f epicsAtomic: fix function def. order
epicsAtomicMemoryBarrierFallback used before definition
2015-03-09 19:48:30 -04:00
Andrew Johnson
e0f97a9215 Set testPlan in dbCaStatsTest.c 2015-03-09 18:07:13 -05:00
Andrew Johnson
a3793c368a Merged changes from 3.14 branch up to revno 12561 2015-03-09 17:59:08 -05:00
Andrew Johnson
dad5b1cc94 Merged Michael's fixatomiclinkage branch 2015-03-09 17:43:44 -05:00
Andrew Johnson
74c6e81752 Fixed HDEPENDS_MKMFFLAGS 2015-03-08 15:26:07 -05:00
Andrew Johnson
20155602fc Renamed the record test harness routine
Now named epicsRunRecordTests and as such it
matches the other test harness routines.
2015-03-05 14:50:42 -06:00
Andrew Johnson
f6067a3949 Merged changes from 3.14 branch up to revno 12557 2015-03-03 11:35:46 -06:00
Andrew Johnson
8a85cea75e Merged revno 12549 from 3.14 branch 2015-03-03 11:21:09 -06:00
Andrew Johnson
c3cef8b295 Merged changes from 3.14 branch up to revno 12548 2015-03-02 17:55:15 -06:00
Andrew Johnson
573d06d71d Merged revno 12546 from 3.14 branch (no changes) 2015-03-02 17:53:17 -06:00
Andrew Johnson
0f6cce2bd1 Merged changes from 3.14 branch up to revno 12545 2015-03-02 17:52:15 -06:00
Andrew Johnson
61438b4e7e Fix Windows builds 2015-03-02 15:04:09 -06:00
Andrew Johnson
d432fb3115 Fix Darwin build 2015-03-02 14:22:25 -06:00
Andrew Johnson
02a105e5ab Merged changes from 3.14 branch up to revno 12540 2015-03-02 11:43:20 -06:00
Andrew Johnson
e8c9783e06 Merged changes from 3.14 branch up to revno 12530 2015-03-02 10:35:35 -06:00
Andrew Johnson
510e477087 Merged revno 12527 from 3.14 branch (no changes) 2015-03-02 10:06:48 -06:00
Andrew Johnson
92b4d8e48d Merged changes from 3.14 branch up to revno 12526 2015-02-27 18:11:37 -06:00
Andrew Johnson
b8da39d46b Merged revno 12517 from 3.14 branch (no changes) 2015-02-27 17:52:07 -06:00
Andrew Johnson
b745dbff10 Merged changes from 3.14 branch up to revno 12516 2015-02-27 17:47:55 -06:00
Michael Davidsaver
89596fc308 Fix typo in epicsAtomicTest.cpp testClassify() 2015-02-27 17:29:11 -05:00
Michael Davidsaver
73dcc2745f Fix for Solaris C++ compiler 2015-02-27 17:29:11 -05:00
Michael Davidsaver
332fd550ad epicsAtomic: RTEMS ISR safe impl. for epicsAtomicLock() 2015-02-27 17:29:11 -05:00
Michael Davidsaver
214c9003a9 epicsAtomicTest: include some information about build conditions
Give some idea which implementations are being used
2015-02-27 17:29:11 -05:00
Michael Davidsaver
0d4519eb54 epicsAtomic: fix C linkage
With gcc -std=gnu99 (present default) functions qualified
with plain 'inline' emit strong public symbols (nm says 'T')
in every compilation unit the definition appears.
This causes linking to fail in all cases where executable
are statically linked, and many where dynamic linking is used.
2015-02-27 17:29:11 -05:00
Michael Davidsaver
84e9ff3bc5 libCom/test: Add epicsInlineTest 2015-02-27 17:29:10 -05:00
Michael Davidsaver
b3bfac3f16 add EPICS_ALWAYS_INLINE 2015-02-27 17:29:10 -05:00
Michael Davidsaver
06beb2cafb dbCaTest: use dbCaIsLinkConnected() instead of inspecting caLink* 2015-02-20 12:14:23 -05:00
Michael Davidsaver
be06b37b42 dbPutLinkTest: don't use variadic macros
MSVC doesn't seem to support them correctly
2015-02-18 10:47:42 -05:00
Michael Davidsaver
a526d0eb04 dbPutLinkTest: attempt MSVC workaround
Apparently MSVC doesn't play well with variadic macros.
2015-02-17 16:57:20 -05:00
Andrew Johnson
cd228ccf0e Merged dbscan-update branch 2015-02-17 14:12:38 -06:00
Michael Davidsaver
bbbf05414d dbScan: rename scanOnce3 to scanOnceCallback 2015-02-17 11:31:05 -05:00
Andrew Johnson
7fe5f2f3a3 Another order-only prerequisite 2015-02-06 10:22:55 -06:00
Andrew Johnson
971a819446 Use order-only prerequisites for include files
This prevents unnecessary recompilations when an include
file gets regenerated.
2015-02-04 16:28:23 -06:00
Andrew Johnson
d7d45beedd Merged changes from 3.15 branch, revno 12629 2015-02-04 11:48:08 -06:00
Andrew Johnson
9316233ba2 Merged changes from 3.14 branch, revno 12514 2015-02-04 11:43:23 -06:00
Andrew Johnson
d9060d85eb Make .t files depend on /makeTestfile.pl 2015-02-04 11:39:26 -06:00
Andrew Johnson
fb960e5fc4 Fix "make tapfiles" on Windows 2015-02-04 11:04:40 -06:00
Andrew Johnson
a7ad9a1256 Merged Michael's link-parsing branch 2015-02-03 00:38:23 -06:00
Michael Davidsaver
92641e9160 dbCaStatsTest: set # of tests 2015-01-05 17:45:00 -05:00
Michael Davidsaver
368223f783 db/test: devExtend() only during pass 0 2015-01-05 17:43:45 -05:00
Michael Davidsaver
85e21863dc dbStaticLib: set pdbbase=NULL after freeing 2015-01-05 17:43:17 -05:00
Michael Davidsaver
b9b8cde5f6 dbScan: avoid mustAlloc in eventNameToHandle()
Can already return NULL for other error conditions
2015-01-05 16:26:48 -05:00
Michael Davidsaver
6d7a0327e0 dbScanTest: start with test of scanOnce3() 2015-01-05 16:26:47 -05:00
Michael Davidsaver
d897c9b686 dbCa: use scanOnce3() to prevent once queue overflow
Prevent CP links to high rate records from
overflowing the once queue.
2015-01-05 16:26:47 -05:00
Michael Davidsaver
ff14d811a7 dbCaPvt.h: normalize indentation 2015-01-05 16:26:47 -05:00
Michael Davidsaver
2ba2b90b06 dbScan: add scanOnce3() w/ completion callback 2015-01-05 16:26:47 -05:00
Michael Davidsaver
7d50f62aed dbScan: allow direct scan of I/O Intr list
add scanIoImmediate() to allow drivers to implement
I/O Intr scanning without the overhead of maintaining
their own scan lists.
2015-01-05 16:26:47 -05:00
Michael Davidsaver
4518e8fa7f dbLink: re-intorduce struct lset and dbDb_lset"
without initLink, addLink, and loadLink
2014-12-29 18:16:26 -05:00
Andrew Johnson
e06b0a87b2 Merged changes from upstream 2014-12-23 12:21:37 -06:00
Andrew Johnson
8705a42a39 Merged fixes from 3.14 branch.
Added new link_field_name() function to dbLink.c, needed to
be able to print the link field name.
2014-12-23 12:01:35 -06:00
Andrew Johnson
07c8b67549 Add missing DLLSTUB dependency rules 2014-12-11 14:56:31 -06:00
Andrew Johnson
36850cf677 Remove trailing ; from dbGetSevr macro 2014-12-11 13:56:15 -06:00
Andrew Johnson
5b6dce2681 Fix Windows builds
The windows shell doesn't like commands that start ../
Those commands are all found using TOOLS, so by making that
an absolute path we fix that problem.
However GNUmake doesn't recognize targets with relative paths
as being the same as their absolute path, so we have to fix up
some places that were using TOOLS in dependencies.
2014-12-10 17:40:40 -06:00
Andrew Johnson
e886022343 Deprecate and remove all uses of PATH_FILTER 2014-12-10 13:35:15 -06:00
Andrew Johnson
d1481b23d9 Use msi for dependency rules generation
Added -D command, modified RULES.Db to use it.
2014-12-10 12:09:34 -06:00
Andrew Johnson
c16c4590ec Replace epicsTimeERROR with specific error status values
Introduced error status values for epicsTime routines.
The epicsTimeERROR identifier no longer exists, so code that uses it will
no longer compile (deliberately). Replace all uses of it with a specific
error status value.
2014-12-02 15:25:09 -06:00
Andrew Johnson
b3ad20dec7 Merge perlbin fix from 3.14 2014-12-02 11:35:27 -06:00
Andrew Johnson
0f23784b32 Tweak to callback API. 2014-12-02 11:30:37 -06:00
Andrew Johnson
24d39ae79d Merge perlbin fix from 3.14. 2014-12-02 11:16:18 -06:00
Andrew Johnson
42a3cf8e11 Set version numbers for 3.16.0.0-DEV 2014-12-01 15:31:18 -06:00
Andrew Johnson
73c40f052e Set version snapshot back to -DEV 2014-12-01 15:13:48 -06:00
Andrew Johnson
ed37ace27e R3.15.1 2014-12-01 15:07:38 -06:00
Andrew Johnson
bc15875bfb Merge changes from 3.14 branch, revno 12507 2014-12-01 12:29:30 -06:00
Andrew Johnson
30b789aa49 Fix epicsStrnEscapedFromRaw() and epicsStrnRawFromEscaped()
Major rewrites; the original epicsStrnRawFromEscaped() could read
beyond the end of the input buffer if the input count ended in the
middle of an octal or hex escape sequence. Zero termination did not
always match the return count, and hex escapes were always 2 digits,
contrary to the C standard.

New versions don't use epicsSnprintf() or sscanf() for hex and octal
conversions, so should be slightly faster.

Added 81 new tests to check the above issues.
2014-12-01 11:34:58 -06:00
Ralph Lange
1a94ea1045 libCom/osi: fix - do not set the main thread's Linux name to _main_ (linux) 2014-12-01 13:48:10 +01:00
Andrew Johnson
f1dec35c5c Update KnownProblems list 2014-11-19 16:00:31 -06:00
Andrew Johnson
6e8a3fcd6d Set version snapshot to -rc1-DEV 2014-11-19 15:35:12 -06:00
Andrew Johnson
ec35ef7136 Update version numbers for 3.15.1-rc1 2014-11-19 15:34:02 -06:00
Andrew Johnson
fce8377156 Merge change from 3.14 branch
Up to revno 12506
2014-11-19 15:18:11 -06:00
Andrew Johnson
5c4def1632 Build issues for iOS 2014-11-19 13:57:55 -06:00
Andrew Johnson
bdc57ecb2b Build issues for MinWG 2014-11-19 13:16:56 -06:00
Andrew Johnson
fd3bf215c5 Added missing tests to epicsRunDbTests.c 2014-11-19 10:22:39 -06:00
Ralph Lange
ba922d2bfa ioc/db: fix segfault in dbcaStats when disconnected CA links are present 2014-11-19 15:11:36 +01:00
Ralph Lange
cd8e08651b ioc/db/test: add a test for dbcaStats (detects bug lp:1394212) 2014-11-19 15:08:48 +01:00
Ralph Lange
0627aa5712 std/rec/test: extend arrayOpTest to cover an array of size 1 (detects bug lp:1389298) 2014-11-19 09:59:34 +01:00
Andrew Johnson
adc6219c2a scanIoTest: Extend time for callback threads to run.
Needed for VxWorks 5.5.2 on 68K
2014-11-18 18:10:19 -06:00
Andrew Johnson
a99f1d238e Cleaned up VxWorks 6.9 symLib warnings
VxWorks 6.9 deprecated several symFindBy...() routines, which
result in warning messages at build-time. I rewrote the code
that uses these to use the newer API on VxWorks 6.9.

Also deprecated the two epicsDynLink.h symFindByNameEPICS()
and symFindByNameAndTypeEPICS() routines; epicsFindSymbol() in
epicsFindSymbol.h is now available on most platforms instead.
2014-11-18 17:46:41 -06:00
Andrew Johnson
09797ee7ca Fix ringPointerTest thread priority issue on VxWorks
Picked a priority somewhere in the middle and switch to
that for the two test subroutines that care.
2014-11-18 17:30:43 -06:00
Andrew Johnson
01c0275876 Build stability fixes
Change menuGlobal.dbd and stdRecords.dbd to be generated
as a list of unexpanded include statements, not expanded
out as they have been recently on this branch. This means
any .dbd.pod files in those lists don't have to have been
filtered to remove the POD statements which significantly
simplifies the dependency graph. I had experienced build
loops at times, which this change should prevent.
2014-11-18 14:01:46 -06:00
Michael Davidsaver
d7269f9d80 Revert "dbBkpt: atexit" 2014-11-18 14:56:45 -05:00
Michael Davidsaver
58cd1d0a71 errlog: Don't free globals.
Since the pvtData.atExit flag doesn't prevent all
concurrent use of the pvtData struct we can't safely
free it.
2014-11-18 14:48:15 -05:00
Michael Davidsaver
e4954ba26a dbLock: remove dbLockExit()
No benefit to freeing global locks in unittests,
and this could cause problems with normal IOC
shutdown.
2014-11-18 14:48:15 -05:00
Andrew Johnson
60a5c476b3 Fix single-element array problem
An array field with a maximum size of 1 element would not be
treated as an array, so the record's rset::get_array_info()
routine wasn't being called. Fixed in dbAccess for both
dbGet() and dbPut() operations, and in dbEvent for monitors.

Fixes lp:1389298
2014-11-18 11:10:01 -06:00
Michael Davidsaver
9e63a51707 pcas: avoid reinterpret_cast with sockaddr
Avoid warning about breaking aliasing rules
2014-11-18 11:48:53 -05:00
Michael Davidsaver
93149071b7 dbNotify: shutdown with exitDatabase
Can't cleanup dbNotify while rsrv or scan tasks
are running as there may be operations in progress.
2014-11-18 11:25:15 -05:00
Michael Davidsaver
9c2a62ea96 dbChannel: shutdown from exitDatabase()
Can't cleanup dbChannel while rsrv or scan tasks
remain running.
2014-11-18 11:25:15 -05:00
Andrew Johnson
ae7b8c7aa3 configure: Windows-x64 architecture fixes
* Removed /favor:blend from ARCH_DEP_CPPFLAGS
  It is the default anyway, and including it stops the
  MS Express compilers from building 64-bit executables.
* Added a CONFIG_SITE.Common.windows-x64-static file.
  The MSVS 2010 linker crashes when when generating code
  for this target with HOST_OPT = YES, so make it NO.
2014-11-18 09:51:28 -06:00
Ralph Lange
ac2ff29abb libCom/log: make iocLog client unregister its listener from errlog on shutdown 2014-11-18 15:23:14 +01:00
Michael Davidsaver
f9d0fd351d libCom/test: fix ringPointerTest compile issues on vxWorks and MSVC
Remove C GNU-isms
1) mixing code/variable defs
2) arithmetic on void*
2014-11-17 18:55:47 -05:00
Michael Davidsaver
66fbbbb19a libCom/test: re-write ringPointerTest 2014-11-17 16:51:57 -05:00
Andrew Johnson
4c66f7f2d9 configure: Removed obselete 3.13 compatibility build rule 2014-11-13 17:02:10 -06:00
Michael Davidsaver
924350b362 epicsExit: add epicsExitLater() to trigger process exit without blocking 2014-11-13 11:58:35 -05:00
Michael Davidsaver
d35780888a iocInit: only teardown from iocBuildIsolated()
iocShutdown() should only stop threads and cleanup
if the IOC was started with iocBuildIsolated().
If iocBuild() is used then only close CA links
as was done previously.

This is needed as some device support calls epicsExit()
(while holding a record lock).  This make it impossible
to run the full iocShutdown without deadlocking
in scan/callback shutdown, or segfaulting
in doFreeRecord() or dbLockCleanupRecords()
2014-11-13 11:58:35 -05:00
Andrew Johnson
f7cc0e2d09 Various build system issues
* Removed broken Windows source browser rules and 'browse' targets
* Fixed parallel build issue for Make > 3.81
* Other tidying-up in RULES_ARCHS
* Fix the RTEMS override of the ECHO variable
2014-11-12 16:36:39 -06:00
Andrew Johnson
5554dfd66d Make shared library version numbers use 3 components 2014-11-11 12:57:00 -06:00
Andrew Johnson
69daab81d5 Fix tests after menuScan changes 2014-11-10 17:27:38 -06:00
Andrew Johnson
3aa5d2adee ioc/db menu fixes
* Move including menuScan.dbd from menuGlobal.dbd to base.dbd.
  Menus included in menuGlobal.dbd can't be overridden at build
  time since it gets fully expanded before installation.
* Convert .dbd.pod files before generating menuGlobal.dbd.d
* Remove menuCompress.dbd, nothing in Base uses it any more.
  The compress record has its own compressALG menu
2014-11-10 16:15:52 -06:00
Andrew Johnson
574bac67b4 CAref reformatting/prettification from 3.14 2014-11-08 10:22:03 -06:00
Andrew Johnson
6f7fc7bf8e Merged changes from 3.14 branch
Up to revno 12504.
2014-11-07 15:57:13 -06:00
Andrew Johnson
2ab2470317 Fix epicsStrtod() implementation to detect overflow
The VxWorks version of strtod() that we use returns Inf
instead of setting errno on overflow.
2014-11-07 13:25:16 -06:00
Andrew Johnson
eae4f60e57 cap5: Fix replace_access_rights_event() channel method 2014-11-04 15:10:50 -06:00
Andrew Johnson
a05856375a Update EPICS_TIMEZONE data in CONFIG_SITE_ENV 2014-11-04 14:55:25 -06:00
Andrew Johnson
05d3bb63aa configure: Added missing menu%.h.d rule
Janet had to remove '..' from the vpaths because it was letting
the build look into the TOP/.. directory, which was causing
major issues. She added back rules for COMMON_DIR and .. but
missed this one.
2014-11-03 17:02:42 -06:00
Andrew Johnson
743e3bd387 cap5: Add replace_access_rights_event() channel method 2014-11-02 23:11:44 -06:00
Andrew Johnson
79b70d651c Flag epicsBoolean with EPICS_DEPRECATED 2014-10-31 17:26:48 -05:00
Andrew Johnson
9d5bffca94 libCom/flex: Default skeleton should be filename only 2014-10-31 16:58:03 -05:00
Andrew Johnson
64bf84169c dbStatic: Added hook routine for dbLoadRecords()
Requested by Tim Mooney for use by Autosave.
See the Release Notes for documentation.

This commit also corrects the decorations for recGblAlarmHook.
2014-10-31 16:18:25 -05:00
Andrew Johnson
647bd334ae iocsh: Protect echo and cd from NULL arguments 2014-10-31 12:19:09 -05:00
Andrew Johnson
09ff608ca9 libCom: Fix use-after-free bug in macCore.c 2014-10-30 17:55:12 -05:00
Andrew Johnson
6c14dc194c Replace the epicsBoolean type in epicsTypes.h 2014-10-30 14:40:19 -05:00
Andrew Johnson
3eb6a66f3c Fix build warnings 2014-10-07 15:59:20 -05:00
Andrew Johnson
986f7abb08 Set version snapshot back to -DEV 2014-10-07 01:50:24 -05:00
Andrew Johnson
6e5b47d6da Update version number to 3.15.0.2 2014-10-07 01:31:33 -05:00
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
e66b691549 Add support for iOS 8 target 2014-10-06 20:36:50 -05:00
Andrew Johnson
97e445f78d Merged epicsInt64-library-support branch 2014-10-06 20:28:35 -05:00
Andrew Johnson
b74eb61949 Merged dbca-test branch 2014-10-06 18:04:33 -05:00
Andrew Johnson
f0193d27f3 Clean up warning from clang/MacOS 2014-10-06 18:03:00 -05:00
Andrew Johnson
7b23f50f9d Fix Windows builds.
db_access.h defines things in the CA library, not db...
2014-10-06 16:31:28 -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
3d6fba6802 dbdToHtml fix to support Perl 5.8 2014-10-06 13:26:37 -05:00
Andrew Johnson
2d0ea1e3bb Better Makefile for makeBaseApp top dir 2014-10-06 13:25:41 -05:00
Andrew Johnson
9cebc2993b Fix epicsExportSharedSymbols for MinGW build
Include files now in sorted order within each block.
2014-10-06 00:57:02 -05:00
Andrew Johnson
2ce5d61c38 Perl script fixes.
This commit should fix the Cygwin build issue, and the
stylesheet link problems.
2014-10-03 18:06:47 -05:00
Andrew Johnson
a4298bec56 Merged dbd2html branch 2014-10-03 14:23:04 -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
565f0e3725 Merged simple-filter-conf branch 2014-10-01 18:11:28 -05:00
Michael Davidsaver
c0a4ebebff callback: workers wake up peer if necessary. 2014-10-01 18:38:14 -04:00
Michael Davidsaver
c2631cdc8a callback: don't track busy workers
wakeup unconditionally.  Perhaps inefficient, but simple.
2014-10-01 18:35:42 -04:00
Andrew Johnson
f9628646d1 Make IOSCANPVT a single structure
Not an array of 3 io_scan_list objects.
2014-09-30 16:22:03 -05:00
Andrew Johnson
c9f7a32c82 Mark callbackParallelThreadsDefault properly
The definition gets epicsShareDef and may provide a value.
Additional declarations get epicsShareExtern.
2014-09-30 16:10:24 -05:00
Andrew Johnson
04848e0766 Fix problems in callbackParallelThreads() 2014-09-30 13:00:39 -05:00
Andrew Johnson
4c761eeba0 Fixes for VxWorks & RTEMS builds
* C++ comments are not legal in C code
* Declare scanIoTest() in epicsRunDbTests.c
2014-09-30 12:36:32 -05:00
Ralph Lange
7ecbe87047 ioc/db: add test for allocPvt() returning NULL to chfPluginTest 2014-09-30 16:20:16 +02:00
Ralph Lange
6b71e5bfe5 std/filters: add minimal error handling when using freeListCalloc() in arr plugin 2014-09-30 16:19:13 +02:00
Ralph Lange
1c317adbda ioc/db: add tests for strict tagged plugin options, fix 'required' algorithm 2014-09-30 11:48:41 +02:00
Ralph Lange
9b73fd1730 std/filters: make shorthand notation more prominent in filter documentation 2014-09-30 11:46:17 +02:00
Andrew Johnson
27a8818ea8 Silence unused variable warning 2014-09-29 12:35:22 -05:00
Ralph Lange
f84b736022 ioc/db: back to old signalling policy - wake up worker thread as long as there are any sleeping 2014-09-29 10:59:00 +02: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
a9e048b483 Fix gdd dependency issue from MacOS X 2014-09-26 15:31:20 -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
fcbb159766 Fix gdd dependency warnings 2014-09-26 10:40:50 -05:00
Andrew Johnson
fccbccbc09 Merged dbServer-api branch 2014-09-26 10:21:40 -05:00
Andrew Johnson
60459effaa Merged the gen-pkg-config branch 2014-09-26 10:13:01 -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
c078a9cef8 Replaced split with a single regex 2014-09-25 16:24:23 -05:00
Michael Davidsaver
7a3e52b647 comment in configure/RULES_EXPAND 2014-09-25 16:49:44 -04:00
Michael Davidsaver
3fe84c5ace src/tools: export additional variables to pkg-config
No need for new names/capitalization
2014-09-25 16:49:40 -04:00
Michael Davidsaver
5e9b225a2e src/tools: ensure epics-base.pc is generated only for EPICS_HOST_ARCH 2014-09-25 14:04:10 -04:00
Michael Davidsaver
2f577c136c expandVars.pl: correctly handle macro values containing '='. 2014-09-25 13:24:41 -04:00
Michael Davidsaver
b1918c1e31 allow expandVars for all targets 2014-09-25 11:50:13 -04:00
Andrew Johnson
d73b4eb470 Fix epicsSockResolveTest, host is now a real TLD 2014-09-23 15:31:53 -05:00
Andrew Johnson
82f24149d9 Improve error handling of dbdExpand.pl 2014-09-23 15:11:40 -05:00
Andrew Johnson
32ca04dda8 Make stdRecords.dbd depend on rec/Makefile 2014-09-23 15:10:49 -05:00
Andrew Johnson
c8a7179ab8 Added dbd dependency. 2014-09-23 15:09:26 -05:00
Andrew Johnson
a721794da7 Missed installing asSub.dbd 2014-09-23 15:07:55 -05:00
Andrew Johnson
5bee899f25 Merged Janet's dbdcat branch 2014-09-22 16:12:57 -05:00
Andrew Johnson
22db10da16 std: Reintroduce manually-created base.dbd file
The auto-generated base.dbd file has all the includes fully
expaded out before installation, which prevents IOC applications
from being able to replace manuScan.dbd and menuconvert.dbd
2014-09-22 16:09:46 -05:00
Andrew Johnson
92f5e5775d Restructured patch.
* Move the construction of the .pc files into src/tools
* Make more use of the built-in rules for variable substitution
* Make PKGCONFIG an Makefile variable for installing .pc files
* Use EPICS_PATCH_LEVEL for the final digit in the version number
2014-09-19 16:37:56 -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
Ralph Lange
e7d186eaf8 ioc/db: use dbFindMenu() in callback.c 2014-09-19 13:09:52 +02:00
Ralph Lange
1a8620f03e documentation: add parallel callback threads to RELEASE_NOTES 2014-09-19 10:13:29 +02: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
Ralph Lange
6225602777 ioc/db/test: fix dbPutLinkTest.c to compile on Windows 2014-09-18 10:51:09 +02:00
Keenan Lang
79cb473b6a tests all pass now. 2014-09-17 17:22:04 -05:00
Andrew Johnson
6e3e14448a Increase context string to 40 characters. 2014-09-17 10:12:40 -05:00
Michael Davidsaver
b3c1fef110 cleanup callback and callback*Test 2014-09-16 18:55:27 -04: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
Michael Davidsaver
3bb8536494 dbAccess: dbPut() handle changing BPTR
Forgot to update dbPut(), oops...
2014-09-15 11:42:38 -04:00
Michael Davidsaver
6d678eca60 std/rec/test: test dbGet() and dbPut() for array field
test with waveform record to check that DBADDR
modifications aren't seen by the caller.
2014-09-15 11:42:38 -04: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
840669563c Updated concatenated database definition files 2014-09-11 15:18:57 -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
Janet Anderson
069a40ac46 Concatenated database definition files 2014-09-09 15:58:04 -05:00
Janet Anderson
09e2926c7b Added concatenated database definition files 2014-09-09 13:29:16 -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
0b76aa2de1 - turn off frame-pointer optimization (otherwise stack trace capture
does not work).
2014-09-08 22:31:47 -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
Andrew Johnson
c8e18c1b4d ioc/db/test: Fix dependency problems.
dbLockTest.c never actually uses xRecord.h, while
dbPutLinkTest needed a depedency rule for it.
2014-09-03 22:59:34 -05:00
Till Straumann
fab9ef6147 - added test case for library symbols
- replaced TABs by spaces
2014-09-03 13:23:23 -07:00
Till Straumann
4352a1df59 - replaced TABs by four blanks 2014-09-03 09:39:15 -07:00
Till Straumann
f399b354e6 - replaced TABs by four blanks 2014-09-03 08:13:15 -07:00
Keenan Lang
6d4e284ab1 Added note to fixme comment to state that a function is relying on its current setup. 2014-09-02 17:21:42 -05:00
Keenan Lang
85936ff34c Darwin's osdEnv.c was updated while I was working on this, changed my updated version to match. 2014-09-02 16:55:32 -05:00
Keenan Lang
ee197893e7 removing some extra whitespace to cleanup the diff 2014-09-02 16:44:47 -05:00
Keenan Lang
64a98452e3 epicsEnvSet clears macros before setting environment variable to ensure intuitive use of the function in nested iocsh calls. While adding this functionality, fixed a latent bug in macPutValue where if you tried to NULL a macro with the same name as an environment variable, you would go into an infinite loop. 2014-09-02 16:35:32 -05:00
Ralph Lange
4081935904 std/filters: fix bug in Makefile (showed up on Windows, not on Linux) 2014-08-29 16:33:47 -07:00
Ralph Lange
f88cc071fc configure, ioc/db: remove clutter left by rebase, add rule for pm to html generation (include pm in ..) 2014-08-29 16:33:11 -07:00
Ralph Lange
127af22c34 configure: improve log output for generated html 2014-08-29 16:30:27 -07:00
Michael Davidsaver
7f7e63fee1 dbScan.c: clarify ioeventCallback 2014-08-29 15:43:16 -07:00
Till Straumann
16bef44e5d - print header message 2014-08-29 15:03:56 -07:00
Till Straumann
f2626442b6 - removed message; if there is no support remain silent 2014-08-29 15:03:04 -07:00
Till Straumann
32c6888e1b - removed message about a stack trace going to be printed 2014-08-29 15:02:20 -07:00
Till Straumann
0d323db997 - removed obsolete rule (used during development) 2014-08-29 15:00:54 -07:00
Michael Davidsaver
79497c359c add release note 2014-08-29 11:05:56 -07:00
Andrew Johnson
8604d4643a Merged Murali's memlock_all branch. 2014-08-29 10:58:55 -07:00
Michael Davidsaver
75321140ef update example template 2014-08-29 10:58:18 -07:00
Michael Davidsaver
95d0d97f6a more consistent macro names 2014-08-29 10:58:18 -07:00
Michael Davidsaver
e24d4637c9 genVersionHeader: use date+time as the default version number 2014-08-29 09:56:32 -07:00
Ralph Lange
1bb4293967 src/tools: Set right margin to 0 in style sheet used for html docs created from pod 2014-08-28 15:42:46 -07:00
Ralph Lange
eb91f6701c src/std/filters: Complete documentation for standard filters 2014-08-28 15:41:40 -07:00
Till Straumann
079357c242 - let default (no-op) version of stack trace print informative message
that stack traces are not supported.
2014-08-28 15:10:12 -07:00
Andrew Johnson
267ed50dc7 Allow unknown field attributes in record.dbd files
They will be noisy, but are retained in regenerated output and
won't stop the build from proceeding.
2014-08-28 14:12:28 -07:00
Ralph Lange
51c7dea070 ioc/db: make sure each priority gets at least one thread. 2014-08-28 12:30:07 -07:00
Kukhee Kim
e5b354708e Implement LIFO behavior in compress record 2014-08-28 12:11:51 -07:00
Till Straumann
768c2c02e7 - paranoia test; errlogFlush; fixed debug messages
1) Added a paranoia test to make sure an ill-formatted
      ELF string table is not overrun if there is no NULL
      char found.

   2) Added errlogFlush() before and after stack dump (suggestion
      by Michael Davidsaver, thanks).

   3) Fixed (out of sync) debug messages.
2014-08-28 11:43:46 -07:00
Till Straumann
47408ed14c - indentation 2014-08-28 11:43:18 -07:00
Ralph Lange
648bf6a808 std/filters: add tagged configuration options to dbnd and sync plugins 2014-08-28 11:24:48 -07:00
Ralph Lange
17da152e22 ioc/db/test: add test for tagged plugin configuration 2014-08-28 11:24:09 -07:00
Ralph Lange
bc1cd15852 ioc/db: add optional "tagged" plugin configuration (sets integer tag and any value in one step) 2014-08-28 11:23:22 -07:00
Till Straumann
5a06c118c8 - added unit test for epicsStackTrace 2014-08-28 10:50:03 -07:00
Till Straumann
ccb5be72dd - consistent naming: 'StackTrace' everywhere... 2014-08-28 10:49:22 -07:00
Till Straumann
8b2b03482f - consistent naming: 'StackTrace' everywhere. 2014-08-28 10:47:59 -07:00
Michael Davidsaver
bc9255ba1c add version header to example template 2014-08-28 10:38:24 -07:00
Andrew Johnson
7629cf818a Add epicsScanLLong and epicsScanULLong macros and tests. 2014-08-27 23:29:19 -07:00
Andrew Johnson
bdd495acae Document the 64-bit integer types and support routines. 2014-08-27 22:35:21 -07:00
Andrew Johnson
b0cdaddebc Added 64bit and long long epicsParse* functions 2014-08-27 22:21:30 -07:00
Andrew Johnson
9471488796 Add strtoll() and strtoull() for VxWorks
These are not yet provided even in VxWorks 6.9.
2014-08-27 22:11:08 -07:00
Michael Davidsaver
3f462bd032 check errors 2014-08-27 17:24:44 -07:00
Till Straumann
4459ca0ad8 - merged stacktrace onto current 3.15 tip (Thanks Andrew for his help) 2014-08-27 14:34:05 -07:00
Murali Shankar
67ed5d1f21 Added documentation for memlock_all to the release notes 2014-08-27 12:15:04 -07:00
Keenan Lang
9d0be21cc1 MAC_HANDLE's in iocshBody weren't being created with environment variables. 2014-08-27 13:31:16 -05:00
Keenan Lang
b2c2d9b7d6 Tests changed to accomodate macDefExpand's different args 2014-08-27 13:17:15 -05:00
Ralph Lange
6a018dce35 tools: Add support for Darcs to genVersionHeader.pl 2014-08-27 11:06:57 -07:00
Ralph Lange
55cf45364c tools: Make genVersionHeader.pl log more detailed and streamlined with other EPICS build output 2014-08-27 11:03:54 -07:00
Keenan Lang
4497e8d5f4 Updated macLibREADME 2014-08-27 11:41:27 -05:00
Keenan Lang
2d3db2036b Updated iocshBody to keep track of macro context to allow scoping of macro variables from iocshRun/Load 2014-08-27 11:33:14 -05:00
Murali Shankar
1b7c161f7f On POSIX systems, an IOC application's ability to meet timing deadlines is often
dependent on its ability to lock  part  or  all  of  the process's virtual
address space into RAM, preventing that memory from being paged to the swap
area.  This patch will attempt to lock the process's virtual address space into
RAM if the process has the ability to run threads with different priorities. If
unsuccessful, it prints an message to stderr.  

In Linux, one can grant a process the ability to run threads with different
priorities by using a command like ulimit -r unlimited. To use the FIFO
scheduler, use a command like so - chrt -f 1 softIoc -d test.db

In Linux, one can grant a process the ability to lock memory by using a command
like ulimit -l unlimited. Alternatively, these limits can be configured on a per
user/per group basis by using /etc/security/limits.conf or its equivalent.

In Linux, a child process created via fork inherits its parent's resource
limits.  Thus, it is probably a good idea to start the caRepeater before
starting the IOC.
2014-08-26 17:29:27 -07:00
Ralph Lange
f40c25723d libCom/osi: Fix for MinGW32 builds on Windows 2014-08-26 17:14:35 -07:00
Andrew Johnson
0d33e8a872 epicsStdio.c allow stderr from inside epicsThreadInit()
Circular initialization problem that Murali discovered when you
try to fprintf(stderr) from the posix/osdThread.c once() routine.
This change lets the stderr stream through in that case.
2014-08-26 16:40:02 -07:00
Andrew Johnson
83d22ce164 libCom: Darwin has setenv(), use it. 2014-08-26 14:51:18 -07:00
Ralph Lange
08bf6a1081 ioc/db: fix bug in callback thread initialization 2014-08-26 11:58:42 -07:00
Ralph Lange
862abba4cb ioc/db: fix bug in callback.c 2014-08-26 10:58:59 -07:00
Ralph Lange
bd0c759af3 ioc/db: change call back queue wakeup algorithm (only wake when threads are sleeping and enough work in the queue) 2014-08-26 10:36:32 -07:00
Ralph Lange
15415b5590 Merge from parallel-cbthreads-2: return value for callbackRequest, add tests 2014-08-25 14:40:37 -07:00
Andrew Johnson
2aea693faf Merged Jeff's 3.15_libcom_from_cvs_trunk branch. 2014-08-25 16:27:18 -05:00
Ralph Lange
ca8eda8090 Merge (cherry-pick) original parts from parallel-cbthreads branch 2014-08-25 13:40:18 -07:00
Andrew Johnson
4a5a675ef8 Remove development printf() statements 2014-08-24 23:48:32 -05:00
Keenan Lang
00bb3d1e67 iocshLoad now works as iocsh with no parameters 2014-08-22 14:25:41 -05:00
Michael Davidsaver
3885c809a6 introduce genVersionHeader.pl 2014-08-22 15:23:51 -04:00
Keenan Lang
1ad6ff03b3 Changed iocshLoadFile to iocshLoad and added iocshRun as the macro version of iocshCmd 2014-08-22 11:50:24 -05:00
Keenan Lang
4f1f7dd83b Updated macLib documentation 2014-08-21 17:13:00 -05:00
Keenan Lang
8750ff8807 macDefExpand test file 2014-08-21 16:55:26 -05:00
Keenan Lang
28a01eb572 Added macDefExpand tests to libCom Test Harness 2014-08-21 16:54:39 -05:00
Keenan Lang
dfe6515809 offset by a space 2014-08-21 16:12:11 -05:00
Keenan Lang
76bd45cb45 Reverted calls that didn't need to use macDefExpand to single parameter 2014-08-21 16:09:21 -05:00
Keenan Lang
6d3b70251c Returned macEnvExpand to original parameters, added macDefExpand 2014-08-21 16:05:55 -05:00
Keenan Lang
6d38cc1f76 Returned iocshCmd to it's original function signature, added iocshLoadFile instead 2014-08-21 15:19:50 -05:00
Keenan Lang
77f1fc0504 Missed a few whitespace 2014-08-20 17:01:36 -05:00
Keenan Lang
6ebbf0dd8c Whitespace changes snuck in due to editor 2014-08-20 16:58:50 -05:00
Keenan Lang
8d33108dd8 changed msi.c's use of macEnvExpand to have NULL macros 2014-08-20 13:28:55 -05:00
Keenan Lang
5798574d62 dbLexRoutines calls macEnvExpand as well, doesn't need macros, so added NULL's 2014-08-19 16:50:49 -05:00
Keenan Lang
0cb495bdb3 Sidestepping testing in macEnvExpandTest 2014-08-19 16:44:15 -05:00
Keenan Lang
69c7f0b065 Changing macEnvExpand to accomodate macro definitions 2014-08-19 16:40:51 -05:00
Keenan Lang
ab94bb46f2 Changing iocshCmd to idealized syntax 2014-08-19 16:34:41 -05:00
Michael Davidsaver
7f5fc4356b generate pkg-config files 2014-08-19 11:16:01 -04:00
Andrew Johnson
9079c8aa53 Reverted changes to epicsTime.h and epicsThread.h 2014-08-18 22:55:07 -05:00
Andrew Johnson
c85bd908a3 makeBaseApp tempplate: OPT settings
Eric suggested mentioning the HOST_OPT and CROSS_OPT settings
in the application template's configure/CONFIG_SITE file.
2014-08-18 16:16:02 -05:00
Andrew Johnson
5e0bf53fec epicsTypes.h: Don't use C99 types
The __STDC_VERSION__ >= 199901L test never succeeds
in C++, and there were issues with the epicsInt8
definition anyway (int8_t is signed, but char might
not be).

I also removed the epicsBoolean enum which we never use.
2014-08-15 12:24:31 -05:00
Michael Davidsaver
b7e46b8b02 rsrv: better error msg when listen() fails 2014-08-13 14:26:03 -04:00
Andrew Johnson
cafebf2428 Merged Ralph's fix-nan-inf-updates branch.
Added a few cosmetic changes en route.
2014-08-05 15:51:52 -05:00
Andrew Johnson
547a9b3ebc Tweak some dependency rules for correctness 2014-08-05 14:03:37 -05:00
Ralph Lange
e6a883bc5f std/rec/test: explicitly register test subroutine for subroutine record (fix build on MinGW) 2014-08-05 14:29:14 +02:00
Ralph Lange
fdb21252b0 ioc/db (recGblCheckDeadband): avoid signbit() which does not exist on older MSVC installations 2014-08-05 11:20:23 +02:00
Ralph Lange
130d98463c ioc/db (recGblCheckDeadband): pull most common case to front 2014-08-05 11:17:29 +02:00
Ralph Lange
ded1f3572d ioc/db: force isnan()/isinf() to be 1 (instead of non-zero) 2014-08-05 10:42:25 +02:00
Andrew Johnson
cc656981c0 MSI testing
When testing the msi program, don't rely on EPICS_HOST_ARCH
to find the binary executable as we may be running the tests
on a cross-arch such as linux-x86-debug.
2014-08-04 15:39:02 -05:00
Michael Davidsaver
fb3314ea45 analogMonitorTest: char array too small 2014-08-04 13:43:37 -04:00
Michael Davidsaver
73a64bc89f quiet some warnings
unused variable iseq
undefined struct dbBase
2014-08-04 13:28:47 -04:00
Michael Davidsaver
96b082d3e4 fix makefile typo 2014-08-04 12:26:31 -04:00
Andrew Johnson
aedea0da37 default/osdSpin.c add missing #include "cantProceed.h"
Also adjusted some error messages for common style.
2014-08-02 23:15:43 -05:00
Andrew Johnson
b7f8f17227 blockingSockTest: Undo member renames using m_ prefix
Using the m_ prefix to denote class data members is dangerous in
code that has to compile on VxWorks 5.5 (which 3.15 does) because
the net/mbuf.h header contains the following macro definitions:

#define m_next          mBlkHdr.mNext
#define m_len           mBlkHdr.mLen
#define m_data          mBlkHdr.mData
#define m_type          mBlkHdr.mType
#define m_flags         mBlkHdr.mFlags
#define m_nextpkt       mBlkHdr.mNextPkt
#define m_act           m_nextpkt
#define m_pkthdr        mBlkPktHdr
#define m_ext           pClBlk
#define m_extBuf        m_ext->clNode.pClBuf
#define m_extFreeRtn    m_ext->pClFreeRtn
#define m_extSize       m_ext->clSize
#define m_extRefCnt     m_ext->clRefCnt
#define m_extArg1       m_ext->clFreeArg1
#define m_extArg2       m_ext->clFreeArg2
#define m_extArg3       m_ext->clFreeArg3
#define  m_copy(m, o, l)        m_copym((m), (o), (l), M_DONTWAIT)
#define  m_copym(m, o, l, w)    netMblkChainDup(_pNetDpool, (m), (o), (l), (w))
#define  m_freem(m)             netMblkClChainFree(m)
#define  m_free(m)              netMblkClFree(m)    
#define m_mbufs         mNum
#define m_drops         mDrops
#define m_wait          mWait
#define m_drain         mDrain
#define m_mtypes        mTypes

While the names in the original change all appear to be safe, I
don't want us to start using this convention because we will then
have to police commits more closely or risk build failures in the
future when someone who doesn't know about or remember the issue
can't or doesn't try building their code against VxWorks 5.5.

I don't particularly like the this-> convention to mark member
names either, but until the VxWorks 5.5 support requirement goes
away the m_ convention is worse. Another common convention of
using a leading underscore is not safe either, those names are
reserved for the C/C++ implementation.
2014-08-02 14:02:43 -05:00
Andrew Johnson
8d5cdc3747 Fix typo in macro name
Not that it really matters since only VxWorks and RTEMS actually
compile this file and they don't have shared libraries...
2014-08-02 13:13:49 -05:00
Andrew Johnson
f1a59aa64a Use epicsUInt types, stdint.h is not found on all platforms 2014-08-02 13:09:07 -05:00
Andrew Johnson
6767f5089f threadPool: Replaced errno.h status values with S_pool_* ones
ETIMEDOUT is not provided on MinGW.
2014-08-01 17:55:53 -05:00
Andrew Johnson
59a0fa9364 Fix vxWorks again, passes the tests on all my CPUs now. 2014-08-01 16:06:17 -05:00
Michael Davidsaver
5847f98f89 oops 2014-08-01 13:55:33 -04:00
Michael Davidsaver
6ed997aacc Invalid HW links no longer partially initialized 2014-08-01 11:28:10 -04:00
Michael Davidsaver
5a8915c051 INST_IO no longer accept invalid string as empty 2014-08-01 11:28:10 -04:00
Michael Davidsaver
a919d7e09d dbLink: pass DBADDR* to dbAddLink()
Now we know whether a DB or CA link is created
before calling dbAddLink().
2014-08-01 11:28:10 -04:00
Michael Davidsaver
c5da1e3f89 dbAccess: update dbPutFieldLink() to use dbParseLink()/dbSetLink()
Now returns early for invalid link strings w/o modifying the
field, or detaching device support.
2014-08-01 11:28:10 -04:00
Michael Davidsaver
33804bd7ea iocInit: initialize links in iocBuild
Done before any driver, record, or device supports run.
Also before the hooks used by autosave.
2014-08-01 11:28:10 -04:00
Michael Davidsaver
200355bc00 dbStatic: re-write dbPutString() to use new link parsing
dbPutString() now has two behaviors.  If link_type==CONSTANT
and constantStr==NULL, the link has not yet been initialized.
Just set the ->text field.

If the link has been initialized, then use dbSetLink() to
make the assignment.

Eliminate special handling for DBF_DEVICE.
2014-08-01 11:28:10 -04:00
Michael Davidsaver
480797c0e0 db/test: extend dbPutLinkTest to cover dbParseLink() 2014-08-01 11:28:10 -04:00
Michael Davidsaver
470a9f9fc9 Introduce struct dbLinkInfo and dbParseLink()
This structure holds the processed form of any link type.
It is populated by dbParseLink(), which can be called w/o
record locking.

dbCanSetLink() checks the the parsed link, and a DBLINK field
have compatible types for assignment.
Record locking is required, but this does not modify the field.

dbSetLink() makes the actual assignment.
2014-08-01 11:28:10 -04:00
Michael Davidsaver
99626f03cd dbLink: remove struct lset and dbDb_lset
unnecessary exposure of internal API
2014-08-01 11:28:10 -04:00
Michael Davidsaver
8c60e7e2cb track INP/OUT field in struct dbFldDes
avoid string comparisons
2014-08-01 11:28:10 -04:00
Andrew Johnson
fcd0a4c75d Fixes for VxWorks implementation. 2014-07-31 15:43:35 -05:00
Michael Davidsaver
d05f2e6062 dbPutLinkTest: check HW link parsing 2014-07-31 16:22:02 -04:00
Michael Davidsaver
e09066cfab dbPutLinkTest: check parsing of CA_LINK 2014-07-31 16:22:01 -04:00
Michael Davidsaver
40838579af iocShutdown: cleanup links 2014-07-31 16:22:01 -04:00
Michael Davidsaver
9f53417a8d add dbCaLinkInitIsolated()
Initialize dbCa workList lock so that CA_LINK
creation in test code doesn't crash.
Once created links will never connect.

clean up workList for unittest when dbCaShutdown
is called state is already exit.
2014-07-31 16:22:01 -04:00
Michael Davidsaver
29490f24c7 dbFreeLinkContents: missing case for RF_IO 2014-07-31 16:22:01 -04:00
Andrew Johnson
ab78480d54 Merged spinlockfix branch.
Some last-minute fixes for VxWorks build warnings.
2014-07-31 12:45:40 -05:00
Andrew Johnson
63d2d8de33 Merged cas-intf-addr-list branch. 2014-07-31 11:34:10 -05:00
Andrew Johnson
68bcc77885 Merged alarm-strings branch. 2014-07-31 10:17:24 -05:00
Andrew Johnson
b0a330f22a Document changes. 2014-07-30 18:03:34 -05:00
Ralph Lange
01dcbed948 ioc/db/test: add test for recGblCheckDeadband() 2014-07-30 13:36:26 +02:00
Ralph Lange
edafb56273 std/filters: make dbnd filter use recGblCheckDeadband() 2014-07-30 10:37:10 +02:00
Ralph Lange
f354f880cc std/rec: make all analog type records use new recGblCheckDeadband() 2014-07-30 10:36:24 +02:00
Ralph Lange
6f41e11804 ioc/db: add recGblCheckDeadband() to recGbl library 2014-07-30 10:35:03 +02:00
Andrew Johnson
64c45961ff configure: Fix missing dependency files
Dependency files were not being created for sources that
were only listed in x_SRCS_class variables, because the
code that added those to the x_SRCS var was running after
we had already loaded the dependency files.
2014-07-29 18:16:53 -05:00
Andrew Johnson
b3afbea7cf Merged Michael's thread-pool branch.
Made various formatting changes, and fixed one problem in the
test program which failed a test on UP machines.
2014-07-29 16:05:24 -05:00
Andrew Johnson
41502f9525 db: Remove status message from dbpf
The status returned from dbPutField() can now include errors from
the record processing such as a link alarm, so it doesn't mean
what it used to and printing the error might be wrong.
Now we just return the status value.
2014-07-29 12:46:38 -05:00
Michael Davidsaver
716f2679a7 thread pool: don't use reserved names
Avoid global symbols with leading underscore
2014-07-29 12:21:07 -04:00
Michael Davidsaver
b1a8b2f20e thread pool: switch thread counts to unsigned int
size_t is considered overly optimistic
2014-07-29 12:18:19 -04:00
Michael Davidsaver
6fee83900e don't include errCommon.h
doesn't exist anymore
2014-07-29 12:06:24 -04:00
Michael Davidsaver
6d11cba513 add missing TESTFILES 2014-07-29 10:32:47 -04:00
Ralph Lange
c8946b4fc2 std/rec: fix inf handling in select record 2014-07-29 15:19:12 +02:00
Ralph Lange
633ef60514 std/rec: fix NaN/inf bug in deadband algorithm of analog records 2014-07-29 15:16:37 +02:00
Ralph Lange
d86723d62a std/rec/test: add test for deadband mechanism of analog record types 2014-07-29 15:13:10 +02:00
Michael Davidsaver
e2461e97ff dbLockTest: test creation of DB links 2014-07-28 14:33:17 -04:00
Andrew Johnson
75da9fd454 Moved dlopen version of osdFindSymbol.c into posix
It was identical in solaris, Darwin and Linux, and had
not been included for cygwin so this reduces duplication.
2014-07-28 12:27:02 -05:00
Ralph Lange
69e8c4b48e std/rec: Improve subRecord error messages 2014-07-28 16:19:42 +02:00
Andrew Johnson
5708855c36 Release Notes for loading support.
To Do:
 * Test that -l the flag to registerRecordDeviceDriver.pl works
   as expected on Windows.
 * Modify example template, or create a new template.
 * Work out if/how this affects VxWorks, can we generate a munch
   file that works the same way as a shared library?
 * Test on all arch's, especially Darwin & Windows.
2014-07-28 00:52:34 -05:00
Andrew Johnson
4b1fd8cba0 Modify registerRecordDeviceDriver for loadable support
Don't generate code to register record types that have only
been declared, i.e. that have no fields defined in them.
This allows libraries to created which only contain device
support without the record types that they support. The
library must have a DBD file that may declare the record
types (to avoid generating a warning) and also contains any
other device(), variable(), function() and registrar()
entries for software included in the library.

Adds -l flag to the registerRecordDeviceDriver program,
which results in epicsExportSharedSymbols being defined
and shareLib.h being reloaded so the generated output file
can be linked into the library that it is registering.
This aspect has not been tested on Windows DLLs yet.
2014-07-28 00:18:37 -05:00
Andrew Johnson
163cf7971d Errors from the DBD Parser should stop dbdExpand
Such errors used to be just warnings, now they stop the output
file being generated unless the -D flag was given.
2014-07-28 00:16:16 -05:00
Andrew Johnson
a2d511b6e9 DBD parser accepts record type declarations
Record types are the only DBD entries for which the parser
will not accept redefinitions. This change lets it accept
a record type declaration any number of times. However once
a record type declaration has been parsed the full record
type definition cannot be loaded, an error will be raised
if the full definition is seen. The parser will still not
accept a full record type definition more than once either,
any later copies of the record type must be declarations.
2014-07-27 23:55:47 -05:00
Andrew Johnson
8eed4cdd88 Perl DBD Parser: Autovivify record types in device() entries
If a record type named in a device() entry does not exist when
the device is seen, the DBD parser will now print a warning
and create an empty record type with that name to hold the
device entry information.
This will allow support modules to be built into libraries that
include their own registerRecordDeviceDriver code, which was
apparently possible with 3.14 although not officially supported.
To avoid the warning message, the DBD file can declare each
record type before the device statement that uses it.

A record type declaration looks like this:
    recordtype(ao) {}
    device(ao, ....)
An IOC will accept and ignore a record type declaration, but it
must have loaded the full record type definition first.
2014-07-27 23:37:58 -05:00
Andrew Johnson
ee40ee789c dbStatic: Allow empty recordtype bodies in DBD files
A record type with an empty body is a declaration. The IOC will
accept one of these in a DBD file as long as it has already
loaded the full record type definition.
This will allow device support to provide a DBD file that declares
each record type it uses before giving the related device() entry.
Later commits will explain why.
2014-07-27 23:26:01 -05:00
Andrew Johnson
c710a3a898 dbStatic/dbLexRoutines.c fix error message 2014-07-27 15:41:49 -05:00
Andrew Johnson
2de36d3273 Fix lock-set initialization properly. 2014-07-25 17:59:59 -05:00
Michael Davidsaver
c4a1208d6e epicsSpinTest: add to libCom test harness 2014-07-25 18:17:27 -04:00
Michael Davidsaver
9cb65e5408 epicsSpinTest: plug some leaks 2014-07-25 18:17:02 -04:00
Andrew Johnson
2a9d05248f Fix epicsSpinTest.c spinThread tests
Runs many more rounds, without blocking with the lock held.
2014-07-25 16:21:03 -05:00
Andrew Johnson
752549d1c8 Fix epicsAtomic headers when used from C code
Several C++ and C99-isms crept in.
2014-07-25 15:05:58 -05:00
Michael Davidsaver
8fec9d6e00 epicsSpin: try lock return non-blocking
Avoid cantProceed() in try lock, even for undefined behavior.
2014-07-25 15:12:02 -04:00
Michael Davidsaver
5824f98972 epicsSpinTest: fix verifyTryLock()
avoid sleeping with a spinlock held.
Now test only works on SMP systems.
2014-07-25 15:11:54 -04:00
Michael Davidsaver
9d03275c53 iocInit: ensure dbLock cleanup after iocShutdown cleanup
by making dbLock init before initDatabase()
2014-07-25 13:49:55 -04:00
Michael Davidsaver
b5fe4abfa8 switch to use sysInWord and friends 2014-07-25 11:15:27 -04:00
Michael Davidsaver
95b916ecd4 thread pool: mark epicsJobCreate() as safe for job functions
Also, use epicsJobMove() to avoid some redundant code
2014-07-25 10:16:20 -04:00
Michael Davidsaver
cbfbce54f9 thread pool: epicsThreadPoolWait return ETIMEOUT 2014-07-25 09:59:46 -04:00
Michael Davidsaver
b3a1fe9c6b thread pool: fix return of epicsJobUnqueue()
Return 0 on success (was queued, now is not),
1 if not queued initially, and EINVAL
if orphaned.
2014-07-24 18:56:27 -04:00
Michael Davidsaver
83dfc7980d thread pool: handle failure to create worker
epicsJobQueue() returns EAGAIN when the first worker
can't be lazily created.

Failure to create workers beyond the first is
silently ignored.
2014-07-24 18:50:19 -04:00
Michael Davidsaver
69d1063067 thread pool: epicsJobQueue return EPERM
When pool control prevents operation
2014-07-24 18:19:33 -04:00
Andrew Johnson
9b6e270b97 Final spinlock tidying-up
* Abort epicsSpinTest() if epicsSpinCreate() returns NULL
* Adjust RELEASE_NOTES that describe the implementations.
2014-07-24 16:33:35 -05:00
Michael Davidsaver
fc4119094f thread pool: epicsThreadPoolGetShared accepts NULL as defaults 2014-07-24 14:44:28 -04:00
Michael Davidsaver
fd2edfe94c release notes 2014-07-24 14:22:52 -04:00
Michael Davidsaver
01a50b5165 thread pool test 2014-07-24 14:22:52 -04:00
Michael Davidsaver
658bd0b570 thread pool implementation 2014-07-24 14:22:52 -04:00
Michael Davidsaver
a8fd14aae1 Thread pool API 2014-07-24 14:22:52 -04:00
Michael Davidsaver
87a6688c17 epicsSpin: remove redundant cantProceed() messages 2014-07-24 10:23:55 -04:00
Ralph Lange
ae518f6e3e ioc/db/test: Fix Windows build 2014-07-24 14:06:11 +02:00
Michael Davidsaver
3ba5bf943e epicsSpin: better error messages when mis-use is detected 2014-07-23 18:40:08 -04:00
Andrew Johnson
846ef343e3 Merged ioc-shutdown2 branch. 2014-07-23 16:59:12 -05:00
Andrew Johnson
6bdb8f911a Suppress errlog output of expected warning messages. 2014-07-23 16:18:32 -05:00
Michael Davidsaver
0bf17be9e3 mmio: vxWorks m68k use default, add weak symbols for old versions 2014-07-16 15:12:56 -04:00
Michael Davidsaver
0bcfbd0ffc remove unused 2014-07-14 18:16:30 -04:00
Michael Davidsaver
34f0374ca5 dbLock: yet another fix to dbLockCleanupRecords()
track the lockRecord allocation
2014-07-14 17:57:17 -04:00
Andrew Johnson
2d4243981f Fix warnings found by clang 2014-07-12 01:12:08 -05:00
Michael Davidsaver
3755b9eaad dbLock: free lockSets 2014-07-11 18:49:41 -04:00
Michael Davidsaver
edf1ad0362 dbLock: another fix to dbLockCleanupRecords() 2014-07-11 18:49:41 -04:00
Michael Davidsaver
bb51281d9c dbPutLinkTest: set # of tests 2014-07-11 16:59:22 -04:00
Michael Davidsaver
fd7a934ce3 dbPutLinkTest: test link string parsing
Test parsing to CONTANT and DB_LINK.
dbCa isn't initialized, so no test for CA_LINK.
2014-07-11 16:51:32 -04:00
Michael Davidsaver
f14bfaab24 dbUnitTest: add testdbGetFieldEqual() 2014-07-11 16:47:55 -04:00
Michael Davidsaver
a218bfd75c dbLock: fix dbLockCleanupRecords
all lockRecord s allocated in one block.  oops.
2014-07-11 16:27:41 -04:00
Michael Davidsaver
3f11fd1665 dbUnitTest: replace testdbPutField()
add testdbPutFieldOk() and testdbPutFieldFail()
which include calls to testPass() or testFail()

Leave testdbVPutField() as a building block.
2014-07-11 10:30:31 -04:00
Michael Davidsaver
ebc3834661 dbUnitTest: testIocInitOk/testIocShutdownOk testAbort() on failure 2014-07-11 10:28:54 -04:00
Andrew Johnson
2fb0b0763d Implement 64-bit database field types.
Incorporates major reworking of the dbConvert.c file.
if the 64-bit stuff gets rejected most of that should
get pulled in anyway.
2014-07-10 18:13:28 -05:00
Michael Davidsaver
f85c3249ab dbUnitTest: rename 2014-07-10 18:23:49 -04:00
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
Andrew Johnson
3c91c17369 Changes for newer version of Pod::Simple::HTML 2014-06-23 22:14:35 -06:00
Andrew Johnson
5b9bee82a5 Document the sync filter.
Also, use enum values where we have them.
2014-06-23 22:11:52 -06: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
Ralph Lange
8ab1f34df4 std/filters: make arrTest run location more flexible 2014-06-21 16:22:09 +02:00
Andrew Johnson
c91fe7b7d7 Fix issues found by Clang
These were int => size_t changes that shouldn't have been made
because the value of the variable can be negative.
2014-07-12 01:09:36 -05:00
Andrew Johnson
05367f1b33 Cleanup dbConvert
Windows warnings removed from testdbConvert by Michael
Major reformatting of dbConvert.c
2014-07-08 14:40:15 -05:00
Andrew Johnson
09b93f10f7 Fixed dbConvert-memmove problems
Test program crashed on Windows-x64.
Some dbConvert.c routines used sizeof([unsigned ]long)
instead of sizeof(epics[U]Int32).
2014-07-08 12:32:11 -05:00
Andrew Johnson
659916cb16 Fix Windows build - no math with void* pointers 2014-06-16 09:57:02 -05:00
Andrew Johnson
f3ff337a41 Merged Michael's dbConvert-memmove branch. 2014-06-13 15:42:36 -05:00
Michael Davidsaver
77ffc94677 out of caution use memmove instead of memcpy 2014-06-13 15:37:13 -04:00
Michael Davidsaver
ec576dd088 benchmark dbConvert 2014-06-13 15:37:12 -04:00
Michael Davidsaver
fe61d46153 add testdbConvert 2014-06-13 15:37:11 -04:00
Michael Davidsaver
1a0ba81d0d dbConvert: optimize copy w/o convert
Use memcpy() where input and output memory representations
are the exactly the same (integer and floating point types).

Assumes 2s complement integer types and that signed and
unsigned types have the same representation.
2014-06-13 15:37:11 -04:00
Michael Davidsaver
0e28ff55c6 add include 2014-06-13 15:37:10 -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
42a3b4fbfd Add a ca: prefix to RSRV's identity string 2014-05-29 17:36:04 -05:00
Andrew Johnson
511b2e4f5c Document briefly. 2014-05-29 17:34:23 -05:00
Andrew Johnson
dbe2a890ec db: Use dbServer API
Setting TPRO now prints user@hostname instead of the thread
name when a record is processed as a result of a caput.

Also added the dbsr command, which currently just calls casr but
will call all registered server report routines (e.g. pvaSrv).
2014-05-29 17:11:31 -05:00
Andrew Johnson
fc8ad6b9ec rsrv: Register with dbServer API. 2014-05-29 17:10:26 -05:00
Andrew Johnson
8857d0bb4e Add dbServer files. 2014-05-29 17:09:08 -05:00
Andrew Johnson
c980613bd8 db/dbChannel: Rename dbr_final_type -> final_dbr_type 2014-05-29 12:31:47 -05:00
Michael Davidsaver
80b64d6a30 spinlocks update
add epicsSpinMustCreate()

Fix spinlock on RTEMS and vxWorks
UP systems to disable task preemption.

Don't use posix spinlocks when
thread priorities are used.
2014-05-23 15:14:49 -04: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
Andrew Johnson
ea1ebd0a7c Fix some HTML character escapes. 2014-05-19 09:26:24 -05:00
Ralph Lange
722d5eeba7 libCom/osi: use epicsThreadGetCPUs implementation from thread-pool branch (posix, WIN32) 2014-05-18 17:24:38 +02:00
Ralph Lange
286bfc5215 .bzrignore: add QtCreator project files 2014-05-18 14:28:39 +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
7b9b2b19d3 Document changes. 2014-03-06 16:02:20 -06:00
Andrew Johnson
56cc1a638a rsrv: Use casIntfAddrList in cast_server
Remove re-parsing of EPICS_CA[S]_SERVER_PORT params.
Bind the UDP socket to the first address in the list.
2014-03-06 16:00:02 -06:00
Andrew Johnson
b6defc6a7f rsrv: Use EPICS_CAS_INTF_ADDR_LIST in req_server
Parse EPICS_CAS_INTF_ADDR_LIST into new ELLLIST casIntfAddrList.
Display warning if contains more than one entry.
Bind the TCP socket to the first address in this list.
2014-03-06 15:55: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
Janet Anderson
b24d7c6da6 Allow user specified db substitution file suffix. 2014-02-20 15:03:23 -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
Janet Anderson
83fa03dd40 Allow user specified substitution file suffix (from Dirk Zimoch) 2014-02-17 10:20:00 -06:00
Ralph Lange
6ad30c92bb ca/legacy/pcas: fix compiler warnings (different signedness in comparison) 2014-02-16 19:29:58 +01:00
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
0b374ef8a6 doc: Add newEpicsMutex to Release Notes. 2014-02-13 09:59:10 -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
3f0e633fd1 dbStatic: Clean up warning on darwin 2013-12-20 09:59:49 -06:00
Andrew Johnson
d35447fa0d configure: 3.14 merge broke darwin builds, fixing... 2013-12-20 09:57:39 -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
unknown
b93601bc22 libCom/test: epicsStrGlobMatch() tests 2013-12-17 16:37:46 -06:00
Andrew Johnson
9e37ab649b libCom: Clear up warnings from VxWorks 6.9. 2013-12-17 14:19:18 -06:00
Andrew Johnson
0a2020e2fc Merged changes from 3.14 branch
Up to 3.14.12.4 release.
2013-12-17 12:54:04 -06:00
Andrew Johnson
25f70a1bd7 Merged Michael's postdbeprop branch. 2013-12-04 12:58:31 -06:00
Michael Davidsaver
841d66993a test epicsMMIO.h
Check byte order swapping.
2013-11-30 16:40:07 -05:00
Michael Davidsaver
d24ed309e9 fix copyright header 2013-11-30 15:31:59 -05:00
Michael Davidsaver
7adb9c3881 update release notes 2013-11-30 15:29:10 -05:00
Michael Davidsaver
55c89335fd update release notes 2013-11-30 14:47:01 -05:00
Andrew Johnson
aab841e279 configure: Added 'host' make target.
Builds only the current host architecture, so this is
equivalent to the target install.$EPISC_HOST_ARCH
2013-11-22 11:44:42 -06:00
Jeff Hill
b38e48642e probably fixed PPC build (its not easy to test this here) 2013-11-20 17:55:44 -07:00
Andrew Johnson
773eb1b33d Clean up array subscript has type ‘char’ warnings. 2013-11-20 17:28:41 -06:00
Jeff Hill
0a86ec01fa o fixed spelling in comments
o fixed warnings during MSVC based build
2013-11-20 10:51:14 -07:00
Andrew Johnson
4d64941bd2 libCom: truncateFile size arg should be unsigned long
It gets compared against LONG_MAX and cast to a long, so now
we have architectures where int != long we must distinguish them
2013-11-15 17:24:33 -06:00
Andrew Johnson
f146f9ea6e Move the string array declarations into alarm.h
This also removes all internal use of alarmString.h which
is now deprecated again (see 3.14.5, Jan 2004).
2013-11-12 16:18:17 -06:00
Jeff Hill
280ff742c5 fix for mingw gcc V3 build 2013-11-07 18:56:17 -07:00
Jeff Hill
6f67091628 fixed ms compiler build 2013-11-07 17:37:17 -07:00
Jeff Hill
36d801682b oops, variable used to be unsigned; changed to signed constant 2013-11-07 14:59:30 -07:00
Jeff Hill
4d54b91a3a o fixed compile errors in, and proper diagnostic from, casPVI.cc
o suprressed some compile time warnings in bucketLib.c
o cleaned up cxx templates README
o removed use of tsMinMax from libCom in favor of the standard library 
     (calls to  tsMinMax still exist in other components in base, but they are being removed)
o removed sharable library export of certain private member functions from class fdManager
o fixed aToIPAddr to correctly lookup all of the different IP addresses string types on all OS types
    independent of the OS interfae variations
o removed use of inet_aton from vxWorks implementation of hostToIPAddr
   o this function is for converting a host name to an ip address _only_
   o the aToIPAddr wrapper is supposed to do the dotted ip ascii string to ip address structure 
   conversion independent of OS spoecific interface variations, when it works correctly
o fixed some spelling issues in comments
o added additional optimizations for processors w/o floating point ALU to addNanoSec in epicsTime
o removed tabs and junk comments from win32 osdProcess.c
o moved PLL update in win32 osdTime.c from timer to a dedicated thread
o added missing epicsExportShared symbols define to osiNTPTime.c
o fixed server ctor should not modify arguments of its caller in blockingSockTest
o removed sunpro specific ifdef nolomger needed from epicsTimeTest.cpp
2013-11-07 10:26:03 -07:00
Andrew Johnson
bf3bdec7b3 rec: Mark various *SV fields prop(YES)
Alarm limits may change to/from NaN when these fields are modified.
2013-11-06 09:48:27 -06:00
Andrew Johnson
052f0992d2 dbStatic: Add property metadata to dump outputs
Both dbWriteRecordTypeFP() and dbDumpField() now show the
value of the prop() field attribute.
2013-11-06 09:28:49 -06:00
Michael Davidsaver
6a6e527fc1 post DBE_PROPERTY from dbPut()
All writes to a prop(YES) field result
in a monitor, even when the field value
doesn't change.
2013-11-04 13:39:17 -05:00
Michael Davidsaver
3cccdd8134 add prop(YES) to standard recordtypes 2013-11-04 13:39:17 -05:00
Michael Davidsaver
034388f009 recognize and store field attribute "prop()" 2013-11-04 13:39:16 -05:00
Michael Davidsaver
3d8bf34177 fix indent 2013-11-04 13:39:12 -05:00
Janet Anderson
16c252d8aa Fixed comments 2013-10-15 11:32:31 -05:00
Janet Anderson
ed5adebd47 Modified suffix for TESTSHRLIBNAME 2013-10-15 09:10:16 -05:00
Andrew Johnson
da80d11db9 softIoc: Generate base.dbd
Includes new dependency rules for parallel builds.
2013-10-14 12:45:08 -05:00
Andrew Johnson
91ef05b5dc tools: Improve dbdExpand.pl error/warning message
Missing files used to result in an empty output file.
Now it warns instead of dying, and suggests adding a
dependency to the Makefile.
2013-10-14 12:43:26 -05:00
Andrew Johnson
34267b31b7 softIoc: Parallel build dependency 2013-10-11 15:15:17 -07:00
Andrew Johnson
be516ddac0 std/rec: Fix clang compiler warning. 2013-10-11 14:00:36 -07:00
Andrew Johnson
1b51a4796d Merged printf-record branch
Adds three new record types: printf, lsi and lso.
Provides device support for all three.
2013-10-03 14:04:03 -07:00
Andrew Johnson
61cc341132 Various POD updates & experiments. 2013-09-30 17:48:06 -05:00
Andrew Johnson
38037f0873 Use Pod::Simple::XHTML if available. 2013-09-30 17:44:45 -05:00
Andrew Johnson
72d65c60a4 epicsErrlogTest: Shorten output lines
Shorten test output from long messages.
2013-09-20 13:44:28 -05:00
Andrew Johnson
b58380fc69 configure: Add vpath for .hpp files
Even Linux systems are using this for C++ headers now,
they're not just for Windows.
2013-09-19 13:02:36 -05:00
Andrew Johnson
ec0f64140a configure: IOS version bump to 6.1 2013-08-30 12:52:10 -05:00
Andrew Johnson
c61d0b43bb configure: Fix ios HDEPENDS_METHOD
It changed on 3.14, but 3.15 needs a different seting.
2013-08-30 12:34:15 -05:00
Michael Davidsaver
01041abd32 rtems: mmio for m68k 2013-08-23 18:14:56 -04:00
Andrew Johnson
2ecf8803c3 Move alarm string arrays into libCom
Using idea from Peter Heesterman:
 * Instanciate the alarm strings once in libCom
 * Remove the epicsAlarmGlobal macro
 * Make sure the decorations are right
2013-08-20 16:59:28 -05:00
Janet Anderson
859024d155 Stopped install of test libraries and removed version number in test library name. 2013-07-26 14:37:55 -05:00
Janet Anderson
a9a3298d51 Added OPT_CXXFLAGS_YES += -g 2013-07-25 10:44:41 -05:00
Andrew Johnson
8a28858ada Merged changes from 3.14 branch. 2013-07-10 16:18:18 -05:00
Janet Anderson
cec9bd3aa9 Remove .. from vpath. Add rules with .. prerequisite. 2013-07-08 15:17:46 -05:00
Andrew Johnson
c96db4c877 libCom: Replaced errlogRemoveListener()
New version errlogRemoveListeners() is safer.
2013-06-28 12:35:43 -05:00
Andrew Johnson
ec9568d096 std: Don't try and use removed RULES file... 2013-06-18 11:39:19 -05:00
Andrew Johnson
a9be8957bc rec: Remove now unnecessary RULES file 2013-06-18 11:19:34 -05:00
Andrew Johnson
4564346722 Release notes for previous commit. 2013-06-18 10:03:37 -05:00
Andrew Johnson
9d9f345278 configure: Removed generation of xxxInclude.dbd files
Rules now expand the source DBD files directly in to the target.
Also removed the makeIncludeDbd.pl script which is no longer needed.
2013-06-18 10:01:37 -05:00
Andrew Johnson
c4d6e2a61e dbStatic: Improve dbDumpDevice
Make it also display the function pointers in the dset and dsxt
for each device support it reports on.
2013-06-14 13:55:22 -05:00
Andrew Johnson
2be5e15346 Merged changes from 3.14 branch
Up to revno 12420 inclusive.
2013-06-07 18:08:38 -05:00
Andrew Johnson
2eb48f43eb Merged my udf-severity branch. 2013-05-30 15:00:37 -05:00
Andrew Johnson
d36f6aa84f ca: Fix acctst.c for older C compilers
All declarations must still precede other statements within a block...
2013-05-30 12:25:37 -05:00
Andrew Johnson
7addfc8ddd libCom/test: Make epicsUnitTestTest.plt more Perlish
Use Perl's __DATA__ stream for the expected data string.
2013-05-24 15:33:56 -05:00
Jeff Hill johill@lanl.gov
5e5ea11658 fix for https://bugs.launchpad.net/epics-base/+bug/1179642 2013-05-16 11:17:47 -06:00
Jeff Hill johill@lanl.gov
de2495d276 fixed test name in output 2013-05-15 14:18:11 -06:00
Jeff Hill johill@lanl.gov
fedaf622ac improved multiSubscrDestroyNoLateCallbackTest quality by temporarily raing the priority of the main thread in the ca context 2013-05-15 12:05:58 -06:00
Jeff Hill johill@lanl.gov
711e82b1a6 fixed the test name of multiSubscrDestroyNoLateCallbackTest 2013-05-15 10:37:17 -06:00
Jeff Hill johill@lanl.gov
deb1fe8c7c removed deadlock potential from test code 2013-05-15 10:24:18 -06:00
Jeff Hill johill@lanl.gov
8db3d7391b improved the quality of the multiSubscrDestroyLateNoCallbackTest 2013-05-15 09:51:48 -06:00
Jeff Hill johill@lanl.gov
4780fb2fe5 fixed credit line comment 2013-05-14 17:15:30 -06:00
Jeff Hill johill@lanl.gov
6ee8a39047 regression test for https://bugs.launchpad.net/epics-base/+bug/1179642 2013-05-14 17:08:41 -06:00
Andrew Johnson
7ff7c37dc7 msi: Flush errlog before exiting
macLib sends its errors to errlog.

Reported by Bruce Hill, SLAC.
2013-05-13 12:10:08 -05:00
Andrew Johnson
a4fed4fe1a msi: Undefined macros under -V should exit(2)
Also cleaned up double negative in internal var name.
2013-05-13 10:10:31 -05:00
Michael Davidsaver
6347b1daf9 add MMIO API
From devLib2
adds calls to handle 8, 16, and 32 bit
Memory Mapped I/O reads and writes.

Adds X_iowriteY() and X_ioreadY().

where X is nat (native), be, or le.
Y is 16 or 32.

Also adds ioread8() and iowrite8().
2013-05-10 16:22:16 -04:00
Andrew Johnson
8d7a241d04 dbScan: Allow periodic scan unit strings to differ in case.
Use epicsStrCaseCmp() instead of strcmp().
2013-04-23 10:38:57 -05:00
Andrew Johnson
97c6d1a903 Add podToHtml.pl script
New rules to use this for .pod and .pm conversions
Replace use of pod2html in ca/client/perl
2013-04-05 13:13:52 -05:00
Andrew Johnson
04ccf9db0d Consistency for extended device support
Call scanDelete() before pdsxt->del_record()
when closing down an IOC.
2013-04-04 14:59:56 -05:00
Andrew Johnson
fabc8d06a9 Move db_post_events(waveform, NORD) into recordType.
Dirk pointed out that existing device support authors aren't
going to add this themselves; it's much better if the record
does it all for itself.
2013-04-04 14:18:35 -05:00
Andrew Johnson
f661299a81 Added new 'tapfiles' build target.
There's a plugin for Jenkins which should be able to read the .tap
output files and generate pretty test status pages from them.
I haven't actually tried using it yet though...
2013-04-04 11:25:53 -05:00
Andrew Johnson
2c8eb630cb Merged Michael Davidsaver's array-opt branch 2013-04-02 17:01:53 -05:00
Michael Davidsaver
fb21c7c6e7 update release notes 2013-04-02 17:07:54 -04:00
Michael Davidsaver
738c135ed8 Don't need void* cast
Implicit case from void** to void*
is allowed.
2013-04-02 17:07:53 -04:00
Andrew Johnson
b27439ce7b Only try to generate .html files where the .dbd.pod exists 2013-03-31 00:49:19 -05:00
Andrew Johnson
53c5aaa9ee Introduce the .dbd.pod extension
Rules to convert to .html and .dbd
Rename existing files
Fix various build rules to match.
2013-03-31 00:38:20 -05:00
Andrew Johnson
880d714a0f tools/DBD: Include cdefs in DBD format output. 2013-03-30 23:49:18 -05:00
Ralph Lange
ddadd9b62e ioc/db/test: add test for parallel callback threads 2013-03-29 17:28:26 +01:00
Ralph Lange
c1318e7d55 ioc/db: add support for parallel callback threads
- use thread safe (spinlocked) callback queues
- add callbackParallelThreads() configuration call (with iocShell binding)
- add callbackParallelThreadsDefault variable, preset to number of CPUs
- remove calls to epicsInterruptLock()
2013-03-29 17:27:56 +01:00
Ralph Lange
8abb1ed255 libCom/test: add test for thread safe (spinlocked) ringPointer buffer 2013-03-29 17:24:11 +01:00
Ralph Lange
d6f5b50550 libCom/ring: add thread safe versions of ring buffers (using spinlocks) 2013-03-29 17:23:24 +01:00
Ralph Lange
3718cfa673 ioc/db/test: add timing statistics to callbackTest 2013-03-29 11:59:30 +01:00
Ralph Lange
90b9965caf libCom/osi: add epicsThreadGetCPUs()
* Implementation for posix and WIN32 tries to get the CPUs available for this process,
   rather than the complete number of CPUs in the system.
 * For the time being, vxWorks returns 1. (This will have to change for vxWorks SMP.)
2013-03-28 15:03:29 +01:00
Ralph Lange
64a2e4e19b libCom/osi: Make EPICS ID in epicsThreadShow 2 characters wider (for 64bit) 2013-03-27 10:56:34 +01:00
Andrew Johnson
4f9928bc3c Merged changes from 3.14 branch
Up to revno 12404.
2013-03-15 15:23:55 -05:00
Andrew Johnson
82560b552e libCom/osi: Fix for cygwin
Needed shareLib stuff.
2013-02-18 13:11:36 -06:00
Andrew Johnson
3196844602 Remove another Borland on Linux remnant. 2013-02-14 15:56:22 -06:00
Andrew Johnson
76911e4ae9 configure: Fix the earlier DLLSTUBS change
Turn on static library dependencies again in RULES_TARGET.
2013-02-13 17:09:54 -06:00
Andrew Johnson
c29a8bd268 configure: Clean up command echoing in build rules 2013-02-12 15:36:55 -06:00
Andrew Johnson
d85d1f0e56 Merged Ralph's spinlocks branch.
Added an RTEMS implementation which locks interrupts,
and some Release Notes mentioning the new API.
2013-02-12 12:13:01 -06:00
Andrew Johnson
c5602af1b4 Fix DLLSTUB dependency generation. 2013-02-11 18:12:40 -06:00
Andrew Johnson
7264146fd1 configure: MinGW is not a Posix architecture. 2013-02-11 14:16:07 -06:00
Andrew Johnson
34e24699e6 configure: Fix DEPLIBS search order for Windows DLLs
Must search for the DLLSTUB library before the SHRLIB one.
This commit also cleans up some comments about MSVC settings.
2013-02-11 14:10:27 -06:00
Janet Anderson
f2c9ddc412 Removed OBJLIBNAME references. obj libs for R3.13 vx compatibility only. 2013-02-05 15:54:08 -06:00
Michael Davidsaver
1b0ff46d33 Allow BPTR replacement in aai and aao 2013-01-23 10:38:32 -05:00
Michael Davidsaver
92d52cc415 Allow waveformRecord to replace BPTR 2013-01-23 10:38:31 -05:00
Michael Davidsaver
4f6040d35b get_array_info() can modifiy DBADDR::pfield
Allow the record support function get_array_info()
to modify its first argument to provide a different
pointer from which values should be read.

Remember the original and restore it afterwards.
2013-01-23 10:38:30 -05:00
Andrew Johnson
d63dffcd34 libCom/test: epicsSockResolveTest build fix
Add socket libraries for Win32 & Solaris.
2013-01-04 12:22:02 -06:00
Michael Davidsaver
f5b7693a58 libCom: aToIPAddr() finds numeric hostnames
Hostnames that begin with one or more digits were not being looked up
by name, causing problems at BNL.
This commit also changes the vxWorks implementation of hostToIPAddr()
to use inet_aton() instead of inet_addr().
2013-01-04 09:33:13 -06:00
Andrew Johnson
3fb529373f Clear RTEMS build warning
shutdown is also a system identifier.
2013-01-03 15:27:23 -06:00
Andrew Johnson
af2693241f Merged changes from 3.14 branch
Up to revno 12398, i.e. the R3.14.12.3 release.
2012-12-18 15:44:35 -06:00
Andrew Johnson
615fd741b9 rec: Fix precision where link not set
Don't just force the precision to 15 if an INPx link is not set,
default to PREC field instead.
2012-12-18 14:13:23 -06:00
Andrew Johnson
04ff9eb8a1 rec: mbbiDirect and mbboDirect refactoring
This includes changes to functionality, documented.
2012-12-11 18:25:01 -06:00
Andrew Johnson
475fc8e122 rec: Code format cleanup to mbbi, mbbo records
No intentional changes to functionality.
2012-12-11 18:23:17 -06:00
Andrew Johnson
afb182a3cd configure: New REGRDDFLAGS variable
Allows registerRecordDeviceDriver.pl to be run with different
command flags than the dbdToX.pl scripts.
2012-12-10 14:51:12 -06:00
Andrew Johnson
79b499d4c5 Releas notes for UDFS. 2012-12-10 09:36:55 -06:00
Andrew Johnson
5a498e26a1 Added Undefined Severity field UDFS
With this, records can be configured to have a lower
alarm severity when they are undefined.
Sets initial severity at iocInit too.
2012-12-10 09:25:58 -06:00
Andrew Johnson
85ed3b9f4e rec: Delete ununsed fields from mbbxDirect record types
LALM was being initialized but is not otherwise used.
2012-12-07 22:15:48 -06:00
Andrew Johnson
319ed9b394 rec: Delete ununsed fields from mbbxDirect record types
SDEF removed from mbbiDirect
LALM removed from both mbbiDirect and mbboDirect
2012-12-07 17:20:38 -06:00
Michael Davidsaver
79bc3f2265 Make blockingSockTest use a free port number
Instead of using the CA server port 5064 which is often
in use, have the listening socket pick a free port.
2012-12-06 14:31:50 -06:00
Andrew Johnson
fc12c72809 Device support for new long string out record type 2012-11-30 16:51:37 -06:00
Andrew Johnson
b64bc41d6b Add new long string output record type. 2012-11-30 16:50:31 -06:00
Andrew Johnson
080e362743 Cleanup. 2012-11-30 16:49:31 -06:00
Andrew Johnson
01819b0b02 Use new helper. 2012-11-30 16:48:58 -06:00
Andrew Johnson
f2716f88f3 stdRecords.dbd depends on rec/Makefile 2012-11-30 16:47:11 -06:00
Andrew Johnson
d741c10635 Another helper, dbLoadLinkLS
Replaces recGblInitConstantLink(..., DBF_STRING, ...)
2012-11-30 16:43:16 -06:00
Andrew Johnson
e01a428059 Added new Long String Input record type "lsi"
With Soft Channel device support.
2012-11-29 13:45:13 -06:00
Andrew Johnson
77c837bcbe printf record: Fix bug in minimum buffer size logic. 2012-11-29 13:41:46 -06:00
Andrew Johnson
02348e770b Use new helper function. 2012-11-29 13:40:42 -06:00
Andrew Johnson
d27747a7f3 Added helper functions dbGetLinkLS() and dbPutLinkLS() 2012-11-29 13:21:11 -06:00
Andrew Johnson
2e4f6443e0 dbNameToAddr() changes for long string support
Modified dbNameToAddr() to match how dbChannelOpen() calls
prset->cvt_dbaddr() before handling the '$' field modifier.
This lets DB links and the dbgf/dbpf commands work with '$'.

Elsewhere changed array handling to check fldDes->special
for SPC_DBADDR instead of paddr->special to allow long string
records cvt_dbaddr() routines to change paddr->special
without breaking the array handling stuff.
2012-11-29 13:20:02 -06:00
Andrew Johnson
493d6014b9 Add new global menuPost
To reduce duplication.
2012-11-29 12:53:21 -06:00
Andrew Johnson
d69f3904d7 Fix for win32 builds. 2012-11-20 17:27:38 -06:00
Andrew Johnson
7778c0c3ff Solaris & vxWorks 5.5.x fixes
Remove C++-isms.
Make internal routines static when duplicate names appear
in the epicsMutexTest.cpp code; on vxWorks and RTEMS all
test programs get linked into a single binary.
2012-11-20 15:55:53 -06:00
Andrew Johnson
f320cbcecd Fix vxWorks implementation. 2012-11-20 15:04:28 -06:00
Jeff Hill johill@lanl.gov
694ac0a650 epicsTime::addNanoSec function size is large now so it shouldnt be inline 2012-11-14 13:10:44 -07:00
Jeff Hill johill@lanl.gov
5ce291facf fixed spelling in comment 2012-11-14 13:03:30 -07:00
Jeff Hill johill@lanl.gov
b86c4107c1 After qptimizing the epicsTime::addNanoSec function we now have a larger code which uses only unsigned integer arithmetic. This is for the benefit of embedded cpu's lacking a hardware floating point coprocessor at the expense of some additional code to maintain. I measered the cpu load improving from 40% free to 80% free after making this change, on a nios2 soft core processor. 2012-11-14 12:51:30 -07:00
Andrew Johnson
e3f59fd5c2 Support variable array size
Added LEN field and get_array_info() routine.
Removed len arg from device support write_string() routine.
Modified device support to match.
2012-11-12 13:45:23 -06:00
Andrew Johnson
b8eec29e43 libCom: Added errlogSetConsole() functionality. 2012-11-09 17:06:32 -06:00
Ralph Lange
3f18327d2d libCom/osi: add tests for epicsSpin (based on epicsMutex tests) 2012-10-29 20:26:11 +01:00
Ralph Lange
a977edfaa6 libCom/osi: add epicsSpin with default, posix, and vxWorks implementations
- posix uses pthread_spin_ interface when supported, pthread_mutex_ otherwise
- default uses epicsMutex
- vxWorks (single core) uses intLock()
2012-10-29 20:25:23 +01:00
Ralph Lange
f9135c39cd configure: change Posix definition from 199506L to 200112L
needed to be able to use spinlocks
2012-10-29 20:20:36 +01:00
Andrew Johnson
c06f3cd9a0 db: Fix dbGet so attributes and value can be fetched simultaneously
Only the Async Soft Channel support did this, so that's where it
was noticed that this didn't work.
2012-10-29 01:20:56 -05:00
Andrew Johnson
35a2793c23 rec: Cleanup of compress & histogram record source code
No functional changes.
2012-10-19 15:06:37 -05:00
Andrew Johnson
c9da766e9e rec: Fix compress & histogram attribute bugs
Problems introduced during Dirk's non-val attribute changes.
2012-10-19 15:01:43 -05:00
Andrew Johnson
7f21c8eec1 Merged changes from 3.14 branch
Merged up to revno 12369 on 2012-10-17
2012-10-18 00:10:12 -05:00
Michael Davidsaver
2613c62b40 rec/aSub: Add cleanup subroutine 2012-10-15 12:35:04 -05:00
Andrew Johnson
ab7d73c537 cas: Fix syntax error in last commit
errMessage() is not printf-like, use errPrintf() instead.
2012-10-11 11:28:28 -05:00
Jeff Hill
7d37c31cc5 added the PV name to the unable to read application types "enums" message 2012-10-10 19:08:18 -06:00
Andrew Johnson
f0c88c3d3c Document the CLEANS variable
Also shows how to be backwards-compatible with the 3.14 build
system.
2012-10-05 22:58:59 -05:00
Andrew Johnson
a05f022e44 Reorganize where the POD should be placed
The converter now only handles POD from the root DBD object.
However there are commands that pull POD out of named sub-objects.
This also adds generating tables from menu choices.
2012-10-01 17:38:08 -05:00
Andrew Johnson
f519b63a6f tools/DBD: Don't include =cut lines in the captured POD. 2012-10-01 17:35:23 -05:00
Andrew Johnson
eb908c6ebf Make HTMLS_DIR default to . if not set.
Remove HTMLS_DIR setting for files generated from DBD/POD.
2012-10-01 17:29:11 -05:00
Andrew Johnson
2f25d7c9c9 doc: Delete old TOC entry. 2012-10-01 17:26:15 -05:00
Andrew Johnson
68bde36d75 Merged changes from 3.14 branch.
Merged up to commit 12364 (2012-09-11) inclusive.
2012-10-01 00:54:10 -05:00
Andrew Johnson
e94ffd48fa std: Device support for new printf record type 2012-09-28 18:00:42 -05:00
Andrew Johnson
d8812cbee3 std: Added new printf record type 2012-09-28 18:00:13 -05:00
Andrew Johnson
0f7cb737bb Merged J. Lewis Muir's caput help text fix branch. 2012-09-26 22:38:17 -05:00
Andrew Johnson
ea725ad1a2 ioc/db: Call rset::cvt_dbaddr() before processing field modifiers
The channel filters and field modifiers should apply to the
field *after* the record type has made any SPC_DBADDR changes.
2012-09-26 14:41:52 -05:00
J. Lewis Muir
37407c94e0 ca/client/tools: add -F option to caput usage output 2012-09-26 10:37:20 -05:00
Ralph Lange
12909bfb1d Merge libCom/osi changes needed for MultiCore Real-Time Utils 2012-09-20 22:00:17 +02:00
Ralph Lange
ca441a2a0e libCom/osi: (posix) make getOssPriorityValue() public as epicsThreadGetPosixPriority() 2012-09-20 21:55:32 +02:00
Andrew Johnson
ecba376d72 std/rec: Enhance sequence record just like fanout
Add link groups 0 and B through F, plus the OFFS and SHFT fields to
provide backwards compatibility.
2012-09-19 15:13:13 -05:00
Ralph Lange
047bdc9200 libCom/osi: (posix) keep scheduling policy by thread, to support SCHED_RR 2012-09-18 13:43:02 +02:00
Ralph Lange
2485c1fb1c libCom/osi: Rename osd thread sched policy flag (Fifo -> RealTime) 2012-09-17 13:22:09 +02:00
Andrew Johnson
a106129c9b Extended the fanout record to 16 links
Added SHFT and OFFS fields for backwards compatibility.
See Release Notes for detailed description.
2012-09-14 10:56:08 -05:00
Andrew Johnson
d2d40b901a Update the initial documentation to normal Pod syntax 2012-09-04 00:40:37 -05:00
Andrew Johnson
29a9ad3f90 Make the DBD parser recognize Pod syntax directly
Source DBD files can include Pod blocks, as long as the dbdExpand.pl
script doesn't try and include it in expanded DBD output files.
This makes it easier to write the Pod, and perldoc can parse most
of the result for checking (it complains about the =field directives
though, which dbdToHtml.pl handles itself).
2012-09-04 00:35:17 -05:00
Andrew Johnson
29c6d34be4 filters: Document the deadband filter 2012-09-02 00:04:47 -05:00
Andrew Johnson
dad89d5bba dbdToHtml.pl: Fix generated link URLs to other docs
Also added some code comments
2012-09-02 00:02:38 -05:00
Janet Anderson
c48e92b1a8 Include RULES_JAVA when using EPICS base 3.15 and later. 2012-08-31 13:52:54 -05:00
Andrew Johnson
d86db4e6b6 Start annotating fields and writing POD comments 2012-08-30 00:59:17 -05:00
Andrew Johnson
56c812f990 Add rules to run dbdToHtml.pl and install the result 2012-08-30 00:57:00 -05:00
Andrew Johnson
874cebb63d Change dbdToHtml.pl to parse POD from DBD comments 2012-08-30 00:55:22 -05:00
Andrew Johnson
43393096ac Add ability to save & retrieve comments to DBD objects 2012-08-30 00:53:07 -05:00
Andrew Johnson
29a8efa781 Document addition of MSI to Base. 2012-08-29 16:46:40 -05:00
Andrew Johnson
7da070bca3 Fix bldEnvData.pl library search path
It wasn't working when INSTALL_LOCATION is used.
2012-08-23 09:45:31 -05:00
Andrew Johnson
f29e995103 Permit but check duplicate DBD entries
Record types cannot be duplicated however.
DBD sub-objects now have a ->what method for their description.
This also adds a method to look up a breaktable by name.
2012-08-22 16:54:54 -05:00
Janet Anderson
786a01b59c RULES_JAVA removed from base and put in extensions 2012-08-21 09:38:37 -05:00
Andrew Johnson
0faff0f03e registerRecordDeviceDriver updates
Added -D and -o <outfile> options
Changed the build rules to use -o
Moved the script into src/tools
2012-08-10 11:40:50 -05:00
Andrew Johnson
93f7caebc4 tools/DBD: Fix DBD output of empty attributes
Use the regex's from Base.pm for value recognition
in both Parser.pm and Output.pm
2012-08-10 11:39:30 -05:00
Andrew Johnson
1faae9c3ed configure: Don't install test libraries
This was actually hapenning through a TESTPROD being dependent
on the TESTLIBRARY and not having a <lib>_DIR to tell it where
the library would be found. We now set <lib>_DIR = . for all
test libraries and they don't get installed any more.
2012-08-09 15:41:26 -05:00
Andrew Johnson
f0633d0d16 configure: Set BASE_3_14 = NO
This allows "ifdef BASE_3_14" to still mean 3.14 or later,
but also "ifeq ($(BASE_3_14),YES)" to mean 3.14 only.
2012-08-09 11:16:15 -05:00
Andrew Johnson
eb8bac8afb ioc: Added extern "C" block to dbLink.h file. 2012-08-08 13:38:21 -05:00
Andrew Johnson
a80ec2e0bf cap5: Fix symbol export when using -fvisibility=hidden
The boot_Cap5 symbol must be exported for the module to load.
2012-08-07 12:35:12 -05:00
Andrew Johnson
05377e5886 Merged changes from 3.14 branch
Includes everything up to revno 12355 on 2012-08-07
2012-08-07 12:31:55 -05:00
Andrew Johnson
685e6b0937 rsrv: Use osiSockIoctl_t 2012-08-04 14:18:32 -05:00
Andrew Johnson
b4c7f4542e configure: Deleted RULES_JAVA and associated variables
Also removed some extensions template configuration files for
architectures that we have already removed from Base.
2012-08-03 17:45:28 -05:00
Andrew Johnson
d9013bffe9 libCom: Expand comments on -fvisibility in shareLib.h 2012-08-03 17:37:15 -05:00
Andrew Johnson
282d67caef Set version back to -DEV 2012-08-01 10:01:01 -05:00
Andrew Johnson
ebc70e9365 Set release version number 2012-08-01 09:58:41 -05:00
Andrew Johnson
eb9d002f03 Edit README files, set version numbers. 2012-07-31 16:14:27 -05:00
Andrew Johnson
6bc0c6f6cd tools: mkmf.pl accepts -Mxxx options but ignores them
For compatibility with msi; users can put -Mvar=value into a
xxx_DBFLAGS variable to have msi define that macro when
generating the xxx.db file.  This lets mkmf accept the same
DBFLAGS variable that msi does in this case.
2012-07-31 16:09:54 -05:00
Andrew Johnson
3961dcbc51 Merged change from 3.14 branch
Includes everything up to revno 12353 on 2012-07-31
2012-07-31 14:21:01 -05:00
Andrew Johnson
8b616ba00a Merged changes from 3.14 branch
Includes everything up to revno 12352 on 2012-07-31
2012-07-31 14:04:38 -05:00
Andrew Johnson
eb30ee7f69 Release notes about win32-x86-mingw cross-builds
Also a bit more cleanup of build rules.
2012-07-31 13:51:20 -05:00
Andrew Johnson
80da40b32f Switch darwin to use mkmf for dependencies.
The clang preprocessor doesn't understand -MF and we already
have to use mkmf when building fat binaries anyway.
2012-07-27 18:39:15 -05:00
Andrew Johnson
72ddb72ade Fix up Unix issues from previous commit.
Also removed win32-x86-cygwin architecture support files,
use the cygwin-x86 or win32-x86-mingw targets instead.
2012-07-27 18:27:15 -05:00
Andrew Johnson
97490f6977 Reworking of DLL build rules.
Allows static libraries and DLLs to be built without having
to do a 'make clean' in between on Cygwin and MinGW targets.
The Cygwin build still crashes when SHARED_LIBRARIES = YES
though, loading Com.dll seems to cause the problem.
2012-07-27 16:24:39 -05:00
Andrew Johnson
c23b907eee Reduce the duration of epicsMessageQueueTest to 60 seconds. 2012-07-24 11:29:31 -05:00
Andrew Johnson
ffc2ecc215 ca: Only install test $(OBJ) files on vxWorks. 2012-07-24 11:19:20 -05:00
Andrew Johnson
9df75bb11c Drop the catools static library. 2012-07-24 11:17:08 -05:00
Andrew Johnson
4ee3628b2b Move epicsMath.h below epicsExportSharedSymbols 2012-07-24 11:07:09 -05:00
Andrew Johnson
2462ff7eb1 MinGW provides getopt(), don't build our own 2012-07-24 11:05:35 -05:00
Andrew Johnson
14ca2a8582 Add missing Testfile 2012-07-22 22:40:43 -05:00
Andrew Johnson
3b64840183 Delete remnants of Aix and Borland. 2012-07-20 18:11:15 -05:00
Andrew Johnson
c6aab2390c More fixes for Cygwin builds. 2012-07-20 17:50:59 -05:00
Andrew Johnson
78926942ff Fix build problem with the MS compiler 2012-07-19 18:12:01 -05:00
Andrew Johnson
20b3955cd7 More Windows build fixes. 2012-07-19 14:59:55 -05:00
Andrew Johnson
b09fbe5cec Fix various where epicsExport.h not last #include 2012-07-18 16:45:23 -05:00
Andrew Johnson
01272dc73f More changes needed for Cygwin. 2012-07-18 16:30:54 -05:00
Andrew Johnson
9118749f2f Removed dbStaticHost library. 2012-07-18 15:37:19 -05:00
Andrew Johnson
e02aaf5ef9 Various updates for building on Windows/Cygwin/MinGW 2012-07-18 15:35:32 -05:00
Andrew Johnson
4fb697d085 Clean up warnings on Darwin 2012-07-18 12:51:50 -05:00
Andrew Johnson
0a88fd3f54 Removed Forms support code fro dbStaticLib. 2012-07-18 00:07:42 -05:00
Andrew Johnson
7f04d825ce Add some missing epicsShareClass decorations.
Also set the gcc-4 visibility attribute in shareLib.h
2012-07-17 23:41:06 -05:00
Andrew Johnson
cb797ca0cd Merged the remove-epicsShareAPI branch.
Most APIs in libCom are still marked with this,
it's not clear if removing them will be a problem or not.
2012-07-17 14:36:34 -05:00
Andrew Johnson
64c9d7a32a Many tweaks to build on Windows.
There might be some more to come since I'm not committing
this from my Win32 system.
2012-07-17 14:33:31 -05:00
Andrew Johnson
b8d0d97827 Removed all epicsShareAPI attributes from src/ioc.
There were none at all in src/std.
2012-07-15 16:08:50 -05:00
Andrew Johnson
358f71d113 Use a free-list for dbChannel and chFilter objects.
Have to make sure the dbChannel subsystem is initialized
properly when testing though.
2012-07-13 17:48:31 -05:00
Andrew Johnson
f5a424eb33 Testing: Fixed filters test harness build on RTEMS
Added a new Files: line to the testspec file to document which
files need to be available for the tests to be run properly.
This is generated from the Makefile variable TESTFILES.
2012-07-13 13:18:39 -05:00
Janet Anderson
cc088e77b6 libCom: Linux osdThread.h needs sys/types.h for pid_t 2012-07-13 10:59:07 -05:00
Andrew Johnson
e6149b6606 Merged process-get branch.
Seems to work, but not tested in depth.
2012-07-11 18:07:23 -05:00
Andrew Johnson
36d8e674cb Merged changes up to yajl 1.0.12 2012-07-09 13:02:32 -05:00
Andrew Johnson
ead5832a1f Fix compiler errors on Solaris. 2012-07-09 12:39:00 -05:00
Andrew Johnson
48c805ab3d Trap and check warning message from macLib.plt test. 2012-07-09 12:37:27 -05:00
Andrew Johnson
325fc8001c Silence expected errlog output from chfPluginTest. 2012-07-09 11:44:32 -05:00
Andrew Johnson
62727dcba6 Clean up warnings from gcc 4.6.3 2012-07-07 15:54:31 -05:00
Andrew Johnson
2559e1a3b7 Clean up build warnings from clang. 2012-07-07 13:50:55 -05:00
Andrew Johnson
3b08888a9c Remerged Michael's db-test branch.
This branch fixes several tests.

I also added some changes that tell users which .db/.dbd file
was missing if the db and filter test programs abort, and
extend the search path so the tests can be run from the test
directory as well as from the O.<arch> directory.
2012-07-06 18:11:59 -05:00
Andrew Johnson
3bfc6dcf64 errlog in tests
Take eltc(0) out of testPlan() and explicitly add it to those tests
that should suppress expected errlog output.
2012-07-06 17:47:56 -05:00
Andrew Johnson
0597f9c1c8 libCom: Fixed issues with thread-hooks. 2012-07-06 16:33:10 -05:00
Andrew Johnson
f0d172591b Missing $(DEP) dependency in std/filters/test 2012-07-06 14:34:22 -05:00
Andrew Johnson
004826e67a Clean up some warnings. 2012-07-06 14:26:20 -05:00
Andrew Johnson
dda5e60250 libCom/test: Rename test harness as "libComTestHarness" 2012-07-06 14:23:03 -05:00
Andrew Johnson
a942295ead libCom/calc: Support 0x literals as epicsUInt32
Also use epicsInt32 for all integer calculations.
2012-07-06 14:17:51 -05:00
Andrew Johnson
024c9224c9 dbdToRecordtypeH.pl: Don't warn about unused menus. 2012-07-06 14:15:22 -05:00
Andrew Johnson
29553ff887 Removed empty src/std/test directory. 2012-07-06 14:12:04 -05:00
Michael Davidsaver
59020b3a94 remove FIXME 2012-07-06 13:35:28 -04:00
Michael Davidsaver
a9eff6c5e9 un-FIXME: Can't use freeList for variable length allocations 2012-07-06 13:35:28 -04:00
Michael Davidsaver
e23a5ae8ed defer printing for callbackTest
test*() uses printf() so don't print
any results until all results are collected.
On RTEMS/vxWorks buffering of printf() gives
long delays which skew the test results.
2012-07-06 13:35:26 -04:00
Michael Davidsaver
b403dcc27f release note for dbTestHarness 2012-07-05 15:25:18 -04:00
Michael Davidsaver
93485edcd9 sync filter checking
Detect condition which would result to a double free().
2012-07-05 15:25:18 -04:00
Michael Davidsaver
0f79bdadb4 scanlock for direct record access from channel filters 2012-07-05 15:25:16 -04:00
Andrew Johnson
f9bb1ef542 Fix vxWorks build issues from thread-hooks merge. 2012-07-05 13:39:00 -05:00
Ralph Lange
5f0717adea documentation: Fix typo in html tag in RELEASE_NOTES 2012-07-05 14:37:32 +02:00
Andrew Johnson
a857f7a5ed Merged Ralph's thread-hooks branch.
Minor modifications to fix the vxWorks epicsThreadInit() and
rename some functions.
2012-07-04 13:28:55 -05:00
Ralph Lange
39ed8f3d02 documentation: Updated RELEASE_NOTES 2012-07-03 16:39:57 +02:00
Ralph Lange
137283ec0b libCom/osi: Add default start hook for _main_ thread 2012-07-03 15:27:50 +02:00
Ralph Lange
7b47cad8e4 libCom/osi: Clean up epicsThreadHooks API
- remove exit hooks completely
- remove non-public functions fom header files
- add test for epicsThreadMap
- fix bugs in RTEMS and vxWorks implementation of epicsThreadMap
2012-07-03 14:38:12 +02:00
Ralph Lange
e834832cda libCom/osi: Don't decorate epicsThreadHook functions with epicsShareAPI 2012-07-03 13:20:01 +02:00
Ralph Lange
0e6a01d56a libCom/osi: Streamline epicsThreadShowInfo functions between implementations
- epicsThreadShowInfo: private function to print headers or task line,
  not in header file, using internal pointer type
2012-07-03 11:16:09 +02:00
Michael Davidsaver
f1c0458adc dbEvent: use filtered field log on post event queue 2012-07-02 18:00:55 -04:00
Michael Davidsaver
b5c6c78c85 Make dbChannel access functions into macros 2012-07-02 18:00:55 -04:00
Michael Davidsaver
2d64b06cf4 doc chPostEventFunc 2012-07-02 18:00:53 -04:00
Ralph Lange
7c27c7c56d documentation: Add epicsThreadHooks info to RELEASE NOTES 2012-07-02 18:31:08 +02:00
Ralph Lange
da91893ec2 libCom/test: Add test for epicsThreadHooks 2012-07-02 18:18:54 +02:00
Andrew Johnson
9fe5ce82d3 Merged the db-test branch.
Also made additional changes:
* Simplified xRecord.c so it can run on vxWorks.
* Standard way to load DBD and DB files in tests

All test harnesses now run on vxWorks (but some tests still fail).
2012-07-02 11:03:55 -05:00
Ralph Lange
37e490d1b2 libCom/osi: Make vxWorks implementation of epicsThreadMap() safe and dynamic 2012-07-02 14:21:39 +02:00
Ralph Lange
cfd8c0abde libCom/osi: Fix nesting for epicsThreadHooks, add WIN32 implementation, lock traversal
- call (generic) exit hook after calling the (specific) epicsExitCallAtThreadExits()
- for start hooks added as 1-2-3, run exit hooks in opposite order: 3-2-1
- add calls to hooks module to WIN32 osdThread.c
- add lock/unlock to hook list traversal
2012-07-02 11:31:01 +02:00
Andrew Johnson
da9982f875 libCom: Fix unsigned overflow limits in epicsParse*
The strtoul() routine accepts negative numbers.  This fix
ensures we handle them properly, and adds suitable tests.

Also fix the test for 1e300, in case the compiler gives a
slightly different literal constant than strtod() returns.
2012-06-30 15:34:29 -05:00
Michael Davidsaver
7d51031d60 RTEMS test harness show run directory 2012-06-29 17:02:25 -04:00
Michael Davidsaver
788d5a1ca1 minor 2012-06-29 17:02:25 -04:00
Michael Davidsaver
d6bda6fb3a arrTest cleanup on exit
Do test db cleanup after hooks registered by iocInit
2012-06-29 17:02:25 -04:00
Michael Davidsaver
b5c223f462 fix tsTest 2012-06-29 17:02:24 -04:00
Michael Davidsaver
f5bad40474 sync needs to free held events
The sync plugin may hold an update internally.
If this is done then it must be free'd when
the dbChannel is closed.
2012-06-29 17:02:24 -04:00
Michael Davidsaver
60b684a4dc update dbndTest 2012-06-29 17:02:24 -04:00
Michael Davidsaver
d2b0e92001 db_close_events cleanup
Move cleanup from event thread to caller.
This handles cases (unit tests) where the task
is never started.

The pexitsem flag serves as the indicatior that
the event task was started.
2012-06-29 17:02:23 -04:00
Michael Davidsaver
46fb21c880 dbnd must free dropped events 2012-06-29 17:02:22 -04:00
Michael Davidsaver
a103a2434a dbEvent don't queue dropped events 2012-06-29 17:02:22 -04:00
Michael Davidsaver
e6ae903f2c notes on db_field_log usage 2012-06-29 17:02:22 -04:00
Michael Davidsaver
aa17f317f8 define more of probe field log
plugins don't need to inspect more than
field_type, field_size, and no_elements.
In case they do define type=val to prevent
accidental use of uninitialized pointer.
2012-06-29 17:02:20 -04:00
Andrew Johnson
fb61234431 Change the epicsParse APIs to return a units pointer.
This lets us use epicsParseDouble() for scan rate parsing.

Ensure the scanOnce thread is a higher priority than the fastest
periodic scan thread, irrespective of how many threads there are.
2012-06-29 14:41:35 -05:00
Ralph Lange
d6648d4473 libCom/osi: Add some copyrights for ITER 2012-06-29 18:12:07 +02:00
Ralph Lange
8c323b2197 libCom/osi: Add epicsThreadMap (calls user function for each thread) 2012-06-29 17:54:38 +02:00
Andrew Johnson
bde52418b9 Various fixes for vxWorks
Provide a separate dbd file for each test.
Don't require a writable filesystem.
Simplfy xRecord.c again.
2012-06-29 10:09:56 -05:00
Ralph Lange
1f5376b30b libCom/osi: Add RTEMS and vxWorks implementation for epicsThreadHooks 2012-06-29 14:49:24 +02:00
Ralph Lange
7e9f048433 Add decorations to epicsThreadHooks.c 2012-06-29 11:22:48 +02:00
Ralph Lange
803777329c Cleanup of epicsThread hooks
- move declarations to epicsThread.h, use epicsThreadId type
- use static elllist initializer for static lists
2012-06-29 11:15:47 +02:00
Michael Davidsaver
2fd6004827 forgot to remove TODO 2012-06-28 13:57:24 -04:00
Michael Davidsaver
4986c184c7 cleanup for dbRegisterFilter() 2012-06-28 13:44:33 -04:00
Ralph Lange
222ea314b0 Add thread hooks to epicsThread that are called when a thread starts or exits
- add Linux implementation that
  + sets the system command name to the EPICS thread name
  + retrieves the Linux LWP ID and prints it instead of the posix thread ID
    in show commands
2012-06-28 18:12:26 +02:00
Michael Davidsaver
683093222a integer type should be epicsInt32
Can't use long for this on 64-bit systems
2012-06-28 10:55:49 -04:00
Michael Davidsaver
61b285a5e3 booleans are stored as char not int 2012-06-28 10:55:48 -04:00
Michael Davidsaver
4a393a428d fix examples in chfPlugin.h 2012-06-28 10:55:47 -04:00
Michael Davidsaver
8eedb09395 chfPluginTest: more verbose error messages 2012-06-28 10:55:47 -04:00
Michael Davidsaver
4a6216534c rtems test harness setup to create temp files
Apparently the default location for tmp files
doesn't exist in the default IMFS tree.
2012-06-28 10:55:46 -04:00
Michael Davidsaver
39ccbeeb11 Make db unit tests self contained 2012-06-28 10:55:46 -04:00
Michael Davidsaver
026307c06d db cleanup
cleanup to allow database re-load
2012-06-28 10:55:44 -04:00
Andrew Johnson
4eb31d7edc Fix dbScan bug, add scan period units and checking. 2012-06-27 16:43:15 -05:00
Andrew Johnson
05f07d9ec8 tools/DBD: Improve error reporting
Better 'duplicate choice' message
Output messages to STDERR
2012-06-27 11:58:23 -05:00
Andrew Johnson
6595ff9518 Clean up some compiler warnings from gcc 4.6 2012-06-26 00:19:10 -05:00
Andrew Johnson
0dc67498ed libCom: Mark epicsStrtod() as extern "C" 2012-06-25 10:39:47 -05:00
Andrew Johnson
44a70cca5a merged server-side-plugins branch 2012-06-22 18:16:26 -05:00
Andrew Johnson
ddc675adc1 merged record-updates branch 2012-06-22 17:58:12 -05:00
Andrew Johnson
42ebafd6ae merged msi-join branch 2012-06-22 17:53:33 -05:00
Andrew Johnson
fb6dfe6210 merged remove-hpux-artifacts branch 2012-06-22 17:32:10 -05:00
Andrew Johnson
269fb01c63 libCom: Add routines for parsing strings into epicsTypes
Adds new routines for converting numeric strings into the
standard epicsInt8, epicsUInt8, epicsInt16, epicsUInt16,
epicsInt32 and epicsUInt32 types, along with Long, ULong,
Double and Float.  These all provide error checking and
detection of extraneous characters.  The epicsScanDouble
and epicsScanFloat routines originally in epicsStdlib.h
are replaced by macros that call the epicsParse routine,
and this also provides epicsScanLong and epicsScanULong
to match.

A test file is added to ensure conversions work properly
and report appropriate errors.  This file also checks the
native strtod() routine if not used to check whether the
epicsStrtod() code is required on this platform.
2012-06-22 14:06:52 -05:00
Andrew Johnson
7cae5ebd7b Fixes for build issues found on Darwin. 2012-06-21 17:58:07 -05:00
Andrew Johnson
c79532e4ce configure: Remove HDEPENDS option.
Setting HDEPENDS=NO no longer works and would be hard to
fix, so this commit deletes the option completely.
2012-06-21 17:21:40 -05:00
Andrew Johnson
e1e8f56d27 Moved filter plugins, fixed portability issues.
The filter plugins are now in src/std/filters
and their tests in the test subdirectory.

Various portability issues found and fixed:
 * Variable declarations after statements in a block
 * Code assuming that epicsInt32 = long
 * // comments in C files

Removed a number of tests that weren't really tests;
preconditions for future tests that don't actually check
the code being tested should call testAbort() if the
condition fails, which tells the test harness that you
meant to die at that point.

Split up lots of very long source lines.

Probably made a few other changes that I forget about now.
2012-06-21 15:27:32 -05:00
Andrew Johnson
84a8bacc58 Re-merged the dontcant branch.
Michael backed out a few changes and added some others.
I added some modifications to default/osdMessageQueue.cpp to
remove arguments from a couple of internal (static) functions.
2012-06-19 14:28:26 -05:00
Andrew Johnson
bd53941ac4 Cleanup of mbbi, mbbo record code.
Mostly just layout changes, removing unnecessary casts, and
replacing 'unsigned short' with epicsEnum16 types.
The only significant code change is in the alarm filtering
code of the mbbi record, which wasn't handling UDF alarms
or unknown state alarms quite right.
2012-06-18 12:13:14 -05:00
Andrew Johnson
c708bb1bac epicsTypes: Added epicsInt64 and epicsUInt64
With size checks for them in epicsTypesTest.
Also added static checks of type sizes there, since we can.
2012-06-08 16:28:31 -05:00
Andrew Johnson
24e2452bd4 libCom/test: epicsAtomic tests
Added C++ template instances, so this code loads on
a vxWorks 5.5.2 system.
2012-06-07 13:38:11 -05:00
Andrew Johnson
958b40f74c libCom: Silence errlog when running tests
Removes extraneous noise.
2012-06-05 15:53:32 -05:00
Andrew Johnson
e458e8fe2d Don't try to build dbltExpand on Win32. 2012-06-01 14:33:55 -05:00
Andrew Johnson
37a9efa290 Added test for msi -o option. 2012-06-01 14:16:13 -05:00
Andrew Johnson
efec22eea5 Add automated tests for msi. 2012-06-01 14:03:53 -05:00
Andrew Johnson
d5f050a9a2 Support ';'-separated path lists on Windows
Also renamed the '-c' option to '-g' (global scope)
Updated documentation to match.
2012-05-31 16:39:05 -05:00
Andrew Johnson
2b9d66273c Merged changes from 3.14 branch.
Includes everything up to revno 12343 on 2012-05-21
2012-05-29 16:44:49 -05:00
Andrew Johnson
cdaf05c7ac db/test: Create a test harness for vxWorks & RTEMS 2012-05-29 16:20:17 -05:00
Michael Davidsaver
3e9bae45b9 default MQ report event wait errors 2012-05-24 14:31:29 -04:00
Michael Davidsaver
5d2e5b46e5 minor 2012-05-24 14:31:28 -04:00
Michael Davidsaver
3333217f56 simplify 2012-05-24 14:31:28 -04:00
Michael Davidsaver
6060f2eaaa Only ignore errors when there is an error reporting path
can't report from thread free mutex unlock or implicit thread creation
2012-05-24 14:31:27 -04:00
Michael Davidsaver
458cc17eab fix filter plugin tests as well 2012-05-24 14:11:10 -04:00
Michael Davidsaver
34800b071f fix arrTest
Don't use compiled in paths
include menuConvert as this is now required at runtime
2012-05-24 14:11:10 -04:00
Michael Davidsaver
20d60bef81 fix db plugin tests
Avoid installing xRecord.dbd.  This would otherwise be installed
by the DBDINC.

Also must split out recordtype definition from record instance
definition and run the registrar function between the two loads.
This is due to new sanity checks in the loading process
2012-05-24 14:11:09 -04:00
Michael Davidsaver
434f6346fa registerRecordDeviceDriver needs DBD search path 2012-05-24 14:11:09 -04:00
Michael Davidsaver
386a2f73a7 don't destroy locked mutex 2012-05-24 14:11:08 -04:00
Andrew Johnson
385d9f007a configure: Tell Perl all I/O streams are UTF-8 encoded. 2012-05-07 15:15:26 -05:00
Andrew Johnson
ee327a6440 configure: Use $(PERL) variable to call perl. 2012-05-07 10:36:04 -05:00
Andrew Johnson
5b228618e1 Merged epicsStdioRedirect.h into epicsStdio.h 2012-05-03 12:19:34 -05:00
Michael Davidsaver
8b2c08f2f6 fix build 2012-04-27 13:25:27 -04:00
Michael Davidsaver
c1c7698a98 disable filter tests until fixed... 2012-04-27 13:25:27 -04:00
Michael Davidsaver
60692fd9d2 clean all 2012-04-27 13:25:27 -04:00
Michael Davidsaver
773c277d20 ugly hack to make unit test run 2012-04-27 13:25:26 -04:00
Michael Davidsaver
cb175516d6 fix build after reorg 2012-04-27 13:25:25 -04:00
Michael Davidsaver
ceabe74653 fix test build 2012-04-27 13:25:25 -04:00
Ralph Lange
948a3feba7 Fix in dbLink.h: Include all used headers 2012-04-27 13:25:19 -04:00
Ralph Lange
57fc84fef3 dbState: Avoid segfaults when called with NULL pointer 2012-04-27 13:25:18 -04:00
Michael Davidsaver
03a30f3b8f Add DbState soft support for bi/bo records. 2012-04-27 13:25:18 -04:00
Michael Davidsaver
83586b49d0 Add test code for sync plugin. 2012-04-27 13:25:17 -04:00
Michael Davidsaver
95881525e5 Add sync plugin that uses the db state 2012-04-27 13:25:16 -04:00
Ralph Lange
c4b54c6d4d Fix compiler warnings and minor issues. 2012-04-27 13:25:16 -04:00
Michael Davidsaver
4893d0ef8b Add dbState library that provides a means of synchronizing plugins to events. 2012-04-27 13:25:15 -04:00
Ralph Lange
77eba53222 Change arr plugin behaviour from exclusive to inclusive range end specifier 2012-04-27 13:25:14 -04:00
Michael Davidsaver
0d9d992717 Add [s:i:e] sub-array shorthand parsing and unit test 2012-04-27 13:25:14 -04:00
Ralph Lange
ef2814ec44 Fix bug in arr plugin (for incr <= 0), add tests for invalid and out-of-bound parameters 2012-04-27 13:25:13 -04:00
Michael Davidsaver
45a531b167 Add arr plugin for array subsets (+ testcode) 2012-04-27 13:25:07 -04:00
Ralph Lange
ef4b2e5892 Fix in dbExtractArray.c for DBF_STRING copies with wrap around 2012-04-27 13:25:03 -04:00
Ralph Lange
0e2a66e721 Fixes and additions in dbExtractArray.c
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

* Add forced write of '\0' to destination to end strings correctly
* Add dbExtractArrayFromBuf() to make array copies from ref type field logs easier
2012-04-27 13:24:54 -04:00
Michael Davidsaver
0b32220e86 Added tests for ts and dbnd plugins, fix in dbnd.c: make local functions static 2012-04-27 13:22:04 -04:00
Ralph Lange
d2d91a545f Bunch of minor changes
* Fix decorations in chfPlugin.c/.h
* Fix missing include in dbAccessDefs.h
* Beautification in dbChannel.c
2012-04-27 13:22:02 -04:00
Michael Davidsaver
62ba76c71a Add dbExtractArray to support extracting same type arrays with offset and increment 2012-04-27 13:22:02 -04:00
Michael Davidsaver
0cfe224f47 Add deadband plugin (client defined monitor deadband) 2012-04-27 13:22:01 -04:00
Ralph Lange
b843a8990a Fix: don't put dropped event (NULL) on the event queue 2012-04-27 13:22:01 -04:00
Ralph Lange
444a200b61 Change how ...Show is generated, minor refactoring and fix in ts plugin 2012-04-27 13:22:00 -04:00
Ralph Lange
d2abc71527 Add function to dbChannel.c to create a db_field_log copy of array/string data 2012-04-27 13:22:00 -04:00
Michael Davidsaver
e67ef8a005 Add ts filter plugin to set timestamp to "now" 2012-04-27 13:21:59 -04:00
Ralph Lange
6e58dcfab6 Change interface to ...Show functions, minor refactoring
* ...Show functions take an indent argument (number of spaces to print
  in front of each line) instead of a char* intro to avoid allocation at each level,
  replacing '\t' with 8 spaces in top level code where necessary
* Refactor element_size -> field_size (as used in dbAddr), also in dbChannel
  functions
* Fix: wrong macro name in unused part of db_field_log.h
2012-04-27 13:21:59 -04:00
Ralph Lange
317065dadb Minor fixes in chfPluginTest.c 2012-04-27 13:21:58 -04:00
Ralph Lange
6923dc5fd2 Add ability for plugins to drop db_field_log updates (+tests) 2012-04-27 13:21:58 -04:00
Ralph Lange
47e2e228ab Extend and add lots of tests in chfPluginTest.c
* Add tests for callback registration (pre and post)
* Add tests for callback execution (pre and post)
* Add tests for report function and array destructor
* Add test for combinations of two plugins (that register pre eventq, post eventq or in
  both chains), checking the order of calls and db_field_log changes independently
* Make test messages more verbose and comprehensive
2012-04-27 13:21:57 -04:00
Ralph Lange
f8e9a7643a Added pvt pointer argument to parse_error in the plugin interface 2012-04-27 13:21:57 -04:00
Ralph Lange
926246a495 =?UTF-8?q?Update=20copyright=20notices,=20refactor=20in=20dbEvent.c:=20make=20LOCK/UNLOCK=20macros=20require=20=C2=A8;=C2=A8?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
2012-04-27 13:21:57 -04:00
Ralph Lange
0a6ca6011a Run post-event-queue filters for events 2012-04-27 13:21:56 -04:00
Michael Davidsaver
f806551fe3 Add context qualifier to db_field_log, support plugins for CA read operations 2012-04-27 13:21:56 -04:00
Ralph Lange
ec7dfb1890 Change mechanism to detect data type/size changes by plugins
* Remove "probe" type from db_field_log
* Supply probe when registering plugin chains
* Minor refactoring (rename) in dbfl_type and chFilter
2012-04-27 13:21:55 -04:00
Ralph Lange
c41fcef260 Restructured pre- and post-event queue chains, type/size change detection
* Add new db_field_log type "probe" for type change detection
* Move linked lists for pre- and post-event-queue chains into dbChannel,
  function pointers and arguments into chFilter
* Remove set-type-chain completely
* Simplify register functions in filter and plugin interfaces
* Add functions to run the pre and post chains to dbChannel
* Refactor in db_field_log: field_size -> element_size
* Refactor in dbEvent:
  db_post_single_event_first -> db_create_event_log
  db_post_single_event_final -> db_queue_event_log (removed from public interface)
* Change tests to compile
2012-04-27 13:21:55 -04:00
Ralph Lange
b99975cf71 Allow filter plugin to change the type of data and the array size
* Add field_size to db_field_log
* Add final type, dbr_type, no_elements, and field size to dbChannel
  (plus matching access methods)
* Add set-type callback chain to find out final sizes and types
* Add registration calls for pre-event-queue and post-event-queue insertion
2012-04-27 13:21:54 -04:00
Ralph Lange
b09a9758b0 Changed db_field_log types to add support for plugin-created array copies
* db_field_log now is one of rec = use record, val = val inside, ref = reference inside
* add field_type and no_elements (to allow plugins change type and array size)
* add destructor in the ref type (called when deleting the db_field_log)
* change dbEvent.c and dbAccess.c to use the new field log features
2012-04-27 13:21:54 -04:00
Ralph Lange
5ea973151f Make reference (array/string) updates use a reference type db_field_log.
* Redefine db_field_log to be a union between a "value" type (as before)
  and a "reference" type (pointers to values, dtor for plugin array copies).
* Add db_delete_field_log function that correctly destructs a db_field_log.
2012-04-27 13:21:54 -04:00
Ralph Lange
4dd42383ef Add filter/plugin insertion into the high-priority filter list (pre event queue).
* Move evSubscrip from dbEvent.[ch] (private) to dbChannel.h (public).
* Split up db_post_single_event_private into two parts:
  ..._first creates a new db_field_log chunk and copies from db.
  ..._final puts a db_field_log into the event queue.
* Add a typedef for the pre-event-queue recursive callbacks.
* Add a register function for the callback (plus void* arg) to filter and
  plugin interfaces.
* Add the code that builds up the pre-event-queue callback chain.
* Changes to the test files to compile (no tests added yet).
* Fix missing include in db_field_log.h.
2012-04-27 13:21:53 -04:00
Ralph Lange
dd03d19cf2 dbEvent.c: use a free list for the field logs and keep a pointer in the event queue 2012-04-27 13:21:53 -04:00
Ralph Lange
d92665c5a3 Refactoring: enforce consistent use of names in dbEvent.c - NO EFFECTIVE CODE CHANGES 2012-04-27 13:21:52 -04:00
Ralph Lange
9f5f5246aa Added required mask per plugin to shorten check loop. Trivial test change. [src/db/chfPlugin.c src/db/test/chfPluginTest.c] 2012-04-27 13:21:52 -04:00
Ralph Lange
52c6eaa848 Refactor: get rid of ...Ctx (as Ctx is often used for user handles) [src/db/chfPlugin.c] 2012-04-27 13:21:52 -04:00
Michael Davidsaver
de134ea72d Added chfPlugin, a simple interface for channel filter plugins.
- chfPlugin.h contains the simple jump table and doxygen documentation
  - chfPlugin.c is a wrapper library around the yajl callbacks that parses
    any client-supplied configuration into the user's structure
  - test/chfPluginTest.c tests the library and the data conversion
2012-04-27 13:21:51 -04:00
Ralph Lange
d22b719e32 Changed the structure for channel filters and channel filter plugins.
- Made chFilterPlugin public (moved from dbChannel.c to dbChannel.h)
  - Made the interface jump table chFilterIf part of the chFilterPlugin
    (i.e. once per plugin) instead of chFilter (once per instance)
  - Added a pointer from chFilter (instance) to chFilterPlugin (plugin)
  - Added a private user pointer in chFilterPlugin
  - Changed dbFindFilter() to return a chFilterPlugin* (instead of the jump table)
  - Changed dbRegisterFilter() to accept a user private pointer as 3rd arg
2012-04-27 13:21:50 -04:00
Ralph Lange
f65ec61dc3 Fix: Call dbChannelDelete() when client connection is lost. [rsrv/caservertask.c] 2012-04-27 13:21:49 -04:00
Andrew Johnson
a2fadc15a7 Must clear link type before calling dbLockSetSplit() 2012-04-27 13:21:48 -04:00
Andrew Johnson
4ef35a5f5c Move recGblInitConstantLink() functionality into dbLink.c
Using dbFastPutConvert for string to number conversion.
2012-04-27 13:21:48 -04:00
Michael Davidsaver
74b24bbe0f Refactor link handling code (incomplete).
* Moved routines into dbLink.h and dbLink.c
  * Created separate routines for DB_LINK processing
  * Added dbinitLink() and dbAddLink()
  * Started a Link Support Entry Table, not used yet
  * Everything should still work as before...
2012-04-27 13:21:47 -04:00
Andrew Johnson
06d3397342 Fix compiler warnings. 2012-04-27 13:21:47 -04:00
Andrew Johnson
58d1e22e0f Improve output from Show routines. 2012-04-27 13:21:46 -04:00
Andrew Johnson
19a166a60d Various updates.
* Added dbChannelGet()
 * Implement dbChannelGetField() using dbChannelGet()
 * Close filters in reverse order of opening
 * Messages and comments improved.
2012-04-27 13:21:46 -04:00
Andrew Johnson
1047f42b15 Simplify implementation.
* dbGet() now handles DBF_*LINK fields,
 * Simplify dbGetField(),
 * Split out getAttrValue(),
 * Rename dbGetFieldLink() to getLinkValue(),
 * Reduce number of casts.
2012-04-27 13:21:45 -04:00
Andrew Johnson
9a02181084 Add ellPop() function, removes and returns the last node on a list. 2012-04-27 13:21:45 -04:00
Andrew Johnson
06bcdb0ade Tindying up.
Fixed issues with dbChannelDelete() and dbChannelShow().
2012-04-27 13:21:45 -04:00
Michael Davidsaver
e94fd29b9b fix camessage 2012-04-27 13:21:44 -04:00
Michael Davidsaver
bcfaa63d8c complete rename 2012-04-27 13:21:44 -04:00
Michael Davidsaver
4c2eba502a Rename dbChannelData() to dbChannelField()
dbChannel_get() now uses dbChannelGetField()
 dbChannel_put() now uses dbChannelPutField()
 Conflicts:

	src/db/db_access.c
2012-04-27 13:21:43 -04:00
Andrew Johnson
07b3b7e32d Make casr print the full channel name, not just the record name. 2012-04-27 13:21:43 -04:00
Andrew Johnson
1d274aba0d Make dbChannel_create() call dbChannelOpen() 2012-04-27 13:21:43 -04:00
Andrew Johnson
b4dbcf2b1a Don't parse field modifiers in dbChannelTest()
dbChannelDelete() returns void
 update tests.
2012-04-27 13:21:42 -04:00
Michael Davidsaver
e37c5c99bb adapt db_get_field_and_count to dbChannel_get_count 2012-04-27 13:21:42 -04:00
Michael Davidsaver
8bf53d3c59 Replaced dbAddr with dbChannel in all CA-server related code
* Routines with a db_access interface are named dbChannel_xxx
 * Using dbch for member variable names in Jeff's code

It seems to work!

TODO: Make dbChannel use a freelist
2012-04-27 13:21:41 -04:00
Andrew Johnson
56468b684e Extended functionality of dbChannel code:
* Deleted the chan->magic member and associated checks.
 * Moved rset->cvt_dbaddr() call into dbChannelCreate()
 * Added many accessor routines
 * Renamed dbChannelReport() to dbChannelShow() and added dbChannelFilterShow()
2012-04-27 13:21:41 -04:00
Andrew Johnson
f4d55f1249 Changed dbChannel management API to Test/Create/Delete 2012-04-27 13:21:40 -04:00
Andrew Johnson
4324ffd274 Various improvements:
* A filter's parse routines now return a parse_result (enum)
 * Return value from test filter parse routines is configurable
 * Either call parse_end() or parse_abort(), but never both.
2012-04-27 13:21:40 -04:00
Michael Davidsaver
eee5a28983 Integrated dbChannel more and extended its functionality:
* Register filters in pdbbase, using a list and gphash
 * Do record and field search first
 * Test loads a DBD/DB file to provide a record to find
2012-04-27 13:21:39 -04:00
Andrew Johnson
8baf3b1362 Ignore eclipse project configuration files. 2012-04-27 13:21:39 -04:00
Andrew Johnson
0ab891fca4 Added gphFindParse(), which takes a string length parameter.
This is useful for hash lookups while parsing a const string, to avoid
 having to copy and nil-terminate it.
2012-04-27 13:21:33 -04:00
Michael Davidsaver
68dfeb76c0 Adding dbChannel JSON parser and test files.
Passes 33 tests.
2012-04-27 13:21:32 -04:00
Andrew Johnson
cf623e290a Upgraded to yajl version 1.0.9. 2012-04-27 13:21:31 -04:00
Andrew Johnson
359fc1b69e Move YAJL_API to front of declarations. 2012-04-27 13:21:31 -04:00
Andrew Johnson
625a7adc69 Add Lloyd Hilaiel's Yet Another JSON Library v 1.05 to libCom.
This is BSD licensed, modified only enough to build under EPICS.
2012-04-27 13:21:29 -04:00
Andrew Johnson
492360a3d4 Documentation updates
Clear out old stuff.
Introduce global macro syntax.
2012-04-20 17:38:59 -05:00
Andrew Johnson
653af6e366 Unify behaviour with msi.
dbLoadTemplate must accept global definitions inside pattern and
variable substitutions, since the new version of msi does that.
2012-04-20 17:35:26 -05:00
Andrew Johnson
d61d7ebf96 Fix bug with global definitions
Pattern mode changes the behaviour of substituteGetReplacements()
which breaks the parsing of global definitions.  Add a separate
routine substituteGetGlobalReplacements() which is used for parsing
global definitions and ignores the isPattern flag.
2012-04-20 17:31:43 -05:00
Andrew Johnson
7a968bc5f5 Refactoring for maintainability
Use epicsStrDup()
Release macLib handle when finished
2012-04-20 14:01:51 -05:00
Andrew Johnson
e1a92fcf3f Refactoring for maintainability
Replaced all void * pointers with pointers to private structures.
Removed several unnecessary casts.
2012-04-20 13:15:07 -05:00
Andrew Johnson
729f04ecce Merged Michael's dontcant branch.
This removes various calls to cantProceed() and its relatives
and replaces them with an error return status when a resource
allocation fails.  It only does it for routines that already
have an error status return, so it makes no API changes, and
will prevent threads from being suspended unnecessarily.
2012-04-19 13:57:05 -05:00
Andrew Johnson
cec6aee81b HPUX: Delete void * operator new(size_t) methods
These were apparently needed by the HPUX compiler even though it
never actually executed them.  They are never used.
2012-04-12 11:28:23 -05:00
Andrew Johnson
bb4d470145 Delete diagnostic code inside #if 0 ... #endif 2012-04-12 11:26:03 -05:00
Andrew Johnson
1137f1b0b0 HPUX: Delete HP-specific return statements. 2012-04-12 11:24:13 -05:00
Andrew Johnson
2a20d48ca4 HPUX: Remove all // X aCC comments
These were added to suppress warnings from the HPUX compiler.
2012-04-12 11:13:50 -05:00
Andrew Johnson
0ea56b82b8 Delete filterWarnings.pl script
Was only used on HPUX which we don't support any more.
2012-04-12 10:34:56 -05:00
Andrew Johnson
545166281c Merged Dirk Zimoch's named-soft-events branch
Added the iocsh command postEvent
Marked a couple of char * args as const
2012-04-10 17:10:50 -05:00
Andrew Johnson
afd9e69a25 Merged parallel-fixes branch
This separates out the rules for %.d files from the rules that
create the related target file (%.o etc).  Doing this can reduce
the amount of work to be done when rebuilding applications after
making source changes.  For files in O.Common which can be built
by any target architecture this can solve problems when parallel
builds (-j) are used.
2012-04-06 16:13:22 -05:00
Andrew Johnson
ad4d9ca9d9 Minor build cleanups
Removed %.C and %.H from vpath (rules were deleted some time ago)
Added %.pl to vpath for use in ioc/registry/Makefile
configure/tools doesn't exist any more, remove from configure/Makefile
2012-04-06 15:37:52 -05:00
Andrew Johnson
09c313764e Merged changes from 3.14 branch
Includes all changes up to revno 12334 on 2012-04-04
2012-04-06 12:22:20 -05:00
Andrew Johnson
3a1252da17 Updates to build for iOS targets 2012-04-06 10:11:34 -05:00
Andrew Johnson
e39c5aad8b libCom: Cleaned up bldEnvData.pl and makeEpicsVersion.pl
Added a -q flag, and cleaned up and simplified the code.
Added -h (help) options, and make more use of other modules.
2012-04-05 17:28:19 -05:00
Andrew Johnson
5d5aa57d72 tools: Add -q (quiet) flag to installEpics.pl
The -q flag now gets used when the GNUmake '-s' flag is provided.
This change also includes a cleanup of the installEpics.pl script.
2012-04-04 12:30:27 -05:00
Andrew Johnson
de6d7b2cf0 Merged compiled-dbd branch.
This does all DBD-file processing at build-time in Perl scripts.
The result should behave almost identically to the old programs.
2012-04-04 12:07:46 -05:00
Janet Anderson
2ae1105ecc Added -I(SRC_DIRS) to DBDFLAGS. 2012-04-02 15:36:02 -05:00
Andrew Johnson
9ec0cff0e5 configure: Clean up some other DBDEPENDS stuff 2012-04-02 15:34:23 -05:00
Janet Anderson
281f0e004b Reordered include lines for windows dll build. 2012-04-02 15:33:32 -05:00
Andrew Johnson
6b8515b860 configure: Reformat/reword comments in CONFIG_SITE
Also moved the GNU_TUNE_CFLAGS setting into the file
os/CONFIG_SITE.Common.linux-x86 since it is arch-specific.
2012-03-30 14:37:57 -05:00
Andrew Johnson
4e6e9518a3 Use the new DBD processing scripts to generate dependency files. 2012-03-28 17:54:50 -05:00
Andrew Johnson
f1994996ad Convert registerRecordDeviceDriver.pl to use DBD module.
The output is now a bit more compact as it uses Text::Wrap on
the declarations and array data.
2012-03-27 10:47:59 -05:00
Andrew Johnson
116f0fd00c Run the tools/test files under the test harness 2012-03-14 15:27:40 -05:00
Andrew Johnson
d3d8418855 Move src/dbHost scripts and modules into src/tools. 2012-03-13 18:00:46 -05:00
Andrew Johnson
36b8d61a41 Remove dependency on conversion dbTo* programs.
Doesn't work anyway since they're now Perl scripts, but
isn't necessary because dbHost gets built first.
2012-03-13 17:50:36 -05:00
Andrew Johnson
63f5c27ebe Fix tests, use EPICS::Readfile 2012-03-13 16:02:24 -05:00
Andrew Johnson
4c98463b01 rec/ai: Delete ancient, unused, commented-out function prototype. 2012-03-12 11:24:47 -05:00
Andrew Johnson
988874bf5b Merged alarm-filter branch. 2012-03-09 12:25:59 -06:00
Andrew Johnson
d9e066ac29 Documentation on alarm filtering (AFTC field) 2012-03-09 12:22:45 -06:00
Andrew Johnson
1d0dcf0171 libCom: Deleted the 3.13 tsDefs API. 2012-03-01 11:31:32 -06:00
Andrew Johnson
bf965cc59c Merged changes from 3.14 branch.
Includes all changes up to rev 12323 on 2012-02-20.
2012-02-20 10:01:04 -06:00
Andrew Johnson
037e5f6a9d Post events on waveform.NORD field changes
Set "Rec Proc Monitor" column in the Record Reference Manual to Yes.
2012-02-17 17:32:25 -06:00
Andrew Johnson
0abfcc9445 Replace fixed limits with global variables
Replaced Dirk's fixed precision=2 and limit=10 seconds with
global variables which can be set for each IOC.  Also changed
the upper control limit for delay fields from 10 to 100,000.
2012-01-21 16:35:40 -06:00
Andrew Johnson
ed18b6903e Special processing events
When generating a DBE_PROPERTY event because of a modified
enum string, also post DBE_VALUE and DBE_LOG events if the
record is currently in that particular state.
2012-01-21 15:31:39 -06:00
Andrew Johnson
3a4ad7bfd8 Merged Dirk Zimoch's non-val-attributes branch 2012-01-21 15:20:11 -06:00
Andrew Johnson
946ab722a1 Merged changes from 3.14 branch
Includes all changes up to the 3.14.12.2 release on 2011-12-12.
2011-12-12 16:16:33 -06:00
Andrew Johnson
f207b00b05 tools: Use Carp
Use carp and croak instead of warn and die in library routines.
2011-12-05 14:56:50 -06:00
Andrew Johnson
c4c23c9775 libCom: One more essential dependency 2011-11-22 18:01:55 -06:00
Andrew Johnson
2905b5bb72 Parallel build rule fixes 2011-11-14 18:28:26 -06:00
Andrew Johnson
7529ca7a9b menuGlobal: Now needs dbExpand executable 2011-11-14 18:25:13 -06:00
Andrew Johnson
ab4376c54a Merge 3.14 changes up to 3.14.12.2-pre1 release 2011-11-14 17:42:50 -06:00
Andrew Johnson
1b345481ba ioc/db: Generate menuGlobal.dbd
The source just duplicates what's in the Makefile anyway.
2011-11-14 17:38:36 -06:00
Andrew Johnson
4d0c0f4b51 Merged changes from 3.14 branch up to 2011-11-02 2011-11-02 14:59:18 -05:00
Andrew Johnson
5c8c08bf66 documentation: Regenerate README.1st, add instructions to .html
I use the elinks program to convert the .html into the text format.
2011-10-28 18:27:50 -05:00
Michael Davidsaver
5c8e6e9224 libCom: printf spec for cantProceed 2011-10-28 15:30:08 -05:00
Andrew Johnson
0b92d61a14 libCom/test: Added epicsTypesTest, checks type sizes. 2011-10-28 15:19:54 -05:00
Andrew Johnson
b3ec73edcf Moved devTestAsyn to lp:epics-base-tests
These device supports are for testing asynchronous processing
and are currently only used in the regression test suite.
2011-10-04 04:42:00 -05:00
Andrew Johnson
d59a0ac06f Merged 3.14 changes from 2011-08-23 to 2011-09-15 2011-09-20 13:07:52 -05:00
Janet Anderson
032e990c1e Made all clean rules single colon rules. Added CLEANS macro to list
created files to be removed by "make clean" in O.<arch> directory.
Replaced clean rule in Makefiles with a CLEANS definition.
2011-09-15 14:12:14 -05:00
Janet Anderson
69609896e4 Made all clean rules single colon rules. Added CLEANS macro to list
created files to be removed by "make clean" in O.<arch> directory.
Replaced clean rule in Makefiles with a CLEANS definition.
2011-09-15 14:05:05 -05:00
Janet Anderson
72ed0bc27b Fixed DBDINC_NAME definition 2011-09-15 11:22:10 -05:00
Janet Anderson
47f52c6b93 Fixed TARGET_SRCS definition 2011-09-15 11:19:32 -05:00
unknown
4fa6f0556c fixed 64 bit compiler warnings 2011-09-12 15:44:52 -06:00
Andrew Johnson
36962da06c configure: Fix for compiler-specific includes
Need to search the include/compiler/<cmplr> dirs for all external
modules listed in the RELEASE file as well.
2011-09-11 00:58:49 -05:00
Andrew Johnson
dfb8c8ed2b Merged the rebased-atomics branch.
There are still quite a lot of warnings that need cleaning
up when compiling epicsAtomicTest.cpp on a 64-bit system.
2011-09-09 18:09:48 -05:00
Andrew Johnson
7b82df189e Prepare configure/os to support vxWorks 6.9
I don't think it will work yet though because they removed the
taskVarLib which we use, and there may be other issues too.
2011-09-09 09:41:35 -05:00
Andrew Johnson
303bc702b2 documentation/README: We now require vxWorks 5.5 or later 2011-09-07 12:16:50 -05:00
Andrew Johnson
26757f5317 libCom/osi: Clean up compiler warnings on vxWorks 2011-09-07 10:59:11 -05:00
Andrew Johnson
8e028f0f3d libCom/test: errlog test needs -lsocket on Solaris 2011-09-07 10:05:42 -05:00
Jeff Hill
57953e6e24 fixed sunos compiler issue (I dont have sunos 5.10 here) 2011-09-06 18:51:04 -06:00
Andrew Johnson
841978e8c8 Remove epicsAtomicLocked.{h,cpp} from Makefile too. 2011-09-06 10:33:56 -05:00
Jeff Hill
fd10e77518 o hopefully fixed missing functions with sunos 5.10 or higher
o removed unused trash files which somehow reappeared after rebase
2011-09-02 18:18:46 -06:00
Andrew Johnson
189dfc6188 configure: Hide rm command in new YACC rules. 2011-09-02 16:24:09 -05:00
Jeff Hill
1ff2408ba4 o hoping that atomic_inc_ptr_nv and atomic_dec_ptr_nv interface definitions will be available if we use sys/atomic.h instead of atomic.h
o fixed issue introduced by last revision where definition of lock functions and lock key were not present if its sunos 5.10 or greater
(its time consuming to develop code if you can only run the (SUNPRO) compiler indirectly)
2011-09-02 09:59:03 -06:00
Jeff Hill
c76b800f2a must ... not .. use the improved c++ casts in c code 2011-09-01 11:43:14 -06:00
Jeff Hill
f5c374c556 o improved comments
o dont include epicsAtomicOSD.h from any of the implementations of epicsAtomicCD.h unless the compiler has support for an inline keyword
o removed superfluous ifdef on EPICS_ATOMIC_INLINE all versions of epicsAtomicDefault.h and epicsAtomicOSD.h
o In the implementations of epicsAtomicOSD.cpp if EPICS_ATOMIC_INLINE isnt defined define it to be empty and then include epicsAtomicOSD.h
o fixing some compile time issues for solaris version of epicsAtomicOSD.h (so that Janet can run another compile on that os)
2011-09-01 11:25:53 -06:00
Andrew Johnson
098f7ce850 Update FLEX rules.
Use the '-t' option to flex to generate a unique output filename.
Needed for parallel builds when multiple lexers are built in
the same object directory.
2011-09-01 11:46:54 -05:00
Andrew Johnson
dbaa045afc Merged compiler-specific include files branch. 2011-09-01 11:42:37 -05:00
Andrew Johnson
2def6a3d80 Move default macros to compilerDependencies.h
Added check in gcc-specific header to error if __clang__ defined
Some versions of clang don't support __has_attribute()
2011-08-31 17:35:18 -05:00
Andrew Johnson
1862b33328 configure: Adjust instructions for switching to clang 2011-08-31 17:32:32 -05:00
Michael Davidsaver
2714ff703b Fix source reorg issues from Windows
* fix libCom exports for things which used to be built differently
* logserver needs winsock
* errlog prefix: fix warnings on win32
* fix dll imports in ioc/db
2011-08-30 18:09:11 -05:00
Andrew Johnson
c5212ea23c libCom: epicsVersion.h changes
Make version numbers easier to compare.
2011-08-30 17:50:53 -05:00
Jeff Hill
3bae2a470f fixed names on redefinition protection macros for vxWorks 2011-08-30 14:46:24 -06:00
Jeff Hill
5f096a8b80 fixed epics atomic read memory barrier name - old versions of vxWorks 2011-08-30 14:04:36 -06:00
Jeff Hill
798f1f2ace fixed word missing from vxWorks specific read and write memory barrier functions 2011-08-30 13:34:17 -06:00
Jeff Hill
43fa23bba6 fixed vxWorks name for epicsAtomicTest 2011-08-30 10:49:52 -06:00
Jeff Hill
ad669d6ece fixed wrong return type old vxWorks epicsAtomicUnlock 2011-08-30 10:29:56 -06:00
Jeff Hill
f3ca4f1601 fixed test count 2011-08-30 09:27:40 -06:00
Jeff Hill
734ea0789a fixed vxWorks jumbled ifdef 2011-08-30 09:01:08 -06:00
unknown
f0afcef02e o changed to more generic implementation to reduce the code size
o changed name, OSD_ATOMIC_INLINE to EPICS_ATOMIC_INLINE
o changed supported data types, unsigned removed and int added (per reveiw at codeathon)
o added add/subtract functions (per reveiw at codeathon)
o now presuming that __sync_synchronize available all gcc 4  mingw does not provide windows mem barrier)
o consolodated on one implemention for Microsoft invarient of cmplr intrinisic or win32 by using macros to config a shared header file
o improved doc in epicsAtomic.h
o added overloaded c++ interface in namespace epics :: atomic to epicsAtomic.h
o added epicsAtomicReadMemoryBarrier and epicsAtomicWriteMemoryBarrier interface to epicsAtomic.h
o changed the implementation so that each of the functions can be individually specified for a particular compiler, os, or in the generic implementation (this is accomplished with macros)
o modified the functional and performance test so that they are based on templates so we can easily support new data types
o modified performance tests to repeat function calls and measure performance using a template
2011-08-29 19:02:41 -06:00
Till Straumann
c11aec5d76 - added copyright and author info. 2011-08-26 17:02:02 -07:00
Michael Davidsaver
294e47db9c gpHashList avoid cantProceed
handle allocation failures in gphAdd()
2011-08-26 16:34:00 -07:00
Michael Davidsaver
9a1b6b995e macEnv avoid cantProceed 2011-08-26 16:33:59 -07:00
Michael Davidsaver
503f46ec8c posix osdMutex recursive type is not optional
epicsMutexId is expected to be recursive so
fail if this is not possible.
2011-08-26 16:33:58 -07:00
Michael Davidsaver
e41bd3994e default osdMessageQueue avoid cantProceed 2011-08-26 16:33:58 -07:00
Michael Davidsaver
34fc8f8251 rtems osdMessageQueue.c 2011-08-26 16:33:57 -07:00
Michael Davidsaver
294e66039e epicsRingBytes avoid cantProceed 2011-08-26 16:33:57 -07:00
Michael Davidsaver
333ac3a88e osdThread avoid cantProceed 2011-08-26 16:33:56 -07:00
Michael Davidsaver
860a22a90b posix osdMutex don't use cantProceed 2011-08-26 16:33:55 -07:00
Andrew Johnson
86c373370f configure: Show how to switch to clang on Linux. 2011-08-26 16:49:36 -05:00
Till Straumann
b71aa81a47 - compute and print stack trace (on select architectures) from cantProceed and epicsAssert 2011-08-26 14:40:15 -07:00
Andrew Johnson
239e1487e1 std: Build in std/test, into libdbRecStd 2011-08-26 13:41:25 -05:00
Andrew Johnson
e15e42cff3 Merged Murali Shankar's iocLogPrefix changes.
Adjusted a few things during the merge.
2011-08-25 18:17:09 -05:00
Murali Shankar
95eb4790f1 Added iocLogPrefix to the release notes 2011-08-24 11:25:37 -07:00
Murali Shankar
c12f6808f1 Added a couple of units tests for iocLogPrefix 2011-08-24 11:25:06 -07:00
Murali Shankar
0a4daefee3 Added the iocLogPrefix to the header so that we can use it in the unit test 2011-08-24 11:24:26 -07:00
Andrew Johnson
712bb052ef Merged the epicsEvent-api branch.
Modified epicsEventTest.cpp to use the new names.
2011-08-23 18:19:55 -05:00
Andrew Johnson
ee64e249ad Merged modified version of Michael Davidsaver's reorg-src branch. 2011-08-23 17:43:12 -05:00
Andrew Johnson
8ff3dcdf2d libCom: cleanup after rebase
remove empty src/libCom/tools dir
include as/RULES, lost during rebase
2011-08-23 17:28:20 -05:00
Murali Shankar
5a0364b74a iocLogPrefix does not let you change the prefix if the prefix has already been set. Display the prefix as
part of iocLogShow.
2011-08-23 11:51:19 -07:00
Murali Shankar
0cb7c9aafe Added support for iocLogPrefix
Refactored logClientSend in libCom/logClient/logClient.c; took the code between the mutex operations and
moved it to a private method - sendLogMessageinChunks. Call this method once for the prefix (if it exists) and once
for the actual message.
Added ioCsh registration code into src/libCom/iocsh/libComRegister.c registering a command called
"iocLogPrefix" that sets this prefix.

Unit tested with and without prefixes.
Performance tested with and without prefixes - without prefix is approx the same. With prefix is about
twice the time (reflecting the two calls to sendLogMessageinChunks I think)
2011-08-23 11:04:09 -07:00
Janet Anderson
e76dc17dfb Move linux-x86 GNU compiler tune c flag setting to CONFIG_SITE file. 2011-08-22 09:31:26 -05:00
Janet Anderson
4a18db9f99 Initial version 2011-08-19 16:20:53 -05:00
Janet Anderson
71c232afc3 Initial version 2011-08-19 16:20:36 -05:00
Janet Anderson
5f1378971d Initial version 2011-08-19 16:20:19 -05:00
Janet Anderson
7b53bd5265 Initial version 2011-08-19 16:19:51 -05:00
Janet Anderson
f48c625cb1 Added -mtune=generic cflag. Changed -m32 to OP_SYS flags. 2011-08-19 15:57:06 -05:00
Janet Anderson
3c83a35d9d Added comment about specifying specific machine type and/or cpu type 2011-08-19 15:56:48 -05:00
Janet Anderson
061b654f03 Changed += to = to become ARCH_DEP_CFLAGS override. 2011-08-19 15:54:10 -05:00
Jeff Hill
a05348d63e merged andrews merge to R3.15 2011-08-19 14:43:35 -06:00
Jeff Hill
05ae89d306 fixed issues in posix and vxWorks specific epicsAtomic found during testing 2011-08-19 14:41:00 -06:00
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
e8154577db fixed issues in posix and vxWorks specific epicsAtomic found during testing 2011-08-19 14:17:59 -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
Jeff Hill
8a8ba04405 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
2802744f7c db/test: Adjust and simplify libraries. 2011-08-18 12:37:59 -05:00
Andrew Johnson
d25ee10b71 Merge 3.14 changes from 2011-06-06 to 2011-08-17 2011-08-17 16:36:38 -05:00
Jeff Hill
be1c21fc51 o changed the build system so that we can implement functionality which is compiler specific in a separate file for each compiler. This will avoid accumulating MxN ifdef's where M is the number of OS and N is the number of comilers (worst case). This will make it easier to find code that is compiler specific centralizing all of it under libCom/osi/compiler. That should make it mush easier to port EPICS to run on a new compiler.
o refactored compilerDependencies.h into code that is compiler specific (one libCom/osi/compiler/xxx/compilerDependent.h for each comiler) and code that isnt  libCom/osi/compilerDependencies.h (this is a new location and is no longer in libCom/misc).
2011-08-17 13:57:46 -06:00
Jeff Hill
9b8ee41860 removed lisc file changes 2011-08-17 09:05:05 -06:00
Jeff Hill
1696c5ea72 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
4bea8cbb0a 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
b5f1a94fc9 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
e929857ac8 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
bd1b1479f4 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
c872c44668 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
1f7f09e818 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
275df0471d 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
Jeff Hill
6f7ac559be fixed solaris 64 compiler error (I dont have that version of solaris here) 2011-08-09 12:26:40 -06:00
Jeff Hill
04c30aee0e redo change reversed by merge 2011-08-08 18:38:39 -06:00
Jeff Hill
9e60e923e7 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
d522200295 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
c3e1f2030a 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
092e161485 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
Jeff Hill
76b8265dfd 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
Jeff Hill
921df1dd5c fixed epicsAtomicTestAndSetUIntT for solaris 2011-08-05 17:32:06 -06:00
Jeff Hill
33c40b23a1 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
094072a93e 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
ed6ad62cf7 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
fc4a4d9024 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
Jeff Hill
b051875f22 changed test iterations to accomodate old systems 2011-08-05 11:14:37 -06: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
e1e3ec6c22 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
cedcddd0e8 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
747a59fd7f 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
Jeff Hill
fa55316272 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
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
88720ff7bd Merge changes committed to R3.14 branch since April. 2011-06-03 15:28:34 -05:00
Andrew Johnson
b8dba87dc0 configure: Fix parallel make rules. 2011-06-03 14:47:24 -05:00
Andrew Johnson
c10e450544 More merges from the 3-14 branch. 2011-04-05 17:38:57 -05:00
Andrew Johnson
e14b1e3d0b Merged various changes from the 3.14 branch. 2011-03-01 15:28:45 -06:00
Michael Davidsaver
d28d009240 Updated release notes. 2011-02-26 18:40:58 -06:00
Michael Davidsaver
f242a27dea Merge std/*
Combine recIoc and softDevIoc libraries into dbRecStd

Move base.dbd from ioc/misc/ to std/softIoc/

Generate stdRecords.dbd from the std/rec/Makefile list of record
types instead of hard-coding it in base.dbd
2011-02-26 18:24:51 -06:00
Michael Davidsaver
e463793bc3 Merge ioc/*.
Merge miscIoc rsrvIoc dbtoolsIoc asIoc dbIoc registryIoc dbStaticIoc
into dbCore.

Move ioc/misc/asSubRecordFunctions.c to std/dev/asSubRecordFunctions.c
since it depends on the subRecord type.

Extracted ioc variable definitions from base.dbd into dbCore.dbd
2011-02-25 23:56:51 -06:00
Andrew Johnson
e540ae0774 libCom: Ommitted to include the flex/RULES file. 2011-02-25 23:54:30 -06:00
Michael Davidsaver
f7fc564556 Fold antelope/flex and asHost into libCom
Build lexer and parser from libCom/Makefile.
Since libCom now includes asLib.c and asLib_lex.c we must build
antelope and flex without linking them to Com.  This works because
they only need epicsTempFile anyway.  However make doesn't like a
subdirectory with the same name as a target object, so the antelope
source directory is now called yacc.  The two main.c files were also
renamed to avoid other build problems.

Merge asHost into Com and remove mentions in CONFIG_BASE

Lots of noise since SRCS must be renamed to Com_SRCS
2011-02-25 15:39:44 -06:00
Andrew Johnson
588ea50bfb Split libCom/Makefile into individual subdirectories.
The new Makefile fragments in the subdirectories are incomplete and will
not work individually.  Build rules are placed in a separate RULES file.
This approach keeps the instructions for building each file local and
easier to find than in a large Makefile in the parent directory.
2011-02-25 00:49:03 -06:00
Janet Anderson
b95d846803 Added test for vxWorks build. 2011-02-18 16:37:16 -06:00
Janet Anderson
244355d63d Updated shared library dependancies needed for -j parallel build option. 2011-02-18 16:16:56 -06:00
Janet Anderson
1fb88ba1e2 Added code for TESTLIBRARY 2011-02-16 11:03:44 -06:00
Janet Anderson
53dc5101be Added code for TESTLIBRARY 2011-02-16 10:57:20 -06:00
Andrew Johnson
072b449bb1 libCom: Fixed epicsEvent issues on Win32 and cygwin.
* Removed all epicsShareAPI decorations
* Return value from Win32 epicsEventTrigger() inverted
* Return OK from posix epicsEventTrigger() omitted.
2011-02-08 14:17:47 -06:00
Andrew Johnson
77192b3228 libCom: Reworked the epicsEvent APIs
* Renamed the enum epicsEventWaitStatus to epicsEventStatus
* Defined epicsEventWaitStatus as a macro for epicsEventStatus
* Renamed epicsEventWaitOk to epicsEventOk
* Renamed epicsEventWaitError to epicsEventError
* Defined epicsEventWaitOK and epicsEventWaitError as macros
* Added epicsEventTrigger(id) which triggers an event and returns OK or an
    error status if the underlying OS primitives report an error
* Added epicsEventMustTrigger(id) which halts on error
* Defined epicsEventSignal(id) as a macro for epicsEventMustTrigger(id)
* Added a new C++ method epicsEvent::trigger() which throws an
    epicsEvent::invalidSemaphore in the event of an error
* epicsEvent::signal() makes an inline call to epicsEvent::trigger()
* epicsEventWait() and epicsEventWaitWithTimeout() now return an error
    status if the underlying OS primitives report an error
* All the epicsEventMust...() routines are now implemented in the common
    libCom/osi/epicsEvent.cpp source file, and call cantProceed() instead of
    mis-using assert()
* Implemented epicsEventShow() on Posix
2011-02-08 12:02:08 -06:00
Janet Anderson
a2a00c7c91 Make cross builds depend on host build only if -j option and make > 3.81 2011-01-19 15:27:17 -06:00
Andrew Johnson
04800ac6c5 Merged large array element count fix from 3.14 branch. 2011-01-13 16:29:22 -06:00
Andrew Johnson
cddd8d9563 Merged errlog fix from 3.14 branch. 2011-01-07 10:38:58 -06:00
Michael Davidsaver
260684cb32 Update YACC rules
Use '-b' argument of antelope to control generated file name
for safe parallel builds.

Move conditional into command so that it is possible to build
parsers which generate a header in the same directory as parsers
which do not.  Allow YACCOPT per target, but default to global.
2010-12-20 10:48:12 -05:00
Michael Davidsaver
39a2858f84 Fix YACC parallel build
antelope now support an argument to modify the output
file name.  Use this it is possible to safely build several
parsers in the same directory.
2010-12-17 17:32:51 -05:00
Michael Davidsaver
b18cacc216 Reorganize src/Makefile
Group entries by "Module"
2010-12-17 14:26:24 -05:00
Michael Davidsaver
4910c76925 move alarm.h to libCom/misc 2010-12-17 14:05:59 -05:00
Michael Davidsaver
128b730c71 libasIoc no longer includes asHost 2010-12-17 13:33:35 -05:00
Michael Davidsaver
2cf6f43c5f Split up src/util
Move log server into libCom with the log client.
Move caRepeater init script and ca_test into ca/client/
2010-12-17 12:21:29 -05:00
Michael Davidsaver
b52927e66c Move asHost to libCom/as 2010-12-17 11:50:52 -05:00
Andrew Johnson
6c7065f81a Merged tools fix from 3.14 branch. 2010-12-16 17:07:30 -06:00
Michael Davidsaver
31533ba62e Fixup Makefiles
Adjust TOP and paths
2010-12-16 17:05:05 -05:00
Michael Davidsaver
2a36a3906d Stage 1 reorganization
Directory moves.

  src/RTEMS/ => src/libCom/RTEMS/
  src/as/ => src/ioc/as/
  src/bpt/ => src/ioc/bpt/
  src/ca/ => src/ca/client/
  src/cap5/ => src/ca/client/perl/
  src/cas/ => src/ca/legacy/pcas/
  src/catools/ => src/ca/client/tools/
  src/db/ => src/ioc/db/
  src/dbStatic/ => src/ioc/dbStatic/
  src/dbtools/ => src/ioc/dbtemplate/
  src/dev/softDev/ => src/std/dev/
  src/dev/testDev/ => src/std/test/
  src/excas/ => src/ca/legacy/pcas/ex/
  src/gdd/ => src/ca/legacy/gdd/
  src/makeBaseApp/ => src/template/base/
  src/makeBaseExt/ => src/template/ext/
  src/misc/ => src/ioc/misc/
  src/rec/ => src/std/rec/
  src/registry/ => src/ioc/registry/
  src/rsrv/ => src/ioc/rsrv/
  src/softIoc/ => src/std/softIoc/
  src/toolsComm/ => src/libCom/tools/
2010-12-16 15:15:52 -05:00
Andrew Johnson
41c12475ec Merged registry fix from 3.14 branch. 2010-12-14 15:14:24 -06:00
Andrew Johnson
9a831f9dc5 libCom: Simplify libCom/Makefile by splitting into parts
Each SRC_DIR gets its own Makefile fragment, and where it needs
private build rules a RULES files.

If this pattern gets used elsewhere we could automate the include
lines (search $(SRC_DIRS) for Makefiles and RULES files?).
2010-12-10 15:23:42 -06:00
Andrew Johnson
877242d038 configure: Deleted CONFIG_COMPAT (3.13 compatibility) 2010-12-10 15:15:37 -06:00
Andrew Johnson
51578959d4 dev: Replaced callocMustSucceed() with calloc()
Make the *iSoftCallback devices allocate a single buffer for private
storage instead of several, and cope with calloc failures without
suspending the IOC thread.
2010-12-01 15:14:09 -06:00
Andrew Johnson
26f6eabdf5 dev: Rename notifyInfo structure to devPvt. 2010-11-30 17:32:09 -06:00
Andrew Johnson
558a039a75 Removing old 3.14 and 3.13 notes. 2010-11-27 21:06:40 -06:00
Andrew Johnson
055d312519 Merged deprecations work. 2010-11-24 16:28:57 -06:00
Andrew Johnson
7c9f197e05 configure: Set minor version number to 15 2010-11-24 16:22:45 -06:00
Andrew Johnson
05cd81a5d5 RTEMS: Removed RTEMS/base directory.
All files were moved up one level.
2010-11-17 16:55:22 -06:00
Dirk Zimoch
c73efe7f39 typo in comment 2010-10-27 22:49:16 +02:00
Dirk Zimoch
0390af5a20 merged and conflict in RELEASE_NOTES.html solved 2010-10-27 22:37:50 +02:00
Dirk Zimoch
7e7d04576b bugfix: devEventSoft read_event with constant input and tse = epicsTimeEventDeviceTime did not read timestamp 2010-10-27 22:19:33 +02:00
Dirk Zimoch
0d8725857b new approach to handle named events efficiently 2010-10-27 21:56:12 +02:00
Dirk Zimoch
0e818f6127 use EPICS_DEPRECATED macro 2010-10-15 02:02:48 +02:00
Andrew Johnson
cf7f84cb2f Remove 3.13 compatibility build vars 2010-10-12 11:27:17 -05:00
Andrew Johnson
fc43152e42 Remove 313 compatibility and some old build rules 2010-10-12 11:26:00 -05:00
Andrew Johnson
70067d141c Remove src/vxWorks directory, not maintainted/used 2010-10-12 11:23:34 -05:00
Andrew Johnson
3237f0869f Delete 3.13 and 3.14 conversion docs 2010-10-12 11:22:00 -05:00
Andrew Johnson
9c05865bcb Remove config directory 2010-10-12 11:18:27 -05:00
Andrew Johnson
6923f82119 dbtools: Modified and added test files. 2010-09-08 17:02:23 -05:00
Andrew Johnson
a7d7336392 dbtools: Added dbltExpand.c
This is a test program which implements the template expansion
capabilities of msi, but using the dbLoadTemplate.c code.  It should
be useful for testing, to make sure that both versions generate the
same output.  It won't work on Windows at the moment due to a clash in
the function decorations of the dbLoadRecords() function.
2010-09-08 16:59:10 -05:00
Andrew Johnson
46e723575e dbtools: This is Ben's version of msi.c that implements global {} and
restores the variable scope for every instantiation of the teplate. 
He's now having second thoughts on the design though, so this might
be not useful.
2010-09-08 16:56:13 -05:00
Andrew Johnson
177a9f89c8 dbtools: Merged Ralph's msi-join branch, adds msi to Base. 2010-08-25 16:56:22 -05:00
Andrew Johnson
ac32658bf4 dbtools: Added another possibility for pattern_substitutions rule. 2010-08-25 13:21:24 -05:00
Andrew Johnson
e2464c8572 Implemented "global" variables in substitution files.
Rewrote the YACC grammar, with help from Benjamin Franksen in formally
defining the substitution file format in EBNF.  This version also
changes the way in which variables are added to the sub_collect
string; previously it appended a ',' after every entry, and removed it
off the end before calling dbLoadRecords(), but now we put the ',' at
the beginning of each entry, and just offer dbLoadRecords() the string
starting at the second character (not that this really matters, macLib
will quite happily ignore either a leading or a trailing comma in the
variable definition string).

We now warn if there are substitution values for which we have no
name, or if the file uses the deprecated syntax which permitted a
bareword token in front of the variable substitution or pattern
definition braces.
2010-08-24 19:01:19 -05:00
Ralph Lange
6b6de69f1d build: Point default MSI to the base version. 2010-08-23 15:08:24 -04:00
Ralph Lange
52f4c8ae8f dbtools: shuffle files towards a reasonable layout, keep test files in test dir 2010-08-23 14:48:43 -04:00
Ralph Lange
2a19c5f0b8 dbtools: Join msi repository into ../src/dbtools 2010-08-23 14:36:23 -04:00
Andrew Johnson
4a637c04cf dbtools: Added command-line variable parameters. 2010-08-20 17:59:38 -05:00
Andrew Johnson
3db5427e1d dbtools: Source code clean-up, code layout changes only. 2010-08-20 17:50:52 -05:00
Andrew Johnson
90ab284583 db: Replace forward reference to notifyCallback, got lost in rebase. 2010-08-20 00:40:26 -05:00
Dirk Zimoch
02b94c6236 Merged with 3.14 2010-05-28 03:14:16 -07:00
Dirk Zimoch
591b3da84e Merged with 3.14 2010-05-28 03:13:42 -07:00
Dirk Zimoch
df9ec50b59 release notes updated 2010-05-28 03:12:19 -07:00
Dirk Zimoch
037db16b00 release notes updated 2010-05-28 03:04:09 -07:00
Kukhee Kim
824d378117 add the alarm filter for ai, calc, longin, mbbi type records 2010-05-28 02:16:45 -07:00
Dirk Zimoch
e53753b76b read attributes of input fields from links 2010-05-26 12:47:19 -07:00
Dirk Zimoch
27e80be2e5 read attributes of input fields from links 2010-05-26 10:42:16 -07:00
Dirk Zimoch
dc9e4ccc04 display limits for delays set to 0...10 2010-05-26 10:39:22 -07:00
Dirk Zimoch
8e701b7d4f fixed get_units, get_precision, get_graphic_double, and get_control_double to return meaningful values on non-VAL fields 2010-05-26 04:18:57 -07:00
Dirk Zimoch
0a77204795 stringlength and mutex issues fixed 2010-05-25 03:41:18 -07:00
Dirk Zimoch
21e96c5882 string val field 2010-05-25 03:40:49 -07:00
Dirk Zimoch
3f6fd95ef8 OEVT size was missing 2010-05-24 08:42:36 -07:00
Dirk Zimoch
e6b5aad890 Changed soft events from numbers to strings. 2010-05-24 08:09:39 -07:00
Andrew Johnson
adbf7a7388 Update to current code:
* Added (c) header, expanded tabs
 * Set library path and use new library names
 * Added -D (dependency) output handling
 * Added -o (output file) support
 * Use <td> instead of <th> for normal cell data
This is by no means complete, but it does seem to work.
2010-05-10 15:59:39 -05:00
Andrew Johnson
5f027c35b0 Added John Hammonds' dbdToHtml perl script, unmodified.
He also wrote:
    Here is at least a short list of things to think about:
    How do we add this into the other documentation?
    How do we add the long description?
    Modify Readfile to do includes or not?
    Modify for multiple records in a file?
    Modify for no records in the file i.e. dbCommon?
    Automatically add link to menu information if DBF_MENU?
    Should we go through and set promptgroup on all fields to make this more 
    correct?
2010-05-10 15:39:52 -05:00
Andrew Johnson
68f4da301f Clean up editor backup files too. 2010-04-15 11:40:01 -05:00
Andrew Johnson
03b66fd2cc Prettify DBF_NOACCESS fields so definitions line up in record.h file. 2010-04-15 11:37:18 -05:00
Andrew Johnson
64cfd30f62 Move Cdefs to the top of the record body.
Refine when field attribute values get double-quoted.
2010-04-15 11:32:56 -05:00
Andrew Johnson
510027aa2c Reject field names that are reserved words.
The list of reserved words is combined from C++ and the DB/DBD file parser.
This also requires a small change in the rules for generating the C name
from the DBD field name, since the aSub record has a field NOT; now if we
find the lower-case version is reserved, we use the original instead.
Since the aSubRecord.c file doesn't use prec->not this is back-compatible.
2010-04-14 15:16:36 -05:00
Andrew Johnson
5e85476352 Remove programs that were replaced in Perl. 2010-04-13 17:39:27 -05:00
Andrew Johnson
afc57e42f9 Note questionable handling of -I option on Win32. 2010-04-13 17:36:06 -05:00
Andrew Johnson
ce43b9faf8 Reorganized files, configure to use new versions.
* Moved Readfile and macLib into tools/EPICS
* dbHost/Getopts was a duplicate
* Added (c) headers
* Build in the dbHost dir
* Switch build system to use Perl versions.
2010-04-13 17:05:59 -05:00
Andrew Johnson
f00684c8c3 2009-12-22: Suggestion... 2010-04-08 17:30:15 -05:00
Andrew Johnson
f6527a9942 2009-02-15: Fix problem parsing function() statements. 2010-04-08 17:29:17 -05:00
Andrew Johnson
f804eb00e7 2009-02-15: Getting close.
Rename dbExpand => dbdExpand,
Added proper parsing and generation of DBD file.
2010-04-08 17:27:41 -05:00
Andrew Johnson
68e0fba01b 2009-02-08: Work with & match R3.14.10 output; rename tools. 2010-04-08 17:23:32 -05:00
Andrew Johnson
f464b4d899 2007-04-19: Reorganized cdefs, C++ guard and some formatting. 2010-04-08 17:09:59 -05:00
Andrew Johnson
cf421b7be9 2007-04-17: Added functionality for CDEFS. Still needs changes to dbToRecordtypeH. 2010-04-08 17:09:25 -05:00
Andrew Johnson
487596a2a8 2004-09-10: Updated menu definition stuff. 2010-04-08 16:21:58 -05:00
Andrew Johnson
daa0630361 2004-07-30: Work continues.
Make dbToRecordtypeH generate the same output as my 2002 C++ code.
Other changes in testing and macros.
2010-04-08 16:18:03 -05:00
Andrew Johnson
a1b72626ec 2004-07-12: More implementation, can't remember the details now. 2010-04-08 15:55:49 -05:00
Andrew Johnson
38bd72e67a 2004-07-09: Progress!
Added a class for each Recfield DBF_TYPE, use this to
simplify conversion to C code.
dbToRecordtypeH incomplete, but it outputs the record struct.
190 tests, 100% ok.
2010-04-08 15:54:02 -05:00
Andrew Johnson
42367731ef 2004-07-08: Lots of development work, parser works. 2010-04-08 15:52:36 -05:00
Andrew Johnson
86c12943bc 2004-07-06: Implementation of libCom's macLib for perl code. 2010-04-08 15:50:43 -05:00
Andrew Johnson
680e05c2c2 2004-06-23: Fixed various things, added Recordtype and global DBD object tests. 2010-04-08 15:48:50 -05:00
Andrew Johnson
b20cf681ae 2004-06-04: Added individual object tests. 2010-04-08 15:47:58 -05:00
Andrew Johnson
a996fc6c06 2004-06-04: Sync laptop => CVS 2010-04-08 15:47:07 -05:00
Andrew Johnson
38e1b910a5 2004-04-29: work in progress 2010-04-08 15:44:53 -05:00
Andrew Johnson
75bdfc185e Honor MS/MSS/MSI flags and fetches timestamps properly too. 2010-01-08 17:15:03 -06:00
Andrew Johnson
f7d02cc2a8 Convert INST_IO links to regular PV_LINK types, for VDCT support.
Added new PN_LINK type in link.h, make dbStaticLib display it.
Made all device support extended so links can be changed at runtime.
Modified startup so add_record() always called before regular link processing.
Incomplete, stilll need to add MS/MSS/MSI support, currently disabled.
2010-01-07 23:48:49 -06:00
Andrew Johnson
0af48f5a29 Alarm filter changes by Bernd Schoeneburg
Algorithm by Eric Norum.
Developed at the 2009 EPICS Codeathon.
2010-01-06 16:05:49 -06:00
Andrew Johnson
c6da34286e Use prec for record pointers, to match other supports 2009-12-30 00:14:06 -06:00
Andrew Johnson
02b9034457 Added async soft channel support for mbbiDirect records 2009-12-30 00:06:19 -06:00
Andrew Johnson
57cc033b52 Correct error messages. 2009-12-28 22:05:21 -06:00
Andrew Johnson
0563044097 Marty Kraimer's changes to support process-get operations. 2009-12-28 20:37:09 -06:00
Andrew Johnson
8c6f940e1f Improve warning message, suggest using -V flag. 2009-10-28 19:47:00 +00:00
Andrew Johnson
0164402bad Need epicsVersion.h to support macEnvExpand() properly. 2009-10-28 19:30:02 +00:00
Janet B. Anderson
359a4571f5 Modified test of warning message. 2009-09-22 16:34:47 +00:00
cvs2svn
d0c061cf1f This commit was manufactured by cvs2svn to create tag 'MSI-R1-5'. 2008-11-10 20:47:07 +00:00
Andrew Johnson
02d21255f5 Modified for release 1.5 2008-11-10 20:47:06 +00:00
Andrew Johnson
97ccca5474 Cleanup, warnings. 2008-11-10 20:46:27 +00:00
Andrew Johnson
a117a73987 Make undefined macros a warning, not an error; only report once. 2008-05-22 18:55:08 +00:00
W. Eric Norum
0e45345891 Headers no longer provide TRUE/FALSE defines. 2008-04-29 23:04:29 +00:00
cvs2svn
1d9bcafe44 This commit was manufactured by cvs2svn to create tag 'MSI-R1-4'. 2007-06-25 19:59:13 +00:00
Janet B. Anderson
83d06f2569 Initial version. 2007-06-25 19:59:12 +00:00
Janet B. Anderson
9b3af852af Converted to R3.14 Makefiles. 2007-05-18 16:16:49 +00:00
Janet B. Anderson
460ba036f3 Build msi only for host target. 2004-10-08 15:20:49 +00:00
Andrew Johnson
42b80245b3 Significantly revised, added stuff about default values. 2004-06-17 18:22:06 +00:00
Andrew Johnson
b14965dee5 Build with R3.14 rules if available (not tested...) 2004-06-17 16:19:47 +00:00
W. Eric Norum
d5d828aa7b Let this compile and run (with reduced capability) on R3.13. 2004-06-14 18:02:00 +00:00
W. Eric Norum
8e417d3032 Add exit status description. 2004-06-04 13:59:40 +00:00
W. Eric Norum
6a9163988d 1) Always print expanded line regardless of the state of the -V flag
and the presence or absence of undefined macros.
2) Exit with status 2 if warnings are enabled (-V) and one or more macros
   is undefined.
2004-06-03 21:34:55 +00:00
W. Eric Norum
d813690363 Limit scope of macro definitions to a single template file. 2004-06-03 21:09:20 +00:00
Marty Kraimer
7ad050fba6 remove warnings from GNU compiler 2004-05-11 14:44:21 +00:00
cvs2svn
3b47c2f4ec This commit was manufactured by cvs2svn to create tag 'MSI-R1-3'. 2003-08-14 13:52:36 +00:00
W. Eric Norum
e79662e0e1 Add -o command-line option to specify output file.
Perform environment variable macro expansion of substitution file names.
2003-08-14 13:52:35 +00:00
cvs2svn
0b6dfa961d This commit was manufactured by cvs2svn to create tag 'MSI-R1-2'. 2002-08-02 15:39:52 +00:00
Janet B. Anderson
db2724bbc9 Added license information. 2002-08-02 15:39:51 +00:00
Marty Kraimer
34431b0a81 allow substitutions buffer to grow 2000-04-05 14:22:21 +00:00
Marty Kraimer
086703a07a make MAX_BUFFER_SIZE larger; allow empty substitutions 2000-01-06 22:03:28 +00:00
Marty Kraimer
3e6e54d801 provide support for dbTemplate expansion 1999-05-03 13:21:09 +00:00
cvs2svn
999ef9fd50 This commit was manufactured by cvs2svn to create tag 'MSI-R1-1'. 1999-04-13 17:49:16 +00:00
Marty Kraimer
cbfac53f5a add msi.html 1999-04-13 17:49:15 +00:00
Marty Kraimer
9780eeb9fe in substutition file count comments lines 1999-04-13 14:12:01 +00:00
Marty Kraimer
84f08a153a fix imcompatibilities with subtool 1998-12-14 14:46:26 +00:00
Marty Kraimer
9519e92035 First version 1997-12-18 16:39:03 +00:00
cvs2svn
d55e5536d6 Standard project directories initialized by cvs2svn. 1997-12-18 16:39:03 +00:00
1921 changed files with 62339 additions and 211336 deletions

View File

@@ -1,9 +0,0 @@
./bin
./lib
./db
./dbd
./html
./include
./templates
**/O.*
./QtC-*

21
.ci/travis-build.sh Executable file
View File

@@ -0,0 +1,21 @@
#!/bin/sh
set -e -x
# set RTEMS to eg. "4.9" or "4.10"
# requires qemu, bison, flex, texinfo, install-info
if [ -n "$RTEMS" ]
then
# find local qemu-system-i386
export PATH="$HOME/.cache/qemu/usr/bin:$PATH"
echo -n "Using QEMU: "
type qemu-system-i386 || echo "Missing qemu"
EXTRA=RTEMS_QEMU_FIXUPS=YES
fi
make -j2 $EXTRA
if [ "$TEST" != "NO" ]
then
make -j2 tapfiles
make -s test-results
fi

133
.ci/travis-prepare.sh Executable file
View File

@@ -0,0 +1,133 @@
#!/bin/sh
set -e -x
CURDIR="$PWD"
QDIR="$HOME/.cache/qemu"
if [ -n "$RTEMS" -a "$TEST" = "YES" ]
then
git clone --quiet --branch vme --depth 10 https://github.com/mdavidsaver/qemu.git "$HOME/.build/qemu"
cd "$HOME/.build/qemu"
HEAD=`git log -n1 --pretty=format:%H`
echo "HEAD revision $HEAD"
[ -e "$HOME/.cache/qemu/built" ] && BUILT=`cat "$HOME/.cache/qemu/built"`
echo "Cached revision $BUILT"
if [ "$HEAD" != "$BUILT" ]
then
echo "Building QEMU"
git submodule --quiet update --init
install -d "$HOME/.build/qemu/build"
cd "$HOME/.build/qemu/build"
"$HOME/.build/qemu/configure" --prefix="$HOME/.cache/qemu/usr" --target-list=i386-softmmu --disable-werror
make -j2
make install
echo "$HEAD" > "$HOME/.cache/qemu/built"
fi
fi
cd "$CURDIR"
cat << EOF > configure/RELEASE.local
EPICS_BASE=$HOME/.source/epics-base
EOF
install -d "$HOME/.source"
cd "$HOME/.source"
add_base_module() {
MODULE=$1
BRANCH=$2
( cd epics-base/modules && \
git clone --quiet --depth 5 --branch "$MODULE"/"$BRANCH" https://github.com/${REPOBASE:-epics-base}/epics-base.git "$MODULE" && \
cd "$MODULE" && git log -n1 )
}
git clone --quiet --depth 5 --branch core/"${BRCORE:-master}" https://github.com/${REPOBASE:-epics-base}/epics-base.git epics-base
( cd epics-base && git log -n1 )
add_base_module libcom "${BRLIBCOM:-master}"
add_base_module ca "${BRCA:-master}"
EPICS_HOST_ARCH=`sh epics-base/startup/EpicsHostArch`
# requires wine and g++-mingw-w64-i686
if [ "$WINE" = "32" ]
then
echo "Cross mingw32"
sed -i -e '/CMPLR_PREFIX/d' epics-base/configure/os/CONFIG_SITE.linux-x86.win32-x86-mingw
cat << EOF >> epics-base/configure/os/CONFIG_SITE.linux-x86.win32-x86-mingw
CMPLR_PREFIX=i686-w64-mingw32-
EOF
cat << EOF >> epics-base/configure/CONFIG_SITE
CROSS_COMPILER_TARGET_ARCHS+=win32-x86-mingw
EOF
fi
if [ "$STATIC" = "YES" ]
then
echo "Build static libraries/executables"
cat << EOF >> epics-base/configure/CONFIG_SITE
SHARED_LIBRARIES=NO
STATIC_BUILD=YES
EOF
fi
case "$CMPLR" in
clang)
echo "Host compiler is clang"
cat << EOF >> epics-base/configure/os/CONFIG_SITE.Common.$EPICS_HOST_ARCH
GNU = NO
CMPLR_CLASS = clang
CC = clang
CCC = clang++
EOF
# hack
sed -i -e 's/CMPLR_CLASS = gcc/CMPLR_CLASS = clang/' epics-base/configure/CONFIG.gnuCommon
clang --version
;;
*)
echo "Host compiler is default"
gcc --version
;;
esac
cat <<EOF >> epics-base/configure/CONFIG_SITE
USR_CPPFLAGS += $USR_CPPFLAGS
USR_CFLAGS += $USR_CFLAGS
USR_CXXFLAGS += $USR_CXXFLAGS
EOF
# set RTEMS to eg. "4.9" or "4.10"
# requires qemu, bison, flex, texinfo, install-info
if [ -n "$RTEMS" ]
then
echo "Cross RTEMS${RTEMS} for pc386"
install -d /home/travis/.cache
curl -L "https://github.com/mdavidsaver/rsb/releases/download/travis-20160306-2/rtems${RTEMS}-i386-trusty-20190306-2.tar.gz" \
| tar -C /home/travis/.cache -xj
sed -i -e '/^RTEMS_VERSION/d' -e '/^RTEMS_BASE/d' epics-base/configure/os/CONFIG_SITE.Common.RTEMS
cat << EOF >> epics-base/configure/os/CONFIG_SITE.Common.RTEMS
RTEMS_VERSION=$RTEMS
RTEMS_BASE=/home/travis/.cache/rtems${RTEMS}-i386
EOF
cat << EOF >> epics-base/configure/CONFIG_SITE
CROSS_COMPILER_TARGET_ARCHS+=RTEMS-pc386
EOF
# find local qemu-system-i386
export PATH="$HOME/.cache/qemu/usr/bin:$PATH"
echo -n "Using QEMU: "
type qemu-system-i386 || echo "Missing qemu"
EXTRA=RTEMS_QEMU_FIXUPS=YES
fi
make -j2 -C epics-base $EXTRA

14
.gitignore vendored Normal file
View File

@@ -0,0 +1,14 @@
/cfg/
/bin/
/lib/
/db/
/dbd/
/html/
/include/
/templates/
/configure/*.local
O.*/
/QtC-*
*.orig
*.log
.*.swp

26
.travis.yml Normal file
View File

@@ -0,0 +1,26 @@
sudo: false
dist: trusty
language: c
compiler:
- gcc
addons:
apt:
packages:
- libreadline6-dev
- libncurses5-dev
- perl
- clang
- g++-mingw-w64-i686
install:
- ./.ci/travis-prepare.sh
script:
- ./.ci/travis-build.sh
env:
- BRCORE=master BRLIBCOM=master BRCA=master
- CMPLR=clang
- USR_CXXFLAGS=-std=c++11
- CMPLR=clang USR_CXXFLAGS=-std=c++11
- WINE=32 TEST=NO STATIC=YES
- WINE=32 TEST=NO STATIC=NO
- RTEMS=4.10 TEST=NO
- RTEMS=4.9 TEST=NO

View File

@@ -3,24 +3,17 @@
# National Laboratory.
# Copyright (c) 2002 The Regents of the University of California, as
# Operator of Los Alamos National Laboratory.
# EPICS BASE Versions 3.13.7
# and higher are distributed subject to a Software License Agreement found
# in file LICENSE that is included with this distribution.
# EPICS BASE is distributed subject to a Software License Agreement found
# in file LICENSE that is included with this distribution.
#*************************************************************************
TOP = .
include $(TOP)/configure/CONFIG
# Bootstrap resolution: tools not installed yet
TOOLS = $(TOP)/src/tools
DIRS += configure src
ifeq ($(findstring YES,$(COMPAT_313) $(COMPAT_TOOLS_313)),YES)
DIRS += config
endif
src_DEPEND_DIRS = configure
config_DEPEND_DIRS = src
DIRS += test
test_DEPEND_DIRS = src
include $(TOP)/configure/RULES_TOP

24
README
View File

@@ -1,24 +0,0 @@
---------------------------------------------------------
EPICS Base - the central core of a control system toolkit
---------------------------------------------------------
Copyright (c) 1991-2003 The University of Chicago, as Operator
of Argonne National Laboratory.
Copyright (c) 1991-2003 The Regents of the University of
California, as Operator of Los Alamos National Laboratory.
EPICS Base Versions 3.13.7 and higher are distributed
subject to a Software License Agreement found in the
file LICENSE that is included with this distribution.
---------------------------------------------------------
Installation and release information can be found in the
various files in the documentation subdirectory.
Additional information about EPICS including mailing list
archives and subscription instructions, documentation and
training materials, additional components, links to other
websites etc. is available on the EPICS home page at
http://www.aps.anl.gov/epics/

View File

@@ -1,90 +0,0 @@
#*************************************************************************
# Copyright (c) 2002 The University of Chicago, as Operator of Argonne
# National Laboratory.
# Copyright (c) 2002 The Regents of the University of California, as
# Operator of Los Alamos National Laboratory.
# EPICS BASE Versions 3.13.7
# and higher are distributed subject to a Software License Agreement found
# in file LICENSE that is included with this distribution.
#*************************************************************************
#
#
# The developer may edit this file.
# assume T_A is the host arch if not specified
#
# EPICS base definitions
#
include $(EPICS_BASE)/config/CONFIG_COMMON
#
# EPICS version definitions
#
include $(EPICS_BASE)/config/CONFIG_BASE_VERSION
# Site-specific build options
#
include $(EPICS_BASE)/config/CONFIG_SITE
# Host architecture specific definitions
#
include $(EPICS_BASE)/config/CONFIG_HOST_ARCH.$(HOST_ARCH)
#
-include $(EPICS_BASE)/config/CONFIG_SITE_HOST_ARCH.$(HOST_ARCH)
ifdef T_A
# Build type specific definitions
#
-include $(EPICS_BASE)/config/CONFIG.$(BUILD_TYPE)
#
-include $(EPICS_BASE)/config/CONFIG_SITE.$(BUILD_TYPE)
# Architecture specific definitions
#
include $(EPICS_BASE)/config/CONFIG.$(BUILD_TYPE).$(T_A)
#
ifneq ($(HOST_ARCH),$(T_A))
-include $(EPICS_BASE)/config/CONFIG_SITE.$(BUILD_TYPE).$(HOST_ARCH)
endif
#
-include $(EPICS_BASE)/config/CONFIG_SITE.$(BUILD_TYPE).$(T_A)
endif
# User specific definitions
#
-include $(HOME)/EPICS_CONFIG
-include $(HOME)/EPICS_CONFIG.$(HOST_ARCH)
-include $(HOME)/EPICS_CONFIG_HOST_ARCH.$(HOST_ARCH)
ifdef T_A
-include $(HOME)/EPICS_CONFIG.$(BUILD_TYPE)
ifneq ($(HOST_ARCH),$(T_A))
-include $(HOME)/EPICS_CONFIG.$(BUILD_TYPE).$(HOST_ARCH)
endif
-include $(HOME)/EPICS_CONFIG.$(BUILD_TYPE).$(T_A)
endif
# All EPICS options other than BUILD_TYPE
# may be overridden here.
#
# EXAMPLES
# --------
# Build client objects statically ? must be either YES or NO
#STATIC_BUILD=NO
# Unix Optimization, must be either YES or NO
#HOST_OPT=YES
# VxWorks Optimization, must be either YES or NO
#VX_OPT=YES
# Generate Verbose Compiler Warnings for Unix, must be either YES or NO
#UNIX_WARN=YES
# Generate Verbose Compiler Warnings for VxWorks, must be either YES or NO
#VX_WARN=YES
#etc.
#CROSS_COMPILER_TARGET_ARCHS=mv167
#ANSI=GCC
#CPLUSPLUS=G++
#CMPLR=STRICT
#CXXCMPLR=STRICT

View File

@@ -1,270 +0,0 @@
#*************************************************************************
# Copyright (c) 2002 The University of Chicago, as Operator of Argonne
# National Laboratory.
# Copyright (c) 2002 The Regents of the University of California, as
# Operator of Los Alamos National Laboratory.
# EPICS BASE Versions 3.13.7
# and higher are distributed subject to a Software License Agreement found
# in file LICENSE that is included with this distribution.
#*************************************************************************
# CONFIG.Host.Borland
# This file is maintained by the EPICS community.
# Sites may override these definitions in CONFIG_SITE.Borland
BORLAND_LIB = $(BORLAND)\\lib
BORLAND_INC = $(BORLAND)\\include
BORLAND_BIN = $(BORLAND)\\bin
#
#
ANSI = ACC
CPLUSPLUS = CCC
#
# -q supress command line banner
WINLINK = $(BORLAND_BIN)/ilink32 -q
# -l specifies default language
# -fo Renames the output .RES file
RCCMD = $(BORLAND_BIN)/brcc32 $(subst -I,-i,$(INCLUDES)) -l0x409 -fo$@ $<
ARCMD = $(BORLAND_BIN)/tlib $@
#
# Configure Borland C compiler
# -q suppress compiler identification banner
# -tWM generate a 32-bit multi-threaded target
# -tWD generate a .DLL executable
# -a8 quad word alignment
# -D_WIN32 macro defined to be consistant with Microsoft Visual C++
# -D_RTLDLL macro defined to use Borland C++ RTL library
CCLINKOPT = -q -tWM -tWD -a8 -D_WIN32 -D_RTLDLL
ACC = $(BORLAND_BIN)/bcc32 $(CCLINKOPT)
#
# __STDC__=0 works but not as cleanly as with
# Microsoft Visual C++.
# The Borland header files use ifdef __STDC__
# to disable many nice things. This is overridden
# by defining NO_BORLAND_STDC in the Makefile.Host.
#
ifdef NO_BORLAND_STDC
ACC_ANSI = $(ACC)
ACC_STRICT = $(ACC)
else
ACC_ANSI = $(ACC) -D__STDC__=0
ACC_STRICT = $(ACC) -D__STDC__=0
endif
ACC_TRAD = $(ACC)
# -w display warnings on
# -g0 no limit to warning messages
# some warning message here are always disabled because they are
# trivial and numerous
# -w-8012 Comparing signed and unsigned values
# -w-8060 Possibly incorrect assignment
# -w-8071 Conversion may lose significant digits
ACC_WARN_YES = -w -g0 -w-8012 -w-8060 -w-8071
# -w- display warnings off
ACC_WARN_NO = -w-
#
# -k- turn off standard stack frame
# -H- turn off precompiled headers
# -R- don't include browser info in .obj files
# -O1 optimization for size
# -v- turn off source debugging
# -vi control expansion of inline functions
ACC_OPT_YES = -k- -H- -R- -O1 -v- -vi
#
ACC_OPT_NO =
#
# no special libs for static link
#
ACC_SLIBS_YES=
ACC_SLIBS_NO=
# Configure OS vendor C++ compiler
#
# __STDC__=0 works but not as cleanly as with
# Microsoft Visual C++.
# The Borland header files use ifdef __STDC__
# to disable many nice things. This is overridden
# by defining NO_BORLAND_STDC in the Makefile.Host.
#
CCC = $(BORLAND_BIN)/bcc32 $(CCLINKOPT)
ifdef NO_BORLAND_STDC
CCC_NORMAL = $(CCC)
CCC_STRICT = $(CCC)
else
CCC_NORMAL = $(CCC) -D__STDC__=0
CCC_STRICT = $(CCC) -D__STDC__=0
endif
CCC_TEMPL_INST_FLAG =
# -w display warnings on
# -g0 no limit to warning messages
# -w-8012 Comparing signed and unsigned values
# -w-8060 Possibly incorrect assignment
# -w-8071 Conversion may lose significant digits
CCC_WARN_YES = -w -g0 -w-8012 -w-8060 -w-8071 -w-8008 -w-8027 -w-8066 -w-8080 -w-8004
# -w- display warnings off
CCC_WARN_NO = -w-
#
# -k- turn off standard stack frame
# -H- Turn off precompiled headers
# -R- Don't include browser info in .obj files
# -O1 optimization for size
# -v- turn off source debugging
# -vi control expansion of inline functions
CCC_OPT_YES = -k- -H- -R- -O1 -v- -vi
#
CCC_OPT_NO =
#
# no special libs for static link
#
CCC_SLIBS_YES=
CCC_SLIBS_NO=
PROD_VERSION=3.13
# -c case sensitive linking
# -C clear state before linking
# -Gi generate import library
# -Gn no state files
# -Tpd targets a Windows .DLL file
# -x no map
# -w display warnings on
LINK_OPT_FLAGS_YES = -c -C -Gi -Gn -Tpd -x -w
LINK_OPT_FLAGS_NO = -c -C -Gi -Gn -Tpd -x -w-
WIN32_DLLFLAGS = $(LINK_OPT_FLAGS_$(HOST_OPT))
OPT_LDFLAGS =
ARCH_DEP_CFLAGS=
# to identify the general architecture class:
# should be BSD, SYSV, WIN32, ...
# is: WIN32, sun4, hpux, linux, ...
#
ARCH_CLASS=WIN32
# ifdef WIN32 looks better that ifeq ($(ARCH_CLASS),WIN32) ??
WIN32=1
BORLANDC=1
EXE=.exe
OBJ=.obj
RES=.res
# Problem: BorlandC does not recognize *.cc as C++ source,
# we have to compile xx.cc using the flag -P xx.cc,
SOURCE_CXXFLAG = -P -D__cplusplus
# Operating system flags
OP_SYS_CFLAGS =
#
# Borland specific include files
#
OP_SYS_INCLUDES = -I$(BORLAND_INC)
#
OP_SYS_LDLIBS =
#
# specify dll .def file only if it exists
#
#DLL_DEF_FLAG = $(addprefix /def:,$(wildcard ../$(LIBRARY).def))
DLL_DEF_FLAG = $(subst /,\\,$(wildcard ../$(LIBRARY).def))
# HOST_OPT_FLAGS is part of CFLAGS/CXXFLAGS,
# which in turn are used in COMPILE.c[c]
#
# If we compile a .c, .cc into an $(OBJ),
# we test if this object is part of the
# library objects LIBOBJS.
# If so, we define _WINDLL so that
# e.g. include/shareLib.h works correctly.
#
HOST_OPT_FLAGS += $(subst $@, /_WINDLL, $(findstring $@,$(LIBOBJS)))
#
# A WIN32 dll has three parts:
# x.dll: the real dll (SHRLIBNAME)
# x.lib: what you link to progs that use the dll (LIBNAME)
# x.exp: what you need to build the dll (in no variable)
#
LINK.shrlib = $(WINLINK) $(WIN32_DLLFLAGS) -L$(BORLAND_LIB) -L$(BORLAND_LIB)\\Psdk c0d32.obj
# adjust names of libraries to build
#
# But: if there are no objects LIBOBJS to include
# in this library (may be for e.g. base/src/libCompat
# on some archs), don't define (and build) any library!
SHRLIBNAME = $(LIBRARY).dll
#
# Under WIN32 we have the unique situation where the DLL link creates the
# DLL link library xxx.lib and we need to be very careful to avoid replacing
# the xxx.lib created by the dll link with an xxx.lib created by $(AR).
# Therefore, the object library is named xxxObj.lib
#
# SHARED_LIBRARIES is YES if we are building a DLL and NO if we aren't
#
DLL_LINK_LIBNAME_YES = $(LIBRARY).lib
DLL_LINK_LIBNAME = $(DLL_LINK_LIBNAME_$(SHARED_LIBRARIES))
#ifeq ($(strip $(SHARED_LIBRARIES)),NO)
#LIBNAME = $(LIBRARY).lib
#else
LIBNAME = $(LIBRARY)Obj.lib
#endif
# dll install location
INSTALL_SHRLIB = $(INSTALL_BIN)
#--------------------------------------------------
# Dependancy definitions
OBJECT_LIB_EXT_YES = Obj.lib # object library extension for static build
OBJECT_LIB_EXT_NO = .lib # object library extension for dynamic build
OBJECT_LIB_EXT = $(OBJECT_LIB_EXT_$(STATIC_BUILD))
COND_PROD_DEPLIBS = $(foreach prod,$(PROD), $(foreach lib, $($(basename $(prod))_LIBS),\
$(firstword $($(lib)_DIR) $(EPICS_BASE_LIB))/$(lib)$(OBJECT_LIB_EXT)))
PRODNAME_DEPLIBS = $(foreach lib,$(PRODNAME_LIBS),$(firstword $(wildcard $($(lib)_DIR)/$(lib).lib $($(lib)_DIR)/$(lib)Obj.lib $(EPICS_BASE_LIB)/$(lib).lib $(EPICS_BASE_LIB)/$(lib)Obj.lib ) $(filter $(LIBRARY)$(OBJECT_LIB_EXT), $(lib)$(OBJECT_LIB_EXT)) ))
PROD_DEPLIBS = $(foreach lib,$(PROD_LIBS),$(firstword $(wildcard $($(lib)_DIR)/$(lib).lib $($(lib)_DIR)/$(lib)Obj.lib $(EPICS_BASE_LIB)/$(lib).lib $(EPICS_BASE_LIB)/$(lib)Obj.lib ) $(filter $(LIBRARY)$(OBJECT_LIB_EXT), $(lib)$(OBJECT_LIB_EXT)) ))
USR_DEPLIBS = $(foreach lib,$(USR_LIBS),$(firstword $(wildcard $($(lib)_DIR)/$(lib).lib $($(lib)_DIR)/$(lib)Obj.lib $(EPICS_BASE_LIB)/$(lib).lib $(EPICS_BASE_LIB)/$(lib)Obj.lib ) $(filter $(LIBRARY)$(OBJECT_LIB_EXT), $(lib)$(OBJECT_LIB_EXT)) ))
# by default the libraries used when linking the DLL are just
# PROD_LIBS ans SYS_PROD_LIBS minus the DLL name
DLL_LIBS = $(patsubst $(LIBRARY),, $(PROD_LIBS))
#
# EPICS libs that we need to link the DLL with
# (it isnt necessary to rebuild the dll if these change)
DLL_DEPLIBS = $(foreach lib,$(DLL_LIBS),$(firstword $(wildcard $($(lib)_DIR)/$(lib).lib $($(lib)_DIR)/$(lib)Obj.lib $(EPICS_BASE_LIB)/$(lib).lib $(EPICS_BASE_LIB)/$(lib)Obj.lib) $(filter $(LIBRARY)$(OBJECT_LIB_EXT), $(lib)$(OBJECT_LIB_EXT)) ))
USR_LDLIBS = $(PRODNAME_DEPLIBS) $(PROD_DEPLIBS) $(USR_DEPLIBS) $(SYS_PROD_LIBS:%=%.lib)
DLL_LDLIBS = $(DLL_DEPLIBS) $(SYS_PROD_LIBS:%=%.lib) $(OP_SYS_LDLIBS)
#multithreaded import library
LIBSUF=mti
# -c case sensitive linking
# -C clear state before linking
# -Gn no state files
# -Tpe targets a Windows .EXE file
# -x no map
# -w display warnings on
LDFLAGS += -c -C -Gn -Tpe -x -w -L$(BORLAND_LIB) -L$(BORLAND_LIB)\\Psdk
LINKSTARTUP = c0x32.obj
LINKLIBS=import32.lib cw32$(LIBSUF).lib
LINK.c = $(WINLINK) $(LDFLAGS) $(LINKSTARTUP)
LINK.cc = $(WINLINK) $(LDFLAGS) $(LINKSTARTUP)

View File

@@ -1,58 +0,0 @@
#*************************************************************************
# Copyright (c) 2002 The University of Chicago, as Operator of Argonne
# National Laboratory.
# Copyright (c) 2002 The Regents of the University of California, as
# Operator of Los Alamos National Laboratory.
# EPICS BASE Versions 3.13.7
# and higher are distributed subject to a Software License Agreement found
# in file LICENSE that is included with this distribution.
#*************************************************************************
# CONFIG.Host.Darwin
#
# This file is maintained by the EPICS community.
# Sites may override these definitions in CONFIG_SITE.Host.Darwin
ARCH_CLASS = Darwin
# Include definitions common to all Unix archs
include $(EPICS_BASE)/config/CONFIG.Host.UnixCommon
#
# The config files are a real mess. The following definitions seem to work
# for all the weird ways in which the extensions makefile fragments use them.
#
AR = ar
ARCMD = $(AR) -rc $@
ARFLAGS = rcv
RANLIB = ranlib
ANSI=GCC
CPLUSPLUS=G++
OP_SYS_CPPFLAGS += -DDarwin
OP_SYS_CFLAGS += -no-cpp-precomp
OP_SYS_INCLUDES = -I/sw/include -I/usr/X11R6/include
OP_SYS_LDFLAGS += -L/sw/lib -L/usr/X11R6/lib
# Uncomment this if you're using the GNU readline library
#ARCH_DEP_LDLIBS += -lreadline
# Uncomment this if you're using the libtecla library
#ARCH_DEP_LDLIBS += -ltecla_r -ltermcap
#
# Compiler/linker problems prevent the use of shared libraries at the moment
#
SHARED_LIBRARIES_Darwin = NO
#
# Something like this will be needed once shared libraries are built
#
SHRLIB_SUFFIX = .dylib$(SHARED_LIBRARIES)
GCC_SHRLIB_LDFLAGS_YES += -dynamiclib
G++_SHRLIB_LDFLAGS_YES += -dynamiclib
#
# Java
#
JAVA_DIR=/usr/

View File

@@ -1,55 +0,0 @@
#*************************************************************************
# Copyright (c) 2002 The University of Chicago, as Operator of Argonne
# National Laboratory.
# Copyright (c) 2002 The Regents of the University of California, as
# Operator of Los Alamos National Laboratory.
# EPICS BASE Versions 3.13.7
# and higher are distributed subject to a Software License Agreement found
# in file LICENSE that is included with this distribution.
#*************************************************************************
# CONFIG.Host.Linux
#
# This file is maintained by the EPICS community.
# Sites may override these definitions in CONFIG_SITE.Host.Linux
ARCH_CLASS = Linux
# Include definitions common to all Unix archs
include $(EPICS_BASE)/config/CONFIG.Host.UnixCommon
AR = ar -rc
ARCMD = $(AR) $@
RANLIB = ranlib -t
ANSI=GCC
CPLUSPLUS=G++
GCC_SHRLIB_LDFLAGS_YES += -Wl,-soname,$@
G++_SHRLIB_LDFLAGS_YES += -Wl,-soname,$@
OP_SYS_CFLAGS += -D_BSD_SOURCE
ARCH_DEP_CFLAGS = -D_X86_ -Dlinux
ARCH_DEP_LDLIBS += -lpthread -lreadline -lcurses -lrt
#Allows R3.13 built extensions to load R3.14 shared libs
SYS_DLL_LIBS_Linux += pthread readline curses rt
#glibc FAQ
# "_GNU_SOURCE: glibc does not make the GNU extensions available
# automatically. If a program depends on the GNU extensions or some other
# non-standard functionality, it is necessary to compile it with the C
# compiler option -D_GNU_SOURCE, or better to put #define _GNU_SOURCE at
# the beginning of your source files, before any C library header files
# are included. This difference normally manifests itself in the form
# of missing prototypes and/or data type definitions. Thus, if you get
# such errors, the first thing you should do is try defining _GNU_SOURCE
# and see if that makes the problem go away."
#ARCH_DEP_CFLAGS += -D_GNU_SOURCE
# Runtime ldflags
RUNTIME_LIBS =$(EPICS_BASE)/lib/$(EPICS_HOST_ARCH)\
$(EPICS_EXTENSIONS)/lib/$(EPICS_HOST_ARCH)
RUNTIME_LDFLAGS = $(RUNTIME_LIBS:%=-Wl,-rpath,%)

View File

@@ -1,89 +0,0 @@
#*************************************************************************
# Copyright (c) 2002 The University of Chicago, as Operator of Argonne
# National Laboratory.
# Copyright (c) 2002 The Regents of the University of California, as
# Operator of Los Alamos National Laboratory.
# EPICS BASE Versions 3.13.7
# and higher are distributed subject to a Software License Agreement found
# in file LICENSE that is included with this distribution.
#*************************************************************************
#
# Contains definitions common to all Unix archs
#
# This file is maintained by the EPICS community.
# Sites may override these definitions in CONFIG_SITE.Host.UnixCommon
#-------------------------------------------------------
# adjust names of libraries to build
#
# <lib> -> lib<lib>.a
LIBNAME = $(LIBRARY:%=lib%.a)
#-------------------------------------------------------
# Shared library definitions
# CONFIG.Host.<arch> files may override
SHRLIB_SUFFIX = .so
SHRLIBNAME = lib$(LIBRARY)$(SHRLIB_SUFFIX)$(SHRLIB_VERSION:%=.%)
SYS_DLL_LIBS += $(SYS_DLL_LIBS_$(OS_CLASS))
DLL_LIBS = $(patsubst $(LIBRARY),, $(PROD_LIBS) $(USR_LIBS)) $(SYS_DLL_LIBS)
INSTALL_SHRLIB = $(INSTALL_LIB)
LINK.shrlib= $(SHRLIB_LINKER) -o $@ $(CFLAGS) $(CPPFLAGS) $(SHRLIB_LDFLAGS) $(DLL_LDFLAGS) $(LDFLAGS)
#-------------------------------------------------------
# Unix command definitions
CPP = cpp
RANLIB = ranlib
# GNU compilers
GCC = gcc
G++ = g++
#-------------------------------------------------------
# Unix suffix definitions
EXE =
OBJ = .o
#--------------------------------------------------
# Dependancy definitions
COND_PROD_DEPLIBS = $(foreach prod,$(PROD), $(foreach lib, $($(basename $(prod))_LIBS),$(firstword $(wildcard $($(lib)_DIR)/lib$(lib).* $(EPICS_BASE_LIB)/lib$(lib).*))))
PRODNAME_DEPLIBS = $(foreach lib,$(PRODNAME_LIBS),$(firstword $(wildcard $($(lib)_DIR)/lib$(lib).* $(EPICS_BASE_LIB)/lib$(lib).*)))
PROD_DEPLIBS = $(foreach lib,$(PROD_LIBS),$(firstword $(wildcard $($(lib)_DIR)/lib$(lib).* $(EPICS_BASE_LIB)/lib$(lib).*)))
USR_DEPLIBS = $(foreach lib,$(USR_LIBS),$(firstword $(wildcard $($(lib)_DIR)/lib$(lib).* $(EPICS_BASE_LIB)/lib$(lib).*)))
DLL_DEPLIBS = $(foreach lib,$(DLL_LIBS),$(firstword $(wildcard $($(lib)_DIR)/lib$(lib).* $(EPICS_BASE_LIB)/lib$(lib).*)))
#--------------------------------------------------
# Determine ld flags
USR_DIRS = $(dir $(PRODNAME_DEPLIBS)) $(dir $(PROD_DEPLIBS))\
$(dir $(USR_DEPLIBS))
USR_LDFLAGS += $(sort $(USR_DIRS:%=-L%))
DLL_DIRS = $(dir $(DLL_DEPLIBS))
DLL_LDFLAGS = $(sort $(DLL_DIRS:%=-L%))
# Determine ld libs
USR_LDLIBS = $(PRODNAME_LIBS:%=-l%) $(PROD_LIBS:%=-l%) $(USR_LIBS:%=-l%)\
$(SYS_PROD_LIBS:%=-l%)
DLL_LDLIBS = $(DLL_LIBS:%=-l%)
#--------------------------------------------------
# Operating system definitions
OP_SYS_INCLUDES =
OP_SYS_CFLAGS = -DUNIX
OP_SYS_LDFLAGS =
OP_SYS_LDLIBS = -lm
#--------------------------------------------------
# Link definitions
LINK.c = $(CC) -o $@ $(CFLAGS) $(CPPFLAGS) $(LDFLAGS)
LINK.cc = $(CXX) -o $@ $(CXXFLAGS) $(CPPFLAGS) $(LDFLAGS)
#--------------------------------------------------
# Allow site overrides
-include $(EPICS_BASE)/config/CONFIG_SITE.Host.UnixCommon

View File

@@ -1,283 +0,0 @@
#*************************************************************************
# Copyright (c) 2002 The University of Chicago, as Operator of Argonne
# National Laboratory.
# Copyright (c) 2002 The Regents of the University of California, as
# Operator of Los Alamos National Laboratory.
# EPICS BASE Versions 3.13.7
# and higher are distributed subject to a Software License Agreement found
# in file LICENSE that is included with this distribution.
#*************************************************************************
# CONFIG.Host.WIN32
#
# This file is maintained by the EPICS community.
# Sites may override these definitions in CONFIG_SITE.WIN32
#
# You currently get Visual C++ even if you ask for GNU.
#
# !! borlund support needed here !!
#
ANSI = ACC
CPLUSPLUS = CCC
#
# "\ " forces gnu make to keep this as one token
#
MSVISC = c:\\Program\ Files\\DevStudio\\Vc
WINLINK = link
RCCMD = rc -l 0x409 -i . -i .. -I$(INSTALL_INCLUDE)/os/$(OS_CLASS) -I$(INSTALL_INCLUDE) $(INSTALL_INCLUDES) -I$(EPICS_BASE_INCLUDE)/os/$(OS_CLASS) -I$(EPICS_BASE_INCLUDE) -fo $@ $<
ARCMD = lib /nologo /verbose /out:$@
#
# Configure OS vendor C compiler
ACC = cl
#
# __STDC__=0 is a real great idea of Jeff that gives us both:
# 1) define STDC for EPICS code (pretend ANSI conformance)
# 2) set it to 0 to use MS C "extensions" (open for _open etc.)
# because MS uses: if __STDC__ ... disable many nice things
#
# Use of /Za would dissable DLL import/export keywords which
# EPICS include/excludes using architecture neutral macros
ACC_ANSI = $(ACC) /nologo /D__STDC__=0
ACC_STRICT = $(ACC) /nologo /D__STDC__=0
ACC_TRAD = $(ACC) /nologo
#
# /W<N> use warning level N
# (maximum (lint type) warnings at level 4)
ACC_WARN_YES = /W3
ACC_WARN_NO = /W1
#
# /Ox maximum optimizations
# /MD use MSVCRT (run-time as DLL, multi-thread support)
ACC_OPT_YES = /Ox
#
# /Zi include debugging info in object files
# /Fr create source browser file
ACC_OPT_NO = /Zi
#
# the following options are required when
# vis c++ compiles the code (and includes
# the header files)
#
# /MT static multithreaded C RTL
# /MTd static multithreaded C RTL (debug version)
# /MD multithreaded C RTL in DLL
# /MDd multithreaded C RTL in DLL (debug version)
VISC_EPICS_DLL_NO = -DEPICS_DLL_NO
VISC_EPICS_DLL_YES =
VISC_EPICS_DLL = $(VISC_EPICS_DLL_$(SHARED_LIBRARIES))
VISC_SFLAGS_DEBUG_NO = d
VISC_SFLAGS_DEBUG_YES =
VISC_SFLAGS_DEBUG = $(VISC_SFLAGS_DEBUG_$(HOST_OPT))
ACC_SFLAGS_YES= /MT$(VISC_SFLAGS_DEBUG) $(VISC_EPICS_DLL)
ACC_SFLAGS_NO= /MD$(VISC_SFLAGS_DEBUG) $(VISC_EPICS_DLL)
#
# no special libs for static link
#
ACC_SLIBS_YES=
ACC_SLIBS_NO=
# Configure OS vendor C++ compiler
#
# __STDC__=0 is a real great idea of Jeff that gives us both:
# 1) define STDC for EPICS code (pretend ANSI conformance)
# 2) set it to 0 to use MS C "extensions" (open for _open etc.)
# because MS uses: if __STDC__ ... disable many nice things
#
# Use of /Za would dissable DLL import/export keywords which
# EPICS include/excludes using architecture neutral macros
#
# /EHsc support C++ exceptions
# /GR generate RTTI information
#
CCC = cl /EHsc /GR
CCC_NORMAL = $(CCC) /nologo /D__STDC__=0
CCC_STRICT = $(CCC) /nologo /D__STDC__=0
CCC_TEMPL_INST_FLAG =
ARCH_DEP_CPPFLAGS += /D_CRT_SECURE_NO_DEPRECATE /D_CRT_NONSTDC_NO_DEPRECATE
#
# /W<N> use warning level N
# (maximum lint level warnings at level 4)
CCC_WARN_YES = /W3
CCC_WARN_NO = /W1
#
# /Ox maximum optimizations
CCC_OPT_YES = /Ox
#
# /Zi include debugging info in object files
# /Fr create source browser file
CCC_OPT_NO = /Zi
#
# the following options are required when
# vis c++ compiles the code (and includes
# the header files)
#
# /MT static multithreaded C RTL
# /MTd static multithreaded C RTL (debug version)
# /MD multithreaded C RTL in DLL
# /MDd multithreaded C RTL in DLL (debug version)
CCC_SFLAGS_YES= /MT$(VISC_SFLAGS_DEBUG) $(VISC_EPICS_DLL)
CCC_SFLAGS_NO= /MD$(VISC_SFLAGS_DEBUG) $(VISC_EPICS_DLL)
#
# no special libs for static link
#
CCC_SLIBS_YES=
CCC_SLIBS_NO=
LINK_OPT_FLAGS_YES = /warn:3 /incremental:no /opt:ref\
/release $(PROD_VERSION:%=/version:%)
LINK_OPT_FLAGS_NO = /warn:3 /debug /incremental:no
OPT_LDFLAGS = $(LINK_OPT_FLAGS_$(HOST_OPT))
ARCH_DEP_CFLAGS=
# to identify the general architecture class:
# should be BSD, SYSV, WIN32, ...
# is: WIN32, sun4, hpux, linux, ...
#
ARCH_CLASS=WIN32
# ifdef WIN32 looks better that ifeq ($(ARCH_CLASS),WIN32) ??
WIN32=1
EXE=.exe
OBJ=.obj
RES=.res
# Problem: MS Visual C++ does not recognize *.cc as C++ source,
# we have to compile xx.cc using the flag -Tp xx.cc,
# i.e. -Tp has to be immediately before the source file name
SOURCE_CXXFLAG = /Tp
# Operating system flags
OP_SYS_CFLAGS =
#
# WIN32 specific include files
#
#OP_SYS_INCLUDES = -I$(EPICS_BASE_INCLUDE)\\os\\WIN32
#
# These are now added to the individual makefiles that use them in order to
# speed up the build
#
#OP_SYS_LDLIBS = user32.lib kernel32.lib advapi32.lib winmm.lib
OP_SYS_LDLIBS =
# Files and flags needed to link DLLs (used in RULES.Host)
#
# Strange but seems to work without: WIN32_DLLFLAGS should contain
# an entry point:
# '-entry:_DllMainCRTStartup$(DLLENTRY)'
DLLENTRY = @12
WIN32_DLLFLAGS = /subsystem:windows /dll $(OPT_LDFLAGS)
#
# specify dll .def file only if it exists
#
DLL_DEF_FLAG = $(addprefix /def:,$(wildcard ../$(LIBRARY).def))
# HOST_OPT_FLAGS is part of CFLAGS/CXXFLAGS,
# which in turn are used in COMPILE.c[c]
#
# If we compile a .c, .cc into an $(OBJ),
# we test if this object is part of the
# library objects LIBOBJS.
# If so, we define _WINDLL so that
# e.g. include/shareLib.h works correctly.
#
HOST_OPT_FLAGS += $(subst $@, /_WINDLL, $(findstring $@,$(LIBOBJS)))
#
# A WIN32 dll has three parts:
# x.dll: the real dll (SHRLIBNAME)
# x.lib: what you link to progs that use the dll (LIBNAME)
# x.exp: what you need to build the dll (in no variable)
#
LINK.shrlib = $(WINLINK) /nologo $(WIN32_DLLFLAGS) /implib:$(DLL_LINK_LIBNAME) /out:$(SHRLIBNAME) $(DLL_DEF_FLAG)
# adjust names of libraries to build
#
# But: if there are no objects LIBOBJS to include
# in this library (may be for e.g. base/src/libCompat
# on some archs), don't define (and build) any library!
SHRLIBNAME = $(LIBRARY).dll
#
# Under WIN32 we have the unique situation where the DLL link creates the
# DLL link library xxx.lib and we need to be very careful to avoid replacing
# the xxx.lib created by the dll link with an xxx.lib created by $(AR).
# Therefore, the object library is named xxxObj.lib
#
# SHARED_LIBRARIES is YES if we are building a DLL and NO if we aren't
#
DLL_LINK_LIBNAME_YES = $(LIBRARY).lib
DLL_LINK_LIBNAME = $(DLL_LINK_LIBNAME_$(SHARED_LIBRARIES))
LIBNAME = $(LIBRARY)Obj.lib
# dll install location
INSTALL_SHRLIB = $(INSTALL_BIN)
#--------------------------------------------------
# Dependancy definitions
OBJECT_LIB_EXT_YES = Obj.lib # object library extension for static build
OBJECT_LIB_EXT_NO = .lib # object library extension for dynamic build
OBJECT_LIB_EXT = $(OBJECT_LIB_EXT_$(STATIC_BUILD))
COND_PROD_DEPLIBS = $(foreach prod,$(PROD), $(foreach lib, $($(basename $(prod))_LIBS),\
$(firstword $($(lib)_DIR) $(EPICS_BASE_LIB))/$(lib)$(OBJECT_LIB_EXT)))
PRODNAME_DEPLIBS = $(foreach lib,$(PRODNAME_LIBS),$(firstword $($(lib)_DIR) $(EPICS_BASE_LIB))/$(lib)$(OBJECT_LIB_EXT))
PROD_DEPLIBS = $(foreach lib,$(PROD_LIBS),$(firstword $($(lib)_DIR) $(EPICS_BASE_LIB))/$(lib)$(OBJECT_LIB_EXT))
USR_DEPLIBS = $(foreach lib,$(USR_LIBS),$(firstword $($(lib)_DIR) $(EPICS_BASE_LIB))/$(lib)$(OBJECT_LIB_EXT))
# by default the libraries used when linking the DLL are just
# PROD_LIBS ans SYS_PROD_LIBS minus the DLL name
DLL_LIBS = $(patsubst $(LIBRARY),, $(PROD_LIBS))
#
# EPICS libs that we need to link the DLL with
# (it isnt necessary to rebuild the dll if these change)
DLL_DEPLIBS = $(foreach lib,$(DLL_LIBS),$(firstword $($(lib)_DIR) $(EPICS_BASE_LIB))/$(lib).lib)
USR_LDLIBS = $(PRODNAME_DEPLIBS) $(PROD_DEPLIBS) $(USR_DEPLIBS) $(SYS_PROD_LIBS:%=%.lib)
DLL_LDLIBS = $(DLL_DEPLIBS) $(SYS_PROD_LIBS:%=%.lib) $(OP_SYS_LDLIBS)
LINK.c = $(WINLINK) -nologo $(LDFLAGS) -out:$@
LINK.cc = $(WINLINK) -nologo $(LDFLAGS) -out:$@
#--------------------------------------------------
# Determine ld flags
#USR_DIRS = $(dir $(PRODNAME_DEPLIBS)) $(dir $(PROD_DEPLIBS))\
# $(dir $(USR_DEPLIBS))
#USR_LDFLAGS += $(sort $(USR_DIRS:%=-L%))
# Overrides for CONFIG_COMMON default
POSIX_CPPFLAGS_YES =
#--------------------------------------------------
# UseManifestTool.pl checks MS Visual c++ compiler version number to
# decide whether or not to use the Manifest Tool command to embed the
# linker created .manifest file into a library or product target.
# useManifestTool.pl returns 0(don't use) or 1(use).
#
ifeq ($(shell $(PERL) $(EPICS_BASE_TOOLS)/useManifestTool.pl),1)
MT_DLL_COMMAND = mt.exe /manifest $@.manifest "/outputresource:$@;\#2"
MT_EXE_COMMAND = mt.exe /manifest $@.manifest "/outputresource:$@;\#1"
endif

View File

@@ -1,12 +0,0 @@
#*************************************************************************
# Copyright (c) 2002 The University of Chicago, as Operator of Argonne
# National Laboratory.
# Copyright (c) 2002 The Regents of the University of California, as
# Operator of Los Alamos National Laboratory.
# EPICS BASE Versions 3.13.7
# and higher are distributed subject to a Software License Agreement found
# in file LICENSE that is included with this distribution.
#*************************************************************************
# cygwin-x86 is the new name for cygwin32
-include $(EPICS_BASE)/config/CONFIG.Host.cygwin32

View File

@@ -1,63 +0,0 @@
#*************************************************************************
# Copyright (c) 2002 The University of Chicago, as Operator of Argonne
# National Laboratory.
# Copyright (c) 2002 The Regents of the University of California, as
# Operator of Los Alamos National Laboratory.
# EPICS BASE Versions 3.13.7
# and higher are distributed subject to a Software License Agreement found
# in file LICENSE that is included with this distribution.
#*************************************************************************
# CONFIG.Host.cygwin32
#
# This file is maintained by the EPICS community.
# Sites may override these definitions in CONFIG_SITE.Host.cygwin32
ARCH_CLASS = cygwin32
# cygwin32 is a unix-like arch
# include definitions common to all Unix archs
include $(EPICS_BASE)/config/CONFIG.Host.UnixCommon
EXE=.exe
#==========================
#These overrides remove -ansi because -ansi eliminates strdup
GCC_ANSI = $(GCC)
GCC_STRICT = $(GCC) -pedantic
G++_NORMAL = $(G++) -pedantic
G++_STRICT = $(G++) -pedantic
#==========================
#This override will eliminate warnings for old R3.13 extensions
#GCC_WARN_YES =
#==========================
# These are overrides of ANSI and CPLUSPLUS values in CONFIG_SITE
# since OS vendor compilers ACC and CCC are not defined here for cygwin32
ANSI=GCC
CPLUSPLUS=G++
# Shared libraries not implemented yet
SHARED_LIBRARIES=NO
#==========================
# Fix for cygwin32 beta17.1 includes
#OP_SYS_INCLUDES += /usr/local/include/g++
#==========================
ARCH_DEP_CPPFLAGS = -DCYGWIN32 -U_WIN32
ARCH_DEP_LDLIBS =
OP_SYS_LDLIBS =
# cygwin32 overrides to eliminate following warning message -
# -fPIC ignored for target (all code is position independent)
GCC_DEP_CFLAGS = -D_REENTRANT
G++_DEP_CFLAGS = -D_REENTRANT
#POSIX_SOURCE eliminates select()
#POSIX_CPPFLAGS_YES = -D_POSIX_SOURCE
POSIX_CPPFLAGS_YES = -D_POSIX_THREADS -D_POSIX_TIMERS
# Runtime ldflags
RUNTIME_LIBS =$(EPICS_BASE)/lib/$(EPICS_HOST_ARCH)\
$(EPICS_EXTENSIONS)/lib/$(EPICS_HOST_ARCH)
RUNTIME_LDFLAGS = $(RUNTIME_LIBS:%=-Wl,-rpath,%)

View File

@@ -1,11 +0,0 @@
#*************************************************************************
# Copyright (c) 2002 The University of Chicago, as Operator of Argonne
# National Laboratory.
# Copyright (c) 2002 The Regents of the University of California, as
# Operator of Los Alamos National Laboratory.
# EPICS BASE Versions 3.13.7
# and higher are distributed subject to a Software License Agreement found
# in file LICENSE that is included with this distribution.
#*************************************************************************
-include $(EPICS_BASE)/config/CONFIG.Host.Darwin

View File

@@ -1,13 +0,0 @@
#*************************************************************************
# Copyright (c) 2002 The University of Chicago, as Operator of Argonne
# National Laboratory.
# Copyright (c) 2002 The Regents of the University of California, as
# Operator of Los Alamos National Laboratory.
# EPICS BASE Versions 3.13.7
# and higher are distributed subject to a Software License Agreement found
# in file LICENSE that is included with this distribution.
#*************************************************************************
-include $(EPICS_BASE)/config/CONFIG.Host.Darwin
OP_SYS_CFLAGS += "-isysroot /Developer/SDKs/MacOSX10.4u.sdk -arch ppc -arch i386"
OP_SYS_LDFLAGS += "-Wl,-syslibroot,/Developer/SDKs/MacOSX10.4u.sdk -arch ppc -arch i386"

View File

@@ -1,11 +0,0 @@
#*************************************************************************
# Copyright (c) 2002 The University of Chicago, as Operator of Argonne
# National Laboratory.
# Copyright (c) 2002 The Regents of the University of California, as
# Operator of Los Alamos National Laboratory.
# EPICS BASE Versions 3.13.7
# and higher are distributed subject to a Software License Agreement found
# in file LICENSE that is included with this distribution.
#*************************************************************************
-include $(EPICS_BASE)/config/CONFIG.Host.Darwin

View File

@@ -1,34 +0,0 @@
#*************************************************************************
# Copyright (c) 2006 UChicago Argonne LLC, as Operator of Argonne
# National Laboratory.
# Copyright (c) 2002 The Regents of the University of California, as
# Operator of Los Alamos National Laboratory.
# EPICS BASE is distributed subject to a Software License Agreement found
# in file LICENSE that is included with this distribution.
#*************************************************************************
#
# This file is maintained by the EPICS community.
# Sites may override these definitions in CONFIG_SITE.Host.freebsd
OS_CLASS = freebsd
# Include definitions common to all Unix archs
include $(EPICS_BASE)/config/CONFIG.Host.UnixCommon
CODE_CPPFLAGS = -D_REENTRANT
POSIX_CPPFLAGS = -D_POSIX_THREADS
POSIX_LDLIBS = -lpthread
# -D_BSD_SOURCE for gethostname() in unistd.h as needed by cacChannelIO.cpp.
OP_SYS_CPPFLAGS += -D_BSD_SOURCE
OP_SYS_CPPFLAGS += -Dfreebsd
# Set runtime path for shared libraries
RUNTIME_LDFLAGS = $(SHRLIB_SEARCH_FULLPATHDIRS:%=-Wl,-rpath,%)
# Definitions used when COMMANDLINE_LIBRARY is READLINE
LDLIBS_READLINE = -lreadline -lcurses
GNU_LDLIBS_YES = -lgcc_pic

View File

@@ -1,74 +0,0 @@
#*************************************************************************
# Copyright (c) 2002 The University of Chicago, as Operator of Argonne
# National Laboratory.
# Copyright (c) 2002 The Regents of the University of California, as
# Operator of Los Alamos National Laboratory.
# EPICS BASE Versions 3.13.7
# and higher are distributed subject to a Software License Agreement found
# in file LICENSE that is included with this distribution.
#*************************************************************************
# CONFIG.Host.hp700
#
# This file is maintained by the EPICS community.
# Sites may override these definitions in CONFIG_SITE.Host.hp700
ARCH_CLASS = hpux
SHARED_LIBRARIES=YES
# Include definitions common to all Unix archs
include $(EPICS_BASE)/config/CONFIG.Host.UnixCommon
SHRLIB_SUFFIX = .sl
AR = ar
ARFLAGS = -rc
# Configure OS vendor C compiler
ACC = cc
ACC_ANSI = $(ACC) -Aa
ACC_STRICT = $(ACC) -Aa
ACC_TRAD = $(ACC) -Ac
ACC_WARN_YES =
ACC_WARN_NO = -w
ACC_OPT_YES = -O
ACC_OPT_NO = -g
# Always keep libc shared to force using the one supplied with the
# target machine (HP system and libc must match - important e.g. for
# multi-CPU-systems)
ACC_SLDFLAGS_YES= -Wl,-a,archive -l:libc.sl
ACC_SFLAGS_NO =
ACC_SLIBS_YES =
ACC_SLIBS_NO =
ACC_SHRLIB_LDFLAGS_YES = -b
# aCC HP C++ compiler
CCC = aCC
# Suppress bogus warnings created by the aCC compiler
CCC_NORMAL = $(CCC) -AA -Aa -mt +W302 +W829 +W818 +W392 +W469 +W495 +W749 +W667 +W392 +W684
CCC_STRICT = $(CCC) -AA -Aa -mt
CCC_TEMPL_INST_FLAG =
CCC_WARN_YES = +w
CCC_WARN_NO =
CCC_OPT_YES = +O3
CCC_OPT_NO = -g
# Always keep libc shared to force using the one supplied with the
# target machine (HP system and libc must match - important e.g. for
# multi-CPU-systems)
CCC_SLDFLAGS_YES= -Wl,-a,archive -l:libc.sl
CCC_SFLAGS_NO=
CCC_SLIBS_YES =
CCC_SLIBS_NO=
CCC_SHRLIB_LDFLAGS_YES = -b
CCC_DEPENDS_FLAG = +m
# Portability across different PA-RISC architecture versions, position
# independent code, "-mt" (s.a.) handles all the posix stuff
ARCH_DEP_CPPFLAGS = -DHP_UX +DAportable +z
ARCH_DEP_CFLAGS = -D_HPUX_SOURCE
# Set runtime path for shared libraries
empty:= # trick from the make docs...
space:= $(empty) $(empty)
RUNTIME_LDFLAGS_YES = -Wl,+b$(subst $(space),:,$(sort $(SHRLIB_SEARCH_DIRS))),+s
RUNTIME_LDFLAGS += $(RUNTIME_LDFLAGS_$(SHARED_LIBRARIES))

View File

@@ -1,12 +0,0 @@
#*************************************************************************
# Copyright (c) 2002 The University of Chicago, as Operator of Argonne
# National Laboratory.
# Copyright (c) 2002 The Regents of the University of California, as
# Operator of Los Alamos National Laboratory.
# EPICS BASE Versions 3.13.7
# and higher are distributed subject to a Software License Agreement found
# in file LICENSE that is included with this distribution.
#*************************************************************************
# hpux-parisc is the new name for hp700
-include $(EPICS_BASE)/config/CONFIG.Host.hp700

View File

@@ -1,49 +0,0 @@
#*************************************************************************
# Copyright (c) 2002 The University of Chicago, as Operator of Argonne
# National Laboratory.
# Copyright (c) 2002 The Regents of the University of California, as
# Operator of Los Alamos National Laboratory.
# EPICS BASE Versions 3.13.7
# and higher are distributed subject to a Software License Agreement found
# in file LICENSE that is included with this distribution.
#*************************************************************************
# CONFIG.Host.hpux-parisc-gnu
#
# This file is maintained by the EPICS community.
# Sites may override these definitions in CONFIG_SITE.Host.hpux-parisc-gnu
ARCH_CLASS = hpux
SHARED_LIBRARIES=YES
# Include definitions common to all Unix archs
include $(EPICS_BASE)/config/CONFIG.Host.UnixCommon
AR = ar -rc
ARCMD = $(AR) $@
#==========================
# These are overrides of ANSI and CPLUSPLUS values in CONFIG_SITE
ANSI=GCC
CPLUSPLUS=G++
#==========================
# Always keep libc shared to force using the one supplied with the
# target machine (HP system and libc must match - important e.g. for
# multi-CPU-systems)
GCC_SLDFLAGS_YES = -l:libc.sl
G++_SLDFLAGS_YES = -l:libc.sl
# socket and nsl needed by libca.a
#ARCH_DEP_LDLIBS += -lsocket -lnsl
ARCH_DEP_LDLIBS += -lpthread
ARCH_DEP_CPPFLAGS += -D_PTHREADS -DOSITHREAD_USE_DEFAULT_STACK
# Allows R3.13 built extensions to load R3.14 shared libs
SYS_DLL_LIBS_hpux += pthread
# Set runtime path for shared libraries
empty:= # trick from the make docs...
space:= $(empty) $(empty)
RUNTIME_LDFLAGS_YES = -Wl,+b$(subst $(space),:,$(sort $(SHRLIB_SEARCH_DIRS))),+s
RUNTIME_LDFLAGS += $(RUNTIME_LDFLAGS_$(SHARED_LIBRARIES))

View File

@@ -1,23 +0,0 @@
#*************************************************************************
# Copyright (c) 2002 The University of Chicago, as Operator of Argonne
# National Laboratory.
# Copyright (c) 2002 The Regents of the University of California, as
# Operator of Los Alamos National Laboratory.
# EPICS BASE Versions 3.13.7
# and higher are distributed subject to a Software License Agreement found
# in file LICENSE that is included with this distribution.
#*************************************************************************
-include $(EPICS_BASE)/config/CONFIG.Host.Linux
ARCH_CLASS = ppc
ARCH_DEP_CPPFLAGS += -D_ppc_
GNU_DIR = /usr
GCC = $(GNU_BIN)/gcc
G++ = $(GNU_BIN)/g++
ARCH_DEP_LDLIBS = -lgcc

View File

@@ -1,12 +0,0 @@
#*************************************************************************
# Copyright (c) 2002 The University of Chicago, as Operator of Argonne
# National Laboratory.
# Copyright (c) 2002 The Regents of the University of California, as
# Operator of Los Alamos National Laboratory.
# EPICS BASE Versions 3.13.7
# and higher are distributed subject to a Software License Agreement found
# in file LICENSE that is included with this distribution.
#*************************************************************************
# linux-x86 is the new name for linux
-include $(EPICS_BASE)/config/CONFIG.Host.Linux

View File

@@ -1,11 +0,0 @@
#*************************************************************************
# Copyright (c) 2002 The University of Chicago, as Operator of Argonne
# National Laboratory.
# Copyright (c) 2002 The Regents of the University of California, as
# Operator of Los Alamos National Laboratory.
# EPICS BASE Versions 3.13.7
# and higher are distributed subject to a Software License Agreement found
# in file LICENSE that is included with this distribution.
#*************************************************************************
-include $(EPICS_BASE)/config/CONFIG.Host.Linux

View File

@@ -1,16 +0,0 @@
#*************************************************************************
# Copyright (c) 2002 The University of Chicago, as Operator of Argonne
# National Laboratory.
# Copyright (c) 2002 The Regents of the University of California, as
# Operator of Los Alamos National Laboratory.
# EPICS BASE Versions 3.13.7
# and higher are distributed subject to a Software License Agreement found
# in file LICENSE that is included with this distribution.
#*************************************************************************
-include $(EPICS_BASE)/config/CONFIG.Host.Linux
ARCH_CLASS = Linux
ARCH_DEP_CFLAGS = -D_X86_64_ -Dlinux

View File

@@ -1,12 +0,0 @@
#*************************************************************************
# Copyright (c) 2002 The University of Chicago, as Operator of Argonne
# National Laboratory.
# Copyright (c) 2002 The Regents of the University of California, as
# Operator of Los Alamos National Laboratory.
# EPICS BASE Versions 3.13.7
# and higher are distributed subject to a Software License Agreement found
# in file LICENSE that is included with this distribution.
#*************************************************************************
-include $(EPICS_BASE)/config/CONFIG.Host.linux-x86_64

View File

@@ -1,59 +0,0 @@
#*************************************************************************
# Copyright (c) 2002 The University of Chicago, as Operator of Argonne
# National Laboratory.
# Copyright (c) 2002 The Regents of the University of California, as
# Operator of Los Alamos National Laboratory.
# EPICS BASE Versions 3.13.7
# and higher are distributed subject to a Software License Agreement found
# in file LICENSE that is included with this distribution.
#*************************************************************************
# CONFIG.Host.sgi
#
# This file is maintained by the EPICS community.
# Sites may override these definitions in CONFIG_SITE.Host.sgi
ARCH_CLASS = sgi
# Include definitions common to all Unix archs
include $(EPICS_BASE)/config/CONFIG.Host.UnixCommon
AR = ar
# Configure OS vendor C compiler
ACC = cc
ACC_ANSI = $(ACC) -xansi
ACC_STRICT = $(ACC) -xansi
ACC_TRAD = $(ACC) -cckr -Xs
ACC_WARN_YES =
ACC_WARN_NO = -w
ACC_OPT_YES = -O
ACC_OPT_NO = -g
ACC_SFLAGS_YES= -Bstatic
ACC_SFLAGS_NO=
ACC_SLIBS_YES =
ACC_SLIBS_NO=
ACC_SHRLIB_CFLAGS_YES = -KPIC
ACC_SHRLIB_LDFLAGS_YES = -shared
# Configure OS vendor C++ compiler
CCC = CC
CCC_NORMAL = $(CCC)
CCC_STRICT = $(CCC)
CCC_TEMPL_INST_FLAG =
CCC_WARN_YES =
CCC_WARN_NO =
CCC_OPT_YES = -O
CCC_OPT_NO = -g
CCC_SFLAGS_YES= -Bstatic
CCC_SFLAGS_NO=
CCC_SLIBS_YES =
CCC_SLIBS_NO=
CCC_DEPENDS_FLAG =
CCC_SHRLIB_CFLAGS_YES = -KPIC
CCC_SHRLIB_LDFLAGS_YES = -shared
####KRCC = ??
ARCH_DEP_CFLAGS = -DSGI
ARCH_DEP_LDFLAGS =

View File

@@ -1,95 +0,0 @@
#*************************************************************************
# Copyright (c) 2002 The University of Chicago, as Operator of Argonne
# National Laboratory.
# Copyright (c) 2002 The Regents of the University of California, as
# Operator of Los Alamos National Laboratory.
# EPICS BASE Versions 3.13.7
# and higher are distributed subject to a Software License Agreement found
# in file LICENSE that is included with this distribution.
#*************************************************************************
# CONFIG.Host.solaris
#
# This file is maintained by the EPICS community.
# Sites may override these definitions in CONFIG_SITE.Host.solaris
ARCH_CLASS = solaris
# Include definitions common to all Unix archs
include $(EPICS_BASE)/config/CONFIG.Host.UnixCommon
#
# required by sun's C++ compiler
#
AR = ar
_AR = $(AR) $(ARFLAGS)
G++_AR = $(_AR)
CCC_AR = $(CCC) -xar -o
ARCMD = $($(CPLUSPLUS)_AR) $@
RANLIB =
SPARCWORKS = /opt/SUNWspro
# Configure OS vendor C compiler
ACC = $(SPARCWORKS)/bin/cc
ACC_ANSI = $(ACC) -Xa -v
ACC_STRICT = $(ACC) -Xc -v
ACC_TRAD = $(ACC) -Xs
ACC_DEP_CFLAGS = -KPIC -D_REENTRANT
ACC_WARN_YES =
ACC_WARN_NO = -w
ACC_OPT_YES = -O
ACC_OPT_NO = -g
ACC_SFLAGS_YES= -Bstatic
ACC_SFLAGS_NO=
ACC_SLIBS_YES= -lw -lintl -Bdynamic -ldl -Bstatic
ACC_SLIBS_NO=
ACC_SHRLIB_CFLAGS_YES =
ACC_SHRLIB_LDFLAGS_YES = -G -h $@
# Configure OS vendor C++ compiler
CCC = $(SPARCWORKS)/bin/CC
CCC_NORMAL = $(CCC) +p
CCC_STRICT = $(CCC) +p
CCC_DEP_CFLAGS = -KPIC -D_REENTRANT
CCC_TEMPL_INST_FLAG =
CCC_WARN_YES = +w
CCC_WARN_NO =
CCC_OPT_YES = -O
CCC_OPT_NO = -g
CCC_SFLAGS_YES= -Bstatic
CCC_SFLAGS_NO=
CCC_SLIBS_YES= -lw -lintl -Bdynamic -ldl -Bstatic
CCC_SLIBS_NO=
CCC_DEPENDS_FLAG = -xM1
CCC_SHRLIB_CFLAGS_YES =
CCC_SHRLIB_LDFLAGS_YES = -G -h $@
SOLARIS_VERSION = $(subst 5.,,$(shell uname -r))
ARCH_DEP_CPPFLAGS += -DSOLARIS=$(SOLARIS_VERSION)
POSIX_CPPFLAGS_YES += -D__EXTENSIONS__ -mt
ARCH_DEP_LDFLAGS += -mt
# socket and nsl needed by libca.a when SHARED_LIBRARIES = NO
ARCH_DEP_LDLIBS += -lsocket -lnsl
ARCH_DEP_LDLIBS += -lposix4 -lpthread
ARCH_DEP_LDLIBS_8 += -lCrun -lc -lCstd
ARCH_DEP_LDLIBS_9 += -lCrun -lc -lCstd
ARCH_DEP_LDLIBS_10 += -lCrun -lc -lCstd
ARCH_DEP_LDLIBS += $(ARCH_DEP_LDLIBS_$(SOLARIS_VERSION))
#Allows R3.13 built extensions to load R3.14 shared libs
SYS_DLL_LIBS_solaris_8 = Crun
SYS_DLL_LIBS_solaris_9 = Crun
SYS_DLL_LIBS_solaris_10 = Crun
SYS_DLL_LIBS_solaris += posix4 pthread $(SYS_DLL_LIBS_solaris_$(SOLARIS_VERSION))
# Runtime ldflags
RUNTIME_LDFLAGS =$(addprefix -R,$(EPICS_BASE)/lib/$(EPICS_HOST_ARCH)\
$(EPICS_EXTENSIONS)/lib/$(EPICS_HOST_ARCH))
OP_SYS_LDFLAGS = -z ignore -z combreloc -z lazyload

View File

@@ -1,12 +0,0 @@
#*************************************************************************
# Copyright (c) 2002 The University of Chicago, as Operator of Argonne
# National Laboratory.
# Copyright (c) 2002 The Regents of the University of California, as
# Operator of Los Alamos National Laboratory.
# EPICS BASE Versions 3.13.7
# and higher are distributed subject to a Software License Agreement found
# in file LICENSE that is included with this distribution.
#*************************************************************************
# solaris-sparc is the new name for solaris
-include $(EPICS_BASE)/config/CONFIG.Host.solaris

View File

@@ -1,13 +0,0 @@
#*************************************************************************
# Copyright (c) 2002 The University of Chicago, as Operator of Argonne
# National Laboratory.
# Copyright (c) 2002 The Regents of the University of California, as
# Operator of Los Alamos National Laboratory.
# EPICS BASE Versions 3.13.7
# and higher are distributed subject to a Software License Agreement found
# in file LICENSE that is included with this distribution.
#*************************************************************************
# solaris-sparc is the new name for solaris
-include $(EPICS_BASE)/config/CONFIG.Host.solaris

View File

@@ -1,13 +0,0 @@
#*************************************************************************
# Copyright (c) 2002 The University of Chicago, as Operator of Argonne
# National Laboratory.
# Copyright (c) 2002 The Regents of the University of California, as
# Operator of Los Alamos National Laboratory.
# EPICS BASE Versions 3.13.7
# and higher are distributed subject to a Software License Agreement found
# in file LICENSE that is included with this distribution.
#*************************************************************************
# solaris-sparc is the new name for solaris
-include $(EPICS_BASE)/config/CONFIG.Host.solarisGnu

View File

@@ -1,13 +0,0 @@
#*************************************************************************
# Copyright (c) 2002 The University of Chicago, as Operator of Argonne
# National Laboratory.
# Copyright (c) 2002 The Regents of the University of California, as
# Operator of Los Alamos National Laboratory.
# EPICS BASE Versions 3.13.7
# and higher are distributed subject to a Software License Agreement found
# in file LICENSE that is included with this distribution.
#*************************************************************************
# solaris-sparc is the new name for solaris
-include $(EPICS_BASE)/config/CONFIG.Host.solaris

View File

@@ -1,17 +0,0 @@
#*************************************************************************
# Copyright (c) 2002 The University of Chicago, as Operator of Argonne
# National Laboratory.
# Copyright (c) 2002 The Regents of the University of California, as
# Operator of Los Alamos National Laboratory.
# EPICS BASE Versions 3.13.7
# and higher are distributed subject to a Software License Agreement found
# in file LICENSE that is included with this distribution.
#*************************************************************************
# solaris-sparc is the new name for solaris
-include $(EPICS_BASE)/config/CONFIG.Host.solaris
ARCH_DEP_CFLAGS += -xarch=generic64
ARCH_DEP_CXXFLAGS += -xarch=generic64
ARCH_DEP_LDFLAGS += -xarch=generic64

View File

@@ -1,17 +0,0 @@
#*************************************************************************
# Copyright (c) 2002 The University of Chicago, as Operator of Argonne
# National Laboratory.
# Copyright (c) 2002 The Regents of the University of California, as
# Operator of Los Alamos National Laboratory.
# EPICS BASE Versions 3.13.7
# and higher are distributed subject to a Software License Agreement found
# in file LICENSE that is included with this distribution.
#*************************************************************************
# solaris-sparc is the new name for solaris
-include $(EPICS_BASE)/config/CONFIG.Host.solarisGnu
ARCH_DEP_CFLAGS += -mcpu=v9 -m64
ARCH_DEP_CXXFLAGS += -mcpu=v9 -m64
ARCH_DEP_LDFLAGS += -mcpu=v9 -m64

View File

@@ -1,19 +0,0 @@
#*************************************************************************
# Copyright (c) 2002 The University of Chicago, as Operator of Argonne
# National Laboratory.
# Copyright (c) 2002 The Regents of the University of California, as
# Operator of Los Alamos National Laboratory.
# EPICS BASE Versions 3.13.7
# and higher are distributed subject to a Software License Agreement found
# in file LICENSE that is included with this distribution.
#*************************************************************************
# CONFIG.Host.solaris-x86
#
# This file is maintained by the EPICS community.
# Sites may override these definitions in CONFIG_SITE.Host.solaris-x86
-include $(EPICS_BASE)/config/CONFIG.Host.solaris
# Solaris on x86
ARCH_DEP_CPPFLAGS += -D_X86_

View File

@@ -1,19 +0,0 @@
#*************************************************************************
# Copyright (c) 2002 The University of Chicago, as Operator of Argonne
# National Laboratory.
# Copyright (c) 2002 The Regents of the University of California, as
# Operator of Los Alamos National Laboratory.
# EPICS BASE Versions 3.13.7
# and higher are distributed subject to a Software License Agreement found
# in file LICENSE that is included with this distribution.
#*************************************************************************
# CONFIG.Host.solaris-x86-gnu
#
# This file is maintained by the EPICS community.
# Sites may override these definitions in CONFIG_SITE.Host.solaris-x86
-include $(EPICS_BASE)/config/CONFIG.Host.solarisGnu
# Solaris on x86
ARCH_DEP_CPPFLAGS += -D_X86_

View File

@@ -1,22 +0,0 @@
#*************************************************************************
# Copyright (c) 2002 The University of Chicago, as Operator of Argonne
# National Laboratory.
# Copyright (c) 2002 The Regents of the University of California, as
# Operator of Los Alamos National Laboratory.
# EPICS BASE Versions 3.13.7
# and higher are distributed subject to a Software License Agreement found
# in file LICENSE that is included with this distribution.
#*************************************************************************
# CONFIG.Host.solarisGnu
#
# This file is maintained by the EPICS community.
# Sites may override these definitions in CONFIG_SITE.Host.solarisGnu
include $(EPICS_BASE)/config/CONFIG.Host.solaris
#==========================
# These are overrides of ANSI and CPLUSPLUS values in CONFIG_SITE
ANSI=GCC
CPLUSPLUS=G++
#==========================

View File

@@ -1,98 +0,0 @@
#*************************************************************************
# Copyright (c) 2002 The University of Chicago, as Operator of Argonne
# National Laboratory.
# Copyright (c) 2002 The Regents of the University of California, as
# Operator of Los Alamos National Laboratory.
# EPICS BASE Versions 3.13.7
# and higher are distributed subject to a Software License Agreement found
# in file LICENSE that is included with this distribution.
#*************************************************************************
# CONFIG.Host.sun4
#
# This file is maintained by the EPICS community.
# Sites may override these definitions in CONFIG_SITE.Host.sun4
ARCH_CLASS = sun4
# Include definitions common to all Unix archs
include $(EPICS_BASE)/config/CONFIG.Host.UnixCommon
#
# required by sun's C++ compiler
#
AR = ar
_AR = $(AR) $(ARFLAGS)
G++_AR = $(_AR)
CCC_AR = $(CCC) -xar -o
ARCMD = $($(CPLUSPLUS)_AR) $@
RANLIB = ranlib
RANLIBFLAGS = -t
# Configure OS vendor C compilers
ACC = /usr/lang/acc
ACC_ANSI = $(ACC) -Xa
ACC_STRICT = $(ACC) -Xc
ACC_TRAD = $(ACC) -Xs
ACC_WARN_YES = -vc
ACC_WARN_NO = -w
ACC_OPT_YES = -O
ACC_OPT_NO = -g
ACC_SFLAGS_YES= -Bstatic
ACC_SFLAGS_NO=
ACC_SLIBS_YES=
ACC_SLIBS_NO=
#ACC_OP_SYS_LDFLAGS = -L$(SPECIAL_LANG)
ACC_SHRLIB_CFLAGS_YES = -pic
ACC_SHRLIB_LDFLAGS_YES = -assert pure-text -h $@
SUNCC = cc
SUNCC_ANSI = echo SUNCC_ANSI not defined
SUNCC_STRICT = echo SUNCC_STRICT not defined
SUNCC_TRAD = $(SUNCC)
SUNCC_WARN_YES =
SUNCC_WARN_NO = -w
SUNCC_OPT_YES = -O
SUNCC_OPT_NO = -g
SUNCC_SFLAGS_YES= -Bstatic
SUNCC_SFLAGS_NO=
SUNCC_SLIBS_YES=
SUNCC_SLIBS_NO=
SUNCC_SHRLIB_CFLAGS_YES = -pic
SUNCC_SHRLIB_LDFLAGS_YES = -assert pure-text -h $@
# Configure OS vendor C++ compiler
CCC = /usr/lang/CC
CCC_NORMAL = $(CCC)
CCC_STRICT = $(CCC)
CCC_TEMPL_INST_FLAG =
CCC_WARN_YES =
CCC_WARN_NO =
CCC_TEMPL_INST_FLAG =
CCC_WARN_YES = +w
CCC_WARN_NO =
CCC_OPT_YES = -O
CCC_OPT_NO = -g
CCC_SFLAGS_YES= -Bstatic
CCC_SFLAGS_NO=
CCC_SLIBS_YES=
CCC_SLIBS_NO=
CCC_SHRLIB_CFLAGS_YES = -pic
CCC_SHRLIB_LDFLAGS_YES = -assert pure-text -h $@
CCC_DEPENDS_FLAG = -xM1
GCC_ANSI += -D__USE_FIXED_PROTOTYPES__
GCC_STRICT += -D__USE_FIXED_PROTOTYPES__
ACC_ARCH_DEP_LDLIBS =
GCC_ARCH_DEP_LDLIBS = -liberty
ARCH_DEP_LDLIBS = $($(ANSI)_ARCH_DEP_LDLIBS)
ARCH_DEP_CFLAGS = -DSUNOS4
#SPECIAL_LANG = /usr/lang/SC3.0.1
#SPECIAL_LANG = /usr/lang/lib
# Runtime ldflags
RUNTIME_LDFLAGS =$(addprefix -R,$(EPICS_BASE)/lib/$(EPICS_HOST_ARCH)\
$(EPICS_EXTENSIONS)/lib/$(EPICS_HOST_ARCH))

View File

@@ -1,12 +0,0 @@
#*************************************************************************
# Copyright (c) 2002 The University of Chicago, as Operator of Argonne
# National Laboratory.
# Copyright (c) 2002 The Regents of the University of California, as
# Operator of Los Alamos National Laboratory.
# EPICS BASE Versions 3.13.7
# and higher are distributed subject to a Software License Agreement found
# in file LICENSE that is included with this distribution.
#*************************************************************************
# sun4-sparc is the new name for sun4
-include $(EPICS_BASE)/config/CONFIG.Host.sun4

View File

@@ -1,13 +0,0 @@
#*************************************************************************
# Copyright (c) 2002 The University of Chicago, as Operator of Argonne
# National Laboratory.
# Copyright (c) 2002 The Regents of the University of California, as
# Operator of Los Alamos National Laboratory.
# EPICS BASE Versions 3.13.7
# and higher are distributed subject to a Software License Agreement found
# in file LICENSE that is included with this distribution.
#*************************************************************************
# win32-x86 is the new name for WIN32
-include $(EPICS_BASE)/config/CONFIG.Host.WIN32

View File

@@ -1,12 +0,0 @@
#*************************************************************************
# Copyright (c) 2002 The University of Chicago, as Operator of Argonne
# National Laboratory.
# Copyright (c) 2002 The Regents of the University of California, as
# Operator of Los Alamos National Laboratory.
# EPICS BASE Versions 3.13.7
# and higher are distributed subject to a Software License Agreement found
# in file LICENSE that is included with this distribution.
#*************************************************************************
# win32-x86-borland is the new name for Borland
-include $(EPICS_BASE)/config/CONFIG.Host.Borland

View File

@@ -1,61 +0,0 @@
#*************************************************************************
# Copyright (c) 2002 The University of Chicago, as Operator of Argonne
# National Laboratory.
# Copyright (c) 2002 The Regents of the University of California, as
# Operator of Los Alamos National Laboratory.
# EPICS BASE Versions 3.13.7
# and higher are distributed subject to a Software License Agreement found
# in file LICENSE that is included with this distribution.
#*************************************************************************
#
# This file is maintained by the EPICS community.
# Sites may override these definitions in CONFIG_SITE.Host.win32-x86-cygwin
# Include definitions common to all Unix archs
include $(EPICS_BASE)/config/CONFIG.Host.UnixCommon
EXE = .exe
SHARED_LIBRARIES = NO
ARCH_CLASS = WIN32
AR = ar -rc
ARCMD = $(AR) $@
RANLIB = ranlib -t
ANSI=GCC
CPLUSPLUS=G++
# Dont use -ansi: -ansi eliminates strdup and _tempnam
GCC_ANSI = $(GCC)
GCC_STRICT = $(GCC) -pedantic
G++_NORMAL = $(G++) -pedantic
G++_STRICT = $(G++) -pedantic
# Dont use -fPIC: with -fPIC we get
# "warning: -fPIC ignored for target (all code is position independent) "
GCC_DEP_CFLAGS =
G++_DEP_CFLAGS =
OP_SYS_CFLAGS =
OP_SYS_CPPFLAGS = -mno-cygwin
OP_SYS_CXXFLAGS += -D__cplusplus
OP_SYS_LDFLAGS += -mno-cygwin
POSIX_CPPFLAGS_YES =
# With no-cygwin option:
# compiler defines _X86_ 1
# compiler defines __MSVCRT__ 1
# compiler defines __MINGW32__ 1
# compiler defines __WIN32 1
# compiler defines __WIN32__ 1
# compiler defines _WIN32 1
# compiler defines WIN32 1
# compiler defines WINNT 1
# compiler does not define __unix __unix__ unix
# compiler does not define __CYGWIN__ __CYGWIN32__
ARCH_DEP_LDLIBS = -lws2_32 -ladvapi32 -luser32 -lkernel32 -lwinmm

View File

@@ -1,11 +0,0 @@
#*************************************************************************
# Copyright (c) 2002 The University of Chicago, as Operator of Argonne
# National Laboratory.
# Copyright (c) 2002 The Regents of the University of California, as
# Operator of Los Alamos National Laboratory.
# EPICS BASE Versions 3.13.7
# and higher are distributed subject to a Software License Agreement found
# in file LICENSE that is included with this distribution.
#*************************************************************************
-include $(EPICS_BASE)/config/CONFIG.Host.WIN32

View File

@@ -1,57 +0,0 @@
#*************************************************************************
# Copyright (c) 2002 The University of Chicago, as Operator of Argonne
# National Laboratory.
# Copyright (c) 2002 The Regents of the University of California, as
# Operator of Los Alamos National Laboratory.
# EPICS BASE Versions 3.13.7
# and higher are distributed subject to a Software License Agreement found
# in file LICENSE that is included with this distribution.
#*************************************************************************
#
# This file is maintained by the EPICS community.
# Sites may override these definitions in CONFIG_SITE.Host.win32-x86-mingw
# Include definitions common to all Unix archs
include $(EPICS_BASE)/config/CONFIG.Host.UnixCommon
EXE = .exe
SHARED_LIBRARIES = NO
ARCH_CLASS = WIN32
AR = ar -rc
ARCMD = $(AR) $@
RANLIB = ranlib -t
ANSI=GCC
CPLUSPLUS=G++
# Compiler defines _X86_ 1
# Compiler defines __MSVCRT__ 1
# Compiler defines __MINGW32__ 1
# Compiler defines __WIN32 1
# Compiler defines __WINNT 1
# Compiler defines __WINNT__ 1
# Compiler defines __WIN32__ 1
# Compiler defines _WIN32 1
# Compiler defines WIN32 1
# Compiler defines WINNT 1
# Compiler does not define __unix __unix__ unix
OP_SYS_CFLAGS =
OP_SYS_CXXFLAGS += -D__cplusplus
GCC_DEP_CFLAGS =
G++_DEP_CFLAGS =
POSIX_CPPFLAGS_YES =
ARCH_DEP_LDLIBS = -lws2_32 -ladvapi32 -luser32 -lkernel32 -lwinmm
# Remove -ansi compile option for gcc (does not allow c++ type comments).
GCC_ANSI = $(GCC)
GCC_STRICT = $(GCC) -pedantic
G++_NORMAL = $(G++) -pedantic
G++_STRICT = $(G++) -pedantic

View File

@@ -1,148 +0,0 @@
#*************************************************************************
# Copyright (c) 2002 The University of Chicago, as Operator of Argonne
# National Laboratory.
# Copyright (c) 2002 The Regents of the University of California, as
# Operator of Los Alamos National Laboratory.
# EPICS BASE Versions 3.13.7
# and higher are distributed subject to a Software License Agreement found
# in file LICENSE that is included with this distribution.
#*************************************************************************
#
# This file contains definitions for Vx builds
#--------------------------------------------------
# operating system class (include/os/<os_class>)
OS_CLASS = vxWorks
#--------------------------------------------------
# vxWorks directory definitions
# The definitions VX_DIR, VX_GNU, GNU_DIR and GNU_LIB
# can be overridden for specific host architectures
# by creating a CONFIG_SITE.Vx.<host_arch> file with
# the override definitions.
# Tornado directory definitions
VX_INCLUDE_YES = $(VX_DIR)/target/h
VX_GNU_YES = $(VX_DIR)/host/$(WIND_HOST_TYPE)
VX_GNU_BIN_YES = $(VX_GNU)/bin
VX_GNU_LIB_YES = $(VX_GNU)/lib
# pre Torando directory definitions
VX_INCLUDE_NO = $(VX_DIR)/h
VX_GNU_BIN_NO = $(VX_GNU)/$(HOST_ARCH).$(ARCH_CLASS)/bin
VX_GNU_LIB_NO = $(VX_GNU)/$(HOST_ARCH).$(ARCH_CLASS)/lib
# directory definitions
VX_DIR = $(VX_DIR_$(TORNADO))
VX_INCLUDE = $(VX_INCLUDE_$(TORNADO))
VX_GNU = $(VX_GNU_$(TORNADO))
GNU_BIN = $(VX_GNU_BIN_$(TORNADO))
GNU_LIB = $(VX_GNU_LIB_$(TORNADO))
export GCC_EXEC_PREFIX = $(GNU_LIB)/gcc-lib/
#--------------------------------------------------
# VxWorks command definitions
GCC = $(GNU_BIN)/cc$(CMPLR_SUFFIX) -B$(GNU_LIB)/gcc-lib/ -nostdinc
AR = $(GNU_BIN)/ar$(CMPLR_SUFFIX)
CPP = $(GNU_BIN)/cc$(CMPLR_SUFFIX) -B$(GNU_LIB)/gcc-lib/ -nostdinc -x c -E
RANLIB = $(GNU_BIN)/ranlib$(CMPLR_SUFFIX)
LD = $(GNU_BIN)/ld$(CMPLR_SUFFIX) -r
#--------------------------------------------------
# Tornado C++ crosscompiler definitions
CPLUSPLUS_YES = G++
G++ = $(GNU_BIN)/cc$(CMPLR_SUFFIX) -B$(GNU_LIB)/gcc-lib/ -nostdinc
LD_G++ = $(GNU_BIN)/ld$(CMPLR_SUFFIX) -r
NM = $(GNU_BIN)/nm$(CMPLR_SUFFIX)$(HOSTEXE)
#--------------------------------------------------
# Pre Tornado C++ crosscompiler definitions
# These are pre tornado definitions for Hideos builds (defined for 68k only)
CPLUSPLUS_NO = CCC
CCC = $(GNU_DIR)/bin/sun3-g++ -B$(GNU_DIR)/lib/gcc-lib/ -nostdinc -DEXPL_TEMPL
LD_CCC = $(GNU_DIR)/bin/sun3-ld $(OLD_ARCH_DEP_LDFLAGS) -r
CCC_NORMAL = $(CCC) $(OLD_ARCH_DEP_CFLAGS)
CCC_STRICT = $(CCC) -ansi -pedantic -Wtraditional $(OLD_ARCH_DEP_CFLAGS)
CCC_TRAD = $(CCC) -traditional $(OLD_ARCH_DEP_CFLAGS)
CCC_TEMPL_INST_FLAG =
CCC_WARN_YES = -Wall
CCC_WARN_NO = -w
CCC_OPT_YES = -O2 -fstrength-reduce
CCC_OPT_NO =
CCC_DEPENDS_FLAG = -MM
CPU = 68000
OS = VXWORKS
OLD_ARCH_DEP_CFLAGS = --no-builtin -Wa,"-m68040" -DOS_EQ_$(OS) \
-DBOARD_EQ_$(BOARD) -DCPU_EQ_$(CPU) -DBOARD=$(BOARD)
OLD_ARCH_DEP_LDFLAGS = -Ur -N -T$(EPICS_BASE_BIN)/vxldscript.MRI
#--------------------------------------------------
# C compiler definitions
ANSI = GCC
#--------------------------------------------------
# Command definitions
CPLUSPLUS = $(CPLUSPLUS_$(TORNADO))
LD_CXX = $(LD_$(CPLUSPLUS))
#--------------------------------------------------
# Override flags in CONFIG_COMMON
GCC_DEP_CFLAGS = -D_REENTRANT
G++_DEP_CFLAGS = -D_REENTRANT
POSIX_CPPFLAGS_YES = -D_POSIX_SOURCE
#--------------------------------------------------
# Operating system flags
OP_SYS_INCLUDES = -I$(VX_INCLUDE)
OP_SYS_CFLAGS = -DvxWorks -DV5_vxWorks -fno-builtin
OP_SYS_LDFLAGS =
OP_SYS_LDLIBS =
# Fix for vxWorks headers using macros defined in
# vxWorks.h but not including vxWorks.h
ifeq ($(TORNADO), YES)
OP_SYS_CFLAGS += -include $(VX_INCLUDE)/vxWorks.h
endif
#--------------------------------------------------
# Optimization flag overrides
GCC_OPT_YES = -O2 -fstrength-reduce
GCC_OPT_NO = -g
G++_OPT_YES = -O2 -fstrength-reduce
G++_OPT_NO = -g
OPT_CFLAGS = $($(ANSI)_OPT_$(VX_OPT))
OPT_CXXFLAGS = $($(CPLUSPLUS)_OPT_$(VX_OPT))
#--------------------------------------------------
# Warning flag overrides
GCC_WARN_YES = -Wall
GCC_WARN_NO = -w
G++_WARN_YES = -Wall
G++_WARN_NO = -w
WARN_CFLAGS = $($(ANSI)_WARN_$(VX_WARN))
WARN_CXXFLAGS = $($(CPLUSPLUS)_WARN_$(VX_WARN))
#--------------------------------------------------
# Link definitions
LINK.c = $(LD) $(LDFLAGS) -o
LINK.cc = $(LD_CXX) $(LDFLAGS) -o
#--------------------------------------------------
# Munch definitions
MUNCH_SUFFIX=.munch
MUNCHNAME = $(LIBNAME:%=%$(MUNCH_SUFFIX))
#--------------------------------------------------
# The follow 2 exports prevent gnu cross-compiler
# from finding wrong assembler (as).
export WIND_BASE = $(VX_DIR)
export WIND_HOST_TYPE

View File

@@ -1,23 +0,0 @@
#*************************************************************************
# Copyright (c) 2002 The University of Chicago, as Operator of Argonne
# National Laboratory.
# Copyright (c) 2002 The Regents of the University of California, as
# Operator of Los Alamos National Laboratory.
# EPICS BASE Versions 3.13.7
# and higher are distributed subject to a Software License Agreement found
# in file LICENSE that is included with this distribution.
#*************************************************************************
#
# This file is maintained by the EPICS community.
# Vx GNU cross compiler suffix
CMPLR_SUFFIX = 68k
# For Vx directories of form:
# $(VX_DIR)/$(HOST_ARCH).$(ARCH_CLASS)/bin
ARCH_CLASS = 68k
# Architecture specific build flags
ARCH_DEP_CPPFLAGS = -DCPU=MC68040 -DCPU_FAMILY=MC680X0
ARCH_DEP_CFLAGS = -m68040

View File

@@ -1,30 +0,0 @@
#*************************************************************************
# Copyright (c) 2002 The University of Chicago, as Operator of Argonne
# National Laboratory.
# Copyright (c) 2002 The Regents of the University of California, as
# Operator of Los Alamos National Laboratory.
# EPICS BASE Versions 3.13.7
# and higher are distributed subject to a Software License Agreement found
# in file LICENSE that is included with this distribution.
#*************************************************************************
# CONFIG.Vx.frc5ce
# Vx GNU cross compiler suffix
CMPLR_SUFFIX = sparc
# For Vx directories of form:
# $(VX_DIR)/$(HOST_ARCH).$(ARCH_CLASS)/bin
ARCH_CLASS = sparc
# Architecture specific build flags
ARCH_DEP_CPPFLAGS = -DCPU=SPARC -DCPU_FAMILY=SPARC
ARCH_DEP_CFLAGS =
# Removed -O2 [24/12/96 PMM]
OLD_ARCH_DEP_CXXFLAGS = -fno-builtin -ansi -pipe -nostdinc -DCPU=SPARC \
-DVXWORKS -Dsigned= -Dvolatile= +V
# Definitions for pre Tornado c++ builds
CCC = CENTERLINE
CCC_NORMAL = $(VX_DIR)/bin/sun4/CCsparc
CCC_STRICT = $(VX_DIR)/bin/sun4/CCsparc

View File

@@ -1,28 +0,0 @@
#*************************************************************************
# Copyright (c) 2002 The University of Chicago, as Operator of Argonne
# National Laboratory.
# Copyright (c) 2002 The Regents of the University of California, as
# Operator of Los Alamos National Laboratory.
# EPICS BASE Versions 3.13.7
# and higher are distributed subject to a Software License Agreement found
# in file LICENSE that is included with this distribution.
#*************************************************************************
#
# This file is maintained by the EPICS community.
# Vx GNU cross compiler suffix
CMPLR_SUFFIX = mips
# For Vx directories of form:
# $(VX_DIR)/$(HOST_ARCH).$(ARCH_CLASS)/bin
ARCH_CLASS = mips
# Architecture specific build flags
ARCH_DEP_CPPFLAGS = -DCPU=R4000
ARCH_DEP_CFLAGS = -EB -mcpu=r4000 -mips3 -mgp32 -mfp32 -non_shared -G 0
# Arch specific flags
GCC += -fsigned-char
LD += -EB -X

View File

@@ -1,24 +0,0 @@
#*************************************************************************
# Copyright (c) 2002 The University of Chicago, as Operator of Argonne
# National Laboratory.
# Copyright (c) 2002 The Regents of the University of California, as
# Operator of Los Alamos National Laboratory.
# EPICS BASE Versions 3.13.7
# and higher are distributed subject to a Software License Agreement found
# in file LICENSE that is included with this distribution.
#*************************************************************************
#
# This file is maintained by the EPICS community.
# Vx GNU cross compiler suffix
CMPLR_SUFFIX = 68k
# For Vx directories of form:
# $(VX_DIR)/$(HOST_ARCH).$(ARCH_CLASS)/bin
ARCH_CLASS = 68k
# Architecture specific build flags
ARCH_DEP_CPPFLAGS = -DCPU=MC68060 -DCPU_FAMILY=MC680X0
ARCH_DEP_CFLAGS = -m68040

View File

@@ -1,24 +0,0 @@
#*************************************************************************
# Copyright (c) 2002 The University of Chicago, as Operator of Argonne
# National Laboratory.
# Copyright (c) 2002 The Regents of the University of California, as
# Operator of Los Alamos National Laboratory.
# EPICS BASE Versions 3.13.7
# and higher are distributed subject to a Software License Agreement found
# in file LICENSE that is included with this distribution.
#*************************************************************************
#
# This file is maintained by the EPICS community.
# Vx GNU cross compiler suffix
CMPLR_SUFFIX = 68k
# For Vx directories of form:
# $(VX_DIR)/$(HOST_ARCH).$(ARCH_CLASS)/bin
ARCH_CLASS = 68k
# Architecture specific build flags
ARCH_DEP_CPPFLAGS = -DCPU=MC68020
ARCH_DEP_CFLAGS = -m68020

View File

@@ -1,24 +0,0 @@
#*************************************************************************
# Copyright (c) 2002 The University of Chicago, as Operator of Argonne
# National Laboratory.
# Copyright (c) 2002 The Regents of the University of California, as
# Operator of Los Alamos National Laboratory.
# EPICS BASE Versions 3.13.7
# and higher are distributed subject to a Software License Agreement found
# in file LICENSE that is included with this distribution.
#*************************************************************************
#
# This file is maintained by the EPICS community.
# Vx GNU cross compiler suffix
CMPLR_SUFFIX = 68k
# For Vx directories of form:
# $(VX_DIR)/$(HOST_ARCH).$(ARCH_CLASS)/bin
ARCH_CLASS = 68k
# Architecture specific build flags
ARCH_DEP_CPPFLAGS = -DCPU=MC68030
ARCH_DEP_CFLAGS = -m68030

View File

@@ -1,23 +0,0 @@
#*************************************************************************
# Copyright (c) 2002 The University of Chicago, as Operator of Argonne
# National Laboratory.
# Copyright (c) 2002 The Regents of the University of California, as
# Operator of Los Alamos National Laboratory.
# EPICS BASE Versions 3.13.7
# and higher are distributed subject to a Software License Agreement found
# in file LICENSE that is included with this distribution.
#*************************************************************************
#
# This file is maintained by the EPICS community.
# Vx GNU cross compiler suffix
CMPLR_SUFFIX = ppc
# For Vx directories of form:
# $(VX_DIR)/$(HOST_ARCH).$(ARCH_CLASS)/bin
ARCH_CLASS = ppc
# Architecture specific build flags (TRUE=1 via LBL; needed in camessage.c)
ARCH_DEP_CPPFLAGS = -DCPU_FAMILY=PPC -DCPU=PPC604 -D_GNU_TOOL -DTRUE=1
ARCH_DEP_CFLAGS = -fno-for-scope

View File

@@ -1,24 +0,0 @@
#*************************************************************************
# Copyright (c) 2002 The University of Chicago, as Operator of Argonne
# National Laboratory.
# Copyright (c) 2002 The Regents of the University of California, as
# Operator of Los Alamos National Laboratory.
# EPICS BASE Versions 3.13.7
# and higher are distributed subject to a Software License Agreement found
# in file LICENSE that is included with this distribution.
#*************************************************************************
#
# This file is maintained by the EPICS community.
# Vx GNU cross compiler suffix
CMPLR_SUFFIX = 68k
# For Vx directories of form:
# $(VX_DIR)/$(HOST_ARCH).$(ARCH_CLASS)/bin
ARCH_CLASS = 68k
# Architecture specific build flags
ARCH_DEP_CPPFLAGS = -DCPU=MC68040
ARCH_DEP_CFLAGS = -m68040

View File

@@ -1,23 +0,0 @@
#*************************************************************************
# Copyright (c) 2002 The University of Chicago, as Operator of Argonne
# National Laboratory.
# Copyright (c) 2002 The Regents of the University of California, as
# Operator of Los Alamos National Laboratory.
# EPICS BASE Versions 3.13.7
# and higher are distributed subject to a Software License Agreement found
# in file LICENSE that is included with this distribution.
#*************************************************************************
#
# This file is maintained by the EPICS community.
# Vx GNU cross compiler suffix
CMPLR_SUFFIX = 68k
# For Vx directories of form:
# $(VX_DIR)/$(HOST_ARCH).$(ARCH_CLASS)/bin
ARCH_CLASS = 68k
# Architecture specific build flags
ARCH_DEP_CPPFLAGS = -DCPU=MC68LC040
ARCH_DEP_CFLAGS = -m68040 -msoft-float

View File

@@ -1,24 +0,0 @@
#*************************************************************************
# Copyright (c) 2002 The University of Chicago, as Operator of Argonne
# National Laboratory.
# Copyright (c) 2002 The Regents of the University of California, as
# Operator of Los Alamos National Laboratory.
# EPICS BASE Versions 3.13.7
# and higher are distributed subject to a Software License Agreement found
# in file LICENSE that is included with this distribution.
#*************************************************************************
#
# This file is maintained by the EPICS community.
# Vx GNU cross compiler suffix
CMPLR_SUFFIX = 68k
# For Vx directories of form:
# $(VX_DIR)/$(HOST_ARCH).$(ARCH_CLASS)/bin
ARCH_CLASS = 68k
# Architecture specific build flags
ARCH_DEP_CPPFLAGS = -DCPU=MC68040
ARCH_DEP_CFLAGS = -m68040

View File

@@ -1,24 +0,0 @@
#*************************************************************************
# Copyright (c) 2002 The University of Chicago, as Operator of Argonne
# National Laboratory.
# Copyright (c) 2002 The Regents of the University of California, as
# Operator of Los Alamos National Laboratory.
# EPICS BASE Versions 3.13.7
# and higher are distributed subject to a Software License Agreement found
# in file LICENSE that is included with this distribution.
#*************************************************************************
#
# This file is maintained by the EPICS community.
# Vx GNU cross compiler suffix
CMPLR_SUFFIX = 68k
# For Vx directories of form:
# $(VX_DIR)/$(HOST_ARCH).$(ARCH_CLASS)/bin
ARCH_CLASS = 68k
# Architecture specific build flags
ARCH_DEP_CPPFLAGS = -DCPU=MC68060
ARCH_DEP_CFLAGS = -m68040

View File

@@ -1,24 +0,0 @@
#*************************************************************************
# Copyright (c) 2002 The University of Chicago, as Operator of Argonne
# National Laboratory.
# Copyright (c) 2002 The Regents of the University of California, as
# Operator of Los Alamos National Laboratory.
# EPICS BASE Versions 3.13.7
# and higher are distributed subject to a Software License Agreement found
# in file LICENSE that is included with this distribution.
#*************************************************************************
#
# This file is maintained by the EPICS community.
# Vx GNU cross compiler suffix
CMPLR_SUFFIX = ppc
# For Vx directories of form:
# $(VX_DIR)/$(HOST_ARCH).$(ARCH_CLASS)/bin
ARCH_CLASS = mv2700
# Architecture specific build flags
ARCH_DEP_CPPFLAGS = -DCPU=PPC604
ARCH_DEP_CFLAGS = -mcpu=604

View File

@@ -1,25 +0,0 @@
#*************************************************************************
# Copyright (c) 2002 The University of Chicago, as Operator of Argonne
# National Laboratory.
# Copyright (c) 2002 The Regents of the University of California, as
# Operator of Los Alamos National Laboratory.
# EPICS BASE Versions 3.13.7
# and higher are distributed subject to a Software License Agreement found
# in file LICENSE that is included with this distribution.
#*************************************************************************
# CONFIG.Vx.niCpu030
#
# This file is maintained by the EPICS community.
# Vx GNU cross compiler suffix
CMPLR_SUFFIX = 68k
# For Vx directories of form:
# $(VX_DIR)/$(HOST_ARCH).$(ARCH_CLASS)/bin
ARCH_CLASS = 68k
# Architecture specific build flags
ARCH_DEP_CPPFLAGS = -DCPU=MC68030 -DNICPU030
ARCH_DEP_CFLAGS = -m68030

View File

@@ -1,26 +0,0 @@
#*************************************************************************
# Copyright (c) 2002 The University of Chicago, as Operator of Argonne
# National Laboratory.
# Copyright (c) 2002 The Regents of the University of California, as
# Operator of Los Alamos National Laboratory.
# EPICS BASE Versions 3.13.7
# and higher are distributed subject to a Software License Agreement found
# in file LICENSE that is included with this distribution.
#*************************************************************************
# CONFIG.Vx.pc486
#
# This file is maintained by the EPICS community.
# Vx GNU cross compiler suffix
CMPLR_SUFFIX = 386
# For Vx directories of form:
# $(VX_DIR)/$(HOST_ARCH).$(ARCH_CLASS)/bin
ARCH_CLASS = pc486
ARCH_DEP_CPPFLAGS = -DCPU=I80486 -DCPU_FAMILY=I80x86 -D_X86_
ARCH_DEP_CFLAGS = -m486
ARCH_DEP_CXXFLAGS += -x 'c++'
ARCH_DEP_CFLAGS += -fno-defer-pop

View File

@@ -1,26 +0,0 @@
#*************************************************************************
# Copyright (c) 2002 The University of Chicago, as Operator of Argonne
# National Laboratory.
# Copyright (c) 2002 The Regents of the University of California, as
# Operator of Los Alamos National Laboratory.
# EPICS BASE Versions 3.13.7
# and higher are distributed subject to a Software License Agreement found
# in file LICENSE that is included with this distribution.
#*************************************************************************
# CONFIG.Vx.pentium
#
# This file is maintained by the EPICS community.
# Vx GNU cross compiler suffix
CMPLR_SUFFIX = 386
# For Vx directories of form:
# $(VX_DIR)/$(HOST_ARCH).$(ARCH_CLASS)/bin
ARCH_CLASS = pcPentium
ARCH_DEP_CPPFLAGS = -DCPU=PENTIUM -D_X86_
ARCH_DEP_CFLAGS = -mpentium
ARCH_DEP_CXXFLAGS += -x 'c++'
ARCH_DEP_CFLAGS += -fno-defer-pop

View File

@@ -1,24 +0,0 @@
#*************************************************************************
# Copyright (c) 2002 The University of Chicago, as Operator of Argonne
# National Laboratory.
# Copyright (c) 2002 The Regents of the University of California, as
# Operator of Los Alamos National Laboratory.
# EPICS BASE Versions 3.13.7
# and higher are distributed subject to a Software License Agreement found
# in file LICENSE that is included with this distribution.
#*************************************************************************
#
# This file is maintained by the EPICS community.
# Vx GNU cross compiler suffix
CMPLR_SUFFIX = ppc
# For Vx directories of form:
# $(VX_DIR)/$(HOST_ARCH).$(ARCH_CLASS)/bin
ARCH_CLASS = ppc
# Architecture specific build flags
ARCH_DEP_CPPFLAGS = -DCPU=PPC603 -DTRUE=1
ARCH_DEP_CFLAGS = -mcpu=603 --no-builtin -mstrict-align
# ARCH_DEP_CFLAGS+= -fsigned-char #May need for calcPerform.c

View File

@@ -1,15 +0,0 @@
#
# This file is maintained by the EPICS community.
# Vx GNU cross compiler suffix
CMPLR_SUFFIX = ppc
# For Vx directories of form:
# $(VX_DIR)/$(HOST_ARCH).$(ARCH_CLASS)/bin
ARCH_CLASS = ppc
# Architecture specific build flags
ARCH_DEP_CPPFLAGS = -DCPU=PPC603 -DTRUE=1
ARCH_DEP_CFLAGS = -mcpu=603 --no-builtin -mstrict-align -mlongcall
# ARCH_DEP_CFLAGS+= -fsigned-char #May need for calcPerform.c

View File

@@ -1,25 +0,0 @@
#*************************************************************************
# Copyright (c) 2002 The University of Chicago, as Operator of Argonne
# National Laboratory.
# Copyright (c) 2002 The Regents of the University of California, as
# Operator of Los Alamos National Laboratory.
# EPICS BASE Versions 3.13.7
# and higher are distributed subject to a Software License Agreement found
# in file LICENSE that is included with this distribution.
#*************************************************************************
#
# This file is maintained by the EPICS community.
# Vx GNU cross compiler suffix
CMPLR_SUFFIX = ppc
# For Vx directories of form:
# $(VX_DIR)/$(HOST_ARCH).$(ARCH_CLASS)/bin
ARCH_CLASS = ppc
# Architecture specific build flags
ARCH_DEP_CPPFLAGS = -DCPU=PPC604 -D_GNU_TOOL -DTRUE=1
ARCH_DEP_CFLAGS = -mcpu=604 --no-builtin -mstrict-align
# ARCH_DEP_CFLAGS+= -fsigned-char #May need for calcPerform.c

View File

@@ -1,16 +0,0 @@
#
# This file is maintained by the EPICS community.
# Vx GNU cross compiler suffix
CMPLR_SUFFIX = ppc
# For Vx directories of form:
# $(VX_DIR)/$(HOST_ARCH).$(ARCH_CLASS)/bin
ARCH_CLASS = ppc
# Architecture specific build flags
ARCH_DEP_CPPFLAGS = -DCPU=PPC604 -D_GNU_TOOL -DTRUE=1
ARCH_DEP_CFLAGS = -mcpu=604 --no-builtin -mstrict-align -mlongcall
# ARCH_DEP_CFLAGS+= -fsigned-char #May need for calcPerform.c

View File

@@ -1,16 +0,0 @@
# Created by Korobov for SBS PC6
# CONFIG.Vx.sbs_pc6
#
# This file is maintained by the EPICS community.
# Vx GNU cross compiler suffix
CMPLR_SUFFIX = 386
# For Vx directories of form:
# $(VX_DIR)/$(HOST_ARCH).$(ARCH_CLASS)/bin
ARCH_CLASS = sbs_pc6
ARCH_DEP_CPPFLAGS = -DCPU=PENTIUM -DCPU_VARIANT=PENTIUM -D_X86_
ARCH_DEP_CFLAGS = -mpentium
ARCH_DEP_CXXFLAGS += -x 'c++'
ARCH_DEP_CFLAGS += -fno-builtin -fno-defer-pop

View File

@@ -1,30 +0,0 @@
#*************************************************************************
# Copyright (c) 2002 The University of Chicago, as Operator of Argonne
# National Laboratory.
# Copyright (c) 2002 The Regents of the University of California, as
# Operator of Los Alamos National Laboratory.
# EPICS BASE Versions 3.13.7
# and higher are distributed subject to a Software License Agreement found
# in file LICENSE that is included with this distribution.
#*************************************************************************
# CONFIG.Vx.simpc
#
# This file is maintained by the EPICS community.
# Vx GNU cross compiler suffix
CMPLR_SUFFIX = simpc
# For Vx directories of form:
# $(VX_DIR)/$(HOST_ARCH).$(ARCH_CLASS)/bin
ARCH_CLASS = simpc
ARCH_DEP_CPPFLAGS = -DCPU=SIMNT -DCPU_FAMILY=SIMNT -D_X86_
ARCH_DEP_CFLAGS = -mpentium
ARCH_DEP_CXXFLAGS += -x 'c++'
ARCH_DEP_CFLAGS += -fno-defer-pop -DRW_MULTI_THREAD -D_REENTRANT -nostdlib
#
# no drivers on the Tornado II simulator
#
DIRS = $(filter-out drv dev devOpt, $(DIRS))

View File

@@ -1,12 +0,0 @@
#*************************************************************************
# Copyright (c) 2002 The University of Chicago, as Operator of Argonne
# National Laboratory.
# Copyright (c) 2002 The Regents of the University of California, as
# Operator of Los Alamos National Laboratory.
# EPICS BASE Versions 3.13.7
# and higher are distributed subject to a Software License Agreement found
# in file LICENSE that is included with this distribution.
#*************************************************************************
# vxWorks-486 is the new R3.14 name for pc486
include $(EPICS_BASE)/config/CONFIG.Vx.pc486

View File

@@ -1,12 +0,0 @@
#*************************************************************************
# Copyright (c) 2002 The University of Chicago, as Operator of Argonne
# National Laboratory.
# Copyright (c) 2002 The Regents of the University of California, as
# Operator of Los Alamos National Laboratory.
# EPICS BASE Versions 3.13.7
# and higher are distributed subject to a Software License Agreement found
# in file LICENSE that is included with this distribution.
#*************************************************************************
# vxWorks-68040 is the new R3.14 name for mv167
include $(EPICS_BASE)/config/CONFIG.Vx.mv167

View File

@@ -1,12 +0,0 @@
#*************************************************************************
# Copyright (c) 2002 The University of Chicago, as Operator of Argonne
# National Laboratory.
# Copyright (c) 2002 The Regents of the University of California, as
# Operator of Los Alamos National Laboratory.
# EPICS BASE Versions 3.13.7
# and higher are distributed subject to a Software License Agreement found
# in file LICENSE that is included with this distribution.
#*************************************************************************
# vxWorks-68040lc is the new R3.14 name for mv162lc
include $(EPICS_BASE)/config/CONFIG.Vx.mv162lc

View File

@@ -1,12 +0,0 @@
#*************************************************************************
# Copyright (c) 2002 The University of Chicago, as Operator of Argonne
# National Laboratory.
# Copyright (c) 2002 The Regents of the University of California, as
# Operator of Los Alamos National Laboratory.
# EPICS BASE Versions 3.13.7
# and higher are distributed subject to a Software License Agreement found
# in file LICENSE that is included with this distribution.
#*************************************************************************
# vxWorks-68060 is the new R3.14 name for mv177
include $(EPICS_BASE)/config/CONFIG.Vx.mv177

View File

@@ -1,12 +0,0 @@
#*************************************************************************
# Copyright (c) 2002 The University of Chicago, as Operator of Argonne
# National Laboratory.
# Copyright (c) 2002 The Regents of the University of California, as
# Operator of Los Alamos National Laboratory.
# EPICS BASE Versions 3.13.7
# and higher are distributed subject to a Software License Agreement found
# in file LICENSE that is included with this distribution.
#*************************************************************************
# vxWorks-ppc603 is the new R3.14 name for ppc603
include $(EPICS_BASE)/config/CONFIG.Vx.ppc603

View File

@@ -1,12 +0,0 @@
#*************************************************************************
# Copyright (c) 2002 The University of Chicago, as Operator of Argonne
# National Laboratory.
# Copyright (c) 2002 The Regents of the University of California, as
# Operator of Los Alamos National Laboratory.
# EPICS BASE Versions 3.13.7
# and higher are distributed subject to a Software License Agreement found
# in file LICENSE that is included with this distribution.
#*************************************************************************
# vxWorks-ppc603 is the new R3.14 name for ppc603
include $(EPICS_BASE)/config/CONFIG.Vx.ppc603_long

View File

@@ -1,12 +0,0 @@
#*************************************************************************
# Copyright (c) 2002 The University of Chicago, as Operator of Argonne
# National Laboratory.
# Copyright (c) 2002 The Regents of the University of California, as
# Operator of Los Alamos National Laboratory.
# EPICS BASE Versions 3.13.7
# and higher are distributed subject to a Software License Agreement found
# in file LICENSE that is included with this distribution.
#*************************************************************************
# vxWorks-ppc604 is the new R3.14 name for ppc604
include $(EPICS_BASE)/config/CONFIG.Vx.ppc604

View File

@@ -1,12 +0,0 @@
#*************************************************************************
# Copyright (c) 2002 The University of Chicago, as Operator of Argonne
# National Laboratory.
# Copyright (c) 2002 The Regents of the University of California, as
# Operator of Los Alamos National Laboratory.
# EPICS BASE Versions 3.13.7
# and higher are distributed subject to a Software License Agreement found
# in file LICENSE that is included with this distribution.
#*************************************************************************
# vxWorks-ppc604 is the new R3.14 name for ppc604
include $(EPICS_BASE)/config/CONFIG.Vx.ppc604_long

View File

@@ -1,26 +0,0 @@
#*************************************************************************
# Copyright (c) 2002 The University of Chicago, as Operator of Argonne
# National Laboratory.
# Copyright (c) 2002 The Regents of the University of California, as
# Operator of Los Alamos National Laboratory.
# EPICS BASE Versions 3.13.7
# and higher are distributed subject to a Software License Agreement found
# in file LICENSE that is included with this distribution.
#*************************************************************************
# CONFIG.Vx.VXIpc
#
# This file is maintained by the EPICS community.
# Vx GNU cross compiler suffix
CMPLR_SUFFIX = 386
# For Vx directories of form:
# $(VX_DIR)/$(HOST_ARCH).$(ARCH_CLASS)/bin
ARCH_CLASS = pc486
ARCH_DEP_CPPFLAGS = -DCPU=I80486 -DCPU_FAMILY=I80x86 -D_X86_
ARCH_DEP_CFLAGS = -m486
ARCH_DEP_CXXFLAGS += -x 'c++'
ARCH_DEP_CFLAGS += -fno-defer-pop

View File

@@ -1,84 +0,0 @@
#*************************************************************************
# Copyright (c) 2002 The University of Chicago, as Operator of Argonne
# National Laboratory.
# Copyright (c) 2002 The Regents of the University of California, as
# Operator of Los Alamos National Laboratory.
# EPICS BASE Versions 3.13.7
# and higher are distributed subject to a Software License Agreement found
# in file LICENSE that is included with this distribution.
#*************************************************************************
#
#
# the order of following list is important
#
# for c++ build add the dirs gdd and cas after ca
# (and uncomment the c++ files in src/lbCom/Makefile.Unix)
#
DIRS = tools
DIRS += include
DIRS += cxxTemplates
DIRS += toolsComm
DIRS += makeBaseApp
DIRS += libCom
DIRS += libvxWorks
DIRS += cvtDctsdr
DIRS += dbStatic
DIRS += db
DIRS += bpt
DIRS += ca
DIRS += util
DIRS += misc
DIRS += sequencer
DIRS += dbtools
DIRS += rsrv
DIRS += rec
DIRS += as
DIRS += drv
DIRS += dev
DIRS += devOpt
DIRS += iocCore
#
# if CPLUSPLUS isnt empty then include C++ src codes
#
DIRS += $(patsubst %,gdd,$(strip $(CPLUSPLUS)))
DIRS += $(patsubst %,cas,$(strip $(CPLUSPLUS)))
EPICS_BASE = $(TOP)
# EPICS include config file
include $(EPICS_BASE)/config/CONFIG
-include $(EPICS_BASE)/configure/RELEASE
-include $(EPICS_BASE)/configure/RELEASE.$(EPICS_HOST_ARCH)
ifdef INSTALL_LOCATION_BASE
INSTALL_LOCATION = $(INSTALL_LOCATION_BASE)
endif
EPICS_BASE = $(INSTALL_LOCATION)
Com_DIR = $(EPICS_BASE_LIB)
asHost_DIR = $(EPICS_BASE_LIB)
asIoc_DIR = $(EPICS_BASE_LIB)
ca_DIR = $(EPICS_BASE_LIB)
cas_DIR = $(EPICS_BASE_LIB)
dbIoc_DIR = $(EPICS_BASE_LIB)
dbStaticHost_DIR = $(EPICS_BASE_LIB)
dbStaticIoc_DIR = $(EPICS_BASE_LIB)
dbtoolsIoc_DIR = $(EPICS_BASE_LIB)
gdd_DIR = $(EPICS_BASE_LIB)
iocsh_DIR = $(EPICS_BASE_LIB)
miscIoc_DIR = $(EPICS_BASE_LIB)
recIoc_DIR = $(EPICS_BASE_LIB)
registryIoc_DIR = $(EPICS_BASE_LIB)
rsrvIoc_DIR = $(EPICS_BASE_LIB)
softDevIoc_DIR = $(EPICS_BASE_LIB)
testDevIoc_DIR = $(EPICS_BASE_LIB)
recIocObj_DIR = $(EPICS_BASE_LIB)
softDevIocObj_DIR = $(EPICS_BASE_LIB)
testDevIocObj_DIR = $(EPICS_BASE_LIB)
iocCore_DIR = $(EPICS_BASE_LIB)

View File

@@ -1,14 +0,0 @@
#*************************************************************************
# Copyright (c) 2002 The University of Chicago, as Operator of Argonne
# National Laboratory.
# Copyright (c) 2002 The Regents of the University of California, as
# Operator of Los Alamos National Laboratory.
# EPICS BASE Versions 3.13.7
# and higher are distributed subject to a Software License Agreement found
# in file LICENSE that is included with this distribution.
#*************************************************************************
#
#
# EPICS Version information now comes from configure...
include $(EPICS_BASE)/configure/CONFIG_BASE_VERSION

View File

@@ -1,257 +0,0 @@
#*************************************************************************
# Copyright (c) 2002 The University of Chicago, as Operator of Argonne
# National Laboratory.
# Copyright (c) 2002 The Regents of the University of California, as
# Operator of Los Alamos National Laboratory.
# EPICS BASE Versions 3.13.7
# and higher are distributed subject to a Software License Agreement found
# in file LICENSE that is included with this distribution.
#*************************************************************************
#
#
# CONFIG_COMMON - Another EPICS BASE config file
# by Matthew Needes and Mike Bordua
#
# This file is to be maintained by the EPICS community.
#
# Common Configuration Information
# CROSS1 will be defined only when CROSS_COMPILER_HOST_ARCHS is NOT defined
CROSS1 = $(CROSS_COMPILER_TARGET_ARCHS$(word 1,$(CROSS_COMPILER_HOST_ARCHS)))
# CROSS2 will be defined only when CROSS_COMPILER_HOST_ARCHS is defined
# and HOST_ARCH is one of it's words
CROSS2 = $(CROSS_COMPILER_TARGET_ARCHS$(filter-out 1,$(words $(filter $(HOST_ARCH),$(CROSS_COMPILER_HOST_ARCHS)))))
BUILD_ARCHS = $(HOST_ARCH) $(CROSS1) $(CROSS2)
INSTALL_LOCATION = $(TOP)
INSTALL_LOCATION_LIB = $(INSTALL_LOCATION)/lib
INSTALL_LOCATION_BIN = $(INSTALL_LOCATION)/bin
INSTALL_INCLUDE = $(INSTALL_LOCATION)/include
INSTALL_DOC = $(INSTALL_LOCATION)/doc
INSTALL_HTML = $(INSTALL_LOCATION)/html
INSTALL_MAN = $(INSTALL_LOCATION)/man
INSTALL_TEMPLATES = $(INSTALL_LOCATION)/templates
INSTALL_DBD = $(INSTALL_LOCATION)/dbd
INSTALL_CONFIG = $(INSTALL_LOCATION)/config
INSTALL_JAVA = $(INSTALL_LOCATION)/javalib
EPICS_BASE_INCLUDE = $(EPICS_BASE)/include
EPICS_BASE_TOOLS = $(EPICS_BASE)/config/tools
DIVIDER = .
OBJ = .
RES = .
EPICS_BASE_HOST_BIN = $(EPICS_BASE)/bin/$(HOST_ARCH)
EPICS_BASE_HOST_LIB = $(EPICS_BASE)/lib/$(HOST_ARCH)
INSTALL_HOST_LIB = $(INSTALL_LOCATION)/lib/$(HOST_ARCH)
# private versions of lex/yacc from EPICS
EYACC = $(EPICS_BASE_HOST_BIN)/antelope$(EXE)
ELEX = $(EPICS_BASE_HOST_BIN)/e_flex$(EXE) -S$(EPICS_BASE_INCLUDE)/flex.skel.static
YACC = $(EYACC)
LEX = $(ELEX)
# Default for perl if it's on the PATH,
# otherwise override this in CONFIG_SITE_HOST_ARCH.<host_arch>
PERL=perl
# install from EPICS
INSTALL = $(PERL) $(EPICS_BASE_TOOLS)/installEpics.pl
INSTALL_PRODUCT = $(INSTALL)
INSTALL_LIBRARY = $(INSTALL)
# dbtools from EPICS
# state notation language compiler (removed from base for R3.14)
SNC = $(SEQ)/bin/$(HOST_ARCH)/snc$(EXE)
ifdef T_A
INSTALL_LIB = $(INSTALL_LOCATION_LIB)/$(T_A)
INSTALL_TCLLIB = $(INSTALL_LOCATION_LIB)/$(T_A)
INSTALL_BIN = $(INSTALL_LOCATION_BIN)/$(T_A)
EPICS_BASE_LIB = $(EPICS_BASE)/lib/$(T_A)
EPICS_BASE_BIN = $(EPICS_BASE)/bin/$(T_A)
#--------------------------------------------------
# GNU compiler defaults
GCC_ANSI = $(GCC) -ansi
GCC_STRICT = $(GCC) -ansi -pedantic
GCC_TRAD = $(GCC)
GCC_DEP_CFLAGS = -fPIC -D_REENTRANT
GCC_WARN_YES = -Wall -Wmissing-prototypes -Wstrict-prototypes
GCC_WARN_NO = -w
GCC_OPT_YES = -O3
GCC_OPT_NO = -g
GCC_SFLAGS_YES = -static
GCC_SFLAGS_NO =
GCC_SLIBS_YES =
GCC_SLIBS_NO =
GCC_SHRLIB_CFLAGS_YES =
GCC_SHRLIB_LDFLAGS_YES = -shared
G++_NORMAL = $(G++) -ansi -pedantic
G++_STRICT = $(G++) -ansi -pedantic
G++_TRAD = $(G++)
G++_TEMPL_INST_FLAG = -DEXPL_TEMPL
G++_DEP_CFLAGS = -fPIC -D_REENTRANT
G++_WARN_YES = -Wall \
-Woverloaded-virtual \
-Wwrite-strings -Wconversion\
-Wpointer-arith -Winline
G++_WARN_NO = -w
G++_OPT_YES = -O3
G++_OPT_NO = -g
G++_SFLAGS_YES = -static
G++_SFLAGS_NO =
G++_SLIBS_YES =
G++_SLIBS_NO =
G++_DEPENDS_FLAG = -MM
G++_SHRLIB_CFLAGS_YES =
G++_SHRLIB_LDFLAGS_YES = -shared
#--------------------------------------------------
# C compiler
CC = $($(ANSI)_$(CMPLR))
#---------------------------------------------------------------
# Vendor compiler dependent options
VENDOR_DEP_CFLAGS = $($(ANSI)_DEP_CFLAGS)
VENDOR_DEP_CXXFLAGS = $($(CPLUSPLUS)_DEP_CFLAGS)
#--------------------------------------------------
# C++ compiler
CXX = $($(CPLUSPLUS)_$(CXXCMPLR))
#---------------------------------------------------------------
# Architecture dependent options (solaris,sun4,mv167,...)
ARCH_DEP_CFLAGS =
ARCH_DEP_CXXFLAGS = $(ARCH_DEP_CFLAGS)
ARCH_DEP_LDFLAGS =
ARCH_DEP_LDLIBS =
#---------------------------------------------------------------
# Operating system dependent options (Unix,Vx,WIN32...)
OP_SYS_CFLAGS =
OP_SYS_LDFLAGS =
OP_SYS_INCLUDES =
OP_SYS_LDLIBS =
#--------------------------------------------------
# SOURCE* used by WIN32 only
SOURCE_CFLAG =
SOURCE_CXXCFLAG =
#--------------------------------------------------
# Makefile specific options
USR_INCLUDES =
USR_CFLAGS =
USR_CXXFLAGS =
USR_LDFLAGS =
USR_LDLIBS =
USR_CPPFLAGS =
USR_DBDFLAGS =
#--------------------------------------------------
# Target specific options
TARGET_INCLUDES = $($(basename $@)_INCLUDES)
TARGET_CFLAGS = $($(basename $@)_CFLAGS)
TARGET_CXXFLAGS = $($(basename $@)_CXXFLAGS)
TARGET_LDFLAGS = $($(basename $@)_LDFLAGS)
TARGET_LDLIBS = $($(basename $@)_LDLIBS)
TARGET_CPPFLAGS = $($(basename $@)_CPPFLAGS)
TARGET_SNCFLAGS = $($(basename $@)_SNCFLAGS)
#--------------------------------------------------
# Depends flag
DEPENDS_FLAG = $($(CPLUSPLUS)_DEPENDS_FLAG)
#--------------------------------------------------
# C++ template flag option
TEMPL_INST_CXXFLAG = $($(CPLUSPLUS)_TEMPL_INST_FLAG)
#--------------------------------------------------
# Epics includes (CONFIG.Vx will override OS_CLASS)
OS_CLASS = $(ARCH_CLASS)
EPICS_INCLUDES = -I$(INSTALL_INCLUDE)/os/$(OS_CLASS) -I$(INSTALL_INCLUDE)
EPICS_DBDFLAGS = -I $(INSTALL_LOCATION)/dbd
#--------------------------------------------------
# Posix flags
POSIX=YES
POSIX_CPPFLAGS_YES += -D_POSIX_C_SOURCE=199506L
POSIX_LDLIBS_YES +=
POSIX_CPPFLAGS += $(POSIX_CPPFLAGS_$(POSIX))
POSIX_LDLIBS += $(POSIX_LDLIBS_$(POSIX))
#--------------------------------------------------
# Warnings flags (CONFIG.Vx will override)
WARN_CFLAGS = $($(ANSI)_WARN_$(HOST_WARN))
WARN_CXXFLAGS = $($(CPLUSPLUS)_WARN_$(HOST_WARN))
#--------------------------------------------------
# Optimization flags (CONFIG.Vx will override)
OPT_CFLAGS = $($(ANSI)_OPT_$(HOST_OPT))
OPT_CXXFLAGS = $($(CPLUSPLUS)_OPT_$(HOST_OPT))
OPT_LDFLAGS =
#--------------------------------------------------
# Static build options
STATIC_CFLAGS = $($(ANSI)_SFLAGS_$(STATIC_BUILD))
STATIC_CXXCFLAGS = $($(CPLUSPLUS)_SFLAGS_$(STATIC_BUILD))
STATIC_LDFLAGS = $($(ANSI)_SLDFLAGS_$(STATIC_BUILD))
STATIC_LDLIBS = $($(ANSI)_SLIBS_$(STATIC_BUILD))
#--------------------------------------------------
# ar definition default
ARCMD = $(AR) $(ARFLAGS) $@
#--------------------------------------------------
# depends definition
DEPENDS_RULE = -$(COMPILE.cc) $(DEPENDS_FLAG) $^ > DEPENDS
#--------------------------------------------------
# Include files
INCLUDES = -I. -I.. $(USR_INCLUDES) $(EPICS_INCLUDES) $(TARGET_INCLUDES) $(OP_SYS_INCLUDES)
CFLAGS = $(OPT_CFLAGS) $(DEBUG_CFLAGS) $(WARN_CFLAGS) $(TARGET_CFLAGS)\
$(USR_CFLAGS) $(ARCH_DEP_CFLAGS) $(VENDOR_DEP_CFLAGS) $(STATIC_CFLAGS)\
$(OP_SYS_CFLAGS) $(INCLUDES)
CXXFLAGS = $(OPT_CXXFLAGS) $(DEBUG_CXXFLAGS) $(WARN_CXXFLAGS) $(TARGET_CXXFLAGS)\
$(USR_CXXFLAGS) $(ARCH_DEP_CXXFLAGS) $(VENDOR_DEP_CXXFLAGS) $(STATIC_CXXCFLAGS)\
$(OP_SYS_CFLAGS) $(TEMPL_INST_CXXFLAG) $(INCLUDES)
LDFLAGS = $(OPT_LDFLAGS) $(TARGET_LDFLAGS) $(USR_LDFLAGS)\
$(ARCH_DEP_LDFLAGS) $(STATIC_LDFLAGS) $(OP_SYS_LDFLAGS) $(RUNTIME_LDFLAGS)
LDLIBS = $(TARGET_LDLIBS) $(USR_LDLIBS) $(STATIC_LDLIBS) $(ARCH_DEP_LDLIBS)\
$(OP_SYS_LDLIBS) $(POSIX_LDLIBS)
CPPFLAGS += $(TARGET_CPPFLAGS) $(USR_CPPFLAGS) $(ARCH_DEP_CPPFLAGS) $(POSIX_CPPFLAGS) $(OP_SYS_CPPFLAGS)
CPPSNCFLAGS = $(INCLUDES)
DBDFLAGS = -I . -I .. $(USR_DBDFLAGS) $(EPICS_DBDFLAGS)
# Build compile line here
COMPILE.c = $(CC) $(CPPFLAGS) $(CFLAGS) -c $(SOURCE_FLAG)
COMPILE.cc = $(CXX) $(CPPFLAGS) $(CXXFLAGS) -c $(SOURCE_CXXFLAG)
endif

View File

@@ -1,48 +0,0 @@
#*************************************************************************
# Copyright (c) 2002 The University of Chicago, as Operator of Argonne
# National Laboratory.
# Copyright (c) 2002 The Regents of the University of California, as
# Operator of Los Alamos National Laboratory.
# EPICS BASE Versions 3.13.7
# and higher are distributed subject to a Software License Agreement found
# in file LICENSE that is included with this distribution.
#*************************************************************************
#
#
# Convert old HOST_ARCH environment variable
#Syntax:
# ARCH_<host_arch> = <epics_host_arch>
ARCH_solarisGnu = solaris-sparc-gnu
ARCH_solarisNonshared = solaris-sparc-nonshared
#ARCH_solaris = solaris-sparc-static
#ARCH_solaris = solaris-sparc-debug
ARCH_solaris = solaris-sparc
ARCH_sun4 = sun4-sparc
ARCH_Linux = linux-x86
ARCH_freebsd = freebsd-x86_64
ARCH_WIN32 = win32-x86
ARCH_hp700 = hpux-parisc
ARCH_Borland = win32-x86-borland
ARCH_cygwin32 = cygwin-x86
ifndef EPICS_HOST_ARCH
ifdef HOST_ARCH
EPICS_HOST_ARCH = $(firstword $(ARCH_$(HOST_ARCH)) $(HOST_ARCH))
else
EPICS_HOST_ARCH = unsupported
endif
endif
HOST_ARCH := $(EPICS_HOST_ARCH)
# Note:
# The EPICS_HOST_ARCH solaris-<arch>-gnu is new for base release R3.14
# so existing R3.13 applications, when HOST_ARCH is set to solaris and
# when built with R3.14, will look for base solaris-<arch> directories
# and not solaris-<arch>-gnu. If you plan to build R3.13 applications
# against a solaris-<arch>-gnu built R3.14 base, you should set
# ANSI=GCC and CPLUSPLUS=G++ in base/config/CONFIG_SITE.Host.solaris
# and change ARCH_solaris=solaris-<arch> to ARCH_solaris=solaris-<arch>-gnu
# in base/config/CONFIG_COMPAT.

View File

@@ -1,136 +0,0 @@
#*************************************************************************
# Copyright (c) 2002 The University of Chicago, as Operator of Argonne
# National Laboratory.
# Copyright (c) 2002 The Regents of the University of California, as
# Operator of Los Alamos National Laboratory.
# EPICS BASE Versions 3.13.7
# and higher are distributed subject to a Software License Agreement found
# in file LICENSE that is included with this distribution.
#*************************************************************************
# Author: Andrew Johnson
# Date: 20 April 1995
#
# Experimental Physics and Industrial Control System (EPICS)
#
# CONFIG_ENV - EPICS Environment Parameter configuration file
#
# This file is interpreted by the Bourne Shell, so spaces are
# not allowed around the '=' signs or in unquoted values.
# Makefile variables are not defined here.
#
# Note: This file is read by base/src/libCom/bldEnvdata.pl,
# so the variable definitions in here should be kept 'simple':
# VAR=VALUE
# each one on a single line.
#
# Default environment settings
# Channel Access:
# EPICS_CA_ADDR_LIST
# Augment beacon/search dest ip addr list
# from white space separated ip addresses in this
# environment variable. "Quote" if more than one addr.
# EPICS_CA_AUTO_ADDR_LIST
# YES = augment beacon/search dest ip
# addr list from network interfaces found; NO = only use
# EPICS_CA_ADDR_LIST to create this list.
# EPICS_CA_CONN_TMO
# after not seeing a server beacon for this number
# of seconds the clients will send an echo request over
# tcp/ip to verify the connection.
# EPICS_CA_REPEATER_PORT CA repeater port number.
# EPICS_CA_SERVER_PORT CA server port number.
EPICS_CA_ADDR_LIST=""
EPICS_CA_AUTO_ADDR_LIST=YES
EPICS_CA_CONN_TMO=30.0
EPICS_CA_REPEATER_PORT=5065
EPICS_CA_SERVER_PORT=5064
#
# These parameters are only used by the CA server library
#
# EPICS_CA_BEACON_PERIOD
# quiescent sec between server beacons.
# EPICS_CAS_INTF_ADDR_LIST - list of IP addresses identifying
# a limited set of network interfaces for server communication.
# Specifically, this parameter specifies the interfaces from
# which the server will accept TCP/IP connections. It also
# specifies that UDP search messages addressed to both
# the IP addresses in EPICS_CAS_INTF_ADDR_LIST and also
# the broadcast addresses (or the destination addresses of
# point to point interfaces) of the corresponding interfaces
# will be accepted by the server. If this parameter is empty
# then TCP/IP connections are accepted from any interface
# (and any search messages addressed to the host are accepted).
# Beacons are sent only to the broadcast address of each interface
# in this list (or the destination address of point to point
# interfaces) if EPICS_CA_AUTO_ADDR_LIST is YES.
# Type "ifconfig -a" in order to determine which interfaces
# are available.
# EPICS_CAS_BEACON_ADDR_LIST - If this parameter is specified
# or if EPICS_CAS_INTF_ADDR_LIST isnt empty then this parameter
# is used instead of EPICS_CA_ADDR_LIST by the server library
# to augment the list of addresses to send beacons to.
# EPICS_CAS_SERVER_PORT - If this parameter is specified then it
# and not EPICS_CA_SERVER_PORT is used to determine the server's
# port number. It is possible to have multiple servers on the
# same host on the same EPICS_CAS_SERVER_PORT port if the IP
# kernel is modern (if it has multicast enhancements). In this
# situation all servers will share the same user specified
# UDP port number and will be assigned unique TCP port numbers.
# The fact that the servers may not be using the user specified
# port number for TCP will be completely transparent to EPICS
# 3.13 or higher clients that will be locating the servers
# using the user specified UDP port number, but will be connecting to
# the servers using whatever TCP port has been assigned.
#
# If experiencing trouble getting clients to connect
# --------------------------------------------------
#
# o Make sure that the broadcast addresses are identical on the
# server's host and on the client's host. This can be checked with
# "netstat -i" or "ifconfig -a".
#
# o Make sure that the client and server are using the same UDP
# port. Check the server's port by running "netstat -a | grep nnn"
# where nnn is the port number involved. If you do not set
# EPICS_CA_SERVER_PORT or EPICS_CAS_SERVER_PORT
# then the default port will be 5064.
#
# o Two servers can run on the same host with the same server port number
# if the following restrictions are understood (good luck). If the host has a
# modern IP kernel it is possible to have two servers on the same UDP port.
# It is not possible for two servers to run on the same host using the same
# TCP IP server port. If the CA server library detects that a 2nd server is attempting
# to start on the same port as an existing CA server then both servers will use the
# same UDP port if it is a modern IP kernel, and the 2nd server will
# be allocated a new TCP port. In this situation the clients will still be
# configured to use the same port number for both servers. The clients
# will find the 2nd server via the shared UDP port, and transparently
# connect to the 2nd server's allocated TCP port. Be aware that If there are
# two server's running on the same host on the same UDP port then they will
# both receive all UDP search requests sent as broadcasts, but will unfortunately (due to
# what I consider to be a real weakness of most IP kernel implementations) only one
# of the servers will typically receive UDP search requests sent to unicast addresses (i.e.
# a specific host's ip address).
#
EPICS_CA_BEACON_PERIOD=15.0
EPICS_CAS_INTF_ADDR_LIST=""
EPICS_CAS_BEACON_ADDR_LIST=""
EPICS_CAS_SERVER_PORT=
# Log Server:
# EPICS_IOC_LOG_PORT Log server port number etc.
EPICS_IOC_LOG_PORT=7004
# Other services:
EPICS_CMD_PROTO_PORT=
EPICS_AR_PORT=7002

View File

@@ -1,32 +0,0 @@
#*************************************************************************
# Copyright (c) 2002 The University of Chicago, as Operator of Argonne
# National Laboratory.
# Copyright (c) 2002 The Regents of the University of California, as
# Operator of Los Alamos National Laboratory.
# EPICS BASE Versions 3.13.7
# and higher are distributed subject to a Software License Agreement found
# in file LICENSE that is included with this distribution.
#*************************************************************************
# CONFIG_HOST_ARCH.Borland
#
EXE=.exe
HOSTEXE=.exe
CP =$(PERL) $(EPICS_BASE_TOOLS)/cp.pl
MV =$(PERL) $(EPICS_BASE_TOOLS)/mv.pl
RM =$(PERL) $(EPICS_BASE_TOOLS)/rm.pl -f
MKDIR=$(PERL) $(EPICS_BASE_TOOLS)/mkdir.pl
RMDIR=$(PERL) $(EPICS_BASE_TOOLS)/rm.pl -rf
FN =$(PERL) $(EPICS_BASE_TOOLS)/fullName.pl
CHMOD=echo
ECHO=echo
WIND_HOST_TYPE = x86-win32
# Does not work if using cygwin make
# because HOME is always defined
ifndef HOME
HOME = $(HOMEDRIVE)$(HOMEPATH)
endif

View File

@@ -1,14 +0,0 @@
#*************************************************************************
# Copyright (c) 2002 The University of Chicago, as Operator of Argonne
# National Laboratory.
# Copyright (c) 2002 The Regents of the University of California, as
# Operator of Los Alamos National Laboratory.
# EPICS BASE Versions 3.13.7
# and higher are distributed subject to a Software License Agreement found
# in file LICENSE that is included with this distribution.
#*************************************************************************
# CONFIG_HOST_ARCH.Darwin
#
# Include definitions common to all Unix archs
include $(EPICS_BASE)/config/CONFIG_HOST_ARCH.UnixCommon

View File

@@ -1,17 +0,0 @@
#*************************************************************************
# Copyright (c) 2002 The University of Chicago, as Operator of Argonne
# National Laboratory.
# Copyright (c) 2002 The Regents of the University of California, as
# Operator of Los Alamos National Laboratory.
# EPICS BASE Versions 3.13.7
# and higher are distributed subject to a Software License Agreement found
# in file LICENSE that is included with this distribution.
#*************************************************************************
# CONFIG_HOST_ARCH.Linux
#
# Include definitions common to all Unix archs
include $(EPICS_BASE)/config/CONFIG_HOST_ARCH.UnixCommon
WIND_HOST_TYPE = i386-linux2

View File

@@ -1,27 +0,0 @@
#*************************************************************************
# Copyright (c) 2002 The University of Chicago, as Operator of Argonne
# National Laboratory.
# Copyright (c) 2002 The Regents of the University of California, as
# Operator of Los Alamos National Laboratory.
# EPICS BASE Versions 3.13.7
# and higher are distributed subject to a Software License Agreement found
# in file LICENSE that is included with this distribution.
#*************************************************************************
# CONFIG_HOST_ARCH.UnixCommon
#
# Unix command definitions
CP = cp
MV = mv
RM = rm -f
MKDIR = mkdir
RMDIR = rm -rf
CHMOD = "/bin/chmod"
# Set LD_LIBRARY_PATH for shared library builds
ifneq ($(EPICS_BASE),$(INSTALL_LOCATION))
export LD_LIBRARY_PATH := $(INSTALL_HOST_LIB):$(EPICS_BASE_HOST_LIB):$(LD_LIBRARY_PATH)
else
export LD_LIBRARY_PATH := $(EPICS_BASE_HOST_LIB):$(LD_LIBRARY_PATH)
endif

View File

@@ -1,31 +0,0 @@
#*************************************************************************
# Copyright (c) 2002 The University of Chicago, as Operator of Argonne
# National Laboratory.
# Copyright (c) 2002 The Regents of the University of California, as
# Operator of Los Alamos National Laboratory.
# EPICS BASE Versions 3.13.7
# and higher are distributed subject to a Software License Agreement found
# in file LICENSE that is included with this distribution.
#*************************************************************************
# CONFIG_HOST_ARCH.WIN32
#
EXE=.exe
HOSTEXE=.exe
CP =$(PERL) $(EPICS_BASE_TOOLS)/cp.pl
MV =$(PERL) $(EPICS_BASE_TOOLS)/mv.pl
RM =$(PERL) $(EPICS_BASE_TOOLS)/rm.pl -f
MKDIR=$(PERL) $(EPICS_BASE_TOOLS)/mkdir.pl
RMDIR=$(PERL) $(EPICS_BASE_TOOLS)/rm.pl -rf
CHMOD=echo
ECHO=echo
WIND_HOST_TYPE = x86-win32
# Does not work if using cygwin make
# because HOME is always defined
ifndef HOME
HOME = $(HOMEDRIVE)$(HOMEPATH)
endif

View File

@@ -1,23 +0,0 @@
#*************************************************************************
# Copyright (c) 2002 The University of Chicago, as Operator of Argonne
# National Laboratory.
# Copyright (c) 2002 The Regents of the University of California, as
# Operator of Los Alamos National Laboratory.
# EPICS BASE Versions 3.13.7
# and higher are distributed subject to a Software License Agreement found
# in file LICENSE that is included with this distribution.
#*************************************************************************
# CONFIG_HOST_ARCH.cygwin-x86
#
# This file is maintained by the EPICS community.
# Include definitions common to all Unix archs
-include $(EPICS_BASE)/config/CONFIG_HOST_ARCH.UnixCommon
EXE=.exe
HOSTEXE=.exe
TORNADO=YES
WIND_HOST_TYPE = x86-win32

View File

@@ -1,23 +0,0 @@
#*************************************************************************
# Copyright (c) 2002 The University of Chicago, as Operator of Argonne
# National Laboratory.
# Copyright (c) 2002 The Regents of the University of California, as
# Operator of Los Alamos National Laboratory.
# EPICS BASE Versions 3.13.7
# and higher are distributed subject to a Software License Agreement found
# in file LICENSE that is included with this distribution.
#*************************************************************************
# CONFIG_HOST_ARCH.cygwin32
#
# This file is maintained by the EPICS community.
# Include definitions common to all Unix archs
-include $(EPICS_BASE)/config/CONFIG_HOST_ARCH.UnixCommon
EXE=.exe
HOSTEXE=.exe
TORNADO=YES
WIND_HOST_TYPE = x86-win32

View File

@@ -1,11 +0,0 @@
#*************************************************************************
# Copyright (c) 2002 The University of Chicago, as Operator of Argonne
# National Laboratory.
# Copyright (c) 2002 The Regents of the University of California, as
# Operator of Los Alamos National Laboratory.
# EPICS BASE Versions 3.13.7
# and higher are distributed subject to a Software License Agreement found
# in file LICENSE that is included with this distribution.
#*************************************************************************
-include $(EPICS_BASE)/config/CONFIG_HOST_ARCH.Darwin

View File

@@ -1,11 +0,0 @@
#*************************************************************************
# Copyright (c) 2002 The University of Chicago, as Operator of Argonne
# National Laboratory.
# Copyright (c) 2002 The Regents of the University of California, as
# Operator of Los Alamos National Laboratory.
# EPICS BASE Versions 3.13.7
# and higher are distributed subject to a Software License Agreement found
# in file LICENSE that is included with this distribution.
#*************************************************************************
-include $(EPICS_BASE)/config/CONFIG_HOST_ARCH.Darwin

View File

@@ -1,11 +0,0 @@
#*************************************************************************
# Copyright (c) 2002 The University of Chicago, as Operator of Argonne
# National Laboratory.
# Copyright (c) 2002 The Regents of the University of California, as
# Operator of Los Alamos National Laboratory.
# EPICS BASE Versions 3.13.7
# and higher are distributed subject to a Software License Agreement found
# in file LICENSE that is included with this distribution.
#*************************************************************************
-include $(EPICS_BASE)/config/CONFIG_HOST_ARCH.Darwin

View File

@@ -1,16 +0,0 @@
#*************************************************************************
# Copyright (c) 2002 The University of Chicago, as Operator of Argonne
# National Laboratory.
# Copyright (c) 2002 The Regents of the University of California, as
# Operator of Los Alamos National Laboratory.
# EPICS BASE Versions 3.13.7
# and higher are distributed subject to a Software License Agreement found
# in file LICENSE that is included with this distribution.
#*************************************************************************
# CONFIG_HOST_ARCH.hp700
#
# Include definitions common to all Unix archs
include $(EPICS_BASE)/config/CONFIG_HOST_ARCH.UnixCommon
WIND_HOST_TYPE = parisc-hpux10

View File

@@ -1,12 +0,0 @@
#*************************************************************************
# Copyright (c) 2002 The University of Chicago, as Operator of Argonne
# National Laboratory.
# Copyright (c) 2002 The Regents of the University of California, as
# Operator of Los Alamos National Laboratory.
# EPICS BASE Versions 3.13.7
# and higher are distributed subject to a Software License Agreement found
# in file LICENSE that is included with this distribution.
#*************************************************************************
# hpux-parisc is the new name for hp700
-include $(EPICS_BASE)/config/CONFIG_HOST_ARCH.hp700

View File

@@ -1,12 +0,0 @@
#*************************************************************************
# Copyright (c) 2002 The University of Chicago, as Operator of Argonne
# National Laboratory.
# Copyright (c) 2002 The Regents of the University of California, as
# Operator of Los Alamos National Laboratory.
# EPICS BASE Versions 3.13.7
# and higher are distributed subject to a Software License Agreement found
# in file LICENSE that is included with this distribution.
#*************************************************************************
# hpux-parisc is the new name for hp700
-include $(EPICS_BASE)/config/CONFIG_HOST_ARCH.hp700

View File

@@ -1,13 +0,0 @@
#*************************************************************************
# Copyright (c) 2002 The University of Chicago, as Operator of Argonne
# National Laboratory.
# Copyright (c) 2002 The Regents of the University of California, as
# Operator of Los Alamos National Laboratory.
# EPICS BASE Versions 3.13.7
# and higher are distributed subject to a Software License Agreement found
# in file LICENSE that is included with this distribution.
#*************************************************************************
-include $(EPICS_BASE)/config/CONFIG_HOST_ARCH.Linux
WIND_HOST_TYPE = ppc-linux

View File

@@ -1,12 +0,0 @@
#*************************************************************************
# Copyright (c) 2002 The University of Chicago, as Operator of Argonne
# National Laboratory.
# Copyright (c) 2002 The Regents of the University of California, as
# Operator of Los Alamos National Laboratory.
# EPICS BASE Versions 3.13.7
# and higher are distributed subject to a Software License Agreement found
# in file LICENSE that is included with this distribution.
#*************************************************************************
# linux-x86 is the new name for linux
-include $(EPICS_BASE)/config/CONFIG_HOST_ARCH.Linux

View File

@@ -1,14 +0,0 @@
#*************************************************************************
# Copyright (c) 2002 The University of Chicago, as Operator of Argonne
# National Laboratory.
# Copyright (c) 2002 The Regents of the University of California, as
# Operator of Los Alamos National Laboratory.
# EPICS BASE Versions 3.13.7
# and higher are distributed subject to a Software License Agreement found
# in file LICENSE that is included with this distribution.
#*************************************************************************
# linux-x86 is the new name for linux
-include $(EPICS_BASE)/config/CONFIG_HOST_ARCH.Linux
HOST_OPT = NO

View File

@@ -1,14 +0,0 @@
#*************************************************************************
# Copyright (c) 2002 The University of Chicago, as Operator of Argonne
# National Laboratory.
# Copyright (c) 2002 The Regents of the University of California, as
# Operator of Los Alamos National Laboratory.
# EPICS BASE Versions 3.13.7
# and higher are distributed subject to a Software License Agreement found
# in file LICENSE that is included with this distribution.
#*************************************************************************
# Include definitions common to all Unix archs
include $(EPICS_BASE)/config/CONFIG_HOST_ARCH.UnixCommon
WIND_HOST_TYPE = x86-linux2

View File

@@ -1,14 +0,0 @@
#*************************************************************************
# Copyright (c) 2002 The University of Chicago, as Operator of Argonne
# National Laboratory.
# Copyright (c) 2002 The Regents of the University of California, as
# Operator of Los Alamos National Laboratory.
# EPICS BASE Versions 3.13.7
# and higher are distributed subject to a Software License Agreement found
# in file LICENSE that is included with this distribution.
#*************************************************************************
# Include definitions common to all Unix archs
include $(EPICS_BASE)/config/CONFIG_HOST_ARCH.linux-x86_64
HOST_OPT = NO

View File

@@ -1,17 +0,0 @@
#*************************************************************************
# Copyright (c) 2002 The University of Chicago, as Operator of Argonne
# National Laboratory.
# Copyright (c) 2002 The Regents of the University of California, as
# Operator of Los Alamos National Laboratory.
# EPICS BASE Versions 3.13.7
# and higher are distributed subject to a Software License Agreement found
# in file LICENSE that is included with this distribution.
#*************************************************************************
# CONFIG_HOST_ARCH.sgi
#
# Include definitions common to all Unix archs
include $(EPICS_BASE)/config/CONFIG_HOST_ARCH.UnixCommon
WIND_HOST_TYPE = sgi

Some files were not shown because too many files have changed in this diff Show More