Compare commits

..

498 Commits

Author SHA1 Message Date
Andrew Johnson
72fdd8bc2e Oops, off-by-one error... 2009-12-23 00:07:31 +00:00
Jeff Hill
414cb8d62c installed this fille which is needed by the VAXC compiler 2009-08-19 18:46:54 +00:00
Jeff Hill
e0106fd010 fixed vaxc compile error 2009-08-19 18:32:33 +00:00
Jeff Hill
0d0aa7de73 fixed vaxc compile error 2009-08-19 16:36:51 +00:00
Jeff Hill
6285f33fda fixed vms build syntax error 2009-08-19 14:58:11 +00:00
Andrew Johnson
e22fbab104 Changed DBF_DEVICE fix to use Marty's version. 2008-05-06 15:01:08 +00:00
Andrew Johnson
a184041ea0 US DST Rules changed in 2007... 2007-02-22 22:06:04 +00:00
Andrew Johnson
37c1049e47 Fixed off-by-one buffer overflow in dbFindField(). 2006-05-12 15:42:06 +00:00
Ralph Lange
ec9686d945 A bunch of changes suggested by G. Pfeiffer and B. Franksen (BESSY):
- option to find() so it follow links
- use of strict
- handle comments correctly when parsing RELEASE
2005-09-15 12:15:28 +00:00
Marty Kraimer
7009ea2784 change NTP sync code 2005-04-18 13:43:53 +00:00
Marty Kraimer
b307ef1746 drvTS changes 2005-04-18 13:41:42 +00:00
Andrew Johnson
e5461a72b0 Fix from Dirk Zimoch. 2004-06-03 23:12:35 +00:00
Janet B. Anderson
e54a016e9c Changing file back to R3-13-9 version. 2004-04-15 16:42:47 +00:00
Janet B. Anderson
5dc8213385 R3.13.10 2004-04-15 13:36:02 +00:00
Janet B. Anderson
6ce3e959ee Removed T22 definition. 2004-04-14 20:55:26 +00:00
Janet B. Anderson
731e413fe6 Put -nostdinc flag back. 2004-04-14 20:53:45 +00:00
Janet B. Anderson
f3086ac02f Added T22 to remove the switch -nostdinc from the compile line. 2004-04-14 20:26:12 +00:00
Andrew Johnson
bcaa5e05c3 Updates on my changes and some other fixes. 2004-04-13 23:11:54 +00:00
Ralph Lange
43028c644e Comment change. 2004-04-08 14:38:21 +00:00
Janet B. Anderson
5eabcef78c Added comments about INSTALL_LOCATION_APP 2004-04-07 14:19:12 +00:00
Janet B. Anderson
168e33b7b4 Added code to remove trailing white space and carriage return. 2004-04-06 17:53:41 +00:00
Andrew Johnson
51a1314f31 Should be using the tornado202p1 cross-compiler tools at APS. 2004-04-05 22:38:52 +00:00
Andrew Johnson
9fc20984ec Reorganized so the order in base.dbd and baseLIBOBJS files match.
Removed some drivers/devices which are no longer in base.
2004-04-05 22:15:02 +00:00
Andrew Johnson
565ec952fe Xycom Xy010 is prehistoric.
Bitbus driver was unbundled some time back.
The drvBitBus*.h files are needed for building drvGpib, and have been
updated to the latest unbundled versions.
2004-04-05 21:51:15 +00:00
Andrew Johnson
5bbf333ad3 createSoftLinks.sh was ancient history. 2004-04-05 21:45:01 +00:00
Andrew Johnson
9a99e447a8 Removed ancient devices that are no longer used. 2004-04-05 21:44:18 +00:00
Marty Kraimer
f3dfc7f4e9 conversion of double to float 2004-04-05 12:48:30 +00:00
Marty Kraimer
265597698e safeDoubleToFloat: handle 0.0 as special case 2004-04-05 12:36:34 +00:00
Marty Kraimer
64d9557d17 buf fix for seq_ca 2004-04-02 17:09:48 +00:00
Marty Kraimer
fcc317ccdf The sequencer did not properly keep track of number of channels connected.
It now checks if it is actually connected/disconnect before it increments/decrements the counts.
2004-04-02 17:09:23 +00:00
Andrew Johnson
15072fb71c Removed devBBInteract.c, use unbundled version. 2004-04-01 23:20:40 +00:00
Andrew Johnson
8828487ee7 Duplicate, also found in camacDev subdirectory. 2004-04-01 23:11:55 +00:00
Andrew Johnson
7304b138a2 drvVmic2534.c doesn't compile, so removed. 2004-04-01 23:10:10 +00:00
Ralph Lange
bff391d85c Enable '+=' extension of DEFAULT_SHRLIB_SEARCH_PATH 2004-03-23 11:09:06 +00:00
Ralph Lange
2619a00eee Minor fix for aCC 2004-03-18 17:38:08 +00:00
Janet B. Anderson
459cfe4cc6 Removed -nostdinc flag for Tornado 2.2 builds. 2004-03-17 21:59:29 +00:00
Janet B. Anderson
0dfef26c23 Set ANSI=GCC and CPLUSPLUS=G++ and removed extra definitions. 2004-03-17 21:33:45 +00:00
Janet B. Anderson
eaaeb78f3d Changed definition of WIND_HOST_TYPE to x86-linux. 2004-03-17 21:23:19 +00:00
Marty Kraimer
6f8ff1ea68 remove devXxDg535Gpib 2004-02-20 19:01:37 +00:00
Marty Kraimer
5942ff01c5 this is in share and has also been converted to 3.14 2004-02-20 18:59:35 +00:00
Marty Kraimer
13b19bade4 check for access security not started 2004-02-17 13:11:57 +00:00
Marty Kraimer
57a87ac96d The fields ZRST,...,FFST are now special(SPC_MOD) 2004-02-10 15:18:49 +00:00
Marty Kraimer
0b2771c5f4 make size of CALC 40 instead of 36 2004-02-10 15:15:37 +00:00
Marty Kraimer
5f2e18a009 access security changes 2004-02-10 15:04:12 +00:00
Marty Kraimer
16ac672973 add ascar 2004-02-10 14:52:46 +00:00
Marty Kraimer
797f2ae524 add copyright notice 2004-02-10 14:52:39 +00:00
Jeff Hill
8004aeb729 fixed release numbers 2004-02-05 23:30:22 +00:00
Jeff Hill
9835753cb6 added ca patch descriptions 2004-02-05 23:28:50 +00:00
Jeff Hill
4e1fd091ea fixed enobuf causes stuck send thread 2004-02-05 21:12:09 +00:00
Jeff Hill
7ad5347f7f getopt header install 2004-01-29 17:29:51 +00:00
Jeff Hill
74824c5ff2 added share lib slock 2004-01-29 01:44:22 +00:00
Andrew Johnson
1bda6aff08 Added getopt.c for WIN32 2004-01-28 23:40:35 +00:00
Andrew Johnson
461cac2e1d BSD version of getopt.c plus a suitable header file.
Not tested, but should build on Win32 - might need decorations though.
2004-01-28 23:38:17 +00:00
Janet B. Anderson
081a96160f Put shell command in line 1 2004-01-22 21:55:09 +00:00
Janet B. Anderson
886759cffa Fixed tab and comment spelling. 2004-01-22 21:54:05 +00:00
Janet B. Anderson
4abc96759d Fixed comment. 2004-01-22 20:55:34 +00:00
Andrew Johnson
e083f41963 Changed to the EPICS Open license as agreed with ANL Legal. 2004-01-09 16:00:48 +00:00
Janet B. Anderson
04998e378b Fixed bugs in .stt rule. 2003-12-12 15:44:53 +00:00
Janet B. Anderson
a97876092e Changed cvsroot from /net/phoebus to /usr/local. 2003-12-11 14:51:49 +00:00
Jeff Hill
56c7e2401f never use raw fork() to spawn the repeater 2003-11-26 00:19:24 +00:00
Andrew Johnson
a1cbc57cc0 These files contain GPL code, and not compatible with the EPICS Base license. I
don't care if this removal breaks the WIN32 port of EPICS, we can't legally
distribute this code as part of Base.  Someone will have to rewrite the getopt
functionality, or grab a version that is not GPL licensed (try BSD).
2003-09-16 17:58:20 +00:00
Andrew Johnson
2a5a175196 Removed WIN32 getopt.* (GPL) 2003-09-16 17:56:21 +00:00
Ralph Lange
319328d6fe aCC (native HPUX) does not define __STDC__ but __STDCPP__ (which is probably correct). 2003-08-22 11:30:43 +00:00
Ralph Lange
fd16d1bb65 aCC (native HPUX) wants some templated inlines to be defined in the declaration. 2003-08-22 11:28:02 +00:00
Janet B. Anderson
21ff7e5613 Create javalib and javalib/<package> directories only if JAVA is defined. 2003-08-20 16:30:04 +00:00
Janet B. Anderson
0940a35086 R3.13.9 2003-08-20 14:59:08 +00:00
Jeff Hill
f8f2b44c6c added notes on search message minimum period reset values 2003-08-19 21:33:56 +00:00
Andrew Johnson
0e182d8c1a dbExpand fix. 2003-08-18 21:29:00 +00:00
Andrew Johnson
4f659b6581 Fixed warning, main returns int (ANSI-C). 2003-08-18 21:19:32 +00:00
Andrew Johnson
bc03c1cca9 Don't create .dbd file if dbExpand fails. 2003-08-18 20:57:43 +00:00
Andrew Johnson
39cfb6b05a Only give exit status of 0=OK if we really mean it (Mantis bug #26) 2003-08-18 20:55:46 +00:00
Andrew Johnson
9cd9257c4a Brought in the enhanced vxStats device support in use at APS for >1 year. 2003-08-15 21:59:04 +00:00
Andrew Johnson
71d1b80224 Don't create the java install directory until something actually needs it! 2003-08-15 20:00:32 +00:00
Jeff Hill
0e47da7e57 fixed redundant logFdAdd deadlock message 2003-08-06 21:59:56 +00:00
Marty Kraimer
092746d36a more bug changes 2003-08-06 18:18:40 +00:00
Marty Kraimer
d55d54d235 more bug changes 2003-08-06 18:13:54 +00:00
Marty Kraimer
2d08f5abac put notify did not act properly if a record had disp=TRUE. 2003-08-06 18:12:40 +00:00
Marty Kraimer
54cc4cec31 A bug in dbGetLink resulted in nRequest not being given the value 0 if the
link is a constant link. This in turn caused the waveform record to always
set NORD=NELEM.
2003-08-06 18:11:57 +00:00
Marty Kraimer
0e0c2c7ac3 remove warning message 2003-08-06 18:04:40 +00:00
Marty Kraimer
9d1e7f7da4 Remove some dead code. Clean up code for handling A24 DMA memory. 2003-08-06 18:02:27 +00:00
Marty Kraimer
5a5a0fd0cc "event task" changed tp "event_task". 2003-08-06 17:56:36 +00:00
Marty Kraimer
9805e6a8e9 Suppress duplicate console message from logMsg 2003-08-06 17:54:26 +00:00
Marty Kraimer
fe55b04449 macParseDefns did not check for handle==NULL. The documentation for
macParseDefns was not correct.
2003-08-06 17:52:50 +00:00
Marty Kraimer
09733655f8 If a dbGetLink failed on one of the input links, dbGetLink
was not called for the remaining links. Now it is.
2003-08-06 15:15:18 +00:00
Marty Kraimer
9cbf577382 ellRemove=>ellDelete 2003-08-06 15:10:36 +00:00
Jeff Hill
94b408425b removed unused var 2003-07-30 22:00:49 +00:00
Jeff Hill
7347132973 fixed for scope 2003-07-30 21:59:27 +00:00
Jeff Hill
87c3103022 set close-on-exec flag 2003-07-30 21:49:45 +00:00
Jeff Hill
b11d547699 set close-on-exec flag 2003-07-30 21:32:36 +00:00
Janet B. Anderson
73c303192d Fixed sscanf format specification. 2003-07-29 20:55:41 +00:00
Jeff Hill
4cb08f797a removed logFdAdd from logClient 2003-07-26 00:28:30 +00:00
Jeff Hill
459cdc0829 removed logFdAdd from logClient 2003-07-26 00:13:34 +00:00
Jeff Hill
551e87f15d removed logFdAdd from logClient 2003-07-25 23:41:58 +00:00
Jeff Hill
e628e95d2c dont assert fail if getsockname returns bad status 2003-07-15 16:22:08 +00:00
Jeff Hill
68120ccb74 doc bug fix for assert fail when getpeername or getsockname return failure status 2003-07-15 16:21:27 +00:00
Jeff Hill
47b044d257 fixed client removal order bug 2003-07-02 20:55:31 +00:00
Jeff Hill
78ad1feec8 run the beacon thread one click higher in priority than the udp input
thread's priority. This should keep beacons regular when there is
a heavy search load because all ofthe hosts are connecting at once
2003-06-13 00:29:50 +00:00
Jeff Hill
ba6b7f6e21 set retry number to 4 when there is a beacon anomaly or when a
channel disconnects. This starts the searcch delay at .4 seconds
instead of at 0.25 seconds.
2003-06-13 00:27:27 +00:00
Jeff Hill
5c162ad7c3 installed 2003-05-13 20:38:57 +00:00
Jeff Hill
64fc54cbaa cleaned up junk 2003-05-13 20:37:17 +00:00
cvs2svn
a570a5c17f This commit was manufactured by cvs2svn to create branch 'B3.13'. 2003-05-01 23:18:33 +00:00
Janet B. Anderson
0048405ec0 Changes for OS X. 2003-05-01 13:51:25 +00:00
Andrew Johnson
c7c74a8aab Added scanPeriod() routine to convert a menuScan value into its period. 2003-04-02 20:47:21 +00:00
Janet B. Anderson
e1bfd021c1 Modified DBEXPAND rule. 2003-03-25 23:13:22 +00:00
Janet B. Anderson
ec827cb25f Bug fixes for sequencer *.stt build. 2003-03-13 17:02:22 +00:00
Marty Kraimer
b1dc7d2848 Use Andrew's changes as basis for bug Rin Sluiter found 2003-02-10 14:54:16 +00:00
Marty Kraimer
1994e47492 changes for calls to recfrom 2003-02-10 14:32:42 +00:00
Janet B. Anderson
ef610d2784 R3.13.8 2003-02-04 19:59:44 +00:00
Jeff Hill
7a85d0f66c updated for R3.13.8 2003-02-04 17:58:47 +00:00
Marty Kraimer
432d454e28 changes for 3.13.8 2003-02-04 17:04:21 +00:00
Janet B. Anderson
ebfd8538bc Removed some comment lines. 2003-02-03 21:29:18 +00:00
Janet B. Anderson
d6be272269 Updated version of java jdk. 2003-02-03 16:54:51 +00:00
Jeff Hill
f3ee15a96b fixed missing loop termination in db_cancel_event() when the event
queue is completely full
2003-01-28 17:56:15 +00:00
Janet B. Anderson
f690464dc0 Comented out GCC and G++ definitions. 2002-12-09 20:51:42 +00:00
Janet B. Anderson
3b1c83ed6b Added javadoc definitions and rules. Made other changes. 2002-12-06 17:52:56 +00:00
Janet B. Anderson
70d8342312 Set no cross targets as default. Changed tornado20 to tornado202. 2002-12-06 17:51:42 +00:00
Janet B. Anderson
71e3ea1a07 Solaris config file updates. 2002-12-06 17:50:42 +00:00
Janet B. Anderson
1450bdd32d Added comments for new targets. 2002-12-05 20:50:19 +00:00
Janet B. Anderson
92b552bf52 Added solarisGnu target for solaris builds with GNU compiler. 2002-12-05 20:47:54 +00:00
Janet B. Anderson
948d3e5f15 Added ppc60*_long targets. 2002-12-05 20:44:27 +00:00
Janet B. Anderson
5547db3bf0 Removed references to X11 libraries. 2002-12-05 20:41:47 +00:00
Jeff Hill
91755f9cfd fixed ca_msg_text[] not seen outside win32 dll 2002-11-13 20:15:46 +00:00
Jeff Hill
95670b8dc5 added missing epicsShareDef (should impact only the VAX) 2002-11-12 16:56:18 +00:00
Janet B. Anderson
b8ceff8342 Added comment line about -mlongcall cflag. 2002-10-22 22:27:47 +00:00
Janet B. Anderson
0e268963b7 Ignore LD_LIBRARY_PATH and LD_LIBRARY_PATH_64 2002-10-18 21:47:01 +00:00
Janet B. Anderson
2c9f78350a Remove only build created .dbd files. 2002-10-18 15:57:32 +00:00
Janet B. Anderson
b18f2118f2 Allow arch_class specific prodname_objs. 2002-09-16 22:09:11 +00:00
Janet B. Anderson
9794d68fcb Added comment about supporting sbs_pc6. 2002-09-16 22:05:27 +00:00
Janet B. Anderson
f33b1d6989 Fixed line break. 2002-09-16 22:03:47 +00:00
Jeff Hill
a335ff38a2 installed 2002-09-10 15:37:26 +00:00
Jeff Hill
c4f2c23246 attempt to fix GNU builds correctly for all versions of solaris 2002-07-25 23:35:56 +00:00
Janet B. Anderson
34b24889cc R3.13.7 2002-07-25 17:27:00 +00:00
Janet B. Anderson
4f383d1bca Updates for R3.13.7. 2002-07-24 20:27:53 +00:00
Janet B. Anderson
9257e2b295 Changed makeStatSymTbl.pl to makeStatTbl.pl 2002-07-24 20:27:11 +00:00
Janet B. Anderson
c66e10e725 Changes for R3.13.7 2002-07-24 20:26:22 +00:00
Janet B. Anderson
5b2af16fad Moved epics/startup files to base/startup directory. 2002-07-24 18:39:15 +00:00
cvs2svn
fd289990db This commit was manufactured by cvs2svn to create branch 'B3.13'. 2002-07-24 18:39:14 +00:00
Janet B. Anderson
5600501e7b Removed log messages. 2002-07-24 14:47:43 +00:00
Jeff Hill
01f16118ac provide noop casCoreClient::eventSignal() to be called if they post events
while in the casStrmClient destructor
2002-07-24 00:26:10 +00:00
Jeff Hill
e68384b7e2 use specified port if it isnt provided in the interface address list 2002-07-22 16:53:58 +00:00
Marty Kraimer
325548b80f UDF how has a promptgroup.
This allows database configuration tools to mset UDF false.
2002-07-22 13:11:29 +00:00
Marty Kraimer
b8600aab3e add a couple. Fix conflicts. 2002-07-22 13:08:07 +00:00
Marty Kraimer
fc39d4f879 Field VAL now has a cvt_dbaddr method.
If no state strings are defined then the field type is declared USHORT.
2002-07-22 13:05:23 +00:00
Janet B. Anderson
9800be7c04 Removed old copyright comments. 2002-07-15 22:01:28 +00:00
Janet B. Anderson
7b250b9ec9 Removed Log history comments. 2002-07-15 21:51:02 +00:00
Janet B. Anderson
7aa6a39955 Moved shell command to top line. 2002-07-12 22:31:30 +00:00
Janet B. Anderson
1a59789871 Updated license comments. 2002-07-12 22:19:52 +00:00
cvs2svn
522e46036d This commit was manufactured by cvs2svn to create branch 'B3.13'. 2002-07-12 21:35:44 +00:00
Janet B. Anderson
053cfb39df Commented out pid record, symb and devPtSoft. 2002-07-11 19:36:25 +00:00
Jeff Hill
8195098e49 doc ca put callback bug in R3.13.6 2002-06-24 15:44:00 +00:00
Janet B. Anderson
2ad833fd1f Changed dir to EPICS_BASE_HOST_BIN. 2002-06-12 14:21:09 +00:00
Jeff Hill
69d504a657 fixed race condition occuring when a put notify is canceled by a ca clear channel
at the same instant that it completes
2002-05-29 15:07:31 +00:00
Jeff Hill
d5c5baad83 fixed race condition occuring when a put notify is canceled by a ca clear channel
at the same instant that it completes
2002-05-28 23:49:31 +00:00
Jeff Hill
795cb4c46d fixed ellFree cause malloc and free to be in different win32 dlls 2002-05-28 18:42:32 +00:00
Jeff Hill
5d8742632b fixed isinf() implementation 2002-05-28 18:37:34 +00:00
Marty Kraimer
979ce1be90 remove printf 2002-05-17 16:02:35 +00:00
Marty Kraimer
5c3da28b5e Change croteria for setting eoff=egul 2002-05-17 16:02:02 +00:00
Marty Kraimer
e3f52845d0 better diagnostic message 2002-05-17 15:56:49 +00:00
Marty Kraimer
2bd00b3e41 fix CA puts to disabled record 2002-05-17 15:53:56 +00:00
Marty Kraimer
06a0fa1708 better code for isinf 2002-05-17 15:47:50 +00:00
Marty Kraimer
3c76d41b70 support special_linconv for ai and ao 2002-05-17 15:43:37 +00:00
Janet B. Anderson
ad81dee1a1 Fix for static builds. 2002-05-06 20:16:00 +00:00
Andrew Johnson
a4ca46b051 Added cache handling so the NI-1014 works on MC68060-based boards. 2002-04-17 21:56:48 +00:00
Marty Kraimer
b94329db3f support nan and inf 2002-04-11 15:51:14 +00:00
Marty Kraimer
6d427b7b8b epicsMath.h support isnan and isinf 2002-04-11 15:50:27 +00:00
Marty Kraimer
5aff3b2d44 allow for nan and inf 2002-04-11 15:49:24 +00:00
Marty Kraimer
9ada9d9630 Several change for R3.13.7 2002-04-08 15:07:20 +00:00
Marty Kraimer
2cbee21119 It was possible for calcPerform to return a nan (not a number) 2002-04-08 15:03:06 +00:00
Marty Kraimer
cd6f33ef27 nsev not sevr must be checked 2002-04-08 14:55:13 +00:00
Marty Kraimer
4434ba4d6e TPRO did not work if dbProcess called recursively by different tasks 2002-04-08 14:41:00 +00:00
Marty Kraimer
69ffb18e7a dbb failed while taking recursive lock 2002-04-08 14:39:08 +00:00
Marty Kraimer
347fed2bad Fix failure for TSconfigure(0,0,0,0,0,0,1) 2002-04-08 14:38:09 +00:00
Jeff Hill
365243a2b0 set SOLARIS macro to the solaris version 2002-03-27 23:35:09 +00:00
Jeff Hill
355d2b0f42 made osiSocklen_t switch on the solaris os version 2002-03-27 23:29:53 +00:00
Jeff Hill
6a663c83c5 made osiSocklen_t switch on the solaris os version 2002-03-27 00:52:51 +00:00
Jeff Hill
57476bb56a made osiSocklen_t switch on the solaris os version 2002-03-27 00:26:32 +00:00
Jeff Hill
b99c4d2f6c removed declaration for gethostname 2002-03-26 23:05:52 +00:00
Jeff Hill
ca76aa0524 removed c++ style comment (ifdefed out for C but still a source of warnings) 2002-03-25 23:37:14 +00:00
Marty Kraimer
dcf48cea38 putNotify bug 2002-03-15 15:30:59 +00:00
Marty Kraimer
a2fad6e62e when moving restart list remove new owner from it 2002-03-15 15:24:31 +00:00
Janet B. Anderson
2054e9299a Modified comments containing jba overrides. 2002-03-14 22:39:45 +00:00
Jeff Hill
6a3ddb3076 more descriptions of CA problems 2002-03-14 16:58:29 +00:00
Jeff Hill
094a79fcd0 fixed put notify shutdown during channel delete 2002-03-14 01:13:58 +00:00
Jeff Hill
a29cf1b411 cosmetic 2002-03-13 22:10:16 +00:00
Jeff Hill
36a977becd improved put notify cleanup when client terminates 2002-03-13 22:07:58 +00:00
Jeff Hill
73f35c8167 improved put notify cleanup when client hangs up 2002-03-13 22:04:52 +00:00
Jeff Hill
47bbac99ce better message 2002-03-13 21:58:15 +00:00
Jeff Hill
e6850d62db fixed put notify cleanup during shutdown 2002-03-13 18:32:36 +00:00
Janet B. Anderson
567b220ea7 epics_R3_13_6 2002-03-13 14:44:06 +00:00
Marty Kraimer
ab090ce4ea print strerror(errno) 2002-03-13 13:14:47 +00:00
Jeff Hill
b8553b00d8 fixed dangling extra labor after extra labor flush 2002-03-12 23:48:36 +00:00
Marty Kraimer
27f82a6284 add notes for R3.13.6 2002-03-11 13:23:47 +00:00
Jeff Hill
af570b2b23 updated release notes with info describing fixes for CA related problems 2002-03-08 21:32:31 +00:00
Marty Kraimer
87bfe60ee7 All existing manipulations of UDF in process() are removed and one udf is set FALSE when the raw value is successfully read. 2002-03-08 15:26:19 +00:00
Marty Kraimer
a778863602 In do_sel udf is not set false at the beginning. If selm has an invalid value recGblSetSevr(psel,SOFT_ALARM,MAJOR_ALARM) is called. 2002-03-08 15:25:43 +00:00
Marty Kraimer
3916d4e459 change authors 2002-03-08 15:22:12 +00:00
Marty Kraimer
aecaf46c53 IrqVector must be multiple of 4 2002-03-08 15:21:30 +00:00
Marty Kraimer
a33f03c6ea initialProcess is now called before interruptAccept 2002-03-08 15:19:14 +00:00
Marty Kraimer
866a410f23 fix ellList errors 2002-03-08 15:18:26 +00:00
Marty Kraimer
f67bdb4668 double 0 to float conversion was incorrect 2002-03-08 14:59:01 +00:00
Marty Kraimer
8973bbdc3a some changes for R3.13.6 2002-03-08 13:38:01 +00:00
Jeff Hill
0fb4075a62 fixed bug where the db_put_field in the local event callback stub was supplied
with a destination that was the database field. In situations where the dbAccess
db_access field types were different the database was damaged.
2002-03-08 00:25:08 +00:00
Jeff Hill
bedbab8965 check for floating point in correct place 2002-03-08 00:16:27 +00:00
Jeff Hill
a82f4c4c43 dont allow canceled events to use up queue pad for first event 2002-03-08 00:15:51 +00:00
Janet B. Anderson
3ee0ea750a Added touch.pl for WIN32 builds (needed for newest cygwin make). 2002-03-07 23:21:01 +00:00
Janet B. Anderson
717384dbdb Define HOME if not alread defined. 2002-02-15 15:33:59 +00:00
Janet B. Anderson
a06a26bf2d Changed subst to patsubst in the DLL_LIBS definition. 2002-02-14 23:36:42 +00:00
Jeff Hill
34e5e5432b workaround for CONNRESET error from disconnected socket on windows 2002-02-07 18:49:16 +00:00
Marty Kraimer
cc5791cbbd change stack size 2002-01-22 16:00:28 +00:00
Andrew Johnson
fb22efdc54 Applied PPC patch from APS local version R3.13.2-asd2 that got missed out
of R3.13.5
2002-01-15 21:58:03 +00:00
Marty Kraimer
b74047a296 see tech-talk message from Noboru Yamamoto Nov 2001 2002-01-07 14:49:15 +00:00
Janet B. Anderson
e573033c7e Removed unused references to VX_CONFIG_DIR. 2001-12-06 21:30:39 +00:00
Janet B. Anderson
d121fb00a7 Added comments for jba crosscompiler. 2001-12-06 21:24:40 +00:00
Marty Kraimer
b9b5e7f826 dbCaGetLink must return -1 when sevr = INVALID 2001-11-16 14:15:03 +00:00
Janet B. Anderson
2582f37da0 Fix for DLL_LIBS. 2001-10-11 21:22:56 +00:00
Janet B. Anderson
e1c108b14a Added basename. 2001-10-01 17:52:43 +00:00
Janet B. Anderson
fbf3e7630a Fix shared libraries build bug. 2001-09-21 18:22:44 +00:00
Jeff Hill
2d298e60c2 dont use bool - early compilers dont support it 2001-09-20 22:43:14 +00:00
Jeff Hill
fbabce651f dont deadlock if ca_clear_event() is in event cb 2001-09-20 17:44:27 +00:00
Janet B. Anderson
ea1d5039e8 Added SRCS for PRODs. 2001-09-19 14:44:01 +00:00
Janet B. Anderson
64cbf3ce00 Added SRCS for ascheck. 2001-09-19 14:42:43 +00:00
Janet B. Anderson
9a99bb114f Added SRCS for caRepeater. 2001-09-19 14:41:56 +00:00
Janet B. Anderson
a6a395861e SRCS needed for lib depends to work. 2001-09-19 14:17:58 +00:00
Janet B. Anderson
804f240d05 Updated for R3.13.5. 2001-09-19 14:14:15 +00:00
Janet B. Anderson
8a477f7f95 Updates for R3.13.5 2001-09-19 14:06:15 +00:00
Janet B. Anderson
8a93905515 Updates for R3.13.5 2001-09-18 22:05:47 +00:00
Janet B. Anderson
d401dcdfab R3.13.5 - update for win32 2001-09-18 18:11:11 +00:00
Marty Kraimer
d56ca7f02e changes for R3.13.5 2001-09-18 15:49:53 +00:00
Janet B. Anderson
b1725b380b R3.13.5 2001-09-18 14:58:15 +00:00
Marty Kraimer
70d0303f78 A link is made a constant if either strtod or strtol eats entire string.
Previously only strtod was used.
2001-09-18 12:52:21 +00:00
Marty Kraimer
5a83c766e8 If prompt is null it is now made a null string.
Last breakpoint interval is now given a value.
2001-09-18 12:48:11 +00:00
Marty Kraimer
f3b833912f recGblInitConstantLink uses %i instead of %u for unsigned types.
This is so that hex constants are accepted. %u does not accept hex.
2001-09-18 12:42:44 +00:00
Marty Kraimer
bdc546a8c3 Now uses osiSock for to handle implementation diffences. 2001-09-18 12:25:01 +00:00
Marty Kraimer
c02d807a3d increased stack size for cac_recv_task from 4096 to 8192 2001-09-18 12:17:48 +00:00
Andrew Johnson
5cba098b1b Replaced makeConfigAppInclude.pl and makeIocCdCommands.pl with
convertRelease.pl, added rules to do a checkRelease on build.
2001-09-14 19:39:17 +00:00
Marty Kraimer
ed5d521400 resolve conflicts with Jeffs commit 2001-09-10 13:07:11 +00:00
Jeff Hill
360fca950d removed ifdef on GNUC 2001-09-05 15:10:11 +00:00
Andrew Johnson
511e0f3ed6 Changes to get working on PowerPC - struct alignment issues mainly,
plus a problem with the maximum message length check...
Also removed lots of warnings, although this was a bit of a waste of time.
2001-08-30 21:16:48 +00:00
Jeff Hill
1959f42c41 fixed my dreadful spelling 2001-08-27 21:26:03 +00:00
Jeff Hill
f1d8472118 added CA server bug info 2001-08-27 21:20:44 +00:00
Jeff Hill
8d4adef787 fixed event clear while flow control is running deadlock 2001-08-27 20:38:46 +00:00
Janet B. Anderson
560e9d5bf2 Added SRCS.c and SRCS.cc to depends dependancies. 2001-08-27 18:57:10 +00:00
Janet B. Anderson
3eaa0b0e9c R3-13-5-beta-1 2001-08-27 18:54:45 +00:00
Janet B. Anderson
c78c305dde Added compiler -w warning options. 2001-08-27 18:52:25 +00:00
Janet B. Anderson
def5fcf7c2 Only execute depends command if there are source files. 2001-08-20 17:23:24 +00:00
Janet B. Anderson
c4a14a940d Added depends rule. 2001-08-20 16:36:50 +00:00
Janet B. Anderson
9d4540bf96 Added SRCS line - necessary for depends rule. 2001-08-20 16:24:37 +00:00
Andrew Johnson
55422049a5 Removed spurious menuLinr.dbd (LINR uses menuConvert found in src/bpt). 2001-08-17 22:30:59 +00:00
Andrew Johnson
41263e4136 Removed special_linconv() routines, ESLO and EOFF can be set manually. 2001-08-17 22:15:59 +00:00
Andrew Johnson
631f522d75 ESLO and EOFF are now design fields, usable when no device support
special_linconv() routine is provided (for Raw Soft support).
Value changes by device support also cause CA monitors to be posted.
2001-08-17 22:14:15 +00:00
Marty Kraimer
006c7eda64 VAL has promptgroup 2001-08-16 15:36:17 +00:00
Marty Kraimer
83420814a0 VAL has promptgroup; ESLO,EOFF user modifable 2001-08-16 15:35:55 +00:00
Marty Kraimer
ef15667182 change INVALID to MAJOR 2001-08-16 15:34:14 +00:00
Andrew Johnson
405fff7f58 Fixed comment about disabling VBTO on 68K boards. 2001-08-06 22:31:33 +00:00
Marty Kraimer
54fee9f016 change default precision from 0 to 6 2001-07-10 18:29:34 +00:00
Janet B. Anderson
9e451e8f32 Moved +DAportable to compiler dependant options. 2001-06-26 16:14:36 +00:00
Jeff Hill
11fb4abef3 accomodate ppc 2001-06-25 21:38:03 +00:00
Jeff Hill
6a8ad88933 this file should not be in R3.13. It is probably showing up
there due to persons directly manipulating files in CVS root?
2001-06-25 21:35:29 +00:00
Janet B. Anderson
7e9882e62d Don't try to create directory if symbolic link of same name exists. 2001-06-25 19:28:11 +00:00
Marty Kraimer
50e67354ce bug that causes dbNotifyCancel to timeout 2001-06-21 12:58:09 +00:00
Marty Kraimer
bfb770040e changes for 3.13.5 2001-06-20 16:19:28 +00:00
Marty Kraimer
a7cbe6320c Improved algorithm for cpuUsage 2001-06-20 16:12:15 +00:00
Marty Kraimer
930f5d64ec DBF_FLOAT fields have been replaced by DBF_DOUBLE
DBF_FLOAT fields have been replaced by DBF_DOUBLE
2001-06-20 16:05:37 +00:00
Marty Kraimer
adb2d574a3 size was wrong 2001-06-20 15:59:02 +00:00
Marty Kraimer
9875370d92 change double to float 2001-06-20 15:58:26 +00:00
Marty Kraimer
558e7a3947 inplement safeDoubleToFloat 2001-06-20 15:29:43 +00:00
Marty Kraimer
3a74d55e6c replace epicsPrintf by errlogPrintf; suppress some messages 2001-06-20 15:27:56 +00:00
Marty Kraimer
cd0cf5f214 A bug was fixed that was related to dynamically changing lock sets.
The record support put_array_info is called after the a put only if the put is successful.
2001-06-20 14:09:37 +00:00
Janet B. Anderson
4aa81c5344 Die if rmtree fails. 2001-06-08 20:36:54 +00:00
Andrew Johnson
55a9e3b202 Added NICPU030 precompiler definition, needed for drvEpvxi.c on this board. 2001-06-07 21:33:25 +00:00
Andrew Johnson
cf08dffbe3 Added support for PowerPC, fixed a few things.
This file now builds without the NI cpi030 support by default, if you need
this you'll have to uncomment the #define, or add a suitable macro to the
arguments of the compiler such as  -DNICPU030
2001-06-07 21:05:45 +00:00
Jeff Hill
83e5824c82 better config of ifconfig differences 2001-05-23 21:39:28 +00:00
Janet B. Anderson
b4a3060bcc Added missing calls to recGblGetGraphicDouble and recGblGetControlDouble. 2001-05-08 20:02:31 +00:00
Andrew Johnson
359cac2a7a Don't crash if no hardware present... 2001-04-06 15:22:17 +00:00
Jeff Hill
932ee82378 fixed task names with spaces 2001-03-22 20:58:43 +00:00
Janet B. Anderson
54f8c4b16e Removed .PHONY declarations. 2001-03-12 15:36:09 +00:00
Janet B. Anderson
c869181371 Updated comments. 2001-03-07 19:28:59 +00:00
Janet B. Anderson
e9a73b4672 Math lib removed. -fPIC options removed. 2001-03-07 18:55:23 +00:00
Janet B. Anderson
4810331f30 Changes for cygwin32 build. 2001-03-07 16:25:24 +00:00
Janet B. Anderson
a45cccca31 Changes for cygwin32 build. 2001-03-07 16:00:48 +00:00
Janet B. Anderson
dec31ae490 Initial version. 2001-03-07 15:43:01 +00:00
Janet B. Anderson
af758921ca Changes for DLL_LDLIBS. 2001-03-06 21:56:13 +00:00
Janet B. Anderson
f26211bc90 Set WIND_HOST_TYPE to x86-win32. 2001-03-06 21:53:10 +00:00
Janet B. Anderson
4c4eeee2d1 Added ifdef CPLUSPLUS again to linker definition. 2001-03-06 21:30:59 +00:00
Jeff Hill
ff21da6b48 fixed R3.13 for Linux's new socklen_t 2001-03-06 00:33:50 +00:00
Jeff Hill
743edfea17 fixed R3.13 for Linux's new socklen_t 2001-03-06 00:24:42 +00:00
Jeff Hill
d030dc6c79 fixed R3.13 for Linux's new socklen_t 2001-03-06 00:22:53 +00:00
Jeff Hill
602510cef7 fixed new dependence on socklen_t in Linux 2001-03-06 00:21:35 +00:00
Jeff Hill
f04f56750a fixed R3.13 for Linux's new socklen_t 2001-03-06 00:10:29 +00:00
Jeff Hill
9b6d834852 made compatible again with R3.11 2000-12-18 23:35:20 +00:00
Janet B. Anderson
443228c030 R3-13-4 2000-12-15 15:52:33 +00:00
Janet B. Anderson
1782f96fdf Initial version. 2000-12-14 21:27:38 +00:00
Janet B. Anderson
ecfc4209a5 Added vpath for .cpp files. 2000-12-14 16:20:37 +00:00
Janet B. Anderson
9392890198 Added *.cpp c++ source file compilation rule. 2000-12-14 16:00:58 +00:00
Marty Kraimer
07d184b7cf notes for 3.13.4 2000-12-14 14:20:56 +00:00
Marty Kraimer
703c3a838f changes for asTrapWrite 2000-12-11 15:46:14 +00:00
Marty Kraimer
1fca6cb348 Look for delta=0x80000000 2000-12-11 15:44:32 +00:00
Marty Kraimer
983ec9605c VAL and all related fields are now DBF_DOUBLE instead of DBF_LONG
SELM, SELN, and SELL are now available. They have same semantics as for fanout record
PREC is now supported.
IVOA and IVOV are no longer present. The record support never used them.
2000-12-11 15:38:49 +00:00
Marty Kraimer
8289ea132c changes for asTrapWrite 2000-12-11 15:36:25 +00:00
Marty Kraimer
5d19a030a8 initialize graphic, control, alarm limits to 0 2000-12-11 15:30:59 +00:00
Marty Kraimer
105f1107f1 add catime.o 2000-12-11 15:24:59 +00:00
Janet B. Anderson
c83434b82a Added Linux to LD_LIBRARY_PATH comment. 2000-12-01 20:49:32 +00:00
Jeff Hill
a1d0bfda5a changes from Ken Evans 2000-11-30 22:07:51 +00:00
Jeff Hill
d0f57e2c5b undefine debug macro and properly fetch source address
with Tornado II
2000-11-30 19:27:49 +00:00
Marty Kraimer
e0444c15cf make sure TSinit gets called 2000-11-10 22:00:26 +00:00
Jeff Hill
20b4796d5b if the server does not supply the beacon address then supply it in
the repeater
2000-11-09 16:31:33 +00:00
Jeff Hill
1c546579c0 avoid undefined symbols on certain Tornado II BSPs 2000-11-09 16:23:46 +00:00
Janet B. Anderson
97e0200a96 Added Borland definition and removed need for LIB env var. 2000-11-09 16:14:19 +00:00
Jeff Hill
bfead72b3f fixed unspecified beacon source address 2000-11-09 16:13:05 +00:00
Janet B. Anderson
a8cef4a3f3 Commented out drvEpvxi.o, drvEpvxiMsg.o, and drvHp1404a.o. 2000-11-09 16:01:28 +00:00
Jeff Hill
c07663f336 use ( (void ) 0 ) instead of just (void) 2000-11-08 20:24:42 +00:00
Jeff Hill
d26b946bcd assert must return void 2000-11-07 19:40:40 +00:00
Jeff Hill
2bbd8e82f0 protect against claim msgs processing after IOC disconnects 2000-11-03 23:05:13 +00:00
Jeff Hill
01b9401694 protect against claim msgs processing after IOC disconnects 2000-11-03 22:15:44 +00:00
Janet B. Anderson
d8707e17d7 Added ppc603 and CONFIG_SITE files for Linux build. 2000-10-31 20:37:43 +00:00
Andrew Johnson
ee118b800e Fixed TSgetMasterTime() bug - round-trip adjustment was garbage
Replaced TSprintf() with printf() where logging inappropriate
2000-10-12 15:47:13 +00:00
Janet B. Anderson
08b3fba1d2 Added os include file dirs. 2000-10-10 15:36:49 +00:00
Janet B. Anderson
da1359e352 Fix for timespec register problem. 2000-10-02 18:07:35 +00:00
Jeff Hill
357a58a976 fixed improper status test for ellFind 2000-09-12 18:39:27 +00:00
Jeff Hill
4dfcfb92d3 fixed alignment bug check on hosts that have 64 bit longs 2000-08-29 20:03:04 +00:00
Robert Soliday
d387f10f98 This file overwrites an older version that was commited by mistake. 2000-08-21 20:20:25 +00:00
Ralph Lange
0ec95fe1d7 MODULO bug (range was limited to short int) fixed. 2000-08-09 13:51:08 +00:00
Jeff Hill
a25736f934 removed all "CMPLR=STRICT" and "CXXCMPLR = SRICT"
from R3.13 patch branch makefiles
2000-07-18 15:15:09 +00:00
Janet B. Anderson
489cda3f4a Updated supported architecture lists. 2000-07-17 21:35:40 +00:00
Janet B. Anderson
cc04722d6f Fix for crosscompiler using wrong assembler. 2000-07-14 18:14:51 +00:00
Jeff Hill
5f8f321cba fixed missing type in static init 2000-07-13 23:37:24 +00:00
Jeff Hill
67da742a41 removed log 2000-07-12 22:04:37 +00:00
Jeff Hill
18dbd6153f fixed DLL export for the Borlund build 2000-07-11 01:30:10 +00:00
Jeff Hill
67c073dd50 better test for VMS 2000-07-10 18:59:09 +00:00
Marty Kraimer
07793f462b latest notes 2000-07-10 18:24:15 +00:00
Janet B. Anderson
e12e6c5511 epics_R3_13_3 2000-07-10 18:20:58 +00:00
Ralph Lange
12bd694be3 Bugfix: Changed RVAL/ROFF conversion to use double arithmetics 2000-07-07 18:15:30 +00:00
Janet B. Anderson
3a833feb34 Removed changes made for extensions until wildcard problems are resolved. 2000-07-07 15:23:42 +00:00
Jeff Hill
c2096fee0f added DLL export to destructor 2000-07-06 15:21:34 +00:00
Janet B. Anderson
368eb29e24 Changes for Borland compiler. 2000-07-06 14:16:15 +00:00
Marty Kraimer
59252092fc modify note about Borland c++ 2000-07-06 12:55:10 +00:00
Marty Kraimer
466cdaf012 more notes for 3.13.3 2000-07-05 15:22:48 +00:00
Janet B. Anderson
7948ab440f Added target ppc604, changed default to tornado20, added option to
install all include files firs.
2000-07-05 14:31:19 +00:00
Janet B. Anderson
177224595a Commented out tornado101 dir. 2000-07-05 14:30:12 +00:00
Janet B. Anderson
5b61fb0a92 Added option to install all include files first. 2000-07-05 14:13:05 +00:00
Janet B. Anderson
32f6dc1070 Added RMDIR definition. Removed uninstall's dependancy on bootstrap. 2000-07-03 19:16:16 +00:00
Janet B. Anderson
871a0d2f5b Changed company name. 2000-06-30 19:51:35 +00:00
Janet B. Anderson
8f1b6b071b Initial version. 2000-06-30 19:51:02 +00:00
Marty Kraimer
2ea7efe2ea dont give value for SHARE 2000-06-30 15:13:01 +00:00
Marty Kraimer
789ad68afd allow put callback for ACKT and ACKS 2000-06-30 14:07:38 +00:00
Marty Kraimer
cfc8647108 notes for 3.13.3 2000-06-29 13:42:43 +00:00
Jeff Hill
5ed27edaa3 m_type => m_dataType 2000-06-28 22:52:15 +00:00
Jeff Hill
1adff7f6c7 updated to support new BSD network interface query API 2000-06-28 16:33:51 +00:00
Marty Kraimer
c71cbc4f36 remove blank from task name 2000-06-28 15:48:43 +00:00
Jeff Hill
c8029c6597 changed "m_type" to "m_dataType" in order to avoid collision
with MACRO supplied by WRS's Tornado II product
2000-06-28 15:41:19 +00:00
Marty Kraimer
15ba66a654 fix include statements 2000-06-28 14:09:41 +00:00
Marty Kraimer
ebc676aea6 no imbeded blanks in task names 2000-06-28 14:00:23 +00:00
Marty Kraimer
e8a396074c make tsStampFromLocal and tsStampToLocal public 2000-06-28 13:56:14 +00:00
Marty Kraimer
335fc3aaee monitor if either the STAT or SEVR changes 2000-06-28 13:40:50 +00:00
Marty Kraimer
77049dd60d fix bad definition 2000-06-28 13:39:38 +00:00
Marty Kraimer
903c568990 add new convience routines 2000-06-28 13:37:36 +00:00
Ralph Lange
21f9ce34ff Bugfix in HPUX shared lib link options 2000-06-22 17:20:55 +00:00
Janet B. Anderson
ce0f7e1fc3 Added -m68040 to cflags. 2000-06-22 16:22:02 +00:00
Janet B. Anderson
6421264b9e Removed extra references to install. 2000-06-20 19:17:54 +00:00
Janet B. Anderson
4d04a3bda1 Moved the execution of the cleandirs rule. 2000-06-20 19:04:21 +00:00
Ralph Lange
b2da4eed3e Fix for aCC depends rule 2000-06-14 14:22:51 +00:00
Janet B. Anderson
2853eb9066 Cpu family specification not necessary if cpu is specified. 2000-06-09 15:29:32 +00:00
Ralph Lange
af7ae9694f Bugfix: -include only with Tornado 2000-06-09 14:23:37 +00:00
Ralph Lange
a2df5adfae Add for shared libs under HPUX / aCC 2000-06-09 14:18:36 +00:00
Ralph Lange
e49648170e Bugfix for shared libs under HPUX / aCC 2000-06-09 13:59:28 +00:00
Janet B. Anderson
6272f98eef Added fields drvl and drvh. 2000-05-31 18:33:52 +00:00
Janet B. Anderson
b520b21015 Added rules for java header file creation. 2000-05-15 14:31:37 +00:00
Janet B. Anderson
0cace42008 Modified win32 def file flag. 2000-05-09 20:50:25 +00:00
Janet B. Anderson
dedc7c00a0 Added win32 resource file. 2000-05-09 20:45:21 +00:00
Janet B. Anderson
9caa93a5aa Added win32 resource file. Removed some lines from ca.def. 2000-05-09 20:43:32 +00:00
Janet B. Anderson
67ba2be514 Added win32 resource file. 2000-05-09 20:29:45 +00:00
Janet B. Anderson
0e9a80746b Added win32 resource files. 2000-05-09 20:29:12 +00:00
Janet B. Anderson
840cb1154d Changes for win32 resource files. 2000-05-09 20:09:57 +00:00
Janet B. Anderson
b41c25c31a Modified config files to get rid of inc build step. 2000-05-08 18:11:33 +00:00
Janet B. Anderson
5c084c6ca7 Moved header files and changed Makefiles to get rid of inc build step. 2000-05-08 18:10:20 +00:00
Janet B. Anderson
3eca7fcc87 Set LD_LIBRARY_PATH for shared library builds 2000-05-08 14:42:29 +00:00
Janet B. Anderson
065a7eb4e7 Added definitions for EPICS_BASE_HOST_LIB and INSTALL_HOST_LIB. 2000-05-08 14:40:49 +00:00
Janet B. Anderson
64eb66f6d8 Changed /cs/op/lib to /cs/lib. 2000-04-25 20:46:44 +00:00
Janet B. Anderson
9c5f9df16b Added include directories to RCCMD definition. 2000-04-25 20:32:29 +00:00
Janet B. Anderson
5b33376c9f Added CCC_SHRLIB flag definitions. 2000-04-25 20:31:24 +00:00
Janet B. Anderson
1287657634 Always use c++ linker. Shrlib flags now from CXX definitions. 2000-04-25 20:30:06 +00:00
Janet B. Anderson
0697f3d609 Updates to changes from Chris Larrieu for hp700 build. 2000-04-25 20:27:23 +00:00
Janet B. Anderson
3ef5dd4365 Changes from Chris Larrieu for hp700 build. 2000-04-25 18:51:20 +00:00
Janet B. Anderson
022d8cbef2 Changes from Chris Larrieu for hp700 build. 2000-04-25 18:45:47 +00:00
Janet B. Anderson
a8905acdaf Borland build file from Bob Soliday. 2000-04-17 16:27:51 +00:00
Janet B. Anderson
96f1563b75 Removed Borland build debugging prints. 2000-04-11 20:35:07 +00:00
Janet B. Anderson
0457e9fb20 Removed include of module_types.h. 2000-04-11 20:25:00 +00:00
Janet B. Anderson
af2f551e58 Added changes for Borland compiler buld. 2000-04-11 20:17:25 +00:00
Janet B. Anderson
004854183e Added changes for Borland win32 build. 2000-04-11 20:12:33 +00:00
Janet B. Anderson
d8117bc035 New files for Borland win32 build. 2000-04-11 20:07:40 +00:00
Janet B. Anderson
bc9ab2acb3 Added Borland changes. 2000-04-11 20:05:48 +00:00
Janet B. Anderson
1f972cfa3d Library build now depends on Makefile.Vx. 2000-04-05 19:10:06 +00:00
Janet B. Anderson
09931eaec6 Include of vxWorks.h needed for tornado2. 2000-03-29 19:57:25 +00:00
Janet B. Anderson
0caf235b4a Changed header include lines enclosures to quote marks. 2000-03-29 15:15:29 +00:00
Janet B. Anderson
280b396b51 Removed commented out USER_DBDFLAGS definition. 2000-03-29 15:12:39 +00:00
Janet B. Anderson
e5ecba33cf Fix uninstall rule for WIN32. 2000-03-28 21:06:12 +00:00
Janet B. Anderson
71a3df9d04 Replaced double slashes with single slash. 2000-03-28 18:56:14 +00:00
Janet B. Anderson
ebd17b7918 Fix for vx headers using macros in vxWorks.h and not including vxWorks.h. 2000-03-28 16:15:07 +00:00
Janet B. Anderson
b9b7da40ac Turn on debugging option when VX_OPT=NO. 2000-03-27 21:01:10 +00:00
Janet B. Anderson
99e36b6dd1 Added -fPIC -D_REENTRANT for gnu compiler builds. 2000-03-21 19:03:51 +00:00
Janet B. Anderson
ee9d4a4d0d Added -D_REENTRANT for vx builds. 2000-03-21 19:03:18 +00:00
Jeff Hill
3435e0c38a added const to string table 2000-03-09 17:36:23 +00:00
Janet B. Anderson
6d851ae852 Added Makefile dependancy on LIBNAME (LIBOBS may have changed). 2000-03-08 22:49:58 +00:00
Janet B. Anderson
37ad0c3445 Changes made to allow building multilpe libraries with circular references. 2000-02-25 23:05:53 +00:00
Marty Kraimer
cac8d1f5bf cvtLongToHexString now puts 0x in frount of the number and cvtLongToOctalString writes a leading 0. 2000-02-18 13:43:52 +00:00
Marty Kraimer
9e67db7af0 If the put is to the VAL field then udf is set false. 2000-02-18 13:31:10 +00:00
Marty Kraimer
e56b154b4c A dbPutLink is attempted for all links even if a put for a previous link fails. 2000-02-18 13:29:46 +00:00
Marty Kraimer
a686a5bd8c The convert routine no longer sets udf false. Fetch_value does set udf false when it successfully fetched a value. Thus udf is now only set false when a new value is obtained. 2000-02-18 13:29:11 +00:00
Marty Kraimer
77cc55e4f9 In alarm the definitions of hihi, high, low, lolo; are changed from float to double. 2000-02-18 13:28:01 +00:00
Marty Kraimer
8955a3c1c7 dbel was incorrectly reporting VALUE, ALARM and LOG for all events. 2000-02-18 13:27:16 +00:00
Marty Kraimer
6324cbf82c increase stack size 2000-02-18 13:23:38 +00:00
Janet B. Anderson
104ba85ebc Changed order of flags in COMPILE definitions. 2000-02-10 19:30:21 +00:00
Janet B. Anderson
9b5fbf099a Fixed test stmnt errors in previous commit. 2000-02-02 22:25:27 +00:00
Janet B. Anderson
63e9665e8d Changed test order in while stmnts to prevent UMR problem. - Evans 2000-02-02 22:00:18 +00:00
Ralph Lange
df5ae40387 IVOA/IVOV (raw support) fix (B. Franksen) 2000-01-18 08:00:27 +00:00
Ralph Lange
b48f5f410e Maximize Severity in OUT Links fixed. (B. Franksen) 2000-01-11 17:06:29 +00:00
Ralph Lange
d7dfd29cc6 += IVOV/IVOA support, UDF behaviour fixed. (B. Franksen) 2000-01-11 17:04:00 +00:00
Ralph Lange
d6ba9f1bc7 Change suggested by R. Wright (makes it work with perl 5.003) 2000-01-11 13:34:54 +00:00
Janet B. Anderson
ea7582b20f epics_R3_13_2 1999-12-17 16:04:35 +00:00
Jeff Hill
51847ba684 allow UDP to receive NOOP proto from the repeater 1999-12-16 18:41:39 +00:00
Marty Kraimer
3eaee4daca notes for R3.13.2 1999-12-16 14:58:07 +00:00
Janet B. Anderson
d6ee79d742 Uninstall now removes only the bin and lib subdirs that will get rebuilt.
Added distclean rule.
1999-12-15 23:12:00 +00:00
Janet B. Anderson
894f9a53ec Second try at fixing cvs log comments. 1999-12-15 21:28:35 +00:00
Janet B. Anderson
425f1bab9f Fixed cvs comments. 1999-12-15 21:13:32 +00:00
Janet B. Anderson
5c4143d3fe New tornado directory for ppc604 (no SENS library). 1999-12-13 21:07:18 +00:00
Jeff Hill
65f755a5e2 made client more robust made client more robust when
poorly formulated messages are received
1999-12-11 00:49:53 +00:00
Janet B. Anderson
9f346cf216 Added PROD_OBJS to PROD dependancies to fix "make depends". 1999-12-10 20:01:58 +00:00
Janet B. Anderson
8cf0e35e80 Added config files for ppc604. 1999-12-10 19:56:30 +00:00
Marty Kraimer
2183d4bc98 unbundled 1999-12-09 21:54:03 +00:00
Marty Kraimer
d83d6bc033 first DIRS cant be += 1999-12-09 21:43:58 +00:00
Marty Kraimer
3a8d557e4c remove temp 1999-12-09 21:41:16 +00:00
Marty Kraimer
5437eb4cfc list subdirectories separately so that support can be removed 1999-12-09 20:53:27 +00:00
Andrew Johnson
06b4e4b151 Removed CANbus and IPAC support, these have been unbundled for some
time and the versions here were very out of date.
1999-12-09 19:57:07 +00:00
Marty Kraimer
7110b36b77 add javalib 1999-12-09 16:32:35 +00:00
Marty Kraimer
524cf39786 There was a bug when converting ascii string format to time stamp. The bug involved the year 00 appeared in the ascii string 1999-12-09 16:01:23 +00:00
Marty Kraimer
b2a69aeb07 all mallocs changed to callocs. This is needed for the new unbundled bitbus support. 1999-12-08 22:02:43 +00:00
Marty Kraimer
7a9dbe8730 sscanf response now checked to be equal to 1 rather than just not zero.
all mallocs changed to callocs. This is needed for the new unbundled bitbus support.
1999-12-08 21:50:34 +00:00
Janet B. Anderson
cf8edbd069 New CPP rule. 1999-12-08 21:45:41 +00:00
Janet B. Anderson
de014e8e9b New CPP definition. 1999-12-08 21:45:22 +00:00
Marty Kraimer
3fb42aaeb1 Allow pattern with no substitutions. 1999-12-08 21:45:16 +00:00
Janet B. Anderson
5db26d6537 Branch change: Don't copy vxWorks and vxWorks.sym into base/bin. 1999-12-08 21:42:15 +00:00
Janet B. Anderson
ad0526e5c1 Release string now contains update name/level only if non blank/non zero. 1999-12-08 21:39:33 +00:00
Marty Kraimer
4b650b296c pevent_scan_list->scan_list.lock was not initialized. 1999-12-08 21:31:25 +00:00
Marty Kraimer
d32907b8c8 add ca exception handler 1999-12-08 21:28:57 +00:00
Ralph Lange
171e63d7fa += USER/USR_DBDFLAGS upward compatibility 1999-11-23 16:59:24 +00:00
cvs2svn
52809fa559 This commit was manufactured by cvs2svn to create branch 'B3.13'. 1999-11-18 15:24:08 +00:00
Jeff Hill
c4c0d30095 fixed inc/dec race on RISC arch 1999-11-17 19:46:50 +00:00
Jeff Hill
41a8c83eb4 dont send an exception to client when bad request received over udp 1999-10-28 17:27:54 +00:00
Janet B. Anderson
0636b2e7ac Added new HP C++ compiler definitions. 1999-10-27 14:57:14 +00:00
Ralph Lange
ced94a4998 += copy any non-Apps under $top; allow links for apptype directories 1999-10-22 19:46:55 +00:00
Andrew Johnson
e55317a334 Fixed if () statement error found at KEKB. 1999-09-15 15:58:46 +00:00
Ralph Lange
5c20a5182c Fixed location for hpux Tornado systems 1999-09-03 08:58:48 +00:00
Andrew Johnson
40450af3c9 Converted float=>double in the alarm() routines of many record types
where the .dbd field type didn't match the temporary local variable.
1999-09-02 23:28:23 +00:00
Andrew Johnson
36ca2234bc Several drivers weren't using INUM_TO_IVEC() macro, required for PowerPC. 1999-09-02 21:57:33 +00:00
Jeff Hill
89d52c190f fixed missing paramter to checkConnWatchDogs() func 1999-09-02 21:16:43 +00:00
Jeff Hill
28a2cbb289 use (void) and not () in func proto when its not a C++ file 1999-09-02 21:12:18 +00:00
Jeff Hill
2724d25016 fixed bug where time sync UDP client was getting in a state where
it was using the response from the previous request, and ending
up setting the time 10 seconds back
1999-08-31 16:21:11 +00:00
Janet B. Anderson
0166de83da Fixed multiple product dependancies. 1999-08-16 19:48:10 +00:00
Ralph Lange
7811c1fc08 Added base.dbd to DBDNAME dependencies (as in RULES.Vx) 1999-08-12 20:51:10 +00:00
Jeff Hill
cc56524957 bail out if select returns errors besides EINTR 1999-08-12 20:38:04 +00:00
Jeff Hill
7cd173d2f7 return "no write access" when it is an SPC_NOMOD field 1999-08-11 18:54:53 +00:00
Janet B. Anderson
4a960b4a68 Change to build c++ code. 1999-08-02 16:23:04 +00:00
Janet B. Anderson
cc04d07a18 Change to get exServer.cc to build on solaris. 1999-08-02 15:31:38 +00:00
Janet B. Anderson
7ca6a58ccb Moved ifdef to get camessage.c to build. 1999-08-02 14:18:25 +00:00
Ralph Lange
2cb1f213f0 += some wildcards in .PHONY 1999-07-30 21:37:51 +00:00
Ralph Lange
f9589b7b66 += comments 1999-07-30 21:24:49 +00:00
Ralph Lange
868519a8c0 Make CONFIG_APP_INCLUDE files in inc target 1999-07-30 21:16:06 +00:00
Ralph Lange
de7bca98f3 += 'real' DBDFLAGS 1999-07-30 21:15:13 +00:00
Ralph Lange
b06d31de70 Douple colon bugfix 1999-07-30 21:14:48 +00:00
Ralph Lange
7bcee16fe9 Fixed typos 1999-07-30 21:14:18 +00:00
Ralph Lange
18fdef33f4 += 'real' DBDFLAGS 1999-07-30 19:41:46 +00:00
Ralph Lange
d8ac98888d Bugfix (no wildcards with .PHONY) 1999-07-30 19:36:40 +00:00
Ralph Lange
ff0a29c7c8 += 'real' DBDFLAGS; fixed INCLUDES order 1999-07-30 19:34:43 +00:00
Janet B. Anderson
fc4633a085 Put base dbd dir back on user dbdflags definition. 1999-07-29 20:01:56 +00:00
Jeff Hill
7585e7492c fixed dll export 1999-07-16 00:19:38 +00:00
Jeff Hill
96ab0192ae dont build mv167 every time 1999-07-15 23:51:51 +00:00
Jeff Hill
137abe0fa9 include the compile date 1999-07-15 23:07:39 +00:00
Jeff Hill
d2d09a48f0 switch dllMain.cc on the presence of a C++ compiler 1999-07-15 23:05:19 +00:00
Jeff Hill
0a18a0ccea prevent UDP from running TCP protocol and visa-versa 1999-07-15 22:56:12 +00:00
Jeff Hill
95f88e2ad1 use ipAddrToA() so that address print out does not
come out byte swapped on the PC
1999-07-15 21:36:37 +00:00
Jeff Hill
6ff3c930ad added diagnostics 1999-07-15 21:31:51 +00:00
Jeff Hill
74e548968f improved debug message 1999-07-15 21:13:52 +00:00
Jeff Hill
7f35cd0050 ca_printf => epicsPrintf 1999-07-15 21:11:46 +00:00
Jeff Hill
db6fe79dac vis C++ version 6.0 ng IP workaround 1999-07-15 21:10:38 +00:00
Jeff Hill
a001aa24d8 fixed bug where client disconnects while waiting to send TCP 1999-07-15 21:07:33 +00:00
Jeff Hill
cb0209f493 close all non-stdio files before repeater exec 1999-07-15 21:01:29 +00:00
Jeff Hill
57a1ebfa50 added congestion thresh to search sched alg 1999-07-15 20:52:38 +00:00
Jeff Hill
7d649345c2 fixed infinite loop when ENOBUFS returned by sendto() 1999-07-15 20:50:23 +00:00
Jeff Hill
ffb229e321 added congestion thresh to search sched alg 1999-07-15 20:33:46 +00:00
Jeff Hill
ee9a42638a fixed bug where client disconnects while waiting to send TCP 1999-07-15 20:23:57 +00:00
Janet B. Anderson
680d138809 Changes to automatically generate CONFIG_APP definitions. 1999-07-15 19:55:34 +00:00
Marty Kraimer
2718646d11 changes from Ned Arnold 1999-07-15 17:40:26 +00:00
Marty Kraimer
0ba0aa26cd must include drvBitBus just so drvGpib is usable 1999-07-09 14:20:06 +00:00
Marty Kraimer
806be5e259 changhes since 3.13.1 1999-07-09 14:08:00 +00:00
Marty Kraimer
446621f87a encorporate latest SAFE (hop[efully) changes on 09JUL99 1999-07-09 14:04:38 +00:00
Marty Kraimer
41228df369 encorporate latest changes on 09JUL99 1999-07-09 14:02:06 +00:00
Marty Kraimer
0d43a37b85 encorporate latest changes on 09JUL99 1999-07-09 13:53:29 +00:00
cvs2svn
0ceb42cc74 This commit was manufactured by cvs2svn to create branch 'B3.13'. 1998-12-21 20:59:31 +00:00
1326 changed files with 21915 additions and 181759 deletions

View File

@@ -1,21 +0,0 @@
/* Experimental Physics and Industrial Control System (EPICS)
*
* Copyright 1991, the Regents of the University of California,
* and the University of Chicago Board of Governors.
*
* This software was produced under U.S. Government contracts:
* (W-7405-ENG-36) at the Los Alamos National Laboratory,
* and (W-31-109-ENG-38) at Argonne National Laboratory.
*
* Initial development by:
* The Controls and Automation Group (AT-8)
* Ground Test Accelerator
* Accelerator Technology Division
* Los Alamos National Laboratory
*
* Co-developed with
* The Controls and Computing Group
* Accelerator Systems Division
* Advanced Photon Source
* Argonne National Laboratory
***********************************************************************/

View File

@@ -1,45 +0,0 @@
/*****************************************************************
COPYRIGHT NOTIFICATION
*****************************************************************
THE FOLLOWING IS A NOTICE OF COPYRIGHT, AVAILABILITY OF THE CODE,
AND DISCLAIMER WHICH MUST BE INCLUDED IN THE PROLOGUE OF THE CODE
AND IN ALL SOURCE LISTINGS OF THE CODE.
(C) COPYRIGHT 1993 UNIVERSITY OF CHICAGO
Argonne National Laboratory (ANL), with facilities in the States of
Illinois and Idaho, is owned by the United States Government, and
operated by the University of Chicago under provision of a contract
with the Department of Energy.
Portions of this material resulted from work developed under a U.S.
Government contract and are subject to the following license: For
a period of five years from March 30, 1993, the Government is
granted for itself and others acting on its behalf a paid-up,
nonexclusive, irrevocable worldwide license in this computer
software to reproduce, prepare derivative works, and perform
publicly and display publicly. With the approval of DOE, this
period may be renewed for two additional five year periods.
Following the expiration of this period or periods, the Government
is granted for itself and others acting on its behalf, a paid-up,
nonexclusive, irrevocable worldwide license in this computer
software to reproduce, prepare derivative works, distribute copies
to the public, perform publicly and display publicly, and to permit
others to do so.
*****************************************************************
DISCLAIMER
*****************************************************************
NEITHER THE UNITED STATES GOVERNMENT NOR ANY AGENCY THEREOF, NOR
THE UNIVERSITY OF CHICAGO, NOR ANY OF THEIR EMPLOYEES OR OFFICERS,
MAKES ANY WARRANTY, EXPRESS OR IMPLIED, OR ASSUMES ANY LEGAL
LIABILITY OR RESPONSIBILITY FOR THE ACCURACY, COMPLETENESS, OR
USEFULNESS OF ANY INFORMATION, APPARATUS, PRODUCT, OR PROCESS
DISCLOSED, OR REPRESENTS THAT ITS USE WOULD NOT INFRINGE PRIVATELY
OWNED RIGHTS.
*****************************************************************
LICENSING INQUIRIES MAY BE DIRECTED TO THE INDUSTRIAL TECHNOLOGY
DEVELOPMENT CENTER AT ARGONNE NATIONAL LABORATORY (708-252-2000).

84
LICENSE Normal file
View File

@@ -0,0 +1,84 @@
Copyright (c) 1991-2004 University of Chicago and The Regents of the
University of California. All rights reserved.
EPICS BASE is distributed subject to the following license conditions:
SOFTWARE LICENSE AGREEMENT
Software: EPICS BASE
Versions: 3.13.7 and higher
1. The "Software", below, refers to EPICS BASE (in either source code, or
binary form and accompanying documentation). Each licensee is
addressed as "you" or "Licensee."
2. The copyright holders shown above and their third-party licensors
hereby grant Licensee a royalty-free nonexclusive license, subject to
the limitations stated herein and U.S. Government license rights.
3. You may modify and make a copy or copies of the Software for use
within your organization, if you meet the following conditions:
a. Copies in source code must include the copyright notice and this
Software License Agreement.
b. Copies in binary form must include the copyright notice and this
Software License Agreement in the documentation and/or other
materials provided with the copy.
4. You may modify a copy or copies of the Software or any portion of it,
thus forming a work based on the Software, and distribute copies of
such work outside your organization, if you meet all of the following
conditions:
a. Copies in source code must include the copyright notice and this
Software License Agreement;
b. Copies in binary form must include the copyright notice and this
Software License Agreement in the documentation and/or other
materials provided with the copy;
c. Modified copies and works based on the Software must carry
prominent notices stating that you changed specified portions of
the Software.
5. Portions of the Software resulted from work developed under a U.S.
Government contract and are subject to the following license: the
Government is granted for itself and others acting on its behalf a
paid-up, nonexclusive, irrevocable worldwide license in this computer
software to reproduce, prepare derivative works, and perform publicly
and display publicly.
6. WARRANTY DISCLAIMER. THE SOFTWARE IS SUPPLIED "AS IS" WITHOUT WARRANTY
OF ANY KIND. THE COPYRIGHT HOLDERS, THEIR THIRD PARTY LICENSORS, THE
UNITED STATES, THE UNITED STATES DEPARTMENT OF ENERGY, AND THEIR
EMPLOYEES: (1) DISCLAIM ANY WARRANTIES, EXPRESS OR IMPLIED, INCLUDING
BUT NOT LIMITED TO ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
FOR A PARTICULAR PURPOSE, TITLE OR NON-INFRINGEMENT, (2) DO NOT ASSUME
ANY LEGAL LIABILITY OR RESPONSIBILITY FOR THE ACCURACY, COMPLETENESS,
OR USEFULNESS OF THE SOFTWARE, (3) DO NOT REPRESENT THAT USE OF THE
SOFTWARE WOULD NOT INFRINGE PRIVATELY OWNED RIGHTS, (4) DO NOT WARRANT
THAT THE SOFTWARE WILL FUNCTION UNINTERRUPTED, THAT IT IS ERROR-FREE
OR THAT ANY ERRORS WILL BE CORRECTED.
7. LIMITATION OF LIABILITY. IN NO EVENT WILL THE COPYRIGHT HOLDERS, THEIR
THIRD PARTY LICENSORS, THE UNITED STATES, THE UNITED STATES DEPARTMENT
OF ENERGY, OR THEIR EMPLOYEES: BE LIABLE FOR ANY INDIRECT, INCIDENTAL,
CONSEQUENTIAL, SPECIAL OR PUNITIVE DAMAGES OF ANY KIND OR NATURE,
INCLUDING BUT NOT LIMITED TO LOSS OF PROFITS OR LOSS OF DATA, FOR ANY
REASON WHATSOEVER, WHETHER SUCH LIABILITY IS ASSERTED ON THE BASIS OF
CONTRACT, TORT (INCLUDING NEGLIGENCE OR STRICT LIABILITY), OR
OTHERWISE, EVEN IF ANY OF SAID PARTIES HAS BEEN WARNED OF THE
POSSIBILITY OF SUCH LOSS OR DAMAGES.
________________________________________________________________________
This software is in part copyrighted by the BERLINER SPEICHERRING
GESELLSCHAFT FUER SYNCHROTRONSTRAHLUNG M.B.H. (BESSY), BERLIN, GERMANY.
In no event shall BESSY be liable to any party for direct, indirect,
special, incidental, or consequential damages arising out of the use of
this software, its documentation, or any derivatives thereof, even if
BESSY has been advised of the possibility of such damage.
BESSY specifically disclaims any warranties, including, but not limited
to, the implied warranties of merchantability, fitness for a particular
purpose, and non-infringement. This software is provided on an "as is"
basis, and BESSY has no obligation to provide maintenance, support,
updates, enhancements, or modifications.
________________________________________________________________________

View File

@@ -9,75 +9,6 @@
#
# [-b] - For fully built release
#
# $Log$
# Revision 1.11 1997/07/01 18:29:17 jba
# Changed Tar to tar in output filename.
#
# Revision 1.10 1997/01/17 19:59:37 jba
# Use config/CONFIG_BASE_VERSION to get version info.
#
# Revision 1.9 1996/09/04 21:41:36 jba
# Top level dir no longer passed to MakeRelease
#
# Revision 1.8 1996/07/02 13:45:09 jba
# Added dbd and base/config dirs. Removed epics/config and base/rec.
#
# Revision 1.7 1996/06/25 21:54:42 jba
# Command line parm now base dir
#
# Revision 1.6 1996/06/07 19:19:10 jba
# MakeRelease is now in release tar file.
#
# Revision 1.5 1996/03/04 21:03:48 jba
# epicsVersion.h now in src/include.
#
# Revision 1.4 1996/02/20 21:03:53 jba
# Updated README files to reflect directory changes and new installEpics.
#
# Revision 1.3 1995/10/03 15:42:26 jba
# Added *COPYRIGHT* files to release tar file.
#
# Revision 1.2 1995/08/28 15:49:54 jba
# Added startup directory to release tar file
#
# Revision 1.1 1995/08/17 20:14:56 jba
# Added base/tools scripts functionality to base/Makefile, removed scripts
# Moved base/tools/MakeRelease to base dir.
#
# Revision 1.14 1994/12/19 18:42:08 tang
# Make the args length compatible for HP and SUN.
#
# Revision 1.13 1994/12/15 19:19:18 tang
# Replace -I opt by cat and xargs for tar for HP compatibility.
#
# Revision 1.12 1994/12/14 23:57:55 tang
# Take out \< and \> pair for hp compatible
#
# Revision 1.11 1994/10/31 21:44:17 jba
# Moved print stmnt, added cd $(EPICS)
#
# Revision 1.10 1994/10/05 18:29:34 jba
# Renamed version.h to epicsVersion.h
#
# Revision 1.9 1994/09/22 01:41:47 mcn
# MakeRelease - MAJOR bug fix. GetVar / MakeDirs - minor fix.
#
# Revision 1.8 1994/09/07 20:59:15 mcn
# Revamped GetVar, modified scripts for new GetVar.
#
# Revision 1.7 1994/09/02 20:58:00 mcn
# minor change.
#
# Revision 1.6 1994/08/21 00:56:41 mcn
# New Stuff
#
# Revision 1.5 1994/08/02 18:36:29 mcn
# Support new configuration.
#
# Revision 1.4 1994/07/14 22:13:32 mcn
# Now include SDR Makefile/Headers
#
#
if [ ! -d src ]; then

View File

@@ -1,3 +1,12 @@
#*************************************************************************
# 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.
#*************************************************************************
#
# Top Level EPICS Makefile
# by Matthew Needes and Mike Bordua
@@ -26,7 +35,9 @@ INSTALL_BIN = $(INSTALL_LOCATION)/bin/$(HOST_ARCH)
#
PERL_BOOTSTRAP_SCRIPTS = $(notdir $(wildcard $(TOP)/src/tools/*.pl))
PERL_BOOTSTRAP_SCRIPTS_INSTALL = $(PERL_BOOTSTRAP_SCRIPTS:%=$(INSTALL_BIN)/%)
all host cross inc rebuild uninstall clean depends buildInstall :: $(PERL_BOOTSTRAP_SCRIPTS_INSTALL)
all host cross inc rebuild clean depends buildInstall :: $(PERL_BOOTSTRAP_SCRIPTS_INSTALL)
RMDIR=$(PERL) $(TOP)/src/tools/rm.pl -rf
include $(TOP)/config/RULES_TOP

4
README
View File

@@ -8,7 +8,7 @@ $Id$
Notes:
1. Before you can build or use EPICS, the environemnt variable HOST_ARCH
must be set. The epics/startup/HostArch script file has been provided
must be set. The base/startup/HostArch script file has been provided
to set HOST_ARCH.
2. You must use GNU make (which is now THE supported make utility) for
@@ -98,7 +98,7 @@ Notes:
NOTES:
1. EPICS binaries and shellscripts are installed into the directory
1. EPICS binaries and shell scripts are installed into the directory
$(INSTALL_LOCATION)/bin/ARCH.
2. EPICS libraries are installed into the $(INSTALL_LOCATION)/lib/ARCH

View File

@@ -7,7 +7,7 @@ most important:
tools/installEpics.pl
include/makeEpicsVersion.pl
libCom/bldEnvData.pl
libCom/makeStatSymTbl.pl
libCom/makeStatTbl.pl
sequencer/makeVersion.pl
WIN32 also uses

View File

@@ -1,87 +1,54 @@
Compiling EPICS on cygwin32 (Windows95/NT)
------------------------------------------
Right now this port of EPICS to cygwin32 it is possible to
compile the EPICS base for the cygwin32 Host using Cygnus' beta19
release of the GNU-win32 tools.
Right now this port of EPICS base to cygwin32 R1.3.3 fails
because cygwin does not yet support point-to-point interfaces.
To build EPICS on Win95 or NT using cygwin32, we need
EPICS base distribution, R3.12.0.beta12 or later, available
from http://aps.anl.gov/...
Cygnus's latest gnu-win32 distribution, available from
http://www.cygnus.com/misc/gnu-win32/ (release b19 or later)
Perl,version 5.003 or later, available from
http://www.perl.org/CPAN/ports/win32/
Optional items
CVS, version 1.9 or later, available from
http:/download.cyclic.com
windows-nt - cvs-1.9.10.tar.gz
patch.exe
win32gnu.dll
vim ( Vi IMproved), version 4.5 or later, available from
http://www.cygnus.com/misc/gnu-win32/
The latest cygwin distribution, available from
http://www.cygwin.com
BUILD INSTRUCTIONS
------------------
1) Install the gnu-win32 binary release
---------------------------------------
Download the whole release, cdk.exe, to get the developemnt tools
1) Install the cygwin binary release
------------------------------------
First move out of the way any older versions of gnuwin32
Run cdk.exe and follow the install instructions.
Don't forget to create a \tmp dir and setup the \bin dir.
(Create a \temp dir if you install cvs.)
mkdir \tmp
mkdir \temp
mkdir \bin
cd \bin
copy C:\cygnus\b19\H-i386-cygwin32\bin\sh.exe sh.exe
Install the b19.1 bug fix update to the Cygwin32 library.
(Optional: Install the GNU-WIN32 compiler replacement from
the ECGS project)
2) Install the perl distribution
--------------------------------
pw32i316.exe (Execute and follow instructions)
3) Install the epics base distribution
2) Install the epics base distribution
--------------------------------------
mkdir <epicsBaseReleaseDir>
chdir <epicsBaseReleaseDir>
cp <dirname>\<basereleasename>.gz .
gunzip -d <basereleasename>.gz
cp <dirname>\<basereleasename>.tar.gz .
gunzip -d <basereleasename>.tar.gz
tar xvf <basereleasename>.tar
chmod +w -R *
cd <epicsBaseDir>
4) Set environment variables and path using cygwin32.bat
3) Set environment variables and path using cygwin32.bat
-------------------------------------------------------------
<edit cygwin32.bat changing paths if necessary>
cd <epicsBaseReleaseDir>\startup
cygwin32.bat
<edit <epicsBaseDir>/startup/cygwin32.bat changing paths if necessary>
cd <epicsBaseDir>\startup
edit cygwin32.bat
<execute cygwin32.bat>
cygwin
5) Set site specific parms in epics base\config files
-----------------------------------------------------
cd <epicsBaseReleaseDir>\base\config
4) Set site specific parms in epics config files
------------------------------------------------
cd <epicsBaseDir>\config
<edit CONFIG_SITE* files>
6) Build epics base
5) Build epics base
-------------------
cd <epicsBaseReleaseDir>\base
cd <epicsBaseDir>
make
7) Create an EPICS application area (note forward slashes on perl cmd)
---------------------------------------------------------------------
6) Create an example EPICS application (<epicsBaseDir> needs drive letter)
--------------------------------------------------------------------------
mkdir <epicsappdir>
cd <epicsappdir>
perl <epicsBaseReleaseDir>/bin/cygwin32/makeBaseApp.pl -l
perl <epicsBaseReleaseDir>/bin/cygwin32/makeBaseApp.pl -t example example
perl <epicsBaseDir>\bin\cygwin32\makeBaseApp.pl -l
perl <epicsBaseDir>\bin\cygwin32\makeBaseApp.pl -t example example
make

File diff suppressed because it is too large Load Diff

View File

@@ -1,11 +0,0 @@
/*****************************************************************
COPYRIGHT NOTIFICATION
*****************************************************************
(C) COPYRIGHT 1991 Regents of the University of California,
and the University of Chicago Board of Governors.
This software was developed under a United States Government license
described on the COPYRIGHT_Combined file included as part
of this distribution.
**********************************************************************/

View File

@@ -1,5 +0,0 @@
BUILD_TYPE = Vx
DIRS = src/as src/ca src/db src/dev src/devOpt src/drv \
src/libCom src/libvxWorks src/rec src/rsrv \
src/sequencer src/util src/dbtools src/misc .

View File

@@ -1 +0,0 @@
BUILD_ARCHS=sun4 mv167 mv147

View File

@@ -1,5 +0,0 @@
BUILD_TYPE = Vx
DIRS = src/as src/ca src/db src/dev src/devOpt src/drv \
src/libCom src/libvxWorks src/rec src/rsrv \
src/sequencer src/util src/dbtools src/misc .

View File

@@ -1,5 +0,0 @@
BUILD_TYPE = Vx
DIRS = src/as src/ca src/db src/dev src/devOpt src/drv \
src/libCom src/libvxWorks src/rec src/rsrv \
src/sequencer src/util src/dbtools src/misc .

View File

@@ -1,13 +0,0 @@
BUILD_TYPE = Unix
DIRS = src/libCom \
src/db \
src/ca \
src/toolsComm/antelope \
src/toolsComm/flex \
src/as \
src/bld \
src/dct \
src/util \
src/sequencer \
src/dbtools \
rec

View File

@@ -1,3 +1,12 @@
#*************************************************************************
# 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.
#*************************************************************************
#
# $Id$
#

261
config/CONFIG.Host.Borland Normal file
View File

@@ -0,0 +1,261 @@
# 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

@@ -22,16 +22,15 @@ ACC_ANSI = $(ACC)
ACC_STRICT = $(ACC) -pedantic
#ACC_STRICT = $(ACC) -ansi -pedantic -D_SVID_SOURCE
ACC_TRAD = $(ACC)
ACC_WARN_YES =
ACC_WARN_YES = -Wall
ACC_WARN_NO = -w
ACC_OPT_YES = -O
ACC_OPT_NO = -g
ACC_SFLAGS_YES = -Bstatic
ACC_SFLAGS_YES = -static
ACC_SFLAGS_NO=
ACC_SLIBS_YES =
ACC_SLIBS_NO=
ACC_SHRLIB_CFLAGS_YES = -fPIC
#ACC_SHRLIB_CFLAGS_YES = -fPIC -D_BSD_SOURCE
ACC_SHRLIB_LDFLAGS_YES = -shared -Wl,-soname,$@
@@ -39,16 +38,18 @@ ACC_SHRLIB_LDFLAGS_YES = -shared -Wl,-soname,$@
CCC = g++
CCC_NORMAL = $(CCC)
CCC_STRICT = $(CCC)
CCC_TEMPL_INST_FLAG = -DEXPL_TEMPL
CCC_WARN_YES =
#CCC_TEMPL_INST_FLAG = -DEXPL_TEMPL
CCC_WARN_YES = -Wall
CCC_WARN_NO =
CCC_OPT_YES = -O
CCC_OPT_NO = -g
CCC_SFLAGS_YES = -Bstatic
CCC_SFLAGS_YES = -static
CCC_SFLAGS_NO=
CCC_SLIBS_YES =
CCC_SLIBS_NO=
CCC_DEPENDS_FLAG = -MM
CCC_SHRLIB_CFLAGS_YES = -fPIC
CCC_SHRLIB_LDFLAGS_YES = -shared -Wl,-soname,$@
# added smh 6/5/98 : when building fdmgr - seems to use this not ACC
# in effect this overides orig def in CONFIG_COMMON :
@@ -57,7 +58,7 @@ GCC_STRICT = $(GCC)
G++_STRICT = $(G++) -Wtraditional
ARCH_DEP_CFLAGS = -D_X86_ -Dlinux -D_USE_BSD
#ARCH_DEP_CFLAGS = -D_X86_ -Dlinux -D_USE_BSD
ARCH_DEP_CFLAGS = -D_X86_ -Dlinux
ARCH_DEP_LDFLAGS =

View File

@@ -1,58 +0,0 @@
# CONFIG.Host.LynxOS
#
# This file is maintained by the EPICS community.
# Sites may override these definitions in CONFIG_SITE.Host.LynxOS
ARCH_CLASS = LynxOS
# Include definitions common to all Unix archs
include $(EPICS_BASE)/config/CONFIG.Host.UnixCommon
AR = ar -rc
ARCMD = $(AR) $@
RANLIB = ranlib -t
# Configure OS vendor C compiler
ACC_ANSI = $(ACC) -ansi -mposix -D_X86_
ACC_STRICT = $(ACC) -ansi -mposix -D_X86_ -pedantic
ACC_TRAD = $(ACC)
ACC_WARN_YES = -Wall
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 =
ACC_SHRLIB_LDFLAGS_YES =
# Configure OS vendor C++ compiler
CCC_NORMAL = $(CCC)
CCC_STRICT = $(CCC)
CCC_TEMPL_INST_FLAG = -pedantic -mposix -D_X86_ -DEXPL_TEMP
CCC_WARN_YES = -Wall
CCC_WARN_NO = -w
CCC_OPT_YES = -O
CCC_OPT_NO = -g
CCC_SFLAGS_YES = -Bstatic
CCC_SFLAGS_NO=
CCC_SLIBS_YES =
CCC_SLIBS_NO=
CCC_DEPENDS_FLAG = -pedantic -mposix -D_X86_
# added smh 6/5/98 : when building fdmgr - seems to use this not ACC
# in effect this overides orig def in CONFIG_COMMON :
# which is GCC_STRICT = $(GCC) -ansi -pedantic
GCC_STRICT = $(GCC)
G++_STRICT = $(G++) -Wtraditional -mposix -D_X86_ -DEXPL_TEMP
ARCH_DEP_CFLAGS = -DLynxOS -mposix -D_X86_
ARCH_DEP_LDFLAGS = -lc -lbsd -lnsl -lm -lposix4d9 -llynx

View File

@@ -1,4 +1,4 @@
# CONFIG.Host.UnixCommon
#
# Contains definitions common to all Unix archs
#
@@ -19,9 +19,9 @@ LIBNAME = $(LIBRARY:%=lib%.a)
SHRLIB_SUFFIX = .so
SHRLIBNAME = lib$(LIBRARY)$(SHRLIB_SUFFIX)$(SHRLIB_VERSION:%=.%)
SHRLIB_LDFLAGS = $($(ANSI)_SHRLIB_LDFLAGS_$(strip $(SHARED_LIBRARIES)))
DLL_LDLIBS = $(PRODNAME_LIBS:%=-l%) $(PROD_LIBS:%=-l%) $(USR_LIBS:%=-l%)
DLL_LIBS = $(patsubst $(LIBRARY),, $(PROD_LIBS) $(USR_LIBS))
DLL_LDLIBS = $(PRODNAME_LIBS:%=-l%) $(DLL_LIBS:%=-l%)
INSTALL_SHRLIB = $(INSTALL_LIB)
@@ -44,11 +44,10 @@ OBJ = .o
#--------------------------------------------------
# Dependancy definitions
COND_PROD_DEPLIBS = $(foreach prod,$(PROD), $(foreach lib, $($(basename $(prod))_LIBS),$(firstword $($(lib)_DIR) $(EPICS_BASE_LIB))/lib$(lib).a))
PRODNAME_DEPLIBS = $(foreach lib,$(PRODNAME_LIBS),$(firstword $($(lib)_DIR) $(EPICS_BASE_LIB))/lib$(lib).a)
PROD_DEPLIBS = $(foreach lib,$(PROD_LIBS),$(firstword $($(lib)_DIR) $(EPICS_BASE_LIB))/lib$(lib).a)
USR_DEPLIBS = $(foreach lib,$(USR_LIBS),$(firstword $($(lib)_DIR) $(EPICS_BASE_LIB))/lib$(lib).a)
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).*)))
#--------------------------------------------------
# Determine ld flags
@@ -60,13 +59,11 @@ USR_LDFLAGS += $(sort $(USR_DIRS:%=-L%))
USR_LDLIBS = $(PRODNAME_LIBS:%=-l%) $(PROD_LIBS:%=-l%) $(USR_LIBS:%=-l%)\
$(SYS_PROD_LIBS:%=-l%)
#USR_LDLIBS = $(PRODNAME_DEPLIBS:%=-L%) $(PROD_DEPLIBS:%=-L%) $(USR_DEPLIBS)\
# $(USR_XLDLIBS)
#--------------------------------------------------
# Operating system definitions
OP_SYS_INCLUDES =
OP_SYS_CFLAGS = -DUNIX
OP_SYS_CFLAGS = -DUNIX
OP_SYS_LDFLAGS =
OP_SYS_LDLIBS = -lm

