Compare commits

..

1078 Commits

Author SHA1 Message Date
Janet B. Anderson
115f2b8a1e Bug fix 1997-05-08 18:28:06 +00:00
Janet B. Anderson
fefb8454c7 R3_13_0_beta9 1997-05-06 19:10:05 +00:00
Janet B. Anderson
e4cf1df857 Removed unused lines. 1997-05-06 15:55:23 +00:00
Janet B. Anderson
f3bd38caca Added comments 1997-05-06 15:54:34 +00:00
Janet B. Anderson
c104460654 Added cygwin32 changes. 1997-05-05 18:31:00 +00:00
Janet B. Anderson
fc3db2c3bf Allow site host architecture specific overrides 1997-05-05 17:56:58 +00:00
Janet B. Anderson
41e02220d1 Knts no longer needed. 1997-05-05 17:55:36 +00:00
Janet B. Anderson
8f5061b28e Initial version 1997-05-05 17:54:37 +00:00
Jeff Hill
5898d94c4c fixed use of event->pLastLog when event->npend should be used 1997-05-05 17:39:44 +00:00
Janet B. Anderson
b2ced4889b Modifications made for beta9. 1997-05-05 17:37:44 +00:00
Janet B. Anderson
a65e5f1f73 Removed redundant prototype 1997-05-05 17:31:05 +00:00
Marty Kraimer
839b8bdb5f Increase buffer size to 5000 bytes 1997-05-05 13:09:01 +00:00
Jeff Hill
421d98a936 moved pLog = NULL down 1997-05-05 04:50:11 +00:00
Jeff Hill
95b6d4a998 moved flow control to db event module 1997-05-05 04:49:16 +00:00
Jeff Hill
cc2ea961d7 added use of db events flow control 1997-05-05 04:48:30 +00:00
Jeff Hill
3a0de109a3 removed eventsoff flag 1997-05-05 04:47:54 +00:00
Jeff Hill
41aad467a6 added flow control mode 1997-05-05 04:46:14 +00:00
Jeff Hill
ebf6c4932a send_needed => pushPending, and added ca_number_iiu_in_fc 1997-05-05 04:45:25 +00:00
Jeff Hill
b587d3639f socket buf matches CA buf size, and pushPending flag added 1997-05-05 04:44:39 +00:00
Jeff Hill
7408f7f29f added ca_number_iiu_in_fc maintenance code 1997-05-05 04:43:37 +00:00
Jeff Hill
e2baae4281 fixed flow control off 1997-05-05 04:42:49 +00:00
Jeff Hill
b61b816c49 send_needed replaced by pushPending flag 1997-05-05 04:40:29 +00:00
Marty Kraimer
5257374a73 Allow null string 1997-05-02 20:19:56 +00:00
Marty Kraimer
f732ff2505 suppress error messages if dbCreateRecord called for existing record 1997-05-02 20:18:15 +00:00
Janet B. Anderson
8e2e15194a Added note about perl version. 1997-05-02 19:04:05 +00:00
Janet B. Anderson
4a3993c4e5 R3.13 updates 1997-05-02 16:25:42 +00:00
Janet B. Anderson
f11dadd032 Added missing definitions. 1997-05-02 16:24:31 +00:00
Janet B. Anderson
881cbd60e3 Added support for LIBNAME_CXX and BIN_INSTALLS 1997-05-02 16:22:20 +00:00
Jeff Hill
598e87d598 include getopt.h only on win32 1997-05-02 01:21:20 +00:00
Jeff Hill
6e8fc4f9c1 dll keyword adj 1997-05-01 23:57:50 +00:00
Jeff Hill
1be3c39e50 added getopt prototype (for NT) 1997-05-01 23:56:32 +00:00
Jeff Hill
fc48d2dd1d removed redundant prototype 1997-05-01 23:54:20 +00:00
Jeff Hill
11084a5dfc removed redundant prototypes 1997-05-01 23:52:14 +00:00
Jeff Hill
7946e9b921 DLL keyword adjustments 1997-05-01 23:51:07 +00:00
Jeff Hill
2a1f06cd2a replaced by installEpics.pl 1997-05-01 22:05:11 +00:00
Marty Kraimer
ccf3271fe1 Bug in dbDevice 1997-05-01 21:23:30 +00:00
Jeff Hill
c99ee0317c fixed conflict 1997-05-01 20:43:12 +00:00
Jeff Hill
5bf13da02c fixed conflict >>>>> 1997-05-01 20:30:15 +00:00
Jeff Hill
cbd5d9a36e removed conflict >>>>> 1997-05-01 20:26:07 +00:00
Jeff Hill
bb8e8f46cb new header file for ipAddrToA() 1997-05-01 19:59:09 +00:00
Jeff Hill
6b6e5e7515 updated dll keywords 1997-05-01 19:57:53 +00:00
Jeff Hill
0b0b23c6d6 removed ipAddrToA () prototype 1997-05-01 19:53:28 +00:00
Jeff Hill
1ed2559cc3 fixed unintialized variable bug 1997-05-01 19:46:32 +00:00
Jeff Hill
9a068b824d updated DLL keywords 1997-05-01 19:46:05 +00:00
Marty Kraimer
32a847087d Get rid of a lot of compiler warning messages 1997-04-30 19:22:22 +00:00
Marty Kraimer
67fbf5b746 For now keep both makeBaseApp and makeBaseApp.pl; Make compatible 1997-04-30 19:21:30 +00:00
Marty Kraimer
a0e8290c50 Fix compiler warning messages 1997-04-30 19:20:13 +00:00
Marty Kraimer
7cde4f8f2b Fixed most compiler warning messages 1997-04-30 19:20:01 +00:00
Marty Kraimer
437142b5bb Fix compiler warning messages 1997-04-30 19:12:25 +00:00
Marty Kraimer
42adbd20c8 move errhash defs. Add modules to Makefiles 1997-04-30 19:11:22 +00:00
Marty Kraimer
85a2ef6e4d Fix long memory free list problem 1997-04-30 19:10:04 +00:00
Marty Kraimer
62ce79e147 Extra useful routines. First is dbTranslateEscape 1997-04-30 19:07:57 +00:00
Marty Kraimer
3a840f6e2f Still original version 1997-04-30 19:04:09 +00:00
Marty Kraimer
69c62573b0 added function prototypes that have no nice place to go 1997-04-30 19:02:55 +00:00
Marty Kraimer
e1e8a34b2f Fixed many compiler warning messages 1997-04-30 19:02:21 +00:00
Marty Kraimer
13c9ae5fe3 Get rid of 1997-04-30 19:01:32 +00:00
Marty Kraimer
6912ff4929 Take VX_WARN_YES from config 1997-04-30 19:00:45 +00:00
Marty Kraimer
0e387c8936 Fixed most compiler warning mesdsages 1997-04-30 18:59:04 +00:00
Marty Kraimer
e8e3b5226e Fixed most compiler warning messages 1997-04-30 18:58:52 +00:00
Marty Kraimer
b87f049c2d Replace dbVarSub with macLib.
Allow C style escape sequences
Fix long vx memory free list problem
Fix most compiler warning messages
1997-04-30 18:54:10 +00:00
Marty Kraimer
0d7698e0d4 Allow c type escape sequences; Fix problem of long vx free memory list 1997-04-30 18:48:42 +00:00
Marty Kraimer
ebbaee5ed2 Fix compiler flags 1997-04-30 18:39:18 +00:00
Marty Kraimer
bff266bef3 Fixed compiler warning messages 1997-04-30 18:37:50 +00:00
Marty Kraimer
1d6f9f80f6 added dbGetPdbAddrFromLink. Fixed cimpiler warning messages 1997-04-30 18:36:33 +00:00
Marty Kraimer
8a298ab07c Fix compiler warning messages 1997-04-30 18:29:35 +00:00
Marty Kraimer
7f317f4d55 replace bcopt by memcpy 1997-04-30 18:28:08 +00:00
Marty Kraimer
50b19bc74f fix compiler warning messages 1997-04-30 18:26:53 +00:00
Marty Kraimer
9f35f8043e VX_WARN_YES = -Wall -pedantic -ansi 1997-04-30 18:23:47 +00:00
Jeff Hill
19091f245b fixed warnings 1997-04-29 06:50:35 +00:00
Jeff Hill
0bc395108d C++ compatibility 1997-04-29 06:34:39 +00:00
Jeff Hill
2b6367e1d4 use matching buffer sizes 1997-04-29 06:22:10 +00:00
Jeff Hill
6fb8477b3a C++ compatibility 1997-04-29 06:21:13 +00:00
Jeff Hill
39c22d2ee0 use free lists 1997-04-29 06:17:18 +00:00
Jeff Hill
721840498c use const in inet_addr () proto 1997-04-29 06:16:23 +00:00
Jeff Hill
56e35d8305 fixed exit when working problem 1997-04-29 06:15:34 +00:00
Jeff Hill
a42a244aed reserve less event buffers 1997-04-29 06:15:00 +00:00
Jeff Hill
b8dba0a4ad fixed warnings 1997-04-29 06:10:25 +00:00
Jeff Hill
fe9f9b91fb local host connect compatible 1997-04-29 06:07:16 +00:00
Jeff Hill
206a04e15f use free list 1997-04-29 06:05:57 +00:00
Jeff Hill
db11fd957d use matching buffer sizes 1997-04-23 17:27:01 +00:00
Jeff Hill
2517d52437 fixed WIN32 DLL symbol exports 1997-04-23 17:23:05 +00:00
Jeff Hill
f85aba61ed removed ipAddrToA.cc 1997-04-23 17:20:18 +00:00
Jeff Hill
147403b0e5 added new func and removed variables 1997-04-23 17:19:03 +00:00
Jeff Hill
afa84f396b added additional error codes 1997-04-23 17:17:29 +00:00
Jeff Hill
9888b965d8 rem _WINDLL => bad when other DLLs involved 1997-04-23 17:15:55 +00:00
Jeff Hill
c3e2f58d96 fixed export of symbols from WIN32 DLL 1997-04-23 17:13:07 +00:00
Jeff Hill
697200e942 fixed warnings 1997-04-23 17:12:19 +00:00
Jeff Hill
33b940562e min() => tsMin() also max 1997-04-23 17:11:50 +00:00
Jeff Hill
08f2298215 stringId::T[] => stringIdFastHash[] 1997-04-23 17:11:15 +00:00
Jeff Hill
8c992ed466 init ref differently for MS VC++ 1997-04-23 17:07:23 +00:00
Jeff Hill
c442950e5f min() => tsMin() 1997-04-23 17:06:44 +00:00
Jeff Hill
0a5dffc069 pc port changes 1997-04-23 17:05:10 +00:00
Jeff Hill
744a0de15d fixed win32 lib build 1997-04-23 17:00:19 +00:00
Jeff Hill
7c42f005db remove -D_REENTRANT flag 1997-04-23 16:55:23 +00:00
Jeff Hill
652cb0d66c added optimize/debug flags 1997-04-23 16:54:44 +00:00
Jeff Hill
9f77fbccd1 .EPICS_CONFIG => EPICS_CONFIG for win32 1997-04-23 16:50:55 +00:00
Jeff Hill
de2864a5a5 removed files 1997-04-21 15:02:52 +00:00
Jeff Hill
2caf1628ca added b-tree templ 1997-04-11 20:53:38 +00:00
Jeff Hill
f1865a507c added no arg reset() to bwd iter 1997-04-11 20:49:48 +00:00
Jeff Hill
8013fecb61 kay's perl branch 1997-04-11 20:44:03 +00:00
Jeff Hill
8d6deea83d merged Kay's perl proto branch 1997-04-11 20:28:21 +00:00
Jeff Hill
da3eed2a6f added const to failureNotify() 1997-04-11 20:24:13 +00:00
Jeff Hill
5de817b531 changes from Pam Gurd 1997-04-10 21:54:37 +00:00
Jeff Hill
a173792b1f C++ conditional build 1997-04-10 21:52:49 +00:00
Jeff Hill
6af690f524 use SYS_PROD_LIBS_ 1997-04-10 21:51:31 +00:00
Jeff Hill
1891940018 compile C++ only if CPLUSPLUS isnt empty 1997-04-10 21:32:42 +00:00
Jeff Hill
6adb68d7d6 fixed depen 1997-04-10 20:07:15 +00:00
Jeff Hill
c1225d880e use SYS_PROD_LIBS 1997-04-10 20:05:19 +00:00
Jeff Hill
017686e0f6 use free list lib 1997-04-10 20:04:51 +00:00
Jeff Hill
f61f401683 use include not include <> 1997-04-10 20:03:53 +00:00
Jeff Hill
3a5e5fc5d7 VMS changes 1997-04-10 20:02:55 +00:00
Jeff Hill
8d0712bea4 winsock II changes 1997-04-10 20:02:05 +00:00
Jeff Hill
0804f7fb08 api changes 1997-04-10 20:01:14 +00:00
Jeff Hill
7a8878dec6 API changes 1997-04-10 19:56:38 +00:00
Jeff Hill
92ae7b14c4 use SYS_PROD_LIBS_DEFAULT 1997-04-10 19:54:14 +00:00
Jeff Hill
eda3aae608 API changes 1997-04-10 19:51:14 +00:00
Jeff Hill
8e363122b3 added new functions 1997-04-10 19:47:35 +00:00
Jeff Hill
ff378e17c9 new env param decl 1997-04-10 19:46:59 +00:00
Jeff Hill
5e1157d363 added sigPipeIgnore 1997-04-10 19:46:31 +00:00
Jeff Hill
d3c6310bb1 API changes and include with not <> 1997-04-10 19:45:43 +00:00
Jeff Hill
5c4d82cacc API changes 1997-04-10 19:43:15 +00:00
Jeff Hill
414c8ed603 installed 1997-04-10 19:38:14 +00:00
Jeff Hill
603c598e14 added new files 1997-04-10 19:36:53 +00:00
Jeff Hill
a3cad9563f asynch connect, faster connect, ... 1997-04-10 19:26:27 +00:00
Jeff Hill
cb95ba41ac deleted 1997-04-09 22:23:57 +00:00
Marty Kraimer
8e000eb634 Forgot to compile before committing 1997-04-09 19:50:39 +00:00
Marty Kraimer
b00f152456 makesure GPIBFASTO has val in range 1997-04-09 19:35:56 +00:00
Marty Kraimer
566d70bf9c Restore original 1997-04-09 18:33:49 +00:00
Marty Kraimer
bc6bf59bda In devGpibLib_mbboGpibWork make sure val is in range 1997-04-09 18:14:43 +00:00
Jim Kowalkowski
6fcbfa15b3 Changed these to use the dbmf library for malloc/free of buffers 1997-04-07 20:17:43 +00:00
Jim Kowalkowski
121a2dc9ae Added a simple library for doing malloc/free from a buffer pool 1997-04-07 20:16:42 +00:00
Janet B. Anderson
35f9a872f7 Added CXXLDLIBS and USR_CXXLDFLAGS. 1997-03-26 18:44:44 +00:00
Janet B. Anderson
0efb9a0c8c Added LDLIBS 1997-03-26 18:39:18 +00:00
Janet B. Anderson
63da245439 Use LINK.c from config 1997-03-26 18:38:26 +00:00
Jim Kowalkowski
8b83afc1bb fixed bug in gddDestructor constructor. 1997-03-24 12:41:49 +00:00
Jim Kowalkowski
54e6f9aed1 *** empty log message *** 1997-03-21 01:56:12 +00:00
Jim Kowalkowski
4c99a53852 fixed a problem with gddDestructor and reference counting 1997-03-17 17:14:48 +00:00
Janet B. Anderson
b95f7afd3c R3_13_0_beta8 1997-03-13 21:03:06 +00:00
Janet B. Anderson
a2db2d88ca epicsVersion.h now a created file. 1997-03-13 19:16:26 +00:00
Janet B. Anderson
cbe00bb737 Fixed version text. 1997-03-13 18:09:28 +00:00
Janet B. Anderson
7efb007b53 Removed epicsVersion.h and fixed Makefile.Host 1997-03-13 17:32:21 +00:00
Janet B. Anderson
4e7917d9fe Include stdlib.h. 1997-03-13 17:03:08 +00:00
Marty Kraimer
ee8fad1e7a Test version to diagnose bitbus problems 1997-03-13 16:57:49 +00:00
Janet B. Anderson
0fa8b1e62d CMPLR = OLD needed for alpha build. 1997-03-13 16:45:51 +00:00
Janet B. Anderson
117f75eac4 Initial Version 1997-03-13 16:42:52 +00:00
Marty Kraimer
85432e6307 Change hash algorithm to be slightly faster 1997-03-13 16:38:09 +00:00
Janet B. Anderson
cdbbf69a1e Modified names for CXX flags. 1997-03-12 23:08:37 +00:00
Marty Kraimer
fb8e026551 Allow CALC to be 40 characters. Increase rpbuf from 184 to 200 1997-03-12 21:38:38 +00:00
Marty Kraimer
5f1b0c19a8 Use maxCards from module_types.h 1997-03-12 21:35:16 +00:00
Janet B. Anderson
bbef91c39e Don not include filio and sockio headers. 1997-03-12 17:21:44 +00:00
Jeff Hill
f0120adba4 added purify build 1997-03-10 23:07:36 +00:00
Jeff Hill
457d64640e faster clean 1997-03-10 23:04:04 +00:00
Jeff Hill
eae68a0872 -DEXPL_TEMPL for g++ and others 1997-03-10 23:00:52 +00:00
Jeff Hill
48bbe65f60 installed 1997-03-10 22:58:31 +00:00
Janet B. Anderson
6e04d47209 Added cc depends rule. 1997-03-10 18:13:20 +00:00
Jim Kowalkowski
02dc1c300c Fixes cvs log id at top 1997-03-05 21:16:23 +00:00
Jim Kowalkowski
2d1c1d3e09 New server example 1997-03-05 21:14:56 +00:00
Jim Kowalkowski
5e9ebd8b9b Fixed a bug in TSreport - printing of IP addresses was incorrect 1997-03-05 13:20:44 +00:00
Jim Kowalkowski
c5bc89f11b Fixed bungled spelling of GUI_BITS, it was spelled GUI_BTS 1997-03-03 17:28:29 +00:00
Jeff Hill
bd2407153c installed host build make file 1997-02-27 18:59:18 +00:00
Janet B. Anderson
2b42b3eab0 Portability change - added EXE suffix to antelope and e_flex. 1997-02-24 16:22:56 +00:00
Janet B. Anderson
77146706a6 WHAT now defined in config files. 1997-02-24 16:14:20 +00:00
Janet B. Anderson
b6d0f183de Portability change /bin/pwd changed to pwd. 1997-02-24 16:13:03 +00:00
Janet B. Anderson
4f649964de getopt changed to getopts for portability. 1997-02-24 16:10:45 +00:00
Janet B. Anderson
f565901231 Added support for all action*arch targets. 1997-02-24 16:08:08 +00:00
Janet B. Anderson
9821aaa612 Added WHAT to config files. 1997-02-24 16:02:26 +00:00
Janet B. Anderson
a364fbe125 Portability change. 1997-02-21 15:16:43 +00:00
Janet B. Anderson
0500ccb4da Aplha support file from M. Rivers 1997-02-18 22:04:21 +00:00
Janet B. Anderson
3db726ddac sgi support file from M. Rivers 1997-02-18 22:03:56 +00:00
Janet B. Anderson
edff0569b6 Sgi support modifications from M. Rivers 1997-02-18 21:54:46 +00:00
Janet B. Anderson
cbbeb7ea25 Alpha support modifications from M. Rivers 1997-02-18 21:54:07 +00:00
Johnny Tang
ccb055cf78 Bx field DCT visible 1997-02-11 20:54:49 +00:00
Johnny Tang
4ddd63d141 Bx field DCT invisible 1997-02-11 20:54:31 +00:00
Johnny Tang
fdd89be534 bug fix 1997-02-11 20:48:54 +00:00
Johnny Tang
ed77e687a3 bug fix 1997-02-11 19:26:08 +00:00
Janet B. Anderson
f5e2c72b18 Added makefile dependancy for LIBNAME. 1997-02-07 21:15:17 +00:00
Janet B. Anderson
1e4e78d6bc Fixed DEPENDS rule lines. 1997-02-06 19:47:03 +00:00
Janet B. Anderson
3ede2a2512 Added vxldscript.MRI to ld flags. 1997-02-06 19:39:03 +00:00
Janet B. Anderson
1995c735a1 Bug fixes for INSTALL_LIBS and binInstalls 1997-02-06 15:49:53 +00:00
Janet B. Anderson
79a2ef7ad1 epics_R3_13_0_beta7 1997-02-05 22:22:45 +00:00
Janet B. Anderson
11b9be6dfd Removed Makefile.Unix files. 1997-02-05 22:18:03 +00:00
Janet B. Anderson
d21c4ba0ab Added c++ support, BIN_INSTALLS, and app LINNAME and DBDNAME dependancies. 1997-02-05 22:10:33 +00:00
Janet B. Anderson
a23b0be5a5 Added c++ support for Vx builds. 1997-02-05 22:07:57 +00:00
Marty Kraimer
199fdff643 dbAllocForm failed for macro links 1997-02-05 21:36:38 +00:00
Marty Kraimer
d762ed7af6 Removed extra rules at the end of makeBaseApp 1997-02-05 21:16:56 +00:00
Janet B. Anderson
85e3a6e0a1 Added CONFIG_BASE_VERSION. RULES.Db, RULES.ioc. 1997-02-05 21:08:16 +00:00
Janet B. Anderson
74f253820a CHMOD now defined in config dir. 1997-02-05 21:01:36 +00:00
Janet B. Anderson
3c73143f3a BUILD_ARCHS now defined without if stmnts. 1997-02-05 20:54:22 +00:00
Marty Kraimer
18cafc2d06 replace shell commands with wildcard 1997-02-05 19:32:49 +00:00
Marty Kraimer
6f6e34dced str_t_e did not allow for numeric value 1997-02-05 19:27:31 +00:00
Jim Kowalkowski
a16f99b8d0 New architecture type 1997-01-29 04:43:42 +00:00
Janet B. Anderson
46a180f755 epics_R3_13_0_beta6 1997-01-23 18:50:54 +00:00
Marty Kraimer
cebd5f3cf8 Added T_A 1997-01-23 18:32:12 +00:00
Janet B. Anderson
2ced0242bd Added install include dir to UNIX_INCLUDES. 1997-01-23 17:28:45 +00:00
Janet B. Anderson
7edc0cd149 Allow CONFIG_SITE to override CONFIG_COMMON vars. 1997-01-23 17:26:51 +00:00
Marty Kraimer
417411ab62 Makefile in *App/*Db was incorrect 1997-01-23 16:10:30 +00:00
Jeff Hill
ea589a75a9 added include of sys/types.h for VMS 1997-01-22 22:08:03 +00:00
Jeff Hill
d00b72f3e8 doc 1997-01-22 22:07:22 +00:00
Jeff Hill
56cf313613 removed 1997-01-22 22:04:56 +00:00
Jeff Hill
98498419c0 installed 1997-01-22 21:36:06 +00:00
Jeff Hill
653d8f1dae moved if.h include here 1997-01-22 21:35:28 +00:00
Jeff Hill
8405cf7323 clean up 1997-01-22 21:35:01 +00:00
Jeff Hill
80a8d9c37f include if.h here 1997-01-22 21:34:41 +00:00
Jeff Hill
ce87cee840 moved include of time.h and errno.h here 1997-01-22 21:34:10 +00:00
Jeff Hill
0ca6bf3ecc moved include of if.h here 1997-01-22 21:33:06 +00:00
Jeff Hill
8e0a2c9e0f moved targets down so that they dont repl all target 1997-01-22 21:20:01 +00:00
Jeff Hill
fad67f380d added dcan lock to db_post_single_event() 1997-01-22 21:17:41 +00:00
Jeff Hill
4dc12e992d updated tests 1997-01-22 21:14:50 +00:00
Jeff Hill
bf6f69065c fixed class decl order for VMS 1997-01-22 21:14:21 +00:00
Jeff Hill
be09fad901 doc 1997-01-22 21:13:08 +00:00
Jeff Hill
0b07bf8094 moved vms includes here 1997-01-22 21:11:49 +00:00
Jeff Hill
d2c38b8db5 cleaned out extra includes 1997-01-22 21:11:04 +00:00
Jeff Hill
7f1249ae45 smaller external sym name for VAXC 1997-01-22 21:10:26 +00:00
Jeff Hill
617b4dd26f moved include of if.h to osiSock.h 1997-01-22 21:08:48 +00:00
Jeff Hill
ef7b658bc0 removed use of ## for VAXC port 1997-01-22 21:08:17 +00:00
Jeff Hill
ef6adf90fc fixed array test 1997-01-22 21:07:27 +00:00
Jeff Hill
ca2a66514f use genLocalExcepWFL for generateLocalExceptionWithFileAndLine 1997-01-22 21:06:30 +00:00
Jeff Hill
ce3095d1fc define MULTINET and __STDC__ 1997-01-22 21:05:49 +00:00
Jeff Hill
2869b388dd added TESTPROD to clean target 1997-01-22 21:03:48 +00:00
Marty Kraimer
dc03deead7 Still did not work correctly 1997-01-22 21:00:20 +00:00
Marty Kraimer
99a0613092 Makefile in xxxApp/Db included wrong rules 1997-01-22 19:20:51 +00:00
Marty Kraimer
38044917f4 Modified comment in st.cmd 1997-01-22 14:08:10 +00:00
Marty Kraimer
2092f9faee On usage made it clear that -e is optional 1997-01-21 22:16:59 +00:00
Janet B. Anderson
f0ea531cc4 Removed def of target archs. 1997-01-21 21:59:46 +00:00
Janet B. Anderson
54de9067ee Dont require . to be in path. 1997-01-21 19:16:51 +00:00
Marty Kraimer
dcbf2a6331 src/st.cmd replaced by st.cmd 1997-01-21 19:01:39 +00:00
Marty Kraimer
63d0339d05 failed unless at least one dbLoadRecords("xxxApp/ ... appeared 1997-01-21 19:00:53 +00:00
Jim Kowalkowski
8d88cf2277 free up resources in clearData 1997-01-21 15:13:06 +00:00
Marty Kraimer
450f76d205 Minor changes 1997-01-21 15:06:38 +00:00
Jim Kowalkowski
890de43c91 Print IP address on report 1997-01-20 15:31:00 +00:00
Janet B. Anderson
a8879d0f41 Now works with MakeRelease 1997-01-17 20:02:29 +00:00
Janet B. Anderson
cdab5000bc Use config/CONFIG_BASE_VERSION to get version info. 1997-01-17 19:59:37 +00:00
Marty Kraimer
fd0daa0b92 various bugs 1997-01-17 19:48:27 +00:00
Janet B. Anderson
86219510c6 epics_R3_13_0_beta5 1997-01-17 18:53:19 +00:00
Janet B. Anderson
471a5a71e6 Initial version. 1997-01-17 17:54:40 +00:00
Janet B. Anderson
ae1b395a87 epicsVersion.h now created from CONFIG_BASE_VERSION. 1997-01-17 17:52:57 +00:00
Janet B. Anderson
fecf4de0d1 Added uninstall for templates dir. 1997-01-17 16:45:12 +00:00
Marty Kraimer
378cc22c07 Changes for Makefile.Host and also more like APS/ASD environment 1997-01-17 16:38:02 +00:00
Janet B. Anderson
6f3b75b485 Modified output message. 1997-01-17 16:20:34 +00:00
Janet B. Anderson
2b1aab904e Local libraries now first. 1997-01-16 22:22:18 +00:00
Janet B. Anderson
8afabaf4e1 MOved position of USR_INCLUDES on compile line. 1997-01-16 22:16:45 +00:00
Marty Kraimer
ff02a0fe6e Adding to base 1997-01-16 19:53:15 +00:00
Janet B. Anderson
8b9b9c0bf6 Added commented stmnt for devAiStats.o 1997-01-16 19:05:58 +00:00
Janet B. Anderson
b134b99686 Uninstall now removes dbd and doc directories. 1997-01-16 19:01:28 +00:00
Janet B. Anderson
61f0440de5 Fixed spelling srror in DEPENDS_RULE. 1997-01-16 17:30:41 +00:00
Marty Kraimer
c68ace1542 make nicer 1997-01-16 17:04:39 +00:00
Marty Kraimer
2207e20627 Did not properly implement support for multiple clients 1997-01-16 17:03:26 +00:00
Marty Kraimer
0a4d1f26d1 Changes so that applications build 1997-01-16 17:01:43 +00:00
Janet B. Anderson
1114813608 Initial version. 1997-01-14 22:58:33 +00:00
Jeff Hill
0b09d90b12 fixed problems associated with events lost msg 1997-01-13 23:13:50 +00:00
Marty Kraimer
219324f304 Made mistake removing get_value 1997-01-13 17:30:35 +00:00
Marty Kraimer
f0e00aacc8 Use dbGetFieldIndex. get rid of get_value 1997-01-13 15:59:21 +00:00
Marty Kraimer
02e5131522 recGblInitConstantLink for sgl was referencing wrong field 1997-01-13 15:58:07 +00:00
Marty Kraimer
194784d781 get rid of call to devGpibLib_setPvSevr 1997-01-13 15:56:31 +00:00
Marty Kraimer
a0a5198a2f minor change 1997-01-13 15:55:16 +00:00
Marty Kraimer
e41619eea3 Be willing to generate null string fields 1997-01-13 15:54:54 +00:00
Marty Kraimer
93deef330a The enums for menus had a comma after last item. 1997-01-13 15:54:11 +00:00
Jim Kowalkowski
5507e033d8 many errors fixed 1997-01-12 20:32:49 +00:00
Jeff Hill
d0c26b575e code around gnu g++ inline bug when -O isnt used 1997-01-10 21:18:56 +00:00
Jeff Hill
66c844cebf updated DL fmt 1997-01-10 21:15:43 +00:00
Jeff Hill
fc449a487e added casOpaqueAddr.cc 1997-01-10 21:13:42 +00:00
Jeff Hill
4be53cd0fa better message 1997-01-10 21:11:16 +00:00
Jeff Hill
2adb49b93e took out C++ 1997-01-10 21:06:06 +00:00
Jeff Hill
d7bb945cc0 host/user name set is now a NOOP 1997-01-10 21:02:10 +00:00
Jeff Hill
752fbcc6dc doc 1997-01-10 21:00:16 +00:00
Jeff Hill
d1e1a5f249 installed 1997-01-10 00:41:33 +00:00
Jeff Hill
a13d49cf81 BASE is up one more level 1997-01-10 00:31:30 +00:00
Jeff Hill
2fc75ca08e installed WIN32/Makefile.Host 1997-01-10 00:12:21 +00:00
Jeff Hill
7f3c5e6cbb installed 1997-01-10 00:05:21 +00:00
Jeff Hill
355fe461e7 installedMakefile.Host 1997-01-10 00:02:59 +00:00
Jeff Hill
b87c59eab2 dont mess with SIGPIPE under WIN32 1997-01-10 00:01:02 +00:00
Jeff Hill
e2edfb470f close() => socket_close() 1997-01-10 00:00:01 +00:00
Jeff Hill
8f642dfe1e installed 1997-01-09 22:29:51 +00:00
Jeff Hill
ad533e7c35 installed hostBuild branch 1997-01-09 22:29:17 +00:00
Jeff Hill
5937eb099e removed INC for gddAppFuncTable.h 1997-01-09 22:27:30 +00:00
Jeff Hill
9ca456bfb3 eliminate MSVC++ warning resulting from passing *this to a base 1997-01-09 22:24:46 +00:00
Jeff Hill
52854cd1ed MSC cannot use the default constructor 1997-01-09 22:22:30 +00:00
Jeff Hill
7a92120974 installed 1997-01-09 22:19:54 +00:00
Jeff Hill
9b1cf4a467 installed changes on hostBuild branch 1997-01-09 22:14:26 +00:00
Jeff Hill
62ae22ef7a added epicsShareAPI to ca_message_text[] 1997-01-09 22:11:43 +00:00
Jeff Hill
9e7f4020c2 doc 1997-01-09 22:10:56 +00:00
Jeff Hill
17aa8609b0 installed 1997-01-09 22:10:03 +00:00
Jeff Hill
4b83df7f01 Use CXX for CC 1997-01-09 22:07:22 +00:00
Jeff Hill
a1acb62b58 .PHONY becomes :: rule 1997-01-09 22:05:55 +00:00
Jeff Hill
71144f3c20 added WIN32 & pc486 1997-01-09 22:04:03 +00:00
Jeff Hill
7c89b7850f removed redundant steps 1997-01-09 22:03:32 +00:00
Jeff Hill
cdb42f3c11 .PHONY is :: rule 1997-01-09 22:01:43 +00:00
Jeff Hill
22cf3b4935 installed 1997-01-09 21:58:32 +00:00
Jeff Hill
d584853a94 improved message 1997-01-08 22:48:42 +00:00
Jim Kowalkowski
94ce85b538 reset line number at start of routines 1997-01-02 21:16:40 +00:00
Jim Kowalkowski
1427caaee9 More strings yet printed now 1996-12-20 13:11:42 +00:00
Jim Kowalkowski
3846165645 Working version, intermediate, still has problems 1996-12-20 13:09:49 +00:00
Jeff Hill
fdddf61b06 moved extra % from printf 1996-12-18 18:24:09 +00:00
Jim Kowalkowski
07e07db9c7 fixed bug in copyData, sets bounds now 1996-12-17 15:04:42 +00:00
Jeff Hill
1c091779a8 fixed bad data ref bug 1996-12-13 00:11:32 +00:00
Jeff Hill
88140f9116 dont unlock after destroy 1996-12-13 00:08:35 +00:00
Jeff Hill
e9b078491b moved casStreamOS *pStrmOS decl down 1996-12-12 21:24:17 +00:00
Jeff Hill
218ae4569a fixed send does not get armed after complete flush bug 1996-12-12 19:02:36 +00:00
Jeff Hill
03188d0eec doc 1996-12-12 18:56:27 +00:00
Jeff Hill
88c99148b2 fixed client initiated pv delete calls interestDelete() VF bug 1996-12-12 18:55:38 +00:00
Jeff Hill
261067b0f5 fixed fast build 1996-12-12 18:53:30 +00:00
Jeff Hill
89b90296ec added additional vector tests 1996-12-11 01:10:33 +00:00
Jeff Hill
dff79f6bea added vector support 1996-12-11 01:07:17 +00:00
Jeff Hill
fa64c5bdd2 getSender() nolonger in line 1996-12-11 01:04:54 +00:00
Jeff Hill
a9acb01482 removed redundant bad client attach detect 1996-12-11 01:03:52 +00:00
Jeff Hill
de4c463956 removed casEventMaskEntry def 1996-12-11 01:02:35 +00:00
Jeff Hill
07857588f0 casEventMaskEntry constr does res tbl add 1996-12-11 01:01:56 +00:00
Jeff Hill
f9346a7eca added bad chan attachment detection 1996-12-11 00:59:37 +00:00
Jeff Hill
e332794a4a better diagnostic 1996-12-11 00:58:35 +00:00
Jeff Hill
ab4c4baa52 moved casEventMaskEntry here 1996-12-11 00:57:56 +00:00
Jeff Hill
b372a53bbb use main include file 1996-12-11 00:56:47 +00:00
Jeff Hill
e031341af1 better message 1996-12-11 00:55:14 +00:00
Jeff Hill
ce5adaa037 added casPVListChan 1996-12-06 22:41:33 +00:00
Jeff Hill
b578f783e2 moved down one level 1996-12-06 22:40:40 +00:00
Jeff Hill
2c0a4561bd hew hierarchy 1996-12-06 22:38:00 +00:00
Jeff Hill
f14ac97ee2 new hierarchy 1996-12-06 22:37:38 +00:00
Jeff Hill
8431539f23 use destroyInProgress flag now functional nativeCount() 1996-12-06 22:36:30 +00:00
Jeff Hill
7f8be4b3a1 added destroyInProgress flag 1996-12-06 22:35:06 +00:00
Jeff Hill
59304ffd99 add maxDimension() and maxBound() 1996-12-06 22:34:22 +00:00
Jeff Hill
7c124f6e93 virtual ~casPVI(), ~casPVListChan(), ~casChannelI() 1996-12-06 22:33:49 +00:00
Jeff Hill
7543005120 force virtual destructor 1996-12-06 22:32:11 +00:00
Jeff Hill
f4784cafb5 add virt funcs to casPV 1996-12-06 22:30:50 +00:00
Jeff Hill
c80e584dfa fixed wrong start bug in getDD() 1996-12-06 22:27:44 +00:00
Jeff Hill
4820f93b6a added auto cleanup of installed classes to destroy 1996-12-06 22:26:36 +00:00
Jeff Hill
eff915d837 moved down one level 1996-12-06 22:20:22 +00:00
Janet B. Anderson
a7e61ddeb8 HP bug fix per S. lewis tech-talk msg 11/26 1996-12-02 15:12:33 +00:00
Jeff Hill
fb624a76d2 installed 1996-11-22 20:49:43 +00:00
Jeff Hill
33d5b78b5b doc 1996-11-22 20:43:03 +00:00
Jeff Hill
e6a68089c6 fixed protos for __SUNPRO_C 1996-11-22 20:39:33 +00:00
Jeff Hill
4d1875e738 added unistd.h for close() and added gethostname() proto 1996-11-22 20:38:17 +00:00
Jeff Hill
737f4b83e6 converted large inline templ funcs 1996-11-22 20:37:19 +00:00
Jeff Hill
a4362b3b3f win NT changes 1996-11-22 19:56:42 +00:00
Jeff Hill
96f6b17458 fixed spelling 1996-11-22 19:54:53 +00:00
Jeff Hill
e5df8aef5b doc 1996-11-22 19:52:24 +00:00
Jeff Hill
f8f7240e12 doc 1996-11-22 19:41:05 +00:00
Jeff Hill
7bab56dcb7 doc 1996-11-22 19:32:15 +00:00
Jeff Hill
37c4bead67 installed 1996-11-22 19:32:01 +00:00
Jeff Hill
3b934ac775 suppressed error msg and returned correct # bytes pending 1996-11-22 19:27:04 +00:00
Jeff Hill
d34ad2d0ff doc 1996-11-22 19:22:53 +00:00
Jeff Hill
ff0e52d4b4 installed 1996-11-22 19:21:55 +00:00
Jeff Hill
4961e0c799 added templInst.c 1996-11-22 19:20:37 +00:00
Jeff Hill
c41ea11302 CXXCMPLR = STRICT 1996-11-22 19:19:40 +00:00
Jeff Hill
8215339e79 CXXCMPLR = STRICT 1996-11-22 19:19:12 +00:00
Jeff Hill
49d0571e4a reorganized for improved readability 1996-11-22 19:16:00 +00:00
Jeff Hill
a93baf6214 added const to API 1996-11-22 19:08:02 +00:00
Jeff Hill
8dcf6e1a5f included string.h 1996-11-22 19:07:01 +00:00
Jeff Hill
687770d207 added const to build and connect API 1996-11-22 19:05:48 +00:00
Jeff Hill
a897ba6ac9 CMPLR = STRICT 1996-11-22 19:04:37 +00:00
Jeff Hill
87efbf9a7c GCC = /opt/gnu/bin/gcc not GCC = gcc 1996-11-22 18:59:10 +00:00
Jeff Hill
7aa17be09c additional patch for 2 days to CPU usage problem 1996-11-22 18:19:09 +00:00
Jeff Hill
292bbca26b fixed 2 day delay to CPU consumption bugseq_task.c 1996-11-21 22:54:00 +00:00
Jeff Hill
ede722c5da fixed printf fmt/arg incompatibilities 1996-11-21 21:13:03 +00:00
Jeff Hill
6844074eac use correct syntax for init 1996-11-21 21:12:05 +00:00
Jeff Hill
26385135f4 added missing include 1996-11-21 21:11:15 +00:00
Jeff Hill
079e377937 fixed GNU compile under solaris 1996-11-08 22:02:22 +00:00
Jeff Hill
369841f425 avoid confusing circular dependency message 1996-11-07 23:46:52 +00:00
Jeff Hill
3f7bfda8d8 doc 1996-11-07 14:42:36 +00:00
Jeff Hill
cfc470d480 allow monitor init read to using rd async io 1996-11-06 22:15:56 +00:00
Jeff Hill
ff7a84bbb1 removed cas and gdd agin 1996-11-06 22:14:36 +00:00
Jeff Hill
485817d819 Allow override of CROSS_COMPILER_HOST_ARCHS in CONFIG 1996-11-06 22:12:51 +00:00
Jeff Hill
bf4738a2b3 unclobbered the rebuild target 1996-11-06 20:05:43 +00:00
Jeff Hill
4449495196 o do the "inc" traget at the RULES_DIRS level for all arc targets
and the install target
o eliminated redundant "inc" build by creating buildInstall target
1996-11-06 19:41:44 +00:00
Jeff Hill
d89ceac446 added AB stepper 1996-11-06 15:55:33 +00:00
Jeff Hill
a9a77b8a9c use CC -xar on sun4 and solaris arch 1996-11-06 00:11:41 +00:00
Jeff Hill
d8fdf046d1 o fixed "-d" flag was ignored (directory was always created)
o fixed directory creation failed when relative path was used
	(ie path containing ".." or ".")
1996-11-05 18:17:08 +00:00
Janet B. Anderson
5f2999d9c4 Removed unused references to TCLLIBNAME and TCLINDEX 1996-11-05 16:06:05 +00:00
Jim Kowalkowski
0a943103f2 fix setFirst 1996-11-04 17:12:50 +00:00
Jeff Hill
8e34d8cc43 use osiSock.h to get proto for gettimeofday() for now 1996-11-02 02:52:54 +00:00
Jeff Hill
e05ed3ebae doc 1996-11-02 02:46:40 +00:00
Jeff Hill
da7f5837ec fixed warning 1996-11-02 02:42:19 +00:00
Jeff Hill
d8fc7ff7bd removed use of db_addr 1996-11-02 02:27:28 +00:00
Jeff Hill
66d2971efb use osiSock.h 1996-11-02 02:20:36 +00:00
Jeff Hill
16e9a2dbc0 removed gnu warnings 1996-11-02 02:19:55 +00:00
Jeff Hill
77cf658c05 PC arch changes 1996-11-02 02:18:31 +00:00
Jeff Hill
a1e16b72b7 removed 1996-11-02 02:13:33 +00:00
Jeff Hill
f48578f681 installed 1996-11-02 02:12:48 +00:00
Jeff Hill
cbc3f74479 use correct form of #define 1996-11-02 02:08:52 +00:00
Jeff Hill
569d7e7879 added TsAddDouble() proto 1996-11-02 02:07:54 +00:00
Jeff Hill
2d6ac57834 fixed several subtle problems 1996-11-02 02:06:59 +00:00
Jeff Hill
44aae92786 const param => #define 1996-11-02 02:06:00 +00:00
Jeff Hill
9976984eb8 %d => %ld 1996-11-02 02:05:24 +00:00
Jeff Hill
452d3d68ca fixed several subtle bugs 1996-11-02 02:04:42 +00:00
Jeff Hill
a609cfaa02 use strerror() to get err string since it is portable 1996-11-02 02:03:37 +00:00
Jeff Hill
c12f73e2b3 added envParamIsEmpty() 1996-11-02 02:00:05 +00:00
Jeff Hill
fd72915fae added cas env var 1996-11-02 01:59:43 +00:00
Jeff Hill
8d5cfe739f added os depen stuff 1996-11-02 01:58:52 +00:00
Jeff Hill
d40253a1b5 use correct form of #include 1996-11-02 01:57:45 +00:00
Jeff Hill
55589cb65a improved message 1996-11-02 01:56:55 +00:00
Jeff Hill
14127052f1 added os depen stuff 1996-11-02 01:38:00 +00:00
Jeff Hill
5201df3dbc installed 1996-11-02 01:36:25 +00:00
Jeff Hill
3263a885a3 more pc related changes 1996-11-02 01:30:51 +00:00
Jeff Hill
4dbb3d18de removed merge problems 1996-11-02 01:28:15 +00:00
Jeff Hill
31b046e108 strcpy => styrcpy (shuts up purify) 1996-11-02 01:24:49 +00:00
Jeff Hill
c25f195f08 pc does not have 68k's "nobitfield" option 1996-11-02 01:21:12 +00:00
Jeff Hill
f8910ba651 installed 1996-11-02 01:17:59 +00:00
Jeff Hill
9b05ce2169 added byte swapping for pc arch 1996-11-02 01:16:43 +00:00
Jeff Hill
6bbc5576f9 remove db_addr 1996-11-02 01:15:16 +00:00
Jeff Hill
52b5b08b62 installed 1996-11-02 01:07:48 +00:00
Jeff Hill
c83ef56154 many improvements 1996-11-02 01:07:24 +00:00
Jeff Hill
77c34614a2 added resourceLib.cc 1996-11-02 01:06:48 +00:00
Jeff Hill
0f925b7264 installed 1996-11-02 01:01:41 +00:00
Jeff Hill
17ff2420b4 many improvements 1996-11-02 00:55:02 +00:00
Jeff Hill
1f722b453d installed 1996-11-02 00:52:53 +00:00
Jeff Hill
5bcd8e3fe7 many pc port, const in API, and other changes 1996-11-02 00:51:12 +00:00
Jeff Hill
cacdbe8a7e added convert.o 1996-11-02 00:45:42 +00:00
Jeff Hill
8397c013f0 added purify target 1996-11-02 00:44:01 +00:00
Jeff Hill
40f6521d20 fixed line wrap 1996-11-02 00:41:23 +00:00
Jeff Hill
183386fc02 remove use of <test -d> to create directory 1996-11-02 00:39:51 +00:00
Jeff Hill
ee83524e6b removed use of <test -d> to create directory 1996-11-02 00:38:42 +00:00
Jeff Hill
58b02d04cb os depen -I 1996-11-02 00:35:42 +00:00
Jeff Hill
68006545e1 added new CAS env var 1996-11-02 00:31:00 +00:00
Jeff Hill
9a0e885a2e os depen include 1996-11-02 00:30:19 +00:00
Jeff Hill
4013ea544b os depen -I and $(CCC) -xar for ar 1996-11-02 00:29:02 +00:00
Marty Kraimer
9258159419 Removed precord arg from dbScanFwdLink 1996-11-01 17:15:58 +00:00
Marty Kraimer
ecc19506ef Added dbScanFwdLink 1996-11-01 15:53:32 +00:00
Marty Kraimer
6373069d52 Fixed bugs from last set of changes 1996-11-01 15:52:52 +00:00
Marty Kraimer
2a8ec06437 Made changes so that -Wall and -pedantic work properly 1996-11-01 15:51:50 +00:00
Janet B. Anderson
603519ae1c R3.13.0.beta4 1996-11-01 15:37:48 +00:00
Marty Kraimer
f7433d8e93 Fixed bug in dbAllocForm 1996-10-31 22:29:04 +00:00
Marty Kraimer
5ca50b7ce7 recGblInitConstantLink allows non constant link 1996-10-31 22:28:16 +00:00
Marty Kraimer
7287113d58 added dbGetNelements and dbIsLinkConnected 1996-10-31 22:27:03 +00:00
Marty Kraimer
179c9f6df0 Changes for udf and other problems discovered while looking at udf 1996-10-31 22:24:14 +00:00
Janet B. Anderson
a160ebf5ba Added quotes to echo stmnts. 1996-10-31 20:01:00 +00:00
Janet B. Anderson
b52605705b siol cannot be a constant link. 1996-10-30 21:31:07 +00:00
Janet B. Anderson
3ef7c191db Changed inp type test to DB_LINK 1996-10-30 21:30:01 +00:00
Janet B. Anderson
73dc2a91e4 Typo erro bug fix 1996-10-30 19:30:03 +00:00
Janet B. Anderson
ad76c5efab In init_record the udf field is set to false only if svl is a
constant link and recGblInitConstantLink returns success.
1996-10-30 17:47:02 +00:00
Janet B. Anderson
5981891ee0 The udf field is no longer set to false in write_<record type>. 1996-10-30 17:46:33 +00:00
Janet B. Anderson
884737e82e In init_record the udf field is no longer set to false if inp
is a constant link and recGblInitConstantLink returns success
(rval, not val, was successfully initialized).
1996-10-30 17:45:15 +00:00
Janet B. Anderson
e301e1b359 In init_record the udf field is set to false only if inp
is a constant link and recGblInitConstantLink returns success.
In read_<record type> the udf field is set to false only if
inp is not a constant link and dbGetLink returns success.
1996-10-30 17:44:33 +00:00
Janet B. Anderson
a3b1033015 The siol field, if it is a constant, is now initialized
during record initialization.  In process the udf field
is now set to false if siol is not a constant link and
dbGetLink returns success.
1996-10-30 17:42:00 +00:00
Janet B. Anderson
ac5e26f132 In process the udf field is now set to false if dol is
not a constant link and dbGetLink returns success.
1996-10-30 17:41:37 +00:00
Janet B. Anderson
19cc8098dc In process the udf field is now set to false if dol is
not a constant link and dbGetLink returns success.
Changes made to modify DB_LINK test on rdbl field to
allow type CA_LINK.
1996-10-30 17:41:12 +00:00
Janet B. Anderson
49da47700d Changes made to modify DB_LINK tests on the lnk and dol
fields to allow type CA_LINK.
1996-10-30 17:40:50 +00:00
Janet B. Anderson
3d22feedd8 Changes made to modify DB_LINK test on cvl field to allow type CA_LINK. 1996-10-30 17:40:28 +00:00
Janet B. Anderson
bab66fe7cc Old style, pre R3.12, c code in init_record was updated. 1996-10-30 17:39:23 +00:00
Janet B. Anderson
4de3accb61 Udf now set to false in process when val is initialized. 1996-10-30 17:38:49 +00:00
Janet B. Anderson
ba2b082abd Udf now set to false in put_enum_string when val is initialized. 1996-10-30 17:38:29 +00:00
Janet B. Anderson
086f5999aa Changes made to fanoutRecord.c to modify DB_LINK test
on lnk* fields to allow type CA_LINK.
1996-10-30 17:37:54 +00:00
Janet B. Anderson
96f51f2b99 In process() the udf field is set to false when dbGetLink returns
success only if dol is not a constant link.
1996-10-30 17:37:32 +00:00
Janet B. Anderson
a93773ae77 Changes made to compressRecord.c to modify DB_LINK test
on inp field to allow type CA_LINK.
1996-10-30 17:37:02 +00:00
Janet B. Anderson
d997adeb16 The siol field, which was never used in record processing, has been
removed from aaiRecord.dbd and aaoRecord.dbd files. Old style, pre R3.12,
c code in init_record was updated.
1996-10-30 17:34:35 +00:00
Marty Kraimer
299c22ff0f minor format and message changes 1996-10-30 13:56:18 +00:00
Marty Kraimer
71e83671aa get rid of client_stat_summary. casr provides functionality 1996-10-29 21:06:32 +00:00
Marty Kraimer
1b66a4c204 Changed menu initial values to string from index 1996-10-29 20:58:05 +00:00
Marty Kraimer
0c8f41a6a0 Changed menu initial vales to string from index; cleaned up dbTest.c 1996-10-29 20:56:46 +00:00
Marty Kraimer
5268e13e74 Many changes to properly support DCT operation 1996-10-29 20:49:13 +00:00
Jim Kowalkowski
a0d4d84622 first proof reading corrections 1996-10-29 19:24:12 +00:00
Jim Kowalkowski
9427acb0a1 Much new doc added. Fixed bug in gdd.cc. 1996-10-29 15:40:02 +00:00
Jim Kowalkowski
41d5c292f9 New gdd reference manual 1996-10-25 12:33:12 +00:00
Jim Kowalkowski
f2ceaba174 many more changes 1996-10-24 17:37:03 +00:00
Jim Kowalkowski
0faa5d56cc New program for running programs with different priority and changing the
maximum number of file descriptors.
1996-10-22 15:40:04 +00:00
Jim Kowalkowski
072c850568 added line for vxWorks statistics device support 1996-10-21 19:04:06 +00:00
Jim Kowalkowski
0f4b4deb80 added the code for ioc statistic processing on IOC and workstation 1996-10-21 16:01:28 +00:00
Jim Kowalkowski
e22ae5f857 Added ai/ao device support for vxWorks statics (memory/load/TCP con) 1996-10-21 15:30:37 +00:00
Jim Kowalkowski
926298ac6d double blob 1996-10-17 12:42:23 +00:00
Jim Kowalkowski
e135b2a4c0 blob 1996-10-17 12:42:07 +00:00
Jim Kowalkowski
69a07d8807 took out strdup function - replaced with strDup 1996-10-17 12:41:48 +00:00
Jim Kowalkowski
5c341931d0 network byte order stuff / added strDup function to Helpers 1996-10-17 12:41:07 +00:00
Jim Kowalkowski
f78d291850 adjusted the network byte ordering dump 1996-10-17 12:40:06 +00:00
Jim Kowalkowski
89e5f59610 removed strdup definition, fixed up the local/network byte order functions 1996-10-17 12:39:14 +00:00
Jim Kowalkowski
09ce70661a Modified to store records with a visibility option for graphic editors.
The ".db" file now generates "grecord" for visible records and "record" for
invisible records.
1996-10-17 00:17:30 +00:00
Janet B. Anderson
22b550ed35 R3.13.0.beta2 1996-10-16 18:42:44 +00:00
Janet B. Anderson
a17b659a86 Added target arch mv162 1996-10-16 18:14:05 +00:00
Janet B. Anderson
b5e120d082 c++ code will, by default, not be compiled. 1996-10-16 14:05:36 +00:00
Marty Kraimer
b8d6a8216e In example database field(FLNK, "mrkc0a1.VAL ") removed
Extra rules in Makefile.Vx
1996-10-15 20:00:44 +00:00
Marty Kraimer
5587867f6f lval was not correctly updated 1996-10-15 19:59:14 +00:00
Marty Kraimer
be33ae291e Round rval 1996-10-15 19:58:05 +00:00
Marty Kraimer
932a4b0d5c Fixed some casts 1996-10-15 19:51:43 +00:00
Marty Kraimer
7452aea2bc Get rid of extra trailing \0 1996-10-15 19:34:23 +00:00
Marty Kraimer
178e034e75 add impLib stuff 1996-10-15 19:27:57 +00:00
Marty Kraimer
cbb5a6acde Allow records in the database but no hardware.
Dont set HW limit alarm. Let recod support do it.
1996-10-15 19:25:58 +00:00
Marty Kraimer
08a8e874eb Allow no field defs in record instance with { } 1996-10-15 19:24:49 +00:00
Marty Kraimer
29f381b8f4 Fix problem of iocInit hanging 1996-10-15 19:23:51 +00:00
Marty Kraimer
5d123c6a4d Fix default problems 1996-10-15 19:23:22 +00:00
Marty Kraimer
2d999ed858 The form for FWDLINK PV fields does not work correctly. 1996-10-15 19:22:07 +00:00
Marty Kraimer
956fba853e Now accepts the characters ^ and ~ in strings. 1996-10-15 19:20:55 +00:00
Marty Kraimer
97b96da957 The dbCa Event task may fail. 1996-10-15 19:18:29 +00:00
Marty Kraimer
63a377ce99 The scan task could fail if addressing location 0 causes a failure 1996-10-15 19:17:30 +00:00
Marty Kraimer
84df076e38 checks that lset was allocated 1996-10-15 19:15:26 +00:00
Marty Kraimer
582d4b64cd add defs for src/devOpt 1996-10-15 19:06:53 +00:00
Marty Kraimer
ebebde9539 sdr2recordtype Failed on ascii files that had invalid GUI defs 1996-10-15 19:05:51 +00:00
Marty Kraimer
8771c33c46 ca_build_and_connect changed to ca_search_and_connect 1996-10-15 19:04:14 +00:00
Janet B. Anderson
3eae90a803 Portability change - added MV definition 1996-10-14 19:07:59 +00:00
Janet B. Anderson
693de689e9 Portability change. 1996-10-14 18:51:41 +00:00
Janet B. Anderson
a30a0fcbaa Portability changes. 1996-10-14 18:45:18 +00:00
Janet B. Anderson
0283890686 Clean rule now uses rm macro. Removed . in VPATH def. 1996-10-14 16:33:36 +00:00
Janet B. Anderson
c1d0a4ad5a Changed clean rule to use macro def for rm. 1996-10-14 16:24:10 +00:00
Janet B. Anderson
b2fcff709b Removed extra slash from CAS def. 1996-10-14 16:16:21 +00:00
Janet B. Anderson
aed16987e2 Removed extra dependancy on deplibs. 1996-10-14 16:08:03 +00:00
Marty Kraimer
b6a5423a1f Original version 1996-09-20 15:37:38 +00:00
Janet B. Anderson
9610b9a07d Modified defs for hostArchs and crossArchs. 1996-09-17 14:49:07 +00:00
Janet B. Anderson
98df963844 Added DBDNAME to build definition and clean rule. 1996-09-17 14:48:28 +00:00
Jeff Hill
19f9d0c14d umsigned => unsigned 1996-09-16 22:55:01 +00:00
Jeff Hill
a5e1223b0c added subroutine wrapper around reads and writes 1996-09-16 22:14:02 +00:00
Jeff Hill
0db9c03505 drvTime.c is no longer used 1996-09-16 22:11:03 +00:00
Jeff Hill
a3ce428cdd better report 1996-09-16 22:03:49 +00:00
Jeff Hill
057e1723cb added several compiler support functions and updated to gcc 2.7.2 1996-09-16 21:56:03 +00:00
Jeff Hill
0f156d5219 this is also in libvxWorks 1996-09-16 21:27:11 +00:00
Jeff Hill
1d39b11b7f removed unused variable 1996-09-16 21:19:25 +00:00
Jeff Hill
9e12de8e4f added prototypes and fixed warnings 1996-09-16 21:18:54 +00:00
Jeff Hill
4aa19f07d7 fixed warinings and added epicsShareAPI 1996-09-16 21:18:12 +00:00
Jeff Hill
142b7515e3 fixed warnings 1996-09-16 21:07:11 +00:00
Jeff Hill
8feefadabf added rebuild target at lower levels 1996-09-16 19:35:59 +00:00
Jeff Hill
6a9030e5e6 added epicsShareAPI 1996-09-16 18:43:14 +00:00
Jeff Hill
bece5d0b9a fixed bug in test routine 1996-09-16 18:41:53 +00:00
Jeff Hill
24e0989142 include shareLib.h 1996-09-16 18:41:13 +00:00
Jeff Hill
815668143f backed out multi-thread build because most sites do not have tornado or gcc 2.7.2 1996-09-16 18:37:28 +00:00
Jeff Hill
737278aa41 fixed comment 1996-09-16 18:30:27 +00:00
Jeff Hill
c14d23494c fixed printf format warning 1996-09-16 18:29:16 +00:00
Jeff Hill
d611fa2d75 vxWorks port changes 1996-09-16 18:27:51 +00:00
Jeff Hill
1aa384308d added cvs log entries 1996-09-16 18:22:09 +00:00
Jeff Hill
2e80e8c2ee allow abs path 1996-09-16 18:19:47 +00:00
Jeff Hill
0830382ec7 added multiThread build 1996-09-16 18:01:31 +00:00
Jeff Hill
c253066bc7 local except => except handler & ca vers str routine 1996-09-16 16:41:47 +00:00
Jeff Hill
6fca0cd260 make EPICS version be the console title 1996-09-16 16:40:13 +00:00
Jeff Hill
470152454b local except => except handler 1996-09-16 16:39:20 +00:00
Jeff Hill
4a8507cb0d o dont print disconnect message when the last channel on a connection is
deleted and the conn goes away
o local exceptions => exception handler
1996-09-16 16:37:02 +00:00
Jeff Hill
6917b31975 local exceptions => exception handler 1996-09-16 16:35:22 +00:00
Jeff Hill
0cf19108db added epicsShareAPI to ca_message() 1996-09-16 16:34:24 +00:00
Jeff Hill
01b3617614 added ca_version() proto and pFile/lineNo args to exception args 1996-09-16 16:33:45 +00:00
Jeff Hill
27567a54ed added CA version string 1996-09-16 16:32:49 +00:00
Jeff Hill
c04f34be42 fixed NT warnings 1996-09-16 16:31:01 +00:00
Jim Kowalkowski
0d2b196be2 New doc files 1996-09-16 13:41:29 +00:00
Jim Kowalkowski
7c23cf9c8c makefile to build library outside of EPICS tree 1996-09-12 11:18:46 +00:00
Jim Kowalkowski
2d0dd7828f Adjusted dbMapper.cc so gdd to string function work correctly
Added checks in gdd.h so that get(pointer) functions work with scalars
1996-09-10 15:06:29 +00:00
Jim Kowalkowski
6fbc050c96 fixes to destroyData function 1996-09-07 13:03:07 +00:00
Janet B. Anderson
5856008613 R3.13.0.beta2 1996-09-05 14:47:19 +00:00
Marty Kraimer
f3003d9052 Remove rule for RECTYPES 1996-09-05 14:22:31 +00:00
Marty Kraimer
340ffec332 Forgot = 1996-09-05 13:42:25 +00:00
Marty Kraimer
91c6f156ff conversion should not have added .5 (bad for - numbers) 1996-09-05 13:01:27 +00:00
Marty Kraimer
2008c19e7d Forgot to save changes last time 1996-09-05 12:52:42 +00:00
Marty Kraimer
4dcb0e3ae6 Changed AB SLC500 DCM names to show that it is only for SLC500 DCM 1996-09-05 12:37:33 +00:00
Marty Kraimer
74bc7758b5 changed to show that support is for SCL500 Dcm 1996-09-05 12:36:05 +00:00
Jeff Hill
17143d0e12 wait for proper compiler installation 1996-09-04 22:51:58 +00:00
Jeff Hill
40be4d1cd5 allow vxWorks 5.1 and gnu win 32 1996-09-04 22:47:09 +00:00
Jeff Hill
d1ba9be665 installed 1996-09-04 22:41:41 +00:00
Jeff Hill
7f6bd17474 removed until the new gnu compilers are installed 1996-09-04 22:41:12 +00:00
Jeff Hill
6a534ca2b5 fixed gcc warnings 1996-09-04 22:08:50 +00:00
Jeff Hill
26ec4dd5c8 installed 1996-09-04 22:06:47 +00:00
Jeff Hill
a0db9a2eb2 not used 1996-09-04 22:06:24 +00:00
Jeff Hill
b5a102ef79 moved netdb.h include here 1996-09-04 22:04:07 +00:00
Jeff Hill
ed1491bb7b fixed gcc warnings 1996-09-04 21:59:03 +00:00
Jeff Hill
7fabc325bb added level arg to client_stat 1996-09-04 21:58:27 +00:00
Jeff Hill
5b546d2467 added vxWorks support 1996-09-04 21:54:56 +00:00
Jeff Hill
6440239832 allow use with goofy vxWorks 5.2 time spec - which has unsigned sec and
signed nsec
1996-09-04 21:53:36 +00:00
Jeff Hill
cb6c444a19 added hashed fd to fdi convert 1996-09-04 21:50:16 +00:00
Jeff Hill
c251b05020 MS Visual C defines sys_errlist in stdlib.h 1996-09-04 21:48:29 +00:00
Jeff Hill
1f7cc343c5 fixed gcc warning 1996-09-04 21:46:20 +00:00
Janet B. Anderson
d67eb28145 Top level dir no longer passed to MakeRelease 1996-09-04 21:41:36 +00:00
Jeff Hill
3001f7e82f no what on win32 1996-09-04 21:40:28 +00:00
Janet B. Anderson
3982ea7d17 Added info about new targets. 1996-09-04 21:22:34 +00:00
Jeff Hill
3fe00ec2a9 installed 1996-09-04 21:21:01 +00:00
Jeff Hill
11fa08c1e0 installed 1996-09-04 21:02:33 +00:00
Jeff Hill
b8d2273683 added GDD_NAME_PV_NAME 1996-09-04 20:58:55 +00:00
Jeff Hill
77fc9734b1 changes for MS VISC++ 1996-09-04 20:58:18 +00:00
Jeff Hill
289302f603 add GDD_NAME_PV_NAME 1996-09-04 20:55:02 +00:00
Jeff Hill
a01241aa19 fixed gcc warnings 1996-09-04 20:44:19 +00:00
Marty Kraimer
525842b076 added devABANALOG 1996-09-04 20:41:57 +00:00
Marty Kraimer
03a4c8ad01 added devABANALOG 1996-09-04 20:41:10 +00:00
Jeff Hill
8a7158b3c6 installed into CVS 1996-09-04 20:39:59 +00:00
Jeff Hill
08c57574d5 removed os depen stuff 1996-09-04 20:29:08 +00:00
Jeff Hill
a6c40247f1 (char *) cast below is for brain dead wrs prototype 1996-09-04 20:28:18 +00:00
Jeff Hill
86969d7b3a doccasdef.h 1996-09-04 20:27:02 +00:00
Jeff Hill
a3c13f6da6 use correct app type for exist test gdd, correct byte oder for mon mask, and efficient use of PV name gdd 1996-09-04 20:25:53 +00:00
Jeff Hill
0d0566253e added operator -> 1996-09-04 20:23:59 +00:00
Jeff Hill
15fda603a5 init new member cas and add arg to serverToolDebug() 1996-09-04 20:23:17 +00:00
Jeff Hill
7c0895bd82 removed operator -> and added member pv 1996-09-04 20:21:41 +00:00
Jeff Hill
5311ba4c15 removed sizeof(casEventMask::mask) for MSVISC++ 1996-09-04 20:20:44 +00:00
Jeff Hill
27b0c05bcf added missing byte swap on search reply port no 1996-09-04 20:19:47 +00:00
Jeff Hill
435208afa8 include db_access.h 1996-09-04 20:19:02 +00:00
Jeff Hill
0f1f7fc30c moved operator -> here 1996-09-04 20:18:27 +00:00
Jeff Hill
471acea0fc init new chan member 1996-09-04 20:18:03 +00:00
Jeff Hill
e122d8f4a6 use ptr not ref to satisfy MSVISC++ 1996-09-04 20:17:34 +00:00
Jeff Hill
53bde9e545 initialize new member - asyncIO 1996-09-04 20:13:16 +00:00
Jeff Hill
2ccaa6dcb6 added arg to serverToolDebugFunc() 1996-09-04 20:12:04 +00:00
Jeff Hill
8c8b971221 comment 1996-09-04 20:11:43 +00:00
Jeff Hill
dd43f91278 added new files 1996-09-04 20:10:43 +00:00
Jeff Hill
6b3a62de9f added main.cc 1996-09-04 20:09:33 +00:00
Jeff Hill
4bd45337bf add getEnums() stub 1996-09-04 20:08:55 +00:00
Jeff Hill
9351447cf2 removed main() 1996-09-04 20:08:33 +00:00
Jeff Hill
b9cdf72ee1 added defualt copy constructor fer MSVISC++ 1996-09-04 20:07:52 +00:00
Jeff Hill
81000e9391 added include of os specific area 1996-09-04 20:06:15 +00:00
Jeff Hill
19b81912fb added mt makefiles 1996-09-04 20:04:57 +00:00
Jeff Hill
b7df13b4fe fixed gcc warning 1996-09-04 20:02:32 +00:00
Jeff Hill
2f3befc845 test for non-nill piiu under vxWorks 1996-09-04 20:02:00 +00:00
Jeff Hill
826b68b652 string id resource now copies id 1996-09-04 19:57:11 +00:00
Janet B. Anderson
aece23e6ee Removed VPATH (puts ../$(INSTALL_LOCATION) in search path) 1996-09-04 19:19:52 +00:00
Janet B. Anderson
3a9ddfbdbb Change ARCHS and ACTIONS defs to +=. 1996-09-04 18:26:44 +00:00
Janet B. Anderson
11bdb5f6d4 Removed cvsignore files. 1996-09-04 18:22:48 +00:00
Janet B. Anderson
741450ce9e Removed copy of vxWorks files. 1996-09-04 18:18:25 +00:00
Janet B. Anderson
868e6c417d Modified dependency. 1996-09-04 18:17:18 +00:00
Marty Kraimer
0c19e23835 added new rules 1996-09-04 15:29:48 +00:00
Marty Kraimer
342ffb5d83 fixed bugs repoeted in 3.13 beta1 1996-09-04 15:28:56 +00:00
Marty Kraimer
afa44fae79 added routines to obtain options for link field 1996-09-04 15:27:53 +00:00
Marty Kraimer
333b379287 fixed bugs 1996-09-04 15:26:58 +00:00
Marty Kraimer
36f74c934e removed event throttling code 1996-09-04 15:25:54 +00:00
Marty Kraimer
8f41686a98 If process routine found udf true it did not perform normal record completion 1996-09-04 15:25:19 +00:00
Marty Kraimer
75feb3a5d4 Changes for 3.13 1996-09-04 15:23:54 +00:00
Marty Kraimer
50ace741fe removed obsolete event throttling code 1996-09-04 15:23:22 +00:00
Marty Kraimer
036cd8dd26 Added INC+= 1996-08-27 16:11:30 +00:00
Marty Kraimer
9758aa4a45 Error on special gave wrong error message 1996-08-27 16:04:31 +00:00
Marty Kraimer
cf1cb554f6 dbPutField - Call special before converting to DB or CA 1996-08-27 16:03:42 +00:00
Marty Kraimer
ee68f746c6 Sometimes sdr2recordtype can't find field name 1996-08-27 15:48:31 +00:00
Jeff Hill
85f2cf5833 No longer used 1996-08-27 15:45:13 +00:00
Jim Kowalkowski
5819ac0c48 final repairs to string functions, put() functions, and error code printing 1996-08-27 13:05:10 +00:00
Jim Kowalkowski
3e26a12948 completed fixes for the aitString and fixed string management 1996-08-23 20:29:36 +00:00
Jim Kowalkowski
279385ecb9 made dump functions print more useful information 1996-08-23 20:28:46 +00:00
Jim Kowalkowski
75c91c8035 More fixes to make strings and fixed string work better. 1996-08-22 21:05:43 +00:00
Janet B. Anderson
1f39f39d79 R3.13.0.beta1 1996-08-15 14:50:15 +00:00
Marty Kraimer
d807b2ace5 More changes for handling forms 1996-08-14 20:59:07 +00:00
Janet B. Anderson
18c52e5839 CVS:Now allows archname in targets.
--------------------i--------------------------------------------------
1996-08-14 20:47:46 +00:00
Janet B. Anderson
81cd82fcca SPECIAL_LANG not needed any more. 1996-08-14 20:46:24 +00:00
Janet B. Anderson
f1d714a57e Added PHONEY stmnts. 1996-08-14 20:42:46 +00:00
Janet B. Anderson
7ce03e13e8 Removed reference to SPECIAL_LANG 1996-08-14 20:41:17 +00:00
Marty Kraimer
3ca0a1f556 More changes for code that handles forms 1996-08-14 18:50:13 +00:00
Jim Kowalkowski
b8a0083745 fixed a put() function that did not return anything 1996-08-14 16:29:38 +00:00
Janet B. Anderson
11925a7168 Added sch2edif and e2db and flags. 1996-08-14 14:33:48 +00:00
Jim Kowalkowski
e81b990a31 added first() to list class, added first()/last() to iterator. 1996-08-14 12:32:09 +00:00
Jim Kowalkowski
edff93791b fixes for converting aitString to aitInt8* and back
fixes for managing the units field for the dbr types
1996-08-14 12:30:15 +00:00
Jeff Hill
5ca9baaede removed os specific code 1996-08-13 23:16:23 +00:00
Jeff Hill
ea0ff36f65 fixed warning 1996-08-13 23:15:36 +00:00
Jeff Hill
a2b8735fe5 check status in call back 1996-08-13 23:14:59 +00:00
Jeff Hill
cb9583a21a win NT changes 1996-08-13 23:13:35 +00:00
Jeff Hill
3d1180b17f C++ support 1996-08-13 23:07:40 +00:00
Jeff Hill
507a125c2c removed include of netdb.h 1996-08-13 23:00:29 +00:00
Jeff Hill
c5bfbfccc0 added init to mutex class 1996-08-13 22:58:38 +00:00
Jeff Hill
d3e21e87b2 fdMgr.h => fdmanager.h 1996-08-13 22:58:15 +00:00
Jeff Hill
9c05191e9e added init for mutex class 1996-08-13 22:56:14 +00:00
Jeff Hill
9c2248a5c6 doc 1996-08-13 22:54:42 +00:00
Jeff Hill
546bb97e92 fixed little endian problem 1996-08-13 22:54:20 +00:00
Jeff Hill
c556f69387 changes for MVC++ 1996-08-13 22:53:14 +00:00
Jeff Hill
2ec12266ad dfMgr =>fdManager 1996-08-13 22:48:25 +00:00
Jeff Hill
13c03c4cde fixed tabs 1996-08-13 22:45:21 +00:00
Jeff Hill
99deec1134 fdMgr.h => fdManager.h 1996-08-13 22:44:24 +00:00
Jeff Hill
1938a00761 use put convert 1996-08-13 22:43:50 +00:00
Janet B. Anderson
e50d5375f8 Added mangen and capfast rules. 1996-08-13 21:48:00 +00:00
Jeff Hill
30e64505e3 added C++ support 1996-08-13 21:42:57 +00:00
Jeff Hill
0b3df30c4f many sequnecer changes from Andy Kozubal 1996-08-13 15:39:22 +00:00
Jim Kowalkowski
070673fa89 changes for better string manipulation and fixes for the units field 1996-08-13 15:07:48 +00:00
Jeff Hill
bfb6dcc118 fixed problem in ca_import_cancel() 1996-08-12 21:50:41 +00:00
Marty Kraimer
46c39c3253 Fixed various bugs related to forms 1996-08-12 20:17:49 +00:00
Jim Kowalkowski
ad232dd2d9 Re-added the installString() function I took out. 1996-08-12 15:37:46 +00:00
Janet B. Anderson
c40ff7da52 Removed .cvsignore file. 1996-08-12 15:14:01 +00:00
Janet B. Anderson
2af23a4893 SPECIAL_LANG changed for new compilers. 1996-08-09 14:01:27 +00:00
Marty Kraimer
7260cf15fb removed .cvsignore; added comment about cd path to startup file 1996-08-09 13:23:17 +00:00
Jim Kowalkowski
ee2cf25c35 fix getRef(aitString*&) to return the correct value if gdd is scalar 1996-08-09 02:29:16 +00:00
Jim Kowalkowski
08ec0e69d8 rewrite of aitString class - more intuitive now, I think 1996-08-09 02:28:09 +00:00
Marty Kraimer
e906138c55 Mods for handling forms 1996-08-08 19:05:34 +00:00
Marty Kraimer
0e6b238881 Changes for new config rules 1996-08-08 19:04:30 +00:00
Marty Kraimer
82e39acd3a Changed rule for dbExpand 1996-08-08 19:03:55 +00:00
Janet B. Anderson
85ef2f5a10 Added prod rule. 1996-08-07 22:38:13 +00:00
Janet B. Anderson
733ed90bd7 Uninstall rule changes. 1996-08-07 21:00:46 +00:00
Janet B. Anderson
4c8c63c9e1 DIRS now used by src/Makefile 1996-08-07 20:50:35 +00:00
Janet B. Anderson
aeaad63186 Now includes RULES_TOP, changed DIRS def. 1996-08-07 20:49:37 +00:00
Janet B. Anderson
70a87d2c95 Now includes RULES_DIRS, added rules for applications 1996-08-07 20:46:45 +00:00
Janet B. Anderson
41b53c1a67 Simplified syntax 1996-08-07 20:40:25 +00:00
Janet B. Anderson
a4ac96afdc Added VPATH, PHONEY, mangen rule, double colon rules. 1996-08-07 20:37:29 +00:00
Janet B. Anderson
a5d46a7a07 Added VPATH, PHONEY, mangen rule and changed rules to double colen rules 1996-08-07 20:23:31 +00:00
Janet B. Anderson
e37d227975 Now installs only build specific config files. 1996-08-07 20:14:26 +00:00
Janet B. Anderson
adab5e6a1a Make some includes optional 1996-08-07 20:12:37 +00:00
Janet B. Anderson
56a11aa90c New Makefile added. 1996-08-07 20:11:03 +00:00
Janet B. Anderson
969152088f Removed reference to EPICS_BASE 1996-08-07 20:10:00 +00:00
Janet B. Anderson
2a5871e303 Bug fix for SRCS.c 1996-08-07 20:09:03 +00:00
Janet B. Anderson
b5c459b036 Added option for creation of missing parent dirs 1996-08-07 20:08:00 +00:00
Janet B. Anderson
cffd160cf0 installEpics must be installed first. 1996-08-07 20:06:22 +00:00
Jim Kowalkowski
c4aa64946f Fixes to the string class.
Changes units field to a aitString instead of aitInt8.
1996-08-06 19:14:13 +00:00
Jeff Hill
069c404d64 use ca_import_cancel() 1996-08-05 23:50:59 +00:00
Jeff Hill
998e413bed gddScaler => gddScalar 1996-08-05 23:22:58 +00:00
Jeff Hill
8fd7fff71c use ca_import_cancel() 1996-08-05 22:41:08 +00:00
Jeff Hill
d799330ec0 removed READONLY which disagrees with VAX compiler 1996-08-05 21:58:57 +00:00
Jeff Hill
631de381fd fixed delete this confusion 1996-08-05 21:53:43 +00:00
Jeff Hill
f15f4ad524 added -include of HOME/.EPICS_CONFIG 1996-08-05 21:46:57 +00:00
Jeff Hill
13156bee16 removed ; from if 1996-08-05 19:33:40 +00:00
Jeff Hill
090e6ce3d3 fixed removes use of iter.cur() 1996-08-05 19:31:59 +00:00
Jeff Hill
fd2a536131 no change 1996-08-05 19:30:49 +00:00
Jeff Hill
6b6c9ce6a1 os depen code now smaller 1996-08-05 19:29:25 +00:00
Jeff Hill
95f4990b98 space became tab 1996-08-05 19:28:49 +00:00
Jeff Hill
ad2a272e90 added process() 1996-08-05 19:27:28 +00:00
Jeff Hill
7438234eb5 doc 1996-08-05 19:26:51 +00:00
Jeff Hill
67eb929b63 made os specific code smaller 1996-08-05 19:26:15 +00:00
Jeff Hill
5d73bdffb2 removed unused code 1996-08-05 19:25:17 +00:00
Jeff Hill
3c603a7e3f removed ERROR and OK 1996-08-05 19:24:23 +00:00
Jeff Hill
ec34df23fc removed unused proto 1996-08-05 19:21:26 +00:00
Jeff Hill
67dce79b62 removed incorrect ver number 1996-08-05 19:20:29 +00:00
Jeff Hill
70c885000e better msg for lack of fp 1996-08-05 19:18:56 +00:00
Jeff Hill
f2cd63c68f info level => warning several codes 1996-08-05 19:17:47 +00:00
Jeff Hill
7d342b5276 WIN sock specific fd range check 1996-08-05 19:16:27 +00:00
Jeff Hill
20880b3950 fixed O.xxx/Makefile 1996-07-30 21:27:39 +00:00
Marty Kraimer
6bd6481cbd check that recGblInitConstantLink returned TRUE before setting udf FALSE
Add DBE_LOG on call to db_post_event when necessary
1996-07-29 20:40:13 +00:00
Marty Kraimer
2433b09c1c additional include install commands were added 1996-07-29 20:35:04 +00:00
Marty Kraimer
a057f79d75 various bugs fixed 1996-07-29 20:33:43 +00:00
Marty Kraimer
1947538968 These utilities core dumped if given no arguments. 1996-07-29 20:29:00 +00:00
Marty Kraimer
dc6972ba06 "Allen Bradley 1746-HTSP" changed to "AB-1746HSTP1"
VS: ----------------------------------------------------------------------
1996-07-29 20:26:19 +00:00
Marty Kraimer
c4171b7ec0 initial check that argc>=2 1996-07-26 19:26:43 +00:00
Jim Kowalkowski
7f08759c2a Corrected a spelling with from gdd associated with the word Scalar. 1996-07-26 02:30:07 +00:00
Jim Kowalkowski
43b11de6ad Corrected a spelling error associated with the word Scalar from gdd. 1996-07-26 02:29:32 +00:00
Jim Kowalkowski
66ee6135ba Corrected the spelling error from gdd associated with the word Scalar 1996-07-26 02:28:37 +00:00
Jim Kowalkowski
3c4ffb5cc4 Fixed the spelling error with Scalar. 1996-07-26 02:23:18 +00:00
Jeff Hill
72a8c35f55 use pattern rule 1996-07-25 23:50:15 +00:00
Jeff Hill
53f2acfaa1 use RULES_DIRS 1996-07-25 21:38:53 +00:00
Jeff Hill
fe4cfd8091 no longer in use 1996-07-25 21:37:54 +00:00
Jeff Hill
8c2cefc5a4 eliminated for loops and redun recursion 1996-07-25 21:09:43 +00:00
Jeff Hill
dbe9f90ac1 DIRS def before include of RULES_TOP 1996-07-25 21:07:39 +00:00
Jeff Hill
4b47e7a979 use pointer (not ref) for list in iter class 1996-07-25 18:01:42 +00:00
Jeff Hill
d12ce5f58a updated tests to current version 1996-07-25 18:00:21 +00:00
Jeff Hill
f1b751a3d3 fixed missing ref in list decl 1996-07-25 17:58:16 +00:00
Jeff Hill
c324b8f598 instlled 1996-07-24 23:03:16 +00:00
Jeff Hill
64e851e05c use iter.remove() 1996-07-24 23:01:53 +00:00
Jeff Hill
e3fb1f6c90 fixed gnu warning int=>size_t 1996-07-24 22:48:06 +00:00
Jeff Hill
0844d7132f removed OPTIM_YES=-g which caused link fail 1996-07-24 22:47:29 +00:00
Jeff Hill
dd8fa0e290 installed makefiles 1996-07-24 22:26:29 +00:00
Jeff Hill
276dd19293 removed gdd:: from func proto 1996-07-24 22:17:17 +00:00
Jeff Hill
a312de99b0 added remove() to iter class + made node's prev/next private 1996-07-24 22:12:09 +00:00
Jeff Hill
ccfcd95561 removed casSpecificOS.h 1996-07-24 22:05:18 +00:00
Jeff Hill
2e42535459 fixed net proto for gnu compiler 1996-07-24 22:03:36 +00:00
Jeff Hill
d3432d487a added pushOnToEventQueue() 1996-07-24 22:00:50 +00:00
Jeff Hill
c6701f8475 CXXCMPLR = STRICT 1996-07-24 21:57:17 +00:00
Jeff Hill
dba800ebb7 fixed gnu warnings 1996-07-24 21:55:33 +00:00
Jeff Hill
cda87cbf31 made acctst catime into targets 1996-07-24 21:52:36 +00:00
Jim Kowalkowski
376f37eb1e various fixes - dbmapper incorrectly worked with enum types 1996-07-23 17:13:34 +00:00
Janet B. Anderson
2f2f378238 Updated to reflect config dir changes. 1996-07-16 14:18:48 +00:00
Janet B. Anderson
4e1d778fc8 Reflects config dir modifications 1996-07-12 19:09:22 +00:00
Janet B. Anderson
9c1d4be29d Added tar rule 1996-07-12 16:12:02 +00:00
Janet B. Anderson
291b22271f Added target specific flags for cpp and snc 1996-07-12 15:58:14 +00:00
Jeff Hill
a8db0e5d73 fixed client disconnect problem under solaris 1996-07-12 00:40:48 +00:00
Janet B. Anderson
4ba33b8259 Major revision of config directory again. 1996-07-11 19:16:59 +00:00
Jeff Hill
4b7dd0f8b1 installed 1996-07-11 00:05:57 +00:00
Jeff Hill
0c831f7e5a fixed comment 1996-07-10 23:59:34 +00:00
Jeff Hill
4b655c1632 moved gddAppFuncTbl.h 1996-07-10 23:57:07 +00:00
Jeff Hill
01462e1c7c added install for gddAppFuncTable.h 1996-07-10 23:48:03 +00:00
Jeff Hill
5832c6fa25 moved to src/gdd 1996-07-10 23:44:42 +00:00
Jeff Hill
9eab30d3fc moved here from src/cas/generic 1996-07-10 23:44:12 +00:00
Jeff Hill
46beb63264 fixed GNU warnings 1996-07-10 23:36:10 +00:00
Jeff Hill
ab9a1d4022 fixed comment 1996-07-10 23:32:51 +00:00
Jeff Hill
0ab1978030 fixed GNU warnings 1996-07-10 23:30:12 +00:00
Jeff Hill
845a45d20e installed 1996-07-10 23:23:52 +00:00
Janet B. Anderson
2486f6b20f Initial version. 1996-07-10 20:58:06 +00:00
Jeff Hill
49e7beed3b fixed bug where slot is wrong when EPICS_VXI_LA_BASE isnt 0 1996-07-10 17:49:10 +00:00
Janet B. Anderson
d175ff7449 Remove old EPICS_BASE file. 1996-07-10 16:46:39 +00:00
Marty Kraimer
14a2f1866d added makeBaseApp 1996-07-10 14:50:42 +00:00
Marty Kraimer
236cf1ddf8 added macLib 1996-07-10 14:49:55 +00:00
Marty Kraimer
01402c6bbd added support for macro substitution 1996-07-10 14:46:49 +00:00
Marty Kraimer
b1450980b5 Changed dbExpandInclude to dbExpand 1996-07-10 14:46:01 +00:00
Marty Kraimer
b40676fe20 changed dbExpandInclude to dbExpand 1996-07-10 14:43:12 +00:00
Jeff Hill
dea19e8846 use strict ANSI compiler 1996-07-09 23:05:26 +00:00
Jeff Hill
d08070f69b silenced gcc warnings 1996-07-09 23:03:02 +00:00
Jeff Hill
3eeee76e99 mark fd entry in limbo during delete 1996-07-09 23:02:05 +00:00
Jeff Hill
2bcf574f79 nill 2nd arg to gettimeofday() 1996-07-09 23:01:31 +00:00
Jeff Hill
d4f77948a0 added new operators 1996-07-09 23:01:04 +00:00
Jeff Hill
1df41d2964 force timer into limbo state during delete 1996-07-09 23:00:06 +00:00
Jeff Hill
9b5fa04dae added installation of the include files 1996-07-09 22:58:55 +00:00
Jeff Hill
d1c337f7a3 added include of stddef.h for gcc compilation 1996-07-09 22:56:17 +00:00
Jeff Hill
543a610bb4 added cast 1996-07-09 22:55:22 +00:00
Jeff Hill
eed3471e15 store msg copy in the ctx 1996-07-09 22:54:31 +00:00
Jeff Hill
b0e533dd75 init stat and sev in gdd 1996-07-09 22:53:33 +00:00
Jeff Hill
04b02a71a5 store copy of msg in ctx 1996-07-09 22:51:14 +00:00
Jeff Hill
7a18c98df3 removed redundant stuff 1996-07-09 22:49:33 +00:00
Jeff Hill
a4b092c966 fast time fetch 1996-07-09 22:48:29 +00:00
Jeff Hill
9e62be865b fast time and limited execution time 1996-07-09 22:47:33 +00:00
Jeff Hill
1969cbb2af cleaned out redundant -I 1996-07-09 22:45:09 +00:00
Jeff Hill
495d94ee15 silence gcc warnings and default CLOCKS_PER_SEC if it isnt defined (for sunos4 and gcc) 1996-07-09 22:43:29 +00:00
Jeff Hill
4ca3bf9217 use strict ansi compiler 1996-07-09 22:42:02 +00:00
Jeff Hill
d7f522577f silence gcc warning 1996-07-09 22:41:28 +00:00
Jeff Hill
cdb0a5719b pass nill 2nd arg to gettimeofday() 1996-07-09 22:41:02 +00:00
Jeff Hill
a8bf57750d now supports build with gnu compilers 1996-07-09 22:39:40 +00:00
Janet B. Anderson
c0bb0d68af Changed location of iocCore files. 1996-07-09 20:42:14 +00:00
Janet B. Anderson
c2ebb2d91b Initial version 1996-07-09 20:04:58 +00:00
Janet B. Anderson
5d0347c8ef Added TARGET_CPPFLAGS 1996-07-09 14:33:14 +00:00
Janet B. Anderson
d9aeca1b19 Removed all references to OLDINSTALL 1996-07-08 17:42:26 +00:00
Janet B. Anderson
fb3ada00dd Updates for new directory structure. 1996-07-08 15:27:38 +00:00
Janet B. Anderson
67e383af94 Moved include RULES.Unix 1996-07-08 15:20:02 +00:00
Janet B. Anderson
5791d6b61c Directory drv/combine no longer exists. 1996-07-08 15:09:25 +00:00
Janet B. Anderson
637a046890 devSup no longer built. Individual *.o files installed. 1996-07-08 15:08:13 +00:00
Janet B. Anderson
e61dce7a96 drvSup no longer built. Individual *.o files installed. 1996-07-08 15:05:50 +00:00
Janet B. Anderson
a7bf1d42e6 Remove build of recSup. 1996-07-08 15:02:32 +00:00
Janet B. Anderson
a229aaa159 Added ERR_S_FILES to Makefile.* files and removed blderrSymTbl and errInc.* 1996-07-08 14:57:49 +00:00
Janet B. Anderson
c82788102c Moved InstallVersion to extensions 1996-07-06 20:24:21 +00:00
Janet B. Anderson
622ad2926d Moved InstallVersion to extensions. 1996-07-06 19:52:37 +00:00
Janet B. Anderson
4299e39bce Added INSTALLS 1996-07-06 18:56:51 +00:00
Jeff Hill
c3d2e1a46a use ./aitGen and ./genApps per Janet's request 1996-07-03 00:02:56 +00:00
Jeff Hill
39fdd3f785 added missing #define for traditional C 1996-07-02 23:12:01 +00:00
Jeff Hill
0f28113959 added func proto 1996-07-02 23:11:20 +00:00
Jeff Hill
433e81791b vms changes 1996-07-02 23:09:42 +00:00
Jeff Hill
5e2aea4dab took &tz out of gettimeofday() 1996-07-02 23:04:07 +00:00
Jeff Hill
0074252862 VMS changes and traditional C changes 1996-07-02 23:03:12 +00:00
Janet B. Anderson
125282e839 epics_R3_13_0_alpha5 1996-07-02 13:47:03 +00:00
Janet B. Anderson
ea7f95fe17 Added dbd and base/config dirs. Removed epics/config and base/rec. 1996-07-02 13:45:09 +00:00
Janet B. Anderson
9574829a43 Added uninstall of config dir. 1996-07-01 20:14:55 +00:00
Janet B. Anderson
9f6c8d2cb4 Removed extra print line. 1996-07-01 20:07:01 +00:00
Jeff Hill
d2adaabbfe fixed case where gdd was mapped to a string without cvrt 1996-07-01 19:59:12 +00:00
Jeff Hill
e32066749b one last update prior to first release 1996-07-01 19:56:15 +00:00
Jeff Hill
f93fa732ac moved exist test expire to exServer.cc 1996-07-01 19:53:47 +00:00
Jeff Hill
2fc14dc03b removed extra obj from fast build 1996-07-01 19:52:17 +00:00
Jeff Hill
8e8ff2a2f6 removed junk 1996-07-01 19:50:09 +00:00
Jeff Hill
969479e04f turned on analog value wrap-around test 1996-07-01 19:49:15 +00:00
Jeff Hill
9dddad37ca took out purify etc - also include dbMapper 1996-06-28 19:17:31 +00:00
Marty Kraimer
741d784ad3 don't create soft link for base 1996-06-28 18:46:25 +00:00
Jeff Hill
97b4200806 fixed sun4 problems 1996-06-28 18:24:46 +00:00
Janet B. Anderson
2727281cb4 Chnges for move of config directory. 1996-06-28 15:33:55 +00:00
Janet B. Anderson
e1ecb4f2e0 Moved config dir to base/config. 1996-06-28 15:20:11 +00:00
Janet B. Anderson
22ae937b08 Initial version after move of config directory. 1996-06-28 15:12:57 +00:00
Marty Kraimer
1e52376f87 added seq 1996-06-28 14:12:03 +00:00
Jim Kowalkowski
17333e4278 changes data type to string conversions to use installString(), not copy() 1996-06-27 14:33:13 +00:00
Marty Kraimer
6467c0a777 fixed rule for making dbCommon.h 1996-06-27 12:58:06 +00:00
Jeff Hill
e6768e0c94 added C++ support 1996-06-27 01:58:27 +00:00
Jeff Hill
a10641575b added caProto.h to INC 1996-06-26 23:33:34 +00:00
Jeff Hill
b06c40e470 changed where caProto.h comes from (again) 1996-06-26 23:32:17 +00:00
Jeff Hill
61c525792e added additional include paths 1996-06-26 23:10:16 +00:00
Jeff Hill
a7375e363b took path out of casInternal.h include 1996-06-26 23:08:55 +00:00
Jeff Hill
99b8d0d0fd added casInternal.h to INC 1996-06-26 23:08:25 +00:00
Jeff Hill
a76a338e8e added new src files 1996-06-26 22:14:15 +00:00
Jeff Hill
f1cd963176 added cas/generic 1996-06-26 22:13:46 +00:00
Jeff Hill
d89a50416c added casdef.h and gdd app jump table 1996-06-26 22:12:49 +00:00
Jeff Hill
2d55dafacc commented out drvCaenV265.c 1996-06-26 22:09:13 +00:00
Jeff Hill
418fa60dbd removed osi headers 1996-06-26 21:53:29 +00:00
Jeff Hill
a75f083371 removed extra files from INC 1996-06-26 21:52:31 +00:00
Jeff Hill
5a8bb49c77 fixed acctst catime targets for solaris 1996-06-26 21:48:51 +00:00
Jeff Hill
5f1ec28daf fixed build 1996-06-26 21:35:40 +00:00
Jeff Hill
31fd02f8e9 deleted 1996-06-26 21:33:58 +00:00
Jeff Hill
ebc6972f74 updated to match new gdd API 1996-06-26 21:27:27 +00:00
Jeff Hill
eb437e162f install header files 1996-06-26 21:20:22 +00:00
Jeff Hill
7121929f1e now matches gdd api revisions 1996-06-26 21:19:04 +00:00
Jeff Hill
7942f42242 fixed to match config in src 1996-06-26 21:17:10 +00:00
Jim Kowalkowski
91347ff65f Fixed up code in aitHelpers, removed unused variables in others
Fixed potential problem in gddAppTable.cc with the map functions
1996-06-26 21:00:08 +00:00
Marty Kraimer
aa8cceb119 changed epics.dbd to base.dbd and epicsLIBOBJS to baseLIBOBJS 1996-06-26 20:12:42 +00:00
Marty Kraimer
ee0faa077f added config 1996-06-26 20:09:07 +00:00
Jim Kowalkowski
78c7233d0e more correction to the aitString processing - testing menus 1996-06-26 02:42:06 +00:00
Jeff Hill
87b2b3b1e6 added CHAR_BIT to max bound calc for the "ref_cnt" member of class gdd 1996-06-26 00:19:40 +00:00
Janet B. Anderson
701d2ee9cb Top dir now base not epics. config dir moved to base/src/config 1996-06-25 21:57:43 +00:00
Janet B. Anderson
2b293e286a Top dir now base not epics 1996-06-25 21:55:26 +00:00
Janet B. Anderson
0a824f8b40 Command line parm now base dir 1996-06-25 21:54:42 +00:00
Janet B. Anderson
28c4ce844d Makefile includes now from base/src/config, removed all soft links 1996-06-25 21:48:55 +00:00
Jim Kowalkowski
e9a86c7e26 moved from extensions to base - fixed trouble in dbMapper.cc 1996-06-25 19:18:12 +00:00
Jim Kowalkowski
54d746e3f3 new in EPICS base 1996-06-25 19:11:52 +00:00
Marty Kraimer
6a116affea removed M_dbCa 1996-06-24 13:37:31 +00:00
Marty Kraimer
e73ba4b3c3 removed calinh.h . #if 0 for "casdef.h". 1996-06-24 13:36:59 +00:00
Marty Kraimer
4a5a2f463b commented out fdMgr.cc 1996-06-24 13:34:40 +00:00
Marty Kraimer
055b8a7149 added task_params.h 1996-06-24 13:32:35 +00:00
Marty Kraimer
00ca9457c4 Changed dbFindRecdes to dbFindRecordType 1996-06-24 13:31:01 +00:00
Marty Kraimer
0238591d9a removed calink.h obsolete 1996-06-24 13:28:50 +00:00
Marty Kraimer
459571b648 extension .db changed to .dbd 1996-06-24 13:28:08 +00:00
Marty Kraimer
0646d6795f changed recdes to recordType 1996-06-24 13:27:00 +00:00
Marty Kraimer
a56d58cf95 removed calink 1996-06-24 13:26:33 +00:00
Marty Kraimer
47171dd159 added dbd 1996-06-24 13:25:36 +00:00
Marty Kraimer
47ad9222a2 extension .db goes to .dbd 1996-06-24 13:23:53 +00:00
Marty Kraimer
4376d7b186 main changes is recdes => recordType 1996-06-24 13:20:20 +00:00
Marty Kraimer
6f2acd5645 Changed extension .db to .dbd 1996-06-24 13:19:07 +00:00
Marty Kraimer
87307b87bf Changed extension db to dbd 1996-06-24 13:15:57 +00:00
Marty Kraimer
00d9239af7 changed .db to .dbd 1996-06-21 17:54:55 +00:00
Marty Kraimer
f119d0556f removed calink.h 1996-06-21 12:40:44 +00:00
Jeff Hill
c7667fded7 solaris port 1996-06-21 02:30:58 +00:00
Jeff Hill
b5bb5a0f46 added PROD excas 1996-06-21 02:29:49 +00:00
Jeff Hill
dda17e5eaf correct install 1996-06-21 02:28:47 +00:00
Jeff Hill
f67af0cd21 SOLARIS port 1996-06-21 02:18:11 +00:00
Jeff Hill
160aab02eb added fdMgr.cc 1996-06-21 02:08:36 +00:00
Jeff Hill
9a1e7a3034 added stdio.h include 1996-06-21 02:03:40 +00:00
Jeff Hill
d141e38a80 add fdMgr.h fdMgr.cc 1996-06-21 01:08:54 +00:00
Jeff Hill
25b5b8d5c2 use sigemptyset() and cc -Xc changes 1996-06-21 01:07:46 +00:00
Jeff Hill
ad26ee285f added INC += fdMgr.h 1996-06-21 01:06:20 +00:00
Jeff Hill
7f00b2034f removed include of calink.h 1996-06-21 00:57:05 +00:00
Jeff Hill
2f6e847cf6 added IOC_LOG_FILE_COMMAND 1996-06-21 00:22:23 +00:00
Jeff Hill
484427be12 eliminated include of calink.h 1996-06-20 23:21:37 +00:00
Jeff Hill
20d75f926c removed extra files 1996-06-20 22:37:15 +00:00
Jeff Hill
922206cbcc installed 1996-06-20 22:34:05 +00:00
Jeff Hill
9ab235fee7 installed test codes for the ca server templates 1996-06-20 22:26:40 +00:00
Jeff Hill
dda8b9c9f6 installed ca server templates 1996-06-20 22:15:56 +00:00
Jeff Hill
117b4c7a9f removed casdef.h 1996-06-20 21:47:58 +00:00
Jeff Hill
ce6fe283b8 moved to src/cas/generic 1996-06-20 21:47:19 +00:00
Jeff Hill
f904389afc restored io_done_sem (removed by cleanup) 1996-06-20 21:43:15 +00:00
Jeff Hill
de3bf16215 fixed posix signal problem with "cc -Xc" 1996-06-20 21:19:35 +00:00
Jeff Hill
ac20fb5a17 changed installed include files 1996-06-20 18:11:02 +00:00
Jeff Hill
88ef5bfc7c changed where casInternal comes from 1996-06-20 18:09:43 +00:00
Jeff Hill
04a8db049f changed where caProto.h comes from 1996-06-20 18:08:35 +00:00
Jeff Hill
a624ea2c0c moved to the ca directory 1996-06-20 18:06:56 +00:00
Jeff Hill
4609aa45d5 remove calink.h install 1996-06-20 18:06:05 +00:00
Jeff Hill
473f12132d installed into CVS 1996-06-20 18:02:22 +00:00
Jeff Hill
8d43b12d93 removed sbufLib 1996-06-20 17:43:55 +00:00
Jeff Hill
fcc810efba eliminated sbufs 1996-06-20 16:27:33 +00:00
Jeff Hill
4697f951b9 ca server installation 1996-06-20 00:28:19 +00:00
Jeff Hill
14f53d7844 header difference 1996-06-19 20:52:59 +00:00
Jeff Hill
9ea7fc6dd1 fixed resource managr bug occurring in mixed SC/DC systems 1996-06-19 20:52:04 +00:00
Jeff Hill
8f299a1d80 removed #if 0 1996-06-19 20:49:37 +00:00
Jeff Hill
7263c8a271 dounled ca stack for each ca cleint in the server 1996-06-19 20:48:44 +00:00
Jeff Hill
41557f3946 many r3.13 changes 1996-06-19 20:39:25 +00:00
Jeff Hill
7cf7fea999 add gddFfuncTable 1996-06-19 20:07:33 +00:00
Jeff Hill
391cbf40b6 added iocLogPrintf() 1996-06-19 20:06:17 +00:00
Jeff Hill
093a0533c4 added more prototypes for C++ 1996-06-19 20:04:39 +00:00
Jeff Hill
db44eedef4 added missing defines/enums, corrected defines 1996-06-19 19:59:31 +00:00
Jeff Hill
1a78dc9064 C++ support 1996-06-19 19:44:53 +00:00
Jeff Hill
ca6ed090ff made character string pointers be const 1996-06-19 19:29:14 +00:00
Jeff Hill
df34a2eabc added sync grp status and ca_poll() 1996-06-19 19:27:10 +00:00
Jeff Hill
ad033dd8c2 no longer needed 1996-06-19 19:19:28 +00:00
Jeff Hill
16e9dc781a SIGHUP changes added by KECK 1996-06-19 18:03:17 +00:00
Jeff Hill
6e229435d1 log entries in header were different 1996-06-19 18:01:09 +00:00
Jeff Hill
65c14ab802 many 3.13 beta changes 1996-06-19 17:59:31 +00:00
Jeff Hill
ef0402dcbd now compilable by C++ 1996-06-19 17:16:48 +00:00
Jeff Hill
506003f300 print out the EPICS release when there is an assert failure 1996-06-19 17:14:12 +00:00
Jeff Hill
a03cf9b56e check for fd>FD_SETSIZE and improved func proto 1996-06-19 17:12:40 +00:00
Janet B. Anderson
a8f0ec2338 FIxed strlen test. 1996-06-19 14:39:54 +00:00
Janet B. Anderson
d7f50f503e END_STACK definition changed to 127. 1996-06-19 14:39:17 +00:00
Janet B. Anderson
fb82d0de0a Removed unused END_ELEMENTS definition. 1996-06-19 14:38:38 +00:00
Janet B. Anderson
20eed1bd05 Fixed END_STACK definition and fixed printf stmnt. 1996-06-19 14:37:06 +00:00
Janet B. Anderson
4b248c8abe GetVar now a function in blderrSymTbl 1996-06-19 14:31:39 +00:00
Janet B. Anderson
bd1b6d4f50 GetVar now part of libCom/blderrSymTbl 1996-06-19 14:29:43 +00:00
Janet B. Anderson
62551322b2 Mods to make -Wall -pedantic not complain - rc 1996-06-18 16:03:14 +00:00
Janet B. Anderson
64809b2c52 Changed END_STACK to 0xff 1996-06-18 15:55:33 +00:00
Marty Kraimer
dbb1fc2aa0 fixed several problems that made free_gdct crash of DTYP for 1996-06-14 18:31:23 +00:00
Marty Kraimer
b5fc2cd1dd for menuform parm fields present leading @ 1996-06-13 20:41:54 +00:00
Marty Kraimer
755abbeaef put to hardware links had bug 1996-06-13 20:40:59 +00:00
Marty Kraimer
601cb19fa4 changed error message 1996-06-13 18:36:06 +00:00
Marty Kraimer
5fc13933a5 remove duplicate def for dbGetString 1996-06-13 18:26:12 +00:00
Marty Kraimer
755aebb11b if nelm is 1 make nord also 1 1996-06-13 18:22:27 +00:00
Marty Kraimer
29a8aab459 dbGetPrompt was accidently removed 1996-06-13 18:20:55 +00:00
Janet B. Anderson
f0e6c62973 epics_R3_13_0_alpha4 1996-06-12 20:19:57 +00:00
Marty Kraimer
a2939aa9c5 added dbGetDefault 1996-06-12 20:10:24 +00:00
John Winans
f2b70591eb Added better debugging code to the initXX logic. 1996-06-12 20:04:51 +00:00
Janet B. Anderson
7412b68956 HP_UX fix for sockio. 1996-06-11 20:39:52 +00:00
Marty Kraimer
49173bcb97 Prevent unilialized precision for cvtStringToDouble 1996-06-11 19:51:14 +00:00
Marty Kraimer
e52d0e0929 Fixed numerous bugs 1996-06-11 19:49:47 +00:00
Janet B. Anderson
470c461102 MakeRelease is now in release tar file. 1996-06-07 19:19:10 +00:00
Janet B. Anderson
70e01fcb18 linux fix for socketio include. 1996-06-07 19:02:50 +00:00
John Winans
8c55790b98 Changed 'send' command to 'DISP?' 1996-06-06 21:20:08 +00:00
John Winans
391565de5c Fixed external reference to GPIB driver's DRVET 1996-06-06 14:35:41 +00:00
Janet B. Anderson
b9395b020c Removed extra quote mark. 1996-06-04 14:51:42 +00:00
Jim Kowalkowski
4ccdf79d2f added support for user defined soft events 1996-05-31 12:23:20 +00:00
Marty Kraimer
97dc3b8899 initialized status 1996-05-10 17:38:19 +00:00
Marty Kraimer
13a5f820c6 removed seq_taskLib.h 1996-05-10 17:32:17 +00:00
Marty Kraimer
da20e059f7 remove hard path to base/include 1996-05-10 16:10:18 +00:00
Janet B. Anderson
2c5958f022 EPICS Version R3.13.0.alpha3 1996-05-10 14:51:49 +00:00
Marty Kraimer
a9cad7df54 emoved hard path to base/include 1996-05-10 14:46:41 +00:00
Marty Kraimer
42f6f3c9ce Obsolete 1996-05-09 19:39:01 +00:00
Marty Kraimer
87a9b22a15 I am committing changes made by LANL and LBL 1996-05-09 19:30:37 +00:00
Marty Kraimer
012180ab65 Still working on 3.13.0.alpha3 1996-05-09 14:51:09 +00:00
John Winans
ad2128b691 Created to ignore the O.* make-generated directories 1996-05-03 19:06:30 +00:00
John Winans
7e8bdc7e43 Added the EOS logic from Mark Rivers. (It is only supported for HiDEOS
GPIB interfaces.)
1996-05-03 19:05:37 +00:00
John Winans
e1042ca5ee Fixed a reversed set of parms to a semBCreate().
Changed the data type of a parameter to memory probe call.
1996-05-03 19:04:44 +00:00
Marty Kraimer
2390c0ace5 added client_stat_summary until Jeff can add functionality to client_stat 1996-05-03 14:20:14 +00:00
Marty Kraimer
17989d29fe added POSITIVE_HOME NEGATIVE_HOME. (Ric Claus SLAC) 1996-05-03 14:17:18 +00:00
Marty Kraimer
92b1b34e02 Mods contributed by Ric Claus (SLAC) 1996-05-03 14:14:22 +00:00
Marty Kraimer
427ea50c50 Added devSmAB1746HSTP1 (From Ric Claus at SLAC) 1996-05-03 14:13:37 +00:00
Marty Kraimer
cdd3e932fb added check for dbPutString to DBF_STRING if string size too long 1996-05-03 14:12:35 +00:00
Marty Kraimer
3e0445f2ad Fixed many bugs 1996-05-03 14:11:06 +00:00
Marty Kraimer
bbbc3b6329 added devSmAB1746Hstp1 1996-05-03 14:10:24 +00:00
Marty Kraimer
14d712b57c Added callbackSetQueueSize 1996-05-03 14:09:27 +00:00
Marty Kraimer
a6d0a677ee Modified astac to display record name 1996-05-03 14:07:52 +00:00
Marty Kraimer
b258b2fc14 periodicTask - start_time=tickGet 1996-04-22 15:46:44 +00:00
Marty Kraimer
535ef14cf8 Changes for dynamic link modification 1996-04-22 14:44:45 +00:00
Marty Kraimer
5a983c11cb Make sure link structure is allocated 1996-04-22 14:40:24 +00:00
Marty Kraimer
8bd797aa5b Changes for dynamic link modificartion 1996-04-22 14:37:42 +00:00
Marty Kraimer
28797e7a1a Changes for dynamic link modification 1996-04-22 14:33:50 +00:00
Jeff Hill
2a3fc15e9e fixed problem where epvxiWrite() was only able to xmit positive characters 1996-04-09 15:32:50 +00:00
Jeff Hill
9fae1fa33c dont allow init to be called more than once 1996-03-29 22:35:56 +00:00
Janet B. Anderson
13ff432956 Fixed location of sh. 1996-03-26 18:31:35 +00:00
Marty Kraimer
461584c4d1 Moved to central location 1996-03-26 17:06:50 +00:00
Marty Kraimer
59e1ef1d77 Created notice in one place 1996-03-26 17:03:43 +00:00
Janet B. Anderson
359225dd34 Fixed link and compile lines. 1996-03-22 17:49:20 +00:00
Marty Kraimer
6dceef4956 Added breakpoint tables 1996-03-12 18:58:08 +00:00
Marty Kraimer
81eac9ddec Breakpoint Tables were not working 1996-03-11 16:22:29 +00:00
Janet B. Anderson
3e1e1ae6aa Renamed EPICS version R3.12.2.2 to R3.13.0.alpha2 1996-03-07 19:25:58 +00:00
Marty Kraimer
3ed241a857 Made checkLink STATIC; Added STATIC to all internal forward references 1996-03-06 14:18:45 +00:00
Marty Kraimer
6e37e4a8b7 Made STATIC static 1996-03-06 14:17:34 +00:00
Marty Kraimer
45910c7eae Added module 1996-03-06 14:16:14 +00:00
Janet B. Anderson
ab72202752 epicsVersion.h now in src/include. 1996-03-04 21:03:48 +00:00
Janet B. Anderson
b728e45751 EPICS Version R3.12.2.2 1996-03-04 20:58:54 +00:00
Janet B. Anderson
8b4249b582 Updated for R3.12.2.2 1996-03-04 17:25:05 +00:00
Janet B. Anderson
bf260930ea Removed unused ARCH_TYPE 1996-03-04 17:24:41 +00:00
Janet B. Anderson
e460c225da Added the command to invoke the gnu version of make as a parm to GetVar 1996-03-04 16:44:53 +00:00
Janet B. Anderson
4a07ca3a11 The command to invoke the gnu version of make is now a parm to GetVar 1996-03-04 16:43:47 +00:00
Marty Kraimer
2aeca30e8f Removed gmake 1996-03-04 14:21:27 +00:00
Marty Kraimer
6ad8e0f575 Simplify 1996-03-04 14:20:33 +00:00
Marty Kraimer
18822cda96 Call printf instead of epicsPrintf to prevent deadlocks. 1996-03-04 14:19:51 +00:00
Marty Kraimer
acaa1b6fbf Cosmetic change 1996-03-04 14:15:04 +00:00
Marty Kraimer
38875dd8a7 Added drvVmic2534 from LBL. NOTE: NOTE YET ANSIFIED 1996-03-04 14:13:53 +00:00
Marty Kraimer
af39a62adc Added devVmic2534 which came from LBL 1996-03-04 14:13:01 +00:00
Marty Kraimer
fc981f3f7b Bug fix reported by Bill Brown and LBL 1996-03-04 14:12:19 +00:00
Marty Kraimer
f726540476 Added dbDumpPath 1996-03-04 14:11:36 +00:00
Marty Kraimer
759d10c50e Added Vmic2534 1996-03-04 14:09:15 +00:00
Marty Kraimer
27d9d4d708 Added epicsLIBOBJS 1996-03-04 14:08:36 +00:00
Marty Kraimer
8643ae7413 New module 1996-03-04 14:07:46 +00:00
Marty Kraimer
f04b9fd8d3 If asInit fails generate error message and terminate. 1996-03-04 14:06:42 +00:00
Marty Kraimer
574eb184cf If asSetFilename has been called and asInit fails make sure error returned 1996-03-04 14:05:11 +00:00
Janet B. Anderson
ff33b704aa Updated README files to reflect directory changes and new installEpics. 1996-02-20 21:04:04 +00:00
Janet B. Anderson
b23500efe6 Moved tools to src/tools dir. base/tools dir removed. 1996-02-20 20:58:44 +00:00
Janet B. Anderson
14f0ea61dd GetVar now found in base/bin dir. base/tools dir removed. 1996-02-20 20:57:15 +00:00
Janet B. Anderson
6dc0835a7d Changed field reference from val to oval in devGpibLib_aoGpibWork 1996-02-16 22:04:58 +00:00
Marty Kraimer
ade952f351 Forgot a ) 1996-02-16 19:57:44 +00:00
Marty Kraimer
dd34fb320b Fixed bugs 1996-02-16 19:27:11 +00:00
Marty Kraimer
86e4be2f04 Dont use path if filename contains / 1996-02-16 19:26:20 +00:00
Jim Kowalkowski
06626adbb8 New file for gnu loader to create C++ executables. 1996-01-31 20:43:47 +00:00
Jim Kowalkowski
5a32f7143d Now installing BSlib. Wow. 1996-01-29 17:18:55 +00:00
Jim Kowalkowski
717ace8079 Added the simple program to allow loading of C++ object modules. 1996-01-29 17:05:58 +00:00
Marty Kraimer
95294e2f3e added 1996-01-25 21:45:25 +00:00
Marty Kraimer
341ec908c2 moved files from /base/include 1996-01-25 21:39:01 +00:00
Marty Kraimer
f91c3356ab uninstall base/man 1996-01-25 21:37:09 +00:00
Marty Kraimer
6b6ef88793 base/rec=>base/db base/include now installed 1996-01-25 21:29:42 +00:00
Marty Kraimer
adea6a0894 moved flex.skel.static from base/include 1996-01-25 21:27:08 +00:00
Marty Kraimer
866e676a7a .ascii=>.db 1996-01-25 21:26:43 +00:00
Marty Kraimer
a8da2b9da4 moved include files from base/include 1996-01-25 21:24:40 +00:00
Marty Kraimer
ff6d6cb70a made iocLogDisable global 1996-01-25 21:20:56 +00:00
Marty Kraimer
d205dc9b10 moved include files. .ascii=> .db; path changes 1996-01-25 21:15:09 +00:00
Marty Kraimer
777e2d093d moved include file from base/include 1996-01-25 21:14:42 +00:00
Marty Kraimer
dbfab6b29e moved includes; .ascii=> .db; path changes 1996-01-25 21:13:33 +00:00
Marty Kraimer
ecaaeb439a extension .ascii => .db 1996-01-25 21:10:07 +00:00
Marty Kraimer
a635590f31 moved include files from base/include 1996-01-25 21:08:08 +00:00
Marty Kraimer
795b9645c9 moved include from base/include; .ascii => .db 1996-01-25 21:07:08 +00:00
Marty Kraimer
fcf601fbf1 moved include file from base/include 1996-01-25 21:05:49 +00:00
Marty Kraimer
b95596f602 Moved include files from base/include 1996-01-25 21:04:37 +00:00
Jeff Hill
d0766a4f38 fixed compile faill resulting from union member name change 1996-01-18 20:54:56 +00:00
Jeff Hill
a650cd3ca2 dont print benign message about client disconnect 1995-12-20 16:59:16 +00:00
Jeff Hill
96bd0f11c9 dont print no connect msg if it is benign 1995-12-20 16:56:47 +00:00
Jeff Hill
aaa2580224 Use connectWithTimeout() instead of connect() 1995-12-19 19:49:20 +00:00
Jeff Hill
84f32df855 added include required by UCX 1995-12-19 19:47:56 +00:00
Jeff Hill
79baa59608 optimized alarm entry sort 1995-12-19 19:41:24 +00:00
Jeff Hill
853031bc90 added author name 1995-12-19 19:40:07 +00:00
Jeff Hill
c3734dcfee function prototype changes 1995-12-19 19:36:20 +00:00
Jeff Hill
f2a8150e2d -cjm 20-Nov-95 Add code for gettimeofday 1995-12-19 19:35:24 +00:00
Jeff Hill
5b8ef5a985 use memset instead of bzero following advice from Jeff Hill and add
a definition of struct timezone to support gettimeofday
1995-12-19 19:35:00 +00:00
Jeff Hill
3aff8d6754 added missing arg to execlp() 1995-12-19 19:33:42 +00:00
Jeff Hill
c12944df48 lock applied externally 1995-12-19 19:32:02 +00:00
Jeff Hill
a09ab523bb no longer uses local variable 1995-12-19 19:31:28 +00:00
Jeff Hill
c02903d397 fixed spelling 1995-12-19 19:30:41 +00:00
Jeff Hill
33608d5c23 added missing prototype 1995-12-19 19:30:18 +00:00
Jeff Hill
293294cb48 changed put test 1995-12-19 19:29:04 +00:00
Jeff Hill
03104dd373 Dont check the array element count when they add the event (just clip it) 1995-12-19 19:28:11 +00:00
Janet B. Anderson
6a922b6515 Added path statements. Moved export statements. 1995-12-11 15:12:01 +00:00
Janet B. Anderson
2be40c2ade cvs now ignores the O.* directories. 1995-12-07 21:15:56 +00:00
Janet B. Anderson
2228ec3417 Moved from base/man. Man pages are now installed. 1995-12-07 21:08:25 +00:00
Janet B. Anderson
f8dd9b2bf7 Added man pages. Man pages are now installed. 1995-12-07 21:03:27 +00:00
Janet B. Anderson
4c5497c74e Moved from base/man. Man pages are now installed. 1995-12-07 21:02:20 +00:00
Janet B. Anderson
02feda47e1 Added man files. Man files are now installed. 1995-12-07 20:54:39 +00:00
Janet B. Anderson
cf209e1411 Moved from base/man. base/man is now a created directory. 1995-12-07 20:53:06 +00:00
Janet B. Anderson
c00216a941 DEC Unix (alpha) changes. 1995-12-07 19:29:17 +00:00
Marty Kraimer
b3726f1cb4 Fixed errors in initCommon 1995-12-05 14:00:36 +00:00
John Winans
c3ea9b769e *** empty log message *** 1995-12-04 17:13:13 +00:00
Marty Kraimer
4e1826d238 If device support is empty list dont allocate pdbDeviceMenu->papChoice 1995-12-04 15:10:39 +00:00
Marty Kraimer
2792f1fc6b DTYP for fields that have no devixe support was incorrect 1995-12-04 15:08:14 +00:00
Marty Kraimer
7a51dc30f2 e_flex and antelope are now epics default 1995-12-01 21:44:27 +00:00
Marty Kraimer
01a4f1f64b Moved sf2db to here 1995-12-01 21:42:15 +00:00
Marty Kraimer
144397decb EFLEX and Antelope are now defaults 1995-12-01 21:40:57 +00:00
Janet B. Anderson
edcd482415 Added rule for dbCommon.ascii 1995-12-01 17:11:34 +00:00
Marty Kraimer
2b7d67509e change pdbBase to pdbbase 1995-12-01 16:59:24 +00:00
Marty Kraimer
e113a5bed2 Change pdbBase to pdbbase 1995-12-01 16:57:49 +00:00
Marty Kraimer
ebd6a8d8ca change pdbbase to pdbBase 1995-12-01 16:56:50 +00:00
Janet B. Anderson
4407b2f24f Modified method of building and installing. 1995-11-30 22:50:42 +00:00
Janet B. Anderson
0a9a3422b8 Added PROD line for LIBOBJS. 1995-11-30 22:07:10 +00:00
Marty Kraimer
e96488dbb6 initial for menus was missing 1995-11-30 22:00:53 +00:00
Marty Kraimer
09b0f88c24 Forgot initial for CHOICE types 1995-11-30 21:59:22 +00:00
Marty Kraimer
83ee1e7a8a Make output file appear in directory in which makeBpt is executed 1995-11-30 21:58:11 +00:00
Marty Kraimer
df60df8a94 Added dbAsciiExpand and add path ./base/rec and ./rec for include 1995-11-30 19:37:13 +00:00
Johnny Tang
c3a7602526 bug fix 1995-11-30 17:29:29 +00:00
Jeff Hill
5d91c2f5f3 doc updated 1995-11-29 19:34:59 +00:00
Jeff Hill
3b6fc10bfe cleaned up interface to recv() and send() 1995-11-29 19:26:01 +00:00
Janet B. Anderson
a043177422 Added USR_LDFLAGS = -L. statement. 1995-11-29 19:19:59 +00:00
Jeff Hill
f4a34606e1 Added $log$ 1995-11-29 19:19:05 +00:00
Jeff Hill
3df522162b more tests 1995-11-29 19:17:25 +00:00
Jeff Hill
c0e611dcb8 added $Log$ to the header 1995-11-29 19:15:42 +00:00
Jeff Hill
1a133c65bb added envData.c to the FTP script 1995-11-29 19:09:26 +00:00
Jeff Hill
40237457e9 dont use bzero() 1995-11-29 19:08:21 +00:00
Jeff Hill
a9f37ef407 fixed bug where ca_array_get() of data type string returned only one string 1995-11-29 19:07:24 +00:00
Marty Kraimer
a2b2fe76fd remove #define LOCAL 1995-11-29 18:50:01 +00:00
Marty Kraimer
75d1f5ef3e added 1995-11-29 17:03:10 +00:00
Marty Kraimer
e25aa85707 Added for old 1995-11-29 16:58:26 +00:00
Marty Kraimer
93b26eee79 Changes for replacing default.dctsdr: Renamed all record support modules 1995-11-29 14:45:30 +00:00
Marty Kraimer
fb6f4ce704 Changes for replacing default.dctsdr by all ascii files 1995-11-29 14:38:52 +00:00
Marty Kraimer
8d8f5754a1 Changes for replacing default.dctsdt by all ascii files 1995-11-29 14:36:02 +00:00
Marty Kraimer
6c1d42f41d Changes for replacing default.dctsdr by all ascii files 1995-11-29 14:27:19 +00:00
Marty Kraimer
0bad952311 Changes for replacing default.dctsdr bu all ascii files 1995-11-29 14:18:16 +00:00
Janet B. Anderson
6128d3ac15 Commented out prototype def for yyparse. Prototype def in parse.c. 1995-11-28 22:02:39 +00:00
Janet B. Anderson
13c861d190 Removed CMPLR=STRICT statement. 1995-11-28 22:01:40 +00:00
Janet B. Anderson
5aeafaf416 Fixed comments on #endif statements 1995-11-28 18:33:00 +00:00
Jeff Hill
c3081b11d6 included <arpa/inet.h> 1995-11-27 22:49:36 +00:00
John Winans
ef13c2bb75 Added raw reading capability to the waveform record support. 1995-11-27 22:13:22 +00:00
Janet B. Anderson
b2ad0b6e1d Added sgi to case statement. 1995-11-27 15:49:58 +00:00
Janet B. Anderson
636c7ba56c Added SGI to ifdef 1995-11-27 15:47:06 +00:00
Andrew Johnson
1f61d4acc2 Added CANbus driver (TIP810 Industry-Pack).
N.B. drvIpMv162 is not tested.
1995-11-14 20:18:07 +00:00
Andrew Johnson
6b0f997b20 Added CANbus device support 1995-11-14 20:04:42 +00:00
cvs2svn
0f0083ce46 This commit was manufactured by cvs2svn to create tag 'R3.12.2'. 1995-11-13 16:55:04 +00:00
1049 changed files with 127018 additions and 27600 deletions

21
COPYRIGHT_Combined Normal file
View File

@@ -0,0 +1,21 @@
/* 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

@@ -10,6 +10,27 @@
# [-b] - For fully built release
#
# $Log$
# 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
#
@@ -52,60 +73,50 @@
#
#
EPICS=${1};
if [ ! -d include -o ! -d src ]; then
echo "Cannot find src or include, are you at the top of EPICS base ?"
if [ ! -d src ]; then
echo "Cannot find src directory, are you at the top of EPICS base ?"
exit 1
fi
cd $EPICS/base
FULLY_BUILT=NO
if [ "${2}" = "-b" ]; then
if [ "${1}" = "-b" ]; then
FULLY_BUILT=YES
shift
if [ "${1}" != "." ]; then
echo "TOP: Cannot create a fully built release.";
exit 1;
fi
fi
# Retrieve EPICS release string from include/epicsVersion.h
grep EPICS_VERSION_STRING include/epicsVersion.h > /dev/null 2>&1 || ERR=1;
# Retrieve EPICS release string from config/CONFIG_BASE_VERSION
. config/CONFIG_BASE_VERSION
if [ "$ERR" = "1" ];
if [ -z "${EPICS_VERSION}" ];
then
echo "TOP: Cannot retrieve release number from include/epicsVersion.h";
echo "TOP: Cannot retrieve release number from config/CONFIG_BASE_VERSION";
exit 1;
fi
RELS=`grep "EPICS_VERSION_STRING" include/epicsVersion.h \
| sed -e 's-.*Version--' \
-e 's-[ ][ ]*--g' \
-e 's-".*--' \
-e 's-\.0$--'`;
if [ -z "${RELS}" ];
then
echo "TOP: Cannot retrieve release number from include/epicsVersion.h";
exit 1;
fi
RELS="R${RELS}";
RELS="R${EPICS_VERSION}.${EPICS_REVISION}.${EPICS_MODIFICATION}.${EPICS_UPDATE_NAME}${EPICS_UPDATE_LEVEL}";
echo TOP: Creating ../${RELS}.Tar;
if [ -f ${RELS}.Tar* ];
then
echo "TOP: This release has already been created.";
echo "TOP: Remove Tar file or edit include/epicsVersion.h.";
echo "TOP: Remove Tar file or edit config/CONFIG_BASE_VERSION.";
exit 1;
fi
# Create list of files and dirs to include in Tar file
cd $EPICS
cd ..
ls base/README* | xargs tar cvf ${RELS}.Tar
ls base/Makefile* > /tmp/make_release.out.$$;
ls base/Make* > /tmp/make_release.out.$$;
ls base/*COPYRIGHT* >> /tmp/make_release.out.$$;
@@ -115,22 +126,29 @@ if [ -d startup ];
>> /tmp/make_release.out.$$;
fi
find config base/include base/man base/tools -name CVS -prune -o \
! -type d -print >> /tmp/make_release.out.$$;
# binary / library / default.dctsdr / <rec>Record.h / etc.
if [ $FULLY_BUILT = "YES" ];
then
find base/include -name CVS -prune -o ! -type d -print \
>> /tmp/make_release.out.$$;
find base/man -name CVS -prune -o ! -type d -print \
>> /tmp/make_release.out.$$;
find base/bin -name CVS -prune -o ! -type d -print \
>> /tmp/make_release.out.$$;
find base/lib -name CVS -prune -o ! -type d -print \
>> /tmp/make_release.out.$$;
find base/rec -name CVS -prune -o ! -type d -print \
find base/dbd -name CVS -prune -o ! -type d -print \
>> /tmp/make_release.out.$$;
fi
find base/config -name CVS -prune -o -name SCCS -prune -o ! -type d -print \
| grep -v '/O\..*$' >> /tmp/make_release.out.$$
find base/src -name CVS -prune -o -name SCCS -prune -o ! -type d -print \
| grep -v '/O\..*$' >> /tmp/make_release.out.$$

134
Makefile
View File

@@ -1,5 +1,4 @@
#
#
# Top Level EPICS Makefile
# by Matthew Needes and Mike Bordua
#
@@ -11,136 +10,25 @@
# However, the release dependencies DOES require a complete
# install because the release.% syntax is illegal.
#
# $Log$
# Revision 1.23 1995/02/13 15:00:09 jba
# Changed include file from CONFIG_SITE to CONFIG
#
# Revision 1.22 1994/11/14 23:12:17 tang
# Replace ARCH_TYPE with .
#
# Revision 1.1.1.1 1994/11/09 01:08:53 epics
# Import of R3.12.0Beta
#
# Revision 1.18 1994/10/13 19:44:34 mda
# Introduce temporary symbol (ARCH_TYPE=$$ARCH) and use in later targets/rules
# to avoid problem with $* symbol resolution in some versions of gnumake.
#
# Revision 1.17 1994/10/05 18:45:57 jba
# Modified syntax of makefile usage
#
# Revision 1.16 1994/09/09 17:32:27 jba
# Cleanup of files
#
# Revision 1.15 1994/09/08 17:25:39 mcn
# Changed clean to tools/Clean. Added "uninstall" dependency.
#
# Revision 1.14 1994/09/07 20:42:19 jba
# Minor changes
#
# Revision 1.13 1994/09/07 19:15:17 jba
# Modified to eork with extensions and do depends
#
# Revision 1.12 1994/08/21 00:55:51 mcn
# New stuff.
#
# Revision 1.11 1994/08/19 15:38:01 mcn
# Dependencies are now generated with a "make release".
#
# Revision 1.10 1994/08/12 18:51:29 mcn
# Added Log and/or Id.
#
# $Id$
#
EPICS=..
include $(EPICS)/config/CONFIG
TOP=.
include $(TOP)/config/CONFIG_BASE
all: install
DIRS = src config
build:
@(for ARCH in ${BUILD_ARCHS}; \
do \
ARCH_TYPE=$$ARCH \
${MAKE} ${MFLAGS} $@.$$ARCH; \
done)
install:
@(for ARCH in ${BUILD_ARCHS}; \
do \
ARCH_TYPE=$$ARCH \
${MAKE} ${MFLAGS} $@.$$ARCH; \
done)
depends:
@(for ARCH in ${BUILD_ARCHS}; \
do \
ARCH_TYPE=$$ARCH \
${MAKE} ${MFLAGS} $@.$$ARCH; \
done)
clean:
@(for ARCH in ${BUILD_ARCHS}; \
do \
ARCH_TYPE=$$ARCH \
${MAKE} ${MFLAGS} $@.$$ARCH; \
done)
uninstall:
@(for ARCH in ${BUILD_ARCHS}; \
do \
ARCH_TYPE=$$ARCH \
${MAKE} ${MFLAGS} $@.$$ARCH; \
done)
include $(TOP)/config/RULES_TOP
release:
@echo TOP: Creating Release...
@./MakeRelease ${EPICS}
@./MakeRelease
built_release: install
built_release:
@echo TOP: Creating Fully Built Release...
@./MakeRelease ${EPICS} -b
@./MakeRelease -b $(INSTALL_LOCATION)
# Notes for single architecture build rules:
# CheckArch only has to be run for dirs.% . That
# way it will only be run ONCE when filtering down
# dependencies.
#
# CheckArch does not have to be run for cleans
# because you might want to eliminate binaries for
# an old architecture.
# DIRS RULE syntax: make depends.arch
# e.g.: make depends.mv167
#
# Create dependencies for an architecture. We MUST
# do this separately for each architecture because
# some things may be included on a per architecture
# basis.
build.%:
@echo $*: Building
@${MAKE} ${MFLAGS} T_A=$* -f Makefile.subdirs build
install.%:
@echo $*: Installing
@${MAKE} ${MFLAGS} T_A=$* -f Makefile.subdirs install
depends.%:
@echo $*: Performing Make Depends
@${MAKE} ${MFLAGS} T_A=$* -f Makefile.subdirs depends
# Illegal Syntax
release.%:
@echo
@echo "The release.arch syntax is not supported by this build."
@echo " Use 'make release' or 'make built_release' instead."
@echo
uninstall.%:
@echo "TOP: Uninstalling $* "
@rm -rf ./bin/$* ./lib/$* rec.bak rec
clean.%:
@echo "TOP: Cleaning $* "
@find src -type d -name "O.$*" -prune -exec rm -rf {} \;
uninstall::
@DIR1=`pwd`;cd $(INSTALL_LOCATION);DIR2=`pwd`;cd $$DIR1;\
if [ "$$DIR1" != "$$DIR2" ]; then $(RMDIR) $(INSTALL_LOCATION)/config; fi

View File

@@ -1,76 +0,0 @@
#
# base $Id$
#
# EPICS Makefile For Subdirectory Recursions
# by Matthew Needes and Mike Bordua
#
# $Log$
# Revision 1.13 1994/09/09 17:32:29 jba
# Cleanup of files
#
# Revision 1.12 1994/09/08 17:25:41 mcn
# Changed clean to tools/Clean. Added "uninstall" dependency.
#
# Revision 1.11 1994/09/07 19:15:19 jba
# Modified to eork with extensions and do depends
#
# Revision 1.10 1994/08/21 00:55:52 mcn
# New stuff.
#
# Revision 1.9 1994/08/19 15:38:03 mcn
# Dependencies are now generated with a "make release".
#
# Revision 1.8 1994/08/12 18:51:28 mcn
# Added Log and/or Id.
#
#
EPICS=..
include $(EPICS)/config/CONFIG_BASE
all: build
build: dirs
@(for DIR in ${DIRS}; \
do \
TMP=`pwd`; echo "${T_A}: $@: $$DIR"; \
cd $$DIR/O.${T_A}; ${MAKE} ${MFLAGS} $@; \
cd $$TMP; \
done)
install: dirs
@(for DIR in ${DIRS}; \
do \
TMP=`pwd`; echo "${T_A}: $@: $$DIR"; \
cd $$DIR/O.${T_A}; ${MAKE} ${MFLAGS} $@; \
cd $$TMP; \
done)
depends: dirs
@(for DIR in ${DIRS}; \
do \
TMP=`pwd`; echo "${T_A}: $@: $$DIR"; \
cd $$DIR/O.${T_A}; ${MAKE} ${MFLAGS} $@; \
cd $$TMP; \
done)
dirs:
@echo ${T_A}: Creating Directories
@for DIR in ${DIRS}; \
do \
TMP=`pwd`; \
cd $$DIR ; \
if [ -f Makefile.${BUILD_TYPE} ] ; then \
test -d O.${T_A} || \
mkdir O.${T_A}; \
test -f O.${T_A}/Makefile || \
ln -s ../Makefile.${BUILD_TYPE} O.${T_A}/Makefile \
> /dev/null 2> /dev/null; \
test -f O.${T_A}/Target.include || \
echo "T_A=${T_A}" > O.${T_A}/Target.include; \
test -f O.${T_A}/.DEPENDS || \
touch O.${T_A}/.DEPENDS; \
fi ; \
cd $$TMP; \
done

188
README
View File

@@ -1,7 +1,7 @@
$Id$
----------------------------------------------------------------------------
3.12 EPICS BASE Notes and Build Instructions.
3.13 EPICS BASE Notes and Build Instructions.
- By Matthew Needes
----------------------------------------------------------------------------
@@ -13,7 +13,7 @@ Notes:
2. You must use GNU make (which is now THE supported make utility) for
the build, gnumake. Set your path so that a recent version (e.g.
V3.70) of gnumake is available (as make) before any system supplied makes.
V3.70) of gnumake is available.
----------------------------------------------------------------------------
Part 1 - Configuring and Building EPICS Base
@@ -27,9 +27,9 @@ Notes:
1.2 To add a target architecture to EPICS:
cd epics/config
cp CONFIG_ARCH.mv167 CONFIG_ARCH.YOUR_ARCH
edit CONFIG_ARCH.YOUR_ARCH - For compiler flags / etc.
cd base/config
cp CONFIG.mv167 CONFIG.YOUR_ARCH
edit CONFIG.YOUR_ARCH - For compiler flags / etc.
cp CONFIG.Vx.68k CONFIG.Vx.YOUR_ARCH_CLASS
cp CONFIG_SITE.Vx.68k CONFIG_SITE.Vx.YOUR_ARCH_CLASS
@@ -41,35 +41,51 @@ Notes:
1.3 To build EPICS:
cd epics/base
gnumake - To build and install EPICS.
gnumake clean - To clean temporary object files. Clean will
remove files from ALL O.ARCH dirs, not
only those specified in BUILD_ARCHS.
gnumake - To install include files, build and install EPICS.
(Same as "gnumake inc install")
gnumake all - Same as "gnumake"
gnumake clean - To clean temporary object files. Top level
clean will remove all the O.ARCH dirs, not
only those specified in BUILD_ARCHS.
gnumake uninstall - Only available at the top level directory.
Cleans directories created by the install.
gnumake rebuild - Same as "gnumake clean uninstall all"
1.4 To create an EPICS release:
1.4 "Partial" build commands:
edit base/include/version.h - ONLY IF you need to change the EPICS
version number.
The complete set of targets now supported are:
gnumake release - Will create Tar file
action
arch
action.arch
dir
dir.action
dir.arch
dir.action.arch
gnumake built_release - Will create Tar file, after generating
dependencies, INCLUDING BINARIES.
where:
action can be clean, inc, install, depends, or build
action can also be uninstall or rebuild at top level only
dir is the name of a subdirectory.
arch can be host, cross, sun4, solaris, mv167, ...
1.5 "Partial" build commands:
Examples are:
gnumake clean.sun4 - Cleans sun4 binaries in O.sun4 dirs only.
gnumake install.sun4 - Builds sun4 only.
gnumake install.mv167 - Builds mv167 only (a HOST_ARCH build must
be complete before this can be issued).
gnumake inc - To install include files
gnumake install.host - To build and install EPICS for host arch.
gnumake install.cross - To build and install EPICS for Vx archs.
gnumake clean.sun4 - Cleans sun4 binaries in O.sun4 dirs only.
gnumake install.sun4 - Builds sun4 only.
gnumake install.mv167 - Builds mv167 only (a HOST_ARCH build must
be complete before this can be issued).
NOTES:
1. base/MakeRelease will create tar files in the directory ABOVE
base. These tar files are then meant to be untarred at that level.
This release will include the "epics/config" directory.
2. EPICS binaries are kept in the bin/ARCH and lib/ARCH directories.
EPICS shellscripts are kept in the tools directory.
1. EPICS binaries and shellscripts are installed into the directory
$(INSTALL_LOCATION)/bin/ARCH.
2. EPICS libraries are installed into the $(INSTALL_LOCATION)/lib/ARCH
directory.
3. During a normal build (a "make" or "make install"), the "depends"
dependency will NOT be invoked. Only if "make depends" is run
@@ -88,7 +104,7 @@ NOTES:
mv167 target.
----------------------------------------------------------------------------
Part 2 --- Configuration Files in epics/config
Part 2 --- Configuration Files in epics/base/config
----------------------------------------------------------------------------
CONFIG - This file is meant to be included in the low-level EPICS Makefiles.
It includes the other EPICS makefiles, and allows individual developers
@@ -99,13 +115,15 @@ CONFIG_SITE - This file is meant to be changed only by the EPICS system
manager. It specifies:
HOST_ARCH: The system's host architecture (sun4/hp700/etc).
BUILD_ARCHS: List of architectures to be built.
This now come from an environment variable.
CROSS_COMPILER_HOST_ARCHS: List of unix architectures with cross_compilers.
CROSS_COMPILER_TARGET_ARCHS: List of architectures to build epics for.
VX_DIR: Location of vxWorks.
STATIC_BUILD: Whether or not to build clients statically.
etc.
----------------------------------------------------------------------------
CONFIG_ARCH.ARCH - This file defines a particular architecture. It
CONFIG.ARCH - This file defines a particular architecture. It
contains the following variables:
BUILD_TYPE: Unix / Vx
@@ -113,23 +131,21 @@ contains the following variables:
Architecture dependent build flags. The flag names / contents
depend on your architecture class.
----------------------------------------------------------------------------
CONFIG_SITE.BUILD_TYPE.ARCH_CLASS - Contains definitions of where to
find things, like X11 / Motif, etc.
----------------------------------------------------------------------------
CONFIG.BUILD_TYPE.ARCH_CLASS - Contains definitions pertaining to a
particular architecture class. This file's primary usefulness is to
define compile and link flags.
CONFIG_SITE.ARCH - Contains site specific definitions pertaining to a
particular architecture. This file's primary usefulness is to
define site specific compile and link flags.
----------------------------------------------------------------------------
CONFIG_COMMON - Contains definitions describing the layout of base.
----------------------------------------------------------------------------
CONFIG_BASE
CONFIG_EXTENSIONS - Defines what subdirectories get built by default under
base and extensions.
CONFIG_BASE - Defines what subdirectories get built by default under base.
----------------------------------------------------------------------------
RULES.Vx - Rules for building with VxWorks makefiles.
----------------------------------------------------------------------------
RULES.Unix - Rules for building with Unix makefiles.
----------------------------------------------------------------------------
RULES_TOP - Top level rules for building.
----------------------------------------------------------------------------
RULES_ARCHS
RULES_DIRS - Allows top-level type command syntax in low-level directories.
----------------------------------------------------------------------------
@@ -141,18 +157,18 @@ Filename SYS_MGR ADD_VX_ARCH ADD_UNIX_ARCH DEVELOPER
CONFIG m - - m
CONFIG_SITE m m m -
CONFIG_ARCH.ARCH - c c -
CONFIG_SITE.Unix.ARCH_CLASS m - c* -
CONFIG_SITE.Vx.ARCH_CLASS m c* - -
CONFIG.Unix.ARCH_CLASS - - c* -
CONFIG_SITE_ENV m - - -
CONFIG.ARCH - c c -
CONFIG_SITE.ARCH - c c -
CONFIG.Vx.ARCH_CLASS - c* - -
RULES.Vx - - - -
RULES.Unix - - - -
CONFIG_BASE - - - -
CONFIG_EXTENSIONS - - - -
CONFIG_COMMON - - - -
CONFIG_ENV - - - -
RULES_ARCHS - - - -
RULES_DIRS - - - -
RULES_TOP - - - -
m - Modify an existing file.
c - Create a new file.
@@ -170,63 +186,57 @@ RULES_DIRS - - - -
(files are numbered in the order of their inclusion)
src/db/Makefile.Vx (An example EPICS makefile)
^ ^ ^
| | +--- 3. RULES.Vx
| | Default rules.
| +------- 2. CONFIG
| ^ ^ ^ ^ ^
| | | | | |
| | | | | +- 1. CONFIG_SITE
| | | | | HOST_ARCH = sun4
| | | | | BUILD_ARCHS = $(HOST_ARCH) mv167 hkv2f
| | | | | VX_DIR = /vxworks
| | | | | More.
| | | | +--- 2. CONFIG_COMMON
| | | | General info about base.
| | | +----- 3. CONFIG_ARCH.hkv2f
| | | BUILD_TYPE = Vx
| | | ARCH_CLASS = 68k
| | | Arch Specific Compiler Flag Setup
| | +------- 4. CONFIG_SITE.Vx.68k
| | Directory locations
| +--------- 5. CONFIG.Vx.68k
| Compiler/utility setup for ARCH_CLASS
+---------- 1. Target.include
T_A definition (target architecture)
^ ^
| +--- 3. RULES.Vx
| Default rules.
+------- 2. CONFIG
^ ^ ^ ^
| | | |
| | | +- 1. CONFIG_SITE
| | | HOST_ARCH = sun4
| | | BUILD_ARCHS = $(HOST_ARCH) mv167 hkv2f
| | | VX_DIR = /vxworks
| | | More.
| | +--- 2. CONFIG_COMMON
| | General info about base.
| +----- 3. CONFIG.hkv2f
| ^ BUILD_TYPE = Vx
| | ARCH_CLASS = 68k
| | Arch Specific Compiler Flag Setup
| +--- a. CONFIG.Vx.68k
| Compiler/utility setup for ARCH_CLASS
+------- 4. CONFIG_SITE.hkv2f
Site Specific setup
---------------------------- sun4 example --------------------------------
(files are numbered in the order of their inclusion)
src/db/Makefile.Unix (An example EPICS makefile)
^ ^ ^
| | +--- 3. RULES.Unix
| | Default rules.
| +------- 2. CONFIG
| ^ ^ ^ ^ ^
| | | | | |
| | | | | +- 1. CONFIG_SITE
| | | | | HOST_ARCH = sun4
| | | | | BUILD_ARCHS = $(HOST_ARCH) mv167 hkv2f
| | | | | VX_DIR = /vxworks
| | | | | More.
| | | | +--- 2. CONFIG_COMMON
| | | | General info about base.
| | | +----- 3. CONFIG_ARCH.sun4
| | | BUILD_TYPE = Unix
| | | ARCH_CLASS = sun4
| | | Arch Specific Compiler Flag Setup
| | +------- 4. CONFIG_SITE.Unix.sun4
| | Directory locations
| +--------- 5. CONFIG.Unix.sun4
| Compiler/utility setup for ARCH_CLASS
+---------- 1. Target.include
T_A definition (target architecture)
^ ^
| +--- 3. RULES.Unix
| Default rules.
+------- 2. CONFIG
^ ^ ^ ^
| | | |
| | | +- 1. CONFIG_SITE
| | | HOST_ARCH = sun4
| | | BUILD_ARCHS = $(HOST_ARCH) mv167 hkv2f
| | | VX_DIR = /vxworks
| | | More.
| | +--- 2. CONFIG_COMMON
| | General info about base.
| +----- 3. CONFIG.sun4
| BUILD_TYPE = Unix
| ARCH_CLASS = sun4
| Arch Specific Compiler Flag Setup
+------- 4. CONFIG_SITE.sun4
Directory locations
----------------------------------------------------------------------------
Part 4 --- EPICS dependencies
Part 4 --- EPICS makefile rules
----------------------------------------------------------------------------
Dependencies supported by lower level Makefiles:
Rules supported by lower level Makefiles:
depends - Generate include dependencies
build - Builds objects, using libraries from "build_libs"

View File

@@ -1,27 +1,10 @@
Special Notes on Linux
1) The epics makefiles use GNU make which is the make that comes
with Linux. You need to make a link from make to gnumake and
have it in your path. After you have defined the EPICS environement
variable, you can use:
ln -s /usr/bin/make $EPICS/base/tools/gnumake
At this point, support for Linux only involves channel access
clients. Since Vxworks is not available for Linux, you must
use other platforms for developing server side code.
2) At this point, support for Linux only involves channel access
clients. Since Vxworks is not available for Linux, you must
use other platforms for developing server side code. As for
building databases with dct and gdct, this requires that the
$EPICS/base/tools/makesdr script works properly. Since makesdr
is slated to be removed from the EPICS distribution in a future
release, we didn't feel it was important to include this capability
now. Consequently, when you run make you will receive the error
gnumake[4]: *** [bldDefaultSdr] Error 127
and
gnumake[3]: *** [comsubs.o] Error 1
3) You MUST start caRepeater by hand before running a client.
You MUST start caRepeater by hand before running a client.
Prior to running a client, you must run:
caRepeater &

44
README.Perl Normal file
View File

@@ -0,0 +1,44 @@
Perl
====
A number of shell scripts are now Perl scripts,
most important:
tools/installEpics.pl
include/makeEpicsVersion.pl
libCom/bldEnvData.pl
libCom/makeStatSymTbl.pl
sequencer/makeVersion.pl
WIN32 also uses
tools/cp.pl, mv.pl, rm.pl, mkdir.pl
which should behave like the UNIX cp, mv, rm, rmdir.
All systems could use the Perl versions but that seems
to be overkill for UNIX.
Advantages:
* no need for ls, date, basename, grep, awk, sed, ...,
which made the make UNIX-specific.
* Perl is currently available for Unix, OS/2, WIN32, VMS
and the scripts should work on all those systems
Disadvantage:
* You have to get Perl, look e.g. at http://www.perl.com
* Perl version 5.003_02 works, we don't know about earlier versions.
Compile Perl:
No big deal,
* on UNIX say 'configure' and 'gnumake',
* on Windows use MX Visual C++,
use File/Open Workspace to open the Makefile {PERL}/perl5i.mak,
use Build/Batch build to select eiher the Release or Debug targets.
You can do the same with the Makefile {Perl}/Ext/WIN32/win32.mak
- nice tools but not necessary for EPICS.
Then call {PERL}/bin/perlw32-install.bat
In any case, read the texts that come with perl!

161
README.WIN32 Normal file
View File

@@ -0,0 +1,161 @@
Compiling EPICS on WIN32 (Windows95/NT)
---------------------------------------
-kuk- 11/18/96 questions & comments please
mailto:kasemir@atdiv.lanl.gov
0) what you will get
--------------------
Right now this port of EPICS to WIN32 should allow you to
* compile almost all EPICS base using Tornado, MS Visual C
and some additional tools: gnumake, a UNIX-like shell, awk, sed, ...
(See below where to get these.)
* load EPICS on a PC IOC (486, pentium),
load simple databases
(no drivers/devices for real I/O available, yet.
Some Greenspring IP support [Relay, Dig, ADC, DAC] is in progress)
* build and use ca.dll on NT or Win95 to access all IOCs,
as well as the Com-library as a DLL.
The remaining libraries are statically linked and
therefore only accessible from programming languages like C,
not general WIN32 apps.
* build gdd, cas and a demo of the new portable CA server on WIN32.
* missing: the sequencer, makeExampleApp etc. and long term tests
1) see what you have
--------------------
To compiler EPICS on WIN32, we need
WindRiver Systems Tornado (used: 1.0)
Microsoft Visual C (used: 4.0)
and some tools:
a Unix-like shell
gnumake
basename
date
mv
touch
sort
All the above except. the shell are available 'on the net'
as sources which compile with MS Visual C++.
If you cannot/don't want to find them, contact me, please!
I could not find a shell that's fully operational.
The best one seems to be the Cygnus bash for WIN32, though it
still has errors and doesn't come with sources that compile
under MS VC++.
I use a small self-written shell called knts,
again: Contact me if you need it.
* The final solution to make the shell, basename, date, ...
* obsolete:
* Use
* 1) no shell scripts
* 2) Perl which is available for Unix and WIN32
In addition we need some binaries that I have no sources
for, yet, but that come with Tornado if and only if you
INSTALL THE FULL PACKAGE (!)
Including the 'WTX Test Suite i386/i486'
(under "Select Sub-components" when installing Tornado)
You should find in your <Tornado>/host/x86-win32/bin dir:
awk, cat, cp, rm, mkdir
(There is also a bash and a GNU-make which are really poor,
and WindRiver told me that they do not consider to support
those in the future, so I no longer use them.)
2) set environment variables
----------------------------
Your path should include:
- The EPICS-binaries that we are about to build in base/bin/WIN32
- The NTtools that you've built in step 1
- The System (for me it's in NT40...)
- The MS Visual C compiler binaries
- The Tornado binaries
Check with e.g.:
/users/kay/Src/epics/nttools >echo $Path
c:\users\kay\src\epics\base\bin\WIN32;c:\users\kay\src\epics\NTtools\bin;C:\NT40
\system32;C:\NT40;c:\msdev\bin;C:\users\Tornado\host\x86-win32\bin
On NT, $Path is defined by the operatin system, on Win95, it's $PATH instead.
knts tries to use PATH and falls back on Path,
what should wok on both systems.
MS Visual C and Tornado should be installed properly with
these env. variables set:
WIND_BASE=c:\usersTornado
WIND_HOST_TYPE=x86-win32
This way the EPICS makesystem can locate Tornado
without any changes to the files in base/config.
So for pc486 the settings in CONFIG_SITE where
you specify the location of VxWorks are ignored,
this information is taken from WIND_BASE and _HOST_TYPE!!
MSDevDir=C:\MSDEV
include=c:\msdev\include;c:\msdev\mfc\include
lib=c:\msdev\lib;c:\msdev\mfc\lib
(Setting env. vars. is different: for NT, use Settings/System,
for Win95 use autoexec.bat)
For EPICS, set:
# select host arch to build:
HOST_ARCH=WIN32
EPICS_CA_ADDR_LIST 128.165.32.255 (addr of WIN32 host)
EPICS_CA_AUTO_CA_ADDR_LIST NO
EPICS_CA_CONN_TMO 30.0
EPICS_CA_BEACON_PERIOD 15.0
EPICS_CA_REPEATER_PORT 5065
EPICS_CA_SERVER_PORT 5064
EPICS_TS_MIN_WEST 420 (Germany: -120)
To debug knts, set KNTS to 5:
KNTS=5
export KNTS
You should do this, however, only if you really want the debugging info.
3) building EPICS
-----------------
Prepare apx. 2 ltr. Tee and type:
cd <epics>/base
gnumake
Watch for errors and send them to me.
There might be loads of compiler warnings.
Known errors:
* gnumake seems to be faster than WIN32 sometimes
which results in warnings/errors like
"file has modification date in the future"
for newly vreated things.
Very seldom this is fatal, so you have to
stop gnumake and restart it.
* This is strange because Windows95/NT don't care
about upper/lower case:
WIN32 is WIN32, not win32. Gnumake fails
if e.g. base/src/include/os/WIN32 is ...win32.
Good luck !
-Kay

43
README.cxxTemplates Normal file
View File

@@ -0,0 +1,43 @@
The templates supplied with EPICS base are in $(EPICS)/base/src/cxxTemplates
In Stroustrups's "The C++ Programming Language" Appendix A: r.14.9
(ANSI/ISO resolutions) a mechanism is described for the explicit
instantiation of template member functions (that are not inline).
At this time some compilers do not support this mechanism (and use
a template database or smart linker instead). Other compilers
(such as g++) provide only limited support for other forms of
instantiation.
Since there is no defacto standard mechanism for instatiating
templates at this time we are defining the preprocessor flag
EXPL_TEMPL in the build system when the compiler supports
explicit instantiation.
EPICS codes that use templates may need to include a code block
as follow that instantiates the template only once into each
program.
#include <classXYZ.h>
#include <templXXX.h>
#include <templXXX.cc>
//
// if the compiler supports explicit instantiation of
// template member functions
//
#if defined(EXPL_TEMPL)
//
// From Stroustrups's "The C++ Programming Language"
// Appendix A: r.14.9
//
// This explicitly instantiates the template class's member
// functions into "templInst.o"
//
template class templXXX <classXYZ>;
#endif
Jeff Hill 3-6-97
johill@lanl.gov

View File

@@ -10,5 +10,3 @@
might be necessary.
- epics/base/tools/bsdinstall was written to replace install for hp.

34
README.niCpu030 Normal file
View File

@@ -0,0 +1,34 @@
The CPU030 may need to have the nivxi path set correctly:
From the vxWorks shell type "vxitedit" (you may need to
loading the NI vxitedit package first)
take option 2
take option 3
type list
type modify 0
type in the correct path when promped
(the path should end in nivxi
and should traverse the niCpu030
directories shipped with the 030
ie something of the form "???/config/niCPU030/nivxi"
type save
type exit
.
.
.
see "Getting Started with Your VXIcpu-030" from NI
You may may need to setup front panel to backplane trigger
routing:
To take a TTL input and map it to VXI backplane ECL trigger 0
type in (to the vxWorks shell):
epvxiRouteTriggerECL(<logical address>, 1, 0)
where <logical address> specifies the card with the
front panel trigger connection.
johill@lanl.gov

View File

@@ -1,6 +1,9 @@
----------------------------------------------------------------------------
EPICS R3.12.2 Notes for Solaris
EPICS Notes for Solaris
- By Andrew Johnson
updated 12-16-96 by Jeff Hill
----------------------------------------------------------------------------
Notes:
@@ -8,12 +11,13 @@ Notes:
1. In order to build EPICS under Solaris 2, you must ensure that the
solaris directory /usr/ccs/bin is in your search path.
2. It is not possible to compile EPICS under Solaris 2 using only the
GNU gcc compiler -- you must have the Sun SPARCworks ANSI C compiler.
2. It is now possible to compile EPICS under Solaris 2 using either the
GNU gcc compiler or the Sun SPARCworks ANSI C compiler. The g++/
Sun SPARCworks ANSI C compiler combination has compiled and linked
without errors but has not been extensively tested.
3. EPICS under Solaris 2 no longer uses the UCB compatability
libraries. It does require the /usr/ucb/install program however. In
order to ensure that the /usr/ucblib files are not inherited, you
3. EPICS under Solaris 2 no longer uses the UCB compatability libraries.
In order to ensure that the /usr/ucblib files are not inherited, you
should ensure that your LD_LIBRARY_PATH environment variable does not
include /usr/ucblib when you build any of the host tools.

View File

@@ -0,0 +1,11 @@
/*****************************************************************
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.
**********************************************************************/

46
config/CONFIG Normal file
View File

@@ -0,0 +1,46 @@
#
# $Id$
#
# The developer may edit this file.
# EPICS base definitions
#
include $(EPICS_BASE)/config/CONFIG_COMMON
# Site-specific build options
#
include $(EPICS_BASE)/config/CONFIG_SITE
# assume T_A is the host arch if not specified
ifndef T_A
T_A = $(HOST_ARCH)
endif
# Architecture specific definitions
#
include $(EPICS_BASE)/config/CONFIG.$(T_A)
#
-include $(EPICS_BASE)/config/CONFIG_SITE.$(T_A)
# User specific definitions
#
-include $(HOME)/EPICS_CONFIG
-include $(HOME)/EPICS_CONFIG.$(HOST_ARCH)
# All EPICS options other than BUILD_TYPE
# may be overridden here.
#
# EXAMPLES
# --------
# Build client objects statically ? must be either YES or NO
#STATIC_BUILD=NO
# Unix Optimization, must be either YES or NO
#UNIX_OPT=YES
# VxWorks Optimization, must be either YES or NO
#VX_OPT=YES
# Generate Verbose Compiler Warnings for Unix, must be either YES or NO
#UNIX_WARN=YES
# Generate Verbose Compiler Warnings for VxWorks, must be either YES or NO
#VX_WARN=YES
#etc.
#

131
config/CONFIG.Linux Normal file
View File

@@ -0,0 +1,131 @@
#
# $Id$
#
# This file is maintained by the EPICS community.
# Compiler and utility invocation (supply path to compiler here)
# (with warning flags built in)
# Paths to compilers
# BUILD_TYPE
# Currently either Vx or Unix
BUILD_TYPE = Unix
GCC = gcc
ACC = acc
SUNCC = cc
AR = ar
ARFLAGS = r
ARCMD = $(AR) $(ARFLAGS)
RANLIB = ranlib
RANLIBFLAGS = -t
YACC = $(EYACC)
LEX = $(ELEX)
G++ = g++
CCC = CC
MV = mv
RMDIR = rm -rf
MKDIR = mkdir
CHMOD = "/bin/chmod"
WHAT = what
ACC_ANSI_INVOKE_W_NO = $(ACC) -Xa -w
ACC_ANSI_INVOKE_W_YES = $(ACC) -Xa
ACC_TRAD_INVOKE_W_NO = $(ACC) -Xs -w
ACC_TRAD_INVOKE_W_YES = $(ACC) -Xs
ACC_STRICT_INVOKE_W_NO = $(ACC) -Xc -w
ACC_STRICT_INVOKE_W_YES = $(ACC) -Xc
SUNCC_TRAD_INVOKE_W_NO = $(SUNCC) -w
SUNCC_TRAD_INVOKE_W_YES = $(SUNCC)
GCC_ANSI_INVOKE_W_NO = $(GCC) -ansi -w
GCC_ANSI_INVOKE_W_YES = $(GCC) -ansi
GCC_STRICT_INVOKE_W_NO = $(GCC) -ansi -pedantic
GCC_STRICT_INVOKE_W_YES = $(GCC) -ansi -Wall -pedantic
GCC_TRAD_INVOKE_W_NO = $(GCC) -traditional -w
GCC_TRAD_INVOKE_W_YES = $(GCC) -traditional
C_OLD = $($(STANDARD)_TRAD_INVOKE_W_$(UNIX_WARN))
C_ANSI = $($(ANSI)_ANSI_INVOKE_W_$(UNIX_WARN))
C_STRICT = $($(ANSI)_STRICT_INVOKE_W_YES)
CC = $(C_$(CMPLR))
CCC_NORMAL_INVOKE_W_NO = $(CCC) +p
CCC_NORMAL_INVOKE_W_YES = $(CCC) +p +w
CCC_STRICT_INVOKE_W_YES = $(CCC) +p +w
CCC_LD_FLAGS =
CCC_LD_LIBS =
CCC_TEMPL_INST_FLAG =
G++_NORMAL_INVOKE_W_NO = $(G++) -ansi -pedantic -w
G++_NORMAL_INVOKE_W_YES = $(G++) -ansi -pedantic -Wall
G++_STRICT_INVOKE_W_YES = $(G++) -ansi -pedantic -Wtraditional -Wall \
-Wmissing-prototypes -Woverloaded-virtual \
-Wwrite-strings -Wconversion -Wstrict-prototypes\
-Wpointer-arith -Winline
G++_TEMPL_INST_FLAG = -DEXPL_TEMPL
CXX_NORMAL = $($(CPLUSPLUS)_NORMAL_INVOKE_W_$(UNIX_WARN))
CXX_STRICT = $($(CPLUSPLUS)_STRICT_INVOKE_W_YES)
TEMPL_INST_CXXFLAG = $($(CPLUSPLUS)_TEMPL_INST_FLAG)
# GNU make likes CXX instead of CCC
CXX = $(CXX_$(CXXCMPLR))
# Static Build options
ACC_SFLAGS_YES= -Bstatic
ACC_SFLAGS_NO=
CC_SFLAGS_YES= -Bstatic
CC_SFLAGS_NO=
GCC_SFLAGS_YES= -static
GCC_SFLAGS_NO=
SF_OLD = $($(STANDARD)_SFLAGS_$(STATIC_BUILD))
SF_ANSI = $($(ANSI)_SFLAGS_$(STATIC_BUILD))
SF_STRICT = $(SF_ANSI)
UNIX_SFLAGS = $(SF_$(CMPLR))
# Optimization
OPTIM_YES = -O
OPTIM_NO =
UNIX_OPT_FLAGS = $(OPTIM_$(UNIX_OPT))
# Include files
UNIX_INCLUDES = -I. -I.. $(USR_INCLUDES) -I$(INSTALL_INCLUDE) -I$(EPICS_BASE_INCLUDE) \
-I$(EPICS_BASE_INCLUDE)/os/$(T_A)
# Operating system flags
OP_SYS_FLAGS = -DUNIX
UNIX_LDFLAGS = -L$(EPICS_BASE_LIB)
UNIX_LDLIBS = -lm
ARCH_DEP_CFLAGS = -D_X86_ -Dlinux
ARCH_DEP_CXXFLAGS = $(ARCH_DEP_CFLAGS)
UNIX_CFLAGS = $(UNIX_SFLAGS) $(UNIX_INCLUDES) $(OP_SYS_FLAGS)
UNIX_CXXFLAGS = $(UNIX_CFLAGS)
# Target specific flags
TARGET_CFLAGS = $($(basename $@)_CFLAGS)
TARGET_CXXFLAGS = $($(basename $@)_CXXFLAGS)
TARGET_CPPFLAGS = $($(basename $@)_CPPFLAGS)
TARGET_LDFLAGS = $($(basename $@)_LDFLAGS)
TARGET_LDLIBS = $($(basename $@)_LDLIBS)
TARGET_SNCFLAGS = $($(basename $@)_SNCFLAGS)
CFLAGS = $(UNIX_OPT_FLAGS) $(TARGET_CFLAGS) $(USR_CFLAGS) $(ARCH_DEP_CFLAGS) $(UNIX_CFLAGS)
CXXFLAGS = $(UNIX_OPT_FLAGS) $(TARGET_CXXFLAGS) $(USR_CXXFLAGS) \
$(ARCH_DEP_CXXFLAGS) $(UNIX_CXXFLAGS) $(TEMPL_INST_CXXFLAG)
CPPFLAGS += $(TARGET_CPPFLAGS) $(USR_CPPFLAGS)
LDFLAGS = $(SPECIAL_LDFLAGS) $(TARGET_LDFLAGS) $(USR_LDFLAGS) $(ARCH_DEP_LDFLAGS) $(UNIX_LDFLAGS)
LDLIBS = $(TARGET_LDLIBS) $(USR_LDLIBS) $(ARCH_DEP_LDLIBS) $(UNIX_LDLIBS)
# Override SUN defaults
COMPILE.c = $(CC) $(CFLAGS) $(CPPFLAGS) -c
COMPILE.cc = $(CXX) $(CXXFLAGS) $(CPPFLAGS) -c
LINK.c = $(CC) $(CFLAGS) $(CPPFLAGS) $(LDFLAGS)
LINK.cc = $(CXX) $(CXXFLAGS) $(CPPFLAGS) $(LDFLAGS)
DEPENDS_RULE.c = -$(COMPILE.c) -M $(SRCS.c) > .DEPENDS
DEPENDS_RULE.cc = @echo no DEPENDS_RULE.cc defined in CONFIG.Linux

121
config/CONFIG.Vx.68k Normal file
View File

@@ -0,0 +1,121 @@
# $Id$
#
# This file is maintained by the EPICS community.
AR = $(VX_GNU_BIN)/ar68k
RANLIB = $(VX_GNU_BIN)/ranlib68k
YACC = $(EYACC)
LEX = $(ELEX)
CC = $(VX_GNU_BIN)/cc68k -B$(VX_GNU_LIB)/gcc-lib/ -nostdinc
CPP = $(VX_GNU_BIN)/cpp68k -nostdinc
#CPP = $(CC) -E
GCC = $(CC)
LD = $(VX_GNU_BIN)/ld68k -r
EPICS_LDLIBS =
MV=mv
RM=rm -f
MKDIR = mkdir
RMDIR=rm -rf
WHAT = what
#----------------------------
# Only G++ currently supported
CPLUSPLUS = G++
CXXCMPLR = NORMAL
VX_OPT = YES
BOARD = $(subst mv,MV,$(T_A))
CPU = 68000
OS = VXWORKS
#----------------------------
CCC = $(VX_GNU_BIN)/cc68k -B$(VX_GNU_LIB)/gcc-lib/ -nostdinc
AR_CCC = $(VX_GNU_BIN)/ar68k
CPP_CCC = $(VX_GNU_BIN)/cpp68k -nostdinc
RANLIB_CCC = $(VX_GNU_BIN)/ranlib68k
LD_CCC = $(VX_GNU_BIN)/ld68k
CCC_CCFLAGS =
CCC_ARCH_DEP_CCFLAGS =
CCC_ARCH_DEP_LDFLAGS =
G++ = $(GNU_BIN)/sun3-g++ -B$(GNU_LIB)/gcc-lib/ -nostdinc -DEXPL_TEMPL
AR_G++ = $(GNU_BIN)/sun3-ar
CPP_G++ = $(GNU_BIN)/sun3-cpp
RANLIB_G++ = $(GNU_BIN)/sun3-ranlib
LD_G++ = $(GNU_BIN)/sun3-ld
G++_ARCH_DEP_CCFLAGS = --no-builtin -Wa,"-m68040" -DOS_EQ_$(OS) \
-DBOARD_EQ_$(BOARD) -DCPU_EQ_$(CPU) -DBOARD=$(BOARD)
G++_ARCH_DEP_LDFLAGS = -Ur -N -T$(EPICS_BASE_BIN)/vxldscript.MRI
CCC_NORMAL = $(CCC)
CCC_STRICT = $(CCC) -ansi -pedantic -Wtraditional \
-Wmissing-prototypes -Woverloaded-virtual \
-Wwrite-strings -Wconversion -Wstrict-prototypes\
-Wpointer-arith -Winline
G++_NORMAL = $(G++)
G++_STRICT = $(G++) -ansi -pedantic -Wtraditional
CXX = $($(CPLUSPLUS)_$(CXXCMPLR))
AR_CXX = $(AR_$(CPLUSPLUS))
CPP_CXX = $(CPP_$(CPLUSPLUS))
RANLIB_CXX = $(RANLIB_$(CPLUSPLUS))
LD_CXX = $(LD_$(CPLUSPLUS))
ARCH_DEP_CXXFLAGS += $($(CPLUSPLUS)_ARCH_DEP_CCFLAGS) $(ARCH_DEP_CFLAGS)
ARCH_DEP_CXXLDFLAGS = $($(CPLUSPLUS)_ARCH_DEP_LDFLAGS) $(ARCH_DEP_LDFLAGS)
# special c library requirements
SPECIAL_LANG =
# Compiler flags, don't mess with this
# Optimization flags
VX_OPT_YES = -O
VX_OPT_NO =
VX_OPT_FLAGS = $(VX_OPT_$(VX_OPT))
# Include files
VX_INCLUDES = -I. -I.. $(USR_INCLUDES) -I$(INSTALL_INCLUDE) -I$(EPICS_BASE_INCLUDE) \
-I$(EPICS_BASE_INCLUDE)/os/vxWorks -I$(VX_INCLUDE)
# Warnings
#At some time we should turn on pedantic
VX_WARN_YES = -Wall -pedantic -ansi
#VX_WARN_YES = -Wall
VX_WARN_NO =
VX_WARN_FLAGS = $(VX_WARN_$(VX_WARN))
# Operating system flags
VX_OP_SYS_FLAGS = -DvxWorks -DV5_vxWorks
# Arch dependent flags are set in CONFIG_ARCH.*
VX_CFLAGS = $(VX_OPT_FLAGS) $(VX_WARN_FLAGS) \
$(VX_INCLUDES) $(VX_OP_SYS_FLAGS)
VX_CXXFLAGS += $(VX_CFLAGS)
TARGET_CFLAGS = $($(basename $@)_CFLAGS)
TARGET_CXXFLAGS = $($(basename $@)_CXXFLAGS)
TARGET_LDFLAGS = $($(basename $@)_LDFLAGS)
TARGET_CPPFLAGS = $($(basename $@)_CPPFLAGS)
TARGET_SNCFLAGS = $($(basename $@)_SNCFLAGS)
CFLAGS = $(TARGET_CFLAGS) $(USR_CFLAGS) $(ARCH_DEP_CFLAGS) $(VX_CFLAGS)
CXXFLAGS = $(TARGET_CXXFLAGS) $(USR_CXXFLAGS) $(ARCH_DEP_CXXFLAGS) $(VX_CXXFLAGS)
LDFLAGS = $(TARGET_LDFLAGS) $(USR_LDFLAGS) $(ARCH_DEP_LDFLAGS) $(VX_LDFLAGS)
LDLIBS = $(TARGET_LDLIBS) $(USR_LDLIBS) $(ARCH_DEP_LDLIBS) $(VX_LDLIBS)
CXXLDLIBS = $(TARGET_LDLIBS) $(USR_CXXLDLIBS) $(ARCH_DEP_LDLIBS) $(VX_LDLIBS)
CXXLDFLAGS = $(TARGET_LDFLAGS) $(USR_CXXLDFLAGS) $(ARCH_DEP_CXXLDFLAGS) $(VX_LDFLAGS)
CPPFLAGS += $(TARGET_CPPFLAGS) $(USR_CPPFLAGS)
# Build compile line here
COMPILE.c = $(CC) $(CFLAGS) $(CPPFLAGS) -c
LINK.c = $(LD) $(LDFLAGS) -o
COMPILE.cc = $(CXX) $(CXXFLAGS) $(CPPFLAGS) -c
LINK.cc = $(LD_CXX) $(CXXLDFLAGS) -o
CPPSNCFLAGS = $(VX_INCLUDES)
DEPENDS_RULE.c = -$(COMPILE.c) -M $(SRCS.c) >> .DEPENDS
DEPENDS_RULE.cc = -$(COMPILE.cc) -M $(SRCS.cc) >> .DEPENDS
# Allow site host architecture specific overrides
-include $(EPICS_BASE)/config/CONFIG_SITE.$(BUILD_TYPE).$(ARCH_CLASS).$(HOST_ARCH)

92
config/CONFIG.Vx.pc486 Normal file
View File

@@ -0,0 +1,92 @@
# $Id$
#
# This file is maintained by the EPICS community.
# OLDINSTALL def used only for releases prior to R3.12.2.2
# Unix Compiler and other Utilities
OLDINSTALL = echo CONFIG.Vx.486 OLDINSTALL
CP =$(PERL) $(EPICS_BASE)/src/tools/cp.pl
MV =$(PERL) $(EPICS_BASE)/src/tools/mv.pl
RM =$(PERL) $(EPICS_BASE)/src/tools/rm.pl -f
MKDIR=$(PERL) $(EPICS_BASE)/src/tools/mkdir.pl
RMDIR=$(PERL) $(EPICS_BASE)/src/tools/rm.pl -rf
CHMOD=echo
# overrides defines in CONFIG_SITE that don't fit Tornado
#
# We are lucky because
# this should not really be site specific
#
# (if Tornado is installed correctly
# -> WIND_BASE, WIND_HOST_TYPE set )
#
# At first we hack a little bit on WIND_BASE
# to convert the DOS style into a Unix style path:
#
# If C: was in WIND_BASE, it's converted into c: (lowercase),
# then c: is removed and all '\' are converted into '/'.
SANE_WIND_BASE := $(subst \,/,$(subst c:,,$(subst C:,c:,$(WIND_BASE))))
VX_DIR := $(SANE_WIND_BASE)/target
VX_GNU := $(SANE_WIND_BASE)/host/$(WIND_HOST_TYPE)
VX_GNU_BIN := $(VX_GNU)/bin
VX_GNU_LIB := $(VX_GNU)/lib
VX_IMAGE = $(VX_CONFIG_DIR)/$(T_A)/vxWorks
VX_IMAGE_SYM = $(VX_CONFIG_DIR)/$(T_A)/vxWorks.sym
AR = $(VX_GNU_BIN)/ar386
RANLIB = $(VX_GNU_BIN)/ranlib386
YACC = $(EYACC)
LEX = $(ELEX)
CC = $(VX_GNU_BIN)/cc386 -B$(VX_GNU_LIB)/gcc-lib/ -nostdinc -fno-builtin -fno-defer-pop
CPP = $(VX_GNU_BIN)/cpp386 -nostdinc
#CPP = $(CC) -E
GCC = $(CC)
LD = $(VX_GNU_BIN)/ld386 -r
EPICS_LDLIBS =
# special c library requirements
SPECIAL_LANG =
# Compiler flags, don't mess with this
# Optimization flags
VX_OPT_YES = -O
VX_OPT_NO = -O0
VX_OPT_FLAGS = $(VX_OPT_$(VX_OPT))
# Include files
VX_INCLUDES = -I. -I.. $(USR_INCLUDES) -I$(INSTALL_INCLUDE) -I$(EPICS_BASE_INCLUDE) \
-I$(EPICS_BASE_INCLUDE)/os/vxWorks -I$(VX_INCLUDE)
# Warnings
#At some time we should turn on pedantic
#VX_WARN_YES = -Wall -pedantic
VX_WARN_YES = -W
VX_WARN_NO =
VX_WARN_FLAGS = $(VX_WARN_$(VX_WARN))
# Operating system flags
VX_OP_SYS_FLAGS = -DvxWorks -DV5_vxWorks
# Arch dependent flags are set in CONFIG_ARCH.*
VX_CFLAGS = $(VX_OPT_FLAGS) $(VX_WARN_FLAGS) \
$(VX_INCLUDES) $(VX_OP_SYS_FLAGS)
VX_LDFLAGS = -o
TARGET_CFLAGS = $($(basename $@)_CFLAGS)
TARGET_LDFLAGS = $($(basename $@)_LDFLAGS)
CFLAGS = $(TARGET_CFLAGS) $(USR_CFLAGS) $(ARCH_DEP_CFLAGS) $(VX_CFLAGS)
LDFLAGS = $(TARGET_LDFLAGS) $(USR_LDFLAGS) $(ARCH_DEP_LDFLAGS) $(VX_LDFLAGS)
# Build compile line here
COMPILE.c = $(CC) $(CFLAGS) $(CPPFLAGS) -c
COMPILE.cc = $(CC) -x 'c++' -DEXPL_TEMPL $(CFLAGS) $(CPPFLAGS) -c
LINK.c = $(LD) $(LDFLAGS)
CPPSNCFLAGS = $(USR_INCLUDES) $(VX_INCLUDES)
DEPENDS_RULE.c = -$(COMPILE.c) -M $(SRCS.c) >> .DEPENDS
DEPENDS_RULE.cc = @echo no DEPENDS_RULE.cc defined in CONFIG.68k

131
config/CONFIG.WIN32 Normal file
View File

@@ -0,0 +1,131 @@
# CONFIG.WIN32 -kuk-
#
# The current make-system for WIN32
# needs
# * gnumake (OK, sources for WIN32 are available)
# * Perl (e.g. from www.perl.com )
# * a UNIX-like shell (ouch!)
#
# I found no fully operational shell and no sources for WIN32 so far,
# Cygnus' bash e.g. cannot handle this:
# (echo a>a; echo b>>a)
# Right now I use the knts that I wrote and simplified scripts.
# Jeff eliminated many shell-lines in Makefile.*.
#
# Use std path variables from ms
HOME = $(HOMEDRIVE)$(HOMEPATH)
# BUILD_TYPE
# Currently either Vx or Host (latter used to be Unix
BUILD_TYPE=Host
#
# optimize/debug flags
#
HOST_OPT = YES
CXX_OPT_FLAGS_YES = -Ox
# -Zi : included debugging info
CXX_OPT_FLAGS_NO = -Zi
CXX_OPT_FLAGS = $(CXX_OPT_FLAGS_$(HOST_OPT))
LINK_OPT_FLAGS_YES =
LINK_OPT_FLAGS_NO = -debug
LINK_OPT_FLAGS = $(LINK_OPT_FLAGS_$(HOST_OPT))
# 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
# Compiler and utility invocation (supply path to compiler here)
# (with warning flags built in)
# Paths to compilers
YACC = $(EYACC)
LEX = $(ELEX)
CC = cl -nologo
CP = $(PERL) $(EPICS_BASE)/src/tools/cp.pl
MV = $(PERL) $(EPICS_BASE)/src/tools/mv.pl
RM = $(PERL) $(EPICS_BASE)/src/tools/rm.pl -f
MKDIR = $(PERL) $(EPICS_BASE)/src/tools/mkdir.pl
RMDIR = $(PERL) $(EPICS_BASE)/src/tools/rm.pl -rf
EXE=.exe
OBJ=.obj
# Include files
HOST_INCLUDES = -I. -I.. $(USR_INCLUDES) -I$(INSTALL_INCLUDE) \
-I$(EPICS_BASE_INCLUDE) -I$(EPICS_BASE_INCLUDE)/os/$(ARCH_CLASS)
# Operating system flags (from win32.mak)
#
# __STDC__=0 is a real great idea of Jeff that gives us both:
# 1) define STDC for EPICS code (pretend ANSI conformance)
# 2) set it to 0 to use MS C "extensions" (open for _open etc.)
# because MS uses: if __STDC__ ... disable many nice things
#
# -MDd : use MSVCRTD (run-time as DLL, multi-thread support)
# this also calls for _DLL
#
OP_SYS_FLAGS:=-MDd $(CXX_OPT_FLAGS) -VMG -VMV -DWIN32 -D_WIN32 -D_DEBUG -D_WINDOWS \
-D_X86_ -D_NTSDK -D_DLL -D__STDC__=0
HOST_LDLIBS:=user32.lib kernel32.lib wsock32.lib advapi32.lib winmm.lib
HOST_LDFLAGS:=-nologo -libpath:$(EPICS_BASE_LIB)
# Files and flags needed to link DLLs (used in RULES.Host)
#
# Strange but seems to work without: WIN32_DLLFLAGS should contain
# an entry point:
# '-entry:_DllMainCRTStartup$(DLLENTRY)'
DLLENTRY:=@12
# yes, for MS it's I386 for 386, 486, Pentium!
# don't mix this with VxWorks which has different BSPs for [34]86 !
WIN32_DLLFLAGS:=$(HOST_LDFLAGS) $(HOST_LDLIBS)\
-subsystem:windows -dll -incremental:no $(LINK_OPT_FLAGS) -machine:I386
ARCH_DEP_CFLAGS =
ARCH_DEP_CXXFLAGS = $(ARCH_DEP_CFLAGS)
HOST_CFLAGS = $(HOST_SFLAGS) $(HOST_INCLUDES) $(OP_SYS_FLAGS)
HOST_CXXFLAGS = $(HOST_CFLAGS)
# Target specific flags
TARGET_CFLAGS = $($(basename $@)_CFLAGS)
TARGET_CXXFLAGS = $($(basename $@)_CXXFLAGS)
TARGET_CPPFLAGS = $($(basename $@)_CPPFLAGS)
TARGET_LDFLAGS = $($(basename $@)_LDFLAGS)
TARGET_LDLIBS = $($(basename $@)_LDLIBS)
TARGET_SNCFLAGS = $($(basename $@)_SNCFLAGS)
CFLAGS = $(HOST_OPT_FLAGS) $(TARGET_CFLAGS) $(USR_CFLAGS) $(ARCH_DEP_CFLAGS) $(HOST_CFLAGS)
CXXFLAGS = $(HOST_OPT_FLAGS) $(TARGET_CXXFLAGS) $(USR_CXXFLAGS) $(ARCH_DEP_CXXFLAGS) $(HOST_CXXFLAGS)
CPPFLAGS += $(TARGET_CPPFLAGS) $(USR_CPPFLAGS)
CXX=cl -nologo
LDFLAGS=$(SPECIAL_LDFLAGS) $(TARGET_LDFLAGS) $(USR_LDFLAGS) $(ARCH_DEP_LDFLAGS) $(HOST_LDFLAGS)
LDLIBS=$(TARGET_LDLIBS) $(USR_LDLIBS) $(ARCH_DEP_LDLIBS) $(HOST_LDLIBS)
# Override SUN defaults
COMPILE.c = $(CC) $(CFLAGS) $(CPPFLAGS) -c
# Problem: MS Visual C++ does not recognize *.cc as C++ source,
# we have to compile xx.cc using the flag -Tp xx.cc,
# i.e. -Tp has to be immediately before the source file name
COMPILE.cc = $(CXX) $(CXXFLAGS) $(CPPFLAGS) -DEXPL_TEMPL -c -Tp
LINK.c=link $(LINK_OPT_FLAGS) $(LDFLAGS) -out:$@
LINK.cc=$(LINK.c)
# The DEPENDS_RULE may be a script on other systems,
# if you need different rules for .c and .cc,
# that script has to figure out what to call.
#
DEPENDS_RULE = @echo no DEPENDS_RULE defined in CONFIG.WIN32

143
config/CONFIG.alpha Normal file
View File

@@ -0,0 +1,143 @@
# CONFIG.Unix.alpha
#
# This file is maintained by the EPICS community.
# BUILD_TYPE
# Currently either Vx or Host
BUILD_TYPE = Host
ARCH_CLASS = alpha
# Compiler and utility invocation (supply path to compiler here)
# (with warning flags built in)
# Paths to compilers
GCC = gcc
ACC = cc
AR = ar -rc
_AR = $(AR) $(ARFLAGS)
G++_AR = $(_AR)
CCC_AR = $(AR)
ARCMD = $($(CPLUSPLUS)_AR)
RANLIB = ranlib
YACC = $(EYACC)
LEX = $(ELEX)
G++ = g++
CCC = cc
CP=cp
MV = mv
RM=rm -f
RMDIR = rm -rf
MKDIR = mkdir
CHMOD = "/bin/chmod"
WHAT = what
EXE=
OBJ=.o
ACC_ANSI_INVOKE_W_NO = $(ACC) -std -w
ACC_ANSI_INVOKE_W_YES = $(ACC) -std
ACC_STRICT_INVOKE_W_YES = $(ACC) -std1 -w
ACC_STRICT_INVOKE_W_NO = $(ACC) -std1
ACC_TRAD_INVOKE_W_NO = $(ACC) -std0 -w
ACC_TRAD_INVOKE_W_YES = $(ACC) -std0
GCC_ANSI_INVOKE_W_NO = $(GCC) -ansi -w
GCC_ANSI_INVOKE_W_YES = $(GCC) -ansi
GCC_STRICT_INVOKE_W_NO = $(GCC) -ansi -pedantic
GCC_STRICT_INVOKE_W_YES = $(GCC) -ansi -Wall -pedantic
GCC_TRAD_INVOKE_W_NO = $(GCC) -traditional -w
GCC_TRAD_INVOKE_W_YES = $(GCC) -traditional
C_OLD = $($(STANDARD)_TRAD_INVOKE_W_$(UNIX_WARN))
C_ANSI = $($(ANSI)_ANSI_INVOKE_W_$(UNIX_WARN))
C_STRICT = $($(ANSI)_STRICT_INVOKE_W_YES)
CC = $(C_$(CMPLR))
CCC_NORMAL_INVOKE_W_NO = $(CCC) +p
CCC_NORMAL_INVOKE_W_YES = $(CCC) +p +w
CCC_STRICT_INVOKE_W_YES = $(CCC) +p +w
CCC_LD_FLAGS =
CCC_LD_LIBS =
CCC_TEMPL_INST_FLAG =
G++_NORMAL_INVOKE_W_NO = $(G++) -ansi -pedantic -w
G++_NORMAL_INVOKE_W_YES = $(G++) -ansi -pedantic -Wall
G++_STRICT_INVOKE_W_YES = $(G++) -ansi -pedantic -Wtraditional -Wall \
-Wmissing-prototypes -Woverloaded-virtual \
-Wwrite-strings -Wconversion -Wstrict-prototypes\
-Wpointer-arith -Winline
G++_TEMPL_INST_FLAG = -DEXPL_TEMPL
CXX_NORMAL = $($(CPLUSPLUS)_NORMAL_INVOKE_W_$(UNIX_WARN))
CXX_STRICT = $($(CPLUSPLUS)_STRICT_INVOKE_W_YES)
TEMPL_INST_CXXFLAG = $($(CPLUSPLUS)_TEMPL_INST_FLAG)
# GNU make likes CXX instead of CCC
CXX = $(CXX_$(CXXCMPLR))
# Static Build options
ACC_SFLAGS_YES= -non_shared
ACC_SFLAGS_NO= -call_shared
CC_SFLAGS_YES= -non_shared
CC_SFLAGS_NO= -call_shared
GCC_SFLAGS_YES= -static
GCC_SFLAGS_NO=
SF_OLD = $($(STANDARD)_SFLAGS_$(STATIC_BUILD))
SF_ANSI = $($(ANSI)_SFLAGS_$(STATIC_BUILD))
SF_STRICT = $(SF_ANSI)
UNIX_SFLAGS = $(SF_$(CMPLR))
# Optimization
OPTIM_YES = -O
OPTIM_NO =
UNIX_OPT_FLAGS = $(OPTIM_$(UNIX_OPT))
# Include files
UNIX_INCLUDES = -I. -I.. $(USR_INCLUDES) -I$(INSTALL_INCLUDE) -I$(EPICS_BASE_INCLUDE) \
-I$(EPICS_BASE_INCLUDE)/os/$(T_A)
# Operating system flags
OP_SYS_FLAGS = -DUNIX
SPECIAL_LDFLAGS =
UNIX_LDFLAGS = -L$(EPICS_BASE_LIB)
UNIX_LDLIBS = -lm
# Architecture specific build flags
ARCH_DEP_CFLAGS = -D_OSF_SOURCE
ARCH_DEP_CXXFLAGS = $(ARCH_DEP_CFLAGS)
ARCH_DEP_LDLIBS = -lnsl
UNIX_CFLAGS = $(UNIX_SFLAGS) $(UNIX_INCLUDES) $(OP_SYS_FLAGS)
UNIX_CXXFLAGS = $(UNIX_CFLAGS)
# Target specific flags
TARGET_CFLAGS = $($(basename $@)_CFLAGS)
TARGET_CXXFLAGS = $($(basename $@)_CXXFLAGS)
TARGET_CPPFLAGS = $($(basename $@)_CPPFLAGS)
TARGET_LDFLAGS = $($(basename $@)_LDFLAGS)
TARGET_LDLIBS = $($(basename $@)_LDLIBS)
TARGET_SNCFLAGS = $($(basename $@)_SNCFLAGS)
CFLAGS = $(UNIX_OPT_FLAGS) $(TARGET_CFLAGS) $(USR_CFLAGS) $(ARCH_DEP_CFLAGS) $(UNIX_CFLAGS)
CXXFLAGS = $(UNIX_OPT_FLAGS) $(TARGET_CXXFLAGS) $(USR_CXXFLAGS) \
$(ARCH_DEP_CXXFLAGS) $(UNIX_CXXFLAGS) $(TEMPL_INST_CXXFLAG)
CPPFLAGS += $(TARGET_CPPFLAGS) $(USR_CPPFLAGS)
LDFLAGS = $(SPECIAL_LDFLAGS) $(TARGET_LDFLAGS) $(USR_LDFLAGS) $(ARCH_DEP_LDFLAGS) $(UNIX_LDFLAGS)
LDLIBS = $(TARGET_LDLIBS) $(USR_LDLIBS) $(ARCH_DEP_LDLIBS) $(UNIX_LDLIBS)
# Override defaults
COMPILE.c = $(CC) $(CFLAGS) $(CPPFLAGS) -c
COMPILE.cc = $(CXX) $(CXXFLAGS) $(CPPFLAGS) -c
# Unlike the 'Unix' makesystem, output flags -o .. are now part of LINK.c[c]
LINK.c = $(CC) -o $@ $(CFLAGS) $(CPPFLAGS) $(LDFLAGS)
LINK.cc = $(CXX) -o $@ $(CXXFLAGS) $(CPPFLAGS) $(LDFLAGS)
DEPEND_RULE.c = @echo no DEPENDS_RULE.c defined in CONFIG.alpha
DEPEND_RULE.cc = @echo no DEPENDS_RULE.cc defined in CONFIG.alpha

138
config/CONFIG.cygwin32 Executable file
View File

@@ -0,0 +1,138 @@
#
# $Id$
#
# This file is maintained by the EPICS community.
BUILD_TYPE = Host
ARCH_CLASS = cygwin32
GCC = gcc
G++ = g++
#==========================
# Fix for cygwin32 beta17.1 includes
CXX_INCLUDES = /usr/local/include/g++
#==========================
# Override values in CONFIG_SITE
ANSI=GCC
STANDARD=GCC
CPLUSPLUS=G++
EXE=.exe
OBJ=.o
AR = ar
_AR = $(AR) $(ARFLAGS)
G++_AR = $(_AR)
ARCMD = $($(CPLUSPLUS)_AR)
RANLIB = ranlib
YACC = $(EYACC)
LEX = $(ELEX)
RMDIR = rm -rf
MKDIR = mkdir
CP=cp
MV=mv
RM=rm -f
CHMOD = xxxx
WHAT = echo
GCC_ANSI_INVOKE_W_NO = $(GCC) -ansi -w
GCC_ANSI_INVOKE_W_YES = $(GCC) -ansi
GCC_STRICT_INVOKE_W_YES = $(GCC) -ansi -Wall -pedantic
GCC_TRAD_INVOKE_W_NO = $(GCC) -traditional -w
GCC_TRAD_INVOKE_W_YES = $(GCC) -traditional
GCC_LD_LIBS =
GCC_LD_FLAGS =
C_OLD = $($(STANDARD)_TRAD_INVOKE_W_$(UNIX_WARN))
C_ANSI = $($(ANSI)_ANSI_INVOKE_W_$(UNIX_WARN))
C_STRICT = $($(ANSI)_STRICT_INVOKE_W_YES)
CC = $(C_$(CMPLR))
LD_LIBS_OLD = $($(STANDARD)_LD_LIBS)
LD_LIBS_ANSI = $($(ANSI)_LD_LIBS)
LD_LIBS_STRICT = $($(ANSI)_LD_LIBS)
CCOMPILER_LDLIBS = $(LD_LIBS_$(CMPLR))
LD_FLAGS_OLD = $($(STANDARD)_LD_FLAGS)
LD_FLAGS_ANSI = $($(ANSI)_LD_FLAGS)
LD_FLAGS_STRICT = $($(ANSI)_LD_FLAGS)
CCOMPILER_LDFLAGS = $(LD_FLAGS_$(CMPLR))
G++_NORMAL_INVOKE_W_NO = $(G++) -ansi -pedantic -w
G++_NORMAL_INVOKE_W_YES = $(G++) -ansi -pedantic -Wall
G++_STRICT_INVOKE_W_YES = $(G++) -ansi -pedantic -Wtraditional -Wall \
-Wmissing-prototypes -Woverloaded-virtual \
-Wwrite-strings -Wconversion -Wstrict-prototypes\
-Wpointer-arith -Winline
CXX_NORMAL = $($(CPLUSPLUS)_NORMAL_INVOKE_W_$(UNIX_WARN))
CXX_STRICT = $($(CPLUSPLUS)_STRICT_INVOKE_W_YES)
# GNU make likes CXX
CXX = $(CXX_$(CXXCMPLR))
# Static Build options
GCC_SFLAGS_YES= -static
GCC_SFLAGS_NO=
SF_OLD = $($(STANDARD)_SFLAGS_$(STATIC_BUILD))
SF_ANSI = $($(ANSI)_SFLAGS_$(STATIC_BUILD))
SF_STRICT = $(SF_ANSI)
UNIX_SFLAGS = $(SF_$(CMPLR))
SL_OLD = $($(STANDARD)_SLIBS_$(STATIC_BUILD))
SL_ANSI = $($(ANSI)_SLIBS_$(STATIC_BUILD))
SL_STRICT = $(SL_ANSI)
UNIX_SLIBS = $(SL_$(CMPLR))
# Optimization
OPTIM_YES = -O
OPTIM_NO =
UNIX_OPT_FLAGS = $(OPTIM_$(UNIX_OPT))
# Include files
UNIX_INCLUDES = -I. -I.. $(USR_INCLUDES) -I$(INSTALL_INCLUDE) -I$(EPICS_BASE_INCLUDE) \
-I$(EPICS_BASE_INCLUDE)/os/$(T_A)
# Operating system flags
OP_SYS_FLAGS = -DUNIX
UNIX_LDFLAGS = -L$(EPICS_BASE_LIB) $(CCOMPILER_LDFLAGS)
UNIX_LDLIBS = $(UNIX_SLIBS) -lm $(CCOMPILER_LDLIBS)
# Architecture specific build flags
ARCH_DEP_CFLAGS = -DCYGWIN32
ARCH_DEP_CXXFLAGS = $(ARCH_DEP_CFLAGS) -I$(CXX_INCLUDES)
#ARCH_DEP_LDLIBS = -lsocket -lnsl
# -lsocket needed by libca.a
# -lnsl needed by libca.a
UNIX_CFLAGS = $(UNIX_SFLAGS) $(UNIX_INCLUDES) $(OP_SYS_FLAGS)
UNIX_CXXFLAGS = $(UNIX_CFLAGS)
# Target specific flags
TARGET_CFLAGS = $($(basename $@)_CFLAGS)
TARGET_CXXFLAGS = $($(basename $@)_CXXFLAGS)
TARGET_CPPFLAGS = $($(basename $@)_CPPFLAGS)
TARGET_LDFLAGS = $($(basename $@)_LDFLAGS)
TARGET_LDLIBS = $($(basename $@)_LDLIBS)
TARGET_SNCFLAGS = $($(basename $@)_SNCFLAGS)
CFLAGS = $(UNIX_OPT_FLAGS) $(TARGET_CFLAGS) $(USR_CFLAGS) $(ARCH_DEP_CFLAGS) $(UNIX_CFLAGS)
CXXFLAGS = $(UNIX_OPT_FLAGS) $(TARGET_CXXFLAGS) $(USR_CXXFLAGS) $(ARCH_DEP_CXXFLAGS) $(UNIX_CXXFLAGS)
CPPFLAGS += $(TARGET_CPPFLAGS) $(USR_CPPFLAGS)
LDFLAGS = $(SPECIAL_LDFLAGS) $(TARGET_LDFLAGS) $(USR_LDFLAGS) $(ARCH_DEP_LDFLAGS) $(UNIX_LDFLAGS)
LDLIBS = $(TARGET_LDLIBS) $(USR_LDLIBS) $(ARCH_DEP_LDLIBS) $(UNIX_LDLIBS)
LINK.c = $(CC) -o $@ $(CFLAGS) $(CPPFLAGS) $(LDFLAGS)
LINK.cc = $(CXX) -o $@ $(CXXFLAGS) $(CPPFLAGS) $(LDFLAGS)
#DEPENDS_RULE.c = -$(COMPILE.c) -xM $(SRCS.c) > .DEPENDS
#DEPENDS_RULE.cc = @echo no DEPENDS_RULE.cc defined in CONFIG.cygwin32
DEPENDS_RULE = -$(COMPILE.c) -MM $(SRCS.c) $(SRCS.cc) > .DEPENDS

17
config/CONFIG.hkv2f Normal file
View File

@@ -0,0 +1,17 @@
# $Id$
#
# This file is maintained by the EPICS community.
# BUILD_TYPE
BUILD_TYPE = Vx
# For Vx directories of form:
# $(VX_DIR)/$(HOST_ARCH).$(ARCH_CLASS)/bin
ARCH_CLASS = 68k
include $(EPICS_BASE)/config/CONFIG.$(BUILD_TYPE).$(ARCH_CLASS)
# Architecture specific build flags
ARCH_DEP_CFLAGS = -DCPU=MC68020 -m68020 -DCPU_FAMILY=MC680X0

144
config/CONFIG.hp700 Normal file
View File

@@ -0,0 +1,144 @@
# CONFIG.Unix.hp700
#
# This file is maintained by the EPICS community.
# BUILD_TYPE
# Currently either Vx or Unix
BUILD_TYPE = Unix
ARCH_CLASS = hp700
# Compiler and utility invocation (supply path to compiler here)
# (with warning flags built in)
# Paths to compilers
GCC = gcc
ACC = cc -Aa
HPACC = cc -Aa
HPCC = cc -Ac
TRADCC = cc
AR = ar
ARCMD = $(AR) $(ARFLAGS)
RANLIB = ranlib
YACC = $(EYACC)
LEX = $(ELEX)
G++ = g++
CCC = CC
CP=cp
MV = mv
RM=rm -f
RMDIR = rm -rf
MKDIR = mkdir
CHMOD = "/bin/chmod"
WHAT = what
EXE=
OBJ=.o
ACC_ANSI_INVOKE_W_NO = $(ACC) -w
ACC_ANSI_INVOKE_W_YES = $(ACC)
ACC_TRAD_INVOKE_W_NO = $(TRADCC) -w
ACC_TRAD_INVOKE_W_YES = $(TRADCC)
ACC_STRICT_INVOKE_W_NO = $(ACC) -w
ACC_STRICT_INVOKE_W_YES = $(ACC)
HPACC_ANSI_INVOKE_W_NO = $(HPACC) -w
HPACC_ANSI_INVOKE_W_YES = $(HPACC)
HPCC_TRAD_INVOKE_W_NO = $(HPCC) -w
HPCC_TRAD_INVOKE_W_YES = $(HPCC)
HPACC_STRICT_INVOKE_W_NO = $(HPACC) -w
HPACC_STRICT_INVOKE_W_YES = $(HPACC)
GCC_ANSI_INVOKE_W_NO = $(GCC) -ansi -w
GCC_ANSI_INVOKE_W_YES = $(GCC) -ansi
GCC_STRICT_INVOKE_W_YES = $(GCC) -ansi -Wall -pedantic
GCC_TRAD_INVOKE_W_NO = $(GCC) -traditional -w
GCC_TRAD_INVOKE_W_YES = $(GCC) -traditional
CCC_NORMAL_INVOKE_W_NO = $(CCC) +p
CCC_NORMAL_INVOKE_W_YES = $(CCC) +p +w
CCC_STRICT_INVOKE_W_YES = $(CCC) +p +w
CCC_LD_FLAGS =
CCC_LD_LIBS =
CCC_TEMPL_INST_FLAG =
G++_NORMAL_INVOKE_W_NO = $(G++) -ansi -pedantic -w
G++_NORMAL_INVOKE_W_YES = $(G++) -ansi -pedantic -Wall
G++_STRICT_INVOKE_W_YES = $(G++) -ansi -pedantic -Wtraditional -Wall \
-Wmissing-prototypes -Woverloaded-virtual \
-Wwrite-strings -Wconversion -Wstrict-prototypes\
-Wpointer-arith -Winline
G++_TEMPL_INST_FLAG = -DEXPL_TEMPL
CXX_NORMAL = $($(CPLUSPLUS)_NORMAL_INVOKE_W_$(UNIX_WARN))
CXX_STRICT = $($(CPLUSPLUS)_STRICT_INVOKE_W_YES)
TEMPL_INST_CXXFLAG = $($(CPLUSPLUS)_TEMPL_INST_FLAG)
# GNU make likes CXX instead of CCC
CXX = $(CXX_$(CXXCMPLR))
C_OLD = $($(STANDARD)_TRAD_INVOKE_W_$(UNIX_WARN))
C_ANSI = $($(ANSI)_ANSI_INVOKE_W_$(UNIX_WARN))
C_STRICT = $($(ANSI)_STRICT_INVOKE_W_YES)
CC = $(C_$(CMPLR))
# Static Build options
ACC_SFLAGS_YES= -Wl,-a,archive
ACC_SFLAGS_NO=
CC_SFLAGS_YES= -Wl,-a,archive
CC_SFLAGS_NO=
GCC_SFLAGS_YES= -static
GCC_SFLAGS_NO=
SF_OLD = $($(STANDARD)_SFLAGS_$(STATIC_BUILD))
SF_ANSI = $($(ANSI)_SFLAGS_$(STATIC_BUILD))
SF_STRICT = $(SF_ANSI)
UNIX_SFLAGS = $(SF_$(CMPLR))
# Optimization
OPTIM_YES = -O
OPTIM_NO =
UNIX_OPT_FLAGS = $(OPTIM_$(UNIX_OPT))
# Include files
UNIX_INCLUDES = -I. -I.. $(USR_INCLUDES) -I$(INSTALL_INCLUDE) -I$(EPICS_BASE_INCLUDE) \
-I$(EPICS_BASE_INCLUDE)/os/$(T_A)
# Operating system flags
OP_SYS_FLAGS = -DUNIX
SPECIAL_LDFLAGS =
UNIX_LDFLAGS = -L$(EPICS_BASE_LIB)
UNIX_LDLIBS = -lm
ARCH_DEP_CFLAGS = -D_HPUX_SOURCE -DHP_UX
ARCH_DEP_CXXFLAGS = $(ARCH_DEP_CFLAGS)
UNIX_CFLAGS = $(UNIX_SFLAGS) $(UNIX_INCLUDES) $(OP_SYS_FLAGS)
UNIX_CXXFLAGS = $(UNIX_CFLAGS)
# Target specific flags
TARGET_CFLAGS = $($(basename $@)_CFLAGS)
TARGET_CXXFLAGS = $($(basename $@)_CXXFLAGS)
TARGET_CPPFLAGS = $($(basename $@)_CPPFLAGS)
TARGET_LDFLAGS = $($(basename $@)_LDFLAGS)
TARGET_LDLIBS = $($(basename $@)_LDLIBS)
TARGET_SNCFLAGS = $($(basename $@)_SNCFLAGS)
CFLAGS = $(UNIX_OPT_FLAGS) $(TARGET_CFLAGS) $(USR_CFLAGS) $(ARCH_DEP_CFLAGS) $(UNIX_CFLAGS)
CXXFLAGS = $(UNIX_OPT_FLAGS) $(TARGET_CXXFLAGS) $(USR_CXXFLAGS) \
$(ARCH_DEP_CXXFLAGS) $(UNIX_CXXFLAGS) $(TEMPL_INST_CXXFLAG)
CPPFLAGS += $(TARGET_CPPFLAGS) $(USR_CPPFLAGS)
ARFLAGS = rv
LDFLAGS = $(SPECIAL_LDFLAGS) $(TARGET_LDFLAGS) $(USR_LDFLAGS) $(ARCH_DEP_LDFLAGS) $(UNIX_LDFLAGS)
LDLIBS = $(TARGET_LDLIBS) $(USR_LDLIBS) $(ARCH_DEP_LDLIBS) $(UNIX_LDLIBS)
# Override defaults
COMPILE.c = $(CC) $(CFLAGS) $(CPPFLAGS) -c
COMPILE.cc = $(CXX) $(CXXFLAGS) $(CPPFLAGS) -c
LINK.c = $(CC) $(CFLAGS) $(CPPFLAGS) $(LDFLAGS)
LINK.cc = $(CXX) $(CXXFLAGS) $(CPPFLAGS) $(LDFLAGS)
DEPENDS_RULE.c = @echo no DEPENDS_RULE.c defined in CONFIG.hp700
DEPENDS_RULE.cc = @echo no DEPENDS_RULE.cc defined in CONFIG.hp700

16
config/CONFIG.mv147 Normal file
View File

@@ -0,0 +1,16 @@
# $Id$
#
# This file is maintained by the EPICS community.
BUILD_TYPE = Vx
# For Vx directories of form:
# $(VX_DIR)/$(HOST_ARCH).$(ARCH_CLASS)/bin
ARCH_CLASS = 68k
include $(EPICS_BASE)/config/CONFIG.$(BUILD_TYPE).$(ARCH_CLASS)
# Architecture specific build flags
ARCH_DEP_CFLAGS = -DCPU=MC68030 -m68030 -DCPU_FAMILY=MC680X0

17
config/CONFIG.mv162 Normal file
View File

@@ -0,0 +1,17 @@
# $Id$
#
# This file is maintained by the EPICS community.
# BUILD_TYPE
BUILD_TYPE = Vx
# For Vx directories of form:
# $(VX_DIR)/$(HOST_ARCH).$(ARCH_CLASS)/bin
ARCH_CLASS = 68k
include $(EPICS_BASE)/config/CONFIG.$(BUILD_TYPE).$(ARCH_CLASS)
# Architecture specific build flags
ARCH_DEP_CFLAGS = -DCPU=MC68040 -m68040 -DCPU_FAMILY=MC680X0

16
config/CONFIG.mv162lc Normal file
View File

@@ -0,0 +1,16 @@
# $Id$
#
# This file is maintained by the EPICS community.
# BUILD_TYPE
BUILD_TYPE = Vx
# For Vx directories of form:
# $(VX_DIR)/$(HOST_ARCH).$(ARCH_CLASS)/bin
ARCH_CLASS = 68k
include $(EPICS_BASE)/config/CONFIG.$(BUILD_TYPE).$(ARCH_CLASS)
# Architecture specific build flags
ARCH_DEP_CFLAGS = -DCPU=MC68040 -msoft-float -DCPU_FAMILY=MC680X0

16
config/CONFIG.mv167 Normal file
View File

@@ -0,0 +1,16 @@
# $Id$
#
# This file is maintained by the EPICS community.
BUILD_TYPE = Vx
# For Vx directories of form:
# $(VX_DIR)/$(HOST_ARCH).$(ARCH_CLASS)/bin
ARCH_CLASS = 68k
include $(EPICS_BASE)/config/CONFIG.$(BUILD_TYPE).$(ARCH_CLASS)
# Architecture specific build flags
ARCH_DEP_CFLAGS = -DCPU=MC68040 -m68040 -DCPU_FAMILY=MC680X0

16
config/CONFIG.mv177 Normal file
View File

@@ -0,0 +1,16 @@
# $Id$
#
# This file is maintained by the EPICS community.
BUILD_TYPE = Vx
# For Vx directories of form:
# $(VX_DIR)/$(HOST_ARCH).$(ARCH_CLASS)/bin
ARCH_CLASS = 68k
include $(EPICS_BASE)/config/CONFIG.$(BUILD_TYPE).$(ARCH_CLASS)
# Architecture specific build flags
ARCH_DEP_CFLAGS = -DCPU=MC68060 -m68040 -DCPU_FAMILY=MC680X0

16
config/CONFIG.niCpu030 Normal file
View File

@@ -0,0 +1,16 @@
# BUILD_TYPE
# Currently either Vx or Unix
BUILD_TYPE = Vx
# For Vx directories of form:
#
# $(VX_DIR)/$(HOST_ARCH).$(ARCH_CLASS)/bin
#
ARCH_CLASS = 68k
include $(EPICS_BASE)/config/CONFIG.$(BUILD_TYPE).$(ARCH_CLASS)
# Architecture specific build flags
ARCH_DEP_CFLAGS = -DCPU=MC68030 -m68030 -DCPU_FAMILY=MC680X0

26
config/CONFIG.pc486 Normal file
View File

@@ -0,0 +1,26 @@
# BUILD_TYPE
# Currently either Vx or Unix
BUILD_TYPE = Vx
# For Vx directories of form:
#
# $(VX_DIR)/$(HOST_ARCH).$(ARCH_CLASS)/bin
#
# And configuration files:
#
# CONFIG_SITE.Vx.68k -or- CONFIG_SITE.Unix.sun4
#
ARCH_CLASS = pc486
include $(EPICS_BASE)/config/CONFIG.$(BUILD_TYPE).$(ARCH_CLASS)
# Architecture specific build flags
# Defines:
# CPU, CPU_FAMILY is used by VxWorks header files,
# _X86_ is used in base/src/ca
#
# -g is for debugging information, I didn't know where elso to put it
#
ARCH_DEP_CFLAGS = -DCPU=I80486 -m486 -DCPU_FAMILY=I80x86 -D_X86_ -g

138
config/CONFIG.sgi Normal file
View File

@@ -0,0 +1,138 @@
#
# $Id$
#
# This file is maintained by the EPICS community.
# BUILD_TYPE
# Currently either Vx or Host
BUILD_TYPE = Host
ARCH_CLASS = sgi
# Compiler and utility invocation (supply path to compiler here)
# (with warning flags built in)
# Paths to compilers
GCC = cc
ACC = cc
AR = ar
ARCMD = $(AR) $(ARFLAGS)
ARFLAGS = r
RANLIB =
YACC = $(EYACC)
LEX = $(ELEX)
G++ = g++
CCC = CC
CP=cp
MV = mv
RM=rm -f
RMDIR = rm -rf
MKDIR = mkdir
CHMOD = "/bin/chmod"
WHAT = what
EXE=
OBJ=.o
ACC_ANSI_INVOKE_W_NO = $(ACC) -xansi -w
ACC_ANSI_INVOKE_W_YES = $(ACC) -xansi
ACC_STRICT_INVOKE_W_NO = $(ACC) -xansi -w
ACC_STRICT_INVOKE_W_YES = $(ACC) -xansi
ACC_TRAD_INVOKE_W_NO = $(ACC) -cckr -Xs -w
ACC_TRAD_INVOKE_W_YES = $(ACC) -cckr -Xs
GCC_ANSI_INVOKE_W_NO = $(GCC) -ansi -w
GCC_ANSI_INVOKE_W_YES = $(GCC) -ansi
GCC_STRICT_INVOKE_W_NO = $(GCC) -ansi -pedantic
GCC_STRICT_INVOKE_W_YES = $(GCC) -ansi -Wall -pedantic
GCC_TRAD_INVOKE_W_NO = $(GCC) -traditional -w
GCC_TRAD_INVOKE_W_YES = $(GCC) -traditional
C_OLD = $(KRCC_TRAD_INVOKE_W_$(UNIX_WARN))
C_ANSI = $($(ANSI)_ANSI_INVOKE_W_$(UNIX_WARN))
C_STRICT = $($(ANSI)_STRICT_INVOKE_W_YES)
CC = $(C_$(CMPLR))
CCC_NORMAL_INVOKE_W_NO = $(CCC) +p
CCC_NORMAL_INVOKE_W_YES = $(CCC) +p +w
CCC_STRICT_INVOKE_W_YES = $(CCC) +p +w
CCC_LD_FLAGS =
CCC_LD_LIBS =
CCC_TEMPL_INST_FLAG =
G++_NORMAL_INVOKE_W_NO = $(G++) -ansi -pedantic -w
G++_NORMAL_INVOKE_W_YES = $(G++) -ansi -pedantic -Wall
G++_STRICT_INVOKE_W_YES = $(G++) -ansi -pedantic -Wtraditional -Wall \
-Wmissing-prototypes -Woverloaded-virtual \
-Wwrite-strings -Wconversion -Wstrict-prototypes\
-Wpointer-arith -Winline
G++_TEMPL_INST_FLAG = -DEXPL_TEMPL
CXX_NORMAL = $($(CPLUSPLUS)_NORMAL_INVOKE_W_$(UNIX_WARN))
CXX_STRICT = $($(CPLUSPLUS)_STRICT_INVOKE_W_YES)
TEMPL_INST_CXXFLAG = $($(CPLUSPLUS)_TEMPL_INST_FLAG)
# GNU make likes CXX instead of CCC
CXX = $(CXX_$(CXXCMPLR))
# Static Build options
ACC_SFLAGS_YES= -Bstatic
ACC_SFLAGS_NO=
CC_SFLAGS_YES= -Bstatic
CC_SFLAGS_NO=
GCC_SFLAGS_YES= -static
GCC_SFLAGS_NO=
SF_OLD = $($(STANDARD)_SFLAGS_$(STATIC_BUILD))
SF_ANSI = $($(ANSI)_SFLAGS_$(STATIC_BUILD))
SF_STRICT = $(SF_ANSI)
UNIX_SFLAGS = $(SF_$(CMPLR))
# Optimization
OPTIM_YES = -O
OPTIM_NO =
UNIX_OPT_FLAGS = $(OPTIM_$(UNIX_OPT))
# Include files
UNIX_INCLUDES = -I. -I.. $(USR_INCLUDES) -I$(INSTALL_INCLUDE) -I$(EPICS_BASE_INCLUDE) \
-I$(EPICS_BASE_INCLUDE)/os/$(T_A)
# Operating system flags
OP_SYS_FLAGS = -DUNIX
UNIX_LDFLAGS = -L$(EPICS_BASE_LIB)
UNIX_LDLIBS = -lm
ARCH_DEP_CFLAGS = -DSGI
ARCH_DEP_CXXFLAGS = $(ARCH_DEP_CFLAGS)
UNIX_CFLAGS = $(UNIX_SFLAGS) $(UNIX_INCLUDES) $(OP_SYS_FLAGS)
UNIX_CXXFLAGS = $(UNIX_CFLAGS)
# Target specific flags
TARGET_CFLAGS = $($(basename $@)_CFLAGS)
TARGET_CXXFLAGS = $($(basename $@)_CXXFLAGS)
TARGET_CPPFLAGS = $($(basename $@)_CPPFLAGS)
TARGET_LDFLAGS = $($(basename $@)_LDFLAGS)
TARGET_LDLIBS = $($(basename $@)_LDLIBS)
TARGET_SNCFLAGS = $($(basename $@)_SNCFLAGS)
CFLAGS = $(UNIX_OPT_FLAGS) $(TARGET_CFLAGS) $(USR_CFLAGS) $(ARCH_DEP_CFLAGS) $(UNIX_CFLAGS)
CXXFLAGS = $(UNIX_OPT_FLAGS) $(TARGET_CXXFLAGS) $(USR_CXXFLAGS) \
$(ARCH_DEP_CXXFLAGS) $(UNIX_CXXFLAGS) $(TEMPL_INST_CXXFLAG)
CPPFLAGS += $(TARGET_CPPFLAGS) $(USR_CPPFLAGS)
LDFLAGS = $(SPECIAL_LDFLAGS) $(TARGET_LDFLAGS) $(USR_LDFLAGS) $(ARCH_DEP_LDFLAGS) $(UNIX_LDFLAGS)
LDLIBS = $(TARGET_LDLIBS) $(USR_LDLIBS) $(ARCH_DEP_LDLIBS) $(UNIX_LDLIBS)
# Override defaults
COMPILE.c = $(CC) $(CFLAGS) $(CPPFLAGS) -c
COMPILE.cc = $(CXX) $(CXXFLAGS) $(CPPFLAGS) -c
# Unlike the 'Unix' makesystem, output flags -o .. are now part of LINK.c[c]
LINK.c = $(CC) -o $@ $(CFLAGS) $(CPPFLAGS) $(LDFLAGS)
LINK.cc = $(CXX) -o $@ $(CXXFLAGS) $(CPPFLAGS) $(LDFLAGS)
DEPENDS_RULE.c = -$(COMPILE.c) -M $(SRCS.c) > .DEPENDS
DEPENDS_RULE.cc = @echo no DEPENDS_RULE.cc defined in CONFIG.sgi

168
config/CONFIG.solaris Normal file
View File

@@ -0,0 +1,168 @@
#
# $Id$
#
# This file is maintained by the EPICS community.
# BUILD_TYPE
# Currently either Vx or Host
BUILD_TYPE = Host
ARCH_CLASS = solaris
# Compiler and utility invocation (supply path to compiler here)
# (with warning flags built in)
# Paths to compilers
GCC = /opt/gnu/bin/gcc
ACC = $(SPARCWORKS)/bin/cc
# SUNCC doesn't exist under Solaris
#
# required by sun's C++ compiler
#
AR = ar
_AR = $(AR) $(ARFLAGS)
G++_AR = $(_AR)
CCC_AR = $(CCC) -xar -o
ARCMD = $($(CPLUSPLUS)_AR)
RANLIB =
YACC = $(EYACC)
LEX = $(ELEX)
G++ = /opt/gnu/bin/g++
CCC = /opt/SUNWspro/bin/CC
CP=cp
MV=mv
RM=rm -f
MKDIR=mkdir
RMDIR=rm -rf
CHMOD = "/bin/chmod"
WHAT = what
EXE=
OBJ=.o
ACC_ANSI_INVOKE_W_NO = $(ACC) -Xa -w
ACC_ANSI_INVOKE_W_YES = $(ACC) -Xa
ACC_STRICT_INVOKE_W_YES = $(ACC) -Xc -v
ACC_TRAD_INVOKE_W_NO = $(ACC) -Xs -w
ACC_TRAD_INVOKE_W_YES = $(ACC) -Xs
ACC_LD_FLAGS =
ACC_LD_LIBS =
SUNCC_TRAD_INVOKE_W_NO = $(ACC_TRAD_INVOKE_W_NO)
SUNCC_TRAD_INVOKE_W_YES = $(ACC_TRAD_INVOKE_W_YES)
GCC_ANSI_INVOKE_W_NO = $(GCC) -ansi -w
GCC_ANSI_INVOKE_W_YES = $(GCC) -ansi
GCC_STRICT_INVOKE_W_YES = $(GCC) -ansi -Wall -pedantic
GCC_TRAD_INVOKE_W_NO = $(GCC) -traditional -w
GCC_TRAD_INVOKE_W_YES = $(GCC) -traditional
GCC_LD_LIBS =
GCC_LD_FLAGS =
C_OLD = $($(STANDARD)_TRAD_INVOKE_W_$(UNIX_WARN))
C_ANSI = $($(ANSI)_ANSI_INVOKE_W_$(UNIX_WARN))
C_STRICT = $($(ANSI)_STRICT_INVOKE_W_YES)
CC = $(C_$(CMPLR))
LD_LIBS_OLD = $($(STANDARD)_LD_LIBS)
LD_LIBS_ANSI = $($(ANSI)_LD_LIBS)
LD_LIBS_STRICT = $($(ANSI)_LD_LIBS)
CCOMPILER_LDLIBS = $(LD_LIBS_$(CMPLR))
LD_FLAGS_OLD = $($(STANDARD)_LD_FLAGS)
LD_FLAGS_ANSI = $($(ANSI)_LD_FLAGS)
LD_FLAGS_STRICT = $($(ANSI)_LD_FLAGS)
CCOMPILER_LDFLAGS = $(LD_FLAGS_$(CMPLR))
CCC_NORMAL_INVOKE_W_NO = $(CCC) +p
CCC_NORMAL_INVOKE_W_YES = $(CCC) +p +w
CCC_STRICT_INVOKE_W_YES = $(CCC) +p +w
CCC_LD_FLAGS = -L$(SPECIAL_LANG)
CCC_LD_LIBS =
CCC_TEMPL_INST_FLAG =
G++_NORMAL_INVOKE_W_NO = $(G++) -ansi -pedantic -w
G++_NORMAL_INVOKE_W_YES = $(G++) -ansi -pedantic -Wall
G++_STRICT_INVOKE_W_YES = $(G++) -ansi -pedantic -Wtraditional -Wall \
-Wmissing-prototypes -Woverloaded-virtual \
-Wwrite-strings -Wconversion -Wstrict-prototypes\
-Wpointer-arith -Winline
G++_TEMPL_INST_FLAG = -DEXPL_TEMPL
CXX_NORMAL = $($(CPLUSPLUS)_NORMAL_INVOKE_W_$(UNIX_WARN))
CXX_STRICT = $($(CPLUSPLUS)_STRICT_INVOKE_W_YES)
TEMPL_INST_CXXFLAG = $($(CPLUSPLUS)_TEMPL_INST_FLAG)
# GNU make likes CXX instead of CCC
CXX = $(CXX_$(CXXCMPLR))
# Static Build options
#ACC_SFLAGS_YES= -dn
ACC_SFLAGS_YES= -Bstatic
ACC_SLIBS_YES= -lw -lintl -Bdynamic -ldl -Bstatic -lXext -lX
ACC_SLIBS_NO=
ACC_SFLAGS_NO=
CC_SFLAGS_YES= -dn
CC_SFLAGS_NO=
GCC_SFLAGS_YES= -static
GCC_SFLAGS_NO=
SF_OLD = $($(STANDARD)_SFLAGS_$(STATIC_BUILD))
SF_ANSI = $($(ANSI)_SFLAGS_$(STATIC_BUILD))
SF_STRICT = $(SF_ANSI)
UNIX_SFLAGS = $(SF_$(CMPLR))
SL_OLD = $($(STANDARD)_SLIBS_$(STATIC_BUILD))
SL_ANSI = $($(ANSI)_SLIBS_$(STATIC_BUILD))
SL_STRICT = $(SL_ANSI)
UNIX_SLIBS = $(SL_$(CMPLR))
# Optimization
OPTIM_YES = -O
OPTIM_NO =
UNIX_OPT_FLAGS = $(OPTIM_$(UNIX_OPT))
# Include files
UNIX_INCLUDES = -I. -I.. $(USR_INCLUDES) -I$(INSTALL_INCLUDE) -I$(EPICS_BASE_INCLUDE) \
-I$(EPICS_BASE_INCLUDE)/os/$(T_A)
# Operating system flags
OP_SYS_FLAGS = -DUNIX
UNIX_LDFLAGS = -L$(EPICS_BASE_LIB) $(CCOMPILER_LDFLAGS)
UNIX_LDLIBS = $(UNIX_SLIBS) -lm $(CCOMPILER_LDLIBS)
# Architecture specific build flags
ARCH_DEP_CFLAGS = -DSOLARIS
ARCH_DEP_CXXFLAGS = $(ARCH_DEP_CFLAGS)
ARCH_DEP_LDLIBS = -lsocket -lnsl
# -lsocket needed by libca.a
# -lnsl needed by libca.a
UNIX_CFLAGS = $(UNIX_SFLAGS) $(UNIX_INCLUDES) $(OP_SYS_FLAGS)
UNIX_CXXFLAGS = $(UNIX_CFLAGS)
# Target specific flags
TARGET_CFLAGS = $($(basename $@)_CFLAGS)
TARGET_CXXFLAGS = $($(basename $@)_CXXFLAGS)
TARGET_CPPFLAGS = $($(basename $@)_CPPFLAGS)
TARGET_LDFLAGS = $($(basename $@)_LDFLAGS)
TARGET_LDLIBS = $($(basename $@)_LDLIBS)
TARGET_SNCFLAGS = $($(basename $@)_SNCFLAGS)
CFLAGS = $(UNIX_OPT_FLAGS) $(TARGET_CFLAGS) $(USR_CFLAGS) $(ARCH_DEP_CFLAGS) $(UNIX_CFLAGS)
CXXFLAGS = $(UNIX_OPT_FLAGS) $(TARGET_CXXFLAGS) $(USR_CXXFLAGS) \
$(ARCH_DEP_CXXFLAGS) $(UNIX_CXXFLAGS) $(TEMPL_INST_CXXFLAG)
CPPFLAGS += $(TARGET_CPPFLAGS) $(USR_CPPFLAGS)
LDFLAGS = $(SPECIAL_LDFLAGS) $(TARGET_LDFLAGS) $(USR_LDFLAGS) $(ARCH_DEP_LDFLAGS) $(UNIX_LDFLAGS)
LDLIBS = $(TARGET_LDLIBS) $(USR_LDLIBS) $(ARCH_DEP_LDLIBS) $(UNIX_LDLIBS)
# Override SUN defaults
COMPILE.c = $(CC) $(CFLAGS) $(CPPFLAGS) -c
COMPILE.cc = $(CXX) $(CXXFLAGS) $(CPPFLAGS) -c
# Unlike the 'Unix' makesystem, output flags -o .. are now part of LINK.c[c]
LINK.c = $(CC) -o $@ $(CFLAGS) $(CPPFLAGS) $(LDFLAGS)
LINK.cc = $(CXX) -o $@ $(CXXFLAGS) $(CPPFLAGS) $(LDFLAGS)
DEPENDS_RULE.c = -$(COMPILE.c) -xM $(SRCS.c) > .DEPENDS
DEPENDS_RULE.cc = -$(COMPILE.cc) -xM $(SRCS.cc) >> .DEPENDS

167
config/CONFIG.sun4 Normal file
View File

@@ -0,0 +1,167 @@
#
# $Id$
#
# This file is maintained by the EPICS community.
# BUILD_TYPE
# Currently either Vx or Host
BUILD_TYPE = Host
ARCH_CLASS=sun4
# Compiler and utility invocation (supply path to compiler here)
# (with warning flags built in)
# Paths to compilers
GCC = gcc
ACC = /usr/lang/acc
SUNCC = cc
RANLIB = ranlib
RANLIBFLAGS = -t
YACC = $(EYACC)
LEX = $(ELEX)
G++ = g++
CCC = /usr/lang/CC
RMDIR = rm -rf
MKDIR = mkdir
CHMOD = "/bin/chmod"
CP=cp
MV=mv
RM=rm -f
WHAT = what
EXE=
OBJ=.o
#
# original before use of sun C++
#
#
# required by sun's C++ compiler
#
ARFLAGS = r
AR = ar
_AR = $(AR) $(ARFLAGS)
G++_AR = $(_AR)
CCC_AR = $(CCC) -xar -o
ARCMD = $($(CPLUSPLUS)_AR)
ACC_ANSI_INVOKE_W_NO = $(ACC) -Xa -w
ACC_ANSI_INVOKE_W_YES = $(ACC) -Xa
ACC_TRAD_INVOKE_W_NO = $(ACC) -Xs -w
ACC_TRAD_INVOKE_W_YES = $(ACC) -Xs
ACC_STRICT_INVOKE_W_NO = $(ACC) -Xc -w
ACC_STRICT_INVOKE_W_YES = $(ACC) -Xc -vc
ACC_LD_FLAGS = -L$(SPECIAL_LANG)
ACC_LD_LIBS =
SUNCC_TRAD_INVOKE_W_NO = $(SUNCC) -w
SUNCC_TRAD_INVOKE_W_YES = $(SUNCC)
GCC_ANSI_INVOKE_W_NO = $(GCC) -ansi -w -D__USE_FIXED_PROTOTYPES__
GCC_ANSI_INVOKE_W_YES = $(GCC) -ansi -D__USE_FIXED_PROTOTYPES__
GCC_STRICT_INVOKE_W_NO = $(GCC) -ansi -pedantic -D__USE_FIXED_PROTOTYPES__
GCC_STRICT_INVOKE_W_YES = $(GCC) -ansi -Wall -pedantic -D__USE_FIXED_PROTOTYPES__
GCC_TRAD_INVOKE_W_NO = $(GCC) -traditional -w
GCC_TRAD_INVOKE_W_YES = $(GCC) -traditional
GCC_LD_LIBS = -liberty
GCC_LD_FLAGS =
C_OLD = $($(STANDARD)_TRAD_INVOKE_W_$(UNIX_WARN))
C_ANSI = $($(ANSI)_ANSI_INVOKE_W_$(UNIX_WARN))
C_STRICT = $($(ANSI)_STRICT_INVOKE_W_YES)
CC = $(C_$(CMPLR))
LD_LIBS_OLD = $($(STANDARD)_LD_LIBS)
LD_LIBS_ANSI = $($(ANSI)_LD_LIBS)
LD_LIBS_STRICT = $($(ANSI)_LD_LIBS)
CCOMPILER_LDLIBS = $(LD_LIBS_$(CMPLR))
LD_FLAGS_OLD = $($(STANDARD)_LD_FLAGS)
LD_FLAGS_ANSI = $($(ANSI)_LD_FLAGS)
LD_FLAGS_STRICT = $($(ANSI)_LD_FLAGS)
CCOMPILER_LDFLAGS = $(LD_FLAGS_$(CMPLR))
CCC_NORMAL_INVOKE_W_NO = $(CCC) +p
CCC_NORMAL_INVOKE_W_YES = $(CCC) +p +w
CCC_STRICT_INVOKE_W_YES = $(CCC) +p +w
CCC_LD_FLAGS = -L$(SPECIAL_LANG)
CCC_LD_LIBS =
CCC_TEMPL_INST_FLAG =
G++_NORMAL_INVOKE_W_NO = $(G++) -ansi -pedantic -w
G++_NORMAL_INVOKE_W_YES = $(G++) -ansi -pedantic -Wall
G++_STRICT_INVOKE_W_YES = $(G++) -ansi -pedantic -Wtraditional -Wall \
-Wmissing-prototypes -Woverloaded-virtual \
-Wwrite-strings -Wconversion -Wstrict-prototypes\
-Wpointer-arith -Winline
G++_TEMPL_INST_FLAG = -DEXPL_TEMPL
CXX_NORMAL = $($(CPLUSPLUS)_NORMAL_INVOKE_W_$(UNIX_WARN))
CXX_STRICT = $($(CPLUSPLUS)_STRICT_INVOKE_W_YES)
TEMPL_INST_CXXFLAG = $($(CPLUSPLUS)_TEMPL_INST_FLAG)
# GNU make likes CXX instead of CCC
CXX = $(CXX_$(CXXCMPLR))
# Static Build options
ACC_SFLAGS_YES= -Bstatic
ACC_SFLAGS_NO=
CC_SFLAGS_YES= -Bstatic
CC_SFLAGS_NO=
GCC_SFLAGS_YES= -static
GCC_SFLAGS_NO=
SF_OLD = $($(STANDARD)_SFLAGS_$(STATIC_BUILD))
SF_ANSI = $($(ANSI)_SFLAGS_$(STATIC_BUILD))
SF_STRICT = $(SF_ANSI)
UNIX_SFLAGS = $(SF_$(CMPLR))
# Optimization
OPTIM_YES = -O
OPTIM_NO =
UNIX_OPT_FLAGS = $(OPTIM_$(UNIX_OPT))
# Include files
UNIX_INCLUDES = -I. -I.. $(USR_INCLUDES) -I$(INSTALL_INCLUDE) -I$(EPICS_BASE_INCLUDE) \
-I$(EPICS_BASE_INCLUDE)/os/$(T_A)
# Operating system flags
OP_SYS_FLAGS = -DUNIX
UNIX_LDFLAGS = -L$(EPICS_BASE_LIB) $(CCOMPILER_LDFLAGS)
UNIX_LDLIBS = -lm $(CCOMPILER_LDLIBS)
ARCH_DEP_CFLAGS = -DSUNOS4
ARCH_DEP_CXXFLAGS = $(ARCH_DEP_CFLAGS)
UNIX_CFLAGS = $(UNIX_SFLAGS) $(UNIX_INCLUDES) $(OP_SYS_FLAGS)
UNIX_CXXFLAGS = $(UNIX_CFLAGS)
# Target specific flags
TARGET_CFLAGS = $($(basename $@)_CFLAGS)
TARGET_CXXFLAGS = $($(basename $@)_CXXFLAGS)
TARGET_CPPFLAGS = $($(basename $@)_CPPFLAGS)
TARGET_LDFLAGS = $($(basename $@)_LDFLAGS)
TARGET_LDLIBS = $($(basename $@)_LDLIBS)
TARGET_SNCFLAGS = $($(basename $@)_SNCFLAGS)
CFLAGS = $(UNIX_OPT_FLAGS) $(TARGET_CFLAGS) $(USR_CFLAGS) $(ARCH_DEP_CFLAGS) $(UNIX_CFLAGS)
CXXFLAGS = $(UNIX_OPT_FLAGS) $(TARGET_CXXFLAGS) $(USR_CXXFLAGS) $(ARCH_DEP_CXXFLAGS) \
$(UNIX_CXXFLAGS) $(TEMPL_INST_CXXFLAG)
CPPFLAGS += $(TARGET_CPPFLAGS) $(USR_CPPFLAGS)
LDFLAGS = $(SPECIAL_LDFLAGS) $(TARGET_LDFLAGS) $(USR_LDFLAGS) $(ARCH_DEP_LDFLAGS) $(UNIX_LDFLAGS)
LDLIBS = $(TARGET_LDLIBS) $(USR_LDLIBS) $(ARCH_DEP_LDLIBS) $(UNIX_LDLIBS)
# Override SUN defaults
COMPILE.c = $(CC) $(CFLAGS) $(CPPFLAGS) -c
COMPILE.cc = $(CXX) $(CXXFLAGS) $(CPPFLAGS) -c
# changed from 'Unix' makesystem:
# link command now contains the output flag '-o $@'
LINK.c = $(CC) -o $@ $(CFLAGS) $(CPPFLAGS) $(LDFLAGS)
LINK.cc = $(CXX) -o $@ $(CXXFLAGS) $(CPPFLAGS) $(LDFLAGS)
DEPENDS_RULE.c = -$(COMPILE.c) -M $(SRCS.c) > .DEPENDS
DEPENDS_RULE.cc = @echo no DEPENDS_RULE.cc defined in CONFIG.sun4

55
config/CONFIG_BASE Normal file
View File

@@ -0,0 +1,55 @@
#
# $Id$
#
# the order of following list is important
#
# for c++ build add the dirs gdd and cas after ca
# (and uncomment the c++ files in src/lbCom/Makefile.Unix)
#
DIRS = tools
DIRS += include
DIRS += cxxTemplates
DIRS += toolsComm
DIRS += libCom
DIRS += libvxWorks
DIRS += cvtDctsdr
DIRS += dbStatic
DIRS += db
DIRS += bpt
DIRS += ca
DIRS += util
DIRS += misc
DIRS += sequencer
DIRS += dbtools
DIRS += rsrv
DIRS += rec
DIRS += as
DIRS += drv
DIRS += dev
DIRS += devOpt
DIRS += iocCore
#
# if CPLUSPLUS isnt empty then include C++ src codes
#
DIRS += $(patsubst %,gdd,$(strip $(CPLUSPLUS)))
DIRS += $(patsubst %,cas,$(strip $(CPLUSPLUS)))
EPICS_BASE = $(TOP)
# EPICS include config file
include $(EPICS_BASE)/config/CONFIG
EPICS_BASE = $(INSTALL_LOCATION)
#
# this speeds up the build by turning off implicit rules search
#
.PHONY:: $(EPICS_BASE)/config/CONFIG
.PHONY:: $(EPICS_BASE)/config/CONFIG.* $(EPICS_BASE)/config/CONFIG_*
.PHONY:: $(EPICS_BASE)/config/RULES.* $(EPICS_BASE)/config/RULES_* .DEPENDS
.PHONY:: $(HOME)/.EPICS_CONFIG $(HOME)/.EPICS_CONFIG.$(HOST_ARCH)
.PHONY:: ../Makefile.Vx ../Makefile.Unix ../Makefile.Host Makefile

View File

@@ -0,0 +1,19 @@
#
# $Id$
#
# EPICS Version information
#
# This file is interpreted by the Bourne Shell (MakeRelease), so spaces are
# not allowed around the '=' signs or in unquoted values.
#
EPICS_VERSION=3
EPICS_REVISION=13
EPICS_MODIFICATION=0
EPICS_UPDATE_NAME=beta
EPICS_UPDATE_LEVEL=9
EPICS_VERSION_STRING="EPICS Version ${EPICS_VERSION}.${EPICS_REVISION}.${EPICS_MODIFICATION}.${EPICS_UPDATE_NAME}${EPICS_UPDATE_LEVEL}"
CVS_DATE="\$$Date$$"

84
config/CONFIG_COMMON Normal file
View File

@@ -0,0 +1,84 @@
#
# $Id$
#
# CONFIG_COMMON - Another EPICS BASE config file
# by Matthew Needes and Mike Bordua
#
# This file is to be maintained by the EPICS community.
#
# Common Configuration Information
# CROSS1 will be defined only when CROSS_COMPILER_HOST_ARCHS is NOT defined
CROSS1 = $(CROSS_COMPILER_TARGET_ARCHS$(word 1,$(CROSS_COMPILER_HOST_ARCHS)))
# CROSS2 will be defined only when CROSS_COMPILER_HOST_ARCHS is defined
# and HOST_ARCH is one of it's words
CROSS2 = $(CROSS_COMPILER_TARGET_ARCHS$(filter-out 1,$(words $(filter $(HOST_ARCH),$(CROSS_COMPILER_HOST_ARCHS)))))
BUILD_ARCHS = $(HOST_ARCH) $(CROSS1) $(CROSS2)
INSTALL_LOCATION = $(TOP)
INSTALL_LOCATION_LIB = $(INSTALL_LOCATION)/lib
INSTALL_LOCATION_BIN = $(INSTALL_LOCATION)/bin
INSTALL_INCLUDE = $(INSTALL_LOCATION)/include
INSTALL_DOC = $(INSTALL_LOCATION)/doc
INSTALL_MAN = $(INSTALL_LOCATION)/man
INSTALL_TEMPLATES = $(INSTALL_LOCATION)/templates
INSTALL_DBD = $(INSTALL_LOCATION)/dbd
INSTALL_CONFIG = $(INSTALL_LOCATION)/config
EPICS_BASE_INCLUDE = $(EPICS_BASE)/include
EPICS_BASE_DBD = $(EPICS_BASE)/dbd
EPICS_EXTENSIONS_INCLUDE = $(EPICS_EXTENSIONS)/include
EPICS_EXTENSIONS_TEMPLATES = $(EPICS_EXTENSIONS)/templates
DIVIDER = .
# private versions of lex/yacc from EPICS
EYACC = $(EPICS_BASE)/bin/$(HOST_ARCH)/antelope$(EXE)
ELEX = $(EPICS_BASE)/bin/$(HOST_ARCH)/e_flex$(EXE) -S$(EPICS_BASE_INCLUDE)/flex.skel.static
# Default for perl if it's on the PATH,
# otherwise override this in e.g. CONFIG_SITE
PERL=perl
# install from EPICS
INSTALL = $(PERL) $(EPICS_BASE)/bin/$(HOST_ARCH)/installEpics.pl
INSTALL_PRODUCT = $(INSTALL)
# dbtools from EPICS
# state notation language compiler (installed from base/src/sequencer)
SNC = $(EPICS_BASE)/bin/$(HOST_ARCH)/snc
# vxWorks definitions
VX_CONFIG_DIR = $(VX_DIR)/config
VX_INCLUDE = $(VX_DIR)/h
VX_GNU_BIN = $(VX_GNU)/$(HOST_ARCH).$(ARCH_CLASS)/bin
VX_GNU_LIB = $(VX_GNU)/$(HOST_ARCH).$(ARCH_CLASS)/lib
ifdef T_A
INSTALL_LIB = $(INSTALL_LOCATION_LIB)/$(T_A)
INSTALL_TCLLIB = $(INSTALL_LOCATION_LIB)/$(T_A)
INSTALL_BIN = $(INSTALL_LOCATION_BIN)/$(T_A)
EPICS_BASE_LIB = $(EPICS_BASE)/lib/$(T_A)
EPICS_BASE_BIN = $(EPICS_BASE)/bin/$(T_A)
EPICS_EXTENSIONS_LIB = $(EPICS_EXTENSIONS)/lib/$(T_A)
EPICS_EXTENSIONS_BIN = $(EPICS_EXTENSIONS)/bin/$(T_A)
VX_IMAGE = $(VX_CONFIG_DIR)/$(T_A)/vxWorks
VX_IMAGE_SYM = $(VX_CONFIG_DIR)/$(T_A)/vxWorks.sym
# location of installed vxWorks image
EPICS_VX_IMAGE = $(EPICS_BASE_BIN)/vxWorks
EPICS_VX_IMAGE_SYM = $(EPICS_BASE_BIN)/vxWorks.sym
endif

75
config/CONFIG_ENV Normal file
View File

@@ -0,0 +1,75 @@
# $Id$
# Author: Andrew Johnson
# Date: 20 April 1995
#
# Experimental Physics and Industrial Control System (EPICS)
#
# CONFIG_ENV - EPICS Environment Parameter configuration file
#
# This file is interpreted by the Bourne Shell, so spaces are
# not allowed around the '=' signs or in unquoted values.
# Makefile variables are not defined here.
#
# Note: This file is read by base/src/libCom/bldEnvdata.pl,
# so the variable definitions in here should be kept 'simple':
# VAR=VALUE
# each one on a single line.
#
# Default environment settings
# Channel Access:
# EPICS_CA_ADDR_LIST augment beacon/search dest ip addr list
# from white space separated ip addresses in this
# environment variable. "Quote" if more than one addr.
# EPICS_CA_AUTO_ADDR_LIST YES = augment beacon/search dest ip
# addr list from network interfaces found; NO = only use
# EPICS_CA_ADDR_LIST to create this list.
# EPICS_CA_CONN_TMO sec before sending echo request from client.
# EPICS_CA_REPEATER_PORT CA repeater port number.
# EPICS_CA_SERVER_PORT CA server port number.
EPICS_CA_ADDR_LIST=""
EPICS_CA_AUTO_ADDR_LIST=YES
EPICS_CA_CONN_TMO=30.0
EPICS_CA_REPEATER_PORT=5065
EPICS_CA_SERVER_PORT=5064
#
# These parameters are only used by the CA server library
#
# EPICS_CA_BEACON_PERIOD quiescent sec between server beacons.
# EPICS_CAS_INTF_ADDR_LIST - list of IP addresses identifying
# a limited set of interfaces that the server should bind to.
# If this parameter is empty then connections are accepted
# from any interface. Beacons are sent only to the broadcast
# address of each interface in this list (or the destination
# address of point to point interfaces) if EPICS_CA_AUTO_ADDR_LIST
# is YES. Type "ifconfig -a" in order to determine which
# interfaces are available.
# EPICS_CAS_BEACON_ADDR_LIST - If this parameter is specified
# or if EPICS_CAS_INTF_ADDR_LIST isnt empty then this parameter
# is used instead of EPICS_CA_ADDR_LIST by the server library
# to augment the list of addresses to send beacons to.
# EPICS_CAS_SERVER_PORT - If this parameter is specified then it
# and not EPICS_CA_SERVER_PORT is used to determine the server's
# port number.
#
EPICS_CA_BEACON_PERIOD=15.0
EPICS_CAS_INTF_ADDR_LIST=""
EPICS_CAS_BEACON_ADDR_LIST=""
EPICS_CAS_SERVER_PORT=
# Log Server:
# EPICS_IOC_LOG_PORT Log server port number.
EPICS_IOC_LOG_PORT=7004
# Other services:
EPICS_CMD_PROTO_PORT=
EPICS_AR_PORT=7002

117
config/CONFIG_SITE Normal file
View File

@@ -0,0 +1,117 @@
#
# $Id$
#
# CONFIG_SITE - EPICS BASE config file
# by Matthew Needes and Mike Bordua
#
# This file is to be modified by the EPICS system manager
# only.
#
# The host architecture performing the build,
# i.e.: the arch running DCT/getrel/etc.
#
# Currently Supporting:
# sun4
# hp700
# alpha
# solaris
# sgi
# Linux
# WIN32
#
# HOST_ARCH now an environment variable
# HOST_ARCH=$(shell /usr/local/epics/startup/HostArch)
ifndef HOST_ARCH
HOST_ARCH=unsupported
endif
# The architectures to build EPICS for
#
# Currently Supporting:
# mv167
# mv162
# mv162lc
# mv147
# hkv2f
# niCpu030
# pc486
#
CROSS_COMPILER_TARGET_ARCHS=mv167
# If only a subset of the host architectures perform
# the build for the CROSS_COMPILER_TARGET_ARCHS
# uncomment the following line and specify them.
#
#CROSS_COMPILER_HOST_ARCHS=sun4
# VxWorks directory
#VX_DIR=/usr/csite/vw/5.1.1/vw
#VX_DIR=/usr/local/vw/vxV51.mm
#VX_DIR=/usr/local/vw/vxV52/vw
VX_DIR=/usr/local/vw/vxV52p1/vw
# Gnu directory for gcc
#VX_GNU = $(VX_DIR)
VX_GNU = $(VX_DIR)/../vxgccV2.2.3.1
# Gnu directory for g++
GNU_DIR = /usr/local/hideos/gnu_install-2.7.2
GNU_BIN = $(GNU_DIR)/bin
GNU_LIB = $(GNU_DIR)/lib
# Client ANSI Compiler
# GCC (gcc -ansi)
# ACC (acc)
# HPACC (cc -Aa)
#ANSI=HPACC
ANSI=ACC
# Client Standard C Compiler choice
# GCC (gcc -traditional)
# ACC (acc -Xs)
# SUNCC (cc)
# HPCC (cc -Ac)
#STANDARD=HPCC
STANDARD=ACC
# C++ Compiler
# G++ (g++) GNU C++
# CCC (CC) OS VENDOR C++
#CPLUSPLUS=G++
#CPLUSPLUS= # use this if site does not have C++ compiler
CPLUSPLUS=CCC
# Build client objects statically ?
# must be either YES or NO
STATIC_BUILD=NO
# Unix Optimization
# must be either YES or NO
UNIX_OPT=YES
# VxWorks Optimization
# must be either YES or NO
VX_OPT=YES
# Generate Verbose Compiler Warnings for Unix
# must be either YES or NO
UNIX_WARN=YES
# Generate Verbose Compiler Warnings for VxWorks
# must be either YES or NO
VX_WARN=YES
# sch2edif compiler and flags
SCH2EDIF = sch2edif
SCH2EDIF_PATH =
SCH2EDIF_SYSFLAGS = -n -ap -p.+..+$(SCH2EDIF_PATH)+$(EPICS_EXTENSIONS)/templates/capfast/sym+
SCH2EDIF_FLAGS =
# e2db and flags
# - again there is an assumption where edb.def is installed.
E2DB = $(EPICS_EXTENSIONS)/bin/$(HOST_ARCH)/e2db
E2DB_SYSFLAGS = -ate -d $(EPICS_EXTENSIONS)/templates/capfast/edb.def
E2DB_FLAGS =

20
config/CONFIG_SITE.Linux Normal file
View File

@@ -0,0 +1,20 @@
#
# $Id$
#
# Site Specific Configuration Information
# Only the local epics system manager should modify this file
# Default SUN compiler, individual Makefiles will override
# if they cannot support ANSI compilation.
# STRICT - ANSI C - force warning flags
# ANSI - ANSI C
# OLD - Standard C - Not appropriate here.
CMPLR=ANSI
# Default SUN C++ compiler, individual Makefiles will override
# if they are coded to a higher standard.
# STRICT - ANSI C++ force strict warning flags
# NORMAL - ANSI C++ optional warning flags
CXXCMPLR=NORMAL
#CXXCMPLR=STRICT

View File

@@ -0,0 +1,29 @@
# $Id$
#
# This file is maintained by the EPICS community.
# Site host architecture specific overrides for Vx.68k
#
ANSI=GCC
STANDARD=GCC
CPLUSPLUS=G++
VX_DIR=/vw/vxV52p1/vw
VX_GNU=/usr/local
VX_GNU_BIN = $(VX_GNU)/bin
VX_GNU_LIB = $(VX_GNU)/lib
AR=$(VX_GNU_BIN)/m68k-wrs-vxworks-ar.exe
RANLIB=$(VX_GNU_BIN)/m68k-wrs-vxworks-ranlib.exe
CC=$(VX_GNU_BIN)/m68k-wrs-vxworks-gcc.exe -B$(VX_GNU_LIB)/gcc-lib/ -nostdinc
G++=$(VX_GNU_BIN)/m68k-wrs-vxworks-g++.exe -B$(VX_GNU_LIB)/gcc-lib/ -nostdinc
CPP=$(VX_GNU_BIN)/m68k-wrs-vxworks-cpp.exe -nostdinc
LD=$(VX_GNU_BIN)/m68k-wrs-vxworks-ld.exe -r
# Not in cygwin32
WHAT = echo

7
config/CONFIG_SITE.WIN32 Normal file
View File

@@ -0,0 +1,7 @@
#
# $Id$
#
# Site Specific Configuration Information
# Only the local epics system manager should modify this file

21
config/CONFIG_SITE.alpha Normal file
View File

@@ -0,0 +1,21 @@
#
# CONFIG_SITE.Unix.alpha
#
#
# Site Specific Configuration Information
# Only the local epics system manager should modify this file
# Default compiler, individual Makefiles will override
# if they cannot support ANSI compilation.
# STRICT - ANSI C - force warning flags
# ANSI - ANSI C
# OLD - Standard C - Not appropriate here.
CMPLR=ANSI
# Default SUN C++ compiler, individual Makefiles will override
# if they are coded to a higher standard.
# STRICT - ANSI C++ force strict warning flags
# NORMAL - ANSI C++ optional warning flags
CXXCMPLR=NORMAL
#CXXCMPLR=STRICT

21
config/CONFIG_SITE.cygwin32 Executable file
View File

@@ -0,0 +1,21 @@
#
# $Id$
#
# Site Specific Configuration Information
# Only the local epics system manager should modify this file
# Default compiler, individual Makefiles will override
# if they cannot support ANSI compilation.
# STRICT - ANSI C - force warning flags
# ANSI - ANSI C
# OLD - Standard C - Not appropriate here.
CMPLR=ANSI
# Default C++ compiler, individual Makefiles will override
# if they are coded to a higher standard.
# STRICT - ANSI C++ force strict warning flags
# NORMAL - ANSI C++ optional warning flags
CXXCMPLR=NORMAL
SPECIAL_LANG = .

9
config/CONFIG_SITE.hkv2f Normal file
View File

@@ -0,0 +1,9 @@
# $Id$
#
# Site Specific Configuration Information
# Only the local epics system manager should modify this file
# Epics defs

21
config/CONFIG_SITE.hp700 Normal file
View File

@@ -0,0 +1,21 @@
#
# CONFIG_SITE.Unix.hp700
#
#
# Site Specific Configuration Information
# Only the local epics system manager should modify this file
# Default compiler, individual Makefiles will override
# if they cannot support ANSI compilation.
# STRICT - ANSI C - force warning flags
# ANSI - ANSI C
# OLD - Standard C - Not appropriate here.
CMPLR=ANSI
# Default SUN C++ compiler, individual Makefiles will override
# if they are coded to a higher standard.
# STRICT - ANSI C++ force strict warning flags
# NORMAL - ANSI C++ optional warning flags
CXXCMPLR=NORMAL
#CXXCMPLR=STRICT

9
config/CONFIG_SITE.mv147 Normal file
View File

@@ -0,0 +1,9 @@
# $Id$
#
# Site Specific Configuration Information
# Only the local epics system manager should modify this file
# Epics defs

9
config/CONFIG_SITE.mv162 Normal file
View File

@@ -0,0 +1,9 @@
# $Id$
#
# Site Specific Configuration Information
# Only the local epics system manager should modify this file
# Epics defs

View File

@@ -0,0 +1,9 @@
# $Id$
#
# Site Specific Configuration Information
# Only the local epics system manager should modify this file
# Epics defs

9
config/CONFIG_SITE.mv167 Normal file
View File

@@ -0,0 +1,9 @@
# $Id$
#
# Site Specific Configuration Information
# Only the local epics system manager should modify this file
# Epics defs

9
config/CONFIG_SITE.mv177 Normal file
View File

@@ -0,0 +1,9 @@
# $Id$
#
# Site Specific Configuration Information
# Only the local epics system manager should modify this file
# Epics defs

View File

@@ -0,0 +1,9 @@
# $Id$
#
# Site Specific Configuration Information
# Only the local epics system manager should modify this file
# Epics defs

6
config/CONFIG_SITE.pc486 Normal file
View File

@@ -0,0 +1,6 @@
# $Log$
# Revision 1.1.2.1 1996/11/25 20:20:22 jhill
# installed
#
# -kuk-

27
config/CONFIG_SITE.sgi Normal file
View File

@@ -0,0 +1,27 @@
#
# $Id$
#
# Revision 1.2 1994/06/28 00:02:32 bordua
# First cut at the RULES and CONFIGS.
#
# Site Specific Configuration Information
# Only the local epics system manager should modify this file
# Default SUN compiler, individual Makefiles will override
# if they cannot support ANSI compilation.
# STRICT - ANSI C - force warning flags
# ANSI - ANSI C
# OLD - Standard C - Not appropriate here.
CMPLR=ANSI
# Default SUN C++ compiler, individual Makefiles will override
# if they are coded to a higher standard.
# STRICT - ANSI C++ force strict warning flags
# NORMAL - ANSI C++ optional warning flags
CXXCMPLR=NORMAL
#CXXCMPLR=STRICT
# Special C library requirements
SPECIAL_LANG =

View File

@@ -0,0 +1,26 @@
#
# $Id$
#
# Site Specific Configuration Information
# Only the local epics system manager should modify this file
# Default SUN compiler, individual Makefiles will override
# if they cannot support ANSI compilation.
# STRICT - ANSI C - force warning flags
# ANSI - ANSI C
# OLD - Standard C - Not appropriate here.
CMPLR=ANSI
# Default SUN C++ compiler, individual Makefiles will override
# if they are coded to a higher standard.
# STRICT - ANSI C++ force strict warning flags
# NORMAL - ANSI C++ optional warning flags
CXXCMPLR=NORMAL
#CXXCMPLR=STRICT
# Unbundled C compiler stuff
SPARCWORKS = /opt/SUNWspro
#SPECIAL_LANG = $(SPARCWORKS)/lib
SPECIAL_LANG = .

31
config/CONFIG_SITE.sun4 Normal file
View File

@@ -0,0 +1,31 @@
#
# $Id$
#
# Site Specific Configuration Information
# Only the local epics system manager should modify this file
# Default SUN compiler, individual Makefiles will override
# if they cannot support ANSI compilation.
# STRICT - ANSI C - force warning flags
# ANSI - ANSI C
# OLD - Standard C - Not appropriate here.
CMPLR=ANSI
# Default SUN C++ compiler, individual Makefiles will override
# if they are coded to a higher standard.
# STRICT - ANSI C++ force strict warning flags
# NORMAL - ANSI C++ optional warning flags
CXXCMPLR=NORMAL
#CXXCMPLR=STRICT
#CMPLR=STRICT
#ANSI=GCC
#STANDARD=GCC
#CPLUSPLUS=G++
# Special C library requirements
#SPECIAL_LANG = /usr/lang/SC3.0.1
#SPECIAL_LANG = /usr/lang/lib
SPECIAL_LANG = .

45
config/CONFIG_SITE_ENV Normal file
View File

@@ -0,0 +1,45 @@
# $Id$
# Author: Andrew Johnson
# Date: 1 May 1995
#
# Experimental Physics and Industrial Control System (EPICS)
#
# CONFIG_SITE_ENV - EPICS Environment Parameter Site configuration file
#
# This file is interpreted by the Bourne Shell, so spaces are
# not allowed around the '=' signs or in unquoted values.
# Makefile variables are not defined here.
#
# Note: This file is read by base/src/libCom/bldEnvdata.pl,
# so the variable definitions in here should be kept 'simple':
# VAR=VALUE
# each one on a single line.
#
# Site-specific environment settings
# Time service:
# EPICS_TS_MIN_WEST the local time difference from GMT.
# EPICS_TS_NTP_INET ntp or Unix time server ip addr.
EPICS_TS_MIN_WEST=360
EPICS_TS_NTP_INET=
# Log Server:
# EPICS_IOC_LOG_INET
# Log server ip addr.
# EPICS_IOC_LOG_FILE_NAME
# pathname to the log file.
# EPICS_IOC_LOG_FILE_LIMIT
# maximum log file size.
# EPICS_IOC_LOG_FILE_COMMAND
# A shell command string used to obtain a new
# path name in response to SIGHUP - the new path name will
# replace any path name supplied in EPICS_IOC_LOG_FILE_NAME
EPICS_IOC_LOG_INET=164.54.8.167
EPICS_IOC_LOG_FILE_NAME=/home/phebos1/epics/apple/log/iocLog.text
EPICS_IOC_LOG_FILE_COMMAND=
EPICS_IOC_LOG_FILE_LIMIT=1000000

105
config/HostSys.txt Normal file
View File

@@ -0,0 +1,105 @@
Short Description of the "Host" (vs. "Unix") Build System
---------------------------------------------------------
7-30-96 -kuk-
questions/comments please mailto:kasemir@atdiv.lanl.gov
To build EPICS on the WIN32 architecture
the "old" make-system using Makefile.Unix in each
subdir and RULES.Host was not suitable because
it is too much Unix-dependent.
A "new" system using Makefile.Host and RULES.Host
was used instead. This "host" system should work
on all other architectures as well.
The idea is that ALL architectures should be able to use
the "host" system in future because.
The syntax of the 'Host' Makefiles is described
in 'Sample.Makefile.Host'. Any suggestions for a
better syntax (in connection whith ideas how to
implement this in RULES.Host!) are very welcome!
To use it, only a few changes should be necessary:
A) In CONFIG.<WIN32, sun4, hp700, ... whatever you are using>:
1) Set
BUILD_TYPE=Host
instead of 'Unix'. This switches you over to using
Makefile.Host instead of Makefile.Unix.
2) Set ARCH_CLASS to the correct architecture class.
(ARCH_CLASS used to be defined in the past, right now
it seems it's only set for VxWorks targets, not hosts).
ARCH_CLASS is used to define system-dependent
CFLAGS, library contents etc. in Makefile.Host,
so it should describe the general architecture,
maybe
WIN32 : this is the only one really supported in Makefile.Host by now
BSD for sun4,
SYSV for ??,
Maybe this "general arch" is not sufficient, so we will
end up using
ARCH_CLASS=WIN32, sun4, hp700, ....
as it used to be.
3) Make sure that the following (new) macros are defined:
CP =$(PERL) $(EPICS_BASE)/src/tools/cp.pl
MV =$(PERL) $(EPICS_BASE)/src/tools/mv.pl
RM =$(PERL) $(EPICS_BASE)/src/tools/rm.pl -f
MKDIR=$(PERL) $(EPICS_BASE)/src/tools/mkdir.pl
RMDIR=$(PERL) $(EPICS_BASE)/src/tools/rm.pl -rf
or
CP=cp
MV=mv
RM=rm -f
MKDIR=mkdir
RMDIR=rm -rf
EXE=
OBJ=.o
4) LINK.c and LINK.cc must now include the target-flag, e.g.:
LINK.c = $(CC) $(LDFLAGS) -o $@
because the "-o $@" is also system dependent (it's -Fe$@ for WIN32)
5) The bin directory for the host based epics tools
$(EPICS)/base/bin/$(HOST_ARCH)
must be in your PATH.
B) Adjust Makefile.Host
If you are trying to build EPICS now, there might be errors
because the Makefile.Host files are only tested on WIN32, yet.
If changes are necessare in some base/src/???/Makefile.Host,
refer to Sample.Makefile.Host in the base/config dir.
The current make-system for WIN32
needs
* gnumake (OK, sources for WIN32 are available)
* several UNIX tools: sed, grep, ... (dito)
* a UNIX-like shell (ouch!)
I found no fully operational shell and no sources for WIN32 so far,
Cygnus' bash e.g. cannot handle this:
(echo a>a; echo b>>a)
Right now I use the knts that I wrote and simplified scripts.
Jeff eliminated many shell-lines in Makefile.*,
the final solution could be:
1) replace shell, awk, grep, sed, ... by Perl!
2) use C code
Perl looks like a real option because it's available
for many platforms and maybe the best idea for
'portable scripts'.

10
config/Makefile Normal file
View File

@@ -0,0 +1,10 @@
#
# $Id$
#
TOP=..
include $(TOP)/config/CONFIG_BASE
include $(TOP)/config/RULES_ARCHS

57
config/Makefile.Host Normal file
View File

@@ -0,0 +1,57 @@
#
# $Id$
#
TOP = ../..
include $(TOP)/config/CONFIG_BASE
CONFIGS += CONFIG
CONFIGS += CONFIG_BASE
CONFIGS += CONFIG_BASE_VERSION
CONFIGS += CONFIG_COMMON
CONFIGS += CONFIG_ENV
CONFIGS += CONFIG.WIN32
CONFIGS += CONFIG.pc486
CONFIGS += CONFIG.Linux
CONFIGS += CONFIG.alpha
CONFIGS += CONFIG.hp700
CONFIGS += CONFIG.sgi
CONFIGS += CONFIG.solaris
CONFIGS += CONFIG.sun4
CONFIGS += CONFIG.hkv2f
CONFIGS += CONFIG.mv147
CONFIGS += CONFIG.mv162
CONFIGS += CONFIG.mv162lc
CONFIGS += CONFIG.mv167
CONFIGS += CONFIG.niCpu030
CONFIGS += CONFIG.Vx.68k
CONFIGS += CONFIG_SITE
CONFIGS += CONFIG_SITE_ENV
CONFIGS += CONFIG_SITE.WIN32
CONFIGS += CONFIG_SITE.pc486
CONFIGS += CONFIG_SITE.Linux
CONFIGS += CONFIG_SITE.alpha
CONFIGS += CONFIG_SITE.hp700
CONFIGS += CONFIG_SITE.sgi
CONFIGS += CONFIG_SITE.solaris
CONFIGS += CONFIG_SITE.sun4
CONFIGS += CONFIG_SITE.hkv2f
CONFIGS += CONFIG_SITE.mv147
CONFIGS += CONFIG_SITE.mv162lc
CONFIGS += CONFIG_SITE.mv162
CONFIGS += CONFIG_SITE.mv167
CONFIGS += CONFIG_SITE.niCpu030
CONFIGS += RULES.Host
CONFIGS += RULES.Vx
CONFIGS += RULES_ARCHS
CONFIGS += RULES_DIRS
CONFIGS += RULES_TOP
CONFIGS += RULES.Db
CONFIGS += RULES.ioc
include $(TOP)/config/RULES.Host

30
config/Makefile.Unix Normal file
View File

@@ -0,0 +1,30 @@
#
# $Id$
#
TOP = ../..
include $(TOP)/config/CONFIG_BASE
CONFIGS += CONFIG
CONFIGS += CONFIG_BASE
CONFIGS += CONFIG_COMMON
CONFIGS += CONFIG_ENV
CONFIGS += CONFIG.Vx.68k
CONFIGS += CONFIG_SITE
CONFIGS += CONFIG_SITE_ENV
CONFIGS += $(HOST_ARCH:%=CONFIG.%)
CONFIGS += $(CROSS_COMPILER_TARGET_ARCHS:%=CONFIG.%)
CONFIGS += $(HOST_ARCH:%=CONFIG_SITE.%)
CONFIGS += $(CROSS_COMPILER_TARGET_ARCHS:%=CONFIG_SITE.%)
CONFIGS += RULES.Unix
CONFIGS += RULES.Vx
CONFIGS += RULES_ARCHS
CONFIGS += RULES_DIRS
CONFIGS += RULES_TOP
include $(TOP)/config/RULES.Unix

59
config/RULES.Db Normal file
View File

@@ -0,0 +1,59 @@
#RULES.Db
SUBTOOL = $(EPICS_BASE_BIN)/subtool
PREFIX=$(shell echo $* | sed -e 's-[0-9]--g' | sed -e 's-\.db--g')
ARCHS += $(BUILD_ARCHS) host cross
ACTIONS += clean inc depends buildInstall build
actionArchTargets = $(foreach action, $(ACTIONS) install,\
$(foreach arch, $(ARCHS), \
$(action)$(DIVIDER)$(arch)))
all install :: inc buildInstall
buildInstall: .DEPENDS dbd $(DBFROMTEMPLATE) $(INDDBFROMTEMPLATE) $(PROD)
inc build depends:
$(TOP)/dbd:
$(MKDIR) $(TOP)/dbd
dbd: $(TOP)/dbd
ifndef WIN32
ln -s $(TOP)/dbd dbd
endif
$(DBFROMTEMPLATE):%.db: %.template %.substitutions
$(RM) $@
$(SUBTOOL) $*.template $*.substitutions > $@
$(INDDBFROMTEMPLATE):%.db: %.substitutions
$(RM) $@
ifndef WIN32
$(SUBTOOL) $(PREFIX).template $*.substitutions > $@
endif
.DEPENDS: Makefile
@$(RM) $@
ifndef WIN32
@for NAME in $(INDDBFROMTEMPLATE) garbage_marty ; do \
if [ $$NAME != garbage_marty ] ; then \
PREFIX="`echo $$NAME | sed -e 's-[0-9]--g' | sed -e 's-\.db--g'`";\
echo "$$NAME: $$PREFIX.template" >> $@;\
fi ; \
done
endif
clean::
@$(RM) dbd $(DBFROMTEMPLATE) $(INDDBFROMTEMPLATE) .DEPENDS $(PROD)
$(actionArchTargets) :%:
$(MAKE) $(word 1, $(subst $(DIVIDER), ,$@))
$(ARCHS):%: install
.PHONY :: $(ARCHS) $(ACTIONS)
.PHONY :: $(actionArchTargets)
-include .DEPENDS

601
config/RULES.Host Normal file
View File

@@ -0,0 +1,601 @@
#
# $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,
# but so far the rules are quite similar on all systems
# except WIN32 has some specials.
#
# Maybe there is a way to use indentation to make it
# easier to read this file?
#
# Most things may also work if you say e.g.
# VAR+=ADD
# even if ADD is not there, but this way "VAR" would
# be defined in any case, that's why I try to use
# ifdef ADD
# VAR+=ADD
# endif
#
# -kuk-
# we are in O.$(ARCH_CLASS), but most sources are one dir above:
#
# The use of VPATH (no suffix specification) caused everything
# to break several times.
# vpath, of course, has the disadvantage that we need explicit rules
# for scripts or similar os-specific filed which have _no_ suffix...
vpath %.c $(USER_VPATH) ../os/$(ARCH_CLASS) ../os/generic ..
vpath %.cc $(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)
# check for add-on CFLAGS and CXXFLAGS
#
# Rules:
# 1) USR_CFLAGS is used
# 2) if there is a special USR_CFLAGS_$(ARCH_CLASS), it's
# appended to 1)
# 3) if there is no special defined, but a generic USR_CFLAGS_DEFAULT,
# this one is appended
# 4) if you have the special case that your USR_CFLAGS_$(ARCH_CLASS) is
# empty but you don't want 3), you have to define it as '-nil-', e.g.:
# USR_CFLAGS := <defines for all systems>
# USR_CFLAGS_sun4 := -nil-
# USR_CFLAGS_DEFAULT := <defines for most systems, not sun4>
#
# These rules apply to these Makefile-variables:
# USR_CFLAGS C flags
# USR_CXXFLAGS C++ flags
# INC include-files to install
# LIBSRCS source files for building library
# PROD_LIBS EPICS libs needed by PROD and TESTPROD
# SYS_PROD_LIBS system libs needed by PROD and TESTPROD
# PROD products to build and install
# SCRIPTS scripts to install
#
# Remark:
# If you define a special INC, e.g. INC_WIN32 := getopt.h,
# the source (getopt.h) has to be in os/WIN32 (or os/<your ARCH_CLASS>)
#
# This makes INC_$(ARCH_CLASS) slightly different from OSINC:
# OSINC := a_file.h
# means that you have a special os/$(ARCH_CLASS)/a_file.h
# for _every_ ARCH_CLASS.
# If you use INC_$(ARCH_CLASS), you need the special include
# only for the specified ARCH_CLASS!
#
ifneq (x$(USR_CFLAGS_$(ARCH_CLASS)),x)
USR_CFLAGS+=$(subst -nil-,,$(USR_CFLAGS_$(ARCH_CLASS)))
else
ifdef USR_CFLAGS_DEFAULT
USR_CFLAGS+=$(USR_CFLAGS_DEFAULT)
endif
endif
ifneq (x$(USR_CXXFLAGS_$(ARCH_CLASS)),x)
USR_CXXFLAGS+=$(subst -nil-,,$(USR_CXXFLAGS_$(ARCH_CLASS)))
else
ifdef USR_CXXFLAGS_DEFAULT
USR_CXXFLAGS+=$(USR_CXXFLAGS_DEFAULT)
endif
endif
# check for special includes:
#
ifneq (x$(INC_$(ARCH_CLASS)),x)
# os-specific includes go to the include/os-directory:
OSINC += $(subst -nil-,,$(INC_$(ARCH_CLASS)))
else
ifdef INC_DEFAULT
INC += $(INC_DEFAULT)
endif
endif
# concat specific library contents (if defined) to LIBCONTENS
#
ifneq (x$(LIBSRCS_$(ARCH_CLASS)),x)
LIBSRCS += $(subst -nil-,,$(LIBSRCS_$(ARCH_CLASS)))
else
ifdef LIBSRCS_DEFAULT
LIBSRCS+=$(LIBSRCS_DEFAULT)
endif
endif
# adjust object names for library contents
#
ifdef LIBSRCS
LIBOBJS=$(addsuffix $(OBJ), $(basename $(LIBSRCS)))
endif
#
# concat specific library contents (if defined) to PROD_LIBS
#
ifneq (x$(PROD_LIBS_$(ARCH_CLASS)),x)
PROD_LIBS += $(subst -nil-,,$(PROD_LIBS_$(ARCH_CLASS)))
else
ifdef PROD_LIBS_DEFAULT
PROD_LIBS += $(PROD_LIBS_DEFAULT)
endif
endif
#
# concat specific library contents (if defined) to SYS_PROD_LIBS
#
ifneq (x$(SYS_PROD_LIBS_$(ARCH_CLASS)),x)
SYS_PROD_LIBS += $(subst -nil-,,$(SYS_PROD_LIBS_$(ARCH_CLASS)))
else
ifdef SYS_PROD_LIBS_DEFAULT
SYS_PROD_LIBS += $(SYS_PROD_LIBS_DEFAULT)
endif
endif
#
# concat specific products
#
ifneq (x$(PROD_$(ARCH_CLASS)),x)
PROD += $(subst -nil-,,$(PROD_$(ARCH_CLASS)))
else
ifdef PROD_DEFAULT
PROD += $(PROD_DEFAULT)
endif
endif
#
# concat specific scripts
#
ifneq (x$(SCRIPTS_$(ARCH_CLASS)),x)
SCRIPTS += $(subst -nil-,,$(SCRIPTS_$(ARCH_CLASS)))
else
ifdef SCRIPTS_DEFAULT
SCRIPTS += $(SCRIPTS_DEFAULT)
endif
endif
# -------------------------------------------------------------------
# adjust names to platform specific pre-/postfixes,
# this is ugly (ifdef XXX...) but hopefully get's you there...
# -------------------------------------------------------------------
# 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!
ifdef LIBRARY
ifdef LIBOBJS
ifndef WIN32
# handle plain Unix first because it's easy: <lib> -> lib<lib>.a
LIBNAME:=$(LIBRARY:%=lib%.a)
else
# WIN32 library name:
LIBNAME:=$(LIBRARY).lib
# check if DLL or plain lib requested:
ifeq ($(LIBTYPE),SHARED)
# create name for dll, import file
DLLNAME:=$(LIBRARY).dll
# libs defined that we need to link the DLL with?
DLL_DEP_LIBS:=$(DLL_LIBS:%=%.lib)
endif # LIBTYPE=SHARED
endif # WIN32
endif
endif # LIBRARY and LIBOBJS
# dito for libraries used by PROD
#
ifdef PROD_LIBS
# add to USR_LDLIBS so that the libs are linked
ifdef WIN32
PRODDEPLIBS:=$(PROD_LIBS:%=$(INSTALL_LIB)/%.lib)
USR_LDLIBS += -libpath:$(INSTALL_LIB) $(PROD_LIBS:%=%.lib)
else
# On Unix: library "ca" is linked with "-lca" etc.
PRODDEPLIBS=$(PROD_LIBS:%=$(INSTALL_LIB)/lib%.a)
USR_LDLIBS += -L$(INSTALL_LIB) $(PROD_LIBS:%=-l%)
endif
endif
# dito for system libraries used by PROD
#
ifdef SYS_PROD_LIBS
ifdef WIN32
# add to USR_LDLIBS so that the libs are linked
# we need the full path because there is no "-L" option on WIN32....
USR_LDLIBS += $(SYSPRODDEPLIBS)
else
# On Unix: it is difficult to determine where the
# system lib is (because of add on compilere).
# Therefore no additions to PRODDEPLIBS for
# system libraries.
#
USR_LDLIBS += $(SYS_PROD_LIBS:%=-l%)
endif
endif
# adjust executables
ifdef PROD
PROD := $(addsuffix $(EXE), $(PROD))
endif
ifdef TESTPROD
TESTPROD := $(addsuffix $(EXE), $(TESTPROD))
endif
# ----------------------------------------------------
# create names (lists) for installed things
# ----------------------------------------------------
# each list starts with the destination directory name(s)
# to make sure it's there
INSTALL_PROD= $(PROD:%= $(INSTALL_BIN)/%)
# DLLs (only defined on WIN32) are like executables:
ifdef DLLNAME
INSTALL_DLLS=$(DLLNAME:%=$(INSTALL_BIN)/%)
endif
INSTALL_LIBS= $(LIBNAME:%=$(INSTALL_LIB)/%)
INSTALL_INC= $(INC:%=$(INSTALL_INCLUDE)/%)
INSTALL_OSINCLUDE=$(INSTALL_INCLUDE)/os/$(ARCH_CLASS)
INSTALL_OSINC= $(OSINC:%= $(INSTALL_OSINCLUDE)/%)
MANLIST = 1 2 3 4 5 6 7 8 9
INSTALL_MANS = $(foreach n, \
$(MANLIST),$(INSTALL_MAN)/man$(n) $(MAN$(n):%= $(INSTALL_MAN)/man$(n)/%))
INSTALL_DOCS = $(DOCS:%= $(INSTALL_DOC)/%)
INSTALL_SCRIPTS = $(SCRIPTS:%= $(INSTALL_BIN)/%)
ifdef TEMPLATES_DIR
INSTALL_TEMPLATES_SUBDIR = $(INSTALL_TEMPLATES)/$(TEMPLATES_DIR)
else
INSTALL_TEMPLATES_SUBDIR = $(INSTALL_TEMPLATES)
endif
INSTALL_TEMPLATE = $(TEMPLATES:%= $(INSTALL_TEMPLATES_SUBDIR)/%)
INSTALL_CONFIGS = $(CONFIGS:%= $(INSTALL_CONFIG)/%)
MAN_DIRECTORY_TARGETS = $(foreach n, $(MANLIST),$(INSTALL_MAN)/man$(n))
DIRECTORY_TARGETS = $(INSTALL_INCLUDE) $(INSTALL_INCLUDE)/os \
$(INSTALL_OSINCLUDE) $(INSTALL_DOC) \
$(INSTALL_LOCATION_BIN) $(INSTALL_BIN) $(INSTALL_LIB) \
$(INSTALL_LOCATION_LIB) $(INSTALL_CONFIG) \
$(MAN_DIRECTORY_TARGETS) $(INSTALL_MAN) \
$(INSTALL_TEMPLATES)
ifdef TEMPLATES_DIR
DIRECTORY_TARGETS += $(INSTALL_TEMPLATES)/$(TEMPLATES_DIR)
endif
# Main target
#
all:: install
build:: $(LIBNAME) $(DLLNAME) \
$(INSTALL_LOCATION_LIB) $(INSTALL_LIB)\
$(INSTALL_LIBS) $(INSTALL_DLLS) $(PROD) $(TESTPROD)
inc:: $(INSTALL_INCLUDE) $(INSTALL_INC) \
$(INSTALL_INCLUDE)/os $(INSTALL_OSINCLUDE) $(INSTALL_OSINC)
rebuild:: clean install
install:: inc buildInstall
buildInstall :: build $(TARGETS) $(INSTALL_LOCATION_BIN) \
$(INSTALL_BIN) $(INSTALL_SCRIPTS) $(INSTALL_PROD) \
$(INSTALL_MAN) $(INSTALL_MANS) \
$(INSTALL_DOC) $(INSTALL_DOCS) \
$(INSTALL_TEMPLATES) $(INSTALL_TEMPLATES_SUBDIR) $(INSTALL_TEMPLATE) \
$(INSTALL_CONFIG) $(INSTALL_CONFIGS)
depends:: $(LIBSRCS) $(SRCS)
$(RM) .DEPENDS
touch .DEPENDS
ifdef $(SRCS.c)
$(DEPENDS_RULE.c)
endif
ifdef $(SRCS.cc)
$(DEPENDS_RULE.cc)
endif
clean::
@echo "Cleaning"
@$(RM) *.i *$(OBJ) *.a $(PROD) $(TESTPROD) $(LIBNAME) $(INC)
$(DIRECTORY_TARGETS) :
$(MKDIR) $@
# The order of the following dependencies is
# VERY IMPORTANT !!!!
# If you want to break this on WIN32, please forget
# that $(COMPILE.cc) is like $(COMPILE.c) for WIN32
# except the first one ends in -Tp to select 'C++'.
#
# EPICS uses .cc for C++, which is not recognized
# by MS Visual C++, so -Tp has to be directly in front of
# the source file.
# -> put the source file directly after $(COMPILE.cc),
# explicit list of source files given for PROD ?
# (otherwise implicit rules .c -> $(EXE), .cc -> $(EXE)
ifdef SRCS
ifeq ($(findstring cc,$(suffix $(SRCS))),cc)
PROD_LINKER = $(LINK.cc)
else
PROD_LINKER = $(LINK.c)
endif
PROD_OBJS=$(addsuffix $(OBJ), $(basename $(SRCS)))
$(PROD): $(PROD_OBJS) $(PRODDEPLIBS)
@$(RM) $@
$(PROD_LINKER) $(PROD_OBJS) $(LDLIBS)
endif
# explicit list of source files given for TESTPROD ?
# (otherwise implicit rule .c -> $(OBJ) -> $(EXE)
ifdef TESTPROD_SRCS
ifeq ($(findstring cc,$(suffix $(TESTPROD_SRCS))),cc)
TESTPROD_LINKER = $(LINK.cc)
else
TESTPROD_LINKER = $(LINK.c)
endif
TESTPROD_OBJS=$(addsuffix $(OBJ), $(basename $(TESTPROD_SRCS)))
$(TESTPROD): $(TESTPROD_OBJS) $(PRODDEPLIBS)
@$(RM) $@
$(TESTPROD_LINKER) $(TESTPROD_OBJS) $(LDLIBS)
endif
# Generic Rules for 'simple' targets that
# can be generated from a single source with same basename.
#
# The usual two rules .c* -> $(OBJ) and then $(OBJ) -> $(EXE)
# do not work because the $(OBJ)->$(EXE) rule wouldn't
# know if the original source was C or C++.
#
# Hint: The $(subst...) construct removes the .c or .cc
# as well as the '../' from the filename and adds $(OBJ):
# e.g. $< = '../abc.c' -> 'abc.o'
%$(EXE): %.c $(PRODDEPLIBS)
@$(RM) $@
$(COMPILE.c) $<
$(LINK.c) $(subst ../,,$(basename $<))$(OBJ) $(LDLIBS)
%$(EXE): %.cc $(PRODDEPLIBS)
@$(RM) $@
$(COMPILE.cc) $<
$(LINK.cc) $(subst ../,,$(basename $<))$(OBJ) $(LDLIBS)
%$(OBJ): %.c
@$(RM) $@
$(COMPILE.c) $<
%$(OBJ): %.cc
@$(RM) $@
$(COMPILE.cc) $<
%.c %.h: ../%.y
@$(RM) y.tab.c y.tab.h
$(YACC) $(YACCOPT) $<
@if [ -f y.tab.c ]; \
then \
echo "$(MV) y.tab.c $*.c"; \
$(RM) $*.c; \
$(MV) y.tab.c $*.c; \
fi
@if [ -f y.tab.h ]; \
then \
echo "$(MV) y.tab.h $*.h"; \
$(RM) $*.h; \
$(MV) y.tab.h $*.h; \
fi
%.c: ../%.l
@$(RM) lex.yy.c
$(LEX) $(LEXOPT) $<
@$(RM) $@
$(MV) lex.yy.c $@
#state notation language rule
%.c: ../%.st
@echo "preprocessing $*.st"
@$(RM) $*.i
$(CPP) $(CPPFLAGS) $< $*.i
@echo "converting $*.i"
@$(RM) $@
$(SNC) $(TARGET_SNCFLAGS) $(SNCFLAGS) $*.i
%.c: %.stt
@echo "converting $<"
@$(RM) $@
$(SNC) $(TARGET_SNCFLAGS) $(SNCFLAGS) $<
# Capfast Rules:
%.db: %.edf
$(E2DB) $(E2SR_SYSFLAGS) $(E2SR_FLAGS) $<
%.db: ../%.edf
$(E2DB) $(E2SR_SYSFLAGS) $(E2SR_FLAGS) $<
%.edf: ../%.sch $(DEPSCHS)
@if [ ! -f cad.rc -a -r ../cad.rc ] ; then ln -s ../cad.rc ; fi
$(SCH2EDIF) $(SCH2EDIF_SYSFLAGS) $(SCH2EDIF_FLAGS) $<
# Mangen Rule:
%.1:%
$(RM) $(<F)
$(RM) $(<F).nr
ln -s $<
$(MANGEN) -s $(<F)
$(MV) $(<F).nr $(<F).1
# Mangen Rule:
%.1:../%
$(RM) $(<F)
$(RM) $(<F).nr
ln -s $<
$(MANGEN) -s $(<F)
$(MV) $(<F).nr $(<F).1
# Rules for building LIBRARY with LIBSRCS
# (which are now LIBNAME, LIBOBJS)
#
ifdef WIN32
ifeq ($(LIBTYPE),SHARED)
# A WIN32 dll has tree parts:
# x.dll: the real dll (DLLNAME)
# x.lib: what you link to progs that use the dll (LIBNAME)
# x.exp: what you need to build the dll (in no variable)
#
# the latter two are created automatically when building the dll:
$(LIBNAME): $(DLLNAME)
# test if there is a def file for this dll:
#
DLL_DEF_FILE := ../$(LIBRARY).def
ifeq ($(DLL_DEF_FILE), $(wildcard $(DLL_DEF_FILE)))
DLL_DEF := -def:$(DLL_DEF_FILE)
endif
# 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 $@, -D_WINDLL, $(findstring $@,$(LIBOBJS)))
$(DLLNAME): $(LIBOBJS)
link $(WIN32_DLLFLAGS)\
-implib:$(LIBNAME) -out:$(DLLNAME) $(DLL_DEF)\
$(DLL_DEP_LIBS) $(ARCH_DEP_LDLIBS) $(HOST_LDLIBS) $(LIBOBJS)
else
# still on WIN32, this time no DLL but plain lib requested:
$(LIBNAME): $(LIBOBJS)
lib -nologo -verbose -out:$(LIBNAME) $(LIBOBJS)
lib -nologo -list $(LIBNAME)
endif # LIBTYPE is SHARED ?
else # not WIN32
# usual Unix rule for lib creation
$(LIBNAME): $(LIBOBJS)
$(RM) $@
$(ARCMD) $@ $(LIBOBJS)
@if [ ! -z "$(RANLIB)" ] ; then\
echo $(RANLIB) $@; \
$(RANLIB) $@; \
fi
endif # ifdef WIN32
# end of library creation rules
$(INSTALL_BIN)/%: ../os/$(ARCH_CLASS)/%
@echo "Installing os-specific script $@"
@$(INSTALL_PRODUCT) -m 555 $< $(INSTALL_BIN)
$(INSTALL_BIN)/%: %
@echo "Installing binary $@"
@$(INSTALL_PRODUCT) -m 555 $< $(INSTALL_BIN)
$(INSTALL_BIN)/%: ../%
@echo "Installing script $@"
@$(INSTALL_PRODUCT) -m 555 $< $(INSTALL_BIN)
$(INSTALL_LIB)/%.a: %.a
@echo "Installing library $@"
@$(INSTALL) -m 644 $< $(INSTALL_LIB)
@if [ ! -z "$(RANLIB)" ] ; then\
$(RANLIB) $(RANLIBFLAGS) $@; \
fi
$(INSTALL_LIB)/%.lib: %.lib
@echo "Installing library $@"
@$(INSTALL) -m 644 $< $(INSTALL_LIB)
$(INSTALL_CONFIG)/%: %
@echo "Installing config file $@"
@$(INSTALL) -m 644 $< $(INSTALL_CONFIG)
$(INSTALL_CONFIG)/%: ../%
@echo "Installing config file $@"
@$(INSTALL) -m 644 $< $(INSTALL_CONFIG)
$(addsuffix /%,$(MAN_DIRECTORY_TARGETS)) : %
@echo "Installing man file $@"
@$(INSTALL) -m 644 $< $(@D)
$(addsuffix /%,$(MAN_DIRECTORY_TARGETS)) : ../%
@echo "Installing man file $@"
@$(INSTALL) -m 644 $< $(@D)
$(INSTALL_INCLUDE)/%: %
@echo "Installing include file $@"
@$(INSTALL) -m 644 $< $(@D)
$(INSTALL_INCLUDE)/%: ../%
@echo "Installing include file $@"
@$(INSTALL) -m 644 $< $(@D)
$(INSTALL_DOC)/%: %
@echo "Installing doc $@"
@$(INSTALL) -m 644 $< $(INSTALL_DOC)
$(INSTALL_DOC)/%: ../%
@echo "Installing doc $@"
@$(INSTALL) -m 644 $< $(INSTALL_DOC)
$(INSTALL_TEMPLATES)/$(TEMPLATES_DIR)/%: ../%
@echo "Installing $@"
@$(INSTALL) -m 644 $< $(INSTALL_TEMPLATES)/$(TEMPLATES_DIR)
$(INSTALL_TEMPLATES)/$(TEMPLATES_DIR)/%: %
@echo "Installing $@"
@$(INSTALL) -m 644 $< $(INSTALL_TEMPLATES)/$(TEMPLATES_DIR)
.PRECIOUS: %.o %.c
-include .DEPENDS
.PHONY:: all inc depends build install clean rebuild buildInstall
# EOF RULES.Host

227
config/RULES.Unix Normal file
View File

@@ -0,0 +1,227 @@
# $Id$
INSTALL_PROD = $(PROD:%= $(INSTALL_BIN)/%)
INSTALL_LIBS = $(LIBNAME:%= $(INSTALL_LIB)/%)
INSTALL_INC = $(INC:%= $(INSTALL_INCLUDE)/%)
INSTALL_OSINCLUDE = $(INSTALL_INCLUDE)/os/$(T_A)
INSTALL_OSINC = $(OSINC:%= $(INSTALL_OSINCLUDE)/%)
MANLIST = 1 2 3 4 5 6 7 8 9
INSTALL_MANS = $(foreach n, \
$(MANLIST),$(INSTALL_MAN)/man$(n) $(MAN$(n):%= $(INSTALL_MAN)/man$(n)/%))
INSTALL_DOCS = $(DOCS:%= $(INSTALL_DOC)/%)
INSTALL_SCRIPTS = $(SCRIPTS:%= $(INSTALL_BIN)/%)
INSTALL_TEMPLATES_SUBDIR = $(INSTALL_TEMPLATES)/$(TEMPLATES_DIR)
INSTALL_TEMPLATE = $(TEMPLATES:%= $(INSTALL_TEMPLATES_SUBDIR)/%)
INSTALL_CONFIGS = $(CONFIGS:%= $(INSTALL_CONFIG)/%)
MAN_DIRECTORY_TARGETS = $(foreach n, $(MANLIST),$(INSTALL_MAN)/man$(n))
DIRECTORY_TARGETS = $(INSTALL_INCLUDE) $(INSTALL_INCLUDE)/os \
$(INSTALL_OSINCLUDE) $(INSTALL_DOC) \
$(INSTALL_TEMPLATES)/$(TEMPLATES_DIR) $(INSTALL_TEMPLATES) \
$(INSTALL_LOCATION_BIN) $(INSTALL_BIN) $(INSTALL_LIB) \
$(INSTALL_LOCATION_LIB) $(INSTALL_CONFIG) \
$(MAN_DIRECTORY_TARGETS) $(INSTALL_MAN)
all:: install
pre_build::
rebuild:: clean install
build:: pre_build $(LIBNAME) $(TARGETS) $(PROD)
inc:: $(INSTALL_INCLUDE) $(INSTALL_INC) $(INSTALL_INCLUDE)/os \
$(INSTALL_OSINCLUDE) $(INSTALL_OSINC)
install:: inc buildInstall
buildInstall :: build \
$(INSTALL_LOCATION_LIB) $(INSTALL_LIB) $(INSTALL_LIBS) \
$(TARGETS) \
$(INSTALL_LOCATION_BIN) $(INSTALL_BIN) \
$(INSTALL_SCRIPTS) $(INSTALL_PROD) \
$(INSTALL_MAN) $(INSTALL_MANS) \
$(INSTALL_DOC) $(INSTALL_DOCS) $(INSTALL_TEMPLATES) \
$(INSTALL_TEMPLATES)/$(TEMPLATES_DIR) $(INSTALL_TEMPLATE) \
$(INSTALL_CONFIG) $(INSTALL_CONFIGS)
depends:: $(SRCS.c) $(SRCS.cc)
ifdef SRCS
echo you have a SRCS in your Makefile
exit 2
endif
ifdef SRCS.c
$(DEPENDS_RULE.c)
endif
ifdef SRCS.cc
$(DEPENDS_RULE.cc)
endif
clean::
@echo "Cleaning"
@$(RM) *.i *.o *.a $(TARGETS) $(PROD) $(LIBNAME) $(INC)
$(DIRECTORY_TARGETS) :
@$(MKDIR) $@
$(TARGETS) $(PROD): $(DEPLIBS)
# The order of the following dependencies is
# VERY IMPORTANT !!!!
%: %.o
$(RM) $@
$(LINK.c) -o $@ $< $(LDLIBS)
#$(PROD): $(OBJS)
# $(RM) $@
# $(LINK.c) -o $@ ${OBJS} $(LDLIBS)
%.o: %.c
$(RM) $@
$(COMPILE.c) $<
%.o: ../%.c
$(RM) $@
$(COMPILE.c) $<
%.o: %.cc
$(RM) $@
$(COMPILE.cc) $<
%.o: ../%.cc
$(RM) $@
$(COMPILE.cc) $<
%.c: ../%.y
$(RM) y.tab.c y.tab.h
$(YACC) $(YACCOPT) $<
@if [ -f y.tab.c ]; \
then \
echo "$(MV) y.tab.c $*.c"; \
$(MV) y.tab.c $*.c; \
fi
@if [ -f y.tab.h ]; \
then \
echo "$(MV) y.tab.h $*.h"; \
$(MV) y.tab.h $*.h; \
fi
%.c: ../%.l
$(RM) lex.yy.c
$(LEX) $(LEXOPT) $<
$(RM) $@
$(MV) lex.yy.c $@
#state notation language rule
%.c: ../%.st
@echo "preprocessing $*.st"
@$(RM) $*.i
$(CPP) $(CPPFLAGS) $< $*.i
@echo "converting $*.i"
@$(RM) $@
$(SNC) $(TARGET_SNCFLAGS) $(SNCFLAGS) $*.i
%.c: %.stt
@echo "converting $<
@$(RM) $@
$(SNC) $(TARGET_SNCFLAGS) $(SNCFLAGS) $<
# Capfast Rules:
%.db: %.edf
$(E2DB) $(E2SR_SYSFLAGS) $(E2SR_FLAGS) $<
%.db: ../%.edf
$(E2DB) $(E2SR_SYSFLAGS) $(E2SR_FLAGS) $<
%.edf: ../%.sch $(DEPSCHS)
@if [ ! -f cad.rc -a -r ../cad.rc ] ; then ln -s ../cad.rc ; fi
$(SCH2EDIF) $(SCH2EDIF_SYSFLAGS) $(SCH2EDIF_FLAGS) $<
# Mangen Rule:
%.1:%
$(RM) $(<F)
$(RM) $(<F).nr
ln -s $<
$(MANGEN) -s $(<F)
$(MV) $(<F).nr $(<F).1
# Mangen Rule:
%.1:../%
$(RM) $(<F)
$(RM) $(<F).nr
ln -s $<
$(MANGEN) -s $(<F)
$(MV) $(<F).nr $(<F).1
$(LIBNAME): $(LIBOBJS)
@echo Building library $@
$(RM) $@
$(ARCMD) $@ $(LIBOBJS)
@if [ ! -z "$(RANLIB)" ] ; then\
echo $(RANLIB) $@; \
$(RANLIB) $@; \
fi
$(INSTALL_BIN)/%: %
@echo "Installing Binary $@"
@$(INSTALL_PRODUCT) -m 555 $< $(INSTALL_BIN)
$(INSTALL_BIN)/%: ../%
@echo "Installing Binary $@"
@$(INSTALL_PRODUCT) -m 555 $< $(INSTALL_BIN)
$(INSTALL_LIB)/%.a: %.a
@echo "Installing library $@"
@$(INSTALL) -m 644 $< $(INSTALL_LIB)
@if [ ! -z "$(RANLIB)" ] ; then\
$(RANLIB) $(RANLIBFLAGS) $@; \
fi
$(INSTALL_CONFIG)/%: %
@echo "Installing Config File $@"
@$(INSTALL) -m 644 $< $(INSTALL_CONFIG)
$(INSTALL_CONFIG)/%: ../%
@echo "Installing Config File $@"
@$(INSTALL) -m 644 $< $(INSTALL_CONFIG)
$(addsuffix /%,$(MAN_DIRECTORY_TARGETS)) : %
@echo "Installing man file $@"
@$(INSTALL) -m 644 $< $(@D)
$(addsuffix /%,$(MAN_DIRECTORY_TARGETS)) : ../%
@echo "Installing man file $@"
@$(INSTALL) -m 644 $< $(@D)
$(INSTALL_INCLUDE)/%: %
@echo "Installing Include File $@"
@$(INSTALL) -m 644 $< $(@D)
$(INSTALL_INCLUDE)/%: ../%
@echo "Installing Include File $@"
@$(INSTALL) -m 644 $< $(@D)
$(INSTALL_DOC)/%: %
@echo "Installing doc $@"
@$(INSTALL) -m 644 $< $(INSTALL_DOC)
$(INSTALL_DOC)/%: ../%
@echo "Installing doc $@"
@$(INSTALL) -m 644 $< $(INSTALL_DOC)
$(INSTALL_TEMPLATES)/$(TEMPLATES_DIR)/%: ../%
@echo "Installing template $@"
@$(INSTALL) -d -m 644 $< $(INSTALL_TEMPLATES)/$(TEMPLATES_DIR)
$(INSTALL_TEMPLATES)/$(TEMPLATES_DIR)/%: %
@echo "Installing template $@"
@$(INSTALL) -d -m 644 $< $(INSTALL_TEMPLATES)/$(TEMPLATES_DIR)
.PRECIOUS: %.o %.c
.PHONY:: all inc depends build install pre-build clean rebuild
-include .DEPENDS

266
config/RULES.Vx Normal file
View File

@@ -0,0 +1,266 @@
# $Id$
INCREC +=$(RECTYPES) $(MENUS)
INSTALL_PROD = $(PROD:%= $(INSTALL_BIN)/%)
INSTALL_LIBS = $(LIBNAME:%= $(INSTALL_BIN)/%)
INSTALL_LIBS_CXX = $(LIBNAME_CXX:%= $(INSTALL_BIN)/%)
INSTALL_INC = $(INC:%= $(INSTALL_INCLUDE)/%)
INSTALL_OSINCLUDE = $(INSTALL_INCLUDE)/os/vxWorks
INSTALL_OSINC = $(OSINC:%= $(INSTALL_OSINCLUDE)/%)
INSTALL_INCREC = $(INCREC:%= $(INSTALL_INCLUDE)/%)
MANLIST = 1 2 3 4 5 6 7 8 9
INSTALL_MANS = $(foreach n, \
$(MANLIST),$(INSTALL_MAN)/man$(n) $(MAN$(n):%= $(INSTALL_MAN)/man$(n)/%))
INSTALL_DOCS = $(DOCS:%= $(INSTALL_DOC)/%)
INSTALL_SCRIPTS = $(SCRIPTS:%= $(INSTALL_BIN)/%)
INSTALL_INSTALLS = $(INSTALLS:%= $(INSTALL_BIN)/%)
INSTALL_BPTS = $(BPTS:%= $(INSTALL_DBD)/%)
INSTALL_DBS = $(DBDINSTALL:%= $(INSTALL_DBD)/%)\
$(RECTYPES:%.h= $(INSTALL_DBD)/%.dbd)\
$(MENUS:%.h= $(INSTALL_DBD)/%.dbd)
INSTALL_DBDNAME = $(DBDNAME:%= $(INSTALL_DBD)/%)
MAN_DIRECTORY_TARGETS = $(foreach n, $(MANLIST),$(INSTALL_MAN)/man$(n))
DIRECTORY_TARGETS = $(INSTALL_INCLUDE) $(INSTALL_DOC) $(INSTALL_DBD) \
$(INSTALL_OSINCLUDE) $(INSTALL_INCLUDE)/os \
$(INSTALL_LOCATION_BIN) $(INSTALL_BIN) \
$(MAN_DIRECTORY_TARGETS) $(INSTALL_MAN)
all:: install
rebuild:: clean install
pre_build::
build:: pre_build $(MENUS) $(RECTYPES) $(BPTS)\
$(LIBNAME) $(LIBNAME_CXX) $(TARGETS) $(PROD) $(DBDNAME)
inc:: $(INSTALL_INCLUDE) $(INSTALL_INC) $(INSTALL_INCLUDE)/os \
$(INSTALL_OSINCLUDE) $(INSTALL_OSINC)
install:: inc buildInstall
buildInstall :: build $(INSTALL_INCREC)\
$(INSTALL_LOCATION_BIN) \
$(INSTALL_BIN) $(INSTALL_LIBS) $(INSTALL_LIBS_CXX) \
$(TARGETS) $(INSTALL_PROD) \
$(INSTALL_MAN) $(INSTALL_MANS)\
$(INSTALL_DOC) $(INSTALL_DOCS) \
$(INSTALL_SCRIPTS) $(INSTALL_INSTALLS)\
$(INSTALL_DBD) $(INSTALL_DBS) $(INSTALL_BPTS) \
$(INSTALL_DBDNAME)
ifdef BIN_INSTALLS
buildInstall :: binInstalls
endif
depends:: $(SRCS.c) $(SRCS.cc)
ifdef SRCS
echo you have a SRCS in your Makefile
exit 2
endif
ifdef SRCS.c
$(DEPENDS_RULE.c)
endif
ifdef SRCS.cc
$(DEPENDS_RULE.cc)
endif
clean::
@echo "Cleaning"
@$(RM) *.i *.o *.a $(TARGETS) $(PROD) $(LIBNAME) $(INC) \
$(DBDINSTALL) $(MENUS) $(RECTYPES) $(BPTS) $(DBDNAME)
$(DIRECTORY_TARGETS) :
@$(MKDIR) $@
# The order of the following dependencies is
# VERY IMPORTANT !!!!
%: %.o
$(RM) $@
$(LINK.c) $@ $< $(LDLIBS)
#$(PROD): $(OBJS)
# $(RM) $@
# $(LINK.c) $@ $(OBJS)
%.o: %.c
$(RM) $@
$(COMPILE.c) $<
%.o: ../%.c
$(RM) $@
$(COMPILE.c) $<
%.o: %.cc
$(RM) $@
$(COMPILE.cc) $<
%.o: ../%.cc
$(RM) $@
$(COMPILE.cc) $<
%.c: ../%.y
$(RM) y.tab.c y.tab.h
$(YACC) $(YACCOPT) $<
@if [ -f y.tab.c ]; \
then \
echo "$(MV) y.tab.c $*.c"; \
$(MV) y.tab.c $*.c; \
fi
@if [ -f y.tab.h ]; \
then \
echo "$(MV) y.tab.h $*.h"; \
$(MV) y.tab.h $*.h; \
fi
%.c: ../%.l
$(RM) lex.yy.c
$(LEX) $(LEXOPT) $<
$(RM) $@
$(MV) lex.yy.c $@
#state notation language rules
%.c: ../%.st
@echo "preprocessing $*.st"
@$(RM) $*.i
$(CPP) $(CPPFLAGS) $< $*.i
@echo "converting $*.i"
@$(RM) $@
$(SNC) $(TARGET_SNCFLAGS) $(SNCFLAGS) $*.i
%.c: %.stt
@echo "converting $<
@$(RM) $@
$(SNC) $(TARGET_SNCFLAGS) $(SNCFLAGS) $<
# Capfast Rules:
%.db: %.edf
$(E2DB) $(E2SR_SYSFLAGS) $(E2SR_FLAGS) $<
%.db: ../%.edf
$(E2DB) $(E2SR_SYSFLAGS) $(E2SR_FLAGS) $<
%.edf: ../%.sch $(DEPSCHS)
@if [ ! -f cad.rc -a -r ../cad.rc ] ; then ln -s ../cad.rc ; fi
$(SCH2EDIF) $(SCH2EDIF_SYSFLAGS) $(SCH2EDIF_FLAGS) $<
# Mangen Rule:
%.1:%
$(RM) $(<F)
$(RM) $(<F).nr
ln -s $<
$(MANGEN) -s $(<F)
$(MV) $(<F).nr $(<F).1
binInstalls: $(BIN_INSTALLS)
$(INSTALL) -m 555 $^ $(INSTALL_BIN)
$(INSTALL_DBD)/%: %
@echo "Installing $@"
@$(INSTALL) -m 644 $< $(INSTALL_DBD)
$(INSTALL_DBD)/%: ../%
@echo "Installing $@"
@$(INSTALL) -m 644 $< $(INSTALL_DBD)
%Record.h: %Record.dbd
$(RM) $@
$(EPICS_BASE)/bin/$(HOST_ARCH)/dbToRecordtypeH \
$(USER_DBDFLAGS) $<
%Record.h: ../%Record.dbd
$(RM) $@
$(EPICS_BASE)/bin/$(HOST_ARCH)/dbToRecordtypeH \
$(USER_DBDFLAGS) $<
menu%.h: menu%.dbd
$(RM) $@
$(EPICS_BASE)/bin/$(HOST_ARCH)/dbToMenuH $<
menu%.h: ../menu%.dbd
$(RM) $@
$(EPICS_BASE)/bin/$(HOST_ARCH)/dbToMenuH $<
bpt%.dbd: bpt%.data
$(RM) $@
$(EPICS_BASE)/bin/$(HOST_ARCH)/makeBpt $<
bpt%.dbd: ../bpt%.data
$(RM) $@
$(EPICS_BASE)/bin/$(HOST_ARCH)/makeBpt $<
$(DBDNAME): ../$(DBDEXPAND)
@echo expanding dbd
@$(RM) $@
$(EPICS_BASE)/bin/$(HOST_ARCH)/dbExpand\
$(USER_DBDFLAGS) $< > $@
$(LIBNAME): $(LIBOBJS)
@echo Building library $@
@$(RM) $@
$(LINK.c) $@ $(LIBOBJS) $(LDLIBS)
$(LIBNAME_CXX): $(LIBOBJS_CXX)
@echo Building CXX library $@
@$(RM) $@
$(LINK.cc) $@ $(LIBOBJS_CXX) $(CXXLDLIBS)
$(INSTALL_BIN)/%: %
@echo "Installing $@"
@$(INSTALL) -m 555 $< $(INSTALL_BIN)
$(INSTALL_BIN)/%: ../%
@echo "Installing $@"
@$(INSTALL) -m 555 $< $(INSTALL_BIN)
#
# avoid confusing circular dependency message when
# INSTALL_BIN and EPICS_BASE_BIN are the same (in base)
#
ifneq ($(INSTALL_BIN),$(EPICS_BASE_BIN))
$(INSTALL_BIN)/%: $(EPICS_BASE_BIN)/%
@echo "Installing $@"
@$(INSTALL) -m 555 $< $(INSTALL_BIN)
endif
$(addsuffix /%,$(MAN_DIRECTORY_TARGETS)) : %
@echo "Installing $@"
@$(INSTALL) -m 644 $< $(@D)
$(addsuffix /%,$(MAN_DIRECTORY_TARGETS)) : ../%
@echo "Installing $@"
@$(INSTALL) -m 644 $< $(@D)
$(INSTALL_INCLUDE)/%: %
@echo "Installing $@"
@$(INSTALL) -m 644 $< $(@D)
$(INSTALL_INCLUDE)/%: ../%
@echo "Installing $@"
@$(INSTALL) -m 644 $< $(@D)
$(INSTALL_DOC)/%: %
@echo "Installing $@"
@$(INSTALL) -m 644 $< $(INSTALL_DOC)
$(INSTALL_DOC)/%: ../%
@echo "Installing $@"
@$(INSTALL) -m 644 $< $(INSTALL_DOC)
.PRECIOUS: %.o %.c
.PHONY:: all inc depends build install pre_build clean rebuild buildInstall binInstalls
-include .DEPENDS
ifneq (,$(wildcard ../baseLIBOBJS))
$(LIBNAME): ../baseLIBOBJS
endif
$(LIBNAME): ../Makefile.Vx
$(DBDNAME): ../base.dbd $(RECTYPES:%.h=../%.dbd)

56
config/RULES.ioc Normal file
View File

@@ -0,0 +1,56 @@
#RULES.ioc
ifndef WIN32
APPDIR := $(shell grep '.*".*App/' st.* | sed -e 's/.*"\(.*App\).*/\1/' | sort -u )
endif
ASCF = $(TOP)/../ascf
TARGETBIN = $(TOP)/bin/$(ARCH)
ARCHS = $(BUILD_ARCHS) host cross
ACTIONS += clean inc depends buildInstall build
actionArchTargets = $(foreach action, $(ACTIONS) install,\
$(foreach arch, $(ARCHS), \
$(action)$(DIVIDER)$(arch)))
all install :: inc buildInstall
buildInstall: makelinks
inc build depends:
makelinks:
ifndef WIN32
@$(RM) ascf bin vxWorks vxWorks.sym dbd share $(APPDIR)
ln -s $(ASCF) ascf
ln -s $(TARGETBIN) bin
ln -s $(TARGETBIN)/vxWorks vxWorks
ln -s $(TARGETBIN)/vxWorks.sym vxWorks.sym
ln -s $(TOP)/dbd dbd
ln -s $(SHARE) share
@for dir in $(APPDIR) scum ; do \
if [ $$dir = scum ]; then \
: ; \
elif [ -d $(TOP)/$$dir ]; then \
ln -s $(TOP)/$$dir $$dir ; \
echo "ln -s $(TOP)/$$dir $$dir" ; \
elif [ -d $(MASTER_IOCAPPS)/$$dir ]; then \
ln -s $(MASTER_IOCAPPS)/$$dir $$dir ; \
echo "ln -s $(MASTER_IOCAPPS)/$$dir $$dir" ; \
else \
echo "$$dir not found" ; \
fi ; \
done
endif
clean::
@$(RM) ascf bin vxWorks vxWorks.sym dbd share $(APPDIR)
$(actionArchTargets) :%:
$(MAKE) $(word 1, $(subst $(DIVIDER), ,$@))
$(ARCHS):%: install
.PHONY :: $(ARCHS) $(ACTIONS)
.PHONY :: $(actionArchTargets)

90
config/RULES_ARCHS Normal file
View File

@@ -0,0 +1,90 @@
#
# $Id$
#
# EPICS RULES_ARCH
# by Matthew Needes and Mike Bordua and Janet Andersoni and Jeff Hill
#
all:: install
ACTIONS += inc
ACTIONS += build
ACTIONS += install
ACTIONS += buildInstall
ACTIONS += depends
ACTIONS += rebuild
actionPart = $(word 1, $(subst $(DIVIDER), ,$@))
archPart = $(word 2, $(subst $(DIVIDER), ,$@))
#
# hostActionArchTargets
#
hostArchs = $(HOST_ARCH)
hostActionArchTargets = $(foreach x, $(ACTIONS),\
$(foreach arch,$(hostArchs), $(x)$(DIVIDER)$(arch)))
ifeq (Makefile.$(BUILD_TYPE), $(wildcard Makefile.$(BUILD_TYPE)))
hostDirs = $(addprefix O.,$(hostArchs))
$(hostActionArchTargets) : $(hostDirs)
$(MAKE) -C O.$(archPart) -f ../Makefile.$(BUILD_TYPE) T_A=$(archPart) $(actionPart)
$(hostArchs) : % : O.%
$(MAKE) -C O.$@ -f ../Makefile.$(BUILD_TYPE) T_A=$@
else
$(hostActionArchTargets) :
$(hostArchs) :
endif
#
# crossActionArchTargets
#
crossArchs = $(filter-out $(hostArchs),$(BUILD_ARCHS))
crossActionArchTargets = $(foreach x, $(ACTIONS), \
$(foreach arch, $(CROSS_COMPILER_TARGET_ARCHS), $(x)$(DIVIDER)$(arch)))
ifeq (Makefile.Vx, $(wildcard Makefile.Vx))
crossDirs = $(addprefix O.,$(crossArchs))
$(crossActionArchTargets) : $(crossDirs)
$(MAKE) -C O.$(archPart) -f ../Makefile.Vx T_A=$(archPart) $(actionPart)
$(crossArchs) : % : O.%
$(MAKE) -C O.$@ -f ../Makefile.Vx T_A=$@
else
$(crossActionArchTargets) :
$(crossArchs) :
endif
$(hostDirs) :
$(PERL) $(EPICS_BASE)/config/makeMakefile.pl $@ $(BUILD_TYPE)
$(crossDirs) :
$(PERL) $(EPICS_BASE)/config/makeMakefile.pl $@ Vx
#
# host/cross action targets
#
$(ACTIONS) : % : %$(DIVIDER)host %$(DIVIDER)cross
HostActionTargets = $(foreach x, $(ACTIONS) clean, $(x)$(DIVIDER)host)
CrossActionTargets = $(foreach x, $(ACTIONS) clean, $(x)$(DIVIDER)cross)
$(HostActionTargets) : %$(DIVIDER)host : $(addprefix %$(DIVIDER), $(hostArchs))
$(CrossActionTargets) : %$(DIVIDER)cross : $(addprefix %$(DIVIDER), $(crossArchs))
#
# arch targets
#
host : $(hostArchs)
cross : $(crossArchs)
#
# special clean rule
#
clean :
$(RMDIR) $(hostDirs) $(crossDirs)
clean$(DIVIDER)% :
$(RMDIR) O.$*
.PHONY :: $(HostActionTargets)
.PHONY :: $(CrossActionTargets)
.PHONY :: $(crossActionArchTargets)
.PHONY :: $(hostActionArchTargets)
.PHONY :: $(hostArchs) $(crossArchs)
.PHONY :: $(ACTIONS) clean all host cross

46
config/RULES_DIRS Normal file
View File

@@ -0,0 +1,46 @@
#
# $Id$
#
ARCHS += $(BUILD_ARCHS) host cross
ACTIONS += clean inc depends buildInstall
dirPart = $(word 1, $(subst $(DIVIDER), ,$@))
actionArchPart = $(subst $(dirPart)$(DIVIDER), ,$@)
dirActionArchTargets = $(foreach dir, $(DIRS), \
$(foreach action, $(ACTIONS) install,\
$(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,\
$(dir)$(DIVIDER)$(action)))
actionArchTargets = $(foreach action, $(ACTIONS) install,\
$(foreach arch, $(ARCHS), \
$(action)$(DIVIDER)$(arch)))
all install :: inc buildInstall
rebuild:: clean all
$(DIRS) $(dirActionTargets) $(dirArchTargets)$(dirActionArchTargets) ::
$(MAKE) -C $(dirPart) $(actionArchPart)
$(ARCHS) $(installArchTargets) :%: \
$(foreach dir, $(DIRS), $(dir)$(DIVIDER)inc) \
$(foreach dir, $(DIRS), $(dir)$(DIVIDER)%)
$(ACTIONS) $(actionArchTargets) :%: \
$(foreach dir, $(DIRS), $(dir)$(DIVIDER)%)
.PHONY :: $(DIRS) all install rebuild
.PHONY :: $(ARCHS) $(ACTIONS)
.PHONY :: $(dirActionTargets) $(dirArchTargets)
.PHONY :: $(dirActionArchTargets)
.PHONY :: $(actionArchTargets)

51
config/RULES_TOP Normal file
View File

@@ -0,0 +1,51 @@
#
# $Id$
#
include $(TOP)/config/RULES_DIRS
uninstall$(DIVIDER)%::
@$(RMDIR) $(INSTALL_LOCATION_BIN)/$* $(INSTALL_LOCATION_LIB)/$* \
$(INSTALL_LOCATION)/dbd $(INSTALL_MAN) $(INSTALL_INCLUDE) \
$(INSTALL_DOC) $(INSTALL_DBD) $(INSTALL_TEMPLATES)
@$(RMDIR) rec.bak rec
uninstall:: $(addprefix uninstall$(DIVIDER),$(BUILD_ARCHS))
tar:
@DIRNAME=$(notdir $(shell pwd)); \
echo "TOP: Creating $$DIRNAME.Tar file..."; \
ls Makefile* | xargs tar vcf $$DIRNAME.Tar; \
if [ -f .current_rel_hist ]; then \
ls .current_rel_hist | xargs tar vrf $$DIRNAME.Tar ; \
fi ;\
if [ -f EPICS_BASE ]; then \
ls EPICS_BASE | xargs tar vrf $$DIRNAME.Tar ; \
fi ;\
for DIR in ${DIRS}; do \
find $${DIR} -name CVS -prune -o ! -type d -print \
| grep -v "/O\..*$$" | xargs tar vrf $$DIRNAME.Tar; \
done
help:
@echo "Usage: gnumake [options] [target] ..."
@echo "Targets supported by all Makefiles:"
@echo " install - Installs executables in bin/<arch> (default rule)"
@echo " build - Builds objects, using libraries from "build_libs"
@echo " clean - Cleans objects. Clean removes the" O.<arch> dirs
@echo " in all except the O.<arch> level Makefile"
@echo " depends - Generates include dependencies"
@echo "\"Partial\" build targets supported by Makefiles:"
@echo " install.<arch> - Builds and installs <arch> only.
@echo " clean.<arch> - Cleans <arch> binaries in O.<arch> dirs only."
@echo " build.<arch> - Builds <arch> only.
@echo " depends.<arch> - Generates <arch> dependencies only.
@echo "Targets supported by top level Makefile:"
@echo " uninstall - Cleans directories created by the install."
@echo " tar - Create tar file "
@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))

185
config/Sample.Makefile.Host Normal file
View File

@@ -0,0 +1,185 @@
# Makefile.Host for base/src/sample
#
#
# Sample Makefile.Host showing all possible entries
# that are allowed using RULES.Host.
#
# 8-01-96 -kuk-
#
#
TOP = ../../..
include $(TOP)/config/CONFIG_BASE
CMPLR = STRICT
# Add-on CFLAGS that are needed in this subproject.
# (If possible, all system specific flags should be
# defined in CONFIG.$(ARCH_CLASS))
#
# Whenever possible, ONLY USR_CFLAGS should be
# used. If you need special flags for your system,
# try to put them in CONFIG.YourSystem!
#
# This is used on all systems:
USR_CFLAGS := -DVAR=value -Ddefine_for_all_systems
# This is added to the above, but only for ARCH_CLASS=BSD:
USR_CFLAGS_BSD := -DVERSION='Berkeley enhanced'
# ..only for WIN32:
USR_CFLAGS_WIN32 := -DVERSION='WIN32 port'
#
# -nil- is special:
# if USR_CFLAGS_SYSV was undefined or empty, .._DEFAULT would have
# been used.
# To indicate
# "yes, there is a special USR_CFLAGS for SYSV, but it's empty"
# you have to set it to -nil-:
USR_CFLAGS_SYSV := -nil-
# .. for all other arch classes:
USR_CFLAGS_DEFAULT := -DVERSION='generic Unix'
# CFLAGS that are only used to compile a_file.c or a_file.cc:
#
a_file_CFLAGS := -DIN_A_FILE
# ---------------------------------------------------------
# general rule for all .c .cc .h .hh files and scripts:
#
# In here you supply just the filename without '../' etc.
# While building in an O.xxx subdir, the
# sources are extracted from either the
# '..'
# dir or - if it exists - the dir
# '../$(ARCH_CLASS)'
# is preferred.
# ---------------------------------------------------------
# includes to install from this sub-project
#
# again: if INC_$(ARCH_CLASS) is defined, it is added to INC,
# otherwise INC_DEFAULT (if defined) is added:
#
INC_DEFAULT := for_all_but_WIN32_or_hp700.h
INC_WIN32 := only_for_WIN32.h
INC_hp700 := -nil- # hp700 uses no special include
INC := file.h
# --------------------------------------------------------------------
# defining a library
# --------------------------------------------------------------------
#
# Contents of a library are specified via LIBSRCS.
# From this the platform specific object names (.o, .obj, ...)
# are derived automatically.
#
# Platform specific objects:
# use LIBOBJS_$(ARCH_CLASS) or .._DEFAULT
#
# Platform specific files can also be put in
# separate os/ARCH_CLASS directories!
#
# For almost every file the seach order is:
# ./os/ARCH_CLASS
# ./os/generic
# .
# So usually only LIBSRCS should be sufficient!
#
LIBSRCS := file_for_lib.c another_file.cc
LIBSRCS_DEFAULT := posix.c
LIBSRCS_WIN32 := win32_special.c
LIBSRCS_BSD := -nil-
# Type of library to build.
# On WIN32, SHARED results in a DLL, others may ignore this.
LIBTYPE:=SHARED
# Ugly but necessary for WIN32:
# If LIBRARY is build as a dll, it may need other libraries
# to link with that you specify here.
# (because a dll is similar to a program:
# all references have to be resolved)
#
# If there is a file ../$(LIBRARY).def, it will
# be used as the dll-def-file on WIN32
#
# We need this flag because
# 1) you may not use a def file ('proper' code needs no def files)
# 2) you may have one and still not want a DLL (for testing etc.)
#
DLL_LIBS:=some_dll
# Library to build:
# lib$(LIBRARY).a or ..dll/..exp/..lib
#
# Currently you can build only one (1) lib per Makefile.Host!
#
LIBRARY:=libname
# --------------------------------------------------------------------
# defining products (executable programs)
# --------------------------------------------------------------------
#
# if SRCS is undefined, it defaults to $(PROD).c
SRCS=a.c b.c c.c
# libs needed to link PROD and TESTPROD
#
# for all systems:
PROD_LIBS := Com Ca
# for most systems:
PROD_LIBS_DEFAULT := mathlib
PROD_LIBS_WIN32 := -nil-
# Product,
# may be caRepeater.o -> caRepeater
# or caRepeater.obj -> caRepeater.exe
PROD := prod
PROD_DEFAULT := product_for_rest
PROD_WIN32 := product_only_for_WIN32
PROD_BSD := product_only_for_BSD
PROD_SYSV := product_only_for_SYSV
# Scripts to install
#
# If there is both ../$(SCRIPT) and ../$(ARCH_CLASS)/$(SCRIPT),
# the latter, system specific version will be installed!
#
SCRIPTS_DEFAULT := script_for_rest
SCRIPTS_WIN32 := script_only_for_WIN32
SCRIPTS_BSD := script_only_for_BSD
SCRIPTS := script
# uncomment if you want to build these locally without installing:
# TESTPROD = test
# Unfortunately the above allows you only to
# 1) build one PROD:=p from many SRCS:=a.c b.c c.c
# or
# 2) build many PROD:=a b c each from a single source (a.c, b.c, c.c)
#
# If you have several multi-source products in the same dir
# you have to fall back to explicit rules.
# (suggestions for a better syntax welcome!)
#
# The explicit rules, however, should look like the following:
# be careful if you add rules and dependencies:
# use $(MV) $(RM) $(CP) $(MKDIR) $(RMDIR) $(OBJ) $(EXE) $(LINK.c) ....
xxxxx$(OBJ): c1.c c2.c h1.h
# because the output-flag (mostly '-o $@' on Unix, '-Fe$@' on WIN32)
# is also system dependend, it's included in $(LINK.c) and $(LINK.cc) !
#
prog$(EXE): a$(OBJ) b$(OBJ)
$(LINK.c) a$(OBJ) b$(OBJ) $(LDLIBS)
clean::
$(RM) dbLex.c
include $(TOP)/config/RULES.Host
# EOF Makefile.Host

30
config/makeMakefile.pl Normal file
View File

@@ -0,0 +1,30 @@
#!/usr/local/bin/perl
#
# makeMakefile.pl
#
# called from RULES_ARCHS
#
#
# Usage: perl makeMakefile.pl O.*-dir Makefile-Type
$dir = $ARGV[0];
$type= $ARGV[1];
$makefile="$dir/Makefile";
if ($dir =~ m'O.(.+)')
{
$t_a = $1;
}
else
{
die "Cannot extract T_A from $dir";
}
mkdir ($dir, 0777) unless -d $dir;
open OUT, "> $makefile" or die "Cannot create $makefile";
print OUT "T_A=$t_a\n";
print OUT "include ../Makefile.$type\n";
close OUT;
# EOF makeMakefile.pl

View File

@@ -1,42 +1,14 @@
# $Id$
# Author: Robert Zieman (ANL)
# Date: 6/03/91
#
# 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 mm-dd-yy iii Comment
# .02 08-16-93 rcz moving most of these pre-builds back to the
# object area Imakefile and adding DependTarget($(EARLYSRC))
#
# ...
# $Id$
#
all: bld_errSym
TOP = ..
include $(TOP)/config/CONFIG_BASE
bld_errSym:
cd libCom; ../../tools/blderrSymTbl
#
# Directories to build defined in CONFIG_BASE
#
include $(TOP)/config/RULES_DIRS
clean:
/bin/rm -f libCom/errInc.o

View File

@@ -1,15 +1,7 @@
#
# $Id$
#
# Lowest Level Directroy Makefile
# by Janet Anderson
#
# $Log$
#
EPICS=../../..
TOP=../..
include $(EPICS)/config/CONFIG_BASE
include $(TOP)/config/CONFIG_BASE
include $(EPICS)/config/RULES_ARCHS
include $(TOP)/config/RULES_ARCHS

32
src/as/Makefile.Host Normal file
View File

@@ -0,0 +1,32 @@
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
LIBRARY := As
# All systems link the libs As, Com, Db (and again Com ??),
# generic Unix needs also lib m:
#
SYS_PROD_LIBS_DEFAULT := m
SYS_PROD_LIBS_WIN32 := -nil-
PROD_LIBS := As Com Db Com
PROD := ascheck
include $(TOP)/config/RULES.Host
# Extra rule since asLib_lex.c is included in asLib.c
# In my opinion, these objects should really be built
# independently.
asLib$(OBJ): asLib_lex.c ../asLibRoutines.c
clean::
@$(RM) asLib.c asLib_lex.c

View File

@@ -1,32 +0,0 @@
EPICS = ../../../..
include Target.include
include $(EPICS)/config/CONFIG_BASE
USR_CFLAGS = -D_NO_PROTO
USR_LDLIBS = -lAs -lCom -lDb -lCom -lm -s
USR_LDFLAGS = -L.
DEPLIBS_BASE = $(EPICS_BASE_LIB)
DEPLIBS = ./libAs.a\
$(DEPLIBS_BASE)/libCom.a\
$(DEPLIBS_BASE)/libDb.a
LEX = $(ELEX)
YACC = $(EYACC)
SRCS.c = ../ascheck.c asLib.c
OBJS = ascheck.o
LIBOBJS = asLib.o
LIBNAME = libAs.a
PROD = ascheck
include $(EPICS)/config/RULES.Unix
# Extra rule since asLib_lex.c is included in asLib.c
# In my opinion, these objects should really be built
# independently.
asLib.o: asLib_lex.c ../asLibRoutines.c
clean::
@$(RM) asLib.c asLib_lex.c

View File

@@ -1,6 +1,5 @@
EPICS = ../../../..
include Target.include
include $(EPICS)/config/CONFIG_BASE
TOP = ../../..
include $(TOP)/config/CONFIG_BASE
USR_CFLAGS = -DACCESS_SECURITY -D_NO_PROTO
@@ -8,7 +7,7 @@ SRCS.c = ../asDbLib.c ../asCa.c asLib.c
LIBOBJS = asDbLib.o asCa.o asLib.o
LIBNAME = asLibrary
include $(EPICS)/config/RULES.Vx
include $(TOP)/config/RULES.Vx
# Extra rule since asLib_lex.c is included in asLib.c
# In my opinion, these objects should really be built

View File

@@ -65,7 +65,6 @@ DEVELOPMENT CENTER AT ARGONNE NATIONAL LABORATORY (708-252-2000).
#include <cadef.h>
#include <caerr.h>
#include <caeventmask.h>
#include <calink.h>
#include <task_params.h>
#include <alarm.h>
@@ -128,10 +127,9 @@ LOCAL void eventCallback(struct event_handler_args eha)
ASGINP *pasginp;
CAPVT *pcapvt;
ASG *pasg;
struct dbr_sts_double *pdata = eha.dbr;
READONLY struct dbr_sts_double *pdata = eha.dbr;
int Ilocked=FALSE;
if(!caInitializing) {
FASTLOCK(&asLock);
Ilocked = TRUE;
@@ -170,9 +168,8 @@ LOCAL void asCaTask(void)
pasg->inpBad |= (1<<pasginp->inpIndex);
pcapvt = pasginp->capvt = asCalloc(1,sizeof(CAPVT));
/*Note calls connectCallback immediately called for local Pvs*/
SEVCHK(ca_build_and_connect(pasginp->inp,TYPENOTCONN,0,
&pcapvt->chid,0,connectCallback,pasginp),
"ca_build_and_connect");
SEVCHK(ca_search_and_connect(pasginp->inp,&pcapvt->chid,
connectCallback,pasginp),"ca_build_and_connect");
/*Note calls accessRightsCallback immediately called for local Pvs*/
SEVCHK(ca_replace_access_rights_event(pcapvt->chid,accessRightsCallback),
"ca_replace_access_rights_event");

View File

@@ -58,9 +58,14 @@ DEVELOPMENT CENTER AT ARGONNE NATIONAL LABORATORY (708-252-2000).
#include <stddef.h>
#include <stdio.h>
#include <string.h>
#include <dbDefs.h>
#include <taskwd.h>
#include <alarm.h>
#include <caeventmask.h>
#include <dbStaticLib.h>
#include <dbAccess.h>
#include <dbEvent.h>
#include <asLib.h>
#include <asDbLib.h>
#include <dbCommon.h>
@@ -68,7 +73,7 @@ DEVELOPMENT CENTER AT ARGONNE NATIONAL LABORATORY (708-252-2000).
#include <subRecord.h>
#include <task_params.h>
extern struct dbBase *pdbBase;
extern struct dbBase *pdbbase;
static FILE *stream;
#define BUF_SIZE 100
@@ -97,13 +102,13 @@ static int my_yyinput(char *buf, int max_size)
static long asDbAddRecords(void)
{
DBENTRY dbentry;
DBENTRY *pdbentry=&dbentry;
long status;
struct dbCommon *precord;
DBENTRY dbentry;
DBENTRY *pdbentry=&dbentry;
long status;
dbCommon *precord;
dbInitEntry(pdbBase,pdbentry);
status = dbFirstRecdes(pdbentry);
dbInitEntry(pdbbase,pdbentry);
status = dbFirstRecordType(pdbentry);
while(!status) {
status = dbFirstRecord(pdbentry);
while(!status) {
@@ -115,7 +120,7 @@ static long asDbAddRecords(void)
}
status = dbNextRecord(pdbentry);
}
status = dbNextRecdes(pdbentry);
status = dbNextRecordType(pdbentry);
}
dbFinishEntry(pdbentry);
return(0);
@@ -180,8 +185,9 @@ static long asInitCommon(void)
int asInit(void)
{
asInitCommon();
return(0);
/*If no access configuration file defined return success*/
if(!pacf) return(0);
return(asInitCommon());
}
static void wdCallback(ASDBCALLBACK *pcallback)
@@ -235,7 +241,7 @@ int asInitAsyn(ASDBCALLBACK *pcallback)
static void myCallback(CALLBACK *pcallback)
{
ASDBCALLBACK *pasdbcallback = (ASDBCALLBACK *)pcallback;
struct subRecord *precord;
subRecord *precord;
struct rset *prset;
callbackGetUser(precord,pcallback);
@@ -245,12 +251,12 @@ static void myCallback(CALLBACK *pcallback)
recGblSetSevr(precord,READ_ALARM,precord->brsv);
recGblRecordError(pasdbcallback->status,precord,"asInit Failed");
}
dbScanLock((struct dbCommon *)precord);
(*prset->process)((struct dbCommon *)precord);
dbScanUnlock((struct dbCommon *)precord);
dbScanLock((dbCommon *)precord);
(*prset->process)((dbCommon *)precord);
dbScanUnlock((dbCommon *)precord);
}
long asSubInit(struct subRecord *precord,int pass)
long asSubInit(subRecord *precord,int pass)
{
ASDBCALLBACK *pcallback;
@@ -261,7 +267,7 @@ long asSubInit(struct subRecord *precord,int pass)
return(0);
}
long asSubProcess(struct subRecord *precord)
long asSubProcess(subRecord *precord)
{
ASDBCALLBACK *pcallback = (ASDBCALLBACK *)precord->dpvt;
@@ -278,8 +284,8 @@ long asSubProcess(struct subRecord *precord)
int asDbGetAsl(void *paddress)
{
struct dbAddr *paddr = paddress;
struct fldDes *pflddes;
DBADDR *paddr = paddress;
dbFldDes *pflddes;
pflddes = paddr->pfldDes;
return((int)pflddes->as_level);
@@ -287,8 +293,8 @@ int asDbGetAsl(void *paddress)
ASMEMBERPVT asDbGetMemberPvt(void *paddress)
{
struct dbAddr *paddr = paddress;
struct dbCommon *precord;
DBADDR *paddr = paddress;
dbCommon *precord;
precord = paddr->precord;
return((ASMEMBERPVT)precord->asp);
@@ -296,20 +302,23 @@ ASMEMBERPVT asDbGetMemberPvt(void *paddress)
static void astacCallback(ASCLIENTPVT clientPvt,asClientStatus status)
{
printf("astac callback: status=%d",status);
char *recordname;
recordname = (char *)asGetClientPvt(clientPvt);
printf("astac callback %s: status=%d",recordname,status);
printf(" get %s put %s\n",(asCheckGet(clientPvt) ? "Yes" : "No"),
(asCheckPut(clientPvt) ? "Yes" : "No"));
}
int astac(char *pname,char *user,char *location)
{
struct dbAddr *paddr;
long status;
ASCLIENTPVT *pasclientpvt=NULL;
struct dbCommon *precord;
struct fldDes *pflddes;
DBADDR *paddr;
long status;
ASCLIENTPVT *pasclientpvt=NULL;
dbCommon *precord;
dbFldDes *pflddes;
paddr = dbCalloc(1,sizeof(struct dbAddr) + sizeof(ASCLIENTPVT));
paddr = dbCalloc(1,sizeof(DBADDR) + sizeof(ASCLIENTPVT));
pasclientpvt = (ASCLIENTPVT *)(paddr + 1);
status=dbNameToAddr(pname,paddr);
if(status) {
@@ -324,6 +333,7 @@ int astac(char *pname,char *user,char *location)
errMessage(status,"asAddClient error");
return(1);
} else {
asPutClientPvt(*pasclientpvt,(void *)precord->name);
asRegisterClientCallback(*pasclientpvt,astacCallback);
}
return(0);
@@ -331,7 +341,7 @@ int astac(char *pname,char *user,char *location)
static void myMemberCallback(ASMEMBERPVT memPvt)
{
struct dbCommon *precord;
dbCommon *precord;
precord = asGetMemberPvt(memPvt);
if(precord) printf(" Record:%s",precord->name);

78
src/as/asDbLib.h Normal file
View File

@@ -0,0 +1,78 @@
/* share/epicsH/dbAsLib.h */
/* $Id$ */
/* Author: Marty Kraimer Date: 02-23-94*/
/*****************************************************************
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).
*
* 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 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*/

223
src/as/asLib.h Normal file
View File

@@ -0,0 +1,223 @@
/* $Id$ */
/* Author: Marty Kraimer Date: 09-27-93*/
/*****************************************************************
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).
*
* Modification Log:
* -----------------
* .01 09-27-93 mrk Initial Implementation
*/
#ifndef INCasLibh
#define INCasLibh
#include <stddef.h>
#include <stdlib.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);
end of macros
*/
int asInit(void);
long asInitialize(ASINPUTFUNCPTR inputfunction);
/*caller must provide permanent storage for asgName*/
long asAddMember(ASMEMBERPVT *asMemberPvt,char *asgName);
long asRemoveMember(ASMEMBERPVT *asMemberPvt);
/*caller must provide permanent storage for newAsgName*/
long asChangeGroup(ASMEMBERPVT *asMemberPvt,char *newAsgName);
void *asGetMemberPvt(ASMEMBERPVT asMemberPvt);
void asPutMemberPvt(ASMEMBERPVT asMemberPvt,void *userPvt);
/*client must provide permanent storage for user and host*/
long asAddClient(ASCLIENTPVT *asClientPvt,ASMEMBERPVT asMemberPvt,
int asl,char *user,char *host);
/*client must provide permanent storage for user and host*/
long asChangeClient(ASCLIENTPVT asClientPvt,int asl,char *user,char *host);
long asRemoveClient(ASCLIENTPVT *asClientPvt);
void *asGetClientPvt(ASCLIENTPVT asClientPvt);
void asPutClientPvt(ASCLIENTPVT asClientPvt,void *userPvt);
long asRegisterClientCallback(ASCLIENTPVT asClientPvt,
ASCLIENTCALLBACK pcallback);
long asComputeAllAsg(void);
/*asComputeAsg is defined after ASG is defined*/
long asCompute(ASCLIENTPVT asClientPvt);
int asDump(void (*memcallback)(ASMEMBERPVT),void (*clientcallback)(ASCLIENTPVT),int verbose);
int asDumpUag(char *uagname);
int asDumpHag(char *hagname);
int asDumpRules(char *asgname);
int asDumpMem(char *asgname,void (*memcallback)(ASMEMBERPVT),int clients);
int 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
#ifdef vxWorks
#include <fast_lock.h>
extern FAST_LOCK asLock;
extern int asLockInit;
#endif
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;
/* function prototypes*/
void *asCalloc(size_t nobj,size_t size);
long asComputeAsg(ASG *pasg);
/*macros*/
#define asCheckGet(asClientPvt)\
(asActive ?\
((asClientPvt)->access>=asREAD ? TRUE : FALSE)\
: TRUE)
#define asCheckPut(asClientPvt)\
(asActive ?\
((asClientPvt)->access>=asWRITE ? TRUE : FALSE)\
: TRUE)
#endif /*INCasLibh*/

View File

@@ -72,10 +72,6 @@ int asActive = FALSE;
/*storage for freelist */
static void *freeListPvt = NULL;
/*Forward declarations for Non ANSI routines*/
long calcPerform(double *parg,double *presult,char *post);
long postfix(char *pinfix, char *ppostfix,short *perror);
#define RPCL_LEN 184
#define DEFAULT "DEFAULT"
@@ -123,7 +119,7 @@ long asInitialize(ASINPUTFUNCPTR inputfunction)
pasg->pavalue = asCalloc(ASMAXINP,sizeof(double));
pasg = (ASG *)ellNext((ELLNODE *)pasg);
}
gphInitPvt(&pasbase->phash);
gphInitPvt(&pasbase->phash,256);
/*Hash each uagname and each hagname*/
puag = (UAG *)ellFirst(&pasbase->uagList);
while(puag) {

View File

@@ -8,7 +8,7 @@ static ASINPUTFUNCPTR *my_yyinput;
#undef YY_INPUT
#define YY_INPUT(b,r,ms) (r=(*my_yyinput)(b,ms))
yyreset()
static int yyreset()
{
line_num=1;
BEGIN INITIAL;
@@ -66,9 +66,13 @@ INP[A-L] {/* If A-L is changed then ASMAXINP must also be changed*/
\n { line_num ++;}
. {
char message[20];
YY_BUFFER_STATE *dummy=0;
sprintf(message,"invalid character '%c'",yytext[0]);
yyerror(message);
/*The following suppresses compiler warning messages*/
if(FALSE) yyunput('c',message);
if(FALSE) yy_switch_to_buffer(*dummy);
}
%%

View File

@@ -4,15 +4,10 @@
# Base Lowest Level Directroy Makefile
# by Janet Anderson
#
# $Log$
# Revision 1.1 1994/09/07 19:26:22 jba
# New file
#
#
EPICS=../../..
TOP=../..
include $(EPICS)/config/CONFIG_BASE
include $(TOP)/config/CONFIG_BASE
include $(EPICS)/config/RULES_ARCHS
include $(TOP)/config/RULES_ARCHS

10
src/bdt/Makefile.Host Normal file
View File

@@ -0,0 +1,10 @@
TOP = ../../..
include $(TOP)/config/CONFIG_BASE
INC := bdt.h
LIBSRCS := bdt.c
LIBRARY := Bdt
include $(TOP)/config/RULES.Host

View File

@@ -1,10 +0,0 @@
EPICS = ../../../..
include Target.include
include $(EPICS)/config/CONFIG_BASE
LIBOBJS += bdt.o
LIBNAME = libBdt.a
include $(EPICS)/config/RULES.Unix

View File

@@ -1,6 +1,5 @@
EPICS = ../../../..
include Target.include
include $(EPICS)/config/CONFIG_BASE
TOP = ../../..
include $(TOP)/config/CONFIG_BASE
SRCS.c += ../bdt.c
SRCS.c += ../bdtServ.c
@@ -14,7 +13,7 @@ OBJS += bdtServPv.o
PROD = bdt
include $(EPICS)/config/RULES.Vx
include $(TOP)/config/RULES.Vx
$(PROD): $(OBJS)
$(RM) $@

View File

@@ -1,4 +1,6 @@
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
#include <signal.h>
#include <errno.h>
#include <sys/wait.h>
@@ -158,7 +160,7 @@ BDT* BdtIpOpen(char* address, int Port)
{
if ((pHostent = gethostbyname (address)) == NULL)
return(NULL);
bcopy (pHostent->h_addr, (char *) &addr, sizeof(addr));
memcpy (&addr,pHostent->h_addr,sizeof(addr));
printf("Converting name >%s< to IP number %08.8X\n", address, addr);
}
#endif

304
src/bdt/bdt.h Normal file
View File

@@ -0,0 +1,304 @@
#ifndef __BDT_H
#define __BDT_H
/*
* $Log$
* Revision 1.4 1995/07/27 14:21:58 winans
* General mods for first release.
*
* Revision 1.3 1995/05/30 14:47:17 winans
* Added BDT_Ping and a port parm to BdtIpOpen.
*
* Revision 1.2 1995/05/16 15:38:00 winans
* Added BdtEof to BdtState enum list.
* Added WriteLock and DeltaFlagLock to vxWorks-side BDTs.
* Added port number args to BdtOpenListenerTCP() and BdtOpenListenerUDP().
*
* Revision 1.1 1995/05/11 02:08:44 jbk
* new file for the bulk data transfer stuff
*
*/
/*
Author: Jim Kowalkowski
Date: 5/1/95
*/
/* got from protocols(5) (cheated) or /etc/protocols */
#define BDT_UDP 17
#define BDT_TCP 6
/* server ports - in the user reserved area */
#define BDT_UDP_PORT 50296
#define BDT_TCP_PORT 50297
/* Well known service names */
#define BDT_SERVICE_PV "pv"
#define BDT_SERVICE_NAME "name"
#define BDT_SERVICE_DRV "drv"
#define PV_TRANSFER_SIZE 512
/* How often some type of message is expected to arrive at each end-point */
#define BDT_PING_INTERVAL 10 /* Specified in seconds */
#define BDT_CONENCTION_TIMEOUT 25 /* Specified in seconds */
/* message types */
#define BDT_Ok 0
#define BDT_Connect 1
#define BDT_Error 2
#define BDT_Get 3
#define BDT_Put 4
#define BDT_Close 5
#define BDT_Monitor 6
#define BDT_Value 7
#define BDT_Delta 8
#define BDT_Add 9
#define BDT_Delete 10
#define BDT_Ping 11
#define BDT_LAST_VERB 11
/* protocol states */
typedef enum
{ BdtIdle,BdtUnbound,BdtSData,BdtRData,BdtBad,BdtEof } BdtState;
/******************************************************************************
*
* The format of a BDT_Connect message is:
*
* BdtMsgHead.verb (unsigned 16 binary = BDT_Connect)
* BdtMsgHead.size (unsigned 32 bit binary)
* service name length (unsigned 8 bit binary)
* service name string (service name length characters)
* arg1 string length (unsigned 8 bit binary)
* arg1 string (arg1 string length characters)
* ...
*
******************************************************************************/
/******************************************************************************
*
* NOTICE!!!!!!!! MONITORS ARE NOT CURRENTLY SUPPORTED!!!!!!!
*
* The BdtMonitor structure is created on the server-side when ever a client
* registers a monitor. It contains a tag string that is given by the client
* when the monitor is established. This tag string is an arbitrary binary
* string of bytes... presumably used by the client as a pointer or index
* to a status structure that represents the resource being monitored.
*
* The Message portion of the BdtMonitor represents the body of the message
* that is to be sent to the client to indicate the status of the event that
* happened. (It may not be present in the message.)
*
* The BdtMonitor structures are only hooked into the bdt.pMonitor list if they
* are waiting to be sent to the client.
*
* The format of a BDT_Monitor message is:
*
* BdtMsgHead.verb (unsigned 16 binary = BDT_Monitor)
* BdtMsgHead.size (unsigned 32 bit binary)
* TagLength (unsigned 32 bit binary)
* Tag (TagLength characters)
* service name string (BdtMsgHead.size-TagLength-4 characters)
*
* The <service name string> for a monitor message should include the object
* name(s) that are to be monitored.
*
*
* The format of a BDT_Delta message is:
*
* BdtMsgHead.verb (unsigned 16 binary = BDT_Delta)
* BdtMsgHead.size (unsigned 32 bit binary)
* BdtMonitor.TagLength (unsigned 32 bit binary)
* BdtMonitor.Tag (BdtMonitor.TagLength characters)
* BdtMonitor.MessageLength (unsigned 32 bit binary)
* BdtMonitor.Message (BdtMonitor.MessageLength characters)
*
******************************************************************************/
struct bdt;
typedef struct BdtMonitor
{
struct bdt *pBdt; /* Connection to send notices back to */
char *Tag; /* Client-generated tag */
int TagLength; /* Length of tag */
char *Message; /* Server-gen'd status change message */
int MessageLength; /* Length of Message */
struct BdtMonitor *pNext; /* Allow queue of N outbound on BDT */
} BdtMonitor;
typedef int (*BdthandlerFunc)(struct bdt *Bdt);
typedef struct BdtHandlers
{
BdthandlerFunc Ok;
BdthandlerFunc Connect;
BdthandlerFunc Error;
BdthandlerFunc Get;
BdthandlerFunc Put;
BdthandlerFunc Close;
BdthandlerFunc Monitor;
BdthandlerFunc Value;
BdthandlerFunc Delta;
BdthandlerFunc Add;
BdthandlerFunc Delete;
BdthandlerFunc Ping;
} BdtHandlers;
struct bdt
{
int soc;
int remaining_send;
int remaining_recv;
BdtState state;
#ifdef vxWorks
char *Name; /* Service name (used for messages) */
SEM_ID WriteLock;
SEM_ID MonitorLock;
BdtMonitor *pMonitor; /* List of pending monitor events */
BdthandlerFunc *pHandlers; /* Support routines for messages */
void *pService; /* Provate pointer for service */
#endif
};
typedef struct bdt BDT;
struct BdtMsgHead
{
unsigned short verb;
unsigned long size;
};
typedef struct BdtMsgHead BdtMsgHead;
#define BdtGetSocket(BDT) (BDT->soc)
#define BdtGetResidualWrite(BDT) (BDT->remaining_send)
#define BdtGetResidualRead(BDT) (BDT->remaining_recv)
#define BdtGetProtoState(BDT) (BDT->state)
#ifdef vxWorks
#define BdtGetServiceName(BDT) (BDT->Name)
#endif
/* ------------------------------------------------------------------------
Server functions:
BdtOpenListenerTCP:
Open a socket locally bound to the bulk data transfer TCP server port.
Set the socket up as a listener. Return the open socket.
BdtOpenListenerUDP:
Open a socket locally bound to the bulk data transfer UDP server port.
Return the open socket.
------------------------------------------------------------------------ */
int BdtOpenListenerTCP(int Port);
int BdtOpenListenerUDP(int Port);
/* ------------------------------------------------------------------------
Utilities functions:
BdtMakeServer:
Available under unix only. Put process in the background, disassociate
process from controlling terminal and parent process, and prepare
signals for reaping children spawned by the process.
BdtServerClearSignals:
Clear the signal handlers for a process, set them to default.
BdtMakeBDT:
Allocate and initialize a BDT from a socket.
BdtFreeBDT:
Close the open socket and free the memory for the BDT.
------------------------------------------------------------------------ */
#ifndef vxWorks
int BdtMakeServer(char** argv);
int BdtServerClearSignals();
#endif
BDT* BdtMakeBDT(int socket); /* make a BDT from a socket */
int BdtFreeBDT(BDT* bdt); /* free a BDT */
/* ------------------------------------------------------------------------
Client functions:
BdtIpOpen:
Open a connection to an bulk data transfer given the IP address of the
machine where the server exists. The returned BDT is returned unbound,
a connect must be issued before data transactions can take place.
BdtPvOpen:
Open and connect (bind) to a process variable. Data transfers can
take place after this call.
BdtServiceConnect:
Used in conjunction with BdtIpOpen(). Bind an unbound BDT to a
generic service provided by the server at the other end of the open
connection.
BdtPvConnect:
Used in conjunction with BdtIpOpen(). Bind an unbound BDT to a
process variable on the server at the other end of the open
connection.
BdtClose:
Completely close a connection to a server and free the BDT.
BdtDeltaPending:
Check if a delta message arrived at an unexpected time. This function
clears the pending condition.
------------------------------------------------------------------------ */
BDT* BdtIpOpen(char* address, int port);
BDT* BdtPvOpen(char *IocName, char* PvName);
int BdtServiceConnect(BDT* bdt, char* service_name, char *args);
int BdtPvConnect(BDT* bdt, char* pv_name);
int BdtClose(BDT* bdt);
int BdtPvDeltaPending(BDT* bdt);
/* ------------------------------------------------------------------------
Client and Server shared functions:
BdtSendHeader:
Send a message header out to a connect BDT with command and message body
size information.
BdtSendData:
Send a portion or all the message body out a connected BDT. A header
must have previously been sent with length information. The interface
will only allow the amount of data specified in the header to be sent.
BdtWrite:
This call will block until all the data specified in the size parameter
are sent down the socket.
BdtRead:
This call will block until all the data specified in the size parameter
is read from the socket.
BdtReceiveHeader:
Wait until a message header appears at the BDT, return the action and
remaining message body size.
BdtReceiveData:
Wait for a chunk or the entire body of a message to appear at the BDT.
Put the data into the buffer for a maximum size. Return the amount of
data actually received, or zero if there is no data remaining for the
current message.
------------------------------------------------------------------------ */
int BdtSendHeader(BDT* bdt, unsigned short verb, int size);
int BdtSendData(BDT* bdt, void* buffer, int size);
int BdtReceiveHeader(BDT* bdt, int* verb, int* size);
int BdtReceiveData(BDT* bdt, void* buffer, int size);
int BdtRead(int socket, void* buffer, int size);
int BdtWrite(int socket, void* buffer, int size);
int BdtFlushOutput(BDT* bdt);
int BdtPvPutArray(BDT *bdt, short DbrType, void *Buf, unsigned long NumElements, unsigned long ElementSize);
#endif

7
src/bpt/Makefile Normal file
View File

@@ -0,0 +1,7 @@
TOP=../..
include $(TOP)/config/CONFIG_BASE
include $(TOP)/config/RULES_ARCHS

14
src/bpt/Makefile.Host Normal file
View File

@@ -0,0 +1,14 @@
# Makefile.Host for base/src/bpt
#
TOP = ../../..
include $(TOP)/config/CONFIG_BASE
INC := cvtTable.h
SRCS := makeBpt.c
PROD := makeBpt
include $(TOP)/config/RULES.Host
# EOF Makefile.Host for base/src/bpt

21
src/bpt/Makefile.Vx Normal file
View File

@@ -0,0 +1,21 @@
TOP = ../../..
include $(TOP)/config/CONFIG_BASE
MENUS += menuConvert.h
BPTS += bptTypeJdegC.dbd
BPTS += bptTypeJdegF.dbd
BPTS += bptTypeKdegC.dbd
BPTS += bptTypeKdegF.dbd
SRCS.c = \
../cvtBpt.c
LIBOBJS = \
cvtBpt.o
LIBNAME = pbtLib
include $(TOP)/config/RULES.Vx

142
src/bpt/bptTypeJdegC.data Normal file
View File

@@ -0,0 +1,142 @@
!header
"typeJdegC" 0 0 700 4095 .5 -210 760 1
!data
-8.096 -8.076 -8.057 -8.037 -8.017 -7.996 -7.976 -7.955 -7.934 -7.912
-7.890 -7.868 -7.846 -7.824 -7.801 -7.778 -7.755 -7.731 -7.707 -7.683
-7.659 -7.634 -7.609 -7.584 -7.559 -7.533 -7.508 -7.482 -7.455 -7.429
-7.402 -7.375 -7.348 -7.321 -7.293 -7.265 -7.237 -7.209 -7.180 -7.151
-7.122 -7.093 -7.064 -7.034 -7.004 -6.974 -6.944 -6.914 -6.883 -6.852
-6.821 -6.790 -6.758 -6.727 -6.695 -6.663 -6.630 -6.598 -6.565 -6.532
-6.499 -6.466 -6.433 -6.399 -6.365 -6.331 -6.297 -6.263 -6.228 -6.194
-6.159 -6.124 -6.089 -6.053 -6.018 -5.982 -5.946 -5.910 -5.874 -5.837
-5.801 -5.764 -5.727 -5.690 -5.653 -5.615 -5.578 -5.540 -5.502 -5.464
-5.426 -5.388 -5.349 -5.311 -5.272 -5.233 -5.194 -5.155 -5.115 -5.076
-5.036 -4.996 -4.956 -4.916 -4.876 -4.836 -4.795 -4.755 -4.714 -4.673
-4.632 -4.591 -4.550 -4.508 -4.467 -4.425 -4.383 -4.341 -4.299 -4.257
-4.215 -4.172 -4.130 -4.087 -4.044 -4.001 -3.958 -3.915 -3.872 -3.829
-3.785 -3.742 -3.698 -3.654 -3.610 -3.566 -3.522 -3.478 -3.433 -3.389
-3.344 -3.299 -3.255 -3.210 -3.165 -3.120 -3.074 -3.029 -2.984 -2.938
-2.892 -2.847 -2.801 -2.755 -2.709 -2.663 -2.617 -2.570 -2.524 -2.478
-2.431 -2.384 -2.338 -2.291 -2.244 -2.197 -2.150 -2.102 -2.055 -2.008
-1.960 -1.913 -1.865 -1.818 -1.770 -1.722 -1.674 -1.626 -1.578 -1.530
-1.481 -1.433 -1.385 -1.336 -1.288 -1.239 -1.190 -1.141 -1.093 -1.044
-0.995 -0.945 -0.896 -0.847 -0.798 -0.748 -0.699 -0.650 -0.600 -0.550
-0.501 -0.451 -0.401 -0.351 -0.301 -0.251 -0.201 -0.151 -0.101 -0.050
0.0 0.050 0.101 0.151 0.202 0.253 0.303 0.354 0.405 0.456
0.507 0.558 0.609 0.660 0.711 0.762 0.813 0.865 0.916 0.967
1.019 1.070 1.122 1.174 1.225 1.277 1.329 1.381 1.432 1.484
1.536 1.588 1.640 1.693 1.745 1.797 1.849 1.901 1.954 2.006
2.058 2.111 2.163 2.216 2.268 2.321 2.374 2.426 2.479 2.532
2.585 2.638 2.691 2.743 2.796 2.849 2.902 2.956 3.009 3.062
3.115 3.168 3.221 3.275 3.328 3.381 3.435 3.488 3.542 3.595
3.649 3.702 3.756 3.809 3.863 3.917 3.971 4.024 4.078 4.132
4.186 4.239 4.293 4.347 4.401 4.455 4.509 4.563 4.617 4.671
4.725 4.780 4.834 4.888 4.942 4.996 5.050 5.105 5.159 5.213
5.268 5.322 5.376 5.431 5.485 5.540 5.594 5.649 5.703 5.758
5.812 5.867 5.921 5.976 6.031 6.085 6.140 6.195 6.249 6.304
6.359 6.414 6.468 6.523 6.578 6.633 6.688 6.742 6.797 6.852
6.907 6.962 7.017 7.072 7.127 7.182 7.237 7.292 7.347 7.402
7.457 7.512 7.567 7.622 7.677 7.732 7.787 7.843 7.898 7.953
8.008 8.063 8.118 8.174 8.229 8.284 8.339 8.394 8.450 8.505
8.560 8.616 8.671 8.726 8.781 8.837 8.892 8.947 9.003 9.058
9.113 9.169 9.224 9.279 9.335 9.390 9.446 9.501 9.556 9.612
9.667 9.723 9.778 9.834 9.889 9.944 10.000 10.055 10.111 10.166
10.222 10.277 10.333 10.388 10.444 10.499 10.555 10.610 10.666 10.721
10.777 10.832 10.888 10.943 10.999 11.054 11.110 11.165 11.221 11.276
11.332 11.387 11.443 11.498 11.554 11.609 11.665 11.720 11.776 11.831
11.887 11.943 11.998 12.054 12.109 12.165 12.220 12.276 12.331 12.387
12.442 12.498 12.553 12.609 12.664 12.720 12.776 12.831 12.887 12.942
12.998 13.053 13.109 13.164 13.220 13.275 13.331 13.386 13.442 13.497
13.553 13.608 13.664 13.719 13.775 13.830 13.886 13.941 13.997 14.052
14.108 14.163 14.219 14.274 14.330 14.385 14.441 14.496 14.552 14.607
14.663 14.718 14.774 14.829 14.885 14.940 14.995 15.051 15.106 15.162
15.217 15.273 15.328 15.383 15.439 15.494 15.550 15.605 15.661 15.716
15.771 15.827 15.882 15.938 15.993 16.048 16.104 16.159 16.214 16.270
16.325 16.380 16.436 16.491 16.547 16.602 16.657 16.713 16.768 16.823
16.879 16.934 16.989 17.044 17.100 17.155 17.210 17.266 17.321 17.376
17.432 17.487 17.542 17.597 17.653 17.708 17.763 17.818 17.874 17.929
17.984 18.039 18.095 18.150 18.205 18.260 18.316 18.371 18.426 18.481
18.537 18.592 18.647 18.702 18.757 18.813 18.868 18.923 18.978 19.033
19.089 19.144 19.199 19.254 19.309 19.364 19.420 19.475 19.530 19.585
19.640 19.695 19.751 19.806 19.861 19.916 19.971 20.026 20.081 20.137
20.192 20.247 20.302 20.357 20.412 20.467 20.523 20.578 20.633 20.688
20.743 20.798 20.853 20.909 20.964 21.019 21.074 21.129 21.184 21.239
21.295 21.350 21.405 21.460 21.515 21.570 21.625 21.680 21.736 21.791
21.846 21.901 21.956 22.011 22.066 22.122 22.177 22.232 22.287 22.342
22.397 22.453 22.508 22.563 22.618 22.673 22.728 22.784 22.839 22.894
22.949 23.004 23.060 23.115 23.170 23.225 23.280 23.336 23.391 23.446
23.501 23.556 23.612 23.667 23.722 23.777 23.833 23.888 23.943 23.999
24.054 24.109 24.164 24.220 24.275 24.330 24.386 24.441 24.496 24.552
24.607 24.662 24.718 24.773 24.829 24.884 24.939 24.995 25.050 25.106
25.161 25.217 25.272 25.327 25.383 25.438 25.494 25.549 25.605 25.661
25.716 25.772 25.827 25.883 25.938 25.994 26.050 26.105 26.161 26.216
26.272 26.328 26.383 26.439 26.495 26.551 26.606 26.662 26.718 26.774
26.829 26.885 26.941 26.997 27.053 27.109 27.165 27.220 27.276 27.332
27.388 27.444 27.500 27.556 27.612 27.668 27.724 27.780 27.836 27.893
27.949 28.005 28.061 28.117 28.173 28.230 28.286 28.342 28.398 28.455
28.511 28.567 28.624 28.680 28.736 28.793 28.849 28.906 28.962 29.019
29.075 29.132 29.188 29.245 29.301 29.358 29.415 29.471 29.528 29.585
29.642 29.698 29.755 29.812 29.869 29.926 29.983 30.039 30.096 30.153
30.210 30.267 30.324 30.381 30.439 30.496 30.553 30.610 30.667 30.724
30.782 30.839 30.896 30.954 31.011 31.068 31.126 31.183 31.241 31.298
31.356 31.413 31.471 31.528 31.586 31.644 31.702 31.759 31.817 31.875
31.933 31.991 32.048 32.106 32.164 32.222 32.280 32.338 32.396 32.455
32.513 32.571 32.629 32.687 32.746 32.804 32.862 32.921 32.979 33.038
33.096 33.155 33.213 33.272 33.330 33.389 33.448 33.506 33.565 33.624
33.683 33.742 33.800 33.859 33.918 33.977 34.036 34.095 34.155 34.214
34.273 34.332 34.391 34.451 34.510 34.569 34.629 34.688 34.748 34.807
34.867 34.926 34.986 35.046 35.105 35.165 35.225 35.285 35.344 35.404
35.464 35.524 35.584 35.644 35.704 35.764 35.825 35.885 35.945 36.005
36.066 36.126 36.186 36.247 36.307 36.368 36.428 36.489 36.549 36.610
36.671 36.732 36.792 36.853 36.914 36.975 37.036 37.097 37.158 37.219
37.280 37.341 37.402 37.463 37.525 37.586 37.647 37.709 37.770 37.831
37.893 37.954 38.016 38.078 38.139 38.201 38.262 38.324 38.386 38.448
38.510 38.572 38.633 38.695 38.757 38.819 38.882 38.944 39.006 39.068
39.130 39.192 39.255 39.317 39.379 39.442 39.504 39.567 39.629 39.692
39.754 39.817 39.880 39.942 40.005 40.068 40.131 40.193 40.256 40.319
40.382 40.445 40.508 40.571 40.634 40.697 40.760 40.823 40.886 40.950
41.013 41.076 41.139 41.203 41.266 41.329 41.393 41.456 41.520 41.583
41.647 41.710 41.774 41.837 41.901 41.965 42.028 42.092 42.156 42.219
42.283 42.347 42.411 42.475 42.538 42.602 42.666 42.730 42.794 42.858
42.922

213
src/bpt/bptTypeJdegF.data Normal file
View File

@@ -0,0 +1,213 @@
! cvtTypeJdegF.data
"typeJdegF" 32 0 1200 4095 1.0 -350 1400 1
!
-8.137 -8.127 -8.117 -8.106 -8.096 -8.085 -8.074 -8.063 -8.052 -8.041
-8.030 -8.019 -8.008 -7.996 -7.985 -7.973 -7.962 -7.950 -7.938 -7.927
-7.915 -7.903 -7.890 -7.878 -7.866 -7.854 -7.841 -7.829 -7.816 -7.803
-7.791 -7.778 -7.765 -7.752 -7.739 -7.726 -7.712 -7.699 -7.686 -7.672
-7.659 -7.645 -7.631 -7.618 -7.604 -7.590 -7.576 -7.562 -7.548 -7.533
-7.519 -7.505 -7.490 -7.476 -7.461 -7.447 -7.432 -7.417 -7.402 -7.387
-7.372 -7.357 -7.342 -7.327 -7.311 -7.296 -7.281 -7.265 -7.250 -7.234
-7.218 -7.202 -7.187 -7.171 -7.155 -7.139 -7.122 -7.106 -7.090 -7.074
-7.057 -7.041 -7.024 -7.008 -6.991 -6.974 -6.958 -6.941 -6.924 -6.907
-6.890 -6.873 -6.856 -6.838 -6.821 -6.804 -6.786 -6.769 -6.751 -6.734
-6.716 -6.698 -6.680 -6.663 -6.645 -6.627 -6.609 -6.591 -6.572 -6.554
-6.536 -6.518 -6.499 -6.481 -6.462 -6.444 -6.425 -6.407 -6.388 -6.369
-6.350 -6.331 -6.312 -6.293 -6.274 -6.255 -6.236 -6.217 -6.198 -6.178
-6.159 -6.139 -6.120 -6.100 -6.081 -6.061 -6.041 -6.022 -6.002 -5.982
-5.962 -5.942 -5.922 -5.902 -5.882 -5.861 -5.841 -5.821 -5.801 -5.780
-5.760 -5.739 -5.719 -5.698 -5.678 -5.657 -5.636 -5.615 -5.594 -5.574
-5.553 -5.532 -5.511 -5.490 -5.468 -5.447 -5.426 -5.405 -5.383 -5.362
-5.341 -5.319 -5.298 -5.276 -5.255 -5.233 -5.211 -5.190 -5.168 -5.146
-5.124 -5.102 -5.080 -5.058 -5.036 -5.014 -4.992 -4.970 -4.948 -4.925
-4.903 -4.881 -4.858 -4.836 -4.813 -4.791 -4.768 -4.746 -4.723 -4.700
-4.678 -4.655 -4.632 -4.609 -4.586 -4.563 -4.540 -4.517 -4.494 -4.471
-4.448 -4.425 -4.402 -4.379 -4.355 -4.332 -4.309 -4.285 -4.262 -4.238
-4.215 -4.191 -4.168 -4.144 -4.120 -4.097 -4.073 -4.049 -4.025 -4.001
-3.978 -3.954 -3.930 -3.906 -3.882 -3.858 -3.833 -3.809 -3.785 -3.761
-3.737 -3.712 -3.688 -3.664 -3.639 -3.615 -3.590 -3.566 -3.541 -3.517
-3.492 -3.468 -3.443 -3.418 -3.394 -3.369 -3.344 -3.319 -3.294 -3.270
-3.245 -3.220 -3.195 -3.170 -3.145 -3.120 -3.094 -3.069 -3.044 -3.019
-2.994 -2.968 -2.943 -2.918 -2.892 -2.867 -2.842 -2.816 -2.791 -2.765
-2.740 -2.714 -2.689 -2.663 -2.637 -2.612 -2.586 -2.560 -2.534 -2.509
-2.483 -2.457 -2.431 -2.405 -2.379 -2.353 -2.327 -2.301 -2.275 -2.249
-2.223 -2.197 -2.171 -2.144 -2.118 -2.092 -2.066 -2.039 -2.013 -1.987
-1.960 -1.934 -1.908 -1.881 -1.855 -1.828 -1.802 -1.775 -1.748 -1.722
-1.695 -1.669 -1.642 -1.615 -1.589 -1.562 -1.535 -1.508 -1.481 -1.455
-1.428 -1.401 -1.374 -1.347 -1.320 -1.293 -1.266 -1.239 -1.212 -1.185
-1.158 -1.131 -1.103 -1.076 -1.049 -1.022 -0.995 -0.967 -0.940 -0.913
-0.885 -0.858 -0.831 -0.803 -0.776 -0.748 -0.721 -0.694 -0.666 -0.639
-0.611 -0.583 -0.556 -0.528 -0.501 -0.473 -0.445 -0.418 -0.390 -0.362
-0.334 -0.307 -0.279 -0.251 -0.223 -0.195 -0.168 -0.140 -0.112 -0.084
-0.056 -0.028 0.000 0.028 0.056 0.084 0.112 0.140 0.168 0.196
0.224 0.253 0.281 0.309 0.337 0.365 0.394 0.422 0.450 0.478
0.507 0.535 0.563 0.592 0.620 0.648 0.677 0.705 0.734 0.762
0.791 0.819 0.848 0.876 0.905 0.933 0.962 0.990 1.019 1.048
1.076 1.105 1.134 1.162 1.191 1.220 1.248 1.277 1.306 1.335
1.363 1.392 1.421 1.450 1.479 1.507 1.536 1.565 1.594 1.623
1.652 1.681 1.710 1.739 1.768 1.797 1.826 1.855 1.884 1.913
1.942 1.971 2.000 2.029 2.058 2.088 2.117 2.146 2.175 2.204
2.233 2.263 2.292 2.321 2.350 2.380 2.409 2.438 2.467 2.497
2.526 2.555 2.585 2.614 2.644 2.673 2.702 2.732 2.761 2.791
2.820 2.849 2.879 2.908 2.938 2.967 2.997 3.026 3.056 3.085
3.115 3.145 3.174 3.204 3.233 3.263 3.293 3.322 3.352 3.381
3.411 3.441 3.470 3.500 3.530 3.560 3.589 3.619 3.649 3.678
3.708 3.738 3.768 3.798 3.827 3.857 3.887 3.917 3.947 3.976
4.006 4.036 4.066 4.096 4.126 4.156 4.186 4.216 4.245 4.275
4.305 4.335 4.365 4.395 4.425 4.455 4.485 4.515 4.545 4.575
4.605 4.635 4.665 4.695 4.725 4.755 4.786 4.816 4.846 4.876
4.906 4.936 4.966 4.996 5.026 5.057 5.087 5.117 5.147 5.177
5.207 5.238 5.268 5.298 5.328 5.358 5.389 5.419 5.449 5.479
5.509 5.540 5.570 5.600 5.630 5.661 5.691 5.721 5.752 5.782
5.812 5.843 5.873 5.903 5.934 5.964 5.994 6.025 6.055 6.085
6.116 6.146 6.176 6.207 6.237 6.268 6.298 6.328 6.359 6.389
6.420 6.450 6.481 6.511 6.541 6.572 6.602 6.633 6.663 6.694
6.724 6.755 6.785 6.816 6.846 6.877 6.907 6.938 6.968 6.999
7.029 7.060 7.090 7.121 7.151 7.182 7.212 7.243 7.274 7.304
7.335 7.365 7.396 7.426 7.457 7.488 7.518 7.549 7.579 7.610
7.641 7.671 7.702 7.732 7.763 7.794 7.824 7.855 7.885 7.916
7.947 7.977 8.008 8.039 8.069 8.100 8.131 8.161 8.192 8.223
8.253 8.284 8.315 8.345 8.376 8.407 8.437 8.468 8.499 8.530
8.560 8.591 8.622 8.652 8.683 8.714 8.745 8.775 8.806 8.837
8.867 8.898 8.929 8.960 8.990 9.021 9.052 9.083 9.113 9.144
9.175 9.206 9.236 9.267 9.298 9.329 9.359 9.390 9.421 9.452
9.483 9.513 9.544 9.575 9.606 9.636 9.667 9.698 9.729 9.760
9.790 9.821 9.852 9.883 9.914 9.944 9.975 10.006 10.037 10.068
10.098 10.129 10.160 10.191 10.222 10.252 10.283 10.314 10.345 10.376
10.407 10.437 10.468 10.499 10.530 10.561 10.592 10.622 10.653 10.684
10.715 10.746 10.777 10.807 10.838 10.869 10.900 10.931 10.962 10.992
11.023 11.054 11.085 11.116 11.147 11.177 11.208 11.239 11.270 11.301
11.332 11.363 11.393 11.424 11.455 11.486 11.517 11.548 11.578 11.609
11.640 11.671 11.702 11.733 11.764 11.794 11.825 11.856 11.887 11.918
11.949 11.980 12.010 12.041 12.072 12.103 12.134 12.165 12.196 12.226
12.257 12.288 12.319 12.350 12.381 12.411 12.442 12.473 12.504 12.535
12.566 12.597 12.627 12.658 12.689 12.720 12.751 12.782 12.813 12.843
12.874 12.905 12.936 12.967 12.998 13.029 13.059 13.090 13.121 13.152
13.183 13.214 13.244 13.275 13.306 13.337 13.368 13.399 13.430 13.460
13.491 13.522 13.553 13.584 13.615 13.645 13.676 13.707 13.738 13.769
13.800 13.830 13.861 13.892 13.923 13.954 13.985 14.015 14.046 14.077
14.108 14.139 14.170 14.200 14.231 14.262 14.293 14.324 14.355 14.385
14.416 14.447 14.478 14.509 14.539 14.570 14.601 14.632 14.663 14.694
14.724 14.755 14.786 14.817 14.848 14.878 14.909 14.940 14.971 15.002
15.032 15.063 15.094 15.125 15.156 15.186 15.217 15.248 15.279 15.310
15.340 15.371 15.402 15.433 15.464 15.494 15.525 15.556 15.587 15.617
15.648 15.679 15.710 15.741 15.771 15.802 15.833 15.864 15.894 15.925
15.956 15.987 16.018 16.048 16.079 16.110 16.141 16.171 16.202 16.233
16.264 16.294 16.325 16.356 16.387 16.417 16.448 16.479 16.510 16.540
16.571 16.602 16.633 16.663 16.694 16.725 16.756 16.786 16.817 16.848
16.879 16.909 16.940 16.971 17.001 17.032 17.063 17.094 17.124 17.155
17.186 17.217 17.247 17.278 17.309 17.339 17.370 17.401 17.432 17.462
17.493 17.524 17.554 17.585 17.616 17.646 17.677 17.708 17.739 17.769
17.800 17.831 17.861 17.892 17.923 17.953 17.984 18.015 18.046 18.076
18.107 18.138 18.168 18.199 18.230 18.260 18.291 18.322 18.352 18.383
18.414 18.444 18.475 18.506 18.537 18.567 18.598 18.629 18.659 18.690
18.721 18.751 18.782 18.813 18.843 18.874 18.905 18.935 18.966 18.997
19.027 19.058 19.089 19.119 19.150 19.180 19.211 19.242 19.272 19.303
19.334 19.364 19.395 19.426 19.456 19.487 19.518 19.548 19.579 19.610
19.640 19.671 19.702 19.732 19.763 19.793 19.824 19.855 19.885 19.916
19.947 19.977 20.008 20.039 20.069 20.100 20.131 20.161 20.192 20.222
20.253 20.284 20.314 20.345 20.376 20.406 20.437 20.467 20.498 20.529
20.559 20.590 20.621 20.651 20.682 20.713 20.743 20.774 20.804 20.835
20.866 20.896 20.927 20.958 20.988 21.019 21.049 21.080 21.111 21.141
21.172 21.203 21.233 21.264 21.295 21.325 21.356 21.386 21.417 21.448
21.478 21.509 21.540 21.570 21.601 21.631 21.662 21.693 21.723 21.754
21.785 21.815 21.846 21.877 21.907 21.938 21.968 21.999 22.030 22.060
22.091 22.122 22.152 22.183 22.214 22.244 22.275 22.305 22.336 22.367
22.397 22.428 22.459 22.489 22.520 22.551 22.581 22.612 22.643 22.673
22.704 22.735 22.765 22.796 22.826 22.857 22.888 22.918 22.949 22.980
23.010 23.041 23.072 23.102 23.133 23.164 23.194 23.225 23.256 23.286
23.317 23.348 23.378 23.409 23.440 23.471 23.501 23.532 23.563 23.593
23.624 23.655 23.685 23.716 23.747 23.777 23.808 23.839 23.870 23.900
23.931 23.962 23.992 24.023 24.054 24.085 24.115 24.146 24.177 24.207
24.238 24.269 24.300 24.330 24.361 24.392 24.423 24.453 24.484 24.515
24.546 24.576 24.607 24.638 24.669 24.699 24.730 24.761 24.792 24.822
24.853 24.854 24.915 24.946 24.976 25.007 25.038 25.069 25.099 25.130
25.161 25.192 25.223 25.254 25.284 25.315 25.346 25.377 25.408 25.438
25.469 25.500 25.531 25.562 25.593 25.623 25.654 25.685 25.716 25.747
25.778 25.809 25.840 25.870 25.901 25.932 25.963 25.994 26.025 26.056
26.087 26.118 26.148 26.179 26.210 26.241 26.272 26.303 26.334 26.365
26.396 26.427 26.458 26.489 26.520 26.551 26.582 26.613 26.644 26.675
26.705 26.736 26.767 26.798 26.829 26.860 26.891 26.922 26.954 26.985
27.016 27.047 27.078 27.109 27.140 27.171 27.202 27.233 27.264 27.295
27.326 27.357 27.388 27.419 27.450 27.482 27.513 27.544 27.575 27.606
27.637 27.668 27.699 27.731 27.762 27.793 27.824 27.855 27.886 27.917
27.949 27.980 28.011 28.042 28.073 28.105 28.136 28.167 28.198 28.230
28.261 28.292 28.323 28.355 28.386 28.417 28.448 28.480 28.511 28.542
28.573 28.605 28.636 28.667 28.699 28.730 28.761 28.793 28.824 28.855
28.887 28.918 28.950 28.981 29.012 29.044 29.075 29.107 29.138 29.169
29.201 29.232 29.264 29.295 29.327 29.358 29.390 29.421 29.452 29.484
29.515 29.547 29.578 29.610 29.642 29.673 29.705 29.736 29.768 29.799
29.831 29.862 29.894 29.926 29.957 29.989 30.020 30.052 30.084 30.115
30.147 30.179 30.210 30.242 30.274 30.305 30.337 30.369 30.400 30.432
30.464 30.496 30.527 30.559 30.591 30.623 30.654 30.686 30.718 30.750
30.782 30.813 30.845 30.877 30.909 30.941 30.973 31.005 31.036 31.068
31.100 31.132 31.164 31.196 31.228 31.260 31.292 31.324 31.356 31.388
31.420 31.452 31.484 31.516 31.548 31.580 31.612 31.644 31.676 31.708
31.740 31.772 31.804 31.836 31.868 31.901 31.933 31.965 31.997 32.029
32.061 32.094 32.126 32.158 32.190 32.222 32.255 32.287 32.319 32.351
32.384 32.416 32.448 32.480 32.513 32.545 32.577 32.610 32.642 32.674
32.707 32.739 32.772 32.804 32.836 32.869 32.901 32.934 32.966 32.999
33.031 33.064 33.096 33.129 33.161 33.194 33.226 33.259 33.291 33.324
33.356 33.389 33.422 33.454 33.487 33.519 33.552 33.585 33.617 33.650
33.683 33.715 33.748 33.781 33.814 33.846 33.879 33.912 33.945 33.977
34.010 34.043 34.076 34.109 34.141 34.174 34.207 34.240 34.273 34.306
34.339 34.372 34.405 34.437 34.470 34.503 34.536 34.569 34.602 34.635
34.668 34.701 34.734 34.767 34.801 34.834 34.867 34.900 34.933 34.966
34.999 35.032 35.065 35.099 35.132 35.165 35.198 35.231 35.265 35.298
35.331 35.364 35.398 35.431 35.464 35.498 35.531 35.564 35.598 35.631
35.664 35.698 35.731 35.764 35.798 35.831 35.865 35.898 35.932 35.965
35.999 36.032 36.066 36.099 36.133 36.166 36.200 36.233 36.267 36.301
36.334 36.368 36.401 36.435 36.469 36.502 36.536 36.570 36.603 36.637
36.671 36.705 36.738 36.772 36.806 36.840 36.873 36.907 36.941 36.975
37.009 37.043 37.076 37.110 37.144 37.178 37.212 37.246 37.280 37.314
37.348 37.382 37.416 37.450 37.484 37.518 37.552 37.586 37.620 37.654
37.688 37.722 37.756 37.790 37.825 37.859 37.893 37.927 37.961 37.995
38.030 38.064 38.098 38.132 38.167 38.201 38.235 38.269 38.304 38.338
38.372 38.407 38.441 38.475 38.510 38.544 38.578 38.613 38.647 38.682
38.716 38.751 38.785 38.819 38.854 38.888 38.923 38.957 38.992 39.027
39.061 39.096 39.130 39.165 39.199 39.234 39.269 39.303 39.338 39.373
39.407 39.442 39.477 39.511 39.546 39.581 39.615 39.650 39.685 39.720
39.754 39.789 39.824 39.859 39.894 39.928 39.963 39.998 40.033 40.068
40.103 40.138 40.172 40.207 40.242 40.277 40.312 40.347 40.382 40.417
40.452 40.487 40.522 40.557 40.592 40.627 40.662 40.697 40.732 40.767
40.802 40.837 40.872 40.908 40.943 40.978 41.013 41.048 41.083 41.118
41.154 41.189 41.224 41.259 41.294 41.329 41.365 41.400 41.435 41.470
41.506 41.541 41.576 41.611 41.647 41.682 41.717 41.753 41.788 41.823
41.859 41.894 41.929 41.965 42.000 42.035 42.071 42.106 42.142 42.177
42.212 42.248 42.283 42.319 42.354 42.390 42.425 42.460 42.496 42.531
42.567 42.602 42.638 42.673 42.709 42.744 42.780 42.815 42.851 42.886
42.922

201
src/bpt/bptTypeKdegC.data Normal file
View File

@@ -0,0 +1,201 @@
! cvtTypeKdegC.data
"typeKdegC" 0 0 1000 4095 .5 -270 1372 1
!
-6.458 -6.457 -6.456 -6.455 -6.453 -6.452 -6.450 -6.448 -6.446 -6.444
-6.441 -6.438 -6.435 -6.432 -6.429 -6.425 -6.421 -6.417 -6.413 -6.408
-6.404 -6.399 -6.394 -6.388 -6.382 -6.377 -6.371 -6.364 -6.358 -6.351
-6.344 -6.337 -6.329 -6.322 -6.314 -6.306 -6.297 -6.289 -6.280 -6.271
-6.262 -6.253 -6.243 -6.233 -6.223 -6.213 -6.202 -6.192 -6.181 -6.170
-6.158 -6.147 -6.135 -6.123 -6.111 -6.099 -6.087 -6.074 -6.061 -6.048
-6.035 -6.021 -6.007 -5.994 -5.980 -5.965 -5.951 -5.936 -5.922 -5.907
-5.891 -5.876 -5.860 -5.845 -5.829 -5.813 -5.796 -5.780 -5.763 -5.747
-5.730 -5.712 -5.695 -5.678 -5.660 -5.642 -5.624 -5.606 -5.587 -5.569
-5.550 -5.531 -5.512 -5.493 -5.474 -5.454 -5.434 -5.414 -5.394 -5.374
-5.354 -5.333 -5.313 -5.292 -5.271 -5.249 -5.228 -5.207 -5.185 -5.163
-5.141 -5.119 -5.097 -5.074 -5.051 -5.029 -5.006 -4.983 -4.959 -4.936
-4.912 -4.889 -4.865 -4.841 -4.817 -4.792 -4.768 -4.743 -4.719 -4.694
-4.669 -4.644 -4.618 -4.593 -4.567 -4.541 -4.515 -4.489 -4.463 -4.437
-4.410 -4.384 -4.357 -4.330 -4.303 -4.276 -4.248 -4.221 -4.193 -4.166
-4.138 -4.110 -4.082 -4.053 -4.025 -3.997 -3.968 -3.939 -3.910 -3.881
-3.852 -3.823 -3.793 -3.764 -3.734 -3.704 -3.674 -3.644 -3.614 -3.584
-3.553 -3.523 -3.492 -3.461 -3.430 -3.399 -3.368 -3.337 -3.305 -3.274
-3.242 -3.211 -3.179 -3.147 -3.115 -3.082 -3.050 -3.018 -2.985 -2.953
-2.920 -2.887 -2.854 -2.821 -2.788 -2.754 -2.721 -2.687 -2.654 -2.620
-2.586 -2.552 -2.518 -2.484 -2.450 -2.416 -2.381 -2.347 -2.312 -2.277
-2.243 -2.208 -2.173 -2.137 -2.102 -2.067 -2.032 -1.996 -1.961 -1.925
-1.889 -1.853 -1.817 -1.781 -1.745 -1.709 -1.673 -1.636 -1.600 -1.563
-1.527 -1.490 -1.453 -1.416 -1.379 -1.342 -1.305 -1.268 -1.231 -1.193
-1.156 -1.118 -1.081 -1.043 -1.005 -0.968 -0.930 -0.892 -0.854 -0.816
-0.777 -0.739 -0.701 -0.662 -0.624 -0.585 -0.547 -0.508 -0.469 -0.431
-0.392 -0.353 -0.314 -0.275 -0.236 -0.197 -0.157 -0.118 -0.079 -0.039
0.000 0.039 0.079 0.119 0.158 0.198 0.238 0.277 0.317 0.357
0.397 0.437 0.477 0.517 0.557 0.597 0.637 0.677 0.718 0.758
0.798 0.838 0.879 0.919 0.960 1.000 1.041 1.081 1.122 1.162
1.203 1.244 1.285 1.325 1.366 1.407 1.448 1.489 1.529 1.570
1.611 1.652 1.693 1.734 1.776 1.817 1.858 1.899 1.940 1.981
2.022 2.064 2.105 2.146 2.188 2.229 2.270 2.312 2.353 2.394
2.436 2.477 2.519 2.560 2.601 2.643 2.684 2.726 2.767 2.809
2.850 2.892 2.933 2.975 3.016 3.058 3.100 3.141 3.183 3.224
3.266 3.307 3.349 3.390 3.432 3.473 3.515 3.556 3.598 3.639
3.681 3.722 3.764 3.805 3.847 3.888 3.930 3.971 4.012 4.054
4.095 4.137 4.178 4.219 4.261 4.302 4.343 4.384 4.426 4.467
4.508 4.549 4.590 4.632 4.673 4.714 4.755 4.796 4.837 4.878
4.919 4.960 5.001 5.042 5.083 5.124 5.164 5.205 5.246 5.287
5.327 5.368 5.409 5.450 5.490 5.531 5.571 5.612 5.652 5.693
5.733 5.774 5.814 5.855 5.895 5.936 5.976 6.016 6.057 6.097
6.137 6.177 6.218 6.258 6.298 6.338 6.378 6.419 6.459 6.499
6.539 6.579 6.619 6.659 6.699 6.739 6.779 6.819 6.859 6.899
6.939 6.979 7.019 7.059 7.099 7.139 7.179 7.219 7.259 7.299
7.338 7.378 7.418 7.458 7.498 7.538 7.578 7.618 7.658 7.697
7.737 7.777 7.817 7.857 7.897 7.937 7.977 8.017 8.057 8.097
8.137 8.177 8.216 8.256 8.296 8.336 8.376 8.416 8.456 8.497
8.537 8.577 8.617 8.657 8.697 8.737 8.777 8.817 8.857 8.898
8.938 8.978 9.018 9.058 9.099 9.139 9.179 9.220 9.260 9.300
9.341 9.381 9.421 9.462 9.502 9.543 9.583 9.624 9.664 9.705
9.745 9.786 9.826 9.867 9.907 9.948 9.989 10.029 10.070 10.111
10.151 10.192 10.233 10.274 10.315 10.355 10.396 10.437 10.478 10.519
10.560 10.600 10.641 10.682 10.723 10.764 10.805 10.846 10.887 10.928
10.969 11.010 11.051 11.093 11.134 11.175 11.216 11.257 11.298 11.339
11.381 11.422 11.463 11.504 11.546 11.587 11.628 11.669 11.711 11.752
11.793 11.835 11.876 11.918 11.959 12.000 12.042 12.083 12.125 12.166
12.207 12.249 12.290 12.332 12.373 12.415 12.456 12.498 12.539 12.581
12.623 12.664 12.706 12.747 12.789 12.831 12.872 12.914 12.955 12.997
13.039 13.080 13.122 13.164 13.205 13.247 13.289 13.331 13.372 13.414
13.456 13.497 13.539 13.581 13.623 13.665 13.706 13.748 13.790 13.832
13.874 13.915 13.957 13.999 14.041 14.083 14.125 14.167 14.208 14.250
14.292 14.334 14.376 14.418 14.460 14.502 14.544 14.586 14.628 14.670
14.712 14.754 14.796 14.838 14.880 14.922 14.964 15.006 15.048 15.090
15.132 15.174 15.216 15.258 15.300 15.342 15.384 15.426 15.468 15.510
15.552 15.594 15.636 15.679 15.721 15.763 15.805 15.847 15.889 15.931
15.974 16.016 16.058 16.100 16.142 16.184 16.227 16.269 16.311 16.353
16.395 16.438 16.480 16.522 16.564 16.607 16.649 16.691 16.733 16.776
16.818 16.860 16.902 16.945 16.987 17.029 17.072 17.114 17.156 17.199
17.241 17.283 17.326 17.368 17.410 17.453 17.495 17.537 17.580 17.622
17.664 17.707 17.749 17.792 17.834 17.876 17.919 17.961 18.004 18.046
18.088 18.131 18.173 18.216 18.258 18.301 18.343 18.385 18.428 18.470
18.513 18.555 18.598 18.640 18.683 18.725 18.768 18.810 18.853 18.895
18.938 18.980 19.023 19.065 19.108 19.150 19.193 19.235 19.278 19.320
19.363 19.405 19.448 19.490 19.533 19.576 19.618 19.661 19.703 19.746
19.788 19.831 19.873 19.916 19.959 20.001 20.044 20.086 20.129 20.172
20.214 20.257 20.299 20.342 20.385 20.427 20.470 20.512 20.555 20.598
20.640 20.683 20.725 20.768 20.811 20.853 20.896 20.938 20.981 21.024
21.066 21.109 21.152 21.194 21.237 21.280 21.322 21.365 21.407 21.450
21.493 21.535 21.578 21.621 21.663 21.706 21.749 21.791 21.834 21.876
21.919 21.962 22.004 22.047 22.090 22.132 22.175 22.218 22.260 22.303
22.346 22.388 22.431 22.473 22.516 22.559 22.601 22.644 22.687 22.729
22.772 22.815 22.857 22.900 22.942 22.985 23.028 23.070 23.113 23.156
23.198 23.241 23.284 23.326 23.369 23.411 23.454 23.497 23.539 23.582
23.624 23.667 23.710 23.752 23.795 23.837 23.880 23.923 23.965 24.008
24.050 24.093 24.136 24.178 24.221 24.263 24.306 24.348 24.391 24.434
24.476 24.519 24.561 24.604 24.646 24.689 24.731 24.774 24.817 24.859
24.902 24.944 24.987 25.029 25.072 25.114 25.157 25.199 25.242 25.284
25.327 25.369 25.412 25.454 25.497 25.539 25.582 25.624 25.666 25.709
25.751 25.794 25.836 25.879 25.921 25.964 26.006 26.048 26.091 26.133
26.176 26.218 26.260 26.303 26.345 26.387 26.430 26.472 26.515 26.557
26.599 26.642 26.684 26.726 26.769 26.811 26.853 26.896 26.938 26.980
27.022 27.065 27.107 27.149 27.192 27.234 27.276 27.318 27.361 27.403
27.445 27.487 27.529 27.572 27.614 27.656 27.698 27.740 27.783 27.825
27.867 27.909 27.951 27.993 28.035 28.078 28.120 28.162 28.204 28.246
28.288 28.330 28.372 28.414 28.456 28.498 28.540 28.583 28.625 28.667
28.709 28.751 28.793 28.835 28.877 28.919 28.961 29.002 29.044 29.086
29.128 29.170 29.212 29.254 29.296 29.338 29.380 29.422 29.464 29.505
29.547 29.589 29.631 29.673 29.715 29.756 29.798 29.840 29.882 29.924
29.965 30.007 30.049 30.091 30.132 30.174 30.216 30.257 30.299 30.341
30.383 30.424 30.466 30.508 30.549 30.591 30.632 30.674 30.716 30.757
30.799 30.840 30.882 30.924 30.965 31.007 31.048 31.090 31.131 31.173
31.214 31.256 31.297 31.339 31.380 31.422 31.463 31.504 31.546 31.587
31.629 31.670 31.712 31.753 31.794 31.836 31.877 31.918 31.960 32.001
32.042 32.084 32.125 32.166 32.207 32.249 32.290 32.331 32.372 32.414
32.455 32.496 32.537 32.578 32.619 32.661 32.702 32.743 32.784 32.825
32.866 32.907 32.948 32.990 33.031 33.072 33.113 33.154 33.195 33.236
33.277 33.318 33.359 33.400 33.441 33.482 33.523 33.564 33.604 33.645
33.686 33.727 33.768 33.809 33.850 33.891 33.931 33.972 34.013 34.054
34.095 34.136 34.176 34.217 34.258 34.299 34.339 34.380 34.421 34.461
34.502 34.543 34.583 34.624 34.665 34.705 34.746 34.787 34.827 34.868
34.909 34.949 34.990 35.030 35.071 35.111 35.152 35.192 35.233 35.273
35.314 35.354 35.395 35.435 35.476 35.516 35.557 35.597 35.637 35.678
35.718 35.758 35.799 35.839 35.880 35.920 35.960 36.000 36.041 36.081
36.121 36.162 36.202 36.242 36.282 36.323 36.363 36.403 36.443 36.483
36.524 36.564 36.604 36.644 36.684 36.724 36.764 36.804 36.844 36.885
36.925 36.965 37.005 37.045 37.085 37.125 37.165 37.205 37.245 37.285
37.325 37.365 37.405 37.445 37.484 37.524 37.564 37.604 37.644 37.684
37.724 37.764 37.803 37.843 37.883 37.923 37.963 38.002 38.042 38.082
38.122 38.162 38.201 38.241 38.281 38.320 38.360 38.400 38.439 38.479
38.519 38.558 38.598 38.638 38.677 38.717 38.756 38.796 38.836 38.875
38.915 38.954 38.994 39.033 39.073 39.112 39.152 39.191 39.231 39.270
39.310 39.349 39.388 39.428 39.467 39.507 39.546 39.585 39.625 39.644
39.703 39.743 39.782 39.821 39.861 39.900 39.939 39.979 40.018 40.057
40.096 40.136 40.175 40.214 40.253 40.292 40.332 40.371 40.410 40.449
40.488 40.527 40.566 40.605 40.645 40.684 40.723 40.762 40.801 40.840
40.879 40.918 40.957 40.996 41.035 41.074 41.113 41.152 41.191 41.230
41.269 41.308 41.347 41.385 41.424 41.463 41.502 41.541 41.580 41.619
41.657 41.696 41.735 41.774 41.813 41.851 41.890 41.929 41.968 42.006
42.045 42.084 42.123 42.161 42.200 42.239 42.277 42.316 42.355 42.393
42.432 42.470 42.509 42.548 42.586 42.625 42.663 42.702 42.740 42.779
42.817 42.856 42.894 42.933 42.971 43.010 43.048 43.087 43.125 43.164
43.202 43.240 43.279 43.317 43.356 43.394 43.432 43.471 43.509 43.547
43.585 43.624 43.662 43.700 43.739 43.777 43.815 43.853 43.891 43.930
43.968 44.006 44.044 44.082 44.121 44.159 44.197 44.235 44.273 44.311
44.349 44.387 44.425 44.463 44.501 44.539 44.577 44.615 44.653 44.691
44.729 44.767 44.805 44.843 44.881 44.919 44.957 44.995 45.033 45.070
45.108 45.146 45.184 45.222 45.260 45.297 45.335 45.373 45.411 45.448
45.486 45.524 45.561 45.599 45.637 45.675 45.712 45.750 45.787 45.825
45.863 45.900 45.938 45.975 46.013 46.051 46.088 46.126 46.163 46.201
46.238 46.275 46.313 46.350 46.388 46.425 46.463 46.500 46.537 46.575
46.612 46.649 46.687 46.724 46.761 46.799 46.836 46.873 46.910 46.948
46.985 47.022 47.059 47.096 47.134 47.171 47.208 47.245 47.282 47.319
47.356 47.393 47.430 47.468 47.505 47.542 47.579 47.616 47.653 47.689
47.726 47.763 47.800 47.837 47.874 47.911 47.948 47.985 48.021 48.058
48.095 48.132 48.169 48.205 48.242 48.279 48.316 48.352 48.389 48.426
48.462 48.499 48.536 48.572 48.609 48.645 48.682 48.718 48.755 48.792
48.828 48.865 48.901 48.937 48.974 49.010 49.047 49.083 49.120 49.156
49.192 49.229 49.265 49.301 49.338 49.374 49.410 49.446 49.483 49.519
49.555 49.591 49.627 49.663 49.700 49.736 49.772 49.808 49.844 49.880
49.916 49.952 49.988 50.024 50.060 50.096 50.132 50.168 50.204 50.240
50.276 50.311 50.347 50.383 50.419 50.455 50.491 50.526 50.562 50.598
50.633 50.669 50.705 50.741 50.776 50.812 50.847 50.883 50.919 50.954
50.990 51.025 51.061 51.096 51.132 51.167 51.203 51.238 51.274 51.309
51.344 51.380 51.415 51.450 51.486 51.521 51.556 51.592 51.627 51.662
51.697 51.733 51.768 51.803 51.838 51.873 51.908 51.943 51.979 52.014
52.049 52.084 52.119 52.154 52.189 52.224 52.259 52.294 52.329 52.364
52.398 52.433 52.468 52.503 52.538 52.573 52.608 52.642 52.677 52.712
52.747 52.781 52.816 52.851 52.886 52.920 52.955 52.989 53.024 53.059
53.093 53.128 53.162 53.197 53.232 53.266 53.301 53.335 53.370 53.404
53.439 53.473 53.507 53.542 53.576 53.611 53.645 53.679 53.714 53.748
53.782 53.817 53.851 53.885 53.920 53.954 53.988 54.022 54.057 54.091
54.125 54.159 54.193 54.228 54.262 54.296 54.330 54.364 54.398 54.432
54.466 54.501 54.535 54.569 54.603 54.637 54.671 54.705 54.739 54.773
54.807 54.841 54.875

360
src/bpt/bptTypeKdegF.data Normal file
View File

@@ -0,0 +1,360 @@
! cvtTypeKdegF.data
"typeKdegF" 32 0 1832 4095 1.0 -454 2500 1
!
-6.458 -6.457 -6.457 -6.456
-6.456 -6.455 -6.454 -6.454 -6.453 -6.452 -6.451 -6.450 -6.449 -6.448
-6.447 -6.445 -6.444 -6.443 -6.441 -6.440 -6.438 -6.436 -6.435 -6.433
-6.431 -6.429 -6.427 -6.425 -6.423 -6.421 -6.419 -6.416 -6.414 -6.411
-6.409 -6.406 -6.404 -6.401 -6.398 -6.395 -6.392 -6.389 -6.386 -6.383
-6.380 -6.377 -6.373 -6.370 -6.366 -6.363 -6.359 -6.355 -6.352 -6.348
-6.344 -6.340 -6.336 -6.332 -6.328 -6.323 -6.319 -6.315 -6.310 -6.306
-6.301 -6.296 -6.292 -6.287 -6.282 -6.277 -6.272 -6.267 -6.262 -6.257
-6.251 -6.246 -6.241 -6.235 -6.230 -6.224 -6.219 -6.213 -6.207 -6.201
-6.195 -6.189 -6.183 -6.177 -6.171 -6.165 -6.158 -6.152 -6.146 -6.139
-6.133 -6.126 -6.119 -6.113 -6.106 -6.099 -6.092 -6.085 -6.078 -6.071
-6.064 -6.057 -6.049 -6.042 -6.035 -6.027 -6.020 -6.012 -6.004 -5.997
-5.989 -5.981 -5.973 -5.965 -5.957 -5.949 -5.941 -5.933 -5.925 -5.917
-5.908 -5.900 -5.891 -5.883 -5.874 -5.866 -5.857 -5.848 -5.839 -5.831
-5.822 -5.813 -5.804 -5.795 -5.786 -5.776 -5.767 -5.758 -5.748 -5.739
-5.730 -5.720 -5.711 -5.701 -5.691 -5.682 -5.672 -5.662 -5.652 -5.642
-5.632 -5.622 -5.612 -5.602 -5.592 -5.581 -5.571 -5.561 -5.550 -5.540
-5.529 -5.519 -5.508 -5.497 -5.487 -5.476 -5.465 -5.454 -5.443 -5.432
-5.421 -5.410 -5.399 -5.388 -5.376 -5.365 -5.354 -5.342 -5.331 -5.319
-5.308 -5.296 -5.285 -5.273 -5.261 -5.249 -5.238 -5.226 -5.214 -5.202
-5.190 -5.178 -5.165 -5.153 -5.141 -5.129 -5.116 -5.104 -5.092 -5.079
-5.067 -5.054 -5.041 -5.029 -5.016 -5.003 -4.990 -4.978 -4.965 -4.952
-4.939 -4.926 -4.912 -4.899 -4.886 -4.873 -4.860 -4.846 -4.833 -4.819
-4.806 -4.792 -4.779 -4.765 -4.752 -4.738 -4.724 -4.710 -4.697 -4.683
-4.669 -4.655 -4.641 -4.627 -4.613 -4.598 -4.584 -4.570 -4.556 -4.541
-4.527 -4.512 -4.498 -4.484 -4.469 -4.454 -4.440 -4.425 -4.410 -4.396
-4.381 -4.366 -4.351 -4.336 -4.321 -4.306 -4.291 -4.276 -4.261 -4.245
-4.230 -4.215 -4.200 -4.184 -4.169 -4.153 -4.138 -4.122 -4.107 -4.091
-4.075 -4.060 -4.044 -4.028 -4.012 -3.997 -3.981 -3.965 -3.949 -3.933
-3.917 -3.901 -3.884 -3.868 -3.852 -3.836 -3.819 -3.803 -3.787 -3.770
-3.754 -3.737 -3.721 -3.704 -3.688 -3.671 -3.654 -3.637 -3.621 -3.604
-3.587 -3.570 -3.553 -3.536 -3.519 -3.502 -3.485 -3.468 -3.451 -3.434
-3.417 -3.399 -3.382 -3.365 -3.347 -3.330 -3.312 -3.295 -3.277 -3.260
-3.242 -3.225 -3.207 -3.189 -3.172 -3.154 -3.136 -3.118 -3.100 -3.082
-3.065 -3.047 -3.029 -3.010 -2.992 -2.974 -2.956 -2.938 -2.920 -2.902
-2.883 -2.865 -2.847 -2.828 -2.810 -2.791 -2.773 -2.754 -2.736 -2.717
-2.699 -2.680 -2.661 -2.643 -2.624 -2.605 -2.586 -2.567 -2.549 -2.530
-2.511 -2.492 -2.473 -2.454 -2.435 -2.416 -2.397 -2.377 -2.358 -2.339
-2.320 -2.300 -2.281 -2.262 -2.243 -2.223 -2.204 -2.184 -2.165 -2.145
-2.126 -2.106 -2.087 -2.067 -2.047 -2.028 -2.008 -1.988 -1.968 -1.949
-1.929 -1.909 -1.889 -1.869 -1.849 -1.829 -1.809 -1.789 -1.769 -1.749
-1.729 -1.709 -1.689 -1.669 -1.648 -1.628 -1.608 -1.588 -1.567 -1.547
-1.527 -1.506 -1.486 -1.465 -1.445 -1.424 -1.404 -1.383 -1.363 -1.342
-1.322 -1.301 -1.280 -1.260 -1.239 -1.218 -1.197 -1.177 -1.156 -1.135
-1.114 -1.093 -1.072 -1.051 -1.031 -1.010 -0.989 -0.968 -0.946 -0.925
-0.904 -0.883 -0.862 -0.841 -0.820 -0.799 -0.777 -0.756 -0.735 -0.714
-0.692 -0.671 -0.650 -0.628 -0.607 -0.585 -0.564 -0.543 -0.521 -0.500
-0.478 -0.457 -0.435 -0.413 -0.392 -0.370 -0.349 -0.327 -0.305 -0.284
-0.262 -0.240 -0.218 -0.197 -0.175 -0.153 -0.131 -0.109 -0.088 -0.066
-0.044 -0.022 0.000 0.022 0.044 0.066 0.088 0.110 0.132 0.154
0.176 0.198 0.220 0.242 0.264 0.286 0.308 0.331 0.353 0.375
0.397 0.419 0.441 0.464 0.486 0.508 0.530 0.553 0.575 0.597
0.619 0.642 0.664 0.686 0.709 0.731 0.753 0.776 0.798 0.821
0.843 0.865 0.888 0.910 0.933 0.955 0.978 1.000 1.023 1.045
1.068 1.090 1.113 1.135 1.158 1.181 1.203 1.226 1.248 1.271
1.294 1.316 1.339 1.362 1.384 1.407 1.430 1.452 1.475 1.498
1.520 1.543 1.566 1.589 1.611 1.634 1.657 1.680 1.703 1.725
1.748 1.771 1.794 1.817 1.839 1.862 1.885 1.908 1.931 1.954
1.977 2.000 2.022 2.045 2.068 2.091 2.114 2.137 2.160 2.183
2.206 2.229 2.252 2.275 2.298 2.321 2.344 2.367 2.390 2.413
2.436 2.459 2.482 2.505 2.528 2.551 2.574 2.597 2.620 2.643
2.666 2.689 2.712 2.735 2.758 2.781 2.804 2.827 2.850 2.873
2.896 2.920 2.943 2.966 2.989 3.012 3.035 3.058 3.081 3.104
3.127 3.150 3.173 3.196 3.220 3.243 3.266 3.289 3.312 3.335
3.358 3.381 3.404 3.427 3.450 3.473 3.496 3.519 3.543 3.566
3.589 3.612 3.635 3.658 3.681 3.704 3.727 3.750 3.773 3.796
3.819 3.842 3.865 3.888 3.911 3.934 3.957 3.980 4.003 4.026
4.049 4.072 4.095 4.118 4.141 4.164 4.187 4.210 4.233 4.256
4.279 4.302 4.325 4.348 4.371 4.394 4.417 4.439 4.462 4.485
4.508 4.531 4.554 4.577 4.600 4.622 4.645 4.668 4.691 4.714
4.737 4.759 4.782 4.805 4.828 4.851 4.873 4.896 4.919 4.942
4.964 4.987 5.010 5.033 5.055 5.078 5.101 5.124 5.146 5.169
5.192 5.214 5.237 5.260 5.282 5.305 5.327 5.350 5.373 5.395
5.418 5.440 5.463 5.486 5.508 5.531 5.553 5.576 5.598 5.621
5.643 5.666 5.688 5.711 5.733 5.756 5.778 5.801 5.823 5.846
5.868 5.891 5.913 5.936 5.958 5.980 6.003 6.025 6.048 6.070
6.092 6.115 6.137 6.160 6.182 6.204 6.227 6.249 6.271 6.294
6.316 6.338 6.361 6.383 6.405 6.428 6.450 6.472 6.494 6.517
6.539 6.561 6.583 6.606 6.628 6.650 6.672 6.695 6.717 6.739
6.761 6.784 6.806 6.828 6.850 6.873 6.895 6.917 6.939 6.961
6.984 7.006 7.028 7.050 7.072 7.094 7.117 7.139 7.161 7.183
7.205 7.228 7.250 7.272 7.294 7.316 7.338 7.361 7.383 7.405
7.427 7.449 7.471 7.494 7.516 7.538 7.560 7.582 7.604 7.627
7.649 7.671 7.693 7.715 7.737 7.760 7.782 7.804 7.826 7.848
7.870 7.893 7.915 7.937 7.959 7.981 8.003 8.026 8.048 8.070
8.092 8.114 8.137 8.159 8.181 8.203 8.225 8.248 8.270 8.292
8.314 8.336 8.359 8.381 8.403 8.425 8.448 8.470 8.492 8.514
8.537 8.559 8.581 8.603 8.626 8.648 8.670 8.692 8.715 8.737
8.759 8.782 8.804 8.826 8.849 8.871 8.893 8.916 8.938 8.960
8.983 9.005 9.027 9.050 9.072 9.094 9.117 9.139 9.161 9.184
9.206 9.229 9.251 9.273 9.296 9.318 9.341 9.363 9.385 9.408
9.430 9.453 9.475 9.498 9.520 9.543 9.565 9.588 9.610 9.633
9.655 9.678 9.700 9.723 9.745 9.768 9.790 9.813 9.835 9.858
9.880 9.903 9.926 9.948 9.971 9.993 10.016 10.038 10.061 10.084
10.106 10.129 10.151 10.174 10.197 10.219 10.242 10.265 10.287 10.310
10.333 10.355 10.378 10.401 10.423 10.446 10.469 10.491 10.514 10.537
10.560 10.582 10.605 10.628 10.650 10.673 10.696 10.719 10.741 10.764
10.787 10.810 10.833 10.855 10.878 10.901 10.924 10.947 10.969 10.992
11.015 11.038 11.061 11.083 11.106 11.129 11.152 11.175 11.198 11.221
11.243 11.266 11.289 11.312 11.335 11.358 11.381 11.404 11.426 11.449
11.472 11.495 11.518 11.541 11.564 11.587 11.610 11.633 11.656 11.679
11.702 11.725 11.748 11.770 11.793 11.816 11.839 11.862 11.885 11.908
11.931 11.954 11.977 12.000 12.023 12.046 12.069 12.092 12.115 12.138
12.161 12.184 12.207 12.230 12.254 12.277 12.300 12.323 12.346 12.369
12.392 12.415 12.438 12.461 12.484 12.507 12.530 12.553 12.576 12.599
12.623 12.646 12.669 12.692 12.715 12.738 12.761 12.784 12.807 12.831
12.854 12.877 12.900 12.923 12.946 12.969 12.992 13.016 13.039 13.062
13.085 13.108 13.131 13.154 13.178 13.201 13.224 13.247 13.270 13.293
13.317 13.340 13.363 13.386 13.409 13.433 13.456 13.479 13.502 13.525
13.549 13.572 13.595 13.618 13.641 13.665 13.688 13.711 13.734 13.757
13.781 13.804 13.827 13.850 13.874 13.897 13.920 13.943 13.967 13.990
14.013 14.036 14.060 14.083 14.106 14.129 14.153 14.176 14.199 14.222
14.246 14.269 14.292 14.316 14.339 14.362 14.385 14.409 14.432 14.455
14.479 14.502 14.525 14.548 14.572 14.595 14.618 14.642 14.665 14.688
14.712 14.735 14.758 14.782 14.805 14.828 14.852 14.875 14.898 14.922
14.945 14.968 14.992 15.015 15.038 15.062 15.085 15.108 15.132 15.155
15.178 15.202 15.225 15.248 15.272 15.295 15.318 15.342 15.365 15.389
15.412 15.435 15.459 15.482 15.505 15.529 15.552 15.576 15.599 15.622
15.646 15.669 15.693 15.716 15.739 15.763 15.786 15.810 15.833 15.856
15.880 15.903 15.927 15.950 15.974 15.997 16.020 16.044 16.067 16.091
16.114 16.138 16.161 16.184 16.208 16.231 16.255 16.278 16.302 16.325
16.349 16.372 16.395 16.419 16.442 16.466 16.489 16.513 16.536 16.560
16.583 16.607 16.630 16.654 16.677 16.700 16.724 16.747 16.771 16.794
16.818 16.841 16.865 16.888 16.912 16.935 16.959 16.982 17.006 17.029
17.053 17.076 17.100 17.123 17.147 17.170 17.194 17.217 17.241 17.264
17.288 17.311 17.335 17.358 17.382 17.406 17.429 17.453 17.476 17.500
17.523 17.547 17.570 17.594 17.617 17.641 17.664 17.688 17.711 17.735
17.759 17.782 17.806 17.829 17.853 17.876 17.900 17.923 17.947 17.971
17.994 18.018 18.041 18.065 18.088 18.112 18.136 18.159 18.183 18.206
18.230 18.253 18.277 18.301 18.324 18.348 18.371 18.395 18.418 18.442
18.466 18.489 18.513 18.536 18.560 18.584 18.607 18.631 18.654 18.678
18.702 18.725 18.749 18.772 18.796 18.820 18.843 18.867 18.890 18.914
18.938 18.961 18.985 19.008 19.032 19.056 19.079 19.103 19.127 19.150
19.174 19.197 19.221 19.245 19.268 19.292 19.316 19.339 19.363 19.386
19.410 19.434 19.457 19.481 19.505 19.528 19.552 19.576 19.599 19.623
19.646 19.670 19.694 19.717 19.741 19.765 19.788 19.812 19.836 19.859
19.883 19.907 19.930 19.954 19.978 20.001 20.025 20.049 20.072 20.096
20.120 20.143 20.167 20.190 20.214 20.238 20.261 20.285 20.309 20.332
20.356 20.380 20.403 20.427 20.451 20.474 20.498 20.522 20.545 20.569
20.593 20.616 20.640 20.664 20.688 20.711 20.735 20.759 20.782 20.806
20.830 20.853 20.877 20.901 20.924 20.948 20.972 20.995 21.019 21.043
21.066 21.090 21.114 21.137 21.161 21.185 21.208 21.232 21.256 21.280
21.303 21.327 21.351 21.374 21.398 21.422 21.445 21.469 21.493 21.516
21.540 21.564 21.587 21.611 21.635 21.659 21.682 21.706 21.730 21.753
21.777 21.801 21.824 21.848 21.872 21.895 21.919 21.943 21.966 21.990
22.014 22.038 22.061 22.085 22.109 22.132 22.156 22.180 22.203 22.227
22.251 22.274 22.298 22.322 22.346 22.369 22.393 22.417 22.440 22.464
22.488 22.511 22.535 22.559 22.582 22.606 22.630 22.654 22.677 22.701
22.725 22.748 22.772 22.796 22.819 22.843 22.867 22.890 22.914 22.938
22.961 22.985 23.009 23.032 23.056 23.080 23.104 23.127 23.151 23.175
23.198 23.222 23.246 23.269 23.293 23.317 23.340 23.364 23.388 23.411
23.435 23.459 23.482 23.506 23.530 23.553 23.577 23.601 23.624 23.648
23.672 23.695 23.719 23.743 23.766 23.790 23.814 23.837 23.861 23.885
23.908 23.932 23.956 23.979 24.003 24.027 24.050 24.074 24.098 24.121
24.145 24.169 24.192 24.216 24.240 24.263 24.287 24.311 24.334 24.358
24.382 24.405 24.429 24.453 24.476 24.500 24.523 24.547 24.571 24.594
24.618 24.642 24.665 24.689 24.713 24.736 24.760 24.783 24.807 24.831
24.854 24.878 24.902 24.925 24.949 24.972 24.996 25.020 25.043 25.067
25.091 25.114 25.138 25.161 25.185 25.209 25.232 25.256 25.279 25.303
25.327 25.350 25.374 25.397 25.421 25.445 25.468 25.492 25.515 25.539
25.563 25.586 25.610 25.633 25.657 25.681 25.704 25.728 25.751 25.775
25.799 25.822 25.846 25.869 25.893 25.916 25.940 25.964 25.987 26.011
26.034 26.058 26.081 26.105 26.128 26.152 26.176 26.199 26.223 26.246
26.270 26.293 26.317 26.340 26.364 26.387 26.411 26.435 26.458 26.482
26.505 26.529 26.552 26.576 26.599 26.623 26.646 26.670 26.693 26.717
26.740 26.764 26.787 26.811 26.834 26.858 26.881 26.905 26.928 26.952
26.975 26.999 27.022 27.046 27.069 27.093 27.116 27.140 27.163 27.187
27.210 27.234 27.257 27.281 27.304 27.328 27.351 27.375 27.398 27.422
27.445 27.468 27.492 27.515 27.539 27.562 27.586 27.609 27.633 27.656
27.679 27.703 27.726 27.750 27.773 27.797 27.820 27.843 27.867 27.890
27.914 27.937 27.961 27.984 28.007 28.031 28.054 28.078 28.101 28.124
28.148 28.171 28.195 28.218 28.241 28.265 28.288 28.311 28.335 28.358
28.382 28.405 28.428 28.452 28.475 28.498 28.522 28.545 28.569 28.592
28.615 28.639 28.662 28.685 28.709 28.732 28.755 28.779 28.802 28.825
28.849 28.872 28.895 28.919 28.942 28.965 28.988 29.012 29.035 29.058
29.082 29.105 29.128 29.152 29.175 29.198 29.221 29.245 29.268 29.291
29.315 29.338 29.361 29.384 29.408 29.431 29.454 29.477 29.501 29.524
29.547 29.570 29.594 29.617 29.640 29.663 29.687 29.710 29.733 29.756
29.780 29.803 29.826 29.849 29.872 29.896 29.919 29.942 29.965 29.989
30.012 30.035 30.058 30.081 30.104 30.128 30.151 30.174 30.197 30.220
30.244 30.267 30.290 30.313 30.336 30.359 30.383 30.406 30.429 30.452
30.475 30.498 30.521 30.545 30.568 30.591 30.614 30.637 30.660 30.683
30.706 30.730 30.753 30.776 30.799 30.822 30.845 30.868 30.891 30.914
30.937 30.961 30.984 31.007 31.030 31.053 31.076 31.099 31.122 31.145
31.168 31.191 31.214 31.237 31.260 31.283 31.306 31.329 31.353 31.376
31.399 31.422 31.445 31.468 31.491 31.514 31.537 31.560 31.583 31.606
31.629 31.652 31.675 31.698 31.721 31.744 31.767 31.790 31.813 31.836
31.859 31.882 31.905 31.927 31.950 31.973 31.996 32.019 32.042 32.065
32.088 32.111 32.134 32.157 32.180 32.203 32.226 32.249 32.272 32.294
32.317 32.340 32.363 32.386 32.409 32.432 32.455 32.478 32.501 32.523
32.546 32.569 32.592 32.615 32.638 32.661 32.683 32.706 32.729 32.752
32.775 32.798 32.821 32.843 32.866 32.889 32.912 32.935 32.958 32.980
33.003 33.026 33.049 33.072 33.094 33.117 33.140 33.163 33.186 33.208
33.231 33.254 33.277 33.300 33.322 33.345 33.368 33.391 33.413 33.436
33.459 33.482 33.504 33.527 33.550 33.573 33.595 33.618 33.641 33.664
33.686 33.709 33.732 33.754 33.777 33.800 33.823 33.845 33.868 33.891
33.913 33.936 33.959 33.981 34.004 34.027 34.049 34.072 34.095 34.117
34.140 34.163 34.185 34.208 34.231 34.253 34.276 34.299 34.321 34.344
34.366 34.389 34.412 34.434 34.457 34.480 34.502 34.525 34.547 34.570
34.593 34.615 34.638 34.660 34.683 34.705 34.728 34.751 34.773 34.796
34.818 34.841 34.863 34.886 34.909 34.931 34.954 34.976 34.999 35.021
35.044 35.066 35.089 35.111 35.134 35.156 35.179 35.201 35.224 35.246
35.269 35.291 35.314 35.336 35.359 35.381 35.404 35.426 35.449 35.471
35.494 35.516 35.539 35.561 35.583 35.606 35.628 35.651 35.673 35.696
35.718 35.741 35.763 35.785 35.808 35.830 35.853 35.875 35.897 35.920
35.942 35.965 35.987 36.009 36.032 36.054 36.077 36.099 36.121 36.144
36.166 36.188 36.211 36.233 36.256 36.278 36.300 36.323 36.345 36.367
36.390 36.412 36.434 36.457 36.479 36.501 36.524 36.546 36.568 36.590
36.613 36.635 36.657 36.680 36.702 36.724 36.746 36.769 36.791 36.813
36.836 36.858 36.880 36.902 36.925 36.947 36.969 36.991 37.014 37.036
37.058 37.080 37.103 37.125 37.147 37.169 37.191 37.214 37.236 37.258
37.280 37.303 37.325 37.347 37.369 37.391 37.413 37.436 37.458 37.480
37.502 37.524 37.547 37.569 37.591 37.613 37.635 37.657 37.679 37.702
37.724 37.746 37.768 37.790 37.812 37.834 37.857 37.879 37.901 37.923
37.945 37.967 37.989 38.011 38.033 38.055 38.078 38.100 38.122 38.144
38.166 38.188 38.210 38.232 38.254 38.276 38.298 38.320 38.342 38.364
38.387 38.409 38.431 38.453 38.475 38.497 38.519 38.541 38.563 38.585
38.607 38.629 38.651 38.673 38.695 38.717 38.739 38.761 38.783 38.805
38.827 38.849 38.871 38.893 38.915 38.937 38.959 38.981 39.003 39.024
39.046 39.068 39.090 39.112 39.134 39.156 39.178 39.200 39.222 39.244
39.266 39.288 39.310 39.331 39.353 39.375 39.397 39.419 39.441 39.463
39.485 39.507 39.529 39.550 39.572 39.594 39.616 39.638 39.660 39.682
39.703 39.725 39.747 39.769 39.791 39.813 39.835 39.856 39.878 39.900
39.922 39.944 39.965 39.987 40.009 40.031 40.053 40.075 40.096 40.118
40.140 40.162 40.183 40.205 40.227 40.249 40.271 40.292 40.314 40.336
40.358 40.379 40.401 40.423 40.445 40.466 40.488 40.510 40.532 40.553
40.575 40.597 40.619 40.640 40.662 40.684 40.705 40.727 40.749 40.770
40.792 40.814 40.836 40.857 40.879 40.901 40.922 40.944 40.966 40.987
41.009 41.031 41.052 41.074 41.096 41.117 41.139 41.161 41.182 41.204
41.225 41.247 41.269 41.290 41.312 41.334 41.355 41.377 41.398 41.420
41.442 41.463 41.485 41.506 41.528 41.550 41.571 41.593 41.614 41.636
41.657 41.679 41.701 41.722 41.744 41.765 41.787 41.808 41.830 41.851
41.873 41.895 41.916 41.938 41.959 41.981 42.002 42.024 42.045 42.067
42.088 42.110 42.131 42.153 42.174 42.196 42.217 42.239 42.260 42.282
42.303 42.325 42.346 42.367 42.389 42.410 42.432 42.453 42.475 42.496
42.518 42.539 42.560 42.582 42.603 42.625 42.646 42.668 42.689 42.710
42.732 42.753 42.775 42.796 42.817 42.839 42.860 42.882 42.903 42.924
42.946 42.967 42.989 43.010 43.031 43.053 43.074 43.095 43.117 43.138
43.159 43.181 43.202 43.223 43.245 43.266 43.287 43.309 43.330 43.351
43.373 43.394 43.415 43.436 43.458 43.479 43.500 43.522 43.543 43.564
43.585 43.607 43.628 43.649 43.671 43.692 43.713 43.734 43.756 43.777
43.798 43.819 43.841 43.862 43.883 43.904 43.925 43.947 43.968 43.989
44.010 44.031 44.053 44.074 44.095 44.116 44.137 44.159 44.180 44.201
44.222 44.243 44.265 44.286 44.307 44.328 44.349 44.370 44.391 44.413
44.434 44.455 44.476 44.497 44.518 44.539 44.560 44.582 44.603 44.624
44.645 44.666 44.687 44.708 44.729 44.750 44.771 44.793 44.814 44.835
44.856 44.877 44.898 44.919 44.940 44.961 44.982 45.003 45.024 45.045
45.066 45.087 45.108 45.129 45.150 45.171 45.192 45.213 45.234 45.255
45.276 45.297 45.318 45.339 45.360 45.381 45.402 45.423 45.444 45.465
45.486 45.507 45.528 45.549 45.570 45.591 45.612 45.633 45.654 45.675
45.695 45.716 45.737 45.758 45.779 45.800 45.821 45.842 45.863 45.884
45.904 45.925 45.946 45.967 45.988 46.009 46.030 46.051 46.071 46.092
46.113 46.134 46.155 46.176 46.196 46.217 46.238 46.259 46.280 46.300
46.321 46.342 46.363 46.384 46.404 46.425 46.446 46.467 46.488 46.508
46.529 46.550 46.571 46.591 46.612 46.633 46.654 46.674 46.695 46.716
46.737 46.757 46.778 46.799 46.819 46.840 46.861 46.881 46.902 46.923
46.944 46.964 46.985 47.006 47.026 47.047 47.068 47.088 47.109 47.130
47.150 47.171 47.191 47.212 47.233 47.253 47.274 47.295 47.315 47.336
47.356 47.377 47.398 47.418 47.439 47.459 47.480 47.500 47.521 47.542
47.562 47.583 47.603 47.624 47.644 47.665 47.685 47.706 47.726 47.747
47.767 47.788 47.808 47.829 47.849 47.870 47.890 47.911 47.931 47.952
47.972 47.993 48.013 48.034 48.054 48.075 48.095 48.116 48.136 48.156
48.177 48.197 48.218 48.238 48.258 48.279 48.299 48.320 48.340 48.360
48.381 48.401 48.422 48.442 48.462 48.483 48.503 48.523 48.544 48.564
48.584 48.605 48.625 48.645 48.666 48.686 48.706 48.727 48.747 48.767
48.787 48.808 48.828 48.848 48.869 48.889 48.909 48.929 48.950 48.970
48.990 49.010 49.031 49.051 49.071 49.091 49.111 49.132 49.152 49.172
49.192 49.212 49.233 49.253 49.273 49.293 49.313 49.333 49.354 49.374
49.394 49.414 49.434 49.454 49.474 49.495 49.515 49.535 49.555 49.575
49.595 49.615 49.635 49.655 49.675 49.696 49.716 49.736 49.756 49.776
49.796 49.816 49.836 49.856 49.876 49.896 49.916 49.936 49.956 49.976
49.996 50.016 50.036 50.056 50.076 50.096 50.116 50.136 50.156 50.176
50.196 50.216 50.236 50.256 50.276 50.296 50.315 50.335 50.355 50.375
50.395 50.415 50.435 50.455 50.475 50.494 50.514 50.534 50.554 50.574
50.594 50.614 50.633 50.653 50.673 50.693 50.713 50.733 50.752 50.772
50.792 50.812 50.832 50.851 50.871 50.891 50.911 50.930 50.950 50.970
50.990 51.009 51.029 51.049 51.069 51.088 51.108 51.128 51.148 51.167
51.187 51.207 51.226 51.246 51.266 51.285 51.305 51.325 51.344 51.364
51.384 51.403 51.423 51.443 51.462 51.482 51.501 51.521 51.541 51.560
51.580 51.599 51.619 51.639 51.658 51.678 51.697 51.717 51.736 51.756
51.776 51.795 51.815 51.834 51.854 51.873 51.893 51.912 51.932 51.951
51.971 51.990 52.010 52.029 52.049 52.068 52.088 52.107 52.127 52.146
52.165 52.185 52.204 52.224 52.243 52.263 52.282 52.301 52.321 52.340
52.360 52.379 52.398 52.418 52.437 52.457 52.476 52.495 52.515 52.534
52.553 52.573 52.592 52.611 52.631 52.650 52.669 52.689 52.708 52.727
52.747 52.766 52.785 52.805 52.824 52.843 52.862 52.882 52.901 52.920
52.939 52.959 52.978 52.997 53.016 53.036 53.055 53.074 53.093 53.113
53.132 53.151 53.170 53.189 53.209 53.228 53.247 53.266 53.285 53.304
53.324 53.343 53.362 53.381 53.400 53.419 53.439 53.458 53.477 53.496
53.515 53.534 53.553 53.572 53.592 53.611 53.630 53.649 53.668 53.687
53.706 53.725 53.744 53.763 53.782 53.801 53.821 53.840 53.859 53.878
53.897 53.916 53.935 53.954 53.973 53.992 54.011 54.030 54.049 54.068
54.087 54.106 54.125 54.144 54.163 54.182 54.201 54.220 54.239 54.258
54.277 54.296 54.315 54.334 54.353 54.372 54.391 54.410 54.429 54.447
54.466 54.485 54.504 54.523 54.542 54.561 54.580 54.599 54.618 54.637
54.656 54.675 54.694 54.712 54.731 54.750 54.769 54.788 54.807 54.826
54.845

View File

@@ -1,9 +1,10 @@
/* $Id$ */
/* cvtBpt.c - Convert using breakpoint table */
/*
* Author: Janet Anderson
* Date: 9-19-91
/* cvtBpt.c - Convert using breakpoint table
*
* Author: Marty Kraimer
* Date: 04OCT95
* This is adaptation of old bldCvtTable
*
* Experimental Physics and Industrial Control System (EPICS)
*
@@ -29,63 +30,78 @@
*
* Modification Log:
* -----------------
* nnn mm-dd-yy nnn Comment
* .02 05-18-92 rcz New database access
* .03 12-11-92 mrk ANSI prototypes
* 01 04OCT95 mrk Taken from old bldCvtTable
*/
#include <vxWorks.h>
#include <types.h>
#include <stdioLib.h>
#include <stdlib.h>
#include <stdio.h>
#include <ctype.h>
#include <cvtTable.h>
#include <dbAccess.h>
#include <ellLib.h>
#include <dbBase.h>
#include <dbStaticLib.h>
#include <cvtTable.h>
#include <epicsPrint.h>
extern struct dbBase *pdbBase;
extern struct dbBase *pdbbase;
#ifdef __STDC__
long cvtRawToEngBpt(double *pval,short linr,short init, void **ppbrk, short *plbrk)
#else /* __STDC__ */
long cvtRawToEngBpt(pval, linr, init, ppbrk, plbrk)
double *pval;
short linr;
short init;
void **ppbrk;
short *plbrk;
#endif /* __STDC__ */
static brkTable *findBrkTable(short linr)
{
double val=*pval;
long status=0;
struct brkTable *pbrkTable;
struct brkInt *pInt;
struct brkInt *pnxtInt;
short lbrk;
int number;
struct arrBrkTable *pcvtTable;
brkTable *pbrkTable;
dbMenu *pdbMenu;
char name[50];
char *pname = name;
int len,ind;
if(linr < 2) return(-1);
if(init==TRUE || *ppbrk == NULL) { /*must find breakpoint table*/
if( !(pcvtTable=pdbBase->pcvtTable) || (pcvtTable->number < linr)
|| (!(pcvtTable->papBrkTable[linr]))) {
errMessage(S_db_badField,"Breakpoint Table not Found");
return(S_db_badField);
}
*ppbrk = (void *)(pcvtTable->papBrkTable[linr]);
/* Just start at the beginning */
*plbrk=0;
}
pbrkTable = (struct brkTable *)*ppbrk;
number = pbrkTable->number;
lbrk = *plbrk;
/*make sure we dont go off end of table*/
if( (lbrk+1) >= number ) lbrk--;
pInt = pbrkTable->papBrkInt[lbrk];
pnxtInt = pbrkTable->papBrkInt[lbrk+1];
/* find entry for increased value */
while( (pnxtInt->raw) <= val ) {
pdbMenu = dbFindMenu(pdbbase,"menuConvert");
len = strlen(pdbMenu->papChoiceValue[linr]);
if(len>=sizeof(name)) {
epicsPrintf("Break Tables(findBrkTable) choice name too long\n");
return(0);
}
strcpy(pname,pdbMenu->papChoiceValue[linr]);
for(ind=0; ind<strlen(pname); ind++) {
if(!isalnum(pname[ind])) {
pname[ind] = '\0';
break;
}
}
pbrkTable = dbFindBrkTable(pdbbase,pname);
return(pbrkTable);
}
long cvtRawToEngBpt(double *pval,short linr,short init, void **ppbrk,
short *plbrk)
{
double val=*pval;
long status=0;
brkTable *pbrkTable;
brkInt *pInt;
brkInt *pnxtInt;
short lbrk;
int number;
if(linr < 2) return(-1);
if(init==TRUE || *ppbrk == NULL) { /*must find breakpoint table*/
pbrkTable = findBrkTable(linr);
if(!pbrkTable) return(S_dbLib_badField);
*ppbrk = (void *)pbrkTable;
/* Just start at the beginning */
*plbrk=0;
}
pbrkTable = (struct brkTable *)*ppbrk;
number = pbrkTable->number;
lbrk = *plbrk;
/*make sure we dont go off end of table*/
if( (lbrk+1) >= number ) lbrk--;
pInt = pbrkTable->papBrkInt[lbrk];
pnxtInt = pbrkTable->papBrkInt[lbrk+1];
/* find entry for increased value */
while( (pnxtInt->raw) <= val ) {
lbrk++;
pInt = pbrkTable->papBrkInt[lbrk];
if( lbrk >= number-1) {
@@ -93,54 +109,40 @@ short *plbrk;
break;
}
pnxtInt = pbrkTable->papBrkInt[lbrk+1];
}
while( (pInt->raw) > val) {
}
while( (pInt->raw) > val) {
if(lbrk==0) {
status=1;
break;
}
lbrk--;
pInt = pbrkTable->papBrkInt[lbrk];
}
*plbrk = lbrk;
*pval = pInt->eng + (val - pInt->raw) * pInt->slope;
return(status);
}
*plbrk = lbrk;
*pval = pInt->eng + (val - pInt->raw) * pInt->slope;
return(status);
}
#ifdef __STDC__
long cvtEngToRawBpt(double *pval,short linr,short init,
void **ppbrk,short *plbrk)
#else /* __STDC__ */
long cvtEngToRawBpt(pval,linr, init,ppbrk,plbrk)
double *pval;
short linr;
short init;
void **ppbrk;
short *plbrk;
#endif /* __STDC__ */
{
double val=*pval;
long status=0;
struct brkTable *pbrkTable;
struct brkInt *pInt;
struct brkInt *pnxtInt;
short lbrk;
int number;
struct arrBrkTable *pcvtTable;
double val=*pval;
long status=0;
brkTable *pbrkTable;
brkInt *pInt;
brkInt *pnxtInt;
short lbrk;
int number;
if(linr < 2) return(-1);
if(init==TRUE || *ppbrk == NULL) { /*must find breakpoint table*/
if( !(pcvtTable=pdbBase->pcvtTable) || (pcvtTable->number < linr)
|| (!(pcvtTable->papBrkTable[linr]))) {
errMessage(S_db_badField,"Breakpoint Table not Found");
return(S_db_badField);
}
*ppbrk = (void *)(pcvtTable->papBrkTable[linr]);
pbrkTable = findBrkTable(linr);
if(!pbrkTable) return(S_dbLib_badField);
*ppbrk = (void *)pbrkTable;
/* Just start at the beginning */
*plbrk=0;
}
pbrkTable = (struct brkTable *)*ppbrk;
number = pbrkTable->number;
lbrk = *plbrk;

45
src/bpt/cvtTable.h Normal file
View File

@@ -0,0 +1,45 @@
/* $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
#define INCcvtTableh 1
/* Global Routines*/
long cvtEngToRawBpt(double *pval,short linr,short init,
void **ppbrk,short *plbrk);
long cvtRawToEngBpt(double *pval,short linr,short init,
void **ppbrk, short *plbrk);
#endif

405
src/bpt/makeBpt.c Normal file
View File

@@ -0,0 +1,405 @@
/* $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>
#include <stddef.h>
#include <stdio.h>
#include <errno.h>
#include <string.h>
#include <dbBase.h>
#include <ellLib.h>
#include <cvtTable.h>
#define MAX_LINE_SIZE 160
#define MAX_BREAKS 100
struct brkCreateInfo {
float engLow; /* Lowest value desired: engineering units */
float engHigh; /* Highest value desired: engineering units */
float rawLow; /* Raw value for EngLow */
float rawHigh; /* Raw value for EngHigh */
float accuracy; /* accuracy desired in engineering units */
float tblEngFirst;/* First table value: engineering units */
float tblEngLast; /* Last table value: engineering units */
float tblEngDelta;/* Change per table entry: eng units */
long nTable; /* number of table entries */
/* (last-first)/delta + 1 */
float *pTable; /* addr of data table */
} brkCreateInfo;
brkInt brkint[MAX_BREAKS];
static int create_break(struct brkCreateInfo *pbci, brkInt *pabrkInt,
int max_breaks, int *n_breaks);
static char inbuf[MAX_LINE_SIZE];
static int linenum=0;
typedef struct dataList{
struct dataList *next;
float value;
}dataList;
static int getNumber(char **pbeg, float *value)
{
int nchars=0;
while(isspace(**pbeg) && **pbeg!= '\0') (*pbeg)++;
if(**pbeg == '!' || **pbeg == '\0') return(-1);
if(sscanf(*pbeg,"%f%n",value,&nchars)!=1) return(-1);
*pbeg += nchars;
return(0);
}
static void errExit(char *pmessage)
{
fprintf(stderr,pmessage);
fprintf(stderr,"\n");
exit(-1);
}
int main(argc, argv)
int argc;
char **argv;
{
char *pbeg;
char *pend;
float value;
char *pname;
dataList *phead;
dataList *pdataList;
dataList *pnext;
float *pdata;
long ndata;
int nBreak,len,n;
char *outFilename;
char *pext;
FILE *outFile;
FILE *inFile;
char *plastSlash;
if(argc!=2) {
fprintf(stderr,"usage: makeBpt file.data\n");
exit(-1);
}
plastSlash = strrchr(argv[1],'/');
plastSlash = (plastSlash ? plastSlash+1 : argv[1]);
outFilename = calloc(1,strlen(plastSlash)+2);
strcpy(outFilename,plastSlash);
pext = strstr(outFilename,".data");
if(!pext) {
fprintf(stderr,"Input file MUST have .data extension\n");
exit(-1);
}
strcpy(pext,".dbd");
inFile = fopen(argv[1],"r");
if(!inFile) {
fprintf(stderr,"Error opening %s\n",argv[1]);
exit(-1);
}
outFile = fopen(outFilename,"w");
if(!outFile) {
fprintf(stderr,"Error opening %s\n",outFilename);
exit(-1);
}
while(fgets(inbuf,MAX_LINE_SIZE,inFile)) {
linenum++;
inbuf[strlen(inbuf)] = '\0'; /* remove newline*/
pbeg = inbuf;
while(isspace(*pbeg) && *pbeg!= '\0') pbeg++;
if(*pbeg == '!' || *pbeg == '\0') continue;
while(*pbeg!='"' && *pbeg!= '\0') pbeg++;
if(*pbeg!='"' ) errExit("Illegal Header");
pbeg++; pend = pbeg;
while(*pend!='"' && *pend!= '\0') pend++;
if(*pend!='"') errExit("Illegal Header");
len = pend - pbeg;
if(len<=1) errExit("Illegal Header");
pname = calloc(len,sizeof(char));
strncpy(pname,pbeg,len);
pbeg = pend + 1;
if(getNumber(&pbeg,&value)) errExit("Illegal Header");
brkCreateInfo.engLow = value;
if(getNumber(&pbeg,&value)) errExit("Illegal Header");
brkCreateInfo.rawLow = value;
if(getNumber(&pbeg,&value)) errExit("Illegal Header");
brkCreateInfo.engHigh = value;
if(getNumber(&pbeg,&value)) errExit("Illegal Header");
brkCreateInfo.rawHigh = value;
if(getNumber(&pbeg,&value)) errExit("Illegal Header");
brkCreateInfo.accuracy = value;
if(getNumber(&pbeg,&value)) errExit("Illegal Header");
brkCreateInfo.tblEngFirst = value;
if(getNumber(&pbeg,&value)) errExit("Illegal Header");
brkCreateInfo.tblEngLast = value;
if(getNumber(&pbeg,&value)) errExit("Illegal Header");
brkCreateInfo.tblEngDelta = value;
goto got_header;
}
errExit("Illegal Header");
got_header:
phead = pnext = 0;
ndata = 0;
errno = 0;
while(fgets(inbuf,MAX_LINE_SIZE,inFile)) {
float value;
inbuf[strlen(inbuf)] = '\0'; /* remove newline*/
pbeg = inbuf;
while(!getNumber(&pbeg,&value)) {
ndata++;
pdataList = (dataList *)calloc(1,sizeof(dataList));
if(!phead)
phead = pdataList;
else
pnext->next = pdataList;
pdataList->value = value;
pnext = pdataList;
}
}
brkCreateInfo.nTable = ndata;
pdata = (float *)calloc(brkCreateInfo.nTable,sizeof(float));
pnext = phead;
for(n=0; n<brkCreateInfo.nTable; n++) {
pdata[n] = pnext->value;
pdataList = pnext;
pnext = pnext->next;
free((void *)pdataList);
}
brkCreateInfo.pTable = pdata;
if(create_break(&brkCreateInfo,&brkint[0],MAX_BREAKS,&nBreak))
errExit("create_break failed\n");
fprintf(outFile,"breaktable(%s) {\n",pname);
for(n=0; n<nBreak; n++) {
fprintf(outFile,"\t%f %f\n",brkint[n].raw,brkint[n].eng);
}
fprintf(outFile,"}\n");
fclose(inFile);
fclose(outFile);
return(0);
}
static int create_break( struct brkCreateInfo *pbci, brkInt *pabrkInt,
int max_breaks, int *n_breaks)
{
brkInt *pbrkInt;
float *table = pbci->pTable;
long ntable = pbci->nTable;
double ilow,
ihigh,
tbllow,
tblhigh,
slope,
offset;
int ibeg,
iend,
i,
inc,
imax,
n;
double rawBeg,
engBeg,
rawEnd,
engEnd,
engCalc,
engActual,
error;
int valid,
all_ok,
expanding;
/* make checks to ensure that brkCreateInfo makes sense */
if (pbci->engLow >= pbci->engHigh) {
errExit("create_break: engLow >= engHigh");
return (-1);
}
if ((pbci->engLow < pbci->tblEngFirst)
|| (pbci->engHigh > pbci->tblEngLast)) {
errExit("create_break: engLow > engHigh");
return (-1);
}
if (pbci->tblEngDelta <= 0.0) {
errExit("create_break: tblEngDelta <= 0.0");
return (-1);
}
if (ntable < 3) {
errExit("raw data must have at least 3 elements");
return (-1);
}
/***************************************************************************
Convert Table to raw values
*
* raw and table values are assumed to be related by an equation of the form:
*
* raw = slope*table + offset
*
* The following algorithm converts each table value to raw units
*
* 1) Finds the locations in Table corresponding to engLow and engHigh
* Note that these locations need not be exact integers
* 2) Interpolates to obtain table values corresponding to engLow and enghigh
* we now have the equations:
* rawLow = slope*tblLow + offset
* rawHigh = slope*tblHigh + offset
* 4) Solving these equations for slope and offset gives:
* slope=(rawHigh-rawLow)/(tblHigh-tblLow)
* offset=rawHigh-slope*tblHigh
* 5) for each table value set table[i]=table[i]*slope+offset
*************************************************************************/
/* Find engLow in Table and then compute tblLow */
ilow = (pbci->engLow - pbci->tblEngFirst) / (pbci->tblEngDelta);
i = (int) ilow;
if (i >= ntable - 1)
i = ntable - 2;
tbllow = table[i] + (table[i + 1] - table[i]) * (ilow - (float) i);
/* Find engHigh in Table and then compute tblHigh */
ihigh = (pbci->engHigh - pbci->tblEngFirst) / (pbci->tblEngDelta);
i = (int) ihigh;
if (i >= ntable - 1)
i = ntable - 2;
tblhigh = table[i] + (table[i + 1] - table[i]) * (ihigh - (float) i);
/* compute slope and offset */
slope = (pbci->rawHigh - pbci->rawLow) / (tblhigh - tbllow);
offset = pbci->rawHigh - slope * tblhigh;
/* convert table to raw units */
for (i = 0; i < ntable; i++)
table[i] = table[i] * slope + offset;
/*****************************************************************************
* Now create break point table
*
* The algorithm does the following:
*
* It finds one breakpoint interval at a time. For each it does the following:
*
* 1) Use a relatively large portion of the remaining table as an interval
* 2) It attempts to use the entire interval as a breakpoint interval
* Success is determined by the following algorithm:
* a) compute the slope using the entire interval
* b) for each table entry in the interval determine the eng value
* using the slope just determined.
* c) compare the computed value with eng value associated with table
* d) if all table entries are within the accuracy desired then success.
* 3) If successful then attempt to expand the interval and try again.
* Note that it is expanded by up to 1/10 of the table size.
* 4) If not successful reduce the interval by 1 and try again.
* Once the interval is being decreased it will never be increased again.
* 5) The algorithm will ultimately fail or will have determined the optimum
* breakpoint interval
*************************************************************************/
/* Must start with table entry corresponding to engLow; */
i = ilow;
if (i >= ntable - 1)
i = ntable - 2;
rawBeg = table[i] + (table[i + 1] - table[i]) * (ilow - (float) i);
engBeg = pbci->engLow;
ibeg = (int) (ilow); /* Make sure that ibeg > ilow */
if( ibeg < ilow ) ibeg = ibeg + 1;
/* start first breakpoint interval */
n = 1;
pbrkInt = pabrkInt;
pbrkInt->raw = rawBeg;
pbrkInt->eng = engBeg;
/* determine next breakpoint interval */
while ((engBeg <= pbci->engHigh) && (ibeg < ntable - 1)) {
/* determine next interval to try. Up to 1/10 full range */
iend = ibeg;
inc = (int) ((ihigh - ilow) / 10.0);
if (inc < 1)
inc = 1;
valid = TRUE;
/* keep trying intervals until cant do better */
expanding = TRUE; /* originally we are trying larger and larger
* intervals */
while (valid) {
imax = iend + inc;
if (imax >= ntable) {
/* don't go past end of table */
imax = ntable - 1;
inc = ntable - iend - 1;
expanding = FALSE;
}
if (imax > (int) (ihigh + 1.0)) { /* Don't go to far past
* engHigh */
imax = (int) (ihigh + 1.0);
inc = (int) (ihigh + 1.0) - iend;
expanding = FALSE;
}
if (imax <= ibeg)
break; /* failure */
rawEnd = table[imax];
engEnd = pbci->tblEngFirst + (float) imax *(pbci->tblEngDelta);
slope = (engEnd - engBeg) / (rawEnd - rawBeg);
all_ok = TRUE;
for (i = ibeg + 1; i <= imax; i++) {
engCalc = engBeg + slope * (table[i] - rawBeg);
engActual = pbci->tblEngFirst + ((float) i) * (pbci->tblEngDelta);
error = engCalc - engActual;
if (error < 0.0)
error = -error;
if (error >= pbci->accuracy) {
/* we will be trying smaller intervals */
expanding = FALSE;
/* just decrease inc and let while(valid) try again */
inc--;
all_ok = FALSE;
break;
}
} /* end for */
if (all_ok) {
iend = imax;
/* if not expanding we found interval */
if (!expanding)
break;
/* will automatically try larger interval */
}
} /* end while(valid) */
/* either we failed or optimal interval has been found */
if ((iend <= ibeg) && (iend < (int) ihigh)) {
errExit("Could not meet accuracy criteria");
return (-1);
}
pbrkInt->slope = slope;
/* get ready for next breakpoint interval */
if (n++ >= max_breaks) {
errExit("Break point table too large");
return (-1);
}
ibeg = iend;
pbrkInt++;
rawBeg = rawEnd;
engBeg = engEnd;
pbrkInt->raw = rawBeg;
pbrkInt->eng = engBeg + (pbrkInt->raw - rawBeg) * slope;
}
pbrkInt->slope = 0.0;
*n_breaks = n;
return (0);
}

16
src/bpt/menuConvert.dbd Normal file
View File

@@ -0,0 +1,16 @@
menu(menuConvert) {
choice(menuConvertNO_CONVERSION,"NO CONVERSION")
choice(menuConvertLINEAR,"LINEAR")
choice(menuConverttypeKdegF,"typeKdegF")
choice(menuConverttypeKdegC,"typeKdegC")
choice(menuConverttypeJdegF,"typeJdegF")
choice(menuConverttypeJdegC,"typeJdegC")
choice(menuConverttypeEdegF,"typeEdegF(ixe only)")
choice(menuConverttypeEdegC,"typeEdegC(ixe only)")
choice(menuConverttypeTdegF,"typeTdegF")
choice(menuConverttypeTdegC,"typeTdegC")
choice(menuConverttypeRdegF,"typeRdegF")
choice(menuConverttypeRdegC,"typeRdegC")
choice(menuConverttypeSdegF,"typeSdegF")
choice(menuConverttypeSdegC,"typeSdegC")
}

View File

@@ -23,7 +23,7 @@ $!
$!========================================================================
$!
$! Example FTP script moves sources from UNIX to VMS
$! (remove "$!" comment delimeters)
$! (remove "$!" comment delimiters)
$!
$! user XXXXXXX
$! cd [.ca]
@@ -35,7 +35,9 @@ $! put BUILD_VMS.COM
$! lcd ../libCom
$! mput *.c
$! mput *.h
$! lcd ../../include
$! lcd O.sun4
$! mput envData.c
$! lcd ../../../include
$! mput *.h
$!========================================================================
$!
@@ -48,6 +50,7 @@ $ define /nolog tcp multinet_root:[multinet.include]
$!
$! Compile the functions and test programs
$! Define symbol for the CC command
$ call list_define
$ call set_cc_command
$ if (p1 .nes. "")
$ then
@@ -67,13 +70,14 @@ TEST_EVENT, -
BSD_DEPEN, -
IF_DEPEN, -
VMS_DEPEN, -
ELLLIB, -
BUCKETLIB, -
ENVSUBR, -
TSSUBR, -
[-.libcom]ELLLIB, -
[-.libcom]BUCKETLIB, -
[-.libcom]ENVSUBR, -
[-.libcom]TSSUBR, -
NEXTFIELDSUBR, -
ASSERTUNIX, -
CATIME, -
[-.libcom]ENVDATA, -
[-.ca]CATIME, -
ACCTST
$ endif
$
@@ -96,6 +100,7 @@ BUCKETLIB, -
TSSUBR, -
ENVSUBR, -
NEXTFIELDSUBR, -
ENVDATA, -
ASSERTUNIX, -
ELLLIB
$! Link the test programs
@@ -131,10 +136,20 @@ $ if f$getsyi("HW_MODEL") .ge. 1024
$ then
$! turn of no prototype messages because MULTINET does not
$! supply prototypes.
$ cc_command:== cc /warn=(disable=IMPLICITFUNC)/float=d_float /include=([], [-.include], [-.libcom])
$ cc_command:== cc /warn=(disable=IMPLICITFUNC)/float=d_float -
/define=("__STDC__=1", "MULTINET=1") -
/include=([], [-.include], [-.include.os.vms], [-.libcom], [-.db])
$ else
$ cc_command:== cc /include=([], [-.include], [-.libcom])
$ cc_command:== cc /define=("__STDC__=1", "MULTINET=1") 'listing' -
/include=([], [-.include], [-.include.os.vms], [-.libcom], [-.db])
$ endif
$
$ endsubroutine
$ list_define: subroutine
$ listing == ""
$ if p1 .eqs. "L" then listing == "/lis=list.lis /sho=incl"
$ endsubroutine
$
$! ************************************************************

View File

@@ -1,15 +1,7 @@
#
# $Id$
#
# Lowest Level Directroy Makefile
# by Janet Anderson
#
# $Log$
#
EPICS=../../..
TOP=../..
include $(EPICS)/config/CONFIG_BASE
include $(TOP)/config/CONFIG_BASE
include $(EPICS)/config/RULES_ARCHS
include $(TOP)/config/RULES_ARCHS

64
src/ca/Makefile.Host Normal file
View File

@@ -0,0 +1,64 @@
# 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
#
# Contents of library: generic, special and for all systems
#
# on generic system
LIBSRCS_DEFAULT := posix_depen.c if_depen.c caRepeater.c
# on WIN32 only
LIBSRCS_WIN32 := windows_depen.c
# on all systems
LIBSRCS += iocinf.c
LIBSRCS += service.c
LIBSRCS += conn.c
LIBSRCS += netdb_depen.c
LIBSRCS += flow_control.c
LIBSRCS += syncgrp.c
LIBSRCS += access.c
LIBSRCS += convert.c
LIBSRCS += test_event.c
LIBSRCS += bsd_depen.c
LIBSRCS += repeater.c
# Library to build:
# lib$(LIBRARY).a or ..dll/..exp/..lib
#
LIBRARY := ca
# build LIBRARY as a DLL on WIN32, other systems may ignore this
LIBTYPE := SHARED
# WIN32 only: need additional lib to build the DLL and special def-file
DLL_LIBS := Com
PROD := caRepeater
# libs needed to build [TEST]PRODUCT
PROD_LIBS := ca Com
TESTPROD := catime acctst
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

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