Compare commits

...

2541 Commits

Author SHA1 Message Date
J. Duke
93a052bab3 Merge 2017-07-05 18:41:33 +02:00
J. Duke
2414951dd3 Merge 2017-07-05 18:41:29 +02:00
J. Duke
050eb5168e Merge 2017-07-05 18:41:19 +02:00
J. Duke
b72b8e194e Merge 2017-07-05 18:41:15 +02:00
J. Duke
b74c7b3808 Merge 2017-07-05 18:41:10 +02:00
J. Duke
7cd6e230ea Merge 2017-07-05 18:41:05 +02:00
J. Duke
8911e12adf Merge 2017-07-05 18:40:46 +02:00
J. Duke
ae06986c80 Added tag jdk8-b77 for changeset d17eb2e13e36 2017-07-05 18:40:21 +02:00
J. Duke
7ba83041b1 Merge 2017-07-05 18:40:20 +02:00
J. Duke
171e39a058 Merge 2017-07-05 18:40:16 +02:00
J. Duke
d0a89bf0ce Merge 2017-07-05 18:40:08 +02:00
J. Duke
86b46f2113 Merge 2017-07-05 18:40:04 +02:00
J. Duke
94d3e22c87 Merge 2017-07-05 18:39:58 +02:00
J. Duke
2907a0c10f Merge 2017-07-05 18:39:54 +02:00
J. Duke
d053ad2a28 Merge 2017-07-05 18:39:42 +02:00
J. Duke
918f015f18 Added tag jdk8-b76 for changeset f407160c280d 2017-07-05 18:39:14 +02:00
J. Duke
9a87fa5db9 Merge 2017-07-05 18:39:13 +02:00
J. Duke
89d052603d Merge 2017-07-05 18:39:09 +02:00
J. Duke
236fc341a2 Merge 2017-07-05 18:39:05 +02:00
J. Duke
154d04e929 Merge 2017-07-05 18:39:00 +02:00
J. Duke
b3c7ed26d3 Merge 2017-07-05 18:38:56 +02:00
J. Duke
421567fdaa Merge 2017-07-05 18:38:51 +02:00
J. Duke
511a59c696 Merge 2017-07-05 18:38:46 +02:00
J. Duke
828d2063d2 Added tag jdk8-b75 for changeset f1478a6d25fd 2017-07-05 18:38:33 +02:00
J. Duke
5f0d1aff63 Merge 2017-07-05 18:38:32 +02:00
J. Duke
25414e9507 Merge 2017-07-05 18:38:28 +02:00
J. Duke
64e10ad1ad Merge 2017-07-05 18:38:17 +02:00
J. Duke
4bd5ee8bdb Merge 2017-07-05 18:38:13 +02:00
J. Duke
80de74d575 Merge 2017-07-05 18:38:07 +02:00
J. Duke
12898a0d25 Merge 2017-07-05 18:38:03 +02:00
J. Duke
568e4e56e0 Merge 2017-07-05 18:37:42 +02:00
J. Duke
8a530c580d Added tag jdk8-b74 for changeset f627eff81962 2017-07-05 18:37:14 +02:00
J. Duke
75c48b0d1b Merge 2017-07-05 18:37:13 +02:00
J. Duke
bed477d90d Merge 2017-07-05 18:37:09 +02:00
J. Duke
0c10a5d7eb Merge 2017-07-05 18:37:04 +02:00
J. Duke
6c2dcf473c Merge 2017-07-05 18:36:58 +02:00
J. Duke
05154fcb04 Merge 2017-07-05 18:36:52 +02:00
J. Duke
a894ac0ae7 Merge 2017-07-05 18:36:48 +02:00
J. Duke
f0dc1b9881 Merge 2017-07-05 18:36:38 +02:00
J. Duke
7d55c30765 Added tag jdk8-b73 for changeset fe94b40ffd93 2017-07-05 18:36:12 +02:00
J. Duke
1c11f83e92 Merge 2017-07-05 18:36:11 +02:00
J. Duke
16753c9198 Merge 2017-07-05 18:36:08 +02:00
J. Duke
dd65c08868 Merge 2017-07-05 18:36:01 +02:00
J. Duke
0b803c8b53 Merge 2017-07-05 18:35:57 +02:00
J. Duke
0a22e173d6 Merge 2017-07-05 18:35:53 +02:00
J. Duke
3d2f01879c Merge 2017-07-05 18:35:49 +02:00
J. Duke
8cbe3d2743 Merge 2017-07-05 18:35:38 +02:00
J. Duke
be76fc517f Added tag jdk8-b72 for changeset 6725b3961f98 2017-07-05 18:35:27 +02:00
J. Duke
8261ee6da3 Merge 2017-07-05 18:35:26 +02:00
J. Duke
9c1e33d08c Merge 2017-07-05 18:35:22 +02:00
J. Duke
77fb006441 Merge 2017-07-05 18:35:18 +02:00
J. Duke
7d50a99bd8 Merge 2017-07-05 18:35:14 +02:00
J. Duke
c430497460 Merge 2017-07-05 18:35:11 +02:00
J. Duke
b975e9076b Merge 2017-07-05 18:35:07 +02:00
J. Duke
ad5c81704c Merge 2017-07-05 18:35:03 +02:00
J. Duke
f62e421be4 Added tag jdk8-b71 for changeset a41ada2ed4ef 2017-07-05 18:34:52 +02:00
J. Duke
e7187d14db Merge 2017-07-05 18:34:52 +02:00
J. Duke
404d7476b9 Merge 2017-07-05 18:34:47 +02:00
J. Duke
b390a90275 Merge 2017-07-05 18:34:39 +02:00
J. Duke
28e7395a79 Merge 2017-07-05 18:34:35 +02:00
J. Duke
7c037a69a2 Merge 2017-07-05 18:34:29 +02:00
J. Duke
caab605a3c Merge 2017-07-05 18:34:24 +02:00
J. Duke
30e0acc2eb Merge 2017-07-05 18:34:10 +02:00
J. Duke
ad2d6c7304 Added tag jdk8-b70 for changeset 0d625373c69e 2017-07-05 18:33:59 +02:00
J. Duke
78bc845d66 Merge 2017-07-05 18:33:58 +02:00
J. Duke
15c1ac891b Merge 2017-07-05 18:33:53 +02:00
J. Duke
5defb71047 Merge 2017-07-05 18:33:48 +02:00
J. Duke
922add969a Merge 2017-07-05 18:33:44 +02:00
J. Duke
5e32cc4aa1 Merge 2017-07-05 18:33:40 +02:00
J. Duke
9666b7da3f Merge 2017-07-05 18:33:36 +02:00
J. Duke
18c668e87a Merge 2017-07-05 18:33:29 +02:00
J. Duke
fe3ab5fb83 Added tag jdk8-b69 for changeset adb5171c554e 2017-07-05 18:33:13 +02:00
J. Duke
902594c3e6 Merge 2017-07-05 18:33:13 +02:00
J. Duke
4f99e62a5c Merge 2017-07-05 18:33:09 +02:00
J. Duke
167e25a35a Merge 2017-07-05 18:33:03 +02:00
J. Duke
9dfb5d8720 Merge 2017-07-05 18:32:59 +02:00
J. Duke
ee4833d707 Merge 2017-07-05 18:32:55 +02:00
J. Duke
a6b48817ff Merge 2017-07-05 18:32:51 +02:00
J. Duke
8ecb1333e7 Merge 2017-07-05 18:32:40 +02:00
J. Duke
5426c55692 Added tag jdk8-b68 for changeset cb33628d4e8f 2017-07-05 18:32:27 +02:00
J. Duke
faaa074af7 Merge 2017-07-05 18:32:26 +02:00
J. Duke
156097f517 Merge 2017-07-05 18:32:22 +02:00
J. Duke
35d6f09bb4 Merge 2017-07-05 18:32:16 +02:00
J. Duke
b8790e0e70 Merge 2017-07-05 18:32:12 +02:00
J. Duke
5ebc8f4779 Merge 2017-07-05 18:32:08 +02:00
J. Duke
1faf4f7e32 Merge 2017-07-05 18:32:03 +02:00
J. Duke
ce594a00c5 Merge 2017-07-05 18:31:45 +02:00
J. Duke
b2bf35c6d8 Added tag jdk8-b67 for changeset 76cc9bd3ece4 2017-07-05 18:31:28 +02:00
J. Duke
924beaaf2c Merge 2017-07-05 18:31:27 +02:00
J. Duke
90cbbab800 Merge 2017-07-05 18:31:23 +02:00
J. Duke
04266857c4 Merge 2017-07-05 18:31:19 +02:00
J. Duke
91c5b72633 Merge 2017-07-05 18:31:15 +02:00
J. Duke
5229273660 Merge 2017-07-05 18:31:12 +02:00
J. Duke
57c273a689 Merge 2017-07-05 18:31:08 +02:00
J. Duke
ab4646a034 Merge 2017-07-05 18:31:05 +02:00
J. Duke
b94c2e86de Added tag jdk8-b66 for changeset 17820b958ae8 2017-07-05 18:30:51 +02:00
J. Duke
81ecd2932e Merge 2017-07-05 18:30:50 +02:00
J. Duke
eedb7e6e6d Merge 2017-07-05 18:30:46 +02:00
J. Duke
594390779b Merge 2017-07-05 18:30:37 +02:00
J. Duke
4374464e64 Merge 2017-07-05 18:30:33 +02:00
J. Duke
160ee581b2 Merge 2017-07-05 18:30:29 +02:00
J. Duke
1113ececbf Merge 2017-07-05 18:30:25 +02:00
J. Duke
57b4c14b54 Merge 2017-07-05 18:30:15 +02:00
J. Duke
c7ff8ac152 Added tag jdk8-b65 for changeset a2cf4d4a4843 2017-07-05 18:29:57 +02:00
J. Duke
e7d87b234c Merge 2017-07-05 18:29:57 +02:00
J. Duke
0adcfb6712 Merge 2017-07-05 18:29:53 +02:00
J. Duke
07ad741e62 Merge 2017-07-05 18:29:45 +02:00
J. Duke
6937164f1c Merge 2017-07-05 18:29:41 +02:00
J. Duke
dff7273b27 Merge 2017-07-05 18:29:37 +02:00
J. Duke
35b4a26793 Merge 2017-07-05 18:29:33 +02:00
J. Duke
b98c42794a Merge 2017-07-05 18:29:23 +02:00
J. Duke
ccba13a936 Added tag jdk8-b64 for changeset 70fa4b11f265 2017-07-05 18:29:06 +02:00
J. Duke
86c5d4aaeb Merge 2017-07-05 18:29:05 +02:00
J. Duke
733b90c696 Merge 2017-07-05 18:29:01 +02:00
J. Duke
fb59e592f4 Merge 2017-07-05 18:28:52 +02:00
J. Duke
11d0bc193e Merge 2017-07-05 18:28:48 +02:00
J. Duke
993575f139 Merge 2017-07-05 18:28:43 +02:00
J. Duke
0510f860fc Merge 2017-07-05 18:28:37 +02:00
J. Duke
ab38e85e2d Merge 2017-07-05 18:28:20 +02:00
J. Duke
3672cc8983 Added tag jdk8-b63 for changeset 21ee1dd7b809 2017-07-05 18:28:05 +02:00
J. Duke
59b1cb08b1 Merge 2017-07-05 18:28:04 +02:00
J. Duke
eee3ee6667 Merge 2017-07-05 18:28:00 +02:00
J. Duke
f616c07625 Merge 2017-07-05 18:27:52 +02:00
J. Duke
793d2a5cc7 Merge 2017-07-05 18:27:48 +02:00
J. Duke
bff3424f31 Merge 2017-07-05 18:27:41 +02:00
J. Duke
ba5a934ca5 Merge 2017-07-05 18:27:34 +02:00
J. Duke
3093593cd6 Merge 2017-07-05 18:27:17 +02:00
J. Duke
2ccd6e0dcd Added tag jdk8-b62 for changeset 8d9d430b4244 2017-07-05 18:26:51 +02:00
J. Duke
650aac0d5e Merge 2017-07-05 18:26:51 +02:00
J. Duke
660252e4ca Merge 2017-07-05 18:26:46 +02:00
J. Duke
a7f5555be7 Merge 2017-07-05 18:26:42 +02:00
J. Duke
ef7e44d123 Merge 2017-07-05 18:26:38 +02:00
J. Duke
70623bf3ab Merge 2017-07-05 18:26:35 +02:00
J. Duke
7f6f9bba4e Merge 2017-07-05 18:26:30 +02:00
J. Duke
d9350fdee2 Merge 2017-07-05 18:26:26 +02:00
J. Duke
919df15706 Added tag jdk8-b61 for changeset cdaa6122185f 2017-07-05 18:26:11 +02:00
J. Duke
1c78bebc35 Merge 2017-07-05 18:26:11 +02:00
J. Duke
cddf07210d Merge 2017-07-05 18:26:07 +02:00
J. Duke
9f17fd50fc Merge 2017-07-05 18:25:59 +02:00
J. Duke
3fa8795fb3 Merge 2017-07-05 18:25:55 +02:00
J. Duke
3cd8332ef3 Merge 2017-07-05 18:25:50 +02:00
J. Duke
b4c5895713 Merge 2017-07-05 18:25:45 +02:00
J. Duke
71c74c0b70 Merge 2017-07-05 18:25:32 +02:00
J. Duke
87333a2f62 Added tag jdk8-b60 for changeset 5e3adc681779 2017-07-05 18:25:14 +02:00
J. Duke
34063e3656 Merge 2017-07-05 18:25:14 +02:00
J. Duke
0042095350 Merge 2017-07-05 18:25:10 +02:00
J. Duke
90f4e99281 Merge 2017-07-05 18:25:06 +02:00
J. Duke
5b7fbbf597 Merge 2017-07-05 18:25:03 +02:00
J. Duke
d83447ce3b Merge 2017-07-05 18:24:59 +02:00
J. Duke
41ffa08140 Merge 2017-07-05 18:24:56 +02:00
J. Duke
3110f8bbe6 Merge 2017-07-05 18:24:52 +02:00
J. Duke
205dc9cf8b Added tag jdk8-b59 for changeset 3bd874584fc0 2017-07-05 18:24:38 +02:00
J. Duke
4e637a8f80 Merge 2017-07-05 18:24:37 +02:00
J. Duke
376e043f9d Merge 2017-07-05 18:24:33 +02:00
J. Duke
c23b39b47b Merge 2017-07-05 18:24:29 +02:00
J. Duke
9817a2f423 Merge 2017-07-05 18:24:25 +02:00
J. Duke
c2f20c5030 Merge 2017-07-05 18:24:21 +02:00
J. Duke
23494ba5e1 Merge 2017-07-05 18:24:16 +02:00
J. Duke
a8a3c94590 Merge 2017-07-05 18:24:12 +02:00
J. Duke
a7b9262623 Added tag jdk8-b58 for changeset 479d3302a26d 2017-07-05 18:23:51 +02:00
J. Duke
5238f9a66e Merge 2017-07-05 18:23:50 +02:00
J. Duke
55b82e40b3 Merge 2017-07-05 18:23:47 +02:00
J. Duke
24677fd4bb Merge 2017-07-05 18:23:39 +02:00
J. Duke
5107b3609e Merge 2017-07-05 18:23:35 +02:00
J. Duke
20730872fc Merge 2017-07-05 18:23:31 +02:00
J. Duke
e6408227d1 Merge 2017-07-05 18:23:26 +02:00
J. Duke
bfd962e674 Merge 2017-07-05 18:23:11 +02:00
J. Duke
2fef43b669 Added tag jdk8-b57 for changeset 2c21c080b11b 2017-07-05 18:22:53 +02:00
J. Duke
901ebe2983 Merge 2017-07-05 18:22:52 +02:00
J. Duke
47bb8608ad Merge 2017-07-05 18:22:48 +02:00
J. Duke
48ad58fa77 Merge 2017-07-05 18:22:45 +02:00
J. Duke
80fc527638 Merge 2017-07-05 18:22:41 +02:00
J. Duke
20906872f6 Merge 2017-07-05 18:22:37 +02:00
J. Duke
4246df5345 Merge 2017-07-05 18:22:34 +02:00
J. Duke
8a55a875e1 Merge 2017-07-05 18:22:29 +02:00
J. Duke
371977df55 Added tag jdk8-b56 for changeset ffe6bce5a521 2017-07-05 18:22:17 +02:00
J. Duke
6c1ac6f6bb Merge 2017-07-05 18:22:17 +02:00
J. Duke
5d3d8d0b84 Merge 2017-07-05 18:22:13 +02:00
J. Duke
9b01d7e0bb Merge 2017-07-05 18:22:07 +02:00
J. Duke
44ae1fd86b Merge 2017-07-05 18:22:04 +02:00
J. Duke
b614bef576 Merge 2017-07-05 18:22:00 +02:00
J. Duke
24c9ac5300 Merge 2017-07-05 18:21:57 +02:00
J. Duke
a337e0b71b Merge 2017-07-05 18:21:43 +02:00
J. Duke
cca26ba2b7 Added tag jdk8-b55 for changeset 319f583f66db 2017-07-05 18:21:34 +02:00
J. Duke
b41431ec80 Merge 2017-07-05 18:21:34 +02:00
J. Duke
68a1e451a2 Merge 2017-07-05 18:21:31 +02:00
J. Duke
f47e7715b4 Merge 2017-07-05 18:21:25 +02:00
J. Duke
1a48692ef0 Merge 2017-07-05 18:21:21 +02:00
J. Duke
d549f23f6e Merge 2017-07-05 18:21:16 +02:00
J. Duke
1ec942e76b Merge 2017-07-05 18:21:11 +02:00
J. Duke
1f440ad0dd Merge 2017-07-05 18:20:49 +02:00
J. Duke
298c94f697 Added tag jdk8-b54 for changeset 7c6aa31ff1b2 2017-07-05 18:20:34 +02:00
J. Duke
264a0511f0 Merge 2017-07-05 18:20:34 +02:00
J. Duke
f82ac54169 Merge 2017-07-05 18:20:30 +02:00
J. Duke
fc33bef8bb Merge 2017-07-05 18:20:27 +02:00
J. Duke
3b33fd061c Merge 2017-07-05 18:20:24 +02:00
J. Duke
e6ffa52d43 Merge 2017-07-05 18:20:20 +02:00
J. Duke
8363b5b7c9 Merge 2017-07-05 18:20:17 +02:00
J. Duke
cf93fdf2b3 Merge 2017-07-05 18:20:14 +02:00
J. Duke
1a12fb6afd Added tag jdk8-b53 for changeset c7aa5cca1c01 2017-07-05 18:20:01 +02:00
J. Duke
b07a721f8e Merge 2017-07-05 18:20:00 +02:00
J. Duke
6e3ed1044e Merge 2017-07-05 18:19:56 +02:00
J. Duke
069e1296d1 Merge 2017-07-05 18:19:53 +02:00
J. Duke
bff2359a25 Merge 2017-07-05 18:19:51 +02:00
J. Duke
d9de7d838b Merge 2017-07-05 18:19:48 +02:00
J. Duke
10134c92f8 Merge 2017-07-05 18:19:45 +02:00
J. Duke
69c2591eb4 Merge 2017-07-05 18:19:42 +02:00
J. Duke
f7b87d9833 Added tag jdk8-b52 for changeset b67041a6cb50 2017-07-05 18:19:34 +02:00
J. Duke
9e31be3e8d Merge 2017-07-05 18:19:33 +02:00
J. Duke
8bb866cd99 Merge 2017-07-05 18:19:30 +02:00
J. Duke
b7b5241c60 Merge 2017-07-05 18:19:25 +02:00
J. Duke
ed8595a7e8 Merge 2017-07-05 18:19:22 +02:00
J. Duke
372f7206d6 Merge 2017-07-05 18:19:19 +02:00
J. Duke
0c5ff79b67 Merge 2017-07-05 18:19:16 +02:00
J. Duke
f470b922c6 Merge 2017-07-05 18:19:08 +02:00
J. Duke
4b70292c6e Added tag jdk8-b51 for changeset 382651d28f25 2017-07-05 18:18:57 +02:00
J. Duke
bd04d75035 Merge 2017-07-05 18:18:57 +02:00
J. Duke
29b4cab674 Merge 2017-07-05 18:18:53 +02:00
J. Duke
bb1e6e94f7 Merge 2017-07-05 18:18:50 +02:00
J. Duke
b0d90ba03c Merge 2017-07-05 18:18:47 +02:00
J. Duke
8fafbaec66 Merge 2017-07-05 18:18:43 +02:00
J. Duke
aa172a43cf Merge 2017-07-05 18:18:40 +02:00
J. Duke
5a1b0c29e6 Merge 2017-07-05 18:18:31 +02:00
J. Duke
b4175c09a4 Added tag jdk8-b50 for changeset 38fe5ab02890 2017-07-05 18:18:18 +02:00
J. Duke
6384444219 Merge 2017-07-05 18:18:18 +02:00
J. Duke
e7bedea0fb Merge 2017-07-05 18:18:14 +02:00
J. Duke
488435977c Merge 2017-07-05 18:18:11 +02:00
J. Duke
b54747af16 Merge 2017-07-05 18:18:07 +02:00
J. Duke
1757e1398f Merge 2017-07-05 18:18:04 +02:00
J. Duke
6c8f65f715 Merge 2017-07-05 18:18:01 +02:00
J. Duke
55ea968da0 Merge 2017-07-05 18:17:57 +02:00
J. Duke
41cc1f7428 Added tag jdk8-b49 for changeset cecd7026f30c 2017-07-05 18:17:39 +02:00
J. Duke
5d98b14bef Merge 2017-07-05 18:17:39 +02:00
J. Duke
6b99d4e1b2 Merge 2017-07-05 18:17:35 +02:00
J. Duke
90bc153da6 Merge 2017-07-05 18:17:29 +02:00
J. Duke
72cb3a3a42 Merge 2017-07-05 18:17:25 +02:00
J. Duke
d320bd5872 Merge 2017-07-05 18:17:20 +02:00
J. Duke
f33da9356b Merge 2017-07-05 18:17:16 +02:00
J. Duke
28535b90cc Merge 2017-07-05 18:17:04 +02:00
J. Duke
c56fac967b Added tag jdk8-b48 for changeset 086271e35b0a 2017-07-05 18:16:53 +02:00
J. Duke
5d039154de Merge 2017-07-05 18:16:52 +02:00
J. Duke
01abeb6720 Merge 2017-07-05 18:16:48 +02:00
J. Duke
56411ee3f3 Merge 2017-07-05 18:16:44 +02:00
J. Duke
8d00b30bd7 Merge 2017-07-05 18:16:39 +02:00
J. Duke
60632a1c47 Merge 2017-07-05 18:16:35 +02:00
J. Duke
37f680fdfa Merge 2017-07-05 18:16:31 +02:00
J. Duke
7346f2e781 Merge 2017-07-05 18:16:27 +02:00
J. Duke
caf3a22551 Added tag jdk8-b47 for changeset b820143a6f1c 2017-07-05 18:16:12 +02:00
David Holmes
345e7e8175 8008481: Dependency analyzer needs exclusion for profile builds with JFR disabled
Reviewed-by: alanb
2013-02-19 17:32:10 -05:00
Alan Bateman
48fbf1ca88 Merge 2013-02-19 11:32:46 +00:00
David Holmes
8c52b75d0f 8008424: Isolate PROFILE make variable from incidental setting in the environment
Reviewed-by: erikj, alanb
2013-02-19 06:27:20 -05:00
Alan Bateman
8bb4f96911 8007097: (profiles) Build needs test to ensure that profile definitions are updated
Reviewed-by: dholmes, erikj
2013-02-19 11:08:43 +00:00
David Holmes
aa38d46a14 Merge 2013-02-18 15:35:57 -05:00
David Holmes
25c1411706 Merge 2013-02-18 15:35:05 -05:00
Erik Joelsson
7e8a3b3d11 8008295: build-infra: Cleanup in Import.gmk
Reviewed-by: ohrstrom, tbell
2013-02-18 11:27:43 +01:00
Erik Joelsson
bf12ddea85 8008294: build-infra: Build-infra closed fails on solaris 11.1
Reviewed-by: ohrstrom, dholmes, tbell
2013-02-18 11:26:23 +01:00
Erik Joelsson
2a904298d2 Merge 2013-02-18 10:48:51 +01:00
Erik Joelsson
b6f45f1098 Merge 2013-02-18 10:46:22 +01:00
Alan Bateman
3a353cb8e0 8007436: (profiles) Add JSR-310 to Compact Profiles contents
Reviewed-by: dholmes, erikj
2013-02-18 08:57:06 +00:00
David Holmes
e57875e8ab Merge 2013-02-17 16:44:55 -05:00
David Holmes
e0ece27387 Merge 2013-02-17 16:44:28 -05:00
David Holmes
390cc1d7a1 Merge 2013-02-17 16:44:19 -05:00
Alejandro Murillo
96300f3ad9 Added tag hs25-b19 for changeset 9895f0eb0c56 2013-02-15 13:27:21 -08:00
Alejandro Murillo
3611e527c8 Merge 2013-02-15 13:27:20 -08:00
Erik Joelsson
7dc8dad176 8005879: Add -DMAC_OS_X_VERSION_MAX_ALLOWED=1070 to builds on Mac
Reviewed-by: ohair
2013-02-15 10:41:15 +01:00
Erik Joelsson
d49ae7856e 8005879: Add -DMAC_OS_X_VERSION_MAX_ALLOWED=1070 to builds on Mac
Reviewed-by: ohair
2013-02-15 10:40:46 +01:00
Lana Steuck
12ac02b1d3 Merge 2013-02-14 22:12:15 -08:00
Lana Steuck
e2244526fa Merge 2013-02-14 22:11:58 -08:00
Lana Steuck
b6991ff139 Merge 2013-02-14 22:11:49 -08:00
David Katleman
32bced14f5 Added tag jdk8-b77 for changeset d97b73add494 2013-02-14 11:44:21 -08:00
David Katleman
14251d6480 Added tag jdk8-b77 for changeset e587650e9aa6 2013-02-14 11:44:09 -08:00
David Katleman
08c118806c Added tag jdk8-b77 for changeset 9df84d06d040 2013-02-14 11:43:54 -08:00
David Katleman
827f8f788b Added tag jdk8-b77 for changeset bd0373289b63 2013-02-14 11:43:52 -08:00
David Katleman
2e048c5ce6 Added tag jdk8-b77 for changeset 739a5754a11e 2013-02-14 11:43:44 -08:00
David Katleman
78687c4aaf Added tag jdk8-b77 for changeset e637fdab418c 2013-02-14 11:43:36 -08:00
David Katleman
0b69873d73 Added tag jdk8-b77 for changeset b2c2a48dae5c 2013-02-14 11:43:27 -08:00
Vladimir Ivanov
8952875c84 Merge 2013-02-14 05:36:59 -08:00
Bengt Rutisson
20bc6a3d8c Merge 2013-02-14 11:01:05 +01:00
Lana Steuck
9b523dc375 Merge 2013-02-13 17:57:31 -08:00
Lana Steuck
187c4688e0 Merge 2013-02-13 17:55:44 -08:00
Jia-Hong Chen
20987e6144 8008017: The fix for 8005129 does not build on Windows
Reviewed-by: prr, jgodinez
2013-02-13 15:06:47 -08:00
Karen Kinnear
a8dfb771d1 Merge 2013-02-13 16:15:09 -05:00
Daniel D. Daugherty
ba9cf66b48 8007935: java/lang/instrument/RedefineSubclassWithTwoInterfaces.sh should use $COMPILEJAVA for javac
Reviewed-by: sspitsyn, alanb
2013-02-13 13:22:31 -08:00
Bharadwaj Yadavalli
db31a896d8 8007888: jdk fix default method: VerifyError: Illegal use of nonvirtual
Recognize VM generated method in old verifier. With 8004967

Reviewed-by: coleenp, acorn
2013-02-13 16:09:13 -05:00
Lana Steuck
61363dfe99 Merge 2013-02-13 13:01:16 -08:00
Kumar Srinivasan
4c2a4c9b4a 8005750: [parfait] Memory leak at jdk/src/share/bin/parse_manifest.c
Reviewed-by: jjh
2013-02-13 12:56:46 -08:00
Lana Steuck
56014d30fc Merge 2013-02-13 12:38:28 -08:00
Lana Steuck
0691bb6c06 Merge 2013-02-13 11:57:59 -08:00
Xueming Shen
48a592be5a 8008161: Regression: j.u.TimeZone.getAvailableIDs(rawOffset) returns non-sorted list
To return a sorted list

Reviewed-by: lancea, naoto
2013-02-13 11:49:34 -08:00
Vinnie Ryan
8f58ebc261 8007755: Support the logical grouping of keystores
Reviewed-by: mullan
2013-02-13 19:40:51 +00:00
Lana Steuck
3bfd774a99 Merge 2013-02-13 11:25:58 -08:00
Lana Steuck
264f4dbe27 Merge 2013-02-13 11:25:14 -08:00
Lana Steuck
21e48ed16d Merge 2013-02-13 11:21:14 -08:00
Dmitry Samersoff
403e23ec70 8008095: TEST_BUG: JDK-8002048 one more testcase failure on Solaris
Fixed couple of more Solaris shell incompatibilities

Reviewed-by: chegar
2013-02-13 21:06:30 +04:00
Eric Mccorkle
8ccde1a96e 8006345: Report Synthesized Parameters in java.lang.reflect.Parameter API
8006896: ClassReader doesn't see MethodParameters attr for method of anon inner class
8007098: Output Synthesized Parameters to MethodParameters Attributes

Correctly report synthesized and mandated parameters

Reviewed-by: mcimadamore, jjg
2013-02-13 17:04:21 +00:00
Serguei Spitsyn
a89fa83b32 Merge 2013-02-13 08:42:03 -08:00
Igor Ignatyev
034705ee13 8006683: Add WhiteBox API to testing of compiler
Reviewed-by: kvn, vlivanov
2013-02-13 08:29:04 -08:00
Vinnie Ryan
fdcad628a4 Merge 2013-02-13 16:03:24 +00:00
Vinnie Ryan
3d55cc1e02 8007934: algorithm parameters for PBE Scheme 2 not decoded correctly in PKCS12 keystore
Reviewed-by: mullan
2013-02-13 16:01:26 +00:00
Petr Pchelko
959ddfce4a 8005629: javac warnings compiling java.awt.EventDispatchThread and sun.awt.X11.XIconWindow
Removed macosx specific workaround from shared code and made macosx use public API

Reviewed-by: art, serb
2013-02-13 15:32:50 +00:00
Petr Pchelko
42b8720bef 7079260: InputContext leaks memory
Replaced strong refs with weak refs

Reviewed-by: art, serb
2013-02-13 15:27:29 +00:00
Vladislav Karnaukhov
f44592861c 4199622: RFE: JComboBox shouldn't sending ActionEvents for keyboard navigation
Reviewed-by: alexp, alexsch
2013-02-13 19:23:09 +04:00
Vera Akulova
dfdd79f3ee 7132383: [macosx] bug6596966.java should be adapted for Mac
Reviewed-by: serb, alexsch
2013-02-13 19:06:31 +04:00
Vera Akulova
30a25e41d2 7161759: TEST_BUG: java/awt/Frame/WindowDragTest/WindowDragTest.java fails to compile, should be modified
Added @build Util jtreg tag

Reviewed-by: serb, alexsch
2013-02-13 18:01:18 +04:00
Joel Borggrén-Franck
e0eba88c1b 8007278: Rename j.l.r.AnnotatedElement.getAnnotations(Class) to getAnnotationsByType(Class)
Reviewed-by: darcy, abuckley
2013-02-13 10:36:36 +01:00
Joel Borggrén-Franck
14c0c8eed8 8007279: Rename javax.l.model.element.Element.getAnnotations(Class) to getAnnotationsByType(Class)
Reviewed-by: darcy, abuckley
2013-02-13 10:33:13 +01:00
Werner Dietl
464abcb4fa 8008077: update reference impl for type-annotations
Reviewed-by: jjg
2013-02-12 17:15:29 -08:00
Krystal Mo
13c5c423d6 Merge 2013-02-12 14:33:19 -08:00
Zhengyu Gu
4e7de85e4d 8006691: Remove jvm_version_info->is_kernel_jvm field
Remove is_kernel_jvm field in jvm_version_info structure, as kernel VM has been deprecated

Reviewed-by: mchung
2013-02-12 14:47:36 -05:00
Maurizio Cimadamore
1ec5dfafe0 8007464: Add graph inference support
Add support for more aggressive type-inference scheme

Reviewed-by: jjg
2013-02-12 19:25:09 +00:00
Phil Race
7ca3c9dd84 8007748: MacOSX build error : cast of type 'SEL' to 'uintptr_t' (aka 'unsigned long') is deprecated; use sel_getName instead
Reviewed-by: anthony
2013-02-12 09:58:21 -08:00
Stephen Colebourne
e7cdd4a93a 8007392: JSR 310: DateTime API Updates
Integration of JSR310 Date/Time API for M7

Co-authored-by: Roger Riggs <roger.riggs@oracle.com>
Co-authored-by: Masayoshi Okutsu <masayoshi.okutsu@oracle.com>
Co-authored-by: Patrick Zhang <patrick.zhang@oracle.com>
Reviewed-by: darcy, alanb, naoto
2013-02-12 09:27:48 -08:00
Stephen Colebourne
73c043f49e 8007392: JSR 310: DateTime API Updates
8007520: Update date/time classes in j.util and j.sql packages
8007572: Replace existing jdk timezone data at <java.home>/lib/zi with JSR310's tzdb

Integration of JSR310 Date/Time API for M7

Co-authored-by: Roger Riggs <roger.riggs@oracle.com>
Co-authored-by: Masayoshi Okutsu <masayoshi.okutsu@oracle.com>
Co-authored-by: Patrick Zhang <patrick.zhang@oracle.com>
Reviewed-by: darcy, alanb, naoto
2013-02-12 09:25:43 -08:00
Zhengyu Gu
ef7aa05f20 8007950: Undo hs_file permission change
Reverse hs_err file permission back to 0666, as early push was premature

Reviewed-by: dsamersoff, dcubed, acorn
2013-02-12 12:19:28 -05:00
Krystal Mo
851ae93451 8002169: TEST_BUG: compiler/7009359/Test7009359.java sometimes times out
Make the test less prone to timeout by reducing the amount of iteration and allowing main to be compiled

Reviewed-by: jrose
2013-02-12 07:39:42 -08:00
Vicente Romero
9bdfca5e56 8006334: javap, JavapTask constructor breaks with null pointer exception if parameter options is null
Reviewed-by: jjg
2013-02-12 13:36:56 +00:00
Dmitry Samersoff
232b814f68 8007786: JDK-8002048 testcase doesn't work on Solaris
Test built in into Solaris shell doesn't have -e operator

Reviewed-by: sla, sspitsyn
2013-02-12 16:02:14 +04:00
Roland Westrelin
c401bf065d 7197327: 40% regression on 8 b41 comp 8 b40 on specjvm2008.mpegaudio on oob
Add support for expensive nodes.

Reviewed-by: kvn
2013-02-12 12:56:11 +01:00
Matherey Nunez
024075fabb 8004822: RFE to write language model API tests for repeating annotations based on the spec updates
Reviewed-by: jjg, abuckley
2013-02-12 11:28:45 +01:00
Lana Steuck
e8d53ad94a Merge 2013-02-11 16:15:09 -08:00
Lana Steuck
048185ef4c Merge 2013-02-11 16:14:27 -08:00
Lana Steuck
b21082a545 Merge 2013-02-11 16:12:53 -08:00
Morris Meyer
527b0d661a 8003252: PPC: move MacroAssembler into separate file
Moved MacroAssembler into separate file

Reviewed-by: twisti, kvn, dlong
2013-02-11 14:47:04 -08:00
Joe Darcy
44e3518c32 8007574: Provide isFunctionalInterface in javax.lang.model
Reviewed-by: jjg
2013-02-11 13:37:41 -08:00
Coleen Phillimore
faea95b8d3 8007320: NPG: move method annotations
Allocate method annotations and attach to ConstMethod if present

Reviewed-by: dcubed, jiangli, sspitsyn, iklam
2013-02-11 14:06:22 -05:00
Morris Meyer
46677b6d86 8003251: ARM: move MacroAssembler into separate file
Moved MacroAssembler into separate file

Reviewed-by: twisti, kvn, dlong
2013-02-11 10:38:11 -08:00
Krystal Mo
212f30a18e 8006430: TraceTypeProfile is a product flag while it should be a diagnostic flag
Make sure all diagnostic and experimental flag kinds are checked in Flag::is_unlocked()

Reviewed-by: kvn
2013-02-10 22:35:38 -08:00
David Chase
43c01fd8b6 8007402: Code cleanup to remove Parfait false positive
Add array access range check

Reviewed-by: kvn
2013-02-09 12:55:09 -08:00
Jonathan Gibbons
b30e5c6313 8007610: javadoc doclint does not work with -private
Reviewed-by: darcy
2013-02-08 17:35:16 -08:00
Zhengyu Gu
ee53020f94 Merge 2013-02-08 16:56:03 -08:00
Morris Meyer
6a910ea8f2 8006851: When TieredCompilation is set, max code cache should be bumped to 256mb
Set ReservedCodeCacheSize to (default value)*5 when TieredCompilation is on.

Reviewed-by: kvn, twisti
2013-02-08 15:39:43 -08:00
Vladimir Kozlov
231bbf39f4 8007708: compiler/6855215 assert(VM_Version::supports_sse4_2())
Added missing UseSSE42 check. Also added missing avx2 assert for vpermq instruction.

Reviewed-by: roland, twisti
2013-02-08 15:07:17 -08:00
Zhengyu Gu
1e2b7bcabb Merge 2013-02-08 14:32:13 -08:00
Zhengyu Gu
15d1949971 Merge 2013-02-08 13:55:41 -08:00
Zhengyu Gu
ef59a25f71 8006691: Remove jvm_version_info.is_kernel_jvm field
Removed is_kernel_jvm from jvm_version_info as Kernel VM has been deprecated

Reviewed-by: mchung, coleenp
2013-02-08 16:31:48 -05:00
Zhengyu Gu
4e766f0ef1 8007791: More Restricted hs_err file permission
Enforce more restricted hs_file permission

Reviewed-by: acorn, dcubed, dsamersoff
2013-02-08 14:49:01 -05:00
Jia-Hong Chen
c3e1c6d07b 8005261: [parfait] #415 sun/java2d/opengl/GLXSurfaceData.c Memory leak of pointer 'glxsdo' allocated with malloc
Reviewed-by: prr, vadim
2013-02-08 11:36:18 -08:00
Jia-Hong Chen
410876d0ee 8005129: [parfait] #1122 - #1130 native/sun/awt/medialib/mlib_Image*.c Memory leak of pointer 'k' allocated with mlib_malloc
Reviewed-by: prr, vadim
2013-02-08 11:25:42 -08:00
Mikhail Cherkasov
fc6a9c2d07 8005932: Java 7 on mac os x only provides text clipboard formats
Reviewed-by: alexp, denis
2013-02-08 22:08:10 +04:00
Serguei Spitsyn
6ff685b4c8 Merge 2013-02-08 09:14:06 -08:00
Alejandro Murillo
2fd28ebb43 8007801: new hotspot build - hs25-b19
Reviewed-by: jcoomes
2013-02-08 08:16:00 -08:00
Alejandro Murillo
59bf14707f Added tag hs25-b18 for changeset f3f52401a78c 2013-02-08 08:07:07 -08:00
Alejandro Murillo
6c172dae73 Merge 2013-02-08 08:07:06 -08:00
Staffan Larsen
a6fefc1cae Merge 2013-02-08 14:05:36 +01:00
Staffan Larsen
e563c0ecf4 8006423: SA: NullPointerException in sun.jvm.hotspot.debugger.bsd.BsdThread.getContext(BsdThread.java:67)
Do not rely on mach thread port names to identify threads from SA

Reviewed-by: dholmes, minqi, rbackman
2013-02-08 12:48:24 +01:00
Christian Tornqvist
92053d4fb2 8007434: Write tests for 8006298
Four tests written for 8006298

Reviewed-by: mgerdin, coleenp
2013-02-08 10:42:24 +01:00
Vicente Romero
59318f1b2e 7167125: Two variables after the same operation in a inner class return different results
Reviewed-by: jjg, mcimadamore
2013-02-08 09:21:19 +00:00
Vicente Romero
561631ea44 8005931: javac doesn't set ACC_STRICT for classes with package access
Reviewed-by: mcimadamore
2013-02-08 09:15:27 +00:00
Vicente Romero
bba9417038 7166455: javac doesn't set ACC_STRICT bit on <clinit> for strictfp class
Reviewed-by: mcimadamore
2013-02-08 09:12:37 +00:00
Bengt Rutisson
8cf98587f7 Merge 2013-02-08 10:08:40 +01:00
Sonali Goel
f1442d8261 7195131: Update 2 compiler combo tests for repeating annotations to include package and default use cases
Reviewed-by: darcy
2013-02-07 20:47:06 -08:00
Vladimir Danushevsky
ac1a75df8c Merge 2013-02-07 20:40:14 -05:00
Bill Pittore
9cad40fca6 Merge 2013-02-07 16:05:48 -05:00
David Katleman
4f0f5861ed Added tag jdk8-b76 for changeset aa274a6f970a 2013-02-07 12:33:21 -08:00
David Katleman
45f09caa8d Added tag jdk8-b76 for changeset 0da59c40187c 2013-02-07 12:33:10 -08:00
David Katleman
2683bbdf2f Added tag jdk8-b76 for changeset 95266e83c5e7 2013-02-07 12:33:01 -08:00
David Katleman
b0b7e821de Added tag jdk8-b76 for changeset 503de5a7b5ef 2013-02-07 12:32:59 -08:00
David Katleman
2ac871a5a1 Added tag jdk8-b76 for changeset faf3f7a9a86f 2013-02-07 12:32:50 -08:00
David Katleman
a68198e6bc Added tag jdk8-b76 for changeset 2fea158ee664 2013-02-07 12:32:39 -08:00
David Katleman
0813162608 Added tag jdk8-b76 for changeset 6bb57fea1027 2013-02-07 12:32:32 -08:00
Vladimir Ivanov
268a4d605c Merge 2013-02-07 12:23:51 -08:00
Daniel D. Daugherty
d5cad58ba3 Merge 2013-02-06 15:22:32 -08:00
Jim Holmlund
c88c3bb683 8007698: jtreg test T6306137.java won't compile with ASCII encoding
Reviewed-by: ksrini
2013-02-06 23:10:35 +00:00
Jia-Hong Chen
fb6927c36c 8005194: [parfait] #353 sun/awt/image/jpeg/imageioJPEG.c Memory leak of pointer 'scale' allocated with calloc()
Reviewed-by: prr, vadim
2013-02-06 14:45:02 -08:00
Daniel D. Daugherty
8ef946f380 7182152: Instrumentation hot swap test incorrect monitor count
Add/refine new tracing support using -XX:TraceRedefineClasses=16384.

Reviewed-by: coleenp, acorn, sspitsyn
2013-02-06 14:31:37 -08:00
Volker Simonis
285249963c 8006807: C2 crash due to out of bounds array access in Parse::do_multianewarray
Check ndimensions before accessing length[i] element

Reviewed-by: kvn
2013-02-06 11:33:49 -08:00
Mike Duigou
62b85e6a17 8006594: Add jdk_core target to jdk/test/Makefile
Reviewed-by: alanb
2013-02-06 11:28:25 -08:00
Alan Bateman
b74073c0db 8007405: Update java.lang.reflect API to replace SYNTHESIZED with MANDATED
Reviewed-by: darcy
2013-02-11 20:16:18 +00:00
Daniel D. Daugherty
249b55b573 8007420: add test for 6805864 to com/sun/jdi, add test for 7182152 to java/lang/instrument
Reviewed-by: coleenp, sspitsyn
2013-02-11 10:07:01 -08:00
Dmitry Samersoff
be1edfbb6f 8007536: Incorrect copyright header in JDP files
Copyright header in JDP files missed the "classpath exception" rule.

Reviewed-by: mikael
2013-02-11 18:44:22 +04:00
Kumar Srinivasan
83b9b38fc5 8007902: [unpack200] incorrect BootstrapMethods attribute
Reviewed-by: jjh
2013-02-10 08:49:39 -08:00
Kumar Srinivasan
8a4107ab64 8007519: [unpack200] produces bad class files when producing BootstrapMethods attribute
Reviewed-by: alanb
2013-02-10 08:07:59 -08:00
Weijun Wang
76953b4d1e 8007761: NTLM coding errors
Reviewed-by: chegar
2013-02-09 16:43:58 +08:00
Weijun Wang
d8233ec657 8001104: Unbound SASL service: the GSSAPI/krb5 mech
Reviewed-by: valeriep
2013-02-09 16:43:49 +08:00
Doug Lea
724f325f44 8005697: Add StampedLock
Reviewed-by: chegar, alanb, dice, martin
2013-02-09 08:35:57 +00:00
Joe Darcy
826105d548 8005623: Retrofit FunctionalInterface annotations to core platform interfaces
Reviewed-by: mduigou, chegar, alanb
2013-02-08 16:00:23 -08:00
Naoto Sato
ea5819f8d3 8007038: ArrayIndexOutOfBoundsException on calling localizedDateTime().print() with JapaneseChrono
Reviewed-by: okutsu
2013-02-08 09:35:14 -08:00
Katja Kantserova
19982b2e80 8007142: Add utility classes for writing better multiprocess tests in jtreg
Reviewed-by: alanb, rbackman
2013-02-07 11:22:04 +01:00
Martin Buchholz
925fe9142b 8006995: java launcher fails to open executable JAR > 2GB
Use O_LARGEFILE consistently when opening jar files

Reviewed-by: alanb, sherman
2013-02-06 17:59:54 -08:00
Lance Andersen
218dc713ff 8006505: additional changes for JSR 310 support
Reviewed-by: naoto, ulfzibis
2013-02-06 14:15:05 -05:00
Mike Duigou
58d8702881 8006595: Use jdk/test/Makefile targets in preference to local definitions
Reviewed-by: alanb
2013-02-06 11:12:46 -08:00
Mike Duigou
574897c629 8004726: Link bug ids to jbs rather than monaco
Reviewed-by: ohair, chegar, katleman
2013-02-06 11:09:24 -08:00
Jonathan Gibbons
305cf1f98b 8007566: DocLint too aggressive with not allowed here: <p>
Reviewed-by: mcimadamore
2013-02-06 07:49:31 -08:00
Alexander Scherbatiy
ac96c41fe8 8000326: Focus unable to traverse in the menubar
Reviewed-by: alexsch, malenkov
2013-02-06 18:25:06 +04:00
Maurizio Cimadamore
681e6c377e 8007479: Refactor DeferredAttrContext so that it points to parent context
Move DeferredAttrNode out of DeferredAttrContext; add support for nested deferred contexts

Reviewed-by: jjg
2013-02-06 14:04:43 +00:00
Maurizio Cimadamore
0336a57511 8007463: Cleanup inference related classes
Make Infer.InferenceContext an inner class; adjust bound replacement logic in Type.UndetVar

Reviewed-by: jjg
2013-02-06 14:03:39 +00:00
Dmitry Samersoff
c572f25040 8007277: JDK-8002048 testcase fails to compile
Sun.* classes is not included to ct.sym file and symbol file have to be ignored

Reviewed-by: alanb
2013-02-06 16:53:47 +04:00
Chris Hegarty
dab327e501 8007625: race with nested repos in /common/bin/hgforest.sh
Reviewed-by: dholmes, ohair, ohrstrom
2013-02-06 11:36:19 +00:00
John Cuthbertson
ce66b0aad0 Merge 2013-02-05 22:24:36 -08:00
Jonathan Gibbons
23ca241597 8007485: test creates .class files in the test/ directory
Reviewed-by: mcimadamore
2013-02-05 21:55:41 -08:00
David Katleman
36a5ccb73f Merge 2013-02-05 18:55:24 -08:00
David Katleman
873c276a26 Merge 2013-02-05 18:54:59 -08:00
David Katleman
a0a52a2b85 Merge 2013-02-05 18:54:27 -08:00
David Katleman
67dea32d8c Merge 2013-02-05 18:54:24 -08:00
David Katleman
d9a61c7ea3 Merge 2013-02-05 18:54:11 -08:00
David Katleman
076aeb3106 Merge 2013-02-05 18:54:09 -08:00
Lana Steuck
bab241d2e7 Merge 2013-02-05 11:11:53 -08:00
Lana Steuck
750e587f23 Merge 2013-02-05 11:10:07 -08:00
Jim Holmlund
8985a7c2ac 8007504: Remove @ignore from tests that no longer need it
Reviewed-by: mcimadamore
2013-02-05 18:55:13 +00:00
John Cuthbertson
c2bb152e6c 8005032: G1: Cleanup serial reference processing closures in concurrent marking
Reuse the parallel reference processing oop closures during serial reference processing.

Reviewed-by: brutisso
2013-02-05 09:13:05 -08:00
Igor Ignatyev
014d9489bb 8006613: adding reason to made_not_compilable
Reviewed-by: kvn, vlivanov
2013-02-05 08:25:51 -08:00
Erik Joelsson
99468dc6c0 8007524: build-infra: Incremental build of tools.jar broken
Reviewed-by: tbell
2013-02-05 16:50:05 +01:00
Eric McCorkle
3d09f6b621 8007389: Remove uses of _ as identifier in jaxp
Reviewed-by: lancea, joehw
2013-02-05 14:56:34 +00:00
Vinnie Ryan
85c0519ca6 8007483: attributes are ignored when loading keys from a PKCS12 keystore
Reviewed-by: mullan
2013-02-05 14:25:47 +00:00
Jaroslav Bachorik
631c9a9bad 8005791: Remove java.beans.* imports from com.sun.jmx.mbeanserver.Introspector
Reviewed-by: rbackman
2013-02-05 12:36:32 +01:00
Jaroslav Bachorik
d1a58e452a 7170447: Intermittent DeadListenerTest.java failure
Due to asynchronous nature of processing server notifications it may happen that an "unregister" notification ha$

Reviewed-by: sjiang
2013-02-05 12:28:47 +01:00
David Holmes
de47c5722f Merge 2013-02-05 00:59:40 -08:00
Coleen Phillimore
6101f88a80 Merge 2013-02-04 22:59:45 -08:00
Lana Steuck
dea2648931 Merge 2013-02-04 22:38:11 -08:00
Lana Steuck
7a0ded349d Merge 2013-02-04 22:37:44 -08:00
Jeremy Manson
329bc97900 8006508: Wrong frame constructor is called in os_linux_x86.cpp
Reviewed-by: dholmes, coleenp
2013-02-04 23:53:10 -05:00
John Cuthbertson
ea33ae6c4d Merge 2013-02-04 19:40:27 -08:00
Jonathan Gibbons
05a047b442 8007492: DocumentationTool cannot locate standard doclet when invoked from JRE
Reviewed-by: darcy
2013-02-04 18:14:24 -08:00
Joe Darcy
920d11993c 8007113: Upgrade AnnotatedElement.isAnnotionPresent to be a default method
Reviewed-by: chegar, jfranck
2013-02-04 17:56:29 -08:00
Jonathan Gibbons
4d8014cefa 8007490: NPE from DocumentationTool.run
Reviewed-by: darcy
2013-02-04 15:30:10 -08:00
David Holmes
581f36e1cc Merge 2013-02-04 18:08:53 -05:00
David Holmes
eb1726c151 Merge 2013-02-04 18:08:50 -05:00
David Holmes
2cc65f1eb7 Merge 2013-02-04 18:08:42 -05:00
Coleen Phillimore
3b65d23bc8 Merge 2013-02-04 13:51:01 -08:00
Jon Masamitsu
0b84b16b84 Merge 2013-02-04 13:26:04 -08:00
John Cuthbertson
1333948266 8001384: G1: assert(!is_null(v)) failed: narrow oop value can never be zero
Flush any deferred card mark before a Java thread exits.

Reviewed-by: brutisso, jmasa
2013-02-04 13:24:57 -08:00
Jon Masamitsu
e13466742d Merge 2013-02-04 12:51:25 -08:00
Jia-Hong Chen
78b547afa7 8005052: [parfait] #416 X11SurfaceData.c UNINITIALISED OR MISSING RETURN VALUE
8005054: [parfait] #417 X11SurfaceData.c UNINITIALISED OR MISSING RETURN VALUE

Reviewed-by: prr, vadim
2013-02-04 12:04:38 -08:00
Jon Masamitsu
83473ea55d Merge 2013-02-04 12:01:07 -08:00
Xueming Shen
db8ced219f 8006295: Base64.Decoder.wrap(java.io.InputStream) returns InputStream which throws unspecified IOException on attempt to decode invalid Base64 byte stream
8006315: Base64.Decoder decoding methods are not consistent in treating non-padded data
8006530: Base64.getMimeDecoder().decode() throws exception for non-base64 character after adding =

Updated the spec to describe the expected behave explicitly and the implementation to follow

Reviewed-by: alanb, chegar, lancea
2013-02-04 11:58:43 -08:00
Volker Simonis
37d83019d0 8007475: Memory stomp with UseMallocOnly
Fix off-by-one error

Reviewed-by: coleenp, hseigel
2013-02-04 13:14:12 -05:00
Eric McCorkle
16990e896a 8006949: Update hotspot for MethodParameters format change
8006907: Hotspot should reject classfiles with multiple MethodParameters attributes

Update to Hotspot's processing of MethodParameters attributes in classfiles

Reviewed-by: coleenp, jrose
2013-02-04 13:05:32 -05:00
Vinnie Ryan
ddbfa5fe53 8006994: Cleanup PKCS12 tests to ensure streams get closed
Reviewed-by: mullan
2013-02-04 17:20:26 +00:00
Konstantin Shefov
5712b216b4 7077259: [TEST_BUG] [macosx] Test work correctly only when default L&F is Metal
Reviewed-by: serb, alexsch
2013-02-04 16:01:06 +00:00
Sergey Bylokhov
7add1f152d 8004821: Graphics2D.drawPolygon() fails with IllegalPathStateException
Reviewed-by: prr, flar
2013-02-04 19:50:06 +04:00
Petr Pchelko
ab34438938 8005405: [macosx] Drag and Drop: wrong animation when dropped outside any drop target
Changed the calculation of the drag image offset

Reviewed-by: serb, kizune
2013-02-04 13:54:53 +00:00
Harold Seigel
1831def9cc 8000968: NPG: UseCompressedKlassPointers asserts with ObjectAlignmentInBytes for > 32G CompressedOops
Pick a base that works for both CompressedOpps alignment and CompressedKlassPtrs alignment.

Reviewed-by: kvn, roland
2013-02-04 08:26:02 -05:00
Roland Westrelin
da5499f4ed 8007144: Incremental inlining mistakes some call sites for dead ones and doesn't inline them
Wrong detection for dead call sites.

Reviewed-by: kvn
2013-02-04 11:30:37 +01:00
Mikael Vidstedt
eaa663b241 8007403: Incorrect format arguments in adlparse.cpp
Reviewed-by: kvn, twisti
2013-02-04 10:28:39 -08:00
Erik Joelsson
2b800f01d9 8007275: build-infra: Create final-images target
Reviewed-by: tbell
2013-02-04 11:02:03 +01:00
Erik Joelsson
fe5aed65c2 8007268: build-infra: configure reports Solaris needs gcc for deploy, but logs don't indicate it's used
Reviewed-by: tbell, katleman
2013-02-04 10:58:26 +01:00
Erik Joelsson
2708349f7c 8007093: build-infra: Make should fail if spec is older than configure files
Reviewed-by: tbell
2013-02-04 10:53:38 +01:00
Roland Westrelin
f13dbb00cf 8005114: VM is crashing in ciKlass*ciObjArrayKlass::element_klass() if metaspaces are full
Missing test for loaded klass in c1

Reviewed-by: kvn
2013-02-04 09:11:21 +01:00
Harold Seigel
6c6a537471 Merge 2013-02-03 17:12:31 -05:00
Harold Seigel
812262d16b 7197672: There are issues with shared data on windows
On Windows, set rw protection on the CDS file just before removing it.

Reviewed-by: dcubed, iklam
2013-02-03 16:49:16 -05:00
Dmitry Samersoff
302a583c08 8002048: Protocol to discovery of manageable Java processes on a network
Introduce a protocol to discover manageble Java instances across a network subnet, JDP

Reviewed-by: sla, dfuchs
2013-02-03 22:28:08 +04:00
Dmitry Samersoff
eea117f3e5 8002048: Protocol to discovery of manageable Java processes on a network
Introduce a protocol to discover manageble Java instances across a network subnet, JDP

Reviewed-by: sla, dfuchs
2013-02-03 21:39:58 +04:00
Brian Burkhalter
3f02516d3e 6471906: java.lang.NegativeArraySizeException in tenToThe
Reviewed-by: darcy
2013-02-03 18:20:24 +04:00
Vicente Romero
a4a897ce52 7199823: javac generates inner class that can't be verified
Reviewed-by: jjg, mcimadamore
2013-02-03 02:31:30 +00:00
Vicente Romero
a9f424c887 8005075: Pool.Method, and Pool.Variable redundant Symbol field should be removed
Reviewed-by: jjg
2013-02-02 21:04:56 +00:00
Ragini Prasad
e618b1556c 8007135: tools/launcher/VersionCheck.java failing with new tool jabswitch
Reviewed-by: ksrini, mduigou
2013-02-02 12:08:43 -08:00
Christian Tornqvist
898965f458 8000363: runtime/7158988/FieldMonitor.java fails with exception
Removed unnecessary shell script in the test.

Reviewed-by: coleenp, sla
2013-02-02 20:13:27 +01:00
Chris Hegarty
b61bb15030 8007322: untangle ftp protocol from general networking URL tests
Reviewed-by: alanb
2013-02-02 17:15:13 +00:00
Christian Tornqvist
8734c66d55 8005013: Add NMT tests
Add tests for the Native Memory Tracking feature, includes regression tests for 8005936 and 8004802

Reviewed-by: zgu, coleenp
2013-02-02 16:34:10 +01:00
Yumin Qi
82206bd7f5 Merge 2013-02-02 03:51:01 -08:00
Christian Tornqvist
ac8a131b61 Merge 2013-02-02 08:46:48 +01:00
Yumin Qi
4bc9ed2c1f Merge 2013-02-01 22:41:34 -08:00
Christian Tornqvist
2195d1d5e4 Merge 2013-02-02 07:24:29 +01:00
Kumar Srinivasan
8da1d4a40c 8007428: [launcher] add tools/launcher/FXLauncherTest.java to ProblemList.txt
Reviewed-by: mchung
2013-02-01 22:18:18 -08:00
Kumar Srinivasan
81a6d7fb01 8003549: (pack200) assertion errors when processing lambda class files with IMethods
Add more check for opcode, sketch provided by jrose

Reviewed-by: jrose
2013-02-01 22:12:52 -08:00
Jiangli Zhou
7eb8af5534 Merge 2013-02-01 19:36:55 -08:00
Joe Darcy
0050c5b4fb 6964528: Double.toHexString(double d) String manipulation with + in an append of StringBuilder
Reviewed-by: shade
2013-02-01 19:30:02 -08:00
Mikael Vidstedt
26b2bbe306 8007257: NPG: metaspace.cpp: Incorrect arguments in calls to err_msg
Fix size checks in assert and corrected some print formats. Also reviewed by vitalyd@gmail.com.

Reviewed-by: coleenp, sspitsyn
2013-02-01 17:21:53 -08:00
Christian Tornqvist
111ddcc827 8005012: Add WB APIs to better support NMT testing
Add WB API functions to enable better NMT testing

Reviewed-by: dholmes, zgu
2013-02-01 23:48:08 +01:00
Yumin Qi
bae6c82c7a Merge 2013-02-01 14:42:43 -08:00
John Cuthbertson
d701ede8bb 8006894: G1: Number of marking threads missing from PrintFlagsFinal output
Set ConcGCThreads to the calculated number of marking threads.

Reviewed-by: jmasa, ysr
2013-02-01 13:17:04 -08:00
Brian Burkhalter
854e269f20 5035569: Formatter should document that %a conversion unsupported for BigDecimal args
Reviewed-by: darcy
2013-02-01 21:01:44 +00:00
Joe Darcy
c2e77030a1 8001614: Include annotation type to documented supported-ness
Reviewed-by: alanb, jjg, tbell
2013-02-01 13:01:26 -08:00
Jiangli Zhou
7cadb57785 Merge 2013-02-01 15:25:37 -05:00
Jonathan Gibbons
8f90cd0025 8007344: javac may not make tree end positions and/or doc comments available to processors and listeners
Reviewed-by: darcy
2013-02-01 12:01:03 -08:00
Yumin Qi
d907dfa21e Merge 2013-02-01 10:57:06 -08:00
Harold Seigel
4a1c674d5b Merge 2013-02-01 13:30:12 -05:00
Harold Seigel
a2966dd62d 8006298: Specifying malformed JFR options (-XX:+FlightRecorderOptions) outputs non-sensical error
Change error messages for malformed options so the messages are more useful.

Reviewed-by: mikael, kvn, nloodin
2013-02-01 14:14:54 -05:00
Tim Bell
6b4b68a145 8006808: mapfile use check in jdk/make/common/shared/Defs-solaris.gmk is throwing 'egrep: syntax error'
Use a valid egrep expression in the non-SPARC case

Reviewed-by: dholmes
2013-02-01 09:16:19 -08:00
Jonathan Gibbons
7ee6242d0c 8007305: DPrinter: provide better usage message
Reviewed-by: mcimadamore
2013-02-01 08:36:15 -08:00
Jonathan Gibbons
81e9d881ca 8007306: DPrinter: improve display of impl-class, internal tag/kind, and external tag/kind
Reviewed-by: mcimadamore
2013-02-01 08:33:48 -08:00
Andrew Brygin
01ea5d17ec 8004801: The image of BufferedImage.TYPE_INT_ARGB is blank
Reviewed-by: prr
2013-02-01 20:06:27 +04:00
Jayashree Viswanathan
38f3a59c9a 8006536: [launcher] removes trailing slashes on arguments
Reviewed-by: ksrini, akhil
2013-02-01 07:25:51 -08:00
Fredrik Öhrström
97d1424b48 Merge 2013-02-01 11:22:41 +01:00
Chris Hegarty
d0830009e8 8006395: Race in async socket close on Linux
Reviewed-by: alanb, dsamersoff
2013-02-01 06:51:37 +00:00
Serguei Spitsyn
932c29e08e 8006731: JSR 292: the VM_RedefineClasses::rewrite_cp_refs_in_method() must support invokedynamic
The invokedynamic bytecode ref to a CP entry needs to be checked and fixed as well.

Reviewed-by: coleenp, twisti
2013-01-31 20:11:14 -08:00
Serguei Spitsyn
da8ccb9375 8006546: JSR 292: typos in the ConstantPool::copy_cp_impl()
Simple typos that need to be fixed

Reviewed-by: coleenp, twisti
2013-01-31 20:09:16 -08:00
Serguei Spitsyn
823c749bd1 8006542: JSR 292: the VM_RedefineClasses::append_entry() must support invokedynamic entry kinds
Need a support for invokedynamic entry kinds when new and old constant pools are merged.

Reviewed-by: coleenp, twisti
2013-01-31 20:07:18 -08:00
Roger Riggs
9bf4d2f978 8004353: Generated html is wrong for overview.html; content has incorrect css footer class
Reviewed-by: jjg
2013-01-31 19:31:37 -08:00
Jonathan Gibbons
64ef3bfccc 8007329: minor issues in impl class hierarchry for DCTree.* classes
Reviewed-by: darcy
2013-01-31 19:19:40 -08:00
Joe Darcy
71b457cb97 8007351: Malformed copyright statements in typeAnnotations test directory
Reviewed-by: jjg
2013-01-31 18:58:17 -08:00
Yumin Qi
b543c19bac 8000973: SA on windows thread inspection is broken
After bug 7161732, On Windows SA could not find correct address of thread_id of OSThread since _thread_id moved to end of the class . The presupposition of the address is following thread handle no longer stands. Fix by adding thread_id field to OSThread and getting the  address directly from OSThread.

Reviewed-by: nloodin, sspitsyn
2013-01-31 17:43:01 -08:00
David Katleman
2ccecb9e10 Added tag jdk8-b75 for changeset dbafd8b0d8a2 2013-01-31 17:04:55 -08:00
David Katleman
79896f3eaf Added tag jdk8-b75 for changeset cfe93cb07f19 2013-01-31 17:04:47 -08:00
David Katleman
7c22c50e9e Added tag jdk8-b75 for changeset bef9d985cc1c 2013-01-31 17:04:40 -08:00
David Katleman
34d99c6b39 Added tag jdk8-b75 for changeset 504959da18bb 2013-01-31 17:04:37 -08:00
David Katleman
545ef0e5fe Added tag jdk8-b75 for changeset 3b129a5ff9fd 2013-01-31 17:04:28 -08:00
David Katleman
7ecc657cee Added tag jdk8-b75 for changeset 5aa96ebbc95e 2013-01-31 17:04:24 -08:00
David Katleman
f9329eb66f Added tag jdk8-b75 for changeset a86f171d15a1 2013-01-31 17:04:19 -08:00
Weijun Wang
0c6cb9cdc2 8006564: Test sun/security/util/Oid/S11N.sh fails with timeout on Linux 32-bit
Reviewed-by: alanb
2013-02-01 07:39:41 +08:00
Brian Burkhalter
f7f0768c22 6355704: (fmt) %f formatting of BigDecimals is incorrect
Reviewed-by: darcy
2013-01-31 14:29:19 -08:00
Lana Steuck
15cde403c4 Merge 2013-01-31 14:10:14 -08:00
Lana Steuck
ad121b14cb Merge 2013-01-31 14:10:02 -08:00
Tim Bell
6b6febce98 8006933: Need to use nawk on Solaris to avoid awk limitations
Reviewed-by: erikj, dholmes, dsamersoff
2013-01-31 13:31:30 -08:00
Mike Duigou
665fca9d60 8006709: Add minimal support of MacOSX platform for NetBeans Projects
Adds support for MacOSX platform and architecture detection. Other minor updates (-source/target 1.8)

Reviewed-by: ohair
2013-01-31 13:27:04 -08:00
Xueming Shen
320ce960ce 8007298: Base64.getMimeDecoder().decode() throws IAE for a single non-base64 character
8006526: Base64.Decoder.decode(String) spec contains a copy-paste mistake

To ignore single non-base64 char in mime decoding

Reviewed-by: alanb
2013-01-31 13:13:14 -08:00
Joe Darcy
757d9cdeb9 8007115: Refactor regression tests for java.lang.reflect.Parameter
Reviewed-by: emc
2013-01-31 12:23:04 -08:00
Joe Darcy
4484857b50 8007313: Remove use of {ContainerFor/ContainedBy} from langtools
Reviewed-by: jjg
2013-01-31 12:16:03 -08:00
Joe Darcy
9101ca61f5 8005832: Remove java.lang.annotation.{ContainedBy, ContainerFor} annotation types
Reviewed-by: mduigou
2013-01-31 12:13:21 -08:00
Xueming Shen
907f0724ce 8005394: Base64.Decoder/Encoder.wrap(XStream) don't throw NPE for null args passed
To check null for dec/enc.wrap methods

Reviewed-by: alanb
2013-01-31 11:09:36 -08:00
David Buck
b3fa7187ae 7042126: (alt-rt) HashMap.clone implementation should be re-examined
Test case for cr7042126. Issue only found in OracleJDK, but test case is valid for OpenJDK as well

Reviewed-by: mduigou
2013-01-31 10:55:15 -08:00
John Cuthbertson
7d2ccf3a21 8005875: G1: Kitchensink fails with ParallelGCThreads=0
Check that the concurrent marking worker gang exists in ConcurrentMark::print_worker_threads_on(). Changes were also reviewed by Vitaly Davidovich <vitalyd@gmail.com>.

Reviewed-by: brutisso
2013-01-31 10:45:09 -08:00
Lana Steuck
c78a8aad38 Merge 2013-01-31 10:23:49 -08:00
Lana Steuck
40c0ad3990 Merge 2013-01-31 10:22:25 -08:00
Pete Brunet
018fbffe54 7179482: Component.accessibleContext and JComponent.accessibleContext refactoring
Reviewed-by: art, anthony, alexsch
2013-01-31 18:51:17 +04:00
Leonid Romanov
d843dec3b7 8007006: [macosx] Closing subwindow loses main window menus
Reviewed-by: anthony
2013-01-31 18:25:59 +04:00
Fredrik Öhrström
2b389730e2 8006872: Stop creating four jars with identical content in the new build system
Reviewed-by: erikj
2013-01-31 14:03:42 +01:00
Fredrik Öhrström
c2b707c559 8006872: Stop creating four jars with identical content in the new build system
Reviewed-by: erikj
2013-01-31 14:02:58 +01:00
Fredrik Öhrström
ba0917c531 8006872: Stop creating four jars with identical content in the new build system
Reviewed-by: erikj
2013-01-31 14:02:44 +01:00
Fredrik Öhrström
676769c08f 8006872: Stop creating four jars with identical content in the new build system
Reviewed-by: erikj
2013-01-31 14:02:29 +01:00
Fredrik Öhrström
45c58805e7 8006872: Stop creating four jars with identical content in the new build system
Reviewed-by: erikj
2013-01-31 14:01:45 +01:00
Fredrik Öhrström
9f5b40123d 8006872: Stop creating four jars with identical content in the new build system
Reviewed-by: erikj
2013-01-31 14:00:09 +01:00
Joel Borggrén-Franck
34e1726860 8005712: Simplify support for repeating annotations in j.l.r.AnnotatedElement
8004919: AnnotationSupport uses possibly half-constructed AnnotationType instances

Implements the simplified semantics for repeating annotations and removes the incorrect obtaining of an AnnotationType

Reviewed-by: darcy, abuckley
2013-01-31 10:10:34 +01:00
David Katleman
9af4557880 Merge 2013-01-30 13:39:23 -08:00
David Katleman
5725cfdc73 Merge 2013-01-30 13:04:22 -08:00
Alejandro Murillo
294ab2b404 Merge 2013-01-30 10:18:33 -08:00
Jonathan Gibbons
c3cd43825b 8007034: debug printer for javac internals
Reviewed-by: mcimadamore
2013-01-30 09:47:12 -08:00
Jonathan Gibbons
ebc0ebf54d 8007096: DocLint parsing problems with some comments
Reviewed-by: mcimadamore
2013-01-30 09:40:54 -08:00
Lana Steuck
58717e9087 Merge 2013-01-29 20:19:48 -08:00
Lana Steuck
b034f7ca19 Merge 2013-01-29 20:16:12 -08:00
Erik Joelsson
a1d7653c19 8006873: SWAT-b74 msvcr100.dll does not have the permission for all
Reviewed-by: alanb, tbell
2013-01-29 16:35:24 +01:00
Stefan Karlsson
e8860a177b 8004710: NPG: jmap could throw sun.jvm.hotspot.types.WrongTypeException after PermGen removal
When calculating live object regions, make sure that the alignment reserve, at the end of a TLAB, is excluded.

Reviewed-by: jmasa, brutisso
2013-01-29 10:51:33 +01:00
Joel Borggrén-Franck
b29b479461 8004698: Implement Core Reflection for Type Annotations
Reviewed-by: darcy
2013-01-29 10:32:49 +01:00
Karen Kinnear
733d5fdd65 Merge 2013-01-28 09:33:55 -08:00
Bharadwaj Yadavelli
cb255a0269 8004967: Default method cause VerifyError: Illegal use of nonvirtual
Recognize VM generated method in old verifier

Reviewed-by: acorn, coleenp
2013-01-28 10:55:30 -05:00
Karen Kinnear
b28f16c910 Merge 2013-01-28 10:34:07 -05:00
Jesper Wilhelmsson
2447f369f6 6348447: Specifying -XX:OldSize crashes 64-bit VMs
Heap size will be set to allow for OldSize to fit. Also reviewed by vitalyd@gmail.com

Reviewed-by: ehelin, jmasa
2013-01-28 15:41:45 +01:00
Erik Joelsson
7d75509a22 Merge 2013-01-28 14:23:20 +01:00
Erik Joelsson
8be9f14166 Merge 2013-01-28 14:23:09 +01:00
Karen Kinnear
3f92d0764c Merge 2013-01-27 21:58:34 -05:00
Vicente Romero
b5148d30e2 8006944: javac, combo tests should print out the number of threads used
Reviewed-by: mcimadamore
2013-01-27 19:38:44 +00:00
Dean Long
0a2347e0ba Merge 2013-01-27 01:07:09 -08:00
Lana Steuck
f018e9352d Merge 2013-01-26 19:24:46 -08:00
Lana Steuck
f76350f541 Merge 2013-01-26 19:22:51 -08:00
Lana Steuck
d6e0250020 Merge 2013-01-26 18:25:33 -08:00
Lana Steuck
739b41a21e Merge 2013-01-26 18:24:49 -08:00
Eric Mccorkle
c2419823c8 8006503: JVM_PrintStackTrace is not used in JDK
Reviewed-by: alanb, darcy
2013-01-26 16:57:02 +00:00
Morris Meyer
7d8f623180 6518907: cleanup IA64 specific code in Hotspot
Removed unused IA64 specific code

Reviewed-by: twisti, kvn, dholmes
2013-01-25 16:50:33 -08:00
David Chase
89b8658977 8006500: compiler/8004741/Test8004741.java fails intermediately
Rewrote the test to be more reliable, add test for invalid size exception

Reviewed-by: kvn
2013-01-25 16:09:14 -08:00
Morris Meyer
6c80586b40 8005811: Turn off TierdCompilation in JDK8 trunk for all platforms
Disable tiered compilation in jdk8 because of CodeCache and performance anomalies

Reviewed-by: kvn, twisti
2013-01-25 16:31:47 -08:00
Igor Ignatyev
1a9e6be809 8005439: no message about inline method if it specifed by CompileCommand
Reviewed-by: kvn, vlivanov
2013-02-01 03:02:01 -08:00
Igor Ignatyev
a25db953cc 8006410: allocating without ResourceMark when CompileCommand was specified
Reviewed-by: kvn, vlivanov
2013-02-01 02:50:23 -08:00
Yumin Qi
fe8363948e Merge 2013-01-25 13:47:52 -08:00
Ioi Lam
93b845e21b 6479360: PrintClassHistogram improvements
Jcmd <pid> GC.class_stats (UnlockDiagnosticVMOptions)

Reviewed-by: coleenp, hseigel, sla, acorn
2013-01-25 15:06:18 -05:00
Zhengyu Gu
fc0efc91c8 8000692: Remove old KERNEL code
Removed depreciated kernel VM source code from hotspot VM

Reviewed-by: dholmes, acorn
2013-01-25 10:04:08 -05:00
Yumin Qi
f3c57efb11 Merge 2013-01-25 04:23:49 -08:00
Alejandro Murillo
0c7d523859 8006827: new hotspot build - hs25-b18
Reviewed-by: jcoomes
2013-01-25 03:03:23 -08:00
Alejandro Murillo
bf0716e7e4 Merge 2013-01-25 03:02:56 -08:00
Alejandro Murillo
6e9aeb3520 Added tag hs25-b17 for changeset f767fc368725 2013-01-25 02:36:28 -08:00
Alejandro Murillo
d7fb5addc5 Merge 2013-01-25 02:36:28 -08:00
Christian Tornqvist
25189c1a6a 8006413: Add utility classes for writing better multiprocess tests in jtreg
Add a few utility classes to test/testlibrary to support multi process testing in jtreg tests. Added a test case for one of the utility classes. Also reviewed by Vitaly Davidovich

Reviewed-by: brutisso, dholmes, vlivanov, nloodin, mgerdin
2013-01-25 10:14:22 +01:00
Yunda
19303cc71d 8005278: Serviceability Agent: jmap -heap and jstack -m fail
BinaryTreeDictionary is typedef'ed as AFLBinaryTreeDictionary in vmStructs and in SA we still use old name for that. FreeList now is a template based class which is not reflect in SA type library. When SA does calculation of heap for CMS, the former will cause failure to retrieve BinaryTreeDictionary  sine the rename. The later will fail wherever it is used in SA.

Reviewed-by: dholmes, sla, coleenp
2013-01-24 23:30:45 -08:00
Serguei Spitsyn
020fe75e67 8005128: JSR 292: the mlvm redefineClassInBootstrap test crashes in ConstantPool::compare_entry_to
When constant pool is copied in merge_constant_pools the invokedynamic operands must be copied before.

Reviewed-by: coleenp, twisti
2013-01-24 22:13:32 -08:00
David Katleman
90c6fdd506 Added tag jdk8-b74 for changeset 2d74b1d7456b 2013-01-24 16:49:37 -08:00
David Katleman
686adf319b Added tag jdk8-b74 for changeset 64054e252871 2013-01-24 16:49:20 -08:00
David Katleman
bdd8df2f1b Added tag jdk8-b74 for changeset f0f3e46c8780 2013-01-24 16:49:01 -08:00
David Katleman
23ff2911e3 Added tag jdk8-b74 for changeset 6ab75b6a0432 2013-01-24 16:48:57 -08:00
David Katleman
86f89a0768 Added tag jdk8-b74 for changeset 8d54b69d4504 2013-01-24 16:48:45 -08:00
David Katleman
ad11d38f92 Added tag jdk8-b74 for changeset 5a4f1fb4c6ef 2013-01-24 16:48:39 -08:00
David Katleman
5288b84f0a Added tag jdk8-b74 for changeset dde885cc8685 2013-01-24 16:48:33 -08:00
Ioi Lam
27c881b2fb 8006280: Need to reorder metadata structures to reduce size (64-bit)
Reordered Klass, InstanceKlass and Method to save 8 bytes each

Reviewed-by: coleenp, jiangli
2013-01-24 10:57:38 -08:00
Krystal Mo
c06a8276fe Merge 2013-01-24 09:06:16 -08:00
Sergey Malenkov
601fc96c27 8003400: JTree scrolling problem when using large model in WindowsLookAndFeel
Reviewed-by: alexsch
2013-01-24 18:06:24 +04:00
Jon Masamitsu
354116da47 Merge 2013-01-24 06:04:43 -08:00
Sergey Malenkov
6d5f0df029 8005138: test/java/beans/Introspector/TestTypeResolver.java fails
Reviewed-by: alexsch
2013-01-24 17:57:02 +04:00
Sergey Bylokhov
2c1808e68d 8003173: [macosx] Fullscreen on Mac leaves an empty rectangle
Reviewed-by: anthony, alexsch
2013-01-24 17:50:03 +04:00
Sergey Malenkov
d22b9b7149 6817933: Setting the background of an HTML Widget changes the native Windows JFileChooser
Reviewed-by: alexsch
2013-01-24 17:26:32 +04:00
Alexander Zuev
c41878d46d 7143768: [macosx] Unexpected NullPointerException and java.io.IOException during DnD
Reviewed-by: alexp
2013-01-24 16:09:48 +04:00
Petr Pchelko
3f2ea7f894 8005997: [macosx] Printer Dialog opens an additional title bar
Reviewed-by: anthony, art
2013-01-24 15:55:04 +04:00
Alexander Potochkin
6eb458d364 7132793: [macosx] setWheelScrollEnabled action reversed
Reviewed-by: serb, art
2013-01-24 15:52:25 +04:00
Alexander Potochkin
7782e252f1 7147078: [macosx] Echo char set in TextField doesn't prevent word jumping
Reviewed-by: art
2013-01-24 15:26:40 +04:00
Krystal Mo
ae1a2f5e3c 8006758: LinkResolver assertion (caused by @Contended changes)
Treat anonymous classes as privileged code to restore the special handling for @Compiled during class file parsing

Reviewed-by: jrose, coleenp, kvn, dholmes
2013-01-24 02:03:38 -08:00
Erik Joelsson
24c9534dd7 Merge 2013-01-24 09:17:26 +01:00
Joe Darcy
6b27e06701 8006264: Add explanation of why default methods cannot be used in JDK 8 javax.lang.model
Reviewed-by: jjg
2013-01-23 20:11:07 -08:00
Jon Masamitsu
c727c73cce 8005452: NPG: Create new flags for Metaspace resizing policy
Reviewed-by: johnc, jwilhelm, coleenp, stefank
2013-01-23 19:08:04 -08:00
John Cuthbertson
251a9ff39c 8007772: G1: assert(!hr->isHumongous() || mr.start() == hr->bottom()) failed: the start of HeapRegion and MemRegion should be consistent for humongous regions
In do_marking_step(), we should always give up current region after scanning the object, if the region is humongous.

Reviewed-by: brutisso, jwilhelm, tamao
2013-02-11 15:24:48 -08:00
Bengt Rutisson
77ebf3cbc1 8002144: G1: large number of evacuation failures may lead to large c heap memory usage
Use Stack<> instead of GrowableArray to keep track of preserved marks. Also reviewed by vitalyd@gmail.com.

Reviewed-by: johnc, jcoomes
2013-02-10 21:15:16 +01:00
Bengt Rutisson
ff7575383f Merge 2013-02-07 18:40:45 -08:00
Bengt Rutisson
e39be2cb45 Merge 2013-02-07 22:04:17 +01:00
Jesper Wilhelmsson
2c17d50a8b 8006432: Ratio flags should be unsigned
Flags changed to be of uintx type

Reviewed-by: johnc, tamao
2013-02-07 15:51:25 +01:00
Tao Mao
63fd60257c 7052429: G1: Avoid unnecessary scanning of humongous regions during concurrent marking
Skip unnecessary scanning of bitmap for unmarked humongous objects/regions.

Reviewed-by: jwilhelm, johnc
2013-02-06 14:50:37 -08:00
David Katleman
f884e97af2 Merge 2013-01-23 15:40:21 -08:00
Vladimir Kozlov
8915295560 8003878: compiler/7196199 test failed on OS X since 8b54, jdk7u12b01
Limit vectors size to 16 bytes on BSD until the problem is fixed

Reviewed-by: twisti
2013-01-23 15:11:03 -08:00
Tim Bell
3fcddbbea2 8006797: build-infra JPRT builds need JPRT_ARCHIVE_INSTALL_BUNDLE in common/makefiles/Jprt.gmk
Reviewed-by: ohair
2013-01-23 13:30:11 -08:00
Michael Ernst
659a96edf9 8006775: JSR 308: Compiler changes in JDK8
Co-authored-by: Werner Dietl <wmdietl@cs.washington.edu>
Co-authored-by: Matt Papi <mpapi@csail.mit.edu>
Co-authored-by: Mahmood Ali <mahmood@notnoop.com>
Reviewed-by: jjg
2013-01-23 13:27:24 -08:00
Maurizio Cimadamore
5b1a78dc92 8006694: temporarily workaround combo tests are causing time out in several platforms
Reviewed-by: jjg
2013-01-23 20:57:40 +00:00
Vladimir Kozlov
f1cf6ff588 8006799: Optimize sun.nio.cs.ISO_8859_1$Encode.encodeArrayLoop() (jdk part of 6896617)
Move hot loop in ISO_8859_1$Encode.encodeArrayLoop() into separate method encodeISOArray() to be replaced by JVM JIT compiler with optimized intrinsic code.

Reviewed-by: alanb, sherman
2013-01-23 11:47:07 -08:00
Joseph Provino
698fba94ef 8005915: Unify SERIALGC and INCLUDE_ALTERNATE_GCS
Rename INCLUDE_ALTERNATE_GCS to INCLUDE_ALL_GCS and replace SERIALGC with INCLUDE_ALL_GCS.

Reviewed-by: coleenp, stefank
2013-01-23 13:02:39 -05:00
Coleen Phillimore
99039568f9 8006040: NPG: on_stack processing wastes space in ConstantPool
Added on_stack bit to flags.  Also MetadataMarkOnStack is used for more than JVMTI so had to be moved.

Reviewed-by: dholmes, stefank
2013-01-23 10:34:29 -05:00
Maurizio Cimadamore
eb646f3c09 8006692: jdk/test/java/util/Collections/BigBinarySearch.java fails to compile
Missing boxing cause spurious inference failure

Reviewed-by: jjg
2013-01-23 15:08:03 +00:00
Christopher Gruszka
ac591918e0 Merge 2013-01-23 08:50:19 -05:00
Erik Joelsson
af4998b10e 8006658: build-infra: Make MILESTONE behave the same as JDK_BUILD_NUMBER
Reviewed-by: ohrstrom, dholmes, tbell
2013-01-23 11:42:29 +01:00
Erik Joelsson
0a44d7bfec 8006663: build-infra: Compare two arbitrary zip/jar files with compare.sh
Reviewed-by: tbell
2013-01-23 11:41:06 +01:00
Erik Joelsson
036eecdd79 8005855: build-infra: Remove -R flag when cross compiling
Reviewed-by: dholmes, tbell
2013-01-23 11:37:36 +01:00
Stephen Colebourne
4b926cfd51 8003680: JSR 310 Date/Time API
Integration of JSR310 Date/Time API for M6

Co-authored-by: Roger Riggs <roger.riggs@oracle.com>
Co-authored-by: Richard Warburton <richard.warburton@gmail.com>
Co-authored-by: Michael Nascimento <misterm@gmail.com>
Reviewed-by: alanb, naoto, dholmes
2013-01-22 21:02:06 -08:00
Jonathan Gibbons
ef9719425e Merge 2013-01-22 19:07:20 -08:00
Jonathan Gibbons
cac8147988 8006728: temporarily workaround jtreg problems for doclint tests in othervm
Reviewed-by: jjh
2013-01-22 19:06:05 -08:00
Jonathan Gibbons
7bdddc8471 8006723: sjavac test fails to compile on clean build
Reviewed-by: ksrini
2013-01-22 18:43:22 -08:00
David Holmes
26936d0600 8006667: Merge issue: Profile attribute need to be examined before custom attributes
Swap profile checking and FXHelper checking

Reviewed-by: alanb
2013-01-22 20:04:15 -05:00
David Holmes
8b799721ae Merge 2013-01-22 19:31:02 -05:00
David Holmes
dfb3ff9459 Merge 2013-01-22 19:30:52 -05:00
Vladimir Kozlov
9e0c61f822 6896617: Optimize sun.nio.cs.ISO_8859_1$Encode.encodeArrayLoop() on x86
Use SSE4.2 and AVX2 instructions for encodeArray intrinsic.

Reviewed-by: roland
2013-01-22 15:34:16 -08:00
Zhengyu Gu
4d81507a36 Merge 2013-01-22 11:54:16 -08:00
Goetz Lindenmaier
44cdae9a57 8005055: pass outputStream to more opto debug routines
Pass the output stream to node->dump() and everything reachable from there

Reviewed-by: kvn
2013-01-22 11:31:25 -08:00
Zhengyu Gu
080750fe65 6871190: Don't terminate JVM if it is running in a non-interactive session
Don't handle CTRL_LOGOFF_EVENT event when the process is running in a non-interactive session

Reviewed-by: ctornqvi, acorn
2013-01-22 14:27:41 -05:00
Maurizio Cimadamore
1f8b2abf80 8006684: Compiler produces java.lang.VerifyError: Bad type on operand stack
Lambda desugaring generates spurious references to 'this' in static contexts

Reviewed-by: jjg
2013-01-22 16:39:51 +00:00
Maurizio Cimadamore
948888218b 8006673: TargetType52 fails because of bad golden file
Fix golden file in negative test

Reviewed-by: jjg
2013-01-22 16:23:35 +00:00
Jim Gish
43b8609138 4247235: (spec str) StringBuffer.insert(int, char[]) specification is inconsistent
Add blanket null-handling statement to StringBuilder and StringBuffer

Reviewed-by: mduigou
2013-01-22 11:14:13 -05:00
Akhil Arora
5dc4c11b2b 8004201: Add static utility methods to primitives to be used for redution operations
Reviewed-by: darcy, mduigou, briangoetz, dholmes
2013-01-25 16:13:39 -08:00
Henry Jen
293df92991 8005632: Extend java.util.Logger to use Supplier<String> for messages
Reviewed-by: briangoetz, mduigou
2013-01-25 16:13:32 -08:00
Kurchi Subhra Hazra
3e5a0c70ab 7017962: Obsolete link is used in URL class level spec
Change the link to an archived document

Reviewed-by: chegar, mduigou
2013-01-25 11:52:10 -08:00
Vinnie Ryan
2add9b3fcf 8006951: Avoid storing duplicate PKCS12 attributes
Reviewed-by: mullan
2013-01-25 17:47:37 +00:00
Vinnie Ryan
241fc73e25 8006946: PKCS12 test failure due to incorrect alias name
Reviewed-by: mullan
2013-01-25 16:19:39 +00:00
Alan Bateman
355fea6f2a 8006565: java.lang.instrument specification should make it clear that -javaagent is optional
Reviewed-by: sla, dcubed, mchung
2013-01-25 13:09:47 +00:00
Frank Ding
e349682e3d 7183373: URLClassloader.close() does not close JAR files whose resources have been loaded via getResource()
Reviewed-by: chegar
2013-01-25 17:00:18 +08:00
Joe Darcy
3807bcee8b 8006895: Clarify that FunctionalInferface is only informative
Reviewed-by: briangoetz
2013-01-24 16:54:11 -08:00
Vinnie Ryan
546eee6d15 8006863: javadoc cleanup for 8005408
Reviewed-by: alanb
2013-01-24 18:21:09 +00:00
Kumar Srinivasan
183657c9ab 8006850: [pack200] disable pack200 tests until JSR-308 is implemented
Reviewed-by: alanb
2013-01-24 09:34:07 -08:00
Vinnie Ryan
3727e751f6 8006855: PKCS12 test failures due to unsupported algorithm
Reviewed-by: mullan
2013-01-24 16:44:15 +00:00
Alan Bateman
a1d5ea2b9d 8006524: JSR-3: Allows java.beans to be optional
Reviewed-by: dfuchs, mchung
2013-01-24 09:47:09 +00:00
Sean Mullan
930299d58c 8006813: Compilation error in PKCS12KeyStore.java
Reviewed-by: valeriep
2013-01-23 20:46:39 -05:00
Vinnie Ryan
b680bc8ca7 8005408: KeyStore API enhancements
Reviewed-by: mullan
2013-01-23 23:13:54 +00:00
Vinnie Ryan
7dcd0b38a8 8006591: Protect keystore entries using stronger PBE algorithms
Reviewed-by: mullan
2013-01-23 21:25:49 +00:00
Xueming Shen
60e625f275 Merge 2013-01-23 10:31:10 -08:00
Xueming Shen
c3343fdb49 8006773: test/java/util/zip/ZipFile/FinalizeZipFile.java failing intermittently
Fixed the test case

Reviewed-by: alanb
2013-01-23 10:29:50 -08:00
Rob McKenna
6c5679d418 8004729: Add java.lang.reflect.Parameter and related changes for parameter reflection
Reviewed-by: darcy, forax, psandoz, dholmes, tbell
2013-01-23 17:54:34 +00:00
Alan Bateman
5f7ebf8d51 8006764: FunctionalInterface missing from rt.jar (old build)
Reviewed-by: lancea, forax
2013-01-23 15:12:28 +00:00
Chris Hegarty
12e480040a 8006669: sun/security/ssl/sun/net/www/protocol/https/HttpsURLConnection/PostThruProxy.sh fails on mac
Reviewed-by: alanb
2013-01-23 14:45:44 +00:00
Alexey Utkin
3b0f760747 6519127: user.home property not set correctly
Registry-based approach was changed to SHGetKnownFolderPath/SHGetFolderPathW

Reviewed-by: alanb, anthony
2013-01-23 15:06:49 +04:00
Vinnie Ryan
cd509df8b6 8006741: javadoc cleanup for 6263419
Reviewed-by: alanb
2013-01-23 09:49:10 +00:00
Stephen Colebourne
df4d235c1f 8003680: JSR 310 Date/Time API
Integration of JSR310 Date/Time API for M6

Co-authored-by: Roger Riggs <roger.riggs@oracle.com>
Co-authored-by: Richard Warburton <richard.warburton@gmail.com>
Co-authored-by: Michael Nascimento <misterm@gmail.com>
Reviewed-by: alanb, naoto, dholmes
2013-01-22 20:59:21 -08:00
Stuart Marks
54752a2afe 8005646: TEST_BUG: java/rmi/activation/ActivationSystem/unregisterGroup/UnregisterGroup leaves process running
Reviewed-by: mchung
2013-01-22 18:30:49 -08:00
Vinnie Ryan
995a0dc1b8 6263419: No way to clean the memory for a java.security.Key
Reviewed-by: mullan
2013-01-22 23:32:15 +00:00
Karen Kinnear
bc751c3469 8004903: VMThread::execute() calls Thread::check_for_valid_safepoint_state() on concurrent VM ops
Check_for_valid_safepoint_state() only applies to blocking VM ops

Reviewed-by: acorn, dholmes, dice, sspitsyn
2013-01-22 05:57:18 -08:00
Dave Dice
98c357abf8 8004902: correctness fixes motivated by contended locking work (6607129)
Misc correctness fixes

Reviewed-by: acorn, dholmes, dice, sspitsyn
2013-01-22 05:56:42 -08:00
Karen Kinnear
8f1dc20874 6444286: Possible naked oop related to biased locking revocation safepoint in jni_exit()
Add missing Handle.

Reviewed-by: acorn, dholmes, dice, sspitsyn
2013-01-22 05:55:04 -08:00
Mikael Gerdin
ad7544b47c 8004147: test/Makefile jtreg_tests target does not work with cygwin
Reviewed-by: ctornqvi, brutisso
2013-01-22 13:42:39 +01:00
Erik Joelsson
cd451cc955 8004151: build-infra: Generating X11 wrapper offset file is not cross compilable
Reviewed-by: dholmes, ohrstrom
2013-01-22 09:01:35 +01:00
Alan Bateman
a23a1a942b 8004502: Compact Profiles contents
Reviewed-by: dholmes, mchung
2013-01-21 23:35:36 -05:00
Alan Bateman
3ca765dfbd 8004931: add/removePropertyChangeListener should not exist in subset Profiles of Java SE
Reviewed-by: dholmes, mchung, ksrini
2013-01-21 23:23:12 -05:00
Alan Bateman
50ccbb6018 8003256: (profiles) Add support for profile identification
Reviewed-by: dholmes, mchung, ksrini
2013-01-21 23:21:15 -05:00
Alan Bateman
99f3285106 8003255: (profiles) Update JAR file specification to support profiles
Reviewed-by: dholmes, mchung, ksrini
2013-01-21 23:20:42 -05:00
David Holmes
945d6e8f23 8004265: Add build support for Compact Profiles
Reviewed-by: erikj, ohair
2013-01-21 23:17:58 -05:00
David Holmes
08f31d5198 8006651: build-infra: Import.gmk needs to add support for the minimal VM
Reviewed-by: erikj, ohair
2013-01-21 21:54:51 -05:00
Karen Kinnear
706efde6df Merge 2013-01-21 16:11:24 -05:00
Maurizio Cimadamore
3054ea5580 8005166: Add support for static interface methods
Support public static interface methods

Reviewed-by: jjg
2013-01-21 20:19:53 +00:00
Maurizio Cimadamore
a6fc182d40 8005851: Remove support for synchronized interface methods
Synchronized default methods are no longer supported

Reviewed-by: jjg
2013-01-21 20:15:16 +00:00
Maurizio Cimadamore
422c8bd914 8006566: Remove transient lambda-related guards from JavacParser
Remove transitional internal flag for allowing intersection types in cast

Reviewed-by: jjg
2013-01-21 20:14:39 +00:00
Maurizio Cimadamore
442154dcf9 8005244: Implement overload resolution as per latest spec EDR
Add support for stuck expressions and provisional applicability

Reviewed-by: jjg
2013-01-21 20:13:56 +00:00
Lana Steuck
8c4608f165 Merge 2013-01-21 11:16:36 -08:00
Lana Steuck
e5aa886e8b Merge 2013-01-21 11:16:28 -08:00
Lance Andersen
11e010320c 8006642: Fix javadoc warnings due to Integer.MAX_VALUE
Reviewed-by: alanb
2013-01-21 14:08:39 -05:00
Jonathan Gibbons
f251cc24ca 8006251: doclint: incorrect position for diagnostic for illegal text in tags
Reviewed-by: mcimadamore
2013-01-21 10:07:37 -08:00
Peter Jensen
7967c92db0 8006263: Supplementary test cases needed for doclint
Reviewed-by: mcimadamore
2013-01-21 10:00:46 -08:00
Erik Joelsson
ece23e1bac 8006579: build-infra: In jvm.cfg, alias -server to -client when no server jvm is built
Reviewed-by: tbell
2013-01-21 14:58:23 +01:00
Alexander Scherbatiy
14d1261536 8004298: NPE in WindowsTreeUI.ensureRowsAreVisible
Reviewed-by: serb
2013-01-21 17:55:31 +04:00
Doug Lea
3f14786363 8005311: Add Scalable Updatable Variables, DoubleAccumulator, DoubleAdder, LongAccumulator, LongAdder
Reviewed-by: chegar, darcy, goetz
2013-01-21 13:50:05 +00:00
Erik Joelsson
94b0107f2e Merge 2013-01-21 11:42:31 +01:00
Erik Joelsson
dab7afc69f 8006583: build-infra: Remove /javax/swing/SwingBeanInfoBase.java from src.zip
Reviewed-by: tbell
2013-01-21 11:42:17 +01:00
Bengt Rutisson
cfbcddfb0f 8006431: os::Bsd::initialize_system_info() sets _physical_memory too large
Use HW_MEMSIZE instead of HW_USERMEM to get a 64 bit value of the physical memory on the machine. Also reviewed by vitalyd@gmail.com.

Reviewed-by: sla, dholmes, dlong, mikael
2013-01-21 09:00:04 +01:00
Lana Steuck
f466a4f675 Merge 2013-01-20 23:39:11 -08:00
Lana Steuck
444cf2ed48 Merge 2013-01-20 23:38:27 -08:00
Lana Steuck
8e565b0c0e Merge 2013-01-20 23:37:21 -08:00
Lana Steuck
aa42a1616b Merge 2013-01-20 23:35:25 -08:00
Jason Uh
3d92cb12a6 8006092: SecurityPermission: printIdentity doesn't exist
Reviewed-by: weijun
2013-01-21 15:05:49 +08:00
David Holmes
2f7185008f 8004265: Add build support for Compact Profiles
Reviewed-by: erikj, ohair
2013-01-21 01:50:40 -05:00
Alan Bateman
c4c9a281f3 8004182: Add support for profiles in javac
Reviewed-by: dholmes
2013-01-21 01:46:31 -05:00
Masayoshi Okutsu
6bc0d6d200 8004489: Add support for Minguo and Hijrah calendars to CalendarNameProvider SPI
8006509: Add more calendar symbol names from CLDR

Reviewed-by: peytoia
2013-01-21 15:41:30 +09:00
Jonathan Gibbons
caf667de05 8004182: Add support for profiles in javac
Reviewed-by: mcimadamore
2013-01-21 01:27:42 -05:00
Bhavesh Patel
bd4ebc07d8 8006124: javadoc/doclet should be updated to support profiles
Reviewed-by: jjg
2013-01-21 00:45:35 -05:00
Bhavesh Patel
2c52089918 8006124: javadoc/doclet should be updated to support profiles
Reviewed-by: jjg, dholmes
2013-01-21 00:31:34 -05:00
Bhavesh Patel
2b742e4081 8006124: javadoc/doclet should be updated to support profiles
Reviewed-by: jjg, dholmes
2013-01-21 00:29:59 -05:00
Masayoshi Okutsu
f9d0dd3d72 4745761: (cal) RFE: Support builder for constructing Calendar
Reviewed-by: peytoia
2013-01-21 12:04:55 +09:00
Chris Hegarty
6b32c387f1 8006560: java/net/ipv6tests/B6521014.java fails intermittently
Reviewed-by: khazra, wetmore
2013-01-20 09:37:51 +00:00
Lance Andersen
69757a1c92 8005080: JDBC 4.2 Core changes
Reviewed-by: naoto
2013-01-19 10:53:14 -05:00
Lance Andersen
c98a554aaf 8006139: add missing methods to javax.sql.rowset.serial.SQLInputImpl, SQLOutputImpl
Reviewed-by: naoto, ulfzibis, alanb
2013-01-19 10:11:19 -05:00
Mark Sheppard
4e11f499f4 8006568: HTTP protocol handler NLTM Authentication should use Base64 API
Reviewed-by: chegar, alanb
2013-01-19 08:39:20 +00:00
Ragini Prasad
435bcab6c4 8000839: Integrate the Java Access Bridge with Java Runtime
Reviewed-by: ptbrunet, erikj
2013-01-18 11:33:31 -08:00
Ragini Prasad
a9080d9ab2 8000839: Integrate the Java Access Bridge with Java Runtime
Reviewed-by: ptbrunet, erikj
2013-01-18 11:31:33 -08:00
Alan Bateman
69b0c6aad4 6939260: (fs) BasicFileAttributes.lastModifiedTime() should return last modified time with higher precision
Reviewed-by: chegar
2013-01-18 18:48:44 +00:00
Staffan Larsen
091328ba71 Merge 2013-01-18 19:13:41 +01:00
John Zavgren
9bad85cb03 8005120: Compiler warnings in socket transport native code
Reviewed-by: chegar, dsamersoff
2013-01-18 17:34:40 +00:00
Erik Joelsson
8b7552a616 8003693: build-infra: bridgeBuild should allow for partial build (no hotspot)
Reviewed-by: tbell
2013-01-18 16:48:25 +01:00
Erik Joelsson
52b64fa9dc 8006567: jre/lib/applet missing from Mac JDK installation
Reviewed-by: tbell
2013-01-18 16:44:07 +01:00
Maurizio Cimadamore
00ae27b2cf 8006561: Langtools test failure: missing diags/examples
Forgot to hg add tests

Reviewed-by: jjg
2013-01-18 15:38:14 +00:00
Anton Litvinov
ca94a86847 8006417: JComboBox.showPopup(), hidePopup() fails in JRE 1.7 on OS X
Reviewed-by: art, serb
2013-01-18 18:34:46 +04:00
Petr Pchelko
db0f450d53 7179050: [macosx] Make LWAWT be able to run on AppKit thread
Removed irrelevant assertions from the LWAWT native methods

Reviewed-by: serb, anthony
2013-01-18 18:17:02 +04:00
Alejandro Murillo
1c9730cfb8 8006511: new hotspot build - hs25-b17
Reviewed-by: jcoomes
2013-01-18 05:33:32 -08:00
Alejandro Murillo
ab8570e77f Added tag hs25-b16 for changeset bf71fcc9d682 2013-01-18 05:19:07 -08:00
Alejandro Murillo
6e59c39db8 Merge 2013-01-18 05:19:06 -08:00
Staffan Larsen
c3d91fec59 Merge 2013-01-18 14:15:51 +01:00
Anthony Petrov
04fc62c5ed 8005465: [macosx] Evaluate if checking for the -XstartOnFirstThread is still needed in awt.m
Allow one to start AWT on the main thread w/o exceptions

Reviewed-by: art, serb
2013-01-18 14:17:11 +04:00
Bengt Rutisson
f3576a18a9 Merge 2013-01-18 11:03:15 +01:00
Erik Joelsson
272e33b245 8006520: build-infra: Fix sparkle-framework configure parameter
Reviewed-by: tbell, ohair
2013-01-18 09:58:23 +01:00
Coleen Phillimore
833b7fcfff 8006548: version wrong in new constantPool code
Fix increment problem with saved_version

Reviewed-by: dholmes
2013-01-17 22:11:57 -05:00
Jon Masamitsu
59f0209008 8006537: Assert when dumping archive with default methods
Reviewed-by: coleenp
2013-01-17 19:04:48 -08:00
Vladimir Kozlov
3eb6582f4b Merge 2013-01-17 18:47:36 -08:00
Fredrik Öhrström
3d5f55b851 8004658: Add internal smart javac wrapper to solve JEP 139
Reviewed-by: jjg
2013-01-18 00:16:21 +01:00
Jim Gish
a7f43eaad5 8006534: CLONE - TestLibrary.getUnusedRandomPort() fails intermittently-doesn't retry enough times
Increase number of retries to twice the number of ports in the reserved range

Reviewed-by: mduigou
2013-01-17 15:09:46 -05:00
Kurchi Subhra Hazra
8f2bd71dc9 7171415: java.net.URI.equals/hashCode not consistent for some URIs
Rewrite URI.hashCode() to consider encoded characters, also reviewed by vitalyd@gmail.com, schlosna@gmail.com

Reviewed-by: chegar
2013-01-17 14:50:02 -08:00
Brian Burkhalter
fe16fc39d6 8006090: Formatter asserts with -esa
Removed the offending assert

Reviewed-by: alanb, darcy
2013-01-17 12:49:33 -08:00
Coleen Phillimore
e508ba9b0b 7174978: NPG: Fix bactrace builder for class redefinition
Remove Method* from backtrace but save version so redefine classes doesn't give inaccurate line numbers.  Removed old Merlin API with duplicate code.

Reviewed-by: dholmes, sspitsyn
2013-01-17 13:40:31 -05:00
Maurizio Cimadamore
0a95b1d28c 8005852: Treatment of '_' as identifier
Warn when '_' is found in an identifier position

Reviewed-by: jjg
2013-01-17 18:15:20 +00:00
Harold Seigel
68f3dd76c9 7102489: RFE: cleanup jlong typedef on __APPLE__and _LLP64 systems
Define jlong as long on all LP64 platforms and add JLONG_FORMAT macro.

Reviewed-by: dholmes, coleenp, mikael, kvn
2013-01-17 10:25:16 -05:00
Konstantin Shefov
b7bcfe73b1 7124209: [macosx] SpringLayout issue. BASELINE is not in the range: [NORTH, SOUTH]
Reviewed-by: serb, alexsch
2013-01-17 15:08:08 +00:00
Stefan Karlsson
6799149f7d 8006513: Null pointer in DefaultMethods::generate_default_methods when merging annotations
Reviewed-by: brutisso, jfranck
2013-01-17 11:39:48 +01:00
Yong Jeffrey Huang
a4c3f06259 Merge 2013-01-16 23:08:12 -08:00
Dean Long
6e8916cdbb Merge 2013-01-17 01:27:02 -05:00
David Katleman
b8e0cde9e1 Merge 2013-01-16 22:21:30 -08:00
David Katleman
c9583f70f7 Merge 2013-01-16 22:17:39 -08:00
David Katleman
d67df37b2b Merge 2013-01-16 22:17:36 -08:00
David Katleman
675e3578b4 Merge 2013-01-16 22:16:51 -08:00
David Katleman
f421c295bd Merge 2013-01-16 20:53:05 -08:00
Jonathan Gibbons
7b493a180e 8006228: Doclint doesn't detect <code> {@code nested inline} </code>
Reviewed-by: darcy
2013-01-16 20:41:14 -08:00
Yong Jeffrey Huang
73f88f3896 Merge 2013-01-16 19:05:13 -08:00
Lana Steuck
270d599981 Merge 2013-01-16 15:57:25 -08:00
Karen Kinnear
4ce43bafa5 Merge 2013-01-16 18:23:37 -05:00
David Chase
c803a77fa8 8006204: please JTREGify test/compiler/7190310/Test7190310.java
Add proper jtreg annotations in the preceding comment, including an explicit timeout.

Reviewed-by: kvn, twisti
2013-01-16 14:55:18 -08:00
Joe Darcy
e942cdde81 8006283: Change to Class.cast() in javax.lang.model implementation for repeating annotations
Reviewed-by: jjg
2013-01-16 13:22:09 -08:00
Lana Steuck
b11bbbe239 Merge 2013-01-16 12:14:29 -08:00
Lana Steuck
7026f02404 Merge 2013-01-16 12:07:32 -08:00
Lana Steuck
65b346ba67 Merge 2013-01-16 12:06:39 -08:00
David Katleman
2062fc003c Added tag jdk8-b73 for changeset b568005e66bd 2013-01-16 12:00:21 -08:00
David Katleman
656c28326c Added tag jdk8-b73 for changeset 24d25ecda7ce 2013-01-16 12:00:10 -08:00
David Katleman
4598fecb7c Added tag jdk8-b73 for changeset a7dead2f55ef 2013-01-16 11:59:59 -08:00
David Katleman
41ec1cb065 Added tag jdk8-b73 for changeset 4c46a5207766 2013-01-16 11:59:54 -08:00
David Katleman
c5c2fe5f14 Added tag jdk8-b73 for changeset b63b5628ae56 2013-01-16 11:59:44 -08:00
David Katleman
7716c3be5e Added tag jdk8-b73 for changeset 8268581591da 2013-01-16 11:59:38 -08:00
David Katleman
15750269ce Added tag jdk8-b73 for changeset e6f9cd2122f9 2013-01-16 11:59:37 -08:00
Lana Steuck
2c1924638e Merge 2013-01-16 11:58:15 -08:00
Jason Uh
5d2a6972af 8005939: sun/security/x509/{X509CRLImplX509CertImpl}/Verify.java fail in confusing way when some providers not present
Reviewed-by: mullan, weijun
2013-01-16 13:35:17 -05:00
Jonathan Gibbons
17ebfc350d 8006236: doclint: structural issue hidden
Reviewed-by: darcy
2013-01-16 10:29:52 -08:00
Maurizio Cimadamore
5a60f56dbe 8005964: Regression: difference in error recovery after ambiguity causes JCK test failure
Wrong implementation of ResolveError.access in AmbiguityError

Reviewed-by: jjh
2013-01-16 17:40:28 +00:00
Maurizio Cimadamore
3b3feb3853 8005299: Add FunctionalInterface checking to javac
Javac should check that types annotated with @FunctionalInterface are indeed functional interfaces

Reviewed-by: jjg
2013-01-16 16:30:11 +00:00
Maurizio Cimadamore
d19bc80ca1 8005854: Add support for array constructor references
Support constructor references of the kind int[]::new

Reviewed-by: jjg
2013-01-16 16:27:01 +00:00
Erik Joelsson
fbb2e494a8 8006385: build-infra: linux and solaris *-debuginfo-*.zip file created from the new makefile has extra HUDSON direcotry in jre/lib/i386/server
Reviewed-by: tbell
2013-01-16 16:40:16 +01:00
Aleksey Shipilev
07e2e8803a 8006403: Regression: jstack failed due to the FieldInfo regression in SA
Reviewed-by: sla, dholmes
2013-01-16 16:30:04 +01:00
Jason Uh
68eb431db8 8005389: Backout fix for JDK-6500133
Reviewed-by: mullan
2013-01-16 09:51:21 -05:00
Mikhail Cherkasov
9a4e15eaf6 8005492: Reduce number of warnings in sun/awt/* classes
Reviewed-by: art, anthony
2013-01-16 17:26:41 +04:00
Doug Lea
dcc8fbec72 8001666: Add lambda-compatible atomics and accumulators to the ActomicXXX classes
Co-authored-by: Chris Hegarty <chris.hegarty@oracle.com>
Reviewed-by: dl, chegar, darcy, goetz
2013-01-16 12:09:35 +00:00
Bengt Rutisson
38f6de7a0c 8006242: G1: WorkerDataArray<T>::verify() too strict for double calculations
Also reviewed by vitalyd@gmail.com.

Reviewed-by: johnc, mgerdin
2013-01-16 12:46:27 +01:00
Doug Lea
7062898817 8005926: Merge ThreadLocalRandom state into java.lang.Thread
Reviewed-by: shade, chegar
2013-01-16 10:14:09 +00:00
Yong Jeffrey Huang
ef774a39f7 Merge 2013-01-15 19:08:34 -08:00
David Chase
cc15237ca5 8005821: C2: -XX:+PrintIntrinsics is broken
Check all print inlining flags when processing inlining list.

Reviewed-by: kvn, twisti
2013-01-15 14:45:12 -08:00
Ioi Lam
84fce989dd 8005467: CDS size information is incorrect and unfriendly
Changed words to bytes, and added usage percentage information

Reviewed-by: coleenp, twisti
2013-01-15 17:05:53 -05:00
Jonathan Gibbons
f8b61f9b0c 8006224: Doclint NPE for attribute with no value
Reviewed-by: darcy
2013-01-15 13:03:11 -08:00
Chris Hegarty
b60eabe813 8006344: Broken javadoc link in javax.lang.model.element.Element
Reviewed-by: lancea, alanb, jfranck
2013-01-15 20:38:39 +00:00
John Cuthbertson
b3b1b412b1 8001425: G1: Change the default values for certain G1 specific flags
Changes to default and ergonomic flag values recommended by performance team. Changes were also reviewed by Monica Beckwith <monica.beckwith@oracle.com>.

Reviewed-by: brutisso, huntch
2013-01-15 12:32:26 -08:00
Christian Thalinger
5dda34f798 8006109: test/java/util/AbstractSequentialList/AddAll.java fails: assert(rtype == ctype) failed: mismatched return types
Reviewed-by: kvn
2013-01-15 12:06:18 -08:00
Rob McKenna
bdca3e8f8c 8005618: TEST_BUG: java/lang/ProcessBuilder/Basic.java failing intermittently
Reviewed-by: alanb, martin, dholmes
2013-01-15 19:58:22 +00:00
David Katleman
7f6891593a Merge 2013-01-15 10:08:04 -08:00
David Katleman
f3d016ffd9 Merge 2013-01-15 10:07:26 -08:00
David Katleman
43cad4a619 Merge 2013-01-15 10:07:22 -08:00
David Katleman
a3ef57ec3c Merge 2013-01-15 10:06:59 -08:00
Sergey Bylokhov
08f29b04df 7124525: [macosx] No animation on certain Swing components in Aqua LaF
Reviewed-by: alexsch, swingler
2013-01-15 21:57:47 +04:00
Erik Joelsson
492a251bdb 8006296: build-infra: Unsigned sunmscapi.jar is missing manifest
Reviewed-by: alanb, tbell
2013-01-15 16:50:22 +01:00
Mark Sheppard
cb7b639e6a 8005406: HTTP server implementation should use Base64 API
Reviewed-by: khazra, alanb, chegar
2013-01-15 11:44:20 +00:00
Alexey Utkin
5bd5533490 8005250: Downgrade normative references to ${java.home}/lib folder from Java client code
Javadoc was changed in accordance with CCC-8005250 request.

Reviewed-by: alanb, amenkov
2013-01-15 14:26:59 +04:00
Stefan Karlsson
9d65c6d24f 8005994: Method annotations are allocated unnecessarily during class file parsing
Also reviewed by: vitalyd@gmail.com

Reviewed-by: coleenp, acorn
2013-01-15 10:09:45 +01:00
Stefan Karlsson
67fc68ea7f 8005590: java_lang_Class injected field resolved_constructor appears unused
Reviewed-by: coleenp, dholmes
2013-01-15 13:32:13 +01:00
Erik Joelsson
9ea953b481 Merge 2013-01-15 09:50:47 +01:00
Alexander Scherbatiy
97013ba028 8003978: closed/javax/swing/JRootPane/bug4670486.java fails since jdk7u12b01 on macosx
Reviewed-by: serb, leonidr
2013-01-15 12:49:03 +04:00
Xue-Lei Andrew Fan
40039951b8 8006265: Add test SSLEngineDeadlock.java to ProblemList
Reviewed-by: weijun
2013-01-14 18:31:48 -08:00
Kelly O'Hair
c79f62bb7d 8005284: build-infra: nonstandard copyright headers under common/autoconf/build-aux
Reviewed-by: katleman
2013-01-14 16:38:25 -08:00
Kumar Srinivasan
a788c5b6b8 8005252: pack200 should support MethodParameters
Reviewed-by: jrose
2013-01-14 15:46:54 -08:00
Jonathan Gibbons
f92bbd3311 8006241: Test DocRootSlash.java fails
Reviewed-by: darcy
2013-01-14 14:17:25 -08:00
Jonathan Gibbons
a2f594bf74 8006119: update javac to follow latest spec for repeatable annotations
Reviewed-by: darcy
2013-01-14 13:50:01 -08:00
Bengt Rutisson
33b7cd7cae 8005972: ParNew should not update the tenuring threshold when promotion failed has occurred
Reviewed-by: ysr, johnc, jwilhelm
2013-01-14 21:30:45 +01:00
Christopher Gruszka
c882c29132 Merge 2013-01-14 14:40:58 -05:00
Naoto Sato
9fa2377054 7162007: Clean up i18n related caches
Reviewed-by: okutsu, ohair
2013-01-14 11:09:53 -08:00
Mikael Vidstedt
b4546eb428 8005592: ClassLoaderDataGraph::_unloading incorrectly defined as nonstatic in vmStructs
Added assertion to catch problem earlier and removed the unused field

Reviewed-by: dholmes, acorn
2013-01-14 11:00:56 -08:00
Joel Borggrén-Franck
9e3a121357 7193719: Support repeating annotations in javax.lang.model
Reviewed-by: jjg
2013-01-14 19:52:36 +01:00
Alexander Harlap
95cbed6639 8005204: Code Cache Reduction: command line options implementation
Adding more detailed output on CodeCache usage

Reviewed-by: kvn, vladidan
2013-01-14 13:52:08 -05:00
Alexander Harlap
5613847626 8005639: Move InlineSynchronizedMethods flag from develop to product
Move InlineSynchronizedMethods flag from develop to product

Reviewed-by: kvn, vladidan
2013-01-14 13:44:49 -05:00
Coleen Phillimore
6972d9ff95 Merge 2013-01-14 08:37:14 -08:00
Vladimir Ivanov
f8b9f3900c 8006095: C1: SIGSEGV w/ -XX:+LogCompilation
Avoid printing inlining decision when compilation fails

Reviewed-by: kvn, roland
2013-01-14 08:22:32 -08:00
Eric Mccorkle
be0c8e9f08 8006005: Fix constant pool index validation and alignment trap for method parameter reflection
This patch addresses an alignment trap due to the storage format of method parameters data in constMethod.  It also adds code to validate constant pool indexes for method parameters data.

Reviewed-by: jrose, dholmes
2013-01-14 11:01:39 -05:00
Erik Joelsson
efc2bb8cee 8006100: build-infra: Bundle up the correct images in jprt
Reviewed-by: tbell
2013-01-14 15:30:22 +01:00
Aleksey Shipilev
0614ed6542 8003985: Support @Contended Annotation - JEP 142
HotSpot changes to support @Contended annotation.

Reviewed-by: coleenp, kvn, jrose
2013-01-14 15:17:47 +01:00
Alexander Scherbatiy
73b452e941 7166409: bug4331515.java fail with NullPointerException on ubuntu10.04-x86 for JDK8
Reviewed-by: serb
2013-01-14 08:32:29 -05:00
Erik Joelsson
7510da3514 8006074: build-infra: Configure fails to find SetEnv.Cmd in microsoft sdk
Reviewed-by: tbell, ohair
2013-01-14 13:09:59 +01:00
Erik Helin
a3639fdea1 8004018: Remove old initialization flags
Reviewed-by: dholmes, stefank
2013-01-14 09:58:52 +01:00
Yong Jeffrey Huang
48aff5a267 7114053: [sq] Inproper tanslation for iso lanugage of Albanian
Reviewed-by: naoto
2013-01-13 18:45:43 -08:00
Peter Levart
e912773451 8005232: (JEP-149) Class Instance size reduction
Moved the fields for cached reflection objects into a seperate ReflectionData object to reduce dynamic footprint.

Reviewed-by: dholmes, mchung, shade
2013-01-13 19:57:06 -05:00
Mark Sheppard
7a8ddfee99 8006153: HTTP protocol handler authenication should use Base64 API
Reviewed-by: chegar, alanb
2013-01-13 22:09:50 +00:00
Xueming Shen
c7c2bd14d7 Merge 2013-01-11 22:45:42 -08:00
Ioi Lam
7428b2f902 8005466: JAR file entry hash table uses too much memory (zlib_util.c)
Realign the fields of jzcell struct

Reviewed-by: sherman
2013-01-11 22:43:29 -08:00
Christian Thalinger
827930b510 8006127: remove printing code added with 8006031
Reviewed-by: kvn
2013-01-11 20:01:16 -08:00
Aleksey Shipilev
fb60d01e36 8006123: Support @Contended Annotation - JEP 142 (jdk part)
Jdk changes for 8003895.

Reviewed-by: darcy, jrose, coleenp, dholmes, kvn
2013-01-11 16:50:34 -08:00
Roman Kennke
b17ebac5b5 8005820: Shark: enable JSR292 support
Reviewed-by: twisti
2013-01-11 16:47:23 -08:00
Roman Kennke
ba649f4203 8005818: Shark: fix OSR for non-empty incoming stack
Reviewed-by: twisti
2013-01-11 16:47:23 -08:00
Roman Kennke
a0a0d0b65e 8005817: Shark: implement deoptimization support
Reviewed-by: twisti
2013-01-11 16:47:23 -08:00
Roman Kennke
a42478ecf4 8005816: Shark: fix volatile float field access
Reviewed-by: twisti
2013-01-11 16:47:23 -08:00
Olivier Lagneau
546e2eb164 7131459: [Fmt-De] DecimalFormat produces wrong format() results when close to a tie
Reviewed-by: darcy
2013-01-11 15:39:08 -08:00
Christian Thalinger
6c57a4b9f8 8006031: LibraryCallKit::inline_array_copyOf disabled unintentionally with 7172640
Reviewed-by: kvn
2013-01-11 14:07:09 -08:00
Jiangli Zhou
2cbabcea4a 8005895: Inefficient InstanceKlass field packing wasts memory
Pack _misc_has_default_methods into the _misc_flags, move _idnum_allocated_count.

Reviewed-by: coleenp, shade
2013-01-11 16:55:07 -05:00
Alan Bateman
c12b624078 8005978: shell tests need to use the $COMPILEJDK for javac, jar and other tools
Reviewed-by: chegar
2013-01-11 20:19:55 +00:00
Zhengyu Gu
ae35dfeeec Merge 2013-01-11 09:53:24 -08:00
Zhengyu Gu
93d2366337 8005936: PrintNMTStatistics doesn't work for normal JVM exit
Moved NMT shutdown code to JVM exit handler to ensure NMT statistics is printed when PrintNMTStatistics is enabled

Reviewed-by: acorn, dholmes, coleenp
2013-01-11 12:30:54 -05:00
Alan Bateman
36e2ef2ba8 8005566: (fs) test/java/nio/file/Files/Misc.java failing (sol)
Reviewed-by: chegar
2013-01-11 12:27:57 +00:00
Alejandro Murillo
d06c06026a 8006034: new hotspot build - hs25-b16
Reviewed-by: jcoomes
2013-01-11 02:02:51 -08:00
Erik Joelsson
ad4210a395 8005850: build-infra: Make --enable-openjdk-only really disable custom
Reviewed-by: ohair, dholmes
2013-01-11 10:46:59 +01:00
Alejandro Murillo
95d6d393e9 Added tag hs25-b15 for changeset 8bac833614e0 2013-01-11 01:43:10 -08:00
Alejandro Murillo
54489e4ba1 Merge 2013-01-11 01:43:09 -08:00
Joe Darcy
3dfc6b7512 8006062: Add @Repeatable to repeating annotations regression tests in JDK repo
Reviewed-by: jjg
2013-01-10 21:12:27 -08:00
David Buck
8f70550080 8003147: port fix for BCEL bug 39695
Added support for Local Variable Type Table so that BCEL library can be used to modify methods with generics-related debug data without violating class file format

Reviewed-by: lancea
2013-01-10 20:26:00 -08:00
Jonathan Gibbons
7518dede81 8004834: Add doclint support into javadoc
Reviewed-by: darcy
2013-01-10 19:38:57 -08:00
Jonathan Gibbons
56dd0c2a5c Merge 2013-01-10 19:37:26 -08:00
Jonathan Gibbons
4837a1c13d 8004834: Add doclint support into javadoc
Reviewed-by: erikj, tbell
2013-01-10 19:36:36 -08:00
Jonathan Gibbons
ce51b6ebee 8004834: Add doclint support into javadoc
Reviewed-by: erikj, tbell
2013-01-10 19:36:13 -08:00
Jeremy Manson
cac8a55fb2 8005921: Memory leaks in vmStructs.cpp
Reviewed-by: dholmes, mikael, rasbold
2013-01-10 21:00:11 -05:00
Mikael Vidstedt
e7e6443c6d 8004747: Remove last_entry from VM_STRUCT macros
Instead of passing in last_entry to all the VM_ macros just expand it in the main vmStructs.cpp file.

Reviewed-by: dholmes, sspitsyn, minqi
2013-01-10 17:06:26 -08:00
Lana Steuck
3475f97172 Merge 2013-01-10 15:53:02 -08:00
Lana Steuck
2af47c361c Merge 2013-01-10 15:52:12 -08:00
Lana Steuck
ce7e25b7ad Merge 2013-01-10 15:49:34 -08:00
Lana Steuck
543d0a4abe Merge 2013-01-10 15:49:12 -08:00
Jonathan Gibbons
80a7fb0bb4 8006033: bug in Pretty.toSimpleString
Reviewed-by: darcy
2013-01-10 15:48:46 -08:00
Karen Kinnear
472004ca58 7199207: NPG: Crash in PlaceholderTable::verify after StackOverflow
Reduce scope of placeholder table entries to improve cleanup

Reviewed-by: dholmes, coleenp
2013-01-10 17:38:20 -05:00
Jonathan Gibbons
ca5da47efc 8006037: extra space in javac -help for -J and @ options
Reviewed-by: darcy
2013-01-10 14:09:33 -08:00
Chris Hegarty
a2dea4d9f4 8006007: j.u.c.atomic classes should use intrinsic getAndXXX provided by 7023898
Reviewed-by: dl, shade
2013-01-10 21:52:38 +00:00
Jim Gish
5c5820e950 8005582: java/lang/Runtime/exec/WinCommand.java intermittent test failures
Remove file-deletion code at cleanup which conflicts with jtreg cleanup

Reviewed-by: chegar
2013-01-10 15:09:45 -05:00
Brent Christian
f7eb6cd556 8005962: TEST_BUG: java/util/Properties/MacJNUEncoding can fail in certain environments
Test script now sets LC_ALL, other small changes, relocate test

Reviewed-by: naoto, alanb
2013-01-10 10:21:44 -08:00
Vladimir Kozlov
91c93084cb Merge 2013-01-10 10:00:43 -08:00
David Katleman
bd2402428b Added tag jdk8-b72 for changeset e905c5894743 2013-01-10 09:56:09 -08:00
David Katleman
49feba985e Added tag jdk8-b72 for changeset 21fe12436601 2013-01-10 09:55:58 -08:00
David Katleman
28f35575da Added tag jdk8-b72 for changeset 1cd43fe99320 2013-01-10 09:55:52 -08:00
David Katleman
09e823e002 Added tag jdk8-b72 for changeset c65f0fb0d9de 2013-01-10 09:55:43 -08:00
David Katleman
0adc452e4f Added tag jdk8-b72 for changeset 371ef2925907 2013-01-10 09:55:30 -08:00
David Katleman
714ada87e7 Added tag jdk8-b72 for changeset e927c8725ba4 2013-01-10 09:55:26 -08:00
David Katleman
d696ea84e6 Added tag jdk8-b72 for changeset a521fc006ff6 2013-01-10 09:55:25 -08:00
Jon Masamitsu
be38ea68e5 Merge 2013-01-10 07:32:32 -08:00
Fredrik Ohrstrom
a1118e2d86 8005856: build-infra: Remove special handling of base module classes header generation
Reviewed-by: alanb, tbell, ohair
2013-01-10 12:23:15 +01:00
Erik Joelsson
4ed6eedb66 8005858: build-infra: Add missed comparison of sec-windows-bin.zip and friends to compare.sh
Reviewed-by: tbell, ohair
2013-01-10 12:20:16 +01:00
Joe Darcy
f2c492220c 8005713: Simplify library support for repeating annotations in java.lang.annotation
Reviewed-by: abuckley
2013-01-09 20:20:21 -08:00
Joe Darcy
51e7243003 8004730: Add language model support for parameter reflection
Reviewed-by: abuckley
2013-01-09 20:02:53 -08:00
Dean Long
f1bd82ba8f Merge 2013-01-09 21:18:52 -05:00
Brian Burkhalter
af27b8c59d 7103957: NegativeArraySizeException while initializing class IntegerCache
Reviewed-by: darcy, mchung
2013-01-09 16:58:47 -08:00
Christian Thalinger
a55305503e 8005418: JSR 292: virtual dispatch bug in 292 impl
Reviewed-by: jrose, kvn
2013-01-09 15:37:23 -08:00
Karen Kinnear
9cc0c0af8b Merge 2013-01-09 18:06:34 -05:00
Zhengyu Gu
e6db535078 Merge 2013-01-09 12:10:25 -08:00
Zhengyu Gu
030fa5107d 7152671: RFE: Windows decoder should add some std dirs to the symbol search path
Added JRE/JDK bin directories to decoder's symbol search path

Reviewed-by: dcubed, sla
2013-01-09 14:46:55 -05:00
Jonathan Gibbons
4779676ac1 8005644: set default max errs and max warns
Reviewed-by: darcy
2013-01-09 10:26:58 -08:00
Bharadwaj Yadavalli
8762d54e63 8005689: InterfaceAccessFlagsTest failures in Lambda-JDK tests
Fix verifier for new interface access flags

Reviewed-by: acorn, kvn
2013-01-09 11:39:30 -05:00
Erik Joelsson
45b5d84c8f 8005903: build-infra: bad symlink: j2sdk-bundle/jdk1.8.0.jdk/Contents/MacOS/libjli.dylib
Reviewed-by: tbell
2013-01-09 16:13:29 +01:00
Sean Mullan
86b40c8697 Merge 2013-01-09 08:59:58 -05:00
Alexander Scherbatiy
19b3fdf5ee 8005019: JTable passes row index instead of length when inserts selection interval
Reviewed-by: serb, denis
2013-01-09 16:52:08 +04:00
Fredrik Öhrström
33f2917473 8005096: Move a few source files in swing/beaninfo and in a demo
Reviewed-by: ohair, erikj, malenkov
2013-01-09 13:33:52 +01:00
Bengt Rutisson
0f2c37ea4a 8005489: VM hangs during GC with ParallelGC and ParallelGCThreads=0
Print an error message and exit the VM if UseParallalGC is combined with ParllelGCThreads==0. Also reviewed by vitalyd@gmail.com.

Reviewed-by: stefank, ehelin
2013-01-09 09:48:58 +01:00
Tim Bell
3c8b65b820 8005794: in new infra, how do we change java -version?
Added configure parameter --with-user-release-suffix

Reviewed-by: ohair, tbell
2013-01-08 16:23:45 -08:00
Joe Darcy
df5b548d02 8005298: Add FunctionalInterface type to the core libraries
Reviewed-by: mduigou
2013-01-08 16:08:29 -08:00
Sean Mullan
d01edb0815 Merge 2013-01-08 19:02:55 -05:00
Sean Mullan
b492dc9bac 7019834: Eliminate dependency from PolicyFile to com.sun.security.auth.PrincipalComparator
Add new java.security.Principal.implies method

Reviewed-by: alanb
2013-01-08 19:00:12 -05:00
Zhengyu Gu
f4da82981d Merge 2013-01-08 15:47:23 -08:00
Coleen Phillimore
3296803650 Merge 2013-01-08 13:44:10 -08:00
David Katleman
908a847808 Merge 2013-01-08 13:15:54 -08:00
David Katleman
7426677a62 Merge 2013-01-08 13:14:45 -08:00
David Katleman
70ec9b9666 Merge 2013-01-08 13:14:42 -08:00
David Katleman
d6b52d13ee Merge 2013-01-08 13:14:22 -08:00
Valerie Peng
91510ba8ea Merge 2013-01-08 13:06:22 -08:00
Dan Xu
6cc211f4e1 8002306: (se) Selector.open fails if invoked with thread interrupt status set [win]
Reviewed-by: alanb
2013-01-08 20:37:27 +00:00
Valerie Peng
c6f02e06f0 8004044: Lazily instantiate SunJCE.RANDOM
Replace the static initialization of SunJCE.RANDOM object w/ lazy initialization

Reviewed-by: mchung
2013-01-08 11:55:21 -08:00
Zhengyu Gu
db4cfa5011 Merge 2013-01-08 11:39:53 -08:00
Vladimir Kozlov
38c81fb411 8005419: Improve intrinsics code performance on x86 by using AVX2
Use 256bit vpxor,vptest instructions in String.compareTo() and equals() intrinsics.

Reviewed-by: twisti
2013-01-08 11:30:51 -08:00
Zhengyu Gu
5c6318e816 8005048: NMT: #loaded classes needs to just show the # defined classes
Count number of instance classes so that it matches class metadata size

Reviewed-by: coleenp, acorn
2013-01-08 14:04:25 -05:00
Eric Mccorkle
be968245ec 8004728: Add hotspot support for parameter reflection
Add hotspot support for parameter reflection

Reviewed-by: acorn, jrose, coleenp
2013-01-08 14:01:36 -05:00
Harold Seigel
cfea76669a 8005076: Creating a CDS archive with one alignment and running another causes a crash
Save the alignment when writing the CDS and compare it when reading the CDS.

Reviewed-by: kvn, coleenp
2013-01-08 13:38:11 -05:00
Jiangli Zhou
8d91f983e0 8001341: SIGSEGV in methodOopDesc::fast_exception_handler_bci_for(KlassHandle,int,Thread*)+0x3e9
Use methodHandle.

Reviewed-by: coleenp, acorn, twisti, sspitsyn
2013-01-08 13:01:19 -05:00
Vicente Romero
9d4f6a0ebe 8005167: execution time of combo tests in javac should be improved
Reviewed-by: jjg, jjh
2013-01-08 13:47:57 +00:00
Maurizio Cimadamore
5ee942d5a8 8005184: Restructure DeferredAttr to allow pluggable deferred type completers
Add hooks to generalize deferred type completion via custom helper objects

Reviewed-by: jjg
2013-01-08 10:17:29 +01:00
Maurizio Cimadamore
c932023b04 8005179: Cleanup Resolve.AmbiguityError
Linearize nested ambiguity errors

Reviewed-by: jjg
2013-01-08 10:16:26 +01:00
Maurizio Cimadamore
159b251085 8005243: Restructure method check code to allow pluggable checkers
Add interface to perform a method check - to be implemented by helper classes

Reviewed-by: jjg
2013-01-08 10:15:30 +01:00
Weijun Wang
d9c892c9fd 8005447: default principal should act as anyone
Reviewed-by: valeriep
2013-01-08 14:54:56 +08:00
Stuart Marks
f660de4e1e 7187882: TEST_BUG: java/rmi/activation/checkusage/CheckUsage.java fails intermittently
Tighten up JavaVM test library API, and adjust tests to match.

Reviewed-by: mchung, dmocek
2013-01-07 18:09:07 -08:00
Valerie Peng
2edaf46a3d Merge 2013-01-07 14:40:07 -08:00
Morris Meyer
b3fe91a803 8004537: replace AbstractAssembler emit_long with emit_int32
Reviewed-by: jrose, kvn, twisti
2013-01-07 14:08:28 -08:00
Tim Bell
cd3ceb4771 8005442: autogen.sh sets DATE_WHEN_GENERATED to empty string on Solaris version 11 or later
Reviewed-by: ohair
2013-01-07 14:01:09 -08:00
Brent Christian
b21bc8e16d 8003228: (props) sun.jnu.encoding should be set to UTF-8 [macosx]
Hard-code sun.jnu.encoding to UTF-8 on Mac

Reviewed-by: naoto
2013-01-07 13:19:03 -08:00
Harold Seigel
89e575df23 8003705: CDS failed on Windows: can not map in the CDS
Map memory only once to prevent 'already mapped' failures.

Reviewed-by: acorn, zgu
2013-01-07 15:32:51 -05:00
Valerie Peng
96c5499439 6996769: support AEAD cipher
Added implementation for GCM mode under AES cipher

Reviewed-by: weijun
2013-01-07 11:11:54 -08:00
David Dehaven
1381be8b23 8004547: Extend JavaFX launcher support to allow full JavaFX launch feature set
Reviewed-by: mchung, kcr, ksrini
2013-01-07 09:58:48 -08:00
Jim Holmlund
259f5d7cc8 8005647: langtools/test/tools/javap/MethodParameters.java fails on windows
Fix javap to not output \r\r\n

Reviewed-by: jjg
2013-01-07 17:51:05 +00:00
Chris Hegarty
f4c27e0ba1 8005709: Add at since tags to new FJP getCommonPoolParallelism and commonPool
Reviewed-by: dl
2013-01-05 17:06:54 +00:00
Bhavesh Patel
d0ff55ec00 8005092: javadoc should check for synthesized bit on an annotation
Reviewed-by: jjg
2013-01-05 00:55:53 -08:00
Bhavesh Patel
1dbfb160ba 8004891: Check for abstract method in javadoc does not conform to the language model
Reviewed-by: jjg
2013-01-04 23:06:05 -08:00
Kelly O'Hair
ec348edbe6 8004229: build-infra: Umbrella for switch of default "make" to new makefiles
Reviewed-by: erikj, tbell
2013-01-04 21:04:03 -08:00
Jon Masamitsu
7fb60025ee 8005672: Clean up some changes to GC logging with GCCause's
Reviewed-by: johnc, ysr
2013-01-04 17:04:46 -08:00
Jon Masamitsu
cca092892b 8000325: Change default for CMSClassUnloadingEnabled to true
Reviewed-by: stefank, ysr
2013-01-04 17:04:25 -08:00
Amy Lu
6ae79cff82 8005683: ProblemList.txt updates (01/2013)
Reviewed-by: mchung, alanb
2013-01-04 16:10:14 -08:00
Erik Joelsson
02d2100562 8005723: build-infra: in new infra build, sec-windows-bin-zip and jgss-windows-*-bin.zip are missing
Reviewed-by: tbell
2013-01-04 22:43:32 +01:00
Erik Joelsson
174782e022 8005723: build-infra: in new infra build, sec-windows-bin-zip and jgss-windows-*-bin.zip are missing
Reviewed-by: tbell
2013-01-04 22:43:13 +01:00
Bengt Rutisson
2574114b01 8003822: Deprecate the incremental mode of CMS
Reviewed-by: johnc, jwilhelm
2013-01-04 21:33:22 +01:00
Christopher Gruszka
7695a75883 Merge 2013-01-04 13:11:42 -05:00
Erik Joelsson
a4434fe7db 8005654: build-infra: Create sec-bin.zip
Reviewed-by: tbell
2013-01-04 17:09:10 +01:00
Erik Joelsson
e92b3e716e 8005654: build-infra: Create sec-bin.zip
Reviewed-by: tbell
2013-01-04 17:08:33 +01:00
Erik Joelsson
260c554c06 8005597: build-infra: bridgeBuild broken for pure openjdk build
Reviewed-by: tbell
2013-01-04 17:05:13 +01:00
Erik Joelsson
839f973de6 8005692: build-infra: Target "all" should do the right thing
Reviewed-by: tbell
2013-01-04 16:56:37 +01:00
Erik Joelsson
df61de8df2 8005694: build-infra: Cleanup of misc changes in build-infra
Reviewed-by: tbell
2013-01-04 16:54:41 +01:00
Chris Hegarty
c994d9bc0e 8005638: Less secure Authentication schemes should work when more secure schemes are not available
Reviewed-by: alanb
2013-01-04 11:34:17 +00:00
Chris Hegarty
6061c09cab 8005659: Add tools/pack200/AttributeTests.java to exclude list (ProblemList.txt) until pack200 updated to support method parameters
Reviewed-by: mchung, ksrini
2013-01-04 11:18:00 +00:00
Erik Joelsson
c7144600bf 8005575: build-infra: Three JCK tests fails on Solaris with new RE Autoconf-Based build
Reviewed-by: ohair
2013-01-04 11:31:32 +01:00
Erik Joelsson
24f8d04828 8005575: build-infra: Three JCK tests fails on Solaris with new RE Autoconf-Based build
Reviewed-by: ohair
2013-01-04 11:31:16 +01:00
Erik Joelsson
a393578bcc 8005575: build-infra: Three JCK tests fails on Solaris with new RE Autoconf-Based build
Reviewed-by: ohair
2013-01-04 11:31:00 +01:00
Bengt Rutisson
2cd5c87cb9 8003820: Deprecate untested and rarely used GC combinations
Log warning messages for DefNew+CMS and ParNew+SerialOld

Reviewed-by: ysr, jwilhelm, jcoomes
2013-01-04 11:10:17 +01:00
Vladimir Kozlov
7b9133b99c 8005544: Use 256bit YMM registers in arraycopy stubs on x86
Use YMM registers in arraycopy and array_fill stubs.

Reviewed-by: roland, twisti
2013-01-03 16:30:47 -08:00
Vladimir Kozlov
cfcd28fd9d 8005522: use fast-string instructions on x86 for zeroing
Use 'rep stosb' instead of 'rep stosq' when fast-string operations are available.

Reviewed-by: twisti, roland
2013-01-03 15:09:55 -08:00
Jon Masamitsu
6f5991fa38 8004895: NPG: JMapPermCore test failure caused by warnings about missing field
Reviewed-by: johnc
2013-01-03 15:03:27 -08:00
David Katleman
696db0f4f7 Added tag jdk8-b71 for changeset 3849a5b1c05c 2013-01-03 12:44:58 -08:00
David Katleman
36dee83516 Added tag jdk8-b71 for changeset 8c4241503c02 2013-01-03 12:44:50 -08:00
David Katleman
240cfb1ef1 Added tag jdk8-b71 for changeset 25285d2ea668 2013-01-03 12:44:47 -08:00
David Katleman
98f5be72c4 Added tag jdk8-b71 for changeset c27887135b51 2013-01-03 12:44:46 -08:00
David Katleman
54b645a88b Added tag jdk8-b71 for changeset 03dafcea1815 2013-01-03 12:44:39 -08:00
David Katleman
1c2cee9c68 Added tag jdk8-b71 for changeset 9d40ca78a623 2013-01-03 12:44:34 -08:00
David Katleman
37f63f5f8a Added tag jdk8-b71 for changeset 456ba4f4c541 2013-01-03 12:44:32 -08:00
Bill Pittore
782ef982f6 8004051: assert(_oprs_len[mode] < maxNumberOfOperands) failed: array overflow
Assert is triggered when number of register based arguments passed to a java method exceeds 16.

Reviewed-by: roland, vladidan
2013-01-03 15:08:43 -05:00
Erik Joelsson
9ff32c288e 8005635: build-infra: Support building install in jprt
Co-authored-by: Tim Bell <tim.bell@oracle.com>
Reviewed-by: ohair
2013-01-03 20:55:52 +01:00
Erik Joelsson
f2fab62173 8005635: build-infra: Support building install in jprt
Co-authored-by: Tim Bell <tim.bell@oracle.com>
Reviewed-by: ohair
2013-01-03 20:54:38 +01:00
Chris Hegarty
83223ad4ac 8005634: tools/launcher/VersionCheck.java fails version check on jdeps
Add jdeps to the list of tools that do not support '-version'

Reviewed-by: mchung
2013-01-03 10:00:55 +00:00
Coleen Phillimore
64499d9494 8005494: SIGSEGV in Rewriter::relocate_and_link() when testing Weblogic with CompressedOops and KlassPtrs
Relocate functions with jsr's when rewriting so not repeated after reading shared archive

Reviewed-by: twisti, jrose
2013-01-02 20:28:09 -05:00
Christopher Gruszka
282c765e3d Merge 2013-01-02 14:54:58 -05:00
Erik Joelsson
1d85687c30 8005355: build-infra: Java security signing (need a top-level make target)
Reviewed-by: tbell, ohair
2013-01-02 15:36:00 +01:00
Erik Joelsson
55ba91ee3e 8005355: build-infra: Java security signing (need a top-level make target)
Reviewed-by: tbell, ohair
2013-01-02 15:35:12 +01:00
Erik Joelsson
f80cc97adb 8005347: build-infra: Verify 'gnumake source' at the top level works ok
Reviewed-by: tbell, ohair, dholmes
2013-01-02 11:29:29 +01:00
Lana Steuck
87a4453583 Merge 2013-01-01 17:50:29 -08:00
Lana Steuck
cc77f0e79c Merge 2013-01-01 12:47:16 -08:00
Erik Joelsson
36c06a232d 8001895: build-infra: Make JDK_BUILD_NUMBER and MILESTONE customizable
Added configure params

Reviewed-by: ohair
2013-01-01 14:13:18 +01:00
Qi Zuo
8a93671af6 8005583: Install build(gnumake all) failed preventing RE from doing JDK8 combo builds
Reviewed-by: paulk, billyh
2012-12-31 14:52:11 -05:00
Jonathan Gibbons
39734d27f0 8005195: Doclint regression tests fail on windows
Reviewed-by: mcimadamore
2012-12-30 06:17:36 -08:00
Erik Joelsson
75a99396e7 8004490: build-infra: mac: hotspot is always built in product, regardless of --with-debug-level setting
Reviewed-by: tbell
2012-12-30 12:15:02 +01:00
Bengt Rutisson
53cdde9124 8005396: Use ParNew with only one thread instead of DefNew as default for CMS on single CPU machines
Reviewed-by: jmasa, jcoomes
2012-12-30 08:47:52 +01:00
John Cuthbertson
15bae865ac 8004816: G1: Kitchensink failures after marking stack changes
Reset the marking state, including the mark stack overflow flag, in the event of a marking stack overflow during serial reference processing.

Reviewed-by: jmasa
2013-01-03 16:28:22 -08:00
Eric Mccorkle
73b497c12e 8004727: Add compiler support for parameter reflection
Reviewed-by: jjg
2012-12-29 17:33:17 -08:00
Mandy Chung
e8ce882d43 8003562: Provide a CLI tool to analyze class dependencies
Reviewed-by: jjg, alanb, ulfzibis, erikj
2012-12-28 22:25:21 -08:00
Mandy Chung
87ea670a65 8003562: Provide a CLI tool to analyze class dependencies
Reviewed-by: jjg, alanb, ulfzibis, erikj
2012-12-28 22:20:53 -08:00
Lana Steuck
f2c7a7867a Merge 2012-12-28 18:39:09 -08:00
Lana Steuck
b7af263526 Merge 2012-12-28 18:36:41 -08:00
Lana Steuck
5294fa2499 Merge 2012-12-28 18:31:52 -08:00
Lana Steuck
dcbabfcf7b Merge 2012-12-28 18:31:31 -08:00
Lana Steuck
177206a185 Merge 2012-12-28 18:30:56 -08:00
Lana Steuck
46b23b4009 Merge 2012-12-28 18:28:39 -08:00
Stuart Marks
dbdd083e7c Merge 2012-12-28 17:36:41 -08:00
Jim Gish
f933209475 8005594: Fix to 8003265 breaks build
Backout changeset d05f028770b9

Reviewed-by: smarks, wetmore
2012-12-28 18:32:26 -05:00
Jim Gish
2fc01efdd8 8005118: Javadoc styles are inconsistent
Use a common javadoc style in the String classes

Reviewed-by: darcy
2012-12-28 16:56:54 -05:00
Lana Steuck
33a20f586c Merge 2013-01-01 17:49:22 -08:00
Chris Hegarty
c2f4000a6f 8005556: java/net/Socks/SocksV4Test.java is missing @run tag
Reviewed-by: alanb
2012-12-29 11:00:15 +00:00
Mandy Chung
f85705002e 8003562: Provide a CLI tool to analyze class dependencies
Reviewed-by: jjg, alanb, ulfzibis, erikj
2012-12-28 22:21:40 -08:00
Shanliang Jiang
36ae539974 7120365: DiffHBTest.java fails due to ConcurrentModificationException
The problem is from the server notification forwarder, it should use a copy of listener set to do iterate.

Reviewed-by: alanb
2012-12-28 16:44:27 +01:00
Xue-Lei Andrew Fan
a16e8f75d6 8003265: Need to clone array of input/output parameters
Reviewed-by: mullan
2012-12-28 03:50:57 -08:00
Erik Joelsson
e781e203bf 8005549: build-infra: Merge NewMakefile.gmk and common/makefiles/Makefile
Reviewed-by: ohair, tbell
2012-12-28 09:51:46 +01:00
Erik Joelsson
8ae1606066 8005549: build-infra: Merge NewMakefile.gmk and common/makefiles/Makefile
Reviewed-by: ohair, tbell
2012-12-28 09:51:15 +01:00
Xue-Lei Andrew Fan
6d41a58c82 7109274: Restrict the use of certificates with RSA keys less than 1024 bits
This restriction is applied via the Java Security property, "jdk.certpath.disabledAlgorithms". This will impact providers that adhere to this security property.

Reviewed-by: mullan
2012-12-28 00:48:12 -08:00
Masayoshi Okutsu
552c289b79 8005561: typo in Calendar
Reviewed-by: peytoia
2012-12-28 16:39:22 +09:00
Yuka Kamiya
ada3653e48 8005277: Regression in JDK 7 in Bidi implementation
Reviewed-by: okutsu
2012-12-28 15:07:08 +09:00
Masayoshi Okutsu
12ae00bd7d 8005471: DateFormat: Time zone info is not localized when adapter is CLDR
Reviewed-by: peytoia
2012-12-28 14:13:10 +09:00
Joe Wang
c04f299d28 8005473: Warnings compiling jaxp
Clean up compiling warnings.

Reviewed-by: weijun, chegar, forax
2012-12-27 18:17:58 -08:00
Chris Hegarty
d2bce7f267 8003981: Support Parallel Array Sorting - JEP 103
Co-authored-by: David Holmes <david.holmes@oracle.com>
Co-authored-by: Doug Lea <dl@cs.oswego.edu>
Reviewed-by: chegar, forax, dholmes, dl
2012-12-27 21:55:24 +00:00
David Katleman
645890b143 Added tag jdk8-b70 for changeset 08e2eaa7999a 2012-12-27 12:15:17 -08:00
David Katleman
b4bb519963 Added tag jdk8-b70 for changeset ee8e64d2ea04 2012-12-27 12:15:09 -08:00
David Katleman
cea2872b76 Added tag jdk8-b70 for changeset 2981496fa5fa 2012-12-27 12:15:06 -08:00
David Katleman
1ca719243f Added tag jdk8-b70 for changeset 6ca279338b6b 2012-12-27 12:15:03 -08:00
David Katleman
ca417aacd2 Added tag jdk8-b70 for changeset fabcdf88c360 2012-12-27 12:14:58 -08:00
David Katleman
919a2e217f Added tag jdk8-b70 for changeset e6b0cf31279d 2012-12-27 12:14:55 -08:00
David Katleman
ae64839a12 Added tag jdk8-b70 for changeset 5e47d0354a44 2012-12-27 12:14:53 -08:00
Erik Joelsson
9268fe1857 8005548: build-infra: Fix docs target on windows
Fix path sep variable

Reviewed-by: tbell
2012-12-27 20:55:53 +01:00
Erik Joelsson
b9ea1c8108 8005540: build-infra: Improve incremental build speed on windows by caching find results
Reviewed-by: ohair
2012-12-27 20:18:42 +01:00
Erik Joelsson
1ac4606dea 8005540: build-infra: Improve incremental build speed on windows by caching find results
Reviewed-by: ohair
2012-12-27 20:18:21 +01:00
Erik Joelsson
ce4f8fe85b 8001942: build-infra: General permission problems on Windows/cygwin
Added sanity check for file permissions in configure

Reviewed-by: tbell, ohair
2012-12-27 20:15:22 +01:00
Dmitry Cherepanov
d11167de22 8001161: mac: EmbeddedFrame doesn't become active window
Reviewed-by: ant
2012-12-27 16:08:30 +04:00
David Katleman
d9c8359951 Merge 2012-12-26 14:25:03 -08:00
David Katleman
da7613dbbd Merge 2012-12-26 14:24:32 -08:00
David Katleman
8cbd71d7bf Merge 2012-12-26 14:23:58 -08:00
David Katleman
614dd26d3d Merge 2012-12-26 14:23:50 -08:00
David Katleman
23e90c98b2 Merge 2012-12-26 14:23:27 -08:00
Sean Mullan
2826ca39d3 Merge 2012-12-26 10:08:36 -05:00
Sean Mullan
4bc8e6ac87 8005117: Eliminate dependency from ConfigSpiFile to com.sun.security.auth.login.ConfigFile
Reviewed-by: alanb, mchung, weijun
2012-12-26 10:07:00 -05:00
Bhavesh Patel
8a40619e4d 8004893: the javadoc/doclet needs to be updated to accommodate lambda changes
Reviewed-by: jjg
2012-12-25 17:23:59 -08:00
Yumin Qi
a5fbc1aa4d Merge 2012-12-24 11:46:38 -08:00
Andrew Brygin
dfbb5287a9 8005402: Need to provide benchmarks for color management
Reviewed-by: jgodinez, prr
2012-12-24 14:22:23 +04:00
Andrew Brygin
78a555f9e0 7124245: [lcms] ColorConvertOp to color space CS_GRAY apparently converts orange to 244,244,0
Reviewed-by: prr
2012-12-24 14:03:04 +04:00
Yong Jeffrey Huang
2185318b56 Merge 2012-12-23 19:11:15 -08:00
Roland Westrelin
73d6d417be 8005071: Incremental inlining for JSR 292
Post parse inlining driven by number of live nodes.

Reviewed-by: twisti, kvn, jrose
2012-12-23 17:08:22 +01:00
Joe Wang
7dd77a4b62 8005280: (props) Improve test coverage for small XML parser
Added a few more invalid XML files, international characters to LoadAndStore test, and a behavior compatibility test.

Reviewed-by: alanb, lancea
2012-12-21 17:29:23 -08:00
John Cuthbertson
2df5f7cc5a 8001424: G1: Rename certain G1-specific flags
Rename G1DefaultMinNewGenPercent, G1DefaultMaxNewGenPercent, and G1OldCSetRegionLiveThresholdPercent to G1NewSizePercent, G1MaxNewSizePercent, and G1MixedGCLiveThresholdPercent respectively. The previous names are no longer accepted.

Reviewed-by: brutisso, ysr
2012-12-21 11:45:34 -08:00
Tao Mao
7cb614b0e5 8004132: SerialGC: ValidateMarkSweep broken when running GCOld
Remove bit-rotten ValidateMarkSweep functionality and flag.

Reviewed-by: johnc, jmasa
2013-01-02 11:32:41 -08:00
Jon Masamitsu
86dd796322 8005486: NPG: Incorrect assertion in ChunkManager::list_index()
Reviewed-by: coleenp
2012-12-26 15:05:30 -08:00
Alejandro Murillo
52a0bed8f5 8005382: new hotspot build - hs25-b15
Reviewed-by: jcoomes
2012-12-21 10:27:49 -08:00
Alejandro Murillo
11425ca9ff Merge 2012-12-21 10:27:22 -08:00
Alejandro Murillo
0c6644eb2e Added tag hs25-b14 for changeset 2fb5c8602c9f 2012-12-21 10:17:16 -08:00
Alejandro Murillo
fb6df17a6d Merge 2012-12-21 10:17:15 -08:00
Jesper Wilhelmsson
917282a86d Merge 2012-12-21 16:33:22 +01:00
Martin Buchholz
1d3157ac87 8003512: javac doesn't work with jar files with >64k entries
Reviewed-by: jjg, ksrini
2012-12-21 15:27:55 +00:00
Joe Darcy
378571e10e 8005282: Use @library tag with non-relative path for javac tests
Reviewed-by: jjg
2012-12-21 08:45:43 -08:00
Alexander Potochkin
84f4754563 8003982: new test javax/swing/AncestorNotifier/7193219/bug7193219.java failed on macosx
Reviewed-by: anthony, alexsch
2012-12-21 19:11:50 +04:00
Shanliang Jiang
446a481b15 8005325: The script should use TESTVMOPTS
Put back TESTVMOPTS which was removed by mistake.

Reviewed-by: smarks
2012-12-21 10:58:20 +01:00
Roland Westrelin
42c79d741b Merge 2012-12-21 01:39:34 -08:00
Jaroslav Bachorik
ad4080a20a 7146162: javax/management/remote/mandatory/connection/BrokenConnectionTest.java failing intermittently
ClientCommunicatorAdmin should call gotIOException((IOException)e) instead of restart((IOException)e) when detecting a communication error, because the method gotIOException will send a failure notification if necessary.

Reviewed-by: emcmanus, sjiang
2012-12-21 09:27:37 +01:00
Stuart Marks
1fd4da4d29 8005290: remove -showversion from RMI test library subprocess mechanism
Reviewed-by: jgish, chegar, dmocek
2012-12-20 20:11:45 -08:00
Yong Jeffrey Huang
06be28ce8d 7195759: ISO 4217 Amendment 154
Reviewed-by: naoto
2012-12-20 18:53:46 -08:00
Morris Meyer
113e9ab39d 8004250: replace AbstractAssembler a_byte/a_long with emit_int8/emit_int32
Reviewed-by: jrose, kvn, twisti
2012-12-20 18:53:44 -08:00
David Katleman
5dc630b150 8004982: JDK8 source with GPL header errors
Reviewed-by: ohair
2012-12-20 16:24:51 -08:00
David Katleman
306cab1006 8004982: JDK8 source with GPL header errors
Reviewed-by: ohair
2012-12-20 16:24:50 -08:00
David Katleman
8208c844dd 8004982: JDK8 source with GPL header errors
Reviewed-by: ohair
2012-12-20 16:24:18 -08:00
David Katleman
fb31951ddf 8004982: JDK8 source with GPL header errors
Reviewed-by: ohair
2012-12-20 16:23:11 -08:00
David Katleman
b3404d2c71 8004982: JDK8 source with GPL header errors
Reviewed-by: ohair
2012-12-20 16:22:44 -08:00
Jennifer Godinez
9008a63fde 7180359: Assertion in awt_Win32GraphicsDevice.cpp when running specjbb in jprt
Reviewed-by: bae, prr
2012-12-20 14:43:35 -08:00
Aleksey Shipilev
fede1f0216 8004330: Add missing Unsafe entry points for addAndGet() family
Fix java names for getAndSet intrinsics

Reviewed-by: kvn
2012-12-20 14:17:52 -08:00
Alan Bateman
50185a4371 8005281: (props) loadFromXML/storeToXML with small parser is not thread safe
Reviewed-by: mchung
2012-12-20 20:40:04 +00:00
Alan Bateman
27f7bfd9f0 8001048: JSR-160: Allow IIOP transport to be optional
Reviewed-by: dsamersoff, dfuchs, mchung
2012-12-20 20:29:59 +00:00
Doug Lea
f2c8fd3d1a 8004330: Add missing Unsafe entry points for addAndGet() family
Add Unsafe addAndGet() methods which have intrinsics in Hotspot (7023898)

Reviewed-by: alanb, kvn
2012-12-20 12:24:52 -08:00
Christian Thalinger
d8b54b1219 8005345: JSR 292: JDK performance tweaks
Reviewed-by: kvn, jrose
2012-12-20 11:16:14 -08:00
Jonathan Gibbons
e2bd09e6f6 8005307: fix missing @bug tags
Reviewed-by: jjh
2012-12-20 17:59:46 +00:00
David Katleman
16bb0e7a81 Added tag jdk8-b69 for changeset ec5621e36729 2012-12-20 09:18:36 -08:00
David Katleman
b2724c11c4 Added tag jdk8-b69 for changeset 5dfed9cbd6cf 2012-12-20 09:18:20 -08:00
David Katleman
553bf8aba9 Added tag jdk8-b69 for changeset d703e9dcfdfd 2012-12-20 09:18:10 -08:00
David Katleman
11dfefe252 Added tag jdk8-b69 for changeset 2d4530f2c281 2012-12-20 09:18:07 -08:00
David Katleman
5f74f40caa Added tag jdk8-b69 for changeset 72008e0da092 2012-12-20 09:17:47 -08:00
David Katleman
4630ee07bb Added tag jdk8-b69 for changeset 554224849d39 2012-12-20 09:17:38 -08:00
David Katleman
d571173bc7 Added tag jdk8-b69 for changeset 0798861b8903 2012-12-20 09:17:34 -08:00
Jaroslav Bachorik
96c02bccd3 8005309: Missed tests for 6783290,6937053,7009998
Missed tests for 6783290,6937053,7009998

Reviewed-by: sjiang, emcmanus
2012-12-20 20:12:32 +04:00
Chris Hegarty
6d67de55fa 8005306: Redundant cast warning in KeepAliveStream.java
Reviewed-by: alanb
2012-12-20 15:04:53 +00:00
Doug Lea
a3f6c5ebeb 8002356: Add ForkJoin common pool and CountedCompleter
Reviewed-by: chegar, mduigou
2012-12-20 13:44:06 +00:00
Jaroslav Bachorik
199a9c32b2 7009998: JMX synchronization during connection restart is faulty
Add a return statement after the re-connecting has finished and the state is CONNECTED

Reviewed-by: sjiang
2012-12-20 17:24:56 +04:00
Jaroslav Bachorik
bba9907d2a 6937053: RMI unmarshalling errors in ClientNotifForwarder cause silent failure
The catch block in the fetchNotifs() method is extended to expect UnmarshalException

Reviewed-by: emcmanus
2012-12-20 16:56:33 +04:00
Erik Joelsson
8c190945b9 8005178: build-infra: Dependency on libfdlibm on mac is broken
Reviewed-by: tbell, ohair
2012-12-20 13:05:21 +01:00
Jaroslav Bachorik
28979bd7a2 6783290: MBeanInfo/MBeanFeatureInfo has inconsistent readObject/writeObject
Call readObject in all cases

Reviewed-by: emcmanus
2012-12-20 16:02:42 +04:00
Joel Borggren-Franck
6ed6cb5375 8004823: Add VM support for type annotation reflection
Reviewed-by: dholmes, coleenp
2012-12-20 10:22:19 +01:00
David Holmes
2a45536ba1 7190137: Add support for JVM_VARIANT minimal1
Allow configuration of minimal1 as a target VM along with client and server

Reviewed-by: ohair, erikj
2012-12-20 01:44:02 -05:00
Erik Helin
5bac85fc66 8004691: Add a jtreg test that exercises the ExecuteInternalVMTests flag
Reviewed-by: stefank, brutisso, kvn, ctornqvi
2012-12-20 05:31:40 +01:00
Vladimir Kozlov
e508acf372 8004741: Missing compiled exception handle table entry for multidimensional array allocation
Added missing exception path for multidimensional array allocation and use Throwable type instead of OutOfMemoryError for allocation's exception.

Reviewed-by: twisti
2012-12-19 19:21:15 -08:00
Yumin Qi
ddb2b5d004 Merge 2012-12-19 16:10:19 -08:00
Vladimir Kozlov
960d969ade 8004835: Improve AES intrinsics on x86
Enable AES intrinsics on non-AVX cpus, group together aes instructions in crypto stubs.

Reviewed-by: roland, twisti
2012-12-19 15:40:35 -08:00
Richard Reingruber
ba0d2572eb 8005033: clear high word for integer pop count on SPARC
Reviewed-by: kvn, twisti
2012-12-19 14:44:00 -08:00
David Katleman
6fd78e16c1 Merge 2012-12-19 13:38:05 -08:00
David Katleman
940d0ee783 Merge 2012-12-19 13:36:21 -08:00
Joe Darcy
059b2b67b3 8005097: Tie isSynthetic javadoc to the JLS
Reviewed-by: mduigou
2012-12-19 11:53:52 -08:00
Ron Durbin
9c761152db 8005044: remove crufty '_g' support from HS runtime code
Phase 2 is removing '_g' support from the Runtime code.

Reviewed-by: dcubed, coleenp, hseigel
2012-12-19 10:35:08 -08:00
Alan Bateman
4ce906db2b 8005248: (props) Integrate small footprint parser into Properties
Reviewed-by: joehw, mchung, psandoz, erikj
2012-12-19 14:53:33 +00:00
Joe Wang
122ca6521e 8004371: (props) Properties.loadFromXML needs small footprint XML parser as fallback when JAXP is not present
Reviewed-by: alanb, mchung, psandoz
2012-12-19 12:09:10 +00:00
Shanliang Jiang
679f2eee3f 7158614: JMXStartStopTest.sh failing intermittently
Fixed 3 problems here: 1) checked the lock file too eary 2) never got the process id of a java test 3) some shell commands were not supported in some Solaris machines.

Reviewed-by: dsamersoff, alanb
2012-12-19 11:06:51 +01:00
Erik Joelsson
606197bf4b 8004803: build-infra: Cannot use icedtea as boot for closed build
Set bootclasspath to javac and not the running jvm

Reviewed-by: ohair
2012-12-19 09:46:28 +01:00
Joe Wang
9ee412031f 8003261: static field is public but not final
Add final to fVersion field, and make it a non-compile time constant.

Reviewed-by: hawtin, lancea, dholmes, chegar
2012-12-18 21:11:43 -08:00
Lana Steuck
a0e241952c Merge 2012-12-18 18:14:50 -08:00
Aleksey Shipilev
f39122797e 8004318: JEP-171: Support Unsafe fences intrinsics
Add three memory-ordering intrinsics to the sun.misc.Unsafe class.

Reviewed-by: twisti, kvn
2012-12-18 17:47:50 -08:00
Lana Steuck
f79b7e879f Merge 2012-12-18 17:42:13 -08:00
Aleksey Shipilev
4c293ebcd6 8004318: JEP-171: Support Unsafe fences intrinsics
Add three memory-ordering intrinsics to the sun.misc.Unsafe class.

Reviewed-by: twisti, kvn
2012-12-18 17:37:44 -08:00
Lana Steuck
5c4f1d7778 Merge 2012-12-18 16:14:59 -08:00
Joel Borggren-Franck
6fec53905c 8004699: Add type annotation storage to Constructor, Field and Method
Reviewed-by: darcy, dholmes
2012-12-18 14:49:39 -08:00
Joe Darcy
407aefdc02 8005042: Add Method.isDefault to core reflection
Reviewed-by: alanb, forax, mduigou, jgish, mchung
2012-12-18 14:44:13 -08:00
Morris Meyer
52da261983 8004536: replace AbstractAssembler emit_word with emit_int16
Reviewed-by: jrose, kvn, twisti
2012-12-18 10:47:23 -08:00
Erik Joelsson
a54661714f 8001901: build-infra: Fix "misbehaving" which command on Solaris
Removed all uses of which in configure on solaris.

Reviewed-by: ohair
2012-12-18 17:54:39 +01:00
Vladimir Ivanov
8eb3b25c4f Merge 2012-12-18 08:19:53 -08:00
Konstantin Shefov
f569dcc7e9 7104594: [macosx] Test closed/javax/swing/JFrame/4962534/bug4962534 expects Metal L&F by default
Reviewed-by: yan, alexsch
2012-12-18 15:17:58 +00:00
Vladimir Ivanov
6d08af845e 8003135: HotSpot inlines and hoists the Thread.currentThread().isInterrupted() out of the loop
Make the load of TLS._osthread._interrupted flag in Thread.isInterrupted(Z)Z intrinsic effectively volatile.

Reviewed-by: kvn, jrose
2012-12-18 06:52:00 -08:00
Roland Westrelin
b1c3e5ccc6 8005031: Some cleanup in c2 to prepare for incremental inlining support
Collection of small changes to prepare for incremental inlining.

Reviewed-by: twisti, kvn
2012-12-18 14:55:25 +01:00
Stefan Karlsson
da4c36cdcb 8005108: NPG: MetaspaceAux::used_in_bytes(), capacity_in_bytes() and reserved_in_bytes() return inconsistent numbers
Reverted the changes to these functions from JDK-8000662

Reviewed-by: brutisso, jmasa
2012-12-18 10:40:51 +01:00
Fredrik Öhrström
ccafa0b2e1 8004145: New improved hgforest.sh, ctrl-c now properly terminates mercurial processes
Reviewed-by: ohair, erikj
2012-12-18 09:57:01 +01:00
Martin Buchholz
e046c9d3f5 8004863: Infinite Loop in KeepAliveStream
Reviewed-by: chegar
2012-12-17 18:39:59 -08:00
Bharadwaj Yadavalli
fb74718339 8004548: remove unused AbstractAssembler::print(Label&)
Reviewed-by: kvn, twisti
2012-12-17 11:00:22 -08:00
Zhengyu Gu
934898a792 Merge 2012-12-17 10:40:52 -08:00
Jonathan Gibbons
fe6a78af86 8004832: Add new doclint package
Reviewed-by: erikj, ohair
2012-12-17 10:31:27 -08:00
Zhengyu Gu
c75042e28b 8004802: jcmd VM.native_memory baseline=false crashes VM
NMT has to check option's value also to determine which command to execute

Reviewed-by: acorn, coleenp, hseigel
2012-12-17 13:14:02 -05:00
Mario Torre
d398aa77d7 8005018: X11: focus problems with openjdk 1.7.0 under gnome3 when selected keyboard is not the first in keyboard list
Don't consider extraenous bits when checking button mask, so that grabWindowRef on the window is not confused and released correctly

Reviewed-by: art, anthony
2012-12-17 17:43:21 +01:00
Jonathan Gibbons
d159fff7fd 8005090: Include com.sun.source.doctree in Tree API docs
Reviewed-by: erikj
2012-12-17 08:34:43 -08:00
Jonathan Gibbons
2533b1ce06 8005090: Include com.sun.source.doctree in Tree API docs
Reviewed-by: erikj
2012-12-17 08:34:02 -08:00
Chris Hegarty
00802749ea 8005081: java/util/prefs/PrefsSpi.sh fails on macos-x
Reviewed-by: alanb
2012-12-17 16:27:05 +00:00
Erik Helin
7fc460bae3 8004845: Catch incorrect usage of new and delete during compile time for value objects and stack objects
Makes the "new" and "delete" operator of _ValueObj and StackObj private

Reviewed-by: dholmes, coleenp
2012-12-17 15:25:26 +01:00
Sean Mullan
627cd88eba Merge 2012-12-17 08:30:06 -05:00
Sean Mullan
f458bb3861 8004234: Downgrade normative references to ${java.home}/lib/security/krb5.conf
Reviewed-by: alanb, weijun
2012-12-17 08:28:27 -05:00
Sergey Malenkov
aed660dc95 8005065: [findbugs] reference to mutable array in JavaBeans
Reviewed-by: alexsch
2012-12-17 16:58:56 +04:00
Alexey Utkin
c5c34df7bf 8004928: TEST_BUG: Reduce dependence of CoreLib tests from the AWT subsystem
The tests were refactored to drop AWT dependence where it was possible.

Reviewed-by: alanb, mchung
2012-12-17 14:34:37 +04:00
Bengt Rutisson
a3355065be 7173959: Jvm crashed during coherence exabus (tmb) testing
Mapping of aligned memory needs to be MT safe. Also reviewed by: vitalyd@gmail.com

Reviewed-by: dholmes, coleenp, zgu
2012-12-17 08:49:20 +01:00
Lana Steuck
166cf4fbc1 Merge 2012-12-16 22:09:28 -08:00
Lana Steuck
7aab781edb Merge 2012-12-16 22:05:19 -08:00
Lana Steuck
3855230f7a Merge 2012-12-16 22:02:35 -08:00
Weijun Wang
5ded9d47a1 7197159: accept different kvno if there no match
Reviewed-by: xuelei
2012-12-17 12:18:46 +08:00
Joel Borggrén-Franck
72cbbd7f3b 8005098: Provide isSynthesized() information on Attribute.Compound
Reviewed-by: jjg
2012-12-16 11:09:36 +01:00
Jonathan Gibbons
aee2457cd0 8004833: Integrate doclint support into javac
Reviewed-by: mcimadamore
2012-12-19 11:29:56 +00:00
Lana Steuck
5cf1075de1 Merge 2012-12-18 18:15:47 -08:00
Maurizio Cimadamore
2296453268 8005193: New regression test test/tools/javac/lambda/BadMethodCall2.java fails
Bad golden file in negative test

Reviewed-by: jjh
2012-12-18 22:16:45 +00:00
Fredrik Öhrström
d61f7ca328 8004657: Add hooks to javac to enable reporting dependency information
Reviewed-by: jjg, mcimadamore
2012-12-18 10:23:40 +01:00
Joe Darcy
da02d4f3d5 8005046: Provide checking for a default method in javax.lang.model
Reviewed-by: jjg
2012-12-18 00:24:54 -08:00
Mandy Chung
9f039ad8bd 8005137: Rename DocLint.call to DocLint.init which overrides Plugin.init
Reviewed-by: darcy, jjh
2012-12-17 15:19:38 -08:00
Jonathan Gibbons
3ce1d65326 8004961: rename Plugin.call to Plugin.init
Reviewed-by: mcimadamore
2012-12-17 10:55:40 -08:00
Maurizio Cimadamore
08823b6103 8004099: Bad compiler diagnostic generated when poly expression is passed to non-existent method
Some code paths in resolve do not use methodArguments to correctly format actuals

Reviewed-by: jjg
2012-12-17 16:13:01 +00:00
Jonathan Gibbons
4a3e904c6e 8004832: Add new doclint package
Reviewed-by: mcimadamore
2012-12-17 07:47:05 -08:00
Maurizio Cimadamore
c5acce4569 8004814: javadoc should be able to detect default methods
Reviewed-by: jjg
2012-12-17 14:54:42 +00:00
Lana Steuck
c38e124ed5 Merge 2012-12-16 22:10:52 -08:00
Alan Bateman
29698e6212 8004963: URLConnection, downgrade normative reference to ${java.home}/lib/content-types.properties
Reviewed-by: chegar
2012-12-15 15:07:35 +00:00
Vicente Romero
c1804d6409 8000518: Javac generates duplicate name_and_type constant pool entry for class BinaryOpValueExp.java
Reviewed-by: jjg, mcimadamore
2012-12-15 13:54:51 +00:00
Coleen Phillimore
a7b0cbd4e6 Merge 2012-12-14 16:43:37 -08:00
Alejandro Murillo
b3c9917021 8005036: new hotspot build - hs25-b14
Reviewed-by: jcoomes
2012-12-14 14:27:40 -08:00
Alejandro Murillo
4cb99fc37e Added tag hs25-b13 for changeset a644646e04e5 2012-12-14 14:19:36 -08:00
Alejandro Murillo
e668a7a7a1 Merge 2012-12-14 14:19:35 -08:00
Joe Wang
fd69767808 8003260: [findbug] some fields should be package protected
Change public or protected mutable static fields to private or package private.

Reviewed-by: lancea
2012-12-14 13:24:34 -08:00
Lana Steuck
49be988925 Merge 2012-12-14 13:15:39 -08:00
Lana Steuck
0118983407 Merge 2012-12-14 13:14:33 -08:00
Christian Thalinger
110d953ab2 Merge 2012-12-14 12:11:17 -08:00
Christian Thalinger
40a871f3e9 8003238: JSR 292: intermittent exception failure with java/lang/invoke/CallSiteTest.java
Reviewed-by: jrose, kvn
2012-12-14 12:06:42 -08:00
Gary Collins
11605cf755 Merge 2012-12-14 11:45:55 -08:00
Lana Steuck
25706f6a77 Merge 2012-12-14 11:22:54 -08:00
Lana Steuck
39ddaf8a4b Merge 2012-12-14 11:22:16 -08:00
Lana Steuck
abe9bf1b53 Merge 2012-12-14 11:21:09 -08:00
Ron Durbin
af7cedec67 7153050: remove crufty '_g' support from HotSpot repo makefiles
Phase 1 is removing '_g' support from the Makefiles.

Reviewed-by: dcubed, sspitsyn, coleenp, tbell
2012-12-14 10:06:52 -08:00
Konstantin Shefov
65793d5644 6757986: javax/swing/JInternalFrame/5066752/bug5066752.java needs correction
Reviewed-by: serb, alexsch
2012-12-14 13:32:59 +00:00
Vicente Romero
630bba40bd 8004976: test/tools/javac/7153958/CPoolRefClassContainingInlinedCts.java can fail
Reviewed-by: jjg, mcimadamore
2012-12-14 11:16:46 +00:00
David Holmes
516f5d5da2 8003632: HPROF class file version java.lang.RuntimeException errors
Reviewed-by: mchung, lancea
2012-12-13 21:18:27 -05:00
Stefan Karlsson
9d5b19ab0a Merge 2012-12-13 09:06:38 -08:00
David Katleman
f329e18992 Added tag jdk8-b68 for changeset 36e1566efb55 2012-12-13 09:05:43 -08:00
David Katleman
d25f3ac7fb Added tag jdk8-b68 for changeset e56b4a0c1da8 2012-12-13 09:05:35 -08:00
David Katleman
294f5f158e Added tag jdk8-b68 for changeset 461e60cdcd3e 2012-12-13 09:05:31 -08:00
David Katleman
892ca4947b Added tag jdk8-b68 for changeset 0447ec5a0e8c 2012-12-13 09:05:29 -08:00
David Katleman
7b0930ff0e Added tag jdk8-b68 for changeset 9e5f94da743d 2012-12-13 09:05:20 -08:00
David Katleman
dc523aae7a Added tag jdk8-b68 for changeset 9b354f853d8b 2012-12-13 09:05:15 -08:00
David Katleman
e3a5678c3e Added tag jdk8-b68 for changeset 388af7398bc9 2012-12-13 09:05:11 -08:00
Rob McKenna
7524cd99c1 8000525: Java.net.httpcookie api does not support 2-digit year format
Reviewed-by: chegar
2012-12-13 15:28:40 +00:00
Konstantin Shefov
077973261a 7132385: [macosx] IconifyTest of RepaintManager could use some delay
Reviewed-by: serb, alexsch
2012-12-13 15:14:22 +00:00
Mark Sheppard
c9063f559f 8003890: corelibs test scripts should pass TESTVMOPTS
Reviewed-by: chegar, alanb
2012-12-13 14:47:35 +00:00
Sean Mullan
25435d7aa4 Merge 2012-12-13 09:37:29 -05:00
Jason Uh
e3c39dffe5 7193792: sun/security/pkcs11/ec/TestECDSA.java failing intermittently
Reviewed-by: vinnie, wetmore
2012-12-13 09:35:35 -05:00
Chris Hegarty
453bef09b0 8004675: Inet6Address.getHostAddress should use string scope identifier where available
...and some minor stylistic cleanup

Reviewed-by: khazra, dsamersoff, michaelm
2012-12-13 14:33:32 +00:00
Chris Hegarty
2f8cd2937d 8004925: java/net/Socks/SocksV4Test.java failing on all platforms
Reviewed-by: alanb, dsamersoff
2012-12-13 09:55:55 +00:00
Erik Helin
0ed52d16e2 8004661: Comment and function name java_lang_String::toHash is wrong
Renamed to hash_code

Reviewed-by: dholmes, coleenp, brutisso
2012-12-13 10:09:49 +01:00
Volker Simonis
2b3c2f2603 8004674: Add necessary .inline.hpp files to fix non-PCH build
Reviewed-by: stefank, coleenp
2012-12-13 09:28:14 +01:00
Roman Kennke
9032aa3391 8004898: library_call.cpp build error after 7172640 with GCC 4.7.2
Fix opto/library_call.cpp compilation errors

Reviewed-by: twisti, coleenp
2012-12-12 21:40:04 -05:00
Lance Andersen
e57799bc0e 8004357: Implement various methods in SerialBlob/Clob/Array and specify Thread Safety
Reviewed-by: naoto
2012-12-12 20:57:45 -05:00
Weijun Wang
85db8f9602 8004235: Disable native JGSS provider on Mac
Reviewed-by: erikj, valeriep
2012-12-13 08:11:38 +08:00
Jim Gish
3e23931d0c 8004651: TEST: java/util/logging/CheckLockLocationTest.java failed to delete file (win)
Failure to delete test log file should be a warning instead of test failure

Reviewed-by: mduigou, smarks
2012-12-12 15:37:27 -08:00
Stefan Karlsson
47424a5d4d 8005002: Crash because of a raw oop in ClassLoaderData::add_dependency
Move the handelization of 'last' to a point before the GC might enter.

Reviewed-by: dholmes, sspitsyn, coleenp
2012-12-12 22:41:13 +01:00
Paul Nauman
0d7c6381b3 8004713: Stackoverflowerror thrown when thread stack straddles 0x80000000
Use unsigned comparison when checking for stack overflow

Reviewed-by: kvn, twisti
2012-12-13 17:27:55 -08:00
David Katleman
f522d676c3 Merge 2012-12-12 13:21:39 -08:00
David Katleman
4ddb77631b Merge 2012-12-12 13:19:32 -08:00
John Cuthbertson
73843e1140 8001028: Improve GC option handling
If there are not enough native resources to create the ReferenceHandler or Finalizer Java threads, the VM will attempt to throw an OOME before the java.lang.Class class has been initialized. This can result in assertion failures and other crashes. Move the initialization of the java.lang.Class class to just before the initialization of the java.lang.ref.Finalizer class.

Reviewed-by: jwilhelm, dholmes, coleenp
2012-12-12 12:07:32 -08:00
Stuart Marks
38887c7167 8004748: clean up @build tags in RMI tests
Reviewed-by: alanb, darcy, mchung
2012-12-12 09:53:01 -08:00
Coleen Phillimore
54bbf614e8 8004883: NPG: clean up anonymous class fix
Add klass_holder() to return either mirror or class_loader depending on if the class is anonymous or not.

Reviewed-by: stefank, jrose
2012-12-12 11:39:29 -05:00
Rob McKenna
bf46e16bbc 8004337: java/sql tests aren't run in test/Makefile
Reviewed-by: lancea, alanb
2012-12-12 15:57:14 +00:00
Sean Mullan
6d9c854a3d Merge 2012-12-12 09:27:35 -05:00
Sean Mullan
f7ad1c8c98 8004064: Downgrade normative references to ${java.home}/lib/security/java.security
Reviewed-by: alanb, vinnie, xuelei
2012-12-12 09:25:24 -05:00
Alan Bateman
64b0adf837 8004874: Reduce dependency on java.beans to only add/removePropertyChangeListener
Reviewed-by: ksrini, mchung, dholmes
2012-12-12 13:03:05 +00:00
Chris Hegarty
2f710eebba 8004921: Trivial javadoc warnings in Base64
Reviewed-by: darcy
2012-12-12 11:35:18 +00:00
Weijun Wang
c740727efc 8004904: Makefile for ntlm
Reviewed-by: erikj, chegar
2012-12-12 18:39:34 +08:00
Jayashree Viswanathan
2c1f08ea9e 8004316: Printer - tempfile having incorrect extension
Reviewed-by: bae, jgodinez
2012-12-12 13:28:35 +08:00
Mike Duigou
20d79bf440 8004905: Correct license of test to remove classpath exception
Reviewed-by: akhil
2012-12-11 20:49:44 -08:00
Akhil Arora
ee1832fd74 8003246: Add InitialValue Supplier to ThreadLocal
Reviewed-by: mduigou, forax, dl, chegar, briangoetz
2012-12-11 15:33:16 -08:00
Jiangli Zhou
511a9d8982 8004076: Move _max_locals and _size_of_parameters to ConstMethod for better sharing
Move _max_locals and _size_of_parameters to ConstMethod for better sharing.

Reviewed-by: coleenp, minqi, jrose
2012-12-11 12:41:31 -05:00
Petr Pchelko
c745a7e923 7154778: [macosx] NSView-based implementation of sun.awt.EmbeddedFrame
The new implementation of EmbeddedFrame to support SWT_AWT Bridge

Reviewed-by: anthony, serb, leonidr
2012-12-11 19:45:00 +04:00
Erik Joelsson
5695b639f8 8001753: build-infra: mismatch with full debug symbol control for hotspot
Changing boolean values of ENABLE_DEBUG_SYMBOLS.

Reviewed-by: dholmes, ohair
2012-12-11 12:27:34 +01:00
Erik Joelsson
7e37c10bf1 8001753: build-infra: mismatch with full debug symbol control for hotspot
Enabling hotspot to use the FDS settings established at configure time

Reviewed-by: dholmes, ohair
2012-12-11 11:33:34 +01:00
Erik Joelsson
f5fc8bc650 8003945: build-infra: problems finding compiler when using --with-dev-kit
Search all compiler names in dev-kit dir first.

Reviewed-by: tbell
2012-12-11 11:29:58 +01:00
Weijun Wang
2be2f20b65 8004488: wrong permissions checked in krb5
Reviewed-by: xuelei
2012-12-11 13:14:56 +08:00
Lana Steuck
e28423afe9 Merge 2012-12-10 20:59:38 -08:00
Lana Steuck
393e43594b Merge 2012-12-10 20:58:36 -08:00
Lana Steuck
a4c1246b3a Merge 2012-12-10 20:52:08 -08:00
Frank Ding
9cb760fd37 6512101: Incorrect encoding in NetworkInterface.getDisplayName()
Reviewed-by: chegar, dsamersoff
2012-12-11 10:42:24 +08:00
Mandy Chung
e4a502d7f5 4819681: Typo in http://java.sun.com/j2se/1.4.1/docs/api/java/util/logging/LogManager.html
Simple capitalization typo in LogManager() description

Reviewed-by: darcy, mchung
2012-12-10 15:15:57 -08:00
Michael McMahon
5e999034a3 8003948: NTLM/Negotiate authentication problem
Reviewed-by: chegar, weijun
2012-12-10 14:56:44 +00:00
Masayoshi Okutsu
78a8ed73a2 8000983: Support narrow display names for calendar fields
8003267: Support generic time zone names in TimeZoneNameProvider (SPI)

Reviewed-by: naoto
2012-12-10 10:52:11 +09:00
Dan Xu
8be8c66772 7194370: (fs) WatchService fails if volume S/N is 0 [win]
Reviewed-by: alanb, forax
2012-12-09 19:13:08 +00:00
David Dehaven
4698a5c96d 8004042: Arrrghs.java test failed on windows with access error
Reviewed-by: smarks, jjh, ksrini
2012-12-09 07:43:12 -08:00
Bharadwaj Yadavalli
04fee0b792 8004668: Build failure for Zero target
Fixed build failure for Zero target

Reviewed-by: twisti, kvn
2012-12-07 18:13:23 -08:00
John Cuthbertson
1dff0005b9 Merge 2012-12-07 16:08:05 -08:00
Alejandro Murillo
ba2a5a260d 8004724: new hotspot build - hs25-b13
Reviewed-by: jcoomes
2012-12-07 10:55:16 -08:00
Alejandro Murillo
0d262db9b4 Added tag hs25-b12 for changeset 31453af433e7 2012-12-07 10:46:54 -08:00
Alejandro Murillo
b059fdfdb3 Merge 2012-12-07 10:46:53 -08:00
Erik Joelsson
f790d59eca 8004045: build-infra: Error 12 from zip when updating src.zip
Hiding this error from make so that it doesn't fail

Reviewed-by: ohrstrom, dholmes
2012-12-07 17:23:42 +01:00
Jesper Wilhelmsson
6c64f0223c Merge 2012-12-07 07:36:51 -08:00
Roland Westrelin
d8921b191a Merge 2012-12-07 01:09:03 -08:00
Robert Field
846f0f2ded 8003881: Prevent lambda implementing inner classes from allowing the creation of new instances
Lambda implementing inner classes now has private constructor (thanks Kumar)

Reviewed-by: ksrini
2012-12-06 21:55:55 -08:00
Henry Jen
b7f53938ae 8004685: add java.util.function to CORE_PKGS.gmk
Reviewed-by: mduigou
2012-12-06 15:38:31 -08:00
Lance Andersen
fbc76e673a 8004374: CachedRowSetSwriter.writeData reports wrong number of conflicts in SyncProviderException
Reviewed-by: naoto
2012-12-06 15:51:44 -05:00
David Katleman
453c37183c Added tag jdk8-b67 for changeset 68edf7c31a6d 2012-12-06 12:04:44 -08:00
David Katleman
d8eae9f3ec Added tag jdk8-b67 for changeset 558a3373ba7e 2012-12-06 12:04:35 -08:00
David Katleman
8dfc01a8f3 Added tag jdk8-b67 for changeset 8f2ccadbf32b 2012-12-06 12:04:30 -08:00
David Katleman
8afda75ade Added tag jdk8-b67 for changeset 11084bacb67d 2012-12-06 12:04:27 -08:00
David Katleman
d337116170 Added tag jdk8-b67 for changeset af8f87762e23 2012-12-06 12:04:17 -08:00
David Katleman
a3784507bf Added tag jdk8-b67 for changeset 66fb055d7580 2012-12-06 12:04:12 -08:00
David Katleman
dcf65b2a52 Added tag jdk8-b67 for changeset dc59b2c5a701 2012-12-06 12:04:11 -08:00
Christian Thalinger
cd08acf8ea Merge 2012-12-06 11:05:33 -08:00
Christian Thalinger
34733bb83c 8003250: SPARC: move MacroAssembler into separate file
Reviewed-by: jrose, kvn
2012-12-06 09:57:41 -08:00
Nils Eliasson
c44c5e64ed Merge 2012-12-06 14:33:52 +01:00
Erik Joelsson
6fd00f446e 8004104: build-infra: Minor cleanup
Reviewed-by: ohrstrom, tbell
2012-12-06 12:09:33 +01:00
Nils Eliasson
7cd4aaa02d 8003934: Fix generation of malformed options to Projectcreator
Makefile produces unmatched quotes due to nmake bug

Reviewed-by: jwilhelm, brutisso
2012-12-06 09:50:08 +01:00
Jim Gish
aab1dbdc30 8004317: TestLibrary.getUnusedRandomPort() fails intermittently, but exception not reported
Reviewed-by: alanb, dmocek, smarks
2012-12-05 21:08:14 -08:00
David Katleman
7350163053 Merge 2012-12-05 12:53:55 -08:00
David Katleman
c18cb33802 Merge 2012-12-05 12:52:47 -08:00
Erik Joelsson
cbba06982b 8003414: build-infra: fails on on windows
Added extra check that windows sdk is valid.

Reviewed-by: tbell, ohrstrom, ohair
2012-12-05 16:35:25 +01:00
Alan Bateman
f5797a2ffe 8004491: Build breakage on Linux due to 8004188
Reviewed-by: chegar, erikj
2012-12-05 12:20:00 +00:00
Erik Joelsson
6c560d6b09 8004281: build-infra: Move all jar creation to images target and put jars in images/lib
Reviewed-by: ohair, tbell, dholmes
2012-12-05 10:12:57 +01:00
Erik Joelsson
e60836f1d6 8004281: build-infra: Move all jar creation to images target and put jars in images/lib
Fixed bug in setting up make dependencies in SetupArchive.

Reviewed-by: ohair, tbell, dholmes
2012-12-05 10:12:14 +01:00
Erik Joelsson
f148219a1f 8001541: Cannot build on Solaris using softlinks
Fixed softlink resolver macro in configure.

Reviewed-by: tbell, ohair
2012-12-05 09:39:34 +01:00
Jason Uh
a3f91508bd 8004188: Rename src/share/lib/security/java.security to java.security-linux
Reviewed-by: mullan, mchung
2012-12-04 17:40:41 -05:00
Jim Gish
f436d23492 8003596: TEST_BUG: java/util/logging/CheckLockLocationTest.java failing [win]
Reviewed-by: alanb
2012-12-04 20:21:19 +00:00
Lana Steuck
0e089aadcd Merge 2012-12-04 11:46:27 -08:00
Lana Steuck
e7f9c73f87 Merge 2012-12-04 11:41:44 -08:00
Maurizio Cimadamore
01dc08a587 8004360: regression test DefaultMethodRegressionTests fails in langtools
Ignore broken failing test

Reviewed-by: jjg
2012-12-04 17:19:42 +00:00
Krystal Mo
e6ab16c283 8004066: TEST_BUG: test/java/lang/Math/DivModTests.java assumes ArithmeticException message
Reviewed-by: twisti, alanb, dholmes
2012-12-04 15:10:03 +00:00
Dan Xu
00ad2900dd 7142921: (fs) Files.probeContentType reports a MIME type of "text/plain" on Ubuntu 11.04
7144997: (fs) Files.probeContentType returns null on Solaris 64-bit

Reviewed-by: alanb, mduigou
2012-12-04 14:07:30 +00:00
Andrew Haley
0b8ff32553 8004344: Fix a crash in ToolkitErrorHandler() in XlibWrapper.c
Code does not check for JNU_GetEnv returning NULL.

Reviewed-by: anthony
2012-12-04 14:02:08 +00:00
Jayashree Viswanathan
ec15d0a1b0 4631925: JColor Chooser is not fully accessible
Reviewed-by: alexsch
2012-12-04 17:17:45 +04:00
Alexander Scherbatiy
8841803399 8002077: Possible mnemonic issue on JFileChooser Save button on nimbus L&F
Reviewed-by: serb
2012-12-04 16:42:19 +04:00
Jaroslav Tulach
288c935f0d 8003830: NPE at BasicTreeUI$Actions.page:4470
Reviewed-by: serb, alexsch
2012-12-04 15:56:02 +04:00
Alexander Scherbatiy
367e07444a 6671481: NPE at javax.swing.plaf.basic.BasicTreeUI$Handler.handleSelection
Reviewed-by: serb
2012-12-04 15:26:57 +04:00
Christian Thalinger
c5240e7c53 8004319: test/gc/7168848/HumongousAlloc.java fails after 7172640
Reviewed-by: kvn, johnc
2012-12-03 15:48:49 -08:00
Jon Masamitsu
e8b3b89264 8005082: NPG: Add specialized Metachunk sizes for reflection and anonymous classloaders
Reviewed-by: johnc, coleenp
2012-12-03 15:09:39 -08:00
Jason Uh
e4c0346aa9 7199143: RFE: OCSP revocation checker should provide possibility to specify connection timeout
Added com.sun.security.ocsp.timeout system property to control timeout

Reviewed-by: mullan, vinnie
2012-12-03 11:07:20 -05:00
Xue-Lei Andrew Fan
eb66ce8b2e 8004184: security tests leave JSSEServer running
Use othervm mode to release resources,  and correct the system properties issues in JSSE

Reviewed-by: chegar
2012-12-03 06:00:19 -08:00
Andrew Brygin
0c7b2461a2 7124347: [macosx] java.lang.InternalError: not implemented yet on call Graphics2D.drawRenderedImage
Reviewed-by: prr, flar
2012-12-03 16:26:47 +04:00
Joel Borggrén-Franck
e4c3d2d727 8001114: Container annotation is not checked for semantic correctness
Reviewed-by: jjg
2012-12-03 11:16:32 +01:00
Jan Lahoda
9537c44ca5 8004504: ListBuffer could reuse List.nil() as the sentinel element
ListBuffer.last now points to the last elements with client data, or null if none.

Reviewed-by: jjg, mcimadamore
2012-12-12 20:26:56 +01:00
Jonathan Gibbons
1c8e65a20e 8004828: refactor init of *DocImpl classes
Reviewed-by: darcy
2012-12-11 15:05:55 -08:00
Vicente Romero
8fc2d739bd 8003967: detect and remove all mutable implicit static enum fields in langtools
Reviewed-by: jjg
2012-12-10 16:21:26 +00:00
Maurizio Cimadamore
5c0bff8f21 8004094: Javac compiler error - synthetic method accessor generated with duplicate name
Method clash check logic should skip methods marked with ACC_SYNTHETIC

Reviewed-by: jjg
2012-12-10 12:10:50 +00:00
Erik Joelsson
c4bb9ec3b8 8003819: build-infra: backslashes at end of LIB and INCLUDE in spec.gmk
Removing trailing backslash from LIB and INCLUDE.

Reviewed-by: ohrstrom, ohair
2012-12-03 10:26:55 +01:00
Weijun Wang
fdd109b467 7198507: [TEST_BUG] sun/security/tools/keytool/console.sh should be rewritten
Reviewed-by: xuelei
2012-12-03 17:14:03 +08:00
Bill Pittore
ecdf296456 7200297: agent code does not handle multiple boot library path elements correctly
When bug 6819213 was fixed it enabled sun.boot.library.path property to contain multiple paths. Code in agents does not handle multiple paths when attempting to find dependent shared libs.

Reviewed-by: dholmes, sspitsyn, dsamersoff
2012-12-02 19:16:56 -05:00
Alan Bateman
d2d5213b87 8003846: Override mechanism for currency data should not require creating currency.properties in java.home
Reviewed-by: naoto
2012-12-02 16:37:31 +00:00
Xueming Shen
e78a1eb083 8004212: java.util.Base64 methods decodeArray and decodeBuffer should return the number of bytes written
To return the length instead of position

Reviewed-by: alanb
2012-12-01 11:36:25 -08:00
Lana Steuck
76863b84de Merge 2012-11-30 17:09:05 -08:00
Alejandro Murillo
6a66f24366 8004248: new hotspot build - hs25-b12
Reviewed-by: jcoomes
2012-11-30 17:00:32 -08:00
Alejandro Murillo
1944119a77 Added tag hs25-b11 for changeset 7236115a66ae 2012-11-30 16:45:27 -08:00
Alejandro Murillo
654d3dcd3e Merge 2012-11-30 16:45:26 -08:00
Lana Steuck
cc4aa039e3 Merge 2012-11-30 16:34:51 -08:00
Lana Steuck
351dbc4683 Merge 2012-11-30 16:33:50 -08:00
Lana Steuck
574b90d1c6 Merge 2012-11-30 16:31:13 -08:00
Lana Steuck
ad0ada24a2 Merge 2012-11-30 16:02:00 -08:00
Christian Thalinger
2c2c007448 8003240: x86: move MacroAssembler into separate file
Reviewed-by: kvn
2012-11-30 15:23:16 -08:00
John Cuthbertson
6c0bf79f7a Merge 2012-11-30 12:01:34 -08:00
Kurchi Subhra Hazra
d7cae9afff 7197662: (prefs) java/util/prefs/AddNodeChangeListener.java fails by timeout or by "couldn't get file lock"
Set -Djava.util.prefs.userRoot to current working directory of user in the prefs tests

Reviewed-by: alanb, chegar, weijun, dxu
2012-11-30 12:00:07 -08:00
Bharadwaj Yadavalli
a533392684 8003195: AbstractAssembler should not store code pointers but use the CodeSection directly
Reviewed-by: twisti, kvn
2012-11-30 11:44:05 -08:00
David Chase
98c1b902dd 8001885: JSR 292 classes should use jdk.internal.org.objectweb.asm
Reviewed-by: kvn, jrose, twisti
2012-11-30 11:42:55 -08:00
Maurizio Cimadamore
d7884e5ae2 8002099: Add support for intersection types in cast expression
Add parser and type-checking support for intersection types in cast expressions

Reviewed-by: jjg
2012-11-30 15:14:48 +00:00
Maurizio Cimadamore
c76c08e82a 8004101: Add checks for method reference well-formedness
Bring method reference type-checking in sync with latest EDR

Reviewed-by: jjg
2012-11-30 15:14:36 +00:00
Maurizio Cimadamore
0db60b7bb2 8004102: Add support for generic functional descriptors
Method references are allowed to have a generic functional interface descriptor target

Reviewed-by: jjg
2012-11-30 15:14:25 +00:00
Maurizio Cimadamore
684271da34 8004105: Expression statement lambdas should be void-compatible
Fix lambda compatibility rules as per latest EDR

Reviewed-by: jjg
2012-11-30 15:14:12 +00:00
Konstantin Shefov
792a1f9d72 7124242: [macosx] Test doesn't work because of the frame round corners in the LaF
Reviewed-by: anthony, yan, alexsch
2012-11-30 12:39:37 +00:00
Joel Borggrén-Franck
5b7045b5ba 8004110: Remove debug code form sun/reflect/annotation/AnnotationSupport.java
Reviewed-by: jjg, darcy
2012-11-30 09:47:17 +01:00
Alan Bateman
a42dd61e45 7165762: (aio) Default thread pool should be configured so that threads terminated after a timeout period
Reviewed-by: chegar
2012-11-30 16:29:32 +00:00
Alan Bateman
2f3796af9d 8003949: LogManager, downgrade normative reference to ${java.home}/lib/logging.properties
Reviewed-by: psandoz, mchung
2012-11-30 11:18:16 +00:00
Shi Jun Zhang
4b272f6fdd 8004211: Remove unused dlinfo local variable in launcher code
Reviewed-by: alanb
2012-11-30 17:24:54 +08:00
Andrew Brygin
96a62b95f3 7124223: [macosx] Regression test failure with new exception, when glyph is positioned explicitly
Reviewed-by: jgodinez
2012-11-30 11:32:36 +04:00
Staffan Larsen
c1126e3727 7155168: java/util/TimeZone/Bug6912560.java: expected Asia/Tokyo
Reviewed-by: okutsu
2012-11-30 08:17:02 +01:00
Amy Lu
dd42277862 8004134: More ProblemList.txt updates (11/2012)
Reviewed-by: alanb
2012-11-29 14:43:46 -08:00
Stefan Karlsson
98abf6fb1c 8004199: Change the ASM package for Test8003720
Reviewed-by: kvn, jrose
2012-11-29 23:02:52 +01:00
Chris Plummer
fdf8ceee2d Merge 2012-11-29 13:55:49 -08:00
Coleen Phillimore
7aa43fc5d8 8000662: NPG: nashorn ant clean test262 out-of-memory with Java heap
Add ClassLoaderData object for each anonymous class with metaspaces to allocate in.

Reviewed-by: twisti, jrose, stefank
2012-11-29 16:50:29 -05:00
David Katleman
e21b3cc37b Added tag jdk8-b66 for changeset 4f273518dc3b 2012-11-29 11:31:48 -08:00
David Katleman
32e0bb9c4e Added tag jdk8-b66 for changeset bc93357f4936 2012-11-29 11:31:01 -08:00
David Katleman
1bedcf62af Added tag jdk8-b66 for changeset b2f74901d05c 2012-11-29 11:30:33 -08:00
David Katleman
cc7b34ea06 Added tag jdk8-b66 for changeset bc221bce9150 2012-11-29 11:30:24 -08:00
David Katleman
d926f93877 Added tag jdk8-b66 for changeset fe1a7da1f85c 2012-11-29 11:30:04 -08:00
David Katleman
e0d4a1ff33 Added tag jdk8-b66 for changeset f83c6348160b 2012-11-29 11:29:48 -08:00
David Katleman
484044afec Added tag jdk8-b66 for changeset d31d8682bc9e 2012-11-29 11:29:44 -08:00
John Cuthbertson
defec7ae16 Merge 2012-11-29 11:23:15 -08:00
Jon Masamitsu
e74d551608 8003554: NPG: move Metablock and Metachunk code out of metaspace.cpp
Reviewed-by: coleenp
2012-11-29 10:09:04 -08:00
John Cuthbertson
4e43b88153 8004170: G1: Verbose GC output is not getting flushed to log file using JDK 8
Add flushes to G1CollectedHeap::log_gc_footer() and TraceCPUTime destructor.

Reviewed-by: jwilhelm, azeemj, brutisso
2012-11-30 11:46:17 -08:00
Peter Levart
79727a83aa 8004141: UnsafeStaticFieldAccessorImpl#base should be final
Reviewed-by: chegar, alanb
2012-11-29 17:03:52 +00:00
Alexander Scherbatiy
463528217c 8000423: Diacritic is not applyed to a base letter on Linux
Reviewed-by: anthony, serb
2012-11-29 07:42:23 -05:00
Jim Gish
7aed72aa11 8003380: Compiler warnings in logging test code
Use generics, suppress warnings where appropriate, remove unused imports, etc.

Reviewed-by: lancea, chegar
2012-11-29 12:28:02 +00:00
Michael McMahon
38bcfd05a2 Merge 2012-11-29 09:47:31 +00:00
Vicente Romero
ba3ae37ef0 7153958: add constant pool reference to class containing inlined constants
Reviewed-by: jjg, mcimadamore
2012-11-29 09:41:48 +00:00
Michael McMahon
ab75d799e3 7200720: crash in net.dll during NTLM authentication
Reviewed-by: chegar, dsamersoff
2012-11-29 09:41:20 +00:00
Stuart Marks
2d91430e91 8004131: move jdi tests out of core testset
Reviewed-by: alanb, chegar
2012-11-28 17:31:35 -08:00
Mike Duigou
2a4b35660e 6553074: String{Buffer,Builder}.indexOf(Str, int) contains unnecessary allocation
It is not necessary to extract the value array with toCharArray. The value array can now be used directly.

Reviewed-by: alanb
2012-11-29 14:09:45 -08:00
Mike Duigou
1cf41521cc 7175464: entrySetView field is never updated in NavigableSubMap
The method entrySet() in AscendingSubMap and DescendingSubMap failed to cache the entrySetView.

Reviewed-by: alanb, psandoz
2012-11-29 14:07:47 -08:00
Stuart Marks
f721ac5ad5 8004131: move jdi tests out of core testset
Reviewed-by: alanb, chegar
2012-11-28 17:31:30 -08:00
Coleen Phillimore
6538c5134b 8003635: NPG: AsynchGetCallTrace broken by Method* virtual call
Make metaspace::contains be lock free and used to see if something is in metaspace, also compare Method* with vtbl pointer.

Reviewed-by: dholmes, sspitsyn, dcubed, jmasa
2012-11-28 17:50:21 -05:00
David Katleman
f620e53bca Merge 2012-11-28 14:07:26 -08:00
David Katleman
8a5c8801ab Merge 2012-11-28 14:06:14 -08:00
David Katleman
fb719ffc25 Merge 2012-11-28 14:03:53 -08:00
Mandy Chung
67a70e3b75 8003869: Eliminate java.lang.invoke.InnerClassLambdaMetafactory dependency on java.util.logging
Reviewed-by: alanb, dholmes
2012-11-28 10:50:54 -08:00
Mandy Chung
6c4d705c91 8003851: MethodHandleNatives dependency on java.sql.DriverManager
Reviewed-by: alanb, dholmes
2012-11-28 10:49:15 -08:00
Daniel Fuchs
996befafc2 Merge 2012-11-28 10:08:31 -08:00
Joel Borggrén-Franck
36464f41e2 7154390: Add support for repeating annotations in j.l.r.AnnotatedElement
Reviewed-by: darcy
2012-11-28 09:21:37 -08:00
Coleen Phillimore
696ef20cb4 Merge 2012-11-28 08:43:26 -08:00
Zhengyu Gu
052a8eade3 Merge 2012-11-28 06:42:03 -08:00
Zhengyu Gu
408c9d46f3 8003689: MemTracker::init_tracking_options() reads outside array if commandline argument is empty
Fixed potential buffer overrun when giving empty option to NativeMemoryTracking commandline option

Reviewed-by: ctornqvi, hseigel, kvn
2012-11-28 09:19:38 -05:00
Daniel Fuchs
d1b26bf6dd 8003476: Cleanup warnings in com.sun.jmx.snmp code
Reviewed-by: alanb, smarks
2012-11-28 15:14:47 +01:00
Florian Weimer
a1c151acd0 8004019: Removes unused method HandshakeHash.setCertificateVerifyAlg()
Certification verification in HandshakeHash was abandoned during TLS 1.2 implementation

Reviewed-by: xuelei, weijun
2012-11-28 05:18:57 -08:00
Harold Seigel
ef28e7a277 6924920: Class Data Sharing limit on the java version string can create failures
Truncate the java version string and add a hash value if it is too long.

Reviewed-by: dholmes, coleenp
2012-11-28 08:17:59 -05:00
Erik Joelsson
2f74d6d52e 8003482: build-infra: Use correct manifest in security jars
Reviewed-by: ohair, ohrstrom
2012-11-28 14:10:00 +01:00
Erik Joelsson
861d5c3e01 8003528: build-infra: Diffs in libjava and hotspot libs on solaris
Reorder libraries on link command line to match old build.

Reviewed-by: ohair, ohrstrom
2012-11-28 13:49:33 +01:00
Erik Joelsson
760fa57658 8003528: build-infra: Diffs in libjava and hotspot libs on solaris
Linking against server jvm first if available. Adding filters and exceptions for hotspot lib compare on solaris.

Reviewed-by: ohair, ohrstrom
2012-11-28 13:48:36 +01:00
Erik Joelsson
858cebeb66 8003844: build-infra: docs target isn't working properly
Fixed docs and docs-clean target. Added compare support for docs.

Reviewed-by: ohair, jjg, ohrstrom
2012-11-28 13:40:17 +01:00
Erik Joelsson
29a342dabe 8003844: build-infra: docs target isn't working properly
Adding resources to bootstrap javadoc.jar. Adding missing .js resource suffix

Reviewed-by: ohair, jjg, ohrstrom
2012-11-28 13:37:50 +01:00
Erik Joelsson
bf822bfa13 8003477: build-infra: Remove explicit source file listings for libs when possible
Reviewed-by: ohair, ohrstrom
2012-11-28 13:29:35 +01:00
Erik Joelsson
318015ba7a 8001460: build-infra: Linker warnings on macosx
Remove creation of empty i386 section from fdlibm

Reviewed-by: ohair
2012-11-28 13:20:43 +01:00
Erik Joelsson
fb43b09f46 8001460: build-infra: Linker warnings on macosx
Only linking against jvm variant specific dirs if they are expected to exist.

Reviewed-by: ohair
2012-11-28 13:15:56 +01:00
Andrew Brygin
35183211d7 7064516: ImageIO.read() fails to load an image
Reviewed-by: jgodinez, prr
2012-11-28 14:12:32 +04:00
Erik Joelsson
b197a6ca68 8003960: build-infra: Jarsigner launcher has wrong classname
Fixed package name in launcher

Reviewed-by: alanb, ohair, ohrstrom
2012-11-28 09:47:25 +01:00
Vadim Pakhnushev
17ab9f5969 5082749: GIF stream metadata specification of aspect ratio is incorrect
Reviewed-by: bae, prr
2012-11-28 12:38:43 +04:00
Vadim Pakhnushev
d89c34023b 4649812: GIFImageReader handles transparency incorrectly
Reviewed-by: bae, prr
2012-11-28 12:28:10 +04:00
Xueming Shen
ff1d49bc5b 8004088: hg push for bug#4235519 failed to push all files
Pushed all base64 files

Reviewed-by: alanb, mduigou
2012-11-27 22:07:11 -08:00
Xueming Shen
aad815709f 4235519: Make sun.misc.BASE64{De,En}coder classes public
To add java.util.Base64

Reviewed-by: alanb, mduigou
2012-11-27 21:51:26 -08:00
Goetz Lindenmaier
8e00acca17 8003850: add support for constants in stub code
Remember the code section and switch back to the proper one when adding constants.

Reviewed-by: twisti, kvn
2012-11-27 17:41:38 -08:00
Bharadwaj Yadavalli
2d2532e740 7092905: C2: Keep track of the number of dead nodes
Keep an (almost) accurate running count of the reachable (live) flow graph nodes.

Reviewed-by: kvn, twisti, jrose, vlivanov
2012-11-27 17:24:15 -08:00
Rob McKenna
f0bbdd0834 8003597: TEST_BUG: Eliminate dependency on javaweb from closed net tests
Reviewed-by: chegar
2012-11-28 00:47:38 +00:00
John Cuthbertson
c00c803b89 7194633: G1: Assertion and guarantee failures in block offset table
Add detailed error messages to assertions and guarantees in G1's block offset table.

Reviewed-by: ysr, brutisso
2012-11-27 14:11:37 -08:00
Jiangli Zhou
10f71a3f72 8003848: Make ConstMethod::generic_signature_index optional and move Method::_max_stack to ConstMethod
Make ConstMethod::generic_signature_index optional and move Method::_max_stack to ConstMethod.

Reviewed-by: bdelsart, sspitsyn, coleenp
2012-11-27 17:03:56 -05:00
Roman Kennke
96562be9e5 8003868: fix shark for latest HotSpot and LLVM
Reviewed-by: twisti
2012-11-27 12:48:52 -08:00
Chris Hegarty
24fde021e4 8003833: Spurious NPE from Socket.getIn/OutputStream
Reviewed-by: alanb, dsamersoff
2012-11-27 17:15:19 +00:00
Mikael Vidstedt
8c32bcb315 8003879: Duplicate definitions in vmStructs
Removed duplicate entries

Reviewed-by: dholmes, sspitsyn
2012-11-27 07:57:57 -08:00
Stefan Karlsson
57204d9f34 8003935: Simplify the needed includes for using Thread::current()
Reviewed-by: dholmes, rbackman, coleenp
2012-11-27 14:20:21 +01:00
Sergey Bylokhov
bfc0bfcd8e 8002308: [macosx] 7198229 should be applied to the user action only
Reviewed-by: anthony, skovatch
2012-11-27 17:03:19 +04:00
Stefan Karlsson
3c2f3a321a 8003720: NPG: Method in interpreter stack frame can be deallocated
Pass down a closure during root scanning to keep the class of the method alive.

Reviewed-by: coleenp, jcoomes
2012-11-27 10:13:20 +01:00
Christian Thalinger
31411dbc32 7172640: C2: instrinsic implementations in LibraryCallKit should use argument() instead of pop()
Reviewed-by: kvn, jrose
2012-11-26 17:25:11 -08:00
Mike Duigou
8288138aac 8001634: Initial set of functional interface types
Add the core functional interfaces used by the JSR335 libraries.

Reviewed-by: dholmes, briangoetz, darcy
2012-11-26 15:08:13 -08:00
Gilles Duboscq
2e2b69e96b 8003722: More gcc 4.7 compilation errors
Add a few more this->qualifications.

Reviewed-by: coleenp, dholmes
2012-11-26 12:31:03 -05:00
Nils Eliasson
42c0192ee6 8003983: LogCompilation tool is broken since c1 support
Fixed emitting and parsing

Reviewed-by: jrose, kvn
2012-11-26 15:11:55 +01:00
Sean Mullan
033919cce4 Merge 2012-11-26 08:34:25 -05:00
Sean Mullan
3f59d3882d Merge 2012-11-26 08:23:20 -05:00
Sean Mullan
c9b91fa45a 7167056: Clarify that BasicPermission names that contain non-wildcard asterisks are not invalid
Reviewed-by: weijun, xuelei
2012-11-26 08:12:19 -05:00
Alexey Utkin
d869bfa179 7162111: TEST_BUG: change tests run in headless mode [macosx] (open)
In problem tests detection of AWT headless mode was introduced or AWT dependence was removed.

Reviewed-by: alanb
2012-11-26 15:54:39 +04:00
Florian Weimer
9eb345a1e4 8003951: Removes unused variables in sun.security.ssl
Reviewed-by: xuelei
2012-11-24 04:27:28 -08:00
Florian Weimer
7363eaae0e 8003950: Adds missing Override annotations and removes unnecessary imports in sun.security.ssl
Reviewed-by: xuelei
2012-11-24 04:09:19 -08:00
Xue-Lei Andrew Fan
a2314ab9ca 8001751: Javadoc warnings in JSSE code
Reviewed-by: alanb
2012-11-24 03:34:27 -08:00
Vicente Romero
9bbd892818 7144981: javac should ignore ignorable characters in input
Reviewed-by: jjg, mcimadamore
2012-11-23 15:13:45 +00:00
Eric Caspole
7fb8379371 8004068: Fix build problems caused by on-demand imports
Reviewed-by: jjg
2012-11-27 13:55:10 -08:00
Alexey Utkin
68a92f6e88 8003898: X11 toolkit can be chosen as the default toolkit
XToolkit is not selected for any values of system-wide environment variables (ex. DISPLAY).

Reviewed-by: anthony, art
2012-11-23 13:07:54 +04:00
David Holmes
68137e4136 Merge 2012-11-21 21:26:12 -05:00
David Holmes
8b54df7773 8003591: Abstract_VM_Version::internal_vm_info_string needs to stringify FLOAT_ARCH for ease of use
Reviewed-by: coleenp, kvn
2012-11-21 20:07:52 -05:00
Vicente Romero
1d4cbc27ff 6574624: javax.tools.JavaCompiler spec contains errors in sample code
Reviewed-by: jjg, mcimadamore
2012-11-21 19:09:39 +00:00
Vicente Romero
07e9c8cf27 7190862: javap shows an incorrect type for operands if the 'wide' prefix is used
7109747: (javap) classfile not treating iinc_w correctly

Reviewed-by: jjg, mcimadamore
2012-11-21 18:40:45 +00:00
Mikael Vidstedt
5791b1f1c3 8003690: Example code in JVMTI GetStackTrace documentation is broken
Fixed to minor errors in example code

Reviewed-by: sspitsyn, dholmes
2012-11-21 09:02:13 -08:00
Alexander Zuev
e0eaca5e5a 8003273: Missing testcase for 7171812
Reviewed-by: art, serb
2012-11-21 20:42:54 +04:00
Vladimir Ivanov
7f0d3fe5e7 8001538: hs_err file does not list anymore compiled methods in compilation events
Fixed message buffer size calculation.

Reviewed-by: kvn, twisti
2012-11-21 05:57:12 -08:00
Sergey Bylokhov
55eba1fa2e 7154516: [macosx] Popup menus have no visible borders
Reviewed-by: anthony, denis
2012-11-21 15:58:09 +04:00
Sergey Bylokhov
6a2db1d680 7193214: Consider simplifying CPlatformWindow.setResizable()
Reviewed-by: anthony, denis
2012-11-21 15:54:41 +04:00
Sergey Bylokhov
27d64e18d2 7124552: [macosx] NullPointerException in getBufferStrategy()
7124219: [macosx] Unable to draw images to fullscreen

Reviewed-by: bae, anthony
2012-11-21 15:50:34 +04:00
David Buck
df3c665be3 7198904: (alt-rt) TreeMap.clone is broken
Test case for cr7198904. Issue only found in OracleJDK, but test case is valid for OpenJDK as well

Reviewed-by: mduigou, dholmes
2012-11-20 21:35:18 -08:00
Coleen Phillimore
274b3df2dc Merge 2012-11-20 20:27:40 -05:00
Lana Steuck
c8adadc51c Merge 2012-11-20 11:50:37 -08:00
Lana Steuck
822139baf8 Merge 2012-11-20 11:49:27 -08:00
Lana Steuck
12c1fa1d8b Merge 2012-11-20 11:47:52 -08:00
Lana Steuck
8eed09101d Merge 2012-11-20 11:46:43 -08:00
Robert Field
d1a78e2021 8003639: convert lambda testng tests to jtreg and add them
Reviewed-by: mcimadamore
2012-11-20 09:58:55 -08:00
Maurizio Cimadamore
d1eede168b 8003663: lambda test fails on Windows
Fix path separator issue in test

Reviewed-by: jjg
2012-11-20 15:43:28 +00:00
Jonathan Gibbons
f2fa2a199c 8003650: java.lang.Exception: expected string not found: pkg/package-frame.html
Reviewed-by: ksrini
2012-11-20 07:25:11 -08:00
Jonathan Gibbons
f0fe027b50 8003649: regression/langtools: tools/javac/doctree
Reviewed-by: ksrini
2012-11-20 07:21:07 -08:00
Sergey Malenkov
f19ad0fb5b 8003333: Regression: java/beans/EventHandler/Test6277266.java fails with ACE
Reviewed-by: art
2012-11-20 18:56:01 +04:00
Erik Helin
7e892709bd 7198334: UseNUMA modifies system parameters on non-NUMA system
The flags MinHeapDeltaBytes and UseNUMAInterleaving must be adjusted after the OS have adjusted the UseNUMA flag in the method os::init_2.

Reviewed-by: dholmes, brutisso
2012-11-20 11:40:11 +01:00
Steve Sides
6dfea5e847 8003660: (launcher) 8001533 regression tests
Reviewed-by: ksrini, mchung, kcr, ddehaven
2012-11-19 19:50:39 -08:00
David Dehaven
5f0debc005 8001533: java launcher must launch javafx applications
Reviewed-by: ksrini, mchung, kcr, alanb
2012-11-19 19:49:38 -08:00
John Zavgren
0bb98e7294 8000476: Memory Leaks and uninitialized memory access in PKCS11 and other native code
Reviewed-by: dsamersoff, valeriep, chegar
2012-11-20 09:26:38 +00:00
Jonathan Gibbons
61235e9c09 8003655: Add javac.jvm.ClassFile.V52
Reviewed-by: ksrini
2012-11-19 16:40:54 -08:00
Bhavesh Patel
55e7dd8b71 8002304: Group methods by types in methods summary section
Reviewed-by: jjg
2012-11-19 16:10:34 -08:00
Erik Joelsson
4850bec745 8003300: build-infra: fails on solaris when objcopy is not found
Only call BASIC_FIXUP_EXECUTABLE() if objcopy was found.

Reviewed-by: tbell
2012-11-19 14:06:30 -08:00
Jonathan Gibbons
5a30b6af0c 8001098: Provide a simple light-weight "plug-in" mechanism for javac
Reviewed-by: mcimadamore
2012-11-19 11:38:49 -08:00
Alan Bateman
c94385feb8 8003607: More ProblemList.txt updates (11/2012)
Reviewed-by: lancea
2012-11-19 13:17:40 +00:00
Weijun Wang
2aea4cbc8c 8002344: Krb5LoginModule config class does not return proper KDC list from DNS
Co-authored-by: Severin Gehwolf <sgehwolf@redhat.com>
Reviewed-by: weijun
2012-11-19 11:13:08 +08:00
Florian Weimer
28ca680a31 8003587: Warning cleanup in package javax.net.ssl
Removes unnecessary imports and adds missing Override annotations

Reviewed-by: xuelei
2012-11-18 01:31:44 -08:00
Maurizio Cimadamore
a494f0ab86 8003280: Add lambda tests
Turn on lambda expression, method reference and default method support

Reviewed-by: jjg
2012-11-17 19:01:03 +00:00
Brent Christian
a9594cbceb 7178922: (props) re-visit how os.name is determined on Mac
Reviewed-by: alanb, mchung, skovatch, serb
2012-11-16 17:01:19 -08:00
David Chase
fea11c53eb 7146636: compiler/6865265/StackOverflowBug.java fails due to changed stack minimum
Increase the stack size in the run parameters.

Reviewed-by: kvn
2012-11-16 15:49:46 -08:00
Kurchi Subhra Hazra
ef1950d024 8003518: (prefs) Tests in jdk/test/java/util/prefs should not be run concurrently
Add java/util/prefs to exclusiveAccess.dirs in TEST.ROOT

Reviewed-by: alanb, mchung
2012-11-16 12:28:45 -08:00
Jim Holmlund
c39f1d99b4 8003357: Add support for jtreg -concurrency to langtools/test/Makefile
Reviewed-by: jjg
2012-11-16 18:27:36 +00:00
Alejandro Murillo
a054222634 8003541: new hotspot build - hs25-b11
Reviewed-by: jcoomes
2012-11-16 09:43:43 -08:00
Alejandro Murillo
03311b147c Added tag hs25-b10 for changeset 6d791db85d73 2012-11-16 09:36:41 -08:00
Alejandro Murillo
f3a0849e39 Merge 2012-11-16 09:36:40 -08:00
Coleen Phillimore
ddec2a3aed Merge 2012-11-16 09:19:12 -05:00
Zhengyu Gu
2cb72bf989 8003487: NMT: incorrect assertion in VMMemPointerIterator::remove_released_region method (memSnapshot.cpp)
The assertion is applied to only the region to be released, also performs region integrity checking

Reviewed-by: acorn, coleenp
2012-11-16 09:05:19 -05:00
Nils Eliasson
d055fd81db Merge 2012-11-16 09:59:08 +01:00
Jonathan Gibbons
b3a3f7cdf3 6493690: javadoc should have a javax.tools.Tool service provider installed in tools.jar
Reviewed-by: darcy
2012-11-15 23:07:24 -08:00
Naoto Sato
6c62e2d0f1 7199750: Loading sequence of service provider is changed
Reviewed-by: okutsu
2012-11-15 20:17:05 -08:00
Jonathan Gibbons
6ef527a3e7 8002079: update DocFile to use a JavaFileManager
Reviewed-by: darcy
2012-11-15 19:54:20 -08:00
Weijun Wang
78ff6a33ee 8003263: redundant cast build failure after 8003120
Reviewed-by: alanb
2012-11-16 10:34:14 +08:00
David Katleman
b379df39d9 Added tag jdk8-b65 for changeset 0e685b019743 2012-11-15 15:40:23 -08:00
David Katleman
6e2b60ce65 Added tag jdk8-b65 for changeset 3afebf1aaea2 2012-11-15 15:40:03 -08:00
David Katleman
aa988a211b Added tag jdk8-b65 for changeset 2fbfa728248d 2012-11-15 15:39:45 -08:00
David Katleman
18602b4eed Added tag jdk8-b65 for changeset d94c92ed588c 2012-11-15 15:39:35 -08:00
David Katleman
64bb3ed664 Added tag jdk8-b65 for changeset bbff420f1248 2012-11-15 15:39:02 -08:00
David Katleman
d757cb8b11 Added tag jdk8-b65 for changeset 6bae6642a942 2012-11-15 15:38:38 -08:00
David Katleman
2f70d7a0ff Added tag jdk8-b65 for changeset eb017c6fa58a 2012-11-15 15:38:33 -08:00
Jonathan Gibbons
2aefbba070 8003257: refactor javadoc tool option handling
Reviewed-by: darcy
2012-11-15 14:41:31 -08:00
John Cuthbertson
41ba9aeef2 Merge 2012-11-15 14:29:28 -08:00
Bharadwaj Yadavalli
4b288c8976 8001077: remove ciMethod::will_link
Removed will_link and changed all calls to is_loaded().

Reviewed-by: kvn
2012-11-15 10:42:06 -08:00
Jonathan Gibbons
ed633a2108 8000800: javadoc uses static non-final fields
Reviewed-by: bpatel
2012-11-15 09:18:36 -08:00
Jim Gish
f439018255 6244047: impossible to specify directories to logging FileHandler unless they exist
Reviewed-by: alanb
2012-11-15 13:46:45 +00:00
Peter Levart
bbe12c2488 8003259: NPG: Build with gcc 4.7.2 broken by 7045397
Qualify calls with this pointers to make gcc accept this code.

Reviewed-by: coleenp, andrew
2012-11-14 22:37:38 -05:00
Jonathan Gibbons
c78e1cbfac 7021614: extend com.sun.source API to support parsing javadoc comments
Reviewed-by: ksrini, strarup
2012-11-14 17:23:10 -08:00
Tim Bell
10568b5266 Merge 2012-11-15 00:55:17 +00:00
Tim Bell
19c725d07b Merge 2012-11-15 00:54:54 +00:00
Lana Steuck
d0455982a4 Merge 2012-11-14 16:41:51 -08:00
Lana Steuck
42ad69505d Merge 2012-11-14 16:41:12 -08:00
David Katleman
77c17946fd Merge 2012-11-14 12:29:17 -08:00
David Katleman
6b391de2e7 Merge 2012-11-14 12:28:00 -08:00
Erik Joelsson
acd0ee7c35 8001906: build-infra: warning: [path] bad path element on Solaris
Remove unnecesary -cp parameter from compile line

Reviewed-by: ohair, tbell
2012-11-14 10:21:45 -08:00
Erik Joelsson
23c574fe3a 8003327: build-infra: "/bin/sh: : cannot execute" on solaris
Fix quoting inside cut command used in the pipeline

Reviewed-by: ohair, tbell
2012-11-14 10:20:25 -08:00
Erik Joelsson
0f6c2bcdde 8003317: build-infra: Configure fails when current dir is part of a symlink
Call macro for removing symbolic links on a copy of the CURDIR variable before comparing

Reviewed-by: ohair, tbell
2012-11-14 10:18:51 -08:00
Erik Joelsson
9359ccee62 8001941: build-infra: --disable-precompiled-headers does not seem to work
With this fix the flag will do what it advertises

Reviewed-by: ohair, tbell
2012-11-14 10:16:45 -08:00
Chris Plummer
6da2c235bd Merge 2012-11-14 10:13:51 -08:00
Erik Joelsson
5bf5ff8812 8001875: build-infra: We must be able to force static linking of stdc++
Ensure that we build with static linking when requested, or do not build at all

Reviewed-by: ohair, tbell
2012-11-14 10:13:28 -08:00
Jonathan Gibbons
56d387a2ef 8003412: javac needs to understand java.lang.annotation.Native
Reviewed-by: mcimadamore
2012-11-14 10:07:38 -08:00
Erik Joelsson
13e6e19e2c 8002026: build-infra: deploy repository building
Change the compare script to handle deploy build artifacts.

Reviewed-by: ohair, tbell
2012-11-14 10:05:49 -08:00
Anton Litvinov
b05c04c8c0 6789984: JPasswordField can not receive keyboard input
Reviewed-by: naoto, anthony
2012-11-14 18:40:05 +04:00
Konstantin Shefov
f7ee6989a0 7147408: [macosx] Add autodelay to fix a regression test
Reviewed-by: serb, alexsch
2012-11-14 11:37:09 +00:00
Mike Duigou
b2926d9724 7088952: Add size in bytes constant "BYTES" to primitive type wrapper types
Adds a constant BYTES to each of the primitive wrapper classes (Byte, Character, Double, Float, Integer, Long, Short) with the calculation Primitive.SIZE / Byte.SIZE already made.

Reviewed-by: dholmes
2012-11-13 20:02:39 -08:00
Jonathan Gibbons
78499292e1 8000404: rename javax.tools.GenerateNativeHeader to java.lang.annotation.Native
Reviewed-by: alanb
2012-11-14 07:08:50 -08:00
Alan Bateman
8c308db579 8003285: TEST_BUG: java/nio/channels/AsynchronousChannelGroup/Unbounded.java fails again [macosx]
Reviewed-by: chegar
2012-11-14 12:56:26 +00:00
Sean Chou
6bb3dd6ea2 7201156: jar tool fails to convert file separation characters for list and extract
Reviewed-by: alanb, chegar, sherman
2012-11-14 13:26:55 +08:00
Mike Duigou
96aa3fad5a 7088913: Add compatible static hashCode(primitive) to primitive wrapper classes
Adds static utility methods to each primitive wrapper class to allow calculation of a hashCode value from an unboxed primitive.

Reviewed-by: darcy, smarks, dholmes
2012-11-13 20:02:48 -08:00
Clemens Eisserer
b873533e98 7105461: Large JTables are not rendered correctly with Xrender pipeline
Reviewed-by: flar, prr
2012-11-13 16:12:10 -08:00
Erik Joelsson
415574536e 8003274: build-infra: Makefile changes needed for sjavac
Changes left in build-infra that are related to sjavac

Co-authored-by: Fredrik Ohrstrom <fredrik.ohrstrom@oracle.com>
Reviewed-by: ohair, tbell
2012-11-13 15:54:33 -08:00
Jonathan Gibbons
4b3c0978fb 8003299: Cleanup javac Log support for deferred diagnostics
Reviewed-by: mcimadamore, jfranck
2012-11-13 15:09:15 -08:00
Erik Joelsson
3fba7a43f2 8001965: build-infra: Large compare diffs between new and old on mac
The wrong icon source file was used when building closed

Reviewed-by: ohair, tbell
2012-11-13 13:46:25 -08:00
Coleen Phillimore
033786fbf0 Merge 2012-11-13 15:14:27 -05:00
Robert Field
be815ba8fa 8003306: Compiler crash: calculation of inner class access modifier
Fix binary sense lost in transition to hasTag

Reviewed-by: mcimadamore
2012-11-13 08:06:00 -08:00
Yumin Qi
f712e12f98 6830717: replay of compilations would help with debugging
When java process crashed in compiler thread, repeat the compilation process will help finding root cause. This is done with using SA dump application class data and replay data from core dump, then use debug version of jvm to recompile the problematic java method.

Reviewed-by: kvn, twisti, sspitsyn
2012-11-12 14:03:53 -08:00
Harold Seigel
4aad9b74e7 8001471: Klass::cast() does nothing
Remove function Klass::cast() and calls to it.

Reviewed-by: dholmes, coleenp
2012-11-12 16:15:05 -05:00
Harold Seigel
a28380d97e 7122219: Passed StringTableSize value not verified
Check that the values specified for -XX:StringTableSize are within a certain range.

Reviewed-by: dholmes, coleenp
2012-11-12 15:58:11 -05:00
Erik Joelsson
32808622c6 8002028: build-infra: need no-hotspot partial build
Added configure option --with-import-hotspot=/path/to/j2sdkimage

Reviewed-by: dholmes, tbell
2012-11-12 12:35:20 -08:00
Erik Joelsson
cc66da7e9f 8002028: build-infra: need no-hotspot partial build
Added configure option --with-import-hotspot=/path/to/j2sdkimage

Reviewed-by: dholmes, tbell
2012-11-12 12:34:11 -08:00
Erik Joelsson
fa30c0d8f2 8003177: build-infra: Compare reports diff in LocaleDataMetaInfo.class
Remove spurious space in the locale lists

Reviewed-by: naoto, ohair, tbell
2012-11-12 10:49:44 -08:00
Erik Joelsson
f56a68e8cb 8002365: build-infra: Build-infra fails on solaris 11.1 on sparc
Add '-lc' to LDFLAGS for native libraries in CompileNativeLibraries.gmk

Reviewed-by: ohair, tbell
2012-11-12 10:20:01 -08:00
Masayoshi Okutsu
aaa52056e9 8000986: Split java.util.spi.CalendarDataProvider into week parameters and field names portions
Reviewed-by: naoto
2012-11-12 11:12:29 +09:00
Alan Bateman
86d36e5d55 8003253: TEST_BUG: java/nio/channels/AsynchronousChannelGroup/Unbounded.java hang intermittently [win]
Reviewed-by: chegar
2012-11-11 10:05:37 +00:00
Zhengyu Gu
a988fc0968 Merge 2012-11-09 22:22:53 -08:00
Zhengyu Gu
07b3c477fe Merge 2012-11-09 16:45:20 -08:00
Zhengyu Gu
f47de1cb41 8001592: NMT: assertion failed: assert(_amount >= amt) failed: Just check: memBaseline.hpp:180
Fixed NMT that miscounted arena memory when it is used as value or stack object.

Reviewed-by: acorn, coleenp
2012-11-09 19:24:31 -05:00
Lana Steuck
36f6ab1d87 Merge 2012-11-09 14:47:22 -08:00
Lana Steuck
324f3fc04f Merge 2012-11-09 14:46:34 -08:00
Zhengyu Gu
ba0e500048 Merge 2012-11-09 11:47:28 -08:00
Chris Plummer
77c6d4fa5f Merge 2012-11-09 09:45:00 -08:00
Alejandro Murillo
8735609a8c 8003231: new hotspot build - hs25-b10
Reviewed-by: jcoomes
2012-11-09 08:36:17 -08:00
Alejandro Murillo
99eb0a7607 Added tag hs25-b09 for changeset f2d39eb04e60 2012-11-09 08:20:04 -08:00
Alejandro Murillo
9a902f6733 Merge 2012-11-09 08:20:03 -08:00
Zhengyu Gu
1abc21c310 8002273: NMT to report JNI memory leaks when -Xcheck:jni is on
Allows NMT to report that JNI thread failed to detach from JVM before exiting, which leaks the JavaThread object when check:jni option is on.

Reviewed-by: acorn, dholmes, coleenp, ctornqvi
2012-11-09 11:04:06 -05:00
Xue-Lei Andrew Fan
d0e329751f 8001569: Regression test GetPeerHost uses static port number
Reviewed-by: weijun
2012-11-09 01:15:04 -08:00
Yumin Qi
1c4dbc48e5 Merge 2012-11-08 16:48:01 -08:00
Mikael Gerdin
14d6692461 7200229: NPG: possible performance issue exposed by closed/runtime/6559877/Test6559877.java
Reduce the amount of calls to ChunkManager verification code

Reviewed-by: jmasa, coleenp
2012-11-09 00:38:31 +01:00
Nils Eliasson
98a91e2ab3 Merge 2012-11-08 22:39:08 +01:00
David Katleman
342adcc9f7 Added tag jdk8-b64 for changeset 323bf6f14277 2012-11-08 11:53:23 -08:00
David Katleman
9d0e05f86d Added tag jdk8-b64 for changeset 1cb211602711 2012-11-08 11:52:26 -08:00
David Katleman
c0eb3dd25c Added tag jdk8-b64 for changeset 20d8f4e5a30b 2012-11-08 11:51:35 -08:00
David Katleman
a049fb10b2 Added tag jdk8-b64 for changeset 13b36a0b5705 2012-11-08 11:51:20 -08:00
David Katleman
25248f528e Added tag jdk8-b64 for changeset 529fffb2ec02 2012-11-08 11:51:00 -08:00
David Katleman
78d4071a34 Added tag jdk8-b64 for changeset f0b6a25db9f2 2012-11-08 11:50:45 -08:00
David Katleman
26d28a3d4f Added tag jdk8-b64 for changeset 2ed7c69fba51 2012-11-08 11:50:40 -08:00
Jason Uh
fdfd7968f7 7198416: CertificateIssuerName and CertificateSubjectName are redundant
Reviewed-by: mullan
2012-11-08 12:51:25 -05:00
Fredrik Öhrström
2d8ab98393 8003161: small fixes to re-enable new build system
Reviewed-by: dholmes, alanb, erikj
2012-11-08 12:25:15 +01:00
Fredrik Öhrström
556c5ce459 8003161: small fixes to re-enable new build system
Reviewed-by: dholmes, alanb, erikj
2012-11-08 12:24:35 +01:00
Roger Riggs
5d67e2bbb1 6282196: There should be Math.mod(number, modulo) methods
Added the requested methods

Reviewed-by: darcy, emcmanus, alanb
2012-11-07 20:50:09 -08:00
David Holmes
f95e6bbe59 8002040: Allow Full Debug Symbols when cross-compiling
Reviewed-by: dcubed, erikj, tbell
2012-11-07 23:12:45 -05:00
Joel Borggrén-Franck
dc77a5a2c9 8001598: Augment ElementType enum for JSR 308
Reviewed-by: darcy
2012-11-07 17:39:34 -08:00
Jonathan Gibbons
18b3a4951e 8003134: CheckResourceKeys issues
Reviewed-by: jjh, bpatel
2012-11-07 17:20:12 -08:00
Sonali Goel
eb055bba92 8002157: Write combo compiler tests for repeating annotations for JDK8
Reviewed-by: darcy, jjg
2012-11-07 17:01:19 -08:00
Coleen Phillimore
2472fa3bc5 Merge 2012-11-07 16:09:20 -08:00
David Katleman
b8cbf9cf67 Merge 2012-11-07 15:39:07 -08:00
David Katleman
bba71c5175 Merge 2012-11-07 15:32:13 -08:00
Naoto Sato
bb434e94b4 8001205: Calendar.getDisplayName(...): Returns null when provider is SPI but there is no SPI implementation
8001562: Collator.getAvailableLocales() doesn't return all locales for which localized instances are available

Reviewed-by: okutsu
2012-11-07 15:08:28 -08:00
Bill Pittore
dd5c8eb660 8001185: parsing of sun.boot.library.path in os::dll_build_name somewhat broken
Dll_dir can contain multiple paths, need to parse them correctly when loading agents

Reviewed-by: dholmes, dlong
2012-11-07 17:53:02 -05:00
Andrew John Hughes
f0ceb65207 8003120: ResourceManager.getApplicationResources() does not close InputStreams
Add finally blocks to close the InputStream instances

Reviewed-by: lancea
2012-11-07 16:07:54 -05:00
Sean Coffey
309e36603f 8002227: (tz) Support tzdata2012i
Reviewed-by: peytoia, asaha
2012-11-07 18:48:48 +00:00
Daniel Fuchs
f2eac8a30a 6720349: (ch) Channels tests depending on hosts inside Sun
This changeset make the nio tests start small TCP or UDP servers from within the tests, instead of relying on external services.

Reviewed-by: alanb
2012-11-07 13:24:39 +01:00
John Zavgren
1f34c4e8ad 8001579: Cleanup warnings in security native code
Reviewed-by: chegar, alanb, vinnie
2012-11-07 10:49:19 +00:00
Weijun Wang
5fca8126cd 6355584: Introduce constrained Kerberos delegation
Reviewed-by: valeriep
2012-11-07 14:13:01 +08:00
Lana Steuck
cae6890e31 Merge 2012-11-06 18:41:01 -08:00
Yuka Kamiya
81afea6146 7198195: Support Unicode 6.2.0
Reviewed-by: okutsu
2012-11-07 09:58:39 +09:00
Vladimir Kozlov
1ebf7b9116 8002069: Assert failed in C2: assert(field->edge_count() > 0) failed: sanity
Added missed type check of initializing store in ConnectionGraph::find_init_values().

Reviewed-by: roland, twisti, vlivanov
2012-11-06 15:16:32 -08:00
Chris Hegarty
096a52585a 8002297: sun/net/www/protocol/http/StackTraceTest.java fails intermittently
Reviewed-by: alanb, dsamersoff
2012-11-06 21:01:43 +00:00
Harold Seigel
7fee66f152 8000725: NPG: method_holder() and pool_holder() and pool_holder field should be InstanceKlass
Change types of above methods and field to InstanceKlass and remove unneeded casts from the source files.

Reviewed-by: dholmes, coleenp, zgu
2012-11-06 15:09:37 -05:00
Lance Andersen
813239a52e 8002212: adding read/writeObject to additional SerialXXX classes
Reviewed-by: naoto, forax
2012-11-06 14:59:22 -05:00
Vladimir Kozlov
c9321f0b08 8002294: assert(VM_Version::supports_ssse3()) failed
Add missing UseSSE check for AES intrinsics.

Reviewed-by: roland, twisti
2012-11-06 09:22:55 -08:00
David Holmes
40d5fa156c 8002034: Allow Full Debug Symbols when cross-compiling
8001756: Hotspot makefiles report missing OBJCOPY command in the wrong circumstances

Reviewed-by: dcubed, dsamersoff, erikj, collins
2012-11-05 19:33:44 -05:00
Zhengyu Gu
61a5a58cb1 Merge 2012-11-05 13:55:31 -08:00
Zhengyu Gu
c1df1d9659 8001591: NMT: assertion failed: assert(rec->addr() + rec->size() <= cur->base()) failed: Can not overlap in memSnapshot.cpp
NMT should allow overlapping committed regions as long as they belong to the same reserved region

Reviewed-by: dholmes, coleenp
2012-11-05 15:30:22 -05:00
Jiangli Zhou
f3e4fda6ed 7197210: java/lang/invoke/CallSiteTest.java failing on armsflt
Reduce work load and set longer timeout for java/lang/invoke tests.

Reviewed-by: kvn, twisti
2012-11-05 12:51:14 -05:00
Kumar Srinivasan
a76a9ecd7a 7050936: (pack200) Support version 52.0 class files in langtools
Reviewed-by: dholmes
2012-11-05 15:00:55 -08:00
Kumar Srinivasan
99a97c7d3a 8001191: use -source 8 -target 8 when compiling the JDK
Reviewed-by: chegar, dholmes, erikj, jgish
2012-11-05 14:53:05 -08:00
Vinnie Ryan
bd748175f8 6383200: PBE: need new algorithm support in password based encryption
Reviewed-by: valeriep
2012-11-05 20:18:05 +00:00
Sean Mullan
4e6425e134 Merge 2012-11-05 12:08:04 -05:00
Vicente Romero
59347fd9bb 8000484: Bad error recovery when 'catch' without 'try' is found
Reviewed-by: jjg, mcimadamore
2012-11-05 16:26:09 +00:00
Lana Steuck
05d621bfc2 Merge 2012-11-06 18:41:56 -08:00
Jonathan Gibbons
63f6e5febd 7198690: missing compiler message
Reviewed-by: jjh
2012-11-06 17:22:29 -08:00
Jonathan Gibbons
97e77ea025 8000612: Discrepancy between resources provided in javadoc resource files and resources required by code
Reviewed-by: bpatel
2012-11-06 14:32:49 -08:00
Maurizio Cimadamore
4d8168a8e5 8002286: Regression: Fix for 8000931 causes a JCK test failure
Wrong type used as 'site' in Resolve.resolveMethod

Reviewed-by: jjg
2012-11-06 14:45:27 +00:00
Sean Mullan
4cae4b0457 Merge 2012-11-05 10:33:18 -05:00
Sean Mullan
5b23307a8f 7171570: JEP 124 Potential API Changes
Reviewed-by: vinnie, xuelei
2012-11-05 10:30:49 -05:00
Alan Bateman
f2aa8d9df9 8000330: (fc) FileChannel.truncate issues when given size > file size
8002180: (fc) FileChannel.map does not throw NPE if MapMode specified as null

Reviewed-by: chegar
2012-11-04 14:07:35 +00:00
Erik Joelsson
558e4c2abf 8002220: build-infra: update for mac, solaris 11 issues
8002184: Fixed exclude and includes for jarsigner in new build

Reviewed-by: ohair
2012-11-03 16:28:14 -07:00
Erik Joelsson
78246559ae 8002220: build-infra: update for mac, solaris 11 issues
8002184: Fixed exclude and includes for jarsigner in new build

Reviewed-by: ohair
2012-11-03 16:27:01 -07:00
Erik Joelsson
ac014a1aa1 8002183: Increased max number of paths to list in ListPathsSafely to 16000
Reviewed-by: ohair
2012-11-03 16:15:26 -07:00
Lana Steuck
286c5274db Merge 2012-11-02 17:55:34 -07:00
Lana Steuck
8790a6a897 Merge 2012-11-02 17:54:44 -07:00
Lana Steuck
4a88c62d44 Merge 2012-11-02 17:44:31 -07:00
Lana Steuck
33c12b1f1a Merge 2012-11-02 17:34:13 -07:00
Lana Steuck
9f799911f6 Merge 2012-11-02 17:32:53 -07:00
Lana Steuck
4cb701f145 Merge 2012-11-02 17:32:30 -07:00
Keith McGuigan
386e4009f3 Merge 2012-11-02 17:18:16 -07:00
Keith McGuigan
41961c75f6 Merge 2012-11-02 16:09:50 -07:00
Sonali Goel
3b9822eab7 7169362: JDK8: Write compiler tests for repeating annotations for JDK8
Reviewed-by: darcy, jjg
2012-11-02 14:35:57 -07:00
Yumin Qi
a9c40e9df4 8000489: older builds of hsdis don't work anymore after 6879063
The old function not defined properly, need a definition for export in dll. Also changes made to let new jvm work with old hsdis.

Reviewed-by: jrose, sspitsyn, kmo
2012-11-02 13:30:47 -07:00
Bharadwaj Yadavalli
642c6b415a 8001658: No need to pass resolved_references as argument to ConstantPoolCacheEntry::set_method_handle_common
Reviewed-by: twisti
2012-11-02 12:30:46 -07:00
Konstantin Shefov
15e192571c 8001876: Create regtest for 8000283
Reviewed-by: alexsch, serb
2012-11-02 17:07:43 +01:00
Konstantin Shefov
7771aa7929 8001808: Create a test for 8000327
Reviewed-by: alexsch, serb
2012-11-02 17:05:10 +01:00
Alan Bateman
430592a30e 7197491: update copyright year to match last edit in jdk8 jdk repository
Reviewed-by: chegar, ksrini
2012-11-02 15:50:11 +00:00
Leonid Romanov
99cabdb715 8002114: fix failed for JDK-7160951: [macosx] ActionListener called twice for JMenuItem using ScreenMenuBar
Reviewed-by: serb
2012-11-02 19:47:12 +04:00
Leonid Romanov
c0c03f17ce 7124310: [macosx] "opposite" seems always null in focus events
Reviewed-by: anthony
2012-11-02 19:20:03 +04:00
Alejandro Murillo
d81c4b5d7d 8002181: new hotspot build - hs25-b09
Reviewed-by: jcoomes
2012-11-02 07:44:11 -07:00
Alejandro Murillo
cbc6ccf784 Added tag hs25-b08 for changeset b2e5b6581dec 2012-11-02 07:35:41 -07:00
Alejandro Murillo
d03b95a6e8 Merge 2012-11-02 07:35:41 -07:00
Yuka Kamiya
38087c7a48 8001209: Evaluate findbugs reprot for java.text.ChoiceFormat
Reviewed-by: okutsu
2012-11-02 23:17:33 +09:00
Mikhail Cherkasov
1aa03d0b50 8001633: Wrong alt processing during switching between windows
Reviewed-by: ant, leonidr
2012-11-02 16:14:14 +04:00
Vladislav Karnaukhov
895cfedd21 2229575: Swing HTML parser can't properly decode codepoints outside the Unicode Plane 0 into a surrogate pair
Reviewed-by: rupashka
2012-11-02 15:57:20 +04:00
Alejandro Murillo
7747f370a5 Merge 2012-11-02 04:06:00 -07:00
John Coomes
cee9854e81 Merge 2012-11-01 23:08:07 -07:00
Weijun Wang
a60d4fd720 7110803: SASL service for multiple hostnames
Reviewed-by: mullan
2012-11-02 10:48:04 +08:00
David Holmes
5412833e72 7198815: Add the minimal VM as "known" in jvm.cfg
Reviewed-by: alanb, forax, mchung
2012-11-01 18:09:43 -04:00
Alan Bateman
956f8edf61 8002120: ProblemList.txt updates (11/2012)
Reviewed-by: lancea
2012-11-01 21:59:18 +00:00
Lance Andersen
9cfc35f365 8001536: Added readObject,writeObject,clone, equals, hashcode to SerialXLob
Reviewed-by: alanb, forax
2012-11-01 17:35:17 -04:00
David Katleman
240382e751 Added tag jdk8-b63 for changeset c9ce28f01a29 2012-11-01 14:13:13 -07:00
David Katleman
5eebce3000 Added tag jdk8-b63 for changeset 540a11e15fbb 2012-11-01 14:12:21 -07:00
David Katleman
29a08de0fe Added tag jdk8-b63 for changeset 8f2eb6bac62e 2012-11-01 14:11:50 -07:00
David Katleman
876b26e99a Added tag jdk8-b63 for changeset 590a9a630b02 2012-11-01 14:11:44 -07:00
David Katleman
514be155c7 Added tag jdk8-b63 for changeset 1c4fb78585e7 2012-11-01 14:11:16 -07:00
David Katleman
1499e11b2a Added tag jdk8-b63 for changeset 0a3039ec2e47 2012-11-01 14:11:00 -07:00
David Katleman
0bbc94a705 Added tag jdk8-b63 for changeset c76eadb8e8fd 2012-11-01 14:10:52 -07:00
Naoto Sato
799007c62d 8001440: CLDR adapter: Invalid number extension in language tag causes exception in NumberFormat.format()
Reviewed-by: okutsu
2012-11-01 13:28:47 -07:00
Coleen Phillimore
3b8016772d Merge 2012-11-01 11:57:53 -04:00
Vicente Romero
a998d5815f 8000483: cryptic error message when source file contains hash
Cryptic error message when source file contains hash

Reviewed-by: jjg, mcimadamore
2012-11-01 12:47:11 +00:00
Staffan Larsen
ff6a68b801 8002078: hs_err_pid file should report full JDK version string
Reviewed-by: dholmes, sspitsyn, kmo
2012-11-01 13:05:47 +01:00
Fredrik Öhrström
07880728ed 7153951: Add new lint option -Xlint:auxiliaryclass
Reviewed-by: jjg, mcimadamore, forax
2012-11-01 10:48:36 +01:00
Fredrik Öhrström
f1f634eb38 8002101: break out auxiliary classes that will prevent multi-core compilation of the JDK
Reviewed-by: alanb, sla
2012-11-01 10:33:32 +01:00
David Katleman
3d8056dd67 Merge 2012-10-31 18:36:25 -07:00
David Katleman
2e31573747 Merge 2012-10-31 18:35:56 -07:00
David Katleman
46373aeb65 Merge 2012-10-31 18:30:52 -07:00
David Katleman
259b13360c Merge 2012-10-31 18:30:51 -07:00
David Katleman
f4def79f36 Merge 2012-10-31 18:30:08 -07:00
David Katleman
40914d37e4 Merge 2012-10-31 18:30:07 -07:00
Serguei Spitsyn
80cc4706a6 7194607: VerifyLocalVariableTableOnRetransformTest.sh fails after JSR-292 merge
Use verifier_max_size instead of max_size to get code attribute max stack size.

Reviewed-by: dcubed, minqi
2012-10-31 16:20:03 -07:00
Jonathan Gibbons
04ab375fd2 8001664: refactor javadoc to use abstraction to handle files
Reviewed-by: darcy
2012-10-31 13:48:15 -07:00
Naoto Sato
e84c0fab29 8001231: Move locale data out of rt.jar (except the US locale)
Reviewed-by: alanb, erikj
2012-10-31 11:33:36 -07:00
Kumar Srinivasan
d079a05f38 8001112: Make -target 8 in javac generate version 52.0 classfile
Reviewed-by: darcy, jjg
2012-10-31 10:21:14 -07:00
Maurizio Cimadamore
7c849a94da 8000931: Cleanup Resolve.java
Unify all method resolution routines

Reviewed-by: jjg
2012-11-04 11:01:49 +00:00
Maurizio Cimadamore
d4be9a13c8 7192246: Add type-checking support for default methods
Add type-checking support for default methods as per Featherweight-Defender document

Reviewed-by: jjg, dlsmith
2012-11-04 10:59:42 +00:00
Jonathan Gibbons
d50b720ecc 8002168: Cleanup initialization of javadoc Messager
Reviewed-by: darcy
2012-11-03 21:09:57 -07:00
Jonathan Gibbons
3bd08c5eff 8002146: javadoc doesn't release resources in a timely manner
Reviewed-by: darcy
2012-11-03 21:07:30 -07:00
Jonathan Gibbons
adff1a634a Merge 2012-11-02 19:17:03 -07:00
Vicente Romero
84e4fa5a93 6949443: visitTree assertion triggered using -Xjcov on small sample program
Reviewed-by: jjg, mcimadamore
2012-11-01 13:06:43 +00:00
Lana Steuck
f71c5b3ee0 Merge 2012-10-31 09:49:37 -07:00
Lana Steuck
9faa8df101 Merge 2012-10-31 09:25:20 -07:00
Lana Steuck
fb8a6d4fcb Merge 2012-10-31 09:12:45 -07:00
Lana Steuck
e0660b66f3 Merge 2012-10-31 08:31:40 -07:00
Lana Steuck
bbf2d20d03 Merge 2012-10-31 08:29:44 -07:00
Lana Steuck
bebc09c3b5 Merge 2012-10-30 23:26:21 -07:00
Lana Steuck
da89e5624c Merge 2012-10-30 13:56:59 -07:00
Erik Helin
65aa73c809 8001564: The load balancing function steal_1_random in taskqueue is not random
Removes the two unused functions GenericTaskQueueSet::steal_1_random and GenericTaskQueueSet::steal_best_of_all

Reviewed-by: brutisso, stefank
2012-10-30 20:26:44 +01:00
Jon Masamitsu
badb2a2af8 8000988: VM deadlock when running btree006 on windows-i586
Reviewed-by: johnc, jcoomes, ysr
2012-10-30 10:23:55 -07:00
Jonathan Gibbons
0777dc6caa 8001929: fix doclint errors in langtools doc comments
Reviewed-by: darcy
2012-10-30 10:15:19 -07:00
Konstantin Shefov
85947c2f2c 7072120: No mac os x support in several regression tests
Reviewed-by: anthony, serb
2012-10-30 12:47:35 +01:00
Anthony Petrov
01d496ad5a 8001764: vsvars.sh should support VS2012
Update the vsvars.sh script to support VS2012

Reviewed-by: ohair, tbell
2012-10-30 15:04:15 +04:00
Jim Gish
a865f8b91a 6206780: (str) Forwarding append methods in String{Buffer,Builder} are inconsistent
Update StringBuilder & StringBuffer to consistently handle forwarding to AbstractStringBuilder. Some additional cleanup (removal of refs to sub-classes from AbstractStringBuilder)

Reviewed-by: chegar, alanb, mduigou
2012-10-29 16:51:59 -07:00
Yumin Qi
772e0e748d Merge 2012-10-29 16:39:14 -07:00
Magnus Ihse Bursie
1e78e4b639 8001897: build-infra: misc adjustments to configure script
Reviewed-by: ohair
2012-10-29 14:06:57 -07:00
Erik Joelsson
e64619c43f 8001898: build-infra: correct exclusion lists for mac jar builds
8001896: build-infra: UNLIMITED_CRYPTO changes

Reviewed-by: ohair
2012-10-29 13:55:47 -07:00
Fredrik Öhrström
f4511e60c5 8001891: build-infra: Adding X_CFLAGS and X_LIBS to lwawt and sizer compilation
Reviewed-by: ohair
2012-10-29 13:41:38 -07:00
Erik Joelsson
c28e34e514 8001887: build-infra: Correct mapfiles in build-infra area
Reviewed-by: ohair
2012-10-29 13:04:40 -07:00
Staffan Larsen
bcf7a3c298 8001619: Remove usage of _ALLBSD_SOURCE in bsd files
Reviewed-by: coleenp, dholmes
2012-10-29 21:04:17 +01:00
Sergey Bylokhov
46c74fcecb 7198229: Painting during resizing of the frame should be more smooth
Reviewed-by: anthony, denis, skovatch
2012-10-29 23:10:41 +04:00
Serguei Spitsyn
cb6de38554 6533010: SPEC: A few broken links in jvmti.html
Fix the incorrect links in jvmti.html reported by the LinkCheck tool

Reviewed-by: jjh, dholmes
2012-10-29 11:35:20 -07:00
Roman Kennke
e184d5cc4e 8000780: make Zero build and run with JDK8
Reviewed-by: coleenp, dholmes, twisti
2012-10-29 11:08:48 -07:00
Naoto Sato
1203231cf9 8000997: Multiple locale sensitive services cannot be loaded
Reviewed-by: okutsu
2012-10-29 10:42:41 -07:00
Robert Field
7c26f7db54 8000694: Add generation of lambda implementation code: invokedynamic call, lambda method, adaptor methods
Add lambda implementation code with calling/supporting code elsewhere in the compiler

Reviewed-by: mcimadamore, jjg
2012-10-29 10:39:49 -07:00
Fredrik Öhrström
f5e72e432e 8000970: break out auxiliary classes that will prevent multi-core compilation of the JDK
Reviewed-by: alanb, wetmore
2012-10-29 14:12:37 +01:00
Fredrik Öhrström
a5b6cdf1ae 8000970: break out auxiliary classes that will prevent multi-core compilation of the JDK
Reviewed-by: alanb, wetmore
2012-10-29 14:10:49 +01:00
Staffan Larsen
dc9bf2de74 8001621: Update awk scripts that check output from jps/jcmd
Reviewed-by: alanb
2012-10-29 09:23:55 +01:00
Weijun Wang
14364d11d2 7195426: kdc_default_options not supported correctly
Reviewed-by: xuelei
2012-10-29 14:14:07 +08:00
Weijun Wang
620f0e5006 7184246: Simplify Config.get() of krb5
Reviewed-by: xuelei
2012-10-29 14:14:06 +08:00
Alan Bateman
b9f46f0001 7176225: Remove JDBC-ODBC Bridge
Reviewed-by: lancea, ohair, tbell
2012-10-27 09:18:29 +01:00
Jonathan Gibbons
bde4b842d8 8001717: TypeTags cleanup breaks GenStubs
Reviewed-by: jjh
2012-10-26 18:40:13 -07:00
Jonathan Gibbons
7c509b7652 8001714: add missing tests for 7199925
Reviewed-by: darcy
2012-10-26 17:17:33 -07:00
Jonathan Gibbons
574f3eeef5 8001229: refactor javac so that ct.sym is just used for javac, not all clients of JavacFileManager
Reviewed-by: mcimadamore
2012-10-26 16:40:57 -07:00
Kelly O'Hair
f9c6f4bd18 8000992: Update new build-infra makefiles
Build-infra project integration. Multiple authors on this work: erikj and ihse primarily, also changes from ohair, tbell, and dholmes. Special credit to ohstrom for his smartjavac work.

Reviewed-by: erikj, ihse, dholmes, tbell
2012-10-26 14:29:57 -07:00
Kelly O'Hair
ab0a4530c8 8000992: Update new build-infra makefiles
Build-infra project integration. Multiple authors on this work: erikj and ihse primarily, also changes from ohair, tbell, and dholmes. Special credit to ohstrom for his smartjavac work.

Reviewed-by: erikj, ihse, dholmes, tbell
2012-10-26 14:25:52 -07:00
Kelly O'Hair
4e44b9cf81 8000992: Update new build-infra makefiles
Build-infra project integration. Multiple authors on this work: erikj and ihse primarily, also changes from ohair, tbell, and dholmes. Special credit to ohstrom for his smartjavac work.

Reviewed-by: erikj, ihse, dholmes, tbell
2012-10-26 14:25:29 -07:00
Kelly O'Hair
4a59eea32b 8000992: Update new build-infra makefiles
Build-infra project integration. Multiple authors on this work: erikj and ihse primarily, also changes from ohair, tbell, and dholmes. Special credit to ohstrom for his smartjavac work.

Reviewed-by: erikj, ihse, dholmes, tbell
2012-10-26 14:25:17 -07:00
Kelly O'Hair
c15035bb7f 8000992: Update new build-infra makefiles
Build-infra project integration. Multiple authors on this work: erikj and ihse primarily, also changes from ohair, tbell, and dholmes. Special credit to ohstrom for his smartjavac work.

Reviewed-by: erikj, ihse, dholmes, tbell
2012-10-26 14:24:21 -07:00
Kelly O'Hair
38c629a354 8000992: Update new build-infra makefiles
Build-infra project integration. Multiple authors on this work: erikj and ihse primarily, also changes from ohair, tbell, and dholmes. Special credit to ohstrom for his smartjavac work.

Reviewed-by: erikj, ihse, dholmes, tbell
2012-10-26 14:23:29 -07:00
Alejandro Murillo
f0534ca470 8001663: new hotspot build - hs25-b08
Reviewed-by: jcoomes
2012-10-26 14:18:57 -07:00
Alejandro Murillo
97c1b9deae Added tag hs25-b07 for changeset 490cfcf46c7d 2012-10-26 14:09:53 -07:00
Alejandro Murillo
2f0d944b8a Merge 2012-10-26 14:09:52 -07:00
Doug Lea
6f31fa54ac 8001575: Minor/sync/cleanup j.u.c with Dougs CVS - Oct 2012
Reviewed-by: chegar, dholmes
2012-10-26 21:34:24 +01:00
Jonathan Gibbons
4d41066972 8001219: Clean up use of URLs in javadoc Extern class
Reviewed-by: darcy
2012-10-26 13:10:56 -07:00
Vladimir Kozlov
b8abfa016c Merge 2012-10-26 12:06:55 -07:00
Vladimir Kozlov
fc84b11227 8001635: assert(in_bb(n)) failed: must be
Added missed check that Load node is in processed loop block.

Reviewed-by: twisti
2012-10-26 11:48:04 -07:00
John Coomes
ebba61f003 Merge 2012-10-26 08:38:22 -07:00
Dan Xu
ed483ab38b 4239752: FileSystem should be a platform-specific class to avoid native code
Reviewed-by: alanb, dholmes, erikj, jgish
2012-10-26 11:21:02 +01:00
Lana Steuck
8f0b240e99 Merge 2012-10-25 20:33:49 -07:00
Lana Steuck
b8265239b8 Merge 2012-10-25 20:32:10 -07:00
Lana Steuck
5d67b08f40 Merge 2012-10-25 20:07:46 -07:00
Lana Steuck
69720b975c Merge 2012-10-25 20:07:39 -07:00
Lana Steuck
f3ef67a598 Merge 2012-10-25 20:05:36 -07:00
Lana Steuck
91fac51819 Merge 2012-10-25 20:04:23 -07:00
Robert Field
020472d122 8000806: Implement runtime lambda metafactory
Implement lambda invokedynamic bootstrap by generating at runtime an inner class that implements the functional interface

Reviewed-by: twisti
2012-10-25 17:34:24 -07:00
Vladimir Kozlov
4531e51fc4 7163534: VM could crashes assert(false) failed: infinite EA connection graph build
In case of time or iterations limit reached C2 stops EA and continue compilation without EA as it does in product VM already.

Reviewed-by: twisti
2012-10-25 17:32:03 -07:00
Dan Xu
78aeafc1a2 8001565: (fs) Typo Path.endsWith(String) javadoc
Reviewed-by: mchung, jgish, lancea
2012-10-25 15:42:49 -07:00
Jim Gish
07f94ef8bc 7159567: inconsistent configuration of MemoryHandler
Reviewed-by: mchung, alanb
2012-10-25 15:04:09 -07:00
Harold Seigel
4e5ebae2d3 7191817: -XX:+UseSerialGC -XX:+UseLargePages crashes with SIGFPE on MacOS X
Disable -XX:+UseLargePages for MacOS X

Reviewed-by: dholmes, coleenp, sla
2012-10-25 16:33:40 -04:00
Vicente Romero
044dcef0e6 6725230: Java Compilation with Jsr199 ignores Class-Path in manifest
Reviewed-by: jjg, mcimadamore
2012-10-25 13:33:27 -07:00
Harold Seigel
fc938fcbd9 7188234: Deprecate VM command line options
Remove support for the UseVectoredExceptions flag

Reviewed-by: jcoomes, kamg
2012-10-25 16:33:15 -04:00
Jon Masamitsu
0c42ca44f3 8001584: NPG: Incorrect assertion in BinaryTreeDictionary::get_chunk()
Reviewed-by: johnc, tamao
2012-10-25 12:59:37 -07:00
Vicente Romero
de25999481 7200915: convert TypeTags from a series of small ints to an enum
Reviewed-by: jjg, mcimadamore
2012-10-25 11:09:36 -07:00
David Katleman
431bad33c0 Added tag jdk8-b62 for changeset 90de1dc5cd5b 2012-10-25 09:54:41 -07:00
David Katleman
bb35ccdbc3 Added tag jdk8-b62 for changeset f0d59eea9c70 2012-10-25 09:54:03 -07:00
David Katleman
3e547a0921 Added tag jdk8-b62 for changeset ea25fe53bbce 2012-10-25 09:53:40 -07:00
David Katleman
8ca6d2e3fb Added tag jdk8-b62 for changeset 6fc9f2af5e0d 2012-10-25 09:53:35 -07:00
David Katleman
86f198088a Added tag jdk8-b62 for changeset e3e135066607 2012-10-25 09:53:16 -07:00
David Katleman
43443b03d5 Added tag jdk8-b62 for changeset fbfe6a11980d 2012-10-25 09:53:01 -07:00
David Katleman
0b024171d1 Added tag jdk8-b62 for changeset b2bf9e584614 2012-10-25 09:52:58 -07:00
Oleg Pekhovskiy
bf6c304c44 7082294: nsk/regression/b4265661 crashes on windows
Reviewed-by: art, anthony
2012-10-25 19:50:30 +04:00
Oleg Pekhovskiy
6036ad08e5 8000486: REGRESSION: Three java2d tests fail since jdk8b58 on Windows 7 with NullPointerException
Reviewed-by: flar, art
2012-10-25 09:55:33 +04:00
Tom Deneau
6d94ef1ee7 7184394: add intrinsics to use AES instructions
Use new x86 AES instructions for AESCrypt.

Reviewed-by: twisti, kvn, roland
2012-10-24 14:33:22 -07:00
John Zavgren
3877e3dda4 8000203: File descriptor leak in src/solaris/native/java/net/net_util_md.c
Reviewed-by: dsamersoff, khazra, chegar
2012-10-24 21:20:40 +01:00
David Katleman
564fea623a Merge 2012-10-24 13:14:18 -07:00
David Katleman
a714bf1b0b Merge 2012-10-24 13:11:45 -07:00
David Katleman
655033b76c Merge 2012-10-24 13:11:42 -07:00
Jaroslav Bachorik
3e4e347c26 6976971: TEST: javax/management/remote/mandatory/URLTest.java should be re-integrated
Reviewed-by: alanb
2012-10-24 20:44:07 +01:00
Xue-Lei Andrew Fan
b01d15feb0 8001466: Nightly regression test failure of SSLSocketSNISensitive.java
Reviewed-by: weijun
2012-10-24 08:25:29 -07:00
Anton Litvinov
d96d10ded0 7193219: JComboBox serialization fails in JDK 1.7
Reviewed-by: rupashka, anthony
2012-10-24 18:27:14 +04:00
Andrew Brygin
5d717a96fb 7053526: Upgrade JDK 8 to use Little CMS 2.4
Reviewed-by: prr, jgodinez
2012-10-24 05:30:34 +04:00
Fredrik Öhrström
aff615b4d6 8001419: Build the JCE portion of JDK-8000970
Original code done by Fredrik Ohrstrom, separated/pushed by wetmore

Reviewed-by: wetmore
2012-10-23 15:51:11 -07:00
Jonathan Gibbons
ce1db67272 8000416: refactor javadoc to provide and use an abstraction for relative URIs
Reviewed-by: darcy
2012-10-23 13:58:56 -07:00
Jonathan Gibbons
296286534c 8000741: refactor javadoc to use abstraction to handle relative paths
Reviewed-by: darcy
2012-10-23 13:20:37 -07:00
Vladimir Kozlov
a9c2b6a900 8001183: incorrect results of char vectors right shift operaiton
Do vector right shift operation for small int types only after loads

Reviewed-by: jrose, dlong
2012-10-23 13:06:37 -07:00
Bradford Wetmore
30dd7eee31 7197071: Makefiles for various security providers aren't including the default manifest
Reviewed-by: valeriep, mullan, katleman
2012-10-23 12:36:47 -07:00
Lana Steuck
736ab82961 Merge 2012-10-23 11:29:53 -07:00
Volker Simonis
5b56f65379 7152336: Enable builds on Windows with MinGW/MSYS
Minimal makefile changes to enable building OpenJDK using MSYS on Windows7

Reviewed-by: ohair, tbell
2012-10-23 10:10:49 -07:00
Volker Simonis
9c0b5ee904 7152336: Enable builds on Windows with MinGW/MSYS
Minimal makefile changes to enable building OpenJDK using MSYS on Windows7

Reviewed-by: ohair, tbell
2012-10-23 10:10:39 -07:00
Volker Simonis
906081c12d 7152336: Enable builds on Windows with MinGW/MSYS
Minimal makefile changes to enable building OpenJDK using MSYS on Windows7

Reviewed-by: ohair, tbell
2012-10-23 10:10:23 -07:00
Lana Steuck
74ef0287be Merge 2012-10-23 09:42:48 -07:00
Lana Steuck
4048bc01c6 Merge 2012-10-23 09:41:52 -07:00
Lana Steuck
cb7543fafd Merge 2012-10-23 09:41:02 -07:00
Lana Steuck
63e3083133 Merge 2012-10-23 09:40:43 -07:00
Lana Steuck
dfb0a3761f Merge 2012-10-23 09:40:39 -07:00
Lana Steuck
6ae7845341 Merge 2012-10-23 09:40:06 -07:00
Lana Steuck
e857d47bb5 Merge 2012-10-23 09:38:38 -07:00
John Zavgren
28475942c9 8000204: Memory leak in com/sun/security/auth/module/Unix.c
Reviewed-by: dsamersoff, wetmore, khazra, chegar
2012-10-23 11:57:47 +01:00
Alexander Scherbatiy
3c6c782cf3 6624200: Regression test fails: test/closed/javax/swing/JMenuItem/4654927/bug4654927.java
Reviewed-by: rupashka
2012-10-23 14:30:41 +04:00
Andrew Brygin
433715e09c 7051394: NullPointerException when running regression tests LoadProfileTest by using openjdk-7-b144
Reviewed-by: jgodinez, prr
2012-10-23 13:10:52 +04:00
Weijun Wang
8744fd02bd 8001208: Fix for KRB5CCNAME not complete
Reviewed-by: xuelei
2012-10-23 10:02:23 +08:00
Keith McGuigan
9322a179db 8001225: Disable jdk regression test java/lang/System/Versions.java until jdk's classfile version code is updated
Exclude java/lang/System/Versions.java test

Reviewed-by: sspitsyn, coleenp
2012-10-22 20:12:19 -04:00
Christian Thalinger
65c20a5492 8000821: JSR 292: C1 fails to call virtual method (JRUBY-6920)
Reviewed-by: kvn
2012-10-22 16:56:03 -07:00
Christian Thalinger
c915e9da09 6771058: TEST_BUG: java/lang/ref/Basic.java may fail with -server -Xcomp
Reviewed-by: dholmes, mchung
2012-10-22 14:22:30 -07:00
Vladimir Ivanov
7f87237400 8000805: JMM issue: short loads are non-atomic
Perform transforms during IGVN phase when Load has a single user.

Reviewed-by: jrose, kvn, twisti
2012-10-22 11:44:30 -07:00
Coleen Phillimore
fa470cb77e Merge 2012-10-22 12:01:35 -04:00
Weijun Wang
5e1584a438 8000624: Move MaxRetries.java to ProblemList for the moment
Reviewed-by: alanb
2012-10-22 17:01:35 +08:00
Weijun Wang
3dcf67df0d 8001204: typo: Unable to obtain Princpal Name for authentication
Reviewed-by: xuelei
2012-10-22 09:59:23 +08:00
Jim Holmlund
d11cb7e6c1 7197401: Add a subset of the org.objectweb.asm packages to jdk8
Reviewed-by: ohair, briangoetz, erikj, iris
2012-10-20 22:49:26 +01:00
Alan Bateman
0905490fac 8000941: Remove ftp from the required list of protocol handlers
Reviewed-by: chegar
2012-10-20 21:07:50 +01:00
Xue-Lei Andrew Fan
29edcef765 8000954: Add final keyword to new method in SSLParameters
Reviewed-by: wetmore
2012-10-19 20:36:36 -07:00
Zhengyu Gu
dff9c7f852 Merge 2012-10-19 18:55:08 -07:00
Zhengyu Gu
3e481cdd81 7199092: NMT: NMT needs to deal overlapped virtual memory ranges
Enhanced virtual memory tracking to track committed regions as well as reserved regions, so NMT now can generate virtual memory map.

Reviewed-by: acorn, coleenp
2012-10-19 21:40:07 -04:00
Christian Thalinger
01d0ba69ce 8000989: smaller code changes to make future JSR 292 backports easier
Reviewed-by: jrose
2012-10-19 17:04:35 -07:00
Alejandro Murillo
8277d1355e 8001176: new hotspot build - hs25-b07
Reviewed-by: jcoomes
2012-10-19 11:26:17 -07:00
Dean Long
e57ac83cac 8001101: C2: more general vector rule subsetting
Allow which vector rules are supported to be decided at runtime. Also a small change to allow vector types in Type::_type_info[] to apply to more platforms.

Reviewed-by: kvn, twisti
2012-10-19 14:21:09 -04:00
Alejandro Murillo
65c322fa70 Added tag hs25-b06 for changeset 57dfd29e4742 2012-10-19 11:03:04 -07:00
Alejandro Murillo
639aa5d99f Merge 2012-10-19 11:03:04 -07:00
Yumin Qi
f214e4cef3 8001055: Bytes.swap should follow big endian
This is a mistake change in 6879063 about Bytes.swap. Java byte code order always follows big endian, but in that change, assume they follow native platform order that is not right.

Reviewed-by: coleenp, sspitsyn, dholmes
2012-10-19 08:58:14 -07:00
Yumin Qi
3d8142d5fd 8000818: SA constant pool need to reference to reference map after permgen removal
After permgen removal, constant pool changed to put _ldc and _ldc_w (fast_ldc and fast_ldcw) index to reference map, no longer calculated via constant pool cache.

Reviewed-by: coleenp, sspitsyn, dholmes
2012-10-19 08:56:57 -07:00
Sergey Bylokhov
b61d0d9772 7124520: [macosx] re:6373505 Toolkit.getScreenResolution() != GraphicsConfiguration.getNormalizingTransform()
Reviewed-by: anthony, kizune
2012-10-19 15:23:14 +04:00
John Zavgren
3c2e0ae2ac 8000206: Uninitialized variable in PlainDatagramSocketImpl.c
Reviewed-by: dsamersoff, khazra, chegar
2012-10-19 11:43:59 +01:00
Abhijit Saha
d66bdb868d Merge 2012-10-18 22:01:26 -07:00
Abhijit Saha
19fc2d4d88 Merge 2012-10-18 21:58:55 -07:00
David Katleman
8bb18682d4 Added tag jdk8-b61 for changeset 539f9d08a9e5 2012-10-18 11:09:45 -07:00
David Katleman
d9aab5025e Added tag jdk8-b61 for changeset 1a8b3b760f60 2012-10-18 11:09:00 -07:00
David Katleman
4dae92ce29 Added tag jdk8-b61 for changeset 3d833bc526da 2012-10-18 11:08:36 -07:00
David Katleman
0f95eb5efc Added tag jdk8-b61 for changeset 877dd5308e32 2012-10-18 11:08:30 -07:00
David Katleman
3e188b4775 Added tag jdk8-b61 for changeset 929432f0c3b6 2012-10-18 11:08:05 -07:00
David Katleman
c7df814ec7 Added tag jdk8-b61 for changeset e4251351a6dd 2012-10-18 11:07:46 -07:00
David Katleman
f88b8fb20f Added tag jdk8-b61 for changeset 0623a2cf29df 2012-10-18 11:07:40 -07:00
Harold Seigel
240b5c9329 7053130: hs_err file does not record specified CLASSPATH
Added code to write the value of the java.class.path property to the hs_err file.

Reviewed-by: kmo, dholmes, kvn
2012-10-18 13:09:47 -04:00
Harold Seigel
e9755cef6a 7188233: UseVMInterruptibleIO flag deprecate for JDK8
The -XX:+UseVMInterruptibleIO flag is deprecated for JDK8.  The flag will still enable Interruptible IO on Solaris, but users will get a warning.

Reviewed-by: dholmes, acorn, alanb
2012-10-18 13:08:13 -04:00
Coleen Phillimore
b1c7936406 Merge 2012-10-18 12:29:56 -04:00
Alexander Scherbatiy
9a39ec25ca 7175707: [macosx] PIT: 8 b43 Not running on AppKit thread issue again
Reviewed-by: serb, anthony
2012-10-18 18:28:42 +04:00
Vladimir Kozlov
247b39e010 8001071: Add simple range check into VM implemenation of Unsafe access methods
Add simple check in debug version of VM.

Reviewed-by: twisti, johnc
2012-10-18 07:06:31 -07:00
Alexander Scherbatiy
80d1115eb7 7199708: FileChooser crashs when opening large folder
Reviewed-by: bagiras
2012-10-18 17:50:43 +04:00
Xue-Lei Andrew Fan
1892ebf911 7068321: Support TLS Server Name Indication (SNI) Extension in JSSE Server
Reviewed-by: mullan, weijun, wetmore
2012-10-18 01:14:00 -07:00
Jon Masamitsu
ea25b80875 Merge 2012-10-17 13:59:57 -07:00
Naoto Sato
1fb9910146 8001046: java/util/PluggableLocale/LocaleNameProviderTest.sh failing
Reviewed-by: okutsu
2012-10-17 13:22:39 -07:00
Alan Bateman
81d4408852 8000362: (pack200) Deprecate Packer/Unpacker addPropertyChangeLister and removePropertyChangeListener methods
Reviewed-by: lancea, chegar, mchung, ksrini
2012-10-17 21:05:36 +01:00
Paul Sandoz
9498132479 7198496: (sl) ServiceLoader.load(Class, null) behavior differs from spec
Reviewed-by: dholmes, alanb
2012-10-17 20:34:04 +01:00
Vladimir Kozlov
2d3b78abcc 8000623: tools/javac/Diagnostics/6769027/T6769027.java crashes in PSPromotionManager::copy_to_survivor_space
Fix type of method pointer load from vtable.

Reviewed-by: twisti, johnc, roland
2012-10-17 12:09:32 -07:00
Mandy Chung
15df2d2de5 8001012: jdk8 SKIP_BUILD_CYCLE=false build fails with BUILD_JAXWS=false
Reviewed-by: alanb, ohair
2012-10-17 12:03:20 -07:00
Maurizio Cimadamore
848ec301f2 7192245: Add parser support for default methods
Add support for 'default' keyword in modifier position

Reviewed-by: jjg
2012-10-17 16:43:26 +01:00
Nils Loodin
953bec36ab 8000617: It should be possible to allocate memory without the VM dying
Reviewed-by: coleenp, kamg
2012-10-17 17:36:48 +02:00
Jaroslav Bachorik
9c38da478a 6809322: javax.management.timer.Timer does not fire all notifications
Some notifications get dropped due to ConcurrentModificationException thrown in Timer.notifyAlarmClock() method.

Reviewed-by: dholmes, rbackman
2012-10-17 18:34:07 +04:00
Alexander Scherbatiy
45dd15087f 8000626: Implement dead key detection for KeyEvent on Linux
Reviewed-by: kizune
2012-10-17 10:16:26 -04:00
Alexander Scherbatiy
721264460a 8000969: [macosx] Directories are not deselected when JFileChooser has FILES_ONLY selection mode
Reviewed-by: rupashka
2012-10-17 17:33:26 +04:00
Neil Richards
a76d98e716 8000955: Hashtable.Entry.hashCode() does not conform to Map.Entry.hashCode() defined behaviour
Reviewed-by: mduigou, alanb
2012-10-17 13:35:22 +01:00
Alan Bateman
ed656de70f 8000685: (props) Properties.storeToXML/loadFromXML should only require UTF-8 and UTF-16 to be supported
Reviewed-by: mchung, chegar
2012-10-17 11:43:56 +01:00
Alexander Zuev
336948d514 7175704: [macosx] "8" PIT: NPE in GetDisplayMode fullscreen test
Reviewed-by: serb, leonidr
2012-10-17 14:32:15 +04:00
Jonathan Gibbons
4aedf7469a 8000673: remove dead code from HtmlWriter and subtypes
Reviewed-by: bpatel
2012-10-16 21:03:36 -07:00
Kurchi Subhra Hazra
56e63d98b9 7198073: (prefs) user prefs not saved [macosx]
Using class member field to get node instead of argument

Reviewed-by: alanb
2012-10-16 15:23:17 -07:00
Naoto Sato
2647f75cdd 8000245: SimpleDateFormat.format(date, StringBuffer, FieldPosition) doesn't work as expected with custom extensions
8000273: java.util.Locale.getDisplayVariant(Locale l) isn't transferred to the custom service provider
8000615: JRE adapter: timezone name of en_US is changed when extension directory is added

Reviewed-by: okutsu
2012-10-16 10:59:21 -07:00
Mikhail Cherkasov
1fd51fa05e 6818083: When DISPLAY is bad, InternalError thrown, not AWTError
Throw AWTError instead of InternalError if the DISPLAY is bad

Reviewed-by: anthony, serb
2012-10-16 20:11:19 +04:00
Jonathan Gibbons
a0b8f099ab 8000666: javadoc should write directly to Writer instead of composing strings
Reviewed-by: bpatel
2012-10-15 17:07:55 -07:00
Rob McKenna
a14592d891 8000487: Java JNDI connection library on ldap conn is not honoring configured timeout
Reviewed-by: vinnie
2012-10-15 22:34:35 +01:00
John Cuthbertson
9abdcd4a3c 8000831: Heap verification output incorrect/incomplete
Restore non-silent output of heap verification.

Reviewed-by: ysr, brutisso, jmasa
2012-10-15 10:02:42 -07:00
Rob McKenna
2dca3dc06b 8000817: Reinstate accidentally removed sleep() from ProcessBuilder/Basic.java
Reviewed-by: alanb, martin
2012-10-15 03:26:11 +01:00
Stephen Flores
037bcf1683 7194449: String resources for Key Tool and Policy Tool should be in their respective packages
Reviewed-by: alanb, weijun, mullan
2012-10-14 22:58:59 +01:00
Jim Gish
48ba63e9e0 7146552: java/util/logging/LoggingMXBeanTest.java failing intermittently
Reviewed-by: alanb, mchung
2012-10-13 10:15:57 +01:00
Lana Steuck
ff931a19c1 Merge 2012-10-12 14:53:50 -07:00
Lana Steuck
3567fc5460 Merge 2012-10-12 14:52:24 -07:00
Lana Steuck
c691ebd027 Merge 2012-10-12 14:50:07 -07:00
Lana Steuck
22b345adc6 Merge 2012-10-12 14:47:26 -07:00
Lana Steuck
0a7c808a56 Merge 2012-10-12 14:46:53 -07:00
Lana Steuck
ec8b85166e Merge 2012-10-12 14:46:47 -07:00
Alejandro Murillo
515f1281e1 8000834: new hotspot build - hs25-b06
Reviewed-by: jcoomes
2012-10-12 14:06:27 -07:00
Alejandro Murillo
d586b5d037 Added tag hs25-b05 for changeset 29bfe6c53630 2012-10-12 13:55:53 -07:00
Alejandro Murillo
62bcdf7ecd Merge 2012-10-12 13:55:52 -07:00
Gary Collins
3a32124e5c Merge 2012-10-12 11:31:27 -07:00
Gary Collins
ad3844358d Merge 2012-10-12 10:49:39 -07:00
Vladimir Kozlov
5f132a5ec3 Merge 2012-10-12 09:22:52 -07:00
Konstantin Shefov
2cae43552d 7184326: TEST_BUG: java/awt/Frame/7024749/bug7024749.java has a typo
Reviewed-by: anthony
2012-10-12 18:46:15 +04:00
Lana Steuck
05990a73d8 Merge 2012-10-11 17:00:54 -07:00
Lana Steuck
967c2d5685 Merge 2012-10-11 16:59:50 -07:00
Lana Steuck
7a8796bd49 Merge 2012-10-11 16:57:31 -07:00
Lance Andersen
2a56b6aa5a 8000763: use XXX.valueOf methods instead of constructors
Reviewed-by: mchung, forax
2012-10-11 18:46:31 -04:00
Abhijit Saha
6412317f9a Merge 2012-10-11 15:30:23 -07:00
Abhijit Saha
402fd01231 Merge 2012-10-11 15:29:16 -07:00
Christian Thalinger
222b2457ed 8000740: remove LinkWellKnownClasses
Reviewed-by: kvn, jrose
2012-10-11 14:46:20 -07:00
Jiangli Zhou
7757ae0cbf 8000459: assert(java_lang_String::is_instance(entry)) failure with various mlvm tests
Remove unneeded assert.

Reviewed-by: sspitsyn, coleenp
2012-10-11 14:36:46 -04:00
Rob McKenna
7b940bac40 7152183: TEST_BUG: java/lang/ProcessBuilder/Basic.java failing intermittently [sol]
Reviewed-by: alanb, martin, dholmes
2012-10-11 18:24:38 +01:00
David Katleman
7724283600 Added tag jdk8-b60 for changeset e8ce51f159dd 2012-10-11 09:50:52 -07:00
David Katleman
dd1899ba62 Added tag jdk8-b60 for changeset fd85bb97232e 2012-10-11 09:50:14 -07:00
David Katleman
7778b7d006 Added tag jdk8-b60 for changeset ad9498bbcc27 2012-10-11 09:49:47 -07:00
David Katleman
6380aca7b2 Added tag jdk8-b60 for changeset 77de918f1de3 2012-10-11 09:49:41 -07:00
David Katleman
2f003be07e Added tag jdk8-b60 for changeset 2805a3e211f3 2012-10-11 09:49:18 -07:00
David Katleman
afe29376fe Added tag jdk8-b60 for changeset 708d4b770214 2012-10-11 09:49:03 -07:00
David Katleman
d78b757097 Added tag jdk8-b60 for changeset a11476021d05 2012-10-11 09:48:55 -07:00
Keith McGuigan
6563cda42b 7200776: Implement default methods in interfaces
Add generic type analysis and default method selection algorithms

Reviewed-by: coleenp, acorn
2012-10-11 12:25:42 -04:00
Roland Westrelin
74ea92ce42 8000753: compiler/6912517 crashes on 64bit sparc with compressed oops off
Code generated by c1 for getClass intrinsic broken when klass field is loaded on 64bit with compressed klass off.

Reviewed-by: kvn
2012-10-11 18:21:01 +02:00
Dan Xu
6e283062c6 7186817: Remove Windows 95/98/ME Support
Reviewed-by: alanb
2012-10-11 11:47:05 +01:00
Jonathan Gibbons
ec5ee59931 8000310: Clean up use of StringBuffer in langtools
Reviewed-by: bpatel
2012-10-10 18:44:21 -07:00
Jonathan Gibbons
8b895ea856 8000418: javadoc should used a standard "generated by javadoc" string
Reviewed-by: bpatel
2012-10-10 18:34:46 -07:00
Jayashree Viswanathan
9551f94d32 8000743: docencoding not available to stylesheet
Reviewed-by: jjg
2012-10-10 18:08:19 -07:00
Jonathan Gibbons
680ffebcb6 8000665: fix "internal API" comments on javadoc files
Reviewed-by: darcy
2012-10-10 16:48:21 -07:00
David Katleman
257d0ce0f2 Merge 2012-10-10 14:47:07 -07:00
Lance Andersen
a446a98f53 8000712: Remove unused fields in SyncFactory
Reviewed-by: mchung
2012-10-10 17:34:27 -04:00
Abhijit Saha
93e31619c4 Merge 2012-10-10 14:31:07 -07:00
Abhijit Saha
2f3ac59e81 Merge 2012-10-10 14:28:08 -07:00
Alan Bateman
d1635b4499 7192274: Deprecate LogManager addPropertyChangeListener and removePropertyChangeLister methods
Reviewed-by: mchung, lancea, chegar
2012-10-10 20:47:12 +01:00
Joseph Provino
c5eaaaa070 7189254: Change makefiles for more flexibility to override defaults
Change makefiles so that targets and parameters can be overridden by alternate makefiles.

Reviewed-by: dholmes, coleenp
2012-10-10 14:35:58 -04:00
Lance Andersen
2a6e8cc962 8000687: Correct javadoc typo for getLogWriter and setLogWriter
Reviewed-by: alanb
2012-10-10 11:15:27 -04:00
Jonathan Gibbons
b155b54a5e 8000208: fix langtools javadoc comment issues
Reviewed-by: bpatel, mcimadamore
2012-10-09 19:31:58 -07:00
Jonathan Gibbons
36c3915257 8000663: clean up langtools imports
Reviewed-by: darcy
2012-10-09 19:10:00 -07:00
Goetz Lindenmaier
f28ac57f94 8000592: Improve adlc usability
Several changes to adlc to improve its usability

Reviewed-by: kvn
2012-10-09 16:09:31 -07:00
Joe Wang
0b25975fcd 8000172: 2 SAX features does not work properly
When external dtd is not loaded, skippedEntity event should be reported for entity references.

Reviewed-by: lancea
2012-10-09 14:19:11 -07:00
Stefan Karlsson
724e5ecfb3 8000659: NPG: ClassCastExceptions are unexpectedly thrown when testing nashorn
Treat the oops in invoke_method_table() as strong roots when ClassUnloading is enabled.

Reviewed-by: kamg, coleenp
2012-10-09 22:12:25 +02:00
Vladimir Ivanov
6674423523 7199654: Remove LoadUI2LNode
Removed LoadUI2L node from Ideal nodes, use match rule in .ad files instead.

Reviewed-by: kvn
2012-10-09 12:40:05 -07:00
Sean Coffey
63128f0e6d 7196086: update copyright years for files in corba repository (JDK 8)
Reviewed-by: lancea
2012-10-09 20:14:36 +01:00
Sean Coffey
23b1ff04af 7181793: Socket getOutputStream create streams that cannot be GC'ed until Socket is closed
Reviewed-by: alanb, chegar
2012-10-09 19:45:17 +01:00
Mikael Vidstedt
769dd50182 7197424: update copyright year to match last edit in jdk8 hotspot repository
Update copyright year to 2012 for relevant files

Reviewed-by: dholmes, coleenp
2012-10-09 10:09:34 -07:00
Leonid Romanov
743e5c0d91 7124321: [macosx] TrayIcon MouseListener is never triggered
Reviewed-by: anthony
2012-10-09 20:59:41 +04:00
Naoto Sato
04816adee5 7200341: DateFormatSymbols.hashCode() throws ArrayIndexOutOfBoundsException in some circumstances
Reviewed-by: okutsu
2012-10-09 09:59:05 -07:00
Leonid Romanov
63a30e3268 7185280: Jre7cert: focusgained does not get called for all focus req when do alt + tab
Reviewed-by: anthony
2012-10-09 18:00:58 +04:00
Lance Andersen
2a3853c1b9 7197395: Add @Deprecated to all deprecated methods to eliminate compiler warnings in JDBC
Reviewed-by: alanb, smarks
2012-10-09 08:58:27 -04:00
Alan Bateman
511c6abf08 7173494: some jdk tests are not run in test/Makefile
Reviewed-by: chegar, mchung, mduigou, iris
2012-10-09 13:28:32 +01:00
Alan Bateman
b807a9bf59 7173494: some jdk tests are not run in test/Makefile
Reviewed-by: chegar, mchung, mduigou, iris
2012-10-09 13:25:27 +01:00
Sean Coffey
fb1294fec5 7196533: TimeZone.getDefault() slow due to synchronization bottleneck
Reviewed-by: okutsu
2012-10-09 12:50:52 +01:00
Roland Westrelin
61eb5a0549 7054512: Compress class pointers after perm gen removal
Support of compress class pointers in the compilers.

Reviewed-by: kvn, twisti
2012-10-09 10:11:38 +02:00
Mark Wielaard
ec0a9ee8a6 8000622: Forgot to hg add and check in test for JDK-7170638
Add the test

Reviewed-by: coleenp, kamg
2012-10-09 02:42:16 -04:00
David Holmes
183fdef181 8000461: Top level build doesn't pass OPENJDK=true through to the hotspot build
Add OPENJDK to the COMMON_BUILD_ARGUMENTS

Reviewed-by: tbell
2012-10-09 02:08:54 -04:00
Rickard Bäckman
25e07fb041 Merge 2012-10-09 07:41:27 +02:00
Christian Thalinger
7162ad011c 8000263: JSR 292: signature types may appear to be unloaded
Reviewed-by: kvn, jrose
2012-10-08 17:04:00 -07:00
Yumin Qi
92e727c8e4 Merge 2012-10-08 16:59:44 -07:00
Yumin Qi
b2cf8c4cb0 8000332: SA ClassDump throws exception after permgen removal
In ClassWrite.writeFields(), fields count was mistakenly set to fields length which overflow the array index. Also removed a file which is leftover from 6879063 changeset.

Reviewed-by: coleenp, sspitsyn
2012-10-08 16:48:52 -07:00
Lana Steuck
babd792880 Merge 2012-10-08 15:40:27 -07:00
Lana Steuck
703702096b Merge 2012-10-08 15:39:33 -07:00
Lana Steuck
e99b3f4ffe Merge 2012-10-08 15:38:19 -07:00
Lana Steuck
e86fa474a7 Merge 2012-10-08 15:37:37 -07:00
Lana Steuck
6bf8610fc8 Merge 2012-10-08 15:36:02 -07:00
Vladimir Ivanov
b1d745897b 8000313: C2 should use jlong for 64bit values
Replace all occurrences of long with jlong in C2 code.

Reviewed-by: kvn, twisti
2012-10-08 13:02:13 -07:00
Mikael Gerdin
845106af13 8000358: G1: metaspace information not printed in PrintHeapAtGC output nor in hs_err file
Missing call to MetaspaceAux::print_on() in G1CollectedHeap::print_on().

Reviewed-by: azeemj, jmasa
2012-10-08 09:12:31 -07:00
Mark Wielaard
959d0a9ebb 7170638: Use DTRACE_PROBE[N] in JNI Set and SetStatic Field
Don't use HS_DTRACE_PROBE_CDECL_N and HS_DTRACE_PROBE_N directly.

Reviewed-by: coleenp, kamg, dholmes, sspitsyn
2012-10-08 09:18:54 -04:00
Weijun Wang
a5312cbadb 7201053: Krb5LoginModule shows NPE when both useTicketCache and storeKey are set to true
Reviewed-by: mullan
2012-10-08 10:42:43 +08:00
Alan Bateman
18688c3a56 8000354: (props) Properties.storeToXML/loadFromXML need to allow for alternative implementations
Reviewed-by: mchung, forax
2012-10-06 13:56:16 +01:00
Maurizio Cimadamore
319150fde0 7177386: Add attribution support for method references
Add type-checking/lookup routines for method references

Reviewed-by: jjg, dlsmith
2012-10-06 10:35:38 +01:00
Kaushik Srenevasan
fd15ca5e44 7127708: G1: change task num types from int to uint in concurrent mark
Change the type of various task num fields, parameters etc to unsigned and rename them to be more consistent with the other collectors. Code changes were also reviewed by Vitaly Davidovich.

Reviewed-by: johnc
2012-10-06 01:17:44 -07:00
Vladimir Ivanov
2467d2f247 8000485: Hotspot build fails in Solaris Studio IDE when building dtrace
Prepend '.' to the existing native library path

Reviewed-by: kvn, sspitsyn
2012-10-05 19:44:49 -07:00
Vladimir Ivanov
81be4b2f15 8000232: NPG: SIGSEGV in Dependencies::DepStream::check_klass_dependency on solaris-x64
Move decoding into Dependencies::DepStream::argument, so no caller could see encoded context value (NULL) anymore.

Reviewed-by: twisti, kvn
2012-10-05 19:29:29 -07:00
Vladimir Ivanov
822deb6ee6 7177003: C1: LogCompilation support
Add LogCompilation support in C1 - both client and tiered mode.

Reviewed-by: twisti, kvn
2012-10-05 18:57:10 -07:00
Bhavesh Patel
83042670bb 4696488: javadoc doesn't handle UNC paths for destination directory
Reviewed-by: jjg
2012-10-05 14:21:09 -07:00
Bhavesh Patel
8949fccef9 7068595: html files in class-use dir do not get loaded correctly when Frames link is clicked
Reviewed-by: jjg
2012-10-05 14:16:32 -07:00
Bhavesh Patel
b32f33b69a 7132631: The help-doc.html generates an invalid link to constant-values.html
Reviewed-by: jjg
2012-10-05 14:13:47 -07:00
Alejandro Murillo
9e9db7f831 8000498: new hotspot build - hs25-b05
Reviewed-by: jcoomes
2012-10-05 13:37:08 -07:00
Alejandro Murillo
10f5782aff Added tag hs25-b04 for changeset 21b044417a2e 2012-10-05 13:28:17 -07:00
Alejandro Murillo
81a35920fd Merge 2012-10-05 13:28:16 -07:00
Vladimir Kozlov
85e21b3a30 Merge 2012-10-05 10:03:56 -07:00
Naoto Sato
eeac68872b 7198834: HOST Adapter: one extra empty space in the end of the pattern string
Reviewed-by: okutsu
2012-10-05 09:57:50 -07:00
Jaroslav Bachorik
496da3014d 7195779: javax/management/remote/mandatory/threads/ExecutorTest.java fails intermittently, NPE in tie class
Reviewed-by: alanb, coffeys
2012-10-05 15:08:10 +01:00
Maurizio Cimadamore
72f39bf20c 7177385: Add attribution support for lambda expressions
Add support for function descriptor lookup, functional interface inference and lambda expression type-checking

Reviewed-by: jjg, dlsmith
2012-10-05 14:35:24 +01:00
Vadim Pakhnushev
4e6d9a8f7e 8000176: Need automated test for checking scale quality
Reviewed-by: prr, bae
2012-10-05 16:21:01 +04:00
Naoto Sato
0dcbdaafba Merge 2012-10-04 21:05:06 -07:00
Naoto Sato
efea116274 7200119: Collator.getAvailableLocales() doesn't return Locale.US
Reviewed-by: okutsu
2012-10-04 21:03:36 -07:00
David Holmes
5ad6116c61 Merge 2012-10-04 20:09:46 -04:00
David Holmes
363fac131c 7199186: runtime/7194254/Test7194254.java fails - wrong test name on @run
Reviewed-by: kvn, twisti
2012-10-04 19:52:09 -04:00
David Katleman
01465313ff Added tag jdk8-b59 for changeset aded5e617602 2012-10-04 14:36:14 -07:00
David Katleman
ab2c8f811a Added tag jdk8-b59 for changeset 6408a49a3a6b 2012-10-04 14:35:38 -07:00
David Katleman
c12876f991 Added tag jdk8-b59 for changeset 6fa036b39eb9 2012-10-04 14:35:15 -07:00
David Katleman
56e12ecc3a Added tag jdk8-b59 for changeset e31f9b0d349f 2012-10-04 14:35:10 -07:00
David Katleman
a09b38f3e4 Added tag jdk8-b59 for changeset 22fa34424aa9 2012-10-04 14:34:51 -07:00
David Katleman
f67940dd4b Added tag jdk8-b59 for changeset 173d83d9c9d7 2012-10-04 14:34:34 -07:00
David Katleman
447af5923f Added tag jdk8-b59 for changeset ba9e9ff8d8ef 2012-10-04 14:34:31 -07:00
Jon Masamitsu
f33eb9a9bd Merge 2012-10-04 14:01:07 -07:00
Rob McKenna
2102c5a5b6 7184932: Remove the temporary Selector usage in the NIO socket adapters
Reviewed-by: alanb
2012-10-04 19:53:08 +01:00
Jon Masamitsu
4fa0ac5256 7198873: NPG: VM Does not unload classes with UseConcMarkSweepGC
Reviewed-by: johnc, mgerdin, jwilhelm
2012-10-04 10:40:23 -07:00
Naoto Sato
3caba25f6b 7196799: CLDR adapter can not be invoked when region code is specified in Locale
7197573: java/util/Locale/LocaleProviders.sh failed

Reviewed-by: okutsu
2012-10-04 10:04:56 -07:00
John Cuthbertson
ed98ea0a88 8000311: G1: ParallelGCThreads==0 broken
Divide by zero error, if ParallelGCThreads is 0, when adjusting the PLAB size.

Reviewed-by: jmasa, jcoomes
2012-10-04 10:04:13 -07:00
Nils Eliasson
e228ec4078 8000102: Resolve include conflicts
Removing include of c1/c1_runtime.hpp and opto/runtime.hpp from all os-files.

Reviewed-by: kvn
2012-10-04 06:31:07 -07:00
Rickard Bäckman
e1d995ab86 7127792: Add the ability to change an existing PeriodicTask's execution interval
Enables dynamic enrollment / disenrollment from the PeriodicTasks in WatcherThread.

Reviewed-by: dholmes, mgronlun
2012-10-04 14:55:57 +02:00
Harold Seigel
284879b3fc 6884973: java -XX:Atomics=2 crashes
Remove buggy experimental option

Reviewed-by: acorn, coleenp
2012-10-04 08:43:14 -04:00
Harold Seigel
5a5c90dd1c 7198519: Broken build, hotspot-rt win USE_PRECOMPILED_HEADER=0
Uncommented out include for sys/stat.h and deleted include statements that were commented out.

Reviewed-by: coleenp, acorn, dholmes
2012-10-04 08:38:06 -04:00
Maurizio Cimadamore
c0e2ed86c1 7177387: Add target-typing support in method context
Add support for deferred types and speculative attribution

Reviewed-by: jjg, dlsmith
2012-10-04 13:04:53 +01:00
Vinnie Ryan
d44a2451e6 Merge 2012-10-04 11:54:16 +01:00
Yuka Kamiya
700a5c6ee0 7201151: Fix Contribution : Java cannot get Windows's IME name correctly
Reviewed-by: okutsu
2012-10-04 18:05:37 +09:00
Yuka Kamiya
64b949310f 7196316: Wrong rounding mode in DecimalFormat after deserialization
Reviewed-by: okutsu
2012-10-04 11:36:22 +09:00
David Katleman
9a3320a64e Merge 2012-10-03 15:31:59 -07:00
Jesper Wilhelmsson
3506d44c57 8000351: Tenuring threshold should be unsigned
Change the flags and variables related to tenuring threshold to be unsigned

Reviewed-by: jmasa, johnc
2012-10-03 20:31:41 +02:00
Oleg Pekhovskiy
ebff918cc7 7171412: awt Choice doesn't fire ItemStateChange when selecting item after select() call
Reviewed-by: art, denis
2012-10-03 21:01:47 +04:00
Jon Masamitsu
88ab075a6d 7199349: NPG: PS: Crash seen in jprt
Reviewed-by: johnc
2012-10-03 08:08:52 -07:00
Dan Xu
684361a3d9 6910472: Typo in : java.io.ObjectOutputStream.reset() "refered"
Reviewed-by: dholmes, alanb
2012-10-03 09:03:53 +01:00
Yuka Kamiya
c3026d4a59 7104012: AIOOBE from RuleBasedBreakIterator.lookupState for some suppl. chars
Reviewed-by: okutsu
2012-10-03 15:11:28 +09:00
Vladimir Kozlov
8d8d00ff00 7199742: A lot of C2 OSR compilations of the same method's bci
Don't clone head of OSR loop.

Reviewed-by: jrose, twisti
2012-10-02 14:49:21 -07:00
Vladimir Kozlov
e8332c76e9 7201026: add vector for shift count
Add generation of vectors for scalar shift count.

Reviewed-by: roland, twisti, dlong
2012-10-02 12:25:13 -07:00
Alan Bateman
30d429cc25 8000268: sun/security/provider/X509Factory/BigCRL.java failing on Linux 32-bit
Reviewed-by: mullan
2012-10-02 12:23:16 +01:00
Paul Sandoz
25c830b9d5 7197642: (sl) ServiceLoader.load(null) doesn't throw NPE
Reviewed-by: alanb
2012-10-02 10:36:05 +01:00
Olivier Lagneau
b6ea800f9b 7050528: Improve performance of java.text.DecimalFormat.format() call stack
Reviewed-by: darcy
2012-10-02 10:11:57 +01:00
Christian Thalinger
59b8489a0c 7200949: JSR 292: rubybench/bench/time/bench_base64.rb fails with jruby.jar not on boot class path
Reviewed-by: jrose, kvn
2012-10-01 14:50:10 -07:00
Clemens Eisserer
3d880fa194 7188093: closed/sun/java2d/pipe/ScaleQualityTest.java fails
Reviewed-by: prr, flar
2012-10-01 13:07:54 -07:00
John Cuthbertson
aac13806ea 8000244: G1: Ergonomically set MarkStackSize and use virtual space for global marking stack
Set the value of MarkStackSize to a value based on the number of parallel marking threads with a reasonable minimum. Expand the marking stack if we have to restart marking due to an overflow up to a reasonable maximum. Allocate the underlying space for the marking stack from virtual memory.

Reviewed-by: jmasa, brutisso
2012-10-01 09:28:13 -07:00
Alan Bateman
9b8e06e699 8000269: Cleanup javadoc warnings
Reviewed-by: lancea, darcy, ulfzibis, iris, naoto, dholmes
2012-10-01 15:36:57 +01:00
Stefan Karlsson
7ccbee4177 8000228: Missing call to cr() when printing entry_point in nmethod, in os::print_location
Reviewed-by: brutisso, neliasso
2012-10-01 13:29:11 +02:00
Stefan Karlsson
3e967d8f8d 8000227: [obj|type]ArrayKlass::oop_print_on prints one line to tty instead of the provided output stream
Reviewed-by: brutisso, sla, jmasa, coleenp
2012-10-01 13:29:11 +02:00
Kevin Walls
80d5f4b66d 7200145: runtime/7196045/Test7196045.java fails with No class provided for `main'
Reviewed-by: dholmes, dsamersoff
2012-09-30 23:24:12 +01:00
Jan Lahoda
ed2bca8140 7198582: (java) Minor refactor of JavacParser
Reviewed-by: jjg, ksrini
2012-09-29 09:00:58 -07:00
Dmitry Samersoff
8af0bcb7fe 7186723: TEST_BUG: Race condition in sun/management/jmxremote/startstop/JMXStartStopTest.sh
Make test self-terminating and independent to cygwin/mks kill behaviour

Reviewed-by: sspitsyn, alanb
2012-09-29 15:44:06 +04:00
Coleen Phillimore
28047d6a0f 8000213: NPG: Should have renamed arrayKlass and typeArrayKlass
Capitalize these metadata types (and objArrayKlass)

Reviewed-by: stefank, twisti, kvn
2012-09-29 06:40:00 -04:00
Lana Steuck
b3aacc5029 Merge 2012-09-28 14:57:31 -07:00
Lana Steuck
4156261cf3 Merge 2012-09-28 14:56:38 -07:00
Alejandro Murillo
9972f3d338 8000251: new hotspot build - hs25-b04
Reviewed-by: jcoomes
2012-09-28 14:36:20 -07:00
Alejandro Murillo
10e48f968d Added tag hs25-b03 for changeset 4d2ca6fb1285 2012-09-28 13:39:41 -07:00
Lana Steuck
80b413a5b5 Merge 2012-09-28 11:45:43 -07:00
Joel Borggrén-Franck
1c489c5ec5 7199925: Separate compilation breaks check that elements have a default for the containing annotation
Reviewed-by: jjg, mcimadamore
2012-09-28 11:39:29 -07:00
Lana Steuck
9c0a331d78 Merge 2012-09-28 10:54:12 -07:00
Maurizio Cimadamore
8fbd614bf3 8000241: langtools doesn't build
Bad merge with langtools tip caused build glitch

Reviewed-by: jjg
2012-09-28 18:50:40 +01:00
Vladimir Kozlov
fbd1f6e3be Merge 2012-09-28 10:16:29 -07:00
Maurizio Cimadamore
7f58c7c7ad 8000233: Fix issues in recent push
Forgot to incorporate review comments in pushed changesets

Reviewed-by: jjg
2012-09-28 16:56:53 +01:00
Stefan Karlsson
ddd6138b95 8000230: Change os::print_location to be more descriptive when a location is pointing into an object
Reviewed-by: mgerdin, twisti
2012-09-28 15:34:32 +02:00
Stefan Karlsson
74f09797c9 Merge 2012-10-01 11:07:31 +02:00
Stefan Karlsson
ebb8d12592 Merge 2012-09-28 14:14:25 +02:00
Alexander Scherbatiy
01025ec99e 7197619: Using modifiers for the dead key detection on Windows
Reviewed-by: bagiras, leonidr
2012-09-28 14:54:04 +04:00
Dan Xu
f41a30cb5c 6950237: Test java/nio/file/Path/CopyAndMove.java does not work correctly when test dir in on VFAT
Reviewed-by: alanb
2012-09-28 11:14:20 +01:00
Weijun Wang
7ffcd7343f 7200682: TEST_BUG: keytool/autotest.sh still has problems with libsoftokn.so
Reviewed-by: alanb, smarks
2012-09-28 17:15:48 +08:00
Yuka Kamiya
5a3a2dc308 7069824: Support for BCP47 locale matching
Reviewed-by: naoto, okutsu
2012-09-28 14:14:26 +09:00
Rob McKenna
152b0d6143 7199219: Proxy-Connection headers set incorrectly when a HttpClient is retrieved from the Keep Alive Cache
Reviewed-by: chegar
2012-09-28 04:39:02 +01:00
Vladimir Kozlov
d560ac115b 7198084: NPG: distance is too big for short branches in test_invocation_counter_for_mdp()
Use long branches in test_invocation_counter_for_mdp()

Reviewed-by: twisti
2012-09-27 15:49:48 -07:00
John Cuthbertson
157b8fa41b 7200261: G1: Liveness counting inconsistencies during marking verification
The clipping code in the routine that sets the bits for a range of cards, in the liveness accounting verification code was incorrect. It set all the bits in the card bitmap from the given starting index which would lead to spurious marking verification failures.

Reviewed-by: brutisso, jwilhelm, jmasa
2012-09-27 15:44:01 -07:00
Rob McKenna
80d3fce897 7199862: Make sure that a connection is still alive when retrieved from KeepAliveCache in certain cases
Reviewed-by: chegar
2012-09-27 22:35:07 +01:00
David Katleman
20911d0ab6 Added tag jdk8-b58 for changeset a54f29461808 2012-09-27 11:26:04 -07:00
David Katleman
575a9f82e2 Added tag jdk8-b58 for changeset 17beb247c83a 2012-09-27 11:25:26 -07:00
David Katleman
d719297988 Added tag jdk8-b58 for changeset e033f1ff319a 2012-09-27 11:25:01 -07:00
David Katleman
b62f8968fe Added tag jdk8-b58 for changeset 63e6a7c76188 2012-09-27 11:24:55 -07:00
David Katleman
291e3f0b9a Added tag jdk8-b58 for changeset f75a1b3efb69 2012-09-27 11:24:35 -07:00
David Katleman
6aeb6eaccb Added tag jdk8-b58 for changeset 84521b7fdb66 2012-09-27 11:24:19 -07:00
David Katleman
ad23559529 Added tag jdk8-b58 for changeset fc1beab39b2a 2012-09-27 11:24:12 -07:00
Andrew John Hughes
0fa038b4e0 7201205: Add Makefile configuration option to build with unlimited crypto in OpenJDK
Allow OpenJDK to use the unlimited crypto policy.

Reviewed-by: wetmore, ohair
2012-09-27 17:55:10 +01:00
Bharadwaj Yadavalli
d5d2e78faa 7193318: C2: remove number of inputs requirement from Node's new operator
Deleted placement new operator of Node - node(size_t, Compile *, int).

Reviewed-by: kvn, twisti
2012-09-27 09:38:42 -07:00
Dmitry Samersoff
47a8760b93 Merge 2012-09-27 20:22:57 +04:00
Alan Bateman
903c4c0c7f 7200742: (se) Selector.select does not block when starting Coherence (sol)
Reviewed-by: chegar
2012-09-27 10:30:56 +01:00
David Katleman
cec06a0b40 Merge 2012-09-26 22:22:51 -07:00
Xue-Lei Andrew Fan
9c642ad1d2 7200295: CertificateRequest message is wrapping when using large numbers of Certs
Reviewed-by: wetmore
2012-09-26 21:05:40 -07:00
Alejandro Murillo
7be853ba86 Merge 2012-09-26 13:04:06 -07:00
Abhijit Saha
989c8e0201 7199488: [TEST] runtime/7158800/InternTest.java failed due to false-positive on PID match
Reviewed-by: coleenp
2012-09-26 09:54:11 -07:00
Alexander Scherbatiy
8bb2411d34 7124515: [macosx] Test fail like 6366126 (ArrayIndexOutOfBoundException pressing ENTER after removing items)
Reviewed-by: serb, anthony
2012-09-26 18:59:12 +04:00
Maurizio Cimadamore
5f629e503c 7188968: New instance creation expression using diamond is checked twice
Unify method and constructor check logic

Reviewed-by: jjg
2012-09-26 14:22:41 +01:00
Vladimir Kozlov
973fdc81a1 7200264: 7192963 changes disabled shift vectors
Replaced is_vector_use() call with explicit check for vector shift's count.

Reviewed-by: twisti, roland, dlong, vlivanov
2012-09-25 15:48:17 -07:00
Jonathan Gibbons
6a310eb049 7196464: upgrade JavaCompiler.shouldStopPolicy to accomodate policies in face of error and no error
Reviewed-by: mcimadamore
2012-09-25 13:11:05 -07:00
Vicente Romero
c2e8d5a017 7193657: provide internal ArrayUtils class to simplify common usage of arrays in javac
Reviewed-by: mcimadamore, jjg
2012-09-25 13:06:58 -07:00
Abhijit Saha
7bd671250d Merge 2012-09-25 11:48:00 -07:00
Abhijit Saha
bd3cd1709f Merge 2012-09-25 11:47:04 -07:00
Valerie Peng
6f6f1d3bea 7199939: DSA 576 and 640 bit keys fail when initializing for No precomputed parameters
Fixed initialize(int, SecureRandom) call to not error out when no precomputed params available.

Reviewed-by: vinnie
2012-09-25 11:31:17 -07:00
Valerie Peng
0733ebe2f2 7199941: test about AES/ECB mode fails
Fixed the problem of field "blockMode" not having correct value for AES algorithms.

Reviewed-by: vinnie
2012-09-25 11:27:42 -07:00
Vladimir Kozlov
9c3545d4fb 7200233: C2: can't use expand rules for vector instruction rules
Added missed _bottom_type set in ArchDesc::defineExpand() and missed vector nodes in MatchRule::is_vector().

Reviewed-by: twisti, roland, dlong
2012-09-25 10:41:15 -07:00
Bengt Rutisson
ceccaf4577 Merge 2012-09-25 18:28:16 +02:00
Jennifer Godinez
5f949b5751 7158350: [macosx] Strange results of SwingUIText printing
Reviewed-by: bae, prr
2012-09-25 09:18:27 -07:00
Jon Masamitsu
1ea36e2324 7200615: NPG: optimized VM build is broken
Reviewed-by: kvn
2012-09-25 07:05:55 -07:00
Bengt Rutisson
fcae0353d2 7200470: KeepAliveClosure not needed in CodeCache::do_unloading
Removed the unused keep_alive parameter

Reviewed-by: stefank, dholmes, kamg, coleenp
2012-09-25 14:58:12 +02:00
Fredrik Ohrstrom
70f397b4a2 7200065: Cross-compilation changes to support the new-build
Reviewed-by: dholmes, ohair
2012-09-25 07:58:42 -04:00
Maurizio Cimadamore
f49f25c60d 7177306: Regression: unchecked method call does not erase return type
Spurious extra call to Attr.checkMethod when method call is unchecked

Reviewed-by: jjg, dlsmith
2012-09-25 11:56:46 +01:00
Maurizio Cimadamore
d4c5fca16a 7175433: Inference cleanup: add helper class to handle inference variables
Add class to handle inference variables instantiation and associated info

Reviewed-by: jjg, dlsmith
2012-09-25 11:55:34 +01:00
Maurizio Cimadamore
07155682a1 7194586: Add back-end support for invokedynamic
Add support for invokedynamic bytecode instruction; includes suppot for generation of all related classfile attributes

Reviewed-by: jjg
2012-09-25 11:53:18 +01:00
Maurizio Cimadamore
8be3009d08 7193913: Cleanup Resolve.findMethod
Refactor method lookup logic in Resolve.findMethod

Reviewed-by: jjg
2012-09-25 11:52:37 +01:00
Lana Steuck
8cdc205b73 Merge 2012-09-24 21:11:11 -07:00
Lana Steuck
74be91da45 Merge 2012-09-24 21:10:24 -07:00
Yumin Qi
d540138a54 Merge 2012-09-24 20:04:19 -07:00
Vladimir Danushevsky
2e051041e3 Merge 2012-09-24 19:00:55 -04:00
Jonathan Gibbons
55ec94e302 7196462: JavacProcessingEnvironment should tolerate BasicJavacTask
Reviewed-by: mcimadamore
2012-09-24 14:04:34 -07:00
Yumin Qi
22544e7a7c 6879063: SA should use hsdis for disassembly
We should in SA to use hsdis for it like the JVM does to replace the current java based disassembler.

Reviewed-by: twisti, jrose, sla
2012-09-24 12:44:00 -07:00
Sergey Bylokhov
08c6d03264 7160627: [macosx] TextArea has wrong initial size
7124213: [macosx] pack() does ignore size of a component; doesn't on the other platforms

Reviewed-by: anthony, art
2012-09-24 21:33:41 +04:00
Leonid Romanov
914bc61d4b 7179349: [macosx] Java processes on Mac should not use default Apple icon
Reviewed-by: anthony
2012-09-24 18:24:30 +04:00
Jaroslav Bachorik
12bf2c7d52 7192975: Issue with JMX reflection
Make security check unconditional

Reviewed-by: ahgross, asaha
2012-09-24 17:00:40 +04:00
Frederic Parain
898b21ebf3 7198296: Problem with classloader in JMX
Wb classes have to be available for hotspot tests

Co-authored-by: Daniel Fuchs <daniel.fuchs@oracle.com>
Co-authored-by: Jean-Francois Denise <jean-francois.denise@oracle.com>
Reviewed-by: ahgross, asaha
2012-09-24 16:15:27 +04:00
Leonid Romanov
0ea3bcf8a8 7124239: [macosx] sun.awt.SunToolkit.InfiniteLoop exception in realSync called from SwingTestHelper
Reviewed-by: anthony
2012-09-24 15:25:17 +04:00
Alejandro Murillo
d6538dc298 7200236: new hotspot build - hs25-b03
Reviewed-by: jcoomes
2012-09-21 14:39:56 -07:00
Alejandro Murillo
38c34d56b0 Added tag hs25-b02 for changeset b3b50cc0cb4d 2012-09-21 14:02:58 -07:00
Alejandro Murillo
6f3e1a0593 Merge 2012-09-21 14:02:57 -07:00
John Coomes
8cc4cb76b5 Merge 2012-09-21 13:14:22 -07:00
Kelly O'Hair
89f1772d07 7191703: jprt cannot build jdk on MacOSX
Reviewed-by: anthony
2012-09-21 12:22:52 -07:00
Alan Bateman
360754471c 7199551: (bf) CharBuffer.append(CharSequence) throws BufferOverflowException for read-only buffer
Reviewed-by: iris, dxu, chegar
2012-09-21 15:39:10 +01:00
Alexander Scherbatiy
aca74a151c 7199180: [macosx] Dead keys handling for input methods
Reviewed-by: kizune, anthony
2012-09-21 13:48:06 +04:00
Nils Loodin
8bc04a0b28 7200092: Make NMT a bit friendlier to work with
Reviewed-by: kvn, ysr, azeemj
2012-09-21 10:56:28 +02:00
John Coomes
1743a11163 7199082: write warning messages to stderr
Reviewed-by: ysr, dholmes, sla
2012-09-20 16:27:51 -07:00
John R Rose
0a735e76f6 7196190: Improve method of handling MethodHandles
Bind callers to caller-sensitive methods.

Reviewed-by: twisti, jjh, vlivanov, ahgross
2012-09-20 14:02:55 -07:00
Jon Masamitsu
5721eadb16 Merge 2012-09-20 13:49:27 -07:00
David Katleman
73016372e3 Added tag jdk8-b57 for changeset a4e282e892b6 2012-09-20 13:45:59 -07:00
David Katleman
10d4078b95 Added tag jdk8-b57 for changeset ad1e86451b3f 2012-09-20 13:45:18 -07:00
David Katleman
685f6679fe Added tag jdk8-b57 for changeset 8ac23c0c609c 2012-09-20 13:44:53 -07:00
David Katleman
1672690b20 Added tag jdk8-b57 for changeset 61be07ec4655 2012-09-20 13:44:47 -07:00
David Katleman
1f784d2ce5 Added tag jdk8-b57 for changeset 386342128efe 2012-09-20 13:44:28 -07:00
David Katleman
6da011c932 Added tag jdk8-b57 for changeset 9674d32cdc2a 2012-09-20 13:44:07 -07:00
David Katleman
638632979d Added tag jdk8-b57 for changeset b3dd9df01aa0 2012-09-20 13:44:03 -07:00
Kumar Srinivasan
71637b6902 7199614: (pack200) remove unused file
Reviewed-by: alanb
2012-09-20 13:01:01 -07:00
Jon Masamitsu
f6cc90e927 7199923: NPG: tools/javac/T7093325.java timeout
Reviewed-by: stefank, coleenp, kvn
2012-09-20 12:18:23 -07:00
John Cuthbertson
54412491e8 7190666: G1: assert(_unused == 0) failed: Inconsistency in PLAB stats
Reset the fields in ParGCAllocBuffer, that are used for accumulating values for the ResizePLAB sensors in PLABStats, to zero after flushing the values to the PLABStats fields. Flush PLABStats values only when retiring the final allocation buffers prior to disposing of a G1ParScanThreadState object, rather than when retiring every allocation buffer.

Reviewed-by: jwilhelm, jmasa, ysr
2012-09-20 09:52:56 -07:00
Vladislav Karnaukhov
211c061e3e 7123767: Wrong tooltip location in Multi-Monitor configurations
Reviewed-by: rupashka
2012-09-20 17:55:40 +04:00
Sean Chou
49aa62455c 7194184: JColorChooser swatch cannot accessed from keyboard
Reviewed-by: rupashka, alexsch
2012-09-20 17:39:47 +04:00
John Zavgren
374a36e20e 7193520: Removed references to Linux kernel version 2.2
Linux kernel version 2.2 isn't supported anymore.

Reviewed-by: chegar, dsamersoff, alanb
2012-09-20 09:36:55 -04:00
Kevin Walls
d37f7326ce Merge 2012-09-20 03:49:15 -07:00
John Cuthbertson
e78edc79b7 7193946: Move warnings associated with UseMemSetInBOT flag
The warnings associated with the UseMemSetInBOT flag are duplicated in CMS and G1. The separate warnings have been removed and single instance of the warning has been placed in a common location.

Reviewed-by: brutisso, ysr
2012-09-19 15:48:02 -07:00
David Katleman
1f5caa619e Merge 2012-09-19 15:47:06 -07:00
David Katleman
d08e6eb258 Merge 2012-09-19 15:46:32 -07:00
David Katleman
5221180d4e Merge 2012-09-19 15:45:53 -07:00
David Katleman
84e2bbbb3c Merge 2012-09-19 15:45:48 -07:00
David Katleman
ffd1ab1498 Merge 2012-09-19 15:44:50 -07:00
David Katleman
3390fc82dd Merge 2012-09-19 15:44:47 -07:00
Bill Pittore
8e0655095b 7195372: Wrong copyright in new files
Fixed copyrights

Reviewed-by: dholmes
2012-09-19 17:22:49 -04:00
Vladimir Kozlov
03d65ced3e 7198606: Improve VM optimization
Remove incorrect code in OptimizeFill optimization.

Reviewed-by: roland, twisti
2012-09-19 13:58:31 -07:00
John Coomes
df3f6e087e Merge 2012-09-19 16:18:55 -04:00
Lana Steuck
15bdd03998 Merge 2012-09-19 12:41:54 -07:00
Lana Steuck
b2e9ddaa89 Merge 2012-09-19 12:38:53 -07:00
Sergey Malenkov
1a3e1b43e0 7195917: XMLDecoder parsing at close-time should be improved
Reviewed-by: art, ahgross
2012-09-19 21:42:21 +04:00
Brandon Mitchell
6573cbf346 7016955: G1: remove the is_zeroed parameter from the HeapRegion constructor
The is_zeroed parameter is no longer used and so can be removed.

Reviewed-by: johnc, jmasa, brutisso
2012-09-19 08:48:10 -07:00
Yumin Qi
124ddb9b47 Merge 2012-09-19 08:41:30 -07:00
Kevin Walls
1c502686ea 7196045: Possible JVM deadlock in ThreadTimesClosure when using HotspotInternal non-public API
Reviewed-by: sspitsyn, dholmes
2012-09-19 15:24:32 +01:00
Chris Hegarty
4752833181 7199500: Minor typo in AbstractStringBuilder.java header
Reviewed-by: coffeys
2012-09-19 14:55:40 +01:00
Jim Gish
ae79d50df2 4722265: (spec str) StringBuffer.ensureCapacity() should mention that capacity is mutable
Add usage note to AbstractStringBuilder ensureCapacity()

Reviewed-by: mduigou, dholmes, chegar
2012-09-19 08:52:21 -04:00
David Holmes
921375e418 7199410: Remove files that were omitted from 7130909 changeset
Reviewed-by: ohair
2012-09-19 04:26:50 -04:00
Jon Masamitsu
37bddeb62b 7045397: NPG: Add freelists to class loader arenas
Reviewed-by: coleenp, stefank, jprovino, ohair
2012-09-18 23:35:42 -07:00
John Coomes
d8089b90e5 Merge 2012-09-18 19:44:39 -04:00
Mandy Chung
8159d98a99 7198070: Eliminate static dependency from JMX to java.beans.ConstructorProperties
Reviewed-by: alanb
2012-09-18 15:06:14 -07:00
Dan Xu
8831f6fde2 7195933: There is incorrect link to "Info-ZIP Application Note 970311" in doc page of Package java.util.zip
Correct a java doc link in java.util.zip package page

Reviewed-by: chegar, lancea, sherman
2012-09-18 14:45:09 -07:00
Jon Masamitsu
cf5f4f736f 7197557: NPG: nsk/sysdict/vm/stress/chain/chain004 hangs intermittently
Reviewed-by: johnc, ysr
2012-09-18 14:15:06 -07:00
Alan Bateman
3b337824c0 7190273: Deprecate com.sun.security.auth.callback.DialogCallbackHandler
Reviewed-by: mullan
2012-09-18 21:21:10 +01:00
Kelly O'Hair
f65906c1bc 7198329: Add $(sort) to object files used in links makes binarties more consistent
Reviewed-by: dholmes, tbell, erikj, ihse, ohrstrom
2012-09-18 13:15:28 -07:00
Kelly O'Hair
d5cd2350a8 7198325: Fix more $(sort) issues on lnk commands in makefiles, making binaries more consistent
7130909: Add a more general mechanism for customizing the build logic

Reviewed-by: dholmes, tbell, erikj, ihse, ohrstrom
2012-09-18 12:16:37 -07:00
Zhengyu Gu
b9f111d166 Merge 2012-09-18 11:37:26 -07:00
Kelly O'Hair
25cc8761f1 7197849: Update new build-infra makefiles
Reviewed-by: ihse, erikj, ohrstrom, tbell
2012-09-18 11:29:51 -07:00
Kelly O'Hair
075c55b713 7197849: Update new build-infra makefiles
Reviewed-by: ihse, erikj, ohrstrom, tbell
2012-09-18 11:29:44 -07:00
Kelly O'Hair
28f46567e4 7197849: Update new build-infra makefiles
Reviewed-by: ihse, erikj, ohrstrom, tbell
2012-09-18 11:29:37 -07:00
Kelly O'Hair
aa6143b6c3 7197849: Update new build-infra makefiles
Reviewed-by: ihse, erikj, ohrstrom, tbell
2012-09-18 11:29:31 -07:00
Kelly O'Hair
c363db8ed0 7197849: Update new build-infra makefiles
Reviewed-by: ihse, erikj, ohrstrom, tbell
2012-09-18 11:29:24 -07:00
Kelly O'Hair
228c21635b 7197849: Update new build-infra makefiles
Reviewed-by: ihse, erikj, ohrstrom, tbell
2012-09-18 11:29:16 -07:00
Mike Duigou
1e3c417915 7199249: TEST_BUG : Add /othervm to Collisions.java @run main with -D definitions
Reviewed-by: alanb
2012-09-18 11:04:12 -07:00
Yiming Wang
6b6dde5a11 7198984: Add java/text/Bidi/Bug6665028.java to ProblemList.txt
Reviewed-by: alanb
2012-09-18 10:34:36 -07:00
Kelly O'Hair
b74620c703 Merge 2012-09-18 10:25:20 -07:00
Serguei Spitsyn
3236415bda 7191786: retransformClasses() does not pass in LocalVariableTypeTable of a method
JVMTI REtruncformClasses must support LocalVariableTypeTable attribute

Reviewed-by: dcubed, dsamersoff, rbackman
2012-09-18 10:10:43 -07:00
Xue-Lei Andrew Fan
b8e234fb52 7199066: Typo in method name
Reviewed-by: mullan
2012-09-18 06:51:02 -07:00
Konstantin Shefov
67cc344382 7190587: Open source and jtreg'ify JAWT regression test
Reviewed-by: anthony, omajid
2012-09-18 17:38:40 +04:00
Dan Xu
cd25bf4b6e 7142919: TEST_BUG: java/nio/channels/AsyncCloseAndInterrupt.java failing intermittently [sol11]
Reviewed-by: alanb
2012-09-18 13:14:49 +01:00
Vinnie Ryan
79b3216615 7198901: correct the field size check when decoding a point on ECC curve
Reviewed-by: xuelei
2012-09-18 11:08:48 +01:00
Weijun Wang
89a8feeaff 7198871: cleanup security tests in problem lists with no CR attached
Reviewed-by: alanb
2012-09-18 17:38:43 +08:00
Zhengyu Gu
fb2076c572 7188594: Print statistic collected by NMT with VM flag
Print out statistics of collected NMT data if it is on at VM exits

Reviewed-by: kvn, coleenp, twisti
2012-09-17 16:37:26 -04:00
Zhengyu Gu
3276deb50c Merge 2012-09-17 13:34:07 -07:00
Magnus Ihse Bursie
b2b4d40c73 7172012: Make test-in-build an option (Queens)
Reviewed-by: ohair, dholmes
2012-09-17 11:46:25 -07:00
Mike Duigou
25570f8d69 7198988: re-order paramaters for Collision.java @run
Reviewed-by: alanb
2012-09-17 11:36:10 -07:00
Zhengyu Gu
afd497eecc 7190089: NMT ON: NMT failed assertion on thread's stack base address
Solaris only, record stack info to NMT after stack size adjustment was made for primordial threads

Reviewed-by: kvn, acorn, coleenp
2012-09-17 10:20:04 -04:00
Marco Dinacci
6dc21336ea 7160951: ActionListener called twice for JMenuItem using ScreenMenuBar
Reviewed-by: anthony, serb
2012-09-17 17:25:54 +04:00
David Holmes
676c5a2769 Merge 2012-09-17 08:44:19 -04:00
Dmytro Sheyko
48255b9ff3 7194254: jstack reports wrong thread priorities
Reviewed-by: dholmes, sla, fparain
2012-09-17 07:36:31 -04:00
Staffan Larsen
10b80ccca6 7198849: Make javax/management/remote/mandatory/notif/ListenerScaleTest.java less timing sensitive
Reviewed-by: alanb
2012-09-17 12:40:33 +02:00
Weijun Wang
b86fae01ab 7196855: autotest.sh fails on ubuntu because libsoftokn.so not found
Reviewed-by: vinnie
2012-09-17 18:19:16 +08:00
Staffan Larsen
e91b6584eb 7193201: [OS X] The development launcher should be signed and given task_for_pid privileges
Reviewed-by: sspitsyn, nloodin, mgronlun, coleenp
2012-09-17 11:46:19 +02:00
Vadim Pakhnushev
1c8d337aaa 7186799: Regression tests for ImageIO metadata fail on second run
Reviewed-by: prr, bae
2012-09-17 13:44:07 +04:00
Staffan Larsen
1f8baaf6f0 7198846: Add javax/management/remote/mandatory/notif/DiffHBTest.java to ProblemList.txt
Reviewed-by: alanb
2012-09-17 11:27:25 +02:00
Weijun Wang
8e21ad5768 7198205: CloseTest fails on mac
Reviewed-by: alanb, chegar, michaelm
2012-09-17 17:19:50 +08:00
Bengt Rutisson
a08d48f9b1 7198130: G1: PrintReferenceGC output comes out of order
Move the first part of the GC logging, including timestamp, to the start of the GC

Reviewed-by: johnc, jwilhelm
2012-09-17 10:33:13 +02:00
Coleen Phillimore
9a271f468a 7197269: NPG: FollowReferences has no ClassLoader -> Class link to follow
Restore java/lang/ClassLoader.addClass() upcall

Reviewed-by: sspitsyn, dcubed, jmasa
2012-09-17 10:46:59 -04:00
Sean Mullan
227d6c722e 7195409: CertPath/CertPathValidatorTest/KeyParamsInheritanceTest fails with NullPointerException
Reviewed-by: xuelei
2012-09-16 13:29:25 -07:00
Alejandro Murillo
c188598ddd 7198641: new hotspot build - hs25-b02
Reviewed-by: jcoomes
2012-09-14 22:00:41 -07:00
Alejandro Murillo
a13f8a7da1 Added tag hs25-b01 for changeset ab29bec425bb 2012-09-14 21:50:58 -07:00
Alejandro Murillo
b5637a7e2e Merge 2012-09-14 21:50:58 -07:00
John Coomes
d0d065e65c 7198676: NPG: exclude MemoryMXBean tests which assume a perm gen
Reviewed-by: dcubed
2012-09-14 16:04:01 -07:00
John Coomes
62be90fc38 7198162: exclude test MemoryMXBean/LowMemoryTest2.sh
Reviewed-by: alanb, dsamersoff, sspitsyn
2012-09-14 15:02:24 -07:00
Lana Steuck
a60a81b964 Merge 2012-09-14 14:10:01 -07:00
Lana Steuck
fb9f7dee15 Merge 2012-09-14 13:52:30 -07:00
Lana Steuck
e4cc1a46cb Merge 2012-09-14 13:22:59 -07:00
Lana Steuck
2ee6f63c19 Merge 2012-09-14 10:15:05 -07:00
Zhengyu Gu
119c20297b 7198529: NPG: assert with NMT code in Thread destructor
Thread stack's base address can be NULL if it is not started or exited before recording the base

Reviewed-by: kvn, fparain
2012-09-14 12:55:50 -04:00
Jan Lahoda
f1487754e6 7192073: (javac) minor refactoring of tree maker to help IDEs
Reviewed-by: jjg
2012-09-14 09:21:55 -07:00
Vladislav Karnaukhov
ccf7724f51 6994562: Swing classes (both JTextArea and JTextField) don't support caret width tuning
Reviewed-by: rupashka, art
2012-09-14 19:51:14 +04:00
Alexander Scherbatiy
8b54dc6ea9 7196547: [macosx] Implement dead key detection for KeyEvent
Reviewed-by: skovatch, kizune
2012-09-14 15:30:46 +04:00
Alexander Scherbatiy
43349040a2 7197320: [macosx] Full Screen option missing when Window.documentModified
Reviewed-by: anthony
2012-09-14 15:08:54 +04:00
Jonathan Gibbons
ae09b79839 7177970: fix issues in langtools doc comments
Reviewed-by: mcimadamore
2012-09-13 14:29:36 -07:00
David Katleman
8a2b4598e4 Added tag jdk8-b56 for changeset 5b1ac23fe8a0 2012-09-13 13:16:45 -07:00
David Katleman
04d30a320f Added tag jdk8-b56 for changeset 9a3f2acd6f92 2012-09-13 13:16:04 -07:00
David Katleman
9c52f1e17a Added tag jdk8-b56 for changeset 35d8828b27fb 2012-09-13 13:15:39 -07:00
David Katleman
9500be57ff Added tag jdk8-b56 for changeset 5cc92e17f3ec 2012-09-13 13:15:34 -07:00
David Katleman
aeb1e1d09e Added tag jdk8-b56 for changeset 1bce16d0ddd1 2012-09-13 13:15:14 -07:00
David Katleman
0d408009f6 Added tag jdk8-b56 for changeset 1797aae1f07c 2012-09-13 13:14:58 -07:00
David Katleman
4fd78c5611 Added tag jdk8-b56 for changeset d8e903d6b2e0 2012-09-13 13:14:51 -07:00
Roland Westrelin
00c30b04f4 7198074: NPG: assert(((Metadata*)obj)->is_valid()) failed: obj is valid
Missing test for T_METADATA leads to incorrect register allocation.

Reviewed-by: kvn
2012-09-13 22:09:16 +02:00
Hal Mo
18582cee62 7197906: BlockOffsetArray::power_to_cards_back() needs to handle > 32 bit shifts
Reviewed-by: brutisso, johnc, ysr
2012-09-13 21:20:26 +02:00
Oleg Pekhovskiy
ffadb2c6a5 7198318: SunToolkitSubclass.java should be removed
Reviewed-by: serb
2012-09-13 21:23:23 +04:00
Oleg Pekhovskiy
08a51f1378 7186109: Simplify lock machinery for PostEventQueue & EventQueue
Reviewed-by: art, anthony, dholmes
2012-09-13 19:53:13 +04:00
David Katleman
895f5c3cd5 Merge 2012-09-12 15:57:26 -07:00
Sergey Bylokhov
589854449e 7124534: [macosx] Submenu title overlaps with Submenu indicator in JPopupMenu
Reviewed-by: art
2012-09-12 21:16:39 +04:00
Zhengyu Gu
a2f9b747a4 Merge 2012-09-11 20:12:55 -07:00
Zhengyu Gu
d8037e4c8d Merge 2012-09-11 18:28:51 -07:00
Zhengyu Gu
442e4b0e54 7181995: NMT ON: NMT assertion failure assert(cur_vm->is_uncommit_record() || cur_vm->is_deallocation_record
Fixed virtual memory records merge and promotion logic, should be based on sequence number vs. base address order

Reviewed-by: coleenp, acorn
2012-09-11 20:53:17 -04:00
Coleen Phillimore
6f1b52ab16 7196681: NPG: Some JSR 292 tests crash in Windows exception handler
There was a rogue os::breakpoint() call in log_dependency left over from the jsr292 merge.  Also changed verify_oop() calls for metadata to verify_{method,klass}_ptr.

Reviewed-by: kvn, twisti
2012-09-11 20:20:38 -04:00
Kelly O'Hair
408baee12e Merge 2012-09-11 14:18:54 -07:00
Kelly O'Hair
b4f55953e0 7197771: Adjust jdk sources to avoid use of implementation defined value of __FILE__
7180608: Sort the order of object files when building shared libraries

Reviewed-by: ohrstrom, erikj, tbell
2012-09-11 13:40:59 -07:00
Mike Duigou
bb1c4324e9 7189926: Reduce test size for default run. Add additional run enabling alternative hashing
Reviewed-by: alanb
2012-09-11 07:42:02 -07:00
Lana Steuck
ebe7692e1d Merge 2012-09-14 10:14:02 -07:00
Mandy Chung
c6064021fd 7193302: Remove ConstructorProperties annotation from java.lang.management.LockInfo
Reviewed-by: alanb, sla, egahlin
2012-09-14 09:47:14 -07:00
Sean Mullan
478bf4b32a Merge 2012-09-14 10:30:38 -04:00
Sean Mullan
9c6c879e23 Merge 2012-09-14 10:14:15 -04:00
Sean Mullan
5e99983092 7176627: CertPath/jep124/PreferCRL_SoftFail test fails (Could not determine revocation status)
Reviewed-by: xuelei
2012-09-14 10:13:04 -04:00
Alan Bateman
a9eb740a31 7197637: (ch) sun.nio.ch.Default* cause providers for other platforms to be included in rt.jar
Reviewed-by: mchung
2012-09-13 15:04:01 +01:00
Chris Hegarty
3505949495 7197203: sun/misc/URLClassPath/ClassnameCharTest.sh failed, compile error
Reviewed-by: alanb
2012-09-13 11:17:08 +01:00
Sean Mullan
fb2cf39b23 Merge 2012-09-12 15:21:46 -04:00
Jason Uh
b89fe033cb 7196593: java.security.debug=help doesn't list certpath option
Reviewed-by: mullan, wetmore, valeriep
2012-09-12 15:20:54 -04:00
Roland Westrelin
08757b8a99 7195816: NPG: Crash in c1_ValueType - ShouldNotReachHere
C1 needs knowledge of T_METADATA at the LIR level.

Reviewed-by: kvn, coleenp
2012-09-11 16:20:57 +02:00
Stefan Karlsson
b979c4ebe0 7197350: NPG: jvmtiHeapReferenceCallback receives incorrect reference_kind for system class roots
Fix the iteration over the system classes and report the correct reference kind.

Reviewed-by: coleenp, rbackman
2012-09-11 14:59:23 +02:00
Pavel Porvatov
41e85e364f 7195194: Better data validation for Swing
Reviewed-by: art, ahgross
2012-09-11 15:59:24 +04:00
Andrew Brygin
24043fa401 7181199: [macosx] Startup is much slower in headless mode for apps using Fonts
Reviewed-by: jgodinez, prr
2012-09-11 13:32:48 +04:00
Sergey Malenkov
e539ff810a 7195549: Better bean object persistence
Reviewed-by: art, ahgross
2012-09-11 12:57:09 +04:00
Sergey Malenkov
c14183f376 7193977: REGRESSION:Java 7's JavaBeans persistence ignoring the "transient" flag on properties
Reviewed-by: rupashka
2012-09-11 10:58:39 +04:00
Lana Steuck
35b39b9d65 Merge 2012-09-10 17:55:41 -07:00
Lana Steuck
143e0d9e1c Merge 2012-09-10 17:55:00 -07:00
Christian Thalinger
2ab9ff2658 7196242: vm/mlvm/indy/stress/java/loopsAndThreads crashed
Reviewed-by: jrose, coleenp, jmasa, kvn
2012-09-10 16:37:22 -07:00
Stuart Marks
7004635879 7195919: (sl) ServiceLoader can throw CCE without needing to create instance
Reviewed-by: ahgross, alanb, dmeetry
2012-09-10 16:05:53 -07:00
Jennifer Godinez
accba3a5e1 7183516: [macosx]Can't print-out the defined fonts for PrintFont_2D and AntialiasTableTest
Reviewed-by: bae, prr
2012-09-10 10:07:10 -07:00
Sean Mullan
6ac22bda1f Merge 2012-09-10 09:18:10 -04:00
Sean Mullan
2f5dfb27c2 Merge 2012-09-10 09:00:00 -04:00
Sean Mullan
21f5431109 7195301: XML Signature DOM implementation should not use instanceof to determine type of Node
Reviewed-by: xuelei
2012-09-10 08:57:51 -04:00
Bhavesh Patel
2c45db0933 Merge 2012-09-08 22:54:21 -07:00
Bhavesh Patel
fc3506df22 7180906: Javadoc tool does not apply parameter -nosince
Reviewed-by: jjg
2012-09-08 22:43:38 -07:00
Abhijit Saha
6b904d2507 Merge 2012-09-08 22:23:42 -07:00
Alan Bateman
c6f43f3599 7169884: LogManager checks do not work correctly for sub-types
Reviewed-by: mchung, ahgross
2012-09-08 20:31:42 +01:00
Abhijit Saha
38b305878c Merge 2012-09-07 18:18:55 -07:00
Coleen Phillimore
6fda647450 7196103: NPG: Unable to allocate bit map for parallel garbage collection for the requested heap size
Don't allocate huge class metaspace size by default on x64

Reviewed-by: stefank, jmasa, kvn
2012-09-07 16:42:25 -04:00
Sean Coffey
19e3f0756e 7180362: RFE: Implement date cutover functionality for currency.properties file
Reviewed-by: naoto
2012-09-07 21:22:37 +01:00
Jonathan Gibbons
b4b43de210 7196760: tree end positions incorrect after anno processing
Reviewed-by: mcimadamore
2012-09-07 11:35:53 -07:00
Jonathan Gibbons
f4749d4e50 7196774: javac cannot be built with JDK 6 after 7151010
Reviewed-by: mcimadamore
2012-09-07 11:24:00 -07:00
Jonathan Gibbons
0844683a0e 7186925: JavapTask passes null to java.io.Writer
Reviewed-by: jjh
2012-09-07 11:12:16 -07:00
Jason Uh
21cc7bf277 4647343: IDENT variable in sun.security.x509 classes not used
Reviewed-by: mullan
2012-09-07 12:49:04 -04:00
Coleen Phillimore
12b9a4edbb 7195833: NPG: Rename instanceClassLoaderKlass, instanceRefKlass and instanceMirrorKlass
Simple renaming to be consistent with instanceKlass->InstanceKlass renaming

Reviewed-by: stefank, jmasa
2012-09-07 12:04:16 -04:00
John Zavgren
8fbd047f8c 6354758: rename old test HttpServer classes
Reviewed-by: chegar, michaelm, khazra
2012-09-07 15:30:17 +01:00
Eric Wang
de965a866a 7032247: java/net/InetAddress/GetLocalHostWithSM.java fails if hostname resolves to loopback address
TESTBUG

Reviewed-by: chegar, alanb
2012-09-07 14:00:31 +01:00
Alexander Scherbatiy
966d2c0cd4 7194469: Pressing the Enter key results in an alert tone beep when focus is TextField
Reviewed-by: bagiras, denis
2012-09-07 13:08:59 +04:00
Weijun Wang
7e677a587b 7196677: diff compares same file to itself in PaddingTest regression test
Reviewed-by: xuelei
2012-09-07 10:24:22 +08:00
David Katleman
7eb98442e1 Added tag jdk8-b55 for changeset bc332057d97a 2012-09-06 17:28:10 -07:00
David Katleman
1e5b3e3ded Added tag jdk8-b55 for changeset 4efc4ab93edd 2012-09-06 17:27:56 -07:00
David Katleman
79f7de8d0f Added tag jdk8-b55 for changeset 39d1771dd21b 2012-09-06 17:27:48 -07:00
David Katleman
76b8a9a6b7 Added tag jdk8-b55 for changeset b5d27d05eea2 2012-09-06 17:27:44 -07:00
David Katleman
2aa10d79aa Added tag jdk8-b55 for changeset 49f23700884c 2012-09-06 17:27:33 -07:00
David Katleman
ef3763175d Added tag jdk8-b55 for changeset a180f4cc7c94 2012-09-06 17:27:24 -07:00
David Katleman
5802f97caf Added tag jdk8-b55 for changeset b4f6c05ae88a 2012-09-06 17:27:20 -07:00
Lance Andersen
1e258cff36 7192302: Remove JDBCRowSetImpl dependency on java.beans
Reviewed-by: alanb, mchung
2012-09-06 13:16:19 -04:00
Jon Masamitsu
cd5df1082a 7196298: Better fix for 7195789
Reviewed-by: jcoomes, brutisso
2012-09-06 07:28:30 -07:00
Oleg Pekhovskiy
9c35d5e4d1 7153339: InternalError when drawLine with Xor and Antialiasing
Reviewed-by: prr, flar
2012-09-06 17:57:31 +04:00
Mikael Gerdin
cfefd5fc47 7195557: NPG: Unexpected number of memory pools
Update management tests to work with a VM without a permanent generation memory pool

Reviewed-by: rbackman, brutisso, sla, dholmes
2012-09-06 14:07:12 +02:00
Alexander Zuev
a483db078d 7175183: [macosx] Objective-C exception thrown when switching monitor configuration
Reviewed-by: prr, serb
2012-09-06 14:59:54 +04:00
Lana Steuck
a1878f7d14 Merge 2012-09-05 20:03:19 -07:00
Lana Steuck
29f70d33d7 Merge 2012-09-05 20:01:40 -07:00
Lana Steuck
2216719923 Merge 2012-09-05 17:33:52 -07:00
Coleen Phillimore
8536f548db 7195867: NPG: SAJDI tests fail with sun.jvm.hotspot.types.WrongTypeException: No suitable match for type
Need to restore the vtable in metadata when we restore the type from the shared archive.

Reviewed-by: acorn, jcoomes, jmasa, jrose
2012-09-05 20:08:08 -04:00
Lana Steuck
51b47903db Merge 2012-09-05 13:50:00 -07:00
John Coomes
6ecb1dc545 Merge 2012-09-05 12:58:45 -07:00
John Coomes
1fc1536a31 7196361: add hotspot/make/closed to hgforest.sh
Reviewed-by: ohair
2012-09-05 12:42:26 -07:00
Lana Steuck
147f804a82 Merge 2012-09-05 12:00:30 -07:00
Kumar Srinivasan
e9b83f5d6f 7194005: (launcher) needs to be enhanced for 64-bit jar file handling
Reviewed-by: darcy, sherman
2012-09-05 11:38:40 -07:00
Lana Steuck
9014f4ced0 Merge 2012-09-05 11:59:27 -07:00
Sergey Bylokhov
7788603b2e 7124523: [macosx] b216: Mising part of applet UI
Reviewed-by: denis, alexsch
2012-09-05 21:40:05 +04:00
Valerie Peng
c53bbad396 Merge 2012-09-05 10:26:54 -07:00
Vladimir Kozlov
f3b6368c39 7196167: NPG: mismerge in make/solaris/makefiles/fastdebug.make
Remove the workaround of 7187454 problem which was restored incorrectly during NPG merge.

Reviewed-by: coleenp, dholmes
2012-09-05 10:18:37 -07:00
Scott Kovatch
2663894371 7187834: [macosx] Usage of private API in macosx 2D implementation causes Apple Store rejection
Reviewed-by: prr, igor
2012-09-05 09:34:19 -07:00
Jim Holmlund
7dfe1cb86c 7185778: javah error "Not a valid class name" on class names with dollar signs
Reviewed-by: jjg
2012-09-05 08:32:32 -07:00
Staffan Larsen
330ba0e873 6963102: Testcase failures sun/tools/jstatd/jstatdExternalRegistry.sh and sun/tools/jstatd/jstatdDefaults.sh
Make tests more resilient by allowing for more error messages from jps

Reviewed-by: alanb, rbackman, dsamersoff
2012-09-05 14:42:44 +02:00
Stefan Karlsson
36d57e3669 7195935: NPG: Some issues with compressed oops
Don't decompress the klass pointer in the G1 pre-barrier code when !UseCompressedKlassPointers

Reviewed-by: coleenp, brutisso
2012-09-05 10:39:29 +02:00
Valerie Peng
a431f9851d 7044060: Need to support NSA Suite B Cryptography algorithms
Add support for DSA parameter generation and OIDs for NSA Suite B algorithms.

Reviewed-by: vinnie
2012-09-04 18:41:06 -07:00
Jon Masamitsu
6f32be5139 7195789: NPG: assert(used + free == capacity) failed: Accounting is wrong
Reviewed-by: coleenp, jcoomes
2012-09-04 16:20:28 -07:00
Christian Thalinger
0f2dd1c15e 7196120: NPG: JSR 2292 test fails because missing fix for 7188911
Reviewed-by: kvn, coleenp
2012-09-04 18:01:20 -07:00
Roland Westrelin
badaff577b 7184649: NPG: Implement another MetdataPtr case
Xmeet when both inputs are MetadataPtr.

Reviewed-by: kvn
2012-09-04 23:27:55 +02:00
Jonathan Gibbons
52ca21c92a 7195519: OutOfMemoryError in docs build after 7151010
Reviewed-by: darcy
2012-09-04 12:53:50 -07:00
Sergey Malenkov
2276a38632 7195106: REGRESSION : There is no way to get Icon inf, once Softreference is released
Reviewed-by: rupashka
2012-09-04 20:50:44 +04:00
Stefan Karlsson
3610a76e25 7195968: NPG: oopDesc::list_ptr_from_klass is broken
Remove incorrect cast

Reviewed-by: brutisso, coleenp
2012-09-04 13:01:03 +02:00
Eric Wang
e0782017fe 7195733: TEST_BUG: sun/security/ssl/sun/net/www/protocol/https/HttpsURLConnection/B6216082.java failing
Reviewed-by: chegar, alanb, xuelei
2012-09-04 02:24:51 -07:00
Sergey Malenkov
25c0370a8b 7169395: Exception throws due to the changes in JDK 7 object tranversal and break backward compatibility
Reviewed-by: art
2012-09-04 13:12:16 +04:00
Coleen Phillimore
eff152a7be 7195823: NPG: CMS reserved() doesn't match _rs.base()
If the commit fails, the size isn't set so the assert fails.

Reviewed-by: kamg
2012-09-03 18:37:12 -04:00
Jon Masamitsu
5c58d27aac 6964458: Reimplement class meta-data storage to use native memory
Remove PermGen, allocate meta-data in metaspace linked to class loaders, rewrite GC walking, rewrite and rename metadata to be C++ classes

Co-authored-by: Stefan Karlsson <stefan.karlsson@oracle.com>
Co-authored-by: Mikael Gerdin <mikael.gerdin@oracle.com>
Co-authored-by: Tom Rodriguez <tom.rodriguez@oracle.com>
Reviewed-by: jmasa, stefank, never, coleenp, kvn, brutisso, mgerdin, dholmes, jrose, twisti, roland
2012-09-01 13:25:18 -04:00
John Coomes
36eee7c8c8 7195615: new hotspot build - hs25-b01
Reviewed-by: johnc
2012-08-31 16:39:35 -07:00
John Coomes
58d9fd45ac Merge 2012-08-31 16:39:04 -07:00
John Coomes
ae110cd170 Added tag hs24-b22 for changeset a83f6d24c373 2012-08-31 16:17:41 -07:00
John Coomes
c6516ccaea Merge 2012-08-31 16:17:40 -07:00
Christian Thalinger
6948846044 Merge 2012-08-31 15:20:25 -07:00
Dan Xu
b6bee3c9e9 7193406: Clean-up JDK Build Warnings in java.util, java.io
Clean-up JDK Build Warnings in java.util, java.io Packages

Reviewed-by: smarks, darcy, khazra, dholmes, forax, dl, andrew, aph, omajid, ulfzibis, christos, mduigou
2012-08-31 13:42:47 -07:00
Dmytro Sheyko
366a5c5175 7194597: Typeo in com.sun.management.VMOption.toString()
VMOption.toString() returns "...(read-only)" if writable "...(read-write)" otherwise.

Reviewed-by: alanb, mchung
2012-09-11 19:58:36 +04:00
Jiangli Zhou
c3b3276936 Merge 2012-08-31 12:59:10 -07:00
Lana Steuck
6fc24809d4 Merge 2012-08-31 12:11:03 -07:00
Jiangli Zhou
50b6647678 Merge 2012-08-31 14:47:01 -04:00
Christian Thalinger
6ddab0cf3c Merge 2012-08-31 10:48:08 -07:00
Sergey Malenkov
5aa6dd0031 7194567: Improve long term persistence of java.beans objects
Reviewed-by: ahgross, art
2012-08-31 09:15:34 -07:00
Anton Tarasov
67b1f9248b 6981400: Tabbing between textfield do not work properly when ALT+TAB
7157015: [macosx] Situation when KeyEventDispatcher doesn't work on AWT but does on Swing
7121442: Regression : Reopen CR 6458497 still reproducible using JDK 7

Reviewed-by: art, leonidr
2012-08-31 16:31:29 +04:00
Sergey Malenkov
7d367a5123 7186794: Setter not found. PropertyDescriptor(PropertyDescriptor,PropertyDescriptor)
Reviewed-by: rupashka
2012-08-31 14:49:23 +04:00
Sergey Malenkov
99bfc33cce 7192955: Introspector overide PropertyDescriptor for generic type field defined in super class
Reviewed-by: rupashka
2012-08-31 14:32:09 +04:00
Joel Borggrén-Franck
9c23b8bad0 7151010: Add compiler support for repeating annotations
Reviewed-by: jjg, mcimadamore
2012-08-31 10:37:46 +01:00
Bengt Rutisson
911d3e3ac6 Merge 2012-08-31 08:30:30 +02:00
Lana Steuck
047abf380a Merge 2012-08-30 20:16:07 -07:00
Lana Steuck
659c51746c Merge 2012-08-30 20:14:48 -07:00
Lana Steuck
99c7a955ec Merge 2012-08-30 20:13:30 -07:00
Lana Steuck
955d253fed Merge 2012-08-30 20:10:34 -07:00
Lana Steuck
b796471371 Merge 2012-08-30 20:10:29 -07:00
David Katleman
53024605e4 Added tag jdk8-b54 for changeset edce301a53ed 2012-08-30 10:27:39 -07:00
David Katleman
18c8f75901 Added tag jdk8-b54 for changeset 9b806d4f69be 2012-08-30 10:27:23 -07:00
David Katleman
1ee5aecfeb Added tag jdk8-b54 for changeset e0b1a72b7a91 2012-08-30 10:27:18 -07:00
David Katleman
6b75da0827 Added tag jdk8-b54 for changeset 3799d28d324f 2012-08-30 10:27:15 -07:00
David Katleman
f6008840a0 Added tag jdk8-b54 for changeset 0b41a071152f 2012-08-30 10:27:07 -07:00
David Katleman
0c6def85cc Added tag jdk8-b54 for changeset bbaf12c708dc 2012-08-30 10:27:01 -07:00
David Katleman
1bd0a0be7d Added tag jdk8-b54 for changeset c5705c72aff8 2012-08-30 10:26:55 -07:00
Bill Pittore
58a50b25eb 7154641: Servicability agent should work on platforms other than x86, sparc
Added capability to load support classes for other cpus

Reviewed-by: coleenp, bobv, sla
2012-08-30 11:20:01 -04:00
David Katleman
c4c4e329f2 Merge 2012-08-29 15:28:39 -07:00
Denis Fokin
ac4a9defca 7192887: java/awt/Window/Grab/GrabTest.java still failed (fix failed for CR 7149068)
Reviewed-by: ant, serb
2012-08-30 01:17:24 +04:00
Brandon Mitchell
f51faf2bbe 7194409: os::javaTimeNanos() shows hot on CPU_CLK_UNHALTED profiles
Add inline directives to os::Linux::supports_monotonic_clock() and os::Bsd::supports_monotonic_clock().

Reviewed-by: johnc, azeemj, mikael
2012-08-29 13:02:54 -07:00
Vladimir Kozlov
da65cc4532 7160161: Missed safepoint in non-Counted loop
Do not remove safepoints during peeling optimization.

Reviewed-by: twisti
2012-08-29 13:02:40 -07:00
Pavel Punegov
373b8ccd27 7191926: Remove MKS dependency in Hotspot regression tests
Add case for CYGWIN in .sh files.

Reviewed-by: coleenp, kvn
2012-08-29 14:49:05 -04:00
Leonid Romanov
18e3872928 7124375: [macosx] Focus isn't transfered as expected between components
Reviewed-by: art, ant, serb
2012-08-29 19:53:35 +04:00
Chris Hegarty
84603e4d94 7189567: java net obselete protocol
Reviewed-by: alanb, ahgross
2012-08-29 14:05:37 +01:00
Alexander Scherbatiy
31ec802d7e 7171045: [macosx] There are no enter or exit events reported against 8b39 for MouseEventsDuringDrag
Reviewed-by: anthony, serb
2012-08-29 15:54:28 +04:00
Christian Thalinger
40c1bd4242 7192406: JSR 292: C2 needs exact return type information for invokedynamic and invokehandle call sites
Reviewed-by: kvn
2012-08-28 15:24:39 -07:00
John Cuthbertson
eb2c52c717 7041879: G1: introduce stress testing parameter to cause frequent evacuation failures
Add the flags G1EvacuationFailureALot flag (and supporting flags) to force trigger evacuation failures. The support flags control how often to trigger an evacuation failure and during which types of evacuation pause. This functionality is analogous to that of PromotionFailureALot for the other collectors.

Reviewed-by: brutisso
2012-08-28 15:20:08 -07:00
Christian Thalinger
e48b871bdc 7194662: JSR 292: PermuteArgsTest times out in nightly test runs
Reviewed-by: kvn
2012-08-28 14:57:43 -07:00
John R Rose
03930364c8 7194612: api/java_lang/invoke/MethodHandles/Lookup/index.html#ExceptionsTests[findVirtualNSME] fails w/ -esa
Reviewed-by: kvn, twisti
2012-08-28 13:14:59 -07:00
Lana Steuck
a0b3f023db Merge 2012-08-28 12:24:33 -07:00
Lana Steuck
a43f699f88 Merge 2012-08-28 12:20:26 -07:00
Daniel D. Daugherty
7f75e401cc 7194608: add VerifyLocalVariableTableOnRetransformTest.sh to Problem.list
Reviewed-by: alanb
2012-08-28 09:40:27 -07:00
Rickard Bäckman
228b4f6d7f 7093328: JVMTI: jvmtiPrimitiveFieldCallback always report 0's for static primitives
Reviewed-by: dholmes, dcubed
2012-08-28 15:15:29 +02:00
Coleen Phillimore
5f4a2405a7 Merge 2012-10-15 22:33:19 -04:00
Kevin Walls
b296b69382 7195151: Multiplatform tescase for 6929067
Reviewed-by: kamg, kvn
2012-10-15 16:48:48 +01:00
Keith McGuigan
04a9a14193 7054345: Support version 52.0 class file in HotSpot
Accept classfiles with major version 52

Reviewed-by: coleenp, acorn
2012-10-11 14:27:54 -04:00
Harold Seigel
6b158b4089 7199068: NPG: SharedSkipVerify is meaningless
Remove the SharedSkipVerify flag

Reviewed-by: kamg, sspitsyn, coleenp
2012-10-10 17:04:33 -04:00
Sean Mullan
d335016419 Merge 2012-08-28 08:46:23 -04:00
Sean Mullan
d981574a8a 7192896: Reason of CertPathValidatorException should be UNDETERMINED_REVOCATION_STATUS if OCSP request failed
Reviewed-by: xuelei
2012-08-28 08:43:17 -04:00
Sergey Bylokhov
0107379c53 7186371: [macosx] Main menu shortcuts not displayed (7u6 regression)
Reviewed-by: leonidr
2012-08-28 16:04:27 +04:00
Eric Wang
25c7724d6e 6962637: TEST_BUG: java/io/File/MaxPathLength.java may fail in busy system
Reviewed-by: dholmes, alanb
2012-08-28 11:12:46 +01:00
Jonathan Gibbons
3edec130c3 7194035: update tests for upcoming changes for jtreg
Reviewed-by: alanb, sspitsyn
2012-08-28 10:31:27 +01:00
Jonathan Gibbons
e4326b6cc5 7194032: update tests for upcoming changes for jtreg
Reviewed-by: alanb, iris
2012-08-28 10:29:30 +01:00
Weijun Wang
f7c2d784ae 7194472: FileKeyTab.java test fails on Windows
Reviewed-by: alanb
2012-08-28 17:25:07 +08:00
Tao Mao
447e7065d2 6677625: Move platform specific flags from globals.hpp to globals_<arch>.hpp
Reviewed-by: kvn, dholmes, coleenp
2012-08-27 15:17:17 -07:00
Lana Steuck
1dc8f7d026 Merge 2012-08-27 11:48:09 -07:00
Lana Steuck
09930417d3 Merge 2012-08-27 11:28:08 -07:00
Lana Steuck
de50ec6f3f Merge 2012-08-27 10:59:13 -07:00
Lana Steuck
47b747e08c Merge 2012-08-27 10:58:40 -07:00
Lana Steuck
b78fd98dc7 Merge 2012-08-27 10:55:57 -07:00
Lana Steuck
52dccdcb9e Merge 2012-08-27 10:54:30 -07:00
Vladimir Kozlov
f0d08c04f1 7148109: C2 compiler consumes too much heap resources
Add split_arena to allocate temporary arrays in PhaseChaitin::Split() and free them on method's exit.

Reviewed-by: twisti
2012-08-27 09:46:38 -07:00
Jan Lahoda
398a74ffa0 7192068: (javac) provide a way for IDEs to produce Enclosing Method attributes
Reviewed-by: jjg
2012-08-27 07:21:46 -07:00
Weijun Wang
66f06a99dc 7152121: Krb5LoginModule no longer handles keyTabNames with "file:" prefix
Reviewed-by: mullan
2012-08-27 10:23:43 +08:00
Mandy Chung
9108824515 7193339: Prepare system classes be defined by a non-null module loader
Reviewed-by: alanb, dholmes, dsamersoff, sspitsyn, psandoz
2012-08-24 22:55:49 -07:00
Daniel D. Daugherty
2ec592f290 Merge 2012-08-24 19:45:42 -07:00
Alejandro Murillo
2271c9dfad 7194004: new hotspot build - hs24-b22
Reviewed-by: jcoomes
2012-08-24 16:23:59 -07:00
Alejandro Murillo
da2de44d1a Added tag hs24-b21 for changeset 2ab6bbc9883c 2012-08-24 15:51:20 -07:00
Alejandro Murillo
08e886940b Merge 2012-08-24 15:51:19 -07:00
Christian Thalinger
80ceb641ad Merge 2012-08-24 15:41:39 -07:00
Kurchi Subhra Hazra
54f3f7f7ed 7168172: (fs) Files.isReadable slow on Windows
Remove DACL checking for read access, also reviewed by Ulf.Zibis@CoSoCo.de, zhong.j.yu@gmail.com

Reviewed-by: alanb
2012-08-24 11:48:51 -07:00
Christian Thalinger
2509329d59 Merge 2012-08-24 11:48:32 -07:00
Alan Bateman
ccd9f0ffaa 7193933: More ProblemList.txt updates (8/2012)
Reviewed-by: darcy, chegar
2012-08-24 19:35:30 +01:00
Naoto Sato
2d1e211a10 7193601: Build breakage with the fix to 6336885 (build-infra build)
Reviewed-by: mduigou
2012-08-24 10:13:58 -07:00
Anthony Petrov
ed711d4ca7 7160609: [macosx] JDK crash in libjvm.dylib ( C [GeForceGLDriver+0x675a] gldAttachDrawable+0x941)
Constrain window dimensions with screen bounds and GL_MAX_TEXTURE_SIZE

Reviewed-by: art, serb
2012-08-24 14:58:04 +04:00
Bengt Rutisson
74cef1447a Merge 2012-08-24 09:45:08 +02:00
Sean Chou
a1e20b1d0a 7193169: The code example in javadoc of Component.java misses 'implements' keyword
Reviewed-by: anthony
2012-08-24 11:35:51 +08:00
David Katleman
25fe6a4c37 Added tag jdk8-b53 for changeset f7a4c716de5d 2012-08-23 12:27:59 -07:00
David Katleman
428409a29b Added tag jdk8-b53 for changeset 08dbb62358cb 2012-08-23 12:27:49 -07:00
David Katleman
5099c5a4d0 Added tag jdk8-b53 for changeset c45e8803a82b 2012-08-23 12:27:44 -07:00
David Katleman
badee55a59 Added tag jdk8-b53 for changeset e18b2f956052 2012-08-23 12:27:41 -07:00
David Katleman
17a596280e Added tag jdk8-b53 for changeset 441121a0bcde 2012-08-23 12:27:33 -07:00
David Katleman
489be4fd9b Added tag jdk8-b53 for changeset 7953230add35 2012-08-23 12:27:28 -07:00
David Katleman
abfcb95722 Added tag jdk8-b53 for changeset ead6122c3c52 2012-08-23 12:27:22 -07:00
Vladimir Kozlov
fbcc3da64f 7192965: assert(is_aligned_sets(size)) failed: mask is not aligned, adjacent sets
Change pair check to vector check in RA bias coloring code.

Reviewed-by: jrose, twisti
2012-08-23 09:13:16 -07:00
Andrew John Hughes
7e51cd125d 7192804: Build should not install jvisualvm man page for OpenJDK
OpenJDK builds don't ship VisualVM so shouldn't ship its man page either.

Reviewed-by: dholmes
2012-08-23 15:42:23 +01:00
Jason T Greene
3800b44b13 7191587: (se) SelectionKey.interestOps does not defer changing the interest set to the next select [macosx]
Reviewed-by: alanb
2012-08-23 13:07:08 +01:00
Frank Ding
cd118009c8 7193463: Improve registering signal handlers in java.lang.Terminator.setup()
Reviewed-by: dholmes, alanb
2012-08-23 16:28:17 +08:00
Bengt Rutisson
68bbfe24e7 7178363: G1: Remove the serial code for PrintGCDetails and make it a special case of the parallel code
Also reviewed by vitalyd@gmail.com. Introduced the WorkerDataArray class. Fixed some minor logging bugs.

Reviewed-by: johnc, mgerdin
2012-08-23 10:21:12 +02:00
Bengt Rutisson
6dbe18d702 7193157: G1: Make some develpflags available in product builds
Also reviewed by: vitalyd@gmail.com. Make G1DefaultMinNewGenPercent, G1DefaultMaxNewGenPercent, G1OldCSetRegionLiveThresholdPercent and G1OldCSetRegionThresholdPercent experimental flags

Reviewed-by: ysr, johnc, jmasa
2012-08-23 05:25:59 +02:00
Vladimir Kozlov
cbfca3259c 7192963: assert(_in[req-1] == this) failed: Must pass arg count to 'new'
Fixed Pack node generation. Not vectorize shift instructions if count is not the same for all shifts and if count is vector.

Reviewed-by: twisti
2012-08-22 11:55:40 -07:00
Roland Westrelin
405f5a75cd 7171824: assert(_offset >= 1) failed: illegal call to offset()
C1 value numbering hits unloaded klass.

Reviewed-by: kvn, twisti
2012-08-22 14:29:57 +02:00
Staffan Larsen
6d8fa095b3 7192916: Hotspot development launcher should use DYLD_LIBRARY_PATH on OS X
Reviewed-by: dholmes, dsamersoff, nloodin
2012-08-22 10:01:51 +02:00
Daniel D. Daugherty
5a47de8e75 Merge 2012-08-21 19:25:20 -07:00
Vladimir Kozlov
ef4102148a 7192964: assert(false) failed: bad AD file
Shifts with loop variant counts "a[i]=1<<b[i];" should not be vectorized since hw does not support it.

Reviewed-by: twisti
2012-08-21 14:50:02 -07:00
John Cuthbertson
61493cd92e 7185699: G1: Prediction model discrepancies
Correct the result value of G1CollectedHeap::pending_card_num(). Change the code that calculates the GC efficiency of a non-young heap region to use historical data from mixed GCs and the actual number of live bytes when predicting how long it would take to collect the region. Changes were also reviewed by Thomas Schatzl.

Reviewed-by: azeemj, brutisso
2012-08-21 14:10:39 -07:00
Naoto Sato
73ff23b7f7 6336885: RFE: Locale Data Deployment Enhancements
4609153: Provide locale data for Indic locales
5104387: Support for gl_ES locale (galician language)
6337471: desktop/system locale preferences support
7056139: (cal) SPI support for locale-dependent Calendar parameters
7058206: Provide CalendarData SPI for week params and display field value names
7073852: Support multiple scripts for digits and decimal symbols per locale
7079560: [Fmt-Da] Context dependent month names support in SimpleDateFormat
7171324: getAvailableLocales() of locale sensitive services should return the actual availability of locales
7151414: (cal) Support calendar type identification
7168528: LocaleServiceProvider needs to be aware of Locale extensions
7171372: (cal) locale's default Calendar should be created if unknown calendar is specified

JEP 127: Improve Locale Data Packaging and Adopt Unicode CLDR Data (part 1 w/o packaging changes. by Naoto Sato and Masayoshi Okutsu)

Reviewed-by: erikj, sherman, peytoia
2012-08-21 11:00:30 -07:00
Christian Thalinger
a14e902e92 7192167: JSR 292: C1 has old broken code which needs to be removed
Reviewed-by: kvn, roland, jrose
2012-08-21 10:48:50 -07:00
John Cuthbertson
384650cb3e 7192128: G1: Extend fix for 6948537 to G1's BOT
G1 does not appear to be immune to the issue described in CR 6948537 and increasing the size of old-generation PLABs appears to increase the liklihood of seeing the issue. Extend the fix for 6948537 to G1's BlockOffsetTable.

Reviewed-by: brutisso, jmasa
2012-08-21 10:05:57 -07:00
Shirish Kuncolienkar
ae25fd53b6 7132889: (se) AbstractSelectableChannel.register and configureBlocking not safe from asynchronous close
Reviewed-by: alanb
2012-08-21 13:42:08 +01:00
Pavel Porvatov
9ef68c62d1 6866747: J2SE_Swing_Reg:can not see any HSB tab
Reviewed-by: alexsch
2012-08-21 14:37:16 +04:00
Jonathan Gibbons
504f41de5d 7192744: fix up tests to accommodate jtreg spec change
Reviewed-by: darcy
2012-08-20 13:50:04 -07:00
Vladimir Kozlov
04c6a7ce10 7190310: Inlining WeakReference.get(), and hoisting $referent may lead to non-terminating loops
In C2 add software membar after load from Reference.referent field to prevent commoning of loads across safepoint since GC can change its value. In C1 always generate Reference.get() intrinsic.

Reviewed-by: roland, twisti, dholmes, johnc
2012-08-20 09:58:58 -07:00
Vladimir Kozlov
e3c3c8527e 6340864: Implement vectorization optimizations in hotspot-server
Added asm encoding and mach nodes for vector arithmetic instructions on x86.

Reviewed-by: roland
2012-08-20 09:07:21 -07:00
Athijegannathan Sundararajan
6214b5d906 7181320: javac NullPointerException for switch labels with cast to String expressions
Reviewed-by: mcimadamore
2012-08-20 21:24:10 +05:30
Rob McKenna
e81dadf112 7191777: test/java/lang/ProcessBuilder/Basic.java failing intermittently due to additions for 4244896
Reviewed-by: dholmes, alanb
2012-08-20 14:52:12 +01:00
Sergey Malenkov
b884fcc43d 7189112: java.beans.Introspector misses write methods
Reviewed-by: rupashka
2012-08-20 13:38:30 +04:00
Frank Ding
65713fce9a 7188612: JTable's AccessibleJTable throws IllegalComponentStateException instead of null
Reviewed-by: rupashka
2012-08-20 13:16:18 +08:00
Weijun Wang
d35a91d60d 7192202: Make sure keytool prints both unknown and unparseable extensions
Reviewed-by: mullan
2012-08-20 07:59:26 +08:00
Alan Bateman
edd2d4ce86 7191467: (fs) WatchService periodically fails to queue ENTRY_DELETE event for short lived file [sol11]
Reviewed-by: chegar
2012-08-19 13:29:01 +01:00
Alan Bateman
280b56b270 7192275: Minimize LogManager dependencies on java.beans
Reduce dependency to PropertyChangeListener and PropertyChangeEvent. Also add basic test coverage.

Reviewed-by: dcubed, dsamersoff, mchung
2012-08-19 13:03:00 +01:00
Jonathan Gibbons
c1ee469435 7192449: fix up tests to accommodate jtreg spec change
Reviewed-by: darcy
2012-08-17 17:30:03 -07:00
Alejandro Murillo
913294e5db Merge 2012-08-17 16:47:04 -07:00
Alejandro Murillo
b11a680280 Merge 2012-08-17 15:41:04 -07:00
John R Rose
9d9d7877aa 7191102: nightly failures after JSR 292 lazy method handle update (round 3)
Reviewed-by: twisti, kvn
2012-08-17 13:42:25 -07:00
Daniel D. Daugherty
9d85b8e187 Merge 2012-08-17 11:57:46 -07:00
Joe Wang
5d2e65169c 7191547: XMLEventFactory.newFactory(String factoryId, ClassLoader loader) does not work as expected
Similar to the patch for 6756677 for XMLInputFactory and XMLOutputFactory, this patch fixes an error in XMLEventFactory where factoryId was taken as factory class.

Reviewed-by: lancea
2012-08-17 09:49:42 -07:00
Kumar Srinivasan
d07131ac67 7190750: (pack200) the java unpacker produces non spec. compliant classfile with lambda classfiles
Reviewed-by: jrose
2012-08-17 08:28:48 -07:00
Daniel D. Daugherty
3be453e452 7191322: add test for 7064927 to java.lang.instrument
Add support for canRetransform attribute to the test manager. Add test for 7064927.

Reviewed-by: dsamersoff, sspitsyn, ohair
2012-08-17 12:51:23 -07:00
Jason Uh
630647752a 6500133: REGRESSION: CertificateParsingException for CRL Distribution Point with blank
Reviewed-by: mullan
2012-08-17 14:32:50 -04:00
Pavel Porvatov
5aa8e80d0b 7190597: Nimbus: regtest for 4235420 fails
Reviewed-by: alexsch
2012-08-17 17:04:59 +04:00
Frank Ding
6a7bd4b00c 7191275: Cleanup OS specific blocks in PlainDatagramSocketImpl.c to support more unix-like platforms
Reviewed-by: chegar
2012-08-17 17:10:56 +08:00
Andrew Brygin
3504e5bcfa 7150594: VM chash in JCK api/java_awt/Image/ConvolveOp/ tests for 64 bit jdk8 on linux
Reviewed-by: jgodinez, prr
2012-08-17 11:22:57 +04:00
David Katleman
982db35447 Added tag jdk8-b52 for changeset 2d183808d5fd 2012-08-16 11:43:32 -07:00
David Katleman
9f4a2d95ee Added tag jdk8-b52 for changeset 81d8f7cbdcbc 2012-08-16 11:43:24 -07:00
David Katleman
8450303190 Added tag jdk8-b52 for changeset 0408deebe989 2012-08-16 11:43:20 -07:00
David Katleman
664534610e Added tag jdk8-b52 for changeset 249b4f59d330 2012-08-16 11:43:18 -07:00
David Katleman
22d6b39dc8 Added tag jdk8-b52 for changeset c2e1881d85fa 2012-08-16 11:43:12 -07:00
David Katleman
1c60d4521b Added tag jdk8-b52 for changeset 3a6dd182033b 2012-08-16 11:43:09 -07:00
David Katleman
2885a2198f Added tag jdk8-b52 for changeset 0e6fd20fd7a4 2012-08-16 11:43:06 -07:00
Chris Hegarty
9f27d2af4c 7189103: Executors needs to maintain state
Reviewed-by: dholmes, hawtin
2012-08-16 15:02:34 +01:00
Eric Wang
6b186c1238 7132247: java/rmi/registry/readTest/readTest.sh failing with Cygwin
Reviewed-by: alanb
2012-08-16 14:35:26 +01:00
Amy Lu
16c1be5ff6 7191892: ProblemList.txt updates (8/2012)
Reviewed-by: alanb
2012-08-16 11:42:47 +01:00
Alan Bateman
3261af24cf 7191556: (fs) UnixNativeDispatcher.getextmntent should be moved into platform specific code
Reviewed-by: andrew
2012-08-16 11:14:42 +01:00
Sean Coffey
9573fdd192 7185965: Build error in javadoc make stage for bundles not containing crypto package
Reviewed-by: chegar
2012-08-16 10:48:43 +01:00
David MacDonald
b9fda6fcd8 7056731: Race condition in CORBA code causes re-use of ABORTed connections
Reviewed-by: lancea
2012-08-16 10:35:35 +01:00
David MacDonald
6490b69f57 7056731: Race condition in CORBA code causes re-use of ABORTed connections
Reviewed-by: lancea
2012-08-16 10:33:01 +01:00
David Katleman
ff827332a8 Merge 2012-08-15 18:04:14 -07:00
Alejandro Murillo
e284fe5f5a 7191765: make jdk8 the default jprt release for hs24
Reviewed-by: jcoomes
2012-08-15 16:49:38 -07:00
Rob McKenna
e892fb5b1d 6931128: (spec) File attribute tests fail when run as root
Reviewed-by: alanb
2012-08-15 22:46:35 +01:00
Steve Sides
12a8d12863 7191449: update copyright year to match last edit in jdk8 langtools repository
Reviewed-by: jjh
2012-08-15 13:48:46 -07:00
Sean Mullan
e5fbf01489 7189490: More improvements to DomainCombiner checking
Reviewed-by: ahgross, jdn, vinnie
2012-08-15 15:31:30 -04:00
Andrew John Hughes
1ec7522737 7110151: Use underlying platform's zlib library for Java zlib support
Make SYSTEM_ZLIB more flexible by using ZLIB_{CFLAGS,LIBS} and building on more than just MACOSX.

Reviewed-by: sherman, alanb
2012-08-15 14:35:36 +01:00
Sergey Bylokhov
6db39dc542 7172187: [macosx] JAWT native CALayer not positioned over Canvas
Reviewed-by: art, anthony
2012-08-15 15:02:34 +04:00
Pavel Porvatov
741d368217 7190543: Nimbus LaF: regression: JSplitPane is not opaque -- or should it?
Reviewed-by: alexsch
2012-08-15 14:33:44 +04:00
Omair Majid
ce9faa4692 7190813: (launcher) RPATH needs to have additional paths
Reviewed-by: anthony, ksrini
2012-08-14 17:11:11 -04:00
Zhengyu Gu
5bc134a53b 7191124: Optimized build is broken due to inconsistent use of DEBUG_ONLY and NOT_PRODUCT macros in NMT
Updated all related variables and methods to use NOT_PRODUCT macros

Reviewed-by: coleenp, acorn, kvn
2012-08-14 13:56:46 -04:00
Michael Fang
cce753813e Merge 2012-08-13 16:26:19 -07:00
Alexander Zuev
d78db85100 7177144: [macosx] Drag and drop not working (regression in 7u6)
Reviewed-by: art, serb
2012-08-13 19:49:04 +04:00
Alexander Zuev
4c53f0adc3 Merge 2012-08-13 19:19:34 +04:00
Leonid Romanov
402fcded14 7159381: [macosx] Dock Icon defaults to Generic Java Application Category
Reviewed-by: anthony
2012-08-13 17:53:56 +04:00
Marco Dinacci
4bd6fb3f68 7161437: [macosx] awt.FileDialog doesn't respond appropriately for mac when selecting folders
Reviewed-by: art, anthony
2012-08-13 17:43:37 +04:00
Deven You
48e5b771c7 7189611: Venezuela current Currency should be Bs.F
Reviewed-by: okutsu
2012-08-13 10:45:43 +08:00
Alejandro Murillo
4e28ce96d0 7190772: new hotspot build - hs24-b21
Reviewed-by: jcoomes
2012-08-10 23:19:43 -07:00
Tim Bell
c99e9bbc0f 7190512: Fix for 7181175 broke hotspot/make/windows/create.bat builds
Add some quotes around the classpath in the project file rule.

Reviewed-by: dcubed
2012-08-10 23:16:52 -07:00
Alejandro Murillo
de7d70ee06 Added tag hs24-b20 for changeset 25eb3939c390 2012-08-10 23:07:38 -07:00
Christian Thalinger
74e492d286 Merge 2012-08-10 17:50:24 -07:00
Christian Thalinger
eadc52ac6e Merge 2012-08-10 16:03:28 -07:00
Christian Thalinger
c9fb0d52ee Merge 2012-08-10 15:50:49 -07:00
Abhijit Saha
04865aa88a Merge 2012-08-10 10:41:13 -07:00
Lana Steuck
dd32d97101 Merge 2012-08-10 10:15:52 -07:00
Lana Steuck
20bfd9b2da Merge 2012-08-10 10:14:48 -07:00
David Katleman
79c6a61454 Added tag jdk8-b51 for changeset 716ed0cb0cea 2012-08-09 18:02:43 -07:00
David Katleman
ff0c285578 Added tag jdk8-b51 for changeset 1325e8a540e5 2012-08-09 18:02:01 -07:00
David Katleman
2db20e0e30 Added tag jdk8-b51 for changeset d63c06178ebc 2012-08-09 18:01:45 -07:00
David Katleman
fd4e1e725f Added tag jdk8-b51 for changeset f333428be769 2012-08-09 18:01:36 -07:00
David Katleman
923215d482 Added tag jdk8-b51 for changeset 90fa336b0a49 2012-08-09 18:00:58 -07:00
David Katleman
defa61a4fc Added tag jdk8-b51 for changeset 0efd681d5f54 2012-08-09 18:00:30 -07:00
David Katleman
65699480fc Added tag jdk8-b51 for changeset 3cb655c7a1f2 2012-08-09 18:00:28 -07:00
Christian Thalinger
bc7a239b90 7190416: JSR 292: typo in InvokerBytecodeGenerator.getConstantPoolSize
Reviewed-by: jrose
2012-08-09 15:03:28 -07:00
Joel Borggrén-Franck
4f5a96bc8b 7188442: rename java.lang.annotation.ContainerAnnotation to ContainedBy
Reviewed-by: darcy, jjg
2012-08-09 17:49:43 +02:00
Vinnie Ryan
790c4cdcec 7190945: pkcs11 problem loading NSS libs on Ubuntu
Reviewed-by: xuelei, alanb
2012-08-13 14:06:44 +01:00
Shirish Kuncolienkar
492ac282bf 7190254: NetworkInterface getFlags implementation should support full integer bit range for flags value
Reviewed-by: chegar
2012-08-13 13:41:23 +01:00
Jonathan Lu
f349c3da24 7190219: (bf) CharBuffer.put(String,int,int) modifies position even if BufferOverflowException thrown
Reviewed-by: alanb
2012-08-13 19:51:48 +08:00
Christian Schulte
d947b5d95a 7188755: Crash due to missing synchronization on gconf_client in DefaultProxySelector.c
Reviewed-by: chegar
2012-08-12 22:56:45 +01:00
Lana Steuck
e4f5fdbb4d Merge 2012-08-10 14:00:08 -07:00
Valerie Peng
a44a57d7b6 7185471: Avoid key expansion when AES cipher is re-init w/ the same key
Saved the last cipher key value and skip key expansion if key value is the same.

Reviewed-by: weijun, xuelei
2012-08-10 13:10:35 -07:00
Valerie Peng
919dca6024 7107616: scalability bloker in javax.crypto.JceSecurityManager
Changed the type of field "exemptCache" from HashMap to ConcurrentHashMap.

Reviewed-by: weijun, xuelei
2012-08-10 13:08:59 -07:00
Valerie Peng
21f7aaed74 7107613: scalability bloker in javax.crypto.CryptoPermissions
Changed the type of field "perms" from Hashtable to ConcurrentHashMap.

Reviewed-by: weijun, xuelei
2012-08-10 13:08:23 -07:00
Lana Steuck
db3fde2037 Merge 2012-08-10 12:48:22 -07:00
Sean Mullan
6a5d4204af Merge 2012-08-10 09:17:14 -04:00
Sean Mullan
c0dc8e53b5 7187962: sun.security.pkcs11.P11DSAKeyFactory.implTranslatePublicKey doesn't check if params is null
Reviewed-by: valeriep
2012-08-10 09:12:12 -04:00
Xueming Shen
ff93896a39 7189363: Regex Pattern compilation buggy for special sequences
Fixed the incorrect implementation in expr(...)

Reviewed-by: psandoz, alanb
2012-08-09 10:15:26 -07:00
Dmitry Samersoff
12ab6cc327 7183753: [TEST] Some colon in the diff for this test
Reference output file contains extra colon

Reviewed-by: sspitsyn, mgronlun
2012-08-09 14:52:12 +04:00
Vladimir Danushevsky
886fb99d53 Merge 2012-08-08 16:09:11 -04:00
Joseph Provino
b6622dce73 7153374: ARM ONLY .. linking problem with new compilers.. Need to use -fPIC
Add "arm" to the list of processors that need -fPIC

Reviewed-by: vladidan, dholmes
2012-08-08 15:43:51 -04:00
Athijegannathan Sundararajan
9724583022 7178324: Crash when compiling for(i : x) try(AutoCloseable x = ...) {}
Reviewed-by: darcy, jjg
2012-08-08 22:17:27 +05:30
Kumar Srinivasan
60ea1205b7 7189944: (launcher) test/tools/launcher/Arrrrghs.java needs a couple of minor fixes
Reviewed-by: darcy, jgish
2012-08-08 09:29:32 -07:00
Amy Lu
56779e429b 7189886: (aio) Add test coverage for AsynchronousChannelGroup.withThreadPool
Reviewed-by: alanb
2012-08-08 15:31:22 +01:00
Andrew John Hughes
b3ebff94ab 7189533: GetJavaProperties should free temporary file if subsequent allocations fails
Add missing calls to free

Reviewed-by: alanb, dholmes, sherman
2012-08-08 12:37:02 +01:00
Lana Steuck
e6f6b2dfda Merge 2012-08-07 20:24:18 -07:00
Lana Steuck
7fd65168fe Merge 2012-08-07 20:23:41 -07:00
Christian Thalinger
e622fcdc27 7188911: nightly failures after JSR 292 lazy method handle update (round 2)
Reviewed-by: kvn, jrose
2012-08-07 14:32:08 -07:00
Christian Thalinger
e52fc3fb2c 7188911: nightly failures after JSR 292 lazy method handle update (round 2)
Reviewed-by: kvn, jrose
2012-08-07 14:31:52 -07:00
Alejandro Murillo
eee7b367a1 7189729: jprt.properties should include release jdk7u8
Reviewed-by: jcoomes
2012-08-07 09:53:12 -07:00
Eric Wang
3ba6a2dff8 7076644: TEST_BUG: test/java/io/File/Basic.java fails with cygwin
Reviewed-by: alanb
2012-08-07 12:47:45 +01:00
Lana Steuck
902382c4dd Merge 2012-08-06 15:53:34 -07:00
Keith McGuigan
dbe25e46f3 7116786: RFE: Detailed information on VerifyErrors
Provide additional detail in VerifyError messages

Reviewed-by: sspitsyn, acorn
2012-08-06 15:54:45 -04:00
Brandon Mitchell
3234f913bb 6818524: G1: use ergonomic resizing of PLABs
Employ PLABStats instances to record information about survivor and old PLABs, and use the recorded stats to adjust the sizes of survivor and old PLABS.

Reviewed-by: johnc, ysr
2012-08-06 12:20:14 -07:00
Daniel D. Daugherty
75f8f79764 Merge 2012-08-06 09:34:40 -07:00
Volker Simonis
6c6a957121 7181175: Enable builds on Windows with MinGW/MSYS
This fix is the minimum number of Makefile changes to enable building HotSpot with MinGW/MSYS

Reviewed-by: jcoomes, dcubed, tbell, ohair
2012-08-03 18:34:28 -07:00
Alejandro Murillo
82446583c4 7189086: new hotspot build - hs24-b20
Reviewed-by: jcoomes
2012-08-03 13:24:02 -07:00
Alejandro Murillo
8651eaa785 Added tag hs24-b19 for changeset a8397f4de214 2012-08-03 13:13:43 -07:00
Alejandro Murillo
55c459b8fb Merge 2012-08-03 13:13:42 -07:00
Abhijit Saha
ba9f0c030f Merge 2012-08-02 22:23:28 -07:00
Darryl Mocek
f001b9eb53 7187876: ClassCastException in TCPTransport.executeAcceptLoop
Reviewed-by: dholmes, smarks
2012-08-02 18:12:18 -07:00
David Katleman
80335ce280 Added tag jdk8-b50 for changeset 1081f6a5c2ef 2012-08-02 15:37:22 -07:00
David Katleman
1086269167 Added tag jdk8-b50 for changeset 9e9deec19f0f 2012-08-02 15:36:39 -07:00
David Katleman
d461ecc60d Added tag jdk8-b50 for changeset 4b4d56b18674 2012-08-02 15:35:19 -07:00
David Katleman
1b9d38a123 Added tag jdk8-b50 for changeset c0935ebf58d0 2012-08-02 15:35:03 -07:00
David Katleman
04cd1ed8a0 Added tag jdk8-b50 for changeset 91311c4d5882 2012-08-02 15:33:31 -07:00
David Katleman
4fcfbee121 Added tag jdk8-b50 for changeset 48c6010d07a1 2012-08-02 15:32:46 -07:00
David Katleman
7db4eb4efd Added tag jdk8-b50 for changeset 3d3a1c3550f3 2012-08-02 15:32:36 -07:00
Daniel D. Daugherty
4a848cf3e5 7188168: 7071904 broke the DEBUG_BINARIES option on Linux
Change DEBUG_BINARIES option logic to be more clear.

Reviewed-by: fparain, andrew
2012-08-02 14:54:14 -07:00
Abhijit Saha
4c3a0cd840 Merge 2012-08-02 14:29:12 -07:00
Maurizio Cimadamore
b1457fe814 7187104: Inference cleanup: remove redundant exception classes in Infer.java
Remove unused exception classes in Infer.java

Reviewed-by: jjg
2012-08-02 18:24:01 +01:00
Maurizio Cimadamore
a39622326e 7175538: Integrate efectively final check with DA/DU analysis
Allow generalized effectively-final analysis for all local variables

Reviewed-by: jjg, dlsmith
2012-08-02 18:23:21 +01:00
Maurizio Cimadamore
b03ad3ae09 7175911: Simplify error reporting API in Check.CheckContext interface
Make error messages generated during Check.checkType more uniform and more scalable

Reviewed-by: jjg, dlsmith
2012-08-02 18:22:41 +01:00
Sean Mullan
7a13d26b0c Merge 2012-08-02 10:42:19 -04:00
Jason Uh
1bbbba58c1 7026347: Certificate and X509CRL should have verify(PublicKey key, Provider sigProvider)
Reviewed-by: mullan, xuelei, weijun
2012-08-02 10:40:24 -04:00
Zhengyu Gu
38a6055c37 Merge 2012-08-01 16:16:13 -07:00
Zhengyu Gu
9047207b09 Merge 2012-08-01 15:00:50 -07:00
Christian Thalinger
e409ee94ae 7188276: JSR 292: assert(ct == T_OBJECT) failed: rt=T_OBJECT, ct=13
Reviewed-by: kvn, jrose
2012-08-01 14:44:26 -07:00
Zhengyu Gu
a13f3bdad8 7185614: NMT ON: "check by caller" assertion failed on nsk ThreadMXBean test
7187429: NMT ON: Merge failure should cause NMT to shutdown

Fixed NMT assertion failures

Reviewed-by: acorn, kvn
2012-08-01 17:19:30 -04:00
Omair Majid
d8dce91141 6844255: Potential stack corruption in GetJavaProperties
Use dynamically allocated buffers for temp and encoding.

Reviewed-by: alanb, andrew
2012-08-01 22:13:12 +01:00
Vladimir Kozlov
ebeff89a89 7188227: VM should recognize M-series SPARC
Check kstat data for SPARC-M.

Reviewed-by: roland
2012-08-01 14:10:32 -07:00
Coleen Phillimore
d52b3a7eb7 7129723: MAC: Some regression tests need to recognize Mac OS X platform
Add Darwin like Linux to shell scripts

Reviewed-by: kvn, kamg, dholmes
2012-08-01 16:52:43 -04:00
Sean Mullan
47403da7be Merge 2012-08-01 11:08:11 -04:00
Sean Mullan
771200f58c 7179715: OCSP revocation checking fails if the signer certificate is identified using the key ID
Reviewed-by: vinnie
2012-08-01 11:06:44 -04:00
Lana Steuck
fe4e448bfa Merge 2012-07-31 18:38:38 -07:00
Daniel D. Daugherty
7f344540be Merge 2012-07-31 18:37:13 -07:00
Andrew John Hughes
7c357b0628 7186278: Build error after CR#6995781 / 7151532 with GCC 4.7.0
Templates need this object if not using template parameter in call

Reviewed-by: coleenp, kamg, dholmes
2012-07-31 16:01:56 -04:00
Kumar Srinivasan
8ab8ef182e 7146424: Wildcard expansion for single entry classpath
Reviewed-by: dholmes, darcy, jjh, sherman
2012-07-31 06:14:28 -07:00
Akhil Arora
c0283983eb 7188114: (launcher) need an alternate command line parser for Windows
Reviewed-by: darcy, dholmes, jjh
2012-07-31 06:10:01 -07:00
Xueming Shen
b5bee4c17e 7188852: Move implementation of De/Inflater.getBytesRead/Writtten() to java from native
Re-implemented getBytesRead/Writtten() at java level

Reviewed-by: andrew, alanb
2012-08-03 13:40:03 -07:00
Michael McMahon
4e5c88a7fe 7120665: Change Java SE spec so that external networking not required
Reviewed-by: alanb
2012-07-30 22:32:59 +01:00
Vladimir Kozlov
5e05a0d592 7187454: stack overflow in C2 compiler thread on Solaris x86
Added new FormatBufferResource class to use thread's resource area for error message buffer.

Reviewed-by: twisti
2012-07-30 09:49:25 -07:00
Zhengyu Gu
318ce174a4 Merge 2012-07-30 07:21:15 -07:00
Zhengyu Gu
5515df5c31 7186778: MachO decoder implementation for MacOSX
Implementation of decoder for Apple's MacOSX. The implementation is based on the patch provided by Kevin Walls.

Reviewed-by: coleenp, kamg, kevinw
2012-07-30 10:25:52 -04:00
Alexander Scherbatiy
26f36a5cd0 7184365: closed/java/awt/event/TextEvent/TextEventSequenceTest/TextEventSequenceTest fails
Reviewed-by: serb, bagiras
2012-07-30 14:31:01 +04:00
Sergey Malenkov
3851c96f71 7187618: PropertyDescriptor Performance Slow
Reviewed-by: rupashka
2012-07-30 13:35:10 +04:00
Dan Xu
f4ac5f7956 7185340: TEST_BUG: java/nio/channels/AsynchronousSocketChannel/Leaky.java failing intermittently [win]
Reviewed-by: alanb
2012-07-30 04:57:27 +01:00
Xue-Lei Andrew Fan
1c29d4299b 7186286: TLS implementation to better adhere to RFC
Also reviewed by Alexander Fomin <Alexander.Fomin@Oracle.COM>, Andrew Gross<Andrew.Gross@Oracle.COM>, Sean Coffey<Sean.Coffey@Oracle.COM>

Reviewed-by: valeriep, wetmore
2012-07-28 19:42:50 -07:00
Lana Steuck
565c89629e Merge 2012-07-27 22:39:44 -07:00
Lana Steuck
44ce09ba1f Merge 2012-07-27 22:26:19 -07:00
Jon Masamitsu
b69d120923 Merge 2012-07-27 21:41:17 -07:00
Darryl Mocek
1625e2019e 7186111: fix bugs in java/rmi/activation/ActivationSystem/unregisterGroup/UnregisterGroup
Reviewed-by: smarks, jgish
2012-07-27 16:53:15 -07:00
Alejandro Murillo
dafee02d32 7187463: new hotspot build - hs24-b19
Reviewed-by: jcoomes
2012-07-27 16:51:44 -07:00
Christian Thalinger
b9eb5785cc 7187290: nightly failures after JSR 292 lazy method handle update
Reviewed-by: kvn, twisti
2012-07-27 16:14:15 -07:00
Jim Gish
558e1362a9 6914123: (str) Missing synchronization in java.lang.String#contentEquals(CharSequence)
Change contentEquals( CharSequence cs ) to do synchronization if cs is a StringBuffer

Reviewed-by: mduigou
2012-07-27 16:17:11 -04:00
Alejandro Murillo
3f2effb856 Added tag hs24-b18 for changeset bf02c20037ae 2012-07-27 12:08:33 -07:00
Alejandro Murillo
dc88d0a088 Merge 2012-07-27 12:08:32 -07:00
Denis Fokin
4852f8a995 7149068: java/awt/Window/Grab/GrabTest.java failed
Reviewed-by: art, ant
2012-07-27 19:41:24 +04:00
Jon Masamitsu
a4ee9cab5a Merge 2012-07-26 23:43:36 -07:00
Jiangli Zhou
d75f8a04c8 Merge 2012-07-26 16:55:42 -07:00
Christine Lu
3cf0eca766 Added tag jdk8-b49 for changeset b47c53dc4c45 2012-07-26 16:48:41 -07:00
Christine Lu
707c3b054a Added tag jdk8-b49 for changeset be20c8b5a9da 2012-07-26 16:48:33 -07:00
Christine Lu
fb21a08d02 Added tag jdk8-b49 for changeset 521a481677ff 2012-07-26 16:48:28 -07:00
Christine Lu
2197a8fbd0 Added tag jdk8-b49 for changeset 23117496a054 2012-07-26 16:48:26 -07:00
Christine Lu
4ea3138612 Added tag jdk8-b49 for changeset 9e2de5dca700 2012-07-26 16:48:17 -07:00
Christine Lu
5a3b41290f Added tag jdk8-b49 for changeset 530f4983fc73 2012-07-26 16:48:11 -07:00
Christine Lu
9e1309ade2 Added tag jdk8-b49 for changeset f66321de53db 2012-07-26 16:48:07 -07:00
Jiangli Zhou
338bf6e0b1 7187046: Crash in ClassFileParser on solaris-ia32 during RetransformClasses
Lower compiler optimization level when compiling jvmtiClassFileReconstituter.cpp as a workaround for the solaris x86 5.10 cc bug.

Reviewed-by: kvn, coleenp
2012-07-26 17:24:31 -04:00
Sean Coffey
37f0895031 7179879: SSLSocket connect times out instead of throwing socket closed exception
Reviewed-by: xuelei, chegar
2012-07-26 22:00:55 +01:00
Weijun Wang
cac7fc8e12 7187051: ShortRSAKeynnn.sh tests should do cleanup before start test
Reviewed-by: xuelei
2012-07-26 20:38:44 +08:00
Xueming Shen
e55dd14a45 7186829: test/sun/nio/cs/OLD/JIS_X_0201_OLD.java failed in jdk8 TL nightly build
Fixed the test case

Reviewed-by: alanb
2012-07-25 12:47:28 -07:00
Oleg Pekhovskiy
79a36f32ee 7185678: java/awt/Menu/NullMenuLabelTest/NullMenuLabelTest.java failed with NPE
Reviewed-by: art, ahgross
2012-07-25 19:46:00 +04:00
Sergey Malenkov
79228b75d4 4650871: Classes in sunw.* should be removed from workspace and rt.jar
Reviewed-by: art, rupashka
2012-07-25 19:14:02 +04:00
Pavel Porvatov
30ec391b79 7167780: Hang javasoft.sqe.tests.api.javax.swing.Timer.Ctor2Tests
Reviewed-by: alexsch
2012-07-25 13:41:46 +04:00
Jon Masamitsu
3d41dfe891 Merge 2012-07-24 14:48:58 -07:00
Kurchi Subhra Hazra
9b4da3fa50 7184287: (prefs) BackingStoreException when calling flush on root node[macosx]
Change implementation to enable user without administrative privileges to call flush

Reviewed-by: alanb
2012-07-24 13:38:50 -07:00
Xueming Shen
b9fa2e4fb9 6653797: Reimplement JDK charset repository charsets.jar
Migrated all jis based charsets to new implementation

Reviewed-by: okutsu
2012-07-24 12:17:39 -07:00
Lana Steuck
bcc24c4b1f Merge 2012-07-24 11:06:38 -07:00
Lana Steuck
8f80a15abb Merge 2012-07-24 11:05:52 -07:00
Lana Steuck
10bd761f06 Merge 2012-07-24 11:05:30 -07:00
Lana Steuck
0ec487a01e Merge 2012-07-24 11:05:27 -07:00
Christian Thalinger
12901d0e5b 7023639: JSR 292 method handle invocation needs a fast path for compiled code
6984705: JSR 292 method handle creation should not go through JNI

Remove assembly code for JDK 7 chained method handles

Co-authored-by: John Rose <john.r.rose@oracle.com>
Co-authored-by: Michael Haupt <michael.haupt@oracle.com>
Reviewed-by: jrose, twisti, kvn, mhaupt
2012-07-24 10:51:00 -07:00
Christian Thalinger
360d512854 7023639: JSR 292 method handle invocation needs a fast path for compiled code
6984705: JSR 292 method handle creation should not go through JNI

Remove assembly code for JDK 7 chained method handles

Co-authored-by: John Rose <john.r.rose@oracle.com>
Co-authored-by: Michael Haupt <michael.haupt@oracle.com>
Reviewed-by: jrose, twisti, mhaupt, forax
2012-07-24 10:47:44 -07:00
Jiangli Zhou
67f97ee6eb Merge 2012-07-24 13:16:26 -04:00
Alexander Scherbatiy
8007dfcd9b 7129800: [macosx] Regression test OverrideRedirectWindowActivationTest fails due to timing issue
Reviewed-by: rupashka
2012-07-24 16:26:05 +04:00
Xue-Lei Andrew Fan
58aa6e97a4 7185576: Need to consider the connection timeout at test/com/sun/jndi/ldap/InvalidLdapFilters.java
Reviewed-by: vinnie
2012-07-24 03:31:44 -07:00
Weijun Wang
3caaf6a13d 7179796: GSSExceptionImpl outputs duplicate mech oid
Reviewed-by: valeriep
2012-07-24 09:20:44 +08:00
Abhijit Saha
5a456b0991 7185550: TEST: runtime/7020373/Test7020373.sh fails because there is no test/runtime/7020373/testcase.jar
Reviewed-by: coleenp
2012-07-23 14:28:38 -07:00
Alejandro Murillo
893817c28d 7185775: new hotspot build - hs24-b18
Reviewed-by: jcoomes
2012-07-23 13:04:59 -07:00
Alejandro Murillo
5ca5cc7488 Added tag hs24-b17 for changeset bc3545585f1d 2012-07-23 12:54:21 -07:00
Alejandro Murillo
b7b568e088 Merge 2012-07-23 12:54:20 -07:00
Christine Lu
ca56ab97be Added tag jdk8-b48 for changeset 9d19a5f8d2ad 2012-07-23 12:38:49 -07:00
Christine Lu
d6470ba9cb Added tag jdk8-b48 for changeset b070f2471114 2012-07-23 12:38:34 -07:00
Christine Lu
d31d68b07c Added tag jdk8-b48 for changeset 2bd7c6c12449 2012-07-23 12:38:24 -07:00
Christine Lu
6140c462db Added tag jdk8-b48 for changeset ff4cbdd893ef 2012-07-23 12:38:21 -07:00
Christine Lu
7c2cc82bb5 Added tag jdk8-b48 for changeset 16ab57e58669 2012-07-23 12:38:08 -07:00
Christine Lu
6e4646ad87 Added tag jdk8-b48 for changeset 7a93e19ba08f 2012-07-23 12:38:01 -07:00
Christine Lu
98cf9a3c0b Added tag jdk8-b48 for changeset 60b5f491c654 2012-07-23 12:37:58 -07:00
Alexander Scherbatiy
cd7e4aab71 7185512: The printout doesn't match image on screen
Reviewed-by: serb, bagiras
2012-07-23 17:41:43 +04:00
Oleg Pekhovskiy
f28b488994 7180036: Build failure in Mac platform caused by fix # 7163201
Reviewed-by: art, kizune, ahgross
2012-07-23 15:51:46 +04:00
Oleg Pekhovskiy
ffc9ae1245 7163201: Simplify toolkit internals references
Reviewed-by: art, anthony, ahgross
2012-08-30 13:11:23 -07:00
Sergey Malenkov
5f51412783 7183701: [TEST] closed/java/beans/security/TestClassFinder.java - compilation failed
Reviewed-by: rupashka
2012-07-31 21:01:56 +04:00
Alan Bateman
dad0499822 6633549: (dc) Include-mode filtering of IPv6 sources does not block datagrams on Linux
Reviewed-by: chegar
2012-07-22 20:32:12 +01:00
Weijun Wang
3db0a0443c 7178649: TEST BUG: BadKdc3.java needs improvement to ignore the unlikely but possible timeout
Reviewed-by: xuelei
2012-07-21 19:56:55 +08:00
Weijun Wang
53170d594f 7180907: Jarsigner -verify fails if rsa file used sha-256 with authenticated attributes
Reviewed-by: xuelei
2012-07-21 19:56:53 +08:00
Coleen Phillimore
f2ebc850fd Merge 2012-07-20 12:09:31 -04:00
Xueming Shen
067447f6c6 7130915: File.equals does not give expected results when path contains Non-English characters on Mac OS X
To support Unicode nfd/nfc file path on Macos

Reviewed-by: alanb
2012-07-19 21:23:53 -07:00
Vladimir Kozlov
c4a4b178ef Merge 2012-07-19 16:17:41 -07:00
Antonios Printezis
a6580a7e63 7114678: G1: various small fixes, code cleanup, and refactoring
Various cleanups as a prelude to introducing iterators for HeapRegions.

Reviewed-by: johnc, brutisso
2012-07-19 15:15:54 -07:00
Eric Wang
d74533b1eb 7081476: test/java/net/InetSocketAddress/B6469803.java failing intermittently
Reviewed-by: chegar
2012-07-19 18:19:04 +01:00
Leonid Romanov
9134e38287 7181027: [macosx] Unable to use headless mode
Reviewed-by: anthony
2012-07-19 19:41:59 +04:00
Pavel Porvatov
5f81b7f30d 7124330: [macosx] javax.swing.JComboBox throws unexpected ClassCastException
Reviewed-by: kizune
2012-07-19 19:09:30 +04:00
Zhengyu Gu
b5b29845bd Merge 2012-07-19 06:24:46 -07:00
Zhengyu Gu
5e38ba06cb Merge 2012-07-19 09:15:50 -04:00
Zhengyu Gu
a0930ac7cd Merge 2012-07-19 09:10:12 -04:00
Zhengyu Gu
f9083712dd 7182543: NMT ON: Aggregate a few NMT related bugs
1) Fixed MemTrackWorker::generations_in_used() calculation 2) Ensured NMT not to leak memory recorders after shutdown 3) Used ThreadCritical to block safepoint safe threads

Reviewed-by: acorn, coleenp, dholmes, kvn
2012-07-19 09:05:42 -04:00
Lana Steuck
6a79c2b179 Merge 2012-07-18 16:09:35 -07:00
Lana Steuck
a4f6148fb5 Merge 2012-07-18 16:08:20 -07:00
Lana Steuck
f30c450012 Merge 2012-07-18 16:07:45 -07:00
Dan Xu
c542e8e7b7 7185051: Remove TestProviderLeak.java from the ProblemList
Remove TestProviderLeak.java from jdk test problem list.

Reviewed-by: khazra
2012-07-18 15:19:22 -07:00
David Katleman
3ab617634c Merge 2012-07-18 14:18:48 -07:00
Michael McMahon
94f61c976b 7183292: HttpURLConnection.getHeaderFields() throws IllegalArgumentException: Illegal cookie name
Reviewed-by: khazra, chegar
2012-07-18 18:46:17 +01:00
Darryl Mocek
811a20ee54 7184943: fix failing test com/sun/jndi/rmi/registry/RegistryContext/UnbindIdempotent.java
7184946: fix failing test com/sun/jndi/rmi/registry/RegistryContext/ContextWithNullProperties.java

Reviewed-by: smarks
2012-07-18 10:04:45 -07:00
Alexander Scherbatiy
14e75d338b 7182902: [macosx] Test api/java_awt/GraphicsDevice/indexTGF.html#SetDisplayMode fails on Mac OS X 10.7
Reviewed-by: bae, kizune
2012-07-18 18:25:49 +04:00
Abhijit Saha
bba3260a52 7053586: TEST: runtime/7020373/Test7020373.sh fails on 64-bit platforms
Reviewed-by: kamg
2012-07-17 22:16:17 -07:00
Xueming Shen
50e0a37ed9 7183053: Optimize DoubleByte charset for String.getBytes()/new String(byte[])
DoubleByte implements sun/nio.cs/ArrayDe/Encoder interface

Reviewed-by: alanb
2012-07-17 19:57:31 -07:00
Phil Race
062fbe8cad 7183251: Netbeans editor renders text wrong on JDK 7u6 build 17
Reviewed-by: igor, jgodinez
2012-07-17 16:35:49 -07:00
Jon Masamitsu
08ea4ea9b8 Merge 2012-07-17 14:33:17 -07:00
Thomas Schatzl
7ac8896f1d 7182260: G1: Fine grain RSet freeing bottleneck
Chain the fine grain PerRegionTables in an individual RSet together and free them in bulk using a single operation.

Reviewed-by: johnc, brutisso
2012-07-17 12:24:05 -07:00
Brandon Mitchell
6fdfe86bbd 7184772: G1: Incorrect assert in HeapRegionLinkedList::add_as_head()
Assertion incorrectly checks that _head is NULL and should be checking that _tail is NULL instead.

Reviewed-by: johnc
2012-07-17 14:57:02 -07:00
John Cuthbertson
7e2522f283 7173712: G1: Duplicated code in G1UpdateRSOrPushRefOopClosure::do_oop_nv()
Duplicated code from G1RemSet::par_write_ref() inlined into G1UpdateRSOrPushRefOopClosure::do_oop_nv() was showing up in profiles with a fairly high amount of CPU time. Manually inline the main part of G1RemSet::par_write_ref() to eliminate the code duplication.

Reviewed-by: azeemj, brutisso
2012-07-17 11:52:10 -07:00
Vladimir Kozlov
4b6b0ec3c4 Merge 2012-07-17 11:16:13 -07:00
Olivier Lagneau
c25dd16233 7142596: RMI JPRT tests are failing
Changed RMI tests to use random port numbers for the RMI Registry and RMID so the tests can be run concurrently without test failures due to tests using the same port numbers.

Reviewed-by: smarks, alanb
2012-07-17 11:01:44 -07:00
Jiangli Zhou
8f066485db Merge 2012-07-17 12:32:26 -04:00
Oleg Pekhovskiy
e99cc14fc5 7177040: Deadlock between PostEventQueue.noEvents, EventQueue.isDispatchThread and SwingUtilities.invokeLater
Reviewed-by: anthony, ant
2012-07-17 12:59:57 +04:00
Lana Steuck
894d7c75d6 Merge 2012-07-16 22:05:16 -07:00
Weijun Wang
d7f3ef3fb7 7102106: TEST_BUG: sun/security/util/Oid/S11N.sh should be modified
Reviewed-by: mullan
2012-07-17 11:57:37 +08:00
Weijun Wang
8c0bafddc3 7183203: ShortRSAKeynnn.sh tests intermittent failure
Reviewed-by: xuelei
2012-07-17 11:28:16 +08:00
Vladimir Kozlov
310ad38a4b Merge 2012-07-16 19:50:52 -07:00
Vladimir Kozlov
15f4203b0f 7181494: cleanup avx and vectors code
Renamed mach nodes which use scalar AVX instructions, added integer vectors shuffling instructions

Reviewed-by: twisti
2012-07-16 17:10:22 -07:00
Lana Steuck
187f3fcc36 Merge 2012-07-16 17:05:13 -07:00
Lana Steuck
d515cd505a Merge 2012-07-16 17:04:32 -07:00
Lana Steuck
052400a120 Merge 2012-07-16 17:02:36 -07:00
Lana Steuck
9232364ddb Merge 2012-07-16 17:01:41 -07:00
Lana Steuck
7222ea9529 Merge 2012-07-16 16:49:29 -07:00
Dan Xu
50bf3b7bdc 7177045: Rework the TestProviderLeak.java regression test, it is too fragile to low memory errors
Increase Xmx to 20 MB and add mechanisms to eat up most of the JVM free memory.

Reviewed-by: wetmore
2012-07-16 16:30:11 -07:00
Lana Steuck
80c6175a2a Merge 2012-07-16 14:49:27 -07:00
Vinnie Ryan
317421f6e6 6880559: Enable PKCS11 64-bit windows builds
Reviewed-by: valeriep
2012-07-16 22:41:04 +01:00
Vinnie Ryan
b530224aad 6880559: Enable PKCS11 64-bit windows builds
Reviewed-by: valeriep
2012-07-16 22:38:49 +01:00
Jon Masamitsu
00502cdd51 Merge 2012-07-16 13:00:26 -07:00
Dean Long
62ce00b4ca 7147464: Java crashed while executing method with over 8k of dneg operations
Replace recursive method with iterative

Reviewed-by: kvn, twisti
2012-07-16 15:31:18 -04:00
Kelly O'Hair
889ba61369 7184406: Adjust get_source/hgforest script to allow for trailing // characters
Reviewed-by: tbell
2012-07-16 11:43:23 -07:00
Christian Thalinger
19ea8f720f 7087357: JSR 292: remove obsolete code after 7085860
Reviewed-by: kvn, never
2012-07-16 11:14:41 -07:00
Zhengyu Gu
196abe2523 7181986: NMT ON: Assertion failure when running jdi ExpiredRequestDeletionTest
Changed _query_lock to heap object from static object. Also fixed _query_lock and snapshot lock ranks, so they can participate deadlock detection.

Reviewed-by: coleenp, dholmes, kvn
2012-07-16 14:10:34 -04:00
Zhengyu Gu
1bb1a8008c 7181989: NMT ON: Assertion failure when NMT checks thread's native stack base address
Assertion on stack base is not necessary

Reviewed-by: coleenp, dholmes, kvn
2012-07-16 14:05:34 -04:00
Frederic Parain
c0a96ff2a4 7183754: Test runtime/6294277/Test6294277.sh runs wrong JVM
Reviewed-by: kamg, coleenp, ctornqvi
2012-07-16 04:06:44 -07:00
Sergey Bylokhov
6261447205 7170657: [macosx] There seems to be no keyboard/mouse action to select non-contiguous items in List
Reviewed-by: rupashka
2012-07-16 14:04:03 +04:00
Sergey Bylokhov
5ef289c76b 7181438: [OGL] Incorrect alpha used, during blit from SW to the texture
Reviewed-by: prr, campbell
2012-07-16 14:00:36 +04:00
Kumar Srinivasan
3c9f53969a 7184145: (pack200) pack200 --repack throws NullPointerException when JAR file specified without path
Reviewed-by: alanb, sherman
2012-07-14 18:00:42 -07:00
Vladimir Kozlov
27e9d6f36d 7123926: Some CTW test crash: !_control.contains(ctrl)
Don't eliminate Integer::toString() call node during String concatenation optimization if it has several uses.

Reviewed-by: twisti
2012-07-13 17:48:26 -07:00
Jiangli Zhou
7b82f72ba9 Merge 2012-07-13 20:14:27 -04:00
Kurchi Subhra Hazra
29739d16ee 7160252: (prefs) NodeAddedEvent was not delivered when new node add when new Node
Change native code to convey to Java code whether a new node was added

Reviewed-by: alanb, chegar
2012-07-13 16:02:26 -07:00
Alejandro Murillo
b5cfc76c1e 7184050: new hotspot build - hs24-b17
Reviewed-by: jcoomes
2012-07-13 14:16:21 -07:00
Alejandro Murillo
8aaf8673f1 Added tag hs24-b16 for changeset 3db9eaf7c6ab 2012-07-13 14:06:34 -07:00
Alejandro Murillo
4b959a29ea Merge 2012-07-13 14:06:33 -07:00
Maurizio Cimadamore
340f4947e5 7181578: javac reports uninitialized variable with nested try...finally blocks
Regression introduced in refactoring of Flow.java

Reviewed-by: jjg
2012-07-13 12:58:50 +01:00
Joe Wang
fec1de491b 7183760: DocumentBuilder.parse(String uri) is not IPv6 enabled
Removing the hack of using escapeNonUSAscii. this is the same patch as 7166896 for 7u8.

Reviewed-by: psandoz, lancea
2012-07-12 21:06:52 -07:00
David Katleman
e351ad6287 Added tag jdk8-b47 for changeset f0b04f0fc310 2012-07-12 16:48:37 -07:00
David Katleman
9805e67718 Added tag jdk8-b47 for changeset 2bfc7517a106 2012-07-12 16:48:24 -07:00
David Katleman
f4018d1d35 Added tag jdk8-b47 for changeset eb447c603031 2012-07-12 16:48:15 -07:00
David Katleman
ebbf572261 Added tag jdk8-b47 for changeset 6ab81ecbfa0d 2012-07-12 16:48:13 -07:00
David Katleman
32a0fe5fa4 Added tag jdk8-b47 for changeset a655fb35e798 2012-07-12 16:48:00 -07:00
David Katleman
079b7a5e8a Added tag jdk8-b47 for changeset 89587a8ac2f4 2012-07-12 16:47:53 -07:00
David Katleman
9564f9eeb1 Added tag jdk8-b47 for changeset 89d0de913efd 2012-07-12 16:47:51 -07:00
Phil Race
53cbbbb036 7183458: Metrics of space character in algorithmically emboldened font have changed in JDK 7
Reviewed-by: igor, jgodinez
2012-07-12 16:24:56 -07:00
Vladimir Kozlov
59bb4ea7cc Merge 2012-07-12 14:19:15 -07:00
Coleen Phillimore
5579942e7a Merge 2012-07-12 14:26:25 -04:00
Pavel Tisnovsky
d0b5b673e8 7022041: TitleBorder Null Pointer Exception
Added check if getTitleFont() and getTitleColor() don't return null

Reviewed-by: alexsch
2012-07-12 16:54:47 +02:00
Michael Haupt
e0cf9c652d 6711908: JVM needs direct access to some annotations
Add annotation extraction code to class file parser.

Reviewed-by: twisti, jrose, kvn
2012-07-12 00:39:53 -07:00
James Laskey
8bc65af302 7127687: MethodType leaks memory due to interning
Replace internTable with a weak-reference version.

Reviewed-by: sundar, forax, brutisso
2012-07-12 00:12:52 -07:00
John R Rose
c04c841a70 7087658: MethodHandles.Lookup.findVirtual is confused by interface methods that are multiply inherited
Reviewed-by: twisti
2012-07-12 00:12:28 -07:00
John R Rose
b9299f283f 7129034: VM crash with a field setter method with a filterArguments
Add null checks before unsafe calls that take a variable base reference; update unit tests

Reviewed-by: kvn, twisti
2012-07-12 00:11:35 -07:00
John R Rose
0d882ec317 7153157: ClassValue.get does not return if computeValue calls remove
Track intermediate states more precisely, according to spec.

Reviewed-by: twisti, forax
2012-07-12 00:10:53 -07:00
Vlaidmir Ivanov
e2fc7f742c 7181658: CTW: assert(t->meet(t0) == t) failed: Not monotonic
Use uncast node equivalence checks in CmpUNode::sub.

Reviewed-by: kvn, twisti
2012-07-11 14:50:30 -07:00
Bengt Rutisson
3571ee23dc 7178361: G1: Make sure that PrintGC and PrintGCDetails use the same timing for the GC pause
Also reviewed by: vitalyd@gmail.com. Move the timing out of G1CollectorPolicy into the G1GCPhaseTimes class

Reviewed-by: johnc
2012-07-11 22:47:38 +02:00
Weijun Wang
3e4ca7604b 6966259: Make PrincipalName and Realm immutable
Reviewed-by: xuelei
2012-07-11 17:10:34 +08:00
Rob McKenna
95af7bf142 7179305: (fs) Method name sun.nio.fs.UnixPath.getPathForExecptionMessage is misspelled
Reviewed-by: dholmes, chegar
2012-07-09 22:26:08 +01:00
Frederic Parain
13c689d9c3 6294277: java -Xdebug crashes on SourceDebugExtension attribute larger than 64K
Reviewed-by: sspitsyn, dholmes, coleenp, kamg
2012-07-09 01:28:37 -07:00
Anthony Petrov
d91b2b6f6e 7177173: [macosx] JFrame.setExtendedState(JFrame.MAXIMIZED_BOTH) not working as expected in JDK 7
Avoid unnecessary changes to the extended state

Reviewed-by: art, serb
2012-07-06 14:20:27 +04:00
Sean Chou
e83a16fa42 7181353: Update error message to distinguish native OOM and java OOM in net
Reviewed-by: chegar
2012-07-06 10:36:19 +08:00
Jiangli Zhou
494465e698 7181632: nsk classLoad001_14 failure and CompileTheWorld crash after 7178145
Need to copy the inlined exception table to the new constMethodOop during method rewriting.

Reviewed-by: coleenp, dholmes
2012-07-05 20:54:45 -04:00
Jiangli Zhou
e13a29b3f2 7180914: Compilation warning after: 7172967: Eliminate the constMethod's _method backpointer to the methodOop
Use read_pointer(J...) to access from 'constMethod' base in name_for_methodOop(), libjvm_db.c.

Reviewed-by: kvn, coleenp
2012-07-05 18:47:41 -04:00
Eric Wang
b28493b31b 7123972: test/java/lang/annotation/loaderLeak/Main.java fails intermittently
Reviewed-by: dholmes, smarks
2012-07-05 15:13:45 -07:00
Eric Wang
48d5be1b33 6948101: java/rmi/transport/pinLastArguments/PinLastArguments.java failing intermittently
Reviewed-by: dholmes, smarks
2012-07-05 15:12:10 -07:00
Coleen Phillimore
559278381b 7181200: JVM new hashing code breaks SA in product mode
Made new_hash() overloaded rather than a virtual function so SA code doesn't need to be changed.

Reviewed-by: kvn, acorn, dholmes, fparain
2012-07-04 15:55:45 -04:00
Sergey Bylokhov
e3a1dad2c0 7124513: [macosx] Support NSTexturedBackgroundWindowMask/different titlebar styles to create unified toolbar
Reviewed-by: anthony, art
2012-07-04 15:36:48 +04:00
Sergey Bylokhov
a433c60a8a 7124244: [macosx] Shaped windows support
Reviewed-by: anthony, art
2012-07-04 14:38:14 +04:00
Mikael Vidstedt
af253d110d 7129724: MAC: Core file location is wrong in crash report
Updated core path location to reflect macosx default

Reviewed-by: dholmes, kamg
2012-07-03 17:35:00 -07:00
Chris Dennis
d1080de4ee 7179383: MaxDirectMemorySize argument parsing is broken for values >2G
Change hotspot flag to be unsigned

Reviewed-by: dholmes, sla, fparain, brutisso
2012-07-03 01:41:29 -04:00
Vladimir Kozlov
761e0b221d 7180769: assert(tboth->klass_is_exact()) failed: klass should be exact
Use class exactness as part of the condition for class compare optimization instead of assert.

Reviewed-by: twisti, roland
2012-07-02 12:59:43 -07:00
Coleen Phillimore
135f315eaa Merge 2012-07-02 13:11:28 -04:00
Keith McGuigan
4d512adc5e 7167142: Consider a warning when finding a .hotspotrc or .hotspot_compiler file that isn't used
Send warnings to output stream

Reviewed-by: dholmes, fparain
2012-07-02 10:54:17 -04:00
Bertrand Delsart
37d969c6ab Merge 2012-07-02 04:19:22 -04:00
Roland Westrelin
3511594d3c 7177917: Failed test java/lang/Math/PowTests.java
When c2 intrinsifies pow/exp, it should never inline the java implementations.

Reviewed-by: kvn
2012-07-02 09:58:06 +02:00
Alejandro Murillo
e9301228b4 7180882: new hotspot build - hs24-b16
Reviewed-by: jcoomes
2012-06-29 17:12:15 -07:00
Zhengyu Gu
a39b17624a 6995781: Native Memory Tracking (Phase 1)
7151532: DCmd for hotspot native memory tracking

Implementation of native memory tracking phase 1, which tracks VM native memory usage, and related DCmd

Reviewed-by: acorn, coleenp, fparain
2012-06-28 17:03:16 -04:00
Staffan Larsen
39dfe6d047 7178703: Fix handling of quoted arguments and better error messages in dcmd
Reviewed-by: coleenp, mgronlun, rbackman
2012-06-28 11:37:28 +02:00
Jiangli Zhou
56df3bd48d 7178145: Change constMethodOop::_exception_table to optionally inlined u2 table
Change constMethodOop::_exception_table to optionally inlined u2 table.

Reviewed-by: bdelsart, coleenp, kamg
2012-06-26 19:08:44 -04:00
Dmitry Samersoff
5e84600efc 7169888: Narrowing resource definitions in JMX RMI connector
CPU bug, we can't put offending calls outside doPrivileged, but narrow granted permissions.

Reviewed-by: ahgross, fparain
2012-06-22 18:19:48 +04:00
Dmitry Samersoff
9a307c8287 7158796: Tighten properties checking in EnvHelp
Move getProperty call out of computeBooleanFromString

Reviewed-by: skoivu, sla
2012-06-22 16:22:22 +04:00
Stuart Marks
63cf10e500 7093490: adjust package access in rmiregistry
Reviewed-by: ahgross, coffeys, dmocek
2012-06-21 00:20:49 -07:00
Sergey Malenkov
386367a03f 7162476: XMLDecoder security issue via ClassFinder
Reviewed-by: art, ahgross
2012-06-19 20:34:06 +04:00
Sean Mullan
d87e57ac8a 7172522: Improve DomainCombiner checking
Reviewed-by: vinnie, ahgross
2012-06-18 10:00:55 -04:00
Sergey Malenkov
9ec1d58234 7162473: ConstructorFinder/FieldFinder/MethodFinder gives access to restricted classes
Reviewed-by: art, ahgross
2012-06-15 21:01:55 +04:00
Weijun Wang
a15896d20e 6631398: FilePermission improved path checking
Reviewed-by: mullan, skoivu, jdn
2012-06-15 09:51:09 +08:00
Keith McGuigan
c39971d4f1 7158804: Improve config file parsing
Check buffer length when reading

Reviewed-by: dholmes, dcubed
2012-06-08 12:49:12 -04:00
Sean Mullan
52f39f95df 7163198: Tightened package accessibility
7169887: Tightened package accessibility

Reviewed-by: vinnie, hawtin
2012-06-08 11:02:47 -04:00
Vladimir Kozlov
0a84e90eea 7158801: Improve VM CompileOnly option
Fixed buffer overflow during parsing flags -XX:CompileCommand=, -XX:CompileOnly= and command lines in .hotspot_compiler file.

Reviewed-by: never
2012-05-23 12:11:25 -07:00
Bradford Wetmore
3b10a3f9b8 7167656: Multiple Seeders are being created
Reviewed-by: smarks, mduigou, ahgross
2012-05-21 15:42:15 -07:00
Nils Eliasson
ac3b6a6442 7163863: Updated projectcreator
Enable source browsing for all platform dependent code

Reviewed-by: brutisso, coleenp
2012-03-29 16:43:21 +02:00
Christian Thalinger
0bae010a3b 7200001: failed C1 OSR compile doesn't get recompiled with C2
Reviewed-by: kvn
2012-09-24 17:59:24 -07:00
Vladimir Kozlov
913a550c76 Merge 2012-09-24 14:46:06 -07:00
Christian Thalinger
370f0c73b3 Merge 2012-09-24 12:31:47 -07:00
Tao Mao
c791cfaf95 7188176: The JVM should differentiate between T and M series and adjust GC ergonomics
Reviewed-by: kvn
2012-09-24 11:07:03 -07:00
Goetz Lindenmaier
5ada196961 7200163: add CodeComments functionality to assember stubs
Pass the codeBuffer to the Stub constructor, and adapts the disassembler to print the comments.

Reviewed-by: jrose, kvn, twisti
2012-09-24 10:30:14 -07:00
Roland Westrelin
302540691b 7023898: Intrinsify AtomicLongFieldUpdater.getAndIncrement()
Use shorter instruction sequences for atomic add and atomic exchange when possible.

Reviewed-by: kvn, jrose
2012-09-20 16:49:17 +02:00
Vladimir Kozlov
25f18c20d9 7199010: incorrect vector alignment
Fixed vectors alignment when several arrays are accessed in one loop.

Reviewed-by: roland, twisti
2012-09-19 16:50:26 -07:00
Aleksey Shipilev
3874f44d1c 7198499: TraceTypeProfile as diagnostic option
Reviewed-by: kvn
2012-09-19 10:38:12 -07:00
Vladimir Kozlov
811c047ec1 7196199: java/text/Bidi/Bug6665028.java failed: Bidi run count incorrect
Save whole XMM/YMM registers in safepoint interrupt handler.

Reviewed-by: roland, twisti
2012-09-17 19:39:07 -07:00
Vladimir Kozlov
45435c5485 7197033: missing ResourceMark for assert in Method::bci_from()
Added missing ResourceMark.

Reviewed-by: dholmes, coleenp, jmasa
2012-09-17 17:02:10 -07:00
Christian Thalinger
b0d292378a 7196262: JSR 292: java/lang/invoke/PrivateInvokeTest.java fails on solaris-sparc
Reviewed-by: kvn, jrose, bdelsart
2012-09-17 12:57:58 -07:00
Vinnie Ryan
1ad2cb3303 7133495: [macosx] KeyChain KeyStore implementation retrieves only one private key entry
Reviewed-by: weijun
2012-02-14 11:18:32 +00:00
Dmytro Sheyko
2b51b9ab1a 6853676: OperatingSystemMXBean.TotalPhysicalMemorySize has incorrect value
Reviewed-by: alanb, dholmes, sla
2009-06-19 16:50:38 +03:00
Alan Bateman
ddd9274a10 7033824: TEST_BUG: java/nio/file/Files/CopyAndMove.java fails intermittently
Reviewed-by: chegar
2012-08-31 12:25:37 +01:00
Sean Coffey
0c39548e00 7195063: [TEST] jtreg flags com/sun/corba/cachedSocket/7056731.sh with Error failure
Reviewed-by: chegar
2012-08-31 12:25:29 +01:00
Joel Borggrén-Franck
9f5d367ff9 7151010: Add compiler support for repeating annotations
Reviewed-by: darcy, jjg
2012-08-31 10:52:17 +02:00
Stuart Marks
fac11519c4 7195099: update problem list with RMI test failures
Reviewed-by: alanb
2012-08-30 18:53:02 -07:00
Lana Steuck
e36810fd84 Merge 2012-08-30 16:51:46 -07:00
Sean Mullan
3a11096dee Merge 2012-08-30 14:42:10 -07:00
Stephen Flores
8081077ff5 6995421: Eliminate the static dependency to sun.security.ec.ECKeyFactory
Reviewed-by: mullan, vinnie
2012-08-30 14:40:57 -07:00
Dan Xu
f6d90bb347 7193683: DriverManager Iterator Warning cleanup
Reviewed-by: lancea
2012-08-30 13:38:03 -04:00
Dan Xu
be8df60f79 7193710: ByteArrayOutputStream Javadoc contains unclosed <code> element
Reviewed-by: dholmes, alanb, ulfzibis
2012-08-30 12:55:40 +01:00
Weijun Wang
a04e185cd1 7184815: [macosx] Need to read Kerberos config in files
Reviewed-by: valeriep
2012-08-29 11:03:02 +08:00
9969 changed files with 1131861 additions and 302998 deletions

View File

@@ -1,6 +1,7 @@
^build/
^dist/
/nbproject/private/
nbproject/private/
^webrev
^.hgtip
^.bridge2
.DS_Store

31
.hgtags
View File

@@ -168,3 +168,34 @@ c029c972396cea042a0dc67c0f7ccf2fe68007d4 jdk8-b41
7e981cb0ad6a194f1fa859f9ad47586db461f269 jdk8-b44
9b19b2302c28f4da6d4078f66234abecfed5688a jdk8-b45
600c9a1feb01633cbcf2341a43d1d21e6497ecd0 jdk8-b46
b820143a6f1ce993c6e6f31db4d64de990f42654 jdk8-b47
086271e35b0a419b38e8bda9bebd70693811df0a jdk8-b48
cecd7026f30cbd83b0601925a7a5e059aec98138 jdk8-b49
38fe5ab028908cf64dd73a43336ba3211577bfc3 jdk8-b50
382651d28f2502d371eca751962232c0e535e57a jdk8-b51
b67041a6cb508da18d2f5c7687e6a31e08bea4fc jdk8-b52
c7aa5cca1c01689a7b1a92411daf83684af05a33 jdk8-b53
7c6aa31ff1b2ae48c1c686ebe1aadf0c3da5be15 jdk8-b54
319f583f66db47395fa86127dd3ddb729eb7c64f jdk8-b55
ffe6bce5a521be40146af2ac03c509b7bac30595 jdk8-b56
2c21c080b11b93efb3851e39e1363e45da805943 jdk8-b57
479d3302a26d7607ba271d66973e59ebf58825b6 jdk8-b58
3bd874584fc01aae92fbc8827e2bd04d8b6ace04 jdk8-b59
5e3adc681779037a2d33b7be6f75680619085492 jdk8-b60
cdaa6122185f9bf512dcd6600f56bfccc4824e8c jdk8-b61
8d9d430b4244b95f5cf1ebe719f834a1ac5d6cd5 jdk8-b62
21ee1dd7b809639284900a128b9b656a592ebc7a jdk8-b63
70fa4b11f26522e69b51fd652215f60ce350bac3 jdk8-b64
a2cf4d4a484378caea2e827ed604b2bbae58bdba jdk8-b65
17820b958ae84f7c1cc6719319c8e2232f7a4f1d jdk8-b66
76cc9bd3ece407d3a15d3bea537b57927973c5e7 jdk8-b67
cb33628d4e8f11e879c371959e5948b66a53376f jdk8-b68
adb5171c554e14cd86f618b5584f6e3d693d5889 jdk8-b69
0d625373c69e2ad6f546fd88ab50c6c9aad01271 jdk8-b70
a41ada2ed4ef735449531c6ebe6cec593d890a1c jdk8-b71
6725b3961f987cf40f446d1c11cd324a3bec545f jdk8-b72
fe94b40ffd9390f6cffcdf51c0389b0e6dde0c13 jdk8-b73
f627eff819628822a0777af8062244352f2a29cf jdk8-b74
f1478a6d25fddd311a84dcbfac50824cc1858bdd jdk8-b75
f407160c280d1c5b00d314c535441ac26f195fee jdk8-b76
d17eb2e13e362085e866d46235314c50cc4661cc jdk8-b77

View File

@@ -168,3 +168,34 @@ a2b2d435f1d275fa8010774c653197c64e326d3a jdk8-b40
e4f81a817447c3a4f6868f083c81c2fb1b15d44c jdk8-b44
633f2378c904c92bb922a6e19e9f62fe8eac14af jdk8-b45
27fa766a2298ba8347dc198f0cf85ba6618e17db jdk8-b46
1dcb4b7b9373e64e135c12fe1f8699f1f80e51e8 jdk8-b47
3f6c72d1c2a6e5c9e7d81c3dc984886678a128ad jdk8-b48
c97b99424815c43818e3cc3ffcdd1a60f3198b52 jdk8-b49
2fd67618b9a3c847780ed7b9d228e862b6e2824c jdk8-b50
57c0aee7309050b9d6cfcbd202dc704e9260b377 jdk8-b51
8d24def5ceb3b8f2e857f2e18b2804fc59eecf8d jdk8-b52
febd7ff5280067ca482faaeb9418ae88764c1a35 jdk8-b53
c1a277c6022affbc6855bdfb039511e73fbe2395 jdk8-b54
b85b44cced2406792cfb9baab1377ff03e7001d8 jdk8-b55
76844579fa4b30929731115b237e477181a82394 jdk8-b56
522dfac8ca4d07c0b74025d4ac3b6e5feefbb829 jdk8-b57
9367024804874faf8e958adeb333682bab1c0c47 jdk8-b58
dae9821589ccd2611bdf7084269b98e819091770 jdk8-b59
e07f499b9dccb529ecf74172cf6ac11a195ec57a jdk8-b60
20ff117b509075c3aec4ee3a57990ecd5db5df9c jdk8-b61
8a3fe0ae06a8cc21347da5a18384b0aa6c2349f5 jdk8-b62
3229597524cab4239325bc3602df6c486397a511 jdk8-b63
1c8370a55b305d35353346202bde042ba9e8a9fd jdk8-b64
b772de306dc24c17f7bd1398531ddeb58723b804 jdk8-b65
13bb8c326e7b7b0b19d78c8088033e3932e3f7ca jdk8-b66
9a6ec97ec45c1a62d5233cefa91e8390e380e13a jdk8-b67
cdb401a60cea6ad5ef3f498725ed1decf8dda1ea jdk8-b68
6ee8080a6efe0639fcd00627a5e0f839bf010481 jdk8-b69
105a25ffa4a4f0af70188d4371b4a0385009b7ce jdk8-b70
51ad2a34342055333eb5f36e2fb514b027895708 jdk8-b71
c1be681d80a1f1c848dc671d664fccb19e046a12 jdk8-b72
93b9664f97eeb6f89397a8842318ebacaac9feb9 jdk8-b73
b43aa5bd8ca5c8121336495382d35ecfa7a71536 jdk8-b74
2a713921952cbd77a1e699626976cb6cdfe3e57e jdk8-b75
278af9fc67e7eba2884936b49ec07345f423aabb jdk8-b76
3933eebc659d58c597aa8cb4b3e58f2250ce3e1a jdk8-b77

View File

@@ -1,5 +1,5 @@
#
# Copyright (c) 1995, 2011, Oracle and/or its affiliates. All rights reserved.
# Copyright (c) 1995, 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
@@ -23,6 +23,21 @@
# questions.
#
# If NEWBUILD is defined, use the new build-infra Makefiles and configure.
# See NewMakefile.gmk for more information.
# If not specified, select what the default build is
ifndef NEWBUILD
NEWBUILD=true
endif
ifeq ($(NEWBUILD),true)
# The new top level Makefile
include NewMakefile.gmk
else # Original Makefile logic
BUILD_PARENT_DIRECTORY=.
# Basename of any originally supplied ALT_OUTPUTDIR directory
@@ -557,3 +572,5 @@ include ./make/jprt.gmk
# Force target
FRC:
endif # Original Makefile logic

132
NewMakefile.gmk Normal file
View File

@@ -0,0 +1,132 @@
#
# 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. Oracle designates this
# particular file as subject to the "Classpath" exception as provided
# by Oracle in the LICENSE file that accompanied this code.
#
# 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.
#
# This must be the first rule
default:
# Inclusion of this pseudo-target will cause make to execute this file
# serially, regardless of -j. Recursively called makefiles will not be
# affected, however. This is required for correct dependency management.
.NOTPARALLEL:
# The shell code below will be executed on /usr/ccs/bin/make on Solaris, but not in GNU make.
# /usr/ccs/bin/make lacks basically every other flow control mechanism.
TEST_FOR_NON_GNUMAKE:sh=echo You are not using GNU make/gmake, this is a requirement. Check your path. 1>&2 && exit 1
# Assume we have GNU make, but check version.
ifeq (,$(findstring 3.81,$(MAKE_VERSION)))
ifeq (,$(findstring 3.82,$(MAKE_VERSION)))
$(error This version of GNU Make is too low ($(MAKE_VERSION)). Check your path, or upgrade to 3.81 or newer.)
endif
endif
# Locate this Makefile
ifeq ($(filter /%,$(lastword $(MAKEFILE_LIST))),)
makefile_path:=$(CURDIR)/$(lastword $(MAKEFILE_LIST))
else
makefile_path:=$(lastword $(MAKEFILE_LIST))
endif
root_dir:=$(dir $(makefile_path))
# ... and then we can include our helper functions
include $(root_dir)/common/makefiles/MakeHelpers.gmk
$(eval $(call ParseLogLevel))
$(eval $(call ParseConfAndSpec))
# Now determine if we have zero, one or several configurations to build.
ifeq ($(SPEC),)
# Since we got past ParseConfAndSpec, we must be building a global target. Do nothing.
else
ifeq ($(words $(SPEC)),1)
# We are building a single configuration. This is the normal case. Execute the Main.gmk file.
include $(root_dir)/common/makefiles/Main.gmk
else
# We are building multiple configurations.
# First, find out the valid targets
# Run the makefile with an arbitraty SPEC using -p -q (quiet dry-run and dump rules) to find
# available PHONY targets. Use this list as valid targets to pass on to the repeated calls.
all_phony_targets=$(filter-out $(global_targets), $(strip $(shell \
$(MAKE) -p -q -f common/makefiles SPEC=$(firstword $(SPEC)) | \
grep ^.PHONY: | head -n 1 | cut -d " " -f 2-)))
$(all_phony_targets):
@$(foreach spec,$(SPEC),($(MAKE) -f NewMakefile.gmk SPEC=$(spec) $(VERBOSE) VERBOSE=$(VERBOSE) $@) &&) true
endif
endif
# Include this after a potential spec file has been included so that the bundles target
# has access to the spec variables.
include $(root_dir)/common/makefiles/Jprt.gmk
# Here are "global" targets, i.e. targets that can be executed without specifying a single configuration.
# If you addd more global targets, please update the variable global_targets in MakeHelpers.
help:
$(info )
$(info OpenJDK Makefile help)
$(info =====================)
$(info )
$(info Common make targets)
$(info . make [default] # Compile all product in langtools, hotspot, jaxp, jaxws,)
$(info . # corba and jdk)
$(info . make all # Compile everything, all repos and images)
$(info . make images # Create complete j2sdk and j2re images)
$(info . make overlay-images # Create limited images for sparc 64 bit platforms)
$(info . make profiles # Create complete j2re compact profile images)
$(info . make bootcycle-images # Build images twice, second time with newly build JDK)
$(info . make install # Install the generated images locally)
$(info . make clean # Remove all files generated by make, but not those)
$(info . # generated by configure)
$(info . make dist-clean # Remove all files, including configuration)
$(info . make help # Give some help on using make)
$(info . make test # Run tests, default is all tests (see TEST below))
$(info )
$(info Targets for specific components)
$(info (Component is any of langtools, corba, jaxp, jaxws, hotspot, jdk, images or overlay-images))
$(info . make <component> # Build <component> and everything it depends on. )
$(info . make <component>-only # Build <component> only, without dependencies. This)
$(info . # is faster but can result in incorrect build results!)
$(info . make clean-<component> # Remove files generated by make for <component>)
$(info )
$(info Useful make variables)
$(info . make CONF= # Build all configurations (note, assignment is empty))
$(info . make CONF=<substring> # Build the configuration(s) with a name matching)
$(info . # <substring>)
$(info )
$(info . make LOG=<loglevel> # Change the log level from warn to <loglevel>)
$(info . # Available log levels are:)
$(info . # 'warn' (default), 'info', 'debug' and 'trace')
$(info . # To see executed command lines, use LOG=debug)
$(info )
$(info . make JOBS=<n> # Run <n> parallel make jobs)
$(info . # Note that -jN does not work as expected!)
$(info )
$(info . make test TEST=<test> # Only run the given test or tests, e.g.)
$(info . # make test TEST="jdk_lang jdk_net")
$(info )
.PHONY: help

View File

@@ -96,7 +96,8 @@
</li>
<li>Windows only:
<ul>
<li>Unix Command Tools (<a href="#cygwin">CYGWIN</a>)</li>
<li>Unix Command Tools (<a href="#cygwin">CYGWIN</a>) <strong>or</strong></li>
<li>Minimalist GNU for Windows (<a href="#msys">MinGW/MSYS</a>)</li>
<li><a href="#dxsdk">DirectX 9.0 SDK</a> </li>
</ul>
</li>
@@ -161,7 +162,7 @@
<blockquote>
This file often describes specific requirements for what we call the
"minimum build environments" (MBE) for this
specific release of the JDK,
specific release of the JDK,
Building with the MBE will generate the most compatible
bits that install on, and run correctly on, the most variations
of the same base OS and hardware architecture.
@@ -241,16 +242,16 @@
</tbody>
</table>
<p>
These same sources do indeed build on many more systems than the
above older generation systems, again the above is just a minimum.
These same sources do indeed build on many more systems than the
above older generation systems, again the above is just a minimum.
<p>
Compilation problems with newer or different C/C++ compilers is a
common problem.
Similarly, compilation problems related to changes to the
Compilation problems with newer or different C/C++ compilers is a
common problem.
Similarly, compilation problems related to changes to the
<tt>/usr/include</tt> or system header files is also a
common problem with newer or unreleased OS versions.
Please report these types of problems as bugs so that they
can be dealt with accordingly.
common problem with newer or unreleased OS versions.
Please report these types of problems as bugs so that they
can be dealt with accordingly.
</blockquote>
<!-- ------------------------------------------------------ -->
<hr>
@@ -266,15 +267,15 @@
<p>
<blockquote>
After installing <a href="http://fedoraproject.org">Fedora</a> 9
you need to install several build dependencies. The simplest
way to do it is to execute the following commands as user
you need to install several build dependencies. The simplest
way to do it is to execute the following commands as user
<tt>root</tt>:
<p/>
<code>yum-builddep java-1.6.0-openjdk</code>
<p/>
<code>yum install gcc gcc-c++</code>
<p/>
In addition, it's necessary to set a few environment variables for the build:
In addition, it's necessary to set a few environment variables for the build:
<p/>
<code>export LANG=C ALT_BOOTDIR=/usr/lib/jvm/java-openjdk</code>
@@ -283,15 +284,15 @@
<p>
<blockquote>
After installing <a href="http://fedoraproject.org">Fedora</a> 10
you need to install several build dependencies. The simplest
way to do it is to execute the following commands as user
you need to install several build dependencies. The simplest
way to do it is to execute the following commands as user
<tt>root</tt>:
<p/>
<code>yum-builddep java-1.6.0-openjdk</code>
<p/>
<code>yum install gcc gcc-c++</code>
<p/>
In addition, it's necessary to set a few environment variables for the build:
In addition, it's necessary to set a few environment variables for the build:
<p/>
<code>export LANG=C ALT_BOOTDIR=/usr/lib/jvm/java-openjdk</code>
@@ -300,15 +301,15 @@
<p>
<blockquote>
After installing <a href="http://fedoraproject.org">Fedora</a> 11
you need to install several build dependencies. The simplest
way to do it is to execute the following commands as user
you need to install several build dependencies. The simplest
way to do it is to execute the following commands as user
<tt>root</tt>:
<p/>
<code>yum-builddep java-1.6.0-openjdk</code>
<p/>
<code>yum install gcc gcc-c++</code>
<p/>
In addition, it's necessary to set a few environment variables for the build:
In addition, it's necessary to set a few environment variables for the build:
<p/>
<code>export LANG=C ALT_BOOTDIR=/usr/lib/jvm/java-openjdk</code>
@@ -360,16 +361,16 @@
<h4>Debian 5.0 (Lenny)</h4>
<p>
<blockquote>
After installing <a href="http://debian.org">Debian</a> 5
you need to install several build dependencies.
The simplest way to install the build dependencies is to
execute the following commands as user <tt>root</tt>:
After installing <a href="http://debian.org">Debian</a> 5
you need to install several build dependencies.
The simplest way to install the build dependencies is to
execute the following commands as user <tt>root</tt>:
<p/>
<code>aptitude build-dep openjdk-6</code>
<p/>
<code>aptitude install openjdk-6-jdk libmotif-dev</code>
<p/>
In addition, it's necessary to set a few environment variables for the build:
In addition, it's necessary to set a few environment variables for the build:
<p/>
<code>export LANG=C ALT_BOOTDIR=/usr/lib/jvm/java-6-openjdk</code>
</blockquote>
@@ -380,52 +381,52 @@
<h4>Ubuntu 8.04</h4>
<p>
<blockquote>
After installing <a href="http://ubuntu.org">Ubuntu</a> 8.04
you need to install several build dependencies.
After installing <a href="http://ubuntu.org">Ubuntu</a> 8.04
you need to install several build dependencies.
<p/>
First, you need to enable the universe repository in the
Software Sources application and reload the repository
information. The Software Sources application is available
under the System/Administration menu.
First, you need to enable the universe repository in the
Software Sources application and reload the repository
information. The Software Sources application is available
under the System/Administration menu.
<p/>
The simplest way to install the build dependencies is to
execute the following commands:
The simplest way to install the build dependencies is to
execute the following commands:
<p/>
<code>sudo aptitude build-dep openjdk-6</code>
<p/>
<code>sudo aptitude install openjdk-6-jdk</code>
<p/>
In addition, it's necessary to set a few environment variables for the build:
In addition, it's necessary to set a few environment variables for the build:
<p/>
<code>export LANG=C ALT_BOOTDIR=/usr/lib/jvm/java-6-openjdk</code>
</blockquote>
<h4>Ubuntu 8.10</h4>
<p>
<blockquote>
After installing <a href="http://ubuntu.org">Ubuntu</a> 8.10
you need to install several build dependencies. The simplest
way to do it is to execute the following commands:
After installing <a href="http://ubuntu.org">Ubuntu</a> 8.10
you need to install several build dependencies. The simplest
way to do it is to execute the following commands:
<p/>
<code>sudo aptitude build-dep openjdk-6</code>
<p/>
<code>sudo aptitude install openjdk-6-jdk</code>
<p/>
In addition, it's necessary to set a few environment variables for the build:
In addition, it's necessary to set a few environment variables for the build:
<p/>
<code>export LANG=C ALT_BOOTDIR=/usr/lib/jvm/java-6-openjdk</code>
</blockquote>
<h4>Ubuntu 9.04</h4>
<p>
<blockquote>
After installing <a href="http://ubuntu.org">Ubuntu</a> 9.04
you need to install several build dependencies. The simplest
way to do it is to execute the following commands:
After installing <a href="http://ubuntu.org">Ubuntu</a> 9.04
you need to install several build dependencies. The simplest
way to do it is to execute the following commands:
<p/>
<code>sudo aptitude build-dep openjdk-6</code>
<p/>
<code>sudo aptitude install openjdk-6-jdk</code>
<p/>
In addition, it's necessary to set a few environment variables for the build:
In addition, it's necessary to set a few environment variables for the build:
<p/>
<code>export LANG=C ALT_BOOTDIR=/usr/lib/jvm/java-6-openjdk</code>
</blockquote>
@@ -436,20 +437,20 @@
<h4>OpenSUSE 11.1</h4>
<p>
<blockquote>
After installing <a href="http://opensuse.org">OpenSUSE</a> 11.1
you need to install several build dependencies.
The simplest way to install the build dependencies is to
execute the following commands:
After installing <a href="http://opensuse.org">OpenSUSE</a> 11.1
you need to install several build dependencies.
The simplest way to install the build dependencies is to
execute the following commands:
<p/>
<code>sudo zypper source-install -d java-1_6_0-openjdk</code>
<p/>
<code>sudo zypper install make</code>
<p/>
In addition, it is necessary to set a few environment variables for the build:
In addition, it is necessary to set a few environment variables for the build:
<p/>
<code>export LANG=C ALT_BOOTDIR=/usr/lib/jvm/java-1.6.0-openjdk</code>
<p/>
Finally, you need to unset the <code>JAVA_HOME</code> environment variable:
Finally, you need to unset the <code>JAVA_HOME</code> environment variable:
<p/>
<code>export -n JAVA_HOME</code>
</blockquote>
@@ -460,14 +461,14 @@
<h4>Mandriva Linux One 2009 Spring</h4>
<p>
<blockquote>
After installing <a href="http://mandriva.org">Mandriva</a> Linux One 2009 Spring
you need to install several build dependencies.
The simplest way to install the build dependencies is to
execute the following commands as user <tt>root</tt>:
After installing <a href="http://mandriva.org">Mandriva</a> Linux One 2009 Spring
you need to install several build dependencies.
The simplest way to install the build dependencies is to
execute the following commands as user <tt>root</tt>:
<p/>
<code>urpmi java-1.6.0-openjdk-devel ant make gcc gcc-c++ freetype-devel zip unzip libcups2-devel libxrender1-devel libalsa2-devel libstc++-static-devel libxtst6-devel libxi-devel</code>
<p/>
In addition, it is necessary to set a few environment variables for the build:
In addition, it is necessary to set a few environment variables for the build:
<p/>
<code>export LANG=C ALT_BOOTDIR=/usr/lib/jvm/java-1.6.0-openjdk</code>
</blockquote>
@@ -478,18 +479,18 @@
<h4>OpenSolaris 2009.06</h4>
<p>
<blockquote>
After installing <a href="http://opensolaris.org">OpenSolaris</a> 2009.06
you need to install several build dependencies.
The simplest way to install the build dependencies is to
execute the following commands:
After installing <a href="http://opensolaris.org">OpenSolaris</a> 2009.06
you need to install several build dependencies.
The simplest way to install the build dependencies is to
execute the following commands:
<p/>
<code>pfexec pkg install SUNWgmake SUNWj6dev SUNWant sunstudioexpress SUNWcups SUNWzip SUNWunzip SUNWxwhl SUNWxorg-headers SUNWaudh SUNWfreetype2</code>
<p/>
In addition, it is necessary to set a few environment variables for the build:
In addition, it is necessary to set a few environment variables for the build:
<p/>
<code>export LANG=C ALT_COMPILER_PATH=/opt/SunStudioExpress/bin/ ALT_CUPS_HEADERS_PATH=/usr/include/</code>
<p/>
Finally, you need to make sure that the build process can find the Sun Studio compilers:
Finally, you need to make sure that the build process can find the Sun Studio compilers:
<p/>
<code>export PATH=$PATH:/opt/SunStudioExpress/bin/</code>
</blockquote>
@@ -687,31 +688,20 @@
</li>
<li>
<strong>Windows:</strong>
Make sure you start your build inside a bash/sh/ksh shell
and are using a <tt>make.exe</tt> utility built for that
environment (a cygwin <tt>make.exe</tt> is not the same
as a <tt>make.exe</tt> built for something like
<a href="http://www.mkssoftware.com/">MKS</a>).
<br>
<b>WARNING:</b> Watch out on some make 3.81 versions, it may
not work due to a lack of support for MS-DOS drive letter paths
like <tt>C:/</tt> or <tt>C:\</tt>.
<br>
You may be able to use the information at the
<a href="http://developer.mozilla.org/en/docs/Windows_build_prerequisites_using_cygwin#make" target="_blank">
mozilla developer center</a>
on this topic.
<br>
It's hoped that when make 3.82 starts shipping in a future cygwin
release that this MS-DOS path issue will be fixed.
<br>
It may be possible to download the version at
<a href="http://www.cmake.org/files/cygwin/make.exe">
www.cmake.org make.exe</a>.
<br>
It might be necessary for you to build your own GNU make 3.81,
see the <a href="#buildgmake">"Building GNU make"</a> section
in that case.
Make sure you start your build inside a bash/sh/ksh shell and are
using a <tt>make.exe</tt> utility built for that environment.<br/>
<strong>MKS</strong> builds need a native Windows version of GNU make
(see <a href="#buildgmake">Building GNU make</a>).<br/>
<strong>Cygwin</strong> builds need
a make version which was specially compiled for the Cygwin environment
(see <a href="#buildgmake">Building GNU make</a>). <strong>WARNING:</strong>
the OpenJDK build with the make utility provided by Cygwin will <strong>not</strong>
work because it does not support drive letters in paths. Make sure that
your version of make will be found before the Cygwins default make by
setting an appropriate <tt>PATH</tt> environment variable or by removing
Cygwin's make after you built your own make version.<br/>
<strong>MinGW/MSYS</strong> builds can use the default make which
comes with the environment.
</li>
</ul>
<p>
@@ -727,7 +717,7 @@
<!-- ------------------------------------------------------ -->
<h4><a name="buildgmake">Building GNU make</a></h4>
<blockquote>
First step is to get the GNU make 3.81 source from
First step is to get the GNU make 3.81 (or newer) source from
<a href="http://ftp.gnu.org/pub/gnu/make/" target="_blank">
ftp.gnu.org/pub/gnu/make/</a>.
Building is a little different depending on the OS and unix toolset
@@ -742,12 +732,24 @@
<tt>./configure && gmake CC=gcc</tt>
</li>
<li>
<strong>Windows for CYGWIN:</strong>
<tt>./configure && make</tt>
<strong>Windows for CYGWIN:</strong><br/>
<tt>./configure</tt><br/>
Add the line <tt>#define HAVE_CYGWIN_SHELL 1</tt> to the end of <tt>config.h</tt><br/>
<tt>make</tt><br/>
<br/>
This should produce <tt>make.exe</tt> in the current directory.
</li>
<li>
<strong>Windows for MKS: (CYGWIN is recommended)</strong>
<tt>./configure && make -f Makefile.win32</tt>
<strong>Windows for MKS:</strong><br/>
Edit <tt>config.h.W32</tt> and uncomment the line <tt>#define HAVE_MKS_SHELL 1</tt><br/>
Set the environment for your native compiler (e.g. by calling:<br/>
<tt>"C:\Program Files\Microsoft SDKs\Windows\v7.1\Bin\SetEnv.cmd" /Release /xp /x64)</tt>
<tt>nmake -f NMakefile.win32</tt>
<br/>
This should produce <tt>WinDebug/make.exe</tt> and <tt>WinRel/make.exe</tt>
<br/>
If you get the error: <tt>NMAKE : fatal error U1045: spawn failed : Permission denied</tt>
you have to set the <tt>Read &amp; execute</tt> permission for the file <tt>subproc.bat</tt>.
</li>
</ul>
</blockquote>
@@ -894,39 +896,135 @@
<h4><a name="paths">Windows Paths</a></h4>
<blockquote>
<strong>Windows:</strong>
Note that GNU make is a historic utility and is based very
heavily on shell scripting, so it does not tolerate the Windows habit
Note that GNU make, the shell and other Unix-tools required during the build
do not tolerate the Windows habit
of having spaces in pathnames or the use of the <tt>\</tt>characters in pathnames.
Luckily on most Windows systems, you can use <tt>/</tt>instead of \, and
there is always a 'short' pathname without spaces for any path that
contains spaces.
Unfortunately, this short pathname can be somewhat dynamic and the
formula is difficult to explain.
You can use <tt>cygpath</tt> utility to map pathnames with spaces
or the <tt>\</tt>character into the <tt>C:/</tt> style of pathname
(called 'mixed'), e.g.
<tt>cygpath -s -m "<i>path</i>"</tt>.
Luckily on most Windows systems, you can use <tt>/</tt>instead of <tt>\</tt>, and
there is always a short <a href="http://en.wikipedia.org/wiki/8.3_filename">
"8.3" pathname</a> without spaces for any path that contains spaces.
Unfortunately, this short pathname is somewhat dynamic (i.e. dependant on the
other files and directories inside a given directory) and can not be
algorithmicly calculated by only looking at a specific path name.
<p>
The makefiles will try to translate any pathnames supplied
to it into the <tt>C:/</tt> style automatically.
</p>
<p>
Note that use of CYGWIN creates a unique problem with regards to
Special care has to be taken if native Windows applications
like <tt>nmake</tt> or <tt>cl</tt> are called with file arguments processed
by Unix-tools like <tt>make</tt> or <tt>sh</tt>!
</p>
</blockquote>
<!-- ------------------------------------------------------ -->
<h4><a name="paths">Windows build environments</a></h4>
<blockquote>
Building on Windows requires a Unix-like environment, notably a Unix-like shell.
There are several such environments available of which
<a href="http://www.mkssoftware.com/products/tk/ds_tkdev.asp">MKS</a>,
<a href="http://www.cygwin.com/">Cygwin</a> and
<a href="http://www.mingw.org/wiki/MSYS">MinGW/MSYS</a> are currently supported for
the OpenJDK build. One of the differences of these three systems is the way
they handle Windows path names, particularly path names which contain
spaces, backslashes as path separators and possibly drive letters. Depending
on the use case and the specifics of each environment these path problems can
be solved by a combination of quoting whole paths, translating backslashes to
forward slashes, escaping backslashes with additional backslashes and
translating the path names to their <a href="http://en.wikipedia.org/wiki/8.3_filename">
"8.3" version</a>.
<p>
As of this writing (MKS ver. 9.4, Cygwin ver. 1.7.9, MinGW/MSYS 1.0.17),
MKS builds are known to be the fastest Windows builds while MingGW/MSYS
builds are slightly slower (about 10%) than MKS builds and Cygwin builds
require nearly twice the time (about 180%) of MKS builds (e.g. on a
DualCore i7 notebook with 8GB of RAM, HDD and 64-bit Windows 7 operating system
the complete OpenJDK 8 product build takes about 49min with MKS, 54min with
MinGW/MSYS and 88min with Cygwin).
</p>
<p>
Mixing tools from the different Unix emulation environments is not a good
idea and will probably not work!
</p>
<p>
<strong>MKS:</strong> is a commercial product which includes
all the Unix utilities which are required to build the OpenJDK except GNU
make. In pre-OpenJDK times it was the only supported build environment on
Windows. The MKS tools support Windows paths with drive letters and
forward slashes as path separator. Paths in environment variables like (for
example) <tt>PATH</tt> are separated by semicolon '<tt>;</tt>'.
</p>
<p>
Recent versions of MKS provide the <tt>dosname</tt> utility to convert paths
with spaces to short (8.3) path names,e .g.
<tt>dosname -s "<i>path</i>"</tt>.
</p>
<p>
If you are using the MKS environment, you need a native Windows version
of Gnu make <a href="#buildgmake">which you can easily build yourself</a>.
</p>
<p>
<strong>Cygwin:</strong>
is an open source, Linux-like environment which tries to emulate
a complete POSIX layer on Windows. It tries to be smart about path names
and can usually handle all kinds of paths if they are correctly quoted
or escaped although internally it maps drive letters <tt>&lt;drive&gt;:</tt>
to a virtual directory <tt>/cygdrive/&lt;drive&gt;</tt>.
</p>
<p>
You can always use the <tt>cygpath</tt> utility to map pathnames with spaces
or the backslash character into the <tt>C:/</tt> style of pathname
(called 'mixed'), e.g. <tt>cygpath -s -m "<i>path</i>"</tt>.
</p>
<p>
Note that the use of CYGWIN creates a unique problem with regards to
setting <a href="#path"><tt>PATH</tt></a>. Normally on Windows
the <tt>PATH</tt> variable contains directories
separated with the ";" character (Solaris and Linux uses ":").
separated with the ";" character (Solaris and Linux use ":").
With CYGWIN, it uses ":", but that means that paths like "C:/path"
cannot be placed in the CYGWIN version of <tt>PATH</tt> and
instead CYGWIN uses something like <tt>/cygdrive/c/path</tt>
which CYGWIN understands, but only CYGWIN understands.
So be careful with paths on Windows.
</p>
<p>
If you are using the Cygwin environment, you need to
<a href="#buildgmake">compile your own version</a>
of GNU make because the default Cygwin make can not handle drive letters in paths.
</p>
<p>
<strong>MinGW/MSYS:</strong>
MinGW ("Minimalist GNU for Windows") is a collection of free Windows
specific header files and import libraries combined with GNU toolsets that
allow one to produce native Windows programs that do not rely on any
3rd-party C runtime DLLs. MSYS is a supplement to MinGW which allows building
applications and programs which rely on traditional UNIX tools to
be present. Among others this includes tools like <tt>bash</tt> and <tt>make</tt>.
</p>
<p>
Like Cygwin, MinGW/MSYS can handle different types of path formats. They
are internally converted to paths with forward slashes and drive letters
<tt>&lt;drive&gt;:</tt> replaced by a virtual
directory <tt>/&lt;drive&gt;</tt>. Additionally, MSYS automatically
detects binaries compiled for the MSYS environment and feeds them with the
internal, Unix-style path names. If native Windows applications are called
from within MSYS programs their path arguments are automatically converted
back to Windows style path names with drive letters and backslashes as
path separators. This may cause problems for Windows applications which
use forward slashes as parameter separator (e.g. <tt>cl /nologo /I</tt>)
because MSYS may wrongly <a href="http://mingw.org/wiki/Posix_path_conversion">
replace such parameters by drive letters</a>.
</p>
<p>
If you are using the MinGW/MSYS system you can use the default make
version supplied by the environment.
</p>
</blockquote>
<!-- ------------------------------------------------------ -->
<h4><a name="windows_checklist">Basic Windows Check List</a></h4>
<blockquote>
<ol>
<li>
Install the
<a href="#cygwin">CYGWIN product</a>.
Install one of the
<a href="#cygwin">CYGWIN</a>, <a href="#msys">MinGW/MSYS</a> or
<a href="http://www.mkssoftware.com/products/tk/ds_tkdev.asp">MKS</a> environments.
</li>
<li>
Install the
@@ -1097,9 +1195,9 @@
<a href="http://www.oracle.com/technetwork/server-storage/solarisstudio/downloads/index.htm" target="_blank">
Sun Studio 12 Update 1 Compilers</a>
(containing version 5.10 of the C and C++ compilers) is required,
including specific patches.
including specific patches.
<p>
The Solaris SPARC patch list is:
The Solaris SPARC patch list is:
<ul>
<li>
118683-05: SunOS 5.10: Patch for profiling libraries and assembler
@@ -1286,7 +1384,8 @@
The XRender header file is included with the other X11 header files
in the package <strong>SFWxwinc</strong> on new enough versions of
Solaris and will be installed in
<tt>/usr/X11/include/X11/extensions/Xrender.h</tt>
<tt>/usr/X11/include/X11/extensions/Xrender.h</tt> or
<tt>/usr/openwin/share/include/X11/extensions/Xrender.h</tt>
</p><p>
<strong>Linux:</strong>
XRender header files are required for building the
@@ -1456,7 +1555,9 @@
<td>Devel</td>
<td>make</td>
<td>The GNU version of the 'make' utility built for CYGWIN.<br>
<b>NOTE</b>: See <a href="#gmake">the GNU make section</a></td>
<b>NOTE</b>: the Cygwin make can not be used to build the
OpenJDK. You only need it to build your own version of make
(see <a href="#gmake">the GNU make section</a>)</td>
</tr>
<tr>
<td>m4.exe</td>
@@ -1521,6 +1622,21 @@
So it's important that the Visual Studio paths in PATH preceed
the CYGWIN path <tt>/usr/bin</tt>.
</blockquote>
<strong> Minimalist GNU for Windows (<a name="msys">MinGW/MSYS</a>)</strong>
<blockquote>
Alternatively, the set of unix command tools for the OpenJDK build on
Windows can be supplied by
<a href="http://www.mingw.org/wiki/MSYS" target="_blank">MinGW/MSYS</a>.
<p>
In addition to the tools which will be installed by default, you have
to manually install the <tt>msys-zip</tt> and <tt>msys-unzip</tt> packages.
This can be easily done with the MinGW command line installer:<br/>
<tt><br/>
mingw-get.exe install msys-zip<br/>
mingw-get.exe install msys-unzip<br/>
</tt>
</p>
</blockquote>
<strong><a name="dxsdk">Microsoft DirectX 9.0 SDK header files and libraries</a></strong>
<blockquote>
Microsoft DirectX 9.0 SDK (Summer 2004)
@@ -1781,10 +1897,10 @@
</dd>
<dt><a name="ALT_OPENWIN_HOME"><tt>ALT_OPENWIN_HOME</tt></a></dt>
<dd>
The top-level directory of the libraries and include files for the platform's
graphical programming environment. The default location is platform specific.
For example, on Linux it defaults to <tt>/usr/X11R6/</tt>.
</dd>
The top-level directory of the libraries and include files for the platform's
graphical programming environment. The default location is platform specific.
For example, on Linux it defaults to <tt>/usr/X11R6/</tt>.
</dd>
<dt><strong>Windows specific:</strong></dt>
<dd>
<dl>
@@ -1792,9 +1908,9 @@
<dd>
The location of the
Microsoft Windows SDK where some tools will be
located.
The default is whatever WINDOWSSDKDIR is set to
(or WindowsSdkDir) or the path
located.
The default is whatever WINDOWSSDKDIR is set to
(or WindowsSdkDir) or the path
<br>
<tt>c:\Program Files\Microsoft SDKs\Windows\v7.0a</tt>
</dd>
@@ -1823,17 +1939,17 @@
is that <a href="#ALT_COMPILER_PATH"><tt>ALT_COMPILER_PATH</tt></a> is set
to point to the cross-compiler and that any cross-compilation specific flags
are passed using <a href="#EXTRA_CFLAGS"><tt>EXTRA_CFLAGS</tt></a>.
The <a href="#ALT_OPENWIN_HOME"><tt>ALT_OPENWIN_HOME</tt></a> variable should
also be set to point to the graphical header files (e.g. X11) provided with
the cross-compiler.
The <a href="#ALT_OPENWIN_HOME"><tt>ALT_OPENWIN_HOME</tt></a> variable should
also be set to point to the graphical header files (e.g. X11) provided with
the cross-compiler.
When cross-compiling we skip execution of any demos etc that may be built, and
also skip binary-file verification.
</dd>
<dt><tt><a name="EXTRA_CFLAGS">EXTRA_CFLAGS</a></tt> </dt>
<dd>
Used to pass cross-compilation options to the cross-compiler.
Used to pass cross-compilation options to the cross-compiler.
These are added to the <tt>CFLAGS</tt> and <tt>CXXFLAGS</tt> variables.
</dd>
</dd>
<dt><tt><a name="USE_ONLY_BOOTDIR_TOOLS">USE_ONLY_BOOTDIR_TOOLS</a></tt> </dt>
<dd>
Used primarily for cross-compilation builds (and always set in that case)
@@ -1868,23 +1984,23 @@
<dt><tt><a name="BUILD_HEADLESS_ONLY"></a>BUILD_HEADLESS_ONLY</tt> </dt>
<dd>
Used when the build environment has no graphical capabilities at all. This
excludes building anything that requires graphical libraries to be available.
excludes building anything that requires graphical libraries to be available.
</dd>
<dt><tt><a name="JAVASE_EMBEDDED"></a>JAVASE_EMBEDDED</tt> </dt>
<dd>
Used to indicate this is a build of the Oracle Java SE Embedded product.
This will enable the directives included in the SE-Embedded specific build
files.
Used to indicate this is a build of the Oracle Java SE Embedded product.
This will enable the directives included in the SE-Embedded specific build
files.
</dd>
<dt><tt><a name="LIBZIP_CAN_USE_MMAP">LIBZIP_CAN_USE_MMAP</a></tt> </dt>
<dd>
If set to false, disables the use of mmap by the zip utility. Otherwise,
mmap will be used.
If set to false, disables the use of mmap by the zip utility. Otherwise,
mmap will be used.
</dd>
<dt><tt><a name="COMPRESS_JARS"></a>COMPRESS_JARS</tt> </dt>
<dd>
If set to true, causes certain jar files that would otherwise be built without
compression, to use compression.
If set to true, causes certain jar files that would otherwise be built without
compression, to use compression.
</dd>
</dl>
</dd>

View File

@@ -3383,3 +3383,397 @@ included with JRE 7, JDK 7, and OpenJDK 7, except where noted:
-------------------------------------------------------------------------------
%% This notice is provided with respect to Mozilla Network Security
Services (NSS), which is supplied with the JDK test suite in the OpenJDK
source code repository. It is licensed under Mozilla Public License (MPL),
version 2.0.
The NSS libraries are supplied in executable form, built from unmodified
NSS source code labeled with the "NSS_3.13.1_RTM" release tag.
The NSS source code is available in the OpenJDK source code repository at:
jdk/test/sun/security/pkcs11/nss/src
The NSS libraries are available in the OpenJDK source code repository at:
jdk/test/sun/security/pkcs11/nss/lib
--- begin of LICENSE ---
Mozilla Public License Version 2.0
==================================
1. Definitions
--------------
1.1. "Contributor"
means each individual or legal entity that creates, contributes to
the creation of, or owns Covered Software.
1.2. "Contributor Version"
means the combination of the Contributions of others (if any) used
by a Contributor and that particular Contributor's Contribution.
1.3. "Contribution"
means Covered Software of a particular Contributor.
1.4. "Covered Software"
means Source Code Form to which the initial Contributor has attached
the notice in Exhibit A, the Executable Form of such Source Code
Form, and Modifications of such Source Code Form, in each case
including portions thereof.
1.5. "Incompatible With Secondary Licenses"
means
(a) that the initial Contributor has attached the notice described
in Exhibit B to the Covered Software; or
(b) that the Covered Software was made available under the terms of
version 1.1 or earlier of the License, but not also under the
terms of a Secondary License.
1.6. "Executable Form"
means any form of the work other than Source Code Form.
1.7. "Larger Work"
means a work that combines Covered Software with other material, in
a separate file or files, that is not Covered Software.
1.8. "License"
means this document.
1.9. "Licensable"
means having the right to grant, to the maximum extent possible,
whether at the time of the initial grant or subsequently, any and
all of the rights conveyed by this License.
1.10. "Modifications"
means any of the following:
(a) any file in Source Code Form that results from an addition to,
deletion from, or modification of the contents of Covered
Software; or
(b) any new file in Source Code Form that contains any Covered
Software.
1.11. "Patent Claims" of a Contributor
means any patent claim(s), including without limitation, method,
process, and apparatus claims, in any patent Licensable by such
Contributor that would be infringed, but for the grant of the
License, by the making, using, selling, offering for sale, having
made, import, or transfer of either its Contributions or its
Contributor Version.
1.12. "Secondary License"
means either the GNU General Public License, Version 2.0, the GNU
Lesser General Public License, Version 2.1, the GNU Affero General
Public License, Version 3.0, or any later versions of those
licenses.
1.13. "Source Code Form"
means the form of the work preferred for making modifications.
1.14. "You" (or "Your")
means an individual or a legal entity exercising rights under this
License. For legal entities, "You" includes any entity that
controls, is controlled by, or is under common control with You. For
purposes of this definition, "control" means (a) the power, direct
or indirect, to cause the direction or management of such entity,
whether by contract or otherwise, or (b) ownership of more than
fifty percent (50%) of the outstanding shares or beneficial
ownership of such entity.
2. License Grants and Conditions
--------------------------------
2.1. Grants
Each Contributor hereby grants You a world-wide, royalty-free,
non-exclusive license:
(a) under intellectual property rights (other than patent or trademark)
Licensable by such Contributor to use, reproduce, make available,
modify, display, perform, distribute, and otherwise exploit its
Contributions, either on an unmodified basis, with Modifications, or
as part of a Larger Work; and
(b) under Patent Claims of such Contributor to make, use, sell, offer
for sale, have made, import, and otherwise transfer either its
Contributions or its Contributor Version.
2.2. Effective Date
The licenses granted in Section 2.1 with respect to any Contribution
become effective for each Contribution on the date the Contributor first
distributes such Contribution.
2.3. Limitations on Grant Scope
The licenses granted in this Section 2 are the only rights granted under
this License. No additional rights or licenses will be implied from the
distribution or licensing of Covered Software under this License.
Notwithstanding Section 2.1(b) above, no patent license is granted by a
Contributor:
(a) for any code that a Contributor has removed from Covered Software;
or
(b) for infringements caused by: (i) Your and any other third party's
modifications of Covered Software, or (ii) the combination of its
Contributions with other software (except as part of its Contributor
Version); or
(c) under Patent Claims infringed by Covered Software in the absence of
its Contributions.
This License does not grant any rights in the trademarks, service marks,
or logos of any Contributor (except as may be necessary to comply with
the notice requirements in Section 3.4).
2.4. Subsequent Licenses
No Contributor makes additional grants as a result of Your choice to
distribute the Covered Software under a subsequent version of this
License (see Section 10.2) or under the terms of a Secondary License (if
permitted under the terms of Section 3.3).
2.5. Representation
Each Contributor represents that the Contributor believes its
Contributions are its original creation(s) or it has sufficient rights
to grant the rights to its Contributions conveyed by this License.
2.6. Fair Use
This License is not intended to limit any rights You have under
applicable copyright doctrines of fair use, fair dealing, or other
equivalents.
2.7. Conditions
Sections 3.1, 3.2, 3.3, and 3.4 are conditions of the licenses granted
in Section 2.1.
3. Responsibilities
-------------------
3.1. Distribution of Source Form
All distribution of Covered Software in Source Code Form, including any
Modifications that You create or to which You contribute, must be under
the terms of this License. You must inform recipients that the Source
Code Form of the Covered Software is governed by the terms of this
License, and how they can obtain a copy of this License. You may not
attempt to alter or restrict the recipients' rights in the Source Code
Form.
3.2. Distribution of Executable Form
If You distribute Covered Software in Executable Form then:
(a) such Covered Software must also be made available in Source Code
Form, as described in Section 3.1, and You must inform recipients of
the Executable Form how they can obtain a copy of such Source Code
Form by reasonable means in a timely manner, at a charge no more
than the cost of distribution to the recipient; and
(b) You may distribute such Executable Form under the terms of this
License, or sublicense it under different terms, provided that the
license for the Executable Form does not attempt to limit or alter
the recipients' rights in the Source Code Form under this License.
3.3. Distribution of a Larger Work
You may create and distribute a Larger Work under terms of Your choice,
provided that You also comply with the requirements of this License for
the Covered Software. If the Larger Work is a combination of Covered
Software with a work governed by one or more Secondary Licenses, and the
Covered Software is not Incompatible With Secondary Licenses, this
License permits You to additionally distribute such Covered Software
under the terms of such Secondary License(s), so that the recipient of
the Larger Work may, at their option, further distribute the Covered
Software under the terms of either this License or such Secondary
License(s).
3.4. Notices
You may not remove or alter the substance of any license notices
(including copyright notices, patent notices, disclaimers of warranty,
or limitations of liability) contained within the Source Code Form of
the Covered Software, except that You may alter any license notices to
the extent required to remedy known factual inaccuracies.
3.5. Application of Additional Terms
You may choose to offer, and to charge a fee for, warranty, support,
indemnity or liability obligations to one or more recipients of Covered
Software. However, You may do so only on Your own behalf, and not on
behalf of any Contributor. You must make it absolutely clear that any
such warranty, support, indemnity, or liability obligation is offered by
You alone, and You hereby agree to indemnify every Contributor for any
liability incurred by such Contributor as a result of warranty, support,
indemnity or liability terms You offer. You may include additional
disclaimers of warranty and limitations of liability specific to any
jurisdiction.
4. Inability to Comply Due to Statute or Regulation
---------------------------------------------------
If it is impossible for You to comply with any of the terms of this
License with respect to some or all of the Covered Software due to
statute, judicial order, or regulation then You must: (a) comply with
the terms of this License to the maximum extent possible; and (b)
describe the limitations and the code they affect. Such description must
be placed in a text file included with all distributions of the Covered
Software under this License. Except to the extent prohibited by statute
or regulation, such description must be sufficiently detailed for a
recipient of ordinary skill to be able to understand it.
5. Termination
--------------
5.1. The rights granted under this License will terminate automatically
if You fail to comply with any of its terms. However, if You become
compliant, then the rights granted under this License from a particular
Contributor are reinstated (a) provisionally, unless and until such
Contributor explicitly and finally terminates Your grants, and (b) on an
ongoing basis, if such Contributor fails to notify You of the
non-compliance by some reasonable means prior to 60 days after You have
come back into compliance. Moreover, Your grants from a particular
Contributor are reinstated on an ongoing basis if such Contributor
notifies You of the non-compliance by some reasonable means, this is the
first time You have received notice of non-compliance with this License
from such Contributor, and You become compliant prior to 30 days after
Your receipt of the notice.
5.2. If You initiate litigation against any entity by asserting a patent
infringement claim (excluding declaratory judgment actions,
counter-claims, and cross-claims) alleging that a Contributor Version
directly or indirectly infringes any patent, then the rights granted to
You by any and all Contributors for the Covered Software under Section
2.1 of this License shall terminate.
5.3. In the event of termination under Sections 5.1 or 5.2 above, all
end user license agreements (excluding distributors and resellers) which
have been validly granted by You or Your distributors under this License
prior to termination shall survive termination.
************************************************************************
* *
* 6. Disclaimer of Warranty *
* ------------------------- *
* *
* Covered Software is provided under this License on an "as is" *
* basis, without warranty of any kind, either expressed, implied, or *
* statutory, including, without limitation, warranties that the *
* Covered Software is free of defects, merchantable, fit for a *
* particular purpose or non-infringing. The entire risk as to the *
* quality and performance of the Covered Software is with You. *
* Should any Covered Software prove defective in any respect, You *
* (not any Contributor) assume the cost of any necessary servicing, *
* repair, or correction. This disclaimer of warranty constitutes an *
* essential part of this License. No use of any Covered Software is *
* authorized under this License except under this disclaimer. *
* *
************************************************************************
************************************************************************
* *
* 7. Limitation of Liability *
* -------------------------- *
* *
* Under no circumstances and under no legal theory, whether tort *
* (including negligence), contract, or otherwise, shall any *
* Contributor, or anyone who distributes Covered Software as *
* permitted above, be liable to You for any direct, indirect, *
* special, incidental, or consequential damages of any character *
* including, without limitation, damages for lost profits, loss of *
* goodwill, work stoppage, computer failure or malfunction, or any *
* and all other commercial damages or losses, even if such party *
* shall have been informed of the possibility of such damages. This *
* limitation of liability shall not apply to liability for death or *
* personal injury resulting from such party's negligence to the *
* extent applicable law prohibits such limitation. Some *
* jurisdictions do not allow the exclusion or limitation of *
* incidental or consequential damages, so this exclusion and *
* limitation may not apply to You. *
* *
************************************************************************
8. Litigation
-------------
Any litigation relating to this License may be brought only in the
courts of a jurisdiction where the defendant maintains its principal
place of business and such litigation shall be governed by laws of that
jurisdiction, without reference to its conflict-of-law provisions.
Nothing in this Section shall prevent a party's ability to bring
cross-claims or counter-claims.
9. Miscellaneous
----------------
This License represents the complete agreement concerning the subject
matter hereof. If any provision of this License is held to be
unenforceable, such provision shall be reformed only to the extent
necessary to make it enforceable. Any law or regulation which provides
that the language of a contract shall be construed against the drafter
shall not be used to construe this License against a Contributor.
10. Versions of the License
---------------------------
10.1. New Versions
Mozilla Foundation is the license steward. Except as provided in Section
10.3, no one other than the license steward has the right to modify or
publish new versions of this License. Each version will be given a
distinguishing version number.
10.2. Effect of New Versions
You may distribute the Covered Software under the terms of the version
of the License under which You originally received the Covered Software,
or under the terms of any subsequent version published by the license
steward.
10.3. Modified Versions
If you create software not governed by this License, and you want to
create a new license for such software, you may create and use a
modified version of this License if you rename the license and remove
any references to the name of the license steward (except to note that
such modified license differs from this License).
10.4. Distributing Source Code Form that is Incompatible With Secondary
Licenses
If You choose to distribute Source Code Form that is Incompatible With
Secondary Licenses under the terms of this version of the License, the
notice described in Exhibit B of this License must be attached.
Exhibit A - Source Code Form License Notice
-------------------------------------------
This Source Code Form is subject to the terms of the Mozilla Public
License, v. 2.0. If a copy of the MPL was not distributed with this
file, You can obtain one at http://mozilla.org/MPL/2.0/.
If it is not possible or desirable to put the notice in a particular
file, then You may include the notice in a location (such as a LICENSE
file in a relevant directory) where a recipient would be likely to look
for such a notice.
You may add additional accurate notices of copyright ownership.
Exhibit B - "Incompatible With Secondary Licenses" Notice
---------------------------------------------------------
This Source Code Form is "Incompatible With Secondary Licenses", as
defined by the Mozilla Public License, v. 2.0.
--- end of LICENSE ---
-------------------------------------------------------------------------------

View File

@@ -21,6 +21,7 @@
# questions.
#
# Generated Makefile @DATE_WHEN_CONFIGURED@
# This Makefile was generated by configure @DATE_WHEN_CONFIGURED@
# GENERATED FILE, DO NOT EDIT
SPEC:=@OUTPUT_ROOT@/spec.gmk
include @SRC_ROOT@/common/makefiles/Makefile
include @SRC_ROOT@/NewMakefile.gmk

View File

@@ -1,4 +1,4 @@
#!/bin/sh
#!/bin/bash
#
# Copyright (c) 2011, 2012, Oracle and/or its affiliates. All rights reserved.
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -23,18 +23,43 @@
#
script_dir=`dirname $0`
closed_script_dir="$script_dir/../../jdk/make/closed/autoconf"
# Create a timestamp as seconds since epoch
TIMESTAMP=`date +%s`
if test "x`uname -s`" = "xSunOS"; then
TIMESTAMP=`date +%s`
if test "x$TIMESTAMP" = "x%s"; then
# date +%s not available on this Solaris, use workaround from nawk(1):
TIMESTAMP=`nawk 'BEGIN{print srand()}'`
fi
else
TIMESTAMP=`date +%s`
fi
if test "x$CUSTOM_CONFIG_DIR" = "x"; then
custom_script_dir="$script_dir/../../jdk/make/closed/autoconf"
else
custom_script_dir=$CUSTOM_CONFIG_DIR
fi
custom_hook=$custom_script_dir/custom-hook.m4
if test "x`which autoconf 2> /dev/null`" = x; then
echo You need autoconf installed to be able to regenerate the configure script
echo Error: Cannot find autoconf 1>&2
exit 1
fi
echo Generating generated-configure.sh
cat $script_dir/configure.ac | sed -e "s|@DATE_WHEN_GENERATED@|$TIMESTAMP|" | autoconf -W all -I$script_dir - > $script_dir/generated-configure.sh
rm -rf autom4te.cache
if test -e $closed_script_dir/closed-hook.m4; then
# We have closed sources available; also generate configure script
# with closed hooks compiled in.
if test -e $custom_hook; then
echo Generating custom generated-configure.sh
# We have custom sources available; also generate configure script
# with custom hooks compiled in.
cat $script_dir/configure.ac | sed -e "s|@DATE_WHEN_GENERATED@|$TIMESTAMP|" | \
sed -e "s|AC_DEFUN_ONCE(\[CLOSED_HOOK\])|m4_include([$closed_script_dir/closed-hook.m4])|" | autoconf -W all -I$script_dir - > $closed_script_dir/generated-configure.sh
sed -e "s|#CUSTOM_AUTOCONF_INCLUDE|m4_include([$custom_hook])|" | autoconf -W all -I$script_dir - > $custom_script_dir/generated-configure.sh
rm -rf autom4te.cache
else
echo No custom hook found: $custom_hook
fi

View File

@@ -1,5 +1,5 @@
#
# Copyright (c) 2011, 2012, Oracle and/or its affiliates. All rights reserved.
# Copyright (c) 2011, 2013, 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
@@ -34,80 +34,113 @@ AC_DEFUN([ADD_JVM_ARG_IF_OK],
fi
])
AC_DEFUN([WHICHCMD],
# This will make sure the given variable points to a full and proper
# path. This means:
# 1) There will be no spaces in the path. On posix platforms,
# spaces in the path will result in an error. On Windows,
# the path will be rewritten using short-style to be space-free.
# 2) The path will be absolute, and it will be in unix-style (on
# cygwin).
# $1: The name of the variable to fix
AC_DEFUN([BASIC_FIXUP_PATH],
[
# Translate "gcc -E" into "`which gcc` -E" ie
# extract the full path to the binary and at the
# same time maintain any arguments passed to it.
# The command MUST exist in the path, or else!
tmp="[$]$1"
car="${tmp%% *}"
tmp="[$]$1 EOL"
cdr="${tmp#* }"
# On windows we want paths without spaces.
if test "x$OPENJDK_BUILD_OS" = "xwindows"; then
WHICHCMD_SPACESAFE(car)
else
# "which" is not portable, but is used here
# because we know that the command exists!
car=`which $car`
fi
if test "x$cdr" != xEOL; then
$1="$car ${cdr% *}"
else
$1="$car"
fi
])
AC_DEFUN([SPACESAFE],
[
# Fail with message $2 if var $1 contains a path with no spaces in it.
# Unless on Windows, where we can rewrite the path.
HAS_SPACE=`echo "[$]$1" | grep " "`
if test "x$HAS_SPACE" != x; then
if test "x$OPENJDK_BUILD_OS" = "xwindows"; then
$1=`$CYGPATH -s -m -a "[$]$1"`
$1=`$CYGPATH -u "[$]$1"`
else
AC_MSG_ERROR([You cannot have spaces in $2! "[$]$1"])
fi
fi
])
AC_DEFUN([WHICHCMD_SPACESAFE],
[
# Translate long cygdrive or C:\sdfsf path
# into a short mixed mode path that has no
# spaces in it.
tmp="[$]$1"
if test "x$OPENJDK_BUILD_OS_ENV" = "xwindows.cygwin"; then
BASIC_FIXUP_PATH_CYGWIN($1)
elif test "x$OPENJDK_BUILD_OS_ENV" = "xwindows.msys"; then
BASIC_FIXUP_PATH_MSYS($1)
else
# We're on a posix platform. Hooray! :)
path="[$]$1"
if test "x$OPENJDK_BUILD_OS" = "xwindows"; then
tmp=`$CYGPATH -u "[$]$1"`
tmp=`which "$tmp"`
# If file exists with .exe appended, that's the real filename
# and cygpath needs that to convert to short style path.
if test -f "${tmp}.exe"; then
tmp="${tmp}.exe"
elif test -f "${tmp}.cmd"; then
tmp="${tmp}.cmd"
fi
# Convert to C:/ mixed style path without spaces.
tmp=`$CYGPATH -s -m "$tmp"`
if test ! -f "$path" && test ! -d "$path"; then
AC_MSG_ERROR([The path of $1, which resolves as "$path", is not found.])
fi
$1="$tmp"
has_space=`$ECHO "$path" | $GREP " "`
if test "x$has_space" != x; then
AC_MSG_NOTICE([The path of $1, which resolves as "$path", is invalid.])
AC_MSG_ERROR([Spaces are not allowed in this path.])
fi
fi
])
AC_DEFUN([REMOVE_SYMBOLIC_LINKS],
# This will make sure the given variable points to a executable
# with a full and proper path. This means:
# 1) There will be no spaces in the path. On posix platforms,
# spaces in the path will result in an error. On Windows,
# the path will be rewritten using short-style to be space-free.
# 2) The path will be absolute, and it will be in unix-style (on
# cygwin).
# Any arguments given to the executable is preserved.
# If the input variable does not have a directory specification, then
# it need to be in the PATH.
# $1: The name of the variable to fix
AC_DEFUN([BASIC_FIXUP_EXECUTABLE],
[
if test "x$OPENJDK_BUILD_OS_ENV" = "xwindows.cygwin"; then
BASIC_FIXUP_EXECUTABLE_CYGWIN($1)
elif test "x$OPENJDK_BUILD_OS_ENV" = "xwindows.msys"; then
BASIC_FIXUP_EXECUTABLE_MSYS($1)
else
# We're on a posix platform. Hooray! :)
# First separate the path from the arguments. This will split at the first
# space.
complete="[$]$1"
path="${complete%% *}"
tmp="$complete EOL"
arguments="${tmp#* }"
# Cannot rely on the command "which" here since it doesn't always work.
is_absolute_path=`$ECHO "$path" | $GREP ^/`
if test -z "$is_absolute_path"; then
# Path to executable is not absolute. Find it.
IFS_save="$IFS"
IFS=:
for p in $PATH; do
if test -f "$p/$path" && test -x "$p/$path"; then
new_path="$p/$path"
break
fi
done
IFS="$IFS_save"
else
AC_MSG_NOTICE([Resolving $1 (as $path) failed, using $path directly.])
new_path="$path"
fi
if test "x$new_path" = x; then
AC_MSG_NOTICE([The path of $1, which resolves as "$complete", is not found.])
has_space=`$ECHO "$complete" | $GREP " "`
if test "x$has_space" != x; then
AC_MSG_NOTICE([This might be caused by spaces in the path, which is not allowed.])
fi
AC_MSG_ERROR([Cannot locate the the path of $1])
fi
fi
# Now join together the path and the arguments once again
if test "x$arguments" != xEOL; then
new_complete="$new_path ${arguments% *}"
else
new_complete="$new_path"
fi
if test "x$complete" != "x$new_complete"; then
$1="$new_complete"
AC_MSG_NOTICE([Rewriting $1 to "$new_complete"])
fi
])
AC_DEFUN([BASIC_REMOVE_SYMBOLIC_LINKS],
[
if test "x$OPENJDK_BUILD_OS" != xwindows; then
# Follow a chain of symbolic links. Use readlink
# where it exists, else fall back to horribly
# complicated shell code.
AC_PATH_PROG(READLINK, readlink)
if test "x$READLINK_TESTED" != yes; then
# On MacOSX there is a readlink tool with a different
# purpose than the GNU readlink tool. Check the found readlink.
ISGNU=`$READLINK --help 2>&1 | grep GNU`
ISGNU=`$READLINK --version 2>&1 | $GREP GNU`
if test "x$ISGNU" = x; then
# A readlink that we do not know how to use.
# Are there other non-GNU readlinks out there?
@@ -119,25 +152,31 @@ AC_DEFUN([REMOVE_SYMBOLIC_LINKS],
if test "x$READLINK" != x; then
$1=`$READLINK -f [$]$1`
else
# Save the current directory for restoring afterwards
STARTDIR=$PWD
COUNTER=0
DIR=`dirname [$]$1`
FIL=`basename [$]$1`
sym_link_dir=`$DIRNAME [$]$1`
sym_link_file=`$BASENAME [$]$1`
# Use the system pwd and not the shell builtin to resolve directory symlinks
cd $sym_link_dir
cd `$THEPWDCMD`
sym_link_dir=`$THEPWDCMD`
# Resolve file symlinks
while test $COUNTER -lt 20; do
ISLINK=`ls -l $DIR/$FIL | grep '\->' | sed -e 's/.*-> \(.*\)/\1/'`
ISLINK=`$LS -l $sym_link_dir/$sym_link_file | $GREP '\->' | $SED -e 's/.*-> \(.*\)/\1/'`
if test "x$ISLINK" == x; then
# This is not a symbolic link! We are done!
break
fi
# The link might be relative! We have to use cd to travel safely.
cd $DIR
cd `dirname $ISLINK`
DIR=`pwd`
FIL=`basename $ISLINK`
# Again resolve directory symlinks since the target of the just found
# link could be in a different directory
cd `$DIRNAME $ISLINK`
sym_link_dir=`$THEPWDCMD`
sym_link_file=`$BASENAME $ISLINK`
let COUNTER=COUNTER+1
done
cd $STARTDIR
$1=$DIR/$FIL
$1=$sym_link_dir/$sym_link_file
fi
fi
])
@@ -148,70 +187,195 @@ AC_DEFUN_ONCE([BASIC_INIT],
AC_SUBST(CONFIGURE_COMMAND_LINE)
DATE_WHEN_CONFIGURED=`LANG=C date`
AC_SUBST(DATE_WHEN_CONFIGURED)
# Locate the directory of this script.
SCRIPT="[$]0"
REMOVE_SYMBOLIC_LINKS(SCRIPT)
AUTOCONF_DIR=`dirname [$]0`
AC_MSG_NOTICE([Configuration created at $DATE_WHEN_CONFIGURED.])
AC_MSG_NOTICE([configure script generated at timestamp $DATE_WHEN_GENERATED.])
])
# Test that variable $1 denoting a program is not empty. If empty, exit with an error.
# $1: variable to check
# $2: executable name to print in warning (optional)
AC_DEFUN([BASIC_CHECK_NONEMPTY],
[
if test "x[$]$1" = x; then
if test "x$2" = x; then
PROG_NAME=translit($1,A-Z,a-z)
else
PROG_NAME=$2
fi
AC_MSG_NOTICE([Could not find $PROG_NAME!])
AC_MSG_ERROR([Cannot continue])
fi
])
# Does AC_PATH_PROG followed by BASIC_CHECK_NONEMPTY.
# Arguments as AC_PATH_PROG:
# $1: variable to set
# $2: executable name to look for
AC_DEFUN([BASIC_REQUIRE_PROG],
[
AC_PATH_PROGS($1, $2)
BASIC_CHECK_NONEMPTY($1, $2)
])
# Setup the most fundamental tools that relies on not much else to set up,
# but is used by much of the early bootstrap code.
AC_DEFUN_ONCE([BASIC_SETUP_FUNDAMENTAL_TOOLS],
[
# Start with tools that do not need have cross compilation support
# and can be expected to be found in the default PATH. These tools are
# used by configure. Nor are these tools expected to be found in the
# devkit from the builddeps server either, since they are
# needed to download the devkit.
# First are all the simple required tools.
BASIC_REQUIRE_PROG(BASENAME, basename)
BASIC_REQUIRE_PROG(BASH, bash)
BASIC_REQUIRE_PROG(CAT, cat)
BASIC_REQUIRE_PROG(CHMOD, chmod)
BASIC_REQUIRE_PROG(CMP, cmp)
BASIC_REQUIRE_PROG(COMM, comm)
BASIC_REQUIRE_PROG(CP, cp)
BASIC_REQUIRE_PROG(CPIO, cpio)
BASIC_REQUIRE_PROG(CUT, cut)
BASIC_REQUIRE_PROG(DATE, date)
BASIC_REQUIRE_PROG(DIFF, [gdiff diff])
BASIC_REQUIRE_PROG(DIRNAME, dirname)
BASIC_REQUIRE_PROG(ECHO, echo)
BASIC_REQUIRE_PROG(EXPR, expr)
BASIC_REQUIRE_PROG(FILE, file)
BASIC_REQUIRE_PROG(FIND, find)
BASIC_REQUIRE_PROG(HEAD, head)
BASIC_REQUIRE_PROG(LN, ln)
BASIC_REQUIRE_PROG(LS, ls)
BASIC_REQUIRE_PROG(MKDIR, mkdir)
BASIC_REQUIRE_PROG(MKTEMP, mktemp)
BASIC_REQUIRE_PROG(MV, mv)
BASIC_REQUIRE_PROG(PRINTF, printf)
BASIC_REQUIRE_PROG(THEPWDCMD, pwd)
BASIC_REQUIRE_PROG(RM, rm)
BASIC_REQUIRE_PROG(SH, sh)
BASIC_REQUIRE_PROG(SORT, sort)
BASIC_REQUIRE_PROG(TAIL, tail)
BASIC_REQUIRE_PROG(TAR, tar)
BASIC_REQUIRE_PROG(TEE, tee)
BASIC_REQUIRE_PROG(TOUCH, touch)
BASIC_REQUIRE_PROG(TR, tr)
BASIC_REQUIRE_PROG(UNAME, uname)
BASIC_REQUIRE_PROG(UNIQ, uniq)
BASIC_REQUIRE_PROG(WC, wc)
BASIC_REQUIRE_PROG(WHICH, which)
BASIC_REQUIRE_PROG(XARGS, xargs)
# Then required tools that require some special treatment.
AC_PROG_AWK
BASIC_CHECK_NONEMPTY(AWK)
AC_PROG_GREP
BASIC_CHECK_NONEMPTY(GREP)
AC_PROG_EGREP
BASIC_CHECK_NONEMPTY(EGREP)
AC_PROG_FGREP
BASIC_CHECK_NONEMPTY(FGREP)
AC_PROG_SED
BASIC_CHECK_NONEMPTY(SED)
AC_PATH_PROGS(NAWK, [nawk gawk awk])
BASIC_CHECK_NONEMPTY(NAWK)
# Always force rm.
RM="$RM -f"
# These are not required on all platforms
AC_PATH_PROG(CYGPATH, cygpath)
AC_PATH_PROG(READLINK, readlink)
AC_PATH_PROG(DF, df)
AC_PATH_PROG(SETFILE, SetFile)
])
# Setup basic configuration paths, and platform-specific stuff related to PATHs.
AC_DEFUN_ONCE([BASIC_SETUP_PATHS],
[
# Locate the directory of this script.
SCRIPT="[$]0"
BASIC_REMOVE_SYMBOLIC_LINKS(SCRIPT)
AUTOCONF_DIR=`cd \`$DIRNAME $SCRIPT\`; $THEPWDCMD`
# Where is the source? It is located two levels above the configure script.
CURDIR="$PWD"
cd "$AUTOCONF_DIR/../.."
SRC_ROOT="`pwd`"
if test "x$OPENJDK_BUILD_OS" = "xwindows"; then
SRC_ROOT_LENGTH=`pwd|wc -m`
if test $SRC_ROOT_LENGTH -gt 100; then
AC_MSG_ERROR([Your base path is too long. It is $SRC_ROOT_LENGTH characters long, but only 100 is supported])
fi
SRC_ROOT="`$THEPWDCMD`"
if test "x$OPENJDK_TARGET_OS" = "xwindows"; then
PATH_SEP=";"
BASIC_CHECK_PATHS_WINDOWS
else
PATH_SEP=":"
fi
AC_SUBST(SRC_ROOT)
AC_SUBST(PATH_SEP)
cd "$CURDIR"
SPACESAFE(SRC_ROOT,[the path to the source root])
SPACESAFE(CURDIR,[the path to the current directory])
])
BASIC_FIXUP_PATH(SRC_ROOT)
BASIC_FIXUP_PATH(CURDIR)
AC_DEFUN_ONCE([BASIC_SETUP_SEARCHPATH],
[
if test "x$OPENJDK_BUILD_OS" = "xsolaris"; then
# Add extra search paths on solaris for utilities like ar and as etc...
PATH="$PATH:/usr/ccs/bin:/usr/sfw/bin:/opt/csw/bin"
fi
])
AC_DEFUN_ONCE([BASIC_SETUP_PATH_SEP],
[
# For cygwin we need cygpath first, since it is used everywhere.
AC_PATH_PROG(CYGPATH, cygpath)
PATH_SEP=":"
if test "x$OPENJDK_BUILD_OS" = "xwindows"; then
if test "x$CYGPATH" = x; then
AC_MSG_ERROR([Something is wrong with your cygwin installation since I cannot find cygpath.exe in your path])
fi
PATH_SEP=";"
# You can force the sys-root if the sys-root encoded into the cross compiler tools
# is not correct.
AC_ARG_WITH(sys-root, [AS_HELP_STRING([--with-sys-root],
[pass this sys-root to the compilers and tools (for cross-compiling)])])
if test "x$with_sys_root" != x; then
SYS_ROOT=$with_sys_root
else
SYS_ROOT=/
fi
AC_SUBST(PATH_SEP)
AC_SUBST(SYS_ROOT)
AC_ARG_WITH([tools-dir], [AS_HELP_STRING([--with-tools-dir],
[search this directory for compilers and tools (for cross-compiling)])], [TOOLS_DIR=$with_tools_dir])
AC_ARG_WITH([devkit], [AS_HELP_STRING([--with-devkit],
[use this directory as base for tools-dir and sys-root (for cross-compiling)])],
[
if test "x$with_sys_root" != x; then
AC_MSG_ERROR([Cannot specify both --with-devkit and --with-sys-root at the same time])
fi
if test "x$with_tools_dir" != x; then
AC_MSG_ERROR([Cannot specify both --with-devkit and --with-tools-dir at the same time])
fi
TOOLS_DIR=$with_devkit/bin
SYS_ROOT=$with_devkit/$host_alias/libc
])
])
AC_DEFUN_ONCE([BASIC_SETUP_OUTPUT_DIR],
[
AC_ARG_WITH(conf-name, [AS_HELP_STRING([--with-conf-name],
[use this as the name of the configuration, overriding the generated default])],
[use this as the name of the configuration @<:@generated from important configuration options@:>@])],
[ CONF_NAME=${with_conf_name} ])
# Test from where we are running configure, in or outside of src root.
if test "x$CURDIR" = "x$SRC_ROOT" || test "x$CURDIR" = "x$SRC_ROOT/common" || test "x$CURDIR" = "x$SRC_ROOT/common/autoconf" || test "x$CURDIR" = "x$SRC_ROOT/common/makefiles" ; then
# To enable comparison of directories, CURDIR needs to be symlink free
# just like SRC_ROOT already is
NOSYM_CURDIR="$CURDIR"
BASIC_REMOVE_SYMBOLIC_LINKS(NOSYM_CURDIR)
if test "x$NOSYM_CURDIR" = "x$SRC_ROOT" || test "x$NOSYM_CURDIR" = "x$SRC_ROOT/common" \
|| test "x$NOSYM_CURDIR" = "x$SRC_ROOT/common/autoconf" \
|| test "x$NOSYM_CURDIR" = "x$SRC_ROOT/common/makefiles" ; then
# We are running configure from the src root.
# Create a default ./build/target-variant-debuglevel output root.
if test "x${CONF_NAME}" = x; then
CONF_NAME="${OPENJDK_TARGET_OS}-${OPENJDK_TARGET_CPU}-${JDK_VARIANT}-${ANDED_JVM_VARIANTS}-${DEBUG_LEVEL}"
fi
OUTPUT_ROOT="$SRC_ROOT/build/${CONF_NAME}"
mkdir -p "$OUTPUT_ROOT"
$MKDIR -p "$OUTPUT_ROOT"
if test ! -d "$OUTPUT_ROOT"; then
AC_MSG_ERROR([Could not create build directory $OUTPUT_ROOT])
fi
@@ -224,9 +388,34 @@ else
CONF_NAME=`$ECHO $CURDIR | $SED -e "s!^${SRC_ROOT}/build/!!"`
fi
OUTPUT_ROOT="$CURDIR"
fi
SPACESAFE(OUTPUT_ROOT,[the path to the output root])
# WARNING: This might be a bad thing to do. You need to be sure you want to
# have a configuration in this directory. Do some sanity checks!
if test ! -e "$OUTPUT_ROOT/spec.gmk"; then
# If we have a spec.gmk, we have run here before and we are OK. Otherwise, check for
# other files
files_present=`$LS $OUTPUT_ROOT`
# Configure has already touched config.log and confdefs.h in the current dir when this check
# is performed.
filtered_files=`$ECHO "$files_present" | $SED -e 's/config.log//g' -e 's/confdefs.h//g' -e 's/ //g' \
| $TR -d '\n'`
if test "x$filtered_files" != x; then
AC_MSG_NOTICE([Current directory is $CURDIR.])
AC_MSG_NOTICE([Since this is not the source root, configure will output the configuration here])
AC_MSG_NOTICE([(as opposed to creating a configuration in <src_root>/build/<conf-name>).])
AC_MSG_NOTICE([However, this directory is not empty. This is not allowed, since it could])
AC_MSG_NOTICE([seriously mess up just about everything.])
AC_MSG_NOTICE([Try 'cd $SRC_ROOT' and restart configure])
AC_MSG_NOTICE([(or create a new empty directory and cd to it).])
AC_MSG_ERROR([Will not continue creating configuration in $CURDIR])
fi
fi
fi
AC_MSG_CHECKING([what configuration name to use])
AC_MSG_RESULT([$CONF_NAME])
BASIC_FIXUP_PATH(OUTPUT_ROOT)
AC_SUBST(SPEC, $OUTPUT_ROOT/spec.gmk)
AC_SUBST(CONF_NAME, $CONF_NAME)
@@ -236,7 +425,13 @@ AC_SUBST(OUTPUT_ROOT, $OUTPUT_ROOT)
AC_CONFIG_HEADERS([$OUTPUT_ROOT/config.h:$AUTOCONF_DIR/config.h.in])
# The spec.gmk file contains all variables for the make system.
AC_CONFIG_FILES([$OUTPUT_ROOT/spec.gmk:$AUTOCONF_DIR/spec.gmk.in])
# The spec.sh file contains variables for compare{images|-objects}.sh scrips.
# The hotspot-spec.gmk file contains legacy variables for the hotspot make system.
AC_CONFIG_FILES([$OUTPUT_ROOT/hotspot-spec.gmk:$AUTOCONF_DIR/hotspot-spec.gmk.in])
# The bootcycle-spec.gmk file contains support for boot cycle builds.
AC_CONFIG_FILES([$OUTPUT_ROOT/bootcycle-spec.gmk:$AUTOCONF_DIR/bootcycle-spec.gmk.in])
# The compare.sh is used to compare the build output to other builds.
AC_CONFIG_FILES([$OUTPUT_ROOT/compare.sh:$AUTOCONF_DIR/compare.sh.in])
# Spec.sh is currently used by compare-objects.sh
AC_CONFIG_FILES([$OUTPUT_ROOT/spec.sh:$AUTOCONF_DIR/spec.sh.in])
# The generated Makefile knows where the spec.gmk is and where the source is.
# You can run make from the OUTPUT_ROOT, or from the top-level Makefile
@@ -252,7 +447,7 @@ AC_DEFUN_ONCE([BASIC_SETUP_LOGGING],
# Setup default logging of stdout and stderr to build.log in the output root.
BUILD_LOG='$(OUTPUT_ROOT)/build.log'
BUILD_LOG_PREVIOUS='$(OUTPUT_ROOT)/build.log.old'
BUILD_LOG_WRAPPER='$(SH) $(SRC_ROOT)/common/bin/logger.sh $(BUILD_LOG)'
BUILD_LOG_WRAPPER='$(BASH) $(SRC_ROOT)/common/bin/logger.sh $(BUILD_LOG)'
AC_SUBST(BUILD_LOG)
AC_SUBST(BUILD_LOG_PREVIOUS)
AC_SUBST(BUILD_LOG_WRAPPER)
@@ -261,13 +456,104 @@ AC_SUBST(BUILD_LOG_WRAPPER)
#%%% Simple tools %%%
# Check if we have found a usable version of make
# $1: the path to a potential make binary (or empty)
# $2: the description on how we found this
AC_DEFUN([BASIC_CHECK_MAKE_VERSION],
[
MAKE_CANDIDATE="$1"
DESCRIPTION="$2"
if test "x$MAKE_CANDIDATE" != x; then
AC_MSG_NOTICE([Testing potential make at $MAKE_CANDIDATE, found using $DESCRIPTION])
MAKE_VERSION_STRING=`$MAKE_CANDIDATE --version | $HEAD -n 1`
IS_GNU_MAKE=`$ECHO $MAKE_VERSION_STRING | $GREP 'GNU Make'`
if test "x$IS_GNU_MAKE" = x; then
AC_MSG_NOTICE([Found potential make at $MAKE_CANDIDATE, however, this is not GNU Make. Ignoring.])
else
IS_MODERN_MAKE=`$ECHO $MAKE_VERSION_STRING | $GREP '3.8[[12346789]]'`
if test "x$IS_MODERN_MAKE" = x; then
AC_MSG_NOTICE([Found GNU make at $MAKE_CANDIDATE, however this is not version 3.81 or later. (it is: $MAKE_VERSION_STRING). Ignoring.])
else
if test "x$OPENJDK_BUILD_OS" = "xwindows"; then
if test "x$OPENJDK_BUILD_OS_ENV" = "xwindows.cygwin"; then
MAKE_EXPECTED_ENV='cygwin'
elif test "x$OPENJDK_BUILD_OS_ENV" = "xwindows.msys"; then
MAKE_EXPECTED_ENV='msys'
else
AC_MSG_ERROR([Unknown Windows environment])
fi
MAKE_BUILT_FOR=`$MAKE_CANDIDATE --version | $GREP -i 'built for'`
IS_MAKE_CORRECT_ENV=`$ECHO $MAKE_BUILT_FOR | $GREP $MAKE_EXPECTED_ENV`
else
# Not relevant for non-Windows
IS_MAKE_CORRECT_ENV=true
fi
if test "x$IS_MAKE_CORRECT_ENV" = x; then
AC_MSG_NOTICE([Found GNU make version $MAKE_VERSION_STRING at $MAKE_CANDIDATE, but it is not for $MAKE_EXPECTED_ENV (it says: $MAKE_BUILT_FOR). Ignoring.])
else
FOUND_MAKE=$MAKE_CANDIDATE
BASIC_FIXUP_EXECUTABLE(FOUND_MAKE)
fi
fi
fi
fi
])
# Goes looking for a usable version of GNU make.
AC_DEFUN([BASIC_CHECK_GNU_MAKE],
[
# We need to find a recent version of GNU make. Especially on Solaris, this can be tricky.
if test "x$MAKE" != x; then
# User has supplied a make, test it.
if test ! -f "$MAKE"; then
AC_MSG_ERROR([The specified make (by MAKE=$MAKE) is not found.])
fi
BASIC_CHECK_MAKE_VERSION("$MAKE", [user supplied MAKE=$MAKE])
if test "x$FOUND_MAKE" = x; then
AC_MSG_ERROR([The specified make (by MAKE=$MAKE) is not GNU make 3.81 or newer.])
fi
else
# Try our hardest to locate a correct version of GNU make
AC_PATH_PROGS(CHECK_GMAKE, gmake)
BASIC_CHECK_MAKE_VERSION("$CHECK_GMAKE", [gmake in PATH])
if test "x$FOUND_MAKE" = x; then
AC_PATH_PROGS(CHECK_MAKE, make)
BASIC_CHECK_MAKE_VERSION("$CHECK_MAKE", [make in PATH])
fi
if test "x$FOUND_MAKE" = x; then
if test "x$TOOLS_DIR" != x; then
# We have a tools-dir, check that as well before giving up.
OLD_PATH=$PATH
PATH=$TOOLS_DIR:$PATH
AC_PATH_PROGS(CHECK_TOOLSDIR_GMAKE, gmake)
BASIC_CHECK_MAKE_VERSION("$CHECK_TOOLSDIR_GMAKE", [gmake in tools-dir])
if test "x$FOUND_MAKE" = x; then
AC_PATH_PROGS(CHECK_TOOLSDIR_MAKE, make)
BASIC_CHECK_MAKE_VERSION("$CHECK_TOOLSDIR_MAKE", [make in tools-dir])
fi
PATH=$OLD_PATH
fi
fi
if test "x$FOUND_MAKE" = x; then
AC_MSG_ERROR([Cannot find GNU make 3.81 or newer! Please put it in the path, or add e.g. MAKE=/opt/gmake3.81/make as argument to configure.])
fi
fi
MAKE=$FOUND_MAKE
AC_SUBST(MAKE)
AC_MSG_NOTICE([Using GNU make 3.81 (or later) at $FOUND_MAKE (version: $MAKE_VERSION_STRING)])
])
AC_DEFUN([BASIC_CHECK_FIND_DELETE],
[
# Test if find supports -delete
AC_MSG_CHECKING([if find supports -delete])
FIND_DELETE="-delete"
DELETEDIR=`mktemp -d tmp.XXXXXXXXXX` || (echo Could not create temporary directory!; exit $?)
DELETEDIR=`$MKTEMP -d tmp.XXXXXXXXXX` || (echo Could not create temporary directory!; exit $?)
echo Hejsan > $DELETEDIR/TestIfFindSupportsDelete
@@ -281,104 +567,22 @@ AC_DEFUN([BASIC_CHECK_FIND_DELETE],
AC_MSG_RESULT([yes])
fi
rmdir $DELETEDIR
AC_SUBST(FIND_DELETE)
])
AC_DEFUN([CHECK_NONEMPTY],
AC_DEFUN_ONCE([BASIC_SETUP_COMPLEX_TOOLS],
[
# Test that variable $1 is not empty.
if test "" = "[$]$1"; then AC_MSG_ERROR(Could not find translit($1,A-Z,a-z) !); fi
])
BASIC_CHECK_GNU_MAKE
AC_DEFUN_ONCE([BASIC_SETUP_TOOLS],
[
# Start with tools that do not need have cross compilation support
# and can be expected to be found in the default PATH. These tools are
# used by configure. Nor are these tools expected to be found in the
# devkit from the builddeps server either, since they are
# needed to download the devkit.
AC_PROG_AWK
CHECK_NONEMPTY(AWK)
AC_PATH_PROG(CAT, cat)
CHECK_NONEMPTY(CAT)
AC_PATH_PROG(CHMOD, chmod)
CHECK_NONEMPTY(CHMOD)
AC_PATH_PROG(CP, cp)
CHECK_NONEMPTY(CP)
AC_PATH_PROG(CPIO, cpio)
CHECK_NONEMPTY(CPIO)
AC_PATH_PROG(CUT, cut)
CHECK_NONEMPTY(CUT)
AC_PATH_PROG(DATE, date)
CHECK_NONEMPTY(DATE)
AC_PATH_PROG(DF, df)
CHECK_NONEMPTY(DF)
AC_PATH_PROG(DIFF, diff)
CHECK_NONEMPTY(DIFF)
# Warning echo is really, really unportable!!!!! Different
# behaviour in bash and dash and in a lot of other shells!
# Use printf for serious work!
AC_PATH_PROG(ECHO, echo)
CHECK_NONEMPTY(ECHO)
AC_PROG_EGREP
CHECK_NONEMPTY(EGREP)
AC_PROG_FGREP
CHECK_NONEMPTY(FGREP)
AC_PATH_PROG(FIND, find)
CHECK_NONEMPTY(FIND)
BASIC_CHECK_FIND_DELETE
AC_SUBST(FIND_DELETE)
AC_PROG_GREP
CHECK_NONEMPTY(GREP)
AC_PATH_PROG(HEAD, head)
CHECK_NONEMPTY(HEAD)
AC_PATH_PROG(LN, ln)
CHECK_NONEMPTY(LN)
AC_PATH_PROG(LS, ls)
CHECK_NONEMPTY(LS)
AC_PATH_PROGS(MAKE, [gmake make])
CHECK_NONEMPTY(MAKE)
MAKE_VERSION=`$MAKE --version | head -n 1 | grep '3.8[[12346789]]'`
if test "x$MAKE_VERSION" = x; then
AC_MSG_ERROR([You must use GNU make 3.81 or newer! Please put it in the path, or add e.g. MAKE=/opt/gmake3.81/make as argument to configure.])
fi
AC_PATH_PROG(MKDIR, mkdir)
CHECK_NONEMPTY(MKDIR)
AC_PATH_PROG(MV, mv)
CHECK_NONEMPTY(MV)
AC_PATH_PROGS(NAWK, [nawk gawk awk])
CHECK_NONEMPTY(NAWK)
AC_PATH_PROG(PRINTF, printf)
CHECK_NONEMPTY(PRINTF)
AC_PATH_PROG(THEPWDCMD, pwd)
AC_PATH_PROG(RM, rm)
CHECK_NONEMPTY(RM)
RM="$RM -f"
AC_PROG_SED
CHECK_NONEMPTY(SED)
AC_PATH_PROG(SH, sh)
CHECK_NONEMPTY(SH)
AC_PATH_PROG(SORT, sort)
CHECK_NONEMPTY(SORT)
AC_PATH_PROG(TAR, tar)
CHECK_NONEMPTY(TAR)
AC_PATH_PROG(TAIL, tail)
CHECK_NONEMPTY(TAIL)
AC_PATH_PROG(TEE, tee)
CHECK_NONEMPTY(TEE)
AC_PATH_PROG(TR, tr)
CHECK_NONEMPTY(TR)
AC_PATH_PROG(TOUCH, touch)
CHECK_NONEMPTY(TOUCH)
AC_PATH_PROG(WC, wc)
CHECK_NONEMPTY(WC)
AC_PATH_PROG(XARGS, xargs)
CHECK_NONEMPTY(XARGS)
AC_PATH_PROG(ZIP, zip)
CHECK_NONEMPTY(ZIP)
AC_PATH_PROG(UNZIP, unzip)
CHECK_NONEMPTY(UNZIP)
# These tools might not be installed by default,
# need hint on how to install them.
BASIC_REQUIRE_PROG(UNZIP, unzip)
BASIC_REQUIRE_PROG(ZIP, zip)
# Non-required basic tools
AC_PATH_PROG(LDD, ldd)
if test "x$LDD" = "x"; then
# List shared lib dependencies is used for
@@ -390,56 +594,18 @@ AC_PATH_PROG(OTOOL, otool)
if test "x$OTOOL" = "x"; then
OTOOL="true"
fi
AC_PATH_PROG(READELF, readelf)
AC_PATH_PROG(EXPR, expr)
CHECK_NONEMPTY(EXPR)
AC_PATH_PROG(FILE, file)
CHECK_NONEMPTY(FILE)
AC_PATH_PROGS(READELF, [readelf greadelf])
AC_PATH_PROG(HG, hg)
])
AC_PATH_PROG(STAT, stat)
AC_PATH_PROG(TIME, time)
AC_DEFUN_ONCE([BASIC_COMPILE_UNCYGDRIVE],
[
# When using cygwin, we need a wrapper binary that renames
# /cygdrive/c/ arguments into c:/ arguments and peeks into
# @files and rewrites these too! This wrapper binary is
# called uncygdrive.exe.
UNCYGDRIVE=
if test "x$OPENJDK_BUILD_OS" = xwindows; then
AC_MSG_CHECKING([if uncygdrive can be created])
UNCYGDRIVE_SRC=`$CYGPATH -m $SRC_ROOT/common/src/uncygdrive.c`
rm -f $OUTPUT_ROOT/uncygdrive*
UNCYGDRIVE=`$CYGPATH -m $OUTPUT_ROOT/uncygdrive.exe`
cd $OUTPUT_ROOT
$CC $UNCYGDRIVE_SRC /Fe$UNCYGDRIVE > $OUTPUT_ROOT/uncygdrive1.log 2>&1
cd $CURDIR
if test ! -x $OUTPUT_ROOT/uncygdrive.exe; then
AC_MSG_RESULT([no])
cat $OUTPUT_ROOT/uncygdrive1.log
AC_MSG_ERROR([Could not create $OUTPUT_ROOT/uncygdrive.exe])
fi
AC_MSG_RESULT([$UNCYGDRIVE])
AC_MSG_CHECKING([if uncygdrive.exe works])
cd $OUTPUT_ROOT
$UNCYGDRIVE $CC $SRC_ROOT/common/src/uncygdrive.c /Fe$OUTPUT_ROOT/uncygdrive2.exe > $OUTPUT_ROOT/uncygdrive2.log 2>&1
cd $CURDIR
if test ! -x $OUTPUT_ROOT/uncygdrive2.exe; then
AC_MSG_RESULT([no])
cat $OUTPUT_ROOT/uncygdrive2.log
AC_MSG_ERROR([Uncygdrive did not work!])
fi
AC_MSG_RESULT([yes])
rm -f $OUTPUT_ROOT/uncygdrive?.??? $OUTPUT_ROOT/uncygdrive.obj
if test "x$OPENJDK_TARGET_OS" = "xwindows"; then
BASIC_REQUIRE_PROG(COMM, comm)
fi
AC_SUBST(UNCYGDRIVE)
])
# Check if build directory is on local disk.
# Check if build directory is on local disk. If not possible to determine,
# we prefer to claim it's local.
# Argument 1: directory to test
# Argument 2: what to do if it is on local disk
# Argument 3: what to do otherwise (remote disk or failure)
@@ -447,11 +613,38 @@ AC_DEFUN([BASIC_CHECK_DIR_ON_LOCAL_DISK],
[
# df -l lists only local disks; if the given directory is not found then
# a non-zero exit code is given
if $DF -l $1 > /dev/null 2>&1; then
$2
else
$3
fi
if test "x$DF" = x; then
if test "x$OPENJDK_BUILD_OS_ENV" = "xwindows.msys"; then
# msys does not have df; use Windows "net use" instead.
IS_NETWORK_DISK=`net use | grep \`pwd -W | cut -d ":" -f 1 | tr a-z A-Z\`:`
if test "x$IS_NETWORK_DISK" = x; then
$2
else
$3
fi
else
# No df here, say it's local
$2
fi
else
if $DF -l $1 > /dev/null 2>&1; then
$2
else
$3
fi
fi
])
# Check that source files have basic read permissions set. This might
# not be the case in cygwin in certain conditions.
AC_DEFUN_ONCE([BASIC_CHECK_SRC_PERMS],
[
if test x"$OPENJDK_BUILD_OS" = xwindows; then
file_to_test="$SRC_ROOT/LICENSE"
if test `$STAT -c '%a' "$file_to_test"` -lt 400; then
AC_MSG_ERROR([Bad file permissions on src files. This is usually caused by cloning the repositories with a non cygwin hg in a directory not created in cygwin.])
fi
fi
])
AC_DEFUN_ONCE([BASIC_TEST_USABILITY_ISSUES],
@@ -463,6 +656,8 @@ BASIC_CHECK_DIR_ON_LOCAL_DISK($OUTPUT_ROOT,
[OUTPUT_DIR_IS_LOCAL="no"])
AC_MSG_RESULT($OUTPUT_DIR_IS_LOCAL)
BASIC_CHECK_SRC_PERMS
# Check if the user has any old-style ALT_ variables set.
FOUND_ALT_VARIABLES=`env | grep ^ALT_`

View File

@@ -0,0 +1,420 @@
#
# 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. Oracle designates this
# particular file as subject to the "Classpath" exception as provided
# by Oracle in the LICENSE file that accompanied this code.
#
# 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.
#
AC_DEFUN([BASIC_WINDOWS_REWRITE_AS_UNIX_PATH],
[
windows_path="[$]$1"
if test "x$OPENJDK_BUILD_OS_ENV" = "xwindows.cygwin"; then
unix_path=`$CYGPATH -u "$windows_path"`
$1="$unix_path"
elif test "x$OPENJDK_BUILD_OS_ENV" = "xwindows.msys"; then
unix_path=`$ECHO "$windows_path" | $SED -e 's,^\\(.\\):,/\\1,g' -e 's,\\\\,/,g'`
$1="$unix_path"
fi
])
AC_DEFUN([BASIC_WINDOWS_REWRITE_AS_WINDOWS_MIXED_PATH],
[
unix_path="[$]$1"
if test "x$OPENJDK_BUILD_OS_ENV" = "xwindows.cygwin"; then
windows_path=`$CYGPATH -m "$unix_path"`
$1="$windows_path"
elif test "x$OPENJDK_BUILD_OS_ENV" = "xwindows.msys"; then
windows_path=`cmd //c echo $unix_path`
$1="$windows_path"
fi
])
# Helper function which possibly converts a path using DOS-style short mode.
# If so, the updated path is stored in $new_path.
# $1: The path to check
AC_DEFUN([BASIC_MAKE_WINDOWS_SPACE_SAFE_CYGWIN],
[
input_path="$1"
# Check if we need to convert this using DOS-style short mode. If the path
# contains just simple characters, use it. Otherwise (spaces, weird characters),
# take no chances and rewrite it.
# Note: m4 eats our [], so we need to use @<:@ and @:>@ instead.
has_forbidden_chars=`$ECHO "$input_path" | $GREP @<:@^-._/a-zA-Z0-9@:>@`
if test "x$has_forbidden_chars" != x; then
# Now convert it to mixed DOS-style, short mode (no spaces, and / instead of \)
shortmode_path=`$CYGPATH -s -m -a "$input_path"`
path_after_shortmode=`$CYGPATH -u "$shortmode_path"`
if test "x$path_after_shortmode" != "x$input_to_shortpath"; then
# Going to short mode and back again did indeed matter. Since short mode is
# case insensitive, let's make it lowercase to improve readability.
shortmode_path=`$ECHO "$shortmode_path" | $TR 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
# Now convert it back to Unix-stile (cygpath)
input_path=`$CYGPATH -u "$shortmode_path"`
new_path="$input_path"
fi
fi
test_cygdrive_prefix=`$ECHO $input_path | $GREP ^/cygdrive/`
if test "x$test_cygdrive_prefix" = x; then
# As a simple fix, exclude /usr/bin since it's not a real path.
if test "x`$ECHO $1 | $GREP ^/usr/bin/`" = x; then
# The path is in a Cygwin special directory (e.g. /home). We need this converted to
# a path prefixed by /cygdrive for fixpath to work.
new_path="$CYGWIN_ROOT_PATH$input_path"
fi
fi
])
# Helper function which possibly converts a path using DOS-style short mode.
# If so, the updated path is stored in $new_path.
# $1: The path to check
AC_DEFUN([BASIC_MAKE_WINDOWS_SPACE_SAFE_MSYS],
[
input_path="$1"
# Check if we need to convert this using DOS-style short mode. If the path
# contains just simple characters, use it. Otherwise (spaces, weird characters),
# take no chances and rewrite it.
# Note: m4 eats our [], so we need to use @<:@ and @:>@ instead.
has_forbidden_chars=`$ECHO "$input_path" | $GREP @<:@^-_/:a-zA-Z0-9@:>@`
if test "x$has_forbidden_chars" != x; then
# Now convert it to mixed DOS-style, short mode (no spaces, and / instead of \)
new_path=`cmd /c "for %A in (\"$input_path\") do @echo %~sA"|$TR \\\\\\\\ / | $TR 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
fi
])
# FIXME: The BASIC_FIXUP_*_CYGWIN/MSYS is most likely too convoluted
# and could probably be heavily simplified. However, all changes in this
# area tend to need lot of testing in different scenarios, and in lack of
# proper unit testing, cleaning this up has not been deemed worth the effort
# at the moment.
AC_DEFUN([BASIC_FIXUP_PATH_CYGWIN],
[
# Input might be given as Windows format, start by converting to
# unix format.
path="[$]$1"
new_path=`$CYGPATH -u "$path"`
# Cygwin tries to hide some aspects of the Windows file system, such that binaries are
# named .exe but called without that suffix. Therefore, "foo" and "foo.exe" are considered
# the same file, most of the time (as in "test -f"). But not when running cygpath -s, then
# "foo.exe" is OK but "foo" is an error.
#
# This test is therefore slightly more accurate than "test -f" to check for file precense.
# It is also a way to make sure we got the proper file name for the real test later on.
test_shortpath=`$CYGPATH -s -m "$new_path" 2> /dev/null`
if test "x$test_shortpath" = x; then
AC_MSG_NOTICE([The path of $1, which resolves as "$path", is invalid.])
AC_MSG_ERROR([Cannot locate the the path of $1])
fi
# Call helper function which possibly converts this using DOS-style short mode.
# If so, the updated path is stored in $new_path.
BASIC_MAKE_WINDOWS_SPACE_SAFE_CYGWIN([$new_path])
if test "x$path" != "x$new_path"; then
$1="$new_path"
AC_MSG_NOTICE([Rewriting $1 to "$new_path"])
fi
])
AC_DEFUN([BASIC_FIXUP_PATH_MSYS],
[
path="[$]$1"
has_colon=`$ECHO $path | $GREP ^.:`
new_path="$path"
if test "x$has_colon" = x; then
# Not in mixed or Windows style, start by that.
new_path=`cmd //c echo $path`
fi
BASIC_MAKE_WINDOWS_SPACE_SAFE_MSYS([$new_path])
BASIC_WINDOWS_REWRITE_AS_UNIX_PATH(new_path)
if test "x$path" != "x$new_path"; then
$1="$new_path"
AC_MSG_NOTICE([Rewriting $1 to "$new_path"])
fi
# Save the first 10 bytes of this path to the storage, so fixpath can work.
all_fixpath_prefixes=("${all_fixpath_prefixes@<:@@@:>@}" "${new_path:0:10}")
])
AC_DEFUN([BASIC_FIXUP_EXECUTABLE_CYGWIN],
[
# First separate the path from the arguments. This will split at the first
# space.
complete="[$]$1"
path="${complete%% *}"
tmp="$complete EOL"
arguments="${tmp#* }"
# Input might be given as Windows format, start by converting to
# unix format.
new_path=`$CYGPATH -u "$path"`
# Now try to locate executable using which
new_path=`$WHICH "$new_path" 2> /dev/null`
# bat and cmd files are not always considered executable in cygwin causing which
# to not find them
if test "x$new_path" = x \
&& test "x`$ECHO \"$path\" | $GREP -i -e \"\\.bat$\" -e \"\\.cmd$\"`" != x \
&& test "x`$LS \"$path\" 2>/dev/null`" != x; then
new_path=`$CYGPATH -u "$path"`
fi
if test "x$new_path" = x; then
# Oops. Which didn't find the executable.
# The splitting of arguments from the executable at a space might have been incorrect,
# since paths with space are more likely in Windows. Give it another try with the whole
# argument.
path="$complete"
arguments="EOL"
new_path=`$CYGPATH -u "$path"`
new_path=`$WHICH "$new_path" 2> /dev/null`
# bat and cmd files are not always considered executable in cygwin causing which
# to not find them
if test "x$new_path" = x \
&& test "x`$ECHO \"$path\" | $GREP -i -e \"\\.bat$\" -e \"\\.cmd$\"`" != x \
&& test "x`$LS \"$path\" 2>/dev/null`" != x; then
new_path=`$CYGPATH -u "$path"`
fi
if test "x$new_path" = x; then
# It's still not found. Now this is an unrecoverable error.
AC_MSG_NOTICE([The path of $1, which resolves as "$complete", is not found.])
has_space=`$ECHO "$complete" | $GREP " "`
if test "x$has_space" != x; then
AC_MSG_NOTICE([You might be mixing spaces in the path and extra arguments, which is not allowed.])
fi
AC_MSG_ERROR([Cannot locate the the path of $1])
fi
fi
# Cygwin tries to hide some aspects of the Windows file system, such that binaries are
# named .exe but called without that suffix. Therefore, "foo" and "foo.exe" are considered
# the same file, most of the time (as in "test -f"). But not when running cygpath -s, then
# "foo.exe" is OK but "foo" is an error.
#
# This test is therefore slightly more accurate than "test -f" to check for file precense.
# It is also a way to make sure we got the proper file name for the real test later on.
test_shortpath=`$CYGPATH -s -m "$new_path" 2> /dev/null`
if test "x$test_shortpath" = x; then
# Short path failed, file does not exist as specified.
# Try adding .exe or .cmd
if test -f "${new_path}.exe"; then
input_to_shortpath="${new_path}.exe"
elif test -f "${new_path}.cmd"; then
input_to_shortpath="${new_path}.cmd"
else
AC_MSG_NOTICE([The path of $1, which resolves as "$new_path", is invalid.])
AC_MSG_NOTICE([Neither "$new_path" nor "$new_path.exe/cmd" can be found])
AC_MSG_ERROR([Cannot locate the the path of $1])
fi
else
input_to_shortpath="$new_path"
fi
# Call helper function which possibly converts this using DOS-style short mode.
# If so, the updated path is stored in $new_path.
new_path="$input_to_shortpath"
BASIC_MAKE_WINDOWS_SPACE_SAFE_CYGWIN([$input_to_shortpath])
# remove trailing .exe if any
new_path="${new_path/%.exe/}"
])
AC_DEFUN([BASIC_FIXUP_EXECUTABLE_MSYS],
[
# First separate the path from the arguments. This will split at the first
# space.
complete="[$]$1"
path="${complete%% *}"
tmp="$complete EOL"
arguments="${tmp#* }"
# Input might be given as Windows format, start by converting to
# unix format.
new_path="$path"
BASIC_WINDOWS_REWRITE_AS_UNIX_PATH(new_path)
# Now try to locate executable using which
new_path=`$WHICH "$new_path" 2> /dev/null`
if test "x$new_path" = x; then
# Oops. Which didn't find the executable.
# The splitting of arguments from the executable at a space might have been incorrect,
# since paths with space are more likely in Windows. Give it another try with the whole
# argument.
path="$complete"
arguments="EOL"
new_path="$path"
BASIC_WINDOWS_REWRITE_AS_UNIX_PATH(new_path)
new_path=`$WHICH "$new_path" 2> /dev/null`
if test "x$new_path" = x; then
# It's still not found. Now this is an unrecoverable error.
AC_MSG_NOTICE([The path of $1, which resolves as "$complete", is not found.])
has_space=`$ECHO "$complete" | $GREP " "`
if test "x$has_space" != x; then
AC_MSG_NOTICE([You might be mixing spaces in the path and extra arguments, which is not allowed.])
fi
AC_MSG_ERROR([Cannot locate the the path of $1])
fi
fi
# Now new_path has a complete unix path to the binary
if test "x`$ECHO $new_path | $GREP ^/bin/`" != x; then
# Keep paths in /bin as-is, but remove trailing .exe if any
new_path="${new_path/%.exe/}"
# Do not save /bin paths to all_fixpath_prefixes!
else
# Not in mixed or Windows style, start by that.
new_path=`cmd //c echo $new_path`
BASIC_MAKE_WINDOWS_SPACE_SAFE_MSYS([$new_path])
# Output is in $new_path
BASIC_WINDOWS_REWRITE_AS_UNIX_PATH(new_path)
# remove trailing .exe if any
new_path="${new_path/%.exe/}"
# Save the first 10 bytes of this path to the storage, so fixpath can work.
all_fixpath_prefixes=("${all_fixpath_prefixes@<:@@@:>@}" "${new_path:0:10}")
fi
])
# Setup basic configuration paths, and platform-specific stuff related to PATHs.
AC_DEFUN([BASIC_CHECK_PATHS_WINDOWS],
[
SRC_ROOT_LENGTH=`$THEPWDCMD|$WC -m`
if test $SRC_ROOT_LENGTH -gt 100; then
AC_MSG_ERROR([Your base path is too long. It is $SRC_ROOT_LENGTH characters long, but only 100 is supported])
fi
if test "x$OPENJDK_BUILD_OS_ENV" = "xwindows.cygwin"; then
AC_MSG_CHECKING([cygwin release])
CYGWIN_VERSION=`$UNAME -r`
AC_MSG_RESULT([$CYGWIN_VERSION])
WINDOWS_ENV_VENDOR='cygwin'
WINDOWS_ENV_VERSION="$CYGWIN_VERSION"
CYGWIN_VERSION_OK=`$ECHO $CYGWIN_VERSION | $GREP ^1.7.`
if test "x$CYGWIN_VERSION_OK" = x; then
AC_MSG_NOTICE([Your cygwin is too old. You are running $CYGWIN_VERSION, but at least cygwin 1.7 is required. Please upgrade.])
AC_MSG_ERROR([Cannot continue])
fi
if test "x$CYGPATH" = x; then
AC_MSG_ERROR([Something is wrong with your cygwin installation since I cannot find cygpath.exe in your path])
fi
AC_MSG_CHECKING([cygwin root directory as unix-style path])
# The cmd output ends with Windows line endings (CR/LF), the grep command will strip that away
cygwin_winpath_root=`cd / ; cmd /c cd | grep ".*"`
# Force cygpath to report the proper root by including a trailing space, and then stripping it off again.
CYGWIN_ROOT_PATH=`$CYGPATH -u "$cygwin_winpath_root " | $CUT -f 1 -d " "`
AC_MSG_RESULT([$CYGWIN_ROOT_PATH])
WINDOWS_ENV_ROOT_PATH="$CYGWIN_ROOT_PATH"
test_cygdrive_prefix=`$ECHO $CYGWIN_ROOT_PATH | $GREP ^/cygdrive/`
if test "x$test_cygdrive_prefix" = x; then
AC_MSG_ERROR([Your cygdrive prefix is not /cygdrive. This is currently not supported. Change with mount -c.])
fi
elif test "x$OPENJDK_BUILD_OS_ENV" = "xwindows.msys"; then
AC_MSG_CHECKING([msys release])
MSYS_VERSION=`$UNAME -r`
AC_MSG_RESULT([$MSYS_VERSION])
WINDOWS_ENV_VENDOR='msys'
WINDOWS_ENV_VERSION="$MSYS_VERSION"
AC_MSG_CHECKING([msys root directory as unix-style path])
# The cmd output ends with Windows line endings (CR/LF), the grep command will strip that away
MSYS_ROOT_PATH=`cd / ; cmd /c cd | grep ".*"`
BASIC_WINDOWS_REWRITE_AS_UNIX_PATH(MSYS_ROOT_PATH)
AC_MSG_RESULT([$MSYS_ROOT_PATH])
WINDOWS_ENV_ROOT_PATH="$MSYS_ROOT_PATH"
else
AC_MSG_ERROR([Unknown Windows environment. Neither cygwin nor msys was detected.])
fi
# Test if windows or unix (cygwin/msys) find is first in path.
AC_MSG_CHECKING([what kind of 'find' is first on the PATH])
FIND_BINARY_OUTPUT=`find --version 2>&1`
if test "x`echo $FIND_BINARY_OUTPUT | $GREP GNU`" != x; then
AC_MSG_RESULT([unix style])
elif test "x`echo $FIND_BINARY_OUTPUT | $GREP FIND`" != x; then
AC_MSG_RESULT([Windows])
AC_MSG_NOTICE([Your path contains Windows tools (C:\Windows\system32) before your unix (cygwin or msys) tools.])
AC_MSG_NOTICE([This will not work. Please correct and make sure /usr/bin (or similar) is first in path.])
AC_MSG_ERROR([Cannot continue])
else
AC_MSG_RESULT([unknown])
AC_MSG_WARN([It seems that your find utility is non-standard.])
fi
])
AC_DEFUN_ONCE([BASIC_COMPILE_FIXPATH],
[
# When using cygwin or msys, we need a wrapper binary that renames
# /cygdrive/c/ arguments into c:/ arguments and peeks into
# @files and rewrites these too! This wrapper binary is
# called fixpath.
FIXPATH=
if test "x$OPENJDK_BUILD_OS" = xwindows; then
AC_MSG_CHECKING([if fixpath can be created])
FIXPATH_SRC="$SRC_ROOT/common/src/fixpath.c"
FIXPATH_BIN="$OUTPUT_ROOT/fixpath.exe"
if test "x$OPENJDK_BUILD_OS_ENV" = xwindows.cygwin; then
FIXPATH_SRC=`$CYGPATH -m $FIXPATH_SRC`
FIXPATH_BIN=`$CYGPATH -m $FIXPATH_BIN`
# Important to keep the .exe suffix on Cygwin for Hotspot makefiles
FIXPATH="$OUTPUT_ROOT/fixpath.exe -c"
elif test "x$OPENJDK_BUILD_OS_ENV" = xwindows.msys; then
FIXPATH_SRC=`cmd //c echo $FIXPATH_SRC`
FIXPATH_BIN=`cmd //c echo $FIXPATH_BIN`
# Take all collected prefixes and turn them into a -m/c/foo@/c/bar@... command line
# @ was chosen as separator to minimize risk of other tools messing around with it
all_unique_prefixes=`echo "${all_fixpath_prefixes@<:@@@:>@}" | tr ' ' '\n' | grep '^/./' | sort | uniq`
fixpath_argument_list=`echo $all_unique_prefixes | tr ' ' '@'`
FIXPATH="$OUTPUT_ROOT/fixpath -m$fixpath_argument_list"
fi
rm -f $OUTPUT_ROOT/fixpath*
cd $OUTPUT_ROOT
$CC $FIXPATH_SRC -Fe$FIXPATH_BIN > $OUTPUT_ROOT/fixpath1.log 2>&1
cd $CURDIR
if test ! -x $OUTPUT_ROOT/fixpath.exe; then
AC_MSG_RESULT([no])
cat $OUTPUT_ROOT/fixpath1.log
AC_MSG_ERROR([Could not create $OUTPUT_ROOT/fixpath.exe])
fi
AC_MSG_RESULT([yes])
AC_MSG_CHECKING([if fixpath.exe works])
cd $OUTPUT_ROOT
$FIXPATH $CC $SRC_ROOT/common/src/fixpath.c -Fe$OUTPUT_ROOT/fixpath2.exe > $OUTPUT_ROOT/fixpath2.log 2>&1
cd $CURDIR
if test ! -x $OUTPUT_ROOT/fixpath2.exe; then
AC_MSG_RESULT([no])
cat $OUTPUT_ROOT/fixpath2.log
AC_MSG_ERROR([fixpath did not work!])
fi
AC_MSG_RESULT([yes])
rm -f $OUTPUT_ROOT/fixpath?.??? $OUTPUT_ROOT/fixpath.obj
fi
AC_SUBST(FIXPATH)
])

View File

@@ -23,22 +23,192 @@
# questions.
#
# Fixes paths on windows to be mixed mode short.
AC_DEFUN([BOOTJDK_WIN_FIX_PATH],
# Execute the check given as argument, and verify the result
# If the Boot JDK was previously found, do nothing
# $1 A command line (typically autoconf macro) to execute
AC_DEFUN([BOOTJDK_DO_CHECK],
[
if test "x$OPENJDK_BUILD_OS" = "xwindows"; then
AC_PATH_PROG(CYGPATH, cygpath)
tmp="[$]$1"
# Convert to C:/ mixed style path without spaces.
tmp=`$CYGPATH -s -m "$tmp"`
$1="$tmp"
if test "x$BOOT_JDK_FOUND" = xno; then
# Now execute the test
$1
# If previous step claimed to have found a JDK, check it to see if it seems to be valid.
if test "x$BOOT_JDK_FOUND" = xmaybe; then
# Do we have a bin/java?
if test ! -x "$BOOT_JDK/bin/java"; then
AC_MSG_NOTICE([Potential Boot JDK found at $BOOT_JDK did not contain bin/java; ignoring])
BOOT_JDK_FOUND=no
else
# Do we have a bin/javac?
if test ! -x "$BOOT_JDK/bin/javac"; then
AC_MSG_NOTICE([Potential Boot JDK found at $BOOT_JDK did not contain bin/javac; ignoring])
AC_MSG_NOTICE([(This might be an JRE instead of an JDK)])
BOOT_JDK_FOUND=no
else
# Do we have an rt.jar? (On MacOSX it is called classes.jar)
if test ! -f "$BOOT_JDK/jre/lib/rt.jar" && test ! -f "$BOOT_JDK/../Classes/classes.jar"; then
AC_MSG_NOTICE([Potential Boot JDK found at $BOOT_JDK did not contain an rt.jar; ignoring])
BOOT_JDK_FOUND=no
else
# Oh, this is looking good! We probably have found a proper JDK. Is it the correct version?
BOOT_JDK_VERSION=`"$BOOT_JDK/bin/java" -version 2>&1 | head -n 1`
# Extra M4 quote needed to protect [] in grep expression.
[FOUND_VERSION_78=`echo $BOOT_JDK_VERSION | grep '\"1\.[78]\.'`]
if test "x$FOUND_VERSION_78" = x; then
AC_MSG_NOTICE([Potential Boot JDK found at $BOOT_JDK is incorrect JDK version ($BOOT_JDK_VERSION); ignoring])
AC_MSG_NOTICE([(Your Boot JDK must be version 7 or 8)])
BOOT_JDK_FOUND=no
else
# We're done! :-)
BOOT_JDK_FOUND=yes
BASIC_FIXUP_PATH(BOOT_JDK)
AC_MSG_CHECKING([for Boot JDK])
AC_MSG_RESULT([$BOOT_JDK])
AC_MSG_CHECKING([Boot JDK version])
BOOT_JDK_VERSION=`"$BOOT_JDK/bin/java" -version 2>&1 | $TR '\n\r' ' '`
AC_MSG_RESULT([$BOOT_JDK_VERSION])
fi # end check jdk version
fi # end check rt.jar
fi # end check javac
fi # end check java
fi # end check boot jdk found
fi
])
# Test: Is bootjdk explicitely set by command line arguments?
AC_DEFUN([BOOTJDK_CHECK_ARGUMENTS],
[
if test "x$with_boot_jdk" != x; then
BOOT_JDK=$with_boot_jdk
BOOT_JDK_FOUND=maybe
AC_MSG_NOTICE([Found potential Boot JDK using configure arguments])
fi
])
# Test: Is bootjdk available from builddeps?
AC_DEFUN([BOOTJDK_CHECK_BUILDDEPS],
[
BDEPS_CHECK_MODULE(BOOT_JDK, bootjdk, xxx, [BOOT_JDK_FOUND=maybe], [BOOT_JDK_FOUND=no])
])
# Test: Is $JAVA_HOME set?
AC_DEFUN([BOOTJDK_CHECK_JAVA_HOME],
[
if test "x$JAVA_HOME" != x; then
JAVA_HOME_PROCESSED="$JAVA_HOME"
BASIC_FIXUP_PATH(JAVA_HOME_PROCESSED)
if test ! -d "$JAVA_HOME_PROCESSED"; then
AC_MSG_NOTICE([Your JAVA_HOME points to a non-existing directory!])
else
# Aha, the user has set a JAVA_HOME
# let us use that as the Boot JDK.
BOOT_JDK="$JAVA_HOME_PROCESSED"
BOOT_JDK_FOUND=maybe
AC_MSG_NOTICE([Found potential Boot JDK using JAVA_HOME])
fi
fi
])
AC_DEFUN([BOOTJDK_MISSING_ERROR],
# Test: Is there a java or javac in the PATH, which is a symlink to the JDK?
AC_DEFUN([BOOTJDK_CHECK_JAVA_IN_PATH_IS_SYMLINK],
[
AC_MSG_NOTICE([This might be fixed by explicitely setting --with-boot-jdk])
AC_MSG_ERROR([Cannot continue])
AC_PATH_PROG(JAVAC_CHECK, javac)
AC_PATH_PROG(JAVA_CHECK, java)
BINARY="$JAVAC_CHECK"
if test "x$JAVAC_CHECK" = x; then
BINARY="$JAVA_CHECK"
fi
if test "x$BINARY" != x; then
# So there is a java(c) binary, it might be part of a JDK.
# Lets find the JDK/JRE directory by following symbolic links.
# Linux/GNU systems often have links from /usr/bin/java to
# /etc/alternatives/java to the real JDK binary.
BASIC_REMOVE_SYMBOLIC_LINKS(BINARY)
BOOT_JDK=`dirname "$BINARY"`
BOOT_JDK=`cd "$BOOT_JDK/.."; pwd`
if test -x "$BOOT_JDK/bin/javac" && test -x "$BOOT_JDK/bin/java"; then
# Looks like we found ourselves an JDK
BOOT_JDK_FOUND=maybe
AC_MSG_NOTICE([Found potential Boot JDK using java(c) in PATH])
fi
fi
])
# Test: Is there a /usr/libexec/java_home? (Typically on MacOSX)
AC_DEFUN([BOOTJDK_CHECK_LIBEXEC_JAVA_HOME],
[
if test -x /usr/libexec/java_home; then
BOOT_JDK=`/usr/libexec/java_home`
BOOT_JDK_FOUND=maybe
AC_MSG_NOTICE([Found potential Boot JDK using /usr/libexec/java_home])
fi
])
# Look for a jdk in the given path. If there are multiple, try to select the newest.
# If found, set BOOT_JDK and BOOT_JDK_FOUND.
# $1 = Path to directory containing jdk installations.
# $2 = String to append to the found JDK directory to get the proper JDK home
AC_DEFUN([BOOTJDK_FIND_BEST_JDK_IN_DIRECTORY],
[
BOOT_JDK_PREFIX="$1"
BOOT_JDK_SUFFIX="$2"
ALL_JDKS_FOUND=`$LS "$BOOT_JDK_PREFIX" 2> /dev/null | $SORT -r`
if test "x$ALL_JDKS_FOUND" != x; then
for JDK_TO_TRY in $ALL_JDKS_FOUND ; do
BOOTJDK_DO_CHECK([
BOOT_JDK="${BOOT_JDK_PREFIX}/${JDK_TO_TRY}${BOOT_JDK_SUFFIX}"
if test -d "$BOOT_JDK"; then
BOOT_JDK_FOUND=maybe
AC_MSG_NOTICE([Found potential Boot JDK using well-known locations (in $BOOT_JDK_PREFIX/$JDK_TO_TRY)])
fi
])
done
fi
])
# Call BOOTJDK_FIND_BEST_JDK_IN_DIRECTORY, but use the given
# environmental variable as base for where to look.
# $1 Name of an environmal variable, assumed to point to the Program Files directory.
AC_DEFUN([BOOTJDK_FIND_BEST_JDK_IN_WINDOWS_VIRTUAL_DIRECTORY],
[
if test "x[$]$1" != x; then
VIRTUAL_DIR="[$]$1/Java"
BASIC_WINDOWS_REWRITE_AS_UNIX_PATH(VIRTUAL_DIR)
BOOTJDK_FIND_BEST_JDK_IN_DIRECTORY($VIRTUAL_DIR)
fi
])
# Test: Is there a JDK installed in default, well-known locations?
AC_DEFUN([BOOTJDK_CHECK_WELL_KNOWN_LOCATIONS],
[
if test "x$OPENJDK_TARGET_OS" = xwindows; then
BOOTJDK_DO_CHECK([BOOTJDK_FIND_BEST_JDK_IN_WINDOWS_VIRTUAL_DIRECTORY([ProgramW6432])])
BOOTJDK_DO_CHECK([BOOTJDK_FIND_BEST_JDK_IN_WINDOWS_VIRTUAL_DIRECTORY([PROGRAMW6432])])
BOOTJDK_DO_CHECK([BOOTJDK_FIND_BEST_JDK_IN_WINDOWS_VIRTUAL_DIRECTORY([PROGRAMFILES])])
BOOTJDK_DO_CHECK([BOOTJDK_FIND_BEST_JDK_IN_WINDOWS_VIRTUAL_DIRECTORY([ProgramFiles])])
BOOTJDK_DO_CHECK([BOOTJDK_FIND_BEST_JDK_IN_DIRECTORY([/cygdrive/c/Program Files/Java])])
elif test "x$OPENJDK_TARGET_OS" = xmacosx; then
BOOTJDK_DO_CHECK([BOOTJDK_FIND_BEST_JDK_IN_DIRECTORY([/Library/Java/JavaVirtualMachines],[/Contents/Home])])
BOOTJDK_DO_CHECK([BOOTJDK_FIND_BEST_JDK_IN_DIRECTORY([/System/Library/Java/JavaVirtualMachines],[/Contents/Home])])
elif test "x$OPENJDK_TARGET_OS" = xlinux; then
BOOTJDK_DO_CHECK([BOOTJDK_FIND_BEST_JDK_IN_DIRECTORY([/usr/lib/jvm])])
fi
])
# Check that a command-line tool in the Boot JDK is correct
# $1 = name of variable to assign
# $2 = name of binary
AC_DEFUN([BOOTJDK_CHECK_TOOL_IN_BOOTJDK],
[
AC_MSG_CHECKING([for $2 in Boot JDK])
$1=$BOOT_JDK/bin/$2
if test ! -x [$]$1; then
AC_MSG_RESULT(not found)
AC_MSG_NOTICE([Your Boot JDK seems broken. This might be fixed by explicitely setting --with-boot-jdk])
AC_MSG_ERROR([Could not find $2 in the Boot JDK])
fi
AC_MSG_RESULT(ok)
])
###############################################################################
@@ -51,204 +221,74 @@ AC_DEFUN_ONCE([BOOTJDK_SETUP_BOOT_JDK],
BOOT_JDK_FOUND=no
AC_ARG_WITH(boot-jdk, [AS_HELP_STRING([--with-boot-jdk],
[path to Boot JDK (used to bootstrap build) @<:@probed@:>@])])
if test "x$with_boot_jdk" != x; then
BOOT_JDK=$with_boot_jdk
BOOT_JDK_FOUND=yes
# We look for the Boot JDK through various means, going from more certain to
# more of a guess-work. After each test, BOOT_JDK_FOUND is set to "yes" if
# we detected something (if so, the path to the jdk is in BOOT_JDK). But we
# must check if this is indeed valid; otherwise we'll continue looking.
# Test: Is bootjdk explicitely set by command line arguments?
BOOTJDK_DO_CHECK([BOOTJDK_CHECK_ARGUMENTS])
if test "x$with_boot_jdk" != x && test "x$BOOT_JDK_FOUND" = xno; then
# Having specified an argument which is incorrect will produce an instant failure;
# we should not go on looking
AC_MSG_ERROR([The path given by --with-boot-jdk does not contain a valid Boot JDK])
fi
# Test: Is bootjdk available from builddeps?
BOOTJDK_DO_CHECK([BOOTJDK_CHECK_BUILDDEPS])
# Test: Is $JAVA_HOME set?
BOOTJDK_DO_CHECK([BOOTJDK_CHECK_JAVA_HOME])
# Test: Is there a /usr/libexec/java_home? (Typically on MacOSX)
BOOTJDK_DO_CHECK([BOOTJDK_CHECK_LIBEXEC_JAVA_HOME])
# Test: Is there a java or javac in the PATH, which is a symlink to the JDK?
BOOTJDK_DO_CHECK([BOOTJDK_CHECK_JAVA_IN_PATH_IS_SYMLINK])
# Test: Is there a JDK installed in default, well-known locations?
BOOTJDK_DO_CHECK([BOOTJDK_CHECK_WELL_KNOWN_LOCATIONS])
# If we haven't found anything yet, we've truly lost. Give up.
if test "x$BOOT_JDK_FOUND" = xno; then
BDEPS_CHECK_MODULE(BOOT_JDK, boot-jdk, xxx, [BOOT_JDK_FOUND=yes], [BOOT_JDK_FOUND=no])
HELP_MSG_MISSING_DEPENDENCY([openjdk])
AC_MSG_NOTICE([Could not find a valid Boot JDK. $HELP_MSG])
AC_MSG_NOTICE([This might be fixed by explicitely setting --with-boot-jdk])
AC_MSG_ERROR([Cannot continue])
fi
if test "x$BOOT_JDK_FOUND" = xno; then
if test "x$JAVA_HOME" != x; then
if test ! -d "$JAVA_HOME"; then
AC_MSG_NOTICE([Your JAVA_HOME points to a non-existing directory!])
BOOTJDK_MISSING_ERROR
fi
# Aha, the user has set a JAVA_HOME
# let us use that as the Boot JDK.
BOOT_JDK="$JAVA_HOME"
BOOT_JDK_FOUND=yes
# To be on the safe side, lets check that it is a JDK.
if test -x "$BOOT_JDK/bin/javac" && test -x "$BOOT_JDK/bin/java"; then
JAVAC="$BOOT_JDK/bin/javac"
JAVA="$BOOT_JDK/bin/java"
BOOT_JDK_FOUND=yes
else
AC_MSG_NOTICE([Your JAVA_HOME points to a JRE! The build needs a JDK! Please point JAVA_HOME to a JDK. JAVA_HOME=[$]JAVA_HOME])
BOOTJDK_MISSING_ERROR
fi
fi
fi
if test "x$BOOT_JDK_FOUND" = xno; then
AC_PATH_PROG(JAVAC_CHECK, javac)
AC_PATH_PROG(JAVA_CHECK, java)
BINARY="$JAVAC_CHECK"
if test "x$JAVAC_CHECK" = x; then
BINARY="$JAVA_CHECK"
fi
if test "x$BINARY" != x; then
# So there is a java(c) binary, it might be part of a JDK.
# Lets find the JDK/JRE directory by following symbolic links.
# Linux/GNU systems often have links from /usr/bin/java to
# /etc/alternatives/java to the real JDK binary.
WHICHCMD_SPACESAFE(BINARY,[path to javac])
REMOVE_SYMBOLIC_LINKS(BINARY)
BOOT_JDK=`dirname $BINARY`
BOOT_JDK=`cd $BOOT_JDK/..; pwd`
if test -x $BOOT_JDK/bin/javac && test -x $BOOT_JDK/bin/java; then
JAVAC=$BOOT_JDK/bin/javac
JAVA=$BOOT_JDK/bin/java
BOOT_JDK_FOUND=yes
fi
fi
fi
if test "x$BOOT_JDK_FOUND" = xno; then
# Try the MacOSX way.
if test -x /usr/libexec/java_home; then
BOOT_JDK=`/usr/libexec/java_home`
if test -x $BOOT_JDK/bin/javac && test -x $BOOT_JDK/bin/java; then
JAVAC=$BOOT_JDK/bin/javac
JAVA=$BOOT_JDK/bin/java
BOOT_JDK_FOUND=yes
fi
fi
fi
if test "x$BOOT_JDK_FOUND" = xno; then
AC_PATH_PROG(JAVA_CHECK, java)
if test "x$JAVA_CHECK" != x; then
# There is a java in the path. But apparently we have not found a javac
# in the path, since that would have been tested earlier.
if test "x$OPENJDK_TARGET_OS" = xwindows; then
# Now if this is a windows platform. The default installation of a JDK
# actually puts the JRE in the path and keeps the JDK out of the path!
# Go look in the default installation location.
BOOT_JDK=/cygdrive/c/Program\ Files/Java/`ls /cygdrive/c/Program\ Files/Java | grep jdk | sort -r | head --lines 1`
if test -d "$BOOT_JDK"; then
BOOT_JDK_FOUND=yes
fi
fi
if test "x$BOOT_JDK_FOUND" = xno; then
HELP_MSG_MISSING_DEPENDENCY([openjdk])
AC_MSG_NOTICE([Found a JRE, not not a JDK! Please remove the JRE from your path and put a JDK there instead. $HELP_MSG])
BOOTJDK_MISSING_ERROR
fi
else
HELP_MSG_MISSING_DEPENDENCY([openjdk])
AC_MSG_NOTICE([Could not find a JDK. $HELP_MSG])
BOOTJDK_MISSING_ERROR
fi
fi
BOOTJDK_WIN_FIX_PATH(BOOT_JDK)
# Now see if we can find the rt.jar, or its nearest equivalent.
# Setup proper paths for what we found
BOOT_RTJAR="$BOOT_JDK/jre/lib/rt.jar"
SPACESAFE(BOOT_RTJAR,[the path to the Boot JDK rt.jar (or nearest equivalent)])
BOOT_TOOLSJAR="$BOOT_JDK/lib/tools.jar"
SPACESAFE(BOOT_TOOLSJAR,[the path to the Boot JDK tools.jar (or nearest equivalent)])
if test ! -f $BOOT_RTJAR; then
if test ! -f "$BOOT_RTJAR"; then
# On MacOSX it is called classes.jar
BOOT_RTJAR=$BOOT_JDK/../Classes/classes.jar
if test ! -f $BOOT_RTJAR; then
AC_MSG_NOTICE([Cannot find the rt.jar or its equivalent!])
AC_MSG_NOTICE([This typically means that configure failed to automatically find a suitable Boot JDK])
BOOTJDK_MISSING_ERROR
BOOT_RTJAR="$BOOT_JDK/../Classes/classes.jar"
if test -f "$BOOT_RTJAR"; then
# Remove the ..
BOOT_RTJAR="`cd ${BOOT_RTJAR%/*} && pwd`/${BOOT_RTJAR##*/}"
fi
# Remove the ..
BOOT_RTJAR="`cd ${BOOT_RTJAR%/*} && pwd`/${BOOT_RTJAR##*/}"
# The tools.jar is part of classes.jar
BOOT_TOOLSJAR="$BOOT_RTJAR"
fi
AC_SUBST(BOOT_JDK)
BOOT_TOOLSJAR="$BOOT_JDK/lib/tools.jar"
BOOT_JDK="$BOOT_JDK"
AC_SUBST(BOOT_RTJAR)
AC_SUBST(BOOT_TOOLSJAR)
AC_MSG_CHECKING([for Boot JDK])
AC_MSG_RESULT([$BOOT_JDK])
AC_MSG_CHECKING([for Boot rt.jar])
AC_MSG_RESULT([$BOOT_RTJAR])
AC_MSG_CHECKING([for Boot tools.jar])
AC_MSG_RESULT([$BOOT_TOOLSJAR])
AC_SUBST(BOOT_JDK)
# Use the java tool from the Boot JDK.
AC_MSG_CHECKING([for java in Boot JDK])
JAVA=$BOOT_JDK/bin/java
if test ! -x $JAVA; then
AC_MSG_NOTICE([Could not find a working java])
BOOTJDK_MISSING_ERROR
fi
BOOT_JDK_VERSION=`$JAVA -version 2>&1 | head -n 1`
AC_MSG_RESULT([yes $BOOT_JDK_VERSION])
AC_SUBST(JAVA)
# Setup tools from the Boot JDK.
BOOTJDK_CHECK_TOOL_IN_BOOTJDK(JAVA,java)
BOOTJDK_CHECK_TOOL_IN_BOOTJDK(JAVAC,javac)
BOOTJDK_CHECK_TOOL_IN_BOOTJDK(JAVAH,javah)
BOOTJDK_CHECK_TOOL_IN_BOOTJDK(JAVAP,javap)
BOOTJDK_CHECK_TOOL_IN_BOOTJDK(JAR,jar)
BOOTJDK_CHECK_TOOL_IN_BOOTJDK(RMIC,rmic)
BOOTJDK_CHECK_TOOL_IN_BOOTJDK(NATIVE2ASCII,native2ascii)
# Extra M4 quote needed to protect [] in grep expression.
[FOUND_VERSION_78=`echo $BOOT_JDK_VERSION | grep '\"1\.[78]\.'`]
if test "x$FOUND_VERSION_78" = x; then
HELP_MSG_MISSING_DEPENDENCY([openjdk])
AC_MSG_NOTICE([Your boot-jdk must be version 7 or 8. $HELP_MSG])
BOOTJDK_MISSING_ERROR
fi
# Finally, set some other options...
# When compiling code to be executed by the Boot JDK, force jdk7 compatibility.
BOOT_JDK_SOURCETARGET="-source 7 -target 7"
AC_SUBST(BOOT_JDK_SOURCETARGET)
# Use the javac tool from the Boot JDK.
AC_MSG_CHECKING([for javac in Boot JDK])
JAVAC=$BOOT_JDK/bin/javac
if test ! -x $JAVAC; then
AC_MSG_ERROR([Could not find a working javac])
fi
AC_MSG_RESULT(yes)
AC_SUBST(JAVAC)
AC_SUBST(JAVAC_FLAGS)
# Use the javah tool from the Boot JDK.
AC_MSG_CHECKING([for javah in Boot JDK])
JAVAH=$BOOT_JDK/bin/javah
if test ! -x $JAVAH; then
AC_MSG_NOTICE([Could not find a working javah])
BOOTJDK_MISSING_ERROR
fi
AC_MSG_RESULT(yes)
AC_SUBST(JAVAH)
# Use the jar tool from the Boot JDK.
AC_MSG_CHECKING([for jar in Boot JDK])
JAR=$BOOT_JDK/bin/jar
if test ! -x $JAR; then
AC_MSG_NOTICE([Could not find a working jar])
BOOTJDK_MISSING_ERROR
fi
AC_SUBST(JAR)
AC_MSG_RESULT(yes)
# Use the rmic tool from the Boot JDK.
AC_MSG_CHECKING([for rmic in Boot JDK])
RMIC=$BOOT_JDK/bin/rmic
if test ! -x $RMIC; then
AC_MSG_NOTICE([Could not find a working rmic])
BOOTJDK_MISSING_ERROR
fi
AC_SUBST(RMIC)
AC_MSG_RESULT(yes)
# Use the native2ascii tool from the Boot JDK.
AC_MSG_CHECKING([for native2ascii in Boot JDK])
NATIVE2ASCII=$BOOT_JDK/bin/native2ascii
if test ! -x $NATIVE2ASCII; then
AC_MSG_NOTICE([Could not find a working native2ascii])
BOOTJDK_MISSING_ERROR
fi
AC_MSG_RESULT(yes)
AC_SUBST(NATIVE2ASCII)
])
AC_DEFUN_ONCE([BOOTJDK_SETUP_BOOT_JDK_ARGUMENTS],

View File

@@ -0,0 +1,43 @@
#
# 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. Oracle designates this
# particular file as subject to the "Classpath" exception as provided
# by Oracle in the LICENSE file that accompanied this code.
#
# 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.
#
# Support for building boot cycle builds
# First include the real base spec.gmk file
include @SPEC@
# Check that the user did not try to specify a different java to use for compiling.
ifneq ($(firstword $(SJAVAC_SERVER_JAVA)),$(firstword $(JAVA)))
$(error Bootcycle builds are not possible if --with-sjavac-server-java is specified)
endif
# Override specific values to do a boot cycle build
# The bootcycle build has a different output directory
BUILD_OUTPUT:=@BUILD_OUTPUT@/bootcycle-build
# Use a different Boot JDK
BOOT_JDK:=@BUILD_OUTPUT@/images/j2sdk-image
BOOT_RTJAR:=@BUILD_OUTPUT@/images/j2sdk-image/jre/lib/rt.jar

View File

@@ -1,4 +1,29 @@
#! /bin/sh
#
# Copyright (c) 2012, 2013, 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. Oracle designates this
# particular file as subject to the "Classpath" exception as provided
# by Oracle in the LICENSE file that accompanied this code.
#
# 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.
#
# Attempt to guess a canonical system name.
# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008

View File

@@ -22,17 +22,42 @@
# questions.
#
# This is a wrapper for the config.guess from autoconf. The latter does not properly
# detect amd64 systems, since that require isainfo instead of uname. Instead of patching
# the autoconf system (which might easily get lost in a future update), we wrap it and
# fix the broken property, if needed.
# This is a wrapper for the config.guess from autoconf. The latter does not
# properly detect 64 bit systems on all platforms. Instead of patching the
# autoconf system (which might easily get lost in a future update), we wrap it
# and fix the broken property, if needed.
DIR=`dirname $0`
OUT=`. $DIR/autoconf-config.guess`
# Test and fix solaris on x86_64
echo $OUT | grep i386-pc-solaris > /dev/null 2> /dev/null
if test $? = 0; then
# isainfo -n returns either i386 or amd64 on Intel systems
# isainfo -n returns either i386 or amd64
REAL_CPU=`isainfo -n`
OUT=$REAL_CPU`echo $OUT | sed -e 's/[^-]*//'`
fi
# Test and fix solaris on sparcv9
echo $OUT | grep sparc-sun-solaris > /dev/null 2> /dev/null
if test $? = 0; then
# isainfo -n returns either sparc or sparcv9
REAL_CPU=`isainfo -n`
OUT=$REAL_CPU`echo $OUT | sed -e 's/[^-]*//'`
fi
# Test and fix cygwin on x86_64
echo $OUT | grep 86-pc-cygwin > /dev/null 2> /dev/null
if test $? != 0; then
echo $OUT | grep 86-pc-mingw > /dev/null 2> /dev/null
fi
if test $? = 0; then
case `echo $PROCESSOR_IDENTIFIER | cut -f1 -d' '` in
intel64|Intel64|INTEL64|em64t|EM64T|amd64|AMD64|8664|x86_64)
REAL_CPU=x86_64
OUT=$REAL_CPU`echo $OUT | sed -e 's/[^-]*//'`
;;
esac
fi
echo $OUT

View File

@@ -1,4 +1,30 @@
#! /bin/sh
#
# Copyright (c) 2012, 2013, 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. Oracle designates this
# particular file as subject to the "Classpath" exception as provided
# by Oracle in the LICENSE file that accompanied this code.
#
# 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.
#
# Configuration validation subroutine script.
# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008

View File

@@ -1,4 +1,30 @@
# pkg.m4 - Macros to locate and utilise pkg-config. -*- Autoconf -*-
#
# Copyright (c) 2012, 2013, 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. Oracle designates this
# particular file as subject to the "Classpath" exception as provided
# by Oracle in the LICENSE file that accompanied this code.
#
# 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.
#
#
# Copyright © 2004 Scott James Remnant <scott@netsplit.com>.
#

View File

@@ -30,25 +30,21 @@ AC_DEFUN([BPERF_CHECK_CORES],
FOUND_CORES=no
if test -f /proc/cpuinfo; then
# Looks like a Linux system
# Looks like a Linux (or cygwin) system
NUM_CORES=`cat /proc/cpuinfo | grep -c processor`
FOUND_CORES=yes
fi
if test -x /usr/sbin/psrinfo; then
elif test -x /usr/sbin/psrinfo; then
# Looks like a Solaris system
NUM_CORES=`LC_MESSAGES=C /usr/sbin/psrinfo -v | grep -c on-line`
FOUND_CORES=yes
fi
if test -x /usr/sbin/system_profiler; then
elif test -x /usr/sbin/system_profiler; then
# Looks like a MacOSX system
NUM_CORES=`/usr/sbin/system_profiler -detailLevel full SPHardwareDataType | grep 'Cores' | awk '{print [$]5}'`
FOUND_CORES=yes
fi
if test "x$build_os" = xwindows; then
NUM_CORES=4
elif test -n "$NUMBER_OF_PROCESSORS"; then
# On windows, look in the env
NUM_CORES=$NUMBER_OF_PROCESSORS
FOUND_CORES=yes
fi
# For c/c++ code we run twice as many concurrent build
@@ -58,7 +54,8 @@ AC_DEFUN([BPERF_CHECK_CORES],
if test "x$FOUND_CORES" = xyes; then
AC_MSG_RESULT([$NUM_CORES])
else
AC_MSG_RESULT([could not detect number of cores, defaulting to 1!])
AC_MSG_RESULT([could not detect number of cores, defaulting to 1])
AC_MSG_WARN([This will disable all parallelism from build!])
fi
])
@@ -66,39 +63,36 @@ AC_DEFUN([BPERF_CHECK_CORES],
AC_DEFUN([BPERF_CHECK_MEMORY_SIZE],
[
AC_MSG_CHECKING([for memory size])
# Default to 1024MB
# Default to 1024 MB
MEMORY_SIZE=1024
FOUND_MEM=no
if test -f /proc/cpuinfo; then
# Looks like a Linux system
if test -f /proc/meminfo; then
# Looks like a Linux (or cygwin) system
MEMORY_SIZE=`cat /proc/meminfo | grep MemTotal | awk '{print [$]2}'`
MEMORY_SIZE=`expr $MEMORY_SIZE / 1024`
FOUND_MEM=yes
fi
if test -x /usr/sbin/prtconf; then
elif test -x /usr/sbin/prtconf; then
# Looks like a Solaris system
MEMORY_SIZE=`/usr/sbin/prtconf | grep "Memory size" | awk '{ print [$]3 }'`
FOUND_MEM=yes
fi
if test -x /usr/sbin/system_profiler; then
elif test -x /usr/sbin/system_profiler; then
# Looks like a MacOSX system
MEMORY_SIZE=`/usr/sbin/system_profiler -detailLevel full SPHardwareDataType | grep 'Memory' | awk '{print [$]2}'`
MEMORY_SIZE=`expr $MEMORY_SIZE \* 1024`
FOUND_MEM=yes
fi
if test "x$build_os" = xwindows; then
MEMORY_SIZE=`systeminfo | grep 'Total Physical Memory:' | awk '{ print [$]4 }' | sed 's/,//'`
elif test "x$OPENJDK_BUILD_OS" = xwindows; then
# Windows, but without cygwin
MEMORY_SIZE=`wmic computersystem get totalphysicalmemory -value | grep = | cut -d "=" -f 2-`
MEMORY_SIZE=`expr $MEMORY_SIZE / 1024 / 1024`
FOUND_MEM=yes
fi
if test "x$FOUND_MEM" = xyes; then
AC_MSG_RESULT([$MEMORY_SIZE MB])
else
AC_MSG_RESULT([could not detect memory size defaulting to 1024MB!])
AC_MSG_RESULT([could not detect memory size, defaulting to 1024 MB])
AC_MSG_WARN([This might seriously impact build performance!])
fi
])
@@ -136,7 +130,7 @@ AC_DEFUN([BPERF_SETUP_CCACHE],
[
AC_ARG_ENABLE([ccache],
[AS_HELP_STRING([--disable-ccache],
[use ccache to speed up recompilations @<:@enabled@:>@])],
[disable using ccache to speed up recompilations @<:@enabled@:>@])],
[ENABLE_CCACHE=${enable_ccache}], [ENABLE_CCACHE=yes])
if test "x$ENABLE_CCACHE" = xyes; then
AC_PATH_PROG(CCACHE, ccache)
@@ -209,8 +203,8 @@ AC_DEFUN_ONCE([BPERF_SETUP_PRECOMPILED_HEADERS],
# Can the C/C++ compiler use precompiled headers?
#
AC_ARG_ENABLE([precompiled-headers], [AS_HELP_STRING([--disable-precompiled-headers],
[use precompiled headers when compiling C++ @<:@enabled@:>@])],
[ENABLE_PRECOMPH=${enable_precompiled-headers}], [ENABLE_PRECOMPH=yes])
[disable using precompiled headers when compiling C++ @<:@enabled@:>@])],
[ENABLE_PRECOMPH=${enable_precompiled_headers}], [ENABLE_PRECOMPH=yes])
USE_PRECOMPILED_HEADER=1
if test "x$ENABLE_PRECOMPH" = xno; then
@@ -220,17 +214,16 @@ fi
if test "x$ENABLE_PRECOMPH" = xyes; then
# Check that the compiler actually supports precomp headers.
if test "x$GCC" = xyes; then
AC_MSG_CHECKING([that precompiled headers work])
AC_MSG_CHECKING([that precompiled headers work])
echo "int alfa();" > conftest.h
$CXX -x c++-header conftest.h -o conftest.hpp.gch
$CXX -x c++-header conftest.h -o conftest.hpp.gch 2>&AS_MESSAGE_LOG_FD >&AS_MESSAGE_LOG_FD
if test ! -f conftest.hpp.gch; then
echo Precompiled header is not working!
USE_PRECOMPILED_HEADER=0
AC_MSG_RESULT([no])
else
AC_MSG_RESULT([yes])
fi
rm -f conftest.h
rm -f conftest.h conftest.hpp.gch
fi
fi
@@ -240,46 +233,29 @@ AC_SUBST(USE_PRECOMPILED_HEADER)
AC_DEFUN_ONCE([BPERF_SETUP_SMART_JAVAC],
[
AC_ARG_WITH(server-java, [AS_HELP_STRING([--with-server-java],
[use this java binary for running the javac background server and other long running java tasks in the build process,
e.g. ---with-server-java="/opt/jrockit/bin/java -server"])])
AC_ARG_WITH(sjavac-server-java, [AS_HELP_STRING([--with-sjavac-server-java],
[use this java binary for running the sjavac background server @<:@Boot JDK java@:>@])])
if test "x$with_server_java" != x; then
SERVER_JAVA="$with_server_java"
FOUND_VERSION=`$SERVER_JAVA -version 2>&1 | grep " version \""`
if test "x$with_sjavac_server_java" != x; then
SJAVAC_SERVER_JAVA="$with_sjavac_server_java"
FOUND_VERSION=`$SJAVAC_SERVER_JAVA -version 2>&1 | grep " version \""`
if test "x$FOUND_VERSION" = x; then
AC_MSG_ERROR([Could not execute server java: $SERVER_JAVA])
AC_MSG_ERROR([Could not execute server java: $SJAVAC_SERVER_JAVA])
fi
else
SERVER_JAVA=""
SJAVAC_SERVER_JAVA=""
# Hotspot specific options.
ADD_JVM_ARG_IF_OK([-XX:+UseParallelOldGC],SERVER_JAVA,[$JAVA])
ADD_JVM_ARG_IF_OK([-verbosegc],SERVER_JAVA,[$JAVA])
ADD_JVM_ARG_IF_OK([-verbosegc],SJAVAC_SERVER_JAVA,[$JAVA])
# JRockit specific options.
ADD_JVM_ARG_IF_OK([-Xverbose:gc],SERVER_JAVA,[$JAVA])
SERVER_JAVA="$JAVA $SERVER_JAVA"
ADD_JVM_ARG_IF_OK([-Xverbose:gc],SJAVAC_SERVER_JAVA,[$JAVA])
SJAVAC_SERVER_JAVA="$JAVA $SJAVAC_SERVER_JAVA"
fi
AC_SUBST(SERVER_JAVA)
AC_SUBST(SJAVAC_SERVER_JAVA)
AC_MSG_CHECKING([whether to use shared server for javac])
AC_ARG_ENABLE([javac-server], [AS_HELP_STRING([--enable-javac-server],
[enable the shared javac server during the build process @<:@disabled@:>@])],
[ENABLE_JAVAC_SERVER="${enableval}"], [ENABLE_JAVAC_SERVER='no'])
AC_MSG_RESULT([$ENABLE_JAVAC_SERVER])
if test "x$ENABLE_JAVAC_SERVER" = xyes; then
JAVAC_USE_REMOTE=true
JAVAC_SERVERS="$OUTPUT_ROOT/javacservers"
else
JAVAC_USE_REMOTE=false
JAVAC_SERVERS=
fi
AC_SUBST(JAVAC_USE_REMOTE)
AC_SUBST(JAVAC_SERVERS)
AC_ARG_WITH(javac-server-cores, [AS_HELP_STRING([--with-javac-server-cores],
[use at most this number of concurrent threads on the javac server @<:@probed@:>@])])
if test "x$with_javac_server_cores" != x; then
JAVAC_SERVER_CORES="$with_javac_server_cores"
AC_ARG_WITH(sjavac-server-cores, [AS_HELP_STRING([--with-sjavac-server-cores],
[use at most this number of concurrent threads on the sjavac server @<:@probed@:>@])])
if test "x$with_sjavac_server_cores" != x; then
SJAVAC_SERVER_CORES="$with_sjavac_server_cores"
else
if test "$NUM_CORES" -gt 16; then
# We set this arbitrary limit because we want to limit the heap
@@ -287,86 +263,49 @@ else
# In the future we will make the javac compilers in the server
# share more and more state, thus enabling us to use more and
# more concurrent threads in the server.
JAVAC_SERVER_CORES="16"
SJAVAC_SERVER_CORES="16"
else
JAVAC_SERVER_CORES="$NUM_CORES"
SJAVAC_SERVER_CORES="$NUM_CORES"
fi
if test "$MEMORY_SIZE" -gt "17000"; then
MAX_HEAP_MEM=10000
ADD_JVM_ARG_IF_OK([-d64],SERVER_JAVA,[$SERVER_JAVA])
ADD_JVM_ARG_IF_OK([-Xms10G -Xmx10G],SERVER_JAVA,[$SERVER_JAVA])
ADD_JVM_ARG_IF_OK([-Xmn2G],SERVER_JAVA,[$SERVER_JAVA])
ADD_JVM_ARG_IF_OK([-d64],SJAVAC_SERVER_JAVA,[$SJAVAC_SERVER_JAVA])
ADD_JVM_ARG_IF_OK([-Xms10G -Xmx10G],SJAVAC_SERVER_JAVA,[$SJAVAC_SERVER_JAVA])
elif test "$MEMORY_SIZE" -gt "10000"; then
MAX_HEAP_MEM=6000
ADD_JVM_ARG_IF_OK([-d64],SERVER_JAVA,[$SERVER_JAVA])
ADD_JVM_ARG_IF_OK([-Xms6G -Xmx6G],SERVER_JAVA,[$SERVER_JAVA])
ADD_JVM_ARG_IF_OK([-Xmn1G],SERVER_JAVA,[$SERVER_JAVA])
ADD_JVM_ARG_IF_OK([-d64],SJAVAC_SERVER_JAVA,[$SJAVAC_SERVER_JAVA])
ADD_JVM_ARG_IF_OK([-Xms6G -Xmx6G],SJAVAC_SERVER_JAVA,[$SJAVAC_SERVER_JAVA])
elif test "$MEMORY_SIZE" -gt "5000"; then
MAX_HEAP_MEM=3000
ADD_JVM_ARG_IF_OK([-d64],SERVER_JAVA,[$SERVER_JAVA])
ADD_JVM_ARG_IF_OK([-Xms1G -Xmx3G],SERVER_JAVA,[$SERVER_JAVA])
ADD_JVM_ARG_IF_OK([-Xmn256M],SERVER_JAVA,[$SERVER_JAVA])
ADD_JVM_ARG_IF_OK([-d64],SJAVAC_SERVER_JAVA,[$SJAVAC_SERVER_JAVA])
ADD_JVM_ARG_IF_OK([-Xms1G -Xmx3G],SJAVAC_SERVER_JAVA,[$SJAVAC_SERVER_JAVA])
elif test "$MEMORY_SIZE" -gt "3800"; then
MAX_HEAP_MEM=2500
ADD_JVM_ARG_IF_OK([-Xms1G -Xmx2500M],SERVER_JAVA,[$SERVER_JAVA])
ADD_JVM_ARG_IF_OK([-Xmn256M],SERVER_JAVA,[$SERVER_JAVA])
ADD_JVM_ARG_IF_OK([-Xms1G -Xmx2500M],SJAVAC_SERVER_JAVA,[$SJAVAC_SERVER_JAVA])
elif test "$MEMORY_SIZE" -gt "1900"; then
MAX_HEAP_MEM=1200
ADD_JVM_ARG_IF_OK([-Xms700M -Xmx1200M],SERVER_JAVA,[$SERVER_JAVA])
ADD_JVM_ARG_IF_OK([-Xmn256M],SERVER_JAVA,[$SERVER_JAVA])
ADD_JVM_ARG_IF_OK([-Xms700M -Xmx1400M],SJAVAC_SERVER_JAVA,[$SJAVAC_SERVER_JAVA])
elif test "$MEMORY_SIZE" -gt "1000"; then
MAX_HEAP_MEM=900
ADD_JVM_ARG_IF_OK([-Xms400M -Xmx900M],SERVER_JAVA,[$SERVER_JAVA])
ADD_JVM_ARG_IF_OK([-Xmn128M],SERVER_JAVA,[$SERVER_JAVA])
ADD_JVM_ARG_IF_OK([-Xms400M -Xmx1100M],SJAVAC_SERVER_JAVA,[$SJAVAC_SERVER_JAVA])
else
MAX_HEAP_MEM=512
ADD_JVM_ARG_IF_OK([-Xms256M -Xmx512M],SERVER_JAVA,[$SERVER_JAVA])
ADD_JVM_ARG_IF_OK([-Xmn128M],SERVER_JAVA,[$SERVER_JAVA])
ADD_JVM_ARG_IF_OK([-Xms256M -Xmx512M],SJAVAC_SERVER_JAVA,[$SJAVAC_SERVER_JAVA])
fi
ADD_JVM_ARG_IF_OK([-XX:PermSize=32m],SJAVAC_SERVER_JAVA,[$SJAVAC_SERVER_JAVA])
ADD_JVM_ARG_IF_OK([-XX:MaxPermSize=160m],SJAVAC_SERVER_JAVA,[$SJAVAC_SERVER_JAVA])
ADD_JVM_ARG_IF_OK([-XX:ThreadStackSize=$STACK_SIZE],SJAVAC_SERVER_JAVA,[$SJAVAC_SERVER_JAVA])
MAX_COMPILERS_IN_HEAP=`expr $MAX_HEAP_MEM / 501`
if test "$JAVAC_SERVER_CORES" -gt "$MAX_COMPILERS_IN_HEAP"; then
if test "$SJAVAC_SERVER_CORES" -gt "$MAX_COMPILERS_IN_HEAP"; then
AC_MSG_CHECKING([if number of server cores must be reduced])
JAVAC_SERVER_CORES="$MAX_COMPILERS_IN_HEAP"
AC_MSG_RESULT([yes, to $JAVAC_SERVER_CORES with max heap size $MAX_HEAP_MEM MB])
SJAVAC_SERVER_CORES="$MAX_COMPILERS_IN_HEAP"
AC_MSG_RESULT([yes, to $SJAVAC_SERVER_CORES with max heap size $MAX_HEAP_MEM MB])
fi
fi
AC_SUBST(JAVAC_SERVER_CORES)
AC_MSG_CHECKING([whether to track dependencies between Java packages])
AC_ARG_ENABLE([javac-deps], [AS_HELP_STRING([--enable-javac-deps],
[enable the dependency tracking between Java packages @<:@disabled@:>@])],
[ENABLE_JAVAC_DEPS="${enableval}"], [ENABLE_JAVAC_DEPS='no'])
AC_MSG_RESULT([$ENABLE_JAVAC_DEPS])
if test "x$ENABLE_JAVAC_DEPS" = xyes; then
JAVAC_USE_DEPS=true
else
JAVAC_USE_DEPS=false
fi
AC_SUBST(JAVAC_USE_DEPS)
AC_MSG_CHECKING([whether to use multiple cores for javac compilation])
AC_ARG_ENABLE([javac-multi-core], [AS_HELP_STRING([--enable-javac-multi-core],
[compile Java packages concurrently @<:@disabled@:>@])],
[ENABLE_JAVAC_MULTICORE="${enableval}"], [ENABLE_JAVAC_MULTICORE='no'])
AC_MSG_RESULT([$ENABLE_JAVAC_MULTICORE])
if test "x$ENABLE_JAVAC_MULTICORE" = xyes; then
JAVAC_USE_MODE=MULTI_CORE_CONCURRENT
else
JAVAC_USE_MODE=SINGLE_THREADED_BATCH
if test "x$ENABLE_JAVAC_DEPS" = xyes; then
AC_MSG_WARN([Dependency tracking is not supported with single threaded batch compiles of Java source roots. Please add --disable-javac-deps to your configure options.])
AC_MSG_WARN([Disabling dependency tracking for you now.])
JAVAC_USE_DEPS=false
fi
if test "x$ENABLE_JAVAC_SERVER" = xyes; then
AC_MSG_WARN([The javac server will not be used since single threaded batch compiles are run within their own JVM. Please add --disable-javac-server to your configure options.])
AC_MSG_WARN([Disabling javac server for you now.])
JAVAC_USE_REMOTE=false
fi
fi
AC_SUBST(JAVAC_USE_MODE)
AC_SUBST(SJAVAC_SERVER_CORES)
AC_MSG_CHECKING([whether to use sjavac])
AC_ARG_ENABLE([sjavac], [AS_HELP_STRING([--enable-sjavac],
@@ -375,4 +314,11 @@ AC_ARG_ENABLE([sjavac], [AS_HELP_STRING([--enable-sjavac],
AC_MSG_RESULT([$ENABLE_SJAVAC])
AC_SUBST(ENABLE_SJAVAC)
if test "x$ENABLE_SJAVAC" = xyes; then
SJAVAC_SERVER_DIR="$OUTPUT_ROOT/javacservers"
else
SJAVAC_SERVER_DIR=
fi
AC_SUBST(SJAVAC_SERVER_DIR)
])

View File

@@ -31,7 +31,7 @@
# Translate a configuration triplet/quadruplet into something
# known by this configuration file.
# If no rewrite was found, then rewritten_target=${OPENJDK_TARGET_SYSTEM}
# If no rewrite was found, then rewritten_target=${OPENJDK_TARGET_AUTOCONF_NAME}
REWRITE_i686_pc_linux_gnu=i686-unknown-linux-gnu
REWRITE_i386_pc_solaris2_10=i686-sun-solaris2_10

View File

@@ -52,19 +52,19 @@ AC_DEFUN_ONCE([BDEPS_SCAN_FOR_BUILDDEPS],
fi
# Create build and target names that use _ instead of "-" and ".".
# This is necessary to use them in variable names.
build_var=`echo ${OPENJDK_BUILD_SYSTEM} | tr '-' '_' | tr '.' '_'`
target_var=`echo ${OPENJDK_TARGET_SYSTEM} | tr '-' '_' | tr '.' '_'`
build_var=`echo ${OPENJDK_BUILD_AUTOCONF_NAME} | tr '-' '_' | tr '.' '_'`
target_var=`echo ${OPENJDK_TARGET_AUTOCONF_NAME} | tr '-' '_' | tr '.' '_'`
# Extract rewrite information for build and target
eval rewritten_build=\${REWRITE_${build_var}}
if test "x$rewritten_build" = x; then
rewritten_build=${OPENJDK_BUILD_SYSTEM}
rewritten_build=${OPENJDK_BUILD_AUTOCONF_NAME}
echo Build stays the same $rewritten_build
else
echo Rewriting build for builddeps into $rewritten_build
fi
eval rewritten_target=\${REWRITE_${target_var}}
if test "x$rewritten_target" = x; then
rewritten_target=${OPENJDK_TARGET_SYSTEM}
rewritten_target=${OPENJDK_TARGET_AUTOCONF_NAME}
echo Target stays the same $rewritten_target
else
echo Rewriting target for builddeps into $rewritten_target
@@ -235,26 +235,13 @@ AC_ARG_WITH(builddeps-conf, [AS_HELP_STRING([--with-builddeps-conf],
[use this configuration file for the builddeps])])
AC_ARG_WITH(builddeps-server, [AS_HELP_STRING([--with-builddeps-server],
[download and use build dependencies from this server url, e.g. --with-builddeps-server=ftp://example.com/dir])])
[download and use build dependencies from this server url])])
AC_ARG_WITH(builddeps-dir, [AS_HELP_STRING([--with-builddeps-dir],
[store downloaded build dependencies here @<:@d/localhome/builddeps@:>@])],
[store downloaded build dependencies here @<:@/localhome/builddeps@:>@])],
[],
[with_builddeps_dir=/localhome/builddeps])
AC_ARG_WITH(builddeps-group, [AS_HELP_STRING([--with-builddeps-group],
[chgrp the downloaded build dependencies to this group])])
AC_ARG_ENABLE([list-builddeps], [AS_HELP_STRING([--enable-list-builddeps],
[list all build dependencies known to the configure script])],
[LIST_BUILDDEPS="${enableval}"], [LIST_BUILDDEPS='no'])
if test "x$LIST_BUILDDEPS" = xyes; then
echo
echo List of build dependencies known to the configure script,
echo that can be used in builddeps.conf files:
cat $AUTOCONF_DIR/*.ac $AUTOCONF_DIR/*.m4 | grep BDEPS_CHECK_MODUL[E]\( | cut -f 2 -d ',' | tr -d ' ' | sort
echo
exit 1
fi
])

View File

@@ -1,28 +0,0 @@
#
# 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.
#
LAUNCHER_NAME=java
PRODUCT_NAME="Java(TM)"
PRODUCT_SUFFIX="SE Runtime Environment"
JDK_RC_PLATFORM_NAME="Platform SE"
COMPANY_NAME="Oracle Corporation"

View File

@@ -0,0 +1,80 @@
#!/bin/bash
#
# Copyright (c) 2012, 2013 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.
#
# This script is processed by configure before it's usable. It is run from
# the root of the build directory.
##########################################################################################
# Substitutions from autoconf
LEGACY_BUILD_DIR=@OPENJDK_TARGET_OS@-@OPENJDK_TARGET_CPU_LEGACY@
OPENJDK_TARGET_OS="@OPENJDK_TARGET_OS@"
OPENJDK_TARGET_CPU="@OPENJDK_TARGET_CPU@"
AWK="@AWK@"
CAT="@CAT@"
CMP="@CMP@"
CP="@CP@"
CUT="@CUT@"
DIFF="@DIFF@"
DUMPBIN="@FIXPATH@ @DUMPBIN@"
EXPR="@EXPR@"
FILE="@FILE@"
FIND="@FIND@"
GREP="@GREP@"
JAVAP="@FIXPATH@ @BOOT_JDK@/bin/javap"
LDD="@LDD@"
MKDIR="@MKDIR@"
NAWK="@NAWK@"
NM="@NM@"
OBJDUMP="@OBJDUMP@"
OTOOL="@OTOOL@"
PRINTF="@PRINTF@"
READELF="@READELF@"
RM="@RM@"
SED="@SED@"
SORT="@SORT@"
STAT="@STAT@"
STRIP="@POST_STRIP_CMD@"
TEE="@TEE@"
UNIQ="@UNIQ@"
UNPACK200="@FIXPATH@ @BOOT_JDK@/bin/unpack200"
UNZIP="@UNZIP@"
SRC_ROOT="@SRC_ROOT@"
if [ "$OPENJDK_TARGET_OS" = "windows" ]; then
PATH="@VS_PATH@"
fi
# Now locate the main script and run it.
REAL_COMPARE_SCRIPT="$SRC_ROOT/common/bin/compare.sh"
if [ ! -e "$REAL_COMPARE_SCRIPT" ]; then
echo "Error: Cannot locate compare script, it should have been in $REAL_COMPARE_SCRIPT"
exit 1
fi
. "$REAL_COMPARE_SCRIPT" "$@"

View File

@@ -1,55 +1,121 @@
#!/bin/sh
#!/bin/bash
#
# 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.
#
if test "x$BASH_VERSION" = x; then
echo This script needs bash to run.
echo It is recommended to use the configure script in the source tree root instead.
exit 1
fi
CONFIGURE_COMMAND_LINE="$@"
conf_script_dir=`dirname $0`
conf_closed_script_dir="$conf_script_dir/../../jdk/make/closed/autoconf"
if [ "$CUSTOM_CONFIG_DIR" = "" ]; then
conf_custom_script_dir="$conf_script_dir/../../jdk/make/closed/autoconf"
else
conf_custom_script_dir=$CUSTOM_CONFIG_DIR
fi
###
### Test that the generated configure is up-to-date
###
# On Solaris /bin/sh doesn't support test -nt but /usr/bin/test does.
TEST=`which test`
print_error_not_up_to_date() {
echo "Error: The configure source files is newer than the generated files."
echo "Please run 'sh autogen.sh' to update the generated files."
run_autogen_or_fail() {
if test "x`which autoconf 2> /dev/null`" = x; then
echo "Cannot locate autoconf, unable to correct situation."
echo "Please install autoconf and run 'bash autogen.sh' to update the generated files."
echo "Error: Cannot continue" 1>&2
exit 1
else
echo "Running autogen.sh to correct the situation"
bash $conf_script_dir/autogen.sh
fi
}
for file in configure.ac *.m4 ; do
if $TEST $file -nt generated-configure.sh; then
print_error_not_up_to_date
exit 1
fi
done
if $TEST -e $conf_closed_script_dir/generated-configure.sh; then
# If closed source configure is available, make sure it is up-to-date as well.
for file in configure.ac *.m4 $conf_closed_script_dir/*.m4; do
if $TEST $file -nt $conf_closed_script_dir/generated-configure.sh; then
print_error_not_up_to_date
exit 1
check_autoconf_timestamps() {
for file in $conf_script_dir/configure.ac $conf_script_dir/*.m4 ; do
if test $file -nt $conf_script_dir/generated-configure.sh; then
echo "Warning: The configure source files is newer than the generated files."
run_autogen_or_fail
fi
done
# Test if open configure is newer than closed configure, if so, closed needs to
# be regenerated.
conf_open_configure_timestamp=`grep DATE_WHEN_GENERATED: $conf_script_dir/generated-configure.sh | cut -d" " -f 3`
conf_closed_configure_timestamp=`grep DATE_WHEN_GENERATED: $conf_closed_script_dir/generated-configure.sh | cut -d" " -f 3`
if $TEST $conf_open_configure_timestamp -gt $conf_closed_configure_timestamp; then
print_error_not_up_to_date
exit 1
if test -e $conf_custom_script_dir/generated-configure.sh; then
# If custom source configure is available, make sure it is up-to-date as well.
for file in $conf_script_dir/configure.ac $conf_script_dir/*.m4 $conf_custom_script_dir/*.m4; do
if test $file -nt $conf_custom_script_dir/generated-configure.sh; then
echo "Warning: The configure source files is newer than the custom generated files."
run_autogen_or_fail
fi
done
fi
}
check_hg_updates() {
if test "x`which hg 2> /dev/null`" != x; then
conf_updated_autoconf_files=`cd $conf_script_dir && hg status -mard 2> /dev/null | grep autoconf`
if test "x$conf_updated_autoconf_files" != x; then
echo "Configure source code has been updated, checking time stamps"
check_autoconf_timestamps
fi
if test -e $conf_custom_script_dir; then
# If custom source configure is available, make sure it is up-to-date as well.
conf_custom_updated_autoconf_files=`cd $conf_custom_script_dir && hg status -mard 2> /dev/null | grep autoconf`
if test "x$conf_custom_updated_autoconf_files" != x; then
echo "Configure custom source code has been updated, checking time stamps"
check_autoconf_timestamps
fi
fi
fi
}
# Check for local changes
check_hg_updates
if test -e $conf_custom_script_dir/generated-configure.sh; then
# Test if open configure is newer than custom configure, if so, custom needs to
# be regenerated. This test is required to ensure consistency with custom source.
conf_open_configure_timestamp=`grep DATE_WHEN_GENERATED= $conf_script_dir/generated-configure.sh | cut -d"=" -f 2`
conf_custom_configure_timestamp=`grep DATE_WHEN_GENERATED= $conf_custom_script_dir/generated-configure.sh | cut -d"=" -f 2`
if test $conf_open_configure_timestamp -gt $conf_custom_configure_timestamp; then
echo "Warning: The generated configure file contains changes not present in the custom generated file."
run_autogen_or_fail
fi
fi
# Autoconf calls the configure script recursively sometimes.
# Don't start logging twice in that case
if test "x$conf_debug_configure" = xtrue; then
conf_debug_configure=recursive
fi
###
### Process command-line arguments
###
conf_processed_arguments=
conf_processed_arguments=()
conf_openjdk_target=
conf_extra_cflags=
conf_extra_cxxflags=
for conf_option
do
@@ -57,14 +123,14 @@ do
--openjdk-target=*)
conf_openjdk_target=`expr "X$conf_option" : '[^=]*=\(.*\)'`
continue ;;
--with-extra-cflags=*)
conf_extra_cflags=`expr "X$conf_option" : '[^=]*=\(.*\)'`
continue ;;
--with-extra-cxxflags=*)
conf_extra_cxxflags=`expr "X$conf_option" : '[^=]*=\(.*\)'`
--debug-configure)
if test "x$conf_debug_configure" != xrecursive; then
conf_debug_configure=true
export conf_debug_configure
fi
continue ;;
*)
conf_processed_arguments="$conf_processed_arguments $conf_option" ;;
conf_processed_arguments=("${conf_processed_arguments[@]}" "$conf_option") ;;
esac
case $conf_option in
@@ -74,11 +140,13 @@ do
conf_legacy_crosscompile="$conf_legacy_crosscompile $conf_option" ;;
-host | --host | --hos | --ho | -host=* | --host=* | --hos=* | --ho=*)
conf_legacy_crosscompile="$conf_legacy_crosscompile $conf_option" ;;
-help | --help | --hel | --he | -h)
conf_print_help=true ;;
esac
done
if $TEST "x$conf_legacy_crosscompile" != "x"; then
if $TEST "x$conf_openjdk_target" != "x"; then
if test "x$conf_legacy_crosscompile" != "x"; then
if test "x$conf_openjdk_target" != "x"; then
echo "Error: Specifying --openjdk-target together with autoconf"
echo "legacy cross-compilation flags is not supported."
echo "You specified: --openjdk-target=$conf_openjdk_target and $conf_legacy_crosscompile."
@@ -91,31 +159,69 @@ if $TEST "x$conf_legacy_crosscompile" != "x"; then
fi
fi
if $TEST "x$conf_openjdk_target" != "x"; then
if test "x$conf_openjdk_target" != "x"; then
conf_build_platform=`sh $conf_script_dir/build-aux/config.guess`
conf_processed_arguments="--build=$conf_build_platform --host=$conf_openjdk_target --target=$conf_openjdk_target $conf_processed_arguments"
conf_processed_arguments=("--build=$conf_build_platform" "--host=$conf_openjdk_target" "--target=$conf_openjdk_target" "${conf_processed_arguments[@]}")
fi
# Make configure exit with error on invalid options as default.
# Can be overridden by --disable-option-checking, since we prepend our argument
# and later options override earlier.
conf_processed_arguments="--enable-option-checking=fatal $conf_processed_arguments"
conf_processed_arguments=("--enable-option-checking=fatal" "${conf_processed_arguments[@]}")
###
### Call the configure script
###
if $TEST -e $conf_closed_script_dir/generated-configure.sh; then
# Closed source configure available; run that instead
. $conf_closed_script_dir/generated-configure.sh $conf_processed_arguments --with-extra-cflags="$conf_extra_cflags" --with-extra-cxxflags="$conf_extra_cxxflags"
if test -e $conf_custom_script_dir/generated-configure.sh; then
# Custom source configure available; run that instead
echo Running custom generated-configure.sh
conf_script_to_run=$conf_custom_script_dir/generated-configure.sh
else
. $conf_script_dir/generated-configure.sh $conf_processed_arguments --with-extra-cflags="$conf_extra_cflags" --with-extra-cxxflags="$conf_extra_cxxflags"
echo Running generated-configure.sh
conf_script_to_run=$conf_script_dir/generated-configure.sh
fi
if test "x$conf_debug_configure" != x; then
# Turn on shell debug output if requested (initial or recursive)
set -x
fi
if test "x$conf_debug_configure" = xtrue; then
# Turn on logging, but don't turn on twice when called recursive
conf_debug_logfile=./debug-configure.log
(exec 3>&1 ; (. $conf_script_to_run "${conf_processed_arguments[@]}" 2>&1 1>&3 ) | tee -a $conf_debug_logfile 1>&2 ; exec 3>&-) | tee -a $conf_debug_logfile
else
( . $conf_script_to_run "${conf_processed_arguments[@]}" )
fi
conf_result_code=$?
###
### Post-processing
###
if test $conf_result_code -eq 0; then
if test "x$conf_print_help" = xtrue; then
cat <<EOT
Additional (non-autoconf) OpenJDK Options:
--openjdk-target=TARGET cross-compile with TARGET as target platform
(i.e. the one you will run the resulting binary on).
Equivalent to --host=TARGET --target=TARGET
--build=<current platform>
--debug-configure Run the configure script with additional debug
logging enabled.
Please be aware that, when cross-compiling, the OpenJDK configure script will
generally use 'target' where autoconf traditionally uses 'host'.
EOT
fi
else
echo configure exiting with result code $conf_result_code
fi
# Move the log file to the output root, if this was successfully created
if $TEST -d "$OUTPUT_ROOT"; then
if test -d "$OUTPUT_ROOT"; then
mv -f config.log "$OUTPUT_ROOT" 2> /dev/null
fi
exit $conf_result_code

View File

@@ -31,16 +31,14 @@
AC_PREREQ([2.61])
AC_INIT(openjdk, jdk8, build-dev@openjdk.java.net)
# Do not change or remove the following line, it is needed for consistency checks:
# DATE_WHEN_GENERATED: @DATE_WHEN_GENERATED@
AC_INIT(OpenJDK, jdk8, build-dev@openjdk.java.net,,http://openjdk.java.net)
AC_CONFIG_AUX_DIR([build-aux])
m4_include([build-aux/pkg.m4])
# Include these first...
m4_include([basics.m4])
m4_include([basics_windows.m4])
m4_include([builddeps.m4])
# ... then the rest
m4_include([boot-jdk.m4])
@@ -51,29 +49,66 @@ m4_include([libraries.m4])
m4_include([platform.m4])
m4_include([source-dirs.m4])
m4_include([toolchain.m4])
m4_include([toolchain_windows.m4])
# This line needs to be here, verbatim, after all includes.
# It is replaced with closed functionality when building
# closed sources.
AC_DEFUN_ONCE([CLOSED_HOOK])
AC_DEFUN_ONCE([CUSTOM_EARLY_HOOK])
AC_DEFUN_ONCE([CUSTOM_LATE_HOOK])
# This line needs to be here, verbatim, after all includes and the dummy hook
# definitions. It is replaced with custom functionality when building
# custom sources.
#CUSTOM_AUTOCONF_INCLUDE
# Do not change or remove the following line, it is needed for consistency checks:
DATE_WHEN_GENERATED=@DATE_WHEN_GENERATED@
###############################################################################
#
# Initialization
# Initialization / Boot-strapping
#
# The bootstrapping process needs to solve the "chicken or the egg" problem,
# thus it jumps back and forth, each time gaining something needed later on.
#
###############################################################################
# Basic initialization that must happen first of all
BASIC_INIT
BASIC_SETUP_FUNDAMENTAL_TOOLS
# Now we can determine OpenJDK build and target platforms. This is required to
# have early on.
PLATFORM_SETUP_OPENJDK_BUILD_AND_TARGET
# Continue setting up basic stuff. Most remaining code require fundamental tools.
BASIC_SETUP_PATHS
BASIC_SETUP_LOGGING
# Check if it's a pure open build or if custom sources are to be used.
JDKOPT_SETUP_OPEN_OR_CUSTOM
# These are needed to be able to create a configuration name (and thus the output directory)
JDKOPT_SETUP_JDK_VARIANT
JDKOPT_SETUP_JVM_VARIANTS
JDKOPT_SETUP_DEBUG_LEVEL
# With basic setup done, call the custom early hook.
CUSTOM_EARLY_HOOK
# To properly create a configuration name, we need to have the OpenJDK target
# and options (variants and debug level) parsed.
BASIC_SETUP_OUTPUT_DIR
# Must be done before we can call HELP_MSG_MISSING_DEPENDENCY.
HELP_SETUP_DEPENDENCY_HELP
# Setup simple tools, that do not need have cross compilation support.
# Without these, we can't properly run the rest of the configure script.
BASIC_SETUP_TOOLS
# Setup tools that requires more complex handling, or that is not needed by the configure script.
BASIC_SETUP_COMPLEX_TOOLS
# Check if pkg-config is available.
PKG_PROG_PKG_CONFIG
# After basic tools have been setup, we can check build os specific details.
PLATFORM_SETUP_OPENJDK_BUILD_OS_VERSION
# Setup builddeps, for automatic downloading of tools we need.
# This is needed before we can call BDEPS_CHECK_MODULE, which is done in
@@ -81,22 +116,6 @@ BASIC_SETUP_TOOLS
BDEPS_CONFIGURE_BUILDDEPS
BDEPS_SCAN_FOR_BUILDDEPS
# Check if pkg-config is available.
PKG_PROG_PKG_CONFIG
###############################################################################
#
# Determine OpenJDK build and target platforms.
#
###############################################################################
PLATFORM_SETUP_OPENJDK_BUILD_AND_TARGET
PLATFORM_SETUP_OPENJDK_BUILD_OS_VERSION
# With knowledge of the build platform, setup more basic things.
BASIC_SETUP_PATH_SEP
BASIC_SETUP_SEARCHPATH
###############################################################################
#
# Determine OpenJDK variants, options and version numbers.
@@ -104,16 +123,9 @@ BASIC_SETUP_SEARCHPATH
###############################################################################
# We need build & target for this.
JDKOPT_SETUP_JDK_VARIANT
JDKOPT_SETUP_JVM_VARIANTS
JDKOPT_SETUP_DEBUG_LEVEL
JDKOPT_SETUP_JDK_OPTIONS
JDKOPT_SETUP_JDK_VERSION_NUMBERS
# To properly create a configuration name, we need to have the OpenJDK target
# and options (variants and debug level) parsed.
BASIC_SETUP_OUTPUT_DIR
###############################################################################
#
# Setup BootJDK, used to bootstrap the build.
@@ -141,14 +153,13 @@ SRCDIRS_SETUP_OUTPUT_DIRS
###############################################################################
TOOLCHAIN_SETUP_SYSROOT_AND_OUT_OPTIONS
TOOLCHAIN_SETUP_VISUAL_STUDIO_ENV
# Locate the actual tools
TOOLCHAIN_SETUP_PATHS
# FIXME: Currently we must test this after paths but before flags. Fix!
# And we can test some aspects on the target using configure macros.
PLATFORM_TEST_OPENJDK_TARGET_BITS
PLATFORM_SETUP_OPENJDK_TARGET_BITS
PLATFORM_SETUP_OPENJDK_TARGET_ENDIANNESS
# Configure flags for the tools
@@ -156,10 +167,6 @@ TOOLCHAIN_SETUP_COMPILER_FLAGS_FOR_LIBS
TOOLCHAIN_SETUP_COMPILER_FLAGS_FOR_OPTIMIZATION
TOOLCHAIN_SETUP_COMPILER_FLAGS_FOR_JDK
# After we have toolchain, we can compile the uncygdrive helper
BASIC_COMPILE_UNCYGDRIVE
# Setup debug symbols (need objcopy from the toolchain for that)
JDKOPT_SETUP_DEBUG_SYMBOLS
@@ -177,6 +184,9 @@ LIB_SETUP_ALSA
LIB_SETUP_MISC_LIBS
LIB_SETUP_STATIC_LINK_LIBSTDCPP
# After we have toolchain and the paths to all libraries (needed by msys), we can compile the fixpath helper
BASIC_COMPILE_FIXPATH
###############################################################################
#
# We need to do some final tweaking, when everything else is done.
@@ -213,8 +223,8 @@ BPERF_SETUP_CCACHE
# Check for some common pitfalls
BASIC_TEST_USABILITY_ISSUES
# At the end, call the closed hook. (Dummy macro if no closed sources available)
CLOSED_HOOK
# At the end, call the custom hook. (Dummy macro if no custom sources available)
CUSTOM_LATE_HOOK
# We're messing a bit with internal autoconf variables to put the config.status
# in the output directory instead of the current directory.
@@ -222,5 +232,8 @@ CONFIG_STATUS="$OUTPUT_ROOT/config.status"
# Create the actual output files. Now the main work of configure is done.
AC_OUTPUT
# Make the compare script executable
$CHMOD +x $OUTPUT_ROOT/compare.sh
# Finally output some useful information to the user
HELP_PRINT_SUMMARY_AND_WARNINGS

File diff suppressed because it is too large Load Diff

View File

@@ -55,6 +55,19 @@ AC_DEFUN([HELP_MSG_MISSING_DEPENDENCY],
fi
])
cygwin_help() {
case $1 in
unzip)
PKGHANDLER_COMMAND="cd <location of cygwin setup.exe> && cmd /c setup -q -P unzip" ;;
zip)
PKGHANDLER_COMMAND="cd <location of cygwin setup.exe> && cmd /c setup -q -P zip" ;;
make)
PKGHANDLER_COMMAND="cd <location of cygwin setup.exe> && cmd /c setup -q -P make" ;;
* )
break ;;
esac
}
apt_help() {
case $1 in
devkit)
@@ -149,7 +162,15 @@ printf "* Debug level: $DEBUG_LEVEL\n"
printf "* JDK variant: $JDK_VARIANT\n"
printf "* JVM variants: $with_jvm_variants\n"
printf "* OpenJDK target: OS: $OPENJDK_TARGET_OS, CPU architecture: $OPENJDK_TARGET_CPU_ARCH, address length: $OPENJDK_TARGET_CPU_BITS\n"
printf "* Boot JDK: $BOOT_JDK\n"
printf "\n"
printf "Tools summary:\n"
if test "x$OPENJDK_BUILD_OS" = "xwindows"; then
printf "* Environment: $WINDOWS_ENV_VENDOR version $WINDOWS_ENV_VERSION (root at $WINDOWS_ENV_ROOT_PATH)\n"
fi
printf "* Boot JDK: $BOOT_JDK_VERSION (at $BOOT_JDK)\n"
printf "* C Compiler: $CC_VENDOR version $CC_VERSION (at $CC)\n"
printf "* C++ Compiler: $CXX_VENDOR version $CXX_VERSION (at $CXX)\n"
printf "\n"
printf "Build performance summary:\n"

View File

@@ -0,0 +1,120 @@
#
# 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. Oracle designates this
# particular file as subject to the "Classpath" exception as provided
# by Oracle in the LICENSE file that accompanied this code.
#
# 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.
#
# Chaining of spec files
HOTSPOT_SPEC:=$(dir $(SPEC))hotspot-spec.gmk
override SPEC=$(HOTSPOT_SPEC)
# Now include the base spec.gmk file
include $(BASE_SPEC)
# Additional legacy variables defined for Hotspot
@SET_OPENJDK@
# Legacy defines controlled by the SUPPORT_HEADLESS and SUPPORT_HEADFUL options.
@BUILD_HEADLESS@
# Legacy setting: OPT or DBG
VARIANT:=@VARIANT@
# Legacy setting: true or false
FASTDEBUG:=@FASTDEBUG@
# Legacy setting: debugging the class files?
DEBUG_CLASSFILES:=@DEBUG_CLASSFILES@
ALT_CUPS_HEADERS_PATH:=$(patsubst -I%,%,$(filter -I%,@CUPS_CFLAGS@))
# The HOSTCC/HOSTCXX is Hotspot terminology for the BUILD_CC/BUILD_CXX, i.e. the
# compiler that produces code that can be run on the build platform.
HOSTCC:=@FIXPATH@ @BUILD_CC@
HOSTCXX:=@FIXPATH@ @BUILD_CXX@
####################################################
#
# Legacy Hotspot support
# If cross compiling, then define CROSS_COMPILE_ARCH:=cpu_name here.
@DEFINE_CROSS_COMPILE_ARCH@
# Old name for OPENJDK_TARGET_OS (aix,bsd,hpux,linux,macosx,solaris,windows etc)
PLATFORM=$(OPENJDK_TARGET_OS)
# 32 or 64 bit
ARCH_DATA_MODEL=$(OPENJDK_TARGET_CPU_BITS)
ALT_BOOTDIR=$(BOOT_JDK)
# Can be /sparcv9 or /amd64 on Solaris
ISA_DIR=$(OPENJDK_TARGET_CPU_ISADIR)
# Yet another name for arch used for an extra subdir below the jvm lib.
# Uses i386 and amd64, instead of x86 and x86_64.
LIBARCH=$(OPENJDK_TARGET_CPU_LEGACY_LIB)
# Old name for OPENJDK_TARGET_CPU, uses i586 and amd64, instead of x86 and x86_64.
ARCH=$(OPENJDK_TARGET_CPU_LEGACY)
# Legacy setting for building for a 64 bit machine.
# If yes then this expands to _LP64:=1
@LP64@
ALT_OUTPUTDIR=$(HOTSPOT_OUTPUTDIR)
ALT_EXPORT_PATH=$(HOTSPOT_DIST)
HOTSPOT_MAKE_ARGS:=@HOTSPOT_MAKE_ARGS@ @STATIC_CXX_SETTING@
# This is used from the libjvm build for C/C++ code.
HOTSPOT_BUILD_JOBS:=@CONCURRENT_BUILD_JOBS@
# Control wether Hotspot runs Queens test after building
TEST_IN_BUILD=@TEST_IN_BUILD@
# For hotspot, override compiler/tools definition to not include FIXPATH prefix.
# Hotspot has its own handling on the Windows path situation.
CXX:=@CCACHE@ @HOTSPOT_CXX@
LD:=@HOTSPOT_LD@
MT:=@HOTSPOT_MT@
RC:=@HOTSPOT_RC@
EXTRA_CFLAGS=@LEGACY_EXTRA_CFLAGS@
EXTRA_CXXFLAGS=@LEGACY_EXTRA_CXXFLAGS@
EXTRA_LDFLAGS=@LEGACY_EXTRA_LDFLAGS@
USE_PRECOMPILED_HEADER=@USE_PRECOMPILED_HEADER@
# Hotspot expects the variable FULL_DEBUG_SYMBOLS=1/0 to control debug symbols
# creation.
ifeq ($(ENABLE_DEBUG_SYMBOLS), true)
FULL_DEBUG_SYMBOLS=1
# Ensure hotspot uses the objcopy that configure located
ALT_OBJCOPY:=$(OBJCOPY)
else
FULL_DEBUG_SYMBOLS=0
endif
# Hotspot expects the variable ZIP_DEBUGINFO_FILES=1/0 and not true/false.
ifeq ($(ZIP_DEBUGINFO_FILES)$(ENABLE_DEBUG_SYMBOLS), truetrue)
ZIP_DEBUGINFO_FILES:=1
endif
ifeq ($(ZIP_DEBUGINFO_FILES), false)
ZIP_DEBUGINFO_FILES:=0
endif
# Sneak this in via the spec.gmk file, since we don't want to mess around too much with the Hotspot make files.
# This is needed to get the LOG setting to work properly.
include $(SRC_ROOT)/common/makefiles/MakeBase.gmk

View File

@@ -1,5 +1,5 @@
#
# Copyright (c) 2011, 2012, Oracle and/or its affiliates. All rights reserved.
# Copyright (c) 2011, 2013, 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
@@ -30,7 +30,7 @@ AC_DEFUN_ONCE([JDKOPT_SETUP_JDK_VARIANT],
# Check which variant of the JDK that we want to build.
# Currently we have:
# normal: standard edition
# embedded: cut down to a smaller footprint
# but the custom make system may add other variants
#
# Effectively the JDK variant gives a name to a specific set of
# modules to compile into the JDK. In the future, these modules
@@ -38,22 +38,14 @@ AC_DEFUN_ONCE([JDKOPT_SETUP_JDK_VARIANT],
#
AC_MSG_CHECKING([which variant of the JDK to build])
AC_ARG_WITH([jdk-variant], [AS_HELP_STRING([--with-jdk-variant],
[JDK variant to build (normal, embedded) @<:@normal@:>@])])
[JDK variant to build (normal) @<:@normal@:>@])])
if test "x$with_jdk_variant" = xnormal || test "x$with_jdk_variant" = x; then
JAVASE_EMBEDDED=""
MINIMIZE_RAM_USAGE=""
JDK_VARIANT="normal"
elif test "x$with_jdk_variant" = xembedded; then
JAVASE_EMBEDDED="JAVASE_EMBEDDED:=true"
MINIMIZE_RAM_USAGE="MINIMIZE_RAM_USAGE:=true"
JDK_VARIANT="embedded"
else
AC_MSG_ERROR([The available JDK variants are: normal, embedded])
AC_MSG_ERROR([The available JDK variants are: normal])
fi
AC_SUBST(JAVASE_EMBEDDED)
AC_SUBST(MINIMIZE_RAM_USAGE)
AC_SUBST(JDK_VARIANT)
AC_MSG_RESULT([$JDK_VARIANT])
@@ -68,32 +60,30 @@ AC_DEFUN_ONCE([JDKOPT_SETUP_JVM_VARIANTS],
# Currently we have:
# server: normal interpreter and a tiered C1/C2 compiler
# client: normal interpreter and C1 (no C2 compiler) (only 32-bit platforms)
# minimal1: reduced form of client with optional VM services and features stripped out
# kernel: kernel footprint JVM that passes the TCK without major performance problems,
# ie normal interpreter and C1, only the serial GC, kernel jvmti etc
# zero: no machine code interpreter, no compiler
# zeroshark: zero interpreter and shark/llvm compiler backend
AC_MSG_CHECKING([which variants of the JVM that should be built])
AC_MSG_CHECKING([which variants of the JVM to build])
AC_ARG_WITH([jvm-variants], [AS_HELP_STRING([--with-jvm-variants],
[JVM variants (separated by commas) to build (server, client, kernel, zero, zeroshark) @<:@server@:>@])])
[JVM variants (separated by commas) to build (server, client, minimal1, kernel, zero, zeroshark) @<:@server@:>@])])
if test "x$with_jvm_variants" = x; then
if test "x$JDK_VARIANT" = xembedded; then
with_jvm_variants="client"
else
with_jvm_variants="server"
fi
with_jvm_variants="server"
fi
JVM_VARIANTS=",$with_jvm_variants,"
TEST_VARIANTS=`$ECHO "$JVM_VARIANTS" | $SED -e 's/server,//' -e 's/client,//' -e 's/kernel,//' -e 's/zero,//' -e 's/zeroshark,//'`
TEST_VARIANTS=`$ECHO "$JVM_VARIANTS" | $SED -e 's/server,//' -e 's/client,//' -e 's/minimal1,//' -e 's/kernel,//' -e 's/zero,//' -e 's/zeroshark,//'`
if test "x$TEST_VARIANTS" != "x,"; then
AC_MSG_ERROR([The available JVM variants are: server, client, kernel, zero, zeroshark])
AC_MSG_ERROR([The available JVM variants are: server, client, minimal1, kernel, zero, zeroshark])
fi
AC_MSG_RESULT([$with_jvm_variants])
JVM_VARIANT_SERVER=`$ECHO "$JVM_VARIANTS" | $SED -e '/,server,/!s/.*/false/g' -e '/,server,/s/.*/true/g'`
JVM_VARIANT_CLIENT=`$ECHO "$JVM_VARIANTS" | $SED -e '/,client,/!s/.*/false/g' -e '/,client,/s/.*/true/g'`
JVM_VARIANT_MINIMAL1=`$ECHO "$JVM_VARIANTS" | $SED -e '/,minimal1,/!s/.*/false/g' -e '/,minimal1,/s/.*/true/g'`
JVM_VARIANT_KERNEL=`$ECHO "$JVM_VARIANTS" | $SED -e '/,kernel,/!s/.*/false/g' -e '/,kernel,/s/.*/true/g'`
JVM_VARIANT_ZERO=`$ECHO "$JVM_VARIANTS" | $SED -e '/,zero,/!s/.*/false/g' -e '/,zero,/s/.*/true/g'`
JVM_VARIANT_ZEROSHARK=`$ECHO "$JVM_VARIANTS" | $SED -e '/,zeroshark,/!s/.*/false/g' -e '/,zeroshark,/s/.*/true/g'`
@@ -108,10 +98,15 @@ if test "x$JVM_VARIANT_KERNEL" = xtrue; then
AC_MSG_ERROR([You cannot build a kernel JVM for a 64-bit machine.])
fi
fi
if test "x$JVM_VARIANT_MINIMAL1" = xtrue; then
if test "x$OPENJDK_TARGET_CPU_BITS" = x64; then
AC_MSG_ERROR([You cannot build a minimal JVM for a 64-bit machine.])
fi
fi
# Replace the commas with AND for use in the build directory name.
ANDED_JVM_VARIANTS=`$ECHO "$JVM_VARIANTS" | $SED -e 's/^,//' -e 's/,$//' -e 's/,/AND/'`
COUNT_VARIANTS=`$ECHO "$JVM_VARIANTS" | $SED -e 's/server,/1/' -e 's/client,/1/' -e 's/kernel,/1/' -e 's/zero,/1/' -e 's/zeroshark,/1/'`
COUNT_VARIANTS=`$ECHO "$JVM_VARIANTS" | $SED -e 's/server,/1/' -e 's/client,/1/' -e 's/minimal1,/1/' -e 's/kernel,/1/' -e 's/zero,/1/' -e 's/zeroshark,/1/'`
if test "x$COUNT_VARIANTS" != "x,1"; then
BUILDING_MULTIPLE_JVM_VARIANTS=yes
else
@@ -121,10 +116,16 @@ fi
AC_SUBST(JVM_VARIANTS)
AC_SUBST(JVM_VARIANT_SERVER)
AC_SUBST(JVM_VARIANT_CLIENT)
AC_SUBST(JVM_VARIANT_MINIMAL1)
AC_SUBST(JVM_VARIANT_KERNEL)
AC_SUBST(JVM_VARIANT_ZERO)
AC_SUBST(JVM_VARIANT_ZEROSHARK)
if test "x$OPENJDK_TARGET_OS" = "xmacosx"; then
MACOSX_UNIVERSAL="true"
fi
AC_SUBST(MACOSX_UNIVERSAL)
])
@@ -198,7 +199,9 @@ esac
#####
# Generate the legacy makefile targets for hotspot.
# The hotspot api for selecting the build artifacts, really, needs to be improved.
#
# JDK-7195896 will fix this on the hotspot side by using the JVM_VARIANT_* variables to
# determine what needs to be built. All we will need to set here is all_product, all_fastdebug etc
# But until then ...
HOTSPOT_TARGET=""
if test "x$JVM_VARIANT_SERVER" = xtrue; then
@@ -209,6 +212,10 @@ if test "x$JVM_VARIANT_CLIENT" = xtrue; then
HOTSPOT_TARGET="$HOTSPOT_TARGET${HOTSPOT_DEBUG_LEVEL}1 "
fi
if test "x$JVM_VARIANT_MINIMAL1" = xtrue; then
HOTSPOT_TARGET="$HOTSPOT_TARGET${HOTSPOT_DEBUG_LEVEL}minimal1 "
fi
if test "x$JVM_VARIANT_KERNEL" = xtrue; then
HOTSPOT_TARGET="$HOTSPOT_TARGET${HOTSPOT_DEBUG_LEVEL}kernel "
fi
@@ -223,6 +230,14 @@ fi
HOTSPOT_TARGET="$HOTSPOT_TARGET docs export_$HOTSPOT_EXPORT"
# On Macosx universal binaries are produced, but they only contain
# 64 bit intel. This invalidates control of which jvms are built
# from configure, but only server is valid anyway. Fix this
# when hotspot makefiles are rewritten.
if test "x$MACOSX_UNIVERSAL" = xtrue; then
HOTSPOT_TARGET=universal_${HOTSPOT_EXPORT}
fi
#####
AC_SUBST(DEBUG_LEVEL)
@@ -232,47 +247,50 @@ AC_SUBST(DEBUG_CLASSFILES)
AC_SUBST(BUILD_VARIANT_RELEASE)
])
AC_DEFUN_ONCE([JDKOPT_SETUP_JDK_OPTIONS],
[
###############################################################################
#
# Should we build only OpenJDK even if closed sources are present?
#
AC_ARG_ENABLE([openjdk-only], [AS_HELP_STRING([--enable-openjdk-only],
[build OpenJDK regardless of the presence of closed repositories @<:@disabled@:>@])],,)
AC_DEFUN_ONCE([JDKOPT_SETUP_OPEN_OR_CUSTOM],
[
AC_ARG_ENABLE([openjdk-only], [AS_HELP_STRING([--enable-openjdk-only],
[suppress building custom source even if present @<:@disabled@:>@])],,[enable_openjdk_only="no"])
if test "x$enable_openjdk_only" = "xyes"; then
AC_MSG_CHECKING([for presence of closed sources])
if test -d "$SRC_ROOT/jdk/src/closed"; then
CLOSED_SOURCE_PRESENT=yes
else
CLOSED_SOURCE_PRESENT=no
fi
AC_MSG_RESULT([$CLOSED_SOURCE_PRESENT])
AC_MSG_CHECKING([if closed source is suppressed (openjdk-only)])
SUPPRESS_CLOSED_SOURCE="$enable_openjdk_only"
AC_MSG_RESULT([$SUPPRESS_CLOSED_SOURCE])
if test "x$CLOSED_SOURCE_PRESENT" = xno; then
OPENJDK=true
elif test "x$enable_openjdk_only" = "xno"; then
OPENJDK=false
elif test -d "$SRC_ROOT/jdk/src/closed"; then
OPENJDK=false
else
OPENJDK=true
fi
if test "x$SUPPRESS_CLOSED_SOURCE" = "xyes"; then
AC_MSG_WARN([No closed source present, --enable-openjdk-only makes no sense])
fi
else
if test "x$SUPPRESS_CLOSED_SOURCE" = "xyes"; then
OPENJDK=true
else
OPENJDK=false
fi
fi
if test "x$OPENJDK" = "xtrue"; then
SET_OPENJDK=OPENJDK=true
fi
if test "x$OPENJDK" = "xtrue"; then
SET_OPENJDK="OPENJDK=true"
fi
AC_SUBST(SET_OPENJDK)
AC_SUBST(SET_OPENJDK)
])
###############################################################################
#
# JIGSAW or not. The JIGSAW variable is used during the intermediate
# stage when we are building both the old style JDK and the new style modularized JDK.
# When the modularized JDK is finalized, this option will go away.
#
AC_ARG_ENABLE([jigsaw], [AS_HELP_STRING([--enable-jigsaw],
[build Jigsaw images (not yet available) @<:@disabled@:>@])],,)
if test "x$enable_jigsaw" = "xyes"; then
JIGSAW=true
else
JIGSAW=false
fi
AC_SUBST(JIGSAW)
AC_DEFUN_ONCE([JDKOPT_SETUP_JDK_OPTIONS],
[
###############################################################################
#
@@ -281,7 +299,7 @@ AC_SUBST(JIGSAW)
#
AC_MSG_CHECKING([headful support])
AC_ARG_ENABLE([headful], [AS_HELP_STRING([--disable-headful],
[build headful support (graphical UI support) @<:@enabled@:>@])],
[disable building headful support (graphical UI support) @<:@enabled@:>@])],
[SUPPORT_HEADFUL=${enable_headful}], [SUPPORT_HEADFUL=yes])
SUPPORT_HEADLESS=yes
@@ -289,14 +307,12 @@ BUILD_HEADLESS="BUILD_HEADLESS:=true"
if test "x$SUPPORT_HEADFUL" = xyes; then
# We are building both headful and headless.
BUILD_HEADLESS_ONLY=""
headful_msg="inlude support for both headful and headless"
fi
if test "x$SUPPORT_HEADFUL" = xno; then
# Thus we are building headless only.
BUILD_HEADLESS="BUILD_HEADLESS:=true"
BUILD_HEADLESS_ONLY="BUILD_HEADLESS_ONLY:=true"
headful_msg="headless only"
fi
@@ -305,43 +321,10 @@ AC_MSG_RESULT([$headful_msg])
AC_SUBST(SUPPORT_HEADLESS)
AC_SUBST(SUPPORT_HEADFUL)
AC_SUBST(BUILD_HEADLESS)
AC_SUBST(BUILD_HEADLESS_ONLY)
###############################################################################
#
# Should we run the painfully slow javadoc tool?
#
AC_MSG_CHECKING([whether to build documentation])
AC_ARG_ENABLE([docs], [AS_HELP_STRING([--enable-docs],
[enable generation of Javadoc documentation @<:@disabled@:>@])],
[ENABLE_DOCS="${enableval}"], [ENABLE_DOCS='no'])
AC_MSG_RESULT([$ENABLE_DOCS])
AC_SUBST(ENABLE_DOCS)
GENERATE_DOCS=false
if test "x$ENABLE_DOCS" = xyes; then
GENERATE_DOCS=true
fi
AC_SUBST(GENERATE_DOCS)
###############################################################################
#
# Should we compile nimbus swing L&F? We can probably remove this option
# since nimbus is officially part of javax now.
#
AC_MSG_CHECKING([whether to build nimbus L&F])
AC_ARG_ENABLE([nimbus], [AS_HELP_STRING([--disable-nimbus],
[disable Nimbus L&F @<:@enabled@:>@])],
[ENABLE_NIMBUS="${enableval}"], [ENABLE_NIMBUS='yes'])
AC_MSG_RESULT([$ENABLE_NIMBUS])
DISABLE_NIMBUS=
if test "x$ENABLE_NIMBUS" = xno; then
DISABLE_NIMBUS=true
fi
AC_SUBST(DISABLE_NIMBUS)
# Control wether Hotspot runs Queens test after build.
AC_ARG_ENABLE([hotspot-test-in-build], [AS_HELP_STRING([--enable-hotspot-test-in-build],
[enable running of Queens test after Hotspot build (not yet available) @<:@disabled@:>@])],,
[run the Queens test after Hotspot build @<:@disabled@:>@])],,
[enable_hotspot_test_in_build=no])
if test "x$enable_hotspot_test_in_build" = "xyes"; then
TEST_IN_BUILD=true
@@ -367,58 +350,75 @@ else
fi
AC_SUBST(CACERTS_FILE)
###############################################################################
#
# Enable or disable unlimited crypto
#
AC_ARG_ENABLE(unlimited-crypto, [AS_HELP_STRING([--enable-unlimited-crypto],
[Enable unlimited crypto policy @<:@disabled@:>@])],,
[enable_unlimited_crypto=no])
if test "x$enable_unlimited_crypto" = "xyes"; then
UNLIMITED_CRYPTO=true
else
UNLIMITED_CRYPTO=false
fi
AC_SUBST(UNLIMITED_CRYPTO)
###############################################################################
#
# Compress jars
#
COMPRESS_JARS=false
# default for embedded is yes...
if test "x$JDK_VARIANT" = "xembedded"; then
COMPRESS_JARS=true
fi
AC_SUBST(COMPRESS_JARS)
])
###############################################################################
#
# Should we compile JFR
# default no, except for on closed-jdk and !embedded
# Setup version numbers
#
ENABLE_JFR=no
# Is the JFR source present
#
# For closed && !embedded default is yes if the source is present
#
if test "x${OPENJDK}" != "xtrue" && test "x$JDK_VARIANT" != "xembedded" && test -d "$SRC_ROOT/jdk/src/closed/share/native/oracle/jfr"; then
ENABLE_JFR=yes
fi
AC_MSG_CHECKING([whether to build jfr])
AC_ARG_ENABLE([jfr], [AS_HELP_STRING([--enable-jfr],
[enable jfr (default is no)])]
[ENABLE_JFR="${enableval}"])
AC_MSG_RESULT([${ENABLE_JFR}])
if test "x$ENABLE_JFR" = "xyes"; then
ENABLE_JFR=true
elif test "x$ENABLE_JFR" = "xno"; then
ENABLE_JFR=false
else
AC_MSG_ERROR([Invalid argument to --enable-jfr])
fi
AC_SUBST(ENABLE_JFR)
])
AC_DEFUN_ONCE([JDKOPT_SETUP_JDK_VERSION_NUMBERS],
[
# Source the version numbers
. $AUTOCONF_DIR/version.numbers
if test "x$OPENJDK" = "xfalse"; then
. $AUTOCONF_DIR/closed.version.numbers
. $AUTOCONF_DIR/version-numbers
# Get the settings from parameters
AC_ARG_WITH(milestone, [AS_HELP_STRING([--with-milestone],
[Set milestone value for build @<:@internal@:>@])])
if test "x$with_milestone" = xyes; then
AC_MSG_ERROR([Milestone must have a value])
elif test "x$with_milestone" != x; then
MILESTONE="$with_milestone"
fi
if test "x$MILESTONE" = x; then
MILESTONE=internal
fi
AC_ARG_WITH(build-number, [AS_HELP_STRING([--with-build-number],
[Set build number value for build @<:@b00@:>@])])
if test "x$with_build_number" = xyes; then
AC_MSG_ERROR([Build number must have a value])
elif test "x$with_build_number" != x; then
JDK_BUILD_NUMBER="$with_build_number"
fi
if test "x$JDK_BUILD_NUMBER" = x; then
JDK_BUILD_NUMBER=b00
fi
AC_ARG_WITH(user-release-suffix, [AS_HELP_STRING([--with-user-release-suffix],
[Add a custom string to the version string if build number isn't set.@<:@username_builddateb00@:>@])])
if test "x$with_user_release_suffix" = xyes; then
AC_MSG_ERROR([Release suffix must have a value])
elif test "x$with_user_release_suffix" != x; then
USER_RELEASE_SUFFIX="$with_user_release_suffix"
else
BUILD_DATE=`date '+%Y_%m_%d_%H_%M'`
# Avoid [:alnum:] since it depends on the locale.
CLEAN_USERNAME=`echo "$USER" | $TR -d -c 'abcdefghijklmnopqrstuvqxyz0123456789'`
USER_RELEASE_SUFFIX=`echo "${CLEAN_USERNAME}_${BUILD_DATE}" | $TR 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
fi
AC_SUBST(USER_RELEASE_SUFFIX)
# Now set the JDK version, milestone, build number etc.
AC_SUBST(JDK_MAJOR_VERSION)
AC_SUBST(JDK_MINOR_VERSION)
@@ -431,51 +431,32 @@ AC_SUBST(PRODUCT_NAME)
AC_SUBST(PRODUCT_SUFFIX)
AC_SUBST(JDK_RC_PLATFORM_NAME)
AC_SUBST(COMPANY_NAME)
AC_SUBST(MACOSX_BUNDLE_NAME_BASE)
AC_SUBST(MACOSX_BUNDLE_ID_BASE)
COPYRIGHT_YEAR=`date +'%Y'`
AC_SUBST(COPYRIGHT_YEAR)
RUNTIME_NAME="$PRODUCT_NAME $PRODUCT_SUFFIX"
AC_SUBST(RUNTIME_NAME)
if test "x$JDK_UPDATE_VERSION" != x; then
JDK_VERSION="${JDK_MAJOR_VERSION}.${JDK_MINOR_VERSION}.${JDK_MICRO_VERSION}_${JDK_UPDATE_VERSION}"
JDK_VERSION="${JDK_MAJOR_VERSION}.${JDK_MINOR_VERSION}.${JDK_MICRO_VERSION}_${JDK_UPDATE_VERSION}"
else
JDK_VERSION="${JDK_MAJOR_VERSION}.${JDK_MINOR_VERSION}.${JDK_MICRO_VERSION}"
JDK_VERSION="${JDK_MAJOR_VERSION}.${JDK_MINOR_VERSION}.${JDK_MICRO_VERSION}"
fi
AC_SUBST(JDK_VERSION)
if test "x$MILESTONE" != x; then
RELEASE="${JDK_VERSION}-${MILESTONE}${BUILD_VARIANT_RELEASE}"
else
RELEASE="${JDK_VERSION}${BUILD_VARIANT_RELEASE}"
fi
AC_SUBST(RELEASE)
if test "x$JDK_BUILD_NUMBER" != x; then
FULL_VERSION="${RELEASE}-${JDK_BUILD_NUMBER}"
else
JDK_BUILD_NUMBER=b00
BUILD_DATE=`date '+%Y_%m_%d_%H_%M'`
# Avoid [:alnum:] since it depends on the locale.
CLEAN_USERNAME=`echo "$USER" | $TR -d -c 'abcdefghijklmnopqrstuvqxyz0123456789'`
USER_RELEASE_SUFFIX=`echo "${CLEAN_USERNAME}_${BUILD_DATE}" | $TR 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvqxyz'`
FULL_VERSION="${RELEASE}-${USER_RELEASE_SUFFIX}-${JDK_BUILD_NUMBER}"
fi
AC_SUBST(FULL_VERSION)
COOKED_BUILD_NUMBER=`$ECHO $JDK_BUILD_NUMBER | $SED -e 's/^b//' -e 's/^0//'`
AC_SUBST(COOKED_BUILD_NUMBER)
])
AC_DEFUN_ONCE([JDKOPT_SETUP_BUILD_TWEAKS],
[
HOTSPOT_MAKE_ARGS="ALT_OUTPUTDIR=$HOTSPOT_OUTPUTDIR ALT_EXPORT_PATH=$HOTSPOT_DIST $HOTSPOT_TARGET"
HOTSPOT_MAKE_ARGS="$HOTSPOT_TARGET"
AC_SUBST(HOTSPOT_MAKE_ARGS)
# The name of the Service Agent jar.
SALIB_NAME="${LIBRARY_PREFIX}saproc${SHARED_LIBRARY_SUFFIX}"
if test "x$OPENJDK_TARGET_OS" = "xwindows"; then
SALIB_NAME="${LIBRARY_PREFIX}sawindbg${SHARED_LIBRARY_SUFFIX}"
SALIB_NAME="${LIBRARY_PREFIX}sawindbg${SHARED_LIBRARY_SUFFIX}"
fi
AC_SUBST(SALIB_NAME)
@@ -487,37 +468,30 @@ AC_DEFUN_ONCE([JDKOPT_SETUP_DEBUG_SYMBOLS],
# ENABLE_DEBUG_SYMBOLS
# This must be done after the toolchain is setup, since we're looking at objcopy.
#
ENABLE_DEBUG_SYMBOLS=default
# default on macosx is no...
if test "x$OPENJDK_TARGET_OS" = xmacosx; then
ENABLE_DEBUG_SYMBOLS=no
fi
# default for embedded is no...
if test "x$JDK_VARIANT" = "xembedded"; then
ENABLE_DEBUG_SYMBOLS=no
fi
AC_ARG_ENABLE([debug-symbols],
[AS_HELP_STRING([--disable-debug-symbols],[disable generation of debug symbols (@<:@enabled@:>@)])],
[ENABLE_DEBUG_SYMBOLS=${enable_debug_symbols}],
)
[AS_HELP_STRING([--disable-debug-symbols],[disable generation of debug symbols @<:@enabled@:>@])])
AC_MSG_CHECKING([if we should generate debug symbols])
if test "x$ENABLE_DEBUG_SYMBOLS" = "xyes" && test "x$OBJCOPY" = x; then
if test "x$enable_debug_symbols" = "xyes" && test "x$OBJCOPY" = x; then
# explicit enabling of enable-debug-symbols and can't find objcopy
# this is an error
AC_MSG_ERROR([Unable to find objcopy, cannot enable debug-symbols])
fi
if test "x$ENABLE_DEBUG_SYMBOLS" = "xdefault"; then
if test "x$enable_debug_symbols" = "xyes"; then
ENABLE_DEBUG_SYMBOLS=true
elif test "x$enable_debug_symbols" = "xno"; then
ENABLE_DEBUG_SYMBOLS=false
else
# default on macosx is false
if test "x$OPENJDK_TARGET_OS" = xmacosx; then
ENABLE_DEBUG_SYMBOLS=false
# Default is on if objcopy is found, otherwise off
if test "x$OBJCOPY" != x; then
ENABLE_DEBUG_SYMBOLS=yes
elif test "x$OBJCOPY" != x || test "x$OPENJDK_TARGET_OS" = xwindows; then
ENABLE_DEBUG_SYMBOLS=true
else
ENABLE_DEBUG_SYMBOLS=no
ENABLE_DEBUG_SYMBOLS=false
fi
fi
@@ -526,22 +500,16 @@ AC_MSG_RESULT([$ENABLE_DEBUG_SYMBOLS])
#
# ZIP_DEBUGINFO_FILES
#
ZIP_DEBUGINFO_FILES=yes
AC_ARG_ENABLE([zip-debug-info],
[AS_HELP_STRING([--disable-zip-debug-info],[don't zip debug-info files (@<:@enabled@:@)])],
[ZIP_DEBUGINFO_FILES=${enable_zip_debug_info}],
)
[AS_HELP_STRING([--disable-zip-debug-info],[disable zipping of debug-info files @<:@enabled@:>@])])
AC_MSG_CHECKING([if we should zip debug-info files])
AC_MSG_RESULT([$ZIP_DEBUGINFO_FILES])
AC_MSG_RESULT([${enable_zip_debug_info}])
# Hotspot wants ZIP_DEBUGINFO_FILES to be 1 for yes
# use that...
if test "x$ZIP_DEBUGINFO_FILES" = "xyes"; then
ZIP_DEBUGINFO_FILES=1
if test "x${enable_zip_debug_info}" = "xno"; then
ZIP_DEBUGINFO_FILES=false
else
ZIP_DEBUGINFO_FILES=0
ZIP_DEBUGINFO_FILES=true
fi
AC_SUBST(ENABLE_DEBUG_SYMBOLS)
@@ -549,3 +517,11 @@ AC_SUBST(ZIP_DEBUGINFO_FILES)
AC_SUBST(CFLAGS_DEBUG_SYMBOLS)
AC_SUBST(CXXFLAGS_DEBUG_SYMBOLS)
])
# Support for customization of the build process. Some build files
# will include counterparts from this location, if they exist. This allows
# for a degree of customization of the build targets and the rules/recipes
# to create them
AC_ARG_WITH([custom-make-dir], [AS_HELP_STRING([--with-custom-make-dir],
[use this directory for custom build/make files])], [CUSTOM_MAKE_DIR=$with_custom_make_dir])
AC_SUBST(CUSTOM_MAKE_DIR)

View File

@@ -73,6 +73,10 @@ if test "x$OPENJDK" = "xfalse"; then
FREETYPE2_NOT_NEEDED=yes
fi
if test "x$SUPPORT_HEADFUL" = xno; then
X11_NOT_NEEDED=yes
fi
###############################################################################
#
# Check for MacOSX support for OpenJDK. If this exists, try to build a JVM
@@ -132,6 +136,12 @@ fi
AC_PATH_X
AC_PATH_XTRA
# AC_PATH_XTRA creates X_LIBS and sometimes adds -R flags. When cross compiling
# this doesn't make sense so we remove it.
if test "x$COMPILE_TYPE" = xcross; then
X_LIBS=`$ECHO $X_LIBS | $SED 's/-R \{0,1\}[[^ ]]*//g'`
fi
if test "x$no_x" = xyes && test "x$X11_NOT_NEEDED" != xyes; then
HELP_MSG_MISSING_DEPENDENCY([x11])
AC_MSG_ERROR([Could not find X11 libraries. $HELP_MSG])
@@ -168,9 +178,15 @@ fi
AC_LANG_PUSH(C)
OLD_CFLAGS="$CFLAGS"
CFLAGS="$CFLAGS $X_CFLAGS"
# Need to include Xlib.h and Xutil.h to avoid "present but cannot be compiled" warnings on Solaris 10
AC_CHECK_HEADERS([X11/extensions/shape.h X11/extensions/Xrender.h X11/extensions/XTest.h],
[X11_A_OK=yes],
[X11_A_OK=no])
[X11_A_OK=yes],
[X11_A_OK=no],
[ # include <X11/Xlib.h>
# include <X11/Xutil.h>
])
CFLAGS="$OLD_CFLAGS"
AC_LANG_POP(C)
@@ -192,27 +208,23 @@ AC_DEFUN_ONCE([LIB_SETUP_CUPS],
#
AC_ARG_WITH(cups, [AS_HELP_STRING([--with-cups],
[specify prefix directory for the cups package
(expecting the libraries under PATH/lib and the headers under PATH/include)])])
(expecting the headers under PATH/include)])])
AC_ARG_WITH(cups-include, [AS_HELP_STRING([--with-cups-include],
[specify directory for the cups include files])])
AC_ARG_WITH(cups-lib, [AS_HELP_STRING([--with-cups-lib],
[specify directory for the cups library])])
if test "x$CUPS_NOT_NEEDED" = xyes; then
if test "x${with_cups}" != x || test "x${with_cups_include}" != x || test "x${with_cups_lib}" != x; then
if test "x${with_cups}" != x || test "x${with_cups_include}" != x; then
AC_MSG_WARN([cups not used, so --with-cups is ignored])
fi
CUPS_CFLAGS=
CUPS_LIBS=
else
CUPS_FOUND=no
if test "x${with_cups}" = xno || test "x${with_cups_include}" = xno || test "x${with_cups_lib}" = xno; then
if test "x${with_cups}" = xno || test "x${with_cups_include}" = xno; then
AC_MSG_ERROR([It is not possible to disable the use of cups. Remove the --without-cups option.])
fi
if test "x${with_cups}" != x; then
CUPS_LIBS="-L${with_cups}/lib -lcups"
CUPS_CFLAGS="-I${with_cups}/include"
CUPS_FOUND=yes
fi
@@ -220,10 +232,6 @@ else
CUPS_CFLAGS="-I${with_cups_include}"
CUPS_FOUND=yes
fi
if test "x${with_cups_lib}" != x; then
CUPS_LIBS="-L${with_cups_lib} -lcups"
CUPS_FOUND=yes
fi
if test "x$CUPS_FOUND" = xno; then
BDEPS_CHECK_MODULE(CUPS, cups, xxx, [CUPS_FOUND=yes])
fi
@@ -232,23 +240,20 @@ else
AC_CHECK_HEADERS([cups/cups.h cups/ppd.h],
[CUPS_FOUND=yes
CUPS_CFLAGS=
CUPS_LIBS="-lcups"
DEFAULT_CUPS=yes])
fi
if test "x$CUPS_FOUND" = xno; then
# Getting nervous now? Lets poke around for standard Solaris third-party
# package installation locations.
AC_MSG_CHECKING([for cups headers and libs])
AC_MSG_CHECKING([for cups headers])
if test -s /opt/sfw/cups/include/cups/cups.h; then
# An SFW package seems to be installed!
CUPS_FOUND=yes
CUPS_CFLAGS="-I/opt/sfw/cups/include"
CUPS_LIBS="-L/opt/sfw/cups/lib -lcups"
elif test -s /opt/csw/include/cups/cups.h; then
# A CSW package seems to be installed!
CUPS_FOUND=yes
CUPS_CFLAGS="-I/opt/csw/include"
CUPS_LIBS="-L/opt/csw/lib -lcups"
fi
AC_MSG_RESULT([$CUPS_FOUND])
fi
@@ -259,7 +264,6 @@ else
fi
AC_SUBST(CUPS_CFLAGS)
AC_SUBST(CUPS_LIBS)
])
@@ -288,17 +292,21 @@ else
FREETYPE2_FOUND=no
if test "x$with_freetype" != x; then
SPACESAFE(with_freetype,[the path to freetype])
BASIC_FIXUP_PATH(with_freetype)
FREETYPE2_LIBS="-L$with_freetype/lib -lfreetype"
FREETYPE2_LIB_PATH="$with_freetype/lib"
if test "x$OPENJDK_TARGET_OS" = xsolaris && test "x$OPENJDK_TARGET_CPU" = xx86_64 && test -d "$with_freetype/lib/amd64"; then
FREETYPE2_LIBS="-L$with_freetype/lib/amd64 -lfreetype"
FREETYPE2_LIB_PATH="$with_freetype/lib/amd64"
fi
if test "x$OPENJDK_TARGET_OS" = xwindows; then
FREETYPE2_LIBS="$with_freetype/lib/freetype.lib"
fi
FREETYPE2_LIB_PATH="$with_freetype/lib"
FREETYPE2_CFLAGS="-I$with_freetype/include"
if test -s $with_freetype/include/ft2build.h && test -d $with_freetype/include/freetype2/freetype; then
FREETYPE2_CFLAGS="-I$with_freetype/include/freetype2 -I$with_freetype/include"
fi
FREETYPE2_FOUND=yes
FREETYPE2_FOUND=yes
if test "x$FREETYPE2_FOUND" = xyes; then
# Verify that the directories exist
if ! test -d "$with_freetype/lib" || ! test -d "$with_freetype/include"; then
@@ -307,7 +315,7 @@ else
# List the contents of the lib.
FREETYPELIB=`ls $with_freetype/lib/libfreetype.so $with_freetype/lib/freetype.dll 2> /dev/null`
if test "x$FREETYPELIB" = x; then
AC_MSG_ERROR([Could not find libfreetype.se nor freetype.dll in $with_freetype/lib])
AC_MSG_ERROR([Could not find libfreetype.so nor freetype.dll in $with_freetype/lib])
fi
# Check one h-file
if ! test -s "$with_freetype/include/ft2build.h"; then
@@ -319,9 +327,34 @@ else
BDEPS_CHECK_MODULE(FREETYPE2, freetype2, xxx, [FREETYPE2_FOUND=yes], [FREETYPE2_FOUND=no])
USING_SYSTEM_FT_LIB=true
fi
if test "x$FREETYPE2_FOUND" = xno && test "x$OPENJDK_TARGET_OS" = xwindows; then
FREETYPELOCATION="$PROGRAMFILES/GnuWin32"
BASIC_FIXUP_PATH(FREETYPELOCATION)
AC_MSG_CHECKING([for freetype in some standard windows locations])
if test -s "$FREETYPELOCATION/include/ft2build.h" && test -d "$FREETYPELOCATION/include/freetype2/freetype"; then
FREETYPE2_CFLAGS="-I$FREETYPELOCATION/include/freetype2 -I$FREETYPELOCATION/include"
FREETYPE2_LIBS="$FREETYPELOCATION/lib/freetype.lib"
FREETYPE2_LIB_PATH="$FREETYPELOCATION/lib"
if ! test -s "$FREETYPE2_LIBS"; then
AC_MSG_ERROR([Could not find $FREETYPE2_LIBS])
fi
if ! test -s "$FREETYPE2_LIB_PATH/freetype.dll"; then
AC_MSG_ERROR([Could not find $FREETYPE2_LIB_PATH/freetype.dll])
fi
USING_SYSTEM_FT_LIB=true
FREETYPE2_FOUND=yes
fi
AC_MSG_RESULT([$FREETYPE2_FOUND])
fi
if test "x$FREETYPE2_FOUND" = xno; then
PKG_CHECK_MODULES(FREETYPE2, freetype2, [FREETYPE2_FOUND=yes], [FREETYPE2_FOUND=no])
# On solaris, pkg_check adds -lz to freetype libs, which isn't necessary for us.
FREETYPE2_LIBS=`$ECHO $FREETYPE2_LIBS | $SED 's/-lz//g'`
USING_SYSTEM_FT_LIB=true
# 64-bit libs for Solaris x86 are installed in the amd64 subdirectory, change lib to lib/amd64
if test "x$FREETYPE2_FOUND" = xyes && test "x$OPENJDK_TARGET_OS" = xsolaris && test "x$OPENJDK_TARGET_CPU" = xx86_64; then
FREETYPE2_LIBS=`$ECHO $FREETYPE2_LIBS | $SED 's?/lib?/lib/amd64?g'`
fi
fi
if test "x$FREETYPE2_FOUND" = xno; then
AC_MSG_CHECKING([for freetype in some standard locations])
@@ -360,7 +393,17 @@ else
if test "x$FREETYPE2_FOUND" = xno; then
HELP_MSG_MISSING_DEPENDENCY([freetype2])
AC_MSG_ERROR([Could not find freetype2! $HELP_MSG ])
fi
fi
if test "x$OPENJDK_TARGET_OS" != xwindows; then
# AC_CHECK_LIB does not support use of cl.exe
PREV_LDFLAGS="$LDFLAGS"
LDFLAGS="$FREETYPE2_LIBS"
AC_CHECK_LIB(freetype, FT_Init_FreeType,
FREETYPE2_FOUND=true,
AC_MSG_ERROR([Could not find freetype2! $HELP_MSG ]))
LDFLAGS="$PREV_LDFLAGS"
fi
fi
AC_SUBST(USING_SYSTEM_FT_LIB)
@@ -518,9 +561,7 @@ AC_SUBST(USE_EXTERNAL_LIBZ)
###############################################################################
LIBZIP_CAN_USE_MMAP=true
if test "x$JDK_VARIANT" = "xembedded"; then
LIBZIP_CAN_USE_MMAP=false
fi
AC_SUBST(LIBZIP_CAN_USE_MMAP)
###############################################################################
@@ -566,11 +607,16 @@ AC_DEFUN_ONCE([LIB_SETUP_STATIC_LINK_LIBSTDCPP],
# statically link libstdc++ before C++ ABI is stablized on Linux unless
# dynamic build is configured on command line.
#
AC_ARG_ENABLE([static-link-stdc++], [AS_HELP_STRING([--disable-static-link-stdc++],
[disable static linking of the C++ runtime on Linux @<:@enabled@:>@])],,
[
enable_static_link_stdc__=yes
])
AC_ARG_WITH([stdc++lib], [AS_HELP_STRING([--with-stdc++lib=<static>,<dynamic>,<default>],
[force linking of the C++ runtime on Linux to either static or dynamic, default is static with dynamic as fallback])],
[
if test "x$with_stdc__lib" != xdynamic && test "x$with_stdc__lib" != xstatic \
&& test "x$with_stdc__lib" != xdefault; then
AC_MSG_ERROR([Bad parameter value --with-stdc++lib=$with_stdc__lib!])
fi
],
[with_stdc__lib=default]
)
if test "x$OPENJDK_TARGET_OS" = xlinux; then
# Test if -lstdc++ works.
@@ -601,35 +647,38 @@ if test "x$OPENJDK_TARGET_OS" = xlinux; then
AC_LANG_POP(C++)
AC_MSG_RESULT([$has_static_libstdcxx])
if test "x$has_static_libcxx" = xno && test "x$has_dynamic_libcxx" = xno; then
AC_MSG_ERROR([I cannot link to stdc++! Neither dynamically nor statically.])
if test "x$has_static_libstdcxx" = xno && test "x$has_dynamic_libstdcxx" = xno; then
AC_MSG_ERROR([Cannot link to stdc++, neither dynamically nor statically!])
fi
if test "x$enable_static_link_stdc__" = xyes && test "x$has_static_libstdcxx" = xno; then
AC_MSG_NOTICE([Static linking of libstdc++ was not possible reverting to dynamic linking.])
enable_static_link_stdc__=no
if test "x$with_stdc__lib" = xstatic && test "x$has_static_libstdcxx" = xno; then
AC_MSG_ERROR([Static linking of libstdc++ was not possible!])
fi
if test "x$enable_static_link_stdc__" = xno && test "x$has_dynamic_libstdcxx" = xno; then
AC_MSG_NOTICE([Dynamic linking of libstdc++ was not possible reverting to static linking.])
enable_static_link_stdc__=yes
if test "x$with_stdc__lib" = xdynamic && test "x$has_dynamic_libstdcxx" = xno; then
AC_MSG_ERROR([Dynamic linking of libstdc++ was not possible!])
fi
AC_MSG_CHECKING([how to link with libstdc++])
if test "x$enable_static_link_stdc__" = xyes; then
LIBCXX="$LIBCXX $STATIC_STDCXX_FLAGS"
LDCXX="$CC"
AC_MSG_RESULT([static])
else
# If dynamic was requested, it's available since it would fail above otherwise.
# If dynamic wasn't requested, go with static unless it isn't available.
if test "x$with_stdc__lib" = xdynamic || test "x$has_static_libstdcxx" = xno; then
LIBCXX="$LIBCXX -lstdc++"
LDCXX="$CXX"
STATIC_CXX_SETTING="STATIC_CXX=false"
AC_MSG_RESULT([dynamic])
else
LIBCXX="$LIBCXX $STATIC_STDCXX_FLAGS"
LDCXX="$CC"
STATIC_CXX_SETTING="STATIC_CXX=true"
AC_MSG_RESULT([static])
fi
fi
AC_SUBST(STATIC_CXX_SETTING)
# libCrun is the c++ runtime-library with SunStudio (roughly the equivalent of gcc's libstdc++.so)
if test "x$OPENJDK_TARGET_OS" = xsolaris && test "x$LIBCXX" = x; then
LIBCXX="/usr/lib${LEGACY_OPENJDK_TARGET_CPU3}/libCrun.so.1"
LIBCXX="/usr/lib${OPENJDK_TARGET_CPU_ISADIR}/libCrun.so.1"
fi
# TODO better (platform agnostic) test

View File

@@ -23,279 +23,96 @@
# questions.
#
AC_DEFUN([PLATFORM_EXTRACT_TARGET_AND_BUILD_AND_LEGACY_VARS],
[
# Expects $host_os $host_cpu $build_os and $build_cpu
# and $with_target_bits to have been setup!
#
# Translate the standard triplet(quadruplet) definition
# of the target/build system into
# OPENJDK_TARGET_OS=aix,bsd,hpux,linux,macosx,solaris,windows
# OPENJDK_TARGET_OS_FAMILY=bsd,gnu,sysv,win32,wince
# OPENJDK_TARGET_OS_API=posix,winapi
#
# OPENJDK_TARGET_CPU=ia32,x64,sparc,sparcv9,arm,arm64,ppc,ppc64
# OPENJDK_TARGET_CPU_ARCH=x86,sparc,pcc,arm
# OPENJDK_TARGET_CPU_BITS=32,64
# OPENJDK_TARGET_CPU_ENDIAN=big,little
#
# The same values are setup for BUILD_...
#
# And the legacy variables, for controlling the old makefiles.
# LEGACY_OPENJDK_TARGET_CPU1=i586,amd64/x86_64,sparc,sparcv9,arm,arm64...
# LEGACY_OPENJDK_TARGET_CPU2=i386,amd64,sparc,sparcv9,arm,arm64...
# LEGACY_OPENJDK_TARGET_CPU3=sparcv9,amd64 (but only on solaris)
# LEGACY_OPENJDK_TARGET_OS_API=solaris,windows
#
# We also copy the autoconf trip/quadruplet
# verbatim to OPENJDK_TARGET_SYSTEM (from the autoconf "host") and OPENJDK_BUILD_SYSTEM
OPENJDK_TARGET_SYSTEM="$host"
OPENJDK_BUILD_SYSTEM="$build"
AC_SUBST(OPENJDK_TARGET_SYSTEM)
AC_SUBST(OPENJDK_BUILD_SYSTEM)
PLATFORM_EXTRACT_VARS_FROM_OS_TO(OPENJDK_TARGET,$host_os)
PLATFORM_EXTRACT_VARS_FROM_CPU_TO(OPENJDK_TARGET,$host_cpu)
PLATFORM_EXTRACT_VARS_FROM_OS_TO(OPENJDK_BUILD,$build_os)
PLATFORM_EXTRACT_VARS_FROM_CPU_TO(OPENJDK_BUILD,$build_cpu)
if test "x$OPENJDK_TARGET_OS" != xsolaris; then
LEGACY_OPENJDK_TARGET_CPU3=""
LEGACY_OPENJDK_BUILD_CPU3=""
fi
# On MacOSX and MacOSX only, we have a different name for the x64 CPU in ARCH (LEGACY_OPENJDK_TARGET_CPU1) ...
if test "x$OPENJDK_TARGET_OS" = xmacosx && test "x$OPENJDK_TARGET_CPU" = xx64; then
LEGACY_OPENJDK_TARGET_CPU1="x86_64"
fi
PLATFORM_SET_RELEASE_FILE_OS_VALUES
])
AC_DEFUN([PLATFORM_EXTRACT_VARS_FROM_OS_TO],
[
PLATFORM_EXTRACT_VARS_FROM_OS($2)
$1_OS="$VAR_OS"
$1_OS_FAMILY="$VAR_OS_FAMILY"
$1_OS_API="$VAR_OS_API"
AC_SUBST($1_OS)
AC_SUBST($1_OS_FAMILY)
AC_SUBST($1_OS_API)
if test "x$$1_OS_API" = xposix; then
LEGACY_$1_OS_API="solaris"
fi
if test "x$$1_OS_API" = xwinapi; then
LEGACY_$1_OS_API="windows"
fi
AC_SUBST(LEGACY_$1_OS_API)
])
AC_DEFUN([PLATFORM_EXTRACT_VARS_FROM_CPU_TO],
[
PLATFORM_EXTRACT_VARS_FROM_CPU($2)
$1_CPU="$VAR_CPU"
$1_CPU_ARCH="$VAR_CPU_ARCH"
$1_CPU_BITS="$VAR_CPU_BITS"
$1_CPU_ENDIAN="$VAR_CPU_ENDIAN"
AC_SUBST($1_CPU)
AC_SUBST($1_CPU_ARCH)
AC_SUBST($1_CPU_BITS)
AC_SUBST($1_CPU_ENDIAN)
# Also store the legacy naming of the cpu.
# Ie i586 and amd64 instead of ia32 and x64
LEGACY_$1_CPU1="$VAR_LEGACY_CPU"
AC_SUBST(LEGACY_$1_CPU1)
# And the second legacy naming of the cpu.
# Ie i386 and amd64 instead of ia32 and x64.
LEGACY_$1_CPU2="$LEGACY_$1_CPU1"
if test "x$LEGACY_$1_CPU1" = xi586; then
LEGACY_$1_CPU2=i386
fi
AC_SUBST(LEGACY_$1_CPU2)
# And the third legacy naming of the cpu.
# Ie only amd64 or sparcv9, used for the ISA_DIR on Solaris.
LEGACY_$1_CPU3=""
if test "x$$1_CPU" = xx64; then
LEGACY_$1_CPU3=amd64
fi
if test "x$$1_CPU" = xsparcv9; then
LEGACY_$1_CPU3=sparcv9
fi
AC_SUBST(LEGACY_$1_CPU3)
])
# Support macro for PLATFORM_EXTRACT_TARGET_AND_BUILD.
# Converts autoconf style CPU name to OpenJDK style, into
# VAR_CPU, VAR_CPU_ARCH, VAR_CPU_BITS and VAR_CPU_ENDIAN.
AC_DEFUN([PLATFORM_EXTRACT_VARS_FROM_CPU],
[
# First argument is the cpu name from the trip/quad
case "$1" in
x86_64)
VAR_CPU=x64
VAR_CPU=x86_64
VAR_CPU_ARCH=x86
VAR_CPU_BITS=64
VAR_CPU_ENDIAN=little
VAR_LEGACY_CPU=amd64
;;
i?86)
VAR_CPU=ia32
VAR_CPU=x86
VAR_CPU_ARCH=x86
VAR_CPU_BITS=32
VAR_CPU_ENDIAN=little
VAR_LEGACY_CPU=i586
;;
alpha*)
VAR_CPU=alpha
VAR_CPU_ARCH=alpha
VAR_CPU_BITS=64
VAR_CPU_ENDIAN=big
VAR_LEGACY_CPU=alpha
;;
arm*)
VAR_CPU=arm
VAR_CPU_ARCH=arm
VAR_CPU_BITS=32
VAR_CPU_ENDIAN=little
VAR_LEGACY_CPU=arm
;;
mips)
VAR_CPU=mips
VAR_CPU_ARCH=mips
VAR_CPU_BITS=woot
VAR_CPU_ENDIAN=woot
VAR_LEGACY_CPU=mips
;;
mipsel)
VAR_CPU=mipsel
VAR_CPU_ARCH=mips
VAR_CPU_BITS=woot
VAR_CPU_ENDIAN=woot
VAR_LEGACY_CPU=mipsel
;;
powerpc)
VAR_CPU=ppc
VAR_CPU_ARCH=ppc
VAR_CPU_BITS=32
VAR_CPU_ENDIAN=big
VAR_LEGACY_CPU=ppc
;;
powerpc64)
VAR_CPU=ppc64
VAR_CPU_ARCH=ppc
VAR_CPU_BITS=64
VAR_CPU_ENDIAN=big
VAR_LEGACY_CPU=ppc64
;;
sparc)
VAR_CPU=sparc
VAR_CPU_ARCH=sparc
VAR_CPU_BITS=32
VAR_CPU_ENDIAN=big
VAR_LEGACY_CPU=sparc
;;
sparc64)
sparcv9)
VAR_CPU=sparcv9
VAR_CPU_ARCH=sparc
VAR_CPU_BITS=64
VAR_CPU_ENDIAN=big
VAR_LEGACY_CPU=sparcv9
;;
s390)
VAR_CPU=s390
VAR_CPU_ARCH=s390
VAR_CPU_BITS=32
VAR_CPU_ENDIAN=woot
VAR_LEGACY_CPU=s390
VAR_LEGACY_CPU=s390
;;
s390x)
VAR_CPU=s390x
VAR_CPU_ARCH=s390
VAR_CPU_BITS=64
VAR_CPU_ENDIAN=woot
VAR_LEGACY_CPU=s390x
;;
*)
AC_MSG_ERROR([unsupported cpu $1])
;;
esac
# Workaround cygwin not knowing about 64 bit.
if test "x$VAR_OS" = "xwindows"; then
if test "x$PROCESSOR_IDENTIFIER" != "x"; then
PROC_ARCH=`echo $PROCESSOR_IDENTIFIER | $CUT -f1 -d' '`
case "$PROC_ARCH" in
intel64|Intel64|INTEL64|em64t|EM64T|amd64|AMD64|8664|x86_64)
VAR_CPU=x64
VAR_CPU_BITS=64
VAR_LEGACY_CPU=amd64
;;
esac
fi
fi
# on solaris x86...default seems to be 32-bit
if test "x$VAR_OS" = "xsolaris" && \
test "x$with_target_bits" = "x" && \
test "x$VAR_CPU_ARCH" = "xx86"
then
with_target_bits=32
fi
if test "x$VAR_CPU_ARCH" = "xx86"; then
if test "x$with_target_bits" = "x64"; then
VAR_CPU=x64
VAR_CPU_BITS=64
VAR_LEGACY_CPU=amd64
fi
if test "x$with_target_bits" = "x32"; then
VAR_CPU=ia32
VAR_CPU_BITS=32
VAR_LEGACY_CPU=i586
fi
fi
if test "x$VAR_CPU_ARCH" = "xsparc"; then
if test "x$with_target_bits" = "x64"; then
VAR_CPU=sparcv9
VAR_CPU_BITS=64
VAR_LEGACY_CPU=sparcv9
fi
fi
])
# Support macro for PLATFORM_EXTRACT_TARGET_AND_BUILD.
# Converts autoconf style OS name to OpenJDK style, into
# VAR_OS and VAR_OS_API.
AC_DEFUN([PLATFORM_EXTRACT_VARS_FROM_OS],
[
case "$1" in
*linux*)
VAR_OS=linux
VAR_OS_API=posix
VAR_OS_FAMILY=gnu
VAR_OS_ENV=linux
;;
*solaris*)
VAR_OS=solaris
VAR_OS_API=posix
VAR_OS_FAMILY=sysv
VAR_OS_ENV=solaris
;;
*darwin*)
VAR_OS=macosx
VAR_OS_API=posix
VAR_OS_FAMILY=bsd
VAR_OS_ENV=macosx
;;
*bsd*)
VAR_OS=bsd
VAR_OS_API=posix
VAR_OS_FAMILY=bsd
VAR_OS_ENV=bsd
;;
*cygwin*|*windows*)
*cygwin*)
VAR_OS=windows
VAR_OS_API=winapi
VAR_OS_FAMILY=windows
VAR_OS_ENV=windows.cygwin
;;
*mingw*)
VAR_OS=windows
VAR_OS_API=winapi
VAR_OS_ENV=windows.msys
;;
*)
AC_MSG_ERROR([unsupported operating system $1])
@@ -303,6 +120,220 @@ AC_DEFUN([PLATFORM_EXTRACT_VARS_FROM_OS],
esac
])
# Expects $host_os $host_cpu $build_os and $build_cpu
# and $with_target_bits to have been setup!
#
# Translate the standard triplet(quadruplet) definition
# of the target/build system into OPENJDK_TARGET_OS, OPENJDK_TARGET_CPU,
# OPENJDK_BUILD_OS, etc.
AC_DEFUN([PLATFORM_EXTRACT_TARGET_AND_BUILD],
[
# Copy the autoconf trip/quadruplet verbatim to OPENJDK_TARGET_AUTOCONF_NAME
# (from the autoconf "host") and OPENJDK_BUILD_AUTOCONF_NAME
# Note that we might later on rewrite e.g. OPENJDK_TARGET_CPU due to reduced build,
# but this will not change the value of OPENJDK_TARGET_AUTOCONF_NAME.
OPENJDK_TARGET_AUTOCONF_NAME="$host"
OPENJDK_BUILD_AUTOCONF_NAME="$build"
AC_SUBST(OPENJDK_TARGET_AUTOCONF_NAME)
AC_SUBST(OPENJDK_BUILD_AUTOCONF_NAME)
# Convert the autoconf OS/CPU value to our own data, into the VAR_OS/CPU variables.
PLATFORM_EXTRACT_VARS_FROM_OS($build_os)
PLATFORM_EXTRACT_VARS_FROM_CPU($build_cpu)
# ..and setup our own variables. (Do this explicitely to facilitate searching)
OPENJDK_BUILD_OS="$VAR_OS"
OPENJDK_BUILD_OS_API="$VAR_OS_API"
OPENJDK_BUILD_OS_ENV="$VAR_OS_ENV"
OPENJDK_BUILD_CPU="$VAR_CPU"
OPENJDK_BUILD_CPU_ARCH="$VAR_CPU_ARCH"
OPENJDK_BUILD_CPU_BITS="$VAR_CPU_BITS"
OPENJDK_BUILD_CPU_ENDIAN="$VAR_CPU_ENDIAN"
AC_SUBST(OPENJDK_BUILD_OS)
AC_SUBST(OPENJDK_BUILD_OS_API)
AC_SUBST(OPENJDK_BUILD_CPU)
AC_SUBST(OPENJDK_BUILD_CPU_ARCH)
AC_SUBST(OPENJDK_BUILD_CPU_BITS)
AC_SUBST(OPENJDK_BUILD_CPU_ENDIAN)
AC_MSG_CHECKING([openjdk-build os-cpu])
AC_MSG_RESULT([$OPENJDK_BUILD_OS-$OPENJDK_BUILD_CPU])
# Convert the autoconf OS/CPU value to our own data, into the VAR_OS/CPU variables.
PLATFORM_EXTRACT_VARS_FROM_OS($host_os)
PLATFORM_EXTRACT_VARS_FROM_CPU($host_cpu)
# ... and setup our own variables. (Do this explicitely to facilitate searching)
OPENJDK_TARGET_OS="$VAR_OS"
OPENJDK_TARGET_OS_API="$VAR_OS_API"
OPENJDK_TARGET_OS_ENV="$VAR_OS_ENV"
OPENJDK_TARGET_CPU="$VAR_CPU"
OPENJDK_TARGET_CPU_ARCH="$VAR_CPU_ARCH"
OPENJDK_TARGET_CPU_BITS="$VAR_CPU_BITS"
OPENJDK_TARGET_CPU_ENDIAN="$VAR_CPU_ENDIAN"
AC_SUBST(OPENJDK_TARGET_OS)
AC_SUBST(OPENJDK_TARGET_OS_API)
AC_SUBST(OPENJDK_TARGET_CPU)
AC_SUBST(OPENJDK_TARGET_CPU_ARCH)
AC_SUBST(OPENJDK_TARGET_CPU_BITS)
AC_SUBST(OPENJDK_TARGET_CPU_ENDIAN)
AC_MSG_CHECKING([openjdk-target os-cpu])
AC_MSG_RESULT([$OPENJDK_TARGET_OS-$OPENJDK_TARGET_CPU])
])
# Check if a reduced build (32-bit on 64-bit platforms) is requested, and modify behaviour
# accordingly. Must be done after setting up build and target system, but before
# doing anything else with these values.
AC_DEFUN([PLATFORM_SETUP_TARGET_CPU_BITS],
[
AC_ARG_WITH(target-bits, [AS_HELP_STRING([--with-target-bits],
[build 32-bit or 64-bit binaries (for platforms that support it), e.g. --with-target-bits=32 @<:@guessed@:>@])])
# We have three types of compiles:
# native == normal compilation, target system == build system
# cross == traditional cross compilation, target system != build system; special toolchain needed
# reduced == using native compilers, but with special flags (e.g. -m32) to produce 32-bit builds on 64-bit machines
#
if test "x$OPENJDK_BUILD_AUTOCONF_NAME" != "x$OPENJDK_TARGET_AUTOCONF_NAME"; then
# We're doing a proper cross-compilation
COMPILE_TYPE="cross"
else
COMPILE_TYPE="native"
fi
if test "x$with_target_bits" != x; then
if test "x$COMPILE_TYPE" = "xcross"; then
AC_MSG_ERROR([It is not possible to combine --with-target-bits=X and proper cross-compilation. Choose either.])
fi
if test "x$with_target_bits" = x32 && test "x$OPENJDK_TARGET_CPU_BITS" = x64; then
# A reduced build is requested
COMPILE_TYPE="reduced"
OPENJDK_TARGET_CPU_BITS=32
if test "x$OPENJDK_TARGET_CPU_ARCH" = "xx86"; then
OPENJDK_TARGET_CPU=x86
elif test "x$OPENJDK_TARGET_CPU_ARCH" = "xsparc"; then
OPENJDK_TARGET_CPU=sparc
else
AC_MSG_ERROR([Reduced build (--with-target-bits=32) is only supported on x86_64 and sparcv9])
fi
elif test "x$with_target_bits" = x64 && test "x$OPENJDK_TARGET_CPU_BITS" = x32; then
AC_MSG_ERROR([It is not possible to use --with-target-bits=64 on a 32 bit system. Use proper cross-compilation instead.])
elif test "x$with_target_bits" = "x$OPENJDK_TARGET_CPU_BITS"; then
AC_MSG_NOTICE([--with-target-bits are set to build platform address size; argument has no meaning])
else
AC_MSG_ERROR([--with-target-bits can only be 32 or 64, you specified $with_target_bits!])
fi
fi
AC_SUBST(COMPILE_TYPE)
AC_MSG_CHECKING([compilation type])
AC_MSG_RESULT([$COMPILE_TYPE])
])
# Setup the legacy variables, for controlling the old makefiles.
#
AC_DEFUN([PLATFORM_SETUP_LEGACY_VARS],
[
# Also store the legacy naming of the cpu.
# Ie i586 and amd64 instead of x86 and x86_64
OPENJDK_TARGET_CPU_LEGACY="$OPENJDK_TARGET_CPU"
if test "x$OPENJDK_TARGET_CPU" = xx86; then
OPENJDK_TARGET_CPU_LEGACY="i586"
elif test "x$OPENJDK_TARGET_OS" != xmacosx && test "x$OPENJDK_TARGET_CPU" = xx86_64; then
# On all platforms except MacOSX replace x86_64 with amd64.
OPENJDK_TARGET_CPU_LEGACY="amd64"
fi
AC_SUBST(OPENJDK_TARGET_CPU_LEGACY)
# And the second legacy naming of the cpu.
# Ie i386 and amd64 instead of x86 and x86_64.
OPENJDK_TARGET_CPU_LEGACY_LIB="$OPENJDK_TARGET_CPU"
if test "x$OPENJDK_TARGET_CPU" = xx86; then
OPENJDK_TARGET_CPU_LEGACY_LIB="i386"
elif test "x$OPENJDK_TARGET_CPU" = xx86_64; then
OPENJDK_TARGET_CPU_LEGACY_LIB="amd64"
fi
AC_SUBST(OPENJDK_TARGET_CPU_LEGACY_LIB)
# This is the name of the cpu (but using i386 and amd64 instead of
# x86 and x86_64, respectively), preceeded by a /, to be used when
# locating libraries. On macosx, it's empty, though.
OPENJDK_TARGET_CPU_LIBDIR="/$OPENJDK_TARGET_CPU_LEGACY_LIB"
if test "x$OPENJDK_TARGET_OS" = xmacosx; then
OPENJDK_TARGET_CPU_LIBDIR=""
fi
AC_SUBST(OPENJDK_TARGET_CPU_LIBDIR)
# OPENJDK_TARGET_CPU_ISADIR is normally empty. On 64-bit Solaris systems, it is set to
# /amd64 or /sparcv9. This string is appended to some library paths, like this:
# /usr/lib${OPENJDK_TARGET_CPU_ISADIR}/libexample.so
OPENJDK_TARGET_CPU_ISADIR=""
if test "x$OPENJDK_TARGET_OS" = xsolaris; then
if test "x$OPENJDK_TARGET_CPU" = xx86_64; then
OPENJDK_TARGET_CPU_ISADIR="/amd64"
elif test "x$OPENJDK_TARGET_CPU" = xsparcv9; then
OPENJDK_TARGET_CPU_ISADIR="/sparcv9"
fi
fi
AC_SUBST(OPENJDK_TARGET_CPU_ISADIR)
# Setup OPENJDK_TARGET_CPU_OSARCH, which is used to set the os.arch Java system property
OPENJDK_TARGET_CPU_OSARCH="$OPENJDK_TARGET_CPU"
if test "x$OPENJDK_TARGET_OS" = xlinux && test "x$OPENJDK_TARGET_CPU" = xx86; then
# On linux only, we replace x86 with i386.
OPENJDK_TARGET_CPU_OSARCH="i386"
elif test "x$OPENJDK_TARGET_OS" != xmacosx && test "x$OPENJDK_TARGET_CPU" = xx86_64; then
# On all platforms except macosx, we replace x86_64 with amd64.
OPENJDK_TARGET_CPU_OSARCH="amd64"
fi
AC_SUBST(OPENJDK_TARGET_CPU_OSARCH)
OPENJDK_TARGET_CPU_JLI="$OPENJDK_TARGET_CPU"
if test "x$OPENJDK_TARGET_CPU" = xx86; then
OPENJDK_TARGET_CPU_JLI="i386"
elif test "x$OPENJDK_TARGET_OS" != xmacosx && test "x$OPENJDK_TARGET_CPU" = xx86_64; then
# On all platforms except macosx, we replace x86_64 with amd64.
OPENJDK_TARGET_CPU_JLI="amd64"
fi
# Now setup the -D flags for building libjli.
OPENJDK_TARGET_CPU_JLI_CFLAGS="-DLIBARCHNAME='\"$OPENJDK_TARGET_CPU_JLI\"'"
if test "x$OPENJDK_TARGET_OS" = xsolaris; then
if test "x$OPENJDK_TARGET_CPU_ARCH" = xsparc; then
OPENJDK_TARGET_CPU_JLI_CFLAGS="$OPENJDK_TARGET_CPU_JLI_CFLAGS -DLIBARCH32NAME='\"sparc\"' -DLIBARCH64NAME='\"sparcv9\"'"
elif test "x$OPENJDK_TARGET_CPU_ARCH" = xx86; then
OPENJDK_TARGET_CPU_JLI_CFLAGS="$OPENJDK_TARGET_CPU_JLI_CFLAGS -DLIBARCH32NAME='\"i386\"' -DLIBARCH64NAME='\"amd64\"'"
fi
fi
AC_SUBST(OPENJDK_TARGET_CPU_JLI_CFLAGS)
# Setup OPENJDK_TARGET_OS_API_DIR, used in source paths.
if test "x$OPENJDK_TARGET_OS_API" = xposix; then
OPENJDK_TARGET_OS_API_DIR="solaris"
fi
if test "x$OPENJDK_TARGET_OS_API" = xwinapi; then
OPENJDK_TARGET_OS_API_DIR="windows"
fi
AC_SUBST(OPENJDK_TARGET_OS_API_DIR)
if test "x$OPENJDK_TARGET_CPU_BITS" = x64; then
A_LP64="LP64:="
# -D_LP64=1 is only set on linux and mac. Setting on windows causes diff in
# unpack200.exe
if test "x$OPENJDK_TARGET_OS" = xlinux || test "x$OPENJDK_TARGET_OS" = xmacosx; then
ADD_LP64="-D_LP64=1"
fi
fi
AC_SUBST(LP64,$A_LP64)
if test "x$COMPILE_TYPE" = "xcross"; then
# FIXME: ... or should this include reduced builds..?
DEFINE_CROSS_COMPILE_ARCH="CROSS_COMPILE_ARCH:=$OPENJDK_TARGET_CPU_LEGACY"
else
DEFINE_CROSS_COMPILE_ARCH=""
fi
AC_SUBST(DEFINE_CROSS_COMPILE_ARCH)
])
AC_DEFUN([PLATFORM_SET_RELEASE_FILE_OS_VALUES],
[
if test "x$OPENJDK_TARGET_OS" = "xsolaris"; then
@@ -315,7 +346,11 @@ AC_DEFUN([PLATFORM_SET_RELEASE_FILE_OS_VALUES],
fi
if test "x$OPENJDK_TARGET_OS" = "xwindows"; then
REQUIRED_OS_NAME=Windows
REQUIRED_OS_VERSION=5.1
if test "x$OPENJDK_TARGET_CPU_BITS" = "x64"; then
REQUIRED_OS_VERSION=5.2
else
REQUIRED_OS_VERSION=5.1
fi
fi
if test "x$OPENJDK_TARGET_OS" = "xmacosx"; then
REQUIRED_OS_NAME=Darwin
@@ -338,42 +373,10 @@ AC_CANONICAL_BUILD
AC_CANONICAL_HOST
AC_CANONICAL_TARGET
AC_ARG_WITH(target-bits, [AS_HELP_STRING([--with-target-bits],
[build 32-bit or 64-bit binaries (for platforms that support it), e.g. --with-target-bits=32 @<:@guessed@:>@])])
if test "x$with_target_bits" != x && \
test "x$with_target_bits" != x32 && \
test "x$with_target_bits" != x64 ; then
AC_MSG_ERROR([--with-target-bits can only be 32 or 64, you specified $with_target_bits!])
fi
# Translate the standard cpu-vendor-kernel-os quadruplets into
# the new TARGET_.... and BUILD_... and the legacy names used by
# the openjdk build.
# It uses $host_os $host_cpu $build_os $build_cpu and $with_target_bits
PLATFORM_EXTRACT_TARGET_AND_BUILD_AND_LEGACY_VARS
# The LEGACY_OPENJDK_TARGET_CPU3 is the setting for ISA_DIR.
if test "x$LEGACY_OPENJDK_TARGET_CPU3" != x; then
LEGACY_OPENJDK_TARGET_CPU3="/${LEGACY_OPENJDK_TARGET_CPU3}"
fi
# Now the following vars are defined.
# OPENJDK_TARGET_OS=aix,bsd,hpux,linux,macosx,solaris,windows
# OPENJDK_TARGET_OS_FAMILY=bsd,gnu,sysv,win32,wince
# OPENJDK_TARGET_OS_API=posix,winapi
#
# OPENJDK_TARGET_CPU=ia32,x64,sparc,sparcv9,arm,arm64,ppc,ppc64
# OPENJDK_TARGET_CPU_ARCH=x86,sparc,pcc,arm
# OPENJDK_TARGET_CPU_BITS=32,64
# OPENJDK_TARGET_CPU_ENDIAN=big,little
#
# There is also a:
# LEGACY_OPENJDK_TARGET_CPU1=i586,amd64,.... # used to set the old var ARCH
# LEGACY_OPENJDK_TARGET_CPU2=i386,amd64,.... # used to set the old var LIBARCH
# LEGACY_OPENJDK_TARGET_CPU3=only sparcv9,amd64 # used to set the ISA_DIR on Solaris
# There was also a BUILDARCH that had i486,amd64,... but we do not use that
# in the new build.
# LEGACY_OPENJDK_TARGET_OS_API=solaris,windows # used to select source roots
PLATFORM_EXTRACT_TARGET_AND_BUILD
PLATFORM_SETUP_TARGET_CPU_BITS
PLATFORM_SET_RELEASE_FILE_OS_VALUES
PLATFORM_SETUP_LEGACY_VARS
])
AC_DEFUN_ONCE([PLATFORM_SETUP_OPENJDK_BUILD_OS_VERSION],
@@ -391,7 +394,26 @@ AC_SUBST(OS_VERSION_MINOR)
AC_SUBST(OS_VERSION_MICRO)
])
AC_DEFUN_ONCE([PLATFORM_TEST_OPENJDK_TARGET_BITS],
# Support macro for PLATFORM_SETUP_OPENJDK_TARGET_BITS.
# Add -mX to various FLAGS variables.
AC_DEFUN([PLATFORM_SET_COMPILER_TARGET_BITS_FLAGS],
[
# keep track of c/cxx flags that we added outselves...
# to prevent emitting warning...
ADDED_CFLAGS=" -m${OPENJDK_TARGET_CPU_BITS}"
ADDED_CXXFLAGS=" -m${OPENJDK_TARGET_CPU_BITS}"
ADDED_LDFLAGS=" -m${OPENJDK_TARGET_CPU_BITS}"
CFLAGS="${CFLAGS}${ADDED_CFLAGS}"
CXXFLAGS="${CXXFLAGS}${ADDED_CXXFLAGS}"
LDFLAGS="${LDFLAGS}${ADDED_LDFLAGS}"
CFLAGS_JDK="${CFLAGS_JDK}${ADDED_CFLAGS}"
CXXFLAGS_JDK="${CXXFLAGS_JDK}${ADDED_CXXFLAGS}"
LDFLAGS_JDK="${LDFLAGS_JDK}${ADDED_LDFLAGS}"
])
AC_DEFUN_ONCE([PLATFORM_SETUP_OPENJDK_TARGET_BITS],
[
###############################################################################
#
@@ -399,72 +421,47 @@ AC_DEFUN_ONCE([PLATFORM_TEST_OPENJDK_TARGET_BITS],
# (The JVM can use 32 or 64 bit Java pointers but that decision
# is made at runtime.)
#
AC_LANG_PUSH(C++)
OLD_CXXFLAGS="$CXXFLAGS"
if test "x$OPENJDK_TARGET_OS" != xwindows && test "x$with_target_bits" != x; then
CXXFLAGS="-m${with_target_bits} $CXXFLAGS"
if test "x$OPENJDK_TARGET_OS" = xsolaris; then
# Always specify -m flags on Solaris
PLATFORM_SET_COMPILER_TARGET_BITS_FLAGS
elif test "x$COMPILE_TYPE" = xreduced; then
if test "x$OPENJDK_TARGET_OS" != xwindows; then
# Specify -m if running reduced on other Posix platforms
PLATFORM_SET_COMPILER_TARGET_BITS_FLAGS
fi
fi
# Make compilation sanity check
AC_CHECK_HEADERS([stdio.h], , [
AC_MSG_NOTICE([Failed to compile stdio.h. This likely implies missing compile dependencies.])
if test "x$COMPILE_TYPE" = xreduced; then
AC_MSG_NOTICE([You are doing a reduced build. Check that you have 32-bit libraries installed.])
elif test "x$COMPILE_TYPE" = xcross; then
AC_MSG_NOTICE([You are doing a cross-compilation. Check that you have all target platform libraries installed.])
fi
AC_MSG_ERROR([Cannot continue.])
])
AC_CHECK_SIZEOF([int *], [1111])
CXXFLAGS="$OLD_CXXFLAGS"
AC_LANG_POP(C++)
# keep track of c/cxx flags that we added outselves...
# to prevent emitting warning...
ADDED_CFLAGS=
ADDED_CXXFLAGS=
ADDED_LDFLAGS=
if test "x$SIZEOF_INT_P" != "x$ac_cv_sizeof_int_p"; then
# Workaround autoconf bug, see http://lists.gnu.org/archive/html/autoconf/2010-07/msg00004.html
SIZEOF_INT_P="$ac_cv_sizeof_int_p"
fi
if test "x$ac_cv_sizeof_int_p" = x0; then
# The test failed, lets pick the assumed value.
ARCH_DATA_MODEL=$OPENJDK_TARGET_CPU_BITS
if test "x$SIZEOF_INT_P" = x; then
# The test failed, lets stick to the assumed value.
AC_MSG_WARN([The number of bits in the target could not be determined, using $OPENJDK_TARGET_CPU_BITS.])
else
ARCH_DATA_MODEL=`expr 8 \* $ac_cv_sizeof_int_p`
TESTED_TARGET_CPU_BITS=`expr 8 \* $SIZEOF_INT_P`
if test "x$OPENJDK_TARGET_OS" != xwindows && test "x$with_target_bits" != x; then
ADDED_CFLAGS=" -m${with_target_bits}"
ADDED_CXXFLAGS=" -m${with_target_bits}"
ADDED_LDFLAGS=" -m${with_target_bits}"
CFLAGS="${CFLAGS}${ADDED_CFLAGS}"
CXXFLAGS="${CXXFLAGS}${ADDED_CXXFLAGS}"
LDFLAGS="${LDFLAGS}${ADDED_LDFLAGS}"
CFLAGS_JDK="${CFLAGS_JDK}${ADDED_CFLAGS}"
CXXFLAGS_JDK="${CXXFLAGS_JDK}${ADDED_CXXFLAGS}"
LDFLAGS_JDK="${LDFLAGS_JDK}${ADDED_LDFLAGS}"
if test "x$TESTED_TARGET_CPU_BITS" != "x$OPENJDK_TARGET_CPU_BITS"; then
AC_MSG_ERROR([The tested number of bits in the target ($TESTED_TARGET_CPU_BITS) differs from the number of bits expected to be found in the target ($OPENJDK_TARGET_CPU_BITS)])
fi
fi
if test "x$ARCH_DATA_MODEL" = x64; then
A_LP64="LP64:="
ADD_LP64="-D_LP64=1"
fi
AC_MSG_CHECKING([for target address size])
AC_MSG_RESULT([$ARCH_DATA_MODEL bits])
AC_SUBST(LP64,$A_LP64)
AC_SUBST(ARCH_DATA_MODEL)
if test "x$ARCH_DATA_MODEL" != "x$OPENJDK_TARGET_CPU_BITS"; then
AC_MSG_ERROR([The tested number of bits in the target ($ARCH_DATA_MODEL) differs from the number of bits expected to be found in the target ($OPENJDK_TARGET_CPU_BITS)])
fi
#
# NOTE: check for -mstackrealign needs to be below potential addition of -m32
#
if test "x$OPENJDK_TARGET_CPU_BITS" = x32 && test "x$OPENJDK_TARGET_OS" = xmacosx; then
# On 32-bit MacOSX the OS requires C-entry points to be 16 byte aligned.
# While waiting for a better solution, the current workaround is to use -mstackrealign.
CFLAGS="$CFLAGS -mstackrealign"
AC_MSG_CHECKING([if 32-bit compiler supports -mstackrealign])
AC_LINK_IFELSE([AC_LANG_SOURCE([[int main() { return 0; }]])],
[
AC_MSG_RESULT([yes])
],
[
AC_MSG_RESULT([no])
AC_MSG_ERROR([The selected compiler $CXX does not support -mstackrealign! Try to put another compiler in the path.])
])
fi
AC_MSG_RESULT([$OPENJDK_TARGET_CPU_BITS bits])
])
AC_DEFUN_ONCE([PLATFORM_SETUP_OPENJDK_TARGET_ENDIANNESS],
@@ -478,21 +475,7 @@ AC_C_BIGENDIAN([ENDIAN="big"],[ENDIAN="little"],[ENDIAN="unknown"],[ENDIAN="univ
if test "x$ENDIAN" = xuniversal_endianness; then
AC_MSG_ERROR([Building with both big and little endianness is not supported])
fi
if test "x$ENDIAN" = xunknown; then
ENDIAN="$OPENJDK_TARGET_CPU_ENDIAN"
fi
if test "x$ENDIAN" != "x$OPENJDK_TARGET_CPU_ENDIAN"; then
AC_MSG_WARN([The tested endian in the target ($ENDIAN) differs from the endian expected to be found in the target ($OPENJDK_TARGET_CPU_ENDIAN)])
ENDIAN="$OPENJDK_TARGET_CPU_ENDIAN"
AC_MSG_ERROR([The tested endian in the target ($ENDIAN) differs from the endian expected to be found in the target ($OPENJDK_TARGET_CPU_ENDIAN)])
fi
AC_SUBST(ENDIAN)
])
AC_DEFUN_ONCE([PLATFORM_SETUP_OPENJDK_TARGET_ISADIR],
[
###############################################################################
#
# Could someone enlighten this configure script with a comment about libCrun?
#
#
])

View File

@@ -250,31 +250,27 @@ fi
AC_DEFUN_ONCE([SRCDIRS_SETUP_OUTPUT_DIRS],
[
LANGTOOLS_OUTPUTDIR="$OUTPUT_ROOT/langtools"
CORBA_OUTPUTDIR="$OUTPUT_ROOT/corba"
JAXP_OUTPUTDIR="$OUTPUT_ROOT/jaxp"
JAXWS_OUTPUTDIR="$OUTPUT_ROOT/jaxws"
HOTSPOT_OUTPUTDIR="$OUTPUT_ROOT/hotspot"
JDK_OUTPUTDIR="$OUTPUT_ROOT/jdk"
IMAGES_OUTPUTDIR="$OUTPUT_ROOT/images"
BUILD_OUTPUT="$OUTPUT_ROOT"
AC_SUBST(BUILD_OUTPUT)
AC_SUBST(LANGTOOLS_OUTPUTDIR)
AC_SUBST(CORBA_OUTPUTDIR)
AC_SUBST(JAXP_OUTPUTDIR)
AC_SUBST(JAXWS_OUTPUTDIR)
AC_SUBST(HOTSPOT_OUTPUTDIR)
AC_SUBST(JDK_OUTPUTDIR)
AC_SUBST(IMAGES_OUTPUTDIR)
LANGTOOLS_DIST="$OUTPUT_ROOT/langtools/dist"
CORBA_DIST="$OUTPUT_ROOT/corba/dist"
JAXP_DIST="$OUTPUT_ROOT/jaxp/dist"
JAXWS_DIST="$OUTPUT_ROOT/jaxws/dist"
HOTSPOT_DIST="$OUTPUT_ROOT/hotspot/dist"
AC_SUBST(LANGTOOLS_DIST)
AC_SUBST(CORBA_DIST)
AC_SUBST(JAXP_DIST)
AC_SUBST(JAXWS_DIST)
BUILD_HOTSPOT=true
AC_SUBST(HOTSPOT_DIST)
AC_SUBST(BUILD_HOTSPOT)
AC_ARG_WITH(import-hotspot, [AS_HELP_STRING([--with-import-hotspot],
[import hotspot binaries from this jdk image or hotspot build dist dir instead of building from source])])
if test "x$with_import_hotspot" != x; then
CURDIR="$PWD"
cd "$with_import_hotspot"
HOTSPOT_DIST="`pwd`"
cd "$CURDIR"
if ! (test -d $HOTSPOT_DIST/lib && test -d $HOTSPOT_DIST/jre/lib); then
AC_MSG_ERROR([You have to import hotspot from a full jdk image or hotspot build dist dir!])
fi
AC_MSG_CHECKING([if hotspot should be imported])
AC_MSG_RESULT([yes from $HOTSPOT_DIST])
BUILD_HOTSPOT=false
fi
JDK_OUTPUTDIR="$OUTPUT_ROOT/jdk"
])

View File

@@ -1,5 +1,5 @@
#
# Copyright (c) 2011, 2012, Oracle and/or its affiliates. All rights reserved.
# Copyright (c) 2011, 2013, 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
@@ -23,7 +23,11 @@
# questions.
#
# Configured @DATE_WHEN_CONFIGURED@ to build for a @OPENJDK_TARGET_SYSTEM@ system,
# Configured @DATE_WHEN_CONFIGURED@ to build
# for target system @OPENJDK_TARGET_OS@-@OPENJDK_TARGET_CPU@
# (called @OPENJDK_TARGET_AUTOCONF_NAME@ by autoconf)
# on build system @OPENJDK_BUILD_OS@-@OPENJDK_BUILD_CPU@
# (called @OPENJDK_BUILD_AUTOCONF_NAME@ by autoconf)
# using 'configure @CONFIGURE_COMMAND_LINE@'
# When calling macros, the spaces between arguments are
@@ -37,9 +41,18 @@ SQUOTE:='
#'
DQUOTE:="
#"
define NEWLINE:=
define NEWLINE
endef
# A self-referential reference to this file.
SPEC:=@SPEC@
# Specify where the spec file is.
MAKE_ARGS="SPEC=$(SPEC)"
MAKE:=@MAKE@
# Pass along the verbosity setting.
ifeq (,$(findstring VERBOSE=,$(MAKE)))
@@ -51,40 +64,38 @@ ifeq (,$(findstring -R,$(MAKE)))
MAKE:=$(MAKE) -R
endif
# Specify where the spec file is.
ifeq (,$(findstring SPEC=,$(MAKE)))
MAKE:=$(MAKE) SPEC=@SPEC@
endif
# Specify where the common include directory for makefiles is.
ifeq (,$(findstring -I @SRC_ROOT@/common/makefiles,$(MAKE)))
MAKE:=$(MAKE) -I @SRC_ROOT@/common/makefiles
endif
# A self-referential reference to this file.
SPEC:=@SPEC@
# The "human readable" name of this configuration
CONF_NAME:=@CONF_NAME@
# The built jdk will run in this target system.
OPENJDK_TARGET_SYSTEM:=@OPENJDK_TARGET_SYSTEM@
OPENJDK_TARGET_OS:=@OPENJDK_TARGET_OS@
OPENJDK_TARGET_OS_FAMILY:=@OPENJDK_TARGET_OS_FAMILY@
OPENJDK_TARGET_OS_API:=@OPENJDK_TARGET_OS_API@
OPENJDK_TARGET_OS_ENV:=@OPENJDK_TARGET_OS_ENV@
OPENJDK_TARGET_CPU:=@OPENJDK_TARGET_CPU@
OPENJDK_TARGET_CPU_ARCH:=@OPENJDK_TARGET_CPU_ARCH@
OPENJDK_TARGET_CPU_BITS:=@OPENJDK_TARGET_CPU_BITS@
OPENJDK_TARGET_CPU_ENDIAN:=@OPENJDK_TARGET_CPU_ENDIAN@
COMPILE_TYPE:=@COMPILE_TYPE@
# Legacy support
OPENJDK_TARGET_CPU_ISADIR:=@OPENJDK_TARGET_CPU_ISADIR@
OPENJDK_TARGET_CPU_LIBDIR:=@OPENJDK_TARGET_CPU_LIBDIR@
OPENJDK_TARGET_CPU_LEGACY:=@OPENJDK_TARGET_CPU_LEGACY@
OPENJDK_TARGET_CPU_LEGACY_LIB:=@OPENJDK_TARGET_CPU_LEGACY_LIB@
OPENJDK_TARGET_CPU_OSARCH:=@OPENJDK_TARGET_CPU_OSARCH@
OPENJDK_TARGET_CPU_JLI_CFLAGS:=@OPENJDK_TARGET_CPU_JLI_CFLAGS@
OPENJDK_TARGET_OS_API_DIR:=@OPENJDK_TARGET_OS_API_DIR@
# We are building on this build system.
# When not cross-compiling, it is the same as the target.
OPENJDK_BUILD_SYSTEM:=@OPENJDK_BUILD_SYSTEM@
OPENJDK_BUILD_OS:=@OPENJDK_BUILD_OS@
OPENJDK_BUILD_OS_FAMILY:=@OPENJDK_BUILD_OS_FAMILY@
OPENJDK_BUILD_OS_API:=@OPENJDK_BUILD_OS_API@
OPENJDK_BUILD_CPU:=@OPENJDK_BUILD_CPU@
@@ -96,32 +107,22 @@ OPENJDK_BUILD_CPU_ENDIAN:=@OPENJDK_BUILD_CPU_ENDIAN@
REQUIRED_OS_NAME:=@REQUIRED_OS_NAME@
REQUIRED_OS_VERSION:=@REQUIRED_OS_VERSION@
# Old name for OPENJDK_TARGET_OS (aix,bsd,hpux,linux,macosx,solaris,windows etc)
PLATFORM:=@OPENJDK_TARGET_OS@
# Old name for OPENJDK_TARGET_CPU, uses i586 and amd64, instead of ia32 and x64.
ARCH:=@LEGACY_OPENJDK_TARGET_CPU1@
# Yet another name for arch used for an extra subdir below the jvm lib.
# Uses i386 and amd64, instead of ia32 and x64.
LIBARCH:=@LEGACY_OPENJDK_TARGET_CPU2@
# Use to switch between solaris and windows subdirs in the jdk.
LEGACY_OPENJDK_TARGET_OS_API:=@LEGACY_OPENJDK_TARGET_OS_API@
# 32 or 64 bit
ARCH_DATA_MODEL:=@OPENJDK_TARGET_CPU_BITS@
# Legacy setting for building for a 64 bit machine.
# If yes then this expands to _LP64:=1
@LP64@
ENDIAN:=@OPENJDK_TARGET_CPU_ENDIAN@
@SET_OPENJDK@
JIGSAW:=@JIGSAW@
LIBM:=-lm
LIBDL:=@LIBDL@
# colon or semicolon
PATH_SEP:=@PATH_SEP@
# Set special env variables, to be passed to external tools.
# Used for cygwin setups.
@SETUPDEVENV@
ifeq ($(OPENJDK_TARGET_OS), windows)
# On Windows, the Visual Studio toolchain needs the LIB and INCLUDE
# environment variables (in Windows path style), and the PATH needs to
# be adjusted to include Visual Studio tools (but this needs to be in
# cygwin/msys style).
export PATH:=@VS_PATH@
export INCLUDE:=@VS_INCLUDE@
export LIB:=@VS_LIB@
endif
# The sys root where standard headers and libraries are found.
# Usually not needed since the configure script should have
@@ -134,7 +135,6 @@ ADD_SRC_ROOT:=@ADD_SRC_ROOT@
OVERRIDE_SRC_ROOT:=@OVERRIDE_SRC_ROOT@
TOPDIR:=@SRC_ROOT@
OUTPUT_ROOT:=@OUTPUT_ROOT@
JDK_MAKE_SHARED_DIR:=@JDK_TOPDIR@/makefiles/common/shared
JDK_TOPDIR:=@JDK_TOPDIR@
LANGTOOLS_TOPDIR:=@LANGTOOLS_TOPDIR@
CORBA_TOPDIR:=@CORBA_TOPDIR@
@@ -143,6 +143,9 @@ JAXWS_TOPDIR:=@JAXWS_TOPDIR@
HOTSPOT_TOPDIR:=@HOTSPOT_TOPDIR@
COPYRIGHT_YEAR:=@COPYRIGHT_YEAR@
# Location where build customization files may be found
CUSTOM_MAKE_DIR:=@CUSTOM_MAKE_DIR@
# Information gathered from the version.numbers file.
JDK_MAJOR_VERSION:=@JDK_MAJOR_VERSION@
JDK_MINOR_VERSION:=@JDK_MINOR_VERSION@
@@ -155,14 +158,27 @@ PRODUCT_NAME:=@PRODUCT_NAME@
PRODUCT_SUFFIX:=@PRODUCT_SUFFIX@
JDK_RC_PLATFORM_NAME:=@JDK_RC_PLATFORM_NAME@
COMPANY_NAME:=@COMPANY_NAME@
MACOSX_BUNDLE_NAME_BASE=@MACOSX_BUNDLE_NAME_BASE@
MACOSX_BUNDLE_ID_BASE=@MACOSX_BUNDLE_ID_BASE@
# Different version strings generated from the above information.
JDK_VERSION:=@JDK_VERSION@
RUNTIME_NAME:=@RUNTIME_NAME@
FULL_VERSION:=@FULL_VERSION@
JRE_RELEASE_VERSION:=@FULL_VERSION@
RELEASE:=@RELEASE@
RUNTIME_NAME=$(PRODUCT_NAME) $(PRODUCT_SUFFIX)
COOKED_BUILD_NUMBER:=@COOKED_BUILD_NUMBER@
# These variables need to be generated here so that MILESTONE and
# JDK_BUILD_NUMBER can be overridden on the make command line.
ifeq ($(MILESTONE),)
RELEASE=$(JDK_VERSION)$(BUILD_VARIANT_RELEASE)
else
RELEASE=$(JDK_VERSION)-$(MILESTONE)$(BUILD_VARIANT_RELEASE)
endif
ifeq ($(JDK_BUILD_NUMBER),b00)
USER_RELEASE_SUFFIX=@USER_RELEASE_SUFFIX@
FULL_VERSION=$(RELEASE)-$(USER_RELEASE_SUFFIX)-$(JDK_BUILD_NUMBER)
else
FULL_VERSION=$(RELEASE)-$(JDK_BUILD_NUMBER)
endif
JRE_RELEASE_VERSION:=$(FULL_VERSION)
# How to compile the code: release, fastdebug or slowdebug
DEBUG_LEVEL:=@DEBUG_LEVEL@
@@ -171,76 +187,65 @@ DEBUG_LEVEL:=@DEBUG_LEVEL@
# The JDK variant is a name for a specific set of modules to be compiled for the JDK.
JDK_VARIANT:=@JDK_VARIANT@
# Legacy defines controlling the JDK variant embedded.
@JAVASE_EMBEDDED@
@MINIMIZE_RAM_USAGE@
# Should we compile support for running with a graphical UI? (ie headful)
# Should we compile support for running without? (ie headless)
SUPPORT_HEADFUL:=@SUPPORT_HEADFUL@
SUPPORT_HEADLESS:=@SUPPORT_HEADLESS@
# Legacy defines controlled by the SUPPORT_HEADLESS and SUPPORT_HEADFUL options.
@BUILD_HEADLESS@
@BUILD_HEADLESS_ONLY@
# These are the libjvms that we want to build.
# The java launcher uses the default.
# The other can be selected by specifying -client -server -kernel -zero or -zeroshark
# The others can be selected by specifying -client -server -minimal1 -kernel -zero or -zeroshark
# on the java launcher command line.
JVM_VARIANTS:=@JVM_VARIANTS@
JVM_VARIANT_SERVER:=@JVM_VARIANT_SERVER@
JVM_VARIANT_CLIENT:=@JVM_VARIANT_CLIENT@
JVM_VARIANT_MINIMAL1:=@JVM_VARIANT_MINIMAL1@
JVM_VARIANT_KERNEL:=@JVM_VARIANT_KERNEL@
JVM_VARIANT_ZERO:=@JVM_VARIANT_ZERO@
JVM_VARIANT_ZEROSHARK:=@JVM_VARIANT_ZEROSHARK@
# Legacy setting: OPT or DBG
VARIANT:=@VARIANT@
# Legacy setting: true or false
FASTDEBUG:=@FASTDEBUG@
# Legacy setting: debugging the class files?
DEBUG_CLASSFILES:=@DEBUG_CLASSFILES@
# Universal binaries on macosx
MACOSX_UNIVERSAL=@MACOSX_UNIVERSAL@
# Legacy setting: -debug or -fastdebug
# Still used in version string...
BUILD_VARIANT_RELEASE:=@BUILD_VARIANT_RELEASE@
LANGTOOLS_OUTPUTDIR:=@LANGTOOLS_OUTPUTDIR@
CORBA_OUTPUTDIR:=@CORBA_OUTPUTDIR@
JAXP_OUTPUTDIR:=@JAXP_OUTPUTDIR@
JAXWS_OUTPUTDIR:=@JAXWS_OUTPUTDIR@
HOTSPOT_OUTPUTDIR:=@HOTSPOT_OUTPUTDIR@
# This where a working jvm is built.
# JDK_OUTPUTDIR specifies where a working jvm is built.
# You can run $(JDK_OUTPUTDIR)/bin/java
# Though the layout of the contents of $(JDK_OUTPUTDIR) is not
# yet the same as a default installation.
JDK_OUTPUTDIR:=@OUTPUT_ROOT@/jdk
#
# When you run "make install" it will create the standardized
# layout for the jdk and the jre inside the images subdir.
# layout for the jdk and the jre inside the IMAGES_OUTPUTDIR subdir.
# Then it will copy the contents of the jdk into the installation
# directory.
IMAGES_OUTPUTDIR:=@OUTPUT_ROOT@/images
LANGTOOLS_DIST:=@LANGTOOLS_DIST@
CORBA_DIST:=@CORBA_DIST@
JAXP_DIST:=@JAXP_DIST@
JAXWS_DIST:=@JAXWS_DIST@
HOTSPOT_DIST:=@HOTSPOT_DIST@
BUILD_OUTPUT:=@BUILD_OUTPUT@
LANGTOOLS_OUTPUTDIR=$(BUILD_OUTPUT)/langtools
CORBA_OUTPUTDIR=$(BUILD_OUTPUT)/corba
JAXP_OUTPUTDIR=$(BUILD_OUTPUT)/jaxp
JAXWS_OUTPUTDIR=$(BUILD_OUTPUT)/jaxws
HOTSPOT_OUTPUTDIR=$(BUILD_OUTPUT)/hotspot
JDK_OUTPUTDIR=$(BUILD_OUTPUT)/jdk
IMAGES_OUTPUTDIR=$(BUILD_OUTPUT)/images
JCE_OUTPUTDIR=$(BUILD_OUTPUT)/jce-release
# Legacy variables used by Release.gmk
JDK_IMAGE_DIR:=$(IMAGES_OUTPUTDIR)/j2sdk-image
JRE_IMAGE_DIR:=$(IMAGES_OUTPUTDIR)/j2re-image
LANGTOOLS_DIST=$(LANGTOOLS_OUTPUTDIR)/dist
CORBA_DIST=$(CORBA_OUTPUTDIR)/dist
JAXP_DIST=$(JAXP_OUTPUTDIR)/dist
JAXWS_DIST=$(JAXWS_OUTPUTDIR)/dist
HOTSPOT_DIST=@HOTSPOT_DIST@
# Can be /sparcv9 or /amd64 on Solaris
ISA_DIR:=@LEGACY_OPENJDK_TARGET_CPU3@
BINDIR:=$(JDK_OUTPUTDIR)/bin$(ISA_DIR)
BUILD_HOTSPOT=@BUILD_HOTSPOT@
# The boot jdk to use
ALT_BOOTDIR:=@BOOT_JDK@
BOOT_JDK:=@BOOT_JDK@
BOOT_JDK_JVMARGS:=@BOOT_JDK_JVMARGS@
BOOT_RTJAR:=@BOOT_RTJAR@
BOOT_TOOLSJAR:=@BOOT_TOOLSJAR@
BOOT_TOOLSJAR=$(BOOT_JDK)/lib/tools.jar
# When compiling Java source to be run by the boot jdk
# use these extra flags, eg -source 6 -target 6
@@ -248,30 +253,12 @@ BOOT_JDK_SOURCETARGET:=@BOOT_JDK_SOURCETARGET@
# Information about the build system
NUM_CORES:=@NUM_CORES@
# This is used from the jdk build for C/C++ code.
PARALLEL_COMPILE_JOBS:=@CONCURRENT_BUILD_JOBS@
# Store javac server synchronization files here, and
# the javac server log files.
JAVAC_SERVERS:=@JAVAC_SERVERS@
# Should we use a javac server or not? The javac server gives
# an enormous performance improvement since it reduces the
# startup costs of javac and reuses as much as possible of intermediate
# compilation work. But if we want to compile with a non-Java
# javac compiler, like gcj. Then we cannot use javac server and
# this variable is set to false.
JAVAC_USE_REMOTE:=@JAVAC_USE_REMOTE@
# We can block the Javac server to never use more cores than this.
# This is not for performance reasons, but for memory usage, since each
# core requires its own JavaCompiler. We might have 64 cores and 4GB
# of memory, 64 JavaCompilers will currently not fit in a 3GB heap.
# Since there is no sharing of data between the JavaCompilers.
JAVAC_SERVER_CORES:=@JAVAC_SERVER_CORES@
# Should we use dependency tracking between Java packages? true or false.
JAVAC_USE_DEPS:=@JAVAC_USE_DEPS@
# We can invoke javac: SINGLE_THREADED_BATCH or MULTI_CORE_CONCURRENT
JAVAC_USE_MODE:=@JAVAC_USE_MODE@
# Enable not yet complete sjavac support.
# Enable sjavac support = use a javac server,
# multi core javac compilation and dependency tracking.
ENABLE_SJAVAC:=@ENABLE_SJAVAC@
# Store sjavac server synchronization files here, and
# the sjavac server log files.
SJAVAC_SERVER_DIR:=@SJAVAC_SERVER_DIR@
# The OpenJDK makefiles should be changed to using the standard
# configure output ..._CFLAGS and ..._LIBS. In the meantime we
@@ -280,7 +267,6 @@ FREETYPE2_LIB_PATH:=@FREETYPE2_LIB_PATH@
FREETYPE2_LIBS:=@FREETYPE2_LIBS@
FREETYPE2_CFLAGS:=@FREETYPE2_CFLAGS@
USING_SYSTEM_FT_LIB=@USING_SYSTEM_FT_LIB@
ALT_CUPS_HEADERS_PATH:=$(patsubst -I%,%,$(filter -I%,@CUPS_CFLAGS@))
CUPS_CFLAGS:=@CUPS_CFLAGS@
PACKAGE_PATH=@PACKAGE_PATH@
@@ -288,13 +274,17 @@ PACKAGE_PATH=@PACKAGE_PATH@
# Source file for cacerts
CACERTS_FILE=@CACERTS_FILE@
#MOZILLA_HEADERS_PATH:=
# Enable unlimited crypto policy
UNLIMITED_CRYPTO=@UNLIMITED_CRYPTO@
# Necessary additional compiler flags to compile X11
X_CFLAGS:=@X_CFLAGS@
X_LIBS:=@X_LIBS@
OPENWIN_HOME:=@OPENWIN_HOME@
# The lowest required version of macosx to enforce compatiblity for
MACOSX_REQUIRED_VERSION=@MACOSX_REQUIRED_VERSION@
# There are two types: CC or CL
# CC is gcc and others behaving reasonably similar.
# CL is cl.exe only.
@@ -319,7 +309,7 @@ C_FLAG_DEPS:=@C_FLAG_DEPS@
CXX_FLAG_DEPS:=@CXX_FLAG_DEPS@
# Tools that potentially need to be cross compilation aware.
CC:=@UNCYGDRIVE@ @CCACHE@ @CC@
CC:=@FIXPATH@ @CCACHE@ @CC@
# CFLAGS used to compile the jdk native libraries (C-code)
CFLAGS_JDKLIB:=@CFLAGS_JDKLIB@
@@ -329,17 +319,17 @@ CXXFLAGS_JDKLIB:=@CXXFLAGS_JDKLIB@
CFLAGS_JDKEXE:=@CFLAGS_JDKEXE@
CXXFLAGS_JDKEXE:=@CXXFLAGS_JDKEXE@
CXX:=@UNCYGDRIVE@ @CCACHE@ @CXX@
CXX:=@FIXPATH@ @CCACHE@ @CXX@
#CXXFLAGS:=@CXXFLAGS@
OBJC:=@CCACHE@ @OBJC@
#OBJCFLAGS:=@OBJCFLAGS@
CPP:=@UNCYGDRIVE@ @CPP@
CPP:=@FIXPATH@ @CPP@
#CPPFLAGS:=@CPPFLAGS@
# The linker can be gcc or ld on posix systems, or link.exe on winapi systems.
LD:=@UNCYGDRIVE@ @LD@
# The linker can be gcc or ld on posix systems, or link.exe on windows systems.
LD:=@FIXPATH@ @LD@
# LDFLAGS used to link the jdk native libraries (C-code)
LDFLAGS_JDKLIB:=@LDFLAGS_JDKLIB@
@@ -347,42 +337,39 @@ LDFLAGS_JDKLIB_SUFFIX:=@LDFLAGS_JDKLIB_SUFFIX@
# On some platforms the linker cannot be used to create executables, thus
# the need for a separate LDEXE command.
LDEXE:=@UNCYGDRIVE@ @LDEXE@
LDEXE:=@FIXPATH@ @LDEXE@
# LDFLAGS used to link the jdk native launchers (C-code)
LDFLAGS_JDKEXE:=@LDFLAGS_JDKEXE@
LDFLAGS_JDKEXE_SUFFIX:=@LDFLAGS_JDKEXE_SUFFIX@
# LDFLAGS specific to C++ linking.
LDFLAGS_CXX_JDK:=@LDFLAGS_CXX_JDK@
# Sometimes a different linker is needed for c++ libs
LDCXX:=@UNCYGDRIVE@ @LDCXX@
LDCXX:=@FIXPATH@ @LDCXX@
# The flags for linking libstdc++ linker.
LIBCXX:=@LIBCXX@
# Sometimes a different linker is needed for c++ executables
LDEXECXX:=@UNCYGDRIVE@ @LDEXECXX@
LDEXECXX:=@FIXPATH@ @LDEXECXX@
# If cross compiling, then define CROSS_COMPILE_ARCH:=cpu_name here.
@DEFINE_CROSS_COMPILE_ARCH@
# The HOSTCC should really be named BUILDCC, ie build executable for
# the build platform. Same as CC when not cross compiling.
HOSTCC:=@UNCYGDRIVE@ @HOSTCC@
HOSTCXX:=@UNCYGDRIVE@ @HOSTCXX@
# And of course, the jdk spells HOSTCC as NIO_CC/HOST_CC
HOST_CC:=@UNCYGDRIVE@ @HOSTCC@
NIO_CC:=@UNCYGDRIVE@ @HOSTCC@
# BUILD_CC/BUILD_LD is a compiler/linker that generates code that is runnable on the
# build platform.
BUILD_CC:=@FIXPATH@ @BUILD_CC@
BUILD_LD:=@FIXPATH@ @BUILD_LD@
HOST_LD:=@UNCYGDRIVE@ @HOSTLD@
AS:=@FIXPATH@ @AS@
AS:=@UNCYGDRIVE@ @AS@
ASFLAGS:=@ASFLAGS@
# AR is used to create a static library (is ar in posix, lib.exe in winapi)
AR:=@UNCYGDRIVE@ @AR@
# AR is used to create a static library (is ar in posix, lib.exe in windows)
AR:=@FIXPATH@ @AR@
ARFLAGS:=@ARFLAGS@
NM:=@UNCYGDRIVE@ @NM@
STRIP:=@UNCYGDRIVE@ @STRIP@
MCS:=@UNCYGDRIVE@ @MCS@
NM:=@NM@
STRIP:=@STRIP@
MCS:=@MCS@
LIPO:=@LIPO@
# Command to create a shared library
SHARED_LIBRARY_FLAGS:=@SHARED_LIBRARY_FLAGS@
@@ -414,6 +401,7 @@ SET_SHARED_LIBRARY_NAME=@SET_SHARED_LIBRARY_NAME@
# Set origin using the linker, ie use the relative path to the dependent library to find the dependees.
# (Note absence of := assignment, because we do not want to evaluate the macro body here)
SET_SHARED_LIBRARY_ORIGIN=@SET_SHARED_LIBRARY_ORIGIN@
SET_EXECUTABLE_ORIGIN=@SET_EXECUTABLE_ORIGIN@
# Different OS:es have different ways of naming shared libraries.
# The SHARED_LIBRARY macro takes "verify" as and argument and returns:
@@ -432,21 +420,28 @@ POST_MCS_CMD:=@POST_MCS_CMD@
JAVA_FLAGS:=@BOOT_JDK_JVMARGS@
JAVA=@UNCYGDRIVE@ @JAVA@ $(JAVA_FLAGS)
JAVA=@FIXPATH@ $(BOOT_JDK)/bin/java $(JAVA_FLAGS)
JAVAC:=@UNCYGDRIVE@ @JAVAC@
JAVAC_FLAGS:=@JAVAC_FLAGS@
JAVAC=@FIXPATH@ $(BOOT_JDK)/bin/javac
# Hotspot sets this variable before reading the SPEC when compiling sa-jdi.jar. Avoid
# overriding that value by using ?=.
JAVAC_FLAGS?=@JAVAC_FLAGS@
JAVAH:=@UNCYGDRIVE@ @JAVAH@
JAVAH=@FIXPATH@ $(BOOT_JDK)/bin/javah
JAR:=@UNCYGDRIVE@ @JAR@
JAR=@FIXPATH@ $(BOOT_JDK)/bin/jar
RMIC:=@UNCYGDRIVE@ @RMIC@
RMIC=@FIXPATH@ $(BOOT_JDK)/bin/rmic
NATIVE2ASCII:=@UNCYGDRIVE@ @NATIVE2ASCII@
NATIVE2ASCII=@FIXPATH@ $(BOOT_JDK)/bin/native2ascii
BOOT_JAR_CMD:=@UNCYGDRIVE@ @JAR@
BOOT_JAR_JFLAGS:=
JARSIGNER=@FIXPATH@ $(BOOT_JDK)/bin/jarsigner
# You run the new javac using the boot jdk with $(BOOT_JDK)/bin/java $(NEW_JAVAC) ...
BOOTSTRAP_JAVAC_JAR:=$(LANGTOOLS_OUTPUTDIR)/dist/bootstrap/lib/javac.jar
BOOTSTRAP_JAVAC_ARGS:="-Xbootclasspath/p:$(BOOTSTRAP_JAVAC_JAR)" -cp $(BOOTSTRAP_JAVAC_JAR)
NEW_JAVAC = $(BOOTSTRAP_JAVAC_ARGS) com.sun.tools.javac.Main
NEW_JAVADOC = $(BOOTSTRAP_JAVAC_ARGS) com.sun.tools.javadoc.Main
# Base flags for RC
# Guarding this against resetting value. Legacy make files include spec multiple
@@ -456,22 +451,25 @@ RC_FLAGS:=@RC_FLAGS@
endif
# A specific java binary with specific options can be used to run
# the long running background javac server and other long running tasks.
SERVER_JAVA:=@UNCYGDRIVE@ @SERVER_JAVA@
# the long running background sjavac servers and other long running tasks.
SJAVAC_SERVER_JAVA:=@FIXPATH@ @SJAVAC_SERVER_JAVA@
# Tools adhering to a minimal and common standard of posix compliance.
AWK:=@AWK@
BASENAME:=@BASENAME@
BASH:=@BASH@
CAT:=@CAT@
CCACHE:=@CCACHE@
# CD is going away, but remains to cater for legacy makefiles.
CD:=cd
CHMOD:=@CHMOD@
COMM:=@COMM@
CP:=@CP@
CPIO:=@CPIO@
CUT:=@CUT@
DATE:=@DATE@
DF:=@DF@
DIFF:=@DIFF@
DIRNAME:=@DIRNAME@
FIND:=@FIND@
FIND_DELETE:=@FIND_DELETE@
ECHO:=@ECHO@
@@ -493,16 +491,18 @@ SORT:=@SORT@
TAR:=@TAR@
TAIL:=@TAIL@
TEE:=@TEE@
TIME:=@TIME@
TR:=@TR@
TOUCH:=@TOUCH@
UNIQ:=@UNIQ@
WC:=@WC@
XARGS:=@XARGS@
ZIPEXE:=@ZIP@
ZIP:=@ZIP@
UNZIP:=@UNZIP@
MT:=@UNCYGDRIVE@ @MT@
RC:=@UNCYGDRIVE@ @RC@
DUMPBIN:=@UNCYGDRIVE@ @DUMPBIN@
MT:=@FIXPATH@ @MT@
RC:=@FIXPATH@ @RC@
DUMPBIN:=@FIXPATH@ @DUMPBIN@
CYGPATH:=@CYGPATH@
LDD:=@LDD@
OTOOL:=@OTOOL@
@@ -511,25 +511,29 @@ EXPR:=@EXPR@
FILE:=@FILE@
HG:=@HG@
OBJCOPY:=@OBJCOPY@
SETFILE:=@SETFILE@
UNCYGDRIVE:=@UNCYGDRIVE@
FIXPATH:=@FIXPATH@
# Where the build output is stored for your convenience.
BUILD_LOG:=@BUILD_LOG@
BUILD_LOG_PREVIOUS:=@BUILD_LOG_PREVIOUS@
BUILD_LOG_WRAPPER:=@BUILD_LOG_WRAPPER@
# Disable the build log wrapper on sjavac+winapi until
# we have solved how to prevent the log wrapper to wait
# for the background sjavac server process.
ifeq (@ENABLE_SJAVAC@X@OPENJDK_BUILD_OS_API@,yesXwinapi)
BUILD_LOG_WRAPPER:=
else
BUILD_LOG_WRAPPER:=@BUILD_LOG_WRAPPER@
endif
# Build setup
ENABLE_DOCS:=@ENABLE_DOCS@
GENERATE_DOCS:=@ENABLE_DOCS@
DISABLE_NIMBUS:=@DISABLE_NIMBUS@
ENABLE_JFR=@ENABLE_JFR@
USE_EXTERNAL_LIBJPEG:=@USE_EXTERNAL_LIBJPEG@
USE_EXTERNAL_LIBGIF:=@USE_EXTERNAL_LIBGIF@
USE_EXTERNAL_LIBZ:=@USE_EXTERNAL_LIBZ@
LIBZIP_CAN_USE_MMAP:=@LIBZIP_CAN_USE_MMAP@
CHECK_FOR_VCINSTALLDIR=@CHECK_FOR_VCINSTALLDIR@
MSVCRNN_DLL:=@MSVCR100DLL@
MSVCR_DLL:=@MSVCR_DLL@
# ADD_SRCS takes a single argument with source roots
@@ -559,17 +563,6 @@ else
OVR_SRCS:=
endif
####################################################
#
# Legacy Hotspot support
HOTSPOT_DIST:=@HOTSPOT_DIST@
HOTSPOT_MAKE_ARGS:=@HOTSPOT_MAKE_ARGS@
# This is used from the libjvm build for C/C++ code.
HOTSPOT_BUILD_JOBS:=@CONCURRENT_BUILD_JOBS@
# Control wether Hotspot runs Queens test after building
TEST_IN_BUILD=@TEST_IN_BUILD@
####################################################
#
# INSTALLATION
@@ -634,5 +627,21 @@ OS_VERSION_MAJOR:=@OS_VERSION_MAJOR@
OS_VERSION_MINOR:=@OS_VERSION_MINOR@
OS_VERSION_MICRO:=@OS_VERSION_MICRO@
# Include the closed-spec.gmk file if it exists
-include $(dir @SPEC@)/closed-spec.gmk
# Images directory definitions
JDK_IMAGE_SUBDIR:=j2sdk-image
JRE_IMAGE_SUBDIR:=j2re-image
JDK_OVERLAY_IMAGE_SUBDIR:=j2sdk-overlay-image
JRE_OVERLAY_IMAGE_SUBDIR:=j2re-overlay-image
JDK_IMAGE_DIR:=$(IMAGES_OUTPUTDIR)/$(JDK_IMAGE_SUBDIR)
JRE_IMAGE_DIR:=$(IMAGES_OUTPUTDIR)/$(JRE_IMAGE_SUBDIR)
JDK_OVERLAY_IMAGE_DIR:=$(IMAGES_OUTPUTDIR)/$(JDK_OVERLAY_IMAGE_SUBDIR)
JRE_OVERLAY_IMAGE_DIR:=$(IMAGES_OUTPUTDIR)/$(JRE_OVERLAY_IMAGE_SUBDIR)
# Macosx bundles directory definitions
JDK_BUNDLE_SUBDIR:=j2sdk-bundle/jdk$(JDK_VERSION).jdk/Contents
JRE_BUNDLE_SUBDIR:=j2re-bundle/jre$(JDK_VERSION).jre/Contents
JDK_BUNDLE_DIR:=$(IMAGES_OUTPUTDIR)/$(JDK_BUNDLE_SUBDIR)
JRE_BUNDLE_DIR:=$(IMAGES_OUTPUTDIR)/$(JRE_BUNDLE_SUBDIR)
# Include the custom-spec.gmk file if it exists
-include $(dir @SPEC@)/custom-spec.gmk

View File

@@ -23,505 +23,14 @@
# questions.
#
# Configured"@DATE_WHEN_CONFIGURED@ to build for a @OPENJDK_TARGET_SYSTEM@ system,
# using 'configure @CONFIGURE_COMMAND_LINE@'
# The "human readable" name of this configuration
CONF_NAME="@CONF_NAME@"
# The built jdk will run in this target system.
OPENJDK_TARGET_SYSTEM="@OPENJDK_TARGET_SYSTEM@"
OPENJDK_TARGET_OS="@OPENJDK_TARGET_OS@"
OPENJDK_TARGET_OS_FAMILY="@OPENJDK_TARGET_OS_FAMILY@"
OPENJDK_TARGET_OS_API="@OPENJDK_TARGET_OS_API@"
OPENJDK_TARGET_CPU="@OPENJDK_TARGET_CPU@"
OPENJDK_TARGET_CPU_ARCH="@OPENJDK_TARGET_CPU_ARCH@"
OPENJDK_TARGET_CPU_BITS="@OPENJDK_TARGET_CPU_BITS@"
OPENJDK_TARGET_CPU_ENDIAN="@OPENJDK_TARGET_CPU_ENDIAN@"
# We are building on this build system.
# When not cross-compiling, it is the same as the target.
OPENJDK_BUILD_SYSTEM="@OPENJDK_BUILD_SYSTEM@"
OPENJDK_BUILD_OS="@OPENJDK_BUILD_OS@"
OPENJDK_BUILD_OS_FAMILY="@OPENJDK_BUILD_OS_FAMILY@"
OPENJDK_BUILD_OS_API="@OPENJDK_BUILD_OS_API@"
OPENJDK_BUILD_CPU="@OPENJDK_BUILD_CPU@"
OPENJDK_BUILD_CPU_ARCH="@OPENJDK_BUILD_CPU_ARCH@"
OPENJDK_BUILD_CPU_BITS="@OPENJDK_BUILD_CPU_BITS@"
OPENJDK_BUILD_CPU_ENDIAN="@OPENJDK_BUILD_CPU_ENDIAN@"
# Legacy OS values for use in release file.
REQUIRED_OS_NAME="@REQUIRED_OS_NAME@"
REQUIRED_OS_VERSION="@REQUIRED_OS_VERSION@"
# Old name for OPENJDK_TARGET_OS (aix,bsd,hpux,linux,macosx,solaris,windows etc)
PLATFORM="@OPENJDK_TARGET_OS@"
# Old name for OPENJDK_TARGET_CPU, uses i586 and amd64, instead of ia32 and x64.
ARCH="@LEGACY_OPENJDK_TARGET_CPU1@"
# Yet another name for arch used for an extra subdir below the jvm lib.
# Uses i386 and amd64, instead of ia32 and x64.
LIBARCH="@LEGACY_OPENJDK_TARGET_CPU2@"
# Use to switch between solaris and windows subdirs in the jdk.
LEGACY_OPENJDK_TARGET_OS_API="@LEGACY_OPENJDK_TARGET_OS_API@"
# 32 or 64 bit
ARCH_DATA_MODEL="@OPENJDK_TARGET_CPU_BITS@"
# Legacy setting for building for a 64 bit machine.
# If yes then this expands to _LP64=1
ENDIAN="@OPENJDK_TARGET_CPU_ENDIAN@"
JIGSAW="@JIGSAW@"
LIBM=-lm
LIBDL="@LIBDL@"
# colon or semicolon
PATH_SEP="@PATH_SEP@"
# The sys root where standard headers and libraries are found.
# Usually not needed since the configure script should have
# taken it into account already when setting CFLAGS et al.
SYS_ROOT="@SYS_ROOT@"
# Paths to the source code
SRC_ROOT="@SRC_ROOT@"
ADD_SRC_ROOT="@ADD_SRC_ROOT@"
OVERRIDE_SRC_ROOT="@OVERRIDE_SRC_ROOT@"
TOPDIR="@SRC_ROOT@"
OUTPUT_ROOT="@OUTPUT_ROOT@"
JDK_MAKE_SHARED_DIR="@JDK_TOPDIR@"/makefiles/common/shared
JDK_TOPDIR="@JDK_TOPDIR@"
LANGTOOLS_TOPDIR="@LANGTOOLS_TOPDIR@"
CORBA_TOPDIR="@CORBA_TOPDIR@"
JAXP_TOPDIR="@JAXP_TOPDIR@"
JAXWS_TOPDIR="@JAXWS_TOPDIR@"
HOTSPOT_TOPDIR="@HOTSPOT_TOPDIR@"
COPYRIGHT_YEAR="@COPYRIGHT_YEAR@"
# Information gathered from the version.numbers file.
JDK_MAJOR_VERSION="@JDK_MAJOR_VERSION@"
JDK_MINOR_VERSION="@JDK_MINOR_VERSION@"
JDK_MICRO_VERSION="@JDK_MICRO_VERSION@"
JDK_UPDATE_VERSION="@JDK_UPDATE_VERSION@"
JDK_BUILD_NUMBER="@JDK_BUILD_NUMBER@"
MILESTONE="@MILESTONE@"
LAUNCHER_NAME="@LAUNCHER_NAME@"
PRODUCT_NAME="@PRODUCT_NAME@"
PRODUCT_SUFFIX="@PRODUCT_SUFFIX@"
JDK_RC_PLATFORM_NAME="@JDK_RC_PLATFORM_NAME@"
COMPANY_NAME="@COMPANY_NAME@"
# Different version strings generated from the above information.
JDK_VERSION="@JDK_VERSION@"
RUNTIME_NAME="@RUNTIME_NAME@"
FULL_VERSION="@FULL_VERSION@"
JRE_RELEASE_VERSION="@FULL_VERSION@"
RELEASE="@RELEASE@"
COOKED_BUILD_NUMBER="@COOKED_BUILD_NUMBER@"
# How to compile the code: release, fastdebug or slowdebug
DEBUG_LEVEL="@DEBUG_LEVEL@"
# This is the JDK variant to build.
# The JDK variant is a name for a specific set of modules to be compiled for the JDK.
JDK_VARIANT="@JDK_VARIANT@"
# Should we compile support for running with a graphical UI? (ie headful)
# Should we compile support for running without? (ie headless)
SUPPORT_HEADFUL="@SUPPORT_HEADFUL@"
SUPPORT_HEADLESS="@SUPPORT_HEADLESS@"
# These are the libjvms that we want to build.
# The java launcher uses the default.
# The other can be selected by specifying -client -server -kernel -zero or -zeroshark
# on the java launcher command line.
JVM_VARIANTS="@JVM_VARIANTS@"
JVM_VARIANT_SERVER="@JVM_VARIANT_SERVER@"
JVM_VARIANT_CLIENT="@JVM_VARIANT_CLIENT@"
JVM_VARIANT_KERNEL="@JVM_VARIANT_KERNEL@"
JVM_VARIANT_ZERO="@JVM_VARIANT_ZERO@"
JVM_VARIANT_ZEROSHARK="@JVM_VARIANT_ZEROSHARK@"
# Legacy setting: OPT or DBG
VARIANT="@VARIANT@"
# Legacy setting: true or false
FASTDEBUG="@FASTDEBUG@"
# Legacy setting: debugging the class files?
DEBUG_CLASSFILES="@DEBUG_CLASSFILES@"
# Legacy setting: -debug or -fastdebug
BUILD_VARIANT_RELEASE="@BUILD_VARIANT_RELEASE@"
LANGTOOLS_OUTPUTDIR="@LANGTOOLS_OUTPUTDIR@"
CORBA_OUTPUTDIR="@CORBA_OUTPUTDIR@"
JAXP_OUTPUTDIR="@JAXP_OUTPUTDIR@"
JAXWS_OUTPUTDIR="@JAXWS_OUTPUTDIR@"
HOTSPOT_OUTPUTDIR="@HOTSPOT_OUTPUTDIR@"
# This where a working jvm is built.
# You can run ${JDK_OUTPUTDIR}/bin/java
# Though the layout of the contents of ${JDK_OUTPUTDIR} is not
# yet the same as a default installation.
JDK_OUTPUTDIR="@OUTPUT_ROOT@"/jdk
# When you run "make install" it will create the standardized
# layout for the jdk and the jre inside the images subdir.
# Then it will copy the contents of the jdk into the installation
# directory.
IMAGES_OUTPUTDIR="@OUTPUT_ROOT@"/images
LANGTOOLS_DIST="@LANGTOOLS_DIST@"
CORBA_DIST="@CORBA_DIST@"
JAXP_DIST="@JAXP_DIST@"
JAXWS_DIST="@JAXWS_DIST@"
HOTSPOT_DIST="@HOTSPOT_DIST@"
# Legacy variables used by Release.gmk
JDK_IMAGE_DIR=${IMAGES_OUTPUTDIR}/j2sdk-image
JRE_IMAGE_DIR=${IMAGES_OUTPUTDIR}/j2re-image
# Can be /sparcv9 or /amd64 on Solaris
ISA_DIR="@LEGACY_OPENJDK_TARGET_CPU3@"
BINDIR="${JDK_OUTPUTDIR}/bin${ISA_DIR}"
# The boot jdk to use
ALT_BOOTDIR="@BOOT_JDK@"
BOOT_JDK="@BOOT_JDK@"
BOOT_JDK_JVMARGS="@BOOT_JDK_JVMARGS@"
BOOT_RTJAR="@BOOT_RTJAR@"
BOOT_TOOLSJAR="@BOOT_TOOLSJAR@"
# When compiling Java source to be run by the boot jdk
# use these extra flags, eg -source 6 -target 6
BOOT_JDK_SOURCETARGET="@BOOT_JDK_SOURCETARGET@"
# Information about the build system
NUM_CORES="@NUM_CORES@"
# This is used from the jdk build for C/C++ code.
PARALLEL_COMPILE_JOBS="@CONCURRENT_BUILD_JOBS@"
# Store javac server synchronization files here, and
# the javac server log files.
JAVAC_SERVERS="@JAVAC_SERVERS@"
# Should we use a javac server or not? The javac server gives
# an enormous performance improvement since it reduces the
# startup costs of javac and reuses as much as possible of intermediate
# compilation work. But if we want to compile with a non-Java
# javac compiler, like gcj. Then we cannot use javac server and
# this variable is set to false.
JAVAC_USE_REMOTE="@JAVAC_USE_REMOTE@"
# We can block the Javac server to never use more cores than this.
# This is not for performance reasons, but for memory usage, since each
# core requires its own JavaCompiler. We might have 64 cores and 4GB
# of memory, 64 JavaCompilers will currently not fit in a 3GB heap.
# Since there is no sharing of data between the JavaCompilers.
JAVAC_SERVER_CORES="@JAVAC_SERVER_CORES@"
# Should we use dependency tracking between Java packages? true or false.
JAVAC_USE_DEPS="@JAVAC_USE_DEPS@"
# We can invoke javac: SINGLE_THREADED_BATCH or MULTI_CORE_CONCURRENT
JAVAC_USE_MODE="@JAVAC_USE_MODE@"
# Enable not yet complete sjavac support.
ENABLE_SJAVAC="@ENABLE_SJAVAC@"
# The OpenJDK makefiles should be changed to using the standard
# configure output ..._CFLAGS and ..._LIBS. In the meantime we
# extract the information here.
FREETYPE2_LIB_PATH="@FREETYPE2_LIB_PATH@"
FREETYPE2_LIBS="@FREETYPE2_LIBS@"
FREETYPE2_CFLAGS="@FREETYPE2_CFLAGS@"
USING_SYSTEM_FT_LIB="@USING_SYSTEM_FT_LIB@"
CUPS_CFLAGS="@CUPS_CFLAGS@"
PACKAGE_PATH="@PACKAGE_PATH@"
# Source file for cacerts
CACERTS_FILE="@CACERTS_FILE@"
#MOZILLA_HEADERS_PATH=
# Necessary additional compiler flags to compile X11
X_CFLAGS="@X_CFLAGS@"
X_LIBS="@X_LIBS@"
OPENWIN_HOME="@OPENWIN_HOME@"
# There are two types: CC or CL
# CC is gcc and others behaving reasonably similar.
# CL is cl.exe only.
COMPILER_TYPE="@COMPILER_TYPE@"
# Flags used for overriding the default opt setting for a C/C++ source file.
C_O_FLAG_HIGHEST="@C_O_FLAG_HIGHEST@"
C_O_FLAG_HI="@C_O_FLAG_HI@"
C_O_FLAG_NORM="@C_O_FLAG_NORM@"
C_O_FLAG_NONE="@C_O_FLAG_NONE@"
CXX_O_FLAG_HIGHEST="@CXX_O_FLAG_HIGHEST@"
CXX_O_FLAG_HI="@CXX_O_FLAG_HI@"
CXX_O_FLAG_NORM="@CXX_O_FLAG_NORM@"
CXX_O_FLAG_NONE="@CXX_O_FLAG_NONE@"
C_FLAG_DEPS="@C_FLAG_DEPS@"
CXX_FLAG_DEPS="@CXX_FLAG_DEPS@"
# Tools that potentially need to be cross compilation aware.
CC="@UNCYGDRIVE@ @CCACHE@ @CC@"
# CFLAGS used to compile the jdk native libraries (C-code)
CFLAGS_JDKLIB="@CFLAGS_JDKLIB@"
CXXFLAGS_JDKLIB="@CXXFLAGS_JDKLIB@"
# CFLAGS used to compile the jdk native launchers (C-code)
CFLAGS_JDKEXE="@CFLAGS_JDKEXE@"
CXXFLAGS_JDKEXE="@CXXFLAGS_JDKEXE@"
CXX="@UNCYGDRIVE@ @CCACHE@ @CXX@"
#CXXFLAGS="@CXXFLAGS@"
OBJC="@CCACHE@ @OBJC@"
#OBJCFLAGS="@OBJCFLAGS@"
CPP="@UNCYGDRIVE@ @CPP@"
#CPPFLAGS="@CPPFLAGS@"
# The linker can be gcc or ld on posix systems, or link.exe on winapi systems.
LD="@UNCYGDRIVE@ @LD@"
# LDFLAGS used to link the jdk native libraries (C-code)
LDFLAGS_JDKLIB="@LDFLAGS_JDKLIB@"
LDFLAGS_JDKLIB_SUFFIX="@LDFLAGS_JDKLIB_SUFFIX@"
# On some platforms the linker cannot be used to create executables, thus
# the need for a separate LDEXE command.
LDEXE="@UNCYGDRIVE@ @LDEXE@"
# LDFLAGS used to link the jdk native launchers (C-code)
LDFLAGS_JDKEXE="@LDFLAGS_JDKEXE@"
LDFLAGS_JDKEXE_SUFFIX="@LDFLAGS_JDKEXE_SUFFIX@"
# Sometimes a different linker is needed for c++ libs
LDCXX="@UNCYGDRIVE@ @LDCXX@"
# The flags for linking libstdc++ linker.
LIBCXX="@LIBCXX@"
# Sometimes a different linker is needed for c++ executables
LDEXECXX="@UNCYGDRIVE@ @LDEXECXX@"
# If cross compiling, then define CROSS_COMPILE_ARCH=cpu_name here.
# The HOSTCC should really be named BUILDCC, ie build executable for
# the build platform. Same as CC when not cross compiling.
HOSTCC="@HOSTCC@"
HOSTCXX="@HOSTCXX@"
# And of course, the jdk spells HOSTCC as NIO_CC/HOST_CC
HOST_CC="@HOSTCC@"
NIO_CC="@HOSTCC@"
AS="@AS@"
ASFLAGS="@ASFLAGS@"
# AR is used to create a static library (is ar in posix, lib.exe in winapi)
AR="@UNCYGDRIVE@ @AR@"
ARFLAGS="@ARFLAGS@"
NM="@NM@"
STRIP="@STRIP@"
MCS="@MCS@"
# Command to create a shared library
SHARED_LIBRARY_FLAGS="@SHARED_LIBRARY_FLAGS@"
# Options to linker to specify a mapfile.
# (Note absence of = assignment, because we do not want to evaluate the macro body here)
SET_SHARED_LIBRARY_MAPFILE="@SET_SHARED_LIBRARY_MAPFILE@"
# Options for C/CXX compiler to be used if linking is performed
# using reorder file
C_FLAG_REORDER="@C_FLAG_REORDER@"
CXX_FLAG_REORDER="@CXX_FLAG_REORDER@"
#
# Options for generating debug symbols
ENABLE_DEBUG_SYMBOLS="@ENABLE_DEBUG_SYMBOLS@"
CFLAGS_DEBUG_SYMBOLS="@CFLAGS_DEBUG_SYMBOLS@"
CXXFLAGS_DEBUG_SYMBOLS="@CXXFLAGS_DEBUG_SYMBOLS@"
ZIP_DEBUGINFO_FILES="@ZIP_DEBUGINFO_FILES@"
# Options to linker to specify the library name.
# (Note absence of = assignment, because we do not want to evaluate the macro body here)
SET_SHARED_LIBRARY_NAME="@SET_SHARED_LIBRARY_NAME@"
# Set origin using the linker, ie use the relative path to the dependent library to find the dependees.
# (Note absence of = assignment, because we do not want to evaluate the macro body here)
SET_SHARED_LIBRARY_ORIGIN="@SET_SHARED_LIBRARY_ORIGIN@"
# Different OS:es have different ways of naming shared libraries.
# The SHARED_LIBRARY macro takes "verify" as and argument and returns:
# "libverify.so" or "libverify.dylib" or "verify.dll" depending on platform.
# (Note absence of = assignment, because we do not want to evaluate the macro body here)
SHARED_LIBRARY="@SHARED_LIBRARY@"
STATIC_LIBRARY="@STATIC_LIBRARY@"
LIBRARY_PREFIX="@LIBRARY_PREFIX@"
SHARED_LIBRARY_SUFFIX="@SHARED_LIBRARY_SUFFIX@"
STATIC_LIBRARY_SUFFIX="@STATIC_LIBRARY_SUFFIX@"
EXE_SUFFIX="@EXE_SUFFIX@"
OBJ_SUFFIX="@OBJ_SUFFIX@"
POST_STRIP_CMD="@POST_STRIP_CMD@"
POST_MCS_CMD='@POST_MCS_CMD@'
JAVA_FLAGS="@BOOT_JDK_JVMARGS@"
JAVA="@UNCYGDRIVE@ @JAVA@ ${JAVA_FLAGS}"
JAVAC="@UNCYGDRIVE@ @JAVAC@"
JAVAC_FLAGS="@JAVAC_FLAGS@"
JAVAH="@UNCYGDRIVE@ @JAVAH@"
JAR="@UNCYGDRIVE@ @JAR@"
RMIC="@UNCYGDRIVE@ @RMIC@"
NATIVE2ASCII="@UNCYGDRIVE@ @NATIVE2ASCII@"
BOOT_JAR_CMD="@UNCYGDRIVE@ @JAR@"
BOOT_JAR_JFLAGS=
# Tools adhering to a minimal and common standard of posix compliance.
AWK="@AWK@"
CAT="@CAT@"
CCACHE="@CCACHE@"
# CD is going away, but remains to cater for legacy makefiles.
CD=cd
CHMOD="@CHMOD@"
CP="@CP@"
CPIO="@CPIO@"
CUT="@CUT@"
DATE="@DATE@"
DF="@DF@"
DIFF="@DIFF@"
FIND="@FIND@"
FIND_DELETE="@FIND_DELETE@"
ECHO="@ECHO@"
EGREP="@EGREP@"
FGREP="@FGREP@"
FIND="@FIND@"
GREP="@GREP@"
HEAD="@HEAD@"
LS="@LS@"
LN="@LN@"
MKDIR="@MKDIR@"
MV="@MV@"
NAWK="@NAWK@"
PRINTF="@PRINTF@"
PWD="@THEPWDCMD@"
RM="@RM@"
SED="@SED@"
SH="@SH@"
SORT="@SORT@"
TAR="@TAR@"
TAIL="@TAIL@"
TEE="@TEE@"
TR="@TR@"
TOUCH="@TOUCH@"
WC="@WC@"
XARGS="@XARGS@"
ZIPEXE="@ZIP@"
ZIP="@ZIP@"
UNZIP="@UNZIP@"
MT="@UNCYGDRIVE@ @MT@"
RC="@UNCYGDRIVE@ @RC@"
DUMPBIN="@UNCYGDRIVE@ @DUMPBIN@"
CYGPATH="@CYGPATH@"
LDD="@LDD@"
OTOOL="@OTOOL@"
READELF="@READELF@"
EXPR="@EXPR@"
FILE="@FILE@"
HG="@HG@"
OBJCOPY="@OBJCOPY@"
UNCYGDRIVE="@UNCYGDRIVE@"
# Build setup
ENABLE_DOCS="@ENABLE_DOCS@"
GENERATE_DOCS="@ENABLE_DOCS@"
DISABLE_NIMBUS="@DISABLE_NIMBUS@"
USE_EXTERNAL_LIBJPEG="@USE_EXTERNAL_LIBJPEG@"
USE_EXTERNAL_LIBGIF="@USE_EXTERNAL_LIBGIF@"
USE_EXTERNAL_LIBZ="@USE_EXTERNAL_LIBZ@"
LIBZIP_CAN_USE_MMAP="@LIBZIP_CAN_USE_MMAP@"
CHECK_FOR_VCINSTALLDIR="@CHECK_FOR_VCINSTALLDIR@"
MSVCRNN_DLL="@MSVCR100DLL@"
####################################################
#
# Legacy Hotspot support
HOTSPOT_DIST="@HOTSPOT_DIST@"
HOTSPOT_MAKE_ARGS="@HOTSPOT_MAKE_ARGS@"
# This is used from the libjvm build for C/C++ code.
HOTSPOT_BUILD_JOBS="@CONCURRENT_BUILD_JOBS@"
# Control wether Hotspot runs Queens test after building
TEST_IN_BUILD="@TEST_IN_BUILD@"
####################################################
#
# INSTALLATION
#
# Common prefix for all installed files. Defaults to /usr/local,
# but /opt/myjdk is another common version.
INSTALL_PREFIX="@prefix@"
# Directories containing architecture-dependent files should be relative to exec_prefix
INSTALL_EXECPREFIX="@exec_prefix@"
# java,javac,javah,javap etc are installed here.
INSTALL_BINDIR="@bindir@"
# Read only architecture-independent data
INSTALL_DATADIR="@datadir@"
# Root of above.
INSTALL_DATAROOTDIR="@datarootdir@"
# Doc files, other than info and man.
INSTALL_DOCDIR="@docdir@"
# Html documentation
INSTALL_HTMLDIR="@htmldir@"
# Installing C header files, JNI headers for example.
INSTALL_INCLUDEDIR="@includedir@"
# Installing library files....
INSTALL_INCLUDEDIR="@libdir@"
# Executables that other programs run.
INSTALL_LIBEXECDIR="@libexecdir@"
# Locale-dependent but architecture-independent data, such as message catalogs.
INSTALL_LOCALEDIR="@localedir@"
# Modifiable single-machine data
INSTALL_LOCALSTATEDIR="@localstatedir@"
# Man pages
INSTALL_MANDIR="@mandir@"
# Modifiable architecture-independent data.
INSTALL_SHAREDSTATEDIR="@sharedstatedir@"
# Read-only single-machine data
INSTALL_SYSCONFDIR="@sysconfdir@"
####################################################
#
# Misc
#
# Name of Service Agent library
SALIB_NAME="@SALIB_NAME@"
OS_VERSION_MAJOR="@OS_VERSION_MAJOR@"
OS_VERSION_MINOR="@OS_VERSION_MINOR@"
OS_VERSION_MICRO="@OS_VERSION_MICRO@"
POST_STRIP_CMD="@POST_STRIP_CMD@"

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,264 @@
#
# 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. Oracle designates this
# particular file as subject to the "Classpath" exception as provided
# by Oracle in the LICENSE file that accompanied this code.
#
# 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.
#
AC_DEFUN([TOOLCHAIN_CHECK_POSSIBLE_VISUAL_STUDIO_ROOT],
[
if test "x$VS_ENV_CMD" = x; then
VS100BASE="$1"
METHOD="$2"
BASIC_WINDOWS_REWRITE_AS_UNIX_PATH(VS100BASE)
if test -d "$VS100BASE"; then
if test -f "$VS100BASE/$VCVARSFILE"; then
AC_MSG_NOTICE([Found Visual Studio installation at $VS100BASE using $METHOD])
VS_ENV_CMD="$VS100BASE/$VCVARSFILE"
else
AC_MSG_NOTICE([Found Visual Studio installation at $VS100BASE using $METHOD])
AC_MSG_NOTICE([Warning: $VCVARSFILE is missing, this is probably Visual Studio Express. Ignoring])
fi
fi
fi
])
AC_DEFUN([TOOLCHAIN_CHECK_POSSIBLE_WIN_SDK_ROOT],
[
if test "x$VS_ENV_CMD" = x; then
WIN_SDK_BASE="$1"
METHOD="$2"
BASIC_WINDOWS_REWRITE_AS_UNIX_PATH(WIN_SDK_BASE)
if test -d "$WIN_SDK_BASE"; then
# There have been cases of partial or broken SDK installations. A missing
# lib dir is not going to work.
if test ! -d "$WIN_SDK_BASE/../lib"; then
AC_MSG_NOTICE([Found Windows SDK installation at $WIN_SDK_BASE using $METHOD])
AC_MSG_NOTICE([Warning: Installation is broken, lib dir is missing. Ignoring])
elif test -f "$WIN_SDK_BASE/SetEnv.Cmd"; then
AC_MSG_NOTICE([Found Windows SDK installation at $WIN_SDK_BASE using $METHOD])
VS_ENV_CMD="$WIN_SDK_BASE/SetEnv.Cmd"
if test "x$OPENJDK_TARGET_CPU_BITS" = x32; then
VS_ENV_ARGS="/x86"
else
VS_ENV_ARGS="/x64"
fi
else
AC_MSG_NOTICE([Found Windows SDK installation at $WIN_SDK_BASE using $METHOD])
AC_MSG_NOTICE([Warning: Installation is broken, SetEnv.Cmd is missing. Ignoring])
fi
fi
fi
])
AC_DEFUN([TOOLCHAIN_FIND_VISUAL_STUDIO_BAT_FILE],
[
if test "x$OPENJDK_TARGET_CPU_BITS" = x32; then
VCVARSFILE="vc/bin/vcvars32.bat"
else
VCVARSFILE="vc/bin/amd64/vcvars64.bat"
fi
VS_ENV_CMD=""
VS_ENV_ARGS=""
if test "x$with_toolsdir" != x; then
TOOLCHAIN_CHECK_POSSIBLE_VISUAL_STUDIO_ROOT([$with_toolsdir/../..], [--with-tools-dir])
fi
if test "x$with_toolsdir" != x && test "x$VS_ENV_CMD" = x; then
# Having specified an argument which is incorrect will produce an instant failure;
# we should not go on looking
AC_MSG_NOTICE([The path given by --with-tools-dir does not contain a valid Visual Studio installation])
AC_MSG_NOTICE([Please point to the VC/bin directory within the Visual Studio installation])
AC_MSG_ERROR([Cannot locate a valid Visual Studio installation])
fi
if test "x$ProgramW6432" != x; then
TOOLCHAIN_CHECK_POSSIBLE_WIN_SDK_ROOT([$ProgramW6432/Microsoft SDKs/Windows/v7.1/Bin], [well-known name])
fi
if test "x$PROGRAMW6432" != x; then
TOOLCHAIN_CHECK_POSSIBLE_WIN_SDK_ROOT([$PROGRAMW6432/Microsoft SDKs/Windows/v7.1/Bin], [well-known name])
fi
if test "x$PROGRAMFILES" != x; then
TOOLCHAIN_CHECK_POSSIBLE_WIN_SDK_ROOT([$PROGRAMFILES/Microsoft SDKs/Windows/v7.1/Bin], [well-known name])
fi
TOOLCHAIN_CHECK_POSSIBLE_WIN_SDK_ROOT([C:/Program Files/Microsoft SDKs/Windows/v7.1/Bin], [well-known name])
TOOLCHAIN_CHECK_POSSIBLE_WIN_SDK_ROOT([C:/Program Files (x86)/Microsoft SDKs/Windows/v7.1/Bin], [well-known name])
if test "x$VS100COMNTOOLS" != x; then
TOOLCHAIN_CHECK_POSSIBLE_VISUAL_STUDIO_ROOT([$VS100COMNTOOLS/../..], [VS100COMNTOOLS variable])
fi
if test "x$PROGRAMFILES" != x; then
TOOLCHAIN_CHECK_POSSIBLE_VISUAL_STUDIO_ROOT([$PROGRAMFILES/Microsoft Visual Studio 10.0], [well-known name])
fi
TOOLCHAIN_CHECK_POSSIBLE_VISUAL_STUDIO_ROOT([C:/Program Files/Microsoft Visual Studio 10.0], [well-known name])
TOOLCHAIN_CHECK_POSSIBLE_VISUAL_STUDIO_ROOT([C:/Program Files (x86)/Microsoft Visual Studio 10.0], [well-known name])
])
# Check if the VS env variables were setup prior to running configure.
# If not, then find vcvarsall.bat and run it automatically, and integrate
# the set env variables into the spec file.
AC_DEFUN([TOOLCHAIN_SETUP_VISUAL_STUDIO_ENV],
[
# Store path to cygwin link.exe to help excluding it when searching for
# VS linker. This must be done before changing the PATH when looking for VS.
AC_PATH_PROG(CYGWIN_LINK, link)
if test "x$CYGWIN_LINK" != x; then
AC_MSG_CHECKING([if the first found link.exe is actually the Cygwin link tool])
"$CYGWIN_LINK" --version > /dev/null
if test $? -eq 0 ; then
AC_MSG_RESULT([yes])
else
AC_MSG_RESULT([no])
# This might be the VS linker. Don't exclude it later on.
CYGWIN_LINK=""
fi
fi
# First-hand choice is to locate and run the vsvars bat file.
TOOLCHAIN_FIND_VISUAL_STUDIO_BAT_FILE
if test "x$VS_ENV_CMD" != x; then
# We have found a Visual Studio environment on disk, let's extract variables from the vsvars bat file.
BASIC_FIXUP_EXECUTABLE(VS_ENV_CMD)
# Lets extract the variables that are set by vcvarsall.bat/vsvars32.bat/vsvars64.bat
AC_MSG_NOTICE([Trying to extract Visual Studio environment variables])
cd $OUTPUT_ROOT
# FIXME: The code betweeen ---- was inlined from a separate script and is not properly adapted
# to autoconf standards.
#----
# Cannot use the VS10 setup script directly (since it only updates the DOS subshell environment)
# but calculate the difference in Cygwin environment before/after running it and then
# apply the diff.
if test "x$OPENJDK_BUILD_OS_ENV" = xwindows.cygwin; then
_vs10varsall=`cygpath -a -m -s "$VS_ENV_CMD"`
_dosvs10varsall=`cygpath -a -w -s $_vs10varsall`
_dosbash=`cygpath -a -w -s \`which bash\`.*`
else
_dosvs10varsall=`cmd //c echo $VS_ENV_CMD`
_dosbash=`cmd //c echo \`which bash\``
fi
# generate the set of exported vars before/after the vs10 setup
$ECHO "@echo off" > localdevenvtmp.bat
$ECHO "$_dosbash -c \"export -p\" > localdevenvtmp.export0" >> localdevenvtmp.bat
$ECHO "call $_dosvs10varsall $VS_ENV_ARGS" >> localdevenvtmp.bat
$ECHO "$_dosbash -c \"export -p\" > localdevenvtmp.export1" >> localdevenvtmp.bat
# Now execute the newly created bat file.
# The | cat is to stop SetEnv.Cmd to mess with system colors on msys
cmd /c localdevenvtmp.bat | cat
# apply the diff (less some non-vs10 vars named by "!")
$SORT localdevenvtmp.export0 | $GREP -v "!" > localdevenvtmp.export0.sort
$SORT localdevenvtmp.export1 | $GREP -v "!" > localdevenvtmp.export1.sort
$COMM -1 -3 localdevenvtmp.export0.sort localdevenvtmp.export1.sort > localdevenv.sh
# cleanup
$RM localdevenvtmp*
#----
cd $CURDIR
if test ! -s $OUTPUT_ROOT/localdevenv.sh; then
AC_MSG_RESULT([no])
AC_MSG_NOTICE([Could not succesfully extract the envionment variables needed for the VS setup.])
AC_MSG_NOTICE([Try setting --with-tools-dir to the VC/bin directory within the VS installation])
AC_MSG_NOTICE([or run "bash.exe -l" from a VS command prompt and then run configure from there.])
AC_MSG_ERROR([Cannot continue])
fi
# Now set all paths and other env variables. This will allow the rest of
# the configure script to find and run the compiler in the proper way.
AC_MSG_NOTICE([Setting extracted environment variables])
. $OUTPUT_ROOT/localdevenv.sh
else
# We did not find a vsvars bat file, let's hope we are run from a VS command prompt.
AC_MSG_NOTICE([Cannot locate a valid Visual Studio installation, checking current environment])
fi
# At this point, we should have corrent variables in the environment, or we can't continue.
AC_MSG_CHECKING([for Visual Studio variables])
if test "x$VCINSTALLDIR" != x || test "x$WindowsSDKDir" != x || test "x$WINDOWSSDKDIR" != x; then
if test "x$INCLUDE" = x || test "x$LIB" = x; then
AC_MSG_RESULT([present but broken])
AC_MSG_ERROR([Your VC command prompt seems broken, INCLUDE and/or LIB is missing.])
else
AC_MSG_RESULT([ok])
# Remove any trailing \ from INCLUDE and LIB to avoid trouble in spec.gmk.
VS_INCLUDE=`$ECHO "$INCLUDE" | $SED 's/\\\\$//'`
VS_LIB=`$ECHO "$LIB" | $SED 's/\\\\$//'`
VS_PATH="$PATH"
AC_SUBST(VS_INCLUDE)
AC_SUBST(VS_LIB)
AC_SUBST(VS_PATH)
fi
else
AC_MSG_RESULT([not found])
if test "x$VS_ENV_CMD" = x; then
AC_MSG_NOTICE([Cannot locate a valid Visual Studio or Windows SDK installation on disk,])
AC_MSG_NOTICE([nor is this script run from a Visual Studio command prompt.])
else
AC_MSG_NOTICE([Running the extraction script failed.])
fi
AC_MSG_NOTICE([Try setting --with-tools-dir to the VC/bin directory within the VS installation])
AC_MSG_NOTICE([or run "bash.exe -l" from a VS command prompt and then run configure from there.])
AC_MSG_ERROR([Cannot continue])
fi
AC_MSG_CHECKING([for msvcr100.dll])
AC_ARG_WITH(msvcr-dll, [AS_HELP_STRING([--with-msvcr-dll],
[copy this msvcr100.dll into the built JDK (Windows only) @<:@probed@:>@])])
if test "x$with_msvcr_dll" != x; then
MSVCR_DLL="$with_msvcr_dll"
else
if test "x$VCINSTALLDIR" != x; then
if test "x$OPENJDK_TARGET_CPU_BITS" = x64; then
MSVCR_DLL=`find "$VCINSTALLDIR" -name msvcr100.dll | grep x64 | head --lines 1`
else
MSVCR_DLL=`find "$VCINSTALLDIR" -name msvcr100.dll | grep x86 | grep -v ia64 | grep -v x64 | head --lines 1`
if test "x$MSVCR_DLL" = x; then
MSVCR_DLL=`find "$VCINSTALLDIR" -name msvcr100.dll | head --lines 1`
fi
fi
if test "x$MSVCR_DLL" != x; then
AC_MSG_NOTICE([msvcr100.dll found in VCINSTALLDIR: $VCINSTALLDIR])
else
AC_MSG_NOTICE([Warning: msvcr100.dll not found in VCINSTALLDIR: $VCINSTALLDIR])
fi
fi
if test "x$MSVCR_DLL" = x; then
if test -f "$SYSTEMROOT/system32/msvcr100.dll"; then
AC_MSG_NOTICE([msvcr100.dll found in $SYSTEMROOT/system32])
MSVCR_DLL="$SYSTEMROOT/system32/msvcr100.dll"
fi
fi
fi
if test "x$MSVCR_DLL" = x; then
AC_MSG_RESULT([no])
AC_MSG_ERROR([Could not find msvcr100.dll !])
fi
AC_MSG_RESULT([$MSVCR_DLL])
BASIC_FIXUP_PATH(MSVCR_DLL)
])

View File

@@ -0,0 +1,38 @@
#
# Copyright (c) 2011, 2013, 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. Oracle designates this
# particular file as subject to the "Classpath" exception as provided
# by Oracle in the LICENSE file that accompanied this code.
#
# 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.
#
JDK_MAJOR_VERSION=1
JDK_MINOR_VERSION=8
JDK_MICRO_VERSION=0
JDK_UPDATE_VERSION=
LAUNCHER_NAME=openjdk
PRODUCT_NAME=OpenJDK
PRODUCT_SUFFIX="Runtime Environment"
JDK_RC_PLATFORM_NAME=Platform
COMPANY_NAME=N/A
# Might need better names for these
MACOSX_BUNDLE_NAME_BASE="OpenJDK"
MACOSX_BUNDLE_ID_BASE="net.java.openjdk"

View File

@@ -1,36 +0,0 @@
#
# 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. Oracle designates this
# particular file as subject to the "Classpath" exception as provided
# by Oracle in the LICENSE file that accompanied this code.
#
# 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.
#
JDK_MAJOR_VERSION=1
JDK_MINOR_VERSION=8
JDK_MICRO_VERSION=0
JDK_UPDATE_VERSION=
JDK_BUILD_NUMBER=
MILESTONE=internal
LAUNCHER_NAME=openjdk
PRODUCT_NAME=OpenJDK
PRODUCT_SUFFIX="Runtime Environment"
JDK_RC_PLATFORM_NAME=Platform
COMPANY_NAME=N/A

77
common/bin/boot_cycle.sh Normal file
View File

@@ -0,0 +1,77 @@
#!/bin/bash
#
# 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.
#
# The boot_cycle.sh script performs two complete image builds (no javadoc though....)
# where the second build uses the first build as the boot jdk.
#
# This is useful to verify that the build is self hoisting and assists
# in flushing out bugs. You can follow up with compare_objects.sh to check
# that the two boot_cycle_?/images/j2sdk are identical. They should be.
#
# Usage:
# Specify the configure arguments to boot_cycle.sh, for example:
#
# sh common/bin/boot_cycle.sh --enable-debug --with-jvm-variants=server
#
# The same arguments will be used for both builds, except of course --with-boot-jdk
# that will be adjusted to boot_cycle_1 for the second build.
SCRIPT_DIR=`pwd`/`dirname $0`
ROOT_DIR=`(cd $SCRIPT_DIR/../.. ; pwd)`
BUILD_DIR=$ROOT_DIR/build
mkdir -p $BUILD_DIR
AUTOCONF_DIR=`(cd $SCRIPT_DIR/../autoconf ; pwd)`
BOOT_CYCLE_1_DIR=$BUILD_DIR/boot_cycle_1
BOOT_CYCLE_2_DIR=$BUILD_DIR/boot_cycle_2
# Create the boot cycle dirs in the build directory.
mkdir -p $BOOT_CYCLE_1_DIR
mkdir -p $BOOT_CYCLE_2_DIR
cd $BOOT_CYCLE_1_DIR
# Configure!
sh $AUTOCONF_DIR/configure "$@"
# Now build!
make images
if ! test -x $BOOT_CYCLE_1_DIR/images/j2sdk-image/bin/java ; then
echo Failed to build the executable $BOOT_CYCLE_1_DIR/images/j2sdk-image/bin/java
exit 1
fi
cd $BOOT_CYCLE_2_DIR
# Pickup the configure arguments, but drop any --with-boot-jdk=....
# and add the correct --with-boot-jdk=...boot_cycle_1... at the end.
ARGUMENTS="`cat $BOOT_CYCLE_1_DIR/configure-arguments|sed 's/--with-boot-jdk=[^ ]*//'` --with-boot-jdk=$BOOT_CYCLE_1_DIR/images/j2sdk-image"
# Configure using these adjusted arguments.
sh $AUTOCONF_DIR/configure $ARGUMENTS
# Now build!
make images
if ! test -x $BOOT_CYCLE_2_DIR/images/j2sdk-image/bin/java ; then
echo Failed to build the final executable $BOOT_CYCLE_2_DIR/images/j2sdk-image/bin/java
exit 1
fi

View File

@@ -30,7 +30,7 @@
#
if [ "x$1" = "x-h" ] || [ "x$1" = "x--help" ] || [ "x$1" == "x" ]; then
echo "bash ./common/bin/compare-build.sh old_jdk_build_dir new_jdk_build_dir"
echo "bash ./common/bin/compare-objects.sh old_jdk_build_dir new_jdk_build_dir <pattern>"
echo ""
echo "Compare object files"
echo ""

1394
common/bin/compare.sh Normal file

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -1,335 +0,0 @@
#!/bin/bash
#
# 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.
#
# MANUAL
#
# ./common/bin/compareimages.sh old_jdk_image new_jdk_image
#
# Compare the directory structure.
# Compare the filenames in the directories.
# Compare the contents of the zip archives
# Compare the contents of the jar archives
# Compare the native libraries
# Compare the native executables
# Compare the remaining files
#
# ./common/bin/compareimages.sh old_jdk_image new_jdk_image [zips jars libs execs other]
#
# Compare only the selected subset of the images.
#
# ./common/bin/compareimages.sh old_jdk_image new_jdk_image CodePointIM.jar
#
# Compare only the CodePointIM.jar file
# Can be used to compare zips, libraries and executables.
#
if [ "x$1" = "x-h" ] || [ "x$1" = "x--help" ] || [ "x$1" == "x" ]; then
echo "bash ./common/bin/compareimages.sh old_jdk_image new_jdk_image"
echo ""
echo "Compare the directory structure."
echo "Compare the filenames in the directories."
echo "Compare the contents of the zip archives"
echo "Compare the contents of the jar archives"
echo "Compare the native libraries"
echo "Compare the native executables"
echo "Compare the remaining files"
echo ""
echo "bash ./common/bin/compareimages.sh old_jdk_image new_jdk_image [zips jars libs execs other]"
echo ""
echo "Compare only the selected subset of the images."
echo ""
echo "bash ./common/bin/compareimages.sh old_jdk_image new_jdk_image CodePointIM.jar"
echo ""
echo "Compare only the CodePointIM.jar file"
echo "Can be used to compare zips, libraries and executables."
exit 10
fi
OLD="$1"
NEW="$2"
CMD="$3"
DIFF_RESULT=0
CMP_ZIPS=false
CMP_JARS=false
CMP_LIBS=false
CMP_EXECS=false
CMP_OTHER=false
FILTER="cat"
if [ -n "$CMD" ]; then
case "$CMD" in
zips)
CMP_ZIPS=true
;;
jars)
CMP_JARS=true
;;
libs)
CMP_LIBS=true
;;
execs)
CMP_EXECS=true
;;
other)
CMP_OTHER=true
;;
*)
CMP_ZIPS=true
CMP_JARS=true
CMP_LIBS=true
CMP_EXECS=true
CMP_OTHER=true
FILTER="grep $3"
;;
esac
else
CMP_ZIPS=true
CMP_JARS=true
CMP_LIBS=true
CMP_EXECS=true
CMP_OTHER=true
fi
DIFFJARZIP="/bin/bash `dirname $0`/diffjarzip.sh"
DIFFLIB="/bin/bash `dirname $0`/difflib.sh"
DIFFEXEC="/bin/bash `dirname $0`/diffexec.sh"
export COMPARE_ROOT=/tmp/cimages.$USER
mkdir -p $COMPARE_ROOT
# Load the correct exception list.
case "`uname -s`" in
Linux)
. `dirname $0`/exception_list_linux
;;
esac
echo
echo Comparing $OLD to $NEW
echo
(cd $OLD && find . -type d | sort > $COMPARE_ROOT/from_dirs)
(cd $NEW && find . -type d | sort > $COMPARE_ROOT/to_dirs)
echo -n Directory structure...
if diff $COMPARE_ROOT/from_dirs $COMPARE_ROOT/to_dirs > /dev/null; then
echo Identical!
else
echo Differences found.
DIFF_RESULT=1
# Differences in directories found.
ONLY_OLD=$(diff $COMPARE_ROOT/from_dirs $COMPARE_ROOT/to_dirs | grep '<')
if [ "$ONLY_OLD" ]; then
echo Only in $OLD
echo $ONLY_OLD | sed 's|< ./|\t|g' | sed 's/ /\n/g'
fi
# Differences in directories found.
ONLY_NEW=$(diff $COMPARE_ROOT/from_dirs $COMPARE_ROOT/to_dirs | grep '>')
if [ "$ONLY_NEW" ]; then
echo Only in $NEW
echo $ONLY_NEW | sed 's|> ./|\t|g' | sed 's/ /\n/g'
fi
fi
(cd $OLD && find . -type f | sort > $COMPARE_ROOT/from_files)
(cd $NEW && find . -type f | sort > $COMPARE_ROOT/to_files)
echo -n File names...
if diff $COMPARE_ROOT/from_files $COMPARE_ROOT/to_files > /dev/null; then
echo Identical!
else
echo Differences found.
DIFF_RESULT=1
# Differences in directories found.
ONLY_OLD=$(diff $COMPARE_ROOT/from_files $COMPARE_ROOT/to_files | grep '<')
if [ "$ONLY_OLD" ]; then
echo Only in $OLD
echo "$ONLY_OLD" | sed 's|< ./| |g'
fi
# Differences in directories found.
ONLY_NEW=$(diff $COMPARE_ROOT/from_files $COMPARE_ROOT/to_files | grep '>')
if [ "$ONLY_NEW" ]; then
echo Only in $NEW
echo "$ONLY_NEW" | sed 's|> ./| |g'
fi
fi
echo -n Permissions...
found=""
for f in `cd $OLD && find . -type f`
do
if [ ! -f ${OLD}/$f ]; then continue; fi
if [ ! -f ${NEW}/$f ]; then continue; fi
OP=`ls -l ${OLD}/$f | awk '{printf("%.10s\n", $1);}'`
NP=`ls -l ${NEW}/$f | awk '{printf("%.10s\n", $1);}'`
if [ "$OP" != "$NP" ]
then
if [ -z "$found" ]; then echo ; found="yes"; fi
printf "\told: ${OP} new: ${NP}\t$f\n"
fi
OF=`cd ${OLD} && file $f`
NF=`cd ${NEW} && file $f`
if [ "$f" = "./src.zip" ]
then
if [ "`echo $OF | grep -ic zip`" -gt 0 -a "`echo $NF | grep -ic zip`" -gt 0 ]
then
# the way we produces zip-files make it so that directories are stored in old file
# but not in new (only files with full-path)
# this makes file-5.09 report them as different
continue;
fi
fi
if [ "$OF" != "$NF" ]
then
if [ -z "$found" ]; then echo ; found="yes"; fi
printf "\tFILE: old: ${OF} new: ${NF}\t$f\n"
fi
done
if [ -z "$found" ]; then echo ; found="yes"; fi
GENERAL_FILES=$(cd $OLD && find . -type f ! -name "*.so" ! -name "*.jar" ! -name "*.zip" \
! -name "*.debuginfo" ! -name "*.dylib" ! -name "jexec" \
! -name "ct.sym" ! -name "*.diz" \
| grep -v "./bin/" | sort | $FILTER)
echo General files...
for f in $GENERAL_FILES
do
if [ -e $NEW/$f ]; then
DIFF_OUT=$(diff $OLD/$f $NEW/$f 2>&1)
if [ -n "$DIFF_OUT" ]; then
echo $f
echo "$DIFF_OUT"
fi
fi
done
if [ "x$CMP_ZIPS" == "xtrue" ]; then
ZIPS=$(cd $OLD && find . -type f -name "*.zip" | sort | $FILTER)
if [ -n "$ZIPS" ]; then
echo Zip files...
for f in $ZIPS
do
$DIFFJARZIP $OLD/$f $NEW/$f $OLD $NEW
if [ "$?" != "0" ]; then
DIFF_RESULT=1
fi
done
fi
fi
if [ "x$CMP_JARS" == "xtrue" ]; then
JARS=$(cd $OLD && find . -type f -name "*.jar" -o -name "ct.sym" | sort | $FILTER)
if [ -n "$JARS" ]; then
echo Jar files...
for f in $JARS
do
DIFFJAR_OUTPUT=`$DIFFJARZIP $OLD/$f $NEW/$f $OLD $NEW`
DIFFJAR_RESULT=$?
if [ "$DIFFJAR_RESULT" != "0" ]; then
for diff in $LIST_DIFF_JAR; do
DIFFJAR_OUTPUT=`echo "$DIFFJAR_OUTPUT" | grep -v "$diff"`
done
if [ "`echo "$DIFFJAR_OUTPUT" | grep -v "Differing files in"`" != "" ]; then
DIFF_RESULT=1
echo "$DIFFJAR_OUTPUT"
fi
fi
done
fi
fi
if [ "x$FILTER" != "xcat" ]; then
VIEW=view
else
VIEW=
fi
if [ "x$CMP_LIBS" == "xtrue" ]; then
LIBS=$(cd $OLD && find . -name 'lib*.so' -o -name '*.dylib' -o -name '*.dll' | sort | $FILTER)
if [ -n "$LIBS" ]; then
echo Libraries...
for f in $LIBS
do
DIFFLIB_OUTPUT=`$DIFFLIB $OLD/$f $NEW/$f $OLD $NEW $VIEW`
DIFFLIB_RESULT=$?
if [ "$DIFFLIB_RESULT" = "0" ]; then
:
#echo "OK: $DIFFLIB_OUTPUT"
elif [ "$DIFFLIB_RESULT" = "2" ] && [[ "$LIST_DIFF_SIZE $LIST_DIFF_BYTE" == *"${f:2}"* ]]; then
:
#echo "OK: $DIFFLIB_OUTPUT"
elif [ "$DIFFLIB_RESULT" = "1" ] && [[ "$LIST_DIFF_BYTE" == *"${f:2}"* ]]; then
:
#echo "OK: $DIFFLIB_OUTPUT"
else
echo "$DIFFLIB_OUTPUT"
DIFF_RESULT=1
fi
done
fi
fi
if [ "x$CMP_EXECS" == "xtrue" ]; then
if [ $OSTYPE == "cygwin" ]; then
EXECS=$(cd $OLD && find . -type f -name '*.exe' | sort | $FILTER)
else
EXECS=$(cd $OLD && find . -type f -perm -100 \! \( -name '*.so' -o -name '*.dylib' -o -name '*.dll' \) | sort | $FILTER)
fi
if [ -n "$EXECS" ]; then
echo Executables...
for f in $EXECS
do
DIFFEXEC_OUTPUT=`$DIFFEXEC $OLD/$f $NEW/$f $OLD $NEW $VIEW`
DIFFEXEC_RESULT=$?
if [ "$DIFFEXEC_RESULT" = "0" ]; then
:
#echo "OK: $DIFFEXEC_OUTPUT"
elif [ "$DIFFEXEC_RESULT" = "2" ] && [[ "$LIST_DIFF_SIZE $LIST_DIFF_BYTE" == *"${f:2}"* ]]; then
:
#echo "OK: $DIFFEXEC_OUTPUT"
elif [ "$DIFFEXEC_RESULT" = "1" ] && [[ "$LIST_DIFF_BYTE" == *"${f:2}"* ]]; then
:
#echo "OK: $DIFFEXEC_OUTPUT"
else
echo "$DIFFEXEC_OUTPUT"
DIFF_RESULT=1
fi
done
fi
fi
exit $DIFF_RESULT

View File

@@ -1,186 +0,0 @@
#!/bin/bash
#
# 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.
#
if [ $# -lt 2 ]
then
echo "Diff two executables. Return codes:"
echo "0 - no diff"
echo "1 - Identical symbols AND size, BUT not bytewise identical"
echo "2 - Identical symbols BUT NEW size"
echo "3 - Differences, content BUT SAME size"
echo "4 - Differences, content AND size"
echo "10 - Could not perform diff"
echo "Use 'quiet' to disable any output."
echo "Syntax: $0 file1 file2 [quiet]"
exit 10
fi
if [ ! -f $1 ]
then
echo $1 does not exist
exit 10
fi
if [ ! -f $2 ]
then
echo $2 does not exist
exit 10
fi
if [ "`uname`" == "SunOS" ]; then
if [ -f "`which nm`" ]; then
NM=nm
elif [ -f "`which gnm`" ]; then
NM=gnm
else
echo "No nm command found"
exit 10
fi
LDD=ldd
elif [ $OSTYPE == "cygwin" ]; then
NM="$VS100COMNTOOLS/../../VC/bin/amd64/dumpbin.exe"
NM_ARGS=/exports
LDD=
elif [ "`uname`" == "Darwin" ]; then
NM=nm
LDD="otool -L"
else
NM=nm
LDD=ldd
fi
# Should the differences be viewed?
VIEW=
# You can do export DIFF=meld to view
# any differences using meld instead.
if [ -n "$DIFF" ]; then
DIFF="$DIFF"
else
DIFF=diff
fi
OLD=$(cd $(dirname $1) && pwd)/$(basename $1)
NEW=$(cd $(dirname $2) && pwd)/$(basename $2)
OLD_SIZE=$(ls -l "$OLD" | awk '{ print $5 }')
NEW_SIZE=$(ls -l "$NEW" | awk '{ print $5 }')
if [ $# -gt 3 ]
then
ROOT1=$(cd $3 && pwd)
ROOT2=$(cd $4 && pwd)
OLD_NAME=$(echo $OLD | sed "s|$ROOT1/||")
NEW_NAME=$(echo $NEW | sed "s|$ROOT2/||")
if [ "x$5" == "xview" ]; then VIEW=view; fi
else
ROOT1=$(dirname $OLD)/
ROOT2=$(dirname $NEW)/
OLD_NAME=$OLD
NEW_NAME=$NEW
if [ "x$3" == "xview" ]; then VIEW=view; fi
fi
if cmp $OLD $NEW > /dev/null
then
# The files were bytewise identical.
echo Identical: $OLD_NAME
exit 0
fi
OLD_SYMBOLS=$COMPARE_ROOT/$OLD_NAME.old
NEW_SYMBOLS=$COMPARE_ROOT/$NEW_NAME.new
mkdir -p $(dirname $OLD_SYMBOLS)
mkdir -p $(dirname $NEW_SYMBOLS)
if [ $OSTYPE == "cygwin" ]; then
"$NM" $NM_ARGS $OLD | grep " = " > $OLD_SYMBOLS
"$NM" $NM_ARGS $NEW | grep " = " > $NEW_SYMBOLS
"$NM" $NM_ARGS $OLD > $OLD_SYMBOLS.full
"$NM" $NM_ARGS $NEW > $NEW_SYMBOLS.full
else
# Strip the addresses, just compare the ordering of the symbols.
$NM $OLD | cut -f 2- -d ' ' > $OLD_SYMBOLS
$NM $NEW | cut -f 2- -d ' ' > $NEW_SYMBOLS
# But store the full information for easy diff access.
$NM $OLD > $OLD_SYMBOLS.full
$NM $NEW > $NEW_SYMBOLS.full
fi
DIFFS=$(LANG=C diff $OLD_SYMBOLS $NEW_SYMBOLS)
if [ "${LDD}" ]
then
NAME=`basename $OLD`
TMP=$COMPARE_ROOT/ldd/ldd.${NAME}
rm -rf "${TMP}"
mkdir -p "${TMP}"
(cd "${TMP}" && cp $OLD . && ${LDD} ${NAME} | awk '{ print $1;}' | sort | tee dep.old | uniq > dep.uniq.old)
(cd "${TMP}" && cp $NEW . && ${LDD} ${NAME} | awk '{ print $1;}' | sort | tee dep.new | uniq > dep.uniq.new)
(cd "${TMP}" && rm -f ${NAME})
DIFFS_DEP=$(LANG=C diff "${TMP}/dep.old" "${TMP}/dep.new")
DIFFS_UNIQ_DEP=$(LANG=C diff "${TMP}/dep.uniq.old" "${TMP}/dep.uniq.new")
DEP_MSG=
if [ -z "${DIFFS_UNIQ_DEP}" -a -z "${DIFFS_DEP}" ]; then
DEP_MSG="Identical dependencies"
elif [ -z "${DIFFS_UNIQ_DEP}" ]; then
DEP_MSG="Redundant duplicate dependencies added"
RES=1
else
DEP_MSG="DIFFERENT dependencies"
RES=1
fi
fi
RESULT=0
if [ -n "$DIFFS" ]; then
if [ $OLD_SIZE -ne $NEW_SIZE ]
then
echo Differences, content AND size : $DEP_MSG : $OLD_NAME
RESULT=4
else
echo Differences, content BUT SAME size: $DEP_MSG : $OLD_NAME
RESULT=3
fi
if [ "x$VIEW" == "xview" ]; then
LANG=C $DIFF $OLD_SYMBOLS $NEW_SYMBOLS
fi
else
if [ $OLD_SIZE -ne $NEW_SIZE ]
then
echo Identical symbols BUT NEW size : $DEP_MSG : $OLD_NAME
RESULT=2
else
echo Identical symbols AND size, BUT not bytewise identical: $DEP_MSG : $OLD_NAME
RESULT=1
fi
fi
exit $RESULT

View File

@@ -1,155 +0,0 @@
#!/bin/bash
#
# 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.
#
# Simple tool to diff two jar or zip files. It unpacks the jar/zip files and
# reports if files differs and if files are new or missing.
# Assumes gnu diff.
# There are a few source files that have DOS line endings in the
# jaxp/jaxws source drops, when the sources were added to the repository
# the source files were converted to UNIX line endings.
# For now we ignore these differences.
DIFF_FLAGS="--strip-trailing-cr"
#set -x
if [ $# -lt 2 ]
then
echo "Diff two jar/zip files. Return codes: 0 - no diff, 1 - diff, 2 - couldn't perform diff"
echo "Syntax: $0 old_archive new_archive [old_root new_root]"
exit 2
fi
if [ ! -f $1 ]
then
echo $1 does not exist
exit 2
fi
if [ ! -f $2 ]
then
echo $2 does not exist
exit 2
fi
IGNORES="cat"
OLD=$(cd $(dirname $1) && pwd)/$(basename $1)
NEW=$(cd $(dirname $2) && pwd)/$(basename $2)
if [ $# -gt 3 ]
then
ROOT1=$(cd $3 && pwd)
ROOT2=$(cd $4 && pwd)
OLD_NAME=$(echo $OLD | sed "s|$ROOT1/||")
NEW_NAME=$(echo $NEW | sed "s|$ROOT2/||")
if [ $# == 5 ]; then IGNORES="$5"; fi
else
ROOT1=$(dirname $OLD)/
ROOT2=$(dirname $NEW)/
OLD_NAME=$OLD
NEW_NAME=$NEW
if [ $# == 3 ]; then IGNORES="$3"; fi
fi
if [ "`uname`" == "SunOS" ]; then
if [ -f "`which gdiff`" ]; then
DIFF=gdiff
else
DIFF=diff
fi
else
DIFF=diff
fi
OLD_SUFFIX="${OLD##*.}"
NEW_SUFFIX="${NEW##*.}"
if [ "$OLD_SUFFIX" != "$NEW_SUFFIX" ]; then
echo The files do not have the same suffix type!
exit 2
fi
if [ "$OLD_SUFFIX" != "zip" ] && [ "$OLD_SUFFIX" != "jar" ] && [ "$OLD_SUFFIX" != "sym" ]; then
echo The files have to be zip, jar or sym! They are $OLD_SUFFIX
exit 2
fi
UNARCHIVE="unzip -q"
TYPE="$OLD_SUFFIX"
if cmp $OLD $NEW > /dev/null
then
# The files were bytewise identical.
exit 0
fi
# Not quite identical, the might still contain the same data.
# Unpack the jar/zip files in temp dirs
if test "x$COMPARE_ROOT" == "x"; then
COMPARE_ROOT=/tmp/compare_root.$$
REMOVE_COMPARE_ROOT=true
fi
OLD_TEMPDIR=$COMPARE_ROOT/$OLD_NAME.old
NEW_TEMPDIR=$COMPARE_ROOT/$NEW_NAME.new
mkdir -p $OLD_TEMPDIR
mkdir -p $NEW_TEMPDIR
(cd $OLD_TEMPDIR && rm -rf * ; $UNARCHIVE $OLD)
(cd $NEW_TEMPDIR && rm -rf * ; $UNARCHIVE $NEW)
ONLY1=$(LANG=C $DIFF -rq $OLD_TEMPDIR $NEW_TEMPDIR | grep "^Only in $OLD_TEMPDIR")
if [ -n "$ONLY1" ]; then
echo " Only the OLD $OLD_NAME contains:"
LANG=C $DIFF -rq $DIFF_FLAGS $OLD_TEMPDIR $NEW_TEMPDIR | grep "^Only in $OLD_TEMPDIR" \
| sed "s|Only in $OLD_TEMPDIR| |"g | sed 's|: |/|g'
fi
ONLY2=$(LANG=C $DIFF -rq $OLD_TEMPDIR $NEW_TEMPDIR | grep "^Only in $NEW_TEMPDIR")
if [ -n "$ONLY2" ]; then
echo " Only the NEW $NEW_NAME contains:"
LANG=C $DIFF -rq $DIFF_FLAGS $OLD_TEMPDIR $NEW_TEMPDIR | grep "^Only in $NEW_TEMPDIR" \
| sed "s|Only in $NEW_TEMPDIR| |"g | sed 's|: |/|g'
fi
DIFFTEXT="/bin/bash `dirname $0`/difftext.sh"
LANG=C $DIFF -rq $DIFF_FLAGS $OLD_TEMPDIR $NEW_TEMPDIR | grep differ | cut -f 2,4 -d ' ' | \
awk "{ print \"$DIFFTEXT \"\$1\" \"\$2 }" > $COMPARE_ROOT/diffing
/bin/bash $COMPARE_ROOT/diffing > $COMPARE_ROOT/diffs
if [ -s "$COMPARE_ROOT/diffs" ]; then
echo " Differing files in $OLD_NAME"
cat $COMPARE_ROOT/diffs | grep differ | $IGNORES | cut -f 2 -d ' ' | \
sed "s|$OLD_TEMPDIR| |g"
fi
# Clean up
if [ "x$REMOVE_COMPARE_ROOT" == xtrue ]; then
rm -rf $REMOVE_COMPARE_ROOT
fi
exit 1

View File

@@ -1,207 +0,0 @@
#!/bin/bash
#
# 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.
#
# Simple tool to diff two shared libraries.
# Criterias: two shared libraries are considered equal if:
# the file sizes are the same AND the symbols outputs from the nm command are equal
if [ $# -lt 2 ]
then
echo "Diff two shared libs. Return codes:"
echo "0 - no diff"
echo "1 - Identical symbols AND size, BUT not bytewise identical"
echo "2 - Identical symbols BUT NEW size"
echo "3 - Differences, content BUT SAME size"
echo "4 - Differences, content AND size"
echo "10 - Could not perform diff"
echo "Use 'quiet' to disable any output."
echo "Syntax: $0 file1 file2 [quiet]"
exit 10
fi
if [ ! -f $1 ]
then
echo $1 does not exist
exit 10
fi
if [ ! -f $2 ]
then
echo $2 does not exist
exit 10
fi
if [ "`uname`" == "SunOS" ]; then
if [ -f "`which gnm`" ]; then
NM=gnm
# Jonas 2012-05-29: solaris native nm produces radically different output than gnm
# so if using that...we need different filter than "cut -f 2-"
#
elif [ -f "`which nm`" ]; then
NM=nm
else
echo "No nm command found"
exit 10
fi
LDD=ldd
elif [ $OSTYPE == "cygwin" ]; then
NM="$VS100COMNTOOLS/../../VC/bin/amd64/dumpbin.exe"
NM_ARGS=/exports
LDD=
elif [ "`uname`" == "Darwin" ]; then
NM=nm
LDD="otool -L"
else
NM=nm
LDD=ldd
fi
# Should the differences be viewed?
VIEW=
# You can do export DIFF=meld to view
# any differences using meld instead.
if [ -n "$DIFF" ]; then
DIFF="$DIFF"
else
DIFF=diff
fi
OLD=$(cd $(dirname $1) && pwd)/$(basename $1)
NEW=$(cd $(dirname $2) && pwd)/$(basename $2)
OLD_SIZE=$(ls -l "$OLD" | awk '{ print $5 }')
NEW_SIZE=$(ls -l "$NEW" | awk '{ print $5 }')
if [ $# -gt 3 ]
then
ROOT1=$(cd $3 && pwd)
ROOT2=$(cd $4 && pwd)
OLD_NAME=$(echo $OLD | sed "s|$ROOT1/||")
NEW_NAME=$(echo $NEW | sed "s|$ROOT2/||")
if [ "x$5" == "xview" ]; then VIEW=view; fi
else
ROOT1=$(dirname $OLD)/
ROOT2=$(dirname $NEW)/
OLD_NAME=$OLD
NEW_NAME=$NEW
if [ "x$3" == "xview" ]; then VIEW=view; fi
fi
OLD_SUFFIX="${OLD##*.}"
NEW_SUFFIX="${NEW##*.}"
if [ "$OLD_SUFFIX" != "$NEW_SUFFIX" ]; then
echo The files do not have the same suffix type!
exit 10
fi
if [ "$OLD_SUFFIX" != "so" ] && [ "$OLD_SUFFIX" != "dylib" ] && [ "$OLD_SUFFIX" != "dll" ]; then
echo The files have to be .so, .dylib or .dll! They are $OLD_SUFFIX
exit 10
fi
TYPE="$OLD_SUFFIX"
if cmp $OLD $NEW > /dev/null
then
# The files were bytewise identical.
echo Identical: $OLD_NAME
exit 0
fi
OLD_SYMBOLS=$COMPARE_ROOT/nm.$OLD_NAME.old
NEW_SYMBOLS=$COMPARE_ROOT/nm.$NEW_NAME.new
mkdir -p $(dirname $OLD_SYMBOLS)
mkdir -p $(dirname $NEW_SYMBOLS)
if [ $OSTYPE == "cygwin" ]; then
"$NM" $NM_ARGS $OLD | grep " = " > $OLD_SYMBOLS
"$NM" $NM_ARGS $NEW | grep " = " > $NEW_SYMBOLS
"$NM" $NM_ARGS $OLD > $OLD_SYMBOLS.full
"$NM" $NM_ARGS $NEW > $NEW_SYMBOLS.full
else
# Strip the addresses, just compare the ordering of the symbols.
$NM $OLD | cut -f 2- -d ' ' > $OLD_SYMBOLS
$NM $NEW | cut -f 2- -d ' ' > $NEW_SYMBOLS
# But store the full information for easy diff access.
$NM $OLD > $OLD_SYMBOLS.full
$NM $NEW > $NEW_SYMBOLS.full
fi
DIFFS=$(LANG=C diff $OLD_SYMBOLS $NEW_SYMBOLS)
RESULT=0
if [ "${LDD}" ]
then
NAME=`basename $OLD`
TMP=$COMPARE_ROOT/ldd/ldd.${NAME}
rm -rf "${TMP}"
mkdir -p "${TMP}"
(cd "${TMP}" && cp $OLD . && ${LDD} ${NAME} | awk '{ print $1;}' | sort | tee dep.old | uniq > dep.uniq.old)
(cd "${TMP}" && cp $NEW . && ${LDD} ${NAME} | awk '{ print $1;}' | sort | tee dep.new | uniq > dep.uniq.new)
(cd "${TMP}" && rm -f ${NAME})
DIFFS_DEP=$(LANG=C diff "${TMP}/dep.old" "${TMP}/dep.new")
DIFFS_UNIQ_DEP=$(LANG=C diff "${TMP}/dep.uniq.old" "${TMP}/dep.uniq.new")
DEP_MSG=
if [ -z "${DIFFS_UNIQ_DEP}" -a -z "${DIFFS_DEP}" ]; then
DEP_MSG="Identical dependencies"
elif [ -z "${DIFFS_UNIQ_DEP}" ]; then
DEP_MSG="Redundant duplicate dependencies added"
RES=1
else
DEP_MSG="DIFFERENT dependencies"
RES=1
fi
fi
if [ -n "$DIFFS" ]; then
if [ $OLD_SIZE -ne $NEW_SIZE ]
then
echo Differences, content AND size : $DEP_MSG : $OLD_NAME
RESULT=4
else
echo Differences, content BUT SAME size: $DEP_MSG : $OLD_NAME
RESULT=3
fi
if [ "x$VIEW" == "xview" ]; then
LANG=C $DIFF $OLD_SYMBOLS $NEW_SYMBOLS
fi
else
if [ $OLD_SIZE -ne $NEW_SIZE ]
then
echo Identical symbols BUT NEW size : $DEP_MSG : $OLD_NAME
RESULT=2
else
echo Identical symbols AND size, BUT not bytewise identical: $DEP_MSG : $OLD_NAME
RESULT=1
fi
fi
exit $RESULT

View File

@@ -1,157 +0,0 @@
#!/bin/bash
#
# 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.
#
# The difftext.sh knows how to compare text files and
# ignore some specific differences.
# When difftext.sh is called, we already know that the
# files differ. But if the tests below trigger, then
# we ignore differences caused by:
#
# Timestamps in Java sources generated by idl2java
# Sorting order and cleanup style in .properties files.
OLD="$1"
NEW="$2"
SUF="${OLD##*.}"
TMP=1
if test "x$SUF" == "xjava"; then
TMP=$(LANG=C diff $OLD $NEW | \
grep '^[<>]' | \
sed '/[<>] \* from.*\.idl/d' | \
sed '/[<>] \*.*201[12].*/d' | \
sed '/\/\/ Generated from input file.*/d' | \
sed '/\/\/ This file was generated AUTOMATICALLY from a template file.*/d' | \
sed '/\/\/ java GenerateCharacter.*/d')
fi
if test "x$SUF" == "xproperties"; then
cat $OLD | sed -e 's/\([^\\]\):/\1\\:/g' -e 's/\([^\\]\)=/\1\\=/g' -e 's/#.*/#/g' \
-e 's/\\u0020/\x20/g' \
-e 's/\\u003A/\x3A/g' \
-e 's/\\u006B/\x6B/g' \
-e 's/\\u0075/\x75/g' \
-e 's/\\u00A0/\xA0/g' \
-e 's/\\u00A3/\xA3/g' \
-e 's/\\u00B0/\xB0/g' \
-e 's/\\u00B7/\xB7/g' \
-e 's/\\u00BA/\xBA/g' \
-e 's/\\u00BF/\xBF/g' \
-e 's/\\u00C0/\xC0/g' \
-e 's/\\u00C1/\xC1/g' \
-e 's/\\u00C2/\xC2/g' \
-e 's/\\u00C4/\xC4/g' \
-e 's/\\u00C5/\xC5/g' \
-e 's/\\u00C8/\xC8/g' \
-e 's/\\u00C9/\xC9/g' \
-e 's/\\u00CA/\xCA/g' \
-e 's/\\u00CD/\xCD/g' \
-e 's/\\u00CE/\xCE/g' \
-e 's/\\u00D3/\xD3/g' \
-e 's/\\u00D4/\xD4/g' \
-e 's/\\u00D6/\xD6/g' \
-e 's/\\u00DA/\xDA/g' \
-e 's/\\u00DC/\xDC/g' \
-e 's/\\u00DD/\xDD/g' \
-e 's/\\u00DF/\xDF/g' \
-e 's/\\u00E0/\xE0/g' \
-e 's/\\u00E1/\xE1/g' \
-e 's/\\u00E2/\xE2/g' \
-e 's/\\u00E3/\xE3/g' \
-e 's/\\u00E4/\xE4/g' \
-e 's/\\u00E5/\xE5/g' \
-e 's/\\u00E6/\xE6/g' \
-e 's/\\u00E7/\xE7/g' \
-e 's/\\u00E8/\xE8/g' \
-e 's/\\u00E9/\xE9/g' \
-e 's/\\u00EA/\xEA/g' \
-e 's/\\u00EB/\xEB/g' \
-e 's/\\u00EC/\xEC/g' \
-e 's/\\u00ED/\xED/g' \
-e 's/\\u00EE/\xEE/g' \
-e 's/\\u00EF/\xEF/g' \
-e 's/\\u00F1/\xF1/g' \
-e 's/\\u00F2/\xF2/g' \
-e 's/\\u00F3/\xF3/g' \
-e 's/\\u00F4/\xF4/g' \
-e 's/\\u00F5/\xF5/g' \
-e 's/\\u00F6/\xF6/g' \
-e 's/\\u00F9/\xF9/g' \
-e 's/\\u00FA/\xFA/g' \
-e 's/\\u00FC/\xFC/g' \
-e 's/\\u0020/\x20/g' \
-e 's/\\u003f/\x3f/g' \
-e 's/\\u006f/\x6f/g' \
-e 's/\\u0075/\x75/g' \
-e 's/\\u00a0/\xa0/g' \
-e 's/\\u00a3/\xa3/g' \
-e 's/\\u00b0/\xb0/g' \
-e 's/\\u00ba/\xba/g' \
-e 's/\\u00bf/\xbf/g' \
-e 's/\\u00c1/\xc1/g' \
-e 's/\\u00c4/\xc4/g' \
-e 's/\\u00c5/\xc5/g' \
-e 's/\\u00c8/\xc8/g' \
-e 's/\\u00c9/\xc9/g' \
-e 's/\\u00ca/\xca/g' \
-e 's/\\u00cd/\xcd/g' \
-e 's/\\u00d6/\xd6/g' \
-e 's/\\u00dc/\xdc/g' \
-e 's/\\u00dd/\xdd/g' \
-e 's/\\u00df/\xdf/g' \
-e 's/\\u00e0/\xe0/g' \
-e 's/\\u00e1/\xe1/g' \
-e 's/\\u00e2/\xe2/g' \
-e 's/\\u00e3/\xe3/g' \
-e 's/\\u00e4/\xe4/g' \
-e 's/\\u00e5/\xe5/g' \
-e 's/\\u00e7/\xe7/g' \
-e 's/\\u00e8/\xe8/g' \
-e 's/\\u00e9/\xe9/g' \
-e 's/\\u00ea/\xea/g' \
-e 's/\\u00eb/\xeb/g' \
-e 's/\\u00ec/\xec/g' \
-e 's/\\u00ed/\xed/g' \
-e 's/\\u00ee/\xee/g' \
-e 's/\\u00ef/\xef/g' \
-e 's/\\u00f0/\xf0/g' \
-e 's/\\u00f1/\xf1/g' \
-e 's/\\u00f2/\xf2/g' \
-e 's/\\u00f3/\xf3/g' \
-e 's/\\u00f4/\xf4/g' \
-e 's/\\u00f5/\xf5/g' \
-e 's/\\u00f6/\xf6/g' \
-e 's/\\u00f7/\xf7/g' \
-e 's/\\u00f8/\xf8/g' \
-e 's/\\u00f9/\xf9/g' \
-e 's/\\u00fa/\xfa/g' \
-e 's/\\u00fc/\xfc/g' \
-e 's/\\u00ff/\xff/g' \
| sed -e '/^#/d' -e '/^$/d' \
-e :a -e '/\\$/N; s/\\\n//; ta' \
-e 's/^[ \t]*//;s/[ \t]*$//' \
-e 's/\\=/=/' | LANG=C sort > $OLD.cleaned
TMP=$(LANG=C diff $OLD.cleaned $NEW)
fi
if test -n "$TMP"; then
echo Files $OLD and $NEW differ
fi

View File

@@ -1,114 +0,0 @@
#
# 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.
#
# List of files inside jar archives that are ok if they differ.
LIST_DIFF_JAR="
/sun/misc/Version.class
/sun/tools/jconsole/Version.class
/com/sun/tools/javac/resources/version.class
/com/sun/tools/javah/resources/version.class
/com/sun/tools/javap/resources/version.class
"
# List of binaries that only need to match symbols
LIST_DIFF_SIZE="
jre/lib/amd64/libfontmanager.so
jre/lib/amd64/libjdwp.so
jre/lib/amd64/libt2k.so
bin/unpack200
jre/bin/unpack200
jre/lib/amd64/libjsig.debuginfo
jre/lib/amd64/libsaproc.debuginfo
jre/lib/amd64/server/libjvm.debuginfo
"
# List of binares that need to match both symbols and size
LIST_DIFF_BYTE="
jre/lib/amd64/libdt_socket.so
jre/lib/amd64/libattach.so
jre/lib/amd64/libjaas_unix.so
jre/lib/amd64/libjawt.so
jre/lib/amd64/libjpeg.so
jre/lib/amd64/libjsdt.so
jre/lib/amd64/libjsig.so
jre/lib/amd64/libsaproc.so
jre/lib/amd64/libsctp.so
jre/lib/amd64/libsunec.so
jre/lib/amd64/libunpack.so
jre/lib/amd64/libverify.so
jre/lib/amd64/libzip.so
jre/lib/amd64/server/libjsig.so
jre/lib/amd64/server/libjvm.so
jre/lib/amd64/liblcms.so
demo/jvmti/heapTracker/lib/libheapTracker.so
demo/jvmti/hprof/lib/libhprof.so
demo/jvmti/minst/lib/libminst.so
demo/jvmti/mtrace/lib/libmtrace.so
demo/jvmti/waiters/lib/libwaiters.so
bin/appletviewer
bin/extcheck
bin/idlj
bin/jar
bin/jarsigner
bin/java
bin/javac
bin/javadoc
bin/javah
bin/javap
bin/jcmd
bin/jconsole
bin/jdb
bin/jhat
bin/jinfo
bin/jmap
bin/jps
bin/jrunscript
bin/jsadebugd
bin/jstack
bin/jstat
bin/jstatd
bin/keytool
bin/native2ascii
bin/orbd
bin/pack200
bin/policytool
bin/rmic
bin/rmid
bin/rmiregistry
bin/schemagen
bin/serialver
bin/servertool
bin/tnameserv
bin/wsgen
bin/wsimport
bin/xjc
jre/bin/java
jre/bin/keytool
jre/bin/orbd
jre/bin/pack200
jre/bin/policytool
jre/bin/rmid
jre/bin/rmiregistry
jre/bin/servertool
jre/bin/tnameserv
"

View File

@@ -1,53 +0,0 @@
#!/bin/bash
#
# 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.
#
# Must be bash, but that is ok since we are running from cygwin.
# The first argument is the vcvarsall.bat file to run.
# The second argument is the arch arg to give to vcvars.
VCVARSALL="$1"
ARCH_ARG="$2"
# Cannot use the VS10 setup script directly (since it only updates the DOS subshell environment)
# but calculate the difference in Cygwin environment before/after running it and then
# apply the diff.
_vs10varsall=`cygpath -a -m -s "$VCVARSALL"`
_dosvs10varsall=`cygpath -a -w -s $_vs10varsall`
_dosbash=`cygpath -a -w -s \`which bash\`.*`
# generate the set of exported vars before/after the vs10 setup
echo "@echo off" > localdevenvtmp.bat
echo "$_dosbash -c \"export -p\" > localdevenvtmp.export0" >> localdevenvtmp.bat
echo "call $_dosvs10varsall $ARCH_ARG" >> localdevenvtmp.bat
echo "$_dosbash -c \"export -p\" > localdevenvtmp.export1" >> localdevenvtmp.bat
cmd /c localdevenvtmp.bat
# apply the diff (less some non-vs10 vars named by "!")
sort localdevenvtmp.export0 |grep -v "!" > localdevenvtmp.export0.sort
sort localdevenvtmp.export1 |grep -v "!" > localdevenvtmp.export1.sort
comm -1 -3 localdevenvtmp.export0.sort localdevenvtmp.export1.sort > localdevenv.sh
cat localdevenv.sh | sed 's/declare -x /export /g' | sed 's/="/:="/g' | sed 's/\\\\/\\/g' | sed 's/"//g' | \
sed 's/#/\$\(HASH\)/g' > localdevenv.gmk
# cleanup
rm -f localdevenvtmp*

215
common/bin/hgforest.sh Normal file
View File

@@ -0,0 +1,215 @@
#!/bin/sh
#
# Copyright (c) 2009, 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.
#
# Shell script for a fast parallel forest command
command="$1"
pull_extra_base="$2"
# Python always buffers stdout significantly, thus we will not see any output from hg clone jdk,
# until a lot of time has passed! By passing -u to python, we get incremental updates
# on stdout. Much nicer.
whichhg="`which hg`"
if [ "${whichhg}" = "" ] ; then
echo Cannot find hg!
exit 1
fi
if [ "" = "$command" ] ; then
echo No command to hg supplied!
exit 1
fi
has_hash_bang="`head -n 1 "${whichhg}" | cut -b 1-2`"
python=""
bpython=""
if [ "#!" = "$has_hash_bang" ] ; then
python="`head -n 1 ${whichhg} | cut -b 3-`"
bpython="`basename "$python"`"
fi
if [ "python" = "$bpython" -a -x "$python" ] ; then
hg="${python} -u ${whichhg}"
else
echo Cannot find python from hg launcher. Running plain hg, which probably has buffered stdout.
hg="hg"
fi
# Clean out the temporary directory that stores the pid files.
tmp=/tmp/forest.$$
rm -f -r ${tmp}
mkdir -p ${tmp}
safe_interrupt () {
if [ -d ${tmp} ]; then
if [ "`ls ${tmp}/*.pid`" != "" ]; then
echo "Waiting for processes ( `cat ${tmp}/*.pid | tr '\n' ' '`) to terminate nicely!"
sleep 1
# Pipe stderr to dev/null to silence kill, that complains when trying to kill
# a subprocess that has already exited.
kill -TERM `cat ${tmp}/*.pid | tr '\n' ' '` 2> /dev/null
wait
echo Interrupt complete!
fi
fi
rm -f -r ${tmp}
exit 1
}
nice_exit () {
if [ -d ${tmp} ]; then
if [ "`ls ${tmp}`" != "" ]; then
wait
fi
fi
rm -f -r ${tmp}
}
trap 'safe_interrupt' INT QUIT
trap 'nice_exit' EXIT
# Only look in specific locations for possible forests (avoids long searches)
pull_default=""
repos=""
repos_extra=""
if [ "${command}" = "clone" -o "${command}" = "fclone" ] ; then
subrepos="corba jaxp jaxws langtools jdk hotspot"
if [ -f .hg/hgrc ] ; then
pull_default=`hg paths default`
if [ "${pull_default}" = "" ] ; then
echo "ERROR: Need initial clone with 'hg paths default' defined"
exit 1
fi
fi
if [ "${pull_default}" = "" ] ; then
echo "ERROR: Need initial repository to use this script"
exit 1
fi
for i in ${subrepos} ; do
if [ ! -f ${i}/.hg/hgrc ] ; then
repos="${repos} ${i}"
fi
done
if [ "${pull_extra_base}" != "" ] ; then
subrepos_extra="jdk/src/closed jdk/make/closed jdk/test/closed hotspot/make/closed hotspot/src/closed hotspot/test/closed deploy install sponsors pubs"
pull_default_tail=`echo ${pull_default} | sed -e 's@^.*://[^/]*/\(.*\)@\1@'`
pull_extra="${pull_extra_base}/${pull_default_tail}"
for i in ${subrepos_extra} ; do
if [ ! -f ${i}/.hg/hgrc ] ; then
repos_extra="${repos_extra} ${i}"
fi
done
fi
at_a_time=2
# Any repos to deal with?
if [ "${repos}" = "" -a "${repos_extra}" = "" ] ; then
exit
fi
else
hgdirs=`ls -d ./.hg ./*/.hg ./*/*/.hg ./*/*/*/.hg ./*/*/*/*/.hg 2>/dev/null`
# Derive repository names from the .hg directory locations
for i in ${hgdirs} ; do
repos="${repos} `echo ${i} | sed -e 's@/.hg$@@'`"
done
for i in ${repos} ; do
if [ -h ${i}/.hg/store/lock -o -f ${i}/.hg/store/lock ] ; then
locked="${i} ${locked}"
fi
done
at_a_time=8
# Any repos to deal with?
if [ "${repos}" = "" ] ; then
echo "No repositories to process."
exit
fi
if [ "${locked}" != "" ] ; then
echo "These repositories are locked: ${locked}"
exit
fi
fi
# Echo out what repositories we do a command on.
echo "# Repositories: ${repos} ${repos_extra}"
echo
# Run the supplied command on all repos in parallel.
n=0
for i in ${repos} ${repos_extra} ; do
n=`expr ${n} '+' 1`
repopidfile=`echo ${i} | sed -e 's@./@@' -e 's@/@_@g'`
reponame=`echo ${i} | sed -e :a -e 's/^.\{1,20\}$/ &/;ta'`
pull_base="${pull_default}"
for j in $repos_extra ; do
if [ "$i" = "$j" ] ; then
pull_base="${pull_extra}"
fi
done
(
(
if [ "${command}" = "clone" -o "${command}" = "fclone" ] ; then
pull_newrepo="`echo ${pull_base}/${i} | sed -e 's@\([^:]/\)//*@\1@g'`"
echo ${hg} clone ${pull_newrepo} ${i}
path="`dirname ${i}`"
if [ "${path}" != "." ] ; then
times=0
while [ ! -d "${path}" ] ## nested repo, ensure containing dir exists
do
times=`expr ${times} '+' 1`
if [ `expr ${times} '%' 10` -eq 0 ] ; then
echo ${path} still not created, waiting...
fi
sleep 5
done
fi
(${hg} clone ${pull_newrepo} ${i}; echo "$?" > ${tmp}/${repopidfile}.pid.rc )&
else
echo "cd ${i} && ${hg} $*"
cd ${i} && (${hg} "$@"; echo "$?" > ${tmp}/${repopidfile}.pid.rc )&
fi
echo $! > ${tmp}/${repopidfile}.pid
) 2>&1 | sed -e "s@^@${reponame}: @") &
if [ `expr ${n} '%' ${at_a_time}` -eq 0 ] ; then
sleep 2
echo Waiting 5 secs before spawning next background command.
sleep 3
fi
done
# Wait for all hg commands to complete
wait
# Terminate with exit 0 only if all subprocesses were successful
ec=0
if [ -d ${tmp} ]; then
for rc in ${tmp}/*.pid.rc ; do
exit_code=`cat ${rc} | tr -d ' \n\r'`
if [ "${exit_code}" != "0" ] ; then
echo "WARNING: ${rc} exited abnormally."
ec=1
fi
done
fi
exit ${ec}

View File

@@ -1,4 +1,4 @@
#!/bin/sh
#!/bin/bash
#
# Copyright (c) 2012, Oracle and/or its affiliates. All rights reserved.
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.

View File

@@ -1,4 +1,4 @@
#!/bin/sh
#!/bin/bash
#
# Copyright (c) 2012, Oracle and/or its affiliates. All rights reserved.
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.

View File

@@ -0,0 +1,47 @@
#!/bin/bash
#
# 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.
#
# Usage: sh shell-tracer.sh <TIME_CMD> <OUTPUT_FILE> <OLD_SHELL> <shell command line>
#
# This shell script is supposed to be set as a replacement for SHELL in make,
# causing it to be called whenever make wants to execute shell commands.
# The <shell command line> is suitable for passing on to the old shell,
# typically beginning with -c.
#
# This script will make sure the shell command line is executed with
# OLD_SHELL -x, and it will also store a simple log of the the time it takes to
# execute the command in the OUTPUT_FILE, using the "time" utility as pointed
# to by TIME_CMD. If TIME_CMD is "-", no timestamp will be stored.
TIME_CMD="$1"
OUTPUT_FILE="$2"
OLD_SHELL="$3"
shift
shift
shift
if [ "$TIME_CMD" != "-" ]; then
"$TIME_CMD" -f "[TIME:%E] $*" -a -o "$OUTPUT_FILE" "$OLD_SHELL" -x "$@"
else
"$OLD_SHELL" -x "$@"
fi

184
common/bin/test_builds.sh Normal file
View File

@@ -0,0 +1,184 @@
#!/bin/bash
set -x
set -e
options="$*"
option="$1"
tmp=/tmp/test_builds.$$
rm -f -r ${tmp}
mkdir -p ${tmp}
errMessages=${tmp}/error_messages.txt
#######
# Error function
error() # message
{
echo "ERROR: $1" | tee -a ${errMessages}
}
# Check errors
checkErrors()
{
if [ -s ${errMessages} ] ; then
cat ${errMessages}
exit 1
fi
}
#######
os="`uname -s`"
arch="`uname -p`"
make=make
if [ "${os}" = "SunOS" ] ; then
make=gmake
export J7="/opt/java/jdk1.7.0"
elif [ "${os}" = "Darwin" ] ; then
export J7="/Library/Java/JavaVirtualMachines/1.7.0.jdk/Contents/Home"
elif [ "${os}" = "Linux" -a "${arch}" = "x86_64" ] ; then
export J7="/usr/lib/jvm/java-7-openjdk-amd64/"
else
echo "What os/arch is this: ${os}/${arch}"
exit 1
fi
# Must have a jdk7
if [ ! -d ${J7} ] ; then
echo "No JDK7 found at: ${J7}"
exit 1
fi
# What sources we use
fromroot="http://hg.openjdk.java.net/build-infra/jdk8"
# Where we do it
root="testbuilds"
mkdir -p ${root}
# Three areas, last three are cloned from first to insure sameness
t0=${root}/t0
t1=${root}/t1
t2=${root}/t2
t3=${root}/t3
repolist="${t0} ${t1} ${t2} ${t3}"
# Optional complete clobber
if [ "${option}" = "clobber" ] ; then
for i in ${repolist} ; do
rm -f -r ${i}
done
fi
# Get top repos
if [ ! -d ${t0}/.hg ] ; then
rm -f -r ${t0}
hg clone ${fromroot} ${t0}
fi
for i in ${t1} ${t2} ${t3} ; do
if [ ! -d ${i}/.hg ] ; then
hg clone ${t0} ${i}
fi
done
# Get repos updated
for i in ${repolist} ; do
( \
set -e \
&& cd ${i} \
&& sh ./get_source.sh \
|| error "Cannot get source" \
) 2>&1 | tee ${i}.get_source.txt
checkErrors
done
# Optional clean
if [ "${option}" = "clean" ] ; then
for i in ${repolist} ; do
rm -f -r ${i}/build
rm -f -r ${i}/*/build
rm -f -r ${i}/*/dist
done
fi
# Check changes on working set files
for i in ${repolist} ; do
( \
set -e \
&& cd ${i} \
&& sh ./make/scripts/hgforest.sh status \
|| error "Cannot check status" \
) 2>&1 | tee ${i}.hg.status.txt
checkErrors
done
# Configure for build-infra building
for i in ${t1} ${t2} ; do
( \
set -e \
&& cd ${i}/common/makefiles \
&& sh ../autoconf/configure --with-boot-jdk=${J7} \
|| error "Cannot configure" \
) 2>&1 | tee ${i}.config.txt
checkErrors
done
# Do build-infra builds
for i in ${t1} ${t2} ; do
( \
set -e \
&& cd ${i}/common/makefiles \
&& ${make} \
FULL_VERSION:=1.8.0-internal-b00 \
JRE_RELEASE_VERSION:=1.8.0-internal-b00 \
USER_RELEASE_SUFFIX:=compare \
RELEASE:=1.8.0-internal \
VERBOSE= \
LIBARCH= \
all images \
|| error "Cannot build" \
) 2>&1 | tee ${i}.build.txt
checkErrors
done
# Compare build-infra builds
( \
sh ${t0}/common/bin/compareimage.sh \
${t1}/build/*/images/j2sdk-image \
${t2}/build/*/images/j2sdk-image \
|| error "Cannot compare" \
) 2>&1 | tee ${root}/build-infra-comparison.txt
checkErrors
# Do old build
unset JAVA_HOME
export ALT_BOOTDIR="${J7}"
( \
cd ${t3} \
&& ${make} FULL_VERSION='"1.8.0-internal" sanity \
|| error "Cannot sanity" \
) 2>&1 | tee ${t3}.sanity.txt
checkErrors
( \
cd ${t3} \
&& ${make} \
FULL_VERSION='"1.8.0-internal" \
JRE_RELEASE_VERSION:=1.8.0-internal-b00 \
USER_RELEASE_SUFFIX:=compare \
RELEASE:=1.8.0-internal \
|| error "Cannot build old way" \
) 2>&1 | tee ${t3}.build.txt
checkErrors
# Compare old build to build-infra build
( \
sh ${t0}/common/bin/compareimage.sh \
${t3}/build/*/j2sdk-image \
${t1}/build/*/images/j2sdk-image \
|| error "Cannot compare" \
) 2>&1 | tee ${root}/build-comparison.txt
checkErrors
exit 0

View File

@@ -0,0 +1,52 @@
#
# 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. Oracle designates this
# particular file as subject to the "Classpath" exception as provided
# by Oracle in the LICENSE file that accompanied this code.
#
# 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 the legacy hotspot-spec.gmk (which in turns includes spec.gmk)
BASE_SPEC:=$(SPEC)
include $(dir $(SPEC))hotspot-spec.gmk
include MakeBase.gmk
# Inclusion of this pseudo-target will cause make to execute this file
# serially, regardless of -j. Recursively called makefiles will not be
# affected, however. This is required for correct dependency management.
.NOTPARALLEL:
default: all
# Get all files except .hg in the hotspot directory.
HOTSPOT_FILES := $(shell $(FIND) -L $(HOTSPOT_TOPDIR) -name ".hg" -prune -o -print)
# The old build creates hotspot output dir before calling hotspot and
# not doing it breaks builds on msys.
$(HOTSPOT_OUTPUTDIR)/_hotspot.timestamp: $(HOTSPOT_FILES)
@$(MKDIR) -p $(HOTSPOT_OUTPUTDIR)
@($(CD) $(HOTSPOT_TOPDIR)/make && $(MAKE) -j1 $(HOTSPOT_MAKE_ARGS) SPEC=$(HOTSPOT_SPEC) BASE_SPEC=$(BASE_SPEC))
$(TOUCH) $@
hotspot: $(HOTSPOT_OUTPUTDIR)/_hotspot.timestamp
all: hotspot
.PHONY: default all hotspot

View File

@@ -59,7 +59,7 @@ define add_idl_package
$(MKDIR) -p $3/$$($4_TMPDIR)
$(RM) -rf $3/$$($4_TMPDIR)
$(MKDIR) -p $(dir $5)
$(ECHO) Compiling IDL $(patsubst $2/%,%,$4)
$(ECHO) $(LOG_INFO) Compiling IDL $(patsubst $2/%,%,$4)
$8 -td $3/$$($4_TMPDIR) \
-i $2/org/omg/CORBA \
-i $2/org/omg/PortableInterceptor \
@@ -71,7 +71,7 @@ define add_idl_package
$4
$(RM) -f $$(addprefix $3/$$($4_TMPDIR)/,$6)
$(CP) -rp $3/$$($4_TMPDIR)/* $3
($(CD) $3/$$($4_TMPDIR); find . -type f | sed 's!\./!$3/!g' | awk '{ print $$$$1 ": $4" }' > $5)
($(CD) $3/$$($4_TMPDIR) && $(FIND) . -type f | $(SED) 's!\./!$3/!g' | $(NAWK) '{ print $$$$1 ": $4" }' > $5)
$(RM) -rf $3/$$($4_TMPDIR)
endef
@@ -79,21 +79,15 @@ define SetupIdlCompilation
# param 1 is for example BUILD_IDLS
# param 2,3,4,5,6,7,8 are named args.
# IDLJ,SRC,BIN,INCLUDES,EXCLUDES,OLDIMPLBASES,DELETES
$(if $2,$1_$(strip $2))
$(if $3,$1_$(strip $3))
$(if $4,$1_$(strip $4))
$(if $5,$1_$(strip $5))
$(if $6,$1_$(strip $6))
$(if $7,$1_$(strip $7))
$(if $8,$1_$(strip $8))
$(if $9,$1_$(strip $9))
$(if $(10),$(error Internal makefile error: Too many arguments to SetupIdlCompilation, please update IdlCompilation.gmk))
$(foreach i,2 3 4 5 6 7 8 9 10 11 12 13 14 15, $(if $($i),$1_$(strip $($i)))$(NEWLINE))
$(call LogSetupMacroEntry,SetupIdlCompilation($1),$2,$3,$4,$5,$6,$7,$8,$9,$(10),$(11),$(12),$(13),$(14),$(15))
$(if $(16),$(error Internal makefile error: Too many arguments to SetupIdlCompilation, please update IdlCompilation.gmk))
# Remove any relative addressing in the paths.
$1_SRC := $$(abspath $$($1_SRC))
$1_BIN := $$(abspath $$($1_BIN))
# Find all existing java files and existing class files.
$$(shell $(MKDIR) -p $$($1_SRC) $$($1_BIN))
$$(eval $$(call MakeDir,$$($1_BIN)))
$1_SRCS := $$(shell find $$($1_SRC) -name "*.idl")
$1_BINS := $$(shell find $$($1_BIN) -name "*.java")
# Prepend the source/bin path to the filter expressions.

File diff suppressed because it is too large Load Diff

234
common/makefiles/Jprt.gmk Normal file
View File

@@ -0,0 +1,234 @@
#
# 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. Oracle designates this
# particular file as subject to the "Classpath" exception as provided
# by Oracle in the LICENSE file that accompanied this code.
#
# 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.
#
# This file is included by the root NewerMakefile and contains targets
# and utilities needed by JPRT.
# Utilities used in this Makefile. Most of this makefile executes without
# the context of a spec file from configure.
CAT=cat
CMP=cmp
CP=cp
ECHO=echo
MKDIR=mkdir
PRINTF=printf
PWD=pwd
# Insure we have a path that looks like it came from pwd
# (This is mostly for Windows sake and drive letters)
define UnixPath # path
$(shell (cd "$1" && $(PWD)))
endef
BUILD_DIR_ROOT:=$(root_dir)/build
ifdef OPENJDK
OPEN_BUILD=true
else
OPEN_BUILD := $(if $(or $(wildcard $(root_dir)/jdk/src/closed), \
$(wildcard $(root_dir)/jdk/make/closed), \
$(wildcard $(root_dir)/jdk/test/closed), \
$(wildcard $(root_dir)/hotspot/src/closed), \
$(wildcard $(root_dir)/hotspot/make/closed), \
$(wildcard $(root_dir)/hotspot/test/closed)), \
false,true)
endif
HOTSPOT_AVAILABLE := $(if $(wildcard $(root_dir)/hotspot),true,false)
###########################################################################
# To help in adoption of the new configure&&make build process, a bridge
# build will use the old settings to run configure and do the build.
# Build with the configure bridge. After running configure, restart make
# to parse the new spec file.
BRIDGE_TARGETS := all
bridgeBuild: bridge2configure
@cd $(root_dir) && $(MAKE) -f NewMakefile.gmk $(BRIDGE_TARGETS)
# Bridge from old Makefile ALT settings to configure options
bridge2configure: $(BUILD_DIR_ROOT)/.bridge2configureOpts
bash ./configure $(strip $(shell $(CAT) $<))
# Create a file with configure options created from old Makefile mechanisms.
$(BUILD_DIR_ROOT)/.bridge2configureOpts: $(BUILD_DIR_ROOT)/.bridge2configureOptsLatest
$(RM) $@
$(CP) $< $@
# Use this file to only change when obvious things have changed
$(BUILD_DIR_ROOT)/.bridge2configureOptsLatest: FRC
$(RM) $@.tmp
$(MKDIR) -p $(BUILD_DIR_ROOT)
@$(ECHO) " --with-debug-level=$(if $(DEBUG_LEVEL),$(DEBUG_LEVEL),release) " >> $@.tmp
ifdef ARCH_DATA_MODEL
@$(ECHO) " --with-target-bits=$(ARCH_DATA_MODEL) " >> $@.tmp
endif
ifeq ($(ARCH_DATA_MODEL),32)
@$(ECHO) " --with-jvm-variants=client,server " >> $@.tmp
endif
ifdef ALT_PARALLEL_COMPILE_JOBS
@$(ECHO) " --with-num-cores=$(ALT_PARALLEL_COMPILE_JOBS) " >> $@.tmp
endif
ifdef ALT_BOOTDIR
@$(ECHO) " --with-boot-jdk=$(call UnixPath,$(ALT_BOOTDIR)) " >> $@.tmp
endif
ifdef ALT_CUPS_HEADERS_PATH
@$(ECHO) " --with-cups-include=$(call UnixPath,$(ALT_CUPS_HEADERS_PATH)) " >> $@.tmp
endif
ifdef ALT_FREETYPE_HEADERS_PATH
@$(ECHO) " --with-freetype=$(call UnixPath,$(ALT_FREETYPE_HEADERS_PATH)/..) " >> $@.tmp
endif
ifeq ($(HOTSPOT_AVAILABLE),false)
ifdef ALT_JDK_IMPORT_PATH
@$(ECHO) " --with-import-hotspot=$(call UnixPath,$(ALT_JDK_IMPORT_PATH)) " >> $@.tmp
endif
endif
ifeq ($(OPEN_BUILD),true)
@$(ECHO) " --enable-openjdk-only " >> $@.tmp
else
# Todo: move to closed?
ifdef ALT_MOZILLA_HEADERS_PATH
@$(ECHO) " --with-mozilla-headers=$(call UnixPath,$(ALT_MOZILLA_HEADERS_PATH)) " >> $@.tmp
endif
ifdef ALT_JUNIT_DIR
@$(ECHO) " --with-junit-dir=$(call UnixPath,$(ALT_JUNIT_DIR)) " >> $@.tmp
endif
ifdef ANT_HOME
@$(ECHO) " --with-ant-home=$(call UnixPath,$(ANT_HOME)) " >> $@.tmp
endif
ifdef ALT_JAVAFX_ZIP_DIR
@$(ECHO) " --with-javafx-zip-dir=$(call UnixPath,$(ALT_JAVAFX_ZIP_DIR)) " >> $@.tmp
endif
ifdef ALT_WIXDIR
@$(ECHO) " --with-wix=$(call UnixPath,$(ALT_WIXDIR)) " >> $@.tmp
endif
ifdef ALT_CCSS_SIGNING_DIR
@$(ECHO) " --with-ccss-signing=$(call UnixPath,$(ALT_CCSS_SIGNING_DIR)) " >> $@.tmp
endif
ifdef ALT_SLASH_JAVA
@$(ECHO) " --with-java-devtools=$(call UnixPath,$(ALT_SLASH_JAVA)/devtools) " >> $@.tmp
endif
ifdef ALT_SPARKLE_FRAMEWORK_DIR
@$(ECHO) " --with-sparkle-framework=$(call UnixPath,$(ALT_SPARKLE_FRAMEWORK_DIR)) " >> $@.tmp
endif
endif
@if [ -f $@ ] ; then \
if ! $(CMP) $@ $@.tmp > /dev/null ; then \
$(CP) $@.tmp $@ ; \
fi ; \
else \
$(CP) $@.tmp $@ ; \
fi
$(RM) $@.tmp
PHONY_LIST += bridge2configure bridgeBuild
###########################################################################
# JPRT targets
ifndef JPRT_ARCHIVE_BUNDLE
JPRT_ARCHIVE_BUNDLE=/tmp/jprt_bundles/j2sdk-image.zip
endif
ifndef JPRT_ARCHIVE_INSTALL_BUNDLE
JPRT_ARCHIVE_INSTALL_BUNDLE=/tmp/jprt_bundles/product-install.zip
endif
# These targets execute in a SPEC free context, before calling bridgeBuild
# to generate the SPEC.
jprt_build_product: DEBUG_LEVEL=release
jprt_build_product: BUILD_DIRNAME=*-release
jprt_build_product: jprt_build_generic
jprt_build_fastdebug: DEBUG_LEVEL=fastdebug
jprt_build_fastdebug: BUILD_DIRNAME=*-fastdebug
jprt_build_fastdebug: jprt_build_generic
jprt_build_debug: DEBUG_LEVEL=slowdebug
jprt_build_debug: BUILD_DIRNAME=*-debug
jprt_build_debug: jprt_build_generic
jprt_build_generic: BRIDGE_TARGETS+=jprt_bundle
jprt_build_generic: bridgeBuild
# This target must be called in the context of a SPEC file
jprt_bundle: $(JPRT_ARCHIVE_BUNDLE)
@$(call CheckIfMakeAtEnd)
# This target must be called in the context of a SPEC file
$(JPRT_ARCHIVE_BUNDLE): bundles
$(MKDIR) -p $(@D)
$(RM) $@
$(CP) $(BUILD_OUTPUT)/bundles/$(JDK_IMAGE_SUBDIR).zip $@
ifeq ($(OPENJDK_TARGET_OS)-$(OPENJDK_TARGET_CPU_BITS),solaris-64)
SRC_JDK_IMAGE_DIR := $(JDK_OVERLAY_IMAGE_DIR)
SRC_JRE_IMAGE_DIR := $(JRE_OVERLAY_IMAGE_DIR)
else
SRC_JDK_IMAGE_DIR := $(JDK_IMAGE_DIR)
SRC_JRE_IMAGE_DIR := $(JRE_IMAGE_DIR)
endif
SRC_JDK_BUNDLE_DIR := $(JDK_BUNDLE_DIR)
SRC_JRE_BUNDLE_DIR := $(JRE_BUNDLE_DIR)
# Bundle up the images
bundles: all bundles-only
bundles-only: start-make
@$(call TargetEnter)
$(MKDIR) -p $(BUILD_OUTPUT)/bundles
$(CD) $(SRC_JDK_IMAGE_DIR) && $(ZIP) -q -r $(BUILD_OUTPUT)/bundles/$(JDK_IMAGE_SUBDIR).zip .
$(CD) $(SRC_JRE_IMAGE_DIR) && $(ZIP) -q -r $(BUILD_OUTPUT)/bundles/$(JRE_IMAGE_SUBDIR).zip .
if [ -d $(BUILD_OUTPUT)/install/bundles ] ; then \
$(CD) $(BUILD_OUTPUT)/install/bundles && $(ZIP) -q -r $(JPRT_ARCHIVE_INSTALL_BUNDLE) . ; \
fi
@$(call TargetExit)
# Copy images to one unified location regardless of platform etc.
final-images: all final-images-only
final-images-only: start-make
@$(call TargetEnter)
$(RM) -r $(BUILD_OUTPUT)/final-images
$(MKDIR) -p $(BUILD_OUTPUT)/final-images/$(JDK_IMAGE_SUBDIR)
$(MKDIR) -p $(BUILD_OUTPUT)/final-images/$(JRE_IMAGE_SUBDIR)
$(CP) -R -P $(SRC_JDK_IMAGE_DIR)/* $(BUILD_OUTPUT)/final-images/$(JDK_IMAGE_SUBDIR)/
$(CP) -R -P $(SRC_JRE_IMAGE_DIR)/* $(BUILD_OUTPUT)/final-images/$(JRE_IMAGE_SUBDIR)/
ifeq ($(OPENJDK_TARGET_OS),macosx)
$(MKDIR) -p $(BUILD_OUTPUT)/final-images/$(JDK_BUNDLE_SUBDIR)
$(MKDIR) -p $(BUILD_OUTPUT)/final-images/$(JRE_BUNDLE_SUBDIR)
$(CP) -R -P $(SRC_JDK_BUNDLE_DIR)/* $(BUILD_OUTPUT)/final-images/$(JDK_BUNDLE_SUBDIR)/
$(CP) -R -P $(SRC_JRE_BUNDLE_DIR)/* $(BUILD_OUTPUT)/final-images/$(JRE_BUNDLE_SUBDIR)/
endif
@$(call TargetExit)
# Keep track of phony targets
PHONY_LIST += jprt_build_product jprt_build_fastdebug jprt_build_debug \
jprt_build_generic bundles jprt_bundle \
final-images final-images-only
###########################################################################
# Phony targets
.PHONY: $(PHONY_LIST)
# Force target
FRC:

242
common/makefiles/Main.gmk Normal file
View File

@@ -0,0 +1,242 @@
#
# 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. Oracle designates this
# particular file as subject to the "Classpath" exception as provided
# by Oracle in the LICENSE file that accompanied this code.
#
# 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.
#
### This is the main part of the Makefile, for the normal case with SPEC specifying a single existing spec.gmk file.
# Now load the spec
include $(SPEC)
# Load the vital tools for all the makefiles.
include $(SRC_ROOT)/common/makefiles/MakeBase.gmk
# Include the corresponding custom file, if present.
-include $(CUSTOM_MAKE_DIR)/Main.gmk
### Clean up from previous run
# Remove any build.log from a previous run, if they exist
ifneq (,$(BUILD_LOG))
ifneq (,$(BUILD_LOG_PREVIOUS))
# Rotate old log
$(shell $(RM) $(BUILD_LOG_PREVIOUS) 2> /dev/null)
$(shell $(MV) $(BUILD_LOG) $(BUILD_LOG_PREVIOUS) 2> /dev/null)
else
$(shell $(RM) $(BUILD_LOG) 2> /dev/null)
endif
$(shell $(RM) $(OUTPUT_ROOT)/build-trace-time.log 2> /dev/null)
endif
# Remove any javac server logs and port files. This
# prevents a new make run to reuse the previous servers.
ifneq (,$(SJAVAC_SERVER_DIR))
$(shell $(MKDIR) -p $(SJAVAC_SERVER_DIR) && $(RM) -rf $(SJAVAC_SERVER_DIR)/*)
endif
# Reset the build timers.
$(eval $(call ResetAllTimers))
# Setup number of jobs to use. -jN is unfortunately not available for us to parse from the command line,
# hence this workaround.
ifeq ($(JOBS),)
JOBS=$(NUM_CORES)
endif
MAKE_ARGS:=$(MAKE_ARGS) -j$(JOBS)
### Main targets
default: jdk
@$(call CheckIfMakeAtEnd)
all: images docs
@$(call CheckIfMakeAtEnd)
ifeq ($(OPENJDK_TARGET_OS)-$(OPENJDK_TARGET_CPU_BITS),solaris-64)
all: overlay-images
endif
# Setup a rule for SPEC file that fails if executed. This check makes sure the configuration
# is up to date after changes to configure
$(SPEC): $(wildcard $(SRC_ROOT)/common/autoconf/*)
@$(ECHO) ERROR: $(SPEC) is not up to date
@$(ECHO) Please rerun configure!
@if test "x$(IGNORE_OLD_CONFIG)" != "xtrue"; then exit 1; fi
start-make: $(SPEC)
@$(call AtMakeStart)
langtools: langtools-only
langtools-only: start-make
@$(call TargetEnter)
@($(CD) $(LANGTOOLS_TOPDIR)/makefiles && $(BUILD_LOG_WRAPPER) $(MAKE) $(MAKE_ARGS) -f BuildLangtools.gmk)
@$(call TargetExit)
corba: langtools corba-only
corba-only: start-make
@$(call TargetEnter)
@($(CD) $(CORBA_TOPDIR)/makefiles && $(BUILD_LOG_WRAPPER) $(MAKE) $(MAKE_ARGS) -f BuildCorba.gmk)
@$(call TargetExit)
jaxp: langtools jaxp-only
jaxp-only: start-make
@$(call TargetEnter)
@($(CD) $(JAXP_TOPDIR)/makefiles && $(BUILD_LOG_WRAPPER) $(MAKE) $(MAKE_ARGS) -f BuildJaxp.gmk)
@$(call TargetExit)
jaxws: langtools jaxp jaxws-only
jaxws-only: start-make
@$(call TargetEnter)
@($(CD) $(JAXWS_TOPDIR)/makefiles && $(BUILD_LOG_WRAPPER) $(MAKE) $(MAKE_ARGS) -f BuildJaxws.gmk)
@$(call TargetExit)
ifeq ($(BUILD_HOTSPOT),true)
hotspot: hotspot-only
hotspot-only: start-make
@$(call TargetEnter)
@($(CD) $(SRC_ROOT)/common/makefiles && $(BUILD_LOG_WRAPPER) $(MAKE) $(MAKE_ARGS) -f HotspotWrapper.gmk)
@$(call TargetExit)
endif
jdk: langtools hotspot corba jaxp jaxws jdk-only
jdk-only: start-make
@$(call TargetEnter)
@($(CD) $(JDK_TOPDIR)/makefiles && $(BUILD_LOG_WRAPPER) $(MAKE) $(MAKE_ARGS) -f BuildJdk.gmk $(JDK_TARGET))
@$(call TargetExit)
demos: jdk demos-only
demos-only: start-make
@$(call TargetEnter)
@($(CD) $(JDK_TOPDIR)/makefiles && $(BUILD_LOG_WRAPPER) $(MAKE) $(MAKE_ARGS) -f BuildJdk.gmk demos)
@$(call TargetExit)
# Note: This double-colon rule is intentional, to support
# custom make file integration.
images:: source-tips demos images-only
images-only: start-make
@$(call TargetEnter)
@($(CD) $(JDK_TOPDIR)/makefiles && $(BUILD_LOG_WRAPPER) $(MAKE) $(MAKE_ARGS) -f BuildJdk.gmk images)
@$(call TargetExit)
overlay-images: source-tips demos overlay-images-only
overlay-images-only: start-make
@$(call TargetEnter)
@($(CD) $(JDK_TOPDIR)/makefiles && $(BUILD_LOG_WRAPPER) $(MAKE) $(MAKE_ARGS) -f BuildJdk.gmk overlay-images)
@$(call TargetExit)
profiles: profiles-oscheck source-tips jdk hotspot profiles-only
profiles-only: start-make
@$(call TargetEnter)
@($(CD) $(JDK_TOPDIR)/makefiles && $(BUILD_LOG_WRAPPER) $(MAKE) $(MAKE_ARGS) -f BuildJdk.gmk profiles)
@$(call TargetExit)
profiles-oscheck:
ifneq ($(OPENJDK_TARGET_OS), linux)
@echo "Error: The Java SE 8 Compact Profiles are only implemented for Linux at this time" && exit 1
endif
install: images install-only
install-only: start-make
@$(call TargetEnter)
@($(CD) $(JDK_TOPDIR)/makefiles && $(BUILD_LOG_WRAPPER) $(MAKE) $(MAKE_ARGS) -f BuildJdk.gmk install)
@$(call TargetExit)
docs: jdk docs-only
docs-only: start-make
@$(call TargetEnter)
@($(CD) $(SRC_ROOT)/common/makefiles/javadoc && $(BUILD_LOG_WRAPPER) $(MAKE) $(MAKE_ARGS) -f Javadoc.gmk docs)
@$(call TargetExit)
sign-jars: jdk sign-jars-only
sign-jars-only: start-make
@$(call TargetEnter)
@($(CD) $(JDK_TOPDIR)/makefiles && $(BUILD_LOG_WRAPPER) $(MAKE) $(MAKE_ARGS) -f BuildJdk.gmk sign-jars)
@$(call TargetExit)
bootcycle-images:
@$(ECHO) Boot cycle build step 1: Building the JDK image normally
@($(CD) $(SRC_ROOT)/common/makefiles && $(BUILD_LOG_WRAPPER) $(MAKE) SPEC=$(SPEC) images)
@$(ECHO) Boot cycle build step 2: Building a new JDK image using previously built image
@($(CD) $(SRC_ROOT)/common/makefiles && $(BUILD_LOG_WRAPPER) $(MAKE) SPEC=$(dir $(SPEC))bootcycle-spec.gmk images)
test: start-make
@$(call TargetEnter)
@($(CD) $(SRC_ROOT)/test && $(BUILD_LOG_WRAPPER) $(MAKE) -j1 -k MAKEFLAGS= PRODUCT_HOME=$(OUTPUT_ROOT)/jdk JPRT_JAVA_HOME=$(OUTPUT_ROOT)/jdk ALT_OUTPUTDIR=$(OUTPUT_ROOT) $(TEST)) || true
@$(call TargetExit)
# Stores the tips for each repository. This file is be used when constructing the jdk image and can be
# used to track the exact sources used to build that image.
source-tips: $(OUTPUT_ROOT)/source_tips
$(OUTPUT_ROOT)/source_tips: FRC
@$(MKDIR) -p $(@D)
@$(RM) $@
@$(if $(HG),$(call GetSourceTips),$(ECHO) "hg not installed" > $@)
# Remove everything, except the output from configure.
clean: clean-langtools clean-corba clean-jaxp clean-jaxws clean-hotspot clean-jdk clean-images clean-overlay-images clean-bootcycle-build clean-docs
@($(CD) $(OUTPUT_ROOT) && $(RM) -r tmp source_tips build.log* build-trace*.log*)
@$(ECHO) Cleaned all build artifacts.
# Remove everything, including configure configuration.
# If the output directory was created by configure and now becomes empty, remove it as well.
# FIXME: tmp should not be here, fix ResetTimers instead. And remove spec.sh!
dist-clean: clean
@($(CD) $(OUTPUT_ROOT) && $(RM) -r *spec.gmk config.* configure-arguments Makefile compare.sh spec.sh tmp)
@$(if $(filter $(CONF_NAME),$(notdir $(OUTPUT_ROOT))), \
if test "x`$(LS) $(OUTPUT_ROOT)`" != x; then \
$(ECHO) "Warning: Not removing non-empty configuration directory for '$(CONF_NAME)'" ;\
else \
($(CD) $(SRC_ROOT) && $(ECHO) "Removing configuration directory for '$(CONF_NAME)'" && $(RM) -r $(OUTPUT_ROOT)) \
fi \
)
@$(ECHO) Cleaned everything, you will have to re-run configure.
clean-langtools:
$(call CleanComponent,langtools)
clean-corba:
$(call CleanComponent,corba)
clean-jaxp:
$(call CleanComponent,jaxp)
clean-jaxws:
$(call CleanComponent,jaxws)
clean-hotspot:
$(call CleanComponent,hotspot)
clean-jdk:
$(call CleanComponent,jdk)
clean-images:
$(call CleanComponent,images)
clean-overlay-images:
$(call CleanComponent,overlay-images)
clean-bootcycle-build:
$(call CleanComponent,bootcycle-build)
clean-docs:
$(call CleanComponent,docs)
$(call CleanComponent,docstemp)
.PHONY: langtools corba jaxp jaxws hotspot jdk images overlay-images install
.PHONY: langtools-only corba-only jaxp-only jaxws-only hotspot-only jdk-only images-only overlay-images-only install-only
.PHONY: all test clean dist-clean bootcycle-images start-make
.PHONY: clean-langtools clean-corba clean-jaxp clean-jaxws clean-hotspot clean-jdk clean-images clean-overlay-images clean-bootcycle-build
.PHONY: profiles profiles-only profiles-oscheck
FRC: # Force target

View File

@@ -33,129 +33,13 @@
ifndef _MAKEBASE_GMK
_MAKEBASE_GMK := 1
ifeq (,$(findstring 3.81,$(MAKE_VERSION)))
ifeq (,$(findstring 3.82,$(MAKE_VERSION)))
$(error This version of GNU Make is too low ($(MAKE_VERSION)). Please upgrade to 3.81 or newer.)
endif
endif
ifneq (,$(CYGPATH))
# Cygwin styff, if needed but most is going to be
# done in configure!
ifeq (yes,$(CHECK_FOR_VCINSTALLDIR))
ifeq (,$(VCINSTALLDIR))
$(info Could not find compiler paths!)
$(info You probably configured the build from within a)
$(info VS command prompt, but you are not using such a)
$(info prompt right now.)
$(info If you instead run configure from a plain cygwin shell, it)
$(info will attempt to setup VS for you! Please try that.)
$(error Giving up for now.)
endif
endif
endif
# The build times report is turned off by setting REPORT_BUILD_TIMES to nothing.
# This is necessary for the target clean which will erase the
# directories where the buildtimes are stored.
REPORT_BUILD_TIMES=1
# Store the build times in this directory.
BUILDTIMESDIR=$(OUTPUT_ROOT)/tmp/buildtimes
# Record starting time for build of a sub repository.
define RecordStartTime
$(MKDIR) -p $(BUILDTIMESDIR)
$(DATE) '+%Y %m %d %H %M %S' | $(NAWK) '{ print $$1,$$2,$$3,$$4,$$5,$$6,($$4*3600+$$5*60+$$6) }' > $(BUILDTIMESDIR)/build_time_start_$1
$(DATE) '+%Y-%m-%d %H:%M:%S' > $(BUILDTIMESDIR)/build_time_start_$1_human_readable
endef
# Indicate that we started to build a sub repository and record starting time.
define MakeStart
$(call RecordStartTime,$1)
$(BUILD_LOG_WRAPPER) $(PRINTF) "\n\n%s\n%s\n##### %-60.60s #####\n%s\n\n" \
"########################################################################" \
"########################################################################" \
"Entering $1 for target(s) $2" \
"########################################################################"
endef
# Record ending time and calculate the difference and store it in a
# easy to read format. Handles builds that cross midnight. Expects
# that a build will never take 24 hours or more.
define RecordEndTime
$(DATE) '+%Y %m %d %H %M %S' | $(NAWK) '{ print $$1,$$2,$$3,$$4,$$5,$$6,($$4*3600+$$5*60+$$6) }' > $(BUILDTIMESDIR)/build_time_end_$1
$(DATE) '+%Y-%m-%d %H:%M:%S' > $(BUILDTIMESDIR)/build_time_end_$1_human_readable
$(ECHO) `$(CAT) $(BUILDTIMESDIR)/build_time_start_$1` `$(CAT) $(BUILDTIMESDIR)/build_time_end_$1` $1 | \
$(NAWK) '{ F=$$7; T=$$14; if (F > T) { T+=3600*24 }; D=T-F; H=int(D/3600); \
M=int((D-H*3600)/60); S=D-H*3600-M*60; printf("%02d:%02d:%02d %s\n",H,M,S,$$15); }' \
> $(BUILDTIMESDIR)/build_time_diff_$1
endef
# Check if the current target is the final target, as specified by
# the user on the command line. If so, call PrintEndMessage.
define CheckIfFinished
$(if $(filter $@,$(MAKECMDGOALS)),$(call PrintEndMessage))
# If no taget is given, "all" is default. Check for that, too.
# At most one of the tests can be true.
$(if $(MAKECMDGOALS),,$(if $(filter $@,all),$(call PrintEndMessage)))
endef
# Indicate that we are done.
# Record ending time and print out the total time it took to build.
define MakeFinish
$(if $(REPORT_BUILD_TIMES),$(call RecordEndTime,$1),)
$(BUILD_LOG_WRAPPER) $(PRINTF) "%s\n##### %-60.60s #####\n%s\n##### %-60.60s #####\n%s\n\n" \
"########################################################################" \
"Leaving $1 for target(s) $2" \
"########################################################################" \
$(if $(REPORT_BUILD_TIMES),"Build time `$(CAT) $(BUILDTIMESDIR)/build_time_diff_$1` for target(s) $2","") \
"########################################################################"
$(call CheckIfFinished)
endef
# Find all build_time_* files and print their contents in a list sorted
# on the name of the sub repository.
define ReportBuildTimes
$(BUILD_LOG_WRAPPER) $(PRINTF) -- "-- Build times ----------\nTarget %s\nStart %s\nEnd %s\n%s\n%s\n-------------------------\n" \
"$1" \
"`$(CAT) $(BUILDTIMESDIR)/build_time_start_TOTAL_human_readable`" \
"`$(CAT) $(BUILDTIMESDIR)/build_time_end_TOTAL_human_readable`" \
"`$(LS) $(BUILDTIMESDIR)/build_time_diff_* | $(GREP) -v _TOTAL | $(XARGS) $(CAT) | $(SORT) -k 2`" \
"`$(CAT) $(BUILDTIMESDIR)/build_time_diff_TOTAL`"
endef
define ResetTimers
$$(shell $(MKDIR) -p $(BUILDTIMESDIR) && $(RM) $(BUILDTIMESDIR)/build_time_*)
endef
define StartTimer
$(call RecordStartTime,TOTAL)
endef
define StopTimer
$(if $(REPORT_BUILD_TIMES),$(call RecordEndTime,TOTAL) && $(call ReportBuildTimes,$1),)
endef
# Hook to be called as the very first thing when running a normal build
define AtRootMakeStart
$(if $(findstring -j,$(MAKEFLAGS)), $(error make -j is not supported, use make JOBS=n))
$(call PrintStartMessage)
$(call StartTimer)
endef
# Hook to be called as the very last thing for targets that are "top level" targets
define AtRootMakeEnd
$(call StopTimer)
$(call CheckIfFinished)
endef
# If the variable that you want to send to stdout for piping into a file or otherwise,
# is potentially long, for example the a list of file paths, eg a list of all package directories.
# Then you need to use ListPathsSafely, which optimistically splits the output into several shell
# calls as well as use compression on recurrent file paths segments, to get around the potential
# command line length problem that exists in cygwin and other shells.
compress_pre:=$(strip $(shell cat $(SRC_ROOT)/common/makefiles/compress.pre))
compress_post:=$(strip $(shell cat $(SRC_ROOT)/common/makefiles/compress.post))
compress_pre:=$(strip $(shell $(CAT) $(SRC_ROOT)/common/makefiles/support/ListPathsSafely-pre-compress.incl))
compress_post:=$(strip $(shell $(CAT) $(SRC_ROOT)/common/makefiles/support/ListPathsSafely-post-compress.incl))
compress_paths=$(compress_pre)\
$(subst $(SRC_ROOT),X97,\
$(subst $(OUTPUT_ROOT),X98,\
@@ -163,7 +47,7 @@ $(subst X,X00,\
$(subst $(SPACE),\n,$(strip $1)))))\
$(compress_post)
decompress_paths=sed -f $(SRC_ROOT)/common/makefiles/uncompress.sed -e 's|X99|\\n|g' \
decompress_paths=$(SED) -f $(SRC_ROOT)/common/makefiles/support/ListPathsSafely-uncompress.sed -e 's|X99|\\n|g' \
-e 's|X98|$(OUTPUT_ROOT)|g' -e 's|X97|$(SRC_ROOT)|g' \
-e 's|X00|X|g' | tr '\n' '$2'
@@ -181,7 +65,7 @@ endef
# The \n argument means translate spaces into \n
# if instead , , (a space) is supplied, then spaces remain spaces.
define ListPathsSafely
$(if $(word 10001,$($1)),$(error Cannot list safely more than 10000 paths. $1 has $(words $($1)) paths!))
$(if $(word 16001,$($1)),$(error Cannot list safely more than 16000 paths. $1 has $(words $($1)) paths!))
$(call ListPathsSafely_If,$1,$2,1,250)
$(call ListPathsSafely_If,$1,$2,251,500)
$(call ListPathsSafely_If,$1,$2,501,750)
@@ -232,6 +116,36 @@ define ListPathsSafely
$(call ListPathsSafely_If,$1,$2,9501,9750)
$(call ListPathsSafely_If,$1,$2,9751,10000)
$(call ListPathsSafely_If,$1,$2,10001,10250)
$(call ListPathsSafely_If,$1,$2,10251,10500)
$(call ListPathsSafely_If,$1,$2,10501,10750)
$(call ListPathsSafely_If,$1,$2,10751,11000)
$(call ListPathsSafely_If,$1,$2,11001,11250)
$(call ListPathsSafely_If,$1,$2,11251,11500)
$(call ListPathsSafely_If,$1,$2,11501,11750)
$(call ListPathsSafely_If,$1,$2,11751,12000)
$(call ListPathsSafely_If,$1,$2,12001,12250)
$(call ListPathsSafely_If,$1,$2,12251,12500)
$(call ListPathsSafely_If,$1,$2,12501,12750)
$(call ListPathsSafely_If,$1,$2,12751,13000)
$(call ListPathsSafely_If,$1,$2,13001,13250)
$(call ListPathsSafely_If,$1,$2,13251,13500)
$(call ListPathsSafely_If,$1,$2,13501,13750)
$(call ListPathsSafely_If,$1,$2,13751,14000)
$(call ListPathsSafely_If,$1,$2,14001,14250)
$(call ListPathsSafely_If,$1,$2,14251,14500)
$(call ListPathsSafely_If,$1,$2,14501,14750)
$(call ListPathsSafely_If,$1,$2,14751,15000)
$(call ListPathsSafely_If,$1,$2,15001,15250)
$(call ListPathsSafely_If,$1,$2,15251,15500)
$(call ListPathsSafely_If,$1,$2,15501,15750)
$(call ListPathsSafely_If,$1,$2,15751,16000)
$(call ListPathsSafely_Printf,$1,$2,$3,1)
$(call ListPathsSafely_Printf,$1,$2,$3,251)
$(call ListPathsSafely_Printf,$1,$2,$3,501)
@@ -281,6 +195,36 @@ define ListPathsSafely
$(call ListPathsSafely_Printf,$1,$2,$3,9251)
$(call ListPathsSafely_Printf,$1,$2,$3,9501)
$(call ListPathsSafely_Printf,$1,$2,$3,9751)
$(call ListPathsSafely_Printf,$1,$2,$3,10001)
$(call ListPathsSafely_Printf,$1,$2,$3,10251)
$(call ListPathsSafely_Printf,$1,$2,$3,10501)
$(call ListPathsSafely_Printf,$1,$2,$3,10751)
$(call ListPathsSafely_Printf,$1,$2,$3,11001)
$(call ListPathsSafely_Printf,$1,$2,$3,11251)
$(call ListPathsSafely_Printf,$1,$2,$3,11501)
$(call ListPathsSafely_Printf,$1,$2,$3,11751)
$(call ListPathsSafely_Printf,$1,$2,$3,12001)
$(call ListPathsSafely_Printf,$1,$2,$3,12251)
$(call ListPathsSafely_Printf,$1,$2,$3,12501)
$(call ListPathsSafely_Printf,$1,$2,$3,12751)
$(call ListPathsSafely_Printf,$1,$2,$3,13001)
$(call ListPathsSafely_Printf,$1,$2,$3,13251)
$(call ListPathsSafely_Printf,$1,$2,$3,13501)
$(call ListPathsSafely_Printf,$1,$2,$3,13751)
$(call ListPathsSafely_Printf,$1,$2,$3,14001)
$(call ListPathsSafely_Printf,$1,$2,$3,14251)
$(call ListPathsSafely_Printf,$1,$2,$3,14501)
$(call ListPathsSafely_Printf,$1,$2,$3,14751)
$(call ListPathsSafely_Printf,$1,$2,$3,15001)
$(call ListPathsSafely_Printf,$1,$2,$3,15251)
$(call ListPathsSafely_Printf,$1,$2,$3,15501)
$(call ListPathsSafely_Printf,$1,$2,$3,15751)
endef
define ListPathsSafelyNow_IfPrintf
@@ -384,14 +328,109 @@ $(ECHO) $1/$(HGTIP_FILENAME)
endef
define SetupLogging
ifneq ($(findstring $(LOG),debug trace),)
ifeq ($$(LOG), trace)
# Shell redefinition trick inspired by http://www.cmcrossroads.com/ask-mr-make/6535-tracing-rule-execution-in-gnu-make
# For each target executed, will print
# Building <TARGET> (from <FIRST PREREQUISITE>) (<ALL NEWER PREREQUISITES> newer)
# but with a limit of 20 on <ALL NEWER PREREQUISITES>, to avoid cluttering logs too much (and causing a crash on Cygwin).
OLD_SHELL:=$$(SHELL)
SHELL = $$(warning Building $$@$$(if $$<, (from $$<))$(if $$?, ($$? newer)))$$(OLD_SHELL) -x
WRAPPER_SHELL:=$$(OLD_SHELL) $$(SRC_ROOT)/common/bin/shell-tracer.sh $$(if $$(TIME),$$(TIME),-) $$(OUTPUT_ROOT)/build-trace-time.log $$(OLD_SHELL)
SHELL=$$(warning $$(if $$@,Building $$@,Running shell command) $$(if $$<, (from $$<))$$(if $$?, ($$(wordlist 1, 20, $$?) $$(if $$(wordlist 21, 22, $$?), ... [in total $$(words $$?) files]) newer)))$$(WRAPPER_SHELL)
endif
# Never remove warning messages; this is just for completeness
LOG_WARN=
ifneq ($$(findstring $$(LOG),info debug trace),)
LOG_INFO=
else
LOG_INFO=> /dev/null
endif
ifneq ($$(findstring $$(LOG),debug trace),)
LOG_DEBUG=
else
LOG_DEBUG=> /dev/null
endif
ifneq ($$(findstring $$(LOG),trace),)
LOG_TRACE=
else
LOG_TRACE=> /dev/null
endif
endef
# Make sure logging is setup for everyone that includes MakeBase.gmk.
$(eval $(call SetupLogging))
# This is to be called by all SetupFoo macros
define LogSetupMacroEntry
$(if $(26),$(error Internal makefile error: Too many arguments to LogSetupMacroEntry, please update MakeBase.gmk))
$(if $(findstring $(LOG),debug trace), $(info $1 $(foreach i,2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25,$(if $($i),$(NEWLINE) $(strip [$i] $($i))))))
endef
# Make directory without forking mkdir if not needed
define MakeDir
ifneq ($$(wildcard $1 $2 $3 $4 $5 $6 $7 $8 $9),$$(strip $1 $2 $3 $4 $5 $6 $7 $8 $9))
$$(shell $(MKDIR) -p $1 $2 $3 $4 $5 $6 $7 $8 $9)
endif
endef
ifeq ($(OPENJDK_TARGET_OS),solaris)
# On Solaris, if the target is a symlink and exists, cp won't overwrite.
define install-file
$(MKDIR) -p $(@D)
$(RM) '$@'
$(CP) -f -r -P '$<' '$(@D)'
endef
else ifeq ($(OPENJDK_TARGET_OS),macosx)
define install-file
$(MKDIR) -p $(@D)
$(CP) -fpRP '$<' '$@'
endef
else
define install-file
$(MKDIR) -p $(@D)
$(CP) -fP '$<' '$@'
endef
endif
# Convenience functions for working around make's limitations with $(filter ).
containing = $(foreach v,$2,$(if $(findstring $1,$v),$v))
not-containing = $(foreach v,$2,$(if $(findstring $1,$v),,$v))
################################################################################
# In Cygwin, finds are very costly, both because of expensive forks and because
# of bad file system caching. Find is used extensively in $(shell) commands to
# find source files. This makes rerunning make with no or few changes rather
# expensive. To speed this up, these two macros are used to cache the results
# of simple find commands for reuse.
#
# Runs a find and stores both the directories where it was run and the results.
# This macro can be called multiple times to add to the cache. Only finds files
# with no filters.
#
# Needs to be called with $(eval )
#
# Param 1 - Dir to find in
ifeq ($(OPENJDK_BUILD_OS),windows)
define FillCacheFind
FIND_CACHE_DIR += $1
FIND_CACHE := $$(sort $$(FIND_CACHE) $$(shell $(FIND) $1 -type f -o -type l))
endef
else
define FillCacheFind
endef
endif
# Mimics find by looking in the cache if all of the directories have been cached.
# Otherwise reverts to shell find. This is safe to call on all platforms, even if
# cache is deactivated.
#
# The extra - is needed when FIND_CACHE_DIR is empty but should be harmless.
# Param 1 - Dirs to find in
define CacheFind
$(if $(filter-out $(addsuffix %,- $(FIND_CACHE_DIR)),$1),\
$(shell $(FIND) $1 -type f -o -type l),\
$(filter $(addsuffix %,$1),$(FIND_CACHE)))
endef
################################################################################
endif # _MAKEBASE_GMK

View File

@@ -45,123 +45,17 @@ MAKE_ARGS=$(foreach var,$(subst =command,,$(filter %=command,$(foreach var,$(.VA
list_alt_overrides_with_origins=$(filter ALT_%=environment ALT_%=command,$(foreach var,$(.VARIABLES),$(var)=$(firstword $(origin $(var)))))
list_alt_overrides=$(subst =command,,$(subst =environment,,$(list_alt_overrides_with_origins)))
# Store the build times in this directory.
BUILDTIMESDIR=$(OUTPUT_ROOT)/tmp/buildtimes
# Global targets are possible to run either with or without a SPEC. The prototypical
# global target is "help".
global_targets=help jprt% bridgeBuild
##############################
# Functions
##############################
define fatal-error
# If the user specificed a "global" target (e.g. 'help'), do not exit but continue running
$$(if $$(findstring help,$$(MAKECMDGOALS)),,$$(error Cannot continue))
endef
define ParseLogLevel
ifeq ($$(origin VERBOSE),undefined)
# Setup logging according to LOG (but only if VERBOSE is not given)
ifeq ($$(LOG),)
# Set LOG to "warn" as default if not set (and no VERBOSE given)
LOG=warn
endif
ifeq ($$(LOG),warn)
VERBOSE=-s
else ifeq ($$(LOG),info)
VERBOSE=
else ifeq ($$(LOG),debug)
VERBOSE=
else ifeq ($$(LOG),trace)
VERBOSE=-d -p
else
$$(info Error: LOG must be one of: warn, info, debug or trace.)
$$(eval $$(call fatal-error))
endif
else
ifneq ($$(LOG),)
# We have both a VERBOSE and a LOG argument. This is OK only if this is a repeated call by ourselves,
# but complain if this is the top-level make call.
ifeq ($$(MAKELEVEL),0)
$$(info Cannot use LOG=$$(LOG) and VERBOSE=$$(VERBOSE) at the same time. Choose one.)
$$(eval $$(call fatal-error))
endif
endif
endif
endef
# TODO: Fix duplication in MakeBase.gmk
define SetupLogging
ifneq ($(findstring $(LOG),debug trace),)
# Shell redefinition trick inspired by http://www.cmcrossroads.com/ask-mr-make/6535-tracing-rule-execution-in-gnu-make
OLD_SHELL:=$$(SHELL)
SHELL = $$(warning Building $$@$$(if $$<, (from $$<))$(if $$?, ($$? newer)))$$(OLD_SHELL) -x
endif
endef
define ParseConfAndSpec
ifneq ($$(origin SPEC),undefined)
# We have been given a SPEC, check that it works out properly
ifeq ($$(wildcard $$(SPEC)),)
$$(info Cannot locate spec.gmk, given by SPEC=$$(SPEC))
$$(eval $$(call fatal-error))
endif
ifneq ($$(origin CONF),undefined)
# We also have a CONF argument. This is OK only if this is a repeated call by ourselves,
# but complain if this is the top-level make call.
ifeq ($$(MAKELEVEL),0)
$$(info Cannot use CONF=$$(CONF) and SPEC=$$(SPEC) at the same time. Choose one.)
$$(eval $$(call fatal-error))
endif
endif
# ... OK, we're satisfied, we'll use this SPEC later on
else
# Find all spec.gmk files in the build output directory
output_dir=$$(root_dir)/build
all_spec_files=$$(wildcard $$(output_dir)/*/spec.gmk)
ifeq ($$(all_spec_files),)
$$(info No configurations found for $$(root_dir)! Please run configure to create a configuration.)
$$(eval $$(call fatal-error))
endif
# Extract the configuration names from the path
all_confs=$$(patsubst %/spec.gmk,%,$$(patsubst $$(output_dir)/%,%,$$(all_spec_files)))
ifneq ($$(origin CONF),undefined)
# User have given a CONF= argument.
ifeq ($$(CONF),)
# If given CONF=, match all configurations
matching_confs=$$(strip $$(all_confs))
else
# Otherwise select those that contain the given CONF string
matching_confs=$$(strip $$(foreach var,$$(all_confs),$$(if $$(findstring $$(CONF),$$(var)),$$(var))))
endif
ifeq ($$(matching_confs),)
$$(info No configurations found matching CONF=$$(CONF))
$$(info Available configurations:)
$$(foreach var,$$(all_confs),$$(info * $$(var)))
$$(eval $$(call fatal-error))
else
ifeq ($$(words $$(matching_confs)),1)
$$(info Building '$$(matching_confs)' (matching CONF=$$(CONF)))
else
$$(info Building the following configurations (matching CONF=$$(CONF)):)
$$(foreach var,$$(matching_confs),$$(info * $$(var)))
endif
endif
# Create a SPEC definition. This will contain the path to one or more spec.gmk files.
SPEC=$$(addsuffix /spec.gmk,$$(addprefix $$(output_dir)/,$$(matching_confs)))
else
# No CONF or SPEC given, check the available configurations
ifneq ($$(words $$(all_spec_files)),1)
$$(info No CONF or SPEC given, but more than one spec.gmk found in $$(output_dir).)
$$(info Available configurations:)
$$(foreach var,$$(all_confs),$$(info * $$(var)))
$$(info Please retry building with CONF=<config> or SPEC=<specfile>)
$$(eval $$(call fatal-error))
endif
# We found exactly one configuration, use it
SPEC=$$(strip $$(all_spec_files))
endif
endif
endef
define CheckEnvironment
# Find all environment or command line variables that begin with ALT.
$(if $(list_alt_overrides),
@@ -171,15 +65,234 @@ define CheckEnvironment
)
endef
define PrintStartMessage
$(if $(VERBOSE),,@$(ECHO) Running make as $(MAKE) $(MFLAGS) $(MAKE_ARGS))
$(call CheckEnvironment)
@$(ECHO) "Building OpenJDK for target $(if $(MAKECMDGOALS),'$(MAKECMDGOALS)','all') in configuration '$(CONF_NAME)'"
### Functions for timers
# Record starting time for build of a sub repository.
define RecordStartTime
$(MKDIR) -p $(BUILDTIMESDIR)
$(DATE) '+%Y %m %d %H %M %S' | $(NAWK) '{ print $$1,$$2,$$3,$$4,$$5,$$6,($$4*3600+$$5*60+$$6) }' > $(BUILDTIMESDIR)/build_time_start_$1
$(DATE) '+%Y-%m-%d %H:%M:%S' > $(BUILDTIMESDIR)/build_time_start_$1_human_readable
endef
define PrintEndMessage
@$(ECHO) "Finished building OpenJDK for target '$@'"
# Record ending time and calculate the difference and store it in a
# easy to read format. Handles builds that cross midnight. Expects
# that a build will never take 24 hours or more.
define RecordEndTime
$(DATE) '+%Y %m %d %H %M %S' | $(NAWK) '{ print $$1,$$2,$$3,$$4,$$5,$$6,($$4*3600+$$5*60+$$6) }' > $(BUILDTIMESDIR)/build_time_end_$1
$(DATE) '+%Y-%m-%d %H:%M:%S' > $(BUILDTIMESDIR)/build_time_end_$1_human_readable
$(ECHO) `$(CAT) $(BUILDTIMESDIR)/build_time_start_$1` `$(CAT) $(BUILDTIMESDIR)/build_time_end_$1` $1 | \
$(NAWK) '{ F=$$7; T=$$14; if (F > T) { T+=3600*24 }; D=T-F; H=int(D/3600); \
M=int((D-H*3600)/60); S=D-H*3600-M*60; printf("%02d:%02d:%02d %s\n",H,M,S,$$15); }' \
> $(BUILDTIMESDIR)/build_time_diff_$1
endef
# Find all build_time_* files and print their contents in a list sorted
# on the name of the sub repository.
define ReportBuildTimes
$(BUILD_LOG_WRAPPER) $(PRINTF) -- "----- Build times -------\nStart %s\nEnd %s\n%s\n%s\n-------------------------\n" \
"`$(CAT) $(BUILDTIMESDIR)/build_time_start_TOTAL_human_readable`" \
"`$(CAT) $(BUILDTIMESDIR)/build_time_end_TOTAL_human_readable`" \
"`$(LS) $(BUILDTIMESDIR)/build_time_diff_* | $(GREP) -v _TOTAL | $(XARGS) $(CAT) | $(SORT) -k 2`" \
"`$(CAT) $(BUILDTIMESDIR)/build_time_diff_TOTAL`"
endef
define ResetAllTimers
$$(shell $(MKDIR) -p $(BUILDTIMESDIR) && $(RM) $(BUILDTIMESDIR)/build_time_*)
endef
define StartGlobalTimer
$(call RecordStartTime,TOTAL)
endef
define StopGlobalTimer
$(call RecordEndTime,TOTAL)
endef
### Functions for managing makefile structure (start/end of makefile and individual targets)
# Do not indent this function, this will add whitespace at the start which the caller won't handle
define GetRealTarget
$(strip $(if $(MAKECMDGOALS),$(MAKECMDGOALS),default))
endef
# Do not indent this function, this will add whitespace at the start which the caller won't handle
define LastGoal
$(strip $(lastword $(call GetRealTarget)))
endef
# Check if the current target is the final target, as specified by
# the user on the command line. If so, call AtRootMakeEnd.
define CheckIfMakeAtEnd
# Check if the current target is the last goal
$(if $(filter $@,$(call LastGoal)),$(call AtMakeEnd))
# If the target is 'foo-only', check if our goal was stated as 'foo'
$(if $(filter $@,$(call LastGoal)-only),$(call AtMakeEnd))
endef
# Hook to be called when starting to execute a top-level target
define TargetEnter
$(BUILD_LOG_WRAPPER) $(PRINTF) "## Starting $(patsubst %-only,%,$@)\n"
$(call RecordStartTime,$(patsubst %-only,%,$@))
endef
# Hook to be called when finish executing a top-level target
define TargetExit
$(call RecordEndTime,$(patsubst %-only,%,$@))
$(BUILD_LOG_WRAPPER) $(PRINTF) "## Finished $(patsubst %-only,%,$@) (build time %s)\n\n" \
"`$(CAT) $(BUILDTIMESDIR)/build_time_diff_$(patsubst %-only,%,$@) | $(CUT) -f 1 -d ' '`"
$(call CheckIfMakeAtEnd)
endef
# Hook to be called as the very first thing when running a normal build
define AtMakeStart
$(if $(findstring --jobserver,$(MAKEFLAGS)),$(error make -j is not supported, use make JOBS=n))
$(call CheckEnvironment)
@$(PRINTF) $(LOG_INFO) "Running make as '$(MAKE) $(MFLAGS) $(MAKE_ARGS)'\n"
@$(PRINTF) "Building $(PRODUCT_NAME) for target '$(call GetRealTarget)' in configuration '$(CONF_NAME)'\n\n"
$(call StartGlobalTimer)
endef
# Hook to be called as the very last thing for targets that are "top level" targets
define AtMakeEnd
[ -f $(SJAVAC_SERVER_DIR)/server.port ] && echo Stopping sjavac server && $(TOUCH) $(SJAVAC_SERVER_DIR)/server.port.stop; true
$(call StopGlobalTimer)
$(call ReportBuildTimes)
@$(PRINTF) "Finished building $(PRODUCT_NAME) for target '$(call GetRealTarget)'\n"
$(call CheckEnvironment)
endef
### Functions for parsing and setting up make options from command-line
define FatalError
# If the user specificed a "global" target (e.g. 'help'), do not exit but continue running
$$(if $$(filter-out $(global_targets),$$(call GetRealTarget)),$$(error Cannot continue))
endef
define ParseLogLevel
ifeq ($$(origin VERBOSE),undefined)
# Setup logging according to LOG (but only if VERBOSE is not given)
# If the "nofile" argument is given, act on it and strip it away
ifneq ($$(findstring nofile,$$(LOG)),)
# Reset the build log wrapper, regardless of other values
override BUILD_LOG_WRAPPER=
# COMMA is defined in spec.gmk, but that is not included yet
COMMA=,
# First try to remove ",nofile" if it exists
LOG_STRIPPED1=$$(subst $$(COMMA)nofile,,$$(LOG))
# Otherwise just remove "nofile"
LOG_STRIPPED2=$$(subst nofile,,$$(LOG_STRIPPED1))
# We might have ended up with a leading comma. Remove it
LOG_STRIPPED3=$$(strip $$(patsubst $$(COMMA)%,%,$$(LOG_STRIPPED2)))
override LOG:=$$(LOG_STRIPPED3)
endif
ifeq ($$(LOG),)
# Set LOG to "warn" as default if not set (and no VERBOSE given)
override LOG=warn
endif
ifeq ($$(LOG),warn)
VERBOSE=-s
else ifeq ($$(LOG),info)
VERBOSE=-s
else ifeq ($$(LOG),debug)
VERBOSE=
else ifeq ($$(LOG),trace)
VERBOSE=
else
$$(info Error: LOG must be one of: warn, info, debug or trace.)
$$(eval $$(call FatalError))
endif
else
ifneq ($$(LOG),)
# We have both a VERBOSE and a LOG argument. This is OK only if this is a repeated call by ourselves,
# but complain if this is the top-level make call.
ifeq ($$(MAKELEVEL),0)
$$(info Cannot use LOG=$$(LOG) and VERBOSE=$$(VERBOSE) at the same time. Choose one.)
$$(eval $$(call FatalError))
endif
endif
endif
endef
define ParseConfAndSpec
ifneq ($$(filter-out $(global_targets),$$(call GetRealTarget)),)
# If we only have global targets, no need to bother with SPEC or CONF
ifneq ($$(origin SPEC),undefined)
# We have been given a SPEC, check that it works out properly
ifeq ($$(wildcard $$(SPEC)),)
$$(info Cannot locate spec.gmk, given by SPEC=$$(SPEC))
$$(eval $$(call FatalError))
endif
ifneq ($$(origin CONF),undefined)
# We also have a CONF argument. This is OK only if this is a repeated call by ourselves,
# but complain if this is the top-level make call.
ifeq ($$(MAKELEVEL),0)
$$(info Cannot use CONF=$$(CONF) and SPEC=$$(SPEC) at the same time. Choose one.)
$$(eval $$(call FatalError))
endif
endif
# ... OK, we're satisfied, we'll use this SPEC later on
else
# Find all spec.gmk files in the build output directory
output_dir=$$(root_dir)/build
all_spec_files=$$(wildcard $$(output_dir)/*/spec.gmk)
ifeq ($$(all_spec_files),)
$$(info No configurations found for $$(root_dir)! Please run configure to create a configuration.)
$$(eval $$(call FatalError))
endif
# Extract the configuration names from the path
all_confs=$$(patsubst %/spec.gmk,%,$$(patsubst $$(output_dir)/%,%,$$(all_spec_files)))
ifneq ($$(origin CONF),undefined)
# User have given a CONF= argument.
ifeq ($$(CONF),)
# If given CONF=, match all configurations
matching_confs=$$(strip $$(all_confs))
else
# Otherwise select those that contain the given CONF string
matching_confs=$$(strip $$(foreach var,$$(all_confs),$$(if $$(findstring $$(CONF),$$(var)),$$(var))))
endif
ifeq ($$(matching_confs),)
$$(info No configurations found matching CONF=$$(CONF))
$$(info Available configurations:)
$$(foreach var,$$(all_confs),$$(info * $$(var)))
$$(eval $$(call FatalError))
else
ifeq ($$(words $$(matching_confs)),1)
$$(info Building '$$(matching_confs)' (matching CONF=$$(CONF)))
else
$$(info Building target '$(call GetRealTarget)' in the following configurations (matching CONF=$$(CONF)):)
$$(foreach var,$$(matching_confs),$$(info * $$(var)))
endif
endif
# Create a SPEC definition. This will contain the path to one or more spec.gmk files.
SPEC=$$(addsuffix /spec.gmk,$$(addprefix $$(output_dir)/,$$(matching_confs)))
else
# No CONF or SPEC given, check the available configurations
ifneq ($$(words $$(all_spec_files)),1)
$$(info No CONF given, but more than one configuration found in $$(output_dir).)
$$(info Available configurations:)
$$(foreach var,$$(all_confs),$$(info * $$(var)))
$$(info Please retry building with CONF=<config pattern> (or SPEC=<specfile>))
$$(eval $$(call FatalError))
endif
# We found exactly one configuration, use it
SPEC=$$(strip $$(all_spec_files))
endif
endif
endif
endef
### Convenience functions from Main.gmk
# Cleans the component given as $1
define CleanComponent
@$(PRINTF) "Cleaning $1 build artifacts ..."
@($(CD) $(OUTPUT_ROOT) && $(RM) -r $1)
@$(PRINTF) " done\n"
endef
endif # _MAKEHELPERS_GMK

View File

@@ -23,196 +23,4 @@
# questions.
#
# This must be the first rule
default: all
# Locate this Makefile
ifeq ($(filter /%,$(lastword $(MAKEFILE_LIST))),)
makefile_path:=$(CURDIR)/$(lastword $(MAKEFILE_LIST))
else
makefile_path:=$(lastword $(MAKEFILE_LIST))
endif
root_dir:=$(patsubst %/common/makefiles/Makefile,%,$(makefile_path))
# ... and then we can include our helper functions
include $(dir $(makefile_path))/MakeHelpers.gmk
$(eval $(call ParseLogLevel))
$(eval $(call SetupLogging))
$(eval $(call ParseConfAndSpec))
# Setup number of jobs to use. -jN is unfortunately not available for us to parse from the command line,
# hence this workaround.
ifeq ($(JOBS),)
JOBS=$(NUM_CORES)
endif
ifneq ($(words $(SPEC)),1)
### We have multiple configurations to build, call make repeatedly
all jdk hotspot jaxws jaxp corba langtools install images clean dist-clean:
@$(foreach spec,$(SPEC),($(MAKE) -f $(makefile_path) SPEC=$(spec) $(VERBOSE) VERBOSE=$(VERBOSE) $@ $(MAKE_ARGS)) &&) true
.PHONY: all jdk hotspot jaxws jaxp corba langtools install images clean dist-clean
else
### This is the main part of the Makefile, for the normal case with SPEC specifying a single existing spec.gmk file.
# Now load the spec
include $(SPEC)
# Load the vital tools for all the makefiles.
include $(SRC_ROOT)/common/makefiles/MakeBase.gmk
### Clean up from previous run
# Remove any build.log from a previous run, if they exist
ifneq (,$(BUILD_LOG))
ifneq (,$(BUILD_LOG_PREVIOUS))
# Rotate old log
$(shell $(RM) $(BUILD_LOG_PREVIOUS) 2> /dev/null)
$(shell $(MV) $(BUILD_LOG) $(BUILD_LOG_PREVIOUS) 2> /dev/null)
else
$(shell $(RM) $(BUILD_LOG) 2> /dev/null)
endif
endif
# Remove any javac server logs and port files. This
# prevents a new make run to reuse the previous servers.
ifneq (,$(JAVAC_SERVERS))
$(shell mkdir -p $(JAVAC_SERVERS) && rm -rf $(JAVAC_SERVERS)/*)
endif
# Clean out any notifications from the previous build.
$(shell find $(OUTPUT_ROOT) -name "_the.*.notify" $(FIND_DELETE))
# Reset the build timers.
$(eval $(call ResetTimers))
### Main targets
all: jdk
@$(if $(JAVAC_SERVERS),rm -rf $(JAVAC_SERVERS)/*.port)
@$(call AtRootMakeEnd)
langtools: start-make langtools-only
langtools-only:
@$(call MakeStart,langtools,all)
@($(CD) $(LANGTOOLS_TOPDIR)/makefiles && $(BUILD_LOG_WRAPPER) $(MAKE) -j$(JOBS) $(MAKE_ARGS))
@$(call MakeFinish,langtools,all)
corba: langtools corba-only
corba-only:
@$(call MakeStart,corba,all)
@($(CD) $(CORBA_TOPDIR)/makefiles && $(BUILD_LOG_WRAPPER) $(MAKE) -j$(JOBS) $(MAKE_ARGS))
@$(call MakeFinish,corba,all)
jaxp: langtools jaxp-only
jaxp-only:
@$(call MakeStart,jaxp,all)
@($(CD) $(JAXP_TOPDIR)/makefiles && $(BUILD_LOG_WRAPPER) $(MAKE) -j$(JOBS) $(MAKE_ARGS))
@$(call MakeFinish,jaxp,all)
jaxws: langtools jaxp jaxws-only
jaxws-only:
@$(call MakeStart,jaxws,all)
@($(CD) $(JAXWS_TOPDIR)/makefiles && $(BUILD_LOG_WRAPPER) $(MAKE) -j$(JOBS) $(MAKE_ARGS))
@$(call MakeFinish,jaxws,all)
hotspot: langtools hotspot-only
hotspot-only:
@$(call MakeStart,hotspot,all)
@($(CD) $(HOTSPOT_TOPDIR)/make && $(BUILD_LOG_WRAPPER) $(MAKE) -j1 $(HOTSPOT_MAKE_ARGS) $(MAKE_ARGS))
@$(call MakeFinish,hotspot,all)
jdk: langtools corba jaxp jaxws hotspot jdk-only
jdk-only:
@$(call MakeStart,jdk,all)
@($(CD) $(JDK_TOPDIR)/makefiles && $(BUILD_LOG_WRAPPER) $(MAKE) -j$(JOBS) $(MAKE_ARGS))
@$(call MakeFinish,jdk,all)
images: source-tips start-make jdk langtools corba jaxp jaxws hotspot images-only
images-only:
@$(call MakeStart,jdk-images,$@)
@($(CD) $(JDK_TOPDIR)/makefiles && $(BUILD_LOG_WRAPPER) $(MAKE) -j$(JOBS) $(JDK_MAKE_ARGS) $(MAKE_ARGS) images)
@$(call MakeFinish,jdk-images,$@)
@$(if $(JAVAC_SERVERS),rm -rf $(JAVAC_SERVERS)/*.port)
@$(call AtRootMakeEnd)
install: source-tips start-make jdk langtools corba jaxp jaxws hotspot install-only
install-only:
@$(call MakeStart,jdk-images,$@)
@($(CD) $(JDK_TOPDIR)/makefiles && $(BUILD_LOG_WRAPPER) $(MAKE) -j$(JOBS) $(JDK_MAKE_ARGS) $(MAKE_ARGS) install)
@$(call MakeFinish,jdk-images,$@)
@$(if $(JAVAC_SERVERS),rm -rf $(JAVAC_SERVERS)/*.port)
@$(call AtRootMakeEnd)
start-make:
@$(call AtRootMakeStart)
.PHONY: jdk hotspot jaxws jaxp corba langtools install images start-make
test: start-make
@$(call MakeStart,test,$(if $(TEST),$(TEST),all))
@($(CD) $(SRC_ROOT)/test && $(BUILD_LOG_WRAPPER) $(MAKE) MAKEFLAGS= -j1 PRODUCT_HOME=$(OUTPUT_ROOT)/jdk JPRT_JAVA_HOME=$(OUTPUT_ROOT)/jdk ALT_OUTPUTDIR=$(OUTPUT_ROOT) $(TEST)) || true
@$(call MakeFinish,test,$(if $(TEST),$(TEST),all))
@$(call AtRootMakeEnd)
.PHONY: test
# Stores the tips for each repository. This file is be used when constructing the jdk image and can be
# used to track the exact sources used to build that image.
source-tips: $(OUTPUT_ROOT)/source_tips
$(OUTPUT_ROOT)/source_tips: FRC
@$(MKDIR) -p $(@D)
@$(RM) $@
@$(call GetSourceTips)
# Remove everything, except the output from configure.
clean:
@(cd $(OUTPUT_ROOT) && $(RM) -r `$(LS) $(OUTPUT_ROOT) | grep -v spec.gmk | grep -v spec.sh | grep -v Makefile | grep -v config.status | grep -v config.log | grep -v config.h | grep -v configure-arguments | grep -v "localdevenv.*" | grep -v uncygdrive.exe`)
@$(ECHO) Cleaned everything except the build configuration.
.PHONY: clean
# Remove everything, you have to rerun configure.
dist-clean:
@$(RM) -r $(OUTPUT_ROOT)
@$(ECHO) Cleaned everything, you will have to re-run configure.
.PHONY: dist-clean
clean-jdk:
@(cd $(OUTPUT_ROOT) && $(RM) -r `$(LS) $(OUTPUT_ROOT) | grep -v spec.gmk | grep -v spec.sh | grep -v Makefile | grep -v config.status | grep -v config.log | grep -v config.h | grep -v configure-arguments | \
grep -v langtools | grep -v corba | grep -v jaxp | grep -v jaxws | grep -v hotspot`)
@$(ECHO) "Cleaned jdk build artifacts (but not langtools,corba,jaxp,jaxws,hotspot nor the build configuration)"
.PHONY: clean
endif
# Here are "global" targets, i.e. targets that can be executed without specifying a single configuration.
# If you addd more global targets, please update the fatal-error macro.
help:
$(info )
$(info OpenJDK Makefile help)
$(info =====================)
$(info )
$(info Common make targets)
$(info . make [all] # Compile all code but do not create images)
$(info . make images # Create complete j2sdk and j2re images)
$(info . make install # Install the generated images locally)
$(info . make clean # Remove all files generated by make, but not those generated by configure)
$(info . make dist-clean # Remove all files generated by both make and configure)
$(info . make help # Give some help on using make)
$(info . make test # Run tests, default is all tests (see TEST below))
$(info )
$(info Useful make variables)
$(info . make CONF= # Build all configurations (note, assignment is empty))
$(info . make CONF=<substring> # Build the configuration(s) with a name matching the given substring)
$(info )
$(info . make LOG=<loglevel> # Change loglevel from warn (default) to the given loglevel)
$(info . # Available loglevels are: warn, info, debug and trace)
$(info . # To see executed command lines, use LOG=info)
$(info )
$(info . make test TEST=<test> # Only run the given test or tests, e.g.)
$(info . # make test TEST="jdk_lang jdk_net")
$(info )
.PHONY: help
FRC: # Force target
include ../../NewMakefile.gmk

View File

@@ -32,10 +32,10 @@ ifeq (,$(_MAKEBASE_GMK))
endif
ifeq ($(COMPILER_TYPE),CC)
COMPILING_MSG=echo Compiling $1
LINKING_MSG=echo Linking $1
LINKING_EXE_MSG=echo Linking executable $1
ARCHIVING_MSG=echo Archiving $1
COMPILING_MSG=echo $(LOG_INFO) "Compiling $(notdir $1) (for $(notdir $2))"
LINKING_MSG=echo $(LOG_INFO) "Linking $1"
LINKING_EXE_MSG=echo $(LOG_INFO) "Linking executable $1"
ARCHIVING_MSG=echo $(LOG_INFO) "Archiving $1"
else
COMPILING_MSG=
LINKING_MSG=
@@ -55,22 +55,22 @@ define add_native_source
ifneq (,$$(filter %.c,$2))
# Compile as a C file
$1_$2_FLAGS=$4 $$($1_$(notdir $2)_CFLAGS) -c
$1_$2_FLAGS=$4 $$($1_$(notdir $2)_CFLAGS) -DTHIS_FILE='"$$(<F)"' -c
$1_$2_COMP=$5
$1_$2_DEP_FLAG:=$(C_FLAG_DEPS)
else ifneq (,$$(filter %.m,$2))
# Compile as a objective-c file
$1_$2_FLAGS=-x objective-c $4 $$($1_$(notdir $2)_CFLAGS) -c
$1_$2_FLAGS=-x objective-c $4 $$($1_$(notdir $2)_CFLAGS) -DTHIS_FILE='"$$(<F)"' -c
$1_$2_COMP=$5
$1_$2_DEP_FLAG:=$(C_FLAG_DEPS)
else ifneq (,$$(filter %.s,$2))
# Compile as assembler file
$1_$2_FLAGS=$8
$1_$2_FLAGS=$8 -DTHIS_FILE='"$$(<F)"'
$1_$2_COMP=$(AS)
$1_$2_DEP_FLAG:=
else
# Compile as a C++ file
$1_$2_FLAGS=$6 $$($1_$(notdir $2)_CXXFLAGS) -c
$1_$2_FLAGS=$6 $$($1_$(notdir $2)_CXXFLAGS) -DTHIS_FILE='"$$(<F)"' -c
$1_$2_COMP=$7
$1_$2_DEP_FLAG:=$(CXX_FLAG_DEPS)
endif
@@ -94,11 +94,10 @@ define add_native_source
$$($1_$2_OBJ) : $2
ifeq ($(COMPILER_TYPE),CC)
$$(call COMPILING_MSG,$$(notdir $2))
$$(call COMPILING_MSG,$2,$$($1_TARGET))
$$($1_$2_COMP) $$($1_$2_FLAGS) $$($1_$2_DEP_FLAG) $$($1_$2_DEP) $(CC_OUT_OPTION)$$($1_$2_OBJ) $2
endif
ifeq ($(COMPILER_TYPE),CL)
$$(call COMPILING_MSG,$$(notdir $2))
$$($1_$2_COMP) $$($1_$2_FLAGS) $$($1_$2_DEBUG_OUT_FLAGS) $(CC_OUT_OPTION)$$($1_$2_OBJ) $2
endif
endif
@@ -129,27 +128,10 @@ define SetupNativeCompilation
# DEBUG_SYMBOLS add debug symbols (if configured on)
# CC the compiler to use, default is $(CC)
# LDEXE the linker to use for linking executables, default is $(LDEXE)
$(if $2,$1_$(strip $2))
$(if $3,$1_$(strip $3))
$(if $4,$1_$(strip $4))
$(if $5,$1_$(strip $5))
$(if $6,$1_$(strip $6))
$(if $7,$1_$(strip $7))
$(if $8,$1_$(strip $8))
$(if $9,$1_$(strip $9))
$(if $(10),$1_$(strip $(10)))
$(if $(11),$1_$(strip $(11)))
$(if $(12),$1_$(strip $(12)))
$(if $(13),$1_$(strip $(13)))
$(if $(14),$1_$(strip $(14)))
$(if $(15),$1_$(strip $(15)))
$(if $(16),$1_$(strip $(16)))
$(if $(17),$1_$(strip $(17)))
$(if $(18),$1_$(strip $(18)))
$(if $(19),$1_$(strip $(19)))
$(if $(20),$1_$(strip $(20)))
$(if $(21),$1_$(strip $(21)))
$(if $(22),$(error Internal makefile error: Too many arguments to SetupNativeCompilation, please update NativeCompilation.gmk))
# OPTIMIZATION sets optimization level to NONE, LOW, HIGH, HIGHEST
$(foreach i,2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25, $(if $($i),$1_$(strip $($i)))$(NEWLINE))
$(call LogSetupMacroEntry,SetupNativeCompilation($1),$2,$3,$4,$5,$6,$7,$8,$9,$(10),$(11),$(12),$(13),$(14),$(15),$(16),$(17),$(18),$(19),$(20),$(21),$(22),$(23),$(24),$(25))
$(if $(26),$(error Internal makefile error: Too many arguments to SetupNativeCompilation, please update NativeCompilation.gmk))
ifneq (,$$($1_BIN))
$$(error BIN has been replaced with OBJECT_DIR)
@@ -232,9 +214,9 @@ define SetupNativeCompilation
$$(error You have to specify LANG for native compilation $1)
endif
ifeq (C,$$($1_LANG))
ifeq ($$($1_LDEXE),)
ifeq ($$($1_LDEXE),)
$1_LDEXE:=$(LDEXE)
endif
endif
$1_LD:=$(LD)
else
ifeq (C++,$$($1_LANG))
@@ -250,9 +232,11 @@ define SetupNativeCompilation
endif
# Make sure the dirs exist.
$$(shell $(MKDIR) -p $$($1_SRC) $$($1_OBJECT_DIR) $$($1_OUTPUT_DIR))
$$(eval $$(call MakeDir,$$($1_OBJECT_DIR) $$($1_OUTPUT_DIR)))
$$(foreach d,$$($1_SRC), $$(if $$(wildcard $$d),,$$(error SRC specified to SetupNativeCompilation $1 contains missing directory $$d)))
# Find all files in the source trees. Sort to remove duplicates.
$1_ALL_SRCS := $$(sort $$(foreach i,$$($1_SRC), $$(shell $(FIND) $$i -type f)))
$1_ALL_SRCS := $$(sort $$(call CacheFind,$$($1_SRC)))
# Extract the C/C++ files.
$1_EXCLUDE_FILES:=$$(foreach i,$$($1_SRC),$$(addprefix $$i/,$$($1_EXCLUDE_FILES)))
$1_INCLUDE_FILES:=$$(foreach i,$$($1_SRC),$$(addprefix $$i/,$$($1_INCLUDE_FILES)))
@@ -287,7 +271,9 @@ define SetupNativeCompilation
# Are there too many object files on disk? Perhaps because some source file was removed?
$1_SUPERFLOUS_OBJS:=$$(sort $$(filter-out $$($1_EXPECTED_OBJS),$$($1_BINS)))
# Clean out the superfluous object files.
$$(shell $(RM) -f $$($1_SUPERFLUOUS_OBJS))
ifneq ($$($1_SUPERFLUOUS_OBJS),)
$$(shell $(RM) -f $$($1_SUPERFLUOUS_OBJS))
endif
# Pickup extra OPENJDK_TARGET_OS_API and/or OPENJDK_TARGET_OS dependent variables for CFLAGS.
$1_EXTRA_CFLAGS:=$$($1_CFLAGS_$(OPENJDK_TARGET_OS_API)) $$($1_CFLAGS_$(OPENJDK_TARGET_OS))
@@ -315,6 +301,17 @@ define SetupNativeCompilation
$1_EXTRA_CXXFLAGS+=$$($1_CXXFLAGS_$(OPENJDK_TARGET_OS)_release)
endif
ifneq (,$$($1_DEBUG_SYMBOLS))
ifeq ($(ENABLE_DEBUG_SYMBOLS), true)
# Programs don't get the debug symbols added in the old build. It's not clear if
# this is intentional.
ifeq ($$($1_PROGRAM),)
$1_EXTRA_CFLAGS+=$(CFLAGS_DEBUG_SYMBOLS)
$1_EXTRA_CXXFLAGS+=$(CXXFLAGS_DEBUG_SYMBOLS)
endif
endif
endif
ifeq ($$($1_CXXFLAGS),)
$1_CXXFLAGS:=$$($1_CFLAGS)
endif
@@ -327,47 +324,22 @@ define SetupNativeCompilation
$1_EXTRA_CXXFLAGS += $$(CXX_FLAG_REORDER)
endif
ifneq (no, $(ENABLE_DEBUG_SYMBOLS))
ifneq ($(OPENJDK_TARGET_OS), solaris)
# <weird code />
# There is very weird code in Defs-solaris.gmk that first sets variables as decribed below
# and then a couple of hundreds of line below resets them...
# this feels like a sure bug...but before this is confirmed, mimic this behaviour
# (note: skip indenting this as it will surely be removed anyway)
# <weird code />
ifneq (,$$($1_DEBUG_SYMBOLS))
$1_OPTIMIZATION := LOW
$1_EXTRA_CFLAGS += $(CFLAGS_DEBUG_SYMBOLS)
$1_EXTRA_CXXFLAGS += $(CXXFLAGS_DEBUG_SYMBOLS)
endif
# <weird code />
endif
# <weird code />
endif
ifeq (NONE, $$($1_OPTIMIZATION))
$1_EXTRA_CFLAGS += $$(C_O_FLAG_NONE)
$1_EXTRA_CXXFLAGS += $$(CXX_O_FLAG_NONE)
$1_EXTRA_CFLAGS += $(C_O_FLAG_NONE)
$1_EXTRA_CXXFLAGS += $(CXX_O_FLAG_NONE)
else ifeq (LOW, $$($1_OPTIMIZATION))
$1_EXTRA_CFLAGS += $$(C_O_FLAG_NORM)
$1_EXTRA_CXXFLAGS += $$(CXX_O_FLAG_NORM)
$1_EXTRA_CFLAGS += $(C_O_FLAG_NORM)
$1_EXTRA_CXXFLAGS += $(CXX_O_FLAG_NORM)
else ifeq (HIGH, $$($1_OPTIMIZATION))
$1_EXTRA_CFLAGS += $$(C_O_FLAG_HI)
$1_EXTRA_CXXFLAGS += $$(CXX_O_FLAG_HI)
$1_EXTRA_CFLAGS += $(C_O_FLAG_HI)
$1_EXTRA_CXXFLAGS += $(CXX_O_FLAG_HI)
else ifeq (HIGHEST, $$($1_OPTIMIZATION))
$1_EXTRA_CFLAGS += $$(C_O_FLAG_HIGHEST)
$1_EXTRA_CXXFLAGS += $$(CXX_O_FLAG_HIGHEST)
$1_EXTRA_CFLAGS += $(C_O_FLAG_HIGHEST)
$1_EXTRA_CXXFLAGS += $(CXX_O_FLAG_HIGHEST)
else ifneq (, $$($1_OPTIMIZATION))
$$(error Unknown value for OPTIMIZATION: $$($1_OPTIMIZATION))
$$(error Unknown value for OPTIMIZATION: $$($1_OPTIMIZATION))
endif
# Now create a list of the packages that are about to compile. Used when sending source
# in a batch to the compiler.
$$(shell $(RM) $$($1_OBJECT_DIR)/_the.list_of_sources)
$$(eval $$(call ListPathsSafelyNow,$1_SRCS,\n, >> $$($1_OBJECT_DIR)/_the.list_of_sources))
# Now call add_native_source for each source file we are going to compile.
$$(foreach p,$$($1_SRCS),\
$$(eval $$(call add_native_source,$1,$$p,$$($1_OBJECT_DIR),\
@@ -375,7 +347,7 @@ define SetupNativeCompilation
$$($1_CXXFLAGS) $$($1_EXTRA_CXXFLAGS),$(CXX),$$($1_ASFLAGS))))
# On windows we need to create a resource file
ifeq ($(OPENJDK_TARGET_OS_API), winapi)
ifeq ($(OPENJDK_TARGET_OS), windows)
ifneq (,$$($1_VERSIONINFO_RESOURCE))
$1_RES:=$$($1_OBJECT_DIR)/$$($1_BASENAME).res
$$($1_RES): $$($1_VERSIONINFO_RESOURCE)
@@ -390,8 +362,6 @@ define SetupNativeCompilation
endif
# mapfile doesnt seem to be implemented on macosx (yet??)
ifneq ($(OPENJDK_TARGET_CPU),ppc)
ifneq ($(OPENJDK_TARGET_CPU),arm)
ifneq ($(OPENJDK_TARGET_OS),macosx)
ifneq ($(OPENJDK_TARGET_OS),windows)
$1_REAL_MAPFILE:=$$($1_MAPFILE)
@@ -406,11 +376,9 @@ define SetupNativeCompilation
endif
endif
endif
endif
endif
# Pickup extra OPENJDK_TARGET_OS_API dependent variables (posix or winapi) and
# (linux,solaris,windows,bsd) for LDFLAGS and LDFLAGS_SUFFIX
# Pickup extra OPENJDK_TARGET_OS_API and/or OPENJDK_TARGET_OS dependent variables
# for LDFLAGS and LDFLAGS_SUFFIX
$1_EXTRA_LDFLAGS:=$$($1_LDFLAGS_$(OPENJDK_TARGET_OS_API)) $$($1_LDFLAGS_$(OPENJDK_TARGET_OS))
$1_EXTRA_LDFLAGS_SUFFIX:=$$($1_LDFLAGS_SUFFIX_$(OPENJDK_TARGET_OS_API)) $$($1_LDFLAGS_SUFFIX_$(OPENJDK_TARGET_OS))
ifneq (,$$($1_REAL_MAPFILE))
@@ -426,15 +394,16 @@ define SetupNativeCompilation
endif
ifneq (,$$($1_DEBUG_SYMBOLS))
ifeq ($(ENABLE_DEBUG_SYMBOLS), yes)
ifeq ($(ENABLE_DEBUG_SYMBOLS), true)
ifeq ($(OPENJDK_TARGET_OS), windows)
$1_EXTRA_LDFLAGS+="-pdb:$$($1_OBJECT_DIR)/$$($1_LIBRARY).pdb" \
"-map:$$($1_OBJECT_DIR)/$$($1_LIBRARY).map"
endif
$$($1_OUTPUT_DIR)/% : $$($1_OBJECT_DIR)/%
ifneq ($$($1_OUTPUT_DIR),$$($1_OBJECT_DIR))
$$($1_OUTPUT_DIR)/% : $$($1_OBJECT_DIR)/%
$(CP) $$< $$@
endif
ifeq ($(OPENJDK_TARGET_OS), solaris)
# gobjcopy crashes on "empty" section headers with the SHF_ALLOC flag set.
@@ -449,9 +418,9 @@ define SetupNativeCompilation
$$($1_OBJECT_DIR)/$$(LIBRARY_PREFIX)$$($1_LIBRARY).debuginfo : $$($1_TARGET) \
$(FIX_EMPTY_SEC_HDR_FLAGS) $(ADD_GNU_DEBUGLINK)
$(RM) $$@
$(FIX_EMPTY_SEC_HDR_FLAGS) $$<
$(FIX_EMPTY_SEC_HDR_FLAGS) $(LOG_INFO) $$<
$(OBJCOPY) --only-keep-debug $$< $$@
$(CD) $$(@D) && $(ADD_GNU_DEBUGLINK) $$(@F) $$<
$(CD) $$(@D) && $(ADD_GNU_DEBUGLINK) $(LOG_INFO) $$(@F) $$<
else # not solaris
$$($1_OBJECT_DIR)/$$(LIBRARY_PREFIX)$$($1_LIBRARY).debuginfo : $$($1_TARGET)
$(RM) $$@
@@ -460,7 +429,7 @@ define SetupNativeCompilation
endif # Touch to not retrigger rule on rebuild
$(TOUCH) $$@
ifeq ($(ZIP_DEBUGINFO_FILES), 1)
ifeq ($(ZIP_DEBUGINFO_FILES), true)
$1 += $$($1_OUTPUT_DIR)/$$(LIBRARY_PREFIX)$$($1_LIBRARY).diz
ifeq ($(OPENJDK_TARGET_OS), windows)
@@ -503,14 +472,16 @@ define SetupNativeCompilation
ifneq (,$$($1_PROGRAM))
# A executable binary has been specified, setup the target for it.
ifneq (,$$($1_DEBUG_SYMBOLS))
ifeq ($(ENABLE_DEBUG_SYMBOLS), yes)
ifeq ($(ENABLE_DEBUG_SYMBOLS), true)
ifeq ($(OPENJDK_TARGET_OS), windows)
$1_EXTRA_LDFLAGS+="-pdb:$$($1_OBJECT_DIR)/$$($1_PROGRAM).pdb" \
"-map:$$($1_OBJECT_DIR)/$$($1_PROGRAM).map"
endif
$$($1_OUTPUT_DIR)/% : $$($1_OBJECT_DIR)/%
ifneq ($$($1_OUTPUT_DIR),$$($1_OBJECT_DIR))
$$($1_OUTPUT_DIR)/% : $$($1_OBJECT_DIR)/%
$(CP) $$< $$@
endif
ifeq ($(OPENJDK_TARGET_OS), solaris)
# gobjcopy crashes on "empty" section headers with the SHF_ALLOC flag set.
@@ -525,9 +496,9 @@ define SetupNativeCompilation
$$($1_OBJECT_DIR)/$$($1_PROGRAM).debuginfo : $$($1_TARGET) \
$(FIX_EMPTY_SEC_HDR_FLAGS) $(ADD_GNU_DEBUGLINK)
$(RM) $$@
$(FIX_EMPTY_SEC_HDR_FLAGS) $$<
$(FIX_EMPTY_SEC_HDR_FLAGS) $(LOG_INFO) $$<
$(OBJCOPY) --only-keep-debug $$< $$@
$(CD) $$(@D) && $(ADD_GNU_DEBUGLINK) $$(@F) $$<
$(CD) $$(@D) && $(ADD_GNU_DEBUGLINK) $(LOG_INFO) $$(@F) $$<
else # not solaris
$$($1_OBJECT_DIR)/$$($1_PROGRAM).debuginfo : $$($1_TARGET)
$(RM) $$@
@@ -536,7 +507,7 @@ define SetupNativeCompilation
endif
$(TOUCH) $$@
ifeq ($(ZIP_DEBUGINFO_FILES), 1)
ifeq ($(ZIP_DEBUGINFO_FILES), true)
$1 += $$($1_OUTPUT_DIR)/$$($1_PROGRAM).diz
ifeq ($(OPENJDK_TARGET_OS), windows)
@@ -566,7 +537,7 @@ define SetupNativeCompilation
$$($1_EXPECTED_OBJS) $$($1_RES) $$($1_LDFLAGS_SUFFIX) \
$$($1_EXTRA_LDFLAGS_SUFFIX)
ifneq (,$$($1_GEN_MANIFEST))
$(MT) -nologo /manifest $$($1_GEN_MANIFEST) /outputresource:$$@;#1
$(MT) -nologo -manifest $$($1_GEN_MANIFEST) -outputresource:$$@;#1
endif
endif

View File

@@ -1,5 +1,5 @@
#
# Copyright (c) 2011, 2012 Oracle and/or its affiliates. All rights reserved.
# 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
@@ -34,16 +34,9 @@ define SetupRMICompilation
# RUN_IIOP:=Set to run rmic with -iiop
# RUN_IIOP_STDPKG:=Set to run rmic with -iiop -standardPackage
# KEEP_GENERATED:=Set to keep generated sources around
$(if $2,$1_$(strip $2))
$(if $3,$1_$(strip $3))
$(if $4,$1_$(strip $4))
$(if $5,$1_$(strip $5))
$(if $6,$1_$(strip $6))
$(if $7,$1_$(strip $7))
$(if $8,$1_$(strip $8))
$(if $9,$1_$(strip $9))
$(if $(10),$(error Internal makefile error: Too many arguments to SetupRMICompilation, please update RMICompilation.gmk))
$(foreach i,2 3 4 5 6 7 8 9 10 11 12 13 14 15, $(if $($i),$1_$(strip $($i)))$(NEWLINE))
$(call LogSetupMacroEntry,SetupRMICompilation($1),$2,$3,$4,$5,$6,$7,$8,$9,$(10),$(11),$(12),$(13),$(14),$(15))
$(if $(16),$(error Internal makefile error: Too many arguments to SetupRMICompilation, please update RMICompilation.gmk))
$1_DEP_FILE := $$($1_STUB_CLASSES_DIR)/$1_rmic
@@ -86,12 +79,12 @@ define SetupRMICompilation
$$($1_DEP_FILE): $$($1_CLASS_FILES)
$(MKDIR) -p $$($1_STUB_CLASSES_DIR)
if [ "x$$($1_ARGS)" != "x" ]; then \
$(ECHO) Running rmic $$($1_ARGS) for $$($1_DOLLAR_SAFE_CLASSES) &&\
$(ECHO) $(LOG_INFO) Running rmic $$($1_ARGS) for $$($1_DOLLAR_SAFE_CLASSES) &&\
$(RMIC) $$($1_ARGS) -classpath "$$($1_CLASSES_DIR)" \
-d $$($1_STUB_CLASSES_DIR) $$($1_DOLLAR_SAFE_CLASSES);\
fi;
if [ "x$$($1_ARGS2)" != "x" ]; then \
$(ECHO) Running rmic $$($1_ARGS2) for $$($1_DOLLAR_SAFE_CLASSES) &&\
$(ECHO) $(LOG_INFO) Running rmic $$($1_ARGS2) for $$($1_DOLLAR_SAFE_CLASSES) &&\
$(RMIC) $$($1_ARGS2) -classpath "$$($1_CLASSES_DIR)" \
-d $$($1_STUB_CLASSES_DIR) $$($1_DOLLAR_SAFE_CLASSES);\
fi;

View File

@@ -1 +0,0 @@
))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))

View File

@@ -1 +0,0 @@
$(subst com,X01,$(subst org,X02,$(subst sun,X03,$(subst java,X04,$(subst javax,X05,$(subst sun/io,X06,$(subst com/sun,X07,$(subst java/io,X08,$(subst org/omg,X09,$(subst org/w3c,X10,$(subst org/xml,X11,$(subst sun/awt,X12,$(subst sun/net,X13,$(subst sun/nio,X14,$(subst sun/rmi,X15,$(subst java/awt,X16,$(subst java/net,X17,$(subst java/nio,X18,$(subst java/rmi,X19,$(subst META-INF,X20,$(subst sun/font,X21,$(subst sun/misc,X22,$(subst sun/text,X23,$(subst sun/util,X24,$(subst java/lang,X25,$(subst java/math,X26,$(subst java/text,X27,$(subst java/util,X28,$(subst javax/jws,X29,$(subst javax/net,X30,$(subst javax/rmi,X31,$(subst javax/xml,X32,$(subst sun/corba,X33,$(subst sun/print,X34,$(subst sun/swing,X35,$(subst java/beans,X36,$(subst javax/lang,X37,$(subst sun/applet,X38,$(subst sun/java2d,X39,$(subst java/applet,X40,$(subst javax/print,X41,$(subst javax/sound,X42,$(subst javax/swing,X43,$(subst javax/tools,X44,$(subst jdk/classes,X45,$(subst org/relaxng,X46,$(subst sun/reflect,X47,$(subst javax/crypto,X48,$(subst javax/naming,X49,$(subst jaxp/classes,X50,$(subst sun/security,X51,$(subst corba/classes,X52,$(subst java/security,X53,$(subst javax/imageio,X54,$(subst jdk/btclasses,X55,$(subst javax/activity,X56,$(subst javax/security,X57,$(subst jdk/newclasses,X58,$(subst sun/instrument,X59,$(subst sun/management,X60,$(subst corba/btclasses,X61,$(subst jdk/democlasses,X62,$(subst javax/activation,X63,$(subst javax/annotation,X64,$(subst javax/management,X65,$(subst javax/transaction,X66,$(subst jaxws/jaf_classes,X67,$(subst langtools/classes,X68,$(subst META-INF/services,X69,$(subst jdk/newdemoclasses,X70,$(subst javax/accessibility,X71,$(subst jaxws/jaxws_classes,X72,

View File

@@ -33,7 +33,6 @@ EXCLUDE_PKGS = \
java.awt.peer \
java.awt.dnd.peer \
sun.* \
sunw.* \
com.sun.* \
org.apache.* \
org.jcp.* \
@@ -128,10 +127,16 @@ CORE_PKGS = \
java.sql \
java.text \
java.text.spi \
java.time \
java.time.chrono \
java.time.format \
java.time.temporal \
java.time.zone \
java.util \
java.util.concurrent \
java.util.concurrent.atomic \
java.util.concurrent.locks \
java.util.function \
java.util.jar \
java.util.logging \
java.util.prefs \

File diff suppressed because it is too large Load Diff

View File

@@ -71,12 +71,15 @@ DOCLETAPI_PKGS = com.sun.javadoc
TAGLETAPI_FILE = com/sun/tools/doclets/Taglet.java
TAGLETAPI_PKGS = com.sun.tools.doclets
ATTACH_PKGS = com.sun.tools.attach \
com.sun.tools.attach.spi
JCONSOLE_PKGS = com.sun.tools.jconsole
TREEAPI_PKGS = com.sun.source.tree \
TREEAPI_PKGS = com.sun.source.doctree \
com.sun.source.tree \
com.sun.source.util
SMARTCARDIO_PKGS = javax.smartcardio

View File

@@ -0,0 +1 @@
))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))

View File

@@ -0,0 +1 @@
$(subst com,X01,$(subst org,X02,$(subst sun,X03,$(subst java,X04,$(subst javax,X05,$(subst sun/io,X06,$(subst com/sun,X07,$(subst java/io,X08,$(subst org/omg,X09,$(subst org/w3c,X10,$(subst org/xml,X11,$(subst sun/awt,X12,$(subst sun/net,X13,$(subst sun/nio,X14,$(subst sun/rmi,X15,$(subst java/awt,X16,$(subst java/net,X17,$(subst java/nio,X18,$(subst java/rmi,X19,$(subst META-INF,X20,$(subst sun/font,X21,$(subst sun/misc,X22,$(subst sun/text,X23,$(subst sun/util,X24,$(subst java/lang,X25,$(subst java/math,X26,$(subst java/text,X27,$(subst java/util,X28,$(subst javax/jws,X29,$(subst javax/net,X30,$(subst javax/rmi,X31,$(subst javax/xml,X32,$(subst sun/corba,X33,$(subst sun/print,X34,$(subst sun/swing,X35,$(subst java/beans,X36,$(subst javax/lang,X37,$(subst sun/applet,X38,$(subst sun/java2d,X39,$(subst java/applet,X40,$(subst javax/print,X41,$(subst javax/sound,X42,$(subst javax/swing,X43,$(subst javax/tools,X44,$(subst jdk/classes,X45,$(subst org/relaxng,X46,$(subst sun/reflect,X47,$(subst javax/crypto,X48,$(subst javax/naming,X49,$(subst jaxp/classes,X50,$(subst sun/security,X51,$(subst corba/classes,X52,$(subst java/security,X53,$(subst javax/imageio,X54,$(subst jdk/btclasses,X55,$(subst javax/activity,X56,$(subst javax/security,X57,$(subst jdk/newclasses,X58,$(subst sun/instrument,X59,$(subst sun/management,X60,$(subst corba/btclasses,X61,$(subst jdk/democlasses,X62,$(subst javax/activation,X63,$(subst javax/annotation,X64,$(subst javax/management,X65,$(subst javax/transaction,X66,$(subst jaxws/jaf_classes,X67,$(subst langtools/classes,X68,$(subst META-INF/services,X69,$(subst jdk/newdemoclasses,X70,$(subst javax/accessibility,X71,$(subst jaxws/jaxws_classes,X72,

View File

@@ -0,0 +1,100 @@
s/\\u0020/\x20/g
s/\\u003A/\x3A/g
s/\\u006B/\x6B/g
s/\\u0075/\x75/g
s/\\u00A0/\xA0/g
s/\\u00A3/\xA3/g
s/\\u00B0/\xB0/g
s/\\u00B7/\xB7/g
s/\\u00BA/\xBA/g
s/\\u00BF/\xBF/g
s/\\u00C0/\xC0/g
s/\\u00C1/\xC1/g
s/\\u00C2/\xC2/g
s/\\u00C4/\xC4/g
s/\\u00C5/\xC5/g
s/\\u00C8/\xC8/g
s/\\u00C9/\xC9/g
s/\\u00CA/\xCA/g
s/\\u00CD/\xCD/g
s/\\u00CE/\xCE/g
s/\\u00D3/\xD3/g
s/\\u00D4/\xD4/g
s/\\u00D6/\xD6/g
s/\\u00DA/\xDA/g
s/\\u00DC/\xDC/g
s/\\u00DD/\xDD/g
s/\\u00DF/\xDF/g
s/\\u00E0/\xE0/g
s/\\u00E1/\xE1/g
s/\\u00E2/\xE2/g
s/\\u00E3/\xE3/g
s/\\u00E4/\xE4/g
s/\\u00E5/\xE5/g
s/\\u00E6/\xE6/g
s/\\u00E7/\xE7/g
s/\\u00E8/\xE8/g
s/\\u00E9/\xE9/g
s/\\u00EA/\xEA/g
s/\\u00EB/\xEB/g
s/\\u00EC/\xEC/g
s/\\u00ED/\xED/g
s/\\u00EE/\xEE/g
s/\\u00EF/\xEF/g
s/\\u00F1/\xF1/g
s/\\u00F2/\xF2/g
s/\\u00F3/\xF3/g
s/\\u00F4/\xF4/g
s/\\u00F5/\xF5/g
s/\\u00F6/\xF6/g
s/\\u00F9/\xF9/g
s/\\u00FA/\xFA/g
s/\\u00FC/\xFC/g
s/\\u0020/\x20/g
s/\\u003f/\x3f/g
s/\\u006f/\x6f/g
s/\\u0075/\x75/g
s/\\u00a0/\xa0/g
s/\\u00a3/\xa3/g
s/\\u00b0/\xb0/g
s/\\u00ba/\xba/g
s/\\u00bf/\xbf/g
s/\\u00c1/\xc1/g
s/\\u00c4/\xc4/g
s/\\u00c5/\xc5/g
s/\\u00c8/\xc8/g
s/\\u00c9/\xc9/g
s/\\u00ca/\xca/g
s/\\u00cd/\xcd/g
s/\\u00d6/\xd6/g
s/\\u00dc/\xdc/g
s/\\u00dd/\xdd/g
s/\\u00df/\xdf/g
s/\\u00e0/\xe0/g
s/\\u00e1/\xe1/g
s/\\u00e2/\xe2/g
s/\\u00e3/\xe3/g
s/\\u00e4/\xe4/g
s/\\u00e5/\xe5/g
s/\\u00e7/\xe7/g
s/\\u00e8/\xe8/g
s/\\u00e9/\xe9/g
s/\\u00ea/\xea/g
s/\\u00eb/\xeb/g
s/\\u00ec/\xec/g
s/\\u00ed/\xed/g
s/\\u00ee/\xee/g
s/\\u00ef/\xef/g
s/\\u00f0/\xf0/g
s/\\u00f1/\xf1/g
s/\\u00f2/\xf2/g
s/\\u00f3/\xf3/g
s/\\u00f4/\xf4/g
s/\\u00f5/\xf5/g
s/\\u00f6/\xf6/g
s/\\u00f7/\xf7/g
s/\\u00f8/\xf8/g
s/\\u00f9/\xf9/g
s/\\u00fa/\xfa/g
s/\\u00fc/\xfc/g
s/\\u00ff/\xff/g

356
common/src/fixpath.c Normal file
View File

@@ -0,0 +1,356 @@
/*
* 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. Oracle designates this
* particular file as subject to the "Classpath" exception as provided
* by Oracle in the LICENSE file that accompanied this code.
*
* 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 <Windows.h>
#include <io.h>
#include <stdio.h>
#include <string.h>
#include <malloc.h>
void report_error()
{
LPVOID lpMsgBuf;
DWORD dw = GetLastError();
FormatMessage(
FORMAT_MESSAGE_ALLOCATE_BUFFER |
FORMAT_MESSAGE_FROM_SYSTEM |
FORMAT_MESSAGE_IGNORE_INSERTS,
NULL,
dw,
MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT),
(LPTSTR) &lpMsgBuf,
0,
NULL);
fprintf(stderr,
"Could not start process! Failed with error %d: %s\n",
dw, lpMsgBuf);
LocalFree(lpMsgBuf);
}
/*
* Test if pos points to /cygdrive/_/ where _ can
* be any character.
*/
int is_cygdrive_here(int pos, char *in, int len)
{
// Length of /cygdrive/c/ is 12
if (pos+12 > len) return 0;
if (in[pos+11]=='/' &&
in[pos+9]=='/' &&
in[pos+8]=='e' &&
in[pos+7]=='v' &&
in[pos+6]=='i' &&
in[pos+5]=='r' &&
in[pos+4]=='d' &&
in[pos+3]=='g' &&
in[pos+2]=='y' &&
in[pos+1]=='c' &&
in[pos+0]=='/') {
return 1;
}
return 0;
}
/*
* Replace /cygdrive/_/ with _:/
* Works in place since drive letter is always
* shorter than /cygdrive/
*/
char *replace_cygdrive_cygwin(char *in)
{
int len = strlen(in);
char *out = malloc(len+1);
int i,j;
if (len < 12) {
strcpy(out, in);
return out;
}
for (i = 0, j = 0; i<len;) {
if (is_cygdrive_here(i, in, len)) {
out[j++] = in[i+10];
out[j++] = ':';
i+=11;
} else {
out[j] = in[i];
i++;
j++;
}
}
out[j] = 0;
return out;
}
void append(char **b, size_t *bl, size_t *u, char *add, size_t addlen)
{
while ( (addlen+*u+1) > *bl) {
*bl *= 2;
*b = realloc(*b, *bl);
}
memcpy(*b+*u, add, addlen);
*u += addlen;
}
/*
* Creates a new string from in where the first occurance of sub is
* replaced by rep.
*/
char *replace_substring(char *in, char *sub, char *rep)
{
int in_len = strlen(in);
int sub_len = strlen(sub);
int rep_len = strlen(rep);
char *out = malloc(in_len - sub_len + rep_len + 1);
char *p;
if (!(p = strstr(in, sub))) {
// If sub isn't a substring of in, just return in.
return in;
}
// Copy characters from beginning of in to start of sub.
strncpy(out, in, p - in);
out[p - in] = '\0';
sprintf(out + (p - in), "%s%s", rep, p + sub_len);
return out;
}
char* msys_path_list; // @-separated list of paths prefix to look for
char* msys_path_list_end; // Points to last \0 in msys_path_list.
void setup_msys_path_list(char* argument)
{
char* p;
char* drive_letter_pos;
msys_path_list = strdup(&argument[2]);
msys_path_list_end = &msys_path_list[strlen(msys_path_list)];
// Convert all at-sign (@) in path list to \0.
// @ was chosen as separator to minimize risk of other tools messing around with it
p = msys_path_list;
do {
if (p[1] == ':') {
// msys has mangled our path list, restore it from c:/... to /c/...
drive_letter_pos = p+1;
*drive_letter_pos = *p;
*p = '/';
}
// Look for an @ in the list
p = strchr(p, '@');
if (p != NULL) {
*p = '\0';
p++;
}
} while (p != NULL);
}
char *replace_cygdrive_msys(char *in)
{
char* str;
char* prefix;
char* p;
str = strdup(in);
// For each prefix in the path list, search for it and replace /c/... with c:/...
for (prefix = msys_path_list; prefix < msys_path_list_end && prefix != NULL; prefix += strlen(prefix)+1) {
p=str;
while ((p = strstr(p, prefix))) {
char* drive_letter = p+1;
*p = *drive_letter;
*drive_letter = ':';
p++;
}
}
return str;
}
char*(*replace_cygdrive)(char *in) = NULL;
char *files_to_delete[1024];
int num_files_to_delete = 0;
char *fix_at_file(char *in)
{
char *tmpdir;
char name[2048];
char *atname;
char *buffer;
size_t buflen=65536;
size_t used=0;
size_t len;
int rc;
FILE *atout;
FILE *atin;
char block[2048];
size_t blocklen;
char *fixed;
atin = fopen(in+1, "r");
if (atin == NULL) {
fprintf(stderr, "Could not read at file %s\n", in+1);
exit(-1);
}
tmpdir = getenv("TMP");
if (tmpdir == NULL) {
tmpdir = "c:/cygwin/tmp";
}
_snprintf(name, sizeof(name), "%s\\atfile_XXXXXX", tmpdir);
rc = _mktemp_s(name, strlen(name)+1);
if (rc) {
fprintf(stderr, "Could not create temporary file name for at file!\n");
exit(-1);
}
atout = fopen(name, "w");
if (atout == NULL) {
fprintf(stderr, "Could not open temporary file for writing! %s\n", name);
exit(-1);
}
buffer = malloc(buflen);
while((blocklen = fread(block,1,sizeof(block),atin)) > 0) {
append(&buffer, &buflen, &used, block, blocklen);
}
buffer[used] = 0;
if (getenv("DEBUG_FIXPATH") != NULL) {
fprintf(stderr, "fixpath input from @-file %s: %s\n", &in[1], buffer);
}
fixed = replace_cygdrive(buffer);
if (getenv("DEBUG_FIXPATH") != NULL) {
fprintf(stderr, "fixpath converted to @-file %s is: %s\n", name, fixed);
}
fwrite(fixed, strlen(fixed), 1, atout);
fclose(atin);
fclose(atout);
free(fixed);
free(buffer);
files_to_delete[num_files_to_delete] = malloc(strlen(name)+1);
strcpy(files_to_delete[num_files_to_delete], name);
num_files_to_delete++;
atname = malloc(strlen(name)+2);
atname[0] = '@';
strcpy(atname+1, name);
return atname;
}
int main(int argc, char **argv)
{
STARTUPINFO si;
PROCESS_INFORMATION pi;
unsigned short rc;
char *new_at_file;
char *old_at_file;
char *line;
int i;
DWORD exitCode;
if (argc<3 || argv[1][0] != '-' || (argv[1][1] != 'c' && argv[1][1] != 'm')) {
fprintf(stderr, "Usage: fixpath -c|m<path@path@...> /cygdrive/c/WINDOWS/notepad.exe /cygdrive/c/x/test.txt\n");
exit(0);
}
if (getenv("DEBUG_FIXPATH") != NULL) {
fprintf(stderr, "fixpath input line >%s<\n", strstr(GetCommandLine(), argv[1]));
}
if (argv[1][1] == 'c' && argv[1][2] == '\0') {
if (getenv("DEBUG_FIXPATH") != NULL) {
fprintf(stderr, "using cygwin mode\n");
}
replace_cygdrive = replace_cygdrive_cygwin;
} else if (argv[1][1] == 'm') {
if (getenv("DEBUG_FIXPATH") != NULL) {
fprintf(stderr, "using msys mode, with path list: %s\n", &argv[1][2]);
}
setup_msys_path_list(argv[1]);
replace_cygdrive = replace_cygdrive_msys;
} else {
fprintf(stderr, "Unknown mode: %s\n", argv[1]);
exit(-1);
}
line = replace_cygdrive(strstr(GetCommandLine(), argv[2]));
for (i=1; i<argc; ++i) {
if (argv[i][0] == '@') {
// Found at-file! Fix it!
old_at_file = replace_cygdrive(argv[i]);
new_at_file = fix_at_file(old_at_file);
line = replace_substring(line, old_at_file, new_at_file);
}
}
if (getenv("DEBUG_FIXPATH") != NULL) {
fprintf(stderr, "fixpath converted line >%s<\n", line);
}
ZeroMemory(&si,sizeof(si));
si.cb=sizeof(si);
ZeroMemory(&pi,sizeof(pi));
rc = CreateProcess(NULL,
line,
0,
0,
TRUE,
0,
0,
0,
&si,
&pi);
if(!rc) {
// Could not start process for some reason. Try to report why:
report_error();
exit(rc);
}
WaitForSingleObject(pi.hProcess,INFINITE);
GetExitCodeProcess(pi.hProcess,&exitCode);
if (getenv("DEBUG_FIXPATH") != NULL) {
for (i=0; i<num_files_to_delete; ++i) {
fprintf(stderr, "Not deleting temporary fixpath file %s\n",
files_to_delete[i]);
}
}
else {
for (i=0; i<num_files_to_delete; ++i) {
remove(files_to_delete[i]);
}
}
exit(exitCode);
}

View File

@@ -1,254 +0,0 @@
/*
* 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. Oracle designates this
* particular file as subject to the "Classpath" exception as provided
* by Oracle in the LICENSE file that accompanied this code.
*
* 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 <Windows.h>
#include <io.h>
#include <stdio.h>
#include <string.h>
#include <malloc.h>
/*
* Test if pos points to /cygdrive/_/ where _ can
* be any character.
*/
int is_cygdrive_here(int pos, char *in, int len)
{
// Length of /cygdrive/c/ is 12
if (pos+12 > len) return 0;
if (in[pos+11]=='/' &&
in[pos+9]=='/' &&
in[pos+8]=='e' &&
in[pos+7]=='v' &&
in[pos+6]=='i' &&
in[pos+5]=='r' &&
in[pos+4]=='d' &&
in[pos+3]=='g' &&
in[pos+2]=='y' &&
in[pos+1]=='c' &&
in[pos+0]=='/') {
return 1;
}
return 0;
}
/*
* Replace /cygdrive/_/ with _:/
* Works in place since drive letter is always
* shorter than /cygdrive/
*/
char *replace_cygdrive(char *in)
{
int len = strlen(in);
char *out = malloc(len+1);
int i,j;
if (len < 12) {
strcpy(out, in);
return out;
}
for (i = 0, j = 0; i<len;) {
if (is_cygdrive_here(i, in, len)) {
out[j++] = in[i+10];
out[j++] = ':';
i+=11;
} else {
out[j] = in[i];
i++;
j++;
}
}
out[j] = 0;
return out;
}
void append(char **b, size_t *bl, size_t *u, char *add, size_t addlen)
{
while ( (addlen+*u+1) > *bl) {
*bl *= 2;
*b = realloc(*b, *bl);
}
memcpy(*b+*u, add, addlen);
*u += addlen;
}
/*
* Creates a new string from in where the first occurance of sub is
* replaced by rep.
*/
char *replace_substring(char *in, char *sub, char *rep)
{
int in_len = strlen(in);
int sub_len = strlen(sub);
int rep_len = strlen(rep);
char *out = malloc(in_len - sub_len + rep_len + 1);
char *p;
if (!(p = strstr(in, sub))) {
// If sub isn't a substring of in, just return in.
return in;
}
// Copy characters from beginning of in to start of sub.
strncpy(out, in, p - in);
out[p - in] = '\0';
sprintf(out + (p - in), "%s%s", rep, p + sub_len);
return out;
}
char *files_to_delete[1024];
int num_files_to_delete = 0;
char *fix_at_file(char *in)
{
char *tmpdir;
char name[2048];
char *atname;
char *buffer;
size_t buflen=65536;
size_t used=0;
size_t len;
int rc;
FILE *atout;
FILE *atin;
char block[2048];
size_t blocklen;
char *fixed;
atin = fopen(in+1, "r");
if (atin == NULL) {
fprintf(stderr, "Could not read at file %s\n", in+1);
exit(-1);
}
tmpdir = getenv("TMP");
if (tmpdir == NULL) {
tmpdir = "c:/cygwin/tmp";
}
_snprintf(name, sizeof(name), "%s\\atfile_XXXXXX", tmpdir);
rc = _mktemp_s(name, strlen(name)+1);
if (rc) {
fprintf(stderr, "Could not create temporary file name for at file!\n");
exit(-1);
}
atout = fopen(name, "w");
if (atout == NULL) {
fprintf(stderr, "Could open temporary file for writing! %s\n", name);
exit(-1);
}
buffer = malloc(buflen);
while((blocklen = fread(block,1,sizeof(block),atin)) > 0) {
append(&buffer, &buflen, &used, block, blocklen);
}
buffer[used] = 0;
fixed = replace_cygdrive(buffer);
fwrite(fixed, strlen(fixed), 1, atout);
fclose(atin);
fclose(atout);
free(fixed);
free(buffer);
files_to_delete[num_files_to_delete] = malloc(strlen(name)+1);
strcpy(files_to_delete[num_files_to_delete], name);
num_files_to_delete++;
atname = malloc(strlen(name)+2);
atname[0] = '@';
strcpy(atname+1, name);
return atname;
}
int main(int argc, char **argv)
{
STARTUPINFO si;
PROCESS_INFORMATION pi;
unsigned short rc;
char *new_at_file;
char *old_at_file;
char *line;
int i;
DWORD exitCode;
if (argc<2) {
fprintf(stderr, "Usage: uncygdrive.exe /cygdrive/c/WINDOWS/notepad.exe /cygdrive/c/x/test.txt");
exit(0);
}
line = replace_cygdrive(strstr(GetCommandLine(), argv[1]));
for (i=1; i<argc; ++i) {
if (argv[i][0] == '@') {
// Found at-file! Fix it!
old_at_file = replace_cygdrive(argv[i]);
new_at_file = fix_at_file(old_at_file);
line = replace_substring(line, old_at_file, new_at_file);
}
}
if (getenv("DEBUG_UNCYGDRIVE") != NULL) {
fprintf(stderr, "uncygdrive >%s<\n", line);
}
ZeroMemory(&si,sizeof(si));
si.cb=sizeof(si);
ZeroMemory(&pi,sizeof(pi));
rc = CreateProcess(NULL,
line,
0,
0,
TRUE,
0,
0,
0,
&si,
&pi);
if(!rc)
{
//Could not start process;
fprintf(stderr, "Could not start process!\n");
exit(-1);
}
WaitForSingleObject(pi.hProcess,INFINITE);
GetExitCodeProcess(pi.hProcess,&exitCode);
if (getenv("DEBUG_UNCYGDRIVE") != NULL) {
for (i=0; i<num_files_to_delete; ++i) {
fprintf(stderr, "Not deleting temporary uncygdrive file %s\n",
files_to_delete[i]);
}
}
else {
for (i=0; i<num_files_to_delete; ++i) {
remove(files_to_delete[i]);
}
}
exit(exitCode);
}

29
configure vendored Normal file
View File

@@ -0,0 +1,29 @@
#!/bin/bash
#
# 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.
#
# This is a thin wrapper which will call the real configure script, and
# make sure that is called using bash.
this_script_dir=`dirname $0`
bash $this_script_dir/common/autoconf/configure "$@"

View File

@@ -168,3 +168,34 @@ cd879aff5d3cc1f58829aab3116880aa19525b78 jdk8-b43
439d9bf8e4ff204cc89c9974c1515a508b2cc6ff jdk8-b44
747dad9e9d37d244a5c765a1afe9194f7ddae118 jdk8-b45
30141e598d72a6146126cb86b034ed6d0bd191b3 jdk8-b46
21e46ea21c6a26246fb7a1926ac7fe8d580d0518 jdk8-b47
7e2b179a5b4dbd3f097e28daa00abfcc72ba3e0b jdk8-b48
fe44e58a6bdbeae350ce96aafb49770a5dca5d8a jdk8-b49
d20d9eb9f093adbf392918c703960ad24c93a331 jdk8-b50
9b0f841ca9f7ee9bacf16a5ab41c4f829276bc6b jdk8-b51
80689ff9cb499837513f18a1136dac7f0686cd55 jdk8-b52
63aeb7a2472fb299134ad7388e0a111a5340b02d jdk8-b53
16c82fc74695bab9b9e0fb05c086a5a08ba0082f jdk8-b54
e8a0e84383d6fbd303ce44bd355fb25972b13286 jdk8-b55
bf1bb47414e178beff67dc255fc3b97bf401f679 jdk8-b56
f3ab4163ae012965fc8acdfc25ce0fece8d6906d jdk8-b57
18462a19f7bd66d38015f61ea549a5e0c0c889a3 jdk8-b58
d54dc53e223ed9ce7d5f4d2cd02ad9d5def3c2db jdk8-b59
207ef43ba69ead6cbbab415d81834545e4d46747 jdk8-b60
0e08ba7648fb3faa0986cb217887d7c4990977f3 jdk8-b61
08afb9c6f44f11c3595b01fd0985db64b29834dd jdk8-b62
6ccbf67b68bfed1ab9c44ab8748a5bdc7df33506 jdk8-b63
54d599a5b4aad83c235d590652fc81f41c2824fb jdk8-b64
5132f7900a8f0c30c3ca7f7a32f9433f4fee7745 jdk8-b65
65771ad1ca557ca26e4979d4dc633cf685435cb8 jdk8-b66
394515ad2a55d4d54df990b36065505d3e7a3cbb jdk8-b67
82000531feaa7baef76b6406099e5cd88943d635 jdk8-b68
22ddcac208a8dea894a16887d04f3ca4d3c5d267 jdk8-b69
603cceb495c8133d47b26a7502d51c7d8a67d76b jdk8-b70
8171d23e914d758836527b80b06debcfdb718f2d jdk8-b71
cb40427f47145b01b7e53c3e02b38ff7625efbda jdk8-b72
191afde59e7be0e1a1d76d06f2a32ff17444f0ec jdk8-b73
2132845cf5f717ff5c240a2431c0c0e03e66e3a5 jdk8-b74
d4e68ce17795601017ac2f952baad7272942c36e jdk8-b75
58be6ca3c0603882a1ec478724e337aac85e0da0 jdk8-b76
35684a40c5845782324dbcc9ac8969528020ff61 jdk8-b77

View File

@@ -1,5 +1,5 @@
#
# Copyright (c) 1999, 2010, Oracle and/or its affiliates. All rights reserved.
# Copyright (c) 1999, 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

View File

@@ -1,5 +1,5 @@
#
# Copyright (c) 1997, 2005, Oracle and/or its affiliates. All rights reserved.
# Copyright (c) 1997, 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

View File

@@ -1,5 +1,5 @@
#
# Copyright (c) 2005, 2010, 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.
#
# This code is free software; you can redistribute it and/or modify it

View File

@@ -1,5 +1,5 @@
#
# Copyright (c) 2005, 2009, 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.
#
# This code is free software; you can redistribute it and/or modify it
@@ -151,16 +151,26 @@ CD = cd # intrinsic unix command
ifeq ($(PLATFORM),windows)
ifdef USING_CYGWIN
# Intrinsic unix command, with backslash-escaped character interpretation
ECHO = $(UNIXCOMMAND_PATH)echo -e
ZIPEXE = $(UNIXCOMMAND_PATH)zip
UNZIP = $(UNIXCOMMAND_PATH)unzip
ECHO = $(UNIXCOMMAND_PATH)echo -e
ZIPEXE = $(UNIXCOMMAND_PATH)zip
UNZIP = $(UNIXCOMMAND_PATH)unzip
# Some CYGWIN nawk versions require BINMODE=w for proper '\r' interpretation
NAWK = $(UNIXCOMMAND_PATH)awk -v BINMODE=w
else
ZIPEXE = $(UTILS_DEVTOOL_PATH)zip
UNZIP = $(UTILS_DEVTOOL_PATH)unzip
ifdef USING_MSYS
ECHO = $(UTILS_COMMAND_PATH)echo -e
ZIPEXE = $(UTILS_DEVTOOL_PATH)zip
UNZIP = $(UTILS_DEVTOOL_PATH)unzip
NAWK = $(UNIXCOMMAND_PATH)awk
else
ZIPEXE = $(UTILS_DEVTOOL_PATH)zip
UNZIP = $(UTILS_DEVTOOL_PATH)unzip
NAWK = $(UNIXCOMMAND_PATH)awk
endif
endif
# Re-define some utilities
LEX =# override GNU Make intrinsic: no lex on windows
NAWK = $(UNIXCOMMAND_PATH)awk
SHA1SUM = $(UNIXCOMMAND_PATH)openssl sha1
endif
# Linux specific

View File

@@ -91,6 +91,15 @@ define OptFullPath
$(shell if [ "$1" != "" -a -d "$1" ]; then $(CYGPATH_CMD) "$1"; else echo "$1"; fi)
endef
else
ifdef USING_MSYS
DOSPATH_CMD:=$(shell cd $(JDK_TOPDIR) 2> $(DEV_NULL) && pwd)/make/tools/msys_build_scripts/dospath.sh
define FullPath
$(subst \,/,$(shell $(DOSPATH_CMD) $1))
endef
define OptFullPath
$(shell if [ "$1" != "" -a -d "$1" ]; then (cd $1 && pwd); else echo "$1"; fi)
endef
else
# Temporary until we upgrade to MKS 8.7, MKS pwd returns mixed mode path
define FullPath
$(shell cd $1 2> $(DEV_NULL) && pwd)
@@ -99,6 +108,7 @@ define OptFullPath
$(shell if [ "$1" != "" -a -d "$1" ]; then (cd $1 && pwd); else echo "$1"; fi)
endef
endif
endif
# System drive
ifdef SYSTEMDRIVE
@@ -112,14 +122,21 @@ _system_drive:=$(call CheckValue,_system_drive,C:)
# UNIXCOMMAND_PATH: path to where the most common Unix commands are.
# NOTE: Must end with / so that it could be empty, allowing PATH usage.
ifndef UNIXCOMMAND_PATH
ifdef ALT_UNIXCOMMAND_PATH
# With cygwin, use this as is; don't use FullPath on it.
ifdef ALT_UNIXCOMMAND_PATH
ifdef USING_CYGWIN
UNIXCOMMAND_PATH :=$(call PrefixPath,$(ALT_UNIXCOMMAND_PATH))
else
xALT_UNIXCOMMAND_PATH :="$(subst \,/,$(ALT_UNIXCOMMAND_PATH))"
fxALT_UNIXCOMMAND_PATH :=$(call FullPath,$(xALT_UNIXCOMMAND_PATH))
UNIXCOMMAND_PATH :=$(call PrefixPath,$(fxALT_UNIXCOMMAND_PATH))
endif
else
ifdef USING_CYGWIN
UNIXCOMMAND_PATH :=$(call PrefixPath,/usr/bin)
else
ifdef USING_CYGWIN
UNIXCOMMAND_PATH :=$(call PrefixPath,/usr/bin)
ifdef USING_MSYS
UNIXCOMMAND_PATH :=$(call PrefixPath,/bin)
else
ifdef ROOTDIR
xROOTDIR :="$(subst \,/,$(ROOTDIR))"
@@ -131,41 +148,35 @@ ifndef UNIXCOMMAND_PATH
ifneq ($(_rootdir),)
UNIXCOMMAND_PATH :=$(call PrefixPath,$(_rootdir)/mksnt)
endif
endif
endif
UNIXCOMMAND_PATH:=$(call AltCheckSpaces,UNIXCOMMAND_PATH)
export UNIXCOMMAND_PATH
endif # USING_MSYS
endif # USING_CYGWIN
endif
UNIXCOMMAND_PATH:=$(call AltCheckSpaces,UNIXCOMMAND_PATH)
export UNIXCOMMAND_PATH
# Get version of MKS or CYGWIN
ifdef USING_CYGWIN
ifndef CYGWIN_VER
_CYGWIN_VER :=$(shell $(UNAME))
CYGWIN_VER :=$(call GetVersion,$(_CYGWIN_VER))
export CYGWIN_VER
ifdef USING_MKS
_MKS_VER :=$(shell $(MKSINFO) 2>&1 | $(GREP) Release | $(TAIL) -1 | $(SED) -e 's@.*\(Release.*\)@\1@')
MKS_VER :=$(call GetVersion,$(_MKS_VER))
# At this point, we can re-define FullPath to use DOSNAME_CMD
CHECK_MKS87:=$(call CheckVersions,$(MKS_VER),8.7)
TRY_DOSNAME:=false
ifeq ($(CHECK_MKS87),same)
TRY_DOSNAME:=true
endif
else # MKS
_MKS_VER :=$(shell $(MKSINFO) 2>&1 | $(GREP) Release | $(TAIL) -1 | $(SED) -e 's@.*\(Release.*\)@\1@')
MKS_VER :=$(call GetVersion,$(_MKS_VER))
# At this point, we can re-define FullPath to use DOSNAME_CMD
CHECK_MKS87:=$(call CheckVersions,$(MKS_VER),8.7)
TRY_DOSNAME:=false
ifeq ($(CHECK_MKS87),same)
TRY_DOSNAME:=true
endif
# Newer should be ok
ifeq ($(CHECK_MKS87),newer)
TRY_DOSNAME:=true
endif
ifeq ($(TRY_DOSNAME),true)
ifeq ($(shell $(UNIXCOMMAND_PATH)dosname -s $(_system_drive)/ 2> $(DEV_NULL)),$(_system_drive)/)
_DOSNAME=$(UNIXCOMMAND_PATH)dosname
DOSNAME_CMD:=$(_DOSNAME) -s
# Newer should be ok
ifeq ($(CHECK_MKS87),newer)
TRY_DOSNAME:=true
endif
ifeq ($(TRY_DOSNAME),true)
ifeq ($(shell $(UNIXCOMMAND_PATH)dosname -s $(_system_drive)/ 2> $(DEV_NULL)),$(_system_drive)/)
_DOSNAME=$(UNIXCOMMAND_PATH)dosname
DOSNAME_CMD:=$(_DOSNAME) -s
define FullPath
$(subst //,/,$(shell echo $1 | $(DOSNAME_CMD) 2> $(DEV_NULL)))
endef
endif # test dosname -s
endif # TRY_DOSNAME
endif # test dosname -s
endif # TRY_DOSNAME
endif # MKS
# We try to get references to what we need via the default component
@@ -240,6 +251,8 @@ endif
# DEVTOOLS_PATH: for other tools required for building (such as zip, etc.)
# NOTE: Must end with / so that it could be empty, allowing PATH usage.
ifndef DEVTOOLS_PATH
# DEVTOOLS_PATH: for other tools required for building (such as zip, etc.)
# NOTE: Must end with / so that it could be empty, allowing PATH usage.
ifdef ALT_DEVTOOLS_PATH
xALT_DEVTOOLS_PATH :="$(subst \,/,$(ALT_DEVTOOLS_PATH))"
fxALT_DEVTOOLS_PATH :=$(call FullPath,$(xALT_DEVTOOLS_PATH))
@@ -248,10 +261,14 @@ ifndef DEVTOOLS_PATH
ifdef USING_CYGWIN
DEVTOOLS_PATH :=$(UNIXCOMMAND_PATH)
else
xDEVTOOLS_PATH :="$(_system_drive)/utils"
fxDEVTOOLS_PATH :=$(call FullPath,$(xDEVTOOLS_PATH))
DEVTOOLS_PATH :=$(call PrefixPath,$(fxDEVTOOLS_PATH))
endif
ifdef USING_MSYS
DEVTOOLS_PATH :=$(UNIXCOMMAND_PATH)
else
xDEVTOOLS_PATH :="$(_system_drive)/utils"
fxDEVTOOLS_PATH :=$(call FullPath,$(xDEVTOOLS_PATH))
DEVTOOLS_PATH :=$(call PrefixPath,$(fxDEVTOOLS_PATH))
endif # USING_MSYS
endif # USING_CYGWIN
endif
DEVTOOLS_PATH:=$(call AltCheckSpaces,DEVTOOLS_PATH)
export DEVTOOLS_PATH

View File

@@ -65,6 +65,8 @@ PLATFORM_SHARED=done
# REQUIRED_WINDOWS_NAME windows only: basic name of windows
# REQUIRED_WINDOWS_VERSION windows only: specific version of windows
# USING_CYGWIN windows only: true or false
# USING_MSYS windows only: true or false
# USING_MKS windows only: true or false
# WINDOWS_NT_VERSION_STRING windows only: long version name
# REQUIRED_OS_VERSION required OS version, e.g. 5.10, 2.4
# REQUIRED_FREE_SPACE minimum disk space needed for outputdir
@@ -327,6 +329,8 @@ endif
# Windows with and without CYGWIN will be slightly different
ifeq ($(SYSTEM_UNAME), Windows_NT)
PLATFORM = windows
USING_MKS = true
export USING_MKS
OS_VERSION := $(shell uname -r)
WINDOWS_NT_VERSION_STRING=Windows_NT
REQUIRED_MKS_VER=6.1
@@ -339,6 +343,11 @@ ifneq (,$(findstring CYGWIN,$(SYSTEM_UNAME)))
WINDOWS_NT_VERSION_STRING=CYGWIN_NT
REQUIRED_CYGWIN_VER=4.0
endif
ifneq (,$(findstring MINGW,$(SYSTEM_UNAME)))
PLATFORM = windows
USING_MSYS = true
export USING_MSYS
endif
# Platform settings specific to Windows
ifeq ($(PLATFORM), windows)

View File

@@ -1,5 +1,5 @@
/*
* Copyright (c) 2001, 2011, 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.
*
* This code is free software; you can redistribute it and/or modify it

View File

@@ -1,5 +1,5 @@
#
# Copyright (c) 1998, 2005, Oracle and/or its affiliates. All rights reserved.
# Copyright (c) 1998, 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

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@@ -1,5 +1,5 @@
/*
* Copyright (c) 2001, 2004, 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.
*
* This code is free software; you can redistribute it and/or modify it
@@ -25,7 +25,10 @@
package com.sun.corba.se.impl.transport;
import java.util.Hashtable;
import java.util.Collections;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import org.omg.CORBA.CompletionStatus;
import org.omg.CORBA.SystemException;
@@ -68,7 +71,7 @@ public class CorbaResponseWaitingRoomImpl
private CorbaConnection connection;
// Maps requestId to an OutCallDesc.
private Hashtable out_calls = null; // REVISIT - use int hastable/map
final private Map<Integer, OutCallDesc> out_calls;
public CorbaResponseWaitingRoomImpl(ORB orb, CorbaConnection connection)
{
@@ -76,7 +79,8 @@ public class CorbaResponseWaitingRoomImpl
wrapper = ORBUtilSystemException.get( orb,
CORBALogDomains.RPC_TRANSPORT ) ;
this.connection = connection;
out_calls = new Hashtable();
out_calls =
Collections.synchronizedMap(new HashMap<Integer, OutCallDesc>());
}
////////////////////////////////////////////////////
@@ -139,7 +143,7 @@ public class CorbaResponseWaitingRoomImpl
return null;
}
OutCallDesc call = (OutCallDesc)out_calls.get(requestId);
OutCallDesc call = out_calls.get(requestId);
if (call == null) {
throw wrapper.nullOutCall(CompletionStatus.COMPLETED_MAYBE);
}
@@ -197,7 +201,7 @@ public class CorbaResponseWaitingRoomImpl
LocateReplyOrReplyMessage header = (LocateReplyOrReplyMessage)
inputObject.getMessageHeader();
Integer requestId = new Integer(header.getRequestId());
OutCallDesc call = (OutCallDesc) out_calls.get(requestId);
OutCallDesc call = out_calls.get(requestId);
if (orb.transportDebugFlag) {
dprint(".responseReceived: id/"
@@ -248,7 +252,6 @@ public class CorbaResponseWaitingRoomImpl
public int numberRegistered()
{
// Note: Hashtable.size() is not synchronized
return out_calls.size();
}
@@ -264,29 +267,41 @@ public class CorbaResponseWaitingRoomImpl
dprint(".signalExceptionToAllWaiters: " + systemException);
}
OutCallDesc call;
java.util.Enumeration e = out_calls.elements();
while(e.hasMoreElements()) {
call = (OutCallDesc) e.nextElement();
synchronized (out_calls) {
if (orb.transportDebugFlag) {
dprint(".signalExceptionToAllWaiters: out_calls size :" +
out_calls.size());
}
synchronized(call.done){
// anything waiting for BufferManagerRead's fragment queue
// needs to be cancelled
CorbaMessageMediator corbaMsgMediator =
(CorbaMessageMediator)call.messageMediator;
CDRInputObject inputObject =
(CDRInputObject)corbaMsgMediator.getInputObject();
// IMPORTANT: If inputObject is null, then no need to tell
// BufferManagerRead to cancel request processing.
if (inputObject != null) {
BufferManagerReadStream bufferManager =
(BufferManagerReadStream)inputObject.getBufferManager();
int requestId = corbaMsgMediator.getRequestId();
bufferManager.cancelProcessing(requestId);
for (OutCallDesc call : out_calls.values()) {
if (orb.transportDebugFlag) {
dprint(".signalExceptionToAllWaiters: signaling " +
call);
}
synchronized(call.done) {
try {
// anything waiting for BufferManagerRead's fragment queue
// needs to be cancelled
CorbaMessageMediator corbaMsgMediator =
(CorbaMessageMediator)call.messageMediator;
CDRInputObject inputObject =
(CDRInputObject)corbaMsgMediator.getInputObject();
// IMPORTANT: If inputObject is null, then no need to tell
// BufferManagerRead to cancel request processing.
if (inputObject != null) {
BufferManagerReadStream bufferManager =
(BufferManagerReadStream)inputObject.getBufferManager();
int requestId = corbaMsgMediator.getRequestId();
bufferManager.cancelProcessing(requestId);
}
} catch (Exception e) {
} finally {
// attempt to wake up waiting threads in all cases
call.inputObject = null;
call.exception = systemException;
call.done.notifyAll();
}
}
call.inputObject = null;
call.exception = systemException;
call.done.notify();
}
}
}
@@ -294,7 +309,7 @@ public class CorbaResponseWaitingRoomImpl
public MessageMediator getMessageMediator(int requestId)
{
Integer id = new Integer(requestId);
OutCallDesc call = (OutCallDesc) out_calls.get(id);
OutCallDesc call = out_calls.get(id);
if (call == null) {
// This can happen when getting early reply fragments for a
// request which has completed (e.g., client marshaling error).

View File

@@ -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.
*
* This code is free software; you can redistribute it and/or modify it
@@ -1521,7 +1521,7 @@ public class SocketOrChannelConnectionImpl
// connection and give them the SystemException;
responseWaitingRoom.signalExceptionToAllWaiters(systemException);
} finally {
if (contactInfo != null) {
((OutboundConnectionCache)getConnectionCache()).remove(contactInfo);
} else if (acceptor != null) {
@@ -1542,7 +1542,6 @@ public class SocketOrChannelConnectionImpl
writeUnlock();
} finally {
if (orb.transportDebugFlag) {
dprint(".purgeCalls<-: "
+ minor_code + "/" + die + "/" + lockHeld

View File

@@ -42,16 +42,6 @@ import java.util.NoSuchElementException;
* instead, it uses the System.identityHashcode() method and pointer comparison.
* In addition, all synchronization has been removed.
*/
/**
* IdentityHashtable collision list.
*/
class IdentityHashtableEntry {
int hash;
Object key;
Object value;
IdentityHashtableEntry next;
}
public final class IdentityHashtable extends Dictionary {
/**
* The hash table data.

View File

@@ -0,0 +1,43 @@
/*
* Copyright (c) 1999, 2004, 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. Oracle designates this
* particular file as subject to the "Classpath" exception as provided
* by Oracle in the LICENSE file that accompanied this code.
*
* 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.
*/
/*
* Licensed Materials - Property of IBM
* RMI-IIOP v1.0
* Copyright IBM Corp. 1998 1999 All Rights Reserved
*
*/
package com.sun.corba.se.impl.util;
/**
* IdentityHashtable collision list.
*/
class IdentityHashtableEntry {
int hash;
Object key;
Object value;
IdentityHashtableEntry next;
}

View File

@@ -1631,7 +1631,7 @@ public class StubGenerator extends sun.rmi.rmic.iiop.Generator {
// Write data members...
p.pln();
p.pln("private " + getName(theType) + " target = null;");
p.pln("volatile private " + getName(theType) + " target = null;");
p.pln();
// Write the ids...
@@ -1695,6 +1695,10 @@ public class StubGenerator extends sun.rmi.rmic.iiop.Generator {
if (remoteMethods.length > 0) {
p.plnI("try {");
p.pln(getName(theType) + " target = this.target;");
p.plnI("if (target == null) {");
p.pln("throw new java.io.IOException();");
p.pOln("}");
p.plnI(idExtInputStream + " "+in+" = ");
p.pln("(" + idExtInputStream + ") "+_in+";");
p.pO();

View File

@@ -26,8 +26,8 @@
#
# Get clones of all nested repositories
sh ./make/scripts/hgforest.sh clone $*
sh ./common/bin/hgforest.sh clone "$@" || exit 1
# Update all existing repositories to the latest sources
sh ./make/scripts/hgforest.sh pull -u
sh ./common/bin/hgforest.sh pull -u

View File

@@ -259,3 +259,60 @@ e77b8e0ed1f84e3e268239e276c7ab64fa573baa jdk8-b43
9d5f20961bc5846fa8d098d534effafbbdae0a58 jdk8-b45
40e5a3f2907ed02b335c7caa8ecf068cc801380d hs24-b15
cf37a594c38db2ea926954154636f9f81da2e032 jdk8-b46
0c7bb1f4f9c8062b5c5bfa56b3bdca44839b4109 jdk8-b47
66b0450071c1534e014b131892cc86b63f1d009c hs24-b16
1e26f61bbb521642639f56fae11326f1932f5a7d jdk8-b48
bd54fe36b5e50f9ef1e30a5047b27fee5297e268 hs24-b17
e3619706a7253540a2d94e9e841acaab8ace7038 jdk8-b49
72e0362c3f0cfacbbac8af8a5b9d2e182f21c17b hs24-b18
58f237a9e83af6ded0d2e2c81d252cd47c0f4c45 jdk8-b50
3b3ad16429701b2eb6712851c2f7c5a726eb2cbe hs24-b19
663fc23da8d51c4c0552cbcb17ffc85f5869d4fd jdk8-b51
4c8f2a12e757e7a808aa85827573e09f75d7459f hs24-b20
6d0436885201db3f581523344a734793bb989549 jdk8-b52
54240c1b8e87758f28da2c6a569a926fd9e0910a jdk8-b53
9e3ae661284dc04185b029d85440fe7811f1ed07 hs24-b21
e8fb566b94667f88462164defa654203f0ab6820 jdk8-b54
09ea7e0752b306b8ae74713aeb4eb6263e1c6836 hs24-b22
af0c8a0808516317333dcf9af15567cdd52761ce jdk8-b55
6124ff4218296c91e4a72f1a76c064892d39d61b jdk8-b56
9b076bc3ab67d42d1d02144ef8dcd6006a7fc0d6 hs25-b01
d70102c4cb73158902acaa6016f47c7bc14e0d67 jdk8-b57
5f54277c67f755a377999bff904ab48aa63ddaf9 hs25-b02
6bb378c50828e9d76fb2653d1712c66ea8fc47db jdk8-b58
f2e12eb74117c917c0bb264694c02de4a6a15a10 hs25-b03
8a1a6b9b4f20fd2f6a12441d638e51f19a82db19 jdk8-b59
1cc7a2a11d00832e3d07f81f3744a6883422db7e hs25-b04
3cfd05b2219a29649741a52637696f06acf24a4e jdk8-b60
b261523fe66c40a02968f0aa7e73602491bb3386 hs25-b05
4547dc71db765276e027b0c2780b724bae0a07d3 jdk8-b61
d0337c31c8be7716369b4e7c3bd5f352983c6a06 hs25-b06
dccd40de8db1fa96f186e6179907818d75320440 jdk8-b62
dc16fe422c535ecd4e9f80fb814a1bb9704da6f5 hs25-b07
acabb5c282f59be7e3238920b2ea06b684ab68f7 jdk8-b63
8cb93eadfb6dcab88d91b8e2cd3e0e07d0ac4048 hs25-b08
5920f72e799c8133d1066c4a62fa1fafcb729966 jdk8-b64
b4ee7b773144a88af8b6b92e4384dea82cb948d8 hs25-b09
0f7290a03b24bd562583fa325d3566c21c51fb94 jdk8-b65
cfc5309f03b7bd6c1567618b63cf1fc74c0f2a8f hs25-b10
01684f7fee1b86222be69bc23841ec2a4416696c jdk8-b66
b61d9c88b759d1594b8af1655598e8fa00393672 hs25-b11
25bdce771bb3a7ae9825261a284d292cda700122 jdk8-b67
a35a72dd2e1255239d31f796f9f693e49b36bc9f hs25-b12
121aa71316af6cd877bf455e775fa3fdbcdd4b65 jdk8-b68
b6c9c0109a608eedbb6b868d260952990e3c91fe hs25-b13
cb8a4e04bc8c104de8a2f67463c7e31232bf8d68 jdk8-b69
990bbd393c239d95310ccc38094e57923bbf1d4a hs25-b14
e94068d4ff52849c8aa0786a53a59b63d1312a39 jdk8-b70
0847210f85480bf3848dc90bc2ab23c0a4791b55 jdk8-b71
d5cb5830f570d1304ea4b196dde672a291b55f29 jdk8-b72
1e129851479e4f5df439109fca2c7be1f1613522 hs25-b15
11619f33cd683c2f1d6ef72f1c6ff3dacf5a9f1c jdk8-b73
70c89bd6b895a10d25ca70e08093c09ff2005fda hs25-b16
1a3e54283c54aaa8b3437813e8507fbdc966e5b6 jdk8-b74
b4391649e91ea8d37f66317a03d6d2573a93d10d hs25-b17
6778d0b1659323a506ca47600ca29a9d9f8b383d jdk8-b75
20b605466ccb1b3725eb25314d9e8782199630c5 jdk8-b76
412d722168bc23f8e6d98995202728678561417f hs25-b18
cdb46031e7184d37301288f5719121a63c7054b5 jdk8-b77
9f19f4a7d48a4ebe7f616b6068971ea5f8b075fa hs25-b19

View File

@@ -0,0 +1,41 @@
<html>
<head>
<title>
C2 Replay
</title>
</head>
<body>
<h1>C2 compiler replay</h1>
<p>
The C2 compiler replay is a function to repeat the compiling process from a crashed java process in compiled method<br>
This function only exists in debug version of VM
</p>
<h2>Usage</h2>
<pre>
First, use SA to attach to the core file, if suceeded, do
clhsdb>dumpreplaydata <address> | -a | <thread_id> [> replay.txt]
create file replay.txt, address is address of Method, or nmethod(CodeBlob)
clhsdb>buildreplayjars [all | boot | app]
create files:
all:
app.jar, boot.jar
boot:
boot.jar
app:
app.jar
exit SA now.
Second, use the obtained replay text file, replay.txt and jar files, app.jar and boot.jar, using debug version of java
java -Xbootclasspath/p:boot.jar -cp app.jar -XX:ReplayDataFile=<datafile> -XX:+ReplayCompiles ....
This will replay the compiling process.
With ReplayCompiles, the replay will recompile all the methods in app.jar, and in boot.jar to emulate the process in java app.
notes:
1) Most time, we don't need the boot.jar which is the classes loaded from JDK. It will be only modified when an agent(JVMDI) is running and modifies the classes.
2) If encounter error as "<flag>" not found, that means the SA is using a VMStructs which is different from the one with corefile. In this case, SA has a utility tool vmstructsdump which is located at agent/src/os/<os>/proc/<os_platform>
Use this tool to dump VM type library:
vmstructsdump libjvm.so > <type_name>.db
set env SA_TYPEDB=<type_name>.db (refer different shell for set envs)

View File

@@ -37,12 +37,19 @@ Each CLHSDB command can have zero or more arguments and optionally end with outp
Available commands:
assert true | false <font color="red">turn on/off asserts in SA code</font>
attach pid | exec core <font color="red">attach SA to a process or core</font>
buildreplayjars [all | boot | app] <font color="red">build jars for replay, boot.jar for bootclasses, app.jar for application classes</font>
class name <font color="red">find a Java class from debuggee and print oop</font>
classes <font color="red">print all loaded Java classes with klassOop</font>
classes <font color="red">print all loaded Java classes with Klass*</font>
detach <font color="red">detach SA from current target</font>
dis address [ length ] <font color="red">disassemble (sparc/x86) specified number of instructions from given address</font>
dumpclass { address | name } [ directory ] <font color="red">dump .class file for given klassOop or class name</font>
dissemble address <font color="red">disassemble nmethod</font>
dumpcfg -a | id <font color="red">Dump the PhaseCFG for every compiler thread that has one live</font>
dumpclass { address | name } [ directory ] <font color="red">dump .class file for given Klass* or class name</font>
dumpcodecache <font color="red">dump codecache contents</font>
dumpheap [ file ] <font color="red">dump heap in hprof binary format</font>
dumpideal -a | id <font color="red">dump ideal graph like debug flag -XX:+PrintIdeal</font>
dumpilt -a | id <font color="red">dump inline tree for C2 compilation</font>
dumpreplaydata <address> | -a | <thread_id> [>replay.txt] <font color="red">dump replay data into a file</font>
echo [ true | false ] <font color="red">turn on/off command echo mode</font>
examine [ address/count ] | [ address,address] <font color="red">show contents of memory from given address</font>
field [ type [ name fieldtype isStatic offset address ] ] <font color="red">print info about a field of HotSpot type</font>
@@ -51,29 +58,35 @@ Available commands:
help [ command ] <font color="red">print help message for all commands or just given command</font>
history <font color="red">show command history. usual !command-number syntax works.</font>
inspect expression <font color="red">inspect a given oop</font>
jdis address <font color="red">show bytecode disassembly of a given methodOop</font>
intConstant [ name [ value ] ] <font color="red">print out hotspot integer constant(s)</font>
jdis address <font color="red">show bytecode disassembly of a given Method*</font>
jhisto <font color="red">show Java heap histogram</font>
jseval script <font color="red">evaluate a given string as JavaScript code</font>
jsload file <font color="red">load and evaluate a JavaScript file</font>
jstack [-v] <font color="red">show Java stack trace of all Java threads. -v is verbose mode</font>
livenmethods <font color="red">show all live nmethods</font>
longConstant [ name [ value ] ] <font color="red">print out hotspot long constant(s)s</font>
mem address [ length ] <font color="red">show contents of memory -- also shows closest ELF/COFF symbol if found</font>
pmap <font color="red">show Solaris pmap-like output</font>
print expression <font color="red">print given klassOop, methodOop or arbitrary address</font>
print expression <font color="red">print given Klass*, Method* or arbitrary address</font>
printas type expression <font color="red">print given address as given HotSpot type. eg. print JavaThread &lt;address&gt;</font>
printmdo -a | expression <font color="red">print method data oop</font>
printstatics [ type ] <font color="red">print static fields of given HotSpot type (or all types if none specified)</font>
pstack [-v] <font color="red">show mixed mode stack trace for all Java, non-Java threads. -v is verbose mode</font>
quit <font color="red">quit CLHSDB tool</font>
reattach <font color="red">detach and re-attach SA to current target</font>
revptrs <font color="red">find liveness of oops</font>
scanoops start end [ type ] <font color="red">scan a Oop from given start to end address</font>
search [ heap | codecache | threads ] value <font color="red">search a value in heap or codecache or threads</font>
source filename <font color="red">load and execute CLHSDB commands from given file</font>
symbol name <font color="red">show address of a given ELF/COFF symbol</font>
sysprops <font color="red">show all Java System properties</font>
thread id <font color="red">show thread of id</font>
threads <font color="red">show all Java threads</font>
tokenize ...
type [ type [ name super isOop isInteger isUnsigned size ] ] <font color="red">show info. on HotSpot type</font>
universe <font color="red">print gc universe</font>
vmstructsdump <font color="red">dump hotspot type library in text</font>
verbose true | false <font color="red">turn on/off verbose mode</font>
versioncheck [ true | false ] <font color="red">turn on/off debuggee VM version check</font>
whatis address <font color="red">print info about any arbitrary address</font>
@@ -114,5 +127,11 @@ hsdb&gt; jsload test.js
</code>
</pre>
<h3>C2 Compilation Replay</h3>
<p>
When a java process crashes in compiled method, usually a core file is saved.
The C2 replay function can reproduce the compiling process in the core.
<a href="c2replay.html">c2replay.html</a>
</body>
</html>

View File

@@ -220,6 +220,12 @@ These scripts are used to run SA remotely.
</tr>
</table>
<h3>C2 Compilation Replay</h3>
<p>
When a java process crashes in compiled method, usually a core file is saved.
The C2 replay function can reproduce the compiling process in the core.
<a href="c2replay.html">c2replay.html</a>
<h3>Debugging transported core dumps</h3>
<p>
When a core dump is moved from the machine where it was produced to a

View File

@@ -1,254 +0,0 @@
/*
* Copyright (c) 2003, 2004, 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.
*
*/
import java.io.*;
import java.util.*;
/**
<p> This class finds transitive closure of dependencies from a given
root set of classes. If your project has lots of .class files and you
want to ship only those .class files which are used (transitively)
from a root set of classes, then you can use this utility. </p> <p>
How does it work?</p>
<p> We walk through all constant pool entries of a given class and
find all modified UTF-8 entries. Anything that looks like a class name is
considered as a class and we search for that class in the given
classpath. If we find a .class of that name, then we add that class to
list.</p>
<p> We could have used CONSTANT_ClassInfo type constants only. But
that will miss classes used through Class.forName or xyz.class
construct. But, if you refer to a class name in some other string we
would include it as dependency :(. But this is quite unlikely
anyway. To look for exact Class.forName argument(s) would involve
bytecode analysis. Also, we handle only simple reflection. If you
accept name of a class from externally (for eg properties file or
command line args for example, this utility will not be able to find
that dependency. In such cases, include those classes in the root set.
</p>
*/
public class ClosureFinder {
private Collection roots; // root class names Collection<String>
private Map visitedClasses; // set of all dependencies as a Map
private String classPath; // classpath to look for .class files
private String[] pathComponents; // classpath components
private static final boolean isWindows = File.separatorChar != '/';
public ClosureFinder(Collection roots, String classPath) {
this.roots = roots;
this.classPath = classPath;
parseClassPath();
}
// parse classPath into pathComponents array
private void parseClassPath() {
List paths = new ArrayList();
StringTokenizer st = new StringTokenizer(classPath, File.pathSeparator);
while (st.hasMoreTokens())
paths.add(st.nextToken());
Object[] arr = paths.toArray();
pathComponents = new String[arr.length];
System.arraycopy(arr, 0, pathComponents, 0, arr.length);
}
// if output is aleady not computed, compute it now
// result is a map from class file name to base path where the .class was found
public Map find() {
if (visitedClasses == null) {
visitedClasses = new HashMap();
computeClosure();
}
return visitedClasses;
}
// compute closure for all given root classes
private void computeClosure() {
for (Iterator rootsItr = roots.iterator(); rootsItr.hasNext();) {
String name = (String) rootsItr.next();
name = name.substring(0, name.indexOf(".class"));
computeClosure(name);
}
}
// looks up for .class in pathComponents and returns
// base path if found, else returns null
private String lookupClassFile(String classNameAsPath) {
for (int i = 0; i < pathComponents.length; i++) {
File f = new File(pathComponents[i] + File.separator +
classNameAsPath + ".class");
if (f.exists()) {
if (isWindows) {
String name = f.getName();
// Windows reports special devices AUX,NUL,CON as files
// under any directory. It does not care about file extention :-(
if (name.compareToIgnoreCase("AUX.class") == 0 ||
name.compareToIgnoreCase("NUL.class") == 0 ||
name.compareToIgnoreCase("CON.class") == 0) {
return null;
}
}
return pathComponents[i];
}
}
return null;
}
// from JVM spec. 2'nd edition section 4.4
private static final int CONSTANT_Class = 7;
private static final int CONSTANT_FieldRef = 9;
private static final int CONSTANT_MethodRef = 10;
private static final int CONSTANT_InterfaceMethodRef = 11;
private static final int CONSTANT_String = 8;
private static final int CONSTANT_Integer = 3;
private static final int CONSTANT_Float = 4;
private static final int CONSTANT_Long = 5;
private static final int CONSTANT_Double = 6;
private static final int CONSTANT_NameAndType = 12;
private static final int CONSTANT_Utf8 = 1;
// whether a given string may be a class name?
private boolean mayBeClassName(String internalClassName) {
int len = internalClassName.length();
for (int s = 0; s < len; s++) {
char c = internalClassName.charAt(s);
if (!Character.isJavaIdentifierPart(c) && c != '/')
return false;
}
return true;
}
// compute closure for a given class
private void computeClosure(String className) {
if (visitedClasses.get(className) != null) return;
String basePath = lookupClassFile(className);
if (basePath != null) {
visitedClasses.put(className, basePath);
try {
File classFile = new File(basePath + File.separator + className + ".class");
FileInputStream fis = new FileInputStream(classFile);
DataInputStream dis = new DataInputStream(fis);
// look for .class signature
if (dis.readInt() != 0xcafebabe) {
System.err.println(classFile.getAbsolutePath() + " is not a valid .class file");
return;
}
// ignore major and minor version numbers
dis.readShort();
dis.readShort();
// read number of constant pool constants
int numConsts = (int) dis.readShort();
String[] strings = new String[numConsts];
// zero'th entry is unused
for (int cpIndex = 1; cpIndex < numConsts; cpIndex++) {
int constType = (int) dis.readByte();
switch (constType) {
case CONSTANT_Class:
case CONSTANT_String:
dis.readShort(); // string name index;
break;
case CONSTANT_FieldRef:
case CONSTANT_MethodRef:
case CONSTANT_InterfaceMethodRef:
case CONSTANT_NameAndType:
case CONSTANT_Integer:
case CONSTANT_Float:
// all these are 4 byte constants
dis.readInt();
break;
case CONSTANT_Long:
case CONSTANT_Double:
// 8 byte constants
dis.readLong();
// occupies 2 cp entries
cpIndex++;
break;
case CONSTANT_Utf8: {
strings[cpIndex] = dis.readUTF();
break;
}
default:
System.err.println("invalid constant pool entry");
return;
}
}
// now walk thru the string constants and look for class names
for (int s = 0; s < numConsts; s++) {
if (strings[s] != null && mayBeClassName(strings[s]))
computeClosure(strings[s].replace('/', File.separatorChar));
}
} catch (IOException exp) {
// ignore for now
}
}
}
// a sample main that accepts roots classes in a file and classpath as args
public static void main(String[] args) {
if (args.length != 2) {
System.err.println("Usage: ClosureFinder <root class file> <class path>");
System.exit(1);
}
List roots = new ArrayList();
try {
FileInputStream fis = new FileInputStream(args[0]);
DataInputStream dis = new DataInputStream(fis);
String line = null;
while ((line = dis.readLine()) != null) {
if (isWindows) {
line = line.replace('/', File.separatorChar);
}
roots.add(line);
}
} catch (IOException exp) {
System.err.println(exp.getMessage());
System.exit(2);
}
ClosureFinder cf = new ClosureFinder(roots, args[1]);
Map out = cf.find();
Iterator res = out.keySet().iterator();
for(; res.hasNext(); ) {
String className = (String) res.next();
System.out.println(className + ".class");
}
}
}

View File

@@ -1,5 +1,5 @@
#
# Copyright (c) 2000, 2011, Oracle and/or its affiliates. All rights reserved.
# Copyright (c) 2000, 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
@@ -41,10 +41,7 @@ endif
PKGLIST = \
sun.jvm.hotspot \
sun.jvm.hotspot.asm \
sun.jvm.hotspot.asm.amd64 \
sun.jvm.hotspot.asm.ia64 \
sun.jvm.hotspot.asm.sparc \
sun.jvm.hotspot.asm.x86 \
sun.jvm.hotspot.bugspot \
sun.jvm.hotspot.bugspot.tree \
sun.jvm.hotspot.c1 \
@@ -61,10 +58,8 @@ sun.jvm.hotspot.debugger.cdbg.basic \
sun.jvm.hotspot.debugger.cdbg.basic.amd64 \
sun.jvm.hotspot.debugger.cdbg.basic.x86 \
sun.jvm.hotspot.debugger.dummy \
sun.jvm.hotspot.debugger.ia64 \
sun.jvm.hotspot.debugger.linux \
sun.jvm.hotspot.debugger.linux.amd64 \
sun.jvm.hotspot.debugger.linux.ia64 \
sun.jvm.hotspot.debugger.linux.x86 \
sun.jvm.hotspot.debugger.posix \
sun.jvm.hotspot.debugger.posix.elf \
@@ -80,7 +75,6 @@ sun.jvm.hotspot.debugger.sparc \
sun.jvm.hotspot.debugger.win32.coff \
sun.jvm.hotspot.debugger.windbg \
sun.jvm.hotspot.debugger.windbg.amd64 \
sun.jvm.hotspot.debugger.windbg.ia64 \
sun.jvm.hotspot.debugger.windbg.x86 \
sun.jvm.hotspot.debugger.x86 \
sun.jvm.hotspot.gc_implementation \
@@ -100,10 +94,8 @@ sun.jvm.hotspot.runtime.amd64 \
sun.jvm.hotspot.runtime.bsd \
sun.jvm.hotspot.runtime.bsd_amd64 \
sun.jvm.hotspot.runtime.bsd_x86 \
sun.jvm.hotspot.runtime.ia64 \
sun.jvm.hotspot.runtime.linux \
sun.jvm.hotspot.runtime.linux_amd64 \
sun.jvm.hotspot.runtime.linux_ia64 \
sun.jvm.hotspot.runtime.linux_sparc \
sun.jvm.hotspot.runtime.linux_x86 \
sun.jvm.hotspot.runtime.posix \
@@ -112,7 +104,6 @@ sun.jvm.hotspot.runtime.solaris_sparc \
sun.jvm.hotspot.runtime.solaris_x86 \
sun.jvm.hotspot.runtime.sparc \
sun.jvm.hotspot.runtime.win32_amd64 \
sun.jvm.hotspot.runtime.win32_ia64 \
sun.jvm.hotspot.runtime.win32_x86 \
sun.jvm.hotspot.runtime.x86 \
sun.jvm.hotspot.tools \
@@ -138,10 +129,7 @@ com.sun.java.swing.ui
FILELIST = \
sun/jvm/hotspot/*.java \
sun/jvm/hotspot/asm/*.java \
sun/jvm/hotspot/asm/amd64/*.java \
sun/jvm/hotspot/asm/ia64/*.java \
sun/jvm/hotspot/asm/sparc/*.java \
sun/jvm/hotspot/asm/x86/*.java \
sun/jvm/hotspot/bugspot/*.java \
sun/jvm/hotspot/bugspot/tree/*.java \
sun/jvm/hotspot/c1/*.java \
@@ -158,7 +146,6 @@ sun/jvm/hotspot/debugger/cdbg/basic/*.java \
sun/jvm/hotspot/debugger/cdbg/basic/amd64/*.java \
sun/jvm/hotspot/debugger/cdbg/basic/x86/*.java \
sun/jvm/hotspot/debugger/dummy/*.java \
sun/jvm/hotspot/debugger/ia64/*.java \
sun/jvm/hotspot/debugger/linux/*.java \
sun/jvm/hotspot/debugger/linux/x86/*.java \
sun/jvm/hotspot/debugger/posix/*.java \
@@ -174,7 +161,6 @@ sun/jvm/hotspot/debugger/remote/x86/*.java \
sun/jvm/hotspot/debugger/sparc/*.java \
sun/jvm/hotspot/debugger/win32/coff/*.java \
sun/jvm/hotspot/debugger/windbg/*.java \
sun/jvm/hotspot/debugger/windbg/ia64/*.java \
sun/jvm/hotspot/debugger/windbg/x86/*.java \
sun/jvm/hotspot/debugger/x86/*.java \
sun/jvm/hotspot/gc_implementation/g1/*.java \
@@ -192,10 +178,8 @@ sun/jvm/hotspot/runtime/amd64/*.java \
sun/jvm/hotspot/runtime/bsd/*.java \
sun/jvm/hotspot/runtime/bsd_amd64/*.java \
sun/jvm/hotspot/runtime/bsd_x86/*.java \
sun/jvm/hotspot/runtime/ia64/*.java \
sun/jvm/hotspot/runtime/linux/*.java \
sun/jvm/hotspot/runtime/linux_amd64/*.java \
sun/jvm/hotspot/runtime/linux_ia64/*.java \
sun/jvm/hotspot/runtime/linux_sparc/*.java \
sun/jvm/hotspot/runtime/linux_x86/*.java \
sun/jvm/hotspot/runtime/posix/*.java \
@@ -204,7 +188,6 @@ sun/jvm/hotspot/runtime/solaris_sparc/*.java \
sun/jvm/hotspot/runtime/solaris_x86/*.java \
sun/jvm/hotspot/runtime/sparc/*.java \
sun/jvm/hotspot/runtime/win32_amd64/*.java \
sun/jvm/hotspot/runtime/win32_ia64/*.java \
sun/jvm/hotspot/runtime/win32_x86/*.java \
sun/jvm/hotspot/runtime/x86/*.java \
sun/jvm/hotspot/tools/*.java \
@@ -264,6 +247,7 @@ SA_BUILD_VERSION_PROP = "sun.jvm.hotspot.runtime.VM.saBuildVersion=$(SA_BUILD_VE
SA_PROPERTIES = $(OUTPUT_DIR)/sa.properties
JAVAC = $(JDK_HOME)/bin/javac
JAVA = $(JDK_HOME)/bin/java
JAVADOC = $(JDK_HOME)/bin/javadoc
RMIC = $(JDK_HOME)/bin/rmic
@@ -304,7 +288,7 @@ filelist: $(ALLFILES)
.PHONY: natives
natives:
cd ../src/os/`java -classpath $(OUTPUT_DIR) sun.jvm.hotspot.utilities.PlatformInfo`; $(MAKE) all
cd ../src/os/`$(JAVA) -classpath $(OUTPUT_DIR) sun.jvm.hotspot.utilities.PlatformInfo`; $(MAKE) all
.PHONY: sa-jdi.jar
sa-jdi.jar:
@@ -329,5 +313,5 @@ sa.jar:
clean::
rm -rf filelist
cd ../src/os/`java -classpath $(OUTPUT_DIR) sun.jvm.hotspot.utilities.PlatformInfo`; $(MAKE) clean
cd ../src/os/`$(JAVA) -classpath $(OUTPUT_DIR) sun.jvm.hotspot.utilities.PlatformInfo`; $(MAKE) clean
rm -rf $(BUILD_DIR)/*

View File

@@ -1,6 +1,6 @@
#!/bin/sh
#
# Copyright (c) 2003, 2009, 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.
#
# This code is free software; you can redistribute it and/or modify it
@@ -26,7 +26,7 @@
# This file sets common environment variables for all SA scripts
OS=`uname`
STARTDIR=`dirname $0`
STARTDIR=`(cd \`dirname $0 \`; pwd)`
ARCH=`uname -m`
if [ "x$SA_JAVA" = "x" ]; then

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