View File

@@ -3,9 +3,6 @@
# This file is maintained by the EPICS community.
# Sites may override these definitions in CONFIG_SITE.WIN32
# Use std path variables from ms
HOME = $(HOMEDRIVE)$(HOMEPATH)
#
# You currently get Visual C++ even if you ask for GNU.
#
@@ -20,7 +17,7 @@ CPLUSPLUS = CCC
MSVISC = c:\\Program\ Files\\DevStudio\\Vc
WINLINK = link
RCCMD = rc -l 0x409 -fo $@ $<
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:$@
@@ -126,7 +123,7 @@ CCC_SFLAGS_NO= /MD$(VISC_SFLAGS_DEBUG) $(VISC_EPICS_DLL)
#
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
@@ -158,7 +155,7 @@ OP_SYS_CFLAGS =
#
# WIN32 specific include files
#
OP_SYS_INCLUDES = -I$(EPICS_BASE_INCLUDE)\\os\\WIN32
#OP_SYS_INCLUDES = -I$(EPICS_BASE_INCLUDE)\\os\\WIN32
#
# These are now added to the individual makefiles that use them in order to
@@ -236,7 +233,7 @@ USR_DEPLIBS = $(foreach lib,$(USR_LIBS),$(firstword $($(lib)_DIR) $(EPICS_BASE_L
# by default the libraries used when linking the DLL are just
# PROD_LIBS ans SYS_PROD_LIBS minus the DLL name
DLL_LIBS = $(subst $(LIBRARY),, $(PROD_LIBS))
DLL_LIBS = $(patsubst $(LIBRARY),, $(PROD_LIBS))
#
# EPICS libs that we need to link the DLL with

View File

@@ -39,6 +39,8 @@ CCC_SFLAGS_YES=
CCC_SFLAGS_NO=
CCC_SLIBS_YES =
CCC_SLIBS_NO=
CCC_SHRLIB_CFLAGS_YES =
CCC_SHRLIB_LDFLAGS_YES = -shared
CCC_DEPENDS_FLAG =
ARCH_DEP_CFLAGS = -D_OSF_SOURCE

View File

@@ -24,5 +24,11 @@ SHARED_LIBRARIES=NO
#==========================
ARCH_DEP_CFLAGS = -DCYGWIN32 -U_WIN32
ARCH_DEP_LDLIBS = -lm
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

View File

@@ -9,7 +9,7 @@ ARCH_CLASS = hp700
include $(EPICS_BASE)/config/CONFIG.Host.UnixCommon
SHRLIB_SUFFIX = .sl
AR = ar
# Configure OS vendor C compiler
@@ -27,6 +27,7 @@ ACC_SLIBS_YES =
ACC_SLIBS_NO=
ACC_SHRLIB_CFLAGS_YES = +Z
ACC_SHRLIB_LDFLAGS_YES = -b
ACC_DEP_CFLAGS=+DAportable
# Configure OS vendor C++ compiler
HPCC = cc
@@ -43,10 +44,17 @@ HPCC_SLIBS_YES =
HPCC_SLIBS_NO=
HPCC_SHRLIB_CFLAGS_YES = +Z
HPCC_SHRLIB_LDFLAGS_YES = -b
HPCC_DEP_CFLAGS=+DAportable
CCC = CC
CCC_NORMAL = $(CCC) +p
CCC_STRICT = $(CCC) +p
#Old HP C++ compiler
#CCC = CC
#CCC_NORMAL = $(CCC) +p
#New HP C++ compiler
CCC = aCC
# avoid treating "future errors" as actual errors
CCC_NORMAL = $(CCC) -AA -Aa +W302 +W829 +W818 +W392 +W469 +W495 +W749 +W667 +W392 +W684
CCC_STRICT = $(CCC) -AA -Aa +p
CCC_TEMPL_INST_FLAG =
CCC_WARN_YES = +w
CCC_WARN_NO =
@@ -56,8 +64,20 @@ CCC_SFLAGS_YES= -Wl,-a,archive
CCC_SFLAGS_NO=
CCC_SLIBS_YES =
CCC_SLIBS_NO=
CCC_DEPENDS_FLAG =
CCC_SHRLIB_CFLAGS_YES = +Z
# shared libs will be found by searching environment variable SHLIB_PATH,
# then by searching the specified path (see below)
CCC_SHRLIB_LDFLAGS_YES = -b
CCC_DEPENDS_FLAG = +m
CCC_DEP_CFLAGS=+DAportable
ARCH_DEP_CFLAGS = -D_HPUX_SOURCE -DHP_UX
# +DAportable causes portable object code to be created for execution
# on different PA-Risc machines
empty:=
space:= $(empty) $(empty)
ARCH_DEP_CFLAGS = -D_HPUX_SOURCE -DHP_UX
ARCH_DEP_CXXFLAGS = -D_HPUX_SOURCE -DHP_UX
ARCH_DEP_LDLIBS =
ARCH_DEP_LDFLAGS = -Wl,+b,$(subst $(space),:,$(DEFAULT_SHRLIB_SEARCH_PATH)),+s

View File

@@ -40,6 +40,8 @@ CCC_SFLAGS_NO=
CCC_SLIBS_YES =
CCC_SLIBS_NO=
CCC_DEPENDS_FLAG =
CCC_SHRLIB_CFLAGS_YES = -KPIC
CCC_SHRLIB_LDFLAGS_YES = -shared
####KRCC = ??

View File

@@ -26,14 +26,15 @@ ACC = $(SPARCWORKS)/bin/cc
ACC_ANSI = $(ACC) -Xa
ACC_STRICT = $(ACC) -Xc -v
ACC_TRAD = $(ACC) -Xs
ACC_DEP_CFLAGS = -KPIC -D_REENTRANT
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 -lXext -lX
ACC_SLIBS_YES= -lw -lintl -Bdynamic -ldl -Bstatic
ACC_SLIBS_NO=
ACC_SHRLIB_CFLAGS_YES =
ACC_SHRLIB_LDFLAGS_YES = -G -h $@
@@ -42,7 +43,7 @@ ACC_SHRLIB_LDFLAGS_YES = -G -h $@
CCC = $(SPARCWORKS)/bin/CC
CCC_NORMAL = $(CCC) +p
CCC_STRICT = $(CCC) +p
CCC_DEP_CFLAGS = -KPIC -D_REENTRANT
CCC_DEP_CFLAGS = -KPIC -D_REENTRANT
CCC_TEMPL_INST_FLAG =
CCC_WARN_YES = +w
CCC_WARN_NO =
@@ -50,12 +51,16 @@ CCC_OPT_YES = -O
CCC_OPT_NO = -g
CCC_SFLAGS_YES= -Bstatic
CCC_SFLAGS_NO=
CCC_SLIBS_YES= -lw -lintl -Bdynamic -ldl -Bstatic -lXext -lX
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__
ARCH_DEP_CFLAGS = -DSOLARIS
# socket and nsl needed by libca.a
ARCH_DEP_LDLIBS = -lsocket -lnsl

View File

@@ -0,0 +1,10 @@
# 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

@@ -0,0 +1,29 @@
# CONFIG.Host.solarisGnu
#
# This file is maintained by the EPICS community.
# Sites may override these definitions in CONFIG_SITE.Host.solarisGnu
ARCH_CLASS = solaris
# Include definitions common to all Unix archs
include $(EPICS_BASE)/config/CONFIG.Host.UnixCommon
AR = ar
_AR = $(AR) $(ARFLAGS)
G++_AR = $(_AR)
CCC_AR = $(CCC) -xar -o
ARCMD = $($(CPLUSPLUS)_AR) $@
RANLIB =
#==========================
# These are overrides of ANSI and CPLUSPLUS values in CONFIG_SITE
ANSI=GCC
CPLUSPLUS=G++
#==========================
SOLARIS_VERSION = $(subst 5.,,$(shell uname -r))
ARCH_DEP_CPPFLAGS += -DSOLARIS=$(SOLARIS_VERSION)
# socket and nsl needed by libca.a
ARCH_DEP_LDLIBS += -lsocket -lnsl

View File

@@ -68,6 +68,8 @@ 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__

View File

@@ -1,3 +1,12 @@
#*************************************************************************
# 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.
#*************************************************************************
# $Id$
#
# This file contains definitions for Vx builds
@@ -20,7 +29,6 @@ CXX = g++
# the override definitions.
# Tornado directory definitions
VX_CONFIG_DIR_YES =
VX_INCLUDE_YES =
VX_GNU_YES =
VX_GNU_BIN_YES =
@@ -28,14 +36,12 @@ VX_GNU_LIB_YES =
# pre Torando directory definitions
VX_CONFIG_DIR_NO =
VX_INCLUDE_NO =
VX_GNU_NO =
VX_GNU_BIN_NO =
# directory definitions
VX_DIR =
VX_CONFIG_DIR =
VX_INCLUDE =
VX_GNU =

View File

@@ -1,3 +1,12 @@
#*************************************************************************
# 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.
#*************************************************************************
# $Id$
#
# This file contains definitions for Vx builds
@@ -13,34 +22,33 @@ OS_CLASS = vxWorks
# can be overridden for specific host architectures
# by creating a CONFIG_SITE.Vx.<host_arch> file with
# the override definitions.
# Tornado directory definitions
VX_CONFIG_DIR_YES = $(VX_DIR)/target/config
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_CONFIG_DIR_NO = $(VX_DIR)/config
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_CONFIG_DIR = $(VX_CONFIG_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/
export WIND_BASE = $(VX_DIR)
#--------------------------------------------------
# VxWorks command definitions
GCC = $(GNU_BIN)/cc$(CMPLR_SUFFIX) -B$(GNU_LIB)/gcc-lib/ -nostdinc
AR = $(GNU_BIN)/ar$(CMPLR_SUFFIX)
CPP = $(GNU_BIN)/cpp$(CMPLR_SUFFIX) -nostdinc
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
@@ -85,6 +93,11 @@ ANSI = GCC
CPLUSPLUS = $(CPLUSPLUS_$(TORNADO))
LD_CXX = $(LD_$(CPLUSPLUS))
#--------------------------------------------------
# Override flags in CONFIG_COMMON
GCC_DEP_CFLAGS = -D_REENTRANT
G++_DEP_CFLAGS = -D_REENTRANT
#--------------------------------------------------
# Operating system flags
OP_SYS_INCLUDES = -I$(VX_INCLUDE)
@@ -92,12 +105,18 @@ 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 =
GCC_OPT_NO = -g
G++_OPT_YES = -O2 -fstrength-reduce
G++_OPT_NO =
G++_OPT_NO = -g
OPT_CFLAGS = $($(ANSI)_OPT_$(VX_OPT))
OPT_CXXFLAGS = $($(CPLUSPLUS)_OPT_$(VX_OPT))

View File

@@ -11,6 +11,6 @@ CMPLR_SUFFIX = 68k
ARCH_CLASS = 68k
# Architecture specific build flags
ARCH_DEP_CPPFLAGS = -DCPU=MC68020 -DCPU_FAMILY=MC680X0
ARCH_DEP_CPPFLAGS = -DCPU=MC68020
ARCH_DEP_CFLAGS = -m68020

View File

@@ -11,6 +11,6 @@ CMPLR_SUFFIX = 68k
ARCH_CLASS = 68k
# Architecture specific build flags
ARCH_DEP_CPPFLAGS = -DCPU=MC68030 -DCPU_FAMILY=MC680X0
ARCH_DEP_CPPFLAGS = -DCPU=MC68030
ARCH_DEP_CFLAGS = -m68030

View File

@@ -11,6 +11,6 @@ CMPLR_SUFFIX = 68k
ARCH_CLASS = 68k
# Architecture specific build flags
ARCH_DEP_CPPFLAGS = -DCPU=MC68040 -DCPU_FAMILY=MC680X0
ARCH_DEP_CPPFLAGS = -DCPU=MC68040
ARCH_DEP_CFLAGS = -m68040

View File

@@ -11,5 +11,5 @@ CMPLR_SUFFIX = 68k
ARCH_CLASS = 68k
# Architecture specific build flags
ARCH_DEP_CPPFLAGS = -DCPU=MC68040 -DCPU_FAMILY=MC680X0
ARCH_DEP_CFLAGS = -msoft-float
ARCH_DEP_CPPFLAGS = -DCPU=MC68LC040
ARCH_DEP_CFLAGS = -m68040 -msoft-float

View File

@@ -11,6 +11,6 @@ CMPLR_SUFFIX = 68k
ARCH_CLASS = 68k
# Architecture specific build flags
ARCH_DEP_CPPFLAGS = -DCPU=MC68040 -DCPU_FAMILY=MC680X0
ARCH_DEP_CPPFLAGS = -DCPU=MC68040
ARCH_DEP_CFLAGS = -m68040

View File

@@ -11,6 +11,6 @@ CMPLR_SUFFIX = 68k
ARCH_CLASS = 68k
# Architecture specific build flags
ARCH_DEP_CPPFLAGS = -DCPU=MC68060 -DCPU_FAMILY=MC680X0
ARCH_DEP_CPPFLAGS = -DCPU=MC68060
ARCH_DEP_CFLAGS = -m68040

16
config/CONFIG.Vx.mv2700 Normal file
View File

@@ -0,0 +1,16 @@
# $Id$
#
# 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

@@ -11,6 +11,6 @@ CMPLR_SUFFIX = 68k
ARCH_CLASS = 68k
# Architecture specific build flags
ARCH_DEP_CPPFLAGS = -DCPU=MC68030 -DCPU_FAMILY=MC680X0
ARCH_DEP_CPPFLAGS = -DCPU=MC68030 -DNICPU030
ARCH_DEP_CFLAGS = -m68030

16
config/CONFIG.Vx.ppc603 Normal file
View File

@@ -0,0 +1,16 @@
# $Id$
#
# 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

@@ -0,0 +1,16 @@
# $Id$
#
# 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

17
config/CONFIG.Vx.ppc604 Normal file
View File

@@ -0,0 +1,17 @@
# $Id$
#
# 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

@@ -0,0 +1,17 @@
# $Id$
#
# 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

16
config/CONFIG.Vx.sbs_pc6 Normal file
View File

@@ -0,0 +1,16 @@
# 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,3 +1,12 @@
#*************************************************************************
# 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.
#*************************************************************************
#
# $Id$
#
@@ -49,13 +58,3 @@ endif
EPICS_BASE = $(INSTALL_LOCATION)
#
# this speeds up the build by turning off implicit rules search
# for EPICS Makefiles (which are not created from other files)
.PHONY:: $(TOP)/config/CONFIG
.PHONY:: $(TOP)/config/CONFIG.* $(TOP)/config/CONFIG_*
.PHONY:: $(TOP)/config/RULES.* $(TOP)/config/RULES_* DEPENDS
.PHONY:: $(HOME)/EPICS_CONFIG $(HOME)/EPICS_CONFIG.$(HOST_ARCH)
.PHONY:: ../Makefile.Vx ../Makefile.Unix ../Makefile.Host Makefile

View File

@@ -1,3 +1,12 @@
#*************************************************************************
# 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.
#*************************************************************************
#
# $Id$
#
@@ -9,11 +18,14 @@
EPICS_VERSION=3
EPICS_REVISION=13
EPICS_MODIFICATION=1
EPICS_MODIFICATION=10
EPICS_UPDATE_NAME=
EPICS_UPDATE_LEVEL=1
EPICS_UPDATE_LEVEL=0
EPICS_VERSION_STRING="EPICS Version ${EPICS_VERSION}.${EPICS_REVISION}.${EPICS_MODIFICATION}.${EPICS_UPDATE_NAME}${EPICS_UPDATE_LEVEL}"
EPICS_LOCAL_NAME=B
EPICS_LOCAL_VERSION=0
EPICS_VERSION_STRING="EPICS Version ${EPICS_VERSION}.${EPICS_REVISION}.${EPICS_MODIFICATION}.${EPICS_UPDATE_NAME}${EPICS_UPDATE_LEVEL}.$(EPICS_LOCAL_NAME)$(EPICS_LOCAL_VERSION)"
CVS_DATE="\$$Date$$"

View File

@@ -1,3 +1,12 @@
#*************************************************************************
# 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.
#*************************************************************************
#
# $Id$
#
@@ -11,15 +20,15 @@
# 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
@@ -30,6 +39,7 @@ 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
@@ -38,6 +48,8 @@ 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
@@ -53,6 +65,7 @@ PERL=perl
# install from EPICS
INSTALL = $(PERL) $(EPICS_BASE_HOST_BIN)/installEpics.pl
INSTALL_PRODUCT = $(INSTALL)
INSTALL_LIBRARY = $(INSTALL)
# dbtools from EPICS
@@ -74,6 +87,7 @@ EPICS_BASE_BIN = $(EPICS_BASE)/bin/$(T_A)
GCC_ANSI = $(GCC) -ansi
GCC_STRICT = $(GCC) -ansi -pedantic
GCC_TRAD = $(GCC) -traditional
GCC_DEP_CFLAGS = -fPIC -D_REENTRANT
GCC_WARN_YES = -Wall
GCC_WARN_NO = -w
GCC_OPT_YES = -O
@@ -82,13 +96,14 @@ GCC_SFLAGS_YES = -static
GCC_SFLAGS_NO =
GCC_SLIBS_YES =
GCC_SLIBS_NO =
GCC_SHRLIB_CFLAGS_YES = -fPIC
GCC_SHRLIB_CFLAGS_YES =
GCC_SHRLIB_LDFLAGS_YES = -shared
G++_NORMAL = $(G++) -ansi -pedantic
G++_STRICT = $(G++) -ansi -pedantic -Wtraditional
G++_TRAD = $(G++) -traditional
G++_TEMPL_INST_FLAG = -DEXPL_TEMPL
G++_DEP_CFLAGS = -fPIC -D_REENTRANT
G++_WARN_YES = -Wall \
-Wmissing-prototypes -Woverloaded-virtual \
-Wwrite-strings -Wconversion -Wstrict-prototypes\
@@ -101,14 +116,14 @@ G++_SFLAGS_NO =
G++_SLIBS_YES =
G++_SLIBS_NO =
G++_DEPENDS_FLAG = -MM
G++_SHRLIB_CFLAGS_YES = -fPIC
G++_SHRLIB_CFLAGS_YES =
G++_SHRLIB_LDFLAGS_YES = -shared
#--------------------------------------------------
# C compiler
CC = $($(ANSI)_$(CMPLR))
#---------------------------------------------------------------
# Vendor compiler dependent options
VENDOR_DEP_CFLAGS = $($(ANSI)_DEP_CFLAGS)
@@ -146,6 +161,7 @@ USR_CXXFLAGS =
USR_LDFLAGS =
USR_LDLIBS =
USR_CPPFLAGS =
USR_DBDFLAGS =
#--------------------------------------------------
# Target specific options
@@ -160,15 +176,16 @@ 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) -I$(INSTALL_INCLUDE)/os/$(OS_CLASS)
EPICS_DBDFLAGS = -I $(INSTALL_LOCATION)/dbd
#--------------------------------------------------
# Warnings flags (CONFIG.Vx will override)
@@ -180,18 +197,18 @@ WARN_CXXFLAGS = $($(CPLUSPLUS)_WARN_$(HOST_WARN))
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
@@ -200,7 +217,7 @@ DEPENDS_RULE = -$(COMPILE.cc) $(DEPENDS_FLAG) $^ > DEPENDS
# Include files
INCLUDES = -I. -I.. $(USR_INCLUDES) $(TARGET_INCLUDES) $(EPICS_INCLUDES) $(OP_SYS_INCLUDES)
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)\
@@ -220,9 +237,11 @@ CPPFLAGS += $(TARGET_CPPFLAGS) $(USR_CPPFLAGS) $(ARCH_DEP_CPPFLAGS)
CPPSNCFLAGS = $(INCLUDES)
DBDFLAGS = -I . -I .. $(USR_DBDFLAGS) $(EPICS_DBDFLAGS)
# Build compile line here
COMPILE.c = $(CC) $(CFLAGS) $(CPPFLAGS) -c $(SOURCE_FLAG)
COMPILE.cc = $(CXX) $(CXXFLAGS) $(CPPFLAGS) -c $(SOURCE_CXXFLAG)
COMPILE.c = $(CC) $(CPPFLAGS) $(CFLAGS) -c $(SOURCE_FLAG)
COMPILE.cc = $(CXX) $(CPPFLAGS) $(CXXFLAGS) -c $(SOURCE_CXXFLAG)
endif

View File

@@ -1,3 +1,12 @@
#*************************************************************************
# 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.
#*************************************************************************
# $Id$
# Author: Andrew Johnson
# Date: 20 April 1995

View File

@@ -0,0 +1,22 @@
# CONFIG_HOST_ARCH.Borland
#
EXE=.exe
CP =$(PERL) $(EPICS_BASE_HOST_BIN)/cp.pl
MV =$(PERL) $(EPICS_BASE_HOST_BIN)/mv.pl
RM =$(PERL) $(EPICS_BASE_HOST_BIN)/rm.pl -f
MKDIR=$(PERL) $(EPICS_BASE_HOST_BIN)/mkdir.pl
RMDIR=$(PERL) $(EPICS_BASE_HOST_BIN)/rm.pl -rf
FN =$(PERL) $(EPICS_BASE_HOST_BIN)/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

@@ -5,5 +5,5 @@
# Include definitions common to all Unix archs
include $(EPICS_BASE)/config/CONFIG_HOST_ARCH.UnixCommon
WIND_HOST_TYPE = Linux
WIND_HOST_TYPE = x86-linux

View File

@@ -10,3 +10,11 @@ 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

@@ -13,6 +13,9 @@ ECHO=echo
WIND_HOST_TYPE = x86-win32
# Use std path variables from ms
# Does not work if using cygwin make
# because HOME is always defined
ifndef HOME
HOME = $(HOMEDRIVE)$(HOMEPATH)
endif

View File

@@ -9,5 +9,5 @@ EXE=.exe
TORNADO=YES
WIND_HOST_TYPE = cygwin32
WIND_HOST_TYPE = x86-win32

View File

@@ -5,5 +5,4 @@
# Include definitions common to all Unix archs
include $(EPICS_BASE)/config/CONFIG_HOST_ARCH.UnixCommon
WIND_HOST_TYPE = hp700
WIND_HOST_TYPE = parisc-hpux10

View File

@@ -1,9 +1,9 @@
# CONFIG_HOST_ARCH.LynxOS
# CONFIG_HOST_ARCH.solaris-x86
#
# Override values in CONFIG.LynxOS
# Override values in CONFIG.Vx
# Include definitions common to all Unix archs
include $(EPICS_BASE)/config/CONFIG_HOST_ARCH.UnixCommon
WIND_HOST_TYPE = LynxOS
WIND_HOST_TYPE = x86-solaris2

View File

@@ -0,0 +1,9 @@
# CONFIG_HOST_ARCH.solarisGnu
#
# Override values in CONFIG.Vx
# Include definitions common to all Unix archs
include $(EPICS_BASE)/config/CONFIG_HOST_ARCH.UnixCommon
WIND_HOST_TYPE = sun4-solaris2

View File

@@ -13,14 +13,17 @@
# i.e.: the arch running DCT/getrel/etc.
#
# Currently Supporting:
# sun4
# hp700
# alpha
# solaris
# sgi
# Borland
# Linux
# WIN32
# LynxOS
# alpha
# cygwin32
# hp700
# sgi
# solaris
# solarisGnu (GNU compiler)
# solaris-x86
# sun4
#
# HOST_ARCH now an environment variable
# HOST_ARCH=$(shell /usr/local/epics/startup/HostArch)
@@ -31,17 +34,27 @@ endif
# The architectures to build EPICS for
#
# Currently Supporting:
# mv167
# frc40
# frc5ce
# hkbaja47
# hkv2f
# mv147
# mv1604
# mv162
# mv162lc
# mv147
# hkv2f
# niCpu030
# pc486
# frc5ce
# hkbaja47
# mv167
# mv177
# mv2700
# niCpu030
# pc486
# ppc603
# ppc604
# ppc603_long (over 32MB)
# ppc604_long (over 32MB)
# sbs_pc6
# vxipc
#
CROSS_COMPILER_TARGET_ARCHS=mv167
CROSS_COMPILER_TARGET_ARCHS=
# If only a subset of the host architectures perform
@@ -57,7 +70,8 @@ TORNADO=YES
# VxWorks directory for TORNADO=YES
#VX_DIR_YES=c:\\Tornado
VX_DIR_YES = /usr/local/vw/tornado101
VX_DIR_YES = /usr/local/vw/tornado202p1
# VxWorks directory for TORNADO=NO
#VX_DIR_NO=$(VW)
@@ -100,6 +114,10 @@ CMPLR=STRICT
# Individual Makefiles may override
CXXCMPLR=STRICT
# Build should install all include files first?
# must be either YES or NO
MAKE_INC_TARGET_FIRST=NO
# Build shared libraries?
# (archive libraries will also be built)
# must be either YES or NO
@@ -108,7 +126,7 @@ CXXCMPLR=STRICT
# NOTE WIN32: YES results in a DLL. CONFIG_SITE.Host.WIN32
# distribution file contains YES override
#
# NOTE solaris and sun4: If YES then LD_LIBRARY_PATH must
# NOTE solaris,Linux, and sun4: If YES then LD_LIBRARY_PATH must
# include fullpathname $(INSTALL_LOCATION)/lib/$(HOST_ARCH)
# for both the base build and when invoking base executables
SHARED_LIBRARIES=NO

View File

@@ -3,13 +3,8 @@
#
# Site Specific Configuration Information
# Only the local epics system manager should modify this file
SHARED_LIBRARIES = YES
# APS overrides of definitions
BORLAND=C:\\Borland\\bcc55
GCC = gcc
G++ = g++
CC = gcc
CCC = g++
ACC = gcc
PLUSPLUS = g++
CXX = g++

View File

@@ -0,0 +1,26 @@
#
# $Id$
#
# Site Specific Configuration Information
# Only the local epics system manager should modify this file
# by default, build and use shared libraries
SHARED_LIBRARIES=YES
# where we expect to find shared libraries if not found elsewhere
#DEFAULT_SHRLIB_SEARCH_PATH = /opt/epics/R$(EPICS_VERSION).$(EPICS_REVISION).$(EPICS_MODIFICATION)/support/base/$(EPICS_VERSION)-$(EPICS_REVISION)-$(EPICS_MODIFICATION)/lib/hp700
DEFAULT_SHRLIB_SEARCH_PATH = /cs/lib/R$(EPICS_VERSION).$(EPICS_REVISION).$(EPICS_MODIFICATION).$(EPICS_UPDATE_NAME)$(EPICS_UPDATE_LEVEL):$(INSTALL_LIB)
#No special action should be required to build or use shared libraries.
#However, when a new shared library is built using the above configuration,
#it should be copied into the location specified by DEFAULT_SHRLIB_SEARCH_PATH
#which in this specific case is: /cs/lib/R3.13.1.1/
# cal added this so that libraries can be built with position
# independent code even if shared libraries aren't being built
ifeq ($(RELOCATABLE), YES)
ARCH_DEP_CFLAGS += +Z
ARCH_DEP_CXXFLAGS += +Z
endif

View File

@@ -6,6 +6,6 @@
# APS overrides of definitions
GCC = /opt/gnu/bin/gcc
G++ = /opt/gnu/bin/g++
#GCC = /opt/gnu/bin/gcc
#G++ = /opt/gnu/bin/g++

View File

@@ -0,0 +1,28 @@
# $Id$
#
# This file contains overrides for Vx builds
# The definitions VX_DIR, VX_GNU, GNU_DIR, GNU_LIB, etc.
# can be overridden for specific Linux-target architecture
# combinations by creating a CONFIG_SITE.Vx.Linux.<T_A>
# file with the override definitions.
## ---- jba overrides for cross compiler
## VX_DIR needed for "export WIND_BASE = $(VX_DIR)"
#VX_DIR_YES = /home/phoebus/JBA/gnu
#VX_GNU_YES = $(VX_DIR)
#VX_INCLUDE_YES = $(VX_GNU)/$(GNU_TARGET)/include
#
#CMPLR_PREFIX= $(GNU_TARGET)-
#CMPLR_SUFFIX=
#GCC = $(GNU_BIN)/$(CMPLR_PREFIX)gcc$(CMPLR_SUFFIX) -B$(GNU_LIB)/gcc-lib/ -nostdinc
#AR = $(GNU_BIN)/$(CMPLR_PREFIX)ar$(CMPLR_SUFFIX)
#CPP = $(GNU_BIN)/$(CMPLR_PREFIX)gcc$(CMPLR_SUFFIX) -B$(GNU_LIB)/gcc-lib/ -nostdinc -x c -E
#RANLIB = $(GNU_BIN)/$(CMPLR_PREFIX)ranlib$(CMPLR_SUFFIX)
#LD = $(GNU_BIN)/$(CMPLR_PREFIX)ld$(CMPLR_SUFFIX) -r
#G++ = $(GNU_BIN)/$(CMPLR_PREFIX)g++$(CMPLR_SUFFIX) -B$(GNU_LIB)/gcc-lib/ -nostdinc
#LD_G++ = $(GNU_BIN)/$(CMPLR_PREFIX)ld$(CMPLR_SUFFIX) -r
#NM = $(GNU_BIN)/$(CMPLR_PREFIX)nm$(CMPLR_SUFFIX)
## ---- end jba overrides
-include $(EPICS_BASE)/config/CONFIG_SITE.$(BUILD_TYPE).$(HOST_ARCH).$(T_A)

View File

@@ -0,0 +1,14 @@
# $Id$
#
# This file contains overrides for Vx builds
## ---- jba overrides for cross compiler
#GNU_TARGET=m68k-wrs-vxworks
## ---- end jba overrides
# ORNL SNS overrides for cross compilers
#VX_DIR_YES = /opt/tornado20/
#VX_INCLUDE_YES = /usr/local/crossgcc/m68k/m68k-wrs-vxworks/sys-include
#VX_GNU_YES = /usr/local/crossgcc/m68k/
#VX_GNU_BIN_YES = $(VX_GNU)/bin
#VX_GNU_LIB_YES = /usr/local/crossgcc/m68k/lib/gcc-lib/m68k-wrs-vxworks/2.95.2

View File

@@ -0,0 +1,10 @@
# $Id$
#
# This file contains overrides for Vx builds
# ORNL SNS overrides for cross compilers
#VX_DIR_YES = /opt/tornado20/
#VX_INCLUDE_YES = /usr/local/crossgcc/ppc/powerpc-wrs-vxworks/sys-include
#VX_GNU_YES = /usr/local/crossgcc/ppc/
#VX_GNU_BIN_YES = $(VX_GNU)/bin
#VX_GNU_LIB_YES = /usr/local/crossgcc/ppc/lib/gcc-lib/powerpc-wrs-vxworks/2.95.2

View File

@@ -0,0 +1,3 @@
# APS override of tornado directory for ppc
#VX_DIR_YES = /usr/local/vw/tornado101ppc2

View File

@@ -1,3 +1,12 @@
#*************************************************************************
# 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.
#*************************************************************************
#
# $Id$
#

View File

@@ -1,3 +1,12 @@
#*************************************************************************
# 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.
#*************************************************************************
#
# $Id$
#

View File

@@ -1,8 +1,15 @@
#*************************************************************************
# 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.
#*************************************************************************
# $Id$
#
# Rules for making things specified in Makefile.Host
#
# Some rules for filename-massage are system specific
# and have "ifdefs" here instead of using definitions
# from CONFIG.Host.$(ARCH_CLASS) - sorry about this,
@@ -31,10 +38,9 @@
vpath %.h $(USER_VPATH)
vpath %.c $(USER_VPATH) ../os/$(ARCH_CLASS) ../os/generic ..
vpath %.cc $(USER_VPATH) ../os/$(ARCH_CLASS) ../os/generic ..
vpath %.cpp $(USER_VPATH) ../os/$(ARCH_CLASS) ../os/generic ..
vpath %.rc $(USER_VPATH) ../os/$(ARCH_CLASS) ../os/generic ..
# This prevents base/src/include/*.h from being installed. Why??
#vpath %.h ../os/$(ARCH_CLASS) ../os/generic ..
vpath %.h $(USER_VPATH)
vpath %.jar $(USER_VPATH) ..
# check for add-on CFLAGS and CXXFLAGS
#
@@ -224,12 +230,13 @@ ifdef PROD
PROD := $(addsuffix $(EXE), $(PROD))
endif
#---------------------------------------------------------------
# if we are not building base add base includes and ld dirs
#-----------------------------------------------------------------
# if we are not building base add base includes and dbd dirs
# (convenience for extensions and applications)
ifneq ($(EPICS_BASE),$(TOP))
ifneq ($(EPICS_BASE),$(INSTALL_LOCATION))
EPICS_INCLUDES += -I$(EPICS_BASE_INCLUDE) -I$(EPICS_BASE_INCLUDE)/os/$(OS_CLASS)
EPICS_INCLUDES += -I$(EPICS_BASE_INCLUDE)/os/$(OS_CLASS) -I$(EPICS_BASE_INCLUDE)
EPICS_DBDFLAGS += -I $(EPICS_BASE)/dbd
endif
endif
@@ -238,10 +245,6 @@ endif
# create names (lists) for installed things
# ----------------------------------------------------
# each list starts with the destination directory name(s)
# to make sure it's there
INCREC +=$(RECTYPES) $(MENUS)
INSTALL_PROD= $(PROD:%= $(INSTALL_BIN)/%)
@@ -288,12 +291,10 @@ endif
endif
#---------------------------------------------------------------
# must use c++ linker if linking to shared libs with c++ code
ifeq ($(strip $(SHARED_LIBRARIES)),YES)
# always use c++ linker
ifneq ($(strip $(CPLUSPLUS)),)
LINK.c = $(LINK.cc)
endif # CPLUSPLUS
endif # LIBTYPE
#---------------------------------------------------------------
# Version number for base shared libraries (and win32 products)
@@ -311,18 +312,20 @@ endif # EPICS_BASE
ifdef LIBRARY
ifdef LIBOBJS
LIBTARGETS += $(LIBNAME) $(INSTALL_LIBS)
CFLAGS += $($(ANSI)_SHRLIB_CFLAGS_YES)
CXXFLAGS += $($(ANSI)_SHRLIB_CFLAGS_YES)
LIBNAME_RCS=$(foreach lib, $(basename $(LIBRARY)), $(RCS) $($(lib)_RCS) $($(lib)_RCS_$(ARCH_CLASS)))
LIBNAME_RESS=$(addsuffix $(RES), $(basename $(LIBNAME_RCS)))
# check if shared libraries requested
ifeq ($(strip $(SHARED_LIBRARIES)),YES)
CFLAGS += $($(ANSI)_SHRLIB_CFLAGS_YES)
CXXFLAGS += $($(CPLUSPLUS)_SHRLIB_CFLAGS_YES)
SHRLIB_LDFLAGS = $($(CPLUSPLUS)_SHRLIB_LDFLAGS_YES)
PROD_VERSION =$(SHRLIB_VERSION)
ifeq ($(findstring cc,$(suffix $(LIBSRCS))),cc)
# always use c++ linker
SHRLIB_LINKER = $(CXX)
else
SHRLIB_LINKER = $(CC)
endif
LIBTARGETS += $(SHRLIBNAME) $(INSTALL_SHRLIBS) $(INSTALL_DLL_LINK_LIBS)
endif # SHARED_LIBRARIES=YES
@@ -331,18 +334,21 @@ endif # LIBOBJS
endif # LIBRARY
#---------------------------------------------------------------
# Main targets
all:: install
build:: $(LIBTARGETS) $(PROD) $(TESTPROD) \
$(MENUS) $(RECTYPES) $(BPTS) $(DBDNAME)
build:: inc
build:: $(LIBTARGETS) $(PROD) $(TESTPROD) $(INSTALLS) \
$(MENUS) $(RECTYPES) $(BPTS)
ifdef DBDEXPAND
build:: $(DBDNAME)
endif
inc:: $(INSTALL_INC) $(INSTALL_OSINC)
rebuild:: clean install
install:: inc buildInstall
install:: buildInstall
buildInstall :: build $(TARGETS) \
$(INSTALL_SCRIPTS) $(INSTALL_PROD) \
@@ -357,8 +363,11 @@ buildInstall :: build $(TARGETS) \
clean::
@echo "Cleaning"
@$(RM) *.i *$(OBJ) *.a $(PROD) $(TESTPROD) $(LIBNAME) $(SHRLIBNAME) $(INC) *$(RES) $(TARGETS) \
$(DBDINSTALL) $(MENUS) $(RECTYPES) $(BPTS) $(DBDNAME)
@$(RM) *.i *$(OBJ) *.a $(PROD) $(TESTPROD) $(LIBNAME) $(SHRLIBNAME) $(INC) \
*$(RES) $(TARGETS) *.dbd $(MENUS) $(RECTYPES) $(BPTS)
ifdef DBDEXPAND
@$(RM) $(DBDNAME)
endif
#---------------------------------------------------------------
# Products
@@ -369,7 +378,6 @@ ifdef PROD
COND_PROD_SRCS=$(foreach prod, $(basename $(PROD)), $($(prod)_SRCS))
COND_PROD_RCS=$(foreach prod, $(basename $(PROD)), $($(prod)_RCS) $($(prod)_RCS_$(ARCH_CLASS)))
COND_PROD_LIBS=$(foreach prod, $(basename $(PROD)), $($(prod)_LIBS))
ifdef PRODNAME
@@ -381,6 +389,14 @@ PRODNAME_SRCS += $(PRODNAME_SRCS_DEFAULT)
endif
endif
ifneq ($(strip $(PRODNAME_OBJS_$(ARCH_CLASS))),)
PRODNAME_OBJS += $(subst -nil-,,$(PRODNAME_OBJS_$(ARCH_CLASS)))
else
ifdef PRODNAME_OBJS_DEFAULT
PRODNAME_OBJS += $(PRODNAME_OBJS_DEFAULT)
endif
endif
ifneq ($(strip $(PRODNAME_RCS_$(ARCH_CLASS))),)
PRODNAME_RCS += $(subst -nil-,,$(PRODNAME_RCS_$(ARCH_CLASS)))
else
@@ -399,13 +415,20 @@ else
PRODNAME_LINKER = $(LINK.c)
endif
PRODNAME_OBJS=$(addsuffix $(OBJ), $(basename $(PRODNAME_SRCS)))
PRODNAME_RESS=$(addsuffix $(RES), $(basename $(PRODNAME_RCS)))
PRODNAME_OBJS+=$(addsuffix $(OBJ), $(basename $(PRODNAME_SRCS)))
PRODNAME_RESS+=$(addsuffix $(RES), $(basename $(PRODNAME_RCS)))
ifdef BORLANDC
$(PRODNAME): $(PRODNAME_OBJS) $(PRODNAME_RESS)
@$(RM) $@
$(PRODNAME_LINKER) $(PRODNAME_OBJS) , $@ ,,$(LINKLIBS) $(subst /,\\,$(LDLIBS)),, $(PRODNAME_RESS)
else
$(PRODNAME): $(PRODNAME_OBJS) $(PRODNAME_RESS)
@$(RM) $@
$(PRODNAME_LINKER) $(PRODNAME_OBJS) $(PRODNAME_RESS) $(LDLIBS)
endif
endif # ifdef PRODNAME_SRCS
else # PRODNAME not defined
@@ -428,7 +451,7 @@ PROD_MAKE_COMMAND=$(MAKE) $@\
PRODNAME_RCS_$(ARCH_CLASS)="$($(basename $@)_RCS_$(ARCH_CLASS))"\
PRODNAME_LIBS="$($(basename $@)_LIBS)"
$(PROD): $(PROD_OBJS) $(PROD_RESS) $(PROD_DEPLIBS) $(COND_PROD_DEPLIBS)
$(PROD): $(SRCS) $(PROD_OBJS) $(COND_PROD_SRCS) $(PROD_RESS) $(PROD_DEPLIBS) $(COND_PROD_DEPLIBS)
@$(PROD_MAKE_COMMAND)
endif
@@ -440,12 +463,12 @@ endif #ifdef PROD
# Java classes and packages
#
INSTALL_JAVA = $(INSTALL_LOCATION)/javalib
ifdef JAVA
DIRECTORY_TARGETS += $(INSTALL_JAVA)
ifdef PACKAGE
DIRECTORY_TARGETS += $(INSTALL_JAVA)/$(PACKAGE)
endif
endif
vpath %.class $(INSTALL_JAVA)/$(PACKAGE)
@@ -454,32 +477,47 @@ TESTCLASSES += $(subst .java,.class,$(TESTJAVA))
INSTALL_CLASSES =$(CLASSES:%=$(INSTALL_JAVA)/$(PACKAGE)/%)
INSTALL_JAR =$(JAR:%=$(INSTALL_JAVA)/%)
ifeq ($(strip $(JAVADOC)),YES)
DIRECTORY_TARGETS += $(INSTALL_HTML)
INSTALL_JAVADOC = $(CLASSES:%.class=$(INSTALL_HTML)/%.html)
ifdef PACKAGE
DIRECTORY_TARGETS += $(INSTALL_HTML)/$(PACKAGE)
INSTALL_JAVADOC = $(CLASSES:%.class=$(INSTALL_HTML)/$(PACKAGE)/$(PACKAGE)/%.html)
endif
endif
JAR_OPTIONS = cvf
ifdef MANIFEST
JAR_OPTIONS = cvmf
endif
JAR_DEPFILES += $(wildcard $(JAR_INPUT) $(addsuffix /*,$(JAR_INPUT)))
#JAR_DEPFILES += $(wildcard $(JAR_INPUT) $(addsuffix /*,$(JAR_INPUT)))
JAR_DEPFILES += $(JAR_INPUT)
$(DIRECTORY_TARGETS) :
$(MKDIR) $@
build:: $(TESTCLASSES) $(JAR)
buildInstall :: $(DIRECTORY_TARGETS) $(INSTALL_CLASSES) $(INSTALL_JAR)
buildInstall :: $(DIRECTORY_TARGETS) $(INSTALL_CLASSES) $(INSTALL_JAR) $(INSTALL_JAVADOC)
clean::
@$(RM) $(TESTCLASSES) $(JAR)
@$(RM) $(TESTCLASSES) $(JAR) $(INSTALL_CLASSES) $(INSTALL_JAVADOC)
%.class:%.java
@echo Creating java class file $@
$(RM) $@
$(JAVACCMD) $<
$(INSTALL_JAVA)/$(PACKAGE)/%.class:%.java
$(INSTALL_JAVA)/$(PACKAGE)/%.class:%.java
@echo Creating java class file $@
@$(RM) $@
$(JAVACCMD) -d $(INSTALL_JAVA) $<
$(INSTALL_JAVADOC):$(JAVA)
@echo Creating javadoc html files $@
@$(RM) $@
$(JAVADOCCMD) -d $(INSTALL_HTML)/$(PACKAGE) $(PACKAGE)
$(JAR):%.jar: $(JAR_DEPFILES)
@echo Creating java jar file $@
@$(RM) $@
@@ -487,7 +525,12 @@ $(JAR):%.jar: $(JAR_DEPFILES)
$(INSTALL_JAVA)/%.jar: %.jar
@echo "Installing jar file $@"
$(INSTALL) -d -m 644 $< $(@D)
@$(INSTALL) -d -m 644 $< $(@D)
$(PACKAGE)_%.h:$(INSTALL_JAVA)/$(PACKAGE)/%.class
$(JAVAHCMD) $(PACKAGE).$*
.PRECIOUS: $(INSTALL_CLASSES) $(INSTALL_JAVADOC)
#---------------------------------------------------------------
#---------------------------------------------------------------
@@ -505,26 +548,57 @@ $(INSTALL_JAVA)/%.jar: %.jar
# The order of the following rules is
# VERY IMPORTANT !!!!
depends:: $(LIBSRCS) $(SRCS) $(COND_PROD_SRCS)
depends:: $(LIBSRCS) $(SRCS) $(COND_PROD_SRCS) $(SRCS.c) $(SRCS.cc)
$(RM) DEPENDS
touch DEPENDS
ifneq ($(strip $(LIBSRCS) $(SRCS) $(COND_PROD_SRCS) $(SRCS.c) $(SRCS.cc)),)
$(DEPENDS_RULE)
endif
ifdef BORLANDC
%$(EXE): %.c
@$(RM) $@
$(COMPILE.c) $<
$(LINK.c) $(subst ../,,$(basename $<))$(OBJ) , $@ ,,$(LINKLIBS) $(subst /,\\,$(LDLIBS))
%$(EXE): %.cc
@$(RM) $@
$(COMPILE.cc) $<
$(LINK.cc) $(subst ../,,$(basename $<))$(OBJ) , $@ ,,$(LINKLIBS) $(subst /,\\,$(LDLIBS))
%$(EXE): %.cpp
@$(RM) $@
$(COMPILE.cc) $<
$(LINK.cc) $(subst ../,,$(basename $<))$(OBJ) , $@ ,,$(LINKLIBS) $(subst /,\\,$(LDLIBS))
%$(EXE): %.C
@$(RM) $@
$(COMPILE.cc) $<
$(LINK.cc) $(subst ../,,$(basename $<))$(OBJ) , $@ ,,$(LINKLIBS) $(subst /,\\,$(LDLIBS))
else
%$(EXE): %.c
@$(RM) $@
$(COMPILE.c) $<
$(LINK.c) $(subst ../,,$(basename $<))$(OBJ) $(LDLIBS)
$(LINK.c) $(subst ../,,$(basename $<))$(OBJ) $(LDLIBS)
%$(EXE): %.cc
@$(RM) $@
$(COMPILE.cc) $<
$(LINK.cc) $(subst ../,,$(basename $<))$(OBJ) $(LDLIBS)
%$(EXE): %.cpp
@$(RM) $@
$(COMPILE.cc) $<
$(LINK.cc) $(subst ../,,$(basename $<))$(OBJ) $(LDLIBS)
%$(EXE): %.C
@$(RM) $@
$(COMPILE.cc) $<
$(LINK.cc) $(subst ../,,$(basename $<))$(OBJ) $(LDLIBS)
endif
%$(OBJ): %.c
@$(RM) $@
$(COMPILE.c) $<
@@ -533,6 +607,10 @@ depends:: $(LIBSRCS) $(SRCS) $(COND_PROD_SRCS)
@$(RM) $@
$(COMPILE.cc) $<
%$(OBJ): %.cpp
@$(RM) $@
$(COMPILE.cc) $<
%$(OBJ): %.C
@$(RM) $@
$(COMPILE.cc) $<
@@ -572,12 +650,12 @@ endif
@$(RM) $@
$(SNC) $(TARGET_SNCFLAGS) $(SNCFLAGS) $*.i
%.c: %.stt
@echo "converting $<
%.c: ../%.stt
@echo "converting $<"
ln -s $< $*.st
$(SNC) $(TARGET_SNCFLAGS) $(SNCFLAGS) $*.st
@$(RM) $*.st
# Capfast Rules:
%.db: %.edf
$(E2DB) $(E2DB_SYSFLAGS) $(E2DB_FLAGS) $<
@@ -585,7 +663,7 @@ endif
%.db: ../%.edf
$(E2DB) $(E2DB_SYSFLAGS) $(E2DB_FLAGS) $<
%.edf: ../%.sch
%.edf: ../%.sch $(DEPSCHS)
@if [ ! -f cad.rc -a -r ../cad.rc ] ; then ln -s ../cad.rc ; fi
$(SCH2EDIF) $(SCH2EDIF_SYSFLAGS) $(SCH2EDIF_FLAGS) $<
@@ -613,38 +691,63 @@ $(INSTALL_DBD)/%: ../%
%Record.h: %Record.dbd
$(RM) $@
$(EPICS_BASE)/bin/$(HOST_ARCH)/dbToRecordtypeH$(EXE) \
$(USER_DBDFLAGS) $<
$(EPICS_BASE_HOST_BIN)/dbToRecordtypeH$(EXE) \
$(DBDFLAGS) $<
%Record.h: ../%Record.dbd
$(RM) $@
$(EPICS_BASE)/bin/$(HOST_ARCH)/dbToRecordtypeH$(EXE) \
$(USER_DBDFLAGS) $<
$(EPICS_BASE_HOST_BIN)/dbToRecordtypeH$(EXE) \
$(DBDFLAGS) $<
menu%.h: menu%.dbd
$(RM) $@
$(EPICS_BASE)/bin/$(HOST_ARCH)/dbToMenuH$(EXE) $<
$(EPICS_BASE_HOST_BIN)/dbToMenuH$(EXE) $<
menu%.h: ../menu%.dbd
$(RM) $@
$(EPICS_BASE)/bin/$(HOST_ARCH)/dbToMenuH$(EXE) $<
$(EPICS_BASE_HOST_BIN)/dbToMenuH$(EXE) $<
bpt%.dbd: bpt%.data
$(RM) $@
$(EPICS_BASE)/bin/$(HOST_ARCH)/makeBpt$(EXE) $<
$(EPICS_BASE_HOST_BIN)/makeBpt$(EXE) $<
bpt%.dbd: ../bpt%.data
$(RM) $@
$(EPICS_BASE)/bin/$(HOST_ARCH)/makeBpt$(EXE) $<
$(EPICS_BASE_HOST_BIN)/makeBpt$(EXE) $<
# Patch for old applications
ifdef USER_DBDFLAGS
DBDFLAGS = $(USER_DBDFLAGS)
endif
ifdef DBDEXPAND
$(DBDNAME): ../$(DBDEXPAND)
@echo expanding dbd
@$(RM) $@
$(EPICS_BASE)/bin/$(HOST_ARCH)/dbExpand$(EXE) $(USER_DBDFLAGS) $< > $@
@echo Expanding dbd
@$(RM) $@ $@-new
$(EPICS_BASE_HOST_BIN)/dbExpand$(EXE) $(DBDFLAGS) $< > $@-new
@$(MV) $@-new $@
$(DLL_LINK_LIBNAME) $(SHRLIBNAME): $(LIBOBJS)
$(LINK.shrlib) $(LIBOBJS) $(DLL_LDLIBS)
ifneq (,$(wildcard ../base.dbd))
$(DBDNAME): ../base.dbd
endif
endif
ifdef BORLANDC
$(DLL_LINK_LIBNAME) $(SHRLIBNAME): $(LIBOBJS) $(LIBNAME_RESS)
$(LINK.shrlib) $(LIBOBJS) , $@ ,,$(LINKLIBS) $(subst /,\\,$(DLL_LDLIBS)), $(DLL_DEF_FLAG), $(LIBNAME_RESS)
else
$(DLL_LINK_LIBNAME) $(SHRLIBNAME): $(LIBOBJS) $(LIBNAME_RESS)
$(LINK.shrlib) $(LIBOBJS) $(DLL_LDLIBS) $(LIBNAME_RESS)
endif
ifdef BORLANDC
# rule for lib (archive of object files) creation
$(LIBNAME): $(LIBOBJS)
$(RM) $@
$(ARCMD) $(foreach lib,$(LIBOBJS),+$(lib))
else
# rule for lib (archive of object files) creation
$(LIBNAME): $(LIBOBJS)
$(RM) $@
@@ -653,6 +756,8 @@ ifdef RANLIB
$(RANLIB) $@;
endif # RANLIB
endif
$(INSTALL_BIN)/%: ../os/$(ARCH_CLASS)/%
@echo "Installing os-specific script $@"
@$(INSTALL_PRODUCT) -d -m 555 $< $(INSTALL_BIN)
@@ -667,21 +772,21 @@ $(INSTALL_BIN)/%: ../%
$(INSTALL_LIB)/%.a: %.a
@echo "Installing library $@"
@$(INSTALL) -d -m 644 $< $(INSTALL_LIB)
@$(INSTALL_LIBRARY) -d -m 644 $< $(INSTALL_LIB)
ifdef RANLIB
$(RANLIB) $(RANLIBFLAGS) $@
endif # RANLIB
$(INSTALL_LIB)/%.lib: %.lib
@echo "Installing library $@"
@$(INSTALL) -d -m 644 $< $(INSTALL_LIB)
@$(INSTALL_LIBRARY) -d -m 644 $< $(INSTALL_LIB)
$(INSTALL_SHRLIB)/lib%: lib%
@echo "Installing library $@"
@$(INSTALL) -d -m 555 $< $(INSTALL_SHRLIB)
@$(INSTALL_LIBRARY) -d -m 555 $< $(INSTALL_SHRLIB)
ifdef SHRLIB_VERSION
@$(RM) $(@:%.$(SHRLIB_VERSION)=%)
ln -s $< $(@:%.$(SHRLIB_VERSION)=%)
$(RM) $(subst .$(SHRLIB_VERSION),,$@)
ln -s $< $(subst .$(SHRLIB_VERSION),,$@)
endif # SHRLIB_VERSION
$(INSTALL_TCLLIB)/%: %

View File

@@ -1,3 +1,12 @@
#*************************************************************************
# 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.
#*************************************************************************
# $Id$
INCREC +=$(RECTYPES) $(MENUS)
@@ -57,7 +66,7 @@ buildInstall :: build \
$(INSTALL_MAN) $(INSTALL_MANS) $(INSTALL_HTMLS) \
$(INSTALL_DOC) $(INSTALL_DOCS) $(INSTALL_TEMPLATES) \
$(INSTALL_TEMPLATES)/$(TEMPLATES_DIR) $(INSTALL_TEMPLATE) \
$(INSTALL_CONFIG) $(INSTALL_CONFIGS) \
$(INSTALL_CONFIG) $(INSTALL_CONFIGS) \
$(INSTALL_DBD) $(INSTALL_DBS) $(INSTALL_BPTS) \
$(INSTALL_DBDNAME) $(INSTALL_INCREC) \
$(INSTALL_TCLLIBS) $(INSTALL_TCLINDEX)
@@ -139,8 +148,8 @@ $(TARGETS) $(PROD): $(DEPLIBS)
@$(RM) $@
$(SNC) $(TARGET_SNCFLAGS) $(SNCFLAGS) $*.i
%.c: %.stt
@echo "converting $<
%.c: ../%.stt
@echo "converting $<"
@$(RM) $@
$(SNC) $(TARGET_SNCFLAGS) $(SNCFLAGS) $<
@@ -179,34 +188,46 @@ $(INSTALL_DBD)/%: ../%
%Record.h: %Record.dbd
$(RM) $@
$(EPICS_BASE)/bin/$(HOST_ARCH)/dbToRecordtypeH \
$(USER_DBDFLAGS) $<
$(EPICS_BASE_HOST_BIN)/dbToRecordtypeH \
$(DBDFLAGS) $<
%Record.h: ../%Record.dbd
$(RM) $@
$(EPICS_BASE)/bin/$(HOST_ARCH)/dbToRecordtypeH \
$(USER_DBDFLAGS) $<
$(EPICS_BASE_HOST_BIN)/dbToRecordtypeH \
$(DBDFLAGS) $<
menu%.h: menu%.dbd
$(RM) $@
$(EPICS_BASE)/bin/$(HOST_ARCH)/dbToMenuH $<
$(EPICS_BASE_HOST_BIN)/dbToMenuH $<
menu%.h: ../menu%.dbd
$(RM) $@
$(EPICS_BASE)/bin/$(HOST_ARCH)/dbToMenuH $<
$(EPICS_BASE_HOST_BIN)/dbToMenuH $<
bpt%.dbd: bpt%.data
$(RM) $@
$(EPICS_BASE)/bin/$(HOST_ARCH)/makeBpt $<
$(EPICS_BASE_HOST_BIN)/makeBpt $<
bpt%.dbd: ../bpt%.data
$(RM) $@
$(EPICS_BASE)/bin/$(HOST_ARCH)/makeBpt $<
$(EPICS_BASE_HOST_BIN)/makeBpt $<
# Patch for old applications
ifdef USER_DBDFLAGS
DBDFLAGS = $(USER_DBDFLAGS)
endif
ifdef DBDEXPAND
$(DBDNAME): ../$(DBDEXPAND)
@echo expanding dbd
@$(RM) $@
$(EPICS_BASE)/bin/$(HOST_ARCH)/dbExpand $(USER_DBDFLAGS) $< > $@
@$(RM) $@ $@-new
$(EPICS_BASE_HOST_BIN)/dbExpand $(DBDFLAGS) $< > $@-new
@$(MV) $@-new $@
ifneq (,$(wildcard ../base.dbd))
$(DBDNAME): ../base.dbd
endif
endif
$(LIBNAME): $(LIBOBJS)
@echo Building library $@

View File

@@ -1,3 +1,12 @@
#*************************************************************************
# 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.
#*************************************************************************
# $Id$
ifneq ($(strip $(LIBOBJS_$(ARCH_CLASS))),)
@@ -7,7 +16,7 @@ ifdef LIBOBJS_DEFAULT
LIBOBJS+=$(LIBOBJS_DEFAULT)
endif
endif
INCREC +=$(RECTYPES) $(MENUS)
INSTALL_PROD = $(PROD:%= $(INSTALL_BIN)/%)
INSTALL_LIBS = $(LIBNAME:%= $(INSTALL_BIN)/%)
@@ -33,26 +42,33 @@ INSTALL_DBDNAME = $(DBDNAME:%= $(INSTALL_DBD)/%)
MAN_DIRECTORY_TARGETS = $(foreach n, $(MANLIST),$(INSTALL_MAN)/man$(n))
# if we are not building base add base includes
#
#-----------------------------------------------------------------
# if we are not building base add base includes and dbd dirs
# (convenience for extensions and applications)
ifneq ($(EPICS_BASE),$(TOP))
ifneq ($(EPICS_BASE),$(INSTALL_LOCATION))
EPICS_INCLUDES += -I$(EPICS_BASE_INCLUDE) -I$(EPICS_BASE_INCLUDE)/os/$(OS_CLASS)
EPICS_DBDFLAGS += -I $(EPICS_BASE)/dbd
endif
endif
all:: install
build:: inc
rebuild:: clean install
pre_build::
build:: pre_build $(MENUS) $(RECTYPES) $(BPTS)\
$(LIBNAME) $(LIBNAME_CXX) $(TARGETS) $(PROD) $(DBDNAME)
$(LIBNAME) $(LIBNAME_CXX) $(TARGETS) $(PROD)
ifdef DBDEXPAND
build:: $(DBDNAME)
endif
inc:: $(INSTALL_INC) $(INSTALL_OSINC)
install:: inc buildInstall
install:: buildInstall
buildInstall :: build $(INSTALL_INCREC)\
$(INSTALL_LIBS) $(INSTALL_LIBS_CXX) \
@@ -69,13 +85,14 @@ endif
depends:: $(SRCS.c) $(SRCS.cc)
$(RM) DEPENDS
touch DEPENDS
ifneq ($(strip $(SRCS.c) $(SRCS.cc)),)
$(DEPENDS_RULE)
endif
clean::
@echo "Cleaning"
@$(RM) *.i *.o *.a *.out $(TARGETS) $(PROD) $(LIBNAME) $(INC) \
$(DBDINSTALL) $(MENUS) $(RECTYPES) $(BPTS) $(DBDNAME)
$(DBDINSTALL) $(MENUS) $(RECTYPES) $(BPTS) $(DBDNAME) *.c
# The order of the following dependencies is
# VERY IMPORTANT !!!!
@@ -137,13 +154,13 @@ endif
%.c: ../%.st
@echo "preprocessing $*.st"
@$(RM) $*.i
$(CPP) $(CPPFLAGS) $(CPPSNCFLAGS) $< $*.i
$(CPP) $(CPPFLAGS) $(CPPSNCFLAGS) $< > $*.i
@echo "converting $*.i"
@$(RM) $@
$(SNC) $(TARGET_SNCFLAGS) $(SNCFLAGS) $*.i
%.c: %.stt
@echo "converting $<
%.c: ../%.stt
@echo "converting $<"
ln -s $< $*.st
$(SNC) $(TARGET_SNCFLAGS) $(SNCFLAGS) $*.st
@$(RM) $*.st
@@ -186,34 +203,42 @@ $(INSTALL_DBD)/%: ../%
%Record.h: %Record.dbd
$(RM) $@
$(EPICS_BASE)/bin/$(HOST_ARCH)/dbToRecordtypeH$(EXE) \
$(USER_DBDFLAGS) $<
$(EPICS_BASE_HOST_BIN)/dbToRecordtypeH$(EXE) \
$(DBDFLAGS) $<
%Record.h: ../%Record.dbd
$(RM) $@
$(EPICS_BASE)/bin/$(HOST_ARCH)/dbToRecordtypeH$(EXE) \
$(USER_DBDFLAGS) $<
$(EPICS_BASE_HOST_BIN)/dbToRecordtypeH$(EXE) \
$(DBDFLAGS) $<
menu%.h: menu%.dbd
$(RM) $@
$(EPICS_BASE)/bin/$(HOST_ARCH)/dbToMenuH$(EXE) $<
$(EPICS_BASE_HOST_BIN)/dbToMenuH$(EXE) $<
menu%.h: ../menu%.dbd
$(RM) $@
$(EPICS_BASE)/bin/$(HOST_ARCH)/dbToMenuH$(EXE) $<
$(EPICS_BASE_HOST_BIN)/dbToMenuH$(EXE) $<
bpt%.dbd: bpt%.data
$(RM) $@
$(EPICS_BASE)/bin/$(HOST_ARCH)/makeBpt$(EXE) $<
$(EPICS_BASE_HOST_BIN)/makeBpt$(EXE) $<
bpt%.dbd: ../bpt%.data
$(RM) $@
$(EPICS_BASE)/bin/$(HOST_ARCH)/makeBpt$(EXE) $<
$(EPICS_BASE_HOST_BIN)/makeBpt$(EXE) $<
# Patch for old applications
ifdef USER_DBDFLAGS
DBDFLAGS = $(USER_DBDFLAGS)
endif
ifdef DBDEXPAND
$(DBDNAME): ../$(DBDEXPAND)
@echo expanding dbd
@$(RM) $@
$(EPICS_BASE)/bin/$(HOST_ARCH)/dbExpand$(EXE) $(USER_DBDFLAGS) $< > $@
@echo Expanding dbd
@$(RM) $@ $@-new
$(EPICS_BASE_HOST_BIN)/dbExpand$(EXE) $(DBDFLAGS) $< > $@-new
@$(MV) $@-new $@
endif
$(LIBNAME): $(LIBOBJS)
@echo Building library $@
@@ -284,7 +309,13 @@ $(INSTALL_HTML)/$(HTMLS_DIR)/%: ../%
ifneq (,$(wildcard ../baseLIBOBJS))
$(LIBNAME): ../baseLIBOBJS
endif
ifneq (,$(wildcard ../base.dbd))
$(DBDNAME): ../base.dbd $(RECTYPES:%.h=../%.dbd)
else
$(DBDNAME): $(RECTYPES:%.h=../%.dbd)
endif
#=====> ???? the following line causes a rebuild every time
#=====> $(LIBNAME): ../Makefile.Vx
$(DBDNAME): ../base.dbd $(RECTYPES:%.h=../%.dbd)

View File

@@ -1,3 +1,12 @@
#*************************************************************************
# 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.
#*************************************************************************
#
# $Id$
#

View File

@@ -1,38 +1,47 @@
#*************************************************************************
# 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.
#*************************************************************************
#
# $Id$
#
ARCHS += $(BUILD_ARCHS) host cross
ACTIONS += clean inc depends buildInstall
ACTIONS += clean inc depends build install buildInstall
dirPart = $(word 1, $(subst $(DIVIDER), ,$@))
actionArchPart = $(subst $(dirPart)$(DIVIDER), ,$@)
actionArchPart = $(join $(word 2, $(subst $(DIVIDER), ,$@)), \
$(addprefix $(DIVIDER),$(word 3, $(subst $(DIVIDER), ,$@))))
dirActionArchTargets = $(foreach dir, $(DIRS), \
$(foreach action, $(ACTIONS) install,\
$(foreach action, $(ACTIONS),\
$(foreach arch, $(ARCHS), \
$(dir)$(DIVIDER)$(action)$(DIVIDER)$(arch))))
dirArchTargets += $(foreach dir, $(DIRS), \
$(foreach arch, $(ARCHS),\
$(dir)$(DIVIDER)$(arch)))
dirActionTargets += $(foreach dir, $(DIRS), \
$(foreach action, $(ACTIONS) install,\
$(foreach action, $(ACTIONS),\
$(dir)$(DIVIDER)$(action)))
actionArchTargets = $(foreach action, $(ACTIONS) install,\
actionArchTargets = $(foreach action, $(ACTIONS),\
$(foreach arch, $(ARCHS), \
$(action)$(DIVIDER)$(arch)))
installArchTargets = $(foreach action, install,\
$(foreach arch, $(ARCHS), \
$(action)$(DIVIDER)$(arch)))
ifeq ($(MAKE_INC_TARGET_FIRST),YES)
all install :: inc buildInstall
$(ARCHS) $(installArchTargets) :: inc
else
all install :: buildInstall
endif
rebuild:: clean all
$(ARCHS) $(installArchTargets) :: inc
$(DIRS) $(dirActionTargets) $(dirArchTargets)$(dirActionArchTargets) ::
$(MAKE) -C $(dirPart) $(actionArchPart)
@@ -40,11 +49,9 @@ $(ARCHS) $(ACTIONS) $(actionArchTargets) ::%: \
$(foreach dir, $(DIRS), $(dir)$(DIVIDER)%)
.PHONY :: $(DIRS) all install rebuild
.PHONY :: $(DIRS) all rebuild
.PHONY :: $(ARCHS) $(ACTIONS)
.PHONY :: $(dirActionTargets) $(dirArchTargets)
.PHONY :: $(dirActionArchTargets)
.PHONY :: $(actionArchTargets)
.PHONY :: $(installArchTargets)

View File

@@ -1,16 +1,39 @@
#*************************************************************************
# 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.
#*************************************************************************
#
# $Id$
#
include $(TOP)/config/RULES_DIRS
uninstall$(DIVIDER)%::
@$(RMDIR) rec.bak rec
@$(RMDIR) $(INSTALL_LOCATION_BIN)/$* $(INSTALL_LOCATION_LIB)/$* \
$(INSTALL_DBD) $(INSTALL_MAN) $(INSTALL_INCLUDE) \
$(INSTALL_HTML) $(INSTALL_JAVA) $(INSTALL_TEMPLATES)
uninstall$(DIVIDER)%: uninstallDirs
@$(RMDIR) $(INSTALL_LOCATION_BIN)/$* $(INSTALL_LOCATION_LIB)/$*
cleandirs:
@echo " " #stops "nothing to be done for cleandirs" message
ifeq ($(wildcard $(INSTALL_LOCATION_BIN)/*),)
@$(RMDIR) $(INSTALL_LOCATION_BIN)
endif
ifeq ($(wildcard $(INSTALL_LOCATION_LIB)/*),)
@$(RMDIR) $(INSTALL_LOCATION_LIB)
endif
distclean: clean uninstall
uninstall:: $(addprefix uninstall$(DIVIDER),$(BUILD_ARCHS))
@$(MAKE) -f Makefile cleandirs
uninstallDirs:
@$(RMDIR) rec.bak rec
@$(RMDIR) $(INSTALL_DBD) $(INSTALL_MAN) $(INSTALL_INCLUDE) $(INSTALL_DOC)\
$(INSTALL_HTML) $(INSTALL_JAVA) $(INSTALL_TEMPLATES)
tar:
@DIRNAME=$(notdir $(shell pwd)); \
@@ -46,6 +69,5 @@ help:
@echo "Indiv. object targets are supported by O.<arch> level Makefile .e.g"
@echo " xxxRecord.o"
.PHONY :: uninstall tar help
.PHONY :: $(addprefix uninstall$(DIVIDER), $(BUILDARCHS))
.PHONY :: uninstall tar help cleandirs distclean uninstallDirs

View File

@@ -1,3 +1,12 @@
#*************************************************************************
# 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.
#*************************************************************************
# Makefile.Host for base/src/sample
#
#

View File

@@ -1,3 +1,12 @@
#*************************************************************************
# 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.
#*************************************************************************
#
# $Id$
#

36
src/as/As.rc Executable file
View File

@@ -0,0 +1,36 @@
#include <Winver.h>
#include "epicsVersion.h"
VS_VERSION_INFO VERSIONINFO
FILEVERSION BASE_VERSION,BASE_REVISION,BASE_MODIFICATION,BASE_UPDATE_LEVEL
PRODUCTVERSION BASE_VERSION,BASE_REVISION,BASE_MODIFICATION,BASE_UPDATE_LEVEL
FILEFLAGSMASK 0x3fL
#ifdef _DEBUG
FILEFLAGS 0x1L
#else
FILEFLAGS 0x0L
#endif
FILEOS VOS__WINDOWS32
FILETYPE VFT_UNKNOWN
FILESUBTYPE 0x0L
BEGIN
BLOCK "StringFileInfo"
BEGIN
BLOCK "040904b0"
BEGIN
VALUE "Comments","Access Security Library for EPICS\0"
VALUE "CompanyName", "The EPICS collaboration\0"
VALUE "FileDescription", "Access Security Library\0"
VALUE "FileVersion", BASE_VERSION_STRING "\0"
VALUE "InternalName", "as\0"
VALUE "LegalCopyright", "Copyright (C) Univ. of California, Univ. of Chicago\0"
VALUE "OriginalFilename", "as.dll\0"
VALUE "ProductName", "Experimental Physics and Industrial Control System (EPICS)\0"
VALUE "ProductVersion", BASE_VERSION_STRING "\0"
END
END
BLOCK "VarFileInfo"
BEGIN
VALUE "Translation", 0x409, 1200
END
END

View File

@@ -1,3 +1,12 @@
#*************************************************************************
# 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.
#*************************************************************************
TOP=../..

View File

@@ -1,10 +1,17 @@
#*************************************************************************
# 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.
#*************************************************************************
TOP = ../../..
include $(TOP)/config/CONFIG_BASE
USR_CFLAGS += -D_NO_PROTO
INC := asDbLib.h asLib.h
# build lib As from asLib.c:
#
LIBSRCS := asLib.c
@@ -16,9 +23,12 @@ LIBRARY := As
#
SYS_PROD_LIBS_DEFAULT := m
SYS_PROD_LIBS_WIN32 := -nil-
PROD_LIBS := As Com Db Com
PROD_LIBS := As Db Com
PROD := ascheck
ascheck_SRCS=ascheck.c
As_RCS_WIN32 = As.rc
include $(TOP)/config/RULES.Host

View File

@@ -1,10 +1,19 @@
#*************************************************************************
# 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.
#*************************************************************************
TOP = ../../..
include $(TOP)/config/CONFIG_BASE
USR_CFLAGS = -DACCESS_SECURITY -D_NO_PROTO
SRCS.c = ../asDbLib.c ../asCa.c asLib.c
LIBOBJS = asDbLib.o asCa.o asLib.o
SRCS.c = ../asDbLib.c ../asCa.c ../asTrapWrite.c asLib.c
LIBOBJS = asDbLib.o asCa.o asTrapWrite.o asLib.o
LIBNAME = asLibrary
include $(TOP)/config/RULES.Vx

View File

@@ -1,22 +1,15 @@
/*************************************************************************\
* 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.
\*************************************************************************/
/* share/src/as/asCa.c */
/* share/src/as $Id$ */
/* Author: Marty Kraimer Date: 10-15-93 */
/*****************************************************************
COPYRIGHT NOTIFICATION
*****************************************************************
(C) COPYRIGHT 1993 UNIVERSITY OF CHICAGO
This software was developed under a United States Government license
described on the COPYRIGHT_UniversityOfChicago file included as part
of this distribution.
**********************************************************************/
/*
*
* Modification Log:
* -----------------
* .01 03-22-94 mrk Initial Implementation
*/
/*This module is separate from asDbLib because CA uses old database access*/
#include <vxWorks.h>
@@ -52,6 +45,19 @@ typedef struct {
chid chid;
} CAPVT;
static void exceptionCallback(struct exception_handler_args args)
{
chid chid = args.chid;
long stat = args.stat; /* Channel access status code*/
const char *channel;
static char *noname = "unknown";
channel = (chid ? ca_name(chid) : noname);
errlogPrintf("asCa:exceptionCallback stat %s channel %s\n",
ca_message(stat),channel);
}
/*connectCallback only handles disconnects*/
LOCAL void connectCallback(struct connection_handler_args arg)
{
@@ -135,6 +141,8 @@ LOCAL void asCaTask(void)
taskwdInsert(taskIdSelf(),NULL,NULL);
SEVCHK(ca_task_initialize(),"ca_task_initialize");
SEVCHK(ca_add_exception_event(exceptionCallback,NULL),
"ca_add_exception_event");
while(TRUE) {
if(semTake(asCaTaskAddChannels,WAIT_FOREVER)!=OK) {
epicsPrintf("asCa semTake error for asCaTaskClearChannels\n");
@@ -234,3 +242,44 @@ void asCaStop(void)
if(asCaDebug) printf("asCaStop done\n");
semGive(asCaTaskLock);
}
int ascar(int level)
{
ASG *pasg;
int n=0,nbad=0;
enum channel_state state;
if(!pasbase) {
printf("access security not started\n");
return(0);
}
pasg = (ASG *)ellFirst(&pasbase->asgList);
while(pasg) {
ASGINP *pasginp;
pasginp = (ASGINP *)ellFirst(&pasg->inpList);
while(pasginp) {
CAPVT *pcapvt = (CAPVT *)pasginp->capvt;
chid chid = pcapvt->chid;
pcapvt = pasginp->capvt;
++n;
state = ca_state(chid);
if(state!=cs_conn) ++nbad;
if(level>1 || (level==1 && state!=cs_conn)) {
printf("connected:");
if(state==cs_never_conn) printf("never ");
else if(state==cs_prev_conn) printf("prev ");
else if(state==cs_conn) printf("yes ");
else if(state==cs_closed) printf("closed");
else printf("unknown");
printf(" read:%s write:%s",
(ca_read_access(chid) ? "yes" : "no "),
(ca_write_access(chid) ? "yes" : "no "));
printf(" %s %s\n", ca_name(chid),ca_host_name(chid));
}
pasginp = (ASGINP *)ellNext((ELLNODE *)pasginp);
}
pasg = (ASG *)ellNext((ELLNODE *)pasg);
}
printf("%d channels %d not connected\n",n,nbad);
return(0);
}

View File

@@ -1,22 +1,15 @@
/*************************************************************************\
* 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.
\*************************************************************************/
/* share/src/as/asDbLib.c */
/* share/src/as $Id$ */
/* Author: Marty Kraimer Date: 02-11-94*/
/*****************************************************************
COPYRIGHT NOTIFICATION
*****************************************************************
(C) COPYRIGHT 1993 UNIVERSITY OF CHICAGO
This software was developed under a United States Government license
described on the COPYRIGHT_UniversityOfChicago file included as part
of this distribution.
**********************************************************************/
/*
* Modification Log:
* -----------------
* .01 02-11-94 mrk Initial Implementation
*/
#include <vxWorks.h>
#include <taskLib.h>
@@ -114,7 +107,11 @@ static long asInitCommon(void)
firstTime = FALSE;
if(!pacf) return(0); /*access security will NEVER be turned on*/
} else {
if(!asActive) return(S_asLib_asNotActive);
if(!asActive) {
printf("Access security is NOT enabled."
" Was asSetFilename specified before iocInit?\n");
return(S_asLib_asNotActive);
}
if(pacf) {
asCaStop();
} else { /*Just leave everything as is */
@@ -131,9 +128,6 @@ static long asInitCommon(void)
int asInit(void)
{
/*If no access configuration file defined return success*/
if(!pacf) return(0);
return(asInitCommon());
}

View File

@@ -1,45 +0,0 @@
/* share/epicsH/dbAsLib.h */
/* $Id$ */
/* Author: Marty Kraimer Date: 02-23-94*/
/*****************************************************************
COPYRIGHT NOTIFICATION
*****************************************************************
(C) COPYRIGHT 1993 UNIVERSITY OF CHICAGO
This software was developed under a United States Government license
described on the COPYRIGHT_UniversityOfChicago file included as part
of this distribution.
**********************************************************************/
/*
* Modification Log:
* -----------------
* .01 02-23-94 mrk Initial Implementation
*/
#ifndef INCdbAsLibh
#define INCdbAsLibh
#include <asLib.h>
#include <callback.h>
typedef struct {
CALLBACK callback;
long status;
} ASDBCALLBACK;
int asSetFilename(char *acf);
int asSetSubstitutions(char *substitutions);
int asInit(void);
int asInitAsyn(ASDBCALLBACK *pcallback);
int asDbGetAsl( void *paddr);
ASMEMBERPVT asDbGetMemberPvt( void *paddr);
int asdbdump( void);
int aspuag(char *uagname);
int asphag(char *hagname);
int asprules(char *asgname);
int aspmem(char *asgname,int clients);
void asCaStart(void);
void asCaStop(void);
#endif /*INCdbAsLibh*/

View File

@@ -1,192 +0,0 @@
/* $Id$ */
/* Author: Marty Kraimer Date: 09-27-93*/
/*****************************************************************
COPYRIGHT NOTIFICATION
*****************************************************************
(C) COPYRIGHT 1993 UNIVERSITY OF CHICAGO
This software was developed under a United States Government license
described on the COPYRIGHT_UniversityOfChicago file included as part
of this distribution.
**********************************************************************/
/*
* Modification Log:
* -----------------
* .01 09-27-93 mrk Initial Implementation
*/
#ifndef INCasLibh
#define INCasLibh
#include <stddef.h>
#include <stdlib.h>
#include <stdio.h>
#include <errMdef.h>
#include <ellLib.h>
typedef struct asgMember *ASMEMBERPVT;
typedef struct asgClient *ASCLIENTPVT;
typedef int (*ASINPUTFUNCPTR)(char *buf,int max_size);
typedef enum{
asClientCOAR /*Change of access rights*/
/*For now this is all*/
} asClientStatus;
typedef void (*ASCLIENTCALLBACK) (ASCLIENTPVT,asClientStatus);
/* The following routines are macros with the following syntax
long asCheckGet(ASCLIENTPVT asClientPvt);
long asCheckPut(ASCLIENTPVT asClientPvt);
*/
#define asCheckGet(asClientPvt)\
(asActive ?\
((asClientPvt)->access>=asREAD ? TRUE : FALSE)\
: TRUE)
#define asCheckPut(asClientPvt)\
(asActive ?\
((asClientPvt)->access>=asWRITE ? TRUE : FALSE)\
: TRUE)
epicsShareFunc int epicsShareAPI asInit(void);
epicsShareFunc long epicsShareAPI asInitialize(ASINPUTFUNCPTR inputfunction);
epicsShareFunc long epicsShareAPI asInitFile(const char *filename,const char *substitutions);
epicsShareFunc long epicsShareAPI asInitFP(FILE *fp,const char *substitutions);
/*caller must provide permanent storage for asgName*/
epicsShareFunc long epicsShareAPI asAddMember(ASMEMBERPVT *asMemberPvt,char *asgName);
epicsShareFunc long epicsShareAPI asRemoveMember(ASMEMBERPVT *asMemberPvt);
/*caller must provide permanent storage for newAsgName*/
epicsShareFunc long epicsShareAPI asChangeGroup(ASMEMBERPVT *asMemberPvt,char *newAsgName);
epicsShareFunc void * epicsShareAPI asGetMemberPvt(ASMEMBERPVT asMemberPvt);
epicsShareFunc void epicsShareAPI asPutMemberPvt(ASMEMBERPVT asMemberPvt,void *userPvt);
/*client must provide permanent storage for user and host*/
epicsShareFunc long epicsShareAPI asAddClient(ASCLIENTPVT *asClientPvt,ASMEMBERPVT asMemberPvt,
int asl,char *user,char *host);
/*client must provide permanent storage for user and host*/
epicsShareFunc long epicsShareAPI asChangeClient(ASCLIENTPVT asClientPvt,int asl,char *user,char *host);
epicsShareFunc long epicsShareAPI asRemoveClient(ASCLIENTPVT *asClientPvt);
epicsShareFunc void * epicsShareAPI asGetClientPvt(ASCLIENTPVT asClientPvt);
epicsShareFunc void epicsShareAPI asPutClientPvt(ASCLIENTPVT asClientPvt,void *userPvt);
epicsShareFunc long epicsShareAPI asRegisterClientCallback(ASCLIENTPVT asClientPvt,
ASCLIENTCALLBACK pcallback);
epicsShareFunc long epicsShareAPI asComputeAllAsg(void);
/* following declared below after ASG is declared
epicsShareFunc long epicsShareAPI asComputeAsg(ASG *pasg);
*/
epicsShareFunc long epicsShareAPI asCompute(ASCLIENTPVT asClientPvt);
epicsShareFunc int epicsShareAPI asDump(void (*memcallback)(ASMEMBERPVT),
void (*clientcallback)(ASCLIENTPVT),int verbose);
epicsShareFunc int epicsShareAPI asDumpUag(char *uagname);
epicsShareFunc int epicsShareAPI asDumpHag(char *hagname);
epicsShareFunc int epicsShareAPI asDumpRules(char *asgname);
epicsShareFunc int epicsShareAPI asDumpMem(char *asgname,void (*memcallback)(ASMEMBERPVT),int clients);
epicsShareFunc int epicsShareAPI asDumpHash(void);
#define S_asLib_clientsExist (M_asLib| 1) /*Client Exists*/
#define S_asLib_noUag (M_asLib| 2) /*User Access Group does not exist*/
#define S_asLib_noHag (M_asLib| 3) /*Host Access Group does not exist*/
#define S_asLib_noAccess (M_asLib| 4) /*access security: no access allowed*/
#define S_asLib_noModify (M_asLib| 5) /*access security: no modification allowed*/
#define S_asLib_badConfig (M_asLib| 6) /*access security: bad configuration file*/
#define S_asLib_badCalc (M_asLib| 7) /*access security: bad calculation espression*/
#define S_asLib_dupAsg (M_asLib| 8) /*Duplicate Access Security Group */
#define S_asLib_InitFailed (M_asLib| 9) /*access security: Init failed*/
#define S_asLib_asNotActive (M_asLib|10) /*access security is not active*/
#define S_asLib_badMember (M_asLib|11) /*access security: bad ASMEMBERPVT*/
#define S_asLib_badClient (M_asLib|12) /*access security: bad ASCLIENTPVT*/
#define S_asLib_badAsg (M_asLib|13) /*access security: bad ASG*/
#define S_asLib_noMemory (M_asLib|14) /*access security: no Memory */
/*Private declarations */
#define ASMAXINP 12
extern int asActive;
/* definition of access rights*/
typedef enum{asNOACCESS,asREAD,asWRITE} asAccessRights;
/*Base pointers for access security*/
typedef struct asBase{
ELLLIST uagList;
ELLLIST hagList;
ELLLIST asgList;
void *phash;
} ASBASE;
/*Defs for User Access Groups*/
typedef struct{
ELLNODE node;
char *user;
} UAGNAME;
typedef struct uag{
ELLNODE node;
char *name;
ELLLIST list; /*list of UAGNAME*/
} UAG;
/*Defs for Host Access Groups*/
typedef struct{
ELLNODE node;
char *host;
} HAGNAME;
typedef struct hag{
ELLNODE node;
char *name;
ELLLIST list; /*list of HAGNAME*/
} HAG;
/*Defs for Access SecurityGroups*/
typedef struct {
ELLNODE node;
UAG *puag;
}ASGUAG;
typedef struct {
ELLNODE node;
HAG *phag;
}ASGHAG;
typedef struct{
ELLNODE node;
asAccessRights access;
int level;
int inpUsed; /*mask for which inputs are used*/
int result; /*Result of calc converted to TRUE/FALSE*/
char *calc;
void *rpcl;
ELLLIST uagList; /*List of ASGUAG*/
ELLLIST hagList; /*List of ASGHAG*/
} ASGRULE;
typedef struct{
ELLNODE node;
char *inp;
void *capvt;
struct asg *pasg;
int inpIndex;
}ASGINP;
typedef struct asg{
ELLNODE node;
char *name;
ELLLIST inpList;
ELLLIST ruleList;
ELLLIST memberList;
double *pavalue; /*pointer to array of input values*/
int inpBad; /*mask for which inputs are bad*/
int inpChanged; /*mask showing inputs that have changed*/
} ASG;
typedef struct asgMember {
ELLNODE node;
ASG *pasg;
ELLLIST clientList;
char *asgName;
void *userPvt;
} ASGMEMBER;
typedef struct asgClient {
ELLNODE node;
ASGMEMBER *pasgMember;
char *user;
char *host;
void *userPvt;
ASCLIENTCALLBACK pcallback;
int level;
asAccessRights access;
} ASGCLIENT;
epicsShareFunc long epicsShareAPI asComputeAsg(ASG *pasg);
/*following is "friend" function*/
void * asCalloc(size_t nobj,size_t size);
#endif /*INCasLibh*/

View File

@@ -1,3 +1,12 @@
/*************************************************************************\
* 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.
\*************************************************************************/
%{
static int yyerror();
static int yy_start;
@@ -16,7 +25,7 @@ static ASGRULE *yyAsgRule=NULL;
%token tokenUAG tokenHAG tokenASG tokenRULE tokenCALC
%token <Str> tokenINP
%token <Int> tokenINTEGER
%token <Str> tokenNAME tokenSTRING
%token <Str> tokenSTRING
%union
{
@@ -39,7 +48,7 @@ asconfig_item: tokenUAG uag_head uag_body
| tokenASG asg_head
;
uag_head: '(' tokenNAME ')'
uag_head: '(' tokenSTRING ')'
{
yyUag = asUagAdd($2);
if(!yyUag) yyerror("");
@@ -57,19 +66,15 @@ uag_user_list: uag_user_list ',' uag_user_list_name
| uag_user_list_name
;
uag_user_list_name: tokenNAME
uag_user_list_name: tokenSTRING
{
long status;
status = asUagAddUser(yyUag,$1);
if(status) {
if (asUagAddUser(yyUag,$1))
yyerror($1);
}
free((void *)$1);
}
;
hag_head: '(' tokenNAME ')'
hag_head: '(' tokenSTRING ')'
{
yyHag = asHagAdd($2);
if(!yyHag) yyerror("");
@@ -84,19 +89,15 @@ hag_user_list: hag_user_list ',' hag_user_list_name
| hag_user_list_name
;
hag_user_list_name: tokenNAME
hag_user_list_name: tokenSTRING
{
long status;
status = asHagAddHost(yyHag,$1);
if(status) {
if (asHagAddHost(yyHag,$1))
yyerror("");
}
free((void *)$1);
}
;
asg_head: '(' tokenNAME ')'
asg_head: '(' tokenSTRING ')'
{
yyAsg = asAsgAdd($2);
if(!yyAsg) yyerror("");
@@ -116,23 +117,21 @@ asg_body_item: inp_config | rule_config
inp_config: tokenINP '(' inp_body ')'
{
long status;
status = asAsgAddInp(yyAsg,$<Str>3,$<Int>1);
if(status) {
if (asAsgAddInp(yyAsg,$<Str>3,$<Int>1))
yyerror("");
}
free((void *)$<Str>3);
}
;
inp_body: tokenNAME
inp_body: tokenSTRING
;
rule_config: tokenRULE rule_head rule_body
| tokenRULE rule_head
rule_head: '(' tokenINTEGER ',' tokenNAME ')'
rule_head: rule_head_manditory rule_head_options
rule_head_manditory: '(' tokenINTEGER ',' tokenSTRING
{
asAccessRights rights;
@@ -151,6 +150,21 @@ rule_head: '(' tokenINTEGER ',' tokenNAME ')'
}
;
rule_head_options: ')'
| rule_log_options
rule_log_options: ',' tokenSTRING ')'
{
if((strcmp($2,"TRAPWRITE")==0)) {
long status;
status = asAsgAddRuleOptions(yyAsgRule,AS_TRAP_WRITE);
if(status) yyerror("");
} else if((strcmp($2,"NOTRAPWRITE")!=0)) {
yyerror("Illegal access type");
}
free((void *)$2);
}
;
rule_body: '{' rule_list '}'
;
@@ -163,12 +177,8 @@ rule_list_item: tokenUAG '(' rule_uag_list ')'
| tokenHAG '(' rule_hag_list ')'
| tokenCALC '(' tokenSTRING ')'
{
long status;
status = asAsgRuleCalc(yyAsgRule,$3);
if(status){
yyerror("access security CALC failure");
}
if (asAsgRuleCalc(yyAsgRule,$3))
yyerror("access security CALC failure");
free((void *)$3);
}
;
@@ -177,14 +187,10 @@ rule_uag_list: rule_uag_list ',' rule_uag_list_name
| rule_uag_list_name
;
rule_uag_list_name: tokenNAME
rule_uag_list_name: tokenSTRING
{
long status;
status = asAsgRuleUagAdd(yyAsgRule,$1);
if(status) {
yyerror("");
}
if (asAsgRuleUagAdd(yyAsgRule,$1))
yyerror("");
free((void *)$1);
}
;
@@ -193,14 +199,10 @@ rule_hag_list: rule_hag_list ',' rule_hag_list_name
| rule_hag_list_name
;
rule_hag_list_name: tokenNAME
rule_hag_list_name: tokenSTRING
{
long status;
status = asAsgRuleHagAdd(yyAsgRule,$1);
if(status) {
yyerror("");
}
if (asAsgRuleHagAdd(yyAsgRule,$1))
yyerror("");
free((void *)$1);
}
;
@@ -225,7 +227,7 @@ static int myParse(ASINPUTFUNCPTR inputfunction)
if (!FirstFlag) {
line_num=1;
yyFailed = FALSE;
yyreset(NULL);
yyreset();
yyrestart(NULL);
}
FirstFlag = 0;

View File

@@ -1,23 +1,15 @@
/*************************************************************************\
* 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.
\*************************************************************************/
/* share/src/as/asLibRoutines.c */
/* share/src/as $Id$ */
/* Author: Marty Kraimer Date: 10-15-93 */
/*****************************************************************
COPYRIGHT NOTIFICATION
*****************************************************************
(C) COPYRIGHT 1993 UNIVERSITY OF CHICAGO
This software was developed under a United States Government license
described on the COPYRIGHT_UniversityOfChicago file included as part
of this distribution.
**********************************************************************/
/*
* Modification Log:
* -----------------
* .01 10-15-93 mrk Initial Implementation
*/
#ifdef vxWorks
#include <vxWorks.h>
@@ -77,6 +69,7 @@ static long asHagAddHost(HAG *phag,char *host);
static ASG *asAsgAdd(char *asgName);
static long asAsgAddInp(ASG *pasg,char *inp,int inpIndex);
static ASGRULE *asAsgAddRule(ASG *pasg,asAccessRights access,int level);
static long asAsgAddRuleOptions(ASGRULE *pasgrule,int trapMask);
static long asAsgRuleUagAdd(ASGRULE *pasgrule,char *name);
static long asAsgRuleHagAdd(ASGRULE *pasgrule,char *name);
static long asAsgRuleCalc(ASGRULE *pasgrule,char *calc);
@@ -477,6 +470,7 @@ long epicsShareAPI asCompute(ASCLIENTPVT asClientPvt)
/*The dump routines do not lock. Thus they may get inconsistant data.*/
/*HOWEVER if they did lock and a user interrupts one of then then BAD BAD*/
static char *asAccessName[] = {"NONE","READ","WRITE"};
static char *asTrapOption[] = {"NOTRAPWRITE","TRAPWRITE"};
static char *asLevelName[] = {"ASL0","ASL1"};
int epicsShareAPI asDump(
void (*memcallback)(struct asgMember *),
@@ -553,8 +547,9 @@ int epicsShareAPI asDump(
while(pasgrule) {
int print_end_brace;
printf("\tRULE(%d,%s)",
pasgrule->level,asAccessName[pasgrule->access]);
printf("\tRULE(%d,%s,%s)",
pasgrule->level,asAccessName[pasgrule->access],
asTrapOption[pasgrule->trapMask]);
pasguag = (ASGUAG *)ellFirst(&pasgrule->uagList);
pasghag = (ASGHAG *)ellFirst(&pasgrule->hagList);
if(pasguag || pasghag || pasgrule->calc) {
@@ -604,7 +599,9 @@ int epicsShareAPI asDump(
else
printf(" Illegal Level %d",pasgclient->level);
if(pasgclient->access>=0 && pasgclient->access<=2)
printf(" %s",asAccessName[pasgclient->access]);
printf(" %s %s",
asAccessName[pasgclient->access],
asTrapOption[pasgclient->trapMask]);
else
printf(" Illegal Access %d",pasgclient->access);
if(clientcallback) clientcallback(pasgclient);
@@ -710,8 +707,9 @@ int epicsShareAPI asDumpRules(char *asgname)
while(pasgrule) {
int print_end_brace;
printf("\tRULE(%d,%s)",
pasgrule->level,asAccessName[pasgrule->access]);
printf("\tRULE(%d,%s,%s)",
pasgrule->level,asAccessName[pasgrule->access],
asTrapOption[pasgrule->trapMask]);
pasguag = (ASGUAG *)ellFirst(&pasgrule->uagList);
pasghag = (ASGHAG *)ellFirst(&pasgrule->hagList);
if(pasguag || pasghag || pasgrule->calc) {
@@ -783,7 +781,9 @@ int epicsShareAPI asDumpMem(char *asgname,void (*memcallback)(ASMEMBERPVT),int c
else
printf(" Illegal Level %d",pasgclient->level);
if(pasgclient->access>=0 && pasgclient->access<=2)
printf(" %s",asAccessName[pasgclient->access]);
printf(" %s %s",
asAccessName[pasgclient->access],
asTrapOption[pasgclient->trapMask]);
else
printf(" Illegal Access %d",pasgclient->access);
printf("\n");
@@ -909,6 +909,7 @@ static long asComputeAsgPvt(ASG *pasg)
static long asComputePvt(ASCLIENTPVT asClientPvt)
{
asAccessRights access=asNOACCESS;
int trapMask=0;
ASGCLIENT *pasgclient = asClientPvt;
ASGMEMBER *pasgMember;
ASG *pasg;
@@ -961,12 +962,15 @@ check_hag:
}
check_calc:
if(!pasgrule->calc
|| (!(pasg->inpBad & pasgrule->inpUsed) && (pasgrule->result==1)))
|| (!(pasg->inpBad & pasgrule->inpUsed) && (pasgrule->result==1))) {
access = pasgrule->access;
trapMask = pasgrule->trapMask;
}
next_rule:
pasgrule = (ASGRULE *)ellNext((ELLNODE *)pasgrule);
}
pasgclient->access = access;
pasgclient->trapMask = trapMask;
if(pasgclient->pcallback && oldaccess!=access) {
(*pasgclient->pcallback)(pasgclient,asClientCOAR);
}
@@ -1205,6 +1209,7 @@ static ASGRULE *asAsgAddRule(ASG *pasg,asAccessRights access,int level)
if(!pasg) return(0);
pasgrule = asCalloc(1,sizeof(ASGRULE));
pasgrule->access = access;
pasgrule->trapMask = 0;
pasgrule->level = level;
ellInit(&pasgrule->uagList);
ellInit(&pasgrule->hagList);
@@ -1212,6 +1217,16 @@ static ASGRULE *asAsgAddRule(ASG *pasg,asAccessRights access,int level)
return(pasgrule);
}
static long asAsgAddRuleOptions(ASGRULE *pasgrule,int trapMask)
{
if(!pasgrule) {
errMessage(S_asLib_badConfig," Access Security internal failure");
return(0);
}
pasgrule->trapMask = trapMask;
return(0);
}
static long asAsgRuleUagAdd(ASGRULE *pasgrule,char *name)
{
ASGUAG *pasguag;

View File

@@ -1,3 +1,12 @@
/*************************************************************************\
* 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.
\*************************************************************************/
integer [0-9]
name [a-zA-Z0-9_\-:\.\[\]<>;]
notquote [^\"]
@@ -39,7 +48,7 @@ INP[A-L] {/* If A-L is changed then ASMAXINP must also be changed*/
{name}+ { /*unquoted string*/
yylval.Str=(char *)asCalloc(1,strlen(yytext)+1);
strcpy(yylval.Str,yytext);
return(tokenNAME);
return(tokenSTRING);
}
\"{string}*\" { /*quoted string*/

165
src/as/asTrapWrite.c Normal file
View File

@@ -0,0 +1,165 @@
/*************************************************************************\
* 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.
\*************************************************************************/
/*asTrapWrite.c */
/* Author: Marty Kraimer Date: 07NOV2000 */
/* Matthias Clausen and Vladis Korobov at DESY
* implemented the first logging of Channel Access Puts
* This implementation uses many ideas from their implementation
*/
#include <stdlib.h>
#include <stddef.h>
#include <stdio.h>
#include <string.h>
#include "callback.h"
#include "freeList.h"
#include "asLib.h"
#include "asTrapWrite.h"
#include "semLib.h"
#include "ellLib.h"
typedef struct listenerPvt {
ELLNODE node;
struct listener *plistener;
void *userPvt;
}listenerPvt;
typedef struct listener{
ELLNODE node;
asTrapWriteListener func;
}listener;
typedef struct writeMessage {
ELLNODE node;
asTrapWriteMessage message;
ELLLIST listenerPvtList;
}writeMessage;
typedef struct asTrapWritePvt
{
ELLLIST listenerList;
ELLLIST writeMessageList;
void *freeListWriteMessage;
void *freeListListenerPvt;
SEM_ID lock;
}asTrapWritePvt;
static asTrapWritePvt *pasTrapWritePvt = 0;
static void asTrapWriteInit(void)
{
pasTrapWritePvt = calloc(1,sizeof(asTrapWritePvt));
ellInit(&pasTrapWritePvt->listenerList);
ellInit(&pasTrapWritePvt->writeMessageList);
freeListInitPvt(
&pasTrapWritePvt->freeListWriteMessage,sizeof(writeMessage),20);
freeListInitPvt(
&pasTrapWritePvt->freeListListenerPvt,sizeof(listenerPvt),20);
pasTrapWritePvt->lock = semMCreate(
SEM_DELETE_SAFE|SEM_INVERSION_SAFE|SEM_Q_PRIORITY);
}
asTrapWriteId epicsShareAPI asTrapWriteRegisterListener(
asTrapWriteListener func)
{
listener *plistener;
if(pasTrapWritePvt==0) asTrapWriteInit();
plistener = calloc(1,sizeof(listener));
plistener->func = func;
semTake(pasTrapWritePvt->lock,WAIT_FOREVER);
ellAdd(&pasTrapWritePvt->listenerList,&plistener->node);
semGive(pasTrapWritePvt->lock);
return((asTrapWriteId)plistener);
}
void epicsShareAPI asTrapWriteUnregisterListener(asTrapWriteId id)
{
listener *plistener = (listener *)id;
writeMessage *pwriteMessage;
if(pasTrapWritePvt==0) return;
semTake(pasTrapWritePvt->lock,WAIT_FOREVER);
pwriteMessage = (writeMessage *)ellFirst(&pasTrapWritePvt->writeMessageList);
while(pwriteMessage) {
listenerPvt *plistenerPvt
= (listenerPvt *)ellFirst(&pwriteMessage->listenerPvtList);
while(plistenerPvt) {
listenerPvt *pnext
= (listenerPvt *)ellNext(&plistenerPvt->node);
if(plistenerPvt->plistener == plistener) {
ellDelete(&pwriteMessage->listenerPvtList,&plistenerPvt->node);
freeListFree(pasTrapWritePvt->freeListListenerPvt,(void *)plistenerPvt);
}
plistenerPvt = pnext;
}
pwriteMessage = (writeMessage *)ellNext(&pwriteMessage->node);
}
ellDelete(&pasTrapWritePvt->listenerList,&plistener->node);
free((void *)plistener);
semGive(pasTrapWritePvt->lock);
}
void * epicsShareAPI asTrapWriteBeforeWrite(
char *userid,char *hostid,void *addr)
{
writeMessage *pwriteMessage;
listener *plistener;
listenerPvt *plistenerPvt;
if(pasTrapWritePvt==0) return(0);
if(ellCount(&pasTrapWritePvt->listenerList)<=0) return 0;
pwriteMessage = (writeMessage *)freeListCalloc(
pasTrapWritePvt->freeListWriteMessage);
pwriteMessage->message.userid = userid;
pwriteMessage->message.hostid = hostid;
pwriteMessage->message.serverSpecific = addr;
ellInit(&pwriteMessage->listenerPvtList);
semTake(pasTrapWritePvt->lock,WAIT_FOREVER);
ellAdd(&pasTrapWritePvt->writeMessageList,&pwriteMessage->node);
plistener = (listener *)ellFirst(&pasTrapWritePvt->listenerList);
while(plistener) {
plistenerPvt = (listenerPvt *)freeListCalloc(
pasTrapWritePvt->freeListListenerPvt);
plistenerPvt->plistener = plistener;
pwriteMessage->message.userPvt = 0;
(*plistener->func)(&pwriteMessage->message,0);
plistenerPvt->userPvt = pwriteMessage->message.userPvt;
ellAdd(&pwriteMessage->listenerPvtList,&plistenerPvt->node);
plistener = (listener *)ellNext(&plistener->node);
}
semGive(pasTrapWritePvt->lock);
return((void *)pwriteMessage);
}
void epicsShareAPI asTrapWriteAfterWrite(void *pvt)
{
writeMessage *pwriteMessage = (writeMessage *)pvt;
listenerPvt *plistenerPvt;
if(pwriteMessage==0 || pasTrapWritePvt==0) return;
semTake(pasTrapWritePvt->lock,WAIT_FOREVER);
plistenerPvt = (listenerPvt *)ellFirst(&pwriteMessage->listenerPvtList);
while(plistenerPvt) {
listenerPvt *pnext = (listenerPvt *)ellNext(&plistenerPvt->node);
listener *plistener;
plistener = plistenerPvt->plistener;
pwriteMessage->message.userPvt = plistenerPvt->userPvt;
(*plistener->func)(&pwriteMessage->message,1);
ellDelete(&pwriteMessage->listenerPvtList,&plistenerPvt->node);
freeListFree(pasTrapWritePvt->freeListListenerPvt,(void *)plistenerPvt);
plistenerPvt = pnext;
}
ellDelete(&pasTrapWritePvt->writeMessageList,&pwriteMessage->node);
freeListFree(pasTrapWritePvt->freeListWriteMessage,(void *)pwriteMessage);
semGive(pasTrapWritePvt->lock);
}

View File

@@ -1,21 +1,15 @@
/*************************************************************************\
* 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.
\*************************************************************************/
/* share/src/as/ascheck.c */
/* share/src/as $Id$ */
/* Author: Marty Kraimer Date: 03-24-94 */
/*****************************************************************
COPYRIGHT NOTIFICATION
*****************************************************************
(C) COPYRIGHT 1993 UNIVERSITY OF CHICAGO
This software was developed under a United States Government license
described on the COPYRIGHT_UniversityOfChicago file included as part
of this distribution.
**********************************************************************/
/* Modification Log:
* -----------------
* .01 03-24-94 mrk Initial Implementation
*/
#include <stdlib.h>
#include <stddef.h>

View File

@@ -1,3 +1,12 @@
#*************************************************************************
# 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.
#*************************************************************************
TOP=../..

View File

@@ -1,3 +1,12 @@
#*************************************************************************
# 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.
#*************************************************************************
TOP = ../../..
include $(TOP)/config/CONFIG_BASE

View File

@@ -1,3 +1,12 @@
#*************************************************************************
# 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.
#*************************************************************************
TOP = ../../..
include $(TOP)/config/CONFIG_BASE

View File

@@ -1,3 +1,12 @@
/*************************************************************************\
* 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.
\*************************************************************************/
/* $Id$ */
/* cvtBpt.c - Convert using breakpoint table
@@ -6,31 +15,6 @@
* Date: 04OCT95
* This is adaptation of old bldCvtTable
*
* Experimental Physics and Industrial Control System (EPICS)
*
* Copyright 1991, the Regents of the University of California,
* and the University of Chicago Board of Governors.
*
* This software was produced under U.S. Government contracts:
* (W-7405-ENG-36) at the Los Alamos National Laboratory,
* and (W-31-109-ENG-38) at Argonne National Laboratory.
*
* Initial development by:
* The Controls and Automation Group (AT-8)
* Ground Test Accelerator
* Accelerator Technology Division
* Los Alamos National Laboratory
*
* Co-developed with
* The Controls and Computing Group
* Accelerator Systems Division
* Advanced Photon Source
* Argonne National Laboratory
*
*
* Modification Log:
* -----------------
* 01 04OCT95 mrk Taken from old bldCvtTable
*/
#include <vxWorks.h>
#include <stdlib.h>

View File

@@ -1,35 +1,18 @@
/*************************************************************************\
* 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.
\*************************************************************************/
/* $Id$
* Breakpoint Tables
*
* Author: Marty Kraimer
* Date: 11-7-90
*
* Experimental Physics and Industrial Control System (EPICS)
*
* Copyright 1991, the Regents of the University of California,
* and the University of Chicago Board of Governors.
*
* This software was produced under U.S. Government contracts:
* (W-7405-ENG-36) at the Los Alamos National Laboratory,
* and (W-31-109-ENG-38) at Argonne National Laboratory.
*
* Initial development by:
* The Controls and Automation Group (AT-8)
* Ground Test Accelerator
* Accelerator Technology Division
* Los Alamos National Laboratory
*
* Co-developed with
* The Controls and Computing Group
* Accelerator Systems Division
* Advanced Photon Source
* Argonne National Laboratory
*
* Modification Log:
* -----------------
* .01 05-18-92 rcz removed extern
* .02 05-18-92 rcz new database access
* .03 08-19-92 jba add prototypes for cvtRawToEngBpt,cvtEngToRawBpt
*/
#ifndef INCcvtTableh

View File

@@ -1,32 +1,16 @@
/*************************************************************************\
* 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.
\*************************************************************************/
/* $Id$
* Author: Marty Kraimer
* Date: 9/28/95
* Replacement for old bldCvtTable
*
* Experimental Physics and Industrial Control System (EPICS)
*
* Copyright 1991, the Regents of the University of California,
* and the University of Chicago Board of Governors.
*
* This software was produced under U.S. Government contracts:
* (W-7405-ENG-36) at the Los Alamos National Laboratory,
* and (W-31-109-ENG-38) at Argonne National Laboratory.
*
* Initial development by:
* The Controls and Automation Group (AT-8)
* Ground Test Accelerator
* Accelerator Technology Division
* Los Alamos National Laboratory
*
* Co-developed with
* The Controls and Computing Group
* Accelerator Systems Division
* Advanced Photon Source
* Argonne National Laboratory
*
* Modification Log:
* -----------------
* .01 28SEP95 mrk Replace old bldCvtTable
*/
#include <stdlib.h>

View File

@@ -1,3 +1,12 @@
#*************************************************************************
# 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.
#*************************************************************************
menu(menuConvert) {
choice(menuConvertNO_CONVERSION,"NO CONVERSION")
choice(menuConvertLINEAR,"LINEAR")

View File

@@ -1,3 +1,12 @@
#*************************************************************************
# 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.
#*************************************************************************
TOP=../..

View File

@@ -1,15 +1,20 @@
#*************************************************************************
# 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.
#*************************************************************************
# Makefile.Host
TOP = ../../..
include $(TOP)/config/CONFIG_BASE
CMPLR = STRICT
#
# includes to install from this subproject
#
INC += cadef.h
INC += caerr.h
INC += caeventmask.h
INC += caProto.h
#
@@ -39,23 +44,20 @@ LIBSRCS += repeater.c
#
LIBRARY := ca
ca_RCS_WIN32 = ca.rc
# build LIBRARY as a DLL on WIN32, other systems may ignore this
LIBTYPE := SHARED
PROD := caRepeater
caRepeater_SRCS=caRepeater.c
# libs needed to build [TEST]PRODUCT
PROD_LIBS := ca Com
SYS_PROD_LIBS_WIN32 := ws2_32 user32 advapi32
TESTPROD := catime acctst
TESTPROD := catime acctst caEventRate
include $(TOP)/config/RULES.Host
pcatime : catime.o $(PRODDEPLIBS)
$(PURIFY) $(LINK.c) catime.o $(LDLIBS)
pacctst : acctst.o $(PRODDEPLIBS)
$(PURIFY) $(LINK.c) acctst.o $(LDLIBS)
# EOF Makefile.Host

View File

@@ -1,3 +1,12 @@
#*************************************************************************
# 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.
#*************************************************************************
TOP = ../../..
include $(TOP)/config/CONFIG_BASE
@@ -10,7 +19,7 @@ SRCS.c = \
LIBOBJS = \
iocinf.o access.o test_event.o service.o flow_control.o \
repeater.o conn.o syncgrp.o if_depen.o bsd_depen.o vxWorks_depen.o \
convert.o
catime.o convert.o
LIBNAME = caLib

View File

@@ -1,3 +1,12 @@
/*************************************************************************\
* 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.
\*************************************************************************/
static char *sccsId = "@(#)V5_vxWorks_patch.c 1.2\t7/27/92";

View File

@@ -1,3 +1,12 @@
/*************************************************************************\
* 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.
\*************************************************************************/
/* $Id$ */
/************************************************************************/
/* */
@@ -99,6 +108,42 @@
/************************************************************************/
/*
* $Log$
* Revision 1.107.2.10 2002/05/28 18:41:41 jhill
* fixed ellFree cause malloc and free to be in different win32 dlls
*
* Revision 1.107.2.9 2002/03/14 01:13:57 jhill
* fixed put notify shutdown during channel delete
*
* Revision 1.107.2.8 2002/03/08 00:25:08 jhill
* fixed bug where the db_put_field in the local event callback stub was supplied
* with a destination that was the database field. In situations where the dbAccess
* db_access field types were different the database was damaged.
*
* Revision 1.107.2.7 2001/09/18 12:17:48 mrk
* increased stack size for cac_recv_task from 4096 to 8192
*
* Revision 1.107.2.6 2000/11/30 22:07:50 jhill
* changes from Ken Evans
*
* Revision 1.107.2.5 2000/08/29 20:03:04 jhill
* fixed alignment bug check on hosts that have 64 bit longs
*
* Revision 1.107.2.4 2000/06/28 15:48:43 mrk
* remove blank from task name
*
* Revision 1.107.2.3 2000/06/28 15:41:15 jhill
* changed "m_type" to "m_dataType" in order to avoid collision
* with MACRO supplied by WRS's Tornado II product
*
* Revision 1.107.2.2 1999/09/02 21:16:40 jhill
* fixed missing paramter to checkConnWatchDogs() func
*
* Revision 1.107.2.1 1999/07/15 20:23:57 jhill
* fixed bug where client disconnects while waiting to send TCP
*
* Revision 1.107 1998/10/27 00:43:27 jhill
* eliminated warning
*
* Revision 1.106 1998/09/25 00:20:56 jhill
* fixed warnings
*
@@ -393,6 +438,7 @@ const void *pext
* ring buffer size.
*/
if (msgsize>piiu->send.max_msg) {
UNLOCK;
return ECA_TOLARGE;
}
@@ -407,6 +453,16 @@ const void *pext
if (piiu->state==iiu_connected) {
(*piiu->sendBytes)(piiu);
}
/*
* if connection drops request
* cant be completed
*/
if (piiu->state!=iiu_connected) {
UNLOCK;
return ECA_DISCONNCHID;
}
bytesAvailable =
cacRingBufferWriteSize(&piiu->send, contig);
@@ -431,19 +487,20 @@ const void *pext
UNLOCK;
LD_CA_TIME (cac_fetch_poll_period(), &itimeout);
cac_mux_io (&itimeout, FALSE);
LOCK;
/*
* if connection drops request
* cant be completed
*/
if (piiu->state!=iiu_connected) {
UNLOCK;
return ECA_DISCONNCHID;
}
LD_CA_TIME (cac_fetch_poll_period(), &itimeout);
cac_mux_io (&itimeout);
LOCK;
bytesAvailable = cacRingBufferWriteSize(
&piiu->send, contig);
}
@@ -706,11 +763,12 @@ int ca_os_independent_init (void)
* init broadcasted search counters
* (current time must be initialized before calling this)
*/
ca_static->ca_search_tries_congest_thresh = UINT_MAX;
ca_static->ca_search_responses = 0u;
ca_static->ca_search_tries = 0u;
ca_static->ca_search_retry_seq_no = 0u;
ca_static->ca_seq_no_at_list_begin = 0u;
ca_static->ca_frames_per_try = TRIESPERFRAME;
ca_static->ca_frames_per_try = INITIALTRIESPERFRAME;
ca_static->ca_conn_next_retry = ca_static->currentTime;
cacSetRetryInterval (0u);
@@ -795,7 +853,7 @@ void cac_create_udp_fd()
if(status<0)
genLocalExcep (ECA_INTERNAL,NULL);
strcpy(name,"RD ");
strcpy(name,"RD_");
strncat(
name,
taskName(VXTHISTASKID),
@@ -805,7 +863,7 @@ void cac_create_udp_fd()
name,
pri+1,
VX_FP_TASK,
4096,
8192,
(FUNCPTR)cac_recv_task,
(int)taskIdCurrent,
0,
@@ -924,7 +982,7 @@ void ca_process_exit()
/*
* free address list
*/
ellFree(&piiu->destAddr);
ellFreeCA(&piiu->destAddr);
piiu = (struct ioc_in_use *) piiu->node.next;
}
@@ -936,10 +994,10 @@ void ca_process_exit()
caIOBlockListFree (&ca_static->ca_pend_write_list, NULL, FALSE, ECA_INTERNAL);
/* remove any pending io event blocks */
ellFree(&ca_static->ca_ioeventlist);
ellFreeCA(&ca_static->ca_ioeventlist);
/* remove put convert block free list */
ellFree(&ca_static->putCvrtBuf);
ellFreeCA(&ca_static->putCvrtBuf);
/* reclaim sync group resources */
ca_sg_shutdown(ca_static);
@@ -948,13 +1006,13 @@ void ca_process_exit()
freeListCleanup(ca_static->ca_ioBlockFreeListPVT);
/* free select context lists */
ellFree(&ca_static->fdInfoFreeList);
ellFree(&ca_static->fdInfoList);
ellFreeCA(&ca_static->fdInfoFreeList);
ellFreeCA(&ca_static->fdInfoList);
/*
* remove IOCs in use
*/
ellFree(&ca_static->ca_iiuList);
ellFreeCA(&ca_static->ca_iiuList);
/*
* free user name string
@@ -1200,7 +1258,7 @@ int reply_type
mptr->m_cmmd = htons (CA_PROTO_SEARCH);
mptr->m_available = chix->cid;
mptr->m_type = reply_type;
mptr->m_dataType = reply_type;
mptr->m_count = htons (CA_MINOR_VERSION);
mptr->m_cid = chix->cid;
@@ -1531,7 +1589,7 @@ LOCAL int issue_get_callback(evid monix, ca_uint16_t cmmd)
/* msg header only on db read notify req */
hdr.m_cmmd = htons (cmmd);
hdr.m_type = htons ((ca_uint16_t)monix->type);
hdr.m_dataType = htons ((ca_uint16_t)monix->type);
hdr.m_count = htons (count);
hdr.m_available = monix->id;
hdr.m_postsize = 0;
@@ -1655,6 +1713,7 @@ const void *usrarg
ppn->dbPutNotify.pbuffer = (ppn+1);
}
ppn->busy = TRUE;
ppn->onExtraLaborQueue = FALSE;
ppn->caUserCallback = pfunc;
ppn->caUserArg = (void *) usrarg;
ppn->dbPutNotify.nRequest = count;
@@ -1754,6 +1813,7 @@ LOCAL void ca_put_notify_action(PUTNOTIFY *ppn)
* one client on another client).
*/
semTake(pcas->ca_putNotifyLock, WAIT_FOREVER);
pcapn->onExtraLaborQueue = TRUE;
ellAdd(&pcas->ca_putNotifyQue, &pcapn->node);
semGive(pcas->ca_putNotifyLock);
@@ -1909,11 +1969,11 @@ const void *pvalue
while (TRUE) {
switch (type) {
case DBR_LONG:
*(long *)pdest = htonl (*(dbr_long_t *)pvalue);
*(dbr_long_t *)pdest = htonl (*(dbr_long_t *)pvalue);
break;
case DBR_CHAR:
*(char *)pdest = *(dbr_char_t *)pvalue;
*(dbr_char_t *)pdest = *(dbr_char_t *)pvalue;
break;
case DBR_ENUM:
@@ -1923,7 +1983,7 @@ const void *pvalue
# if DBR_INT != DBR_SHORT
case DBR_INT:
# endif /*DBR_INT != DBR_SHORT*/
*(short *)pdest = htons (*(dbr_short_t *)pvalue);
*(dbr_short_t *)pdest = htons (*(dbr_short_t *)pvalue);
break;
case DBR_FLOAT:
@@ -1959,7 +2019,7 @@ const void *pvalue
# endif /*CONVERSION_REQUIRED*/
hdr.m_cmmd = htons(cmd);
hdr.m_type = htons((ca_uint16_t)type);
hdr.m_dataType = htons((ca_uint16_t)type);
hdr.m_count = htons((ca_uint16_t)count);
hdr.m_cid = chix->id.sid;
hdr.m_available = id;
@@ -2309,7 +2369,7 @@ int ca_request_event(evid monix)
/* msg header */
msg.m_header.m_cmmd = htons(CA_PROTO_EVENT_ADD);
msg.m_header.m_available = monix->id;
msg.m_header.m_type = htons((ca_uint16_t)monix->type);
msg.m_header.m_dataType = htons((ca_uint16_t)monix->type);
msg.m_header.m_count = htons(count);
msg.m_header.m_cid = chix->id.sid;
msg.m_header.m_postsize = sizeof(msg.m_info);
@@ -2367,53 +2427,46 @@ db_field_log *pfl
count = monix->count;
}
if(monix->type == paddr->dbr_field_type){
pval = paddr->pfield;
status = OK;
}
else{
size = dbr_size_n(monix->type,count);
size = dbr_size_n(monix->type,count);
if( size <= sizeof(valbuf) ){
pval = (void *) &valbuf;
}
else{
/*
* find a preallocated block which fits
* (stored with largest block first)
*/
LOCK;
pbuf = (struct tmp_buff *)
lcl_buff_list.node.next;
if(pbuf && pbuf->size >= size){
ellDelete(
&lcl_buff_list,
&pbuf->node);
}else
pbuf = NULL;
UNLOCK;
/*
* test again so malloc is not inside LOCKED
* section
*/
if(!pbuf){
pbuf = (struct tmp_buff *)
malloc(sizeof(*pbuf)+size);
if(!pbuf){
ca_printf("%s: No Mem, Event Discarded\n",
__FILE__);
return;
}
pbuf->size = size;
}
pval = (void *) (pbuf+1);
}
if( size <= sizeof(valbuf) ){
pval = (void *) &valbuf;
}
else{
/*
* find a preallocated block which fits
* (stored with largest block first)
*/
LOCK;
pbuf = (struct tmp_buff *)
lcl_buff_list.node.next;
if(pbuf && pbuf->size >= size){
ellDelete(
&lcl_buff_list,
&pbuf->node);
}else
pbuf = NULL;
UNLOCK;
status = db_get_field( paddr,
/*
* test again so malloc is not inside LOCKED
* section
*/
if(!pbuf){
pbuf = (struct tmp_buff *)
malloc(sizeof(*pbuf)+size);
if(!pbuf){
ca_printf("%s: No Mem, Event Discarded\n",
__FILE__);
return;
}
pbuf->size = size;
}
pval = (void *) (pbuf+1);
}
status = db_get_field( paddr,
monix->type,
pval,
count,
@@ -2550,7 +2603,7 @@ int epicsShareAPI ca_clear_event (evid monix)
/* msg header */
hdr.m_cmmd = htons(CA_PROTO_EVENT_CANCEL);
hdr.m_available = pMon->id;
hdr.m_type = htons(chix->privType);
hdr.m_dataType = htons(chix->privType);
hdr.m_count = htons(chix->privCount);
hdr.m_cid = chix->id.sid;
hdr.m_postsize = 0;
@@ -2659,6 +2712,16 @@ int epicsShareAPI ca_clear_channel (chid pChan)
if(ppn->busy){
dbNotifyCancel(&ppn->dbPutNotify);
}
semTake (ca_static->ca_putNotifyLock, WAIT_FOREVER);
if ( ppn->onExtraLaborQueue ) {
ellDelete( &ca_static->ca_putNotifyQue, &ppn->node );
}
semGive (ca_static->ca_putNotifyLock);
status = db_flush_extra_labor_event (ca_static->ca_evuser );
assert ( status == OK );
free(ppn);
}
@@ -2703,7 +2766,7 @@ int epicsShareAPI ca_clear_channel (chid pChan)
hdr.m_cmmd = htons(CA_PROTO_CLEAR_CHANNEL);
hdr.m_available = pChan->cid;
hdr.m_cid = pChan->id.sid;
hdr.m_type = htons(0);
hdr.m_dataType = htons(0);
hdr.m_count = htons(0);
hdr.m_postsize = 0;
@@ -2809,7 +2872,7 @@ int epicsShareAPI ca_pend (ca_real timeout, int early)
* force the flush
*/
CLR_CA_TIME (&tmo);
cac_mux_io(&tmo);
cac_mux_io(&tmo, TRUE);
return ECA_NORMAL;
}
@@ -2818,7 +2881,7 @@ int epicsShareAPI ca_pend (ca_real timeout, int early)
* force the flush
*/
CLR_CA_TIME (&tmo);
cac_mux_io(&tmo);
cac_mux_io(&tmo, TRUE);
return ECA_TIMEOUT;
}
@@ -2832,7 +2895,7 @@ int epicsShareAPI ca_pend (ca_real timeout, int early)
* force the flush
*/
CLR_CA_TIME (&tmo);
cac_mux_io(&tmo);
cac_mux_io(&tmo, TRUE);
return ECA_NORMAL;
}
if(timeout == 0.0){
@@ -3036,7 +3099,7 @@ int epicsShareAPI ca_flush_io()
*/
ca_static->ca_flush_pending = TRUE;
CLR_CA_TIME (&timeout);
cac_mux_io (&timeout);
cac_mux_io (&timeout, TRUE);
return ECA_NORMAL;
}
@@ -3261,7 +3324,7 @@ int echo_request(struct ioc_in_use *piiu, ca_time *pCurrentTime)
int status;
hdr.m_cmmd = htons(CA_PROTO_ECHO);
hdr.m_type = htons(0);
hdr.m_dataType = htons(0);
hdr.m_count = htons(0);
hdr.m_cid = htons(0);
hdr.m_available = htons(0);
@@ -3295,7 +3358,7 @@ void noop_msg(struct ioc_in_use *piiu)
int status;
hdr.m_cmmd = htons(CA_PROTO_NOOP);
hdr.m_type = htons(0);
hdr.m_dataType = htons(0);
hdr.m_count = htons(0);
hdr.m_cid = htons(0);
hdr.m_available = htons(0);
@@ -3670,7 +3733,7 @@ int ca_channel_status(int tid)
* ca_replace_printf_handler ()
*/
int epicsShareAPI ca_replace_printf_handler (
int (*ca_printf_func)(const char *pformat, va_list args)
int (epicsShareAPIV *ca_printf_func)(const char *pformat, va_list args)
)
{
INITCHK;
@@ -3694,7 +3757,7 @@ int (*ca_printf_func)(const char *pformat, va_list args)
*/
int epicsShareAPI ca_printf(char *pformat, ...)
{
int (*ca_printf_func)(const char *pformat, va_list args);
int ( epicsShareAPIV *ca_printf_func )(const char *pformat, va_list args);
va_list theArgs;
int status;

View File

@@ -1,3 +1,12 @@
/*************************************************************************\
* 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.
\*************************************************************************/
/*
* CA test/debug routine
@@ -7,6 +16,13 @@ static char *sccsId = "@(#) $Id$";
/*
* $Log$
* Revision 1.56.2.1 2000/06/28 15:41:17 jhill
* changed "m_type" to "m_dataType" in order to avoid collision
* with MACRO supplied by WRS's Tornado II product
*
* Revision 1.56 1998/10/27 00:47:28 jhill
* fixed warnings
*
* Revision 1.55 1998/09/24 21:11:38 jhill
* verify that conn is dropped when channel count goes to zero
*
@@ -1245,8 +1261,6 @@ void test_sync_groups(chid chix)
printf("done\n");
}
/*
* multiple_sg_requests()
*/

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