Compare commits

..

642 Commits

Author SHA1 Message Date
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
524 changed files with 23706 additions and 20562 deletions

View File

@@ -35,7 +35,7 @@ To build only for WIN32 and not cross compile for IOC development type
To compile EPICS on WIN32, 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:
@@ -192,3 +192,8 @@ 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) When compiling applications that link with EPICS base you will need to
include from <epics>\base\include, include from <epics>\base\include\os\win32,
and augment the link path with <epics>\base\lib\win32-x86. If the visual C++
/Za option is not used then you will also need to define __STDC__ to be zero
on the command line.

1632
README.htm

File diff suppressed because it is too large Load Diff

View File

@@ -2,15 +2,175 @@
<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.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>
@@ -33,7 +193,8 @@ 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- 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,10 @@ SHRLIB_SUFFIX = .so
SHRLIBNAME = lib$(LIBRARY)$(SHRLIB_SUFFIX)$(SHRLIB_VERSION:%=.%)
DLL_LDLIBS = $(PRODNAME_LIBS:%=-l%) $(PROD_LIBS:%=-l%) $(USR_LIBS:%=-l%)
#For backward compatability only
DLL_LIBS = $(subst $(LIBRARY),, $(PROD_LIBS))
DLL_LDLIBS = $(PRODNAME_LIBS:%=-l%) $(DLL_LIBS:%=-l%)
INSTALL_SHRLIB = $(INSTALL_LIB)
@@ -61,7 +64,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

@@ -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

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

@@ -11,10 +11,16 @@ EPICS_VERSION=3
EPICS_REVISION=14
EPICS_MODIFICATION=0
EPICS_UPDATE_NAME=alpha
EPICS_UPDATE_LEVEL=1
EPICS_UPDATE_LEVEL=2
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

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
@@ -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

@@ -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_OS_CLASS)/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)
@@ -532,6 +535,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 +557,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 +577,10 @@ endif
@$(RM) $@
$(COMPILE.cc) $<
%$(OBJ): %.cpp
@$(RM) $@
$(COMPILE.cc) $<
%$(OBJ): %.C
@$(RM) $@
$(COMPILE.cc) $<

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,22 @@
# 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
CROSS_CPPFLAGS = -nostdinc
CROSS_CFLAGS = -B$(GNU_LIB)/gcc-lib/
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,46 @@
#--------------------------------------------------
# GNU compiler defaults
GNU_BIN = $(GNU_DIR)/bin
GNU_LIB = $(GNU_DIR)/lib
export GCC_EXEC_PREFIX = $(GNU_LIB)/gcc-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
# Template instantiation c++ flags
TEMPL_INST_CXXFLAG = -DEXPL_TEMPL
CODE_CXXFLAGS = -fPIC
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 =
DEPENDS_FLAG = -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
@@ -192,6 +210,14 @@ PROD_LIBS += $(PROD_LIBS_DEFAULT)
endif
endif
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)))
else
@@ -255,14 +281,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

@@ -21,6 +21,9 @@ As_DIR = $(EPICS_BASE_LIB)
ca_DIR = $(EPICS_BASE_LIB)
cas_DIR = $(EPICS_BASE_LIB)
Com_DIR = $(EPICS_BASE_LIB)
dbtoolsIoc_DIR = $(EPICS_BASE_LIB)
iocsh_DIR = $(EPICS_BASE_LIB)
miscIoc_DIR = $(EPICS_BASE_LIB)
rsrvIoc_DIR = $(EPICS_BASE_LIB)
registryIoc_DIR = $(EPICS_BASE_LIB)
asHost_DIR = $(EPICS_BASE_LIB)
@@ -34,12 +37,11 @@ gdd_DIR = $(EPICS_BASE_LIB)
# For applications and extensions
# add epics/base include directories
ifneq ($(EPICS_BASE),$(TOP))
ifneq ($(EPICS_BASE),$(INSTALL_LOCATION))
ifneq ($(strip $(EPICS_BASE)),$(strip $(TOP)))
ifneq ($(strip $(EPICS_BASE)),$(strip $(INSTALL_LOCATION)))
INSTALL_INCLUDES += \
-I$(EPICS_BASE_INCLUDE)/os/$(OS_CLASS) \
-I$(EPICS_BASE_INCLUDE)
endif
endif
@@ -69,17 +71,30 @@ 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)
MAKEDBDEPENDS = $(PERL) $(TOOLS)/makeDbDepends.pl
MAKEDBDDEPENDS = $(EPICS_BASE_HOST_BIN)/dbMakeDBDDepends$(HOSTEXE)
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
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
# adl2dl
ADL2DL = $(EPICS_EXTENSIONS_HOST_BIN)/adl2dl
ifndef ADL2DL
# Tool from R3.14 extensions bin, R3.13 extensions bin, or user path
ADL2DL = $(firstword $(wildcard $(EPICS_EXTENSIONS_HOST_BIN)/adl2dl \
$(EPICS_EXTENSIONS)/bin/$(HOST_OS_CLASS)/adl2dl) adl2dl)
endif
# sch2edif compiler and flags
SCH2EDIF = sch2edif
@@ -89,10 +104,26 @@ SCH2EDIF_FLAGS =
# e2db and flags
# - again there is an assumption where edb.def is installed.
E2DB = $(EPICS_EXTENSIONS_HOST_BIN)/e2db
ifndef E2DB
# Tool from R3.14 extensions bin, R3.13 extensions bin, or user path
E2DB = $(firstword $(wildcard $(EPICS_EXTENSIONS_HOST_BIN)/e2db \
$(EPICS_EXTENSIONS)/bin/$(HOST_OS_CLASS)/e2db) e2db)
endif
E2DB_SYSFLAGS = -ate -d $(EPICS_EXTENSIONS)/templates/capfast/edb.def
E2DB_FLAGS =
#dbst
DBST = $(EPICS_EXTENSIONS_HOST_BIN)/dbst
ifndef DBST
# Tool from R3.14 extensions bin, R3.13 extensions bin, or user path
DBST = $(firstword $(wildcard $(EPICS_EXTENSIONS_HOST_BIN)/dbst \
$(EPICS_EXTENSIONS)/bin/$(HOST_OS_CLASS)/dbst) dbst)
endif
#msi
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_OS_CLASS)/msi$(HOSTEXE)) msi$(HOSTEXE))
endif

View File

