Compare commits

...

2139 Commits

Author SHA1 Message Date
Ralph Lange
a7826646c0 GHA: Update actions/upload-artifact to v4 2024-12-16 12:02:06 +01:00
Ralph Lange
f103a0b376 Update ci-scripts to 3.4.1
Builds on AppVeyor (VS2019) started to fail
because of the Python version/distutils
2024-03-01 18:07:55 +01:00
Andrew Johnson
a249561677 Added darwin-aarch64 support from 7.0 branch 2022-08-21 16:17:29 -05:00
Andrew Johnson
96887926bf Merge Freddie's set_thread_descriptions branch
PR #270
2022-08-21 16:01:51 -05:00
Andrew Johnson
c8647ffab7 Added Release Note 2022-08-21 16:00:30 -05:00
Freddie Akeroyd
4b884c15b1 SetThreadName: Add WINAPI (correctly) for 32bit builds 2022-05-24 14:40:46 +01:00
Freddie Akeroyd
0ace4e4a30 SetThreadName: Add WINAPI for 32bit builds 2022-05-24 14:21:12 +01:00
Freddie Akeroyd
3cf2d3737f Use SetThreadDescription(), if available, to set thread name 2022-05-24 13:24:42 +01:00
Ralph Lange
7c168f20f4 Fix gdd string to double conversion
This is an alternative fix for the issue described in
https://github.com/epics-modules/pcas/issues/4 and
https://github.com/epics-extensions/ca-gateway/issues/37
that keeps the call to epicsScanDouble() before trying
sscanf() first with "%lf" (ignoring extra characters)
then with "%x" (to catch hex numbers).
(closes #216)
2021-12-08 17:07:11 +01:00
Andrew Johnson
5cddcea829 Change the epicsTimerTest delayVerify failure condition
This test verifies timer delays between 1.0 and 3.4 seconds.
A test failure now means the measured delay was more than
0.25 seconds different than the request, instead of being
5% of the request. This should now pass on GHA macOS.

On the 7.0 branch it should call testImpreciseTiming() and
use a smaller absolute delay threshold for better targets.
2021-09-17 11:16:00 -05:00
Andrew Johnson
9b69e63a69 Update GHA config, drop Ubuntu-16.04 builds 2021-09-17 10:06:10 -05:00
Andrew Johnson
422513990e Release notes for Win32 timer fix. 2021-09-16 14:54:31 -05:00
Andrew Johnson
3313860691 Win32 osdThread.c polishing
A little optimization of Freddie's code
Rename the new non-public routine
2021-09-16 14:45:25 -05:00
Andrew Johnson
2b8eb97b79 Merge Freddie's refactor_get_param_win32 branch 2021-09-16 13:28:42 -05:00
Andrew Johnson
9842bd1b20 Prefer to install %.html files from O.Common 2021-09-16 13:21:59 -05:00
Andrew Johnson
e7ea81c7a2 Reference doc tweaks to the dfanout record 2021-09-14 18:26:32 -05:00
Andrew Johnson
c528948f45 Adjust build rules for POD to HTML conversion 2021-09-14 18:25:30 -05:00
Freddie Akeroyd
00e9ecf7b5 Fix typo in osdThreadGetTimer 2021-09-11 22:19:40 +01:00
Freddie Akeroyd
65b34874bd Check for NULL in osdThreadGetTimer 2021-09-11 22:17:09 +01:00
Freddie Akeroyd
939d84f31a Refactor to use common epicsThreadGetParamWIN32() function 2021-09-11 22:10:10 +01:00
Andrew Johnson
67fcd65656 Update versions after tagging 2021-06-27 12:20:41 -05:00
Andrew Johnson
3be67aca3c Releasing R3.15.9
Some checks failed
Base / Ub-20 gcc-8 (push) Has been cancelled
Base / Ub-16 gcc-4.9 (push) Has been cancelled
Base / Win2019 MSC-19 (push) Has been cancelled
Base / Ub-20 clang-10 (push) Has been cancelled
Base / Ub-20 clang-10 C++11 (push) Has been cancelled
Base / MacOS clang-12 (push) Has been cancelled
Base / Ub-16 clang-9 (push) Has been cancelled
Base / Ub-20 gcc-9 + MinGW (push) Has been cancelled
Base / Ub-20 gcc-9 + RT-4.10 (push) Has been cancelled
Base / Ub-20 gcc-9 + RT-4.9 (push) Has been cancelled
Base / Ub-20 gcc-9 C++11, static (push) Has been cancelled
Base / Ub-20 gcc-9 + MinGW, static (push) Has been cancelled
Base / Ub-16 gcc-4.8 (push) Has been cancelled
Base / Win2019 MSC-19, static (push) Has been cancelled
2021-06-27 12:18:45 -05:00
Andrew Johnson
ebf4a155d7 Added missing entries to Release Notes 2021-06-26 18:08:52 -05:00
Andrew Johnson
28531b0dbb Reworked the README.md file
Lots of updates; removed version number
2021-06-26 17:57:33 -05:00
Andrew Johnson
5c3ecf9054 Dump the Darwin README file, very dated 2021-06-26 17:55:11 -05:00
Freddie Akeroyd
e8c5748f89 Use <osiSock.h> rather than <osdSock.h> 2021-06-25 11:37:07 +01:00
Michael Davidsaver
857527280b ci: install versioned g++ 2021-05-19 08:49:24 -07:00
Freddie Akeroyd
d1ddbad053 Fix issue with very large timeout passed to epicsEventWaitWithTimeout()
A very large timeout was getting converted to a 0 wait and causing
some unit tests to fail in strange and random ways. Not trapping
large timeouts was an oversight when converting to waitable timers
on WIN32
2021-05-19 08:46:11 -07:00
Andrew Johnson
b55c019f10 Merged Freddie's waitable_timers branch into 3.15 2021-05-05 17:55:00 -05:00
Andrew Johnson
31584e52be Merged Ralph's win-Z7 branch into 3.15 2021-05-05 17:49:11 -05:00
Andrew Johnson
2eb5af3167 Return dbPutSpecial(paddr, 1) status from dbPut()
The status from RSET::special(paddr, 1) has not been returned
to the put caller since 3.14, due to a bad up-merge.
2021-05-04 11:18:54 -05:00
Ralph Lange
fa069b0845 Revert config fixes for parallel builds with MSVC
This reverts commit 1454f42a27.
This reverts commit 4aee25e8e2.
2021-03-29 17:49:02 +02:00
Ralph Lange
c78db512f2 Windows: use -Z7 instead of -Zi to generate debug symbols
"C7 compatible" or "old-style" debug information is kept local
in the translation unit (.obj file) and does not create issues
with parallel builds
2021-03-26 17:30:36 +01:00
Freddie Akeroyd
29e9843056 Add release notes entry for waitable timers 2021-03-12 19:24:09 +00:00
Andrew Johnson
0c4ab7b24a Merge my 'make-inc-fix' branch into 3.15 2021-03-11 20:45:37 -06:00
Andrew Johnson
d831c2b384 Merge 'FreddieAkeroyd-use_epicsStrtod' into 3.15 2021-03-11 20:18:57 -06:00
Andrew Johnson
34d06b6e36 Merge branch 'gabrielfedel-fix_msi' into 3.15 2021-03-11 20:12:07 -06:00
Andrew Johnson
b2f7f4e173 Minor fixes in configure/RULES files 2021-03-11 18:13:44 -06:00
Freddie Akeroyd
3c7fb7990f Use <epicsStdlib.h> 2021-03-11 15:08:00 +00:00
Andrew Johnson
c359b49aed Fix the 3.15 'make inc' build target
Now generates and installs dbd, header and html files.
No compilation involved/required.
2021-03-10 22:05:39 -06:00
Freddie Akeroyd
c140a0a804 Add additional cleanup and error handling 2021-03-10 21:58:35 +00:00
Gabriel Fedel
0bc2a3e999 Fix variable type and cast on msi.cpp
This way the attribution of i to cmdind is a valid value.
2021-03-10 14:37:14 +01:00
Freddie Akeroyd
8e7702c8a5 Use epicsStrtod, remove some warnings 2021-03-10 11:29:45 +00:00
Freddie Akeroyd
5f94ab6d9f Tidy up 2021-03-10 10:47:24 +00:00
Gabriel Fedel
6ac10d43b1 Fix type comparision on msi.cpp
This change fix the comparision of different signedess (int and long
unsigned int).
2021-03-10 09:45:01 +01:00
Freddie Akeroyd
c6af4a245d Use waitable timers 2021-03-10 01:17:47 +00:00
Andrew Johnson
9184983cf0 Merge branch Ticket80_use_os_strtod_if_above_vs_2015 2021-03-09 18:27:18 -06:00
Jack Harper
30172226f9 whoops, MSVC 1900 not 1800 2021-03-09 13:13:16 +00:00
Jack Harper
2ea0994507 tests passing 2021-03-09 13:04:57 +00:00
Ralph Lange
dd9f38d711 Build: Fix spurious failures with SNIPPETS in Windows
Under some combinations of shell / Make version / Windows version,
Windows make was giving up searching for a target "../"
2021-01-26 17:14:00 +01:00
Andrew Johnson
d997690aa5 Build: Fix tests for the 'make -s' flag
'make -j2' or more adds an 's' to MFLAGS in "--jobserver-fds".
This is the correct way to do the check.
2020-12-30 13:08:48 -06:00
Andrew Johnson
a043599e18 GHA: Save .tap files as an artifact 2020-12-28 18:04:06 -06:00
Andrew Johnson
02be10069e Make the CI commit-ignore patterns match 2020-12-28 17:13:45 -06:00
Andrew Johnson
ff4317d05a Make .appveyor.yml into a branch-specific filename
The name should match the Appveyor account that builds the branch;
From a suggestion by Michael.
2020-12-28 15:59:12 -06:00
Andrew Johnson
63919e199c Fix menuPriority filename in RecordReference index 2020-12-28 13:40:35 -06:00
Andrew Johnson
518bab9675 Clean up .appveyor.yml
Whitelist the tagged versions too
Exclude MinGW debug builds since (unlike the VS builds) they use
the same system libraries as the non-debug builds.
We aren't building vs2008 any more anyway.
2020-12-23 11:56:32 -06:00
Andrew Johnson
a8036d7f34 posix/osdThread: Use "Once" versions properly
Functions used before epicsThreadInit() returns must call the
checkStatusOnceQuit() version to avoid recursion from errlogInit()
2020-12-23 11:53:05 -06:00
Andrew Johnson
436ce4526b Appveyor: Update CMP from mingw => gcc 2020-12-21 15:49:52 -06:00
Andrew Johnson
9ba0081a82 Change the Appveyor steps to call the new cue.py script 2020-12-18 15:35:18 -06:00
Andrew Johnson
c60056d4d6 Reconfigure and tidy up the testFailure stuff
Many variables renamed.
Generated files are now named .log for .gitignore
Actions are now defined in CONFIG_BASE variables.
2020-12-18 15:32:46 -06:00
Andrew Johnson
68c056f2f8 Fix makeTestfile.pl to report test failures properly
If a test program reports test failures, the Perl wrapper
must return the same error status. On Windows where we use
system() instead of exec() that needs some value fiddling.
2020-12-18 10:20:31 -06:00
Andrew Johnson
48a6d2f781 GH-Actions: Undo my workflow name change
Changing it also modified the names of all previous builds.
2020-12-17 20:59:56 -06:00
Andrew Johnson
79bb9e000b GH-Actions: Tweaks 2020-12-17 20:39:08 -06:00
Andrew Johnson
c404eb3f83 GH-Actions: Add short names for each job 2020-12-17 20:38:06 -06:00
Andrew Johnson
7beb32e209 Extend testFailures.pl to list the failed test programs
Creates a file .taps-failed in each O.<arch> directory,
appending the name of each tapfile that has failures to it.
The testFailures script now reads the .taps-failed files
from each directory listed in .tests-failed and nicely
displays the failing tests listed in each.
2020-12-17 18:34:24 -06:00
Andrew Johnson
a365de2419 Fix return value of epicsUnitTest::testDone()
Wasn't properly returning a non-zero exit status
when HARNESS_ACTIVE was set.
2020-12-17 18:21:07 -06:00
Ralph Lange
2035fc641a PCAS: fix scope of tsDLList when used in other classes
Use ::tsDLList to avoid resolving to privately inherited
name (which was breaking builds on newer clang compilers)
2020-12-07 10:07:23 +01:00
Ralph Lange
d25c9a74ad ci: travis-ci -> github actions 2020-12-06 15:12:28 +01:00
Andrew Johnson
7632c355ee dbpr: Catch buffer overflow from long link strings.
Fixes lp: #1776141

Currently this just truncates when we hit the end of the buffer,
a better solution is warranted.
2020-11-16 14:25:51 -05:00
Andrew Johnson
4730e14cc7 Document the PINI, POST and PRIO menus 2020-11-13 18:17:47 -06:00
Ralph Lange
c969f05f51 AppVeyor: explicitly set default runner image (VS2015) 2020-11-03 12:04:57 +01:00
Ralph Lange
3947b9a061 Appveyor: whitelist 3.15 branch
- DO NOT UPMERGE TO 7.0

The AppVeyor epics-base-3 project is supposed to pull the .appveyor.yml from this branch to only build commits from 3.15.
2020-11-03 09:41:45 +01:00
Martin Konrad
228ad79b7a Simplify addToList() function 2020-10-13 18:38:17 -04:00
Martin Konrad
bbc0a56d2b Fix wrong PHAS order
Records with lower PHAS value than any previously loaded records
were inserted at the end of the list rather than at the beginning.
This fixes lp: #1899697. Also fixes a proto-bug in that the second
argument to the previously used ellAdd() call assumed that
offsetof(scan_element, node)==0.

Thanks to Bruno Martins for providing this patch.
2020-10-13 18:34:39 -04:00
Andrew Johnson
ad3728d00d Edits to the Record Ref index page 2020-08-21 15:43:48 -05:00
Ralph Lange
bf7a1605c6 Name generated junitfiles '<testname>-results.xml'
- following an idea by Freddie Akeroyd,
  to allow better distinction from other xml files
2020-06-23 13:47:33 +02:00
Ralph Lange
0fbfc74182 Fix missing deletion in 97b29129 from 'fix/misc'
- fixes 97b29129 that was replacing two assert() statements
  without removing the original (offending) lines
2020-06-23 11:23:57 +02:00
Ralph Lange
b248023eb2 Merge Ralph's 'fix/misc' branch into 3.15
(closes #77)
2020-06-10 18:39:22 +02:00
Ralph Lange
92374b2be2 libcom/osi: fix potential leak in vxWorks/osdThread.c
(found by sonar/cppcheck)
2020-06-10 14:26:40 +02:00
Ralph Lange
579fc9d0c7 libcom/osi: fix potential leak in default/osdThreadHooks.c
(found by sonar/cppcheck)
2020-06-10 14:26:40 +02:00
Ralph Lange
cd47bbf99b libcom/osi: fix debug printf() in default/osdNetIntf.c
(found by sonar/cppcheck)
2020-06-10 14:26:40 +02:00
Ralph Lange
d3d40689c8 libcom/osi: fix dangerous usage of strncat (WIN32)
(found by sonar/cppcheck)
2020-06-10 14:26:40 +02:00
Ralph Lange
d5eb055bb7 libcom/flex: fix sscanf() argument types
(code smell found by sonar/cppcheck)
2020-06-10 14:26:40 +02:00
Ralph Lange
97b29129af libcom/test: don't modify operand in assert() statement
(code smell found by sonar/cppcheck)
2020-06-10 14:26:40 +02:00
Ralph Lange
801710b8c7 db: fix possible null pointer dereference
(found by sonar/cppcheck)
2020-06-10 14:26:40 +02:00
Ralph Lange
30f5c3b301 db: fix incomplete initialization in dbChannelOpen()
(found by sonar/cppcheck)
2020-06-10 14:26:40 +02:00
Ralph Lange
69d4c238e7 ca/tools: free() all allocated buffers
(found by sonar/cppcheck)
2020-06-09 15:52:14 +02:00
Ralph Lange
7d1ff1411f ca/tools: fix type errors in option parsing
(found by sonar/cppcheck)
2020-06-09 15:51:35 +02:00
Ralph Lange
f0e143b907 ca/client: fix possible null pointer dereference
(found by sonar/cppcheck)
2020-06-09 15:48:33 +02:00
Andrew Johnson
e923790c41 Update versions after tagging 2020-05-15 13:55:29 -05:00
Andrew Johnson
c7e42fab3c Set version number to 3.15.8, clear snapshot 2020-05-15 12:00:23 -05:00
Andrew Johnson
2f28ce94f4 Release Notes changes for 3.15.8 2020-05-15 11:36:45 -05:00
Andrew Johnson
732f8b19be Merge branch 'defaultMessageQueue' into 3.15 2020-05-14 10:41:52 -05:00
Andrew Johnson
b03e2f376b eMQTest: Start each test with a new (empty) queue
If fastReceiver() took more than 0.01 seconds to exit,
sleepySender() might have pushed a second message onto
the queue after setting recvExit, so there would be an
extra message in the queue for the next test, which I
was seeing on Appveyor. That's my current theory...
2020-05-13 16:11:31 -05:00
Andrew Johnson
59c68807b6 Heinz Junkes' fix for lp: #1812084 Build failure on RTEMS
I reduced some of the code duplication from his original.
2020-05-13 15:26:34 -05:00
Andrew Johnson
2e7ed02a60 Allow/expect MinGW to fail epicsStackTraceTest #5 2020-05-07 13:13:26 -05:00
Andrew Johnson
089954aaab MessageQueue Tests: Extend Mark's sleep tests 2020-05-07 13:12:12 -05:00
Andrew Johnson
34e0b2f305 osdMessageQueue: Undo change to -ve timeout handling
The internal mySend() and myReceive() routines do expect a timeout
of -1 to mean wait forever, see the epicsMessageQueueSend() and
epicsMessageQueueReceive() API routines.
2020-05-04 11:56:14 -05:00
Andrew Johnson
ceb13797a6 Cosmetic 2020-05-01 00:13:02 -05:00
Andrew Johnson
084557bd3e osdMessageQueue: Don't wake our sender until we're ready for it
Move the code that wakes up the next sending task to after we've
added our threadNode to the receiveQueue. He still has to wait for
us to release the Mutex though, so this might make no difference.
This commit also changes when we decrement the number of waiting
senders so it always happens immediately after a threadNode gets
taken off the sendQueue by the code that removed it.
2020-05-01 00:12:32 -05:00
Andrew Johnson
aeed7cfbdd osdMessageQueue: This is the mirror of Heinz Junkes' earlier fix
When sending a message, if the queue is full so we have to wait, we
create a threadNode with an eventNode in it and stick it on the
sendQueue, then wait for a receiver to signal that event, waking us.
If we awoke due to a timeout but a receiver was actually waking us
up anyway (i.e. eventSent was set), we shouldn't give up.
2020-04-30 23:55:30 -05:00
Andrew Johnson
183c3b2a3e osdMessageQueue: Clear eventNode before returning it
Introduced freeEventNode() which ensures eventNodes don't have a
signalled event in them before returning the node to the freeList.
Callers pass the status from epicsEventWaitWithTimeout() to indicate
whether it was signalled or not. If it timed out we must trigger it
and Wait to clear the event state.
2020-04-30 23:38:51 -05:00
Andrew Johnson
cf2fef2405 osdMessageQueue: Return sooner on -ve timeout
It appears that previously a negative timeout actually implemented a
'wait forever', but the VxWorks and RTEMS implementations both check
for (timeout <= 0) and return immediately if nothing can be done
without waiting.
2020-04-30 23:27:43 -05:00
Andrew Johnson
298c8706ec osdMessageQueue: Rename freeEventNode() -> destroyEventNode() 2020-04-30 22:59:58 -05:00
Ralph Lange
49de2ec498 Merge ralph@gh:use-ci-scripts-3.15 into 3.15 2020-04-27 12:10:24 +02:00
Ralph Lange
0aa6e9603b Update .ci submodule to v2.3.3
- fix appveyor issue when building base
- fix RTEMS cross build for Base 3.15
- run tests using parallel make
2020-04-27 11:59:57 +02:00
Andrew Johnson
314e09d8ca Build system release notes 2020-04-24 16:44:49 -05:00
Ralph Lange
076175386f ci: remove old integration in .ci-local 2020-04-24 19:27:05 +02:00
Ralph Lange
f40d379485 appveyor: update .appveyor.yml for ci-scripts 2020-04-24 19:27:05 +02:00
Ralph Lange
445cbb8221 travis-ci: update .travis.yml for ci-scripts
- use more EXTRAs on MacOS for make args
2020-04-24 19:27:05 +02:00
Ralph Lange
a9c8d8d5d3 Add ci-scripts v2.3.2 (submodule in .ci) 2020-04-24 15:11:32 +02:00
Ralph Lange
1ff64f72a9 ci: move ci -> .ci-local
also rename appveyor.yml -> .appveyor.yml
2020-04-23 16:00:53 +02:00
Ralph Lange
f10d0d95b0 Apply perl rules for .tap and .xml only to perl tests
Don't apply the %.tap: %.t and %.xml: %.tap rules to tap and junit
result files from other test frameworks.
(They would overwrite the other frameworks' own rules.)
2020-04-21 11:45:50 +02:00
Andrew Johnson
dfbda1394d Revert the runtests:: change but in an extensible way
Use only %.t files in new TESTSCRIPTS.t var for Perl tests.
TAPFILES and JUNITFILES can be appended to by other rules.
The runtests and test-results rules have no direct recipes.
Added run-tap-tests and tap-results rules, simlified recipe.
Make %.tap:%.t and %.xml:%.tap into static pattern rules.
2020-04-21 01:39:59 -05:00
Andrew Johnson
d05d8807ec Stop generating the testspec file
It was created before modern continuous integration systems
came along; Diamond were supposed to run the tests for us,
but they didn't last for very long.
2020-04-21 01:17:48 -05:00
Andrew Johnson
582a9dbef5 Replace pre-make rule with before-actions rules
For all standard build ACTIONS, a rule before-<action> is
run just before running that action in the subdirectories
given by the DIRS variable. Only works in Makefiles that
include RULES_DIRS or RULES_TOP.
2020-04-21 01:14:03 -05:00
Andrew Johnson
b655662131 Appveyor: Move 'make test-results' to the on_finish stage 2020-04-20 11:33:37 -05:00
Andrew Johnson
be061e1084 Tidy up testFailures script slighlty 2020-04-20 11:31:45 -05:00
Andrew Johnson
91c18c32d4 Have Appveyor make 'tapfiles test-results' instead of 'runtests' 2020-04-18 00:36:35 -05:00
Andrew Johnson
3790ce4452 Have 'make test-results' fail nicely if any tests did
Lists the directories with failed tests at the end of the build.
It is no longer necessary to use 'make -k' to see the results
of all tests after one or more failures as only the top-level
test-results recipe will generate a build error.
2020-04-18 00:18:11 -05:00
Andrew Johnson
566ab038d2 Make test-results not fail so it shows all results
For some reason 'make -k test-results' isn't always doing
the -k (continue-on-error) on Windows.
2020-04-17 16:51:48 -05:00
Andrew Johnson
648589e6ab podToHtml: Add bootstrap search path for EPICS::PodHtml 2020-04-17 16:42:18 -05:00
Andrew Johnson
841effe9ee epicsMessageQueueTest: Shorten the 1R4S tests 2020-04-16 17:14:58 -05:00
Andrew Johnson
a9727fd5cb Ben Franksen's fix for lp: #1868486 2020-04-16 17:12:25 -05:00
Andrew Johnson
fde0485d6b Added Mark Rivers' tests for the message queue timeout bug 2020-04-16 17:10:53 -05:00
Ralph Lange
cbf917e833 Improve automated testing rules to allow other test frameworks
- make runtests a double-colon rule, so that other test frameworks
  can add their own recipes independently
- only define runtests:: $TESTSCRIPTS rule when there are TESTSCRIPTS
  (to avoid having it run every time when no TESTSCRIPTS are defined)
- $(strip $TAPFILES) inside ifneq to fix trouble when TAPFILES=' '
2020-04-16 12:04:16 +02:00
Andrew Johnson
45cf2ea5ce Modify the POD to HTML conversion code to work on older Perls 2020-04-14 16:41:20 -05:00
Andrew Johnson
a95635a018 Merge Freddie's bit_operations branch into 3.15 2020-04-14 15:28:22 -05:00
Andrew Johnson
9df39475cd Merge Martin Konrad's fix-log-issues branch into 3.15 2020-04-14 11:41:23 -05:00
Andrew Johnson
bdf01e7a67 Merge Martin Konrad's Appveyor-worker-image branch into 3.15 2020-04-14 11:28:53 -05:00
Andrew Johnson
0dd5f863ef Add some release notes 2020-04-13 17:57:33 -05:00
Andrew Johnson
38339b6ccf Initialize main thread as OkToBlock 2020-04-13 17:56:09 -05:00
Martin Konrad
2aecf3142a Explicitly specify worker image 2020-04-13 16:45:21 -04:00
Ralph Lange
1687757752 catools: make camonitor handle type changes
taken from a patch provided by Dirk Zimoch (in 2014)
2020-04-06 10:58:40 +02:00
Andrew Johnson
1533a4f13f Updates to record POD documentation. 2020-04-03 00:33:51 -05:00
Andrew Johnson
a1aeb23314 Modify POD to HTML tools to better support links
Introduce derived classes to process links the way we need them.
Unify the generation of an ID from a section heading.
2020-04-03 00:29:22 -05:00
Andrew Johnson
933e276e1a Rolf Keitel's POD documentation for dbCommon (from the Wiki)
I split his two "Fields Common to ..." sections back into separate docs,
added links between them all, and made the appropriate build changes.
Also added these and the aai/aao records to the documentation index.
2020-04-02 15:47:10 -05:00
Freddie Akeroyd
7f02f8a386 Exclude VS2012 from -FS option
(cherry picked from 7.0 / commit 4aee25e8 and e29a53f0)
2020-03-28 15:55:35 +01:00
Rold Keitel
cb3fb18f40 POD docs: add aai & aai, update others 2020-03-26 17:41:12 -05:00
Rold Keitel
062c75a078 Prepare for POD documentation of the aa[io]Records 2020-03-26 16:35:58 -05:00
Andrew Johnson
b2160bd618 Merge Martin Konrad's replace-usleep branch into 3.15 2020-03-20 13:40:35 -05:00
Andrew Johnson
5b7f896312 Merge Dirk's emptyArrayCrashFix branch into 3.15 2020-03-20 13:28:34 -05:00
Andrew Johnson
a9034bb586 Fix clock_gettime issue on newer MinGW builds
Fixes lp: #1853168
2020-03-07 00:40:13 -06:00
Martin Konrad
f9820577c1 Replace usleep call by nanosleep
Also improve behavior in case signals are delivered to the sleeping
thread. This fixes a potential security weakness reported by codacy
(interaction of usleep with SIGALRM and other timer functions such
as sleep(), alarm(), setitimer(), and nanosleep() is unspecified).
2020-03-04 11:19:02 -05:00
Michael Davidsaver
e6914f3b80 osdSockUnsentCount.c check for existance of SIO_TCP_INFO 2020-02-20 15:37:18 -05:00
Andrew Johnson
41f1b0ffb5 Fix histogram record allocation bug
Found by Peter Heesterman: Potential use of NULL pcallback pointer.

Nothing looks at the return value from wdogInit(), so don't bother.
2020-02-19 15:09:13 -06:00
Andrew Johnson
d82d3d3679 Combine the iocVirgin and iocStopped states into iocVoid 2020-02-18 18:05:46 -06:00
e48cdb48ac dbGet should not crash when source is an empty array 2020-02-18 17:45:12 +01:00
Freddie Akeroyd
3944b32e04 Add back in optimisation disable 2020-02-17 13:30:15 +00:00
Freddie Akeroyd
a0667a122b Excluded x64 tests now need to be excluded on x86 too 2020-02-17 13:29:38 +00:00
Freddie Akeroyd
f2b4c412d3 Fix doc typo 2020-02-17 12:49:45 +00:00
Freddie Akeroyd
8250339e0d Update record pod documentation 2020-02-17 12:46:11 +00:00
Freddie Akeroyd
803593560d Remove redundant left logical shift 2020-02-17 12:22:20 +00:00
Freddie Akeroyd
bfae080af4 Merge branch '3.15' of git+ssh://git.launchpad.net/epics-base into bit_operations 2020-02-17 11:45:25 +00:00
Michael Davidsaver
6ae3f56560 Merge remote-tracking branch 'lp-konrad/fix-crash-dbloadrecords-after-iocinit' into 3.15
* lp-konrad/fix-crash-dbloadrecords-after-iocinit:
  Fix mingw cross-build
  Use accessor in iocInit
  Fix segfault when calling dbLoadRecords after iocInit
2020-02-14 17:18:01 +00:00
Bryan Robert Tester
4844fbbd82 moved listen into rsrv_grab_tcp to allow retry if failed
Fixes race condition with multiple IOCs starting simultaneously.
2020-02-14 17:10:04 +00:00
Gabriel Fedel
983937a52f Fix event record device support with constant INP
This fix apply to event record device with constant INP.
Now when the event record is proccessed the associated records with the
same SCAN setup get triggered correctly, it is not more necessary to set
VAL on event record.

Fixes lp: #1829770
2020-02-14 17:08:36 +00:00
Freddie Akeroyd
6867f97346 Fix bit operations failures on VS2019 32bit
Working with Dirk Zimoch @dirk.zimoch, fixed various issues
with bit operations on VS2019 32bit. These seem to relate to
handling bit 31 of a 32 bit number.

As EPICS << is an arithmetic bit shift, following Java we
have added <<< and >>> operators for logical shifts

Though it is on a different architecture, this looks like
a similar issue to LP: #1838792
2020-02-14 01:16:09 +00:00
Andrew Johnson
1d9e9ff4f7 Add new POD output files to RecordReference index 2020-02-13 09:06:48 -06:00
Andrew Johnson
eb8ca22704 Add new POD documentation, from Rolf Keitel
Documents the lsi, lso and printf record types.
2020-02-13 09:06:14 -06:00
Andrew Johnson
bfd289e85f Add converted histogram POD 2020-02-13 05:11:36 -06:00
Andrew Johnson
a5bae49dab Rename lsi, lso and printf *Record.dbd to .dbd.pod 2020-02-13 04:58:06 -06:00
Andrew Johnson
7a612f9524 Update to stringout POD from Rolf Keitel
Fix spelling of OMSL.
Document the stdio device support.
2020-02-12 09:25:54 -06:00
Andrew Johnson
0db8f8ca1b Rename histogramRecord.dbd to .dbd.pod 2020-02-12 07:45:04 -06:00
Andrew Johnson
dbd6f7e807 Adding tests for epicsThreadClass API
Two tests are disabled which hang the parent in the epicsThread destuctor
2020-01-23 14:26:33 -06:00
Andrew Johnson
54cd7e7ba1 MinGW: Replace -Wno-format with -D__USE_MINGW_ANSI_STDIO 2020-01-08 17:21:04 -06:00
Andrew Johnson
cbe6173417 Updates to the subArrayRecord reference page 2020-01-08 17:19:25 -06:00
Michael Davidsaver
f64f84744e more fun with isinf() and friends.
GNU libstdc++ prior to GCC 6.1.0, the overlay math.h always
includes math.h from glibc, which defines isinf() and friends.

GCC 6.1.0 includes a change (6c8ced3f4f867b72a623fe2f23efa204c5786a28)
so that the overlay math.h never includes the glibc math.h
when compiling c++.
The overlay math.h sometimes includes "using std::isinf"
Determined by inspecting libc math.h when building gcc.
2019-12-18 20:30:23 -08:00
Michael Davidsaver
d97a12f095 travis-ci test trusty w/ c++11 2019-12-18 20:30:23 -08:00
Andrew Johnson
475963453c Merge Martin Konrad's retire-epicsexcept branch into 3.15 2019-12-17 23:48:45 -06:00
Andrew Johnson
f5a442c0de Merge Martin Konrad's fix-typos branch 2019-12-17 23:46:07 -06:00
Martin Konrad
df519ce1a2 Fix typos in calcoutRecord.dbd.pod 2019-12-17 15:53:41 -05:00
Michael Davidsaver
feb938fae2 minor epicsTimerTest
(cherry picked from commit 7acd7c6145)
2019-12-16 13:16:31 -08:00
Michael Davidsaver
e068191684 epicsTimerTest loosen test threshold
(cherry picked from commit f955199805)
2019-12-16 13:16:30 -08:00
Michael Davidsaver
33f2d8c4aa debug epicsTimerTest
(cherry picked from commit 2af0c10470)
2019-12-16 13:16:29 -08:00
Michael Davidsaver
60a092fa50 posix/epicsMath.h
Include "<cmath>" for c++11 and pull in
non-namespace versions of isnan() and friends.
2019-12-16 11:40:13 -08:00
Michael Davidsaver
24f08460bb Revert "libcom: fix colliding isnan/isinf between C99 and C++0x for gcc-4"
This reverts commit 09ec3af337.
2019-12-16 11:40:13 -08:00
Michael Davidsaver
247fea0fa9 Revert "libcom: properly declare isnan() in C++ code"
This reverts commit 2e89a60c2d.
2019-12-16 11:40:13 -08:00
Michael Davidsaver
8a9637568e travis-ci /etc/hosts workaround 2019-12-16 11:40:13 -08:00
Michael Davidsaver
87229fdef0 redo travis-ci with matrix
add mix of Ubuntu versions
2019-12-16 11:40:13 -08:00
Michael Davidsaver
b0418e5274 epicsSockResolveTest add detail 2019-12-16 11:40:13 -08:00
Ralph Lange
2e89a60c2d libcom: properly declare isnan() in C++ code 2019-12-11 14:51:16 +01:00
Ralph Lange
09ec3af337 libcom: fix colliding isnan/isinf between C99 and C++0x for gcc-4
This fix can be removed once support for gcc-4 is dropped in 2038
2019-12-06 10:52:38 +01:00
Ralph Lange
70e9d46d75 libcom: import some C99 math (isnan etc.) into global namespace 2019-12-05 16:44:59 +01:00
Andrew Johnson
1d18aa3e6c Disable printf() format warnings on MinGW, they're broken 2019-11-21 12:20:56 -06:00
Andrew Johnson
a85967caea Cross-builds of 64-bit MinGW should inherit from 32-bit
Don't duplicate, this file missed an important change as a result.
2019-11-21 12:20:13 -06:00
Martin Konrad
a50b850ebd Fix mingw cross-build 2019-11-15 09:33:15 -05:00
Martin Konrad
6767bcd31e Use accessor in iocInit
This is simpler than using init hooks.
2019-11-14 13:57:45 -05:00
Martin Konrad
81550ac4d3 Fix segfault when calling dbLoadRecords after iocInit
This fixes lp:1829919.
2019-11-14 10:11:16 -05:00
d2d8674cb9 use EPICS_PRIVATE_API macro and fix bug with darwin/ios 2019-11-13 14:02:25 -05:00
6f193242e0 renamed epicsSocketCountUnsentBytes to epicsSocketUnsentCount and moved it to osi/os/ 2019-11-13 14:02:23 -05:00
39e8ccdef4 fix bug from commit f85454. Apparently epicsExportSharedSymbols is needed even though epicsExport.h is included 2019-11-13 13:49:28 -05:00
eb8992a750 epicsSocketCountUnsentBytes returns -1 on failure 2019-11-13 13:49:27 -05:00
62fb49f93b bugfix: memmove'ed to much 2019-11-13 13:49:27 -05:00
a5c9db8c8e epicsSockCountUnsentBytes renamed to epicsSocketCountUnsentBytes 2019-11-13 13:49:26 -05:00
04e752c83a moved logClientSendMessage and made it static 2019-11-13 13:49:26 -05:00
a16ce877e7 fix wrong function name in comment 2019-11-13 13:49:26 -05:00
15f28f1183 sending 0 bytes helps to detect broken connections on some systems (but is undefined behavior on Linux, fails on vxWorks and is a documented no-op on Windows) 2019-11-13 13:49:25 -05:00
9c18ce007a cannot print sockets with %d in Windows, they are not small ints but maybe pointers. 2019-11-13 13:49:25 -05:00
765af2efea ask logClient socket how many bytes are still in the send queue and don't discard them in case the connection turns out broken. 2019-11-13 13:49:24 -05:00
059c385286 use dynamic debug flag for logClient 2019-11-13 13:49:24 -05:00
feb1f9b0df increase error message buffer size for long (Windows) error messges 2019-11-13 13:49:23 -05:00
9d9840ad1e improve logClientShow to show unsent bytes on level 2 (and fix level 1) 2019-11-13 13:49:23 -05:00
af73e4cf65 removed unneeded include 2019-11-13 13:49:23 -05:00
ad861a0617 no need to delay startup only because log server is currently not available 2019-11-13 13:49:22 -05:00
1b88e834d6 send pending log messages directly after connecting 2019-11-13 13:49:22 -05:00
e000ea4913 avoid needless memmove calls 2019-11-13 13:49:21 -05:00
06f1a8ec23 elimitate duplicate code in logClient 2019-11-13 13:49:21 -05:00
cf2658be53 do not discard unsent messages when log server has closed connection, instead try to send them after reconnect 2019-11-13 13:49:20 -05:00
74a403090b speed up logRestart thread termination at exit 2019-11-13 13:49:20 -05:00
dc123a0a37 don't send errlog on all logClients 2019-11-13 13:49:20 -05:00
Andrew Johnson
7eee262486 Shorten/simplify uninstall recipes 2019-11-12 16:16:02 -06:00
Andrew Johnson
a10379327c Replace broken cleandirs recipe 2019-11-12 16:14:39 -06:00
Martin Konrad
b37bfe3ed0 Retire unused epicsExcept.h
Due to a syntax error this header has been unusable since 2001
(since 34ea7db15b), and no one
noticed. Let's remove it.
2019-11-12 12:12:47 -05:00
Andrew Johnson
41d86ecd7a Add a document containing Record Reference links 2019-11-11 11:30:46 -06:00
Andrew Johnson
961dd2bc5d Don't check empty (overridden) RELEASE definitions
Bug reported by Dirk Zimoch
2019-11-11 11:29:03 -06:00
Andrew Johnson
db4ad455d2 Update version numbers for 3.15.8-DEV (3.15.7.1-DEV) 2019-10-31 15:23:11 -05:00
Andrew Johnson
74a90d141b Update version numbers
Also contains some reformatting in README.md
2019-10-31 13:00:24 -05:00
Andrew Johnson
ed9d7550f2 Configure linux targets to detect GNU Readline automatically 2019-10-25 00:20:50 -05:00
Ben Franksen
87c68663f3 Document OMSL=closed_loop doesn't work with constant DOL
Fixes lp: #1844537
2019-10-24 12:52:35 -05:00
Andrew Johnson
3881328f2f Merge branch 'vxworks-tz-support' into 3.15 2019-10-22 15:32:46 -05:00
Andrew Johnson
9722e707fd Merge decimate filter branch 2019-10-21 22:56:05 -05:00
Andrew Johnson
10e9db3710 Fix dbdToHtml.pl for old versions of Pod::Simple::XHTML 2019-10-21 17:54:06 -05:00
Andrew Johnson
ec31feea05 Word-wrap release notes to 80 columns 2019-10-20 16:55:10 -05:00
Andrew Johnson
d0ff3c7672 Release notes describing Record POD changes 2019-10-20 16:55:10 -05:00
Andrew Johnson
178d5779a2 Cleanup of POD documentation, unifying some things
Incomplete, still lots to do in these files.
2019-10-20 16:52:10 -05:00
Andrew Johnson
00334c981c Perl-generated HTML is UTF-8; mark it so 2019-10-20 16:52:10 -05:00
Andrew Johnson
5b5fd8004c Add converted mbbo POD 2019-10-20 16:52:10 -05:00
Andrew Johnson
c7db681e25 rename .dbd to .dpd.pod for mbbo 2019-10-20 16:52:10 -05:00
Joao Paulo Martins
3ff62f4ddb Add converted mbbiDirect POD 2019-10-20 16:52:09 -05:00
Joao Paulo Martins
b34859fb86 rename .dbd to .dpd.pod for mbbiDirect 2019-10-20 16:52:09 -05:00
Andrew Johnson
953dd2b7f9 Document use of epicsProve.pl
Also replaced UTF-8 smart-quotes and m-dashes with ASCII/Markdown
2019-10-17 17:17:05 -05:00
Andrew Johnson
3128fdb930 Add and use epicsProve.pl script
Some Windows Perl installations don't have a working prove.bat
so 'make test-results' doesn't work properly on them.
2019-10-17 16:14:59 -05:00
Andrew Johnson
47f295fecb Clean up permissive POD links 2019-10-10 15:02:06 -04:00
Andrew Johnson
4816a3c04b Merge Saeed's permissive POD conversion branch 2019-10-10 14:54:21 -04:00
Andrew Johnson
e0950643bb Clean up state POD links 2019-10-10 14:53:10 -04:00
Andrew Johnson
252983efca Merge Saeed's state POD conversion branch 2019-10-10 14:48:12 -04:00
Andrew Johnson
7ca26c515a Clean up stringin POD links 2019-10-10 14:46:18 -04:00
Andrew Johnson
a961ca2fe5 Merge Saeed's stringin POD conversion branch 2019-10-10 14:40:23 -04:00
Andrew Johnson
a2fe07aa76 Merge Joao's mbboDirect POD conversion branch 2019-10-10 14:33:45 -04:00
Andrew Johnson
a69803f278 Merge Joao's mbbi POD conversion branch 2019-10-10 14:22:16 -04:00
Saeed Haghtalab
ee38b99e0f Adding POD to stringout record
Also to menuYesNo, menuOmsl, menuIvoa menus
2019-10-10 12:43:32 -04:00
Andrew Johnson
0a01c38698 File renames .dbd to .dbd.pod for stringout 2019-10-10 12:12:41 -04:00
Andrew Johnson
9efefad955 Fix markdown formatting issue 2019-10-10 00:57:45 -04:00
Andrew Johnson
0c62fc8d84 Merge Niamh Dougan's release-notes conversion 2019-10-10 00:21:43 -04:00
Niamh Dougan
292dfe8e16 Convert RELEASE_NOTES from html to .md
Reformat relocations table, escape words with underscores
inside `back-ticks`.
2019-10-10 00:16:17 -04:00
Niamh Dougan
1c93726ee6 renamed RELEASE_NOTES.html -> RELEASE_NOTES.md 2019-10-09 22:40:30 -04:00
Ralph Lange
643d58fd04 appveyor-ci: completely remove cygwin builds 2019-10-02 15:49:12 -04:00
Andrew Johnson
f08b412a18 Have CA Repeater cd to / before running
to avoid holding the CWD open unnecessarily.
2019-09-18 14:43:08 -05:00
Michael Davidsaver
77574022a1 update RELEASE_NOTES 2019-09-09 16:56:28 -07:00
Michael Davidsaver
75a1b82322 add option EPICS_NO_CALLBACK
Allow the CALLBACK definition to be hidden to prevent
conflicts on WIN32.
2019-09-09 16:22:20 -07:00
Michael Davidsaver
73fec88168 replace CALLBACK -> epicsCallback
git grep -l -w CALLBACK -- src|xargs sed -i -e 's/\bCALLBACK\b/epicsCallback/g'

with exceptions in callback.h
2019-09-09 16:22:20 -07:00
krmpotic
2461dc3574 Update dbTest.c
Fix MAX define.
2019-09-09 11:42:04 +02:00
Andrew Johnson
704e6251e6 Remove links to wiki-ext 2019-09-06 18:33:55 +02:00
Saeed Haghtalab
f70c17ee69 Add POD annotations from Wiki to subArrayRecord and menuAlarmStat 2019-09-06 18:20:43 +02:00
Saeed Haghtalab
96e3e678e9 Rename subArrayRecord.dbd and menuAlarmStat.dbd to .pod 2019-09-06 18:02:39 +02:00
Joao Paulo Martins
9d4b652c5e First version of mbbo POD file 2019-09-06 17:20:54 +02:00
Saeed Haghtalab
0d3cc5a20a Added POD to state record with a note that it is deprecated 2019-09-06 15:49:58 +02:00
Saeed Haghtalab
9255256f15 Added POD to permissive record with a note that it is deprecated. 2019-09-06 15:48:46 +02:00
Saeed Haghtalab
4685f7567b Rename permissiveRecord.dbd -> permissiveRecord.dbd.pod 2019-09-06 15:13:25 +02:00
Joao Paulo Martins
e5f8683144 Renaming dbd file to dbd.pod 2019-09-06 15:00:52 +02:00
Saeed Haghtalab
4f63bf139f Rename stateRecord.dbd -> stateRecord.dbd.pod 2019-09-06 14:36:36 +02:00
Saeed Haghtalab
d7d142650b Adding POD to stringin record 2019-09-06 14:11:20 +02:00
Joao Paulo Martins
eac3d2719b Add POD annotations to longoutRecord from Wiki 2019-09-06 14:00:17 +02:00
Joao Paulo Martins
a3d0699b84 Rename longoutRecord.dbd longoutRecord.dbd.pod 2019-09-06 13:59:31 +02:00
Joao Paulo Martins
a16bf2dc38 Add POD annotations to longinRecord from Wiki 2019-09-06 13:55:14 +02:00
Joao Paulo Martins
13936680e9 Rename longinRecord.dbd longinRecord.dbd.pod 2019-09-06 13:54:10 +02:00
Saeed Haghtalab
7b6c67b51b Add POD annotations to subRecord from Wiki 2019-09-06 13:28:55 +02:00
Saeed Haghtalab
33febb52ba Rename subRecord.dbd subRecord.dbd.pod 2019-09-06 13:28:11 +02:00
Saeed Haghtalab
44149c170e Add POD annotations to selRecord from Wiki 2019-09-06 13:14:48 +02:00
Saeed Haghtalab
db6825f62e Rename selRecord.dbd selRecord.dbd.pod 2019-09-06 13:13:46 +02:00
Joao Paulo Martins
6905ded0d0 First version of mbbi POD file 2019-09-06 12:14:55 +02:00
Saeed Haghtalab
4f31205188 Rename stringinRecord.dbd -> stringinRecord.dbd.pod 2019-09-06 11:56:46 +02:00
Joao Paulo Martins
90d9be1c00 Renaming mbbiRecord.dbd with POD file extension 2019-09-06 11:53:28 +02:00
Joao Paulo Martins
b93f92c843 Add POD annotations to seqRecord from Wiki 2019-09-06 11:26:39 +02:00
Joao Paulo Martins
83458421aa Rename seqRecord.dbd seqRecord.dbd.pod 2019-09-06 11:20:11 +02:00
Andrew Johnson
89e3c582b5 Fix menu declaration test too 2019-09-06 10:44:02 +02:00
Andrew Johnson
623539c3e8 Add redefinition guard to menu-generated typedefs 2019-09-06 10:14:39 +02:00
Andrew Johnson
2a0df61974 Merge compress RecRef wiki as dbd.pod 2019-09-05 17:10:11 +02:00
Andrew Johnson
6e3a15e318 Merge waveform RecRef wiki as dbd.pod 2019-09-05 17:07:27 +02:00
Andrew Johnson
86b1882186 Updates to existing .dbd.pod texts, add event and fanout from wiki 2019-09-05 16:09:20 +02:00
Andrew Johnson
03e613cec0 Adding POD to event and fanout records 2019-09-05 16:09:20 +02:00
Niamh Dougan
177c377b81 Amend documentation filenames in README
Also deleted old README.1st
2019-09-05 15:12:19 +02:00
Niamh Dougan
1cf831939a Convert HTML in README.md to Github Markdown 2019-09-05 15:07:01 +02:00
Niamh Dougan
26cd81d35f Rename README to .md 2019-09-05 15:05:42 +02:00
Saeed Haghtalab
31811e53b3 Compress record pod update after review
- Revert "N to 1 Median" choice entry place
- Convert images to PNG and update Makefile
- Update record support routins definition based on epics7 recSup.h
2019-09-04 21:15:46 +02:00
Joao Paulo Martins
128d2a93c8 Fixing waveform record documentation after review 2019-09-04 17:25:28 +02:00
Saeed Haghtalab
67583b4bda Update compressRecord.dbd.pod based on Wiki + Content update 2019-09-04 11:29:43 +02:00
Joao Paulo Martins
8a39ca7489 Preparing the waveform record DBD-POD file; Creation of the menuFtype DBD-POD file 2019-09-03 14:20:24 +02:00
Ralph Lange
b9bc836d1e appveyor-ci: disable cygwin x86 builds (install is broken) 2019-09-02 14:47:39 +02:00
Andrew Johnson
9b5034f307 Restore errlogFlush() call to msi.cpp 2019-07-25 14:35:41 -05:00
Andrew Johnson
a6812c5869 Revert "More msi.plt retries for Jenkins builds on Windows"
This reverts commit a69bd833fc.
2019-07-17 16:19:37 -05:00
Michael Davidsaver
b89494a840 Revert "Testing msi: Add retries if necessary"
This reverts commit 29c069db3d.

# Conflicts:
#	src/ioc/dbtemplate/test/msi.plt
2019-07-17 11:20:03 -07:00
Freddie Akeroyd
771ad6a442 msi: Flush stdout on program exit
On WIN32 if the reopen()ed stdout is not closed it can occasionally
result in missing lines in the output file
2019-07-17 10:45:09 -07:00
Andrew Johnson
84c86e67e8 Fix valgrind warnings in filter tests 2019-07-08 12:55:21 -05:00
Andrew Johnson
cac3e2dc3b Add checks of freelist to dbndTest.c 2019-07-07 23:32:12 -05:00
Andrew Johnson
8ff6ce4821 Fix leak in sync filter (while, unless modes)
Always release field logs when we drop them.
Adjust how first and after modes work to make them easier to test.
Change stream checking code, fix leaks and double frees.
Add mustStash(), mustSwap(), streamReset(), drop mustPassOld().
Modify test code to check free-list count and release all of
the field-logs returned by the filter; it must release any of
the field-logs that it decides to drop.
2019-07-07 23:30:07 -05:00
Andrew Johnson
44ea66aaaf Add checks and summary of free-list size to decTest.c 2019-07-07 23:11:21 -05:00
Andrew Johnson
c9c4eea0f8 Now fix the non-windows systems 2019-06-27 15:21:41 -05:00
Andrew Johnson
78ce2dac05 Don't use / in Windows program paths
Fixing Windows msi.t script failures...
2019-06-27 13:28:56 -05:00
Andrew Johnson
b2285bb8aa Redirect msi's STDERR to /dev/null (NUL on Windows) during tests
Also moves the environment variable handling code out to the only
test that needs it and simplifies it; some Perl versions were giving
warnings from splitting an undef value.
2019-06-27 12:01:42 -05:00
Andrew Johnson
f79c69f0a0 Fix the decimate filter, free field-logs when dropping them 2019-06-26 23:33:35 -05:00
Andrew Johnson
e03c7edfe5 Check free-list size to ensure field-logs freed properly
Moves where the field-logs get freed into the mustPass/mustDrop routines,
where it only happens if the filter didn't free them itself.

Filters that save field-logs can't use this code as-is.
2019-06-26 23:32:52 -05:00
Andrew Johnson
398fdee33e Added db_available_logs() for filter test code to use
Returns the number of items available on the db_field_log free-list.
2019-06-26 23:28:51 -05:00
Michael Davidsaver
59cb5ba6a0 Merge remote-tracking branch 'konrad/clean-up-msi' into 3.15
* konrad/clean-up-msi:
  Add test for macro expansion in file names
  Reduce scope of some variables
  Convert substitutionName to std::string
  Use bool for more clarity
  Remove unneeded errlogFlush()
  Manage psubFile with new/delete
  Convert copy to std::string
  Use std::list for patternList
  Convert patternNode.var to std::string
  Convert fullname to std::string
  Convert inputFile.filename to std::string
  Simplify inputConstruct()
  Use std::list for pathList
  Use std::list for inputFileList
  Constructor for struct inputData
  Simplify catMacroReplacements()
  Constructor for struct subInfo
  Add some const keywords
  Convert MSI to C++
  Test expansion of empty patterns with MSI
2019-06-26 14:55:40 -07:00
Michael Davidsaver
2db2f1a53f Merge remote-tracking branch 'konrad/fix-compiler-warnings' into 3.15
* konrad/fix-compiler-warnings:
  epicsTime: rely on implicit copy constructor
  iocLogServer: check return values
  Fix potential buffer overflow in iocLogServer
  Fix weird use of strncpy
2019-06-24 18:21:32 -07:00
Michael Davidsaver
b811d3402f Merge remote-tracking branch 'konrad/dont-nuke-global-cac-thread-id-in-exit-handler' into 3.15
* konrad/dont-nuke-global-cac-thread-id-in-exit-handler:
  Remove cacExitHandler
2019-06-24 18:12:58 -07:00
Andrew Johnson
e75a72ef76 VxWorks: Mark undetected underflow parse test as ToDo 2019-06-07 17:22:40 -05:00
Andrew Johnson
33e099a51b Fix VxWorks osiSockOptMcastLoop_t => char
Repairs osiSockTest
2019-06-07 17:21:18 -05:00
Andrew Johnson
d3a8a49552 Release Notes 2019-06-07 15:37:46 -05:00
Andrew Johnson
96998f55e0 Have VxWorks call tz2timezone() once clock is sync'd 2019-06-07 14:55:26 -05:00
Andrew Johnson
b57f02ece2 epicsTimeTo[GM]TM(): Allow pNSecDest==NULL 2019-06-07 13:26:24 -05:00
Andrew Johnson
b0db6568ea Replace EPICS_TIMEZONE envParam with EPICS_TZ
Adjust rtems_init() to use it.
2019-06-07 13:24:39 -05:00
Andrew Johnson
30812c23f0 Internal cleanup in osiClockTime.c 2019-06-07 13:17:35 -05:00
Andrew Johnson
5cfff383b2 Synchronization hook support for osiClockTime 2019-06-07 13:16:42 -05:00
Andrew Johnson
345cfcffa8 Fix sync filter example in dbd.pod 2019-06-04 12:53:41 -05:00
Andrew Johnson
deb9dbcd77 Added decimation filter, documentation and tests 2019-06-04 12:23:13 -05:00
Ralph Lange
96259b7bdc doc/ca: clarify variable size array subscription 2019-05-09 17:28:36 +02:00
Martin Konrad
25576c316a Remove cacExitHandler
We need to ensure the allocated resources stick around until
the last instance using them doesn't need them anymore. Sharing
a raw pointer by exporting it as a global variable is not
compatible with cleaning up at all. For now we remove the
clean-up code.

Note: This fixes a segfault during IOC shutdown when using both
pyDevSup and pyepics. See the discussion on
https://epics.anl.gov/tech-talk/2019/msg00778.php for details.
2019-05-06 19:50:01 -04:00
Andrew Johnson
2d3de1916b Don't clear caClientCallbackThreadId in CA's exit handler 2019-05-06 12:22:34 -05:00
Ralph Lange
16ddcaeaed appveyor-ci: ANL Make install 4.1 -> 4.2.1 2019-05-03 15:30:59 +02:00
Ralph Lange
297206e247 appveyor-ci: use pre-installed AppVeyor MinGW 2019-05-03 15:29:07 +02:00
Ralph Lange
63bf8a8219 appveyor-ci: use choco MinGW 5.3.0 to work around build problem
(fixes lp:1827225)
2019-05-02 11:39:04 +02:00
Ralph Lange
ec7193d0be appveyor-ci: exclude some cygwin builds (broken compiler)
appveyor-ci: remove slack, add email and GitHub notifications
(cherry-picked from branch 7.0)
2019-04-30 15:53:50 +02:00
Martin Konrad
1f95d0db12 epicsTime: rely on implicit copy constructor
When a custom copy constructor is defined the assignment operator
also needs to be defined explicitly. For this simple class the
implicit copy ctor/assignment operator are sufficient, though. This
fixes a warning emitted by GCC9.
2019-04-25 11:00:39 -04:00
Martin Konrad
e02c5c3026 iocLogServer: check return values
No serious issues here just fixing some warnings.
2019-04-24 22:25:31 -04:00
Martin Konrad
8e9d75ad71 Fix potential buffer overflow in iocLogServer 2019-04-24 22:25:31 -04:00
Martin Konrad
630663caa8 Fix weird use of strncpy
Note: The old code was correct. This change just gets rid of
a bunch of warnings.
2019-04-24 22:25:31 -04:00
Andrew Johnson
736075daf6 Document macOS Mojave fix 2019-02-01 16:49:11 -06:00
Andrew Johnson
9ef3b77348 Fix ca/client/perl/Makefile for macOS Mojave
... in which Apple moved the Perl headers into XCode.
This should also make the build a little more forgiving on other
architectures that have incomplete Perl installations; it gives up
trying to build the Perl bindings with a warning if perl.h is missing.
2019-02-01 16:14:45 -06:00
Andrew Johnson
5e1bad2b34 dbStatic parser: Reject empty object names 2019-01-10 14:45:18 -06:00
Martin Konrad
a9606dbf6e Add test for macro expansion in file names 2019-01-08 09:34:55 -05:00
Martin Konrad
409ee26fae Reduce scope of some variables 2019-01-08 09:34:55 -05:00
Martin Konrad
9a4787155c Convert substitutionName to std::string 2019-01-08 09:34:55 -05:00
Martin Konrad
84dba0d2b7 Use bool for more clarity 2019-01-08 09:34:55 -05:00
Martin Konrad
87f6c3dec9 Remove unneeded errlogFlush() 2019-01-08 09:34:55 -05:00
Martin Konrad
940814becf Manage psubFile with new/delete 2019-01-08 09:34:55 -05:00
Martin Konrad
68a1a529b2 Convert copy to std::string 2019-01-08 09:34:55 -05:00
Martin Konrad
ce38caf41b Use std::list for patternList
This improves type safety and readability.
2019-01-08 09:34:55 -05:00
Martin Konrad
f03f10e664 Convert patternNode.var to std::string 2019-01-08 09:34:55 -05:00
Martin Konrad
b4f4fb853d Convert fullname to std::string 2019-01-08 09:34:55 -05:00
Martin Konrad
b518ebe85b Convert inputFile.filename to std::string 2019-01-08 09:34:55 -05:00
Martin Konrad
e461d782f4 Simplify inputConstruct() 2019-01-08 09:34:55 -05:00
Martin Konrad
ef2a381e92 Use std::list for pathList
This improves type safety and readability.
2019-01-08 09:34:55 -05:00
Martin Konrad
265d4962a4 Use std::list for inputFileList
This improves type safety and readability.
2019-01-08 09:34:55 -05:00
Martin Konrad
db9267bbd5 Constructor for struct inputData 2019-01-08 09:34:55 -05:00
Martin Konrad
1cf3fa9ba9 Simplify catMacroReplacements()
This fixes lp:1810946 and lp:1810949.
2019-01-08 09:34:40 -05:00
Martin Konrad
3e8b0028dc Constructor for struct subInfo 2019-01-08 09:22:52 -05:00
Martin Konrad
d8f18c27f4 Add some const keywords 2019-01-08 09:22:52 -05:00
Martin Konrad
801c01b9b6 Convert MSI to C++ 2019-01-08 09:22:52 -05:00
Martin Konrad
0c1874bbfe Test expansion of empty patterns with MSI
This was subject to a regression in 3.15.6. See lp:1810946.
2019-01-08 09:22:40 -05:00
Andrew Johnson
5f46d6dcee Release notes updated 2018-12-14 16:58:43 -06:00
Eric Norum
d41355e0fc Add error checking to the copy-back loop in truncateFile() 2018-12-14 16:06:38 -06:00
Eric Norum
a5aa5459e3 Drop extraneous extern "C" 2018-12-14 16:06:37 -06:00
Eric Norum
6201d37756 Remove epicsTempName() routine
It's unsafe and generates obnoxious warnings on modern compilers.
This also replaces internal useage with epicsTempFile().
There appears to be no external code that calls this routine.
2018-12-14 16:06:36 -06:00
Andrew Johnson
84b7612036 Fix for lp: #1801145 recordtype defined after use in device
Add proper equals() method for DBD::Recfield and DBD::Recordtype.
In Parser::parse_recordtype() check for and re-use a declaration
(i.e. an empty recordtype object) when parsing a later definition
of the same recordtype.
2018-12-10 00:25:27 -06:00
Andrew Johnson
64d9d1a4c9 Fix field links to local menu anchors
Anchor IDs are different for XHTML vs HTML generation.
2018-12-07 13:16:06 -06:00
Andrew Johnson
e53244df1f Cherry-pick Dirk's dbState NULL checks from the 7.0 branch
Prevent segfaults in iocsh
2018-12-07 11:45:12 -06:00
Andrew Johnson
49f5527cd7 iocsh: Add protection if realloc() fails 2018-12-06 16:35:30 -06:00
Andrew Johnson
ee90dffd40 Add flush to the iocsh errlog command 2018-12-06 16:33:20 -06:00
Andrew Johnson
6664ccfc64 Wiki to POD conversions for bi, bo, calc, calcout and dfanout
These still need going through to update and edit.
Conversions by Tony Pietryla, Argonne.
2018-12-05 16:55:13 -06:00
Andrew Johnson
444cac337c Add POD text for menuScan 2018-12-05 16:55:12 -06:00
Andrew Johnson
313afc4a4c Fix HTMLS generation from IOC menu*.dbd.pod files 2018-12-05 16:55:11 -06:00
Andrew Johnson
0fae0fcc17 Rename various dbd files to dbd.pod 2018-12-05 16:55:10 -06:00
Ralph Lange
a43b805b65 ca/pcas: fix misleading error message (TCP name resolution) 2018-11-30 17:19:56 +01:00
Andrew Johnson
937878e0a9 Merge Bruce Hill's EPICS-and-CA-version-from-CA-tools branch into 3.15 2018-11-20 10:22:43 -06:00
Andrew Johnson
6e536e1ee0 Fix msi-copy target for cross-build host arch's 2018-11-19 17:59:27 -06:00
Andrew Johnson
6ea6c6ff66 VxWorks: Don't use GCC 2.x for dependency file generation 2018-11-06 13:02:36 -06:00
Andrew Johnson
168d430921 Unify shebang line in tap-to-junit-xml 2018-11-06 10:15:06 -06:00
Bruce Hill
9a8860b771 Expand tabs and revert #include lines to <> instead of quotes. 2018-11-05 18:44:46 -08:00
Bruce Hill
3d8e2d933d Include epicsStdio.h so driver report output can be redirected from iocsh 2018-11-04 20:57:58 -08:00
Andrew Johnson
5f3f87a365 Merge Bruce Hill's MAKEFLAGS-to-MFLAGS branch into 3.15
Added a couple other places where this needed to happen too.
2018-11-02 18:14:39 -05:00
Andrew Johnson
072dbd53e7 Adjust clean-tests rule
Only delete test-result files that actually exist.
2018-11-02 17:47:13 -05:00
Bruce Hill
43322335df Add -V flag to ca client tools to show EPICS and CA versions. 2018-10-31 22:22:19 -07:00
Martin Konrad
eed208afaa Fix shebang line of tap-to-junit-xml.pl
This fixes lp:1797634.
2018-10-12 17:09:26 -04:00
Ralph Lange
ae63854dff Set version to 3.15.6-DEV, prepare new release notes chapter 2018-10-11 15:33:31 +02:00
Ralph Lange
ce7943fb44 Update version to 3.15.6, remove "not released" from release notes 2018-10-11 15:24:36 +02:00
Ralph Lange
4e865a03d8 libCom/osi: fix epicsEnvUnset for WIN32 and solaris 2018-10-11 15:12:10 +02:00
Ralph Lange
9a4febd3bc Merge Dirk Zimoch's 'epicsEnvUnset' branch into 3.15 2018-10-11 11:42:19 +02:00
Andrew Johnson
dc5d373b57 Revert "configure: add vpath for CONFIG* and RULES* (look in SRC_DIRS)"
Unfortunately this causes really bad things to happen; the
configure/RULES file is getting overwritten by the contents of
src/libCom/as/RULES, so we need a different approach.

This reverts commit 47c361f135.
2018-10-10 13:04:54 -05:00
Ralph Lange
47c361f135 configure: add vpath for CONFIG* and RULES* (look in SRC_DIRS) 2018-10-10 17:10:14 +02:00
Ralph Lange
9943796f7f libCom/osi: fix recent epicsStdio.h change for gcc 2.x 2018-10-08 15:46:50 +02:00
3cb72ec209 Merge branch '3.15' into epicsEnvUnset
Conflicts:
	documentation/RELEASE_NOTES.html
2018-10-08 11:02:03 +02:00
701ef5b936 mention epicsEnvUnset in RELEASE_NOTES.html 2018-10-08 10:49:25 +02:00
c3995a9d63 added simple test case for epicsEnvUnset 2018-10-08 10:48:09 +02:00
ce3eadde34 add missing epicsEnvUnset to header 2018-10-08 10:37:34 +02:00
Andrew Johnson
62929fcbd1 Adjust the 'git archive' commands in Release Checklist
The tarfile should not include any files that were added to
support our development process and CI build agents. I have
even excluded .gitignore from previous releases.

I had already done this in 3.16, and 7.0 has a script for
generating the tarfile.
2018-10-05 17:43:33 -05:00
Ralph Lange
456a68eb96 Version number update to 3.15.6-rc1-DEV 2018-10-05 17:05:23 +02:00
Ralph Lange
b319b4722f Update version to 3.15.6-rc1 2018-10-05 15:21:58 +02:00
Ralph Lange
b4cc5fdf4b doc: update release checklist 2018-10-05 15:21:57 +02:00
Ralph Lange
d35835659c libCom/osi: Add epicsStdio functions to std namespace; allow to skip macro magic
(fixes lp:1786927)
2018-10-05 10:54:10 +02:00
65714033ea remove compiler warning 2018-10-03 15:29:30 +02:00
7151fbe498 implement epicsEnvUnset 2018-10-03 15:18:59 +02:00
Andrew Johnson
cbb13bf6b1 Darwin: Don't link using -flat_namespace 2018-09-18 10:22:29 -05:00
Andrew Johnson
150d764d28 Merge 3.14.12.8 (+ the Travis fix) into 3.15 2018-09-17 16:15:55 -05:00
Andrew Johnson
7dd1ea4cab GNU Make 3.81 (as used on Travis) doesn't have 'undefine' 2018-09-17 10:24:51 -05:00
Ralph Lange
6a2ed4b333 libcom/osi/windows: log errors using fprintf() instead of pop-up
(fixes lp:1785712)
2018-09-05 21:47:25 +02:00
Andrew Johnson
8ffea9de27 Remove macLib warning indicators
Only add ',undefined' tags to macLib output when we aren't
suppressing warnings, e.g. using msi's -V flag.
2018-08-10 14:12:19 -05:00
Andrew Johnson
fe7260e263 msi: Source code reformatting, typo fixes, unify messages
Added lots of debug tracing macros.
Release notes.
2018-07-25 00:47:18 -05:00
Andrew Johnson
67e2b74758 Fix for lp: #1503661
Delete output file if parse errors found in substitution file
2018-07-25 00:31:48 -05:00
Andrew Johnson
c09b6e2f1b libCom: Add and use a -o<filename> option to e_flex
Note that like the -S option the filename must follow immediately in
the same command-line argument with no space.
2018-07-21 01:47:33 -05:00
Andrew Johnson
45be2306bd Add missing includes for db_post_events() 2018-07-21 01:04:05 -05:00
Andrew Johnson
6027f906c3 Merge documentation changes from 3.14 into 3.15 2018-07-20 23:29:47 -05:00
Andrew Johnson
ec351c5e2f Fix for lp: #1730727
Post monitors on all array-length record fields (often NORD)
when their values get changed.
2018-07-20 23:10:34 -05:00
Andrew Johnson
0f21196670 Merge 3.14 branch into 3.15 2018-07-13 13:23:11 -05:00
Andrew Johnson
f892731b3f Fix epicsCalcTest for gcc 7.1.0 on minGW
Another case where the compile-time evaluation returns +1
but at run-time isnan() returns -1.
2018-06-29 15:03:45 -05:00
Andrew Johnson
8144d2ea01 Add HOWTO: Converting Wiki Record Reference to POD 2018-06-26 14:47:59 -05:00
Andrew Johnson
a9d7f7be13 Template iocBoot/ioc Makefile fix for Unix-like OSs
Fixes lp: #1766349
2018-06-04 23:14:45 -05:00
Andrew Johnson
23c4eb42a3 Perl s/use vars/our/ 2018-05-28 17:31:16 -05:00
Andrew Johnson
6d7f70f200 Merge changes from 3.14 branch into 3.15 2018-05-28 17:00:35 -05:00
Michael Davidsaver
4972803ce2 scanEventTest: use testSyncCallback() 2018-05-14 10:49:49 -07:00
Michael Davidsaver
3b7e348a8c dbUnitTest.h add callback sync. and global mutex
Add testSyncCallback() to wait for in queued and
in-progress callbacks to complete.

Also add testGlobalLock() to help tests avoid
use after free when destroying sync. primitives.
2018-05-14 10:49:49 -07:00
Michael Davidsaver
00a974ce52 callback.h: add epicsCallback alternative to CALLBACK
Add epicsCallback as an IDE friendly alternative to CALLBACK.

IDEs like qtcreator have long been confused by the use
of CALLBACK, a name which has long been used by other libraries,
which prevents code using it from being parsed correctly.
2018-05-14 10:49:49 -07:00
Michael Davidsaver
490c504736 scanEventTest: use dbUnitTest.h for IOC lifecycle 2018-05-14 10:49:49 -07:00
Andrew Johnson
49371cfe00 Fix RTEMS build in src/std/rec/test
Also back-ported Michael's change from commit b9b8cde5f6 to avoid
using callocMustSucceed() in eventNameToHandle()
2018-05-12 22:25:15 -05:00
Andrew Johnson
06ad4a0d70 Merge Bruce Hill's pv-name-in-ca-error-msgs branch into 3.15
Actually this is fixing CAS error messages.
I added the additional changes suggested by Ralph in his code-review.
2018-05-12 21:37:44 -05:00
Andrew Johnson
a2ae07dfcd Merge Dirk Zimoch's named-events-backward-compatibility branch into 3.15 2018-05-12 21:15:26 -05:00
Andrew Johnson
b539ced6d5 Merge J. Lewis Muir's doc-filters-typo branch into 3.15 2018-05-12 20:54:20 -05:00
Andrew Johnson
1b332361e7 Merge changes from 3.14 into 3.15 2018-05-12 20:47:54 -05:00
Bruce Hill
b84ee89d87 Fix ECHO definition to not match variables in MAKEFLAGS by using MFLAGS instead.
Prior ECHO definition strips T_A=XXX command line variable definitions
from MAKEFLAGS but doesn't strip other variable definitions such as
INSTALL_LOCATION.  As a result, if you "make INSTALL_LOCATION=XXX"
the ECHO definition erroneously matches if your install location
contains 's'.   Changing the ECHO definition to MFLAGS avoids
all command line variable definitions.
2018-04-16 19:11:40 -07:00
Andrew Johnson
3d88316eab Merge 3.14 into 3.15 (MSVC absolute filenames fix) 2018-03-26 16:49:28 -05:00
Andrew Johnson
d8802c8b24 Merge 3.14 into 3.15 2018-03-15 17:46:48 -05:00
Andrew Johnson
7b5b23f6d3 Merge 3.14 into 3.15 2018-03-15 17:11:20 -05:00
Andrew Johnson
8333338f99 Merge 3.14 into 3.15 2018-03-14 16:08:07 -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
Bruce Hill
05a3699b49 Update pcas CA error msgs to include the pv name for easier debugging. 2018-03-09 21:23:43 -08:00
Andrew Johnson
be8f35d782 Fix for lp: #1754298
Cleaned up and reformatted since Dirk's original.
2018-03-09 12:46:46 -06:00
2b4a9632b7 update RELEASE_NOTES for named event fix 2018-03-07 14:51:38 +01:00
396cf4ee3f remove special handling for inf and nan events 2018-03-07 14:49:12 +01: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
e50c468512 moved scanEventTest from src/ioc/db/test to src/std/rec/test 2018-02-26 11:41:54 +01: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
428a8f57e9 Fix typos in Channel Filters doc 2018-02-20 10:20:37 -06:00
29795656e6 bugfix for soft events >= 256 2018-02-20 09:53:06 +01:00
b2d6b67b06 removed obsolete code in scanpel 2018-02-16 11:03:12 +01:00
1e9826d187 add tests for calculated numeric soft events 2018-02-13 15:36:21 +01:00
0691fc5f57 fix scanEvent test 2018-02-13 14:10:29 +01:00
8a3080c16f added test for named soft events 2018-02-13 13:50:19 +01:00
d19afc73af Updated RELEASE_NOTES.html with soft event fix. 2018-02-12 12:06:12 +01:00
adf5375616 fix scanpel glob matching 2018-02-12 09:01:05 +01: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
7d836d9554 some cleanup and scanpel improvement 2018-02-09 16:58:36 +01:00
51e492fbb1 Fix numeric events: any number from 0 up to less than 256 is theated as an integer event. Event 0 is no event. 2018-02-09 14:37:45 +01:00
Andrew Johnson
61296b8cff Merge 3.14 into 3.15
Fix for LP: #1743076
2018-02-05 12:03:28 -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
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
Andrew Johnson
f1e5e9689b Merge 3.14 branch into 3.15 2018-02-01 11:23:29 -06:00
Andrew Johnson
ddbdcf9462 rec/test: Add missing filename to DBDDEPENDS_FILES 2018-01-21 00:44:10 -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
66c6aaa44f Merge URL updates from 3.14 branch into 3.15 2018-01-18 23:46:42 -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
8f62940265 Merge appveyor change from 3.14 2018-01-04 09:03:50 +01:00
Ralph Lange
89cbb95c2c Merge appveyor changes from 3.14 2017-12-19 09:52:15 +01:00
Andrew Johnson
3b0f34e0be Fix recursive check in Release.pm 2017-12-06 16:29:31 -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
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
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
Michael Davidsaver
e794639e31 ioc/db: avoid possible race in db_close_events()
lp:1730982
2017-11-08 14:42:08 -06: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
cec4f4e24b Unify rsrv socket errors, add missing error string 2017-10-20 14:12:49 -05: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
Andrew Johnson
32a6f6c4f1 Fix DBD parsing slow-up with Perl 5.20 and later 2017-10-09 14:45:01 +02:00
Andrew Johnson
169e9f2699 Merged 3.14 changes into 3.15 2017-09-25 15:45:53 -05:00
Andrew Johnson
6ee2cc6039 Merged 3.14 branch into 3.15 2017-09-07 17:48:05 -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
Michael Davidsaver
111cac8e47 merge 3.14 2017-08-01 17:14:34 +02: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
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
83cb50574a Merge bug-fix from 3.14 branch into 3.15 2017-06-20 15:50:49 -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
105e831442 Merge changes from 3.14 branch into 3.15 2017-06-14 10:17:31 -05:00
Andrew Johnson
085fab4aed Merge 3.14 branch into 3.15 2017-06-08 09:55:05 -04:00
Andrew Johnson
1293747cf3 Merge 3.14 branch into 3.15 2017-06-01 16:40:33 -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
12d22e392f Merge 3.14 branch into 3.15 2017-05-30 17:14:56 -05:00
Andrew Johnson
98b0f7e48b Merge 3.14 branch into 3.15 2017-05-19 17:34:49 -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
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
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
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
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
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
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
Michael Davidsaver
22b10adf29 ioc/db: testdbGetFieldEqual() detect zero size 2017-04-21 16:14:43 -04:00
Andrew Johnson
821fb1302b Merged changes from 3.14 branch into 3.15 2017-04-20 16:57:08 -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
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
Andrew Johnson
5a73ac59a1 Adjusted .gitignore patterns 2017-03-31 12:18:43 -05:00
Ralph Lange
4c06cdc660 Move .bzrignore to .gitignore 2017-03-30 17:10:52 +02: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
de698f370a Merged Windows fixes from 3.14 branch, to revno 12699 2017-01-30 14:31:04 -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
3fd659e693 Merged PATH fix from 3.14 branch, revno 12694 2017-01-16 16:12:04 -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
4a0fd0b954 Fix error message 2017-01-05 14:09:03 -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
85b5551b3b Merged final changes from 3.14.12.6 release 2016-12-09 17:27:35 -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
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
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
57b8617cca dbdExpand.pl 2016-08-11 15:48:01 -05: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
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
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
Ralph Lange
fe887b4f83 Update CONFIG_BASE_VERSION for 3.15.4-rc1 2016-05-20 16:37:06 +02: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
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
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
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
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
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
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
59fea64390 Add missing dependencies for Test.dbd files 2016-03-16 13:10:17 -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
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
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
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
1629 changed files with 83122 additions and 47885 deletions

145
.appveyor/epics-base-3.yml Normal file
View File

@@ -0,0 +1,145 @@
# Appveyor configuration file for EPICS Base 3.15 builds
# (see also https://github.com/epics-base/ci-scripts)
# branches to build
branches:
# whitelist
only:
- 3.15
- /R3\.15\.\d+.*/
# Version format
version: base-{branch}-{build}
#---------------------------------#
# build cache #
#---------------------------------#
# The AppVeyor cache allowance is way too small (1GB per account across all projects, branches and jobs)
# to be used for the dependency builds.
cache:
- C:\Users\appveyor\.tools
#---------------------------------#
# repository cloning #
#---------------------------------#
# Called at very beginning, before repo cloning
init:
# Set autocrlf to make batch files work
- git config --global core.autocrlf true
# Set clone depth (do not fetch complete history)
clone_depth: 5
# Skipping commits affecting only specific files
skip_commits:
files:
- 'documentation/*'
- 'startup/*'
- '.github/*'
- '**/*.html'
- '**/*.md'
#---------------------------------#
# build matrix configuration #
#---------------------------------#
image: Visual Studio 2015
# Build Configurations: dll/static, regular/debug
configuration:
- dynamic
- static
- dynamic-debug
- static-debug
# Environment variables: compiler toolchain, base version, setup file, ...
environment:
# common / default variables for all jobs
SETUP_PATH: .ci-local:.ci
BASE: SELF
EPICS_TEST_IMPRECISE_TIMING: YES
matrix:
- CMP: vs2019
APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2019
- CMP: vs2017
APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2017
- CMP: vs2015
- CMP: vs2013
- CMP: vs2012
- CMP: vs2010
- CMP: gcc
# Platform: processor architecture
platform:
- x86
- x64
# Matrix configuration: exclude sets of jobs
matrix:
exclude:
# VS2012 and older installs don't have the 64 bit compiler
- platform: x64
CMP: vs2012
- platform: x64
CMP: vs2010
# Exclude more jobs to reduce build time
# Skip 32-bit for "middle-aged" compilers
- platform: x86
CMP: vs2017
- platform: x86
CMP: vs2015
# MinGW debug builds use the same libraries, unlike VS
- configuration: dynamic-debug
CMP: gcc
- configuration: static-debug
CMP: gcc
#---------------------------------#
# building & testing #
#---------------------------------#
install:
- cmd: git submodule update --init --recursive
- cmd: python .ci/cue.py prepare
build_script:
- cmd: python .ci/cue.py build
test_script:
- cmd: python .ci/cue.py test
on_finish:
- ps: Get-ChildItem *.tap -Recurse -Force | % { Push-AppveyorArtifact $_.FullName -FileName $_.Name }
- cmd: python .ci/cue.py build test-results -s
#---------------------------------#
# debugging #
#---------------------------------#
## if you want to connect by remote desktop to a failed build, uncomment these lines
## note that you will need to connect within the usual build timeout limit (60 minutes)
## so you may want to adjust the build matrix above to just build the one of interest
# print the connection info
#init:
# - ps: iex ((new-object net.webclient).DownloadString('https://raw.githubusercontent.com/appveyor/ci/master/scripts/enable-rdp.ps1'))
# block a failed build (until the watchdog barks)
#on_failure:
# - ps: $blockRdp = $true; iex ((new-object net.webclient).DownloadString('https://raw.githubusercontent.com/appveyor/ci/master/scripts/enable-rdp.ps1'))
#---------------------------------#
# notifications #
#---------------------------------#
notifications:
- provider: Email
to:
- core-talk@aps.anl.gov
on_build_success: false
- provider: GitHubPullRequest

1
.ci Submodule

Submodule .ci added at 20f8e05393

143
.github/workflows/ci-scripts-build.yml vendored Normal file
View File

@@ -0,0 +1,143 @@
# .github/workflows/ci-scripts-build.yml for use with EPICS Base ci-scripts
# (see: https://github.com/epics-base/ci-scripts)
# This is YAML - indentation levels are crucial
# Workflow name, shared by all branches
name: Base
# Trigger on pushes and PRs to any branch
on:
push:
paths-ignore:
- 'documentation/*'
- 'startup/*'
- '.appveyor/*'
- '**/*.html'
- '**/*.md'
pull_request:
paths-ignore:
- 'documentation/*'
- 'startup/*'
- '.appveyor/*'
- '**/*.html'
- '**/*.md'
env:
SETUP_PATH: .ci-local:.ci
BASE: SELF
EPICS_TEST_IMPRECISE_TIMING: YES
jobs:
build-base:
name: ${{ matrix.name }}
runs-on: ${{ matrix.os }}
# Set environment variables from matrix parameters
env:
CMP: ${{ matrix.cmp }}
BCFG: ${{ matrix.configuration }}
WINE: ${{ matrix.wine }}
RTEMS: ${{ matrix.rtems }}
EXTRA: ${{ matrix.extra }}
strategy:
fail-fast: false
matrix:
# Job names also name artifacts, character limitations apply
include:
- os: ubuntu-20.04
cmp: gcc
configuration: default
wine: "64"
name: "Ub-20 gcc-9 + MinGW"
- os: ubuntu-20.04
cmp: gcc
configuration: static
wine: "64"
name: "Ub-20 gcc-9 + MinGW, static"
- os: ubuntu-20.04
cmp: gcc
configuration: static
extra: "CMD_CXXFLAGS=-std=c++11"
name: "Ub-20 gcc-9 C++11, static"
- os: ubuntu-20.04
cmp: clang
configuration: default
extra: "CMD_CXXFLAGS=-std=c++11"
name: "Ub-20 clang-10 C++11"
- os: ubuntu-20.04
cmp: gcc
configuration: default
rtems: "4.10"
name: "Ub-20 gcc-9 + RT-4.10"
- os: ubuntu-20.04
cmp: gcc
configuration: default
rtems: "4.9"
name: "Ub-20 gcc-9 + RT-4.9"
- os: ubuntu-20.04
cmp: gcc-8
utoolchain: true
configuration: default
name: "Ub-20 gcc-8"
- os: ubuntu-20.04
cmp: clang
configuration: default
name: "Ub-20 clang-10"
- os: macos-latest
cmp: clang
configuration: default
name: "MacOS clang-12"
- os: windows-2019
cmp: vs2019
configuration: default
name: "Win2019 MSC-19"
- os: windows-2019
cmp: vs2019
configuration: static
name: "Win2019 MSC-19, static"
steps:
- uses: actions/checkout@v2
with:
submodules: true
- name: "apt-get install"
run: |
sudo apt-get update
sudo apt-get -y install qemu-system-x86 g++-mingw-w64-x86-64 gdb
if: runner.os == 'Linux'
- name: "apt-get install ${{ matrix.cmp }}"
run: |
export GCC_NAME="${{ matrix.cmp }}"
sudo apt-get update
sudo apt-get -y install software-properties-common
sudo add-apt-repository -y ppa:ubuntu-toolchain-r/test
sudo apt-get update
sudo apt-get -y install g++-${GCC_NAME#gcc-}
if: matrix.utoolchain
- name: Prepare and compile dependencies
run: python .ci/cue.py prepare
- name: Build main module
run: python .ci/cue.py build
- name: Run main module tests
run: python .ci/cue.py test
- name: Upload tapfiles Artifact
if: ${{ always() }}
uses: actions/upload-artifact@v4
with:
name: tapfiles ${{ matrix.name }}
path: '**/O.*/*.tap'
if-no-files-found: ignore
- name: Collect and show test results
if: ${{ always() }}
run: python .ci/cue.py test-results

1
.gitignore vendored
View File

@@ -6,6 +6,7 @@
/html/
/include/
/templates/
/configure/*.local
O.*/
/QtC-*
*.orig

4
.gitmodules vendored Normal file
View File

@@ -0,0 +1,4 @@
[submodule ".ci"]
path = .ci
url = https://github.com/epics-base/ci-scripts
branch = master

View File

@@ -1,31 +0,0 @@
sudo: false
dist: trusty
language: c
compiler:
- gcc
env:
- CMPLR=gcc
- CMPLR=gcc EXTRA=CMD_CXXFLAGS=-std=c++11
- CMPLR=gcc STATIC=YES
- CMPLR=clang
- CMPLR=clang STATIC=YES
- WINE=32 TEST=NO STATIC=YES
- RTEMS=4.10 TEST=NO
- RTEMS=4.9 TEST=NO
addons:
apt:
packages:
- libreadline6-dev
- libncurses5-dev
- perl
- clang
- g++-mingw-w64-i686
- bison
- flex
- texinfo
- install-info
cache:
directories:
- $HOME/.cache
install: sh ci/travis-prepare.sh </dev/null
script: sh ci/travis-build.sh </dev/null

View File

@@ -3,8 +3,7 @@
# 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
# EPICS BASE is distributed subject to a Software License Agreement found
# in file LICENSE that is included with this distribution.
#*************************************************************************
@@ -15,12 +14,8 @@ include $(TOP)/configure/CONFIG
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
include $(TOP)/configure/RULES_TOP

View File

@@ -1,85 +0,0 @@
# AppVeyor configuration for EPICS Base
# Ralph Lange <ralph.lange@gmx.de>
# Copyright (c) 2016-2017 ITER Organization
# Version format
version: base-{branch}-{build}
#---------------------------------#
# repository cloning #
#---------------------------------#
# Called at very beginning, before repo cloning
init:
# Set autocrlf to make batch files work
- git config --global core.autocrlf true
# Set clone depth (do not fetch complete history)
clone_depth: 2
# Skipping commits affecting only specific files
skip_commits:
files:
- 'documentation/*'
- 'templates/*'
- '**/*.html'
- '**/*.md'
#---------------------------------#
# build matrix configuration #
#---------------------------------#
# Build Configurations: dll/static, regular/debug
configuration:
- dynamic
- static
- dynamic-debug
- static-debug
# Environment variables: compiler toolchain
environment:
matrix:
- TOOLCHAIN: 10.0
- TOOLCHAIN: 11.0
- TOOLCHAIN: 12.0
- TOOLCHAIN: 14.0
- APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2017
TOOLCHAIN: 2017
- TOOLCHAIN: cygwin
- TOOLCHAIN: mingw
# Platform: architecture
platform:
- x86
- x64
# Matrix configuration: allow specific failing jobs
matrix:
exclude:
# VS Express installs don't have the 64 bit compiler
- platform: x64
TOOLCHAIN: 10.0
#---------------------------------#
# building & testing #
#---------------------------------#
install:
- cmd: ci/appveyor-prepare.bat
build_script:
- cmd: ci/appveyor-make.bat
test_script:
- cmd: ci/appveyor-make.bat runtests
#---------------------------------#
# notifications #
#---------------------------------#
notifications:
- provider: Slack
incoming_webhook:
secure: RYOm3FIUYeZGjWKaeTVKwq+C3fzK54AKwbmAoECED45mex3lN+8HmrC845a6mg9xPUJ/ND51RopWVaKDD9/UzaM0SO195RQLKqUTIUafiuM=

View File

@@ -1,137 +0,0 @@
:: Universal build script for AppVeyor (https://ci.appveyor.com/)
:: Environment:
:: TOOLCHAIN - toolchain version [10.0/11.0/12.0/14.0/2017/cygwin/mingw]
:: CONFIGURATION - determines EPICS build [dynamic/static]
:: PLATFORM - architecture [x86/x64]
::
:: All command line args are passed to make
Setlocal EnableDelayedExpansion
set "ST="
if /i "%CONFIGURATION%"=="static" set ST=-static
set OS=64BIT
if "%PLATFORM%"=="x86" set OS=32BIT
echo [INFO] Platform: %OS%
:: Use parallel make, except for 3.14
set "MAKEARGS=-j2 -Otarget"
if "%APPVEYOR_REPO_BRANCH%"=="3.14" set MAKEARGS=
if "%TOOLCHAIN%"=="cygwin" (
set "MAKE=make"
if "%OS%"=="64BIT" (
set "EPICS_HOST_ARCH=cygwin-x86_64"
set "INCLUDE=C:\cygwin64\include;%INCLUDE%"
set "PATH=C:\cygwin64\bin;%PATH%"
echo [INFO] Cygwin Toolchain 64bit
) else (
set "EPICS_HOST_ARCH=cygwin-x86"
set "INCLUDE=C:\cygwin\include;%INCLUDE%"
set "PATH=C:\cygwin\bin;%PATH%"
echo [INFO] Cygwin Toolchain 32bit
)
echo [INFO] Compiler Version
gcc -v
goto Finish
)
if "%TOOLCHAIN%"=="mingw" (
set "MAKE=mingw32-make"
if "%OS%"=="64BIT" (
set "EPICS_HOST_ARCH=windows-x64-mingw"
set "INCLUDE=C:\tools\mingw64\include;%INCLUDE%"
set "PATH=C:\tools\mingw64\bin;%PATH%"
echo [INFO] MinGW Toolchain 64bit
) else (
set "EPICS_HOST_ARCH=win32-x86-mingw"
set "INCLUDE=C:\tools\mingw32\include;%INCLUDE%"
set "PATH=C:\tools\mingw32\bin;%PATH%"
echo [INFO] MinGW Toolchain 32bit
)
echo [INFO] Compiler Version
gcc -v
goto Finish
)
set "VSINSTALL=C:\Program Files (x86)\Microsoft Visual Studio %TOOLCHAIN%"
if not exist "%VSINSTALL%\" set "VSINSTALL=C:\Program Files (x86)\Microsoft Visual Studio\%TOOLCHAIN%\Community"
if not exist "%VSINSTALL%\" goto MSMissing
set "MAKE=C:\tools\make"
echo [INFO] APPVEYOR_BUILD_WORKER_IMAGE=%APPVEYOR_BUILD_WORKER_IMAGE%
if "%OS%"=="64BIT" (
set EPICS_HOST_ARCH=windows-x64%ST%
:: VS 2017
if exist "%VSINSTALL%\VC\Auxiliary\Build\vcvars64.bat" (
call "%VSINSTALL%\VC\Auxiliary\Build\vcvars64.bat"
where cl
if !ERRORLEVEL! NEQ 0 goto MSMissing
goto MSFound
)
if exist "%VSINSTALL%\VC\vcvarsall.bat" (
call "%VSINSTALL%\VC\vcvarsall.bat" amd64
where cl
if !ERRORLEVEL! NEQ 0 (
call "%VSINSTALL%\VC\vcvarsall.bat" x86_amd64
where cl
if !ERRORLEVEL! NEQ 0 goto MSMissing
)
goto MSFound
)
if exist "%VSINSTALL%\VC\bin\amd64\vcvars64.bat" (
call "%VSINSTALL%\VC\bin\amd64\vcvars64.bat"
where cl
if !ERRORLEVEL! NEQ 0 goto MSMissing
goto MSFound
)
) else (
set EPICS_HOST_ARCH=win32-x86%ST%
:: VS 2017
if exist "%VSINSTALL%\VC\Auxiliary\Build\vcvars32.bat" (
call "%VSINSTALL%\VC\Auxiliary\Build\vcvars32.bat"
where cl
if !ERRORLEVEL! NEQ 0 goto MSMissing
goto MSFound
)
if exist "%VSINSTALL%\VC\vcvarsall.bat" (
call "%VSINSTALL%\VC\vcvarsall.bat" x86
where cl
if !ERRORLEVEL! NEQ 0 goto MSMissing
goto MSFound
)
if exist "%VSINSTALL%\VC\bin\vcvars32.bat" (
call "%VSINSTALL%\VC\bin\vcvars32.bat"
where cl
if !ERRORLEVEL! NEQ 0 goto MSMissing
goto MSFound
)
if exist "%VSINSTALL%\Common7\Tools\vsvars32.bat" (
call "%VSINSTALL%\Common7\Tools\vsvars32.bat"
where cl
if !ERRORLEVEL! NEQ 0 goto MSMissing
goto MSFound
)
)
:MSMissing
echo [INFO] Installation for MSVC Toolchain %TOOLCHAIN% / %OS% seems to be missing
exit 1
:MSFound
echo [INFO] Microsoft Visual Studio Toolchain %TOOLCHAIN%
echo [INFO] Compiler Version
cl
:Finish
echo [INFO] EPICS_HOST_ARCH: %EPICS_HOST_ARCH%
echo [INFO] Make version
%MAKE% --version
echo [INFO] Perl version
perl --version
%MAKE% %MAKEARGS% %*

View File

@@ -1,70 +0,0 @@
:: Build script for AppVeyor (https://ci.appveyor.com/)
:: Environment:
:: TOOLCHAIN - Toolchain Version [9.0/10.0/11.0/12.0/14.0/cygwin/mingw]
:: CONFIGURATION - determines EPICS build [dynamic/static, -debug]
:: PLATFORM - "x86" -> use 32bit architecture
::
:: Prepares an Appveyor build by excuting the following steps
:: - Set up configure\CONFIG_SITE for static vs. dynamic build
:: - Install Cygwin / Mingw (TOOLCHAIN setting) in the in the appropriate flavor
:: - Download and install Make-4.1 from EPICS download page
Setlocal EnableDelayedExpansion
set OS=64BIT
if "%PLATFORM%"=="x86" set OS=32BIT
echo [INFO] Platform: %OS%
if "%TOOLCHAIN%"=="cygwin" (
echo.%CONFIGURATION% | findstr /C:"static">nul && (
echo SHARED_LIBRARIES=NO>> configure\CONFIG_SITE
echo STATIC_BUILD=YES>> configure\CONFIG_SITE
echo [INFO] EPICS set up for static build
) || (
echo [INFO] EPICS set up for dynamic build
)
echo.%CONFIGURATION% | findstr /C:"debug">nul && (
echo HOST_OPT=NO>> configure\CONFIG_SITE
echo [INFO] EPICS set up for debug build
) || (
echo [INFO] EPICS set up for optimized build
)
if "%OS%"=="64BIT" (
echo [INFO] Installing Cygwin 64bit and dependencies
@powershell -Command "(new-object net.webclient).DownloadFile('http://www.cygwin.com/setup-x86_64.exe', 'C:\cygwin64\setup-x86_64.exe')"
C:\cygwin64\setup-x86_64.exe -q -P "libreadline-devel,libncursesw-devel"
) else (
echo [INFO] Installing Cygwin 32bit and dependencies
@powershell -Command "(new-object net.webclient).DownloadFile('http://www.cygwin.com/setup-x86.exe', 'C:\cygwin\setup-x86.exe')"
C:\cygwin\setup-x86.exe -q -P "libreadline-devel,libncursesw-devel"
)
)
if "%TOOLCHAIN%"=="mingw" (
echo.%CONFIGURATION% | findstr /C:"static">nul && (
echo SHARED_LIBRARIES=NO>> configure\CONFIG_SITE
echo STATIC_BUILD=YES>> configure\CONFIG_SITE
echo [INFO] EPICS set up for static build
) || (
echo [INFO] EPICS set up for dynamic build
)
echo.%CONFIGURATION% | findstr /C:"debug">nul && (
echo HOST_OPT=NO>> configure\CONFIG_SITE
echo [INFO] EPICS set up for debug build
) || (
echo [INFO] EPICS set up for optimized build
)
if "%OS%"=="64BIT" (
echo [INFO] Installing MinGW 64bit
cinst mingw || cinst mingw
) else (
echo [INFO] Installing MinGW 32bit
cinst mingw --x86 || cinst mingw --x86
)
)
echo [INFO] Installing Make 4.1
curl -fsS --retry 3 -o C:\tools\make-4.1.zip https://epics.anl.gov/download/tools/make-4.1-win64.zip
cd \tools
"C:\Program Files\7-Zip\7z" e make-4.1.zip

View File

@@ -1,90 +0,0 @@
#!/bin/sh
set -e -x
die() {
echo "$1" >&2
exit 1
}
ticker() {
while true
do
sleep 60
date -R
[ -r "$1" ] && tail -n10 "$1"
done
}
CACHEKEY=1
EPICS_HOST_ARCH=`perl src/tools/EpicsHostArch.pl`
[ -e configure/os/CONFIG_SITE.Common.linux-x86 ] || die "Wrong location: $PWD"
case "$CMPLR" in
clang)
echo "Host compiler is clang"
cat << EOF >> configure/os/CONFIG_SITE.Common.$EPICS_HOST_ARCH
GNU = NO
CMPLR_CLASS = clang
CC = clang
CCC = clang++
EOF
;;
*) echo "Host compiler is default";;
esac
if [ "$STATIC" = "YES" ]
then
echo "Build static libraries/executables"
cat << EOF >> configure/CONFIG_SITE
SHARED_LIBRARIES=NO
STATIC_BUILD=YES
EOF
fi
# requires wine and g++-mingw-w64-i686
if [ "$WINE" = "32" ]
then
echo "Cross mingw32"
sed -i -e '/CMPLR_PREFIX/d' configure/os/CONFIG_SITE.linux-x86.win32-x86-mingw
cat << EOF >> configure/os/CONFIG_SITE.linux-x86.win32-x86-mingw
CMPLR_PREFIX=i686-w64-mingw32-
EOF
cat << EOF >> configure/CONFIG_SITE
CROSS_COMPILER_TARGET_ARCHS+=win32-x86-mingw
EOF
fi
# 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' configure/os/CONFIG_SITE.Common.RTEMS
cat << EOF >> configure/os/CONFIG_SITE.Common.RTEMS
RTEMS_VERSION=$RTEMS
RTEMS_BASE=/home/travis/.cache/rtems${RTEMS}-i386
EOF
cat << EOF >> 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 $EXTRA
if [ "$TEST" != "NO" ]
then
make tapfiles
make -s test-results
fi

View File

@@ -1,40 +0,0 @@
#!/bin/sh
set -e -x
die() {
echo "$1" >&2
exit 1
}
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"

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

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