Compare commits

..

1376 Commits

Author SHA1 Message Date
Janet B. Anderson
2ba1e47fd3 Added RTEMS changes. 2001-10-24 15:11:28 +00:00
Jeff Hill
5c00f84847 remove inline 2001-10-24 00:11:38 +00:00
Jeff Hill
e42becdce4 fixed format 2001-10-23 23:39:44 +00:00
Jeff Hill
7f3eca0394 avoid problems with the GNU inliner in gcc 2.96 2001-10-23 23:39:01 +00:00
Janet B. Anderson
105ecaca8d Updates for beta1. 2001-10-23 14:13:56 +00:00
Janet B. Anderson
1b24ce1620 Expand macros after all RELEASE files are read. 2001-10-22 19:32:27 +00:00
Jeff Hill
6352940ce6 fixed borland warning 2001-10-22 18:05:36 +00:00
Jeff Hill
6ec4eaea40 format 2001-10-22 18:04:12 +00:00
Jeff Hill
63ea05ecdd changed tabs to spaces 2001-10-22 18:03:32 +00:00
Jeff Hill
3566bc7d8d formatting 2001-10-22 18:01:55 +00:00
Jeff Hill
792e651d8e removed redundant ; 2001-10-22 18:01:05 +00:00
Jeff Hill
ee7cc03774 minor tweaking to debug options 2001-10-22 17:59:18 +00:00
Jeff Hill
a7a87b8d99 fixed borland warning 2001-10-22 17:49:23 +00:00
Jeff Hill
119e45dc28 fixed warning and cleaned up the source a bit 2001-10-22 17:14:25 +00:00
Jeff Hill
62954ecf50 properly export functions within 2001-10-22 17:00:19 +00:00
Jeff Hill
5bd31e2aa2 fixed comment 2001-10-22 16:59:40 +00:00
Jeff Hill
4675ba5077 fixed warning 2001-10-22 16:51:17 +00:00
Jeff Hill
da917cce37 fixed borland build issue 2001-10-22 16:39:21 +00:00
Jeff Hill
38d5f71072 fixed missing return code 2001-10-22 16:21:58 +00:00
Jeff Hill
e46a919662 fixed warnings 2001-10-22 16:17:59 +00:00
Jeff Hill
8d2eaa9cf5 dont use implicit template instantiation because Tornado II GNU isnt ready 2001-10-22 03:39:04 +00:00
Jeff Hill
e287eac4c7 dont use implicit template instantiation because Tornado II GNU isnt ready 2001-10-22 03:20:16 +00:00
Jeff Hill
7b1b2988d7 turn of ms already instantiated warning 2001-10-22 03:18:52 +00:00
Jeff Hill
ed88bdd35b use explicit template instantiation 2001-10-22 02:40:14 +00:00
Jeff Hill
21f9dd8179 use explicit template instatiation 2001-10-20 00:45:12 +00:00
Jeff Hill
f1d7722f80 use explicit template instantiation 2001-10-20 00:43:26 +00:00
Jeff Hill
7c4ddfffcd use explicit templ instantiation 2001-10-20 00:36:46 +00:00
Jeff Hill
f84e7f5df6 remove use of std lib for now 2001-10-20 00:16:21 +00:00
Jeff Hill
e16d797011 fixed diagnostic 2001-10-18 23:42:00 +00:00
Jeff Hill
40148ba63b fixed diagnostic message 2001-10-18 23:39:55 +00:00
Jeff Hill
114058de02 improved warning messages 2001-10-18 23:24:19 +00:00
Jeff Hill
0ed3880913 call tcp fd reg callback from UDP thread 2001-10-18 22:32:40 +00:00
Jeff Hill
855027654b added privateUninstallIIU() 2001-10-18 22:29:52 +00:00
Jeff Hill
8aff497180 use string.h until std c++ lib is stable 2001-10-18 22:29:25 +00:00
Jeff Hill
e8c12c369c moved the tcp fd reg to be called from the udp thread 2001-10-18 22:28:42 +00:00
Jeff Hill
5e1804ae94 moved the udp fd reg to be called from the user thread 2001-10-18 22:26:46 +00:00
Jeff Hill
08b16eba09 added start(), removed destroy(), and made connect() private 2001-10-18 22:23:53 +00:00
Marty Kraimer
7c186698aa change EPICS_TIMEZONE 2001-10-18 12:17:55 +00:00
Jeff Hill
8c404fc69e doc 2001-10-17 22:23:42 +00:00
Jeff Hill
06f99426c3 fixed doc 2001-10-17 22:20:26 +00:00
Jeff Hill
739d67853a fixed doc 2001-10-17 22:18:50 +00:00
Jeff Hill
6e86544e20 better doc 2001-10-17 22:16:48 +00:00
Jeff Hill
f1d9236ee9 improved doc for persons building EPICS applications with visual C++ 2001-10-17 22:10:45 +00:00
Janet B. Anderson
a7b06a7588 Added read of RELEASE.<EPICS_HOST_ARCH> file. 2001-10-17 20:44:18 +00:00
Janet B. Anderson
bd73d46620 Changed CFLAGS to CXXFLAGS for c++ flag. 2001-10-17 14:46:19 +00:00
Jeff Hill
dbc44e58d7 allow c++ 2001-10-16 22:45:23 +00:00
Jeff Hill
61e6a84ae3 cosmetic 2001-10-16 22:43:51 +00:00
Jeff Hill
4cd0787e4d revert to malloc/free if EPICS_DEBUG is defined 2001-10-16 22:37:38 +00:00
Jeff Hill
3583c70725 revert to mamloc/free if EPICS_DEBUG is defined 2001-10-16 22:36:34 +00:00
Jeff Hill
55c4981d4d match new cac api 2001-10-15 21:54:41 +00:00
Jeff Hill
db6b7367cd updated notes 2001-10-15 21:51:28 +00:00
Jeff Hill
2123916c45 more restrictions on use of preemptive callback enabled - and
merged IO cancel routine  into channel uninstall
2001-10-15 21:51:04 +00:00
Jeff Hill
5c353c4fa1 exported the CA client context id 2001-10-15 21:49:46 +00:00
Jeff Hill
864209af1c use ca_client_context in the original API 2001-10-15 21:48:17 +00:00
Jeff Hill
e30a01cab5 cosmetic 2001-10-15 21:47:10 +00:00
Jeff Hill
78239fb213 changed oldCAC from class to struct 2001-10-15 21:46:42 +00:00
Jeff Hill
42b8dcc3bf allow any CA system thread to attach to a ca context 2001-10-15 21:46:01 +00:00
Jeff Hill
218cf86318 removed destroyAllIO() func, and removed unused member data 2001-10-15 21:23:36 +00:00
Jeff Hill
f770728ed0 changed ca_client_context to oldCAC 2001-10-15 21:22:37 +00:00
Jeff Hill
0422478975 new error code 2001-10-15 21:21:20 +00:00
Jeff Hill
d67e8a28c6 stated that multiple threads are not allowed if preemptive callback is disabled 2001-10-15 21:20:58 +00:00
Jeff Hill
f26ba7daa6 destroy all IO function included now in uninstallChannel() 2001-10-15 21:19:59 +00:00
Jeff Hill
75cf4ebcff function name change 2001-10-15 21:19:16 +00:00
Marty Kraimer
28282e176d make caMonitor a host application 2001-10-15 18:50:16 +00:00
Marty Kraimer
7c86082b23 latest changes for 3.14.0beta1 2001-10-15 13:38:38 +00:00
Marty Kraimer
978cbb9517 make code easier to read 2001-10-15 13:36:49 +00:00
Jeff Hill
39a9682dbe cosmetic 2001-10-12 23:05:44 +00:00
Jeff Hill
e2d2cdf882 wait a bit longer for IO completion 2001-10-12 22:53:09 +00:00
Jeff Hill
190914f680 tack change in dbEvent interface (now new events are initially disabled) 2001-10-12 22:49:27 +00:00
Jeff Hill
7fc0860442 dont allow disabled event to be removed from the queue
and changed interface so that new events are initially disabled
2001-10-12 22:48:30 +00:00
Jeff Hill
f31cbb8a8c fixed to match new dbEvent interface 2001-10-12 22:47:06 +00:00
Jeff Hill
928f3234f2 fixed comment 2001-10-12 22:45:22 +00:00
W. Eric Norum
7b568edc59 Create RTEMS-specific README.
Modify st.cmd to reflect RTEMS directory structure.
2001-10-12 20:58:18 +00:00
W. Eric Norum
2cf796ce9b Use st.cmd in the top-level IOC directory, not in bin/scripts. This change
means that the st.cmd script produced for the example application needs to
be edited by hand before it can be used by an RTEMS IOC.
2001-10-12 14:24:08 +00:00
Janet B. Anderson
4f56353867 Fix for DLL_LIBS. 2001-10-11 21:22:56 +00:00
Jeff Hill
5555ea4edc supressed message about orphaned IO requests at exit because it
is perfectly normal for channels and therefore subscription IO
blocks to exist at exit (its the user's responsability to delete
them.
2001-10-10 22:57:41 +00:00
Jeff Hill
00d878aff8 supress shutdown when a circuit times out while connecting 2001-10-10 22:14:06 +00:00
Jeff Hill
d707be4c0e ADDED IMPLICIT THREAD INIT 2001-10-05 01:32:53 +00:00
Jeff Hill
90b4d40b96 changed sprintf format 2001-10-05 01:32:18 +00:00
Jeff Hill
2015e37f53 fixed problems where lock was released but channel was
inconsistently attached to an IIU
2001-10-04 17:47:07 +00:00
Jeff Hill
e849feeb13 fixed proper shutdown of local CA subscriptions 2001-10-04 00:02:27 +00:00
Jeff Hill
28ecb1209f fixed proper shutdown of local CA subscriptions 2001-10-03 23:47:24 +00:00
Jeff Hill
af42d394b9 fixed proper shutdown of local CA subscriptions 2001-10-03 22:38:53 +00:00
Jeff Hill
8ca27c4b4e cosmetic 2001-10-03 22:37:30 +00:00
Marty Kraimer
932813b85e check for removesOutstanding 2001-10-03 19:24:38 +00:00
Jeff Hill
659c60fd90 fixed inconsistent signed vs unsigned for thread priority 2001-10-03 18:45:32 +00:00
Jeff Hill
475e16ec96 use subroutine to compute the priority and rearranged cac constructor
to be robust in the face of exceptions (workaround for TII g++ bug)
2001-10-03 17:25:28 +00:00
Jeff Hill
17cb74de76 use subroutine to compute the priority 2001-10-03 17:24:12 +00:00
Jeff Hill
19f8326ae0 use subroutine to compute the priority and dont restart
the recv watchdog while holding the callback lock
2001-10-03 17:23:31 +00:00
Marty Kraimer
67eb482234 Removed accidental commit changes. 2001-10-03 15:21:50 +00:00
Marty Kraimer
bd2f706e0f change daylight savings time 2001-10-03 15:07:42 +00:00
Janet B. Anderson
ac07c6a248 Added USR_LIBS to DLL_LIBS definition. 2001-10-03 13:52:05 +00:00
Jeff Hill
e27671e8d6 call free for memory pointed to by task variable before task variable is deleted 2001-10-02 22:22:51 +00:00
Jeff Hill
37d45a57f3 fixed memory leak in epicsThreadPrivateSet 2001-10-02 22:11:07 +00:00
Janet B. Anderson
ee4b426a34 Changes for automated depends. 2001-10-02 18:20:53 +00:00
Janet B. Anderson
480129b790 Changed SCRIPTS to SCRIPTS_HOST. 2001-10-02 18:17:26 +00:00
Janet B. Anderson
d7717d106d Simplified some rules. 2001-10-02 18:15:42 +00:00
Jeff Hill
0c22d38d55 return "not connected" before "no write access" for put 2001-10-02 17:09:56 +00:00
Janet B. Anderson
75d0fc16e0 Added SCRIPTS_HOST and SCRIPTS_IOC. 2001-10-02 14:48:25 +00:00
Janet B. Anderson
42e498e2ff Changed BIN_INSTALLS to SCRIPTS_HOST. 2001-10-02 14:46:54 +00:00
Janet B. Anderson
ba3be45400 Updates for R3.14.0.beta1. 2001-10-02 14:02:23 +00:00
Janet B. Anderson
e8d24da299 Updated vim and java lines. 2001-10-02 13:57:41 +00:00
Marty Kraimer
3843cc0ddb wait 1 minute before reporting failure to contact ntpserver 2001-10-02 11:51:37 +00:00
Jeff Hill
06ee15bbfb fixed potential deadlock (dont hold lock when calling cb) 2001-10-02 01:15:25 +00:00
Jeff Hill
b19e46db7e send clear channel to the server when claim reply arrives and
there is no matching channel in the client. Also cleared up
other potential glitches related to deleting channels.
2001-10-02 01:14:09 +00:00
Jeff Hill
c54518d555 test for channel connected outside the clear channel request stub 2001-10-02 01:11:06 +00:00
Jeff Hill
deb6813aee changed clear channel interface 2001-10-02 01:10:21 +00:00
Andrew Johnson
0080b2d007 Fixed operation in new app directory. 2001-10-01 21:55:50 +00:00
Janet B. Anderson
3eece23175 Removing unused copyright files. 2001-10-01 21:40:12 +00:00
Jeff Hill
1220439a85 cosmetic 2001-10-01 18:11:33 +00:00
Janet B. Anderson
34b5548ef1 Commented out OBJS_IOC epicsListTest because build fails for vxWorks-ppc604
on win32-x86 host.
2001-10-01 18:00:33 +00:00
Janet B. Anderson
0d9b5ce097 Added basename function. 2001-10-01 17:48:05 +00:00
Janet B. Anderson
ec8a33ea5b Die if rmtree fails. 2001-10-01 17:45:09 +00:00
Janet B. Anderson
d4107b4900 Don't try to create directory if symbolic link of same name exists. 2001-10-01 17:42:09 +00:00
Janet B. Anderson
692c3b64b9 R3_14_0_beta1 2001-10-01 17:37:32 +00:00
Janet B. Anderson
8a29c82245 Merged changes from epics_R3_13_1_branch branch. 2001-10-01 17:36:15 +00:00
W. Eric Norum
c7f8051c84 RTEMS TFTP driver now handles leading ../ path name components properly.
Thus, for ../../dbd/example.dbd to be found properly, the st.cmd script
must be moved down two directories.  For now it is in bin/scripts, but
that may change.
2001-09-29 19:51:24 +00:00
Janet B. Anderson
993f3423ee Changed from tornado20 to tornado202. 2001-09-27 20:56:04 +00:00
Andrew Johnson
26016a2810 Improved readRelease subroutine to allow macro definitions after the
macro has been used.
2001-09-27 19:52:17 +00:00
Andrew Johnson
12ccb0936a Replaced ReadReleaseFile subroutine with version from convertRelease.pl
which supports include and now allows definitions to appear after use.
2001-09-27 19:50:18 +00:00
Jeff Hill
7eaabd7df2 fixed spurious "server memory exhausted" message 2001-09-26 18:59:04 +00:00
W. Eric Norum
cab1f58df1 The RTEMS TFTP driver now supports a limited form of chdir(). This means that
the hack of redefining fopen is no longer necessary.
Link -lrtemsall before -lrtemsCom to ensure that the configuration information
gets pulled from the rtemsCom library.
2001-09-26 15:28:29 +00:00
W. Eric Norum
74f581dce5 RTEMS TFTP driver now supports a limited form of chdir(). This means that
the hack of redefining fopen is no longer necessary.
2001-09-26 15:27:12 +00:00
Marty Kraimer
ec582e8c91 remove def for pdbbase 2001-09-26 13:30:42 +00:00
Marty Kraimer
8139443186 make sure epicsThreadInit called 2001-09-26 12:36:07 +00:00
Marty Kraimer
ade7bebfcd mkre changes for beta1 2001-09-26 11:51:52 +00:00
Marty Kraimer
9a651fe9bf remove extra debug statements; changes for clarity 2001-09-26 11:49:26 +00:00
Jeff Hill
cee658604b fixed unprotected increment that might cause problems on RISC arch 2001-09-25 23:58:11 +00:00
Jeff Hill
1f21e491ed fixed race condition 2001-09-25 23:56:48 +00:00
Jeff Hill
78d663d064 implemented threadExitMain() 2001-09-25 15:59:16 +00:00
Jeff Hill
c7a82c3ce2 fixed race condition 2001-09-25 00:13:20 +00:00
Jeff Hill
0768bb9764 fixed potential race condition 2001-09-25 00:11:46 +00:00
Jeff Hill
0809aa8c8b cosmetic 2001-09-25 00:10:23 +00:00
Jeff Hill
8b0161c463 added comment 2001-09-25 00:09:26 +00:00
Jeff Hill
c4b6554964 assert fail before allowing invalid thread id into use 2001-09-25 00:07:14 +00:00
Janet B. Anderson
682dbfae7a Allow multiple includes of base RULES_BUILD (use first include). 2001-09-24 22:15:22 +00:00
Marty Kraimer
e4a75d4a8c latest changes. Still extra printf statements 2001-09-24 19:49:08 +00:00
Marty Kraimer
878809a164 Still not working. Many asserts 2001-09-24 15:02:39 +00:00
Jeff Hill
8012642f9b cosmetic 2001-09-21 18:49:29 +00:00
Jeff Hill
ba4df8fd29 cosmetic 2001-09-21 17:33:20 +00:00
Jeff Hill
5b2d1df716 cosmetic 2001-09-21 17:29:25 +00:00
Jeff Hill
2e329813aa fixed possible race condition where put notify block might be nilled out
while it is running
2001-09-21 17:09:55 +00:00
Andrew Johnson
c5084f15cc Removed EPICS_EXTENSIONS dependencies as this causes problems with the
RELEASE file checker.  Now users of msi, sch2edif, e2db or dbst must
have these in their path, or define a variable pointing to the binary
in their application configure/RELEASE files.  Capfast users may also
want to add the definition CAPFAST_TEMPLATES pointing to their EPICS
symbols, originally found via (EPICS_EXTENSIONS)/templates/capfast
2001-09-20 20:26:38 +00:00
Andrew Johnson
2cb9e531cc Updated instructions in comments, moved EPICS_BASE to last line. 2001-09-20 20:14:35 +00:00
Andrew Johnson
4f2c38bb03 Changed how we decide whether or not to build cdCommands. 2001-09-20 20:09:14 +00:00
Jeff Hill
20ab67691f dont deadlock if ca_clear_event() is in the subscription update callback 2001-09-20 17:45:20 +00:00
Jeff Hill
a04d40082c fixed put notify blocking bug and put notify type mapping bug 2001-09-20 17:38:04 +00:00
Jeff Hill
e5d3ebaf70 catch out of bounds read 2001-09-20 17:34:06 +00:00
Jeff Hill
322b492f7f improved sync group startup sequence 2001-09-20 17:30:50 +00:00
Jeff Hill
329d91c595 improved subscription startup sequence 2001-09-20 17:30:26 +00:00
Jeff Hill
347997bed1 install ca diagnostics header file 2001-09-20 17:29:51 +00:00
Jeff Hill
f3edc221f3 catch additional exceptions and modified subscription startup
to work better with local channels
2001-09-20 17:29:25 +00:00
Jeff Hill
44e8fa75d3 improved test for local channels 2001-09-20 17:27:49 +00:00
Jeff Hill
bffacccf79 improved tcpiiu shut down seq 2001-09-20 17:26:02 +00:00
Jeff Hill
ba36f44354 allow use from C++ 2001-09-20 17:25:30 +00:00
Jeff Hill
d80c01f2b2 removed deadlock vulnerabilities 2001-09-20 17:24:54 +00:00
Jeff Hill
21f5c8a0de throw standard exception class 2001-09-20 17:17:10 +00:00
Jeff Hill
bdd20db4f2 dont initiate IO in constructor 2001-09-20 17:16:45 +00:00
Jeff Hill
863b0ebb03 added new exception 2001-09-20 17:13:19 +00:00
Jeff Hill
7597f551ad improved tcp shut down seq 2001-09-20 17:10:23 +00:00
Jeff Hill
b7128a8aa2 added stop threads member func 2001-09-20 17:09:50 +00:00
Marty Kraimer
f89f31b505 if epicsEventWaitWithTimeout fails dont continue 2001-09-20 13:46:37 +00:00
Marty Kraimer
42ecec6b11 fix bugs in dbLockShowLocked 2001-09-20 13:46:08 +00:00
Marty Kraimer
93d2705002 must Unlock 2001-09-20 11:54:27 +00:00
Marty Kraimer
ecd1cafe46 replace ca_search_and_connect with ca_create_channel 2001-09-20 11:54:05 +00:00
Jeff Hill
296304ca00 doc 2001-09-19 15:45:38 +00:00
Janet B. Anderson
66e3a3de22 Updated comment. 2001-09-18 19:01:55 +00:00
Janet B. Anderson
38269f4f21 Added vim environment variables. 2001-09-18 19:00:48 +00:00
Jeff Hill
0d9df123c6 moved lock to avoid recursive lock and potential deadlock 2001-09-18 17:58:54 +00:00
Jeff Hill
2893c435ac doc 2001-09-18 17:06:31 +00:00
Jeff Hill
bce2df010c fixed comment 2001-09-17 17:44:23 +00:00
Jeff Hill
14d152bcaf cosmetic 2001-09-17 17:34:41 +00:00
Andrew Johnson
f280f73a64 Tidying up. 2001-09-14 20:06:07 +00:00
Andrew Johnson
65871f02e8 Tidying up convertRelease.pl stuff. 2001-09-14 20:02:30 +00:00
Janet B. Anderson
34d439983d Tool file description updates. 2001-09-14 17:28:33 +00:00
Janet B. Anderson
29e4cd9f61 Added definitions needed by base build. 2001-09-13 22:06:05 +00:00
Janet B. Anderson
f855880786 Now creates CONFIG_APP_INCLUDE file. 2001-09-13 21:46:22 +00:00
Janet B. Anderson
01e185e1fa Added RELEASE_INCLUDES and RELEASE_DBDFLAGS.
Removed base/configure defs, put defs in app/ext CONFIG_APP_INCLUDE file.
2001-09-13 21:43:53 +00:00
Andrew Johnson
c5d3e65511 Retain order of RELEASE entries in CONFIG_APP_INCLUDE and cdCommands.
Added <app>_HOST_LIB variable to CONFIG_APP_INCLUDE.
2001-09-13 21:30:23 +00:00
Andrew Johnson
365c82023f Re-ordered and renamed some output from configAppInclude. 2001-09-13 20:54:42 +00:00
Janet B. Anderson
2891f74d54 Removed reference to depends. 2001-09-13 20:05:20 +00:00
Janet B. Anderson
0fe3dcdbe7 Fix for remove command filenames. 2001-09-13 19:53:20 +00:00
Andrew Johnson
28435f8f09 Added instructions about configure/Makefile and configure/RULES.ioc. 2001-09-13 19:42:51 +00:00
Janet B. Anderson
0966f06cb9 dbMakeDBDDepends replaced by mkmf.pl. 2001-09-13 19:34:38 +00:00
Janet B. Anderson
8d7cb4ce1d Replaced makeDbDepends.pl with mkmf.pl. 2001-09-13 19:31:06 +00:00
Janet B. Anderson
118dcad5b4 Many DEPENDS changes. Many other changes also. 2001-09-13 19:29:58 +00:00
Janet B. Anderson
dbeab43347 Moved HOST_HDEPENDS_CMD here. 2001-09-13 19:28:42 +00:00
Janet B. Anderson
ce150624fb Removed HOST_HDEPENDS_CMD. 2001-09-13 19:27:04 +00:00
Janet B. Anderson
8cdc639fb9 Removed duplicate CROSS_CXXFLAGS. Changed CROSS_HDEPENDS_CMD to MKMF.
HDEPENDS_INCLUDES_MKMF set to files with relative path names only.
2001-09-13 19:24:20 +00:00
Andrew Johnson
0d2922fbcf Replaced with convertRelease.pl. 2001-09-13 19:19:15 +00:00
Andrew Johnson
575969a672 Switch to using convertRelease.pl script, run a consistency check in
application <top>/configure directories.
2001-09-13 19:17:52 +00:00
Andrew Johnson
c51161f7a4 New tool, replaces makeConfigAppInclude.pl makeIocCdCommands.pl
and makeRulesInclude.pl and also performs consistency checks of
application RELEASE files.
2001-09-13 19:14:36 +00:00
Janet B. Anderson
87661c57d4 R3.14.0beta1 2001-09-13 19:13:12 +00:00
Janet B. Anderson
c1ae00ab21 Removed references to MAKEDBDEPENDS and MAKEDBDDEPENDS. 2001-09-13 19:12:38 +00:00
Janet B. Anderson
c5fbd3e8ec Moved GCC_EXEC_PREFIX to CONFIG.CrossCommon. 2001-09-13 19:11:45 +00:00
Janet B. Anderson
f7b89d58e9 Moved GCC_EXEC_PREFIX definition here.
Removed -B option since GCC_EXEC_PREFIX is defined.
2001-09-13 19:11:12 +00:00
Janet B. Anderson
3334174809 Added -mpentium cflag. 2001-09-13 17:50:57 +00:00
Marty Kraimer
c39788961e dont call errlogPrintf if no memory 2001-09-13 17:45:37 +00:00
Janet B. Anderson
a5aa5c1543 Updated for R3.14.0.beta1. 2001-09-13 16:19:09 +00:00
Jeff Hill
9f96c98ff3 removed explicit template mechanism 2001-09-13 15:10:41 +00:00
Jeff Hill
60cd0e880b removed templ inst mechanism 2001-09-13 15:06:46 +00:00
Jeff Hill
2b9212727f removed explicit template mechanism 2001-09-13 15:02:15 +00:00
Janet B. Anderson
cc382a10e0 Updates for R3.14.0beta1. 2001-09-13 14:58:24 +00:00
Jeff Hill
82a6c078a9 no-longer needed since gnu now uses Borland style auto template instantiation 2001-09-13 14:56:32 +00:00
Janet B. Anderson
47779a4492 Comment changes only. 2001-09-12 14:23:02 +00:00
Janet B. Anderson
cb22f79e6d Removed HOST_HDEPENDS_CMD definition, belongs in CONFIG_SITE. 2001-09-12 14:22:24 +00:00
Jeff Hill
16aa60586d changed ca create channel doc 2001-09-11 18:10:38 +00:00
Jeff Hill
6ce71a7b54 doc 2001-09-11 14:34:59 +00:00
Jeff Hill
cda6791496 we must call shutdown in addition to close on Linux 2001-09-10 23:52:57 +00:00
Jeff Hill
ccd2eb30bd wait for connection count to return to normal 2001-09-10 21:55:21 +00:00
Janet B. Anderson
7507eec873 Changed alpha3 to beta1. 2001-09-10 21:33:32 +00:00
Jeff Hill
eb1a83c71b removed unnec lock 2001-09-10 20:44:02 +00:00
Jeff Hill
049953e8ac COSMETIC 2001-09-10 20:43:35 +00:00
Jeff Hill
bf5ffaf41b workaround for new ( std::no_throw ) Tornado II compiler bug check 2001-09-10 14:45:45 +00:00
Jeff Hill
0afaadb981 use std::bad_alloc() 2001-09-10 14:32:49 +00:00
Jeff Hill
dcd20fa978 use proper form of delete 2001-09-08 00:48:22 +00:00
Jeff Hill
6b2ff88e40 fixed gnu warnings 2001-09-07 23:32:26 +00:00
Jeff Hill
6426c3093e make gnu hoppy 2001-09-07 23:29:35 +00:00
Jeff Hill
bdd52c1eb4 added missing include 2001-09-07 23:27:10 +00:00
Jeff Hill
43a5ce763b fixed gnu warning 2001-09-07 23:25:54 +00:00
Jeff Hill
ad819cba65 restructure to eliminate use of select 2001-09-07 23:02:32 +00:00
Jeff Hill
6517109e7e cosmetic 2001-09-07 23:00:47 +00:00
Jeff Hill
3fbee94fde allow creation of end of seq iterator 2001-09-07 22:59:26 +00:00
Marty Kraimer
c92a488c82 remove EPICS_TS_MIN_WEST add EPICS_TIMEZONE 2001-09-06 19:15:56 +00:00
Marty Kraimer
81d04e3883 remove comments about TIMEZONE 2001-09-06 19:11:38 +00:00
Marty Kraimer
98cf88ab66 use EPICS_TIMEZONE instead of EPICS_TS_MIN_WEST 2001-09-06 19:09:27 +00:00
Marty Kraimer
d091596772 remove EPICS_TS_MIN_WEST add EPICS_TIMEZONE 2001-09-06 19:08:32 +00:00
Marty Kraimer
dce3f534ce set TIMEZONE 2001-09-06 19:07:53 +00:00
W. Eric Norum
a4e4cfab7c Give the select prototype C linkage. 2001-09-05 19:59:26 +00:00
Jeff Hill
4d4b491517 removed GNU compiler ifdef 2001-09-05 00:50:36 +00:00
Marty Kraimer
2b246be69b if null record name show all 2001-09-04 13:59:44 +00:00
Janet B. Anderson
d5a587d616 Reformatted some lines. 2001-08-31 16:33:29 +00:00
Janet B. Anderson
1ce15d8137 Adding txt version of README.htm. 2001-08-31 16:22:56 +00:00
Jeff Hill
d70f4f718f fixed redundant titles 2001-08-29 23:57:27 +00:00
Jeff Hill
e4da2bf773 added doc for channel priorities 2001-08-29 23:50:13 +00:00
Jeff Hill
d7b7747887 fixed amaya link 2001-08-29 21:55:08 +00:00
Jeff Hill
3a5fbed882 added date entry 2001-08-29 21:47:46 +00:00
Jeff Hill
4fa81a1ac6 added amaya icon 2001-08-29 21:45:51 +00:00
Jeff Hill
7fb6862dfb fixed sun pro warning 2001-08-29 20:25:24 +00:00
Jeff Hill
40e476f7b9 test the entire priority range 2001-08-29 19:01:09 +00:00
Jeff Hill
36770de102 store the priority for use in casr 2001-08-29 18:57:50 +00:00
Jeff Hill
56fa1c87e8 fixed gnu warning 2001-08-29 18:43:16 +00:00
Jeff Hill
0c85c515f1 fixed gnu warning and added priority to casr 2001-08-29 18:42:57 +00:00
Jeff Hill
07e9ed18bf added sendVersion member func 2001-08-29 17:57:19 +00:00
Jeff Hill
8aa2d63967 send the version when connecting 2001-08-29 17:56:40 +00:00
Jeff Hill
b136bfa3ed added destroyInProgress member 2001-08-29 17:55:59 +00:00
Jeff Hill
8982740d23 fixed shutdown sequence bug 2001-08-29 17:55:16 +00:00
Jeff Hill
1c76b5d80a cosmetic 2001-08-29 17:54:37 +00:00
Jeff Hill
40e19e0118 added sendVersion() and getMinorVersion() calls 2001-08-29 17:53:55 +00:00
Jeff Hill
becfc8ca3c added change priority call 2001-08-29 17:52:38 +00:00
Jeff Hill
fc1d377622 added a test to verify client side priorities 2001-08-29 17:48:39 +00:00
Jeff Hill
74b5d6093f changed noop request to version request 2001-08-29 17:48:02 +00:00
Jeff Hill
2d662d4d08 changed standard priorities 2001-08-29 17:47:37 +00:00
Jeff Hill
360841bdc1 changed name of priority member 2001-08-29 17:44:50 +00:00
Jeff Hill
fe7fb3ba50 change priority of client when recinving the version request 2001-08-29 17:42:09 +00:00
Jeff Hill
15a9e07ab2 send server's minor version to client during connect sequence 2001-08-29 17:41:31 +00:00
Jeff Hill
9b876d82dd changed the way that thread priorities are computed 2001-08-29 17:40:39 +00:00
Jeff Hill
8c103d1cb9 added priority field 2001-08-29 17:39:51 +00:00
Jeff Hill
abf2b19755 define a priority range for the CA server 2001-08-29 17:38:48 +00:00
Jeff Hill
d6bbb0f3ef use CA server high for priority offset 2001-08-29 17:37:58 +00:00
Janet B. Anderson
34ffeae3eb Removed test on LIBTARGETS and SHARED_LIBRARIES.
Added PURIFY to link cmd.
2001-08-29 15:15:26 +00:00
Janet B. Anderson
86055bce3d Changed SHRLIBNAME to SHRLIBNAME_YES. 2001-08-29 15:11:37 +00:00
Janet B. Anderson
e3f86b5cec Make MKMF the default depends tool. 2001-08-29 15:02:34 +00:00
Janet B. Anderson
5b6f17f7db Find R3.13 tools in HOST_ARCH directory. 2001-08-29 15:00:56 +00:00
Janet B. Anderson
678818b59f Change for purify - define GCC_EXEC_PREFIX only for cross builds. 2001-08-29 15:00:06 +00:00
Jeff Hill
f3dc728e89 fixed more of the links 2001-08-28 00:20:55 +00:00
Jeff Hill
822d4dd79f removed debug printfs 2001-08-27 17:34:26 +00:00
Jeff Hill
c90112a04c fixed lockup when deleting events in flow control mode 2001-08-27 17:15:37 +00:00
Jeff Hill
9c892d128f take a lock when decrementing event queue quota because this is
no longer atomic on RISC processors
2001-08-24 18:48:14 +00:00
Jeff Hill
8ad35f4038 improved dbel diagnostic 2001-08-24 18:42:56 +00:00
Jeff Hill
6d7cb09151 zero out pad bytes (supress purify warning) 2001-08-24 16:30:02 +00:00
Jeff Hill
d556e3375c cosmetic 2001-08-24 16:29:19 +00:00
Jeff Hill
5a808ee4d5 include typeinfo 2001-08-23 21:59:33 +00:00
Jeff Hill
ab82d8c6fc fixed gnu warnings 2001-08-23 21:36:31 +00:00
Jeff Hill
d8eded00c3 installed 2001-08-23 21:33:26 +00:00
Jeff Hill
f9a9010ad2 added prioritry parameter, but ignore it for now 2001-08-23 21:24:57 +00:00
Jeff Hill
a4144e9675 new create channel API 2001-08-23 21:15:41 +00:00
Jeff Hill
4daac95e18 added channel create priority and catch C++ exceptions before they enter C code 2001-08-23 21:14:56 +00:00
Jeff Hill
aef70acbb9 fixed no write access test management bug 2001-08-23 21:13:25 +00:00
Jeff Hill
d4e3b1b626 now there can be multiple tcpiiu per BHE 2001-08-23 21:12:14 +00:00
Jeff Hill
798e5b6d3a fixed hang during channel delete and added client prioritization 2001-08-23 21:10:34 +00:00
Jeff Hill
dd723369fe added new priority parameter 2001-08-23 21:08:42 +00:00
Jeff Hill
984d8cac2b added bad priority error constant 2001-08-23 21:03:49 +00:00
Jeff Hill
a2cf8335fc cosmetic 2001-08-23 21:02:48 +00:00
Jeff Hill
3235b59641 added new priority parameter 2001-08-23 21:02:22 +00:00
Jeff Hill
56e9cbfd67 beacon period no-longer fetched through the IIU 2001-08-23 21:01:12 +00:00
Jeff Hill
0aa19f05bc avoid double io cancel 2001-08-23 20:54:00 +00:00
Jeff Hill
44ff5cf058 changes resulting from loss of one-to-one correlation between BHE and tcpiiu
and added new priority parameter
2001-08-23 20:53:24 +00:00
Jeff Hill
719340369c changes resulting from loss of one-to-one correlation between BHE and tcpiiu 2001-08-23 20:52:32 +00:00
Jeff Hill
29218a2a27 added priority parameter 2001-08-23 20:51:29 +00:00
Jeff Hill
7af4623511 call show routines of bucket entries from the resource table show function 2001-08-23 20:46:53 +00:00
Jeff Hill
11d2c6b698 cosmetic 2001-08-23 20:45:42 +00:00
Janet B. Anderson
6eeb8c74a2 Supressed RM output lines. Made *_registerRecordDeviceDriver.cpp precious. 2001-08-23 19:09:18 +00:00
Janet B. Anderson
97d679e350 Changes for win32 output. 2001-08-23 19:02:56 +00:00
Janet B. Anderson
7c753f5383 Modified test jba override comments. 2001-08-23 18:59:12 +00:00
Janet B. Anderson
70b49f3ba4 Added HDEPENDS definitions. 2001-08-23 18:55:12 +00:00
Janet B. Anderson
fe2b7fd8fc Use solaris compiler for HDEPENDS. 2001-08-23 18:53:57 +00:00
Janet B. Anderson
1a0bbfb0ca Modified comments. 2001-08-23 18:50:24 +00:00
Janet B. Anderson
16f3eff801 Added mkmf tool definition. 2001-08-23 18:49:03 +00:00
Janet B. Anderson
91fe7cecfb Simplified clean rule. 2001-08-23 18:48:05 +00:00
Janet B. Anderson
05d89d878e Added basename function. 2001-08-21 15:01:28 +00:00
Janet B. Anderson
2034323254 Removed duplicate definitions. 2001-08-20 19:38:05 +00:00
Andrew Johnson
24351032cf Moved SLOPE to before LINEAR, just in case any apps rely on the first
breakpoint table being LINEAR+1 (unlikely, but possible).  This also
deliberately breaks any apps that haven't converted to using constants
defined in the generated menu*.h files.
2001-08-20 15:46:51 +00:00
Andrew Johnson
21b7bf8b6b Removed special_linconv() routines, ESLO and EOFF can be set manually. 2001-08-17 22:44:46 +00:00
Andrew Johnson
a1b9e58cd0 ESLO and EOFF are now design fields, usable when no device support
special_linconv() routine is provided (for Raw Soft support).
LINR=SLOPE also allows design-time and CA setting of ESLO & EOFF.
Value changes by device support also cause CA monitors to be posted.
2001-08-17 22:34:58 +00:00
Andrew Johnson
99e5535085 Added SLOPE conversion type, for manual entry of ESLO and EOFF values. 2001-08-17 22:32:49 +00:00
Andrew Johnson
937b575ec3 Removed spurious menuLinr.dbd (LINR uses menuConvert found in src/bpt). 2001-08-17 22:30:59 +00:00
Jeff Hill
b1f414543a dont delay for initial round trip estimate until first search 2001-08-16 23:31:53 +00:00
Jeff Hill
d69d957ebe removed double ECA_DISCONN exception callback 2001-08-16 21:22:48 +00:00
Marty Kraimer
5e71997d09 backout RAWL, RAWF 2001-08-16 15:27:04 +00:00
Marty Kraimer
8f619b5f8d backout RAWL,RAWH; allow user to set ESLO,EOFF 2001-08-16 15:26:14 +00:00
Jeff Hill
6e42c7e3e9 fixed gnu warning 2001-08-16 01:49:19 +00:00
Jeff Hill
48da409965 reduce the number of error constants in use 2001-08-16 01:26:55 +00:00
Jeff Hill
c35b876af4 made pName() public and added channel destroy notify in subscription class 2001-08-16 01:24:59 +00:00
Jeff Hill
19a8fe6e7b call channel destroy notify mf for each attached IO when chan is destroyed 2001-08-16 01:24:09 +00:00
Jeff Hill
d67fcbdb67 added channel destroy notify mf 2001-08-16 01:23:33 +00:00
Jeff Hill
cc191cddbc send channel destroy exception to all IO and send disconnect exception
to subscription IO
2001-08-16 01:22:22 +00:00
Jeff Hill
89d93df035 new error constant and mark defunct entries 2001-08-16 01:20:30 +00:00
Jeff Hill
93e745ef83 supress channel destroy exception in "old" API layer 2001-08-16 01:19:52 +00:00
Jeff Hill
9bbb9c1314 reduce the numbe rof error constants in use 2001-08-16 01:19:03 +00:00
Jeff Hill
217cc10840 supress channel destroy exception in "old" API layer and reclaim storage
for oldSubscription when channel is destroyed
2001-08-16 01:18:05 +00:00
Jeff Hill
977299cffd cosmetic 2001-08-16 01:16:43 +00:00
Jeff Hill
f32583bdbd fixed benign gnu warning 2001-08-16 01:16:22 +00:00
Jeff Hill
625beb2300 improved test 2001-08-13 21:08:12 +00:00
Jeff Hill
46bf66f198 removed function parameter 2001-08-13 21:07:44 +00:00
Jeff Hill
f77bdc3b54 removed unused code 2001-08-13 21:06:38 +00:00
Jeff Hill
2f50543112 changes to ensure graceful shutdown on LInux 2001-08-13 21:06:08 +00:00
Jeff Hill
2a1d135889 dont pull bytes out of sock until obtaining the cb lock so single
threaded apps work better
2001-08-13 21:04:58 +00:00
Jeff Hill
48ea56d295 removed unused code 2001-08-13 20:30:35 +00:00
Marty Kraimer
b3f2c87697 make sure prompt has a value 2001-08-13 15:57:45 +00:00
Jeff Hill
0c9c5c1682 removed osi shutdown interface 2001-08-13 14:02:10 +00:00
Jeff Hill
224c7494b6 cosmetic 2001-08-13 14:01:50 +00:00
Marty Kraimer
9b117a376e fix compilation errors 2001-08-13 13:11:09 +00:00
Janet B. Anderson
ce506a77a7 Changes to mkmf. 2001-08-10 22:17:57 +00:00
Jeff Hill
81b169f059 *** empty log message *** 2001-08-10 19:47:20 +00:00
Janet B. Anderson
79d648229e Merged changes from epics_R3_13_1_branch branch. 2001-08-10 16:26:19 +00:00
Jeff Hill
dbf7b13e9f added some strftime tests 2001-08-10 00:46:15 +00:00
Jeff Hill
d19294499c fixed strftime formating 2001-08-10 00:45:53 +00:00
Jeff Hill
d6587ddca1 reliable solution for shutdown differences 2001-08-10 00:07:17 +00:00
Jeff Hill
192632eaf2 doc 2001-08-10 00:07:06 +00:00
W. Eric Norum
b5322ea925 Add new RTEMS initialization/configuration library. 2001-08-09 20:01:11 +00:00
W. Eric Norum
6fad25e2d1 Move RTEMS initialization/configuration files from the libCom
os-dependent directory to their own directory.
This solves the problem in which these files include header files
which are not yet installed when libCom is being built.
2001-08-09 17:54:06 +00:00
Jeff Hill
cfc8c2b8e0 better message 2001-08-09 16:29:56 +00:00
Jeff Hill
73b3a37881 fixed shutdown to work for circuits that are connecting 2001-08-09 00:56:15 +00:00
Jeff Hill
2c71674012 supress disconnect message unles DEBUG is set 2001-08-09 00:55:05 +00:00
Jeff Hill
6c2303a958 added try catch block to pend io 2001-08-09 00:54:08 +00:00
Jeff Hill
331b9b3d8b dont specify the default fd manager 2001-08-09 00:42:17 +00:00
Jeff Hill
7363d6a125 o increse stack size for threads calling call backs
o use shutdown() to knock threads out of recv(), but will this work on Solaris ?
The above change reacts to bugs in XTNextEvent() when an fd that has been
closed is registerd with XtAppAddInput
2001-08-08 23:51:33 +00:00
Jeff Hill
ec6806d071 added try catch to be safe 2001-08-08 23:48:15 +00:00
Janet B. Anderson
b5c0f11f5f Corrected spelling and line size. 2001-08-08 20:29:11 +00:00
Janet B. Anderson
634f25873b Initial version 2001-08-08 20:19:08 +00:00
Marty Kraimer
9765db4254 check for chid null 2001-08-08 15:04:34 +00:00
W. Eric Norum
4ebb8f4351 Remove unused include file.
Include header to get stack check function prototypes.
2001-08-07 21:44:22 +00:00
Janet B. Anderson
296d94a2c5 Added caExample_SRCS definition - SRCS required for automated depends. 2001-08-07 16:44:23 +00:00
Janet B. Anderson
355c0313f6 Removed R3.13 files Makefile.Host and Makefile.Ioc. 2001-08-07 16:32:03 +00:00
Janet B. Anderson
4cb9d0b7d8 Made MKMF the default for HOST_HDEPENDS_CMD. 2001-08-07 14:42:43 +00:00
Jeff Hill
7119b68a3b fixed borland warning 2001-08-06 23:27:53 +00:00
Jeff Hill
58989fb8e1 supress additional warnings 2001-08-06 23:22:17 +00:00
Jeff Hill
1d07007562 supress messages triggered by normal C++ coding partices 2001-08-06 21:00:42 +00:00
Jeff Hill
f47210502e use & in front of C++ member func pointer 2001-08-06 17:43:52 +00:00
Jeff Hill
de4f57cf5c added html doc 2001-08-03 00:43:25 +00:00
Jeff Hill
6beb555fcc installed into CVS 2001-08-03 00:41:56 +00:00
Jeff Hill
cfa8a80ee1 uninstalled 2001-08-03 00:41:37 +00:00
Jeff Hill
cbb5d190f5 installed into CVS 2001-08-03 00:34:26 +00:00
Jeff Hill
b05630a986 fixed benign purify warning 2001-08-02 23:58:40 +00:00
Jeff Hill
01a63dd7c5 made compatible with C++ test codes in mrkSoftTest 2001-08-02 22:46:59 +00:00
Janet B. Anderson
9391e3d9cc Added mkmf.pl 2001-08-02 22:09:18 +00:00
Janet B. Anderson
a83f3f9214 Added HDEPENDS_CMD option for compiler or mkmf.pl 2001-08-02 22:09:16 +00:00
Jeff Hill
e661474c44 fixed solaris warnings 2001-08-02 21:21:26 +00:00
Jeff Hill
96557512f5 cosmetic 2001-08-02 21:20:54 +00:00
Jeff Hill
758eaede80 added diagnostic 2001-08-02 21:20:13 +00:00
Jeff Hill
0205741354 improved beacon period test 2001-08-02 21:19:50 +00:00
Jeff Hill
2e34ee4829 improved recv schedualing 2001-08-02 18:17:20 +00:00
Jeff Hill
dc50563da0 cleaned out recvFlag 2001-08-02 18:16:55 +00:00
Jeff Hill
c1e34b85fd fixed IIU disconnect problem 2001-08-02 01:35:27 +00:00
Jeff Hill
d0e4a93563 simplified schedualing 2001-08-02 00:34:46 +00:00
Janet B. Anderson
cd43af94e1 Initial version. 2001-08-01 19:34:54 +00:00
Jeff Hill
4cb0e2b7cc use proper form of include 2001-08-01 19:18:08 +00:00
Marty Kraimer
1fab139eca really cant git rid of module_types.h and task_params.h 2001-08-01 18:14:39 +00:00
Marty Kraimer
cf99837560 get rid of dev/drv support; use OBJ library only 2001-08-01 14:33:15 +00:00
Marty Kraimer
9989ff73fe Make vxCom an OBJ library 2001-08-01 14:31:59 +00:00
Marty Kraimer
86d42a8283 add trailing */ 2001-08-01 13:34:13 +00:00
Jeff Hill
ba6a096e86 a fix for use of posix isnan() function 2001-07-31 21:35:26 +00:00
Jeff Hill
11ffedc376 removed extraneous else 2001-07-31 21:31:47 +00:00
Marty Kraimer
452d4df4fb remove all dev/drv support 2001-07-31 19:49:19 +00:00
Marty Kraimer
b85bdd318b increase stack size 2001-07-30 15:27:44 +00:00
Janet B. Anderson
464cb4b26b Modified for automated depends. 2001-07-26 20:31:02 +00:00
Janet B. Anderson
33dbdc68a3 Added automated depends for created db and dbd files. 2001-07-26 20:27:16 +00:00
Janet B. Anderson
5930f5b7d9 Reordered SRC_DIRS for consistancy.
Allow CONFORM flags to be target, target/osclass, and target/t-a specific.
2001-07-26 20:19:06 +00:00
Marty Kraimer
216105deeb add RAWL RAWF 2001-07-26 15:57:35 +00:00
Marty Kraimer
a5ebba6be3 use ansi function prototypes 2001-07-26 15:57:03 +00:00
Marty Kraimer
181f1e720f add support for RAWL RAWF 2001-07-26 15:56:33 +00:00
Marty Kraimer
9ebaf81de3 use isnan from standard library support
For vxWorks provide implementation
2001-07-26 15:47:12 +00:00
Marty Kraimer
11e57aa52d isnan was not impmemented on vxWorks 2001-07-26 15:43:22 +00:00
Ralph Lange
8a99fac979 Fixed HPUX warnings. 2001-07-26 08:58:34 +00:00
Ralph Lange
bbd6c9ef90 Fixed HPUX warnings. 2001-07-26 08:14:56 +00:00
Ralph Lange
3712987800 Fixed HPUX warnings. 2001-07-26 07:59:07 +00:00
Ralph Lange
e49a919434 Fixed HPUX errors (typename) 2001-07-26 07:45:30 +00:00
Janet B. Anderson
84007a0b20 Updated for header dependancy changes. 2001-07-25 20:46:09 +00:00
Janet B. Anderson
f11205de68 Comment changes. 2001-07-25 18:20:25 +00:00
Marty Kraimer
e573c4362f make ringPointerTestMain a .cpp file; timerTest is obsolete 2001-07-25 15:21:38 +00:00
Marty Kraimer
ca14e4eabc make exampleMain a .cpp file 2001-07-25 15:10:12 +00:00
Janet B. Anderson
c20c4c5380 Initial version. 2001-07-25 15:05:42 +00:00
Janet B. Anderson
fd6d55f1ae Changes for R3.14 2001-07-25 14:44:46 +00:00
Janet B. Anderson
5178220160 Changes to automatically generate header file dependancies 2001-07-25 14:44:44 +00:00
Janet B. Anderson
443f95471e CODE flag changes for cygwin build 2001-07-25 14:40:19 +00:00
Janet B. Anderson
bee24cadd8 Changes to automatically generate header dependancy files. 2001-07-25 14:40:18 +00:00
Janet B. Anderson
973e8eb0bc Edit updates. 2001-07-24 19:46:14 +00:00
Marty Kraimer
7c81b6920e remove old style C; use signed char for cvtCharToString; get rid of some warning messages 2001-07-24 13:47:29 +00:00
Marty Kraimer
420d583db2 allow hex and octal constants 2001-07-23 14:43:36 +00:00
Marty Kraimer
694f21d8b9 fix breakpoint table problem 2001-07-23 14:42:59 +00:00
Marty Kraimer
018f0b5186 Allow hex and octal constants for constant links 2001-07-23 14:39:40 +00:00
Marty Kraimer
3031016853 put VAL field in a promptgroup 2001-07-23 14:37:19 +00:00
Janet B. Anderson
ffdecd4a21 Undefine __STDC__ added for borland build. 2001-07-23 14:10:08 +00:00
Marty Kraimer
7df3905b5c hpcompat.c was needed for HPUX 9; not supported 2001-07-23 13:09:55 +00:00
Ralph Lange
a6e67869db Fixed Tornado warnings. 2001-07-20 17:38:20 +00:00
Ralph Lange
a67444ea1e Fixed HPUX 11 problem: isnan() is a macro. 2001-07-20 17:36:41 +00:00
Ralph Lange
48aac3bc86 Fixed Tornado warnings 2001-07-20 17:33:50 +00:00
Janet B. Anderson
993fbd06e9 Updated to solaris 8 POSIX flags. 2001-07-19 15:27:44 +00:00
Jeff Hill
4698215212 added try lock test 2001-07-16 18:14:53 +00:00
Jeff Hill
35110d3e88 fixed incorrect status returned from tryLock() 2001-07-16 17:30:51 +00:00
Jeff Hill
a520078ce2 fixed spelling 2001-07-16 17:12:57 +00:00
Jeff Hill
e095b7feba fixed sun pro warnings 2001-07-16 16:59:37 +00:00
Jeff Hill
13f8bc14ec better test to determine if this is a receive processing thread,
and moved delay == 0 is wait forever to legacy ca_pend_io interface
2001-07-16 15:39:59 +00:00
Jeff Hill
ef54680c9d better test to determine if this is a receive processing thread 2001-07-16 15:37:55 +00:00
Jeff Hill
4d3cf68a21 moved odd ball delay == 0.0 is wait forever behavior into
legacy ca_pend_io interface.
2001-07-16 15:36:19 +00:00
Jeff Hill
dd3baf0ce4 fixed and also simplified locking logic 2001-07-13 23:12:41 +00:00
Jeff Hill
57e8a344fc moved odd ball delay == 0.0 is wait forever behavior into
legacy ca_pend_event interface so that we dont need to
keep doing this in the future.
2001-07-13 23:11:19 +00:00
W. Eric Norum
9803b24aa9 Ensure that host name is always null-terminated. 2001-07-13 18:48:03 +00:00
Jeff Hill
24a08c9c78 fixed problem discovered by Eric Norum 2001-07-13 18:08:49 +00:00
Jeff Hill
df9b5703d5 more tests 2001-07-13 16:10:08 +00:00
Jeff Hill
d0e047f78f correct fix for thread switch problem on Linux 2001-07-13 16:06:39 +00:00
Marty Kraimer
d1c39d4089 dbNameToAddr dod the conversion 2001-07-13 13:16:19 +00:00
Jeff Hill
20aebe4460 kludge to test thread switch on Linux 2001-07-13 02:16:07 +00:00
Jeff Hill
2758df6db2 fixed potential deadlock 2001-07-13 02:06:16 +00:00
Jeff Hill
35d23ac6bd fixed cac rundown bugs 2001-07-13 01:58:23 +00:00
Jeff Hill
a29b0fafc7 changed name of constant and added block until recv
backlog is complete to pend_event
2001-07-12 23:57:24 +00:00
Jeff Hill
ef4ebf4d4b work correctly on systems without preemptive schedualing 2001-07-12 23:48:14 +00:00
Jeff Hill
bc0b51dbe4 made mf private 2001-07-12 23:25:58 +00:00
Jeff Hill
207f25f469 fixed typo 2001-07-12 18:03:45 +00:00
Jeff Hill
c61e68b4e3 revert to using virtual destroy() to destroy timers 2001-07-12 17:53:51 +00:00
Jeff Hill
b061bb6eb9 no need to save pointer to timer queue now 2001-07-12 16:04:04 +00:00
Jeff Hill
1042e657c8 improved internal class hierarchy 2001-07-12 16:02:54 +00:00
Jeff Hill
41a2ba5a9b make timer queue visible from epicsTimer 2001-07-12 02:23:14 +00:00
Jeff Hill
f82a4a28d2 fixed comment 2001-07-12 02:20:55 +00:00
Jeff Hill
1403317247 fixed gnu warning 2001-07-11 23:47:40 +00:00
Jeff Hill
2923f64442 improved syntax diagnostic 2001-07-11 23:33:53 +00:00
Jeff Hill
e5b28e846b adapt to new timer API 2001-07-11 23:31:45 +00:00
Jeff Hill
a16db0ee59 optimized word pop 2001-07-11 23:30:24 +00:00
Jeff Hill
ca2c93bda4 improved schedualing of recv process thread 2001-07-11 23:28:57 +00:00
Jeff Hill
72cbc5edf0 added recv proc flush postpone 2001-07-11 23:26:56 +00:00
Jeff Hill
c285cbfa30 optimized out v41ok test 2001-07-11 23:25:32 +00:00
Jeff Hill
bab43925ac removed dated entry 2001-07-11 23:24:30 +00:00
Jeff Hill
9a1023a5da optimized word pop 2001-07-11 23:24:02 +00:00
Jeff Hill
1ac9d69c64 added new pop routines 2001-07-11 23:22:08 +00:00
Jeff Hill
94a05a3077 removed junk 2001-07-11 23:19:45 +00:00
Jeff Hill
a5c339209b improved schedualing of recv process thread 2001-07-11 23:19:13 +00:00
Jeff Hill
b1fee9b6e3 detect problems with ca poll 2001-07-11 23:17:21 +00:00
Jeff Hill
8ffb5e5fb9 delete timer via timer queue 2001-07-11 23:16:34 +00:00
Janet B. Anderson
71fa55fd2a Removed unused shrlib suffix. 2001-07-09 20:05:04 +00:00
Janet B. Anderson
7b54119ff8 Changed to gnu compiler for depends rule. 2001-07-09 20:04:24 +00:00
Jeff Hill
21dc0da78c fixed benign memory leak 2001-07-05 18:01:03 +00:00
Jeff Hill
d36ee2b634 cosmetic 2001-07-05 16:11:37 +00:00
Jeff Hill
7a6a6dc53e fixed comment 2001-07-05 16:10:54 +00:00
Jeff Hill
5640c38032 removed garbage 2001-07-03 23:57:58 +00:00
Jeff Hill
c717ab3aec track with timer API changes 2001-07-03 23:36:10 +00:00
Janet B. Anderson
a9f1052b59 Removed unused HOST_OPT_FLAGS definition. 2001-07-03 23:13:56 +00:00
Marty Kraimer
29b706dd35 call asSubRecordFunctionsRegister 2001-07-03 19:25:39 +00:00
Jeff Hill
5a9517cc4c update the tiome stamp when scanning 2001-07-03 18:50:24 +00:00
Jeff Hill
803d57042d improved "usage" diagnostic 2001-07-03 18:04:55 +00:00
Jeff Hill
8f07a836f0 use errlogPrintf 2001-07-03 18:04:30 +00:00
Jeff Hill
0eba4833fb improved "usage" diagnostic and cmd line syntax 2001-07-03 18:03:49 +00:00
Jeff Hill
40ed20bdb1 use uniform PV name extension 2001-07-03 18:03:12 +00:00
Jeff Hill
40dab8bd5b fixed spelling in comment 2001-07-03 18:01:40 +00:00
Jeff Hill
2b5d0af492 upgraded test diagnostics 2001-07-03 17:01:27 +00:00
Marty Kraimer
5ff1a8f2a3 make default precision 6 instead of 0 2001-07-03 12:49:01 +00:00
Jeff Hill
6db46f8890 properly byte swap in exception message 2001-07-03 01:27:13 +00:00
Jeff Hill
00815ca1c9 changed interface so that unreferenced table will not optimize away,
and fixed problem where get callback exception was incorrectly
handled
2001-07-03 00:59:38 +00:00
Jeff Hill
1fdcd08c9d changed interface so that unreferenced table will not optimize away 2001-07-03 00:58:18 +00:00
Jeff Hill
e195df9f32 improved test diagnostics 2001-07-03 00:55:07 +00:00
Jeff Hill
b90c266295 fixed diagnostic 2001-07-03 00:54:37 +00:00
Andrew Johnson
185b773419 Added configuration files for the MVME2100 running Linux, both cross
and self-hosted compilation supported (but you don't want to use the
self-hosted if you can help it!).  Assumes the standard Hard Hat
Linux install locations for the cross-development tools.
2001-07-02 21:49:36 +00:00
Andrew Johnson
f4f3c931b0 Extended the ~tsSLList<T>() workaround, egcs-2.91.66 doesn't like this either. 2001-07-02 21:44:51 +00:00
Janet B. Anderson
ac19d5fba6 Added O.Common dir to dependancies of BUILD_ARCHS rule. 2001-07-02 21:39:39 +00:00
Jeff Hill
36e7eb94c0 fixed function to match prototype 2001-06-29 22:41:35 +00:00
Jeff Hill
87a3481b2a use Eric's new putenv API 2001-06-29 22:40:44 +00:00
Jeff Hill
c20ddad7c6 changed the API for CA context manipulation 2001-06-29 22:19:53 +00:00
Jeff Hill
f6ea24d417 allow subscription delete from subscription callback 2001-06-29 22:16:38 +00:00
Jeff Hill
7b16e38974 added test for monitor delete in event callback 2001-06-29 22:15:49 +00:00
Jeff Hill
69545bc772 installed some limited self test capabilities so that the hash tables
can be verified during regression testing
2001-06-28 22:12:54 +00:00
Janet B. Anderson
22abff43bf Removed references to EPICS_BASE_LIB. 2001-06-28 21:54:36 +00:00
Janet B. Anderson
f7d0bf146c Changed EPICS_BASE_HOST_BIN to INSTALL_HOST_BIN. 2001-06-28 21:38:25 +00:00
W. Eric Norum
61c057df16 Add comment explaining why aitConvert must be compiled without optimization
for RTEMS-pc386 targets.
2001-06-28 21:06:45 +00:00
Janet B. Anderson
60173f78cf Remove compiler path requirement. 2001-06-28 21:05:42 +00:00
Janet B. Anderson
aa8e36e015 Added include for time.h. 2001-06-28 16:19:06 +00:00
Janet B. Anderson
d7279bbcbf Allow make inc at top level 2001-06-28 16:07:56 +00:00
Janet B. Anderson
a6ceb5a3f1 Remove OPT flag for RTEMS-pc386 build. 2001-06-28 16:07:55 +00:00
Janet B. Anderson
b5e9036e79 Updated documentation for alpha3 release. 2001-06-27 18:30:07 +00:00
Janet B. Anderson
e76c4287ac Added T_A specific OPT and WARN flags. 2001-06-27 14:21:32 +00:00
Janet B. Anderson
b1643cf138 Moved +DAportable to CODE flags. 2001-06-26 16:29:12 +00:00
Jeff Hill
76cb1ca826 tabs to spaces 2001-06-25 21:50:50 +00:00
Jeff Hill
384af09c72 changed tabs to spaces 2001-06-25 21:47:44 +00:00
Jeff Hill
8dbecc7b16 try to accomodate PPC 2001-06-25 21:14:08 +00:00
Jeff Hill
bbd3a45142 try to accomodate PPC 2001-06-25 20:34:53 +00:00
Janet B. Anderson
1e595bfaa6 Don't try to create directory if symbolic link of same name exists. 2001-06-25 19:28:11 +00:00
Jeff Hill
6d9a8de270 fix improper auto ptr release bug 2001-06-25 17:08:06 +00:00
W. Eric Norum
33e11134e5 RTEMS now provides a mechanism for interrogating the memory allocator. 2001-06-23 20:44:29 +00:00
Jeff Hill
e4447d8c97 removed overly conservative list node verification 2001-06-22 01:02:52 +00:00
Jeff Hill
d4126b1c80 fixed autoLock where autoRelease should have been 2001-06-21 23:19:02 +00:00
Jeff Hill
22e9be48ad fixed bug in proper cleanup of client context 2001-06-21 23:04:44 +00:00
Jeff Hill
cf7df276ff fixed potential deadlock 2001-06-21 22:44:38 +00:00
Marty Kraimer
3ac74dd5a8 keep private copy of pvname 2001-06-21 18:07:25 +00:00
Jeff Hill
e684ff02eb simplified locking 2001-06-21 17:16:20 +00:00
Jeff Hill
f2332d1bb1 improved monitor first update test 2001-06-21 17:11:39 +00:00
Marty Kraimer
ae57d2592e fix bug that could cause dbNotifyCancel to timeout 2001-06-21 13:16:59 +00:00
Jeff Hill
da412768fa eliminate redundant code 2001-06-21 00:29:55 +00:00
Jeff Hill
99df1b5584 fixed a disconnect related problem and also improved
structure of locking
2001-06-20 17:45:19 +00:00
Janet B. Anderson
61ff831b2d Uncommented epicsListTest. 2001-06-20 15:27:52 +00:00
Jeff Hill
6348395b7f fixed gnu warning 2001-06-19 23:44:49 +00:00
Jeff Hill
13b74464ab rearranged code so that we have a late start
process receive thread again
2001-06-19 23:30:09 +00:00
Jeff Hill
ab52e91d66 IO deletes must wait for callback completion 2001-06-19 20:05:44 +00:00
Janet B. Anderson
843595ed42 Allowed file and file/os specific WARN and OPT values. 2001-06-19 14:37:08 +00:00
Janet B. Anderson
4cf55705d6 Removed references to DBDNAME and DEBEXPAND. 2001-06-19 14:35:56 +00:00
Jeff Hill
d02e01c55b fixed use of destroy member function without checking for nill pointer 2001-06-18 21:12:36 +00:00
Jeff Hill
8926a0a8b3 fixed uninitialized member 2001-06-18 21:11:49 +00:00
Jeff Hill
9a0f0900ce work around problems in the Tornado compiler 2001-06-16 00:47:09 +00:00
Jeff Hill
5b729b2f31 updated for R3.14 2001-06-15 23:27:04 +00:00
Jeff Hill
60be389ce0 no need to specify hash table size 2001-06-15 23:07:03 +00:00
Jeff Hill
b271bcf8e9 no longer need to specify hash table size 2001-06-15 22:51:38 +00:00
Jeff Hill
89a2c69651 adjust to changing hash table api 2001-06-15 22:45:25 +00:00
Jeff Hill
3e622f35b2 improved message 2001-06-15 22:43:38 +00:00
Jeff Hill
389ed62c33 no need to specify hash table size 2001-06-15 22:41:54 +00:00
Jeff Hill
12ea010e4b fixed bug where resource was deallocated but it was
still in the hash table, and no longer need to specify
the hash table size
2001-06-15 22:41:03 +00:00
Jeff Hill
25f6920f1f fixed bug where resource was deallocated but it was still in the hash table 2001-06-15 22:39:54 +00:00
Jeff Hill
ca76832387 non need to specify hash table size 2001-06-15 22:39:01 +00:00
Jeff Hill
759b1a3541 improved test 2001-06-15 22:34:35 +00:00
Jeff Hill
9c89eabc84 now uses linear hashing technique to expand the table w/o
causing significant outliers in insertion or lookup delays
2001-06-15 22:33:48 +00:00
Jeff Hill
535ead1241 allow one list to be initialized from, and also steal the contents from,
another list
2001-06-15 22:18:09 +00:00
Andrew Johnson
28ea1b66a3 sysClkRateGet() _is_ defined in sysLib.h, but indirectly in the
drv/timer/timerDev.h file that it includes.
2001-06-14 22:03:50 +00:00
Janet B. Anderson
d5b84741ca Fixed _USER_. 2001-06-14 21:45:43 +00:00
Janet B. Anderson
4375774da3 Added RTEMS template files. 2001-06-14 21:45:09 +00:00
Janet B. Anderson
d2c3f80fe4 Initial version. 2001-06-14 15:18:28 +00:00
Janet B. Anderson
865e4cbc01 Changed #if to make it more readable. 2001-06-14 14:48:42 +00:00
Janet B. Anderson
1688ff923b Changed OBJS to SRCS for registerRecordDeviceDriver. 2001-06-14 14:43:58 +00:00
W. Eric Norum
95c23a4784 Clean up printout when RTEMS task has gone away.
Treat a missing RTEMS task as suspended.  Do not print error message.
2001-06-13 20:43:48 +00:00
Janet B. Anderson
3a4435a70a Removed unneeded vxWorks LDFLAGS undefined iocInit line. 2001-06-13 19:52:12 +00:00
Marty Kraimer
8d1830b8c6 make sure iocshReg is defined 2001-06-13 19:49:56 +00:00
Marty Kraimer
8693ee19f9 registerRecordDeviceDriver was not in library 2001-06-13 14:20:59 +00:00
Jeff Hill
71ccf13585 eliminate option to turn off exceptions 2001-06-12 17:54:30 +00:00
Jeff Hill
4886ad2b6d fixed to use const for begin and end 2001-06-12 17:48:36 +00:00
Jeff Hill
bbb3b9a432 new timer creation API 2001-06-12 17:22:27 +00:00
Jeff Hill
4444b74a58 fixed purify warning 2001-06-12 17:20:07 +00:00
Jeff Hill
ff76c98aa3 removed warning message 2001-06-12 17:18:20 +00:00
Jeff Hill
87f9c12a77 dont use free list for passive timer queue because of entaglements
between the file scope free list destructor and any file scope
file descriptor manager destructor's attempts to destroy a
passive timer queue
2001-06-12 17:16:52 +00:00
Jeff Hill
08208e995d changed the api for creating timers to match new timer API
and dont allow exceptions to be dissabled
2001-06-12 17:15:06 +00:00
Jeff Hill
452ead8a9f changed the api for creating timers to match new timer API 2001-06-12 17:14:16 +00:00
Jeff Hill
403c377de8 revert because workaround for RTEMS didnt build 2001-06-11 22:28:51 +00:00
Janet B. Anderson
6098b72694 Added rules for all, install, and rebuild. 2001-06-11 20:41:47 +00:00
Jeff Hill
5395f95484 workarounds for problems discovered when building for RTEMS 2001-06-11 20:13:42 +00:00
Janet B. Anderson
dd95b5462e Removed references for baseLIBOBJS. 2001-06-11 18:53:07 +00:00
Jeff Hill
77a90ccc57 made diff computations const 2001-06-11 18:16:08 +00:00
Jeff Hill
24b1da7fff made diff computations identical 2001-06-11 18:15:14 +00:00
Jeff Hill
2a22727348 workarounds for problems discovered when building for RTEMS 2001-06-11 17:57:31 +00:00
Jeff Hill
01b7b23743 dont pull in stdio.h in the header since it isnt referenced there 2001-06-11 17:08:07 +00:00
Marty Kraimer
26a92d3526 make alarm a link LINK_ALARM 2001-06-11 14:31:30 +00:00
Marty Kraimer
c6696c209f force at least a 1 tick delay if timeOut >0.0 2001-06-11 14:30:04 +00:00
Janet B. Anderson
c3cbf1bd2c Die if rmtree fails. 2001-06-08 20:36:54 +00:00
Jeff Hill
c2a5eef5d4 added time stamp tests 2001-06-07 17:24:28 +00:00
Janet B. Anderson
cb0d92aa82 Changed LIBOBJS_HOST to LIBRARY_LD_OBJS. 2001-06-07 16:15:16 +00:00
Janet B. Anderson
d8ca8c6d72 R3.14.0alpha3 2001-06-07 16:00:45 +00:00
Janet B. Anderson
fddb0939a4 Added notes for building solaris-sparc-gnu. 2001-06-07 15:58:13 +00:00
Janet B. Anderson
c307a05e81 Changed MSI definition. 2001-06-07 15:57:22 +00:00
Jeff Hill
4ae24683fc fixed gnu warning 2001-06-07 15:53:24 +00:00
Janet B. Anderson
7874d35daf Changes to create vxWorks archive libraries and prods. 2001-06-07 14:26:06 +00:00
Jeff Hill
06bec39aa7 proper conversion from floating point offset to integer nsec 2001-06-06 19:33:25 +00:00
Jeff Hill
b6479bbc80 added parens 2001-06-06 18:51:05 +00:00
Jeff Hill
6a96052fcf fixed gnu warning 2001-06-06 18:24:12 +00:00
Jeff Hill
5e215a944d more changes for type safe thread id 2001-06-06 18:19:42 +00:00
Jeff Hill
6937cc4075 more changes for type safe thread id 2001-06-06 18:16:43 +00:00
Jeff Hill
39b28e9bd6 clean up resulting from type safe thread id 2001-06-06 17:55:48 +00:00
Jeff Hill
fbf5947f15 fixed wrong destroy method called 2001-06-06 17:45:16 +00:00
Jeff Hill
3ede456a0d fixed comment 2001-06-06 17:38:15 +00:00
Jeff Hill
b13d938b11 use struct ptr for ID types because:
o this is more type safe
o this works better with source level debuggers
2001-06-06 17:28:37 +00:00
Jeff Hill
07a767e345 possibly bad guess for the number of channels 2001-06-04 23:20:41 +00:00
Jeff Hill
1f8d22994c bad guess for the number of channels 2001-06-04 23:18:47 +00:00
Jeff Hill
54949779a9 dont always use default exception handler 2001-06-04 23:18:08 +00:00
Jeff Hill
1611bc40f7 set default number of channels guess 2001-06-04 23:16:25 +00:00
Jeff Hill
d9508ce1e4 o set default number of channels guess
o clean up get copy ifit fails prematurely
2001-06-04 23:15:50 +00:00
Jeff Hill
e4b95a6ae7 use proper printf 2001-06-04 23:15:19 +00:00
Jeff Hill
fde282b967 added printf MF 2001-06-04 23:13:49 +00:00
Jeff Hill
93a8be53d8 clean up get copy ifit fails prematurely 2001-06-04 23:12:59 +00:00
Jeff Hill
22b5eca868 set number of channels guess 2001-06-04 23:12:23 +00:00
Jeff Hill
5d3495485d dont always use default exception handler 2001-06-04 23:11:56 +00:00
Jeff Hill
11388a5ad3 removed comment 2001-06-04 23:10:45 +00:00
Jeff Hill
7be47b2b86 added more tests 2001-06-04 23:08:55 +00:00
Jeff Hill
4c50314331 o set default number of channels guess
o clean up get copy ifit fails prematurely
2001-06-04 23:08:39 +00:00
Jeff Hill
f49289fdd0 fixed problem where put conversion fails but nevertheless
1) caller of db_put_field gets successful status
2) the array size is modified.
2001-06-01 22:19:04 +00:00
Jeff Hill
2a50d5f897 added more exception tests 2001-06-01 22:10:10 +00:00
Jeff Hill
09be73c889 added array exception test 2001-06-01 17:56:37 +00:00
Jeff Hill
b716cca8b0 compiler restrictions 2001-06-01 16:47:57 +00:00
Jeff Hill
c585721024 cosmetic 2001-06-01 16:45:38 +00:00
Jeff Hill
31a2548d28 new tasks 2001-06-01 16:44:54 +00:00
Jeff Hill
ba8e61f26a fixed bug where suibscription cancel request was not sent to
server when user canceled IO
2001-06-01 16:44:17 +00:00
Jeff Hill
75a5891fb0 improved diagnostic 2001-06-01 16:40:31 +00:00
Jeff Hill
d0438b37a1 fixed win32 warning 2001-05-31 20:42:03 +00:00
Jeff Hill
a456376230 fixed syntax error not detected by ms vis c++ 2001-05-31 20:26:26 +00:00
Jeff Hill
d8a5dc3563 simplified 2001-05-31 20:19:34 +00:00
Jeff Hill
47757dffaf code clarity 2001-05-31 20:18:12 +00:00
Jeff Hill
e73613a699 added 8 bit unsigned integer type 2001-05-31 20:17:55 +00:00
Jeff Hill
b1ca3061a1 avoid precision problems with 0.0 constant 2001-05-31 20:17:20 +00:00
Jeff Hill
194435b010 removed use of TRUE and FALSE 2001-05-30 22:52:46 +00:00
Jeff Hill
0504af338b restored ca_pend() 2001-05-30 21:56:30 +00:00
Andrew Johnson
257d4af995 Fixed strange problems on win32, perl line endings. 2001-05-29 16:50:29 +00:00
Andrew Johnson
2f128e7e39 Oops, missing '!' in ARGV check 2001-05-29 15:12:20 +00:00
Andrew Johnson
e3203ca468 Fixed problem with Cygwin Perl not supporting globs properly,
and bug that -l option needed an argument.
2001-05-25 20:11:45 +00:00
Jeff Hill
564ca4a6f6 restart interrupted system call 2001-05-24 22:07:02 +00:00
Jeff Hill
4be3cc14a8 cosmetic 2001-05-24 21:28:18 +00:00
Jeff Hill
a7f8f90ddc restart sendto system call if it is interrupted 2001-05-24 21:14:40 +00:00
Jeff Hill
8d1e2327df better diagnostics 2001-05-24 00:24:05 +00:00
Jeff Hill
bc0b97556e properly display version number of server 2001-05-23 23:06:33 +00:00
Jeff Hill
fb7a2d6490 fixed bug in test 2001-05-23 23:06:07 +00:00
Jeff Hill
eb9b01e118 better messages 2001-05-23 23:05:30 +00:00
Jeff Hill
ac587806a0 fixed message 2001-05-23 22:43:23 +00:00
Jeff Hill
5961325186 fixed format problem 2001-05-23 22:34:26 +00:00
Jeff Hill
61e2a3f8ce removed redundant release data description 2001-05-23 21:34:27 +00:00
Jeff Hill
5179d0d505 better config of ifconfig differences 2001-05-23 20:54:48 +00:00
Janet B. Anderson
9ecf5a5349 Added pv_DIR defintions. 2001-05-23 16:17:35 +00:00
Janet B. Anderson
13de25e9f4 Reordered <lib>_DIR definitions. 2001-05-23 16:15:18 +00:00
Jeff Hill
6fbf031e75 fixed sun pro warnings 2001-05-23 01:23:23 +00:00
Jeff Hill
4a5067b8a6 fixed gnu warnings 2001-05-23 00:57:05 +00:00
Jeff Hill
245bd5ab5e fixed gnu warnings 2001-05-23 00:48:41 +00:00
Jeff Hill
069e25aa72 workaround gnu compiler bug 2001-05-23 00:12:59 +00:00
Jeff Hill
48aa0b3e45 small optimization 2001-05-22 23:35:23 +00:00
Jeff Hill
6d5a8b94a6 use osiSocklen_t 2001-05-22 16:26:22 +00:00
Jeff Hill
bee3c82735 fixed undefined symbol on Solaris 2001-05-22 16:24:39 +00:00
Jeff Hill
e3a0888cb3 removed unused variable 2001-05-22 15:45:56 +00:00
Jeff Hill
e6a9227421 added typedef 2001-05-22 15:43:40 +00:00
Jeff Hill
f78c134d31 fixed c++ loop index scope problem 2001-05-22 02:21:57 +00:00
Jeff Hill
7f88505a9a use socklen_t for linux 2001-05-22 02:10:51 +00:00
Jeff Hill
0b40765719 removed osiTimer 2001-05-22 02:05:23 +00:00
Jeff Hill
9940b408fb made compatible with changes in service API 2001-05-22 02:02:41 +00:00
Jeff Hill
70de17474b large array changes 2001-05-22 02:02:10 +00:00
Jeff Hill
fa87c186fe made compatible with timer library API changes 2001-05-22 01:51:55 +00:00
Jeff Hill
63c2a025d3 made compatible with timer library API changes 2001-05-22 01:46:13 +00:00
Jeff Hill
13212ddfea made compatible with time library API changes 2001-05-22 01:45:39 +00:00
Jeff Hill
976ce6a645 removed old timer tests 2001-05-22 01:44:40 +00:00
Jeff Hill
cf668c6448 no message 2001-05-22 01:40:37 +00:00
Jeff Hill
bc4bd0216e used a union after reading warnings about potential g++ optimizations 2001-05-22 01:39:35 +00:00
Jeff Hill
6440ee39e8 cosmetic 2001-05-22 01:38:29 +00:00
Jeff Hill
f8cf4a582e made compatible with timer library API changes 2001-05-22 01:37:09 +00:00
Jeff Hill
1f7c046c8f added new env var 2001-05-22 01:34:47 +00:00
Jeff Hill
f6c9619a48 use now throw new 2001-05-22 01:32:00 +00:00
Andrew Johnson
6bd55da631 Modifications to support architecture-specific template files.
vxWorks-specific and Common files for host IOCs
2001-05-19 02:42:59 +00:00
Andrew Johnson
2b0f55ad23 Modifications to support architecture-specific template files.
Only vxWorks IOCs need an nfsCommands file installing
2001-05-19 02:42:47 +00:00
Andrew Johnson
430ce13c0e Modifications to support architecture-specific template files.
nfsCommands is only needed for vxWorks IOCs
2001-05-19 02:40:46 +00:00
Andrew Johnson
f69a2933a9 Modifications to support architecture-specific template files.
iocBoot/ioc/Makefile specifies whether to build cdCommands
2001-05-19 02:40:23 +00:00
Andrew Johnson
db60073049 Modifications to support architecture-specific template files. 2001-05-19 02:39:09 +00:00
Jeff Hill
bf13ffdfe3 print error and error summary 2001-05-18 20:03:23 +00:00
W. Eric Norum
83a864997d Implement agreed-upon semantics for delay/timeout arguments.
A delay/timeout <=0.0 results in a yield/poll.
A delay/timeout >0.0 is rounded up to 1 tick.
2001-05-18 19:36:03 +00:00
Marty Kraimer
5f07d422fd new 2001-05-18 18:20:07 +00:00
Marty Kraimer
f30ceae58b if delay>0 than taswkDelay at least 1 tick 2001-05-18 18:11:42 +00:00
Jeff Hill
4dc395bb24 measure delay of zero 2001-05-18 18:04:59 +00:00
Jeff Hill
61b049dd46 use unsigned , not double, constant 2001-05-18 18:03:41 +00:00
Jeff Hill
5ba2368b00 used unsigned not double constant 2001-05-18 18:02:02 +00:00
Jeff Hill
962f6d08d1 fixed improper use of unsigned type 2001-05-18 16:35:06 +00:00
Jeff Hill
a0e4aeba1e round hibernation delays greater than zero but less than 1mS to 1mS 2001-05-18 16:31:07 +00:00
Jeff Hill
71b3d962cf round hibernation delays greater than zero but less than 1mS to 1 mS 2001-05-18 16:29:58 +00:00
Marty Kraimer
b4ef480a49 use DBF_DOUBLE instead of DBF_FLOAT 2001-05-17 19:18:39 +00:00
Marty Kraimer
0a48ac3a35 use double instead of float 2001-05-17 19:15:43 +00:00
Marty Kraimer
e14120a25d help prevent execptions on double to float 2001-05-17 19:15:07 +00:00
W. Eric Norum
d99fb7029d Change all instances of ioccrf' to iocsh' to reflect the added
capabilities of the IOC shell routines.
2001-05-17 18:16:49 +00:00
W. Eric Norum
84cd107ad9 Make epicsEnvShow work when called from vxWorks shell or iocsh.
Limits operation to a single argument.
2001-05-17 16:56:14 +00:00
Marty Kraimer
63a964914d gsubRecord obsolete 2001-05-16 14:34:00 +00:00
Marty Kraimer
a543f647ae remove old style c function prototypes 2001-05-16 13:45:32 +00:00
Jeff Hill
1e552c57e4 added info on the MDd option 2001-05-09 21:31:55 +00:00
Janet B. Anderson
aed2fd1f51 Added calls to recGblGetGraphicDouble and recGblGetControlDouble. 2001-05-09 14:32:30 +00:00
W. Eric Norum
b8f79c760b Clean up restart message. 2001-05-07 19:37:39 +00:00
W. Eric Norum
87a038a379 Add logging (console and syslog) of reason for most recent restart. 2001-05-07 19:32:18 +00:00
W. Eric Norum
3ec821a74a Create os-specific versions of routines to set and
display environment variables.
2001-05-07 16:11:57 +00:00
Jeff Hill
01311de271 added timeout and sleep delay tests 2001-05-04 21:41:23 +00:00
W. Eric Norum
9549c0dc00 Make network driver name match the one imposed by the 3C509 driver. 2001-05-02 15:55:47 +00:00
Marty Kraimer
b95129d71b replace dbDefs.h eefinitions with menu definitions
Fix OMSL bug reported by Andy Foster
2001-05-01 19:56:53 +00:00
Marty Kraimer
a4ba05e90c get rid of defs that should come from menus 2001-05-01 19:55:34 +00:00
W. Eric Norum
f8f306624e Remove env command -- vxWorks has no environ pointer.
Add epicsPrtEnvParams to print all EPICS environment parameters.
Add printEnv to print specified environment variables.
2001-05-01 18:38:50 +00:00
Jeff Hill
a1ef63686c use conatant INFINITE 2001-05-01 17:03:07 +00:00
Jeff Hill
d7126b0784 formatting 2001-05-01 17:02:22 +00:00
Jeff Hill
68f40981a3 detect overrange in sleep 2001-05-01 17:01:50 +00:00
W. Eric Norum
92d922d446 Add comment. 2001-04-30 21:05:21 +00:00
W. Eric Norum
ea74ab6e7a Allow network interface card to be selected using site-specific
configuration file.  Provide example selection for RTEMS pc386 target.
2001-04-30 21:03:12 +00:00
Janet B. Anderson
057fbc10a0 Now allows include statements. 2001-04-27 14:05:07 +00:00
Jeff Hill
636c028b56 changes from stephanie 2001-04-25 19:59:50 +00:00
W. Eric Norum
90e07a7840 Change prompt from rtems> ' to epics> '
Don't proceed until clock has been synchronized with NTP.
2001-04-24 19:40:39 +00:00
W. Eric Norum
f1f5f385bb Add `env' command to print enviornment variables. 2001-04-24 19:35:57 +00:00
W. Eric Norum
647221079f Fix up broken putenv(). 2001-04-24 18:36:31 +00:00
Janet B. Anderson
0a3f27c689 Changed lex and yacc rules. 2001-04-24 16:44:59 +00:00
Janet B. Anderson
42aa85a1d9 Added DEPSCHS to edf rule. 2001-04-24 14:27:35 +00:00
Jeff Hill
91707b9e92 fixed too many accept error messages problem 2001-04-23 17:24:46 +00:00
Jeff Hill
5152152edb added comment 2001-04-20 19:39:45 +00:00
W. Eric Norum
9f2d93d2d4 Allow application code to override RTEMS network configuration. 2001-04-20 19:18:54 +00:00
Jeff Hill
01c5adc8a7 test 2001-04-20 15:15:10 +00:00
Jeff Hill
22ec308865 test 2001-04-20 15:14:46 +00:00
Jeff Hill
e585c60d67 fixed sun pro warning 2001-04-20 01:21:48 +00:00
Jeff Hill
452c8d1384 dont use c++ style comment in header used by C files 2001-04-20 00:56:27 +00:00
Jeff Hill
00641af25c fixed gnu warnings 2001-04-20 00:50:19 +00:00
Jeff Hill
a42a95f60a updated to match service API changes 2001-04-20 00:46:18 +00:00
Jeff Hill
c6d116d1e8 fixed gnu warning 2001-04-20 00:13:58 +00:00
Jeff Hill
1c6767d3f2 broke apart monolithic iocinf.h header file 2001-04-20 00:08:41 +00:00
Jeff Hill
1e786e3d5a broke apart monolithic iocinf.h header file 2001-04-19 23:52:07 +00:00
Jeff Hill
03a92021a7 removed redundant parens 2001-04-19 23:50:50 +00:00
W. Eric Norum
7cbc79ff30 Clean up semaphore statistic gathering. 2001-04-19 01:53:06 +00:00
Jeff Hill
e20bf02652 moved oldChannelNotify inlines to oldAccess.h 2001-04-17 20:22:15 +00:00
Jeff Hill
20e702a629 moved oldChannelNotify inlines here 2001-04-17 20:21:07 +00:00
Jeff Hill
1f52aaf9d6 reformat 2001-04-17 17:37:41 +00:00
Jeff Hill
c2ffc9e893 automate production of version string 2001-04-17 17:37:17 +00:00
Jeff Hill
eeaf3af7a4 fixed sun pro warning 2001-04-17 17:36:37 +00:00
Jeff Hill
a8a86993e3 fixed sun pro warnings 2001-04-17 00:44:59 +00:00
Jeff Hill
76560ce7c3 added reset() 2001-04-17 00:14:42 +00:00
Jeff Hill
1ec6f444b7 changed file name 2001-04-17 00:03:02 +00:00
Jeff Hill
8d5075b441 fixed gnu warnings 2001-04-16 23:46:32 +00:00
Jeff Hill
84bec6ceba fixed gnu warning 2001-04-16 23:41:47 +00:00
Jeff Hill
ee60f232c1 made destructors virtual 2001-04-16 23:33:45 +00:00
Jeff Hill
e73d083131 fixed ws in endif clause 2001-04-16 23:30:42 +00:00
Jeff Hill
7a56359b73 added ws at eof 2001-04-16 23:30:12 +00:00
Jeff Hill
e73d66bbff added newline at eof 2001-04-16 23:25:03 +00:00
Jeff Hill
008b125aec fixed ws in endif clause 2001-04-16 23:14:18 +00:00
Jeff Hill
bfe4d463c1 changed to C style comment 2001-04-16 22:59:47 +00:00
Jeff Hill
f69a65a4fe dont hold lock while calling callbacks 2001-04-16 22:51:37 +00:00
Jeff Hill
332a7228a8 dont hold lock while calling callbacks 2001-04-16 22:38:38 +00:00
Jeff Hill
4b99a3d268 installed epics_auto_ptr.h 2001-04-16 22:36:59 +00:00
Jeff Hill
c2e6490220 installed 2001-04-16 22:36:28 +00:00
Jeff Hill
aa2516eb85 improved test 2001-04-16 21:59:38 +00:00
Jeff Hill
01fd6d5253 no need to check for nill 2001-04-16 21:49:53 +00:00
Andrew Johnson
95806cd1cd MSVC can't handle partial template specializations (swap<T>), so removed
removed swap<epicsList<T>> and renamed epicsSwap<epicsList<T>> to
epicsListSwap<T>
2001-04-12 15:35:56 +00:00
Marty Kraimer
22df1fb68a new files 2001-04-09 19:45:51 +00:00
Marty Kraimer
7f7130cb2a changes for 3.14.0alpha2 2001-04-09 17:46:04 +00:00
Janet B. Anderson
8640b175b1 Backing out accidental commit. 2001-04-09 17:38:42 +00:00
Janet B. Anderson
dc6a85b842 Updated for alpha2. 2001-04-09 17:29:24 +00:00
Janet B. Anderson
70cf9b538d Commented out epicsListTest for alpha2. 2001-04-09 15:53:31 +00:00
Marty Kraimer
e745a49e1e Create => OsdCreate 2001-04-09 15:27:28 +00:00
Marty Kraimer
ea026b4350 epicsMutexCreate=>epicsMutexOsdCreate 2001-04-09 15:24:06 +00:00
Janet B. Anderson
161538e309 Added solaris-sparc-gnu files. 2001-04-09 14:13:28 +00:00
Janet B. Anderson
688f386a13 Removed phony lines. 2001-04-09 14:12:13 +00:00
W. Eric Norum
3681457c88 Remove RTEMS-specific semaphore show command. The generic epicsMutexShowAll
provides similar functionallity.
Allow for longer task names in semaphore show messages.
2001-04-06 17:05:40 +00:00
Andrew Johnson
827c41d895 Don't crash if no hardware present... 2001-04-06 15:22:17 +00:00
Marty Kraimer
ae74e745f3 fix race condition 2001-04-06 12:45:06 +00:00
Marty Kraimer
79eebbd8f8 support osi features 2001-04-06 12:43:44 +00:00
Marty Kraimer
36ca3a4431 allocate correct abount of storage 2001-04-05 15:19:57 +00:00
Marty Kraimer
7170c80194 add epicsMutexShowAll 2001-04-05 14:57:14 +00:00
Marty Kraimer
ef7a2bdcc4 add dbLockShowLocked
even scalar DB_LINKs forced into lock set
2001-04-05 14:56:22 +00:00
Marty Kraimer
7189465b92 Make ALL ca_ calls only from dbCaTask 2001-04-05 14:53:54 +00:00
Marty Kraimer
5605812c4b call errlogFlush before aborting 2001-04-05 14:49:48 +00:00
Marty Kraimer
f4b0c741a1 change errlogStop to errlogFlush 2001-04-05 14:42:00 +00:00
Marty Kraimer
1e922e5f30 add epicsMutex.c 2001-04-05 14:36:45 +00:00
Marty Kraimer
4e9f6b716a epicsMutexMustCreate now osi; add support for epicsSemShowAll 2001-04-05 14:36:00 +00:00
Marty Kraimer
857c4a9545 add errlogStop; remove old sytle C function prototypes 2001-04-05 14:32:50 +00:00
Janet B. Anderson
c1bd5924df Removed trailing blanks. 2001-04-02 14:08:05 +00:00
Marty Kraimer
1e33387764 major change in algortihm 2001-03-30 20:20:55 +00:00
Marty Kraimer
5645505564 hold lock while changing fields 2001-03-30 20:20:36 +00:00
Jeff Hill
c6f2974aa3 fixed memory leak 2001-03-30 01:19:12 +00:00
Jeff Hill
c9f8816dea fixed doc 2001-03-28 21:54:36 +00:00
Jeff Hill
63393cc259 added performance test 2001-03-28 21:53:38 +00:00
Jeff Hill
7c4b968db7 use a longer polling interval 2001-03-28 21:18:38 +00:00
Jeff Hill
84ced8336c fixed test duration for slower machines 2001-03-28 21:14:48 +00:00
W. Eric Norum
d5a01b6968 Ensure that epicsThreadSleep always yields processor. 2001-03-28 21:00:35 +00:00
Jeff Hill
65d5561b3d fixed stack size bug 2001-03-28 20:54:29 +00:00
Jeff Hill
159ecd02f2 use C++ API 2001-03-28 16:30:00 +00:00
Jeff Hill
efd4f1e6e1 fixed gnu warning 2001-03-28 16:05:32 +00:00
Jeff Hill
902ee295e0 added newline at EOF 2001-03-28 16:01:40 +00:00
Jeff Hill
9191e04ac9 added new tests 2001-03-28 15:52:18 +00:00
Jeff Hill
8b782cd6bb added thread private test 2001-03-28 15:49:25 +00:00
Andrew Johnson
34ea7db15b Changed template so it takes an exception object as argument, not a
char* to use as the argument to the exception object.  This may end
up copying the object, but it's now completely flexible (an exception
class must be copy-constructable anyhow).
2001-03-27 20:45:59 +00:00
Andrew Johnson
5ad4bfcd11 Added a private default constructor (to stop compiler-generated one)
A bit of reformatting too.
2001-03-27 20:38:24 +00:00
Andrew Johnson
418b34ad85 Added epicsAlgorithmTest 2001-03-27 20:25:52 +00:00
Andrew Johnson
ced62f1e5f swap=>epicsSwap 2001-03-27 17:10:14 +00:00
Andrew Johnson
a1bbcf660a Using epicsAlgorithm.h 2001-03-27 16:55:12 +00:00
Andrew Johnson
a16fdfe45e Added epicsAlgorithm.h header containing epicsMin, epicsMax & epicsSwap. 2001-03-27 16:53:22 +00:00
Marty Kraimer
a8f3980097 Fix dbScanLock so it takes global lock 2001-03-26 21:40:07 +00:00
Marty Kraimer
ddbb74a35e add void return 2001-03-26 19:08:48 +00:00
Jeff Hill
3817ea5f3a supress purify warning 2001-03-26 18:46:39 +00:00
Jeff Hill
8ef0216cf5 minor optimization in timer queue process 2001-03-26 18:34:59 +00:00
Jeff Hill
a609b3394b doc 2001-03-26 18:32:30 +00:00
Jeff Hill
26c082ffaf fixed timer delay test 2001-03-26 18:31:57 +00:00
Jeff Hill
b1d14576c5 cleaned up implementation of locks 2001-03-23 23:00:03 +00:00
Janet B. Anderson
02c05f38b1 Added HOST_BIN and include/os/OS_CLASS. 2001-03-23 22:35:55 +00:00
Marty Kraimer
b68d241c44 make it lock 2001-03-23 22:01:05 +00:00
Janet B. Anderson
575d3a0f3e Allow RULES.DB to be included into Makefiles. 2001-03-23 21:55:46 +00:00
Janet B. Anderson
36d073b4dd Added .i files to precious. Removed reference to iocBinInstalls. 2001-03-23 20:59:41 +00:00
Jeff Hill
ef696499e4 optimized free list locking 2001-03-22 22:12:09 +00:00
Jeff Hill
8629f103d6 doc 2001-03-22 21:32:30 +00:00
Janet B. Anderson
ebf9c197e8 Allowed for macro replacement. 2001-03-22 21:23:04 +00:00
Janet B. Anderson
0a5ddd49ba Rearranged OP_SYS and ARCH_DEP definitions. 2001-03-22 21:21:40 +00:00
Janet B. Anderson
3f79faccca Rearanged OP_SYS and ARCH_DEP definitions. 2001-03-22 21:19:59 +00:00
Janet B. Anderson
a50ffacc50 Removed include for CONFIG.Common.UnixCommon. 2001-03-22 21:15:52 +00:00
Janet B. Anderson
ca640904a0 Change to allow relative paths. 2001-03-22 03:08:28 +00:00
Jeff Hill
31454ef08a fixed proper IO destroy when channel exits 2001-03-21 16:11:24 +00:00
Marty Kraimer
7f874c909e No SPC_NOMOD for VAL 2001-03-21 14:54:18 +00:00
Marty Kraimer
abe09ef1d3 add new features for seqExample 2001-03-21 14:53:36 +00:00
Jeff Hill
c0c2d30209 changed locking hierarchy 2001-03-21 01:07:27 +00:00
Jeff Hill
0a9f914076 added epicsAutoMutexRelease 2001-03-21 01:02:35 +00:00
Janet B. Anderson
f125776bcb Changes to allow invoking with relative path. 2001-03-20 21:01:35 +00:00
Janet B. Anderson
8d9dd818b1 Changes to allow relative path for EPICS_BASE. 2001-03-20 21:00:06 +00:00
Janet B. Anderson
1204080477 Added DIRs for base librareis dbtoolsIoc, iocsh, and miscIoc. 2001-03-20 20:50:33 +00:00
Marty Kraimer
367e07d3ca must include inlines 2001-03-20 16:48:43 +00:00
W. Eric Norum
d7137d3e02 Clean up handling of `argv' style arguments. 2001-03-20 03:25:04 +00:00
W. Eric Norum
92983574e7 Clean up the help message for # comments. 2001-03-19 22:14:35 +00:00
W. Eric Norum
ad1ce3a686 Clean up priority display.
Move task name to end so that long task names look better.
2001-03-18 22:29:45 +00:00
W. Eric Norum
45de0e4e1f Add ioccrfArgArgv argument type to support functions which take an
arbitrary number of arguments (e.g. show).  Clean up help display
of argument desciptors containing spaces.
2001-03-17 18:25:30 +00:00
Andrew Johnson
7ec189d2ce Made producer and consumer routines extern "C" to stop SUNWspro warning. 2001-03-16 20:05:00 +00:00
W. Eric Norum
9b401acc13 Don't pass a truncated argument buffer array to a handler function. 2001-03-15 22:09:36 +00:00
Janet B. Anderson
3e485fd56f Modified CONFIG_INSTALLS definition. 2001-03-12 17:15:32 +00:00
Janet B. Anderson
4eb4715941 Added wildcard to CONFIGS definition. 2001-03-12 17:14:39 +00:00
Janet B. Anderson
9800d8e2ad Added CONFIG_INSTALLS definition. 2001-03-12 15:43:57 +00:00
Janet B. Anderson
0087c72f82 Added CONFIGS definition to install RULES_BUILD. 2001-03-12 15:43:03 +00:00
Jeff Hill
fc97348590 fixed early gnu undefined symbol 2001-03-10 00:43:48 +00:00
W. Eric Norum
61e0c86fc7 Leave low 1Mbyte of memory free for use by bootloader. 2001-03-09 01:33:49 +00:00
Jeff Hill
aa424e2774 fixed spelling 2001-03-09 01:25:25 +00:00
Jeff Hill
0f2a5128f8 removed comment 2001-03-09 01:15:18 +00:00
Jeff Hill
740d86ea48 fixed spelling 2001-03-09 00:23:57 +00:00
Jeff Hill
24dee489ff format 2001-03-08 22:57:52 +00:00
Jeff Hill
b3eaf02074 fixed gnu warning 2001-03-08 22:56:21 +00:00
Jeff Hill
5622204418 fixed gnu warning 2001-03-08 22:38:02 +00:00
Jeff Hill
2c96464e62 fixed missing #define 2001-03-08 22:34:24 +00:00
Jeff Hill
64ff16a74f moved include order to prevent warning 2001-03-08 22:30:11 +00:00
Jeff Hill
33c4b2ae7c removed tabs 2001-03-08 22:21:40 +00:00
Jeff Hill
249c3bf3b9 fix file modified while installed in include 2001-03-08 22:13:51 +00:00
Jeff Hill
1ee4d67709 removed junk 2001-03-08 22:05:58 +00:00
Jeff Hill
26a35b488f use critical section for improved performance 2001-03-08 22:04:37 +00:00
Jeff Hill
963b610948 osiTimer => epicsTimer 2001-03-08 22:03:34 +00:00
Jeff Hill
024066bf8b new timer queue name 2001-03-08 22:02:34 +00:00
Jeff Hill
a002147d9e fixed proto for trad C 2001-03-08 22:01:48 +00:00
Jeff Hill
c6c4b1b4c3 timer queue name changes 2001-03-08 21:54:45 +00:00
Jeff Hill
6fccebc954 fixed min type mismatch for 68k 2001-03-08 21:52:31 +00:00
Jeff Hill
cbabe522e1 osiTimer => epicsTimer 2001-03-08 21:32:56 +00:00
Jeff Hill
272029ae1a format 2001-03-08 21:31:38 +00:00
Jeff Hill
fbac2a99e2 added acces to server's timer queue 2001-03-08 21:31:20 +00:00
Jeff Hill
994f1a9b0c fixed subscription install race 2001-03-08 21:29:04 +00:00
Jeff Hill
6447488b9f dont use implcit this pointer 2001-03-08 21:26:46 +00:00
Jeff Hill
3743c81751 init beacon period to neg DBL_MAX 2001-03-08 21:24:14 +00:00
Jeff Hill
6dcafe6b1e improved beacon period test 2001-03-08 21:23:37 +00:00
Janet B. Anderson
e1abaa2dc0 Initial version - added for R3.14 compatibility. 2001-03-08 16:28:32 +00:00
Janet B. Anderson
72d8c794e3 R3.14.0alpha2 2001-03-08 01:29:16 +00:00
Janet B. Anderson
e85024e5a5 Added install location. 2001-03-08 01:22:49 +00:00
Janet B. Anderson
14917296bc Updates for R33.14.0alpha2. 2001-03-08 01:16:09 +00:00
Marty Kraimer
91ec3bdf7e osiTimer => epicsTimer 2001-03-07 21:42:03 +00:00
Marty Kraimer
e8718d8265 changes so that TSinit can successfully call iocClockRegister 2001-03-07 21:40:22 +00:00
Marty Kraimer
64de91f99f kludge to get iocClock initialized on vxWorks 2001-03-07 21:27:52 +00:00
Marty Kraimer
51c938abb9 changes for drvTS 2001-03-07 21:26:37 +00:00
Janet B. Anderson
e9410e53c1 merged_epics_R3_13_1_branchToTrunk_for_alpha2 2001-03-07 21:13:50 +00:00
Janet B. Anderson
bdf904da6d Updates for R3.14.0alpha2. 2001-03-07 20:14:27 +00:00
Jeff Hill
4235560c90 fixed sun pro problem 2001-03-07 18:28:42 +00:00
Jeff Hill
3d43d93ece fixed sun pro warnings 2001-03-07 18:05:58 +00:00
Jeff Hill
70392bfc21 fixed sun pro warning 2001-03-07 18:03:31 +00:00
Jeff Hill
b58f4df8df fixed sun pro warning 2001-03-07 17:56:26 +00:00
Jeff Hill
4e570ce710 fixed sun pro warnings 2001-03-07 17:50:54 +00:00
Jeff Hill
9f55d94f8b fixed gnu warning 2001-03-07 17:43:36 +00:00
Jeff Hill
c4b424fa1b fixed gnu warning 2001-03-07 17:39:13 +00:00
Jeff Hill
c460c8125c fixed gnu warnings 2001-03-07 17:25:26 +00:00
Jeff Hill
fdce468c56 fixed gnu warnings 2001-03-07 17:22:59 +00:00
Jeff Hill
838968dcf0 fixed gnu warning 2001-03-07 17:18:49 +00:00
Jeff Hill
8b38402d4b fixed gnu warnings 2001-03-07 17:13:19 +00:00
Jeff Hill
48f0c6aede removed use of TRUE 2001-03-07 16:49:28 +00:00
Jeff Hill
bddf3b2449 upgraded locking 2001-03-07 16:40:07 +00:00
Jeff Hill
b5f8bf2381 adapt to interface changes and upgrade locking 2001-03-07 16:38:21 +00:00
Jeff Hill
baffcb0110 adapt to interface changes 2001-03-07 16:36:41 +00:00
Jeff Hill
9e2297bd78 upgrade locking 2001-03-07 16:35:39 +00:00
Jeff Hill
35a62778b8 many changes 2001-03-07 16:32:18 +00:00
Jeff Hill
7cac5852ef reformat 2001-03-07 16:31:46 +00:00
Jeff Hill
952a1ce32e moved location of debug printf define 2001-03-07 16:31:14 +00:00
Jeff Hill
fc30463c7c removed 2001-03-07 16:30:44 +00:00
Jeff Hill
76055af9e7 mf no-longer inline 2001-03-07 16:30:34 +00:00
Jeff Hill
b63a06409f upgraded locking 2001-03-07 16:29:19 +00:00
Jeff Hill
1744eaecf9 moved loc of attempts counter incr 2001-03-07 16:28:23 +00:00
Jeff Hill
00ec5cbdeb changed loc of free list lock 2001-03-07 16:27:09 +00:00
Jeff Hill
922dece548 removed 2001-03-07 16:25:34 +00:00
Jeff Hill
e1a60910e9 changed loc of free list lock and added getCopy 2001-03-07 16:25:08 +00:00
Jeff Hill
f3f2a8f548 made channelCount func inline 2001-03-07 16:20:28 +00:00
Jeff Hill
e12e8162cf removed unused junk 2001-03-07 16:18:58 +00:00
Jeff Hill
1aa047bf61 upgraded locking 2001-03-07 16:17:04 +00:00
Jeff Hill
128cedaa06 reformat 2001-03-07 16:16:43 +00:00
Jeff Hill
719c36eb5b new files 2001-03-07 16:16:16 +00:00
Jeff Hill
8fd9d6cb8e installed 2001-03-07 16:15:53 +00:00
Jeff Hill
0f9e890314 removed 2001-03-07 16:14:57 +00:00
Jeff Hill
ffbe181b58 reformat and remove junk 2001-03-07 16:11:55 +00:00
Jeff Hill
2276e9f476 better member func name 2001-03-07 16:11:08 +00:00
Jeff Hill
b4e3bed661 doc 2001-03-07 16:09:10 +00:00
Jeff Hill
84c136f9e5 fixed comment and directly call ca_pend_xxx 2001-03-07 16:08:18 +00:00
Jeff Hill
41824cde94 changed external interface for IO 2001-03-07 16:06:43 +00:00
Jeff Hill
7997b8595a added IO count management 2001-03-07 16:05:20 +00:00
Jeff Hill
5eafdfd398 many changes 2001-03-07 16:03:56 +00:00
Jeff Hill
16701a7f3e changed org of free list locking 2001-03-07 16:02:06 +00:00
Jeff Hill
dc86140f4e removed use of min./max 2001-03-07 16:01:24 +00:00
Jeff Hill
550e74f0fd upgraded locking 2001-03-07 15:54:44 +00:00
Jeff Hill
a56080e419 pushed use of mutable out to application 2001-03-06 23:15:08 +00:00
Jeff Hill
e2c318b2fb upgraded locking 2001-03-06 23:11:23 +00:00
Jeff Hill
0f1ed56f07 pushed locking out to users new/delte operator 2001-03-06 23:06:42 +00:00
Andrew Johnson
6b9c553dd0 Removed epicsCppStd.h and STD_ macro - not required. 2001-03-06 20:42:21 +00:00
Andrew Johnson
2de1587cba Removed epicsCppStd.h - not required. 2001-03-06 20:41:53 +00:00
Andrew Johnson
a4d51830d8 Removed epicsExceptTest - not needed. 2001-03-06 20:36:15 +00:00
Janet B. Anderson
618cee0ac6 Changes because MSVC doesn't support standard C++. - ANJ 2001-03-06 20:21:08 +00:00
Janet B. Anderson
13aba586ca Changes because MSVC doesn't support anywhere near standard C++. Yuck. - ANJ 2001-03-06 20:19:07 +00:00
Marty Kraimer
74b5168f99 epicsTimerQueueCreate=>epicsTimerQueueAllocate 2001-03-06 15:31:43 +00:00
W. Eric Norum
3cba651ae8 Add definition of partial link command (LD). 2001-03-06 15:12:50 +00:00
Marty Kraimer
745b4dc19e just get rid on the subdirectory 2001-03-06 13:46:35 +00:00
Janet B. Anderson
2a3d025bda Changed LIBRARY_OBJS to LIB_OBJS 2001-03-05 22:01:54 +00:00
Janet B. Anderson
e42bd02bb6 Use gcc for depends rule 2001-03-05 22:01:52 +00:00
Janet B. Anderson
29ff706f0f Reordered lines 2001-03-05 22:01:51 +00:00
Janet B. Anderson
2a2d1f2bc6 Removed snc lines 2001-03-05 22:01:50 +00:00
Janet B. Anderson
e88eea7693 Removed LDCMD 2001-03-05 22:01:48 +00:00
Janet B. Anderson
999b246da0 LIBRARY_OBJS, Depends, and Templates changes. Munch dep added. LD to LDCMD. 2001-03-05 22:01:47 +00:00
Janet B. Anderson
da11287c31 Moved include to RULES_BUILD 2001-03-05 22:01:45 +00:00
Janet B. Anderson
a38e3b96b6 PRODUCT_OBJS and LIBRARY_OBJS changes. Removed snc defs. Depends changes. 2001-03-05 22:01:44 +00:00
Janet B. Anderson
44e18d649e Removed SNCFLAGS 2001-03-05 22:01:42 +00:00
Janet B. Anderson
b27caeab76 Changed CCC to CC in CPP definition. 2001-03-05 22:01:41 +00:00
Janet B. Anderson
ed5e4a2611 Depends change. 2001-03-05 20:36:20 +00:00
Janet B. Anderson
d6e1e7e027 Changed seq file from .st to .stt. 2001-03-05 01:24:40 +00:00
Janet B. Anderson
d7afe38857 Updated MSI definition. 2001-03-02 21:54:38 +00:00
Janet B. Anderson
d24ebb4803 Converted st file to stt file. 2001-03-02 20:15:59 +00:00
Janet B. Anderson
a30c122f83 Initial version. 2001-03-01 19:31:40 +00:00
Jeff Hill
aaccfedfd8 minimize use of epicsShareClass and epicsShareFunc 2001-02-28 16:25:57 +00:00
Janet B. Anderson
a00707b719 Allow osclass definitions for PROD_OBJS, LIB_OBJS, and LIB_SRCS. 2001-02-27 22:45:19 +00:00
Janet B. Anderson
a6e1e76130 Removed ca.def file. 2001-02-26 18:29:54 +00:00
Marty Kraimer
63ffdc4564 prevent conflict with devLib.h 2001-02-26 14:43:51 +00:00
Jeff Hill
ea9aba2917 made compatible with prev changes 2001-02-24 02:07:35 +00:00
Jeff Hill
3fb8147771 workaround for borland compiler bug 2001-02-24 01:25:17 +00:00
Jeff Hill
b67619c0fc workaround for borland compiler bug 2001-02-24 01:18:06 +00:00
Jeff Hill
571136b337 fixed proper return type for inc and dec operator 2001-02-24 00:25:58 +00:00
Janet B. Anderson
c532fc4a1c Added LDCMD definition. 2001-02-23 21:23:59 +00:00
Janet B. Anderson
034e3129d2 Initial version. 2001-02-23 20:37:22 +00:00
Janet B. Anderson
4cdc6b2279 Added LDCMD definition. 2001-02-23 20:36:49 +00:00
Janet B. Anderson
e7133a50ec added LD definition 2001-02-23 20:36:00 +00:00
Janet B. Anderson
4e9a68e2a5 Added filters for file names 2001-02-23 20:35:32 +00:00
Janet B. Anderson
b42049ff64 Uncommented DEPLIB_LDFLAGS definition 2001-02-23 20:35:30 +00:00
Janet B. Anderson
889b9742f4 added LDCMD definition 2001-02-23 20:35:29 +00:00
Janet B. Anderson
8d5123d516 Removed seq rules. Added rules for module/app configure build 2001-02-23 20:35:28 +00:00
Janet B. Anderson
9873fcbe58 Added includes for top level RULES_BUILD and RULES_INCLUDE files 2001-02-23 20:35:27 +00:00
Janet B. Anderson
2e59061b67 Added module, app, ext configure Makefile definition 2001-02-23 20:35:25 +00:00
Janet B. Anderson
4a4e5a8682 Removed seq references 2001-02-23 20:35:04 +00:00
Marty Kraimer
2c577b3391 changes for seq support 2001-02-23 20:17:22 +00:00
Jeff Hill
e1e3b4c39e rearranged if hierarchy in read / write request protocol stubs 2001-02-23 01:04:43 +00:00
Jeff Hill
26536a647e use C++ style late declarations 2001-02-23 00:46:00 +00:00
Jeff Hill
9ba9afe834 fixed bug in string size test 2001-02-23 00:20:53 +00:00
Jeff Hill
7dec56450b removed redundant brackets 2001-02-23 00:04:14 +00:00
Jeff Hill
45433c9857 changed class names 2001-02-22 19:55:23 +00:00
Jeff Hill
1a9941689e changed file names 2001-02-22 19:53:17 +00:00
Jeff Hill
3fa13a1d8f dont use struct for C++ class defs 2001-02-22 19:52:09 +00:00
Marty Kraimer
aca1c5f76e add iocshLibrary 2001-02-22 19:39:25 +00:00
Marty Kraimer
e87f32f6e9 strdup not available on vxWorks 2001-02-22 19:39:02 +00:00
W. Eric Norum
40946c702a Make non-existent tasks look like they're suspended. This keeps the task
watchdog from reporting them over and over and over again.
2001-02-22 02:02:37 +00:00
Jeff Hill
544913d509 fixed typedef order problem 2001-02-21 22:38:20 +00:00
Marty Kraimer
ff7dcd1e38 fix rules for munch 2001-02-21 21:03:12 +00:00
Jeff Hill
41aba1370d cosmetic 2001-02-21 20:48:15 +00:00
Janet B. Anderson
7635c70877 Changed opt level from O2 to O3. 2001-02-21 20:41:40 +00:00
Jeff Hill
1845113762 fixed spelling 2001-02-21 18:44:56 +00:00
Janet B. Anderson
17b7777e74 Added wildcard for ioc boot dirs. 2001-02-21 18:40:14 +00:00
Jeff Hill
3517862871 cosmetic 2001-02-21 18:38:11 +00:00
Jeff Hill
145f5ca087 changed interface for non-threaded timer queue and rearranged
suffix order in names
2001-02-21 18:33:17 +00:00
Jeff Hill
36fc409e30 removed unused member function 2001-02-21 18:32:46 +00:00
Jeff Hill
379b452241 changed interface for non-threaded timer queue and rearranged
suffix order in names
2001-02-21 18:25:54 +00:00
Ralph Lange
167e17f5bc Fix to prevent dirs showing up multiple times when matching multiple wildcards 2001-02-21 16:55:49 +00:00
Jeff Hill
0b834904f4 fixed spelling 2001-02-21 16:33:40 +00:00
Jeff Hill
ca02b34b6f convert tabs to spaces 2001-02-21 16:24:12 +00:00
Janet B. Anderson
8b48db3da0 Removed filter to remove names starting with . or .. 2001-02-21 15:28:16 +00:00
Marty Kraimer
6348d4c311 registerRecordDeviceDriver.c moved from src/registry 2001-02-21 14:09:23 +00:00
Marty Kraimer
ad0819ba51 move registerRecordDeviceDriver.c to src/vxWorks/iocCore 2001-02-21 14:07:49 +00:00
Marty Kraimer
549de0c8f9 Add commented line for location of sequencer
registerRecordDeviceDriver now part of iocCore
2001-02-21 14:06:42 +00:00
Marty Kraimer
e5cafc9f58 Add commented line for location of sequencer 2001-02-21 14:06:05 +00:00
Jeff Hill
771de45cca cosmetic 2001-02-21 00:35:25 +00:00
Jeff Hill
757553668d adjusted for name changes 2001-02-20 23:42:47 +00:00
Jeff Hill
b6de9cf931 added double include protection 2001-02-20 23:41:52 +00:00
Jeff Hill
7b3c96471d added non-threaded timer queue and epicsTimer C interface 2001-02-20 23:41:03 +00:00
Jeff Hill
1867f33eeb added non-threaded timer queue 2001-02-20 23:40:31 +00:00
Janet B. Anderson
4fb58d5d46 Fixed parms for preprocessor. 2001-02-20 20:36:54 +00:00
Jeff Hill
0940527c65 rearranged to suit GNU compiler 2001-02-20 19:18:53 +00:00
Janet B. Anderson
8db5931fb2 Change preprocessor to gnu compiler. 2001-02-20 19:16:31 +00:00
Janet B. Anderson
17582955a9 Reordered include dirs so that ., .., and src dirs are first. 2001-02-20 19:15:39 +00:00
Janet B. Anderson
27cd4bbd26 Added strip fcn to ifndef lines. 2001-02-20 19:14:31 +00:00
Jeff Hill
c4b03e703b fixed missing const 2001-02-20 19:01:15 +00:00
Jeff Hill
a33ced77fc fixed missing const 2001-02-20 18:58:44 +00:00
Jeff Hill
e53da894f5 fixed use of nill object bug 2001-02-20 18:51:55 +00:00
Jeff Hill
7be2c2db6a cleaned up compiler dialect issues 2001-02-20 18:50:11 +00:00
Jeff Hill
85f5100665 fixed loop iteration bug in traversal functions 2001-02-20 18:47:20 +00:00
Janet B. Anderson
66900cefc9 Simplified snc rules. 2001-02-20 15:27:17 +00:00
Ralph Lange
0eb794b5fd Explicit clean.<arch> does not remove O.Common 2001-02-19 21:53:05 +00:00
Janet B. Anderson
818ffecc45 Snc rule changed, link no longer required. 2001-02-19 21:25:55 +00:00
Janet B. Anderson
f63a958a3b Changed .stt rule. 2001-02-19 20:33:58 +00:00
W. Eric Norum
cb0f8f6879 Add definition for how to run the C preprocessor. This is needed for
preprocessing sequencer source files.
2001-02-19 20:07:18 +00:00
Janet B. Anderson
7760d0e025 Removed extra CPPSNCFLAGS line since -x c is on defintion of CPP. 2001-02-19 17:34:34 +00:00
Janet B. Anderson
22bb0d96d2 Modified snc cpp flags. 2001-02-19 17:29:25 +00:00
Janet B. Anderson
2b650db1bc Modified snc cppflags. 2001-02-19 17:27:16 +00:00
Janet B. Anderson
c0957fb625 Removed include ov vxWorks.h from snc preprocessing. 2001-02-19 17:12:25 +00:00
W. Eric Norum
0775b0c397 Check value returned by rtems_task_start(). 2001-02-19 16:16:46 +00:00
W. Eric Norum
6f312ac705 Provide help message about comment lines. 2001-02-19 16:15:29 +00:00
W. Eric Norum
be26f7f684 Provide more meaningful help message. 2001-02-19 16:14:53 +00:00
Andrew Johnson
e04c8fdd47 All platforms support exceptions now, so removed the test and use of
epicsThrow macro.
2001-02-17 04:37:48 +00:00
W. Eric Norum
958890ea64 Add CPPSNCFLAGS so that state notation language programs are correctly preprocessed. 2001-02-16 21:51:27 +00:00
W. Eric Norum
2c63f42dbb More changes to reflect new EPICS build environment. 2001-02-16 16:45:55 +00:00
Ralph Lange
8a399c6fcb Workaround for CPPSNCFLAGS bug 2001-02-16 16:29:49 +00:00
Jeff Hill
a9fe5348d9 fixed gnu warning 2001-02-16 03:34:53 +00:00
Jeff Hill
f550878fed removed function pointer dump 2001-02-16 03:29:07 +00:00
Jeff Hill
a1801b7808 fixed gnu warnings 2001-02-16 03:19:38 +00:00
Jeff Hill
10c1cd7569 fixed gnu warnings 2001-02-16 03:13:27 +00:00
Jeff Hill
c38a119e68 fixed gnu warnings 2001-02-16 02:26:11 +00:00
Jeff Hill
88457cce79 work correctly on systems that dont know about point to point IF (CYGWIN32) 2001-02-16 00:21:11 +00:00
Jeff Hill
63fb42a888 fixed lack of const 2001-02-15 23:15:46 +00:00
Jeff Hill
212b3212cc cosmetic 2001-02-15 23:15:33 +00:00
Jeff Hill
2a4cbd456e dont nanny queues 2001-02-15 22:49:43 +00:00
Jeff Hill
2f3c7ae269 better units 2001-02-15 22:27:47 +00:00
Jeff Hill
94e8d24f5a fixed bug in percent error calc 2001-02-15 22:21:18 +00:00
Jeff Hill
36f57b79db fixed warning 2001-02-15 22:12:35 +00:00
Jeff Hill
0e740e83cb fixed warning 2001-02-15 22:02:03 +00:00
Jeff Hill
a0c392423e finished queue sharing 2001-02-15 22:01:39 +00:00
Jeff Hill
8c0b42356f added newline at eof 2001-02-15 22:00:26 +00:00
Jeff Hill
83cb77131d proper rounding improves delay accuracy 2001-02-15 21:10:21 +00:00
Jeff Hill
94fa715e96 added const to show () vf 2001-02-15 21:09:52 +00:00
Jeff Hill
47d9285617 fixed missplaced inline function 2001-02-15 20:43:15 +00:00
Marty Kraimer
a97d5e18cd wait to let other threads start 2001-02-15 19:44:08 +00:00
Marty Kraimer
b59e2d7793 add S_dev_noDevice 2001-02-15 19:37:52 +00:00
Marty Kraimer
0ecf80c4bf add bessy 2001-02-15 19:37:00 +00:00
Janet B. Anderson
e3dcae62d8 Removed unneeded CFLAGS line. 2001-02-15 19:05:45 +00:00
Jeff Hill
4323532096 fixed add list to not use default assignment op 2001-02-15 17:38:24 +00:00
Jeff Hill
37977cef1b installed 2001-02-15 17:32:06 +00:00
Jeff Hill
93987971ab enable RTTI 2001-02-15 17:29:08 +00:00
Jeff Hill
33fa1b7ff8 changed list interface 2001-02-15 17:26:50 +00:00
Jeff Hill
9e52a5b095 fixed time calculation overflow 2001-02-15 17:21:28 +00:00
Jeff Hill
c82ea31a40 removed inappropriate epicsExportSharedSymbols 2001-02-15 17:20:03 +00:00
Jeff Hill
603f2cfd9d installed epicsTimer test 2001-02-15 17:15:50 +00:00
Jeff Hill
a9ff0223af installed 2001-02-15 17:14:50 +00:00
Jeff Hill
e414071448 new list interface 2001-02-15 17:13:25 +00:00
Jeff Hill
03e53adfab changes during implementation 2001-02-15 17:12:55 +00:00
Jeff Hill
807ed1317d installed epicsTimer implementation 2001-02-15 17:11:22 +00:00
W. Eric Norum
85485063cf Must explicitly set EXE and OBJ variables. 2001-02-15 02:08:27 +00:00
Jeff Hill
f121fbb43b added #define epicsExportSharedSymbols 2001-02-15 00:53:01 +00:00
Jeff Hill
b572a856e9 fixed doc 2001-02-15 00:22:01 +00:00
Andrew Johnson
93aa11d2f6 Some mod's to cope with MSVC's poor C++ support 2001-02-14 20:13:36 +00:00
Ralph Lange
2a763a57ae Fixed the vxWorks.h fix fir C++ 2001-02-14 16:40:45 +00:00
W. Eric Norum
6eb7163723 Not working, but committing to let others have a look at this. 2001-02-14 03:52:00 +00:00
Ralph Lange
35b2755efe No min() and max() macros in c++ 2001-02-13 20:49:44 +00:00
Janet B. Anderson
6ccd369d90 Added filter to remove names starting with . or .. 2001-02-13 17:13:22 +00:00
Janet B. Anderson
f1ada22570 Changed depends definition from Sun compiler to gnu compiler. 2001-02-13 17:12:14 +00:00
Janet B. Anderson
60608a662b Modified depends definitions and munch definitions. 2001-02-13 17:10:07 +00:00
Janet B. Anderson
aef1418926 Modified depends rules and munch rules. 2001-02-13 17:09:16 +00:00
Janet B. Anderson
3e7c9345c3 Modified depends definitons. 2001-02-13 17:08:41 +00:00
Marty Kraimer
e4641c3d3b add show method 2001-02-13 17:08:35 +00:00
Andrew Johnson
50f60bae50 C++ standard facilities, including list template 2001-02-12 23:01:31 +00:00
Andrew Johnson
c188778d53 Test programs for epicsList and epicsExcept 2001-02-12 23:00:26 +00:00
Andrew Johnson
0ce45f849a Entries for cppStd/* files 2001-02-12 23:00:03 +00:00
Jeff Hill
bf0537cf73 fixed sun pro warnings 2001-02-09 19:28:01 +00:00
Jeff Hill
dc957f400f work around braindead sun pro compiler 2001-02-09 18:48:57 +00:00
Jeff Hill
8ba3da20af improved interface to CAC 2001-02-09 17:41:23 +00:00
Jeff Hill
7bc172f355 made port public 2001-02-09 17:39:14 +00:00
Jeff Hill
ab468c8b8c socket is now private 2001-02-09 17:38:54 +00:00
Jeff Hill
a1fbe85e7b redesigned class hierarchy 2001-02-09 17:38:00 +00:00
Jeff Hill
cebb5854cf cosmetic 2001-02-09 17:36:46 +00:00
Jeff Hill
8d9a97ef1d removed gnu warning elim class 2001-02-09 17:35:57 +00:00
Jeff Hill
74f58efb24 installed 2001-02-09 17:27:08 +00:00
Jeff Hill
d8cb7ff848 defunct 2001-02-09 17:25:30 +00:00
Jeff Hill
6174ebefde made printf related stuff no longer inline 2001-02-09 17:24:49 +00:00
Jeff Hill
a885e11a74 dont delete channels in destructor 2001-02-09 17:24:06 +00:00
Jeff Hill
56c0dbc4b2 made bind routine more fault tollarant 2001-02-09 17:21:12 +00:00
Jeff Hill
49a79bf8fb made tests work with local channels 2001-02-09 17:19:52 +00:00
Jeff Hill
6aadf7f5fc changed class hierarchy in cacIO.h 2001-02-09 17:19:24 +00:00
Jeff Hill
7286d6be96 cosmetic 2001-02-09 17:16:43 +00:00
Janet B. Anderson
8460ec69f7 Added PERL to REGISTERRECORDDEVICEDRIVER definition. 2001-02-08 19:35:58 +00:00
Marty Kraimer
5de0de0e14 changes after discussion with Jeff 2001-02-08 18:58:27 +00:00
Jeff Hill
10bd2f2372 fixed minor compiler errors 2001-02-08 17:05:11 +00:00
Jeff Hill
2f90f91f22 fixed MS DLL related warning 2001-02-07 23:11:06 +00:00
Ralph Lange
733204b3c2 += full RSET definition for C++ 2001-02-06 22:53:11 +00:00
Janet B. Anderson
1dacd15eea Removed reference to tornado 101. 2001-02-06 21:00:16 +00:00
Marty Kraimer
e80ea9a289 add const in may places 2001-02-06 15:19:53 +00:00
Janet B. Anderson
da3c88ea9a Modified comments. 2001-02-02 19:18:00 +00:00
Jeff Hill
1a7fd71b2f simplified 2001-02-02 02:17:55 +00:00
Jeff Hill
27ffa8e384 cosmetic 2001-02-01 01:16:38 +00:00
Marty Kraimer
6a52eff141 osiTime=>epicsTime 2001-01-31 13:34:02 +00:00
Jeff Hill
865ab30162 fixed parse error 2001-01-31 02:40:17 +00:00
Jeff Hill
4729b48bd7 removed unused semaphore 2001-01-31 02:33:28 +00:00
Jeff Hill
855f1afc9d added member function that returns the number of entries installed 2001-01-31 02:00:21 +00:00
Jeff Hill
1bb85f670c print warning message if IO is still installed in tcp iiu when
it disconnects
2001-01-31 01:59:32 +00:00
Jeff Hill
321dae127a make tcpiiu object unavailable to udp before shutting it down 2001-01-31 01:58:47 +00:00
Jeff Hill
e7200ab600 fixed conn handler conn test to allow multiple loops 2001-01-31 00:54:11 +00:00
Marty Kraimer
c5b6b92361 main change is suppress error message 2001-01-30 16:17:32 +00:00
Janet B. Anderson
8a8f1a7ccf Modified depends rules 2001-01-30 16:02:25 +00:00
Janet B. Anderson
8ded7b56ab Removed ANSI and CPLUSPLUS 2001-01-30 16:00:51 +00:00
Janet B. Anderson
e8dec4073d Updated comments 2001-01-30 16:00:46 +00:00
Janet B. Anderson
5f6be5e6e8 Updated all flags. 2001-01-30 16:00:42 +00:00
Janet B. Anderson
c558d86ba9 Initial version 2001-01-30 16:00:39 +00:00
Marty Kraimer
748f8f9131 replacement for osiTime 2001-01-29 20:17:09 +00:00
Jeff Hill
7d6ded2ad7 installed workaround for gnu warning 2001-01-27 00:48:06 +00:00
Jeff Hill
e10d86cd05 added newline at EOF 2001-01-27 00:46:07 +00:00
Jeff Hill
d704cd7bb8 add new line at EOF 2001-01-27 00:45:07 +00:00
Jeff Hill
8b2f9c138a fixed C++ style comment in C file 2001-01-27 00:23:16 +00:00
Jeff Hill
728a319f3d fixed spelling 2001-01-27 00:18:43 +00:00
Jeff Hill
10d8caa7ea cosmetic 2001-01-27 00:17:06 +00:00
Jeff Hill
a33c20599c made tcp recv and send watch dogs embedded objects 2001-01-27 00:16:44 +00:00
Jeff Hill
29f275ab82 made tcp recv and send watch dogs embedded objects and
added debug diagnostics
2001-01-27 00:16:21 +00:00
Jeff Hill
d85ee06cee added beacon period diagnostic, fixed flush logic, made tcp
recv and send watch dogs embedded objects
2001-01-27 00:15:19 +00:00
Jeff Hill
5882c4d675 added beacon period diagnostic 2001-01-27 00:13:39 +00:00
Jeff Hill
55bd72a6b1 made tcp send / recv watch dogs be embedded objects 2001-01-27 00:12:54 +00:00
Jeff Hill
ca53e44f8a fixed logic when beacon arrives for a dead IIU 2001-01-27 00:10:29 +00:00
Jeff Hill
c5bc8f753b added several new tests 2001-01-27 00:08:53 +00:00
Jeff Hill
79f66abba3 installed event rate test 2001-01-27 00:07:52 +00:00
Jeff Hill
1e63230768 fixed port was sent in the wrong byte order in beacon message 2001-01-26 22:11:33 +00:00
Jeff Hill
a1aea5a3d7 fixed potentiall bug when communicating with earlier versions 2001-01-26 21:13:48 +00:00
Janet B. Anderson
258a09c5e0 Added optional alternate compiler command line parm. 2001-01-26 16:29:45 +00:00
Jeff Hill
99454b6ca6 fixed spelling 2001-01-25 20:53:43 +00:00
Jeff Hill
35e4be9f4a dont use sendto on connected socket 2001-01-25 19:13:45 +00:00
Jeff Hill
9a0335326f rearrange include hierarchy 2001-01-25 19:03:46 +00:00
Jeff Hill
41232fae4f fixed missing inline func includes on sun pro 2001-01-25 02:26:10 +00:00
Jeff Hill
70b368c854 added new uninstal methods which are initially noops 2001-01-25 02:16:22 +00:00
Jeff Hill
1cfca09aa1 improved IIU shutdown seq for IO 2001-01-25 02:14:59 +00:00
Jeff Hill
c50d84e50d better destroy sequence 2001-01-25 02:12:03 +00:00
Jeff Hill
dc3d2b9ff9 removed destroy method and added uninstall method 2001-01-25 02:11:12 +00:00
Jeff Hill
d3dc9bee2b better variable name 2001-01-25 02:10:28 +00:00
Jeff Hill
7a560a88b1 rearranged order of tests 2001-01-25 02:09:18 +00:00
Jeff Hill
2a150bd018 made memeber func const 2001-01-25 02:07:39 +00:00
Marty Kraimer
943982da70 new headers 2001-01-24 21:35:53 +00:00
Jeff Hill
e5e747c6c5 added new line at EOF 2001-01-24 18:26:27 +00:00
W. Eric Norum
ffdd3ce510 No need to call epicsThreadInit since it is now completely internal to
osdThread.c.
2001-01-24 14:23:34 +00:00
Jeff Hill
db43b6e983 upgraded event subscription logic 2001-01-23 23:56:05 +00:00
Marty Kraimer
debb5b5814 dont open output file until input sucessfully read 2001-01-23 21:33:18 +00:00
Jeff Hill
745977642e fixed Solaris warnings introduced by prev change 2001-01-22 23:36:44 +00:00
Jeff Hill
3761af7cd2 fixed gnu warnings introduced by prev change 2001-01-22 23:16:57 +00:00
Jeff Hill
abe1bc9e98 fixed borland warning 2001-01-22 23:00:13 +00:00
Jeff Hill
57bf87beac fixed borland warning 2001-01-22 22:52:51 +00:00
W. Eric Norum
e7bfee6f8d Must include osdInterrupt.h to get prototype for interrupt context message
handler daemon.
2001-01-22 21:11:21 +00:00
Marty Kraimer
ed492f407c osiInterrupt is now epicsInterrupt 2001-01-22 20:12:16 +00:00
Marty Kraimer
013587eeeb epicsThreadInit is no longer public 2001-01-22 20:11:33 +00:00
Marty Kraimer
e347cbd2e6 osiInterrupt=>epicsInterrupt; epicsThreadInit now static 2001-01-22 20:10:19 +00:00
Jeff Hill
46aa89399a fixed bug introduced by mrk's previous change 2001-01-22 19:09:32 +00:00
Jeff Hill
ad3da31c06 moved inline include to appropriate file 2001-01-22 18:40:10 +00:00
Janet B. Anderson
329e3b5177 Removed extra include dirs. 2001-01-19 21:28:03 +00:00
Marty Kraimer
30cb21cae3 remove test statements accidently left in code 2001-01-19 16:22:31 +00:00
Marty Kraimer
2cdc26d2fe fix undefined on solaris 2001-01-19 15:55:01 +00:00
Jeff Hill
625557cd1d fixed inlines that show up undefined only with gnu 2001-01-19 01:17:36 +00:00
Jeff Hill
a74b043aff fixed event subscriptions 2001-01-19 00:58:01 +00:00
Jeff Hill
7a334eb417 improved subscription test 2001-01-19 00:45:50 +00:00
Jeff Hill
bf2e145ed1 use 64 bit floats 2001-01-18 23:23:43 +00:00
Jeff Hill
c2aa43750f set scan timer pointer to zero if it isnt used 2001-01-18 23:14:14 +00:00
Marty Kraimer
4a53d963b3 fix for solaris 2001-01-18 21:13:43 +00:00
Janet B. Anderson
e0181dfae0 add decoration 2001-01-18 20:50:04 +00:00
Janet B. Anderson
a3aac0aaa2 extern did not work 2001-01-18 20:49:04 +00:00
Janet B. Anderson
d4a6bb29f4 extern "C" did not work for WIN32 2001-01-18 20:31:02 +00:00
Janet B. Anderson
5acd6d9547 fix epicsThreadBooleanStatusFail 2001-01-18 20:28:24 +00:00
Janet B. Anderson
a0019d0e5c fix epicsThreadBooleanStatusSuccess 2001-01-18 20:08:09 +00:00
Jeff Hill
d8d0e6b86d allow creation of PV's that dont update periodically 2001-01-18 19:57:14 +00:00
Marty Kraimer
dbe9c8e75f changes for osiThread=>epicsThread 2001-01-18 19:08:14 +00:00
Janet B. Anderson
4c247070aa Added quote mark. 2001-01-17 20:54:17 +00:00
Janet B. Anderson
cbe80325be Added borland. 2001-01-17 20:52:15 +00:00
Janet B. Anderson
7331ddbd78 Added borland. 2001-01-17 20:12:39 +00:00
W. Eric Norum
4a76aa1d64 Linux iocsh now uses readline so additional libraries are necessary. 2001-01-17 00:14:40 +00:00
Jeff Hill
12075c3274 disconnect when flush fails 2001-01-16 17:09:30 +00:00
Janet B. Anderson
bf7b7c7aa9 Added dependancy for asLib.h. 2001-01-15 20:42:13 +00:00
Marty Kraimer
6ebdda485d bug fix for Janet 2001-01-15 20:27:24 +00:00
Janet B. Anderson
79929bbacd Initial version 2001-01-15 16:49:19 +00:00
W. Eric Norum
6c1be6f025 Since all systems other than vxWorks use a C++ constructor to register sequencer
programs and commands, use C++ to compile the output of SNC.  The commands to
use C in configure/os/CONFIG.Common.vxWorksCommon are commented out for now.
If enough people have problems using C++ to compile their SNC programs the
commands may have to be uncommented.
2001-01-14 22:15:40 +00:00
W. Eric Norum
951db45c95 Convert from semMutex to epicMutex. 2001-01-14 20:37:46 +00:00
Janet B. Anderson
0472e5f546 Initial version. 2001-01-12 23:28:34 +00:00
Janet B. Anderson
bfe7e7d44d Removing file from applications. 2001-01-12 23:28:02 +00:00
Janet B. Anderson
e7115758de Removing RULES.Db from applications. 2001-01-12 23:26:59 +00:00
Janet B. Anderson
fc076ff851 Create registerRecordDeviceDriver OBJ for vxWorks only. 2001-01-12 23:25:35 +00:00
Janet B. Anderson
e8b0b09c3f Renamed RECTYPES to DBDINC 2001-01-12 23:25:29 +00:00
Janet B. Anderson
3e743436cd Updated comments. Include RULES not RULES.Db 2001-01-12 23:25:25 +00:00
Janet B. Anderson
cd63b99470 exampleApp.dbd renamed to example.dbd 2001-01-12 23:25:19 +00:00
Janet B. Anderson
a7bc964a3b Renames RECTYPES, DBDNAME, registerRecordDeviceDriver.cpp 2001-01-12 23:25:11 +00:00
Janet B. Anderson
22f18ef226 Moved uninstall of INSTALL_DB to base 2001-01-12 23:24:51 +00:00
Janet B. Anderson
2fddf4ffc2 Added RELEASE dependancy 2001-01-12 23:24:46 +00:00
Janet B. Anderson
4e55497467 Removed RULES.registerRecordDeviceDriver include 2001-01-12 23:24:41 +00:00
Janet B. Anderson
1cecf8593b Added comments 2001-01-12 23:24:35 +00:00
Janet B. Anderson
693fc2e591 Removed cvs Id & added EPICS_HOST_ARCH to makeConfigAppInclude rule 2001-01-12 23:24:30 +00:00
Janet B. Anderson
bdcccedb95 Removed reference to INSTALLDB 2001-01-12 23:24:06 +00:00
Janet B. Anderson
321dfb609a Remove RULES.registerRecordDeviceDriver and RULES.Db 2001-01-12 23:23:57 +00:00
Janet B. Anderson
6f3a2f8b4a Allow output to O.Common 2001-01-12 23:23:51 +00:00
Janet B. Anderson
93a9e56502 O.Common changes 2001-01-12 23:23:45 +00:00
Janet B. Anderson
7eea9df5d5 Added global and prints for dbMakeDBDDepends 2001-01-12 23:21:54 +00:00
Janet B. Anderson
582c20e9a6 Added dbMakeDBDDepends 2001-01-12 23:21:47 +00:00
Janet B. Anderson
e4a7e695ae Renamed DBINSTALL to DBD, RECTYPES & MENUS to DBDINC 2001-01-12 23:21:37 +00:00
Janet B. Anderson
d1b985609d Renamed BPTS to DBD and MENUS to DBDINC 2001-01-12 23:21:32 +00:00
Janet B. Anderson
b830f40620 Changed library lines 2001-01-12 23:20:54 +00:00
Janet B. Anderson
5d0fc9e609 Change DEPENDS to DBDEPENDS 2001-01-12 23:20:51 +00:00
Janet B. Anderson
b2bc95d8b8 Added epicshostarch to command line for RELEASE files 2001-01-12 23:20:47 +00:00
Janet B. Anderson
d6d842a317 Change / to \\ in link line 2001-01-12 23:20:34 +00:00
Janet B. Anderson
8958f19f9a Updated comment 2001-01-12 23:19:56 +00:00
Janet B. Anderson
e8cc2b0edf Moved gcc defs to CONFIG.Common.solaris-sparc 2001-01-12 23:19:50 +00:00
Janet B. Anderson
e941c6d19f Updated comments, OS_CLASS,ARCH_CLASS 2001-01-12 23:19:24 +00:00
Janet B. Anderson
6d0ee622c6 Updated comments, changed WIND_HOST_TYPE 2001-01-12 23:19:19 +00:00
Janet B. Anderson
93364c06d6 Added SHRLIB dependancy definitions 2001-01-12 23:19:14 +00:00
Janet B. Anderson
f8675d987e Added uninstall of INSTALL_DB dir 2001-01-12 23:18:53 +00:00
Janet B. Anderson
b62f877c69 O.Common changes. Moved db & dbd rules to and added include for RULES.Db 2001-01-12 23:18:43 +00:00
Janet B. Anderson
52de8d577a O,Common changes. Added all db and dbd defines 2001-01-12 23:17:58 +00:00
Janet B. Anderson
ec1aa66cd3 O.Common changes. Moved all db and dbd references to RULES.Db 2001-01-12 23:17:54 +00:00
Janet B. Anderson
e35e8e69b7 Added defines for undefined epics tools 2001-01-12 23:17:50 +00:00
Janet B. Anderson
44f9fbd6c3 Removed HTMLS_<osclass> and added SHR_LIBS_<osclass> 2001-01-12 23:17:44 +00:00
Janet B. Anderson
411b6176ec Added CROSS_INCLUDES and CROSS_LDFLAGS 2001-01-12 23:17:37 +00:00
Janet B. Anderson
4baf145c50 Added extern "C" for dset and drvet. 2001-01-12 22:01:27 +00:00
Marty Kraimer
e57e9bcac0 fix C++ problems 2001-01-12 19:12:45 +00:00
Marty Kraimer
9cc502dbe6 ifdef for C++ was in the wrong place 2001-01-12 19:12:10 +00:00
Jeff Hill
7c260ef69a added new line at EOF 2001-01-12 16:52:00 +00:00
Jeff Hill
cb2bbe86dd fixed sun pro warning 2001-01-12 16:48:33 +00:00
Jeff Hill
d0574e2f19 fixed sun pro warnings 2001-01-12 16:31:00 +00:00
Marty Kraimer
cfe2ed5f17 replace osiSem by epicsMutex/epiceEvent 2001-01-12 16:13:53 +00:00
Marty Kraimer
1ecd0c520c add taskwd 2001-01-12 16:05:53 +00:00
Jeff Hill
7415fdbed3 improved comment 2001-01-12 15:42:14 +00:00
Jeff Hill
1d14996b28 accomodate aps osi => epics name change 2001-01-12 00:41:37 +00:00
Jeff Hill
2aa0507c12 fixed compiler version 2001-01-12 00:30:54 +00:00
Jeff Hill
a50444c61a removed comment 2001-01-12 00:29:04 +00:00
Jeff Hill
3057b9627c fixed bugs introduced by APS's osi => epics name changes 2001-01-12 00:27:59 +00:00
Jeff Hill
250554ed71 fixed tab formatting 2001-01-12 00:26:15 +00:00
Jeff Hill
ad5db9a914 osi => epics name change to accomodate aps 2001-01-12 00:24:12 +00:00
Jeff Hill
4f09be744f fixed syntax error in construtor 2001-01-11 22:24:01 +00:00
Jeff Hill
296db96a6c removed ref to osiEvent.h and osiMutex.h 2001-01-11 22:23:01 +00:00
Jeff Hill
43822c9e35 accomodate Marty's osi => epics name changes 2001-01-11 22:07:17 +00:00
Jeff Hill
8dd2439e65 fixed dissallowed operators 2001-01-11 21:57:39 +00:00
Jeff Hill
418aa20de6 accomodate Marty's osi => epics name changes 2001-01-11 21:54:53 +00:00
Jeff Hill
774f6dc27e get things to build again after Marty's osi => epics name changes 2001-01-11 21:48:24 +00:00
Jeff Hill
8c0600b372 fixed meyers warnings 2001-01-11 21:39:15 +00:00
Jeff Hill
d8e1d92ab9 disallow copy constructor and assignment operator 2001-01-11 21:38:31 +00:00
Marty Kraimer
afdd6e7bee change osiEvent to epicsEvent 2001-01-11 21:34:23 +00:00
Marty Kraimer
fb1f6751d3 osiMutex replaced by epicsMutex 2001-01-11 19:33:47 +00:00
Marty Kraimer
cb4bfd4640 osi replaced bu epics 2001-01-11 19:33:15 +00:00
Marty Kraimer
b1d9ce2941 use epicsEvent 2001-01-11 19:21:36 +00:00
Jeff Hill
b236dedfe8 no longer used 2001-01-11 17:40:47 +00:00
Jeff Hill
a93f6d5e7e ansi stdlib.h header is more portable than malloc.h 2001-01-11 17:35:04 +00:00
W. Eric Norum
9ab0e7ec59 New epicReadline.c support means that -DIOCSH_USE_READLINE flags
are no longer necessary.
2001-01-11 16:50:15 +00:00
W. Eric Norum
06c360c5eb Move readline support to src/libCom/osi/os/xxx/.
The single source file is in src/libCom/osi/os/default/epicsReadline.c which
uses the readline library routines or uses local code to read lines of input.
Selection is made by src/libCom/osi/os/XXX/osdReadline.h.  The default
version does not cause the readline library routines to be used.
2001-01-11 16:39:42 +00:00
Marty Kraimer
c1ba676103 replace osiMutex with epicsMutex; osiEvent with epicsEvent 2001-01-11 16:32:55 +00:00
Marty Kraimer
36a69befd8 replace osiSem with epicsMutex and/or epicsEvent 2001-01-11 16:15:14 +00:00
Marty Kraimer
46ffb184ff remove include for osiSem 2001-01-11 16:13:58 +00:00
Marty Kraimer
a1e38ee7fd remove include for osiSem.h 2001-01-11 16:08:14 +00:00
Marty Kraimer
a64805a69f replace osiEvent with epicsEvent 2001-01-11 16:07:40 +00:00
Marty Kraimer
fef788d23f remove include for osiSem.h 2001-01-11 15:58:10 +00:00
Marty Kraimer
378e7cc772 needs dependency 2001-01-11 15:24:25 +00:00
W. Eric Norum
02caca0732 Make everything in registerRecordDevicedriver.cpp `const'. This should get rid
warnings about initializing `char *' with string literals.
2001-01-11 14:59:13 +00:00
W. Eric Norum
59b6494147 Fix putenv wrapper so that environment isn't left with pointers to freed memory. 2001-01-10 17:45:58 +00:00
Janet B. Anderson
03ea50ac35 Added define for epicsExportSharedSymbols. 2001-01-10 17:21:21 +00:00
Marty Kraimer
539e635d0c fix names 2001-01-10 16:32:47 +00:00
Jeff Hill
95a0478582 fixed Microsloth DLL issues 2001-01-10 15:54:31 +00:00
Jeff Hill
6ae32acf9b fixed link time problem introduced when name was changed to epics 2001-01-10 15:21:05 +00:00
Jeff Hill
625d383805 fixed compile time problem introduced when name was changed to EPICS 2001-01-10 15:13:57 +00:00
W. Eric Norum
164b1948fc Add OS-specific version to supply some missing prototypes. 2001-01-10 14:55:52 +00:00
Marty Kraimer
0d742d5408 dont override description of putenv 2001-01-10 14:23:37 +00:00
W. Eric Norum
36a46d4aad C++ STL does not work on Solaris or Windows so replace the calls to it with
calls to the EPICS registry routines.
Maintain a local linked list of commands for use by the help command.
2001-01-09 16:16:02 +00:00
Jeff Hill
12b49d1353 include assert.h 2000-12-21 22:42:02 +00:00
Jeff Hill
64274356d1 dont include assert if it isnt used in the header file 2000-12-21 22:41:37 +00:00
Jeff Hill
fdb3b85bde added operator = (const osiTime &) 2000-12-21 21:53:47 +00:00
W. Eric Norum
d95e8b2822 Make ioccrf argument lists constant.
Add std namespace to ioccrf.cpp.
2000-12-21 20:35:43 +00:00
W. Eric Norum
3e09b0fd52 Use an unnamed namespace instead of a static to provide a file-local scope. 2000-12-21 19:42:03 +00:00
W. Eric Norum
8ea97a12b5 Compile properly when IOCCSH_USE_READLINE is not defined. 2000-12-21 19:36:01 +00:00
Marty Kraimer
0af2304a36 change semMutexId to epicsMutexId 2000-12-21 17:00:55 +00:00
W. Eric Norum
4a2999770b Declare C linkage only where necessary. 2000-12-21 16:34:57 +00:00
W. Eric Norum
fe4cad085e Change the registerRecordDeviceDriver.pl script to create
registerRecordDeviceDriver.c as a C++ file (.cpp) so that it can
use a static constructor to register the registerRecordDeviceDriver()
command with the IOC shell
Remove the old registerRecordDeviceDriverRegister.[ch] source files.
2000-12-21 15:57:21 +00:00
Marty Kraimer
d3c0f075cf replacements for osdSem 2000-12-20 21:02:04 +00:00
W. Eric Norum
a5ee8cf64a Enable shared libraries for linux-x86. 2000-12-20 15:53:39 +00:00
W. Eric Norum
68e3f07c6a Register more commands automatically from within ioccrf.cpp. 2000-12-20 01:04:52 +00:00
W. Eric Norum
85b58a1e05 Register common IOC shell commands automatically as part of ioccrf constructors. 2000-12-19 21:52:31 +00:00
Marty Kraimer
d57ab33a44 replaces osiSem 2000-12-19 20:40:32 +00:00
Marty Kraimer
47519588b6 osiFindGlobalSymbol changed to epicsFindSymbol 2000-12-19 14:59:56 +00:00
Marty Kraimer
1c0ef4c177 osiFindGlobalSymbol change to epicsFindSymbol 2000-12-19 14:57:58 +00:00
Marty Kraimer
d4433eb33c change name 2000-12-19 14:55:43 +00:00
Marty Kraimer
31ee7d7e07 change osi to epics 2000-12-19 14:48:29 +00:00
Marty Kraimer
22545f79ed osi replaced by epics 2000-12-19 14:46:38 +00:00
Marty Kraimer
e7c18f1dc9 osdFindGlobalSymbol.h not needed; osi replaced by epics 2000-12-19 14:46:01 +00:00
W. Eric Norum
be8e43a227 Change to reflect new RTEMS install point. 2000-12-18 22:09:03 +00:00
W. Eric Norum
458337bb75 Change RTEMS support files to reflect changes in the way RTEMS board-support
packages are now installed.
Remove use of RTEMS_MAKEFILE_PATH environment variable.  Path to RTEMS
directories is now provided explicitly in configure/os/CONFIG.Common.RTEMS.
2000-12-18 16:05:26 +00:00
W. Eric Norum
f89e77438d A few more files added as part of the conversion to C++. 2000-12-18 15:35:10 +00:00
W. Eric Norum
ad7dc7153c Big changes to ioccrf routines.
1) Switched from using the registry to using a C++ map.  This provides
   an easy way to add...
2) A help command.  With no arguments, this command prints a table of
   commands.  With arguments it prints a synopsis of the specified
   command(s).
3) ioccrf() is now thread-safe with plans to add multiple remote
   access via telnet.  The value pointers have been removed from the
   argument structures and a pointer to an array of argument unions is
   passed to the registered callback routines.
4) All command/argument configuration structures are now const.
2000-12-18 15:33:21 +00:00
W. Eric Norum
faa077ca9e Avoid a null-pointer dereference when the dbpr command is invoked with
no arguments.
2000-12-16 01:07:14 +00:00
Marty Kraimer
37fbc3b19d epicsRingBytes replaces osiRing 2000-12-15 16:35:17 +00:00
Marty Kraimer
26a9323422 remove unnecessary calls to TSinit 2000-12-15 15:34:40 +00:00
Marty Kraimer
25b6f3da80 fix bug 2000-12-15 15:31:58 +00:00
Marty Kraimer
5700c0a8c2 replace osiRing with epicsRingPointer 2000-12-15 15:17:00 +00:00
Marty Kraimer
f110f47011 replace osiRing with epicsRingPointer 2000-12-15 15:05:48 +00:00
Marty Kraimer
34198a1824 implement asTrapWrite 2000-12-15 15:02:32 +00:00
Jeff Hill
f4397da253 fixed gnu warning 2000-12-14 01:20:26 +00:00
Jeff Hill
55e6d1a8d5 fixed gnu warnings 2000-12-14 01:05:37 +00:00
Jeff Hill
7a5b239bff fixed gnu warnings 2000-12-14 00:41:49 +00:00
Jeff Hill
a67a2852bc print only first error message when accept fails, reset on success 2000-12-13 23:21:15 +00:00
Jeff Hill
5f5c51fc44 fixed MS warnings 2000-12-08 02:12:19 +00:00
Janet B. Anderson
1b128857c8 Added missing #endif. 2000-12-06 18:56:22 +00:00
Janet B. Anderson
0217cb7b49 Added tsDefs. 2000-12-06 16:41:00 +00:00
Janet B. Anderson
fd5b26a387 Added tsDefs - R3.13 compatibility tsStamp code 2000-12-06 16:38:04 +00:00
Janet B. Anderson
d622dc7d31 Added Linux to LD_LIBRARY_PATH comment. 2000-12-01 20:49:32 +00:00
Jeff Hill
25ad71b167 fixed the date printout 2000-12-01 00:10:44 +00:00
Jeff Hill
25617e3917 changes from Ken Evans 2000-12-01 00:09:55 +00:00
Jeff Hill
284385549e better message 2000-11-30 19:32:18 +00:00
Jeff Hill
40e2d2be24 call diagnostic routines 2000-11-30 17:52:57 +00:00
Jeff Hill
9470277223 cosmetic 2000-11-30 17:52:22 +00:00
Jeff Hill
da2ad045bf removed disconnect vf, added isZSubscripton vf 2000-11-30 17:13:17 +00:00
Jeff Hill
fcdec162d9 cleaned up disconnect sequence 2000-11-30 17:12:13 +00:00
Jeff Hill
78d1474884 removed disconnect virtual func 2000-11-30 17:10:32 +00:00
Jeff Hill
f3497249b8 removed disconnect virtual func and added isSubscriptin vf 2000-11-30 17:09:04 +00:00
Jeff Hill
ba569b18d3 added uninstallSubscription () func 2000-11-30 17:06:31 +00:00
Jeff Hill
f861933932 fixed bugs in disconnect sequence 2000-11-30 17:03:25 +00:00
Jeff Hill
0c8f90dc59 added isSubscription () func 2000-11-30 17:01:31 +00:00
W. Eric Norum
e1c196f0ad Plug memory leak -- free thread private variable information when task exits. 2000-11-30 15:23:51 +00:00
Jeff Hill
8685b5d48c use extern "C" with func def so that arg missmatch will be detected 2000-11-22 16:30:47 +00:00
Jeff Hill
7f16818f53 added additional debug stmnts 2000-11-22 00:52:33 +00:00
Jeff Hill
24b8e85338 fixed host name parse 2000-11-22 00:46:36 +00:00
Jeff Hill
d486eb746f added addr operator 2000-11-22 00:02:15 +00:00
Jeff Hill
c8f4fac5dc fix net mask fetch for Solaris 2000-11-21 23:46:53 +00:00
Jeff Hill
c1f7601ad4 allow CA addr list to include ports and improve duplicate detect 2000-11-21 22:23:28 +00:00
Jeff Hill
1052c6b2b7 dont allow strange ports in the beacon addr list 2000-11-21 22:20:46 +00:00
Jeff Hill
16d897ff93 initialize net mask entry 2000-11-21 22:17:07 +00:00
Jeff Hill
f211944fb3 added netmask field to addr node 2000-11-21 22:16:27 +00:00
Jeff Hill
f3bd7daba2 fixed parsing of port numbers with host names 2000-11-21 22:15:11 +00:00
Jeff Hill
1eee39d1c9 fixed comment 2000-11-21 00:36:18 +00:00
Jeff Hill
1d26155a03 allow traverse to work correctly when the node is deleted 2000-11-21 00:30:31 +00:00
Jeff Hill
8b452face6 allow two servers to attach to the same udp port 2000-11-20 22:23:42 +00:00
Jeff Hill
066dff91f2 errlogPrintf () is working correctly 2000-11-20 22:00:58 +00:00
Jeff Hill
76f6bb3c2f changed errlogPrintf to printf because errlogPrintf does not work 2000-11-20 21:52:40 +00:00
Jeff Hill
1db05de682 added new line at EOF 2000-11-20 21:39:57 +00:00
Jeff Hill
9686356aa1 fixed gnu warning 2000-11-20 21:38:46 +00:00
Jeff Hill
17b939f6d6 fixed missing const 2000-11-20 21:23:00 +00:00
Jeff Hill
8101eb486f fixed comment 2000-11-20 21:17:14 +00:00
Jeff Hill
5fe64ffc92 g++ requires address operator for mem func ptr 2000-11-20 21:13:36 +00:00
Jeff Hill
ffe38880e9 fixed const traverse 2000-11-20 21:00:55 +00:00
Jeff Hill
6943e07f55 added const traverse function 2000-11-20 20:52:01 +00:00
Jeff Hill
9723bfc8cd added newline at EOF 2000-11-20 20:11:32 +00:00
Jeff Hill
6b2c93673e use proper form of destroy 2000-11-20 19:58:10 +00:00
Jeff Hill
06bfcd795d removed port number export 2000-11-20 18:05:56 +00:00
Jeff Hill
a0cfe60c1e removed public port number 2000-11-20 18:03:08 +00:00
Jeff Hill
019441ad97 cosmetic 2000-11-20 18:02:44 +00:00
Jeff Hill
2076e3f802 removed resource table self delete usage 2000-11-20 18:02:14 +00:00
Jeff Hill
6fc0d7f8d7 allow two servers on one host 2000-11-20 17:58:10 +00:00
Jeff Hill
8c4747fe7b removed entry delete functionality 2000-11-20 17:52:42 +00:00
Jeff Hill
656e4355a7 exported repater related functionality 2000-11-20 17:51:29 +00:00
Jeff Hill
6fd085c371 bhe no-longer self deletes 2000-11-20 17:47:12 +00:00
Jeff Hill
4f02dbb007 installed 2000-11-20 17:44:31 +00:00
Jeff Hill
e090cfbc64 replace nill beacon addr as nec 2000-11-20 17:43:40 +00:00
Jeff Hill
be42414408 removed factory code 2000-11-20 17:41:20 +00:00
Jeff Hill
76d9b0c5c5 removed include of inline functions 2000-11-20 17:40:39 +00:00
Jeff Hill
c815fd04ff removed include of inline func 2000-11-20 17:38:40 +00:00
Jeff Hill
86c80186d3 bhe no-longer self deletes, export repeater related functionality 2000-11-20 17:36:40 +00:00
Jeff Hill
6153a1f0ae removed 2000-11-20 17:35:25 +00:00
Jeff Hill
25bb508f3d added inline functions to avoid undefined symbols 2000-11-20 17:35:05 +00:00
Jeff Hill
f113853b05 bhe no-longer self deletes 2000-11-20 17:34:19 +00:00
Jeff Hill
e3bd7003ba added casw 2000-11-20 17:29:31 +00:00
Janet B. Anderson
c951e901aa Added vxWorks-ppc603. 2000-11-09 16:49:07 +00:00
Jeff Hill
3b422a60fa use ( (void ) 0 ) instead of just (void) 2000-11-08 20:24:42 +00:00
Jeff Hill
b569796b4a added newline at eof 2000-11-08 16:42:59 +00:00
Jeff Hill
54a056fef5 include inline functions 2000-11-08 16:30:13 +00:00
Jeff Hill
229a796e06 fixed warning 2000-11-08 16:29:19 +00:00
Jeff Hill
6d1ad48c39 include inline func for gnu 2000-11-08 04:48:35 +00:00
Jeff Hill
d109acbc0e removed redun qual 2000-11-08 04:48:10 +00:00
Jeff Hill
1f27a82828 moved inline def 2000-11-08 04:41:50 +00:00
Jeff Hill
2c26c663cb fixed SLL iterator performance 2000-11-08 04:33:36 +00:00
Jeff Hill
cb6dfd31d0 SLL iterator speed up 2000-11-08 04:24:59 +00:00
Jeff Hill
a3fe65a59a fixed SLL iterator performance 2000-11-08 04:20:30 +00:00
Jeff Hill
87a07b3f22 fixed SLL iterator performance 2000-11-08 04:16:59 +00:00
Jeff Hill
be993f0de6 fixed SLL iterator performance 2000-11-08 04:14:27 +00:00
Jeff Hill
6922c4586d cosmetic 2000-11-08 04:05:01 +00:00
Jeff Hill
5d8b53ab3e fixed SO_REUSEADDR WIN32 strangeness 2000-11-08 04:04:18 +00:00
Jeff Hill
b8f736fac4 added auto locker class 2000-11-08 04:03:58 +00:00
Jeff Hill
67c207d352 fixed SO_REUSEADDR WIN32 strangeness 2000-11-08 03:57:03 +00:00
Jeff Hill
4784b73a9f improved performance 2000-11-08 03:52:18 +00:00
Jeff Hill
2ded135da9 fixed SLL iterator performance 2000-11-08 03:48:48 +00:00
Jeff Hill
f9b3f734f0 fixed comment 2000-11-08 01:03:43 +00:00
Jeff Hill
03a89c0f2e use nonambig this 2000-11-08 01:02:55 +00:00
Jeff Hill
8cae692103 fixed iterator performance 2000-11-08 01:02:04 +00:00
Janet B. Anderson
1583ab889a Added comments for ornl overrides. 2000-10-31 20:46:22 +00:00
Janet B. Anderson
d1074a3a75 Added commented overrides from ornl. 2000-10-31 20:45:14 +00:00
Janet B. Anderson
de4663ede8 Initial version. 2000-10-31 20:39:39 +00:00
Janet B. Anderson
0a67e36522 Removed cross compiler target archs def. 2000-10-31 20:01:49 +00:00
Janet B. Anderson
cd94aecbee Initial version. 2000-10-31 20:01:03 +00:00
Janet B. Anderson
e035bb19b6 Added gnu compiler ldlibs. Added lib rt. 2000-10-25 21:28:16 +00:00
Janet B. Anderson
1fda02a9fb Added pthread and thread to ldlibs for gnu compiler builds. 2000-10-25 21:24:39 +00:00
Janet B. Anderson
4ef6484e9e Moved gnu compiler static option to ld flags. 2000-10-25 21:23:35 +00:00
Janet B. Anderson
eecf335a1f Added MSI definition. 2000-10-25 21:22:38 +00:00
Janet B. Anderson
9022f378ea Added R3.13 compatibility configuration paragraph. 2000-10-25 19:30:07 +00:00
Janet B. Anderson
cae8a6b564 Added BASE_3_14 definition. 2000-10-24 19:46:40 +00:00
Jeff Hill
0c1583ff7b fixed deadlock discovered during connect / disconnect test 2000-10-20 23:34:39 +00:00
Jeff Hill
8e49220af5 fixed syntax err that ms did not detect 2000-10-20 22:18:38 +00:00
Jeff Hill
1e6d54f6da backed out part of the operator = change 2000-10-20 22:09:54 +00:00
Jeff Hill
d107f664e5 cleaned up operator = 2000-10-20 22:06:45 +00:00
Jeff Hill
95f536d8f2 fix Solaris warnings about dubious tag declaration "struct timespec" 2000-10-20 21:20:22 +00:00
Jeff Hill
e9dbe33a14 find should use the current version of the iterator 2000-10-20 21:14:46 +00:00
Jeff Hill
3e548bdd60 added tests for tsDllList::find() 2000-10-20 21:11:59 +00:00
W. Eric Norum
bf2d280464 Add stackCheck command to show per-task stack usage. Stack statistics
are gathered only when STACK_CHECKER_ON is defined as 1 in rtems_config.c.
This should be done only when necessary since it slows down context switches.
2000-10-19 19:53:48 +00:00
810 changed files with 42080 additions and 53829 deletions

414
README Normal file
View File

@@ -0,0 +1,414 @@
README
Installation Instructions
EPICS base
Release 3.14.0beta1
What is EPICS base?
The Experimental Physics and Industrial Control Systems (EPICS) is
an extensible set of software components and tools with which
application developers can create a control system. This control system
can be used to control accelerators, detectors, telescopes, or other
scientific experimental equipment. EPICS base is the set of core
software, i.e. the components of EPICS without which EPICS would not
function. EPICS base allows an arbitrary number of target systems,
IOCs (input/output controllers), and host systems, OPIs (operator
interfaces) of various types.
What is new in this release?
This version of EPICS base contains significant changes and offers
major improvements in functionality over previous versions. Please
check the RELEASE_NOTES file in the distribution for description of
changes and release migration details.
Copyright
Please review the COPYRIGHT* files included in the distribution for
legal terms of usage.
Supported platforms
Currently this version of EPICS base has been built on the following
hosts for the following targets. If you are trying to build EPICS base on a
different host or for a different target machine you must get the proper
host/target cross compiler and header files and you will have to create
and add the appropriate new configure files to the
base/configure/os/directory. You can start by copying existing
configuration files in the configure/os directory and then make changes
for your new platforms.
Host platforms (operating system - architecture - <alternate c++
compiler>)
solaris-sparc
solaris-sparc-gnu
linux-x86
win32-x86
win32-x86-borland
Cross compile target platforms (operating system - architecture)
vxWorks-486
vxWorks-68040
vxWorks-68040lc
vxWorks-68060
vxWorks-ppc603
vxWorks-ppc604
vxWorks-pentium
RTEMS-gen68360
RTEMS-mvme167
RTEMS-pc386
Supported compilers
This version of EPICS base has been built and tested using the host
vendor's C and C++ compilers as well as the GNU gcc and g++
compilers. The GNU cross-compilers have been used for all
cross-compiled targets. You may need the host vendor's C++ compiler
in your search path to do EPICS builds. Check definitions of ACC and
CCC in base/configure/os/CONFIG.<host>.<host> or the definitions
for GCC and G++ if ANSI=GCC and CPLUSPLUS=GCC are specified
in CONFIG_SITE.
Software requirements
GNU make
You must use GNU make, gnumake, for any EPICS builds. Set your
path so that a gnumake version 3.70 or later is available.
Perl
You must have perl version 5.0 or later installed. The configure files do
not specify the perl full pathname. You need the perl executable in
your search path.
Unzip and tar (Winzip on WIN32 systems)
You must have tools available to unzip and untar the EPICS base
distribution file.
Tornado 2.0
You must have Tornado 2.0 installed if any of your target systems are
vxWorks systems. Tornado 2.0 provides the cross-compiler and header
files needed to build for these target systems. The full path location to
Tornado 2.0 must be specified in the base/configure/RELEASE or
base/configure/RELEASE.<hostarch> file. You will also need one or
more board support packages. Consult the vxWorks documentation for
details.
Optional GNU compiler requirement for solaris-sparc and
win32-x86 hosts
If you have state notation language source files (*.st files) which require
c preprocessing before conversion to c source, gcc must be in your path.
Host system storage requirements
The GNU zipped tar file is approximately 1.4 MB in size. The unzipped
untarred distribution source tree is approximately 6 MB. The build
created files for each host take approximately 40 MB and the build
created files for each target take approximately 10 MB.
Documentation
EPICS documentation is available on the WWW via the EPICS home
page at APS: URL http://www.aps.anl.gov/Epics
This README.htm is in the base distribution file and will be available
on the IOC software R3.14 EPICS WWW page which can be accessed
from the APS EPICS home page.
WWW pages
EPICS home page at APS
http://www.aps.anl.gov/epics
Other WWW sites
Additional information on EPICS can be found at the
various other WWW links on the EPICS home page at APS.
Mailing Lists
There are five EPICS mailing lists provided by APS. See The
EPICS home page for subscription instructions.
Directory Structure
Distribution directory structure:
base Root directory of the base istribution
base/config R3.13 compatibility build configuration files
base/config/tools Perl and shell scripts used in the R3.13 build
base/configure Operating system independent build config files
base/configure/os Operating system dependent build config files
base/configure/tools Perl and shell scripts used in the build
base/copyright Text files describing software copyrights
base/src All epics base source code in subdirectories
base/src/as Access security
base/src/bpt Break point table
base/src/ca Channel access
base/src/cas Channel access server
base/src/db Database access
base/src/db/test Database access tests
base/src/dbStatic Static database access
base/src/dbtools Database dbLoadTemplate tools
base/src/dev Device support (softDev and testDev)
base/src/gdd General data descriptor
base/src/iocsh Ioc shell command interpreter
base/src/libCom General purpose library code in subdirectories
base/src/libCom/bucketLib Hash bucket
base/src/libCom/calc Algebraic expression interpreter
base/src/libCom/cvtFast Fast number to string conversion
base/src/libCom/cxxTemplates C++ templates and templates tests
base/src/libCom/dbmf Memory management for frequent alloc/free
base/src/libCom/ellLib EPICS double linked list
base/src/libCom/env Default EPICS environment settings
base/src/libCom/error Error handling definitions and routines
base/src/libCom/fdmgr File descriptor manager
base/src/libCom/freeList Memory management using free lists
base/src/libCom/gpHash General purpose hash table
base/src/libCom/logClient Logging client
base/src/libCom/macLib Macro substitution handler
base/src/libCom/misc Miscellaneous utilities
base/src/libCom/osi Operating system independent code
base/src/libCom/osi/os Operating system dependant code in subdirectories
base/src/libCom/taskwd Task watchdog
base/src/libCom/test Test tools (timer, semBinary, semMutex,fdmgr, ?)
base/src/libCom/timer Timer
base/src/libCom/tsDefs R3.13 time stamp definitions and routines
base/src/libCom/ring ringPointer: First in first out circular buffers
base/src/libCom/cppStd epicsList: Lists of pointers to objects
base/src/makeBaseApp Perl tool+templates to create ioc app dvl tree
base/src/makeBaseExt Perl tool+templates to create extension dvl tree
base/src/misc Miscellaneous (coreRelease, iocInit, asSub*)
base/src/rec Record support
base/src/registry EPICS support function registry
base/src/rsrv Channel access ioc resource server library
base/src/toolsComm Code for the build tools antelope and e_flex
base/src/util Utilities (ca_test, iocLogServer, startCArepeater)
base/src/vxWorks R3.13 compatibility code specific to vxWorks
base/startup Scripts for setting up path and environment
Install directories created by the build:
base/bin Installed scripts and executables in subdirs
base/lib Installed libraries in arch subdirectories
base/dbd Installed data base definitions
base/include Installed header files
base/include/os Installed os specific header files
base/templates Installed templates
Build related components
base/README* files
README.htm Instructions for setup and building epics base
(i.e. this document)
README.WIN32 Microsoft WIN32 specific instructions
README.cxxTemplates Information about C++ templates in EPICS base
README.niCpu030 NI cpu030 specific instructions
base/startup directory - contains scripts to set environment and path
EpicsHostArch c shell script to set EPICS_HOST_ARCH env variable
EpicsHostArch.pl perl script to set EPICS_HOST_ARCH env variable
Site.profile bourne shell script to set path and env variables
Site.cshrc c shell script to set path and env variables
borland.bat WIN32 bat file to set path and env variables
win32.bat WIN32 bat file to set path and env variables
base/configure directory - contains build definitions and rules
CONFIG.CrossCommon Cross build definitions
CONFIG.gnuCommon Gnu compiler build definitions for all archs
CONFIG_ADDONS Definitions for <osclass> and DEFAULT options
CONFIG_BASE EPICS base tool and location definitions
CONFIG_BASE_VERSION Definitions for EPICS base version number
CONFIG_COMMON Definitions common to all builds
CONFIG_ENV Definitions of EPICS environment variables
CONFIG_SITE Site specific make defintions
CONFIG_SITE_ENV Site defaults for EPICS environment variables
CONFIG Includes configure files and allows variable overrides
RELEASE Location of external products such as Tornado II
RULES Includes appropriate rules file
RULES.Db Rules for database and database definition files
RULES_ARCHS Definitions and rules for building architectures
RULES_BUILD Build and install rules and definitions
RULES_DIRS Definitions and rules for building subdirectories
RULES_JAVA Definitions and rules for java jars and classes
RULES_TOP Rules specific to a <top> dir (uninstall and tar)
Sample.Makefile Sample makefile with comments
base/configure/os directory - contains os-arch specific definitions
CONFIG.<host>.<target> Specific host-target build definitions
CONFIG.Common.<target> Specific target definitions for all hosts
CONFIG.<host>.Common Specific host definitions for all targets
CONFIG.UnixCommon.Common Definitions for Unix hosts and all target
CONFIG.<host>.vxWorksCommon Specific host definitions for all vx targets
CONFIG_COMPAT R3.13 arch compatibility definitions
CONFIG_SITE.<host>.<target> Site specific host-target definitions
CONFIG_SITE.Common.<target> Site specific target defs for all hosts
CONFIG_SITE.<host>.Common Site specific host defs for all targets
base/configure/tools directory - contains Perl scripts used for the build
MakeReleae Unix shell script to create a release tar file
convertRelease.pl Performs consistancy checks on RELEASE files
cp.pl This Perl script copies an existing file
installEpics.pl Installs built files into install directories.
makeDependsTargets.pl Creates targets of include dependency files
makeMakefile.pl Creates a Makefile in O.<arch> dirs
makeMakefileInclude.pl Creates file to be included by Makefile
mkdir.pl Creates a directory (like Unix mkdir)
mkmf.pl Generates dependencies from include stmnts
munch.pl Creates a ctdt.c file for vxWorks targets
mv.pl Renames an existing file.
replaceVAR.pl Changes CapFast VAR(xxx) to $(xxx) notation
rm.pl Quietly removes an existing file.
Building EPICS base (Unix and Win32)
Unpack file
Unzip and untar the distribution file. Use WinZip on
Windows systems.
Set environment variable
Files in the base/startup directory have been provided to help
set required path and other environment variables .
EPICS_HOST_ARCH
Before you can build or use EPICS R3.14, the environment
variable EPICS_HOST_ARCH must be defined. A perl
script EpicsHostArch.pl in the base/startup directory has
been provided to help set EPICS_HOST_ARCH. You should
have EPICS_HOST_ARCH set to your host operating
system followed by a dash and then your host architecture,
e.g. solaris-sparc. If you are not using the OS vendor's
c/c++ compiler for host builds, you will need another dash
followed by the alternate compiler name (e.g. "-gnu" for GNU
c/c++ compilers on a solaris host or "-borland" for Borland
c/c++ compilers on a WIN32 host) . See configure/CONFIG_SITE
for a list of supported EPICS_HOST_ARCH values.
PERLLIB
On WIN32, some versions of Perl require that the
environment variable PERLLIB be set to <perl directory
location>.
PATH
As already mentioned, you must have the perl executable
and you may need C and C++ compilers in your search path.
For building base you also must have echo in your search
path. For Unix host builds you also need touch, cpp, cp, rm,
mv, and mkdir in your search path and /bin/chmod must
exist. On some Unix systems you may also need ar and ranlib
in your path, and the c compiler may require ld in your path.
Unix LD_LIBRARY_PATH
If you plan to build EPICS base shared libraries instead of
archive libraries, on Unix systems you will need to add
fullpathname to $(INSTALL_LOCATION)/lib/$(EPICS_HOST_ARCH) to
your LD_LIBRARY_PATH environment variable.
Win32 PATH
On WIN32 systems, building shared libraries is the default
setting and you will need to add fullpathname to
$(INSTALL_LOCATION)/bin/$(EPICS_HOST_ARCH) to your path.
Building shared libraries is determined by the value of the
macro SHARED_LIBRARIES in CONFIG_SITE (either YES or NO).
Do site-specific build configuration
Site configuration
To configure EPICS, you may want to modify the default
definitions in the following files:
configure/CONFIG_SITE Build choices. Specify target archs.
configure/CONFIG_SITE_ENV Environment variable defaults
configure/RELEASE TORNADO 2 full path location
Host configuration
To configure each host system, you may override the default
definitions by adding a new file with override definitions into
the configure/os directory. The new file should have the
same name as the distribution file to be overridden except
with CONFIG in the name changed to CONFIG_SITE.
configure/os/CONFIG.<host>.<host> - Host build settings
configure/os/CONFIG.<host>.Common - Host cross build settings
Target configuration
To configure each target system, you may override the
default definitions by adding a new file with override
definitions into the configure/os directory. The new file
should have the same name as the distribution file to be
overridden except with CONFIG in the name replaced by
CONFIG_SITE.
configure/os/CONFIG.Common.<target> - Target cross settings
configure/os/CONFIG.<host>.<target> - Host-target settings
R3.13 compatibility configuration
To configure EPICS base for building with R3.13 extensions
and ioc applications, you must modify the default definitions
in the base/config/CONFIG_SITE* files to agree with definitions
you made in base/configure and base/configure/os files.
Build EPICS base
After configuring the build you should be able to build
EPICS base by issuing the following commands in the
distribution's root directory (base)
gnumake clean uninstall
gnumake
The command "gnumake clean uninstall" will remove all
files and directories generated by a previous build. The
command "gnumake" will build and install everything for
the configured host and targets.
It is recommended that you do a "gnumake clean uninstall"
at the root directory of an EPICS directory structure before
each complete rebuild to ensure that all components will be
rebuilt.
Multiple host platforms
You can build using a single EPICS directory structure on multiple host
systems and for multiple cross target systems. The intermediate and
binary files generated by the build will be created in separate
subdirectories and installed into the appropriate separate host/target
install directories. EPICS executables and perl scripts are installed
into the $(INSTALL_LOCATION)/bin/<arch> directories. Libraries are
installed into $(INSTALL_LOCATION)/lib/<arch>. The default
definition for $(INSTALL_LOCATION) is $(TOP) which is the root
directory in the distribution directory structure, base. Created object
files are stored in O.<arch> source subdirectories, This allows objects
for multiple cross target architectures to be maintained at the same
time. To build EPICS base for a specific host/target combination you
must have the proper host/target c/c++ cross compiler and target header
files and the base/configure/os directory must have the appropriate
configure files.
Example application and extension
A perl tool, makeBaseApp.pl is included in the distribution file. This
script will create a sample application that can be built and then
executed to try out this release of base. Also, a perl script,
makeBaseExt.pl, is included in the distribution file. This script will
create a sample extension that can be built and executed. The
makeBaseApp.pl and makeBaseExt.pl scripts are installed into the
install location bin/<hostarch> directory during the base build.
Instructions for building and executing the 3.14 example application
can be found in the section "Example Application" of Chapter 2, "New
Features for 3.14", in the "IOC Application Developer's Guide
R3.14.0beta1". The "Example Application" section briefly explains
how to create and build an example application in a user created <top>
directory. It also explains how to run the example application on a
vxWorks ioc or a host system and run an example channel access client
on the host system.

View File

@@ -1,8 +1,8 @@
Compiling EPICS and Building IOC Applications on WIN32 (Windows95/NT)
Compiling EPICS and Building IOC Applications on win32-x86 (Windows95/NT)
---------------------------------------------------------------------
Original port of EPICS base to WIN32 (Windows95/NT)
Original port of EPICS base build system to WIN32 (Windows95/NT)
was done by Kay-Uwe Kasemir 11/96
please mail questions, comments, corrections, additional examples, etc
@@ -11,9 +11,9 @@ please mail questions, comments, corrections, additional examples, etc
0) what you will get
--------------------
Right now this port of EPICS to WIN32 should allow you to
Right now this port of EPICS to win32-x86 should allow you to
* compile almost all of EPICS base using {Tornado, MS Visual C, perl,
* compile all of EPICS base using {Tornado, MS Visual C, perl,
GNU make} (only {MS Visual C, perl, GNU make} if you prefer
to compile only the host portions of EPICS base).
* load EPICS on an IOC (486, pentium, 68k, ...),
@@ -23,19 +23,19 @@ Right now this port of EPICS to WIN32 should allow you to
* build and use ca.dll on NT or Win95 to access all IOCs,
as well as the Com-library, gdd-library, cas-library,
and all other EPICS base libraries as DLLs.
* build gdd, cas and a demo of the new portable CA server on WIN32.
To build only for WIN32 and not cross compile for IOC development type
"make host" or in your config files set "CROSS_COMPILER_HOST_ARCHS=void"
* build gdd, cas and a demo of the new portable CA server on win32-x86.
To build only for win32-x86 and not cross compile for IOC development type
"make win32-x86" or in your configure/CONFIG_SITE file set
"CROSS_COMPILER_HOST_ARCHS="
1) see what you have
--------------------
To compile EPICS on WIN32, we need
To compile EPICS on win32-x86, we need
WindRiver System's Tornado (used: 1.0) (not required if host only build)
Microsoft's Visual C/C++ (used: 4.0) (borland C++ rumored to work also)
Microsoft's Visual C/C++ (used: 6.0) (borland C++ rumored to work also)
and some tools:
@@ -51,7 +51,7 @@ If you cannot/don't want to find them, contact me, please!
(Setting env. vars. is different: for NT, use Settings/System,
for Win95 use autoexec.bat)
When setting paths in the EPICS CONFIG files for WIN32 the following
When setting paths in the EPICS CONFIG files for win32-x86 the following
are hints in case you have trouble. You should not need to worry about
this unless you type a path into one of the EPICS config files that
includes a "\". In most situations gnu make, windows NT, the MS compiler,
@@ -66,7 +66,7 @@ and the MS linker will accept "/" and this will result in less trouble.
a "\ " (this is because GNU make treats all " " separated
input as independent tokens in the input stream.
** WIN32 will generally allow "/" and "\" interchangeably in file paths,
** win32-x86 will generally allow "/" and "\" interchangeably in file paths,
but the DOS shell only accepts "\".
** Certain command line utilities such as the MS linker are known to in rare
@@ -75,7 +75,7 @@ and the MS linker will accept "/" and this will result in less trouble.
the bulk of our experience indicates that this is not the necessary.
Your path should include:
- The EPICS-binaries that we are about to build in <EPICS>base/bin/WIN32
- The EPICS-binaries that we are about to build in <EPICS>base/bin/win32-x86
- The System (for me it's in NT40...)
- The MS Visual C compiler binaries
@@ -108,7 +108,7 @@ include=c:\msdev\include;c:\msdev\mfc\include
lib=c:\msdev\lib;c:\msdev\mfc\lib
Select host arch to build:
HOST_ARCH=WIN32 (used by the make system)
EPICS_HOST_ARCH=win32-x86 (used by the make system)
Set the "TMP" environment variable if you need to specify where
temporary files are created.
@@ -139,7 +139,7 @@ Prepare apx. 2 ltr. Tee and type:
Watch for errors and send them to me.
Known problems:
* gnumake seems to be faster than WIN32 sometimes
* gnumake seems to be faster than win32-x86 sometimes
which results in warnings/errors like
"file has modification date in the future"
for newly created things.
@@ -150,7 +150,7 @@ Known problems:
WIN32 is WIN32, not win32. Gnumake fails
if e.g. base/src/include/os/WIN32 is ...win32.
4) Creating EPICS IOC applications under WIN32
4) Creating EPICS IOC applications under win32-x86
o create application development folder
@@ -192,3 +192,27 @@ in a visual C++ make file project: "kill caRepeater.exe&make -C ..". Be careful
not to introduce additional spaces around the &. The kill.exe command is in the
NT resource kit.
6) Issues that you should be aware of if you are building code that
calls EPICS, but you are not using the EPICS build system.
6a) You will need to include header files from the following paths.
<epics>\base\include
<epics>\base\include\os\win32
6b) You will need to link with the following path in effect.
<epics>\base\lib\win32-x86.
6c) If the visual C++ /Za option is not used then you will also need to define
__STDC__ to be zero on the command line so that EPICS headers will know that
a ANSI standard C compiler is in use.
6d) If you link with EPICS object libraries then specify /MT or /MTd
depending on whether EPICS base and your code are built for debugging.
This specifies the multithreaded operating environment required by EPICS.
This will also not define _DLL and therefore the EPICS header files will
not specify that sharable libraries are being called. EPICS object library
names follow the convention "xxxObj.lib".
6e) If you link with EPICS shareable libraries (with DLLs) then you must
use /MDd or /MD depending on whether EPICS base and your code are
built for debugging. This specifies the multithreaded operating environment
required by EPICS. This will also define _DLL and therefore the EPICS header
files will specify an optimized calling convention for shareable libraries.
EPICS shareable libraries (DLL) names follow the convention "xxx.lib"
and "xxx.dll".

View File

@@ -1,46 +0,0 @@
The C++ 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 snd/or smart linker instead). Other compilers
(such as g++) provide only limited support for other forms of
instantiation (g++ does not yet provide a template database or
a smart linker for templates).
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 and the compiler does not support
automatic instantiation via a smart linker and/or template
database (currently this is only g++).
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>
//
// 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

1656
README.htm

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,298 @@
<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<meta name="ProgId" content="Word.Document">
<meta name="Generator" content="Microsoft Word 9">
<meta name="Originator" content="Microsoft Word 9">
<meta name="GENERATOR" content="Mozilla/4.77 [en] (X11; U; SunOS 5.8 sun4u) [Netscape]">
<title>Instruction on building existing R3</title>
<link rel=File-List href="./READMEbuildingR3.13AppsWithR3.14_files/filelist.xml">
<!--[if gte mso 9]><xml>
<o:DocumentProperties>
<o:LastAuthor>Jba</o:LastAuthor>
<o:Revision>3</o:Revision>
<o:TotalTime>4</o:TotalTime>
<o:Created>2000-10-25T19:43:00Z</o:Created>
<o:LastSaved>2000-10-25T19:47:00Z</o:LastSaved>
<o:Pages>1</o:Pages>
<o:Company>Argonne National Laboratory</o:Company>
<o:Lines>1</o:Lines>
<o:Paragraphs>1</o:Paragraphs>
<o:Version>9.2720</o:Version>
</o:DocumentProperties>
</xml><![endif]-->
<!--[if gte mso 9]><xml>
<w:WordDocument>
<w:DisplayHorizontalDrawingGridEvery>0</w:DisplayHorizontalDrawingGridEvery>
<w:DisplayVerticalDrawingGridEvery>0</w:DisplayVerticalDrawingGridEvery>
<w:UseMarginsForDrawingGridOrigin/>
<w:Compatibility>
<w:FootnoteLayoutLikeWW8/>
<w:ShapeLayoutLikeWW8/>
<w:AlignTablesRowByRow/>
<w:ForgetLastTabAlignment/>
<w:LayoutRawTableWidth/>
<w:LayoutTableRowsApart/>
</w:Compatibility>
</w:WordDocument>
</xml><![endif]-->
<style>
<!--
/* Font Definitions */
@font-face
{font-family:"MS Mincho";
panose-1:2 2 6 9 4 2 5 8 3 4;
mso-font-alt:"\FF2D\FF33 \660E\671D";
mso-font-charset:128;
mso-generic-font-family:roman;
mso-font-pitch:fixed;
mso-font-signature:-1610612033 1757936891 16 0 131231 0;}
@font-face
{font-family:"\@MS Mincho";
mso-font-charset:128;
mso-generic-font-family:roman;
mso-font-pitch:fixed;
mso-font-signature:1 134676480 16 0 131072 0;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
{mso-style-parent:"";
margin:0in;
margin-bottom:.0001pt;
mso-pagination:widow-orphan;
font-size:10.0pt;
font-family:"Times New Roman";
mso-fareast-font-family:"Times New Roman";}
p.MsoPlainText, li.MsoPlainText, div.MsoPlainText
{margin:0in;
margin-bottom:.0001pt;
mso-pagination:widow-orphan;
font-size:10.0pt;
font-family:"Courier New";
mso-fareast-font-family:"Times New Roman";}
@page Section1
{size:8.5in 11.0in;
margin:1.0in 66.0pt 1.0in 66.0pt;
mso-header-margin:.5in;
mso-footer-margin:.5in;
mso-paper-source:0;}
div.Section1
{page:Section1;}
-->
</style>
</head>
<body lang="EN-US" style="tab-interval:.5in">
<center>
<h2>
Building EPICS R3.13 applications with R3.14.0beta1 base</h2></center>
<p><br>This document describes how to modify a R3.13 vxWorks application
so that it builds with release R3.14.0beta1.&nbsp; It describes an easy
way to modify applications subject to the following restrictions:
<ul>
<li>
The application still uses config rules rather than the configure rules
which are new to release 3.14.</li>
<li>
The OSI (Operating System Independent) features of R3.14 are not available,
i.e. iocCore products can only be build for vxWorks.</li>
<li>
Once the application is changed to build with base R3.14, it will not build
with earlier base releases.</li>
</ul>
Ultimately applications should be converted to use the new configure rules
so that the OSI features are available.
<h3>
<b>Gnumake clean uninstall</b></h3>
<blockquote>At the top of the application execute:
<pre>"<tt>gnumake clean uninstall</tt>"</pre>
to remove all files and directories created by earlier builds.</blockquote>
<h3>
Update RELEASE</h3>
<blockquote>Change&nbsp; the <tt>EPICS_BASE</tt> definition to point to
the R3.14 base release. All hardware support and some soft support is now
unbundled. For example the sequencer is unbundled. You must obtain and
build all required unbundled products before you can build the application.
The location of each unbundled product must be specified in &lt;top>/config/RELEASE.</blockquote>
<h3>
Update target arch definitions</h3>
<blockquote>Change any target arch specification in config/CONFIG to new
R3.14 target arch specification. Look in the R3.14 base/bin directory to
see the target arch names.
<p>For example, in config/CONFIG change
<pre>CROSS_COMPILER_TARGET_ARCHS = mv167</pre>
to
<pre>CROSS_COMPILER_TARGET_ARCHS = vxWorks-68040</pre>
In the iocBoot/*/Makefile files, change
<pre>ARCH=&lt;old arch name></pre>
to
<pre>ARCH=&lt;new arch name></pre>
and do a "<tt>gnumake"</tt> in the iocBoot directory to update the cdCommands
files.</blockquote>
<h3>
State Notation Language changes</h3>
<blockquote>snc is no longer in base. If snc is used in your application,
you must download and build the seq module with baseR3.14.0beta1. See the
Application Developer's Guide to see how to build sequence programs.</blockquote>
<blockquote>Change
<pre>INSTALLS=seq</pre>
to
<pre>LIBOBJS += $(SEQ_BIN)/seqLibrary.o</pre>
<p><br>in application src/Makefile.Vx files to link seq library into your
application library,.
<br>Also add
<pre>SEQ=&lt;full path to seq module directory></pre>
to config/RELEASE.
<br>Also remove
<pre>ld &lt; seq</pre>
from the st.cmd files in the iocBoot subdirectories.</blockquote>
<h3>
iocCore changes</h3>
<blockquote>iocCore has been renamed to iocCoreLibrary.o.
<br>Change
<pre>INSTALLS=iocCore</pre>
to
<pre>LIBOBJS += $(EPICS_BASE_BIN)/iocCoreLibrary.o</pre>
in your application src/Makefile.Vx files .
<br>Also remove
<pre>ld &lt; iocCore</pre>
from the st.cmd files in the iocBoot subdirectories.</blockquote>
<h3>
Library db changes</h3>
<blockquote>The Db library name was changed to dbStaticHost for host builds
and dbStaticIoc for ioc builds.
<br>Change
<pre>PROD_LIBS+=Db</pre>
to
<pre>PROD_LIBS+=dbStaticHost</pre>
and
<pre>Db_DIR=$(EPICS_BASE_LIB)</pre>
to
<pre>dbStaticHost_DIR=$(EPICS_BASE_LIB)</pre>
in your application src/Makefile.Host files.</blockquote>
<h3>
VxWorks C++ munched libraries and object files</h3>
<blockquote>Since R3.14 contains C++ code, the build rules were changed
to create a corresponding munched file for every vx object file built.
The objects files can be combined to form libraries but the munched files
must be loaded into vxWorks. In all st.cmd files add the suffix "<tt>.munch</tt>"
to the ld lines where object files were previously loaded. For example
change
<pre>ld &lt; exampleLib</pre>
to
<pre>ld &lt; exampleLibrary.munch</pre>
</blockquote>
<h3>
recGbl calls</h3>
<blockquote>You may need to add the line&nbsp; "<tt>#include "recGbl.h</tt>"
to any source files that have recGbl* calls so that the file will compile
without errors.</blockquote>
<h3>
Record support changes</h3>
<blockquote>The steppermotor, scan, and pid records are no longer in base.
If your application does not use these record types, comment out or remove
references to them in base.dbd and baseLIBOBJS. If these record types are
used by your application you must download and build the modules with R3.14
base, add appropriate module definitions to your application's config/RELEASE
fileand change the <tt>LIBOBJS</tt> definitions. For example
<br>add
<pre>PID=&lt;full path to modules directory>/pid</pre>
to config/RELEASE.
<br>Remove
<pre>LIBOBJS += $(EPICS_BASE_BIN)/pidRecord.o</pre>
from baseLIBOBJS,
<br>and add
<pre>LIBOBJS += $(PID_BIN)/pidRecord.o</pre>
to your application src/Makefile.
<p>You should consider changing any existing old steppermotor records to
the new EPICS&nbsp; <a href="http://www.aps.anl.gov/upd/people/sluiter/epics/modules/mechanism/motor/index.html">motor
record</a>&nbsp; module supported by Beamline Controls and Data Acquisition
at APS.</blockquote>
<h3>
RecDynLink.o and devPtSoft changes</h3>
<blockquote>recDynLink.o and devPtSoft.o are no longer in base. Remove
references to them in base.dbd and baseLIBOBJS if they are not used in
application.</blockquote>
<h3>
Hardware support changes</h3>
<blockquote>All hardware support (dev, drv and dbd files) has been unbundled
from base R3.14. This support includes the files <tt>symb, symb.dbd, drvHp1404a.o,
drvEpvxiMsg.o, and drvEpvxi.o</tt>.&nbsp; If they are not used in your
application, comment out references to these files in base.dbd and baseLIBOBJS.
<p>Hardware support files now exist as separate modules available for download
from the <a href="http://www.aps.anl.gov/epics/">EPICS www home page at
ANL</a>. You must now download all the hardware support modules needed
for your application, build the modules with R3.14 base,&nbsp; add the
appropriate module full path definitions to your application config/RELEASE
file, and change <tt>LIBOBJS</tt> location definition <tt>$(EPICS_BASE_BIN)</tt>
to the module definition bin directory in your application src directory
files.
<p>For example, remove
<pre>LIBOBJS+=$(EPICS_BASE_BIN)/symb</pre>
from baseLIBOBJS and add
<pre>LIBOBJS+=$(SYMB_BIN)/symb</pre>
to your application src/Makefile,
<br>and add the line
<pre>SYMB=&lt;full path definition for the built module SYMB></pre>
into your application config/RELEASE file .
<p>After a gnumake in the symb module followed by a gnumake in the application
config directory, the definitions <tt>SYMB_BIN</tt> and <tt>SYMB_LIB</tt>
will be created,&nbsp; the directory $(SYMB)/include will be added to the
include directories on the compiler command lines&nbsp; (in the <tt>INSTALL_INCLUDES</tt>
definition)&nbsp; and the directory $(SYMB)/dbd will be added to the dbd
search directories on the dbExpand command lines (in the <tt>INSTALL_DBDFLAGS</tt>
definition).</blockquote>
<h3>
dbLoadtemplate tool changes</h3>
<blockquote>The host tool dbLoadTemplate has been replaced by a new extension,
msi. dbLoadTemplate is still supported on iocs. Build the msi extension
with base R3.14 and change the following definitions in your application
files.
<p>In config/RULES.Db replace the line
<pre>DBLOADTEMPLATE=$(EPICS_BASE_HOST_BIN)/dbLoadTemplate$(EXE)</pre>
with
<pre>MSI = $(firstword $(wildcard $(EPICS_EXTENSIONS_HOST_BIN)/msi$(HOSTEXE) \
&nbsp;&nbsp; (EPICS_EXTENSIONS)/bin/$(HOST_OS_CLASS)/msi$(HOSTEXE)) msi$(HOSTEXE))</pre>
and change line:
<pre>@$(DBLOADTEMPLATE) $&lt; > $@</pre>
to
<pre>@$(MSI) $&lt; > $@</pre>
Also, if dbLoadTemplate was used by your application,&nbsp; add the definition
<blockquote>
<pre>EPICS_EXTENSIONS=&lt;full path name to epics extensions directory></pre>
</blockquote>
to your application config/RELEASE file.</blockquote>
depends changes
<p>&nbsp;&nbsp;&nbsp;&nbsp; Remove any SRCS.c and SRCS.cc definitions in
your application src/Makefile..*files. The depends rule no longer uses
these definitions.
</body>
</html>

View File

@@ -0,0 +1,132 @@
<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<meta name="Author" content="jba">
<meta name="GENERATOR" content="Mozilla/4.76 [en] (X11; U; SunOS 5.8 sun4u) [Netscape]">
</head>
<body>
<center>
<h2>
Building EPICS R3.13 extensions with R3.14 base</h2></center>
<p><br>EPICS R3.13 extensions have both a Makefile and a Makefile.Host
in the build directories and the EPICS R3.13 extension tree has an extensions/config
directory.
<h3>
Preliminary steps for all extensions</h3>
<blockquote>
<li>
Download the latest version (10/25/00) of the extensions/config files,
extensionsConfig.tar.gz,&nbsp; from the APS EPICS www page.</li>
<li>
Make certain that you have set the HOST_ARCH environment variable.</li>
<li>
Set EPICS_BASE in extensions/config/RELEASE to the full path location of
a built R3.14 base.</li>
<li>
BASE_3_14 is now defined in the base/config/CONFIG_BASE_VERSION.&nbsp;
The commented BASE_3_14 definition can be removed from extensions/config/RELEASE.</li>
</blockquote>
<h3>
Building downloaded APS distribution extensions with base R3.14</h3>
<blockquote>
<li>
Download the latest version (10/25/00) of extensions distributed from the
APS EPICS www page. The latest versions of the extensions should build
with both R3.13 and R3.14. Note that the order of building extensions is
important, i.e. some extensions depend on other extensions being built
first. The extensions/config/CONFIG_EXTENSIONS file contains notes on extension
dependancies and contains a definition of DIRS (used by extensions/src/Makefile)
with the proper order for building the APS distributed extensions.</li>
<li>
Executing gnumake at the root level of the extensions tree or in the src
directory should build the APS extensions in the proper order.</li>
</blockquote>
<h3>
Building your extensions with base R3.14</h3>
<blockquote>
<li>
<b>Library Db renamed</b></li>
<br>Library Db has been renamed to dbStaticHost in EPICS base R3.14. In
some extensions lib Db is not used and Db can be removed from the USR_LIBS
(or PROD_LIBS) line. If the library is needed ( you get unresolved items
after removing Db), the following lines should be added to Makefile.Host.
<blockquote><tt>ifdef BASE_3_14</tt>
<br><tt>USR_LIBS += dbStaticHost</tt>
<br><tt>dbStaticHost_DIR = $(EPICS_BASE_LIB)</tt>
<br><tt>else</tt>
<br><tt>USR_LIBS += Db</tt>
<br><tt>Db_DIR = $(EPICS_BASE_LIB)</tt>
<br><tt>endif</tt></blockquote>
<li>
<b>Target architecture specifications changed</b></li>
<br>Since target architecture specifications have been changed (solaris
to solaris-sparc, win32 to win32-x86, ...) Makefile.Host references to
and tests on T_A have to be changed.&nbsp; In most cases T_A can be replaced
by OS_CLASS.&nbsp; Since HOST_ARCH will eventually be phased out, it would
be a good idea to change any Makefile.Host references to HOST_ARCH to OS_CLASS
if possible.
<br>For example change
<blockquote><tt>ifeq ($(T_A),solaris)</tt>
<br><tt>RPCFLAGS = -K -1</tt>
<br><tt>endif</tt></blockquote>
to
<blockquote><tt>ifeq ($(OS_CLASS),solaris)</tt>
<br><tt>RPCFLAGS = -K -1</tt>
<br><tt>endif</tt></blockquote>
<li>
<b>New ca_set_puser</b></li>
<br>Statements of the form: <tt>ca_puser(chid) = xyz</tt>; should to be
changed to:&nbsp; <tt>ca_set_puser(chid,xyz)</tt>;
<br>&nbsp;
<li>
<b>Extern C around includes</b></li>
<br>Remove any extern "C" braces around #includes of EPICS base header
files.
<br>For example change
<blockquote><tt>extern "C" {</tt>
<br><tt>#include "cadefs.h"</tt>
<br><tt>} /* end extern C */</tt></blockquote>
to
<blockquote><tt>#include "cadefs.h"</tt></blockquote>
<li>
<b>Infrequently used R3.13 timestamp functions unbundled from base</b></li>
<br>Some infrequently used R3.13 timestamp functions and macro definitions
have been removed from EPICS base and now exist in a library, ts, created
and installed in the ar extension.&nbsp; The only ANL distributed extension
that uses these unbundled functions and macros&nbsp; is cau. The two R3.13
functions tsStampToText and tsLocalTime along with the definitions TS_TEXT_MONDDYYYY
and TS_TEXT_MMDDYY have been retained in R3.14 for extension compatibility
purposes.
<br>If your extension gets undefines for TS_* usage and ts* function calls
when built with R3.14, you must obtain and build the ar extension. Add
an #include for tsSubr.h to your extension source code and add library
ts to PROD_LIBS or USR_LIBS in your Makefile.Host as follows:
<blockquote><tt>#include "tsSubr.h"</tt>
<p><tt>ifdef BASE_3_14</tt>
<br><tt>PROD_LIBS += ts</tt>
<br><tt>ts_DIR = $(EPICS_EXTENSIONS_LIB)</tt>
<br><tt>endif</tt></blockquote>
</blockquote>
</body>
</html>

View File

@@ -0,0 +1,302 @@
<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<meta name="Author" content="jba">
<meta name="GENERATOR" content="Mozilla/4.76 [en] (X11; U; SunOS 5.8 sun4u) [Netscape]">
</head>
<body>
<center>
<h2>
Converting an EPICS R3.13 application to R3.14.0alpha3</h2></center>
<p><br>This document describes how to convert a R3.13 vxWorks application
so that it builds with release R3.14.0alpha3.&nbsp; It describes procedures
such that:
<ul>
<li>
The application uses the configure rules which are new to R3.14.</li>
</ul>
<ul>
<li>
The OSI (Operating System Independent) features of R3.14 are available,
i.e. iocCore products can be build for vxWorks as well as other platforms,
e.g. solaris and linux.</li>
</ul>
<h3>
Gnumake clean uninstall</h3>
<blockquote>First do a gnumake clean uninstall in the application's root
directory to remove all files created by earlier builds.</blockquote>
<h3>
Create a new R3.14 application</h3>
<blockquote><tt>mkdir &lt;top></tt>
<br><tt>cd &lt;top></tt>
<br><tt>&lt;full path to R3.14.0alpha3 base>/bin/&lt;host_arch>/makeBaseApp.pl
-t example example</tt></blockquote>
<h3>
Copy all *App and iocBoot directories and files to the new &lt;top> directory</h3>
<blockquote><tt>cd &lt;oldtop></tt>
<br><tt>find *App iocBoot -print | cpio -pvmd &lt;fullpath name to new
top></tt></blockquote>
<h3>
Modify &lt;top>/configure/RELEASE</h3>
<blockquote>Copy definitions of external modules excluding EPICS_BASE and
TEMPLATES_TOP from old application RELEASE file.
<br>If sequence programs (*.st or *.stt files) exist in your application,
add the SNCSEQ location definition for the R3.14 seq external module
<blockquote><tt>SNCSEQ =&lt;full path to seq module top></tt></blockquote>
The R3.14 seq module must exist and be built with EPICS base R3.14.0alpha3.</blockquote>
<h3>
Modify the Makefiles in &lt;top>/*App directories.</h3>
<blockquote>Change&nbsp;&nbsp;&nbsp;&nbsp; <tt>include $(TOP)/config/CONFIG_APP</tt>
<br>to&nbsp;&nbsp;&nbsp;&nbsp; <tt>include $(TOP)/configure/CONFIG</tt>
<p>Change&nbsp;&nbsp;&nbsp;&nbsp; i<tt>nclude $(TOP)/config/RULES_DIRS</tt>
<br>to&nbsp;&nbsp;&nbsp;&nbsp; <tt>include $(TOP)/configure/RULES_DIRS</tt></blockquote>
<h3>
Modify the Makefiles in &lt;top>/*App/*Db directories.</h3>
<blockquote>Remove existing Makefile
<br>Rename Makefile.Host to Makefile
<br>Modify Makefile as follows:
<p>Change&nbsp;&nbsp;&nbsp;&nbsp; <tt>TOP=../../..</tt>
<br>to&nbsp;&nbsp;&nbsp;&nbsp; <tt>TOP=../..</tt>
<p>Change&nbsp;&nbsp;&nbsp; i<tt>nclude $(TOP)/config/CONFIG_APP</tt>
<br>to&nbsp;&nbsp;&nbsp;&nbsp; <tt>include $(TOP)/configure/CONFIG</tt>
<p>Change&nbsp;&nbsp;&nbsp;&nbsp; <tt>include $(TOP)/config/RULES.Db</tt>
<br>to <tt>include $(TOP)/configure/RULES</tt>
<p>Place all definitions between the include lines.
<p>Place any rules after the last include line.</blockquote>
<h3>
Modify the Makefiles in &lt;top>/*App/src directories.</h3>
<blockquote>Remove existing Makefile
<br>Rename Makefile.Host to Makefile
<br>Modify Makefile as follows:
<p>Change <tt>TOP=../../..</tt>
<br>to&nbsp;&nbsp;&nbsp;&nbsp; <tt>TOP=../..</tt>
<p>Change&nbsp;&nbsp;&nbsp;&nbsp; <tt>include $(TOP)/config/CONFIG_APP</tt>
<br>to&nbsp;&nbsp;&nbsp;&nbsp; <tt>include $(TOP)/configure/CONFIG</tt>
<p>Change&nbsp;&nbsp;&nbsp;&nbsp; i<tt>nclude $(TOP)/config/RULES.Host</tt>
<br>to&nbsp;&nbsp;&nbsp;&nbsp; <tt>include $(TOP)/configure/RULES</tt>
<p>Change&nbsp;&nbsp;&nbsp;&nbsp; <tt>PROD_LIBS = &lt;name></tt>
<br>to&nbsp;&nbsp;&nbsp;&nbsp;<tt> &lt;prod name>_LIBS = dbStaticHost</tt>
<br>where&nbsp; <tt>&lt;prod name></tt> is a specifified product to be
built.
<p>Change&nbsp; library name <tt>Db</tt> to <tt>dbStaticHost.</tt>
<br>Change<tt> PROD_LIBS = Db</tt>
<br>to&nbsp;<tt> &lt;prodname>_LIBS += dbStaticHost</tt>
<br>and <tt>Db_DIR = $(EPICS_BASE_LIB)</tt>
<br>to&nbsp;&nbsp;&nbsp;&nbsp; <tt>dbStaticHost_DIR = $(EPICS_BASE_LIB)</tt>
<p>Change&nbsp;&nbsp;&nbsp;&nbsp; <tt>USER_DBDFLAGS</tt>
<br>to&nbsp;&nbsp;&nbsp;&nbsp; <tt>USR_DBDFLAGS</tt>
<p>Change&nbsp;&nbsp;&nbsp;&nbsp; <tt>RECTYPES +=&nbsp; xxxRecord.h</tt>
<br>to&nbsp;&nbsp;&nbsp;&nbsp; <tt>DBDINC += xxxRecord</tt>
<p>Change&nbsp;&nbsp;&nbsp;&nbsp; <tt>DBDNAME = &lt;name>App.dbd</tt>
<br>to&nbsp;&nbsp;&nbsp;&nbsp; <tt>DBD += &lt;name>.dbd</tt>
<p>Remove all <tt>DBDEXPAND</tt>&nbsp; lines.
<p>Change&nbsp; <tt>PROD = &lt;prodname></tt>
<br>to <tt>PROD_HOST = &lt;prodname></tt>
<p>Change&nbsp; <tt>SRCS.c += &lt;name></tt>
<br>to <tt>&lt;prodname>_SRCS += &lt;name></tt>
<br>or<tt> &lt;libname>_SRCS += &lt;name></tt>
<p>Add the contents of Makefile.Vx to Makefile removing the include lines
and the TOP definition.</blockquote>
<blockquote>Change&nbsp;&nbsp;&nbsp;&nbsp; <tt>LIBNAME = &lt;libname>Lib</tt>
<br>to&nbsp;&nbsp;&nbsp;&nbsp; <tt>PROD_vxWorks = &lt;libname></tt><tt></tt>
<p>Remove line&nbsp;<tt> -include ../baseLIBOBJS</tt>
<p>Remove&nbsp; line&nbsp;&nbsp;&nbsp; <tt>INSTALLS = iocCore seq</tt><tt></tt>
<p>Change all <tt>SRCS.c += ../&lt;name>.c </tt>lines
<br>to&nbsp;&nbsp; <font face="Arial,Helvetica">&lt;prodname>_SRCS += &lt;name>.c</font>
<br>if the source files exist in the current directory.<tt></tt>
<p>Change all <tt>*OBJS += &lt;name>.o</tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
lines
<br>to&nbsp;&nbsp; <font face="Arial,Helvetica">&lt;prodname>_SRCS += &lt;name>.c</font>
<br>or&nbsp;<font face="Arial,Helvetica"> &lt;prodname>_SRCS += &lt;name>.cc</font>
<br>if the c/c++ source files exist in the current directory.
<p>Change&nbsp;&nbsp;&nbsp; <tt>LIBOBJS += &lt;seq_program_name>.o</tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
lines
<br>to&nbsp;&nbsp; <tt>&lt;prodname>_SRCS += &lt;seq_program_name>.stt</tt>
<br>or&nbsp; <tt>&lt;prodname>_SRCS += &lt;seq_program_name>.st</tt><tt></tt>
<p>Add the lines
<blockquote><tt>#&lt;name>_LIBS += seq</tt>
<br><tt>#&lt;name>_LIBS += pv</tt>
<br><tt>#seq_DIR&nbsp;&nbsp;&nbsp; = $(SNCSEQ_LIB)</tt>
<br><tt>#pv_DIR&nbsp;&nbsp;&nbsp;&nbsp; = $(SNCSEQ_LIB)</tt><tt></tt>
<p><tt>&lt;name>_LIBS += recIoc</tt>
<br><tt>&lt;name>_LIBS += softDevIoc</tt>
<br><tt>&lt;name>_LIBS += testDevIoc</tt>
<br><tt>&lt;name>_LIBS += iocsh</tt>
<br><tt>&lt;name>_LIBS += miscIoc</tt>
<br><tt>&lt;name>_LIBS += rsrvIoc</tt>
<br><tt>&lt;name>_LIBS += dbtoolsIoc</tt>
<br><tt>&lt;name>_LIBS += asIoc</tt>
<br><tt>&lt;name>_LIBS += dbIoc</tt>
<br><tt>&lt;name>_LIBS += registryIoc</tt>
<br><tt>&lt;name>_LIBS += dbStaticIoc</tt>
<br><tt>&lt;name>_LIBS += ca</tt>
<br><tt>&lt;name>_LIBS += Com</tt></blockquote>
where <tt>&lt;name></tt> is the&nbsp; name in the <tt>PROD_vxWorks</tt>
definition, and uncomment the first four lines if you have sequence programs
(.st or .stt files) in the current directory.
<p>Place all macro definitions between the include lines.
<p>Place any rules after the last include line.</blockquote>
<h3>
Modify the Makefiles in &lt;top>/iocBoot directory.</h3>
<blockquote>Change i<tt>nclude $(TOP)/config/CONFIG_APP</tt>
<br>to&nbsp;&nbsp;&nbsp;&nbsp; <tt>include $(TOP)/configure/CONFIG</tt>
<p>Remove the line <tt>DIRS += $(wildcard *ioc*)</tt>
<p>Change <tt>include $(TOP)/config/RULES.iocBoot</tt>
<br>to&nbsp;&nbsp;&nbsp;&nbsp; i<tt>nclude $(TOP)/configure/RULES.iocBoot</tt></blockquote>
<h3>
Modify the Makefiles in &lt;top>/iocBoot/ioc* directories.</h3>
<blockquote>Change <tt>include $(TOP)/config/CONFIG_APP</tt>
<br>to&nbsp;&nbsp;&nbsp;&nbsp; <tt>include $(TOP)/configure/CONFIG</tt>
<p>Change <tt>include ARCH = &lt;old arch specification e.g. mv167></tt>
<br>to&nbsp;&nbsp;&nbsp;&nbsp; <tt>include ARCH = &lt;new arch specificatio
e.g. vxWorks-68040></tt><tt></tt>
<p>Change <tt>include $(TOP)/config/RULES.ioc</tt>
<br>to&nbsp;&nbsp;&nbsp;&nbsp; <tt>include $(TOP)/configure/RULES.ioc</tt>
<p>Add the following rule at the end of the Makefile.
<blockquote><tt>buildInstall: cdCommands</tt></blockquote>
</blockquote>
<h3>
Modify st.cmd in &lt;top>/iocBoot/ioc* directories.</h3>
<blockquote>Remove the lines</blockquote>
<blockquote>
<blockquote>
<pre>ld &lt; seq</pre>
<pre>ld &lt; iocCore</pre>
</blockquote>
Change&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <tt>ld &lt; &lt;libname>Lib</tt>
<br>to&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <tt>ld &lt; &lt;libname>.munch</tt>
<p>Change&nbsp; load statements&nbsp; for db and dbd files from
<blockquote><tt>cd startup</tt>
<br><tt>dbLoadDatabase("../../dbd/exampleApp.dbd")</tt>
<br><tt>dbLoadRecords("../../db/dbExample1.db","user=jba")</tt>
<br><tt>dbLoadRecords("../../db/dbExample2.db")</tt></blockquote>
to
<blockquote><tt>cd top</tt>
<br><tt>dbLoadDatabase("dbd/example.dbd")</tt>
<br><tt>registerRecordDeviceDriver(pdbbase)</tt>
<br><tt>dbLoadRecords("db/dbExample1.db","user=jba")</tt>
<br><tt>dbLoadRecords("db/dbExample2.db")</tt></blockquote>
</blockquote>
<h3>
Record support changes</h3>
<blockquote>The steppermotor, scan, and pid records are no longer in base.&nbsp;
If these records are not used in your application, comment out references
to them in base.dbd. If these record types are used at your site, they&nbsp;
should be downloaded and built with base R3.14 by your EPICS administrator.
To update the R3.14 location of these record types in your application
you must&nbsp; add appropriate module definitions to your application's
config/RELEASE file and change the <tt>LIBOBJS</tt> definitions.
<p>For example add</blockquote>
<blockquote>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <tt>PID=&lt;full
path to modules directory>/pid</tt>
<p>to config/RELEASE.
<br>Remove</blockquote>
<blockquote>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <tt>LIBOBJS
+= $(EPICS_BASE_BIN)/pidRecord.o</tt>
<p>from baseLIBOBJS, and add</blockquote>
<blockquote>
<blockquote><tt>LIBOBJS += $(PID_BIN)/pidRecord.o</tt></blockquote>
to your application src/Makefile.</blockquote>
<blockquote>You should consider changing any existing old steppermotor
records to the new EPICS&nbsp; motor record&nbsp; module supported by Beamline
Controls and Data Acquisition at APS.</blockquote>
<h3>
RecDynLink.o and devPtSoft changes</h3>
<blockquote>recDynLink.o and devPtSoft.o are no longer in EPICS base and
now exist as separate EPICS modules.You must now add the appropriate module
full path definitions to your application config/RELEASE file, and change
<tt>LIBOBJS</tt>
location definition <tt>$(EPICS_BASE_BIN)</tt> to the module definition
bin directory in your application src directory files.&nbsp; See "Hardware
support changes" below for instructions.</blockquote>
<h3>
Hardware support changes</h3>
<blockquote>All hardware support (dev, drv and dbd files) except soft support
has been unbundled from base R3.14. This support includes the files symb.dbd,
drvHp1404a.o, drvEpvxiMsg.o, and drvEpvxi.o. If these are not used by your
application, comment out references to them in base.dbd.</blockquote>
<blockquote>Hardware support now exists as separate EPICS modules. The
hardware support for your site should be downloaded and built with base
R3.14 by your EPICS administrator. You must now add the appropriate module
full path definitions to your application config/RELEASE file, and change
<tt>LIBOBJS</tt>
location from <tt>$(EPICS_BASE_BIN) </tt>to the module&nbsp; bin directory
in your application src directory files.
<p>For example, remove</blockquote>
<blockquote>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <tt>LIBOBJS+=$(EPICS_BASE_BIN)/symb</tt></blockquote>
<blockquote>from baseLIBOBJS and add</blockquote>
<blockquote>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <tt>LIBOBJS+=$(SYMB_BIN)/symb</tt></blockquote>
<blockquote>to your application src/Makefile,
<br>and add the line</blockquote>
<blockquote>
<blockquote><tt>SYMB=&lt;full path definition for the built module SYMB></tt></blockquote>
</blockquote>
<blockquote>into your application config/RELEASE file .</blockquote>
<h3>
dbLoadtemplate tool changes</h3>
<blockquote>The host tool dbLoadTemplate has been replace by a new EPICS
extension, msi, which should be downloaded and built with base R3.14 by
your EPICS administrator. dbLoadTemplate is still supported on iocs.&nbsp;
If, in your application, db files are created from template and substitution
files you should&nbsp; add the definition
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <tt>EPICS_EXTENSIONS=&lt;full
path name to epics extensions directory></tt>
<p>to your application config/RELEASE file.</blockquote>
<blockquote>
<blockquote>&nbsp;</blockquote>
<blockquote>
<pre></pre>
</blockquote>
</blockquote>
<br>&nbsp;
</body>
</html>

View File

@@ -0,0 +1,145 @@
<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<meta name="Author" content="jba">
<meta name="GENERATOR" content="Mozilla/4.77 [en] (X11; U; SunOS 5.8 sun4u) [Netscape]">
</head>
<body>
<center>
<h2>
Converting an EPICS R3.14.0 alpha2 application to beta1</h2></center>
<p><br>This document describes how to convert a R3.14.0alpha2 application
so that it builds with release R3.14.0beta1.
<h3>
Gnumake clean uninstall</h3>
<blockquote>First do a "<tt>gnumake clean uninstall"</tt> in the application's
root directory to remove all files created by earlier builds.</blockquote>
<h3>
Replace configure/RULES.ioc and configure/Makefile</h3>
<blockquote>The rules defined in RULES.ioc have changed slightly, and new
applications are now given a wrapper version which just includes $(EPICS_BASE)/configureRULES.ioc.
The new configure/Makefile contains an additional macro that causes the
contents of the configure/RELEASE file to be checked at build time for
consistency with all the support applications that it references. These
files should be replaced with copies of the new versions from &lt;base>/templates/makeBaseApp/top/configure</blockquote>
<h3>
Remove baseLIBOBJS</h3>
<blockquote>Record and device support from base now exists in archive libraries
so baseLIBOBJS is no longer needed and the file and references to it in
the Makefile can be deleted. e.g. remove
<blockquote><tt>-include ../baseLIBOBJS</tt></blockquote>
and the file baseLIBOBJS. If there are no LIBOBJS definitions in the Makefile,
also remove
<blockquote><tt>example_OBJS += $(LIBOBJS)</tt></blockquote>
</blockquote>
<h3>
Libraries recIoc, softDevIoc, and testDevIoc</h3>
<blockquote>Add the new record and dev support libraries to &lt;name>App/src/Makefile,
i.e. add the lines
<blockquote><tt>example_LIBS += recIoc</tt>
<br><tt>example_LIBS += softDevIoc</tt>
<br><tt>example_LIBS += testDevIoc</tt></blockquote>
and remove any references to iocLibrary, e.g. remove the line
<blockquote><tt>example_OBJS_vxWorks += $(EPICS_BASE_BIN)/iocCoreLibrary</tt></blockquote>
The order of references to base libraries is important so place recIoc
and softDevIoc&nbsp; before the the other base library references.
<p>If you are building on a WIN32 host add the following lines instead:
<blockquote><tt># Use win32 object libs for registered support</tt>
<br><tt>example_LIBS_win32 += recIocObj</tt>
<br><tt>example_LIBS_win32 += softDevIocObj</tt>
<br><tt>example_LIBS_win32 += testDevIocObj</tt>
<br><tt>example_LIBS_DEFAULT += recIoc</tt>
<br><tt>example_LIBS_DEFAULT += softDevIoc</tt>
<br><tt>example_LIBS_DEFAULT += testDevIoc</tt></blockquote>
</blockquote>
<h3>
iocrf renamed to iocsh</h3>
<blockquote>Change all references to ioccrf in your application src directories
to iocsh e.g.
<p>change <tt>#include "ioccrf.h"</tt>
<br>to&nbsp; <tt>#include "iocsh.h"</tt>
<p>change<tt> ioccrf(argv[1]);</tt>
<br>to&nbsp;<tt> iocsh(argv[1]);</tt>
<p>and change&nbsp;<tt> ioccrf(NULL);</tt>
<br>to <tt>iocsh(NULL)</tt>;
<p>in &lt;name>App/src/exampleMain.c.</blockquote>
<h3>
PROD changes</h3>
<blockquote>PROD targets will now be built for all target architectures.
If a product should be built only for host architectures change PROD to
PROD_HOST .e.g.&nbsp; in your application src Makefiles
<blockquote>change <tt>PROD += caExample</tt>
<br>to&nbsp; <tt>PROD_HOST += caExample</tt>
<br>and
<br>change <tt>PROD = sncExample</tt>
<br>to <tt>PROD_HOST += sncExample</tt></blockquote>
</blockquote>
<b>LIBRARY and PROD changes</b>
<blockquote>The meaning of LIBRARY and PROD have now changed. For vxWorks,
LIBRARY now means an archive library, OBJLIB is now a combined object file
(only needed for R3.13 compatibility) and PROD is now a combined object
file with library references resolved and will have a corresponding .munch
file created. Thus, in your application src Makefiles,
<blockquote>change <tt>LIBRARY_vxWorks = &lt;name></tt>
<br>to <tt>PROD_vxWorks = &lt;name></tt>
<br>or
<br>remove the lines <tt>LIBRARY_vxWorks = &lt;name></tt>
<br>and <tt>PROD_RTEMS = &lt;name></tt>
<br>and change <tt>PROD = &lt;name></tt>
<br>to <tt>PROD_IOC = &lt;name></tt>.</blockquote>
In the iocBoot/ioc&lt;name>/st.cmd files,
<blockquote>change <tt>ld &lt; &lt;name>Library.munch</tt>
<br>to <tt>ld &lt; &lt;name>.munch</tt></blockquote>
A SRCS definition is now required for every PROD&nbsp; and LIBRARY source
file to determine correct header file dependancies. This is true even if
there is only one source file for the PROD or LIBRARY . Thus, for the PROD
caExample in your src Makefile, add&nbsp; the line
<blockquote>&nbsp;caExample_SRCS += caExample.c</blockquote>
</blockquote>
<h3>
registerRecordDeviceDriver changes</h3>
<blockquote>The created file registerRecordDeviceDriver.cpp is now used
for all target architectures. Thus in your application src Makefiles
<blockquote>change <tt>example_SRCS_DEFAULT += example_registerRecordDeviceDriver.cpp</tt>
<br>to&nbsp; <tt>example_SRCS += example_registerRecordDeviceDriver.cpp</tt>
<br><tt></tt>&nbsp;</blockquote>
</blockquote>
<h3>
RTEMS-specific pathname changes</h3>
<blockquote>1. The RTEMS TFTP remote filesystem no longer ignores leading
`../' components in path names.&nbsp; All st.cmd file lines with path names
of the form <tt>dbLoadRecords("../../db/dbExample1.db","user=norume")</tt>
<br>must be changed to
<br><tt>dbLoadRecords("db/dbExample1.db","user=norume")</tt><tt></tt>
<p>The makeBaseApp.pl script distributed with R3.14-beta1 creates st.cmd
scripts with the proper path names.
<p>2. The RTEMS TFTP remote filesystem supports a limited set of chdir
operations.
<br>All paths passed to chdir (or to the IOC shell `cd' command) must end
in a `/'
<br>character.</blockquote>
<blockquote>
<blockquote>&nbsp;</blockquote>
</blockquote>
</body>
</html>

View File

@@ -2,15 +2,197 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<meta name="GENERATOR" content="Mozilla/4.72 [en] (X11; U; SunOS 5.8 sun4u) [Netscape]">
<meta name="GENERATOR" content="Mozilla/4.76 [en] (X11; U; SunOS 5.8 sun4u) [Netscape]">
<title>EPICS Release baseR3.14
</title>
</head>
<body>
<center>
<h1>
EPICS Release base 3.14.0alpha1</h1>
This is the first release of 3.14. This is the first release that supports
EPICS Release base 3.14.0beta1</h1></center>
<h2>Changes since alpha2</h2>
All changes for release 3.13.5 that also apply to 3.14 have been made.
<p>
<b>devAiSoftRaw and devAoSoftRaw</b>
</p>
<p>
A new state is defined for the LINR field. The name is "SLOPE",
which allows any device type to be used with manual settings of
the EOFF and ESLO fields. With this setting, the device support's
special_linconv() routine is only called when LINR=LINEAR.
</p>
<p>
The RTEMS TFTP remote filesystem driver now supports a limited form of
the chdir() system call. One restriction is that all pathnames passed
to chdir() must end in a / character, so IOC shell commands to change
directories must be given as
</p>
<p>
cd ../db
</p>
<center>
<h1>
EPICS Release base 3.14.0alpha2</h1></center>
Since the alpha1 release some major changes were made to the build system,
to some of the libCom facilities, and to the iocsh facilities.
<p>The unbundled version of the sequencer has been build and tested with
this release. You must obtain a version of the sequencer that has been
built against alpha2.
<p>A verion of the HPlanGpib support has been built and tested with this
release. Again you must obtain a version that builds with alpha2.
<p>A new update to the Application Developer's Guide is available for this
release.
<h3>
Build changes</h3>
<ul>
<li>
Operating system independant builds are now done in an O.Common subdirectory
and then installed instead of being performed directly in an install directory.</li>
<li>
Build definition names (e.g. RECTYPES, MENUS, DBDNAME, and BPTS) have been
changed to specify the name of the file to be created and installed instead
of the source file name.</li>
<li>
All db and dbd related definitions and rules have been moved into base/configure/RULES.Db
file. The rules now allow multiple dbd files and registerRecordDeviceDriver
files to be created in a single Makefile.</li>
<li>
"gnumake depends" no longer depends on a complete buildInstall.</li>
</ul>
<h3>
Converting alpha1 applications to alpha2</h3>
Build modifications in alpha2 require the following changes to existing
R3.14 applications.
<ul>
<li>
&nbsp;Remove the now unused RULES files</li>
<li>
</li>
<ul>./configure/RULES.Db
<br>./configure/RULES.registerRecordDeviceDriver
<br>&nbsp;</ul>
<li>
Delete the following line in ./configure/RULES</li>
<ul>&nbsp;
<br>include $(TOP)/configure/RULES.registerRecordDeviceDriver</ul>
</ul>
<ul>
<li>
&nbsp; In &lt;top>/configure/Makefile change</li>
<ul>&nbsp;
<br>@$(PERL) $(TOOLS)/makeConfigAppInclude.pl $(T_A) $@ $(TOP)</ul>
to
<ul>@$(PERL) $(TOOLS)/makeConfigAppInclude.pl $(EPICS_HOST_ARCH) $(T_A)
$@ $(TOP)
<br>&nbsp;</ul>
and add the line
<ul>&nbsp;
<br>depends: install
<br>&nbsp;</ul>
to the bottom of the Makefile.
<ul>&nbsp;</ul>
</ul>
<ul>
<li>
In all *App/*Db/Makefileschange</li>
<ul>&nbsp;
<br>include $(TOP)/configure/RULES.Db</ul>
to
<ul>include $(TOP)/configure/RULES</ul>
<li>
In all *App/src/Makefile files</li>
<ul>&nbsp;</ul>
change&nbsp;&nbsp;&nbsp; DBDNAME = &lt;name>App&nbsp;&nbsp;&nbsp; to&nbsp;&nbsp;&nbsp;
DBD += &lt;name>
<ul>&nbsp;</ul>
and remove the line
<br>&nbsp;
<ul>DBDEXPAND = &lt;name>Include.dbd
<br>&nbsp;</ul>
NOTE: If any of your *App/*Db/Makefiles contain "DBDNAME =" lines you should
make these same changes in that *Db dirctory.
<br>&nbsp;
<li>
In all *App/src/Makefile Makefiles</li>
<ul>&nbsp;</ul>
change&nbsp;&nbsp;&nbsp; RECTYPES=&lt;name>.h&nbsp;&nbsp;&nbsp; to&nbsp;&nbsp;&nbsp;
DBDINC+=&lt;name>
<ul>&nbsp;</ul>
change&nbsp;&nbsp;&nbsp; MENUS=&lt;name>.h&nbsp;&nbsp;&nbsp; to&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
DBDINC+=&lt;name></ul>
<ul>change&nbsp;&nbsp;&nbsp; BPTS&nbsp;&nbsp;&nbsp;&nbsp; to&nbsp;&nbsp;&nbsp;&nbsp;
DBD
<p>change&nbsp;&nbsp;&nbsp;&nbsp; INSTALLDB&nbsp;&nbsp;&nbsp;&nbsp; to&nbsp;&nbsp;&nbsp;
DB
<p>change&nbsp;&nbsp;&nbsp; DBDINSTALL&nbsp;&nbsp;&nbsp; to&nbsp;&nbsp;&nbsp;&nbsp;
DBD
<br>&nbsp;
<li>
In all example *App/src/Makefile files change</li>
<ul>&nbsp;
<br>example_SRCS_DEFAULT += registerRecordDeviceDriver.c</ul>
to
<ul>example_SRCS_DEFAULT += &lt;name>_registerRecordDeviceDriver.cpp
<br>&nbsp;</ul>
where &lt;name> is the base name of a &lt;name>.dbd file which was created
from a &lt;name>Include.dbd file and which will be loaded in a st.cmd or
stcmd.host script (e.g. example).
<br>&nbsp;
<li>
In ./iocBoot/ioc&lt;name>/st.cmd files change</li>
<br>&nbsp;
<ul>dbLoadDatabase("dbd/exampleApp.dbd")</ul>
to
<ul>dbLoadDatabase("dbd/example.dbd")
<br>&nbsp;</ul>
<li>
In &lt;top>/iocBoot/ioc&lt;name>/stcmd.host files change</li>
<ul>&nbsp;
<br>dbLoadDatabase("../../dbd/exampleApp.dbd",0,0)</ul>
to
<ul>dbLoadDatabase("../../dbd/example.dbd",0,0)</ul>
</ul>
<h3>
EPICS_HOST_ARCH changes</h3>
GNU compiler builds are now determined by the value of EPICS_HOST_ARCH
and are no longer specified in CONFIG_SITE.&nbsp; All references to the
ANSI (ACC/GCC) and CPLUSPLUS (CCC/G++) macros have been removed.
<br>&nbsp;
<h3>
libCom</h3>
Most of the library routines and files starting with the prefix osi have
been changed to start with epics. Several also had major changes to their
user interface. See the latest version of the Application Developer's Guide
for details.
<br>&nbsp;
<center>
<h2>
EPICS Release base 3.14.0alpha1 Notes</h2></center>
<p><br>
<p>This is the first release of 3.14. This is the first release that supports
iocCore on platforms besides vxWorks.
<p>iocCore is now supported on the following platforms:
<ul>
@@ -26,14 +208,16 @@ and MC68360 processors. RTEMS also supports powerPC.
<li>
solaris</li>
<br>Has been tested on solaris 2.6 and solaris 8.
<br>Has been tested on solaris 2.6 and solaris 8 with Sun workshop 6.0 (C++ 5.2).
Sun workshop 5.0 (C++ 5.0) will not compile this version of EPICS.
<li>
Linux</li>
<br>Has been tested on Redhat x86 platforms.
<li>
winNT</li>
</ul>
<br>Testing has been done with visual C++ 6.0.</ul>
A new version of the Application Developers Guide is available. The following
gives links to the new Application Developer's Guide and to RTEMS information.
<p>http://www.aps.anl.gov/epics/modules/base/R3-14.php

View File

@@ -1,49 +1,75 @@
# CONFIG.Host.Borland
#
# This file is maintained by the EPICS community.
# Sites may override these definitions in CONFIG_SITE.Borland
# Use std path variables from ms
HOME = $(HOMEDRIVE)$(HOMEPATH)
BORLAND_LIB = $(BORLAND)\\lib
BORLAND_INC = $(BORLAND)\\include
BORLAND_BIN = $(BORLAND)\\bin
#
#
ANSI = ACC
CPLUSPLUS = CCC
#
#
WINLINK = ilink32
# -q supress command line banner
WINLINK = $(BORLAND_BIN)/ilink32 -q
RCCMD = brcc32 -i . -i .. -i $(INSTALL_INCLUDE) -i $(EPICS_BASE_INCLUDE) -fo $@ $<
# -l specifies default language
# -fo Renames the output .RES file
RCCMD = $(BORLAND_BIN)/brcc32 $(subst -I,-i,$(INCLUDES)) -l0x409 -fo$@ $<
ARCMD = tlib $@
ARCMD = $(BORLAND_BIN)/tlib $@
#
# Configure OS vendor C compiler
CCLINKOPT = -WM -D_WIN32
ACC = bcc32 $(CCLINKOPT)
# Configure Borland C compiler
# -q suppress compiler identification banner
# -tWM generate a 32-bit multi-threaded target
# -tWD generate a .DLL executable
# -a8 quad word alignment
# -D_WIN32 macro defined to be consistant with Microsoft Visual C++
# -D_RTLDLL macro defined to use Borland C++ RTL library
CCLINKOPT = -q -tWM -tWD -a8 -D_WIN32 -D_RTLDLL
ACC = $(BORLAND_BIN)/bcc32 $(CCLINKOPT)
#
# __STDC__=0 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
# __STDC__=0 works but not as cleanly as with
# Microsoft Visual C++.
# The Borland header files use ifdef __STDC__
# to disable many nice things. This is overridden
# by defining NO_BORLAND_STDC in the Makefile.Host.
#
ifdef NO_BORLAND_STDC
ACC_ANSI = $(ACC)
ACC_STRICT = $(ACC)
else
ACC_ANSI = $(ACC) -D__STDC__=0
ACC_STRICT = $(ACC) -D__STDC__=0
ACC_TRAD = $(ACC) /nologo
endif
ACC_TRAD = $(ACC)
#
ACC_WARN_YES = -w -g0
# -w display warnings on
# -g0 no limit to warning messages
# some warning message here are always disabled because they are
# trivial and numerous
# -w-8012 Comparing signed and unsigned values
# -w-8060 Possibly incorrect assignment
# -w-8071 Conversion may lose significant digits
ACC_WARN_YES = -w -g0 -w-8012 -w-8060 -w-8071
# -w- display warnings off
ACC_WARN_NO = -w-
#
# -O1 optimization for size
# -k- turn off standard stack frame
# -H- Turn off precompiled headers
# -R- Don't include browser info in .obj files
ACC_OPT_YES = -k- -H- -R- -O1
# -H- turn off precompiled headers
# -R- don't include browser info in .obj files
# -O1 optimization for size
# -v- turn off source debugging
# -vi control expansion of inline functions
ACC_OPT_YES = -k- -H- -R- -O1 -v- -vi
#
ACC_OPT_NO =
@@ -57,26 +83,39 @@ ACC_SLIBS_NO=
# Configure OS vendor C++ compiler
#
# __STDC__=0 is a real great idea of Jeff that gives us both:
# 1) define STDC for EPICS code (pretend ANSI conformance)
# 2) set it to 0 to use MS C "extensions" (open for _open etc.)
# because MS uses: if __STDC__ ... disable many nice things
# __STDC__=0 works but not as cleanly as with
# Microsoft Visual C++.
# The Borland header files use ifdef __STDC__
# to disable many nice things. This is overridden
# by defining NO_BORLAND_STDC in the Makefile.Host.
#
CCC = bcc32 $(CCLINKOPT)
CCC = $(BORLAND_BIN)/bcc32 $(CCLINKOPT)
ifdef NO_BORLAND_STDC
CCC_NORMAL = $(CCC)
CCC_STRICT = $(CCC)
else
CCC_NORMAL = $(CCC) -D__STDC__=0
CCC_STRICT = $(CCC) -D__STDC__=0
endif
CCC_TEMPL_INST_FLAG =
#
CCC_WARN_YES = -w -g0
# -w display warnings on
# -g0 no limit to warning messages
# -w-8012 Comparing signed and unsigned values
# -w-8060 Possibly incorrect assignment
# -w-8071 Conversion may lose significant digits
CCC_WARN_YES = -w -g0 -w-8012 -w-8060 -w-8071 -w-8008 -w-8027 -w-8066 -w-8080 -w-8004
# -w- display warnings off
CCC_WARN_NO = -w-
#
# -O1 optimization for size
# -k- turn off standard stack frame
# -H- Turn off precompiled headers
# -R- Don't include browser info in .obj files
CCC_OPT_YES = -k- -H- -R- -O1
# -O1 optimization for size
# -v- turn off source debugging
# -vi control expansion of inline functions
CCC_OPT_YES = -k- -H- -R- -O1 -v- -vi
#
CCC_OPT_NO =
@@ -88,16 +127,15 @@ CCC_SLIBS_YES=
CCC_SLIBS_NO=
PROD_VERSION=3.13
# -w display warnings on
# -C clear state before linking
# -Gn no state files
# -x no map
# -Gi generate import library
# -Tpd this flag specifies the output file type
# -aa this flag specifies the application type
# -c case sensitive linking
LINK_OPT_FLAGS_YES = -w -C -Gn -x -Gi -Tpd -aa -c
LINK_OPT_FLAGS_NO = -w- -C -Gn -x -Gi -Tpd -aa -c
# -C clear state before linking
# -Gi generate import library
# -Gn no state files
# -Tpd targets a Windows .DLL file
# -x no map
# -w display warnings on
LINK_OPT_FLAGS_YES = -c -C -Gi -Gn -Tpd -x -w
LINK_OPT_FLAGS_NO = -c -C -Gi -Gn -Tpd -x -w-
WIN32_DLLFLAGS = $(LINK_OPT_FLAGS_$(HOST_OPT))
OPT_LDFLAGS =
@@ -111,6 +149,7 @@ ARCH_CLASS=WIN32
# ifdef WIN32 looks better that ifeq ($(ARCH_CLASS),WIN32) ??
WIN32=1
BORLANDC=1
EXE=.exe
OBJ=.obj
@@ -118,7 +157,7 @@ RES=.res
# Problem: BorlandC does not recognize *.cc as C++ source,
# we have to compile xx.cc using the flag -P xx.cc,
SOURCE_CXXFLAG = -P
SOURCE_CXXFLAG = -P -D__cplusplus
# Operating system flags
OP_SYS_CFLAGS =
@@ -126,13 +165,14 @@ OP_SYS_CFLAGS =
#
# Borland specific include files
#
OP_SYS_INCLUDES = -I$(INCLUDE)
OP_SYS_INCLUDES = -I$(BORLAND_INC)
#
OP_SYS_LDLIBS =
#
# specify dll .def file only if it exists
#
#DLL_DEF_FLAG = $(addprefix /def:,$(wildcard ../$(LIBRARY).def))
DLL_DEF_FLAG = $(subst /,\\,$(wildcard ../$(LIBRARY).def))
# HOST_OPT_FLAGS is part of CFLAGS/CXXFLAGS,
@@ -152,7 +192,7 @@ HOST_OPT_FLAGS += $(subst $@, /_WINDLL, $(findstring $@,$(LIBOBJS)))
# x.lib: what you link to progs that use the dll (LIBNAME)
# x.exp: what you need to build the dll (in no variable)
#
LINK.shrlib = $(WINLINK) $(WIN32_DLLFLAGS) -L$(LIB) -L$(LIB)\\Psdk c0d32.obj
LINK.shrlib = $(WINLINK) $(WIN32_DLLFLAGS) -L$(BORLAND_LIB) -L$(BORLAND_LIB)\\Psdk c0d32.obj
# adjust names of libraries to build
#
@@ -171,7 +211,12 @@ SHRLIBNAME = $(LIBRARY).dll
#
DLL_LINK_LIBNAME_YES = $(LIBRARY).lib
DLL_LINK_LIBNAME = $(DLL_LINK_LIBNAME_$(SHARED_LIBRARIES))
#ifeq ($(strip $(SHARED_LIBRARIES)),NO)
#LIBNAME = $(LIBRARY).lib
#else
LIBNAME = $(LIBRARY)Obj.lib
#endif
# dll install location
INSTALL_SHRLIB = $(INSTALL_BIN)
@@ -181,6 +226,7 @@ INSTALL_SHRLIB = $(INSTALL_BIN)
OBJECT_LIB_EXT_YES = Obj.lib # object library extension for static build
OBJECT_LIB_EXT_NO = .lib # object library extension for dynamic build
OBJECT_LIB_EXT = $(OBJECT_LIB_EXT_$(STATIC_BUILD))
COND_PROD_DEPLIBS = $(foreach prod,$(PROD), $(foreach lib, $($(basename $(prod))_LIBS),\
$(firstword $($(lib)_DIR) $(EPICS_BASE_LIB))/$(lib)$(OBJECT_LIB_EXT)))
PRODNAME_DEPLIBS = $(foreach lib,$(PRODNAME_LIBS),$(firstword $(wildcard $($(lib)_DIR)/$(lib).lib $($(lib)_DIR)/$(lib)Obj.lib $(EPICS_BASE_LIB)/$(lib).lib $(EPICS_BASE_LIB)/$(lib)Obj.lib ) $(filter $(LIBRARY)$(OBJECT_LIB_EXT), $(lib)$(OBJECT_LIB_EXT)) ))
@@ -201,18 +247,18 @@ USR_LDLIBS = $(PRODNAME_DEPLIBS) $(PROD_DEPLIBS) $(USR_DEPLIBS) $(SYS_PROD_LIBS:
DLL_LDLIBS = $(DLL_DEPLIBS) $(SYS_PROD_LIBS:%=%.lib) $(OP_SYS_LDLIBS)
#multithreaded
LIBSUF=mt
# -w display warnings on
#multithreaded import library
LIBSUF=mti
# -c case sensitive linking
# -C clear state before linking
# -Gn no state files
# -Tpe targets a Windows .EXE file
# -x no map
# -c case sensitive linking
LDFLAGS += -w -C -Gn -x -c -L$(LIB) -L$(LIB)\\Psdk
# -w display warnings on
LDFLAGS += -c -C -Gn -Tpe -x -w -L$(BORLAND_LIB) -L$(BORLAND_LIB)\\Psdk
LINKSTARTUP = c0x32.obj
LINKLIBS=import32.lib cw32$(LIBSUF).lib
LINK.c = $(WINLINK) $(LDFLAGS) $(LINKSTARTUP)
LINK.cc = $(WINLINK) $(LDFLAGS) $(LINKSTARTUP)

View File

@@ -60,7 +60,7 @@ G++_STRICT = $(G++) -Wtraditional
#ARCH_DEP_CFLAGS = -D_X86_ -Dlinux -D_USE_BSD
ARCH_DEP_CFLAGS = -D_X86_ -Dlinux
ARCH_DEP_LDFLAGS += -lpthread
ARCH_DEP_LDFLAGS += -lpthread -lreadline -lcurses -lrt
#glibc FAQ
# "_GNU_SOURCE: glibc does not make the GNU extensions available

View File

@@ -1,4 +1,4 @@
# CONFIG.Host.UnixCommon
#
# Contains definitions common to all Unix archs
#
@@ -20,7 +20,8 @@ SHRLIB_SUFFIX = .so
SHRLIBNAME = lib$(LIBRARY)$(SHRLIB_SUFFIX)$(SHRLIB_VERSION:%=.%)
DLL_LDLIBS = $(PRODNAME_LIBS:%=-l%) $(PROD_LIBS:%=-l%) $(USR_LIBS:%=-l%)
DLL_LIBS = $(patsubst $(LIBRARY),, $(PROD_LIBS) $(USR_LIBS))
DLL_LDLIBS = $(PRODNAME_LIBS:%=-l%) $(DLL_LIBS:%=-l%)
INSTALL_SHRLIB = $(INSTALL_LIB)
@@ -61,7 +62,8 @@ USR_LDLIBS = $(PRODNAME_LIBS:%=-l%) $(PROD_LIBS:%=-l%) $(USR_LIBS:%=-l%)\
#--------------------------------------------------
# Operating system definitions
OP_SYS_INCLUDES =
OP_SYS_CFLAGS = -DUNIX
OP_SYS_CFLAGS = -DUNIX
OP_SYS_LDFLAGS =
OP_SYS_LDLIBS = -lm

View File

@@ -20,7 +20,7 @@ CPLUSPLUS = CCC
MSVISC = c:\\Program\ Files\\DevStudio\\Vc
WINLINK = link
RCCMD = rc -l 0x409 -i . -i .. -i $(INSTALL_INCLUDE) -i $(EPICS_BASE_INCLUDE) -fo $@ $<
RCCMD = rc -l 0x409 -i . -i .. -I$(INSTALL_INCLUDE)/os/$(OS_CLASS) -I$(INSTALL_INCLUDE) $(INSTALL_INCLUDES) -I$(EPICS_BASE_INCLUDE)/os/$(OS_CLASS) -I$(EPICS_BASE_INCLUDE) -fo $@ $<
ARCMD = lib /nologo /verbose /out:$@

View File

@@ -24,5 +24,11 @@ SHARED_LIBRARIES=NO
#==========================
ARCH_DEP_CFLAGS = -DCYGWIN32 -U_WIN32
ARCH_DEP_LDLIBS = -lm
ARCH_DEP_LDLIBS =
OP_SYS_LDLIBS =
# cygwin32 overrides to eliminate following warning message -
# -fPIC ignored for target (all code is position independent)
GCC_DEP_CFLAGS = -D_REENTRANT
G++_DEP_CFLAGS = -D_REENTRANT

View File

@@ -27,6 +27,7 @@ ACC_SLIBS_YES =
ACC_SLIBS_NO=
ACC_SHRLIB_CFLAGS_YES = +Z
ACC_SHRLIB_LDFLAGS_YES = -b
ACC_DEP_CFLAGS=+DAportable
# Configure OS vendor C++ compiler
HPCC = cc
@@ -43,6 +44,7 @@ HPCC_SLIBS_YES =
HPCC_SLIBS_NO=
HPCC_SHRLIB_CFLAGS_YES = +Z
HPCC_SHRLIB_LDFLAGS_YES = -b
HPCC_DEP_CFLAGS=+DAportable
#Old HP C++ compiler
#CCC = CC
@@ -67,11 +69,12 @@ CCC_SHRLIB_CFLAGS_YES = +Z
# then by searching the specified path (see below)
CCC_SHRLIB_LDFLAGS_YES = -b
CCC_DEPENDS_FLAG = +m
CCC_DEP_CFLAGS=+DAportable
# +DAportable causes portable object code to be created for execution
# on different PA-Risc machines
ARCH_DEP_CFLAGS = -D_HPUX_SOURCE -DHP_UX +DAportable
ARCH_DEP_CXXFLAGS = -D_HPUX_SOURCE -DHP_UX +DAportable
ARCH_DEP_CFLAGS = -D_HPUX_SOURCE -DHP_UX
ARCH_DEP_CXXFLAGS = -D_HPUX_SOURCE -DHP_UX
ARCH_DEP_LDLIBS =
ARCH_DEP_LDFLAGS = -Wl,+b$(DEFAULT_SHRLIB_SEARCH_PATH),+s

View File

@@ -0,0 +1,8 @@
# $Id$
# solaris-sparc is the new name for solaris
-include $(EPICS_BASE)/config/CONFIG.Host.solaris
ANSI=GCC
CPLUSPLUS=G++

View File

@@ -0,0 +1,66 @@
# CONFIG.Host.solaris-x86
#
# This file is maintained by the EPICS community.
# Sites may override these definitions in CONFIG_SITE.Host.solaris-x86
ARCH_CLASS = solaris
# Include definitions common to all Unix archs
include $(EPICS_BASE)/config/CONFIG.Host.UnixCommon
#
# required by sun's C++ compiler
#
AR = ar
_AR = $(AR) $(ARFLAGS)
G++_AR = $(_AR)
CCC_AR = $(CCC) -xar -o
ARCMD = $($(CPLUSPLUS)_AR) $@
RANLIB =
SPARCWORKS = /opt/SUNWspro
# Configure OS vendor C compiler
ACC = $(SPARCWORKS)/bin/cc
ACC_ANSI = $(ACC) -Xa
ACC_STRICT = $(ACC) -Xc -v
ACC_TRAD = $(ACC) -Xs
ACC_DEP_CFLAGS = -KPIC -D_REENTRANT
ACC_WARN_YES =
ACC_WARN_NO = -w
ACC_OPT_YES = -O
ACC_OPT_NO = -g
ACC_SFLAGS_YES= -Bstatic
ACC_SFLAGS_NO=
ACC_SLIBS_YES= -lw -lintl -Bdynamic -ldl -Bstatic -lXext -lX
ACC_SLIBS_NO=
ACC_SHRLIB_CFLAGS_YES =
ACC_SHRLIB_LDFLAGS_YES = -G -h $@
# Configure OS vendor C++ compiler
CCC = $(SPARCWORKS)/bin/CC
CCC_NORMAL = $(CCC) +p
CCC_STRICT = $(CCC) +p
CCC_DEP_CFLAGS = -KPIC -D_REENTRANT
CCC_TEMPL_INST_FLAG =
CCC_WARN_YES = +w
CCC_WARN_NO =
CCC_OPT_YES = -O
CCC_OPT_NO = -g
CCC_SFLAGS_YES= -Bstatic
CCC_SFLAGS_NO=
CCC_SLIBS_YES= -lw -lintl -Bdynamic -ldl -Bstatic -lXext -lX
CCC_SLIBS_NO=
CCC_DEPENDS_FLAG = -xM1
CCC_SHRLIB_CFLAGS_YES =
CCC_SHRLIB_LDFLAGS_YES = -G -h $@
GCC = gcc
G++ = g++
# Solaris on x86
ARCH_DEP_CFLAGS = -DSOLARIS -D_X86_
# socket and nsl needed by libca.a
ARCH_DEP_LDLIBS = -lsocket -lnsl

View File

@@ -0,0 +1,5 @@
# $Id$
# win32-x86 is the new name for WIN32
-include $(EPICS_BASE)/config/CONFIG.Host.WIN32

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

@@ -0,0 +1,16 @@
# $Id$
#
# This file is maintained by the EPICS community.
# Vx GNU cross compiler suffix
CMPLR_SUFFIX = ppc
# For Vx directories of form:
# $(VX_DIR)/$(HOST_ARCH).$(ARCH_CLASS)/bin
ARCH_CLASS = mv2700
# Architecture specific build flags
ARCH_DEP_CPPFLAGS = -DCPU=PPC604
ARCH_DEP_CFLAGS = -mcpu=604

View File

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

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

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

View File

@@ -11,7 +11,7 @@ ARCH_CLASS = ppc
# Architecture specific build flags
ARCH_DEP_CPPFLAGS = -DCPU=PPC604 -D_GNU_TOOL -DTRUE=1
ARCH_DEP_CFLAGS = -mcpu=604 --no-builtin
ARCH_DEP_CFLAGS = -mcpu=604 --no-builtin -mstrict-align
# ARCH_DEP_CFLAGS== -fsigned-char #May need for calcPerform.c

View File

@@ -49,23 +49,3 @@ endif
EPICS_BASE = $(INSTALL_LOCATION)
#
# this speeds up the build by turning off implicit rules search
# for EPICS Makefiles (which are not created from other files)
#
.PHONY:: $(EPICS_BASE)/config/CONFIG DEPENDS
.PHONY:: $(EPICS_BASE)/config/CONFIG_SITE.$(BUILD_TYPE).$(T_A)
.PHONY:: $(EPICS_BASE)/config/CONFIG_SITE.$(BUILD_TYPE).$(HOST_ARCH)
.PHONY:: $(EPICS_BASE)/config/CONFIG_SITE.$(BUILD_TYPE)
.PHONY:: $(EPICS_BASE)/config/CONFIG_SITE.Host.UnixCommon
.PHONY:: $(EPICS_BASE)/config/RULES.$(BUILD_TYPE)
.PHONY:: $(EPICS_BASE)/config/RULES_*
.PHONY:: $(HOME)/EPICS_CONFIG
.PHONY:: $(HOME)/EPICS_CONFIG.$(BUILD_TYPE) $(HOME)/EPICS_CONFIG.$(HOST_ARCH)
.PHONY:: $(HOME)/EPICS_CONFIG.$(BUILD_TYPE).$(T_A)
.PHONY:: $(HOME)/EPICS_CONFIG.$(BUILD_TYPE).$(HOST_ARCH)
.PHONY:: $(HOME)/EPICS_CONFIG_HOST_ARCH.$(HOST_ARCH)
.PHONY:: ../Makefile.* Makefile

View File

@@ -10,11 +10,17 @@
EPICS_VERSION=3
EPICS_REVISION=14
EPICS_MODIFICATION=0
EPICS_UPDATE_NAME=alpha
EPICS_UPDATE_NAME=beta
EPICS_UPDATE_LEVEL=1
EPICS_VERSION_STRING="EPICS Version ${EPICS_VERSION}.${EPICS_REVISION}.${EPICS_MODIFICATION}.${EPICS_UPDATE_NAME}${EPICS_UPDATE_LEVEL}"
EPICS_LOCAL_NAME=B
EPICS_LOCAL_VERSION=0
CVS_DATE="\$$Date$$"
CVS_TAG="\$$Name$$"
EPICS_VERSION_STRING="EPICS Version ${EPICS_VERSION}.${EPICS_REVISION}.${EPICS_MODIFICATION}.${EPICS_UPDATE_NAME}${EPICS_UPDATE_LEVEL}.$(EPICS_LOCAL_NAME)$(EPICS_LOCAL_VERSION)"
CVS_DATE="\$$Date$$"
BASE_3_14=YES

View File

@@ -11,6 +11,7 @@ ARCH_Linux = linux-x86
ARCH_WIN32 = win32-x86
ARCH_hp700 = hpux-m68k
ARCH_hp700 = osf-alpha
ARCH_Borland = win32-x86-borland
ifndef EPICS_HOST_ARCH
ifdef HOST_ARCH
@@ -21,3 +22,15 @@ endif
endif
HOST_ARCH := $(EPICS_HOST_ARCH)
# Note:
# The EPICS_HOST_ARCH solaris-sparc-gnu is new for base release R3.14
# so existing R3.13 applications, when HOST_ARCH is set to solaris and
# when built with R3.14, will look for base solaris-sparc directories
# and not solaris-sparc-gnu. If you plan to build R3.13 applications
# against a solaris-sparc-gnu built R3.14 base, you should set
# ANSI=GCC and CPLUSPLUS=G++ in base/config/CONFIG_SITE.Host.solaris
# and change ARCH_solaris=solaris-sparc to ARCH_solaris=solaris-sparc-gnu
# in base/config/CONFIG_COMPAT.

View File

@@ -10,5 +10,5 @@ HOSTEXE=.exe
TORNADO=YES
WIND_HOST_TYPE = cygwin32
WIND_HOST_TYPE = x86-win32

View File

@@ -0,0 +1,4 @@
# $Id$
-include $(EPICS_BASE)/config/CONFIG_HOST_ARCH.solaris

View File

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

View File

@@ -0,0 +1,4 @@
# $Id$
# win32-x86 is the new name for WIN32
-include $(EPICS_BASE)/config/CONFIG_HOST_ARCH.WIN32

View File

@@ -21,6 +21,7 @@
# hp700
# sgi
# solaris
# solaris-x86
# sun4
#
# HOST_ARCH now an environment variable
@@ -42,6 +43,7 @@ endif
# mv162lc
# mv167
# mv177
# mv2700
# niCpu030
# pc486
# ppc604
@@ -64,7 +66,7 @@ TORNADO=YES
# VxWorks directory for TORNADO=YES
#VX_DIR_YES=c:\\Tornado
#VX_DIR_YES = /usr/local/vw/tornado101
VX_DIR_YES = /usr/local/vw/tornado20
VX_DIR_YES = /usr/local/vw/tornado202
# VxWorks directory for TORNADO=NO
#VX_DIR_NO=$(VW)
@@ -119,7 +121,7 @@ MAKE_INC_TARGET_FIRST=NO
# NOTE WIN32: YES results in a DLL. CONFIG_SITE.Host.WIN32
# distribution file contains YES override
#
# NOTE solaris and sun4: If YES then LD_LIBRARY_PATH must
# NOTE solaris,Linux, and sun4: If YES then LD_LIBRARY_PATH must
# include fullpathname $(INSTALL_LOCATION)/lib/$(HOST_ARCH)
# for both the base build and when invoking base executables
SHARED_LIBRARIES=NO

View File

@@ -6,3 +6,5 @@
SHARED_LIBRARIES = YES
BORLAND=C:\\Borland\\bcc55

View File

@@ -2,3 +2,5 @@
# linux-x86 is the new name for linux
-include $(EPICS_BASE)/config/CONFIG_SITE.Host.Linux
SHARED_LIBRARY=YES

View File

@@ -0,0 +1,4 @@
# $Id$
# solaris-sparc is the new name for solaris
-include $(EPICS_BASE)/config/CONFIG_SITE.Host.solaris

View File

@@ -0,0 +1,5 @@
# $Id$
# win32-x86 is the new name for WIN32
-include $(EPICS_BASE)/config/CONFIG_SITE.Host.WIN32

View File

@@ -0,0 +1,10 @@
# $Id$
#
# This file contains overrides for Vx builds
# The definitions VX_DIR, VX_GNU, GNU_DIR, GNU_LIB, etc.
# can be overridden for specific Linux-target architecture
# combinations by creating a CONFIG_SITE.Vx.Linux.<T_A>
# file with the override definitions.
-include $(EPICS_BASE)/config/CONFIG_SITE.$(BUILD_TYPE).$(HOST_ARCH).$(T_A)

View File

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

View File

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

View File

@@ -11,8 +11,8 @@ INSTALL_CONFIG = $(INSTALL_LOCATION)/config
CONFIGS += $(subst ../,,$(wildcard ../CONFIG*))
CONFIGS += $(subst ../,,$(wildcard ../RULES*))
BIN_INSTALLS += $(wildcard ../tools/*.pl)
BIN_INSTALLS += ../tools/installEpics
SCRIPTS_HOST += $(wildcard ../tools/*.pl)
SCRIPTS_HOST += ../tools/installEpics
include $(TOP)/configure/RULES

View File

@@ -3,7 +3,13 @@
# Rules for making things related to databases
#
MAKEBPT = $(EPICS_BASE_HOST_BIN)/makeBpt$(EXE)
MSI = $(EPICS_EXTENSIONS_BIN)/msi$(EXE)
ifndef MSI
# Tool from R3.14 extensions bin, R3.13 extensions bin, or user path
MSI = $(firstword $(wildcard $(EPICS_EXTENSIONS_HOST_BIN)/msi$(HOSTEXE) \
$(EPICS_EXTENSIONS)/bin/$(HOST_ARCH)/msi$(HOSTEXE)) msi$(HOSTEXE))
endif
DBEXPAND = $(EPICS_BASE_HOST_BIN)/dbExpand$(EXE)
DBST = dbst
MAKEDBDEPENDS = $(PERL) $(TOP)/config/makeDbDepends.pl

View File

@@ -29,6 +29,7 @@
vpath %.h $(USER_VPATH)
vpath %.c $(USER_VPATH) ../os/$(ARCH_CLASS) ../os/generic ..
vpath %.cc $(USER_VPATH) ../os/$(ARCH_CLASS) ../os/generic ..
vpath %.cpp $(USER_VPATH) ../os/$(ARCH_CLASS) ../os/generic ..
vpath %.rc $(USER_VPATH) ../os/$(ARCH_CLASS) ../os/generic ..
# check for add-on CFLAGS and CXXFLAGS
@@ -281,7 +282,9 @@ endif
#---------------------------------------------------------------
# always use c++ linker
ifneq ($(strip $(CPLUSPLUS)),)
LINK.c = $(LINK.cc)
endif # CPLUSPLUS
#---------------------------------------------------------------
# Version number for base shared libraries (and win32 products)
@@ -303,11 +306,6 @@ LIBTARGETS += $(LIBNAME) $(INSTALL_LIBS)
LIBNAME_RCS=$(foreach lib, $(basename $(LIBRARY)), $(RCS) $($(lib)_RCS) $($(lib)_RCS_$(ARCH_CLASS)))
LIBNAME_RESS=$(addsuffix $(RES), $(basename $(LIBNAME_RCS)))
ifneq ($(words $(DLL_LIBS)), $(words $(DLL_DEPLIBS)))
# If invalid library names, don't make DLL file
SHARED_LIBRARIES = NO
endif
# check if shared libraries requested
ifeq ($(strip $(SHARED_LIBRARIES)),YES)
@@ -326,8 +324,6 @@ endif # LIBOBJS
endif # LIBRARY
#---------------------------------------------------------------
# Main targets
all:: install
build:: inc
@@ -517,9 +513,11 @@ $(PACKAGE)_%.h:$(INSTALL_JAVA)/$(PACKAGE)/%.class
# The order of the following rules is
# VERY IMPORTANT !!!!
depends:: $(LIBSRCS) $(SRCS) $(COND_PROD_SRCS)
depends:: $(LIBSRCS) $(SRCS) $(COND_PROD_SRCS) $(SRCS.c) $(SRCS.cc)
$(RM) DEPENDS
ifneq ($(strip $(LIBSRCS) $(SRCS) $(COND_PROD_SRCS) $(SRCS.c) $(SRCS.cc)),)
$(DEPENDS_RULE)
endif
ifeq ($(HOST_ARCH),Borland)
%$(EXE): %.c
@@ -532,6 +530,11 @@ ifeq ($(HOST_ARCH),Borland)
$(COMPILE.cc) $<
$(LINK.cc) $(subst ../,,$(basename $<))$(OBJ) , $@ ,,$(LINKLIBS) $(subst /,\\,$(LDLIBS))
%$(EXE): %.cpp
@$(RM) $@
$(COMPILE.cc) $<
$(LINK.cc) $(subst ../,,$(basename $<))$(OBJ) , $@ ,,$(LINKLIBS) $(subst /,\\,$(LDLIBS))
%$(EXE): %.C
@$(RM) $@
$(COMPILE.cc) $<
@@ -549,6 +552,11 @@ else
$(COMPILE.cc) $<
$(LINK.cc) $(subst ../,,$(basename $<))$(OBJ) $(LDLIBS)
%$(EXE): %.cpp
@$(RM) $@
$(COMPILE.cc) $<
$(LINK.cc) $(subst ../,,$(basename $<))$(OBJ) $(LDLIBS)
%$(EXE): %.C
@$(RM) $@
$(COMPILE.cc) $<
@@ -564,6 +572,10 @@ endif
@$(RM) $@
$(COMPILE.cc) $<
%$(OBJ): %.cpp
@$(RM) $@
$(COMPILE.cc) $<
%$(OBJ): %.C
@$(RM) $@
$(COMPILE.cc) $<
@@ -616,7 +628,7 @@ endif
%.db: ../%.edf
$(E2DB) $(E2DB_SYSFLAGS) $(E2DB_FLAGS) $<
%.edf: ../%.sch
%.edf: ../%.sch $(DEPSCHS)
@if [ ! -f cad.rc -a -r ../cad.rc ] ; then ln -s ../cad.rc ; fi
$(SCH2EDIF) $(SCH2EDIF_SYSFLAGS) $(SCH2EDIF_FLAGS) $<

View File

@@ -77,7 +77,9 @@ endif
depends:: $(SRCS.c) $(SRCS.cc)
$(RM) DEPENDS
ifneq ($(strip $(SRCS.c) $(SRCS.cc)),)
$(DEPENDS_RULE)
endif
clean::
@echo "Cleaning"

View File

@@ -3,6 +3,7 @@
# UNIX-cp in Perl
use File::Copy;
use File::Basename;
sub Usage
{
@@ -26,7 +27,8 @@ if (-d $target)
{
foreach $file ( @sources )
{
copy ($file, "$target/$file");
$base=basename($file);
copy ($file, "$target/$base");
}
}
else

View File

@@ -37,7 +37,7 @@ $install_dir =~ s[/$][]; # remove trailing '/'
$install_dir =~ s[//][/]g; # replace '//' by '/'
# Do we have to create the directory?
unless (-d $install_dir)
unless ( (-d $install_dir) || (-l $install_dir) )
{
# Create dir only if -d option given
Usage ("$install_dir does not exist") unless ($opt_d);

View File

@@ -9,16 +9,22 @@ eval 'exec perl -S $0 ${1+"$@"}' # -*- Mode: perl -*-
while ($line = <STDIN>)
{
next if ($line =~ /__?GLOBAL_.F.+/);
next if ($line =~ /__?GLOBAL_.I._GLOBAL_.D.+/);
if ($line =~ /__?GLOBAL_.D.+/) {
($adr,$type,$name) = split ' ',$line,3;
chop $name;
$name =~ s/^__/_/;
next if ( $name =~ /^__?GLOBAL_.D.*.\.cpp/ );
next if ( $name =~ /^__?GLOBAL_.D.\.\./ );
@dtorlist = (@dtorlist,$name);
};
if ($line =~ /__?GLOBAL_.I.+/) {
($adr,$type,$name) = split ' ',$line,3;
chop $name;
$name =~ s/^__/_/;
next if ( $name =~ /^__?GLOBAL_.I.*.\.cpp/ );
next if ( $name =~ /^__?GLOBAL_.I.\.\./ );
@ctorlist = (@ctorlist,$name);
};
}

View File

@@ -22,6 +22,10 @@ foreach $arg ( @ARGV )
{
rmdir ($arg) or die "Cannot delete $arg";
}
if (-d $arg)
{
die "Failed to delete $arg";
}
}
else
{

View File

@@ -93,9 +93,7 @@ endif
#CROSS_WARN=YES
#etc.
#CROSS_COMPILER_TARGET_ARCHS=mv167
#ANSI=GCC
#CPLUSPLUS=G++
#CROSS_COMPILER_TARGET_ARCHS=vxWorks-68040
#CMPLR=STRICT
#CXXCMPLR=STRICT

View File

@@ -1,7 +1,23 @@
# Cross compiler default definitions
# Build class: either HOST or CROSS
# Used to determine OPT and WARN compiler flags
BUILD_CLASS = CROSS
ANSI = GCC
CPLUSPLUS = G++
# Cross build: either defined or not
# Used in os/CONFIG.Common.<arch> files
# ifdef CROSS looks better than ifeq ($(BUILD_CLASS),CROSS)
CROSS = YES
GNU_TARGET_INCLUDE_DIR = $(GNU_DIR)/$(GNU_TARGET)/include
GNU_TARGET_LIB_DIR = $(GNU_DIR)/$(GNU_TARGET)/lib
export GCC_EXEC_PREFIX = $(GNU_LIB)/gcc-lib/
CROSS_CPPFLAGS = -nostdinc
CROSS_INCLUDES = $(addprefix -I,$(GNU_TARGET_INCLUDE_DIR))
CROSS_LDFLAGS = $(addprefix -L,$(GNU_TARGET_LIB_DIR))
# All cross builds use the gnu compiler
include $(CONFIG)/CONFIG.gnuCommon

View File

@@ -0,0 +1,41 @@
#--------------------------------------------------
# GNU compiler defaults
GNU_BIN = $(GNU_DIR)/bin
GNU_LIB = $(GNU_DIR)/lib
CC = $(GNU_BIN)/$(CMPLR_PREFIX)cc$(CMPLR_SUFFIX)
CCC = $(GNU_BIN)/$(CMPLR_PREFIX)cc$(CMPLR_SUFFIX)
AR = $(GNU_BIN)/$(CMPLR_PREFIX)ar$(CMPLR_SUFFIX) -rc
LD = $(GNU_BIN)/$(CMPLR_PREFIX)ld$(CMPLR_SUFFIX) -r
CPP = $(CC) -x c -E
RANLIB = $(GNU_BIN)/$(CMPLR_PREFIX)ranlib$(CMPLR_SUFFIX)
CODE_CFLAGS = -fPIC
CONFORM_CFLAGS_ANSI = -ansi
CONFORM_CFLAGS_STRICT = -ansi -pedantic
CONFORM_CFLAGS_TRAD = -traditional
WARN_CFLAGS_YES = -Wall
WARN_CFLAGS_NO = -w
#OPT_CFLAGS_YES = -g -O3
OPT_CFLAGS_YES = -O3
OPT_CFLAGS_NO = -g
CODE_CXXFLAGS = -fPIC -fno-implicit-templates
CONFORM_CXXFLAGS_NORMAL = -ansi -pedantic
CONFORM_CXXFLAGS_STRICT = -ansi -pedantic
#WARN_CXXFLAGS_YES = -Wall -Weffc++
WARN_CXXFLAGS_YES = -Wall
WARN_CXXFLAGS_NO = -w
#OPT_CXXFLAGS_YES = -g -O3
OPT_CXXFLAGS_YES = -O3
OPT_CXXFLAGS_NO = -g
STATIC_LDFLAGS_YES = -static
STATIC_LDFLAGS_NO =
SHRLIB_LDFLAGS_YES = -shared
SHRLIB_LDFLAGS_NO =
HDEPENDS_FLAGS_CMPLR = -MM

View File

@@ -20,8 +20,10 @@
# USR_CPPFLAGS c preprocesser flags
# INC include-files to install
# LIBSRCS source files for building library
# PROD_LIBS EPICS libs needed by PROD and TESTPROD
# USR_LIBS NONEPICS libs needed by PROD and TESTPROD
# LIB_SRCS source files for building library
# SHRLIB_LIBS libs needed by shared LIBRARY
# PROD_LIBS libs needed by PROD and TESTPROD
# USR_LIBS libs needed by PROD and TESTPROD
# USR_LDFLAGS ld flags
# SYS_PROD_LIBS system libs needed by PROD and TESTPROD
# PROD products to build and install
@@ -75,14 +77,6 @@ USR_LDFLAGS+=$(USR_LDFLAGS_DEFAULT)
endif
endif
ifneq ($(strip $(HTMLS_$(OS_CLASS))),)
HTMLS+=$(subst -nil-,,$(HTMLS_$(OS_CLASS)))
else
ifdef HTMLS_DEFAULT
HTMLS+=$(HTMLS_DEFAULT)
endif
endif
# check for special includes:
#
ifneq ($(strip $(INC_$(OS_CLASS))),)
@@ -104,6 +98,14 @@ LIBSRCS+=$(LIBSRCS_DEFAULT)
endif
endif
ifneq ($(strip $(LIB_SRCS_$(OS_CLASS))),)
LIB_SRCS += $(subst -nil-,,$(LIB_SRCS_$(OS_CLASS)))
else
ifdef LIB_SRCS_DEFAULT
LIB_SRCS+=$(LIB_SRCS_DEFAULT)
endif
endif
ifneq ($(strip $(SRCS_$(OS_CLASS))),)
SRCS += $(subst -nil-,,$(SRCS_$(OS_CLASS)))
else
@@ -128,6 +130,14 @@ BIN_INSTALLS+=$(BIN_INSTALLS_DEFAULT)
endif
endif
ifneq ($(strip $(PROD_OBJS_$(OS_CLASS))),)
PROD_OBJS+=$(subst -nil-,,$(PROD_OBJS_$(OS_CLASS)))
else
ifneq (,$(strip $(PROD_OBJS_DEFAULT)))
PROD_OBJS+=$(PROD_OBJS_DEFAULT)
endif
endif
ifneq ($(strip $(OBJS_$(OS_CLASS))),)
OBJS+=$(subst -nil-,,$(OBJS_$(OS_CLASS)))
else
@@ -160,6 +170,14 @@ LIBOBJS+=$(LIBOBJS_DEFAULT)
endif
endif
ifneq ($(strip $(LIB_OBJS_$(OS_CLASS))),)
LIB_OBJS+=$(subst -nil-,,$(LIB_OBJS_$(OS_CLASS)))
else
ifneq (,$(strip $(LIB_OBJS_DEFAULT)))
LIB_OBJS+=$(LIB_OBJS_DEFAULT)
endif
endif
ifneq ($(strip $(LIBRARY_$(OS_CLASS))),)
LIBRARY+=$(subst -nil-,,$(LIBRARY_$(OS_CLASS)))
else
@@ -185,20 +203,30 @@ endif
endif
ifneq ($(strip $(PROD_LIBS_$(OS_CLASS))),)
PROD_LIBS += $(subst -nil-,,$(PROD_LIBS_$(OS_CLASS)))
PROD_LDLIBS += $(subst -nil-,,$(PROD_LIBS_$(OS_CLASS)))
else
ifdef PROD_LIBS_DEFAULT
PROD_LIBS += $(PROD_LIBS_DEFAULT)
PROD_LDLIBS += $(PROD_LIBS_DEFAULT)
endif
endif
PROD_LDLIBS += $(PROD_LIBS)
ifneq ($(strip $(SHRLIB_LIBS_$(OS_CLASS))),)
SHRLIB_LIBS += $(subst -nil-,,$(SHRLIB_LIBS_$(OS_CLASS)))
else
ifdef SHRLIB_LIBS_DEFAULT
SHRLIB_LIBS += $(SHRLIB_LIBS_DEFAULT)
endif
endif
ifneq ($(strip $(USR_LIBS_$(OS_CLASS))),)
USR_LIBS += $(subst -nil-,,$(USR_LIBS_$(OS_CLASS)))
USR_LDLIBS += $(subst -nil-,,$(USR_LIBS_$(OS_CLASS)))
else
ifdef USR_LIBS_DEFAULT
USR_LIBS += $(USR_LIBS_DEFAULT)
USR_LDLIBS += $(USR_LIBS_DEFAULT)
endif
endif
USR_LDLIBS += $(USR_LIBS)
#
# concat specific library contents (if defined) to SYS_PROD_LIBS
@@ -215,10 +243,26 @@ endif
# concat specific products
#
ifneq ($(strip $(PROD_$(OS_CLASS))),)
PROD += $(subst -nil-,,$(PROD_$(OS_CLASS)))
PROD+=$(subst -nil-,,$(PROD_$(OS_CLASS)))
else
ifdef PROD_DEFAULT
PROD += $(PROD_DEFAULT)
ifneq (,$(strip $(PROD_DEFAULT)))
PROD+=$(PROD_DEFAULT)
endif
endif
ifneq ($(strip $(PROD_IOC_$(OS_CLASS))),)
PROD_IOC+=$(subst -nil-,,$(PROD_IOC_$(OS_CLASS)))
else
ifneq (,$(strip $(PROD_IOC_DEFAULT)))
PROD_IOC+=$(PROD_IOC_DEFAULT)
endif
endif
ifneq ($(strip $(PROD_HOST_$(OS_CLASS))),)
PROD_HOST+=$(subst -nil-,,$(PROD_HOST_$(OS_CLASS)))
else
ifneq (,$(strip $(PROD_HOST_DEFAULT)))
PROD_HOST+=$(PROD_HOST_DEFAULT)
endif
endif
@@ -226,10 +270,26 @@ endif
# concat specific products
#
ifneq ($(strip $(TESTPROD_$(OS_CLASS))),)
TESTPROD += $(subst -nil-,,$(TESTPROD_$(OS_CLASS)))
TESTPROD+=$(subst -nil-,,$(TESTPROD_$(OS_CLASS)))
else
ifdef TESTPROD_DEFAULT
TESTPROD += $(TESTPROD_DEFAULT)
ifneq (,$(strip $(TESTPROD_DEFAULT)))
TESTPROD+=$(TESTPROD_DEFAULT)
endif
endif
ifneq ($(strip $(TESTPROD_IOC_$(OS_CLASS))),)
TESTPROD_IOC+=$(subst -nil-,,$(TESTPROD_IOC_$(OS_CLASS)))
else
ifneq (,$(strip $(TESTPROD_IOC_DEFAULT)))
TESTPROD_IOC+=$(TESTPROD_IOC_DEFAULT)
endif
endif
ifneq ($(strip $(TESTPROD_HOST_$(OS_CLASS))),)
TESTPROD_HOST+=$(subst -nil-,,$(TESTPROD_HOST_$(OS_CLASS)))
else
ifneq (,$(strip $(TESTPROD_HOST_DEFAULT)))
TESTPROD_HOST+=$(TESTPROD_HOST_DEFAULT)
endif
endif
@@ -244,6 +304,22 @@ SCRIPTS += $(SCRIPTS_DEFAULT)
endif
endif
ifneq ($(strip $(SCRIPTS_IOC_$(OS_CLASS))),)
SCRIPTS_IOC+=$(subst -nil-,,$(SCRIPTS_IOC_$(OS_CLASS)))
else
ifneq (,$(strip $(SCRIPTS_IOC_DEFAULT)))
SCRIPTS_IOC+=$(SCRIPTS_IOC_DEFAULT)
endif
endif
ifneq ($(strip $(SCRIPTS_HOST_$(OS_CLASS))),)
SCRIPTS_HOST+=$(subst -nil-,,$(SCRIPTS_HOST_$(OS_CLASS)))
else
ifneq (,$(strip $(SCRIPTS_HOST_DEFAULT)))
SCRIPTS_HOST+=$(SCRIPTS_HOST_DEFAULT)
endif
endif
#
# concat specific resource files
#
@@ -255,14 +331,3 @@ RCS += $(RCS_DEFAULT)
endif
endif
#
# concat specific sequencer flags
#
ifneq ($(strip $(SNCFLAGS_$(OS_CLASS))),)
SNCFLAGS += $(subst -nil-,,$(SNCFLAGS_$(OS_CLASS)))
else
ifdef SNCFLAGS_DEFAULT
SNCFLAGS += $(SNCFLAGS_DEFAULT)
endif
endif

View File

@@ -6,42 +6,32 @@ endif
# Epics base directories
EPICS_BASE_HOST_BIN = $(EPICS_BASE)/bin/$(EPICS_HOST_ARCH)
EPICS_BASE_HOST_LIB = $(EPICS_BASE)/lib/$(EPICS_HOST_ARCH)
EPICS_EXTENSIONS_HOST_BIN = $(EPICS_EXTENSIONS)/bin/$(EPICS_HOST_ARCH)
EPICS_EXTENSIONS_HOST_LIB = $(EPICS_EXTENSIONS)/lib/$(EPICS_HOST_ARCH)
EPICS_BASE_INCLUDE = $(EPICS_BASE)/include
ifdef T_A
EPICS_BASE_LIB = $(EPICS_BASE)/lib/$(T_A)
EPICS_BASE_BIN = $(EPICS_BASE)/bin/$(T_A)
endif
#Definitions for extensions convenience
As_DIR = $(EPICS_BASE_LIB)
ca_DIR = $(EPICS_BASE_LIB)
cas_DIR = $(EPICS_BASE_LIB)
Com_DIR = $(EPICS_BASE_LIB)
rsrvIoc_DIR = $(EPICS_BASE_LIB)
registryIoc_DIR = $(EPICS_BASE_LIB)
asHost_DIR = $(EPICS_BASE_LIB)
asIoc_DIR = $(EPICS_BASE_LIB)
ca_DIR = $(EPICS_BASE_LIB)
cas_DIR = $(EPICS_BASE_LIB)
dbIoc_DIR = $(EPICS_BASE_LIB)
dbStaticHost_DIR = $(EPICS_BASE_LIB)
dbStaticIoc_DIR = $(EPICS_BASE_LIB)
dbtoolsIoc_DIR = $(EPICS_BASE_LIB)
gdd_DIR = $(EPICS_BASE_LIB)
#---------------------------------------------------------------
# For applications and extensions
# add epics/base include directories
ifneq ($(EPICS_BASE),$(TOP))
ifneq ($(EPICS_BASE),$(INSTALL_LOCATION))
INSTALL_INCLUDES += \
-I$(EPICS_BASE_INCLUDE)/os/$(OS_CLASS) \
-I$(EPICS_BASE_INCLUDE)
endif
endif
iocsh_DIR = $(EPICS_BASE_LIB)
miscIoc_DIR = $(EPICS_BASE_LIB)
registryIoc_DIR = $(EPICS_BASE_LIB)
rsrvIoc_DIR = $(EPICS_BASE_LIB)
recIoc_DIR = $(EPICS_BASE_LIB)
softDevIoc_DIR = $(EPICS_BASE_LIB)
testDevIoc_DIR = $(EPICS_BASE_LIB)
recIocObj_DIR = $(EPICS_BASE_LIB)
softDevIocObj_DIR = $(EPICS_BASE_LIB)
testDevIocObj_DIR = $(EPICS_BASE_LIB)
iocCore_DIR = $(EPICS_BASE_LIB)
#---------------------------------------------------------------
# Version number for base shared libraries (and win32 products)
@@ -54,11 +44,7 @@ endif # EPICS_BASE
#---------------------------------------------------------------
# Epics base c preprocessor flags
# c++ exceptions
CXX_EXCEPTIONS = YES
CXX_EXCEPTIONS_FLAGS_YES =
CXX_EXCEPTIONS_FLAGS_NO = -DnoExceptionsFromCXX
EPICS_BASE_CPPFLAGS = $(CXX_EXCEPTIONS_FLAGS_$(CXX_EXCEPTIONS))
EPICS_BASE_CPPFLAGS =
# osithread default stack
OSITHREAD_USE_DEFAULT_STACK = YES
@@ -69,30 +55,48 @@ EPICS_BASE_CPPFLAGS += $(OSITHREAD_DEFAULT_STACK_FLAGS_$(OSITHREAD_USE_DEFAULT_S
#---------------------------------------------------------------
# Epics base build tools and tool flags
MAKEBPT = $(EPICS_BASE_HOST_BIN)/makeBpt$(HOSTEXE)
DBEXPAND = $(EPICS_BASE_HOST_BIN)/dbExpand$(HOSTEXE)
MKMF = $(PERL) $(TOOLS)/mkmf.pl
REPLACEVAR = $(PERL) $(TOOLS)/replaceVAR.pl
DBTORECORDTYPEH = $(EPICS_BASE_HOST_BIN)/dbToRecordtypeH$(HOSTEXE)
DBTOMENUH = $(EPICS_BASE_HOST_BIN)/dbToMenuH$(HOSTEXE)
REGISTERRECORDDEVICEDRIVER = $(PERL) $(EPICS_BASE_HOST_BIN)/registerRecordDeviceDriver.pl
# private versions of lex/yacc from EPICS
EYACC = $(EPICS_BASE_HOST_BIN)/antelope$(HOSTEXE)
ELEX = $(EPICS_BASE_HOST_BIN)/e_flex$(HOSTEXE) -S$(EPICS_BASE_INCLUDE)/flex.skel.static
ELEX = $(EPICS_BASE_HOST_BIN)/e_flex$(HOSTEXE) -S$(EPICS_BASE)/include/flex.skel.static
YACC = $(EYACC)
LEX = $(ELEX)
# state notation language compiler (installed from base/src/sequencer)
SNC = $(SEQ)/bin/$(EPICS_HOST_ARCH)/snc$(HOSTEXE)
#---------------------------------------------------------------
# External tools and tool flags - must be in path or defined in application
# adl2dl
ADL2DL = $(EPICS_EXTENSIONS_HOST_BIN)/adl2dl
ifndef ADL2DL
ADL2DL = adl2dl
endif
# sch2edif compiler and flags
SCH2EDIF = sch2edif
SCH2EDIF_PATH =
SCH2EDIF_SYSFLAGS = -n -ap -p.+..+$(SCH2EDIF_PATH)+$(EPICS_EXTENSIONS)/templates/capfast/sym+
SCH2EDIF_SYSFLAGS = -n -ap -p.+..+$(SCH2EDIF_PATH)+$(CAPFAST_TEMPLATES)/sym+
SCH2EDIF_FLAGS =
# e2db and flags
# - again there is an assumption where edb.def is installed.
E2DB = $(EPICS_EXTENSIONS_HOST_BIN)/e2db
E2DB_SYSFLAGS = -ate -d $(EPICS_EXTENSIONS)/templates/capfast/edb.def
ifndef E2DB
E2DB = e2db
endif
E2DB_SYSFLAGS = -ate -d $(CAPFAST_TEMPLATES)/edb.def
E2DB_FLAGS =
#dbst
DBST = $(EPICS_EXTENSIONS_HOST_BIN)/dbst
ifndef DBST
DBST = dbst
endif
ifndef MSI
MSI = msi
endif

View File

@@ -10,7 +10,7 @@
EPICS_VERSION=3
EPICS_REVISION=14
EPICS_MODIFICATION=0
EPICS_UPDATE_NAME=alpha
EPICS_UPDATE_NAME=beta
EPICS_UPDATE_LEVEL=1
EPICS_VERSION_STRING="EPICS Version ${EPICS_VERSION}.${EPICS_REVISION}.${EPICS_MODIFICATION}.${EPICS_UPDATE_NAME}${EPICS_UPDATE_LEVEL}"

View File

@@ -5,7 +5,7 @@
#
# This file is to be maintained by the community.
#
# Common Configuration Information
# Common Configuration Information
#-------------------------------------------------------
# Build architectures
@@ -14,17 +14,28 @@
CROSS1 = $(CROSS_COMPILER_TARGET_ARCHS$(word 1,$(CROSS_COMPILER_HOST_ARCHS)))
# CROSS2 will be defined only when CROSS_COMPILER_HOST_ARCHS is defined
# and EPICS_HOST_ARCH is one of it's words
# and EPICS_HOST_ARCH is one of it's words
CROSS2 = $(CROSS_COMPILER_TARGET_ARCHS$(filter-out 1,$(words $(filter $(EPICS_HOST_ARCH),$(CROSS_COMPILER_HOST_ARCHS)))))
BUILD_ARCHS = $(EPICS_HOST_ARCH) $(CROSS1) $(CROSS2)
#-------------------------------------------------------
# Build class default, HOST or CROSS, CONFIG will override
# Ext, app, and module configure dir targets
CONFIG_TARGETS += CONFIG_APP_INCLUDE RULES_INCLUDE
CONFIG_INSTALLS += ../RULES_BUILD
#-------------------------------------------------------
# Check configure/RELEASE file for consistency
CHECK_RELEASE_YES = checkRelease
CHECK_RELEASE_NO =
#-------------------------------------------------------
# Cross compile default, HOST or CROSS, CONFIG.crossCommon will override
BUILD_CLASS = HOST
#-------------------------------------------------------
# Divider and suffix
# Prefix and suffix
DEP=.depends
DIVIDER = .
OBJ = .
RES = .
@@ -61,6 +72,9 @@ INSTALL_DB = $(INSTALL_LOCATION)/db
INSTALL_CONFIG = $(INSTALL_LOCATION)/configure
INSTALL_JAVA = $(INSTALL_LOCATION)/javalib
#Directory for OS independant build created files
COMMON_DIR = ../O.Common
ifdef T_A
INSTALL_LIB = $(INSTALL_LOCATION_LIB)/$(T_A)
@@ -68,88 +82,41 @@ INSTALL_SHRLIB = $(INSTALL_LOCATION_LIB)/$(T_A)
INSTALL_TCLLIB = $(INSTALL_LOCATION_LIB)/$(T_A)
INSTALL_BIN = $(INSTALL_LOCATION_BIN)/$(T_A)
#--------------------------------------------------
# vpath directories
GENERIC_SRC_DIRS = .. $(SRC_DIRS)
OS_SRC_DIRS += . $(foreach dir, $(SRC_DIRS) .., \
OS_SRC_DIRS += . $(foreach dir, .. $(SRC_DIRS), \
$(dir)/os/$(OS_CLASS) $(dir)/os/posix $(dir)/os/default )
ALL_SRC_DIRS = $(OS_SRC_DIRS) $(GENERIC_SRC_DIRS)
#--------------------------------------------------
# compile line include directories
INSTALL_INCLUDES += \
-I$(INSTALL_INCLUDE)/os/$(OS_CLASS) \
-I$(INSTALL_INCLUDE)
-I$(INSTALL_INCLUDE)
GENERIC_SRC_INCLUDES = $(addprefix -I, $(GENERIC_SRC_DIRS))
#--------------------------------------------------
# GNU compiler defaults
GNU_BIN = $(GNU_DIR)/bin
GNU_LIB = $(GNU_DIR)/lib
export GCC_EXEC_PREFIX = $(GNU_LIB)/gcc-lib/
GCC_AR = $(GNU_BIN)/$(CMPLR_PREFIX)ar$(CMPLR_SUFFIX) -rc
GCC_CPP = $(GCC) -x c -E
GCC_RANLIB = $(GNU_BIN)/$(CMPLR_PREFIX)ranlib$(CMPLR_SUFFIX)
GCC = $(GNU_BIN)/$(CMPLR_PREFIX)cc$(CMPLR_SUFFIX)
GCC_CONFORM_CFLAGS_ANSI = -ansi
GCC_CONFORM_CFLAGS_STRICT = -ansi -pedantic
GCC_CONFORM_CFLAGS_TRAD = -traditional
GCC_WARN_YES = -Wall
GCC_WARN_NO = -w
GCC_OPT_YES = -g -O3
GCC_OPT_NO = -g
GCC_STATIC_CFLAGS_YES = -static
GCC_STATIC_CFLAGS_NO =
GCC_BUILD_CFLAGS_CROSS = -B$(GNU_LIB)/gcc-lib/ -nostdinc
GCC_BUILD_CPPFLAGS_CROSS = -nostdinc
GCC_SHRLIB_LDFLAGS_YES = -shared
GCC_CODE_CPPFLAGS = -D_REENTRANT
GCC_POSIX_CPPFLAGS = -D_POSIX_C_SOURCE=199506L -D_POSIX_THREADS
G++ = $(GNU_BIN)/$(CMPLR_PREFIX)cc$(CMPLR_SUFFIX)
G++_CONFORM_CFLAGS_NORMAL = -ansi -pedantic
G++_CONFORM_CFLAGS_STRICT = -ansi -pedantic
#G++_WARN_YES = -Wall -Weffc++
G++_WARN_YES = -Wall
G++_WARN_NO = -w
G++_OPT_YES = -g -O3
G++_OPT_NO = -g
G++_STATIC_CFLAGS_YES = -static
G++_STATIC_CFLAGS_NO =
G++_SHRLIB_LDFLAGS_YES = -shared
G++_CODE_CPPFLAGS = -D_REENTRANT
G++_POSIX_CPPFLAGS = -D_POSIX_C_SOURCE=199506L -D_POSIX_THREADS
G++_TEMPL_INST_FLAG = -DEXPL_TEMPL
G++_DEPENDS_FLAG = -MM
#--------------------------------------------------
# Target filename definitions
OBJSNAME = $(addsuffix $(OBJ),$(OBJS))
PRODNAME = $(addsuffix $(EXE),$(PROD))
TESTPRODNAME = $(addsuffix $(EXE),$(TESTPROD))
OBJSNAME = $(addsuffix $(OBJ),$(basename $(OBJS)))
PRODNAME = $(addsuffix $(EXE),$(basename $(PROD)))
TESTPRODNAME = $(addsuffix $(EXE),$(basename $(TESTPROD)))
#---------------------------------------------------------------
# Directory targets
DIRECTORY_TARGETS += $(INSTALL_DBD) $(INSTALL_INCLUDE)
SHRLIBNAME = $(SHRLIBNAME_$(SHARED_LIBRARIES))
#--------------------------------------------------
# obj files
TARGET_OBJS = $(addsuffix $(OBJ),$(basename $($*_OBJS)))
PROD_OBJS = $(addsuffix $(OBJ),$(basename $(SRCS) $(PROD_SRCS)))
PROD_LD_OBJS = $(TARGET_OBJS) $(PROD_OBJS)
PRODUCT_OBJS = $(addsuffix $(OBJ),$(basename $(SRCS) $(PROD_SRCS) $(PROD_OBJS)))
PROD_LD_OBJS = $(TARGET_OBJS) $(PRODUCT_OBJS)
LIBRARY_OBJS = $(addsuffix $(OBJ),$(basename $(SRCS) $(LIBSRCS)))
LIBRARY_OBJS = $(addsuffix $(OBJ),$(basename $(SRCS) $(LIB_SRCS) $(LIBSRCS) $(LIB_OBJS)))
LIBRARY_LD_OBJS = $(TARGET_OBJS) $(LIBRARY_OBJS)
#--------------------------------------------------
# resource(WIN32) files
# WIN95/NT resource files
TARGET_RESS = $(addsuffix $(RES),$(basename $($*_RCS)))
@@ -162,28 +129,11 @@ LIBRARY_LD_RESS = $(TARGET_RESS) $(LIBRARY_RESS)
#--------------------------------------------------
# WIN95/NT source browser
PROD_BAF = $(addsuffix $(BAF), $(basename $(PROD)))
LIB_BAF_IOC=$(addsuffix $(BAF),$(basename $(LIBRARY_IOC)))
LIB_BAF_HOST=$(addsuffix $(BAF),$(basename $(LIBRARY_HOST)))
#--------------------------------------------------
# dbExpand flags
INSTALL_DBDFLAGS = -I $(INSTALL_LOCATION)/dbd
LIB_BAF=$(addsuffix $(BAF),$(basename $(LIBRARY)))
#--------------------------------------------------
# C preprocessor, compiler, and linker flag defaults
# Build class (CROSS,HOST) flags
BUILD_CLASS_CFLAGS = $($(ANSI)_BUILD_CFLAGS_$(BUILD_CLASS))
BUILD_CLASS_CPPFLAGS = $($(ANSI)_BUILD_CPPFLAGS_$(BUILD_CLASS))
# C++ template flag
TEMPL_INST_CXXFLAG = $($(CPLUSPLUS)_TEMPL_INST_FLAG)
# Code (position independant and reentrant) flags
CODE_CFLAGS = $($(ANSI)_CODE_CFLAGS)
CODE_CXXFLAGS = $($(CPLUSPLUS)_CODE_CFLAGS)
# Target architecture specific (solaris,sun4,mv167,...) flags
ARCH_DEP_CPPFLAGS =
ARCH_DEP_CFLAGS =
@@ -194,6 +144,7 @@ ARCH_DEP_LDLIBS =
# Target operating system specific (Unix,Vx,WIN32...) flags
OP_SYS_CPPFLAGS =
OP_SYS_CFLAGS =
OP_SYS_CXXFLAGS = $(OP_SYS_CFLAGS)
OP_SYS_LDFLAGS =
OP_SYS_INCLUDES =
OP_SYS_LDLIBS =
@@ -207,110 +158,129 @@ USR_INCLUDES =
USR_CFLAGS =
USR_CXXFLAGS =
USR_LDFLAGS =
USR_LDLIBS =
USR_LIBS =
USR_CPPFLAGS =
USR_DBDFLAGS =
USR_ARFLAGS =
# Target specific options
TARGET_INCLUDES = $($(basename $@)_INCLUDES) $($(basename $@)_INCLUDES_$(OS_CLASS))
TARGET_CFLAGS = $($(basename $@)_CFLAGS) $($(basename $@)_CFLAGS_$(OS_CLASS))
TARGET_CXXFLAGS = $($(basename $@)_CXXFLAGS) $($(basename $@)_CXXFLAGS_$(OS_CLASS))
TARGET_LDFLAGS = $($(basename $@)_LDFLAGS) $($(basename $@)_LDFLAGS_$(OS_CLASS))
TARGET_LDLIBS = $($(basename $@)_LDLIBS) $($(basename $@)_LDLIBS_$(OS_CLASS))
TARGET_CPPFLAGS = $($(basename $@)_CPPFLAGS) $($(basename $@)_CPPFLAGS_$(OS_CLASS))
TARGET_SNCFLAGS = $($(basename $@)_SNCFLAGS) $($(basename $@)_SNCFLAGS_$(OS_CLASS))
TARGET_INCLUDES = $($(basename $@)_INCLUDES_$(OS_CLASS)) $($(basename $@)_INCLUDES)
TARGET_CFLAGS = $($(basename $@)_CFLAGS_$(OS_CLASS)) $($(basename $@)_CFLAGS)
TARGET_CXXFLAGS = $($(basename $@)_CXXFLAGS_$(OS_CLASS)) $($(basename $@)_CXXFLAGS)
TARGET_LDFLAGS = $($(basename $@)_LDFLAGS_$(OS_CLASS)) $($(basename $@)_LDFLAGS)
TARGET_CPPFLAGS = $($(basename $@)_CPPFLAGS_$(OS_CLASS)) $($(basename $@)_CPPFLAGS)
# POSIX specific flags
POSIX_CPPFLAGS = $($(ANSI)_POSIX_CPPFLAGS)
# CMPLR level of ansi conformance flags
CONFORM_CFLAGS = $($(ANSI)_CONFORM_CFLAGS_$(CMPLR))
CONFORM_CXXFLAGS = $($(CPLUSPLUS)_CONFORM_CFLAGS_$(CMPLR))
# Level of ansi conformance flags
CONFORM_CPPFLAGS = $(CONFORM_CPPFLAGS_$(firstword $($(basename $@)_CMPLR_$(T_A)) \
$($(basename $@)_CMPLR_$(OS_CLASS)) $($(basename $@)_CMPLR) $(CMPLR)))
CONFORM_CFLAGS = $(CONFORM_CFLAGS_$(firstword $($(basename $@)_CMPLR_$(T_A)) \
$($(basename $@)_CMPLR_$(OS_CLASS)) $($(basename $@)_CMPLR) $(CMPLR)))
CONFORM_CXXFLAGS = $(CONFORM_CXXFLAGS_$(firstword $($(basename $@)_CMPLR_$(T_A)) \
$($(basename $@)_CMPLR_$(OS_CLASS)) $($(basename $@)_CMPLR) $(CXXCMPLR)))
# Warnings flags
WARN_CFLAGS = $($(ANSI)_WARN_$($(BUILD_CLASS)_WARN))
WARN_CXXFLAGS = $($(CPLUSPLUS)_WARN_$($(BUILD_CLASS)_WARN))
WARN_CFLAGS = $(WARN_CFLAGS_$(firstword $($(basename $@)_WARN_$(T_A)) \
$($(basename $@)_WARN_$(OS_CLASS)) $($(basename $@)_WARN) $($(BUILD_CLASS)_WARN)))
WARN_CXXFLAGS = $(WARN_CXXFLAGS_$(firstword $($(basename $@)_WARN_$(T_A)) \
$($(basename $@)_WARN_$(OS_CLASS)) $($(basename $@)_WARN) $($(BUILD_CLASS)_WARN)))
# Optimization flags
OPT_CFLAGS = $($(ANSI)_OPT_$($(BUILD_CLASS)_OPT))
OPT_CXXFLAGS = $($(CPLUSPLUS)_OPT_$($(BUILD_CLASS)_OPT))
OPT_LDFLAGS =
OPT_CFLAGS = $(OPT_CFLAGS_$(firstword $($(basename $@)_OPT_$(T_A)) \
$($(basename $@)_OPT_$(OS_CLASS)) $($(basename $@)_OPT) $($(BUILD_CLASS)_OPT)))
OPT_CXXFLAGS = $(OPT_CXXFLAGS_$(firstword $($(basename $@)_OPT_$(T_A)) \
$($(basename $@)_OPT_$(OS_CLASS)) $($(basename $@)_OPT) $($(BUILD_CLASS)_OPT)))
# Posix flags
POSIX=YES
POSIX_CPPFLAGS=$(POSIX_CPPFLAGS_$(POSIX))
POSIX_LDLIBS=$(POSIX_LDLIBS_$(POSIX))
# Static build flags
STATIC_CFLAGS = $($(ANSI)_STATIC_CFLAGS_$(STATIC_BUILD))
STATIC_CXXCFLAGS = $($(CPLUSPLUS)_STATIC_CFLAGS_$(STATIC_BUILD))
STATIC_LDFLAGS = $($(ANSI)_STATIC_LDFLAGS_$(STATIC_BUILD))
STATIC_LDLIBS = $($(ANSI)_STATIC_LDLIBS_$(STATIC_BUILD))
# Depends flag
DEPENDS_FLAG = $($(CPLUSPLUS)_DEPENDS_FLAG)
STATIC_CFLAGS = $(STATIC_CFLAGS_$(STATIC_BUILD))
STATIC_CXXCFLAGS = $(STATIC_CXXFLAGS_$(STATIC_BUILD))
STATIC_LDFLAGS = $(STATIC_LDFLAGS_$(STATIC_BUILD))
STATIC_LDLIBS = $(STATIC_LDLIBS_$(STATIC_BUILD))
#--------------------------------------------------
# Flags
INCLUDES = -I. $(USR_INCLUDES) $(INSTALL_INCLUDES) \
$(TARGET_INCLUDES) $(GENERIC_SRC_INCLUDES) $(OP_SYS_INCLUDES)
INCLUDES = -I. $(GENERIC_SRC_INCLUDES) $(INSTALL_INCLUDES) $(RELEASE_INCLUDES)\
$(TARGET_INCLUDES) $(USR_INCLUDES) $(OP_SYS_INCLUDES) $(CROSS_INCLUDES)
CFLAGS = $(CONFORM_CFLAGS) $(OPT_CFLAGS) $(DEBUG_CFLAGS) $(WARN_CFLAGS)\
$(TARGET_CFLAGS) $(USR_CFLAGS) $(ARCH_DEP_CFLAGS) $(CODE_CFLAGS)\
$(STATIC_CFLAGS) $(OP_SYS_CFLAGS)
CFLAGS = $(CONFORM_CFLAGS) $(CROSS_CFLAGS) $(OPT_CFLAGS) $(DEBUG_CFLAGS)\
$(WARN_CFLAGS) $(TARGET_CFLAGS) $(USR_CFLAGS) $(ARCH_DEP_CFLAGS)\
$(CODE_CFLAGS) $(STATIC_CFLAGS) $(OP_SYS_CFLAGS)
CXXFLAGS = $(CONFORM_CXXFLAGS) $(OPT_CXXFLAGS) $(DEBUG_CXXFLAGS) $(WARN_CXXFLAGS)\
$(TARGET_CXXFLAGS) $(USR_CXXFLAGS) $(ARCH_DEP_CXXFLAGS) $(CODE_CXXFLAGS)\
$(STATIC_CXXCFLAGS) $(OP_SYS_CFLAGS) $(TEMPL_INST_CXXFLAG)
CXXFLAGS = $(CONFORM_CXXFLAGS) $(CROSS_CXXFLAGS) $(OPT_CXXFLAGS)\
$(DEBUG_CXXFLAGS) $(WARN_CXXFLAGS) $(TARGET_CXXFLAGS) $(USR_CXXFLAGS)\
$(ARCH_DEP_CXXFLAGS) $(CODE_CXXFLAGS) $(STATIC_CXXCFLAGS) $(OP_SYS_CXXFLAGS)
LDFLAGS = $(OPT_LDFLAGS) $(TARGET_LDFLAGS) $(USR_LDFLAGS) $(DEPLIB_LDFLAGS)\
$(ARCH_DEP_LDFLAGS) $(STATIC_LDFLAGS) $(OP_SYS_LDFLAGS)
$(ARCH_DEP_LDFLAGS) $(STATIC_LDFLAGS) $(OP_SYS_LDFLAGS) $(CROSS_LDFLAGS)
LDLIBS = $(TARGET_LDLIBS) $(USR_LDLIBS) $(DEPLIB_LDLIBS) $(ARCH_DEP_LDLIBS)\
$(STATIC_LDLIBS) $(OP_SYS_LDLIBS)
LDLIBS = $(DEPLIB_LDLIBS) $(STATIC_LDLIBS)\
$(POSIX_LDLIBS) $(ARCH_DEP_LDLIBS) $(OP_SYS_LDLIBS)
CPPFLAGS += $(POSIX_CPPFLAGS) $(EPICS_BASE_CPPFLAGS)\
$(TARGET_CPPFLAGS) $(USR_CPPFLAGS) $(ARCH_DEP_CPPFLAGS) $(OP_SYS_CPPFLAGS)
CPPSNCFLAGS = $(CPPFLAGS) $(INCLUDES)
DBDFLAGS = $(USR_DBDFLAGS) -I . -I .. $(INSTALL_DBDFLAGS)
CPPFLAGS += $(CONFORM_CPPFLAGS) $(CROSS_CPPFLAGS) $(POSIX_CPPFLAGS)\
$(EPICS_BASE_CPPFLAGS) $(TARGET_CPPFLAGS) $(USR_CPPFLAGS) $(ARCH_DEP_CPPFLAGS)\
$(OP_SYS_CPPFLAGS) $(OP_SYS_INCLUDE_CPPFLAGS) $(CODE_CPPFLAGS)
#--------------------------------------------------
# ar definition default
AR = $($(ANSI)_AR)
ARFLAGS =
ARCMD = $(AR) $(ARFLAGS) $(USR_ARFLAGS) $@ $(LIBRARY_LD_OBJS)
#--------------------------------------------------
# C compiler
CC = $($(ANSI)) $(BUILD_CLASS_CFLAGS)
CPP = $($(ANSI)_CPP) $(BUILD_CLASS_CPPFLAGS)
RANLIB = $($(ANSI)_RANLIB)
#--------------------------------------------------
# C++ compiler
CXX = $($(CPLUSPLUS)) $(BUILD_CLASS_CFLAGS)
# ld default
LDCMD = $(LD) -o $@ $^
#--------------------------------------------------
# Build compile line here
COMPILE.c = $(CC) $(CFLAGS) $(CPPFLAGS) $(INCLUDES) -c $(SOURCE_FLAG)
COMPILE.cpp = $(CXX) $(CXXFLAGS) $(CPPFLAGS) $(INCLUDES) -c $(SOURCE_CXXFLAG)
COMPILE.c = $(CC) -c $(CPPFLAGS) $(CFLAGS) $(INCLUDES) $(SOURCE_FLAG)
COMPILE.cpp = $(CCC) -c $(CPPFLAGS) $(CXXFLAGS) $(INCLUDES) $(SOURCE_CXXFLAG)
#--------------------------------------------------
# depends definition
TARGET_SRCS = $(foreach name, $(TESTPROD) $(PROD) $(LIBRARY_HOST) $(LIBRARY_IOC), $($(name)_SRCS))
SRC_FILES = $(foreach src, $(LIBSRCS) $(SRCS) $(PROD_SRCS) $(TARGET_SRCS) , \
$(firstword $(wildcard $(addsuffix /$(src),$(ALL_SRC_DIRS))) $(src)))
DEPENDS_RULE = -$(COMPILE.cpp) $(DEPENDS_FLAG) $(SRC_FILES) > DEPENDS
# Build depends command here
HOST_HDEPENDS_CMD = MKMF
CROSS_HDEPENDS_CMD = MKMF
HDEPENDS_CMD = $($(BUILD_CLASS)_HDEPENDS_CMD)
HDEPENDS.c_CMPLR = $(CC)
HDEPENDS.cpp_CMPLR = $(CCC)
HDEPENDSFLAGS_CMPLR += $(CPPFLAGS) $(INCLUDES) $< > $*$(DEP)
HDEPENDS.c_MKMF = $(PERL) $(TOOLS)/mkmf.pl
HDEPENDS.cpp_MKMF = $(PERL) $(TOOLS)/mkmf.pl
HDEPENDSFLAGS_MKMF = -m $*$(DEP) $(HDEPENDS_INCLUDES_MKMF) $@ $<
HDEPENDS_INCLUDES_MKMF = $(filter .%,$(subst -I,,$(INCLUDES)))
HDEPENDS.c = $(HDEPENDS.c_$(HDEPENDS_CMD))
HDEPENDS.cpp = $(HDEPENDS.cpp_$(HDEPENDS_CMD))
HDEPENDSFLAGS = $(HDEPENDSFLAGS_$(HDEPENDS_CMD))
HDEPENDS_FLAGS = $(HDEPENDS_FLAGS_$(HDEPENDS_CMD))
HDEPENDS_CMD.c = -$(HDEPENDS.c) $(HDEPENDS_FLAGS) $(HDEPENDSFLAGS)
HDEPENDS_CMD.cpp = -$(HDEPENDS.cpp) $(HDEPENDS_FLAGS) $(HDEPENDSFLAGS)
HDEPENDS_TARGETS_CMD = $(PERL) $(TOOLS)/makeDependsTargets.pl $*$(DEP)
#--------------------------------------------------
# depends definition
TARGET_SRCS = $(foreach name, $(TESTPROD) $(PROD) $(LIBRARY), $($(name)_SRCS))
SRC_FILES = $(LIB_SRCS) $(LIBSRCS) $(SRCS) $(PROD_SRCS) $(TARGET_SRCS)
HDEPENDS_FILES = $(addsuffix $(DEP),$(notdir $(basename $(SRC_FILES))))
#---------------------------------------------------------------
# Names of installed items
# Names of installed items
#
# each list starts with the destination directory name(s)
# to make sure it's there
INSTALL_PROD= $(PRODNAME:%= $(INSTALL_BIN)/%)
INSTALL_LIBS= $(LIBNAME:%=$(INSTALL_LIB)/%)
INSTALL_MUNCHS= $(MUNCHNAME:%=$(INSTALL_LIB)/%)
INSTALL_MUNCHS= $(MUNCHNAME:%=$(INSTALL_BIN)/%)
INSTALL_SHRLIBS= $(SHRLIBNAME:%=$(INSTALL_SHRLIB)/%)
INSTALL_DLL_LINK_LIBS=$(DLL_LINK_LIBNAME:%=$(INSTALL_LIB)/%)
INSTALL_TCLLIBS=$(TCLLIBNAME:%=$(INSTALL_TCLLIB)/%)
@@ -318,8 +288,6 @@ INSTALL_TCLINDEX=$(TCLINDEX:%=$(INSTALL_TCLLIB)/%)
INSTALL_SCRIPTS = $(SCRIPTS:%= $(INSTALL_BIN)/%)
INSTALL_OBJS = $(OBJSNAME:%= $(INSTALL_BIN)/%)
INCREC +=$(RECTYPES) $(MENUS)
INSTALL_INCREC = $(INCREC:%= $(INSTALL_INCLUDE)/%)
INSTALL_DOCS = $(DOCS:%= $(INSTALL_DOC)/%)
INSTALL_HTMLS = $(HTMLS:%= $(INSTALL_HTML)/$(HTMLS_DIR)/%)
@@ -327,22 +295,15 @@ INSTALL_TEMPLATE = $(addprefix $(INSTALL_TEMPLATES_SUBDIR)/, \
$(subst $(CONFIG),top/configure,$(TEMPLATES)))
INSTALL_CONFIGS = $(CONFIGS:%= $(INSTALL_CONFIG)/%)
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)/%)
#---------------------------------------------------------------
#
# auto determine the directory paths that things are installed to
# RULES:
# 1) found in any one of several os specific area
# 1) found in any one of several os specific area
# => install to $(INSTALL_INCLUDE)/os/$(OS_CLASS)
# 2) not foundin (1) and found in generic area
# 2) not foundin (1) and found in generic area
# => install to $(INSTALL_INCLUDE)
# 3) not found in (1) or (2) then may be (not yet) computer generated
# 3) not found in (1) or (2) then may be (not yet) computer generated
# => install into $(INSTALL_INCLUDE)/os/$(OS_CLASS) and let
# build rules work on vpath
#
@@ -374,6 +335,12 @@ INSTALL_INC_aaa = $(wildcard $(addsuffix /$(inc), $(dir)) )
#
# Rule 3
#
GENERATED_INSTALL_INC = $(INSTALL_INCLUDE)/os/$(OS_CLASS)/$(inc)
GENERATED_INSTALL_INC = $(INSTALL_INCLUDE)/$(inc)
COMMON_INC += $(filter $(COMMON_DIR)/%, $(foreach file, $(INC), \
$(firstword $(SOURCE_INC) $(COMMON_DIR)/$(file) ) ) )
SOURCE_INC = $(wildcard $(file) $(SOURCE_INC_bbb) )
SOURCE_INC_bbb = $(foreach dir, $(ALL_SRC_DIRS), $(SOURCE_INC_aaa) )
SOURCE_INC_aaa = $(addsuffix /$(file), $(dir) )
endif

View File

@@ -24,22 +24,33 @@
# Augment beacon/search dest ip addr list
# from white space separated ip addresses in this
# environment variable. "Quote" if more than one addr.
#
# EPICS_CA_AUTO_ADDR_LIST
# YES = augment beacon/search dest ip
# addr list from network interfaces found; NO = only use
# EPICS_CA_ADDR_LIST to create this list.
#
# EPICS_CA_CONN_TMO
# after not seeing a server beacon for this number
# of seconds the clients will send an echo request over
# tcp/ip to verify the connection.
#
# EPICS_CA_REPEATER_PORT CA repeater port number.
#
# EPICS_CA_SERVER_PORT CA server port number.
#
# EPICS_CA_MAX_ARRAY_BYTES
# This parameter specifies the size (in bytes) of the largest array
# that will transport through CA. It must be specified for both the
# client and the server library.
#
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
EPICS_CA_MAX_ARRAY_BYTES=16384
#
# These parameters are only used by the CA server library
@@ -111,40 +122,39 @@ EPICS_CA_SERVER_PORT=5064
# --------------------------------------------------
#
# o Make sure that the broadcast addresses are identical on the
# server's host and on the client's host. This can be checked with
# "netstat -i" or "ifconfig -a".
# server's host and on the client's host. This can be checked
# on UNIX with "netstat -i" or "ifconfig -a"; on vxWorks with
# ifShow; and on windows with ipconfig.
#
# o Make sure that the client and server are using the same UDP
# port. Check the server's port by running "netstat -a | grep nnn"
# where nnn is the port number involved. If you do not set
# EPICS_CA_SERVER_PORT or EPICS_CAS_SERVER_PORT
# then the default port will be 5064.
# EPICS_CA_SERVER_PORT or EPICS_CAS_SERVER_PORT then the default port
# will be 5064.
#
# o Two servers can run on the same host with the same server port number
# if the following restrictions are understood (good luck). If the host has a
# modern IP kernel it is possible to have two servers on the same UDP port.
# It is not possible for two servers to run on the same host using the same
# TCP IP server port. If the CA server library detects that a 2nd server is attempting
# to start on the same port as an existing CA server then both servers will use the
# same UDP port if it is a modern IP kernel, and the 2nd server will
# be allocated a new TCP port. In this situation the clients will still be
# configured to use the same port number for both servers. The clients
# will find the 2nd server via the shared UDP port, and transparently
# connect to the 2nd server's allocated TCP port. Be aware that If there are
# two server's running on the same host on the same UDP port then they will
# both receive all UDP search requests sent as broadcasts, but will unfortunately (due to
# what I consider to be a real weakness of most IP kernel implementations) only one
# of the servers will typically receive UDP search requests sent to unicast addresses (i.e.
# a specific host's ip address).
# TCP IP server port. If the CA server library detects that a 2nd server is
# attempting to start on the same port as an existing CA server then both
# servers will use the same UDP port if it is a modern IP kernel, and the 2nd
# server will be allocated a new TCP port. In this situation the clients will
# still be configured to use the same port number for both servers. The clients
# will find the 2nd server via the shared UDP port, and transparently connect
# to the 2nd server's allocated TCP port. Be aware that If there are two server's
# running on the same host on the same UDP port then they will both receive all
# UDP search requests sent as broadcasts, but will unfortunately (due to a common
# weakness of most IP kernel implementations) only one of the servers will
# typically receive UDP search requests sent to unicast addresses (i.e. a specific
# host's ip address).
#
EPICS_CA_BEACON_PERIOD=15.0
EPICS_CAS_INTF_ADDR_LIST=""
EPICS_CAS_BEACON_ADDR_LIST=""
EPICS_CAS_SERVER_PORT=
# Log Server:
# EPICS_IOC_LOG_PORT Log server port number etc.
EPICS_IOC_LOG_PORT=7004

View File

@@ -11,16 +11,20 @@
# The host architecture performing the build,
# i.e.: the arch running DCT/getrel/etc.
# <operating system>-<architecture>[-<alternate compiler>]
#
# Currently Supporting:
# sun4
# hp700
# alpha
# solaris
# sgi
# Linux
# WIN32
# LynxOS
# hpux-parisc
# osf-alpha
# solaris-sparc (sun compiler used for host builds)
# solaris-sparc-gnu (GNU compiler used for host builds)
# solaris-x86 (sun compiler used for host builds)
# solaris-x86-gnu (GNU compiler used for host builds)
# sun4-x86 (sun compiler used for host builds)
# linux-x86 (GNU compiler used for host builds)
# win32-x86 (MS Visual C++ compiler used for host builds)
# win32-x86-borland (Borland C++ compiler used for host builds)
# lynxos-x86
#
# EPICS_HOST_ARCH is an environment variable
# EPICS_HOST_ARCH=$(shell /usr/local/epics/startup/EpicsHostArch)
@@ -34,11 +38,18 @@
# vxWorks-68040lc
# vxWorks-68060
# vxWorks-pentium
# vxWorks-ppc603
# vxWorks-ppc604
# RTEMS-gen68360
# RTEMS-mvme167
# RTEMS-pc386
#
CROSS_COMPILER_TARGET_ARCHS=vxWorks-68040
# Definitions of CROSS_COMPILER_TARGET_ARCHS in
# configure/os/CONFIG_SITE.<host>.Common files will
# override
#
#CROSS_COMPILER_TARGET_ARCHS=
CROSS_COMPILER_TARGET_ARCHS=vxWorks-68040 vxWorks-ppc604
# If only a subset of the host architectures perform
@@ -47,16 +58,6 @@ CROSS_COMPILER_TARGET_ARCHS=vxWorks-68040
#
CROSS_COMPILER_HOST_ARCHS=
# Client ANSI C Compiler (for Host builds)
# GCC GNU (gcc -ansi)
# ACC OS VENDOR (sun4/solaris: acc ; hp700: cc -Aa)
ANSI=ACC
# C++ Compiler (for Host builds)
# G++ GNU C++ (g++)
# CCC OS VENDOR C++ (sun4/solaris: CC ; hp700: aCC)
CPLUSPLUS=CCC
# Default ANSI level, individual Makefiles will override
# if they cannot support ANSI compilation.
# STRICT - ANSI C - force warning flags
@@ -73,13 +74,14 @@ CXXCMPLR=STRICT
# Build shared libraries?
# (archive libraries will also be built)
# must be either YES or NO
# NOTE: CONFIG_SITE.Host.$(HOST_ARCH) files may override
# NOTE: os/CONFIG.$(EPICS_HOST_ARCH).$(EPICS_HOST_ARCH) files and
# os/CONFIG_SITE.$(EPICS_HOST_ARCH).$(EPICS_HOST_ARCH) files may override
#
# NOTE WIN32: YES results in a DLL. CONFIG_SITE.Host.WIN32
# distribution file contains YES override
#
# NOTE solaris and sun4: If YES then LD_LIBRARY_PATH must
# include fullpathname $(INSTALL_LOCATION)/lib/$(EPICS_HOST_ARCH)
# NOTE solaris,Linux, and sun4: If YES then LD_LIBRARY_PATH must
# include fullpathname to $(INSTALL_LOCATION)/lib/$(EPICS_HOST_ARCH)
# for both the base build and when invoking base executables
SHARED_LIBRARIES=NO
@@ -87,6 +89,11 @@ SHARED_LIBRARIES=NO
# must be either YES or NO
STATIC_BUILD=NO
# Should header dependancy files be automatically generated
# for each C/C++ created object file?
# must be either YES or NO
HDEPENDS=YES
# Host build optimization
# must be either YES or NO
HOST_OPT=YES
@@ -102,3 +109,6 @@ HOST_WARN=YES
# Generate Verbose Compiler Warnings for cross compile builds
# must be either YES or NO
CROSS_WARN=YES
# Installation directory
INSTALL_LOCATION=$(TOP)

View File

@@ -19,10 +19,12 @@
# Site-specific environment settings
# Time service:
# EPICS_TS_MIN_WEST the local time difference from GMT.
# EPICS_TIMEZONE needed for vxWorks
# EPICS_TIMEZONE=<name>::<minutesWest>:<start daylight>:<end daylight>
# eg EPICS_TIMEZONE=CUS::360:033102:102802
# EPICS_TS_NTP_INET ntp or Unix time server ip addr.
EPICS_TS_MIN_WEST=360
EPICS_TIMEZONE=CUS::360:033102:102802
EPICS_TS_NTP_INET=

View File

@@ -3,5 +3,4 @@
# NOTE: RELEASE.$(EPICS_HOST_ARCH) files will override
# Tornado directory
#VX_DIR = /usr/local/vw/tornado101
VX_DIR = /usr/local/vw/tornado20
VX_DIR = /usr/local/vw/tornado202

View File

@@ -1,177 +1,218 @@
#RULES.Db
##################################################### vpath
vpath %.dbd $(USR_VPATH) $(GENERIC_SRC_DIRS) $(dir $(DBD)) $(COMMON_DIR)
vpath %.db $(USR_VPATH) $(GENERIC_SRC_DIRS) $(dir $(DB)) $(COMMON_DIR)
vpath %.substitutions $(USR_VPATH) $(GENERIC_SRC_DIRS) $(COMMON_DIR)
vpath %.template $(USR_VPATH) $(GENERIC_SRC_DIRS) $(COMMON_DIR)
vpath %.edf $(USR_VPATH) $(GENERIC_SRC_DIRS) $(COMMON_DIR)
vpath bpt%.data $(USR_VPATH) $(GENERIC_SRC_DIRS) $(COMMON_DIR)
##################################################### dbdflags
# dbExpand
INSTALL_DBDFLAGS += -I $(INSTALL_LOCATION)/dbd
DBDFLAGS = $(USR_DBDFLAGS) -I . -I .. $(INSTALL_DBDFLAGS) $(RELEASE_DBDFLAGS)
##################################################### Targets
# Following line added for backward compatibilty
DBD += $(DBDNAME)
DBD += $(addsuffix .dbd,$(patsubst %.h,%,$(patsubst %.db,%,$(DBDINC))))
INC += $(addsuffix .h,$(patsubst %.h,%,$(patsubst %.db,%,$(DBDINC))))
INSTALL_DBDS += $(addprefix $(INSTALL_DBD)/,$(notdir $(DBD)))
COMMON_DBDS += $(filter $(COMMON_DIR)/%, $(foreach file, $(DBD), \
$(firstword $(SOURCE_DBD) $(COMMON_DIR)/$(file) ) ) )
SOURCE_DBD = $(wildcard $(file) $(SOURCE_DBD_bbb) )
SOURCE_DBD_bbb = $(foreach dir, $(GENERIC_SRC_DIRS), $(SOURCE_DBD_aaa) )
SOURCE_DBD_aaa = $(addsuffix /$(file), $(dir) )
INSTALL_DBS += $(addprefix $(INSTALL_DB)/,$(notdir $(DB)))
COMMON_DBS += $(filter $(COMMON_DIR)/%, $(foreach file, $(DB), \
$(firstword $(SOURCE_DB) $(COMMON_DIR)/$(file) ) ) )
SOURCE_DB = $(wildcard $(file) $(SOURCE_DB_bbb) )
SOURCE_DB_bbb = $(foreach dir, $(GENERIC_SRC_DIRS), $(SOURCE_DB_aaa) )
SOURCE_DB_aaa = $(addsuffix /$(file), $(dir) )
COMMONS = $(COMMON_DIR)/*.dbd $(COMMON_DIR)/*.db $(COMMON_DIR)/*.h \
$(COMMON_DIR)/*.substitutions $(COMMON_DIR)/*.template
##################################################### dependancies
HINC += $(addsuffix .h,$(patsubst %.h,%,$(patsubst %.db,%,$(DBDINC))))
COMMON_DBDINC += $(addprefix $(COMMON_DIR),$(HINC))
DBDDEPENDS_FILES += $(addsuffix $(DEP),$(COMMON_DBDS) \
$(COMMON_DBDINC) $(COMMON_DBS))
DBDDEPENDS_FLAGS = $(filter .%,$(subst -I,,$(filter-out -S%,$(DBDFLAGS))))
DBDDEPENDS_CMD=@-$(MKMF) -m $@$(DEP) $(DBDDEPENDS_FLAGS) $@ $<
#####################################################
ifndef T_A
include $(CONFIG)/RULES_ARCHS
COMMON_DIR = .
INSTALL_DBDS =
INSTALL_DBS =
COMMON_DBDS = $(DBD)
COMMON_DBS = $(DB)
COMMONS = $(DBD) $(DB)
else #T_A
-include $(TOP)/configure/O.$(EPICS_HOST_ARCH)/CONFIG_APP_INCLUDE
MAKEBPT = $(EPICS_BASE_HOST_BIN)/makeBpt$(HOSTEXE)
DBEXPAND = $(EPICS_BASE_HOST_BIN)/dbExpand$(HOSTEXE)
DBST = dbst
MAKEDBDEPENDS = $(PERL) $(TOOLS)/makeDbDepends.pl
REPLACEVAR = $(PERL) $(TOOLS)/replaceVAR.pl
all: install
INSTALL_BPTS = $(BPTS:%= $(INSTALL_DBD)/%)
INSTALL_DBS = $(DBDINSTALL:%= $(INSTALL_DBD)/%)
INSTALL_DBDNAME = $(DBDNAME:%= $(INSTALL_DBD)/%)
INSTALL_DATA=$(INSTALLDB:%=$(INSTALL_DB)/%)
buildInstall : build
all: install
inc: $(INSTALL_DBS)
install: buildInstall
rebuild: clean install
install: inc buildInstall
.PHONY: all inc build install clean rebuild buildInstall
buildInstall: build $(INSTALL_BPTS) $(INSTALL_DATA)
endif # T_A defined
clean::
@echo "Cleaning"
@$(RM) $(DB) *.template *.substitutions *.db.raw \
*.db-stamp *.edf esiread.cnf
ifneq (,$(strip $(DBDDEPENDS_FILES)))
-include $(DBDDEPENDS_FILES)
endif
depends:
$(DBDDEPENDS_FILES):
##################################################### build dependancies, clean rule
inc : $(COMMON_INC) $(INSTALL_INC)
build : $(COMMON_DBDS) $(COMMON_DBS) \
$(INSTALL_DBDS) $(INSTALL_DBS) \
$(DBDDEPENDS_FILES)
clean::
@$(RM) $(COMMONS) $(DBDDEPENDS_FILES)
@$(RM) *_registerRecordDeviceDriver.cpp
##################################################### "Foreign" templates
TEMPLATE_LINKS = $(filter-out $(notdir $(USES_TEMPLATE)), $(USES_TEMPLATE))
TEMPLATE_FILES = $(filter $(notdir $(USES_TEMPLATE)), $(USES_TEMPLATE))
DB_STAMP = $(patsubst %.db, %.db-stamp, $(DB))
DB_REALTARGET = $(patsubst %.db-stamp, %.db, $@)
COMMON_TEMPLATES=$(addsuffix $(COMMON_DIR)/,$(notdir $(TEMPLATE_LINKS)))
ifneq '$(TEMPLATE_LINKS)' ''
build: $(notdir $(TEMPLATE_LINKS))
endif
build: $(INSTALL_DBDNAME) $(TEMPLATE_FILES) $(DB_STAMP)
build: $(TEMPLATE_FILES)
$(notdir $(TEMPLATE_LINKS)): %.template:
$(COMMON_TEMPLATES): $(COMMON_DIR)/%.template:
ifndef WIN32
@$(RM) $(notdir $(TEMPLATE_LINKS))
ln -s $(TEMPLATE_LINKS) .
ln -s $(TEMPLATE_LINKS)
else
@$(RM) $(notdir $(TEMPLATE_LINKS))
$(CP) $(TEMPLATE_LINKS) .
$(CP) $(TEMPLATE_LINKS)
endif
##################################################### Inflated or plain databases
$(INSTALL_DB)/%.db: %.db-stamp
@echo "Installing database $@"
@$(INSTALL) -d -m 644 $(patsubst %.db-stamp, %.db, $<) $(@D)
# Must have DBDNAME defined to use dbst optimization
ifndef DBDNAME
DB_OPT = NO
endif
# dbst based database optimization
ifeq '$(DB_OPT)' 'YES'
.PRECIOUS: %.db.raw
%.db-stamp: %.db.raw $(INSTALL_DBDNAME)
@echo "Optimizing database $@"
$(DBST) $(INSTALL_DBDNAME) $< -d > $(DB_REALTARGET)
@$(TOUCH) $@
%.db-stamp: %.t.db.raw $(INSTALL_DBDNAME)
@echo "Optimizing database $@"
$(DBST) $(INSTALL_DBDNAME) $< -d > $(DB_REALTARGET)
@$(TOUCH) $@
else
# NO optimization => move it and keep a stamp
%.db-stamp: %.db.raw
@$(MV) $< $(DB_REALTARGET)
@$(TOUCH) $@
@$(TOUCH) $<
%.db-stamp: %.t.db.raw
@$(MV) $< $(DB_REALTARGET)
@$(TOUCH) $@
@$(TOUCH) $<
endif
%.t.db.raw: %.substitutions
@echo "Inflating database from $<"
@$(RM) $@
$(MSI) -S $< $*.template > $@
##################################################### CapFast filter
%.edf: ../%.sch $(DEPSCHS)
$(COMMON_DIR)/%.edf: ../%.sch $(DEPSCHS)
@if [ ! -f cad.rc -a -r ../cad.rc ] ; then ln -s ../cad.rc ; fi
$(SCH2EDIF) $(SCH2EDIF_SYSFLAGS) $(SCH2EDIF_FLAGS) $<
##################################################### Substitution files
$(INSTALL_DB)/%.substitutions: %.substitutions
@echo "Installing $@"
@$(INSTALL) -d -m 644 $(@F) $(@D)
%.substitutions: ../%.substitutions %.template
@$(CP) $< $@
# WARNING: CREATESUBSTITUTIONS script needs output dir on command line
ifdef CREATESUBSTITUTIONS
%.substitutions:
@$(CREATESUBSTITUTIONS) $*
$(COMMON_DIR)/%.substitutions:
@$(CREATESUBSTITUTIONS) $(COMMON_DIR)/$*
endif
# Better make it PRECIOUS (to get around make bug)
.PRECIOUS: %.substitutions %.template
.PRECIOUS: $(DB:%.db=$(COMMON_DIR)/%.substitutions)
##################################################### Template databases
##################################################### Template files
# Installed template files (dbLoadTemplate() on IOC side)
$(INSTALL_DB)/%.template: %.template
@echo "Installing $@"
@$(INSTALL) -d -m 644 $(@F) $(@D)
%.template: ../%.template
@$(CP) $< $@
%.template:
@$(TOUCH) $@
%.template: %.edf
$(COMMON_DIR)/%.template: %.edf
$(E2DB) $(E2DB_SYSFLAGS) $(E2DB_FLAGS) -n $@.VAR $<
@$(REPLACEVAR) < $@.VAR > $@
@$(RM) $@.VAR
##################################################### Flat databases
.PRECIOUS: $(DB:%.db=$(COMMON_DIR)/%.template)
%.db.raw: ../%.db
$(CP) $< $@
##################################################### INC files
%.db.raw: %.edf
$(E2DB) $(E2DB_SYSFLAGS) $(E2DB_FLAGS) -n $@.VAR $<
@$(REPLACEVAR) < $@.VAR > $@
@$(RM) $@.VAR
$(COMMON_DIR)/%Record.h: %Record.dbd
@$(RM) $@
$(DBTORECORDTYPEH) $(DBDFLAGS) $< $@
##################################################### DBD stuff
$(COMMON_DIR)/menu%.h: menu%.dbd
@$(RM) $@
$(DBTOMENUH) $< $@
$(INSTALL_DBD)/%: %
@echo "Installing $@"
@$(INSTALL) -d -m 644 $< $(@D)
##################################################### DBD files
$(INSTALL_DBD)/%: ../%
@echo "Installing $@"
@$(INSTALL) -d -m 644 $< $(@D)
$(INSTALL_DBD)/bpt%.dbd: ../bpt%.data
$(RM) $@
$(COMMON_DIR)/bpt%.dbd: bpt%.data
@$(RM) $@
$(MAKEBPT) $< $@
ifdef DBDEXPAND
$(INSTALL_DBD)/$(DBDNAME): $(addprefix ../,$(DBDEXPAND))
$(COMMON_DIR)/%.dbd: %Include.dbd
@$(RM) $@$(DEP)
@$(DBDDEPENDS_CMD)
@echo "Expanding dbd"
@$(RM) $@
$(DBEXPAND) $(USR_DBDFLAGS) $^ > $@
$(DBEXPAND) $(DBDFLAGS) $< > $@
$(INSTALL_DBD)/%: %
@echo "Installing dbd file $@"
@$(INSTALL) -d -m 644 $< $(@D)
.PRECIOUS: $(COMMON_DBDS)
##################################################### DB files
$(COMMON_DIR)/%.db$(RAW): %.edf
$(E2DB) $(E2DB_SYSFLAGS) $(E2DB_FLAGS) -n $@.VAR $<
@$(REPLACEVAR) < $@.VAR > $@
@$(RM) $@.VAR
$(COMMON_DIR)/%.db$(RAW): %.substitutions %.template
@$(RM) $@$(DEP)
@$(DBDDEPENDS_CMD)
@echo "Inflating database from $<"
@$(RM) $@
$(MSI) -S $^ > $@
# dbst based database optimization
ifeq '$(DB_OPT)' 'YES'
$(COMMON_DIR)/%.db$(RAW): %.db
$(CP) $< $@
$(COMMON_DIR)/%.db: $(COMMON_DIR)/%.db$(RAW)
@echo "Optimizing database $@"
$(DBST) . $< -d > $@
RAW=.raw
.PRECIOUS: $(DB:%=$(COMMON_DIR)/%$(RAW))
endif
##################################################### Dependencies
$(INSTALL_DB)/%: %
@echo "Installing db file $@"
@$(INSTALL) -d -m 644 $< $(@D)
DEPENDS: $(filter $(patsubst %.db, ../%.substitutions, $(DB)), $(wildcard ../*.substitutions))
@echo "Making template database dependencies"
@$(MAKEDBDEPENDS) $^
.PRECIOUS: $(COMMON_DBS)
-include DEPENDS
##################################################### register record,device,driver support
%_registerRecordDeviceDriver.cpp: %.dbd
@$(RM) $@
$(REGISTERRECORDDEVICEDRIVER) $< > $@
.PRECIOUS: %_registerRecordDeviceDriver.cpp
##################################################### END OF FILE
endif

18
configure/RULES.ioc Normal file
View File

@@ -0,0 +1,18 @@
#RULES.ioc
include $(EPICS_BASE)/configure/RULES_DIRS
build: buildInstall
install: buildInstall
buildInstall: $(TARGETS)
cdCommands: $(wildcard $(TOP)/config/RELEASE*)
ifeq ($(IOCS_APPL_TOP),)
$(PERL) $(TOOLS)/convertRelease.pl -a $(ARCH) $@
else
$(PERL) $(TOOLS)/convertRelease.pl -a $(ARCH) -t $(IOCS_APPL_TOP) $@
endif
clean:
@$(RM) cdCommands

View File

@@ -4,13 +4,14 @@
all: install
build install buildInstall: $(CHECK_RELEASE_$(CHECK_RELEASE))
rebuild: clean all
ACTIONS = inc
ACTIONS += build
ACTIONS += install
ACTIONS += buildInstall
ACTIONS += depends
ACTIONS += browse
actionPart = $(word 1, $(subst $(DIVIDER), ,$@))
@@ -21,22 +22,28 @@ actionArchTargets = $(foreach x, $(ACTIONS),\
buildDirs = $(addprefix O.,$(BUILD_ARCHS))
$(actionArchTargets) : $(buildDirs)
$(actionArchTargets) : $(buildDirs) O.Common
$(MAKE) -C O.$(archPart) -f ../Makefile TOP=$(TOP)/.. T_A=$(archPart) $(actionPart)
$(BUILD_ARCHS) : % : O.%
$(BUILD_ARCHS) : % : O.% O.Common
$(MAKE) -C O.$@ -f ../Makefile TOP=$(TOP)/.. T_A=$@
$(ACTIONS):%: $(foreach arch, $(BUILD_ARCHS), %$(DIVIDER)$(arch))
$(buildDirs) :
$(buildDirs):
$(PERL) $(TOOLS)/makeMakefile.pl $@ $(TOP)/..
O.Common:
$(MKDIR) O.Common
checkRelease: $(wildcard $(TOP)/configure/RELEASE*)
$(PERL) $(TOOLS)/convertRelease.pl -h $(EPICS_HOST_ARCH) -t $(TOP) $@
#
# special clean rule
#
clean ::
$(RMDIR) $(addprefix O.,$(BUILD_ARCHS))
$(RMDIR) $(addprefix O.,$(BUILD_ARCHS)) O.Common
clean$(DIVIDER)% ::
$(RMDIR) O.$*
@@ -45,4 +52,5 @@ clean$(DIVIDER)% ::
.PHONY : $(buildActionArchTargets)
.PHONY : $(buildArchs)
.PHONY : $(ACTIONS) clean all
.PHONY : checkRelease

View File

@@ -28,7 +28,8 @@
# vpath, of course, has the disadvantage that we need explicit rules
# for scripts or similar os-specific filed which have _no_ suffix...
ifdef T_A
ifndef BASE_RULES_BUILD
BASE_RULES_BUILD=1
vpath %.c $(USR_VPATH) $(ALL_SRC_DIRS)
vpath %.cc $(USR_VPATH) $(ALL_SRC_DIRS)
@@ -36,32 +37,33 @@ vpath %.cpp $(USR_VPATH) $(ALL_SRC_DIRS)
vpath %.C $(USR_VPATH) $(ALL_SRC_DIRS)
vpath %.rc $(USR_VPATH) $(ALL_SRC_DIRS)
vpath %.h $(USR_VPATH) $(ALL_SRC_DIRS)
vpath %.skel.static $(USR_VPATH) $(GENERIC_SRC_DIRS)
vpath %.skel.static $(USR_VPATH) $(ALL_SRC_DIRS)
vpath %.y $(USR_VPATH) $(ALL_SRC_DIRS)
vpath %.l $(USR_VPATH) $(ALL_SRC_DIRS)
#---------------------------------------------------------------
include $(CONFIG)/CONFIG_ADDONS
#---------------------------------------------------------------
# Set PROD, OBJS, LIBRARY_HOST, and LIBRARY_IOC
# Set PROD, TESTPROD, OBJS, and LIBRARY
ifeq ($(findstring Host,$(VALID_BUILDS)),Host)
LIBRARY_HOST += $(LIBRARY)
LIBRARY += $(LIBRARY_HOST)
OBJS += $(OBJS_HOST)
else
# PROD and TESTPROD not built for ioc only builds
PROD = $(PROD_$(OS_CLASS))
TESTPROD = $(TESTPROD_$(OS_CLASS))
LIBRARY_HOST =
LIBRARY_IOC += $(LIBRARY)
PROD += $(PROD_HOST)
SCRIPTS += $(SCRIPTS_HOST)
TESTPROD += $(TESTPROD_HOST)
endif
ifeq ($(findstring Ioc,$(VALID_BUILDS)),Ioc)
LIBRARY += $(LIBRARY_IOC)
OBJS += $(OBJS_IOC)
else
LIBRARY_IOC =
PROD += $(PROD_IOC)
SCRIPTS += $(SCRIPTS_IOC)
TESTPROD += $(TESTPROD_IOC)
endif
#---------------------------------------------------------------
ifdef TEMPLATES_DIR
@@ -75,57 +77,70 @@ endif
all: install
-include $(CONFIG)/RULES.Db
ifeq ($(HDEPENDS),YES)
ifneq (,$(strip $(HDEPENDS_FILES)))
-include $(HDEPENDS_FILES)
endif
endif
#---------------------------------------------------------------
# Create included Makefile for prod,testprod, and library targets
ifneq (,$(strip $(PROD) $(TESTPROD) $(LIBRARY_IOC) $(LIBRARY_HOST)))
ifneq (,$(strip $(PROD) $(TESTPROD) $(LIBRARY)))
MakefileInclude: ../Makefile
@$(RM) $@
@$(PERL) $(TOOLS)/makeMakefileInclude.pl $(PROD) $(TESTPROD) $(LIBRARY_IOC) $(LIBRARY_HOST) $@
@$(PERL) $(TOOLS)/makeMakefileInclude.pl $(PROD) $(TESTPROD) $(LIBRARY) $@
-include MakefileInclude
endif # PROD, TESTPROD, LIBRARY_IOC or LIBRARY_HOST defined
endif # PROD, TESTPROD, or LIBRARY defined
#---------------------------------------------------------------
# Products and Object libraries
#
PRODTARGETS += $(PRODNAME) $(MUNCHNAME) $(CTDT_SRCS) $(CTDT_OBJS) $(NMS)
#---------------------------------------------------------------
# Libraries
#
LIBTARGETS += $(LIBNAME) $(MUNCHNAME)
ifneq (,$(strip $(LIBTARGETS)))
LIBTARGETS += $(INSTALL_LIBS) $(INSTALL_MUNCHS)
ifeq ($(strip $(SHARED_LIBRARIES)),YES)
LIBTARGETS += $(LIBNAME)
LIBTARGETS += $(INSTALL_LIBS)
LIBTARGETS += $(SHRLIBNAME) $(INSTALL_SHRLIBS) $(INSTALL_DLL_LINK_LIBS)
endif # SHARED_LIBRARIES=YES
endif # LIBTARGETS
#---------------------------------------------------------------
ifneq ($(CONFIG),$(TOP)/configure)
-include $(TOP)/configure/RULES_BUILD
endif
-include $(TOP)/configure/O.$(T_A)/RULES_INCLUDE
#---------------------------------------------------------------
# Main targets
install: buildInstall
buildInstall : build
inc : $(COMMON_INC) $(INSTALL_INC)
build : inc
buildInstall : build
install: buildInstall
rebuild: clean install
inc: $(DIRECTORY_TARGETS) $(INSTALL_INC) $(INSTALL_INCREC)
build: $(OBJSNAME) $(LIBTARGETS) $(PRODNAME) $(TESTPRODNAME) \
build: $(OBJSNAME) $(LIBTARGETS) $(PRODTARGETS) $(TESTPRODNAME) \
$(TARGETS)
buildInstall : \
$(INSTALL_SCRIPTS) $(INSTALL_PROD) \
$(INSTALL_SCRIPTS) $(INSTALL_PROD) $(INSTALL_MUNCHS) \
$(INSTALL_TCLLIBS) $(INSTALL_TCLINDEX) \
$(INSTALL_OBJS) \
$(INSTALL_DOCS) \
$(INSTALL_HTMLS) \
$(INSTALL_TEMPLATE) \
$(INSTALL_CONFIGS) \
$(INSTALL_DBS) $(INSTALL_BPTS) \
$(INSTALL_DBDNAME)
$(INSTALL_CONFIGS)
ifdef BIN_INSTALLS
buildInstall : binInstalls
@@ -133,20 +148,17 @@ endif
clean::
@echo "Cleaning"
@$(RM) *.i *$(OBJ) *.a $(PRODNAME) $(TESTPRODNAME) $(LIBNAME) $(SHRLIBNAME)\
$(INC) *$(RES) $(TARGETS) $(DBDINSTALL) \
*.out MakefileInclude
ifdef MUNCHNAME
@$(RM) $(MUNCHNAME) ctdt.c ctdt.o nm.out
endif
@$(RM) *.i *$(OBJ) *.a $(TESTPRODNAME) $(LIBNAME) $(SHRLIBNAME)\
$(INC) *$(RES) $(TARGETS) \
*.out MakefileInclude \
$(COMMON_INC) $(HDEPENDS_FILES) $(PRODTARGETS)
ifdef BAF
@$(RM) $(PROD_BAF) $(LIB_BAF_IOC) $(LIB_BAF_HOST) *$(BOF)
@$(RM) $(PROD_BAF) $(LIB_BAF) *$(BOF)
endif
# WIN95/NT source browser
#ifdef BAF
browse: $(LIB_BAF_IOC) $(LIB_BAF_HOST) $(PROD_BAF)
browse: $(LIB_BAF) $(PROD_BAF)
#endif
$(DIRECTORY_TARGETS) :
@@ -168,30 +180,52 @@ $(DIRECTORY_TARGETS) :
# The order of the following rules is
# VERY IMPORTANT !!!!
depends: buildInstall $(SRC_FILES)
@$(RM) DEPENDS
@touch DEPENDS
ifneq (,$(strip $(SRC_FILES)))
$(DEPENDS_RULE)
endif
$(TESTPRODNAME) $(PRODNAME):%$(EXE): $(PROD_OBJS) $(PROD_RESS) $(PROD_DEPLIBS)
$(TESTPRODNAME) $(PRODNAME):%$(EXE): $(PRODUCT_OBJS) $(PROD_RESS) $(PROD_DEPLIBS)
@$(RM) $@
$(LINK.cpp)
$(PURIFY_$(OS_CLASS)) $(LINK.cpp)
# object libs for R3.13 vxWorks compatibility only
$(OBJLIBNAME):%$(OBJ): $(OBJLIB_LD_OBJS)
@$(RM) $@
$(OBJLIB_LINK.cpp)
%_ctdt$(OBJ) : %_ctdt.c
@$(RM) $@
$(COMPILE.c) -traditional $<
%$(OBJ): %.c
ifeq ($(HDEPENDS),YES)
@$(RM) $*$(DEP)
@$(HDEPENDS_CMD.c)
@$(HDEPENDS_TARGETS_CMD) $*$(DEP)
endif
@$(RM) $@
$(COMPILE.c) $<
%$(OBJ): %.cc
ifeq ($(HDEPENDS),YES)
@$(RM) $*$(DEP)
@$(HDEPENDS_CMD.cpp)
@$(HDEPENDS_TARGETS_CMD) $*$(DEP)
endif
@$(RM) $@
$(COMPILE.cpp) $<
%$(OBJ): %.cpp
ifeq ($(HDEPENDS),YES)
@$(RM) $*$(DEP)
@$(HDEPENDS_CMD.cpp)
@$(HDEPENDS_TARGETS_CMD) $*$(DEP)
endif
@$(RM) $@
$(COMPILE.cpp) $<
%$(OBJ): %.C
ifeq ($(HDEPENDS),YES)
@$(RM) $*$(DEP)
@$(HDEPENDS_CMD.cpp)
@$(HDEPENDS_TARGETS_CMD) $*$(DEP)
endif
@$(RM) $@
$(COMPILE.cpp) $<
@@ -210,63 +244,26 @@ $(TESTPRODNAME) $(PRODNAME):%$(EXE): $(PROD_OBJS) $(PROD_RESS) $(PROD_DEPLIBS)
# rename the y.tab.h file only if we
# are creating it
#
%.h %.c: ../%.y
$(RM) $*.c y.tab.c
ifeq ($(findstring -d, $(YACCOPT)),-d)
%.h %.c: %.y
$(RM) $*.c y.tab.c
$(RM) $*.h y.tab.h
endif
$(YACC) $(YACCOPT) $<
$(MV) y.tab.c $*.c
ifeq ($(findstring -d, $(YACCOPT)),-d)
$(MV) y.tab.h $*.h
else
%.c: %.y
$(RM) $*.c y.tab.c
$(YACC) $(YACCOPT) $<
$(MV) y.tab.c $*.c
endif
%.c: ../%.l
%.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) $(CPPSNCFLAGS) $< > $*.i
@echo "converting $*.i"
@$(RM) $@
$(SNC) $(TARGET_SNCFLAGS) $(SNCFLAGS) $*.i -o $@
%.c: %.stt
@echo "converting $<
ln -s $< $*.st
$(SNC) $(TARGET_SNCFLAGS) $(SNCFLAGS) $*.st -o $@
@$(RM) $*.st
%.cpp: ../%.st
@echo "preprocessing $*.st"
@$(RM) $*.i
$(CPP) $(CPPSNCFLAGS) $< > $*.i
@echo "converting $*.i"
@$(RM) $@
$(SNC) $(TARGET_SNCFLAGS) $(SNCFLAGS) $*.i -o $@
%.cpp: %.stt
@echo "converting $<
ln -s $< $*.st
$(SNC) $(TARGET_SNCFLAGS) $(SNCFLAGS) $*.st -o $@
@$(RM) $*.st
# Capfast Rules:
%.db: %.edf
$(E2DB) $(E2DB_SYSFLAGS) $(E2DB_FLAGS) $<
%.db: ../%.edf
$(E2DB) $(E2DB_SYSFLAGS) $(E2DB_FLAGS) $<
%.edf: ../%.sch
@if [ ! -f cad.rc -a -r ../cad.rc ] ; then ln -s ../cad.rc ; fi
$(SCH2EDIF) $(SCH2EDIF_SYSFLAGS) $(SCH2EDIF_FLAGS) $<
# Adl2dl rule
%.dl : ../%.adl
-$(ADL2DL) $< $@
@@ -281,57 +278,10 @@ endif
$(MANGEN) -s $<
$(MV) $(<F).nr $(<F).1
$(INSTALL_DBD)/%: %
@echo "Installing $@"
@$(INSTALL) -d -m 644 $< $(INSTALL_DBD)
$(INSTALL_DBD)/%: ../%
@echo "Installing $@"
@$(INSTALL) -d -m 644 $< $(INSTALL_DBD)
$(INSTALL_INCLUDE)/%Record.h: %Record.dbd
@$(RM) $@
$(EPICS_BASE_HOST_BIN)/dbToRecordtypeH$(HOSTEXE) \
$(DBDFLAGS) $< $@
$(INSTALL_INCLUDE)/%Record.h: ../%Record.dbd
@$(RM) $@
$(EPICS_BASE_HOST_BIN)/dbToRecordtypeH$(HOSTEXE) \
$(DBDFLAGS) $< $@
$(INSTALL_INCLUDE)/menu%.h: menu%.dbd
@$(RM) $@
$(EPICS_BASE_HOST_BIN)/dbToMenuH$(HOSTEXE) $< $@
$(INSTALL_INCLUDE)/menu%.h: ../menu%.dbd
@$(RM) $@
$(EPICS_BASE_HOST_BIN)/dbToMenuH$(HOSTEXE) $< $@
$(INSTALL_DBD)/bpt%.dbd: bpt%.data
@$(RM) $@
$(EPICS_BASE_HOST_BIN)/makeBpt$(HOSTEXE) $< $@
$(INSTALL_DBD)/bpt%.dbd: ../bpt%.data
@$(RM) $@
$(EPICS_BASE_HOST_BIN)/makeBpt$(HOSTEXE) $< $@
ifdef DBDEXPAND
$(INSTALL_DBD)/$(DBDNAME): $(addprefix ../,$(DBDEXPAND))
@echo Expanding dbd
@echo $^
@$(RM) $@
$(EPICS_BASE_HOST_BIN)/dbExpand$(HOSTEXE) $(DBDFLAGS) $(addprefix ../,$(DBDEXPAND)) > $@
endif
# WIN95/NT source browser
ifdef BAF
$(LIB_BAF_HOST): $(addsuffix $(BOF),$(basename $(LIBRARY_LD_OBJS)))
@echo "Building source browser archive $@"
@$(RM) $@
$(BAFCMD) $^
$(LIB_BAF_IOC): $(addsuffix $(BOF),$(basename $(LIBRARY_LD_OBJS)))
$(LIB_BAF): $(addsuffix $(BOF),$(basename $(LIBRARY_LD_OBJS)))
@echo "Building source browser archive $@"
@$(RM) $@
$(BAFCMD) $^
@@ -357,13 +307,29 @@ $(SHRLIBNAME):$(LIB_PREFIX)%$(SHRLIB_SUFFIX): $(LIBRARY_OBJS) $(LIBRARY_RESS)
$(LINK.shrlib)
# C++ munching for VxWorks
%.nm : %$(EXE)
@$(RM) $@
$(NM) $< > $@
$(MUNCHNAME):%.munch : %.o
@ $(RM) ctct.o ctdt.c nm.out
$(NM) $< > nm.out
perl $(TOOLS)/munch.pl < nm.out > ctdt.c
$(COMPILE.c) -traditional ctdt.c
$(GCC_LD) -o $@ $(LDFLAGS) $< ctdt.o
%.nm : %$(OBJ)
@$(RM) $@
$(NM) $< > $@
%_ctdt.c : %.nm
@$(RM) $@
$(PERL) $(TOOLS)/munch.pl < $< > $@
$(MUNCHNAME):%.munch : %_ctdt$(OBJ) %$(EXE)
@$(RM) $@
$(LDCMD)
$(OBJLIB_MUNCHNAME):%.munch : %_ctdt$(OBJ) %$(OBJ)
@$(RM) $@
$(LDCMD)
# Ext, app and module rules
RULES_INCLUDE CONFIG_APP_INCLUDE: $(wildcard $(TOP)/configure/RELEASE*)
$(PERL) $(TOOLS)/convertRelease.pl -h $(EPICS_HOST_ARCH) $@
binInstalls: $(BIN_INSTALLS)
@echo "Installing $(^F)"
@@ -418,14 +384,18 @@ $(INSTALL_CONFIG)/%: ../%
@echo "Installing config file $@"
@$(INSTALL) -d -m 644 $< $(@D)
$(INSTALL_INCLUDE)/os/$(OS_CLASS)/% : %
@echo "Installing os dependent include file $@"
$(INSTALL_INCLUDE)/% : $(COMMON_DIR)/%
@echo "Installing generated generic include file $@"
@$(INSTALL) -d -m 644 $< $(@D)
$(INSTALL_INCLUDE)/% : %
@echo "Installing generic include file $@"
@$(INSTALL) -d -m 644 $< $(@D)
$(INSTALL_INCLUDE)/os/$(OS_CLASS)/% : %
@echo "Installing os dependent include file $@"
@$(INSTALL) -d -m 644 $< $(@D)
$(INSTALL_DOC)/%: %
@echo "Installing doc $@"
@$(INSTALL) -d -m 644 $< $(INSTALL_DOC)
@@ -442,28 +412,20 @@ $(INSTALL_HTML)/$(HTMLS_DIR)/%: ../%
@echo "Installing html $@"
@$(INSTALL) -d -m 644 $< $(@D)
$(INSTALL_TEMPLATES)/$(TEMPLATES_DIR)/%: ../%
$(INSTALL_TEMPLATES_SUBDIR)/%: ../%
@echo "Installing $@"
@$(INSTALL) -d -m 644 $< $(@D)
$(INSTALL_TEMPLATES)/$(TEMPLATES_DIR)/%: %
$(INSTALL_TEMPLATES_SUBDIR)/%: %
@echo "Installing $@"
@$(INSTALL) -d -m 644 $< $(@D)
.PRECIOUS: %.o %.c
.PRECIOUS: %.i %.o %.c %.nm %.cpp %.cc
.PRECIOUS: $(COMMON_INC)
-include DEPENDS
.PHONY: all inc depends build install clean rebuild buildInstall binInstalls \
iocBinInstalls
ifneq (,$(wildcard ../base.dbd))
$(INSTALL_DBDNAME): ../base.dbd $(RECTYPES:%.h=../%.dbd)
else
$(INSTALL_DBDNAME): $(RECTYPES:%.h=../%.dbd)
endif
endif # T_A defined
.PHONY: all inc build install clean rebuild buildInstall binInstalls
endif # BASE_RULES_BUILD
# EOF RULES_BUILD

View File

@@ -4,7 +4,7 @@
ARCHS += $(BUILD_ARCHS)
ACTIONS += inc build install buildInstall depends clean
ACTIONS += inc build install buildInstall clean
dirPart = $(word 1, $(subst $(DIVIDER), ,$@))
actionArchPart = $(join $(word 2, $(subst $(DIVIDER), ,$@)), \
@@ -24,7 +24,7 @@ actionArchTargets = $(foreach action, $(ACTIONS),\
$(foreach arch, $(ARCHS), \
$(action)$(DIVIDER)$(arch)))
all install : buildInstall
all : buildInstall
rebuild : clean all

View File

@@ -23,7 +23,8 @@ uninstall: $(addprefix uninstall$(DIVIDER),$(BUILD_ARCHS))
uninstallDirs:
@$(RMDIR) $(INSTALL_DBD) $(INSTALL_INCLUDE) $(INSTALL_DOC)\
$(INSTALL_HTML) $(INSTALL_JAVA) $(INSTALL_TEMPLATES)
$(INSTALL_HTML) $(INSTALL_JAVA) $(INSTALL_TEMPLATES) \
$(INSTALL_DB)
tar:
@DIRNAME=$(notdir $(shell pwd)); \
@@ -67,14 +68,12 @@ help:
@echo " in all except the O.<arch> level Makefile"
@echo " rebuild - Same as clean install"
@echo " inc - Installs header files"
@echo " depends - Generates include header file dependencies"
@echo " build - Builds all targets"
@echo "\"Partial\" build targets supported by Makefiles:"
@echo " inc.<arch> - Installs <arch> only header files."
@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 " distclean - Same as clean uninstall."

View File

@@ -8,35 +8,35 @@
TOP = ../../..
include $(TOP)/configure/CONFIG
# Add-on CFLAGS that are needed by this Makefile.
# Add-on CPPFLAGS that are needed by this Makefile.
# (If possible, all system specific flags should be
# defined in configure/os/CONFIG.<host>.<target>
#
# These CFLAGS rules also apply to these Makefile-variables:
# These CPPFLAGS rules also apply to these Makefile-variables:
# CPPFLAGS C preprocessor flags
# CFLAGS C flags
# CXXFLAGS C++ flags
# LDFLAGS link flags
#
# This is used on all systems:
USR_CFLAGS = -DVAR=value -Ddefine_for_all_systems
# This is added to the above, but only for OS_CLASS=BSD:
USR_CFLAGS_BSD = -DVERSION='Berkeley enhanced'
USR_CPPFLAGS = -DVAR=value -Ddefine_for_all_systems
# ..only for WIN32:
USR_CFLAGS_WIN32 = -DVERSION='WIN32 port'
USR_CPPFLAGS_WIN32 = -DVERSION='WIN32 port'
#
# -nil- is special:
# if USR_CFLAGS_SYSV was undefined or empty, .._DEFAULT would have
# if USR_CPPFLAGS_WIN32 was undefined or empty, .._DEFAULT would have
# been used.
# To indicate
# "yes, there is a special USR_CFLAGS for SYSV, but it's empty"
# "yes, there is a special USR_CPPFLAGS for WIN32, but it's empty"
# you have to set it to -nil-:
USR_CFLAGS_SYSV = -nil-
USR_CPPFLAGS_WIN32 = -nil-
# .. for all other arch classes:
USR_CFLAGS_DEFAULT = -DVERSION='generic Unix'
USR_CPPFLAGS_DEFAULT = -DVERSION='generic Unix'
# CFLAGS that are only used to compile a_file.c or a_file.cpp:
# CPPFLAGS that are only used to compile a_file.c or a_file.cpp:
#
a_file_CFLAGS = -DIN_A_FILE
a_file_CFLAGS_WIN32 = -DVERSION='WIN32 port'
a_file_CPPFLAGS = -DIN_A_FILE
a_file_CPPFLAGS_WIN32 = -DVERSION='WIN32 port'
# ---------------------------------------------------------
# general rule for all .c .cpp .h .hh files and scripts:
@@ -58,7 +58,7 @@ a_file_CFLAGS_WIN32 = -DVERSION='WIN32 port'
#
INC_DEFAULT = for_all_but_WIN32_or_hp700.h
INC_WIN32 = only_for_WIN32.h
INC_hp700 = -nil- # hp700 uses no special include
INC_hpux = -nil- # hpux uses no special include
INC = file.h
# --------------------------------------------------------------------
@@ -85,17 +85,17 @@ INC = file.h
SRCS = file_for_lib.c another_file.cpp
SRCS_DEFAULT = posix.c
SRCS_WIN32 = win32_special.c
SRCS_BSD = -nil-
SRCS_Linux = -nil-
#
<libname>_SRCS = file_for_lib.c another_file.cpp
<libname>_SRCS_DEFAULT = posix.c
<libname>_SRCS_WIN32 = win32_special.c
<libname>_SRCS_BSD = -nil-
libname_SRCS = file_for_lib.c another_file.cpp
libname_SRCS_DEFAULT = posix.c
libname_SRCS_WIN32 = win32_special.c
libname_SRCS_Linux = -nil-
#
LIBSRCS = file_for_lib.c another_file.cpp
LIBSRCS_DEFAULT = posix.c
LIBSRCS_WIN32 = win32_special.c
LIBSRCS_BSD = -nil-
LIBSRCS_Linux = -nil-
# Library to build:
# lib$(LIBRARY).a or ..dll/..exp/..lib
@@ -167,8 +167,8 @@ foolib_DIR = $(FOO_LIB)
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
PROD_Linux = product_only_for_Linux
PROD_solaris = product_only_for_solaris
# Product version
PROD_VERSION =
@@ -182,7 +182,7 @@ PROD_VERSION =
#
SCRIPTS_DEFAULT = script_for_rest
SCRIPTS_WIN32 = script_only_for_WIN32
SCRIPTS_BSD = script_only_for_BSD
SCRIPTS_Linux = script_only_for_Linux
SCRIPTS = script
# if you want to build products locally without installing:

View File

@@ -3,58 +3,71 @@
#
# $Id$
# Author: W. Eric Norum
# Canadian Light Source
# eric@cls.usask.ca
# University of Saskatchewan
# eric.norum@usask.ca
#
# Contains definitions common to all RTEMS targets
#
# This file is maintained by the build community.
# Sites may override definitions in os/CONFIG_SITE.Common.RTEMS
#-------------------------------------------------------
#
#
#-------------------------------------------------------
# Where to find RTEMS
RTEMS_BASE=/opt/rtems
#-------------------------------------------------------
# RTEMS tools are similar to UNIX tools
#
-include $(CONFIG)/os/CONFIG.Common.UnixCommon
-include $(CONFIG)/os/CONFIG.Common.UnixCommon
###############################################################################
# #
# RTEMS-specific overrides of common UNIX definitions #
# #
###############################################################################
#-------------------------------------------------------
# Pick up the RTEMS tool/path definitions from the RTEMS BSP directory.
include $(RTEMS_BASE)/$(RTEMS_TARGET_CPU)-rtems/$(subst RTEMS-,,$(T_A))/Makefile.inc
include $(RTEMS_CUSTOM)
include $(CONFIG.CC)
#
#-------------------------------------------------------
# RTEMS cross-development tools
CC = $(RTEMS_BASE)/bin/$(CC_FOR_TARGET) $(GCCSPECS) -fasm
CCC = $(CC)
CPP = $(RTEMS_BASE)/bin/$(CC_FOR_TARGET) -x c -E
AR = $(RTEMS_BASE)/bin/$(AR_FOR_TARGET)
LD = $(RTEMS_BASE)/bin/$(LD_FOR_TARGET) -r
RTEMS_LDFLAGS := $(LDFLAGS)
LINK.cpp = $(CCC) -o $@ $(RTEMS_LDFLAGS) $(LDFLAGS) $(LINK_OBJS) $(PROD_LD_OBJS) $(PROD_LD_RESS) $(LDLIBS)
RANLIB := $(RTEMS_BASE)/bin/$(RANLIB)
#-------------------------------------------------------
# Build types
#
VALID_BUILDS = Ioc
#
# Pick up the RTEMS tool/path definitions from the RTEMS BSP directory.
#
ifneq "$(T_A)" ""
RTEMS_MAKEFILE_PATH := $(dir $(RTEMS_MAKEFILE_PATH))/$(subst RTEMS-,,$(T_A))
-include $(RTEMS_MAKEFILE_PATH)/Makefile.inc
-include $(RTEMS_CUSTOM)
-include $(CONFIG.CC)
endif
#
# Override RTEMS optimization flags
#
CFLAGS_OPTIMIZE =
#
#--------------------------------------------------
# The RTEMS Makefiles redefine several macros, so we have to go
# through the following contortions to get the EPICS flags back.
#
CFLAGS += $(CONFORM_CFLAGS) $(OPT_CFLAGS) $(DEBUG_CFLAGS) $(WARN_CFLAGS)\
$(TARGET_CFLAGS) $(USR_CFLAGS) $(ARCH_DEP_CFLAGS) $(CODE_CFLAGS)\
$(STATIC_CFLAGS) $(OP_SYS_CFLAGS)
CFLAGS = $(CONFORM_CFLAGS) $(CROSS_CFLAGS) $(OPT_CFLAGS) $(DEBUG_CFLAGS)\
$(WARN_CFLAGS) $(TARGET_CFLAGS) $(USR_CFLAGS) $(ARCH_DEP_CFLAGS)\
$(CODE_CFLAGS) $(STATIC_CFLAGS) $(OP_SYS_CFLAGS)
CXXFLAGS +=$(CONFORM_CXXFLAGS) $(OPT_CXXFLAGS) $(DEBUG_CXXFLAGS) $(WARN_CXXFLAGS)\
$(TARGET_CXXFLAGS) $(USR_CXXFLAGS) $(ARCH_DEP_CXXFLAGS) $(CODE_CXXFLAGS)\
$(STATIC_CXXCFLAGS) $(OP_SYS_CFLAGS) $(TEMPL_INST_CXXFLAG)
CXXFLAGS = $(CONFORM_CXXFLAGS) $(CROSS_CXXFLAGS) $(OPT_CXXFLAGS)\
$(DEBUG_CXXFLAGS) $(WARN_CXXFLAGS) $(TARGET_CXXFLAGS) $(USR_CXXFLAGS)\
$(ARCH_DEP_CXXFLAGS) $(CODE_CXXFLAGS) $(STATIC_CXXCFLAGS) $(OP_SYS_CXXFLAGS)\
$(CROSS_CXXFLAGS)
LDFLAGS += $(OPT_LDFLAGS) $(TARGET_LDFLAGS) $(USR_LDFLAGS) $(DEPLIB_LDFLAGS)\
$(ARCH_DEP_LDFLAGS) $(STATIC_LDFLAGS) $(OP_SYS_LDFLAGS)
LDFLAGS = $(OPT_LDFLAGS) $(TARGET_LDFLAGS) $(USR_LDFLAGS) $(DEPLIB_LDFLAGS)\
$(ARCH_DEP_LDFLAGS) $(STATIC_LDFLAGS) $(OP_SYS_LDFLAGS) $(CROSS_LDFLAGS)
CPPFLAGS += $(CONFORM_CFLAGS) $(POSIX_CPPFLAGS) $(EPICS_BASE_CPPFLAGS)\
$(TARGET_CPPFLAGS) $(USR_CPPFLAGS) $(ARCH_DEP_CPPFLAGS) $(OP_SYS_CPPFLAGS)
LDLIBS = $(DEPLIB_LDLIBS) $(STATIC_LDLIBS)\
$(POSIX_LDLIBS) $(ARCH_DEP_LDLIBS) $(OP_SYS_LDLIBS)
CPPFLAGS += $(CROSS_CPPFLAGS) $(POSIX_CPPFLAGS) $(EPICS_BASE_CPPFLAGS)\
$(TARGET_CPPFLAGS) $(USR_CPPFLAGS) $(ARCH_DEP_CPPFLAGS)\
$(OP_SYS_CPPFLAGS) $(CODE_CPPFLAGS)
#--------------------------------------------------
# Although RTEMS uses gcc, it wants to use gcc its own way
CROSS_CPPFLAGS =
CROSS_LDFLAGS =
#--------------------------------------------------
# operating system class (include/os/<os_class>)
@@ -62,49 +75,27 @@ OS_CLASS = RTEMS
#--------------------------------------------------
# Operating system flags
OP_SYS_CPPFLAGS = -Dfopen=rtems_fopen -Dmain=rtems_main -DIOCSH_USE_READLINE
OP_SYS_LDLIBS = -lreadline -lcurses
OP_SYS_LDFLAGS = $(CPU_CFLAGS) -u Init -lCom \
OP_SYS_CPPFLAGS = -Dmain=rtems_main
OP_SYS_LDLIBS = -lrtemsall -lrtemsCom -lreadline -lcurses -lm
OP_SYS_LDFLAGS = $(CPU_CFLAGS) -u Init \
$(PROJECT_RELEASE)/lib/no-dpmem.rel \
$(PROJECT_RELEASE)/lib/no-mp.rel \
$(PROJECT_RELEASE)/lib/no-part.rel \
$(PROJECT_RELEASE)/lib/no-signal.rel \
$(PROJECT_RELEASE)/lib/no-rtmon.rel
CPPSNCFLAGS += -x c
#--------------------------------------------------
# c++ exceptions, YES or NO
CXX_EXCEPTIONS = NO
#--------------------------------------------------
# osithead use default stack, YES or NO
OSITHREAD_USE_DEFAULT_STACK = NO
#--------------------------------------------------
# RTEMS has neither shared libraries nor dynamic loading
STATIC_BUILD=YES
SHARED_LIBRARIES=NO
GCC_CODE_CFLAGS =
G++_CODE_CFLAGS =
CODE_CFLAGS =
CODE_CXXFLAGS =
#--------------------------------------------------
# RTEMS wants nothing to do with POSIX
GCC_POSIX_CPPFLAGS =
G++_POSIX_CPPFLAGS =
# RTEMS uses the inline keyword, so get rid of pedantic warnings
CONFORM_CFLAGS_STRICT = -ansi
CONFORM_CXXFLAGS_STRICT = -ansi
#--------------------------------------------------
# RTEMS is not that strict
GCC_CONFORM_CFLAGS_STRICT =
G++_CONFORM_CFLAGS_STRICT =
#--------------------------------------------------
# RTEMS uses C++ constructors to register commands/programs (snc +i option)
%.o: ../%.st
@echo "preprocessing $*.st"
@$(RM) $*.i
$(CPP) $(CPPSNCFLAGS) $< > $*.i
@echo "converting $*.i"
@$(RM) $*.c
$(SNC) +i $(TARGET_SNCFLAGS) $(SNCFLAGS) $*.i
@$(RM) $@
$(COMPILE.cpp) -x c++ -Wno-deprecated $*.c
# Allow site overrides
-include $(CONFIG)/os/CONFIG_SITE.Common.RTEMS

View File

@@ -6,4 +6,5 @@
#
# All RTEMS targets use the same Makefile fragment
#
RTEMS_TARGET_CPU=m68k
include $(CONFIG)/os/CONFIG.Common.RTEMS

View File

@@ -6,4 +6,5 @@
#
# All RTEMS targets use the same Makefile fragment
#
RTEMS_TARGET_CPU=m68k
include $(CONFIG)/os/CONFIG.Common.RTEMS

View File

@@ -0,0 +1,15 @@
#
# $Id$
# Author: W. Eric Norum
# Canadian Light Source
# eric@cls.usask.ca
#
# All RTEMS targets use the same Makefile fragment
#
RTEMS_TARGET_CPU=i386
include $(CONFIG)/os/CONFIG.Common.RTEMS
#
# Put text segment where it will work with etherboot
#
OP_SYS_LDFLAGS = -Wl,-Ttext,0x100000

View File

@@ -30,16 +30,23 @@ SHRLIB_SUFFIX = .so$(addprefix .,$(SHRLIB_VERSION))
# <lib> -> lib<lib>.a
LIBNAME = $(BUILD_LIBRARY:%=$(LIB_PREFIX)%$(LIB_SUFFIX))
# <lib> -> lib<lib>.so.<version>
SHRLIBNAME = $(BUILD_LIBRARY:%=$(LIB_PREFIX)%$(SHRLIB_SUFFIX))
SHRLIBNAME_YES = $(BUILD_LIBRARY:%=$(LIB_PREFIX)%$(SHRLIB_SUFFIX))
#-------------------------------------------------------
# shrlib: dependancy definitions
SHRLIB_DEPLIBS = $(foreach lib,$(SHRLIB_LIBS),$(firstword $(wildcard \
$($(lib)_DIR)/$(LIB_PREFIX)$(lib).*)))
# Shared library definitions
SHRLIB_LDFLAGS = $($(ANSI)_SHRLIB_LDFLAGS_$(strip $(SHARED_LIBRARIES)))
SHRLIB_LDFLAGS = $(SHRLIB_LDFLAGS_$(strip $(SHARED_LIBRARIES)))
SHRLIB_LDLIBS = $($*_LIBS:%=-l%)
SHRLIB_DEPLIB_DIRS = $(dir $($*_DEPLIBS)) $(dir $(SHRLIB_DEPLIBS))
SHRLIB_LDFLAGS += $(sort $(SHRLIB_DEPLIB_DIRS:%=-L%))
#--------------------------------------------------
# Prod: dependancy definitions
PROD_DEPLIBS = $(foreach lib,$(PROD_LIBS) $(USR_LIBS),$(firstword $(wildcard \
PROD_DEPLIBS = $(foreach lib,$(PROD_LDLIBS) $(USR_LDLIBS),$(firstword $(wildcard \
$($(lib)_DIR)/$(LIB_PREFIX)$(lib).*)))
#--------------------------------------------------
@@ -47,25 +54,18 @@ $($(lib)_DIR)/$(LIB_PREFIX)$(lib).*)))
DEPLIB_DIRS = $(dir $($*_DEPLIBS)) $(dir $(PROD_DEPLIBS))
DEPLIB_LDFLAGS += $(sort $(DEPLIB_DIRS:%=-L%))
DEPLIB_LDLIBS = $($*_LIBS:%=-l%) $(PROD_LIBS:%=-l%) $(USR_LIBS:%=-l%)\
DEPLIB_LDLIBS = $($*_LDLIBS:%=-l%) $(PROD_LDLIBS:%=-l%) $(USR_LDLIBS:%=-l%)\
$($*_SYS_LIBS:%=-l%) $(SYS_PROD_LIBS:%=-l%)
#--------------------------------------------------
# Allow code to be used in a shared library
GCC_CODE_CFLAGS += -fPIC
G++_CODE_CFLAGS += -fPIC
#--------------------------------------------------
# Operating system definitions
OP_SYS_INCLUDES =
OP_SYS_CPPFLAGS = -DUNIX
OP_SYS_LDFLAGS =
OP_SYS_LDLIBS = -lm
OP_SYS_CPPFLAGS += -DUNIX
OP_SYS_LDLIBS += -lm
#--------------------------------------------------
# Link definitions
LINK.cpp = $(CXX) -o $@ $(LDFLAGS) $(PROD_LD_OBJS) $(PROD_LD_RESS) $(LDLIBS)
LINK.shrlib = $(CXX) -o $@ $(SHRLIB_LDFLAGS) $(LDFLAGS) $(LIBRARY_LD_OBJS) $(LIBRARY_LD_RESS) $(SHRLIB_LDLIBS)
LINK.cpp = $(CCC) -o $@ $(LDFLAGS) $(PROD_LD_OBJS) $(PROD_LD_RESS) $(LDLIBS)
LINK.shrlib = $(CCC) -o $@ $(SHRLIB_LDFLAGS) $(LDFLAGS) $(LIBRARY_LD_OBJS) $(LIBRARY_LD_RESS) $(SHRLIB_LDLIBS)
#--------------------------------------------------
# Allow site overrides

View File

@@ -7,5 +7,27 @@
# Sites may override these definitions in CONFIG_SITE.Common.hpux-68k
#-------------------------------------------------------
#Include definitions common to unix hosts
#Include definitions common to unix targets
include $(CONFIG)/os/CONFIG.Common.UnixCommon
OS_CLASS = hpux
ARCH_CLASS = parisc
POSIX_CPPFLAGS_YES =
POSIX_CPPFLAGS_NO =
POSIX_LDLIBS_YES +=
POSIX_LDLIBS_NO +=
OP_SYS_CPPFLAGS = -D_HPUX_SOURCE -DHP_UX
OP_SYS_CFLAGS = +z
OP_SYS_CXXFLAGS = +z
OP_SYS_LDLIBS +=
SHRLIB_SUFFIX = .sl
ifdef CROSS
GNU_TARGET=parisc-hp-unix
CMPLR_SUFFIX=
CMPLR_PREFIX=$(addsuffix -,$(GNU_TARGET))
endif

View File

@@ -0,0 +1,34 @@
# $Id$
# This file is maintained by the build community.
#
# Definitions for linux-mpc82xx target builds
# Sites may override these definitions in CONFIG_SITE.Common.linux-mpc82xx
#-------------------------------------------------------
# Include definitions common to all Unix targets
include $(CONFIG)/os/CONFIG.Common.UnixCommon
OS_CLASS = Linux
ARCH_CLASS = mpc82xx
CODE_CPPFLAGS = -D_REENTRANT
POSIX_CPPFLAGS_YES = -D_POSIX_C_SOURCE=199506L -D_POSIX_THREADS
POSIX_CPPFLAGS_NO =
POSIX_LDLIBS_YES = -lpthread
POSIX_LDLIBS_NO =
# -D_BSD_SOURCE for gethostname() in unistd.h as needed by cacChannelIO.cpp.
OP_SYS_CPPFLAGS += -D_BSD_SOURCE
OP_SYS_CPPFLAGS += -Dlinux
OP_SYS_LDFLAGS =
OP_SYS_LDLIBS = -lreadline -lcurses -lrt
#ARCH_DEP_CPPFLAGS += -D_X86_
ifdef CROSS
GNU_TARGET=ppc_82xx
CMPLR_SUFFIX=
CMPLR_PREFIX=$(addsuffix -,$(GNU_TARGET))
endif

View File

@@ -0,0 +1,37 @@
# CONFIG.Common.linux-x86
#
# $Id$
# This file is maintained by the build community.
#
# Definitions for linux-x86 target builds
# Sites may override these definitions in CONFIG_SITE.Common.linux-x86
#-------------------------------------------------------
# Include definitions common to all Unix targets
include $(CONFIG)/os/CONFIG.Common.UnixCommon
OS_CLASS = Linux
ARCH_CLASS = x86
CODE_CPPFLAGS = -D_REENTRANT
POSIX_CPPFLAGS_YES = -D_POSIX_C_SOURCE=199506L -D_POSIX_THREADS
POSIX_CPPFLAGS_NO =
POSIX_LDLIBS_YES = -lpthread
POSIX_LDLIBS_NO =
# -D_BSD_SOURCE for gethostname() in unistd.h as needed by cacChannelIO.cpp.
OP_SYS_CPPFLAGS += -D_BSD_SOURCE
OP_SYS_CPPFLAGS += -Dlinux
OP_SYS_LDFLAGS =
OP_SYS_LDLIBS = -lreadline -lcurses -lrt
ARCH_DEP_CPPFLAGS += -D_X86_
ARCH_DEP_CFLAGS += -mpentium
ifdef CROSS
GNU_TARGET=i586-pc-linux-gnu
CMPLR_SUFFIX=
CMPLR_PREFIX=$(addsuffix -,$(GNU_TARGET))
endif

View File

@@ -0,0 +1,31 @@
# CONFIG.Common.lynxos-x86
#
# $Id$
#
# This file is maintained by the build community.
# Sites may override these definitions in CONFIG_SITE.Common.lynxos-x86
#-------------------------------------------------------
#Include definitions common to unix targets
include $(CONFIG)/os/CONFIG.Common.UnixCommon
OS_CLASS = lynxos
ARCH_CLASS = x86
CODE_CPPFLAGS =
POSIX_CPPFLAGS_YES =
POSIX_CPPFLAGS_NO =
POSIX_LDLIBS_YES += -lposix4d9 -lpthread
POSIX_LDLIBS_NO +=
ARCH_DEP_CPPFLAGS += -D_X86_
ARCH_DEP_LDFLAGS =
ARCH_DEP_LDLIBS =
ifdef CROSS
GNU_TARGET=x86-lynxos
CMPLR_SUFFIX=
CMPLR_PREFIX=$(addsuffix -,$(GNU_TARGET))
endif

View File

@@ -0,0 +1,31 @@
# CONFIG.Common.osf-alpha
#
# $Id$
# This file is maintained by the build community.
#
# Definitions for osf-alpha target archs
# Sites may override these definitions in CONFIG_SITE.Common.osf-alpha
#-------------------------------------------------------
# Include definitions common to all Unix targets
include $(CONFIG)/os/CONFIG.Common.UnixCommon
OS_CLASS = osf
ARCH_CLASS = alpha
CODE_CPPFLAGS =
POSIX_CPPFLAGS_YES =
POSIX_LDLIBS_YES +=
POSIX_CPPFLAGS_NO =
POSIX_LDLIBS_NO +=
OP_SYS_CPPFLAGS = -D_OSF_SOURCE
OP_SYS_LDLIBS +=
ifdef CROSS
GNU_TARGET=alpha-osf
CMPLR_SUFFIX=
CMPLR_PREFIX=$(addsuffix -,$(GNU_TARGET))
endif

View File

@@ -0,0 +1,42 @@
# CONFIG.Common.solaris-sparc
#
# $Id$
# This file is maintained by the build community.
#
# Definitions for solaris-sparc target archs
# Sites may override these definitions in CONFIG_SITE.Common.solaris-sparc
#-------------------------------------------------------
# Include definitions common to all Unix target archs
include $(CONFIG)/os/CONFIG.Common.UnixCommon
OS_CLASS = solaris
ARCH_CLASS = sparc
CODE_CPPFLAGS = -D__EXTENSIONS__
# This is the only combination of posix threads flags that works with solaris 6
####POSIX_CPPFLAGS_YES = -D_REENTRANT -D_POSIX_C_SOURCE=199506L
####POSIX_LDLIBS_YES += -lposix4 -lpthread -lthread
# This set of flags is recommended by sun for posix threads and works with solaris 8
POSIX_CPPFLAGS_YES = -D_POSIX_C_SOURCE=199506L
POSIX_LDLIBS_YES += -lposix4 -lpthread
POSIX_CPPFLAGS_NO =
POSIX_LDLIBS_NO +=
OP_SYS_CPPFLAGS = -DSOLARIS
# socket and nsl needed by libca.a
OP_SYS_LDLIBS += -lsocket -lnsl
# -R does not work unless full path names are specified
# use loader's -R option
DEPLIB_LDFLAGS += $(sort $(DEPLIB_DIRS:%=-R%))
ifdef CROSS
GNU_TARGET=sparc-sun-solaris2
CMPLR_SUFFIX=
CMPLR_PREFIX=$(addsuffix -,$(GNU_TARGET))
endif

View File

@@ -0,0 +1,12 @@
# CONFIG.Common.solaris-sparc-gnu
#
# $Id$
# This file is maintained by the build community.
#
# Definitions for solaris-sparc gnu compiler target archs
# Sites may override these definitions in CONFIG_SITE.Common.solaris-sparc-gnu
#-------------------------------------------------------
# Include definitions common to all solaris-sparc target archs
include $(CONFIG)/os/CONFIG.Common.solaris-sparc

View File

@@ -0,0 +1,39 @@
# CONFIG.Common.solaris-x86
#
# $Id$
# This file is maintained by the build community.
#
# Definitions for solaris-x86 target archs
# Sites may override these definitions in CONFIG_SITE.Common.solaris-x86
#-------------------------------------------------------
# Include definitions common to all Unix target archs
include $(CONFIG)/os/CONFIG.Common.UnixCommon
OS_CLASS = solaris
ARCH_CLASS = x86
CODE_CPPFLAGS = -D__EXTENSIONS__
# This is the only combination of posix threads flags that works on solaris-sparc with solaris 6
#POSIX_CPPFLAGS_YES = -D_REENTRANT -D_POSIX_C_SOURCE=199506L
#POSIX_LDLIBS_YES += -lposix4 -lpthread -lthread
# This set of flags is recommended by sun for posix threads and works with solaris 8
POSIX_CPPFLAGS_YES = -D_POSIX_C_SOURCE=199506L
POSIX_LDLIBS_YES += -lposix4 -lpthread
POSIX_CPPFLAGS_NO =
POSIX_LDLIBS_NO +=
OP_SYS_CPPFLAGS = -DSOLARIS
ARCH_DEP_CPPFLAGS = -D_X86_
# socket and nsl needed by libca.a
OP_SYS_LDLIBS += -lsocket -lnsl
ifdef CROSS
GNU_TARGET=x86-sun-solaris2
CMPLR_SUFFIX=
CMPLR_PREFIX=$(addsuffix -,$(GNU_TARGET))
endif

View File

@@ -0,0 +1,12 @@
# CONFIG.Common.solaris-x86-gnu
#
# $Id$
# This file is maintained by the build community.
#
# Definitions for solaris-x86 gnu compiler target archs
# Sites may override these definitions in CONFIG_SITE.Common.solaris-x86-gnu
#-------------------------------------------------------
# Include definitions common to all solaris-x86 target archs
include $(CONFIG)/os/CONFIG.Common.solaris-x86

View File

@@ -0,0 +1,33 @@
# CONFIG.Common.sun4-x86
#
# $Id$
# This file is maintained by the build community.
#
# Definitions for sun4-x86 target archs
# Sites may override these definitions in CONFIG_SITE.Common.sun4-x86
#-------------------------------------------------------
# Include definitions common to all Unix target archs
include $(CONFIG)/os/CONFIG.Common.UnixCommon
OS_CLASS = sun4
ARCH_CLASS = x86
CODE_CPPFLAGS = -D__EXTENSIONS__
POSIX_CPPFLAGS_YES = -D_POSIX_C_SOURCE=199506L
POSIX_LDLIBS_YES += -lpthread -lthread
POSIX_CPPFLAGS_NO =
POSIX_LDLIBS_NO +=
OP_SYS_CPPFLAGS = -DSUNOS4
OP_SYS_LDLIBS += -lsocket -lnsl
ARCH_DEP_CPPFLAGS += -D_X86_
ifdef CROSS
GNU_TARGET=x86-sun-sunos4
CMPLR_SUFFIX=
CMPLR_PREFIX=$(addsuffix -,$(GNU_TARGET))
endif

View File

@@ -0,0 +1,21 @@
# CONFIG.Common.vxWorks-ppc603
#
# $Id$
# This file is maintained by the build community.
#
# Definitions for vxWorks-ppc604 target archs
# Sites may override these definitions in CONFIG_SITE.Common.vxWorks-ppc604
#-------------------------------------------------------
# Include definitions common to all vxWorks target archs
include $(CONFIG)/os/CONFIG.Common.vxWorksCommon
# Vx GNU cross compiler suffix
CMPLR_SUFFIX = ppc
ARCH_CLASS = ppc
# Architecture specific build flags
ARCH_DEP_CPPFLAGS = -DCPU=PPC603
ARCH_DEP_CFLAGS = -mcpu=603 -mstrict-align

View File

@@ -1,14 +1,13 @@
# CONFIG.Common.vxWorksCommon
#
# $Id$
# This file is maintained by the build community.
#
# Definitions for vxWorks target archs
#
# This file is maintained by the build community.
# Sites may override these definitions in CONFIG_SITE.Common.vxWorksCommon
# or CONFIG_SITE.<host>.vxWorksCommon
#-------------------------------------------------------
# Vx valid build types
VALID_BUILDS = Ioc
@@ -20,35 +19,58 @@ OS_CLASS = vxWorks
# Prefix and suffix definitions
EXE =
OBJ = .o
LIB_PREFIX =
LIB_SUFFIX = Library.o
MUNCH_SUFFIX = Library.munch
LIB_PREFIX =lib
LIB_SUFFIX = .a
MUNCH_SUFFIX = .munch
#-------------------------------------------------------
# Library definition
# Build both *.o and *.munch libraries
# Library definitions
LIBNAME = $(BUILD_LIBRARY:%=$(LIB_PREFIX)%$(LIB_SUFFIX))
MUNCHNAME = $(BUILD_LIBRARY:%=$(LIB_PREFIX)%$(MUNCH_SUFFIX))
#--------------------------------------------------
# Library install location override
INSTALL_LOCATION_LIB=$(INSTALL_LOCATION)/bin
# Prod: dependancy definitions
PROD_DEPLIBS = $(foreach lib,$(PROD_LDLIBS) $(USR_LDLIBS),$(firstword $(wildcard \
$($(lib)_DIR)/$(LIB_PREFIX)$(lib).*)))
#--------------------------------------------------
# Prod: LDFLAGS and LDLIBS definitions
DEPLIB_DIRS = $(dir $($*_DEPLIBS)) $(dir $(PROD_DEPLIBS))
DEPLIB_LDFLAGS += $(sort $(DEPLIB_DIRS:%=-L%))
DEPLIB_LDLIBS = $($*_LDLIBS:%=-l%) $(PROD_LDLIBS:%=-l%) $(USR_LDLIBS:%=-l%)\
$($*_SYS_LIBS:%=-l%) $(SYS_PROD_LIBS:%=-l%)
#-------------------------------------------------------
# Prod definitions
MUNCHNAME = $(PRODNAME:%$(EXE)=%$(MUNCH_SUFFIX))
CTDT_SRCS = $(PRODNAME:%$(EXE)=%_ctdt.c)
CTDT_OBJS = $(PRODNAME:%$(EXE)=%_ctdt$(OBJ))
NMS = $(PRODNAME:%$(EXE)=%.nm)
#-------------------------------------------------------
# R3.13 compatability object library definitions
OBJLIB += $(OBJLIB_$(OS_CLASS))
OBJLIB_SUFFIX = Library.o
OBJLIBNAME = $(addsuffix $(OBJLIB_SUFFIX),$(basename $(OBJLIB)))
OBJLIB_LD_OBJS = $(addsuffix $(OBJ),$(basename $(OBJLIB_SRCS) $(OBJLIB_OBJS)))
PRODTARGETS += $(OBJLIBNAME)
INSTALL_PROD += $(OBJLIBNAME:%=$(INSTALL_BIN)/%)
OBJLIB_MUNCHNAME += $(OBJLIBNAME:%$(OBJ)=%$(MUNCH_SUFFIX))
INSTALL_MUNCHS += $(OBJLIB_MUNCHNAME:%=$(INSTALL_BIN)/%)
PRODTARGETS += $(OBJLIB_MUNCHNAME)
CTDT_SRCS += $(OBJLIBNAME:%$(OBJ)=%_ctdt.c)
CTDT_OBJS += $(OBJLIBNAME:%$(OBJ)=%_ctdt$(OBJ))
NMS += $(OBJLIBNAME:%$(OBJ)=%.nm)
OBJLIB_LINK.cpp = $(LD) -o $@ $(OBJLIB_LD_OBJS)
TARGET_SRCS += $(foreach name, $(OBJLIB), $($(name)_SRCS))
SRC_FILES += $(OBJLIB_SRCS)
#--------------------------------------------------
# vxWorks directory definitions
# Tornado directory definitions
VX_INCLUDE = $(VX_DIR)/target/h
GNU_TARGET_INCLUDE_DIR = $(VX_DIR)/target/h
GNU_DIR = $(VX_DIR)/host/$(WIND_HOST_TYPE)
#-------------------------------------------------------
# Command definition overrides
GCC_LD = $(GNU_BIN)/$(CMPLR_PREFIX)ld$(CMPLR_SUFFIX) -r
# use ld partial linking not ar to create libraries)
GCC_AR = $(GCC_LD)
ARFLAGS = -o
GCC_RANLIB =
#--------------------------------------------------
# C++ host processing
NM = $(GNU_BIN)/$(CMPLR_PREFIX)nm$(CMPLR_SUFFIX)$(HOSTEXE)
@@ -59,14 +81,8 @@ NM = $(GNU_BIN)/$(CMPLR_PREFIX)nm$(CMPLR_SUFFIX)$(HOSTEXE)
export WIND_BASE = $(VX_DIR)
export WIND_HOST_TYPE
#--------------------------------------------------
# Posix flags override
GCC_POSIX_CPPFLAGS = -D_POSIX_SOURCE
G++_POSIX_CPPFLAGS = -D_POSIX_SOURCE
#--------------------------------------------------
# Operating system flags
OP_SYS_INCLUDES = -I$(VX_INCLUDE)
OP_SYS_CPPFLAGS = -DvxWorks
OP_SYS_CFLAGS = -fno-builtin
OP_SYS_LDFLAGS =
@@ -74,18 +90,24 @@ OP_SYS_LDLIBS =
# Fix for vxWorks headers using macros defined in
# vxWorks.h but not including vxWorks.h
OP_SYS_CFLAGS += -include $(VX_INCLUDE)/vxWorks.h
OP_SYS_INCLUDE_CPPFLAGS += -include $(GNU_TARGET_INCLUDE_DIR)/vxWorks.h
#--------------------------------------------------
# code flags
CODE_CFLAGS =
CODE_CXXFLAGS =
#--------------------------------------------------
# posix c preprocessor flags
POSIX_CPPFLAGS_YES = -D_POSIX_SOURCE
POSIX_CPPFLAGS_NO =
#--------------------------------------------------
# Optimization flag overrides
GCC_OPT_YES = -O2
GCC_OPT_NO =
G++_OPT_YES = -O2
G++_OPT_NO =
#--------------------------------------------------
# c++ exceptions, YES or NO override
CXX_EXCEPTIONS = NO
OPT_CFLAGS_YES = -O3
OPT_CFLAGS_NO =
OPT_CXXFLAGS_YES = -O3
OPT_CXXFLAGS_NO =
#--------------------------------------------------
# osithead use default stack, YES or NO override
@@ -93,9 +115,10 @@ OSITHREAD_USE_DEFAULT_STACK = NO
#--------------------------------------------------
# Link definitions
LINK.cpp = $(GCC_LD) -o $@ $(LDFLAGS) $(PROD_LD_OBJS) $(PROD_LD_RES) $(LDLIBS)
LINK.cpp = $(LD) -o $@ $(LDFLAGS) $(PROD_LD_OBJS) $(PROD_LD_RESS) $(LDLIBS)
#--------------------------------------------------
# Allow site overrides
-include $(CONFIG)/os/CONFIG_SITE.Common.vxWorksCommon
-include $(CONFIG)/os/CONFIG_SITE.$(EPICS_HOST_ARCH).vxWorksCommon

View File

@@ -0,0 +1,30 @@
# CONFIG.Common.win32-x86-cygwin
#
# $Id$
# This file is maintained by the build community.
#
# Definitions for win32-x86-cygwin target builds
# Sites may override these definitions in CONFIG_SITE.Common.win32-x86-cygwin
#-------------------------------------------------------
# Include definitions common to all Unix targets
include $(CONFIG)/os/CONFIG.Common.UnixCommon
OS_CLASS = cygwin32
ARCH_CLASS = x86
EXE=.exe
POSIX_CPPFLAGS_YES = -D_POSIX_SOURCE=199506L -D_POSIX_THREADS
POSIX_CPPFLAGS_NO =
#####POSIX_LDLIBS_YES = -lpthread
#####POSIX_LDLIBS_YES = -lthread
POSIX_LDLIBS_NO =
# -D_BSD_SOURCE for gethostname() in unistd.h as needed by cacChannelIO.cpp.
OP_SYS_CPPFLAGS += -DCYGWIN32 -U_WIN32
OP_SYS_LDFLAGS =
####OP_SYS_LDLIBS = -lreadline -lcurses -lrt
ARCH_DEP_CPPFLAGS += -D_X86_

View File

@@ -7,54 +7,50 @@
# Sites may override these definitions in CONFIG_SITE.hpux-parisc.hpux-parisc
#-------------------------------------------------------
OS_CLASS = hpux
ARCH_CLASS = parisc
CC = cc
CCC = aCC
CPP = $(CC) -E
RANLIB =
AR = ar -rc
LD = ld -r
# Configure OS vendor C compiler
ACC = cc
ACC_CONFORM_CFLAGS_ANSI = -Aa
ACC_CONFORM_CFLAGS_STRICT = -Aa
ACC_CONFORM_CFLAGS_TRAD = -Ac
ACC_WARN_YES =
ACC_WARN_NO = -w
ACC_OPT_YES = -O
ACC_OPT_NO = -g
ACC_STATIC_CFLAGS_YES= -Wl,-a,archive
ACC_STATIC_CFLAGS_NO =
ACC_STATIC_LDLIBS_YES =
ACC_STATIC_LDLIBS_NO =
ACC_SHRLIB_LDFLAGS_YES = -b
# Configure OS vendor C++ compiler
CCC = aCC
# avoid treating "future errors" as actual errors
CCC_CONFORM_CFLAGS_NORMAL = +W302 +W829 +W818 +W392 +W469 +W495 +W749 +W667 +W392 +W684
CCC_CONFORM_CFLAGS_STRICT = +p
CCC_TEMPL_INST_FLAG =
CCC_WARN_YES = +w
CCC_WARN_NO =
CCC_OPT_YES = -O
CCC_OPT_NO = -g
CCC_STATIC_CFLAGS_YES= +A
CCC_STATIC_CFLAGS_NO =
CCC_STATIC_LDLIBS_YES =
CCC_STATIC_LDLIBS_NO =
# shared libs will be found by searching environment variable SHLIB_PATH,
# then by searching the specified path (see below)
CCC_SHRLIB_LDFLAGS_YES = -b
CCC_DEPENDS_FLAG = +m
CONFORM_CFLAGS_ANSI = -Aa
CONFORM_CFLAGS_STRICT = -Aa
CONFORM_CFLAGS_TRAD = -Ac
######################################################
# +DAportable causes portable object code to be created for execution
# on different PA-Risc machines
ARCH_DEP_CPPFLAGS = -D_HPUX_SOURCE -DHP_UX
ARCH_DEP_CFLAGS = +DAportable +z
ARCH_DEP_CXXFLAGS = +DAportable +z
ARCH_DEP_LDLIBS =
ARCH_DEP_LDFLAGS = -Wl,+b$(DEFAULT_SHRLIB_SEARCH_PATH),+s
AR = ar -rc
SHRLIB_SUFFIX = .sl
CODE_CFLAGS = +DAportable
WARN_CFLAGS_YES =
WARN_CFLAGS_NO = -w
OPT_CFLAGS_YES = -O
OPT_CFLAGS_NO = -g
# HP's aCC will not compile things if run in STRICT mode
CXXCMPLR=NORMAL
# Configure OS vendor C++ compiler
CONFORM_CXXFLAGS_NORMAL = +W302 +W829 +W818 +W392 +W469 +W495 +W749 +W667 +W392 +W684
CONFORM_CXXFLAGS_STRICT = +p
######################################################
# +DAportable causes portable object code to be created for execution
# on different PA-Risc machines
CODE_CXXFLAGS = +DAportable
WARN_CXXFLAGS_YES = +w
WARN_CXXFLAGS_NO =
OPT_CXXFLAGS_YES = -O
OPT_CXXFLAGS_NO = -g
STATIC_LDFLAGS_YES= -Wl,-a,archive +A
# shared libs will be found by searching environment variable SHLIB_PATH,
# then by searching the specified path (see below)
STATIC_LDFLAGS_YES+= -b
STATIC_LDFLAGS_NO = -Wl,+b$(DEFAULT_SHRLIB_SEARCH_PATH),+s
STATIC_LDLIBS_YES=
STATIC_LDLIBS_NO=
SHRLIB_LDFLAGS_YES = -G -h $@
HDEPENDS_FLAGS_CMPLR = +m

View File

@@ -0,0 +1,10 @@
# $Id$
# This file is maintained by the build community.
#
# Definitions for linux-mpc82xx host builds
# Sites may override these definitions in CONFIG_SITE.linux-mpc82xx.Common
#-------------------------------------------------------
#Include definitions common to unix hosts
include $(CONFIG)/os/CONFIG.UnixCommon.Common

View File

@@ -0,0 +1,13 @@
# $Id$
#
# Definitions for linux-mpc82xx host - linux-mpc82xx target builds
# Sites may override these definitions in CONFIG_SITE.linux-mpc82xx.linux-mpc82xx
#-------------------------------------------------------
# Include common gnu compiler definitions
include $(CONFIG)/CONFIG.gnuCommon
GNU_DIR = /usr
CC = $(GNU_BIN)/gcc
CCC = $(GNU_BIN)/g++

View File

@@ -3,7 +3,7 @@
# $Id$
# This file is maintained by the build community.
#
# Definitions for linux-x86 host archs
# Definitions for linux-x86 host builds
# Sites may override these definitions in CONFIG_SITE.linux-x86.Common
#-------------------------------------------------------
@@ -11,4 +11,3 @@
include $(CONFIG)/os/CONFIG.UnixCommon.Common
WIND_HOST_TYPE = i386-linux2

View File

@@ -0,0 +1,17 @@
# $Id$
#
# Definitions for linux-x86 host - linux-mpc82xx target builds
# Sites may override these definitions in CONFIG_SITE.linux-x86.linux-mpc82xx
#-------------------------------------------------------
# Include common gnu compiler definitions
include $(CONFIG)/CONFIG.gnuCommon
GNU_DIR = /opt/hardhat/devkit/ppc/82xx
GNU_TARGET_INCLUDE_DIR = $(GNU_DIR)/target/usr/include/
CC = $(GNU_BIN)/ppc_82xx-gcc
CCC = $(GNU_BIN)/ppc_82xx-g++
# Override the -nostdinc flag, needed here...
CROSS_CPPFLAGS =

View File

@@ -2,38 +2,14 @@
#
# $Id$
#
# This file is maintained by the build community.
# Sites may override these definitions in CONFIG_SITE.linux-x86.linux-x86
# Definitions for linux-x86 host - linux-x86 target builds
# Sites may override these definitions in CONFIG_SITE.linux-x86.linux-x86
#-------------------------------------------------------
# Include definitions common to all Unix target archs
include $(CONFIG)/os/CONFIG.Common.UnixCommon
OS_CLASS = Linux
ARCH_CLASS = x86
# Include common gnu compiler definitions
include $(CONFIG)/CONFIG.gnuCommon
GNU_DIR = /usr
# Configure OS vendor C compiler
# These are overrides of ANSI and CPLUSPLUS values in CONFIG_SITE
# since OS vendor compilers is gnu compiler
ANSI=GCC
CPLUSPLUS=G++
# Configure gnu C compiler
GCC = gcc
G++ = g++
AR = ar -rc
ARFLAGS =
RANLIB = ranlib -t
# -D_BSD_SOURCE for gethostname() in unistd.h as needed by cacChannelIO.cpp.
ARCH_DEP_CPPFLAGS += -D_BSD_SOURCE
# IOCSH_USE_READLINE needed by iocsh/ioccrf.c
ARCH_DEP_CPPFLAGS += -DIOCSH_USE_READLINE
ARCH_DEP_CPPFLAGS += -D_X86_ -Dlinux
ARCH_DEP_LDFLAGS =
ARCH_DEP_LDLIBS = -lpthread -lreadline -lcurses -lrt
CC = $(GNU_BIN)/gcc
CCC = $(GNU_BIN)/g++

View File

@@ -6,26 +6,8 @@
# Sites may override these definitions in CONFIG_SITE.lynxos-x86.lynxos-x86
#-------------------------------------------------------
OS_CLASS = lynxos
ARCH_CLASS = x86
# Include common gnu compiler definitions
include $(CONFIG)/CONFIG.gnuCommon
GNU_DIR = /usr
# Configure OS vendor C compiler
# These are overrides of ANSI and CPLUSPLUS values in CONFIG_SITE
# since OS vendor compilers is gnu compiler
ANSI=GCC
CPLUSPLUS=G++
# Configure gnu C compiler
GCC = gcc
G++ = g++
AR = ar -rc
ARFLAGS =
RANLIB = ranlib -t
ARCH_DEP_CPPFLAGS += -D_X86_
ARCH_DEP_LDFLAGS =
ARCH_DEP_LDLIBS = -lposix4d9 -lpthread

View File

@@ -1,14 +1,14 @@
# CONFIG.solaris-sparc.Common
# CONFIG.osf-alpha.Common
#
# $Id$
# This file is maintained by the build community.
#
# Definitions for solaris-sparc host archs
# Sites may override these definitions in CONFIG_SITE.solaris-sparc.Common
# Definitions for osf-alpha host archs
# Sites may override these definitions in CONFIG_SITE.osf-alpha.Common
#-------------------------------------------------------
#Include definitions common to unix hosts
include $(CONFIG)/os/CONFIG.UnixCommon.Common
WIND_HOST_TYPE = sun4-solaris2
WIND_HOST_TYPE = osf-alpha

View File

@@ -1,72 +1,50 @@
# CONFIG.solaris-sparc.solaris-sparc
# CONFIG.osf-alpha.osf-alpha
#
# $Id$
# This file is maintained by the build community.
#
# Definitions for linux-x86 host archs
# Sites may override these definitions in CONFIG_SITE.solaris-sparc.solaris-sparc
# Definitions for osf-alpha host archs
# Sites may override these definitions in CONFIG_SITE.osf-alpha.osf-alpha
#-------------------------------------------------------
# Include definitions common to all Unix target archs
include $(CONFIG)/os/CONFIG.Common.UnixCommon
OS_CLASS = solaris
ARCH_CLASS = sparc
SPARCWORKS = /opt/SUNWspro
CC = cc
CCC = cxx
CPP = $(CC) -E
RANLIB =
AR = ar
LD = -r
# Configure OS vendor C compiler
ACC = $(SPARCWORKS)/bin/cc
ACC_CONFORM_CFLAGS_ANSI = -Xa
ACC_CONFORM_CFLAGS_STRICT = -Xc -v
ACC_CONFORM_CFLAGS_TRAD = -Xs
ACC_CODE_CFLAGS = -KPIC -D_REENTRANT
ACC_WARN_YES =
ACC_WARN_NO = -w
ACC_OPT_YES = -xO4
ACC_OPT_NO = -g
ACC_STATIC_LDFLAGS_YES= -Bstatic
ACC_STATIC_LDLIBS_YES= -lw -lintl -Bdynamic -ldl -lposix4 -lpthread -lthread -Bstatic -lXext -lX
ACC_STATIC_LDLIBS_NO= -lposix4 -lpthread -lthread
ACC_SHRLIB_LDFLAGS_YES = -G -h $@
ACC_POSIX_CPPFLAGS = -D_POSIX_C_SOURCE=199506L -D__EXTENSIONS__
CONFORM_CFLAGS_ANSI = -std
CONFORM_CFLAGS_STRICT = -std1
CONFORM_CFLAGS_TRAD = -std0
CODE_CFLAGS =
WARN_CFLAGS_YES =
WARN_CFLAGS_NO = -w
OPT_CFLAGS_YES = -O
OPT_CFLAGS_NO = -g
# Configure OS vendor C++ compiler
CCC = $(SPARCWORKS)/bin/CC
CCC_CONFORM_CFLAGS_NORMAL = +p
CCC_CONFORM_CFLAGS_STRICT = +p
CCC_CODE_CFLAGS = -KPIC -D_REENTRANT
CCC_TEMPL_INST_FLAG =
CCC_WARN_YES = +w
CCC_WARN_NO =
CCC_OPT_YES = -xO4
CCC_OPT_NO = -g
CCC_STATIC_LDFLAGS_YES= -Bstatic
CCC_STATIC_LDLIBS_YES= -lw -lintl -Bdynamic -ldl -lposix4 -lpthread -lthread -Bstatic -lXext -lX
CCC_STATIC_LDLIBS_NO=
CCC_SHRLIB_LDFLAGS_YES = -G -h $@
CCC_DEPENDS_FLAG = -xM1
CCC_POSIX_CPPFLAGS = -D_POSIX_C_SOURCE=199506L -D__EXTENSIONS__
CONFORM_CXXFLAGS_NORMAL =
CONFORM_CXXFLAGS_STRICT =
PROF_CXXFLAGS_YES = +p
PROF_CXXFLAGS_NO =
CODE_CXXFLAGS =
WARN_CXXFLAGS_YES =
WARN_CXXFLAGS_NO =
OPT_CXXFLAGS_YES = -O
OPT_CXXFLAGS_NO = -g
ACC_CPP = cpp
STATIC_LDFLAGS_YES= -Bstatic
STATIC_LDFLAGS_NO=
STATIC_LDLIBS_YES= -Bdynamic
STATIC_LDLIBS_NO=
#Configure gnu compiler
GCC = gcc
G++ = g++
GCC_CPP = $(GCC) -x c -E
SHRLIB_LDFLAGS_YES = -shared
GCC_POSIX_CPPFLAGS += -D__EXTENSIONS__
G++_POSIX_CPPFLAGS += -D__EXTENSIONS__
HDEPENDS_FLAGS_CMPLR =
RANLIB =
# required by sun's C++ compiler
AR = $(CCC) -xar -o
ARCH_DEP_CPPFLAGS =
ARCH_DEP_LDLIBS = -lposix4 -lpthread -lthread
# socket and nsl needed by libca.a
ARCH_DEP_LDLIBS += -lsocket -lnsl
# use loader's -R option
DEPLIB_LDFLAGS += $(sort $(DEPLIB_DIRS:%=-R%))
############# ???????????
#####ACC_SFLAGS_YES= -non_shared
#####ACC_SFLAGS_NO= -call_shared

View File

@@ -0,0 +1,12 @@
# CONFIG.solaris-sparc-gnu.Common
#
# $Id$
# This file is maintained by the build community.
#
# Definitions for solaris-sparc gnu compiler host builds
# Sites may override these definitions in CONFIG_SITE.solaris-sparc-gnu.Common
#-------------------------------------------------------
#Include definitions common to solaris-sparc hosts
include $(CONFIG)/os/CONFIG.solaris-sparc.Common

View File

@@ -0,0 +1,20 @@
# CONFIG.solaris-sparc-gnu.solaris-sparc-gnu
#
# $Id$
# This file is maintained by the build community.
#
# Definitions for solaris-sparc gnu compiler host - solaris-sparc gnu compiler target builds
# Sites may override these definitions in CONFIG_SITE.solaris-sparc-gnu.solaris-sparc-gnu
#-------------------------------------------------------
# Include common gnu compiler definitions
include $(CONFIG)/CONFIG.gnuCommon
GNU_DIR = /opt/gnu
CC = $(GNU_BIN)/gcc
CCC = $(GNU_BIN)/g++
AR = ar -rc
RANLIB=
LD = ld -r

View File

@@ -3,81 +3,54 @@
# $Id$
# This file is maintained by the build community.
#
# Definitions for linux-x86 host archs
# Definitions for solaris-sparc host - solaris-sparc target build
# Sites may override these definitions in CONFIG_SITE.solaris-sparc.solaris-sparc
#-------------------------------------------------------
# Include definitions common to all Unix target archs
include $(CONFIG)/os/CONFIG.Common.UnixCommon
OS_CLASS = solaris
ARCH_CLASS = sparc
SPARCWORKS = /opt/SUNWspro
CC = $(SPARCWORKS)/bin/cc
CCC = $(SPARCWORKS)/bin/CC
#CC = purify -max-threads=100 $(SPARCWORKS)/bin/cc
#CCC = purify -max-threads=100 $(SPARCWORKS)/bin/CC
# required by sun's C++ compiler
AR = $(CCC) -xar -o
LD = ld -r
CPP = gcc -x c -E
RANLIB =
#Prepare the object code for profiling with prof. (YES or NO)
PROFILE=YES
# Configure OS vendor C compiler
ACC = $(SPARCWORKS)/bin/cc
ACC_CONFORM_CFLAGS_ANSI = -Xa -v
ACC_CONFORM_CFLAGS_STRICT = -Xc -v
ACC_CONFORM_CFLAGS_TRAD = -Xs
ACC_PROF_CFLAGS_YES = +p
ACC_PROF_CFLAGS_NO =
ACC_CODE_CFLAGS = -KPIC -D_REENTRANT $(CCC_PROF_CFLAGS_$(PROFILE))
ACC_WARN_YES =
ACC_WARN_NO = -w
ACC_OPT_YES = -xO4
ACC_OPT_NO = -g
ACC_STATIC_LDFLAGS_YES= -Bstatic
ACC_STATIC_LDLIBS_YES= -lw -lintl -Bdynamic -ldl -lposix4 -lpthread -lthread -Bstatic -lXext -lX
ACC_STATIC_LDLIBS_NO= -lposix4 -lpthread -lthread
ACC_SHRLIB_LDFLAGS_YES = -G -h $@
ACC_POSIX_CPPFLAGS = -D_POSIX_C_SOURCE=199506L -D__EXTENSIONS__
CONFORM_CFLAGS_ANSI = -Xa -v
CONFORM_CFLAGS_STRICT = -Xc -v
CONFORM_CFLAGS_TRAD = -Xs
PROF_CFLAGS_YES = +p
PROF_CFLAGS_NO =
CODE_CFLAGS = -KPIC $(PROF_CFLAGS_$(PROFILE))
WARN_CFLAGS_YES =
WARN_CFLAGS_NO = -w
OPT_CFLAGS_YES = -xO4
OPT_CFLAGS_NO = -g
# Configure OS vendor C++ compiler
CCC = $(SPARCWORKS)/bin/CC
CCC_CONFORM_CFLAGS_NORMAL =
CCC_CONFORM_CFLAGS_STRICT =
CCC_PROF_CFLAGS_YES = +p
CCC_PROF_CFLAGS_NO =
CCC_CODE_CFLAGS = -KPIC -D_REENTRANT $(CCC_PROF_CFLAGS_$(PROFILE))
CCC_TEMPL_INST_FLAG =
CCC_WARN_YES = +w
CCC_WARN_NO =
CCC_OPT_YES = -O
CCC_OPT_NO = -g
CCC_STATIC_LDFLAGS_YES= -Bstatic
CCC_STATIC_LDLIBS_YES= -lw -lintl -Bdynamic -ldl -lposix4 -lpthread -lthread -Bstatic -lXext -lX
CCC_STATIC_LDLIBS_NO= -lposix4 -lpthread -lthread
CCC_SHRLIB_LDFLAGS_YES = -G -h $@
CCC_DEPENDS_FLAG = -xM1
CCC_POSIX_CPPFLAGS = -D_POSIX_C_SOURCE=199506L -D__EXTENSIONS_
CONFORM_CXXFLAGS_NORMAL =
CONFORM_CXXFLAGS_STRICT =
PROF_CXXFLAGS_YES = +p
PROF_CXXFLAGS_NO =
CODE_CXXFLAGS = -KPIC $(PROF_CXXFLAGS_$(PROFILE))
WARN_CXXFLAGS_YES = +w
WARN_CXXFLAGS_NO =
OPT_CXXFLAGS_YES = -O
OPT_CXXFLAGS_NO = -g
ACC_CPP = cpp
STATIC_LDFLAGS_YES= -Bstatic
STATIC_LDFLAGS_NO=
STATIC_LDLIBS_YES= -Bdynamic
STATIC_LDLIBS_NO=
#Configure gnu compiler
GCC = gcc
G++ = g++
GCC_CPP = $(GCC) -x c -E
SHRLIB_LDFLAGS_YES = -G -h $@
GCC_POSIX_CPPFLAGS += -D__EXTENSIONS__
G++_POSIX_CPPFLAGS += -D__EXTENSIONS__
GCC_STATIC_LDLIBS_YES= -lposix4
GCC_STATIC_LDLIBS_NO= -lposix4
G++_STATIC_LDLIBS_YES= -lposix4
G++_STATIC_LDLIBS_NO= -lposix4
RANLIB =
# required by sun's C++ compiler
AR = $(CCC) -xar -o
ARCH_DEP_CPPFLAGS = -DSOLARIS
# socket and nsl needed by libca.a
ARCH_DEP_LDLIBS += -lsocket -lnsl
# use loader's -R option
DEPLIB_LDFLAGS += $(sort $(DEPLIB_DIRS:%=-R%))
HDEPENDS_FLAGS_CMPLR = -xM1

View File

@@ -0,0 +1,12 @@
# CONFIG.solaris-x86-gnu.Common
#
# $Id$
# This file is maintained by the build community.
#
# Definitions for solaris-x86 gnu compiler host builds
# Sites may override these definitions in CONFIG_SITE.solaris-x86-gnu.Common
#-------------------------------------------------------
#Include definitions common to solaris-x86 hosts
include $(CONFIG)/os/CONFIG.solaris-x86.Common

View File

@@ -0,0 +1,19 @@
# CONFIG.solaris-x86-gnu.solaris-x86-gnu
#
# $Id$
# This file is maintained by the build community.
#
# Definitions for solaris-x86 gnu compiler host - solaris-x86 gnu compiler target builds
# Sites may override these definitions in CONFIG_SITE.solaris-x86-gnu.solaris-x86-gnu
#-------------------------------------------------------
# Include common gnu compiler definitions
include $(CONFIG)/CONFIG.gnuCommon
GNU_DIR = /opt/gnu
CC = $(GNU_BIN)/gcc
CCC = $(GNU_BIN)/g++
AR = ar -rc
RANLIB=
LD = ld -r

View File

@@ -3,7 +3,7 @@
# $Id$
# This file is maintained by the build community.
#
# Definitions for solaris-x86 host archs
# Definitions for solaris-x86 host builds
# Sites may override these definitions in CONFIG_SITE.solaris-x86.Common
#-------------------------------------------------------

View File

@@ -3,76 +3,55 @@
# $Id$
# This file is maintained by the build community.
#
# Definitions for linux-x86 host archs
# Definitions for solaris-x86 host - solaris-x86 target builds
# Sites may override these definitions in CONFIG_SITE.solaris-x86.solaris-x86
#-------------------------------------------------------
# Include definitions common to all Unix target archs
include $(CONFIG)/os/CONFIG.Common.UnixCommon
OS_CLASS = solaris
ARCH_CLASS = x86
SPARCWORKS = /opt/SUNWspro
CC = $(SPARCWORKS)/bin/cc
CCC = $(SPARCWORKS)/bin/CC
CPP = $(CC) -E
RANLIB =
# required by sun's C++ compiler
AR = $(CCC) -xar -o
LD = ld -r
#Prepare the object code for profiling with prof. (YES or NO)
PROFILE=YES
# Configure OS vendor C compiler
ACC = $(SPARCWORKS)/bin/cc
ACC_CONFORM_CFLAGS_ANSI = -Xa
ACC_CONFORM_CFLAGS_STRICT = -Xc -v
ACC_CONFORM_CFLAGS_TRAD = -Xs
ACC_PROF_CFLAGS_YES = +p
ACC_PROF_CFLAGS_NO =
ACC_CODE_CFLAGS = -KPIC -D_REENTRANT $(CCC_PROF_CFLAGS_$(PROFILE))
ACC_WARN_YES =
ACC_WARN_NO = -w
ACC_OPT_YES = -xO4
ACC_OPT_NO = -g
ACC_STATIC_LDFLAGS_YES= -Bstatic
ACC_STATIC_LDLIBS_YES= -lw -lintl -Bdynamic -ldl -lposix4 -lpthread -lthread -Bstatic -lXext -lX
ACC_STATIC_LDLIBS_NO= -lposix4 -lpthread -lthread
ACC_SHRLIB_LDFLAGS_YES = -G -h $@
ACC_POSIX_CPPFLAGS = -D_POSIX_C_SOURCE=199506L -D__EXTENSIONS__
CONFORM_CFLAGS_ANSI = -Xa -v
CONFORM_CFLAGS_STRICT = -Xc -v
CONFORM_CFLAGS_TRAD = -Xs
PROF_CFLAGS_YES = +p
PROF_CFLAGS_NO =
CODE_CFLAGS = -KPIC $(PROF_CFLAGS_$(PROFILE))
WARN_CFLAGS_YES =
WARN_CFLAGS_NO = -w
OPT_CFLAGS_YES = -xO4
OPT_CFLAGS_NO = -g
# Configure OS vendor C++ compiler
CCC = $(SPARCWORKS)/bin/CC
CCC_CONFORM_CFLAGS_NORMAL =
CCC_CONFORM_CFLAGS_STRICT =
CCC_PROF_CFLAGS_YES = +p
CCC_PROF_CFLAGS_NO =
CCC_CODE_CFLAGS = -KPIC -D_REENTRANT $(CCC_PROF_CFLAGS_$(PROFILE))
CCC_TEMPL_INST_FLAG =
CCC_WARN_YES = +w
CCC_WARN_NO =
CCC_OPT_YES = -O
CCC_OPT_NO = -g
CCC_STATIC_LDFLAGS_YES= -Bstatic
CCC_STATIC_LDLIBS_YES= -lw -lintl -Bdynamic -ldl -lposix4 -lpthread -lthread -Bstatic -lXext -lX
CCC_STATIC_LDLIBS_NO= -lposix4 -lpthread -lthread
CCC_SHRLIB_LDFLAGS_YES = -G -h $@
CCC_DEPENDS_FLAG = -xM1
CCC_POSIX_CPPFLAGS = -D_POSIX_C_SOURCE=199506L -D__EXTENSIONS_
CONFORM_CXXFLAGS_NORMAL =
CONFORM_CXXFLAGS_STRICT =
PROF_CXXFLAGS_YES = +p
PROF_CXXFLAGS_NO =
CODE_CXXFLAGS = -KPIC $(PROF_CXXFLAGS_$(PROFILE))
WARN_CXXFLAGS_YES = +w
WARN_CXXFLAGS_NO =
OPT_CXXFLAGS_YES = -O
OPT_CXXFLAGS_NO = -g
ACC_CPP = cpp
STATIC_LDFLAGS_YES= -Bstatic
STATIC_LDFLAGS_NO=
STATIC_LDLIBS_YES= -Bdynamic
STATIC_LDLIBS_NO=
#Configure gnu compiler
GCC = gcc
G++ = g++
GCC_CPP = $(GCC) -x c -E
SHRLIB_LDFLAGS_YES = -G -h $@
GCC_POSIX_CPPFLAGS += -D__EXTENSIONS__
G++_POSIX_CPPFLAGS += -D__EXTENSIONS__
RANLIB =
# required by sun's C++ compiler
AR = $(CCC) -xar -o
ARCH_DEP_CPPFLAGS = -DSOLARIS -D_X86_
# socket and nsl needed by libca.a
ARCH_DEP_LDLIBS += -lsocket -lnsl
# use loader's -R option
DEPLIB_LDFLAGS += $(sort $(DEPLIB_DIRS:%=-R%))
HDEPENDS_FLAGS_CMPLR = -xM1

View File

@@ -13,80 +13,38 @@ include $(CONFIG)/os/CONFIG.common.UnixCommon
OS_CLASS = sun4
ARCH_CLASS = 68k
CC = cc
CCC = CC
CPP = $(CC) -E
RANLIB = ranlib -t
# required by sun's C++ compiler
AR = $(CCC) -xar -o
LD = ld -r
# Configure OS vendor C compilers
ACC = /usr/lang/acc
ACC_CONFORM_CFLAGS_ANSI = -Xa
ACC_CONFORM_CFLAGS_STRICT = -Xc
ACC_CONFORM_CFLAGS_TRAD = -Xs
ACC_CODE_CFLAGS = -pic
ACC_WARN_YES = -vc
ACC_WARN_NO = -w
ACC_OPT_YES = -O
ACC_OPT_NO = -g
ACC_STATIC_CFLAGS_YES= -Bstatic
ACC_STATIC_CFLAGS_NO=
ACC_STATIC_LDLIBS_YES=
ACC_STATIC_LDLIBS_NO=
#ACC_OP_SYS_LDFLAGS = -L$(SPECIAL_LANG)
ACC_SHRLIB_LDFLAGS_YES = -assert pure-text -h $@
CONFORM_CFLAGS_ANSI = -Xa
CONFORM_CFLAGS_STRICT = -Xc
CONFORM_CFLAGS_TRAD = -Xs
CODE_CFLAGS = -pic
WARN_CFLAGS_YES = -vc
WARN_CFLAGS_NO = -w
OPT_CFLAGS_YES = -O
OPT_CFLAGS_NO = -g
SUNCC = cc
SUNCC_CONFORM_CFLAGS_NORMAL = echo SUNCC_ANSI not defined
SUNCC_CONFORM_CFLAGS_STRICT = echo SUNCC_STRICT not defined
SUNCC_CMPLR_TRAD = $(SUNCC)
SUNCC_CODE_CFLAGS = -pic
SUNCC_WARN_YES =
SUNCC_WARN_NO = -w
SUNCC_OPT_YES = -O
SUNCC_OPT_NO = -g
SUNCC_STATIC_CFLAGS_YES= -Bstatic
SUNCC_STATIC_CFLAGS_NO=
SUNCC_STATIC_LDLIBS_YES=
SUNCC_STATIC_LDLIBS_NO=
SUNCC_SHRLIB_LDFLAGS_YES = -assert pure-text -h $@
CONFORM_CXXFLAGS_NORMAL =
CONFORM_CXXFLAGS_STRICT =
CONFORM_CXXFLAGS_TRAD =
CODE_CXXFLAGS = -pic
WARN_CXXFLAGS_YES =
WARN_CXXFLAGS_NO = -w
OPT_CXXFLAGS_YES = -O
OPT_CXXFLAGS_NO = -g
# Configure OS vendor C++ compiler
CCC = /usr/lang/CC
CCC_CONFORM_CFLAGS_NORMAL =
CCC_CONFORM_CFLAGS_STRICT =
CCC_TEMPL_INST_FLAG =
CCC_CODE_CFLAGS = -pic
CCC_WARN_YES =
CCC_WARN_NO =
CCC_TEMPL_INST_FLAG =
CCC_WARN_YES = +w
CCC_WARN_NO =
CCC_OPT_YES = -O
CCC_OPT_NO = -g
CCC_STATIC_CFLAGS_YES= -Bstatic
CCC_STATIC_CFLAGS_NO=
CCC_STATIC_LDLIBS_YES=
CCC_STATIC_LDLIBS_NO=
CCC_DEPENDS_FLAG = -xM1
CCC_SHRLIB_LDFLAGS_YES = -assert pure-text -h $@
STATIC_LDFLAGS_YES= -Bstatic
STATIC_LDFLAGS_NO=
STATIC_LDLIBS_YES= -Bdynamic
STATIC_LDLIBS_NO=
ACC_CPP = cpp
SHRLIB_LDFLAGS_YES = -assert pure-text -h $@
#Configure gnu compiler
GCC = gcc
G++ = g++
GCC_CPP = $(GCC) -x c -E
GCC_ANSI += -D__USE_FIXED_PROTOTYPES__
GCC_STRICT += -D__USE_FIXED_PROTOTYPES__
ACC_ARCH_DEP_LDLIBS =
GCC_ARCH_DEP_LDLIBS = -liberty
ARCH_DEP_LDLIBS = $($(ANSI)_ARCH_DEP_LDLIBS) -lposix4 -lpthread -lthread
ARCH_DEP_CPPFLAGS = -DSUNOS4
ARCH_DEP_CFLAGS =
#SPECIAL_LANG = /usr/lang/SC3.0.1
#SPECIAL_LANG = /usr/lang/lib
HDEPENDS_FLAGS_CMPLR = -xM1

View File

@@ -3,7 +3,7 @@
# $Id$
# This file is maintained by the build community.
#
# Definitions for win32-x86 borland compiler host archs
# Definitions for win32-x86-borland host archs
# Sites may override these definitions in CONFIG_SITE.win32-x86-borland.Common
#-------------------------------------------------------

View File

@@ -3,7 +3,7 @@
# $Id$
# This file is maintained by the build community.
#
# Definitions for win32-x86 target arch when host arch is win32-x86 with borland compiler
# Definitions for win32-x86-borland target arch when host arch is win32-x86-borland
# Sites may override these definitions in CONFIG_SITE.win32-x86-borland.win32-x86-borland
#-------------------------------------------------------
@@ -20,13 +20,6 @@ BORLAND_BIN = $(BORLAND)\\bin
# Use std path variables from ms
HOME = $(HOMEDRIVE)$(HOMEPATH)
#
# You currently get Visual C++ even if you ask for GNU.
#
# !! borlund support needed here !!
#
ANSI = ACC
CPLUSPLUS = CCC
#
# "\ " forces gnu make to keep this as one token
@@ -50,7 +43,8 @@ ARCMD = $(BORLAND_BIN)/tlib $@ $(foreach lib,$(LIBRARY_LD_OBJS),+$(lib))
# -D_WIN32 macro defined to be consistant with Microsoft Visual C++
# -D_RTLDLL macro defined to use Borland C++ RTL library
CCLINKOPT = -q -tWM -tWD -a8 -D_WIN32 -D_RTLDLL
ACC = $(BORLAND_BIN)/bcc32 $(CCLINKOPT)
CC = $(BORLAND_BIN)/bcc32 $(CCLINKOPT)
LD = $(BORLAND_BIN)/bcc32 -r
#
# __STDC__=0 works but not as cleanly as with
@@ -60,13 +54,13 @@ ACC = $(BORLAND_BIN)/bcc32 $(CCLINKOPT)
# by defining NO_BORLAND_STDC in the Makefile.
#
ifdef NO_BORLAND_STDC
ACC_CONFORM_CFLAGS_ANSI =
ACC_CONFORM_CFLAGS_STRICT =
CONFORM_CFLAGS_ANSI =
CONFORM_CFLAGS_STRICT =
else
ACC_CONFORM_CFLAGS_ANSI = -D__STDC__=0
ACC_CONFORM_CFLAGS_STRICT = -D__STDC__=0
CONFORM_CFLAGS_ANSI = -D__STDC__=0
CONFORM_CFLAGS_STRICT = -D__STDC__=0
endif
ACC_CONFORM_CFLAGS_TRAD =
CONFORM_CFLAGS_TRAD =
# -w display warnings on
# -g0 no limit to warning messages
@@ -75,9 +69,9 @@ ACC_CONFORM_CFLAGS_TRAD =
# -w-8012 Comparing signed and unsigned values
# -w-8060 Possibly incorrect assignment
# -w-8071 Conversion may lose significant digits
ACC_WARN_YES = -w -g0 -w-8012 -w-8060 -w-8071
WARN_CFLAGS_YES = -w -g0 -w-8012 -w-8060 -w-8071
# -w- display warnings off
ACC_WARN_NO = -w-
WARN_CFLAGS_NO = -w-
#
# -k- turn off standard stack frame
@@ -86,19 +80,13 @@ ACC_WARN_NO = -w-
# -O1 optimization for size
# -v- turn off source debugging
# -vi control expansion of inline functions
ACC_OPT_YES = -k- -H- -R- -O1 -v- -vi
OPT_CFLAGS_YES = -k- -H- -R- -O1 -v- -vi
#
ACC_OPT_NO =
#
# no special libs for static link
#
ACC_STATIC_LDLIBS_YES=
ACC_STATIC_LDLIBS_NO=
OPT_CFLAGS_NO =
# OS vendor c preprocessor
##############ACC_CPP = $(BORLAND_BIN)/cl /E
CPP = $(BORLAND_BIN)/cl /E
# Configure OS vendor C++ compiler
#
@@ -109,23 +97,31 @@ ACC_STATIC_LDLIBS_NO=
# by defining NO_BORLAND_STDC in the Makefile.
#
CCC = $(BORLAND_BIN)/bcc32 $(CCLINKOPT)
ifdef NO_BORLAND_STDC
CCC_NORMAL = $(CCC)
CCC_STRICT = $(CCC)
else
CCC_CONFORM_CFLAGS_NORMAL = -D__STDC__=0
CCC_CONFORM_CFLAGS_STRICT = -D__STDC__=0
ifndef NO_BORLAND_STDC
CONFORM_CXXFLAGS_NORMAL = -D__STDC__=0
CONFORM_CXXFLAGS_STRICT = -D__STDC__=0
endif
CCC_TEMPL_INST_FLAG =
# -w display warnings on
# -g0 no limit to warning messages
# -w-8012 Comparing signed and unsigned values
# -w-8060 Possibly incorrect assignment
# -w-8071 Conversion may lose significant digits
CCC_WARN_YES = -w -g0 -w-8012 -w-8060 -w-8071
# -w-8008 Condition is always true or always false (compile time
# know template parameters causes this to spew garbage)
# -w-8027 Functions containing reserved words are not expanded inline
# (Some compilers are better than others with inline)
# -w-8066 Unreachable code (compile time know template parameters
# causes this to spew garbage)
# -w-8080 'identifier' declared but never used
# (instantiating unused static const external parameters is
# anachronistic compiler practice)
# -w-8004 'identifier' is assigned a value that is never used
# (compile time know template parameters
# causes this to spew garbage)
WARN_CXXFLAGS_YES = -w -g0 -w-8012 -w-8060 -w-8071 -w-8008 -w-8027 -w-8066 -w-8080 -w-8004
# -w- display warnings off
CCC_WARN_NO = -w-
WARN_CXXFLAGS_NO = -w-
#
# -k- turn off standard stack frame
@@ -134,16 +130,16 @@ CCC_WARN_NO = -w-
# -O1 optimization for size
# -v- turn off source debugging
# -vi control expansion of inline functions
CCC_OPT_YES = -k- -H- -R- -O1 -v- -vi
OPT_CXXFLAGS_YES = -k- -H- -R- -O1 -v- -vi
#
CCC_OPT_NO =
OPT_CXXFLAGS_NO =
#
# no special libs for static link
#
CCC_STATIC_LDLIBS_YES=
CCC_STATIC_LDLIBS_NO=
STATIC_LDLIBS_YES=
STATIC_LDLIBS_NO=
PROD_VERSION=3.13
# -c case sensitive linking
@@ -158,7 +154,6 @@ LINK_OPT_FLAGS_NO = -c -C -Gi -Gn -Tpd -x -w-
WIN32_DLLFLAGS = $(LINK_OPT_FLAGS_$(HOST_OPT))
OPT_LDFLAGS =
ARCH_DEP_CFLAGS=
# to identify the general architecture class:
@@ -194,19 +189,8 @@ OP_SYS_LDLIBS =
#
# specify dll .def file only if it exists
#
#DLL_DEF_FLAG = $(addprefix /def:,$(wildcard ../$(LIBRARY).def))
DLL_DEF_FLAG = $(subst /,\\,$(wildcard ../$(LIBRARY).def))
# HOST_OPT_FLAGS is part of CFLAGS/CXXFLAGS,
# which in turn are used in COMPILE.c[c]
#
# If we compile a .c, .cc into an $(OBJ),
# we test if this object is part of the
# library objects LIBRARY_LD_OBJS.
# If so, we define _WINDLL so that
# e.g. include/shareLib.h works correctly.
#
HOST_OPT_FLAGS += $(subst $@, /_WINDLL, $(findstring $@,$(LIBRARY_LD_OBJS)))
#DLL_DEF_FLAG = $(addprefix /def:,$(wildcard ../$(addsuffix .def,$(LIBRARY))))
DLL_DEF_FLAG = $(subst /,\\,$(wildcard ../$(addsuffix .def,$(LIBRARY))))
#
# A WIN32 dll has three parts:
@@ -215,7 +199,8 @@ HOST_OPT_FLAGS += $(subst $@, /_WINDLL, $(findstring $@,$(LIBRARY_LD_OBJS)))
# x.exp: what you need to build the dll (in no variable)
#
LINK.shrlib = $(WINLINK) $(WIN32_DLLFLAGS) -L$(BORLAND_LIB) -L$(BORLAND_LIB)\\Psdk c0d32.obj
LINK.shrlib+= $(LIBRARY_LD_OBJS) , $@ ,,$(LINKLIBS) $(subst /,\\,$(SHRLIB_LDLIBS))
LINK.shrlib+= $(LIBRARY_LD_OBJS) , $@ ,,$(LINKLIBS) $(subst /,\\,$(SHRLIB_LDLIBS)),
LINK.shrlib+= $(DLL_DEF_FLAG),$(LIBRARY_LD_RESS)
# adjust names of libraries to build
@@ -224,7 +209,7 @@ LINK.shrlib+= $(LIBRARY_LD_OBJS) , $@ ,,$(LINKLIBS) $(subst /,\\,$(SHRLIB_LDLIB
# in this library (may be for e.g. base/src/libCompat
# on some archs), don't define (and build) any library!
SHRLIB_SUFFIX=.dll
SHRLIBNAME = $(BUILD_LIBRARY:%=%$(SHRLIB_SUFFIX))
SHRLIBNAME_YES = $(BUILD_LIBRARY:%=%$(SHRLIB_SUFFIX))
#
@@ -252,7 +237,7 @@ OBJECT_LIB_EXT = $(OBJECT_LIB_EXT_$(STATIC_BUILD))
#--------------------------------------------------
# Products dependancy definitions
PROD_DEPLIBS = $(foreach lib,$(PROD_LIBS) $(USR_LIBS),$(firstword \
PROD_DEPLIBS = $(foreach lib,$(PROD_LDLIBS) $(USR_LDLIBS),$(firstword \
$($(lib)_DIR)/$(lib)$(OBJECT_LIB_EXT)))
DEPLIB_LDLIBS = $($*_DEPLIBS) $(PROD_DEPLIBS) \
$($*_SYS_LIBS:%=%.lib) $(SYS_PROD_LIBS:%=%.lib)
@@ -281,7 +266,7 @@ LDFLAGS += -c -C -Gn -Tpe -x -w -L$(BORLAND_LIB) -L$(BORLAND_LIB)\\Psdk
LINKSTARTUP = c0x32.obj
LINKLIBS=import32.lib cw32$(LIBSUF).lib
LINK.cpp = $(WINLINK) $(LDFLAGS) $(LINKSTARTUP) $(PROD_LD_OBJS)
LINK.cpp = $(WINLINK) $(LDFLAGS) $(LINKSTARTUP) $(subst /,\\,$(PROD_LD_OBJS))
LINK.cpp += , $@ ,,$(LINKLIBS) $(subst /,\\,$(LDLIBS))
#--------------------------------------------------
@@ -289,3 +274,13 @@ LINK.cpp += , $@ ,,$(LINKLIBS) $(subst /,\\,$(LDLIBS))
# override of CONFIG_SITE default
SHARED_LIBRARIES = YES
# gnu compiler used to create depends files
HDEPENDS_FLAGS_CMPLR = -MM
HDEPENDS.c_CMPLR = gcc
HDEPENDS.cpp_CMPLR = g++
# override of CONFIG_COMMON
HDEPENDS_INCLUDES_MKMF = $(filter-out $(BORLAND_INC),$(subst -I,,$(INCLUDES)))
# override of CONFIG_SITE
HOST_HDEPENDS_CMD=MKMF

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