@@ -11,7 +11,7 @@ EPICS_VERSION=3
EPICS_REVISION=14
EPICS_MODIFICATION=0
EPICS_UPDATE_NAME=alpha
EPICS_UPDATE_LEVEL=1
EPICS_UPDATE_LEVEL=2
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,13 +14,18 @@
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
#-------------------------------------------------------
# Cross compile default, HOST or CROSS, CONFIG.crossCommon will override
BUILD_CLASS = HOST
#-------------------------------------------------------
@@ -61,6 +66,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 +76,39 @@ 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) .., \
$(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))
#---------------------------------------------------------------
# Directory targets
DIRECTORY_TARGETS += $(INSTALL_DBD) $(INSTALL_INCLUDE)
OBJSNAME = $(addsuffix $(OBJ),$(basename $(OBJS)))
PRODNAME = $(addsuffix $(EXE),$(basename $(PROD)))
TESTPRODNAME = $(addsuffix $(EXE),$(basename $(TESTPROD)))
#--------------------------------------------------
# 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 +121,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 +136,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 =
@@ -219,91 +162,86 @@ TARGET_CXXFLAGS = $($(basename $@)_CXXFLAGS) $($(basename $@)_CXXFLAGS_$(OS_CLAS
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))
# 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_CFLAGS = $(CONFORM_CFLAGS_$(CMPLR))
CONFORM_CXXFLAGS = $(CONFORM_CXXFLAGS_$(CMPLR))
# Warnings flags
WARN_CFLAGS = $($(ANSI)_WARN_$($(BUILD_CLASS)_WARN))
WARN_CXXFLAGS = $($(CPLUSPLUS)_WARN_$($(BUILD_CLASS)_WARN))
WARN_CFLAGS = $(WARN_CFLAGS_$($(BUILD_CLASS)_WARN))
WARN_CXXFLAGS = $(WARN_CXXFLAGS_$($(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_$($(BUILD_CLASS)_OPT))
OPT_CXXFLAGS = $(OPT_CXXFLAGS_$($(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) $(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)\
$(TEMPL_INST_CXXFLAG) $(CROSS_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 = $(TARGET_LDLIBS) $(USR_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 += $(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) , \
# Build depends command here
DEPENDS.cpp = $(CCC)
DEPENDSFLAGS += $(CPPFLAGS) $(INCLUDES) $(DEPENDS_FLAG)
DEPENDS_CMD.cpp = -$(DEPENDS.cpp) $(DEPENDSFLAGS) $(DEPENDS_SRC_FILES) > DEPENDS
#--------------------------------------------------
# depends definition
TARGET_SRCS = $(foreach name, $(TESTPROD) $(PROD) $(LIBRARY), $($(name)_SRCS))
SRC_FILES = $(foreach src, $(LIB_SRCS) $(LIBSRCS) $(SRCS) $(PROD_SRCS) $(TARGET_SRCS) , \
$(firstword $(wildcard $(addsuffix /$(src),$(ALL_SRC_DIRS))) $(src)))
DEPENDS_RULE = -$(COMPILE.cpp) $(DEPENDS_FLAG) $(SRC_FILES) > DEPENDS
DEPENDS_SRC_FILES = $(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
@@ -318,8 +256,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 +263,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 +303,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

@@ -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,10 +38,17 @@
# vxWorks-68040lc
# vxWorks-68060
# vxWorks-pentium
# vxWorks-ppc603
# vxWorks-ppc604
# RTEMS-gen68360
# RTEMS-mvme167
# RTEMS-pc386
#
# 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
@@ -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
@@ -78,8 +79,8 @@ CXXCMPLR=STRICT
# NOTE WIN32: YES results in a DLL. CONFIG_SITE.Host.WIN32
# distribution file contains YES override
#
# NOTE solaris and sun4: If YES then LD_LIBRARY_PATH must
# 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
@@ -102,3 +103,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

@@ -1,177 +1,256 @@
#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)
##################################################### dbdflags
# dbExpand
INSTALL_DBDFLAGS += -I $(INSTALL_LOCATION)/dbd
DBDFLAGS = $(USR_DBDFLAGS) -I . -I .. $(INSTALL_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 += $(DBD:%= $(INSTALL_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
#####################################################
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 depends 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
##################################################### build dependancies, clean rule
depends:
inc : $(COMMON_INC) $(INSTALL_INC)
build : $(COMMON_DBDS) $(COMMON_DBS) \
$(INSTALL_DBDS) $(INSTALL_DBS)
clean::
@$(RM) $(COMMONS)
@$(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)
#$(COMMON_DIR)/%.substitutions: ../%.substitutions $(COMMON_DIR)/%.template
# @$(CP) $< $@
%.substitutions: ../%.substitutions %.template
@$(CP) $< $@
# WARNING: CREATESUBSTITUTIONS script need 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)
#$(COMMON_DIR)/%.template: ../%.template
# @$(CP) $< $@
%.template: ../%.template
@$(CP) $< $@
%.template:
$(COMMON_DIR)/%.template:
@$(TOUCH) $@
%.template: %.edf
$(COMMON_DIR)/%.template: $(COMMON_DIR)/%.edf
$(E2DB) $(E2DB_SYSFLAGS) $(E2DB_FLAGS) -n $@.VAR $<
@$(REPLACEVAR) < $@.VAR > $@
@$(RM) $@.VAR
##################################################### Flat databases
%.db.raw: ../%.db
$(CP) $< $@
%.db.raw: %.edf
$(COMMON_DIR)/%.template: ../%.edf
$(E2DB) $(E2DB_SYSFLAGS) $(E2DB_FLAGS) -n $@.VAR $<
@$(REPLACEVAR) < $@.VAR > $@
@$(RM) $@.VAR
##################################################### DBD stuff
.PRECIOUS: $(DB:%.db=$(COMMON_DIR)/%.template)
$(INSTALL_DBD)/%: %
@echo "Installing $@"
@$(INSTALL) -d -m 644 $< $(@D)
##################################################### INC files
$(INSTALL_DBD)/%: ../%
@echo "Installing $@"
@$(INSTALL) -d -m 644 $< $(@D)
$(COMMON_DIR)/%Record.h: ../%Record.dbd
@$(RM) $@
$(DBTORECORDTYPEH) $(DBDFLAGS) $< $@
$(COMMON_DIR)/menu%.h: ../menu%.dbd
@$(RM) $@
$(DBTOMENUH) $< $@
##################################################### DBD files
$(INSTALL_DBD)/bpt%.dbd: ../bpt%.data
$(COMMON_DIR)/bpt%.dbd: ../bpt%.data
$(RM) $@
$(MAKEBPT) $< $@
ifdef DBDEXPAND
$(INSTALL_DBD)/$(DBDNAME): $(addprefix ../,$(DBDEXPAND))
$(COMMON_DIR)/bpt%.dbd: bpt%.data
$(RM) $@
$(MAKEBPT) $< $@
$(COMMON_DIR)/%.dbd: ../%Include.dbd
@echo "Expanding dbd"
$(RM) $@
$(DBEXPAND) $(DBDFLAGS) $< > $@
$(COMMON_DIR)/%.dbd: %Include.dbd
@echo "Expanding dbd"
$(RM) $@
$(DBEXPAND) $(DBDFLAGS) $< > $@
$(INSTALL_DBD)/%: $(COMMON_DIR)/%
@echo "Installing dbd file $@"
@$(INSTALL) -d -m 644 $< $(@D)
$(INSTALL_DBD)/%: ../%
@echo "Installing dbd file $@"
@$(INSTALL) -d -m 644 $< $(@D)
.PRECIOUS: $(COMMON_DBDS)
##################################################### DB files
$(COMMON_DIR)/%.db$(RAW): ../%.db
$(CP) $< $@
$(COMMON_DIR)/%.db$(RAW): $(COMMON_DIR)/%.edf
$(E2DB) $(E2DB_SYSFLAGS) $(E2DB_FLAGS) -n $@.VAR $<
@$(REPLACEVAR) < $@.VAR > $@
@$(RM) $@.VAR
$(COMMON_DIR)/%.db$(RAW): ../%.edf
$(E2DB) $(E2DB_SYSFLAGS) $(E2DB_FLAGS) -n $@.VAR $<
@$(REPLACEVAR) < $@.VAR > $@
@$(RM) $@.VAR
$(COMMON_DIR)/%.db$(RAW): %.substitutions %.template
@echo "Inflating database from $<"
@$(RM) $@
$(DBEXPAND) $(USR_DBDFLAGS) $^ > $@
$(MSI) -S $^ > $@
# dbst based database optimization
ifeq '$(DB_OPT)' 'YES'
$(COMMON_DIR)/%.db: $(COMMON_DIR)/%.db$(RAW)
@echo "Optimizing database $@"
$(DBST) . $< -d > $@
RAW=.raw
.PRECIOUS: $(DB:%=$(COMMON_DIR)/%$(RAW))
else
$(INSTALL_DB)/%: %
@echo "Installing db file $@"
@$(INSTALL) -d -m 644 $< $(@D)
endif
##################################################### Dependencies
$(INSTALL_DB)/%: $(COMMON_DIR)/%
@echo "Installing db file $@"
@$(INSTALL) -d -m 644 $< $(@D)
DEPENDS: $(filter $(patsubst %.db, ../%.substitutions, $(DB)), $(wildcard ../*.substitutions))
.PRECIOUS: $(COMMON_DBS)
##################################################### register record,device,driver support
%_registerRecordDeviceDriver.cpp: $(COMMON_DIR)/%.dbd
$(RM) $@
$(REGISTERRECORDDEVICEDRIVER) $< > $@
%_registerRecordDeviceDriver.cpp: ../%.dbd
$(RM) $@
$(REGISTERRECORDDEVICEDRIVER) $< > $@
##################################################### DB dependancies
ifneq (,$(COMMON_DBS))
DBDEPENDS: $(COMMON_DBS:$(COMMON_DIR)/%.db=%.substitutions) $(COMMON_DBS:$(COMMON_DIR)/%.db=%.template)
@echo 'Creating DB dependancy file $@'
@echo "Making template database dependencies"
@$(MAKEDBDEPENDS) $^
-include DEPENDS
-include DBDEPENDS
endif
##################################################### DBD dependancies
ifneq (,$(wildcard $(patsubst %.dbd,../%Include.dbd,$(notdir $(COMMON_DBDS)))))
DBDDEPENDS_%: ../%Include.dbd
@echo 'Creating DBD dependancy file $@'
@$(RM) $@
$(MAKEDBDDEPENDS) $(DBDFLAGS) $(COMMON_DIR)/$*.dbd $< > $@
-include $(patsubst ../%Include.dbd,DBDDEPENDS_%,$(wildcard $(patsubst %.dbd,../%Include.dbd,$(notdir $(COMMON_DBDS)))))
endif
##################################################### END OF FILE

View File

@@ -21,7 +21,7 @@ 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.%
@@ -29,14 +29,17 @@ $(BUILD_ARCHS) : % : O.%
$(ACTIONS):%: $(foreach arch, $(BUILD_ARCHS), %$(DIVIDER)$(arch))
$(buildDirs) :
$(buildDirs):
$(PERL) $(TOOLS)/makeMakefile.pl $@ $(TOP)/..
O.Common:
$(MKDIR) O.Common
#
# special clean rule
#
clean ::
$(RMDIR) $(addprefix O.,$(BUILD_ARCHS))
$(RMDIR) $(addprefix O.,$(BUILD_ARCHS)) O.Common
clean$(DIVIDER)% ::
$(RMDIR) O.$*

View File

@@ -28,8 +28,6 @@
# 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
vpath %.c $(USR_VPATH) $(ALL_SRC_DIRS)
vpath %.cc $(USR_VPATH) $(ALL_SRC_DIRS)
vpath %.cpp $(USR_VPATH) $(ALL_SRC_DIRS)
@@ -43,25 +41,25 @@ vpath %.skel.static $(USR_VPATH) $(GENERIC_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)
ifneq ($(findstring Ioc,$(VALID_BUILDS)),Ioc)
LIBRARY = $(LIBRARY_$(OS_CLASS))
OBJS = $(OBJS_$(OS_CLASS))
endif
endif
ifeq ($(findstring Ioc,$(VALID_BUILDS)),Ioc)
LIBRARY += $(LIBRARY_IOC)
OBJS += $(OBJS_IOC)
else
LIBRARY_IOC =
endif
#---------------------------------------------------------------
ifdef TEMPLATES_DIR
@@ -78,21 +76,22 @@ all: install
#---------------------------------------------------------------
# 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
#---------------------------------------------------------------
# Libraries
#
LIBTARGETS += $(LIBNAME) $(MUNCHNAME)
LIBTARGETS += $(LIBNAME)
LIBTARGETS += $(MUNCHNAME) $(LIBRARY_CTDT_SRCS) $(LIBRARY_CTDT_OBJS) $(LIBRARY_NM)
ifneq (,$(strip $(LIBTARGETS)))
LIBTARGETS += $(INSTALL_LIBS) $(INSTALL_MUNCHS)
ifeq ($(strip $(SHARED_LIBRARIES)),YES)
@@ -101,17 +100,23 @@ 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
rebuild: clean install
buildInstall : build
inc: $(DIRECTORY_TARGETS) $(INSTALL_INC) $(INSTALL_INCREC)
install: buildInstall
rebuild: clean install
build: $(OBJSNAME) $(LIBTARGETS) $(PRODNAME) $(TESTPRODNAME) \
$(TARGETS)
@@ -123,9 +128,7 @@ buildInstall : \
$(INSTALL_DOCS) \
$(INSTALL_HTMLS) \
$(INSTALL_TEMPLATE) \
$(INSTALL_CONFIGS) \
$(INSTALL_DBS) $(INSTALL_BPTS) \
$(INSTALL_DBDNAME)
$(INSTALL_CONFIGS)
ifdef BIN_INSTALLS
buildInstall : binInstalls
@@ -134,19 +137,19 @@ endif
clean::
@echo "Cleaning"
@$(RM) *.i *$(OBJ) *.a $(PRODNAME) $(TESTPRODNAME) $(LIBNAME) $(SHRLIBNAME)\
$(INC) *$(RES) $(TARGETS) $(DBDINSTALL) \
*.out MakefileInclude
$(INC) *$(RES) $(TARGETS) \
*.out MakefileInclude \
$(COMMON_INC)
ifdef MUNCHNAME
@$(RM) $(MUNCHNAME) ctdt.c ctdt.o nm.out
@$(RM) $(MUNCHNAME) $(LIBRARY_CTDT_SRCS) $(LIBRARY_CTDT_OBJS) $(LIBRARY_NM)
endif
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,17 +171,21 @@ $(DIRECTORY_TARGETS) :
# The order of the following rules is
# VERY IMPORTANT !!!!
depends: buildInstall $(SRC_FILES)
depends: inc $(DEPENDS_SRC_FILES)
@$(RM) DEPENDS
@touch DEPENDS
ifneq (,$(strip $(SRC_FILES)))
$(DEPENDS_RULE)
ifneq (,$(strip $(DEPENDS_SRC_FILES)))
$(DEPENDS_CMD.cpp)
endif
$(TESTPRODNAME) $(PRODNAME):%$(EXE): $(PROD_OBJS) $(PROD_RESS) $(PROD_DEPLIBS)
$(TESTPRODNAME) $(PRODNAME):%$(EXE): $(PRODUCT_OBJS) $(PROD_RESS) $(PROD_DEPLIBS)
@$(RM) $@
$(LINK.cpp)
%_ctdt$(OBJ) : %_ctdt.c
@$(RM) $@
$(COMPILE.c) -traditional $<
%$(OBJ): %.c
@$(RM) $@
$(COMPILE.c) $<
@@ -210,15 +217,18 @@ $(TESTPRODNAME) $(PRODNAME):%$(EXE): $(PROD_OBJS) $(PROD_RESS) $(PROD_DEPLIBS)
# rename the y.tab.h file only if we
# are creating it
#
ifeq ($(findstring -d, $(YACCOPT)),-d)
%.h %.c: ../%.y
$(RM) $*.c y.tab.c
ifeq ($(findstring -d, $(YACCOPT)),-d)
$(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
@@ -227,46 +237,6 @@ endif
@$(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 +251,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 +280,28 @@ $(SHRLIBNAME):$(LIB_PREFIX)%$(SHRLIB_SUFFIX): $(LIBRARY_OBJS) $(LIBRARY_RESS)
$(LINK.shrlib)
# C++ munching for VxWorks
%.nm : %$(OBJ)
@$(RM) $@
$(NM) $< > $@
%_ctdt.c : %.nm
@$(RM) $@
$(PERL) $(TOOLS)/munch.pl < $< > $@
$(MUNCHNAME):%.munch : %_ctdt$(OBJ) %.o
@$(RM) $@
$(LDCMD)
# Ext, app and module rules
CONFIG_APP_INCLUDE: $(wildcard $(TOP)/configure/RELEASE*)
@$(RM) $@
@$(PERL) $(TOOLS)/makeConfigAppInclude.pl $(EPICS_HOST_ARCH) $(T_A) $@ $(TOP)
RULES_INCLUDE: $(wildcard $(TOP)/configure/RELEASE*)
@$(RM) $@
@$(PERL) $(TOOLS)/makeRulesInclude.pl $(EPICS_HOST_ARCH) $(T_A) $@ $(TOP)
$(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
binInstalls: $(BIN_INSTALLS)
@echo "Installing $(^F)"
@@ -418,14 +356,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 +384,22 @@ $(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
.PRECIOUS: $(COMMON_INC)
-include $(CONFIG)/RULES.Db
-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 depends build install clean rebuild buildInstall binInstalls
# EOF RULES_BUILD

View File

@@ -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)); \

View File

@@ -18,18 +18,16 @@ include $(TOP)/configure/CONFIG
#
# 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'
# ..only for WIN32:
USR_CFLAGS_WIN32 = -DVERSION='WIN32 port'
#
# -nil- is special:
# if USR_CFLAGS_SYSV was undefined or empty, .._DEFAULT would have
# if USR_CFLAGS_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_CFLAGS for WIN32, but it's empty"
# you have to set it to -nil-:
USR_CFLAGS_SYSV = -nil-
USR_CFLAGS_WIN32 = -nil-
# .. for all other arch classes:
USR_CFLAGS_DEFAULT = -DVERSION='generic Unix'
@@ -58,7 +56,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 +83,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 +165,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 +180,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,70 @@
#
# $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 = $(CC_FOR_TARGET) $(GCCSPECS) -fasm
CCC = $(CC)
CPP = $(CC_FOR_TARGET) -x c -E
AR = $(AR_FOR_TARGET)
LD = $(LD_FOR_TARGET) -r
RTEMS_LDFLAGS := $(LDFLAGS)
LINK.cpp = $(CCC) -o $@ $(RTEMS_LDFLAGS) $(LDFLAGS) $(LINK_OBJS) $(PROD_LD_OBJS) $(PROD_LD_RESS) $(LDLIBS)
#-------------------------------------------------------
# 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)\
$(TEMPL_INST_CXXFLAG) $(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 = $(TARGET_LDLIBS) $(USR_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 +74,31 @@ 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_CPPFLAGS = -Dfopen=rtems_fopen -Dmain=rtems_main
OP_SYS_LDLIBS = -lreadline -lcurses -lm
OP_SYS_LDFLAGS = $(CPU_CFLAGS) -u Init -lCom \
$(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
CXX_EXCEPTIONS = YES
#--------------------------------------------------
# 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,11 @@
#
# $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
OP_SYS_LDFLAGS = -Wl,-Ttext,0x100000

View File

@@ -33,10 +33,17 @@ LIBNAME = $(BUILD_LIBRARY:%=$(LIB_PREFIX)%$(LIB_SUFFIX))
SHRLIBNAME = $(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 \
@@ -50,22 +57,15 @@ DEPLIB_LDFLAGS += $(sort $(DEPLIB_DIRS:%=-L%))
DEPLIB_LDLIBS = $($*_LIBS:%=-l%) $(PROD_LIBS:%=-l%) $(USR_LIBS:%=-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,30 @@
# 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 +=
######################################################
# +DAportable causes portable object code to be created for execution
# on different PA-Risc machines
OP_SYS_CPPFLAGS = -D_HPUX_SOURCE -DHP_UX
OP_SYS_CFLAGS = +DAportable +z
OP_SYS_CXXFLAGS = +DAportable +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,36 @@
# 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_
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
@@ -22,13 +21,16 @@ EXE =
OBJ = .o
LIB_PREFIX =
LIB_SUFFIX = Library.o
MUNCH_SUFFIX = Library.munch
MUNCH_SUFFIX = .munch
#-------------------------------------------------------
# Library definition
# Build both *.o and *.munch libraries
LIBNAME = $(BUILD_LIBRARY:%=$(LIB_PREFIX)%$(LIB_SUFFIX))
MUNCHNAME = $(BUILD_LIBRARY:%=$(LIB_PREFIX)%$(MUNCH_SUFFIX))
MUNCHNAME = $(LIBNAME:%$(OBJ)=%$(MUNCH_SUFFIX))
LIBRARY_CTDT_SRCS = $(LIBNAME:%$(OBJ)=%_ctdt.c)
LIBRARY_CTDT_OBJS = $(LIBNAME:%$(OBJ)=%_ctdt$(OBJ))
LIBRARY_NM = $(LIBNAME:%$(OBJ)=%.nm)
#--------------------------------------------------
# Library install location override
@@ -37,17 +39,16 @@ INSTALL_LOCATION_LIB=$(INSTALL_LOCATION)/bin
#--------------------------------------------------
# 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)
AR = $(LD)
ARFLAGS = -o
GCC_RANLIB =
RANLIB =
#--------------------------------------------------
# C++ host processing
@@ -59,14 +60,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,14 +69,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 =
OPT_CFLAGS_YES = -O3
OPT_CFLAGS_NO =
OPT_CXXFLAGS_YES = -O3
OPT_CXXFLAGS_NO =
#--------------------------------------------------
# c++ exceptions, YES or NO override
@@ -93,7 +98,7 @@ 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_RES) $(LDLIBS)
#--------------------------------------------------
# Allow site overrides

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,45 @@
# 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
# +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
CONFORM_CFLAGS_ANSI = -Aa
CONFORM_CFLAGS_STRICT = -Aa
CONFORM_CFLAGS_TRAD = -Ac
CODE_CFLAGS =
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
CODE_CXXFLAGS =
TEMPL_INST_CXXFLAG =
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 $@
DEPENDS_FLAG = +m

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

@@ -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,51 @@
# 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 =
TEMPL_INST_CXXFLAG =
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__
DEPENDS_FLAG =
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,58 @@
# $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
# 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))
TEMPL_INST_CXXFLAG =
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%))
# gnu compiler used because Sun compiler output
# includes headers from /opt/SUNWspro and does
# not work for c++ headers without .h suffix.
DEPENDS_FLAG = -MM
DEPENDS.cpp = g++

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,56 @@
# $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))
TEMPL_INST_CXXFLAG =
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%))
DEPENDS_FLAG = -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_CFLAGS_NORMAL =
CONFORM_CFLAGS_STRICT =
CONFORM_CFLAGS_TRAD =
CODE_CFLAGS = -pic
WARN_CFLAGS_YES =
WARN_CFLAGS_NO = -w
OPT_CFLAGS_YES = -O
OPT_CFLAGS_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
DEPENDS_FLAG = -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,14 @@ 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 =
TEMPL_INST_CXXFLAG =
# -w display warnings on
# -g0 no limit to warning messages
@@ -75,9 +70,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 +81,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 +98,19 @@ 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
WARN_CXXFLAGS_YES = -w -g0 -w-8012 -w-8060 -w-8071
# -w- display warnings off
CCC_WARN_NO = -w-
WARN_CXXFLAGS_NO = -w-
#
# -k- turn off standard stack frame
@@ -134,16 +119,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 +143,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:
@@ -187,26 +171,26 @@ OP_SYS_CFLAGS =
#
# Borland specific include files
#
OP_SYS_INCLUDES = -I$(BORLAND_INC)
#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))
#DLL_DEF_FLAG = $(addprefix /def:,$(wildcard ../$(addsuffix .def,$(LIBRARY))))
DLL_DEF_FLAG = $(subst /,\\,$(wildcard ../$(addsuffix .def,$(LIBRARY))))
# 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.
# library objects LIBOBJS_HOST.
# If so, we define _WINDLL so that
# e.g. include/shareLib.h works correctly.
#
HOST_OPT_FLAGS += $(subst $@, /_WINDLL, $(findstring $@,$(LIBRARY_LD_OBJS)))
OPT_CFLAGS_YES += $(subst $@, /_WINDLL, $(findstring $@,$(LIBOBJS_HOST)))
#
# 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
@@ -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))
#--------------------------------------------------

View File

@@ -0,0 +1,17 @@
# CONFIG.win32-x86-cygwin.Common
#
# $Id$
# This file is maintained by the build community.
#
# Definitions for win32-x86-cygwin host archs
# Sites may override these definitions in CONFIG_SITE.win32-x86-cygwin.Common
#-------------------------------------------------------
#Include definitions common to unix hosts
include $(CONFIG)/os/CONFIG.UnixCommon.Common
WIND_HOST_TYPE = x86-win32
OSITHREAD_USE_DEFAULT_STACK = NO
HOSTEXE=.exe

View File

@@ -0,0 +1,16 @@
# CONFIG.win32-x86-cygwin.win32-x86-cygwin
#
# $Id$
#
# Definitions for win32-x86-cygwin host - win32-x86-cygwin target builds
# Sites may override these definitions in CONFIG_SITE.win32-x86-cygwin.win32-x86-cygwin
#-------------------------------------------------------
# Include common gnu compiler definitions
include $(CONFIG)/CONFIG.gnuCommon
## Shared libraries for cygwin not implemented yet
SHARED_LIBRARIES=NO
CC = $(GNU_BIN)/gcc
CCC = $(GNU_BIN)/g++

View File

@@ -16,14 +16,6 @@ VALID_BUILDS = Host Ioc
# 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
#
@@ -37,11 +29,14 @@ ARCMD = lib /nologo /verbose /out:$@ $(LIBRARY_LD_OBJS)
BAFCMD = bscmake /nologo /o $@
DEPENDS_RULE = @echo depends target not supported
#DEPENDS_RULE = @echo depends target not supported
#GNU depends flag
DEPENDS.cpp = g++
DEPENDS_FLAG = -MM
#
# Configure OS vendor C compiler
ACC = cl
CC = cl
#
# __STDC__=0 is a real great idea of Jeff that gives us both:
@@ -51,25 +46,25 @@ ACC = cl
#
# Use of /Za would dissable DLL import/export keywords which
# include/excludes using architecture neutral macros
ACC_CONFORM_CFLAGS_ANSI = /nologo /D__STDC__=0
ACC_CONFORM_CFLAGS_STRICT = /nologo /D__STDC__=0
ACC_CONFORM_CFLAGS_TRAD = /nologo
CONFORM_CFLAGS_ANSI = /nologo /D__STDC__=0
CONFORM_CFLAGS_STRICT = /nologo /D__STDC__=0
CONFORM_CFLAGS_TRAD = /nologo
#
# /W<N> use warning level N
# (maximum (lint type) warnings at level 4)
ACC_WARN_YES = /W3
ACC_WARN_NO = /W1
WARN_CFLAGS_YES = /W3
WARN_CFLAGS_NO = /W1
#
# /Ox maximum optimizations
# /MD use MSVCRT (run-time as DLL, multi-thread support)
ACC_OPT_YES = /Ox
OPT_CFLAGS_YES = /Ox
#
# /Zi include debugging info in object files
# /Fr create source browser file
ACC_OPT_NO = /Zi /Fr
OPT_CFLAGS_NO = /Zi /Fr
#
# the following options are required when
@@ -86,17 +81,13 @@ VISC_DLL = $(VISC_DLL_$(SHARED_LIBRARIES))
VISC_STATIC_CFLAGS_DEBUG_NO = d
VISC_STATIC_CFLAGS_DEBUG_YES =
VISC_STATIC_CFLAGS_DEBUG = $(VISC_STATIC_CFLAGS_DEBUG_$(HOST_OPT))
ACC_STATIC_CFLAGS_YES= /MT$(VISC_STATIC_CFLAGS_DEBUG) $(VISC_DLL)
ACC_STATIC_CFLAGS_NO= /MD$(VISC_STATIC_CFLAGS_DEBUG) $(VISC_DLL)
#
# no special libs for static link
#
ACC_STATIC_LDLIBS_YES= ws2_32.lib advapi32.lib user32.lib kernel32.lib winmm.lib
ACC_STATIC_LDLIBS_NO=
STATIC_CFLAGS_YES= /MT$(VISC_STATIC_CFLAGS_DEBUG) $(VISC_DLL)
STATIC_CFLAGS_NO= /MD$(VISC_STATIC_CFLAGS_DEBUG) $(VISC_DLL)
# OS vendor c preprocessor
ACC_CPP = cl /E
#CPP = cl /E
#GNU c preprocessor
CPP = gcc -x c -E
# Configure OS vendor C++ compiler
#
@@ -107,25 +98,29 @@ ACC_CPP = cl /E
#
# Use of /Za would dissable DLL import/export keywords which
# include/excludes using architecture neutral macros
#
# /GX - generate code for exceptions
# /GR - generate code for run time type identification
#
CCC = cl
CCC_CONFORM_CFLAGS_NORMAL = /nologo /D__STDC__=0 /GX
CCC_CONFORM_CFLAGS_STRICT = /nologo /D__STDC__=0 /GX
CCC_TEMPL_INST_FLAG =
CONFORM_CXXFLAGS_NORMAL = /nologo /D__STDC__=0 /GX /GR
CONFORM_CXXFLAGS_STRICT = /nologo /D__STDC__=0 /GX /GR
TEMPL_INST_CXXFLAG =
#
# /W<N> use warning level N
# (maximum lint level warnings at level 4)
CCC_WARN_YES = /W3
CCC_WARN_NO = /W1
WARN_CXXFLAGS_YES = /W3
WARN_CXXFLAGS_NO = /W1
#
# /Ox maximum optimizations
CCC_OPT_YES = /Ox
OPT_CXXFLAGS_YES = /Ox
#
# /Zi include debugging info in object files
# /Fr create source browser file
CCC_OPT_NO = /Zi /Fr
OPT_CXXFLAGS_NO = /Zi /Fr
#
# the following options are required when
@@ -136,14 +131,14 @@ CCC_OPT_NO = /Zi /Fr
# /MTd static multithreaded C RTL (debug version)
# /MD multithreaded C RTL in DLL
# /MDd multithreaded C RTL in DLL (debug version)
CCC_STATIC_CFLAGS_YES= /MT$(VISC_STATIC_CFLAGS_DEBUG) $(VISC_DLL)
CCC_STATIC_CFLAGS_NO= /MD$(VISC_STATIC_CFLAGS_DEBUG) $(VISC_DLL)
STATIC_CXXFLAGS_YES= /MT$(VISC_STATIC_CFLAGS_DEBUG) $(VISC_DLL)
STATIC_CXXFLAGS_NO= /MD$(VISC_STATIC_CFLAGS_DEBUG) $(VISC_DLL)
#
# no special libs for static link
#
CCC_STATIC_LDLIBS_YES=ws2_32.lib advapi32.lib user32.lib kernel32.lib winmm.lib
CCC_STATIC_LDLIBS_NO=
STATIC_LDLIBS_YES=ws2_32.lib advapi32.lib user32.lib kernel32.lib winmm.lib
STATIC_LDLIBS_NO=
LINK_OPT_FLAGS_YES = /WARN:3 /incremental:no /opt:ref\
/release $(PROD_VERSION:%=/version:%)
@@ -199,7 +194,7 @@ WIN32_DLLFLAGS = /subsystem:windows /dll $(OPT_LDFLAGS)
#
# specify dll .def file only if it exists
#
DLL_DEF_FLAG = $(addprefix /def:,$(wildcard ../$(BUILD_LIBS).def))
DLL_DEF_FLAG = $(addprefix /def:,$(wildcard ../$(addsuffix .def,$(LIBRARY))))
# HOST_OPT_FLAGS is part of CFLAGS/CXXFLAGS,
# which in turn are used in COMPILE.c[c]
@@ -220,6 +215,7 @@ HOST_OPT_FLAGS += $(subst $@, /_WINDLL, $(findstring $@,$(LIBOBJS_HOST)))
#
LINK.shrlib = $(WINLINK) /nologo $(WIN32_DLLFLAGS) /implib:$*.lib /out:$*.dll $(DLL_DEF_FLAG)
LINK.shrlib += $(LIBRARY_LD_OBJS) $(LIBRARY_LD_RESS) $(SHRLIB_LDLIBS)
LDCMD = $(CCC) /Fo $@ $^
# adjust names of libraries to build

View File

@@ -15,6 +15,7 @@ ARCH_WIN32 = win32-x86
ARCH_hp700 = hpux-parisc
ARCH_alpha = osf-alpha
ARCH_cygwin32 = cygwin-x86
ARCH_Borland = win32-x86-borland
ifndef EPICS_HOST_ARCH
ifdef HOST_ARCH

View File

@@ -5,6 +5,4 @@
# Site Specific definitions for vxWorks-ppc604 target
# Only the local epics system manager should modify this file
# APS override
#VX_DIR = /usr/local/vw/tornado101ppc

View File

@@ -0,0 +1,19 @@
# CONFIG_SITE.linux-x86.Common
#
# $Id$
# This file is maintained by the build community.
#
# Site override definitions for linux-x86 host builds
#-------------------------------------------------------
# JBA test override values
#CROSS_COMPILER_TARGET_ARCHS = vxWorks-68040 solaris-sparc
#CROSS_COMPILER_TARGET_ARCHS = vxWorks-68040
# NOTE: If YES then LD_LIBRARY_PATH must include the full
# pathname $(INSTALL_LOCATION)/lib/$(EPICS_HOST_ARCH) for
# both the base # build and when invoking base executables.
# Alternatively the full pathname can be added to /etc/ld.so.conf
# and ldconfig run to inform the system of the shared libraries.
SHARED_LIBRARIES=YES

View File

@@ -0,0 +1,9 @@
#
# $Id$
#
# Site Specific Configuration Information
# Only the local epics system manager should modify this file
CC = $(GNU_BIN)/$(CMPLR_PREFIX)gcc$(CMPLR_SUFFIX)
CCC = $(GNU_BIN)/$(CMPLR_PREFIX)g++$(CMPLR_SUFFIX)

View File

@@ -0,0 +1,11 @@
# CONFIG_SITE.linux-x86.solaris-sparc
#
# $Id$
# This file is maintained by the build community.
#
# Site specific definitions for linux-x86 host - solaris-sparc target builds
#-------------------------------------------------------
GNU_DIR = /home/phoebus/JBA/gnu-solaris2
GNU_TARGET_INCLUDE_DIR = $(GNU_DIR)/$(GNU_TARGET)/sys-include

View File

@@ -2,7 +2,7 @@
#
# $Id$
#
# Site specific definitions for vxWorks-68040 target when host is linux-x86
# Site specific definitions for linux-x86 host - vxWorks-68040 target builds
# Only the local epics system manager should modify this file
#-------------------------------------------------------
@@ -10,3 +10,12 @@
#CMPLR_SUFFIX=
#GNU_TARGET=m68k-wrs-vxworks
#CMPLR_PREFIX=$(addsuffix -,$(GNU_TARGET))
# 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,16 @@
# CONFIG_SITE.linux-x86.vxWorks-ppc603
#
# $Id$
# This file is maintained by the build community.
#
# Site override definitions for linux-x86 host - vxWorks-ppc603 target 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

@@ -1,15 +1,15 @@
# CONFIG_SITE.linux-x86.vxWorksCommon
#
# $Id$
# This file is maintained by the build community.
#
# Site Specific Configuration Information
# Only the local epics system manager should modify this file
# Definitions for linux-x86 host - vxWorks target builds
#-------------------------------------------------------
# JBA test override values
#GNU_DIR=/home/phoebus/JBA/gnu
#VX_INCLUDE=$(GNU_DIR)/$(GNU_TARGET)/include
#GCC = $(GNU_BIN)/$(CMPLR_PREFIX)gcc$(CMPLR_SUFFIX)
#G++ = $(GNU_BIN)/$(CMPLR_PREFIX)gcc$(CMPLR_SUFFIX)
#CROSS_COMPILER_TARGET_ARCHS = vxWorks-68040
#GNU_TARGET_INCLUDE_DIR=$(GNU_DIR)/$(GNU_TARGET)/include
#CC = $(GNU_BIN)/$(CMPLR_PREFIX)gcc$(CMPLR_SUFFIX)
#CCC = $(GNU_BIN)/$(CMPLR_PREFIX)gcc$(CMPLR_SUFFIX)

View File

@@ -2,7 +2,7 @@
#
# $Id$
#
# Site specific definitions for solaris-sparc host
# Site specific override definitions for solaris-sparc host builds
# Only the local epics system manager should modify this file
#INSTALL_LOCATION = /home/phoebus/JBA/testBaseNew

View File

@@ -0,0 +1,10 @@
# CONFIG_SITE.win32-x86-cygwin.Common
#
# $Id$
# This file is maintained by the build community.
#
# Site override definitions for win32-x86-cygwin host builds
#-------------------------------------------------------
CROSS_COMPILER_TARGET_ARCHS =

View File

@@ -0,0 +1,10 @@
# CONFIG_SITE.win32-x86-cygwin.win32-x86-cygwin
#
# $Id$
# This file is maintained by the build community.
#
# Site override definitions for win32-x86-cygwin host - win32-x86-cygwin target builds
#-------------------------------------------------------
GNU_DIR=C:/cygwin

View File

@@ -9,4 +9,6 @@
#CROSS_COMPILER_TARGET_ARCHS=vxWorks-486
#VX_DIR = D:/tornado
#INSTALL_LOCATION = G:/testInstall
#STATIC_BUILD=YES
#SHARED_LIBRARIES=NO
#CROSS_COMPILER_TARGET_ARCHS=

View File

@@ -5,9 +5,11 @@ eval 'exec perl -S $0 ${1+"$@"}' # -*- Mode: perl -*-
use Cwd;
$arch = $ARGV[0];
$outfile = $ARGV[1];
$top = $ARGV[2];
$hostarch = $ARGV[0];
$arch = $ARGV[1];
$outfile = $ARGV[2];
$top = $ARGV[3];
$applications{TOP} = $top;
unlink("${outfile}");
open(OUT,">${outfile}") or die "$! opening ${outfile}";
@@ -16,7 +18,7 @@ print OUT "#This file is created during the build.\n";
@files =();
push(@files,"$top/configure/RELEASE");
push(@files,"$top/configure/RELEASE.${arch}");
push(@files,"$top/configure/RELEASE.${hostarch}");
foreach $file (@files) {
if (-r "$file") {
open(IN, "$file") or die "Cannot open $file\n";
@@ -24,6 +26,7 @@ foreach $file (@files) {
next if ( $line =~ /\s*#/ );
chomp($line);
$line =~ s/[ ]//g; # remove blanks and tabs
next if ( $line =~ /^$/ ); # skip empty lines
$_ = $line;
#the following looks for
# prefix = $(macro)post
@@ -32,11 +35,13 @@ foreach $file (@files) {
# the following looks for
# prefix = post
($prefix,$post) = /(.*)\s*=\s*(.*)/;
$app_post = $post;
} else {
$base = $applications{$macro};
if ($base eq "") {
#print "error: $macro was not previously defined\n";
} else {
$app_post = "\$($macro)" . $post;
$post = $base . $post;
}
}
@@ -44,21 +49,25 @@ foreach $file (@files) {
if ( -d "$post") { #check that directory exists
print OUT "\n";
if ( -d "$post/bin/$arch") { #check that directory exists
print OUT "${prefix}_BIN = $post/bin/${arch}\n";
print OUT "${prefix}_BIN = $app_post/bin/${arch}\n";
}
if ( -d "$post/bin/$arch") { #check that directory exists
print OUT "${prefix}_HOST_BIN = $app_post/bin/\$(EPICS_HOST_ARCH)\n";
}
if ( -d "$post/lib/$arch") { #check that directory exists
print OUT "${prefix}_LIB = $post/lib/${arch}\n";
print OUT "${prefix}_LIB = $app_post/lib/${arch}\n";
}
if ( -d "$post/include") { #check that directory exists
print OUT "INSTALL_INCLUDES += -I$post/include\n";
print OUT "INSTALL_INCLUDES += -I$app_post/include/os/\$(OS_CLASS)\n";
}
if ( -d "$post/include") { #check that directory exists
print OUT "INSTALL_INCLUDES += -I$app_post/include\n";
}
if ( -d "$post/dbd") { #check that directory exists
print OUT "INSTALL_DBDFLAGS += -I $post/dbd\n";
print OUT "INSTALL_DBDFLAGS += -I $app_post/dbd\n";
}
}
}
close IN;
}
}
close OUT;

View File

@@ -5,7 +5,7 @@ eval 'exec perl -S $0 ${1+"$@"}' # -*- Mode: perl -*-
# Searches the .substitutions files (from the command line) for
# "file xxx {" entries to create a DEPENDS file
open(OUT, ">DEPENDS") or die "Cannot open DEPENDS: $!";
open(OUT, ">DBDEPENDS") or die "Cannot open DBDEPENDS: $!";
foreach $file (@ARGV) {
open(IN, "<$file") or die "Cannot open $file: $!";

View File

@@ -29,6 +29,7 @@ print OUT "appbin = \"$appbin\"\n";
$top = $cwd;
$top =~ s/\/iocBoot.*//;
$applications{TOP} = $top;
print OUT "top = \"$top\"\n";
$topbin = "${top}/bin/${arch}";
#skip check that top/bin/${arch} exists; src may not have been builT

View File

@@ -71,7 +71,7 @@ foreach $name ( @nameList ) {
print OUT "depends: \$(${name}_SRCS)\n";
print OUT "\n";
print OUT "ifeq (\$(filter ${name},\$(TESTPROD)),${name})\n";
print OUT "ifeq (,\$(strip \$(${name}_OBJS) \$(PROD_OBJS)))\n";
print OUT "ifeq (,\$(strip \$(${name}_OBJS) \$(PRODUCT_OBJS)))\n";
print OUT "${name}_OBJS+=${name}\$(OBJ)\n";
print OUT "endif\n";
print OUT "${name}_RESS+=\$(addsuffix \$(RES),\$(basename \$(${name}_RCS)))\n";
@@ -82,7 +82,7 @@ foreach $name ( @nameList ) {
print OUT "endif\n";
print OUT "\n";
print OUT "ifeq (\$(filter ${name},\$(PROD)),${name})\n";
print OUT "ifeq (,\$(strip \$(${name}_OBJS) \$(PROD_OBJS)))\n";
print OUT "ifeq (,\$(strip \$(${name}_OBJS) \$(PRODUCT_OBJS)))\n";
print OUT "${name}_OBJS+=${name}\$(OBJ)\n";
print OUT "endif\n";
print OUT "${name}_RESS+=\$(addsuffix \$(RES),\$(basename \$(${name}_RCS)))\n";
@@ -92,14 +92,18 @@ foreach $name ( @nameList ) {
print OUT "${name}\$(EXE): \$(${name}_OBJSNAME) \$(${name}_RESS) \$(${name}_DEPLIBS)\n";
print OUT "endif\n";
print OUT "\n";
print OUT "ifeq (\$(filter ${name},\$(LIBRARY_HOST) \$(LIBRARY_IOC)),${name})\n";
print OUT "ifeq (\$(filter ${name},\$(LIBRARY)),${name})\n";
print OUT "ifneq (,\$(strip \$(${name}_OBJS) \$(LIBRARY_OBJS)))\n";
print OUT "BUILD_LIBRARY += ${name}\n";
print OUT "endif\n";
print OUT "${name}_RESS+=\$(addsuffix \$(RES),\$(basename \$(${name}_RCS)))\n";
print OUT "${name}_OBJSNAME+=\$(addsuffix \$(OBJ),\$(basename \$(${name}_OBJS)))\n";
print OUT "${name}_DEPLIBS=\$(foreach lib, \$(${name}_LIBS),\$(firstword \$(wildcard \\\n";
print OUT " \$(\$(lib)_DIR)/\$(LIB_PREFIX)\$(lib)\*)))\n";
print OUT "\$(LIB_PREFIX)${name}\$(LIB_SUFFIX):\$(${name}_OBJSNAME) \$(${name}_RESS)\n";
print OUT "\$(LIB_PREFIX)${name}\$(LIB_SUFFIX):\$(${name}_DEPLIBS)\n";
print OUT "\$(LIB_PREFIX)${name}\$(SHRLIB_SUFFIX):\$(${name}_OBJSNAME) \$(${name}_RESS)\n";
print OUT "\$(LIB_PREFIX)${name}\$(SHRLIB_SUFFIX):\$(${name}_DEPLIBS)\n";
print OUT "endif\n";
print OUT "ifneq (\$(strip \$(DBDEXPAND_\$(OS_CLASS))),)\n";
print OUT "DBDEXPAND+=\$(subst -nil-,,\$(DBDEXPAND_\$(OS_CLASS)))\n";

View File

@@ -0,0 +1,59 @@
# $Id$
eval 'exec perl -S $0 ${1+"$@"}' # -*- Mode: perl -*-
if $running_under_some_shell; # makeConfigAppInclude.pl
use Cwd;
$hostarch = $ARGV[0];
$arch = $ARGV[1];
$outfile = $ARGV[2];
$top = $ARGV[3];
$applications{TOP} = $top;
unlink("${outfile}");
open(OUT,">${outfile}") or die "$! opening ${outfile}";
print OUT "#Do not modify this file.\n";
print OUT "#This file is created during the build.\n";
@files =();
push(@files,"$top/configure/RELEASE");
push(@files,"$top/configure/RELEASE.${hostarch}");
foreach $file (@files) {
if (-r "$file") {
open(IN, "$file") or die "Cannot open $file\n";
while ($line = <IN>) {
next if ( $line =~ /\s*#/ );
chomp($line);
$line =~ s/[ ]//g; # remove blanks and tabs
next if ( $line =~ /^$/ ); # skip empty lines
$_ = $line;
#the following looks for
# prefix = $(macro)post
($prefix,$macro,$post) = /(.*)\s*=\s*\$\((.*)\)(.*)/;
if ($macro eq "") { # true if no macro is present
# the following looks for
# prefix = post
($prefix,$post) = /(.*)\s*=\s*(.*)/;
$app_post = $post;
} else {
$base = $applications{$macro};
if ($base eq "") {
#print "error: $macro was not previously defined\n";
} else {
$app_post = "\$($macro)" . $post;
$post = $base . $post;
}
}
$applications{$prefix} = $post;
next if ( $prefix eq "EPICS_BASE" );
next if ( $prefix eq "TEMPLATE_TOP" );
if ( -d "$post") { #check that directory exists
if ( -d "$post/configure") { #check that directory exists
print OUT "-include $app_post/configure/RULES_BUILD\n";
}
}
}
close IN;
}
}

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);
};
}

29
copyright/COPYRIGHT_BESSY Normal file
View File

@@ -0,0 +1,29 @@
/***************************************************************************
*
* This software is copyrighted by the BERLINER SPEICHERRING
* GESELLSCHAFT FUER SYNCHROTRONSTRAHLUNG M.B.H., BERLIN, GERMANY.
* The following terms apply to all files associated with the
* software.
*
* BESSY hereby grants permission to use, copy, and modify this
* software and its documentation for non-commercial educational or
* research purposes, provided that existing copyright notices are
* retained in all copies.
*
* The receiver of the software provides BESSY with all enhancements,
* including complete translations, made by the receiver.
*
* IN NO EVENT SHALL BESSY BE LIABLE TO ANY PARTY FOR DIRECT,
* INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES ARISING
* OUT OF THE USE OF THIS SOFTWARE, ITS DOCUMENTATION, OR ANY
* DERIVATIVES THEREOF, EVEN IF BESSY HAS BEEN ADVISED OF THE
* POSSIBILITY OF SUCH DAMAGE.
*
* BESSY SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, BUT NOT
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR
* A PARTICULAR PURPOSE, AND NON-INFRINGEMENT. THIS SOFTWARE IS
* PROVIDED ON AN "AS IS" BASIS, AND BESSY HAS NO OBLIGATION TO
* PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR
* MODIFICATIONS.
*
******************************************************************************/

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