Compare commits
1376 Commits
R3.14.0-al
...
R3.14.0-be
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
2ba1e47fd3 | ||
|
|
5c00f84847 | ||
|
|
e42becdce4 | ||
|
|
7f3eca0394 | ||
|
|
105ecaca8d | ||
|
|
1b24ce1620 | ||
|
|
6352940ce6 | ||
|
|
6ec4eaea40 | ||
|
|
63ea05ecdd | ||
|
|
3566bc7d8d | ||
|
|
792e651d8e | ||
|
|
ee7cc03774 | ||
|
|
a7a87b8d99 | ||
|
|
119e45dc28 | ||
|
|
62954ecf50 | ||
|
|
5bd31e2aa2 | ||
|
|
4675ba5077 | ||
|
|
da917cce37 | ||
|
|
38d5f71072 | ||
|
|
e46a919662 | ||
|
|
8d2eaa9cf5 | ||
|
|
e287eac4c7 | ||
|
|
7b1b2988d7 | ||
|
|
ed88bdd35b | ||
|
|
21f9dd8179 | ||
|
|
f1d7722f80 | ||
|
|
7c4ddfffcd | ||
|
|
f84e7f5df6 | ||
|
|
e16d797011 | ||
|
|
40148ba63b | ||
|
|
114058de02 | ||
|
|
0ed3880913 | ||
|
|
855027654b | ||
|
|
8aff497180 | ||
|
|
e8c12c369c | ||
|
|
5e1804ae94 | ||
|
|
08b16eba09 | ||
|
|
7c186698aa | ||
|
|
8c404fc69e | ||
|
|
06f99426c3 | ||
|
|
739d67853a | ||
|
|
6e86544e20 | ||
|
|
f1d9236ee9 | ||
|
|
a7b06a7588 | ||
|
|
bd73d46620 | ||
|
|
dbc44e58d7 | ||
|
|
61e6a84ae3 | ||
|
|
4cd0787e4d | ||
|
|
3583c70725 | ||
|
|
55c4981d4d | ||
|
|
db6b7367cd | ||
|
|
2123916c45 | ||
|
|
5c353c4fa1 | ||
|
|
864209af1c | ||
|
|
e30a01cab5 | ||
|
|
78239fb213 | ||
|
|
42b8dcc3bf | ||
|
|
218cf86318 | ||
|
|
f770728ed0 | ||
|
|
0422478975 | ||
|
|
d67e8a28c6 | ||
|
|
f26ba7daa6 | ||
|
|
75cf4ebcff | ||
|
|
28282e176d | ||
|
|
7c86082b23 | ||
|
|
978cbb9517 | ||
|
|
39a9682dbe | ||
|
|
e2d2cdf882 | ||
|
|
190914f680 | ||
|
|
7fc0860442 | ||
|
|
f31cbb8a8c | ||
|
|
928f3234f2 | ||
|
|
7b568edc59 | ||
|
|
2cf796ce9b | ||
|
|
4f56353867 | ||
|
|
5555ea4edc | ||
|
|
00d878aff8 | ||
|
|
d707be4c0e | ||
|
|
90b4d40b96 | ||
|
|
2015e37f53 | ||
|
|
e849feeb13 | ||
|
|
28ecb1209f | ||
|
|
af42d394b9 | ||
|
|
8ca27c4b4e | ||
|
|
932813b85e | ||
|
|
659c60fd90 | ||
|
|
475e16ec96 | ||
|
|
17cb74de76 | ||
|
|
19f8326ae0 | ||
|
|
67eb482234 | ||
|
|
bd2f706e0f | ||
|
|
ac07c6a248 | ||
|
|
e27671e8d6 | ||
|
|
37d45a57f3 | ||
|
|
ee4b426a34 | ||
|
|
480129b790 | ||
|
|
d7717d106d | ||
|
|
0c22d38d55 | ||
|
|
75d0fc16e0 | ||
|
|
42e498e2ff | ||
|
|
ba3be45400 | ||
|
|
e8d24da299 | ||
|
|
3843cc0ddb | ||
|
|
06ee15bbfb | ||
|
|
b19e46db7e | ||
|
|
c54518d555 | ||
|
|
deb6813aee | ||
|
|
0080b2d007 | ||
|
|
3eece23175 | ||
|
|
1220439a85 | ||
|
|
34b5548ef1 | ||
|
|
0d9b5ce097 | ||
|
|
ec8a33ea5b | ||
|
|
d4107b4900 | ||
|
|
692c3b64b9 | ||
|
|
8a29c82245 | ||
|
|
c7f8051c84 | ||
|
|
993f3423ee | ||
|
|
26016a2810 | ||
|
|
12ccb0936a | ||
|
|
7eaabd7df2 | ||
|
|
cab1f58df1 | ||
|
|
74f581dce5 | ||
|
|
ec582e8c91 | ||
|
|
8139443186 | ||
|
|
ade7bebfcd | ||
|
|
9a651fe9bf | ||
|
|
cee658604b | ||
|
|
1f21e491ed | ||
|
|
78d663d064 | ||
|
|
c7a82c3ce2 | ||
|
|
0768bb9764 | ||
|
|
0809aa8c8b | ||
|
|
8b0161c463 | ||
|
|
c4b6554964 | ||
|
|
682dbfae7a | ||
|
|
e4a75d4a8c | ||
|
|
878809a164 | ||
|
|
8012642f9b | ||
|
|
ba4df8fd29 | ||
|
|
5b2d1df716 | ||
|
|
2e329813aa | ||
|
|
c5084f15cc | ||
|
|
2cb9e531cc | ||
|
|
4f2c38bb03 | ||
|
|
20ab67691f | ||
|
|
a04d40082c | ||
|
|
e5d3ebaf70 | ||
|
|
322b492f7f | ||
|
|
329d91c595 | ||
|
|
347997bed1 | ||
|
|
f3edc221f3 | ||
|
|
44e8fa75d3 | ||
|
|
bffacccf79 | ||
|
|
ba36f44354 | ||
|
|
d80c01f2b2 | ||
|
|
21f5c8a0de | ||
|
|
bdd20db4f2 | ||
|
|
863b0ebb03 | ||
|
|
7597f551ad | ||
|
|
b7128a8aa2 | ||
|
|
f89f31b505 | ||
|
|
42ecec6b11 | ||
|
|
93d2705002 | ||
|
|
ecd1cafe46 | ||
|
|
296304ca00 | ||
|
|
66e3a3de22 | ||
|
|
38269f4f21 | ||
|
|
0d9df123c6 | ||
|
|
2893c435ac | ||
|
|
bce2df010c | ||
|
|
14d152bcaf | ||
|
|
f280f73a64 | ||
|
|
65871f02e8 | ||
|
|
34d439983d | ||
|
|
29e4cd9f61 | ||
|
|
f855880786 | ||
|
|
01e185e1fa | ||
|
|
c5d3e65511 | ||
|
|
365c82023f | ||
|
|
2891f74d54 | ||
|
|
0fe3dcdbe7 | ||
|
|
28435f8f09 | ||
|
|
0966f06cb9 | ||
|
|
8d7cb4ce1d | ||
|
|
118dcad5b4 | ||
|
|
dbeab43347 | ||
|
|
ce150624fb | ||
|
|
8cdc639fb9 | ||
|
|
0d2922fbcf | ||
|
|
575969a672 | ||
|
|
c51161f7a4 | ||
|
|
87661c57d4 | ||
|
|
c1ae00ab21 | ||
|
|
c5fbd3e8ec | ||
|
|
f7b89d58e9 | ||
|
|
3334174809 | ||
|
|
c39788961e | ||
|
|
a5aa5c1543 | ||
|
|
9f96c98ff3 | ||
|
|
60cd0e880b | ||
|
|
2b9212727f | ||
|
|
cc382a10e0 | ||
|
|
82a6c078a9 | ||
|
|
47779a4492 | ||
|
|
cb22f79e6d | ||
|
|
16aa60586d | ||
|
|
6ce71a7b54 | ||
|
|
cda6791496 | ||
|
|
ccd2eb30bd | ||
|
|
7507eec873 | ||
|
|
eb1a83c71b | ||
|
|
049953e8ac | ||
|
|
bf5ffaf41b | ||
|
|
0afaadb981 | ||
|
|
dcd20fa978 | ||
|
|
6b2ff88e40 | ||
|
|
6426c3093e | ||
|
|
bdd52c1eb4 | ||
|
|
43a5ce763b | ||
|
|
ad819cba65 | ||
|
|
6517109e7e | ||
|
|
3fbee94fde | ||
|
|
c92a488c82 | ||
|
|
81d04e3883 | ||
|
|
98cf88ab66 | ||
|
|
d091596772 | ||
|
|
dce3f534ce | ||
|
|
a4e4cfab7c | ||
|
|
4d4b491517 | ||
|
|
2b246be69b | ||
|
|
d5a587d616 | ||
|
|
1ce15d8137 | ||
|
|
d70f4f718f | ||
|
|
e4da2bf773 | ||
|
|
d7b7747887 | ||
|
|
3a5fbed882 | ||
|
|
4fa81a1ac6 | ||
|
|
7fb6862dfb | ||
|
|
40e476f7b9 | ||
|
|
36770de102 | ||
|
|
56fa1c87e8 | ||
|
|
0c85c515f1 | ||
|
|
07e9ed18bf | ||
|
|
8aa2d63967 | ||
|
|
b136bfa3ed | ||
|
|
8982740d23 | ||
|
|
1c76b5d80a | ||
|
|
40e19e0118 | ||
|
|
becfc8ca3c | ||
|
|
fc1d377622 | ||
|
|
74b5d6093f | ||
|
|
2d662d4d08 | ||
|
|
360841bdc1 | ||
|
|
fe7fb3ba50 | ||
|
|
15a9e07ab2 | ||
|
|
9b876d82dd | ||
|
|
8c103d1cb9 | ||
|
|
abf2b19755 | ||
|
|
d6bbb0f3ef | ||
|
|
34ffeae3eb | ||
|
|
86055bce3d | ||
|
|
e3f86b5cec | ||
|
|
5b6f17f7db | ||
|
|
678818b59f | ||
|
|
f3dc728e89 | ||
|
|
822d4dd79f | ||
|
|
c90112a04c | ||
|
|
9c892d128f | ||
|
|
8ad35f4038 | ||
|
|
6d7cb09151 | ||
|
|
d556e3375c | ||
|
|
5a808ee4d5 | ||
|
|
ab82d8c6fc | ||
|
|
d8eded00c3 | ||
|
|
f9a9010ad2 | ||
|
|
a4144e9675 | ||
|
|
4daac95e18 | ||
|
|
aef70acbb9 | ||
|
|
d4e3b1b626 | ||
|
|
798e5b6d3a | ||
|
|
dd723369fe | ||
|
|
984d8cac2b | ||
|
|
a2cf8335fc | ||
|
|
3235b59641 | ||
|
|
56e9cbfd67 | ||
|
|
0aa19f05bc | ||
|
|
44ff5cf058 | ||
|
|
719340369c | ||
|
|
29218a2a27 | ||
|
|
7af4623511 | ||
|
|
11d2c6b698 | ||
|
|
6eeb8c74a2 | ||
|
|
97d679e350 | ||
|
|
7c753f5383 | ||
|
|
70b49f3ba4 | ||
|
|
fe2b7fd8fc | ||
|
|
1a0bbfb0ca | ||
|
|
16f3eff801 | ||
|
|
91fe7cecfb | ||
|
|
05d89d878e | ||
|
|
2034323254 | ||
|
|
24351032cf | ||
|
|
21b7bf8b6b | ||
|
|
a1b9e58cd0 | ||
|
|
99e5535085 | ||
|
|
937b575ec3 | ||
|
|
b1f414543a | ||
|
|
d69d957ebe | ||
|
|
5e71997d09 | ||
|
|
8f619b5f8d | ||
|
|
6e42c7e3e9 | ||
|
|
48da409965 | ||
|
|
c35b876af4 | ||
|
|
19a8fe6e7b | ||
|
|
d67fcbdb67 | ||
|
|
cc191cddbc | ||
|
|
89d93df035 | ||
|
|
93e745ef83 | ||
|
|
9bbb9c1314 | ||
|
|
217cc10840 | ||
|
|
977299cffd | ||
|
|
f32583bdbd | ||
|
|
625beb2300 | ||
|
|
46bf66f198 | ||
|
|
f77bdc3b54 | ||
|
|
2f50543112 | ||
|
|
2a1d135889 | ||
|
|
48ea56d295 | ||
|
|
b3f2c87697 | ||
|
|
0c9c5c1682 | ||
|
|
224c7494b6 | ||
|
|
9b117a376e | ||
|
|
ce506a77a7 | ||
|
|
81b169f059 | ||
|
|
79d648229e | ||
|
|
dbf7b13e9f | ||
|
|
d19294499c | ||
|
|
d6587ddca1 | ||
|
|
192632eaf2 | ||
|
|
b5322ea925 | ||
|
|
6fad25e2d1 | ||
|
|
cfc8c2b8e0 | ||
|
|
73b3a37881 | ||
|
|
2c71674012 | ||
|
|
6c2303a958 | ||
|
|
331b9b3d8b | ||
|
|
7363d6a125 | ||
|
|
ec6806d071 | ||
|
|
b5c0f11f5f | ||
|
|
634f25873b | ||
|
|
9765db4254 | ||
|
|
4ebb8f4351 | ||
|
|
296d94a2c5 | ||
|
|
355c0313f6 | ||
|
|
4cb9d0b7d8 | ||
|
|
7119b68a3b | ||
|
|
58989fb8e1 | ||
|
|
1d07007562 | ||
|
|
f47210502e | ||
|
|
de4f57cf5c | ||
|
|
6beb555fcc | ||
|
|
cfa8a80ee1 | ||
|
|
cbb5d190f5 | ||
|
|
b05630a986 | ||
|
|
01a63dd7c5 | ||
|
|
9391e3d9cc | ||
|
|
a83f3f9214 | ||
|
|
e661474c44 | ||
|
|
96557512f5 | ||
|
|
758eaede80 | ||
|
|
0205741354 | ||
|
|
2e34ee4829 | ||
|
|
dc50563da0 | ||
|
|
c1e34b85fd | ||
|
|
d0e4a93563 | ||
|
|
cd43af94e1 | ||
|
|
4cb0e2b7cc | ||
|
|
1fab139eca | ||
|
|
cf99837560 | ||
|
|
9989ff73fe | ||
|
|
86d42a8283 | ||
|
|
ba6a096e86 | ||
|
|
11ffedc376 | ||
|
|
452d4df4fb | ||
|
|
b85bdd318b | ||
|
|
464cb4b26b | ||
|
|
33dbdc68a3 | ||
|
|
5930f5b7d9 | ||
|
|
216105deeb | ||
|
|
a5ebba6be3 | ||
|
|
181f1e720f | ||
|
|
9ebaf81de3 | ||
|
|
11e57aa52d | ||
|
|
8a99fac979 | ||
|
|
bbd6c9ef90 | ||
|
|
3712987800 | ||
|
|
e49a919434 | ||
|
|
84007a0b20 | ||
|
|
f11205de68 | ||
|
|
e573c4362f | ||
|
|
ca14e4eabc | ||
|
|
c20c4c5380 | ||
|
|
fd6d55f1ae | ||
|
|
5178220160 | ||
|
|
443f95471e | ||
|
|
bee24cadd8 | ||
|
|
973e8eb0bc | ||
|
|
7c81b6920e | ||
|
|
420d583db2 | ||
|
|
694f21d8b9 | ||
|
|
018f0b5186 | ||
|
|
3031016853 | ||
|
|
ffdecd4a21 | ||
|
|
7df3905b5c | ||
|
|
a6e67869db | ||
|
|
a67444ea1e | ||
|
|
48aac3bc86 | ||
|
|
993fbd06e9 | ||
|
|
4698215212 | ||
|
|
35110d3e88 | ||
|
|
a520078ce2 | ||
|
|
e095b7feba | ||
|
|
13f8bc14ec | ||
|
|
ef54680c9d | ||
|
|
4d3cf68a21 | ||
|
|
dd3baf0ce4 | ||
|
|
57e8a344fc | ||
|
|
9803b24aa9 | ||
|
|
24a08c9c78 | ||
|
|
df9b5703d5 | ||
|
|
d0e047f78f | ||
|
|
d1c39d4089 | ||
|
|
20aebe4460 | ||
|
|
2758df6db2 | ||
|
|
35d23ac6bd | ||
|
|
a29b0fafc7 | ||
|
|
ef4ebf4d4b | ||
|
|
bc0b51dbe4 | ||
|
|
207f25f469 | ||
|
|
c61e68b4e3 | ||
|
|
b061bb6eb9 | ||
|
|
1042e657c8 | ||
|
|
41a2ba5a9b | ||
|
|
f82a4a28d2 | ||
|
|
1403317247 | ||
|
|
2923f64442 | ||
|
|
e5b28e846b | ||
|
|
a16db0ee59 | ||
|
|
ca2c93bda4 | ||
|
|
72cbc5edf0 | ||
|
|
c285cbfa30 | ||
|
|
bab43925ac | ||
|
|
9a1023a5da | ||
|
|
1ac9d69c64 | ||
|
|
94a05a3077 | ||
|
|
a5c339209b | ||
|
|
b1fee9b6e3 | ||
|
|
8ffb5e5fb9 | ||
|
|
71fa55fd2a | ||
|
|
7b54119ff8 | ||
|
|
21dc0da78c | ||
|
|
d36ee2b634 | ||
|
|
7a6a6dc53e | ||
|
|
5640c38032 | ||
|
|
c717ab3aec | ||
|
|
a9f1052b59 | ||
|
|
29b706dd35 | ||
|
|
5a9517cc4c | ||
|
|
803d57042d | ||
|
|
8f07a836f0 | ||
|
|
0eba4833fb | ||
|
|
40ed20bdb1 | ||
|
|
40dab8bd5b | ||
|
|
2b5d0af492 | ||
|
|
5ff1a8f2a3 | ||
|
|
6db46f8890 | ||
|
|
00815ca1c9 | ||
|
|
1fdcd08c9d | ||
|
|
e195df9f32 | ||
|
|
b90c266295 | ||
|
|
185b773419 | ||
|
|
f4f3c931b0 | ||
|
|
ac19d5fba6 | ||
|
|
36e7eb94c0 | ||
|
|
87a3481b2a | ||
|
|
c20ddad7c6 | ||
|
|
f6ea24d417 | ||
|
|
7b16e38974 | ||
|
|
69545bc772 | ||
|
|
22abff43bf | ||
|
|
f7d0bf146c | ||
|
|
61c057df16 | ||
|
|
60173f78cf | ||
|
|
aa8e36e015 | ||
|
|
d7279bbcbf | ||
|
|
a6ceb5a3f1 | ||
|
|
b5e9036e79 | ||
|
|
e76c4287ac | ||
|
|
b1643cf138 | ||
|
|
76cb1ca826 | ||
|
|
384af09c72 | ||
|
|
8dbecc7b16 | ||
|
|
bbd3a45142 | ||
|
|
1e595bfaa6 | ||
|
|
6d9a8de270 | ||
|
|
33e11134e5 | ||
|
|
e4447d8c97 | ||
|
|
d4126b1c80 | ||
|
|
22e9be48ad | ||
|
|
cf7df276ff | ||
|
|
3ac74dd5a8 | ||
|
|
e684ff02eb | ||
|
|
f2332d1bb1 | ||
|
|
ae57d2592e | ||
|
|
da412768fa | ||
|
|
99df1b5584 | ||
|
|
61ff831b2d | ||
|
|
6348395b7f | ||
|
|
13b74464ab | ||
|
|
ab52e91d66 | ||
|
|
843595ed42 | ||
|
|
4cf55705d6 | ||
|
|
d02e01c55b | ||
|
|
8926a0a8b3 | ||
|
|
9a0f0900ce | ||
|
|
5b729b2f31 | ||
|
|
60be389ce0 | ||
|
|
b271bcf8e9 | ||
|
|
89a2c69651 | ||
|
|
3e622f35b2 | ||
|
|
389ed62c33 | ||
|
|
12ea010e4b | ||
|
|
25f6920f1f | ||
|
|
ca76832387 | ||
|
|
759b1a3541 | ||
|
|
9c89eabc84 | ||
|
|
535ead1241 | ||
|
|
28ea1b66a3 | ||
|
|
d5b84741ca | ||
|
|
4375774da3 | ||
|
|
d2c3f80fe4 | ||
|
|
865e4cbc01 | ||
|
|
1688ff923b | ||
|
|
95c23a4784 | ||
|
|
3a4435a70a | ||
|
|
8d1830b8c6 | ||
|
|
8693ee19f9 | ||
|
|
71ccf13585 | ||
|
|
4886ad2b6d | ||
|
|
bbb3b9a432 | ||
|
|
4444b74a58 | ||
|
|
ff76c98aa3 | ||
|
|
87f9c12a77 | ||
|
|
08208e995d | ||
|
|
452ead8a9f | ||
|
|
403c377de8 | ||
|
|
6098b72694 | ||
|
|
5395f95484 | ||
|
|
dd95b5462e | ||
|
|
77a90ccc57 | ||
|
|
24b1da7fff | ||
|
|
2a22727348 | ||
|
|
01b7b23743 | ||
|
|
26a92d3526 | ||
|
|
c6696c209f | ||
|
|
c3cbf1bd2c | ||
|
|
c2a5eef5d4 | ||
|
|
cb0d92aa82 | ||
|
|
d8ca8c6d72 | ||
|
|
fddb0939a4 | ||
|
|
c307a05e81 | ||
|
|
4ae24683fc | ||
|
|
7874d35daf | ||
|
|
06bec39aa7 | ||
|
|
b6479bbc80 | ||
|
|
6a96052fcf | ||
|
|
5e215a944d | ||
|
|
6937cc4075 | ||
|
|
39b28e9bd6 | ||
|
|
fbf5947f15 | ||
|
|
3ede456a0d | ||
|
|
b13d938b11 | ||
|
|
07a767e345 | ||
|
|
1f8d22994c | ||
|
|
54949779a9 | ||
|
|
1611bc40f7 | ||
|
|
d9508ce1e4 | ||
|
|
e4b95a6ae7 | ||
|
|
fde282b967 | ||
|
|
93a8be53d8 | ||
|
|
22b5eca868 | ||
|
|
5d3495485d | ||
|
|
11388a5ad3 | ||
|
|
7be47b2b86 | ||
|
|
4c50314331 | ||
|
|
f49289fdd0 | ||
|
|
2a50d5f897 | ||
|
|
09be73c889 | ||
|
|
b716cca8b0 | ||
|
|
c585721024 | ||
|
|
31a2548d28 | ||
|
|
ba8e61f26a | ||
|
|
75a5891fb0 | ||
|
|
d0438b37a1 | ||
|
|
a456376230 | ||
|
|
d8a5dc3563 | ||
|
|
47757dffaf | ||
|
|
e73613a699 | ||
|
|
b1ca3061a1 | ||
|
|
194435b010 | ||
|
|
0504af338b | ||
|
|
257d4af995 | ||
|
|
2f128e7e39 | ||
|
|
e3203ca468 | ||
|
|
564ca4a6f6 | ||
|
|
4be3cc14a8 | ||
|
|
a7f8f90ddc | ||
|
|
8d1e2327df | ||
|
|
bc0b97556e | ||
|
|
fb7a2d6490 | ||
|
|
eb9b01e118 | ||
|
|
ac587806a0 | ||
|
|
5961325186 | ||
|
|
61e2a3f8ce | ||
|
|
5179d0d505 | ||
|
|
9ecf5a5349 | ||
|
|
13de25e9f4 | ||
|
|
6fbf031e75 | ||
|
|
4a5067b8a6 | ||
|
|
245bd5ab5e | ||
|
|
069e25aa72 | ||
|
|
48aa0b3e45 | ||
|
|
6d5a8b94a6 | ||
|
|
bee3c82735 | ||
|
|
e3a0888cb3 | ||
|
|
e6a9227421 | ||
|
|
f78c134d31 | ||
|
|
7f88505a9a | ||
|
|
0b40765719 | ||
|
|
9940b408fb | ||
|
|
70de17474b | ||
|
|
fa87c186fe | ||
|
|
63c2a025d3 | ||
|
|
13212ddfea | ||
|
|
976ce6a645 | ||
|
|
cf668c6448 | ||
|
|
bc4bd0216e | ||
|
|
6440ee39e8 | ||
|
|
f8cf4a582e | ||
|
|
1f7c046c8f | ||
|
|
f6c9619a48 | ||
|
|
6bd55da631 | ||
|
|
2b0f55ad23 | ||
|
|
430ce13c0e | ||
|
|
f69a2933a9 | ||
|
|
db60073049 | ||
|
|
bf13ffdfe3 | ||
|
|
83a864997d | ||
|
|
5f07d422fd | ||
|
|
f30ceae58b | ||
|
|
4dc395bb24 | ||
|
|
61b049dd46 | ||
|
|
5ba2368b00 | ||
|
|
962f6d08d1 | ||
|
|
a0e4aeba1e | ||
|
|
71b3d962cf | ||
|
|
b4ef480a49 | ||
|
|
0a48ac3a35 | ||
|
|
e14120a25d | ||
|
|
d99fb7029d | ||
|
|
84cd107ad9 | ||
|
|
63a964914d | ||
|
|
a543f647ae | ||
|
|
1e552c57e4 | ||
|
|
aed2fd1f51 | ||
|
|
b8f79c760b | ||
|
|
87a038a379 | ||
|
|
3ec821a74a | ||
|
|
01311de271 | ||
|
|
9549c0dc00 | ||
|
|
b95129d71b | ||
|
|
a4ba05e90c | ||
|
|
f8f306624e | ||
|
|
a1ef63686c | ||
|
|
d7126b0784 | ||
|
|
68f40981a3 | ||
|
|
92d922d446 | ||
|
|
ea74ab6e7a | ||
|
|
057fbc10a0 | ||
|
|
636c028b56 | ||
|
|
90e07a7840 | ||
|
|
f1f5f385bb | ||
|
|
647221079f | ||
|
|
0a3f27c689 | ||
|
|
42aa85a1d9 | ||
|
|
91707b9e92 | ||
|
|
5152152edb | ||
|
|
9f2d93d2d4 | ||
|
|
01c5adc8a7 | ||
|
|
22ec308865 | ||
|
|
e585c60d67 | ||
|
|
452c8d1384 | ||
|
|
00641af25c | ||
|
|
a42a95f60a | ||
|
|
c6d116d1e8 | ||
|
|
1c6767d3f2 | ||
|
|
1e786e3d5a | ||
|
|
03a92021a7 | ||
|
|
7cbc79ff30 | ||
|
|
e20bf02652 | ||
|
|
20e702a629 | ||
|
|
1f52aaf9d6 | ||
|
|
c2ffc9e893 | ||
|
|
eeaf3af7a4 | ||
|
|
a8a86993e3 | ||
|
|
76560ce7c3 | ||
|
|
1ec6f444b7 | ||
|
|
8d5075b441 | ||
|
|
84bec6ceba | ||
|
|
ee60f232c1 | ||
|
|
e73d083131 | ||
|
|
7a56359b73 | ||
|
|
e73d66bbff | ||
|
|
008b125aec | ||
|
|
bfe4d463c1 | ||
|
|
f69a65a4fe | ||
|
|
332a7228a8 | ||
|
|
4b99a3d268 | ||
|
|
c2e6490220 | ||
|
|
aa2516eb85 | ||
|
|
01fd6d5253 | ||
|
|
95806cd1cd | ||
|
|
22df1fb68a | ||
|
|
7f7130cb2a | ||
|
|
8640b175b1 | ||
|
|
dc6a85b842 | ||
|
|
70cf9b538d | ||
|
|
e745a49e1e | ||
|
|
ea026b4350 | ||
|
|
161538e309 | ||
|
|
688f386a13 | ||
|
|
3681457c88 | ||
|
|
827c41d895 | ||
|
|
ae74e745f3 | ||
|
|
79eebbd8f8 | ||
|
|
36ca3a4431 | ||
|
|
7170c80194 | ||
|
|
ef7a2bdcc4 | ||
|
|
7189465b92 | ||
|
|
5605812c4b | ||
|
|
f4b0c741a1 | ||
|
|
1e922e5f30 | ||
|
|
4e9f6b716a | ||
|
|
857c4a9545 | ||
|
|
c1bd5924df | ||
|
|
1e33387764 | ||
|
|
5645505564 | ||
|
|
c6f2974aa3 | ||
|
|
c9f8816dea | ||
|
|
63393cc259 | ||
|
|
7c4b968db7 | ||
|
|
84ced8336c | ||
|
|
d5a01b6968 | ||
|
|
65d5561b3d | ||
|
|
159ecd02f2 | ||
|
|
efd4f1e6e1 | ||
|
|
902ee295e0 | ||
|
|
9191e04ac9 | ||
|
|
8b782cd6bb | ||
|
|
34ea7db15b | ||
|
|
5ad4bfcd11 | ||
|
|
418b34ad85 | ||
|
|
ced62f1e5f | ||
|
|
a1bbcf660a | ||
|
|
a16fdfe45e | ||
|
|
a8f3980097 | ||
|
|
ddbb74a35e | ||
|
|
3817ea5f3a | ||
|
|
8ef0216cf5 | ||
|
|
a609b3394b | ||
|
|
26c082ffaf | ||
|
|
b1d14576c5 | ||
|
|
02c05f38b1 | ||
|
|
b68d241c44 | ||
|
|
575d3a0f3e | ||
|
|
36d073b4dd | ||
|
|
ef696499e4 | ||
|
|
8629f103d6 | ||
|
|
ebf9c197e8 | ||
|
|
0a5ddd49ba | ||
|
|
3f79faccca | ||
|
|
a50ffacc50 | ||
|
|
ca640904a0 | ||
|
|
31454ef08a | ||
|
|
7f874c909e | ||
|
|
abe09ef1d3 | ||
|
|
c0c2d30209 | ||
|
|
0a9f914076 | ||
|
|
f125776bcb | ||
|
|
8d9dd818b1 | ||
|
|
1204080477 | ||
|
|
367e07d3ca | ||
|
|
d7137d3e02 | ||
|
|
92983574e7 | ||
|
|
ad1ce3a686 | ||
|
|
45de0e4e1f | ||
|
|
7ec189d2ce | ||
|
|
9b401acc13 | ||
|
|
3e485fd56f | ||
|
|
4eb4715941 | ||
|
|
9800d8e2ad | ||
|
|
0087c72f82 | ||
|
|
fc97348590 | ||
|
|
61e0c86fc7 | ||
|
|
aa424e2774 | ||
|
|
0f2a5128f8 | ||
|
|
740d86ea48 | ||
|
|
24dee489ff | ||
|
|
b3eaf02074 | ||
|
|
5622204418 | ||
|
|
2c96464e62 | ||
|
|
64ff16a74f | ||
|
|
33c4b2ae7c | ||
|
|
249c3bf3b9 | ||
|
|
1ee4d67709 | ||
|
|
26a35b488f | ||
|
|
963b610948 | ||
|
|
024066bf8b | ||
|
|
a002147d9e | ||
|
|
c6c4b1b4c3 | ||
|
|
6fccebc954 | ||
|
|
cbabe522e1 | ||
|
|
272029ae1a | ||
|
|
fbac2a99e2 | ||
|
|
994f1a9b0c | ||
|
|
6447488b9f | ||
|
|
3743c81751 | ||
|
|
6dcafe6b1e | ||
|
|
e1abaa2dc0 | ||
|
|
72d8c794e3 | ||
|
|
e85024e5a5 | ||
|
|
14917296bc | ||
|
|
91ec3bdf7e | ||
|
|
e8718d8265 | ||
|
|
64de91f99f | ||
|
|
51c938abb9 | ||
|
|
e9410e53c1 | ||
|
|
bdf904da6d | ||
|
|
4235560c90 | ||
|
|
3d43d93ece | ||
|
|
70392bfc21 | ||
|
|
b58f4df8df | ||
|
|
4e570ce710 | ||
|
|
9f55d94f8b | ||
|
|
c4b424fa1b | ||
|
|
c460c8125c | ||
|
|
fdce468c56 | ||
|
|
838968dcf0 | ||
|
|
8b38402d4b | ||
|
|
48f0c6aede | ||
|
|
bddf3b2449 | ||
|
|
b5f8bf2381 | ||
|
|
baffcb0110 | ||
|
|
9e2297bd78 | ||
|
|
35a62778b8 | ||
|
|
7cac5852ef | ||
|
|
952a1ce32e | ||
|
|
fc30463c7c | ||
|
|
76055af9e7 | ||
|
|
b63a06409f | ||
|
|
1744eaecf9 | ||
|
|
00ec5cbdeb | ||
|
|
922dece548 | ||
|
|
e1a60910e9 | ||
|
|
f3f2a8f548 | ||
|
|
e12e8162cf | ||
|
|
1aa047bf61 | ||
|
|
128cedaa06 | ||
|
|
719c36eb5b | ||
|
|
8fd9d6cb8e | ||
|
|
0f9e890314 | ||
|
|
ffbe181b58 | ||
|
|
2276e9f476 | ||
|
|
b4e3bed661 | ||
|
|
84c136f9e5 | ||
|
|
41824cde94 | ||
|
|
7997b8595a | ||
|
|
5eafdfd398 | ||
|
|
16701a7f3e | ||
|
|
dc86140f4e | ||
|
|
550e74f0fd | ||
|
|
a56080e419 | ||
|
|
e2c318b2fb | ||
|
|
0f1ed56f07 | ||
|
|
6b9c553dd0 | ||
|
|
2de1587cba | ||
|
|
a4d51830d8 | ||
|
|
618cee0ac6 | ||
|
|
13aba586ca | ||
|
|
74b5168f99 | ||
|
|
3cba651ae8 | ||
|
|
745b4dc19e | ||
|
|
2a3d025bda | ||
|
|
e42bd02bb6 | ||
|
|
29ff706f0f | ||
|
|
2a2d1f2bc6 | ||
|
|
e88eea7693 | ||
|
|
999b246da0 | ||
|
|
da11287c31 | ||
|
|
a38e3b96b6 | ||
|
|
44e18d649e | ||
|
|
b27caeab76 | ||
|
|
ed5e4a2611 | ||
|
|
d6e1e7e027 | ||
|
|
d7afe38857 | ||
|
|
d24ebb4803 | ||
|
|
a30c122f83 | ||
|
|
aaccfedfd8 | ||
|
|
a00707b719 | ||
|
|
a6e1e76130 | ||
|
|
63ffdc4564 | ||
|
|
ea9aba2917 | ||
|
|
3fb8147771 | ||
|
|
b67619c0fc | ||
|
|
571136b337 | ||
|
|
c532fc4a1c | ||
|
|
034e3129d2 | ||
|
|
4cdc6b2279 | ||
|
|
e7133a50ec | ||
|
|
4e9a68e2a5 | ||
|
|
b42049ff64 | ||
|
|
889b9742f4 | ||
|
|
8d5123d516 | ||
|
|
9873fcbe58 | ||
|
|
2e59061b67 | ||
|
|
4a4e5a8682 | ||
|
|
2c577b3391 | ||
|
|
e1e3b4c39e | ||
|
|
26536a647e | ||
|
|
9ba9afe834 | ||
|
|
7dec56450b | ||
|
|
45433c9857 | ||
|
|
1a9941689e | ||
|
|
3fa13a1d8f | ||
|
|
aca1c5f76e | ||
|
|
e87f32f6e9 | ||
|
|
40946c702a | ||
|
|
544913d509 | ||
|
|
ff7dcd1e38 | ||
|
|
41aba1370d | ||
|
|
7635c70877 | ||
|
|
1845113762 | ||
|
|
17b7777e74 | ||
|
|
3517862871 | ||
|
|
145f5ca087 | ||
|
|
36fc409e30 | ||
|
|
379b452241 | ||
|
|
167e17f5bc | ||
|
|
0b834904f4 | ||
|
|
ca02b34b6f | ||
|
|
8b48db3da0 | ||
|
|
6348d4c311 | ||
|
|
ad0819ba51 | ||
|
|
549de0c8f9 | ||
|
|
e5cafc9f58 | ||
|
|
771de45cca | ||
|
|
757553668d | ||
|
|
b6de9cf931 | ||
|
|
7b3c96471d | ||
|
|
1867f33eeb | ||
|
|
4fb58d5d46 | ||
|
|
0940527c65 | ||
|
|
8db5931fb2 | ||
|
|
17582955a9 | ||
|
|
27cd4bbd26 | ||
|
|
c4b03e703b | ||
|
|
a33ced77fc | ||
|
|
e53da894f5 | ||
|
|
7be2c2db6a | ||
|
|
85f5100665 | ||
|
|
66900cefc9 | ||
|
|
0eb794b5fd | ||
|
|
818ffecc45 | ||
|
|
f63a958a3b | ||
|
|
cb0f8f6879 | ||
|
|
7760d0e025 | ||
|
|
22bb0d96d2 | ||
|
|
2b650db1bc | ||
|
|
c0957fb625 | ||
|
|
0775b0c397 | ||
|
|
6f312ac705 | ||
|
|
be26f7f684 | ||
|
|
e04c8fdd47 | ||
|
|
958890ea64 | ||
|
|
2c63f42dbb | ||
|
|
8a399c6fcb | ||
|
|
a9fe5348d9 | ||
|
|
f550878fed | ||
|
|
a1801b7808 | ||
|
|
10c1cd7569 | ||
|
|
c38a119e68 | ||
|
|
88457cce79 | ||
|
|
63fb42a888 | ||
|
|
212b3212cc | ||
|
|
2a4cbd456e | ||
|
|
2f3c7ae269 | ||
|
|
94e8d24f5a | ||
|
|
36f57b79db | ||
|
|
0e740e83cb | ||
|
|
a0c392423e | ||
|
|
8c0b42356f | ||
|
|
83cb77131d | ||
|
|
94fa715e96 | ||
|
|
47d9285617 | ||
|
|
a97d5e18cd | ||
|
|
b59e2d7793 | ||
|
|
0ecf80c4bf | ||
|
|
e3dcae62d8 | ||
|
|
4323532096 | ||
|
|
37977cef1b | ||
|
|
93987971ab | ||
|
|
33fa1b7ff8 | ||
|
|
9e52a5b095 | ||
|
|
c82ea31a40 | ||
|
|
603f2cfd9d | ||
|
|
a9ff0223af | ||
|
|
e414071448 | ||
|
|
03e53adfab | ||
|
|
807ed1317d | ||
|
|
85485063cf | ||
|
|
f121fbb43b | ||
|
|
b572a856e9 | ||
|
|
93aa11d2f6 | ||
|
|
2a763a57ae | ||
|
|
6eb7163723 | ||
|
|
35b2755efe | ||
|
|
6ccd369d90 | ||
|
|
f1ada22570 | ||
|
|
60608a662b | ||
|
|
aef1418926 | ||
|
|
3e7c9345c3 | ||
|
|
e4641c3d3b | ||
|
|
50f60bae50 | ||
|
|
c188778d53 | ||
|
|
0ce45f849a | ||
|
|
bf0537cf73 | ||
|
|
dc957f400f | ||
|
|
8ba3da20af | ||
|
|
7bc172f355 | ||
|
|
ab468c8b8c | ||
|
|
a1fbe85e7b | ||
|
|
cebb5854cf | ||
|
|
8d9a97ef1d | ||
|
|
74f58efb24 | ||
|
|
d8cb7ff848 | ||
|
|
6174ebefde | ||
|
|
a885e11a74 | ||
|
|
56c0dbc4b2 | ||
|
|
49a79bf8fb | ||
|
|
6aadf7f5fc | ||
|
|
7286d6be96 | ||
|
|
8460ec69f7 | ||
|
|
5de0de0e14 | ||
|
|
10bd2f2372 | ||
|
|
2f90f91f22 | ||
|
|
733204b3c2 | ||
|
|
1dacd15eea | ||
|
|
e80ea9a289 | ||
|
|
da3c88ea9a | ||
|
|
1a7fd71b2f | ||
|
|
27ffa8e384 | ||
|
|
6a52eff141 | ||
|
|
865ab30162 | ||
|
|
4729b48bd7 | ||
|
|
855f1afc9d | ||
|
|
1bb85f670c | ||
|
|
321dae127a | ||
|
|
e7200ab600 | ||
|
|
c5b6b92361 | ||
|
|
8a8f1a7ccf | ||
|
|
8ded7b56ab | ||
|
|
e8dec4073d | ||
|
|
5f6be5e6e8 | ||
|
|
c558d86ba9 | ||
|
|
748f8f9131 | ||
|
|
7d6ded2ad7 | ||
|
|
e10d86cd05 | ||
|
|
d704cd7bb8 | ||
|
|
8b2f9c138a | ||
|
|
728a319f3d | ||
|
|
10d8caa7ea | ||
|
|
a33c20599c | ||
|
|
29f275ab82 | ||
|
|
d85ee06cee | ||
|
|
5882c4d675 | ||
|
|
55bd72a6b1 | ||
|
|
ca53e44f8a | ||
|
|
c5bc8f753b | ||
|
|
79f66abba3 | ||
|
|
1e63230768 | ||
|
|
a1aea5a3d7 | ||
|
|
258a09c5e0 | ||
|
|
99454b6ca6 | ||
|
|
35e4be9f4a | ||
|
|
9a0335326f | ||
|
|
41232fae4f | ||
|
|
70b368c854 | ||
|
|
1cfca09aa1 | ||
|
|
c50d84e50d | ||
|
|
dc3d2b9ff9 | ||
|
|
d3dc9bee2b | ||
|
|
7a560a88b1 | ||
|
|
2a150bd018 | ||
|
|
943982da70 | ||
|
|
e5e747c6c5 | ||
|
|
ffdd3ce510 | ||
|
|
db43b6e983 | ||
|
|
debb5b5814 | ||
|
|
745977642e | ||
|
|
3761af7cd2 | ||
|
|
abe1bc9e98 | ||
|
|
57bf87beac | ||
|
|
e7bfee6f8d | ||
|
|
ed492f407c | ||
|
|
013587eeeb | ||
|
|
e347cbd2e6 | ||
|
|
46aa89399a | ||
|
|
ad3da31c06 | ||
|
|
329e3b5177 | ||
|
|
30cb21cae3 | ||
|
|
2cdc26d2fe | ||
|
|
625557cd1d | ||
|
|
a74b043aff | ||
|
|
7a334eb417 | ||
|
|
bf2e145ed1 | ||
|
|
c2aa43750f | ||
|
|
4a53d963b3 | ||
|
|
e0181dfae0 | ||
|
|
a3aac0aaa2 | ||
|
|
d4a6bb29f4 | ||
|
|
5acd6d9547 | ||
|
|
a0019d0e5c | ||
|
|
d8d0e6b86d | ||
|
|
dbe9c8e75f | ||
|
|
4c247070aa | ||
|
|
cbe80325be | ||
|
|
7331ddbd78 | ||
|
|
4a76aa1d64 | ||
|
|
12075c3274 | ||
|
|
bf7b7c7aa9 | ||
|
|
6ebdda485d | ||
|
|
79929bbacd | ||
|
|
6c1be6f025 | ||
|
|
951db45c95 | ||
|
|
0472e5f546 | ||
|
|
bfe7e7d44d | ||
|
|
e7115758de | ||
|
|
fc076ff851 | ||
|
|
e8b0b09c3f | ||
|
|
3e743436cd | ||
|
|
cd63b99470 | ||
|
|
a7bc964a3b | ||
|
|
22f18ef226 | ||
|
|
2fddf4ffc2 | ||
|
|
4e55497467 | ||
|
|
1cecf8593b | ||
|
|
693fc2e591 | ||
|
|
bdcccedb95 | ||
|
|
321dfb609a | ||
|
|
6f3a2f8b4a | ||
|
|
93a9e56502 | ||
|
|
7eea9df5d5 | ||
|
|
582c20e9a6 | ||
|
|
e4a7e695ae | ||
|
|
d1b985609d | ||
|
|
b830f40620 | ||
|
|
5d0fc9e609 | ||
|
|
b2bc95d8b8 | ||
|
|
d6d842a317 | ||
|
|
8958f19f9a | ||
|
|
e8cc2b0edf | ||
|
|
e941c6d19f | ||
|
|
6d0ee622c6 | ||
|
|
93364c06d6 | ||
|
|
f8675d987e | ||
|
|
b62f877c69 | ||
|
|
52de8d577a | ||
|
|
ec1aa66cd3 | ||
|
|
e35e8e69b7 | ||
|
|
44f9fbd6c3 | ||
|
|
411b6176ec | ||
|
|
4baf145c50 | ||
|
|
e57e9bcac0 | ||
|
|
9cc502dbe6 | ||
|
|
7c260ef69a | ||
|
|
cb2bbe86dd | ||
|
|
d0574e2f19 | ||
|
|
cfe2ed5f17 | ||
|
|
1ecd0c520c | ||
|
|
7415fdbed3 | ||
|
|
1d14996b28 | ||
|
|
2aa0507c12 | ||
|
|
a50444c61a | ||
|
|
3057b9627c | ||
|
|
250554ed71 | ||
|
|
ad5db9a914 | ||
|
|
4f09be744f | ||
|
|
296db96a6c | ||
|
|
43822c9e35 | ||
|
|
8dd2439e65 | ||
|
|
418aa20de6 | ||
|
|
774f6dc27e | ||
|
|
8c0600b372 | ||
|
|
d8e1d92ab9 | ||
|
|
afdd6e7bee | ||
|
|
fb1f6751d3 | ||
|
|
cb4bfd4640 | ||
|
|
b1d9ce2941 | ||
|
|
b236dedfe8 | ||
|
|
a93f6d5e7e | ||
|
|
9ab0e7ec59 | ||
|
|
06c360c5eb | ||
|
|
c1ba676103 | ||
|
|
36a69befd8 | ||
|
|
46ffb184ff | ||
|
|
a1e38ee7fd | ||
|
|
a64805a69f | ||
|
|
fef788d23f | ||
|
|
378e7cc772 | ||
|
|
02caca0732 | ||
|
|
59b6494147 | ||
|
|
03ea50ac35 | ||
|
|
539e635d0c | ||
|
|
95a0478582 | ||
|
|
6ae32acf9b | ||
|
|
625d383805 | ||
|
|
164b1948fc | ||
|
|
0d742d5408 | ||
|
|
36a46d4aad | ||
|
|
12b49d1353 | ||
|
|
64274356d1 | ||
|
|
fdb3b85bde | ||
|
|
d95e8b2822 | ||
|
|
3e09b0fd52 | ||
|
|
8ea97a12b5 | ||
|
|
0af2304a36 | ||
|
|
4a2999770b | ||
|
|
fe4cad085e | ||
|
|
d3c0f075cf | ||
|
|
a5ee8cf64a | ||
|
|
68e3f07c6a | ||
|
|
85b58a1e05 | ||
|
|
d57ab33a44 | ||
|
|
47519588b6 | ||
|
|
1c0ef4c177 | ||
|
|
d4433eb33c | ||
|
|
31ee7d7e07 | ||
|
|
22545f79ed | ||
|
|
e7c18f1dc9 | ||
|
|
be8e43a227 | ||
|
|
458337bb75 | ||
|
|
f89e77438d | ||
|
|
ad7dc7153c | ||
|
|
faa077ca9e | ||
|
|
37fbc3b19d | ||
|
|
26a9323422 | ||
|
|
25b6f3da80 | ||
|
|
5700c0a8c2 | ||
|
|
f110f47011 | ||
|
|
34198a1824 | ||
|
|
f4397da253 | ||
|
|
55e6d1a8d5 | ||
|
|
7a5b239bff | ||
|
|
a67a2852bc | ||
|
|
5f5c51fc44 | ||
|
|
1b128857c8 | ||
|
|
0217cb7b49 | ||
|
|
fd5b26a387 | ||
|
|
d622dc7d31 | ||
|
|
25ad71b167 | ||
|
|
25617e3917 | ||
|
|
284385549e | ||
|
|
40e2d2be24 | ||
|
|
9470277223 | ||
|
|
da2ad045bf | ||
|
|
fcdec162d9 | ||
|
|
78d1474884 | ||
|
|
f3497249b8 | ||
|
|
ba569b18d3 | ||
|
|
f861933932 | ||
|
|
0c8f90dc59 | ||
|
|
e1c196f0ad | ||
|
|
8685b5d48c | ||
|
|
7f16818f53 | ||
|
|
24b8e85338 | ||
|
|
d486eb746f | ||
|
|
c8f4fac5dc | ||
|
|
c1f7601ad4 | ||
|
|
1052c6b2b7 | ||
|
|
16d897ff93 | ||
|
|
f211944fb3 | ||
|
|
f3bd7daba2 | ||
|
|
1eee39d1c9 | ||
|
|
1d26155a03 | ||
|
|
8b452face6 | ||
|
|
066dff91f2 | ||
|
|
76f6bb3c2f | ||
|
|
1db05de682 | ||
|
|
9686356aa1 | ||
|
|
17b939f6d6 | ||
|
|
8101eb486f | ||
|
|
5fe64ffc92 | ||
|
|
ffe38880e9 | ||
|
|
6943e07f55 | ||
|
|
9723bfc8cd | ||
|
|
6b2c93673e | ||
|
|
06bfcd795d | ||
|
|
a0cfe60c1e | ||
|
|
019441ad97 | ||
|
|
2076e3f802 | ||
|
|
6fc0d7f8d7 | ||
|
|
8c4747fe7b | ||
|
|
656e4355a7 | ||
|
|
6fd085c371 | ||
|
|
4f02dbb007 | ||
|
|
e090cfbc64 | ||
|
|
be42414408 | ||
|
|
76d9b0c5c5 | ||
|
|
c815fd04ff | ||
|
|
86c80186d3 | ||
|
|
6153a1f0ae | ||
|
|
25bb508f3d | ||
|
|
f113853b05 | ||
|
|
e3bd7003ba | ||
|
|
c951e901aa | ||
|
|
3b422a60fa | ||
|
|
b569796b4a | ||
|
|
54a056fef5 | ||
|
|
229a796e06 | ||
|
|
6d1ad48c39 | ||
|
|
d109acbc0e | ||
|
|
1f27a82828 | ||
|
|
2c26c663cb | ||
|
|
cb6dfd31d0 | ||
|
|
a3fe65a59a | ||
|
|
87a07b3f22 | ||
|
|
be993f0de6 | ||
|
|
6922c4586d | ||
|
|
5d8b53ab3e | ||
|
|
b8f736fac4 | ||
|
|
67c207d352 | ||
|
|
4784b73a9f | ||
|
|
2ded135da9 | ||
|
|
f9b3f734f0 | ||
|
|
03a89c0f2e | ||
|
|
8cae692103 | ||
|
|
1583ab889a | ||
|
|
d1074a3a75 | ||
|
|
de4663ede8 | ||
|
|
0a67e36522 | ||
|
|
cd94aecbee | ||
|
|
e035bb19b6 | ||
|
|
1fda02a9fb | ||
|
|
4ef6484e9e | ||
|
|
eecf335a1f | ||
|
|
9022f378ea | ||
|
|
cae8a6b564 | ||
|
|
0c1583ff7b | ||
|
|
8e49220af5 | ||
|
|
1e6d54f6da | ||
|
|
d107f664e5 | ||
|
|
95f536d8f2 | ||
|
|
e9dbe33a14 | ||
|
|
3e548bdd60 | ||
|
|
bf2d280464 |
414
README
Normal file
414
README
Normal file
@@ -0,0 +1,414 @@
|
||||
README
|
||||
|
||||
Installation Instructions
|
||||
|
||||
EPICS base
|
||||
|
||||
Release 3.14.0beta1
|
||||
|
||||
What is EPICS base?
|
||||
|
||||
The Experimental Physics and Industrial Control Systems (EPICS) is
|
||||
an extensible set of software components and tools with which
|
||||
application developers can create a control system. This control system
|
||||
can be used to control accelerators, detectors, telescopes, or other
|
||||
scientific experimental equipment. EPICS base is the set of core
|
||||
software, i.e. the components of EPICS without which EPICS would not
|
||||
function. EPICS base allows an arbitrary number of target systems,
|
||||
IOCs (input/output controllers), and host systems, OPIs (operator
|
||||
interfaces) of various types.
|
||||
|
||||
What is new in this release?
|
||||
|
||||
This version of EPICS base contains significant changes and offers
|
||||
major improvements in functionality over previous versions. Please
|
||||
check the RELEASE_NOTES file in the distribution for description of
|
||||
changes and release migration details.
|
||||
|
||||
Copyright
|
||||
|
||||
Please review the COPYRIGHT* files included in the distribution for
|
||||
legal terms of usage.
|
||||
|
||||
Supported platforms
|
||||
|
||||
Currently this version of EPICS base has been built on the following
|
||||
hosts for the following targets. If you are trying to build EPICS base on a
|
||||
different host or for a different target machine you must get the proper
|
||||
host/target cross compiler and header files and you will have to create
|
||||
and add the appropriate new configure files to the
|
||||
base/configure/os/directory. You can start by copying existing
|
||||
configuration files in the configure/os directory and then make changes
|
||||
for your new platforms.
|
||||
|
||||
Host platforms (operating system - architecture - <alternate c++
|
||||
compiler>)
|
||||
|
||||
solaris-sparc
|
||||
solaris-sparc-gnu
|
||||
linux-x86
|
||||
win32-x86
|
||||
win32-x86-borland
|
||||
|
||||
Cross compile target platforms (operating system - architecture)
|
||||
|
||||
vxWorks-486
|
||||
vxWorks-68040
|
||||
vxWorks-68040lc
|
||||
vxWorks-68060
|
||||
vxWorks-ppc603
|
||||
vxWorks-ppc604
|
||||
vxWorks-pentium
|
||||
RTEMS-gen68360
|
||||
RTEMS-mvme167
|
||||
RTEMS-pc386
|
||||
|
||||
Supported compilers
|
||||
|
||||
This version of EPICS base has been built and tested using the host
|
||||
vendor's C and C++ compilers as well as the GNU gcc and g++
|
||||
compilers. The GNU cross-compilers have been used for all
|
||||
cross-compiled targets. You may need the host vendor's C++ compiler
|
||||
in your search path to do EPICS builds. Check definitions of ACC and
|
||||
CCC in base/configure/os/CONFIG.<host>.<host> or the definitions
|
||||
for GCC and G++ if ANSI=GCC and CPLUSPLUS=GCC are specified
|
||||
in CONFIG_SITE.
|
||||
|
||||
Software requirements
|
||||
|
||||
GNU make
|
||||
You must use GNU make, gnumake, for any EPICS builds. Set your
|
||||
path so that a gnumake version 3.70 or later is available.
|
||||
|
||||
Perl
|
||||
You must have perl version 5.0 or later installed. The configure files do
|
||||
not specify the perl full pathname. You need the perl executable in
|
||||
your search path.
|
||||
|
||||
Unzip and tar (Winzip on WIN32 systems)
|
||||
You must have tools available to unzip and untar the EPICS base
|
||||
distribution file.
|
||||
|
||||
Tornado 2.0
|
||||
You must have Tornado 2.0 installed if any of your target systems are
|
||||
vxWorks systems. Tornado 2.0 provides the cross-compiler and header
|
||||
files needed to build for these target systems. The full path location to
|
||||
Tornado 2.0 must be specified in the base/configure/RELEASE or
|
||||
base/configure/RELEASE.<hostarch> file. You will also need one or
|
||||
more board support packages. Consult the vxWorks documentation for
|
||||
details.
|
||||
|
||||
Optional GNU compiler requirement for solaris-sparc and
|
||||
win32-x86 hosts
|
||||
If you have state notation language source files (*.st files) which require
|
||||
c preprocessing before conversion to c source, gcc must be in your path.
|
||||
|
||||
Host system storage requirements
|
||||
|
||||
The GNU zipped tar file is approximately 1.4 MB in size. The unzipped
|
||||
untarred distribution source tree is approximately 6 MB. The build
|
||||
created files for each host take approximately 40 MB and the build
|
||||
created files for each target take approximately 10 MB.
|
||||
|
||||
Documentation
|
||||
|
||||
EPICS documentation is available on the WWW via the EPICS home
|
||||
page at APS: URL http://www.aps.anl.gov/Epics
|
||||
|
||||
This README.htm is in the base distribution file and will be available
|
||||
on the IOC software R3.14 EPICS WWW page which can be accessed
|
||||
from the APS EPICS home page.
|
||||
|
||||
WWW pages
|
||||
|
||||
EPICS home page at APS
|
||||
|
||||
http://www.aps.anl.gov/epics
|
||||
|
||||
Other WWW sites
|
||||
|
||||
Additional information on EPICS can be found at the
|
||||
various other WWW links on the EPICS home page at APS.
|
||||
|
||||
Mailing Lists
|
||||
|
||||
There are five EPICS mailing lists provided by APS. See The
|
||||
EPICS home page for subscription instructions.
|
||||
|
||||
Directory Structure
|
||||
|
||||
Distribution directory structure:
|
||||
|
||||
base Root directory of the base istribution
|
||||
base/config R3.13 compatibility build configuration files
|
||||
base/config/tools Perl and shell scripts used in the R3.13 build
|
||||
base/configure Operating system independent build config files
|
||||
base/configure/os Operating system dependent build config files
|
||||
base/configure/tools Perl and shell scripts used in the build
|
||||
base/copyright Text files describing software copyrights
|
||||
base/src All epics base source code in subdirectories
|
||||
base/src/as Access security
|
||||
base/src/bpt Break point table
|
||||
base/src/ca Channel access
|
||||
base/src/cas Channel access server
|
||||
base/src/db Database access
|
||||
base/src/db/test Database access tests
|
||||
base/src/dbStatic Static database access
|
||||
base/src/dbtools Database dbLoadTemplate tools
|
||||
base/src/dev Device support (softDev and testDev)
|
||||
base/src/gdd General data descriptor
|
||||
base/src/iocsh Ioc shell command interpreter
|
||||
base/src/libCom General purpose library code in subdirectories
|
||||
base/src/libCom/bucketLib Hash bucket
|
||||
base/src/libCom/calc Algebraic expression interpreter
|
||||
base/src/libCom/cvtFast Fast number to string conversion
|
||||
base/src/libCom/cxxTemplates C++ templates and templates tests
|
||||
base/src/libCom/dbmf Memory management for frequent alloc/free
|
||||
base/src/libCom/ellLib EPICS double linked list
|
||||
base/src/libCom/env Default EPICS environment settings
|
||||
base/src/libCom/error Error handling definitions and routines
|
||||
base/src/libCom/fdmgr File descriptor manager
|
||||
base/src/libCom/freeList Memory management using free lists
|
||||
base/src/libCom/gpHash General purpose hash table
|
||||
base/src/libCom/logClient Logging client
|
||||
base/src/libCom/macLib Macro substitution handler
|
||||
base/src/libCom/misc Miscellaneous utilities
|
||||
base/src/libCom/osi Operating system independent code
|
||||
base/src/libCom/osi/os Operating system dependant code in subdirectories
|
||||
base/src/libCom/taskwd Task watchdog
|
||||
base/src/libCom/test Test tools (timer, semBinary, semMutex,fdmgr, ?)
|
||||
base/src/libCom/timer Timer
|
||||
base/src/libCom/tsDefs R3.13 time stamp definitions and routines
|
||||
base/src/libCom/ring ringPointer: First in first out circular buffers
|
||||
base/src/libCom/cppStd epicsList: Lists of pointers to objects
|
||||
base/src/makeBaseApp Perl tool+templates to create ioc app dvl tree
|
||||
base/src/makeBaseExt Perl tool+templates to create extension dvl tree
|
||||
base/src/misc Miscellaneous (coreRelease, iocInit, asSub*)
|
||||
base/src/rec Record support
|
||||
base/src/registry EPICS support function registry
|
||||
base/src/rsrv Channel access ioc resource server library
|
||||
base/src/toolsComm Code for the build tools antelope and e_flex
|
||||
base/src/util Utilities (ca_test, iocLogServer, startCArepeater)
|
||||
base/src/vxWorks R3.13 compatibility code specific to vxWorks
|
||||
base/startup Scripts for setting up path and environment
|
||||
|
||||
Install directories created by the build:
|
||||
|
||||
base/bin Installed scripts and executables in subdirs
|
||||
base/lib Installed libraries in arch subdirectories
|
||||
base/dbd Installed data base definitions
|
||||
base/include Installed header files
|
||||
base/include/os Installed os specific header files
|
||||
base/templates Installed templates
|
||||
|
||||
Build related components
|
||||
|
||||
base/README* files
|
||||
README.htm Instructions for setup and building epics base
|
||||
(i.e. this document)
|
||||
README.WIN32 Microsoft WIN32 specific instructions
|
||||
README.cxxTemplates Information about C++ templates in EPICS base
|
||||
README.niCpu030 NI cpu030 specific instructions
|
||||
|
||||
base/startup directory - contains scripts to set environment and path
|
||||
EpicsHostArch c shell script to set EPICS_HOST_ARCH env variable
|
||||
EpicsHostArch.pl perl script to set EPICS_HOST_ARCH env variable
|
||||
Site.profile bourne shell script to set path and env variables
|
||||
Site.cshrc c shell script to set path and env variables
|
||||
borland.bat WIN32 bat file to set path and env variables
|
||||
win32.bat WIN32 bat file to set path and env variables
|
||||
|
||||
base/configure directory - contains build definitions and rules
|
||||
CONFIG.CrossCommon Cross build definitions
|
||||
CONFIG.gnuCommon Gnu compiler build definitions for all archs
|
||||
CONFIG_ADDONS Definitions for <osclass> and DEFAULT options
|
||||
CONFIG_BASE EPICS base tool and location definitions
|
||||
CONFIG_BASE_VERSION Definitions for EPICS base version number
|
||||
CONFIG_COMMON Definitions common to all builds
|
||||
CONFIG_ENV Definitions of EPICS environment variables
|
||||
CONFIG_SITE Site specific make defintions
|
||||
CONFIG_SITE_ENV Site defaults for EPICS environment variables
|
||||
CONFIG Includes configure files and allows variable overrides
|
||||
RELEASE Location of external products such as Tornado II
|
||||
RULES Includes appropriate rules file
|
||||
RULES.Db Rules for database and database definition files
|
||||
RULES_ARCHS Definitions and rules for building architectures
|
||||
RULES_BUILD Build and install rules and definitions
|
||||
RULES_DIRS Definitions and rules for building subdirectories
|
||||
RULES_JAVA Definitions and rules for java jars and classes
|
||||
RULES_TOP Rules specific to a <top> dir (uninstall and tar)
|
||||
Sample.Makefile Sample makefile with comments
|
||||
|
||||
base/configure/os directory - contains os-arch specific definitions
|
||||
CONFIG.<host>.<target> Specific host-target build definitions
|
||||
CONFIG.Common.<target> Specific target definitions for all hosts
|
||||
CONFIG.<host>.Common Specific host definitions for all targets
|
||||
CONFIG.UnixCommon.Common Definitions for Unix hosts and all target
|
||||
CONFIG.<host>.vxWorksCommon Specific host definitions for all vx targets
|
||||
CONFIG_COMPAT R3.13 arch compatibility definitions
|
||||
CONFIG_SITE.<host>.<target> Site specific host-target definitions
|
||||
CONFIG_SITE.Common.<target> Site specific target defs for all hosts
|
||||
CONFIG_SITE.<host>.Common Site specific host defs for all targets
|
||||
|
||||
base/configure/tools directory - contains Perl scripts used for the build
|
||||
MakeReleae Unix shell script to create a release tar file
|
||||
convertRelease.pl Performs consistancy checks on RELEASE files
|
||||
cp.pl This Perl script copies an existing file
|
||||
installEpics.pl Installs built files into install directories.
|
||||
makeDependsTargets.pl Creates targets of include dependency files
|
||||
makeMakefile.pl Creates a Makefile in O.<arch> dirs
|
||||
makeMakefileInclude.pl Creates file to be included by Makefile
|
||||
mkdir.pl Creates a directory (like Unix mkdir)
|
||||
mkmf.pl Generates dependencies from include stmnts
|
||||
munch.pl Creates a ctdt.c file for vxWorks targets
|
||||
mv.pl Renames an existing file.
|
||||
replaceVAR.pl Changes CapFast VAR(xxx) to $(xxx) notation
|
||||
rm.pl Quietly removes an existing file.
|
||||
|
||||
Building EPICS base (Unix and Win32)
|
||||
|
||||
Unpack file
|
||||
|
||||
Unzip and untar the distribution file. Use WinZip on
|
||||
Windows systems.
|
||||
|
||||
Set environment variable
|
||||
|
||||
Files in the base/startup directory have been provided to help
|
||||
set required path and other environment variables .
|
||||
|
||||
EPICS_HOST_ARCH
|
||||
Before you can build or use EPICS R3.14, the environment
|
||||
variable EPICS_HOST_ARCH must be defined. A perl
|
||||
script EpicsHostArch.pl in the base/startup directory has
|
||||
been provided to help set EPICS_HOST_ARCH. You should
|
||||
have EPICS_HOST_ARCH set to your host operating
|
||||
system followed by a dash and then your host architecture,
|
||||
e.g. solaris-sparc. If you are not using the OS vendor's
|
||||
c/c++ compiler for host builds, you will need another dash
|
||||
followed by the alternate compiler name (e.g. "-gnu" for GNU
|
||||
c/c++ compilers on a solaris host or "-borland" for Borland
|
||||
c/c++ compilers on a WIN32 host) . See configure/CONFIG_SITE
|
||||
for a list of supported EPICS_HOST_ARCH values.
|
||||
|
||||
PERLLIB
|
||||
On WIN32, some versions of Perl require that the
|
||||
environment variable PERLLIB be set to <perl directory
|
||||
location>.
|
||||
|
||||
PATH
|
||||
As already mentioned, you must have the perl executable
|
||||
and you may need C and C++ compilers in your search path.
|
||||
For building base you also must have echo in your search
|
||||
path. For Unix host builds you also need touch, cpp, cp, rm,
|
||||
mv, and mkdir in your search path and /bin/chmod must
|
||||
exist. On some Unix systems you may also need ar and ranlib
|
||||
in your path, and the c compiler may require ld in your path.
|
||||
|
||||
Unix LD_LIBRARY_PATH
|
||||
If you plan to build EPICS base shared libraries instead of
|
||||
archive libraries, on Unix systems you will need to add
|
||||
fullpathname to $(INSTALL_LOCATION)/lib/$(EPICS_HOST_ARCH) to
|
||||
your LD_LIBRARY_PATH environment variable.
|
||||
|
||||
Win32 PATH
|
||||
On WIN32 systems, building shared libraries is the default
|
||||
setting and you will need to add fullpathname to
|
||||
$(INSTALL_LOCATION)/bin/$(EPICS_HOST_ARCH) to your path.
|
||||
Building shared libraries is determined by the value of the
|
||||
macro SHARED_LIBRARIES in CONFIG_SITE (either YES or NO).
|
||||
|
||||
|
||||
Do site-specific build configuration
|
||||
|
||||
Site configuration
|
||||
To configure EPICS, you may want to modify the default
|
||||
definitions in the following files:
|
||||
|
||||
configure/CONFIG_SITE Build choices. Specify target archs.
|
||||
configure/CONFIG_SITE_ENV Environment variable defaults
|
||||
configure/RELEASE TORNADO 2 full path location
|
||||
|
||||
Host configuration
|
||||
To configure each host system, you may override the default
|
||||
definitions by adding a new file with override definitions into
|
||||
the configure/os directory. The new file should have the
|
||||
same name as the distribution file to be overridden except
|
||||
with CONFIG in the name changed to CONFIG_SITE.
|
||||
|
||||
configure/os/CONFIG.<host>.<host> - Host build settings
|
||||
configure/os/CONFIG.<host>.Common - Host cross build settings
|
||||
|
||||
Target configuration
|
||||
To configure each target system, you may override the
|
||||
default definitions by adding a new file with override
|
||||
definitions into the configure/os directory. The new file
|
||||
should have the same name as the distribution file to be
|
||||
overridden except with CONFIG in the name replaced by
|
||||
CONFIG_SITE.
|
||||
|
||||
configure/os/CONFIG.Common.<target> - Target cross settings
|
||||
configure/os/CONFIG.<host>.<target> - Host-target settings
|
||||
|
||||
R3.13 compatibility configuration
|
||||
To configure EPICS base for building with R3.13 extensions
|
||||
and ioc applications, you must modify the default definitions
|
||||
in the base/config/CONFIG_SITE* files to agree with definitions
|
||||
you made in base/configure and base/configure/os files.
|
||||
|
||||
Build EPICS base
|
||||
|
||||
After configuring the build you should be able to build
|
||||
EPICS base by issuing the following commands in the
|
||||
distribution's root directory (base)
|
||||
|
||||
gnumake clean uninstall
|
||||
gnumake
|
||||
|
||||
The command "gnumake clean uninstall" will remove all
|
||||
files and directories generated by a previous build. The
|
||||
command "gnumake" will build and install everything for
|
||||
the configured host and targets.
|
||||
It is recommended that you do a "gnumake clean uninstall"
|
||||
at the root directory of an EPICS directory structure before
|
||||
each complete rebuild to ensure that all components will be
|
||||
rebuilt.
|
||||
|
||||
Multiple host platforms
|
||||
|
||||
You can build using a single EPICS directory structure on multiple host
|
||||
systems and for multiple cross target systems. The intermediate and
|
||||
binary files generated by the build will be created in separate
|
||||
subdirectories and installed into the appropriate separate host/target
|
||||
install directories. EPICS executables and perl scripts are installed
|
||||
into the $(INSTALL_LOCATION)/bin/<arch> directories. Libraries are
|
||||
installed into $(INSTALL_LOCATION)/lib/<arch>. The default
|
||||
definition for $(INSTALL_LOCATION) is $(TOP) which is the root
|
||||
directory in the distribution directory structure, base. Created object
|
||||
files are stored in O.<arch> source subdirectories, This allows objects
|
||||
for multiple cross target architectures to be maintained at the same
|
||||
time. To build EPICS base for a specific host/target combination you
|
||||
must have the proper host/target c/c++ cross compiler and target header
|
||||
files and the base/configure/os directory must have the appropriate
|
||||
configure files.
|
||||
|
||||
Example application and extension
|
||||
|
||||
A perl tool, makeBaseApp.pl is included in the distribution file. This
|
||||
script will create a sample application that can be built and then
|
||||
executed to try out this release of base. Also, a perl script,
|
||||
makeBaseExt.pl, is included in the distribution file. This script will
|
||||
create a sample extension that can be built and executed. The
|
||||
makeBaseApp.pl and makeBaseExt.pl scripts are installed into the
|
||||
install location bin/<hostarch> directory during the base build.
|
||||
|
||||
Instructions for building and executing the 3.14 example application
|
||||
can be found in the section "Example Application" of Chapter 2, "New
|
||||
Features for 3.14", in the "IOC Application Developer's Guide
|
||||
R3.14.0beta1". The "Example Application" section briefly explains
|
||||
how to create and build an example application in a user created <top>
|
||||
directory. It also explains how to run the example application on a
|
||||
vxWorks ioc or a host system and run an example channel access client
|
||||
on the host system.
|
||||
|
||||
|
||||
56
README.WIN32
56
README.WIN32
@@ -1,8 +1,8 @@
|
||||
|
||||
Compiling EPICS and Building IOC Applications on WIN32 (Windows95/NT)
|
||||
Compiling EPICS and Building IOC Applications on win32-x86 (Windows95/NT)
|
||||
---------------------------------------------------------------------
|
||||
|
||||
Original port of EPICS base to WIN32 (Windows95/NT)
|
||||
Original port of EPICS base build system to WIN32 (Windows95/NT)
|
||||
was done by Kay-Uwe Kasemir 11/96
|
||||
|
||||
please mail questions, comments, corrections, additional examples, etc
|
||||
@@ -11,9 +11,9 @@ please mail questions, comments, corrections, additional examples, etc
|
||||
0) what you will get
|
||||
--------------------
|
||||
|
||||
Right now this port of EPICS to WIN32 should allow you to
|
||||
Right now this port of EPICS to win32-x86 should allow you to
|
||||
|
||||
* compile almost all of EPICS base using {Tornado, MS Visual C, perl,
|
||||
* compile all of EPICS base using {Tornado, MS Visual C, perl,
|
||||
GNU make} (only {MS Visual C, perl, GNU make} if you prefer
|
||||
to compile only the host portions of EPICS base).
|
||||
* load EPICS on an IOC (486, pentium, 68k, ...),
|
||||
@@ -23,19 +23,19 @@ Right now this port of EPICS to WIN32 should allow you to
|
||||
* build and use ca.dll on NT or Win95 to access all IOCs,
|
||||
as well as the Com-library, gdd-library, cas-library,
|
||||
and all other EPICS base libraries as DLLs.
|
||||
* build gdd, cas and a demo of the new portable CA server on WIN32.
|
||||
|
||||
To build only for WIN32 and not cross compile for IOC development type
|
||||
"make host" or in your config files set "CROSS_COMPILER_HOST_ARCHS=void"
|
||||
* build gdd, cas and a demo of the new portable CA server on win32-x86.
|
||||
|
||||
To build only for win32-x86 and not cross compile for IOC development type
|
||||
"make win32-x86" or in your configure/CONFIG_SITE file set
|
||||
"CROSS_COMPILER_HOST_ARCHS="
|
||||
|
||||
1) see what you have
|
||||
--------------------
|
||||
|
||||
To compile EPICS on WIN32, we need
|
||||
To compile EPICS on win32-x86, we need
|
||||
|
||||
WindRiver System's Tornado (used: 1.0) (not required if host only build)
|
||||
Microsoft's Visual C/C++ (used: 4.0) (borland C++ rumored to work also)
|
||||
Microsoft's Visual C/C++ (used: 6.0) (borland C++ rumored to work also)
|
||||
|
||||
and some tools:
|
||||
|
||||
@@ -51,7 +51,7 @@ If you cannot/don't want to find them, contact me, please!
|
||||
(Setting env. vars. is different: for NT, use Settings/System,
|
||||
for Win95 use autoexec.bat)
|
||||
|
||||
When setting paths in the EPICS CONFIG files for WIN32 the following
|
||||
When setting paths in the EPICS CONFIG files for win32-x86 the following
|
||||
are hints in case you have trouble. You should not need to worry about
|
||||
this unless you type a path into one of the EPICS config files that
|
||||
includes a "\". In most situations gnu make, windows NT, the MS compiler,
|
||||
@@ -66,7 +66,7 @@ and the MS linker will accept "/" and this will result in less trouble.
|
||||
a "\ " (this is because GNU make treats all " " separated
|
||||
input as independent tokens in the input stream.
|
||||
|
||||
** WIN32 will generally allow "/" and "\" interchangeably in file paths,
|
||||
** win32-x86 will generally allow "/" and "\" interchangeably in file paths,
|
||||
but the DOS shell only accepts "\".
|
||||
|
||||
** Certain command line utilities such as the MS linker are known to in rare
|
||||
@@ -75,7 +75,7 @@ and the MS linker will accept "/" and this will result in less trouble.
|
||||
the bulk of our experience indicates that this is not the necessary.
|
||||
|
||||
Your path should include:
|
||||
- The EPICS-binaries that we are about to build in <EPICS>base/bin/WIN32
|
||||
- The EPICS-binaries that we are about to build in <EPICS>base/bin/win32-x86
|
||||
- The System (for me it's in NT40...)
|
||||
- The MS Visual C compiler binaries
|
||||
|
||||
@@ -108,7 +108,7 @@ include=c:\msdev\include;c:\msdev\mfc\include
|
||||
lib=c:\msdev\lib;c:\msdev\mfc\lib
|
||||
|
||||
Select host arch to build:
|
||||
HOST_ARCH=WIN32 (used by the make system)
|
||||
EPICS_HOST_ARCH=win32-x86 (used by the make system)
|
||||
|
||||
Set the "TMP" environment variable if you need to specify where
|
||||
temporary files are created.
|
||||
@@ -139,7 +139,7 @@ Prepare apx. 2 ltr. Tee and type:
|
||||
Watch for errors and send them to me.
|
||||
|
||||
Known problems:
|
||||
* gnumake seems to be faster than WIN32 sometimes
|
||||
* gnumake seems to be faster than win32-x86 sometimes
|
||||
which results in warnings/errors like
|
||||
"file has modification date in the future"
|
||||
for newly created things.
|
||||
@@ -150,7 +150,7 @@ Known problems:
|
||||
WIN32 is WIN32, not win32. Gnumake fails
|
||||
if e.g. base/src/include/os/WIN32 is ...win32.
|
||||
|
||||
4) Creating EPICS IOC applications under WIN32
|
||||
4) Creating EPICS IOC applications under win32-x86
|
||||
|
||||
o create application development folder
|
||||
|
||||
@@ -192,3 +192,27 @@ in a visual C++ make file project: "kill caRepeater.exe&make -C ..". Be careful
|
||||
not to introduce additional spaces around the &. The kill.exe command is in the
|
||||
NT resource kit.
|
||||
|
||||
6) Issues that you should be aware of if you are building code that
|
||||
calls EPICS, but you are not using the EPICS build system.
|
||||
|
||||
6a) You will need to include header files from the following paths.
|
||||
<epics>\base\include
|
||||
<epics>\base\include\os\win32
|
||||
6b) You will need to link with the following path in effect.
|
||||
<epics>\base\lib\win32-x86.
|
||||
6c) If the visual C++ /Za option is not used then you will also need to define
|
||||
__STDC__ to be zero on the command line so that EPICS headers will know that
|
||||
a ANSI standard C compiler is in use.
|
||||
6d) If you link with EPICS object libraries then specify /MT or /MTd
|
||||
depending on whether EPICS base and your code are built for debugging.
|
||||
This specifies the multithreaded operating environment required by EPICS.
|
||||
This will also not define _DLL and therefore the EPICS header files will
|
||||
not specify that sharable libraries are being called. EPICS object library
|
||||
names follow the convention "xxxObj.lib".
|
||||
6e) If you link with EPICS shareable libraries (with DLLs) then you must
|
||||
use /MDd or /MD depending on whether EPICS base and your code are
|
||||
built for debugging. This specifies the multithreaded operating environment
|
||||
required by EPICS. This will also define _DLL and therefore the EPICS header
|
||||
files will specify an optimized calling convention for shareable libraries.
|
||||
EPICS shareable libraries (DLL) names follow the convention "xxx.lib"
|
||||
and "xxx.dll".
|
||||
|
||||
@@ -1,46 +0,0 @@
|
||||
|
||||
The C++ templates supplied with EPICS base are in
|
||||
"$(EPICS)/base/src/cxxTemplates".
|
||||
|
||||
In Stroustrups's "The C++ Programming Language" Appendix A: r.14.9
|
||||
(ANSI/ISO resolutions) a mechanism is described for the explicit
|
||||
instantiation of template member functions (that are not inline).
|
||||
At this time some compilers do not support this mechanism (and use
|
||||
a template database snd/or smart linker instead). Other compilers
|
||||
(such as g++) provide only limited support for other forms of
|
||||
instantiation (g++ does not yet provide a template database or
|
||||
a smart linker for templates).
|
||||
|
||||
Since there is no defacto standard mechanism for instatiating
|
||||
templates at this time we are defining the preprocessor flag
|
||||
EXPL_TEMPL in the build system when the compiler supports
|
||||
explicit instantiation and the compiler does not support
|
||||
automatic instantiation via a smart linker and/or template
|
||||
database (currently this is only g++).
|
||||
|
||||
EPICS codes that use templates may need to include a code block
|
||||
as follow that instantiates the template only once into each
|
||||
program.
|
||||
|
||||
#include <classXYZ.h>
|
||||
#include <templXXX.h>
|
||||
|
||||
//
|
||||
// if the compiler supports explicit instantiation of
|
||||
// template member functions
|
||||
//
|
||||
#if defined(EXPL_TEMPL)
|
||||
//
|
||||
// From Stroustrups's "The C++ Programming Language"
|
||||
// Appendix A: r.14.9
|
||||
//
|
||||
// This explicitly instantiates the template class's member
|
||||
// functions into "templInst.o"
|
||||
//
|
||||
template class templXXX <classXYZ>;
|
||||
#endif
|
||||
|
||||
Jeff Hill 3-6-97
|
||||
johill@lanl.gov
|
||||
|
||||
|
||||
1656
README.htm
1656
README.htm
File diff suppressed because it is too large
Load Diff
298
READMEbuildingR3.13AppsWithR3.14.html
Normal file
298
READMEbuildingR3.13AppsWithR3.14.html
Normal file
@@ -0,0 +1,298 @@
|
||||
<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
|
||||
<meta name="ProgId" content="Word.Document">
|
||||
<meta name="Generator" content="Microsoft Word 9">
|
||||
<meta name="Originator" content="Microsoft Word 9">
|
||||
<meta name="GENERATOR" content="Mozilla/4.77 [en] (X11; U; SunOS 5.8 sun4u) [Netscape]">
|
||||
<title>Instruction on building existing R3</title>
|
||||
<link rel=File-List href="./READMEbuildingR3.13AppsWithR3.14_files/filelist.xml">
|
||||
<!--[if gte mso 9]><xml>
|
||||
<o:DocumentProperties>
|
||||
<o:LastAuthor>Jba</o:LastAuthor>
|
||||
<o:Revision>3</o:Revision>
|
||||
<o:TotalTime>4</o:TotalTime>
|
||||
<o:Created>2000-10-25T19:43:00Z</o:Created>
|
||||
<o:LastSaved>2000-10-25T19:47:00Z</o:LastSaved>
|
||||
<o:Pages>1</o:Pages>
|
||||
<o:Company>Argonne National Laboratory</o:Company>
|
||||
<o:Lines>1</o:Lines>
|
||||
<o:Paragraphs>1</o:Paragraphs>
|
||||
<o:Version>9.2720</o:Version>
|
||||
</o:DocumentProperties>
|
||||
</xml><![endif]-->
|
||||
<!--[if gte mso 9]><xml>
|
||||
<w:WordDocument>
|
||||
<w:DisplayHorizontalDrawingGridEvery>0</w:DisplayHorizontalDrawingGridEvery>
|
||||
<w:DisplayVerticalDrawingGridEvery>0</w:DisplayVerticalDrawingGridEvery>
|
||||
<w:UseMarginsForDrawingGridOrigin/>
|
||||
<w:Compatibility>
|
||||
<w:FootnoteLayoutLikeWW8/>
|
||||
<w:ShapeLayoutLikeWW8/>
|
||||
<w:AlignTablesRowByRow/>
|
||||
<w:ForgetLastTabAlignment/>
|
||||
<w:LayoutRawTableWidth/>
|
||||
<w:LayoutTableRowsApart/>
|
||||
</w:Compatibility>
|
||||
</w:WordDocument>
|
||||
</xml><![endif]-->
|
||||
<style>
|
||||
<!--
|
||||
/* Font Definitions */
|
||||
@font-face
|
||||
{font-family:"MS Mincho";
|
||||
panose-1:2 2 6 9 4 2 5 8 3 4;
|
||||
mso-font-alt:"\FF2D\FF33 \660E\671D";
|
||||
mso-font-charset:128;
|
||||
mso-generic-font-family:roman;
|
||||
mso-font-pitch:fixed;
|
||||
mso-font-signature:-1610612033 1757936891 16 0 131231 0;}
|
||||
@font-face
|
||||
{font-family:"\@MS Mincho";
|
||||
mso-font-charset:128;
|
||||
mso-generic-font-family:roman;
|
||||
mso-font-pitch:fixed;
|
||||
mso-font-signature:1 134676480 16 0 131072 0;}
|
||||
/* Style Definitions */
|
||||
p.MsoNormal, li.MsoNormal, div.MsoNormal
|
||||
{mso-style-parent:"";
|
||||
margin:0in;
|
||||
margin-bottom:.0001pt;
|
||||
mso-pagination:widow-orphan;
|
||||
font-size:10.0pt;
|
||||
font-family:"Times New Roman";
|
||||
mso-fareast-font-family:"Times New Roman";}
|
||||
p.MsoPlainText, li.MsoPlainText, div.MsoPlainText
|
||||
{margin:0in;
|
||||
margin-bottom:.0001pt;
|
||||
mso-pagination:widow-orphan;
|
||||
font-size:10.0pt;
|
||||
font-family:"Courier New";
|
||||
mso-fareast-font-family:"Times New Roman";}
|
||||
@page Section1
|
||||
{size:8.5in 11.0in;
|
||||
margin:1.0in 66.0pt 1.0in 66.0pt;
|
||||
mso-header-margin:.5in;
|
||||
mso-footer-margin:.5in;
|
||||
mso-paper-source:0;}
|
||||
div.Section1
|
||||
{page:Section1;}
|
||||
-->
|
||||
</style>
|
||||
</head>
|
||||
<body lang="EN-US" style="tab-interval:.5in">
|
||||
|
||||
<center>
|
||||
<h2>
|
||||
Building EPICS R3.13 applications with R3.14.0beta1 base</h2></center>
|
||||
|
||||
<p><br>This document describes how to modify a R3.13 vxWorks application
|
||||
so that it builds with release R3.14.0beta1. It describes an easy
|
||||
way to modify applications subject to the following restrictions:
|
||||
<ul>
|
||||
<li>
|
||||
The application still uses config rules rather than the configure rules
|
||||
which are new to release 3.14.</li>
|
||||
|
||||
<li>
|
||||
The OSI (Operating System Independent) features of R3.14 are not available,
|
||||
i.e. iocCore products can only be build for vxWorks.</li>
|
||||
|
||||
<li>
|
||||
Once the application is changed to build with base R3.14, it will not build
|
||||
with earlier base releases.</li>
|
||||
</ul>
|
||||
Ultimately applications should be converted to use the new configure rules
|
||||
so that the OSI features are available.
|
||||
<h3>
|
||||
<b>Gnumake clean uninstall</b></h3>
|
||||
|
||||
<blockquote>At the top of the application execute:
|
||||
<pre>"<tt>gnumake clean uninstall</tt>"</pre>
|
||||
to remove all files and directories created by earlier builds.</blockquote>
|
||||
|
||||
<h3>
|
||||
Update RELEASE</h3>
|
||||
|
||||
<blockquote>Change the <tt>EPICS_BASE</tt> definition to point to
|
||||
the R3.14 base release. All hardware support and some soft support is now
|
||||
unbundled. For example the sequencer is unbundled. You must obtain and
|
||||
build all required unbundled products before you can build the application.
|
||||
The location of each unbundled product must be specified in <top>/config/RELEASE.</blockquote>
|
||||
|
||||
<h3>
|
||||
Update target arch definitions</h3>
|
||||
|
||||
<blockquote>Change any target arch specification in config/CONFIG to new
|
||||
R3.14 target arch specification. Look in the R3.14 base/bin directory to
|
||||
see the target arch names.
|
||||
<p>For example, in config/CONFIG change
|
||||
<pre>CROSS_COMPILER_TARGET_ARCHS = mv167</pre>
|
||||
to
|
||||
<pre>CROSS_COMPILER_TARGET_ARCHS = vxWorks-68040</pre>
|
||||
In the iocBoot/*/Makefile files, change
|
||||
<pre>ARCH=<old arch name></pre>
|
||||
to
|
||||
<pre>ARCH=<new arch name></pre>
|
||||
and do a "<tt>gnumake"</tt> in the iocBoot directory to update the cdCommands
|
||||
files.</blockquote>
|
||||
|
||||
<h3>
|
||||
State Notation Language changes</h3>
|
||||
|
||||
<blockquote>snc is no longer in base. If snc is used in your application,
|
||||
you must download and build the seq module with baseR3.14.0beta1. See the
|
||||
Application Developer's Guide to see how to build sequence programs.</blockquote>
|
||||
|
||||
<blockquote>Change
|
||||
<pre>INSTALLS=seq</pre>
|
||||
to
|
||||
<pre>LIBOBJS += $(SEQ_BIN)/seqLibrary.o</pre>
|
||||
|
||||
<p><br>in application src/Makefile.Vx files to link seq library into your
|
||||
application library,.
|
||||
<br>Also add
|
||||
<pre>SEQ=<full path to seq module directory></pre>
|
||||
to config/RELEASE.
|
||||
<br>Also remove
|
||||
<pre>ld < seq</pre>
|
||||
from the st.cmd files in the iocBoot subdirectories.</blockquote>
|
||||
|
||||
<h3>
|
||||
iocCore changes</h3>
|
||||
|
||||
<blockquote>iocCore has been renamed to iocCoreLibrary.o.
|
||||
<br>Change
|
||||
<pre>INSTALLS=iocCore</pre>
|
||||
to
|
||||
<pre>LIBOBJS += $(EPICS_BASE_BIN)/iocCoreLibrary.o</pre>
|
||||
in your application src/Makefile.Vx files .
|
||||
<br>Also remove
|
||||
<pre>ld < iocCore</pre>
|
||||
from the st.cmd files in the iocBoot subdirectories.</blockquote>
|
||||
|
||||
<h3>
|
||||
Library db changes</h3>
|
||||
|
||||
<blockquote>The Db library name was changed to dbStaticHost for host builds
|
||||
and dbStaticIoc for ioc builds.
|
||||
<br>Change
|
||||
<pre>PROD_LIBS+=Db</pre>
|
||||
to
|
||||
<pre>PROD_LIBS+=dbStaticHost</pre>
|
||||
and
|
||||
<pre>Db_DIR=$(EPICS_BASE_LIB)</pre>
|
||||
to
|
||||
<pre>dbStaticHost_DIR=$(EPICS_BASE_LIB)</pre>
|
||||
in your application src/Makefile.Host files.</blockquote>
|
||||
|
||||
<h3>
|
||||
VxWorks C++ munched libraries and object files</h3>
|
||||
|
||||
<blockquote>Since R3.14 contains C++ code, the build rules were changed
|
||||
to create a corresponding munched file for every vx object file built.
|
||||
The objects files can be combined to form libraries but the munched files
|
||||
must be loaded into vxWorks. In all st.cmd files add the suffix "<tt>.munch</tt>"
|
||||
to the ld lines where object files were previously loaded. For example
|
||||
change
|
||||
<pre>ld < exampleLib</pre>
|
||||
to
|
||||
<pre>ld < exampleLibrary.munch</pre>
|
||||
</blockquote>
|
||||
|
||||
<h3>
|
||||
recGbl calls</h3>
|
||||
|
||||
<blockquote>You may need to add the line "<tt>#include "recGbl.h</tt>"
|
||||
to any source files that have recGbl* calls so that the file will compile
|
||||
without errors.</blockquote>
|
||||
|
||||
<h3>
|
||||
Record support changes</h3>
|
||||
|
||||
<blockquote>The steppermotor, scan, and pid records are no longer in base.
|
||||
If your application does not use these record types, comment out or remove
|
||||
references to them in base.dbd and baseLIBOBJS. If these record types are
|
||||
used by your application you must download and build the modules with R3.14
|
||||
base, add appropriate module definitions to your application's config/RELEASE
|
||||
fileand change the <tt>LIBOBJS</tt> definitions. For example
|
||||
<br>add
|
||||
<pre>PID=<full path to modules directory>/pid</pre>
|
||||
to config/RELEASE.
|
||||
<br>Remove
|
||||
<pre>LIBOBJS += $(EPICS_BASE_BIN)/pidRecord.o</pre>
|
||||
from baseLIBOBJS,
|
||||
<br>and add
|
||||
<pre>LIBOBJS += $(PID_BIN)/pidRecord.o</pre>
|
||||
to your application src/Makefile.
|
||||
<p>You should consider changing any existing old steppermotor records to
|
||||
the new EPICS <a href="http://www.aps.anl.gov/upd/people/sluiter/epics/modules/mechanism/motor/index.html">motor
|
||||
record</a> module supported by Beamline Controls and Data Acquisition
|
||||
at APS.</blockquote>
|
||||
|
||||
<h3>
|
||||
RecDynLink.o and devPtSoft changes</h3>
|
||||
|
||||
<blockquote>recDynLink.o and devPtSoft.o are no longer in base. Remove
|
||||
references to them in base.dbd and baseLIBOBJS if they are not used in
|
||||
application.</blockquote>
|
||||
|
||||
<h3>
|
||||
Hardware support changes</h3>
|
||||
|
||||
<blockquote>All hardware support (dev, drv and dbd files) has been unbundled
|
||||
from base R3.14. This support includes the files <tt>symb, symb.dbd, drvHp1404a.o,
|
||||
drvEpvxiMsg.o, and drvEpvxi.o</tt>. If they are not used in your
|
||||
application, comment out references to these files in base.dbd and baseLIBOBJS.
|
||||
<p>Hardware support files now exist as separate modules available for download
|
||||
from the <a href="http://www.aps.anl.gov/epics/">EPICS www home page at
|
||||
ANL</a>. You must now download all the hardware support modules needed
|
||||
for your application, build the modules with R3.14 base, add the
|
||||
appropriate module full path definitions to your application config/RELEASE
|
||||
file, and change <tt>LIBOBJS</tt> location definition <tt>$(EPICS_BASE_BIN)</tt>
|
||||
to the module definition bin directory in your application src directory
|
||||
files.
|
||||
<p>For example, remove
|
||||
<pre>LIBOBJS+=$(EPICS_BASE_BIN)/symb</pre>
|
||||
from baseLIBOBJS and add
|
||||
<pre>LIBOBJS+=$(SYMB_BIN)/symb</pre>
|
||||
to your application src/Makefile,
|
||||
<br>and add the line
|
||||
<pre>SYMB=<full path definition for the built module SYMB></pre>
|
||||
into your application config/RELEASE file .
|
||||
<p>After a gnumake in the symb module followed by a gnumake in the application
|
||||
config directory, the definitions <tt>SYMB_BIN</tt> and <tt>SYMB_LIB</tt>
|
||||
will be created, the directory $(SYMB)/include will be added to the
|
||||
include directories on the compiler command lines (in the <tt>INSTALL_INCLUDES</tt>
|
||||
definition) and the directory $(SYMB)/dbd will be added to the dbd
|
||||
search directories on the dbExpand command lines (in the <tt>INSTALL_DBDFLAGS</tt>
|
||||
definition).</blockquote>
|
||||
|
||||
<h3>
|
||||
dbLoadtemplate tool changes</h3>
|
||||
|
||||
<blockquote>The host tool dbLoadTemplate has been replaced by a new extension,
|
||||
msi. dbLoadTemplate is still supported on iocs. Build the msi extension
|
||||
with base R3.14 and change the following definitions in your application
|
||||
files.
|
||||
<p>In config/RULES.Db replace the line
|
||||
<pre>DBLOADTEMPLATE=$(EPICS_BASE_HOST_BIN)/dbLoadTemplate$(EXE)</pre>
|
||||
with
|
||||
<pre>MSI = $(firstword $(wildcard $(EPICS_EXTENSIONS_HOST_BIN)/msi$(HOSTEXE) \
|
||||
(EPICS_EXTENSIONS)/bin/$(HOST_OS_CLASS)/msi$(HOSTEXE)) msi$(HOSTEXE))</pre>
|
||||
and change line:
|
||||
<pre>@$(DBLOADTEMPLATE) $< > $@</pre>
|
||||
to
|
||||
<pre>@$(MSI) $< > $@</pre>
|
||||
Also, if dbLoadTemplate was used by your application, add the definition
|
||||
<blockquote>
|
||||
<pre>EPICS_EXTENSIONS=<full path name to epics extensions directory></pre>
|
||||
</blockquote>
|
||||
to your application config/RELEASE file.</blockquote>
|
||||
depends changes
|
||||
<p> Remove any SRCS.c and SRCS.cc definitions in
|
||||
your application src/Makefile..*files. The depends rule no longer uses
|
||||
these definitions.
|
||||
</body>
|
||||
</html>
|
||||
132
READMEbuildingR3.13ExtensionsWithR3.14.html
Normal file
132
READMEbuildingR3.13ExtensionsWithR3.14.html
Normal file
@@ -0,0 +1,132 @@
|
||||
<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
|
||||
<meta name="Author" content="jba">
|
||||
<meta name="GENERATOR" content="Mozilla/4.76 [en] (X11; U; SunOS 5.8 sun4u) [Netscape]">
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<center>
|
||||
<h2>
|
||||
Building EPICS R3.13 extensions with R3.14 base</h2></center>
|
||||
|
||||
<p><br>EPICS R3.13 extensions have both a Makefile and a Makefile.Host
|
||||
in the build directories and the EPICS R3.13 extension tree has an extensions/config
|
||||
directory.
|
||||
<h3>
|
||||
Preliminary steps for all extensions</h3>
|
||||
|
||||
<blockquote>
|
||||
<li>
|
||||
Download the latest version (10/25/00) of the extensions/config files,
|
||||
extensionsConfig.tar.gz, from the APS EPICS www page.</li>
|
||||
|
||||
<li>
|
||||
Make certain that you have set the HOST_ARCH environment variable.</li>
|
||||
|
||||
<li>
|
||||
Set EPICS_BASE in extensions/config/RELEASE to the full path location of
|
||||
a built R3.14 base.</li>
|
||||
|
||||
<li>
|
||||
BASE_3_14 is now defined in the base/config/CONFIG_BASE_VERSION.
|
||||
The commented BASE_3_14 definition can be removed from extensions/config/RELEASE.</li>
|
||||
</blockquote>
|
||||
|
||||
<h3>
|
||||
Building downloaded APS distribution extensions with base R3.14</h3>
|
||||
|
||||
<blockquote>
|
||||
<li>
|
||||
Download the latest version (10/25/00) of extensions distributed from the
|
||||
APS EPICS www page. The latest versions of the extensions should build
|
||||
with both R3.13 and R3.14. Note that the order of building extensions is
|
||||
important, i.e. some extensions depend on other extensions being built
|
||||
first. The extensions/config/CONFIG_EXTENSIONS file contains notes on extension
|
||||
dependancies and contains a definition of DIRS (used by extensions/src/Makefile)
|
||||
with the proper order for building the APS distributed extensions.</li>
|
||||
|
||||
<li>
|
||||
Executing gnumake at the root level of the extensions tree or in the src
|
||||
directory should build the APS extensions in the proper order.</li>
|
||||
</blockquote>
|
||||
|
||||
<h3>
|
||||
Building your extensions with base R3.14</h3>
|
||||
|
||||
<blockquote>
|
||||
<li>
|
||||
<b>Library Db renamed</b></li>
|
||||
|
||||
<br>Library Db has been renamed to dbStaticHost in EPICS base R3.14. In
|
||||
some extensions lib Db is not used and Db can be removed from the USR_LIBS
|
||||
(or PROD_LIBS) line. If the library is needed ( you get unresolved items
|
||||
after removing Db), the following lines should be added to Makefile.Host.
|
||||
<blockquote><tt>ifdef BASE_3_14</tt>
|
||||
<br><tt>USR_LIBS += dbStaticHost</tt>
|
||||
<br><tt>dbStaticHost_DIR = $(EPICS_BASE_LIB)</tt>
|
||||
<br><tt>else</tt>
|
||||
<br><tt>USR_LIBS += Db</tt>
|
||||
<br><tt>Db_DIR = $(EPICS_BASE_LIB)</tt>
|
||||
<br><tt>endif</tt></blockquote>
|
||||
|
||||
<li>
|
||||
<b>Target architecture specifications changed</b></li>
|
||||
|
||||
<br>Since target architecture specifications have been changed (solaris
|
||||
to solaris-sparc, win32 to win32-x86, ...) Makefile.Host references to
|
||||
and tests on T_A have to be changed. In most cases T_A can be replaced
|
||||
by OS_CLASS. Since HOST_ARCH will eventually be phased out, it would
|
||||
be a good idea to change any Makefile.Host references to HOST_ARCH to OS_CLASS
|
||||
if possible.
|
||||
<br>For example change
|
||||
<blockquote><tt>ifeq ($(T_A),solaris)</tt>
|
||||
<br><tt>RPCFLAGS = -K -1</tt>
|
||||
<br><tt>endif</tt></blockquote>
|
||||
to
|
||||
<blockquote><tt>ifeq ($(OS_CLASS),solaris)</tt>
|
||||
<br><tt>RPCFLAGS = -K -1</tt>
|
||||
<br><tt>endif</tt></blockquote>
|
||||
|
||||
<li>
|
||||
<b>New ca_set_puser</b></li>
|
||||
|
||||
<br>Statements of the form: <tt>ca_puser(chid) = xyz</tt>; should to be
|
||||
changed to: <tt>ca_set_puser(chid,xyz)</tt>;
|
||||
<br>
|
||||
<li>
|
||||
<b>Extern C around includes</b></li>
|
||||
|
||||
<br>Remove any extern "C" braces around #includes of EPICS base header
|
||||
files.
|
||||
<br>For example change
|
||||
<blockquote><tt>extern "C" {</tt>
|
||||
<br><tt>#include "cadefs.h"</tt>
|
||||
<br><tt>} /* end extern C */</tt></blockquote>
|
||||
to
|
||||
<blockquote><tt>#include "cadefs.h"</tt></blockquote>
|
||||
|
||||
<li>
|
||||
<b>Infrequently used R3.13 timestamp functions unbundled from base</b></li>
|
||||
|
||||
<br>Some infrequently used R3.13 timestamp functions and macro definitions
|
||||
have been removed from EPICS base and now exist in a library, ts, created
|
||||
and installed in the ar extension. The only ANL distributed extension
|
||||
that uses these unbundled functions and macros is cau. The two R3.13
|
||||
functions tsStampToText and tsLocalTime along with the definitions TS_TEXT_MONDDYYYY
|
||||
and TS_TEXT_MMDDYY have been retained in R3.14 for extension compatibility
|
||||
purposes.
|
||||
<br>If your extension gets undefines for TS_* usage and ts* function calls
|
||||
when built with R3.14, you must obtain and build the ar extension. Add
|
||||
an #include for tsSubr.h to your extension source code and add library
|
||||
ts to PROD_LIBS or USR_LIBS in your Makefile.Host as follows:
|
||||
<blockquote><tt>#include "tsSubr.h"</tt>
|
||||
<p><tt>ifdef BASE_3_14</tt>
|
||||
<br><tt>PROD_LIBS += ts</tt>
|
||||
<br><tt>ts_DIR = $(EPICS_EXTENSIONS_LIB)</tt>
|
||||
<br><tt>endif</tt></blockquote>
|
||||
</blockquote>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
302
READMEconvertingR3.13AppsToR3.14.html
Normal file
302
READMEconvertingR3.13AppsToR3.14.html
Normal file
@@ -0,0 +1,302 @@
|
||||
<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
|
||||
<meta name="Author" content="jba">
|
||||
<meta name="GENERATOR" content="Mozilla/4.76 [en] (X11; U; SunOS 5.8 sun4u) [Netscape]">
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<center>
|
||||
<h2>
|
||||
Converting an EPICS R3.13 application to R3.14.0alpha3</h2></center>
|
||||
|
||||
<p><br>This document describes how to convert a R3.13 vxWorks application
|
||||
so that it builds with release R3.14.0alpha3. It describes procedures
|
||||
such that:
|
||||
<ul>
|
||||
<li>
|
||||
The application uses the configure rules which are new to R3.14.</li>
|
||||
</ul>
|
||||
|
||||
<ul>
|
||||
<li>
|
||||
The OSI (Operating System Independent) features of R3.14 are available,
|
||||
i.e. iocCore products can be build for vxWorks as well as other platforms,
|
||||
e.g. solaris and linux.</li>
|
||||
</ul>
|
||||
|
||||
<h3>
|
||||
Gnumake clean uninstall</h3>
|
||||
|
||||
<blockquote>First do a gnumake clean uninstall in the application's root
|
||||
directory to remove all files created by earlier builds.</blockquote>
|
||||
|
||||
<h3>
|
||||
Create a new R3.14 application</h3>
|
||||
|
||||
<blockquote><tt>mkdir <top></tt>
|
||||
<br><tt>cd <top></tt>
|
||||
<br><tt><full path to R3.14.0alpha3 base>/bin/<host_arch>/makeBaseApp.pl
|
||||
-t example example</tt></blockquote>
|
||||
|
||||
<h3>
|
||||
Copy all *App and iocBoot directories and files to the new <top> directory</h3>
|
||||
|
||||
<blockquote><tt>cd <oldtop></tt>
|
||||
<br><tt>find *App iocBoot -print | cpio -pvmd <fullpath name to new
|
||||
top></tt></blockquote>
|
||||
|
||||
<h3>
|
||||
Modify <top>/configure/RELEASE</h3>
|
||||
|
||||
<blockquote>Copy definitions of external modules excluding EPICS_BASE and
|
||||
TEMPLATES_TOP from old application RELEASE file.
|
||||
<br>If sequence programs (*.st or *.stt files) exist in your application,
|
||||
add the SNCSEQ location definition for the R3.14 seq external module
|
||||
<blockquote><tt>SNCSEQ =<full path to seq module top></tt></blockquote>
|
||||
The R3.14 seq module must exist and be built with EPICS base R3.14.0alpha3.</blockquote>
|
||||
|
||||
<h3>
|
||||
Modify the Makefiles in <top>/*App directories.</h3>
|
||||
|
||||
<blockquote>Change <tt>include $(TOP)/config/CONFIG_APP</tt>
|
||||
<br>to <tt>include $(TOP)/configure/CONFIG</tt>
|
||||
<p>Change i<tt>nclude $(TOP)/config/RULES_DIRS</tt>
|
||||
<br>to <tt>include $(TOP)/configure/RULES_DIRS</tt></blockquote>
|
||||
|
||||
<h3>
|
||||
Modify the Makefiles in <top>/*App/*Db directories.</h3>
|
||||
|
||||
<blockquote>Remove existing Makefile
|
||||
<br>Rename Makefile.Host to Makefile
|
||||
<br>Modify Makefile as follows:
|
||||
<p>Change <tt>TOP=../../..</tt>
|
||||
<br>to <tt>TOP=../..</tt>
|
||||
<p>Change i<tt>nclude $(TOP)/config/CONFIG_APP</tt>
|
||||
<br>to <tt>include $(TOP)/configure/CONFIG</tt>
|
||||
<p>Change <tt>include $(TOP)/config/RULES.Db</tt>
|
||||
<br>to <tt>include $(TOP)/configure/RULES</tt>
|
||||
<p>Place all definitions between the include lines.
|
||||
<p>Place any rules after the last include line.</blockquote>
|
||||
|
||||
<h3>
|
||||
Modify the Makefiles in <top>/*App/src directories.</h3>
|
||||
|
||||
<blockquote>Remove existing Makefile
|
||||
<br>Rename Makefile.Host to Makefile
|
||||
<br>Modify Makefile as follows:
|
||||
<p>Change <tt>TOP=../../..</tt>
|
||||
<br>to <tt>TOP=../..</tt>
|
||||
<p>Change <tt>include $(TOP)/config/CONFIG_APP</tt>
|
||||
<br>to <tt>include $(TOP)/configure/CONFIG</tt>
|
||||
<p>Change i<tt>nclude $(TOP)/config/RULES.Host</tt>
|
||||
<br>to <tt>include $(TOP)/configure/RULES</tt>
|
||||
<p>Change <tt>PROD_LIBS = <name></tt>
|
||||
<br>to <tt> <prod name>_LIBS = dbStaticHost</tt>
|
||||
<br>where <tt><prod name></tt> is a specifified product to be
|
||||
built.
|
||||
<p>Change library name <tt>Db</tt> to <tt>dbStaticHost.</tt>
|
||||
<br>Change<tt> PROD_LIBS = Db</tt>
|
||||
<br>to <tt> <prodname>_LIBS += dbStaticHost</tt>
|
||||
<br>and <tt>Db_DIR = $(EPICS_BASE_LIB)</tt>
|
||||
<br>to <tt>dbStaticHost_DIR = $(EPICS_BASE_LIB)</tt>
|
||||
<p>Change <tt>USER_DBDFLAGS</tt>
|
||||
<br>to <tt>USR_DBDFLAGS</tt>
|
||||
<p>Change <tt>RECTYPES += xxxRecord.h</tt>
|
||||
<br>to <tt>DBDINC += xxxRecord</tt>
|
||||
<p>Change <tt>DBDNAME = <name>App.dbd</tt>
|
||||
<br>to <tt>DBD += <name>.dbd</tt>
|
||||
<p>Remove all <tt>DBDEXPAND</tt> lines.
|
||||
<p>Change <tt>PROD = <prodname></tt>
|
||||
<br>to <tt>PROD_HOST = <prodname></tt>
|
||||
<p>Change <tt>SRCS.c += <name></tt>
|
||||
<br>to <tt><prodname>_SRCS += <name></tt>
|
||||
<br>or<tt> <libname>_SRCS += <name></tt>
|
||||
<p>Add the contents of Makefile.Vx to Makefile removing the include lines
|
||||
and the TOP definition.</blockquote>
|
||||
|
||||
<blockquote>Change <tt>LIBNAME = <libname>Lib</tt>
|
||||
<br>to <tt>PROD_vxWorks = <libname></tt><tt></tt>
|
||||
<p>Remove line <tt> -include ../baseLIBOBJS</tt>
|
||||
<p>Remove line <tt>INSTALLS = iocCore seq</tt><tt></tt>
|
||||
<p>Change all <tt>SRCS.c += ../<name>.c </tt>lines
|
||||
<br>to <font face="Arial,Helvetica"><prodname>_SRCS += <name>.c</font>
|
||||
<br>if the source files exist in the current directory.<tt></tt>
|
||||
<p>Change all <tt>*OBJS += <name>.o</tt>
|
||||
lines
|
||||
<br>to <font face="Arial,Helvetica"><prodname>_SRCS += <name>.c</font>
|
||||
<br>or <font face="Arial,Helvetica"> <prodname>_SRCS += <name>.cc</font>
|
||||
<br>if the c/c++ source files exist in the current directory.
|
||||
<p>Change <tt>LIBOBJS += <seq_program_name>.o</tt>
|
||||
lines
|
||||
<br>to <tt><prodname>_SRCS += <seq_program_name>.stt</tt>
|
||||
<br>or <tt><prodname>_SRCS += <seq_program_name>.st</tt><tt></tt>
|
||||
<p>Add the lines
|
||||
<blockquote><tt>#<name>_LIBS += seq</tt>
|
||||
<br><tt>#<name>_LIBS += pv</tt>
|
||||
<br><tt>#seq_DIR = $(SNCSEQ_LIB)</tt>
|
||||
<br><tt>#pv_DIR = $(SNCSEQ_LIB)</tt><tt></tt>
|
||||
<p><tt><name>_LIBS += recIoc</tt>
|
||||
<br><tt><name>_LIBS += softDevIoc</tt>
|
||||
<br><tt><name>_LIBS += testDevIoc</tt>
|
||||
<br><tt><name>_LIBS += iocsh</tt>
|
||||
<br><tt><name>_LIBS += miscIoc</tt>
|
||||
<br><tt><name>_LIBS += rsrvIoc</tt>
|
||||
<br><tt><name>_LIBS += dbtoolsIoc</tt>
|
||||
<br><tt><name>_LIBS += asIoc</tt>
|
||||
<br><tt><name>_LIBS += dbIoc</tt>
|
||||
<br><tt><name>_LIBS += registryIoc</tt>
|
||||
<br><tt><name>_LIBS += dbStaticIoc</tt>
|
||||
<br><tt><name>_LIBS += ca</tt>
|
||||
<br><tt><name>_LIBS += Com</tt></blockquote>
|
||||
where <tt><name></tt> is the name in the <tt>PROD_vxWorks</tt>
|
||||
definition, and uncomment the first four lines if you have sequence programs
|
||||
(.st or .stt files) in the current directory.
|
||||
<p>Place all macro definitions between the include lines.
|
||||
<p>Place any rules after the last include line.</blockquote>
|
||||
|
||||
<h3>
|
||||
Modify the Makefiles in <top>/iocBoot directory.</h3>
|
||||
|
||||
<blockquote>Change i<tt>nclude $(TOP)/config/CONFIG_APP</tt>
|
||||
<br>to <tt>include $(TOP)/configure/CONFIG</tt>
|
||||
<p>Remove the line <tt>DIRS += $(wildcard *ioc*)</tt>
|
||||
<p>Change <tt>include $(TOP)/config/RULES.iocBoot</tt>
|
||||
<br>to i<tt>nclude $(TOP)/configure/RULES.iocBoot</tt></blockquote>
|
||||
|
||||
<h3>
|
||||
Modify the Makefiles in <top>/iocBoot/ioc* directories.</h3>
|
||||
|
||||
<blockquote>Change <tt>include $(TOP)/config/CONFIG_APP</tt>
|
||||
<br>to <tt>include $(TOP)/configure/CONFIG</tt>
|
||||
<p>Change <tt>include ARCH = <old arch specification e.g. mv167></tt>
|
||||
<br>to <tt>include ARCH = <new arch specificatio
|
||||
e.g. vxWorks-68040></tt><tt></tt>
|
||||
<p>Change <tt>include $(TOP)/config/RULES.ioc</tt>
|
||||
<br>to <tt>include $(TOP)/configure/RULES.ioc</tt>
|
||||
<p>Add the following rule at the end of the Makefile.
|
||||
<blockquote><tt>buildInstall: cdCommands</tt></blockquote>
|
||||
</blockquote>
|
||||
|
||||
<h3>
|
||||
Modify st.cmd in <top>/iocBoot/ioc* directories.</h3>
|
||||
|
||||
<blockquote>Remove the lines</blockquote>
|
||||
|
||||
<blockquote>
|
||||
<blockquote>
|
||||
<pre>ld < seq</pre>
|
||||
|
||||
<pre>ld < iocCore</pre>
|
||||
</blockquote>
|
||||
Change <tt>ld < <libname>Lib</tt>
|
||||
<br>to <tt>ld < <libname>.munch</tt>
|
||||
<p>Change load statements for db and dbd files from
|
||||
<blockquote><tt>cd startup</tt>
|
||||
<br><tt>dbLoadDatabase("../../dbd/exampleApp.dbd")</tt>
|
||||
<br><tt>dbLoadRecords("../../db/dbExample1.db","user=jba")</tt>
|
||||
<br><tt>dbLoadRecords("../../db/dbExample2.db")</tt></blockquote>
|
||||
to
|
||||
<blockquote><tt>cd top</tt>
|
||||
<br><tt>dbLoadDatabase("dbd/example.dbd")</tt>
|
||||
<br><tt>registerRecordDeviceDriver(pdbbase)</tt>
|
||||
<br><tt>dbLoadRecords("db/dbExample1.db","user=jba")</tt>
|
||||
<br><tt>dbLoadRecords("db/dbExample2.db")</tt></blockquote>
|
||||
</blockquote>
|
||||
|
||||
<h3>
|
||||
Record support changes</h3>
|
||||
|
||||
<blockquote>The steppermotor, scan, and pid records are no longer in base.
|
||||
If these records are not used in your application, comment out references
|
||||
to them in base.dbd. If these record types are used at your site, they
|
||||
should be downloaded and built with base R3.14 by your EPICS administrator.
|
||||
To update the R3.14 location of these record types in your application
|
||||
you must add appropriate module definitions to your application's
|
||||
config/RELEASE file and change the <tt>LIBOBJS</tt> definitions.
|
||||
<p>For example add</blockquote>
|
||||
|
||||
<blockquote> <tt>PID=<full
|
||||
path to modules directory>/pid</tt>
|
||||
<p>to config/RELEASE.
|
||||
<br>Remove</blockquote>
|
||||
|
||||
<blockquote> <tt>LIBOBJS
|
||||
+= $(EPICS_BASE_BIN)/pidRecord.o</tt>
|
||||
<p>from baseLIBOBJS, and add</blockquote>
|
||||
|
||||
<blockquote>
|
||||
<blockquote><tt>LIBOBJS += $(PID_BIN)/pidRecord.o</tt></blockquote>
|
||||
to your application src/Makefile.</blockquote>
|
||||
|
||||
<blockquote>You should consider changing any existing old steppermotor
|
||||
records to the new EPICS motor record module supported by Beamline
|
||||
Controls and Data Acquisition at APS.</blockquote>
|
||||
|
||||
<h3>
|
||||
RecDynLink.o and devPtSoft changes</h3>
|
||||
|
||||
<blockquote>recDynLink.o and devPtSoft.o are no longer in EPICS base and
|
||||
now exist as separate EPICS modules.You must now add the appropriate module
|
||||
full path definitions to your application config/RELEASE file, and change
|
||||
<tt>LIBOBJS</tt>
|
||||
location definition <tt>$(EPICS_BASE_BIN)</tt> to the module definition
|
||||
bin directory in your application src directory files. See "Hardware
|
||||
support changes" below for instructions.</blockquote>
|
||||
|
||||
<h3>
|
||||
Hardware support changes</h3>
|
||||
|
||||
<blockquote>All hardware support (dev, drv and dbd files) except soft support
|
||||
has been unbundled from base R3.14. This support includes the files symb.dbd,
|
||||
drvHp1404a.o, drvEpvxiMsg.o, and drvEpvxi.o. If these are not used by your
|
||||
application, comment out references to them in base.dbd.</blockquote>
|
||||
|
||||
<blockquote>Hardware support now exists as separate EPICS modules. The
|
||||
hardware support for your site should be downloaded and built with base
|
||||
R3.14 by your EPICS administrator. You must now add the appropriate module
|
||||
full path definitions to your application config/RELEASE file, and change
|
||||
<tt>LIBOBJS</tt>
|
||||
location from <tt>$(EPICS_BASE_BIN) </tt>to the module bin directory
|
||||
in your application src directory files.
|
||||
<p>For example, remove</blockquote>
|
||||
|
||||
<blockquote> <tt>LIBOBJS+=$(EPICS_BASE_BIN)/symb</tt></blockquote>
|
||||
|
||||
<blockquote>from baseLIBOBJS and add</blockquote>
|
||||
|
||||
<blockquote> <tt>LIBOBJS+=$(SYMB_BIN)/symb</tt></blockquote>
|
||||
|
||||
<blockquote>to your application src/Makefile,
|
||||
<br>and add the line</blockquote>
|
||||
|
||||
<blockquote>
|
||||
<blockquote><tt>SYMB=<full path definition for the built module SYMB></tt></blockquote>
|
||||
</blockquote>
|
||||
|
||||
<blockquote>into your application config/RELEASE file .</blockquote>
|
||||
|
||||
<h3>
|
||||
dbLoadtemplate tool changes</h3>
|
||||
|
||||
<blockquote>The host tool dbLoadTemplate has been replace by a new EPICS
|
||||
extension, msi, which should be downloaded and built with base R3.14 by
|
||||
your EPICS administrator. dbLoadTemplate is still supported on iocs.
|
||||
If, in your application, db files are created from template and substitution
|
||||
files you should add the definition
|
||||
<p> <tt>EPICS_EXTENSIONS=<full
|
||||
path name to epics extensions directory></tt>
|
||||
<p>to your application config/RELEASE file.</blockquote>
|
||||
|
||||
<blockquote>
|
||||
<blockquote> </blockquote>
|
||||
|
||||
<blockquote>
|
||||
<pre></pre>
|
||||
</blockquote>
|
||||
</blockquote>
|
||||
|
||||
<br>
|
||||
</body>
|
||||
</html>
|
||||
145
READMEconvertingR3.14.0alpha2AppsTobeta1.html
Normal file
145
READMEconvertingR3.14.0alpha2AppsTobeta1.html
Normal file
@@ -0,0 +1,145 @@
|
||||
<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
|
||||
<meta name="Author" content="jba">
|
||||
<meta name="GENERATOR" content="Mozilla/4.77 [en] (X11; U; SunOS 5.8 sun4u) [Netscape]">
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<center>
|
||||
<h2>
|
||||
Converting an EPICS R3.14.0 alpha2 application to beta1</h2></center>
|
||||
|
||||
<p><br>This document describes how to convert a R3.14.0alpha2 application
|
||||
so that it builds with release R3.14.0beta1.
|
||||
<h3>
|
||||
Gnumake clean uninstall</h3>
|
||||
|
||||
<blockquote>First do a "<tt>gnumake clean uninstall"</tt> in the application's
|
||||
root directory to remove all files created by earlier builds.</blockquote>
|
||||
|
||||
<h3>
|
||||
Replace configure/RULES.ioc and configure/Makefile</h3>
|
||||
|
||||
<blockquote>The rules defined in RULES.ioc have changed slightly, and new
|
||||
applications are now given a wrapper version which just includes $(EPICS_BASE)/configureRULES.ioc.
|
||||
The new configure/Makefile contains an additional macro that causes the
|
||||
contents of the configure/RELEASE file to be checked at build time for
|
||||
consistency with all the support applications that it references. These
|
||||
files should be replaced with copies of the new versions from <base>/templates/makeBaseApp/top/configure</blockquote>
|
||||
|
||||
<h3>
|
||||
Remove baseLIBOBJS</h3>
|
||||
|
||||
<blockquote>Record and device support from base now exists in archive libraries
|
||||
so baseLIBOBJS is no longer needed and the file and references to it in
|
||||
the Makefile can be deleted. e.g. remove
|
||||
<blockquote><tt>-include ../baseLIBOBJS</tt></blockquote>
|
||||
and the file baseLIBOBJS. If there are no LIBOBJS definitions in the Makefile,
|
||||
also remove
|
||||
<blockquote><tt>example_OBJS += $(LIBOBJS)</tt></blockquote>
|
||||
</blockquote>
|
||||
|
||||
<h3>
|
||||
Libraries recIoc, softDevIoc, and testDevIoc</h3>
|
||||
|
||||
<blockquote>Add the new record and dev support libraries to <name>App/src/Makefile,
|
||||
i.e. add the lines
|
||||
<blockquote><tt>example_LIBS += recIoc</tt>
|
||||
<br><tt>example_LIBS += softDevIoc</tt>
|
||||
<br><tt>example_LIBS += testDevIoc</tt></blockquote>
|
||||
and remove any references to iocLibrary, e.g. remove the line
|
||||
<blockquote><tt>example_OBJS_vxWorks += $(EPICS_BASE_BIN)/iocCoreLibrary</tt></blockquote>
|
||||
The order of references to base libraries is important so place recIoc
|
||||
and softDevIoc before the the other base library references.
|
||||
<p>If you are building on a WIN32 host add the following lines instead:
|
||||
<blockquote><tt># Use win32 object libs for registered support</tt>
|
||||
<br><tt>example_LIBS_win32 += recIocObj</tt>
|
||||
<br><tt>example_LIBS_win32 += softDevIocObj</tt>
|
||||
<br><tt>example_LIBS_win32 += testDevIocObj</tt>
|
||||
<br><tt>example_LIBS_DEFAULT += recIoc</tt>
|
||||
<br><tt>example_LIBS_DEFAULT += softDevIoc</tt>
|
||||
<br><tt>example_LIBS_DEFAULT += testDevIoc</tt></blockquote>
|
||||
</blockquote>
|
||||
|
||||
<h3>
|
||||
iocrf renamed to iocsh</h3>
|
||||
|
||||
<blockquote>Change all references to ioccrf in your application src directories
|
||||
to iocsh e.g.
|
||||
<p>change <tt>#include "ioccrf.h"</tt>
|
||||
<br>to <tt>#include "iocsh.h"</tt>
|
||||
<p>change<tt> ioccrf(argv[1]);</tt>
|
||||
<br>to <tt> iocsh(argv[1]);</tt>
|
||||
<p>and change <tt> ioccrf(NULL);</tt>
|
||||
<br>to <tt>iocsh(NULL)</tt>;
|
||||
<p>in <name>App/src/exampleMain.c.</blockquote>
|
||||
|
||||
<h3>
|
||||
PROD changes</h3>
|
||||
|
||||
<blockquote>PROD targets will now be built for all target architectures.
|
||||
If a product should be built only for host architectures change PROD to
|
||||
PROD_HOST .e.g. in your application src Makefiles
|
||||
<blockquote>change <tt>PROD += caExample</tt>
|
||||
<br>to <tt>PROD_HOST += caExample</tt>
|
||||
<br>and
|
||||
<br>change <tt>PROD = sncExample</tt>
|
||||
<br>to <tt>PROD_HOST += sncExample</tt></blockquote>
|
||||
</blockquote>
|
||||
<b>LIBRARY and PROD changes</b>
|
||||
<blockquote>The meaning of LIBRARY and PROD have now changed. For vxWorks,
|
||||
LIBRARY now means an archive library, OBJLIB is now a combined object file
|
||||
(only needed for R3.13 compatibility) and PROD is now a combined object
|
||||
file with library references resolved and will have a corresponding .munch
|
||||
file created. Thus, in your application src Makefiles,
|
||||
<blockquote>change <tt>LIBRARY_vxWorks = <name></tt>
|
||||
<br>to <tt>PROD_vxWorks = <name></tt>
|
||||
<br>or
|
||||
<br>remove the lines <tt>LIBRARY_vxWorks = <name></tt>
|
||||
<br>and <tt>PROD_RTEMS = <name></tt>
|
||||
<br>and change <tt>PROD = <name></tt>
|
||||
<br>to <tt>PROD_IOC = <name></tt>.</blockquote>
|
||||
In the iocBoot/ioc<name>/st.cmd files,
|
||||
<blockquote>change <tt>ld < <name>Library.munch</tt>
|
||||
<br>to <tt>ld < <name>.munch</tt></blockquote>
|
||||
A SRCS definition is now required for every PROD and LIBRARY source
|
||||
file to determine correct header file dependancies. This is true even if
|
||||
there is only one source file for the PROD or LIBRARY . Thus, for the PROD
|
||||
caExample in your src Makefile, add the line
|
||||
<blockquote> caExample_SRCS += caExample.c</blockquote>
|
||||
</blockquote>
|
||||
|
||||
<h3>
|
||||
registerRecordDeviceDriver changes</h3>
|
||||
|
||||
<blockquote>The created file registerRecordDeviceDriver.cpp is now used
|
||||
for all target architectures. Thus in your application src Makefiles
|
||||
<blockquote>change <tt>example_SRCS_DEFAULT += example_registerRecordDeviceDriver.cpp</tt>
|
||||
<br>to <tt>example_SRCS += example_registerRecordDeviceDriver.cpp</tt>
|
||||
<br><tt></tt> </blockquote>
|
||||
</blockquote>
|
||||
|
||||
<h3>
|
||||
RTEMS-specific pathname changes</h3>
|
||||
|
||||
<blockquote>1. The RTEMS TFTP remote filesystem no longer ignores leading
|
||||
`../' components in path names. All st.cmd file lines with path names
|
||||
of the form <tt>dbLoadRecords("../../db/dbExample1.db","user=norume")</tt>
|
||||
<br>must be changed to
|
||||
<br><tt>dbLoadRecords("db/dbExample1.db","user=norume")</tt><tt></tt>
|
||||
<p>The makeBaseApp.pl script distributed with R3.14-beta1 creates st.cmd
|
||||
scripts with the proper path names.
|
||||
<p>2. The RTEMS TFTP remote filesystem supports a limited set of chdir
|
||||
operations.
|
||||
<br>All paths passed to chdir (or to the IOC shell `cd' command) must end
|
||||
in a `/'
|
||||
<br>character.</blockquote>
|
||||
|
||||
<blockquote>
|
||||
<blockquote> </blockquote>
|
||||
</blockquote>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
@@ -2,15 +2,197 @@
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
|
||||
<meta name="GENERATOR" content="Mozilla/4.72 [en] (X11; U; SunOS 5.8 sun4u) [Netscape]">
|
||||
<meta name="GENERATOR" content="Mozilla/4.76 [en] (X11; U; SunOS 5.8 sun4u) [Netscape]">
|
||||
<title>EPICS Release baseR3.14
|
||||
</title>
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<center>
|
||||
<h1>
|
||||
EPICS Release base 3.14.0alpha1</h1>
|
||||
This is the first release of 3.14. This is the first release that supports
|
||||
EPICS Release base 3.14.0beta1</h1></center>
|
||||
<h2>Changes since alpha2</h2>
|
||||
All changes for release 3.13.5 that also apply to 3.14 have been made.
|
||||
<p>
|
||||
<b>devAiSoftRaw and devAoSoftRaw</b>
|
||||
</p>
|
||||
<p>
|
||||
A new state is defined for the LINR field. The name is "SLOPE",
|
||||
which allows any device type to be used with manual settings of
|
||||
the EOFF and ESLO fields. With this setting, the device support's
|
||||
special_linconv() routine is only called when LINR=LINEAR.
|
||||
</p>
|
||||
<p>
|
||||
The RTEMS TFTP remote filesystem driver now supports a limited form of
|
||||
the chdir() system call. One restriction is that all pathnames passed
|
||||
to chdir() must end in a / character, so IOC shell commands to change
|
||||
directories must be given as
|
||||
</p>
|
||||
<p>
|
||||
cd ../db
|
||||
</p>
|
||||
<center>
|
||||
<h1>
|
||||
EPICS Release base 3.14.0alpha2</h1></center>
|
||||
Since the alpha1 release some major changes were made to the build system,
|
||||
to some of the libCom facilities, and to the iocsh facilities.
|
||||
<p>The unbundled version of the sequencer has been build and tested with
|
||||
this release. You must obtain a version of the sequencer that has been
|
||||
built against alpha2.
|
||||
<p>A verion of the HPlanGpib support has been built and tested with this
|
||||
release. Again you must obtain a version that builds with alpha2.
|
||||
<p>A new update to the Application Developer's Guide is available for this
|
||||
release.
|
||||
<h3>
|
||||
Build changes</h3>
|
||||
|
||||
<ul>
|
||||
<li>
|
||||
Operating system independant builds are now done in an O.Common subdirectory
|
||||
and then installed instead of being performed directly in an install directory.</li>
|
||||
|
||||
<li>
|
||||
Build definition names (e.g. RECTYPES, MENUS, DBDNAME, and BPTS) have been
|
||||
changed to specify the name of the file to be created and installed instead
|
||||
of the source file name.</li>
|
||||
|
||||
<li>
|
||||
All db and dbd related definitions and rules have been moved into base/configure/RULES.Db
|
||||
file. The rules now allow multiple dbd files and registerRecordDeviceDriver
|
||||
files to be created in a single Makefile.</li>
|
||||
|
||||
<li>
|
||||
"gnumake depends" no longer depends on a complete buildInstall.</li>
|
||||
</ul>
|
||||
|
||||
<h3>
|
||||
Converting alpha1 applications to alpha2</h3>
|
||||
Build modifications in alpha2 require the following changes to existing
|
||||
R3.14 applications.
|
||||
<ul>
|
||||
<li>
|
||||
Remove the now unused RULES files</li>
|
||||
|
||||
<li>
|
||||
</li>
|
||||
|
||||
<ul>./configure/RULES.Db
|
||||
<br>./configure/RULES.registerRecordDeviceDriver
|
||||
<br> </ul>
|
||||
|
||||
<li>
|
||||
Delete the following line in ./configure/RULES</li>
|
||||
|
||||
<ul>
|
||||
<br>include $(TOP)/configure/RULES.registerRecordDeviceDriver</ul>
|
||||
</ul>
|
||||
|
||||
<ul>
|
||||
<li>
|
||||
In <top>/configure/Makefile change</li>
|
||||
|
||||
<ul>
|
||||
<br>@$(PERL) $(TOOLS)/makeConfigAppInclude.pl $(T_A) $@ $(TOP)</ul>
|
||||
to
|
||||
<ul>@$(PERL) $(TOOLS)/makeConfigAppInclude.pl $(EPICS_HOST_ARCH) $(T_A)
|
||||
$@ $(TOP)
|
||||
<br> </ul>
|
||||
and add the line
|
||||
<ul>
|
||||
<br>depends: install
|
||||
<br> </ul>
|
||||
to the bottom of the Makefile.
|
||||
<ul> </ul>
|
||||
</ul>
|
||||
|
||||
<ul>
|
||||
<li>
|
||||
In all *App/*Db/Makefileschange</li>
|
||||
|
||||
<ul>
|
||||
<br>include $(TOP)/configure/RULES.Db</ul>
|
||||
to
|
||||
<ul>include $(TOP)/configure/RULES</ul>
|
||||
|
||||
<li>
|
||||
In all *App/src/Makefile files</li>
|
||||
|
||||
<ul> </ul>
|
||||
change DBDNAME = <name>App to
|
||||
DBD += <name>
|
||||
<ul> </ul>
|
||||
and remove the line
|
||||
<br>
|
||||
<ul>DBDEXPAND = <name>Include.dbd
|
||||
<br> </ul>
|
||||
NOTE: If any of your *App/*Db/Makefiles contain "DBDNAME =" lines you should
|
||||
make these same changes in that *Db dirctory.
|
||||
<br>
|
||||
<li>
|
||||
In all *App/src/Makefile Makefiles</li>
|
||||
|
||||
<ul> </ul>
|
||||
change RECTYPES=<name>.h to
|
||||
DBDINC+=<name>
|
||||
<ul> </ul>
|
||||
change MENUS=<name>.h to
|
||||
DBDINC+=<name></ul>
|
||||
|
||||
<ul>change BPTS to
|
||||
DBD
|
||||
<p>change INSTALLDB to
|
||||
DB
|
||||
<p>change DBDINSTALL to
|
||||
DBD
|
||||
<br>
|
||||
<li>
|
||||
In all example *App/src/Makefile files change</li>
|
||||
|
||||
<ul>
|
||||
<br>example_SRCS_DEFAULT += registerRecordDeviceDriver.c</ul>
|
||||
to
|
||||
<ul>example_SRCS_DEFAULT += <name>_registerRecordDeviceDriver.cpp
|
||||
<br> </ul>
|
||||
where <name> is the base name of a <name>.dbd file which was created
|
||||
from a <name>Include.dbd file and which will be loaded in a st.cmd or
|
||||
stcmd.host script (e.g. example).
|
||||
<br>
|
||||
<li>
|
||||
In ./iocBoot/ioc<name>/st.cmd files change</li>
|
||||
|
||||
<br>
|
||||
<ul>dbLoadDatabase("dbd/exampleApp.dbd")</ul>
|
||||
to
|
||||
<ul>dbLoadDatabase("dbd/example.dbd")
|
||||
<br> </ul>
|
||||
|
||||
<li>
|
||||
In <top>/iocBoot/ioc<name>/stcmd.host files change</li>
|
||||
|
||||
<ul>
|
||||
<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. All references to the
|
||||
ANSI (ACC/GCC) and CPLUSPLUS (CCC/G++) macros have been removed.
|
||||
<br>
|
||||
<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>
|
||||
<center>
|
||||
<h2>
|
||||
EPICS Release base 3.14.0alpha1 Notes</h2></center>
|
||||
|
||||
<p><br>
|
||||
<p>This is the first release of 3.14. This is the first release that supports
|
||||
iocCore on platforms besides vxWorks.
|
||||
<p>iocCore is now supported on the following platforms:
|
||||
<ul>
|
||||
@@ -26,14 +208,16 @@ and MC68360 processors. RTEMS also supports powerPC.
|
||||
<li>
|
||||
solaris</li>
|
||||
|
||||
<br>Has been tested on solaris 2.6 and solaris 8.
|
||||
<br>Has been tested on solaris 2.6 and solaris 8 with Sun workshop 6.0 (C++ 5.2).
|
||||
Sun workshop 5.0 (C++ 5.0) will not compile this version of EPICS.
|
||||
<li>
|
||||
Linux</li>
|
||||
|
||||
<br>Has been tested on Redhat x86 platforms.
|
||||
<li>
|
||||
winNT</li>
|
||||
</ul>
|
||||
|
||||
<br>Testing has been done with visual C++ 6.0.</ul>
|
||||
A new version of the Application Developers Guide is available. The following
|
||||
gives links to the new Application Developer's Guide and to RTEMS information.
|
||||
<p>http://www.aps.anl.gov/epics/modules/base/R3-14.php
|
||||
|
||||
@@ -1,49 +1,75 @@
|
||||
# CONFIG.Host.Borland
|
||||
#
|
||||
# This file is maintained by the EPICS community.
|
||||
# Sites may override these definitions in CONFIG_SITE.Borland
|
||||
|
||||
# Use std path variables from ms
|
||||
HOME = $(HOMEDRIVE)$(HOMEPATH)
|
||||
|
||||
BORLAND_LIB = $(BORLAND)\\lib
|
||||
BORLAND_INC = $(BORLAND)\\include
|
||||
BORLAND_BIN = $(BORLAND)\\bin
|
||||
|
||||
#
|
||||
#
|
||||
ANSI = ACC
|
||||
CPLUSPLUS = CCC
|
||||
|
||||
#
|
||||
#
|
||||
WINLINK = ilink32
|
||||
# -q supress command line banner
|
||||
WINLINK = $(BORLAND_BIN)/ilink32 -q
|
||||
|
||||
RCCMD = brcc32 -i . -i .. -i $(INSTALL_INCLUDE) -i $(EPICS_BASE_INCLUDE) -fo $@ $<
|
||||
# -l specifies default language
|
||||
# -fo Renames the output .RES file
|
||||
RCCMD = $(BORLAND_BIN)/brcc32 $(subst -I,-i,$(INCLUDES)) -l0x409 -fo$@ $<
|
||||
|
||||
ARCMD = tlib $@
|
||||
ARCMD = $(BORLAND_BIN)/tlib $@
|
||||
|
||||
#
|
||||
# Configure OS vendor C compiler
|
||||
CCLINKOPT = -WM -D_WIN32
|
||||
ACC = bcc32 $(CCLINKOPT)
|
||||
# Configure Borland C compiler
|
||||
# -q suppress compiler identification banner
|
||||
# -tWM generate a 32-bit multi-threaded target
|
||||
# -tWD generate a .DLL executable
|
||||
# -a8 quad word alignment
|
||||
# -D_WIN32 macro defined to be consistant with Microsoft Visual C++
|
||||
# -D_RTLDLL macro defined to use Borland C++ RTL library
|
||||
CCLINKOPT = -q -tWM -tWD -a8 -D_WIN32 -D_RTLDLL
|
||||
ACC = $(BORLAND_BIN)/bcc32 $(CCLINKOPT)
|
||||
|
||||
#
|
||||
# __STDC__=0 is a real great idea of Jeff that gives us both:
|
||||
# 1) define STDC for EPICS code (pretend ANSI conformance)
|
||||
# 2) set it to 0 to use MS C "extensions" (open for _open etc.)
|
||||
# because MS uses: if __STDC__ ... disable many nice things
|
||||
# __STDC__=0 works but not as cleanly as with
|
||||
# Microsoft Visual C++.
|
||||
# The Borland header files use ifdef __STDC__
|
||||
# to disable many nice things. This is overridden
|
||||
# by defining NO_BORLAND_STDC in the Makefile.Host.
|
||||
#
|
||||
ifdef NO_BORLAND_STDC
|
||||
ACC_ANSI = $(ACC)
|
||||
ACC_STRICT = $(ACC)
|
||||
else
|
||||
ACC_ANSI = $(ACC) -D__STDC__=0
|
||||
ACC_STRICT = $(ACC) -D__STDC__=0
|
||||
ACC_TRAD = $(ACC) /nologo
|
||||
endif
|
||||
ACC_TRAD = $(ACC)
|
||||
|
||||
#
|
||||
ACC_WARN_YES = -w -g0
|
||||
# -w display warnings on
|
||||
# -g0 no limit to warning messages
|
||||
# some warning message here are always disabled because they are
|
||||
# trivial and numerous
|
||||
# -w-8012 Comparing signed and unsigned values
|
||||
# -w-8060 Possibly incorrect assignment
|
||||
# -w-8071 Conversion may lose significant digits
|
||||
ACC_WARN_YES = -w -g0 -w-8012 -w-8060 -w-8071
|
||||
# -w- display warnings off
|
||||
ACC_WARN_NO = -w-
|
||||
|
||||
#
|
||||
# -O1 optimization for size
|
||||
# -k- turn off standard stack frame
|
||||
# -H- Turn off precompiled headers
|
||||
# -R- Don't include browser info in .obj files
|
||||
ACC_OPT_YES = -k- -H- -R- -O1
|
||||
# -H- turn off precompiled headers
|
||||
# -R- don't include browser info in .obj files
|
||||
# -O1 optimization for size
|
||||
# -v- turn off source debugging
|
||||
# -vi control expansion of inline functions
|
||||
ACC_OPT_YES = -k- -H- -R- -O1 -v- -vi
|
||||
|
||||
#
|
||||
ACC_OPT_NO =
|
||||
@@ -57,26 +83,39 @@ ACC_SLIBS_NO=
|
||||
|
||||
# Configure OS vendor C++ compiler
|
||||
#
|
||||
# __STDC__=0 is a real great idea of Jeff that gives us both:
|
||||
# 1) define STDC for EPICS code (pretend ANSI conformance)
|
||||
# 2) set it to 0 to use MS C "extensions" (open for _open etc.)
|
||||
# because MS uses: if __STDC__ ... disable many nice things
|
||||
# __STDC__=0 works but not as cleanly as with
|
||||
# Microsoft Visual C++.
|
||||
# The Borland header files use ifdef __STDC__
|
||||
# to disable many nice things. This is overridden
|
||||
# by defining NO_BORLAND_STDC in the Makefile.Host.
|
||||
#
|
||||
CCC = bcc32 $(CCLINKOPT)
|
||||
CCC = $(BORLAND_BIN)/bcc32 $(CCLINKOPT)
|
||||
ifdef NO_BORLAND_STDC
|
||||
CCC_NORMAL = $(CCC)
|
||||
CCC_STRICT = $(CCC)
|
||||
else
|
||||
CCC_NORMAL = $(CCC) -D__STDC__=0
|
||||
CCC_STRICT = $(CCC) -D__STDC__=0
|
||||
endif
|
||||
CCC_TEMPL_INST_FLAG =
|
||||
|
||||
#
|
||||
CCC_WARN_YES = -w -g0
|
||||
# -w display warnings on
|
||||
# -g0 no limit to warning messages
|
||||
# -w-8012 Comparing signed and unsigned values
|
||||
# -w-8060 Possibly incorrect assignment
|
||||
# -w-8071 Conversion may lose significant digits
|
||||
CCC_WARN_YES = -w -g0 -w-8012 -w-8060 -w-8071 -w-8008 -w-8027 -w-8066 -w-8080 -w-8004
|
||||
# -w- display warnings off
|
||||
CCC_WARN_NO = -w-
|
||||
|
||||
#
|
||||
# -O1 optimization for size
|
||||
# -k- turn off standard stack frame
|
||||
# -H- Turn off precompiled headers
|
||||
# -R- Don't include browser info in .obj files
|
||||
CCC_OPT_YES = -k- -H- -R- -O1
|
||||
# -O1 optimization for size
|
||||
# -v- turn off source debugging
|
||||
# -vi control expansion of inline functions
|
||||
CCC_OPT_YES = -k- -H- -R- -O1 -v- -vi
|
||||
|
||||
#
|
||||
CCC_OPT_NO =
|
||||
@@ -88,16 +127,15 @@ CCC_SLIBS_YES=
|
||||
CCC_SLIBS_NO=
|
||||
|
||||
PROD_VERSION=3.13
|
||||
# -w display warnings on
|
||||
# -C clear state before linking
|
||||
# -Gn no state files
|
||||
# -x no map
|
||||
# -Gi generate import library
|
||||
# -Tpd this flag specifies the output file type
|
||||
# -aa this flag specifies the application type
|
||||
# -c case sensitive linking
|
||||
LINK_OPT_FLAGS_YES = -w -C -Gn -x -Gi -Tpd -aa -c
|
||||
LINK_OPT_FLAGS_NO = -w- -C -Gn -x -Gi -Tpd -aa -c
|
||||
# -C clear state before linking
|
||||
# -Gi generate import library
|
||||
# -Gn no state files
|
||||
# -Tpd targets a Windows .DLL file
|
||||
# -x no map
|
||||
# -w display warnings on
|
||||
LINK_OPT_FLAGS_YES = -c -C -Gi -Gn -Tpd -x -w
|
||||
LINK_OPT_FLAGS_NO = -c -C -Gi -Gn -Tpd -x -w-
|
||||
WIN32_DLLFLAGS = $(LINK_OPT_FLAGS_$(HOST_OPT))
|
||||
OPT_LDFLAGS =
|
||||
|
||||
@@ -111,6 +149,7 @@ ARCH_CLASS=WIN32
|
||||
|
||||
# ifdef WIN32 looks better that ifeq ($(ARCH_CLASS),WIN32) ??
|
||||
WIN32=1
|
||||
BORLANDC=1
|
||||
|
||||
EXE=.exe
|
||||
OBJ=.obj
|
||||
@@ -118,7 +157,7 @@ RES=.res
|
||||
|
||||
# Problem: BorlandC does not recognize *.cc as C++ source,
|
||||
# we have to compile xx.cc using the flag -P xx.cc,
|
||||
SOURCE_CXXFLAG = -P
|
||||
SOURCE_CXXFLAG = -P -D__cplusplus
|
||||
|
||||
# Operating system flags
|
||||
OP_SYS_CFLAGS =
|
||||
@@ -126,13 +165,14 @@ OP_SYS_CFLAGS =
|
||||
#
|
||||
# Borland specific include files
|
||||
#
|
||||
OP_SYS_INCLUDES = -I$(INCLUDE)
|
||||
OP_SYS_INCLUDES = -I$(BORLAND_INC)
|
||||
#
|
||||
OP_SYS_LDLIBS =
|
||||
|
||||
#
|
||||
# specify dll .def file only if it exists
|
||||
#
|
||||
#DLL_DEF_FLAG = $(addprefix /def:,$(wildcard ../$(LIBRARY).def))
|
||||
DLL_DEF_FLAG = $(subst /,\\,$(wildcard ../$(LIBRARY).def))
|
||||
|
||||
# HOST_OPT_FLAGS is part of CFLAGS/CXXFLAGS,
|
||||
@@ -152,7 +192,7 @@ HOST_OPT_FLAGS += $(subst $@, /_WINDLL, $(findstring $@,$(LIBOBJS)))
|
||||
# x.lib: what you link to progs that use the dll (LIBNAME)
|
||||
# x.exp: what you need to build the dll (in no variable)
|
||||
#
|
||||
LINK.shrlib = $(WINLINK) $(WIN32_DLLFLAGS) -L$(LIB) -L$(LIB)\\Psdk c0d32.obj
|
||||
LINK.shrlib = $(WINLINK) $(WIN32_DLLFLAGS) -L$(BORLAND_LIB) -L$(BORLAND_LIB)\\Psdk c0d32.obj
|
||||
|
||||
# adjust names of libraries to build
|
||||
#
|
||||
@@ -171,7 +211,12 @@ SHRLIBNAME = $(LIBRARY).dll
|
||||
#
|
||||
DLL_LINK_LIBNAME_YES = $(LIBRARY).lib
|
||||
DLL_LINK_LIBNAME = $(DLL_LINK_LIBNAME_$(SHARED_LIBRARIES))
|
||||
|
||||
#ifeq ($(strip $(SHARED_LIBRARIES)),NO)
|
||||
#LIBNAME = $(LIBRARY).lib
|
||||
#else
|
||||
LIBNAME = $(LIBRARY)Obj.lib
|
||||
#endif
|
||||
|
||||
# dll install location
|
||||
INSTALL_SHRLIB = $(INSTALL_BIN)
|
||||
@@ -181,6 +226,7 @@ INSTALL_SHRLIB = $(INSTALL_BIN)
|
||||
OBJECT_LIB_EXT_YES = Obj.lib # object library extension for static build
|
||||
OBJECT_LIB_EXT_NO = .lib # object library extension for dynamic build
|
||||
OBJECT_LIB_EXT = $(OBJECT_LIB_EXT_$(STATIC_BUILD))
|
||||
|
||||
COND_PROD_DEPLIBS = $(foreach prod,$(PROD), $(foreach lib, $($(basename $(prod))_LIBS),\
|
||||
$(firstword $($(lib)_DIR) $(EPICS_BASE_LIB))/$(lib)$(OBJECT_LIB_EXT)))
|
||||
PRODNAME_DEPLIBS = $(foreach lib,$(PRODNAME_LIBS),$(firstword $(wildcard $($(lib)_DIR)/$(lib).lib $($(lib)_DIR)/$(lib)Obj.lib $(EPICS_BASE_LIB)/$(lib).lib $(EPICS_BASE_LIB)/$(lib)Obj.lib ) $(filter $(LIBRARY)$(OBJECT_LIB_EXT), $(lib)$(OBJECT_LIB_EXT)) ))
|
||||
@@ -201,18 +247,18 @@ USR_LDLIBS = $(PRODNAME_DEPLIBS) $(PROD_DEPLIBS) $(USR_DEPLIBS) $(SYS_PROD_LIBS:
|
||||
|
||||
DLL_LDLIBS = $(DLL_DEPLIBS) $(SYS_PROD_LIBS:%=%.lib) $(OP_SYS_LDLIBS)
|
||||
|
||||
#multithreaded
|
||||
LIBSUF=mt
|
||||
# -w display warnings on
|
||||
#multithreaded import library
|
||||
LIBSUF=mti
|
||||
# -c case sensitive linking
|
||||
# -C clear state before linking
|
||||
# -Gn no state files
|
||||
# -Tpe targets a Windows .EXE file
|
||||
# -x no map
|
||||
# -c case sensitive linking
|
||||
LDFLAGS += -w -C -Gn -x -c -L$(LIB) -L$(LIB)\\Psdk
|
||||
# -w display warnings on
|
||||
LDFLAGS += -c -C -Gn -Tpe -x -w -L$(BORLAND_LIB) -L$(BORLAND_LIB)\\Psdk
|
||||
LINKSTARTUP = c0x32.obj
|
||||
LINKLIBS=import32.lib cw32$(LIBSUF).lib
|
||||
|
||||
LINK.c = $(WINLINK) $(LDFLAGS) $(LINKSTARTUP)
|
||||
LINK.cc = $(WINLINK) $(LDFLAGS) $(LINKSTARTUP)
|
||||
|
||||
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
# CONFIG.Host.UnixCommon
|
||||
|
||||
#
|
||||
# Contains definitions common to all Unix archs
|
||||
#
|
||||
@@ -20,7 +20,8 @@ SHRLIB_SUFFIX = .so
|
||||
|
||||
SHRLIBNAME = lib$(LIBRARY)$(SHRLIB_SUFFIX)$(SHRLIB_VERSION:%=.%)
|
||||
|
||||
DLL_LDLIBS = $(PRODNAME_LIBS:%=-l%) $(PROD_LIBS:%=-l%) $(USR_LIBS:%=-l%)
|
||||
DLL_LIBS = $(patsubst $(LIBRARY),, $(PROD_LIBS) $(USR_LIBS))
|
||||
DLL_LDLIBS = $(PRODNAME_LIBS:%=-l%) $(DLL_LIBS:%=-l%)
|
||||
|
||||
INSTALL_SHRLIB = $(INSTALL_LIB)
|
||||
|
||||
@@ -61,7 +62,8 @@ USR_LDLIBS = $(PRODNAME_LIBS:%=-l%) $(PROD_LIBS:%=-l%) $(USR_LIBS:%=-l%)\
|
||||
#--------------------------------------------------
|
||||
# Operating system definitions
|
||||
OP_SYS_INCLUDES =
|
||||
OP_SYS_CFLAGS = -DUNIX
|
||||
OP_SYS_CFLAGS = -DUNIX
|
||||
|
||||
OP_SYS_LDFLAGS =
|
||||
OP_SYS_LDLIBS = -lm
|
||||
|
||||
|
||||
@@ -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:$@
|
||||
|
||||
|
||||
@@ -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
|
||||
|
||||
|
||||
@@ -27,6 +27,7 @@ ACC_SLIBS_YES =
|
||||
ACC_SLIBS_NO=
|
||||
ACC_SHRLIB_CFLAGS_YES = +Z
|
||||
ACC_SHRLIB_LDFLAGS_YES = -b
|
||||
ACC_DEP_CFLAGS=+DAportable
|
||||
|
||||
# Configure OS vendor C++ compiler
|
||||
HPCC = cc
|
||||
@@ -43,6 +44,7 @@ HPCC_SLIBS_YES =
|
||||
HPCC_SLIBS_NO=
|
||||
HPCC_SHRLIB_CFLAGS_YES = +Z
|
||||
HPCC_SHRLIB_LDFLAGS_YES = -b
|
||||
HPCC_DEP_CFLAGS=+DAportable
|
||||
|
||||
#Old HP C++ compiler
|
||||
#CCC = CC
|
||||
@@ -67,11 +69,12 @@ CCC_SHRLIB_CFLAGS_YES = +Z
|
||||
# then by searching the specified path (see below)
|
||||
CCC_SHRLIB_LDFLAGS_YES = -b
|
||||
CCC_DEPENDS_FLAG = +m
|
||||
CCC_DEP_CFLAGS=+DAportable
|
||||
|
||||
# +DAportable causes portable object code to be created for execution
|
||||
# on different PA-Risc machines
|
||||
ARCH_DEP_CFLAGS = -D_HPUX_SOURCE -DHP_UX +DAportable
|
||||
ARCH_DEP_CXXFLAGS = -D_HPUX_SOURCE -DHP_UX +DAportable
|
||||
ARCH_DEP_CFLAGS = -D_HPUX_SOURCE -DHP_UX
|
||||
ARCH_DEP_CXXFLAGS = -D_HPUX_SOURCE -DHP_UX
|
||||
ARCH_DEP_LDLIBS =
|
||||
ARCH_DEP_LDFLAGS = -Wl,+b$(DEFAULT_SHRLIB_SEARCH_PATH),+s
|
||||
|
||||
|
||||
8
config/CONFIG.Host.solaris-sparc-gnu
Normal file
8
config/CONFIG.Host.solaris-sparc-gnu
Normal 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++
|
||||
|
||||
66
config/CONFIG.Host.solaris-x86
Normal file
66
config/CONFIG.Host.solaris-x86
Normal 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
|
||||
|
||||
5
config/CONFIG.Host.win32-x86
Normal file
5
config/CONFIG.Host.win32-x86
Normal 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
16
config/CONFIG.Vx.mv2700
Normal 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
|
||||
|
||||
@@ -11,6 +11,6 @@ CMPLR_SUFFIX = 68k
|
||||
ARCH_CLASS = 68k
|
||||
|
||||
# Architecture specific build flags
|
||||
ARCH_DEP_CPPFLAGS = -DCPU=MC68030
|
||||
ARCH_DEP_CPPFLAGS = -DCPU=MC68030 -DNICPU030
|
||||
ARCH_DEP_CFLAGS = -m68030
|
||||
|
||||
|
||||
16
config/CONFIG.Vx.ppc603
Normal file
16
config/CONFIG.Vx.ppc603
Normal 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
|
||||
@@ -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
|
||||
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -10,11 +10,17 @@
|
||||
EPICS_VERSION=3
|
||||
EPICS_REVISION=14
|
||||
EPICS_MODIFICATION=0
|
||||
EPICS_UPDATE_NAME=alpha
|
||||
EPICS_UPDATE_NAME=beta
|
||||
EPICS_UPDATE_LEVEL=1
|
||||
|
||||
EPICS_VERSION_STRING="EPICS Version ${EPICS_VERSION}.${EPICS_REVISION}.${EPICS_MODIFICATION}.${EPICS_UPDATE_NAME}${EPICS_UPDATE_LEVEL}"
|
||||
EPICS_LOCAL_NAME=B
|
||||
EPICS_LOCAL_VERSION=0
|
||||
|
||||
CVS_DATE="\$$Date$$"
|
||||
CVS_TAG="\$$Name$$"
|
||||
|
||||
EPICS_VERSION_STRING="EPICS Version ${EPICS_VERSION}.${EPICS_REVISION}.${EPICS_MODIFICATION}.${EPICS_UPDATE_NAME}${EPICS_UPDATE_LEVEL}.$(EPICS_LOCAL_NAME)$(EPICS_LOCAL_VERSION)"
|
||||
|
||||
CVS_DATE="\$$Date$$"
|
||||
|
||||
BASE_3_14=YES
|
||||
|
||||
@@ -11,6 +11,7 @@ ARCH_Linux = linux-x86
|
||||
ARCH_WIN32 = win32-x86
|
||||
ARCH_hp700 = hpux-m68k
|
||||
ARCH_hp700 = osf-alpha
|
||||
ARCH_Borland = win32-x86-borland
|
||||
|
||||
ifndef EPICS_HOST_ARCH
|
||||
ifdef HOST_ARCH
|
||||
@@ -21,3 +22,15 @@ endif
|
||||
endif
|
||||
|
||||
HOST_ARCH := $(EPICS_HOST_ARCH)
|
||||
|
||||
# Note:
|
||||
# The EPICS_HOST_ARCH solaris-sparc-gnu is new for base release R3.14
|
||||
# so existing R3.13 applications, when HOST_ARCH is set to solaris and
|
||||
# when built with R3.14, will look for base solaris-sparc directories
|
||||
# and not solaris-sparc-gnu. If you plan to build R3.13 applications
|
||||
# against a solaris-sparc-gnu built R3.14 base, you should set
|
||||
# ANSI=GCC and CPLUSPLUS=G++ in base/config/CONFIG_SITE.Host.solaris
|
||||
# and change ARCH_solaris=solaris-sparc to ARCH_solaris=solaris-sparc-gnu
|
||||
# in base/config/CONFIG_COMPAT.
|
||||
|
||||
|
||||
|
||||
@@ -10,5 +10,5 @@ HOSTEXE=.exe
|
||||
|
||||
TORNADO=YES
|
||||
|
||||
WIND_HOST_TYPE = cygwin32
|
||||
WIND_HOST_TYPE = x86-win32
|
||||
|
||||
|
||||
4
config/CONFIG_HOST_ARCH.solaris-sparc-gnu
Normal file
4
config/CONFIG_HOST_ARCH.solaris-sparc-gnu
Normal file
@@ -0,0 +1,4 @@
|
||||
# $Id$
|
||||
|
||||
-include $(EPICS_BASE)/config/CONFIG_HOST_ARCH.solaris
|
||||
|
||||
9
config/CONFIG_HOST_ARCH.solaris-x86
Normal file
9
config/CONFIG_HOST_ARCH.solaris-x86
Normal 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
|
||||
|
||||
4
config/CONFIG_HOST_ARCH.win32-x86
Normal file
4
config/CONFIG_HOST_ARCH.win32-x86
Normal file
@@ -0,0 +1,4 @@
|
||||
# $Id$
|
||||
|
||||
# win32-x86 is the new name for WIN32
|
||||
-include $(EPICS_BASE)/config/CONFIG_HOST_ARCH.WIN32
|
||||
@@ -21,6 +21,7 @@
|
||||
# hp700
|
||||
# sgi
|
||||
# solaris
|
||||
# solaris-x86
|
||||
# sun4
|
||||
#
|
||||
# HOST_ARCH now an environment variable
|
||||
@@ -42,6 +43,7 @@ endif
|
||||
# mv162lc
|
||||
# mv167
|
||||
# mv177
|
||||
# mv2700
|
||||
# niCpu030
|
||||
# pc486
|
||||
# ppc604
|
||||
@@ -64,7 +66,7 @@ TORNADO=YES
|
||||
# VxWorks directory for TORNADO=YES
|
||||
#VX_DIR_YES=c:\\Tornado
|
||||
#VX_DIR_YES = /usr/local/vw/tornado101
|
||||
VX_DIR_YES = /usr/local/vw/tornado20
|
||||
VX_DIR_YES = /usr/local/vw/tornado202
|
||||
|
||||
# VxWorks directory for TORNADO=NO
|
||||
#VX_DIR_NO=$(VW)
|
||||
@@ -119,7 +121,7 @@ MAKE_INC_TARGET_FIRST=NO
|
||||
# NOTE WIN32: YES results in a DLL. CONFIG_SITE.Host.WIN32
|
||||
# distribution file contains YES override
|
||||
#
|
||||
# NOTE solaris and sun4: If YES then LD_LIBRARY_PATH must
|
||||
# NOTE solaris,Linux, and sun4: If YES then LD_LIBRARY_PATH must
|
||||
# include fullpathname $(INSTALL_LOCATION)/lib/$(HOST_ARCH)
|
||||
# for both the base build and when invoking base executables
|
||||
SHARED_LIBRARIES=NO
|
||||
|
||||
@@ -6,3 +6,5 @@
|
||||
|
||||
SHARED_LIBRARIES = YES
|
||||
|
||||
BORLAND=C:\\Borland\\bcc55
|
||||
|
||||
|
||||
@@ -2,3 +2,5 @@
|
||||
|
||||
# linux-x86 is the new name for linux
|
||||
-include $(EPICS_BASE)/config/CONFIG_SITE.Host.Linux
|
||||
|
||||
SHARED_LIBRARY=YES
|
||||
|
||||
4
config/CONFIG_SITE.Host.solaris-sparc-gnu
Normal file
4
config/CONFIG_SITE.Host.solaris-sparc-gnu
Normal file
@@ -0,0 +1,4 @@
|
||||
# $Id$
|
||||
|
||||
# solaris-sparc is the new name for solaris
|
||||
-include $(EPICS_BASE)/config/CONFIG_SITE.Host.solaris
|
||||
5
config/CONFIG_SITE.Host.win32-x86
Normal file
5
config/CONFIG_SITE.Host.win32-x86
Normal file
@@ -0,0 +1,5 @@
|
||||
# $Id$
|
||||
|
||||
# win32-x86 is the new name for WIN32
|
||||
-include $(EPICS_BASE)/config/CONFIG_SITE.Host.WIN32
|
||||
|
||||
10
config/CONFIG_SITE.Vx.Linux
Normal file
10
config/CONFIG_SITE.Vx.Linux
Normal 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)
|
||||
11
config/CONFIG_SITE.Vx.Linux.mv167
Normal file
11
config/CONFIG_SITE.Vx.Linux.mv167
Normal 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
|
||||
11
config/CONFIG_SITE.Vx.Linux.ppc603
Normal file
11
config/CONFIG_SITE.Vx.Linux.ppc603
Normal 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
|
||||
@@ -11,8 +11,8 @@ INSTALL_CONFIG = $(INSTALL_LOCATION)/config
|
||||
CONFIGS += $(subst ../,,$(wildcard ../CONFIG*))
|
||||
CONFIGS += $(subst ../,,$(wildcard ../RULES*))
|
||||
|
||||
BIN_INSTALLS += $(wildcard ../tools/*.pl)
|
||||
BIN_INSTALLS += ../tools/installEpics
|
||||
SCRIPTS_HOST += $(wildcard ../tools/*.pl)
|
||||
SCRIPTS_HOST += ../tools/installEpics
|
||||
|
||||
include $(TOP)/configure/RULES
|
||||
|
||||
|
||||
@@ -3,7 +3,13 @@
|
||||
# Rules for making things related to databases
|
||||
#
|
||||
MAKEBPT = $(EPICS_BASE_HOST_BIN)/makeBpt$(EXE)
|
||||
MSI = $(EPICS_EXTENSIONS_BIN)/msi$(EXE)
|
||||
|
||||
ifndef MSI
|
||||
# Tool from R3.14 extensions bin, R3.13 extensions bin, or user path
|
||||
MSI = $(firstword $(wildcard $(EPICS_EXTENSIONS_HOST_BIN)/msi$(HOSTEXE) \
|
||||
$(EPICS_EXTENSIONS)/bin/$(HOST_ARCH)/msi$(HOSTEXE)) msi$(HOSTEXE))
|
||||
endif
|
||||
|
||||
DBEXPAND = $(EPICS_BASE_HOST_BIN)/dbExpand$(EXE)
|
||||
DBST = dbst
|
||||
MAKEDBDEPENDS = $(PERL) $(TOP)/config/makeDbDepends.pl
|
||||
|
||||
@@ -29,6 +29,7 @@
|
||||
vpath %.h $(USER_VPATH)
|
||||
vpath %.c $(USER_VPATH) ../os/$(ARCH_CLASS) ../os/generic ..
|
||||
vpath %.cc $(USER_VPATH) ../os/$(ARCH_CLASS) ../os/generic ..
|
||||
vpath %.cpp $(USER_VPATH) ../os/$(ARCH_CLASS) ../os/generic ..
|
||||
vpath %.rc $(USER_VPATH) ../os/$(ARCH_CLASS) ../os/generic ..
|
||||
|
||||
# check for add-on CFLAGS and CXXFLAGS
|
||||
@@ -281,7 +282,9 @@ endif
|
||||
|
||||
#---------------------------------------------------------------
|
||||
# always use c++ linker
|
||||
ifneq ($(strip $(CPLUSPLUS)),)
|
||||
LINK.c = $(LINK.cc)
|
||||
endif # CPLUSPLUS
|
||||
|
||||
#---------------------------------------------------------------
|
||||
# Version number for base shared libraries (and win32 products)
|
||||
@@ -303,11 +306,6 @@ LIBTARGETS += $(LIBNAME) $(INSTALL_LIBS)
|
||||
LIBNAME_RCS=$(foreach lib, $(basename $(LIBRARY)), $(RCS) $($(lib)_RCS) $($(lib)_RCS_$(ARCH_CLASS)))
|
||||
LIBNAME_RESS=$(addsuffix $(RES), $(basename $(LIBNAME_RCS)))
|
||||
|
||||
ifneq ($(words $(DLL_LIBS)), $(words $(DLL_DEPLIBS)))
|
||||
# If invalid library names, don't make DLL file
|
||||
SHARED_LIBRARIES = NO
|
||||
endif
|
||||
|
||||
# check if shared libraries requested
|
||||
ifeq ($(strip $(SHARED_LIBRARIES)),YES)
|
||||
|
||||
@@ -326,8 +324,6 @@ endif # LIBOBJS
|
||||
endif # LIBRARY
|
||||
|
||||
#---------------------------------------------------------------
|
||||
# Main targets
|
||||
|
||||
all:: install
|
||||
|
||||
build:: inc
|
||||
@@ -517,9 +513,11 @@ $(PACKAGE)_%.h:$(INSTALL_JAVA)/$(PACKAGE)/%.class
|
||||
# The order of the following rules is
|
||||
# VERY IMPORTANT !!!!
|
||||
|
||||
depends:: $(LIBSRCS) $(SRCS) $(COND_PROD_SRCS)
|
||||
depends:: $(LIBSRCS) $(SRCS) $(COND_PROD_SRCS) $(SRCS.c) $(SRCS.cc)
|
||||
$(RM) DEPENDS
|
||||
ifneq ($(strip $(LIBSRCS) $(SRCS) $(COND_PROD_SRCS) $(SRCS.c) $(SRCS.cc)),)
|
||||
$(DEPENDS_RULE)
|
||||
endif
|
||||
|
||||
ifeq ($(HOST_ARCH),Borland)
|
||||
%$(EXE): %.c
|
||||
@@ -532,6 +530,11 @@ ifeq ($(HOST_ARCH),Borland)
|
||||
$(COMPILE.cc) $<
|
||||
$(LINK.cc) $(subst ../,,$(basename $<))$(OBJ) , $@ ,,$(LINKLIBS) $(subst /,\\,$(LDLIBS))
|
||||
|
||||
%$(EXE): %.cpp
|
||||
@$(RM) $@
|
||||
$(COMPILE.cc) $<
|
||||
$(LINK.cc) $(subst ../,,$(basename $<))$(OBJ) , $@ ,,$(LINKLIBS) $(subst /,\\,$(LDLIBS))
|
||||
|
||||
%$(EXE): %.C
|
||||
@$(RM) $@
|
||||
$(COMPILE.cc) $<
|
||||
@@ -549,6 +552,11 @@ else
|
||||
$(COMPILE.cc) $<
|
||||
$(LINK.cc) $(subst ../,,$(basename $<))$(OBJ) $(LDLIBS)
|
||||
|
||||
%$(EXE): %.cpp
|
||||
@$(RM) $@
|
||||
$(COMPILE.cc) $<
|
||||
$(LINK.cc) $(subst ../,,$(basename $<))$(OBJ) $(LDLIBS)
|
||||
|
||||
%$(EXE): %.C
|
||||
@$(RM) $@
|
||||
$(COMPILE.cc) $<
|
||||
@@ -564,6 +572,10 @@ endif
|
||||
@$(RM) $@
|
||||
$(COMPILE.cc) $<
|
||||
|
||||
%$(OBJ): %.cpp
|
||||
@$(RM) $@
|
||||
$(COMPILE.cc) $<
|
||||
|
||||
%$(OBJ): %.C
|
||||
@$(RM) $@
|
||||
$(COMPILE.cc) $<
|
||||
@@ -616,7 +628,7 @@ endif
|
||||
%.db: ../%.edf
|
||||
$(E2DB) $(E2DB_SYSFLAGS) $(E2DB_FLAGS) $<
|
||||
|
||||
%.edf: ../%.sch
|
||||
%.edf: ../%.sch $(DEPSCHS)
|
||||
@if [ ! -f cad.rc -a -r ../cad.rc ] ; then ln -s ../cad.rc ; fi
|
||||
$(SCH2EDIF) $(SCH2EDIF_SYSFLAGS) $(SCH2EDIF_FLAGS) $<
|
||||
|
||||
|
||||
@@ -77,7 +77,9 @@ endif
|
||||
|
||||
depends:: $(SRCS.c) $(SRCS.cc)
|
||||
$(RM) DEPENDS
|
||||
ifneq ($(strip $(SRCS.c) $(SRCS.cc)),)
|
||||
$(DEPENDS_RULE)
|
||||
endif
|
||||
|
||||
clean::
|
||||
@echo "Cleaning"
|
||||
|
||||
@@ -3,6 +3,7 @@
|
||||
# UNIX-cp in Perl
|
||||
|
||||
use File::Copy;
|
||||
use File::Basename;
|
||||
|
||||
sub Usage
|
||||
{
|
||||
@@ -26,7 +27,8 @@ if (-d $target)
|
||||
{
|
||||
foreach $file ( @sources )
|
||||
{
|
||||
copy ($file, "$target/$file");
|
||||
$base=basename($file);
|
||||
copy ($file, "$target/$base");
|
||||
}
|
||||
}
|
||||
else
|
||||
|
||||
@@ -37,7 +37,7 @@ $install_dir =~ s[/$][]; # remove trailing '/'
|
||||
$install_dir =~ s[//][/]g; # replace '//' by '/'
|
||||
|
||||
# Do we have to create the directory?
|
||||
unless (-d $install_dir)
|
||||
unless ( (-d $install_dir) || (-l $install_dir) )
|
||||
{
|
||||
# Create dir only if -d option given
|
||||
Usage ("$install_dir does not exist") unless ($opt_d);
|
||||
|
||||
@@ -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);
|
||||
};
|
||||
}
|
||||
|
||||
@@ -22,6 +22,10 @@ foreach $arg ( @ARGV )
|
||||
{
|
||||
rmdir ($arg) or die "Cannot delete $arg";
|
||||
}
|
||||
if (-d $arg)
|
||||
{
|
||||
die "Failed to delete $arg";
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
|
||||
@@ -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
|
||||
|
||||
|
||||
@@ -1,7 +1,23 @@
|
||||
# Cross compiler default definitions
|
||||
|
||||
# Build class: either HOST or CROSS
|
||||
# Used to determine OPT and WARN compiler flags
|
||||
BUILD_CLASS = CROSS
|
||||
|
||||
ANSI = GCC
|
||||
CPLUSPLUS = G++
|
||||
# Cross build: either defined or not
|
||||
# Used in os/CONFIG.Common.<arch> files
|
||||
# ifdef CROSS looks better than ifeq ($(BUILD_CLASS),CROSS)
|
||||
CROSS = YES
|
||||
|
||||
GNU_TARGET_INCLUDE_DIR = $(GNU_DIR)/$(GNU_TARGET)/include
|
||||
GNU_TARGET_LIB_DIR = $(GNU_DIR)/$(GNU_TARGET)/lib
|
||||
|
||||
export GCC_EXEC_PREFIX = $(GNU_LIB)/gcc-lib/
|
||||
|
||||
CROSS_CPPFLAGS = -nostdinc
|
||||
CROSS_INCLUDES = $(addprefix -I,$(GNU_TARGET_INCLUDE_DIR))
|
||||
CROSS_LDFLAGS = $(addprefix -L,$(GNU_TARGET_LIB_DIR))
|
||||
|
||||
# All cross builds use the gnu compiler
|
||||
include $(CONFIG)/CONFIG.gnuCommon
|
||||
|
||||
|
||||
41
configure/CONFIG.gnuCommon
Normal file
41
configure/CONFIG.gnuCommon
Normal file
@@ -0,0 +1,41 @@
|
||||
#--------------------------------------------------
|
||||
# GNU compiler defaults
|
||||
|
||||
GNU_BIN = $(GNU_DIR)/bin
|
||||
GNU_LIB = $(GNU_DIR)/lib
|
||||
|
||||
CC = $(GNU_BIN)/$(CMPLR_PREFIX)cc$(CMPLR_SUFFIX)
|
||||
CCC = $(GNU_BIN)/$(CMPLR_PREFIX)cc$(CMPLR_SUFFIX)
|
||||
AR = $(GNU_BIN)/$(CMPLR_PREFIX)ar$(CMPLR_SUFFIX) -rc
|
||||
LD = $(GNU_BIN)/$(CMPLR_PREFIX)ld$(CMPLR_SUFFIX) -r
|
||||
CPP = $(CC) -x c -E
|
||||
RANLIB = $(GNU_BIN)/$(CMPLR_PREFIX)ranlib$(CMPLR_SUFFIX)
|
||||
|
||||
CODE_CFLAGS = -fPIC
|
||||
CONFORM_CFLAGS_ANSI = -ansi
|
||||
CONFORM_CFLAGS_STRICT = -ansi -pedantic
|
||||
CONFORM_CFLAGS_TRAD = -traditional
|
||||
WARN_CFLAGS_YES = -Wall
|
||||
WARN_CFLAGS_NO = -w
|
||||
#OPT_CFLAGS_YES = -g -O3
|
||||
OPT_CFLAGS_YES = -O3
|
||||
OPT_CFLAGS_NO = -g
|
||||
|
||||
CODE_CXXFLAGS = -fPIC -fno-implicit-templates
|
||||
CONFORM_CXXFLAGS_NORMAL = -ansi -pedantic
|
||||
CONFORM_CXXFLAGS_STRICT = -ansi -pedantic
|
||||
#WARN_CXXFLAGS_YES = -Wall -Weffc++
|
||||
WARN_CXXFLAGS_YES = -Wall
|
||||
WARN_CXXFLAGS_NO = -w
|
||||
#OPT_CXXFLAGS_YES = -g -O3
|
||||
OPT_CXXFLAGS_YES = -O3
|
||||
OPT_CXXFLAGS_NO = -g
|
||||
|
||||
STATIC_LDFLAGS_YES = -static
|
||||
STATIC_LDFLAGS_NO =
|
||||
|
||||
SHRLIB_LDFLAGS_YES = -shared
|
||||
SHRLIB_LDFLAGS_NO =
|
||||
|
||||
HDEPENDS_FLAGS_CMPLR = -MM
|
||||
|
||||
@@ -20,8 +20,10 @@
|
||||
# USR_CPPFLAGS c preprocesser flags
|
||||
# INC include-files to install
|
||||
# LIBSRCS source files for building library
|
||||
# PROD_LIBS EPICS libs needed by PROD and TESTPROD
|
||||
# USR_LIBS NONEPICS libs needed by PROD and TESTPROD
|
||||
# LIB_SRCS source files for building library
|
||||
# SHRLIB_LIBS libs needed by shared LIBRARY
|
||||
# PROD_LIBS libs needed by PROD and TESTPROD
|
||||
# USR_LIBS libs needed by PROD and TESTPROD
|
||||
# USR_LDFLAGS ld flags
|
||||
# SYS_PROD_LIBS system libs needed by PROD and TESTPROD
|
||||
# PROD products to build and install
|
||||
@@ -75,14 +77,6 @@ USR_LDFLAGS+=$(USR_LDFLAGS_DEFAULT)
|
||||
endif
|
||||
endif
|
||||
|
||||
ifneq ($(strip $(HTMLS_$(OS_CLASS))),)
|
||||
HTMLS+=$(subst -nil-,,$(HTMLS_$(OS_CLASS)))
|
||||
else
|
||||
ifdef HTMLS_DEFAULT
|
||||
HTMLS+=$(HTMLS_DEFAULT)
|
||||
endif
|
||||
endif
|
||||
|
||||
# check for special includes:
|
||||
#
|
||||
ifneq ($(strip $(INC_$(OS_CLASS))),)
|
||||
@@ -104,6 +98,14 @@ LIBSRCS+=$(LIBSRCS_DEFAULT)
|
||||
endif
|
||||
endif
|
||||
|
||||
ifneq ($(strip $(LIB_SRCS_$(OS_CLASS))),)
|
||||
LIB_SRCS += $(subst -nil-,,$(LIB_SRCS_$(OS_CLASS)))
|
||||
else
|
||||
ifdef LIB_SRCS_DEFAULT
|
||||
LIB_SRCS+=$(LIB_SRCS_DEFAULT)
|
||||
endif
|
||||
endif
|
||||
|
||||
ifneq ($(strip $(SRCS_$(OS_CLASS))),)
|
||||
SRCS += $(subst -nil-,,$(SRCS_$(OS_CLASS)))
|
||||
else
|
||||
@@ -128,6 +130,14 @@ BIN_INSTALLS+=$(BIN_INSTALLS_DEFAULT)
|
||||
endif
|
||||
endif
|
||||
|
||||
ifneq ($(strip $(PROD_OBJS_$(OS_CLASS))),)
|
||||
PROD_OBJS+=$(subst -nil-,,$(PROD_OBJS_$(OS_CLASS)))
|
||||
else
|
||||
ifneq (,$(strip $(PROD_OBJS_DEFAULT)))
|
||||
PROD_OBJS+=$(PROD_OBJS_DEFAULT)
|
||||
endif
|
||||
endif
|
||||
|
||||
ifneq ($(strip $(OBJS_$(OS_CLASS))),)
|
||||
OBJS+=$(subst -nil-,,$(OBJS_$(OS_CLASS)))
|
||||
else
|
||||
@@ -160,6 +170,14 @@ LIBOBJS+=$(LIBOBJS_DEFAULT)
|
||||
endif
|
||||
endif
|
||||
|
||||
ifneq ($(strip $(LIB_OBJS_$(OS_CLASS))),)
|
||||
LIB_OBJS+=$(subst -nil-,,$(LIB_OBJS_$(OS_CLASS)))
|
||||
else
|
||||
ifneq (,$(strip $(LIB_OBJS_DEFAULT)))
|
||||
LIB_OBJS+=$(LIB_OBJS_DEFAULT)
|
||||
endif
|
||||
endif
|
||||
|
||||
ifneq ($(strip $(LIBRARY_$(OS_CLASS))),)
|
||||
LIBRARY+=$(subst -nil-,,$(LIBRARY_$(OS_CLASS)))
|
||||
else
|
||||
@@ -185,20 +203,30 @@ endif
|
||||
endif
|
||||
|
||||
ifneq ($(strip $(PROD_LIBS_$(OS_CLASS))),)
|
||||
PROD_LIBS += $(subst -nil-,,$(PROD_LIBS_$(OS_CLASS)))
|
||||
PROD_LDLIBS += $(subst -nil-,,$(PROD_LIBS_$(OS_CLASS)))
|
||||
else
|
||||
ifdef PROD_LIBS_DEFAULT
|
||||
PROD_LIBS += $(PROD_LIBS_DEFAULT)
|
||||
PROD_LDLIBS += $(PROD_LIBS_DEFAULT)
|
||||
endif
|
||||
endif
|
||||
PROD_LDLIBS += $(PROD_LIBS)
|
||||
|
||||
ifneq ($(strip $(SHRLIB_LIBS_$(OS_CLASS))),)
|
||||
SHRLIB_LIBS += $(subst -nil-,,$(SHRLIB_LIBS_$(OS_CLASS)))
|
||||
else
|
||||
ifdef SHRLIB_LIBS_DEFAULT
|
||||
SHRLIB_LIBS += $(SHRLIB_LIBS_DEFAULT)
|
||||
endif
|
||||
endif
|
||||
|
||||
ifneq ($(strip $(USR_LIBS_$(OS_CLASS))),)
|
||||
USR_LIBS += $(subst -nil-,,$(USR_LIBS_$(OS_CLASS)))
|
||||
USR_LDLIBS += $(subst -nil-,,$(USR_LIBS_$(OS_CLASS)))
|
||||
else
|
||||
ifdef USR_LIBS_DEFAULT
|
||||
USR_LIBS += $(USR_LIBS_DEFAULT)
|
||||
USR_LDLIBS += $(USR_LIBS_DEFAULT)
|
||||
endif
|
||||
endif
|
||||
USR_LDLIBS += $(USR_LIBS)
|
||||
|
||||
#
|
||||
# concat specific library contents (if defined) to SYS_PROD_LIBS
|
||||
@@ -215,10 +243,26 @@ endif
|
||||
# concat specific products
|
||||
#
|
||||
ifneq ($(strip $(PROD_$(OS_CLASS))),)
|
||||
PROD += $(subst -nil-,,$(PROD_$(OS_CLASS)))
|
||||
PROD+=$(subst -nil-,,$(PROD_$(OS_CLASS)))
|
||||
else
|
||||
ifdef PROD_DEFAULT
|
||||
PROD += $(PROD_DEFAULT)
|
||||
ifneq (,$(strip $(PROD_DEFAULT)))
|
||||
PROD+=$(PROD_DEFAULT)
|
||||
endif
|
||||
endif
|
||||
|
||||
ifneq ($(strip $(PROD_IOC_$(OS_CLASS))),)
|
||||
PROD_IOC+=$(subst -nil-,,$(PROD_IOC_$(OS_CLASS)))
|
||||
else
|
||||
ifneq (,$(strip $(PROD_IOC_DEFAULT)))
|
||||
PROD_IOC+=$(PROD_IOC_DEFAULT)
|
||||
endif
|
||||
endif
|
||||
|
||||
ifneq ($(strip $(PROD_HOST_$(OS_CLASS))),)
|
||||
PROD_HOST+=$(subst -nil-,,$(PROD_HOST_$(OS_CLASS)))
|
||||
else
|
||||
ifneq (,$(strip $(PROD_HOST_DEFAULT)))
|
||||
PROD_HOST+=$(PROD_HOST_DEFAULT)
|
||||
endif
|
||||
endif
|
||||
|
||||
@@ -226,10 +270,26 @@ endif
|
||||
# concat specific products
|
||||
#
|
||||
ifneq ($(strip $(TESTPROD_$(OS_CLASS))),)
|
||||
TESTPROD += $(subst -nil-,,$(TESTPROD_$(OS_CLASS)))
|
||||
TESTPROD+=$(subst -nil-,,$(TESTPROD_$(OS_CLASS)))
|
||||
else
|
||||
ifdef TESTPROD_DEFAULT
|
||||
TESTPROD += $(TESTPROD_DEFAULT)
|
||||
ifneq (,$(strip $(TESTPROD_DEFAULT)))
|
||||
TESTPROD+=$(TESTPROD_DEFAULT)
|
||||
endif
|
||||
endif
|
||||
|
||||
ifneq ($(strip $(TESTPROD_IOC_$(OS_CLASS))),)
|
||||
TESTPROD_IOC+=$(subst -nil-,,$(TESTPROD_IOC_$(OS_CLASS)))
|
||||
else
|
||||
ifneq (,$(strip $(TESTPROD_IOC_DEFAULT)))
|
||||
TESTPROD_IOC+=$(TESTPROD_IOC_DEFAULT)
|
||||
endif
|
||||
endif
|
||||
|
||||
ifneq ($(strip $(TESTPROD_HOST_$(OS_CLASS))),)
|
||||
TESTPROD_HOST+=$(subst -nil-,,$(TESTPROD_HOST_$(OS_CLASS)))
|
||||
else
|
||||
ifneq (,$(strip $(TESTPROD_HOST_DEFAULT)))
|
||||
TESTPROD_HOST+=$(TESTPROD_HOST_DEFAULT)
|
||||
endif
|
||||
endif
|
||||
|
||||
@@ -244,6 +304,22 @@ SCRIPTS += $(SCRIPTS_DEFAULT)
|
||||
endif
|
||||
endif
|
||||
|
||||
ifneq ($(strip $(SCRIPTS_IOC_$(OS_CLASS))),)
|
||||
SCRIPTS_IOC+=$(subst -nil-,,$(SCRIPTS_IOC_$(OS_CLASS)))
|
||||
else
|
||||
ifneq (,$(strip $(SCRIPTS_IOC_DEFAULT)))
|
||||
SCRIPTS_IOC+=$(SCRIPTS_IOC_DEFAULT)
|
||||
endif
|
||||
endif
|
||||
|
||||
ifneq ($(strip $(SCRIPTS_HOST_$(OS_CLASS))),)
|
||||
SCRIPTS_HOST+=$(subst -nil-,,$(SCRIPTS_HOST_$(OS_CLASS)))
|
||||
else
|
||||
ifneq (,$(strip $(SCRIPTS_HOST_DEFAULT)))
|
||||
SCRIPTS_HOST+=$(SCRIPTS_HOST_DEFAULT)
|
||||
endif
|
||||
endif
|
||||
|
||||
#
|
||||
# concat specific resource files
|
||||
#
|
||||
@@ -255,14 +331,3 @@ RCS += $(RCS_DEFAULT)
|
||||
endif
|
||||
endif
|
||||
|
||||
#
|
||||
# concat specific sequencer flags
|
||||
#
|
||||
ifneq ($(strip $(SNCFLAGS_$(OS_CLASS))),)
|
||||
SNCFLAGS += $(subst -nil-,,$(SNCFLAGS_$(OS_CLASS)))
|
||||
else
|
||||
ifdef SNCFLAGS_DEFAULT
|
||||
SNCFLAGS += $(SNCFLAGS_DEFAULT)
|
||||
endif
|
||||
endif
|
||||
|
||||
|
||||
@@ -6,42 +6,32 @@ endif
|
||||
# Epics base directories
|
||||
|
||||
EPICS_BASE_HOST_BIN = $(EPICS_BASE)/bin/$(EPICS_HOST_ARCH)
|
||||
EPICS_BASE_HOST_LIB = $(EPICS_BASE)/lib/$(EPICS_HOST_ARCH)
|
||||
EPICS_EXTENSIONS_HOST_BIN = $(EPICS_EXTENSIONS)/bin/$(EPICS_HOST_ARCH)
|
||||
EPICS_EXTENSIONS_HOST_LIB = $(EPICS_EXTENSIONS)/lib/$(EPICS_HOST_ARCH)
|
||||
EPICS_BASE_INCLUDE = $(EPICS_BASE)/include
|
||||
|
||||
ifdef T_A
|
||||
EPICS_BASE_LIB = $(EPICS_BASE)/lib/$(T_A)
|
||||
EPICS_BASE_BIN = $(EPICS_BASE)/bin/$(T_A)
|
||||
endif
|
||||
|
||||
#Definitions for extensions convenience
|
||||
As_DIR = $(EPICS_BASE_LIB)
|
||||
ca_DIR = $(EPICS_BASE_LIB)
|
||||
cas_DIR = $(EPICS_BASE_LIB)
|
||||
Com_DIR = $(EPICS_BASE_LIB)
|
||||
rsrvIoc_DIR = $(EPICS_BASE_LIB)
|
||||
registryIoc_DIR = $(EPICS_BASE_LIB)
|
||||
asHost_DIR = $(EPICS_BASE_LIB)
|
||||
asIoc_DIR = $(EPICS_BASE_LIB)
|
||||
ca_DIR = $(EPICS_BASE_LIB)
|
||||
cas_DIR = $(EPICS_BASE_LIB)
|
||||
dbIoc_DIR = $(EPICS_BASE_LIB)
|
||||
dbStaticHost_DIR = $(EPICS_BASE_LIB)
|
||||
dbStaticIoc_DIR = $(EPICS_BASE_LIB)
|
||||
dbtoolsIoc_DIR = $(EPICS_BASE_LIB)
|
||||
gdd_DIR = $(EPICS_BASE_LIB)
|
||||
|
||||
#---------------------------------------------------------------
|
||||
# For applications and extensions
|
||||
|
||||
# add epics/base include directories
|
||||
ifneq ($(EPICS_BASE),$(TOP))
|
||||
ifneq ($(EPICS_BASE),$(INSTALL_LOCATION))
|
||||
INSTALL_INCLUDES += \
|
||||
-I$(EPICS_BASE_INCLUDE)/os/$(OS_CLASS) \
|
||||
-I$(EPICS_BASE_INCLUDE)
|
||||
|
||||
endif
|
||||
endif
|
||||
iocsh_DIR = $(EPICS_BASE_LIB)
|
||||
miscIoc_DIR = $(EPICS_BASE_LIB)
|
||||
registryIoc_DIR = $(EPICS_BASE_LIB)
|
||||
rsrvIoc_DIR = $(EPICS_BASE_LIB)
|
||||
recIoc_DIR = $(EPICS_BASE_LIB)
|
||||
softDevIoc_DIR = $(EPICS_BASE_LIB)
|
||||
testDevIoc_DIR = $(EPICS_BASE_LIB)
|
||||
recIocObj_DIR = $(EPICS_BASE_LIB)
|
||||
softDevIocObj_DIR = $(EPICS_BASE_LIB)
|
||||
testDevIocObj_DIR = $(EPICS_BASE_LIB)
|
||||
iocCore_DIR = $(EPICS_BASE_LIB)
|
||||
|
||||
#---------------------------------------------------------------
|
||||
# Version number for base shared libraries (and win32 products)
|
||||
@@ -54,11 +44,7 @@ endif # EPICS_BASE
|
||||
#---------------------------------------------------------------
|
||||
# Epics base c preprocessor flags
|
||||
|
||||
# c++ exceptions
|
||||
CXX_EXCEPTIONS = YES
|
||||
CXX_EXCEPTIONS_FLAGS_YES =
|
||||
CXX_EXCEPTIONS_FLAGS_NO = -DnoExceptionsFromCXX
|
||||
EPICS_BASE_CPPFLAGS = $(CXX_EXCEPTIONS_FLAGS_$(CXX_EXCEPTIONS))
|
||||
EPICS_BASE_CPPFLAGS =
|
||||
|
||||
# osithread default stack
|
||||
OSITHREAD_USE_DEFAULT_STACK = YES
|
||||
@@ -69,30 +55,48 @@ EPICS_BASE_CPPFLAGS += $(OSITHREAD_DEFAULT_STACK_FLAGS_$(OSITHREAD_USE_DEFAULT_S
|
||||
#---------------------------------------------------------------
|
||||
# Epics base build tools and tool flags
|
||||
|
||||
MAKEBPT = $(EPICS_BASE_HOST_BIN)/makeBpt$(HOSTEXE)
|
||||
DBEXPAND = $(EPICS_BASE_HOST_BIN)/dbExpand$(HOSTEXE)
|
||||
MKMF = $(PERL) $(TOOLS)/mkmf.pl
|
||||
REPLACEVAR = $(PERL) $(TOOLS)/replaceVAR.pl
|
||||
DBTORECORDTYPEH = $(EPICS_BASE_HOST_BIN)/dbToRecordtypeH$(HOSTEXE)
|
||||
DBTOMENUH = $(EPICS_BASE_HOST_BIN)/dbToMenuH$(HOSTEXE)
|
||||
REGISTERRECORDDEVICEDRIVER = $(PERL) $(EPICS_BASE_HOST_BIN)/registerRecordDeviceDriver.pl
|
||||
|
||||
# private versions of lex/yacc from EPICS
|
||||
EYACC = $(EPICS_BASE_HOST_BIN)/antelope$(HOSTEXE)
|
||||
ELEX = $(EPICS_BASE_HOST_BIN)/e_flex$(HOSTEXE) -S$(EPICS_BASE_INCLUDE)/flex.skel.static
|
||||
ELEX = $(EPICS_BASE_HOST_BIN)/e_flex$(HOSTEXE) -S$(EPICS_BASE)/include/flex.skel.static
|
||||
|
||||
YACC = $(EYACC)
|
||||
LEX = $(ELEX)
|
||||
|
||||
# state notation language compiler (installed from base/src/sequencer)
|
||||
SNC = $(SEQ)/bin/$(EPICS_HOST_ARCH)/snc$(HOSTEXE)
|
||||
#---------------------------------------------------------------
|
||||
# External tools and tool flags - must be in path or defined in application
|
||||
|
||||
# adl2dl
|
||||
ADL2DL = $(EPICS_EXTENSIONS_HOST_BIN)/adl2dl
|
||||
ifndef ADL2DL
|
||||
ADL2DL = adl2dl
|
||||
endif
|
||||
|
||||
# sch2edif compiler and flags
|
||||
SCH2EDIF = sch2edif
|
||||
SCH2EDIF_PATH =
|
||||
SCH2EDIF_SYSFLAGS = -n -ap -p.+..+$(SCH2EDIF_PATH)+$(EPICS_EXTENSIONS)/templates/capfast/sym+
|
||||
SCH2EDIF_SYSFLAGS = -n -ap -p.+..+$(SCH2EDIF_PATH)+$(CAPFAST_TEMPLATES)/sym+
|
||||
SCH2EDIF_FLAGS =
|
||||
|
||||
# e2db and flags
|
||||
# - again there is an assumption where edb.def is installed.
|
||||
E2DB = $(EPICS_EXTENSIONS_HOST_BIN)/e2db
|
||||
E2DB_SYSFLAGS = -ate -d $(EPICS_EXTENSIONS)/templates/capfast/edb.def
|
||||
ifndef E2DB
|
||||
E2DB = e2db
|
||||
endif
|
||||
E2DB_SYSFLAGS = -ate -d $(CAPFAST_TEMPLATES)/edb.def
|
||||
E2DB_FLAGS =
|
||||
|
||||
#dbst
|
||||
DBST = $(EPICS_EXTENSIONS_HOST_BIN)/dbst
|
||||
ifndef DBST
|
||||
DBST = dbst
|
||||
endif
|
||||
|
||||
ifndef MSI
|
||||
MSI = msi
|
||||
endif
|
||||
|
||||
|
||||
|
||||
@@ -10,7 +10,7 @@
|
||||
EPICS_VERSION=3
|
||||
EPICS_REVISION=14
|
||||
EPICS_MODIFICATION=0
|
||||
EPICS_UPDATE_NAME=alpha
|
||||
EPICS_UPDATE_NAME=beta
|
||||
EPICS_UPDATE_LEVEL=1
|
||||
|
||||
EPICS_VERSION_STRING="EPICS Version ${EPICS_VERSION}.${EPICS_REVISION}.${EPICS_MODIFICATION}.${EPICS_UPDATE_NAME}${EPICS_UPDATE_LEVEL}"
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
#
|
||||
# This file is to be maintained by the community.
|
||||
#
|
||||
# Common Configuration Information
|
||||
# Common Configuration Information
|
||||
|
||||
#-------------------------------------------------------
|
||||
# Build architectures
|
||||
@@ -14,17 +14,28 @@
|
||||
CROSS1 = $(CROSS_COMPILER_TARGET_ARCHS$(word 1,$(CROSS_COMPILER_HOST_ARCHS)))
|
||||
|
||||
# CROSS2 will be defined only when CROSS_COMPILER_HOST_ARCHS is defined
|
||||
# and EPICS_HOST_ARCH is one of it's words
|
||||
# and EPICS_HOST_ARCH is one of it's words
|
||||
CROSS2 = $(CROSS_COMPILER_TARGET_ARCHS$(filter-out 1,$(words $(filter $(EPICS_HOST_ARCH),$(CROSS_COMPILER_HOST_ARCHS)))))
|
||||
|
||||
BUILD_ARCHS = $(EPICS_HOST_ARCH) $(CROSS1) $(CROSS2)
|
||||
|
||||
#-------------------------------------------------------
|
||||
# Build class default, HOST or CROSS, CONFIG will override
|
||||
# Ext, app, and module configure dir targets
|
||||
CONFIG_TARGETS += CONFIG_APP_INCLUDE RULES_INCLUDE
|
||||
CONFIG_INSTALLS += ../RULES_BUILD
|
||||
|
||||
#-------------------------------------------------------
|
||||
# Check configure/RELEASE file for consistency
|
||||
CHECK_RELEASE_YES = checkRelease
|
||||
CHECK_RELEASE_NO =
|
||||
|
||||
#-------------------------------------------------------
|
||||
# Cross compile default, HOST or CROSS, CONFIG.crossCommon will override
|
||||
BUILD_CLASS = HOST
|
||||
|
||||
#-------------------------------------------------------
|
||||
# Divider and suffix
|
||||
# Prefix and suffix
|
||||
DEP=.depends
|
||||
DIVIDER = .
|
||||
OBJ = .
|
||||
RES = .
|
||||
@@ -61,6 +72,9 @@ INSTALL_DB = $(INSTALL_LOCATION)/db
|
||||
INSTALL_CONFIG = $(INSTALL_LOCATION)/configure
|
||||
INSTALL_JAVA = $(INSTALL_LOCATION)/javalib
|
||||
|
||||
#Directory for OS independant build created files
|
||||
COMMON_DIR = ../O.Common
|
||||
|
||||
ifdef T_A
|
||||
|
||||
INSTALL_LIB = $(INSTALL_LOCATION_LIB)/$(T_A)
|
||||
@@ -68,88 +82,41 @@ INSTALL_SHRLIB = $(INSTALL_LOCATION_LIB)/$(T_A)
|
||||
INSTALL_TCLLIB = $(INSTALL_LOCATION_LIB)/$(T_A)
|
||||
INSTALL_BIN = $(INSTALL_LOCATION_BIN)/$(T_A)
|
||||
|
||||
#--------------------------------------------------
|
||||
# vpath directories
|
||||
GENERIC_SRC_DIRS = .. $(SRC_DIRS)
|
||||
OS_SRC_DIRS += . $(foreach dir, $(SRC_DIRS) .., \
|
||||
OS_SRC_DIRS += . $(foreach dir, .. $(SRC_DIRS), \
|
||||
$(dir)/os/$(OS_CLASS) $(dir)/os/posix $(dir)/os/default )
|
||||
ALL_SRC_DIRS = $(OS_SRC_DIRS) $(GENERIC_SRC_DIRS)
|
||||
|
||||
#--------------------------------------------------
|
||||
# compile line include directories
|
||||
INSTALL_INCLUDES += \
|
||||
-I$(INSTALL_INCLUDE)/os/$(OS_CLASS) \
|
||||
-I$(INSTALL_INCLUDE)
|
||||
-I$(INSTALL_INCLUDE)
|
||||
GENERIC_SRC_INCLUDES = $(addprefix -I, $(GENERIC_SRC_DIRS))
|
||||
|
||||
#--------------------------------------------------
|
||||
# GNU compiler defaults
|
||||
|
||||
GNU_BIN = $(GNU_DIR)/bin
|
||||
GNU_LIB = $(GNU_DIR)/lib
|
||||
export GCC_EXEC_PREFIX = $(GNU_LIB)/gcc-lib/
|
||||
|
||||
GCC_AR = $(GNU_BIN)/$(CMPLR_PREFIX)ar$(CMPLR_SUFFIX) -rc
|
||||
GCC_CPP = $(GCC) -x c -E
|
||||
GCC_RANLIB = $(GNU_BIN)/$(CMPLR_PREFIX)ranlib$(CMPLR_SUFFIX)
|
||||
|
||||
GCC = $(GNU_BIN)/$(CMPLR_PREFIX)cc$(CMPLR_SUFFIX)
|
||||
|
||||
GCC_CONFORM_CFLAGS_ANSI = -ansi
|
||||
GCC_CONFORM_CFLAGS_STRICT = -ansi -pedantic
|
||||
GCC_CONFORM_CFLAGS_TRAD = -traditional
|
||||
GCC_WARN_YES = -Wall
|
||||
GCC_WARN_NO = -w
|
||||
GCC_OPT_YES = -g -O3
|
||||
GCC_OPT_NO = -g
|
||||
GCC_STATIC_CFLAGS_YES = -static
|
||||
GCC_STATIC_CFLAGS_NO =
|
||||
GCC_BUILD_CFLAGS_CROSS = -B$(GNU_LIB)/gcc-lib/ -nostdinc
|
||||
GCC_BUILD_CPPFLAGS_CROSS = -nostdinc
|
||||
GCC_SHRLIB_LDFLAGS_YES = -shared
|
||||
GCC_CODE_CPPFLAGS = -D_REENTRANT
|
||||
GCC_POSIX_CPPFLAGS = -D_POSIX_C_SOURCE=199506L -D_POSIX_THREADS
|
||||
|
||||
G++ = $(GNU_BIN)/$(CMPLR_PREFIX)cc$(CMPLR_SUFFIX)
|
||||
|
||||
G++_CONFORM_CFLAGS_NORMAL = -ansi -pedantic
|
||||
G++_CONFORM_CFLAGS_STRICT = -ansi -pedantic
|
||||
#G++_WARN_YES = -Wall -Weffc++
|
||||
G++_WARN_YES = -Wall
|
||||
G++_WARN_NO = -w
|
||||
G++_OPT_YES = -g -O3
|
||||
G++_OPT_NO = -g
|
||||
G++_STATIC_CFLAGS_YES = -static
|
||||
G++_STATIC_CFLAGS_NO =
|
||||
G++_SHRLIB_LDFLAGS_YES = -shared
|
||||
G++_CODE_CPPFLAGS = -D_REENTRANT
|
||||
G++_POSIX_CPPFLAGS = -D_POSIX_C_SOURCE=199506L -D_POSIX_THREADS
|
||||
|
||||
G++_TEMPL_INST_FLAG = -DEXPL_TEMPL
|
||||
G++_DEPENDS_FLAG = -MM
|
||||
|
||||
#--------------------------------------------------
|
||||
# Target filename definitions
|
||||
OBJSNAME = $(addsuffix $(OBJ),$(OBJS))
|
||||
PRODNAME = $(addsuffix $(EXE),$(PROD))
|
||||
TESTPRODNAME = $(addsuffix $(EXE),$(TESTPROD))
|
||||
OBJSNAME = $(addsuffix $(OBJ),$(basename $(OBJS)))
|
||||
PRODNAME = $(addsuffix $(EXE),$(basename $(PROD)))
|
||||
TESTPRODNAME = $(addsuffix $(EXE),$(basename $(TESTPROD)))
|
||||
|
||||
#---------------------------------------------------------------
|
||||
# Directory targets
|
||||
|
||||
DIRECTORY_TARGETS += $(INSTALL_DBD) $(INSTALL_INCLUDE)
|
||||
SHRLIBNAME = $(SHRLIBNAME_$(SHARED_LIBRARIES))
|
||||
|
||||
#--------------------------------------------------
|
||||
# obj files
|
||||
|
||||
TARGET_OBJS = $(addsuffix $(OBJ),$(basename $($*_OBJS)))
|
||||
|
||||
PROD_OBJS = $(addsuffix $(OBJ),$(basename $(SRCS) $(PROD_SRCS)))
|
||||
PROD_LD_OBJS = $(TARGET_OBJS) $(PROD_OBJS)
|
||||
PRODUCT_OBJS = $(addsuffix $(OBJ),$(basename $(SRCS) $(PROD_SRCS) $(PROD_OBJS)))
|
||||
PROD_LD_OBJS = $(TARGET_OBJS) $(PRODUCT_OBJS)
|
||||
|
||||
LIBRARY_OBJS = $(addsuffix $(OBJ),$(basename $(SRCS) $(LIBSRCS)))
|
||||
LIBRARY_OBJS = $(addsuffix $(OBJ),$(basename $(SRCS) $(LIB_SRCS) $(LIBSRCS) $(LIB_OBJS)))
|
||||
LIBRARY_LD_OBJS = $(TARGET_OBJS) $(LIBRARY_OBJS)
|
||||
|
||||
#--------------------------------------------------
|
||||
# resource(WIN32) files
|
||||
# WIN95/NT resource files
|
||||
|
||||
TARGET_RESS = $(addsuffix $(RES),$(basename $($*_RCS)))
|
||||
|
||||
@@ -162,28 +129,11 @@ LIBRARY_LD_RESS = $(TARGET_RESS) $(LIBRARY_RESS)
|
||||
#--------------------------------------------------
|
||||
# WIN95/NT source browser
|
||||
PROD_BAF = $(addsuffix $(BAF), $(basename $(PROD)))
|
||||
LIB_BAF_IOC=$(addsuffix $(BAF),$(basename $(LIBRARY_IOC)))
|
||||
LIB_BAF_HOST=$(addsuffix $(BAF),$(basename $(LIBRARY_HOST)))
|
||||
|
||||
#--------------------------------------------------
|
||||
# dbExpand flags
|
||||
|
||||
INSTALL_DBDFLAGS = -I $(INSTALL_LOCATION)/dbd
|
||||
LIB_BAF=$(addsuffix $(BAF),$(basename $(LIBRARY)))
|
||||
|
||||
#--------------------------------------------------
|
||||
# C preprocessor, compiler, and linker flag defaults
|
||||
|
||||
# Build class (CROSS,HOST) flags
|
||||
BUILD_CLASS_CFLAGS = $($(ANSI)_BUILD_CFLAGS_$(BUILD_CLASS))
|
||||
BUILD_CLASS_CPPFLAGS = $($(ANSI)_BUILD_CPPFLAGS_$(BUILD_CLASS))
|
||||
|
||||
# C++ template flag
|
||||
TEMPL_INST_CXXFLAG = $($(CPLUSPLUS)_TEMPL_INST_FLAG)
|
||||
|
||||
# Code (position independant and reentrant) flags
|
||||
CODE_CFLAGS = $($(ANSI)_CODE_CFLAGS)
|
||||
CODE_CXXFLAGS = $($(CPLUSPLUS)_CODE_CFLAGS)
|
||||
|
||||
# Target architecture specific (solaris,sun4,mv167,...) flags
|
||||
ARCH_DEP_CPPFLAGS =
|
||||
ARCH_DEP_CFLAGS =
|
||||
@@ -194,6 +144,7 @@ ARCH_DEP_LDLIBS =
|
||||
# Target operating system specific (Unix,Vx,WIN32...) flags
|
||||
OP_SYS_CPPFLAGS =
|
||||
OP_SYS_CFLAGS =
|
||||
OP_SYS_CXXFLAGS = $(OP_SYS_CFLAGS)
|
||||
OP_SYS_LDFLAGS =
|
||||
OP_SYS_INCLUDES =
|
||||
OP_SYS_LDLIBS =
|
||||
@@ -207,110 +158,129 @@ USR_INCLUDES =
|
||||
USR_CFLAGS =
|
||||
USR_CXXFLAGS =
|
||||
USR_LDFLAGS =
|
||||
USR_LDLIBS =
|
||||
USR_LIBS =
|
||||
USR_CPPFLAGS =
|
||||
USR_DBDFLAGS =
|
||||
USR_ARFLAGS =
|
||||
|
||||
# Target specific options
|
||||
TARGET_INCLUDES = $($(basename $@)_INCLUDES) $($(basename $@)_INCLUDES_$(OS_CLASS))
|
||||
TARGET_CFLAGS = $($(basename $@)_CFLAGS) $($(basename $@)_CFLAGS_$(OS_CLASS))
|
||||
TARGET_CXXFLAGS = $($(basename $@)_CXXFLAGS) $($(basename $@)_CXXFLAGS_$(OS_CLASS))
|
||||
TARGET_LDFLAGS = $($(basename $@)_LDFLAGS) $($(basename $@)_LDFLAGS_$(OS_CLASS))
|
||||
TARGET_LDLIBS = $($(basename $@)_LDLIBS) $($(basename $@)_LDLIBS_$(OS_CLASS))
|
||||
TARGET_CPPFLAGS = $($(basename $@)_CPPFLAGS) $($(basename $@)_CPPFLAGS_$(OS_CLASS))
|
||||
TARGET_SNCFLAGS = $($(basename $@)_SNCFLAGS) $($(basename $@)_SNCFLAGS_$(OS_CLASS))
|
||||
TARGET_INCLUDES = $($(basename $@)_INCLUDES_$(OS_CLASS)) $($(basename $@)_INCLUDES)
|
||||
TARGET_CFLAGS = $($(basename $@)_CFLAGS_$(OS_CLASS)) $($(basename $@)_CFLAGS)
|
||||
TARGET_CXXFLAGS = $($(basename $@)_CXXFLAGS_$(OS_CLASS)) $($(basename $@)_CXXFLAGS)
|
||||
TARGET_LDFLAGS = $($(basename $@)_LDFLAGS_$(OS_CLASS)) $($(basename $@)_LDFLAGS)
|
||||
TARGET_CPPFLAGS = $($(basename $@)_CPPFLAGS_$(OS_CLASS)) $($(basename $@)_CPPFLAGS)
|
||||
|
||||
# POSIX specific flags
|
||||
POSIX_CPPFLAGS = $($(ANSI)_POSIX_CPPFLAGS)
|
||||
|
||||
# CMPLR level of ansi conformance flags
|
||||
CONFORM_CFLAGS = $($(ANSI)_CONFORM_CFLAGS_$(CMPLR))
|
||||
CONFORM_CXXFLAGS = $($(CPLUSPLUS)_CONFORM_CFLAGS_$(CMPLR))
|
||||
# Level of ansi conformance flags
|
||||
CONFORM_CPPFLAGS = $(CONFORM_CPPFLAGS_$(firstword $($(basename $@)_CMPLR_$(T_A)) \
|
||||
$($(basename $@)_CMPLR_$(OS_CLASS)) $($(basename $@)_CMPLR) $(CMPLR)))
|
||||
CONFORM_CFLAGS = $(CONFORM_CFLAGS_$(firstword $($(basename $@)_CMPLR_$(T_A)) \
|
||||
$($(basename $@)_CMPLR_$(OS_CLASS)) $($(basename $@)_CMPLR) $(CMPLR)))
|
||||
CONFORM_CXXFLAGS = $(CONFORM_CXXFLAGS_$(firstword $($(basename $@)_CMPLR_$(T_A)) \
|
||||
$($(basename $@)_CMPLR_$(OS_CLASS)) $($(basename $@)_CMPLR) $(CXXCMPLR)))
|
||||
|
||||
# Warnings flags
|
||||
WARN_CFLAGS = $($(ANSI)_WARN_$($(BUILD_CLASS)_WARN))
|
||||
WARN_CXXFLAGS = $($(CPLUSPLUS)_WARN_$($(BUILD_CLASS)_WARN))
|
||||
WARN_CFLAGS = $(WARN_CFLAGS_$(firstword $($(basename $@)_WARN_$(T_A)) \
|
||||
$($(basename $@)_WARN_$(OS_CLASS)) $($(basename $@)_WARN) $($(BUILD_CLASS)_WARN)))
|
||||
WARN_CXXFLAGS = $(WARN_CXXFLAGS_$(firstword $($(basename $@)_WARN_$(T_A)) \
|
||||
$($(basename $@)_WARN_$(OS_CLASS)) $($(basename $@)_WARN) $($(BUILD_CLASS)_WARN)))
|
||||
|
||||
# Optimization flags
|
||||
OPT_CFLAGS = $($(ANSI)_OPT_$($(BUILD_CLASS)_OPT))
|
||||
OPT_CXXFLAGS = $($(CPLUSPLUS)_OPT_$($(BUILD_CLASS)_OPT))
|
||||
OPT_LDFLAGS =
|
||||
OPT_CFLAGS = $(OPT_CFLAGS_$(firstword $($(basename $@)_OPT_$(T_A)) \
|
||||
$($(basename $@)_OPT_$(OS_CLASS)) $($(basename $@)_OPT) $($(BUILD_CLASS)_OPT)))
|
||||
OPT_CXXFLAGS = $(OPT_CXXFLAGS_$(firstword $($(basename $@)_OPT_$(T_A)) \
|
||||
$($(basename $@)_OPT_$(OS_CLASS)) $($(basename $@)_OPT) $($(BUILD_CLASS)_OPT)))
|
||||
|
||||
# Posix flags
|
||||
POSIX=YES
|
||||
POSIX_CPPFLAGS=$(POSIX_CPPFLAGS_$(POSIX))
|
||||
POSIX_LDLIBS=$(POSIX_LDLIBS_$(POSIX))
|
||||
|
||||
# Static build flags
|
||||
STATIC_CFLAGS = $($(ANSI)_STATIC_CFLAGS_$(STATIC_BUILD))
|
||||
STATIC_CXXCFLAGS = $($(CPLUSPLUS)_STATIC_CFLAGS_$(STATIC_BUILD))
|
||||
STATIC_LDFLAGS = $($(ANSI)_STATIC_LDFLAGS_$(STATIC_BUILD))
|
||||
STATIC_LDLIBS = $($(ANSI)_STATIC_LDLIBS_$(STATIC_BUILD))
|
||||
|
||||
# Depends flag
|
||||
DEPENDS_FLAG = $($(CPLUSPLUS)_DEPENDS_FLAG)
|
||||
STATIC_CFLAGS = $(STATIC_CFLAGS_$(STATIC_BUILD))
|
||||
STATIC_CXXCFLAGS = $(STATIC_CXXFLAGS_$(STATIC_BUILD))
|
||||
STATIC_LDFLAGS = $(STATIC_LDFLAGS_$(STATIC_BUILD))
|
||||
STATIC_LDLIBS = $(STATIC_LDLIBS_$(STATIC_BUILD))
|
||||
|
||||
#--------------------------------------------------
|
||||
# Flags
|
||||
|
||||
INCLUDES = -I. $(USR_INCLUDES) $(INSTALL_INCLUDES) \
|
||||
$(TARGET_INCLUDES) $(GENERIC_SRC_INCLUDES) $(OP_SYS_INCLUDES)
|
||||
INCLUDES = -I. $(GENERIC_SRC_INCLUDES) $(INSTALL_INCLUDES) $(RELEASE_INCLUDES)\
|
||||
$(TARGET_INCLUDES) $(USR_INCLUDES) $(OP_SYS_INCLUDES) $(CROSS_INCLUDES)
|
||||
|
||||
CFLAGS = $(CONFORM_CFLAGS) $(OPT_CFLAGS) $(DEBUG_CFLAGS) $(WARN_CFLAGS)\
|
||||
$(TARGET_CFLAGS) $(USR_CFLAGS) $(ARCH_DEP_CFLAGS) $(CODE_CFLAGS)\
|
||||
$(STATIC_CFLAGS) $(OP_SYS_CFLAGS)
|
||||
CFLAGS = $(CONFORM_CFLAGS) $(CROSS_CFLAGS) $(OPT_CFLAGS) $(DEBUG_CFLAGS)\
|
||||
$(WARN_CFLAGS) $(TARGET_CFLAGS) $(USR_CFLAGS) $(ARCH_DEP_CFLAGS)\
|
||||
$(CODE_CFLAGS) $(STATIC_CFLAGS) $(OP_SYS_CFLAGS)
|
||||
|
||||
CXXFLAGS = $(CONFORM_CXXFLAGS) $(OPT_CXXFLAGS) $(DEBUG_CXXFLAGS) $(WARN_CXXFLAGS)\
|
||||
$(TARGET_CXXFLAGS) $(USR_CXXFLAGS) $(ARCH_DEP_CXXFLAGS) $(CODE_CXXFLAGS)\
|
||||
$(STATIC_CXXCFLAGS) $(OP_SYS_CFLAGS) $(TEMPL_INST_CXXFLAG)
|
||||
CXXFLAGS = $(CONFORM_CXXFLAGS) $(CROSS_CXXFLAGS) $(OPT_CXXFLAGS)\
|
||||
$(DEBUG_CXXFLAGS) $(WARN_CXXFLAGS) $(TARGET_CXXFLAGS) $(USR_CXXFLAGS)\
|
||||
$(ARCH_DEP_CXXFLAGS) $(CODE_CXXFLAGS) $(STATIC_CXXCFLAGS) $(OP_SYS_CXXFLAGS)
|
||||
|
||||
LDFLAGS = $(OPT_LDFLAGS) $(TARGET_LDFLAGS) $(USR_LDFLAGS) $(DEPLIB_LDFLAGS)\
|
||||
$(ARCH_DEP_LDFLAGS) $(STATIC_LDFLAGS) $(OP_SYS_LDFLAGS)
|
||||
$(ARCH_DEP_LDFLAGS) $(STATIC_LDFLAGS) $(OP_SYS_LDFLAGS) $(CROSS_LDFLAGS)
|
||||
|
||||
LDLIBS = $(TARGET_LDLIBS) $(USR_LDLIBS) $(DEPLIB_LDLIBS) $(ARCH_DEP_LDLIBS)\
|
||||
$(STATIC_LDLIBS) $(OP_SYS_LDLIBS)
|
||||
LDLIBS = $(DEPLIB_LDLIBS) $(STATIC_LDLIBS)\
|
||||
$(POSIX_LDLIBS) $(ARCH_DEP_LDLIBS) $(OP_SYS_LDLIBS)
|
||||
|
||||
CPPFLAGS += $(POSIX_CPPFLAGS) $(EPICS_BASE_CPPFLAGS)\
|
||||
$(TARGET_CPPFLAGS) $(USR_CPPFLAGS) $(ARCH_DEP_CPPFLAGS) $(OP_SYS_CPPFLAGS)
|
||||
|
||||
CPPSNCFLAGS = $(CPPFLAGS) $(INCLUDES)
|
||||
|
||||
DBDFLAGS = $(USR_DBDFLAGS) -I . -I .. $(INSTALL_DBDFLAGS)
|
||||
CPPFLAGS += $(CONFORM_CPPFLAGS) $(CROSS_CPPFLAGS) $(POSIX_CPPFLAGS)\
|
||||
$(EPICS_BASE_CPPFLAGS) $(TARGET_CPPFLAGS) $(USR_CPPFLAGS) $(ARCH_DEP_CPPFLAGS)\
|
||||
$(OP_SYS_CPPFLAGS) $(OP_SYS_INCLUDE_CPPFLAGS) $(CODE_CPPFLAGS)
|
||||
|
||||
#--------------------------------------------------
|
||||
# ar definition default
|
||||
AR = $($(ANSI)_AR)
|
||||
ARFLAGS =
|
||||
ARCMD = $(AR) $(ARFLAGS) $(USR_ARFLAGS) $@ $(LIBRARY_LD_OBJS)
|
||||
|
||||
#--------------------------------------------------
|
||||
# C compiler
|
||||
CC = $($(ANSI)) $(BUILD_CLASS_CFLAGS)
|
||||
CPP = $($(ANSI)_CPP) $(BUILD_CLASS_CPPFLAGS)
|
||||
RANLIB = $($(ANSI)_RANLIB)
|
||||
|
||||
#--------------------------------------------------
|
||||
# C++ compiler
|
||||
CXX = $($(CPLUSPLUS)) $(BUILD_CLASS_CFLAGS)
|
||||
# ld default
|
||||
LDCMD = $(LD) -o $@ $^
|
||||
|
||||
#--------------------------------------------------
|
||||
# Build compile line here
|
||||
|
||||
COMPILE.c = $(CC) $(CFLAGS) $(CPPFLAGS) $(INCLUDES) -c $(SOURCE_FLAG)
|
||||
COMPILE.cpp = $(CXX) $(CXXFLAGS) $(CPPFLAGS) $(INCLUDES) -c $(SOURCE_CXXFLAG)
|
||||
COMPILE.c = $(CC) -c $(CPPFLAGS) $(CFLAGS) $(INCLUDES) $(SOURCE_FLAG)
|
||||
COMPILE.cpp = $(CCC) -c $(CPPFLAGS) $(CXXFLAGS) $(INCLUDES) $(SOURCE_CXXFLAG)
|
||||
|
||||
#--------------------------------------------------
|
||||
# depends definition
|
||||
TARGET_SRCS = $(foreach name, $(TESTPROD) $(PROD) $(LIBRARY_HOST) $(LIBRARY_IOC), $($(name)_SRCS))
|
||||
SRC_FILES = $(foreach src, $(LIBSRCS) $(SRCS) $(PROD_SRCS) $(TARGET_SRCS) , \
|
||||
$(firstword $(wildcard $(addsuffix /$(src),$(ALL_SRC_DIRS))) $(src)))
|
||||
DEPENDS_RULE = -$(COMPILE.cpp) $(DEPENDS_FLAG) $(SRC_FILES) > DEPENDS
|
||||
# Build depends command here
|
||||
|
||||
HOST_HDEPENDS_CMD = MKMF
|
||||
CROSS_HDEPENDS_CMD = MKMF
|
||||
|
||||
HDEPENDS_CMD = $($(BUILD_CLASS)_HDEPENDS_CMD)
|
||||
|
||||
HDEPENDS.c_CMPLR = $(CC)
|
||||
HDEPENDS.cpp_CMPLR = $(CCC)
|
||||
HDEPENDSFLAGS_CMPLR += $(CPPFLAGS) $(INCLUDES) $< > $*$(DEP)
|
||||
|
||||
HDEPENDS.c_MKMF = $(PERL) $(TOOLS)/mkmf.pl
|
||||
HDEPENDS.cpp_MKMF = $(PERL) $(TOOLS)/mkmf.pl
|
||||
HDEPENDSFLAGS_MKMF = -m $*$(DEP) $(HDEPENDS_INCLUDES_MKMF) $@ $<
|
||||
HDEPENDS_INCLUDES_MKMF = $(filter .%,$(subst -I,,$(INCLUDES)))
|
||||
|
||||
HDEPENDS.c = $(HDEPENDS.c_$(HDEPENDS_CMD))
|
||||
HDEPENDS.cpp = $(HDEPENDS.cpp_$(HDEPENDS_CMD))
|
||||
HDEPENDSFLAGS = $(HDEPENDSFLAGS_$(HDEPENDS_CMD))
|
||||
HDEPENDS_FLAGS = $(HDEPENDS_FLAGS_$(HDEPENDS_CMD))
|
||||
HDEPENDS_CMD.c = -$(HDEPENDS.c) $(HDEPENDS_FLAGS) $(HDEPENDSFLAGS)
|
||||
HDEPENDS_CMD.cpp = -$(HDEPENDS.cpp) $(HDEPENDS_FLAGS) $(HDEPENDSFLAGS)
|
||||
HDEPENDS_TARGETS_CMD = $(PERL) $(TOOLS)/makeDependsTargets.pl $*$(DEP)
|
||||
|
||||
#--------------------------------------------------
|
||||
# depends definition
|
||||
|
||||
TARGET_SRCS = $(foreach name, $(TESTPROD) $(PROD) $(LIBRARY), $($(name)_SRCS))
|
||||
SRC_FILES = $(LIB_SRCS) $(LIBSRCS) $(SRCS) $(PROD_SRCS) $(TARGET_SRCS)
|
||||
HDEPENDS_FILES = $(addsuffix $(DEP),$(notdir $(basename $(SRC_FILES))))
|
||||
|
||||
#---------------------------------------------------------------
|
||||
# Names of installed items
|
||||
# Names of installed items
|
||||
#
|
||||
# each list starts with the destination directory name(s)
|
||||
# to make sure it's there
|
||||
|
||||
INSTALL_PROD= $(PRODNAME:%= $(INSTALL_BIN)/%)
|
||||
INSTALL_LIBS= $(LIBNAME:%=$(INSTALL_LIB)/%)
|
||||
INSTALL_MUNCHS= $(MUNCHNAME:%=$(INSTALL_LIB)/%)
|
||||
INSTALL_MUNCHS= $(MUNCHNAME:%=$(INSTALL_BIN)/%)
|
||||
INSTALL_SHRLIBS= $(SHRLIBNAME:%=$(INSTALL_SHRLIB)/%)
|
||||
INSTALL_DLL_LINK_LIBS=$(DLL_LINK_LIBNAME:%=$(INSTALL_LIB)/%)
|
||||
INSTALL_TCLLIBS=$(TCLLIBNAME:%=$(INSTALL_TCLLIB)/%)
|
||||
@@ -318,8 +288,6 @@ INSTALL_TCLINDEX=$(TCLINDEX:%=$(INSTALL_TCLLIB)/%)
|
||||
INSTALL_SCRIPTS = $(SCRIPTS:%= $(INSTALL_BIN)/%)
|
||||
INSTALL_OBJS = $(OBJSNAME:%= $(INSTALL_BIN)/%)
|
||||
|
||||
INCREC +=$(RECTYPES) $(MENUS)
|
||||
INSTALL_INCREC = $(INCREC:%= $(INSTALL_INCLUDE)/%)
|
||||
INSTALL_DOCS = $(DOCS:%= $(INSTALL_DOC)/%)
|
||||
INSTALL_HTMLS = $(HTMLS:%= $(INSTALL_HTML)/$(HTMLS_DIR)/%)
|
||||
|
||||
@@ -327,22 +295,15 @@ INSTALL_TEMPLATE = $(addprefix $(INSTALL_TEMPLATES_SUBDIR)/, \
|
||||
$(subst $(CONFIG),top/configure,$(TEMPLATES)))
|
||||
INSTALL_CONFIGS = $(CONFIGS:%= $(INSTALL_CONFIG)/%)
|
||||
|
||||
INSTALL_BPTS = $(BPTS:%= $(INSTALL_DBD)/%)
|
||||
INSTALL_DBS = $(DBDINSTALL:%= $(INSTALL_DBD)/%)\
|
||||
$(RECTYPES:%.h= $(INSTALL_DBD)/%.dbd)\
|
||||
$(MENUS:%.h= $(INSTALL_DBD)/%.dbd)
|
||||
|
||||
INSTALL_DBDNAME = $(DBDNAME:%= $(INSTALL_DBD)/%)
|
||||
|
||||
#---------------------------------------------------------------
|
||||
#
|
||||
# auto determine the directory paths that things are installed to
|
||||
# RULES:
|
||||
# 1) found in any one of several os specific area
|
||||
# 1) found in any one of several os specific area
|
||||
# => install to $(INSTALL_INCLUDE)/os/$(OS_CLASS)
|
||||
# 2) not foundin (1) and found in generic area
|
||||
# 2) not foundin (1) and found in generic area
|
||||
# => install to $(INSTALL_INCLUDE)
|
||||
# 3) not found in (1) or (2) then may be (not yet) computer generated
|
||||
# 3) not found in (1) or (2) then may be (not yet) computer generated
|
||||
# => install into $(INSTALL_INCLUDE)/os/$(OS_CLASS) and let
|
||||
# build rules work on vpath
|
||||
#
|
||||
@@ -374,6 +335,12 @@ INSTALL_INC_aaa = $(wildcard $(addsuffix /$(inc), $(dir)) )
|
||||
#
|
||||
# Rule 3
|
||||
#
|
||||
GENERATED_INSTALL_INC = $(INSTALL_INCLUDE)/os/$(OS_CLASS)/$(inc)
|
||||
GENERATED_INSTALL_INC = $(INSTALL_INCLUDE)/$(inc)
|
||||
|
||||
COMMON_INC += $(filter $(COMMON_DIR)/%, $(foreach file, $(INC), \
|
||||
$(firstword $(SOURCE_INC) $(COMMON_DIR)/$(file) ) ) )
|
||||
SOURCE_INC = $(wildcard $(file) $(SOURCE_INC_bbb) )
|
||||
SOURCE_INC_bbb = $(foreach dir, $(ALL_SRC_DIRS), $(SOURCE_INC_aaa) )
|
||||
SOURCE_INC_aaa = $(addsuffix /$(file), $(dir) )
|
||||
|
||||
endif
|
||||
|
||||
@@ -24,22 +24,33 @@
|
||||
# Augment beacon/search dest ip addr list
|
||||
# from white space separated ip addresses in this
|
||||
# environment variable. "Quote" if more than one addr.
|
||||
#
|
||||
# EPICS_CA_AUTO_ADDR_LIST
|
||||
# YES = augment beacon/search dest ip
|
||||
# addr list from network interfaces found; NO = only use
|
||||
# EPICS_CA_ADDR_LIST to create this list.
|
||||
#
|
||||
# EPICS_CA_CONN_TMO
|
||||
# after not seeing a server beacon for this number
|
||||
# of seconds the clients will send an echo request over
|
||||
# tcp/ip to verify the connection.
|
||||
#
|
||||
# EPICS_CA_REPEATER_PORT CA repeater port number.
|
||||
#
|
||||
# EPICS_CA_SERVER_PORT CA server port number.
|
||||
#
|
||||
# EPICS_CA_MAX_ARRAY_BYTES
|
||||
# This parameter specifies the size (in bytes) of the largest array
|
||||
# that will transport through CA. It must be specified for both the
|
||||
# client and the server library.
|
||||
#
|
||||
|
||||
EPICS_CA_ADDR_LIST=""
|
||||
EPICS_CA_AUTO_ADDR_LIST=YES
|
||||
EPICS_CA_CONN_TMO=30.0
|
||||
EPICS_CA_REPEATER_PORT=5065
|
||||
EPICS_CA_SERVER_PORT=5064
|
||||
EPICS_CA_MAX_ARRAY_BYTES=16384
|
||||
|
||||
#
|
||||
# These parameters are only used by the CA server library
|
||||
@@ -111,40 +122,39 @@ EPICS_CA_SERVER_PORT=5064
|
||||
# --------------------------------------------------
|
||||
#
|
||||
# o Make sure that the broadcast addresses are identical on the
|
||||
# server's host and on the client's host. This can be checked with
|
||||
# "netstat -i" or "ifconfig -a".
|
||||
# server's host and on the client's host. This can be checked
|
||||
# on UNIX with "netstat -i" or "ifconfig -a"; on vxWorks with
|
||||
# ifShow; and on windows with ipconfig.
|
||||
#
|
||||
# o Make sure that the client and server are using the same UDP
|
||||
# port. Check the server's port by running "netstat -a | grep nnn"
|
||||
# where nnn is the port number involved. If you do not set
|
||||
# EPICS_CA_SERVER_PORT or EPICS_CAS_SERVER_PORT
|
||||
# then the default port will be 5064.
|
||||
# EPICS_CA_SERVER_PORT or EPICS_CAS_SERVER_PORT then the default port
|
||||
# will be 5064.
|
||||
#
|
||||
# o Two servers can run on the same host with the same server port number
|
||||
# if the following restrictions are understood (good luck). If the host has a
|
||||
# modern IP kernel it is possible to have two servers on the same UDP port.
|
||||
# It is not possible for two servers to run on the same host using the same
|
||||
# TCP IP server port. If the CA server library detects that a 2nd server is attempting
|
||||
# to start on the same port as an existing CA server then both servers will use the
|
||||
# same UDP port if it is a modern IP kernel, and the 2nd server will
|
||||
# be allocated a new TCP port. In this situation the clients will still be
|
||||
# configured to use the same port number for both servers. The clients
|
||||
# will find the 2nd server via the shared UDP port, and transparently
|
||||
# connect to the 2nd server's allocated TCP port. Be aware that If there are
|
||||
# two server's running on the same host on the same UDP port then they will
|
||||
# both receive all UDP search requests sent as broadcasts, but will unfortunately (due to
|
||||
# what I consider to be a real weakness of most IP kernel implementations) only one
|
||||
# of the servers will typically receive UDP search requests sent to unicast addresses (i.e.
|
||||
# a specific host's ip address).
|
||||
# TCP IP server port. If the CA server library detects that a 2nd server is
|
||||
# attempting to start on the same port as an existing CA server then both
|
||||
# servers will use the same UDP port if it is a modern IP kernel, and the 2nd
|
||||
# server will be allocated a new TCP port. In this situation the clients will
|
||||
# still be configured to use the same port number for both servers. The clients
|
||||
# will find the 2nd server via the shared UDP port, and transparently connect
|
||||
# to the 2nd server's allocated TCP port. Be aware that If there are two server's
|
||||
# running on the same host on the same UDP port then they will both receive all
|
||||
# UDP search requests sent as broadcasts, but will unfortunately (due to a common
|
||||
# weakness of most IP kernel implementations) only one of the servers will
|
||||
# typically receive UDP search requests sent to unicast addresses (i.e. a specific
|
||||
# host's ip address).
|
||||
#
|
||||
|
||||
|
||||
EPICS_CA_BEACON_PERIOD=15.0
|
||||
EPICS_CAS_INTF_ADDR_LIST=""
|
||||
EPICS_CAS_BEACON_ADDR_LIST=""
|
||||
EPICS_CAS_SERVER_PORT=
|
||||
|
||||
|
||||
# Log Server:
|
||||
# EPICS_IOC_LOG_PORT Log server port number etc.
|
||||
EPICS_IOC_LOG_PORT=7004
|
||||
|
||||
@@ -11,16 +11,20 @@
|
||||
|
||||
# The host architecture performing the build,
|
||||
# i.e.: the arch running DCT/getrel/etc.
|
||||
# <operating system>-<architecture>[-<alternate compiler>]
|
||||
#
|
||||
# Currently Supporting:
|
||||
# sun4
|
||||
# hp700
|
||||
# alpha
|
||||
# solaris
|
||||
# sgi
|
||||
# Linux
|
||||
# WIN32
|
||||
# LynxOS
|
||||
# hpux-parisc
|
||||
# osf-alpha
|
||||
# solaris-sparc (sun compiler used for host builds)
|
||||
# solaris-sparc-gnu (GNU compiler used for host builds)
|
||||
# solaris-x86 (sun compiler used for host builds)
|
||||
# solaris-x86-gnu (GNU compiler used for host builds)
|
||||
# sun4-x86 (sun compiler used for host builds)
|
||||
# linux-x86 (GNU compiler used for host builds)
|
||||
# win32-x86 (MS Visual C++ compiler used for host builds)
|
||||
# win32-x86-borland (Borland C++ compiler used for host builds)
|
||||
# lynxos-x86
|
||||
#
|
||||
# EPICS_HOST_ARCH is an environment variable
|
||||
# EPICS_HOST_ARCH=$(shell /usr/local/epics/startup/EpicsHostArch)
|
||||
@@ -34,11 +38,18 @@
|
||||
# vxWorks-68040lc
|
||||
# vxWorks-68060
|
||||
# vxWorks-pentium
|
||||
# vxWorks-ppc603
|
||||
# vxWorks-ppc604
|
||||
# RTEMS-gen68360
|
||||
# RTEMS-mvme167
|
||||
# RTEMS-pc386
|
||||
#
|
||||
CROSS_COMPILER_TARGET_ARCHS=vxWorks-68040
|
||||
# Definitions of CROSS_COMPILER_TARGET_ARCHS in
|
||||
# configure/os/CONFIG_SITE.<host>.Common files will
|
||||
# override
|
||||
#
|
||||
#CROSS_COMPILER_TARGET_ARCHS=
|
||||
CROSS_COMPILER_TARGET_ARCHS=vxWorks-68040 vxWorks-ppc604
|
||||
|
||||
|
||||
# If only a subset of the host architectures perform
|
||||
@@ -47,16 +58,6 @@ CROSS_COMPILER_TARGET_ARCHS=vxWorks-68040
|
||||
#
|
||||
CROSS_COMPILER_HOST_ARCHS=
|
||||
|
||||
# Client ANSI C Compiler (for Host builds)
|
||||
# GCC GNU (gcc -ansi)
|
||||
# ACC OS VENDOR (sun4/solaris: acc ; hp700: cc -Aa)
|
||||
ANSI=ACC
|
||||
|
||||
# C++ Compiler (for Host builds)
|
||||
# G++ GNU C++ (g++)
|
||||
# CCC OS VENDOR C++ (sun4/solaris: CC ; hp700: aCC)
|
||||
CPLUSPLUS=CCC
|
||||
|
||||
# Default ANSI level, individual Makefiles will override
|
||||
# if they cannot support ANSI compilation.
|
||||
# STRICT - ANSI C - force warning flags
|
||||
@@ -73,13 +74,14 @@ CXXCMPLR=STRICT
|
||||
# Build shared libraries?
|
||||
# (archive libraries will also be built)
|
||||
# must be either YES or NO
|
||||
# NOTE: CONFIG_SITE.Host.$(HOST_ARCH) files may override
|
||||
# NOTE: os/CONFIG.$(EPICS_HOST_ARCH).$(EPICS_HOST_ARCH) files and
|
||||
# os/CONFIG_SITE.$(EPICS_HOST_ARCH).$(EPICS_HOST_ARCH) files may override
|
||||
#
|
||||
# NOTE WIN32: YES results in a DLL. CONFIG_SITE.Host.WIN32
|
||||
# distribution file contains YES override
|
||||
#
|
||||
# NOTE solaris and sun4: If YES then LD_LIBRARY_PATH must
|
||||
# include fullpathname $(INSTALL_LOCATION)/lib/$(EPICS_HOST_ARCH)
|
||||
# NOTE solaris,Linux, and sun4: If YES then LD_LIBRARY_PATH must
|
||||
# include fullpathname to $(INSTALL_LOCATION)/lib/$(EPICS_HOST_ARCH)
|
||||
# for both the base build and when invoking base executables
|
||||
SHARED_LIBRARIES=NO
|
||||
|
||||
@@ -87,6 +89,11 @@ SHARED_LIBRARIES=NO
|
||||
# must be either YES or NO
|
||||
STATIC_BUILD=NO
|
||||
|
||||
# Should header dependancy files be automatically generated
|
||||
# for each C/C++ created object file?
|
||||
# must be either YES or NO
|
||||
HDEPENDS=YES
|
||||
|
||||
# Host build optimization
|
||||
# must be either YES or NO
|
||||
HOST_OPT=YES
|
||||
@@ -102,3 +109,6 @@ HOST_WARN=YES
|
||||
# Generate Verbose Compiler Warnings for cross compile builds
|
||||
# must be either YES or NO
|
||||
CROSS_WARN=YES
|
||||
|
||||
# Installation directory
|
||||
INSTALL_LOCATION=$(TOP)
|
||||
|
||||
@@ -19,10 +19,12 @@
|
||||
# Site-specific environment settings
|
||||
|
||||
# Time service:
|
||||
# EPICS_TS_MIN_WEST the local time difference from GMT.
|
||||
# EPICS_TIMEZONE needed for vxWorks
|
||||
# EPICS_TIMEZONE=<name>::<minutesWest>:<start daylight>:<end daylight>
|
||||
# eg EPICS_TIMEZONE=CUS::360:033102:102802
|
||||
# EPICS_TS_NTP_INET ntp or Unix time server ip addr.
|
||||
|
||||
EPICS_TS_MIN_WEST=360
|
||||
EPICS_TIMEZONE=CUS::360:033102:102802
|
||||
EPICS_TS_NTP_INET=
|
||||
|
||||
|
||||
|
||||
@@ -3,5 +3,4 @@
|
||||
# NOTE: RELEASE.$(EPICS_HOST_ARCH) files will override
|
||||
|
||||
# Tornado directory
|
||||
#VX_DIR = /usr/local/vw/tornado101
|
||||
VX_DIR = /usr/local/vw/tornado20
|
||||
VX_DIR = /usr/local/vw/tornado202
|
||||
|
||||
@@ -1,177 +1,218 @@
|
||||
#RULES.Db
|
||||
|
||||
##################################################### vpath
|
||||
|
||||
vpath %.dbd $(USR_VPATH) $(GENERIC_SRC_DIRS) $(dir $(DBD)) $(COMMON_DIR)
|
||||
vpath %.db $(USR_VPATH) $(GENERIC_SRC_DIRS) $(dir $(DB)) $(COMMON_DIR)
|
||||
vpath %.substitutions $(USR_VPATH) $(GENERIC_SRC_DIRS) $(COMMON_DIR)
|
||||
vpath %.template $(USR_VPATH) $(GENERIC_SRC_DIRS) $(COMMON_DIR)
|
||||
vpath %.edf $(USR_VPATH) $(GENERIC_SRC_DIRS) $(COMMON_DIR)
|
||||
vpath bpt%.data $(USR_VPATH) $(GENERIC_SRC_DIRS) $(COMMON_DIR)
|
||||
|
||||
##################################################### dbdflags
|
||||
|
||||
# dbExpand
|
||||
INSTALL_DBDFLAGS += -I $(INSTALL_LOCATION)/dbd
|
||||
DBDFLAGS = $(USR_DBDFLAGS) -I . -I .. $(INSTALL_DBDFLAGS) $(RELEASE_DBDFLAGS)
|
||||
|
||||
##################################################### Targets
|
||||
|
||||
# Following line added for backward compatibilty
|
||||
DBD += $(DBDNAME)
|
||||
|
||||
DBD += $(addsuffix .dbd,$(patsubst %.h,%,$(patsubst %.db,%,$(DBDINC))))
|
||||
INC += $(addsuffix .h,$(patsubst %.h,%,$(patsubst %.db,%,$(DBDINC))))
|
||||
|
||||
INSTALL_DBDS += $(addprefix $(INSTALL_DBD)/,$(notdir $(DBD)))
|
||||
|
||||
COMMON_DBDS += $(filter $(COMMON_DIR)/%, $(foreach file, $(DBD), \
|
||||
$(firstword $(SOURCE_DBD) $(COMMON_DIR)/$(file) ) ) )
|
||||
SOURCE_DBD = $(wildcard $(file) $(SOURCE_DBD_bbb) )
|
||||
SOURCE_DBD_bbb = $(foreach dir, $(GENERIC_SRC_DIRS), $(SOURCE_DBD_aaa) )
|
||||
SOURCE_DBD_aaa = $(addsuffix /$(file), $(dir) )
|
||||
|
||||
INSTALL_DBS += $(addprefix $(INSTALL_DB)/,$(notdir $(DB)))
|
||||
|
||||
COMMON_DBS += $(filter $(COMMON_DIR)/%, $(foreach file, $(DB), \
|
||||
$(firstword $(SOURCE_DB) $(COMMON_DIR)/$(file) ) ) )
|
||||
SOURCE_DB = $(wildcard $(file) $(SOURCE_DB_bbb) )
|
||||
SOURCE_DB_bbb = $(foreach dir, $(GENERIC_SRC_DIRS), $(SOURCE_DB_aaa) )
|
||||
SOURCE_DB_aaa = $(addsuffix /$(file), $(dir) )
|
||||
|
||||
COMMONS = $(COMMON_DIR)/*.dbd $(COMMON_DIR)/*.db $(COMMON_DIR)/*.h \
|
||||
$(COMMON_DIR)/*.substitutions $(COMMON_DIR)/*.template
|
||||
|
||||
##################################################### dependancies
|
||||
|
||||
HINC += $(addsuffix .h,$(patsubst %.h,%,$(patsubst %.db,%,$(DBDINC))))
|
||||
COMMON_DBDINC += $(addprefix $(COMMON_DIR),$(HINC))
|
||||
|
||||
DBDDEPENDS_FILES += $(addsuffix $(DEP),$(COMMON_DBDS) \
|
||||
$(COMMON_DBDINC) $(COMMON_DBS))
|
||||
|
||||
DBDDEPENDS_FLAGS = $(filter .%,$(subst -I,,$(filter-out -S%,$(DBDFLAGS))))
|
||||
DBDDEPENDS_CMD=@-$(MKMF) -m $@$(DEP) $(DBDDEPENDS_FLAGS) $@ $<
|
||||
|
||||
#####################################################
|
||||
|
||||
ifndef T_A
|
||||
|
||||
include $(CONFIG)/RULES_ARCHS
|
||||
COMMON_DIR = .
|
||||
INSTALL_DBDS =
|
||||
INSTALL_DBS =
|
||||
COMMON_DBDS = $(DBD)
|
||||
COMMON_DBS = $(DB)
|
||||
COMMONS = $(DBD) $(DB)
|
||||
|
||||
else #T_A
|
||||
-include $(TOP)/configure/O.$(EPICS_HOST_ARCH)/CONFIG_APP_INCLUDE
|
||||
|
||||
MAKEBPT = $(EPICS_BASE_HOST_BIN)/makeBpt$(HOSTEXE)
|
||||
DBEXPAND = $(EPICS_BASE_HOST_BIN)/dbExpand$(HOSTEXE)
|
||||
DBST = dbst
|
||||
MAKEDBDEPENDS = $(PERL) $(TOOLS)/makeDbDepends.pl
|
||||
REPLACEVAR = $(PERL) $(TOOLS)/replaceVAR.pl
|
||||
all: install
|
||||
|
||||
INSTALL_BPTS = $(BPTS:%= $(INSTALL_DBD)/%)
|
||||
INSTALL_DBS = $(DBDINSTALL:%= $(INSTALL_DBD)/%)
|
||||
INSTALL_DBDNAME = $(DBDNAME:%= $(INSTALL_DBD)/%)
|
||||
INSTALL_DATA=$(INSTALLDB:%=$(INSTALL_DB)/%)
|
||||
buildInstall : build
|
||||
|
||||
all: install
|
||||
|
||||
inc: $(INSTALL_DBS)
|
||||
install: buildInstall
|
||||
|
||||
rebuild: clean install
|
||||
|
||||
install: inc buildInstall
|
||||
.PHONY: all inc build install clean rebuild buildInstall
|
||||
|
||||
buildInstall: build $(INSTALL_BPTS) $(INSTALL_DATA)
|
||||
endif # T_A defined
|
||||
|
||||
clean::
|
||||
@echo "Cleaning"
|
||||
@$(RM) $(DB) *.template *.substitutions *.db.raw \
|
||||
*.db-stamp *.edf esiread.cnf
|
||||
ifneq (,$(strip $(DBDDEPENDS_FILES)))
|
||||
-include $(DBDDEPENDS_FILES)
|
||||
endif
|
||||
|
||||
depends:
|
||||
$(DBDDEPENDS_FILES):
|
||||
|
||||
##################################################### build dependancies, clean rule
|
||||
|
||||
inc : $(COMMON_INC) $(INSTALL_INC)
|
||||
|
||||
build : $(COMMON_DBDS) $(COMMON_DBS) \
|
||||
$(INSTALL_DBDS) $(INSTALL_DBS) \
|
||||
$(DBDDEPENDS_FILES)
|
||||
|
||||
clean::
|
||||
@$(RM) $(COMMONS) $(DBDDEPENDS_FILES)
|
||||
@$(RM) *_registerRecordDeviceDriver.cpp
|
||||
|
||||
##################################################### "Foreign" templates
|
||||
|
||||
TEMPLATE_LINKS = $(filter-out $(notdir $(USES_TEMPLATE)), $(USES_TEMPLATE))
|
||||
TEMPLATE_FILES = $(filter $(notdir $(USES_TEMPLATE)), $(USES_TEMPLATE))
|
||||
DB_STAMP = $(patsubst %.db, %.db-stamp, $(DB))
|
||||
DB_REALTARGET = $(patsubst %.db-stamp, %.db, $@)
|
||||
COMMON_TEMPLATES=$(addsuffix $(COMMON_DIR)/,$(notdir $(TEMPLATE_LINKS)))
|
||||
|
||||
ifneq '$(TEMPLATE_LINKS)' ''
|
||||
build: $(notdir $(TEMPLATE_LINKS))
|
||||
endif
|
||||
build: $(INSTALL_DBDNAME) $(TEMPLATE_FILES) $(DB_STAMP)
|
||||
build: $(TEMPLATE_FILES)
|
||||
|
||||
$(notdir $(TEMPLATE_LINKS)): %.template:
|
||||
$(COMMON_TEMPLATES): $(COMMON_DIR)/%.template:
|
||||
ifndef WIN32
|
||||
@$(RM) $(notdir $(TEMPLATE_LINKS))
|
||||
ln -s $(TEMPLATE_LINKS) .
|
||||
ln -s $(TEMPLATE_LINKS)
|
||||
else
|
||||
@$(RM) $(notdir $(TEMPLATE_LINKS))
|
||||
$(CP) $(TEMPLATE_LINKS) .
|
||||
$(CP) $(TEMPLATE_LINKS)
|
||||
endif
|
||||
|
||||
##################################################### Inflated or plain databases
|
||||
|
||||
$(INSTALL_DB)/%.db: %.db-stamp
|
||||
@echo "Installing database $@"
|
||||
@$(INSTALL) -d -m 644 $(patsubst %.db-stamp, %.db, $<) $(@D)
|
||||
|
||||
# Must have DBDNAME defined to use dbst optimization
|
||||
ifndef DBDNAME
|
||||
DB_OPT = NO
|
||||
endif
|
||||
|
||||
# dbst based database optimization
|
||||
ifeq '$(DB_OPT)' 'YES'
|
||||
.PRECIOUS: %.db.raw
|
||||
%.db-stamp: %.db.raw $(INSTALL_DBDNAME)
|
||||
@echo "Optimizing database $@"
|
||||
$(DBST) $(INSTALL_DBDNAME) $< -d > $(DB_REALTARGET)
|
||||
@$(TOUCH) $@
|
||||
%.db-stamp: %.t.db.raw $(INSTALL_DBDNAME)
|
||||
@echo "Optimizing database $@"
|
||||
$(DBST) $(INSTALL_DBDNAME) $< -d > $(DB_REALTARGET)
|
||||
@$(TOUCH) $@
|
||||
else
|
||||
# NO optimization => move it and keep a stamp
|
||||
%.db-stamp: %.db.raw
|
||||
@$(MV) $< $(DB_REALTARGET)
|
||||
@$(TOUCH) $@
|
||||
@$(TOUCH) $<
|
||||
%.db-stamp: %.t.db.raw
|
||||
@$(MV) $< $(DB_REALTARGET)
|
||||
@$(TOUCH) $@
|
||||
@$(TOUCH) $<
|
||||
endif
|
||||
|
||||
%.t.db.raw: %.substitutions
|
||||
@echo "Inflating database from $<"
|
||||
@$(RM) $@
|
||||
$(MSI) -S $< $*.template > $@
|
||||
|
||||
##################################################### CapFast filter
|
||||
|
||||
%.edf: ../%.sch $(DEPSCHS)
|
||||
$(COMMON_DIR)/%.edf: ../%.sch $(DEPSCHS)
|
||||
@if [ ! -f cad.rc -a -r ../cad.rc ] ; then ln -s ../cad.rc ; fi
|
||||
$(SCH2EDIF) $(SCH2EDIF_SYSFLAGS) $(SCH2EDIF_FLAGS) $<
|
||||
|
||||
##################################################### Substitution files
|
||||
|
||||
$(INSTALL_DB)/%.substitutions: %.substitutions
|
||||
@echo "Installing $@"
|
||||
@$(INSTALL) -d -m 644 $(@F) $(@D)
|
||||
|
||||
%.substitutions: ../%.substitutions %.template
|
||||
@$(CP) $< $@
|
||||
# WARNING: CREATESUBSTITUTIONS script needs output dir on command line
|
||||
|
||||
ifdef CREATESUBSTITUTIONS
|
||||
%.substitutions:
|
||||
@$(CREATESUBSTITUTIONS) $*
|
||||
$(COMMON_DIR)/%.substitutions:
|
||||
@$(CREATESUBSTITUTIONS) $(COMMON_DIR)/$*
|
||||
endif
|
||||
|
||||
# Better make it PRECIOUS (to get around make bug)
|
||||
.PRECIOUS: %.substitutions %.template
|
||||
.PRECIOUS: $(DB:%.db=$(COMMON_DIR)/%.substitutions)
|
||||
|
||||
##################################################### Template databases
|
||||
##################################################### Template files
|
||||
|
||||
# Installed template files (dbLoadTemplate() on IOC side)
|
||||
$(INSTALL_DB)/%.template: %.template
|
||||
@echo "Installing $@"
|
||||
@$(INSTALL) -d -m 644 $(@F) $(@D)
|
||||
|
||||
%.template: ../%.template
|
||||
@$(CP) $< $@
|
||||
|
||||
%.template:
|
||||
@$(TOUCH) $@
|
||||
|
||||
%.template: %.edf
|
||||
$(COMMON_DIR)/%.template: %.edf
|
||||
$(E2DB) $(E2DB_SYSFLAGS) $(E2DB_FLAGS) -n $@.VAR $<
|
||||
@$(REPLACEVAR) < $@.VAR > $@
|
||||
@$(RM) $@.VAR
|
||||
|
||||
##################################################### Flat databases
|
||||
.PRECIOUS: $(DB:%.db=$(COMMON_DIR)/%.template)
|
||||
|
||||
%.db.raw: ../%.db
|
||||
$(CP) $< $@
|
||||
##################################################### INC files
|
||||
|
||||
%.db.raw: %.edf
|
||||
$(E2DB) $(E2DB_SYSFLAGS) $(E2DB_FLAGS) -n $@.VAR $<
|
||||
@$(REPLACEVAR) < $@.VAR > $@
|
||||
@$(RM) $@.VAR
|
||||
$(COMMON_DIR)/%Record.h: %Record.dbd
|
||||
@$(RM) $@
|
||||
$(DBTORECORDTYPEH) $(DBDFLAGS) $< $@
|
||||
|
||||
##################################################### DBD stuff
|
||||
$(COMMON_DIR)/menu%.h: menu%.dbd
|
||||
@$(RM) $@
|
||||
$(DBTOMENUH) $< $@
|
||||
|
||||
$(INSTALL_DBD)/%: %
|
||||
@echo "Installing $@"
|
||||
@$(INSTALL) -d -m 644 $< $(@D)
|
||||
##################################################### DBD files
|
||||
|
||||
$(INSTALL_DBD)/%: ../%
|
||||
@echo "Installing $@"
|
||||
@$(INSTALL) -d -m 644 $< $(@D)
|
||||
|
||||
$(INSTALL_DBD)/bpt%.dbd: ../bpt%.data
|
||||
$(RM) $@
|
||||
$(COMMON_DIR)/bpt%.dbd: bpt%.data
|
||||
@$(RM) $@
|
||||
$(MAKEBPT) $< $@
|
||||
|
||||
ifdef DBDEXPAND
|
||||
$(INSTALL_DBD)/$(DBDNAME): $(addprefix ../,$(DBDEXPAND))
|
||||
$(COMMON_DIR)/%.dbd: %Include.dbd
|
||||
@$(RM) $@$(DEP)
|
||||
@$(DBDDEPENDS_CMD)
|
||||
@echo "Expanding dbd"
|
||||
@$(RM) $@
|
||||
$(DBEXPAND) $(USR_DBDFLAGS) $^ > $@
|
||||
$(DBEXPAND) $(DBDFLAGS) $< > $@
|
||||
|
||||
$(INSTALL_DBD)/%: %
|
||||
@echo "Installing dbd file $@"
|
||||
@$(INSTALL) -d -m 644 $< $(@D)
|
||||
|
||||
.PRECIOUS: $(COMMON_DBDS)
|
||||
|
||||
##################################################### DB files
|
||||
|
||||
$(COMMON_DIR)/%.db$(RAW): %.edf
|
||||
$(E2DB) $(E2DB_SYSFLAGS) $(E2DB_FLAGS) -n $@.VAR $<
|
||||
@$(REPLACEVAR) < $@.VAR > $@
|
||||
@$(RM) $@.VAR
|
||||
|
||||
$(COMMON_DIR)/%.db$(RAW): %.substitutions %.template
|
||||
@$(RM) $@$(DEP)
|
||||
@$(DBDDEPENDS_CMD)
|
||||
@echo "Inflating database from $<"
|
||||
@$(RM) $@
|
||||
$(MSI) -S $^ > $@
|
||||
|
||||
# dbst based database optimization
|
||||
ifeq '$(DB_OPT)' 'YES'
|
||||
|
||||
$(COMMON_DIR)/%.db$(RAW): %.db
|
||||
$(CP) $< $@
|
||||
|
||||
$(COMMON_DIR)/%.db: $(COMMON_DIR)/%.db$(RAW)
|
||||
@echo "Optimizing database $@"
|
||||
$(DBST) . $< -d > $@
|
||||
|
||||
RAW=.raw
|
||||
|
||||
.PRECIOUS: $(DB:%=$(COMMON_DIR)/%$(RAW))
|
||||
endif
|
||||
|
||||
##################################################### Dependencies
|
||||
$(INSTALL_DB)/%: %
|
||||
@echo "Installing db file $@"
|
||||
@$(INSTALL) -d -m 644 $< $(@D)
|
||||
|
||||
DEPENDS: $(filter $(patsubst %.db, ../%.substitutions, $(DB)), $(wildcard ../*.substitutions))
|
||||
@echo "Making template database dependencies"
|
||||
@$(MAKEDBDEPENDS) $^
|
||||
.PRECIOUS: $(COMMON_DBS)
|
||||
|
||||
-include DEPENDS
|
||||
##################################################### register record,device,driver support
|
||||
|
||||
%_registerRecordDeviceDriver.cpp: %.dbd
|
||||
@$(RM) $@
|
||||
$(REGISTERRECORDDEVICEDRIVER) $< > $@
|
||||
|
||||
.PRECIOUS: %_registerRecordDeviceDriver.cpp
|
||||
|
||||
##################################################### END OF FILE
|
||||
|
||||
endif
|
||||
|
||||
18
configure/RULES.ioc
Normal file
18
configure/RULES.ioc
Normal file
@@ -0,0 +1,18 @@
|
||||
#RULES.ioc
|
||||
include $(EPICS_BASE)/configure/RULES_DIRS
|
||||
|
||||
build: buildInstall
|
||||
install: buildInstall
|
||||
|
||||
buildInstall: $(TARGETS)
|
||||
|
||||
cdCommands: $(wildcard $(TOP)/config/RELEASE*)
|
||||
ifeq ($(IOCS_APPL_TOP),)
|
||||
$(PERL) $(TOOLS)/convertRelease.pl -a $(ARCH) $@
|
||||
else
|
||||
$(PERL) $(TOOLS)/convertRelease.pl -a $(ARCH) -t $(IOCS_APPL_TOP) $@
|
||||
endif
|
||||
|
||||
clean:
|
||||
@$(RM) cdCommands
|
||||
|
||||
@@ -4,13 +4,14 @@
|
||||
|
||||
all: install
|
||||
|
||||
build install buildInstall: $(CHECK_RELEASE_$(CHECK_RELEASE))
|
||||
|
||||
rebuild: clean all
|
||||
|
||||
ACTIONS = inc
|
||||
ACTIONS += build
|
||||
ACTIONS += install
|
||||
ACTIONS += buildInstall
|
||||
ACTIONS += depends
|
||||
ACTIONS += browse
|
||||
|
||||
actionPart = $(word 1, $(subst $(DIVIDER), ,$@))
|
||||
@@ -21,22 +22,28 @@ actionArchTargets = $(foreach x, $(ACTIONS),\
|
||||
|
||||
buildDirs = $(addprefix O.,$(BUILD_ARCHS))
|
||||
|
||||
$(actionArchTargets) : $(buildDirs)
|
||||
$(actionArchTargets) : $(buildDirs) O.Common
|
||||
$(MAKE) -C O.$(archPart) -f ../Makefile TOP=$(TOP)/.. T_A=$(archPart) $(actionPart)
|
||||
|
||||
$(BUILD_ARCHS) : % : O.%
|
||||
$(BUILD_ARCHS) : % : O.% O.Common
|
||||
$(MAKE) -C O.$@ -f ../Makefile TOP=$(TOP)/.. T_A=$@
|
||||
|
||||
$(ACTIONS):%: $(foreach arch, $(BUILD_ARCHS), %$(DIVIDER)$(arch))
|
||||
|
||||
$(buildDirs) :
|
||||
$(buildDirs):
|
||||
$(PERL) $(TOOLS)/makeMakefile.pl $@ $(TOP)/..
|
||||
|
||||
O.Common:
|
||||
$(MKDIR) O.Common
|
||||
|
||||
checkRelease: $(wildcard $(TOP)/configure/RELEASE*)
|
||||
$(PERL) $(TOOLS)/convertRelease.pl -h $(EPICS_HOST_ARCH) -t $(TOP) $@
|
||||
|
||||
#
|
||||
# special clean rule
|
||||
#
|
||||
clean ::
|
||||
$(RMDIR) $(addprefix O.,$(BUILD_ARCHS))
|
||||
$(RMDIR) $(addprefix O.,$(BUILD_ARCHS)) O.Common
|
||||
|
||||
clean$(DIVIDER)% ::
|
||||
$(RMDIR) O.$*
|
||||
@@ -45,4 +52,5 @@ clean$(DIVIDER)% ::
|
||||
.PHONY : $(buildActionArchTargets)
|
||||
.PHONY : $(buildArchs)
|
||||
.PHONY : $(ACTIONS) clean all
|
||||
.PHONY : checkRelease
|
||||
|
||||
|
||||
@@ -28,7 +28,8 @@
|
||||
# vpath, of course, has the disadvantage that we need explicit rules
|
||||
# for scripts or similar os-specific filed which have _no_ suffix...
|
||||
|
||||
ifdef T_A
|
||||
ifndef BASE_RULES_BUILD
|
||||
BASE_RULES_BUILD=1
|
||||
|
||||
vpath %.c $(USR_VPATH) $(ALL_SRC_DIRS)
|
||||
vpath %.cc $(USR_VPATH) $(ALL_SRC_DIRS)
|
||||
@@ -36,32 +37,33 @@ vpath %.cpp $(USR_VPATH) $(ALL_SRC_DIRS)
|
||||
vpath %.C $(USR_VPATH) $(ALL_SRC_DIRS)
|
||||
vpath %.rc $(USR_VPATH) $(ALL_SRC_DIRS)
|
||||
vpath %.h $(USR_VPATH) $(ALL_SRC_DIRS)
|
||||
vpath %.skel.static $(USR_VPATH) $(GENERIC_SRC_DIRS)
|
||||
vpath %.skel.static $(USR_VPATH) $(ALL_SRC_DIRS)
|
||||
vpath %.y $(USR_VPATH) $(ALL_SRC_DIRS)
|
||||
vpath %.l $(USR_VPATH) $(ALL_SRC_DIRS)
|
||||
|
||||
#---------------------------------------------------------------
|
||||
|
||||
include $(CONFIG)/CONFIG_ADDONS
|
||||
|
||||
#---------------------------------------------------------------
|
||||
# Set PROD, OBJS, LIBRARY_HOST, and LIBRARY_IOC
|
||||
# Set PROD, TESTPROD, OBJS, and LIBRARY
|
||||
|
||||
ifeq ($(findstring Host,$(VALID_BUILDS)),Host)
|
||||
LIBRARY_HOST += $(LIBRARY)
|
||||
LIBRARY += $(LIBRARY_HOST)
|
||||
OBJS += $(OBJS_HOST)
|
||||
else
|
||||
# PROD and TESTPROD not built for ioc only builds
|
||||
PROD = $(PROD_$(OS_CLASS))
|
||||
TESTPROD = $(TESTPROD_$(OS_CLASS))
|
||||
LIBRARY_HOST =
|
||||
LIBRARY_IOC += $(LIBRARY)
|
||||
PROD += $(PROD_HOST)
|
||||
SCRIPTS += $(SCRIPTS_HOST)
|
||||
TESTPROD += $(TESTPROD_HOST)
|
||||
endif
|
||||
|
||||
|
||||
ifeq ($(findstring Ioc,$(VALID_BUILDS)),Ioc)
|
||||
LIBRARY += $(LIBRARY_IOC)
|
||||
OBJS += $(OBJS_IOC)
|
||||
else
|
||||
LIBRARY_IOC =
|
||||
PROD += $(PROD_IOC)
|
||||
SCRIPTS += $(SCRIPTS_IOC)
|
||||
TESTPROD += $(TESTPROD_IOC)
|
||||
endif
|
||||
|
||||
#---------------------------------------------------------------
|
||||
|
||||
ifdef TEMPLATES_DIR
|
||||
@@ -75,57 +77,70 @@ endif
|
||||
|
||||
all: install
|
||||
|
||||
-include $(CONFIG)/RULES.Db
|
||||
|
||||
ifeq ($(HDEPENDS),YES)
|
||||
ifneq (,$(strip $(HDEPENDS_FILES)))
|
||||
-include $(HDEPENDS_FILES)
|
||||
endif
|
||||
endif
|
||||
|
||||
#---------------------------------------------------------------
|
||||
# Create included Makefile for prod,testprod, and library targets
|
||||
|
||||
ifneq (,$(strip $(PROD) $(TESTPROD) $(LIBRARY_IOC) $(LIBRARY_HOST)))
|
||||
ifneq (,$(strip $(PROD) $(TESTPROD) $(LIBRARY)))
|
||||
|
||||
MakefileInclude: ../Makefile
|
||||
@$(RM) $@
|
||||
@$(PERL) $(TOOLS)/makeMakefileInclude.pl $(PROD) $(TESTPROD) $(LIBRARY_IOC) $(LIBRARY_HOST) $@
|
||||
@$(PERL) $(TOOLS)/makeMakefileInclude.pl $(PROD) $(TESTPROD) $(LIBRARY) $@
|
||||
|
||||
-include MakefileInclude
|
||||
|
||||
endif # PROD, TESTPROD, LIBRARY_IOC or LIBRARY_HOST defined
|
||||
endif # PROD, TESTPROD, or LIBRARY defined
|
||||
|
||||
#---------------------------------------------------------------
|
||||
# Products and Object libraries
|
||||
#
|
||||
PRODTARGETS += $(PRODNAME) $(MUNCHNAME) $(CTDT_SRCS) $(CTDT_OBJS) $(NMS)
|
||||
|
||||
#---------------------------------------------------------------
|
||||
# Libraries
|
||||
#
|
||||
|
||||
LIBTARGETS += $(LIBNAME) $(MUNCHNAME)
|
||||
ifneq (,$(strip $(LIBTARGETS)))
|
||||
LIBTARGETS += $(INSTALL_LIBS) $(INSTALL_MUNCHS)
|
||||
ifeq ($(strip $(SHARED_LIBRARIES)),YES)
|
||||
LIBTARGETS += $(LIBNAME)
|
||||
LIBTARGETS += $(INSTALL_LIBS)
|
||||
LIBTARGETS += $(SHRLIBNAME) $(INSTALL_SHRLIBS) $(INSTALL_DLL_LINK_LIBS)
|
||||
endif # SHARED_LIBRARIES=YES
|
||||
endif # LIBTARGETS
|
||||
|
||||
#---------------------------------------------------------------
|
||||
ifneq ($(CONFIG),$(TOP)/configure)
|
||||
-include $(TOP)/configure/RULES_BUILD
|
||||
endif
|
||||
-include $(TOP)/configure/O.$(T_A)/RULES_INCLUDE
|
||||
#---------------------------------------------------------------
|
||||
|
||||
# Main targets
|
||||
|
||||
install: buildInstall
|
||||
|
||||
buildInstall : build
|
||||
inc : $(COMMON_INC) $(INSTALL_INC)
|
||||
|
||||
build : inc
|
||||
|
||||
buildInstall : build
|
||||
|
||||
install: buildInstall
|
||||
|
||||
rebuild: clean install
|
||||
|
||||
inc: $(DIRECTORY_TARGETS) $(INSTALL_INC) $(INSTALL_INCREC)
|
||||
|
||||
build: $(OBJSNAME) $(LIBTARGETS) $(PRODNAME) $(TESTPRODNAME) \
|
||||
build: $(OBJSNAME) $(LIBTARGETS) $(PRODTARGETS) $(TESTPRODNAME) \
|
||||
$(TARGETS)
|
||||
|
||||
buildInstall : \
|
||||
$(INSTALL_SCRIPTS) $(INSTALL_PROD) \
|
||||
$(INSTALL_SCRIPTS) $(INSTALL_PROD) $(INSTALL_MUNCHS) \
|
||||
$(INSTALL_TCLLIBS) $(INSTALL_TCLINDEX) \
|
||||
$(INSTALL_OBJS) \
|
||||
$(INSTALL_DOCS) \
|
||||
$(INSTALL_HTMLS) \
|
||||
$(INSTALL_TEMPLATE) \
|
||||
$(INSTALL_CONFIGS) \
|
||||
$(INSTALL_DBS) $(INSTALL_BPTS) \
|
||||
$(INSTALL_DBDNAME)
|
||||
$(INSTALL_CONFIGS)
|
||||
|
||||
ifdef BIN_INSTALLS
|
||||
buildInstall : binInstalls
|
||||
@@ -133,20 +148,17 @@ endif
|
||||
|
||||
clean::
|
||||
@echo "Cleaning"
|
||||
@$(RM) *.i *$(OBJ) *.a $(PRODNAME) $(TESTPRODNAME) $(LIBNAME) $(SHRLIBNAME)\
|
||||
$(INC) *$(RES) $(TARGETS) $(DBDINSTALL) \
|
||||
*.out MakefileInclude
|
||||
|
||||
ifdef MUNCHNAME
|
||||
@$(RM) $(MUNCHNAME) ctdt.c ctdt.o nm.out
|
||||
endif
|
||||
@$(RM) *.i *$(OBJ) *.a $(TESTPRODNAME) $(LIBNAME) $(SHRLIBNAME)\
|
||||
$(INC) *$(RES) $(TARGETS) \
|
||||
*.out MakefileInclude \
|
||||
$(COMMON_INC) $(HDEPENDS_FILES) $(PRODTARGETS)
|
||||
ifdef BAF
|
||||
@$(RM) $(PROD_BAF) $(LIB_BAF_IOC) $(LIB_BAF_HOST) *$(BOF)
|
||||
@$(RM) $(PROD_BAF) $(LIB_BAF) *$(BOF)
|
||||
endif
|
||||
|
||||
# WIN95/NT source browser
|
||||
#ifdef BAF
|
||||
browse: $(LIB_BAF_IOC) $(LIB_BAF_HOST) $(PROD_BAF)
|
||||
browse: $(LIB_BAF) $(PROD_BAF)
|
||||
#endif
|
||||
|
||||
$(DIRECTORY_TARGETS) :
|
||||
@@ -168,30 +180,52 @@ $(DIRECTORY_TARGETS) :
|
||||
# The order of the following rules is
|
||||
# VERY IMPORTANT !!!!
|
||||
|
||||
depends: buildInstall $(SRC_FILES)
|
||||
@$(RM) DEPENDS
|
||||
@touch DEPENDS
|
||||
ifneq (,$(strip $(SRC_FILES)))
|
||||
$(DEPENDS_RULE)
|
||||
endif
|
||||
|
||||
$(TESTPRODNAME) $(PRODNAME):%$(EXE): $(PROD_OBJS) $(PROD_RESS) $(PROD_DEPLIBS)
|
||||
$(TESTPRODNAME) $(PRODNAME):%$(EXE): $(PRODUCT_OBJS) $(PROD_RESS) $(PROD_DEPLIBS)
|
||||
@$(RM) $@
|
||||
$(LINK.cpp)
|
||||
$(PURIFY_$(OS_CLASS)) $(LINK.cpp)
|
||||
|
||||
# object libs for R3.13 vxWorks compatibility only
|
||||
$(OBJLIBNAME):%$(OBJ): $(OBJLIB_LD_OBJS)
|
||||
@$(RM) $@
|
||||
$(OBJLIB_LINK.cpp)
|
||||
|
||||
%_ctdt$(OBJ) : %_ctdt.c
|
||||
@$(RM) $@
|
||||
$(COMPILE.c) -traditional $<
|
||||
|
||||
%$(OBJ): %.c
|
||||
ifeq ($(HDEPENDS),YES)
|
||||
@$(RM) $*$(DEP)
|
||||
@$(HDEPENDS_CMD.c)
|
||||
@$(HDEPENDS_TARGETS_CMD) $*$(DEP)
|
||||
endif
|
||||
@$(RM) $@
|
||||
$(COMPILE.c) $<
|
||||
|
||||
%$(OBJ): %.cc
|
||||
ifeq ($(HDEPENDS),YES)
|
||||
@$(RM) $*$(DEP)
|
||||
@$(HDEPENDS_CMD.cpp)
|
||||
@$(HDEPENDS_TARGETS_CMD) $*$(DEP)
|
||||
endif
|
||||
@$(RM) $@
|
||||
$(COMPILE.cpp) $<
|
||||
|
||||
%$(OBJ): %.cpp
|
||||
ifeq ($(HDEPENDS),YES)
|
||||
@$(RM) $*$(DEP)
|
||||
@$(HDEPENDS_CMD.cpp)
|
||||
@$(HDEPENDS_TARGETS_CMD) $*$(DEP)
|
||||
endif
|
||||
@$(RM) $@
|
||||
$(COMPILE.cpp) $<
|
||||
|
||||
%$(OBJ): %.C
|
||||
ifeq ($(HDEPENDS),YES)
|
||||
@$(RM) $*$(DEP)
|
||||
@$(HDEPENDS_CMD.cpp)
|
||||
@$(HDEPENDS_TARGETS_CMD) $*$(DEP)
|
||||
endif
|
||||
@$(RM) $@
|
||||
$(COMPILE.cpp) $<
|
||||
|
||||
@@ -210,63 +244,26 @@ $(TESTPRODNAME) $(PRODNAME):%$(EXE): $(PROD_OBJS) $(PROD_RESS) $(PROD_DEPLIBS)
|
||||
# rename the y.tab.h file only if we
|
||||
# are creating it
|
||||
#
|
||||
%.h %.c: ../%.y
|
||||
$(RM) $*.c y.tab.c
|
||||
ifeq ($(findstring -d, $(YACCOPT)),-d)
|
||||
%.h %.c: %.y
|
||||
$(RM) $*.c y.tab.c
|
||||
$(RM) $*.h y.tab.h
|
||||
endif
|
||||
$(YACC) $(YACCOPT) $<
|
||||
$(MV) y.tab.c $*.c
|
||||
ifeq ($(findstring -d, $(YACCOPT)),-d)
|
||||
$(MV) y.tab.h $*.h
|
||||
else
|
||||
%.c: %.y
|
||||
$(RM) $*.c y.tab.c
|
||||
$(YACC) $(YACCOPT) $<
|
||||
$(MV) y.tab.c $*.c
|
||||
endif
|
||||
|
||||
%.c: ../%.l
|
||||
%.c: %.l
|
||||
@$(RM) lex.yy.c
|
||||
$(LEX) $(LEXOPT) $<
|
||||
@$(RM) $@
|
||||
$(MV) lex.yy.c $@
|
||||
|
||||
#state notation language rule
|
||||
%.c: ../%.st
|
||||
@echo "preprocessing $*.st"
|
||||
@$(RM) $*.i
|
||||
$(CPP) $(CPPSNCFLAGS) $< > $*.i
|
||||
@echo "converting $*.i"
|
||||
@$(RM) $@
|
||||
$(SNC) $(TARGET_SNCFLAGS) $(SNCFLAGS) $*.i -o $@
|
||||
|
||||
%.c: %.stt
|
||||
@echo "converting $<
|
||||
ln -s $< $*.st
|
||||
$(SNC) $(TARGET_SNCFLAGS) $(SNCFLAGS) $*.st -o $@
|
||||
@$(RM) $*.st
|
||||
|
||||
%.cpp: ../%.st
|
||||
@echo "preprocessing $*.st"
|
||||
@$(RM) $*.i
|
||||
$(CPP) $(CPPSNCFLAGS) $< > $*.i
|
||||
@echo "converting $*.i"
|
||||
@$(RM) $@
|
||||
$(SNC) $(TARGET_SNCFLAGS) $(SNCFLAGS) $*.i -o $@
|
||||
|
||||
%.cpp: %.stt
|
||||
@echo "converting $<
|
||||
ln -s $< $*.st
|
||||
$(SNC) $(TARGET_SNCFLAGS) $(SNCFLAGS) $*.st -o $@
|
||||
@$(RM) $*.st
|
||||
|
||||
# Capfast Rules:
|
||||
%.db: %.edf
|
||||
$(E2DB) $(E2DB_SYSFLAGS) $(E2DB_FLAGS) $<
|
||||
|
||||
%.db: ../%.edf
|
||||
$(E2DB) $(E2DB_SYSFLAGS) $(E2DB_FLAGS) $<
|
||||
|
||||
%.edf: ../%.sch
|
||||
@if [ ! -f cad.rc -a -r ../cad.rc ] ; then ln -s ../cad.rc ; fi
|
||||
$(SCH2EDIF) $(SCH2EDIF_SYSFLAGS) $(SCH2EDIF_FLAGS) $<
|
||||
|
||||
# Adl2dl rule
|
||||
%.dl : ../%.adl
|
||||
-$(ADL2DL) $< $@
|
||||
@@ -281,57 +278,10 @@ endif
|
||||
$(MANGEN) -s $<
|
||||
$(MV) $(<F).nr $(<F).1
|
||||
|
||||
$(INSTALL_DBD)/%: %
|
||||
@echo "Installing $@"
|
||||
@$(INSTALL) -d -m 644 $< $(INSTALL_DBD)
|
||||
|
||||
$(INSTALL_DBD)/%: ../%
|
||||
@echo "Installing $@"
|
||||
@$(INSTALL) -d -m 644 $< $(INSTALL_DBD)
|
||||
|
||||
$(INSTALL_INCLUDE)/%Record.h: %Record.dbd
|
||||
@$(RM) $@
|
||||
$(EPICS_BASE_HOST_BIN)/dbToRecordtypeH$(HOSTEXE) \
|
||||
$(DBDFLAGS) $< $@
|
||||
|
||||
$(INSTALL_INCLUDE)/%Record.h: ../%Record.dbd
|
||||
@$(RM) $@
|
||||
$(EPICS_BASE_HOST_BIN)/dbToRecordtypeH$(HOSTEXE) \
|
||||
$(DBDFLAGS) $< $@
|
||||
|
||||
$(INSTALL_INCLUDE)/menu%.h: menu%.dbd
|
||||
@$(RM) $@
|
||||
$(EPICS_BASE_HOST_BIN)/dbToMenuH$(HOSTEXE) $< $@
|
||||
|
||||
$(INSTALL_INCLUDE)/menu%.h: ../menu%.dbd
|
||||
@$(RM) $@
|
||||
$(EPICS_BASE_HOST_BIN)/dbToMenuH$(HOSTEXE) $< $@
|
||||
|
||||
$(INSTALL_DBD)/bpt%.dbd: bpt%.data
|
||||
@$(RM) $@
|
||||
$(EPICS_BASE_HOST_BIN)/makeBpt$(HOSTEXE) $< $@
|
||||
|
||||
$(INSTALL_DBD)/bpt%.dbd: ../bpt%.data
|
||||
@$(RM) $@
|
||||
$(EPICS_BASE_HOST_BIN)/makeBpt$(HOSTEXE) $< $@
|
||||
|
||||
ifdef DBDEXPAND
|
||||
$(INSTALL_DBD)/$(DBDNAME): $(addprefix ../,$(DBDEXPAND))
|
||||
@echo Expanding dbd
|
||||
@echo $^
|
||||
@$(RM) $@
|
||||
$(EPICS_BASE_HOST_BIN)/dbExpand$(HOSTEXE) $(DBDFLAGS) $(addprefix ../,$(DBDEXPAND)) > $@
|
||||
endif
|
||||
|
||||
# WIN95/NT source browser
|
||||
ifdef BAF
|
||||
|
||||
$(LIB_BAF_HOST): $(addsuffix $(BOF),$(basename $(LIBRARY_LD_OBJS)))
|
||||
@echo "Building source browser archive $@"
|
||||
@$(RM) $@
|
||||
$(BAFCMD) $^
|
||||
|
||||
$(LIB_BAF_IOC): $(addsuffix $(BOF),$(basename $(LIBRARY_LD_OBJS)))
|
||||
$(LIB_BAF): $(addsuffix $(BOF),$(basename $(LIBRARY_LD_OBJS)))
|
||||
@echo "Building source browser archive $@"
|
||||
@$(RM) $@
|
||||
$(BAFCMD) $^
|
||||
@@ -357,13 +307,29 @@ $(SHRLIBNAME):$(LIB_PREFIX)%$(SHRLIB_SUFFIX): $(LIBRARY_OBJS) $(LIBRARY_RESS)
|
||||
$(LINK.shrlib)
|
||||
|
||||
# C++ munching for VxWorks
|
||||
%.nm : %$(EXE)
|
||||
@$(RM) $@
|
||||
$(NM) $< > $@
|
||||
|
||||
$(MUNCHNAME):%.munch : %.o
|
||||
@ $(RM) ctct.o ctdt.c nm.out
|
||||
$(NM) $< > nm.out
|
||||
perl $(TOOLS)/munch.pl < nm.out > ctdt.c
|
||||
$(COMPILE.c) -traditional ctdt.c
|
||||
$(GCC_LD) -o $@ $(LDFLAGS) $< ctdt.o
|
||||
%.nm : %$(OBJ)
|
||||
@$(RM) $@
|
||||
$(NM) $< > $@
|
||||
|
||||
%_ctdt.c : %.nm
|
||||
@$(RM) $@
|
||||
$(PERL) $(TOOLS)/munch.pl < $< > $@
|
||||
|
||||
$(MUNCHNAME):%.munch : %_ctdt$(OBJ) %$(EXE)
|
||||
@$(RM) $@
|
||||
$(LDCMD)
|
||||
|
||||
$(OBJLIB_MUNCHNAME):%.munch : %_ctdt$(OBJ) %$(OBJ)
|
||||
@$(RM) $@
|
||||
$(LDCMD)
|
||||
|
||||
# Ext, app and module rules
|
||||
RULES_INCLUDE CONFIG_APP_INCLUDE: $(wildcard $(TOP)/configure/RELEASE*)
|
||||
$(PERL) $(TOOLS)/convertRelease.pl -h $(EPICS_HOST_ARCH) $@
|
||||
|
||||
binInstalls: $(BIN_INSTALLS)
|
||||
@echo "Installing $(^F)"
|
||||
@@ -418,14 +384,18 @@ $(INSTALL_CONFIG)/%: ../%
|
||||
@echo "Installing config file $@"
|
||||
@$(INSTALL) -d -m 644 $< $(@D)
|
||||
|
||||
$(INSTALL_INCLUDE)/os/$(OS_CLASS)/% : %
|
||||
@echo "Installing os dependent include file $@"
|
||||
$(INSTALL_INCLUDE)/% : $(COMMON_DIR)/%
|
||||
@echo "Installing generated generic include file $@"
|
||||
@$(INSTALL) -d -m 644 $< $(@D)
|
||||
|
||||
$(INSTALL_INCLUDE)/% : %
|
||||
@echo "Installing generic include file $@"
|
||||
@$(INSTALL) -d -m 644 $< $(@D)
|
||||
|
||||
$(INSTALL_INCLUDE)/os/$(OS_CLASS)/% : %
|
||||
@echo "Installing os dependent include file $@"
|
||||
@$(INSTALL) -d -m 644 $< $(@D)
|
||||
|
||||
$(INSTALL_DOC)/%: %
|
||||
@echo "Installing doc $@"
|
||||
@$(INSTALL) -d -m 644 $< $(INSTALL_DOC)
|
||||
@@ -442,28 +412,20 @@ $(INSTALL_HTML)/$(HTMLS_DIR)/%: ../%
|
||||
@echo "Installing html $@"
|
||||
@$(INSTALL) -d -m 644 $< $(@D)
|
||||
|
||||
$(INSTALL_TEMPLATES)/$(TEMPLATES_DIR)/%: ../%
|
||||
$(INSTALL_TEMPLATES_SUBDIR)/%: ../%
|
||||
@echo "Installing $@"
|
||||
@$(INSTALL) -d -m 644 $< $(@D)
|
||||
|
||||
$(INSTALL_TEMPLATES)/$(TEMPLATES_DIR)/%: %
|
||||
$(INSTALL_TEMPLATES_SUBDIR)/%: %
|
||||
@echo "Installing $@"
|
||||
@$(INSTALL) -d -m 644 $< $(@D)
|
||||
|
||||
.PRECIOUS: %.o %.c
|
||||
.PRECIOUS: %.i %.o %.c %.nm %.cpp %.cc
|
||||
.PRECIOUS: $(COMMON_INC)
|
||||
|
||||
-include DEPENDS
|
||||
|
||||
.PHONY: all inc depends build install clean rebuild buildInstall binInstalls \
|
||||
iocBinInstalls
|
||||
|
||||
ifneq (,$(wildcard ../base.dbd))
|
||||
$(INSTALL_DBDNAME): ../base.dbd $(RECTYPES:%.h=../%.dbd)
|
||||
else
|
||||
$(INSTALL_DBDNAME): $(RECTYPES:%.h=../%.dbd)
|
||||
endif
|
||||
|
||||
endif # T_A defined
|
||||
.PHONY: all inc build install clean rebuild buildInstall binInstalls
|
||||
|
||||
endif # BASE_RULES_BUILD
|
||||
# EOF RULES_BUILD
|
||||
|
||||
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
|
||||
|
||||
ARCHS += $(BUILD_ARCHS)
|
||||
ACTIONS += inc build install buildInstall depends clean
|
||||
ACTIONS += inc build install buildInstall clean
|
||||
|
||||
dirPart = $(word 1, $(subst $(DIVIDER), ,$@))
|
||||
actionArchPart = $(join $(word 2, $(subst $(DIVIDER), ,$@)), \
|
||||
@@ -24,7 +24,7 @@ actionArchTargets = $(foreach action, $(ACTIONS),\
|
||||
$(foreach arch, $(ARCHS), \
|
||||
$(action)$(DIVIDER)$(arch)))
|
||||
|
||||
all install : buildInstall
|
||||
all : buildInstall
|
||||
|
||||
rebuild : clean all
|
||||
|
||||
|
||||
@@ -23,7 +23,8 @@ uninstall: $(addprefix uninstall$(DIVIDER),$(BUILD_ARCHS))
|
||||
|
||||
uninstallDirs:
|
||||
@$(RMDIR) $(INSTALL_DBD) $(INSTALL_INCLUDE) $(INSTALL_DOC)\
|
||||
$(INSTALL_HTML) $(INSTALL_JAVA) $(INSTALL_TEMPLATES)
|
||||
$(INSTALL_HTML) $(INSTALL_JAVA) $(INSTALL_TEMPLATES) \
|
||||
$(INSTALL_DB)
|
||||
|
||||
tar:
|
||||
@DIRNAME=$(notdir $(shell pwd)); \
|
||||
@@ -67,14 +68,12 @@ help:
|
||||
@echo " in all except the O.<arch> level Makefile"
|
||||
@echo " rebuild - Same as clean install"
|
||||
@echo " inc - Installs header files"
|
||||
@echo " depends - Generates include header file dependencies"
|
||||
@echo " build - Builds all targets"
|
||||
@echo "\"Partial\" build targets supported by Makefiles:"
|
||||
@echo " inc.<arch> - Installs <arch> only header files."
|
||||
@echo " install.<arch> - Builds and installs <arch> only."
|
||||
@echo " clean.<arch> - Cleans <arch> binaries in O.<arch> dirs only."
|
||||
@echo " build.<arch> - Builds <arch> only."
|
||||
@echo " depends.<arch> - Generates <arch> dependencies only."
|
||||
@echo "Targets supported by top level Makefile:"
|
||||
@echo " uninstall - Cleans directories created by the install."
|
||||
@echo " distclean - Same as clean uninstall."
|
||||
|
||||
@@ -8,35 +8,35 @@
|
||||
TOP = ../../..
|
||||
include $(TOP)/configure/CONFIG
|
||||
|
||||
# Add-on CFLAGS that are needed by this Makefile.
|
||||
# Add-on CPPFLAGS that are needed by this Makefile.
|
||||
# (If possible, all system specific flags should be
|
||||
# defined in configure/os/CONFIG.<host>.<target>
|
||||
#
|
||||
# These CFLAGS rules also apply to these Makefile-variables:
|
||||
# These CPPFLAGS rules also apply to these Makefile-variables:
|
||||
# CPPFLAGS C preprocessor flags
|
||||
# CFLAGS C flags
|
||||
# CXXFLAGS C++ flags
|
||||
# LDFLAGS link flags
|
||||
#
|
||||
# This is used on all systems:
|
||||
USR_CFLAGS = -DVAR=value -Ddefine_for_all_systems
|
||||
# This is added to the above, but only for OS_CLASS=BSD:
|
||||
USR_CFLAGS_BSD = -DVERSION='Berkeley enhanced'
|
||||
USR_CPPFLAGS = -DVAR=value -Ddefine_for_all_systems
|
||||
# ..only for WIN32:
|
||||
USR_CFLAGS_WIN32 = -DVERSION='WIN32 port'
|
||||
USR_CPPFLAGS_WIN32 = -DVERSION='WIN32 port'
|
||||
#
|
||||
# -nil- is special:
|
||||
# if USR_CFLAGS_SYSV was undefined or empty, .._DEFAULT would have
|
||||
# if USR_CPPFLAGS_WIN32 was undefined or empty, .._DEFAULT would have
|
||||
# been used.
|
||||
# To indicate
|
||||
# "yes, there is a special USR_CFLAGS for SYSV, but it's empty"
|
||||
# "yes, there is a special USR_CPPFLAGS for WIN32, but it's empty"
|
||||
# you have to set it to -nil-:
|
||||
USR_CFLAGS_SYSV = -nil-
|
||||
USR_CPPFLAGS_WIN32 = -nil-
|
||||
# .. for all other arch classes:
|
||||
USR_CFLAGS_DEFAULT = -DVERSION='generic Unix'
|
||||
USR_CPPFLAGS_DEFAULT = -DVERSION='generic Unix'
|
||||
|
||||
# CFLAGS that are only used to compile a_file.c or a_file.cpp:
|
||||
# CPPFLAGS that are only used to compile a_file.c or a_file.cpp:
|
||||
#
|
||||
a_file_CFLAGS = -DIN_A_FILE
|
||||
a_file_CFLAGS_WIN32 = -DVERSION='WIN32 port'
|
||||
a_file_CPPFLAGS = -DIN_A_FILE
|
||||
a_file_CPPFLAGS_WIN32 = -DVERSION='WIN32 port'
|
||||
|
||||
# ---------------------------------------------------------
|
||||
# general rule for all .c .cpp .h .hh files and scripts:
|
||||
@@ -58,7 +58,7 @@ a_file_CFLAGS_WIN32 = -DVERSION='WIN32 port'
|
||||
#
|
||||
INC_DEFAULT = for_all_but_WIN32_or_hp700.h
|
||||
INC_WIN32 = only_for_WIN32.h
|
||||
INC_hp700 = -nil- # hp700 uses no special include
|
||||
INC_hpux = -nil- # hpux uses no special include
|
||||
INC = file.h
|
||||
|
||||
# --------------------------------------------------------------------
|
||||
@@ -85,17 +85,17 @@ INC = file.h
|
||||
SRCS = file_for_lib.c another_file.cpp
|
||||
SRCS_DEFAULT = posix.c
|
||||
SRCS_WIN32 = win32_special.c
|
||||
SRCS_BSD = -nil-
|
||||
SRCS_Linux = -nil-
|
||||
#
|
||||
<libname>_SRCS = file_for_lib.c another_file.cpp
|
||||
<libname>_SRCS_DEFAULT = posix.c
|
||||
<libname>_SRCS_WIN32 = win32_special.c
|
||||
<libname>_SRCS_BSD = -nil-
|
||||
libname_SRCS = file_for_lib.c another_file.cpp
|
||||
libname_SRCS_DEFAULT = posix.c
|
||||
libname_SRCS_WIN32 = win32_special.c
|
||||
libname_SRCS_Linux = -nil-
|
||||
#
|
||||
LIBSRCS = file_for_lib.c another_file.cpp
|
||||
LIBSRCS_DEFAULT = posix.c
|
||||
LIBSRCS_WIN32 = win32_special.c
|
||||
LIBSRCS_BSD = -nil-
|
||||
LIBSRCS_Linux = -nil-
|
||||
|
||||
# Library to build:
|
||||
# lib$(LIBRARY).a or ..dll/..exp/..lib
|
||||
@@ -167,8 +167,8 @@ foolib_DIR = $(FOO_LIB)
|
||||
PROD = prod
|
||||
PROD_DEFAULT = product_for_rest
|
||||
PROD_WIN32 = product_only_for_WIN32
|
||||
PROD_BSD = product_only_for_BSD
|
||||
PROD_SYSV = product_only_for_SYSV
|
||||
PROD_Linux = product_only_for_Linux
|
||||
PROD_solaris = product_only_for_solaris
|
||||
|
||||
# Product version
|
||||
PROD_VERSION =
|
||||
@@ -182,7 +182,7 @@ PROD_VERSION =
|
||||
#
|
||||
SCRIPTS_DEFAULT = script_for_rest
|
||||
SCRIPTS_WIN32 = script_only_for_WIN32
|
||||
SCRIPTS_BSD = script_only_for_BSD
|
||||
SCRIPTS_Linux = script_only_for_Linux
|
||||
SCRIPTS = script
|
||||
|
||||
# if you want to build products locally without installing:
|
||||
|
||||
@@ -3,58 +3,71 @@
|
||||
#
|
||||
# $Id$
|
||||
# Author: W. Eric Norum
|
||||
# Canadian Light Source
|
||||
# eric@cls.usask.ca
|
||||
# University of Saskatchewan
|
||||
# eric.norum@usask.ca
|
||||
#
|
||||
# Contains definitions common to all RTEMS targets
|
||||
#
|
||||
# This file is maintained by the build community.
|
||||
# Sites may override definitions in os/CONFIG_SITE.Common.RTEMS
|
||||
#-------------------------------------------------------
|
||||
#
|
||||
|
||||
#
|
||||
#-------------------------------------------------------
|
||||
# Where to find RTEMS
|
||||
RTEMS_BASE=/opt/rtems
|
||||
|
||||
#-------------------------------------------------------
|
||||
# RTEMS tools are similar to UNIX tools
|
||||
#
|
||||
-include $(CONFIG)/os/CONFIG.Common.UnixCommon
|
||||
-include $(CONFIG)/os/CONFIG.Common.UnixCommon
|
||||
|
||||
###############################################################################
|
||||
# #
|
||||
# RTEMS-specific overrides of common UNIX definitions #
|
||||
# #
|
||||
###############################################################################
|
||||
#-------------------------------------------------------
|
||||
# Pick up the RTEMS tool/path definitions from the RTEMS BSP directory.
|
||||
include $(RTEMS_BASE)/$(RTEMS_TARGET_CPU)-rtems/$(subst RTEMS-,,$(T_A))/Makefile.inc
|
||||
include $(RTEMS_CUSTOM)
|
||||
include $(CONFIG.CC)
|
||||
|
||||
#
|
||||
#-------------------------------------------------------
|
||||
# RTEMS cross-development tools
|
||||
CC = $(RTEMS_BASE)/bin/$(CC_FOR_TARGET) $(GCCSPECS) -fasm
|
||||
CCC = $(CC)
|
||||
CPP = $(RTEMS_BASE)/bin/$(CC_FOR_TARGET) -x c -E
|
||||
AR = $(RTEMS_BASE)/bin/$(AR_FOR_TARGET)
|
||||
LD = $(RTEMS_BASE)/bin/$(LD_FOR_TARGET) -r
|
||||
RTEMS_LDFLAGS := $(LDFLAGS)
|
||||
LINK.cpp = $(CCC) -o $@ $(RTEMS_LDFLAGS) $(LDFLAGS) $(LINK_OBJS) $(PROD_LD_OBJS) $(PROD_LD_RESS) $(LDLIBS)
|
||||
RANLIB := $(RTEMS_BASE)/bin/$(RANLIB)
|
||||
|
||||
#-------------------------------------------------------
|
||||
# Build types
|
||||
#
|
||||
VALID_BUILDS = Ioc
|
||||
|
||||
#
|
||||
# Pick up the RTEMS tool/path definitions from the RTEMS BSP directory.
|
||||
#
|
||||
ifneq "$(T_A)" ""
|
||||
RTEMS_MAKEFILE_PATH := $(dir $(RTEMS_MAKEFILE_PATH))/$(subst RTEMS-,,$(T_A))
|
||||
-include $(RTEMS_MAKEFILE_PATH)/Makefile.inc
|
||||
-include $(RTEMS_CUSTOM)
|
||||
-include $(CONFIG.CC)
|
||||
endif
|
||||
|
||||
#
|
||||
# Override RTEMS optimization flags
|
||||
#
|
||||
CFLAGS_OPTIMIZE =
|
||||
|
||||
#
|
||||
#--------------------------------------------------
|
||||
# The RTEMS Makefiles redefine several macros, so we have to go
|
||||
# through the following contortions to get the EPICS flags back.
|
||||
#
|
||||
CFLAGS += $(CONFORM_CFLAGS) $(OPT_CFLAGS) $(DEBUG_CFLAGS) $(WARN_CFLAGS)\
|
||||
$(TARGET_CFLAGS) $(USR_CFLAGS) $(ARCH_DEP_CFLAGS) $(CODE_CFLAGS)\
|
||||
$(STATIC_CFLAGS) $(OP_SYS_CFLAGS)
|
||||
CFLAGS = $(CONFORM_CFLAGS) $(CROSS_CFLAGS) $(OPT_CFLAGS) $(DEBUG_CFLAGS)\
|
||||
$(WARN_CFLAGS) $(TARGET_CFLAGS) $(USR_CFLAGS) $(ARCH_DEP_CFLAGS)\
|
||||
$(CODE_CFLAGS) $(STATIC_CFLAGS) $(OP_SYS_CFLAGS)
|
||||
|
||||
CXXFLAGS +=$(CONFORM_CXXFLAGS) $(OPT_CXXFLAGS) $(DEBUG_CXXFLAGS) $(WARN_CXXFLAGS)\
|
||||
$(TARGET_CXXFLAGS) $(USR_CXXFLAGS) $(ARCH_DEP_CXXFLAGS) $(CODE_CXXFLAGS)\
|
||||
$(STATIC_CXXCFLAGS) $(OP_SYS_CFLAGS) $(TEMPL_INST_CXXFLAG)
|
||||
CXXFLAGS = $(CONFORM_CXXFLAGS) $(CROSS_CXXFLAGS) $(OPT_CXXFLAGS)\
|
||||
$(DEBUG_CXXFLAGS) $(WARN_CXXFLAGS) $(TARGET_CXXFLAGS) $(USR_CXXFLAGS)\
|
||||
$(ARCH_DEP_CXXFLAGS) $(CODE_CXXFLAGS) $(STATIC_CXXCFLAGS) $(OP_SYS_CXXFLAGS)\
|
||||
$(CROSS_CXXFLAGS)
|
||||
|
||||
LDFLAGS += $(OPT_LDFLAGS) $(TARGET_LDFLAGS) $(USR_LDFLAGS) $(DEPLIB_LDFLAGS)\
|
||||
$(ARCH_DEP_LDFLAGS) $(STATIC_LDFLAGS) $(OP_SYS_LDFLAGS)
|
||||
LDFLAGS = $(OPT_LDFLAGS) $(TARGET_LDFLAGS) $(USR_LDFLAGS) $(DEPLIB_LDFLAGS)\
|
||||
$(ARCH_DEP_LDFLAGS) $(STATIC_LDFLAGS) $(OP_SYS_LDFLAGS) $(CROSS_LDFLAGS)
|
||||
|
||||
CPPFLAGS += $(CONFORM_CFLAGS) $(POSIX_CPPFLAGS) $(EPICS_BASE_CPPFLAGS)\
|
||||
$(TARGET_CPPFLAGS) $(USR_CPPFLAGS) $(ARCH_DEP_CPPFLAGS) $(OP_SYS_CPPFLAGS)
|
||||
LDLIBS = $(DEPLIB_LDLIBS) $(STATIC_LDLIBS)\
|
||||
$(POSIX_LDLIBS) $(ARCH_DEP_LDLIBS) $(OP_SYS_LDLIBS)
|
||||
|
||||
CPPFLAGS += $(CROSS_CPPFLAGS) $(POSIX_CPPFLAGS) $(EPICS_BASE_CPPFLAGS)\
|
||||
$(TARGET_CPPFLAGS) $(USR_CPPFLAGS) $(ARCH_DEP_CPPFLAGS)\
|
||||
$(OP_SYS_CPPFLAGS) $(CODE_CPPFLAGS)
|
||||
|
||||
#--------------------------------------------------
|
||||
# Although RTEMS uses gcc, it wants to use gcc its own way
|
||||
CROSS_CPPFLAGS =
|
||||
CROSS_LDFLAGS =
|
||||
|
||||
#--------------------------------------------------
|
||||
# operating system class (include/os/<os_class>)
|
||||
@@ -62,49 +75,27 @@ OS_CLASS = RTEMS
|
||||
|
||||
#--------------------------------------------------
|
||||
# Operating system flags
|
||||
OP_SYS_CPPFLAGS = -Dfopen=rtems_fopen -Dmain=rtems_main -DIOCSH_USE_READLINE
|
||||
OP_SYS_LDLIBS = -lreadline -lcurses
|
||||
OP_SYS_LDFLAGS = $(CPU_CFLAGS) -u Init -lCom \
|
||||
OP_SYS_CPPFLAGS = -Dmain=rtems_main
|
||||
OP_SYS_LDLIBS = -lrtemsall -lrtemsCom -lreadline -lcurses -lm
|
||||
OP_SYS_LDFLAGS = $(CPU_CFLAGS) -u Init \
|
||||
$(PROJECT_RELEASE)/lib/no-dpmem.rel \
|
||||
$(PROJECT_RELEASE)/lib/no-mp.rel \
|
||||
$(PROJECT_RELEASE)/lib/no-part.rel \
|
||||
$(PROJECT_RELEASE)/lib/no-signal.rel \
|
||||
$(PROJECT_RELEASE)/lib/no-rtmon.rel
|
||||
CPPSNCFLAGS += -x c
|
||||
|
||||
#--------------------------------------------------
|
||||
# c++ exceptions, YES or NO
|
||||
CXX_EXCEPTIONS = NO
|
||||
|
||||
#--------------------------------------------------
|
||||
# osithead use default stack, YES or NO
|
||||
OSITHREAD_USE_DEFAULT_STACK = NO
|
||||
|
||||
#--------------------------------------------------
|
||||
# RTEMS has neither shared libraries nor dynamic loading
|
||||
STATIC_BUILD=YES
|
||||
SHARED_LIBRARIES=NO
|
||||
GCC_CODE_CFLAGS =
|
||||
G++_CODE_CFLAGS =
|
||||
CODE_CFLAGS =
|
||||
CODE_CXXFLAGS =
|
||||
|
||||
#--------------------------------------------------
|
||||
# RTEMS wants nothing to do with POSIX
|
||||
GCC_POSIX_CPPFLAGS =
|
||||
G++_POSIX_CPPFLAGS =
|
||||
# RTEMS uses the inline keyword, so get rid of pedantic warnings
|
||||
CONFORM_CFLAGS_STRICT = -ansi
|
||||
CONFORM_CXXFLAGS_STRICT = -ansi
|
||||
|
||||
#--------------------------------------------------
|
||||
# RTEMS is not that strict
|
||||
GCC_CONFORM_CFLAGS_STRICT =
|
||||
G++_CONFORM_CFLAGS_STRICT =
|
||||
|
||||
#--------------------------------------------------
|
||||
# RTEMS uses C++ constructors to register commands/programs (snc +i option)
|
||||
%.o: ../%.st
|
||||
@echo "preprocessing $*.st"
|
||||
@$(RM) $*.i
|
||||
$(CPP) $(CPPSNCFLAGS) $< > $*.i
|
||||
@echo "converting $*.i"
|
||||
@$(RM) $*.c
|
||||
$(SNC) +i $(TARGET_SNCFLAGS) $(SNCFLAGS) $*.i
|
||||
@$(RM) $@
|
||||
$(COMPILE.cpp) -x c++ -Wno-deprecated $*.c
|
||||
# Allow site overrides
|
||||
-include $(CONFIG)/os/CONFIG_SITE.Common.RTEMS
|
||||
|
||||
@@ -6,4 +6,5 @@
|
||||
#
|
||||
# All RTEMS targets use the same Makefile fragment
|
||||
#
|
||||
RTEMS_TARGET_CPU=m68k
|
||||
include $(CONFIG)/os/CONFIG.Common.RTEMS
|
||||
|
||||
@@ -6,4 +6,5 @@
|
||||
#
|
||||
# All RTEMS targets use the same Makefile fragment
|
||||
#
|
||||
RTEMS_TARGET_CPU=m68k
|
||||
include $(CONFIG)/os/CONFIG.Common.RTEMS
|
||||
|
||||
15
configure/os/CONFIG.Common.RTEMS-pc386
Normal file
15
configure/os/CONFIG.Common.RTEMS-pc386
Normal file
@@ -0,0 +1,15 @@
|
||||
#
|
||||
# $Id$
|
||||
# Author: W. Eric Norum
|
||||
# Canadian Light Source
|
||||
# eric@cls.usask.ca
|
||||
#
|
||||
# All RTEMS targets use the same Makefile fragment
|
||||
#
|
||||
RTEMS_TARGET_CPU=i386
|
||||
include $(CONFIG)/os/CONFIG.Common.RTEMS
|
||||
|
||||
#
|
||||
# Put text segment where it will work with etherboot
|
||||
#
|
||||
OP_SYS_LDFLAGS = -Wl,-Ttext,0x100000
|
||||
@@ -30,16 +30,23 @@ SHRLIB_SUFFIX = .so$(addprefix .,$(SHRLIB_VERSION))
|
||||
# <lib> -> lib<lib>.a
|
||||
LIBNAME = $(BUILD_LIBRARY:%=$(LIB_PREFIX)%$(LIB_SUFFIX))
|
||||
# <lib> -> lib<lib>.so.<version>
|
||||
SHRLIBNAME = $(BUILD_LIBRARY:%=$(LIB_PREFIX)%$(SHRLIB_SUFFIX))
|
||||
SHRLIBNAME_YES = $(BUILD_LIBRARY:%=$(LIB_PREFIX)%$(SHRLIB_SUFFIX))
|
||||
|
||||
#-------------------------------------------------------
|
||||
# shrlib: dependancy definitions
|
||||
SHRLIB_DEPLIBS = $(foreach lib,$(SHRLIB_LIBS),$(firstword $(wildcard \
|
||||
$($(lib)_DIR)/$(LIB_PREFIX)$(lib).*)))
|
||||
|
||||
# Shared library definitions
|
||||
SHRLIB_LDFLAGS = $($(ANSI)_SHRLIB_LDFLAGS_$(strip $(SHARED_LIBRARIES)))
|
||||
SHRLIB_LDFLAGS = $(SHRLIB_LDFLAGS_$(strip $(SHARED_LIBRARIES)))
|
||||
SHRLIB_LDLIBS = $($*_LIBS:%=-l%)
|
||||
|
||||
SHRLIB_DEPLIB_DIRS = $(dir $($*_DEPLIBS)) $(dir $(SHRLIB_DEPLIBS))
|
||||
SHRLIB_LDFLAGS += $(sort $(SHRLIB_DEPLIB_DIRS:%=-L%))
|
||||
|
||||
#--------------------------------------------------
|
||||
# Prod: dependancy definitions
|
||||
PROD_DEPLIBS = $(foreach lib,$(PROD_LIBS) $(USR_LIBS),$(firstword $(wildcard \
|
||||
PROD_DEPLIBS = $(foreach lib,$(PROD_LDLIBS) $(USR_LDLIBS),$(firstword $(wildcard \
|
||||
$($(lib)_DIR)/$(LIB_PREFIX)$(lib).*)))
|
||||
|
||||
#--------------------------------------------------
|
||||
@@ -47,25 +54,18 @@ $($(lib)_DIR)/$(LIB_PREFIX)$(lib).*)))
|
||||
DEPLIB_DIRS = $(dir $($*_DEPLIBS)) $(dir $(PROD_DEPLIBS))
|
||||
DEPLIB_LDFLAGS += $(sort $(DEPLIB_DIRS:%=-L%))
|
||||
|
||||
DEPLIB_LDLIBS = $($*_LIBS:%=-l%) $(PROD_LIBS:%=-l%) $(USR_LIBS:%=-l%)\
|
||||
DEPLIB_LDLIBS = $($*_LDLIBS:%=-l%) $(PROD_LDLIBS:%=-l%) $(USR_LDLIBS:%=-l%)\
|
||||
$($*_SYS_LIBS:%=-l%) $(SYS_PROD_LIBS:%=-l%)
|
||||
|
||||
#--------------------------------------------------
|
||||
# Allow code to be used in a shared library
|
||||
GCC_CODE_CFLAGS += -fPIC
|
||||
G++_CODE_CFLAGS += -fPIC
|
||||
|
||||
#--------------------------------------------------
|
||||
# Operating system definitions
|
||||
OP_SYS_INCLUDES =
|
||||
OP_SYS_CPPFLAGS = -DUNIX
|
||||
OP_SYS_LDFLAGS =
|
||||
OP_SYS_LDLIBS = -lm
|
||||
OP_SYS_CPPFLAGS += -DUNIX
|
||||
OP_SYS_LDLIBS += -lm
|
||||
|
||||
#--------------------------------------------------
|
||||
# Link definitions
|
||||
LINK.cpp = $(CXX) -o $@ $(LDFLAGS) $(PROD_LD_OBJS) $(PROD_LD_RESS) $(LDLIBS)
|
||||
LINK.shrlib = $(CXX) -o $@ $(SHRLIB_LDFLAGS) $(LDFLAGS) $(LIBRARY_LD_OBJS) $(LIBRARY_LD_RESS) $(SHRLIB_LDLIBS)
|
||||
LINK.cpp = $(CCC) -o $@ $(LDFLAGS) $(PROD_LD_OBJS) $(PROD_LD_RESS) $(LDLIBS)
|
||||
LINK.shrlib = $(CCC) -o $@ $(SHRLIB_LDFLAGS) $(LDFLAGS) $(LIBRARY_LD_OBJS) $(LIBRARY_LD_RESS) $(SHRLIB_LDLIBS)
|
||||
|
||||
#--------------------------------------------------
|
||||
# Allow site overrides
|
||||
|
||||
@@ -7,5 +7,27 @@
|
||||
# Sites may override these definitions in CONFIG_SITE.Common.hpux-68k
|
||||
#-------------------------------------------------------
|
||||
|
||||
#Include definitions common to unix hosts
|
||||
#Include definitions common to unix targets
|
||||
include $(CONFIG)/os/CONFIG.Common.UnixCommon
|
||||
|
||||
OS_CLASS = hpux
|
||||
ARCH_CLASS = parisc
|
||||
|
||||
POSIX_CPPFLAGS_YES =
|
||||
POSIX_CPPFLAGS_NO =
|
||||
POSIX_LDLIBS_YES +=
|
||||
POSIX_LDLIBS_NO +=
|
||||
|
||||
OP_SYS_CPPFLAGS = -D_HPUX_SOURCE -DHP_UX
|
||||
OP_SYS_CFLAGS = +z
|
||||
OP_SYS_CXXFLAGS = +z
|
||||
OP_SYS_LDLIBS +=
|
||||
|
||||
SHRLIB_SUFFIX = .sl
|
||||
|
||||
ifdef CROSS
|
||||
GNU_TARGET=parisc-hp-unix
|
||||
CMPLR_SUFFIX=
|
||||
CMPLR_PREFIX=$(addsuffix -,$(GNU_TARGET))
|
||||
endif
|
||||
|
||||
|
||||
34
configure/os/CONFIG.Common.linux-mpc82xx
Normal file
34
configure/os/CONFIG.Common.linux-mpc82xx
Normal file
@@ -0,0 +1,34 @@
|
||||
# $Id$
|
||||
# This file is maintained by the build community.
|
||||
#
|
||||
# Definitions for linux-mpc82xx target builds
|
||||
# Sites may override these definitions in CONFIG_SITE.Common.linux-mpc82xx
|
||||
#-------------------------------------------------------
|
||||
|
||||
# Include definitions common to all Unix targets
|
||||
include $(CONFIG)/os/CONFIG.Common.UnixCommon
|
||||
|
||||
OS_CLASS = Linux
|
||||
ARCH_CLASS = mpc82xx
|
||||
|
||||
CODE_CPPFLAGS = -D_REENTRANT
|
||||
|
||||
POSIX_CPPFLAGS_YES = -D_POSIX_C_SOURCE=199506L -D_POSIX_THREADS
|
||||
POSIX_CPPFLAGS_NO =
|
||||
POSIX_LDLIBS_YES = -lpthread
|
||||
POSIX_LDLIBS_NO =
|
||||
|
||||
# -D_BSD_SOURCE for gethostname() in unistd.h as needed by cacChannelIO.cpp.
|
||||
OP_SYS_CPPFLAGS += -D_BSD_SOURCE
|
||||
OP_SYS_CPPFLAGS += -Dlinux
|
||||
OP_SYS_LDFLAGS =
|
||||
OP_SYS_LDLIBS = -lreadline -lcurses -lrt
|
||||
|
||||
#ARCH_DEP_CPPFLAGS += -D_X86_
|
||||
|
||||
ifdef CROSS
|
||||
GNU_TARGET=ppc_82xx
|
||||
CMPLR_SUFFIX=
|
||||
CMPLR_PREFIX=$(addsuffix -,$(GNU_TARGET))
|
||||
endif
|
||||
|
||||
37
configure/os/CONFIG.Common.linux-x86
Normal file
37
configure/os/CONFIG.Common.linux-x86
Normal file
@@ -0,0 +1,37 @@
|
||||
# CONFIG.Common.linux-x86
|
||||
#
|
||||
# $Id$
|
||||
# This file is maintained by the build community.
|
||||
#
|
||||
# Definitions for linux-x86 target builds
|
||||
# Sites may override these definitions in CONFIG_SITE.Common.linux-x86
|
||||
#-------------------------------------------------------
|
||||
|
||||
# Include definitions common to all Unix targets
|
||||
include $(CONFIG)/os/CONFIG.Common.UnixCommon
|
||||
|
||||
OS_CLASS = Linux
|
||||
ARCH_CLASS = x86
|
||||
|
||||
CODE_CPPFLAGS = -D_REENTRANT
|
||||
|
||||
POSIX_CPPFLAGS_YES = -D_POSIX_C_SOURCE=199506L -D_POSIX_THREADS
|
||||
POSIX_CPPFLAGS_NO =
|
||||
POSIX_LDLIBS_YES = -lpthread
|
||||
POSIX_LDLIBS_NO =
|
||||
|
||||
# -D_BSD_SOURCE for gethostname() in unistd.h as needed by cacChannelIO.cpp.
|
||||
OP_SYS_CPPFLAGS += -D_BSD_SOURCE
|
||||
OP_SYS_CPPFLAGS += -Dlinux
|
||||
OP_SYS_LDFLAGS =
|
||||
OP_SYS_LDLIBS = -lreadline -lcurses -lrt
|
||||
|
||||
ARCH_DEP_CPPFLAGS += -D_X86_
|
||||
ARCH_DEP_CFLAGS += -mpentium
|
||||
|
||||
ifdef CROSS
|
||||
GNU_TARGET=i586-pc-linux-gnu
|
||||
CMPLR_SUFFIX=
|
||||
CMPLR_PREFIX=$(addsuffix -,$(GNU_TARGET))
|
||||
endif
|
||||
|
||||
31
configure/os/CONFIG.Common.lynxos-x86
Normal file
31
configure/os/CONFIG.Common.lynxos-x86
Normal 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
|
||||
|
||||
31
configure/os/CONFIG.Common.osf-alpha
Normal file
31
configure/os/CONFIG.Common.osf-alpha
Normal 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
|
||||
|
||||
42
configure/os/CONFIG.Common.solaris-sparc
Normal file
42
configure/os/CONFIG.Common.solaris-sparc
Normal 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
|
||||
|
||||
12
configure/os/CONFIG.Common.solaris-sparc-gnu
Normal file
12
configure/os/CONFIG.Common.solaris-sparc-gnu
Normal 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
|
||||
|
||||
39
configure/os/CONFIG.Common.solaris-x86
Normal file
39
configure/os/CONFIG.Common.solaris-x86
Normal 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
|
||||
|
||||
12
configure/os/CONFIG.Common.solaris-x86-gnu
Normal file
12
configure/os/CONFIG.Common.solaris-x86-gnu
Normal 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
|
||||
|
||||
33
configure/os/CONFIG.Common.sun4-x86
Normal file
33
configure/os/CONFIG.Common.sun4-x86
Normal 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
|
||||
|
||||
21
configure/os/CONFIG.Common.vxWorks-ppc603
Normal file
21
configure/os/CONFIG.Common.vxWorks-ppc603
Normal 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
|
||||
|
||||
@@ -1,14 +1,13 @@
|
||||
# CONFIG.Common.vxWorksCommon
|
||||
#
|
||||
# $Id$
|
||||
# This file is maintained by the build community.
|
||||
#
|
||||
# Definitions for vxWorks target archs
|
||||
#
|
||||
# This file is maintained by the build community.
|
||||
# Sites may override these definitions in CONFIG_SITE.Common.vxWorksCommon
|
||||
# or CONFIG_SITE.<host>.vxWorksCommon
|
||||
|
||||
#-------------------------------------------------------
|
||||
|
||||
# Vx valid build types
|
||||
VALID_BUILDS = Ioc
|
||||
|
||||
@@ -20,35 +19,58 @@ OS_CLASS = vxWorks
|
||||
# Prefix and suffix definitions
|
||||
EXE =
|
||||
OBJ = .o
|
||||
LIB_PREFIX =
|
||||
LIB_SUFFIX = Library.o
|
||||
MUNCH_SUFFIX = Library.munch
|
||||
LIB_PREFIX =lib
|
||||
LIB_SUFFIX = .a
|
||||
MUNCH_SUFFIX = .munch
|
||||
|
||||
#-------------------------------------------------------
|
||||
# Library definition
|
||||
# Build both *.o and *.munch libraries
|
||||
# Library definitions
|
||||
LIBNAME = $(BUILD_LIBRARY:%=$(LIB_PREFIX)%$(LIB_SUFFIX))
|
||||
MUNCHNAME = $(BUILD_LIBRARY:%=$(LIB_PREFIX)%$(MUNCH_SUFFIX))
|
||||
|
||||
#--------------------------------------------------
|
||||
# Library install location override
|
||||
INSTALL_LOCATION_LIB=$(INSTALL_LOCATION)/bin
|
||||
# Prod: dependancy definitions
|
||||
PROD_DEPLIBS = $(foreach lib,$(PROD_LDLIBS) $(USR_LDLIBS),$(firstword $(wildcard \
|
||||
$($(lib)_DIR)/$(LIB_PREFIX)$(lib).*)))
|
||||
|
||||
#--------------------------------------------------
|
||||
# Prod: LDFLAGS and LDLIBS definitions
|
||||
DEPLIB_DIRS = $(dir $($*_DEPLIBS)) $(dir $(PROD_DEPLIBS))
|
||||
DEPLIB_LDFLAGS += $(sort $(DEPLIB_DIRS:%=-L%))
|
||||
|
||||
DEPLIB_LDLIBS = $($*_LDLIBS:%=-l%) $(PROD_LDLIBS:%=-l%) $(USR_LDLIBS:%=-l%)\
|
||||
$($*_SYS_LIBS:%=-l%) $(SYS_PROD_LIBS:%=-l%)
|
||||
|
||||
#-------------------------------------------------------
|
||||
# Prod definitions
|
||||
MUNCHNAME = $(PRODNAME:%$(EXE)=%$(MUNCH_SUFFIX))
|
||||
CTDT_SRCS = $(PRODNAME:%$(EXE)=%_ctdt.c)
|
||||
CTDT_OBJS = $(PRODNAME:%$(EXE)=%_ctdt$(OBJ))
|
||||
NMS = $(PRODNAME:%$(EXE)=%.nm)
|
||||
|
||||
#-------------------------------------------------------
|
||||
# R3.13 compatability object library definitions
|
||||
OBJLIB += $(OBJLIB_$(OS_CLASS))
|
||||
OBJLIB_SUFFIX = Library.o
|
||||
OBJLIBNAME = $(addsuffix $(OBJLIB_SUFFIX),$(basename $(OBJLIB)))
|
||||
OBJLIB_LD_OBJS = $(addsuffix $(OBJ),$(basename $(OBJLIB_SRCS) $(OBJLIB_OBJS)))
|
||||
PRODTARGETS += $(OBJLIBNAME)
|
||||
INSTALL_PROD += $(OBJLIBNAME:%=$(INSTALL_BIN)/%)
|
||||
OBJLIB_MUNCHNAME += $(OBJLIBNAME:%$(OBJ)=%$(MUNCH_SUFFIX))
|
||||
INSTALL_MUNCHS += $(OBJLIB_MUNCHNAME:%=$(INSTALL_BIN)/%)
|
||||
PRODTARGETS += $(OBJLIB_MUNCHNAME)
|
||||
CTDT_SRCS += $(OBJLIBNAME:%$(OBJ)=%_ctdt.c)
|
||||
CTDT_OBJS += $(OBJLIBNAME:%$(OBJ)=%_ctdt$(OBJ))
|
||||
NMS += $(OBJLIBNAME:%$(OBJ)=%.nm)
|
||||
OBJLIB_LINK.cpp = $(LD) -o $@ $(OBJLIB_LD_OBJS)
|
||||
TARGET_SRCS += $(foreach name, $(OBJLIB), $($(name)_SRCS))
|
||||
SRC_FILES += $(OBJLIB_SRCS)
|
||||
|
||||
#--------------------------------------------------
|
||||
# vxWorks directory definitions
|
||||
# Tornado directory definitions
|
||||
VX_INCLUDE = $(VX_DIR)/target/h
|
||||
GNU_TARGET_INCLUDE_DIR = $(VX_DIR)/target/h
|
||||
GNU_DIR = $(VX_DIR)/host/$(WIND_HOST_TYPE)
|
||||
|
||||
#-------------------------------------------------------
|
||||
# Command definition overrides
|
||||
GCC_LD = $(GNU_BIN)/$(CMPLR_PREFIX)ld$(CMPLR_SUFFIX) -r
|
||||
|
||||
# use ld partial linking not ar to create libraries)
|
||||
GCC_AR = $(GCC_LD)
|
||||
ARFLAGS = -o
|
||||
GCC_RANLIB =
|
||||
|
||||
#--------------------------------------------------
|
||||
# C++ host processing
|
||||
NM = $(GNU_BIN)/$(CMPLR_PREFIX)nm$(CMPLR_SUFFIX)$(HOSTEXE)
|
||||
@@ -59,14 +81,8 @@ NM = $(GNU_BIN)/$(CMPLR_PREFIX)nm$(CMPLR_SUFFIX)$(HOSTEXE)
|
||||
export WIND_BASE = $(VX_DIR)
|
||||
export WIND_HOST_TYPE
|
||||
|
||||
#--------------------------------------------------
|
||||
# Posix flags override
|
||||
GCC_POSIX_CPPFLAGS = -D_POSIX_SOURCE
|
||||
G++_POSIX_CPPFLAGS = -D_POSIX_SOURCE
|
||||
|
||||
#--------------------------------------------------
|
||||
# Operating system flags
|
||||
OP_SYS_INCLUDES = -I$(VX_INCLUDE)
|
||||
OP_SYS_CPPFLAGS = -DvxWorks
|
||||
OP_SYS_CFLAGS = -fno-builtin
|
||||
OP_SYS_LDFLAGS =
|
||||
@@ -74,18 +90,24 @@ OP_SYS_LDLIBS =
|
||||
|
||||
# Fix for vxWorks headers using macros defined in
|
||||
# vxWorks.h but not including vxWorks.h
|
||||
OP_SYS_CFLAGS += -include $(VX_INCLUDE)/vxWorks.h
|
||||
OP_SYS_INCLUDE_CPPFLAGS += -include $(GNU_TARGET_INCLUDE_DIR)/vxWorks.h
|
||||
|
||||
#--------------------------------------------------
|
||||
# code flags
|
||||
CODE_CFLAGS =
|
||||
CODE_CXXFLAGS =
|
||||
|
||||
#--------------------------------------------------
|
||||
# posix c preprocessor flags
|
||||
POSIX_CPPFLAGS_YES = -D_POSIX_SOURCE
|
||||
POSIX_CPPFLAGS_NO =
|
||||
|
||||
#--------------------------------------------------
|
||||
# Optimization flag overrides
|
||||
GCC_OPT_YES = -O2
|
||||
GCC_OPT_NO =
|
||||
G++_OPT_YES = -O2
|
||||
G++_OPT_NO =
|
||||
|
||||
#--------------------------------------------------
|
||||
# c++ exceptions, YES or NO override
|
||||
CXX_EXCEPTIONS = NO
|
||||
OPT_CFLAGS_YES = -O3
|
||||
OPT_CFLAGS_NO =
|
||||
OPT_CXXFLAGS_YES = -O3
|
||||
OPT_CXXFLAGS_NO =
|
||||
|
||||
#--------------------------------------------------
|
||||
# osithead use default stack, YES or NO override
|
||||
@@ -93,9 +115,10 @@ OSITHREAD_USE_DEFAULT_STACK = NO
|
||||
|
||||
#--------------------------------------------------
|
||||
# Link definitions
|
||||
LINK.cpp = $(GCC_LD) -o $@ $(LDFLAGS) $(PROD_LD_OBJS) $(PROD_LD_RES) $(LDLIBS)
|
||||
LINK.cpp = $(LD) -o $@ $(LDFLAGS) $(PROD_LD_OBJS) $(PROD_LD_RESS) $(LDLIBS)
|
||||
|
||||
#--------------------------------------------------
|
||||
# Allow site overrides
|
||||
-include $(CONFIG)/os/CONFIG_SITE.Common.vxWorksCommon
|
||||
-include $(CONFIG)/os/CONFIG_SITE.$(EPICS_HOST_ARCH).vxWorksCommon
|
||||
|
||||
|
||||
30
configure/os/CONFIG.Common.win32-x86-cygwin
Normal file
30
configure/os/CONFIG.Common.win32-x86-cygwin
Normal 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_
|
||||
|
||||
@@ -7,54 +7,50 @@
|
||||
# Sites may override these definitions in CONFIG_SITE.hpux-parisc.hpux-parisc
|
||||
#-------------------------------------------------------
|
||||
|
||||
OS_CLASS = hpux
|
||||
ARCH_CLASS = parisc
|
||||
CC = cc
|
||||
CCC = aCC
|
||||
CPP = $(CC) -E
|
||||
RANLIB =
|
||||
AR = ar -rc
|
||||
LD = ld -r
|
||||
|
||||
# Configure OS vendor C compiler
|
||||
ACC = cc
|
||||
ACC_CONFORM_CFLAGS_ANSI = -Aa
|
||||
ACC_CONFORM_CFLAGS_STRICT = -Aa
|
||||
ACC_CONFORM_CFLAGS_TRAD = -Ac
|
||||
ACC_WARN_YES =
|
||||
ACC_WARN_NO = -w
|
||||
ACC_OPT_YES = -O
|
||||
ACC_OPT_NO = -g
|
||||
ACC_STATIC_CFLAGS_YES= -Wl,-a,archive
|
||||
ACC_STATIC_CFLAGS_NO =
|
||||
ACC_STATIC_LDLIBS_YES =
|
||||
ACC_STATIC_LDLIBS_NO =
|
||||
ACC_SHRLIB_LDFLAGS_YES = -b
|
||||
|
||||
# Configure OS vendor C++ compiler
|
||||
CCC = aCC
|
||||
# avoid treating "future errors" as actual errors
|
||||
CCC_CONFORM_CFLAGS_NORMAL = +W302 +W829 +W818 +W392 +W469 +W495 +W749 +W667 +W392 +W684
|
||||
CCC_CONFORM_CFLAGS_STRICT = +p
|
||||
CCC_TEMPL_INST_FLAG =
|
||||
CCC_WARN_YES = +w
|
||||
CCC_WARN_NO =
|
||||
CCC_OPT_YES = -O
|
||||
CCC_OPT_NO = -g
|
||||
CCC_STATIC_CFLAGS_YES= +A
|
||||
CCC_STATIC_CFLAGS_NO =
|
||||
CCC_STATIC_LDLIBS_YES =
|
||||
CCC_STATIC_LDLIBS_NO =
|
||||
# shared libs will be found by searching environment variable SHLIB_PATH,
|
||||
# then by searching the specified path (see below)
|
||||
CCC_SHRLIB_LDFLAGS_YES = -b
|
||||
CCC_DEPENDS_FLAG = +m
|
||||
|
||||
CONFORM_CFLAGS_ANSI = -Aa
|
||||
CONFORM_CFLAGS_STRICT = -Aa
|
||||
CONFORM_CFLAGS_TRAD = -Ac
|
||||
######################################################
|
||||
# +DAportable causes portable object code to be created for execution
|
||||
# on different PA-Risc machines
|
||||
ARCH_DEP_CPPFLAGS = -D_HPUX_SOURCE -DHP_UX
|
||||
ARCH_DEP_CFLAGS = +DAportable +z
|
||||
ARCH_DEP_CXXFLAGS = +DAportable +z
|
||||
ARCH_DEP_LDLIBS =
|
||||
ARCH_DEP_LDFLAGS = -Wl,+b$(DEFAULT_SHRLIB_SEARCH_PATH),+s
|
||||
|
||||
AR = ar -rc
|
||||
|
||||
SHRLIB_SUFFIX = .sl
|
||||
CODE_CFLAGS = +DAportable
|
||||
WARN_CFLAGS_YES =
|
||||
WARN_CFLAGS_NO = -w
|
||||
OPT_CFLAGS_YES = -O
|
||||
OPT_CFLAGS_NO = -g
|
||||
|
||||
# HP's aCC will not compile things if run in STRICT mode
|
||||
CXXCMPLR=NORMAL
|
||||
|
||||
# Configure OS vendor C++ compiler
|
||||
CONFORM_CXXFLAGS_NORMAL = +W302 +W829 +W818 +W392 +W469 +W495 +W749 +W667 +W392 +W684
|
||||
CONFORM_CXXFLAGS_STRICT = +p
|
||||
######################################################
|
||||
# +DAportable causes portable object code to be created for execution
|
||||
# on different PA-Risc machines
|
||||
CODE_CXXFLAGS = +DAportable
|
||||
WARN_CXXFLAGS_YES = +w
|
||||
WARN_CXXFLAGS_NO =
|
||||
OPT_CXXFLAGS_YES = -O
|
||||
OPT_CXXFLAGS_NO = -g
|
||||
|
||||
STATIC_LDFLAGS_YES= -Wl,-a,archive +A
|
||||
# shared libs will be found by searching environment variable SHLIB_PATH,
|
||||
# then by searching the specified path (see below)
|
||||
STATIC_LDFLAGS_YES+= -b
|
||||
STATIC_LDFLAGS_NO = -Wl,+b$(DEFAULT_SHRLIB_SEARCH_PATH),+s
|
||||
STATIC_LDLIBS_YES=
|
||||
STATIC_LDLIBS_NO=
|
||||
|
||||
SHRLIB_LDFLAGS_YES = -G -h $@
|
||||
|
||||
HDEPENDS_FLAGS_CMPLR = +m
|
||||
|
||||
|
||||
10
configure/os/CONFIG.linux-mpc82xx.Common
Normal file
10
configure/os/CONFIG.linux-mpc82xx.Common
Normal file
@@ -0,0 +1,10 @@
|
||||
# $Id$
|
||||
# This file is maintained by the build community.
|
||||
#
|
||||
# Definitions for linux-mpc82xx host builds
|
||||
# Sites may override these definitions in CONFIG_SITE.linux-mpc82xx.Common
|
||||
#-------------------------------------------------------
|
||||
|
||||
#Include definitions common to unix hosts
|
||||
include $(CONFIG)/os/CONFIG.UnixCommon.Common
|
||||
|
||||
13
configure/os/CONFIG.linux-mpc82xx.linux-mpc82xx
Normal file
13
configure/os/CONFIG.linux-mpc82xx.linux-mpc82xx
Normal file
@@ -0,0 +1,13 @@
|
||||
# $Id$
|
||||
#
|
||||
# Definitions for linux-mpc82xx host - linux-mpc82xx target builds
|
||||
# Sites may override these definitions in CONFIG_SITE.linux-mpc82xx.linux-mpc82xx
|
||||
#-------------------------------------------------------
|
||||
|
||||
# Include common gnu compiler definitions
|
||||
include $(CONFIG)/CONFIG.gnuCommon
|
||||
|
||||
GNU_DIR = /usr
|
||||
|
||||
CC = $(GNU_BIN)/gcc
|
||||
CCC = $(GNU_BIN)/g++
|
||||
@@ -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
|
||||
|
||||
|
||||
17
configure/os/CONFIG.linux-x86.linux-mpc82xx
Normal file
17
configure/os/CONFIG.linux-x86.linux-mpc82xx
Normal file
@@ -0,0 +1,17 @@
|
||||
# $Id$
|
||||
#
|
||||
# Definitions for linux-x86 host - linux-mpc82xx target builds
|
||||
# Sites may override these definitions in CONFIG_SITE.linux-x86.linux-mpc82xx
|
||||
#-------------------------------------------------------
|
||||
|
||||
# Include common gnu compiler definitions
|
||||
include $(CONFIG)/CONFIG.gnuCommon
|
||||
|
||||
GNU_DIR = /opt/hardhat/devkit/ppc/82xx
|
||||
GNU_TARGET_INCLUDE_DIR = $(GNU_DIR)/target/usr/include/
|
||||
|
||||
CC = $(GNU_BIN)/ppc_82xx-gcc
|
||||
CCC = $(GNU_BIN)/ppc_82xx-g++
|
||||
|
||||
# Override the -nostdinc flag, needed here...
|
||||
CROSS_CPPFLAGS =
|
||||
@@ -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++
|
||||
|
||||
@@ -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
|
||||
|
||||
|
||||
@@ -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
|
||||
|
||||
|
||||
@@ -1,72 +1,50 @@
|
||||
# CONFIG.solaris-sparc.solaris-sparc
|
||||
# CONFIG.osf-alpha.osf-alpha
|
||||
#
|
||||
# $Id$
|
||||
# This file is maintained by the build community.
|
||||
#
|
||||
# Definitions for linux-x86 host archs
|
||||
# Sites may override these definitions in CONFIG_SITE.solaris-sparc.solaris-sparc
|
||||
# Definitions for osf-alpha host archs
|
||||
# Sites may override these definitions in CONFIG_SITE.osf-alpha.osf-alpha
|
||||
#-------------------------------------------------------
|
||||
|
||||
# Include definitions common to all Unix target archs
|
||||
include $(CONFIG)/os/CONFIG.Common.UnixCommon
|
||||
|
||||
OS_CLASS = solaris
|
||||
ARCH_CLASS = sparc
|
||||
|
||||
SPARCWORKS = /opt/SUNWspro
|
||||
CC = cc
|
||||
CCC = cxx
|
||||
CPP = $(CC) -E
|
||||
RANLIB =
|
||||
AR = ar
|
||||
LD = -r
|
||||
|
||||
# Configure OS vendor C compiler
|
||||
ACC = $(SPARCWORKS)/bin/cc
|
||||
ACC_CONFORM_CFLAGS_ANSI = -Xa
|
||||
ACC_CONFORM_CFLAGS_STRICT = -Xc -v
|
||||
ACC_CONFORM_CFLAGS_TRAD = -Xs
|
||||
ACC_CODE_CFLAGS = -KPIC -D_REENTRANT
|
||||
ACC_WARN_YES =
|
||||
ACC_WARN_NO = -w
|
||||
ACC_OPT_YES = -xO4
|
||||
ACC_OPT_NO = -g
|
||||
ACC_STATIC_LDFLAGS_YES= -Bstatic
|
||||
ACC_STATIC_LDLIBS_YES= -lw -lintl -Bdynamic -ldl -lposix4 -lpthread -lthread -Bstatic -lXext -lX
|
||||
ACC_STATIC_LDLIBS_NO= -lposix4 -lpthread -lthread
|
||||
ACC_SHRLIB_LDFLAGS_YES = -G -h $@
|
||||
ACC_POSIX_CPPFLAGS = -D_POSIX_C_SOURCE=199506L -D__EXTENSIONS__
|
||||
CONFORM_CFLAGS_ANSI = -std
|
||||
CONFORM_CFLAGS_STRICT = -std1
|
||||
CONFORM_CFLAGS_TRAD = -std0
|
||||
CODE_CFLAGS =
|
||||
WARN_CFLAGS_YES =
|
||||
WARN_CFLAGS_NO = -w
|
||||
OPT_CFLAGS_YES = -O
|
||||
OPT_CFLAGS_NO = -g
|
||||
|
||||
# Configure OS vendor C++ compiler
|
||||
CCC = $(SPARCWORKS)/bin/CC
|
||||
CCC_CONFORM_CFLAGS_NORMAL = +p
|
||||
CCC_CONFORM_CFLAGS_STRICT = +p
|
||||
CCC_CODE_CFLAGS = -KPIC -D_REENTRANT
|
||||
CCC_TEMPL_INST_FLAG =
|
||||
CCC_WARN_YES = +w
|
||||
CCC_WARN_NO =
|
||||
CCC_OPT_YES = -xO4
|
||||
CCC_OPT_NO = -g
|
||||
CCC_STATIC_LDFLAGS_YES= -Bstatic
|
||||
CCC_STATIC_LDLIBS_YES= -lw -lintl -Bdynamic -ldl -lposix4 -lpthread -lthread -Bstatic -lXext -lX
|
||||
CCC_STATIC_LDLIBS_NO=
|
||||
CCC_SHRLIB_LDFLAGS_YES = -G -h $@
|
||||
CCC_DEPENDS_FLAG = -xM1
|
||||
CCC_POSIX_CPPFLAGS = -D_POSIX_C_SOURCE=199506L -D__EXTENSIONS__
|
||||
CONFORM_CXXFLAGS_NORMAL =
|
||||
CONFORM_CXXFLAGS_STRICT =
|
||||
PROF_CXXFLAGS_YES = +p
|
||||
PROF_CXXFLAGS_NO =
|
||||
CODE_CXXFLAGS =
|
||||
WARN_CXXFLAGS_YES =
|
||||
WARN_CXXFLAGS_NO =
|
||||
OPT_CXXFLAGS_YES = -O
|
||||
OPT_CXXFLAGS_NO = -g
|
||||
|
||||
ACC_CPP = cpp
|
||||
STATIC_LDFLAGS_YES= -Bstatic
|
||||
STATIC_LDFLAGS_NO=
|
||||
STATIC_LDLIBS_YES= -Bdynamic
|
||||
STATIC_LDLIBS_NO=
|
||||
|
||||
#Configure gnu compiler
|
||||
GCC = gcc
|
||||
G++ = g++
|
||||
GCC_CPP = $(GCC) -x c -E
|
||||
SHRLIB_LDFLAGS_YES = -shared
|
||||
|
||||
GCC_POSIX_CPPFLAGS += -D__EXTENSIONS__
|
||||
G++_POSIX_CPPFLAGS += -D__EXTENSIONS__
|
||||
HDEPENDS_FLAGS_CMPLR =
|
||||
|
||||
RANLIB =
|
||||
# required by sun's C++ compiler
|
||||
AR = $(CCC) -xar -o
|
||||
|
||||
ARCH_DEP_CPPFLAGS =
|
||||
ARCH_DEP_LDLIBS = -lposix4 -lpthread -lthread
|
||||
# socket and nsl needed by libca.a
|
||||
ARCH_DEP_LDLIBS += -lsocket -lnsl
|
||||
|
||||
# use loader's -R option
|
||||
DEPLIB_LDFLAGS += $(sort $(DEPLIB_DIRS:%=-R%))
|
||||
############# ???????????
|
||||
#####ACC_SFLAGS_YES= -non_shared
|
||||
#####ACC_SFLAGS_NO= -call_shared
|
||||
|
||||
|
||||
12
configure/os/CONFIG.solaris-sparc-gnu.Common
Normal file
12
configure/os/CONFIG.solaris-sparc-gnu.Common
Normal 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
|
||||
|
||||
20
configure/os/CONFIG.solaris-sparc-gnu.solaris-sparc-gnu
Normal file
20
configure/os/CONFIG.solaris-sparc-gnu.solaris-sparc-gnu
Normal 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
|
||||
|
||||
@@ -3,81 +3,54 @@
|
||||
# $Id$
|
||||
# This file is maintained by the build community.
|
||||
#
|
||||
# Definitions for linux-x86 host archs
|
||||
# Definitions for solaris-sparc host - solaris-sparc target build
|
||||
# Sites may override these definitions in CONFIG_SITE.solaris-sparc.solaris-sparc
|
||||
#-------------------------------------------------------
|
||||
|
||||
# Include definitions common to all Unix target archs
|
||||
include $(CONFIG)/os/CONFIG.Common.UnixCommon
|
||||
|
||||
OS_CLASS = solaris
|
||||
ARCH_CLASS = sparc
|
||||
|
||||
SPARCWORKS = /opt/SUNWspro
|
||||
|
||||
CC = $(SPARCWORKS)/bin/cc
|
||||
CCC = $(SPARCWORKS)/bin/CC
|
||||
#CC = purify -max-threads=100 $(SPARCWORKS)/bin/cc
|
||||
#CCC = purify -max-threads=100 $(SPARCWORKS)/bin/CC
|
||||
# required by sun's C++ compiler
|
||||
AR = $(CCC) -xar -o
|
||||
LD = ld -r
|
||||
CPP = gcc -x c -E
|
||||
RANLIB =
|
||||
|
||||
#Prepare the object code for profiling with prof. (YES or NO)
|
||||
PROFILE=YES
|
||||
|
||||
# Configure OS vendor C compiler
|
||||
ACC = $(SPARCWORKS)/bin/cc
|
||||
ACC_CONFORM_CFLAGS_ANSI = -Xa -v
|
||||
ACC_CONFORM_CFLAGS_STRICT = -Xc -v
|
||||
ACC_CONFORM_CFLAGS_TRAD = -Xs
|
||||
ACC_PROF_CFLAGS_YES = +p
|
||||
ACC_PROF_CFLAGS_NO =
|
||||
ACC_CODE_CFLAGS = -KPIC -D_REENTRANT $(CCC_PROF_CFLAGS_$(PROFILE))
|
||||
ACC_WARN_YES =
|
||||
ACC_WARN_NO = -w
|
||||
ACC_OPT_YES = -xO4
|
||||
ACC_OPT_NO = -g
|
||||
ACC_STATIC_LDFLAGS_YES= -Bstatic
|
||||
ACC_STATIC_LDLIBS_YES= -lw -lintl -Bdynamic -ldl -lposix4 -lpthread -lthread -Bstatic -lXext -lX
|
||||
ACC_STATIC_LDLIBS_NO= -lposix4 -lpthread -lthread
|
||||
ACC_SHRLIB_LDFLAGS_YES = -G -h $@
|
||||
ACC_POSIX_CPPFLAGS = -D_POSIX_C_SOURCE=199506L -D__EXTENSIONS__
|
||||
CONFORM_CFLAGS_ANSI = -Xa -v
|
||||
CONFORM_CFLAGS_STRICT = -Xc -v
|
||||
CONFORM_CFLAGS_TRAD = -Xs
|
||||
PROF_CFLAGS_YES = +p
|
||||
PROF_CFLAGS_NO =
|
||||
CODE_CFLAGS = -KPIC $(PROF_CFLAGS_$(PROFILE))
|
||||
WARN_CFLAGS_YES =
|
||||
WARN_CFLAGS_NO = -w
|
||||
OPT_CFLAGS_YES = -xO4
|
||||
OPT_CFLAGS_NO = -g
|
||||
|
||||
# Configure OS vendor C++ compiler
|
||||
CCC = $(SPARCWORKS)/bin/CC
|
||||
CCC_CONFORM_CFLAGS_NORMAL =
|
||||
CCC_CONFORM_CFLAGS_STRICT =
|
||||
CCC_PROF_CFLAGS_YES = +p
|
||||
CCC_PROF_CFLAGS_NO =
|
||||
CCC_CODE_CFLAGS = -KPIC -D_REENTRANT $(CCC_PROF_CFLAGS_$(PROFILE))
|
||||
CCC_TEMPL_INST_FLAG =
|
||||
CCC_WARN_YES = +w
|
||||
CCC_WARN_NO =
|
||||
CCC_OPT_YES = -O
|
||||
CCC_OPT_NO = -g
|
||||
CCC_STATIC_LDFLAGS_YES= -Bstatic
|
||||
CCC_STATIC_LDLIBS_YES= -lw -lintl -Bdynamic -ldl -lposix4 -lpthread -lthread -Bstatic -lXext -lX
|
||||
CCC_STATIC_LDLIBS_NO= -lposix4 -lpthread -lthread
|
||||
CCC_SHRLIB_LDFLAGS_YES = -G -h $@
|
||||
CCC_DEPENDS_FLAG = -xM1
|
||||
CCC_POSIX_CPPFLAGS = -D_POSIX_C_SOURCE=199506L -D__EXTENSIONS_
|
||||
CONFORM_CXXFLAGS_NORMAL =
|
||||
CONFORM_CXXFLAGS_STRICT =
|
||||
PROF_CXXFLAGS_YES = +p
|
||||
PROF_CXXFLAGS_NO =
|
||||
CODE_CXXFLAGS = -KPIC $(PROF_CXXFLAGS_$(PROFILE))
|
||||
WARN_CXXFLAGS_YES = +w
|
||||
WARN_CXXFLAGS_NO =
|
||||
OPT_CXXFLAGS_YES = -O
|
||||
OPT_CXXFLAGS_NO = -g
|
||||
|
||||
ACC_CPP = cpp
|
||||
STATIC_LDFLAGS_YES= -Bstatic
|
||||
STATIC_LDFLAGS_NO=
|
||||
STATIC_LDLIBS_YES= -Bdynamic
|
||||
STATIC_LDLIBS_NO=
|
||||
|
||||
#Configure gnu compiler
|
||||
GCC = gcc
|
||||
G++ = g++
|
||||
GCC_CPP = $(GCC) -x c -E
|
||||
SHRLIB_LDFLAGS_YES = -G -h $@
|
||||
|
||||
GCC_POSIX_CPPFLAGS += -D__EXTENSIONS__
|
||||
G++_POSIX_CPPFLAGS += -D__EXTENSIONS__
|
||||
|
||||
GCC_STATIC_LDLIBS_YES= -lposix4
|
||||
GCC_STATIC_LDLIBS_NO= -lposix4
|
||||
G++_STATIC_LDLIBS_YES= -lposix4
|
||||
G++_STATIC_LDLIBS_NO= -lposix4
|
||||
|
||||
RANLIB =
|
||||
# required by sun's C++ compiler
|
||||
AR = $(CCC) -xar -o
|
||||
|
||||
ARCH_DEP_CPPFLAGS = -DSOLARIS
|
||||
# socket and nsl needed by libca.a
|
||||
ARCH_DEP_LDLIBS += -lsocket -lnsl
|
||||
|
||||
# use loader's -R option
|
||||
DEPLIB_LDFLAGS += $(sort $(DEPLIB_DIRS:%=-R%))
|
||||
HDEPENDS_FLAGS_CMPLR = -xM1
|
||||
|
||||
|
||||
12
configure/os/CONFIG.solaris-x86-gnu.Common
Normal file
12
configure/os/CONFIG.solaris-x86-gnu.Common
Normal 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
|
||||
|
||||
19
configure/os/CONFIG.solaris-x86-gnu.solaris-x86-gnu
Normal file
19
configure/os/CONFIG.solaris-x86-gnu.solaris-x86-gnu
Normal 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
|
||||
@@ -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
|
||||
#-------------------------------------------------------
|
||||
|
||||
|
||||
@@ -3,76 +3,55 @@
|
||||
# $Id$
|
||||
# This file is maintained by the build community.
|
||||
#
|
||||
# Definitions for linux-x86 host archs
|
||||
# Definitions for solaris-x86 host - solaris-x86 target builds
|
||||
# Sites may override these definitions in CONFIG_SITE.solaris-x86.solaris-x86
|
||||
#-------------------------------------------------------
|
||||
|
||||
# Include definitions common to all Unix target archs
|
||||
include $(CONFIG)/os/CONFIG.Common.UnixCommon
|
||||
|
||||
OS_CLASS = solaris
|
||||
ARCH_CLASS = x86
|
||||
|
||||
SPARCWORKS = /opt/SUNWspro
|
||||
|
||||
CC = $(SPARCWORKS)/bin/cc
|
||||
CCC = $(SPARCWORKS)/bin/CC
|
||||
CPP = $(CC) -E
|
||||
RANLIB =
|
||||
# required by sun's C++ compiler
|
||||
AR = $(CCC) -xar -o
|
||||
LD = ld -r
|
||||
|
||||
#Prepare the object code for profiling with prof. (YES or NO)
|
||||
PROFILE=YES
|
||||
|
||||
# Configure OS vendor C compiler
|
||||
ACC = $(SPARCWORKS)/bin/cc
|
||||
ACC_CONFORM_CFLAGS_ANSI = -Xa
|
||||
ACC_CONFORM_CFLAGS_STRICT = -Xc -v
|
||||
ACC_CONFORM_CFLAGS_TRAD = -Xs
|
||||
ACC_PROF_CFLAGS_YES = +p
|
||||
ACC_PROF_CFLAGS_NO =
|
||||
ACC_CODE_CFLAGS = -KPIC -D_REENTRANT $(CCC_PROF_CFLAGS_$(PROFILE))
|
||||
ACC_WARN_YES =
|
||||
ACC_WARN_NO = -w
|
||||
ACC_OPT_YES = -xO4
|
||||
ACC_OPT_NO = -g
|
||||
ACC_STATIC_LDFLAGS_YES= -Bstatic
|
||||
ACC_STATIC_LDLIBS_YES= -lw -lintl -Bdynamic -ldl -lposix4 -lpthread -lthread -Bstatic -lXext -lX
|
||||
ACC_STATIC_LDLIBS_NO= -lposix4 -lpthread -lthread
|
||||
ACC_SHRLIB_LDFLAGS_YES = -G -h $@
|
||||
ACC_POSIX_CPPFLAGS = -D_POSIX_C_SOURCE=199506L -D__EXTENSIONS__
|
||||
CONFORM_CFLAGS_ANSI = -Xa -v
|
||||
CONFORM_CFLAGS_STRICT = -Xc -v
|
||||
CONFORM_CFLAGS_TRAD = -Xs
|
||||
PROF_CFLAGS_YES = +p
|
||||
PROF_CFLAGS_NO =
|
||||
CODE_CFLAGS = -KPIC $(PROF_CFLAGS_$(PROFILE))
|
||||
WARN_CFLAGS_YES =
|
||||
WARN_CFLAGS_NO = -w
|
||||
OPT_CFLAGS_YES = -xO4
|
||||
OPT_CFLAGS_NO = -g
|
||||
|
||||
# Configure OS vendor C++ compiler
|
||||
CCC = $(SPARCWORKS)/bin/CC
|
||||
CCC_CONFORM_CFLAGS_NORMAL =
|
||||
CCC_CONFORM_CFLAGS_STRICT =
|
||||
CCC_PROF_CFLAGS_YES = +p
|
||||
CCC_PROF_CFLAGS_NO =
|
||||
CCC_CODE_CFLAGS = -KPIC -D_REENTRANT $(CCC_PROF_CFLAGS_$(PROFILE))
|
||||
CCC_TEMPL_INST_FLAG =
|
||||
CCC_WARN_YES = +w
|
||||
CCC_WARN_NO =
|
||||
CCC_OPT_YES = -O
|
||||
CCC_OPT_NO = -g
|
||||
CCC_STATIC_LDFLAGS_YES= -Bstatic
|
||||
CCC_STATIC_LDLIBS_YES= -lw -lintl -Bdynamic -ldl -lposix4 -lpthread -lthread -Bstatic -lXext -lX
|
||||
CCC_STATIC_LDLIBS_NO= -lposix4 -lpthread -lthread
|
||||
CCC_SHRLIB_LDFLAGS_YES = -G -h $@
|
||||
CCC_DEPENDS_FLAG = -xM1
|
||||
CCC_POSIX_CPPFLAGS = -D_POSIX_C_SOURCE=199506L -D__EXTENSIONS_
|
||||
CONFORM_CXXFLAGS_NORMAL =
|
||||
CONFORM_CXXFLAGS_STRICT =
|
||||
PROF_CXXFLAGS_YES = +p
|
||||
PROF_CXXFLAGS_NO =
|
||||
CODE_CXXFLAGS = -KPIC $(PROF_CXXFLAGS_$(PROFILE))
|
||||
WARN_CXXFLAGS_YES = +w
|
||||
WARN_CXXFLAGS_NO =
|
||||
OPT_CXXFLAGS_YES = -O
|
||||
OPT_CXXFLAGS_NO = -g
|
||||
|
||||
ACC_CPP = cpp
|
||||
STATIC_LDFLAGS_YES= -Bstatic
|
||||
STATIC_LDFLAGS_NO=
|
||||
STATIC_LDLIBS_YES= -Bdynamic
|
||||
STATIC_LDLIBS_NO=
|
||||
|
||||
#Configure gnu compiler
|
||||
GCC = gcc
|
||||
G++ = g++
|
||||
GCC_CPP = $(GCC) -x c -E
|
||||
SHRLIB_LDFLAGS_YES = -G -h $@
|
||||
|
||||
GCC_POSIX_CPPFLAGS += -D__EXTENSIONS__
|
||||
G++_POSIX_CPPFLAGS += -D__EXTENSIONS__
|
||||
|
||||
RANLIB =
|
||||
# required by sun's C++ compiler
|
||||
AR = $(CCC) -xar -o
|
||||
|
||||
ARCH_DEP_CPPFLAGS = -DSOLARIS -D_X86_
|
||||
# socket and nsl needed by libca.a
|
||||
ARCH_DEP_LDLIBS += -lsocket -lnsl
|
||||
|
||||
# use loader's -R option
|
||||
DEPLIB_LDFLAGS += $(sort $(DEPLIB_DIRS:%=-R%))
|
||||
HDEPENDS_FLAGS_CMPLR = -xM1
|
||||
|
||||
|
||||
@@ -13,80 +13,38 @@ include $(CONFIG)/os/CONFIG.common.UnixCommon
|
||||
OS_CLASS = sun4
|
||||
ARCH_CLASS = 68k
|
||||
|
||||
CC = cc
|
||||
CCC = CC
|
||||
CPP = $(CC) -E
|
||||
RANLIB = ranlib -t
|
||||
|
||||
# required by sun's C++ compiler
|
||||
AR = $(CCC) -xar -o
|
||||
LD = ld -r
|
||||
|
||||
# Configure OS vendor C compilers
|
||||
ACC = /usr/lang/acc
|
||||
ACC_CONFORM_CFLAGS_ANSI = -Xa
|
||||
ACC_CONFORM_CFLAGS_STRICT = -Xc
|
||||
ACC_CONFORM_CFLAGS_TRAD = -Xs
|
||||
ACC_CODE_CFLAGS = -pic
|
||||
ACC_WARN_YES = -vc
|
||||
ACC_WARN_NO = -w
|
||||
ACC_OPT_YES = -O
|
||||
ACC_OPT_NO = -g
|
||||
ACC_STATIC_CFLAGS_YES= -Bstatic
|
||||
ACC_STATIC_CFLAGS_NO=
|
||||
ACC_STATIC_LDLIBS_YES=
|
||||
ACC_STATIC_LDLIBS_NO=
|
||||
#ACC_OP_SYS_LDFLAGS = -L$(SPECIAL_LANG)
|
||||
ACC_SHRLIB_LDFLAGS_YES = -assert pure-text -h $@
|
||||
CONFORM_CFLAGS_ANSI = -Xa
|
||||
CONFORM_CFLAGS_STRICT = -Xc
|
||||
CONFORM_CFLAGS_TRAD = -Xs
|
||||
CODE_CFLAGS = -pic
|
||||
WARN_CFLAGS_YES = -vc
|
||||
WARN_CFLAGS_NO = -w
|
||||
OPT_CFLAGS_YES = -O
|
||||
OPT_CFLAGS_NO = -g
|
||||
|
||||
SUNCC = cc
|
||||
SUNCC_CONFORM_CFLAGS_NORMAL = echo SUNCC_ANSI not defined
|
||||
SUNCC_CONFORM_CFLAGS_STRICT = echo SUNCC_STRICT not defined
|
||||
SUNCC_CMPLR_TRAD = $(SUNCC)
|
||||
SUNCC_CODE_CFLAGS = -pic
|
||||
SUNCC_WARN_YES =
|
||||
SUNCC_WARN_NO = -w
|
||||
SUNCC_OPT_YES = -O
|
||||
SUNCC_OPT_NO = -g
|
||||
SUNCC_STATIC_CFLAGS_YES= -Bstatic
|
||||
SUNCC_STATIC_CFLAGS_NO=
|
||||
SUNCC_STATIC_LDLIBS_YES=
|
||||
SUNCC_STATIC_LDLIBS_NO=
|
||||
SUNCC_SHRLIB_LDFLAGS_YES = -assert pure-text -h $@
|
||||
CONFORM_CXXFLAGS_NORMAL =
|
||||
CONFORM_CXXFLAGS_STRICT =
|
||||
CONFORM_CXXFLAGS_TRAD =
|
||||
CODE_CXXFLAGS = -pic
|
||||
WARN_CXXFLAGS_YES =
|
||||
WARN_CXXFLAGS_NO = -w
|
||||
OPT_CXXFLAGS_YES = -O
|
||||
OPT_CXXFLAGS_NO = -g
|
||||
|
||||
# Configure OS vendor C++ compiler
|
||||
CCC = /usr/lang/CC
|
||||
CCC_CONFORM_CFLAGS_NORMAL =
|
||||
CCC_CONFORM_CFLAGS_STRICT =
|
||||
CCC_TEMPL_INST_FLAG =
|
||||
CCC_CODE_CFLAGS = -pic
|
||||
CCC_WARN_YES =
|
||||
CCC_WARN_NO =
|
||||
CCC_TEMPL_INST_FLAG =
|
||||
CCC_WARN_YES = +w
|
||||
CCC_WARN_NO =
|
||||
CCC_OPT_YES = -O
|
||||
CCC_OPT_NO = -g
|
||||
CCC_STATIC_CFLAGS_YES= -Bstatic
|
||||
CCC_STATIC_CFLAGS_NO=
|
||||
CCC_STATIC_LDLIBS_YES=
|
||||
CCC_STATIC_LDLIBS_NO=
|
||||
CCC_DEPENDS_FLAG = -xM1
|
||||
CCC_SHRLIB_LDFLAGS_YES = -assert pure-text -h $@
|
||||
STATIC_LDFLAGS_YES= -Bstatic
|
||||
STATIC_LDFLAGS_NO=
|
||||
STATIC_LDLIBS_YES= -Bdynamic
|
||||
STATIC_LDLIBS_NO=
|
||||
|
||||
ACC_CPP = cpp
|
||||
SHRLIB_LDFLAGS_YES = -assert pure-text -h $@
|
||||
|
||||
#Configure gnu compiler
|
||||
GCC = gcc
|
||||
G++ = g++
|
||||
GCC_CPP = $(GCC) -x c -E
|
||||
|
||||
GCC_ANSI += -D__USE_FIXED_PROTOTYPES__
|
||||
GCC_STRICT += -D__USE_FIXED_PROTOTYPES__
|
||||
|
||||
ACC_ARCH_DEP_LDLIBS =
|
||||
GCC_ARCH_DEP_LDLIBS = -liberty
|
||||
ARCH_DEP_LDLIBS = $($(ANSI)_ARCH_DEP_LDLIBS) -lposix4 -lpthread -lthread
|
||||
|
||||
ARCH_DEP_CPPFLAGS = -DSUNOS4
|
||||
ARCH_DEP_CFLAGS =
|
||||
|
||||
#SPECIAL_LANG = /usr/lang/SC3.0.1
|
||||
#SPECIAL_LANG = /usr/lang/lib
|
||||
HDEPENDS_FLAGS_CMPLR = -xM1
|
||||
|
||||
|
||||
@@ -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
|
||||
#-------------------------------------------------------
|
||||
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
# $Id$
|
||||
# This file is maintained by the build community.
|
||||
#
|
||||
# Definitions for win32-x86 target arch when host arch is win32-x86 with borland compiler
|
||||
# Definitions for win32-x86-borland target arch when host arch is win32-x86-borland
|
||||
# Sites may override these definitions in CONFIG_SITE.win32-x86-borland.win32-x86-borland
|
||||
#-------------------------------------------------------
|
||||
|
||||
@@ -20,13 +20,6 @@ BORLAND_BIN = $(BORLAND)\\bin
|
||||
# Use std path variables from ms
|
||||
HOME = $(HOMEDRIVE)$(HOMEPATH)
|
||||
|
||||
#
|
||||
# You currently get Visual C++ even if you ask for GNU.
|
||||
#
|
||||
# !! borlund support needed here !!
|
||||
#
|
||||
ANSI = ACC
|
||||
CPLUSPLUS = CCC
|
||||
|
||||
#
|
||||
# "\ " forces gnu make to keep this as one token
|
||||
@@ -50,7 +43,8 @@ ARCMD = $(BORLAND_BIN)/tlib $@ $(foreach lib,$(LIBRARY_LD_OBJS),+$(lib))
|
||||
# -D_WIN32 macro defined to be consistant with Microsoft Visual C++
|
||||
# -D_RTLDLL macro defined to use Borland C++ RTL library
|
||||
CCLINKOPT = -q -tWM -tWD -a8 -D_WIN32 -D_RTLDLL
|
||||
ACC = $(BORLAND_BIN)/bcc32 $(CCLINKOPT)
|
||||
CC = $(BORLAND_BIN)/bcc32 $(CCLINKOPT)
|
||||
LD = $(BORLAND_BIN)/bcc32 -r
|
||||
|
||||
#
|
||||
# __STDC__=0 works but not as cleanly as with
|
||||
@@ -60,13 +54,13 @@ ACC = $(BORLAND_BIN)/bcc32 $(CCLINKOPT)
|
||||
# by defining NO_BORLAND_STDC in the Makefile.
|
||||
#
|
||||
ifdef NO_BORLAND_STDC
|
||||
ACC_CONFORM_CFLAGS_ANSI =
|
||||
ACC_CONFORM_CFLAGS_STRICT =
|
||||
CONFORM_CFLAGS_ANSI =
|
||||
CONFORM_CFLAGS_STRICT =
|
||||
else
|
||||
ACC_CONFORM_CFLAGS_ANSI = -D__STDC__=0
|
||||
ACC_CONFORM_CFLAGS_STRICT = -D__STDC__=0
|
||||
CONFORM_CFLAGS_ANSI = -D__STDC__=0
|
||||
CONFORM_CFLAGS_STRICT = -D__STDC__=0
|
||||
endif
|
||||
ACC_CONFORM_CFLAGS_TRAD =
|
||||
CONFORM_CFLAGS_TRAD =
|
||||
|
||||
# -w display warnings on
|
||||
# -g0 no limit to warning messages
|
||||
@@ -75,9 +69,9 @@ ACC_CONFORM_CFLAGS_TRAD =
|
||||
# -w-8012 Comparing signed and unsigned values
|
||||
# -w-8060 Possibly incorrect assignment
|
||||
# -w-8071 Conversion may lose significant digits
|
||||
ACC_WARN_YES = -w -g0 -w-8012 -w-8060 -w-8071
|
||||
WARN_CFLAGS_YES = -w -g0 -w-8012 -w-8060 -w-8071
|
||||
# -w- display warnings off
|
||||
ACC_WARN_NO = -w-
|
||||
WARN_CFLAGS_NO = -w-
|
||||
|
||||
#
|
||||
# -k- turn off standard stack frame
|
||||
@@ -86,19 +80,13 @@ ACC_WARN_NO = -w-
|
||||
# -O1 optimization for size
|
||||
# -v- turn off source debugging
|
||||
# -vi control expansion of inline functions
|
||||
ACC_OPT_YES = -k- -H- -R- -O1 -v- -vi
|
||||
OPT_CFLAGS_YES = -k- -H- -R- -O1 -v- -vi
|
||||
|
||||
#
|
||||
ACC_OPT_NO =
|
||||
|
||||
#
|
||||
# no special libs for static link
|
||||
#
|
||||
ACC_STATIC_LDLIBS_YES=
|
||||
ACC_STATIC_LDLIBS_NO=
|
||||
OPT_CFLAGS_NO =
|
||||
|
||||
# OS vendor c preprocessor
|
||||
##############ACC_CPP = $(BORLAND_BIN)/cl /E
|
||||
CPP = $(BORLAND_BIN)/cl /E
|
||||
|
||||
# Configure OS vendor C++ compiler
|
||||
#
|
||||
@@ -109,23 +97,31 @@ ACC_STATIC_LDLIBS_NO=
|
||||
# by defining NO_BORLAND_STDC in the Makefile.
|
||||
#
|
||||
CCC = $(BORLAND_BIN)/bcc32 $(CCLINKOPT)
|
||||
ifdef NO_BORLAND_STDC
|
||||
CCC_NORMAL = $(CCC)
|
||||
CCC_STRICT = $(CCC)
|
||||
else
|
||||
CCC_CONFORM_CFLAGS_NORMAL = -D__STDC__=0
|
||||
CCC_CONFORM_CFLAGS_STRICT = -D__STDC__=0
|
||||
ifndef NO_BORLAND_STDC
|
||||
CONFORM_CXXFLAGS_NORMAL = -D__STDC__=0
|
||||
CONFORM_CXXFLAGS_STRICT = -D__STDC__=0
|
||||
endif
|
||||
CCC_TEMPL_INST_FLAG =
|
||||
|
||||
# -w display warnings on
|
||||
# -g0 no limit to warning messages
|
||||
# -w-8012 Comparing signed and unsigned values
|
||||
# -w-8060 Possibly incorrect assignment
|
||||
# -w-8071 Conversion may lose significant digits
|
||||
CCC_WARN_YES = -w -g0 -w-8012 -w-8060 -w-8071
|
||||
# -w-8008 Condition is always true or always false (compile time
|
||||
# know template parameters causes this to spew garbage)
|
||||
# -w-8027 Functions containing reserved words are not expanded inline
|
||||
# (Some compilers are better than others with inline)
|
||||
# -w-8066 Unreachable code (compile time know template parameters
|
||||
# causes this to spew garbage)
|
||||
# -w-8080 'identifier' declared but never used
|
||||
# (instantiating unused static const external parameters is
|
||||
# anachronistic compiler practice)
|
||||
# -w-8004 'identifier' is assigned a value that is never used
|
||||
# (compile time know template parameters
|
||||
# causes this to spew garbage)
|
||||
WARN_CXXFLAGS_YES = -w -g0 -w-8012 -w-8060 -w-8071 -w-8008 -w-8027 -w-8066 -w-8080 -w-8004
|
||||
# -w- display warnings off
|
||||
CCC_WARN_NO = -w-
|
||||
WARN_CXXFLAGS_NO = -w-
|
||||
|
||||
#
|
||||
# -k- turn off standard stack frame
|
||||
@@ -134,16 +130,16 @@ CCC_WARN_NO = -w-
|
||||
# -O1 optimization for size
|
||||
# -v- turn off source debugging
|
||||
# -vi control expansion of inline functions
|
||||
CCC_OPT_YES = -k- -H- -R- -O1 -v- -vi
|
||||
OPT_CXXFLAGS_YES = -k- -H- -R- -O1 -v- -vi
|
||||
|
||||
#
|
||||
CCC_OPT_NO =
|
||||
OPT_CXXFLAGS_NO =
|
||||
|
||||
#
|
||||
# no special libs for static link
|
||||
#
|
||||
CCC_STATIC_LDLIBS_YES=
|
||||
CCC_STATIC_LDLIBS_NO=
|
||||
STATIC_LDLIBS_YES=
|
||||
STATIC_LDLIBS_NO=
|
||||
|
||||
PROD_VERSION=3.13
|
||||
# -c case sensitive linking
|
||||
@@ -158,7 +154,6 @@ LINK_OPT_FLAGS_NO = -c -C -Gi -Gn -Tpd -x -w-
|
||||
WIN32_DLLFLAGS = $(LINK_OPT_FLAGS_$(HOST_OPT))
|
||||
OPT_LDFLAGS =
|
||||
|
||||
|
||||
ARCH_DEP_CFLAGS=
|
||||
|
||||
# to identify the general architecture class:
|
||||
@@ -194,19 +189,8 @@ OP_SYS_LDLIBS =
|
||||
#
|
||||
# specify dll .def file only if it exists
|
||||
#
|
||||
#DLL_DEF_FLAG = $(addprefix /def:,$(wildcard ../$(LIBRARY).def))
|
||||
DLL_DEF_FLAG = $(subst /,\\,$(wildcard ../$(LIBRARY).def))
|
||||
|
||||
# HOST_OPT_FLAGS is part of CFLAGS/CXXFLAGS,
|
||||
# which in turn are used in COMPILE.c[c]
|
||||
#
|
||||
# If we compile a .c, .cc into an $(OBJ),
|
||||
# we test if this object is part of the
|
||||
# library objects LIBRARY_LD_OBJS.
|
||||
# If so, we define _WINDLL so that
|
||||
# e.g. include/shareLib.h works correctly.
|
||||
#
|
||||
HOST_OPT_FLAGS += $(subst $@, /_WINDLL, $(findstring $@,$(LIBRARY_LD_OBJS)))
|
||||
#DLL_DEF_FLAG = $(addprefix /def:,$(wildcard ../$(addsuffix .def,$(LIBRARY))))
|
||||
DLL_DEF_FLAG = $(subst /,\\,$(wildcard ../$(addsuffix .def,$(LIBRARY))))
|
||||
|
||||
#
|
||||
# A WIN32 dll has three parts:
|
||||
@@ -215,7 +199,8 @@ HOST_OPT_FLAGS += $(subst $@, /_WINDLL, $(findstring $@,$(LIBRARY_LD_OBJS)))
|
||||
# x.exp: what you need to build the dll (in no variable)
|
||||
#
|
||||
LINK.shrlib = $(WINLINK) $(WIN32_DLLFLAGS) -L$(BORLAND_LIB) -L$(BORLAND_LIB)\\Psdk c0d32.obj
|
||||
LINK.shrlib+= $(LIBRARY_LD_OBJS) , $@ ,,$(LINKLIBS) $(subst /,\\,$(SHRLIB_LDLIBS))
|
||||
LINK.shrlib+= $(LIBRARY_LD_OBJS) , $@ ,,$(LINKLIBS) $(subst /,\\,$(SHRLIB_LDLIBS)),
|
||||
LINK.shrlib+= $(DLL_DEF_FLAG),$(LIBRARY_LD_RESS)
|
||||
|
||||
|
||||
# adjust names of libraries to build
|
||||
@@ -224,7 +209,7 @@ LINK.shrlib+= $(LIBRARY_LD_OBJS) , $@ ,,$(LINKLIBS) $(subst /,\\,$(SHRLIB_LDLIB
|
||||
# in this library (may be for e.g. base/src/libCompat
|
||||
# on some archs), don't define (and build) any library!
|
||||
SHRLIB_SUFFIX=.dll
|
||||
SHRLIBNAME = $(BUILD_LIBRARY:%=%$(SHRLIB_SUFFIX))
|
||||
SHRLIBNAME_YES = $(BUILD_LIBRARY:%=%$(SHRLIB_SUFFIX))
|
||||
|
||||
|
||||
#
|
||||
@@ -252,7 +237,7 @@ OBJECT_LIB_EXT = $(OBJECT_LIB_EXT_$(STATIC_BUILD))
|
||||
|
||||
#--------------------------------------------------
|
||||
# Products dependancy definitions
|
||||
PROD_DEPLIBS = $(foreach lib,$(PROD_LIBS) $(USR_LIBS),$(firstword \
|
||||
PROD_DEPLIBS = $(foreach lib,$(PROD_LDLIBS) $(USR_LDLIBS),$(firstword \
|
||||
$($(lib)_DIR)/$(lib)$(OBJECT_LIB_EXT)))
|
||||
DEPLIB_LDLIBS = $($*_DEPLIBS) $(PROD_DEPLIBS) \
|
||||
$($*_SYS_LIBS:%=%.lib) $(SYS_PROD_LIBS:%=%.lib)
|
||||
@@ -281,7 +266,7 @@ LDFLAGS += -c -C -Gn -Tpe -x -w -L$(BORLAND_LIB) -L$(BORLAND_LIB)\\Psdk
|
||||
LINKSTARTUP = c0x32.obj
|
||||
LINKLIBS=import32.lib cw32$(LIBSUF).lib
|
||||
|
||||
LINK.cpp = $(WINLINK) $(LDFLAGS) $(LINKSTARTUP) $(PROD_LD_OBJS)
|
||||
LINK.cpp = $(WINLINK) $(LDFLAGS) $(LINKSTARTUP) $(subst /,\\,$(PROD_LD_OBJS))
|
||||
LINK.cpp += , $@ ,,$(LINKLIBS) $(subst /,\\,$(LDLIBS))
|
||||
|
||||
#--------------------------------------------------
|
||||
@@ -289,3 +274,13 @@ LINK.cpp += , $@ ,,$(LINKLIBS) $(subst /,\\,$(LDLIBS))
|
||||
# override of CONFIG_SITE default
|
||||
SHARED_LIBRARIES = YES
|
||||
|
||||
# gnu compiler used to create depends files
|
||||
HDEPENDS_FLAGS_CMPLR = -MM
|
||||
HDEPENDS.c_CMPLR = gcc
|
||||
HDEPENDS.cpp_CMPLR = g++
|
||||
|
||||
# override of CONFIG_COMMON
|
||||
HDEPENDS_INCLUDES_MKMF = $(filter-out $(BORLAND_INC),$(subst -I,,$(INCLUDES)))
|
||||
# override of CONFIG_SITE
|
||||
HOST_HDEPENDS_CMD=MKMF
|
||||
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user