mirror of
https://github.com/JetBrains/JetBrainsRuntime.git
synced 2025-12-22 09:19:37 +01:00
Compare commits
1363 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
651770b5df | ||
|
|
cb0a4b76f5 | ||
|
|
e7ceea1e53 | ||
|
|
2a504c4c16 | ||
|
|
e1d1a88f95 | ||
|
|
60349d25cd | ||
|
|
dfc4b7f412 | ||
|
|
8e4345a87e | ||
|
|
abf322bf84 | ||
|
|
0c48f0d65b | ||
|
|
3e199d591f | ||
|
|
02991139fb | ||
|
|
f3b8781442 | ||
|
|
8feafa20cf | ||
|
|
abc61ba12d | ||
|
|
111563dc52 | ||
|
|
2b7ba88d55 | ||
|
|
7460f5d8f2 | ||
|
|
2fd7bebdb7 | ||
|
|
4f54772a87 | ||
|
|
f6211bc171 | ||
|
|
2bfd92234d | ||
|
|
c38cb52efd | ||
|
|
96b24787fb | ||
|
|
6f539c5cf9 | ||
|
|
f81d1132c9 | ||
|
|
beb9aa52b3 | ||
|
|
e6a321c094 | ||
|
|
4ebc538931 | ||
|
|
3d033b4e18 | ||
|
|
5a5a67d337 | ||
|
|
59653c4b36 | ||
|
|
69efabad3d | ||
|
|
01f717df41 | ||
|
|
5803a72162 | ||
|
|
6b57ff42fd | ||
|
|
448b1098db | ||
|
|
0b3b3b9ed6 | ||
|
|
c98aa66173 | ||
|
|
afcf500d46 | ||
|
|
6e913f4649 | ||
|
|
190aa531e4 | ||
|
|
9b31b837e2 | ||
|
|
199810bcd9 | ||
|
|
df63d80a19 | ||
|
|
59a52a797c | ||
|
|
1ef600adbd | ||
|
|
1cbd6b266b | ||
|
|
f48f666a63 | ||
|
|
a6957aa760 | ||
|
|
20fa9b2cc4 | ||
|
|
f973f48305 | ||
|
|
42525fd863 | ||
|
|
f48b1f2e8f | ||
|
|
aa612222bd | ||
|
|
44e95b7411 | ||
|
|
a077a5878c | ||
|
|
c1cefe0e75 | ||
|
|
b77e6762c8 | ||
|
|
080c64de24 | ||
|
|
baa27d9142 | ||
|
|
8eab35131e | ||
|
|
6937df0b31 | ||
|
|
ce4cb9925d | ||
|
|
4c1a2f6b6e | ||
|
|
73cad1123e | ||
|
|
e3d70c337d | ||
|
|
5adb3a81b5 | ||
|
|
dd07ab44f6 | ||
|
|
c1d96f4a1f | ||
|
|
671f8109d4 | ||
|
|
94654f35c9 | ||
|
|
0d3829a2c5 | ||
|
|
f3cdc9320a | ||
|
|
0dad6706b4 | ||
|
|
3823449fe8 | ||
|
|
30b9725a31 | ||
|
|
6942ba4479 | ||
|
|
50b734a4d8 | ||
|
|
fde11e8b69 | ||
|
|
7afb6b5a4a | ||
|
|
9489b894a1 | ||
|
|
7c9e12c92e | ||
|
|
ac06cc168b | ||
|
|
5ace67716d | ||
|
|
8692686567 | ||
|
|
2a12ca457d | ||
|
|
ea434b80ea | ||
|
|
c6e510d7a0 | ||
|
|
077dc1299b | ||
|
|
9482818663 | ||
|
|
ce5788b0f2 | ||
|
|
e93b135cc8 | ||
|
|
f49b12233e | ||
|
|
3b915b0d62 | ||
|
|
cabbc476d3 | ||
|
|
0f3b43e31b | ||
|
|
e35f40ee3a | ||
|
|
2deb777286 | ||
|
|
b81c3f5efa | ||
|
|
e648855012 | ||
|
|
8ba6ed54ec | ||
|
|
95988b663c | ||
|
|
9d7c1fdb62 | ||
|
|
c4c18e2921 | ||
|
|
338d1cc8f7 | ||
|
|
4fc69c38d0 | ||
|
|
469f89911f | ||
|
|
89506cf1ed | ||
|
|
20a158cf24 | ||
|
|
5e969c6129 | ||
|
|
9ce5ab0278 | ||
|
|
6ee0576ad9 | ||
|
|
e9700f0a24 | ||
|
|
c0377fea31 | ||
|
|
561f5f44de | ||
|
|
31b21fc4a4 | ||
|
|
2ee549276e | ||
|
|
e29c74a68b | ||
|
|
c5aef988e3 | ||
|
|
6a22949b3e | ||
|
|
e505d059ae | ||
|
|
700143865e | ||
|
|
bf689f8a34 | ||
|
|
57c71a917b | ||
|
|
624dda638e | ||
|
|
9cffae904e | ||
|
|
4209b88299 | ||
|
|
15ff4f278a | ||
|
|
38cfd5d70d | ||
|
|
c17726339a | ||
|
|
55168184d6 | ||
|
|
d768df399d | ||
|
|
509ced946c | ||
|
|
3ffc20bf08 | ||
|
|
a2902a562c | ||
|
|
3a74e0568f | ||
|
|
506300d94d | ||
|
|
f5a4ed3bcc | ||
|
|
7c18f827d7 | ||
|
|
a079697817 | ||
|
|
7ce6c06c44 | ||
|
|
4c4686dd55 | ||
|
|
070f6f324c | ||
|
|
a161f6e198 | ||
|
|
c301513708 | ||
|
|
cfec5ad9f9 | ||
|
|
e482d16c43 | ||
|
|
754d67857b | ||
|
|
f3b42bf53d | ||
|
|
e77ad65c04 | ||
|
|
111b74d777 | ||
|
|
7d9ec688e0 | ||
|
|
6540497350 | ||
|
|
0324f8cbc8 | ||
|
|
ebc31d93d9 | ||
|
|
1741706a00 | ||
|
|
15459fceae | ||
|
|
bc113af571 | ||
|
|
1e46927bba | ||
|
|
d3d427483f | ||
|
|
33b2586062 | ||
|
|
13c4ad8e20 | ||
|
|
ec659dc825 | ||
|
|
aae19fd69c | ||
|
|
dc71b40a5f | ||
|
|
0aeb9d9a62 | ||
|
|
dac856d4f2 | ||
|
|
7c2b3c6ab5 | ||
|
|
2c85ca538e | ||
|
|
0c33720da2 | ||
|
|
05b0b4f2ae | ||
|
|
0ca13f7ff6 | ||
|
|
d144cbfe09 | ||
|
|
ef3de8e1f7 | ||
|
|
3669ad06b0 | ||
|
|
00d35d412b | ||
|
|
4a304171a6 | ||
|
|
9cd12c0bcd | ||
|
|
8f5b808cfe | ||
|
|
cbf5f3e4de | ||
|
|
45f7bb6a9f | ||
|
|
45a7449ceb | ||
|
|
b697d670cb | ||
|
|
ee1b80e8e5 | ||
|
|
30c157894d | ||
|
|
81b0f3f5c0 | ||
|
|
959e0b9dfb | ||
|
|
9c503c5689 | ||
|
|
5707f715aa | ||
|
|
555b593770 | ||
|
|
14732a0d27 | ||
|
|
ff47163220 | ||
|
|
825a304b38 | ||
|
|
0193199d57 | ||
|
|
2f6d883fcb | ||
|
|
fd805805a8 | ||
|
|
48ca85ec46 | ||
|
|
fe4588a87e | ||
|
|
c815908774 | ||
|
|
4012f6cd34 | ||
|
|
6d519d366e | ||
|
|
84470be578 | ||
|
|
9791a38e93 | ||
|
|
1443b70f4d | ||
|
|
ac825d35af | ||
|
|
a3cd82292c | ||
|
|
c8bd932ff3 | ||
|
|
8f952922ba | ||
|
|
fafe66921e | ||
|
|
7f5093d00d | ||
|
|
a8f637446d | ||
|
|
f46ebab88c | ||
|
|
c3da3a5048 | ||
|
|
9c6ab6372f | ||
|
|
17f17157b9 | ||
|
|
399194bb7a | ||
|
|
a46962c4c1 | ||
|
|
8694cd7c62 | ||
|
|
d76f84108f | ||
|
|
cecb628970 | ||
|
|
27720df27a | ||
|
|
ee795ec927 | ||
|
|
9d978102bc | ||
|
|
7835898d92 | ||
|
|
5e6beee12c | ||
|
|
076a67b1bf | ||
|
|
158427237e | ||
|
|
663327f408 | ||
|
|
aebf95f6f2 | ||
|
|
de52238d06 | ||
|
|
9c6aee1cdf | ||
|
|
668e9414d8 | ||
|
|
cd51c0ed25 | ||
|
|
b9d5b5cf10 | ||
|
|
bf8b18f80e | ||
|
|
ab549924e8 | ||
|
|
79a5197d1d | ||
|
|
942b3e2aae | ||
|
|
97612e5913 | ||
|
|
12a9f18dcc | ||
|
|
e1675f98d4 | ||
|
|
22db6951dc | ||
|
|
3e904497b1 | ||
|
|
a94cb97f4a | ||
|
|
df18cb7401 | ||
|
|
e969599750 | ||
|
|
58de6a8294 | ||
|
|
7bea3e0303 | ||
|
|
8326ba3235 | ||
|
|
ace6464105 | ||
|
|
378bc323c2 | ||
|
|
41f7f6302b | ||
|
|
d21a6ce41f | ||
|
|
5f68d9921d | ||
|
|
b4cbe82e26 | ||
|
|
697f151896 | ||
|
|
162d75c68c | ||
|
|
86410b610b | ||
|
|
2995eff3e3 | ||
|
|
d2449123be | ||
|
|
d856a7745c | ||
|
|
e76be10b70 | ||
|
|
9406a69dc0 | ||
|
|
acce88acb5 | ||
|
|
b0b5725863 | ||
|
|
ed13841255 | ||
|
|
a908ea8cb5 | ||
|
|
be21bbbc25 | ||
|
|
c96c4e3fa4 | ||
|
|
136be0dd92 | ||
|
|
f83ca6dc04 | ||
|
|
fa4cc616ff | ||
|
|
1fcb6f273a | ||
|
|
fc6c57d330 | ||
|
|
7a1487a726 | ||
|
|
0d25b8c4d5 | ||
|
|
7ded1f054b | ||
|
|
7daca4fc60 | ||
|
|
1b32c44aa3 | ||
|
|
867f3ba889 | ||
|
|
c82d4105ec | ||
|
|
5f0143a774 | ||
|
|
6827f384c9 | ||
|
|
30b3953b45 | ||
|
|
d3539e79ca | ||
|
|
7551efdd70 | ||
|
|
6a8b78d6db | ||
|
|
5fa0678ef1 | ||
|
|
36725334b1 | ||
|
|
10397e5d0e | ||
|
|
ac2ed39761 | ||
|
|
ac69a5f84a | ||
|
|
9e339b8ded | ||
|
|
f33961a1df | ||
|
|
40d87232e6 | ||
|
|
cb7dbaebc9 | ||
|
|
4c5ba0d841 | ||
|
|
539616f85a | ||
|
|
a1d2da174b | ||
|
|
24b07e7ae6 | ||
|
|
7ca7e599a5 | ||
|
|
72ce1c5159 | ||
|
|
f9788f6987 | ||
|
|
b972e52710 | ||
|
|
510522ff57 | ||
|
|
a1429e482e | ||
|
|
520f6fcc87 | ||
|
|
be06406cb8 | ||
|
|
5f9a26a009 | ||
|
|
ddaeb8933c | ||
|
|
191116a62e | ||
|
|
5977a2d6a7 | ||
|
|
e6f3ba89ec | ||
|
|
db677a6f75 | ||
|
|
479baa64e5 | ||
|
|
1f8105e44c | ||
|
|
3869025575 | ||
|
|
c25eebd321 | ||
|
|
ccebd55230 | ||
|
|
f9b7a3e692 | ||
|
|
3887a6d012 | ||
|
|
4bd7be25df | ||
|
|
1d56fdab49 | ||
|
|
5afc57be8e | ||
|
|
8a9ec2c624 | ||
|
|
f22e2721dc | ||
|
|
5da827856c | ||
|
|
6000901868 | ||
|
|
7bd91cdd6e | ||
|
|
299454e654 | ||
|
|
52739303db | ||
|
|
476ee44449 | ||
|
|
7c6f3c6cb2 | ||
|
|
abfc726cc4 | ||
|
|
e7ece2a742 | ||
|
|
df7b871807 | ||
|
|
95cfa1c3a7 | ||
|
|
cfdca5342c | ||
|
|
5f84978261 | ||
|
|
7c7523d968 | ||
|
|
3008f1f46e | ||
|
|
2ac69799ec | ||
|
|
df753a2942 | ||
|
|
425b53e062 | ||
|
|
7abee00e97 | ||
|
|
e565fbba32 | ||
|
|
0073cdd512 | ||
|
|
6e1303417c | ||
|
|
cfe8581b9b | ||
|
|
7ddcb409b6 | ||
|
|
533795bb75 | ||
|
|
b33087c6d3 | ||
|
|
2d533fa2a9 | ||
|
|
4659df3c49 | ||
|
|
46f9604fd6 | ||
|
|
9d5cdc4b03 | ||
|
|
9fbc16e840 | ||
|
|
39f063f94d | ||
|
|
f67d19788e | ||
|
|
1cfc57d91b | ||
|
|
9ea42aad43 | ||
|
|
fffeb599f8 | ||
|
|
13686b8d12 | ||
|
|
1ac29856e1 | ||
|
|
38d86a4aa3 | ||
|
|
9b65dbabc1 | ||
|
|
610e13c424 | ||
|
|
4ccb224ca8 | ||
|
|
9b26ab91a5 | ||
|
|
ead2757410 | ||
|
|
3cc3ab97ed | ||
|
|
5d17e0d33e | ||
|
|
76f9c11768 | ||
|
|
cbebb2687a | ||
|
|
9ace5d5b19 | ||
|
|
b0725ec91a | ||
|
|
e0ec1c804e | ||
|
|
36a08afe2a | ||
|
|
d228d3127c | ||
|
|
ffc91880e1 | ||
|
|
3a09f847bb | ||
|
|
0a228eec58 | ||
|
|
ff7281a866 | ||
|
|
0b4df63ee2 | ||
|
|
d53f00fb69 | ||
|
|
ba9ddb94fa | ||
|
|
5070eb57b6 | ||
|
|
0f2f8f179e | ||
|
|
18a83d872b | ||
|
|
d8c00fda7b | ||
|
|
e6015c7c26 | ||
|
|
b70c4be0d9 | ||
|
|
2856b9535e | ||
|
|
62610f975f | ||
|
|
6bf7f5b84f | ||
|
|
c96654e8eb | ||
|
|
b37db2a9db | ||
|
|
adc42f10ab | ||
|
|
4ea71cf959 | ||
|
|
01ee621b40 | ||
|
|
ce62364df5 | ||
|
|
8bd7cfc472 | ||
|
|
50daea0824 | ||
|
|
8e09c4566e | ||
|
|
a1b4a3f698 | ||
|
|
f30ca2fd58 | ||
|
|
6667bfa0a9 | ||
|
|
33859eda7a | ||
|
|
487391eab6 | ||
|
|
d0bf1b11b1 | ||
|
|
511e7438d7 | ||
|
|
5071c6aa0a | ||
|
|
119aa701d0 | ||
|
|
d639db1a9d | ||
|
|
abcd88ab09 | ||
|
|
140e8ff0d9 | ||
|
|
7b1a6d8811 | ||
|
|
80e0df803f | ||
|
|
a1486e0c08 | ||
|
|
314ecdc15a | ||
|
|
39ab213a0a | ||
|
|
c750a3e42c | ||
|
|
fc851bfb71 | ||
|
|
89ba3aae12 | ||
|
|
cf9dd9cf3b | ||
|
|
1f03218e56 | ||
|
|
9cbc2661e1 | ||
|
|
1e4aa8a7d4 | ||
|
|
1540e46180 | ||
|
|
b9fbc2faab | ||
|
|
7313a31b92 | ||
|
|
9599296d97 | ||
|
|
8ac9bc5858 | ||
|
|
73785e645b | ||
|
|
5a41427b37 | ||
|
|
ec9b7d57ac | ||
|
|
a59952f4c9 | ||
|
|
9ad29a120a | ||
|
|
bc231c8c92 | ||
|
|
2fd128fe15 | ||
|
|
1b91bcb342 | ||
|
|
bd71369ca5 | ||
|
|
d548c65214 | ||
|
|
301215b860 | ||
|
|
76dfe7f707 | ||
|
|
46accc5829 | ||
|
|
bb9be9ed00 | ||
|
|
c3ee1cf7f9 | ||
|
|
ce074f86c3 | ||
|
|
082b8cb318 | ||
|
|
85e4d13987 | ||
|
|
d5546e27cf | ||
|
|
45569b3a65 | ||
|
|
ce79f12b7b | ||
|
|
c0b462dd42 | ||
|
|
5721fa222a | ||
|
|
d1e88d085e | ||
|
|
afe805a586 | ||
|
|
da83df8bb7 | ||
|
|
0f98d16ad1 | ||
|
|
1bf74156a2 | ||
|
|
25f79b38d8 | ||
|
|
0603a70b79 | ||
|
|
9b4334593c | ||
|
|
99b8ef66fd | ||
|
|
b67bc26c4d | ||
|
|
82da0a1808 | ||
|
|
1e318cc920 | ||
|
|
036e845b65 | ||
|
|
9a010b5d73 | ||
|
|
4ad03aebbb | ||
|
|
a70eddca0d | ||
|
|
b7d5d72f78 | ||
|
|
153bd2fc0d | ||
|
|
172ebc873c | ||
|
|
33a5a447a8 | ||
|
|
e27deedf24 | ||
|
|
3d631d7389 | ||
|
|
1b98d6343f | ||
|
|
34ff11cc2f | ||
|
|
c4b15b06e6 | ||
|
|
5e494c370a | ||
|
|
fbc7f2bbaf | ||
|
|
47bf575dfa | ||
|
|
08fe131e34 | ||
|
|
09e21afaaa | ||
|
|
fa918cde67 | ||
|
|
179d6df8c0 | ||
|
|
84dda879d0 | ||
|
|
070f9108ff | ||
|
|
4ae1928609 | ||
|
|
804ef2d9ee | ||
|
|
de3ed511b1 | ||
|
|
844d8fc641 | ||
|
|
963cefb1bb | ||
|
|
3eb017ee50 | ||
|
|
7ece654913 | ||
|
|
1b6556acac | ||
|
|
ff8aa96e68 | ||
|
|
a403696909 | ||
|
|
cd85c690df | ||
|
|
3afc06730d | ||
|
|
89a6bc1ca9 | ||
|
|
e1fa8cca42 | ||
|
|
6fd2cebd85 | ||
|
|
802519ea53 | ||
|
|
fdf8f817d3 | ||
|
|
51e16a559d | ||
|
|
7168e2bfeb | ||
|
|
a9d159b065 | ||
|
|
f3ce53be67 | ||
|
|
e5562a8fda | ||
|
|
3770ecec6f | ||
|
|
7f44e35134 | ||
|
|
ccf7d491f7 | ||
|
|
8f129be7fb | ||
|
|
139ce2d98a | ||
|
|
7f5b035542 | ||
|
|
501bad4fd6 | ||
|
|
9ffd90edcf | ||
|
|
a863f02fc0 | ||
|
|
abf04e0d1c | ||
|
|
cba74d6208 | ||
|
|
d0df777779 | ||
|
|
d353146b32 | ||
|
|
e59111ddf3 | ||
|
|
40dbde3a86 | ||
|
|
3f08a21500 | ||
|
|
ec891da5a7 | ||
|
|
c72c2bee4b | ||
|
|
d0b33ef971 | ||
|
|
77ad1e47c1 | ||
|
|
9bf6ef1857 | ||
|
|
ea9ee98dd7 | ||
|
|
2909ee7529 | ||
|
|
52979e6206 | ||
|
|
af9f073374 | ||
|
|
63b889aba6 | ||
|
|
f0908fd16b | ||
|
|
6a27f2c096 | ||
|
|
55c9a74046 | ||
|
|
370735f2e4 | ||
|
|
8d4b04a365 | ||
|
|
6f9ada3843 | ||
|
|
ae6fa39b20 | ||
|
|
1599f28a1f | ||
|
|
106518995c | ||
|
|
10e49d5a1e | ||
|
|
a95f19a9f3 | ||
|
|
5b3f2efc2e | ||
|
|
4e648d883d | ||
|
|
02ada73e46 | ||
|
|
e323998c19 | ||
|
|
b25a3c3f11 | ||
|
|
c21cf7cf4b | ||
|
|
d0dfef0321 | ||
|
|
9ccc60ae83 | ||
|
|
8b5dadd520 | ||
|
|
323665eec5 | ||
|
|
cec41c4c9d | ||
|
|
1c49ad8a03 | ||
|
|
ef856f2fe0 | ||
|
|
c569749a21 | ||
|
|
328abbe8d8 | ||
|
|
5fa3c57f37 | ||
|
|
92c14834f4 | ||
|
|
bb8ab4aa4f | ||
|
|
fa9d6d7682 | ||
|
|
6a31970946 | ||
|
|
47d1b9ee33 | ||
|
|
dce4a696bf | ||
|
|
b78021fcd1 | ||
|
|
b11b6e4dda | ||
|
|
d5d6252e5b | ||
|
|
14c0efd947 | ||
|
|
3d0da40b0d | ||
|
|
75e511ab32 | ||
|
|
43bb0877fc | ||
|
|
4953b8bfa5 | ||
|
|
a2cb0c3029 | ||
|
|
032af13e8b | ||
|
|
20acbf2a93 | ||
|
|
ced9a44bc8 | ||
|
|
830a24d326 | ||
|
|
cc5049f41e | ||
|
|
f105bf6f5b | ||
|
|
c3f4b6ec1b | ||
|
|
36b3d034d2 | ||
|
|
8d3dc3ed37 | ||
|
|
c77eb16a79 | ||
|
|
3fc15f302b | ||
|
|
e20614ed03 | ||
|
|
e6ade0739d | ||
|
|
5cbd245bad | ||
|
|
b4dae5f577 | ||
|
|
e30e21cdf5 | ||
|
|
a362528b38 | ||
|
|
de9f63b920 | ||
|
|
3b8a1fee1d | ||
|
|
b9cba282ee | ||
|
|
8765748af2 | ||
|
|
f7d05ab615 | ||
|
|
ec17932998 | ||
|
|
25236e8d34 | ||
|
|
35bca52095 | ||
|
|
6f619e30b6 | ||
|
|
0bff632023 | ||
|
|
d2f69b4d5d | ||
|
|
5c8b083c66 | ||
|
|
1b06646e3f | ||
|
|
9eaf76fc72 | ||
|
|
30f7f59109 | ||
|
|
9dfbcbea7a | ||
|
|
8b0a1174bd | ||
|
|
c4f77e41b6 | ||
|
|
eafb7ad68c | ||
|
|
337666a80c | ||
|
|
f3f36ae094 | ||
|
|
1b000de186 | ||
|
|
4671b2e4e2 | ||
|
|
8b5551f1eb | ||
|
|
0fa6fc2279 | ||
|
|
8861552c07 | ||
|
|
4e395f3ddd | ||
|
|
7946306583 | ||
|
|
c90c187756 | ||
|
|
43a30ad483 | ||
|
|
c9eb103b7f | ||
|
|
c11ba93098 | ||
|
|
af0211c200 | ||
|
|
dac656c955 | ||
|
|
6bc84f7865 | ||
|
|
a742ba1ba3 | ||
|
|
ebf8d79496 | ||
|
|
8efd785f67 | ||
|
|
007126d010 | ||
|
|
2c453c5844 | ||
|
|
86fa49b707 | ||
|
|
69a71c999c | ||
|
|
1f16d123b1 | ||
|
|
791afc42da | ||
|
|
cd63594f4a | ||
|
|
d3428db5c5 | ||
|
|
1d3b26e52b | ||
|
|
5c89631aef | ||
|
|
2bf3afe882 | ||
|
|
a6f9704a91 | ||
|
|
a5c9da18fb | ||
|
|
59c8f5f79f | ||
|
|
f44b5b5812 | ||
|
|
74fcfe6c7e | ||
|
|
30bfc8f549 | ||
|
|
a821772a15 | ||
|
|
09e2e03986 | ||
|
|
d29ac175d5 | ||
|
|
d51673ed91 | ||
|
|
f8400651e0 | ||
|
|
6eb76c4598 | ||
|
|
a3a11340ee | ||
|
|
467c036ccf | ||
|
|
849571d5b3 | ||
|
|
94927c382b | ||
|
|
f99fb50071 | ||
|
|
90cdae9775 | ||
|
|
b93ca70b9b | ||
|
|
57096116d9 | ||
|
|
74c45d049e | ||
|
|
12558e2ef9 | ||
|
|
c83fa3fdfc | ||
|
|
5fa281c0ee | ||
|
|
156b0a12aa | ||
|
|
1081efba4f | ||
|
|
72f3f7db44 | ||
|
|
66388c03c9 | ||
|
|
2cd87d4e3a | ||
|
|
abee2d7726 | ||
|
|
43b9e261ed | ||
|
|
30b95117d5 | ||
|
|
f33bdc967a | ||
|
|
f03bd3541a | ||
|
|
e89e1b79bf | ||
|
|
a0d920bae5 | ||
|
|
1de4ad84a2 | ||
|
|
743a35d2dc | ||
|
|
892dcc25fc | ||
|
|
2836fc5d02 | ||
|
|
a43e73eb81 | ||
|
|
e6157688b4 | ||
|
|
95b987c3ac | ||
|
|
d1c86caeaa | ||
|
|
799afd934d | ||
|
|
5782866b28 | ||
|
|
a3f0f7b59c | ||
|
|
66d59b683f | ||
|
|
d07885c3c6 | ||
|
|
6274287b95 | ||
|
|
3890c64b86 | ||
|
|
e0ae7fac7c | ||
|
|
c323bcdca8 | ||
|
|
1d37e604b0 | ||
|
|
05ec1c0816 | ||
|
|
8a8eafcc47 | ||
|
|
79235d3197 | ||
|
|
d09c9a8fd3 | ||
|
|
cb15ac68aa | ||
|
|
1209eff35b | ||
|
|
da097641d1 | ||
|
|
9fc4c79d3f | ||
|
|
689eb5c788 | ||
|
|
a639e6c992 | ||
|
|
b6828ac542 | ||
|
|
24e4bf6a80 | ||
|
|
6ddf2df795 | ||
|
|
99e6dce2a2 | ||
|
|
3419a755d7 | ||
|
|
0671e90755 | ||
|
|
152a77b4f6 | ||
|
|
c7ec06ba8e | ||
|
|
f96f3e5e85 | ||
|
|
3c164a7525 | ||
|
|
2b6f4a741d | ||
|
|
9e264f222c | ||
|
|
2c60c1d450 | ||
|
|
93603c443d | ||
|
|
08c6d2dba6 | ||
|
|
c2f3bed087 | ||
|
|
f93e67f60f | ||
|
|
059e06b49f | ||
|
|
b928899267 | ||
|
|
e1c4fbda9a | ||
|
|
6c38bc48ca | ||
|
|
42b9d6bc2e | ||
|
|
39d61f89a2 | ||
|
|
c18293c806 | ||
|
|
3c0eb44a7c | ||
|
|
29d2647a0a | ||
|
|
59b883333b | ||
|
|
d69e5e7e94 | ||
|
|
c3b4f37dce | ||
|
|
6f93677a16 | ||
|
|
1fba5dd495 | ||
|
|
80a5e57301 | ||
|
|
a786537995 | ||
|
|
8b65c43971 | ||
|
|
937ae45cd8 | ||
|
|
c210a09fdf | ||
|
|
6446da199d | ||
|
|
a046e398d5 | ||
|
|
c10042bc68 | ||
|
|
440adedd51 | ||
|
|
5232221c68 | ||
|
|
9b7ddf1602 | ||
|
|
a4f6289b4f | ||
|
|
056282a67b | ||
|
|
5657eb0c6c | ||
|
|
e4dad47833 | ||
|
|
c15d5acd01 | ||
|
|
3f5f0b4dc0 | ||
|
|
6d9634a306 | ||
|
|
a9c2b784c2 | ||
|
|
97439fb4ff | ||
|
|
82a0e26723 | ||
|
|
b3582e243e | ||
|
|
577403d2ca | ||
|
|
a8ad56bd5c | ||
|
|
2c192911dd | ||
|
|
f49894d78c | ||
|
|
30c9b2b165 | ||
|
|
870bea622a | ||
|
|
1258946332 | ||
|
|
61ee75c9d4 | ||
|
|
3704715569 | ||
|
|
2829f07b30 | ||
|
|
6702bf177f | ||
|
|
be40fd7800 | ||
|
|
441d03061d | ||
|
|
6e894d5474 | ||
|
|
e559289081 | ||
|
|
106a949bb5 | ||
|
|
8fa69349e2 | ||
|
|
9102dfec84 | ||
|
|
ea01b60d82 | ||
|
|
928809708d | ||
|
|
2768349b41 | ||
|
|
d680725432 | ||
|
|
8b05b38909 | ||
|
|
1289447ac4 | ||
|
|
f1c7c499bf | ||
|
|
fad054567f | ||
|
|
c81bf9bf17 | ||
|
|
b6bd9844c4 | ||
|
|
a6e7001098 | ||
|
|
28ab3c9991 | ||
|
|
662d105a15 | ||
|
|
35d80f6a3a | ||
|
|
8d7fa09ac3 | ||
|
|
9bfccebaa3 | ||
|
|
d0a2e6776c | ||
|
|
9119f29f16 | ||
|
|
59128f6107 | ||
|
|
64a4e00654 | ||
|
|
199b7bc5b2 | ||
|
|
d71f8f6c11 | ||
|
|
53b8114278 | ||
|
|
ec4a2991dc | ||
|
|
85b827115f | ||
|
|
8514873d3d | ||
|
|
a98e5a19c0 | ||
|
|
00b5a73ca2 | ||
|
|
974838e972 | ||
|
|
c5b3a96b64 | ||
|
|
02818b03d5 | ||
|
|
c3cc27b1d8 | ||
|
|
5a902e85b6 | ||
|
|
638f43b009 | ||
|
|
e850a9fde0 | ||
|
|
b771185497 | ||
|
|
4976ad0ccf | ||
|
|
958178facc | ||
|
|
9a127e2710 | ||
|
|
0ebc10bb13 | ||
|
|
1de50427de | ||
|
|
49878e46f3 | ||
|
|
9427bd6eec | ||
|
|
85db00acd6 | ||
|
|
a3943834e1 | ||
|
|
53ea54c90f | ||
|
|
666bd54f80 | ||
|
|
f31e66f99c | ||
|
|
0707071217 | ||
|
|
ea7f040a8e | ||
|
|
7acd8858d0 | ||
|
|
84ee878ee3 | ||
|
|
b633dc9918 | ||
|
|
092bb45d80 | ||
|
|
ccc8319e5f | ||
|
|
f5bfcb05b2 | ||
|
|
daca795ff4 | ||
|
|
67b3e95477 | ||
|
|
3892973c2b | ||
|
|
5683b67955 | ||
|
|
bf884c6dff | ||
|
|
877c60e798 | ||
|
|
c0323a859a | ||
|
|
1c95ce5e42 | ||
|
|
622ac75d6b | ||
|
|
43c224b608 | ||
|
|
87062ca29f | ||
|
|
bf0106a903 | ||
|
|
d7cfaf1336 | ||
|
|
714e978aac | ||
|
|
6d0e8939c1 | ||
|
|
fafb59a0dc | ||
|
|
7beeeca1de | ||
|
|
bb40d3f9f4 | ||
|
|
5eaf5ed9bc | ||
|
|
d312aad0c1 | ||
|
|
98ac731a94 | ||
|
|
f930f9f6f6 | ||
|
|
bf6c7ea1f7 | ||
|
|
569c7fb353 | ||
|
|
92f2120b41 | ||
|
|
2b9e2e9038 | ||
|
|
4799ed65a4 | ||
|
|
2a6a2b2d0a | ||
|
|
277bb6b756 | ||
|
|
e057d60ca1 | ||
|
|
dc542c9909 | ||
|
|
2928feab6a | ||
|
|
b7f5d60a7e | ||
|
|
11dbaed93f | ||
|
|
ebdae40c34 | ||
|
|
d447f02608 | ||
|
|
0b862d6dc1 | ||
|
|
2850e97062 | ||
|
|
1d6ad94698 | ||
|
|
50319d95be | ||
|
|
74a4760171 | ||
|
|
f9f4ba0203 | ||
|
|
545cea9371 | ||
|
|
c7a1eec197 | ||
|
|
f8deb3b653 | ||
|
|
58672f238e | ||
|
|
66ebef88a0 | ||
|
|
272537ad66 | ||
|
|
95afca84d2 | ||
|
|
8c1b558a38 | ||
|
|
8e680b0d66 | ||
|
|
4744f6dd1d | ||
|
|
6532572c0b | ||
|
|
85b77bf993 | ||
|
|
c5cb5b2ac5 | ||
|
|
34876429cb | ||
|
|
226dc93377 | ||
|
|
5751fb4a86 | ||
|
|
3e1629b963 | ||
|
|
2bea67436c | ||
|
|
163d5239e1 | ||
|
|
78034a3d3b | ||
|
|
8efc0954af | ||
|
|
6dbd0de785 | ||
|
|
1c74eea15d | ||
|
|
d69cbad3f9 | ||
|
|
689ccf050d | ||
|
|
99fe6f9a78 | ||
|
|
958027e9e5 | ||
|
|
33078ffeba | ||
|
|
2b5cf7aebd | ||
|
|
6303a14f1a | ||
|
|
dc409847c8 | ||
|
|
445a917081 | ||
|
|
ed8a1e0c94 | ||
|
|
dc1cd38b85 | ||
|
|
61c91a521d | ||
|
|
b4263161d9 | ||
|
|
d115f54e18 | ||
|
|
250c83949b | ||
|
|
8161661bbb | ||
|
|
c66f24bf21 | ||
|
|
69c6b12309 | ||
|
|
b4354d6d72 | ||
|
|
a8e5c16716 | ||
|
|
02a9029229 | ||
|
|
e60b163500 | ||
|
|
af629d027c | ||
|
|
cb909e068c | ||
|
|
5e1d1487de | ||
|
|
407d05d5e8 | ||
|
|
988204b65e | ||
|
|
8b11c10364 | ||
|
|
cff2cf5eaf | ||
|
|
5a5111e51f | ||
|
|
1372b916ff | ||
|
|
cde4fd9054 | ||
|
|
8df2ceb118 | ||
|
|
a7460d5856 | ||
|
|
8e81e037e7 | ||
|
|
5b3d1ed37b | ||
|
|
31933d1f8f | ||
|
|
6087c7f96c | ||
|
|
ac8579d7f8 | ||
|
|
e187503af0 | ||
|
|
95e9cd174d | ||
|
|
b0a9998899 | ||
|
|
4ac518143c | ||
|
|
78d7be03bf | ||
|
|
fcdf022370 | ||
|
|
a551d5bf05 | ||
|
|
a71320f229 | ||
|
|
e8cf8cce56 | ||
|
|
86e6e6be73 | ||
|
|
41a3a6c5d3 | ||
|
|
664095be9f | ||
|
|
aba5b47101 | ||
|
|
6ffc2c3b69 | ||
|
|
7115a56a21 | ||
|
|
71ed60ac69 | ||
|
|
404bb0d0ac | ||
|
|
2616d09d07 | ||
|
|
1703c46f8b | ||
|
|
82c2945b95 | ||
|
|
a3e56c5b67 | ||
|
|
07d9df5a7f | ||
|
|
800499ac95 | ||
|
|
20168f092c | ||
|
|
dbdf12e6a5 | ||
|
|
0a416094b6 | ||
|
|
069f218a98 | ||
|
|
5349d9af9a | ||
|
|
325b9e4abb | ||
|
|
e0de33a847 | ||
|
|
673ab99f16 | ||
|
|
e53317616f | ||
|
|
6da51f66cd | ||
|
|
034a5cae42 | ||
|
|
7bcad978ba | ||
|
|
b9ff98b776 | ||
|
|
df1266ed6e | ||
|
|
4f63d5b7d5 | ||
|
|
a8308c6690 | ||
|
|
9240eb2ee9 | ||
|
|
9c6fd0a346 | ||
|
|
638a8b7435 | ||
|
|
c125edce88 | ||
|
|
dfda4bf46a | ||
|
|
b806440fe3 | ||
|
|
687f622f95 | ||
|
|
c04d87b88b | ||
|
|
6742077be9 | ||
|
|
9111a2a768 | ||
|
|
383070b5f8 | ||
|
|
29ad75ff83 | ||
|
|
348fa7b88e | ||
|
|
f1a031d983 | ||
|
|
a3311881b5 | ||
|
|
861168c82e | ||
|
|
2142a46875 | ||
|
|
9fbb77c394 | ||
|
|
67feae118c | ||
|
|
f9f73b74a4 | ||
|
|
4246239742 | ||
|
|
32a189c4f9 | ||
|
|
a61df2e304 | ||
|
|
fd76da6d21 | ||
|
|
add77dda1a | ||
|
|
4964702bad | ||
|
|
ee88278d34 | ||
|
|
9a65ac929d | ||
|
|
9b428e449c | ||
|
|
70b9eef84e | ||
|
|
3cf1d6ac15 | ||
|
|
fe50fa5abf | ||
|
|
84c0953dfa | ||
|
|
7e7549fdeb | ||
|
|
44dd83da70 | ||
|
|
ed1e70076b | ||
|
|
0eb37550d3 | ||
|
|
3fc6cda1a6 | ||
|
|
9fb09f41b6 | ||
|
|
2107f2eeec | ||
|
|
e2900aaf68 | ||
|
|
20852f81df | ||
|
|
0033948814 | ||
|
|
674fadf1b3 | ||
|
|
613e94ca6f | ||
|
|
b7094ba03c | ||
|
|
f03cbcc678 | ||
|
|
ca1deee4d3 | ||
|
|
1dc8937659 | ||
|
|
ab7852e129 | ||
|
|
f622d7c806 | ||
|
|
c007822f02 | ||
|
|
1612a6cb79 | ||
|
|
1131098297 | ||
|
|
d6e13af09c | ||
|
|
5f797b5bda | ||
|
|
ca86a52a6c | ||
|
|
ff772aece8 | ||
|
|
9e42e3d20a | ||
|
|
b83a25de97 | ||
|
|
1269b98a27 | ||
|
|
5ffc202206 | ||
|
|
c39cff6af7 | ||
|
|
fc6d47bc5c | ||
|
|
6e1ccb9a07 | ||
|
|
75f0f16626 | ||
|
|
0357c1c077 | ||
|
|
f6f5a14a32 | ||
|
|
b53840e998 | ||
|
|
bac4f6c7ac | ||
|
|
6a9b345420 | ||
|
|
cc590754f3 | ||
|
|
4ec2080620 | ||
|
|
0fdddc243e | ||
|
|
66bc904d36 | ||
|
|
3de3451b3a | ||
|
|
26cb79b7bb | ||
|
|
ae1d532799 | ||
|
|
2eda2d142d | ||
|
|
911637a272 | ||
|
|
da3c1a9eba | ||
|
|
09b7902e14 | ||
|
|
dc1f4fe50e | ||
|
|
248bde3e58 | ||
|
|
82266506f2 | ||
|
|
423972a7d8 | ||
|
|
54229dbc54 | ||
|
|
89ccd723ce | ||
|
|
890f9e2884 | ||
|
|
087c7441f7 | ||
|
|
ebe950642c | ||
|
|
738aef1b75 | ||
|
|
6621aee4c0 | ||
|
|
431fcd571a | ||
|
|
399b71b9f0 | ||
|
|
051c64ad4d | ||
|
|
856768a6c0 | ||
|
|
7cdb3e5017 | ||
|
|
7b092df554 | ||
|
|
ad6da56fde | ||
|
|
f5f73282c8 | ||
|
|
ec1afe7a29 | ||
|
|
44b419af51 | ||
|
|
83958f54fb | ||
|
|
0bc2963b7d | ||
|
|
b1408532df | ||
|
|
6e582b4002 | ||
|
|
a346c5d21d | ||
|
|
bea72b4aae | ||
|
|
e31aa294c3 | ||
|
|
2152b58b60 | ||
|
|
9d6d4e292b | ||
|
|
93fbade63d | ||
|
|
232b9d793f | ||
|
|
9aca39d006 | ||
|
|
47d1996c00 | ||
|
|
be5a83c8ce | ||
|
|
01d2aff838 | ||
|
|
bc99763494 | ||
|
|
524b8ef2fe | ||
|
|
7982aae1c4 | ||
|
|
4af82ec887 | ||
|
|
ab91a77f0c | ||
|
|
169afafaf7 | ||
|
|
c7cad98c9d | ||
|
|
acf5a65a36 | ||
|
|
9740abac58 | ||
|
|
5a4de97cf0 | ||
|
|
b8587b3878 | ||
|
|
b47310ebf8 | ||
|
|
dae561e3ea | ||
|
|
2c5cec930a | ||
|
|
7a1eea097c | ||
|
|
65916660b9 | ||
|
|
8118725827 | ||
|
|
0db43a9227 | ||
|
|
c24783568e | ||
|
|
e9207384c5 | ||
|
|
becccc16ec | ||
|
|
b354aa367c | ||
|
|
089b5b16e3 | ||
|
|
5ffce97ffc | ||
|
|
c444c3eee7 | ||
|
|
665445dae9 | ||
|
|
75883dceb1 | ||
|
|
247532bf34 | ||
|
|
84066778b8 | ||
|
|
6f4a99a81f | ||
|
|
61d275095c | ||
|
|
d61593bed3 | ||
|
|
42c5e60cdc | ||
|
|
6bcf877494 | ||
|
|
3da2f5af5d | ||
|
|
c9d91bd0a8 | ||
|
|
bdb9312b86 | ||
|
|
762ad9c51c | ||
|
|
ad3a8d2791 | ||
|
|
5a2f55d0e0 | ||
|
|
31ff82c1c8 | ||
|
|
83c35d376a | ||
|
|
e0e7783359 | ||
|
|
96ca36886a | ||
|
|
d471bfae9b | ||
|
|
467fe2be80 | ||
|
|
b58a00d805 | ||
|
|
a6318f2dcd | ||
|
|
17c6b98e84 | ||
|
|
65b1500ae5 | ||
|
|
6d1f314a4b | ||
|
|
f65db39c04 | ||
|
|
3cd4eaa1f0 | ||
|
|
f5af1323da | ||
|
|
4f4ddb6e5f | ||
|
|
dedae49531 | ||
|
|
b5b00d6b8f | ||
|
|
669fa7396d | ||
|
|
15d761f763 | ||
|
|
159d2cd692 | ||
|
|
868cfdb5f4 | ||
|
|
2c50355271 | ||
|
|
4ed6125359 | ||
|
|
adfdb3ed81 | ||
|
|
9181202876 | ||
|
|
b171ddacd0 | ||
|
|
952f0b9b81 | ||
|
|
a4d1ec9d5f | ||
|
|
022b52007c | ||
|
|
d20f9f51bc | ||
|
|
160ad3376d | ||
|
|
1469ebc6da | ||
|
|
3336939f08 | ||
|
|
616b1a997f | ||
|
|
249b9c657d | ||
|
|
f5ff85a77a | ||
|
|
de7b261476 | ||
|
|
51c07ae53a | ||
|
|
ae64d0bc30 | ||
|
|
7873cba6b2 | ||
|
|
063b622daf | ||
|
|
b030a36386 | ||
|
|
72c2cfef4f | ||
|
|
5dc4f00ff5 | ||
|
|
8b1bd284bc | ||
|
|
1c38082fcc | ||
|
|
5955806228 | ||
|
|
3ff8da7657 | ||
|
|
6abc189f69 | ||
|
|
01ba4cd795 | ||
|
|
27ae28ada0 | ||
|
|
e9bfe21bdf | ||
|
|
2f1ee9427a | ||
|
|
c8143a724e | ||
|
|
0615005089 | ||
|
|
7cab00227f | ||
|
|
7c5f436a8a | ||
|
|
1513128fe7 | ||
|
|
45d8e3cd09 | ||
|
|
620632fa7b | ||
|
|
0fb0730525 | ||
|
|
1eec62606e | ||
|
|
8fb3eec82e | ||
|
|
6c299173e1 | ||
|
|
96500c22d7 | ||
|
|
747169f70e | ||
|
|
0929b68ecc | ||
|
|
bf203dac41 | ||
|
|
501fe865e8 | ||
|
|
2e49137b38 | ||
|
|
7749aaf387 | ||
|
|
cab4072f8d | ||
|
|
d3efececf3 | ||
|
|
1a335eb047 | ||
|
|
8863ec439e | ||
|
|
c45d65f8eb | ||
|
|
fafabe6da0 | ||
|
|
c9021fc009 | ||
|
|
02c6e31091 | ||
|
|
56eac0155c | ||
|
|
2407655ab1 | ||
|
|
81bdd2ccc6 | ||
|
|
a8a4b778ca | ||
|
|
d1c6787aa1 | ||
|
|
5839368eee | ||
|
|
70a4d09791 | ||
|
|
f524534650 | ||
|
|
7a7270c0bd | ||
|
|
5219fbb397 | ||
|
|
9acc701280 | ||
|
|
1175eb8a27 | ||
|
|
32708baef1 | ||
|
|
16b47aa177 | ||
|
|
bd73f1cc1d | ||
|
|
c59424668d | ||
|
|
34c1a2b716 | ||
|
|
6612f2a7e6 | ||
|
|
d3cb1a4bdd | ||
|
|
60689cf49b | ||
|
|
756974b448 | ||
|
|
45109520ef | ||
|
|
0819253023 | ||
|
|
224bf60e30 | ||
|
|
448e208ddb | ||
|
|
75c70b068f | ||
|
|
0ec5b82c85 | ||
|
|
ed977156e5 | ||
|
|
8d1c6cf60e | ||
|
|
fd5b382022 | ||
|
|
f1f3aad11c | ||
|
|
d25a9c128f | ||
|
|
6e1235fe09 | ||
|
|
9852219b7e | ||
|
|
ab1010388d | ||
|
|
8dd8726505 | ||
|
|
4bc227715b | ||
|
|
e6e820c647 | ||
|
|
02db22f7e7 | ||
|
|
5cbdf8db6c | ||
|
|
8eac661507 | ||
|
|
9e05d4f813 | ||
|
|
f54e7ec9bc | ||
|
|
4738ed88a5 | ||
|
|
e088fb2b1a | ||
|
|
6fb68448cc | ||
|
|
de00cc778c | ||
|
|
7fa7f8a597 | ||
|
|
e9b8f2bab4 | ||
|
|
8fbb0e0f4a | ||
|
|
fa43b0cdd8 | ||
|
|
a7dc867057 | ||
|
|
b6f671b41e | ||
|
|
78662d3b17 | ||
|
|
6513930e7a | ||
|
|
72f4cfb2e7 | ||
|
|
e3c38523b2 | ||
|
|
a4975758bb | ||
|
|
91823a458f | ||
|
|
3c41c66fb1 | ||
|
|
73b50710f0 | ||
|
|
e83fde21ff | ||
|
|
08d82ca044 | ||
|
|
bbcff1b792 | ||
|
|
e92787f075 | ||
|
|
9a2fc5f236 | ||
|
|
214254cac5 | ||
|
|
a3fcc12dc8 | ||
|
|
7af669ecc0 | ||
|
|
d5e5ad5996 | ||
|
|
a9ef11a8d4 | ||
|
|
1d5bbbec86 | ||
|
|
ebd4f912d7 | ||
|
|
cfe349b1e0 | ||
|
|
650bd8320d | ||
|
|
a912e7557c | ||
|
|
a099202006 | ||
|
|
45df73bc12 | ||
|
|
09ff856431 | ||
|
|
daa2552a25 | ||
|
|
8987ea2bdf | ||
|
|
2a7fbdb25b | ||
|
|
e869a890ad | ||
|
|
6f12fe9039 | ||
|
|
40ce6ba310 | ||
|
|
64c2502a16 | ||
|
|
9d8e44db59 | ||
|
|
89d4179a4b | ||
|
|
4511ca18de | ||
|
|
ed9a60ae02 | ||
|
|
b6ce13798b | ||
|
|
8d2ee23293 | ||
|
|
81c085a1e2 | ||
|
|
6b52dbceb0 | ||
|
|
157ba53d27 | ||
|
|
a4523cfc7f | ||
|
|
75685a273a | ||
|
|
02e9894454 | ||
|
|
bbfe9c6e25 | ||
|
|
cc177fd515 | ||
|
|
55c503aea2 | ||
|
|
1b62d10b4b | ||
|
|
70bb8e788e | ||
|
|
08bdb35a29 | ||
|
|
0f7ff53cce | ||
|
|
2f83b52706 | ||
|
|
c5b2025c02 | ||
|
|
3ae9021b59 | ||
|
|
95832db2e5 | ||
|
|
97583c8f0d | ||
|
|
fcee5390db | ||
|
|
15070123fa | ||
|
|
098ed89645 | ||
|
|
a03f061ca2 | ||
|
|
6d0e0064bf | ||
|
|
40c94189f7 | ||
|
|
3cd36270b7 | ||
|
|
28a1130e8e | ||
|
|
5fb55770ff | ||
|
|
096686792a | ||
|
|
fa11842c27 | ||
|
|
7faffd3edc | ||
|
|
b620085c34 | ||
|
|
8fa5c69658 | ||
|
|
0f59afe906 | ||
|
|
c9fdb110ab | ||
|
|
cbc4f20d71 | ||
|
|
41613facec | ||
|
|
0a5bf67eff | ||
|
|
5e1834681a | ||
|
|
74da3063dc | ||
|
|
3e8100800a | ||
|
|
66a728edea | ||
|
|
87caad995c | ||
|
|
c50d00f9c1 | ||
|
|
63f2c9dfc8 | ||
|
|
c3c22d1d74 | ||
|
|
a4aedf8336 | ||
|
|
6b2f8098cf | ||
|
|
7f16ba284e | ||
|
|
d4979eff5b | ||
|
|
294b5f66f6 | ||
|
|
69ea97abed | ||
|
|
a2a420e7de | ||
|
|
80da503482 |
20
.hgtags
20
.hgtags
@@ -130,3 +130,23 @@ c4f9ea1ecb55ff44e0dd21d2888ead308c86a3aa jdk8-b05
|
|||||||
429da7734bf491bccde2a752fae97e9f225896dc jdk8-b06
|
429da7734bf491bccde2a752fae97e9f225896dc jdk8-b06
|
||||||
bc5710332b294676661103bb20d47d2ea3ba8def jdk8-b07
|
bc5710332b294676661103bb20d47d2ea3ba8def jdk8-b07
|
||||||
24ee504f80412770c6874836cd9e55b536427b1d jdk8-b08
|
24ee504f80412770c6874836cd9e55b536427b1d jdk8-b08
|
||||||
|
fbf3cabc9e3bb1fcf710941d777cb0400505fbe6 jdk8-b09
|
||||||
|
f651ce87127980c58e3599daba964eba2f3b4026 jdk8-b10
|
||||||
|
cc1f5ce8e504d350e0b0c28c5f84333f8d540132 jdk8-b11
|
||||||
|
86db042b3385c338e17f7664447fdc7d406dd19e jdk8-b12
|
||||||
|
4cc0ef72c812943743ef4765f1100e2fbe2b1a08 jdk8-b13
|
||||||
|
9ffaa48dbfb0f5936c2b789867d0785faec7071d jdk8-b14
|
||||||
|
b5060eae3b32fd9f884a09774338cd8186d7fafa jdk8-b15
|
||||||
|
736a63b854f321c7824b7e47890135f80aee05e3 jdk8-b16
|
||||||
|
f0eccb2946986fb9626efde7d8ed9c8192623f5c jdk8-b17
|
||||||
|
885050364691ac1ac978305c63f3368a197fb04d jdk8-b18
|
||||||
|
0ff7113a0882ec82d642cb9f0297b4e497807ced jdk8-b19
|
||||||
|
6561530ea757c3f3a6fb171c9cc7b3885cdeca85 jdk8-b20
|
||||||
|
b3a426170188f52981cf4573a2f14d487fddab0d jdk8-b21
|
||||||
|
e8f03541af27e38aafb619b96863e17f65ffe53b jdk8-b22
|
||||||
|
498124337041ad53cbaa7eb110f3d7acd6d4eac4 jdk8-b23
|
||||||
|
7d3720d8c595d1519c31e9ff7366203fc2c61350 jdk8-b24
|
||||||
|
0071a6d64113a35ba345bb1580c256de5ce17d3e jdk8-b25
|
||||||
|
6c805d8ed4e5449ea5e4d158c7bdbd7b0b70efd1 jdk8-b26
|
||||||
|
c51754cddc037b9609e202b9ed38363d8683e7a8 jdk8-b27
|
||||||
|
16ba58282d117247f480aae7a79b88141ade52a3 jdk8-b28
|
||||||
|
|||||||
@@ -130,3 +130,23 @@ b910aac18c772b823b1f7da03e2c6528725cc6de jdk8-b05
|
|||||||
28cf2aec4dd7c3c75efc1c15078522467c781a6d jdk8-b06
|
28cf2aec4dd7c3c75efc1c15078522467c781a6d jdk8-b06
|
||||||
0db7ae9f2b1017124c779bccd016c976928859a0 jdk8-b07
|
0db7ae9f2b1017124c779bccd016c976928859a0 jdk8-b07
|
||||||
fb1bc13260d76447e269e843859eb593fe2a8ab2 jdk8-b08
|
fb1bc13260d76447e269e843859eb593fe2a8ab2 jdk8-b08
|
||||||
|
8adb70647b5af5273dfe6a540f07be667cd50216 jdk8-b09
|
||||||
|
a6c4c248e8fa350c35014fa94bab5ac1a1ac3299 jdk8-b10
|
||||||
|
1defbc57940a56f0aa41e9dee87b71e8c8b71103 jdk8-b11
|
||||||
|
8e2104d565baee473895d5eba20e39f85ab4bf9f jdk8-b12
|
||||||
|
26fb81a1e9ceb9baffba216acd9ded62e9e9d5ab jdk8-b13
|
||||||
|
23aa7f2c80a2fa354c80decf03e7c2018177ef4e jdk8-b14
|
||||||
|
a4f28069d44a379cda99dd1d921d19f819726d22 jdk8-b15
|
||||||
|
4e06ae613e99549835896720c7a68c29ad5543f5 jdk8-b17
|
||||||
|
4e06ae613e99549835896720c7a68c29ad5543f5 jdk8-b16
|
||||||
|
7010bd24cdd07bc7daef80702f39124854dec36c jdk8-b18
|
||||||
|
237bc29afbfc6f56a4fe4a6008e2befb59c44bac jdk8-b19
|
||||||
|
5a5eaf6374bcbe23530899579fed17a05b7705f3 jdk8-b20
|
||||||
|
cc771d92284f71765eca14d6d08703c4af254c04 jdk8-b21
|
||||||
|
7ad075c809952e355d25030605da6af30456ed74 jdk8-b22
|
||||||
|
60d6f64a86b1e511169d264727f6d51415978df0 jdk8-b23
|
||||||
|
1a5f1d6b98d6827cdb529a4abe6e52a886d944f4 jdk8-b24
|
||||||
|
221a378e06a326f45e5d89e2123cd6323e0181d1 jdk8-b25
|
||||||
|
2accafff224ae39caf5f532c305251ba624bf2c0 jdk8-b26
|
||||||
|
1533dfab9903e4edcfead3b0192643f38c418b9b jdk8-b27
|
||||||
|
6e2541d60f4e342b5b67140271d7611643929dc3 jdk8-b28
|
||||||
|
|||||||
@@ -130,3 +130,23 @@ cc1b599b986a37cb57de4584c5e58169766ca535 jdk8-b05
|
|||||||
45c43dde7ba7f176333a51a98f086275478836fa jdk8-b06
|
45c43dde7ba7f176333a51a98f086275478836fa jdk8-b06
|
||||||
3d61f0856f349e2163bf98146465dab3b7437f63 jdk8-b07
|
3d61f0856f349e2163bf98146465dab3b7437f63 jdk8-b07
|
||||||
0d52b1c87aa8fdea7fdc9c4126ea58f95ca6b351 jdk8-b08
|
0d52b1c87aa8fdea7fdc9c4126ea58f95ca6b351 jdk8-b08
|
||||||
|
a891732c1a83082177ff7a4cf1506068d9cc0a47 jdk8-b09
|
||||||
|
cda87f7fefcee3b89742a57ce5ad9b03a54c210d jdk8-b10
|
||||||
|
0199e4fef5cc2bd234c65b93220459ef7a3bb3b1 jdk8-b11
|
||||||
|
31d70911b712c6b4e580a3110363d5f044cfed7a jdk8-b12
|
||||||
|
5b9d9b839d3d7fe02347827221c97c6d242a6f96 jdk8-b13
|
||||||
|
e59c47de1ad8982ff3b0e843773a6902b36c2337 jdk8-b14
|
||||||
|
7da69e7175a7c7564ee6d0e52255cbb8a57ef577 jdk8-b15
|
||||||
|
82dc033975bb9b553b4ef97b6d483eda8de32e0f jdk8-b17
|
||||||
|
82dc033975bb9b553b4ef97b6d483eda8de32e0f jdk8-b16
|
||||||
|
312cf15d16577ef198b033d2a4cc0a52369b7343 jdk8-b18
|
||||||
|
e1366c5d84ef984095a332bcee70b3938232d07d jdk8-b19
|
||||||
|
51d8b6cb18c0978ecfa4f33e1537d35ee01b69fa jdk8-b20
|
||||||
|
f157fc2a71a38ce44007a6f18d5b011824dce705 jdk8-b21
|
||||||
|
a11d0062c445d5f36651c78650ab88aa594bcbff jdk8-b22
|
||||||
|
5218eb256658442b62b05295aafa5b5f35252972 jdk8-b23
|
||||||
|
b98f0e6dddf987df565029a1f58417fc1844c3f3 jdk8-b24
|
||||||
|
e45d6b406d5f91ff5256a5c82456ab1e7eb8becd jdk8-b25
|
||||||
|
79f709a099f40c08f76567fa6d813f9009a69826 jdk8-b26
|
||||||
|
4fffe75e4edd39a2517f10b743941bf94edb143d jdk8-b27
|
||||||
|
2082eb35d49a9c2aab90b8d4fd31cefb7a23b82e jdk8-b28
|
||||||
|
|||||||
@@ -25,21 +25,21 @@
|
|||||||
|
|
||||||
# Properties for jprt
|
# Properties for jprt
|
||||||
|
|
||||||
# The release to build
|
# Locked down to jdk8
|
||||||
jprt.tools.default.release=jdk8
|
jprt.tools.default.release=jdk8
|
||||||
|
|
||||||
# The different build flavors we want, we override here so we just get these 2
|
# The different build flavors we want, we override here so we just get these 2
|
||||||
jprt.build.flavors=product,fastdebug
|
jprt.build.flavors=product,fastdebug
|
||||||
|
|
||||||
# Standard list of jprt build targets for this source tree
|
# Standard list of jprt build targets for this source tree
|
||||||
jprt.build.targets= \
|
jprt.build.targets= \
|
||||||
solaris_sparc_5.10-{product|fastdebug}, \
|
solaris_sparc_5.10-{product|fastdebug}, \
|
||||||
solaris_sparcv9_5.10-{product|fastdebug}, \
|
solaris_sparcv9_5.10-{product|fastdebug}, \
|
||||||
solaris_i586_5.10-{product|fastdebug}, \
|
solaris_i586_5.10-{product|fastdebug}, \
|
||||||
solaris_x64_5.10-{product|fastdebug}, \
|
solaris_x64_5.10-{product|fastdebug}, \
|
||||||
linux_i586_2.6-{product|fastdebug}, \
|
linux_i586_2.6-{product|fastdebug}, \
|
||||||
linux_x64_2.6-{product|fastdebug}, \
|
linux_x64_2.6-{product|fastdebug}, \
|
||||||
windows_i586_5.1-{product|fastdebug}, \
|
windows_i586_5.1-{product|fastdebug}, \
|
||||||
windows_x64_5.2-{product|fastdebug}
|
windows_x64_5.2-{product|fastdebug}
|
||||||
|
|
||||||
# Directories to be excluded from the source bundles
|
# Directories to be excluded from the source bundles
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (c) 2000, 2003, Oracle and/or its affiliates. All rights reserved.
|
* Copyright (c) 2000, 2011, Oracle and/or its affiliates. All rights reserved.
|
||||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||||
*
|
*
|
||||||
* This code is free software; you can redistribute it and/or modify it
|
* This code is free software; you can redistribute it and/or modify it
|
||||||
@@ -82,6 +82,6 @@ public class DynAnyFactoryImpl
|
|||||||
private String[] __ids = { "IDL:omg.org/DynamicAny/DynAnyFactory:1.0" };
|
private String[] __ids = { "IDL:omg.org/DynamicAny/DynAnyFactory:1.0" };
|
||||||
|
|
||||||
public String[] _ids() {
|
public String[] _ids() {
|
||||||
return __ids;
|
return (String[]) __ids.clone();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (c) 2000, 2003, Oracle and/or its affiliates. All rights reserved.
|
* Copyright (c) 2000, 2011, Oracle and/or its affiliates. All rights reserved.
|
||||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||||
*
|
*
|
||||||
* This code is free software; you can redistribute it and/or modify it
|
* This code is free software; you can redistribute it and/or modify it
|
||||||
@@ -195,6 +195,6 @@ abstract class DynAnyImpl extends org.omg.CORBA.LocalObject implements DynAny
|
|||||||
private String[] __ids = { "IDL:omg.org/DynamicAny/DynAny:1.0" };
|
private String[] __ids = { "IDL:omg.org/DynamicAny/DynAny:1.0" };
|
||||||
|
|
||||||
public String[] _ids() {
|
public String[] _ids() {
|
||||||
return __ids;
|
return (String[]) __ids.clone();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (c) 2000, 2004, Oracle and/or its affiliates. All rights reserved.
|
* Copyright (c) 2000, 2011, Oracle and/or its affiliates. All rights reserved.
|
||||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||||
*
|
*
|
||||||
* This code is free software; you can redistribute it and/or modify it
|
* This code is free software; you can redistribute it and/or modify it
|
||||||
@@ -423,6 +423,13 @@ public abstract class CDRInputStream
|
|||||||
impl.setByteBufferWithInfo(bbwi);
|
impl.setByteBufferWithInfo(bbwi);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* return true if our ByteBuffer is sharing/equal to bb
|
||||||
|
*/
|
||||||
|
protected final boolean isSharing(ByteBuffer bb) {
|
||||||
|
return (getByteBuffer() == bb);
|
||||||
|
}
|
||||||
|
|
||||||
public final int getBufferLength() {
|
public final int getBufferLength() {
|
||||||
return impl.getBufferLength();
|
return impl.getBufferLength();
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (c) 1997, 2004, Oracle and/or its affiliates. All rights reserved.
|
* Copyright (c) 1997, 2011, Oracle and/or its affiliates. All rights reserved.
|
||||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||||
*
|
*
|
||||||
* This code is free software; you can redistribute it and/or modify it
|
* This code is free software; you can redistribute it and/or modify it
|
||||||
@@ -2412,7 +2412,6 @@ public class CDRInputStream_1_0 extends CDRInputStreamBase
|
|||||||
|
|
||||||
if (bbwi != null && getByteBuffer() != null)
|
if (bbwi != null && getByteBuffer() != null)
|
||||||
{
|
{
|
||||||
int bbHash = System.identityHashCode(bbwi.byteBuffer);
|
|
||||||
MessageMediator messageMediator = parent.getMessageMediator();
|
MessageMediator messageMediator = parent.getMessageMediator();
|
||||||
if (messageMediator != null)
|
if (messageMediator != null)
|
||||||
{
|
{
|
||||||
@@ -2420,19 +2419,12 @@ public class CDRInputStream_1_0 extends CDRInputStreamBase
|
|||||||
(CDROutputObject)messageMediator.getOutputObject();
|
(CDROutputObject)messageMediator.getOutputObject();
|
||||||
if (outputObj != null)
|
if (outputObj != null)
|
||||||
{
|
{
|
||||||
ByteBuffer outputBb = outputObj.getByteBuffer();
|
if (outputObj.isSharing(getByteBuffer()))
|
||||||
|
|
||||||
int oBbHash = 0;
|
|
||||||
if (outputBb != null)
|
|
||||||
{
|
{
|
||||||
oBbHash = System.identityHashCode(outputBb);
|
// Set OutputStream's ByteBuffer and bbwi to null
|
||||||
if (bbHash == oBbHash) // shared?
|
// so its ByteBuffer cannot be released to the pool
|
||||||
{
|
outputObj.setByteBuffer(null);
|
||||||
// Set OutputStream's ByteBuffer and bbwi to null
|
outputObj.setByteBufferWithInfo(null);
|
||||||
// so its ByteBuffer cannot be released to the pool
|
|
||||||
outputObj.setByteBuffer(null);
|
|
||||||
outputObj.setByteBufferWithInfo(null);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (c) 2000, 2004, Oracle and/or its affiliates. All rights reserved.
|
* Copyright (c) 2000, 2011, Oracle and/or its affiliates. All rights reserved.
|
||||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||||
*
|
*
|
||||||
* This code is free software; you can redistribute it and/or modify it
|
* This code is free software; you can redistribute it and/or modify it
|
||||||
@@ -357,6 +357,13 @@ public abstract class CDROutputStream
|
|||||||
impl.setByteBuffer(byteBuffer);
|
impl.setByteBuffer(byteBuffer);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* return true if our ByteBuffer is sharing/equal to bb
|
||||||
|
*/
|
||||||
|
protected final boolean isSharing(ByteBuffer bb) {
|
||||||
|
return (getByteBuffer() == bb);
|
||||||
|
}
|
||||||
|
|
||||||
public final boolean isLittleEndian() {
|
public final boolean isLittleEndian() {
|
||||||
return impl.isLittleEndian();
|
return impl.isLittleEndian();
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (c) 1997, 2004, Oracle and/or its affiliates. All rights reserved.
|
* Copyright (c) 1997, 2011, Oracle and/or its affiliates. All rights reserved.
|
||||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||||
*
|
*
|
||||||
* This code is free software; you can redistribute it and/or modify it
|
* This code is free software; you can redistribute it and/or modify it
|
||||||
@@ -1902,7 +1902,6 @@ public class CDROutputStream_1_0 extends CDROutputStreamBase
|
|||||||
|
|
||||||
if (getByteBufferWithInfo() != null && getByteBuffer() != null)
|
if (getByteBufferWithInfo() != null && getByteBuffer() != null)
|
||||||
{
|
{
|
||||||
int bbHash = System.identityHashCode(bbwi.byteBuffer);
|
|
||||||
MessageMediator messageMediator = parent.getMessageMediator();
|
MessageMediator messageMediator = parent.getMessageMediator();
|
||||||
if (messageMediator != null)
|
if (messageMediator != null)
|
||||||
{
|
{
|
||||||
@@ -1910,19 +1909,12 @@ public class CDROutputStream_1_0 extends CDROutputStreamBase
|
|||||||
(CDRInputObject)messageMediator.getInputObject();
|
(CDRInputObject)messageMediator.getInputObject();
|
||||||
if (inputObj != null)
|
if (inputObj != null)
|
||||||
{
|
{
|
||||||
ByteBuffer inputBb = inputObj.getByteBuffer();
|
if (inputObj.isSharing(getByteBuffer()))
|
||||||
|
|
||||||
int iBbHash = 0;
|
|
||||||
if (inputBb != null)
|
|
||||||
{
|
{
|
||||||
iBbHash = System.identityHashCode(inputBb);
|
// Set InputStream's ByteBuffer and bbwi to null
|
||||||
if (bbHash == iBbHash) // shared?
|
// so its ByteBuffer cannot be released to the pool
|
||||||
{
|
inputObj.setByteBuffer(null);
|
||||||
// Set InputStream's ByteBuffer and bbwi to null
|
inputObj.setByteBufferWithInfo(null);
|
||||||
// so its ByteBuffer cannot be released to the pool
|
|
||||||
inputObj.setByteBuffer(null);
|
|
||||||
inputObj.setByteBufferWithInfo(null);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (c) 1998, 2010, Oracle and/or its affiliates. All rights reserved.
|
* Copyright (c) 1998, 2011, Oracle and/or its affiliates. All rights reserved.
|
||||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||||
*
|
*
|
||||||
* This code is free software; you can redistribute it and/or modify it
|
* This code is free software; you can redistribute it and/or modify it
|
||||||
@@ -2243,6 +2243,10 @@ public class IIOPInputStream
|
|||||||
}
|
}
|
||||||
|
|
||||||
try {
|
try {
|
||||||
|
Class fieldCl = fields[i].getClazz();
|
||||||
|
if (objectValue != null && !fieldCl.isInstance(objectValue)) {
|
||||||
|
throw new IllegalArgumentException();
|
||||||
|
}
|
||||||
bridge.putObject( o, fields[i].getFieldID(), objectValue ) ;
|
bridge.putObject( o, fields[i].getFieldID(), objectValue ) ;
|
||||||
// reflective code: fields[i].getField().set( o, objectValue ) ;
|
// reflective code: fields[i].getField().set( o, objectValue ) ;
|
||||||
} catch (IllegalArgumentException e) {
|
} catch (IllegalArgumentException e) {
|
||||||
@@ -2553,6 +2557,10 @@ public class IIOPInputStream
|
|||||||
{
|
{
|
||||||
try {
|
try {
|
||||||
Field fld = c.getDeclaredField( fieldName ) ;
|
Field fld = c.getDeclaredField( fieldName ) ;
|
||||||
|
Class fieldCl = fld.getType();
|
||||||
|
if(v != null && !fieldCl.isInstance(v)) {
|
||||||
|
throw new Exception();
|
||||||
|
}
|
||||||
long key = bridge.objectFieldOffset( fld ) ;
|
long key = bridge.objectFieldOffset( fld ) ;
|
||||||
bridge.putObject( o, key, v ) ;
|
bridge.putObject( o, key, v ) ;
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (c) 2001, 2010, Oracle and/or its affiliates. All rights reserved.
|
* Copyright (c) 2001, 2011, Oracle and/or its affiliates. All rights reserved.
|
||||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||||
*
|
*
|
||||||
* This code is free software; you can redistribute it and/or modify it
|
* This code is free software; you can redistribute it and/or modify it
|
||||||
@@ -113,6 +113,9 @@ import com.sun.corba.se.impl.protocol.giopmsgheaders.ReferenceAddr;
|
|||||||
import com.sun.corba.se.impl.transport.CorbaContactInfoListIteratorImpl;
|
import com.sun.corba.se.impl.transport.CorbaContactInfoListIteratorImpl;
|
||||||
import com.sun.corba.se.impl.util.JDKBridge;
|
import com.sun.corba.se.impl.util.JDKBridge;
|
||||||
|
|
||||||
|
import java.util.concurrent.ConcurrentMap;
|
||||||
|
import java.util.concurrent.ConcurrentHashMap;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* ClientDelegate is the RMI client-side subcontract or representation
|
* ClientDelegate is the RMI client-side subcontract or representation
|
||||||
* It implements RMI delegate as well as our internal ClientRequestDispatcher
|
* It implements RMI delegate as well as our internal ClientRequestDispatcher
|
||||||
@@ -122,6 +125,9 @@ public class CorbaClientRequestDispatcherImpl
|
|||||||
implements
|
implements
|
||||||
ClientRequestDispatcher
|
ClientRequestDispatcher
|
||||||
{
|
{
|
||||||
|
private ConcurrentMap<ContactInfo, Object> locks =
|
||||||
|
new ConcurrentHashMap<ContactInfo, Object>();
|
||||||
|
|
||||||
public OutputObject beginRequest(Object self, String opName,
|
public OutputObject beginRequest(Object self, String opName,
|
||||||
boolean isOneWay, ContactInfo contactInfo)
|
boolean isOneWay, ContactInfo contactInfo)
|
||||||
{
|
{
|
||||||
@@ -148,8 +154,21 @@ public class CorbaClientRequestDispatcherImpl
|
|||||||
|
|
||||||
// This locking is done so that multiple connections are not created
|
// This locking is done so that multiple connections are not created
|
||||||
// for the same endpoint
|
// for the same endpoint
|
||||||
//6929137 - Synchronized on contactInfo to avoid blocking across multiple endpoints
|
// 7046238 - Synchronization on a single monitor for contactInfo parameters
|
||||||
synchronized (contactInfo) {
|
// with identical hashCode(), so we lock on same monitor for equal parameters
|
||||||
|
// (which can refer to equal (in terms of equals()) but not the same objects)
|
||||||
|
|
||||||
|
Object lock = locks.get(contactInfo);
|
||||||
|
|
||||||
|
if (lock == null) {
|
||||||
|
Object newLock = new Object();
|
||||||
|
lock = locks.putIfAbsent(contactInfo, newLock);
|
||||||
|
if (lock == null) {
|
||||||
|
lock = newLock;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
synchronized (lock) {
|
||||||
if (contactInfo.isConnectionBased()) {
|
if (contactInfo.isConnectionBased()) {
|
||||||
if (contactInfo.shouldCacheConnection()) {
|
if (contactInfo.shouldCacheConnection()) {
|
||||||
connection = (CorbaConnection)
|
connection = (CorbaConnection)
|
||||||
@@ -254,7 +273,7 @@ public class CorbaClientRequestDispatcherImpl
|
|||||||
registerWaiter(messageMediator);
|
registerWaiter(messageMediator);
|
||||||
|
|
||||||
// Do connection reclaim now
|
// Do connection reclaim now
|
||||||
synchronized (contactInfo) {
|
synchronized (lock) {
|
||||||
if (contactInfo.isConnectionBased()) {
|
if (contactInfo.isConnectionBased()) {
|
||||||
if (contactInfo.shouldCacheConnection()) {
|
if (contactInfo.shouldCacheConnection()) {
|
||||||
OutboundConnectionCache connectionCache =
|
OutboundConnectionCache connectionCache =
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (c) 1999, Oracle and/or its affiliates. All rights reserved.
|
* Copyright (c) 1999, 2011, Oracle and/or its affiliates. All rights reserved.
|
||||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||||
*
|
*
|
||||||
* This code is free software; you can redistribute it and/or modify it
|
* This code is free software; you can redistribute it and/or modify it
|
||||||
@@ -138,7 +138,7 @@ public abstract class _CodeBaseImplBase extends org.omg.CORBA.portable.ObjectImp
|
|||||||
|
|
||||||
public String[] _ids ()
|
public String[] _ids ()
|
||||||
{
|
{
|
||||||
return __ids;
|
return (String[]) __ids.clone();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -6,3 +6,4 @@
|
|||||||
^src/share/tools/IdealGraphVisualizer/build/
|
^src/share/tools/IdealGraphVisualizer/build/
|
||||||
^src/share/tools/IdealGraphVisualizer/dist/
|
^src/share/tools/IdealGraphVisualizer/dist/
|
||||||
^.hgtip
|
^.hgtip
|
||||||
|
.DS_Store
|
||||||
|
|||||||
@@ -181,7 +181,7 @@ c149193c768b8b7233da4c3a3fdc0756b975848e jdk7-b143
|
|||||||
dce7d24674f4d0bed00de24f00119057fdce7cfb jdk8-b05
|
dce7d24674f4d0bed00de24f00119057fdce7cfb jdk8-b05
|
||||||
0db80d8e77fccddf5e6fa49963226b54ac7d0f62 jdk8-b06
|
0db80d8e77fccddf5e6fa49963226b54ac7d0f62 jdk8-b06
|
||||||
3f0cf875af83f55ec5e1a5cea80455315f9322a2 jdk8-b07
|
3f0cf875af83f55ec5e1a5cea80455315f9322a2 jdk8-b07
|
||||||
3a2fb61165dfc72e6de2adab1f2649a408f5e577 hs22-b01
|
0cc8a70952c368e06de2adab1f2649a408f5e577 hs22-b01
|
||||||
7c29742c41b44fb0cd5a13c7ac8834f3f2ca649e hs22-b02
|
7c29742c41b44fb0cd5a13c7ac8834f3f2ca649e hs22-b02
|
||||||
3a2fb61165dfc72e398179a2796d740c8da5b8c0 hs22-b03
|
3a2fb61165dfc72e398179a2796d740c8da5b8c0 hs22-b03
|
||||||
ce9bde819dcba4a5d2822229d9183e69c74326ca hs22-b04
|
ce9bde819dcba4a5d2822229d9183e69c74326ca hs22-b04
|
||||||
@@ -189,3 +189,42 @@ ce9bde819dcba4a5d2822229d9183e69c74326ca hs22-b04
|
|||||||
650d15d8f37255d3b805aa00c5bd1c30984b203d hs22-b06
|
650d15d8f37255d3b805aa00c5bd1c30984b203d hs22-b06
|
||||||
da883b9e6d3788057f9577e72712998ed82c9b7e hs23-b01
|
da883b9e6d3788057f9577e72712998ed82c9b7e hs23-b01
|
||||||
49ed7eacfd16616166ff066493143889741097af jdk8-b08
|
49ed7eacfd16616166ff066493143889741097af jdk8-b08
|
||||||
|
7c20d272643f47195478708eff593a9cce40fec4 jdk8-b09
|
||||||
|
e4f412d2b75d2c797acff965aa2c420e3d358f09 hs23-b02
|
||||||
|
d815de2e85e511b7deab2a83cf80c0224d011da9 jdk8-b10
|
||||||
|
4d3850d9d326ac3a9bee2d867727e954322d014e hs23-b03
|
||||||
|
4538caeef7b6cbd4302bebced805d65e68ccf301 jdk8-b11
|
||||||
|
6534482ff68ad79066dfe15dfb6d8905f09681bd hs23-b04
|
||||||
|
1d3900713a67a0a39faf4e12c9c158d55aebef87 jdk8-b12
|
||||||
|
3e609627e780736f372eb14d29bb9b5e53b21fbf hs23-b05
|
||||||
|
b92ca8e229d29004f840c67e620833d23a346761 jdk8-b13
|
||||||
|
088d09a130ff02d8f5f05e92256baabe412f0439 jdk8-b14
|
||||||
|
6c2a55d4902f202e1c2de1df17b7da083a2c31e8 hs23-b06
|
||||||
|
fde2a39ed7f39233b287fbc278f437aac06c275b jdk8-b15
|
||||||
|
d1f29d4e0bc60e8bd7ae961f1306d8ab33290212 jdk8-b17
|
||||||
|
d1f29d4e0bc60e8bd7ae961f1306d8ab33290212 jdk8-b16
|
||||||
|
6de8c9ba5907e4c5ca05ac4b8d84a8e2cbd92399 hs23-b07
|
||||||
|
a2fef924d8e6f37dac2a887315e3502876cc8e24 hs23-b08
|
||||||
|
61165f53f1656b9f99e4fb806429bf98b99d59c3 jdk8-b18
|
||||||
|
4bcf61041217f8677dcec18e90e9196acc945bba hs23-b09
|
||||||
|
9232e0ecbc2cec54dcc8f93004fb00c214446460 jdk8-b19
|
||||||
|
fe2c8764998112b7fefcd7d41599714813ae4327 jdk8-b20
|
||||||
|
9952d1c439d64c5fd4ad1236a63a62bd5a49d4c3 jdk8-b21
|
||||||
|
513351373923f74a7c91755748b95c9771e59f96 hs23-b10
|
||||||
|
24727fb37561779077fdfa5a33342246f20e5c0f jdk8-b22
|
||||||
|
dcc292399a39113957eebbd3e487b7e05e2c79fc hs23-b11
|
||||||
|
e850d8e7ea54b91c7aa656e297f0f9f38dd4c296 jdk8-b23
|
||||||
|
9e177d44b10fe92ecffa965fef9c5ac5433c1b46 hs23-b12
|
||||||
|
a80fd4f45d7aaa154ed2f86a129f3c9c4035ec7a jdk8-b24
|
||||||
|
b22de824749922986ce4d442bed029916b832807 hs23-b13
|
||||||
|
64b46f975ab82948c1e021e17775ff4fab8bc40e hs23-b14
|
||||||
|
9ad8feb5afbddec46d3cfe29fb5f73c2e99d5a43 jdk8-b25
|
||||||
|
d71e662fe03741b6de498ca2077220148405a978 hs23-b15
|
||||||
|
fd3060701216a11c0df6dcd053c6fd7c2b17a42c jdk8-b26
|
||||||
|
f92a171cf0071ca6c3fa8231d7d570377f8b2f4d hs23-b16
|
||||||
|
f92a171cf0071ca6c3fa8231d7d570377f8b2f4d hs23-b16
|
||||||
|
931e5f39e365a0d550d79148ff87a7f9e864d2e1 hs23-b16
|
||||||
|
3b24e7e01d20ca590d0f86b1222bb7c3f1a2aa2d jdk8-b27
|
||||||
|
975c4105f1e2ef1190a75b77124033f1fd4290b5 hs24-b01
|
||||||
|
b183b0863611b85dbac16f3b08b40ba978756d19 jdk8-b28
|
||||||
|
030b5306d60f140e822e4a6d301744cb110ff0c8 hs24-b02
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
#
|
#
|
||||||
# Copyright (c) 2000, 2008, Oracle and/or its affiliates. All rights reserved.
|
# Copyright (c) 2000, 2011, Oracle and/or its affiliates. All rights reserved.
|
||||||
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||||
#
|
#
|
||||||
# This code is free software; you can redistribute it and/or modify it
|
# This code is free software; you can redistribute it and/or modify it
|
||||||
@@ -84,6 +84,7 @@ sun.jvm.hotspot.debugger.windbg.ia64 \
|
|||||||
sun.jvm.hotspot.debugger.windbg.x86 \
|
sun.jvm.hotspot.debugger.windbg.x86 \
|
||||||
sun.jvm.hotspot.debugger.x86 \
|
sun.jvm.hotspot.debugger.x86 \
|
||||||
sun.jvm.hotspot.gc_implementation \
|
sun.jvm.hotspot.gc_implementation \
|
||||||
|
sun.jvm.hotspot.gc_implementation.g1 \
|
||||||
sun.jvm.hotspot.gc_implementation.parallelScavenge \
|
sun.jvm.hotspot.gc_implementation.parallelScavenge \
|
||||||
sun.jvm.hotspot.gc_implementation.shared \
|
sun.jvm.hotspot.gc_implementation.shared \
|
||||||
sun.jvm.hotspot.gc_interface \
|
sun.jvm.hotspot.gc_interface \
|
||||||
@@ -176,6 +177,9 @@ sun/jvm/hotspot/debugger/windbg/*.java \
|
|||||||
sun/jvm/hotspot/debugger/windbg/ia64/*.java \
|
sun/jvm/hotspot/debugger/windbg/ia64/*.java \
|
||||||
sun/jvm/hotspot/debugger/windbg/x86/*.java \
|
sun/jvm/hotspot/debugger/windbg/x86/*.java \
|
||||||
sun/jvm/hotspot/debugger/x86/*.java \
|
sun/jvm/hotspot/debugger/x86/*.java \
|
||||||
|
sun/jvm/hotspot/gc_implementation/g1/*.java \
|
||||||
|
sun/jvm/hotspot/gc_implementation/parallelScavenge/*.java \
|
||||||
|
sun/jvm/hotspot/gc_implementation/shared/*.java \
|
||||||
sun/jvm/hotspot/interpreter/*.java \
|
sun/jvm/hotspot/interpreter/*.java \
|
||||||
sun/jvm/hotspot/jdi/*.java \
|
sun/jvm/hotspot/jdi/*.java \
|
||||||
sun/jvm/hotspot/livejvm/*.java \
|
sun/jvm/hotspot/livejvm/*.java \
|
||||||
|
|||||||
406
hotspot/agent/src/os/bsd/MacosxDebuggerLocal.m
Normal file
406
hotspot/agent/src/os/bsd/MacosxDebuggerLocal.m
Normal file
@@ -0,0 +1,406 @@
|
|||||||
|
/*
|
||||||
|
* Copyright (c) 2002, 2007, 2011, Oracle and/or its affiliates. All rights reserved.
|
||||||
|
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||||
|
*
|
||||||
|
* This code is free software; you can redistribute it and/or modify it
|
||||||
|
* under the terms of the GNU General Public License version 2 only, as
|
||||||
|
* published by the Free Software Foundation.
|
||||||
|
*
|
||||||
|
* This code is distributed in the hope that it will be useful, but WITHOUT
|
||||||
|
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||||
|
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||||
|
* version 2 for more details (a copy is included in the LICENSE file that
|
||||||
|
* accompanied this code).
|
||||||
|
*
|
||||||
|
* You should have received a copy of the GNU General Public License version
|
||||||
|
* 2 along with this work; if not, write to the Free Software Foundation,
|
||||||
|
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||||
|
*
|
||||||
|
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||||
|
* or visit www.oracle.com if you need additional information or have any
|
||||||
|
* questions.
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include <objc/objc-runtime.h>
|
||||||
|
#import <Foundation/Foundation.h>
|
||||||
|
#import <JavaNativeFoundation/JavaNativeFoundation.h>
|
||||||
|
|
||||||
|
#include <JavaVM/jni.h>
|
||||||
|
|
||||||
|
#import <mach/mach.h>
|
||||||
|
#import <mach/mach_types.h>
|
||||||
|
#import <sys/sysctl.h>
|
||||||
|
#import <stdlib.h>
|
||||||
|
|
||||||
|
jboolean debug = JNI_FALSE;
|
||||||
|
|
||||||
|
static jfieldID symbolicatorID = 0; // set in _init0
|
||||||
|
static jfieldID taskID = 0; // set in _init0
|
||||||
|
|
||||||
|
static void putSymbolicator(JNIEnv *env, jobject this_obj, id symbolicator) {
|
||||||
|
(*env)->SetLongField(env, this_obj, symbolicatorID, (jlong)(intptr_t)symbolicator);
|
||||||
|
}
|
||||||
|
|
||||||
|
static id getSymbolicator(JNIEnv *env, jobject this_obj) {
|
||||||
|
jlong ptr = (*env)->GetLongField(env, this_obj, symbolicatorID);
|
||||||
|
return (id)(intptr_t)ptr;
|
||||||
|
}
|
||||||
|
|
||||||
|
static void putTask(JNIEnv *env, jobject this_obj, task_t task) {
|
||||||
|
(*env)->SetLongField(env, this_obj, taskID, (jlong)task);
|
||||||
|
}
|
||||||
|
|
||||||
|
static task_t getTask(JNIEnv *env, jobject this_obj) {
|
||||||
|
jlong ptr = (*env)->GetLongField(env, this_obj, taskID);
|
||||||
|
return (task_t)ptr;
|
||||||
|
}
|
||||||
|
|
||||||
|
#define CHECK_EXCEPTION_(value) if ((*env)->ExceptionOccurred(env)) { return value; }
|
||||||
|
#define CHECK_EXCEPTION if ((*env)->ExceptionOccurred(env)) { return;}
|
||||||
|
#define THROW_NEW_DEBUGGER_EXCEPTION_(str, value) { throw_new_debugger_exception(env, str); return value; }
|
||||||
|
#define THROW_NEW_DEBUGGER_EXCEPTION(str) { throw_new_debugger_exception(env, str); return;}
|
||||||
|
|
||||||
|
static void throw_new_debugger_exception(JNIEnv* env, const char* errMsg) {
|
||||||
|
(*env)->ThrowNew(env, (*env)->FindClass(env, "sun/jvm/hotspot/debugger/DebuggerException"), errMsg);
|
||||||
|
}
|
||||||
|
|
||||||
|
#if defined(__i386__)
|
||||||
|
#define hsdb_thread_state_t x86_thread_state32_t
|
||||||
|
#define hsdb_float_state_t x86_float_state32_t
|
||||||
|
#define HSDB_THREAD_STATE x86_THREAD_STATE32
|
||||||
|
#define HSDB_FLOAT_STATE x86_FLOAT_STATE32
|
||||||
|
#define HSDB_THREAD_STATE_COUNT x86_THREAD_STATE32_COUNT
|
||||||
|
#define HSDB_FLOAT_STATE_COUNT x86_FLOAT_STATE32_COUNT
|
||||||
|
#elif defined(__x86_64__)
|
||||||
|
#define hsdb_thread_state_t x86_thread_state64_t
|
||||||
|
#define hsdb_float_state_t x86_float_state64_t
|
||||||
|
#define HSDB_THREAD_STATE x86_THREAD_STATE64
|
||||||
|
#define HSDB_FLOAT_STATE x86_FLOAT_STATE64
|
||||||
|
#define HSDB_THREAD_STATE_COUNT x86_THREAD_STATE64_COUNT
|
||||||
|
#define HSDB_FLOAT_STATE_COUNT x86_FLOAT_STATE64_COUNT
|
||||||
|
#else
|
||||||
|
#error "Unsupported architecture"
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Class: sun_jvm_hotspot_debugger_bsd_BsdDebuggerLocal
|
||||||
|
* Method: init0
|
||||||
|
* Signature: ()V
|
||||||
|
*/
|
||||||
|
JNIEXPORT void JNICALL Java_sun_jvm_hotspot_debugger_bsd_BsdDebuggerLocal_init0(JNIEnv *env, jclass cls) {
|
||||||
|
symbolicatorID = (*env)->GetFieldID(env, cls, "symbolicator", "J");
|
||||||
|
taskID = (*env)->GetFieldID(env, cls, "task", "J");
|
||||||
|
CHECK_EXCEPTION;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Class: sun_jvm_hotspot_debugger_bsd_BsdDebuggerLocal
|
||||||
|
* Method: lookupByName0
|
||||||
|
* Signature: (Ljava/lang/String;Ljava/lang/String;)J
|
||||||
|
*/
|
||||||
|
JNIEXPORT jlong JNICALL Java_sun_jvm_hotspot_debugger_bsd_BsdDebuggerLocal_lookupByName0(JNIEnv *env, jobject this_obj, jstring objectName, jstring symbolName) {
|
||||||
|
jlong address = 0;
|
||||||
|
|
||||||
|
JNF_COCOA_ENTER(env);
|
||||||
|
NSString *symbolNameString = JNFJavaToNSString(env, symbolName);
|
||||||
|
|
||||||
|
if (debug) {
|
||||||
|
printf("lookupInProcess called for %s\n", [symbolNameString UTF8String]);
|
||||||
|
}
|
||||||
|
|
||||||
|
id symbolicator = getSymbolicator(env, this_obj);
|
||||||
|
if (symbolicator != nil) {
|
||||||
|
uint64_t (*dynamicCall)(id, SEL, NSString *) = (uint64_t (*)(id, SEL, NSString *))&objc_msgSend;
|
||||||
|
address = (jlong) dynamicCall(symbolicator, @selector(addressForSymbol:), symbolNameString);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (debug) {
|
||||||
|
printf("address of symbol %s = %llx\n", [symbolNameString UTF8String], address);
|
||||||
|
}
|
||||||
|
JNF_COCOA_EXIT(env);
|
||||||
|
|
||||||
|
return address;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Class: sun_jvm_hotspot_debugger_bsd_BsdDebuggerLocal
|
||||||
|
* Method: readBytesFromProcess0
|
||||||
|
* Signature: (JJ)Lsun/jvm/hotspot/debugger/ReadResult;
|
||||||
|
*/
|
||||||
|
JNIEXPORT jbyteArray JNICALL Java_sun_jvm_hotspot_debugger_bsd_BsdDebuggerLocal_readBytesFromProcess0(JNIEnv *env, jobject this_obj, jlong addr, jlong numBytes) {
|
||||||
|
if (debug) printf("readBytesFromProcess called. addr = %llx numBytes = %lld\n", addr, numBytes);
|
||||||
|
|
||||||
|
// must allocate storage instead of using former parameter buf
|
||||||
|
jboolean isCopy;
|
||||||
|
jbyteArray array;
|
||||||
|
jbyte *bufPtr;
|
||||||
|
|
||||||
|
array = (*env)->NewByteArray(env, numBytes);
|
||||||
|
CHECK_EXCEPTION_(0);
|
||||||
|
|
||||||
|
unsigned long alignedAddress;
|
||||||
|
unsigned long alignedLength;
|
||||||
|
kern_return_t result;
|
||||||
|
vm_offset_t *pages;
|
||||||
|
int *mapped;
|
||||||
|
long pageCount;
|
||||||
|
uint byteCount;
|
||||||
|
int i;
|
||||||
|
unsigned long remaining;
|
||||||
|
|
||||||
|
alignedAddress = trunc_page(addr);
|
||||||
|
if (addr != alignedAddress) {
|
||||||
|
alignedLength += addr - alignedAddress;
|
||||||
|
}
|
||||||
|
alignedLength = round_page(numBytes);
|
||||||
|
pageCount = alignedLength/vm_page_size;
|
||||||
|
|
||||||
|
// Allocate storage for pages and flags.
|
||||||
|
pages = malloc(pageCount * sizeof(vm_offset_t));
|
||||||
|
mapped = calloc(pageCount, sizeof(int));
|
||||||
|
|
||||||
|
task_t gTask = getTask(env, this_obj);
|
||||||
|
// Try to read each of the pages.
|
||||||
|
for (i = 0; i < pageCount; i++) {
|
||||||
|
result = vm_read(gTask, alignedAddress + i*vm_page_size, vm_page_size,
|
||||||
|
&pages[i], &byteCount);
|
||||||
|
mapped[i] = (result == KERN_SUCCESS);
|
||||||
|
// assume all failures are unmapped pages
|
||||||
|
}
|
||||||
|
|
||||||
|
if (debug) fprintf(stderr, "%ld pages\n", pageCount);
|
||||||
|
|
||||||
|
remaining = numBytes;
|
||||||
|
|
||||||
|
for (i = 0; i < pageCount; i++) {
|
||||||
|
unsigned long len = vm_page_size;
|
||||||
|
unsigned long start = 0;
|
||||||
|
|
||||||
|
if (i == 0) {
|
||||||
|
start = addr - alignedAddress;
|
||||||
|
len = vm_page_size - start;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (i == (pageCount - 1)) {
|
||||||
|
len = remaining;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (mapped[i]) {
|
||||||
|
if (debug) fprintf(stderr, "page %d mapped (len %ld start %ld)\n", i, len, start);
|
||||||
|
(*env)->SetByteArrayRegion(env, array, 0, len, ((jbyte *) pages[i] + start));
|
||||||
|
vm_deallocate(mach_task_self(), pages[i], vm_page_size);
|
||||||
|
}
|
||||||
|
|
||||||
|
remaining -= len;
|
||||||
|
}
|
||||||
|
|
||||||
|
free (pages);
|
||||||
|
free (mapped);
|
||||||
|
return array;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Class: sun_jvm_hotspot_debugger_macosx_MacOSXDebuggerLocal
|
||||||
|
* Method: getThreadIntegerRegisterSet0
|
||||||
|
* Signature: (I)[J
|
||||||
|
*/
|
||||||
|
JNIEXPORT jlongArray JNICALL Java_sun_jvm_hotspot_debugger_bsd_BsdDebuggerLocal_getThreadIntegerRegisterSet0(JNIEnv *env, jobject this_obj, jint lwp_id) {
|
||||||
|
if (debug)
|
||||||
|
printf("getThreadRegisterSet0 called\n");
|
||||||
|
|
||||||
|
kern_return_t result;
|
||||||
|
thread_t tid;
|
||||||
|
mach_msg_type_number_t count = HSDB_THREAD_STATE_COUNT;
|
||||||
|
hsdb_thread_state_t state;
|
||||||
|
unsigned int *r;
|
||||||
|
int i;
|
||||||
|
jlongArray registerArray;
|
||||||
|
jlong *primitiveArray;
|
||||||
|
|
||||||
|
tid = lwp_id;
|
||||||
|
|
||||||
|
result = thread_get_state(tid, HSDB_THREAD_STATE, (thread_state_t)&state, &count);
|
||||||
|
|
||||||
|
if (result != KERN_SUCCESS) {
|
||||||
|
if (debug)
|
||||||
|
printf("getregs: thread_get_state(%d) failed (%d)\n", tid, result);
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
|
|
||||||
|
// 40 32-bit registers on ppc, 16 on x86.
|
||||||
|
// Output order is the same as the order in the ppc_thread_state/i386_thread_state struct.
|
||||||
|
#if defined(__i386__)
|
||||||
|
r = (unsigned int *)&state;
|
||||||
|
registerArray = (*env)->NewLongArray(env, 8);
|
||||||
|
primitiveArray = (*env)->GetLongArrayElements(env, registerArray, NULL);
|
||||||
|
primitiveArray[0] = r[0]; // eax
|
||||||
|
primitiveArray[1] = r[2]; // ecx
|
||||||
|
primitiveArray[2] = r[3]; // edx
|
||||||
|
primitiveArray[3] = r[1]; // ebx
|
||||||
|
primitiveArray[4] = r[7]; // esp
|
||||||
|
primitiveArray[5] = r[6]; // ebp
|
||||||
|
primitiveArray[6] = r[5]; // esi
|
||||||
|
primitiveArray[7] = r[4]; // edi
|
||||||
|
(*env)->ReleaseLongArrayElements(env, registerArray, primitiveArray, 0);
|
||||||
|
#elif defined(__x86_64__)
|
||||||
|
/* From AMD64ThreadContext.java
|
||||||
|
public static final int R15 = 0;
|
||||||
|
public static final int R14 = 1;
|
||||||
|
public static final int R13 = 2;
|
||||||
|
public static final int R12 = 3;
|
||||||
|
public static final int R11 = 4;
|
||||||
|
public static final int R10 = 5;
|
||||||
|
public static final int R9 = 6;
|
||||||
|
public static final int R8 = 7;
|
||||||
|
public static final int RDI = 8;
|
||||||
|
public static final int RSI = 9;
|
||||||
|
public static final int RBP = 10;
|
||||||
|
public static final int RBX = 11;
|
||||||
|
public static final int RDX = 12;
|
||||||
|
public static final int RCX = 13;
|
||||||
|
public static final int RAX = 14;
|
||||||
|
public static final int TRAPNO = 15;
|
||||||
|
public static final int ERR = 16;
|
||||||
|
public static final int RIP = 17;
|
||||||
|
public static final int CS = 18;
|
||||||
|
public static final int RFL = 19;
|
||||||
|
public static final int RSP = 20;
|
||||||
|
public static final int SS = 21;
|
||||||
|
public static final int FS = 22;
|
||||||
|
public static final int GS = 23;
|
||||||
|
public static final int ES = 24;
|
||||||
|
public static final int DS = 25;
|
||||||
|
public static final int FSBASE = 26;
|
||||||
|
public static final int GSBASE = 27;
|
||||||
|
*/
|
||||||
|
// 64 bit
|
||||||
|
if (debug) printf("Getting threads for a 64-bit process\n");
|
||||||
|
registerArray = (*env)->NewLongArray(env, 28);
|
||||||
|
primitiveArray = (*env)->GetLongArrayElements(env, registerArray, NULL);
|
||||||
|
|
||||||
|
primitiveArray[0] = state.__r15;
|
||||||
|
primitiveArray[1] = state.__r14;
|
||||||
|
primitiveArray[2] = state.__r13;
|
||||||
|
primitiveArray[3] = state.__r12;
|
||||||
|
primitiveArray[4] = state.__r11;
|
||||||
|
primitiveArray[5] = state.__r10;
|
||||||
|
primitiveArray[6] = state.__r9;
|
||||||
|
primitiveArray[7] = state.__r8;
|
||||||
|
primitiveArray[8] = state.__rdi;
|
||||||
|
primitiveArray[9] = state.__rsi;
|
||||||
|
primitiveArray[10] = state.__rbp;
|
||||||
|
primitiveArray[11] = state.__rbx;
|
||||||
|
primitiveArray[12] = state.__rdx;
|
||||||
|
primitiveArray[13] = state.__rcx;
|
||||||
|
primitiveArray[14] = state.__rax;
|
||||||
|
primitiveArray[15] = 0; // trapno ?
|
||||||
|
primitiveArray[16] = 0; // err ?
|
||||||
|
primitiveArray[17] = state.__rip;
|
||||||
|
primitiveArray[18] = state.__cs;
|
||||||
|
primitiveArray[19] = state.__rflags;
|
||||||
|
primitiveArray[20] = state.__rsp;
|
||||||
|
primitiveArray[21] = 0; // We don't have SS
|
||||||
|
primitiveArray[22] = state.__fs;
|
||||||
|
primitiveArray[23] = state.__gs;
|
||||||
|
primitiveArray[24] = 0;
|
||||||
|
primitiveArray[25] = 0;
|
||||||
|
primitiveArray[26] = 0;
|
||||||
|
primitiveArray[27] = 0;
|
||||||
|
|
||||||
|
if (debug) printf("set registers\n");
|
||||||
|
|
||||||
|
(*env)->ReleaseLongArrayElements(env, registerArray, primitiveArray, 0);
|
||||||
|
#else
|
||||||
|
#error Unsupported architecture
|
||||||
|
#endif
|
||||||
|
|
||||||
|
return registerArray;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Class: sun_jvm_hotspot_debugger_macosx_MacOSXDebuggerLocal
|
||||||
|
* Method: translateTID0
|
||||||
|
* Signature: (I)I
|
||||||
|
*/
|
||||||
|
JNIEXPORT jint JNICALL
|
||||||
|
Java_sun_jvm_hotspot_debugger_macosx_MacOSXDebuggerLocal_translateTID0(JNIEnv *env, jobject this_obj, jint tid) {
|
||||||
|
if (debug)
|
||||||
|
printf("translateTID0 called on tid = 0x%x\n", (int)tid);
|
||||||
|
|
||||||
|
kern_return_t result;
|
||||||
|
thread_t foreign_tid, usable_tid;
|
||||||
|
mach_msg_type_name_t type;
|
||||||
|
|
||||||
|
foreign_tid = tid;
|
||||||
|
|
||||||
|
task_t gTask = getTask(env, this_obj);
|
||||||
|
result = mach_port_extract_right(gTask, foreign_tid,
|
||||||
|
MACH_MSG_TYPE_COPY_SEND,
|
||||||
|
&usable_tid, &type);
|
||||||
|
if (result != KERN_SUCCESS)
|
||||||
|
return -1;
|
||||||
|
|
||||||
|
if (debug)
|
||||||
|
printf("translateTID0: 0x%x -> 0x%x\n", foreign_tid, usable_tid);
|
||||||
|
|
||||||
|
return (jint) usable_tid;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Class: sun_jvm_hotspot_debugger_bsd_BsdDebuggerLocal
|
||||||
|
* Method: attach0
|
||||||
|
* Signature: (I)V
|
||||||
|
*/
|
||||||
|
JNIEXPORT void JNICALL Java_sun_jvm_hotspot_debugger_bsd_BsdDebuggerLocal_attach0__I(JNIEnv *env, jobject this_obj, jint jpid) {
|
||||||
|
JNF_COCOA_ENTER(env);
|
||||||
|
if (getenv("JAVA_SAPROC_DEBUG") != NULL)
|
||||||
|
debug = JNI_TRUE;
|
||||||
|
else
|
||||||
|
debug = JNI_FALSE;
|
||||||
|
if (debug) printf("attach0 called for jpid=%d\n", (int)jpid);
|
||||||
|
|
||||||
|
kern_return_t result;
|
||||||
|
task_t gTask = 0;
|
||||||
|
result = task_for_pid(mach_task_self(), jpid, &gTask);
|
||||||
|
if (result != KERN_SUCCESS) {
|
||||||
|
fprintf(stderr, "attach: task_for_pid(%d) failed (%d)\n", (int)jpid, result);
|
||||||
|
THROW_NEW_DEBUGGER_EXCEPTION("Can't attach to the process");
|
||||||
|
}
|
||||||
|
putTask(env, this_obj, gTask);
|
||||||
|
|
||||||
|
id symbolicator = nil;
|
||||||
|
id jrsSymbolicator = objc_lookUpClass("JRSSymbolicator");
|
||||||
|
if (jrsSymbolicator != nil) {
|
||||||
|
id (*dynamicCall)(id, SEL, pid_t) = (id (*)(id, SEL, pid_t))&objc_msgSend;
|
||||||
|
symbolicator = dynamicCall(jrsSymbolicator, @selector(symbolicatorForPid:), (pid_t)jpid);
|
||||||
|
}
|
||||||
|
if (symbolicator != nil) {
|
||||||
|
CFRetain(symbolicator); // pin symbolicator while in java heap
|
||||||
|
}
|
||||||
|
|
||||||
|
putSymbolicator(env, this_obj, symbolicator);
|
||||||
|
if (symbolicator == nil) {
|
||||||
|
THROW_NEW_DEBUGGER_EXCEPTION("Can't attach symbolicator to the process");
|
||||||
|
}
|
||||||
|
|
||||||
|
JNF_COCOA_EXIT(env);
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Class: sun_jvm_hotspot_debugger_bsd_BsdDebuggerLocal
|
||||||
|
* Method: detach0
|
||||||
|
* Signature: ()V
|
||||||
|
*/
|
||||||
|
JNIEXPORT void JNICALL Java_sun_jvm_hotspot_debugger_bsd_BsdDebuggerLocal_detach0(JNIEnv *env, jobject this_obj) {
|
||||||
|
JNF_COCOA_ENTER(env);
|
||||||
|
if (debug) printf("detach0 called\n");
|
||||||
|
|
||||||
|
task_t gTask = getTask(env, this_obj);
|
||||||
|
mach_port_deallocate(mach_task_self(), gTask);
|
||||||
|
id symbolicator = getSymbolicator(env, this_obj);
|
||||||
|
if (symbolicator != nil) {
|
||||||
|
CFRelease(symbolicator);
|
||||||
|
}
|
||||||
|
JNF_COCOA_EXIT(env);
|
||||||
|
}
|
||||||
@@ -32,7 +32,6 @@ SOURCES = salibelf.c \
|
|||||||
libproc_impl.c \
|
libproc_impl.c \
|
||||||
ps_proc.c \
|
ps_proc.c \
|
||||||
ps_core.c \
|
ps_core.c \
|
||||||
hsearch_r.c \
|
|
||||||
BsdDebuggerLocal.c
|
BsdDebuggerLocal.c
|
||||||
|
|
||||||
INCLUDES = -I${JAVA_HOME}/include -I${JAVA_HOME}/include/$(shell uname -s | tr "[:upper:]" "[:lower:]")
|
INCLUDES = -I${JAVA_HOME}/include -I${JAVA_HOME}/include/$(shell uname -s | tr "[:upper:]" "[:lower:]")
|
||||||
|
|||||||
@@ -116,7 +116,7 @@ struct symtab* build_symtab(int fd) {
|
|||||||
|
|
||||||
if (shdr->sh_type == symsection) {
|
if (shdr->sh_type == symsection) {
|
||||||
ELF_SYM *syms;
|
ELF_SYM *syms;
|
||||||
int j, n, rslt;
|
int j, n;
|
||||||
size_t size;
|
size_t size;
|
||||||
|
|
||||||
// FIXME: there could be multiple data buffers associated with the
|
// FIXME: there could be multiple data buffers associated with the
|
||||||
@@ -138,6 +138,8 @@ struct symtab* build_symtab(int fd) {
|
|||||||
// manipulate the hash table.
|
// manipulate the hash table.
|
||||||
symtab->hash_table = dbopen(NULL, O_CREAT | O_RDWR, 0600, DB_HASH, NULL);
|
symtab->hash_table = dbopen(NULL, O_CREAT | O_RDWR, 0600, DB_HASH, NULL);
|
||||||
// guarantee(symtab->hash_table, "unexpected failure: dbopen");
|
// guarantee(symtab->hash_table, "unexpected failure: dbopen");
|
||||||
|
if (symtab->hash_table == NULL)
|
||||||
|
goto bad;
|
||||||
|
|
||||||
// shdr->sh_link points to the section that contains the actual strings
|
// shdr->sh_link points to the section that contains the actual strings
|
||||||
// for symbol names. the st_name field in ELF_SYM is just the
|
// for symbol names. the st_name field in ELF_SYM is just the
|
||||||
@@ -145,11 +147,15 @@ struct symtab* build_symtab(int fd) {
|
|||||||
// strings will not be destroyed by elf_end.
|
// strings will not be destroyed by elf_end.
|
||||||
size = scn_cache[shdr->sh_link].c_shdr->sh_size;
|
size = scn_cache[shdr->sh_link].c_shdr->sh_size;
|
||||||
symtab->strs = malloc(size);
|
symtab->strs = malloc(size);
|
||||||
|
if (symtab->strs == NULL)
|
||||||
|
goto bad;
|
||||||
memcpy(symtab->strs, scn_cache[shdr->sh_link].c_data, size);
|
memcpy(symtab->strs, scn_cache[shdr->sh_link].c_data, size);
|
||||||
|
|
||||||
// allocate memory for storing symbol offset and size;
|
// allocate memory for storing symbol offset and size;
|
||||||
symtab->num_symbols = n;
|
symtab->num_symbols = n;
|
||||||
symtab->symbols = calloc(n , sizeof(*symtab->symbols));
|
symtab->symbols = calloc(n , sizeof(*symtab->symbols));
|
||||||
|
if (symtab->symbols == NULL)
|
||||||
|
goto bad;
|
||||||
|
|
||||||
// copy symbols info our symtab and enter them info the hash table
|
// copy symbols info our symtab and enter them info the hash table
|
||||||
for (j = 0; j < n; j++, syms++) {
|
for (j = 0; j < n; j++, syms++) {
|
||||||
@@ -175,6 +181,11 @@ struct symtab* build_symtab(int fd) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
goto quit;
|
||||||
|
|
||||||
|
bad:
|
||||||
|
destroy_symtab(symtab);
|
||||||
|
symtab = NULL;
|
||||||
|
|
||||||
quit:
|
quit:
|
||||||
if (shbuf) free(shbuf);
|
if (shbuf) free(shbuf);
|
||||||
@@ -195,7 +206,7 @@ void destroy_symtab(struct symtab* symtab) {
|
|||||||
if (symtab->strs) free(symtab->strs);
|
if (symtab->strs) free(symtab->strs);
|
||||||
if (symtab->symbols) free(symtab->symbols);
|
if (symtab->symbols) free(symtab->symbols);
|
||||||
if (symtab->hash_table) {
|
if (symtab->hash_table) {
|
||||||
symtab->hash_table->close(symtab->hash_table);
|
(*symtab->hash_table->close)(symtab->hash_table);
|
||||||
}
|
}
|
||||||
free(symtab);
|
free(symtab);
|
||||||
}
|
}
|
||||||
@@ -219,7 +230,6 @@ uintptr_t search_symbol(struct symtab* symtab, uintptr_t base,
|
|||||||
return rslt;
|
return rslt;
|
||||||
}
|
}
|
||||||
|
|
||||||
quit:
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -228,12 +238,12 @@ const char* nearest_symbol(struct symtab* symtab, uintptr_t offset,
|
|||||||
int n = 0;
|
int n = 0;
|
||||||
if (!symtab) return NULL;
|
if (!symtab) return NULL;
|
||||||
for (; n < symtab->num_symbols; n++) {
|
for (; n < symtab->num_symbols; n++) {
|
||||||
struct elf_symbol* sym = &(symtab->symbols[n]);
|
struct elf_symbol* sym = &(symtab->symbols[n]);
|
||||||
if (sym->name != NULL &&
|
if (sym->name != NULL &&
|
||||||
offset >= sym->offset && offset < sym->offset + sym->size) {
|
offset >= sym->offset && offset < sym->offset + sym->size) {
|
||||||
if (poffset) *poffset = (offset - sym->offset);
|
if (poffset) *poffset = (offset - sym->offset);
|
||||||
return sym->name;
|
return sym->name;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
#
|
#
|
||||||
# Copyright (c) 2002, 2009, Oracle and/or its affiliates. All rights reserved.
|
# Copyright (c) 2002, 2012, Oracle and/or its affiliates. All rights reserved.
|
||||||
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||||
#
|
#
|
||||||
# This code is free software; you can redistribute it and/or modify it
|
# This code is free software; you can redistribute it and/or modify it
|
||||||
@@ -40,7 +40,7 @@ OBJS = $(SOURCES:.c=.o)
|
|||||||
|
|
||||||
LIBS = -lthread_db
|
LIBS = -lthread_db
|
||||||
|
|
||||||
CFLAGS = -c -fPIC -g -D_GNU_SOURCE -D$(ARCH) $(INCLUDES)
|
CFLAGS = -c -fPIC -g -D_GNU_SOURCE -D$(ARCH) $(INCLUDES) -D_FILE_OFFSET_BITS=64
|
||||||
|
|
||||||
LIBSA = $(ARCH)/libsaproc.so
|
LIBSA = $(ARCH)/libsaproc.so
|
||||||
|
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (c) 2003, 2010, Oracle and/or its affiliates. All rights reserved.
|
* Copyright (c) 2003, 2012, Oracle and/or its affiliates. All rights reserved.
|
||||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||||
*
|
*
|
||||||
* This code is free software; you can redistribute it and/or modify it
|
* This code is free software; you can redistribute it and/or modify it
|
||||||
@@ -50,10 +50,6 @@ int pathmap_open(const char* name) {
|
|||||||
char alt_path[PATH_MAX + 1];
|
char alt_path[PATH_MAX + 1];
|
||||||
|
|
||||||
init_alt_root();
|
init_alt_root();
|
||||||
fd = open(name, O_RDONLY);
|
|
||||||
if (fd >= 0) {
|
|
||||||
return fd;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (alt_root_len > 0) {
|
if (alt_root_len > 0) {
|
||||||
strcpy(alt_path, alt_root);
|
strcpy(alt_path, alt_root);
|
||||||
@@ -73,6 +69,11 @@ int pathmap_open(const char* name) {
|
|||||||
return fd;
|
return fd;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
} else {
|
||||||
|
fd = open(name, O_RDONLY);
|
||||||
|
if (fd >= 0) {
|
||||||
|
return fd;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return -1;
|
return -1;
|
||||||
|
|||||||
@@ -52,6 +52,8 @@ public class BsdDebuggerLocal extends DebuggerBase implements BsdDebugger {
|
|||||||
private boolean useGCC32ABI;
|
private boolean useGCC32ABI;
|
||||||
private boolean attached;
|
private boolean attached;
|
||||||
private long p_ps_prochandle; // native debugger handle
|
private long p_ps_prochandle; // native debugger handle
|
||||||
|
private long symbolicator; // macosx symbolicator handle
|
||||||
|
private long task; // macosx task handle
|
||||||
private boolean isCore;
|
private boolean isCore;
|
||||||
|
|
||||||
// CDebugger support
|
// CDebugger support
|
||||||
|
|||||||
@@ -0,0 +1,134 @@
|
|||||||
|
/*
|
||||||
|
* Copyright (c) 2011, 2012, Oracle and/or its affiliates. All rights reserved.
|
||||||
|
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||||
|
*
|
||||||
|
* This code is free software; you can redistribute it and/or modify it
|
||||||
|
* under the terms of the GNU General Public License version 2 only, as
|
||||||
|
* published by the Free Software Foundation.
|
||||||
|
*
|
||||||
|
* This code is distributed in the hope that it will be useful, but WITHOUT
|
||||||
|
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||||
|
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||||
|
* version 2 for more details (a copy is included in the LICENSE file that
|
||||||
|
* accompanied this code).
|
||||||
|
*
|
||||||
|
* You should have received a copy of the GNU General Public License version
|
||||||
|
* 2 along with this work; if not, write to the Free Software Foundation,
|
||||||
|
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||||
|
*
|
||||||
|
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||||
|
* or visit www.oracle.com if you need additional information or have any
|
||||||
|
* questions.
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
|
||||||
|
package sun.jvm.hotspot.gc_implementation.g1;
|
||||||
|
|
||||||
|
import java.util.Iterator;
|
||||||
|
import java.util.Observable;
|
||||||
|
import java.util.Observer;
|
||||||
|
|
||||||
|
import sun.jvm.hotspot.debugger.Address;
|
||||||
|
import sun.jvm.hotspot.gc_interface.CollectedHeapName;
|
||||||
|
import sun.jvm.hotspot.memory.MemRegion;
|
||||||
|
import sun.jvm.hotspot.memory.SharedHeap;
|
||||||
|
import sun.jvm.hotspot.memory.SpaceClosure;
|
||||||
|
import sun.jvm.hotspot.runtime.VM;
|
||||||
|
import sun.jvm.hotspot.runtime.VMObjectFactory;
|
||||||
|
import sun.jvm.hotspot.types.AddressField;
|
||||||
|
import sun.jvm.hotspot.types.CIntegerField;
|
||||||
|
import sun.jvm.hotspot.types.Type;
|
||||||
|
import sun.jvm.hotspot.types.TypeDataBase;
|
||||||
|
|
||||||
|
// Mirror class for G1CollectedHeap.
|
||||||
|
|
||||||
|
public class G1CollectedHeap extends SharedHeap {
|
||||||
|
// HeapRegionSeq _seq;
|
||||||
|
static private long hrsFieldOffset;
|
||||||
|
// MemRegion _g1_committed;
|
||||||
|
static private long g1CommittedFieldOffset;
|
||||||
|
// size_t _summary_bytes_used;
|
||||||
|
static private CIntegerField summaryBytesUsedField;
|
||||||
|
// G1MonitoringSupport* _g1mm;
|
||||||
|
static private AddressField g1mmField;
|
||||||
|
// MasterOldRegionSet _old_set;
|
||||||
|
static private long oldSetFieldOffset;
|
||||||
|
// MasterHumongousRegionSet _humongous_set;
|
||||||
|
static private long humongousSetFieldOffset;
|
||||||
|
|
||||||
|
static {
|
||||||
|
VM.registerVMInitializedObserver(new Observer() {
|
||||||
|
public void update(Observable o, Object data) {
|
||||||
|
initialize(VM.getVM().getTypeDataBase());
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
static private synchronized void initialize(TypeDataBase db) {
|
||||||
|
Type type = db.lookupType("G1CollectedHeap");
|
||||||
|
|
||||||
|
hrsFieldOffset = type.getField("_hrs").getOffset();
|
||||||
|
g1CommittedFieldOffset = type.getField("_g1_committed").getOffset();
|
||||||
|
summaryBytesUsedField = type.getCIntegerField("_summary_bytes_used");
|
||||||
|
g1mmField = type.getAddressField("_g1mm");
|
||||||
|
oldSetFieldOffset = type.getField("_old_set").getOffset();
|
||||||
|
humongousSetFieldOffset = type.getField("_humongous_set").getOffset();
|
||||||
|
}
|
||||||
|
|
||||||
|
public long capacity() {
|
||||||
|
Address g1CommittedAddr = addr.addOffsetTo(g1CommittedFieldOffset);
|
||||||
|
MemRegion g1Committed = new MemRegion(g1CommittedAddr);
|
||||||
|
return g1Committed.byteSize();
|
||||||
|
}
|
||||||
|
|
||||||
|
public long used() {
|
||||||
|
return summaryBytesUsedField.getValue(addr);
|
||||||
|
}
|
||||||
|
|
||||||
|
public long n_regions() {
|
||||||
|
return hrs().length();
|
||||||
|
}
|
||||||
|
|
||||||
|
private HeapRegionSeq hrs() {
|
||||||
|
Address hrsAddr = addr.addOffsetTo(hrsFieldOffset);
|
||||||
|
return (HeapRegionSeq) VMObjectFactory.newObject(HeapRegionSeq.class,
|
||||||
|
hrsAddr);
|
||||||
|
}
|
||||||
|
|
||||||
|
public G1MonitoringSupport g1mm() {
|
||||||
|
Address g1mmAddr = g1mmField.getValue(addr);
|
||||||
|
return (G1MonitoringSupport) VMObjectFactory.newObject(G1MonitoringSupport.class, g1mmAddr);
|
||||||
|
}
|
||||||
|
|
||||||
|
public HeapRegionSetBase oldSet() {
|
||||||
|
Address oldSetAddr = addr.addOffsetTo(oldSetFieldOffset);
|
||||||
|
return (HeapRegionSetBase) VMObjectFactory.newObject(HeapRegionSetBase.class,
|
||||||
|
oldSetAddr);
|
||||||
|
}
|
||||||
|
|
||||||
|
public HeapRegionSetBase humongousSet() {
|
||||||
|
Address humongousSetAddr = addr.addOffsetTo(humongousSetFieldOffset);
|
||||||
|
return (HeapRegionSetBase) VMObjectFactory.newObject(HeapRegionSetBase.class,
|
||||||
|
humongousSetAddr);
|
||||||
|
}
|
||||||
|
|
||||||
|
private Iterator<HeapRegion> heapRegionIterator() {
|
||||||
|
return hrs().heapRegionIterator();
|
||||||
|
}
|
||||||
|
|
||||||
|
public void heapRegionIterate(SpaceClosure scl) {
|
||||||
|
Iterator<HeapRegion> iter = heapRegionIterator();
|
||||||
|
while (iter.hasNext()) {
|
||||||
|
HeapRegion hr = iter.next();
|
||||||
|
scl.doSpace(hr);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public CollectedHeapName kind() {
|
||||||
|
return CollectedHeapName.G1_COLLECTED_HEAP;
|
||||||
|
}
|
||||||
|
|
||||||
|
public G1CollectedHeap(Address addr) {
|
||||||
|
super(addr);
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,107 @@
|
|||||||
|
/*
|
||||||
|
* Copyright (c) 2011, 2012, Oracle and/or its affiliates. All rights reserved.
|
||||||
|
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||||
|
*
|
||||||
|
* This code is free software; you can redistribute it and/or modify it
|
||||||
|
* under the terms of the GNU General Public License version 2 only, as
|
||||||
|
* published by the Free Software Foundation.
|
||||||
|
*
|
||||||
|
* This code is distributed in the hope that it will be useful, but WITHOUT
|
||||||
|
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||||
|
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||||
|
* version 2 for more details (a copy is included in the LICENSE file that
|
||||||
|
* accompanied this code).
|
||||||
|
*
|
||||||
|
* You should have received a copy of the GNU General Public License version
|
||||||
|
* 2 along with this work; if not, write to the Free Software Foundation,
|
||||||
|
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||||
|
*
|
||||||
|
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||||
|
* or visit www.oracle.com if you need additional information or have any
|
||||||
|
* questions.
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
|
||||||
|
package sun.jvm.hotspot.gc_implementation.g1;
|
||||||
|
|
||||||
|
import java.util.Observable;
|
||||||
|
import java.util.Observer;
|
||||||
|
|
||||||
|
import sun.jvm.hotspot.debugger.Address;
|
||||||
|
import sun.jvm.hotspot.runtime.VM;
|
||||||
|
import sun.jvm.hotspot.runtime.VMObject;
|
||||||
|
import sun.jvm.hotspot.types.CIntegerField;
|
||||||
|
import sun.jvm.hotspot.types.Type;
|
||||||
|
import sun.jvm.hotspot.types.TypeDataBase;
|
||||||
|
|
||||||
|
// Mirror class for G1MonitoringSupport.
|
||||||
|
|
||||||
|
public class G1MonitoringSupport extends VMObject {
|
||||||
|
// size_t _eden_committed;
|
||||||
|
static private CIntegerField edenCommittedField;
|
||||||
|
// size_t _eden_used;
|
||||||
|
static private CIntegerField edenUsedField;
|
||||||
|
// size_t _survivor_committed;
|
||||||
|
static private CIntegerField survivorCommittedField;
|
||||||
|
// size_t _survivor_used;
|
||||||
|
static private CIntegerField survivorUsedField;
|
||||||
|
// size_t _old_committed;
|
||||||
|
static private CIntegerField oldCommittedField;
|
||||||
|
// size_t _old_used;
|
||||||
|
static private CIntegerField oldUsedField;
|
||||||
|
|
||||||
|
static {
|
||||||
|
VM.registerVMInitializedObserver(new Observer() {
|
||||||
|
public void update(Observable o, Object data) {
|
||||||
|
initialize(VM.getVM().getTypeDataBase());
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
static private synchronized void initialize(TypeDataBase db) {
|
||||||
|
Type type = db.lookupType("G1MonitoringSupport");
|
||||||
|
|
||||||
|
edenCommittedField = type.getCIntegerField("_eden_committed");
|
||||||
|
edenUsedField = type.getCIntegerField("_eden_used");
|
||||||
|
survivorCommittedField = type.getCIntegerField("_survivor_committed");
|
||||||
|
survivorUsedField = type.getCIntegerField("_survivor_used");
|
||||||
|
oldCommittedField = type.getCIntegerField("_old_committed");
|
||||||
|
oldUsedField = type.getCIntegerField("_old_used");
|
||||||
|
}
|
||||||
|
|
||||||
|
public long edenCommitted() {
|
||||||
|
return edenCommittedField.getValue(addr);
|
||||||
|
}
|
||||||
|
|
||||||
|
public long edenUsed() {
|
||||||
|
return edenUsedField.getValue(addr);
|
||||||
|
}
|
||||||
|
|
||||||
|
public long edenRegionNum() {
|
||||||
|
return edenUsed() / HeapRegion.grainBytes();
|
||||||
|
}
|
||||||
|
|
||||||
|
public long survivorCommitted() {
|
||||||
|
return survivorCommittedField.getValue(addr);
|
||||||
|
}
|
||||||
|
|
||||||
|
public long survivorUsed() {
|
||||||
|
return survivorUsedField.getValue(addr);
|
||||||
|
}
|
||||||
|
|
||||||
|
public long survivorRegionNum() {
|
||||||
|
return survivorUsed() / HeapRegion.grainBytes();
|
||||||
|
}
|
||||||
|
|
||||||
|
public long oldCommitted() {
|
||||||
|
return oldCommittedField.getValue(addr);
|
||||||
|
}
|
||||||
|
|
||||||
|
public long oldUsed() {
|
||||||
|
return oldUsedField.getValue(addr);
|
||||||
|
}
|
||||||
|
|
||||||
|
public G1MonitoringSupport(Address addr) {
|
||||||
|
super(addr);
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,66 @@
|
|||||||
|
/*
|
||||||
|
* Copyright (c) 2011, Oracle and/or its affiliates. All rights reserved.
|
||||||
|
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||||
|
*
|
||||||
|
* This code is free software; you can redistribute it and/or modify it
|
||||||
|
* under the terms of the GNU General Public License version 2 only, as
|
||||||
|
* published by the Free Software Foundation.
|
||||||
|
*
|
||||||
|
* This code is distributed in the hope that it will be useful, but WITHOUT
|
||||||
|
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||||
|
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||||
|
* version 2 for more details (a copy is included in the LICENSE file that
|
||||||
|
* accompanied this code).
|
||||||
|
*
|
||||||
|
* You should have received a copy of the GNU General Public License version
|
||||||
|
* 2 along with this work; if not, write to the Free Software Foundation,
|
||||||
|
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||||
|
*
|
||||||
|
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||||
|
* or visit www.oracle.com if you need additional information or have any
|
||||||
|
* questions.
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
|
||||||
|
package sun.jvm.hotspot.gc_implementation.g1;
|
||||||
|
|
||||||
|
import java.util.Observable;
|
||||||
|
import java.util.Observer;
|
||||||
|
|
||||||
|
import sun.jvm.hotspot.debugger.Address;
|
||||||
|
import sun.jvm.hotspot.memory.ContiguousSpace;
|
||||||
|
import sun.jvm.hotspot.runtime.VM;
|
||||||
|
import sun.jvm.hotspot.types.CIntegerField;
|
||||||
|
import sun.jvm.hotspot.types.Type;
|
||||||
|
import sun.jvm.hotspot.types.TypeDataBase;
|
||||||
|
|
||||||
|
// Mirror class for HeapRegion. Currently we don't actually include
|
||||||
|
// any of its fields but only iterate over it (which we get "for free"
|
||||||
|
// as HeapRegion ultimately inherits from ContiguousSpace).
|
||||||
|
|
||||||
|
public class HeapRegion extends ContiguousSpace {
|
||||||
|
// static int GrainBytes;
|
||||||
|
static private CIntegerField grainBytesField;
|
||||||
|
|
||||||
|
static {
|
||||||
|
VM.registerVMInitializedObserver(new Observer() {
|
||||||
|
public void update(Observable o, Object data) {
|
||||||
|
initialize(VM.getVM().getTypeDataBase());
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
static private synchronized void initialize(TypeDataBase db) {
|
||||||
|
Type type = db.lookupType("HeapRegion");
|
||||||
|
|
||||||
|
grainBytesField = type.getCIntegerField("GrainBytes");
|
||||||
|
}
|
||||||
|
|
||||||
|
static public long grainBytes() {
|
||||||
|
return grainBytesField.getValue();
|
||||||
|
}
|
||||||
|
|
||||||
|
public HeapRegion(Address addr) {
|
||||||
|
super(addr);
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,102 @@
|
|||||||
|
/*
|
||||||
|
* Copyright (c) 2011, Oracle and/or its affiliates. All rights reserved.
|
||||||
|
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||||
|
*
|
||||||
|
* This code is free software; you can redistribute it and/or modify it
|
||||||
|
* under the terms of the GNU General Public License version 2 only, as
|
||||||
|
* published by the Free Software Foundation.
|
||||||
|
*
|
||||||
|
* This code is distributed in the hope that it will be useful, but WITHOUT
|
||||||
|
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||||
|
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||||
|
* version 2 for more details (a copy is included in the LICENSE file that
|
||||||
|
* accompanied this code).
|
||||||
|
*
|
||||||
|
* You should have received a copy of the GNU General Public License version
|
||||||
|
* 2 along with this work; if not, write to the Free Software Foundation,
|
||||||
|
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||||
|
*
|
||||||
|
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||||
|
* or visit www.oracle.com if you need additional information or have any
|
||||||
|
* questions.
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
|
||||||
|
package sun.jvm.hotspot.gc_implementation.g1;
|
||||||
|
|
||||||
|
import java.util.Iterator;
|
||||||
|
import java.util.Observable;
|
||||||
|
import java.util.Observer;
|
||||||
|
|
||||||
|
import sun.jvm.hotspot.debugger.Address;
|
||||||
|
import sun.jvm.hotspot.runtime.VM;
|
||||||
|
import sun.jvm.hotspot.runtime.VMObject;
|
||||||
|
import sun.jvm.hotspot.runtime.VMObjectFactory;
|
||||||
|
import sun.jvm.hotspot.types.AddressField;
|
||||||
|
import sun.jvm.hotspot.types.CIntegerField;
|
||||||
|
import sun.jvm.hotspot.types.Type;
|
||||||
|
import sun.jvm.hotspot.types.TypeDataBase;
|
||||||
|
|
||||||
|
// Mirror class for HeapRegionSeq. It's essentially an index -> HeapRegion map.
|
||||||
|
|
||||||
|
public class HeapRegionSeq extends VMObject {
|
||||||
|
// HeapRegion** _regions;
|
||||||
|
static private AddressField regionsField;
|
||||||
|
// size_t _length;
|
||||||
|
static private CIntegerField lengthField;
|
||||||
|
|
||||||
|
static {
|
||||||
|
VM.registerVMInitializedObserver(new Observer() {
|
||||||
|
public void update(Observable o, Object data) {
|
||||||
|
initialize(VM.getVM().getTypeDataBase());
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
static private synchronized void initialize(TypeDataBase db) {
|
||||||
|
Type type = db.lookupType("HeapRegionSeq");
|
||||||
|
|
||||||
|
regionsField = type.getAddressField("_regions");
|
||||||
|
lengthField = type.getCIntegerField("_length");
|
||||||
|
}
|
||||||
|
|
||||||
|
private HeapRegion at(long index) {
|
||||||
|
Address arrayAddr = regionsField.getValue(addr);
|
||||||
|
// Offset of &_region[index]
|
||||||
|
long offset = index * VM.getVM().getAddressSize();
|
||||||
|
Address regionAddr = arrayAddr.getAddressAt(offset);
|
||||||
|
return (HeapRegion) VMObjectFactory.newObject(HeapRegion.class,
|
||||||
|
regionAddr);
|
||||||
|
}
|
||||||
|
|
||||||
|
public long length() {
|
||||||
|
return lengthField.getValue(addr);
|
||||||
|
}
|
||||||
|
|
||||||
|
private class HeapRegionIterator implements Iterator<HeapRegion> {
|
||||||
|
private long index;
|
||||||
|
private long length;
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean hasNext() { return index < length; }
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public HeapRegion next() { return at(index++); }
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void remove() { /* not supported */ }
|
||||||
|
|
||||||
|
HeapRegionIterator(Address addr) {
|
||||||
|
index = 0;
|
||||||
|
length = length();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public Iterator<HeapRegion> heapRegionIterator() {
|
||||||
|
return new HeapRegionIterator(addr);
|
||||||
|
}
|
||||||
|
|
||||||
|
public HeapRegionSeq(Address addr) {
|
||||||
|
super(addr);
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,81 @@
|
|||||||
|
/*
|
||||||
|
* Copyright (c) 2012, Oracle and/or its affiliates. All rights reserved.
|
||||||
|
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||||
|
*
|
||||||
|
* This code is free software; you can redistribute it and/or modify it
|
||||||
|
* under the terms of the GNU General Public License version 2 only, as
|
||||||
|
* published by the Free Software Foundation.
|
||||||
|
*
|
||||||
|
* This code is distributed in the hope that it will be useful, but WITHOUT
|
||||||
|
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||||
|
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||||
|
* version 2 for more details (a copy is included in the LICENSE file that
|
||||||
|
* accompanied this code).
|
||||||
|
*
|
||||||
|
* You should have received a copy of the GNU General Public License version
|
||||||
|
* 2 along with this work; if not, write to the Free Software Foundation,
|
||||||
|
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||||
|
*
|
||||||
|
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||||
|
* or visit www.oracle.com if you need additional information or have any
|
||||||
|
* questions.
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
|
||||||
|
package sun.jvm.hotspot.gc_implementation.g1;
|
||||||
|
|
||||||
|
import java.util.Iterator;
|
||||||
|
import java.util.Observable;
|
||||||
|
import java.util.Observer;
|
||||||
|
|
||||||
|
import sun.jvm.hotspot.debugger.Address;
|
||||||
|
import sun.jvm.hotspot.runtime.VM;
|
||||||
|
import sun.jvm.hotspot.runtime.VMObject;
|
||||||
|
import sun.jvm.hotspot.runtime.VMObjectFactory;
|
||||||
|
import sun.jvm.hotspot.types.AddressField;
|
||||||
|
import sun.jvm.hotspot.types.CIntegerField;
|
||||||
|
import sun.jvm.hotspot.types.Type;
|
||||||
|
import sun.jvm.hotspot.types.TypeDataBase;
|
||||||
|
|
||||||
|
// Mirror class for HeapRegionSetBase. Represents a group of regions.
|
||||||
|
|
||||||
|
public class HeapRegionSetBase extends VMObject {
|
||||||
|
// size_t _length;
|
||||||
|
static private CIntegerField lengthField;
|
||||||
|
// size_t _region_num;
|
||||||
|
static private CIntegerField regionNumField;
|
||||||
|
// size_t _total_used_bytes;
|
||||||
|
static private CIntegerField totalUsedBytesField;
|
||||||
|
|
||||||
|
static {
|
||||||
|
VM.registerVMInitializedObserver(new Observer() {
|
||||||
|
public void update(Observable o, Object data) {
|
||||||
|
initialize(VM.getVM().getTypeDataBase());
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
static private synchronized void initialize(TypeDataBase db) {
|
||||||
|
Type type = db.lookupType("HeapRegionSetBase");
|
||||||
|
|
||||||
|
lengthField = type.getCIntegerField("_length");
|
||||||
|
regionNumField = type.getCIntegerField("_region_num");
|
||||||
|
totalUsedBytesField = type.getCIntegerField("_total_used_bytes");
|
||||||
|
}
|
||||||
|
|
||||||
|
public long length() {
|
||||||
|
return lengthField.getValue(addr);
|
||||||
|
}
|
||||||
|
|
||||||
|
public long regionNum() {
|
||||||
|
return regionNumField.getValue(addr);
|
||||||
|
}
|
||||||
|
|
||||||
|
public long totalUsedBytes() {
|
||||||
|
return totalUsedBytesField.getValue(addr);
|
||||||
|
}
|
||||||
|
|
||||||
|
public HeapRegionSetBase(Address addr) {
|
||||||
|
super(addr);
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (c) 2000, 2003, Oracle and/or its affiliates. All rights reserved.
|
* Copyright (c) 2000, 2011, Oracle and/or its affiliates. All rights reserved.
|
||||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||||
*
|
*
|
||||||
* This code is free software; you can redistribute it and/or modify it
|
* This code is free software; you can redistribute it and/or modify it
|
||||||
@@ -34,6 +34,7 @@ public class CollectedHeapName {
|
|||||||
public static final CollectedHeapName ABSTRACT = new CollectedHeapName("abstract");
|
public static final CollectedHeapName ABSTRACT = new CollectedHeapName("abstract");
|
||||||
public static final CollectedHeapName SHARED_HEAP = new CollectedHeapName("SharedHeap");
|
public static final CollectedHeapName SHARED_HEAP = new CollectedHeapName("SharedHeap");
|
||||||
public static final CollectedHeapName GEN_COLLECTED_HEAP = new CollectedHeapName("GenCollectedHeap");
|
public static final CollectedHeapName GEN_COLLECTED_HEAP = new CollectedHeapName("GenCollectedHeap");
|
||||||
|
public static final CollectedHeapName G1_COLLECTED_HEAP = new CollectedHeapName("G1CollectedHeap");
|
||||||
public static final CollectedHeapName PARALLEL_SCAVENGE_HEAP = new CollectedHeapName("ParallelScavengeHeap");
|
public static final CollectedHeapName PARALLEL_SCAVENGE_HEAP = new CollectedHeapName("ParallelScavengeHeap");
|
||||||
|
|
||||||
public String toString() {
|
public String toString() {
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (c) 2003, Oracle and/or its affiliates. All rights reserved.
|
* Copyright (c) 2003, 2012 Oracle and/or its affiliates. All rights reserved.
|
||||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||||
*
|
*
|
||||||
* This code is free software; you can redistribute it and/or modify it
|
* This code is free software; you can redistribute it and/or modify it
|
||||||
@@ -42,15 +42,6 @@ public class LoaderConstraintTable extends TwoOopHashtable {
|
|||||||
|
|
||||||
private static synchronized void initialize(TypeDataBase db) {
|
private static synchronized void initialize(TypeDataBase db) {
|
||||||
Type type = db.lookupType("LoaderConstraintTable");
|
Type type = db.lookupType("LoaderConstraintTable");
|
||||||
nofBuckets = db.lookupIntConstant("LoaderConstraintTable::_nof_buckets").intValue();
|
|
||||||
}
|
|
||||||
|
|
||||||
// Fields
|
|
||||||
private static int nofBuckets;
|
|
||||||
|
|
||||||
// Accessors
|
|
||||||
public static int getNumOfBuckets() {
|
|
||||||
return nofBuckets;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public LoaderConstraintTable(Address addr) {
|
public LoaderConstraintTable(Address addr) {
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (c) 2001, 2010, Oracle and/or its affiliates. All rights reserved.
|
* Copyright (c) 2001, 2012, Oracle and/or its affiliates. All rights reserved.
|
||||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||||
*
|
*
|
||||||
* This code is free software; you can redistribute it and/or modify it
|
* This code is free software; you can redistribute it and/or modify it
|
||||||
@@ -36,7 +36,6 @@ public class SystemDictionary {
|
|||||||
private static AddressField placeholdersField;
|
private static AddressField placeholdersField;
|
||||||
private static AddressField loaderConstraintTableField;
|
private static AddressField loaderConstraintTableField;
|
||||||
private static sun.jvm.hotspot.types.OopField javaSystemLoaderField;
|
private static sun.jvm.hotspot.types.OopField javaSystemLoaderField;
|
||||||
private static int nofBuckets;
|
|
||||||
|
|
||||||
private static sun.jvm.hotspot.types.OopField objectKlassField;
|
private static sun.jvm.hotspot.types.OopField objectKlassField;
|
||||||
private static sun.jvm.hotspot.types.OopField classLoaderKlassField;
|
private static sun.jvm.hotspot.types.OopField classLoaderKlassField;
|
||||||
@@ -62,7 +61,6 @@ public class SystemDictionary {
|
|||||||
placeholdersField = type.getAddressField("_placeholders");
|
placeholdersField = type.getAddressField("_placeholders");
|
||||||
loaderConstraintTableField = type.getAddressField("_loader_constraints");
|
loaderConstraintTableField = type.getAddressField("_loader_constraints");
|
||||||
javaSystemLoaderField = type.getOopField("_java_system_loader");
|
javaSystemLoaderField = type.getOopField("_java_system_loader");
|
||||||
nofBuckets = db.lookupIntConstant("SystemDictionary::_nof_buckets").intValue();
|
|
||||||
|
|
||||||
objectKlassField = type.getOopField(WK_KLASS("Object_klass"));
|
objectKlassField = type.getOopField(WK_KLASS("Object_klass"));
|
||||||
classLoaderKlassField = type.getOopField(WK_KLASS("ClassLoader_klass"));
|
classLoaderKlassField = type.getOopField(WK_KLASS("ClassLoader_klass"));
|
||||||
@@ -142,10 +140,6 @@ public class SystemDictionary {
|
|||||||
return newOop(javaSystemLoaderField.getValue());
|
return newOop(javaSystemLoaderField.getValue());
|
||||||
}
|
}
|
||||||
|
|
||||||
public static int getNumOfBuckets() {
|
|
||||||
return nofBuckets;
|
|
||||||
}
|
|
||||||
|
|
||||||
private static Oop newOop(OopHandle handle) {
|
private static Oop newOop(OopHandle handle) {
|
||||||
return VM.getVM().getObjectHeap().newOop(handle);
|
return VM.getVM().getObjectHeap().newOop(handle);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (c) 2000, 2009, Oracle and/or its affiliates. All rights reserved.
|
* Copyright (c) 2000, 2011, Oracle and/or its affiliates. All rights reserved.
|
||||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||||
*
|
*
|
||||||
* This code is free software; you can redistribute it and/or modify it
|
* This code is free software; you can redistribute it and/or modify it
|
||||||
@@ -28,6 +28,7 @@ import java.io.*;
|
|||||||
import java.util.*;
|
import java.util.*;
|
||||||
import sun.jvm.hotspot.debugger.*;
|
import sun.jvm.hotspot.debugger.*;
|
||||||
import sun.jvm.hotspot.gc_interface.*;
|
import sun.jvm.hotspot.gc_interface.*;
|
||||||
|
import sun.jvm.hotspot.gc_implementation.g1.G1CollectedHeap;
|
||||||
import sun.jvm.hotspot.gc_implementation.parallelScavenge.*;
|
import sun.jvm.hotspot.gc_implementation.parallelScavenge.*;
|
||||||
import sun.jvm.hotspot.oops.*;
|
import sun.jvm.hotspot.oops.*;
|
||||||
import sun.jvm.hotspot.types.*;
|
import sun.jvm.hotspot.types.*;
|
||||||
@@ -72,6 +73,7 @@ public class Universe {
|
|||||||
heapConstructor = new VirtualConstructor(db);
|
heapConstructor = new VirtualConstructor(db);
|
||||||
heapConstructor.addMapping("GenCollectedHeap", GenCollectedHeap.class);
|
heapConstructor.addMapping("GenCollectedHeap", GenCollectedHeap.class);
|
||||||
heapConstructor.addMapping("ParallelScavengeHeap", ParallelScavengeHeap.class);
|
heapConstructor.addMapping("ParallelScavengeHeap", ParallelScavengeHeap.class);
|
||||||
|
heapConstructor.addMapping("G1CollectedHeap", G1CollectedHeap.class);
|
||||||
|
|
||||||
mainThreadGroupField = type.getOopField("_main_thread_group");
|
mainThreadGroupField = type.getOopField("_main_thread_group");
|
||||||
systemThreadGroupField = type.getOopField("_system_thread_group");
|
systemThreadGroupField = type.getOopField("_system_thread_group");
|
||||||
|
|||||||
@@ -648,7 +648,12 @@ public class ConstantPool extends Oop implements ClassConstants {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public void printValueOn(PrintStream tty) {
|
public void printValueOn(PrintStream tty) {
|
||||||
tty.print("ConstantPool for " + getPoolHolder().getName().asString());
|
Oop holder = poolHolder.getValue(this);
|
||||||
|
if (holder instanceof Klass) {
|
||||||
|
tty.print("ConstantPool for " + ((Klass)holder).getName().asString());
|
||||||
|
} else {
|
||||||
|
tty.print("ConstantPool for partially loaded class");
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public long getObjectSize() {
|
public long getObjectSize() {
|
||||||
|
|||||||
@@ -33,6 +33,7 @@ import java.util.*;
|
|||||||
|
|
||||||
import sun.jvm.hotspot.debugger.*;
|
import sun.jvm.hotspot.debugger.*;
|
||||||
import sun.jvm.hotspot.gc_interface.*;
|
import sun.jvm.hotspot.gc_interface.*;
|
||||||
|
import sun.jvm.hotspot.gc_implementation.g1.*;
|
||||||
import sun.jvm.hotspot.gc_implementation.parallelScavenge.*;
|
import sun.jvm.hotspot.gc_implementation.parallelScavenge.*;
|
||||||
import sun.jvm.hotspot.memory.*;
|
import sun.jvm.hotspot.memory.*;
|
||||||
import sun.jvm.hotspot.runtime.*;
|
import sun.jvm.hotspot.runtime.*;
|
||||||
@@ -514,9 +515,16 @@ public class ObjectHeap {
|
|||||||
|
|
||||||
private void addPermGenLiveRegions(List output, CollectedHeap heap) {
|
private void addPermGenLiveRegions(List output, CollectedHeap heap) {
|
||||||
LiveRegionsCollector lrc = new LiveRegionsCollector(output);
|
LiveRegionsCollector lrc = new LiveRegionsCollector(output);
|
||||||
if (heap instanceof GenCollectedHeap) {
|
if (heap instanceof SharedHeap) {
|
||||||
GenCollectedHeap genHeap = (GenCollectedHeap) heap;
|
if (Assert.ASSERTS_ENABLED) {
|
||||||
Generation gen = genHeap.permGen();
|
Assert.that(heap instanceof GenCollectedHeap ||
|
||||||
|
heap instanceof G1CollectedHeap,
|
||||||
|
"Expecting GenCollectedHeap or G1CollectedHeap, " +
|
||||||
|
"but got " + heap.getClass().getName());
|
||||||
|
}
|
||||||
|
// Handles both GenCollectedHeap and G1CollectedHeap
|
||||||
|
SharedHeap sharedHeap = (SharedHeap) heap;
|
||||||
|
Generation gen = sharedHeap.permGen();
|
||||||
gen.spaceIterate(lrc, true);
|
gen.spaceIterate(lrc, true);
|
||||||
} else if (heap instanceof ParallelScavengeHeap) {
|
} else if (heap instanceof ParallelScavengeHeap) {
|
||||||
ParallelScavengeHeap psh = (ParallelScavengeHeap) heap;
|
ParallelScavengeHeap psh = (ParallelScavengeHeap) heap;
|
||||||
@@ -524,8 +532,9 @@ public class ObjectHeap {
|
|||||||
addLiveRegions(permGen.objectSpace().getLiveRegions(), output);
|
addLiveRegions(permGen.objectSpace().getLiveRegions(), output);
|
||||||
} else {
|
} else {
|
||||||
if (Assert.ASSERTS_ENABLED) {
|
if (Assert.ASSERTS_ENABLED) {
|
||||||
Assert.that(false, "Expecting GenCollectedHeap or ParallelScavengeHeap, but got " +
|
Assert.that(false,
|
||||||
heap.getClass().getName());
|
"Expecting SharedHeap or ParallelScavengeHeap, " +
|
||||||
|
"but got " + heap.getClass().getName());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -588,10 +597,14 @@ public class ObjectHeap {
|
|||||||
addLiveRegions(youngGen.fromSpace().getLiveRegions(), liveRegions);
|
addLiveRegions(youngGen.fromSpace().getLiveRegions(), liveRegions);
|
||||||
PSOldGen oldGen = psh.oldGen();
|
PSOldGen oldGen = psh.oldGen();
|
||||||
addLiveRegions(oldGen.objectSpace().getLiveRegions(), liveRegions);
|
addLiveRegions(oldGen.objectSpace().getLiveRegions(), liveRegions);
|
||||||
|
} else if (heap instanceof G1CollectedHeap) {
|
||||||
|
G1CollectedHeap g1h = (G1CollectedHeap) heap;
|
||||||
|
g1h.heapRegionIterate(lrc);
|
||||||
} else {
|
} else {
|
||||||
if (Assert.ASSERTS_ENABLED) {
|
if (Assert.ASSERTS_ENABLED) {
|
||||||
Assert.that(false, "Expecting GenCollectedHeap or ParallelScavengeHeap, but got " +
|
Assert.that(false, "Expecting GenCollectedHeap, G1CollectedHeap, " +
|
||||||
heap.getClass().getName());
|
"or ParallelScavengeHeap, but got " +
|
||||||
|
heap.getClass().getName());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -956,7 +956,7 @@ public class SPARCFrame extends Frame {
|
|||||||
map.makeIntegerRegsUnsaved();
|
map.makeIntegerRegsUnsaved();
|
||||||
map.shiftWindow(sp, youngerSP);
|
map.shiftWindow(sp, youngerSP);
|
||||||
boolean thisFrameAdjustedStack = true; // I5_savedSP is live in this RF
|
boolean thisFrameAdjustedStack = true; // I5_savedSP is live in this RF
|
||||||
return new SPARCFrame(sp, youngerSP, thisFrameAdjustedStack);
|
return new SPARCFrame(biasSP(sp), biasSP(youngerSP), thisFrameAdjustedStack);
|
||||||
}
|
}
|
||||||
|
|
||||||
private Frame senderForEntryFrame(RegisterMap regMap) {
|
private Frame senderForEntryFrame(RegisterMap regMap) {
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (c) 2003, 2008, Oracle and/or its affiliates. All rights reserved.
|
* Copyright (c) 2003, 2012, Oracle and/or its affiliates. All rights reserved.
|
||||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||||
*
|
*
|
||||||
* This code is free software; you can redistribute it and/or modify it
|
* This code is free software; you can redistribute it and/or modify it
|
||||||
@@ -26,11 +26,12 @@ package sun.jvm.hotspot.tools;
|
|||||||
|
|
||||||
import java.util.*;
|
import java.util.*;
|
||||||
import sun.jvm.hotspot.gc_interface.*;
|
import sun.jvm.hotspot.gc_interface.*;
|
||||||
|
import sun.jvm.hotspot.gc_implementation.g1.*;
|
||||||
import sun.jvm.hotspot.gc_implementation.parallelScavenge.*;
|
import sun.jvm.hotspot.gc_implementation.parallelScavenge.*;
|
||||||
import sun.jvm.hotspot.gc_implementation.shared.*;
|
import sun.jvm.hotspot.gc_implementation.shared.*;
|
||||||
import sun.jvm.hotspot.memory.*;
|
import sun.jvm.hotspot.memory.*;
|
||||||
|
import sun.jvm.hotspot.oops.*;
|
||||||
import sun.jvm.hotspot.runtime.*;
|
import sun.jvm.hotspot.runtime.*;
|
||||||
import sun.jvm.hotspot.tools.*;
|
|
||||||
|
|
||||||
public class HeapSummary extends Tool {
|
public class HeapSummary extends Tool {
|
||||||
|
|
||||||
@@ -66,36 +67,59 @@ public class HeapSummary extends Tool {
|
|||||||
printValue("SurvivorRatio = ", getFlagValue("SurvivorRatio", flagMap));
|
printValue("SurvivorRatio = ", getFlagValue("SurvivorRatio", flagMap));
|
||||||
printValMB("PermSize = ", getFlagValue("PermSize", flagMap));
|
printValMB("PermSize = ", getFlagValue("PermSize", flagMap));
|
||||||
printValMB("MaxPermSize = ", getFlagValue("MaxPermSize", flagMap));
|
printValMB("MaxPermSize = ", getFlagValue("MaxPermSize", flagMap));
|
||||||
|
printValMB("G1HeapRegionSize = ", HeapRegion.grainBytes());
|
||||||
|
|
||||||
System.out.println();
|
System.out.println();
|
||||||
System.out.println("Heap Usage:");
|
System.out.println("Heap Usage:");
|
||||||
|
|
||||||
if (heap instanceof GenCollectedHeap) {
|
if (heap instanceof SharedHeap) {
|
||||||
GenCollectedHeap genHeap = (GenCollectedHeap) heap;
|
SharedHeap sharedHeap = (SharedHeap) heap;
|
||||||
for (int n = 0; n < genHeap.nGens(); n++) {
|
if (sharedHeap instanceof GenCollectedHeap) {
|
||||||
Generation gen = genHeap.getGen(n);
|
GenCollectedHeap genHeap = (GenCollectedHeap) sharedHeap;
|
||||||
if (gen instanceof sun.jvm.hotspot.memory.DefNewGeneration) {
|
for (int n = 0; n < genHeap.nGens(); n++) {
|
||||||
System.out.println("New Generation (Eden + 1 Survivor Space):");
|
Generation gen = genHeap.getGen(n);
|
||||||
printGen(gen);
|
if (gen instanceof sun.jvm.hotspot.memory.DefNewGeneration) {
|
||||||
|
System.out.println("New Generation (Eden + 1 Survivor Space):");
|
||||||
|
printGen(gen);
|
||||||
|
|
||||||
ContiguousSpace eden = ((DefNewGeneration)gen).eden();
|
ContiguousSpace eden = ((DefNewGeneration)gen).eden();
|
||||||
System.out.println("Eden Space:");
|
System.out.println("Eden Space:");
|
||||||
printSpace(eden);
|
printSpace(eden);
|
||||||
|
|
||||||
ContiguousSpace from = ((DefNewGeneration)gen).from();
|
ContiguousSpace from = ((DefNewGeneration)gen).from();
|
||||||
System.out.println("From Space:");
|
System.out.println("From Space:");
|
||||||
printSpace(from);
|
printSpace(from);
|
||||||
|
|
||||||
ContiguousSpace to = ((DefNewGeneration)gen).to();
|
ContiguousSpace to = ((DefNewGeneration)gen).to();
|
||||||
System.out.println("To Space:");
|
System.out.println("To Space:");
|
||||||
printSpace(to);
|
printSpace(to);
|
||||||
} else {
|
} else {
|
||||||
System.out.println(gen.name() + ":");
|
System.out.println(gen.name() + ":");
|
||||||
printGen(gen);
|
printGen(gen);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
} else if (sharedHeap instanceof G1CollectedHeap) {
|
||||||
|
G1CollectedHeap g1h = (G1CollectedHeap) sharedHeap;
|
||||||
|
G1MonitoringSupport g1mm = g1h.g1mm();
|
||||||
|
long edenRegionNum = g1mm.edenRegionNum();
|
||||||
|
long survivorRegionNum = g1mm.survivorRegionNum();
|
||||||
|
HeapRegionSetBase oldSet = g1h.oldSet();
|
||||||
|
HeapRegionSetBase humongousSet = g1h.humongousSet();
|
||||||
|
long oldRegionNum = oldSet.regionNum() + humongousSet.regionNum();
|
||||||
|
printG1Space("G1 Heap:", g1h.n_regions(),
|
||||||
|
g1h.used(), g1h.capacity());
|
||||||
|
System.out.println("G1 Young Generation:");
|
||||||
|
printG1Space("Eden Space:", edenRegionNum,
|
||||||
|
g1mm.edenUsed(), g1mm.edenCommitted());
|
||||||
|
printG1Space("Survivor Space:", survivorRegionNum,
|
||||||
|
g1mm.survivorUsed(), g1mm.survivorCommitted());
|
||||||
|
printG1Space("G1 Old Generation:", oldRegionNum,
|
||||||
|
g1mm.oldUsed(), g1mm.oldCommitted());
|
||||||
|
} else {
|
||||||
|
throw new RuntimeException("unknown SharedHeap type : " + heap.getClass());
|
||||||
}
|
}
|
||||||
// Perm generation
|
// Perm generation shared by the above
|
||||||
Generation permGen = genHeap.permGen();
|
Generation permGen = sharedHeap.permGen();
|
||||||
System.out.println("Perm Generation:");
|
System.out.println("Perm Generation:");
|
||||||
printGen(permGen);
|
printGen(permGen);
|
||||||
} else if (heap instanceof ParallelScavengeHeap) {
|
} else if (heap instanceof ParallelScavengeHeap) {
|
||||||
@@ -119,8 +143,11 @@ public class HeapSummary extends Tool {
|
|||||||
printValMB("free = ", permFree);
|
printValMB("free = ", permFree);
|
||||||
System.out.println(alignment + (double)permGen.used() * 100.0 / permGen.capacity() + "% used");
|
System.out.println(alignment + (double)permGen.used() * 100.0 / permGen.capacity() + "% used");
|
||||||
} else {
|
} else {
|
||||||
throw new RuntimeException("unknown heap type : " + heap.getClass());
|
throw new RuntimeException("unknown CollectedHeap type : " + heap.getClass());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
System.out.println();
|
||||||
|
printInternStringStatistics();
|
||||||
}
|
}
|
||||||
|
|
||||||
// Helper methods
|
// Helper methods
|
||||||
@@ -151,6 +178,14 @@ public class HeapSummary extends Tool {
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
l = getFlagValue("UseG1GC", flagMap);
|
||||||
|
if (l == 1L) {
|
||||||
|
System.out.print("Garbage-First (G1) GC ");
|
||||||
|
l = getFlagValue("ParallelGCThreads", flagMap);
|
||||||
|
System.out.println("with " + l + " thread(s)");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
System.out.println("Mark Sweep Compact GC");
|
System.out.println("Mark Sweep Compact GC");
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -191,6 +226,18 @@ public class HeapSummary extends Tool {
|
|||||||
System.out.println(alignment + (double)space.used() * 100.0 / space.capacity() + "% used");
|
System.out.println(alignment + (double)space.used() * 100.0 / space.capacity() + "% used");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void printG1Space(String spaceName, long regionNum,
|
||||||
|
long used, long capacity) {
|
||||||
|
long free = capacity - used;
|
||||||
|
System.out.println(spaceName);
|
||||||
|
printValue("regions = ", regionNum);
|
||||||
|
printValMB("capacity = ", capacity);
|
||||||
|
printValMB("used = ", used);
|
||||||
|
printValMB("free = ", free);
|
||||||
|
double occPerc = (capacity > 0) ? (double) used * 100.0 / capacity : 0.0;
|
||||||
|
System.out.println(alignment + occPerc + "% used");
|
||||||
|
}
|
||||||
|
|
||||||
private static final double FACTOR = 1024*1024;
|
private static final double FACTOR = 1024*1024;
|
||||||
private void printValMB(String title, long value) {
|
private void printValMB(String title, long value) {
|
||||||
if (value < 0) {
|
if (value < 0) {
|
||||||
@@ -217,4 +264,41 @@ public class HeapSummary extends Tool {
|
|||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void printInternStringStatistics() {
|
||||||
|
class StringStat implements StringTable.StringVisitor {
|
||||||
|
private int count;
|
||||||
|
private long size;
|
||||||
|
private OopField stringValueField;
|
||||||
|
|
||||||
|
StringStat() {
|
||||||
|
VM vm = VM.getVM();
|
||||||
|
SystemDictionary sysDict = vm.getSystemDictionary();
|
||||||
|
InstanceKlass strKlass = sysDict.getStringKlass();
|
||||||
|
// String has a field named 'value' of type 'char[]'.
|
||||||
|
stringValueField = (OopField) strKlass.findField("value", "[C");
|
||||||
|
}
|
||||||
|
|
||||||
|
private long stringSize(Instance instance) {
|
||||||
|
// We include String content in size calculation.
|
||||||
|
return instance.getObjectSize() +
|
||||||
|
stringValueField.getValue(instance).getObjectSize();
|
||||||
|
}
|
||||||
|
|
||||||
|
public void visit(Instance str) {
|
||||||
|
count++;
|
||||||
|
size += stringSize(str);
|
||||||
|
}
|
||||||
|
|
||||||
|
public void print() {
|
||||||
|
System.out.println(count +
|
||||||
|
" interned Strings occupying " + size + " bytes.");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
StringStat stat = new StringStat();
|
||||||
|
StringTable strTable = VM.getVM().getStringTable();
|
||||||
|
strTable.stringsDo(stat);
|
||||||
|
stat.print();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -63,47 +63,9 @@ public class PermStat extends Tool {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public void run() {
|
public void run() {
|
||||||
printInternStringStatistics();
|
|
||||||
printClassLoaderStatistics();
|
printClassLoaderStatistics();
|
||||||
}
|
}
|
||||||
|
|
||||||
private void printInternStringStatistics() {
|
|
||||||
class StringStat implements StringTable.StringVisitor {
|
|
||||||
private int count;
|
|
||||||
private long size;
|
|
||||||
private OopField stringValueField;
|
|
||||||
|
|
||||||
StringStat() {
|
|
||||||
VM vm = VM.getVM();
|
|
||||||
SystemDictionary sysDict = vm.getSystemDictionary();
|
|
||||||
InstanceKlass strKlass = sysDict.getStringKlass();
|
|
||||||
// String has a field named 'value' of type 'char[]'.
|
|
||||||
stringValueField = (OopField) strKlass.findField("value", "[C");
|
|
||||||
}
|
|
||||||
|
|
||||||
private long stringSize(Instance instance) {
|
|
||||||
// We include String content in size calculation.
|
|
||||||
return instance.getObjectSize() +
|
|
||||||
stringValueField.getValue(instance).getObjectSize();
|
|
||||||
}
|
|
||||||
|
|
||||||
public void visit(Instance str) {
|
|
||||||
count++;
|
|
||||||
size += stringSize(str);
|
|
||||||
}
|
|
||||||
|
|
||||||
public void print() {
|
|
||||||
System.out.println(count +
|
|
||||||
" intern Strings occupying " + size + " bytes.");
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
StringStat stat = new StringStat();
|
|
||||||
StringTable strTable = VM.getVM().getStringTable();
|
|
||||||
strTable.stringsDo(stat);
|
|
||||||
stat.print();
|
|
||||||
}
|
|
||||||
|
|
||||||
private void printClassLoaderStatistics() {
|
private void printClassLoaderStatistics() {
|
||||||
final PrintStream out = System.out;
|
final PrintStream out = System.out;
|
||||||
final PrintStream err = System.err;
|
final PrintStream err = System.err;
|
||||||
|
|||||||
@@ -43,7 +43,7 @@ public class PlatformInfo {
|
|||||||
return "bsd";
|
return "bsd";
|
||||||
} else if (os.equals("OpenBSD")) {
|
} else if (os.equals("OpenBSD")) {
|
||||||
return "bsd";
|
return "bsd";
|
||||||
} else if (os.equals("Darwin")) {
|
} else if (os.equals("Darwin") || os.startsWith("Mac OS X")) {
|
||||||
return "bsd";
|
return "bsd";
|
||||||
} else if (os.startsWith("Windows")) {
|
} else if (os.startsWith("Windows")) {
|
||||||
return "win32";
|
return "win32";
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
#
|
#
|
||||||
# Copyright (c) 2005, 2011, Oracle and/or its affiliates. All rights reserved.
|
# Copyright (c) 2005, 2012, Oracle and/or its affiliates. All rights reserved.
|
||||||
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||||
#
|
#
|
||||||
# This code is free software; you can redistribute it and/or modify it
|
# This code is free software; you can redistribute it and/or modify it
|
||||||
@@ -89,19 +89,31 @@ KERNEL_VM_TARGETS=productkernel fastdebugkernel optimizedkernel jvmgkernel
|
|||||||
ZERO_VM_TARGETS=productzero fastdebugzero optimizedzero jvmgzero
|
ZERO_VM_TARGETS=productzero fastdebugzero optimizedzero jvmgzero
|
||||||
SHARK_VM_TARGETS=productshark fastdebugshark optimizedshark jvmgshark
|
SHARK_VM_TARGETS=productshark fastdebugshark optimizedshark jvmgshark
|
||||||
|
|
||||||
|
COMMON_VM_PRODUCT_TARGETS=product product1 productkernel docs export_product
|
||||||
|
COMMON_VM_FASTDEBUG_TARGETS=fastdebug fastdebug1 fastdebugkernel docs export_fastdebug
|
||||||
|
COMMON_VM_DEBUG_TARGETS=jvmg jvmg1 jvmgkernel docs export_debug
|
||||||
|
|
||||||
# JDK directory list
|
# JDK directory list
|
||||||
JDK_DIRS=bin include jre lib demo
|
JDK_DIRS=bin include jre lib demo
|
||||||
|
|
||||||
all: all_product all_fastdebug
|
all: all_product all_fastdebug
|
||||||
ifndef BUILD_CLIENT_ONLY
|
|
||||||
all_product: product product1 productkernel docs export_product
|
ifdef BUILD_CLIENT_ONLY
|
||||||
all_fastdebug: fastdebug fastdebug1 fastdebugkernel docs export_fastdebug
|
|
||||||
all_debug: jvmg jvmg1 jvmgkernel docs export_debug
|
|
||||||
else
|
|
||||||
all_product: product1 docs export_product
|
all_product: product1 docs export_product
|
||||||
all_fastdebug: fastdebug1 docs export_fastdebug
|
all_fastdebug: fastdebug1 docs export_fastdebug
|
||||||
all_debug: jvmg1 docs export_debug
|
all_debug: jvmg1 docs export_debug
|
||||||
|
else
|
||||||
|
ifeq ($(MACOSX_UNIVERSAL),true)
|
||||||
|
all_product: universal_product
|
||||||
|
all_fastdebug: universal_fastdebug
|
||||||
|
all_debug: universal_debug
|
||||||
|
else
|
||||||
|
all_product: $(COMMON_VM_PRODUCT_TARGETS)
|
||||||
|
all_fastdebug: $(COMMON_VM_FASTDEBUG_TARGETS)
|
||||||
|
all_debug: $(COMMON_VM_DEBUG_TARGETS)
|
||||||
endif
|
endif
|
||||||
|
endif
|
||||||
|
|
||||||
all_optimized: optimized optimized1 optimizedkernel docs export_optimized
|
all_optimized: optimized optimized1 optimizedkernel docs export_optimized
|
||||||
|
|
||||||
allzero: all_productzero all_fastdebugzero
|
allzero: all_productzero all_fastdebugzero
|
||||||
@@ -232,20 +244,19 @@ export_debug:
|
|||||||
$(MAKE) VM_SUBDIR=${VM_DEBUG} EXPORT_SUBDIR=/debug generic_export
|
$(MAKE) VM_SUBDIR=${VM_DEBUG} EXPORT_SUBDIR=/debug generic_export
|
||||||
export_optimized:
|
export_optimized:
|
||||||
$(MAKE) VM_SUBDIR=optimized EXPORT_SUBDIR=/optimized generic_export
|
$(MAKE) VM_SUBDIR=optimized EXPORT_SUBDIR=/optimized generic_export
|
||||||
export_product_jdk:
|
export_product_jdk::
|
||||||
$(MAKE) ALT_EXPORT_PATH=$(JDK_IMAGE_DIR) \
|
$(MAKE) ALT_EXPORT_PATH=$(JDK_IMAGE_DIR) \
|
||||||
VM_SUBDIR=product generic_export
|
VM_SUBDIR=product generic_export
|
||||||
export_optimized_jdk:
|
export_optimized_jdk::
|
||||||
$(MAKE) ALT_EXPORT_PATH=$(JDK_IMAGE_DIR) \
|
$(MAKE) ALT_EXPORT_PATH=$(JDK_IMAGE_DIR) \
|
||||||
VM_SUBDIR=optimized generic_export
|
VM_SUBDIR=optimized generic_export
|
||||||
export_fastdebug_jdk:
|
export_fastdebug_jdk::
|
||||||
$(MAKE) ALT_EXPORT_PATH=$(JDK_IMAGE_DIR)/fastdebug \
|
$(MAKE) ALT_EXPORT_PATH=$(JDK_IMAGE_DIR)/fastdebug \
|
||||||
VM_SUBDIR=fastdebug generic_export
|
VM_SUBDIR=fastdebug generic_export
|
||||||
export_debug_jdk:
|
export_debug_jdk::
|
||||||
$(MAKE) ALT_EXPORT_PATH=$(JDK_IMAGE_DIR)/debug \
|
$(MAKE) ALT_EXPORT_PATH=$(JDK_IMAGE_DIR)/debug \
|
||||||
VM_SUBDIR=${VM_DEBUG} generic_export
|
VM_SUBDIR=${VM_DEBUG} generic_export
|
||||||
|
|
||||||
|
|
||||||
# Export file copy rules
|
# Export file copy rules
|
||||||
XUSAGE=$(HS_SRC_DIR)/share/vm/Xusage.txt
|
XUSAGE=$(HS_SRC_DIR)/share/vm/Xusage.txt
|
||||||
DOCS_DIR=$(OUTPUTDIR)/$(VM_PLATFORM)_docs
|
DOCS_DIR=$(OUTPUTDIR)/$(VM_PLATFORM)_docs
|
||||||
@@ -367,7 +378,7 @@ endif
|
|||||||
$(EXPORT_LIB_DIR)/%.jar: $(GEN_DIR)/%.jar
|
$(EXPORT_LIB_DIR)/%.jar: $(GEN_DIR)/%.jar
|
||||||
$(install-file)
|
$(install-file)
|
||||||
|
|
||||||
# Include files (jvmti.h, jvmticmlr.h, jni.h, $(JDK_INCLUDE_SUBDIR)/jni_md.h, jmm.h)
|
# Include files (jvmti.h, jvmticmlr.h, jni.h, $(JDK_INCLUDE_SUBDIR)/jni_md.h, jmm.h, jfr.h)
|
||||||
$(EXPORT_INCLUDE_DIR)/%: $(GEN_DIR)/jvmtifiles/%
|
$(EXPORT_INCLUDE_DIR)/%: $(GEN_DIR)/jvmtifiles/%
|
||||||
$(install-file)
|
$(install-file)
|
||||||
|
|
||||||
@@ -384,6 +395,15 @@ $(EXPORT_INCLUDE_DIR)/$(JDK_INCLUDE_SUBDIR)/jni_md.h: $(HS_JNI_ARCH_SRC)
|
|||||||
$(EXPORT_INCLUDE_DIR)/%: $(HS_SRC_DIR)/share/vm/services/%
|
$(EXPORT_INCLUDE_DIR)/%: $(HS_SRC_DIR)/share/vm/services/%
|
||||||
$(install-file)
|
$(install-file)
|
||||||
|
|
||||||
|
JFR_EXISTS=$(shell if [ -d $(HS_ALT_SRC) ]; then echo 1; else echo 0; fi)
|
||||||
|
# export jfr.h
|
||||||
|
ifeq ($JFR_EXISTS,1)
|
||||||
|
$(EXPORT_INCLUDE_DIR)/%: $(HS_ALT_SRC)/share/vm/jfr/agent/%
|
||||||
|
$(install-file)
|
||||||
|
else
|
||||||
|
$(EXPORT_INCLUDE_DIR)/jfr.h:
|
||||||
|
endif
|
||||||
|
|
||||||
# Doc files (jvmti.html)
|
# Doc files (jvmti.html)
|
||||||
$(EXPORT_DOCS_DIR)/platform/jvmti/%: $(DOCS_DIR)/%
|
$(EXPORT_DOCS_DIR)/platform/jvmti/%: $(DOCS_DIR)/%
|
||||||
$(install-file)
|
$(install-file)
|
||||||
@@ -427,21 +447,27 @@ $(JDK_IMAGE_DIR)/jre/lib/rt.jar:
|
|||||||
($(CD) $(JDK_IMAGE_DIR) && $(TAR) -xf -)
|
($(CD) $(JDK_IMAGE_DIR) && $(TAR) -xf -)
|
||||||
|
|
||||||
test_jdk:
|
test_jdk:
|
||||||
ifneq ($(ZERO_BUILD), true)
|
|
||||||
ifeq ($(ARCH_DATA_MODEL), 32)
|
ifeq ($(ARCH_DATA_MODEL), 32)
|
||||||
$(JDK_IMAGE_DIR)/bin/java -client -version
|
ifneq ($(ZERO_BUILD), true)
|
||||||
|
$(JDK_IMAGE_DIR)/bin/java -d32 -client -Xinternalversion
|
||||||
|
$(JDK_IMAGE_DIR)/bin/java -d32 -client -version
|
||||||
|
endif
|
||||||
|
$(JDK_IMAGE_DIR)/bin/java -d32 -server -Xinternalversion
|
||||||
|
$(JDK_IMAGE_DIR)/bin/java -d32 -server -version
|
||||||
|
endif
|
||||||
|
ifeq ($(ARCH_DATA_MODEL), 64)
|
||||||
|
$(JDK_IMAGE_DIR)/bin/java -d64 -server -Xinternalversion
|
||||||
|
$(JDK_IMAGE_DIR)/bin/java -d64 -server -version
|
||||||
endif
|
endif
|
||||||
endif
|
|
||||||
$(JDK_IMAGE_DIR)/bin/java -server -version
|
|
||||||
|
|
||||||
copy_product_jdk:
|
copy_product_jdk::
|
||||||
$(RM) -r $(JDK_IMAGE_DIR)
|
$(RM) -r $(JDK_IMAGE_DIR)
|
||||||
$(MKDIR) -p $(JDK_IMAGE_DIR)
|
$(MKDIR) -p $(JDK_IMAGE_DIR)
|
||||||
($(CD) $(JDK_IMPORT_PATH) && \
|
($(CD) $(JDK_IMPORT_PATH) && \
|
||||||
$(TAR) -cf - $(JDK_DIRS)) | \
|
$(TAR) -cf - $(JDK_DIRS)) | \
|
||||||
($(CD) $(JDK_IMAGE_DIR) && $(TAR) -xf -)
|
($(CD) $(JDK_IMAGE_DIR) && $(TAR) -xf -)
|
||||||
|
|
||||||
copy_fastdebug_jdk:
|
copy_fastdebug_jdk::
|
||||||
$(RM) -r $(JDK_IMAGE_DIR)/fastdebug
|
$(RM) -r $(JDK_IMAGE_DIR)/fastdebug
|
||||||
$(MKDIR) -p $(JDK_IMAGE_DIR)/fastdebug
|
$(MKDIR) -p $(JDK_IMAGE_DIR)/fastdebug
|
||||||
if [ -d $(JDK_IMPORT_PATH)/fastdebug ] ; then \
|
if [ -d $(JDK_IMPORT_PATH)/fastdebug ] ; then \
|
||||||
@@ -454,7 +480,7 @@ copy_fastdebug_jdk:
|
|||||||
($(CD) $(JDK_IMAGE_DIR)/fastdebug && $(TAR) -xf -) ; \
|
($(CD) $(JDK_IMAGE_DIR)/fastdebug && $(TAR) -xf -) ; \
|
||||||
fi
|
fi
|
||||||
|
|
||||||
copy_debug_jdk:
|
copy_debug_jdk::
|
||||||
$(RM) -r $(JDK_IMAGE_DIR)/debug
|
$(RM) -r $(JDK_IMAGE_DIR)/debug
|
||||||
$(MKDIR) -p $(JDK_IMAGE_DIR)/debug
|
$(MKDIR) -p $(JDK_IMAGE_DIR)/debug
|
||||||
if [ -d $(JDK_IMPORT_PATH)/debug ] ; then \
|
if [ -d $(JDK_IMPORT_PATH)/debug ] ; then \
|
||||||
@@ -524,6 +550,7 @@ SLASH_JAVA.desc = Root of all build tools, e.g. /java or J:
|
|||||||
OUTPUTDIR.desc = Output directory, default is build/<osname>
|
OUTPUTDIR.desc = Output directory, default is build/<osname>
|
||||||
BOOTDIR.desc = JDK used to compile agent java source and test with
|
BOOTDIR.desc = JDK used to compile agent java source and test with
|
||||||
JDK_IMPORT_PATH.desc = Promoted JDK to copy for 'create_jdk'
|
JDK_IMPORT_PATH.desc = Promoted JDK to copy for 'create_jdk'
|
||||||
|
JDK_IMAGE_DIR.desc = Directory to place JDK to copy
|
||||||
EXPORT_PATH.desc = Directory to place files to export for JDK build
|
EXPORT_PATH.desc = Directory to place files to export for JDK build
|
||||||
|
|
||||||
# Make variables to print out (description and value)
|
# Make variables to print out (description and value)
|
||||||
@@ -532,6 +559,7 @@ VARIABLE_PRINTVAL_LIST += \
|
|||||||
OUTPUTDIR \
|
OUTPUTDIR \
|
||||||
BOOTDIR \
|
BOOTDIR \
|
||||||
JDK_IMPORT_PATH \
|
JDK_IMPORT_PATH \
|
||||||
|
JDK_IMAGE_DIR \
|
||||||
EXPORT_PATH
|
EXPORT_PATH
|
||||||
|
|
||||||
# Make variables that should refer to directories that exist
|
# Make variables that should refer to directories that exist
|
||||||
@@ -590,6 +618,13 @@ examples_help:
|
|||||||
@$(ECHO) \
|
@$(ECHO) \
|
||||||
" $(MAKE) ALT_JDK_IMPORT_PATH=/opt/java/jdk$(JDK_VERSION)"
|
" $(MAKE) ALT_JDK_IMPORT_PATH=/opt/java/jdk$(JDK_VERSION)"
|
||||||
|
|
||||||
|
# Universal build support
|
||||||
|
ifeq ($(OS_VENDOR), Darwin)
|
||||||
|
ifeq ($(MACOSX_UNIVERSAL),true)
|
||||||
|
include $(GAMMADIR)/make/$(OSNAME)/makefiles/universal.gmk
|
||||||
|
endif
|
||||||
|
endif
|
||||||
|
|
||||||
# JPRT rule to build this workspace
|
# JPRT rule to build this workspace
|
||||||
include $(GAMMADIR)/make/jprt.gmk
|
include $(GAMMADIR)/make/jprt.gmk
|
||||||
|
|
||||||
@@ -599,5 +634,4 @@ include $(GAMMADIR)/make/jprt.gmk
|
|||||||
export_product export_fastdebug export_debug export_optimized \
|
export_product export_fastdebug export_debug export_optimized \
|
||||||
export_jdk_product export_jdk_fastdebug export_jdk_debug \
|
export_jdk_product export_jdk_fastdebug export_jdk_debug \
|
||||||
create_jdk copy_jdk update_jdk test_jdk \
|
create_jdk copy_jdk update_jdk test_jdk \
|
||||||
copy_product_jdk copy_fastdebug_jdk copy_debug_jdk
|
copy_product_jdk copy_fastdebug_jdk copy_debug_jdk
|
||||||
|
|
||||||
|
|||||||
@@ -208,7 +208,7 @@ TARGETS_ZERO = $(addsuffix zero,$(TARGETS))
|
|||||||
TARGETS_SHARK = $(addsuffix shark,$(TARGETS))
|
TARGETS_SHARK = $(addsuffix shark,$(TARGETS))
|
||||||
|
|
||||||
BUILDTREE_MAKE = $(GAMMADIR)/make/$(OSNAME)/makefiles/buildtree.make
|
BUILDTREE_MAKE = $(GAMMADIR)/make/$(OSNAME)/makefiles/buildtree.make
|
||||||
BUILDTREE_VARS = GAMMADIR=$(GAMMADIR) OS_FAMILY=$(OSNAME) SRCARCH=$(SRCARCH) BUILDARCH=$(BUILDARCH) LIBARCH=$(LIBARCH)
|
BUILDTREE_VARS = GAMMADIR=$(GAMMADIR) OS_FAMILY=$(OSNAME) SRCARCH=$(SRCARCH) BUILDARCH=$(BUILDARCH) LIBARCH=$(LIBARCH) LIBRARY_SUFFIX=$(LIBRARY_SUFFIX)
|
||||||
BUILDTREE_VARS += HOTSPOT_RELEASE_VERSION=$(HOTSPOT_RELEASE_VERSION) HOTSPOT_BUILD_VERSION=$(HOTSPOT_BUILD_VERSION) JRE_RELEASE_VERSION=$(JRE_RELEASE_VERSION)
|
BUILDTREE_VARS += HOTSPOT_RELEASE_VERSION=$(HOTSPOT_RELEASE_VERSION) HOTSPOT_BUILD_VERSION=$(HOTSPOT_BUILD_VERSION) JRE_RELEASE_VERSION=$(JRE_RELEASE_VERSION)
|
||||||
|
|
||||||
BUILDTREE = $(MAKE) -f $(BUILDTREE_MAKE) $(BUILDTREE_VARS)
|
BUILDTREE = $(MAKE) -f $(BUILDTREE_MAKE) $(BUILDTREE_VARS)
|
||||||
|
|||||||
@@ -39,9 +39,16 @@ OS = $(Platform_os_family)
|
|||||||
|
|
||||||
SOURCE.AD = $(OUTDIR)/$(OS)_$(Platform_arch_model).ad
|
SOURCE.AD = $(OUTDIR)/$(OS)_$(Platform_arch_model).ad
|
||||||
|
|
||||||
SOURCES.AD = \
|
ifeq ("${Platform_arch_model}", "${Platform_arch}")
|
||||||
|
SOURCES.AD = \
|
||||||
$(call altsrc-replace,$(HS_COMMON_SRC)/cpu/$(ARCH)/vm/$(Platform_arch_model).ad) \
|
$(call altsrc-replace,$(HS_COMMON_SRC)/cpu/$(ARCH)/vm/$(Platform_arch_model).ad) \
|
||||||
$(call altsrc-replace,$(HS_COMMON_SRC)/os_cpu/$(OS)_$(ARCH)/vm/$(OS)_$(Platform_arch_model).ad)
|
$(call altsrc-replace,$(HS_COMMON_SRC)/os_cpu/$(OS)_$(ARCH)/vm/$(OS)_$(Platform_arch_model).ad)
|
||||||
|
else
|
||||||
|
SOURCES.AD = \
|
||||||
|
$(call altsrc-replace,$(HS_COMMON_SRC)/cpu/$(ARCH)/vm/$(Platform_arch_model).ad) \
|
||||||
|
$(call altsrc-replace,$(HS_COMMON_SRC)/cpu/$(ARCH)/vm/$(Platform_arch).ad) \
|
||||||
|
$(call altsrc-replace,$(HS_COMMON_SRC)/os_cpu/$(OS)_$(ARCH)/vm/$(OS)_$(Platform_arch_model).ad)
|
||||||
|
endif
|
||||||
|
|
||||||
EXEC = $(OUTDIR)/adlc
|
EXEC = $(OUTDIR)/adlc
|
||||||
|
|
||||||
@@ -54,14 +61,16 @@ Src_Dirs_I += $(GAMMADIR)/src/share/vm/adlc $(GENERATED)
|
|||||||
INCLUDES += $(Src_Dirs_I:%=-I%)
|
INCLUDES += $(Src_Dirs_I:%=-I%)
|
||||||
|
|
||||||
# set flags for adlc compilation
|
# set flags for adlc compilation
|
||||||
CPPFLAGS = $(SYSDEFS) $(INCLUDES)
|
CXXFLAGS = $(SYSDEFS) $(INCLUDES)
|
||||||
|
|
||||||
# Force assertions on.
|
# Force assertions on.
|
||||||
CPPFLAGS += -DASSERT
|
CXXFLAGS += -DASSERT
|
||||||
|
|
||||||
# CFLAGS_WARN holds compiler options to suppress/enable warnings.
|
# CFLAGS_WARN holds compiler options to suppress/enable warnings.
|
||||||
# Compiler warnings are treated as errors
|
# Compiler warnings are treated as errors
|
||||||
CFLAGS_WARN = -Werror
|
ifneq ($(COMPILER_WARNINGS_FATAL),false)
|
||||||
|
CFLAGS_WARN = -Werror
|
||||||
|
endif
|
||||||
CFLAGS += $(CFLAGS_WARN)
|
CFLAGS += $(CFLAGS_WARN)
|
||||||
|
|
||||||
OBJECTNAMES = \
|
OBJECTNAMES = \
|
||||||
@@ -102,7 +111,7 @@ all: $(EXEC)
|
|||||||
|
|
||||||
$(EXEC) : $(OBJECTS)
|
$(EXEC) : $(OBJECTS)
|
||||||
@echo Making adlc
|
@echo Making adlc
|
||||||
$(QUIETLY) $(HOST.LINK_NOPROF.CC) -o $(EXEC) $(OBJECTS)
|
$(QUIETLY) $(HOST.LINK_NOPROF.CXX) -o $(EXEC) $(OBJECTS)
|
||||||
|
|
||||||
# Random dependencies:
|
# Random dependencies:
|
||||||
$(OBJECTS): opcodes.hpp classes.hpp adlc.hpp adlcVMDeps.hpp adlparse.hpp archDesc.hpp arena.hpp dict2.hpp filebuff.hpp forms.hpp formsopt.hpp formssel.hpp
|
$(OBJECTS): opcodes.hpp classes.hpp adlc.hpp adlcVMDeps.hpp adlparse.hpp archDesc.hpp arena.hpp dict2.hpp filebuff.hpp forms.hpp formsopt.hpp formssel.hpp
|
||||||
@@ -204,14 +213,14 @@ PROCESS_AD_FILES = awk '{ \
|
|||||||
$(OUTDIR)/%.o: %.cpp
|
$(OUTDIR)/%.o: %.cpp
|
||||||
@echo Compiling $<
|
@echo Compiling $<
|
||||||
$(QUIETLY) $(REMOVE_TARGET)
|
$(QUIETLY) $(REMOVE_TARGET)
|
||||||
$(QUIETLY) $(HOST.COMPILE.CC) -o $@ $< $(COMPILE_DONE)
|
$(QUIETLY) $(HOST.COMPILE.CXX) -o $@ $< $(COMPILE_DONE)
|
||||||
|
|
||||||
# Some object files are given a prefix, to disambiguate
|
# Some object files are given a prefix, to disambiguate
|
||||||
# them from objects of the same name built for the VM.
|
# them from objects of the same name built for the VM.
|
||||||
$(OUTDIR)/adlc-%.o: %.cpp
|
$(OUTDIR)/adlc-%.o: %.cpp
|
||||||
@echo Compiling $<
|
@echo Compiling $<
|
||||||
$(QUIETLY) $(REMOVE_TARGET)
|
$(QUIETLY) $(REMOVE_TARGET)
|
||||||
$(QUIETLY) $(HOST.COMPILE.CC) -o $@ $< $(COMPILE_DONE)
|
$(QUIETLY) $(HOST.COMPILE.CXX) -o $@ $< $(COMPILE_DONE)
|
||||||
|
|
||||||
# #########################################################################
|
# #########################################################################
|
||||||
|
|
||||||
|
|||||||
@@ -55,6 +55,10 @@
|
|||||||
# The makefiles are split this way so that "make foo" will run faster by not
|
# The makefiles are split this way so that "make foo" will run faster by not
|
||||||
# having to read the dependency files for the vm.
|
# having to read the dependency files for the vm.
|
||||||
|
|
||||||
|
# needs to be set here since this Makefile doesn't include defs.make
|
||||||
|
OS_VENDOR:=$(shell uname -s)
|
||||||
|
|
||||||
|
-include $(SPEC)
|
||||||
include $(GAMMADIR)/make/scm.make
|
include $(GAMMADIR)/make/scm.make
|
||||||
include $(GAMMADIR)/make/altsrc.make
|
include $(GAMMADIR)/make/altsrc.make
|
||||||
|
|
||||||
@@ -114,10 +118,12 @@ endif
|
|||||||
# Get things from the platform file.
|
# Get things from the platform file.
|
||||||
COMPILER = $(shell sed -n 's/^compiler[ ]*=[ ]*//p' $(PLATFORM_FILE))
|
COMPILER = $(shell sed -n 's/^compiler[ ]*=[ ]*//p' $(PLATFORM_FILE))
|
||||||
|
|
||||||
|
# dtracefiles is used on BSD versions that implement Dtrace (like MacOS X)
|
||||||
SIMPLE_DIRS = \
|
SIMPLE_DIRS = \
|
||||||
$(PLATFORM_DIR)/generated/dependencies \
|
$(PLATFORM_DIR)/generated/dependencies \
|
||||||
$(PLATFORM_DIR)/generated/adfiles \
|
$(PLATFORM_DIR)/generated/adfiles \
|
||||||
$(PLATFORM_DIR)/generated/jvmtifiles
|
$(PLATFORM_DIR)/generated/jvmtifiles \
|
||||||
|
$(PLATFORM_DIR)/generated/dtracefiles
|
||||||
|
|
||||||
TARGETS = debug fastdebug jvmg optimized product profiled
|
TARGETS = debug fastdebug jvmg optimized product profiled
|
||||||
SUBMAKE_DIRS = $(addprefix $(PLATFORM_DIR)/,$(TARGETS))
|
SUBMAKE_DIRS = $(addprefix $(PLATFORM_DIR)/,$(TARGETS))
|
||||||
@@ -125,7 +131,9 @@ SUBMAKE_DIRS = $(addprefix $(PLATFORM_DIR)/,$(TARGETS))
|
|||||||
# For dependencies and recursive makes.
|
# For dependencies and recursive makes.
|
||||||
BUILDTREE_MAKE = $(GAMMADIR)/make/$(OS_FAMILY)/makefiles/buildtree.make
|
BUILDTREE_MAKE = $(GAMMADIR)/make/$(OS_FAMILY)/makefiles/buildtree.make
|
||||||
|
|
||||||
BUILDTREE_TARGETS = Makefile flags.make flags_vm.make vm.make adlc.make jvmti.make sa.make \
|
# dtrace.make is used on BSD versions that implement Dtrace (like MacOS X)
|
||||||
|
BUILDTREE_TARGETS = Makefile flags.make flags_vm.make vm.make adlc.make \
|
||||||
|
jvmti.make sa.make dtrace.make \
|
||||||
env.sh env.csh jdkpath.sh .dbxrc test_gamma
|
env.sh env.csh jdkpath.sh .dbxrc test_gamma
|
||||||
|
|
||||||
BUILDTREE_VARS = GAMMADIR=$(GAMMADIR) OS_FAMILY=$(OS_FAMILY) \
|
BUILDTREE_VARS = GAMMADIR=$(GAMMADIR) OS_FAMILY=$(OS_FAMILY) \
|
||||||
@@ -223,6 +231,8 @@ flags.make: $(BUILDTREE_MAKE) ../shared_dirs.lst
|
|||||||
echo "$(call gamma-path,commonsrc,share/vm/prims) \\"; \
|
echo "$(call gamma-path,commonsrc,share/vm/prims) \\"; \
|
||||||
echo "$(call gamma-path,altsrc,share/vm) \\"; \
|
echo "$(call gamma-path,altsrc,share/vm) \\"; \
|
||||||
echo "$(call gamma-path,commonsrc,share/vm) \\"; \
|
echo "$(call gamma-path,commonsrc,share/vm) \\"; \
|
||||||
|
echo "$(call gamma-path,altsrc,share/vm/precompiled) \\"; \
|
||||||
|
echo "$(call gamma-path,commonsrc,share/vm/precompiled) \\"; \
|
||||||
echo "$(call gamma-path,altsrc,cpu/$(SRCARCH)/vm) \\"; \
|
echo "$(call gamma-path,altsrc,cpu/$(SRCARCH)/vm) \\"; \
|
||||||
echo "$(call gamma-path,commonsrc,cpu/$(SRCARCH)/vm) \\"; \
|
echo "$(call gamma-path,commonsrc,cpu/$(SRCARCH)/vm) \\"; \
|
||||||
echo "$(call gamma-path,altsrc,os_cpu/$(OS_FAMILY)_$(SRCARCH)/vm) \\"; \
|
echo "$(call gamma-path,altsrc,os_cpu/$(OS_FAMILY)_$(SRCARCH)/vm) \\"; \
|
||||||
@@ -238,6 +248,8 @@ flags.make: $(BUILDTREE_MAKE) ../shared_dirs.lst
|
|||||||
echo "HOTSPOT_EXTRA_SYSDEFS\$$(HOTSPOT_EXTRA_SYSDEFS) = $(HOTSPOT_EXTRA_SYSDEFS)" && \
|
echo "HOTSPOT_EXTRA_SYSDEFS\$$(HOTSPOT_EXTRA_SYSDEFS) = $(HOTSPOT_EXTRA_SYSDEFS)" && \
|
||||||
echo "SYSDEFS += \$$(HOTSPOT_EXTRA_SYSDEFS)"; \
|
echo "SYSDEFS += \$$(HOTSPOT_EXTRA_SYSDEFS)"; \
|
||||||
echo; \
|
echo; \
|
||||||
|
[ -n "$(SPEC)" ] && \
|
||||||
|
echo "include $(SPEC)"; \
|
||||||
echo "include \$$(GAMMADIR)/make/$(OS_FAMILY)/makefiles/$(VARIANT).make"; \
|
echo "include \$$(GAMMADIR)/make/$(OS_FAMILY)/makefiles/$(VARIANT).make"; \
|
||||||
echo "include \$$(GAMMADIR)/make/$(OS_FAMILY)/makefiles/$(COMPILER).make"; \
|
echo "include \$$(GAMMADIR)/make/$(OS_FAMILY)/makefiles/$(COMPILER).make"; \
|
||||||
) > $@
|
) > $@
|
||||||
@@ -314,18 +326,26 @@ sa.make: $(BUILDTREE_MAKE)
|
|||||||
echo "include \$$(GAMMADIR)/make/$(OS_FAMILY)/makefiles/$(@F)"; \
|
echo "include \$$(GAMMADIR)/make/$(OS_FAMILY)/makefiles/$(@F)"; \
|
||||||
) > $@
|
) > $@
|
||||||
|
|
||||||
|
dtrace.make: $(BUILDTREE_MAKE)
|
||||||
|
@echo Creating $@ ...
|
||||||
|
$(QUIETLY) ( \
|
||||||
|
$(BUILDTREE_COMMENT); \
|
||||||
|
echo; \
|
||||||
|
echo include flags.make; \
|
||||||
|
echo; \
|
||||||
|
echo "include \$$(GAMMADIR)/make/$(OS_FAMILY)/makefiles/$(@F)"; \
|
||||||
|
) > $@
|
||||||
|
|
||||||
env.sh: $(BUILDTREE_MAKE)
|
env.sh: $(BUILDTREE_MAKE)
|
||||||
@echo Creating $@ ...
|
@echo Creating $@ ...
|
||||||
$(QUIETLY) ( \
|
$(QUIETLY) ( \
|
||||||
$(BUILDTREE_COMMENT); \
|
$(BUILDTREE_COMMENT); \
|
||||||
[ -n "$$JAVA_HOME" ] && { echo ": \$${JAVA_HOME:=$${JAVA_HOME}}"; }; \
|
[ -n "$$JAVA_HOME" ] && { echo ": \$${JAVA_HOME:=$${JAVA_HOME}}"; }; \
|
||||||
{ \
|
{ \
|
||||||
echo "LD_LIBRARY_PATH=.:$${LD_LIBRARY_PATH:+$$LD_LIBRARY_PATH:}\$${JAVA_HOME}/jre/lib/${LIBARCH}/native_threads:\$${JAVA_HOME}/jre/lib/${LIBARCH}:${GCC_LIB}"; \
|
|
||||||
echo "DYLD_LIBRARY_PATH=.:$${DYLD_LIBRARY_PATH:+$$DYLD_LIBRARY_PATH:}\$${JAVA_HOME}/jre/lib/${LIBARCH}/native_threads:\$${JAVA_HOME}/jre/lib/${LIBARCH}:${GCC_LIB}"; \
|
|
||||||
echo "CLASSPATH=$${CLASSPATH:+$$CLASSPATH:}.:\$${JAVA_HOME}/jre/lib/rt.jar:\$${JAVA_HOME}/jre/lib/i18n.jar"; \
|
echo "CLASSPATH=$${CLASSPATH:+$$CLASSPATH:}.:\$${JAVA_HOME}/jre/lib/rt.jar:\$${JAVA_HOME}/jre/lib/i18n.jar"; \
|
||||||
} | sed s:$${JAVA_HOME:--------}:\$${JAVA_HOME}:g; \
|
} | sed s:$${JAVA_HOME:--------}:\$${JAVA_HOME}:g; \
|
||||||
echo "HOTSPOT_BUILD_USER=\"$${LOGNAME:-$$USER} in `basename $(GAMMADIR)`\""; \
|
echo "HOTSPOT_BUILD_USER=\"$${LOGNAME:-$$USER} in `basename $(GAMMADIR)`\""; \
|
||||||
echo "export JAVA_HOME LD_LIBRARY_PATH DYLD_LIBRARY_PATH CLASSPATH HOTSPOT_BUILD_USER"; \
|
echo "export JAVA_HOME CLASSPATH HOTSPOT_BUILD_USER"; \
|
||||||
) > $@
|
) > $@
|
||||||
|
|
||||||
env.csh: env.sh
|
env.csh: env.sh
|
||||||
@@ -379,7 +399,7 @@ JAVA_FLAG/32 = -d32
|
|||||||
JAVA_FLAG/64 = -d64
|
JAVA_FLAG/64 = -d64
|
||||||
|
|
||||||
WRONG_DATA_MODE_MSG = \
|
WRONG_DATA_MODE_MSG = \
|
||||||
echo "JAVA_HOME must point to $(DATA_MODE)bit JDK."
|
echo "JAVA_HOME must point to a $(DATA_MODE)-bit OpenJDK."
|
||||||
|
|
||||||
CROSS_COMPILING_MSG = \
|
CROSS_COMPILING_MSG = \
|
||||||
echo "Cross compiling for ARCH $(CROSS_COMPILE_ARCH), skipping gamma run."
|
echo "Cross compiling for ARCH $(CROSS_COMPILE_ARCH), skipping gamma run."
|
||||||
@@ -387,20 +407,78 @@ CROSS_COMPILING_MSG = \
|
|||||||
test_gamma: $(BUILDTREE_MAKE) $(GAMMADIR)/make/test/Queens.java
|
test_gamma: $(BUILDTREE_MAKE) $(GAMMADIR)/make/test/Queens.java
|
||||||
@echo Creating $@ ...
|
@echo Creating $@ ...
|
||||||
$(QUIETLY) ( \
|
$(QUIETLY) ( \
|
||||||
echo '#!/bin/sh'; \
|
echo "#!/bin/sh"; \
|
||||||
|
echo ""; \
|
||||||
$(BUILDTREE_COMMENT); \
|
$(BUILDTREE_COMMENT); \
|
||||||
echo '. ./env.sh'; \
|
echo ""; \
|
||||||
echo "exit 0;"; \
|
echo "# Include environment settings for gamma run"; \
|
||||||
echo "if [ \"$(CROSS_COMPILE_ARCH)\" != \"\" ]; then { $(CROSS_COMPILING_MSG); exit 0; }; fi"; \
|
echo ""; \
|
||||||
echo "if [ -z \$$JAVA_HOME ]; then { $(NO_JAVA_HOME_MSG); exit 0; }; fi"; \
|
echo ". ./env.sh"; \
|
||||||
echo "if ! \$${JAVA_HOME}/bin/java $(JAVA_FLAG) -fullversion 2>&1 > /dev/null"; \
|
echo ""; \
|
||||||
echo "then"; \
|
echo "# Do not run gamma test for cross compiles"; \
|
||||||
echo " $(WRONG_DATA_MODE_MSG); exit 0;"; \
|
echo ""; \
|
||||||
|
echo "if [ -n \"$(CROSS_COMPILE_ARCH)\" ]; then "; \
|
||||||
|
echo " $(CROSS_COMPILING_MSG)"; \
|
||||||
|
echo " exit 0"; \
|
||||||
echo "fi"; \
|
echo "fi"; \
|
||||||
|
echo ""; \
|
||||||
|
echo "# Make sure JAVA_HOME is set as it is required for gamma"; \
|
||||||
|
echo ""; \
|
||||||
|
echo "if [ -z \"\$${JAVA_HOME}\" ]; then "; \
|
||||||
|
echo " $(NO_JAVA_HOME_MSG)"; \
|
||||||
|
echo " exit 0"; \
|
||||||
|
echo "fi"; \
|
||||||
|
echo ""; \
|
||||||
|
echo "# Check JAVA_HOME version to be used for the test"; \
|
||||||
|
echo ""; \
|
||||||
|
echo "\$${JAVA_HOME}/bin/java $(JAVA_FLAG) -fullversion > /dev/null 2>&1"; \
|
||||||
|
echo "if [ \$$? -ne 0 ]; then "; \
|
||||||
|
echo " $(WRONG_DATA_MODE_MSG)"; \
|
||||||
|
echo " exit 0"; \
|
||||||
|
echo "fi"; \
|
||||||
|
echo ""; \
|
||||||
|
echo "# Use gamma_g if it exists"; \
|
||||||
|
echo ""; \
|
||||||
|
echo "GAMMA_PROG=gamma"; \
|
||||||
|
echo "if [ -f gamma_g ]; then "; \
|
||||||
|
echo " GAMMA_PROG=gamma_g"; \
|
||||||
|
echo "fi"; \
|
||||||
|
echo ""; \
|
||||||
|
echo "if [ \"$(OS_VENDOR)\" = \"Darwin\" ]; then "; \
|
||||||
|
echo " # Ensure architecture for gamma and JAVA_HOME is the same."; \
|
||||||
|
echo " # NOTE: gamma assumes the OpenJDK directory layout."; \
|
||||||
|
echo ""; \
|
||||||
|
echo " GAMMA_ARCH=\"\`file \$${GAMMA_PROG} | awk '{print \$$NF}'\`\""; \
|
||||||
|
echo " JVM_LIB=\"\$${JAVA_HOME}/jre/lib/libjava.$(LIBRARY_SUFFIX)\""; \
|
||||||
|
echo " if [ ! -f \$${JVM_LIB} ]; then"; \
|
||||||
|
echo " JVM_LIB=\"\$${JAVA_HOME}/jre/lib/$${LIBARCH}/libjava.$(LIBRARY_SUFFIX)\""; \
|
||||||
|
echo " fi"; \
|
||||||
|
echo " if [ ! -f \$${JVM_LIB} ] || [ -z \"\`file \$${JVM_LIB} | grep \$${GAMMA_ARCH}\`\" ]; then "; \
|
||||||
|
echo " $(WRONG_DATA_MODE_MSG)"; \
|
||||||
|
echo " exit 0"; \
|
||||||
|
echo " fi"; \
|
||||||
|
echo "fi"; \
|
||||||
|
echo ""; \
|
||||||
|
echo "# Compile Queens program for test"; \
|
||||||
|
echo ""; \
|
||||||
echo "rm -f Queens.class"; \
|
echo "rm -f Queens.class"; \
|
||||||
echo "\$${JAVA_HOME}/bin/javac -d . $(GAMMADIR)/make/test/Queens.java"; \
|
echo "\$${JAVA_HOME}/bin/javac -d . $(GAMMADIR)/make/test/Queens.java"; \
|
||||||
echo '[ -f gamma_g ] && { gamma=gamma_g; }'; \
|
echo ""; \
|
||||||
echo './$${gamma:-gamma} $(TESTFLAGS) Queens < /dev/null'; \
|
echo "# Set library path solely for gamma launcher test run"; \
|
||||||
|
echo ""; \
|
||||||
|
echo "LD_LIBRARY_PATH=.:$${LD_LIBRARY_PATH:+$$LD_LIBRARY_PATH:}\$${JAVA_HOME}/jre/lib/${LIBARCH}/native_threads:\$${JAVA_HOME}/jre/lib/${LIBARCH}:${GCC_LIB}"; \
|
||||||
|
echo "export LD_LIBRARY_PATH"; \
|
||||||
|
echo "unset LD_LIBRARY_PATH_32"; \
|
||||||
|
echo "unset LD_LIBRARY_PATH_64"; \
|
||||||
|
echo ""; \
|
||||||
|
echo "if [ \"$(OS_VENDOR)\" = \"Darwin\" ]; then "; \
|
||||||
|
echo " DYLD_LIBRARY_PATH=.:$${DYLD_LIBRARY_PATH:+$$DYLD_LIBRARY_PATH:}\$${JAVA_HOME}/jre/lib/native_threads:\$${JAVA_HOME}/jre/lib:$${DYLD_LIBRARY_PATH:+$$DYLD_LIBRARY_PATH:}\$${JAVA_HOME}/jre/lib/${LIBARCH}/native_threads:\$${JAVA_HOME}/jre/lib/${LIBARCH}:${GCC_LIB}"; \
|
||||||
|
echo " export DYLD_LIBRARY_PATH"; \
|
||||||
|
echo "fi"; \
|
||||||
|
echo ""; \
|
||||||
|
echo "# Use the gamma launcher and JAVA_HOME to run the test"; \
|
||||||
|
echo ""; \
|
||||||
|
echo "./\$${GAMMA_PROG} $(TESTFLAGS) Queens < /dev/null"; \
|
||||||
) > $@
|
) > $@
|
||||||
$(QUIETLY) chmod +x $@
|
$(QUIETLY) chmod +x $@
|
||||||
|
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
#
|
#
|
||||||
# Copyright (c) 2006, 2010, Oracle and/or its affiliates. All rights reserved.
|
# Copyright (c) 2006, 2012, Oracle and/or its affiliates. All rights reserved.
|
||||||
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||||
#
|
#
|
||||||
# This code is free software; you can redistribute it and/or modify it
|
# This code is free software; you can redistribute it and/or modify it
|
||||||
@@ -142,6 +142,7 @@ EXPORT_LIST += $(EXPORT_DOCS_DIR)/platform/jvmti/jvmti.html
|
|||||||
# client and server subdirectories have symbolic links to ../libjsig.so
|
# client and server subdirectories have symbolic links to ../libjsig.so
|
||||||
EXPORT_LIST += $(EXPORT_JRE_LIB_ARCH_DIR)/libjsig.$(LIBRARY_SUFFIX)
|
EXPORT_LIST += $(EXPORT_JRE_LIB_ARCH_DIR)/libjsig.$(LIBRARY_SUFFIX)
|
||||||
EXPORT_SERVER_DIR = $(EXPORT_JRE_LIB_ARCH_DIR)/server
|
EXPORT_SERVER_DIR = $(EXPORT_JRE_LIB_ARCH_DIR)/server
|
||||||
|
EXPORT_CLIENT_DIR = $(EXPORT_JRE_LIB_ARCH_DIR)/client
|
||||||
|
|
||||||
ifndef BUILD_CLIENT_ONLY
|
ifndef BUILD_CLIENT_ONLY
|
||||||
EXPORT_LIST += $(EXPORT_SERVER_DIR)/Xusage.txt
|
EXPORT_LIST += $(EXPORT_SERVER_DIR)/Xusage.txt
|
||||||
@@ -150,7 +151,6 @@ endif
|
|||||||
|
|
||||||
ifneq ($(ZERO_BUILD), true)
|
ifneq ($(ZERO_BUILD), true)
|
||||||
ifeq ($(ARCH_DATA_MODEL), 32)
|
ifeq ($(ARCH_DATA_MODEL), 32)
|
||||||
EXPORT_CLIENT_DIR = $(EXPORT_JRE_LIB_ARCH_DIR)/client
|
|
||||||
EXPORT_LIST += $(EXPORT_CLIENT_DIR)/Xusage.txt
|
EXPORT_LIST += $(EXPORT_CLIENT_DIR)/Xusage.txt
|
||||||
EXPORT_LIST += $(EXPORT_CLIENT_DIR)/libjvm.$(LIBRARY_SUFFIX)
|
EXPORT_LIST += $(EXPORT_CLIENT_DIR)/libjvm.$(LIBRARY_SUFFIX)
|
||||||
endif
|
endif
|
||||||
@@ -162,9 +162,48 @@ ADD_SA_BINARIES/x86 = $(EXPORT_JRE_LIB_ARCH_DIR)/libsaproc.$(LIBRARY_SUFFIX) \
|
|||||||
$(EXPORT_LIB_DIR)/sa-jdi.jar
|
$(EXPORT_LIB_DIR)/sa-jdi.jar
|
||||||
ADD_SA_BINARIES/sparc = $(EXPORT_JRE_LIB_ARCH_DIR)/libsaproc.$(LIBRARY_SUFFIX) \
|
ADD_SA_BINARIES/sparc = $(EXPORT_JRE_LIB_ARCH_DIR)/libsaproc.$(LIBRARY_SUFFIX) \
|
||||||
$(EXPORT_LIB_DIR)/sa-jdi.jar
|
$(EXPORT_LIB_DIR)/sa-jdi.jar
|
||||||
|
ADD_SA_BINARIES/universal = $(EXPORT_JRE_LIB_ARCH_DIR)/libsaproc.$(LIBRARY_SUFFIX) \
|
||||||
|
$(EXPORT_LIB_DIR)/sa-jdi.jar
|
||||||
ADD_SA_BINARIES/ppc =
|
ADD_SA_BINARIES/ppc =
|
||||||
ADD_SA_BINARIES/ia64 =
|
ADD_SA_BINARIES/ia64 =
|
||||||
ADD_SA_BINARIES/arm =
|
ADD_SA_BINARIES/arm =
|
||||||
ADD_SA_BINARIES/zero =
|
ADD_SA_BINARIES/zero =
|
||||||
|
|
||||||
EXPORT_LIST += $(ADD_SA_BINARIES/$(HS_ARCH))
|
EXPORT_LIST += $(ADD_SA_BINARIES/$(HS_ARCH))
|
||||||
|
|
||||||
|
# Universal build settings
|
||||||
|
ifeq ($(OS_VENDOR), Darwin)
|
||||||
|
# Build universal binaries by default on Mac OS X
|
||||||
|
MACOSX_UNIVERSAL = true
|
||||||
|
ifneq ($(ALT_MACOSX_UNIVERSAL),)
|
||||||
|
MACOSX_UNIVERSAL = $(ALT_MACOSX_UNIVERSAL)
|
||||||
|
endif
|
||||||
|
MAKE_ARGS += MACOSX_UNIVERSAL=$(MACOSX_UNIVERSAL)
|
||||||
|
|
||||||
|
# Universal settings
|
||||||
|
ifeq ($(MACOSX_UNIVERSAL), true)
|
||||||
|
|
||||||
|
# Set universal export path but avoid using ARCH or PLATFORM subdirs
|
||||||
|
EXPORT_PATH=$(OUTPUTDIR)/export-universal$(EXPORT_SUBDIR)
|
||||||
|
ifneq ($(ALT_EXPORT_PATH),)
|
||||||
|
EXPORT_PATH=$(ALT_EXPORT_PATH)
|
||||||
|
endif
|
||||||
|
|
||||||
|
# Set universal image dir
|
||||||
|
JDK_IMAGE_DIR=$(OUTPUTDIR)/jdk-universal$(EXPORT_SUBDIR)
|
||||||
|
ifneq ($(ALT_JDK_IMAGE_DIR),)
|
||||||
|
JDK_IMAGE_DIR=$(ALT_JDK_IMAGE_DIR)
|
||||||
|
endif
|
||||||
|
|
||||||
|
# Binaries to 'universalize' if built
|
||||||
|
UNIVERSAL_LIPO_LIST += $(EXPORT_JRE_LIB_DIR)/libjsig.$(LIBRARY_SUFFIX)
|
||||||
|
UNIVERSAL_LIPO_LIST += $(EXPORT_JRE_LIB_DIR)/libsaproc.$(LIBRARY_SUFFIX)
|
||||||
|
UNIVERSAL_LIPO_LIST += $(EXPORT_JRE_LIB_DIR)/server/libjvm.$(LIBRARY_SUFFIX)
|
||||||
|
UNIVERSAL_LIPO_LIST += $(EXPORT_JRE_LIB_DIR)/client/libjvm.$(LIBRARY_SUFFIX)
|
||||||
|
|
||||||
|
# Files to simply copy in place
|
||||||
|
UNIVERSAL_COPY_LIST += $(EXPORT_JRE_LIB_DIR)/server/Xusage.txt
|
||||||
|
UNIVERSAL_COPY_LIST += $(EXPORT_JRE_LIB_DIR)/client/Xusage.txt
|
||||||
|
|
||||||
|
endif
|
||||||
|
endif
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
#
|
#
|
||||||
# Copyright (c) 2005, 2008, Oracle and/or its affiliates. All rights reserved.
|
# Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
|
||||||
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||||
#
|
#
|
||||||
# This code is free software; you can redistribute it and/or modify it
|
# This code is free software; you can redistribute it and/or modify it
|
||||||
@@ -22,6 +22,282 @@
|
|||||||
#
|
#
|
||||||
#
|
#
|
||||||
|
|
||||||
# Bsd does not build jvm_db
|
# Rules to build jvm_db/dtrace, used by vm.make
|
||||||
LIBJVM_DB =
|
|
||||||
|
|
||||||
|
# We build libjvm_dtrace/libjvm_db/dtrace for COMPILER1 and COMPILER2
|
||||||
|
# but not for CORE or KERNEL configurations.
|
||||||
|
|
||||||
|
ifneq ("${TYPE}", "CORE")
|
||||||
|
ifneq ("${TYPE}", "KERNEL")
|
||||||
|
|
||||||
|
ifeq ($(OS_VENDOR), Darwin)
|
||||||
|
# we build dtrace for macosx using USDT2 probes
|
||||||
|
|
||||||
|
DtraceOutDir = $(GENERATED)/dtracefiles
|
||||||
|
|
||||||
|
# Bsd does not build libjvm_db, does not compile on macosx
|
||||||
|
# disabled in build: rule in vm.make
|
||||||
|
JVM_DB = libjvm_db
|
||||||
|
#LIBJVM_DB = libjvm_db.dylib
|
||||||
|
LIBJVM_DB = libjvm$(G_SUFFIX)_db.dylib
|
||||||
|
|
||||||
|
JVM_DTRACE = jvm_dtrace
|
||||||
|
#LIBJVM_DTRACE = libjvm_dtrace.dylib
|
||||||
|
LIBJVM_DTRACE = libjvm$(G_SUFFIX)_dtrace.dylib
|
||||||
|
|
||||||
|
JVMOFFS = JvmOffsets
|
||||||
|
JVMOFFS.o = $(JVMOFFS).o
|
||||||
|
GENOFFS = generate$(JVMOFFS)
|
||||||
|
|
||||||
|
DTRACE_SRCDIR = $(GAMMADIR)/src/os/$(Platform_os_family)/dtrace
|
||||||
|
DTRACE = dtrace
|
||||||
|
DTRACE.o = $(DTRACE).o
|
||||||
|
|
||||||
|
# to remove '-g' option which causes link problems
|
||||||
|
# also '-z nodefs' is used as workaround
|
||||||
|
GENOFFS_CFLAGS = $(shell echo $(CFLAGS) | sed -e 's/ -g / /g' -e 's/ -g0 / /g';)
|
||||||
|
|
||||||
|
ifdef LP64
|
||||||
|
DTRACE_OPTS = -D_LP64
|
||||||
|
endif
|
||||||
|
|
||||||
|
# making libjvm_db
|
||||||
|
|
||||||
|
# Use mapfile with libjvm_db.so
|
||||||
|
LIBJVM_DB_MAPFILE = # no mapfile for usdt2 # $(MAKEFILES_DIR)/mapfile-vers-jvm_db
|
||||||
|
#LFLAGS_JVM_DB += $(MAPFLAG:FILENAME=$(LIBJVM_DB_MAPFILE))
|
||||||
|
|
||||||
|
# Use mapfile with libjvm_dtrace.so
|
||||||
|
LIBJVM_DTRACE_MAPFILE = # no mapfile for usdt2 # $(MAKEFILES_DIR)/mapfile-vers-jvm_dtrace
|
||||||
|
#LFLAGS_JVM_DTRACE += $(MAPFLAG:FILENAME=$(LIBJVM_DTRACE_MAPFILE))
|
||||||
|
|
||||||
|
LFLAGS_JVM_DB += $(PICFLAG) # -D_REENTRANT
|
||||||
|
LFLAGS_JVM_DTRACE += $(PICFLAG) # -D_REENTRANT
|
||||||
|
|
||||||
|
ISA = $(subst i386,i486,$(BUILDARCH))
|
||||||
|
|
||||||
|
# Making 64/libjvm_db.so: 64-bit version of libjvm_db.so which handles 32-bit libjvm.so
|
||||||
|
ifneq ("${ISA}","${BUILDARCH}")
|
||||||
|
|
||||||
|
XLIBJVM_DB = 64/$(LIBJVM_DB)
|
||||||
|
XLIBJVM_DB_G = 64/$(LIBJVM_DB_G)
|
||||||
|
XLIBJVM_DTRACE = 64/$(LIBJVM_DTRACE)
|
||||||
|
XLIBJVM_DTRACE_G = 64/$(LIBJVM_DTRACE_G)
|
||||||
|
XARCH = $(subst sparcv9,v9,$(shell echo $(ISA)))
|
||||||
|
|
||||||
|
$(XLIBJVM_DB): $(DTRACE_SRCDIR)/$(JVM_DB).c $(JVMOFFS).h $(LIBJVM_DB_MAPFILE)
|
||||||
|
@echo Making $@
|
||||||
|
$(QUIETLY) mkdir -p 64/ ; \
|
||||||
|
$(CC) $(SYMFLAG) -xarch=$(XARCH) -D$(TYPE) -I. -I$(GENERATED) \
|
||||||
|
$(SHARED_FLAG) $(LFLAGS_JVM_DB) -o $@ $(DTRACE_SRCDIR)/$(JVM_DB).c #-lc
|
||||||
|
# [ -f $(XLIBJVM_DB_G) ] || { ln -s $(LIBJVM_DB) $(XLIBJVM_DB_G); }
|
||||||
|
|
||||||
|
$(XLIBJVM_DTRACE): $(DTRACE_SRCDIR)/$(JVM_DTRACE).c $(DTRACE_SRCDIR)/$(JVM_DTRACE).h $(LIBJVM_DTRACE_MAPFILE)
|
||||||
|
@echo Making $@
|
||||||
|
$(QUIETLY) mkdir -p 64/ ; \
|
||||||
|
$(CC) $(SYMFLAG) -xarch=$(XARCH) -D$(TYPE) -I. \
|
||||||
|
$(SHARED_FLAG) $(LFLAGS_JVM_DTRACE) -o $@ $(DTRACE_SRCDIR)/$(JVM_DTRACE).c #-lc -lthread -ldoor
|
||||||
|
# [ -f $(XLIBJVM_DTRACE_G) ] || { ln -s $(LIBJVM_DTRACE) $(XLIBJVM_DTRACE_G); }
|
||||||
|
|
||||||
|
endif # ifneq ("${ISA}","${BUILDARCH}")
|
||||||
|
|
||||||
|
LFLAGS_GENOFFS += -L.
|
||||||
|
|
||||||
|
lib$(GENOFFS).dylib: $(DTRACE_SRCDIR)/$(GENOFFS).cpp $(DTRACE_SRCDIR)/$(GENOFFS).h \
|
||||||
|
$(LIBJVM.o)
|
||||||
|
$(QUIETLY) $(CXX) $(CXXFLAGS) $(GENOFFS_CFLAGS) $(SHARED_FLAG) $(PICFLAG) \
|
||||||
|
$(LFLAGS_GENOFFS) -o $@ $(DTRACE_SRCDIR)/$(GENOFFS).cpp -ljvm
|
||||||
|
|
||||||
|
$(GENOFFS): $(DTRACE_SRCDIR)/$(GENOFFS)Main.c lib$(GENOFFS).dylib
|
||||||
|
$(QUIETLY) $(LINK.CXX) -o $@ $(DTRACE_SRCDIR)/$(GENOFFS)Main.c \
|
||||||
|
./lib$(GENOFFS).dylib
|
||||||
|
|
||||||
|
# $@.tmp is created first to avoid an empty $(JVMOFFS).h if an error occurs.
|
||||||
|
$(JVMOFFS).h: $(GENOFFS)
|
||||||
|
$(QUIETLY) DYLD_LIBRARY_PATH=. ./$(GENOFFS) -header > $@.tmp; touch $@; \
|
||||||
|
if [ `diff $@.tmp $@ > /dev/null 2>&1; echo $$?` -ne 0 ] ; \
|
||||||
|
then rm -f $@; mv $@.tmp $@; \
|
||||||
|
else rm -f $@.tmp; \
|
||||||
|
fi
|
||||||
|
|
||||||
|
$(JVMOFFS)Index.h: $(GENOFFS)
|
||||||
|
$(QUIETLY) DYLD_LIBRARY_PATH=. ./$(GENOFFS) -index > $@.tmp; touch $@; \
|
||||||
|
if [ `diff $@.tmp $@ > /dev/null 2>&1; echo $$?` -ne 0 ] ; \
|
||||||
|
then rm -f $@; mv $@.tmp $@; \
|
||||||
|
else rm -f $@.tmp; \
|
||||||
|
fi
|
||||||
|
|
||||||
|
$(JVMOFFS).cpp: $(GENOFFS) $(JVMOFFS).h $(JVMOFFS)Index.h
|
||||||
|
$(QUIETLY) DYLD_LIBRARY_PATH=. ./$(GENOFFS) -table > $@.tmp; touch $@; \
|
||||||
|
if [ `diff $@.tmp $@ > /dev/null 2>&1; echo $$?` -ne 0 ] ; \
|
||||||
|
then rm -f $@; mv $@.tmp $@; \
|
||||||
|
else rm -f $@.tmp; \
|
||||||
|
fi
|
||||||
|
|
||||||
|
$(JVMOFFS.o): $(JVMOFFS).h $(JVMOFFS).cpp
|
||||||
|
$(QUIETLY) $(CXX) -c -I. -o $@ $(ARCHFLAG) -D$(TYPE) $(JVMOFFS).cpp
|
||||||
|
|
||||||
|
$(LIBJVM_DB): $(DTRACE_SRCDIR)/$(JVM_DB).c $(JVMOFFS.o) $(XLIBJVM_DB) $(LIBJVM_DB_MAPFILE)
|
||||||
|
@echo Making $@
|
||||||
|
$(QUIETLY) $(CC) $(SYMFLAG) $(ARCHFLAG) -D$(TYPE) -I. -I$(GENERATED) \
|
||||||
|
$(SHARED_FLAG) $(LFLAGS_JVM_DB) -o $@ $(DTRACE_SRCDIR)/$(JVM_DB).c -Wall # -lc
|
||||||
|
# [ -f $(LIBJVM_DB_G) ] || { ln -s $@ $(LIBJVM_DB_G); }
|
||||||
|
|
||||||
|
$(LIBJVM_DTRACE): $(DTRACE_SRCDIR)/$(JVM_DTRACE).c $(XLIBJVM_DTRACE) $(DTRACE_SRCDIR)/$(JVM_DTRACE).h $(LIBJVM_DTRACE_MAPFILE)
|
||||||
|
@echo Making $@
|
||||||
|
$(QUIETLY) $(CC) $(SYMFLAG) $(ARCHFLAG) -D$(TYPE) -I. \
|
||||||
|
$(SHARED_FLAG) $(LFLAGS_JVM_DTRACE) -o $@ $(DTRACE_SRCDIR)/$(JVM_DTRACE).c #-lc -lthread -ldoor
|
||||||
|
# [ -f $(LIBJVM_DTRACE_G) ] || { ln -s $@ $(LIBJVM_DTRACE_G); }
|
||||||
|
|
||||||
|
#$(DTRACE).d: $(DTRACE_SRCDIR)/hotspot.d $(DTRACE_SRCDIR)/hotspot_jni.d \
|
||||||
|
# $(DTRACE_SRCDIR)/hs_private.d $(DTRACE_SRCDIR)/jhelper.d
|
||||||
|
# $(QUIETLY) cat $^ > $@
|
||||||
|
|
||||||
|
$(DtraceOutDir):
|
||||||
|
mkdir $(DtraceOutDir)
|
||||||
|
|
||||||
|
$(DtraceOutDir)/hotspot.h: $(DTRACE_SRCDIR)/hotspot.d | $(DtraceOutDir)
|
||||||
|
$(QUIETLY) $(DTRACE_PROG) $(DTRACE_OPTS) -C -I. -h -o $@ -s $(DTRACE_SRCDIR)/hotspot.d
|
||||||
|
|
||||||
|
$(DtraceOutDir)/hotspot_jni.h: $(DTRACE_SRCDIR)/hotspot_jni.d | $(DtraceOutDir)
|
||||||
|
$(QUIETLY) $(DTRACE_PROG) $(DTRACE_OPTS) -C -I. -h -o $@ -s $(DTRACE_SRCDIR)/hotspot_jni.d
|
||||||
|
|
||||||
|
$(DtraceOutDir)/hs_private.h: $(DTRACE_SRCDIR)/hs_private.d | $(DtraceOutDir)
|
||||||
|
$(QUIETLY) $(DTRACE_PROG) $(DTRACE_OPTS) -C -I. -h -o $@ -s $(DTRACE_SRCDIR)/hs_private.d
|
||||||
|
|
||||||
|
$(DtraceOutDir)/jhelper.h: $(DTRACE_SRCDIR)/jhelper.d $(JVMOFFS).o | $(DtraceOutDir)
|
||||||
|
$(QUIETLY) $(DTRACE_PROG) $(DTRACE_OPTS) -C -I. -h -o $@ -s $(DTRACE_SRCDIR)/jhelper.d
|
||||||
|
|
||||||
|
# jhelper currently disabled
|
||||||
|
dtrace_gen_headers: $(DtraceOutDir)/hotspot.h $(DtraceOutDir)/hotspot_jni.h $(DtraceOutDir)/hs_private.h
|
||||||
|
|
||||||
|
DTraced_Files = ciEnv.o \
|
||||||
|
classLoadingService.o \
|
||||||
|
compileBroker.o \
|
||||||
|
hashtable.o \
|
||||||
|
instanceKlass.o \
|
||||||
|
java.o \
|
||||||
|
jni.o \
|
||||||
|
jvm.o \
|
||||||
|
memoryManager.o \
|
||||||
|
nmethod.o \
|
||||||
|
objectMonitor.o \
|
||||||
|
runtimeService.o \
|
||||||
|
sharedRuntime.o \
|
||||||
|
synchronizer.o \
|
||||||
|
thread.o \
|
||||||
|
unsafe.o \
|
||||||
|
vmThread.o \
|
||||||
|
vmCMSOperations.o \
|
||||||
|
vmPSOperations.o \
|
||||||
|
vmGCOperations.o \
|
||||||
|
|
||||||
|
# Dtrace is available, so we build $(DTRACE.o)
|
||||||
|
#$(DTRACE.o): $(DTRACE).d $(JVMOFFS).h $(JVMOFFS)Index.h $(DTraced_Files)
|
||||||
|
# @echo Compiling $(DTRACE).d
|
||||||
|
|
||||||
|
# $(QUIETLY) $(DTRACE_PROG) $(DTRACE_OPTS) -C -I. -G -xlazyload -o $@ -s $(DTRACE).d \
|
||||||
|
# $(DTraced_Files) ||\
|
||||||
|
# STATUS=$$?;\
|
||||||
|
# if [ x"$$STATUS" = x"1" -a \
|
||||||
|
# x`uname -r` = x"5.10" -a \
|
||||||
|
# x`uname -p` = x"sparc" ]; then\
|
||||||
|
# echo "*****************************************************************";\
|
||||||
|
# echo "* If you are building server compiler, and the error message is ";\
|
||||||
|
# echo "* \"incorrect ELF machine type...\", you have run into solaris bug ";\
|
||||||
|
# echo "* 6213962, \"dtrace -G doesn't work on sparcv8+ object files\".";\
|
||||||
|
# echo "* Either patch/upgrade your system (>= S10u1_15), or set the ";\
|
||||||
|
# echo "* environment variable HOTSPOT_DISABLE_DTRACE_PROBES to disable ";\
|
||||||
|
# echo "* dtrace probes for this build.";\
|
||||||
|
# echo "*****************************************************************";\
|
||||||
|
# fi;\
|
||||||
|
# exit $$STATUS
|
||||||
|
# Since some DTraced_Files are in LIBJVM.o and they are touched by this
|
||||||
|
# command, and libgenerateJvmOffsets.so depends on LIBJVM.o, 'make' will
|
||||||
|
# think it needs to rebuild libgenerateJvmOffsets.so and thus JvmOffsets*
|
||||||
|
# files, but it doesn't, so we touch the necessary files to prevent later
|
||||||
|
# recompilation. Note: we only touch the necessary files if they already
|
||||||
|
# exist in order to close a race where an empty file can be created
|
||||||
|
# before the real build rule is executed.
|
||||||
|
# But, we can't touch the *.h files: This rule depends
|
||||||
|
# on them, and that would cause an infinite cycle of rebuilding.
|
||||||
|
# Neither the *.h or *.ccp files need to be touched, since they have
|
||||||
|
# rules which do not update them when the generator file has not
|
||||||
|
# changed their contents.
|
||||||
|
# $(QUIETLY) if [ -f lib$(GENOFFS).so ]; then touch lib$(GENOFFS).so; fi
|
||||||
|
# $(QUIETLY) if [ -f $(GENOFFS) ]; then touch $(GENOFFS); fi
|
||||||
|
# $(QUIETLY) if [ -f $(JVMOFFS.o) ]; then touch $(JVMOFFS.o); fi
|
||||||
|
|
||||||
|
.PHONY: dtraceCheck
|
||||||
|
|
||||||
|
#SYSTEM_DTRACE_H = /usr/include/dtrace.h
|
||||||
|
SYSTEM_DTRACE_PROG = /usr/sbin/dtrace
|
||||||
|
#PATCH_DTRACE_PROG = /opt/SUNWdtrd/sbin/dtrace
|
||||||
|
systemDtraceFound := $(wildcard ${SYSTEM_DTRACE_PROG})
|
||||||
|
#patchDtraceFound := $(wildcard ${PATCH_DTRACE_PROG})
|
||||||
|
#systemDtraceHdrFound := $(wildcard $(SYSTEM_DTRACE_H))
|
||||||
|
|
||||||
|
#ifneq ("$(systemDtraceHdrFound)", "")
|
||||||
|
#CFLAGS += -DHAVE_DTRACE_H
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifneq ("$(patchDtraceFound)", "")
|
||||||
|
#DTRACE_PROG=$(PATCH_DTRACE_PROG)
|
||||||
|
#DTRACE_INCL=-I/opt/SUNWdtrd/include
|
||||||
|
#else
|
||||||
|
ifneq ("$(systemDtraceFound)", "")
|
||||||
|
DTRACE_PROG=$(SYSTEM_DTRACE_PROG)
|
||||||
|
else
|
||||||
|
|
||||||
|
endif # ifneq ("$(systemDtraceFound)", "")
|
||||||
|
#endif # ifneq ("$(patchDtraceFound)", "")
|
||||||
|
|
||||||
|
ifneq ("${DTRACE_PROG}", "")
|
||||||
|
ifeq ("${HOTSPOT_DISABLE_DTRACE_PROBES}", "")
|
||||||
|
|
||||||
|
DTRACE_OBJS = $(DTRACE.o) #$(JVMOFFS.o)
|
||||||
|
CFLAGS += -DDTRACE_ENABLED #$(DTRACE_INCL)
|
||||||
|
#clangCFLAGS += -DDTRACE_ENABLED -fno-optimize-sibling-calls
|
||||||
|
#MAPFILE_DTRACE_OPT = $(MAPFILE_DTRACE)
|
||||||
|
|
||||||
|
|
||||||
|
dtraceCheck:
|
||||||
|
|
||||||
|
dtrace_stuff: dtrace_gen_headers
|
||||||
|
$(QUIETLY) echo "dtrace headers generated"
|
||||||
|
|
||||||
|
|
||||||
|
else # manually disabled
|
||||||
|
|
||||||
|
dtraceCheck:
|
||||||
|
$(QUIETLY) echo "**NOTICE** Dtrace support disabled via environment variable"
|
||||||
|
|
||||||
|
dtrace_stuff:
|
||||||
|
|
||||||
|
endif # ifeq ("${HOTSPOT_DISABLE_DTRACE_PROBES}", "")
|
||||||
|
|
||||||
|
else # No dtrace program found
|
||||||
|
|
||||||
|
dtraceCheck:
|
||||||
|
$(QUIETLY) echo "**NOTICE** Dtrace support disabled: not supported by system"
|
||||||
|
|
||||||
|
dtrace_stuff:
|
||||||
|
|
||||||
|
endif # ifneq ("${dtraceFound}", "")
|
||||||
|
|
||||||
|
endif # ifeq ($(OS_VENDOR), Darwin)
|
||||||
|
|
||||||
|
|
||||||
|
else # KERNEL build
|
||||||
|
|
||||||
|
dtraceCheck:
|
||||||
|
$(QUIETLY) echo "**NOTICE** Dtrace support disabled for KERNEL builds"
|
||||||
|
|
||||||
|
endif # ifneq ("${TYPE}", "KERNEL")
|
||||||
|
|
||||||
|
else # CORE build
|
||||||
|
|
||||||
|
dtraceCheck:
|
||||||
|
$(QUIETLY) echo "**NOTICE** Dtrace support disabled for CORE builds"
|
||||||
|
|
||||||
|
endif # ifneq ("${TYPE}", "CORE")
|
||||||
|
|||||||
@@ -25,25 +25,59 @@
|
|||||||
OS_VENDOR = $(shell uname -s)
|
OS_VENDOR = $(shell uname -s)
|
||||||
|
|
||||||
#------------------------------------------------------------------------
|
#------------------------------------------------------------------------
|
||||||
# CC, CPP & AS
|
# CC, CXX & AS
|
||||||
|
|
||||||
# When cross-compiling the ALT_COMPILER_PATH points
|
# If a SPEC is not set already, then use these defaults.
|
||||||
# to the cross-compilation toolset
|
ifeq ($(SPEC),)
|
||||||
ifdef CROSS_COMPILE_ARCH
|
# When cross-compiling the ALT_COMPILER_PATH points
|
||||||
CXX = $(ALT_COMPILER_PATH)/g++
|
# to the cross-compilation toolset
|
||||||
CPP = $(ALT_COMPILER_PATH)/g++
|
ifdef CROSS_COMPILE_ARCH
|
||||||
CC = $(ALT_COMPILER_PATH)/gcc
|
CXX = $(ALT_COMPILER_PATH)/g++
|
||||||
HOSTCPP = g++
|
CC = $(ALT_COMPILER_PATH)/gcc
|
||||||
HOSTCC = gcc
|
HOSTCXX = g++
|
||||||
else
|
HOSTCC = gcc
|
||||||
CXX ?= g++
|
else ifneq ($(OS_VENDOR), Darwin)
|
||||||
CPP = $(CXX)
|
CXX = g++
|
||||||
CC ?= gcc
|
CC = gcc
|
||||||
HOSTCPP = $(CPP)
|
HOSTCXX = $(CXX)
|
||||||
HOSTCC = $(CPP)
|
HOSTCC = $(CC)
|
||||||
|
endif
|
||||||
|
|
||||||
|
# i486 hotspot requires -mstackrealign on Darwin.
|
||||||
|
# llvm-gcc supports this in Xcode 3.2.6 and 4.0.
|
||||||
|
# gcc-4.0 supports this on earlier versions.
|
||||||
|
# Prefer llvm-gcc where available.
|
||||||
|
ifeq ($(OS_VENDOR), Darwin)
|
||||||
|
ifeq ($(origin CXX), default)
|
||||||
|
CXX = llvm-g++
|
||||||
|
endif
|
||||||
|
ifeq ($(origin CC), default)
|
||||||
|
CC = llvm-gcc
|
||||||
|
endif
|
||||||
|
|
||||||
|
ifeq ($(ARCH), i486)
|
||||||
|
LLVM_SUPPORTS_STACKREALIGN := $(shell \
|
||||||
|
[ "0"`llvm-gcc -v 2>&1 | grep LLVM | sed -E "s/.*LLVM build ([0-9]+).*/\1/"` -gt "2333" ] \
|
||||||
|
&& echo true || echo false)
|
||||||
|
|
||||||
|
ifeq ($(LLVM_SUPPORTS_STACKREALIGN), true)
|
||||||
|
CXX32 ?= llvm-g++
|
||||||
|
CC32 ?= llvm-gcc
|
||||||
|
else
|
||||||
|
CXX32 ?= g++-4.0
|
||||||
|
CC32 ?= gcc-4.0
|
||||||
|
endif
|
||||||
|
CXX = $(CXX32)
|
||||||
|
CC = $(CC32)
|
||||||
|
endif
|
||||||
|
|
||||||
|
HOSTCXX = $(CXX)
|
||||||
|
HOSTCC = $(CC)
|
||||||
|
endif
|
||||||
|
|
||||||
|
AS = $(CC) -c -x assembler-with-cpp
|
||||||
endif
|
endif
|
||||||
|
|
||||||
AS = $(CC) -c -x assembler-with-cpp
|
|
||||||
|
|
||||||
# -dumpversion in gcc-2.91 shows "egcs-2.91.66". In later version, it only
|
# -dumpversion in gcc-2.91 shows "egcs-2.91.66". In later version, it only
|
||||||
# prints the numbers (e.g. "2.95", "3.2.1")
|
# prints the numbers (e.g. "2.95", "3.2.1")
|
||||||
@@ -54,9 +88,8 @@ CC_VER_MINOR := $(shell $(CC) -dumpversion | sed 's/egcs-//' | cut -d'.' -f2)
|
|||||||
ifneq "$(shell expr \( $(CC_VER_MAJOR) \> 3 \) \| \( \( $(CC_VER_MAJOR) = 3 \) \& \( $(CC_VER_MINOR) \>= 4 \) \))" "0"
|
ifneq "$(shell expr \( $(CC_VER_MAJOR) \> 3 \) \| \( \( $(CC_VER_MAJOR) = 3 \) \& \( $(CC_VER_MINOR) \>= 4 \) \))" "0"
|
||||||
# Allow the user to turn off precompiled headers from the command line.
|
# Allow the user to turn off precompiled headers from the command line.
|
||||||
ifneq ($(USE_PRECOMPILED_HEADER),0)
|
ifneq ($(USE_PRECOMPILED_HEADER),0)
|
||||||
USE_PRECOMPILED_HEADER=1
|
|
||||||
PRECOMPILED_HEADER_DIR=.
|
PRECOMPILED_HEADER_DIR=.
|
||||||
PRECOMPILED_HEADER_SRC=$(GAMMADIR)/src/share/vm/precompiled.hpp
|
PRECOMPILED_HEADER_SRC=$(GAMMADIR)/src/share/vm/precompiled/precompiled.hpp
|
||||||
PRECOMPILED_HEADER=$(PRECOMPILED_HEADER_DIR)/precompiled.hpp.gch
|
PRECOMPILED_HEADER=$(PRECOMPILED_HEADER_DIR)/precompiled.hpp.gch
|
||||||
endif
|
endif
|
||||||
endif
|
endif
|
||||||
@@ -130,7 +163,9 @@ else
|
|||||||
endif
|
endif
|
||||||
|
|
||||||
# Compiler warnings are treated as errors
|
# Compiler warnings are treated as errors
|
||||||
WARNINGS_ARE_ERRORS = -Werror
|
ifneq ($(COMPILER_WARNINGS_FATAL),false)
|
||||||
|
WARNINGS_ARE_ERRORS = -Werror
|
||||||
|
endif
|
||||||
|
|
||||||
# Except for a few acceptable ones
|
# Except for a few acceptable ones
|
||||||
# Since GCC 4.3, -Wconversion has changed its meanings to warn these implicit
|
# Since GCC 4.3, -Wconversion has changed its meanings to warn these implicit
|
||||||
@@ -152,7 +187,13 @@ endif
|
|||||||
|
|
||||||
|
|
||||||
# The flags to use for an Optimized g++ build
|
# The flags to use for an Optimized g++ build
|
||||||
OPT_CFLAGS += -O3
|
ifeq ($(OS_VENDOR), Darwin)
|
||||||
|
# use -Os by default, unless -O3 can be proved to be worth the cost, as per policy
|
||||||
|
# <http://wikis.sun.com/display/OpenJDK/Mac+OS+X+Port+Compilers>
|
||||||
|
OPT_CFLAGS += -Os
|
||||||
|
else
|
||||||
|
OPT_CFLAGS += -O3
|
||||||
|
endif
|
||||||
|
|
||||||
# Hotspot uses very unstrict aliasing turn this optimization off
|
# Hotspot uses very unstrict aliasing turn this optimization off
|
||||||
OPT_CFLAGS += -fno-strict-aliasing
|
OPT_CFLAGS += -fno-strict-aliasing
|
||||||
@@ -176,7 +217,7 @@ DEPFLAGS = -MMD -MP -MF $(DEP_DIR)/$(@:%=%.d)
|
|||||||
endif
|
endif
|
||||||
|
|
||||||
# -DDONT_USE_PRECOMPILED_HEADER will exclude all includes in precompiled.hpp.
|
# -DDONT_USE_PRECOMPILED_HEADER will exclude all includes in precompiled.hpp.
|
||||||
ifneq ($(USE_PRECOMPILED_HEADER),1)
|
ifeq ($(USE_PRECOMPILED_HEADER),0)
|
||||||
CFLAGS += -DDONT_USE_PRECOMPILED_HEADER
|
CFLAGS += -DDONT_USE_PRECOMPILED_HEADER
|
||||||
endif
|
endif
|
||||||
|
|
||||||
@@ -212,7 +253,7 @@ ifeq ($(OS_VENDOR), Darwin)
|
|||||||
SONAMEFLAG =
|
SONAMEFLAG =
|
||||||
|
|
||||||
# Build shared library
|
# Build shared library
|
||||||
SHARED_FLAG = -dynamiclib $(VM_PICFLAG)
|
SHARED_FLAG = -Wl,-install_name,@rpath/$(@F) -dynamiclib -compatibility_version 1.0.0 -current_version 1.0.0 $(VM_PICFLAG)
|
||||||
|
|
||||||
# Keep symbols even they are not used
|
# Keep symbols even they are not used
|
||||||
#AOUT_FLAGS += -Xlinker -export-dynamic
|
#AOUT_FLAGS += -Xlinker -export-dynamic
|
||||||
|
|||||||
@@ -50,14 +50,31 @@ ifeq ($(LINK_INTO),AOUT)
|
|||||||
LIBS_LAUNCHER += $(STATIC_STDCXX) $(LIBS)
|
LIBS_LAUNCHER += $(STATIC_STDCXX) $(LIBS)
|
||||||
else
|
else
|
||||||
LAUNCHER.o = launcher.o
|
LAUNCHER.o = launcher.o
|
||||||
LFLAGS_LAUNCHER += -L`pwd`
|
LFLAGS_LAUNCHER += -L`pwd`
|
||||||
|
|
||||||
|
# The gamma launcher runs the JDK from $JAVA_HOME, overriding the JVM with a
|
||||||
|
# freshly built JVM at ./libjvm.{so|dylib}. This is accomplished by setting
|
||||||
|
# the library searchpath using ({DY}LD_LIBRARY_PATH) to find the local JVM
|
||||||
|
# first. Gamma dlopen()s libjava from $JAVA_HOME/jre/lib{/$arch}, which is
|
||||||
|
# statically linked with CoreFoundation framework libs. Unfortunately, gamma's
|
||||||
|
# unique searchpath results in some unresolved symbols in the framework
|
||||||
|
# libraries, because JDK libraries are inadvertently discovered first on the
|
||||||
|
# searchpath, e.g. libjpeg. On Mac OS X, filenames are case *insensitive*.
|
||||||
|
# So, the actual filename collision is libjpeg.dylib and libJPEG.dylib.
|
||||||
|
# To resolve this, gamma needs to also statically link with the CoreFoundation
|
||||||
|
# framework libraries.
|
||||||
|
|
||||||
|
ifeq ($(OS_VENDOR),Darwin)
|
||||||
|
LFLAGS_LAUNCHER += -framework CoreFoundation
|
||||||
|
endif
|
||||||
|
|
||||||
LIBS_LAUNCHER += -l$(JVM) $(LIBS)
|
LIBS_LAUNCHER += -l$(JVM) $(LIBS)
|
||||||
endif
|
endif
|
||||||
|
|
||||||
LINK_LAUNCHER = $(LINK.c)
|
LINK_LAUNCHER = $(LINK.CC)
|
||||||
|
|
||||||
LINK_LAUNCHER/PRE_HOOK = $(LINK_LIB.CC/PRE_HOOK)
|
LINK_LAUNCHER/PRE_HOOK = $(LINK_LIB.CXX/PRE_HOOK)
|
||||||
LINK_LAUNCHER/POST_HOOK = $(LINK_LIB.CC/POST_HOOK)
|
LINK_LAUNCHER/POST_HOOK = $(LINK_LIB.CXX/POST_HOOK)
|
||||||
|
|
||||||
LAUNCHER_OUT = launcher
|
LAUNCHER_OUT = launcher
|
||||||
|
|
||||||
@@ -73,11 +90,11 @@ DEPFILES := $(patsubst %.o,%.d,$(OBJS))
|
|||||||
|
|
||||||
$(LAUNCHER_OUT)/%.o: $(LAUNCHERDIR_SHARE)/%.c
|
$(LAUNCHER_OUT)/%.o: $(LAUNCHERDIR_SHARE)/%.c
|
||||||
$(QUIETLY) [ -d $(LAUNCHER_OUT) ] || { mkdir -p $(LAUNCHER_OUT); }
|
$(QUIETLY) [ -d $(LAUNCHER_OUT) ] || { mkdir -p $(LAUNCHER_OUT); }
|
||||||
$(QUIETLY) $(CC) -g -o $@ -c $< -MMD $(LAUNCHERFLAGS) $(CPPFLAGS)
|
$(QUIETLY) $(CC) -g -o $@ -c $< -MMD $(LAUNCHERFLAGS) $(CXXFLAGS)
|
||||||
|
|
||||||
$(LAUNCHER_OUT)/%.o: $(LAUNCHERDIR)/%.c
|
$(LAUNCHER_OUT)/%.o: $(LAUNCHERDIR)/%.c
|
||||||
$(QUIETLY) [ -d $(LAUNCHER_OUT) ] || { mkdir -p $(LAUNCHER_OUT); }
|
$(QUIETLY) [ -d $(LAUNCHER_OUT) ] || { mkdir -p $(LAUNCHER_OUT); }
|
||||||
$(QUIETLY) $(CC) -g -o $@ -c $< -MMD $(LAUNCHERFLAGS) $(CPPFLAGS)
|
$(QUIETLY) $(CC) -g -o $@ -c $< -MMD $(LAUNCHERFLAGS) $(CXXFLAGS)
|
||||||
|
|
||||||
$(LAUNCHER): $(OBJS) $(LIBJVM) $(LAUNCHER_MAPFILE)
|
$(LAUNCHER): $(OBJS) $(LIBJVM) $(LAUNCHER_MAPFILE)
|
||||||
$(QUIETLY) echo Linking launcher...
|
$(QUIETLY) echo Linking launcher...
|
||||||
|
|||||||
@@ -55,4 +55,4 @@ STRIP_LIBJVM = $(STRIP) -g $@ || exit 1;
|
|||||||
STRIP_AOUT = $(STRIP) -x $@ || exit 1;
|
STRIP_AOUT = $(STRIP) -x $@ || exit 1;
|
||||||
|
|
||||||
# Don't strip in VM build; JDK build will strip libraries later
|
# Don't strip in VM build; JDK build will strip libraries later
|
||||||
# LINK_LIB.CC/POST_HOOK += $(STRIP_$(LINK_INTO))
|
# LINK_LIB.CXX/POST_HOOK += $(STRIP_$(LINK_INTO))
|
||||||
|
|||||||
@@ -27,52 +27,39 @@
|
|||||||
# Tell make that .cpp is important
|
# Tell make that .cpp is important
|
||||||
.SUFFIXES: .cpp $(SUFFIXES)
|
.SUFFIXES: .cpp $(SUFFIXES)
|
||||||
|
|
||||||
# For now. Other makefiles use CPP as the c++ compiler, but that should really
|
|
||||||
# name the preprocessor.
|
|
||||||
ifeq ($(CCC),)
|
|
||||||
CCC = $(CPP)
|
|
||||||
endif
|
|
||||||
|
|
||||||
DEMANGLER = c++filt
|
DEMANGLER = c++filt
|
||||||
DEMANGLE = $(DEMANGLER) < $@ > .$@ && mv -f .$@ $@
|
DEMANGLE = $(DEMANGLER) < $@ > .$@ && mv -f .$@ $@
|
||||||
|
|
||||||
# $(CC) is the c compiler (cc/gcc), $(CCC) is the c++ compiler (CC/g++).
|
# $(CC) is the c compiler (cc/gcc), $(CXX) is the c++ compiler (CC/g++).
|
||||||
C_COMPILE = $(CC) $(CPPFLAGS) $(CFLAGS)
|
CC_COMPILE = $(CC) $(CXXFLAGS) $(CFLAGS)
|
||||||
CC_COMPILE = $(CCC) $(CPPFLAGS) $(CFLAGS)
|
CXX_COMPILE = $(CXX) $(CXXFLAGS) $(CFLAGS)
|
||||||
|
|
||||||
AS.S = $(AS) $(ASFLAGS)
|
AS.S = $(AS) $(ASFLAGS)
|
||||||
|
|
||||||
COMPILE.c = $(C_COMPILE) -c
|
COMPILE.CC = $(CC_COMPILE) -c
|
||||||
GENASM.c = $(C_COMPILE) -S
|
GENASM.CC = $(CC_COMPILE) -S
|
||||||
LINK.c = $(CC) $(LFLAGS) $(AOUT_FLAGS) $(PROF_AOUT_FLAGS)
|
LINK.CC = $(CC) $(LFLAGS) $(AOUT_FLAGS) $(PROF_AOUT_FLAGS)
|
||||||
LINK_LIB.c = $(CC) $(LFLAGS) $(SHARED_FLAG)
|
LINK_LIB.CC = $(CC) $(LFLAGS) $(SHARED_FLAG)
|
||||||
PREPROCESS.c = $(C_COMPILE) -E
|
PREPROCESS.CC = $(CC_COMPILE) -E
|
||||||
|
|
||||||
COMPILE.CC = $(CC_COMPILE) -c
|
COMPILE.CXX = $(CXX_COMPILE) -c
|
||||||
GENASM.CC = $(CC_COMPILE) -S
|
GENASM.CXX = $(CXX_COMPILE) -S
|
||||||
LINK.CC = $(CCC) $(LFLAGS) $(AOUT_FLAGS) $(PROF_AOUT_FLAGS)
|
LINK.CXX = $(CXX) $(LFLAGS) $(AOUT_FLAGS) $(PROF_AOUT_FLAGS)
|
||||||
LINK_NOPROF.CC = $(CCC) $(LFLAGS) $(AOUT_FLAGS)
|
LINK_NOPROF.CXX = $(CXX) $(LFLAGS) $(AOUT_FLAGS)
|
||||||
LINK_LIB.CC = $(CCC) $(LFLAGS) $(SHARED_FLAG)
|
LINK_LIB.CXX = $(CXX) $(LFLAGS) $(SHARED_FLAG)
|
||||||
PREPROCESS.CC = $(CC_COMPILE) -E
|
PREPROCESS.CXX = $(CXX_COMPILE) -E
|
||||||
|
|
||||||
# cross compiling the jvm with c2 requires host compilers to build
|
# cross compiling the jvm with c2 requires host compilers to build
|
||||||
# adlc tool
|
# adlc tool
|
||||||
|
|
||||||
HOST.CC_COMPILE = $(HOSTCPP) $(CPPFLAGS) $(CFLAGS)
|
HOST.CXX_COMPILE = $(HOSTCXX) $(CXXFLAGS) $(CFLAGS)
|
||||||
HOST.COMPILE.CC = $(HOST.CC_COMPILE) -c
|
HOST.COMPILE.CXX = $(HOST.CXX_COMPILE) -c
|
||||||
HOST.LINK_NOPROF.CC = $(HOSTCPP) $(LFLAGS) $(AOUT_FLAGS)
|
HOST.LINK_NOPROF.CXX = $(HOSTCXX) $(LFLAGS) $(AOUT_FLAGS)
|
||||||
|
|
||||||
|
|
||||||
# Effect of REMOVE_TARGET is to delete out-of-date files during "gnumake -k".
|
# Effect of REMOVE_TARGET is to delete out-of-date files during "gnumake -k".
|
||||||
REMOVE_TARGET = rm -f $@
|
REMOVE_TARGET = rm -f $@
|
||||||
|
|
||||||
# Synonyms.
|
|
||||||
COMPILE.cpp = $(COMPILE.CC)
|
|
||||||
GENASM.cpp = $(GENASM.CC)
|
|
||||||
LINK.cpp = $(LINK.CC)
|
|
||||||
LINK_LIB.cpp = $(LINK_LIB.CC)
|
|
||||||
PREPROCESS.cpp = $(PREPROCESS.CC)
|
|
||||||
|
|
||||||
# Note use of ALT_BOOTDIR to explicitly specify location of java and
|
# Note use of ALT_BOOTDIR to explicitly specify location of java and
|
||||||
# javac; this is the same environment variable used in the J2SE build
|
# javac; this is the same environment variable used in the J2SE build
|
||||||
# process for overriding the default spec, which is BOOTDIR.
|
# process for overriding the default spec, which is BOOTDIR.
|
||||||
@@ -161,14 +148,14 @@ ifdef LP64
|
|||||||
%.o: %.cpp
|
%.o: %.cpp
|
||||||
@echo Compiling $<
|
@echo Compiling $<
|
||||||
$(QUIETLY) $(REMOVE_TARGET)
|
$(QUIETLY) $(REMOVE_TARGET)
|
||||||
$(QUIETLY) $(COMPILE.CC) $(DEPFLAGS) -o $@ $< $(COMPILE_DONE)
|
$(QUIETLY) $(COMPILE.CXX) $(DEPFLAGS) -o $@ $< $(COMPILE_DONE)
|
||||||
else
|
else
|
||||||
%.o: %.cpp
|
%.o: %.cpp
|
||||||
@echo Compiling $<
|
@echo Compiling $<
|
||||||
$(QUIETLY) $(REMOVE_TARGET)
|
$(QUIETLY) $(REMOVE_TARGET)
|
||||||
$(QUIETLY) $(if $(findstring $@, $(NONPIC_OBJ_FILES)), \
|
$(QUIETLY) $(if $(findstring $@, $(NONPIC_OBJ_FILES)), \
|
||||||
$(subst $(VM_PICFLAG), ,$(COMPILE.CC)) $(DEPFLAGS) -o $@ $< $(COMPILE_DONE), \
|
$(subst $(VM_PICFLAG), ,$(COMPILE.CXX)) $(DEPFLAGS) -o $@ $< $(COMPILE_DONE), \
|
||||||
$(COMPILE.CC) $(DEPFLAGS) -o $@ $< $(COMPILE_DONE))
|
$(COMPILE.CXX) $(DEPFLAGS) -o $@ $< $(COMPILE_DONE))
|
||||||
endif
|
endif
|
||||||
|
|
||||||
%.o: %.s
|
%.o: %.s
|
||||||
@@ -178,13 +165,13 @@ endif
|
|||||||
|
|
||||||
%.s: %.cpp
|
%.s: %.cpp
|
||||||
@echo Generating assembly for $<
|
@echo Generating assembly for $<
|
||||||
$(QUIETLY) $(GENASM.CC) -o $@ $<
|
$(QUIETLY) $(GENASM.CXX) -o $@ $<
|
||||||
$(QUIETLY) $(DEMANGLE) $(COMPILE_DONE)
|
$(QUIETLY) $(DEMANGLE) $(COMPILE_DONE)
|
||||||
|
|
||||||
# Intermediate files (for debugging macros)
|
# Intermediate files (for debugging macros)
|
||||||
%.i: %.cpp
|
%.i: %.cpp
|
||||||
@echo Preprocessing $< to $@
|
@echo Preprocessing $< to $@
|
||||||
$(QUIETLY) $(PREPROCESS.CC) $< > $@ $(COMPILE_DONE)
|
$(QUIETLY) $(PREPROCESS.CXX) $< > $@ $(COMPILE_DONE)
|
||||||
|
|
||||||
# Override gnumake built-in rules which do sccs get operations badly.
|
# Override gnumake built-in rules which do sccs get operations badly.
|
||||||
# (They put the checked out code in the current directory, not in the
|
# (They put the checked out code in the current directory, not in the
|
||||||
|
|||||||
@@ -37,19 +37,30 @@ include $(GAMMADIR)/make/sa.files
|
|||||||
TOPDIR = $(shell echo `pwd`)
|
TOPDIR = $(shell echo `pwd`)
|
||||||
GENERATED = $(TOPDIR)/../generated
|
GENERATED = $(TOPDIR)/../generated
|
||||||
|
|
||||||
# tools.jar is needed by the JDI - SA binding
|
# SA-JDI depends on the standard JDI classes.
|
||||||
SA_CLASSPATH = $(BOOT_JAVA_HOME)/lib/tools.jar
|
# Default SA_CLASSPATH location:
|
||||||
|
DEF_SA_CLASSPATH=$(BOOT_JAVA_HOME)/lib/tools.jar
|
||||||
|
ifeq ($(ALT_SA_CLASSPATH),)
|
||||||
|
# no alternate specified; see if default exists
|
||||||
|
SA_CLASSPATH=$(shell test -f $(DEF_SA_CLASSPATH) && echo $(DEF_SA_CLASSPATH))
|
||||||
|
ifeq ($(SA_CLASSPATH),)
|
||||||
|
# the default doesn't exist
|
||||||
|
ifeq ($(OS_VENDOR), Darwin)
|
||||||
|
# A JDK from Apple doesn't have tools.jar; the JDI classes are
|
||||||
|
# are in the regular classes.jar file.
|
||||||
|
APPLE_JAR=$(BOOT_JAVA_HOME)/bundle/Classes/classes.jar
|
||||||
|
SA_CLASSPATH=$(shell test -f $(APPLE_JAR) && echo $(APPLE_JAR))
|
||||||
|
endif
|
||||||
|
endif
|
||||||
|
else
|
||||||
|
_JUNK_ := $(shell echo >&2 "INFO: ALT_SA_CLASSPATH=$(ALT_SA_CLASSPATH)")
|
||||||
|
SA_CLASSPATH=$(shell test -f $(ALT_SA_CLASSPATH) && echo $(ALT_SA_CLASSPATH))
|
||||||
|
endif
|
||||||
|
|
||||||
# TODO: if it's a modules image, check if SA module is installed.
|
# TODO: if it's a modules image, check if SA module is installed.
|
||||||
MODULELIB_PATH= $(BOOT_JAVA_HOME)/lib/modules
|
MODULELIB_PATH= $(BOOT_JAVA_HOME)/lib/modules
|
||||||
|
|
||||||
# gnumake 3.78.1 does not accept the *s that
|
AGENT_FILES_LIST := $(GENERATED)/agent.classes.list
|
||||||
# are in AGENT_FILES1 and AGENT_FILES2, so use the shell to expand them
|
|
||||||
AGENT_FILES1 := $(shell /bin/test -d $(AGENT_DIR) && /bin/ls $(AGENT_FILES1))
|
|
||||||
AGENT_FILES2 := $(shell /bin/test -d $(AGENT_DIR) && /bin/ls $(AGENT_FILES2))
|
|
||||||
|
|
||||||
AGENT_FILES1_LIST := $(GENERATED)/agent1.classes.list
|
|
||||||
AGENT_FILES2_LIST := $(GENERATED)/agent2.classes.list
|
|
||||||
|
|
||||||
SA_CLASSDIR = $(GENERATED)/saclasses
|
SA_CLASSDIR = $(GENERATED)/saclasses
|
||||||
|
|
||||||
@@ -68,21 +79,20 @@ all:
|
|||||||
$(MAKE) -f sa.make $(GENERATED)/sa-jdi.jar; \
|
$(MAKE) -f sa.make $(GENERATED)/sa-jdi.jar; \
|
||||||
fi
|
fi
|
||||||
|
|
||||||
$(GENERATED)/sa-jdi.jar: $(AGENT_FILES1) $(AGENT_FILES2)
|
$(GENERATED)/sa-jdi.jar: $(AGENT_FILES)
|
||||||
$(QUIETLY) echo "Making $@"
|
$(QUIETLY) echo "Making $@"
|
||||||
$(QUIETLY) if [ "$(BOOT_JAVA_HOME)" = "" ]; then \
|
$(QUIETLY) if [ "$(BOOT_JAVA_HOME)" = "" ]; then \
|
||||||
echo "ALT_BOOTDIR, BOOTDIR or JAVA_HOME needs to be defined to build SA"; \
|
echo "ALT_BOOTDIR, BOOTDIR or JAVA_HOME needs to be defined to build SA"; \
|
||||||
exit 1; \
|
exit 1; \
|
||||||
fi
|
fi
|
||||||
$(QUIETLY) if [ ! -f $(SA_CLASSPATH) -a ! -d $(MODULELIB_PATH) ] ; then \
|
$(QUIETLY) if [ ! -f "$(SA_CLASSPATH)" -a ! -d $(MODULELIB_PATH) ] ; then \
|
||||||
echo "Missing $(SA_CLASSPATH) file. Use 1.6.0 or later version of JDK";\
|
echo "Cannot find JDI classes. Use 1.6.0 or later version of JDK."; \
|
||||||
echo ""; \
|
echo ""; \
|
||||||
exit 1; \
|
exit 1; \
|
||||||
fi
|
fi
|
||||||
$(QUIETLY) if [ ! -d $(SA_CLASSDIR) ] ; then \
|
$(QUIETLY) if [ ! -d $(SA_CLASSDIR) ] ; then \
|
||||||
mkdir -p $(SA_CLASSDIR); \
|
mkdir -p $(SA_CLASSDIR); \
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Note: When indented, make tries to execute the '$(shell' comment.
|
# Note: When indented, make tries to execute the '$(shell' comment.
|
||||||
# In some environments, cmd processors have limited line length.
|
# In some environments, cmd processors have limited line length.
|
||||||
# To prevent the javac invocation in the next block from using
|
# To prevent the javac invocation in the next block from using
|
||||||
@@ -93,13 +103,12 @@ $(GENERATED)/sa-jdi.jar: $(AGENT_FILES1) $(AGENT_FILES2)
|
|||||||
# the initialization of the lists is also done in the same phase
|
# the initialization of the lists is also done in the same phase
|
||||||
# using '$(shell rm ...' instead of using the more traditional
|
# using '$(shell rm ...' instead of using the more traditional
|
||||||
# 'rm ...' rule.
|
# 'rm ...' rule.
|
||||||
$(shell rm -rf $(AGENT_FILES1_LIST) $(AGENT_FILES2_LIST))
|
$(shell rm -rf $(AGENT_FILES_LIST))
|
||||||
$(foreach file,$(AGENT_FILES1),$(shell echo $(file) >> $(AGENT_FILES1_LIST)))
|
# gnumake 3.78.1 does not accept the *'s that
|
||||||
$(foreach file,$(AGENT_FILES2),$(shell echo $(file) >> $(AGENT_FILES2_LIST)))
|
# are in AGENT_FILES, so use the shell to expand them.
|
||||||
|
# Be extra carefull to not produce too long command lines in the shell!
|
||||||
$(QUIETLY) $(REMOTE) $(COMPILE.JAVAC) -classpath $(SA_CLASSPATH) -sourcepath $(AGENT_SRC_DIR) -d $(SA_CLASSDIR) @$(AGENT_FILES1_LIST)
|
$(foreach file,$(AGENT_FILES),$(shell ls -1 $(file) >> $(AGENT_FILES_LIST)))
|
||||||
$(QUIETLY) $(REMOTE) $(COMPILE.JAVAC) -classpath $(SA_CLASSPATH) -sourcepath $(AGENT_SRC_DIR) -d $(SA_CLASSDIR) @$(AGENT_FILES2_LIST)
|
$(QUIETLY) $(REMOTE) $(COMPILE.JAVAC) -classpath $(SA_CLASSPATH) -sourcepath $(AGENT_SRC_DIR) -d $(SA_CLASSDIR) @$(AGENT_FILES_LIST)
|
||||||
|
|
||||||
$(QUIETLY) $(REMOTE) $(COMPILE.RMIC) -classpath $(SA_CLASSDIR) -d $(SA_CLASSDIR) sun.jvm.hotspot.debugger.remote.RemoteDebuggerServer
|
$(QUIETLY) $(REMOTE) $(COMPILE.RMIC) -classpath $(SA_CLASSDIR) -d $(SA_CLASSDIR) sun.jvm.hotspot.debugger.remote.RemoteDebuggerServer
|
||||||
$(QUIETLY) echo "$(SA_BUILD_VERSION_PROP)" > $(SA_PROPERTIES)
|
$(QUIETLY) echo "$(SA_BUILD_VERSION_PROP)" > $(SA_PROPERTIES)
|
||||||
$(QUIETLY) rm -f $(SA_CLASSDIR)/sun/jvm/hotspot/utilities/soql/sa.js
|
$(QUIETLY) rm -f $(SA_CLASSDIR)/sun/jvm/hotspot/utilities/soql/sa.js
|
||||||
@@ -118,4 +127,4 @@ $(GENERATED)/sa-jdi.jar: $(AGENT_FILES1) $(AGENT_FILES2)
|
|||||||
clean:
|
clean:
|
||||||
rm -rf $(SA_CLASSDIR)
|
rm -rf $(SA_CLASSDIR)
|
||||||
rm -rf $(GENERATED)/sa-jdi.jar
|
rm -rf $(GENERATED)/sa-jdi.jar
|
||||||
rm -rf $(AGENT_FILES1_LIST) $(AGENT_FILES2_LIST)
|
rm -rf $(AGENT_FILES_LIST)
|
||||||
|
|||||||
@@ -40,20 +40,29 @@ AGENT_DIR = $(GAMMADIR)/agent
|
|||||||
|
|
||||||
SASRCDIR = $(AGENT_DIR)/src/os/$(Platform_os_family)
|
SASRCDIR = $(AGENT_DIR)/src/os/$(Platform_os_family)
|
||||||
|
|
||||||
# disable building saproc until hsearch_r license issues are resolved
|
NON_STUB_SASRCFILES = $(SASRCDIR)/salibelf.c \
|
||||||
#ifeq ($(OS_VENDOR), FreeBSD)
|
$(SASRCDIR)/symtab.c \
|
||||||
#SASRCFILES = $(SASRCDIR)/salibelf.c \
|
$(SASRCDIR)/libproc_impl.c \
|
||||||
# $(SASRCDIR)/symtab.c \
|
$(SASRCDIR)/ps_proc.c \
|
||||||
# $(SASRCDIR)/libproc_impl.c \
|
$(SASRCDIR)/ps_core.c \
|
||||||
# $(SASRCDIR)/ps_proc.c \
|
$(SASRCDIR)/BsdDebuggerLocal.c
|
||||||
# $(SASRCDIR)/ps_core.c \
|
|
||||||
# $(SASRCDIR)/hsearch_r.c \
|
ifeq ($(OS_VENDOR), FreeBSD)
|
||||||
# $(SASRCDIR)/BsdDebuggerLocal.c
|
SASRCFILES = $(NON_STUB_SASRCFILES)
|
||||||
#SALIBS = -lutil -lthread_db
|
SALIBS = -lutil -lthread_db
|
||||||
#else
|
SAARCH = $(ARCHFLAG)
|
||||||
SASRCFILES = $(SASRCDIR)/StubDebuggerLocal.c
|
else
|
||||||
SALIBS =
|
ifeq ($(OS_VENDOR), Darwin)
|
||||||
#endif
|
SASRCFILES = $(SASRCDIR)/MacosxDebuggerLocal.m
|
||||||
|
SALIBS = -g -framework Foundation -F/System/Library/Frameworks/JavaVM.framework/Frameworks -framework JavaNativeFoundation -framework Security -framework CoreFoundation
|
||||||
|
#objc compiler blows up on -march=i586, perhaps it should not be included in the macosx intel 32-bit C++ compiles?
|
||||||
|
SAARCH = $(subst -march=i586,,$(ARCHFLAG))
|
||||||
|
else
|
||||||
|
SASRCFILES = $(SASRCDIR)/StubDebuggerLocal.c
|
||||||
|
SALIBS =
|
||||||
|
SAARCH = $(ARCHFLAG)
|
||||||
|
endif
|
||||||
|
endif
|
||||||
|
|
||||||
SAMAPFILE = $(SASRCDIR)/mapfile
|
SAMAPFILE = $(SASRCDIR)/mapfile
|
||||||
|
|
||||||
@@ -79,6 +88,15 @@ SA_LFLAGS = $(MAPFLAG:FILENAME=$(SAMAPFILE))
|
|||||||
endif
|
endif
|
||||||
SA_LFLAGS += $(LDFLAGS_HASH_STYLE)
|
SA_LFLAGS += $(LDFLAGS_HASH_STYLE)
|
||||||
|
|
||||||
|
ifeq ($(OS_VENDOR), Darwin)
|
||||||
|
BOOT_JAVA_INCLUDES = -I$(BOOT_JAVA_HOME)/include \
|
||||||
|
-I$(BOOT_JAVA_HOME)/include/$(shell uname -s | tr "[:upper:]" "[:lower:]") \
|
||||||
|
-I/System/Library/Frameworks/JavaVM.framework/Headers
|
||||||
|
else
|
||||||
|
BOOT_JAVA_INCLUDES = -I$(BOOT_JAVA_HOME)/include \
|
||||||
|
-I$(BOOT_JAVA_HOME)/include/$(shell uname -s | tr "[:upper:]" "[:lower:]")
|
||||||
|
endif
|
||||||
|
|
||||||
$(LIBSAPROC): $(SASRCFILES) $(SAMAPFILE)
|
$(LIBSAPROC): $(SASRCFILES) $(SAMAPFILE)
|
||||||
$(QUIETLY) if [ "$(BOOT_JAVA_HOME)" = "" ]; then \
|
$(QUIETLY) if [ "$(BOOT_JAVA_HOME)" = "" ]; then \
|
||||||
echo "ALT_BOOTDIR, BOOTDIR or JAVA_HOME needs to be defined to build SA"; \
|
echo "ALT_BOOTDIR, BOOTDIR or JAVA_HOME needs to be defined to build SA"; \
|
||||||
@@ -86,11 +104,10 @@ $(LIBSAPROC): $(SASRCFILES) $(SAMAPFILE)
|
|||||||
fi
|
fi
|
||||||
@echo Making SA debugger back-end...
|
@echo Making SA debugger back-end...
|
||||||
$(QUIETLY) $(CC) -D$(BUILDARCH) -D_GNU_SOURCE \
|
$(QUIETLY) $(CC) -D$(BUILDARCH) -D_GNU_SOURCE \
|
||||||
$(SYMFLAG) $(ARCHFLAG) $(SHARED_FLAG) $(PICFLAG) \
|
$(SYMFLAG) $(SAARCH) $(SHARED_FLAG) $(PICFLAG) \
|
||||||
-I$(SASRCDIR) \
|
-I$(SASRCDIR) \
|
||||||
-I$(GENERATED) \
|
-I$(GENERATED) \
|
||||||
-I$(BOOT_JAVA_HOME)/include \
|
$(BOOT_JAVA_INCLUDES) \
|
||||||
-I$(BOOT_JAVA_HOME)/include/$(shell uname -s | tr "[:upper:]" "[:lower:]") \
|
|
||||||
$(SASRCFILES) \
|
$(SASRCFILES) \
|
||||||
$(SA_LFLAGS) \
|
$(SA_LFLAGS) \
|
||||||
$(SA_DEBUG_CFLAGS) \
|
$(SA_DEBUG_CFLAGS) \
|
||||||
|
|||||||
@@ -23,14 +23,17 @@
|
|||||||
#
|
#
|
||||||
|
|
||||||
#------------------------------------------------------------------------
|
#------------------------------------------------------------------------
|
||||||
# CC, CPP & AS
|
# CC, CXX & AS
|
||||||
|
|
||||||
CPP = CC
|
# If a SPEC is not set already, then use these defaults.
|
||||||
CC = cc
|
ifeq ($(SPEC),)
|
||||||
AS = $(CC) -c
|
CXX = CC
|
||||||
|
CC = cc
|
||||||
|
AS = $(CC) -c
|
||||||
|
|
||||||
HOSTCPP = $(CPP)
|
HOSTCXX = $(CXX)
|
||||||
HOSTCC = $(CC)
|
HOSTCC = $(CC)
|
||||||
|
endif
|
||||||
|
|
||||||
ARCHFLAG = $(ARCHFLAG/$(BUILDARCH))
|
ARCHFLAG = $(ARCHFLAG/$(BUILDARCH))
|
||||||
ARCHFLAG/i486 = -m32
|
ARCHFLAG/i486 = -m32
|
||||||
|
|||||||
@@ -47,12 +47,10 @@ VM = $(GAMMADIR)/src/share/vm
|
|||||||
Plat_File = $(Platform_file)
|
Plat_File = $(Platform_file)
|
||||||
CDG = cd $(GENERATED);
|
CDG = cd $(GENERATED);
|
||||||
|
|
||||||
ifdef USE_PRECOMPILED_HEADER
|
ifneq ($(USE_PRECOMPILED_HEADER),0)
|
||||||
PrecompiledOption = -DUSE_PRECOMPILED_HEADER
|
UpdatePCH = $(MAKE) -f vm.make $(PRECOMPILED_HEADER) $(MFLAGS)
|
||||||
UpdatePCH = $(MAKE) -f vm.make $(PRECOMPILED_HEADER) $(MFLAGS)
|
|
||||||
else
|
else
|
||||||
UpdatePCH = \# precompiled header is not used
|
UpdatePCH = \# precompiled header is not used
|
||||||
PrecompiledOption =
|
|
||||||
endif
|
endif
|
||||||
|
|
||||||
Cached_plat = $(GENERATED)/platform.current
|
Cached_plat = $(GENERATED)/platform.current
|
||||||
@@ -82,7 +80,7 @@ default: vm_build_preliminaries the_vm
|
|||||||
@echo All done.
|
@echo All done.
|
||||||
|
|
||||||
# This is an explicit dependency for the sake of parallel makes.
|
# This is an explicit dependency for the sake of parallel makes.
|
||||||
vm_build_preliminaries: checks $(Cached_plat) $(AD_Files_If_Required) jvmti_stuff sa_stuff
|
vm_build_preliminaries: checks $(Cached_plat) $(AD_Files_If_Required) jvmti_stuff sa_stuff dtrace_stuff
|
||||||
@# We need a null action here, so implicit rules don't get consulted.
|
@# We need a null action here, so implicit rules don't get consulted.
|
||||||
|
|
||||||
$(Cached_plat): $(Plat_File)
|
$(Cached_plat): $(Plat_File)
|
||||||
@@ -96,6 +94,15 @@ ad_stuff: $(Cached_plat) $(adjust-mflags)
|
|||||||
jvmti_stuff: $(Cached_plat) $(adjust-mflags)
|
jvmti_stuff: $(Cached_plat) $(adjust-mflags)
|
||||||
@$(MAKE) -f jvmti.make $(MFLAGS-adjusted)
|
@$(MAKE) -f jvmti.make $(MFLAGS-adjusted)
|
||||||
|
|
||||||
|
ifeq ($(OS_VENDOR), Darwin)
|
||||||
|
# generate dtrace header files
|
||||||
|
dtrace_stuff: $(Cached_plat) $(adjust-mflags)
|
||||||
|
@$(MAKE) -f dtrace.make dtrace_stuff $(MFLAGS-adjusted) GENERATED=$(GENERATED)
|
||||||
|
else
|
||||||
|
dtrace_stuff:
|
||||||
|
@# We need a null action here, so implicit rules don't get consulted.
|
||||||
|
endif
|
||||||
|
|
||||||
# generate SA jar files and native header
|
# generate SA jar files and native header
|
||||||
sa_stuff:
|
sa_stuff:
|
||||||
@$(MAKE) -f sa.make $(MFLAGS-adjusted)
|
@$(MAKE) -f sa.make $(MFLAGS-adjusted)
|
||||||
@@ -117,8 +124,8 @@ the_vm: vm_build_preliminaries $(adjust-mflags)
|
|||||||
@$(UpdatePCH)
|
@$(UpdatePCH)
|
||||||
@$(MAKE) -f vm.make $(MFLAGS-adjusted)
|
@$(MAKE) -f vm.make $(MFLAGS-adjusted)
|
||||||
|
|
||||||
install: the_vm
|
install gamma: the_vm
|
||||||
@$(MAKE) -f vm.make install
|
@$(MAKE) -f vm.make $@
|
||||||
|
|
||||||
# next rules support "make foo.[ois]"
|
# next rules support "make foo.[ois]"
|
||||||
|
|
||||||
|
|||||||
113
hotspot/make/bsd/makefiles/universal.gmk
Normal file
113
hotspot/make/bsd/makefiles/universal.gmk
Normal file
@@ -0,0 +1,113 @@
|
|||||||
|
#
|
||||||
|
# Copyright (c) 2006, 2012, Oracle and/or its affiliates. All rights reserved.
|
||||||
|
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||||
|
#
|
||||||
|
# This code is free software; you can redistribute it and/or modify it
|
||||||
|
# under the terms of the GNU General Public License version 2 only, as
|
||||||
|
# published by the Free Software Foundation.
|
||||||
|
#
|
||||||
|
# This code is distributed in the hope that it will be useful, but WITHOUT
|
||||||
|
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||||
|
# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||||
|
# version 2 for more details (a copy is included in the LICENSE file that
|
||||||
|
# accompanied this code).
|
||||||
|
#
|
||||||
|
# You should have received a copy of the GNU General Public License version
|
||||||
|
# 2 along with this work; if not, write to the Free Software Foundation,
|
||||||
|
# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||||
|
#
|
||||||
|
# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||||
|
# or visit www.oracle.com if you need additional information or have any
|
||||||
|
# questions.
|
||||||
|
#
|
||||||
|
#
|
||||||
|
|
||||||
|
# macosx universal builds
|
||||||
|
universal_product:
|
||||||
|
$(MAKE) MACOSX_UNIVERSAL=true all_product_universal
|
||||||
|
universal_fastdebug:
|
||||||
|
$(MAKE) MACOSX_UNIVERSAL=true all_fastdebug_universal
|
||||||
|
universal_debug:
|
||||||
|
$(MAKE) MACOSX_UNIVERSAL=true all_debug_universal
|
||||||
|
|
||||||
|
|
||||||
|
# Universal builds include 1 or more architectures in a single binary
|
||||||
|
all_product_universal:
|
||||||
|
# $(QUIETLY) $(MAKE) ARCH_DATA_MODEL=32 $(COMMON_VM_PRODUCT_TARGETS)
|
||||||
|
$(QUIETLY) $(MAKE) ARCH_DATA_MODEL=64 $(COMMON_VM_PRODUCT_TARGETS)
|
||||||
|
$(QUIETLY) $(MAKE) EXPORT_SUBDIR= universalize
|
||||||
|
all_fastdebug_universal:
|
||||||
|
# $(QUIETLY) $(MAKE) ARCH_DATA_MODEL=32 $(COMMON_VM_FASTDEBUG_TARGETS)
|
||||||
|
$(QUIETLY) $(MAKE) ARCH_DATA_MODEL=64 $(COMMON_VM_FASTDEBUG_TARGETS)
|
||||||
|
$(QUIETLY) $(MAKE) EXPORT_SUBDIR=/fastdebug universalize
|
||||||
|
all_debug_universal:
|
||||||
|
# $(QUIETLY) $(MAKE) ARCH_DATA_MODEL=32 $(COMMON_VM_DEBUG_TARGETS)
|
||||||
|
$(QUIETLY) $(MAKE) ARCH_DATA_MODEL=64 $(COMMON_VM_DEBUG_TARGETS)
|
||||||
|
$(QUIETLY) $(MAKE) EXPORT_SUBDIR=/debug universalize
|
||||||
|
|
||||||
|
|
||||||
|
# Consolidate architecture builds into a single Universal binary
|
||||||
|
universalize: $(UNIVERSAL_LIPO_LIST) $(UNIVERSAL_COPY_LIST)
|
||||||
|
$(RM) -r $(EXPORT_PATH)/jre/lib/{i386,amd64}
|
||||||
|
|
||||||
|
|
||||||
|
# Package built libraries in a universal binary
|
||||||
|
$(UNIVERSAL_LIPO_LIST):
|
||||||
|
BUILT_LIPO_FILES="`find $(EXPORT_JRE_LIB_DIR)/{i386,amd64}/$(subst $(EXPORT_JRE_LIB_DIR)/,,$@) 2>/dev/null`"; \
|
||||||
|
if [ -n "$${BUILT_LIPO_FILES}" ]; then \
|
||||||
|
$(MKDIR) -p $(shell dirname $@); \
|
||||||
|
lipo -create -output $@ $${BUILT_LIPO_FILES}; \
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
|
# Copy built non-universal binaries in place
|
||||||
|
$(UNIVERSAL_COPY_LIST):
|
||||||
|
BUILT_COPY_FILES="`find $(EXPORT_JRE_LIB_DIR)/{i386,amd64}/$(subst $(EXPORT_JRE_LIB_DIR)/,,$@) 2>/dev/null`"; \
|
||||||
|
if [ -n "$${BUILT_COPY_FILES}" ]; then \
|
||||||
|
for i in $${BUILT_COPY_FILES}; do \
|
||||||
|
if [ -f $${i} ]; then \
|
||||||
|
$(MKDIR) -p $(shell dirname $@); \
|
||||||
|
$(CP) $${i} $@; \
|
||||||
|
fi; \
|
||||||
|
done; \
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
|
# Replace arch specific binaries with universal binaries
|
||||||
|
export_universal:
|
||||||
|
$(RM) -r $(EXPORT_PATH)/jre/lib/{i386,amd64}
|
||||||
|
$(RM) -r $(JDK_IMAGE_DIR)/jre/lib/{i386,amd64}
|
||||||
|
$(RM) $(JDK_IMAGE_DIR)/jre/lib/{client,server}/libjsig.$(LIBRARY_SUFFIX)
|
||||||
|
($(CD) $(EXPORT_PATH) && \
|
||||||
|
$(TAR) -cf - *) | \
|
||||||
|
($(CD) $(JDK_IMAGE_DIR) && $(TAR) -xpf -)
|
||||||
|
|
||||||
|
|
||||||
|
# Overlay universal binaries
|
||||||
|
copy_universal:
|
||||||
|
$(RM) -r $(JDK_IMAGE_DIR)$(COPY_SUBDIR)/jre/lib/{i386,amd64}
|
||||||
|
$(RM) $(JDK_IMAGE_DIR)$(COPY_SUBDIR)/jre/lib/{client,server}/libjsig.$(LIBRARY_SUFFIX)
|
||||||
|
($(CD) $(EXPORT_PATH)$(COPY_SUBDIR) && \
|
||||||
|
$(TAR) -cf - *) | \
|
||||||
|
($(CD) $(JDK_IMAGE_DIR)$(COPY_SUBDIR) && $(TAR) -xpf -)
|
||||||
|
|
||||||
|
|
||||||
|
# Additional processing for universal builds
|
||||||
|
export_product_jdk::
|
||||||
|
$(MAKE) EXPORT_SUBDIR= export_universal
|
||||||
|
export_optimized_jdk::
|
||||||
|
$(MAKE) EXPORT_SUBDIR= export_universal
|
||||||
|
export_fastdebug_jdk::
|
||||||
|
$(MAKE) EXPORT_SUBDIR=/fastdebug export_universal
|
||||||
|
export_debug_jdk::
|
||||||
|
$(MAKE) EXPORT_SUBDIR=/debug export_universal
|
||||||
|
copy_product_jdk::
|
||||||
|
$(MAKE) COPY_SUBDIR= copy_universal
|
||||||
|
copy_fastdebug_jdk::
|
||||||
|
$(MAKE) COPY_SUBDIR=/fastdebug copy_universal
|
||||||
|
copy_debug_jdk::
|
||||||
|
$(MAKE) COPY_SUBDIR=/debug copy_universal
|
||||||
|
|
||||||
|
.PHONY: universal_product universal_fastdebug universal_debug \
|
||||||
|
all_product_universal all_fastdebug_universal all_debug_universal \
|
||||||
|
universalize export_universal copy_universal
|
||||||
@@ -82,18 +82,26 @@ BUILD_TARGET = -DHOTSPOT_BUILD_TARGET="\"$(TARGET)\""
|
|||||||
BUILD_USER = -DHOTSPOT_BUILD_USER="\"$(HOTSPOT_BUILD_USER)\""
|
BUILD_USER = -DHOTSPOT_BUILD_USER="\"$(HOTSPOT_BUILD_USER)\""
|
||||||
VM_DISTRO = -DHOTSPOT_VM_DISTRO="\"$(HOTSPOT_VM_DISTRO)\""
|
VM_DISTRO = -DHOTSPOT_VM_DISTRO="\"$(HOTSPOT_VM_DISTRO)\""
|
||||||
|
|
||||||
CPPFLAGS = \
|
CXXFLAGS = \
|
||||||
${SYSDEFS} \
|
${SYSDEFS} \
|
||||||
${INCLUDES} \
|
${INCLUDES} \
|
||||||
${BUILD_VERSION} \
|
${BUILD_VERSION} \
|
||||||
${BUILD_TARGET} \
|
${BUILD_TARGET} \
|
||||||
${BUILD_USER} \
|
${BUILD_USER} \
|
||||||
${HS_LIB_ARCH} \
|
${HS_LIB_ARCH} \
|
||||||
${JRE_VERSION} \
|
|
||||||
${VM_DISTRO}
|
${VM_DISTRO}
|
||||||
|
|
||||||
|
# This is VERY important! The version define must only be supplied to vm_version.o
|
||||||
|
# If not, ccache will not re-use the cache at all, since the version string might contain
|
||||||
|
# a time and date.
|
||||||
|
vm_version.o: CXXFLAGS += ${JRE_VERSION}
|
||||||
|
|
||||||
ifdef DEFAULT_LIBPATH
|
ifdef DEFAULT_LIBPATH
|
||||||
CPPFLAGS += -DDEFAULT_LIBPATH="\"$(DEFAULT_LIBPATH)\""
|
CXXFLAGS += -DDEFAULT_LIBPATH="\"$(DEFAULT_LIBPATH)\""
|
||||||
|
endif
|
||||||
|
|
||||||
|
ifndef JAVASE_EMBEDDED
|
||||||
|
CFLAGS += -DINCLUDE_TRACE
|
||||||
endif
|
endif
|
||||||
|
|
||||||
# CFLAGS_WARN holds compiler options to suppress/enable warnings.
|
# CFLAGS_WARN holds compiler options to suppress/enable warnings.
|
||||||
@@ -108,6 +116,7 @@ LFLAGS += $(EXTRA_CFLAGS)
|
|||||||
|
|
||||||
# Don't set excutable bit on stack segment
|
# Don't set excutable bit on stack segment
|
||||||
# the same could be done by separate execstack command
|
# the same could be done by separate execstack command
|
||||||
|
# Darwin is non-executable-stack by default
|
||||||
ifneq ($(OS_VENDOR), Darwin)
|
ifneq ($(OS_VENDOR), Darwin)
|
||||||
LFLAGS += -Xlinker -z -Xlinker noexecstack
|
LFLAGS += -Xlinker -z -Xlinker noexecstack
|
||||||
endif
|
endif
|
||||||
@@ -146,6 +155,12 @@ SOURCE_PATHS+=$(HS_COMMON_SRC)/os/posix/vm
|
|||||||
SOURCE_PATHS+=$(HS_COMMON_SRC)/cpu/$(Platform_arch)/vm
|
SOURCE_PATHS+=$(HS_COMMON_SRC)/cpu/$(Platform_arch)/vm
|
||||||
SOURCE_PATHS+=$(HS_COMMON_SRC)/os_cpu/$(Platform_os_arch)/vm
|
SOURCE_PATHS+=$(HS_COMMON_SRC)/os_cpu/$(Platform_os_arch)/vm
|
||||||
|
|
||||||
|
ifndef JAVASE_EMBEDDED
|
||||||
|
SOURCE_PATHS+=$(shell if [ -d $(HS_ALT_SRC)/share/vm/jfr ]; then \
|
||||||
|
find $(HS_ALT_SRC)/share/vm/jfr -type d; \
|
||||||
|
fi)
|
||||||
|
endif
|
||||||
|
|
||||||
CORE_PATHS=$(foreach path,$(SOURCE_PATHS),$(call altsrc,$(path)) $(path))
|
CORE_PATHS=$(foreach path,$(SOURCE_PATHS),$(call altsrc,$(path)) $(path))
|
||||||
CORE_PATHS+=$(GENERATED)/jvmtifiles
|
CORE_PATHS+=$(GENERATED)/jvmtifiles
|
||||||
|
|
||||||
@@ -249,9 +264,9 @@ else
|
|||||||
ifeq ($(STATIC_CXX), true)
|
ifeq ($(STATIC_CXX), true)
|
||||||
LFLAGS_VM += $(STATIC_LIBGCC)
|
LFLAGS_VM += $(STATIC_LIBGCC)
|
||||||
LIBS_VM += $(STATIC_STDCXX)
|
LIBS_VM += $(STATIC_STDCXX)
|
||||||
LINK_VM = $(LINK_LIB.c)
|
|
||||||
else
|
|
||||||
LINK_VM = $(LINK_LIB.CC)
|
LINK_VM = $(LINK_LIB.CC)
|
||||||
|
else
|
||||||
|
LINK_VM = $(LINK_LIB.CXX)
|
||||||
endif
|
endif
|
||||||
|
|
||||||
LIBS_VM += $(LIBS)
|
LIBS_VM += $(LIBS)
|
||||||
@@ -269,7 +284,7 @@ endif
|
|||||||
$(PRECOMPILED_HEADER):
|
$(PRECOMPILED_HEADER):
|
||||||
$(QUIETLY) echo Generating precompiled header $@
|
$(QUIETLY) echo Generating precompiled header $@
|
||||||
$(QUIETLY) mkdir -p $(PRECOMPILED_HEADER_DIR)
|
$(QUIETLY) mkdir -p $(PRECOMPILED_HEADER_DIR)
|
||||||
$(QUIETLY) $(COMPILE.CC) $(DEPFLAGS) -x c++-header $(PRECOMPILED_HEADER_SRC) -o $@ $(COMPILE_DONE)
|
$(QUIETLY) $(COMPILE.CXX) $(DEPFLAGS) -x c++-header $(PRECOMPILED_HEADER_SRC) -o $@ $(COMPILE_DONE)
|
||||||
|
|
||||||
# making the library:
|
# making the library:
|
||||||
|
|
||||||
@@ -294,10 +309,10 @@ endif
|
|||||||
$(LIBJVM): $(LIBJVM.o) $(LIBJVM_MAPFILE) $(LD_SCRIPT)
|
$(LIBJVM): $(LIBJVM.o) $(LIBJVM_MAPFILE) $(LD_SCRIPT)
|
||||||
$(QUIETLY) { \
|
$(QUIETLY) { \
|
||||||
echo Linking vm...; \
|
echo Linking vm...; \
|
||||||
$(LINK_LIB.CC/PRE_HOOK) \
|
$(LINK_LIB.CXX/PRE_HOOK) \
|
||||||
$(LINK_VM) $(LD_SCRIPT_FLAG) \
|
$(LINK_VM) $(LD_SCRIPT_FLAG) \
|
||||||
$(LFLAGS_VM) -o $@ $(LIBJVM.o) $(LIBS_VM); \
|
$(LFLAGS_VM) -o $@ $(LIBJVM.o) $(LIBS_VM); \
|
||||||
$(LINK_LIB.CC/POST_HOOK) \
|
$(LINK_LIB.CXX/POST_HOOK) \
|
||||||
rm -f $@.1; ln -s $@ $@.1; \
|
rm -f $@.1; ln -s $@ $@.1; \
|
||||||
[ -f $(LIBJVM_G) ] || { ln -s $@ $(LIBJVM_G); ln -s $@.1 $(LIBJVM_G).1; }; \
|
[ -f $(LIBJVM_G) ] || { ln -s $@ $(LIBJVM_G); ln -s $@.1 $(LIBJVM_G).1; }; \
|
||||||
}
|
}
|
||||||
@@ -322,7 +337,16 @@ include $(MAKEFILES_DIR)/saproc.make
|
|||||||
|
|
||||||
#----------------------------------------------------------------------
|
#----------------------------------------------------------------------
|
||||||
|
|
||||||
|
ifeq ($(OS_VENDOR), Darwin)
|
||||||
|
$(LIBJVM).dSYM: $(LIBJVM)
|
||||||
|
dsymutil $(LIBJVM)
|
||||||
|
|
||||||
|
# no libjvm_db for macosx
|
||||||
|
build: $(LIBJVM) $(LAUNCHER) $(LIBJSIG) $(BUILDLIBSAPROC) dtraceCheck $(LIBJVM).dSYM
|
||||||
|
echo "Doing vm.make build:"
|
||||||
|
else
|
||||||
build: $(LIBJVM) $(LAUNCHER) $(LIBJSIG) $(LIBJVM_DB) $(BUILDLIBSAPROC)
|
build: $(LIBJVM) $(LAUNCHER) $(LIBJSIG) $(LIBJVM_DB) $(BUILDLIBSAPROC)
|
||||||
|
endif
|
||||||
|
|
||||||
install: install_jvm install_jsig install_saproc
|
install: install_jvm install_jsig install_saproc
|
||||||
|
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
#
|
#
|
||||||
# Copyright (c) 2006, 2011, Oracle and/or its affiliates. All rights reserved.
|
# Copyright (c) 2006, 2012, Oracle and/or its affiliates. All rights reserved.
|
||||||
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||||
#
|
#
|
||||||
# This code is free software; you can redistribute it and/or modify it
|
# This code is free software; you can redistribute it and/or modify it
|
||||||
@@ -24,6 +24,11 @@
|
|||||||
|
|
||||||
# The common definitions for hotspot builds.
|
# The common definitions for hotspot builds.
|
||||||
|
|
||||||
|
# Optionally include SPEC file generated by configure.
|
||||||
|
ifneq ($(SPEC),)
|
||||||
|
include $(SPEC)
|
||||||
|
endif
|
||||||
|
|
||||||
# Default to verbose build logs (show all compile lines):
|
# Default to verbose build logs (show all compile lines):
|
||||||
MAKE_VERBOSE=y
|
MAKE_VERBOSE=y
|
||||||
|
|
||||||
@@ -185,6 +190,18 @@ ifneq ($(ALT_BOOTDIR),)
|
|||||||
BOOTDIR=$(ALT_BOOTDIR)
|
BOOTDIR=$(ALT_BOOTDIR)
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
# Select name of the export directory and honor ALT overrides
|
||||||
|
EXPORT_PATH=$(OUTPUTDIR)/export-$(PLATFORM)$(EXPORT_SUBDIR)
|
||||||
|
ifneq ($(ALT_EXPORT_PATH),)
|
||||||
|
EXPORT_PATH=$(ALT_EXPORT_PATH)
|
||||||
|
endif
|
||||||
|
|
||||||
|
# Default jdk image if one is created for you with create_jdk
|
||||||
|
JDK_IMAGE_DIR=$(OUTPUTDIR)/jdk-$(PLATFORM)
|
||||||
|
ifneq ($(ALT_JDK_IMAGE_DIR),)
|
||||||
|
JDK_IMAGE_DIR=$(ALT_JDK_IMAGE_DIR)
|
||||||
|
endif
|
||||||
|
|
||||||
# The platform dependent defs.make defines platform specific variable such
|
# The platform dependent defs.make defines platform specific variable such
|
||||||
# as ARCH, EXPORT_LIST etc. We must place the include here after BOOTDIR is defined.
|
# as ARCH, EXPORT_LIST etc. We must place the include here after BOOTDIR is defined.
|
||||||
include $(GAMMADIR)/make/$(OSNAME)/makefiles/defs.make
|
include $(GAMMADIR)/make/$(OSNAME)/makefiles/defs.make
|
||||||
@@ -263,15 +280,6 @@ MAKE_ARGS += JRE_RELEASE_VERSION=$(JRE_RELEASE_VERSION)
|
|||||||
# includes this make/defs.make file.
|
# includes this make/defs.make file.
|
||||||
MAKE_ARGS += HOTSPOT_BUILD_VERSION=$(HOTSPOT_BUILD_VERSION)
|
MAKE_ARGS += HOTSPOT_BUILD_VERSION=$(HOTSPOT_BUILD_VERSION)
|
||||||
|
|
||||||
# Select name of export directory
|
|
||||||
EXPORT_PATH=$(OUTPUTDIR)/export-$(PLATFORM)$(EXPORT_SUBDIR)
|
|
||||||
ifneq ($(ALT_EXPORT_PATH),)
|
|
||||||
EXPORT_PATH=$(ALT_EXPORT_PATH)
|
|
||||||
endif
|
|
||||||
|
|
||||||
# Default jdk image if one is created for you with create_jdk
|
|
||||||
JDK_IMAGE_DIR=$(OUTPUTDIR)/jdk-$(PLATFORM)
|
|
||||||
|
|
||||||
# Various export sub directories
|
# Various export sub directories
|
||||||
EXPORT_INCLUDE_DIR = $(EXPORT_PATH)/include
|
EXPORT_INCLUDE_DIR = $(EXPORT_PATH)/include
|
||||||
EXPORT_DOCS_DIR = $(EXPORT_PATH)/docs
|
EXPORT_DOCS_DIR = $(EXPORT_PATH)/docs
|
||||||
@@ -281,9 +289,20 @@ EXPORT_JRE_BIN_DIR = $(EXPORT_JRE_DIR)/bin
|
|||||||
EXPORT_JRE_LIB_DIR = $(EXPORT_JRE_DIR)/lib
|
EXPORT_JRE_LIB_DIR = $(EXPORT_JRE_DIR)/lib
|
||||||
EXPORT_JRE_LIB_ARCH_DIR = $(EXPORT_JRE_LIB_DIR)/$(LIBARCH)
|
EXPORT_JRE_LIB_ARCH_DIR = $(EXPORT_JRE_LIB_DIR)/$(LIBARCH)
|
||||||
|
|
||||||
|
# non-universal macosx builds need to appear universal
|
||||||
|
ifeq ($(OS_VENDOR), Darwin)
|
||||||
|
ifneq ($(MACOSX_UNIVERSAL), true)
|
||||||
|
EXPORT_JRE_LIB_ARCH_DIR = $(EXPORT_JRE_LIB_DIR)
|
||||||
|
endif
|
||||||
|
endif
|
||||||
|
|
||||||
# Common export list of files
|
# Common export list of files
|
||||||
EXPORT_LIST += $(EXPORT_INCLUDE_DIR)/jvmti.h
|
EXPORT_LIST += $(EXPORT_INCLUDE_DIR)/jvmti.h
|
||||||
EXPORT_LIST += $(EXPORT_INCLUDE_DIR)/jvmticmlr.h
|
EXPORT_LIST += $(EXPORT_INCLUDE_DIR)/jvmticmlr.h
|
||||||
EXPORT_LIST += $(EXPORT_INCLUDE_DIR)/jni.h
|
EXPORT_LIST += $(EXPORT_INCLUDE_DIR)/jni.h
|
||||||
EXPORT_LIST += $(EXPORT_INCLUDE_DIR)/$(JDK_INCLUDE_SUBDIR)/jni_md.h
|
EXPORT_LIST += $(EXPORT_INCLUDE_DIR)/$(JDK_INCLUDE_SUBDIR)/jni_md.h
|
||||||
EXPORT_LIST += $(EXPORT_INCLUDE_DIR)/jmm.h
|
EXPORT_LIST += $(EXPORT_INCLUDE_DIR)/jmm.h
|
||||||
|
|
||||||
|
ifndef JAVASE_EMBEDDED
|
||||||
|
EXPORT_LIST += $(EXPORT_INCLUDE_DIR)/jfr.h
|
||||||
|
endif
|
||||||
|
|||||||
@@ -33,9 +33,9 @@
|
|||||||
# Don't put quotes (fail windows build).
|
# Don't put quotes (fail windows build).
|
||||||
HOTSPOT_VM_COPYRIGHT=Copyright 2011
|
HOTSPOT_VM_COPYRIGHT=Copyright 2011
|
||||||
|
|
||||||
HS_MAJOR_VER=23
|
HS_MAJOR_VER=24
|
||||||
HS_MINOR_VER=0
|
HS_MINOR_VER=0
|
||||||
HS_BUILD_NUMBER=01
|
HS_BUILD_NUMBER=02
|
||||||
|
|
||||||
JDK_MAJOR_VER=1
|
JDK_MAJOR_VER=1
|
||||||
JDK_MINOR_VER=8
|
JDK_MINOR_VER=8
|
||||||
|
|||||||
@@ -38,7 +38,9 @@ jprt.need.sibling.build=false
|
|||||||
|
|
||||||
# This tells jprt what default release we want to build
|
# This tells jprt what default release we want to build
|
||||||
|
|
||||||
jprt.tools.default.release=${jprt.submit.release}
|
jprt.hotspot.default.release=jdk7
|
||||||
|
|
||||||
|
jprt.tools.default.release=${jprt.submit.option.release?${jprt.submit.option.release}:${jprt.hotspot.default.release}}
|
||||||
|
|
||||||
# Disable syncing the source after builds and tests are done.
|
# Disable syncing the source after builds and tests are done.
|
||||||
|
|
||||||
@@ -52,154 +54,58 @@ jprt.sync.push=false
|
|||||||
# Define the Solaris platforms we want for the various releases
|
# Define the Solaris platforms we want for the various releases
|
||||||
jprt.my.solaris.sparc.jdk8=solaris_sparc_5.10
|
jprt.my.solaris.sparc.jdk8=solaris_sparc_5.10
|
||||||
jprt.my.solaris.sparc.jdk7=solaris_sparc_5.10
|
jprt.my.solaris.sparc.jdk7=solaris_sparc_5.10
|
||||||
jprt.my.solaris.sparc.jdk7b107=solaris_sparc_5.10
|
|
||||||
jprt.my.solaris.sparc.jdk7temp=solaris_sparc_5.10
|
|
||||||
jprt.my.solaris.sparc.jdk6=solaris_sparc_5.8
|
|
||||||
jprt.my.solaris.sparc.jdk6perf=solaris_sparc_5.8
|
|
||||||
jprt.my.solaris.sparc.jdk6u10=solaris_sparc_5.8
|
|
||||||
jprt.my.solaris.sparc.jdk6u14=solaris_sparc_5.8
|
|
||||||
jprt.my.solaris.sparc.jdk6u18=solaris_sparc_5.8
|
|
||||||
jprt.my.solaris.sparc.jdk6u20=solaris_sparc_5.8
|
|
||||||
jprt.my.solaris.sparc.ejdk7=${jprt.my.solaris.sparc.jdk7}
|
|
||||||
jprt.my.solaris.sparc.ejdk6=${jprt.my.solaris.sparc.jdk6}
|
|
||||||
jprt.my.solaris.sparc=${jprt.my.solaris.sparc.${jprt.tools.default.release}}
|
jprt.my.solaris.sparc=${jprt.my.solaris.sparc.${jprt.tools.default.release}}
|
||||||
|
|
||||||
jprt.my.solaris.sparcv9.jdk8=solaris_sparcv9_5.10
|
jprt.my.solaris.sparcv9.jdk8=solaris_sparcv9_5.10
|
||||||
jprt.my.solaris.sparcv9.jdk7=solaris_sparcv9_5.10
|
jprt.my.solaris.sparcv9.jdk7=solaris_sparcv9_5.10
|
||||||
jprt.my.solaris.sparcv9.jdk7b107=solaris_sparcv9_5.10
|
|
||||||
jprt.my.solaris.sparcv9.jdk7temp=solaris_sparcv9_5.10
|
|
||||||
jprt.my.solaris.sparcv9.jdk6=solaris_sparcv9_5.8
|
|
||||||
jprt.my.solaris.sparcv9.jdk6perf=solaris_sparcv9_5.8
|
|
||||||
jprt.my.solaris.sparcv9.jdk6u10=solaris_sparcv9_5.8
|
|
||||||
jprt.my.solaris.sparcv9.jdk6u14=solaris_sparcv9_5.8
|
|
||||||
jprt.my.solaris.sparcv9.jdk6u18=solaris_sparcv9_5.8
|
|
||||||
jprt.my.solaris.sparcv9.jdk6u20=solaris_sparcv9_5.8
|
|
||||||
jprt.my.solaris.sparcv9.ejdk7=${jprt.my.solaris.sparcv9.jdk7}
|
|
||||||
jprt.my.solaris.sparcv9.ejdk6=${jprt.my.solaris.sparcv9.jdk6}
|
|
||||||
jprt.my.solaris.sparcv9=${jprt.my.solaris.sparcv9.${jprt.tools.default.release}}
|
jprt.my.solaris.sparcv9=${jprt.my.solaris.sparcv9.${jprt.tools.default.release}}
|
||||||
|
|
||||||
jprt.my.solaris.i586.jdk8=solaris_i586_5.10
|
jprt.my.solaris.i586.jdk8=solaris_i586_5.10
|
||||||
jprt.my.solaris.i586.jdk7=solaris_i586_5.10
|
jprt.my.solaris.i586.jdk7=solaris_i586_5.10
|
||||||
jprt.my.solaris.i586.jdk7b107=solaris_i586_5.10
|
|
||||||
jprt.my.solaris.i586.jdk7temp=solaris_i586_5.10
|
|
||||||
jprt.my.solaris.i586.jdk6=solaris_i586_5.8
|
|
||||||
jprt.my.solaris.i586.jdk6perf=solaris_i586_5.8
|
|
||||||
jprt.my.solaris.i586.jdk6u10=solaris_i586_5.8
|
|
||||||
jprt.my.solaris.i586.jdk6u14=solaris_i586_5.8
|
|
||||||
jprt.my.solaris.i586.jdk6u18=solaris_i586_5.8
|
|
||||||
jprt.my.solaris.i586.jdk6u20=solaris_i586_5.8
|
|
||||||
jprt.my.solaris.i586.ejdk7=${jprt.my.solaris.i586.jdk7}
|
|
||||||
jprt.my.solaris.i586.ejdk6=${jprt.my.solaris.i586.jdk6}
|
|
||||||
jprt.my.solaris.i586=${jprt.my.solaris.i586.${jprt.tools.default.release}}
|
jprt.my.solaris.i586=${jprt.my.solaris.i586.${jprt.tools.default.release}}
|
||||||
|
|
||||||
jprt.my.solaris.x64.jdk8=solaris_x64_5.10
|
jprt.my.solaris.x64.jdk8=solaris_x64_5.10
|
||||||
jprt.my.solaris.x64.jdk7=solaris_x64_5.10
|
jprt.my.solaris.x64.jdk7=solaris_x64_5.10
|
||||||
jprt.my.solaris.x64.jdk7b107=solaris_x64_5.10
|
|
||||||
jprt.my.solaris.x64.jdk7temp=solaris_x64_5.10
|
|
||||||
jprt.my.solaris.x64.jdk6=solaris_x64_5.10
|
|
||||||
jprt.my.solaris.x64.jdk6perf=solaris_x64_5.10
|
|
||||||
jprt.my.solaris.x64.jdk6u10=solaris_x64_5.10
|
|
||||||
jprt.my.solaris.x64.jdk6u14=solaris_x64_5.10
|
|
||||||
jprt.my.solaris.x64.jdk6u18=solaris_x64_5.10
|
|
||||||
jprt.my.solaris.x64.jdk6u20=solaris_x64_5.10
|
|
||||||
jprt.my.solaris.x64.ejdk7=${jprt.my.solaris.x64.jdk7}
|
|
||||||
jprt.my.solaris.x64.ejdk6=${jprt.my.solaris.x64.jdk6}
|
|
||||||
jprt.my.solaris.x64=${jprt.my.solaris.x64.${jprt.tools.default.release}}
|
jprt.my.solaris.x64=${jprt.my.solaris.x64.${jprt.tools.default.release}}
|
||||||
|
|
||||||
jprt.my.linux.i586.jdk8=linux_i586_2.6
|
jprt.my.linux.i586.jdk8=linux_i586_2.6
|
||||||
jprt.my.linux.i586.jdk7=linux_i586_2.6
|
jprt.my.linux.i586.jdk7=linux_i586_2.6
|
||||||
jprt.my.linux.i586.jdk7b107=linux_i586_2.6
|
|
||||||
jprt.my.linux.i586.jdk7temp=linux_i586_2.6
|
|
||||||
jprt.my.linux.i586.jdk6=linux_i586_2.4
|
|
||||||
jprt.my.linux.i586.jdk6perf=linux_i586_2.4
|
|
||||||
jprt.my.linux.i586.jdk6u10=linux_i586_2.4
|
|
||||||
jprt.my.linux.i586.jdk6u14=linux_i586_2.4
|
|
||||||
jprt.my.linux.i586.jdk6u18=linux_i586_2.4
|
|
||||||
jprt.my.linux.i586.jdk6u20=linux_i586_2.4
|
|
||||||
jprt.my.linux.i586.ejdk7=linux_i586_2.6
|
|
||||||
jprt.my.linux.i586.ejdk6=linux_i586_2.6
|
|
||||||
jprt.my.linux.i586=${jprt.my.linux.i586.${jprt.tools.default.release}}
|
jprt.my.linux.i586=${jprt.my.linux.i586.${jprt.tools.default.release}}
|
||||||
|
|
||||||
jprt.my.linux.x64.jdk8=linux_x64_2.6
|
jprt.my.linux.x64.jdk8=linux_x64_2.6
|
||||||
jprt.my.linux.x64.jdk7=linux_x64_2.6
|
jprt.my.linux.x64.jdk7=linux_x64_2.6
|
||||||
jprt.my.linux.x64.jdk7b107=linux_x64_2.6
|
|
||||||
jprt.my.linux.x64.jdk7temp=linux_x64_2.6
|
|
||||||
jprt.my.linux.x64.jdk6=linux_x64_2.4
|
|
||||||
jprt.my.linux.x64.jdk6perf=linux_x64_2.4
|
|
||||||
jprt.my.linux.x64.jdk6u10=linux_x64_2.4
|
|
||||||
jprt.my.linux.x64.jdk6u14=linux_x64_2.4
|
|
||||||
jprt.my.linux.x64.jdk6u18=linux_x64_2.4
|
|
||||||
jprt.my.linux.x64.jdk6u20=linux_x64_2.4
|
|
||||||
jprt.my.linux.x64.ejdk7=${jprt.my.linux.x64.jdk7}
|
|
||||||
jprt.my.linux.x64.ejdk6=${jprt.my.linux.x64.jdk6}
|
|
||||||
jprt.my.linux.x64=${jprt.my.linux.x64.${jprt.tools.default.release}}
|
jprt.my.linux.x64=${jprt.my.linux.x64.${jprt.tools.default.release}}
|
||||||
|
|
||||||
jprt.my.linux.ppc.jdk8=linux_ppc_2.6
|
jprt.my.linux.ppc.jdk8=linux_ppc_2.6
|
||||||
jprt.my.linux.ppc.jdk7=linux_ppc_2.6
|
jprt.my.linux.ppc.jdk7=linux_ppc_2.6
|
||||||
jprt.my.linux.ppc.jdk7b107=linux_ppc_2.6
|
|
||||||
jprt.my.linux.ppc.jdk7temp=linux_ppc_2.6
|
|
||||||
jprt.my.linux.ppc.ejdk6=linux_ppc_2.6
|
|
||||||
jprt.my.linux.ppc.ejdk7=linux_ppc_2.6
|
|
||||||
jprt.my.linux.ppc=${jprt.my.linux.ppc.${jprt.tools.default.release}}
|
jprt.my.linux.ppc=${jprt.my.linux.ppc.${jprt.tools.default.release}}
|
||||||
|
|
||||||
jprt.my.linux.ppcv2.jdk8=linux_ppcv2_2.6
|
jprt.my.linux.ppcv2.jdk8=linux_ppcv2_2.6
|
||||||
jprt.my.linux.ppcv2.jdk7=linux_ppcv2_2.6
|
jprt.my.linux.ppcv2.jdk7=linux_ppcv2_2.6
|
||||||
jprt.my.linux.ppcv2.jdk7b107=linux_ppcv2_2.6
|
|
||||||
jprt.my.linux.ppcv2.jdk7temp=linux_ppcv2_2.6
|
|
||||||
jprt.my.linux.ppcv2.ejdk6=linux_ppcv2_2.6
|
|
||||||
jprt.my.linux.ppcv2.ejdk7=linux_ppcv2_2.6
|
|
||||||
jprt.my.linux.ppcv2=${jprt.my.linux.ppcv2.${jprt.tools.default.release}}
|
jprt.my.linux.ppcv2=${jprt.my.linux.ppcv2.${jprt.tools.default.release}}
|
||||||
|
|
||||||
jprt.my.linux.ppcsflt.jdk8=linux_ppcsflt_2.6
|
jprt.my.linux.ppcsflt.jdk8=linux_ppcsflt_2.6
|
||||||
jprt.my.linux.ppcsflt.jdk7=linux_ppcsflt_2.6
|
jprt.my.linux.ppcsflt.jdk7=linux_ppcsflt_2.6
|
||||||
jprt.my.linux.ppcsflt.jdk7b107=linux_ppcsflt_2.6
|
|
||||||
jprt.my.linux.ppcsflt.jdk7temp=linux_ppcsflt_2.6
|
|
||||||
jprt.my.linux.ppcsflt.ejdk6=linux_ppcsflt_2.6
|
|
||||||
jprt.my.linux.ppcsflt.ejdk7=linux_ppcsflt_2.6
|
|
||||||
jprt.my.linux.ppcsflt=${jprt.my.linux.ppcsflt.${jprt.tools.default.release}}
|
jprt.my.linux.ppcsflt=${jprt.my.linux.ppcsflt.${jprt.tools.default.release}}
|
||||||
|
|
||||||
jprt.my.linux.armvfp.jdk8=linux_armvfp_2.6
|
jprt.my.linux.armvfp.jdk8=linux_armvfp_2.6
|
||||||
jprt.my.linux.armvfp.jdk7=linux_armvfp_2.6
|
jprt.my.linux.armvfp.jdk7=linux_armvfp_2.6
|
||||||
jprt.my.linux.armvfp.jdk7b107=linux_armvfp_2.6
|
|
||||||
jprt.my.linux.armvfp.jdk7temp=linux_armvfp_2.6
|
|
||||||
jprt.my.linux.armvfp.ejdk6=linux_armvfp_2.6
|
|
||||||
jprt.my.linux.armvfp.ejdk7=linux_armvfp_2.6
|
|
||||||
jprt.my.linux.armvfp=${jprt.my.linux.armvfp.${jprt.tools.default.release}}
|
jprt.my.linux.armvfp=${jprt.my.linux.armvfp.${jprt.tools.default.release}}
|
||||||
|
|
||||||
jprt.my.linux.armsflt.jdk8=linux_armsflt_2.6
|
jprt.my.linux.armsflt.jdk8=linux_armsflt_2.6
|
||||||
jprt.my.linux.armsflt.jdk7=linux_armsflt_2.6
|
jprt.my.linux.armsflt.jdk7=linux_armsflt_2.6
|
||||||
jprt.my.linux.armsflt.jdk7b107=linux_armsflt_2.6
|
|
||||||
jprt.my.linux.armsflt.jdk7temp=linux_armsflt_2.6
|
|
||||||
jprt.my.linux.armsflt.ejdk6=linux_armsflt_2.6
|
|
||||||
jprt.my.linux.armsflt.ejdk7=linux_armsflt_2.6
|
|
||||||
jprt.my.linux.armsflt=${jprt.my.linux.armsflt.${jprt.tools.default.release}}
|
jprt.my.linux.armsflt=${jprt.my.linux.armsflt.${jprt.tools.default.release}}
|
||||||
|
|
||||||
|
jprt.my.macosx.x64.jdk8=macosx_x64_10.7
|
||||||
|
jprt.my.macosx.x64.jdk7=macosx_x64_10.7
|
||||||
|
jprt.my.macosx.x64=${jprt.my.macosx.x64.${jprt.tools.default.release}}
|
||||||
|
|
||||||
jprt.my.windows.i586.jdk8=windows_i586_5.1
|
jprt.my.windows.i586.jdk8=windows_i586_5.1
|
||||||
jprt.my.windows.i586.jdk7=windows_i586_5.1
|
jprt.my.windows.i586.jdk7=windows_i586_5.1
|
||||||
jprt.my.windows.i586.jdk7b107=windows_i586_5.0
|
|
||||||
jprt.my.windows.i586.jdk7temp=windows_i586_5.0
|
|
||||||
jprt.my.windows.i586.jdk6=windows_i586_5.0
|
|
||||||
jprt.my.windows.i586.jdk6perf=windows_i586_5.0
|
|
||||||
jprt.my.windows.i586.jdk6u10=windows_i586_5.0
|
|
||||||
jprt.my.windows.i586.jdk6u14=windows_i586_5.0
|
|
||||||
jprt.my.windows.i586.jdk6u18=windows_i586_5.0
|
|
||||||
jprt.my.windows.i586.jdk6u20=windows_i586_5.0
|
|
||||||
jprt.my.windows.i586.ejdk7=${jprt.my.windows.i586.jdk7}
|
|
||||||
jprt.my.windows.i586.ejdk6=${jprt.my.windows.i586.jdk6}
|
|
||||||
jprt.my.windows.i586=${jprt.my.windows.i586.${jprt.tools.default.release}}
|
jprt.my.windows.i586=${jprt.my.windows.i586.${jprt.tools.default.release}}
|
||||||
|
|
||||||
jprt.my.windows.x64.jdk8=windows_x64_5.2
|
jprt.my.windows.x64.jdk8=windows_x64_5.2
|
||||||
jprt.my.windows.x64.jdk7=windows_x64_5.2
|
jprt.my.windows.x64.jdk7=windows_x64_5.2
|
||||||
jprt.my.windows.x64.jdk7b107=windows_x64_5.2
|
|
||||||
jprt.my.windows.x64.jdk7temp=windows_x64_5.2
|
|
||||||
jprt.my.windows.x64.jdk6=windows_x64_5.2
|
|
||||||
jprt.my.windows.x64.jdk6perf=windows_x64_5.2
|
|
||||||
jprt.my.windows.x64.jdk6u10=windows_x64_5.2
|
|
||||||
jprt.my.windows.x64.jdk6u14=windows_x64_5.2
|
|
||||||
jprt.my.windows.x64.jdk6u18=windows_x64_5.2
|
|
||||||
jprt.my.windows.x64.jdk6u20=windows_x64_5.2
|
|
||||||
jprt.my.windows.x64.ejdk7=${jprt.my.windows.x64.jdk7}
|
|
||||||
jprt.my.windows.x64.ejdk6=${jprt.my.windows.x64.jdk6}
|
|
||||||
jprt.my.windows.x64=${jprt.my.windows.x64.${jprt.tools.default.release}}
|
jprt.my.windows.x64=${jprt.my.windows.x64.${jprt.tools.default.release}}
|
||||||
|
|
||||||
# Standard list of jprt build targets for this source tree
|
# Standard list of jprt build targets for this source tree
|
||||||
@@ -211,6 +117,7 @@ jprt.build.targets.standard= \
|
|||||||
${jprt.my.solaris.x64}-{product|fastdebug|debug}, \
|
${jprt.my.solaris.x64}-{product|fastdebug|debug}, \
|
||||||
${jprt.my.linux.i586}-{product|fastdebug|debug}, \
|
${jprt.my.linux.i586}-{product|fastdebug|debug}, \
|
||||||
${jprt.my.linux.x64}-{product|fastdebug}, \
|
${jprt.my.linux.x64}-{product|fastdebug}, \
|
||||||
|
${jprt.my.macosx.x64}-{product|fastdebug|debug}, \
|
||||||
${jprt.my.windows.i586}-{product|fastdebug|debug}, \
|
${jprt.my.windows.i586}-{product|fastdebug|debug}, \
|
||||||
${jprt.my.windows.x64}-{product|fastdebug|debug}
|
${jprt.my.windows.x64}-{product|fastdebug|debug}
|
||||||
|
|
||||||
@@ -248,7 +155,7 @@ jprt.build.targets=${jprt.build.targets.${jprt.tools.default.release}}
|
|||||||
|
|
||||||
jprt.my.solaris.sparc.test.targets= \
|
jprt.my.solaris.sparc.test.targets= \
|
||||||
${jprt.my.solaris.sparc}-{product|fastdebug}-{c1|c2}-jvm98, \
|
${jprt.my.solaris.sparc}-{product|fastdebug}-{c1|c2}-jvm98, \
|
||||||
${jprt.my.solaris.sparc}-{product|fastdebug}-c2-jvm98_tiered, \
|
${jprt.my.solaris.sparc}-{product|fastdebug}-c2-jvm98_nontiered, \
|
||||||
${jprt.my.solaris.sparc}-{product|fastdebug}-{c1|c2}-scimark, \
|
${jprt.my.solaris.sparc}-{product|fastdebug}-{c1|c2}-scimark, \
|
||||||
${jprt.my.solaris.sparc}-product-{c1|c2}-runThese, \
|
${jprt.my.solaris.sparc}-product-{c1|c2}-runThese, \
|
||||||
${jprt.my.solaris.sparc}-fastdebug-c1-runThese_Xshare, \
|
${jprt.my.solaris.sparc}-fastdebug-c1-runThese_Xshare, \
|
||||||
@@ -267,7 +174,7 @@ jprt.my.solaris.sparc.test.targets= \
|
|||||||
${jprt.my.solaris.sparc}-{product|fastdebug}-{c1|c2}-GCOld_G1, \
|
${jprt.my.solaris.sparc}-{product|fastdebug}-{c1|c2}-GCOld_G1, \
|
||||||
${jprt.my.solaris.sparc}-{product|fastdebug}-{c1|c2}-GCOld_ParOldGC, \
|
${jprt.my.solaris.sparc}-{product|fastdebug}-{c1|c2}-GCOld_ParOldGC, \
|
||||||
${jprt.my.solaris.sparc}-{product|fastdebug}-{c1|c2}-jbb_default, \
|
${jprt.my.solaris.sparc}-{product|fastdebug}-{c1|c2}-jbb_default, \
|
||||||
${jprt.my.solaris.sparc}-{product|fastdebug}-c2-jbb_default_tiered, \
|
${jprt.my.solaris.sparc}-{product|fastdebug}-c2-jbb_default_nontiered, \
|
||||||
${jprt.my.solaris.sparc}-{product|fastdebug}-{c1|c2}-jbb_SerialGC, \
|
${jprt.my.solaris.sparc}-{product|fastdebug}-{c1|c2}-jbb_SerialGC, \
|
||||||
${jprt.my.solaris.sparc}-{product|fastdebug}-{c1|c2}-jbb_ParallelGC, \
|
${jprt.my.solaris.sparc}-{product|fastdebug}-{c1|c2}-jbb_ParallelGC, \
|
||||||
${jprt.my.solaris.sparc}-{product|fastdebug}-{c1|c2}-jbb_CMS, \
|
${jprt.my.solaris.sparc}-{product|fastdebug}-{c1|c2}-jbb_CMS, \
|
||||||
@@ -276,7 +183,7 @@ jprt.my.solaris.sparc.test.targets= \
|
|||||||
|
|
||||||
jprt.my.solaris.sparcv9.test.targets= \
|
jprt.my.solaris.sparcv9.test.targets= \
|
||||||
${jprt.my.solaris.sparcv9}-{product|fastdebug}-c2-jvm98, \
|
${jprt.my.solaris.sparcv9}-{product|fastdebug}-c2-jvm98, \
|
||||||
${jprt.my.solaris.sparcv9}-{product|fastdebug}-c2-jvm98_tiered, \
|
${jprt.my.solaris.sparcv9}-{product|fastdebug}-c2-jvm98_nontiered, \
|
||||||
${jprt.my.solaris.sparcv9}-{product|fastdebug}-c2-scimark, \
|
${jprt.my.solaris.sparcv9}-{product|fastdebug}-c2-scimark, \
|
||||||
${jprt.my.solaris.sparcv9}-product-c2-runThese, \
|
${jprt.my.solaris.sparcv9}-product-c2-runThese, \
|
||||||
${jprt.my.solaris.sparcv9}-{product|fastdebug}-c2-GCBasher_default, \
|
${jprt.my.solaris.sparcv9}-{product|fastdebug}-c2-GCBasher_default, \
|
||||||
@@ -294,7 +201,7 @@ jprt.my.solaris.sparcv9.test.targets= \
|
|||||||
${jprt.my.solaris.sparcv9}-{product|fastdebug}-c2-GCOld_G1, \
|
${jprt.my.solaris.sparcv9}-{product|fastdebug}-c2-GCOld_G1, \
|
||||||
${jprt.my.solaris.sparcv9}-{product|fastdebug}-c2-GCOld_ParOldGC, \
|
${jprt.my.solaris.sparcv9}-{product|fastdebug}-c2-GCOld_ParOldGC, \
|
||||||
${jprt.my.solaris.sparcv9}-{product|fastdebug}-c2-jbb_default, \
|
${jprt.my.solaris.sparcv9}-{product|fastdebug}-c2-jbb_default, \
|
||||||
${jprt.my.solaris.sparcv9}-{product|fastdebug}-c2-jbb_default_tiered, \
|
${jprt.my.solaris.sparcv9}-{product|fastdebug}-c2-jbb_default_nontiered, \
|
||||||
${jprt.my.solaris.sparcv9}-{product|fastdebug}-c2-jbb_SerialGC, \
|
${jprt.my.solaris.sparcv9}-{product|fastdebug}-c2-jbb_SerialGC, \
|
||||||
${jprt.my.solaris.sparcv9}-{product|fastdebug}-c2-jbb_ParallelGC, \
|
${jprt.my.solaris.sparcv9}-{product|fastdebug}-c2-jbb_ParallelGC, \
|
||||||
${jprt.my.solaris.sparcv9}-{product|fastdebug}-c2-jbb_CMS, \
|
${jprt.my.solaris.sparcv9}-{product|fastdebug}-c2-jbb_CMS, \
|
||||||
@@ -303,7 +210,7 @@ jprt.my.solaris.sparcv9.test.targets= \
|
|||||||
|
|
||||||
jprt.my.solaris.x64.test.targets= \
|
jprt.my.solaris.x64.test.targets= \
|
||||||
${jprt.my.solaris.x64}-{product|fastdebug}-c2-jvm98, \
|
${jprt.my.solaris.x64}-{product|fastdebug}-c2-jvm98, \
|
||||||
${jprt.my.solaris.x64}-{product|fastdebug}-c2-jvm98_tiered, \
|
${jprt.my.solaris.x64}-{product|fastdebug}-c2-jvm98_nontiered, \
|
||||||
${jprt.my.solaris.x64}-{product|fastdebug}-c2-scimark, \
|
${jprt.my.solaris.x64}-{product|fastdebug}-c2-scimark, \
|
||||||
${jprt.my.solaris.x64}-product-c2-runThese, \
|
${jprt.my.solaris.x64}-product-c2-runThese, \
|
||||||
${jprt.my.solaris.x64}-product-c2-runThese_Xcomp, \
|
${jprt.my.solaris.x64}-product-c2-runThese_Xcomp, \
|
||||||
@@ -322,7 +229,7 @@ jprt.my.solaris.x64.test.targets= \
|
|||||||
${jprt.my.solaris.x64}-{product|fastdebug}-c2-GCOld_G1, \
|
${jprt.my.solaris.x64}-{product|fastdebug}-c2-GCOld_G1, \
|
||||||
${jprt.my.solaris.x64}-{product|fastdebug}-c2-GCOld_ParOldGC, \
|
${jprt.my.solaris.x64}-{product|fastdebug}-c2-GCOld_ParOldGC, \
|
||||||
${jprt.my.solaris.x64}-{product|fastdebug}-c2-jbb_default, \
|
${jprt.my.solaris.x64}-{product|fastdebug}-c2-jbb_default, \
|
||||||
${jprt.my.solaris.x64}-{product|fastdebug}-c2-jbb_default_tiered, \
|
${jprt.my.solaris.x64}-{product|fastdebug}-c2-jbb_default_nontiered, \
|
||||||
${jprt.my.solaris.x64}-{product|fastdebug}-c2-jbb_SerialGC, \
|
${jprt.my.solaris.x64}-{product|fastdebug}-c2-jbb_SerialGC, \
|
||||||
${jprt.my.solaris.x64}-{product|fastdebug}-c2-jbb_ParallelGC, \
|
${jprt.my.solaris.x64}-{product|fastdebug}-c2-jbb_ParallelGC, \
|
||||||
${jprt.my.solaris.x64}-{product|fastdebug}-c2-GCOld_CMS, \
|
${jprt.my.solaris.x64}-{product|fastdebug}-c2-GCOld_CMS, \
|
||||||
@@ -331,7 +238,7 @@ jprt.my.solaris.x64.test.targets= \
|
|||||||
|
|
||||||
jprt.my.solaris.i586.test.targets= \
|
jprt.my.solaris.i586.test.targets= \
|
||||||
${jprt.my.solaris.i586}-{product|fastdebug}-{c1|c2}-jvm98, \
|
${jprt.my.solaris.i586}-{product|fastdebug}-{c1|c2}-jvm98, \
|
||||||
${jprt.my.solaris.i586}-{product|fastdebug}-c2-jvm98_tiered, \
|
${jprt.my.solaris.i586}-{product|fastdebug}-c2-jvm98_nontiered, \
|
||||||
${jprt.my.solaris.i586}-{product|fastdebug}-{c1|c2}-scimark, \
|
${jprt.my.solaris.i586}-{product|fastdebug}-{c1|c2}-scimark, \
|
||||||
${jprt.my.solaris.i586}-product-{c1|c2}-runThese_Xcomp, \
|
${jprt.my.solaris.i586}-product-{c1|c2}-runThese_Xcomp, \
|
||||||
${jprt.my.solaris.i586}-fastdebug-c1-runThese_Xcomp, \
|
${jprt.my.solaris.i586}-fastdebug-c1-runThese_Xcomp, \
|
||||||
@@ -358,7 +265,7 @@ jprt.my.solaris.i586.test.targets= \
|
|||||||
${jprt.my.solaris.i586}-product-c1-GCOld_G1, \
|
${jprt.my.solaris.i586}-product-c1-GCOld_G1, \
|
||||||
${jprt.my.solaris.i586}-product-c1-GCOld_ParOldGC, \
|
${jprt.my.solaris.i586}-product-c1-GCOld_ParOldGC, \
|
||||||
${jprt.my.solaris.i586}-fastdebug-c2-jbb_default, \
|
${jprt.my.solaris.i586}-fastdebug-c2-jbb_default, \
|
||||||
${jprt.my.solaris.i586}-fastdebug-c2-jbb_default_tiered, \
|
${jprt.my.solaris.i586}-fastdebug-c2-jbb_default_nontiered, \
|
||||||
${jprt.my.solaris.i586}-fastdebug-c2-jbb_ParallelGC, \
|
${jprt.my.solaris.i586}-fastdebug-c2-jbb_ParallelGC, \
|
||||||
${jprt.my.solaris.i586}-fastdebug-c2-jbb_CMS, \
|
${jprt.my.solaris.i586}-fastdebug-c2-jbb_CMS, \
|
||||||
${jprt.my.solaris.i586}-fastdebug-c2-jbb_G1, \
|
${jprt.my.solaris.i586}-fastdebug-c2-jbb_G1, \
|
||||||
@@ -366,7 +273,7 @@ jprt.my.solaris.i586.test.targets= \
|
|||||||
|
|
||||||
jprt.my.linux.i586.test.targets = \
|
jprt.my.linux.i586.test.targets = \
|
||||||
${jprt.my.linux.i586}-{product|fastdebug}-{c1|c2}-jvm98, \
|
${jprt.my.linux.i586}-{product|fastdebug}-{c1|c2}-jvm98, \
|
||||||
${jprt.my.linux.i586}-{product|fastdebug}-c2-jvm98_tiered, \
|
${jprt.my.linux.i586}-{product|fastdebug}-c2-jvm98_nontiered, \
|
||||||
${jprt.my.linux.i586}-{product|fastdebug}-{c1|c2}-scimark, \
|
${jprt.my.linux.i586}-{product|fastdebug}-{c1|c2}-scimark, \
|
||||||
${jprt.my.linux.i586}-product-c1-runThese_Xcomp, \
|
${jprt.my.linux.i586}-product-c1-runThese_Xcomp, \
|
||||||
${jprt.my.linux.i586}-fastdebug-c1-runThese_Xshare, \
|
${jprt.my.linux.i586}-fastdebug-c1-runThese_Xshare, \
|
||||||
@@ -386,7 +293,7 @@ jprt.my.linux.i586.test.targets = \
|
|||||||
${jprt.my.linux.i586}-product-{c1|c2}-GCOld_G1, \
|
${jprt.my.linux.i586}-product-{c1|c2}-GCOld_G1, \
|
||||||
${jprt.my.linux.i586}-product-{c1|c2}-GCOld_ParOldGC, \
|
${jprt.my.linux.i586}-product-{c1|c2}-GCOld_ParOldGC, \
|
||||||
${jprt.my.linux.i586}-{product|fastdebug}-c1-jbb_default, \
|
${jprt.my.linux.i586}-{product|fastdebug}-c1-jbb_default, \
|
||||||
${jprt.my.linux.i586}-{product|fastdebug}-c2-jbb_default_tiered, \
|
${jprt.my.linux.i586}-{product|fastdebug}-c2-jbb_default_nontiered, \
|
||||||
${jprt.my.linux.i586}-{product|fastdebug}-c1-jbb_ParallelGC, \
|
${jprt.my.linux.i586}-{product|fastdebug}-c1-jbb_ParallelGC, \
|
||||||
${jprt.my.linux.i586}-{product|fastdebug}-c1-jbb_CMS, \
|
${jprt.my.linux.i586}-{product|fastdebug}-c1-jbb_CMS, \
|
||||||
${jprt.my.linux.i586}-{product|fastdebug}-c1-jbb_G1, \
|
${jprt.my.linux.i586}-{product|fastdebug}-c1-jbb_G1, \
|
||||||
@@ -394,7 +301,7 @@ jprt.my.linux.i586.test.targets = \
|
|||||||
|
|
||||||
jprt.my.linux.x64.test.targets = \
|
jprt.my.linux.x64.test.targets = \
|
||||||
${jprt.my.linux.x64}-{product|fastdebug}-c2-jvm98, \
|
${jprt.my.linux.x64}-{product|fastdebug}-c2-jvm98, \
|
||||||
${jprt.my.linux.x64}-{product|fastdebug}-c2-jvm98_tiered, \
|
${jprt.my.linux.x64}-{product|fastdebug}-c2-jvm98_nontiered, \
|
||||||
${jprt.my.linux.x64}-{product|fastdebug}-c2-scimark, \
|
${jprt.my.linux.x64}-{product|fastdebug}-c2-scimark, \
|
||||||
${jprt.my.linux.x64}-{product|fastdebug}-c2-GCBasher_default, \
|
${jprt.my.linux.x64}-{product|fastdebug}-c2-GCBasher_default, \
|
||||||
${jprt.my.linux.x64}-{product|fastdebug}-c2-GCBasher_SerialGC, \
|
${jprt.my.linux.x64}-{product|fastdebug}-c2-GCBasher_SerialGC, \
|
||||||
@@ -411,14 +318,38 @@ jprt.my.linux.x64.test.targets = \
|
|||||||
${jprt.my.linux.x64}-{product|fastdebug}-c2-GCOld_G1, \
|
${jprt.my.linux.x64}-{product|fastdebug}-c2-GCOld_G1, \
|
||||||
${jprt.my.linux.x64}-{product|fastdebug}-c2-GCOld_ParOldGC, \
|
${jprt.my.linux.x64}-{product|fastdebug}-c2-GCOld_ParOldGC, \
|
||||||
${jprt.my.linux.x64}-{product|fastdebug}-c2-jbb_default, \
|
${jprt.my.linux.x64}-{product|fastdebug}-c2-jbb_default, \
|
||||||
${jprt.my.linux.x64}-{product|fastdebug}-c2-jbb_default_tiered, \
|
${jprt.my.linux.x64}-{product|fastdebug}-c2-jbb_default_nontiered, \
|
||||||
${jprt.my.linux.x64}-{product|fastdebug}-c2-jbb_ParallelGC, \
|
${jprt.my.linux.x64}-{product|fastdebug}-c2-jbb_ParallelGC, \
|
||||||
${jprt.my.linux.x64}-{product|fastdebug}-c2-jbb_G1, \
|
${jprt.my.linux.x64}-{product|fastdebug}-c2-jbb_G1, \
|
||||||
${jprt.my.linux.x64}-{product|fastdebug}-c2-jbb_ParOldGC
|
${jprt.my.linux.x64}-{product|fastdebug}-c2-jbb_ParOldGC
|
||||||
|
|
||||||
|
jprt.my.macosx.x64.test.targets = \
|
||||||
|
${jprt.my.macosx.x64}-{product|fastdebug}-c2-jvm98, \
|
||||||
|
${jprt.my.macosx.x64}-{product|fastdebug}-c2-jvm98_nontiered, \
|
||||||
|
${jprt.my.macosx.x64}-{product|fastdebug}-c2-scimark, \
|
||||||
|
${jprt.my.macosx.x64}-{product|fastdebug}-c2-GCBasher_default, \
|
||||||
|
${jprt.my.macosx.x64}-{product|fastdebug}-c2-GCBasher_SerialGC, \
|
||||||
|
${jprt.my.macosx.x64}-{product|fastdebug}-c2-GCBasher_ParallelGC, \
|
||||||
|
${jprt.my.macosx.x64}-{product|fastdebug}-c2-GCBasher_ParNewGC, \
|
||||||
|
${jprt.my.macosx.x64}-{product|fastdebug}-c2-GCBasher_CMS, \
|
||||||
|
${jprt.my.macosx.x64}-{product|fastdebug}-c2-GCBasher_G1, \
|
||||||
|
${jprt.my.macosx.x64}-{product|fastdebug}-c2-GCBasher_ParOldGC, \
|
||||||
|
${jprt.my.macosx.x64}-{product|fastdebug}-c2-GCOld_default, \
|
||||||
|
${jprt.my.macosx.x64}-{product|fastdebug}-c2-GCOld_SerialGC, \
|
||||||
|
${jprt.my.macosx.x64}-{product|fastdebug}-c2-GCOld_ParallelGC, \
|
||||||
|
${jprt.my.macosx.x64}-{product|fastdebug}-c2-GCOld_ParNewGC, \
|
||||||
|
${jprt.my.macosx.x64}-{product|fastdebug}-c2-GCOld_CMS, \
|
||||||
|
${jprt.my.macosx.x64}-{product|fastdebug}-c2-GCOld_G1, \
|
||||||
|
${jprt.my.macosx.x64}-{product|fastdebug}-c2-GCOld_ParOldGC
|
||||||
|
# ${jprt.my.macosx.x64}-{product|fastdebug}-c2-jbb_default, \
|
||||||
|
# ${jprt.my.macosx.x64}-{product|fastdebug}-c2-jbb_default_tiered, \
|
||||||
|
# ${jprt.my.macosx.x64}-{product|fastdebug}-c2-jbb_ParallelGC, \
|
||||||
|
# ${jprt.my.macosx.x64}-{product|fastdebug}-c2-jbb_G1, \
|
||||||
|
# ${jprt.my.macosx.x64}-{product|fastdebug}-c2-jbb_ParOldGC
|
||||||
|
|
||||||
jprt.my.windows.i586.test.targets = \
|
jprt.my.windows.i586.test.targets = \
|
||||||
${jprt.my.windows.i586}-{product|fastdebug}-{c1|c2}-jvm98, \
|
${jprt.my.windows.i586}-{product|fastdebug}-{c1|c2}-jvm98, \
|
||||||
${jprt.my.windows.i586}-{product|fastdebug}-c2-jvm98_tiered, \
|
${jprt.my.windows.i586}-{product|fastdebug}-c2-jvm98_nontiered, \
|
||||||
${jprt.my.windows.i586}-{product|fastdebug}-{c1|c2}-scimark, \
|
${jprt.my.windows.i586}-{product|fastdebug}-{c1|c2}-scimark, \
|
||||||
${jprt.my.windows.i586}-product-{c1|c2}-runThese, \
|
${jprt.my.windows.i586}-product-{c1|c2}-runThese, \
|
||||||
${jprt.my.windows.i586}-product-{c1|c2}-runThese_Xcomp, \
|
${jprt.my.windows.i586}-product-{c1|c2}-runThese_Xcomp, \
|
||||||
@@ -438,7 +369,7 @@ jprt.my.windows.i586.test.targets = \
|
|||||||
${jprt.my.windows.i586}-product-{c1|c2}-GCOld_G1, \
|
${jprt.my.windows.i586}-product-{c1|c2}-GCOld_G1, \
|
||||||
${jprt.my.windows.i586}-product-{c1|c2}-GCOld_ParOldGC, \
|
${jprt.my.windows.i586}-product-{c1|c2}-GCOld_ParOldGC, \
|
||||||
${jprt.my.windows.i586}-{product|fastdebug}-{c1|c2}-jbb_default, \
|
${jprt.my.windows.i586}-{product|fastdebug}-{c1|c2}-jbb_default, \
|
||||||
${jprt.my.windows.i586}-{product|fastdebug}-c2-jbb_default_tiered, \
|
${jprt.my.windows.i586}-{product|fastdebug}-c2-jbb_default_nontiered, \
|
||||||
${jprt.my.windows.i586}-product-{c1|c2}-jbb_ParallelGC, \
|
${jprt.my.windows.i586}-product-{c1|c2}-jbb_ParallelGC, \
|
||||||
${jprt.my.windows.i586}-product-{c1|c2}-jbb_CMS, \
|
${jprt.my.windows.i586}-product-{c1|c2}-jbb_CMS, \
|
||||||
${jprt.my.windows.i586}-product-{c1|c2}-jbb_G1, \
|
${jprt.my.windows.i586}-product-{c1|c2}-jbb_G1, \
|
||||||
@@ -446,7 +377,7 @@ jprt.my.windows.i586.test.targets = \
|
|||||||
|
|
||||||
jprt.my.windows.x64.test.targets = \
|
jprt.my.windows.x64.test.targets = \
|
||||||
${jprt.my.windows.x64}-{product|fastdebug}-c2-jvm98, \
|
${jprt.my.windows.x64}-{product|fastdebug}-c2-jvm98, \
|
||||||
${jprt.my.windows.x64}-{product|fastdebug}-c2-jvm98_tiered, \
|
${jprt.my.windows.x64}-{product|fastdebug}-c2-jvm98_nontiered, \
|
||||||
${jprt.my.windows.x64}-{product|fastdebug}-c2-scimark, \
|
${jprt.my.windows.x64}-{product|fastdebug}-c2-scimark, \
|
||||||
${jprt.my.windows.x64}-product-c2-runThese, \
|
${jprt.my.windows.x64}-product-c2-runThese, \
|
||||||
${jprt.my.windows.x64}-product-c2-runThese_Xcomp, \
|
${jprt.my.windows.x64}-product-c2-runThese_Xcomp, \
|
||||||
@@ -465,7 +396,7 @@ jprt.my.windows.x64.test.targets = \
|
|||||||
${jprt.my.windows.x64}-{product|fastdebug}-c2-GCOld_G1, \
|
${jprt.my.windows.x64}-{product|fastdebug}-c2-GCOld_G1, \
|
||||||
${jprt.my.windows.x64}-{product|fastdebug}-c2-GCOld_ParOldGC, \
|
${jprt.my.windows.x64}-{product|fastdebug}-c2-GCOld_ParOldGC, \
|
||||||
${jprt.my.windows.x64}-{product|fastdebug}-c2-jbb_default, \
|
${jprt.my.windows.x64}-{product|fastdebug}-c2-jbb_default, \
|
||||||
${jprt.my.windows.x64}-{product|fastdebug}-c2-jbb_default_tiered, \
|
${jprt.my.windows.x64}-{product|fastdebug}-c2-jbb_default_nontiered, \
|
||||||
${jprt.my.windows.x64}-product-c2-jbb_CMS, \
|
${jprt.my.windows.x64}-product-c2-jbb_CMS, \
|
||||||
${jprt.my.windows.x64}-product-c2-jbb_ParallelGC, \
|
${jprt.my.windows.x64}-product-c2-jbb_ParallelGC, \
|
||||||
${jprt.my.windows.x64}-product-c2-jbb_G1, \
|
${jprt.my.windows.x64}-product-c2-jbb_G1, \
|
||||||
@@ -473,9 +404,9 @@ jprt.my.windows.x64.test.targets = \
|
|||||||
|
|
||||||
# Some basic "smoke" tests for OpenJDK builds
|
# Some basic "smoke" tests for OpenJDK builds
|
||||||
jprt.test.targets.open = \
|
jprt.test.targets.open = \
|
||||||
${jprt.my.solaris.x64}-{productOpen|debugOpen|fastdebugOpen}-c2-jvm98_tiered, \
|
${jprt.my.solaris.x64}-{productOpen|debugOpen|fastdebugOpen}-c2-jvm98, \
|
||||||
${jprt.my.solaris.i586}-{productOpen|fastdebugOpen}-c2-jvm98_tiered, \
|
${jprt.my.solaris.i586}-{productOpen|fastdebugOpen}-c2-jvm98, \
|
||||||
${jprt.my.linux.x64}-{productOpen|fastdebugOpen}-c2-jvm98_tiered
|
${jprt.my.linux.x64}-{productOpen|fastdebugOpen}-c2-jvm98
|
||||||
|
|
||||||
# Testing for actual embedded builds is different to standard
|
# Testing for actual embedded builds is different to standard
|
||||||
jprt.my.linux.i586.test.targets.embedded = \
|
jprt.my.linux.i586.test.targets.embedded = \
|
||||||
@@ -492,6 +423,7 @@ jprt.test.targets.standard = \
|
|||||||
${jprt.my.solaris.x64.test.targets}, \
|
${jprt.my.solaris.x64.test.targets}, \
|
||||||
${jprt.my.linux.i586.test.targets}, \
|
${jprt.my.linux.i586.test.targets}, \
|
||||||
${jprt.my.linux.x64.test.targets}, \
|
${jprt.my.linux.x64.test.targets}, \
|
||||||
|
${jprt.my.macosx.x64.test.targets}, \
|
||||||
${jprt.my.windows.i586.test.targets}, \
|
${jprt.my.windows.i586.test.targets}, \
|
||||||
${jprt.my.windows.x64.test.targets}, \
|
${jprt.my.windows.x64.test.targets}, \
|
||||||
${jprt.test.targets.open}
|
${jprt.test.targets.open}
|
||||||
@@ -509,16 +441,6 @@ jprt.test.targets.embedded= \
|
|||||||
|
|
||||||
jprt.test.targets.jdk8=${jprt.test.targets.standard}
|
jprt.test.targets.jdk8=${jprt.test.targets.standard}
|
||||||
jprt.test.targets.jdk7=${jprt.test.targets.standard}
|
jprt.test.targets.jdk7=${jprt.test.targets.standard}
|
||||||
jprt.test.targets.jdk7temp=${jprt.test.targets.standard}
|
|
||||||
jprt.test.targets.jdk7b105=${jprt.test.targets.standard}
|
|
||||||
jprt.test.targets.jdk6=${jprt.test.targets.standard}
|
|
||||||
jprt.test.targets.jdk6perf=${jprt.test.targets.standard}
|
|
||||||
jprt.test.targets.jdk6u10=${jprt.test.targets.standard}
|
|
||||||
jprt.test.targets.jdk6u14=${jprt.test.targets.standard}
|
|
||||||
jprt.test.targets.jdk6u18=${jprt.test.targets.standard}
|
|
||||||
jprt.test.targets.jdk6u20=${jprt.test.targets.standard}
|
|
||||||
jprt.test.targets.ejdk6=${jprt.test.targets.embedded}
|
|
||||||
jprt.test.targets.ejdk7=${jprt.test.targets.embedded}
|
|
||||||
jprt.test.targets=${jprt.test.targets.${jprt.tools.default.release}}
|
jprt.test.targets=${jprt.test.targets.${jprt.tools.default.release}}
|
||||||
|
|
||||||
# The default test/Makefile targets that should be run
|
# The default test/Makefile targets that should be run
|
||||||
@@ -538,27 +460,30 @@ jprt.make.rule.test.targets.standard.server = \
|
|||||||
${jprt.my.solaris.x64}-*-c2-servertest, \
|
${jprt.my.solaris.x64}-*-c2-servertest, \
|
||||||
${jprt.my.linux.i586}-*-c2-servertest, \
|
${jprt.my.linux.i586}-*-c2-servertest, \
|
||||||
${jprt.my.linux.x64}-*-c2-servertest, \
|
${jprt.my.linux.x64}-*-c2-servertest, \
|
||||||
|
${jprt.my.macosx.x64}-*-c2-servertest, \
|
||||||
${jprt.my.windows.i586}-*-c2-servertest, \
|
${jprt.my.windows.i586}-*-c2-servertest, \
|
||||||
${jprt.my.windows.x64}-*-c2-servertest
|
${jprt.my.windows.x64}-*-c2-servertest
|
||||||
|
|
||||||
|
jprt.make.rule.test.targets.standard.internalvmtests = \
|
||||||
|
${jprt.my.solaris.sparc}-fastdebug-c2-internalvmtests, \
|
||||||
|
${jprt.my.solaris.sparcv9}-fastdebug-c2-internalvmtests, \
|
||||||
|
${jprt.my.solaris.i586}-fastdebug-c2-internalvmtests, \
|
||||||
|
${jprt.my.solaris.x64}-fastdebug-c2-internalvmtests, \
|
||||||
|
${jprt.my.linux.i586}-fastdebug-c2-internalvmtests, \
|
||||||
|
${jprt.my.linux.x64}-fastdebug-c2-internalvmtests, \
|
||||||
|
${jprt.my.macosx.x64}-fastdebug-c2-internalvmtests, \
|
||||||
|
${jprt.my.windows.i586}-fastdebug-c2-internalvmtests, \
|
||||||
|
${jprt.my.windows.x64}-fastdebug-c2-internalvmtests
|
||||||
|
|
||||||
jprt.make.rule.test.targets.standard = \
|
jprt.make.rule.test.targets.standard = \
|
||||||
${jprt.make.rule.test.targets.standard.client}, \
|
${jprt.make.rule.test.targets.standard.client}, \
|
||||||
${jprt.make.rule.test.targets.standard.server}
|
${jprt.make.rule.test.targets.standard.server}, \
|
||||||
|
${jprt.make.rule.test.targets.standard.internalvmtests}
|
||||||
|
|
||||||
jprt.make.rule.test.targets.embedded = \
|
jprt.make.rule.test.targets.embedded = \
|
||||||
${jprt.make.rule.test.targets.standard.client}
|
${jprt.make.rule.test.targets.standard.client}
|
||||||
|
|
||||||
jprt.make.rule.test.targets.jdk8=${jprt.make.rule.test.targets.standard}
|
jprt.make.rule.test.targets.jdk8=${jprt.make.rule.test.targets.standard}
|
||||||
jprt.make.rule.test.targets.jdk7=${jprt.make.rule.test.targets.standard}
|
jprt.make.rule.test.targets.jdk7=${jprt.make.rule.test.targets.standard}
|
||||||
jprt.make.rule.test.targets.jdk7temp=${jprt.make.rule.test.targets.standard}
|
|
||||||
jprt.make.rule.test.targets.jdk7b107=${jprt.make.rule.test.targets.standard}
|
|
||||||
jprt.make.rule.test.targets.jdk6=${jprt.make.rule.test.targets.standard}
|
|
||||||
jprt.make.rule.test.targets.jdk6perf=${jprt.make.rule.test.targets.standard}
|
|
||||||
jprt.make.rule.test.targets.jdk6u10=${jprt.make.rule.test.targets.standard}
|
|
||||||
jprt.make.rule.test.targets.jdk6u14=${jprt.make.rule.test.targets.standard}
|
|
||||||
jprt.make.rule.test.targets.jdk6u18=${jprt.make.rule.test.targets.standard}
|
|
||||||
jprt.make.rule.test.targets.jdk6u20=${jprt.make.rule.test.targets.standard}
|
|
||||||
jprt.make.rule.test.targets.ejdk6=${jprt.make.rule.test.targets.embedded}
|
|
||||||
jprt.make.rule.test.targets.ejdk7=${jprt.make.rule.test.targets.embedded}
|
|
||||||
jprt.make.rule.test.targets=${jprt.make.rule.test.targets.${jprt.tools.default.release}}
|
jprt.make.rule.test.targets=${jprt.make.rule.test.targets.${jprt.tools.default.release}}
|
||||||
|
|
||||||
|
|||||||
@@ -39,9 +39,16 @@ OS = $(Platform_os_family)
|
|||||||
|
|
||||||
SOURCE.AD = $(OUTDIR)/$(OS)_$(Platform_arch_model).ad
|
SOURCE.AD = $(OUTDIR)/$(OS)_$(Platform_arch_model).ad
|
||||||
|
|
||||||
SOURCES.AD = \
|
ifeq ("${Platform_arch_model}", "${Platform_arch}")
|
||||||
|
SOURCES.AD = \
|
||||||
$(call altsrc-replace,$(HS_COMMON_SRC)/cpu/$(ARCH)/vm/$(Platform_arch_model).ad) \
|
$(call altsrc-replace,$(HS_COMMON_SRC)/cpu/$(ARCH)/vm/$(Platform_arch_model).ad) \
|
||||||
$(call altsrc-replace,$(HS_COMMON_SRC)/os_cpu/$(OS)_$(ARCH)/vm/$(OS)_$(Platform_arch_model).ad)
|
$(call altsrc-replace,$(HS_COMMON_SRC)/os_cpu/$(OS)_$(ARCH)/vm/$(OS)_$(Platform_arch_model).ad)
|
||||||
|
else
|
||||||
|
SOURCES.AD = \
|
||||||
|
$(call altsrc-replace,$(HS_COMMON_SRC)/cpu/$(ARCH)/vm/$(Platform_arch_model).ad) \
|
||||||
|
$(call altsrc-replace,$(HS_COMMON_SRC)/cpu/$(ARCH)/vm/$(Platform_arch).ad) \
|
||||||
|
$(call altsrc-replace,$(HS_COMMON_SRC)/os_cpu/$(OS)_$(ARCH)/vm/$(OS)_$(Platform_arch_model).ad)
|
||||||
|
endif
|
||||||
|
|
||||||
EXEC = $(OUTDIR)/adlc
|
EXEC = $(OUTDIR)/adlc
|
||||||
|
|
||||||
@@ -54,10 +61,10 @@ Src_Dirs_I += $(GAMMADIR)/src/share/vm/adlc $(GENERATED)
|
|||||||
INCLUDES += $(Src_Dirs_I:%=-I%)
|
INCLUDES += $(Src_Dirs_I:%=-I%)
|
||||||
|
|
||||||
# set flags for adlc compilation
|
# set flags for adlc compilation
|
||||||
CPPFLAGS = $(SYSDEFS) $(INCLUDES)
|
CXXFLAGS = $(SYSDEFS) $(INCLUDES)
|
||||||
|
|
||||||
# Force assertions on.
|
# Force assertions on.
|
||||||
CPPFLAGS += -DASSERT
|
CXXFLAGS += -DASSERT
|
||||||
|
|
||||||
# CFLAGS_WARN holds compiler options to suppress/enable warnings.
|
# CFLAGS_WARN holds compiler options to suppress/enable warnings.
|
||||||
# Compiler warnings are treated as errors
|
# Compiler warnings are treated as errors
|
||||||
@@ -102,7 +109,7 @@ all: $(EXEC)
|
|||||||
|
|
||||||
$(EXEC) : $(OBJECTS)
|
$(EXEC) : $(OBJECTS)
|
||||||
@echo Making adlc
|
@echo Making adlc
|
||||||
$(QUIETLY) $(HOST.LINK_NOPROF.CC) -o $(EXEC) $(OBJECTS)
|
$(QUIETLY) $(HOST.LINK_NOPROF.CXX) -o $(EXEC) $(OBJECTS)
|
||||||
|
|
||||||
# Random dependencies:
|
# Random dependencies:
|
||||||
$(OBJECTS): opcodes.hpp classes.hpp adlc.hpp adlcVMDeps.hpp adlparse.hpp archDesc.hpp arena.hpp dict2.hpp filebuff.hpp forms.hpp formsopt.hpp formssel.hpp
|
$(OBJECTS): opcodes.hpp classes.hpp adlc.hpp adlcVMDeps.hpp adlparse.hpp archDesc.hpp arena.hpp dict2.hpp filebuff.hpp forms.hpp formsopt.hpp formssel.hpp
|
||||||
@@ -204,14 +211,14 @@ PROCESS_AD_FILES = awk '{ \
|
|||||||
$(OUTDIR)/%.o: %.cpp
|
$(OUTDIR)/%.o: %.cpp
|
||||||
@echo Compiling $<
|
@echo Compiling $<
|
||||||
$(QUIETLY) $(REMOVE_TARGET)
|
$(QUIETLY) $(REMOVE_TARGET)
|
||||||
$(QUIETLY) $(HOST.COMPILE.CC) -o $@ $< $(COMPILE_DONE)
|
$(QUIETLY) $(HOST.COMPILE.CXX) -o $@ $< $(COMPILE_DONE)
|
||||||
|
|
||||||
# Some object files are given a prefix, to disambiguate
|
# Some object files are given a prefix, to disambiguate
|
||||||
# them from objects of the same name built for the VM.
|
# them from objects of the same name built for the VM.
|
||||||
$(OUTDIR)/adlc-%.o: %.cpp
|
$(OUTDIR)/adlc-%.o: %.cpp
|
||||||
@echo Compiling $<
|
@echo Compiling $<
|
||||||
$(QUIETLY) $(REMOVE_TARGET)
|
$(QUIETLY) $(REMOVE_TARGET)
|
||||||
$(QUIETLY) $(HOST.COMPILE.CC) -o $@ $< $(COMPILE_DONE)
|
$(QUIETLY) $(HOST.COMPILE.CXX) -o $@ $< $(COMPILE_DONE)
|
||||||
|
|
||||||
# #########################################################################
|
# #########################################################################
|
||||||
|
|
||||||
|
|||||||
@@ -55,6 +55,7 @@
|
|||||||
# The makefiles are split this way so that "make foo" will run faster by not
|
# The makefiles are split this way so that "make foo" will run faster by not
|
||||||
# having to read the dependency files for the vm.
|
# having to read the dependency files for the vm.
|
||||||
|
|
||||||
|
-include $(SPEC)
|
||||||
include $(GAMMADIR)/make/scm.make
|
include $(GAMMADIR)/make/scm.make
|
||||||
include $(GAMMADIR)/make/altsrc.make
|
include $(GAMMADIR)/make/altsrc.make
|
||||||
|
|
||||||
@@ -223,6 +224,8 @@ flags.make: $(BUILDTREE_MAKE) ../shared_dirs.lst
|
|||||||
echo "$(call gamma-path,commonsrc,share/vm/prims) \\"; \
|
echo "$(call gamma-path,commonsrc,share/vm/prims) \\"; \
|
||||||
echo "$(call gamma-path,altsrc,share/vm) \\"; \
|
echo "$(call gamma-path,altsrc,share/vm) \\"; \
|
||||||
echo "$(call gamma-path,commonsrc,share/vm) \\"; \
|
echo "$(call gamma-path,commonsrc,share/vm) \\"; \
|
||||||
|
echo "$(call gamma-path,altsrc,share/vm/precompiled) \\"; \
|
||||||
|
echo "$(call gamma-path,commonsrc,share/vm/precompiled) \\"; \
|
||||||
echo "$(call gamma-path,altsrc,cpu/$(SRCARCH)/vm) \\"; \
|
echo "$(call gamma-path,altsrc,cpu/$(SRCARCH)/vm) \\"; \
|
||||||
echo "$(call gamma-path,commonsrc,cpu/$(SRCARCH)/vm) \\"; \
|
echo "$(call gamma-path,commonsrc,cpu/$(SRCARCH)/vm) \\"; \
|
||||||
echo "$(call gamma-path,altsrc,os_cpu/$(OS_FAMILY)_$(SRCARCH)/vm) \\"; \
|
echo "$(call gamma-path,altsrc,os_cpu/$(OS_FAMILY)_$(SRCARCH)/vm) \\"; \
|
||||||
@@ -242,6 +245,8 @@ flags.make: $(BUILDTREE_MAKE) ../shared_dirs.lst
|
|||||||
echo "HOTSPOT_EXTRA_SYSDEFS\$$(HOTSPOT_EXTRA_SYSDEFS) = $(HOTSPOT_EXTRA_SYSDEFS)" && \
|
echo "HOTSPOT_EXTRA_SYSDEFS\$$(HOTSPOT_EXTRA_SYSDEFS) = $(HOTSPOT_EXTRA_SYSDEFS)" && \
|
||||||
echo "SYSDEFS += \$$(HOTSPOT_EXTRA_SYSDEFS)"; \
|
echo "SYSDEFS += \$$(HOTSPOT_EXTRA_SYSDEFS)"; \
|
||||||
echo; \
|
echo; \
|
||||||
|
[ -n "$(SPEC)" ] && \
|
||||||
|
echo "include $(SPEC)"; \
|
||||||
echo "include \$$(GAMMADIR)/make/$(OS_FAMILY)/makefiles/$(VARIANT).make"; \
|
echo "include \$$(GAMMADIR)/make/$(OS_FAMILY)/makefiles/$(VARIANT).make"; \
|
||||||
echo "include \$$(GAMMADIR)/make/$(OS_FAMILY)/makefiles/$(COMPILER).make"; \
|
echo "include \$$(GAMMADIR)/make/$(OS_FAMILY)/makefiles/$(COMPILER).make"; \
|
||||||
) > $@
|
) > $@
|
||||||
@@ -324,11 +329,10 @@ env.sh: $(BUILDTREE_MAKE)
|
|||||||
$(BUILDTREE_COMMENT); \
|
$(BUILDTREE_COMMENT); \
|
||||||
[ -n "$$JAVA_HOME" ] && { echo ": \$${JAVA_HOME:=$${JAVA_HOME}}"; }; \
|
[ -n "$$JAVA_HOME" ] && { echo ": \$${JAVA_HOME:=$${JAVA_HOME}}"; }; \
|
||||||
{ \
|
{ \
|
||||||
echo "LD_LIBRARY_PATH=.:$${LD_LIBRARY_PATH:+$$LD_LIBRARY_PATH:}\$${JAVA_HOME}/jre/lib/${LIBARCH}/native_threads:\$${JAVA_HOME}/jre/lib/${LIBARCH}:${GCC_LIB}"; \
|
|
||||||
echo "CLASSPATH=$${CLASSPATH:+$$CLASSPATH:}.:\$${JAVA_HOME}/jre/lib/rt.jar:\$${JAVA_HOME}/jre/lib/i18n.jar"; \
|
echo "CLASSPATH=$${CLASSPATH:+$$CLASSPATH:}.:\$${JAVA_HOME}/jre/lib/rt.jar:\$${JAVA_HOME}/jre/lib/i18n.jar"; \
|
||||||
} | sed s:$${JAVA_HOME:--------}:\$${JAVA_HOME}:g; \
|
} | sed s:$${JAVA_HOME:--------}:\$${JAVA_HOME}:g; \
|
||||||
echo "HOTSPOT_BUILD_USER=\"$${LOGNAME:-$$USER} in `basename $(GAMMADIR)`\""; \
|
echo "HOTSPOT_BUILD_USER=\"$${LOGNAME:-$$USER} in `basename $(GAMMADIR)`\""; \
|
||||||
echo "export JAVA_HOME LD_LIBRARY_PATH CLASSPATH HOTSPOT_BUILD_USER"; \
|
echo "export JAVA_HOME CLASSPATH HOTSPOT_BUILD_USER"; \
|
||||||
) > $@
|
) > $@
|
||||||
|
|
||||||
env.csh: env.sh
|
env.csh: env.sh
|
||||||
@@ -382,7 +386,7 @@ JAVA_FLAG/32 = -d32
|
|||||||
JAVA_FLAG/64 = -d64
|
JAVA_FLAG/64 = -d64
|
||||||
|
|
||||||
WRONG_DATA_MODE_MSG = \
|
WRONG_DATA_MODE_MSG = \
|
||||||
echo "JAVA_HOME must point to $(DATA_MODE)bit JDK."
|
echo "JAVA_HOME must point to a $(DATA_MODE)-bit OpenJDK."
|
||||||
|
|
||||||
CROSS_COMPILING_MSG = \
|
CROSS_COMPILING_MSG = \
|
||||||
echo "Cross compiling for ARCH $(CROSS_COMPILE_ARCH), skipping gamma run."
|
echo "Cross compiling for ARCH $(CROSS_COMPILE_ARCH), skipping gamma run."
|
||||||
@@ -390,19 +394,78 @@ CROSS_COMPILING_MSG = \
|
|||||||
test_gamma: $(BUILDTREE_MAKE) $(GAMMADIR)/make/test/Queens.java
|
test_gamma: $(BUILDTREE_MAKE) $(GAMMADIR)/make/test/Queens.java
|
||||||
@echo Creating $@ ...
|
@echo Creating $@ ...
|
||||||
$(QUIETLY) ( \
|
$(QUIETLY) ( \
|
||||||
echo '#!/bin/sh'; \
|
echo "#!/bin/sh"; \
|
||||||
|
echo ""; \
|
||||||
$(BUILDTREE_COMMENT); \
|
$(BUILDTREE_COMMENT); \
|
||||||
echo '. ./env.sh'; \
|
echo ""; \
|
||||||
echo "if [ \"$(CROSS_COMPILE_ARCH)\" != \"\" ]; then { $(CROSS_COMPILING_MSG); exit 0; }; fi"; \
|
echo "# Include environment settings for gamma run"; \
|
||||||
echo "if [ -z \$$JAVA_HOME ]; then { $(NO_JAVA_HOME_MSG); exit 0; }; fi"; \
|
echo ""; \
|
||||||
echo "if ! \$${JAVA_HOME}/bin/java $(JAVA_FLAG) -fullversion 2>&1 > /dev/null"; \
|
echo ". ./env.sh"; \
|
||||||
echo "then"; \
|
echo ""; \
|
||||||
echo " $(WRONG_DATA_MODE_MSG); exit 0;"; \
|
echo "# Do not run gamma test for cross compiles"; \
|
||||||
|
echo ""; \
|
||||||
|
echo "if [ -n \"$(CROSS_COMPILE_ARCH)\" ]; then "; \
|
||||||
|
echo " $(CROSS_COMPILING_MSG)"; \
|
||||||
|
echo " exit 0"; \
|
||||||
echo "fi"; \
|
echo "fi"; \
|
||||||
|
echo ""; \
|
||||||
|
echo "# Make sure JAVA_HOME is set as it is required for gamma"; \
|
||||||
|
echo ""; \
|
||||||
|
echo "if [ -z \"\$${JAVA_HOME}\" ]; then "; \
|
||||||
|
echo " $(NO_JAVA_HOME_MSG)"; \
|
||||||
|
echo " exit 0"; \
|
||||||
|
echo "fi"; \
|
||||||
|
echo ""; \
|
||||||
|
echo "# Check JAVA_HOME version to be used for the test"; \
|
||||||
|
echo ""; \
|
||||||
|
echo "\$${JAVA_HOME}/bin/java $(JAVA_FLAG) -fullversion > /dev/null 2>&1"; \
|
||||||
|
echo "if [ \$$? -ne 0 ]; then "; \
|
||||||
|
echo " $(WRONG_DATA_MODE_MSG)"; \
|
||||||
|
echo " exit 0"; \
|
||||||
|
echo "fi"; \
|
||||||
|
echo ""; \
|
||||||
|
echo "# Use gamma_g if it exists"; \
|
||||||
|
echo ""; \
|
||||||
|
echo "GAMMA_PROG=gamma"; \
|
||||||
|
echo "if [ -f gamma_g ]; then "; \
|
||||||
|
echo " GAMMA_PROG=gamma_g"; \
|
||||||
|
echo "fi"; \
|
||||||
|
echo ""; \
|
||||||
|
echo "if [ \"$(OS_VENDOR)\" = \"Darwin\" ]; then "; \
|
||||||
|
echo " # Ensure architecture for gamma and JAVA_HOME is the same."; \
|
||||||
|
echo " # NOTE: gamma assumes the OpenJDK directory layout."; \
|
||||||
|
echo ""; \
|
||||||
|
echo " GAMMA_ARCH=\"\`file \$${GAMMA_PROG} | awk '{print \$$NF}'\`\""; \
|
||||||
|
echo " JVM_LIB=\"\$${JAVA_HOME}/jre/lib/libjava.$(LIBRARY_SUFFIX)\""; \
|
||||||
|
echo " if [ ! -f \$${JVM_LIB} ]; then"; \
|
||||||
|
echo " JVM_LIB=\"\$${JAVA_HOME}/jre/lib/$${LIBARCH}/libjava.$(LIBRARY_SUFFIX)\""; \
|
||||||
|
echo " fi"; \
|
||||||
|
echo " if [ ! -f \$${JVM_LIB} ] || [ -z \"\`file \$${JVM_LIB} | grep \$${GAMMA_ARCH}\`\" ]; then "; \
|
||||||
|
echo " $(WRONG_DATA_MODE_MSG)"; \
|
||||||
|
echo " exit 0"; \
|
||||||
|
echo " fi"; \
|
||||||
|
echo "fi"; \
|
||||||
|
echo ""; \
|
||||||
|
echo "# Compile Queens program for test"; \
|
||||||
|
echo ""; \
|
||||||
echo "rm -f Queens.class"; \
|
echo "rm -f Queens.class"; \
|
||||||
echo "\$${JAVA_HOME}/bin/javac -d . $(GAMMADIR)/make/test/Queens.java"; \
|
echo "\$${JAVA_HOME}/bin/javac -d . $(GAMMADIR)/make/test/Queens.java"; \
|
||||||
echo '[ -f gamma_g ] && { gamma=gamma_g; }'; \
|
echo ""; \
|
||||||
echo './$${gamma:-gamma} $(TESTFLAGS) Queens < /dev/null'; \
|
echo "# Set library path solely for gamma launcher test run"; \
|
||||||
|
echo ""; \
|
||||||
|
echo "LD_LIBRARY_PATH=.:$${LD_LIBRARY_PATH:+$$LD_LIBRARY_PATH:}\$${JAVA_HOME}/jre/lib/${LIBARCH}/native_threads:\$${JAVA_HOME}/jre/lib/${LIBARCH}:${GCC_LIB}"; \
|
||||||
|
echo "export LD_LIBRARY_PATH"; \
|
||||||
|
echo "unset LD_LIBRARY_PATH_32"; \
|
||||||
|
echo "unset LD_LIBRARY_PATH_64"; \
|
||||||
|
echo ""; \
|
||||||
|
echo "if [ \"$(OS_VENDOR)\" = \"Darwin\" ]; then "; \
|
||||||
|
echo " DYLD_LIBRARY_PATH=.:$${DYLD_LIBRARY_PATH:+$$DYLD_LIBRARY_PATH:}\$${JAVA_HOME}/jre/lib/native_threads:\$${JAVA_HOME}/jre/lib:$${DYLD_LIBRARY_PATH:+$$DYLD_LIBRARY_PATH:}\$${JAVA_HOME}/jre/lib/${LIBARCH}/native_threads:\$${JAVA_HOME}/jre/lib/${LIBARCH}:${GCC_LIB}"; \
|
||||||
|
echo " export DYLD_LIBRARY_PATH"; \
|
||||||
|
echo "fi"; \
|
||||||
|
echo ""; \
|
||||||
|
echo "# Use the gamma launcher and JAVA_HOME to run the test"; \
|
||||||
|
echo ""; \
|
||||||
|
echo "./\$${GAMMA_PROG} $(TESTFLAGS) Queens < /dev/null"; \
|
||||||
) > $@
|
) > $@
|
||||||
$(QUIETLY) chmod +x $@
|
$(QUIETLY) chmod +x $@
|
||||||
|
|
||||||
|
|||||||
@@ -23,23 +23,28 @@
|
|||||||
#
|
#
|
||||||
|
|
||||||
#------------------------------------------------------------------------
|
#------------------------------------------------------------------------
|
||||||
# CC, CPP & AS
|
# CC, CXX & AS
|
||||||
|
|
||||||
# When cross-compiling the ALT_COMPILER_PATH points
|
# If a SPEC is not set already, then use these defaults.
|
||||||
# to the cross-compilation toolset
|
ifeq ($(SPEC),)
|
||||||
ifdef CROSS_COMPILE_ARCH
|
# When cross-compiling the ALT_COMPILER_PATH points
|
||||||
CPP = $(ALT_COMPILER_PATH)/g++
|
# to the cross-compilation toolset
|
||||||
CC = $(ALT_COMPILER_PATH)/gcc
|
ifdef CROSS_COMPILE_ARCH
|
||||||
HOSTCPP = g++
|
CXX = $(ALT_COMPILER_PATH)/g++
|
||||||
HOSTCC = gcc
|
CC = $(ALT_COMPILER_PATH)/gcc
|
||||||
else
|
HOSTCXX = g++
|
||||||
CPP = g++
|
HOSTCC = gcc
|
||||||
CC = gcc
|
STRIP = $(ALT_COMPILER_PATH)/strip
|
||||||
HOSTCPP = $(CPP)
|
else
|
||||||
HOSTCC = $(CC)
|
CXX = g++
|
||||||
|
CC = gcc
|
||||||
|
HOSTCXX = $(CXX)
|
||||||
|
HOSTCC = $(CC)
|
||||||
|
STRIP = strip
|
||||||
|
endif
|
||||||
|
AS = $(CC) -c
|
||||||
endif
|
endif
|
||||||
|
|
||||||
AS = $(CC) -c
|
|
||||||
|
|
||||||
# -dumpversion in gcc-2.91 shows "egcs-2.91.66". In later version, it only
|
# -dumpversion in gcc-2.91 shows "egcs-2.91.66". In later version, it only
|
||||||
# prints the numbers (e.g. "2.95", "3.2.1")
|
# prints the numbers (e.g. "2.95", "3.2.1")
|
||||||
@@ -50,9 +55,8 @@ CC_VER_MINOR := $(shell $(CC) -dumpversion | sed 's/egcs-//' | cut -d'.' -f2)
|
|||||||
ifneq "$(shell expr \( $(CC_VER_MAJOR) \> 3 \) \| \( \( $(CC_VER_MAJOR) = 3 \) \& \( $(CC_VER_MINOR) \>= 4 \) \))" "0"
|
ifneq "$(shell expr \( $(CC_VER_MAJOR) \> 3 \) \| \( \( $(CC_VER_MAJOR) = 3 \) \& \( $(CC_VER_MINOR) \>= 4 \) \))" "0"
|
||||||
# Allow the user to turn off precompiled headers from the command line.
|
# Allow the user to turn off precompiled headers from the command line.
|
||||||
ifneq ($(USE_PRECOMPILED_HEADER),0)
|
ifneq ($(USE_PRECOMPILED_HEADER),0)
|
||||||
USE_PRECOMPILED_HEADER=1
|
|
||||||
PRECOMPILED_HEADER_DIR=.
|
PRECOMPILED_HEADER_DIR=.
|
||||||
PRECOMPILED_HEADER_SRC=$(GAMMADIR)/src/share/vm/precompiled.hpp
|
PRECOMPILED_HEADER_SRC=$(GAMMADIR)/src/share/vm/precompiled/precompiled.hpp
|
||||||
PRECOMPILED_HEADER=$(PRECOMPILED_HEADER_DIR)/precompiled.hpp.gch
|
PRECOMPILED_HEADER=$(PRECOMPILED_HEADER_DIR)/precompiled.hpp.gch
|
||||||
endif
|
endif
|
||||||
endif
|
endif
|
||||||
@@ -165,7 +169,7 @@ DEPFLAGS = -MMD -MP -MF $(DEP_DIR)/$(@:%=%.d)
|
|||||||
endif
|
endif
|
||||||
|
|
||||||
# -DDONT_USE_PRECOMPILED_HEADER will exclude all includes in precompiled.hpp.
|
# -DDONT_USE_PRECOMPILED_HEADER will exclude all includes in precompiled.hpp.
|
||||||
ifneq ($(USE_PRECOMPILED_HEADER),1)
|
ifeq ($(USE_PRECOMPILED_HEADER),0)
|
||||||
CFLAGS += -DDONT_USE_PRECOMPILED_HEADER
|
CFLAGS += -DDONT_USE_PRECOMPILED_HEADER
|
||||||
endif
|
endif
|
||||||
|
|
||||||
@@ -262,9 +266,3 @@ endif
|
|||||||
ifdef MINIMIZE_RAM_USAGE
|
ifdef MINIMIZE_RAM_USAGE
|
||||||
CFLAGS += -DMINIMIZE_RAM_USAGE
|
CFLAGS += -DMINIMIZE_RAM_USAGE
|
||||||
endif
|
endif
|
||||||
|
|
||||||
ifdef CROSS_COMPILE_ARCH
|
|
||||||
STRIP = $(ALT_COMPILER_PATH)/strip
|
|
||||||
else
|
|
||||||
STRIP = strip
|
|
||||||
endif
|
|
||||||
|
|||||||
@@ -54,10 +54,10 @@ else
|
|||||||
LIBS_LAUNCHER += -l$(JVM) $(LIBS)
|
LIBS_LAUNCHER += -l$(JVM) $(LIBS)
|
||||||
endif
|
endif
|
||||||
|
|
||||||
LINK_LAUNCHER = $(LINK.c)
|
LINK_LAUNCHER = $(LINK.CC)
|
||||||
|
|
||||||
LINK_LAUNCHER/PRE_HOOK = $(LINK_LIB.CC/PRE_HOOK)
|
LINK_LAUNCHER/PRE_HOOK = $(LINK_LIB.CXX/PRE_HOOK)
|
||||||
LINK_LAUNCHER/POST_HOOK = $(LINK_LIB.CC/POST_HOOK)
|
LINK_LAUNCHER/POST_HOOK = $(LINK_LIB.CXX/POST_HOOK)
|
||||||
|
|
||||||
LAUNCHER_OUT = launcher
|
LAUNCHER_OUT = launcher
|
||||||
|
|
||||||
@@ -73,11 +73,11 @@ DEPFILES := $(patsubst %.o,%.d,$(OBJS))
|
|||||||
|
|
||||||
$(LAUNCHER_OUT)/%.o: $(LAUNCHERDIR_SHARE)/%.c
|
$(LAUNCHER_OUT)/%.o: $(LAUNCHERDIR_SHARE)/%.c
|
||||||
$(QUIETLY) [ -d $(LAUNCHER_OUT) ] || { mkdir -p $(LAUNCHER_OUT); }
|
$(QUIETLY) [ -d $(LAUNCHER_OUT) ] || { mkdir -p $(LAUNCHER_OUT); }
|
||||||
$(QUIETLY) $(CC) -g -o $@ -c $< -MMD $(LAUNCHERFLAGS) $(CPPFLAGS)
|
$(QUIETLY) $(CC) -g -o $@ -c $< -MMD $(LAUNCHERFLAGS) $(CXXFLAGS)
|
||||||
|
|
||||||
$(LAUNCHER_OUT)/%.o: $(LAUNCHERDIR)/%.c
|
$(LAUNCHER_OUT)/%.o: $(LAUNCHERDIR)/%.c
|
||||||
$(QUIETLY) [ -d $(LAUNCHER_OUT) ] || { mkdir -p $(LAUNCHER_OUT); }
|
$(QUIETLY) [ -d $(LAUNCHER_OUT) ] || { mkdir -p $(LAUNCHER_OUT); }
|
||||||
$(QUIETLY) $(CC) -g -o $@ -c $< -MMD $(LAUNCHERFLAGS) $(CPPFLAGS)
|
$(QUIETLY) $(CC) -g -o $@ -c $< -MMD $(LAUNCHERFLAGS) $(CXXFLAGS)
|
||||||
|
|
||||||
$(LAUNCHER): $(OBJS) $(LIBJVM) $(LAUNCHER_MAPFILE)
|
$(LAUNCHER): $(OBJS) $(LIBJVM) $(LAUNCHER_MAPFILE)
|
||||||
$(QUIETLY) echo Linking launcher...
|
$(QUIETLY) echo Linking launcher...
|
||||||
|
|||||||
@@ -1,7 +1,3 @@
|
|||||||
#
|
|
||||||
# @(#)mapfile-vers-debug 1.18 07/10/25 16:47:35
|
|
||||||
#
|
|
||||||
|
|
||||||
#
|
#
|
||||||
# Copyright (c) 2002, 2011, Oracle and/or its affiliates. All rights reserved.
|
# Copyright (c) 2002, 2011, Oracle and/or its affiliates. All rights reserved.
|
||||||
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||||
@@ -221,6 +217,7 @@ SUNWprivate_1.1 {
|
|||||||
JVM_SetArrayElement;
|
JVM_SetArrayElement;
|
||||||
JVM_SetClassSigners;
|
JVM_SetClassSigners;
|
||||||
JVM_SetLength;
|
JVM_SetLength;
|
||||||
|
JVM_SetNativeThreadName;
|
||||||
JVM_SetPrimitiveArrayElement;
|
JVM_SetPrimitiveArrayElement;
|
||||||
JVM_SetProtectionDomain;
|
JVM_SetProtectionDomain;
|
||||||
JVM_SetSockOpt;
|
JVM_SetSockOpt;
|
||||||
|
|||||||
@@ -1,7 +1,3 @@
|
|||||||
#
|
|
||||||
# @(#)mapfile-vers-product 1.19 08/02/12 10:56:37
|
|
||||||
#
|
|
||||||
|
|
||||||
#
|
#
|
||||||
# Copyright (c) 2002, 2011, Oracle and/or its affiliates. All rights reserved.
|
# Copyright (c) 2002, 2011, Oracle and/or its affiliates. All rights reserved.
|
||||||
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||||
@@ -221,6 +217,7 @@ SUNWprivate_1.1 {
|
|||||||
JVM_SetArrayElement;
|
JVM_SetArrayElement;
|
||||||
JVM_SetClassSigners;
|
JVM_SetClassSigners;
|
||||||
JVM_SetLength;
|
JVM_SetLength;
|
||||||
|
JVM_SetNativeThreadName;
|
||||||
JVM_SetPrimitiveArrayElement;
|
JVM_SetPrimitiveArrayElement;
|
||||||
JVM_SetProtectionDomain;
|
JVM_SetProtectionDomain;
|
||||||
JVM_SetSockOpt;
|
JVM_SetSockOpt;
|
||||||
|
|||||||
@@ -28,3 +28,6 @@ OPT_CFLAGS/sharedRuntimeTrig.o = $(OPT_CFLAGS/NOOPT)
|
|||||||
# Must also specify if CPU is big endian
|
# Must also specify if CPU is big endian
|
||||||
CFLAGS += -DVM_BIG_ENDIAN
|
CFLAGS += -DVM_BIG_ENDIAN
|
||||||
|
|
||||||
|
ifdef E500V2
|
||||||
|
ASFLAGS += -Wa,-mspe -Wa,--defsym -Wa,E500V2=1
|
||||||
|
endif
|
||||||
|
|||||||
@@ -52,4 +52,4 @@ STRIP_AOUT = $(STRIP) -x $@ || exit 1;
|
|||||||
|
|
||||||
# If we can create .debuginfo files, then the VM is stripped in vm.make
|
# If we can create .debuginfo files, then the VM is stripped in vm.make
|
||||||
# and this macro is not used.
|
# and this macro is not used.
|
||||||
# LINK_LIB.CC/POST_HOOK += $(STRIP_$(LINK_INTO))
|
# LINK_LIB.CXX/POST_HOOK += $(STRIP_$(LINK_INTO))
|
||||||
|
|||||||
@@ -27,52 +27,39 @@
|
|||||||
# Tell make that .cpp is important
|
# Tell make that .cpp is important
|
||||||
.SUFFIXES: .cpp $(SUFFIXES)
|
.SUFFIXES: .cpp $(SUFFIXES)
|
||||||
|
|
||||||
# For now. Other makefiles use CPP as the c++ compiler, but that should really
|
|
||||||
# name the preprocessor.
|
|
||||||
ifeq ($(CCC),)
|
|
||||||
CCC = $(CPP)
|
|
||||||
endif
|
|
||||||
|
|
||||||
DEMANGLER = c++filt
|
DEMANGLER = c++filt
|
||||||
DEMANGLE = $(DEMANGLER) < $@ > .$@ && mv -f .$@ $@
|
DEMANGLE = $(DEMANGLER) < $@ > .$@ && mv -f .$@ $@
|
||||||
|
|
||||||
# $(CC) is the c compiler (cc/gcc), $(CCC) is the c++ compiler (CC/g++).
|
# $(CC) is the c compiler (cc/gcc), $(CXX) is the c++ compiler (CC/g++).
|
||||||
C_COMPILE = $(CC) $(CPPFLAGS) $(CFLAGS)
|
CC_COMPILE = $(CC) $(CXXFLAGS) $(CFLAGS)
|
||||||
CC_COMPILE = $(CCC) $(CPPFLAGS) $(CFLAGS)
|
CXX_COMPILE = $(CXX) $(CXXFLAGS) $(CFLAGS)
|
||||||
|
|
||||||
AS.S = $(AS) $(ASFLAGS)
|
AS.S = $(AS) $(ASFLAGS)
|
||||||
|
|
||||||
COMPILE.c = $(C_COMPILE) -c
|
COMPILE.CC = $(CC_COMPILE) -c
|
||||||
GENASM.c = $(C_COMPILE) -S
|
GENASM.CC = $(CC_COMPILE) -S
|
||||||
LINK.c = $(CC) $(LFLAGS) $(AOUT_FLAGS) $(PROF_AOUT_FLAGS)
|
LINK.CC = $(CC) $(LFLAGS) $(AOUT_FLAGS) $(PROF_AOUT_FLAGS)
|
||||||
LINK_LIB.c = $(CC) $(LFLAGS) $(SHARED_FLAG)
|
LINK_LIB.CC = $(CC) $(LFLAGS) $(SHARED_FLAG)
|
||||||
PREPROCESS.c = $(C_COMPILE) -E
|
PREPROCESS.CC = $(CC_COMPILE) -E
|
||||||
|
|
||||||
COMPILE.CC = $(CC_COMPILE) -c
|
COMPILE.CXX = $(CXX_COMPILE) -c
|
||||||
GENASM.CC = $(CC_COMPILE) -S
|
GENASM.CXX = $(CXX_COMPILE) -S
|
||||||
LINK.CC = $(CCC) $(LFLAGS) $(AOUT_FLAGS) $(PROF_AOUT_FLAGS)
|
LINK.CXX = $(CXX) $(LFLAGS) $(AOUT_FLAGS) $(PROF_AOUT_FLAGS)
|
||||||
LINK_NOPROF.CC = $(CCC) $(LFLAGS) $(AOUT_FLAGS)
|
LINK_NOPROF.CXX = $(CXX) $(LFLAGS) $(AOUT_FLAGS)
|
||||||
LINK_LIB.CC = $(CCC) $(LFLAGS) $(SHARED_FLAG)
|
LINK_LIB.CXX = $(CXX) $(LFLAGS) $(SHARED_FLAG)
|
||||||
PREPROCESS.CC = $(CC_COMPILE) -E
|
PREPROCESS.CXX = $(CXX_COMPILE) -E
|
||||||
|
|
||||||
# cross compiling the jvm with c2 requires host compilers to build
|
# cross compiling the jvm with c2 requires host compilers to build
|
||||||
# adlc tool
|
# adlc tool
|
||||||
|
|
||||||
HOST.CC_COMPILE = $(HOSTCPP) $(CPPFLAGS) $(CFLAGS)
|
HOST.CXX_COMPILE = $(HOSTCXX) $(CXXFLAGS) $(CFLAGS)
|
||||||
HOST.COMPILE.CC = $(HOST.CC_COMPILE) -c
|
HOST.COMPILE.CXX = $(HOST.CXX_COMPILE) -c
|
||||||
HOST.LINK_NOPROF.CC = $(HOSTCPP) $(LFLAGS) $(AOUT_FLAGS)
|
HOST.LINK_NOPROF.CXX = $(HOSTCXX) $(LFLAGS) $(AOUT_FLAGS)
|
||||||
|
|
||||||
|
|
||||||
# Effect of REMOVE_TARGET is to delete out-of-date files during "gnumake -k".
|
# Effect of REMOVE_TARGET is to delete out-of-date files during "gnumake -k".
|
||||||
REMOVE_TARGET = rm -f $@
|
REMOVE_TARGET = rm -f $@
|
||||||
|
|
||||||
# Synonyms.
|
|
||||||
COMPILE.cpp = $(COMPILE.CC)
|
|
||||||
GENASM.cpp = $(GENASM.CC)
|
|
||||||
LINK.cpp = $(LINK.CC)
|
|
||||||
LINK_LIB.cpp = $(LINK_LIB.CC)
|
|
||||||
PREPROCESS.cpp = $(PREPROCESS.CC)
|
|
||||||
|
|
||||||
# Note use of ALT_BOOTDIR to explicitly specify location of java and
|
# Note use of ALT_BOOTDIR to explicitly specify location of java and
|
||||||
# javac; this is the same environment variable used in the J2SE build
|
# javac; this is the same environment variable used in the J2SE build
|
||||||
# process for overriding the default spec, which is BOOTDIR.
|
# process for overriding the default spec, which is BOOTDIR.
|
||||||
@@ -161,14 +148,14 @@ ifdef LP64
|
|||||||
%.o: %.cpp
|
%.o: %.cpp
|
||||||
@echo Compiling $<
|
@echo Compiling $<
|
||||||
$(QUIETLY) $(REMOVE_TARGET)
|
$(QUIETLY) $(REMOVE_TARGET)
|
||||||
$(QUIETLY) $(COMPILE.CC) $(DEPFLAGS) -o $@ $< $(COMPILE_DONE)
|
$(QUIETLY) $(COMPILE.CXX) $(DEPFLAGS) -o $@ $< $(COMPILE_DONE)
|
||||||
else
|
else
|
||||||
%.o: %.cpp
|
%.o: %.cpp
|
||||||
@echo Compiling $<
|
@echo Compiling $<
|
||||||
$(QUIETLY) $(REMOVE_TARGET)
|
$(QUIETLY) $(REMOVE_TARGET)
|
||||||
$(QUIETLY) $(if $(findstring $@, $(NONPIC_OBJ_FILES)), \
|
$(QUIETLY) $(if $(findstring $@, $(NONPIC_OBJ_FILES)), \
|
||||||
$(subst $(VM_PICFLAG), ,$(COMPILE.CC)) $(DEPFLAGS) -o $@ $< $(COMPILE_DONE), \
|
$(subst $(VM_PICFLAG), ,$(COMPILE.CXX)) $(DEPFLAGS) -o $@ $< $(COMPILE_DONE), \
|
||||||
$(COMPILE.CC) $(DEPFLAGS) -o $@ $< $(COMPILE_DONE))
|
$(COMPILE.CXX) $(DEPFLAGS) -o $@ $< $(COMPILE_DONE))
|
||||||
endif
|
endif
|
||||||
|
|
||||||
%.o: %.s
|
%.o: %.s
|
||||||
@@ -178,13 +165,13 @@ endif
|
|||||||
|
|
||||||
%.s: %.cpp
|
%.s: %.cpp
|
||||||
@echo Generating assembly for $<
|
@echo Generating assembly for $<
|
||||||
$(QUIETLY) $(GENASM.CC) -o $@ $<
|
$(QUIETLY) $(GENASM.CXX) -o $@ $<
|
||||||
$(QUIETLY) $(DEMANGLE) $(COMPILE_DONE)
|
$(QUIETLY) $(DEMANGLE) $(COMPILE_DONE)
|
||||||
|
|
||||||
# Intermediate files (for debugging macros)
|
# Intermediate files (for debugging macros)
|
||||||
%.i: %.cpp
|
%.i: %.cpp
|
||||||
@echo Preprocessing $< to $@
|
@echo Preprocessing $< to $@
|
||||||
$(QUIETLY) $(PREPROCESS.CC) $< > $@ $(COMPILE_DONE)
|
$(QUIETLY) $(PREPROCESS.CXX) $< > $@ $(COMPILE_DONE)
|
||||||
|
|
||||||
# Override gnumake built-in rules which do sccs get operations badly.
|
# Override gnumake built-in rules which do sccs get operations badly.
|
||||||
# (They put the checked out code in the current directory, not in the
|
# (They put the checked out code in the current directory, not in the
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
#
|
#
|
||||||
# Copyright (c) 2005, 2011, Oracle and/or its affiliates. All rights reserved.
|
# Copyright (c) 2005, 2012, Oracle and/or its affiliates. All rights reserved.
|
||||||
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||||
#
|
#
|
||||||
# This code is free software; you can redistribute it and/or modify it
|
# This code is free software; you can redistribute it and/or modify it
|
||||||
@@ -75,6 +75,7 @@ $(LIBSAPROC): $(SASRCFILES) $(SAMAPFILE)
|
|||||||
fi
|
fi
|
||||||
@echo Making SA debugger back-end...
|
@echo Making SA debugger back-end...
|
||||||
$(QUIETLY) $(CC) -D$(BUILDARCH) -D_GNU_SOURCE \
|
$(QUIETLY) $(CC) -D$(BUILDARCH) -D_GNU_SOURCE \
|
||||||
|
-D_FILE_OFFSET_BITS=64 \
|
||||||
$(SYMFLAG) $(ARCHFLAG) $(SHARED_FLAG) $(PICFLAG) \
|
$(SYMFLAG) $(ARCHFLAG) $(SHARED_FLAG) $(PICFLAG) \
|
||||||
-I$(SASRCDIR) \
|
-I$(SASRCDIR) \
|
||||||
-I$(GENERATED) \
|
-I$(GENERATED) \
|
||||||
|
|||||||
@@ -23,14 +23,17 @@
|
|||||||
#
|
#
|
||||||
|
|
||||||
#------------------------------------------------------------------------
|
#------------------------------------------------------------------------
|
||||||
# CC, CPP & AS
|
# CC, CXX & AS
|
||||||
|
|
||||||
CPP = CC
|
# If a SPEC is not set already, then use these defaults.
|
||||||
CC = cc
|
ifeq ($(SPEC),)
|
||||||
AS = $(CC) -c
|
CXX = CC
|
||||||
|
CC = cc
|
||||||
|
AS = $(CC) -c
|
||||||
|
|
||||||
HOSTCPP = $(CPP)
|
HOSTCXX = $(CXX)
|
||||||
HOSTCC = $(CC)
|
HOSTCC = $(CC)
|
||||||
|
endif
|
||||||
|
|
||||||
ARCHFLAG = $(ARCHFLAG/$(BUILDARCH))
|
ARCHFLAG = $(ARCHFLAG/$(BUILDARCH))
|
||||||
ARCHFLAG/i486 = -m32
|
ARCHFLAG/i486 = -m32
|
||||||
|
|||||||
@@ -47,12 +47,10 @@ VM = $(GAMMADIR)/src/share/vm
|
|||||||
Plat_File = $(Platform_file)
|
Plat_File = $(Platform_file)
|
||||||
CDG = cd $(GENERATED);
|
CDG = cd $(GENERATED);
|
||||||
|
|
||||||
ifdef USE_PRECOMPILED_HEADER
|
ifneq ($(USE_PRECOMPILED_HEADER),0)
|
||||||
PrecompiledOption = -DUSE_PRECOMPILED_HEADER
|
UpdatePCH = $(MAKE) -f vm.make $(PRECOMPILED_HEADER) $(MFLAGS)
|
||||||
UpdatePCH = $(MAKE) -f vm.make $(PRECOMPILED_HEADER) $(MFLAGS)
|
|
||||||
else
|
else
|
||||||
UpdatePCH = \# precompiled header is not used
|
UpdatePCH = \# precompiled header is not used
|
||||||
PrecompiledOption =
|
|
||||||
endif
|
endif
|
||||||
|
|
||||||
Cached_plat = $(GENERATED)/platform.current
|
Cached_plat = $(GENERATED)/platform.current
|
||||||
@@ -117,8 +115,8 @@ the_vm: vm_build_preliminaries $(adjust-mflags)
|
|||||||
@$(UpdatePCH)
|
@$(UpdatePCH)
|
||||||
@$(MAKE) -f vm.make $(MFLAGS-adjusted)
|
@$(MAKE) -f vm.make $(MFLAGS-adjusted)
|
||||||
|
|
||||||
install: the_vm
|
install gamma: the_vm
|
||||||
@$(MAKE) -f vm.make install
|
@$(MAKE) -f vm.make $@
|
||||||
|
|
||||||
# next rules support "make foo.[ois]"
|
# next rules support "make foo.[ois]"
|
||||||
|
|
||||||
|
|||||||
@@ -88,16 +88,24 @@ BUILD_TARGET = -DHOTSPOT_BUILD_TARGET="\"$(TARGET)\""
|
|||||||
BUILD_USER = -DHOTSPOT_BUILD_USER="\"$(HOTSPOT_BUILD_USER)\""
|
BUILD_USER = -DHOTSPOT_BUILD_USER="\"$(HOTSPOT_BUILD_USER)\""
|
||||||
VM_DISTRO = -DHOTSPOT_VM_DISTRO="\"$(HOTSPOT_VM_DISTRO)\""
|
VM_DISTRO = -DHOTSPOT_VM_DISTRO="\"$(HOTSPOT_VM_DISTRO)\""
|
||||||
|
|
||||||
CPPFLAGS = \
|
CXXFLAGS = \
|
||||||
${SYSDEFS} \
|
${SYSDEFS} \
|
||||||
${INCLUDES} \
|
${INCLUDES} \
|
||||||
${BUILD_VERSION} \
|
${BUILD_VERSION} \
|
||||||
${BUILD_TARGET} \
|
${BUILD_TARGET} \
|
||||||
${BUILD_USER} \
|
${BUILD_USER} \
|
||||||
${HS_LIB_ARCH} \
|
${HS_LIB_ARCH} \
|
||||||
${JRE_VERSION} \
|
|
||||||
${VM_DISTRO}
|
${VM_DISTRO}
|
||||||
|
|
||||||
|
# This is VERY important! The version define must only be supplied to vm_version.o
|
||||||
|
# If not, ccache will not re-use the cache at all, since the version string might contain
|
||||||
|
# a time and date.
|
||||||
|
vm_version.o: CXXFLAGS += ${JRE_VERSION}
|
||||||
|
|
||||||
|
ifndef JAVASE_EMBEDDED
|
||||||
|
CFLAGS += -DINCLUDE_TRACE
|
||||||
|
endif
|
||||||
|
|
||||||
# CFLAGS_WARN holds compiler options to suppress/enable warnings.
|
# CFLAGS_WARN holds compiler options to suppress/enable warnings.
|
||||||
CFLAGS += $(CFLAGS_WARN/BYFILE)
|
CFLAGS += $(CFLAGS_WARN/BYFILE)
|
||||||
|
|
||||||
@@ -143,6 +151,12 @@ SOURCE_PATHS+=$(HS_COMMON_SRC)/os/posix/vm
|
|||||||
SOURCE_PATHS+=$(HS_COMMON_SRC)/cpu/$(Platform_arch)/vm
|
SOURCE_PATHS+=$(HS_COMMON_SRC)/cpu/$(Platform_arch)/vm
|
||||||
SOURCE_PATHS+=$(HS_COMMON_SRC)/os_cpu/$(Platform_os_arch)/vm
|
SOURCE_PATHS+=$(HS_COMMON_SRC)/os_cpu/$(Platform_os_arch)/vm
|
||||||
|
|
||||||
|
ifndef JAVASE_EMBEDDED
|
||||||
|
SOURCE_PATHS+=$(shell if [ -d $(HS_ALT_SRC)/share/vm/jfr ]; then \
|
||||||
|
find $(HS_ALT_SRC)/share/vm/jfr -type d; \
|
||||||
|
fi)
|
||||||
|
endif
|
||||||
|
|
||||||
CORE_PATHS=$(foreach path,$(SOURCE_PATHS),$(call altsrc,$(path)) $(path))
|
CORE_PATHS=$(foreach path,$(SOURCE_PATHS),$(call altsrc,$(path)) $(path))
|
||||||
CORE_PATHS+=$(GENERATED)/jvmtifiles
|
CORE_PATHS+=$(GENERATED)/jvmtifiles
|
||||||
|
|
||||||
@@ -262,13 +276,13 @@ ifeq ($(SHARK_BUILD), true)
|
|||||||
LIBS_VM += $(LLVM_LIBS)
|
LIBS_VM += $(LLVM_LIBS)
|
||||||
endif
|
endif
|
||||||
|
|
||||||
LINK_VM = $(LINK_LIB.c)
|
LINK_VM = $(LINK_LIB.CC)
|
||||||
|
|
||||||
# rule for building precompiled header
|
# rule for building precompiled header
|
||||||
$(PRECOMPILED_HEADER):
|
$(PRECOMPILED_HEADER):
|
||||||
$(QUIETLY) echo Generating precompiled header $@
|
$(QUIETLY) echo Generating precompiled header $@
|
||||||
$(QUIETLY) mkdir -p $(PRECOMPILED_HEADER_DIR)
|
$(QUIETLY) mkdir -p $(PRECOMPILED_HEADER_DIR)
|
||||||
$(QUIETLY) $(COMPILE.CC) $(DEPFLAGS) -x c++-header $(PRECOMPILED_HEADER_SRC) -o $@ $(COMPILE_DONE)
|
$(QUIETLY) $(COMPILE.CXX) $(DEPFLAGS) -x c++-header $(PRECOMPILED_HEADER_SRC) -o $@ $(COMPILE_DONE)
|
||||||
|
|
||||||
# making the library:
|
# making the library:
|
||||||
|
|
||||||
@@ -298,10 +312,10 @@ endif
|
|||||||
$(LIBJVM): $(LIBJVM.o) $(LIBJVM_MAPFILE) $(LD_SCRIPT)
|
$(LIBJVM): $(LIBJVM.o) $(LIBJVM_MAPFILE) $(LD_SCRIPT)
|
||||||
$(QUIETLY) { \
|
$(QUIETLY) { \
|
||||||
echo Linking vm...; \
|
echo Linking vm...; \
|
||||||
$(LINK_LIB.CC/PRE_HOOK) \
|
$(LINK_LIB.CXX/PRE_HOOK) \
|
||||||
$(LINK_VM) $(LD_SCRIPT_FLAG) \
|
$(LINK_VM) $(LD_SCRIPT_FLAG) \
|
||||||
$(LFLAGS_VM) -o $@ $(LIBJVM.o) $(LIBS_VM); \
|
$(LFLAGS_VM) -o $@ $(LIBJVM.o) $(LIBS_VM); \
|
||||||
$(LINK_LIB.CC/POST_HOOK) \
|
$(LINK_LIB.CXX/POST_HOOK) \
|
||||||
rm -f $@.1; ln -s $@ $@.1; \
|
rm -f $@.1; ln -s $@ $@.1; \
|
||||||
[ -f $(LIBJVM_G) ] || { ln -s $@ $(LIBJVM_G); ln -s $@.1 $(LIBJVM_G).1; }; \
|
[ -f $(LIBJVM_G) ] || { ln -s $@ $(LIBJVM_G); ln -s $@.1 $(LIBJVM_G).1; }; \
|
||||||
if [ \"$(CROSS_COMPILE_ARCH)\" = \"\" ] ; then \
|
if [ \"$(CROSS_COMPILE_ARCH)\" = \"\" ] ; then \
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
#
|
#
|
||||||
# Copyright (c) 2003, 2008, Oracle and/or its affiliates. All rights reserved.
|
# Copyright (c) 2003, 2011, Oracle and/or its affiliates. All rights reserved.
|
||||||
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||||
#
|
#
|
||||||
# This code is free software; you can redistribute it and/or modify it
|
# This code is free software; you can redistribute it and/or modify it
|
||||||
@@ -82,6 +82,7 @@ $(AGENT_SRC_DIR)/sun/jvm/hotspot/debugger/windbg/amd64/*.java \
|
|||||||
$(AGENT_SRC_DIR)/sun/jvm/hotspot/debugger/windbg/ia64/*.java \
|
$(AGENT_SRC_DIR)/sun/jvm/hotspot/debugger/windbg/ia64/*.java \
|
||||||
$(AGENT_SRC_DIR)/sun/jvm/hotspot/debugger/windbg/x86/*.java \
|
$(AGENT_SRC_DIR)/sun/jvm/hotspot/debugger/windbg/x86/*.java \
|
||||||
$(AGENT_SRC_DIR)/sun/jvm/hotspot/debugger/x86/*.java \
|
$(AGENT_SRC_DIR)/sun/jvm/hotspot/debugger/x86/*.java \
|
||||||
|
$(AGENT_SRC_DIR)/sun/jvm/hotspot/gc_implementation/g1/*.java \
|
||||||
$(AGENT_SRC_DIR)/sun/jvm/hotspot/gc_implementation/parallelScavenge/*.java \
|
$(AGENT_SRC_DIR)/sun/jvm/hotspot/gc_implementation/parallelScavenge/*.java \
|
||||||
$(AGENT_SRC_DIR)/sun/jvm/hotspot/gc_implementation/shared/*.java \
|
$(AGENT_SRC_DIR)/sun/jvm/hotspot/gc_implementation/shared/*.java \
|
||||||
$(AGENT_SRC_DIR)/sun/jvm/hotspot/gc_interface/*.java \
|
$(AGENT_SRC_DIR)/sun/jvm/hotspot/gc_interface/*.java \
|
||||||
|
|||||||
@@ -40,9 +40,16 @@ OS = $(Platform_os_family)
|
|||||||
|
|
||||||
SOURCE.AD = $(OUTDIR)/$(OS)_$(Platform_arch_model).ad
|
SOURCE.AD = $(OUTDIR)/$(OS)_$(Platform_arch_model).ad
|
||||||
|
|
||||||
SOURCES.AD = \
|
ifeq ("${Platform_arch_model}", "${Platform_arch}")
|
||||||
|
SOURCES.AD = \
|
||||||
$(call altsrc-replace,$(HS_COMMON_SRC)/cpu/$(ARCH)/vm/$(Platform_arch_model).ad) \
|
$(call altsrc-replace,$(HS_COMMON_SRC)/cpu/$(ARCH)/vm/$(Platform_arch_model).ad) \
|
||||||
$(call altsrc-replace,$(HS_COMMON_SRC)/os_cpu/$(OS)_$(ARCH)/vm/$(OS)_$(Platform_arch_model).ad)
|
$(call altsrc-replace,$(HS_COMMON_SRC)/os_cpu/$(OS)_$(ARCH)/vm/$(OS)_$(Platform_arch_model).ad)
|
||||||
|
else
|
||||||
|
SOURCES.AD = \
|
||||||
|
$(call altsrc-replace,$(HS_COMMON_SRC)/cpu/$(ARCH)/vm/$(Platform_arch_model).ad) \
|
||||||
|
$(call altsrc-replace,$(HS_COMMON_SRC)/cpu/$(ARCH)/vm/$(Platform_arch).ad) \
|
||||||
|
$(call altsrc-replace,$(HS_COMMON_SRC)/os_cpu/$(OS)_$(ARCH)/vm/$(OS)_$(Platform_arch_model).ad)
|
||||||
|
endif
|
||||||
|
|
||||||
EXEC = $(OUTDIR)/adlc
|
EXEC = $(OUTDIR)/adlc
|
||||||
|
|
||||||
@@ -55,10 +62,10 @@ Src_Dirs_I += $(GAMMADIR)/src/share/vm/adlc $(GENERATED)
|
|||||||
INCLUDES += $(Src_Dirs_I:%=-I%)
|
INCLUDES += $(Src_Dirs_I:%=-I%)
|
||||||
|
|
||||||
# set flags for adlc compilation
|
# set flags for adlc compilation
|
||||||
CPPFLAGS = $(SYSDEFS) $(INCLUDES)
|
CXXFLAGS = $(SYSDEFS) $(INCLUDES)
|
||||||
|
|
||||||
# Force assertions on.
|
# Force assertions on.
|
||||||
CPPFLAGS += -DASSERT
|
CXXFLAGS += -DASSERT
|
||||||
|
|
||||||
ifndef USE_GCC
|
ifndef USE_GCC
|
||||||
# We need libCstd.so for adlc
|
# We need libCstd.so for adlc
|
||||||
@@ -123,7 +130,7 @@ all: $(EXEC)
|
|||||||
|
|
||||||
$(EXEC) : $(OBJECTS)
|
$(EXEC) : $(OBJECTS)
|
||||||
@echo Making adlc
|
@echo Making adlc
|
||||||
$(QUIETLY) $(LINK_NOPROF.CC) -o $(EXEC) $(OBJECTS)
|
$(QUIETLY) $(LINK_NOPROF.CXX) -o $(EXEC) $(OBJECTS)
|
||||||
|
|
||||||
# Random dependencies:
|
# Random dependencies:
|
||||||
$(OBJECTS): opcodes.hpp classes.hpp adlc.hpp adlcVMDeps.hpp adlparse.hpp archDesc.hpp arena.hpp dict2.hpp filebuff.hpp forms.hpp formsopt.hpp formssel.hpp
|
$(OBJECTS): opcodes.hpp classes.hpp adlc.hpp adlcVMDeps.hpp adlparse.hpp archDesc.hpp arena.hpp dict2.hpp filebuff.hpp forms.hpp formsopt.hpp formssel.hpp
|
||||||
@@ -221,14 +228,14 @@ PROCESS_AD_FILES = awk '{ \
|
|||||||
$(OUTDIR)/%.o: %.cpp
|
$(OUTDIR)/%.o: %.cpp
|
||||||
@echo Compiling $<
|
@echo Compiling $<
|
||||||
$(QUIETLY) $(REMOVE_TARGET)
|
$(QUIETLY) $(REMOVE_TARGET)
|
||||||
$(QUIETLY) $(COMPILE.CC) -o $@ $< $(COMPILE_DONE)
|
$(QUIETLY) $(COMPILE.CXX) -o $@ $< $(COMPILE_DONE)
|
||||||
|
|
||||||
# Some object files are given a prefix, to disambiguate
|
# Some object files are given a prefix, to disambiguate
|
||||||
# them from objects of the same name built for the VM.
|
# them from objects of the same name built for the VM.
|
||||||
$(OUTDIR)/adlc-%.o: %.cpp
|
$(OUTDIR)/adlc-%.o: %.cpp
|
||||||
@echo Compiling $<
|
@echo Compiling $<
|
||||||
$(QUIETLY) $(REMOVE_TARGET)
|
$(QUIETLY) $(REMOVE_TARGET)
|
||||||
$(QUIETLY) $(COMPILE.CC) -o $@ $< $(COMPILE_DONE)
|
$(QUIETLY) $(COMPILE.CXX) -o $@ $< $(COMPILE_DONE)
|
||||||
|
|
||||||
# #########################################################################
|
# #########################################################################
|
||||||
|
|
||||||
|
|||||||
@@ -55,6 +55,7 @@
|
|||||||
# The makefiles are split this way so that "make foo" will run faster by not
|
# The makefiles are split this way so that "make foo" will run faster by not
|
||||||
# having to read the dependency files for the vm.
|
# having to read the dependency files for the vm.
|
||||||
|
|
||||||
|
-include $(SPEC)
|
||||||
include $(GAMMADIR)/make/scm.make
|
include $(GAMMADIR)/make/scm.make
|
||||||
include $(GAMMADIR)/make/altsrc.make
|
include $(GAMMADIR)/make/altsrc.make
|
||||||
|
|
||||||
@@ -118,7 +119,7 @@ SUBMAKE_DIRS = $(addprefix $(PLATFORM_DIR)/,$(TARGETS))
|
|||||||
BUILDTREE_MAKE = $(GAMMADIR)/make/$(OS_FAMILY)/makefiles/buildtree.make
|
BUILDTREE_MAKE = $(GAMMADIR)/make/$(OS_FAMILY)/makefiles/buildtree.make
|
||||||
|
|
||||||
BUILDTREE_TARGETS = Makefile flags.make flags_vm.make vm.make adlc.make jvmti.make sa.make \
|
BUILDTREE_TARGETS = Makefile flags.make flags_vm.make vm.make adlc.make jvmti.make sa.make \
|
||||||
env.ksh env.csh jdkpath.sh .dbxrc test_gamma
|
env.sh env.csh jdkpath.sh .dbxrc test_gamma
|
||||||
|
|
||||||
BUILDTREE_VARS = GAMMADIR=$(GAMMADIR) OS_FAMILY=$(OS_FAMILY) \
|
BUILDTREE_VARS = GAMMADIR=$(GAMMADIR) OS_FAMILY=$(OS_FAMILY) \
|
||||||
ARCH=$(ARCH) BUILDARCH=$(BUILDARCH) LIBARCH=$(LIBARCH) VARIANT=$(VARIANT)
|
ARCH=$(ARCH) BUILDARCH=$(BUILDARCH) LIBARCH=$(LIBARCH) VARIANT=$(VARIANT)
|
||||||
@@ -216,6 +217,8 @@ flags.make: $(BUILDTREE_MAKE) ../shared_dirs.lst
|
|||||||
echo "$(call gamma-path,commonsrc,share/vm/prims) \\"; \
|
echo "$(call gamma-path,commonsrc,share/vm/prims) \\"; \
|
||||||
echo "$(call gamma-path,altsrc,share/vm) \\"; \
|
echo "$(call gamma-path,altsrc,share/vm) \\"; \
|
||||||
echo "$(call gamma-path,commonsrc,share/vm) \\"; \
|
echo "$(call gamma-path,commonsrc,share/vm) \\"; \
|
||||||
|
echo "$(call gamma-path,altsrc,share/vm/precompiled) \\"; \
|
||||||
|
echo "$(call gamma-path,commonsrc,share/vm/precompiled) \\"; \
|
||||||
echo "$(call gamma-path,altsrc,cpu/$(ARCH)/vm) \\"; \
|
echo "$(call gamma-path,altsrc,cpu/$(ARCH)/vm) \\"; \
|
||||||
echo "$(call gamma-path,commonsrc,cpu/$(ARCH)/vm) \\"; \
|
echo "$(call gamma-path,commonsrc,cpu/$(ARCH)/vm) \\"; \
|
||||||
echo "$(call gamma-path,altsrc,os_cpu/$(OS_FAMILY)_$(ARCH)/vm) \\"; \
|
echo "$(call gamma-path,altsrc,os_cpu/$(OS_FAMILY)_$(ARCH)/vm) \\"; \
|
||||||
@@ -235,6 +238,8 @@ flags.make: $(BUILDTREE_MAKE) ../shared_dirs.lst
|
|||||||
echo "HOTSPOT_EXTRA_SYSDEFS\$$(HOTSPOT_EXTRA_SYSDEFS) = $(HOTSPOT_EXTRA_SYSDEFS)" && \
|
echo "HOTSPOT_EXTRA_SYSDEFS\$$(HOTSPOT_EXTRA_SYSDEFS) = $(HOTSPOT_EXTRA_SYSDEFS)" && \
|
||||||
echo "SYSDEFS += \$$(HOTSPOT_EXTRA_SYSDEFS)"; \
|
echo "SYSDEFS += \$$(HOTSPOT_EXTRA_SYSDEFS)"; \
|
||||||
echo; \
|
echo; \
|
||||||
|
[ -n "$(SPEC)" ] && \
|
||||||
|
echo "include $(SPEC)"; \
|
||||||
echo "include \$$(GAMMADIR)/make/$(OS_FAMILY)/makefiles/$(VARIANT).make"; \
|
echo "include \$$(GAMMADIR)/make/$(OS_FAMILY)/makefiles/$(VARIANT).make"; \
|
||||||
echo "include \$$(GAMMADIR)/make/$(OS_FAMILY)/makefiles/$(COMPILER).make"; \
|
echo "include \$$(GAMMADIR)/make/$(OS_FAMILY)/makefiles/$(COMPILER).make"; \
|
||||||
) > $@
|
) > $@
|
||||||
@@ -311,22 +316,19 @@ sa.make: $(BUILDTREE_MAKE)
|
|||||||
echo "include \$$(GAMMADIR)/make/$(OS_FAMILY)/makefiles/$(@F)"; \
|
echo "include \$$(GAMMADIR)/make/$(OS_FAMILY)/makefiles/$(@F)"; \
|
||||||
) > $@
|
) > $@
|
||||||
|
|
||||||
env.ksh: $(BUILDTREE_MAKE)
|
env.sh: $(BUILDTREE_MAKE)
|
||||||
@echo Creating $@ ...
|
@echo Creating $@ ...
|
||||||
$(QUIETLY) ( \
|
$(QUIETLY) ( \
|
||||||
$(BUILDTREE_COMMENT); \
|
$(BUILDTREE_COMMENT); \
|
||||||
[ -n "$$JAVA_HOME" ] && { echo ": \$${JAVA_HOME:=$${JAVA_HOME}}"; }; \
|
[ -n "$$JAVA_HOME" ] && { echo ": \$${JAVA_HOME:=$${JAVA_HOME}}"; }; \
|
||||||
{ \
|
{ \
|
||||||
echo "LD_LIBRARY_PATH=.:$${LD_LIBRARY_PATH:+$$LD_LIBRARY_PATH:}\$${JAVA_HOME}/jre/lib/${LIBARCH}/native_threads:\$${JAVA_HOME}/jre/lib/${LIBARCH}:${GCC_LIB}"; \
|
|
||||||
echo "unset LD_LIBRARY_PATH_32"; \
|
|
||||||
echo "unset LD_LIBRARY_PATH_64"; \
|
|
||||||
echo "CLASSPATH=$${CLASSPATH:+$$CLASSPATH:}.:\$${JAVA_HOME}/jre/lib/rt.jar:\$${JAVA_HOME}/jre/lib/i18n.jar"; \
|
echo "CLASSPATH=$${CLASSPATH:+$$CLASSPATH:}.:\$${JAVA_HOME}/jre/lib/rt.jar:\$${JAVA_HOME}/jre/lib/i18n.jar"; \
|
||||||
} | sed s:$${JAVA_HOME:--------}:\$${JAVA_HOME}:g; \
|
} | sed s:$${JAVA_HOME:--------}:\$${JAVA_HOME}:g; \
|
||||||
echo "HOTSPOT_BUILD_USER=\"$${LOGNAME:-$$USER} in `basename $(GAMMADIR)`\""; \
|
echo "HOTSPOT_BUILD_USER=\"$${LOGNAME:-$$USER} in `basename $(GAMMADIR)`\""; \
|
||||||
echo "export JAVA_HOME LD_LIBRARY_PATH CLASSPATH HOTSPOT_BUILD_USER"; \
|
echo "export JAVA_HOME LD_LIBRARY_PATH CLASSPATH HOTSPOT_BUILD_USER"; \
|
||||||
) > $@
|
) > $@
|
||||||
|
|
||||||
env.csh: env.ksh
|
env.csh: env.sh
|
||||||
@echo Creating $@ ...
|
@echo Creating $@ ...
|
||||||
$(QUIETLY) ( \
|
$(QUIETLY) ( \
|
||||||
$(BUILDTREE_COMMENT); \
|
$(BUILDTREE_COMMENT); \
|
||||||
@@ -382,23 +384,86 @@ JAVA_FLAG/32 = -d32
|
|||||||
JAVA_FLAG/64 = -d64
|
JAVA_FLAG/64 = -d64
|
||||||
|
|
||||||
WRONG_DATA_MODE_MSG = \
|
WRONG_DATA_MODE_MSG = \
|
||||||
echo "JAVA_HOME must point to $(DATA_MODE)bit JDK."
|
echo "JAVA_HOME must point to a $(DATA_MODE)-bit OpenJDK."
|
||||||
|
|
||||||
|
CROSS_COMPILING_MSG = \
|
||||||
|
echo "Cross compiling for ARCH $(CROSS_COMPILE_ARCH), skipping gamma run."
|
||||||
|
|
||||||
test_gamma: $(BUILDTREE_MAKE) $(GAMMADIR)/make/test/Queens.java
|
test_gamma: $(BUILDTREE_MAKE) $(GAMMADIR)/make/test/Queens.java
|
||||||
@echo Creating $@ ...
|
@echo Creating $@ ...
|
||||||
$(QUIETLY) ( \
|
$(QUIETLY) ( \
|
||||||
echo '#!/bin/ksh'; \
|
echo "#!/bin/sh"; \
|
||||||
|
echo ""; \
|
||||||
$(BUILDTREE_COMMENT); \
|
$(BUILDTREE_COMMENT); \
|
||||||
echo '. ./env.ksh'; \
|
echo ""; \
|
||||||
echo "if [ -z \$$JAVA_HOME ]; then { $(NO_JAVA_HOME_MSG); exit 0; }; fi"; \
|
echo "# Include environment settings for gamma run"; \
|
||||||
echo "if ! \$${JAVA_HOME}/bin/java $(JAVA_FLAG) -fullversion 2>&1 > /dev/null"; \
|
echo ""; \
|
||||||
echo "then"; \
|
echo ". ./env.sh"; \
|
||||||
echo " $(WRONG_DATA_MODE_MSG); exit 0;"; \
|
echo ""; \
|
||||||
|
echo "# Do not run gamma test for cross compiles"; \
|
||||||
|
echo ""; \
|
||||||
|
echo "if [ -n \"$(CROSS_COMPILE_ARCH)\" ]; then "; \
|
||||||
|
echo " $(CROSS_COMPILING_MSG)"; \
|
||||||
|
echo " exit 0"; \
|
||||||
echo "fi"; \
|
echo "fi"; \
|
||||||
|
echo ""; \
|
||||||
|
echo "# Make sure JAVA_HOME is set as it is required for gamma"; \
|
||||||
|
echo ""; \
|
||||||
|
echo "if [ -z \"\$${JAVA_HOME}\" ]; then "; \
|
||||||
|
echo " $(NO_JAVA_HOME_MSG)"; \
|
||||||
|
echo " exit 0"; \
|
||||||
|
echo "fi"; \
|
||||||
|
echo ""; \
|
||||||
|
echo "# Check JAVA_HOME version to be used for the test"; \
|
||||||
|
echo ""; \
|
||||||
|
echo "\$${JAVA_HOME}/bin/java $(JAVA_FLAG) -fullversion > /dev/null 2>&1"; \
|
||||||
|
echo "if [ \$$? -ne 0 ]; then "; \
|
||||||
|
echo " $(WRONG_DATA_MODE_MSG)"; \
|
||||||
|
echo " exit 0"; \
|
||||||
|
echo "fi"; \
|
||||||
|
echo ""; \
|
||||||
|
echo "# Use gamma_g if it exists"; \
|
||||||
|
echo ""; \
|
||||||
|
echo "GAMMA_PROG=gamma"; \
|
||||||
|
echo "if [ -f gamma_g ]; then "; \
|
||||||
|
echo " GAMMA_PROG=gamma_g"; \
|
||||||
|
echo "fi"; \
|
||||||
|
echo ""; \
|
||||||
|
echo "if [ \"$(OS_VENDOR)\" = \"Darwin\" ]; then "; \
|
||||||
|
echo " # Ensure architecture for gamma and JAVA_HOME is the same."; \
|
||||||
|
echo " # NOTE: gamma assumes the OpenJDK directory layout."; \
|
||||||
|
echo ""; \
|
||||||
|
echo " GAMMA_ARCH=\"\`file \$${GAMMA_PROG} | awk '{print \$$NF}'\`\""; \
|
||||||
|
echo " JVM_LIB=\"\$${JAVA_HOME}/jre/lib/libjava.$(LIBRARY_SUFFIX)\""; \
|
||||||
|
echo " if [ ! -f \$${JVM_LIB} ]; then"; \
|
||||||
|
echo " JVM_LIB=\"\$${JAVA_HOME}/jre/lib/$${LIBARCH}/libjava.$(LIBRARY_SUFFIX)\""; \
|
||||||
|
echo " fi"; \
|
||||||
|
echo " if [ ! -f \$${JVM_LIB} ] || [ -z \"\`file \$${JVM_LIB} | grep \$${GAMMA_ARCH}\`\" ]; then "; \
|
||||||
|
echo " $(WRONG_DATA_MODE_MSG)"; \
|
||||||
|
echo " exit 0"; \
|
||||||
|
echo " fi"; \
|
||||||
|
echo "fi"; \
|
||||||
|
echo ""; \
|
||||||
|
echo "# Compile Queens program for test"; \
|
||||||
|
echo ""; \
|
||||||
echo "rm -f Queens.class"; \
|
echo "rm -f Queens.class"; \
|
||||||
echo "\$${JAVA_HOME}/bin/javac -d . $(GAMMADIR)/make/test/Queens.java"; \
|
echo "\$${JAVA_HOME}/bin/javac -d . $(GAMMADIR)/make/test/Queens.java"; \
|
||||||
echo '[ -f gamma_g ] && { gamma=gamma_g; }'; \
|
echo ""; \
|
||||||
echo './$${gamma:-gamma} $(TESTFLAGS) Queens < /dev/null'; \
|
echo "# Set library path solely for gamma launcher test run"; \
|
||||||
|
echo ""; \
|
||||||
|
echo "LD_LIBRARY_PATH=.:$${LD_LIBRARY_PATH:+$$LD_LIBRARY_PATH:}\$${JAVA_HOME}/jre/lib/${LIBARCH}/native_threads:\$${JAVA_HOME}/jre/lib/${LIBARCH}:${GCC_LIB}"; \
|
||||||
|
echo "export LD_LIBRARY_PATH"; \
|
||||||
|
echo "unset LD_LIBRARY_PATH_32"; \
|
||||||
|
echo "unset LD_LIBRARY_PATH_64"; \
|
||||||
|
echo ""; \
|
||||||
|
echo "if [ \"$(OS_VENDOR)\" = \"Darwin\" ]; then "; \
|
||||||
|
echo " DYLD_LIBRARY_PATH=.:$${DYLD_LIBRARY_PATH:+$$DYLD_LIBRARY_PATH:}\$${JAVA_HOME}/jre/lib/native_threads:\$${JAVA_HOME}/jre/lib:$${DYLD_LIBRARY_PATH:+$$DYLD_LIBRARY_PATH:}\$${JAVA_HOME}/jre/lib/${LIBARCH}/native_threads:\$${JAVA_HOME}/jre/lib/${LIBARCH}:${GCC_LIB}"; \
|
||||||
|
echo " export DYLD_LIBRARY_PATH"; \
|
||||||
|
echo "fi"; \
|
||||||
|
echo ""; \
|
||||||
|
echo "# Use the gamma launcher and JAVA_HOME to run the test"; \
|
||||||
|
echo ""; \
|
||||||
|
echo "./\$${GAMMA_PROG} $(TESTFLAGS) Queens < /dev/null"; \
|
||||||
) > $@
|
) > $@
|
||||||
$(QUIETLY) chmod +x $@
|
$(QUIETLY) chmod +x $@
|
||||||
|
|
||||||
|
|||||||
@@ -150,11 +150,11 @@ endif
|
|||||||
|
|
||||||
lib$(GENOFFS).so: $(DTRACE_SRCDIR)/$(GENOFFS).cpp $(DTRACE_SRCDIR)/$(GENOFFS).h \
|
lib$(GENOFFS).so: $(DTRACE_SRCDIR)/$(GENOFFS).cpp $(DTRACE_SRCDIR)/$(GENOFFS).h \
|
||||||
$(LIBJVM.o)
|
$(LIBJVM.o)
|
||||||
$(QUIETLY) $(CCC) $(CPPFLAGS) $(GENOFFS_CFLAGS) $(SHARED_FLAG) $(PICFLAG) \
|
$(QUIETLY) $(CXX) $(CXXFLAGS) $(GENOFFS_CFLAGS) $(SHARED_FLAG) $(PICFLAG) \
|
||||||
$(LFLAGS_GENOFFS) -o $@ $(DTRACE_SRCDIR)/$(GENOFFS).cpp -lc
|
$(LFLAGS_GENOFFS) -o $@ $(DTRACE_SRCDIR)/$(GENOFFS).cpp -lc
|
||||||
|
|
||||||
$(GENOFFS): $(DTRACE_SRCDIR)/$(GENOFFS)Main.c lib$(GENOFFS).so
|
$(GENOFFS): $(DTRACE_SRCDIR)/$(GENOFFS)Main.c lib$(GENOFFS).so
|
||||||
$(QUIETLY) $(LINK.CC) -z nodefs -o $@ $(DTRACE_SRCDIR)/$(GENOFFS)Main.c \
|
$(QUIETLY) $(LINK.CXX) -z nodefs -o $@ $(DTRACE_SRCDIR)/$(GENOFFS)Main.c \
|
||||||
./lib$(GENOFFS).so
|
./lib$(GENOFFS).so
|
||||||
|
|
||||||
CONDITIONALLY_UPDATE_JVMOFFS_TARGET = \
|
CONDITIONALLY_UPDATE_JVMOFFS_TARGET = \
|
||||||
@@ -178,7 +178,7 @@ $(JVMOFFS).cpp: $(GENOFFS) $(JVMOFFS).h $(JVMOFFS)Index.h
|
|||||||
$(QUIETLY) $(CONDITIONALLY_UPDATE_JVMOFFS_TARGET)
|
$(QUIETLY) $(CONDITIONALLY_UPDATE_JVMOFFS_TARGET)
|
||||||
|
|
||||||
$(JVMOFFS.o): $(JVMOFFS).h $(JVMOFFS).cpp
|
$(JVMOFFS.o): $(JVMOFFS).h $(JVMOFFS).cpp
|
||||||
$(QUIETLY) $(CCC) -c -I. -o $@ $(ARCHFLAG) -D$(TYPE) $(JVMOFFS).cpp
|
$(QUIETLY) $(CXX) -c -I. -o $@ $(ARCHFLAG) -D$(TYPE) $(JVMOFFS).cpp
|
||||||
|
|
||||||
$(LIBJVM_DB): $(DTRACE_SRCDIR)/$(JVM_DB).c $(JVMOFFS.o) $(XLIBJVM_DB) $(LIBJVM_DB_MAPFILE)
|
$(LIBJVM_DB): $(DTRACE_SRCDIR)/$(JVM_DB).c $(JVMOFFS.o) $(XLIBJVM_DB) $(LIBJVM_DB_MAPFILE)
|
||||||
@echo Making $@
|
@echo Making $@
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
#
|
#
|
||||||
# Copyright (c) 1998, 2010, Oracle and/or its affiliates. All rights reserved.
|
# Copyright (c) 1998, 2011, Oracle and/or its affiliates. All rights reserved.
|
||||||
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||||
#
|
#
|
||||||
# This code is free software; you can redistribute it and/or modify it
|
# This code is free software; you can redistribute it and/or modify it
|
||||||
@@ -23,11 +23,15 @@
|
|||||||
#
|
#
|
||||||
|
|
||||||
#------------------------------------------------------------------------
|
#------------------------------------------------------------------------
|
||||||
# CC, CPP & AS
|
# CC, CXX & AS
|
||||||
|
|
||||||
CPP = g++
|
# If a SPEC is not set already, then use these defaults.
|
||||||
CC = gcc
|
ifeq ($(SPEC),)
|
||||||
AS = $(CC) -c
|
CXX = g++
|
||||||
|
CC = gcc
|
||||||
|
AS = $(CC) -c
|
||||||
|
MCS = /usr/ccs/bin/mcs
|
||||||
|
endif
|
||||||
|
|
||||||
Compiler = gcc
|
Compiler = gcc
|
||||||
|
|
||||||
@@ -36,12 +40,12 @@ Compiler = gcc
|
|||||||
CC_VER_MAJOR := $(shell $(CC) -dumpversion | sed 's/egcs-//' | cut -d'.' -f1)
|
CC_VER_MAJOR := $(shell $(CC) -dumpversion | sed 's/egcs-//' | cut -d'.' -f1)
|
||||||
CC_VER_MINOR := $(shell $(CC) -dumpversion | sed 's/egcs-//' | cut -d'.' -f2)
|
CC_VER_MINOR := $(shell $(CC) -dumpversion | sed 's/egcs-//' | cut -d'.' -f2)
|
||||||
|
|
||||||
# Check for the versions of C++ and C compilers ($CPP and $CC) used.
|
# Check for the versions of C++ and C compilers ($CXX and $CC) used.
|
||||||
|
|
||||||
# Get the last thing on the line that looks like x.x+ (x is a digit).
|
# Get the last thing on the line that looks like x.x+ (x is a digit).
|
||||||
COMPILER_REV := \
|
COMPILER_REV := \
|
||||||
$(shell $(CPP) -dumpversion | sed 's/egcs-//' | cut -d'.' -f1)
|
$(shell $(CXX) -dumpversion | sed 's/egcs-//' | cut -d'.' -f1)
|
||||||
C_COMPILER_REV := \
|
CC_COMPILER_REV := \
|
||||||
$(shell $(CC) -dumpversion | sed 's/egcs-//' | cut -d'.' -f2)
|
$(shell $(CC) -dumpversion | sed 's/egcs-//' | cut -d'.' -f2)
|
||||||
|
|
||||||
|
|
||||||
@@ -49,9 +53,8 @@ $(shell $(CC) -dumpversion | sed 's/egcs-//' | cut -d'.' -f2)
|
|||||||
ifneq "$(shell expr \( $(CC_VER_MAJOR) \> 3 \) \| \( \( $(CC_VER_MAJOR) = 3 \) \& \( $(CC_VER_MINOR) \>= 4 \) \))" "0"
|
ifneq "$(shell expr \( $(CC_VER_MAJOR) \> 3 \) \| \( \( $(CC_VER_MAJOR) = 3 \) \& \( $(CC_VER_MINOR) \>= 4 \) \))" "0"
|
||||||
# Allow the user to turn off precompiled headers from the command line.
|
# Allow the user to turn off precompiled headers from the command line.
|
||||||
ifneq ($(USE_PRECOMPILED_HEADER),0)
|
ifneq ($(USE_PRECOMPILED_HEADER),0)
|
||||||
USE_PRECOMPILED_HEADER=1
|
|
||||||
PRECOMPILED_HEADER_DIR=.
|
PRECOMPILED_HEADER_DIR=.
|
||||||
PRECOMPILED_HEADER_SRC=$(GAMMADIR)/src/share/vm/precompiled.hpp
|
PRECOMPILED_HEADER_SRC=$(GAMMADIR)/src/share/vm/precompiled/precompiled.hpp
|
||||||
PRECOMPILED_HEADER=$(PRECOMPILED_HEADER_DIR)/precompiled.hpp.gch
|
PRECOMPILED_HEADER=$(PRECOMPILED_HEADER_DIR)/precompiled.hpp.gch
|
||||||
endif
|
endif
|
||||||
endif
|
endif
|
||||||
@@ -142,7 +145,7 @@ DEPFLAGS = -MMD -MP -MF $(DEP_DIR)/$(@:%=%.d)
|
|||||||
endif
|
endif
|
||||||
|
|
||||||
# -DDONT_USE_PRECOMPILED_HEADER will exclude all includes in precompiled.hpp.
|
# -DDONT_USE_PRECOMPILED_HEADER will exclude all includes in precompiled.hpp.
|
||||||
ifneq ($(USE_PRECOMPILED_HEADER),1)
|
ifeq ($(USE_PRECOMPILED_HEADER),0)
|
||||||
CFLAGS += -DDONT_USE_PRECOMPILED_HEADER
|
CFLAGS += -DDONT_USE_PRECOMPILED_HEADER
|
||||||
endif
|
endif
|
||||||
|
|
||||||
@@ -194,5 +197,3 @@ DEBUG_CFLAGS += $(DEBUG_CFLAGS/$(BUILDARCH))
|
|||||||
ifeq ($(DEBUG_CFLAGS/$(BUILDARCH)),)
|
ifeq ($(DEBUG_CFLAGS/$(BUILDARCH)),)
|
||||||
DEBUG_CFLAGS += -gstabs
|
DEBUG_CFLAGS += -gstabs
|
||||||
endif
|
endif
|
||||||
|
|
||||||
MCS = /usr/ccs/bin/mcs
|
|
||||||
|
|||||||
@@ -52,10 +52,10 @@ else
|
|||||||
LIBS_LAUNCHER += -l$(JVM) $(LIBS)
|
LIBS_LAUNCHER += -l$(JVM) $(LIBS)
|
||||||
endif
|
endif
|
||||||
|
|
||||||
LINK_LAUNCHER = $(LINK.CC)
|
LINK_LAUNCHER = $(LINK.CXX)
|
||||||
|
|
||||||
LINK_LAUNCHER/PRE_HOOK = $(LINK_LIB.CC/PRE_HOOK)
|
LINK_LAUNCHER/PRE_HOOK = $(LINK_LIB.CXX/PRE_HOOK)
|
||||||
LINK_LAUNCHER/POST_HOOK = $(LINK_LIB.CC/POST_HOOK)
|
LINK_LAUNCHER/POST_HOOK = $(LINK_LIB.CXX/POST_HOOK)
|
||||||
|
|
||||||
ifeq ("${Platform_compiler}", "sparcWorks")
|
ifeq ("${Platform_compiler}", "sparcWorks")
|
||||||
# Enable the following LAUNCHERFLAGS addition if you need to compare the
|
# Enable the following LAUNCHERFLAGS addition if you need to compare the
|
||||||
@@ -86,11 +86,11 @@ DEPFILES := $(patsubst %.o,%.d,$(OBJS))
|
|||||||
|
|
||||||
$(LAUNCHER_OUT)/%.o: $(LAUNCHERDIR_SHARE)/%.c
|
$(LAUNCHER_OUT)/%.o: $(LAUNCHERDIR_SHARE)/%.c
|
||||||
$(QUIETLY) [ -d $(LAUNCHER_OUT) ] || { mkdir -p $(LAUNCHER_OUT); }
|
$(QUIETLY) [ -d $(LAUNCHER_OUT) ] || { mkdir -p $(LAUNCHER_OUT); }
|
||||||
$(QUIETLY) $(CC) -g -o $@ -c $< -MMD $(LAUNCHERFLAGS) $(CPPFLAGS)
|
$(QUIETLY) $(CC) -g -o $@ -c $< -MMD $(LAUNCHERFLAGS) $(CXXFLAGS)
|
||||||
|
|
||||||
$(LAUNCHER_OUT)/%.o: $(LAUNCHERDIR)/%.c
|
$(LAUNCHER_OUT)/%.o: $(LAUNCHERDIR)/%.c
|
||||||
$(QUIETLY) [ -d $(LAUNCHER_OUT) ] || { mkdir -p $(LAUNCHER_OUT); }
|
$(QUIETLY) [ -d $(LAUNCHER_OUT) ] || { mkdir -p $(LAUNCHER_OUT); }
|
||||||
$(QUIETLY) $(CC) -g -o $@ -c $< -MMD $(LAUNCHERFLAGS) $(CPPFLAGS)
|
$(QUIETLY) $(CC) -g -o $@ -c $< -MMD $(LAUNCHERFLAGS) $(CXXFLAGS)
|
||||||
|
|
||||||
$(LAUNCHER): $(OBJS) $(LIBJVM) $(LAUNCHER_MAPFILE)
|
$(LAUNCHER): $(OBJS) $(LIBJVM) $(LAUNCHER_MAPFILE)
|
||||||
ifeq ($(filter -sbfast -xsbfast, $(CFLAGS_BROWSE)),)
|
ifeq ($(filter -sbfast -xsbfast, $(CFLAGS_BROWSE)),)
|
||||||
|
|||||||
@@ -1,7 +1,3 @@
|
|||||||
#
|
|
||||||
# @(#)mapfile-vers 1.32 07/10/25 16:47:36
|
|
||||||
#
|
|
||||||
|
|
||||||
#
|
#
|
||||||
# Copyright (c) 2000, 2011, Oracle and/or its affiliates. All rights reserved.
|
# Copyright (c) 2000, 2011, Oracle and/or its affiliates. All rights reserved.
|
||||||
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||||
@@ -221,6 +217,7 @@ SUNWprivate_1.1 {
|
|||||||
JVM_SetArrayElement;
|
JVM_SetArrayElement;
|
||||||
JVM_SetClassSigners;
|
JVM_SetClassSigners;
|
||||||
JVM_SetLength;
|
JVM_SetLength;
|
||||||
|
JVM_SetNativeThreadName;
|
||||||
JVM_SetPrimitiveArrayElement;
|
JVM_SetPrimitiveArrayElement;
|
||||||
JVM_SetProtectionDomain;
|
JVM_SetProtectionDomain;
|
||||||
JVM_SetSockOpt;
|
JVM_SetSockOpt;
|
||||||
|
|||||||
@@ -70,7 +70,7 @@ endif
|
|||||||
|
|
||||||
# If we can create .debuginfo files, then the VM is stripped in vm.make
|
# If we can create .debuginfo files, then the VM is stripped in vm.make
|
||||||
# and this macro is not used.
|
# and this macro is not used.
|
||||||
# LINK_LIB.CC/POST_HOOK += $(STRIP_LIB.CC/POST_HOOK)
|
# LINK_LIB.CXX/POST_HOOK += $(STRIP_LIB.CXX/POST_HOOK)
|
||||||
|
|
||||||
G_SUFFIX =
|
G_SUFFIX =
|
||||||
SYSDEFS += -DPRODUCT
|
SYSDEFS += -DPRODUCT
|
||||||
|
|||||||
@@ -27,44 +27,31 @@
|
|||||||
# Tell make that .cpp is important
|
# Tell make that .cpp is important
|
||||||
.SUFFIXES: .cpp $(SUFFIXES)
|
.SUFFIXES: .cpp $(SUFFIXES)
|
||||||
|
|
||||||
# For now. Other makefiles use CPP as the c++ compiler, but that should really
|
|
||||||
# name the preprocessor.
|
|
||||||
ifeq ($(CCC),)
|
|
||||||
CCC = $(CPP)
|
|
||||||
endif
|
|
||||||
|
|
||||||
DEMANGLER = c++filt
|
DEMANGLER = c++filt
|
||||||
DEMANGLE = $(DEMANGLER) < $@ > .$@ && mv -f .$@ $@
|
DEMANGLE = $(DEMANGLER) < $@ > .$@ && mv -f .$@ $@
|
||||||
|
|
||||||
# $(CC) is the c compiler (cc/gcc), $(CCC) is the c++ compiler (CC/g++).
|
# $(CC) is the c compiler (cc/gcc), $(CXX) is the c++ compiler (CC/g++).
|
||||||
C_COMPILE = $(CC) $(CPPFLAGS) $(CFLAGS)
|
CC_COMPILE = $(CC) $(CXXFLAGS) $(CFLAGS)
|
||||||
CC_COMPILE = $(CCC) $(CPPFLAGS) $(CFLAGS)
|
CXX_COMPILE = $(CXX) $(CXXFLAGS) $(CFLAGS)
|
||||||
|
|
||||||
AS.S = $(AS) $(ASFLAGS)
|
AS.S = $(AS) $(ASFLAGS)
|
||||||
|
|
||||||
COMPILE.c = $(C_COMPILE) -c
|
COMPILE.CC = $(CC_COMPILE) -c
|
||||||
GENASM.c = $(C_COMPILE) -S
|
GENASM.CC = $(CC_COMPILE) -S
|
||||||
LINK.c = $(CC) $(LFLAGS) $(AOUT_FLAGS) $(PROF_AOUT_FLAGS)
|
LINK.CC = $(CC) $(LFLAGS) $(AOUT_FLAGS) $(PROF_AOUT_FLAGS)
|
||||||
LINK_LIB.c = $(CC) $(LFLAGS) $(SHARED_FLAG)
|
LINK_LIB.CC = $(CC) $(LFLAGS) $(SHARED_FLAG)
|
||||||
PREPROCESS.c = $(C_COMPILE) -E
|
PREPROCESS.CC = $(CC_COMPILE) -E
|
||||||
|
|
||||||
COMPILE.CC = $(CC_COMPILE) -c
|
COMPILE.CXX = $(CXX_COMPILE) -c
|
||||||
GENASM.CC = $(CC_COMPILE) -S
|
GENASM.CXX = $(CXX_COMPILE) -S
|
||||||
LINK.CC = $(CCC) $(LFLAGS) $(AOUT_FLAGS) $(PROF_AOUT_FLAGS)
|
LINK.CXX = $(CXX) $(LFLAGS) $(AOUT_FLAGS) $(PROF_AOUT_FLAGS)
|
||||||
LINK_NOPROF.CC = $(CCC) $(LFLAGS) $(AOUT_FLAGS)
|
LINK_NOPROF.CXX = $(CXX) $(LFLAGS) $(AOUT_FLAGS)
|
||||||
LINK_LIB.CC = $(CCC) $(LFLAGS) $(SHARED_FLAG)
|
LINK_LIB.CXX = $(CXX) $(LFLAGS) $(SHARED_FLAG)
|
||||||
PREPROCESS.CC = $(CC_COMPILE) -E
|
PREPROCESS.CXX = $(CXX_COMPILE) -E
|
||||||
|
|
||||||
# Effect of REMOVE_TARGET is to delete out-of-date files during "gnumake -k".
|
# Effect of REMOVE_TARGET is to delete out-of-date files during "gnumake -k".
|
||||||
REMOVE_TARGET = rm -f $@
|
REMOVE_TARGET = rm -f $@
|
||||||
|
|
||||||
# Synonyms.
|
|
||||||
COMPILE.cpp = $(COMPILE.CC)
|
|
||||||
GENASM.cpp = $(GENASM.CC)
|
|
||||||
LINK.cpp = $(LINK.CC)
|
|
||||||
LINK_LIB.cpp = $(LINK_LIB.CC)
|
|
||||||
PREPROCESS.cpp = $(PREPROCESS.CC)
|
|
||||||
|
|
||||||
# Note use of ALT_BOOTDIR to explicitly specify location of java and
|
# Note use of ALT_BOOTDIR to explicitly specify location of java and
|
||||||
# javac; this is the same environment variable used in the J2SE build
|
# javac; this is the same environment variable used in the J2SE build
|
||||||
# process for overriding the default spec, which is BOOTDIR.
|
# process for overriding the default spec, which is BOOTDIR.
|
||||||
@@ -153,14 +140,14 @@ ifdef LP64
|
|||||||
%.o: %.cpp
|
%.o: %.cpp
|
||||||
@echo Compiling $<
|
@echo Compiling $<
|
||||||
$(QUIETLY) $(REMOVE_TARGET)
|
$(QUIETLY) $(REMOVE_TARGET)
|
||||||
$(QUIETLY) $(COMPILE.CC) $(DEPFLAGS) -o $@ $< $(COMPILE_DONE)
|
$(QUIETLY) $(COMPILE.CXX) $(DEPFLAGS) -o $@ $< $(COMPILE_DONE)
|
||||||
else
|
else
|
||||||
%.o: %.cpp
|
%.o: %.cpp
|
||||||
@echo Compiling $<
|
@echo Compiling $<
|
||||||
$(QUIETLY) $(REMOVE_TARGET)
|
$(QUIETLY) $(REMOVE_TARGET)
|
||||||
$(QUIETLY) $(if $(findstring $@, $(NONPIC_OBJ_FILES)), \
|
$(QUIETLY) $(if $(findstring $@, $(NONPIC_OBJ_FILES)), \
|
||||||
$(subst $(VM_PICFLAG), ,$(COMPILE.CC)) $(DEPFLAGS) -o $@ $< $(COMPILE_DONE), \
|
$(subst $(VM_PICFLAG), ,$(COMPILE.CXX)) $(DEPFLAGS) -o $@ $< $(COMPILE_DONE), \
|
||||||
$(COMPILE.CC) $(DEPFLAGS) -o $@ $< $(COMPILE_DONE))
|
$(COMPILE.CXX) $(DEPFLAGS) -o $@ $< $(COMPILE_DONE))
|
||||||
endif
|
endif
|
||||||
|
|
||||||
%.o: %.s
|
%.o: %.s
|
||||||
@@ -170,13 +157,13 @@ endif
|
|||||||
|
|
||||||
%.s: %.cpp
|
%.s: %.cpp
|
||||||
@echo Generating assembly for $<
|
@echo Generating assembly for $<
|
||||||
$(QUIETLY) $(GENASM.CC) -o $@ $<
|
$(QUIETLY) $(GENASM.CXX) -o $@ $<
|
||||||
$(QUIETLY) $(DEMANGLE) $(COMPILE_DONE)
|
$(QUIETLY) $(DEMANGLE) $(COMPILE_DONE)
|
||||||
|
|
||||||
# Intermediate files (for debugging macros)
|
# Intermediate files (for debugging macros)
|
||||||
%.i: %.cpp
|
%.i: %.cpp
|
||||||
@echo Preprocessing $< to $@
|
@echo Preprocessing $< to $@
|
||||||
$(QUIETLY) $(PREPROCESS.CC) $< > $@ $(COMPILE_DONE)
|
$(QUIETLY) $(PREPROCESS.CXX) $< > $@ $(COMPILE_DONE)
|
||||||
|
|
||||||
# Override gnumake built-in rules which do sccs get operations badly.
|
# Override gnumake built-in rules which do sccs get operations badly.
|
||||||
# (They put the checked out code in the current directory, not in the
|
# (They put the checked out code in the current directory, not in the
|
||||||
|
|||||||
@@ -93,7 +93,7 @@ $(LIBSAPROC): $(SASRCFILES) $(SAMAPFILE)
|
|||||||
exit 1; \
|
exit 1; \
|
||||||
fi
|
fi
|
||||||
@echo Making SA debugger back-end...
|
@echo Making SA debugger back-end...
|
||||||
$(QUIETLY) $(CPP) \
|
$(QUIETLY) $(CXX) \
|
||||||
$(SYMFLAG) $(ARCHFLAG) $(SHARED_FLAG) $(PICFLAG) \
|
$(SYMFLAG) $(ARCHFLAG) $(SHARED_FLAG) $(PICFLAG) \
|
||||||
-I$(SASRCDIR) \
|
-I$(SASRCDIR) \
|
||||||
-I$(GENERATED) \
|
-I$(GENERATED) \
|
||||||
|
|||||||
@@ -22,38 +22,42 @@
|
|||||||
#
|
#
|
||||||
#
|
#
|
||||||
|
|
||||||
# Compiler-specific flags for sparcworks.
|
# If a SPEC is not set already, then use these defaults.
|
||||||
|
ifeq ($(SPEC),)
|
||||||
|
# Compiler-specific flags for sparcworks.
|
||||||
|
CC = cc
|
||||||
|
CXX = CC
|
||||||
|
|
||||||
# tell make which C and C++ compilers to use
|
# Note that this 'as' is an older version of the Sun Studio 'fbe', and will
|
||||||
CC = cc
|
# use the older style options. The 'fbe' options will match 'cc' and 'CC'.
|
||||||
CPP = CC
|
AS = /usr/ccs/bin/as
|
||||||
|
|
||||||
# Note that this 'as' is an older version of the Sun Studio 'fbe', and will
|
NM = /usr/ccs/bin/nm
|
||||||
# use the older style options. The 'fbe' options will match 'cc' and 'CC'.
|
NAWK = /bin/nawk
|
||||||
AS = /usr/ccs/bin/as
|
|
||||||
|
|
||||||
NM = /usr/ccs/bin/nm
|
MCS = /usr/ccs/bin/mcs
|
||||||
NAWK = /bin/nawk
|
STRIP = /usr/ccs/bin/strip
|
||||||
|
endif
|
||||||
|
|
||||||
REORDER_FLAG = -xF
|
REORDER_FLAG = -xF
|
||||||
|
|
||||||
# Check for the versions of C++ and C compilers ($CPP and $CC) used.
|
# Check for the versions of C++ and C compilers ($CXX and $CC) used.
|
||||||
|
|
||||||
# Get the last thing on the line that looks like x.x+ (x is a digit).
|
# Get the last thing on the line that looks like x.x+ (x is a digit).
|
||||||
COMPILER_REV := \
|
COMPILER_REV := \
|
||||||
$(shell $(CPP) -V 2>&1 | sed -n 's/^.*[ ,\t]C++[ ,\t]\([1-9]\.[0-9][0-9]*\).*/\1/p')
|
$(shell $(CXX) -V 2>&1 | sed -n 's/^.*[ ,\t]C++[ ,\t]\([1-9]\.[0-9][0-9]*\).*/\1/p')
|
||||||
C_COMPILER_REV := \
|
CC_COMPILER_REV := \
|
||||||
$(shell $(CC) -V 2>&1 | sed -n 's/^.*[ ,\t]C[ ,\t]\([1-9]\.[0-9][0-9]*\).*/\1/p')
|
$(shell $(CC) -V 2>&1 | sed -n 's/^.*[ ,\t]C[ ,\t]\([1-9]\.[0-9][0-9]*\).*/\1/p')
|
||||||
|
|
||||||
# Pick which compiler is validated
|
# Pick which compiler is validated
|
||||||
ifeq ($(JRE_RELEASE_VER),1.6.0)
|
ifeq ($(JRE_RELEASE_VER),1.6.0)
|
||||||
# Validated compiler for JDK6 is SS11 (5.8)
|
# Validated compiler for JDK6 is SS11 (5.8)
|
||||||
VALIDATED_COMPILER_REVS := 5.8
|
VALIDATED_COMPILER_REVS := 5.8
|
||||||
VALIDATED_C_COMPILER_REVS := 5.8
|
VALIDATED_CC_COMPILER_REVS := 5.8
|
||||||
else
|
else
|
||||||
# Validated compiler for JDK7 is SS12 update 1 + patches (5.10)
|
# Validated compiler for JDK7 is SS12 update 1 + patches (5.10)
|
||||||
VALIDATED_COMPILER_REVS := 5.10
|
VALIDATED_COMPILER_REVS := 5.10
|
||||||
VALIDATED_C_COMPILER_REVS := 5.10
|
VALIDATED_CC_COMPILER_REVS := 5.10
|
||||||
endif
|
endif
|
||||||
|
|
||||||
# Warning messages about not using the above validated versions
|
# Warning messages about not using the above validated versions
|
||||||
@@ -67,13 +71,13 @@ dummy_var_to_enforce_compiler_rev := $(shell \
|
|||||||
warning.)
|
warning.)
|
||||||
endif
|
endif
|
||||||
|
|
||||||
ENFORCE_C_COMPILER_REV${ENFORCE_C_COMPILER_REV} := $(strip ${VALIDATED_C_COMPILER_REVS})
|
ENFORCE_CC_COMPILER_REV${ENFORCE_CC_COMPILER_REV} := $(strip ${VALIDATED_CC_COMPILER_REVS})
|
||||||
ifeq ($(filter ${ENFORCE_C_COMPILER_REV},${C_COMPILER_REV}),)
|
ifeq ($(filter ${ENFORCE_CC_COMPILER_REV},${CC_COMPILER_REV}),)
|
||||||
PRINTABLE_C_REVS := $(subst $(shell echo ' '), or ,${ENFORCE_C_COMPILER_REV})
|
PRINTABLE_C_REVS := $(subst $(shell echo ' '), or ,${ENFORCE_CC_COMPILER_REV})
|
||||||
dummy_var_to_enforce_c_compiler_rev := $(shell \
|
dummy_var_to_enforce_c_compiler_rev := $(shell \
|
||||||
echo >&2 WARNING: You are using cc version ${C_COMPILER_REV} and \
|
echo >&2 WARNING: You are using cc version ${CC_COMPILER_REV} and \
|
||||||
should be using version ${PRINTABLE_C_REVS}.; \
|
should be using version ${PRINTABLE_C_REVS}.; \
|
||||||
echo >&2 Set ENFORCE_C_COMPILER_REV=${C_COMPILER_REV} to avoid this \
|
echo >&2 Set ENFORCE_CC_COMPILER_REV=${CC_COMPILER_REV} to avoid this \
|
||||||
warning.)
|
warning.)
|
||||||
endif
|
endif
|
||||||
|
|
||||||
@@ -98,7 +102,7 @@ JVM_CHECK_SYMBOLS = $(NM) -u -p $(LIBJVM.o) | \
|
|||||||
} \
|
} \
|
||||||
END { exit rc; }'
|
END { exit rc; }'
|
||||||
|
|
||||||
LINK_LIB.CC/PRE_HOOK += $(JVM_CHECK_SYMBOLS) || exit 1;
|
LINK_LIB.CXX/PRE_HOOK += $(JVM_CHECK_SYMBOLS) || exit 1;
|
||||||
|
|
||||||
# New architecture options started in SS12 (5.9), we need both styles to build.
|
# New architecture options started in SS12 (5.9), we need both styles to build.
|
||||||
# The older arch options for SS11 (5.8) or older and also for /usr/ccs/bin/as.
|
# The older arch options for SS11 (5.8) or older and also for /usr/ccs/bin/as.
|
||||||
@@ -518,7 +522,7 @@ endif
|
|||||||
#FASTDEBUG_CFLAGS += -Qoption ccfe -xglobalstatic
|
#FASTDEBUG_CFLAGS += -Qoption ccfe -xglobalstatic
|
||||||
|
|
||||||
ifeq (${COMPILER_REV_NUMERIC}, 502)
|
ifeq (${COMPILER_REV_NUMERIC}, 502)
|
||||||
COMPILER_DATE := $(shell $(CPP) -V 2>&1 | sed -n '/^.*[ ]C++[ ]\([1-9]\.[0-9][0-9]*\)/p' | awk '{ print $$NF; }')
|
COMPILER_DATE := $(shell $(CXX) -V 2>&1 | sed -n '/^.*[ ]C++[ ]\([1-9]\.[0-9][0-9]*\)/p' | awk '{ print $$NF; }')
|
||||||
ifeq (${COMPILER_DATE}, 2001/01/31)
|
ifeq (${COMPILER_DATE}, 2001/01/31)
|
||||||
# disable -g0 in fastdebug since SC6.1 dated 2001/01/31 seems to be buggy
|
# disable -g0 in fastdebug since SC6.1 dated 2001/01/31 seems to be buggy
|
||||||
# use an innocuous value because it will get -g if it's empty
|
# use an innocuous value because it will get -g if it's empty
|
||||||
@@ -557,9 +561,6 @@ else
|
|||||||
#LINK_INTO = LIBJVM
|
#LINK_INTO = LIBJVM
|
||||||
endif
|
endif
|
||||||
|
|
||||||
MCS = /usr/ccs/bin/mcs
|
|
||||||
STRIP = /usr/ccs/bin/strip
|
|
||||||
|
|
||||||
# Solaris platforms collect lots of redundant file-ident lines,
|
# Solaris platforms collect lots of redundant file-ident lines,
|
||||||
# to the point of wasting a significant percentage of file space.
|
# to the point of wasting a significant percentage of file space.
|
||||||
# (The text is stored in ELF .comment sections, contributed by
|
# (The text is stored in ELF .comment sections, contributed by
|
||||||
@@ -568,7 +569,7 @@ STRIP = /usr/ccs/bin/strip
|
|||||||
# removing repeated lines. The data can be extracted from
|
# removing repeated lines. The data can be extracted from
|
||||||
# binaries in the field by using "mcs -p libjvm.so" or the older
|
# binaries in the field by using "mcs -p libjvm.so" or the older
|
||||||
# command "what libjvm.so".
|
# command "what libjvm.so".
|
||||||
LINK_LIB.CC/POST_HOOK += $(MCS) -c $@ || exit 1;
|
LINK_LIB.CXX/POST_HOOK += $(MCS) -c $@ || exit 1;
|
||||||
# (The exit 1 is necessary to cause a build failure if the command fails and
|
# (The exit 1 is necessary to cause a build failure if the command fails and
|
||||||
# multiple commands are strung together, and the final semicolon is necessary
|
# multiple commands are strung together, and the final semicolon is necessary
|
||||||
# since the hook must terminate itself as a valid command.)
|
# since the hook must terminate itself as a valid command.)
|
||||||
@@ -576,7 +577,7 @@ LINK_LIB.CC/POST_HOOK += $(MCS) -c $@ || exit 1;
|
|||||||
# Also, strip debug and line number information (worth about 1.7Mb).
|
# Also, strip debug and line number information (worth about 1.7Mb).
|
||||||
# If we can create .debuginfo files, then the VM is stripped in vm.make
|
# If we can create .debuginfo files, then the VM is stripped in vm.make
|
||||||
# and this macro is not used.
|
# and this macro is not used.
|
||||||
STRIP_LIB.CC/POST_HOOK = $(STRIP) -x $@ || exit 1;
|
STRIP_LIB.CXX/POST_HOOK = $(STRIP) -x $@ || exit 1;
|
||||||
# STRIP_LIB.CC/POST_HOOK is incorporated into LINK_LIB.CC/POST_HOOK
|
# STRIP_LIB.CXX/POST_HOOK is incorporated into LINK_LIB.CXX/POST_HOOK
|
||||||
# in certain configurations, such as product.make. Other configurations,
|
# in certain configurations, such as product.make. Other configurations,
|
||||||
# such as debug.make, do not include the strip operation.
|
# such as debug.make, do not include the strip operation.
|
||||||
|
|||||||
@@ -107,8 +107,8 @@ $(adjust-mflags): $(GAMMADIR)/make/$(Platform_os_family)/makefiles/adjust-mflags
|
|||||||
the_vm: vm_build_preliminaries $(adjust-mflags)
|
the_vm: vm_build_preliminaries $(adjust-mflags)
|
||||||
@$(MAKE) -f vm.make $(MFLAGS-adjusted)
|
@$(MAKE) -f vm.make $(MFLAGS-adjusted)
|
||||||
|
|
||||||
install: the_vm
|
install gamma: the_vm
|
||||||
@$(MAKE) -f vm.make install
|
@$(MAKE) -f vm.make $@
|
||||||
|
|
||||||
# next rules support "make foo.[oi]"
|
# next rules support "make foo.[oi]"
|
||||||
|
|
||||||
|
|||||||
@@ -76,16 +76,20 @@ BUILD_TARGET = -DHOTSPOT_BUILD_TARGET="\"$(TARGET)\""
|
|||||||
BUILD_USER = -DHOTSPOT_BUILD_USER="\"$(HOTSPOT_BUILD_USER)\""
|
BUILD_USER = -DHOTSPOT_BUILD_USER="\"$(HOTSPOT_BUILD_USER)\""
|
||||||
VM_DISTRO = -DHOTSPOT_VM_DISTRO="\"$(HOTSPOT_VM_DISTRO)\""
|
VM_DISTRO = -DHOTSPOT_VM_DISTRO="\"$(HOTSPOT_VM_DISTRO)\""
|
||||||
|
|
||||||
CPPFLAGS = \
|
CXXFLAGS = \
|
||||||
${SYSDEFS} \
|
${SYSDEFS} \
|
||||||
${INCLUDES} \
|
${INCLUDES} \
|
||||||
${BUILD_VERSION} \
|
${BUILD_VERSION} \
|
||||||
${BUILD_TARGET} \
|
${BUILD_TARGET} \
|
||||||
${BUILD_USER} \
|
${BUILD_USER} \
|
||||||
${HS_LIB_ARCH} \
|
${HS_LIB_ARCH} \
|
||||||
${JRE_VERSION} \
|
|
||||||
${VM_DISTRO}
|
${VM_DISTRO}
|
||||||
|
|
||||||
|
# This is VERY important! The version define must only be supplied to vm_version.o
|
||||||
|
# If not, ccache will not re-use the cache at all, since the version string might contain
|
||||||
|
# a time and date.
|
||||||
|
vm_version.o: CXXFLAGS += ${JRE_VERSION}
|
||||||
|
|
||||||
# CFLAGS_WARN holds compiler options to suppress/enable warnings.
|
# CFLAGS_WARN holds compiler options to suppress/enable warnings.
|
||||||
CFLAGS += $(CFLAGS_WARN)
|
CFLAGS += $(CFLAGS_WARN)
|
||||||
|
|
||||||
@@ -93,7 +97,7 @@ CFLAGS += $(CFLAGS_WARN)
|
|||||||
CFLAGS += $(CFLAGS/NOEX)
|
CFLAGS += $(CFLAGS/NOEX)
|
||||||
|
|
||||||
# Extra flags from gnumake's invocation or environment
|
# Extra flags from gnumake's invocation or environment
|
||||||
CFLAGS += $(EXTRA_CFLAGS)
|
CFLAGS += $(EXTRA_CFLAGS) -DINCLUDE_TRACE
|
||||||
|
|
||||||
# Math Library (libm.so), do not use -lm.
|
# Math Library (libm.so), do not use -lm.
|
||||||
# There might be two versions of libm.so on the build system:
|
# There might be two versions of libm.so on the build system:
|
||||||
@@ -160,6 +164,10 @@ SOURCE_PATHS+=$(HS_COMMON_SRC)/os/posix/vm
|
|||||||
SOURCE_PATHS+=$(HS_COMMON_SRC)/cpu/$(Platform_arch)/vm
|
SOURCE_PATHS+=$(HS_COMMON_SRC)/cpu/$(Platform_arch)/vm
|
||||||
SOURCE_PATHS+=$(HS_COMMON_SRC)/os_cpu/$(Platform_os_arch)/vm
|
SOURCE_PATHS+=$(HS_COMMON_SRC)/os_cpu/$(Platform_os_arch)/vm
|
||||||
|
|
||||||
|
SOURCE_PATHS+=$(shell if [ -d $(HS_ALT_SRC)/share/vm/jfr ]; then \
|
||||||
|
find $(HS_ALT_SRC)/share/vm/jfr -type d; \
|
||||||
|
fi)
|
||||||
|
|
||||||
CORE_PATHS=$(foreach path,$(SOURCE_PATHS),$(call altsrc,$(path)) $(path))
|
CORE_PATHS=$(foreach path,$(SOURCE_PATHS),$(call altsrc,$(path)) $(path))
|
||||||
CORE_PATHS+=$(GENERATED)/jvmtifiles
|
CORE_PATHS+=$(GENERATED)/jvmtifiles
|
||||||
|
|
||||||
@@ -261,17 +269,17 @@ endif
|
|||||||
endif
|
endif
|
||||||
|
|
||||||
ifdef USE_GCC
|
ifdef USE_GCC
|
||||||
LINK_VM = $(LINK_LIB.c)
|
|
||||||
else
|
|
||||||
LINK_VM = $(LINK_LIB.CC)
|
LINK_VM = $(LINK_LIB.CC)
|
||||||
|
else
|
||||||
|
LINK_VM = $(LINK_LIB.CXX)
|
||||||
endif
|
endif
|
||||||
# making the library:
|
# making the library:
|
||||||
$(LIBJVM): $(LIBJVM.o) $(LIBJVM_MAPFILE)
|
$(LIBJVM): $(LIBJVM.o) $(LIBJVM_MAPFILE)
|
||||||
ifeq ($(filter -sbfast -xsbfast, $(CFLAGS_BROWSE)),)
|
ifeq ($(filter -sbfast -xsbfast, $(CFLAGS_BROWSE)),)
|
||||||
@echo Linking vm...
|
@echo Linking vm...
|
||||||
$(QUIETLY) $(LINK_LIB.CC/PRE_HOOK)
|
$(QUIETLY) $(LINK_LIB.CXX/PRE_HOOK)
|
||||||
$(QUIETLY) $(LINK_VM) $(LFLAGS_VM) -o $@ $(LIBJVM.o) $(LIBS_VM)
|
$(QUIETLY) $(LINK_VM) $(LFLAGS_VM) -o $@ $(LIBJVM.o) $(LIBS_VM)
|
||||||
$(QUIETLY) $(LINK_LIB.CC/POST_HOOK)
|
$(QUIETLY) $(LINK_LIB.CXX/POST_HOOK)
|
||||||
$(QUIETLY) rm -f $@.1 && ln -s $@ $@.1
|
$(QUIETLY) rm -f $@.1 && ln -s $@ $@.1
|
||||||
$(QUIETLY) [ -f $(LIBJVM_G) ] || ln -s $@ $(LIBJVM_G)
|
$(QUIETLY) [ -f $(LIBJVM_G) ] || ln -s $@ $(LIBJVM_G)
|
||||||
$(QUIETLY) [ -f $(LIBJVM_G).1 ] || ln -s $@.1 $(LIBJVM_G).1
|
$(QUIETLY) [ -f $(LIBJVM_G).1 ] || ln -s $@.1 $(LIBJVM_G).1
|
||||||
|
|||||||
@@ -1,28 +0,0 @@
|
|||||||
Copyright (c) %YEARS%, Oracle and/or its affiliates. All rights reserved.
|
|
||||||
|
|
||||||
Redistribution and use in source and binary forms, with or without
|
|
||||||
modification, are permitted provided that the following conditions
|
|
||||||
are met:
|
|
||||||
|
|
||||||
- Redistributions of source code must retain the above copyright
|
|
||||||
notice, this list of conditions and the following disclaimer.
|
|
||||||
|
|
||||||
- Redistributions in binary form must reproduce the above copyright
|
|
||||||
notice, this list of conditions and the following disclaimer in the
|
|
||||||
documentation and/or other materials provided with the distribution.
|
|
||||||
|
|
||||||
- Neither the name of Oracle nor the names of its
|
|
||||||
contributors may be used to endorse or promote products derived
|
|
||||||
from this software without specific prior written permission.
|
|
||||||
|
|
||||||
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
|
|
||||||
IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
|
|
||||||
THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
|
|
||||||
PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
|
|
||||||
CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
|
|
||||||
EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
|
|
||||||
PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
|
|
||||||
PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
|
|
||||||
LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
|
|
||||||
NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
|
|
||||||
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
||||||
@@ -35,6 +35,8 @@ cl 2>&1 | grep "IA-64" >NUL
|
|||||||
if %errorlevel% == 0 goto isia64
|
if %errorlevel% == 0 goto isia64
|
||||||
cl 2>&1 | grep "AMD64" >NUL
|
cl 2>&1 | grep "AMD64" >NUL
|
||||||
if %errorlevel% == 0 goto amd64
|
if %errorlevel% == 0 goto amd64
|
||||||
|
cl 2>&1 | grep "x64" >NUL
|
||||||
|
if %errorlevel% == 0 goto amd64
|
||||||
set ARCH=x86
|
set ARCH=x86
|
||||||
set BUILDARCH=i486
|
set BUILDARCH=i486
|
||||||
set Platform_arch=x86
|
set Platform_arch=x86
|
||||||
|
|||||||
@@ -297,6 +297,10 @@ $(variantDir)\local.make: checks
|
|||||||
@ echo BUILDARCH=$(BUILDARCH) >> $@
|
@ echo BUILDARCH=$(BUILDARCH) >> $@
|
||||||
@ echo Platform_arch=$(Platform_arch) >> $@
|
@ echo Platform_arch=$(Platform_arch) >> $@
|
||||||
@ echo Platform_arch_model=$(Platform_arch_model) >> $@
|
@ echo Platform_arch_model=$(Platform_arch_model) >> $@
|
||||||
|
@ echo CXX=$(CXX) >> $@
|
||||||
|
@ echo LD=$(LD) >> $@
|
||||||
|
@ echo MT=$(MT) >> $@
|
||||||
|
@ echo RC=$(RC) >> $@
|
||||||
@ sh $(WorkSpace)/make/windows/get_msc_ver.sh >> $@
|
@ sh $(WorkSpace)/make/windows/get_msc_ver.sh >> $@
|
||||||
|
|
||||||
checks: checkVariant checkWorkSpace checkSA
|
checks: checkVariant checkWorkSpace checkSA
|
||||||
|
|||||||
@@ -57,10 +57,10 @@ DUMPBIN="link.exe /dump"
|
|||||||
|
|
||||||
# When called from IDE the first param should contain the link version, otherwise may be nill
|
# When called from IDE the first param should contain the link version, otherwise may be nill
|
||||||
if [ "x$1" != "x" ]; then
|
if [ "x$1" != "x" ]; then
|
||||||
LINK_VER="$1"
|
LD_VER="$1"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [ "x$LINK_VER" != "x800" -a "x$LINK_VER" != "x900" -a "x$LINK_VER" != "x1000" ]; then
|
if [ "x$LD_VER" != "x800" -a "x$LD_VER" != "x900" -a "x$LD_VER" != "x1000" ]; then
|
||||||
$DUMPBIN /symbols *.obj | "$GREP" "??_7.*@@6B@" | "$GREP" -v "type_info" | "$AWK" '{print $7}' | "$SORT" | "$UNIQ" > vm2.def
|
$DUMPBIN /symbols *.obj | "$GREP" "??_7.*@@6B@" | "$GREP" -v "type_info" | "$AWK" '{print $7}' | "$SORT" | "$UNIQ" > vm2.def
|
||||||
else
|
else
|
||||||
# Can't use pipes when calling cl.exe or link.exe from IDE. Using transit file vm3.def
|
# Can't use pipes when calling cl.exe or link.exe from IDE. Using transit file vm3.def
|
||||||
|
|||||||
@@ -73,6 +73,13 @@ done
|
|||||||
|
|
||||||
BASE_PATHS="${BASE_PATHS} ${GENERATED}/jvmtifiles"
|
BASE_PATHS="${BASE_PATHS} ${GENERATED}/jvmtifiles"
|
||||||
|
|
||||||
|
if [ -d "${ALTSRC}/share/vm/jfr" ]; then
|
||||||
|
BASE_PATHS="${BASE_PATHS} ${ALTSRC}/share/vm/jfr/agent"
|
||||||
|
BASE_PATHS="${BASE_PATHS} ${ALTSRC}/share/vm/jfr/agent/isolated_deps/util"
|
||||||
|
BASE_PATHS="${BASE_PATHS} ${ALTSRC}/share/vm/jfr/jvm"
|
||||||
|
BASE_PATHS="${BASE_PATHS} ${ALTSRC}/share/vm/jfr"
|
||||||
|
fi
|
||||||
|
|
||||||
CORE_PATHS="${BASE_PATHS}"
|
CORE_PATHS="${BASE_PATHS}"
|
||||||
# shared is already in BASE_PATHS. Should add vm/memory but that one is also in BASE_PATHS.
|
# shared is already in BASE_PATHS. Should add vm/memory but that one is also in BASE_PATHS.
|
||||||
if [ -d "${ALTSRC}/share/vm/gc_implementation" ]; then
|
if [ -d "${ALTSRC}/share/vm/gc_implementation" ]; then
|
||||||
|
|||||||
@@ -72,8 +72,8 @@ else
|
|||||||
echo "MSC_VER_RAW=$MSC_VER_RAW"
|
echo "MSC_VER_RAW=$MSC_VER_RAW"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [ "x$FORCE_LINK_VER" != "x" ]; then
|
if [ "x$FORCE_LD_VER" != "x" ]; then
|
||||||
echo "LINK_VER=$FORCE_LINK_VER"
|
echo "LD_VER=$FORCE_LD_VER"
|
||||||
else
|
else
|
||||||
# use the "link" command that is co-located with the "cl" command
|
# use the "link" command that is co-located with the "cl" command
|
||||||
cl_cmd=`which cl`
|
cl_cmd=`which cl`
|
||||||
@@ -83,11 +83,11 @@ else
|
|||||||
# which can't find "cl" so just use which ever "link" we find
|
# which can't find "cl" so just use which ever "link" we find
|
||||||
link_cmd="link"
|
link_cmd="link"
|
||||||
fi
|
fi
|
||||||
LINK_VER_RAW=`"$link_cmd" 2>&1 | "$HEAD" -n 1 | "$SED" 's/.*Version[\ ]*\([0-9][0-9.]*\).*/\1/'`
|
LD_VER_RAW=`"$link_cmd" 2>&1 | "$HEAD" -n 1 | "$SED" 's/.*Version[\ ]*\([0-9][0-9.]*\).*/\1/'`
|
||||||
LINK_VER_MAJOR=`"$ECHO" $LINK_VER_RAW | "$CUT" -d'.' -f1`
|
LD_VER_MAJOR=`"$ECHO" $LD_VER_RAW | "$CUT" -d'.' -f1`
|
||||||
LINK_VER_MINOR=`"$ECHO" $LINK_VER_RAW | "$CUT" -d'.' -f2`
|
LD_VER_MINOR=`"$ECHO" $LD_VER_RAW | "$CUT" -d'.' -f2`
|
||||||
LINK_VER_MICRO=`"$ECHO" $LINK_VER_RAW | "$CUT" -d'.' -f3`
|
LD_VER_MICRO=`"$ECHO" $LD_VER_RAW | "$CUT" -d'.' -f3`
|
||||||
LINK_VER=`"$EXPR" $LINK_VER_MAJOR \* 100 + $LINK_VER_MINOR`
|
LD_VER=`"$EXPR" $LD_VER_MAJOR \* 100 + $LD_VER_MINOR`
|
||||||
echo "LINK_VER=$LINK_VER"
|
echo "LD_VER=$LD_VER"
|
||||||
echo "LINK_VER_RAW=$LINK_VER_RAW"
|
echo "LD_VER_RAW=$LD_VER_RAW"
|
||||||
fi
|
fi
|
||||||
|
|||||||
@@ -45,14 +45,25 @@ ADLCFLAGS=-q -T -D_LP64
|
|||||||
ADLCFLAGS=-q -T -U_LP64
|
ADLCFLAGS=-q -T -U_LP64
|
||||||
!endif
|
!endif
|
||||||
|
|
||||||
ADLC_CPP_FLAGS=$(CPP_FLAGS) /D _CRT_SECURE_NO_WARNINGS /D _CRT_SECURE_NO_DEPRECATE
|
ADLC_CXX_FLAGS=$(CXX_FLAGS) /D _CRT_SECURE_NO_WARNINGS /D _CRT_SECURE_NO_DEPRECATE
|
||||||
|
|
||||||
CPP_INCLUDE_DIRS=\
|
CXX_INCLUDE_DIRS=\
|
||||||
/I "..\generated" \
|
/I "..\generated" \
|
||||||
/I "$(WorkSpace)\src\share\vm" \
|
/I "$(WorkSpace)\src\share\vm" \
|
||||||
/I "$(WorkSpace)\src\os\windows\vm" \
|
/I "$(WorkSpace)\src\os\windows\vm" \
|
||||||
/I "$(WorkSpace)\src\cpu\$(Platform_arch)\vm"
|
/I "$(WorkSpace)\src\cpu\$(Platform_arch)\vm"
|
||||||
|
|
||||||
|
!if "$(Platform_arch_model)" == "$(Platform_arch)"
|
||||||
|
SOURCES_AD=\
|
||||||
|
$(WorkSpace)/src/cpu/$(Platform_arch)/vm/$(Platform_arch_model).ad \
|
||||||
|
$(WorkSpace)/src/os_cpu/windows_$(Platform_arch)/vm/windows_$(Platform_arch_model).ad
|
||||||
|
!else
|
||||||
|
SOURCES_AD=\
|
||||||
|
$(WorkSpace)/src/cpu/$(Platform_arch)/vm/$(Platform_arch_model).ad \
|
||||||
|
$(WorkSpace)/src/cpu/$(Platform_arch)/vm/$(Platform_arch).ad \
|
||||||
|
$(WorkSpace)/src/os_cpu/windows_$(Platform_arch)/vm/windows_$(Platform_arch_model).ad
|
||||||
|
!endif
|
||||||
|
|
||||||
# NOTE! If you add any files here, you must also update GENERATED_NAMES_IN_DIR
|
# NOTE! If you add any files here, you must also update GENERATED_NAMES_IN_DIR
|
||||||
# and ProjectCreatorIDEOptions in projectcreator.make.
|
# and ProjectCreatorIDEOptions in projectcreator.make.
|
||||||
GENERATED_NAMES=\
|
GENERATED_NAMES=\
|
||||||
@@ -83,14 +94,14 @@ GENERATED_NAMES_IN_DIR=\
|
|||||||
$(AdlcOutDir)\dfa_$(Platform_arch_model).cpp
|
$(AdlcOutDir)\dfa_$(Platform_arch_model).cpp
|
||||||
|
|
||||||
{$(WorkSpace)\src\share\vm\adlc}.cpp.obj::
|
{$(WorkSpace)\src\share\vm\adlc}.cpp.obj::
|
||||||
$(CPP) $(ADLC_CPP_FLAGS) $(EXH_FLAGS) $(CPP_INCLUDE_DIRS) /c $<
|
$(CXX) $(ADLC_CXX_FLAGS) $(EXH_FLAGS) $(CXX_INCLUDE_DIRS) /c $<
|
||||||
|
|
||||||
{$(WorkSpace)\src\share\vm\opto}.cpp.obj::
|
{$(WorkSpace)\src\share\vm\opto}.cpp.obj::
|
||||||
$(CPP) $(ADLC_CPP_FLAGS) $(EXH_FLAGS) $(CPP_INCLUDE_DIRS) /c $<
|
$(CXX) $(ADLC_CXX_FLAGS) $(EXH_FLAGS) $(CXX_INCLUDE_DIRS) /c $<
|
||||||
|
|
||||||
adlc.exe: main.obj adlparse.obj archDesc.obj arena.obj dfa.obj dict2.obj filebuff.obj \
|
adlc.exe: main.obj adlparse.obj archDesc.obj arena.obj dfa.obj dict2.obj filebuff.obj \
|
||||||
forms.obj formsopt.obj formssel.obj opcodes.obj output_c.obj output_h.obj
|
forms.obj formsopt.obj formssel.obj opcodes.obj output_c.obj output_h.obj
|
||||||
$(LINK) $(LINK_FLAGS) /subsystem:console /out:$@ $**
|
$(LD) $(LD_FLAGS) /subsystem:console /out:$@ $**
|
||||||
!if "$(MT)" != ""
|
!if "$(MT)" != ""
|
||||||
# The previous link command created a .manifest file that we want to
|
# The previous link command created a .manifest file that we want to
|
||||||
# insert into the linked artifact so we do not need to track it
|
# insert into the linked artifact so we do not need to track it
|
||||||
@@ -105,7 +116,6 @@ $(GENERATED_NAMES_IN_DIR): $(Platform_arch_model).ad adlc.exe
|
|||||||
$(ADLC) $(ADLCFLAGS) $(Platform_arch_model).ad
|
$(ADLC) $(ADLCFLAGS) $(Platform_arch_model).ad
|
||||||
mv $(GENERATED_NAMES) $(AdlcOutDir)/
|
mv $(GENERATED_NAMES) $(AdlcOutDir)/
|
||||||
|
|
||||||
$(Platform_arch_model).ad: $(WorkSpace)/src/cpu/$(Platform_arch)/vm/$(Platform_arch_model).ad $(WorkSpace)/src/os_cpu/windows_$(Platform_arch)/vm/windows_$(Platform_arch_model).ad
|
$(Platform_arch_model).ad: $(SOURCES_AD)
|
||||||
rm -f $(Platform_arch_model).ad
|
rm -f $(Platform_arch_model).ad
|
||||||
cat $(WorkSpace)/src/cpu/$(Platform_arch)/vm/$(Platform_arch_model).ad \
|
cat $(SOURCES_AD) >$(Platform_arch_model).ad
|
||||||
$(WorkSpace)/src/os_cpu/windows_$(Platform_arch)/vm/windows_$(Platform_arch_model).ad >$(Platform_arch_model).ad
|
|
||||||
|
|||||||
@@ -23,9 +23,11 @@
|
|||||||
#
|
#
|
||||||
|
|
||||||
# Generic compiler settings
|
# Generic compiler settings
|
||||||
CPP=cl.exe
|
!if "x$(CXX)" == "x"
|
||||||
|
CXX=cl.exe
|
||||||
|
!endif
|
||||||
|
|
||||||
# CPP Flags: (these vary slightly from VC6->VS2003->VS2005 compilers)
|
# CXX Flags: (these vary slightly from VC6->VS2003->VS2005 compilers)
|
||||||
# /nologo Supress copyright message at every cl.exe startup
|
# /nologo Supress copyright message at every cl.exe startup
|
||||||
# /W3 Warning level 3
|
# /W3 Warning level 3
|
||||||
# /Zi Include debugging information
|
# /Zi Include debugging information
|
||||||
@@ -50,47 +52,47 @@ CPP=cl.exe
|
|||||||
# improving the quality of crash log stack traces involving jvm.dll.
|
# improving the quality of crash log stack traces involving jvm.dll.
|
||||||
|
|
||||||
# These are always used in all compiles
|
# These are always used in all compiles
|
||||||
CPP_FLAGS=/nologo /W3 /WX
|
CXX_FLAGS=/nologo /W3 /WX
|
||||||
|
|
||||||
# Let's add debug information always too.
|
# Let's add debug information always too.
|
||||||
CPP_FLAGS=$(CPP_FLAGS) /Zi
|
CXX_FLAGS=$(CXX_FLAGS) /Zi
|
||||||
|
|
||||||
# Based on BUILDARCH we add some flags and select the default compiler name
|
# Based on BUILDARCH we add some flags and select the default compiler name
|
||||||
!if "$(BUILDARCH)" == "ia64"
|
!if "$(BUILDARCH)" == "ia64"
|
||||||
MACHINE=IA64
|
MACHINE=IA64
|
||||||
DEFAULT_COMPILER_NAME=VS2003
|
DEFAULT_COMPILER_NAME=VS2003
|
||||||
CPP_FLAGS=$(CPP_FLAGS) /D "CC_INTERP" /D "_LP64" /D "IA64"
|
CXX_FLAGS=$(CXX_FLAGS) /D "CC_INTERP" /D "_LP64" /D "IA64"
|
||||||
!endif
|
!endif
|
||||||
|
|
||||||
!if "$(BUILDARCH)" == "amd64"
|
!if "$(BUILDARCH)" == "amd64"
|
||||||
MACHINE=AMD64
|
MACHINE=AMD64
|
||||||
DEFAULT_COMPILER_NAME=VS2005
|
DEFAULT_COMPILER_NAME=VS2005
|
||||||
CPP_FLAGS=$(CPP_FLAGS) /D "_LP64" /D "AMD64"
|
CXX_FLAGS=$(CXX_FLAGS) /D "_LP64" /D "AMD64"
|
||||||
LP64=1
|
LP64=1
|
||||||
!endif
|
!endif
|
||||||
|
|
||||||
!if "$(BUILDARCH)" == "i486"
|
!if "$(BUILDARCH)" == "i486"
|
||||||
MACHINE=I386
|
MACHINE=I386
|
||||||
DEFAULT_COMPILER_NAME=VS2003
|
DEFAULT_COMPILER_NAME=VS2003
|
||||||
CPP_FLAGS=$(CPP_FLAGS) /D "IA32"
|
CXX_FLAGS=$(CXX_FLAGS) /D "IA32"
|
||||||
!endif
|
!endif
|
||||||
|
|
||||||
# Sanity check, this is the default if not amd64, ia64, or i486
|
# Sanity check, this is the default if not amd64, ia64, or i486
|
||||||
!ifndef DEFAULT_COMPILER_NAME
|
!ifndef DEFAULT_COMPILER_NAME
|
||||||
CPP=ARCH_ERROR
|
CXX=ARCH_ERROR
|
||||||
!endif
|
!endif
|
||||||
|
|
||||||
CPP_FLAGS=$(CPP_FLAGS) /D "WIN32" /D "_WINDOWS"
|
CXX_FLAGS=$(CXX_FLAGS) /D "WIN32" /D "_WINDOWS"
|
||||||
# Must specify this for sharedRuntimeTrig.cpp
|
# Must specify this for sharedRuntimeTrig.cpp
|
||||||
CPP_FLAGS=$(CPP_FLAGS) /D "VM_LITTLE_ENDIAN"
|
CXX_FLAGS=$(CXX_FLAGS) /D "VM_LITTLE_ENDIAN"
|
||||||
|
|
||||||
# Used for platform dispatching
|
# Used for platform dispatching
|
||||||
CPP_FLAGS=$(CPP_FLAGS) /D TARGET_OS_FAMILY_windows
|
CXX_FLAGS=$(CXX_FLAGS) /D TARGET_OS_FAMILY_windows
|
||||||
CPP_FLAGS=$(CPP_FLAGS) /D TARGET_ARCH_$(Platform_arch)
|
CXX_FLAGS=$(CXX_FLAGS) /D TARGET_ARCH_$(Platform_arch)
|
||||||
CPP_FLAGS=$(CPP_FLAGS) /D TARGET_ARCH_MODEL_$(Platform_arch_model)
|
CXX_FLAGS=$(CXX_FLAGS) /D TARGET_ARCH_MODEL_$(Platform_arch_model)
|
||||||
CPP_FLAGS=$(CPP_FLAGS) /D TARGET_OS_ARCH_windows_$(Platform_arch)
|
CXX_FLAGS=$(CXX_FLAGS) /D TARGET_OS_ARCH_windows_$(Platform_arch)
|
||||||
CPP_FLAGS=$(CPP_FLAGS) /D TARGET_OS_ARCH_MODEL_windows_$(Platform_arch_model)
|
CXX_FLAGS=$(CXX_FLAGS) /D TARGET_OS_ARCH_MODEL_windows_$(Platform_arch_model)
|
||||||
CPP_FLAGS=$(CPP_FLAGS) /D TARGET_COMPILER_visCPP
|
CXX_FLAGS=$(CXX_FLAGS) /D TARGET_COMPILER_visCPP
|
||||||
|
|
||||||
|
|
||||||
# MSC_VER is a 4 digit number that tells us what compiler is being used
|
# MSC_VER is a 4 digit number that tells us what compiler is being used
|
||||||
@@ -150,14 +152,14 @@ MS_RUNTIME_OPTION = /MTd /D "_DEBUG"
|
|||||||
# Always add the _STATIC_CPPLIB flag
|
# Always add the _STATIC_CPPLIB flag
|
||||||
STATIC_CPPLIB_OPTION = /D _STATIC_CPPLIB /D _DISABLE_DEPRECATE_STATIC_CPPLIB
|
STATIC_CPPLIB_OPTION = /D _STATIC_CPPLIB /D _DISABLE_DEPRECATE_STATIC_CPPLIB
|
||||||
MS_RUNTIME_OPTION = $(MS_RUNTIME_OPTION) $(STATIC_CPPLIB_OPTION)
|
MS_RUNTIME_OPTION = $(MS_RUNTIME_OPTION) $(STATIC_CPPLIB_OPTION)
|
||||||
CPP_FLAGS=$(CPP_FLAGS) $(MS_RUNTIME_OPTION)
|
CXX_FLAGS=$(CXX_FLAGS) $(MS_RUNTIME_OPTION)
|
||||||
|
|
||||||
# How /GX option is spelled
|
# How /GX option is spelled
|
||||||
GX_OPTION = /GX
|
GX_OPTION = /GX
|
||||||
|
|
||||||
# Optimization settings for various versions of the compilers and types of
|
# Optimization settings for various versions of the compilers and types of
|
||||||
# builds. Three basic sets of settings: product, fastdebug, and debug.
|
# builds. Three basic sets of settings: product, fastdebug, and debug.
|
||||||
# These get added into CPP_FLAGS as needed by other makefiles.
|
# These get added into CXX_FLAGS as needed by other makefiles.
|
||||||
!if "$(COMPILER_NAME)" == "VC6"
|
!if "$(COMPILER_NAME)" == "VC6"
|
||||||
PRODUCT_OPT_OPTION = /Ox /Os /Gy /GF
|
PRODUCT_OPT_OPTION = /Ox /Os /Gy /GF
|
||||||
FASTDEBUG_OPT_OPTION = /Ox /Os /Gy /GF
|
FASTDEBUG_OPT_OPTION = /Ox /Os /Gy /GF
|
||||||
@@ -180,34 +182,40 @@ GX_OPTION = /EHsc
|
|||||||
# externals at link time. Even with /GS-, you need bufferoverflowU.lib.
|
# externals at link time. Even with /GS-, you need bufferoverflowU.lib.
|
||||||
# NOTE: Currently we decided to not use /GS-
|
# NOTE: Currently we decided to not use /GS-
|
||||||
BUFFEROVERFLOWLIB = bufferoverflowU.lib
|
BUFFEROVERFLOWLIB = bufferoverflowU.lib
|
||||||
LINK_FLAGS = /manifest $(LINK_FLAGS) $(BUFFEROVERFLOWLIB)
|
LD_FLAGS = /manifest $(LD_FLAGS) $(BUFFEROVERFLOWLIB)
|
||||||
# Manifest Tool - used in VS2005 and later to adjust manifests stored
|
# Manifest Tool - used in VS2005 and later to adjust manifests stored
|
||||||
# as resources inside build artifacts.
|
# as resources inside build artifacts.
|
||||||
|
!if "x$(MT)" == "x"
|
||||||
MT=mt.exe
|
MT=mt.exe
|
||||||
!endif
|
!endif
|
||||||
|
!endif
|
||||||
|
|
||||||
!if "$(COMPILER_NAME)" == "VS2008"
|
!if "$(COMPILER_NAME)" == "VS2008"
|
||||||
PRODUCT_OPT_OPTION = /O2 /Oy-
|
PRODUCT_OPT_OPTION = /O2 /Oy-
|
||||||
FASTDEBUG_OPT_OPTION = /O2 /Oy-
|
FASTDEBUG_OPT_OPTION = /O2 /Oy-
|
||||||
DEBUG_OPT_OPTION = /Od
|
DEBUG_OPT_OPTION = /Od
|
||||||
GX_OPTION = /EHsc
|
GX_OPTION = /EHsc
|
||||||
LINK_FLAGS = /manifest $(LINK_FLAGS)
|
LD_FLAGS = /manifest $(LD_FLAGS)
|
||||||
# Manifest Tool - used in VS2005 and later to adjust manifests stored
|
# Manifest Tool - used in VS2005 and later to adjust manifests stored
|
||||||
# as resources inside build artifacts.
|
# as resources inside build artifacts.
|
||||||
|
!if "x$(MT)" == "x"
|
||||||
MT=mt.exe
|
MT=mt.exe
|
||||||
!endif
|
!endif
|
||||||
|
!endif
|
||||||
|
|
||||||
!if "$(COMPILER_NAME)" == "VS2010"
|
!if "$(COMPILER_NAME)" == "VS2010"
|
||||||
PRODUCT_OPT_OPTION = /O2 /Oy-
|
PRODUCT_OPT_OPTION = /O2 /Oy-
|
||||||
FASTDEBUG_OPT_OPTION = /O2 /Oy-
|
FASTDEBUG_OPT_OPTION = /O2 /Oy-
|
||||||
DEBUG_OPT_OPTION = /Od
|
DEBUG_OPT_OPTION = /Od
|
||||||
GX_OPTION = /EHsc
|
GX_OPTION = /EHsc
|
||||||
LINK_FLAGS = /manifest $(LINK_FLAGS)
|
LD_FLAGS = /manifest $(LD_FLAGS)
|
||||||
# Manifest Tool - used in VS2005 and later to adjust manifests stored
|
# Manifest Tool - used in VS2005 and later to adjust manifests stored
|
||||||
# as resources inside build artifacts.
|
# as resources inside build artifacts.
|
||||||
|
!if "x$(MT)" == "x"
|
||||||
MT=mt.exe
|
MT=mt.exe
|
||||||
|
!endif
|
||||||
!if "$(BUILDARCH)" == "i486"
|
!if "$(BUILDARCH)" == "i486"
|
||||||
LINK_FLAGS = /SAFESEH $(LINK_FLAGS)
|
LD_FLAGS = /SAFESEH $(LD_FLAGS)
|
||||||
!endif
|
!endif
|
||||||
!endif
|
!endif
|
||||||
|
|
||||||
@@ -225,19 +233,23 @@ FASTDEBUG_OPT_OPTION = $(DEBUG_OPT_OPTION)
|
|||||||
!endif
|
!endif
|
||||||
|
|
||||||
# Generic linker settings
|
# Generic linker settings
|
||||||
LINK=link.exe
|
!if "x$(LD)" == "x"
|
||||||
LINK_FLAGS= $(LINK_FLAGS) kernel32.lib user32.lib gdi32.lib winspool.lib \
|
LD=link.exe
|
||||||
|
!endif
|
||||||
|
LD_FLAGS= $(LD_FLAGS) kernel32.lib user32.lib gdi32.lib winspool.lib \
|
||||||
comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib \
|
comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib \
|
||||||
uuid.lib Wsock32.lib winmm.lib /nologo /machine:$(MACHINE) /opt:REF \
|
uuid.lib Wsock32.lib winmm.lib /nologo /machine:$(MACHINE) /opt:REF \
|
||||||
/opt:ICF,8 /map /debug
|
/opt:ICF,8 /map /debug
|
||||||
|
|
||||||
|
|
||||||
!if $(MSC_VER) >= 1600
|
!if $(MSC_VER) >= 1600
|
||||||
LINK_FLAGS= $(LINK_FLAGS) psapi.lib
|
LD_FLAGS= $(LD_FLAGS) psapi.lib
|
||||||
!endif
|
!endif
|
||||||
|
|
||||||
# Resource compiler settings
|
# Resource compiler settings
|
||||||
|
!if "x$(RC)" == "x"
|
||||||
RC=rc.exe
|
RC=rc.exe
|
||||||
|
!endif
|
||||||
RC_FLAGS=/D "HS_VER=$(HS_VER)" \
|
RC_FLAGS=/D "HS_VER=$(HS_VER)" \
|
||||||
/D "HS_DOTVER=$(HS_DOTVER)" \
|
/D "HS_DOTVER=$(HS_DOTVER)" \
|
||||||
/D "HS_BUILD_ID=$(HS_BUILD_ID)" \
|
/D "HS_BUILD_ID=$(HS_BUILD_ID)" \
|
||||||
@@ -250,7 +262,7 @@ RC_FLAGS=/D "HS_VER=$(HS_VER)" \
|
|||||||
/D "HS_INTERNAL_NAME=$(HS_INTERNAL_NAME)" \
|
/D "HS_INTERNAL_NAME=$(HS_INTERNAL_NAME)" \
|
||||||
/D "HS_NAME=$(HS_NAME)"
|
/D "HS_NAME=$(HS_NAME)"
|
||||||
|
|
||||||
# Need this to match the CPP_FLAGS settings
|
# Need this to match the CXX_FLAGS settings
|
||||||
!if "$(MFC_DEBUG)" == "true"
|
!if "$(MFC_DEBUG)" == "true"
|
||||||
RC_FLAGS = $(RC_FLAGS) /D "_DEBUG"
|
RC_FLAGS = $(RC_FLAGS) /D "_DEBUG"
|
||||||
!endif
|
!endif
|
||||||
|
|||||||
@@ -38,7 +38,7 @@ default:: $(BUILD_PCH_FILE) $(AOUT) launcher checkAndBuildSA
|
|||||||
!include ../local.make
|
!include ../local.make
|
||||||
!include compile.make
|
!include compile.make
|
||||||
|
|
||||||
CPP_FLAGS=$(CPP_FLAGS) $(DEBUG_OPT_OPTION)
|
CXX_FLAGS=$(CXX_FLAGS) $(DEBUG_OPT_OPTION)
|
||||||
|
|
||||||
!include $(WorkSpace)/make/windows/makefiles/vm.make
|
!include $(WorkSpace)/make/windows/makefiles/vm.make
|
||||||
!include local.make
|
!include local.make
|
||||||
@@ -52,8 +52,8 @@ vm.def: $(Obj_Files)
|
|||||||
sh $(WorkSpace)/make/windows/build_vm_def.sh
|
sh $(WorkSpace)/make/windows/build_vm_def.sh
|
||||||
|
|
||||||
$(AOUT): $(Res_Files) $(Obj_Files) vm.def
|
$(AOUT): $(Res_Files) $(Obj_Files) vm.def
|
||||||
$(LINK) @<<
|
$(LD) @<<
|
||||||
$(LINK_FLAGS) /out:$@ /implib:$*.lib /def:vm.def $(Obj_Files) $(Res_Files)
|
$(LD_FLAGS) /out:$@ /implib:$*.lib /def:vm.def $(Obj_Files) $(Res_Files)
|
||||||
<<
|
<<
|
||||||
!if "$(MT)" != ""
|
!if "$(MT)" != ""
|
||||||
# The previous link command created a .manifest file that we want to
|
# The previous link command created a .manifest file that we want to
|
||||||
|
|||||||
@@ -202,3 +202,19 @@ ifeq ($(BUILD_WIN_SA), 1)
|
|||||||
# Must pass this down to nmake.
|
# Must pass this down to nmake.
|
||||||
MAKE_ARGS += BUILD_WIN_SA=1
|
MAKE_ARGS += BUILD_WIN_SA=1
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
# Propagate compiler and tools paths from configure to nmake.
|
||||||
|
# Need to make sure they contain \\ and not /.
|
||||||
|
ifneq ($(SPEC),)
|
||||||
|
ifeq ($(USING_CYGWIN), true)
|
||||||
|
MAKE_ARGS += CXX="$(subst /,\\,$(shell /bin/cygpath -s -m -a $(CXX)))"
|
||||||
|
MAKE_ARGS += LD="$(subst /,\\,$(shell /bin/cygpath -s -m -a $(LD)))"
|
||||||
|
MAKE_ARGS += RC="$(subst /,\\,$(shell /bin/cygpath -s -m -a $(RC)))"
|
||||||
|
MAKE_ARGS += MT="$(subst /,\\,$(shell /bin/cygpath -s -m -a $(MT)))"
|
||||||
|
else
|
||||||
|
MAKE_ARGS += CXX="$(subst /,\\,$(CXX))"
|
||||||
|
MAKE_ARGS += LD="$(subst /,\\,$(LD))"
|
||||||
|
MAKE_ARGS += RC="$(subst /,\\,$(RC))"
|
||||||
|
MAKE_ARGS += MT="$(subst /,\\,$(MT))"
|
||||||
|
endif
|
||||||
|
endif
|
||||||
|
|||||||
@@ -38,7 +38,7 @@ default:: $(BUILD_PCH_FILE) $(AOUT) launcher checkAndBuildSA
|
|||||||
!include ../local.make
|
!include ../local.make
|
||||||
!include compile.make
|
!include compile.make
|
||||||
|
|
||||||
CPP_FLAGS=$(CPP_FLAGS) $(FASTDEBUG_OPT_OPTION)
|
CXX_FLAGS=$(CXX_FLAGS) $(FASTDEBUG_OPT_OPTION)
|
||||||
|
|
||||||
!include $(WorkSpace)/make/windows/makefiles/vm.make
|
!include $(WorkSpace)/make/windows/makefiles/vm.make
|
||||||
!include local.make
|
!include local.make
|
||||||
@@ -52,8 +52,8 @@ vm.def: $(Obj_Files)
|
|||||||
sh $(WorkSpace)/make/windows/build_vm_def.sh
|
sh $(WorkSpace)/make/windows/build_vm_def.sh
|
||||||
|
|
||||||
$(AOUT): $(Res_Files) $(Obj_Files) vm.def
|
$(AOUT): $(Res_Files) $(Obj_Files) vm.def
|
||||||
$(LINK) @<<
|
$(LD) @<<
|
||||||
$(LINK_FLAGS) /out:$@ /implib:$*.lib /def:vm.def $(Obj_Files) $(Res_Files)
|
$(LD_FLAGS) /out:$@ /implib:$*.lib /def:vm.def $(Obj_Files) $(Res_Files)
|
||||||
<<
|
<<
|
||||||
!if "$(MT)" != ""
|
!if "$(MT)" != ""
|
||||||
# The previous link command created a .manifest file that we want to
|
# The previous link command created a .manifest file that we want to
|
||||||
|
|||||||
@@ -23,7 +23,7 @@
|
|||||||
#
|
#
|
||||||
|
|
||||||
|
|
||||||
LAUNCHER_FLAGS=$(CPP_FLAGS) $(ARCHFLAG) \
|
LAUNCHER_FLAGS=$(CXX_FLAGS) $(ARCHFLAG) \
|
||||||
/D FULL_VERSION=\"$(HOTSPOT_RELEASE_VERSION)\" \
|
/D FULL_VERSION=\"$(HOTSPOT_RELEASE_VERSION)\" \
|
||||||
/D JDK_MAJOR_VERSION=\"$(JDK_MAJOR_VERSION)\" \
|
/D JDK_MAJOR_VERSION=\"$(JDK_MAJOR_VERSION)\" \
|
||||||
/D JDK_MINOR_VERSION=\"$(JDK_MINOR_VERSION)\" \
|
/D JDK_MINOR_VERSION=\"$(JDK_MINOR_VERSION)\" \
|
||||||
@@ -39,18 +39,18 @@ LAUNCHER_FLAGS=$(CPP_FLAGS) $(ARCHFLAG) \
|
|||||||
/I $(WorkSpace)\src\cpu\$(Platform_arch)\vm \
|
/I $(WorkSpace)\src\cpu\$(Platform_arch)\vm \
|
||||||
/I $(WorkSpace)\src\os\windows\vm
|
/I $(WorkSpace)\src\os\windows\vm
|
||||||
|
|
||||||
LINK_FLAGS=/manifest $(HS_INTERNAL_NAME).lib kernel32.lib user32.lib /nologo /machine:$(MACHINE) /map /debug /subsystem:console
|
LD_FLAGS=/manifest $(HS_INTERNAL_NAME).lib kernel32.lib user32.lib /nologo /machine:$(MACHINE) /map /debug /subsystem:console
|
||||||
|
|
||||||
!if "$(COMPILER_NAME)" == "VS2005"
|
!if "$(COMPILER_NAME)" == "VS2005"
|
||||||
# This VS2005 compiler has /GS as a default and requires bufferoverflowU.lib
|
# This VS2005 compiler has /GS as a default and requires bufferoverflowU.lib
|
||||||
# on the link command line, otherwise we get missing __security_check_cookie
|
# on the link command line, otherwise we get missing __security_check_cookie
|
||||||
# externals at link time. Even with /GS-, you need bufferoverflowU.lib.
|
# externals at link time. Even with /GS-, you need bufferoverflowU.lib.
|
||||||
BUFFEROVERFLOWLIB = bufferoverflowU.lib
|
BUFFEROVERFLOWLIB = bufferoverflowU.lib
|
||||||
LINK_FLAGS = $(LINK_FLAGS) $(BUFFEROVERFLOWLIB)
|
LD_FLAGS = $(LD_FLAGS) $(BUFFEROVERFLOWLIB)
|
||||||
!endif
|
!endif
|
||||||
|
|
||||||
!if "$(COMPILER_NAME)" == "VS2010" && "$(BUILDARCH)" == "i486"
|
!if "$(COMPILER_NAME)" == "VS2010" && "$(BUILDARCH)" == "i486"
|
||||||
LINK_FLAGS = /SAFESEH $(LINK_FLAGS)
|
LD_FLAGS = /SAFESEH $(LD_FLAGS)
|
||||||
!endif
|
!endif
|
||||||
|
|
||||||
LAUNCHERDIR = $(WorkSpace)/src/os/windows/launcher
|
LAUNCHERDIR = $(WorkSpace)/src/os/windows/launcher
|
||||||
@@ -60,14 +60,14 @@ OUTDIR = launcher
|
|||||||
|
|
||||||
{$(LAUNCHERDIR)}.c{$(OUTDIR)}.obj:
|
{$(LAUNCHERDIR)}.c{$(OUTDIR)}.obj:
|
||||||
-mkdir $(OUTDIR) 2>NUL >NUL
|
-mkdir $(OUTDIR) 2>NUL >NUL
|
||||||
$(CPP) $(LAUNCHER_FLAGS) /c /Fo$@ $<
|
$(CXX) $(LAUNCHER_FLAGS) /c /Fo$@ $<
|
||||||
|
|
||||||
{$(LAUNCHERDIR_SHARE)}.c{$(OUTDIR)}.obj:
|
{$(LAUNCHERDIR_SHARE)}.c{$(OUTDIR)}.obj:
|
||||||
-mkdir $(OUTDIR) 2>NUL >NUL
|
-mkdir $(OUTDIR) 2>NUL >NUL
|
||||||
$(CPP) $(LAUNCHER_FLAGS) /c /Fo$@ $<
|
$(CXX) $(LAUNCHER_FLAGS) /c /Fo$@ $<
|
||||||
|
|
||||||
$(OUTDIR)\*.obj: $(LAUNCHERDIR)\*.c $(LAUNCHERDIR)\*.h $(LAUNCHERDIR_SHARE)\*.c $(LAUNCHERDIR_SHARE)\*.h
|
$(OUTDIR)\*.obj: $(LAUNCHERDIR)\*.c $(LAUNCHERDIR)\*.h $(LAUNCHERDIR_SHARE)\*.c $(LAUNCHERDIR_SHARE)\*.h
|
||||||
|
|
||||||
launcher: $(OUTDIR)\java.obj $(OUTDIR)\java_md.obj $(OUTDIR)\jli_util.obj
|
launcher: $(OUTDIR)\java.obj $(OUTDIR)\java_md.obj $(OUTDIR)\jli_util.obj
|
||||||
echo $(JAVA_HOME) > jdkpath.txt
|
echo $(JAVA_HOME) > jdkpath.txt
|
||||||
$(LINK) $(LINK_FLAGS) /out:hotspot.exe $**
|
$(LD) $(LD_FLAGS) /out:hotspot.exe $**
|
||||||
|
|||||||
@@ -37,7 +37,7 @@ default:: $(BUILD_PCH_FILE) $(AOUT) launcher checkAndBuildSA
|
|||||||
!include ../local.make
|
!include ../local.make
|
||||||
!include compile.make
|
!include compile.make
|
||||||
|
|
||||||
CPP_FLAGS=$(CPP_FLAGS) $(PRODUCT_OPT_OPTION)
|
CXX_FLAGS=$(CXX_FLAGS) $(PRODUCT_OPT_OPTION)
|
||||||
|
|
||||||
RELEASE=
|
RELEASE=
|
||||||
|
|
||||||
@@ -54,16 +54,16 @@ $(Res_Files): FORCE
|
|||||||
# Kernel doesn't need exported vtbl symbols.
|
# Kernel doesn't need exported vtbl symbols.
|
||||||
!if "$(Variant)" == "kernel"
|
!if "$(Variant)" == "kernel"
|
||||||
$(AOUT): $(Res_Files) $(Obj_Files)
|
$(AOUT): $(Res_Files) $(Obj_Files)
|
||||||
$(LINK) @<<
|
$(LD) @<<
|
||||||
$(LINK_FLAGS) /out:$@ /implib:$*.lib $(Obj_Files) $(Res_Files)
|
$(LD_FLAGS) /out:$@ /implib:$*.lib $(Obj_Files) $(Res_Files)
|
||||||
<<
|
<<
|
||||||
!else
|
!else
|
||||||
vm.def: $(Obj_Files)
|
vm.def: $(Obj_Files)
|
||||||
sh $(WorkSpace)/make/windows/build_vm_def.sh
|
sh $(WorkSpace)/make/windows/build_vm_def.sh
|
||||||
|
|
||||||
$(AOUT): $(Res_Files) $(Obj_Files) vm.def
|
$(AOUT): $(Res_Files) $(Obj_Files) vm.def
|
||||||
$(LINK) @<<
|
$(LD) @<<
|
||||||
$(LINK_FLAGS) /out:$@ /implib:$*.lib /def:vm.def $(Obj_Files) $(Res_Files)
|
$(LD_FLAGS) /out:$@ /implib:$*.lib /def:vm.def $(Obj_Files) $(Res_Files)
|
||||||
<<
|
<<
|
||||||
!endif
|
!endif
|
||||||
!if "$(MT)" != ""
|
!if "$(MT)" != ""
|
||||||
|
|||||||
@@ -50,6 +50,7 @@ ProjectCreatorIncludesPRIVATE=\
|
|||||||
-relativeInclude src\closed\os_cpu\windows_$(Platform_arch)\vm \
|
-relativeInclude src\closed\os_cpu\windows_$(Platform_arch)\vm \
|
||||||
-relativeInclude src\closed\cpu\$(Platform_arch)\vm \
|
-relativeInclude src\closed\cpu\$(Platform_arch)\vm \
|
||||||
-relativeInclude src\share\vm \
|
-relativeInclude src\share\vm \
|
||||||
|
-relativeInclude src\share\vm\precompiled \
|
||||||
-relativeInclude src\share\vm\prims \
|
-relativeInclude src\share\vm\prims \
|
||||||
-relativeInclude src\os\windows\vm \
|
-relativeInclude src\os\windows\vm \
|
||||||
-relativeInclude src\os_cpu\windows_$(Platform_arch)\vm \
|
-relativeInclude src\os_cpu\windows_$(Platform_arch)\vm \
|
||||||
@@ -57,7 +58,8 @@ ProjectCreatorIncludesPRIVATE=\
|
|||||||
-absoluteInclude $(HOTSPOTBUILDSPACE)/%f/generated \
|
-absoluteInclude $(HOTSPOTBUILDSPACE)/%f/generated \
|
||||||
-ignorePath $(HOTSPOTBUILDSPACE)/%f/generated \
|
-ignorePath $(HOTSPOTBUILDSPACE)/%f/generated \
|
||||||
-ignorePath src\share\vm\adlc \
|
-ignorePath src\share\vm\adlc \
|
||||||
-ignorePath src\share\vm\shark
|
-ignorePath src\share\vm\shark \
|
||||||
|
-ignorePath posix
|
||||||
|
|
||||||
# This is referenced externally by both the IDE and batch builds
|
# This is referenced externally by both the IDE and batch builds
|
||||||
ProjectCreatorOptions=
|
ProjectCreatorOptions=
|
||||||
@@ -87,7 +89,7 @@ ProjectCreatorIDEOptions=\
|
|||||||
-jdkTargetRoot $(HOTSPOTJDKDIST) \
|
-jdkTargetRoot $(HOTSPOTJDKDIST) \
|
||||||
-define ALIGN_STACK_FRAMES \
|
-define ALIGN_STACK_FRAMES \
|
||||||
-define VM_LITTLE_ENDIAN \
|
-define VM_LITTLE_ENDIAN \
|
||||||
-prelink "" "Generating vm.def..." "cd $(HOTSPOTBUILDSPACE)\%f\%b set HOTSPOTMKSHOME=$(HOTSPOTMKSHOME) $(HOTSPOTMKSHOME)\sh $(HOTSPOTWORKSPACE)\make\windows\build_vm_def.sh $(LINK_VER)" \
|
-prelink "" "Generating vm.def..." "cd $(HOTSPOTBUILDSPACE)\%f\%b set HOTSPOTMKSHOME=$(HOTSPOTMKSHOME) set JAVA_HOME=$(HOTSPOTJDKDIST) $(HOTSPOTMKSHOME)\sh $(HOTSPOTWORKSPACE)\make\windows\build_vm_def.sh $(LD_VER)" \
|
||||||
-postbuild "" "Building hotspot.exe..." "cd $(HOTSPOTBUILDSPACE)\%f\%b set HOTSPOTMKSHOME=$(HOTSPOTMKSHOME) nmake -f $(HOTSPOTWORKSPACE)\make\windows\projectfiles\common\Makefile LOCAL_MAKE=$(HOTSPOTBUILDSPACE)\%f\local.make JAVA_HOME=$(HOTSPOTJDKDIST) launcher" \
|
-postbuild "" "Building hotspot.exe..." "cd $(HOTSPOTBUILDSPACE)\%f\%b set HOTSPOTMKSHOME=$(HOTSPOTMKSHOME) nmake -f $(HOTSPOTWORKSPACE)\make\windows\projectfiles\common\Makefile LOCAL_MAKE=$(HOTSPOTBUILDSPACE)\%f\local.make JAVA_HOME=$(HOTSPOTJDKDIST) launcher" \
|
||||||
-ignoreFile jsig.c \
|
-ignoreFile jsig.c \
|
||||||
-ignoreFile jvmtiEnvRecommended.cpp \
|
-ignoreFile jvmtiEnvRecommended.cpp \
|
||||||
|
|||||||
@@ -91,16 +91,16 @@ SA_CFLAGS = /nologo $(MS_RUNTIME_OPTION) /W3 $(GX_OPTION) /Od /D "WIN32" /D "WIN
|
|||||||
!if "$(COMPILER_NAME)" == "VS2005"
|
!if "$(COMPILER_NAME)" == "VS2005"
|
||||||
# On amd64, VS2005 compiler requires bufferoverflowU.lib on the link command line,
|
# On amd64, VS2005 compiler requires bufferoverflowU.lib on the link command line,
|
||||||
# otherwise we get missing __security_check_cookie externals at link time.
|
# otherwise we get missing __security_check_cookie externals at link time.
|
||||||
SA_LINK_FLAGS = bufferoverflowU.lib
|
SA_LD_FLAGS = bufferoverflowU.lib
|
||||||
!endif
|
!endif
|
||||||
!else
|
!else
|
||||||
SA_CFLAGS = /nologo $(MS_RUNTIME_OPTION) /W3 /Gm $(GX_OPTION) /ZI /Od /D "WIN32" /D "_WINDOWS" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /GZ /c
|
SA_CFLAGS = /nologo $(MS_RUNTIME_OPTION) /W3 /Gm $(GX_OPTION) /ZI /Od /D "WIN32" /D "_WINDOWS" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /GZ /c
|
||||||
!endif
|
!endif
|
||||||
!if "$(MT)" != ""
|
!if "$(MT)" != ""
|
||||||
SA_LINK_FLAGS = /manifest $(SA_LINK_FLAGS)
|
SA_LD_FLAGS = /manifest $(SA_LD_FLAGS)
|
||||||
!endif
|
!endif
|
||||||
SASRCFILE = $(AGENT_DIR)/src/os/win32/windbg/sawindbg.cpp
|
SASRCFILE = $(AGENT_DIR)/src/os/win32/windbg/sawindbg.cpp
|
||||||
SA_LFLAGS = $(SA_LINK_FLAGS) /nologo /subsystem:console /map /debug /machine:$(MACHINE)
|
SA_LFLAGS = $(SA_LD_FLAGS) /nologo /subsystem:console /map /debug /machine:$(MACHINE)
|
||||||
|
|
||||||
# Note that we do not keep sawindbj.obj around as it would then
|
# Note that we do not keep sawindbj.obj around as it would then
|
||||||
# get included in the dumpbin command in build_vm_def.sh
|
# get included in the dumpbin command in build_vm_def.sh
|
||||||
@@ -110,14 +110,14 @@ SA_LFLAGS = $(SA_LINK_FLAGS) /nologo /subsystem:console /map /debug /machine:$(M
|
|||||||
# Use ";#2" for .dll and ";#1" for .exe in the MT command below:
|
# Use ";#2" for .dll and ";#1" for .exe in the MT command below:
|
||||||
$(SAWINDBG): $(SASRCFILE)
|
$(SAWINDBG): $(SASRCFILE)
|
||||||
set INCLUDE=$(SA_INCLUDE)$(INCLUDE)
|
set INCLUDE=$(SA_INCLUDE)$(INCLUDE)
|
||||||
$(CPP) @<<
|
$(CXX) @<<
|
||||||
/I"$(BootStrapDir)/include" /I"$(BootStrapDir)/include/win32"
|
/I"$(BootStrapDir)/include" /I"$(BootStrapDir)/include/win32"
|
||||||
/I"$(GENERATED)" $(SA_CFLAGS)
|
/I"$(GENERATED)" $(SA_CFLAGS)
|
||||||
$(SASRCFILE)
|
$(SASRCFILE)
|
||||||
/out:sawindbg.obj
|
/out:sawindbg.obj
|
||||||
<<
|
<<
|
||||||
set LIB=$(SA_LIB)$(LIB)
|
set LIB=$(SA_LIB)$(LIB)
|
||||||
$(LINK) /out:$@ /DLL sawindbg.obj dbgeng.lib $(SA_LFLAGS)
|
$(LD) /out:$@ /DLL sawindbg.obj dbgeng.lib $(SA_LFLAGS)
|
||||||
!if "$(MT)" != ""
|
!if "$(MT)" != ""
|
||||||
$(MT) /manifest $(@F).manifest /outputresource:$(@F);#2
|
$(MT) /manifest $(@F).manifest /outputresource:$(@F);#2
|
||||||
!endif
|
!endif
|
||||||
|
|||||||
@@ -31,5 +31,5 @@ checkCL:
|
|||||||
echo *** WARNING *** unrecognized cl.exe version $(MSC_VER) ($(RAW_MSC_VER)). Use FORCE_MSC_VER to override automatic detection.
|
echo *** WARNING *** unrecognized cl.exe version $(MSC_VER) ($(RAW_MSC_VER)). Use FORCE_MSC_VER to override automatic detection.
|
||||||
|
|
||||||
checkLink:
|
checkLink:
|
||||||
@ if "$(LINK_VER)" NEQ "710" if "$(LINK_VER)" NEQ "800" if "$(LINK_VER)" NEQ "900" if "$(LINK_VER)" NEQ "1000" \
|
@ if "$(LD_VER)" NEQ "710" if "$(LD_VER)" NEQ "800" if "$(LD_VER)" NEQ "900" if "$(LD_VER)" NEQ "1000" \
|
||||||
echo *** WARNING *** unrecognized link.exe version $(LINK_VER) ($(RAW_LINK_VER)). Use FORCE_LINK_VER to override automatic detection.
|
echo *** WARNING *** unrecognized link.exe version $(LD_VER) ($(RAW_LD_VER)). Use FORCE_LD_VER to override automatic detection.
|
||||||
|
|||||||
@@ -30,8 +30,8 @@ default:: $(SUBDIRS)
|
|||||||
DIR=.
|
DIR=.
|
||||||
!endif
|
!endif
|
||||||
|
|
||||||
!ifndef CPP
|
!ifndef CXX
|
||||||
CPP=cl.exe
|
CXX=cl.exe
|
||||||
!endif
|
!endif
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -19,7 +19,7 @@
|
|||||||
# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||||
# or visit www.oracle.com if you need additional information or have any
|
# or visit www.oracle.com if you need additional information or have any
|
||||||
# questions.
|
# questions.
|
||||||
#
|
#
|
||||||
#
|
#
|
||||||
|
|
||||||
# Resource file containing VERSIONINFO
|
# Resource file containing VERSIONINFO
|
||||||
@@ -30,14 +30,14 @@ Res_Files=.\version.res
|
|||||||
COMMONSRC=$(WorkSpace)\src
|
COMMONSRC=$(WorkSpace)\src
|
||||||
ALTSRC=$(WorkSpace)\src\closed
|
ALTSRC=$(WorkSpace)\src\closed
|
||||||
|
|
||||||
!ifdef RELEASE
|
!ifdef RELEASE
|
||||||
!ifdef DEVELOP
|
!ifdef DEVELOP
|
||||||
CPP_FLAGS=$(CPP_FLAGS) /D "DEBUG"
|
CXX_FLAGS=$(CXX_FLAGS) /D "DEBUG"
|
||||||
!else
|
!else
|
||||||
CPP_FLAGS=$(CPP_FLAGS) /D "PRODUCT"
|
CXX_FLAGS=$(CXX_FLAGS) /D "PRODUCT"
|
||||||
!endif
|
!endif
|
||||||
!else
|
!else
|
||||||
CPP_FLAGS=$(CPP_FLAGS) /D "ASSERT"
|
CXX_FLAGS=$(CXX_FLAGS) /D "ASSERT"
|
||||||
!endif
|
!endif
|
||||||
|
|
||||||
!if "$(Variant)" == "core"
|
!if "$(Variant)" == "core"
|
||||||
@@ -45,19 +45,19 @@ CPP_FLAGS=$(CPP_FLAGS) /D "ASSERT"
|
|||||||
!endif
|
!endif
|
||||||
|
|
||||||
!if "$(Variant)" == "kernel"
|
!if "$(Variant)" == "kernel"
|
||||||
CPP_FLAGS=$(CPP_FLAGS) /D "KERNEL"
|
CXX_FLAGS=$(CXX_FLAGS) /D "KERNEL"
|
||||||
!endif
|
!endif
|
||||||
|
|
||||||
!if "$(Variant)" == "compiler1"
|
!if "$(Variant)" == "compiler1"
|
||||||
CPP_FLAGS=$(CPP_FLAGS) /D "COMPILER1"
|
CXX_FLAGS=$(CXX_FLAGS) /D "COMPILER1"
|
||||||
!endif
|
!endif
|
||||||
|
|
||||||
!if "$(Variant)" == "compiler2"
|
!if "$(Variant)" == "compiler2"
|
||||||
CPP_FLAGS=$(CPP_FLAGS) /D "COMPILER2"
|
CXX_FLAGS=$(CXX_FLAGS) /D "COMPILER2"
|
||||||
!endif
|
!endif
|
||||||
|
|
||||||
!if "$(Variant)" == "tiered"
|
!if "$(Variant)" == "tiered"
|
||||||
CPP_FLAGS=$(CPP_FLAGS) /D "COMPILER1" /D "COMPILER2"
|
CXX_FLAGS=$(CXX_FLAGS) /D "COMPILER1" /D "COMPILER2"
|
||||||
!endif
|
!endif
|
||||||
|
|
||||||
!if "$(BUILDARCH)" == "i486"
|
!if "$(BUILDARCH)" == "i486"
|
||||||
@@ -67,17 +67,21 @@ HOTSPOT_LIB_ARCH=$(BUILDARCH)
|
|||||||
!endif
|
!endif
|
||||||
|
|
||||||
# The following variables are defined in the generated local.make file.
|
# The following variables are defined in the generated local.make file.
|
||||||
CPP_FLAGS=$(CPP_FLAGS) /D "HOTSPOT_RELEASE_VERSION=\"$(HS_BUILD_VER)\""
|
CXX_FLAGS=$(CXX_FLAGS) /D "HOTSPOT_RELEASE_VERSION=\"$(HS_BUILD_VER)\""
|
||||||
CPP_FLAGS=$(CPP_FLAGS) /D "JRE_RELEASE_VERSION=\"$(JRE_RELEASE_VER)\""
|
CXX_FLAGS=$(CXX_FLAGS) /D "JRE_RELEASE_VERSION=\"$(JRE_RELEASE_VER)\""
|
||||||
CPP_FLAGS=$(CPP_FLAGS) /D "HOTSPOT_LIB_ARCH=\"$(HOTSPOT_LIB_ARCH)\""
|
CXX_FLAGS=$(CXX_FLAGS) /D "HOTSPOT_LIB_ARCH=\"$(HOTSPOT_LIB_ARCH)\""
|
||||||
CPP_FLAGS=$(CPP_FLAGS) /D "HOTSPOT_BUILD_TARGET=\"$(BUILD_FLAVOR)\""
|
CXX_FLAGS=$(CXX_FLAGS) /D "HOTSPOT_BUILD_TARGET=\"$(BUILD_FLAVOR)\""
|
||||||
CPP_FLAGS=$(CPP_FLAGS) /D "HOTSPOT_BUILD_USER=\"$(BuildUser)\""
|
CXX_FLAGS=$(CXX_FLAGS) /D "HOTSPOT_BUILD_USER=\"$(BuildUser)\""
|
||||||
CPP_FLAGS=$(CPP_FLAGS) /D "HOTSPOT_VM_DISTRO=\"$(HOTSPOT_VM_DISTRO)\""
|
CXX_FLAGS=$(CXX_FLAGS) /D "HOTSPOT_VM_DISTRO=\"$(HOTSPOT_VM_DISTRO)\""
|
||||||
|
|
||||||
CPP_FLAGS=$(CPP_FLAGS) $(CPP_INCLUDE_DIRS)
|
!ifndef JAVASE_EMBEDDED
|
||||||
|
CXX_FLAGS=$(CXX_FLAGS) /D "INCLUDE_TRACE"
|
||||||
|
!endif
|
||||||
|
|
||||||
|
CXX_FLAGS=$(CXX_FLAGS) $(CXX_INCLUDE_DIRS)
|
||||||
|
|
||||||
# Define that so jni.h is on correct side
|
# Define that so jni.h is on correct side
|
||||||
CPP_FLAGS=$(CPP_FLAGS) /D "_JNI_IMPLEMENTATION_"
|
CXX_FLAGS=$(CXX_FLAGS) /D "_JNI_IMPLEMENTATION_"
|
||||||
|
|
||||||
!if "$(BUILDARCH)" == "ia64"
|
!if "$(BUILDARCH)" == "ia64"
|
||||||
STACK_SIZE="/STACK:1048576,262144"
|
STACK_SIZE="/STACK:1048576,262144"
|
||||||
@@ -97,8 +101,8 @@ AGCT_EXPORT=/export:AsyncGetCallTrace
|
|||||||
!endif
|
!endif
|
||||||
|
|
||||||
# If you modify exports below please do the corresponding changes in
|
# If you modify exports below please do the corresponding changes in
|
||||||
# src/share/tools/ProjectCreator/WinGammaPlatformVC7.java
|
# src/share/tools/ProjectCreator/WinGammaPlatformVC7.java
|
||||||
LINK_FLAGS=$(LINK_FLAGS) $(STACK_SIZE) /subsystem:windows /dll /base:0x8000000 \
|
LD_FLAGS=$(LD_FLAGS) $(STACK_SIZE) /subsystem:windows /dll /base:0x8000000 \
|
||||||
/export:JNI_GetDefaultJavaVMInitArgs \
|
/export:JNI_GetDefaultJavaVMInitArgs \
|
||||||
/export:JNI_CreateJavaVM \
|
/export:JNI_CreateJavaVM \
|
||||||
/export:JVM_FindClassFromBootLoader \
|
/export:JVM_FindClassFromBootLoader \
|
||||||
@@ -114,37 +118,38 @@ LINK_FLAGS=$(LINK_FLAGS) $(STACK_SIZE) /subsystem:windows /dll /base:0x8000000 \
|
|||||||
/export:JVM_GetThreadStateValues \
|
/export:JVM_GetThreadStateValues \
|
||||||
/export:JVM_InitAgentProperties
|
/export:JVM_InitAgentProperties
|
||||||
|
|
||||||
CPP_INCLUDE_DIRS=/I "..\generated"
|
CXX_INCLUDE_DIRS=/I "..\generated"
|
||||||
|
|
||||||
!if exists($(ALTSRC)\share\vm)
|
!if exists($(ALTSRC)\share\vm)
|
||||||
CPP_INCLUDE_DIRS=$(CPP_INCLUDE_DIRS) /I "$(ALTSRC)\share\vm"
|
CXX_INCLUDE_DIRS=$(CXX_INCLUDE_DIRS) /I "$(ALTSRC)\share\vm"
|
||||||
!endif
|
!endif
|
||||||
|
|
||||||
!if exists($(ALTSRC)\os\windows\vm)
|
!if exists($(ALTSRC)\os\windows\vm)
|
||||||
CPP_INCLUDE_DIRS=$(CPP_INCLUDE_DIRS) /I "$(ALTSRC)\os\windows\vm"
|
CXX_INCLUDE_DIRS=$(CXX_INCLUDE_DIRS) /I "$(ALTSRC)\os\windows\vm"
|
||||||
!endif
|
!endif
|
||||||
|
|
||||||
!if exists($(ALTSRC)\os_cpu\windows_$(Platform_arch)\vm)
|
!if exists($(ALTSRC)\os_cpu\windows_$(Platform_arch)\vm)
|
||||||
CPP_INCLUDE_DIRS=$(CPP_INCLUDE_DIRS) /I "$(ALTSRC)\os_cpu\windows_$(Platform_arch)\vm"
|
CXX_INCLUDE_DIRS=$(CXX_INCLUDE_DIRS) /I "$(ALTSRC)\os_cpu\windows_$(Platform_arch)\vm"
|
||||||
!endif
|
!endif
|
||||||
|
|
||||||
!if exists($(ALTSRC)\cpu\$(Platform_arch)\vm)
|
!if exists($(ALTSRC)\cpu\$(Platform_arch)\vm)
|
||||||
CPP_INCLUDE_DIRS=$(CPP_INCLUDE_DIRS) /I "$(ALTSRC)\cpu\$(Platform_arch)\vm"
|
CXX_INCLUDE_DIRS=$(CXX_INCLUDE_DIRS) /I "$(ALTSRC)\cpu\$(Platform_arch)\vm"
|
||||||
!endif
|
!endif
|
||||||
|
|
||||||
CPP_INCLUDE_DIRS=$(CPP_INCLUDE_DIRS) \
|
CXX_INCLUDE_DIRS=$(CXX_INCLUDE_DIRS) \
|
||||||
/I "$(COMMONSRC)\share\vm" \
|
/I "$(COMMONSRC)\share\vm" \
|
||||||
|
/I "$(COMMONSRC)\share\vm\precompiled" \
|
||||||
/I "$(COMMONSRC)\share\vm\prims" \
|
/I "$(COMMONSRC)\share\vm\prims" \
|
||||||
/I "$(COMMONSRC)\os\windows\vm" \
|
/I "$(COMMONSRC)\os\windows\vm" \
|
||||||
/I "$(COMMONSRC)\os_cpu\windows_$(Platform_arch)\vm" \
|
/I "$(COMMONSRC)\os_cpu\windows_$(Platform_arch)\vm" \
|
||||||
/I "$(COMMONSRC)\cpu\$(Platform_arch)\vm"
|
/I "$(COMMONSRC)\cpu\$(Platform_arch)\vm"
|
||||||
|
|
||||||
CPP_DONT_USE_PCH=/D DONT_USE_PRECOMPILED_HEADER
|
CXX_DONT_USE_PCH=/D DONT_USE_PRECOMPILED_HEADER
|
||||||
|
|
||||||
!if "$(USE_PRECOMPILED_HEADER)" != "0"
|
!if "$(USE_PRECOMPILED_HEADER)" != "0"
|
||||||
CPP_USE_PCH=/Fp"vm.pch" /Yu"precompiled.hpp"
|
CXX_USE_PCH=/Fp"vm.pch" /Yu"precompiled.hpp"
|
||||||
!else
|
!else
|
||||||
CPP_USE_PCH=$(CPP_DONT_USE_PCH)
|
CXX_USE_PCH=$(CXX_DONT_USE_PCH)
|
||||||
!endif
|
!endif
|
||||||
|
|
||||||
# Where to find the source code for the virtual machine (is this used?)
|
# Where to find the source code for the virtual machine (is this used?)
|
||||||
@@ -169,6 +174,7 @@ VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/oops
|
|||||||
VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/prims
|
VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/prims
|
||||||
VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/runtime
|
VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/runtime
|
||||||
VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/services
|
VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/services
|
||||||
|
VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/trace
|
||||||
VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/utilities
|
VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/utilities
|
||||||
VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/libadt
|
VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/libadt
|
||||||
VM_PATH=$(VM_PATH);$(WorkSpace)/src/os/windows/vm
|
VM_PATH=$(VM_PATH);$(WorkSpace)/src/os/windows/vm
|
||||||
@@ -176,103 +182,113 @@ VM_PATH=$(VM_PATH);$(WorkSpace)/src/os_cpu/windows_$(Platform_arch)/vm
|
|||||||
VM_PATH=$(VM_PATH);$(WorkSpace)/src/cpu/$(Platform_arch)/vm
|
VM_PATH=$(VM_PATH);$(WorkSpace)/src/cpu/$(Platform_arch)/vm
|
||||||
VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/opto
|
VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/opto
|
||||||
|
|
||||||
|
!if exists($(ALTSRC)\share\vm\jfr)
|
||||||
|
VM_PATH=$(VM_PATH);$(ALTSRC)/share/vm/jfr/agent
|
||||||
|
VM_PATH=$(VM_PATH);$(ALTSRC)/share/vm/jfr/agent/isolated_deps/util
|
||||||
|
VM_PATH=$(VM_PATH);$(ALTSRC)/share/vm/jfr/jvm
|
||||||
|
VM_PATH=$(VM_PATH);$(ALTSRC)/share/vm/jfr
|
||||||
|
!endif
|
||||||
|
|
||||||
VM_PATH={$(VM_PATH)}
|
VM_PATH={$(VM_PATH)}
|
||||||
|
|
||||||
# Special case files not using precompiled header files.
|
# Special case files not using precompiled header files.
|
||||||
|
|
||||||
c1_RInfo_$(Platform_arch).obj: $(WorkSpace)\src\cpu\$(Platform_arch)\vm\c1_RInfo_$(Platform_arch).cpp
|
c1_RInfo_$(Platform_arch).obj: $(WorkSpace)\src\cpu\$(Platform_arch)\vm\c1_RInfo_$(Platform_arch).cpp
|
||||||
$(CPP) $(CPP_FLAGS) $(CPP_DONT_USE_PCH) /c $(WorkSpace)\src\cpu\$(Platform_arch)\vm\c1_RInfo_$(Platform_arch).cpp
|
$(CXX) $(CXX_FLAGS) $(CXX_DONT_USE_PCH) /c $(WorkSpace)\src\cpu\$(Platform_arch)\vm\c1_RInfo_$(Platform_arch).cpp
|
||||||
|
|
||||||
os_windows.obj: $(WorkSpace)\src\os\windows\vm\os_windows.cpp
|
os_windows.obj: $(WorkSpace)\src\os\windows\vm\os_windows.cpp
|
||||||
$(CPP) $(CPP_FLAGS) $(CPP_DONT_USE_PCH) /c $(WorkSpace)\src\os\windows\vm\os_windows.cpp
|
$(CXX) $(CXX_FLAGS) $(CXX_DONT_USE_PCH) /c $(WorkSpace)\src\os\windows\vm\os_windows.cpp
|
||||||
|
|
||||||
os_windows_$(Platform_arch).obj: $(WorkSpace)\src\os_cpu\windows_$(Platform_arch)\vm\os_windows_$(Platform_arch).cpp
|
os_windows_$(Platform_arch).obj: $(WorkSpace)\src\os_cpu\windows_$(Platform_arch)\vm\os_windows_$(Platform_arch).cpp
|
||||||
$(CPP) $(CPP_FLAGS) $(CPP_DONT_USE_PCH) /c $(WorkSpace)\src\os_cpu\windows_$(Platform_arch)\vm\os_windows_$(Platform_arch).cpp
|
$(CXX) $(CXX_FLAGS) $(CXX_DONT_USE_PCH) /c $(WorkSpace)\src\os_cpu\windows_$(Platform_arch)\vm\os_windows_$(Platform_arch).cpp
|
||||||
|
|
||||||
osThread_windows.obj: $(WorkSpace)\src\os\windows\vm\osThread_windows.cpp
|
osThread_windows.obj: $(WorkSpace)\src\os\windows\vm\osThread_windows.cpp
|
||||||
$(CPP) $(CPP_FLAGS) $(CPP_DONT_USE_PCH) /c $(WorkSpace)\src\os\windows\vm\osThread_windows.cpp
|
$(CXX) $(CXX_FLAGS) $(CXX_DONT_USE_PCH) /c $(WorkSpace)\src\os\windows\vm\osThread_windows.cpp
|
||||||
|
|
||||||
conditionVar_windows.obj: $(WorkSpace)\src\os\windows\vm\conditionVar_windows.cpp
|
conditionVar_windows.obj: $(WorkSpace)\src\os\windows\vm\conditionVar_windows.cpp
|
||||||
$(CPP) $(CPP_FLAGS) $(CPP_DONT_USE_PCH) /c $(WorkSpace)\src\os\windows\vm\conditionVar_windows.cpp
|
$(CXX) $(CXX_FLAGS) $(CXX_DONT_USE_PCH) /c $(WorkSpace)\src\os\windows\vm\conditionVar_windows.cpp
|
||||||
|
|
||||||
getThread_windows_$(Platform_arch).obj: $(WorkSpace)\src\os_cpu\windows_$(Platform_arch)\vm\getThread_windows_$(Platform_arch).cpp
|
getThread_windows_$(Platform_arch).obj: $(WorkSpace)\src\os_cpu\windows_$(Platform_arch)\vm\getThread_windows_$(Platform_arch).cpp
|
||||||
$(CPP) $(CPP_FLAGS) $(CPP_DONT_USE_PCH) /c $(WorkSpace)\src\os_cpu\windows_$(Platform_arch)\vm\getThread_windows_$(Platform_arch).cpp
|
$(CXX) $(CXX_FLAGS) $(CXX_DONT_USE_PCH) /c $(WorkSpace)\src\os_cpu\windows_$(Platform_arch)\vm\getThread_windows_$(Platform_arch).cpp
|
||||||
|
|
||||||
opcodes.obj: $(WorkSpace)\src\share\vm\opto\opcodes.cpp
|
opcodes.obj: $(WorkSpace)\src\share\vm\opto\opcodes.cpp
|
||||||
$(CPP) $(CPP_FLAGS) $(CPP_DONT_USE_PCH) /c $(WorkSpace)\src\share\vm\opto\opcodes.cpp
|
$(CXX) $(CXX_FLAGS) $(CXX_DONT_USE_PCH) /c $(WorkSpace)\src\share\vm\opto\opcodes.cpp
|
||||||
|
|
||||||
bytecodeInterpreter.obj: $(WorkSpace)\src\share\vm\interpreter\bytecodeInterpreter.cpp
|
bytecodeInterpreter.obj: $(WorkSpace)\src\share\vm\interpreter\bytecodeInterpreter.cpp
|
||||||
$(CPP) $(CPP_FLAGS) $(CPP_DONT_USE_PCH) /c $(WorkSpace)\src\share\vm\interpreter\bytecodeInterpreter.cpp
|
$(CXX) $(CXX_FLAGS) $(CXX_DONT_USE_PCH) /c $(WorkSpace)\src\share\vm\interpreter\bytecodeInterpreter.cpp
|
||||||
|
|
||||||
bytecodeInterpreterWithChecks.obj: ..\generated\jvmtifiles\bytecodeInterpreterWithChecks.cpp
|
bytecodeInterpreterWithChecks.obj: ..\generated\jvmtifiles\bytecodeInterpreterWithChecks.cpp
|
||||||
$(CPP) $(CPP_FLAGS) $(CPP_DONT_USE_PCH) /c ..\generated\jvmtifiles\bytecodeInterpreterWithChecks.cpp
|
$(CXX) $(CXX_FLAGS) $(CXX_DONT_USE_PCH) /c ..\generated\jvmtifiles\bytecodeInterpreterWithChecks.cpp
|
||||||
|
|
||||||
# Default rules for the Virtual Machine
|
# Default rules for the Virtual Machine
|
||||||
{$(COMMONSRC)\share\vm\c1}.cpp.obj::
|
{$(COMMONSRC)\share\vm\c1}.cpp.obj::
|
||||||
$(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
|
$(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
|
||||||
|
|
||||||
{$(COMMONSRC)\share\vm\compiler}.cpp.obj::
|
{$(COMMONSRC)\share\vm\compiler}.cpp.obj::
|
||||||
$(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
|
$(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
|
||||||
|
|
||||||
{$(COMMONSRC)\share\vm\code}.cpp.obj::
|
{$(COMMONSRC)\share\vm\code}.cpp.obj::
|
||||||
$(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
|
$(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
|
||||||
|
|
||||||
{$(COMMONSRC)\share\vm\interpreter}.cpp.obj::
|
{$(COMMONSRC)\share\vm\interpreter}.cpp.obj::
|
||||||
$(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
|
$(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
|
||||||
|
|
||||||
{$(COMMONSRC)\share\vm\ci}.cpp.obj::
|
{$(COMMONSRC)\share\vm\ci}.cpp.obj::
|
||||||
$(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
|
$(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
|
||||||
|
|
||||||
{$(COMMONSRC)\share\vm\classfile}.cpp.obj::
|
{$(COMMONSRC)\share\vm\classfile}.cpp.obj::
|
||||||
$(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
|
$(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
|
||||||
|
|
||||||
{$(COMMONSRC)\share\vm\gc_implementation\parallelScavenge}.cpp.obj::
|
{$(COMMONSRC)\share\vm\gc_implementation\parallelScavenge}.cpp.obj::
|
||||||
$(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
|
$(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
|
||||||
|
|
||||||
{$(COMMONSRC)\share\vm\gc_implementation\shared}.cpp.obj::
|
{$(COMMONSRC)\share\vm\gc_implementation\shared}.cpp.obj::
|
||||||
$(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
|
$(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
|
||||||
|
|
||||||
{$(COMMONSRC)\share\vm\gc_implementation\parNew}.cpp.obj::
|
{$(COMMONSRC)\share\vm\gc_implementation\parNew}.cpp.obj::
|
||||||
$(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
|
$(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
|
||||||
|
|
||||||
{$(COMMONSRC)\share\vm\gc_implementation\concurrentMarkSweep}.cpp.obj::
|
{$(COMMONSRC)\share\vm\gc_implementation\concurrentMarkSweep}.cpp.obj::
|
||||||
$(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
|
$(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
|
||||||
|
|
||||||
{$(COMMONSRC)\share\vm\gc_implementation\g1}.cpp.obj::
|
{$(COMMONSRC)\share\vm\gc_implementation\g1}.cpp.obj::
|
||||||
$(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
|
$(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
|
||||||
|
|
||||||
{$(COMMONSRC)\share\vm\gc_interface}.cpp.obj::
|
{$(COMMONSRC)\share\vm\gc_interface}.cpp.obj::
|
||||||
$(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
|
$(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
|
||||||
|
|
||||||
{$(COMMONSRC)\share\vm\asm}.cpp.obj::
|
{$(COMMONSRC)\share\vm\asm}.cpp.obj::
|
||||||
$(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
|
$(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
|
||||||
|
|
||||||
{$(COMMONSRC)\share\vm\memory}.cpp.obj::
|
{$(COMMONSRC)\share\vm\memory}.cpp.obj::
|
||||||
$(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
|
$(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
|
||||||
|
|
||||||
{$(COMMONSRC)\share\vm\oops}.cpp.obj::
|
{$(COMMONSRC)\share\vm\oops}.cpp.obj::
|
||||||
$(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
|
$(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
|
||||||
|
|
||||||
{$(COMMONSRC)\share\vm\prims}.cpp.obj::
|
{$(COMMONSRC)\share\vm\prims}.cpp.obj::
|
||||||
$(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
|
$(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
|
||||||
|
|
||||||
{$(COMMONSRC)\share\vm\runtime}.cpp.obj::
|
{$(COMMONSRC)\share\vm\runtime}.cpp.obj::
|
||||||
$(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
|
$(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
|
||||||
|
|
||||||
{$(COMMONSRC)\share\vm\services}.cpp.obj::
|
{$(COMMONSRC)\share\vm\services}.cpp.obj::
|
||||||
$(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
|
$(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
|
||||||
|
|
||||||
|
{$(COMMONSRC)\share\vm\trace}.cpp.obj::
|
||||||
|
$(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
|
||||||
|
|
||||||
{$(COMMONSRC)\share\vm\utilities}.cpp.obj::
|
{$(COMMONSRC)\share\vm\utilities}.cpp.obj::
|
||||||
$(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
|
$(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
|
||||||
|
|
||||||
{$(COMMONSRC)\share\vm\libadt}.cpp.obj::
|
{$(COMMONSRC)\share\vm\libadt}.cpp.obj::
|
||||||
$(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
|
$(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
|
||||||
|
|
||||||
{$(COMMONSRC)\share\vm\opto}.cpp.obj::
|
{$(COMMONSRC)\share\vm\opto}.cpp.obj::
|
||||||
$(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
|
$(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
|
||||||
|
|
||||||
{$(COMMONSRC)\os\windows\vm}.cpp.obj::
|
{$(COMMONSRC)\os\windows\vm}.cpp.obj::
|
||||||
$(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
|
$(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
|
||||||
|
|
||||||
# This guy should remain a single colon rule because
|
# This guy should remain a single colon rule because
|
||||||
# otherwise we can't specify the output filename.
|
# otherwise we can't specify the output filename.
|
||||||
@@ -280,98 +296,113 @@ bytecodeInterpreterWithChecks.obj: ..\generated\jvmtifiles\bytecodeInterpreterWi
|
|||||||
@$(RC) $(RC_FLAGS) /fo"$@" $<
|
@$(RC) $(RC_FLAGS) /fo"$@" $<
|
||||||
|
|
||||||
{$(COMMONSRC)\cpu\$(Platform_arch)\vm}.cpp.obj::
|
{$(COMMONSRC)\cpu\$(Platform_arch)\vm}.cpp.obj::
|
||||||
$(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
|
$(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
|
||||||
|
|
||||||
{$(COMMONSRC)\os_cpu\windows_$(Platform_arch)\vm}.cpp.obj::
|
{$(COMMONSRC)\os_cpu\windows_$(Platform_arch)\vm}.cpp.obj::
|
||||||
$(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
|
$(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
|
||||||
|
|
||||||
{$(ALTSRC)\share\vm\c1}.cpp.obj::
|
{$(ALTSRC)\share\vm\c1}.cpp.obj::
|
||||||
$(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
|
$(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
|
||||||
|
|
||||||
{$(ALTSRC)\share\vm\compiler}.cpp.obj::
|
{$(ALTSRC)\share\vm\compiler}.cpp.obj::
|
||||||
$(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
|
$(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
|
||||||
|
|
||||||
{$(ALTSRC)\share\vm\code}.cpp.obj::
|
{$(ALTSRC)\share\vm\code}.cpp.obj::
|
||||||
$(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
|
$(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
|
||||||
|
|
||||||
{$(ALTSRC)\share\vm\interpreter}.cpp.obj::
|
{$(ALTSRC)\share\vm\interpreter}.cpp.obj::
|
||||||
$(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
|
$(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
|
||||||
|
|
||||||
{$(ALTSRC)\share\vm\ci}.cpp.obj::
|
{$(ALTSRC)\share\vm\ci}.cpp.obj::
|
||||||
$(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
|
$(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
|
||||||
|
|
||||||
{$(ALTSRC)\share\vm\classfile}.cpp.obj::
|
{$(ALTSRC)\share\vm\classfile}.cpp.obj::
|
||||||
$(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
|
$(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
|
||||||
|
|
||||||
{$(ALTSRC)\share\vm\gc_implementation\parallelScavenge}.cpp.obj::
|
{$(ALTSRC)\share\vm\gc_implementation\parallelScavenge}.cpp.obj::
|
||||||
$(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
|
$(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
|
||||||
|
|
||||||
{$(ALTSRC)\share\vm\gc_implementation\shared}.cpp.obj::
|
{$(ALTSRC)\share\vm\gc_implementation\shared}.cpp.obj::
|
||||||
$(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
|
$(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
|
||||||
|
|
||||||
{$(ALTSRC)\share\vm\gc_implementation\parNew}.cpp.obj::
|
{$(ALTSRC)\share\vm\gc_implementation\parNew}.cpp.obj::
|
||||||
$(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
|
$(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
|
||||||
|
|
||||||
{$(ALTSRC)\share\vm\gc_implementation\concurrentMarkSweep}.cpp.obj::
|
{$(ALTSRC)\share\vm\gc_implementation\concurrentMarkSweep}.cpp.obj::
|
||||||
$(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
|
$(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
|
||||||
|
|
||||||
{$(ALTSRC)\share\vm\gc_implementation\g1}.cpp.obj::
|
{$(ALTSRC)\share\vm\gc_implementation\g1}.cpp.obj::
|
||||||
$(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
|
$(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
|
||||||
|
|
||||||
{$(ALTSRC)\share\vm\gc_interface}.cpp.obj::
|
{$(ALTSRC)\share\vm\gc_interface}.cpp.obj::
|
||||||
$(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
|
$(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
|
||||||
|
|
||||||
{$(ALTSRC)\share\vm\asm}.cpp.obj::
|
{$(ALTSRC)\share\vm\asm}.cpp.obj::
|
||||||
$(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
|
$(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
|
||||||
|
|
||||||
{$(ALTSRC)\share\vm\memory}.cpp.obj::
|
{$(ALTSRC)\share\vm\memory}.cpp.obj::
|
||||||
$(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
|
$(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
|
||||||
|
|
||||||
{$(ALTSRC)\share\vm\oops}.cpp.obj::
|
{$(ALTSRC)\share\vm\oops}.cpp.obj::
|
||||||
$(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
|
$(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
|
||||||
|
|
||||||
{$(ALTSRC)\share\vm\prims}.cpp.obj::
|
{$(ALTSRC)\share\vm\prims}.cpp.obj::
|
||||||
$(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
|
$(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
|
||||||
|
|
||||||
{$(ALTSRC)\share\vm\runtime}.cpp.obj::
|
{$(ALTSRC)\share\vm\runtime}.cpp.obj::
|
||||||
$(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
|
$(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
|
||||||
|
|
||||||
{$(ALTSRC)\share\vm\services}.cpp.obj::
|
{$(ALTSRC)\share\vm\services}.cpp.obj::
|
||||||
$(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
|
$(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
|
||||||
|
|
||||||
|
{$(ALTSRC)\share\vm\trace}.cpp.obj::
|
||||||
|
$(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
|
||||||
|
|
||||||
{$(ALTSRC)\share\vm\utilities}.cpp.obj::
|
{$(ALTSRC)\share\vm\utilities}.cpp.obj::
|
||||||
$(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
|
$(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
|
||||||
|
|
||||||
{$(ALTSRC)\share\vm\libadt}.cpp.obj::
|
{$(ALTSRC)\share\vm\libadt}.cpp.obj::
|
||||||
$(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
|
$(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
|
||||||
|
|
||||||
{$(ALTSRC)\share\vm\opto}.cpp.obj::
|
{$(ALTSRC)\share\vm\opto}.cpp.obj::
|
||||||
$(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
|
$(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
|
||||||
|
|
||||||
{$(ALTSRC)\os\windows\vm}.cpp.obj::
|
{$(ALTSRC)\os\windows\vm}.cpp.obj::
|
||||||
$(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
|
$(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
|
||||||
|
|
||||||
# otherwise we can't specify the output filename.
|
# otherwise we can't specify the output filename.
|
||||||
{$(ALTSRC)\os\windows\vm}.rc.res:
|
{$(ALTSRC)\os\windows\vm}.rc.res:
|
||||||
@$(RC) $(RC_FLAGS) /fo"$@" $<
|
@$(RC) $(RC_FLAGS) /fo"$@" $<
|
||||||
|
|
||||||
{$(ALTSRC)\cpu\$(Platform_arch)\vm}.cpp.obj::
|
{$(ALTSRC)\cpu\$(Platform_arch)\vm}.cpp.obj::
|
||||||
$(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
|
$(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
|
||||||
|
|
||||||
{$(ALTSRC)\os_cpu\windows_$(Platform_arch)\vm}.cpp.obj::
|
{$(ALTSRC)\os_cpu\windows_$(Platform_arch)\vm}.cpp.obj::
|
||||||
$(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
|
$(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
|
||||||
|
|
||||||
{..\generated\incls}.cpp.obj::
|
{..\generated\incls}.cpp.obj::
|
||||||
$(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
|
$(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
|
||||||
|
|
||||||
{..\generated\adfiles}.cpp.obj::
|
{..\generated\adfiles}.cpp.obj::
|
||||||
$(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
|
$(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
|
||||||
|
|
||||||
{..\generated\jvmtifiles}.cpp.obj::
|
{..\generated\jvmtifiles}.cpp.obj::
|
||||||
$(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
|
$(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
|
||||||
|
|
||||||
|
{$(ALTSRC)\share\vm\jfr}.cpp.obj::
|
||||||
|
$(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
|
||||||
|
|
||||||
|
{$(ALTSRC)\share\vm\jfr\agent}.cpp.obj::
|
||||||
|
$(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
|
||||||
|
|
||||||
|
{$(ALTSRC)\share\vm\jfr\agent\isolated_deps\util}.cpp.obj::
|
||||||
|
$(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
|
||||||
|
|
||||||
|
{$(ALTSRC)\share\vm\jfr\jvm}.cpp.obj::
|
||||||
|
$(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
|
||||||
|
|
||||||
default::
|
default::
|
||||||
|
|
||||||
_build_pch_file.obj:
|
_build_pch_file.obj:
|
||||||
@echo #include "precompiled.hpp" > ../generated/_build_pch_file.cpp
|
@echo #include "precompiled.hpp" > ../generated/_build_pch_file.cpp
|
||||||
$(CPP) $(CPP_FLAGS) /Fp"vm.pch" /Yc"precompiled.hpp" /c ../generated/_build_pch_file.cpp
|
$(CXX) $(CXX_FLAGS) /Fp"vm.pch" /Yc"precompiled.hpp" /c ../generated/_build_pch_file.cpp
|
||||||
|
|||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user