Compare commits

...

1245 Commits

Author SHA1 Message Date
J. Duke
880e094125 Merge 2017-07-05 18:11:33 +02:00
J. Duke
1ea6601fc6 Merge 2017-07-05 18:11:30 +02:00
J. Duke
82de8ca546 Merge 2017-07-05 18:11:27 +02:00
J. Duke
1816508a22 Merge 2017-07-05 18:11:23 +02:00
J. Duke
d2389af324 Merge 2017-07-05 18:11:20 +02:00
J. Duke
ff8542fff0 Merge 2017-07-05 18:11:18 +02:00
J. Duke
5d0ace24f4 Merge 2017-07-05 18:11:06 +02:00
J. Duke
7dabba40ee Added tag jdk8-b39 for changeset 35a539727877 2017-07-05 18:10:55 +02:00
J. Duke
2de299b086 Merge 2017-07-05 18:10:55 +02:00
J. Duke
2b9085a585 Merge 2017-07-05 18:10:53 +02:00
J. Duke
4dfe47f624 Merge 2017-07-05 18:10:50 +02:00
J. Duke
b7e6e0d9a7 Merge 2017-07-05 18:10:48 +02:00
J. Duke
7276daddd4 Merge 2017-07-05 18:10:45 +02:00
J. Duke
1e6dfd83d2 Merge 2017-07-05 18:10:42 +02:00
J. Duke
f184d1b548 Merge 2017-07-05 18:10:39 +02:00
J. Duke
614cc9b497 Added tag jdk8-b38 for changeset 4cc5610a6dd6 2017-07-05 18:10:28 +02:00
J. Duke
3de2a40e44 Merge 2017-07-05 18:10:27 +02:00
J. Duke
e928258f9b Merge 2017-07-05 18:10:25 +02:00
J. Duke
a49d72bf01 Merge 2017-07-05 18:10:22 +02:00
J. Duke
8c03b67bb2 Merge 2017-07-05 18:10:18 +02:00
J. Duke
05c777aa20 Merge 2017-07-05 18:10:15 +02:00
J. Duke
b3e44182da Merge 2017-07-05 18:10:11 +02:00
J. Duke
c9ae237ecb Merge 2017-07-05 18:09:57 +02:00
J. Duke
e97f581052 Added tag jdk8-b37 for changeset b3a91113026c 2017-07-05 18:09:43 +02:00
J. Duke
e3f1a15d93 Merge 2017-07-05 18:09:43 +02:00
J. Duke
c3d9838efd Merge 2017-07-05 18:09:40 +02:00
J. Duke
b25a3c46ea Merge 2017-07-05 18:09:38 +02:00
J. Duke
077bda2dc8 Merge 2017-07-05 18:09:35 +02:00
J. Duke
e4e1dd33ec Merge 2017-07-05 18:09:33 +02:00
J. Duke
56b6c34c1f Merge 2017-07-05 18:09:30 +02:00
J. Duke
c5babb5315 Merge 2017-07-05 18:09:27 +02:00
J. Duke
914f8091eb Added tag jdk8-b36 for changeset 98ce9816ae08 2017-07-05 18:09:18 +02:00
J. Duke
4840199698 Merge 2017-07-05 18:09:18 +02:00
J. Duke
41d3464396 Merge 2017-07-05 18:09:15 +02:00
J. Duke
ac6583b7b7 Merge 2017-07-05 18:09:07 +02:00
J. Duke
3b87c73fa1 Merge 2017-07-05 18:09:02 +02:00
J. Duke
6b3281d3e6 Merge 2017-07-05 18:08:50 +02:00
J. Duke
7e7b1dc28b Merge 2017-07-05 18:08:47 +02:00
J. Duke
2fe5f25d88 Merge 2017-07-05 18:08:33 +02:00
J. Duke
cdc63696c6 Added tag jdk8-b35 for changeset f151d5833912 2017-07-05 18:08:21 +02:00
J. Duke
2e7611228e Merge 2017-07-05 18:08:21 +02:00
J. Duke
7ca2d79ebc Merge 2017-07-05 18:08:18 +02:00
J. Duke
182acce83c Merge 2017-07-05 18:08:16 +02:00
J. Duke
e9d867ac0a Merge 2017-07-05 18:08:13 +02:00
J. Duke
d83efbefba Merge 2017-07-05 18:08:11 +02:00
J. Duke
b78cbd84ff Merge 2017-07-05 18:08:09 +02:00
J. Duke
44bf487aad Merge 2017-07-05 18:08:06 +02:00
J. Duke
d0b48aded1 Added tag jdk8-b34 for changeset 0ae89825c75c 2017-07-05 18:07:58 +02:00
J. Duke
d2f0792c39 Merge 2017-07-05 18:07:57 +02:00
J. Duke
7e3678dc36 Merge 2017-07-05 18:07:54 +02:00
J. Duke
1e2378a69c Merge 2017-07-05 18:07:49 +02:00
J. Duke
de809c8933 Merge 2017-07-05 18:07:45 +02:00
J. Duke
a8f017ad48 Merge 2017-07-05 18:07:41 +02:00
J. Duke
932712ecff Merge 2017-07-05 18:07:38 +02:00
J. Duke
858d241255 Merge 2017-07-05 18:07:26 +02:00
J. Duke
e4dc96218e Added tag jdk8-b33 for changeset a6e6d42203e6 2017-07-05 18:07:12 +02:00
J. Duke
a1f493478a Merge 2017-07-05 18:07:11 +02:00
J. Duke
10dbe83b2a Merge 2017-07-05 18:07:09 +02:00
J. Duke
9ae7921b89 Merge 2017-07-05 18:07:06 +02:00
J. Duke
dfee1f885f Merge 2017-07-05 18:07:04 +02:00
J. Duke
a9334fd7af Merge 2017-07-05 18:07:02 +02:00
J. Duke
459942acca Merge 2017-07-05 18:06:59 +02:00
J. Duke
0d31106b56 Merge 2017-07-05 18:06:57 +02:00
J. Duke
7cd98c80f5 Added tag jdk8-b32 for changeset 2c5208ccb863 2017-07-05 18:06:45 +02:00
J. Duke
94ed22086f Merge 2017-07-05 18:06:45 +02:00
J. Duke
0635a89ca5 Merge 2017-07-05 18:06:42 +02:00
J. Duke
b5107ed1b5 Merge 2017-07-05 18:06:38 +02:00
J. Duke
21f7fabe1f Merge 2017-07-05 18:06:36 +02:00
J. Duke
39803c9fe7 Merge 2017-07-05 18:06:33 +02:00
J. Duke
9e33e4f110 Merge 2017-07-05 18:06:30 +02:00
J. Duke
8838e7396e Merge 2017-07-05 18:06:21 +02:00
J. Duke
8a3342a6f0 Added tag jdk8-b31 for changeset bac81e9f7d57 2017-07-05 18:06:10 +02:00
J. Duke
ed6697aa20 Merge 2017-07-05 18:06:09 +02:00
J. Duke
bababbe74b Merge 2017-07-05 18:06:06 +02:00
J. Duke
c24c4b5f71 Merge 2017-07-05 18:06:04 +02:00
J. Duke
fd3d95e5f5 Merge 2017-07-05 18:06:01 +02:00
J. Duke
99b0a598c8 Merge 2017-07-05 18:05:59 +02:00
J. Duke
578b7d9671 Merge 2017-07-05 18:05:56 +02:00
J. Duke
c6204fddc8 Merge 2017-07-05 18:05:46 +02:00
J. Duke
c032e73d2d Added tag jdk8-b30 for changeset 23da7804aca0 2017-07-05 18:05:32 +02:00
J. Duke
61bc4ca404 Merge 2017-07-05 18:05:32 +02:00
J. Duke
8e64d3b166 Merge 2017-07-05 18:05:29 +02:00
J. Duke
3559695d9d Merge 2017-07-05 18:05:23 +02:00
J. Duke
07c15d0cad Merge 2017-07-05 18:05:17 +02:00
J. Duke
1933fdced6 Merge 2017-07-05 18:05:13 +02:00
J. Duke
75eddf94d1 Merge 2017-07-05 18:05:09 +02:00
J. Duke
bc6de0086a Merge 2017-07-05 18:04:57 +02:00
J. Duke
e989f7c362 Added tag jdk8-b29 for changeset e070119aa56e 2017-07-05 18:04:46 +02:00
J. Duke
651770b5df Merge 2017-07-05 18:04:46 +02:00
J. Duke
cb0a4b76f5 Merge 2017-07-05 18:04:42 +02:00
J. Duke
e7ceea1e53 Merge 2017-07-05 18:04:37 +02:00
J. Duke
2a504c4c16 Merge 2017-07-05 18:04:27 +02:00
J. Duke
e1d1a88f95 Merge 2017-07-05 18:04:20 +02:00
J. Duke
60349d25cd Merge 2017-07-05 18:04:18 +02:00
J. Duke
dfc4b7f412 Merge 2017-07-05 18:04:10 +02:00
J. Duke
8e4345a87e Added tag jdk8-b28 for changeset 16ba58282d11 2017-07-05 18:03:57 +02:00
J. Duke
abf322bf84 Merge 2017-07-05 18:03:56 +02:00
J. Duke
0c48f0d65b Merge 2017-07-05 18:03:54 +02:00
J. Duke
3e199d591f Merge 2017-07-05 18:03:50 +02:00
J. Duke
02991139fb Merge 2017-07-05 18:03:46 +02:00
J. Duke
f3b8781442 Merge 2017-07-05 18:03:43 +02:00
J. Duke
8feafa20cf Merge 2017-07-05 18:03:39 +02:00
J. Duke
abc61ba12d Merge 2017-07-05 18:03:34 +02:00
J. Duke
111563dc52 Added tag jdk8-b27 for changeset c51754cddc03 2017-07-05 18:03:21 +02:00
J. Duke
2b7ba88d55 Merge 2017-07-05 18:03:20 +02:00
J. Duke
7460f5d8f2 Merge 2017-07-05 18:03:17 +02:00
J. Duke
2fd7bebdb7 Merge 2017-07-05 18:03:12 +02:00
J. Duke
4f54772a87 Merge 2017-07-05 18:03:08 +02:00
J. Duke
f6211bc171 Merge 2017-07-05 18:03:04 +02:00
J. Duke
2bfd92234d Merge 2017-07-05 18:03:01 +02:00
J. Duke
c38cb52efd Merge 2017-07-05 18:02:51 +02:00
J. Duke
96b24787fb Added tag jdk8-b26 for changeset 6c805d8ed4e5 2017-07-05 18:02:34 +02:00
J. Duke
6f539c5cf9 Merge 2017-07-05 18:02:34 +02:00
J. Duke
f81d1132c9 Merge 2017-07-05 18:02:31 +02:00
J. Duke
beb9aa52b3 Merge 2017-07-05 18:02:28 +02:00
J. Duke
e6a321c094 Merge 2017-07-05 18:02:25 +02:00
J. Duke
4ebc538931 Merge 2017-07-05 18:02:22 +02:00
J. Duke
3d033b4e18 Merge 2017-07-05 18:02:19 +02:00
J. Duke
5a5a67d337 Merge 2017-07-05 18:02:16 +02:00
J. Duke
59653c4b36 Added tag jdk8-b25 for changeset 0071a6d64113 2017-07-05 18:02:06 +02:00
J. Duke
69efabad3d Merge 2017-07-05 18:02:06 +02:00
J. Duke
01f717df41 Merge 2017-07-05 18:02:03 +02:00
J. Duke
5803a72162 Merge 2017-07-05 18:01:59 +02:00
J. Duke
6b57ff42fd Merge 2017-07-05 18:01:55 +02:00
J. Duke
448b1098db Merge 2017-07-05 18:01:52 +02:00
J. Duke
0b3b3b9ed6 Merge 2017-07-05 18:01:49 +02:00
J. Duke
c98aa66173 Merge 2017-07-05 18:01:38 +02:00
J. Duke
afcf500d46 Added tag jdk8-b24 for changeset 7d3720d8c595 2017-07-05 18:01:24 +02:00
J. Duke
6e913f4649 Merge 2017-07-05 18:01:24 +02:00
J. Duke
190aa531e4 Merge 2017-07-05 18:01:20 +02:00
J. Duke
9b31b837e2 Merge 2017-07-05 18:01:17 +02:00
J. Duke
199810bcd9 Merge 2017-07-05 18:01:14 +02:00
J. Duke
df63d80a19 Merge 2017-07-05 18:01:11 +02:00
J. Duke
59a52a797c Merge 2017-07-05 18:01:09 +02:00
J. Duke
1ef600adbd Merge 2017-07-05 18:01:07 +02:00
J. Duke
1cbd6b266b Added tag jdk8-b23 for changeset 498124337041 2017-07-05 18:00:53 +02:00
J. Duke
f48f666a63 Merge 2017-07-05 18:00:52 +02:00
J. Duke
a6957aa760 Merge 2017-07-05 18:00:49 +02:00
J. Duke
20fa9b2cc4 Merge 2017-07-05 18:00:45 +02:00
J. Duke
f973f48305 Merge 2017-07-05 18:00:42 +02:00
J. Duke
42525fd863 Merge 2017-07-05 18:00:38 +02:00
J. Duke
f48b1f2e8f Merge 2017-07-05 18:00:35 +02:00
J. Duke
aa612222bd Merge 2017-07-05 18:00:25 +02:00
J. Duke
44e95b7411 Added tag jdk8-b22 for changeset e8f03541af27 2017-07-05 18:00:12 +02:00
Lana Steuck
08da945e68 Merge 2012-05-21 11:44:49 -07:00
Lana Steuck
016976afd1 Merge 2012-05-21 11:44:01 -07:00
Lana Steuck
8b00bb1651 Merge 2012-05-21 11:41:33 -07:00
Anton Tarasov
33648efb4c 7170427: setGlobalCurrentFocusCycleRoot unexpectedly throws SecurityException
Reviewed-by: art
2012-05-22 01:12:16 +04:00
Lana Steuck
cb4100b820 Merge 2012-05-21 11:20:04 -07:00
Staffan Larsen
f88f95d575 7167157: jcmd command file parsing does not respect the "stop" command
Reviewed-by: alanb, dsamersoff, nloodin
2012-05-21 19:28:41 +02:00
Kumar Srinivasan
ae57b6a361 7170087: tools/launcher/Arrghs.java test has wrong bugID for 7151434
Reviewed-by: ohair
2012-05-21 09:40:32 -07:00
Pavel Porvatov
1d1ed3ddb3 7168144: No appropriate CCC request for changes introduced by 7154030
Reviewed-by: alexsch
2012-05-21 18:55:36 +04:00
Andrew Brygin
ecf06b3459 7154088: [macosx] Regression: Component.createImage do not inherits component attributes
Reviewed-by: art, kizune
2012-05-21 14:53:51 +04:00
Andrew Brygin
9ea4ab4133 7124400: [macosx] CGraphicsDevice.getConfigurations() returns reference to member (does not copy configs)
Reviewed-by: anthony, kizune
2012-05-21 14:04:46 +04:00
Alan Bateman
66b51d0b9f 7170203: TEST_BUG: test/java/nio/MappedByteBuffer/Truncate.java failing intermittently
Reviewed-by: chegar
2012-05-21 10:41:08 +01:00
Weijun Wang
d11c407c11 7170308: timing error in the krb5 test SSL.java
Reviewed-by: xuelei
2012-05-21 15:40:30 +08:00
Alejandro Murillo
f1828f22b9 Added tag hs24-b11 for changeset 100019c94f7c 2012-05-18 14:50:18 -07:00
Alejandro Murillo
dec70be8bf Merge 2012-05-18 14:50:17 -07:00
Valerie Peng
2321d8e2b6 7169496: Problem with the SHA-224 support for SunMSCAPI provider
Remove SHA224withRSA signature from SunMSCAPI provider due to lack of windows support.

Reviewed-by: vinnie
2012-05-18 12:29:33 -07:00
John Coomes
2c4e9e718c Merge 2012-05-18 10:27:13 -07:00
Dmitry Cherepanov
7f4d14efbe 7156191: [macosx] Can't type into applet demos in Pivot
Reviewed-by: art
2012-05-18 19:39:24 +04:00
Xue-Lei Andrew Fan
955e0697ba 7145960: sun/security/mscapi/ShortRSAKey1024.sh failing on windows
Reviewed-by: vinnie, wetmore
2012-05-17 21:59:26 -07:00
Rob McKenna
890b6d7ba8 7168110: Misleading jstack error message
Reviewed-by: alanb, dsamersoff
2012-05-17 22:42:32 +01:00
Anton Tarasov
4a46c4fa60 7145827: [macosx] JCK failure in b11: FocusableWindow3
Forward posrt from 7u4

Reviewed-by: art
2012-05-17 22:21:27 +04:00
Anton Tarasov
09df642ee8 7145768: [macosx] Regression: failure in b11 of ModalDialogInFocusEventTest
Forward port from 7u4

Reviewed-by: art
2012-05-17 22:10:40 +04:00
Anton Tarasov
781549f47d 7125044: [macosx] Test failure because Component.transferFocus() works differently in applet and application
Forward port from 7u4

Reviewed-by: art
2012-05-17 21:48:57 +04:00
Anton Tarasov
50220cd3d1 7154072: [macosx] swallowing key events
Forward posrt from 7u4

Reviewed-by: anthony
2012-05-17 21:31:55 +04:00
Anton Tarasov
e49b6e7624 7142565: [macosx] Many special keys processed twice in text fields
Forward port from 7u4

Reviewed-by: anthony
2012-05-17 21:27:19 +04:00
Vladimir Kozlov
72c30e6568 Merge 2012-05-17 09:50:59 -07:00
Daniel D. Daugherty
eb7d35d85e 7168520: No jdk8 TL Nightly linux builds due to broken link in b39-2012-05-13_231
ZIP libjsig.debuginfo links into libjsig.diz files since aurora doesn't like dangling symlinks

Reviewed-by: katleman
2012-05-17 06:26:05 -07:00
David Katleman
4b002876d3 Added tag jdk8-b39 for changeset 679d89b6a21a 2012-05-17 06:20:51 -07:00
David Katleman
df34620afa Added tag jdk8-b39 for changeset 2052d5a6991c 2012-05-17 06:20:44 -07:00
David Katleman
66e90b1610 Added tag jdk8-b39 for changeset b5e60661b9a2 2012-05-17 06:20:38 -07:00
David Katleman
b57dfbffa8 Added tag jdk8-b39 for changeset a70d185bcc77 2012-05-17 06:20:35 -07:00
David Katleman
6412273c94 Added tag jdk8-b39 for changeset 402efa0d91d4 2012-05-17 06:20:23 -07:00
David Katleman
c285bb9bd6 Added tag jdk8-b39 for changeset 999611eec364 2012-05-17 06:20:16 -07:00
David Katleman
00a5b03f1b Added tag jdk8-b39 for changeset 8c8235b1fcb6 2012-05-17 06:20:10 -07:00
Pavel Porvatov
c0f2f2b464 7166322: closed/javax/swing/text/html/HTMLEditorKit/4242228/bug4242228.java failed since 1.8.0b36
Reviewed-by: alexsch
2012-05-17 15:41:09 +04:00
Alexander Scherbatiy
d06f47f95c 7148281: [macosx] JTabbedPane tabs with HTML text do not render correctly
Reviewed-by: kizune
2012-05-17 14:27:11 +04:00
David Katleman
ae3977cd76 Merge 2012-05-16 22:07:29 -07:00
David Katleman
74e0cc2fe5 Merge 2012-05-16 22:06:41 -07:00
Joseph Provino
df5c45b99f Merge 2012-05-16 13:33:30 -04:00
Alexander Scherbatiy
f7483afe41 7158928: [macosx] NLS: Please change the mnemonic assignment system
Reviewed-by: rupashka, serb
2012-05-16 18:11:48 +04:00
Alexander Scherbatiy
5b3babf9c4 7169226: NLS: Please change the mnemonic assignment system for windows and motif properties
Reviewed-by: rupashka
2012-05-16 16:27:12 +04:00
Alan Bateman
2a928a555d 7168505: (bf) MappedByteBuffer.load does not load buffer's content into memory
Reviewed-by: mduigou, forax
2012-05-16 12:43:27 +01:00
Anthony Petrov
c4b4c6a9a5 7168851: [macosx] Netbeans crashes in CImage.nativeCreateNSImageFromArray
Eliminate unnecessary -release call

Reviewed-by: dcherepanov
2012-05-16 14:28:12 +04:00
Dmitry Cherepanov
a4ab9d7050 7124337: [macosx] FileDialog fails to select multiple files
Reviewed-by: anthony, swingler
2012-05-16 13:15:27 +04:00
Kurchi Subhra Hazra
5f43f7c289 7164636: (prefs) Cleanup src/macosx/classes/java/util/prefs
Remove rawtype usages and other code cleanup

Reviewed-by: chegar, briangoetz
2012-05-15 11:51:51 -07:00
Michael Fang
9b0ee815d4 7157855: jvisualvm.1 not included in binaries
Reviewed-by: katleman, thurka
2012-05-15 11:46:41 -07:00
Deven You
ce388a548a 7164191: properties.putAll API may fail with ConcurrentModifcationException on multi-thread scenario
Reviewed-by: dholmes, sla
2012-05-15 16:46:10 +04:00
Dmitry Cherepanov
6d2f5978f7 7168550: [macosx] duplicate OGL context state changes related to vertex cache
Reviewed-by: bae, swingler
2012-05-15 15:04:10 +04:00
Bengt Rutisson
eba9965d54 7166894: Add gc cause to GC logging for all collectors
Reviewed-by: mgerdin, johnc
2012-05-15 10:25:06 +02:00
Bengt Rutisson
b2d4591455 7169056: Add gigabyte unit to proper_unit_for_byte_size() and byte_size_in_proper_unit()
Reviewed-by: jwilhelm, johnc, dholmes
2012-05-15 22:26:37 +02:00
John Cuthbertson
73636f80f0 7168294: G1: Some Full GCs incorrectly report GC cause as "No GC"
GC cause was not being set by the VM_G1CollectForAllocation VM operation.

Reviewed-by: jmasa, ysr, brutisso
2012-05-15 09:49:18 -07:00
John Cuthbertson
4935ae09b8 Merge 2012-05-14 21:07:28 -07:00
Mikael Vidstedt
c23595da74 7158457: division by zero in adaptiveweightedaverage
Add ceiling to AdaptiveWeightedAverage

Reviewed-by: ysr, iveresov
2012-05-15 00:56:06 +02:00
Vladimir Kozlov
eb4a860bc3 6924259: Remove String.count/String.offset
Allow a version of String class that doesn't have count and offset fields.

Reviewed-by: never, coleenp
2012-05-14 09:36:00 -07:00
Bengt Rutisson
b68794be17 7161545: G1: Minor cleanups to the G1 logging
Rename "to-space-overflow" to "to-space-exhausted", Introduce one decimal point in the size format, Add Sum to the aggregate and re-order the entries, Add number of GC workers to the log output

Reviewed-by: johnc, jwilhelm
2012-05-14 17:32:17 +02:00
Xue-Lei Andrew Fan
9190ab1d6b 7167988: PKIX CertPathBuilder in reverse mode doesn't work if more than one trust anchor is specified
Reviewed-by: mullan
2012-05-14 07:26:53 -07:00
Anton Tarasov
da0a144213 7110683: Issues with some KeyboardFocusManager method
Reviewed-by: ahgross
2012-05-12 18:50:27 +04:00
Alexander Potochkin
3cdc5fa537 7149005: [macosx] Java Control Panel's UI controls are distorted when draging scroll bar
Reviewed-by: serb
2012-05-12 17:46:00 +04:00
Alexander Scherbatiy
65a285cb99 7024965: Stylepad demo: remove non-translatable resources from Stylepad.properties file
Reviewed-by: alexp
2012-05-12 12:01:36 +04:00
Kelly O'Hair
fd8e6eca55 7167976: Fix broken get_source.sh script
Reviewed-by: tbell
2012-05-11 17:52:57 -07:00
Alejandro Murillo
17b26a6a0c 7168247: new hotspot build - hs24-b11
Reviewed-by: jcoomes
2012-05-11 14:54:35 -07:00
Alejandro Murillo
757948e54b Added tag hs24-b10 for changeset fcb3aef57178 2012-05-11 14:47:25 -07:00
Alejandro Murillo
1484d4c12c Merge 2012-05-11 14:47:24 -07:00
Olivier Lagneau
024a3d8370 7144861: speed up RMI activation tests
Reviewed-by: alanb, smarks, dholmes, dmocek
2012-05-11 14:13:29 -07:00
Lana Steuck
ee274abff1 Merge 2012-05-11 12:53:43 -07:00
Lana Steuck
a472974402 Merge 2012-05-11 12:53:03 -07:00
Mike Duigou
3b77eb7680 7071826: Avoid benign race condition in initialization of UUID
Avoids mostly benign but sometimes expensive race condition on initialization of UUID.numberGenerator which is used by UUID.randomUUID()

Reviewed-by: alanb, chegar
2012-05-11 11:31:46 -07:00
Gary Collins
bfa3402f16 7167625: Adjustments for SE-Embedded build process
Simple change to the SE-Embedded build rules that should not affect any other OpenJDK users.

Reviewed-by: kvn, dholmes
2012-05-11 11:30:03 -07:00
Anthony Petrov
9d4ac4c188 7149062: [macosx] dock menu don't show available frames
Inherit from either NSWindow for normal windows or NSPanel for utility windows

Reviewed-by: skovatch, swingler
2012-05-11 20:37:07 +04:00
Magnus Ihse Bursie
101d88a655 7168208: Change use of @ in one sed command involving paths to different character
Reviewed-by: ohair
2012-05-11 08:21:30 -07:00
Athijegannathan Sundararajan
817ad87a28 7166990: java/compiler Inherited interfaces using generics sometimes looses the generic type
Reviewed-by: mcimadamore
2012-05-11 20:06:00 +05:30
John Coomes
8fe245a2ba Merge 2012-05-11 06:37:47 -07:00
Anthony Petrov
50d1683efd 7166437: [macosx] Support for Window.Type.UTILITY on the Mac
Apply the native UTILITY style for UTILITY Java windows

Reviewed-by: art
2012-05-11 16:11:17 +04:00
Sean Coffey
6e335b3720 7167359: (tz) SEGV on solaris if TZ variable not set
Reviewed-by: okutsu
2012-05-11 10:09:18 +01:00
Deven You
abd7e74713 7163874: InetAddress.isReachable should support pinging 0.0.0.0
Reviewed-by: alanb, chegar
2012-05-11 16:20:46 +08:00
Jan Lahoda
9feb7f3e15 7159445: (javac) emits inaccurate diagnostics for enhanced for-loops
Reviewed-by: jjg
2012-05-10 12:32:58 -07:00
Lana Steuck
49252e4667 Merge 2012-05-10 11:47:56 -07:00
Valerie Peng
4dfbf0acd1 Merge 2012-05-10 11:19:22 -07:00
David Katleman
f36f12f54e Added tag jdk8-b38 for changeset 8bf61a6c4a22 2012-05-10 10:25:25 -07:00
David Katleman
2e89926eab Added tag jdk8-b38 for changeset 5904985dac0a 2012-05-10 10:25:14 -07:00
David Katleman
f592cd9eb6 Added tag jdk8-b38 for changeset b03bb9688c69 2012-05-10 10:25:09 -07:00
David Katleman
74f10135f5 Added tag jdk8-b38 for changeset 426adeeabf00 2012-05-10 10:25:08 -07:00
David Katleman
d75e89764e Added tag jdk8-b38 for changeset dd5e885125b4 2012-05-10 10:25:00 -07:00
David Katleman
5784582da1 Added tag jdk8-b38 for changeset 748373b1eae7 2012-05-10 10:24:56 -07:00
David Katleman
927c948fb5 Added tag jdk8-b38 for changeset ab7f1daeaf13 2012-05-10 10:24:54 -07:00
Sergey Bylokhov
9668994591 7080109: Dialog.show() lacks doPrivileged() to access system event queue
Reviewed-by: art, anthony
2012-05-10 20:05:12 +04:00
Kelly O'Hair
5c5ce877e8 7167593: Changed get_source.sh to allow for getting full oracle jdk repo forest
Reviewed-by: erikj, asaha, chegar, sla, dholmes, mbykov, coleenp
2012-05-10 08:26:26 -07:00
Bengt Rutisson
831d61ffee 7167069: 6 VM flags crash the VM when queried via jinfo
Added missing double format to Flag::print_as_flag()

Reviewed-by: dholmes, stefank, coleenp
2012-05-10 14:16:34 +02:00
Sean Coffey
c3e4ab9209 7163470: Build fails if javax.crypto src files not present
Reviewed-by: valeriep
2012-05-10 10:45:04 +01:00
Stefan Karlsson
efb4e7d77d 7167437: Can't build on linux without precompiled headers
Reviewed-by: brutisso, mgerdin
2012-05-10 11:27:10 +02:00
Kurchi Subhra Hazra
2c13671808 7096436: (sc) SocketChannel.connect fails on Windows 8 when channel configured non-blocking
Set localAddress only when connection is established

Reviewed-by: alanb
2012-05-09 16:55:55 -07:00
Bradford Wetmore
34aa937e99 7167362: SecureRandom.init should be converted, amendment to 7084245
Reviewed-by: sherman
2012-05-09 16:33:30 -07:00
David Katleman
6bba162380 Merge 2012-05-09 16:12:35 -07:00
Alejandro Murillo
687cb2678f Merge 2012-05-09 14:06:27 -07:00
David Katleman
2a2e7bffdc Merge 2012-05-09 13:13:41 -07:00
David Katleman
b2658ced45 Merge 2012-05-09 13:11:47 -07:00
David Katleman
5c2efc04be Added tag jdk8-b37 for changeset ac17e6eab3e8 2012-05-09 13:08:07 -07:00
David Katleman
688375fd87 Added tag jdk8-b37 for changeset 6cc8efda172c 2012-05-09 13:07:57 -07:00
David Katleman
0ae04de4ef Added tag jdk8-b37 for changeset cc70c2a4a56c 2012-05-09 13:07:50 -07:00
David Katleman
c1e2bb79f8 Added tag jdk8-b37 for changeset 19c92373018b 2012-05-09 13:07:49 -07:00
David Katleman
e53314cbb7 Added tag jdk8-b37 for changeset f2944668a5b3 2012-05-09 13:07:42 -07:00
David Katleman
b0296ea6c4 Added tag jdk8-b37 for changeset 64ed6b4e402e 2012-05-09 13:07:38 -07:00
David Katleman
1beaa06ed7 Added tag jdk8-b37 for changeset 1246483aab30 2012-05-09 13:07:33 -07:00
Kurchi Subhra Hazra
769059e3a3 7165118: (prefs) AbstractPreferences.remove(null) does not throw NPE
Insert null argument check in AbstractPreferences.remove()

Reviewed-by: dholmes, chegar, alanb
2012-05-09 11:14:22 -07:00
Vladimir Kozlov
65e294a51d Merge 2012-05-09 10:54:29 -07:00
Deven You
35e44803db 7166955: (pack200) JNI_GetCreatedJavaVMs needs additional checking
Reviewed-by: alanb, dholmes, ksrini
2012-05-09 07:28:12 -07:00
Jonathan Lu
7befd87c21 7165722: Invalid path in MemoryMonitor demo's README.txt
Reviewed-by: alanb, sla
2012-05-09 11:19:54 +08:00
Valerie Peng
00cdcad12f Merge 2012-05-08 18:57:45 -07:00
Xue-Lei Andrew Fan
081be38b26 7166570: JSSE certificate validation has started to fail for certificate chains
Reviewed-by: wetmore
2012-05-08 18:08:49 -07:00
Valerie Peng
879e30901e 4963723: Implement SHA-224
Add support for SHA-224, SHA224withRSA, SHA224withECDSA, HmacSHA224 and OAEPwithSHA-224AndMGF1Padding.

Reviewed-by: vinnie
2012-05-08 17:57:48 -07:00
Xue-Lei Andrew Fan
f44a8ebe07 7167092: Need to put the return clause in the synchronized block
A regression fix for bug 7153184

Reviewed-by: wetmore
2012-05-08 17:56:18 -07:00
Vladimir Kozlov
7ecd34e368 7167266: missing copyright notes in 3rd party code
Add missing copyright notes to the regression test file.

Reviewed-by: twisti, johnc
2012-05-08 15:47:04 -07:00
Lana Steuck
d30eeff9a1 Merge 2012-05-08 13:08:17 -07:00
Paul Sandoz
30fb5c8146 7157656: (zipfs) SeekableByteChannel to entry in zip file always reports its position as 0
Updated SeekableByteChannel.read() to count the bytes read correctly

Reviewed-by: sherman
2012-05-08 11:16:36 -07:00
Xueming Shen
c8da8f2595 7014640: To add a metachar \R for line ending and character classes for vertical/horizontal ws \v \V \h \H
Added propsoed constructs

Reviewed-by: alanb
2012-05-08 10:57:13 -07:00
David Holmes
828158fb8d 7103570: AtomicIntegerFieldUpdater does not work when SecurityManager is installed
Perform class.getField inside a doPrivileged block

Reviewed-by: chegar, psandoz
2012-05-08 02:59:10 -04:00
Vladimir Kozlov
904f53db88 7160610: Unknown Native Code compilation issue
When constructing input vector use type of vector's operation which use it since element's sizes should match.

Reviewed-by: never, twisti
2012-05-07 12:37:46 -07:00
Rob McKenna
fd928bc1ef 7166687: InetAddress.getLocalHost().getHostName() returns FQDN
Reviewed-by: chegar
2012-05-07 13:34:19 +01:00
Sean Chou
703f08dfe8 7166048: Remove the embeded epoll data structure
Reviewed-by: alanb
2012-05-07 16:43:16 +08:00
Joseph Provino
e897b69d19 Merge 2012-05-05 10:24:55 -04:00
Xue-Lei Andrew Fan
7ae15519b1 7153184: NullPointerException when calling SSLEngineImpl.getSupportedCipherSuites
Reviewed-by: weijun
2012-05-04 17:28:27 -07:00
Alejandro Murillo
ffd4d39144 7166615: new hotspot build - hs24-b10
Reviewed-by: jcoomes
2012-05-04 15:26:05 -07:00
Alejandro Murillo
d1c83acabb Added tag hs24-b09 for changeset 6123dd756c56 2012-05-04 14:10:31 -07:00
Alejandro Murillo
2889d16425 Merge 2012-05-04 14:10:30 -07:00
Knut Anders Hatlen
2f8d099c20 7166598: FilteredRowSetImpl can result in Invalid Cursor Position
Reviewed-by: lancea
2012-05-04 16:00:47 -04:00
John Coomes
05bee5dc82 Merge 2012-05-04 10:46:32 -07:00
Sergey Bylokhov
bf549e93b9 7147055: [macosx] Cursors are changing over a blocked window; also blinking
Reviewed-by: art, kizune
2012-05-04 21:25:08 +04:00
Jan Lahoda
324e987e82 7166010: (javac) JavacMessager incorrectly restores log source file
Reviewed-by: jjg
2012-05-04 07:55:51 -07:00
Oleg Pekhovskiy
b963b0bcc4 7146237: closed/java/awt/Focus/SetFocusTraversalKeysTest/SetFocusTraversalTest.html failed since 1.8.0b19
Reviewed-by: art, anthony
2012-05-04 18:42:08 +04:00
Alexander Scherbatiy
045ba7db6b 7024963: Notepad demo: remove non-translatable resources from Notepad.properties file
Reviewed-by: rupashka
2012-05-04 13:15:49 +04:00
Alexander Zuev
e3ab8ba856 7148289: [macosx] Deadlock in sun.lwawt.macosx.CWrapper$NSScreen.visibleFrame
Reviewed-by: leonidr
2012-05-03 21:54:29 +04:00
Leonid Romanov
e6869edf38 7124376: [macosx] Modal dialog lost focus
Reviewed-by: anthony
2012-05-03 19:22:38 +04:00
Sergey Bylokhov
0705c62050 7160623: [macosx] Editable TextArea/TextField are blocking GUI applications from exit
Reviewed-by: anthony, art
2012-05-03 18:29:00 +04:00
Edvard Wendelin
1f736c82a9 7154130: Add Mac OS X Instructions to README-builds.html
Reviewed-by: ohair
2012-05-03 14:17:30 +02:00
David Katleman
6f383ae89d Merge 2012-05-02 15:47:08 -07:00
David Katleman
5e4fc9cf1e Merge 2012-05-02 15:46:52 -07:00
Jim Gish
b4c2c567d6 7160714: Strange or obsolete @see tags in some exception java.util javadoc
Reviewed-by: mduigou, dholmes, alanb
2012-05-02 21:46:31 +01:00
Joseph Provino
0e89e92d04 Merge 2012-05-02 15:47:06 -04:00
Rémi Forax
05ffd97b08 7165102: Only run assertion on Integer autoboxing cache size once
Reviewed-by: darcy, alanb
2012-05-02 20:01:59 +01:00
Jiangli Zhou
2fa131f8db 7158552: The instanceKlsss::_host_klass is only needed for anonymous class for JSR 292 support
Change the _host_klass to be conditionally created embedded instanceKlass field.

Reviewed-by: jrose, coleenp, dholmes
2012-05-02 13:21:36 -04:00
Lana Steuck
26faf043d2 Merge 2012-05-02 10:17:29 -07:00
Lana Steuck
60af5c24ef Merge 2012-05-02 09:54:57 -07:00
Lana Steuck
61fb6f377c Merge 2012-05-02 09:53:29 -07:00
Alexander Scherbatiy
4d0e923a60 7154048: [macosx] At least drag twice, the toolbar can be dragged to the left side
Reviewed-by: anthony, leonidr
2012-05-02 17:54:18 +04:00
Vinnie Ryan
43ef89d4a6 7087021: TEST: com/sun/crypto/provider/Mac/MacClone.java failed on Solaris sparc 5.10
Reviewed-by: mullan
2012-05-02 14:50:46 +01:00
Dmitry Cherepanov
3f596509e1 7154062: [macosx] Mouse cursor isn't updated in applets
Reviewed-by: anthony, art
2012-05-02 13:53:06 +04:00
Mandy Chung
728600d4e3 7164376: Replace use of sun.security.action.LoadLibraryAction with System.loadLibrary
Reviewed-by: alanb, mullan, prr
2012-05-01 19:45:34 -07:00
Lana Steuck
521fd9e111 Merge 2012-05-01 11:30:51 -07:00
Lana Steuck
f0bfafa2e2 Merge 2012-05-01 11:29:58 -07:00
Xue-Lei Andrew Fan
4a3f30b744 7158688: Typo in SSLContext Spec
Reviewed-by: weijun, wetmore
2012-05-01 03:48:26 -07:00
Alan Bateman
6fed495d1f 7164570: (fs) WatchService queues CREATE event but not DELETE event for very short lived files [sol11]
Reviewed-by: chegar
2012-05-01 11:17:20 +01:00
Kelly O'Hair
e0e7eb6c44 7165312: Fix jaxp source movement for new build-infra
Reviewed-by: ohrstrom
2012-04-30 16:03:40 -07:00
Magnus Ihse Bursie
d85f615c03 7165277: Fix missing execute permission issue running logger.sh
Reviewed-by: ohair
2012-04-30 12:13:29 -07:00
Christopher Gruszka
aa3de76bc8 Merge 2012-04-27 14:37:44 -04:00
Xue-Lei Andrew Fan
03b36bd454 6996372: synchronizing handshaking hash
Remove the unnecessary synchronization. Also reviewed by David Schlosnagle (schlosna@gmail.com)

Reviewed-by: weijun
2012-04-27 04:25:50 -07:00
Lana Steuck
06bc452803 Merge 2012-04-26 18:25:33 -07:00
Lana Steuck
5b2008805b Merge 2012-04-26 18:15:49 -07:00
Lana Steuck
6c68dd5523 Merge 2012-04-26 14:21:19 -07:00
Lana Steuck
5701c33c6f Merge 2012-04-26 14:14:38 -07:00
David Katleman
3118f65376 Added tag jdk8-b36 for changeset 5875a9028f2c 2012-04-26 14:07:29 -07:00
David Katleman
cd1a43e9b2 Added tag jdk8-b36 for changeset 8a3b65a2aab7 2012-04-26 14:07:12 -07:00
David Katleman
2867dc7446 Added tag jdk8-b36 for changeset d142a9139249 2012-04-26 14:06:31 -07:00
David Katleman
4149bc3c4a Added tag jdk8-b36 for changeset 69a997cbdf15 2012-04-26 14:06:27 -07:00
David Katleman
a4aab05579 Added tag jdk8-b36 for changeset a7cb86ab5b6e 2012-04-26 14:05:31 -07:00
David Katleman
530ce70e39 Added tag jdk8-b36 for changeset 46cc3a1a6961 2012-04-26 14:05:00 -07:00
David Katleman
66a72d7411 Added tag jdk8-b36 for changeset 9e7bde7b948b 2012-04-26 14:04:42 -07:00
Dean Long
ea89242447 7162955: Attach api on Solaris, too many open files
Release server-side socket after client receives it.

Reviewed-by: sla, dsamersoff, dcubed, acorn
2012-04-26 16:24:15 -04:00
Jennifer Godinez
64c6dc258c 7013850: Please change the mnemonic assignment system to avoid translation issue
Reviewed-by: prr, mfang
2012-04-26 13:16:52 -07:00
Kurchi Subhra Hazra
c53c258233 7118100: (prefs) Inconsistency when using system and user preference on OSX Lion
Enable user to read/write preferences to persistent storage

Reviewed-by: alanb
2012-04-26 12:04:29 -07:00
Alexander Potochkin
8c3f861909 7124328: [macosx] javax.swing.JDesktopPane.getAllFramesInLayer returns unexpected value
Reviewed-by: anthony
2012-04-26 21:25:14 +04:00
Alexander Potochkin
21e63eca82 7124210: [macosx] Replacing text in a TextField does generate an extra TextEvent
Reviewed-by: serb
2012-04-26 21:16:12 +04:00
Jonathan Lu
39c1b4be34 7154030: java.awt.Component.hide() does not repaint parent component
Reviewed-by: rupashka
2012-04-26 12:39:11 +08:00
Daniel D. Daugherty
5b91fbd2b5 7164344: enabling ZIP_DEBUGINFO_FILES causes unexpected test failures on Solaris and Windows
Disable FDS by default on Solaris; disable ZIP_DEBUGINFO_FILES by default on Windows.

Reviewed-by: acorn, sspitsyn
2012-04-25 15:06:51 -07:00
Kurchi Subhra Hazra
6d834825de 7160242: (prefs) Preferences.remove(null) does not throw NPE [macosx]
Insert null check of argument in remove()'s implementation

Reviewed-by: forax, chegar, alanb
2012-04-25 12:31:31 -07:00
Scott Kovatch
9dac65e6e5 7128699: Fix bundle name so it contains the bugfix number in the name
Reviewed-by: robilad
2012-04-25 12:18:10 -07:00
Leonid Romanov
653ffb1218 7154480: [macosx] Not all popup menu items are visible
Reviewed-by: art
2012-04-25 18:15:57 +04:00
Alexander Scherbatiy
7f8dfa7abb 7163482: [macosx] Regtest closed/javax/swing/JTree/4908142/bug4908142.java intermittent failure
Reviewed-by: rupashka
2012-04-25 16:48:12 +04:00
Bengt Rutisson
93bfefecfe 7163848: G1: Log GC Cause for a GC
Reviewed-by: johnc, jwilhelm, jmasa
2012-04-25 12:36:37 +02:00
Jon Masamitsu
9d991480e9 Merge 2012-04-25 15:51:10 -07:00
John Cuthbertson
377a04fe57 7143490: G1: Remove HeapRegion::_top_at_conc_mark_count
Removed the HeapRegion::_top_at_conc_mark_count field. It is no longer needed as a result of the changes for 6888336 and 7127706. Refactored the closures that finalize and verify the liveness counting data so that common functionality was placed into a base class.

Reviewed-by: brutisso, tonyp
2012-04-25 10:23:12 -07:00
Jon Masamitsu
b63f7f3a18 7164144: Fix variable naming style in freeBlockDictionary.* and binaryTreeDictionary*
Fix naming style to be consistent with the predominant hotspot style.

Reviewed-by: ysr, brutisso
2012-04-25 09:55:55 -07:00
Daniel D. Daugherty
4ab089ddba Merge 2012-04-24 15:20:40 -07:00
Kurchi Subhra Hazra
21d0c9ef0d 7144274: [macosx] Default IPv6 multicast interface is not being set when calling MulticastSocket.joinGroup()
Get default interface for Mac OS X when interface is not set

Reviewed-by: chegar
2012-04-24 14:59:45 -07:00
Jennifer Godinez
59a75697e3 7157659: [macosx] Landscape Printing orientation doesn't work
Reviewed-by: bae, prr
2012-04-24 13:29:04 -07:00
Nils Eliasson
83ff79ed01 7157695: Add windows implementation of socket interface
Reviewed-by: kvn, dholmes, twisti
2012-04-24 12:15:32 -07:00
Kumar Srinivasan
cb9507190e 7151434: java -jar -XX crashes java launcher
Reviewed-by: mchung, darcy
2012-04-24 10:37:01 -07:00
Anthony Petrov
14842a2b97 7131021: [macosx] Consider using system properties to pass arguments from the launcher to AWT/SplashScreen
Document the environment variables and add tests

Reviewed-by: ksrini
2012-04-24 20:39:40 +04:00
Nicolas Carranza
2942df6c93 7163898: add isLoggable() check to doLog()
Add the check and return immediately if it's false

Reviewed-by: anthony, mchung, sla
2012-04-24 19:12:47 +04:00
Anthony Petrov
56a050e73a 7150109: [macosx] the Frame showed incomplete
Open-source the tests

Reviewed-by: art
2012-04-24 17:47:50 +04:00
Deven You
8c029909a4 7163865: Performance improvement for DateFormatSymbols.getZoneIndex(String)
Reviewed-by: okutsu
2012-04-24 21:06:16 +08:00
Lana Steuck
c57073d6ee Merge 2012-04-23 16:59:32 -07:00
Lana Steuck
d331cf663e Merge 2012-04-23 16:58:40 -07:00
Lana Steuck
e4e2e9efec Merge 2012-04-23 16:55:12 -07:00
Daniel D. Daugherty
1feb712387 Merge 2012-04-23 11:03:30 -07:00
Staffan Larsen
bf5a3b90fb 7163524: Add SecTaskAccess attribute to jstack [macosx]
Reviewed-by: dholmes
2012-04-23 16:34:32 +02:00
Staffan Larsen
ca57fd5c97 7162063: libsaproc debug print should format size_t correctly on 64bit platform
Reviewed-by: rbackman, mgronlun, dholmes
2012-04-23 13:30:39 +02:00
Alan Bateman
35a0ff69b0 7132924: (dc) DatagramChannel.disconnect throws SocketException with IPv4 socket and IPv6 enabled [macosx]
Reviewed-by: chegar
2012-04-22 21:22:17 +01:00
Alan Bateman
154cd32776 Merge 2012-04-22 19:12:39 +01:00
Alan Bateman
091f0781b8 7163395: jdk8/tl no longer builds on Mac
Reviewed-by: chegar, ohair, ksrini
2012-04-22 19:09:02 +01:00
Kumar Srinivasan
b0c273a9b8 6981776: Pack200 must support -target 7 bytecodes
Pack200 implementation of JSR-200 updated for JSR-292 changes

Co-authored-by: John Rose <john.r.rose@oracle.com>
Reviewed-by: jrose, ksrini
2012-04-22 06:54:38 -07:00
Alejandro Murillo
6de80de07f 7163193: new hotspot build - hs24-b09
Reviewed-by: jcoomes
2012-04-20 17:13:36 -07:00
Alejandro Murillo
240c3c4839 Added tag hs24-b08 for changeset 55ac5f20c7bf 2012-04-20 16:23:49 -07:00
Alejandro Murillo
f4ce595352 Merge 2012-04-20 16:23:48 -07:00
John Cuthbertson
b2ab93cc7b Merge 2012-04-20 11:41:49 -07:00
Misha Bykov
beaeba8862 7161925: sjava files in corba don't have copyright string and legal notice
Reviewed-by: chegar
2012-04-20 17:34:25 +01:00
Kevin Walls
7e36bafdcd 7162488: VM not printing unknown -XX options
Reviewed-by: dholmes, kamg
2012-04-20 14:55:45 +01:00
Sean Chou
c354b234a4 7159982: ZipFile uses static for error message when malformed zip file encountered
Reviewed-by: alanb, dholmes
2012-04-20 16:11:28 +08:00
Jonathan Lu
91ae75b087 7055065: NullPointerException when sorting JTable with empty cell
Reviewed-by: rupashka
2012-04-20 13:13:00 +08:00
Sean Chou
2f21d39ae5 7129742: Unable to view focus in Non-Editable TextArea
Make sure the cursor is visible by setVisible(true)

Reviewed-by: rupashka, alexp
2012-04-20 10:34:40 +08:00
Kurchi Subhra Hazra
0590a1ea49 7158636: InterfaceAddress.getBroadcast() returns invalid broadcast address on WLAN
Update Windows native code to infer WLAN interface type in Windows Vista and later

Reviewed-by: chegar, alanb
2012-04-19 18:11:28 -07:00
Kurchi Subhra Hazra
4f6ca7513e 7162385: TEST_BUG: sun/net/www/protocol/jar/B4957695.java failing again
Enable finding "foo1.jar"

Reviewed-by: chegar
2012-04-19 13:26:06 -07:00
David Katleman
d43b7a3a07 Added tag jdk8-b35 for changeset 55cc12e59097 2012-04-19 12:19:06 -07:00
David Katleman
26c6d93e07 Added tag jdk8-b35 for changeset 7d350b06fde4 2012-04-19 12:18:58 -07:00
David Katleman
c103c7f049 Added tag jdk8-b35 for changeset dc30e060f828 2012-04-19 12:18:55 -07:00
David Katleman
8e5fedeb45 Added tag jdk8-b35 for changeset 4bca4ac90e85 2012-04-19 12:18:53 -07:00
David Katleman
17f06f1623 Added tag jdk8-b35 for changeset f81ec813e7ee 2012-04-19 12:18:46 -07:00
David Katleman
dadb671a17 Added tag jdk8-b35 for changeset b8ea05aeddf8 2012-04-19 12:18:41 -07:00
David Katleman
d7ad862058 Added tag jdk8-b35 for changeset 499f1fc13620 2012-04-19 12:18:32 -07:00
Vinnie Ryan
a7c8728704 7162823: Modify the list of excluded tests (ProblemList
Reviewed-by: alanb
2012-04-19 16:58:34 +01:00
Coleen Phillimore
e776b337e8 Merge 2012-04-19 10:53:35 -04:00
Paul Sandoz
5befb6f577 7162262: (fs) Typo in java.nio.file.Path class description
Reviewed-by: alanb
2012-04-19 14:05:07 +01:00
David Katleman
e0ccdb1d31 Merge 2012-04-18 16:39:07 -07:00
Tom Rodriguez
a02fad04b2 7161796: PhaseStringOpts::fetch_static_field tries to fetch field from the Klass instead of the mirror
Reviewed-by: twisti
2012-04-18 16:08:34 -07:00
Antonios Printezis
0afaaf8d36 7145441: G1: collection set chooser-related cleanup
Cleanup of the CSet chooser class: standardize on uints for region num and indexes (instead of int, jint, etc.), make the method / field naming style more consistent, remove a lot of dead code.

Reviewed-by: johnc, brutisso
2012-04-18 13:39:55 -04:00
Lana Steuck
c7e591cc26 Merge 2012-04-18 10:22:32 -07:00
Lana Steuck
b0654071b7 Merge 2012-04-18 10:21:59 -07:00
Lana Steuck
9e2a9c561e Merge 2012-04-18 10:20:19 -07:00
Lana Steuck
b85926e45f Merge 2012-04-18 10:18:10 -07:00
Lana Steuck
cc3d72b55f Merge 2012-04-18 10:16:23 -07:00
Leonid Romanov
846b62bbd6 7124286: [macosx] Option modifier should work like AltGr as in Apple jdk
Reviewed-by: anthony
2012-04-18 21:08:38 +04:00
Michael McMahon
e49c821349 Merge 2012-04-18 16:05:12 +01:00
Michael McMahon
899181bf7c 7162043: Add headless mode tests to problem list [macosx]
Reviewed-by: alanb
2012-04-18 16:04:19 +01:00
Antonios Printezis
01ea4199c7 7157073: G1: type change size_t -> uint for region counts / indexes
Change the type of fields / variables / etc. that represent region counts and indeces from size_t to uint.

Reviewed-by: iveresov, brutisso, jmasa, jwilhelm
2012-04-18 07:21:15 -04:00
Dmitry Cherepanov
3f50074142 7156194: [macosx] Can't type non-ASCII characters into applets
Reviewed-by: anthony, art
2012-04-18 09:29:09 +04:00
Remi Forax
00ef83a6ab 7157893: Warnings Cleanup in java.util.*
Minor code changes to cleanup warnings in java.util.*

Reviewed-by: mduigou, naoto, smarks
2012-04-17 12:21:56 -07:00
Kurchi Subhra Hazra
4869b7a5a7 7152856: TEST_BUG: sun/net/www/protocol/jar/B4957695.java failing on Windows
Remove usage of HTTP Server at test/sun/net/www/httptest

Reviewed-by: chegar, alanb
2012-04-17 11:59:12 -07:00
Joe Wang
87e24367ff 7160380: Sync JDK8 with JAXP 1.4.5
Bring JDK8 up to date to what we have in 7u4

Reviewed-by: lancea, mullan
2012-04-17 11:21:35 -07:00
Joe Wang
db4db38876 7160380: Sync JDK8 with JAXP 1.4.5
Bring JDK8 up to date to what we have in 7u4

Reviewed-by: lancea, mullan
2012-04-17 11:17:59 -07:00
Nils Eliasson
2ded12cdfd 7162094: LateInlineCallGenerator::do_late_inline crashed on uninitialized _call_node
Reviewed-by: never, twisti
2012-04-17 11:04:22 -07:00
Alexander Zuev
b86618edf9 7161109: [macosx] JCK AWT interactive test DnDTextDropTest fails on MacOS
Reviewed-by: serb
2012-04-17 21:40:12 +04:00
Daniel D. Daugherty
ea4cd6ca39 7159320: change default ZIP_DEBUGINFO_FILES back to '1' after fix for 7133529 is available
Reviewed-by: ohair, jmelvin, sspitsyn
2012-04-17 09:02:57 -07:00
Staffan Larsen
2231891a18 Merge 2012-04-17 08:49:50 -07:00
Jim Gish
9e2790c8ae 7116200: (cs) test/java/nio/charset/coders/StreamTimeout.java fails with "Address already in use"
Co-authored-by: Remi Forax <forax@univ-mlv.fr>
Reviewed-by: alanb, chegar
2012-04-17 15:46:04 +01:00
Staffan Larsen
a133263681 Merge 2012-04-17 07:25:05 -07:00
Rob McKenna
350730be55 7118373: (se) Potential leak file descriptor when deregistrating at around the same time as an async close
Reviewed-by: alanb
2012-04-17 07:14:14 -07:00
Dmeetry Degrave
c5681473cb 7015981: java.net.HttpCookie.domainMatches returns false if domain doesn't start with a dot
Reviewed-by: chegar
2012-04-17 16:13:28 +04:00
Alex Menkov
5df1b2e7f4 Merge 2012-04-17 13:16:06 +03:00
Alex Menkov
56c8257743 7100140: [macosx] Test closed/javax/sound/sampled/DirectAudio/bug6400879.java is invalid
Reviewed-by: prr
2012-04-17 13:03:01 +03:00
Staffan Larsen
311ea4a969 7147848: com.sun.management.UnixOperatingSystem uses hardcoded dummy values [macosx]
Provide the missing implementation UnixOperatingSystem on Mac OS X

Reviewed-by: dsamersoff, dcubed
2012-04-17 06:45:57 +02:00
James Melvin
d090606f36 7130404: [macosx] "os.arch" value should be "x86_64" for compatibility with Apple JDK6
On Mac OS X, align system property "os.arch" with Apple legacy JDKs.  Also, improve os.name string matching by using .contains() method instead of .startsWith(). This fix spans multiple repositories.

Reviewed-by: dcubed, phh, ohair, katleman
2012-04-16 18:09:53 -04:00
James Melvin
5b1baa3d10 7130404: [macosx] "os.arch" value should be "x86_64" for compatibility with Apple JDK6
On Mac OS X, align system property "os.arch" with Apple legacy JDKs.  Also, improve os.name string matching by using .contains() method instead of .startsWith(). This fix spans multiple repositories.

Reviewed-by: dcubed, phh, ohair, katleman
2012-04-16 17:10:35 -04:00
Alan Bateman
b29ee10938 7143744: (se) Stabilize KQueue SelectorProvider and make default on MacOSX
Reviewed-by: michaelm, chegar
2012-04-16 20:12:20 +01:00
Anthony Petrov
975313d5cc 7080700: numAppContexts is accessed in non-threadsafe way in sun.awt.AppContext
Replace a volatile integer with an AtomicInteger for numAppContexts

Reviewed-by: anthony, art, dholmes
2012-04-16 18:36:58 +04:00
Alex Menkov
253976ad79 7058852: javax/sound/sampled/FileWriter/AlawEncoderSync.java failing intermittently
Reviewed-by: prr
2012-04-16 17:04:49 +03:00
Charles Lee
a51733d81d 7161282: Move test/sun/tools/classpath/RMICClassPathTest.java to a more appropriate location
Reviewed-by: alanb
2012-04-16 11:12:10 +08:00
Pavel Porvatov
afa494b2a5 7149090: Nimbus:BorderFactory.createTitledBorder() the DEFAULT position of a title is not the same as the TOP
Reviewed-by: alexp
2012-04-15 12:58:12 +03:00
Vinnie Ryan
34af18cd40 7152169: TEST_BUG: sun/security/tools/jarsigner/ec.sh occasionally fail due to keytool error on sparc
Reviewed-by: mullan
2012-04-13 19:00:08 +01:00
Leonid Romanov
8263a06f21 7124272: [macosx] VK_DELETE does produce an extraneous character in a TextArea or TextField
Reviewed-by: kizune, art
2012-04-13 20:31:47 +04:00
Sean Mullan
9fd5ef2141 Merge 2012-04-13 09:49:41 -04:00
Sean Mullan
ac620e811d 7152564: Improve CodeSource.matchLocation(CodeSource) performance
7155693: CodeSource.matchLocation getPort test can be improved

Reviewed-by: chegar
2012-04-13 09:46:25 -04:00
Daniel D. Daugherty
9de05ceb7a 7160895: tools/launcher/VersionCheck.java attempts to launch .debuginfo
Do not install .debuginfo files in bin dir.

Reviewed-by: ksrini, sspitsyn
2012-04-12 16:23:24 -07:00
Xueming Shen
1f4653910f 7067045: replaceAll("\u20ac", "$"); causses java.lang.StringIndexOutOfBoundsExceptio
Updated to throw IAE instead.

Reviewed-by: lancea
2012-04-12 15:01:41 -07:00
Xueming Shen
d4817a1e4f 7152690: Initialization error with charset SJIS_0213 when security manager is enabled
To use doPrivileged block to wrap the data reading code

Reviewed-by: alanb
2012-04-12 10:55:51 -07:00
Xueming Shen
17d3cafd5b 7156873: (zipfs) FileSystems.newFileSystem(uri, env) fails for uri with escaped octets
To use URI.getRawSchemeSpecificPart() to get the scheme part of the uri

Reviewed-by: alanb, chegar
2012-04-12 10:43:04 -07:00
David Katleman
275576b218 Added tag jdk8-b34 for changeset c529d3f99946 2012-04-12 09:35:37 -07:00
David Katleman
b127787553 Added tag jdk8-b34 for changeset 17ed142e28eb 2012-04-12 09:35:30 -07:00
David Katleman
a19cce278c Added tag jdk8-b34 for changeset f2ca1609c83c 2012-04-12 09:35:19 -07:00
David Katleman
a1a5bd99c1 Added tag jdk8-b34 for changeset 664a26130786 2012-04-12 09:35:15 -07:00
David Katleman
5ed629de9f Added tag jdk8-b34 for changeset c71d5b52c0e8 2012-04-12 09:34:57 -07:00
David Katleman
5099649ff0 Added tag jdk8-b34 for changeset 6ec49b7a7e19 2012-04-12 09:34:50 -07:00
David Katleman
0ad7c6fe6d Added tag jdk8-b34 for changeset 863d9350e84b 2012-04-12 09:34:47 -07:00
Joe Wang
60663487f6 7160496: Rename JDK8 JAXP source directory
Moving src/share/classes to src

Reviewed-by: ohair
2012-04-12 08:38:26 -07:00
Kelly O'Hair
5ad937a85f Merge 2012-04-12 08:11:45 -07:00
Kelly O'Hair
1095f90a26 7160976: Fix missing file in new build infrastructure: Defs-utils.gmk
Reviewed-by: ihse
2012-04-12 08:11:08 -07:00
Pavel Porvatov
93c317d8e6 7160653: test/javax/swing/plaf/synth/7158712/bug7158712.java failed on Ubuntu
Reviewed-by: alexp
2012-04-12 12:48:31 +03:00
Deven You
00b38ee051 6610897: New constructor in sun.tools.java.ClassPath builds a path using File.separator instead of File.pathSeparator
Reviewed-by: alanb
2012-04-12 15:04:39 +08:00
Igor Veresov
d16ab3b53e 7160539: JDeveloper crashes on 64-bit Windows
X64 C1 needs to zero upper 32bits when doing l2i conversion

Reviewed-by: never, kvn
2012-04-11 19:15:46 -07:00
Lana Steuck
d4fc10af1d Merge 2012-04-11 18:52:45 -07:00
Lana Steuck
5e9ea38531 Merge 2012-04-11 18:44:33 -07:00
Bradford Wetmore
8716e4744b 7157903: JSSE client sockets are very slow
Reviewed-by: xuelei
2012-04-11 17:12:35 -07:00
David Katleman
c60e89e144 Merge 2012-04-11 14:10:53 -07:00
David Katleman
06ec3d779f Merge 2012-04-11 14:09:48 -07:00
David Katleman
c7586330ba Merge 2012-04-11 14:08:09 -07:00
David Katleman
f7eeff71a4 Merge 2012-04-11 14:08:06 -07:00
David Katleman
cfca7cda82 Merge 2012-04-11 14:07:43 -07:00
David Katleman
8a290b8e6a Merge 2012-04-11 14:07:41 -07:00
Leonid Romanov
9cbde0b81e 7124411: [macosx] There's no KEY_TYPED for VK_ESCAPE
Reviewed-by: art
2012-04-11 21:06:08 +04:00
Daniel D. Daugherty
5017ee9fdb 7071907: JDK: Full Debug Symbols
Add initial FDS support to some libraries and programs.

Reviewed-by: kamg, fparain, sspitsyn, dsamersoff
2012-04-11 07:26:35 -07:00
Stefan Karlsson
99802ac63d 7160613: VerifyRememberedSets doesn't work with CompressedOops
Use load_decode_heap_oop instead of load_decode_heap_oop_not_null

Reviewed-by: tonyp, brutisso
2012-04-11 16:18:45 +02:00
Bengt Rutisson
f695b75d78 4988100: oop_verify_old_oop appears to be dead
Removed oop_verify_old_oop and allow_dirty. Also reviewed by: alexlamsl@gmail.com

Reviewed-by: jmasa, jwilhelm
2012-04-16 08:57:18 +02:00
Bengt Rutisson
bb59715dae 7160728: Introduce an extra logging level for G1 logging
Added log levels "fine", "finer" and "finest". Let PrintGC map to "fine" and PrintGCDetails map to "finer". Separated out the per worker information in the G1 logging to the "finest" level.

Reviewed-by: stefank, jwilhelm, tonyp, johnc
2012-04-13 01:59:38 +02:00
Maurizio Cimadamore
d951098c65 7154127: Inference cleanup: remove bound check analysis from visitors in Types.java
Remove bound checking rules from recursive subtype visitors in Types.java and replace with centralized bound-checking logic

Reviewed-by: jjg, dlsmith
2012-04-11 10:50:11 +01:00
Lana Steuck
86d20bcabe Merge 2012-04-10 23:19:26 -07:00
Lana Steuck
25e2d2bf5c Merge 2012-04-10 23:18:33 -07:00
Sergey Bylokhov
2e12d45877 7097771: setEnabled does not work for components in disabled containers
Reviewed-by: art, anthony
2012-04-10 22:09:58 +04:00
Jiangli Zhou
4fd64312c8 7159772: instanceKlass::all_fields_count() returns incorrect total field count
Fix instanceKlass::all_fields_count() bug.

Reviewed-by: kvn, never
2012-04-10 09:31:04 -07:00
Pavel Porvatov
910846ed2c 7158712: Synth Property "ComboBox.popupInsets" is ignored
Reviewed-by: alexp
2012-04-10 19:09:48 +03:00
Pavel Porvatov
e630f8d216 7146146: Deadlock between subclass of AbstractDocument and UndoManager
Reviewed-by: art
2012-04-10 18:53:15 +03:00
Fredrik Ohstrom
e32ab98b32 7074397: Build infrastructure changes (makefile re-write)
New makefiles transition, old and new living side by side for now.

Co-authored-by: Erik Joelsson <erik.joelsson@oracle.com>
Co-authored-by: Magnus Ihse Bursie <magnus.ihse.bursie@oracle.com>
Co-authored-by: Torbjorn Granat <torbjorn.granat@oracle.com>
Co-authored-by: Yekaterina Kantserova <yekaterina.kantserova@oracle.com>
Reviewed-by: ohair, jjg, dholmes, ohrstrom, erikj, ihse, tgranat, ykantser
2012-04-10 08:22:03 -07:00
Fredrik Ohstrom
c41339543f 7074397: Build infrastructure changes (makefile re-write)
New makefiles transition, old and new living side by side for now.

Co-authored-by: Erik Joelsson <erik.joelsson@oracle.com>
Co-authored-by: Magnus Ihse Bursie <magnus.ihse.bursie@oracle.com>
Co-authored-by: Torbjorn Granat <torbjorn.granat@oracle.com>
Co-authored-by: Yekaterina Kantserova <yekaterina.kantserova@oracle.com>
Reviewed-by: ohair, jjg, dholmes, ohrstrom, erikj, ihse, tgranat, ykantser
2012-04-10 08:18:28 -07:00
Fredrik Ohstrom
9b450f0606 7074397: Build infrastructure changes (makefile re-write)
New makefiles transition, old and new living side by side for now.

Co-authored-by: Erik Joelsson <erik.joelsson@oracle.com>
Co-authored-by: Magnus Ihse Bursie <magnus.ihse.bursie@oracle.com>
Co-authored-by: Torbjorn Granat <torbjorn.granat@oracle.com>
Co-authored-by: Yekaterina Kantserova <yekaterina.kantserova@oracle.com>
Reviewed-by: ohair, jjg, dholmes, ohrstrom, erikj, ihse, tgranat, ykantser
2012-04-10 08:15:25 -07:00
Fredrik Ohstrom
36523aa64e 7074397: Build infrastructure changes (makefile re-write)
New makefiles transition, old and new living side by side for now.

Co-authored-by: Erik Joelsson <erik.joelsson@oracle.com>
Co-authored-by: Magnus Ihse Bursie <magnus.ihse.bursie@oracle.com>
Co-authored-by: Torbjorn Granat <torbjorn.granat@oracle.com>
Co-authored-by: Yekaterina Kantserova <yekaterina.kantserova@oracle.com>
Reviewed-by: ohair, jjg, dholmes, ohrstrom, erikj, ihse, tgranat, ykantser
2012-04-10 08:14:57 -07:00
Fredrik Ohstrom
78c5623842 7074397: Build infrastructure changes (makefile re-write)
New makefiles transition, old and new living side by side for now.

Co-authored-by: Erik Joelsson <erik.joelsson@oracle.com>
Co-authored-by: Magnus Ihse Bursie <magnus.ihse.bursie@oracle.com>
Co-authored-by: Torbjorn Granat <torbjorn.granat@oracle.com>
Co-authored-by: Yekaterina Kantserova <yekaterina.kantserova@oracle.com>
Reviewed-by: ohair, jjg, dholmes, ohrstrom, erikj, ihse, tgranat, ykantser
2012-04-10 08:14:42 -07:00
Fredrik Ohstrom
2c8ab7122b 7074397: Build infrastructure changes (makefile re-write)
New makefiles transition, old and new living side by side for now.

Co-authored-by: Erik Joelsson <erik.joelsson@oracle.com>
Co-authored-by: Magnus Ihse Bursie <magnus.ihse.bursie@oracle.com>
Co-authored-by: Torbjorn Granat <torbjorn.granat@oracle.com>
Co-authored-by: Yekaterina Kantserova <yekaterina.kantserova@oracle.com>
Reviewed-by: ohair, jjg, dholmes, ohrstrom, erikj, ihse, tgranat, ykantser
2012-04-10 08:13:29 -07:00
Joel Borggrén-Franck
8a66dbf077 7158930: (ann) library support for repeating annotations is not built when compiling the JDK
Reviewed-by: ohair, erikj
2012-04-10 10:45:56 +02:00
Markus Grönlund
2c28d27dcf 7154809: JDI: update JDI/JDB debugee commandline option parsing
Update debugee commandline parsing

Reviewed-by: dcubed, dsamersoff, sla
2012-04-10 10:32:00 +02:00
Lana Steuck
7dbe9f0b6d Merge 2012-04-09 21:58:05 -07:00
Lana Steuck
69983c74a6 Merge 2012-04-09 21:57:17 -07:00
Lana Steuck
aaf6aae111 Merge 2012-04-09 21:55:42 -07:00
Weijun Wang
9c8af427e8 7158329: NPE in sun.security.krb5.Credentials.acquireDefaultCreds()
Reviewed-by: valeriep, jjg
2012-04-10 12:15:03 +08:00
Sean Zhou
79f8fba3f9 7121314: Behavior mismatch between AbstractCollection.toArray(T[] ) and its spec
Co-authored-by: Ulf Zibis <ulf.zibis@gmx.de>
Co-authored-by: David Holmes <david.holmes@oracle.com>
Reviewed-by: dholmes, mduigou
2012-04-10 10:17:36 +08:00
Clemens Eisserer
2bf65cc749 7150134: JCK api/java_awt/Graphics/index.html#DrawLine fails with OOM for jdk8 with XRender pipeline
Reviewed-by: prr
2012-04-09 15:49:33 -07:00
Jan Lahoda
0f0e273e0d 7156633: (javac) incorrect errors when parsing variable declaration in block statements
Reviewed-by: jjg
2012-04-09 14:31:18 -07:00
Alejandro Murillo
023ad06e46 7159842: new hotspot build - hs24-b08
Reviewed-by: jcoomes
2012-04-07 09:06:55 -07:00
Alejandro Murillo
5186970421 Added tag hs24-b07 for changeset a320e1d913a6 2012-04-07 08:26:15 -07:00
Alejandro Murillo
cd091372af Merge 2012-04-07 08:26:15 -07:00
Sonali Goel
9eb83db3dd 7157626: Create a new test to check major version for a class file
Reviewed-by: jjg
2012-04-06 10:10:44 -07:00
John Cuthbertson
18cb0746b3 Merge 2012-04-06 09:48:34 -07:00
Anthony Petrov
8de79a6398 7148275: [macosx] setIconImages() not working correctly (distorted icon when minimized)
Pass all images provided by user code to the system and let it do the right thing

Reviewed-by: art, swingler
2012-04-06 17:20:49 +04:00
Anthony Petrov
654920cc5b 7124553: [macosx] Need minimum size for titled Frames and JFrames
Forward-port the fix from 7u4 and also eliminate the grow box since we only support OS X 10.7+ that doesn't require it.

Reviewed-by: art, swingler
2012-04-06 17:15:09 +04:00
Anthony Petrov
1862aaa218 7147435: closed/java/awt/Toolkit/Headless/WrappedToolkitTest/WrappedToolkitTest.sh failed since 7u4b11
Forward-port the fix from 7u4 and open-source the test

Reviewed-by: art
2012-04-06 17:03:34 +04:00
Phil Race
0d9cb5e775 7159136: JDK 7 font manager refactoring left JNI header generation and inclusion out of sync
Reviewed-by: igor, jgodinez
2012-04-05 15:17:19 -07:00
Phil Race
42a2707f1b 7159041: Fix for 7152519 causing build breakage
Reviewed-by: igor, jgodinez
2012-04-05 15:14:06 -07:00
Tom Rodriguez
04f50526d3 Merge 2012-04-05 15:08:04 -07:00
David Katleman
29761601c5 Added tag jdk8-b33 for changeset 5ca52c9d6568 2012-04-05 13:05:08 -07:00
David Katleman
9b1c60970b Added tag jdk8-b33 for changeset fceb406055d8 2012-04-05 13:05:00 -07:00
David Katleman
6becffdec6 Added tag jdk8-b33 for changeset c71900b39a90 2012-04-05 13:04:54 -07:00
David Katleman
380bf4c7a9 Added tag jdk8-b33 for changeset e8ae2b095548 2012-04-05 13:04:52 -07:00
David Katleman
f234bdec5b Added tag jdk8-b33 for changeset 468f9d2380ec 2012-04-05 13:04:42 -07:00
David Katleman
6dba3d3fc1 Added tag jdk8-b33 for changeset f02f1e242204 2012-04-05 13:04:35 -07:00
David Katleman
c815af765f Added tag jdk8-b33 for changeset 2f7d5473c3ca 2012-04-05 13:04:31 -07:00
Antonios Printezis
29afa9bf4b 7127697: G1: remove dead code after recent concurrent mark changes
Removed lots of dead code after some recent conc mark changes.

Reviewed-by: brutisso, johnc
2012-04-05 13:57:23 -04:00
Sergey Bylokhov
4acd4d97f3 7125657: [macosx] SpreadSheet demo has the broken display when clicking outside of the table
Reviewed-by: alexp, anthony, art
2012-04-05 20:38:24 +04:00
Sergey Bylokhov
da37ef4781 7124528: [macosx] Selection is not cleared properly in text component
Reviewed-by: anthony, art
2012-04-05 19:43:56 +04:00
Sergey Bylokhov
6412600e72 7149913: [macosx] Deadlock in LWTextComponentPeer
Reviewed-by: anthony, art
2012-04-05 19:22:54 +04:00
Sergey Bylokhov
09db79364b 7124401: [macosx] After call Frame dispose() application continues to work
Reviewed-by: art, alexp
2012-04-05 19:01:43 +04:00
Sergey Bylokhov
90430b3f49 7150105: [macosx] four scroll-buttons don't display. scroll-sliders cursors are TextCursor
Reviewed-by: anthony, art, alexp
2012-04-05 18:27:16 +04:00
Jim Gish
f3e1a941c5 7133806: Typo in Files.newByteChannel javadoc
Reviewed-by: chegar
2012-04-05 13:57:37 +01:00
Darryl Mocek
0881e4a989 7159130: add java/rmi/transport/pinClientSocketFactory to problem list
Reviewed-by: smarks
2012-04-04 15:57:04 -07:00
Lana Steuck
d636893400 Merge 2012-04-04 13:16:52 -07:00
Lana Steuck
6b12eddc42 Merge 2012-04-04 12:35:44 -07:00
Alexander Zuev
f3a8763e5c Merge 2012-04-04 20:32:39 +04:00
Alexander Zuev
38e189dcc0 7153735: [macosx] Text with diacritics is pasted with broken encoding
Reviewed-by: anthony
2012-04-04 20:31:50 +04:00
Chris Hegarty
60b713fd8d 6963841: java/util/concurrent/Phaser/Basic.java fails intermittently
Reviewed-by: dl, dholmes
2012-04-04 15:14:00 +01:00
Alexander Scherbatiy
ea3e5e2a84 7093156: NLS Please change the mnemonic assignment system to avoid translation issue (Swing files)
Reviewed-by: rupashka
2012-04-04 16:27:29 +04:00
Daniel D. Daugherty
f2364fbf5c 7157296: FDS: ENABLE_FULL_DEBUG_SYMBOLS flag should only affect OPT builds
Build option FULL_DEBUG_SYMBOLS=0 only affects OPT builds. Finish enabling ENABLE_FULL_DEBUG_SYMBOLS flag on Windows.

Reviewed-by: ohair, jmelvin, sspitsyn
2012-04-03 12:57:47 -07:00
Daniel D. Daugherty
62756e9f1c 7157296: FDS: ENABLE_FULL_DEBUG_SYMBOLS flag should only affect OPT builds
Build option FULL_DEBUG_SYMBOLS=0 only affects OPT builds. Finish enabling ENABLE_FULL_DEBUG_SYMBOLS flag on Windows.

Reviewed-by: ohair, jmelvin, sspitsyn
2012-04-03 10:17:06 -07:00
Daniel D. Daugherty
6f5472dfe9 7158067: FDS: ENABLE_FULL_DEBUG_SYMBOLS flag should only affect product builds
Build option FULL_DEBUG_SYMBOLS=0 only affects product builds.

Reviewed-by: ohair, jmelvin, sspitsyn
2012-04-03 09:48:34 -07:00
Anthony Petrov
e352bc83f0 7154177: [macosx] An invisible owner frame becomes visible upon clicking a child window
Establish the parent-child relationship for visible windows only

Reviewed-by: serb
2012-04-03 16:14:05 +04:00
Yuka Kamiya
e35eef1257 7158483: (tz) Support tzdata2012c
Reviewed-by: okutsu
2012-04-03 11:52:06 +09:00
Tom Rodriguez
8fc6b2ef2a 7157141: crash in 64 bit with corrupted oops
Reviewed-by: kvn, iveresov
2012-04-02 16:05:56 -07:00
Karen Kinnear
69a42aedf9 Merge 2012-04-01 17:04:26 -04:00
Lana Steuck
1bbe27a179 Merge 2012-03-31 08:43:56 -07:00
Sean Chou
045668b454 7155298: Editable TextArea/TextField are blocking GUI applications from exit
Stop default caret's timer by setVisible(false) when dispose

Reviewed-by: anthony, ant
2012-03-31 16:55:56 +08:00
Kumar Srinivasan
f13a39a361 7158090: (launcher) newly added ToolsOpts.java fails on openjdk builds
Reviewed-by: darcy
2012-03-30 17:22:02 -07:00
Lana Steuck
df0d844ee4 Merge 2012-03-30 16:58:37 -07:00
Lana Steuck
1ae8995f36 Merge 2012-03-30 16:57:50 -07:00
Lana Steuck
e6f9fc68d1 Merge 2012-03-30 16:51:57 -07:00
Bradford Wetmore
7775fea771 7142172: Custom TrustManagers that return null for getAcceptedIssuers will NPE
Reviewed-by: xuelei
2012-03-30 15:43:13 -07:00
Alejandro Murillo
cdd9c702ac 7158137: new hotspot build - hs24-b07
Reviewed-by: jcoomes
2012-03-30 14:18:17 -07:00
Alejandro Murillo
d791ecac01 Added tag hs24-b06 for changeset 020217b7a101 2012-03-30 14:07:59 -07:00
Alejandro Murillo
4b3efa84fa Merge 2012-03-30 14:07:58 -07:00
Maurizio Cimadamore
410c51d5f4 7157165: Regression: code with disjunctive type crashes javac
Bad recovery logic in parser code that checks for generic cast

Reviewed-by: jjg
2012-03-30 19:19:50 +01:00
Maurizio Cimadamore
2283a8eff1 7157688: Regression: common compiler diagnostic features swapped required/found types
Bug in resource key in compiler.properties

Reviewed-by: jjg
2012-03-30 19:19:09 +01:00
David Buck
ecc9a141a1 7154822: forward port fix for Bug 13645891 to JDK8 jcmd (1024 byte file size limit issue)
Changed so that jcmd breaks input into individual lines and sends each one to the jvm separately.

Reviewed-by: dcubed, sla
2012-03-30 10:18:04 -07:00
Anthony Petrov
6dd51e0e8e 7124428: [macosx] Frame.setExtendedState() doesn't work for undecorated windows
Emulate native NSWindow -zoom for undecorated windows

Reviewed-by: art
2012-03-30 18:10:05 +04:00
Jesper Wilhelmsson
dc0184185c Merge 2012-03-30 09:31:26 +02:00
Yong Jeffrey Huang
0d4e0d1ed0 Merge 2012-03-29 21:22:07 -07:00
Yong Jeffrey Huang
7f78d7e54c 7028073: The currency symbol for Peru is wrong
Reviewed-by: naoto
2012-03-29 21:16:58 -07:00
Dean Long
3798179e83 Merge 2012-03-29 23:49:47 -04:00
Coleen Phillimore
f5558edf7b 7131629: Generalize the CMS free list code
Make the FreeChunk, FreeList, TreeList, and BinaryTreeDictionary classes usable outside CMS.

Reviewed-by: brutisso, johnc, jwilhelm
2012-03-29 19:46:24 -07:00
Steve Sides
9d2cd27e59 7156976: improve java tools testing
Reviewed-by: darcy
2012-03-29 17:49:34 -07:00
Michael Fang
0d9edfbb5c Merge 2012-03-29 16:16:56 -07:00
Christine Lu
96603fcc12 Added tag jdk8-b32 for changeset c0968fe1c711 2012-03-29 13:02:32 -07:00
Christine Lu
01c768e4ca Added tag jdk8-b32 for changeset fa6a1e7240ae 2012-03-29 13:02:24 -07:00
Christine Lu
a550556929 Added tag jdk8-b32 for changeset 810c7eb54560 2012-03-29 13:02:20 -07:00
Christine Lu
1a6c31bc2b Added tag jdk8-b32 for changeset b8b4c42fef3c 2012-03-29 13:02:18 -07:00
Christine Lu
5e1d3eebdf Added tag jdk8-b32 for changeset 5bfcff7a3ab2 2012-03-29 13:02:11 -07:00
Christine Lu
9fb46dcea4 Added tag jdk8-b32 for changeset a3f3757b3463 2012-03-29 13:02:07 -07:00
Christine Lu
d251572201 Added tag jdk8-b32 for changeset b160cad4e082 2012-03-29 13:02:02 -07:00
Sergey Bylokhov
044b12b8c1 7124551: [macosx] Once added, Menu shortcut cannot be removed
Reviewed-by: art, anthony
2012-03-29 17:31:48 +04:00
Frederic Parain
5bb1350803 7087969: GarbageCollectorMXBean notification contains ticks vs millis
Reviewed-by: acorn, dcubed, rbackman
2012-03-29 02:12:40 -07:00
Yuka Kamiya
e127bc8acf 7070436: Support Unicode 6.1.0 in JDK 8
Reviewed-by: okutsu
2012-03-29 18:02:36 +09:00
Michael Fang
9b2d299d84 Merge 2012-03-28 16:22:31 -07:00
Yumin Qi
4b95e50bf7 7156960: Incorrect copyright headers in parts of the Serviceability agent
Errant files added as part of 7088955 fix. The Copyright information now corrected with gpl-header template

Reviewed-by: sla, ohair, mbykov
2012-03-28 14:27:38 -07:00
Frederic Parain
193b4ea20e 7156831: The jcmd man page is not included in generated bundles
Reviewed-by: dholmes, sla, dsamersoff
2012-03-28 02:20:09 -07:00
Michael McMahon
1e4dfcfbf0 7134701: [macosx] Support legacy native library names
Reviewed-by: alanb, dcubed
2012-03-27 21:08:52 +01:00
Karen Kinnear
b0fc983013 Merge 2012-03-27 15:28:52 -04:00
Naoto Sato
6f79a87444 7156459: Remove unnecessary get() from Currency.getInstance()
Reviewed-by: chegar, dholmes, mduigou
2012-03-27 10:10:47 -07:00
Anthony Petrov
5c6579f46b 7132692: [macosx] Class com.apple.eawt not functioning
Postpone setting the application delegate until the app is fully initialized

Reviewed-by: art
2012-03-27 15:53:29 +04:00
Anthony Petrov
b6cab6070f 7149085: [macosx] Quit with QuitStrategy CLOSE_ALL_WINDOWS does terminate application
Don't force the termination of the event loop in the Quit action handler

Reviewed-by: art
2012-03-27 15:49:17 +04:00
Anthony Petrov
f1484f0cd4 7150516: [macosx] appletviewer shouldn't link against libX11 on the Mac
Don't link against libX11 on the Mac

Reviewed-by: art
2012-03-27 15:41:55 +04:00
Bengt Rutisson
a6d84bc811 7156764: Remove unused size parameter from some CollectedHeap methods
Some minor cleanups

Reviewed-by: tonyp, jwilhelm
2012-03-27 10:29:59 +02:00
Lana Steuck
1b87d19c87 Merge 2012-03-26 17:32:17 -07:00
Lana Steuck
f931c18437 Merge 2012-03-26 17:31:42 -07:00
Maurizio Cimadamore
51235439c2 7133185: Update 292 overload resolution logic to match JLS
Re-implement special overload resolution support for method handles according to the JLS SE 7 definition

Reviewed-by: jjg, dlsmith, jrose
2012-03-26 15:28:49 +01:00
Maurizio Cimadamore
9b1e54dae3 7151492: Encapsulate check logic into Attr.ResultInfo
ResultInfo class should be used to make attribution code transparent w.r.t. check logic being used

Reviewed-by: jjg, dlsmith
2012-03-26 15:28:22 +01:00
Maurizio Cimadamore
9693d60c23 7151580: Separate DA/DU logic from exception checking logic in Flow.java
DA/DU analysis and exception checking analysis should live in two separate tree visitors

Reviewed-by: gafter, dlsmith, jjg
2012-03-26 15:27:51 +01:00
Jesper Wilhelmsson
6c25e1cdce Merge 2012-03-26 13:22:38 +02:00
Dean Long
50a2f8c16d Merge 2012-03-25 18:08:52 -04:00
John Coomes
2ecd2048d4 7156659: new hotspot build - hs24-b06
Reviewed-by: johnc
2012-03-23 22:34:22 -07:00
John Coomes
f4e105e841 Added tag hs24-b05 for changeset 56f2ec7778c3 2012-03-23 21:31:15 -07:00
John Coomes
258bd8a2ba Merge 2012-03-23 21:31:14 -07:00
Daniel D. Daugherty
86dac44dac 7102323: RFE: enable Full Debug Symbols Phase 1 on Solaris
Add support for ENABLE_FULL_DEBUG_SYMBOLS and ZIP_DEBUGINFO_FILES build flags. Add support for .diz files.

Reviewed-by: dholmes, ohair, sspitsyn
2012-03-23 11:50:33 -07:00
Daniel D. Daugherty
bf4827166b 7136506: FDS: rework jdk repo Full Debug Symbols support
JPRT needs to use the '-y' option with zip on non-Windows control builds in order to preserve symbolic links.

Reviewed-by: dholmes, ohair
2012-03-23 09:17:31 -07:00
Coleen Phillimore
1431a5efd1 7150058: Allocate symbols from null boot loader to an arena for NMT
Move symbol allocation to an arena so NMT doesn't have to track them at startup.

Reviewed-by: never, kamg, zgu
2012-03-23 11:16:05 -04:00
Bengt Rutisson
efa036748b 7103665: HeapWord*ParallelScavengeHeap::failed_mem_allocate(unsigned long,bool)+0x97
Make sure that MutableNUMASpace::ensure_parsability() only calls CollectedHeap::fill_with_object() with valid sizes and make sure CollectedHeap::filler_array_max_size() returns a value that can be converted to an int without overflow

Reviewed-by: azeemj, jmasa, iveresov
2012-03-23 15:28:24 +01:00
Antonios Printezis
450d6e8d9a 7146246: G1: expose some of the -XX flags that drive which old regions to collect during mixed GCs
Make two G1 cmd line flags available in product builds: G1HeapWastePercent (previously called: G1OldReclaimableThresholdPercent) and G1MixedGCCountTarget (previous called: G1MaxMixedGCNum). Also changed the default of the former from 1% to 5% and the default for G1OldCSetRegionLiveThresholdPercent to 90%.

Reviewed-by: azeemj, jwilhelm, johnc
2012-03-23 10:53:19 -04:00
Charles Lee
921ffcf9ef 4310381: Text in multi-row/col JTabbedPane tabs can be truncated/clipped
Reviewed-by: rupashka
2012-03-23 15:16:17 +02:00
Nils Loodin
4d9e420aa7 7156000: Change makefile to reflect refactored classes
Reviewed-by: dholmes
2012-03-23 11:02:11 +01:00
Xue-Lei Andrew Fan
ce4e70b60b 7155051: DNS provider may return incorrect results
Reviewed-by: weijun, chegar
2012-03-26 21:21:55 -07:00
Vinnie Ryan
c0c3fb980d 7152582: PKCS11 tests should use the NSS libraries available in the OS
Reviewed-by: mullan
2012-03-26 17:14:20 +01:00
Daniel D. Daugherty
a2edf55463 7136506: FDS: rework jdk repo Full Debug Symbols support
Add support for ENABLE_FULL_DEBUG_SYMBOLS and ZIP_DEBUGINFO_FILES build flags. Add support for .diz files. Preserve symlinks in zip archives.

Reviewed-by: dholmes, ohair
2012-03-23 09:27:44 -07:00
Michael McMahon
a9afb48611 7155585: Fix ifeq errors in makefiles [macosx]
Reviewed-by: andrew, anthony, ohrstrom, dsamersoff
2012-03-23 11:28:58 +00:00
Tom Rodriguez
cff05c3432 Merge 2012-03-22 13:54:26 -07:00
David Katleman
ad08800a5d Added tag jdk8-b31 for changeset 780ca4f4edd7 2012-03-22 12:41:36 -07:00
David Katleman
dfaa0d4cdf Added tag jdk8-b31 for changeset 2c45788139a6 2012-03-22 12:41:26 -07:00
David Katleman
6b0b5941da Added tag jdk8-b31 for changeset 3df600e3cd1e 2012-03-22 12:41:20 -07:00
David Katleman
2372340c55 Added tag jdk8-b31 for changeset 3de32ba5241d 2012-03-22 12:41:18 -07:00
David Katleman
edbf46c2da Added tag jdk8-b31 for changeset 5bd77c0f5009 2012-03-22 12:41:09 -07:00
David Katleman
98a06dbf63 Added tag jdk8-b31 for changeset 3977c85f7f66 2012-03-22 12:41:05 -07:00
David Katleman
74eed1eb66 Added tag jdk8-b31 for changeset 5be32b2f3be2 2012-03-22 12:40:59 -07:00
Michael Fang
e92197ac27 Merge 2012-03-22 10:24:13 -07:00
Pavel Porvatov
e7fc59fe99 6888634: test/closed/javax/swing/Popup/TaskbarPositionTest.java fails
Reviewed-by: alexp
2012-03-22 17:10:48 +02:00
Jonathan Lu
650337cafa 7152519: Dependency on non-POSIX header file <link.h> causes portability problem
Reviewed-by: prr, igor
2012-03-22 12:47:39 +08:00
Shi Jun Zhang
550028f6a1 7155300: Include pthread.h on all POSIX platforms except Solaris to improve portability
Reviewed-by: alanb, dholmes
2012-03-22 12:30:43 +08:00
David Buck
733b1d638e 7104147: the fix for cr6887286 was not appropriate for backporting
Memory leak in the list of ImageObservers watching an object. We use recursion to iterate over the list. So once the list gets too big, we overflow the stack. Fix is to execute a prune operation on ever add, so there is no way we can get indefinite growth of stale nodes.

Reviewed-by: prr, flar
2012-03-21 18:41:42 -07:00
Lana Steuck
be34a18712 Merge 2012-03-21 13:39:42 -07:00
Lana Steuck
a3f1271a63 Merge 2012-03-21 13:38:55 -07:00
Lana Steuck
9fb30a7cc0 Merge 2012-03-21 13:37:24 -07:00
Lana Steuck
3332c6a1b6 Merge 2012-03-21 13:36:03 -07:00
David Katleman
d3a8c491bf Merge 2012-03-21 12:18:56 -07:00
David Katleman
f3883b4d54 Merge 2012-03-21 12:18:06 -07:00
Naoto Sato
b33626e87a 7145454: JVM wide monitor lock in Currency.getInstance(String)
Reviewed-by: okutsu
2012-03-21 10:10:38 -07:00
Alexander Zuev
ba42773298 7144063: [macosx] Swing JMenu mnemonic doesn't work; hint misleading; cross symbol typed
Reviewed-by: leonidr, skovatch, swingler
2012-03-21 17:12:31 +04:00
Dmitry Cherepanov
40e8f0fb2a 7150349: [macosx] Applets attempting to show popup menus activate the applet process
Reviewed-by: ant
2012-03-21 15:25:12 +04:00
Dmitry Cherepanov
4fc6443589 7150345: [macosx] Can't type into applets
Reviewed-by: ant
2012-03-21 14:31:29 +04:00
Valerie Peng
3a8e9e6104 7146728: Inconsistent length for the generated secret using DH key agreement impl from SunJCE and PKCS11
Always return the secret in the same length as the modulus.

Reviewed-by: wetmore
2012-03-20 15:06:13 -07:00
James Melvin
3693f0fe43 7144328: Improper commandlines for -XX:+-UnlockCommercialFeatures require proper warning/error messages
Provide custom error messages for locked commercial feature options which are not first unlocked.

Reviewed-by: dcubed, jcoomes, kamg
2012-03-20 16:46:39 -04:00
Vladimir Kozlov
08973326c4 7154997: assert(false) failed: not G1 barrier raw StoreP
Skip only G1 cases and explicitly set global escape state in unsafe cases.

Reviewed-by: never
2012-03-20 13:10:13 -07:00
Staffan Larsen
0041a04fb2 7154114: jstat tests failing on non-english locales
7154113: jcmd, jps and jstat tests failing when there are unknown Java processes on the system

Reviewed-by: rbackman, kamg, dsamersoff
2012-03-20 12:48:48 +01:00
Weijun Wang
7b947b7a42 7152176: More krb5 tests
Reviewed-by: xuelei
2012-03-20 19:12:21 +08:00
Erik Joelsson
17888bc3c0 7153266: Adjustments to corba strip property utility (neutral to builds)
Fixes to sync up with jdk8 build-infra project.

Reviewed-by: ohair, tbell, ohrstrom
2012-03-19 13:03:37 -07:00
Oleg Pekhovskiy
310990d4dc 7128738: dragged dialog freezes system on dispose
Reviewed-by: anthony
2012-03-19 21:22:18 +04:00
Staffan Larsen
e0a4e74f80 7152798: TEST_BUG: sun/management/HotspotClassLoadingMBean/GetClassLoadingTime.java does not compile
Make sure the test is compiled, run and finds it supporting classes

Reviewed-by: alanb, sspitsyn, rbackman
2012-03-19 14:18:36 +01:00
Erik Joelsson
cfc6c74d02 7141246: build-infra merge: Introduce new JVM_VARIANT* to control which kind of jvm gets built
Reviewed-by: dholmes, ohair
2012-03-19 10:09:24 +01:00
Staffan Larsen
a3c4486681 7152800: All tests using the attach API fail with "well-known file is not secure" on Mac OS X
Create well-known file with effective group of the current process

Reviewed-by: kamg, dcubed
2012-03-19 20:13:17 +01:00
Dean Long
41d6c584cd Merge 2012-03-17 17:31:59 -04:00
Alejandro Murillo
c06123ae0c 7154706: new hotspot build - hs23-b05
Reviewed-by: jcoomes
2012-03-17 00:27:39 -07:00
Alejandro Murillo
587e9b4f49 Added tag hs24-b04 for changeset d87d6ad0b075 2012-03-17 00:10:12 -07:00
Alejandro Murillo
09dcdbe0ff Merge 2012-03-17 00:10:12 -07:00
John Coomes
7e1dbd7a03 Merge 2012-03-16 23:52:03 -07:00
John Coomes
0192f2b6c8 Merge 2012-03-16 23:45:05 -07:00
James Melvin
c3183e79ed 7130404: [macosx] "os.arch" value should be "x86_64" for compatibility with Apple JDK6
On Mac OS X, align system property "os.arch" with Apple legacy JDKs.  Also, improve os.name string matching by using contains() method instead of .startsWith().

Reviewed-by: dcubed, phh, ohair, katleman
2012-03-16 15:13:22 -04:00
Kurchi Subhra Hazra
9940e879d4 7152007: Fix warnings in sun/rmi/rmic
Minor code changes to remove warnings in sun/rmi/rmic

Reviewed-by: chegar, smarks
2012-03-16 11:52:48 -07:00
Michael Fang
a6b92a1d83 Merge 2012-03-16 10:20:06 -07:00
Bengt Rutisson
a99b0c08d4 7130974: G1: Remove G1ParCopyHelper
Reviewed-by: tonyp, johnc
2012-03-16 09:52:57 +01:00
Igor Veresov
cd47d982d9 7154333: JVM fails to start if -XX:+AggressiveHeap is set
Don't set CompilationPolicyChoice with AggressiveHeap

Reviewed-by: never
2012-03-15 16:38:56 -07:00
Michael Fang
b29242fed4 Merge 2012-03-15 16:04:28 -07:00
David Katleman
ba57c8f33a Added tag jdk8-b30 for changeset 5fc6bf869751 2012-03-15 15:18:24 -07:00
David Katleman
d87a192fe6 Added tag jdk8-b30 for changeset b1e7314664f0 2012-03-15 15:17:02 -07:00
David Katleman
ed057d7f67 Added tag jdk8-b30 for changeset 75a5a7153772 2012-03-15 15:16:27 -07:00
David Katleman
400aa66520 Added tag jdk8-b30 for changeset a32dddd6ba7c 2012-03-15 15:16:15 -07:00
David Katleman
7a0d223ed6 Added tag jdk8-b30 for changeset aa03c70c8688 2012-03-15 15:15:16 -07:00
David Katleman
a77ac5eb39 Added tag jdk8-b30 for changeset f7f3ea6ae9d7 2012-03-15 15:14:52 -07:00
David Katleman
518ec0c168 Added tag jdk8-b30 for changeset c4732b3f0d31 2012-03-15 15:14:36 -07:00
Nils Loodin
2c07f4154e 7148488: Whitebox tests for the Diagnostic Framework Parser
Reviewed-by: brutisso, sla, mgerdin
2012-03-15 13:37:13 +01:00
Yong Jeffrey Huang
b3e79c6c6c Merge 2012-03-14 23:19:52 -07:00
Yong Jeffrey Huang
97292b3883 7085757: Currency Data: ISO 4217 Amendment 152
Reviewed-by: naoto
2012-03-14 23:07:21 -07:00
Serguei Spitsyn
7d0f6b051c 7123170: JCK vm/jvmti/ResourceExhausted/resexh001/resexh00101/ tests fails since 7u4 b02
The JVMTI ResourceExhausted events must be generated in all places where OOME is thrown

Reviewed-by: acorn, coleenp, dcubed, dholmes, dsamersoff, jwilhelm, tonyp
2012-03-14 20:06:48 -07:00
Jonathan Gibbons
f6faa640b7 7150784: bad copyright date in file
Reviewed-by: darcy
2012-03-14 13:53:41 -07:00
David Katleman
69aa6d19c3 Merge 2012-03-14 13:50:37 -07:00
David Katleman
42fca8fd3a Merge 2012-03-14 13:49:09 -07:00
Michael Fang
cffc4ccb30 Merge 2012-03-14 10:25:15 -07:00
Lana Steuck
8a283686f2 Merge 2012-03-14 08:56:57 -07:00
Alexey Ragozin
2c9482428f 7068625: Testing 8 bytes of card table entries at a time speeds up card-scanning
Check clean words instead of clean bytes

Reviewed-by: jcoomes, jmasa, jwilhelm, ysr
2012-03-14 12:49:27 +01:00
Rickard Bäckman
b943c9c83d 7145419: com/sun/jdi/JdbMethodExitTest.sh fails when a background thread is generating events
Add more packages to filter avoids failing on events from background thread.

Reviewed-by: acorn, sspitsyn, sla
2012-03-14 08:43:28 +01:00
Jonathan Lu
005f647e13 7153343: Dependency on non-POSIX header file <link.h> causes portability problem
Remove the unneccessary link.h

Reviewed-by: alanb, chegar
2012-03-16 10:47:25 +08:00
Valerie Peng
c6974571dd Merge 2012-03-15 14:40:53 -07:00
Valerie Peng
3e2f8ef7eb 7130959: Tweak 7058133 fix for JDK 8 (javah makefile changes)
Fixed JAVAHFLAGS setting to use -bootclasspath.

Reviewed-by: wetmore
2012-03-15 14:28:48 -07:00
Kurchi Subhra Hazra
56132c0447 7045655: An empty InMemoryCookieStore should not return true for removeAll
CookieStore.removeAll() should return false for an empty CookieStore

Reviewed-by: chegar
2012-03-15 13:21:16 -07:00
Michael McMahon
baec1b577c Merge 2012-03-15 16:46:47 +00:00
Michael McMahon
7138ff4750 7151898: Check for LANG in Mac OS X jdk build sanity check [macosx]
Reviewed-by: ohair, smarks
2012-03-15 16:45:55 +00:00
Frederic Parain
b497391969 7074616: java.lang.management.ManagementFactory.getPlatformManagementInterfaces fails
Reviewed-by: dholmes, sla
2012-03-14 09:03:08 -07:00
Lana Steuck
85d4c76d59 Merge 2012-03-14 08:28:25 -07:00
Shi Jun Zhang
f2ca2f4835 7152948: DatagramDispatcher.c should memset msghdr to make it portable to other platforms
Reviewed-by: alanb, chegar
2012-03-14 15:14:52 +00:00
Nils Eliasson
ea28f47062 7152955: print_method crashes with null root
Reviewed-by: kvn, never
2012-03-13 20:54:56 -07:00
Lana Steuck
508c6f404d Merge 2012-03-13 20:24:28 -07:00
Lana Steuck
fa178171b6 Merge 2012-03-13 20:23:43 -07:00
Lana Steuck
d25dbaffeb Merge 2012-03-13 19:58:39 -07:00
Jonathan Gibbons
5fc1a2e66e 7150368: javac should include basic ability to generate native headers
Reviewed-by: mcimadamore, darcy, ohrstrom
2012-03-13 15:44:26 -07:00
Jonathan Gibbons
9f1ffb53dc 7150368: javac should include basic ability to generate native headers
Reviewed-by: mcimadamore, darcy, ohrstrom
2012-03-13 15:43:40 -07:00
Gary Collins
c0d6562b8b Merge 2012-03-13 15:37:50 -07:00
Bengt Rutisson
4a2a6ebe99 7152954: G1: Native memory leak during full GCs
Add destructor to TruncatedSeq and call delete when necessary

Reviewed-by: johnc, tonyp
2012-03-13 21:12:53 +01:00
John Cuthbertson
79c90a15fa 7143511: G1: Another instance of high GC Worker Other time (50ms)
Tiered compilation has increased the number of nmethods in the code cache. This has, in turn, significantly increased the number of marked nmethods processed during the StrongRootsScope destructor. Create a specialized version of CodeBlobToOopClosure for G1 which places only those nmethods that contain pointers into the collection set on to the marked nmethods list.

Reviewed-by: iveresov, tonyp
2012-03-13 11:05:32 -07:00
Jiangli Zhou
b9e6895d3a 7109878: The instanceKlass EnclosingMethhod attribute fields can be folded into the _inner_class field
Fold instanceKlass::_enclosing_method_class_index and instanceKlass::_enclosing_method_method_index into the instanceKlass::_inner_classes array.

Reviewed-by: never, coleenp
2012-03-13 13:50:48 -04:00
Nils Eliasson
3683f82865 7152961: InlineTree::should_not_inline may exit prematurely
Reviewed-by: kvn, never
2012-03-13 10:03:59 -07:00
Chris Hegarty
01465edf46 Merge 2012-03-13 12:08:24 +00:00
Pavel Porvatov
089eea6bef 7027139: getFirstIndex() does not return the first index that has changed
Reviewed-by: alexp
2012-03-13 13:18:07 +02:00
Sean Coffey
0ec2d0eca1 7149608: Default TZ detection fails on linux when symbolic links to non default location used
Reviewed-by: alanb, okutsu
2012-03-13 11:01:33 +00:00
Chris Hegarty
015d7657e7 7152796: TEST_BUG: java/net/Socks/SocksV4Test.java does not terminate
Reviewed-by: alanb
2012-03-13 09:33:50 +00:00
Tom Rodriguez
2d308ccc78 Merge 2012-03-12 19:54:41 -07:00
Kelly O'Hair
d92843c4dd Merge 2012-03-12 16:41:49 -07:00
Kelly O'Hair
de7785d2e8 Merge 2012-03-12 16:40:38 -07:00
Nils Eliasson
7b7d3507db 7152957: VM crashes with assert(false) failed: bad AD file
Reviewed-by: kvn, never
2012-03-12 15:28:07 -07:00
John Cuthbertson
006def0451 7147724: G1: hang in SurrogateLockerThread::manipulatePLL
Attempting to initiate a marking cycle when allocating a humongous object can, if a marking cycle is successfully initiated by another thread, result in the allocating thread spinning until the marking cycle is complete. Eliminate a deadlock between the main ConcurrentMarkThread, the SurrogateLocker thread, the VM thread, and a mutator thread waiting on the SecondaryFreeList_lock (while free regions are going to become available) by not manipulating the pending list lock during the prologue and epilogue of the cleanup pause.

Reviewed-by: brutisso, jcoomes, tonyp
2012-03-12 14:59:00 -07:00
Nils Loodin
8950ee8d8e 7154517: Build error in hotspot-gc without precompiled headers
Reviewed-by: jcoomes, brutisso
2012-03-16 16:14:04 +01:00
Mikael Gerdin
07299b0a1e 7152791: wbapi tests fail on cygwin
Detect cygwin prescence when setting up PLATFORM. Translate cygwin style paths before passing them on to jtreg.

Reviewed-by: jcoomes, brutisso
2012-03-21 08:34:23 +01:00
John Coomes
46a6f9366d 7154724: jdk7u4 test properties missing from jprt.properties
Reviewed-by: brutisso
2012-03-20 19:36:59 -07:00
Igor Veresov
12b4b456cb 7151089: PS NUMA: NUMA allocator should not attempt to free pages when using SHM large pages
Don't attempt to uncommit SHM-based large pages

Reviewed-by: kvn
2012-03-12 13:12:07 -07:00
Vladimir Kozlov
e5f92a2396 7147744: CTW: assert(false) failed: infinite EA connection graph build
Rewrote Connection graph construction code in EA to reduce time spent there.

Reviewed-by: never
2012-03-12 10:46:47 -07:00
Sean Coffey
bfbf85b7a7 7148584: Jar tools fails to generate manifest correctly when boundary condition hit
Reviewed-by: alanb, sherman
2012-03-12 11:30:28 +00:00
Alan Bateman
3ecf3e0fa1 7152866: Tests not run because they are missing the @run tag
Reviewed-by: chegar, dholmes
2012-03-12 10:17:18 +00:00
Sean Chou
0e1c5e521a 7151427: Fix the potential memory leak in error handling code in X11SurfaceData.c
Free the memory in the error handling code.

Reviewed-by: prr, jgodinez, bae
2012-03-12 13:30:16 +08:00
Alejandro Murillo
db0efee3d4 7152700: new hotspot build - hs24-b04
Reviewed-by: jcoomes
2012-03-09 13:34:45 -08:00
Alejandro Murillo
b8f2831c68 Added tag hs24-b03 for changeset c1a6253f0d55 2012-03-09 13:08:18 -08:00
Alejandro Murillo
323e3ce5ab Merge 2012-03-09 13:08:18 -08:00
Lana Steuck
d5a7ac9412 Merge 2012-03-09 11:59:26 -08:00
Lana Steuck
ae6769c77d Merge 2012-03-09 11:58:08 -08:00
Lana Steuck
37600f669c Merge 2012-03-09 11:57:06 -08:00
Lana Steuck
b819164293 Merge 2012-03-09 11:56:14 -08:00
Lana Steuck
32109cb7cf Merge 2012-03-09 11:56:06 -08:00
Lana Steuck
8a90e1d979 Merge 2012-03-09 11:55:21 -08:00
Michael Fang
72218042af Merge 2012-03-09 10:23:38 -08:00
Maurizio Cimadamore
f6ee974ac7 7151802: compiler update caused sqe test failed
Fix regression caused by 7144506

Reviewed-by: jjg, dlsmith
2012-03-09 17:10:56 +00:00
Tom Rodriguez
b255b0eccc Merge 2012-03-09 08:34:36 -08:00
Karen Kinnear
a0e6b7797c Merge 2012-03-09 00:28:20 -05:00
David Katleman
7c2e062ccb Added tag jdk8-b29 for changeset cc866298b20c 2012-03-08 20:35:26 -08:00
David Katleman
dd9799aaa2 Added tag jdk8-b29 for changeset cad5cb628235 2012-03-08 20:35:09 -08:00
David Katleman
805065faa4 Added tag jdk8-b29 for changeset 756dbb31c9b0 2012-03-08 20:34:58 -08:00
David Katleman
545c4a7aa7 Added tag jdk8-b29 for changeset c7420b6abb44 2012-03-08 20:34:54 -08:00
David Katleman
9dfe7b710e Added tag jdk8-b29 for changeset 463281379d91 2012-03-08 20:34:29 -08:00
David Katleman
924af8d1c0 Added tag jdk8-b29 for changeset 9bf30f58c4bc 2012-03-08 20:34:25 -08:00
David Katleman
99d808ac37 Added tag jdk8-b29 for changeset c4fd9c6f75fb 2012-03-08 20:34:18 -08:00
Kelly O'Hair
9dad666a66 7152425: Fix copyright notices on 12 files in jaxws
Reviewed-by: mbykov
2012-03-08 18:20:15 -08:00
Lana Steuck
76177f7a48 Merge 2012-03-08 15:26:32 -08:00
Mike Duigou
bbd20b347d 7151595: Disable creation of db demos if NO_DEMOS is specified
Reviewed-by: weijun, dholmes
2012-03-08 13:44:33 -08:00
Lana Steuck
b5a0dffd57 Merge 2012-03-08 14:22:15 -08:00
Lana Steuck
086d1992b6 Merge 2012-03-08 08:19:58 -08:00
Lana Steuck
ac3052168c Merge 2012-03-08 08:18:56 -08:00
Joe Darcy
cf99e1e9f8 7151008: Add library support for repeating annotations in java.lang.annotation
Reviewed-by: mcimadamore, jjg
2012-03-08 08:04:52 -08:00
Michael McMahon
57a9560def 7152186: java.awt.HeadlessException when running AWT apps [macosx]
Reviewed-by: anthony
2012-03-08 14:38:26 +00:00
Daniel D. Daugherty
c8ff3bb0cc 7152206: anti-delta the fix for 7152031
Backout the fix for 7152031; the real bug to be fixed in jdk repo.

Reviewed-by: michaelm
2012-03-08 06:33:26 -08:00
Deepak Bhole
1ee1acb94f 7150392: Linux build breaks with GCC 4.7 due to unrecognized option
Remove -mimpure-text option.

Reviewed-by: ohair, dholmes, phh, andrew
2012-03-08 14:04:44 +00:00
Lana Steuck
69ee813add Merge 2012-03-07 22:40:20 -08:00
Lana Steuck
247874eb43 Merge 2012-03-07 22:36:43 -08:00
Lana Steuck
1a29d97330 Merge 2012-03-07 22:36:38 -08:00
David Holmes
7352937e75 7092140: Test: java/util/concurrent/locks/Lock/TimedAcquireLeak.java fails on SE-E due to -XX:-UsePerfData
Add -XX:+UsePerfData to invocation of exec'd JVM

Reviewed-by: alanb, chegar
2012-03-08 00:46:33 -05:00
Daniel D. Daugherty
ec59e22ec0 7152031: Hotspot needs updated xawt path [macosx]
Update to use the right path on MacOS X.

Reviewed-by: michaelm, jcoomes, amurillo
2012-03-07 14:58:17 -08:00
David Katleman
ebc31d93d9 Merge 2012-03-07 13:47:22 -08:00
David Katleman
1741706a00 Merge 2012-03-07 13:46:18 -08:00
David Katleman
15459fceae Merge 2012-03-07 13:45:18 -08:00
Michael Fang
1ca90839e4 Merge 2012-03-07 10:18:10 -08:00
Pavel Porvatov
304f1400f9 7146377: closed/javax/swing/DataTransfer/4876520/bug4876520.java failed since b08 in jdk 8
Reviewed-by: alexp
2012-03-07 20:07:18 +02:00
Alexander Scherbatiy
5f01fd2c54 7132808: [macosx] closed/javax/swing/JFileChooser/4524490/bug4524490.java fails on MacOS
Reviewed-by: alexp
2012-03-07 17:57:12 +04:00
Fredrik Öhrström
d74cd0bff8 7150579: Moved ant code into a separate package, anttasks
To allow langtools to be built without ant, the ant tasks were moved to a separated package. The packages were also renamed to proper lower case package names.

Reviewed-by: jjg
2012-03-07 13:11:27 +01:00
Weijun Wang
0bc11358bb 6961765: Double byte characters corrupted in DN for LDAP referrals
Reviewed-by: vinnie
2012-03-07 10:15:41 +08:00
Tom Rodriguez
9a93f60e34 7150390: JFR test crashed on assert(_jni_lock_count == count) failed: must be equal
Reviewed-by: dholmes, minqi, kvn, coleenp
2012-03-06 16:32:23 -08:00
Kelly O'Hair
bc113af571 7150322: Stop using drop source bundles in jaxws
Reviewed-by: darcy, ohrstrom
2012-03-06 16:09:35 -08:00
Alan Bateman
3269d85838 7113349: Initial changeset for Macosx port to jdk
Co-authored-by: Alexander Potochkin <alexander.potochkin@oracle.com>
Co-authored-by: Alexander Zuev <alexander.zuev@oracle.com>
Co-authored-by: Andrew Brygin <andrew.brygin@oracle.com>
Co-authored-by: Artem Ananiev <artem.ananiev@oracle.com>
Co-authored-by: Alex Strange <astrange@apple.com>
Co-authored-by: Bino George <bino@apple.com>
Co-authored-by: Christine Lu <christine.lu@oracle.com>
Co-authored-by: David Katleman <david.katleman@oracle.com>
Co-authored-by: David Durrence <david_durrence@apple.com>
Co-authored-by: Dmitry Cherepanov <dmitry.cherepanov@oracle.com>
Co-authored-by: Greg Lewis <glewis@eyesbeyond.com>
Co-authored-by: Kevin Miller <kevin_m_miller@apple.com>
Co-authored-by: Kurt Miller <kurt@intricatesoftware.com>
Co-authored-by: Landon Fuller <landonf@plausiblelabs.com>
Co-authored-by: Leonid Romanov <leonid.romanov@oracle.com>
Co-authored-by: Loefty Walkowiak <loefty@apple.com>
Co-authored-by: Mark Reinhold <mark.reinhold@oracle.com>
Co-authored-by: Naoto Sato <naoto.sato@oracle.com>
Co-authored-by: Philip Race <philip.race@oracle.com>
Co-authored-by: Roger Hoover <rhoover@apple.com>
Co-authored-by: Scott Kovatch <scott.kovatch@oracle.com>
Co-authored-by: Sergey ByloKhov <sergey.bylokhov@oracle.com>
Co-authored-by: Mike Swingler <swingler@apple.com>
Co-authored-by: Tomas Hurka <tomas.hurka@oracle.com>
Reviewed-by: jjh, alanb, dholmes, anthony, ohrstrom, ksrini, jrose, weijun, smarks
2012-03-06 20:34:38 +00:00
Alan Bateman
041b97af42 7113349: Initial changeset for Macosx port to jdk
Co-authored-by: Alexander Potochkin <alexander.potochkin@oracle.com>
Co-authored-by: Alexander Zuev <alexander.zuev@oracle.com>
Co-authored-by: Andrew Brygin <andrew.brygin@oracle.com>
Co-authored-by: Artem Ananiev <artem.ananiev@oracle.com>
Co-authored-by: Alex Strange <astrange@apple.com>
Co-authored-by: Bino George <bino@apple.com>
Co-authored-by: Christine Lu <christine.lu@oracle.com>
Co-authored-by: David Katleman <david.katleman@oracle.com>
Co-authored-by: David Durrence <david_durrence@apple.com>
Co-authored-by: Dmitry Cherepanov <dmitry.cherepanov@oracle.com>
Co-authored-by: Greg Lewis <glewis@eyesbeyond.com>
Co-authored-by: Kevin Miller <kevin_m_miller@apple.com>
Co-authored-by: Kurt Miller <kurt@intricatesoftware.com>
Co-authored-by: Landon Fuller <landonf@plausiblelabs.com>
Co-authored-by: Leonid Romanov <leonid.romanov@oracle.com>
Co-authored-by: Loefty Walkowiak <loefty@apple.com>
Co-authored-by: Mark Reinhold <mark.reinhold@oracle.com>
Co-authored-by: Naoto Sato <naoto.sato@oracle.com>
Co-authored-by: Philip Race <philip.race@oracle.com>
Co-authored-by: Roger Hoover <rhoover@apple.com>
Co-authored-by: Scott Kovatch <scott.kovatch@oracle.com>
Co-authored-by: Sergey ByloKhov <sergey.bylokhov@oracle.com>
Co-authored-by: Mike Swingler <swingler@apple.com>
Co-authored-by: Tomas Hurka <tomas.hurka@oracle.com>
Reviewed-by: jjh, alanb, dholmes, anthony, ohrstrom, ksrini, jrose, weijun, smarks
2012-03-06 20:27:12 +00:00
Alan Bateman
597f277dca 7113349: Initial changeset for Macosx port to jdk
Co-authored-by: Alexander Potochkin <alexander.potochkin@oracle.com>
Co-authored-by: Alexander Zuev <alexander.zuev@oracle.com>
Co-authored-by: Andrew Brygin <andrew.brygin@oracle.com>
Co-authored-by: Artem Ananiev <artem.ananiev@oracle.com>
Co-authored-by: Alex Strange <astrange@apple.com>
Co-authored-by: Bino George <bino@apple.com>
Co-authored-by: Christine Lu <christine.lu@oracle.com>
Co-authored-by: David Katleman <david.katleman@oracle.com>
Co-authored-by: David Durrence <david_durrence@apple.com>
Co-authored-by: Dmitry Cherepanov <dmitry.cherepanov@oracle.com>
Co-authored-by: Greg Lewis <glewis@eyesbeyond.com>
Co-authored-by: Kevin Miller <kevin_m_miller@apple.com>
Co-authored-by: Kurt Miller <kurt@intricatesoftware.com>
Co-authored-by: Landon Fuller <landonf@plausiblelabs.com>
Co-authored-by: Leonid Romanov <leonid.romanov@oracle.com>
Co-authored-by: Loefty Walkowiak <loefty@apple.com>
Co-authored-by: Mark Reinhold <mark.reinhold@oracle.com>
Co-authored-by: Naoto Sato <naoto.sato@oracle.com>
Co-authored-by: Philip Race <philip.race@oracle.com>
Co-authored-by: Roger Hoover <rhoover@apple.com>
Co-authored-by: Scott Kovatch <scott.kovatch@oracle.com>
Co-authored-by: Sergey ByloKhov <sergey.bylokhov@oracle.com>
Co-authored-by: Mike Swingler <swingler@apple.com>
Co-authored-by: Tomas Hurka <tomas.hurka@oracle.com>
Reviewed-by: jjh, alanb, dholmes, anthony, ohrstrom, ksrini, jrose, weijun, smarks
2012-03-06 20:26:03 +00:00
Alan Bateman
4b62ceec81 7113349: Initial changeset for Macosx port to jdk
Co-authored-by: Alexander Potochkin <alexander.potochkin@oracle.com>
Co-authored-by: Alexander Zuev <alexander.zuev@oracle.com>
Co-authored-by: Andrew Brygin <andrew.brygin@oracle.com>
Co-authored-by: Artem Ananiev <artem.ananiev@oracle.com>
Co-authored-by: Alex Strange <astrange@apple.com>
Co-authored-by: Bino George <bino@apple.com>
Co-authored-by: Christine Lu <christine.lu@oracle.com>
Co-authored-by: David Katleman <david.katleman@oracle.com>
Co-authored-by: David Durrence <david_durrence@apple.com>
Co-authored-by: Dmitry Cherepanov <dmitry.cherepanov@oracle.com>
Co-authored-by: Greg Lewis <glewis@eyesbeyond.com>
Co-authored-by: Kevin Miller <kevin_m_miller@apple.com>
Co-authored-by: Kurt Miller <kurt@intricatesoftware.com>
Co-authored-by: Landon Fuller <landonf@plausiblelabs.com>
Co-authored-by: Leonid Romanov <leonid.romanov@oracle.com>
Co-authored-by: Loefty Walkowiak <loefty@apple.com>
Co-authored-by: Mark Reinhold <mark.reinhold@oracle.com>
Co-authored-by: Naoto Sato <naoto.sato@oracle.com>
Co-authored-by: Philip Race <philip.race@oracle.com>
Co-authored-by: Roger Hoover <rhoover@apple.com>
Co-authored-by: Scott Kovatch <scott.kovatch@oracle.com>
Co-authored-by: Sergey ByloKhov <sergey.bylokhov@oracle.com>
Co-authored-by: Mike Swingler <swingler@apple.com>
Co-authored-by: Tomas Hurka <tomas.hurka@oracle.com>
Reviewed-by: jjh, alanb, dholmes, anthony, ohrstrom, ksrini, jrose, weijun, smarks
2012-03-06 20:25:43 +00:00
Alan Bateman
ec8aa63648 7113349: Initial changeset for Macosx port to jdk
Co-authored-by: Alexander Potochkin <alexander.potochkin@oracle.com>
Co-authored-by: Alexander Zuev <alexander.zuev@oracle.com>
Co-authored-by: Andrew Brygin <andrew.brygin@oracle.com>
Co-authored-by: Artem Ananiev <artem.ananiev@oracle.com>
Co-authored-by: Alex Strange <astrange@apple.com>
Co-authored-by: Bino George <bino@apple.com>
Co-authored-by: Christine Lu <christine.lu@oracle.com>
Co-authored-by: David Katleman <david.katleman@oracle.com>
Co-authored-by: David Durrence <david_durrence@apple.com>
Co-authored-by: Dmitry Cherepanov <dmitry.cherepanov@oracle.com>
Co-authored-by: Greg Lewis <glewis@eyesbeyond.com>
Co-authored-by: Kevin Miller <kevin_m_miller@apple.com>
Co-authored-by: Kurt Miller <kurt@intricatesoftware.com>
Co-authored-by: Landon Fuller <landonf@plausiblelabs.com>
Co-authored-by: Leonid Romanov <leonid.romanov@oracle.com>
Co-authored-by: Loefty Walkowiak <loefty@apple.com>
Co-authored-by: Mark Reinhold <mark.reinhold@oracle.com>
Co-authored-by: Naoto Sato <naoto.sato@oracle.com>
Co-authored-by: Philip Race <philip.race@oracle.com>
Co-authored-by: Roger Hoover <rhoover@apple.com>
Co-authored-by: Scott Kovatch <scott.kovatch@oracle.com>
Co-authored-by: Sergey ByloKhov <sergey.bylokhov@oracle.com>
Co-authored-by: Mike Swingler <swingler@apple.com>
Co-authored-by: Tomas Hurka <tomas.hurka@oracle.com>
Reviewed-by: jjh, alanb, dholmes, anthony, ohrstrom, ksrini, jrose, weijun, smarks
2012-03-06 20:25:18 +00:00
Maurizio Cimadamore
271ed603e1 7148556: Implementing a generic interface causes a public clone() to become inaccessible
Implementation of Resolve.isOverriddenIn() should distinguish between classes/interfaces

Reviewed-by: jjg
2012-03-06 16:50:32 +00:00
Maurizio Cimadamore
6acf436edc 7151070: NullPointerException in Resolve.isAccessible
Spurious accessibility check in TransTypes

Reviewed-by: jjg
2012-03-06 16:48:29 +00:00
Maurizio Cimadamore
954444af1c 7133238: Merge proto-kind and proto-type into a single result class
Restructure attribution code so that the check-logic can be encapsulated into a single class

Reviewed-by: jjg, dlsmith
2012-03-06 13:29:45 +00:00
Maurizio Cimadamore
d5036d16cd 7144506: Attr.checkMethod should be called after inference variables have been fixed
Unify post-inference sanity check with Attr.checkMethod

Reviewed-by: jjg, dlsmith
2012-03-06 13:28:05 +00:00
Maurizio Cimadamore
21312c5617 7148622: Some diagnostic methods do not go through Log.report
Deferred lint diagnostics ignore Log settings such as deferred diagnostics

Reviewed-by: jjg
2012-03-06 13:26:36 +00:00
Rickard Bäckman
cf406f37e3 7160570: Intrinsification support for tracing framework
Reviewed-by: sla, never
2012-03-06 12:36:59 +01:00
Daniel D. Daugherty
70685b85af Merge 2012-04-15 15:37:20 -07:00
Coleen Phillimore
b1550c24b9 Merge 2012-04-13 08:11:36 -07:00
Coleen Phillimore
7359b90813 7160467: Fix test for 7158988
Ended up checking in FieldMonitor.java as TestPostFieldModification.java

Reviewed-by: kamg
2012-04-12 22:03:05 -04:00
Dean Long
0e7ca534eb Merge 2012-04-12 18:41:24 -04:00
Rickard Bäckman
2ea955a642 7160924: jvmti: GetPhase returns incorrect phase before VMInit event is issued
Reviewed-by: acorn, dcubed
2012-04-12 13:24:08 +02:00
Bob Vandette
4d6f8e3d34 Merge 2012-04-10 13:27:09 -04:00
Staffan Larsen
83806487dc 7133111: libsaproc debug print should be printed as unsigned long to fit large numbers on 64bit platform
Reviewed-by: dcubed, mgronlun, dsamersoff
2012-04-05 14:16:23 +02:00
Daniel D. Daugherty
df294d5f28 Merge 2012-04-09 08:38:16 -07:00
Axel Siebenborn
beaeca558b 7158988: jvm crashes while debugging on x86_32 and x86_64
Object pointer is pushed more than once on stack, where GC doesn't expect it.

Reviewed-by: coleenp, kvn
2012-04-05 12:17:52 -04:00
John Coomes
7b8c6b4353 Merge 2012-03-31 00:05:15 -07:00
Jiangli Zhou
4a02eb3afe 7154670: The instanceKlass _implementors[] and _nof_implementors are not needed for non-interface klass
Change implementor to embedded instanceKlass field.

Reviewed-by: sspitsyn, minqi, coleenp
2012-03-29 22:18:56 -04:00
Weijun Wang
bba69953cd 7149012: jarsigner needs not warn about cert expiration if the jar has a TSA timestamp
Reviewed-by: xuelei
2012-03-06 10:25:45 +08:00
Nils Eliasson
36efb40d10 6658428: C2 doesn't inline java method if corresponding intrinsic failed to inline
Allow fallback to non-intrinsic inline case

Reviewed-by: kvn, jrose, never
2012-03-05 18:10:31 -08:00
Kurchi Subhra Hazra
4264d66e09 7151348: Build breaks due to warning clean up in sun.rmi.*(7146763)
Undo changes to sun/rmi/rmic/* commited as fix for 7146763

Reviewed-by: smarks
2012-03-05 17:38:01 -08:00
Lana Steuck
1e46927bba Merge 2012-03-05 17:04:48 -08:00
Lana Steuck
d3d427483f Merge 2012-03-05 17:04:10 -08:00
Lana Steuck
33b2586062 Merge 2012-03-05 17:02:11 -08:00
Bengt Rutisson
a77a5ac2a0 Merge 2012-03-05 22:34:18 +01:00
Dean Long
98f297ba23 7150046: SIGILL on sparcv9 fastdebug
Breakpoint needs to do 64-bit compare for pointers on sparcv9

Reviewed-by: coleenp, never
2012-03-05 14:19:00 -05:00
Phil Race
3f9a51509a 7078053: Solaris JDK build: C compiler writing tmp files into the make tree
Reviewed-by: ohair, alanb
2012-03-05 09:33:44 -08:00
Vinnie Ryan
92e8e7960b Merge 2012-03-05 14:15:01 +00:00
Vinnie Ryan
594e178180 7151109: backout CR 6988842
Reviewed-by: mullan
2012-03-05 14:13:29 +00:00
Sergey Malenkov
0f708d90df 7148143: PropertyChangeSupport.addPropertyChangeListener can throw ClassCastException
Reviewed-by: rupashka
2012-03-05 18:01:13 +04:00
Alexander Scherbatiy
a70c2d02ad 7130521: [macosx] closed/javax/swing/JMenuItem/6209975/bug6209975.java failed on macosx
Reviewed-by: rupashka
2012-03-05 16:46:38 +04:00
Kelly O'Hair
13c4ad8e20 7150324: Stop using drop bundles in jaxp
Reviewed-by: prr, joehw
2012-03-04 11:55:34 -08:00
Chris Hegarty
2d9226ff60 7145043: HttpServerProvider.java:81: warning - @code("httpServerProvider") is an unknown tag
Reviewed-by: michaelm
2012-03-04 07:41:34 +00:00
John Coomes
2d0d3e1f63 7150899: remove unused build.targets lines from jprt.properties
Reviewed-by: ohair
2012-03-03 12:45:10 -08:00
John Coomes
20beadbcb1 7150454: add release jdk7u4 to jprt.properties
Reviewed-by: ohair, never
2012-03-03 12:36:35 -08:00
Alejandro Murillo
95bc08f56b 7150327: new hotspot build - hs24-b03
Reviewed-by: jcoomes
2012-03-02 16:56:19 -08:00
Alejandro Murillo
ec659dc825 Added tag hs24-b02 for changeset 6cf227da58e6 2012-03-02 16:27:09 -08:00
Alejandro Murillo
aae19fd69c Merge 2012-03-02 16:27:09 -08:00
Kelly O'Hair
dc71b40a5f 6625113: Add the normalize and rmkw perl script to the openjdk repository or openjdk site?
Reviewed-by: darcy
2012-03-02 15:33:42 -08:00
Kurchi Subhra Hazra
0006ef0cc8 7146763: Warnings cleanup in the sun.rmi and related packages
Cleanup warnings and use jkd7 features in sun.rmi.*

Reviewed-by: smarks, chegar, forax, dmocek
2012-03-02 13:48:43 -08:00
Tom Rodriguez
2e8a110092 Merge 2012-03-02 13:13:25 -08:00
Bill Pittore
0aeb9d9a62 Merge 2012-03-02 14:34:55 -05:00
John Cuthbertson
4bcab49b68 7147806: G1: Crash in vm bootstrap when running with -XX:+UseG1GC -XX:-UsePerfData
Update generation and collector counters only if UsePerfData is enabled.

Reviewed-by: iveresov, tonyp
2012-03-02 10:36:16 -08:00
Michael Fang
a6a7ed5f8c Merge 2012-03-02 10:19:23 -08:00
Vinnie Ryan
1e3b108ef9 6988842: jce/ECC test fails for SunPKCS11 provider using nss library
Reviewed-by: mullan
2012-03-02 17:24:08 +00:00
Tom Rodriguez
dac856d4f2 Merge 2012-03-02 09:13:13 -08:00
Roland Westrelin
607f822b20 6910464: Lookupswitch and Tableswitch default branches not recognized as safepoints
C1 does not recognize the default branch of a lookupswitch or tableswitch bytecode to be a safepoint if backward.

Reviewed-by: kvn, never
2012-03-02 16:04:24 +01:00
Maurizio Cimadamore
2ba2192f6f 7148164: attribution code for diamond should not rely on mutable state
Update attribution code for diamond operator not to rely on mutable state

Reviewed-by: jjg
2012-03-02 12:58:35 +00:00
Maurizio Cimadamore
b10e766b73 7148242: Regression: valid code rejected during generic type well-formedness check
Redundant type-var substitution makes generic-type well-formedness check to fail

Reviewed-by: jjg
2012-03-02 12:57:47 +00:00
Maurizio Cimadamore
f01bc46dfe 7132880: Resolve should support nested resolution contexts
Overload resolution routine should be updated so that it can be called recursively

Reviewed-by: jjg, dlsmith
2012-03-02 12:57:04 +00:00
Alexander Kouznetsov
e44e04a5f5 7130241: [macosx] TransparentRuler demo can not run due to lacking of perpixel transparency support
Reviewed-by: art
2012-03-02 12:24:35 +02:00
Tom Rodriguez
7c2b3c6ab5 7150051: incorrect oopmap in critical native
Reviewed-by: kvn, twisti
2012-03-01 15:31:33 -08:00
David Katleman
2c85ca538e Added tag jdk8-b28 for changeset 6a9e1767fc90 2012-03-01 12:23:33 -08:00
David Katleman
0c33720da2 Added tag jdk8-b28 for changeset cb1d70aa45ad 2012-03-01 12:23:25 -08:00
David Katleman
05b0b4f2ae Added tag jdk8-b28 for changeset 1eae1ee06752 2012-03-01 12:23:20 -08:00
David Katleman
0ca13f7ff6 Added tag jdk8-b28 for changeset afee4474f087 2012-03-01 12:23:19 -08:00
David Katleman
d144cbfe09 Added tag jdk8-b28 for changeset b99bec991962 2012-03-01 12:23:13 -08:00
David Katleman
ef3de8e1f7 Added tag jdk8-b28 for changeset ecb426820bba 2012-03-01 12:23:07 -08:00
David Katleman
3669ad06b0 Added tag jdk8-b28 for changeset 6446faed7091 2012-03-01 12:23:01 -08:00
Mike Duigou
9c64402c80 7149320: Move sun.misc.VM.booted() to the end of System.initializeSystemClass()
Ensure that sun.misc.VM.booted() is the last action in System.initSystemClass()

Reviewed-by: dholmes, alanb
2012-03-01 09:40:18 -08:00
Pavel Tisnovsky
f4e81d2e19 7149785: Minor corrections to ScriptEngineManager javadoc
JavaDoc correction

Reviewed-by: alanb
2012-03-01 14:02:44 +01:00
Dmitry Samersoff
3385cfe8cf 7118280: The gbyc00102 JCK7 test causes an assert in JVM 7.0 fastdebug mode
Assert doesn't respect invokedynamic opcode

Reviewed-by: dcubed, phh
2012-03-01 12:41:13 +04:00
Lana Steuck
00d35d412b Merge 2012-02-29 12:30:55 -08:00
Lana Steuck
4a304171a6 Merge 2012-02-29 12:29:20 -08:00
Michael Fang
1acef3bef8 Merge 2012-02-29 10:18:21 -08:00
Dean Long
9cd12c0bcd 7142641: -Xshared:on fails on ARM
Map read-only pages MAP_PRIVATE instead of MAP_SHARED

Reviewed-by: dcubed, dholmes
2012-02-29 12:58:49 -05:00
Kumar Srinivasan
8f5b808cfe 7148499: Stack size in tools/launcher/Settings.java needs to be increased
Reviewed-by: alanb
2012-02-29 08:20:33 -08:00
Alexander Scherbatiy
cbf5f3e4de 7133573: [macosx] closed/javax/swing/JToolTip/4846413/bug4846413.java fails on MacOS
Reviewed-by: alexp
2012-02-29 18:47:39 +04:00
Lana Steuck
45f7bb6a9f Merge 2012-02-28 19:55:09 -08:00
Lana Steuck
45a7449ceb Merge 2012-02-28 18:04:50 -08:00
Lana Steuck
b697d670cb Merge 2012-02-28 18:01:54 -08:00
Lana Steuck
ee1b80e8e5 Merge 2012-02-28 17:54:33 -08:00
Lana Steuck
30c157894d Merge 2012-02-28 17:52:05 -08:00
Joe Darcy
81b0f3f5c0 7149626: (reflect) Improve javadoc of java.lang.reflect.Executable
Reviewed-by: mduigou
2012-02-28 13:14:47 -08:00
Sonali Goel
959e0b9dfb 7147183: test/tools/javac/apt.sh can be removed from tl/langtools repository
Reviewed-by: jjg
2012-02-28 10:48:04 -08:00
Jonathan Gibbons
9c503c5689 7093891: support multiple task listeners
Reviewed-by: darcy, mcimadamore
2012-02-28 10:33:49 -08:00
Jonathan Gibbons
5707f715aa 7144951: fix minor javadoc issues
Reviewed-by: darcy
2012-02-28 10:25:53 -08:00
Frederic Parain
555b593770 Merge 2012-02-28 07:58:43 -08:00
Dmitry Samersoff
14732a0d27 7149181: sun/management/jmxremote/startstop/JMXStartStopTest.sh failing on all platforms
Disable test until JDK and hotspot changes meet each other.

Reviewed-by: alanb, acorn
2012-02-28 17:00:28 +04:00
Roland Westrelin
ff47163220 6910461: Register allocator may insert spill code at wrong insertion index
When resolving exception edges after register allocation, the C1 register allocator may insert spill code at the wrong insertion position.

Reviewed-by: kvn, never
2012-02-28 09:13:58 +01:00
Tom Rodriguez
825a304b38 7145024: Crashes in ucrypto related to C2
Reviewed-by: kvn
2012-02-28 10:04:01 -08:00
Mike Duigou
0193199d57 7143162: Allow disable building of jdk demos and samples
Reviewed-by: ohair
2012-02-27 18:10:03 -08:00
Mike Duigou
2f6d883fcb 7143162: Allow disable building of jdk demos and samples
Reviewed-by: ohair
2012-02-27 18:09:47 -08:00
Sean Mullan
fd805805a8 Merge 2012-02-27 13:53:25 -05:00
Sean Mullan
48ca85ec46 7147830: NullPointerException in java.security.Policy.implies() when the ProtectionDomain has a null code sou
Reviewed-by: vinnie
2012-02-27 11:44:50 -05:00
Dmitry Samersoff
fe4588a87e 7110104: It should be possible to stop and start JMX Agent at runtime
Added a capability to start and stop JMX Agent by jcmd

Reviewed-by: acorn, mchung
2012-02-27 15:21:18 +04:00
Roland Westrelin
c815908774 7148486: At a method handle call returning with an exception may call the runtime with misaligned stack (x64)
Stack must be realigned when calling the runtime for exception propagation at a call.

Reviewed-by: kvn, never
2012-02-27 11:42:30 +01:00
Roland Westrelin
4012f6cd34 7147740: add assertions to check stack alignment on VM entry from generated code (x64)
Check stack alignment on VM entry on x64.

Reviewed-by: kvn, never
2012-02-27 09:17:44 +01:00
Alan Bateman
6d519d366e 7148921: More ProblemList updates (2/2012)
Reviewed-by: chegar
2012-02-26 17:25:42 +00:00
Michael Fang
5ced594638 Merge 2012-02-25 10:19:26 -08:00
Krystal Mok
84470be578 7148126: ConstantPoolCacheEntry::print prints to wrong stream
Should print to passed in stream not tty

Reviewed-by: dholmes, never
2012-02-25 01:49:34 -05:00
Lana Steuck
9791a38e93 Merge 2012-02-24 18:24:53 -08:00
Lana Steuck
1443b70f4d Merge 2012-02-24 18:24:03 -08:00
Lana Steuck
ac825d35af Merge 2012-02-24 18:22:57 -08:00
Lana Steuck
a3cd82292c Merge 2012-02-24 18:22:55 -08:00
Lana Steuck
c8bd932ff3 Merge 2012-02-24 18:22:48 -08:00
Lana Steuck
8f952922ba Merge 2012-02-24 18:22:44 -08:00
Alejandro Murillo
fafe66921e 7148664: new hotspot build - hs24-b02
Reviewed-by: jcoomes
2012-02-24 18:14:00 -08:00
Alejandro Murillo
7f5093d00d Added tag hs24-b01 for changeset b357c6ebe63e 2012-02-24 18:08:59 -08:00
Alejandro Murillo
a8f637446d Merge 2012-02-24 18:08:58 -08:00
Lana Steuck
f46ebab88c Merge 2012-02-24 17:38:24 -08:00
Abhijit Saha
c3da3a5048 7148758: Resolve merge issue which caused testcase failure
Reviewed-by: alanb, chegar
2012-02-24 17:31:59 -08:00
Vladimir Kozlov
9c6ab6372f 7147416: LogCompilation tool does not work with post parse inlining
Fixed few problems in LogCompilation parser.

Reviewed-by: never
2012-02-24 12:33:31 -08:00
Staffan Larsen
17f17157b9 7079093: TEST_BUG: java/lang/instrument/ManifestTest.sh fails with cygwin
Work around problems in some cygwin installations

Reviewed-by: alanb, sspitsyn
2012-02-24 20:09:49 +01:00
Staffan Larsen
399194bb7a 7073626: RmiBootstrapTest.sh and RmiSslBootstrapTest.sh fail under Cygwin
Detect and handle cygwin correctly

Reviewed-by: alanb, sspitsyn
2012-02-24 20:02:50 +01:00
Jonathan Gibbons
a46962c4c1 7137836: tidy up Names.java
Reviewed-by: mcimadamore
2012-02-24 10:40:32 -08:00
Phil Race
8694cd7c62 7147584: Changing to Nimbus/GTK in SwingSet2 on Solaris 10 Sparc causes malformed menus/layout
Reviewed-by: igor, jgodinez
2012-02-24 09:37:01 -08:00
Oleg Pekhovskiy
d76f84108f 7145980: Dispose method of window.java takes long
Reviewed-by: anthony
2012-02-24 13:50:37 +04:00
Sean Coffey
cecb628970 7144488: Infinite recursion for some equals tests in Collections
Reviewed-by: alanb, dholmes, mduigou
2012-02-24 09:17:46 +00:00
Sean Coffey
27720df27a 7133138: Improve io performance around timezone lookups
Reviewed-by: okutsu
2012-02-24 09:10:27 +00:00
Bill Pittore
ee795ec927 Merge 2012-02-23 21:10:02 -05:00
David Katleman
9d978102bc Added tag jdk8-b27 for changeset bc664cc5f2a0 2012-02-23 12:03:30 -08:00
David Katleman
7835898d92 Added tag jdk8-b27 for changeset 020ee18d16db 2012-02-23 12:03:21 -08:00
David Katleman
5e6beee12c Added tag jdk8-b27 for changeset 0b1b48f6f78d 2012-02-23 12:03:17 -08:00
David Katleman
076a67b1bf Added tag jdk8-b27 for changeset 4506e41cb329 2012-02-23 12:03:16 -08:00
David Katleman
158427237e Added tag jdk8-b27 for changeset 30cf3316d124 2012-02-23 12:03:08 -08:00
David Katleman
663327f408 Added tag jdk8-b27 for changeset 96028882c1dc 2012-02-23 12:03:03 -08:00
David Katleman
aebf95f6f2 Added tag jdk8-b27 for changeset 9f0948ea25eb 2012-02-23 12:03:01 -08:00
Joe Darcy
de52238d06 7148025: javac should not warn about InterrupttedException on the declaration of AutoCloseable itself
Reviewed-by: mcimadamore
2012-02-23 09:53:09 -08:00
Lana Steuck
9c6aee1cdf Merge 2012-02-23 07:54:49 -08:00
Lana Steuck
668e9414d8 Merge 2012-02-23 07:53:54 -08:00
Mikael Gerdin
27c0786c3b 7148152: Add whitebox testing API to HotSpot
Add an internal testing API to HotSpot to enable more targeted testing of vm functionality

Reviewed-by: phh, dholmes
2012-02-23 14:58:35 +01:00
Lana Steuck
cd51c0ed25 Merge 2012-02-23 00:14:45 -08:00
Lana Steuck
b9d5b5cf10 Merge 2012-02-23 00:14:15 -08:00
Lana Steuck
bf8b18f80e Merge 2012-02-22 22:09:53 -08:00
Lana Steuck
ab549924e8 Merge 2012-02-22 16:52:50 -08:00
Michael Fang
b745ee2833 Merge 2012-02-22 10:17:57 -08:00
Frederic Parain
79a5197d1d Merge 2012-02-22 08:19:27 -08:00
Pavel Porvatov
942b3e2aae 7107099: JScrollBar does not show up even if there are enough lebgth of textstring in textField
Reviewed-by: alexp
2012-02-22 14:31:13 +04:00
Erik Joelsson
97612e5913 7141244: build-infra merge: Include $(SPEC) in makefiles and make variables overridable
Reviewed-by: dholmes, ohrstrom, ohair, jcoomes
2012-02-22 09:24:35 +01:00
Dmitry Samersoff
12a9f18dcc Merge 2012-02-22 10:32:29 -08:00
Dmitry Samersoff
e1675f98d4 7110104: It should be possible to stop and start JMX Agent at runtime
Added a capability to start and stop JMX Agent by jcmd

Reviewed-by: acorn, mchung
2012-02-22 19:43:22 +04:00
Vladimir Kozlov
22db6951dc 7146442: assert(false) failed: bad AD file
Take into account only stores captured by Initialize node. Added missing check for Top input in value() methods.

Reviewed-by: never
2012-02-21 11:55:05 -08:00
Jiangli Zhou
3e904497b1 7120481: storeStore barrier in constructor with final field
Issue storestore barrier before constructor return if the constructor write final field.

Reviewed-by: dholmes, jrose, roland, coleenp
2012-02-21 13:14:55 -05:00
Bill Pittore
a94cb97f4a Merge 2012-02-22 14:00:34 -05:00
Charles Lee
df18cb7401 7146572: enableInputMethod(false) does not work in the TextArea and TextField on the linux platform
Peers' constructors shouldn't override user's enableInputMethod() settings

Reviewed-by: anthony
2012-02-21 18:15:14 +04:00
Xue-Lei Andrew Fan
e969599750 7147407: remove never used debug code in DnsClient.java
Reviewed-by: vinnie
2012-02-21 05:44:29 -08:00
Alexander Scherbatiy
58de6a8294 7133581: [macosx] closed/javax/swing/JTree/4330357/bug4330357.java fails on MacOS
Reviewed-by: alexp
2012-02-21 15:34:08 +04:00
Alexander Scherbatiy
7bea3e0303 7133571: [macosx] closed/javax/swing/JToolBar/4247996/bug4247996.java fails on MacOS
Reviewed-by: alexp
2012-02-21 15:03:07 +04:00
Alexander Scherbatiy
8326ba3235 7133566: [macosx] closed/javax/swing/JTable/4220171/bug4220171.java fails on MacOS
Reviewed-by: alexp
2012-02-21 14:19:21 +04:00
Weijun Wang
ace6464105 7147336: clarification on warning of keytool -printcrl
Reviewed-by: xuelei
2012-02-21 15:11:27 +08:00
John Coomes
378bc323c2 Added tag hs23-b16 for changeset 1bfc33519320 2012-02-20 22:32:30 -08:00
Krystal Mok
41f7f6302b 7145358: SA throws ClassCastException for partially loaded ConstantPool
In printValueOn() in ConstantPool.java check if the poolHolder is a valid Klass and only then print it.

Reviewed-by: sla, sspitsyn
2012-02-20 21:27:56 -08:00
Weijun Wang
d21a6ce41f 7144530: KeyTab.getInstance(String) no longer handles keyTabNames with "file:" prefix
Reviewed-by: valeriep
2012-02-21 08:51:26 +08:00
Vladimir Kozlov
5f68d9921d 7147064: assert(allocates2(pc)) failed: not in CodeBuffer memory: 0xffffffff778d9d60 <= 0xffffffff778da69c
Increase size of deopt_blob and uncommon_trap_blob by size of stack bang code (SPARC).

Reviewed-by: azeemj, iveresov, never, phh
2012-02-20 13:11:08 -08:00
Vladimir Kozlov
b4cbe82e26 7147064: assert(allocates2(pc)) failed: not in CodeBuffer memory: 0xffffffff778d9d60 <= 0xffffffff778da69c
Increase size of deopt_blob and uncommon_trap_blob by size of stack bang code (SPARC).

Reviewed-by: azeemj, iveresov, never, phh
2012-02-20 13:11:08 -08:00
Alan Bateman
697f151896 7147087: Remove AWT/Swing/client tests from ProblemList
Reviewed-by: ohair
2012-02-20 19:33:32 +00:00
Abhijit Saha
162d75c68c Merge 2012-02-20 11:31:53 -08:00
Alan Bateman
86410b610b 6346658: (se) Selector briefly spins when asynchronously closing a registered channel [win]
Reviewed-by: chegar, coffeys
2012-02-20 18:55:10 +00:00
Charles Lee
2995eff3e3 7146506: (fc) Add EACCES check to the return of fcntl native method
Add EACCES check according to the spec of fcntl

Reviewed-by: alanb
2012-02-20 11:24:06 +08:00
Rémi Forax
d2449123be 7146152: File.path should be final
Reviewed-by: alanb, dholmes, mduigou
2012-02-19 16:51:35 +00:00
Staffan Larsen
d856a7745c 7132070: Use a mach_port_t as the OSThread thread_id rather than pthread_t on BSD/OSX
Change OSThread to use mach thread_t

Reviewed-by: phh, dcubed
2012-02-19 13:11:39 +01:00
Lana Steuck
e76be10b70 Merge 2012-02-18 16:12:28 -08:00
Lana Steuck
9406a69dc0 Merge 2012-02-18 16:11:47 -08:00
Lana Steuck
acce88acb5 Merge 2012-02-18 16:09:11 -08:00
Daniel D. Daugherty
b0b5725863 7145798: System.loadLibrary does not search current working directory
Append "." to java.library.path on MacOS X to ease migration from Apple's Java6 to OpenJDK7.

Reviewed-by: phh, jmelvin, coleenp
2012-02-17 15:55:27 -08:00
Sonali Goel
ed13841255 7143910: test/tools/apt/Basics/apt.sh fails with 'real' sh
Reviewed-by: darcy
2012-02-17 15:24:40 -08:00
Alejandro Murillo
a908ea8cb5 7146700: new hotspot build - hs24-b01
Reviewed-by: jcoomes
2012-02-17 15:11:32 -08:00
Alejandro Murillo
be21bbbc25 Added tag hs23-b16 for changeset e545d7e1f01e 2012-02-17 15:06:39 -08:00
Alejandro Murillo
c96c4e3fa4 Merge 2012-02-17 15:06:38 -08:00
Abhijit Saha
136be0dd92 Merge 2012-02-17 14:59:41 -08:00
Abhijit Saha
f83ca6dc04 Merge 2012-02-17 14:59:21 -08:00
Abhijit Saha
fa4cc616ff Merge 2012-02-17 14:59:02 -08:00
Abhijit Saha
1fcb6f273a Merge 2012-02-17 14:58:41 -08:00
Abhijit Saha
fc6c57d330 Merge 2012-02-17 14:58:24 -08:00
Tom Rodriguez
7a1487a726 Merge 2012-02-17 12:18:52 -08:00
Tom Rodriguez
0d25b8c4d5 7146729: nightly failure after 7141200: tty is sometimes null during shutdown of main thread
Reviewed-by: kvn
2012-02-17 12:18:10 -08:00
Michael Fang
1f8b7c2711 Merge 2012-02-17 10:18:50 -08:00
Frederic Parain
7ded1f054b Merge 2012-02-17 06:34:49 -08:00
Stefan Karlsson
7daca4fc60 Merge 2012-02-17 13:23:29 +01:00
Xueming Shen
1b32c44aa3 4153167: separate between ANSI and OEM code pages on Windows
To use OEM code page for System.out&err when not redirected

Reviewed-by: alanb
2012-02-16 22:13:10 -08:00
Vladimir Kozlov
867f3ba889 7145346: VerifyStackAtCalls is broken
Replace call_epilog() encoding with macroassembler use. Moved duplicated code to x86.ad. Fixed return_addr() definition.

Reviewed-by: never
2012-02-16 17:12:49 -08:00
Coleen Phillimore
c82d4105ec Merge 2012-02-16 17:19:40 -05:00
John Coomes
5f0143a774 6330863: vm/gc/InfiniteList.java fails intermittently due to timeout
In some cases, allocate from the old gen before doing a full gc

Reviewed-by: stefank, jmasa
2012-02-16 13:13:53 -08:00
John Coomes
6827f384c9 7146343: PS invoke methods should indicate the type of gc done
Reviewed-by: stefank, jmasa
2012-02-16 13:12:25 -08:00
David Katleman
30b3953b45 Added tag jdk8-b26 for changeset 90bc745052c7 2012-02-16 13:01:46 -08:00
David Katleman
d3539e79ca Added tag jdk8-b26 for changeset a9b4578da2a8 2012-02-16 13:01:36 -08:00
David Katleman
7551efdd70 Added tag jdk8-b26 for changeset b51c748f410d 2012-02-16 13:01:33 -08:00
David Katleman
6a8b78d6db Added tag jdk8-b26 for changeset 1d96f9313a4b 2012-02-16 13:01:32 -08:00
David Katleman
5fa0678ef1 Added tag jdk8-b26 for changeset 70e517098d81 2012-02-16 13:01:24 -08:00
David Katleman
36725334b1 Added tag jdk8-b26 for changeset b831ee8beaf8 2012-02-16 13:01:19 -08:00
David Katleman
10397e5d0e Added tag jdk8-b26 for changeset d771ef859fba 2012-02-16 13:01:17 -08:00
James Melvin
ac2ed39761 7146354: Re-enable Compressed OOPs after 7118647 is resolved
Relax the assertion to simply check for COOP mode rather than an exact address.

Reviewed-by: coleenp, kvn, phh, dcubed
2012-02-16 15:52:01 -05:00
Roger Riggs
ac69a5f84a 6708398: Support integer overflow
Added add/sub/multiply/toIntExact methods to j.l.Math and StrictMath classes

Reviewed-by: emcmanus
2012-02-16 11:43:20 -08:00
Tom Rodriguez
9e339b8ded 7144318: GCLocker assert failure: assert(_needs_gc || SafepointSynchronize::is_at_safepoint(
Reviewed-by: kvn, twisti
2012-02-16 11:33:49 -08:00
Paul Hohensee
f33961a1df 7142113: Add Ivy Bridge to the known Intel x86 cpu families
In vm_version_x86.hpp, add and use CPU_MODEL_IVYBRIDGE_EP, and restrict is_intel_tsc_synced_at_init() to EP models.

Reviewed-by: kvn, acorn
2012-02-16 13:50:54 -05:00
Sean Chou
40d87232e6 7089914: Focus on image icons are not visible in javaws cache with high contrast mode
Reviewed-by: rupashka
2012-02-16 17:42:09 +04:00
Roland Westrelin
cb7dbaebc9 7143038: SIGSEGV in assert_equal / LinearScan::assign_reg_num
Forced exit may destory global objects that are still in use.

Reviewed-by: twisti, never, kvn
2012-02-16 09:20:40 +01:00
Xue-Lei Andrew Fan
4c5ba0d841 7145837: a little performance improvement on the usage of SecureRandom
Reviewed-by: chegar, wetmore
2012-02-15 23:45:17 -08:00
Vladimir Kozlov
539616f85a 7125136: SIGILL on linux amd64 in gc/ArrayJuggle/Juggle29
For C2 moved saving EBP after ESP adjustment. For C1 generated 5 byte nop instruction first if needed.

Reviewed-by: never, twisti, azeemj
2012-02-15 21:37:49 -08:00
Vladimir Danushevsky
a1d2da174b 7129401: PPC: runtime/7100935/TestShortArraycopy.java fails
Pass assembler switches for PPC

Reviewed-by: dholmes
2012-02-15 20:26:59 -05:00
Igor Veresov
24b07e7ae6 7142680: default GC affected by jvm path
Removed old tiered code

Reviewed-by: never, kvn
2012-02-15 16:29:40 -08:00
Lana Steuck
7ca7e599a5 Merge 2012-02-15 15:28:15 -08:00
Lana Steuck
72ce1c5159 Merge 2012-02-15 15:21:33 -08:00
Bill Pittore
f9788f6987 Merge 2012-02-15 16:09:49 -05:00
Igor Veresov
b972e52710 7145345: Code cache sweeper must cooperate with safepoints
Safepoint in the sweeper loop in necessary

Reviewed-by: kvn, never
2012-02-15 12:32:03 -08:00
Nils Loodin
510522ff57 7145243: Need additional specializations for argument parsing framework
Reviewed-by: acorn, fparain
2012-02-15 12:17:30 -08:00
Frederic Parain
a1429e482e 7145925: Removing remote access to diagnostic commands in the HotSpotDiagnosticMBean
Reviewed-by: acorn, mchung, phh
2012-02-15 10:46:55 -08:00
Tom Rodriguez
520f6fcc87 7145537: minor tweaks to LogEvents
Reviewed-by: kvn, twisti
2012-02-15 10:12:55 -08:00
Antonios Printezis
be06406cb8 7132029: G1: mixed GC phase lasts for longer than it should
Revamp of the mechanism that chooses old regions for inclusion in the CSet. It simplifies the code and introduces min and max bounds on the number of old regions added to the CSet at each mixed GC to avoid pathological cases. It also ensures that when we do a mixed GC we'll always find old regions to add to the CSet (i.e., it eliminates the case where a mixed GC will collect no old regions which can happen today).

Reviewed-by: johnc, brutisso
2012-02-15 13:06:53 -05:00
Alan Bateman
5f9a26a009 7145910: Remove dependency on apt and com.sun.mirror API (breaks boot cycle builds)
Reviewed-by: ohair
2012-02-15 17:32:56 +00:00
Frederic Parain
ddaeb8933c 7144833: sun/tools/jcmd/jcmd-Defaults.sh failing intermittently
Reviewed-by: alanb
2012-02-15 09:29:05 -08:00
Sean Mullan
191116a62e Merge 2012-02-15 07:52:58 -05:00
Sean Mullan
5977a2d6a7 7024604: OID.1 causes IAE in X500Principal constructor
Reviewed-by: vinnie
2012-02-15 07:45:42 -05:00
Roland Westrelin
e6f3ba89ec 7126041: jdk7u4 b05 and b06 crash with RubyMine 3.2.4, works well with b04
Goto that replaces a If mistaken to be a back branch and triggers erroneous OSR compilation.

Reviewed-by: never, iveresov
2012-02-15 09:43:16 +01:00
Yumin Qi
db677a6f75 Merge 2012-02-14 23:50:12 -08:00
Dean Long
479baa64e5 7140866: assert(covered) failed: Card for end of new region not committed
Resize covered region only after successfully mapping shared archive

Reviewed-by: brutisso, ysr
2012-02-15 00:51:07 -05:00
Keith McGuigan
1f8105e44c Merge 2012-02-15 00:09:31 -05:00
Yumin Qi
3869025575 Merge 2012-02-14 20:54:57 -08:00
Serguei Spitsyn
c25eebd321 7130993: nsk/jdi/ReferenceType/instances/instances004 fails with JFR: assert(ServiceUtil::visible_oop(obj))
Skip reporting invisible refs in iterate_over_object to avoid assert(ServiceUtil::visible_oop(obj))

Reviewed-by: dcubed, mgronlun, rbackman
2012-02-14 17:04:40 -08:00
Keith McGuigan
ccebd55230 7145589: First JSDT provider creation fails
0 is a successful return from an ioctl() call

Reviewed-by: dcubed, phh, dsamersoff
2012-02-14 20:02:19 -05:00
Tom Rodriguez
f9b7a3e692 7143061: nsk/stress/stack/b4525850 crash VM
Reviewed-by: kvn, twisti
2012-02-14 15:43:56 -08:00
Jan Lahoda
3887a6d012 7142086: performance problem in Check.checkOverrideClashes(...)
Code in Check.checkOverrideClashes() causes too many calls to MethodSymbol.overrides

Reviewed-by: jjg
2012-02-14 15:43:52 -08:00
Coleen Phillimore
4bd7be25df Merge 2012-02-14 18:35:19 -05:00
David Buck
1d56fdab49 7143612: improve backwards compatibility of OSIS post-CR6887286
Reviewed-by: flar, prr
2012-02-14 14:16:49 -08:00
Coleen Phillimore
5afc57be8e 7145587: Stack overflows in Java code cause 64-bit JVMs to exit due to SIGSEGV (sparc version)
Increase StackShadowPages to accomodate the JDK changes to increase buffer size in socketWrite

Reviewed-by: acorn, phh, dcubed, kamg, dsamersoff
2012-02-14 16:50:34 -05:00
Keith McGuigan
8a9ec2c624 Merge 2012-02-14 15:52:17 -05:00
Abhijit Saha
f22e2721dc Merge 2012-02-14 10:29:36 -08:00
Abhijit Saha
5da827856c Merge 2012-02-14 10:22:15 -08:00
Abhijit Saha
6000901868 Merge 2012-02-14 10:22:06 -08:00
Abhijit Saha
7bd91cdd6e Merge 2012-02-14 10:21:54 -08:00
Abhijit Saha
299454e654 Merge 2012-02-14 10:21:25 -08:00
Frederic Parain
52739303db 7140868: TEST_BUG: jcmd tests need to use -XX:+UsePerfData
Reviewed-by: fparain, dholmes
2012-02-14 07:28:29 -08:00
Frederic Parain
476ee44449 7143760: Memory leak in GarbageCollectionNotifications
Reviewed-by: dholmes, dcubed, kamg
2012-02-14 06:54:27 -08:00
Alexander Scherbatiy
7c6f3c6cb2 7133577: [macosx] closed/javax/swing/JTree/4314199/bug4314199.java fails on MacOS
Reviewed-by: rupashka
2012-02-14 18:44:57 +04:00
Vinnie Ryan
abfc726cc4 7142888: sun/security/tools/jarsigner/ec.sh fail on sparc
Reviewed-by: xuelei
2012-02-14 11:47:41 +00:00
Roland Westrelin
e7ece2a742 7144405: JumbleGC002 assert(m->offset() == pc_offset) failed: oopmap not found
Oop map needs pc stored in frame anchor in StubGenerator::generate_throw_exception()

Reviewed-by: twisti, never, kvn
2012-02-14 09:43:25 +01:00
Jim Holmlund
df7b871807 7142672: Problems with the value passed to the 'classes' param of JavaCompiler.CompilationTask.getTask(...)
Reviewed-by: jjg
2012-02-13 16:01:43 -08:00
Keith McGuigan
95cfa1c3a7 7069991: Setup make/jprt.properties files for jdk8
Change default release value to jdk8 (but overrideable)

Reviewed-by: phh, jcoomes, dholmes, ohair
2012-02-13 14:03:12 -05:00
Coleen Phillimore
cfdca5342c 7059899: Stack overflows in Java code cause 64-bit JVMs to exit due to SIGSEGV
Increase StackShadowPages to accomodate the JDK changes to increase buffer size in socketWrite

Reviewed-by: acorn, phh
2012-02-13 12:30:47 -05:00
Vinnie Ryan
5f84978261 Merge 2012-02-13 14:31:32 +00:00
Vinnie Ryan
7c7523d968 7142339: PKCS7.java is needlessly creating SHA1PRNG SecureRandom instances when timestamping is not done
Reviewed-by: xuelei, wetmore
2012-02-13 14:26:25 +00:00
Frederic Parain
3008f1f46e Merge 2012-02-13 06:24:44 -08:00
Oleg Pekhovskiy
2ac69799ec 7143070: test/java/awt/print/PaintSetEnabledDeadlock/PaintSetEnabledDeadlock.java freezes on exit
Reviewed-by: anthony
2012-02-13 17:49:23 +04:00
Christian Thalinger
df753a2942 7143766: add ALT_JDK_IMAGE_DIR and improve test_jdk
Reviewed-by: rbackman, jrose, dholmes
2012-02-13 04:30:59 -08:00
Christian Thalinger
425b53e062 7141329: Strange values of stack_size in -XX:+TraceMethodHandles output
Reviewed-by: kvn, never
2012-02-13 02:29:22 -08:00
Mani Sarkar
7abee00e97 7143230: fix warnings in java.util.jar, sun.tools.jar, zipfs demo, etc
Co-authored-by: Michael Barker <mikeb01@gmail.com>
Co-authored-by: Carl Jokl <carl.jokl@gmail.com>
Co-authored-by: Dinuk Weerasinghe <dinuksw@yahoo.com>
Co-authored-by: Markus Stoy <markus.stoy@timgroup.com>
Co-authored-by: Tom Anderson <tom.anderson@timgroup.com>
Reviewed-by: alanb, chegar, lancea, smarks
2012-02-12 21:56:24 -08:00
Poonam Bajaj
e565fbba32 7009098: SA cannot open core files larger than 2GB on Linux 32-bit
Added Large File Support by compiling libsaproc.so with -D_FILE_OFFSET_BITS=64, and a small change with which SA should first load libraries from the path specified with SA_ALTROOT.

Reviewed-by: dholmes, kevinw, dcubed, minqi
2012-02-12 19:33:11 -08:00
Jan Valenta
0073cdd512 7144979: incorrect path separator in make/build.xml for Windows when running jtreg tests
Reviewed-by: jjg
2012-02-12 16:44:13 -08:00
Alan Bateman
6e1303417c 7144895: ProblemList.txt updates (2/2012)
Reviewed-by: darcy, ohair
2012-02-12 21:09:09 +00:00
Chris Hegarty
cfe8581b9b 7133367: ResponseCache.put should not be called when setUseCaches(false)
Reviewed-by: michaelm
2012-02-12 08:47:36 +00:00
Xue-Lei Andrew Fan
7ddcb409b6 7144781: incorrect URLs in JSSE java doc
Reviewed-by: wetmore, skannan
2012-02-10 22:17:44 -08:00
Bradford Wetmore
533795bb75 7142509: Cipher.doFinal(ByteBuffer,ByteBuffer) fails to process when in.remaining() == 0
Reviewed-by: valeriep
2012-02-10 19:07:23 -08:00
Andrew Haley
b33087c6d3 7140985: HSDIS does not handle caller options correctly
Fix typo.

Reviewed-by: jrose, kvn
2012-02-10 17:20:05 -08:00
Vladimir Kozlov
2d533fa2a9 7129284: +DoEscapeAnalysis regression w/ early build of 7u4 (HotSpot 23) on Linux
Removed code which tried to create edges from fields of destination objects of arraycopy to fields of source objects. Added 30 sec time limit for EA graph construction.

Reviewed-by: never
2012-02-10 12:53:43 -08:00
Alejandro Murillo
4659df3c49 7144322: new hotspot build - hs23-b16
Reviewed-by: jcoomes
2012-02-10 11:46:20 -08:00
Alejandro Murillo
46f9604fd6 Added tag hs23-b15 for changeset 323ec1849b7c 2012-02-10 11:41:34 -08:00
Alejandro Murillo
9d5cdc4b03 Merge 2012-02-10 11:41:29 -08:00
Lana Steuck
9fbc16e840 Merge 2012-02-10 10:23:13 -08:00
Bill Pittore
39f063f94d Merge 2012-02-10 10:55:15 -05:00
Alexander Scherbatiy
f67d19788e 7109991: SwingUtilities.isXMouseButton behaves unexpectedly starting from JDK8 b08
Reviewed-by: rupashka
2012-02-10 18:34:43 +04:00
Prasannaa
1cfc57d91b 7144475: fix some warnings in java.awt, javax.print.attribute.standard, and sun.beans.infos
Co-authored-by: Martijn Verburg <martijnverburg@gmail.com>
Co-authored-by: Goerge Albrecht <goerge.albrecht@gmx.net>
Co-authored-by: Graham Allan <grundlefleck@googlemail.com>
Co-authored-by: Iordanis Giannakakis <i.giannakakis@ymail.com>
Co-authored-by: Jose Llarena <jose.llarena@gmail.com>
Co-authored-by: Abrahamn Marin Perez <abraham.marin.perez@gmail.com>
Reviewed-by: chegar, prr, alanb, anthony
2012-02-10 11:03:20 +00:00
Lana Steuck
9ea42aad43 Merge 2012-02-09 23:17:22 -08:00
Lana Steuck
fffeb599f8 Merge 2012-02-09 22:56:13 -08:00
Lana Steuck
13686b8d12 Merge 2012-02-09 22:55:28 -08:00
Lana Steuck
1ac29856e1 Merge 2012-02-09 22:53:25 -08:00
Lana Steuck
38d86a4aa3 Merge 2012-02-09 19:42:39 -08:00
Florian Weimer
9b65dbabc1 6879539: enable empty password support for pkcs12 keystore
Reviewed-by: vinnie, weijun
2012-02-10 11:41:22 +08:00
John R Rose
610e13c424 Merge 2012-02-09 18:01:20 -08:00
Michael Fang
9f0f739be9 Merge 2012-02-09 16:12:58 -08:00
David Katleman
4ccb224ca8 Added tag jdk8-b25 for changeset 5f9506e97a45 2012-02-09 12:56:35 -08:00
David Katleman
9b26ab91a5 Added tag jdk8-b25 for changeset 5e35df9fddb6 2012-02-09 12:56:12 -08:00
David Katleman
ead2757410 Added tag jdk8-b25 for changeset 3ef37abc6e33 2012-02-09 12:55:59 -08:00
David Katleman
3cc3ab97ed Added tag jdk8-b25 for changeset 6d836b7888ea 2012-02-09 12:55:56 -08:00
David Katleman
5d17e0d33e Added tag jdk8-b25 for changeset 5464af66b3ba 2012-02-09 12:55:38 -08:00
David Katleman
76f9c11768 Added tag jdk8-b25 for changeset 58ac5bae81ab 2012-02-09 12:55:29 -08:00
David Katleman
cbebb2687a Added tag jdk8-b25 for changeset b832ef83f076 2012-02-09 12:55:21 -08:00
Michael Fang
3961e49115 Merge 2012-02-09 10:16:24 -08:00
Alan Bateman
9ace5d5b19 7144086: TEST_BUG: java/nio/file/WatchService/SensitivityModifier.java failing intermittently
Reviewed-by: chegar
2012-02-09 16:38:36 +00:00
Zhengyu Gu
b0725ec91a Merge 2012-02-09 07:35:48 -08:00
Zhengyu Gu
e0ec1c804e 7141259: Native stack is missing in hs_err
Code cleanup and creating a private decoder for error handler, since it can be triggered from in signal handler, where no lock can be taken

Reviewed-by: dholmes, kamg, acorn, coleenp
2012-02-09 10:16:26 -05:00
Pavel Porvatov
36a08afe2a 7142955: DefaultTreeCellRenderer doesn't honor 'Tree.rendererFillBackground' LAF property
Reviewed-by: malenkov
2012-02-09 18:26:57 +04:00
Carlos Lucasius
d228d3127c 7114611: (fs) DirectoryStream fails with SIGBUS on some embedded platforms, dirent alignment
Reviewed-by: dholmes, alanb
2012-02-09 13:43:15 +00:00
Pavel Porvatov
ffc91880e1 7143857: Memory leak in javax.swing.plaf.synth.SynthTreeUI
Reviewed-by: alexp
2012-02-09 14:21:53 +04:00
Yumin Qi
3a09f847bb 7131006: java/lang/management/ThreadMXBean/ThreadLists.java
Reviewed-by: dholmes, acorn
2012-02-09 00:51:47 -08:00
David Katleman
0a228eec58 Merge 2012-02-08 19:13:58 -08:00
Michael Fang
59fae43a26 Merge 2012-02-08 10:18:33 -08:00
Oleg Pekhovskiy
ff7281a866 7132367: [macosx] ChoiceMouseWheelTest should be adapted for mac toolkit
Reviewed-by: art
2012-02-08 18:28:10 +04:00
Pavel Porvatov
0b4df63ee2 7138665: JOptionPane.getValue() unexpected change between JRE 1.6 and JRE 1.7
Reviewed-by: alexp
2012-02-08 16:15:12 +04:00
Gary Adams
d53f00fb69 6957683: test/java/util/concurrent/ThreadPoolExecutor/Custom.java failing
Reviewed-by: chegar, dholmes, alanb
2012-02-08 11:19:25 +00:00
Gary Adams
ba9ddb94fa 6736316: Timeout value in java/util/concurrent/locks/Lock/FlakyMutex.java is insufficient
Reviewed-by: chegar, dholmes, alanb
2012-02-08 11:18:29 +00:00
Chris Hegarty
5070eb57b6 7105929: java/util/concurrent/FutureTask/BlockingTaskExecutor.java fails on solaris sparc
Reviewed-by: dholmes
2012-02-08 11:16:52 +00:00
Roland Westrelin
0f2f8f179e 7119286: JSR292: SIGSEGV in JNIHandleBlock::release_block(JNIHandleBlock*, Thread*)+0x3c
Unaligned stack in throw_NullPointerException_at_call_entry().

Reviewed-by: twisti, never, kvn
2012-02-08 09:52:24 +01:00
Weijun Wang
18a83d872b 6880619: reg tests for 6879540
Reviewed-by: valeriep
2012-02-08 11:44:36 +08:00
Joe Darcy
d8c00fda7b 7143629: JDK jar/zip code should use unsigned library support
Reviewed-by: sherman
2012-02-07 17:39:13 -08:00
Vladimir Kozlov
e6015c7c26 7143491: G1 C2 CTW: assert(p2x->outcnt() == 2) failed: expects 2 users: Xor and URShift nodes
Adjust the assert and code in eliminate_card_mark() method for case when stored value is NULL.

Reviewed-by: iveresov, never
2012-02-07 16:33:43 -08:00
Frederic Parain
b70c4be0d9 Merge 2012-02-07 12:34:31 -08:00
Vladimir Kozlov
2856b9535e 7142167: MAC: _get_previous_fp broken on bsd with llvm-gcc
LLVM-GCC (__llvm__) should use the same _get_previous_fp implementation as __clang__ (as is the case for os::current_stack_pointer).

Reviewed-by: twisti, never, dcubed
2012-02-07 11:33:15 -08:00
Lana Steuck
62610f975f Merge 2012-02-07 10:39:26 -08:00
Lana Steuck
6bf7f5b84f Merge 2012-02-07 10:38:49 -08:00
Lana Steuck
c96654e8eb Merge 2012-02-07 10:36:51 -08:00
Alan Bateman
b37db2a9db 7142847: TEST_BUG: java/nio/file/WatchService/SensitivityModifier.java has incorrect @run tag, runs Basic
Reviewed-by: chegar
2012-02-07 13:28:32 +00:00
Yong Jeffrey Huang
adc42f10ab Merge 2012-02-06 18:58:45 -08:00
Yong Jeffrey Huang
4ea71cf959 7129382: change minor unit of VND to 0
Reviewed-by: naoto
2012-02-06 18:56:36 -08:00
Alejandro Murillo
01ee621b40 7143122: new hotspot build - hs23-b15
Reviewed-by: jcoomes
2012-02-06 12:18:24 -08:00
Alejandro Murillo
ce62364df5 Added tag hs23-b14 for changeset 04e30cc559a9 2012-02-06 12:13:56 -08:00
James Melvin
8bd7cfc472 7142616: MAC: Honor ALT_EXPORT_PATH overrides from JDK control builds
Fix EXPORT_PATH overrides on Mac OS X and only change default.

Reviewed-by: phh, dcubed
2012-02-06 14:02:51 -05:00
James Melvin
50daea0824 7142852: MAC: Comment out JPRT jbb tests on Mac OS X until 7142850 is resolved
Comment out JPRT jbb tests on Mac OS X until GUI hang can be fixed

Reviewed-by: dholmes, brutisso, phh
2012-02-06 14:01:53 -05:00
Bill Pittore
8e09c4566e Merge 2012-02-06 10:57:49 -05:00
Erik Joelsson
a1b4a3f698 7141242: build-infra merge: Rename CPP->CXX and LINK->LD
Cleaned up make variables for compilers and linker to consistently use CXX for C++ compiler, CC for C compiler and LD for linker.

Reviewed-by: dholmes, ohrstrom
2012-02-06 09:14:22 +01:00
Joe Darcy
f30ca2fd58 7041249: Remove apt tool and API from the JDK
Reviewed-by: jjg, ohair
2012-02-05 21:59:45 -08:00
Joe Darcy
6667bfa0a9 7041249: Remove apt tool and API from the JDK
Reviewed-by: jjg, ohair
2012-02-05 21:49:45 -08:00
Miroslav Kos
33859eda7a 7140918: Remove dependency on apt and com.sun.mirror API
Co-authored-by: Martin Grebac <martin.grebac@oracle.com>
Reviewed-by: darcy
2012-02-05 12:29:31 +00:00
Miroslav Kos
487391eab6 7140918: Remove dependency on apt and com.sun.mirror API
Co-authored-by: Martin Grebac <martin.grebac@oracle.com>
Reviewed-by: darcy
2012-02-05 12:07:39 +00:00
Chris Hegarty
d0bf1b11b1 Merge 2012-02-04 07:36:29 +00:00
Chris Hegarty
511e7438d7 7041778: Move SCTP implementation out of sun.nio.ch and into its own package
Reviewed-by: alanb
2012-02-04 07:29:11 +00:00
Alejandro Murillo
5071c6aa0a 7142393: new hotspot build - hs23-b14
Reviewed-by: jcoomes
2012-02-03 18:09:14 -08:00
Alejandro Murillo
119aa701d0 Added tag hs23-b13 for changeset c996ca3f8bac 2012-02-03 18:04:11 -08:00
Alejandro Murillo
d639db1a9d Merge 2012-02-03 18:04:09 -08:00
John Coomes
abcd88ab09 Merge 2012-02-03 12:20:11 -08:00
John Coomes
140e8ff0d9 Merge 2012-02-03 12:08:55 -08:00
Frederic Parain
7b1a6d8811 Merge 2012-02-03 14:04:59 -05:00
Phil Race
80e0df803f 7141914: Draw glyph cause JVM crash
Reviewed-by: bae, igor
2012-02-03 09:57:45 -08:00
Pavel Porvatov
a1486e0c08 7071775: javax/swing/JFileChooser/6396844/TwentyThousandTest.java failed on winxp
Reviewed-by: alexp
2012-02-03 18:01:24 +04:00
Pavel Porvatov
314ecdc15a 7141573: JProgressBar resize exception, if setStringPainted in Windows LAF
Reviewed-by: malenkov
2012-02-03 17:57:39 +04:00
John Coomes
39ab213a0a 6679764: enable parallel compaction by default
Reviewed-by: phh, jmasa
2012-02-02 16:05:17 -08:00
Sonali Goel
c750a3e42c 7141141: Add 3 new test scenarios for testing Main-Class attribute in jar manifest file
Reviewed-by: ksrini, darcy
2012-02-02 15:37:22 -08:00
David Katleman
fc851bfb71 Added tag jdk8-b24 for changeset e320a58c5e9a 2012-02-02 09:39:44 -08:00
David Katleman
89ba3aae12 Added tag jdk8-b24 for changeset b0f8f6fd6947 2012-02-02 09:39:36 -08:00
David Katleman
cf9dd9cf3b Added tag jdk8-b24 for changeset b18da790e3ea 2012-02-02 09:39:33 -08:00
David Katleman
1f03218e56 Added tag jdk8-b24 for changeset abbbbaf35c96 2012-02-02 09:39:32 -08:00
David Katleman
9cbc2661e1 Added tag jdk8-b24 for changeset 7e187fc00d45 2012-02-02 09:39:26 -08:00
David Katleman
1e4aa8a7d4 Added tag jdk8-b24 for changeset f920d3637c9f 2012-02-02 09:39:19 -08:00
David Katleman
1540e46180 Added tag jdk8-b24 for changeset b77ae0f8eec8 2012-02-02 09:39:18 -08:00
Volker Simonis
b9fbc2faab 7141637: JSR 292: MH spread invoker crashes with NULL argument on x86_32
Reviewed-by: twisti
2012-02-02 09:14:38 -08:00
Matthew Smith
7313a31b92 7132194: GtkFileDialog does not point to the correct file(s) is Recent Files are used
Handle the file list differently if gtk_file_chooser_get_current_folder() returns NULL

Reviewed-by: anthony
2012-02-02 17:49:10 +04:00
Tom Rodriguez
9599296d97 7013347: allow crypto functions to be called inline to enhance performance
Reviewed-by: kvn
2012-02-01 16:57:08 -08:00
Bradford Wetmore
8ac9bc5858 7141910: Incorrect copyright dates on new test cases
Reviewed-by: mullan
2012-02-01 16:00:39 -08:00
James Melvin
73785e645b 7123386: RFE: Preserve universal builds of HotSpot on Mac OS X
Add support for packaging HotSpot JVM builds in universal binaries

Reviewed-by: dholmes, kamg, dcubed, phh
2012-02-01 15:01:08 -05:00
Tom Rodriguez
5a41427b37 7141200: log some interesting information in ring buffers for crashes
Reviewed-by: kvn, jrose, kevinw, brutisso, twisti, jmasa
2012-02-01 07:59:01 -08:00
Frederic Parain
ec9b7d57ac 7120974: ManagementPermission "control" needs clarification
Reviewed-by: mchung, dholmes
2012-02-01 03:52:37 -08:00
Roland Westrelin
a59952f4c9 7090976: Eclipse/CDT causes a JVM crash while indexing C++ code
Too optimistic inlining decision confuses local value numbering.

Reviewed-by: never
2012-02-01 10:36:58 +01:00
Lana Steuck
9ad29a120a Merge 2012-01-31 19:08:36 -08:00
Lana Steuck
bc231c8c92 Merge 2012-01-31 19:06:48 -08:00
Christian Thalinger
2fd128fe15 7132180: JSR 292: C1 JVM crash with ClassValue/MethodHandle
Reviewed-by: never
2012-01-31 09:53:46 -08:00
Vladimir Kozlov
1b91bcb342 7140924: SIGSEGV in compiled code for sun.awt.X11.XDecoratedPeer.updateMinSizeHints
Use unknown_obj instead of empty_map for NULL or Constant Pool object constants in bytecode Escape Analyzer.

Reviewed-by: iveresov, never
2012-01-31 07:18:03 -08:00
Pavel Porvatov
bd71369ca5 7082443: JComboBox not backward compatible (with Java 6)
Reviewed-by: alexp
2012-01-31 17:30:33 +04:00
Staffan Larsen
d548c65214 Merge 2012-01-31 04:57:20 -08:00
Fredrik Ohrstrom
301215b860 7132779: build-infra merge: Enable ccache to work for most developer builds
When a build number is not specified, the JRE_RELEASE_VERSION define contains a date and timestamp. Thus ccache cannot cache the object files for longer than a minute since the define is passed to the compilation of all source files. This change passes JRE_RELEASE_VERSION only to vm_version.cpp and adds a function jre_release_version() to Abstract_VM_Version. This allows all other source files to be ccached.

Reviewed-by: ohair, rottenha
2012-01-31 13:12:39 +01:00
Paul Hohensee
76dfe7f707 7142586: Cannot build on Solaris 11 due to use of ia_nice
Delete the single use of ia_nice in os_solaris.cpp

Reviewed-by: kamg, kvn
2012-02-03 17:21:52 -05:00
Jonathan Lu
46accc5829 7133301: (process) UNIXProcess_md.c should include sys/wait.h rather than wait.h
Reviewed-by: alanb
2012-01-31 10:31:19 +00:00
Sergey Malenkov
bb9be9ed00 7122138: IAE thrown because Introspector ignores synthetic methods
Reviewed-by: rupashka
2012-01-31 14:20:47 +04:00
Staffan Larsen
c3ee1cf7f9 7132199: sun/management/jmxremote/bootstrap/JvmstatCountersTest.java failing on all platforms
Make sure HotSpot and JDK looks for well-known files in the same location

Reviewed-by: dholmes, dsamersoff
2012-01-31 10:46:34 +01:00
Karen Kinnear
ce074f86c3 7114376: Make system dictionary hashtable bucket array size configurable
7u4 new experimental flag -XX:PredictedClassLoadedCount=#

Reviewed-by: dholmes, phh, dcubed
2012-01-30 23:27:30 -05:00
Igor Veresov
082b8cb318 7141059: 7116795 broke pure c2 builds
Fix pure c2 builds

Reviewed-by: kvn, brutisso, never
2012-01-30 19:37:14 -08:00
Bengt Rutisson
85e4d13987 7140909: Visual Studio project builds broken: need to define INCLUDE_TRACE
Add define of INCLUDE_TRACE

Reviewed-by: sla, kamg
2012-01-30 15:21:57 +01:00
Bengt Rutisson
d5546e27cf Merge 2012-01-30 05:08:09 -08:00
Doug Lea
45569b3a65 7132378: Race in FutureTask if used with explicit set ( not Runnable )
Reviewed-by: chegar, dholmes
2012-01-30 11:44:45 +00:00
Deepak Bhole
ce79f12b7b 7140882: Don't return booleans from methods returning pointers
Changed "return false" to "return NULL"

Reviewed-by: dholmes, rottenha
2012-01-30 12:36:49 +01:00
Alexander Scherbatiy
c0b462dd42 7122149: [macosx] closed/javax/swing/UITest/UITest.java fails on MacOS
Reviewed-by: rupashka
2012-01-30 12:52:53 +04:00
Tom Rodriguez
5721fa222a 7129164: JNI Get/ReleasePrimitiveArrayCritical doesn't scale
Reviewed-by: kvn, iveresov, dholmes
2012-01-29 16:46:04 -08:00
Lana Steuck
d1e88d085e Merge 2012-01-28 22:47:07 -08:00
Lana Steuck
afe805a586 Merge 2012-01-28 22:21:54 -08:00
Lana Steuck
da83df8bb7 Merge 2012-01-28 20:42:11 -08:00
Lana Steuck
0f98d16ad1 Merge 2012-01-28 20:41:27 -08:00
Lana Steuck
1bf74156a2 Merge 2012-01-28 20:36:29 -08:00
Kumar Srinivasan
25f79b38d8 7127906: (launcher) convert the launcher regression tests to java
Reviewed-by: darcy, naoto
2012-01-28 10:46:46 -08:00
Stefan Karlsson
0603a70b79 Merge 2012-01-28 01:15:34 -08:00
Valerie Peng
9b4334593c 7136538: typo in test/Makefile under the jdk_security3 target
Fixed the typo of "secrity".

Reviewed-by: wetmore
2012-01-27 15:25:17 -08:00
Alejandro Murillo
99b8ef66fd 7135385: new hotspot build - hs23-b13
Reviewed-by: jcoomes
2012-01-27 14:49:54 -08:00
Alejandro Murillo
b67bc26c4d Added tag hs23-b12 for changeset 68d6477cc31f 2012-01-27 14:44:20 -08:00
Alejandro Murillo
82da0a1808 Merge 2012-01-27 14:44:19 -08:00
Keith McGuigan
1e318cc920 Merge 2012-01-27 10:42:36 -05:00
Chris Hegarty
036e845b65 7110002: Rename xawt/libmawt.so and headless/libmawt.so so they can be colocated with libawt
Reviewed-by: art, prr, dholmes, alanb
2012-01-27 13:48:40 +00:00
Alexander Scherbatiy
9a010b5d73 7105040: [macosx] closed/javax/swing/JPopupMenu/4966112/bug4966112.java deadlocks on MacOS
Reviewed-by: rupashka
2012-01-27 17:36:35 +04:00
Stefan Karlsson
4ad03aebbb 7134655: Crash in reference processing when doing single-threaded remarking
Temporarily disabled multi-threaded reference discovery when entering a single-threaded remark phase.

Reviewed-by: brutisso, tonyp, jmasa, jcoomes
2012-01-27 14:14:50 +01:00
Alexander Scherbatiy
a70eddca0d 7109962: [macosx] closed/javax/swing/JList/6462008/bug6462008.java fails on MacOS
Reviewed-by: rupashka
2012-01-27 17:00:16 +04:00
Stefan Karlsson
b7d5d72f78 7022100: Method annotations are incorrectly set when redefining classes
Changed to the correct annotation arrays

Reviewed-by: kamg, dholmes, sla
2012-01-27 13:46:24 +01:00
Alexander Scherbatiy
153bd2fc0d 7122173: [macosx] Several Regression tests fail on MacOS
Reviewed-by: rupashka
2012-01-27 16:32:16 +04:00
Bengt Rutisson
172ebc873c Merge 2012-01-27 09:04:57 +01:00
Masayoshi Okutsu
33a5a447a8 7130335: Problem with timezone in a SimpleDateFormat
Reviewed-by: peytoia
2012-01-27 14:58:32 +09:00
John R Rose
e27deedf24 Merge 2012-01-26 19:39:08 -08:00
David Katleman
3d631d7389 Added tag jdk8-b23 for changeset 6662fc41e1c3 2012-01-26 18:23:36 -08:00
David Katleman
1b98d6343f Added tag jdk8-b23 for changeset 412e931c07b9 2012-01-26 18:23:28 -08:00
David Katleman
34ff11cc2f Added tag jdk8-b23 for changeset 11fa98675c2a 2012-01-26 18:23:25 -08:00
David Katleman
c4b15b06e6 Added tag jdk8-b23 for changeset 939aca1c5dac 2012-01-26 18:23:24 -08:00
David Katleman
5e494c370a Added tag jdk8-b23 for changeset af005838b2f8 2012-01-26 18:23:17 -08:00
David Katleman
fbc7f2bbaf Added tag jdk8-b23 for changeset 751387b26353 2012-01-26 18:23:14 -08:00
David Katleman
47bf575dfa Added tag jdk8-b23 for changeset c62b7a0288a4 2012-01-26 18:23:09 -08:00
Bradford Wetmore
08fe131e34 7126889: Incorrect SSLEngine debug output
Reviewed-by: xuelei
2012-01-26 17:16:05 -08:00
Paul Hohensee
09e21afaaa 7082553: Interpret Thread.setPriority(Thread.MAX_PRIORITY) to mean FX60 on Solaris 10 and 11
Add CriticalPriority == MaxPriority+1 and enable scheduling class as well as thread priority to change on Solaris.

Reviewed-by: dholmes, dcubed
2012-01-26 20:06:06 -05:00
Lance Andersen
fa918cde67 7133815: address the findbug errors in CachedRowSetImpl, SerialStruct, BaseRow, SerialInputImpl, SerialOutputImpl
Reviewed-by: forax
2012-01-26 19:41:35 -05:00
John Cuthbertson
179d6df8c0 7133038: G1: Some small profile based optimizations
Some minor profile based optimizations. Reduce the number of branches and branch mispredicts by removing some virtual calls, through closure specalization, and refactoring some conditional statements.

Reviewed-by: brutisso, tonyp
2012-01-26 14:14:55 -08:00
Igor Veresov
84dda879d0 7131259: compile_method and CompilationPolicy::event shouldn't be declared TRAPS
Make sure that CompilationPolicy::event() doesn't throw exceptions

Reviewed-by: kvn, never
2012-01-26 12:15:24 -08:00
Bertrand Delsart
070f9108ff 7120468: SPARC/x86: use frame::describe to enhance trace_method_handle
Improvements of TraceMethodHandles for JSR292

Reviewed-by: never, twisti
2012-01-26 16:49:22 +01:00
Pavel Porvatov
4ae1928609 7010561: Tab text position with Synth based LaF is different to Java 5/6
Reviewed-by: alexp
2012-01-26 17:38:58 +04:00
Rickard Bäckman
804ef2d9ee 7133124: Remove redundant packages from JAR command line
Reviewed-by: acorn, alanb, dholmes, rottenha
2012-01-26 09:51:35 +01:00
Roland Westrelin
de3ed511b1 7123910: Some CTW tests crash VM: is_loaded() && that->is_loaded()
Handle not loaded array klass in Parse::do_checkcast().

Reviewed-by: kvn, never
2012-01-26 09:38:28 +01:00
Yuka Kamiya
844d8fc641 7017458: (cal) Multithreaded deserialization of Calendar leads to ClassCastException
Reviewed-by: okutsu
2012-01-26 17:06:47 +09:00
Bob Vandette
963cefb1bb Merge 2012-01-25 21:30:53 -08:00
John Coomes
3eb017ee50 7112413: JVM Crash, possibly GC-related
Disable UseAdaptiveSizePolicy with the CMS and ParNew

Reviewed-by: johnc, brutisso
2012-01-25 21:14:11 -08:00
Dmitry Samersoff
7ece654913 Merge 2012-01-25 18:58:59 -08:00
Frederic Parain
1b6556acac Merge 2012-01-25 16:33:37 -08:00
David Holmes
ff8aa96e68 Merge 2012-01-25 19:26:35 -05:00
Dmitry Samersoff
a403696909 Merge 2012-01-25 15:03:42 -08:00
Jiangli Zhou
cd85c690df 7132690: InstanceKlass:_reference_type should be u1 type
Change InstanceKlass::_reference_type to u1 type.

Reviewed-by: dholmes, coleenp, acorn
2012-01-25 17:40:51 -05:00
David Katleman
3afc06730d Merge 2012-01-25 13:54:28 -08:00
Alejandro Murillo
89a6bc1ca9 Merge 2012-01-25 12:36:08 -08:00
Jim Holmlund
e1fa8cca42 7133314: The regression test for 7129225 fails when run with jtreg -samevm or jtreg -agentvm
Reviewed-by: jjg
2012-01-25 12:20:05 -08:00
Frederic Parain
6fd2cebd85 7131346: Parsing of boolean arguments to diagnostic commands is broken
Reviewed-by: dholmes, dcubed
2012-01-25 10:32:29 -08:00
Antonios Printezis
802519ea53 7127706: G1: re-enable survivors during the initial-mark pause
Re-enable survivors during the initial-mark pause. Afterwards, the concurrent marking threads have to scan them and mark everything reachable from them. The next GC will have to wait for the survivors to be scanned.

Reviewed-by: brutisso, johnc
2012-01-25 12:58:23 -05:00
Dmitry Samersoff
fdf8f817d3 7132515: Add dcmd to manage UnlockingCommercialFeature flag
Added dcmd to unlock or check status of UnlockingCommercialFeature flag

Reviewed-by: fparain, rottenha
2012-01-25 21:10:08 +04:00
Vladimir Kozlov
51e16a559d Merge 2012-01-25 08:10:04 -08:00
Keith McGuigan
7168e2bfeb Merge 2012-01-25 10:08:40 -05:00
Paul Hohensee
a9d159b065 Merge 2012-01-25 01:16:03 -08:00
Roland Westrelin
f3ce53be67 7116050: C2/ARM: memory stomping error with DivideMcTests
Block::schedule_local() may write beyond end of ready_cnt array

Reviewed-by: never, kvn
2012-01-25 09:31:47 +01:00
Dmitry Samersoff
e5562a8fda Merge 2012-01-24 20:15:56 -08:00
Vladimir Kozlov
3770ecec6f 7132936: guarantee(t != NULL) failed: must be con
Use !higher_equal() check to skip top and values which fit.

Reviewed-by: never
2012-01-24 17:04:51 -08:00
Igor Veresov
7f44e35134 7132945: Tiered: adjust OSR threshold of level 3
Change the value of Tier3BackEdgeThreshold from 7000 to 60000

Reviewed-by: kvn, never
2012-01-24 17:00:51 -08:00
James Melvin
ccf7d491f7 7125793: MAC: test_gamma should always work
Fix gamma launcher on Mac OS X and reconcile test_gamma script on Unix platforms

Reviewed-by: dcubed, ohair, jcoomes, dholmes, ksrini
2012-01-24 19:33:14 -05:00
Jim Holmlund
8f129be7fb 7129225: javac fails to run annotation processors when star import of package of gensrc
Reviewed-by: jjg
2012-01-24 16:31:15 -08:00
Jim Holmlund
139ce2d98a 7126832: com.sun.tools.javac.api.ClientCodeWrapper$WrappedJavaFileManager cannot be cast
Reviewed-by: jjg
2012-01-24 15:51:44 -08:00
Dean Long
7f5b035542 7130319: C2: running with -XX:+PrintOptoAssembly crashes the VM with assert(false) failed: bad tag in log
Relax assert to allow the VMThread to close the log while the compiler thread is still writing to it.

Reviewed-by: dholmes, never
2012-01-24 18:00:54 -05:00
Dmitry Samersoff
501bad4fd6 7066129: GarbageCollectorMXBean#getLastGcInfo leaks native memory
Make GCStatInfo a resource object

Reviewed-by: phh, coleenp
2012-01-25 02:29:05 +04:00
Lana Steuck
9ffd90edcf Merge 2012-01-24 13:44:01 -08:00
Lana Steuck
a863f02fc0 Merge 2012-01-24 13:43:24 -08:00
Lance Andersen
abf04e0d1c 7132879: address Findbugs issue in WebRowSetXmlWriter
Reviewed-by: forax
2012-01-24 15:13:27 -05:00
James Melvin
cba74d6208 7126732: MAC: Require Mac OS X builds/tests for JPRT integrate jobs for HotSpot
Modify jprt.properties to run OSX builds and tests.

Reviewed-by: dcubed, kamg, ohair, dholmes
2012-01-24 14:07:03 -05:00
Kumar Srinivasan
d0df777779 7132270: tools/launcher/DefaultLocaleTestRun.java failing (win)
Reviewed-by: alanb, chegar
2012-01-24 09:58:44 -08:00
Maurizio Cimadamore
d353146b32 7129801: Merge the two method applicability routines
Resolve.java and Infer.java should reuse the same method applicability check routine

Reviewed-by: dlsmith, jjg
2012-01-24 17:52:02 +00:00
Sergey Malenkov
e59111ddf3 7121905: grammatically incorrect apostrophe in BeanInfo javadoc
Reviewed-by: rupashka
2012-01-24 19:40:14 +04:00
Denis Fokin
40dbde3a86 7078460: JDialog is shown as separate icon on the taskbar
Reviewed-by: anthony
2012-01-24 18:46:36 +04:00
Bertrand Delsart
3f08a21500 7120450: complete information dumped by frame_describe
Improvements of frame_describe

Reviewed-by: never, twisti
2012-01-24 15:41:17 +01:00
Rickard Backman
ec891da5a7 7130476: Remove use of #ifdef TRACE_DEFINE_KLASS_TRACE_ID from klass.hpp
Reviewed-by: kamg, phh, dsamersoff
2012-01-24 14:48:22 +01:00
Alan Bateman
c72c2bee4b 7132204: Default testset in JPRT should not run all tests
Reviewed-by: ohair
2012-01-24 09:08:43 +00:00
Coleen Phillimore
d0b33ef971 Merge 2012-01-23 17:45:32 -08:00
Mark Reinhold
77ad1e47c1 7110396: Sound code fails to build with gcc 4.6 on multiarch Linux systems
Reviewed-by: ohair
2012-01-23 12:39:41 -08:00
Denis Fokin
9bf6ef1857 7130140: using horizontal scroll button on mouse causes a message to be printed on stdout
Reviewed-by: art
2012-01-23 17:26:07 +04:00
Alexander Scherbatiy
ea9ee98dd7 7116634: [macosx] closed/javax/swing/JTree/6263446/bug6263446Tree.java fails on MacOS
Reviewed-by: rupashka
2012-01-23 13:53:24 +04:00
Alexander Scherbatiy
2909ee7529 7112854: [macosx] closed/javax/swing/JPopupMenu/Test6827786.java unstable on MacOS
Reviewed-by: rupashka
2012-01-23 13:05:51 +04:00
Tom Rodriguez
52979e6206 7130676: Tiered: assert(bci == 0 || 0<= bci && bci<code_size()) during stack trace construction
Reviewed-by: kvn, iveresov
2012-01-22 14:03:20 -08:00
Bill Pittore
af9f073374 6972759: Step over not working after thrown exception and Pop
Reset jvmtithreadstate exception state after frame pop and forceearlyreturn processed

Reviewed-by: minqi, dholmes, dlong
2012-01-21 23:02:40 -05:00
Alejandro Murillo
63b889aba6 7131979: new hotspot build - hs23-b12
Reviewed-by: jcoomes
2012-01-20 17:07:33 -08:00
Alejandro Murillo
f0908fd16b Added tag hs23-b11 for changeset ad2a7ae4f3b0 2012-01-20 16:56:31 -08:00
Alejandro Murillo
6a27f2c096 Merge 2012-01-20 16:56:31 -08:00
Igor Veresov
55c9a74046 7131028: Switch statement takes wrong path
Pass correct type to branch in LIRGenerator::do_SwitchRanges()

Reviewed-by: kvn, never
2012-01-20 15:02:12 -08:00
Alejandro Murillo
370735f2e4 Merge 2012-01-20 14:31:33 -08:00
David Katleman
8d4b04a365 Added tag jdk8-b22 for changeset e6809c7d1735 2012-01-20 13:08:51 -08:00
David Katleman
6f9ada3843 Added tag jdk8-b22 for changeset 054ae6fb4346 2012-01-20 13:08:48 -08:00
David Katleman
ae6fa39b20 Added tag jdk8-b22 for changeset 0a4b26cf7553 2012-01-20 13:08:45 -08:00
David Katleman
1599f28a1f Added tag jdk8-b22 for changeset 99a092d22c70 2012-01-20 13:08:44 -08:00
David Katleman
106518995c Added tag jdk8-b22 for changeset 8b2993f4f9c6 2012-01-20 13:08:43 -08:00
David Katleman
10e49d5a1e Added tag jdk8-b22 for changeset 5df4cdb80642 2012-01-20 13:08:41 -08:00
David Katleman
a95f19a9f3 Added tag jdk8-b22 for changeset ca3137c9be77 2012-01-20 13:08:40 -08:00
Vladimir Kozlov
5b3f2efc2e 7131302: connode.cpp:205 Error: ShouldNotReachHere()
Add Value() methods to short and byte Load nodes to truncate constants which does not fit.

Reviewed-by: jrose
2012-01-20 09:43:06 -08:00
John R Rose
4e648d883d Merge 2012-01-19 18:35:13 -08:00
John R Rose
02ada73e46 Merge 2012-01-19 17:20:39 -08:00
John R Rose
e323998c19 7111138: delete the obsolete flag -XX:+UseRicochetFrames
Reviewed-by: dholmes, bdelsart, kvn, twisti
2012-01-19 13:00:11 -08:00
Phil Race
b25a3c3f11 7131153: GetDC called way too many times - causes bad performance
Reviewed-by: igor, jgodinez
2012-01-19 12:41:57 -08:00
Igor Veresov
c21cf7cf4b 7131288: COMPILE SKIPPED: deopt handler overflow (retry at different tier)
Fix exception handler stub size, enable guarantees to check for the correct deopt and exception stub sizes in the future

Reviewed-by: kvn, never, twisti
2012-01-19 10:56:51 -08:00
Denis Fokin
d0dfef0321 7121761: creation of java.awt.DataFlavour fails for turkish locale
Reviewed-by: anthony
2012-01-19 14:59:43 +04:00
Lana Steuck
9ccc60ae83 Merge 2012-01-18 20:24:41 -08:00
Lana Steuck
8b5dadd520 Merge 2012-01-18 20:23:33 -08:00
Jim Holmlund
323665eec5 7131308: Three regression tests fail due to bad fix for 7127924
Reviewed-by: jjg
2012-01-18 18:26:36 -08:00
John R Rose
cec41c4c9d 7030453: JSR 292 ClassValue.get method is too slow
Implement ClassValue cooperatively with Class like ThreadLocal with Thread.

Reviewed-by: twisti, mduigou
2012-01-18 17:34:32 -08:00
John R Rose
1c49ad8a03 7077803: java.lang.InternalError in java.lang.invoke.MethodHandleNatives.init
Use correct access token for unreflecting MHs where setAccessible(true)

Reviewed-by: never, twisti
2012-01-18 17:34:30 -08:00
John R Rose
ef856f2fe0 7117167: Misc warnings in java.lang.invoke and sun.invoke.*
Reviewed-by: smarks
2012-01-18 17:34:29 -08:00
Joe Darcy
c569749a21 7130768: Clarify behavior of Element.getEnclosingElements in subtypes
Reviewed-by: mcimadamore, jjg
2012-01-18 16:43:59 -08:00
Lana Steuck
328abbe8d8 Merge 2012-01-18 11:41:13 -08:00
Lana Steuck
5fa3c57f37 Merge 2012-01-18 11:27:56 -08:00
Lana Steuck
92c14834f4 Merge 2012-01-18 11:00:55 -08:00
Lana Steuck
bb8ab4aa4f Merge 2012-01-18 11:00:20 -08:00
John Cuthbertson
fa9d6d7682 7129514: time warp warnings after 7117303
Replace calls to os::javaTimeMillis() that are used to update the milliseconds since the last GC to an equivalent that uses a monotonically non-decreasing time source.

Reviewed-by: ysr, jmasa
2012-01-18 09:50:16 -08:00
Antonios Printezis
6a31970946 7129892: G1: explicit marking cycle initiation might fail to initiate a marking cycle
If we try to schedule an initial-mark GC in order to explicit start a conc mark cycle and it gets pre-empted by antoher GC, we should retry the attempt as long as it's appropriate for the GC cause.

Reviewed-by: brutisso, johnc
2012-02-14 08:21:08 -05:00
Igor Veresov
47d1b9ee33 7144296: PS: Optimize nmethods processing
Prunes scavenge roots in code list every young GC, promote objects directly pointed by the code immediately

Reviewed-by: johnc, jcoomes
2012-02-10 17:40:20 -08:00
Zhengyu Gu
dce4a696bf 7131050: fix for "7071311 Decoder enhancement" does not build on MacOS X
Decoder API changes did not reflect in os_bsd

Reviewed-by: kamg, dcubed
2012-01-18 11:45:14 -05:00
Chris Hegarty
b78021fcd1 7126960: Add property to limit number of request headers to the HTTP Server
Reviewed-by: michaelm
2012-01-18 15:35:06 +00:00
Bertrand Delsart
b11b6e4dda 7120448: Fix FP values for compiled frames in frame::describe
Fix for debug method frame::describe

Reviewed-by: never, kvn
2012-01-18 16:18:31 +01:00
Matt Smith
d5d6252e5b 7130662: GTK file dialog crashes with a NPE
Guard adding a back slash to the directory name with an if (!= null) check

Reviewed-by: anthony, art
2012-01-18 19:09:26 +04:00
Keith McGuigan
14c0efd947 Merge 2012-01-17 21:25:28 -05:00
Jim Holmlund
3d0da40b0d 7127924: langtools regression tests sometimes fail en-masse on windows
Reviewed-by: jjg
2012-01-17 17:14:44 -08:00
Kurchi Subhra Hazra
75e511ab32 7117570: Warnings in sun.mangement.* and its subpackages
Reviewed-by: mchung, dsamersoff
2012-01-17 15:55:40 -08:00
Zhengyu Gu
43bb0877fc 7071311: Decoder enhancement
Made decoder thread-safe

Reviewed-by: coleenp, kamg
2012-01-17 13:08:52 -05:00
Rickard Bäckman
4953b8bfa5 7132386: makefile support for tracing/Java Flight Recorder framework phase I
Co-authored-by: Markus Gronlund <markus.gronlund@oracle.com>
Co-authored-by: Erik Gahlin <erik.gahlin@oracle.com>
Co-authored-by: Nils Loodin <nils.loodin@oracle.com>
Co-authored-by: Staffan Larsen <staffan.larsen@oracle.com>
Reviewed-by: ohair, dholmes, rottenha
2012-01-17 16:20:52 +01:00
Alan Bateman
a2cb0c3029 7132204: Default testset in JPRT should not run all tests
Reviewed-by: ohair
2012-01-24 09:09:08 +00:00
Joe Darcy
032af13e8b 7132338: Use @code friendly idiom for '\' in javadoc
Reviewed-by: alanb
2012-01-23 12:17:30 -08:00
Sean Mullan
20acbf2a93 Merge 2012-01-23 13:23:05 -05:00
Sean Mullan
ced9a44bc8 7131084: XMLDSig XPathFilter2Transform regression involving intersect filter
Reviewed-by: xuelei
2012-01-23 12:17:04 -05:00
Xue-Lei Andrew Fan
830a24d326 7132248: sun/security/ssl/sun/net/www/protocol/https/HttpsURLConnection/CookieHttpsClientTest.java failing
Reviewed-by: alanb
2012-01-23 04:44:16 -08:00
Joe Darcy
cc5049f41e 4504839: Java libraries should provide support for unsigned integer arithmetic
4215269: Some Integer.toHexString(int) results cannot be decoded back to an int
6322074: Converting integers to string as if unsigned

Reviewed-by: mduigou, emcmanus, flar
2012-01-20 17:56:31 -08:00
Valerie Peng
f105bf6f5b 7092825: javax.crypto.Cipher.Transform.patternCache is synchronizedMap and became scalability bottleneck
Changed patternCache from synchronizedMap to ConcurrentHashMap.

Reviewed-by: mullan
2012-01-19 12:01:57 -08:00
Keith McGuigan
c3f4b6ec1b Merge 2012-01-17 10:16:36 -05:00
Denis Fokin
36b3d034d2 7110590: DnDMerlinQLTestsuite_DnDJTextArea test fails with an java.awt.dnd.InvalidDnDOperationException
Reviewed-by: art
2012-01-17 19:09:32 +04:00
Chris Hegarty
8d3dc3ed37 6671616: TEST_BUG: java/io/File/BlockIsDirectory.java fails when /dev/dsk empty (sol)
Reviewed-by: alanb
2012-01-17 14:10:04 +00:00
Chris Hegarty
c77eb16a79 7129083: CookieManager does not store cookies if url is read before setting cookie manager
Reviewed-by: michaelm
2012-01-16 18:05:29 +00:00
Alan Bateman
3fc15f302b 7130398: ProblemList.txt updates (1/2012)
Reviewed-by: chegar
2012-01-16 16:30:29 +00:00
Sergey Malenkov
e20614ed03 7122740: PropertyDescriptor Performance Slow
Reviewed-by: rupashka
2012-01-16 18:28:56 +04:00
David Buck
e6ade0739d 7083621: Add fontconfig file for OEL6 and rename RH/O EL 5 file so that it is picked up for all 5.x updates
Reviewed-by: bae, prr
2012-01-16 11:52:51 +04:00
Weijun Wang
5cbd245bad 7118809: rcache deadlock
Reviewed-by: valeriep
2012-01-16 10:10:56 +08:00
Alejandro Murillo
b4dae5f577 7129512: new hotspot build - hs23-b11
Reviewed-by: jcoomes
2012-01-14 00:52:39 -08:00
Phil Race
3b8a1fee1d 7127827: JRE8: javaws fails to launch on oracle linux due to XRender
Reviewed-by: bae, jgodinez
2012-01-13 13:11:08 -08:00
Charles Lee
5c8b083c66 7129029: (fs) Unix file system provider should be buildable on platforms that don't support O_NOFOLLOW
Reviewed-by: alanb
2012-01-13 13:20:02 +00:00
Alexander Scherbatiy
30f7f59109 7121765: closed/javax/swing/JTextArea/4697612/bug4697612.java fails on MacOS on Aqua L&F
Reviewed-by: rupashka
2012-01-13 12:39:23 +04:00
Valerie Peng
8b0a1174bd Merge 2012-01-12 18:49:33 -08:00
Weijun Wang
c4f77e41b6 7090565: Move test/closed/javax/security/auth/x500/X500Principal/Parse.java to open tests
Reviewed-by: mullan
2012-01-13 09:50:19 +08:00
Valerie Peng
eafb7ad68c 7088989: Improve the performance for T4 by utilizing the newly provided crypto APIs
Added the OracleUcrypto provider for utilizing the Solaris ucrypto API.

Reviewed-by: weijun
2012-01-12 16:04:03 -08:00
Maurizio Cimadamore
1b000de186 7123100: javac fails with java.lang.StackOverflowError
Inference of under-constrained type-variables creates erroneous recursive wildcard types

Reviewed-by: jjg
2012-01-12 15:28:34 +00:00
Xue-Lei Andrew Fan
8b5551f1eb 7106773: 512 bits RSA key cannot work with SHA384 and SHA512
Reviewed-by: weijun
2012-01-12 03:39:37 -08:00
John Cuthbertson
0fa6fc2279 6484965: G1: piggy-back liveness accounting phase on marking
Remove the separate counting phase of concurrent marking by tracking the amount of marked bytes and the cards spanned by marked objects in marking task/worker thread local data structures, which are updated as individual objects are marked.

Reviewed-by: brutisso, tonyp
2012-01-12 00:06:47 -08:00
Antonios Printezis
8861552c07 7132398: G1: java.lang.IllegalArgumentException: Invalid threshold: 9223372036854775807 > max (1073741824)
Was not passing the right old pool max to the memory pool constructor in the fix for 7078465.

Reviewed-by: brutisso, johnc
2012-01-24 17:08:58 -05:00
Bengt Rutisson
4e395f3ddd 7132311: G1: assert((s == klass->oop_size(this)) || (Universe::heap()->is_gc_active() && ((is_typeArray()..
Move the check for when to call collect() to before we do a humongous object allocation

Reviewed-by: stefank, tonyp
2012-01-23 20:36:16 +01:00
Bengt Rutisson
7946306583 7131791: G1: Asserts in nightly testing due to 6976060
Create a handle and fake an object to make sure that we don't loose the memory we just allocated

Reviewed-by: tonyp, stefank
2012-01-20 18:01:32 +01:00
Antonios Printezis
c90c187756 7078465: G1: Don't use the undefined value (-1) for the G1 old memory pool max size
Reviewed-by: johnc, brutisso
2012-01-19 09:13:58 -05:00
John Cuthbertson
43a30ad483 7129271: G1: Interference from multiple threads in PrintGC/PrintGCDetails output
During an initial mark pause, signal the Concurrent Mark thread after the pause output from PrintGC/PrintGCDetails is complete.

Reviewed-by: tonyp, brutisso
2012-01-17 10:21:43 -08:00
Antonios Printezis
c9eb103b7f 7097586: G1: improve the per-space output when using jmap -heap
Extend the jmap -heap output for G1 to include some more G1-specific information.

Reviewed-by: brutisso, johnc, poonam
2012-01-18 10:30:12 -05:00
Bengt Rutisson
c11ba93098 6976060: G1: humongous object allocations should initiate marking cycles when necessary
Reviewed-by: tonyp, johnc
2012-01-16 22:10:05 +01:00
Bengt Rutisson
af0211c200 7130334: G1: Change comments and error messages that refer to CMS in g1/concurrentMark.cpp/hpp
Removed references to CMS in the concurrentMark.cpp/hpp files.

Reviewed-by: tonyp, jmasa, johnc
2012-01-16 11:21:21 +01:00
John Cuthbertson
dac656c955 7121547: G1: High number mispredicted branches while iterating over the marking bitmap
There is a high number of mispredicted branches associated with calling BitMap::iteratate() from within CMBitMapRO::iterate(). Implement a version of CMBitMapRO::iterate() directly using inline-able routines.

Reviewed-by: tonyp, iveresov
2012-01-13 13:27:48 -08:00
Paul Hohensee
8efd785f67 Merge 2012-01-11 17:58:26 -05:00
Markus Gronlund
007126d010 7115199: Add event tracing hooks and Java Flight Recorder infrastructure
Added a nop tracing infrastructure, JFR makefile changes and other infrastructure used only by JFR.

Reviewed-by: acorn, sspitsyn
2012-01-11 17:34:02 -05:00
Maurizio Cimadamore
2c453c5844 7126754: Generics compilation failure casting List<? extends Set...> to List<Set...>
Problems with Types.rewriteQuantifiers not preserving variance

Reviewed-by: jjg
2012-01-11 18:23:24 +00:00
Kumar Srinivasan
86fa49b707 7125442: jar application located in two bytes character named folder cannot be run with JRE 7 u1/u2
Reviewed-by: sherman, mchung, darcy
2012-01-11 08:14:47 -08:00
Alan Bateman
69a71c999c 7068856: (fs) Typo in Files.isSameFile() javadoc
7099208: (fs) Files.newBufferedReader has typo in javadoc

Reviewed-by: forax
2012-01-11 13:07:15 +00:00
Chris Hegarty
1f16d123b1 7128648: HttpURLConnection.getHeaderFields should return an unmodifiable Map
Reviewed-by: michaelm
2012-01-11 10:52:25 +00:00
Joe Darcy
cd63594f4a 7128931: Bad HTML escaping in java.lang.Throwable javadoc
Reviewed-by: mduigou
2012-01-10 17:46:46 -08:00
Joe Darcy
d3428db5c5 7112008: Javadoc for j.l.Object.finalize() vs JLS 12.6 Finalization of Class Instances
Reviewed-by: mduigou
2012-01-10 17:12:11 -08:00
Alexander Scherbatiy
a6f9704a91 6505523: NullPointerException in BasicTreeUI when a node is removed by expansion listener
Reviewed-by: rupashka
2012-01-10 17:11:10 +04:00
Krystal Mok
a5c9da18fb 7128584: Typo in sun.misc.VM's private directMemory field comment
Reviewed-by: forax, chegar
2012-01-10 12:48:08 +00:00
Alexander Scherbatiy
59c8f5f79f 7110815: closed/javax/swing/JSplitPane/4885629/bug4885629.java unstable on MacOS
Reviewed-by: kizune
2012-01-10 15:46:30 +04:00
Brandon Passanisi
f44b5b5812 7123415: Some cases of network interface indexes being read incorrectly
Reviewed-by: chegar
2012-01-10 10:57:12 +00:00
Xue-Lei Andrew Fan
74fcfe6c7e 7123519: problems with certification path
Also including the contribution from Dennis Gu

Reviewed-by: mullan, weijun
2012-01-09 20:55:52 -08:00
Joe Darcy
a821772a15 7128512: Javadoc typo in java.lang.invoke.MethodHandle
Reviewed-by: mduigou
2012-01-09 20:14:15 -08:00
Neil Richards
d51673ed91 7123229: (coll) EnumMap.containsValue(null) returns true
Java.util.EnumMap.NULL equals() must only be true for itself

Reviewed-by: alanb, mduigou
2012-01-10 00:07:13 +00:00
Martin Desruisseaux
f8400651e0 7128441: StrictMath performance improvement note shared with Math
Reviewed-by: darcy
2012-01-09 15:54:44 -08:00
Gary Adams
6eb76c4598 7030573: test/java/io/FileInputStream/LargeFileAvailable.java fails when there is insufficient disk space
Reviewed-by: alanb
2012-01-09 19:33:02 +00:00
Joe Darcy
57096116d9 7123649: Remove public modifier from Math.powerOfTwoF
Reviewed-by: smarks, alanb
2012-01-06 18:47:43 -08:00
Valerie Peng
12558e2ef9 7033170: Cipher.getMaxAllowedKeyLength(String) throws NoSuchAlgorithmException
Changed to always use full transformation as provider properties.

Reviewed-by: mullan
2012-01-06 16:06:41 -08:00
Valerie Peng
c83fa3fdfc Merge 2012-01-06 11:02:31 -08:00
Alan Bateman
5fa281c0ee 7127235: (fs) NPE in Files.walkFileTree if cached attributes are GC'ed
Reviewed-by: forax, chegar
2012-01-06 15:00:22 +00:00
Valerie Peng
1081efba4f 6414899: P11Digest should support cloning
Enhanced the PKCS11 Digest implementation to support cloning

Reviewed-by: vinnie
2012-01-05 18:18:04 -08:00
Oleg Pekhovskiy
152a77b4f6 7121482: some sun/java2d and sun/awt tests failed with InvalidPipeException since 1.7.0_03b02, 6u31b02
Reviewed-by: art, bae
2011-12-28 14:26:03 +04:00
Xueming Shen
8514873d3d 7118283: Better input parameter checking in zip file processing
Fixed off-by-one bug in zip_util.c

Reviewed-by: alanb
2011-12-15 14:18:56 -08:00
Oleg Pekhovskiy
53ea54c90f 7112642: Incorrect checking for graphics rendering object
Reviewed-by: art, bae
2011-12-14 14:43:44 +04:00
Masayoshi Okutsu
666bd54f80 6351654: Problem with java/classes_util_i18n
Reviewed-by: hawtin, coffeys
2011-12-14 11:23:21 +09:00
Stuart Marks
348fa7b88e 7112267: clean up fix for 7110700
Reviewed-by: dmeetry
2011-11-17 15:04:46 -08:00
Sean Coffey
2142a46875 7110704: Issues with some method in corba
Reviewed-by: mbankal
2011-11-17 10:51:17 -08:00
Stuart Marks
d6e13af09c 7110700: Enhance exception throwing mechanism in ObjectStreamClass
Reviewed-by: dmeetry, hawtin
2011-11-11 15:22:11 -08:00
Alex Menkov
159d2cd692 7088367: JavaSound security issue (12865443)
Reviewed-by: denis
2011-10-26 14:00:18 +04:00
Doug Lea
e088fb2b1a 7082299: AtomicReferenceArray should ensure that array is Object[]
Reviewed-by: chegar, dholmes, alanb
2011-10-12 16:33:48 +01:00
8524 changed files with 1389074 additions and 69000 deletions

View File

@@ -3,3 +3,4 @@
/nbproject/private/
^webrev
^.hgtip
.DS_Store

18
.hgtags
View File

@@ -143,3 +143,21 @@ f0eccb2946986fb9626efde7d8ed9c8192623f5c jdk8-b17
0ff7113a0882ec82d642cb9f0297b4e497807ced jdk8-b19
6561530ea757c3f3a6fb171c9cc7b3885cdeca85 jdk8-b20
b3a426170188f52981cf4573a2f14d487fddab0d jdk8-b21
e8f03541af27e38aafb619b96863e17f65ffe53b jdk8-b22
498124337041ad53cbaa7eb110f3d7acd6d4eac4 jdk8-b23
7d3720d8c595d1519c31e9ff7366203fc2c61350 jdk8-b24
0071a6d64113a35ba345bb1580c256de5ce17d3e jdk8-b25
6c805d8ed4e5449ea5e4d158c7bdbd7b0b70efd1 jdk8-b26
c51754cddc037b9609e202b9ed38363d8683e7a8 jdk8-b27
16ba58282d117247f480aae7a79b88141ade52a3 jdk8-b28
e070119aa56ee4dc5506c19d2c4d2eecab8ad429 jdk8-b29
23da7804aca0c9c4e6e86532a1453125a76d95ee jdk8-b30
bac81e9f7d57b75fba5ab31b571f3fe0dc08af69 jdk8-b31
2c5208ccb863db936eab523f49450b3fcd230348 jdk8-b32
a6e6d42203e6d35f9e8b31eac25b0021b4dd58ad jdk8-b33
0ae89825c75c9492e44efb3aca3d9ee3d8a209df jdk8-b34
f151d5833912a82cd4f203944da0305c3be83ecc jdk8-b35
98ce9816ae089c959ba1e70fba98423a31c4e9fa jdk8-b36
b3a91113026c99b0da010d41055719ab0d8938f0 jdk8-b37
4cc5610a6dd6227da766ebf9742eb11ff5ded6c0 jdk8-b38
35a5397278779a2f8f3013f81586dc8f30cb149d jdk8-b39

View File

@@ -143,3 +143,21 @@ a4f28069d44a379cda99dd1d921d19f819726d22 jdk8-b15
237bc29afbfc6f56a4fe4a6008e2befb59c44bac jdk8-b19
5a5eaf6374bcbe23530899579fed17a05b7705f3 jdk8-b20
cc771d92284f71765eca14d6d08703c4af254c04 jdk8-b21
7ad075c809952e355d25030605da6af30456ed74 jdk8-b22
60d6f64a86b1e511169d264727f6d51415978df0 jdk8-b23
1a5f1d6b98d6827cdb529a4abe6e52a886d944f4 jdk8-b24
221a378e06a326f45e5d89e2123cd6323e0181d1 jdk8-b25
2accafff224ae39caf5f532c305251ba624bf2c0 jdk8-b26
1533dfab9903e4edcfead3b0192643f38c418b9b jdk8-b27
6e2541d60f4e342b5b67140271d7611643929dc3 jdk8-b28
41460de042580bc4a4ce3f863779c66f39cb8578 jdk8-b29
6cea54809b51db92979c22fd8aa8fcb1cb13d12e jdk8-b30
0b66f43b89a6c0ac1c15d7ec51992c541cdc9089 jdk8-b31
88176171e940f02916a312c265a34c32552a8376 jdk8-b32
42f275168fa5d9e7c70b246614dca8cf81f52c2e jdk8-b33
894a478d2c4819a1a0f230bd7bdd09f3b2de9a8c jdk8-b34
5285317ebb4e8e4f6d8d52b5616fa801e2ea844d jdk8-b35
6a6ba0a07f33d37a2f97b1107e60c6a9a69ec84d jdk8-b36
b2972095a4b1e2a97409b7c3df61f3b263a5ce14 jdk8-b37
d939bd0ab13c16647ffa38cc4b64fb31b7d44e10 jdk8-b38
8927dd68aee3fa54a1a698e2980e1b2f6c7c12c1 jdk8-b39

View File

@@ -65,6 +65,7 @@
<li><a href="#linux">Basic Linux System Setup</a> </li>
<li><a href="#solaris">Basic Solaris System Setup</a> </li>
<li><a href="#windows">Basic Windows System Setup</a> </li>
<li><a href="#macosx">Basic Mac OS X System Setup</a></li>
<li><a href="#dependencies">Build Dependencies</a>
<ul>
<li><a href="#bootjdk">Bootstrap JDK</a> </li>
@@ -230,6 +231,12 @@
<td>Microsoft Visual Studio C++ 2010 Professional Edition</td>
<td>JDK 6u18</td>
</tr>
<tr>
<td>Mac OS X X64 (64-bit)</td>
<td>Mac OS X 10.7.3 "Lion"</td>
<td>XCode 4.1 or later</td>
<td>Java for OS X Lion Update 1</td>
</tr>
</tbody>
</table>
<p>
@@ -951,6 +958,36 @@
</blockquote>
<!-- ------------------------------------------------------ -->
<hr>
<h3><a name="macosx">Basic Mac OS X System Setup</a></h3>
<blockquote>
<strong>X64 only:</strong>
The minimum recommended hardware for building
the Mac OS X version is any 64-bit capable Intel processor, at least 2
GB of RAM, and approximately 3 GB of free disk space. You should also
have OS X Lion 10.7.3 installed.
</blockquote>
<!-- ------------------------------------------------------ -->
<h4><a name="macosx_checklist">Basic Mac OS X Check List</a></h4>
<blockquote>
<ol>
<li>
Install <a href="https://developer.apple.com/xcode/">XCode 4.1</a> or newer.
If you install XCode 4.3 or newer, make sure you also install
"Command line tools" found under the preferences pane "Downloads".
</li>
<li>
Install <a href="http://support.apple.com/kb/dl1421" target="_blank">"Java for OS X Lion Update 1"</a>,
set <tt><a href="#ALT_BOOTDIR">ALT_BOOTDIR</a> to <code>`/usr/libexec/java_home -v 1.6`</code></tt>
</li>
<li>
<a href="#importjdk">Optional Import JDK</a>, set
<tt><a href="#ALT_JDK_IMPORT_PATH">ALT_JDK_IMPORT_PATH</a></tt>.
</li>
</ol>
</blockquote>
<!-- ------------------------------------------------------ -->
<hr>
<h3><a name="dependencies">Build Dependencies</a></h3>
<blockquote>
Depending on the platform, the OpenJDK build process has some basic
@@ -1194,6 +1231,10 @@
set INCLUDE=%VSINSTALLDIR%\vc\include;%WindowsSdkDir%\include
set LIB=%VSINSTALLDIR%\vc\lib\amd64;%WindowsSdkDir%\lib\x64
</pre>
<strong><a name="llvmgcc">OS X Lion 10.7.3: LLVM GCC</a></strong>
<blockquote>
LLVM GCC is bundled with XCode. The version should be at least 4.2.1.
</blockquote>
</blockquote>
<!-- ------------------------------------------------------ -->
<h4><a name="zip">Zip and Unzip</a></h4>

View File

@@ -0,0 +1,26 @@
#
# Copyright (c) 2011, 2012, Oracle and/or its affiliates. All rights reserved.
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
#
# This code is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License version 2 only, as
# published by the Free Software Foundation.
#
# This code is distributed in the hope that it will be useful, but WITHOUT
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
# version 2 for more details (a copy is included in the LICENSE file that
# accompanied this code).
#
# You should have received a copy of the GNU General Public License version
# 2 along with this work; if not, write to the Free Software Foundation,
# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
#
# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
# or visit www.oracle.com if you need additional information or have any
# questions.
#
# Generated Makefile @DATE_WHEN_CONFIGURED@
SPEC:=@OUTPUT_ROOT@/spec.gmk
include @SRC_ROOT@/common/makefiles/Makefile

View File

@@ -0,0 +1,26 @@
#!/bin/sh
#
# Copyright (c) 2011, 2012, Oracle and/or its affiliates. All rights reserved.
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
#
# This code is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License version 2 only, as
# published by the Free Software Foundation.
#
# This code is distributed in the hope that it will be useful, but WITHOUT
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
# version 2 for more details (a copy is included in the LICENSE file that
# accompanied this code).
#
# You should have received a copy of the GNU General Public License version
# 2 along with this work; if not, write to the Free Software Foundation,
# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
#
# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
# or visit www.oracle.com if you need additional information or have any
# questions.
#
autoconf configure.ac > configure
rm -rf config.status config.log autom4te.cache

1531
common/autoconf/build-aux/config.guess vendored Normal file

File diff suppressed because it is too large Load Diff

1658
common/autoconf/build-aux/config.sub vendored Normal file

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,5 @@
#!/bin/sh
echo >&2 "No suitable 'install' command found.'"
echo >&2 "If automake is installed, running 'automake -fa'"
echo >&2 "(and ignoring the errors) might produce one."
exit 1

View File

@@ -0,0 +1,155 @@
# pkg.m4 - Macros to locate and utilise pkg-config. -*- Autoconf -*-
#
# Copyright © 2004 Scott James Remnant <scott@netsplit.com>.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
#
# This program 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 for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
#
# As a special exception to the GNU General Public License, if you
# distribute this file as part of a program that contains a
# configuration script generated by Autoconf, you may include it under
# the same distribution terms that you use for the rest of that program.
# PKG_PROG_PKG_CONFIG([MIN-VERSION])
# ----------------------------------
AC_DEFUN([PKG_PROG_PKG_CONFIG],
[m4_pattern_forbid([^_?PKG_[A-Z_]+$])
m4_pattern_allow([^PKG_CONFIG(_PATH)?$])
AC_ARG_VAR([PKG_CONFIG], [path to pkg-config utility])dnl
if test "x$ac_cv_env_PKG_CONFIG_set" != "xset"; then
AC_PATH_TOOL([PKG_CONFIG], [pkg-config])
fi
if test -n "$PKG_CONFIG"; then
_pkg_min_version=m4_default([$1], [0.9.0])
AC_MSG_CHECKING([pkg-config is at least version $_pkg_min_version])
if $PKG_CONFIG --atleast-pkgconfig-version $_pkg_min_version; then
AC_MSG_RESULT([yes])
else
AC_MSG_RESULT([no])
PKG_CONFIG=""
fi
fi[]dnl
])# PKG_PROG_PKG_CONFIG
# PKG_CHECK_EXISTS(MODULES, [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND])
#
# Check to see whether a particular set of modules exists. Similar
# to PKG_CHECK_MODULES(), but does not set variables or print errors.
#
#
# Similar to PKG_CHECK_MODULES, make sure that the first instance of
# this or PKG_CHECK_MODULES is called, or make sure to call
# PKG_CHECK_EXISTS manually
# --------------------------------------------------------------
AC_DEFUN([PKG_CHECK_EXISTS],
[AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl
if test -n "$PKG_CONFIG" && \
AC_RUN_LOG([$PKG_CONFIG --exists --print-errors "$1"]); then
m4_ifval([$2], [$2], [:])
m4_ifvaln([$3], [else
$3])dnl
fi])
# _PKG_CONFIG([VARIABLE], [COMMAND], [MODULES])
# ---------------------------------------------
m4_define([_PKG_CONFIG],
[if test -n "$$1"; then
pkg_cv_[]$1="$$1"
elif test -n "$PKG_CONFIG"; then
PKG_CHECK_EXISTS([$3],
[pkg_cv_[]$1=`$PKG_CONFIG --[]$2 "$3" 2>/dev/null`],
[pkg_failed=yes])
else
pkg_failed=untried
fi[]dnl
])# _PKG_CONFIG
# _PKG_SHORT_ERRORS_SUPPORTED
# -----------------------------
AC_DEFUN([_PKG_SHORT_ERRORS_SUPPORTED],
[AC_REQUIRE([PKG_PROG_PKG_CONFIG])
if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
_pkg_short_errors_supported=yes
else
_pkg_short_errors_supported=no
fi[]dnl
])# _PKG_SHORT_ERRORS_SUPPORTED
# PKG_CHECK_MODULES(VARIABLE-PREFIX, MODULES, [ACTION-IF-FOUND],
# [ACTION-IF-NOT-FOUND])
#
#
# Note that if there is a possibility the first call to
# PKG_CHECK_MODULES might not happen, you should be sure to include an
# explicit call to PKG_PROG_PKG_CONFIG in your configure.ac
#
#
# --------------------------------------------------------------
AC_DEFUN([PKG_CHECK_MODULES],
[AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl
AC_ARG_VAR([$1][_CFLAGS], [C compiler flags for $1, overriding pkg-config])dnl
AC_ARG_VAR([$1][_LIBS], [linker flags for $1, overriding pkg-config])dnl
pkg_failed=no
AC_MSG_CHECKING([for $1])
_PKG_CONFIG([$1][_CFLAGS], [cflags], [$2])
_PKG_CONFIG([$1][_LIBS], [libs], [$2])
m4_define([_PKG_TEXT], [Alternatively, you may set the environment variables $1[]_CFLAGS
and $1[]_LIBS to avoid the need to call pkg-config.
See the pkg-config man page for more details.])
if test $pkg_failed = yes; then
_PKG_SHORT_ERRORS_SUPPORTED
if test $_pkg_short_errors_supported = yes; then
$1[]_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors "$2" 2>&1`
else
$1[]_PKG_ERRORS=`$PKG_CONFIG --print-errors "$2" 2>&1`
fi
# Put the nasty error message in config.log where it belongs
echo "$$1[]_PKG_ERRORS" >&AS_MESSAGE_LOG_FD
ifelse([$4], , [AC_MSG_ERROR(dnl
[Package requirements ($2) were not met:
$$1_PKG_ERRORS
Consider adjusting the PKG_CONFIG_PATH environment variable if you
installed software in a non-standard prefix.
_PKG_TEXT
])],
[AC_MSG_RESULT([no])
$4])
elif test $pkg_failed = untried; then
ifelse([$4], , [AC_MSG_FAILURE(dnl
[The pkg-config script could not be found or is too old. Make sure it
is in your PATH or set the PKG_CONFIG environment variable to the full
path to pkg-config.
_PKG_TEXT
To get pkg-config, see <http://pkg-config.freedesktop.org/>.])],
[$4])
else
$1[]_CFLAGS=$pkg_cv_[]$1[]_CFLAGS
$1[]_LIBS=$pkg_cv_[]$1[]_LIBS
AC_MSG_RESULT([yes])
ifelse([$3], , :, [$3])
fi[]dnl
])# PKG_CHECK_MODULES

View File

@@ -0,0 +1,66 @@
#
# Copyright (c) 2011, 2012, Oracle and/or its affiliates. All rights reserved.
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
#
# This code is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License version 2 only, as
# published by the Free Software Foundation.
#
# This code is distributed in the hope that it will be useful, but WITHOUT
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
# version 2 for more details (a copy is included in the LICENSE file that
# accompanied this code).
#
# You should have received a copy of the GNU General Public License version
# 2 along with this work; if not, write to the Free Software Foundation,
# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
#
# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
# or visit www.oracle.com if you need additional information or have any
# questions.
#
# This is a configuration example using builddeps
# that are downloaded from an ftp server.
# This is how you use it:
#configure --with-builddeps-server=ftp://builddeps.server/adir \
# --with-builddeps-conf=..../builddeps.conf.example
# --with-builddeps-dir=/localdisk/mybuilddeps
# Translate a configuration triplet/quadruplet into something
# known by this configuration file.
# If no rewrite was found, then rewritten_host=${host}
REWRITE_i686_pc_linux_gnu=i686-unknown-linux-gnu
REWRITE_i386_pc_solaris2_10=i686-sun-solaris2_10
# The needed cups builddeps are host independent header files.
# I.e. they need not be part of the devkit.
builddep_cups=lib/cups_1_3_9.zip
builddep_cups_CFLAGS=-I${depdir}
# The devkit is the cross compiler tools and sys-roots
# for the build platform.
builddep_devkit=sdk/sdk-${rewritten_build}-20110921.tar.gz
# The freetype dependency is partyl host dependent.
# It is stored inside the sys-root.
builddep_freetype2=sdk/sdk-${rewritten_build}-20110921.tar.gz
builddep_freetype2_CFLAGS=-I${depdir}/${rewritten_host}/sys-root/usr/include/freetype2
builddep_freetype2_LIBS=-lfreetype
# There are many other build dependencies, but they are implicitly
# found inside the devkit sys-root.
# The boot jdk runs on the build system and is used to compile and run
# Java build tools and of course, the bootstrap javac.
builddep_bootjdk_BUILD_i386_pc_solaris2=java/jdk-7u2-fcs-bin-b13-solaris-i586-17_nov_2011.zip
builddep_bootjdk_BUILD_x86_64_pc_solaris2=java/jdk-7u2-fcs-bin-b13-solaris-x64-17_nov_2011.zip
builddep_bootjdk_BUILD_i686_unknown_linux_gnu=java/jdk-7u2-fcs-bin-b13-linux-i586-17_nov_2011.zip
builddep_bootjdk_BUILD_x86_64_unknown_linux_gnu=java/jdk-7u2-fcs-bin-b13-linux-x64-17_nov_2011.zip
builddep_bootjdk_BUILD_sparc_solaris2=java/jdk-7u2-fcs-bin-b13-solaris-sparc-17_nov_2011.zip
builddep_bootjdk_BUILD_sparcv9_solaris2=java/jdk-7u2-fcs-bin-b13-solaris-sparcv9-17_nov_2011.zip
builddep_bootjdk_BUILD_i386_pc_windows=java/jdk-7u2-fcs-bin-b13-windows-i586-17_nov_2011.zip
builddep_bootjdk_BUILD_x86_64_pc_windows=java/jdk-7u2-fcs-bin-b13-windows-x64-17_nov_2011.zip
builddep_bootjdk_ROOT=${depdir}/jdk7_02/jdk1.7.0_02

View File

@@ -0,0 +1,43 @@
#
# 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 configuration example using an nfs-mount /java
# it will use the builddeps directly from the nfs mounted directory.
# This is how you use it:
#configure --with-builddeps-conf=..../builddeps.conf.nfs.example
REWRITE_i686_pc_linux_gnu=i686-unknown-linux-gnu
REWRITE_i386_pc_solaris2_10=i686-sun-solaris2_10
DEVTOOLS=/java/devtools
builddep_cups=${DEVTOOLS}/linux/cups/include
builddep_cups_CFLAGS=-I${depdir}
JDK_ROOT=/java/re/jdk/7u4/latest/binaries
builddep_bootjdk_BUILD_i386_pc_solaris2=${JDK_ROOT}/solaris-i586
builddep_bootjdk_BUILD_x86_64_pc_solaris2=${JDK_ROOT}/solaris-amd64
builddep_bootjdk_BUILD_i686_unknown_linux_gnu=${JDK_ROOT}/linux-i586
builddep_bootjdk_BUILD_x86_64_unknown_linux_gnu=${JDK_ROOT}/linux-amd64
builddep_bootjdk_ROOT=

View File

@@ -0,0 +1,231 @@
#
# 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([BDEPS_SCAN_FOR_BUILDDEPS],
[
define(LIST_OF_BUILD_DEPENDENCIES,)
if test "x$with_builddeps_server" != x || test "x$with_builddeps_conf" != x; then
if test "x$with_builddeps_conf" != x; then
AC_MSG_CHECKING([for supplied builddeps configuration file])
builddepsfile=$with_builddeps_conf
if test -s $builddepsfile; then
. $builddepsfile
AC_MSG_RESULT([loaded!])
else
AC_ERROR([The given builddeps conf file $with_builddeps_conf could not be loaded!])
fi
else
AC_MSG_CHECKING([for builddeps.conf files in sources...])
builddepsfile=`mktemp`
touch $builddepsfile
# Put all found confs into a single file.
find ${SRC_ROOT} -name builddeps.conf -exec cat \{\} \; >> $builddepsfile
# Source the file to acquire the variables
if test -s $builddepsfile; then
. $builddepsfile
AC_MSG_RESULT([found at least one!])
else
AC_ERROR([Could not find any builddeps.conf at all!])
fi
fi
# Create build and host names that use _ instead of "-" and ".".
# This is necessary to use them in variable names.
build_var=`echo ${build} | tr '-' '_' | tr '.' '_'`
host_var=`echo ${host} | tr '-' '_' | tr '.' '_'`
# Extract rewrite information for build and host
eval rewritten_build=\${REWRITE_${build_var}}
if test "x$rewritten_build" = x; then
rewritten_build=${build}
echo Build stays the same $rewritten_build
else
echo Rewriting build for builddeps into $rewritten_build
fi
eval rewritten_host=\${REWRITE_${host_var}}
if test "x$rewritten_host" = x; then
rewritten_host=${host}
echo Host stays the same $rewritten_host
else
echo Rewriting host for builddeps into $rewritten_host
fi
rewritten_build_var=`echo ${rewritten_build} | tr '-' '_' | tr '.' '_'`
rewritten_host_var=`echo ${rewritten_host} | tr '-' '_' | tr '.' '_'`
fi
AC_CHECK_PROGS(BDEPS_UNZIP, [7z unzip])
if test "x$BDEPS_UNZIP" = x7z; then
BDEPS_UNZIP="7z x"
fi
AC_CHECK_PROGS(BDEPS_FTP, [wget lftp ftp])
])
AC_DEFUN([BDEPS_FTPGET],
[
# $1 is the ftp://abuilddeps.server.com/libs/cups.zip
# $2 is the local file name for the downloaded file.
VALID_TOOL=no
if test "x$BDEPS_FTP" = xwget; then
VALID_TOOL=yes
wget -O $2 $1
fi
if test "x$BDEPS_FTP" = xlftp; then
VALID_TOOL=yes
lftp -c "get $1 -o $2"
fi
if test "x$BDEPS_FTP" = xftp; then
VALID_TOOL=yes
FTPSERVER=`echo $1 | cut -f 3 -d '/'`
FTPPATH=`echo $1 | cut -f 4- -d '/'`
FTPUSERPWD=${FTPSERVER%%@*}
if test "x$FTPSERVER" != "x$FTPUSERPWD"; then
FTPUSER=${userpwd%%:*}
FTPPWD=${userpwd#*@}
FTPSERVER=${FTPSERVER#*@}
else
FTPUSER=ftp
FTPPWD=ftp
fi
# the "pass" command does not work on some
# ftp clients (read ftp.exe) but if it works,
# passive mode is better!
(\
echo "user $FTPUSER $FTPPWD" ;\
echo "pass" ;\
echo "bin" ;\
echo "get $FTPPATH $2" ;\
) | ftp -in $FTPSERVER
fi
if test "x$VALID_TOOL" != xyes; then
AC_ERROR([I do not know how to use the tool: $BDEPS_FTP])
fi
])
AC_DEFUN([BDEPS_CHECK_MODULE],
[
define([LIST_OF_BUILD_DEPENDENCIES],LIST_OF_BUILD_DEPENDENCIES[$2=$3'\n'])
if test "x$with_builddeps_server" != x || test "x$with_builddeps_conf" != x; then
# Source the builddeps file again, to make sure it uses the latest variables!
. $builddepsfile
# Look for a host and build machine specific resource!
eval resource=\${builddep_$2_BUILD_${rewritten_build_var}_HOST_${rewritten_host_var}}
if test "x$resource" = x; then
# Ok, lets instead look for a host specific resource
eval resource=\${builddep_$2_HOST_${rewritten_host_var}}
fi
if test "x$resource" = x; then
# Ok, lets instead look for a build specific resource
eval resource=\${builddep_$2_BUILD_${rewritten_build_var}}
fi
if test "x$resource" = x; then
# Ok, lets instead look for a generic resource
# (The $2 comes from M4 and not the shell, thus no need for eval here.)
resource=${builddep_$2}
fi
if test "x$resource" != x; then
AC_MSG_NOTICE([Using builddeps $resource for $2])
# If the resource in the builddeps.conf file is an existing directory,
# for example /java/linux/cups
if test -d ${resource}; then
depdir=${resource}
else
BDEPS_FETCH($2, $resource, $with_builddeps_server, $with_builddeps_dir, depdir)
fi
# Source the builddeps file again, because in the previous command, the depdir
# was updated to point at the current build dependency install directory.
. $builddepsfile
# Now extract variables from the builddeps.conf files.
theroot=${builddep_$2_ROOT}
thecflags=${builddep_$2_CFLAGS}
thelibs=${builddep_$2_LIBS}
if test "x$depdir" = x; then
AC_ERROR([Could not download build dependency $2])
fi
$1=$depdir
if test "x$theroot" != x; then
$1="$theroot"
fi
if test "x$thecflags" != x; then
$1_CFLAGS="$thecflags"
fi
if test "x$thelibs" != x; then
$1_LIBS="$thelibs"
fi
m4_default([$4], [:])
m4_ifvaln([$5], [else $5])
fi
m4_ifvaln([$5], [else $5])
fi
])
AC_DEFUN([BDEPS_FETCH],
[
# $1 is for example mymodule
# $2 is for example libs/general/libmymod_1_2_3.zip
# $3 is for example ftp://mybuilddeps.myserver.com/builddeps
# $4 is for example /localhome/builddeps
# $5 is the name of the variable into which we store the depdir, eg MYMOD
# Will download ftp://mybuilddeps.myserver.com/builddeps/libs/general/libmymod_1_2_3.zip and
# unzip into the directory: /localhome/builddeps/libmymod_1_2_3
filename=`basename $2`
filebase=`echo $filename | sed 's/\.[[^\.]]*$//'`
filebase=${filename%%.*}
extension=${filename#*.}
installdir=$4/$filebase
if test ! -f $installdir/$filename.unpacked; then
AC_MSG_NOTICE([Downloading build dependency $1 from $3/$2 and installing into $installdir])
if test ! -d $installdir; then
mkdir -p $installdir
fi
if test ! -d $installdir; then
AC_ERROR([Could not create directory $installdir])
fi
tmpfile=`mktemp $installdir/$1.XXXXXXXXX`
touch $tmpfile
if test ! -f $tmpfile; then
AC_ERROR([Could not create files in directory $installdir])
fi
BDEPS_FTPGET([$3/$2] , [$tmpfile])
mv $tmpfile $installdir/$filename
if test ! -s $installdir/$filename; then
AC_ERROR([Could not download $3/$2])
fi
case "$extension" in
zip) echo "Unzipping $installdir/$filename..."
(cd $installdir ; rm -f $installdir/$filename.unpacked ; $BDEPS_UNZIP $installdir/$filename > /dev/null && touch $installdir/$filename.unpacked)
;;
tar.gz) echo "Untaring $installdir/$filename..."
(cd $installdir ; rm -f $installdir/$filename.unpacked ; tar xzf $installdir/$filename && touch $installdir/$filename.unpacked)
;;
tgz) echo "Untaring $installdir/$filename..."
(cd $installdir ; rm -f $installdir/$filename.unpacked ; tar xzf $installdir/$filename && touch $installdir/$filename.unpacked)
;;
*) AC_ERROR([Cannot handle build depency archive with extension $extension])
;;
esac
fi
if test -f $installdir/$filename.unpacked; then
$5=$installdir
fi
])

View File

@@ -0,0 +1,28 @@
#
# 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,49 @@
/*
* 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.
*/
#define PACKAGE_NAME "openjdk"
#define PACKAGE_TARNAME "openjdk"
#define PACKAGE_VERSION "version-0.1"
#define PACKAGE_STRING "openjdk version-0.1"
#define PACKAGE_BUGREPORT "build-infra-dev@openjdk.java.net"
#define PACKAGE_URL ""
#define STDC_HEADERS
#define HAVE_SYS_TYPES_H
#define HAVE_SYS_STAT_H
#define HAVE_STDLIB_H
#define HAVE_STRING_H
#define HAVE_MEMORY_H
#define HAVE_STRINGS_H
#define HAVE_INTTYPES_H
#define HAVE_STDINT_H
#define HAVE_UNISTD_H
#define SIZEOF_INT_P 8
#define HAVE_CUPS_CUPS_H
#define HAVE_CUPS_PPD_H
#define HAVE_LIBJPEG
#define HAVE_LIBGIF
#define HAVE_LIBZ
#define HAVE_LIBM
#define HAVE_ALTZONE

16395
common/autoconf/configure vendored Normal file

File diff suppressed because it is too large Load Diff

2651
common/autoconf/configure.ac Normal file

File diff suppressed because it is too large Load Diff

103
common/autoconf/cores.m4 Normal file
View File

@@ -0,0 +1,103 @@
#
# 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([CHECK_CORES],
[
AC_MSG_CHECKING([for number of cores])
NUM_CORES=1
FOUND_CORES=no
if test -f /proc/cpuinfo; then
# Looks like a Linux system
NUM_CORES=`cat /proc/cpuinfo | grep -c processor`
FOUND_CORES=yes
fi
if 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
# 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
fi
# For c/c++ code we run twice as many concurrent build
# jobs than we have cores, otherwise we will stall on io.
CONCURRENT_BUILD_JOBS=`expr $NUM_CORES \* 2`
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!])
fi
])
AC_DEFUN([CHECK_MEMORY_SIZE],
[
AC_MSG_CHECKING([for memory size])
# Default to 1024MB
MEMORY_SIZE=1024
FOUND_MEM=no
if test -f /proc/cpuinfo; then
# Looks like a Linux 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
# 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
# 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/,//'`
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!])
fi
])

110
common/autoconf/help.m4 Normal file
View File

@@ -0,0 +1,110 @@
#
# 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.
#
function help_on_build_dependency {
# Print a helpful message on how to acquire the necessary build dependency.
# $1 is the help tag: freetyp2, cups, pulse, alsa etc
MISSING_DEPENDENCY=$1
PKGHANDLER_COMMAND=
AC_CHECK_PROGS(PKGHANDLER, apt-get yum port pkgutil pkgadd)
case $PKGHANDLER in
apt-get)
apt_help $MISSING_DEPENDENCY ;;
yum)
yum_help $MISSING_DEPENDENCY ;;
port)
port_help $MISSING_DEPENDENCY ;;
pkgutil)
pkgutil_help $MISSING_DEPENDENCY ;;
pkgadd)
pkgadd_help $MISSING_DEPENDENCY ;;
* )
break ;;
esac
if test "x$PKGHANDLER_COMMAND" != x; then
HELP_MSG="Try running '$PKGHANDLER_COMMAND'."
fi
}
function apt_help {
case $1 in
devkit)
PKGHANDLER_COMMAND="sudo apt-get install build-essential" ;;
openjdk)
PKGHANDLER_COMMAND="sudo apt-get install openjdk-7-jdk" ;;
alsa)
PKGHANDLER_COMMAND="sudo apt-get install libasound2-dev" ;;
cups)
PKGHANDLER_COMMAND="sudo apt-get install libcups2-dev" ;;
freetype2)
PKGHANDLER_COMMAND="sudo apt-get install libfreetype6-dev" ;;
pulse)
PKGHANDLER_COMMAND="sudo apt-get install libpulse-dev" ;;
x11)
PKGHANDLER_COMMAND="sudo apt-get install libX11-dev libxext-dev libxrender-dev libxtst-dev" ;;
ccache)
PKGHANDLER_COMMAND="sudo apt-get install ccache" ;;
* )
break ;;
esac
}
function yum_help {
case $1 in
devkit)
PKGHANDLER_COMMAND="sudo yum groupinstall \"Development Tools\"" ;;
openjdk)
PKGHANDLER_COMMAND="sudo yum install java-1.7.0-openjdk" ;;
alsa)
PKGHANDLER_COMMAND="sudo yum install alsa-lib-devel" ;;
cups)
PKGHANDLER_COMMAND="sudo yum install cups-devel" ;;
freetype2)
PKGHANDLER_COMMAND="sudo yum install freetype2-devel" ;;
pulse)
PKGHANDLER_COMMAND="sudo yum install pulseaudio-libs-devel" ;;
x11)
PKGHANDLER_COMMAND="sudo yum install libXtst-devel" ;;
ccache)
PKGHANDLER_COMMAND="sudo yum install ccache" ;;
* )
break ;;
esac
}
function port_help {
PKGHANDLER_COMMAND=""
}
function pkgutil_help {
PKGHANDLER_COMMAND=""
}
function pkgadd_help {
PKGHANDLER_COMMAND=""
}

517
common/autoconf/platform.m4 Normal file
View File

@@ -0,0 +1,517 @@
#
# 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([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 $?)
echo Hejsan > $DELETEDIR/TestIfFindSupportsDelete
TEST_DELETE=`$FIND "$DELETEDIR" -name TestIfFindSupportsDelete $FIND_DELETE 2>&1`
if test -f $DELETEDIR/TestIfFindSupportsDelete; then
# No, it does not.
rm $DELETEDIR/TestIfFindSupportsDelete
FIND_DELETE="-exec rm \{\} \+"
AC_MSG_RESULT([no])
else
AC_MSG_RESULT([yes])
fi
rmdir $DELETEDIR
])
AC_DEFUN([CHECK_NONEMPTY],
[
# Test that variable $1 is not empty.
if test "" = "[$]$1"; then AC_ERROR(Could not find translit($1,A-Z,a-z) !); fi
])
AC_DEFUN([ADD_JVM_ARG_IF_OK],
[
# Test if $1 is a valid argument to $3 (often is $JAVA passed as $3)
# If so, then append $1 to $2
FOUND_WARN=`$3 $1 -version 2>&1 | grep -i warn`
FOUND_VERSION=`$3 $1 -version 2>&1 | grep " version \""`
if test "x$FOUND_VERSION" != x && test "x$FOUND_WARN" = x; then
$2="[$]$2 $1"
fi
])
AC_DEFUN([WHICHCMD],
[
# 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$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$BUILD_OS" = "xwindows"; then
$1=`$CYGPATH -s -m -a "[$]$1"`
$1=`$CYGPATH -u "[$]$1"`
else
AC_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$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"`
fi
$1="$tmp"
])
AC_DEFUN([REMOVE_SYMBOLIC_LINKS],
[
if test "x$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`
if test "x$ISGNU" = x; then
# A readlink that we do not know how to use.
# Are there other non-GNU readlinks out there?
READLINK_TESTED=yes
READLINK=
fi
fi
if test "x$READLINK" != x; then
$1=`$READLINK -f [$]$1`
else
STARTDIR=$PWD
COUNTER=0
DIR=`dirname [$]$1`
FIL=`basename [$]$1`
while test $COUNTER -lt 20; do
ISLINK=`ls -l $DIR/$FIL | 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`
let COUNTER=COUNTER+1
done
cd $STARTDIR
$1=$DIR/$FIL
fi
fi
])
AC_DEFUN([TESTFOR_PROG_CCACHE],
[
AC_ARG_ENABLE([ccache],
[AS_HELP_STRING([--disable-ccache],
[use 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)
else
AC_MSG_CHECKING([for ccache])
AC_MSG_RESULT([explicitly disabled])
CCACHE=
fi
AC_SUBST(CCACHE)
AC_ARG_WITH([ccache-dir],
[AS_HELP_STRING([--with-ccache-dir],
[where to store ccache files @<:@~/.ccache@:>@])])
if test "x$with_ccache_dir" != x; then
# When using a non home ccache directory, assume the use is to share ccache files
# with other users. Thus change the umask.
SET_CCACHE_DIR="CCACHE_DIR=$with_ccache_dir CCACHE_UMASK=002"
fi
CCACHE_FOUND=""
if test "x$CCACHE" != x; then
SETUP_CCACHE_USAGE
fi
])
AC_DEFUN([SETUP_CCACHE_USAGE],
[
if test "x$CCACHE" != x; then
CCACHE_FOUND="true"
# Only use ccache if it is 3.1.4 or later, which supports
# precompiled headers.
AC_MSG_CHECKING([if ccache supports precompiled headers])
HAS_GOOD_CCACHE=`($CCACHE --version | head -n 1 | grep -E 3.1.@<:@456789@:>@) 2> /dev/null`
if test "x$HAS_GOOD_CCACHE" = x; then
AC_MSG_RESULT([no, disabling ccache])
CCACHE=
else
AC_MSG_RESULT([yes])
AC_MSG_CHECKING([if C-compiler supports ccache precompiled headers])
PUSHED_FLAGS="$CXXFLAGS"
CXXFLAGS="-fpch-preprocess $CXXFLAGS"
AC_TRY_COMPILE([], [], [CC_KNOWS_CCACHE_TRICK=yes], [CC_KNOWS_CCACHE_TRICK=no])
CXXFLAGS="$PUSHED_FLAGS"
if test "x$CC_KNOWS_CCACHE_TRICK" = xyes; then
AC_MSG_RESULT([yes])
else
AC_MSG_RESULT([no, disabling ccaching of precompiled headers])
CCACHE=
fi
fi
fi
if test "x$CCACHE" != x; then
CCACHE_SLOPPINESS=time_macros
CCACHE="CCACHE_COMPRESS=1 $SET_CCACHE_DIR CCACHE_SLOPPINESS=$CCACHE_SLOPPINESS $CCACHE"
CCACHE_FLAGS=-fpch-preprocess
if test "x$SET_CCACHE_DIR" != x; then
mkdir -p $CCACHE_DIR > /dev/null 2>&1
chmod a+rwxs $CCACHE_DIR > /dev/null 2>&1
fi
fi
])
AC_DEFUN([EXTRACT_HOST_AND_BUILD_AND_LEGACY_VARS],
[
# Expects $host_os $host_cpu $build_os and $build_cpu
# and $with_data_model to have been setup!
#
# Translate the standard triplet(quadruplet) definition
# of the host/build system into
# HOST_OS=aix,bsd,hpux,linux,macosx,solaris,windows
# HOST_OS_FAMILY=bsd,gnu,sysv,win32,wince
# HOST_OS_API=posix,winapi
#
# HOST_CPU=ia32,x64,sparc,sparcv9,arm,arm64,ppc,ppc64
# HOST_CPU_ARCH=x86,sparc,pcc,arm
# HOST_CPU_BITS=32,64
# HOST_CPU_ENDIAN=big,little
#
# The same values are setup for BUILD_...
#
# And the legacy variables, for controlling the old makefiles.
# LEGACY_HOST_CPU1=i586,amd64,sparc,sparcv9,arm,arm64...
# LEGACY_HOST_CPU2=i386,amd64,sparc,sparcv9,arm,arm64...
# LEGACY_HOST_CPU3=sparcv9,amd64 (but only on solaris)
# LEGACY_HOST_OS_API=solaris,windows
#
# We also copy the autoconf trip/quadruplet
# verbatim to HOST and BUILD
AC_SUBST(HOST, ${host})
AC_SUBST(BUILD, ${build})
EXTRACT_VARS_FROM_OS_TO(HOST,$host_os)
EXTRACT_VARS_FROM_CPU_TO(HOST,$host_cpu)
EXTRACT_VARS_FROM_OS_TO(BUILD,$build_os)
EXTRACT_VARS_FROM_CPU_TO(BUILD,$build_cpu)
if test "x$HOST_OS" != xsolaris; then
LEGACY_HOST_CPU3=""
LEGACY_BUILD_CPU3=""
fi
])
AC_DEFUN([EXTRACT_VARS_FROM_OS_TO],
[
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([EXTRACT_VARS_FROM_CPU_TO],
[
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=sparvc9
fi
AC_SUBST(LEGACY_$1_CPU3)
])
AC_DEFUN([EXTRACT_VARS_FROM_CPU],
[
# First argument is the cpu name from the trip/quad
case "$1" in
x86_64)
VAR_CPU=x64
VAR_CPU_ARCH=x86
VAR_CPU_BITS=64
VAR_CPU_ENDIAN=little
VAR_LEGACY_CPU=amd64
;;
i?86)
VAR_CPU=ia32
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=3264
VAR_CPU_ENDIAN=big
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=32
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)
VAR_CPU=sparcv9
VAR_CPU_ARCH=sparc
VAR_CPU_BITS=64
VAR_CPU_ENDIAN=big
VAR_LEGACY_CPU=sparc_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_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
if test "x$VAR_CPU_ARCH" = "xx86"; then
if test "x$with_data_model" = "x64"; then
VAR_CPU=x64
VAR_CPU_BITS=64
VAR_LEGACY_CPU=amd64
fi
if test "x$with_data_model" = "x32"; then
VAR_CPU=ia32
VAR_CPU_BITS=32
VAR_LEGACY_CPU=i586
fi
fi
])
AC_DEFUN([EXTRACT_VARS_FROM_OS],
[
case "$1" in
*linux*)
VAR_OS=linux
VAR_OS_API=posix
VAR_OS_FAMILY=gnu
;;
*solaris*)
VAR_OS=solaris
VAR_OS_API=posix
VAR_OS_FAMILY=sysv
;;
*darwin*)
VAR_OS=macosx
VAR_OS_API=posix
VAR_OS_FAMILY=bsd
;;
*bsd*)
VAR_OS=bsd
VAR_OS_API=posix
VAR_OS_FAMILY=bsd
;;
*cygwin*|*windows*)
VAR_OS=windows
VAR_OS_API=winapi
VAR_OS_FAMILY=windows
;;
*)
AC_MSG_ERROR([unsupported host operating system $1])
;;
esac
])
AC_DEFUN([CHECK_COMPILER_VERSION],
[
# Test the compilers that their versions are new enough.
# AC_MSG_CHECKING([version of GCC])
gcc_ver=`${CC} -dumpversion`
gcc_major_ver=`echo ${gcc_ver}|cut -d'.' -f1`
gcc_minor_ver=`echo ${gcc_ver}|cut -d'.' -f2`
# AM_CONDITIONAL(GCC_OLD, test ! ${gcc_major_ver} -ge 4 -a ${gcc_minor_ver} -ge 3)
# AC_MSG_RESULT([${gcc_ver} (major version ${gcc_major_ver}, minor version ${gcc_minor_ver})])
])
# Fixes paths on windows hosts to be mixed mode short.
AC_DEFUN([WIN_FIX_PATH],
[
if test "x$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"
fi
])

588
common/autoconf/spec.gmk.in Normal file
View File

@@ -0,0 +1,588 @@
#
# 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.
#
# Configured @DATE_WHEN_CONFIGURED@ to build for a @HOST@ system,
# using ./configure @CONFIGURE_COMMAND_LINE@
# When calling macros, the spaces between arguments are
# often semantically important! Sometimes we need to subst
# spaces and commas, therefore we need the following macros.
X:=
SPACE:=$(X) $(X)
COMMA:=,
HASH:=\#
SQUOTE:='
#'
DQUOTE:="
#"
define NEWLINE:=
endef
# Pass along the verbosity setting.
ifeq (,$(findstring VERBOSE=,$(MAKE)))
MAKE:=$(MAKE) $(VERBOSE) VERBOSE="$(VERBOSE)"
endif
# No implicit variables or rules!
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 built jdk will run in this host system.
HOST:=@HOST@
HOST_OS:=@HOST_OS@
HOST_OS_FAMILY:=@HOST_OS_FAMILY@
HOST_OS_API:=@HOST_OS_API@
HOST_CPU:=@HOST_CPU@
HOST_CPU_ARCH:=@HOST_CPU_ARCH@
HOST_CPU_BITS:=@HOST_CPU_BITS@
HOST_CPU_ENDIAN:=@HOST_CPU_ENDIAN@
# We are building on this build system.
# When not cross-compiling, it is the same as the host.
BUILD:=@BUILD@
BUILD_OS:=@BUILD_OS@
BUILD_OS_FAMILY:=@BUILD_OS_FAMILY@
BUILD_OS_API:=@BUILD_OS_API@
BUILD_CPU:=@BUILD_CPU@
BUILD_CPU_ARCH:=@BUILD_CPU_ARCH@
BUILD_CPU_BITS:=@BUILD_CPU_BITS@
BUILD_CPU_ENDIAN:=@BUILD_CPU_ENDIAN@
# Old name for HOST_OS (aix,bsd,hpux,linux,macosx,solaris,windows etc)
PLATFORM:=@HOST_OS@
# Old name for HOST_CPU, uses i586 and amd64, instead of ia32 and x64.
ARCH:=@LEGACY_HOST_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_HOST_CPU2@
# Use to switch between solaris and windows subdirs in the jdk.
LEGACY_HOST_OS_API:=@LEGACY_HOST_OS_API@
# 32 or 64 bit
ARCH_DATA_MODEL:=@HOST_CPU_BITS@
# Legacy setting for building for a 64 bit machine.
# If yes then this expands to _LP64:=1
@LP64@
ENDIAN:=@HOST_CPU_ENDIAN@
@SET_OPENJDK@
JIGSAW:=@JIGSAW@
LIBM:=-lm
# colon or semicolon
PATH_SEP:=@PATH_SEP@
# Set special env variables, to be passed to external tools.
# Used for cygwin setups.
@SETUPDEVENV@
# 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@
# 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
# on the java launcher command line.
DEFAULT_JVM_VARIANT:=@DEFAULT_JVM_VARIANT@
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:=@OUTPUT_ROOT@/langtools
LANGTOOLS_DIST:=@OUTPUT_ROOT@/langtools/dist
LANGTOOLS_MAKE_ARGS:=@LANGTOOLS_MAKE_ARGS@
CORBA_OUTPUTDIR:=@OUTPUT_ROOT@/corba
CORBA_DIST:=@OUTPUT_ROOT@/corba/dist
CORBA_MAKE_ARGS:=@CORBA_MAKE_ARGS@
JAXP_OUTPUTDIR:=@OUTPUT_ROOT@/jaxp
JAXP_DIST:=@OUTPUT_ROOT@/jaxp/dist
JAXP_MAKE_ARGS:=@JAXP_MAKE_ARGS@
JAXWS_OUTPUTDIR:=@OUTPUT_ROOT@/jaxws
JAXWS_DIST:=@OUTPUT_ROOT@/jaxws/dist
JAXWS_MAKE_ARGS:=@JAXWS_MAKE_ARGS@
HOTSPOT_OUTPUTDIR:=@OUTPUT_ROOT@/hotspot
HOTSPOT_DIST:=@OUTPUT_ROOT@/hotspot/dist
HOTSPOT_MAKE_ARGS:=@HOTSPOT_MAKE_ARGS@
# 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.
HOTSPOT_IMPORT_PATH:=@OUTPUT_ROOT@/hotspot/dist
JDK_OUTPUTDIR:=@OUTPUT_ROOT@/jdk
JDK_MAKE_ARGS:=@JDK_MAKE_ARGS@
# 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
IMAGES_MAKE_ARGS:=@IMAGES_MAKE_ARGS@
# 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_HOST_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_JAVAC_ARGS:=@BOOT_JAVAC_ARGS@
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 libjvm build for C/C++ code.
HOTSPOT_BUILD_JOBS:=@CONCURRENT_BUILD_JOBS@
# 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@
# 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@
ALT_CUPS_HEADERS_PATH:=$(patsubst -I%,%,$(filter -I%,@CUPS_CFLAGS@))
CUPS_CFLAGS:=@CUPS_CFLAGS@
PACKAGE_PATH=@PACKAGE_PATH@
CACERTS_FILE:=$(SRC_ROOT)/jdk/src/share/lib/security/cacerts
#CACERTS_INT=$(CLOSED_SHARE_SRC)/lib/security/cacerts.internal
#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@
CC_OUT_OPTION:=@CC_OUT_OPTION@
EXE_OUT_OPTION:=@EXE_OUT_OPTION@
LD_OUT_OPTION:=@LD_OUT_OPTION@
AR_OUT_OPTION:=@AR_OUT_OPTION@
# Flags used for overriding the default opt setting for a C/C++ source file.
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_HI:=@CXX_O_FLAG_HI@
CXX_O_FLAG_NORM:=@CXX_O_FLAG_NORM@
CXX_O_FLAG_NONE:=@CXX_O_FLAG_NONE@
# 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.
@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:=@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 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@
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@
BOOT_JAR_CMD:=@UNCYGDRIVE@ @JAR@
BOOT_JAR_JFLAGS:=
# Base flags for RC
# Guarding this against resetting value. Legacy make files include spec multiple
# times.
ifndef RC_FLAGS
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@
# 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@
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@
UNCYGDRIVE:=@UNCYGDRIVE@
# Where the build output is stored for your convenience.
BUILD_LOG:=@BUILD_LOG@
BUILD_LOG_WRAPPER:=@BUILD_LOG_WRAPPER@
# 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@
CHECK_FOR_VCINSTALLDIR=@CHECK_FOR_VCINSTALLDIR@
MSVCRNN_DLL:=@MSVCR100DLL@
# ADD_SRCS takes a single argument with source roots
# and appends any corresponding source roots found
# below --with-add-source-root and below
# --with-override-source-root. It is the responsibility
# of the next macro to get rid of superfluous files.
ADD_SRCS=$1
ifneq (,$(ADD_SRC_ROOT))
# Append wildcard rule to pickup any matching source roots found below ADD_SRC_ROOT
ADD_SRCS+=$(wildcard $(subst $(SRC_ROOT),$(ADD_SRC_ROOT),$1))
endif
ifneq (,$(OVERRIDE_SRC_ROOT))
# Append wildcard rule to pickup any matching source roots found below OVERRIDE_SRC_ROOT
ADD_SRCS+=$(wildcard $(subst $(SRC_ROOT),$(OVERRIDE_SRC_ROOT),$1))
endif
# OVR_SRCS creates a filter expression to filter out sources in
# the original source directory that lie inside directories below
# --with-override-source-root.
# Use := here since we want to scan for these files here. To avoid recomputation later.
# We cannot do the scan in configure, since that would force us to rerun configure when
# we add overridden sources.
ifneq (,$(OVERRIDE_SRC_ROOT))
OVR_SRCS:=$(addsuffix %,$(subst $(OVERRIDE_SRC_ROOT),$(SRC_ROOT),$(sort $(dir $(shell $(FIND) $(OVERRIDE_SRC_ROOT) -type f)))))
else
OVR_SRCS:=
endif
####################################################
#
# 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
#
# Control wether Hotspot runs Queens test after building
TEST_IN_BUILD=@TEST_IN_BUILD@

View File

@@ -0,0 +1,36 @@
#
# 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

283
common/bin/compareimage.sh Normal file
View File

@@ -0,0 +1,283 @@
#!/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 "./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 "./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 "./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=`dirname $0`/diffjarzip.sh
DIFFLIB=`dirname $0`/difflib.sh
DIFFEXEC=`dirname $0`/diffexec.sh
export COMPARE_ROOT=/tmp/cimages
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|< ./|\t|g' | sed 's/ /\n/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|> ./|\t|g' | sed 's/ /\n/g'
fi
fi
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" | 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

150
common/bin/diffexec.sh Normal file
View File

@@ -0,0 +1,150 @@
#!/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
NM=gnm
STAT=gstat
elif [ $OSTYPE == "cygwin" ]; then
NM="$VS100COMNTOOLS/../../VC/bin/amd64/dumpbin.exe"
NM_ARGS=/exports
STAT=stat
else
NM=nm
STAT=stat
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=$($STAT -c%s "$OLD")
NEW_SIZE=$($STAT -c%s "$NEW")
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)
RESULT=0
if [ -n "$DIFFS" ]; then
if [ $OLD_SIZE -ne $NEW_SIZE ]
then
echo Differences, content AND size : $OLD_NAME
RESULT=4
else
echo Differences, content BUT SAME size: $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 : $OLD_NAME
RESULT=2
else
echo Identical symbols AND size, BUT not bytewise identical: $OLD_NAME
RESULT=1
fi
fi
exit $RESULT

151
common/bin/diffjarzip.sh Normal file
View File

@@ -0,0 +1,151 @@
#!/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
DIFF=gdiff
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" ]; then
echo The files have to be zip or jar! 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=`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

168
common/bin/difflib.sh Normal file
View File

@@ -0,0 +1,168 @@
#!/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
NM=gnm
STAT=gstat
elif [ $OSTYPE == "cygwin" ]; then
NM="$VS100COMNTOOLS/../../VC/bin/amd64/dumpbin.exe"
NM_ARGS=/exports
STAT=stat
else
NM=nm
STAT=stat
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=$($STAT -c%s "$OLD")
NEW_SIZE=$($STAT -c%s "$NEW")
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/$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)
RESULT=0
if [ -n "$DIFFS" ]; then
if [ $OLD_SIZE -ne $NEW_SIZE ]
then
echo Differences, content AND size : $OLD_NAME
RESULT=4
else
echo Differences, content BUT SAME size: $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 : $OLD_NAME
RESULT=2
else
echo Identical symbols AND size, BUT not bytewise identical: $OLD_NAME
RESULT=1
fi
fi
exit $RESULT

157
common/bin/difftext.sh Normal file
View File

@@ -0,0 +1,157 @@
#!/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

@@ -0,0 +1,114 @@
#
# 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

@@ -0,0 +1,53 @@
#!/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*

View File

@@ -0,0 +1,41 @@
#!/bin/sh
#
# 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 [ -x /usr/bin/ggrep ] ; then
# Gnu grep on Solaris
# (reference configure and build/solaris-i586-clientANDserver-release/spec.gmk
GREP=/usr/bin/ggrep
else
GREP=grep
fi
#
EXP="Note: Some input files use or override a deprecated API."
EXP="${EXP}|Note: Recompile with -Xlint:deprecation for details."
EXP="${EXP}|Note: Some input files use unchecked or unsafe operations."
EXP="${EXP}|Note: Recompile with -Xlint:unchecked for details."
EXP="${EXP}| warning"
EXP="${EXP}|uses or overrides a deprecated API."
EXP="${EXP}|uses unchecked or unsafe operations."
#
${GREP} --line-buffered -v -E "${EXP}"

46
common/bin/logger.sh Normal file
View File

@@ -0,0 +1,46 @@
#!/bin/sh
#
# 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: ./logger.sh theloggfile acommand arg1 arg2
#
# Execute acommand with args, in such a way that
# both stdout and stderr from acommand are appended to
# theloggfile.
#
# Preserve stdout and stderr, so that the stdout
# from logger.sh is the same from acommand and equally
# for stderr.
#
# Propagate the result code from acommand so that
# ./logger.sh exits with the same result code.
# Create a temporary directory to store the result code from
# the wrapped command.
RCDIR=`mktemp -d tmp.XXXXXX` || exit $?
trap "rm -rf '$RCDIR'" EXIT
LOGFILE=$1
shift
(exec 3>&1 ; ("$@" 2>&1 1>&3; echo $? > $RCDIR/rc) | tee -a $LOGFILE 1>&2 ; exec 3>&-) | tee -a $LOGFILE
exit `cat $RCDIR/rc`

View File

@@ -0,0 +1,114 @@
#
# 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.
#
PREFIXES=-pkgPrefix CORBA org.omg \
-pkgPrefix CosNaming org.omg \
-pkgPrefix CosTransactions org.omg \
-pkgPrefix CosTSInteroperation org.omg \
-pkgPrefix DynamicAny org.omg \
-pkgPrefix Dynamic org.omg \
-pkgPrefix IOP org.omg \
-pkgPrefix Messaging org.omg \
-pkgPrefix PortableInterceptor org.omg \
-pkgPrefix PortableServer org.omg \
-pkgPrefix activation com.sun.corba.se.spi \
-pkgPrefix GIOP com.sun.corba.se \
-pkgPrefix PortableActivationIDL com.sun.corba.se \
-pkgPrefix messages com.sun.corba.se
define add_idl_package
# param 1 = MYPACKAGE
# param 2 = src root
# param 3 = gensrc root
# param 4 = source idl to compile
# param 5 = target idl package
# param 6 = delete these files that were output from the idlj
# param 7 = idls that match these patterns should be compiled with -oldImplBase
# param 8 = the idlj command
# Save the generated java files to a temporary directory so
# that we can find them and create proper dependencies.
# After that, we move them to the real gensrc target dir.
$4_TMPDIR:=tmp___$(subst /,_,$(patsubst $2/%,%,$4))___
ifneq ($$(filter $7,$4),)
$4_OLDIMPLBASE:=-oldImplBase
$4_OLDIMPLBASE_MSG:=with -oldImplBase
endif
$5 : $4
mkdir -p $3/$$($4_TMPDIR)
rm -rf $3/$$($4_TMPDIR)
mkdir -p $(dir $5)
echo Compiling IDL $(patsubst $2/%,%,$4)
$8 -td $3/$$($4_TMPDIR) \
-i $2/org/omg/CORBA \
-i $2/org/omg/PortableInterceptor \
-i $2/org/omg/PortableServer \
-D CORBA3 -corba 3.0 \
-fall \
$$($4_OLDIMPLBASE) \
$(PREFIXES) \
$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)
rm -rf $3/$$($4_TMPDIR)
endef
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))
# 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))
$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.
$1_SRC_INCLUDES := $$(addprefix $$($1_SRC)/,$$($1_INCLUDES))
$1_SRC_EXCLUDES := $$(addprefix $$($1_SRC)/,$$($1_EXCLUDES))
$1_BIN_INCLUDES := $$(addprefix $$($1_BIN)/,$$($1_INCLUDES))
$1_BIN_EXCLUDES := $$(addprefix $$($1_BIN)/,$$($1_EXCLUDES))
$1_OLDIMPLBASES := $$(addprefix $$($1_SRC)/,$$($1_OLDIMPLBASES))
# Now remove unwanted java/class files.
$1_SRCS := $$(filter $$($1_SRC_INCLUDES),$$($1_SRCS))
$1_SRCS := $$(filter-out $$($1_SRC_EXCLUDES),$$($1_SRCS))
$1_BINS := $$(filter $$($1_BIN_INCLUDES),$$($1_BINS))
$1_BINS := $$(filter-out $$($1_BIN_EXCLUDES),$$($1_BINS))
$1 := $$(sort $$(patsubst $$($1_SRC)/%.idl,$$($1_BIN)/%.idl.d,$$($1_SRCS)))
# Now create the dependencies for each idl target.
$$(foreach p,$$($1),$$(eval $$(call add_idl_package,$1,$$($1_SRC),$$($1_BIN),$$(patsubst $$($1_BIN)/%.idl.d,$$($1_SRC)/%.idl,$$p),$$p,$$($1_DELETES),$$($1_OLDIMPLBASES),$$($1_IDLJ))))
endef
.SUFFIXES: .java .class .package

View File

@@ -0,0 +1,887 @@
#
# 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.
#
# The complexity of this makefile is not the fault of make, but the fault
# of javac and javah. The basic problems are:
#
# 1) Compiling a single Java source file unpredictably generates anything
# between zero (0!) and an infinite number of .class files!
# 2) There is no hint, for which classes javah needs to be run,
# and it happily generates .h files for classes with no native methods.
# 3) javac and javah do not cleanup anything, for example if an internal
# class (potentially with native methods) is removed from a Java source file.
#
# This makefile is a tribute to GNU make. And yes, it was harder to write than it is
# to read. The include/excludes of directories and files are only a temporary measure
# to work around the messy jdk sources that put platform specific code in src/share/classes.
#
# We should move most of the functionality of this makefile into a
# smart javac/javah/javadoc/jar combo tool. sjavac ?
#
# I.e. 1) It always generates a single output, a zip-file from a number of source roots.
# The zip file contains information that enable incremental builds with full
# dependency tracking between packages.
# 2) It automatically generates the right .h files.
# 3) It keeps its house clean.
# *) Generates intermediate files to be used for javadoc generation later.
# and does all the other useful things that this makefile does, such as:
# use all cores for compilation, reuse the running JVM for all compilations,
# and has pubapi dependency tracking to minimize the number of files
# that need to be recompiled during an incremental build.
#
# A zip file, or several zip files combined, can then be converted to a .jar file, or to a .jmod file.
#
# This would make this makefile much much simpler. I.e. make can be used
# for its real purpose, track dependencies and trigger a recompile if a
# dependency has changed.
#
# When you read this source. Remember that $(sort ...) has the side effect
# of removing duplicates. It is actually this side effect that is
# desired whenever sort is used below!
ifeq (,$(_MAKEBASE_GMK))
$(error You must include MakeBase.gmk prior to including JavaCompilation.gmk)
endif
FALSE_FIND_PATTERN:=-name FILE_NAME_THAT_DOESNT_EXIST
# If compilation of java package fails, then the public api file for that
# package will not be genereated. We add this fallback rule to generate
# an empty pubapi file.
%.api:
if test ! -f $@; then $(MKDIR) -p $(@D); $(TOUCH) $@; fi
define SetupJavaCompiler
# param 1 is for example BOOT_JAVAC or NEW_JAVAC
# This is the name later used to decide which java compiler to use.
# param 2-9 are named args.
# JVM:=The jvm used to run the javac/javah command
# JAVAC:=The javac jar and bootstrap classpath changes, or just bin/javac if JVM is left out
# JAVAH:=The javah jar and bootstrap classpath changes, or just bin/javah if JVM is left out
# FLAGS:=Flags to be supplied to javac
# MODE:=SINGLE_THREADED_BATCH (primarily for old javac) or MULTI_CORE_CONCURRENT
# only for MULTI_CORE_CONCURRENT are the options below relevant:
# SERVER_DIR:=Use a javac server (-XDserver) and store the server related files here
# SERVER_JVM:=Use this JVM for the server. Defaults to the JVM above.
# USE_DEPS:=true means use -XDdeps,-XDpubapi and -XDnativeapi to track java dependencies
$(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))
ifeq ($$($1_MODE),MULTI_CORE_CONCURRENT)
ifneq (,$$($1_SERVER_DIR))
# A javac server has been requested.
# The port file contains the tcp/ip on which the server listens
# and the cookie necessary to talk to the server.
$1_JAVAC_PORTFILE:=$$($1_SERVER_DIR)/$1.port
ifeq ($$($1_SERVER_JVM),)
# You can use a different JVM to run the background javac server.
# But if not set, it defaults to the same JVM that is used to start
# the javac command.
$1_SERVER_JVM:=$$($1_JVM)
endif
# Set the $1_REMOTE to spawn a background javac server.
$1_REMOTE:=-XDserver:portfile=$$($1_JAVAC_PORTFILE),poolsize=$(JAVAC_SERVER_CORES),javac=$$(subst $$(SPACE),%20,$$(subst $$(COMMA),%2C,$$(strip $$($1_SERVER_JVM) $$($1_JAVAC))))
endif
endif
endef
define SetupArchive
# param 1 is for example ARCHIVE_MYPACKAGE
# param 2 are the dependecies
# param 3,4,5,6,7,8,9 are named args.
# SRCS:=List of directories in where to find files to add to archive
# SUFFIXES:=File suffixes to include in jar
# INCLUDES:=List of directories/packages in SRCS that should be included
# EXCLUDES:=List of directories/packages in SRCS that should be excluded
# EXCLUDE_FILES:=List of files in SRCS that should be excluded
# EXTRA_FILES:=List of files in SRCS that should be included regardless of suffix match.
# JAR:=Jar file to create
# MANIFEST:=Optional manifest file template.
# JARMAIN:=Optional main class to add to manifest
# SETUP:=The Java(h) compiler setup, needed to run javah.
# HEADERS:=Directory to put headers in
# SKIP_METAINF:=Set to prevent contents of an META-INF directory to be automatically
# added to the archive.
# EXTRA_MANIFEST_ATTR:=Extra attribute to add to manifest.
$(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)))
$1_JVM := $$($$($1_SETUP)_JVM)
$1_JAVAH := $$($$($1_SETUP)_JAVAH)
$1_JARMAIN:=$(strip $$($1_JARMAIN))
$1_JARNAME:=$$(notdir $$($1_JAR))
$1_MANIFEST_FILE:=$$(dir $$($1_JAR))_the.$$($1_JARNAME)_manifest
$1_DELETESS_FILE:=$$(dir $$($1_JAR))_the.$$($1_JARNAME)_deletess
$1_DELETES_FILE:=$$(dir $$($1_JAR))_the.$$($1_JARNAME)_deletes
$1_PUBAPI_NOTIFICATIONS_FILE:=$$(dir $$($1_JAR))_the.$$($1_JARNAME)_pubapi_notifications
$1_NATIVEAPI_NOTIFICATIONS_FILE:=$$(dir $$($1_JAR))_the.$$($1_JARNAME)_native_notifications
$1_NATIVEAPI_FILE:=$$(dir $$($1_JAR))_the.$$($1_JARNAME)_native
$1_BIN:=$$(dir $$($1_JAR))
ifeq (,$$($1_SUFFIXES))
# No suffix was set, default to classes.
$1_SUFFIXES:=.class
endif
# Convert suffixes to a find expression
$1_FIND_PATTERNS:=$(FALSE_FIND_PATTERN) $$(patsubst %,$(SPACE)-o$(SPACE)-name$(SPACE)$(DQUOTE)*%$(DQUOTE),$$($1_SUFFIXES))
ifneq (,$$($1_INCLUDES))
$1_GREP_INCLUDES:=| $(GREP) $$(foreach src,$$($1_SRCS),$$(addprefix -e$(SPACE)$$(src)/,$$($1_INCLUDES)))
endif
ifneq (,$$($1_EXCLUDES)$$($1_EXCLUDE_FILES))
$1_GREP_EXCLUDES:=| $(GREP) -v $$(foreach src,$$($1_SRCS),$$(addprefix -e$(SPACE)$$(src)/,$$($1_EXCLUDES) $$($1_EXCLUDE_FILES)))
endif
# Utility macros, to make the shell script receipt somewhat easier to dechipher.
# The capture contents macro finds all files (matching the patterns, typically
# .class and .prp) that are newer than the jar-file, ie the new content to be put into the jar.
$1_CAPTURE_CONTENTS=$$(foreach src,$$($1_SRCS),(($(FIND) $$(src) -type f -a \( $$($1_FIND_PATTERNS) \) -a -newer $$@ $$($1_GREP_INCLUDES) $$($1_GREP_EXCLUDES) && $(ECHO) $$($1_EXTRA_FILES)) | $(SED) 's|$$(src)/||g' > $$(src)/_the.$$($1_JARNAME)_contents) && )
# The capture metainf macro finds all files below the META-INF directory that are newer than the jar-file.
ifeq (,$$($1_SKIP_METAINF))
$1_CAPTURE_METAINF =$$(foreach src,$$($1_SRCS),($(FIND) $$(src)/META-INF -type f -a -newer $$@ 2> /dev/null | $(SED) 's|$$(src)/||g' >> $$(src)/_the.$$($1_JARNAME)_contents ) && )
endif
# The capture deletes macro finds all deleted files and concatenates them. The resulting file
# tells us what to remove from the jar-file.
$1_CAPTURE_DELETES=$$(foreach src,$$($1_SRCS),($(FIND) $$(src) -name _the.package.deleted -newer $$@ -exec $(SED) 's|$$(src)||g' \{\} >> $$($1_DELETES_FILE) \;) &&)
# The capture pubapi notifications scans for pubapi change notifications. If such notifications are
# found, then we will build the classes leading up to the jar again, to take into account the new timestamps
# on the changed pubapi files.
$1_CAPTURE_PUBAPI_NOTIFICATIONS=$$(foreach src,$$($1_SRCS),\
(cd $$(src) && \
$(FIND) . -name _the.package.api.notify -exec dirname \{\} \; >> $$($1_PUBAPI_NOTIFICATIONS_FILE) ; \
true) &&)
# The capture nativeapi macro scans for native api change notificiations. If such notifications are
# found, then we will run javah on the changed classes. It also collects all classes with native methods
# to be used to find out which classes no longer has native methods, to trigger deletion of those .h files.
$1_CAPTURE_NATIVEAPI=$$(foreach src,$$($1_SRCS),\
(cd $$(src) && \
$(FIND) . -name _the.package.native.notify | $(SED) 's/package.native.notify/package.native/' | \
$(XARGS) $(CAT) | $(GREP) '^TYPE ' | $(SED) 's/.*TYPE //' >> $$($1_NATIVEAPI_NOTIFICATIONS_FILE) ; \
$(FIND) . -name _the.package.native -exec $(CAT) \{\} \; | $(SED) -n 's/^TYPE //p' >> $$($1_NATIVEAPI_FILE) ; \
true) &&)
# The update contents macro updates the jar file with the previously capture contents.
$1_UPDATE_CONTENTS=$$(foreach src,$$($1_SRCS),\
(cd $$(src) && \
if [ -s _the.$$($1_JARNAME)_contents ]; then \
$(ECHO) " updating" `$(WC) -l _the.$$($1_JARNAME)_contents | $(AWK) '{ print $$$$1 }'` files && \
$(JAR) uf $$@ @_the.$$($1_JARNAME)_contents; \
fi) &&)
# The s-variants of the above macros are used when the jar is created from scratch.
$1_SCAPTURE_CONTENTS=$$(foreach src,$$($1_SRCS),\
(($(FIND) $$(src) -type f -a \( $$($1_FIND_PATTERNS) \) $$($1_GREP_INCLUDES) $$($1_GREP_EXCLUDES) && $(ECHO) $$($1_EXTRA_FILES)) | $(SED) 's|$$(src)/||g' > $$(src)/_the.$$($1_JARNAME)_contents) && )
ifeq (,$$($1_SKIP_METAINF))
$1_SCAPTURE_METAINF=$$(foreach src,$$($1_SRCS),\
($(FIND) $$(src)/META-INF -type f 2> /dev/null | $(SED) 's|$$(src)/||g' >> $$(src)/_the.$$($1_JARNAME)_contents) && )
endif
$1_SUPDATE_CONTENTS=$$(foreach src,$$($1_SRCS),\
(cd $$(src) && $(JAR) uf $$@ @$$(src)/_the.$$($1_JARNAME)_contents) &&)
# The TOUCH macro is used to make sure all timestamps are identical for package files and the pubapi files.
# If we do not do this, we get random recompilations, the next time we run make, since the order of package building is random,
# ie independent of package --dependes on-> public api of another package. This is of course
# due to the fact that Java source often (always?) has circular dependencies. (Thus there is no correct order
# to compile packages, and we can just as well do them in a random order. Which we do.)
$1_TOUCH_API_FILES=$$(foreach src,$$($1_SRCS),\
($(FIND) $$(src) -name _the.package.api -exec $(TOUCH) -r $$($1_JAR) \{\} \; ; true) && \
($(FIND) $$(src) -name _the.package -exec $(TOUCH) -r $$($1_JAR) \{\} \; ; true) &&)
# Use a slightly shorter name for logging, but with enough path to identify this jar.
$1_NAME:=$$(subst $$(OUTPUT_ROOT)/,,$$($1_JAR))
# Here is the rule that creates/updates the jar file.
$$($1_JAR) : $2
$(MKDIR) -p $$($1_BIN)
if [ -n "$$($1_MANIFEST)" ]; then \
$(SED) -e "s#@@RELEASE@@#$(RELEASE)#" \
-e "s#@@COMPANY_NAME@@#$(COMPANY_NAME)#" $$($1_MANIFEST) > $$($1_MANIFEST_FILE); \
else \
$(RM) $$($1_MANIFEST_FILE) && $(TOUCH) $$($1_MANIFEST_FILE); \
fi
$(ECHO) "Main-Class: $$(strip $$($1_JARMAIN))" >> $$($1_MANIFEST_FILE)
if [ -n "$$($1_EXTRA_MANIFEST_ATTR)" ]; then \
$(ECHO) "$$($1_EXTRA_MANIFEST_ATTR)" >> $$($1_MANIFEST_FILE); \
fi
+if [ -s $$@ ]; then \
$(RM) -r $$($1_PUBAPI_NOTIFICATIONS_FILE) && \
$$($1_CAPTURE_PUBAPI_NOTIFICATIONS) \
if [ -s $$($1_PUBAPI_NOTIFICATIONS_FILE) ]; then \
$(ECHO) Public api change detected in: && \
$(CAT) $$($1_PUBAPI_NOTIFICATIONS_FILE) | $(TR) '/' '.' | $(SED) 's|^..||g' | $(SED) 's|\.$$$$||g' | $(AWK) '{print " "$$$$1}' && \
$$(foreach src,$$($1_SRCS),($(FIND) $$(src) -name _the.package.api.notify $(FIND_DELETE); true) &&) \
$(MAKE) -f $(word 1,$(MAKEFILE_LIST)) $$($1_JAR) ; \
else \
$(ECHO) Modifying $$($1_NAME) && \
$$($1_CAPTURE_CONTENTS) \
$$($1_CAPTURE_METAINF) \
$(RM) $$($1_DELETES_FILE) && \
$$($1_CAPTURE_DELETES) \
$(CAT) $$($1_DELETES_FILE) > $$($1_DELETESS_FILE) && \
if [ -s $$($1_DELETESS_FILE) ]; then \
$(ECHO) " deleting" `$(WC) -l $$($1_DELETESS_FILE) | $(AWK) '{ print $$$$1 }'` files && \
$(ZIP) -q -d $$@ `$(CAT) $$($1_DELETESS_FILE)` ; \
fi && \
$$($1_UPDATE_CONTENTS) true && \
$$($1_TOUCH_API_FILES) true && \
$(RM) -r $$($1_NATIVEAPI_NOTIFICATIONS_FILE) $$($1_NATIVEAPI_FILE) && \
$$($1_CAPTURE_NATIVEAPI) true && \
if [ "x$$($1_JAVAH)" != "x" ] && [ -s $$($1_NATIVEAPI_NOTIFICATIONS_FILE) ]; then \
$(ECHO) Native api change detected in: && $(CAT) $$($1_NATIVEAPI_NOTIFICATIONS_FILE) && \
$$($1_JVM) $$($1_JAVAH) "-Xbootclasspath/p:$$($1_JAR)" -d $$($1_HEADERS) @$$($1_NATIVEAPI_NOTIFICATIONS_FILE) ; \
fi && \
$(TOUCH) $$($1_NATIVEAPI_FILE)_prev ; \
($(GREP) -xvf $$($1_NATIVEAPI_FILE) $$($1_NATIVEAPI_FILE)_prev > $$($1_NATIVEAPI_FILE)_deleted; true) && \
$(CP) $$($1_NATIVEAPI_FILE) $$($1_NATIVEAPI_FILE)_prev && \
if [ -s $$($1_NATIVEAPI_FILE)_deleted ]; then \
$(ECHO) Native methods dropped from classes: && $(CAT) $$($1_NATIVEAPI_FILE)_deleted && \
$(RM) `$(CAT) $$($1_NATIVEAPI_FILE)_deleted | $(SED) -e 's|\.|_|g' -e 's|.*|$$($1_HEADERS)/&.h $$($1_HEADERS)/&_*|'` ; \
fi && \
$$(foreach src,$$($1_SRCS),($(FIND) $$(src) -name _the.package.api.notify $(FIND_DELETE); true) &&) true ; \
fi ; \
else \
$(ECHO) Creating $$($1_NAME) && $(JAR) cfm $$@ $$($1_MANIFEST_FILE) && \
$$($1_SCAPTURE_CONTENTS) \
$$($1_SCAPTURE_METAINF) \
$$($1_SUPDATE_CONTENTS) \
$$($1_TOUCH_API_FILES) true && \
$(RM) -r $$($1_NATIVEAPI_NOTIFICATIONS_FILE) $$($1_NATIVEAPI_FILE) && \
$$($1_CAPTURE_NATIVEAPI) true && \
if [ "x$$($1_JAVAH)" != "x" ] && [ -s $$($1_NATIVEAPI_FILE) ]; then \
$(ECHO) Generating native api headers for `$(CAT) $$($1_NATIVEAPI_FILE) | $(WC) -l` classes && \
$(RM) $$($1_HEADERS)/*.h && \
$$($1_JVM) $$($1_JAVAH) "-Xbootclasspath/p:$$($1_JAR)" -d $$($1_HEADERS) @$$($1_NATIVEAPI_FILE) && \
$(CP) $$($1_NATIVEAPI_FILE) $$($1_NATIVEAPI_FILE)_prev ; \
fi && \
$$(foreach src,$$($1_SRCS),($(FIND) $$(src) -name "*.notify" $(FIND_DELETE); true) &&) true ; \
fi;
endef
define append_to
$(ECHO) "$1" >> $2
endef
define SetupZipArchive
# param 1 is for example ZIP_MYSOURCE
# param 2,3,4,5,6,7,8,9 are named args.
# SRC,ZIP,INCLUDES,EXCLUDES,EXCLUDE_FILES
$(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))
# Find all files in the source tree.
$1_ALL_SRCS := $$(foreach i,$$($1_SRC), $$(shell $(FIND) $$i -type f -a ! -name "_the.*"))
ifneq ($$($1_INCLUDES),)
$1_SRC_INCLUDES := $$(foreach i,$$($1_SRC),$$(addprefix $$i/,$$(addsuffix /%,$$($1_INCLUDES))))
$1_ZIP_INCLUDES := $$(addprefix -i$(SPACE)$(DQUOTE),$$(addsuffix /*$(DQUOTE),$$($1_INCLUDES)))
$1_ALL_SRCS := $$(filter $$($1_SRC_INCLUDES),$$($1_ALL_SRCS))
endif
ifneq ($$($1_EXCLUDES),)
$1_SRC_EXCLUDES := $$(foreach i,$$($1_SRC),$$(addprefix $$i/,$$(addsuffix /%,$$($1_EXCLUDES))))
$1_ZIP_EXCLUDES := $$(addprefix -x$(SPACE)$(DQUOTE),$$(addsuffix /*$(DQUOTE),$$($1_EXCLUDES)))
$1_ALL_SRCS := $$(filter-out $$($1_SRC_EXCLUDES),$$($1_SRCS))
endif
# Use a slightly shorter name for logging, but with enough path to identify this zip.
$1_NAME:=$$(subst $$(OUTPUT_ROOT)/,,$$($1_ZIP))
# Now $1_ALL_SRCS should contain all sources that are going to be put into the zip.
# I.e. the zip -i and -x options should match the filtering done in the makefile.
# Explicitly excluded files can be given with absolute path. The patsubst solution
# isn't perfect but the likelyhood of an absolute path to match something in a src
# dir is very small.
$$($1_ZIP) : $$($1_ALL_SRCS)
$(MKDIR) -p $$(@D)
$(ECHO) Updating $$($1_NAME)
$$(foreach i,$$($1_SRC),(cd $$i && $(ZIP) -qru $$@ . $$($1_ZIP_INCLUDES) $$($1_ZIP_EXCLUDES) -x \*_the.\* $$(addprefix -x$(SPACE),$$(patsubst $$i/%,%,$$($1_EXCLUDE_FILES)))) ;) true
$(TOUCH) $$@
endef
define add_file_to_copy
# param 1 = BUILD_MYPACKAGE
# parma 2 = The source file to copy.
$2_TARGET:=$2
# Remove the source prefix.
$$(foreach i,$$($1_SRC),$$(eval $$(call remove_string,$$i,$2_TARGET)))
# Now we can setup the depency that will trigger the copying.
$$($1_BIN)$$($2_TARGET) : $2
$(MKDIR) -p $$(@D)
$(CP) $$< $$@
$(CHMOD) -f ug+w $$@
# And do not forget this target
$1_ALL_COPY_TARGETS += $$($1_BIN)$$($2_TARGET)
endef
# This macro is used only for properties files that are to be
# copied over to the classes directory in cleaned form:
# Previously this was inconsistently done in different repositories.
# This is the new clean standard.
define add_file_to_copy_and_clean
# param 1 = BUILD_MYPACKAGE
# parma 2 = The source file to copy and clean.
$2_TARGET:=$2
# Remove the source prefix.
$$(foreach i,$$($1_SRC),$$(eval $$(call remove_string,$$i,$2_TARGET)))
# Now we can setup the depency that will trigger the copying.
$$($1_BIN)$$($2_TARGET) : $2
$(MKDIR) -p $$(@D)
$(ECHO) Cleaning $$($2_TARGET)
$(CAT) $$< | $(SED) -e 's/\([^\\]\):/\1\\:/g' -e 's/\([^\\]\)=/\1\\=/g' -e 's/#.*/#/g' \
| $(SED) \
-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 > $$@
$(CHMOD) -f ug+w $$@
# And do not forget this target
$1_ALL_COPY_CLEAN_TARGETS += $$($1_BIN)$$($2_TARGET)
endef
define add_java_package
# param 1 = BUILD_MYPACKAGE
# param 2 = the package target file (_the.package)
# param 3 = src roots, all of them, separated with space
# param 4 = bin root
# param 5 = include these dependecies
# param 6 = not used
# param 7 = if non-empty, then use -Xdeps and -Xpubapi
# param 8 = xremote configuration, or empty.
# param 9 = javac command
# param 10 = javac flags
# param 11 = exclude these files!
# param 12 = only include these files!
# param 13 = javah command
# param 14 = override src roots to be passed into -sourcepath, ugly ugly ugly, do not use this!
# it is only here to workaround ugly things in the source code in the jdk that ought
# to be fixed instead!
ifdef $2_USED_BY
$$(error Attempting to add the package $2 from $3 which is already added with sources from $$($2_USED_BY))
endif
$2_USED_BY:=$3
# Remove the _the.package file to get the target bin dir for the classes in this package.
$2_PACKAGE_BDIR:=$(dir $2)
# The source roots separated with a path separator (: or ; depending on os)
# (The patsubst is necessary to trim away unnecessary spaces.)
ifneq ($(14),)
$2_SRCROOTSC:=$(subst $(SPACE),$(PATH_SEP),$(strip $(patsubst %,%,$(14))))
else
$2_SRCROOTSC:=$(subst $(SPACE),$(PATH_SEP),$(strip $(patsubst %,%,$3)))
endif
# Suffix the package path to the src roots, to get a list of all possible source locations
# for this package.
$2_PACKAGE_SDIRS:=$$(foreach i,$3,$$(subst $4,$$i,$$($2_PACKAGE_BDIR)))
# Use wildcard in all potential source locations to find the actual sources.
$2_PACKAGE_SRCS:=$$(filter-out $(11),$$(wildcard $$(addsuffix *.java,$$($2_PACKAGE_SDIRS))))
ifneq ($(12),)
# Filter on include file filter if set.
$2_PACKAGE_SRCS:=$$(filter $(12),$$($2_PACKAGE_SRCS))
endif
# Generate a proper package name from the file name.
$2_PACKAGE:=$(patsubst .%.,%,$(subst /,.,$(subst $4,,$(dir $2))))
# Use a javac server for this package?
$2_REMOTE:=$8
# Include previously generated information about what classes are output by this package
# and what sources were used for the compile.
-include $$($2_PACKAGE_BDIR)_the.package.d
# Include the notify, file, that exists if the package has been compiled during a previous make round.
# I.e. we are now dealing with a compile triggered by a pubapi change.
-include $$($2_PACKAGE_BDIR)_the.package.notify
# If the notify file existed, then $$($2_NOTIFIED) will be equal to true.
# Use this information to block dependency tracking for this package.
# This is necessary to cut the circular dependency chains that are so common in Java sources.
ifneq ($$($2_NOTIFIED),true)
# No need to block, since this package has not yet been recompiled.
# Thus include previously generated dependency information. (if it exists)
-include $$($2_PACKAGE_BDIR)_the.package.dddd
# else
# $$(info WAS NOTIFIED $2)
endif
# Should we create proper dependencies between packages?
ifneq ($7,)
# The flag: -XDpubapi:file=foo,package=mypack,notify writes a file foo that contains a
# database of the public api of the classes supplied on the command line and are
# inside the package mypack. If foo already exists, javac will only write to foo,
# if there is a change in the pubapi. I.e. we can use the timestamp of this file
# for triggering dependencies. "notify" means create a "file" suffixed with notify
# if the pubapi really changed.
$2_PUBAPI=-XDpubapi=file=$$($2_PACKAGE_BDIR)_the.package.api,notify,package=$$($2_PACKAGE)
# The flag: -XDnativeapi:file=foo,package=mypack,notify works similar to pubabi, but
# instead tracks native methods. This file can be used to trigger dependencies for
# native compilations.
$2_NATIVEAPI=-XDnativeapi=file=$$($2_PACKAGE_BDIR)_the.package.native,notify,package=$$($2_PACKAGE)
# The flag -XDdeps:file=foo.deps,groupon=package writes a foo.deps file containing packages dependencies:
# java.net : java.io java.lang
# I.e. the classes in .net depend on the public apis of java.io and java.lang
# The dependencies can be grouped on classes instead (groupon=class)
# java.net.Bar : java.io.Socket java.lang.String
$2_DEPS:=-XDdeps=file=$$($2_PACKAGE_BDIR)_the.package.deps,groupon=package
# The next command rewrites the deps output from javac into a proper makefile dependency.
# The dependencies are always to an .api file generated by the pubapi option above.
# This is necessary since java package dependencies are almost always circular.
$2_APPEND_DEPS:=($(CAT) $$($2_PACKAGE_BDIR)_the.package.deps | $(TR) '.' '/' | $(AWK) '{ print "$4/" $$$$3 }' | sort > $$($2_PACKAGE_BDIR)_the.package.ddd && $(GREP) -f $$($2_PACKAGE_BDIR)_the.package.ddd $5 | $(AWK) '{ print "$(dir $2)_the.package : " $$$$1 "_the.package.api" }' > $$($2_PACKAGE_BDIR)_the.package.dddd ; true)
else
# If not using dependencies, use $2 as fallback to trigger regeneration of javah header files.
# This will generate a surplus of header files, but this does not hurt compilation.
$2_NATIVEAPICHANGE_TRIGGER:=$2
$2_FETCH_NATIVEAPICHANGE_CLASSES:=$(CAT) $$($2_PACKAGE_BDIR)_the.package.now|$(GREP) -v '\$$$$'|$(SED) -e 's|$4/||g'|$(SED) 's|.class||g'| $(TR) '/' '.'
endif
# The _the.package file is dependent on the java files inside the package.
# Fill the _the.package file with a list of the java files and compile them
# to class files.
$2 : $$($2_PACKAGE_SRCS)
$(MKDIR) -p $$($2_PACKAGE_BDIR)
$(RM) $2.tmp
$$(call ListPathsSafely,$2_PACKAGE_SRCS,\n, >> $2.tmp)
$(ECHO) $$($2_PACKAGE_BDIR)*.class | $(GREP) -v \*.class | $(TR) ' ' '\n' > $$($2_PACKAGE_BDIR)_the.package.prev
$(RM) $$($2_PACKAGE_BDIR)*.class $$($2_PACKAGE_BDIR)*.notify $$($2_PACKAGE_BDIR)*.deleted
$(ECHO) Compiling `$(WC) $2.tmp | $(TR) -s ' ' | $(CUT) -f 2 -d ' '` files in package $(patsubst $4/%/,%,$(dir $2.tmp))
$9 $$($2_REMOTE) $$($2_DEPS) $$($2_PUBAPI) $$($2_NATIVEAPI) $(10) -implicit:none -sourcepath "$$($2_SRCROOTSC)" -d $4 @$2.tmp
$(ECHO) $$($2_PACKAGE_BDIR)*.class | $(GREP) -v \*.class | $(TR) ' ' '\n' > $$($2_PACKAGE_BDIR)_the.package.now
($(GREP) -xvf $$($2_PACKAGE_BDIR)_the.package.now $$($2_PACKAGE_BDIR)_the.package.prev > $$($2_PACKAGE_BDIR)_the.package.deleted;true)
$(ECHO) $1_CLASSES += `$(CAT) $$($2_PACKAGE_BDIR)_the.package.now` | \
$(SED) 's/\$$$$/\$$$$\$$$$/g' > $$($2_PACKAGE_BDIR)_the.package.d
$(ECHO) $1_JAVAS += $$($2_PACKAGE_SRCS) >> $$($2_PACKAGE_BDIR)_the.package.d
$(ECHO) $2_NOTIFIED:=true > $$($2_PACKAGE_BDIR)_the.package.notify
$$($2_APPEND_DEPS)
$$($2_COPY_FILES)
$(MV) -f $2.tmp $2
endef
define remove_string
$2 := $$(subst $1,,$$($2))
endef
define replace_space_with_pathsep
$1:=$(subst $(SPACE),$(PATH_SEP),$(strip $(patsubst %,%,$2)))
endef
define SetupJavaCompilation
# param 1 is for example BUILD_MYPACKAGE
# param 2,3,4,5,6,7,8 are named args.
# SETUP:=must point to a previously setup java compiler, for example: SETUP:=BOOTJAVAC
# JVM:=path to ..bin/java
# ADD_JAVAC_FLAGS:=javac flags to append to the default ones.
# SRC:=one or more directories to search for sources
# BIN:=store classes here
# INCLUDES:=myapp.foo means will only compile java files in myapp.foo or any of its sub-packages.
# EXCLUDES:=myapp.foo means will do not compile java files in myapp.foo or any of its sub-packages.
# COPY:=.prp means copy all prp files to the corresponding package in BIN.
# CLEAN:=.properties means copy and clean all properties file to the corresponding package in BIN.
# COPY_FILES:=myapp/foo/setting.txt means copy this file over to the package myapp/foo
# SRCZIP:=Create a src.zip based on the found sources and copied files.
# INCLUDE_FILES:="com/sun/SolarisFoobar.java" means only compile this file!
# EXCLUDE_FILES:="com/sun/SolarisFoobar.java" means do not compile this particular file!
# "SolarisFoobar.java" means do not compile SolarisFoobar, wherever it is found.
# JAVAC_SOURCE_PATH_UGLY_OVERRIDE:=Don't use this. This forces an explicit -sourcepath to javac.
# Its only here until we cleanup some nasty source code pasta in the jdk.
# HEADERS:=path to directory where all generated c-headers are written.
$(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)))
# Extract the info from the java compiler setup.
$1_MODE := $$($$($1_SETUP)_MODE)
ifneq (SINGLE_THREADED_BATCH,$$($1_MODE))
ifneq (MULTI_CORE_CONCURRENT,$$($1_MODE))
$$(error The Java compilation $1 refers to a non-existant java compiler setup $$($1_SETUP))
endif
endif
$1_USE_DEPS := $$($$($1_SETUP)_USE_DEPS)
$1_REMOTE := $$($$($1_SETUP)_REMOTE)
$1_JVM := $$($$($1_SETUP)_JVM)
$1_JAVAC := $$($$($1_SETUP)_JAVAC)
$1_JAVAH := $$($$($1_SETUP)_JAVAH)
$1_FLAGS := $$($$($1_SETUP)_FLAGS) $(JAVAC_FLAGS) $$($1_ADD_JAVAC_FLAGS)
ifeq (,$$($1_HEADERS))
$1_HEADERS := $$($1_BIN)
endif
# Handle addons and overrides.
$1_SRC:=$$(call ADD_SRCS,$$($1_SRC))
# Make sure the dirs exist.
$$(shell $(MKDIR) -p $$($1_SRC) $$($1_BIN))
# Find all files in the source trees.
$1_ALL_SRCS := $$(filter-out $(OVR_SRCS),$$(foreach i,$$($1_SRC),$$(shell $(FIND) $$i -type f)))
# Extract the java files.
ifneq ($$($1_EXCLUDE_FILES),)
$1_EXCLUDE_FILES_PATTERN:=$$(addprefix %,$$($1_EXCLUDE_FILES))
endif
$1_SRCS := $$(filter-out $$($1_EXCLUDE_FILES_PATTERN),$$(filter %.java,$$($1_ALL_SRCS)))
ifneq ($$($1_INCLUDE_FILES),)
$1_INCLUDE_FILES:=$$(foreach i,$$($1_SRC),$$(addprefix $$i/,$$($1_INCLUDE_FILES)))
$1_SRCS := $$(filter $$($1_INCLUDE_FILES), $$($1_SRCS))
endif
$1_PKGS := $$(sort $$(dir $$($1_SRCS)))
# Remove the source root from each found path.
$$(foreach i,$$($1_SRC),$$(eval $$(call remove_string,$$i,$1_PKGS)))
$1_PKGS := $$(sort $$($1_PKGS))
# There can be only a single bin dir root, no need to foreach over the roots.
$1_BINS := $$(shell $(FIND) $$($1_BIN) -name "*.class")
# Now we have a list of all java files to compile: $$($1_SRCS)
# and we have a list of all existing class files: $$($1_BINS)
# Prepend the source/bin path to the filter expressions.
ifneq ($$($1_INCLUDES),)
$1_SRC_INCLUDES := $$(foreach i,$$($1_SRC),$$(addprefix $$i/,$$(addsuffix /%,$$($1_INCLUDES))))
$1_PKG_INCLUDES := $$(addprefix /,$$(addsuffix /%,$$($1_INCLUDES)))
$1_BIN_INCLUDES := $$(addprefix $$($1_BIN)/,$$(addsuffix /%,$$($1_INCLUDES)))
$1_SRCS := $$(filter $$($1_SRC_INCLUDES),$$($1_SRCS))
$1_PKGS := $$(filter $$($1_PKG_INCLUDES),$$($1_PKGS))
$1_BINS := $$(filter $$($1_BIN_INCLUDES),$$($1_BINS))
endif
ifneq ($$($1_EXCLUDES),)
$1_SRC_EXCLUDES := $$(foreach i,$$($1_SRC),$$(addprefix $$i/,$$(addsuffix /%,$$($1_EXCLUDES))))
$1_PKG_EXCLUDES := $$(addprefix /,$$(addsuffix /%,$$($1_EXCLUDES)))
$1_BIN_EXCLUDES := $$(addprefix $$($1_BIN)/,$$(addsuffix /%,$$($1_EXCLUDES)))
$1_SRCS := $$(filter-out $$($1_SRC_EXCLUDES),$$($1_SRCS))
$1_PKGS := $$(filter-out $$($1_PKG_EXCLUDES),$$($1_PKGS))
$1_BINS := $$(filter-out $$($1_BIN_EXCLUDES),$$($1_BINS))
endif
# Find all files to be copied from source to bin.
ifneq (,$$($1_COPY))
# Rewrite list of patterns into a find statement.
$1_COPY_PATTERN:=$(FALSE_FIND_PATTERN) $$(patsubst %,$(SPACE)-o$(SPACE)-name$(SPACE)$(DQUOTE)*%$(DQUOTE),$$($1_COPY))
# Search for all files to be copied.
$1_ALL_COPIES := $$(foreach i,$$($1_SRC), $$(shell $(FIND) $$i \( $$($1_COPY_PATTERN) \) -a -type f))
# Copy these explicitly
$1_ALL_COPIES += $$($1_COPY_FILES)
# Copy must also respect filters.
ifneq (,$$($1_INCLUDES))
$1_ALL_COPIES := $$(filter $$($1_SRC_INCLUDES),$$($1_ALL_COPIES))
endif
ifneq (,$$($1_EXCLUDES))
$1_ALL_COPIES := $$(filter-out $$($1_SRC_EXCLUDES),$$($1_ALL_COPIES))
endif
ifneq (,$$($1_EXCLUDE_FILES))
$1_ALL_COPIES := $$(filter-out $$($1_EXCLUDE_FILES_PATTERN),$$($1_ALL_COPIES))
endif
# All files below META-INF are always copied.
$1_ALL_COPIES += $$(foreach i,$$($1_SRC), $$(shell $(FIND) $$i/META-INF -type f 2> /dev/null))
ifneq (,$$($1_ALL_COPIES))
# Yep, there are files to be copied!
$1_ALL_COPY_TARGETS:=
$$(foreach i,$$($1_ALL_COPIES),$$(eval $$(call add_file_to_copy,$1,$$i)))
# Now we can depend on $$($1_ALL_COPY_TARGETS) to copy all files!
endif
endif
# Find all property files to be copied and cleaned from source to bin.
ifneq (,$$($1_CLEAN))
# Rewrite list of patterns into a find statement.
$1_CLEAN_PATTERN:=$(FALSE_FIND_PATTERN) $$(patsubst %,$(SPACE)-o$(SPACE)-name$(SPACE)$(DQUOTE)*%$(DQUOTE),$$($1_CLEAN))
# Search for all files to be copied.
$1_ALL_CLEANS := $$(foreach i,$$($1_SRC), $$(shell $(FIND) $$i \( $$($1_CLEAN_PATTERN) \) -a -type f))
# Copy and clean must also respect filters.
ifneq (,$$($1_INCLUDES))
$1_ALL_CLEANS := $$(filter $$($1_SRC_INCLUDES),$$($1_ALL_CLEANS))
endif
ifneq (,$$($1_EXCLUDES))
$1_ALL_CLEANS := $$(filter-out $$($1_SRC_EXCLUDES),$$($1_ALL_CLEANS))
endif
ifneq (,$$($1_EXCLUDE_FILES))
$1_ALL_CLEANS := $$(filter-out $$($1_EXCLUDE_FILES_PATTERN),$$($1_ALL_CLEANS))
endif
ifneq (,$$($1_ALL_CLEANS))
# Yep, there are files to be copied and cleaned!
$1_ALL_COPY_CLEAN_TARGETS:=
$$(foreach i,$$($1_ALL_CLEANS),$$(eval $$(call add_file_to_copy_and_clean,$1,$$i)))
# Now we can depend on $$($1_ALL_COPY_CLEAN_TARGETS) to copy all files!
endif
endif
# Find all the directories that contain java sources, each directory
# corresponds to a package because we expect the source
# code to be organized in this standardized way!
$1_SDIRS := $$(sort $$(dir $$($1_SRCS)))
# Now prefix each package with the bin root.
$1_BDIRS := $$(foreach i,$$($1_PKGS),$$(addprefix $$($1_BIN),$$i))
# Now create a list of the packages that are about to compile. This list is
# later used to filter out dependencies that point outside of this set.
$$(shell $(RM) $$($1_BIN)/_the.list_of_packages)
$$(eval $$(call ListPathsSafelyNow,$1_BDIRS,\n, >> $$($1_BIN)/_the.list_of_packages))
ifeq ($$($1_MODE),SINGLE_THREADED_BATCH)
# Ok, we will feed all the found java files into a single javac invocation.
# There can be no dependency checking, nor incremental builds. It is
# the best we can do with the old javac. If the javac supports a javac server
# then we can use the javac server.
# We can depend on this target file to trigger a regeneration of all the sources
$1 := $$($1_ALL_COPY_TARGETS) $$($1_ALL_COPY_CLEAN_TARGETS) $$($1_BIN)/_the.batch
# Prep the source paths.
ifneq ($$($1_JAVAC_SOURCE_PATH_UGLY_OVERRIDE),)
$$(eval $$(call replace_space_with_pathsep,$1_SRCROOTSC,$$($1_JAVAC_SOURCE_PATH_UGLY_OVERRIDE)))
else
$$(eval $$(call replace_space_with_pathsep,$1_SRCROOTSC,$$($1_SRC)))
endif
# Create a sed expression to remove the source roots and to replace / with .
# and remove .java at the end.
$1_REWRITE_INTO_CLASSES:=$$(foreach i,$$($1_SRC),-e 's|$$i/||g') -e 's|/|.|g' -e 's|.java$$$$||g'
# Here is the batch rules that depends on all the sources.
$$($1_BIN)/_the.batch: $$($1_SRCS)
$(MKDIR) -p $$(@D)
$(RM) $$($1_BIN)/_the.batch $$($1_BIN)/_the.batch.tmp
$$(call ListPathsSafely,$1_SRCS,\n, >> $$($1_BIN)/_the.batch.tmp)
$(ECHO) Compiling `$(WC) $$($1_BIN)/_the.batch.tmp | $(TR) -s ' ' | $(CUT) -f 2 -d ' '` files in batch $1
($$($1_JVM) $$($1_JAVAC) $$($1_FLAGS) -implicit:none -sourcepath "$$($1_SRCROOTSC)" -d $$($1_BIN) @$$($1_BIN)/_the.batch.tmp && \
$$(if $$($1_JAVAH),\
$(CAT) $$($1_BIN)/_the.batch.tmp | $(XARGS) $(GREP) -E "[[:space:]]native[[:space:]]|@GenerateNativeHeader" |\
$(GREP) -v '*' | $(GREP) -v '//' | $(CUT) -f 1 -d ':' | $(SORT) -u |\
$(SED) $$($1_REWRITE_INTO_CLASSES) > $$($1_BIN)/_the.batch.natives && \
if test -s $$($1_BIN)/_the.batch.natives; then \
$$($1_JVM) $$($1_JAVAH) "-Xbootclasspath/p:$$($1_BIN)" -d $$($1_HEADERS) @$$($1_BIN)/_the.batch.natives ; \
fi &&) \
$(MV) $$($1_BIN)/_the.batch.tmp $$($1_BIN)/_the.batch)
else
# Ok, we have a modern javac server running!
# Since a single Java file can generate zero to an infinity number of .class files
# the exact number and names of the .class files will only be known after the compile.
# Thus after the compile, a list of the generated classes will be stored in _the.package.d
# which is included by the makefile during the next compile. These .d files will
# add the generated class names to the BUILD_MYPACKAGE_CLASSES variable and used java file names
# to the BUILD_MYPACKAGE_JAVAS variable.
$1_CLASSES :=
$1_JAVAS :=
# Create a file in each package that represents the package dependency.
# This file (_the.package) will also contain a list of the source files
# to be compiled for this package.
$1 := $$(sort $$(patsubst %,%_the.package,$$($1_BDIRS)))
# Now call add_java_package for each package to create the dependencies.
$$(foreach p,$$($1),$$(eval $$(call add_java_package,$1,$$p,$$($1_SRC),$$($1_BIN),$$($1_BIN)/_the.list_of_packages,NOTUSED,$$($1_USE_DEPS),$$($1_REMOTE),$$($1_JVM) $$($1_JAVAC),$$($1_FLAGS),$$($1_EXCLUDE_FILES_PATTERN) $(OVR_SRCS),$$($1_INCLUDE_FILES),$$($1_JVM) $$($1_JAVAH),$$($1_JAVAC_SOURCE_PATH_UGLY_OVERRIDE))))
# All dependencies are setup, now we only need to depend on $1 (aka $(BUILD_MYPACKAGE))
# and they will automatically be built!
# Now add on any files to copy targets
$1 := $$($1_ALL_COPY_TARGETS) $$($1_ALL_COPY_CLEAN_TARGETS) $$($1)
# Remove the set of found classes from the set of all previously known classes
# and the remainder is the set of missing classes.
$1_MISSING_CLASSES:=$$(filter-out $$($1_BINS),$$($1_CLASSES))
$1_PKGS_MISSING_CLASSES:=$$(sort $$(dir $$($1_MISSING_CLASSES)))
# Remove the set of found java files from the set of all previously known java files
# the remainder is Java files that have gone missing.
$1_MISSING_JAVAS:=$$(filter-out $$($1_SRCS),$$($1_JAVAS))
$1_PKGS_MISSING_JAVAS:=$$(sort $$(dir $$($1_MISSING_JAVAS)))
# Remove each source root from the found paths.
$$(foreach i,$$($1_SRC),$$(eval $$(call remove_string,$$i,$1_PKGS_MISSING_JAVAS)))
# Finally remove duplicates and prefix with the binary path instead.
$1_PKGS_MISSING_JAVAS:= $$(addprefix $$($1_BIN),$$(sort $$($1_PKGS_MISSING_JAVAS)))
# Remove the set of all theoretical classes from the set of found classes.
# the remainder is the set of superfluous classes.
$1_SUPERFLUOUS_CLASSES:=$$(sort $$(filter-out $$($1_CLASSES),$$($1_BINS)))
$1_PKGS_SUPERFLUOUS_CLASSES:=$$(sort $$(dir $$($1_SUPERFLUOUS_CLASSES)))
# Now delete the _the.package files inside the problematic dirs.
# This will force a rebuild of these packages!
$1_FOO:=$$(sort $$($1_PKGS_MISSING_CLASSES) \
$$($1_PKGS_SUPERFLUOUS_CLASSES) \
$$($1_PKGS_MISSING_JAVAS))
# ifneq (,$$($1_FOO))
# $$(info MESSED UP PACKAGES $$($1_FOO))
# endif
$$(shell $(RM) $$(addsuffix _the.package,$$(sort $$($1_PKGS_MISSING_CLASSES) \
$$($1_PKGS_SUPERFLUOUS_CLASSES) \
$$($1_PKGS_MISSING_JAVAS))))
# Normal makefile dependencies based on timestamps will detect the normal use case
# when Java files are simply added or modified.
endif
ifneq (,$$($1_JAR))
ifeq (,$$($1_SUFFIXES))
$1_SUFFIXES:=.class $$($1_CLEAN) $$($1_COPY)
endif
# A jar file was specified. Set it up.
$$(eval $$(call SetupArchive,ARCHIVE_$1,$$($1),\
SRCS:=$$($1_BIN),\
SUFFIXES:=$$($1_SUFFIXES),\
EXCLUDE:=$$($1_EXCLUDES),\
INCLUDES:=$$($1_INCLUDES),\
EXTRA_FILES:=$$($1_ALL_COPY_TARGETS) $$($1_ALL_COPY_CLEAN_TARGETS),\
JAR:=$$($1_JAR),\
JARMAIN:=$$($1_JARMAIN),\
MANIFEST:=$$($1_MANIFEST),\
EXTRA_MANIFEST_ATTR:=$$($1_EXTRA_MANIFEST_ATTR),\
HEADERS:=$$($1_HEADERS),\
SETUP:=$$($1_SETUP)))
endif
ifneq (,$$($1_SRCZIP))
# A srczip file was specified. Set it up.
$$(eval $$(call SetupZipArchive,ARCHIVE_$1,\
SRC:=$$($1_SRC),\
ZIP:=$$($1_SRCZIP),\
INCLUDES:=$$($1_INCLUDES),\
EXCLUDES:=$$($1_EXCLUDES),\
EXCLUDE_FILES:=$$($1_EXCLUDE_FILES)))
endif
endef

View File

@@ -0,0 +1,327 @@
#
# 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.
#
################################################################
#
# Check that GNU make and cygwin are recent enough.
# Setup common utility functions.
#
################################################################
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
# 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","") \
"########################################################################"
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
# 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_paths=$(compress_pre)\
$(subst $(SRC_ROOT),X97,\
$(subst $(OUTPUT_ROOT),X98,\
$(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' \
-e 's|X98|$(OUTPUT_ROOT)|g' -e 's|X97|$(SRC_ROOT)|g' \
-e 's|X00|X|g' | tr '\n' '$2'
define ListPathsSafely_If
$(if $(word $3,$($1)),$(eval $1_LPS$3:=$(call compress_paths,$(wordlist $3,$4,$($1)))))
endef
define ListPathsSafely_Printf
$(if $(strip $($1_LPS$4)),printf -- "$(strip $($1_LPS$4))\n" | $(decompress_paths) $3)
endef
# Receipt example:
# rm -f thepaths
# $(call ListPathsSafely,THEPATHS,\n, >> thepaths)
# 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!))
$(call ListPathsSafely_If,$1,$2,1,250)
$(call ListPathsSafely_If,$1,$2,251,500)
$(call ListPathsSafely_If,$1,$2,501,750)
$(call ListPathsSafely_If,$1,$2,751,1000)
$(call ListPathsSafely_If,$1,$2,1001,1250)
$(call ListPathsSafely_If,$1,$2,1251,1500)
$(call ListPathsSafely_If,$1,$2,1501,1750)
$(call ListPathsSafely_If,$1,$2,1751,2000)
$(call ListPathsSafely_If,$1,$2,2001,2250)
$(call ListPathsSafely_If,$1,$2,2251,2500)
$(call ListPathsSafely_If,$1,$2,2501,2750)
$(call ListPathsSafely_If,$1,$2,2751,3000)
$(call ListPathsSafely_If,$1,$2,3001,3250)
$(call ListPathsSafely_If,$1,$2,3251,3500)
$(call ListPathsSafely_If,$1,$2,3501,3750)
$(call ListPathsSafely_If,$1,$2,3751,4000)
$(call ListPathsSafely_If,$1,$2,4001,4250)
$(call ListPathsSafely_If,$1,$2,4251,4500)
$(call ListPathsSafely_If,$1,$2,4501,4750)
$(call ListPathsSafely_If,$1,$2,4751,5000)
$(call ListPathsSafely_If,$1,$2,5001,5250)
$(call ListPathsSafely_If,$1,$2,5251,5500)
$(call ListPathsSafely_If,$1,$2,5501,5750)
$(call ListPathsSafely_If,$1,$2,5751,6000)
$(call ListPathsSafely_If,$1,$2,6001,6250)
$(call ListPathsSafely_If,$1,$2,6251,6500)
$(call ListPathsSafely_If,$1,$2,6501,6750)
$(call ListPathsSafely_If,$1,$2,6751,7000)
$(call ListPathsSafely_If,$1,$2,7001,7250)
$(call ListPathsSafely_If,$1,$2,7251,7500)
$(call ListPathsSafely_If,$1,$2,7501,7750)
$(call ListPathsSafely_If,$1,$2,7751,8000)
$(call ListPathsSafely_If,$1,$2,8001,8250)
$(call ListPathsSafely_If,$1,$2,8251,8500)
$(call ListPathsSafely_If,$1,$2,8501,8750)
$(call ListPathsSafely_If,$1,$2,8751,9000)
$(call ListPathsSafely_If,$1,$2,9001,9250)
$(call ListPathsSafely_If,$1,$2,9251,9500)
$(call ListPathsSafely_If,$1,$2,9501,9750)
$(call ListPathsSafely_If,$1,$2,9751,10000)
$(call ListPathsSafely_Printf,$1,$2,$3,1)
$(call ListPathsSafely_Printf,$1,$2,$3,251)
$(call ListPathsSafely_Printf,$1,$2,$3,501)
$(call ListPathsSafely_Printf,$1,$2,$3,751)
$(call ListPathsSafely_Printf,$1,$2,$3,1001)
$(call ListPathsSafely_Printf,$1,$2,$3,1251)
$(call ListPathsSafely_Printf,$1,$2,$3,1501)
$(call ListPathsSafely_Printf,$1,$2,$3,1751)
$(call ListPathsSafely_Printf,$1,$2,$3,2001)
$(call ListPathsSafely_Printf,$1,$2,$3,2251)
$(call ListPathsSafely_Printf,$1,$2,$3,2501)
$(call ListPathsSafely_Printf,$1,$2,$3,2751)
$(call ListPathsSafely_Printf,$1,$2,$3,3001)
$(call ListPathsSafely_Printf,$1,$2,$3,3251)
$(call ListPathsSafely_Printf,$1,$2,$3,3501)
$(call ListPathsSafely_Printf,$1,$2,$3,3751)
$(call ListPathsSafely_Printf,$1,$2,$3,4001)
$(call ListPathsSafely_Printf,$1,$2,$3,4251)
$(call ListPathsSafely_Printf,$1,$2,$3,4501)
$(call ListPathsSafely_Printf,$1,$2,$3,4751)
$(call ListPathsSafely_Printf,$1,$2,$3,5001)
$(call ListPathsSafely_Printf,$1,$2,$3,5251)
$(call ListPathsSafely_Printf,$1,$2,$3,5501)
$(call ListPathsSafely_Printf,$1,$2,$3,5751)
$(call ListPathsSafely_Printf,$1,$2,$3,6001)
$(call ListPathsSafely_Printf,$1,$2,$3,6251)
$(call ListPathsSafely_Printf,$1,$2,$3,6501)
$(call ListPathsSafely_Printf,$1,$2,$3,6751)
$(call ListPathsSafely_Printf,$1,$2,$3,7001)
$(call ListPathsSafely_Printf,$1,$2,$3,7251)
$(call ListPathsSafely_Printf,$1,$2,$3,7501)
$(call ListPathsSafely_Printf,$1,$2,$3,7751)
$(call ListPathsSafely_Printf,$1,$2,$3,8001)
$(call ListPathsSafely_Printf,$1,$2,$3,8251)
$(call ListPathsSafely_Printf,$1,$2,$3,8501)
$(call ListPathsSafely_Printf,$1,$2,$3,8751)
$(call ListPathsSafely_Printf,$1,$2,$3,9001)
$(call ListPathsSafely_Printf,$1,$2,$3,9251)
$(call ListPathsSafely_Printf,$1,$2,$3,9501)
$(call ListPathsSafely_Printf,$1,$2,$3,9751)
endef
define ListPathsSafelyNow_IfPrintf
ifneq (,$$(word $4,$$($1)))
$$(eval $1_LPS$4:=$$(call compress_paths,$$(wordlist $4,$5,$$($1))))
$$(shell printf -- "$$(strip $$($1_LPS$4))\n" | $(decompress_paths) $3)
endif
endef
# And an non-receipt version:
define ListPathsSafelyNow
ifneq (,$$(word 10001,$$($1)))
$$(error Cannot list safely more than 10000 paths. $1 has $$(words $$($1)) paths!)
endif
$(call ListPathsSafelyNow_IfPrintf,$1,$2,$3,1,250)
$(call ListPathsSafelyNow_IfPrintf,$1,$2,$3,251,500)
$(call ListPathsSafelyNow_IfPrintf,$1,$2,$3,501,750)
$(call ListPathsSafelyNow_IfPrintf,$1,$2,$3,751,1000)
$(call ListPathsSafelyNow_IfPrintf,$1,$2,$3,1001,1250)
$(call ListPathsSafelyNow_IfPrintf,$1,$2,$3,1251,1500)
$(call ListPathsSafelyNow_IfPrintf,$1,$2,$3,1501,1750)
$(call ListPathsSafelyNow_IfPrintf,$1,$2,$3,1751,2000)
$(call ListPathsSafelyNow_IfPrintf,$1,$2,$3,2001,2250)
$(call ListPathsSafelyNow_IfPrintf,$1,$2,$3,2251,2500)
$(call ListPathsSafelyNow_IfPrintf,$1,$2,$3,2501,2750)
$(call ListPathsSafelyNow_IfPrintf,$1,$2,$3,2751,3000)
$(call ListPathsSafelyNow_IfPrintf,$1,$2,$3,3001,3250)
$(call ListPathsSafelyNow_IfPrintf,$1,$2,$3,3251,3500)
$(call ListPathsSafelyNow_IfPrintf,$1,$2,$3,3501,3750)
$(call ListPathsSafelyNow_IfPrintf,$1,$2,$3,3751,4000)
$(call ListPathsSafelyNow_IfPrintf,$1,$2,$3,4001,4250)
$(call ListPathsSafelyNow_IfPrintf,$1,$2,$3,4251,4500)
$(call ListPathsSafelyNow_IfPrintf,$1,$2,$3,4501,4750)
$(call ListPathsSafelyNow_IfPrintf,$1,$2,$3,4751,5000)
$(call ListPathsSafelyNow_IfPrintf,$1,$2,$3,5001,5250)
$(call ListPathsSafelyNow_IfPrintf,$1,$2,$3,5251,5500)
$(call ListPathsSafelyNow_IfPrintf,$1,$2,$3,5501,5750)
$(call ListPathsSafelyNow_IfPrintf,$1,$2,$3,5751,6000)
$(call ListPathsSafelyNow_IfPrintf,$1,$2,$3,6001,6250)
$(call ListPathsSafelyNow_IfPrintf,$1,$2,$3,6251,6500)
$(call ListPathsSafelyNow_IfPrintf,$1,$2,$3,6501,6750)
$(call ListPathsSafelyNow_IfPrintf,$1,$2,$3,6751,7000)
$(call ListPathsSafelyNow_IfPrintf,$1,$2,$3,7001,7250)
$(call ListPathsSafelyNow_IfPrintf,$1,$2,$3,7251,7500)
$(call ListPathsSafelyNow_IfPrintf,$1,$2,$3,7501,7750)
$(call ListPathsSafelyNow_IfPrintf,$1,$2,$3,7751,8000)
$(call ListPathsSafelyNow_IfPrintf,$1,$2,$3,8001,8250)
$(call ListPathsSafelyNow_IfPrintf,$1,$2,$3,8251,8500)
$(call ListPathsSafelyNow_IfPrintf,$1,$2,$3,8501,8750)
$(call ListPathsSafelyNow_IfPrintf,$1,$2,$3,8751,9000)
$(call ListPathsSafelyNow_IfPrintf,$1,$2,$3,9001,9250)
$(call ListPathsSafelyNow_IfPrintf,$1,$2,$3,9251,9500)
$(call ListPathsSafelyNow_IfPrintf,$1,$2,$3,9501,9750)
$(call ListPathsSafelyNow_IfPrintf,$1,$2,$3,9751,10000)
endef
endif # _MAKEBASE_GMK

176
common/makefiles/Makefile Normal file
View File

@@ -0,0 +1,176 @@
#
# 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.
#
# Default to sane output from make.
# Override with empty string to get insane amount of output.
# Override with -d to get even more insane amount of debugging output.
# Override with "-d -p" to get it all.
VERBOSE=-s
# Find all environment or command line variables that begin with ALT.
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)))
ifneq ($(list_alt_overrides),)
$(info You have set the following ALT_ variables:)
$(foreach var,$(list_alt_overrides), $(info $(var)=$($(var))))
$(error Using ALT_ variables is deprecated! Please clean your environment!)
endif
# The spec.gmk file contains the variables extracted by the configure script.
# It is usually set with SPEC=....spec.gmk on the make command line.
# However if you simply type make from the openjdk source root, it will go looking
# for a spec file, if only one is found, use it. If more than one is found,
# complain. If none is found, request the user to run configure!
SPEC ?= $(wildcard $(CURDIR)/../../build/*/spec.gmk)
ifeq ($(words $(SPEC)),0)
$(error You must run configure!)
endif
ifneq ($(words $(SPEC)),1)
ifeq ($(MAKECMDGOALS),all-conf)
SPECS:=$(shell echo $(SPEC) | sed -e 's|$(CURDIR)/build/||g' -e 's|/spec.gmk|\\n|g' -e 's| ||g')
allconf:
@echo Building configurations:
@printf "$(SPECS)"
@$(foreach s,$(SPEC),($(MAKE) SPEC=$s $(VERBOSE) VERBOSE=$(VERBOSE) images) &&) true
@echo Done building configurations:
@printf "$(SPECS)"
.PHONY: all-conf
else
$(error Since you have more than one output dir configured under build, \
you have to either run make from the output dir of your choice \
or specify run "make SPEC=build/.../spec.gmk" or run all the build configurations \
using "make all-conf")
endif
else
# Now load the spec
-include $(SPEC)
# Load the vital tools for all the makefiles.
-include $(SRC_ROOT)/common/makefiles/MakeBase.gmk
# Remove any build.log from a previous run
ifneq (,$(BUILD_LOG))
$(shell $(RM) $(BUILD_LOG))
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
# Reset the build timers.
$(eval $(call ResetTimers))
# Clean out any notifications from the previous build.
$(shell find $(OUTPUT_ROOT) -name "_the.*.notify" $(FIND_DELETE))
all: jdk
@$(call StopTimer)
@$(if $(JAVAC_SERVERS),rm -rf $(JAVAC_SERVERS)/*.port)
langtools: start-timer
@$(call MakeStart,langtools,all)
@($(CD) $(LANGTOOLS_TOPDIR)/makefiles && $(BUILD_LOG_WRAPPER) $(MAKE) -j$(NUM_CORES) $(LANGTOOLS_MAKE_ARGS))
@$(call MakeFinish,langtools,all)
corba: langtools
@$(call MakeStart,corba,all)
@($(CD) $(CORBA_TOPDIR)/makefiles && $(BUILD_LOG_WRAPPER) $(MAKE) -j$(NUM_CORES) $(CORBA_MAKE_ARGS))
@$(call MakeFinish,corba,all)
jaxp: langtools
@$(call MakeStart,jaxp,all)
@($(CD) $(JAXP_TOPDIR)/makefiles && $(BUILD_LOG_WRAPPER) $(MAKE) -j$(NUM_CORES) $(CORBA_MAKE_ARGS))
@$(call MakeFinish,jaxp,all)
jaxws: langtools jaxp
@$(call MakeStart,jaxws,all)
@($(CD) $(JAXWS_TOPDIR)/makefiles && $(BUILD_LOG_WRAPPER) $(MAKE) -j$(NUM_CORES) $(CORBA_MAKE_ARGS))
@$(call MakeFinish,jaxws,all)
hotspot: langtools
@$(call MakeStart,hotspot,all)
@($(CD) $(HOTSPOT_TOPDIR)/make && $(BUILD_LOG_WRAPPER) $(MAKE) -j1 $(HOTSPOT_MAKE_ARGS))
@$(call MakeFinish,hotspot,all)
jdk: langtools corba jaxp jaxws hotspot
@$(call MakeStart,jdk,all)
@($(CD) $(JDK_TOPDIR)/makefiles && $(BUILD_LOG_WRAPPER) $(MAKE) -j$(NUM_CORES) $(JDK_MAKE_ARGS))
@$(call MakeFinish,jdk,all)
images install packages: start-timer jdk langtools corba jaxp jaxws hotspot
@$(call MakeStart,jdk-images,$@)
@($(CD) $(JDK_TOPDIR)/makefiles && $(BUILD_LOG_WRAPPER) $(MAKE) -j$(NUM_CORES) $(JDK_MAKE_ARGS) $@)
@$(call MakeFinish,jdk-images,$@)
@$(call StopTimer)
@$(if $(JAVAC_SERVERS),rm -rf $(JAVAC_SERVERS)/*.port)
start-timer:
@$(call StartTimer)
.PHONY: jdk hotspot jaxws jaxp corba langtools install images packages start-timer
# Remove everything, except the output from configure.
clean:
@(cd $(OUTPUT_ROOT) && $(RM) -r `$(LS) $(OUTPUT_ROOT) | grep -v spec.gmk | 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 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
help:
$(info )
$(info Typical make commands:)
$(info make)
$(info make VERBOSE= # print all commands)
$(info make VERBOSE="-d -p" # debug make as well)
$(info make all-conf # build images for all configurations)
$(info make clean # remove build artifacts)
$(info make dist-clean # you have to rerun configure)
# $(info make test # run tests)
$(info make images # create the jdk and jre images)
$(info make install # install the jdk image)
# $(info make modules # EXPERIMENTAL: Migrate JDK into a modularized form!)
$(info make packages # create zips and other packages)
# $(info make eclipse_workspace # Create an Eclipse workspace)
# $(info make netbeans_workspace # Create a NetBeans workspace)
# $(info make vs_workspace # Create a Visual Studio workspace)
.PHONY: help
endif

View File

@@ -0,0 +1,277 @@
#
# 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.
#
# When you read this source. Remember that $(sort ...) has the side effect
# of removing duplicates. It is actually this side effect that is
# desired whenever sort is used below!
ifeq (,$(_MAKEBASE_GMK))
$(error You must include MakeBase.gmk prior to including JavaCompilation.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
else
COMPILING_MSG=
LINKING_MSG=
LINKING_EXE_MSG=
ARCHIVING_MSG=
endif
define add_native_source
# param 1 = BUILD_MYPACKAGE
# parma 2 = the source file name (..../alfa.c or .../beta.cpp)
# param 3 = the bin dir that stores all .o (.obj) and .d files.
# param 4 = the c flags to the compiler
# param 5 = the c compiler
# param 6 = the c++ flags to the compiler
# param 7 = the c++ compiler
ifneq (,$$(filter %.c,$2))
# Compile as a C file
$1_$2_FLAGS=$4
$1_$2_COMP=$5
else
# Compile as a C++ file
$1_$2_FLAGS=$6
$1_$2_COMP=$7
endif
# Generate the .o (.obj) file name and place it in the bin dir.
$1_$2_OBJ:=$3/$$(patsubst %.cpp,%$(OBJ_SUFFIX),$$(patsubst %.c,%$(OBJ_SUFFIX),$$(notdir $2)))
# Only continue if this object file hasn't been processed already. This lets the first found
# source file override any other with the same name.
ifeq (,$$(findstring $$($1_$2_OBJ),$$($1_OBJS_SO_FAR)))
$1_OBJS_SO_FAR+=$$($1_$2_OBJ)
# And this is the dependency file for this obj file.
$1_$2_DEP:=$$(patsubst %$(OBJ_SUFFIX),%.d,$$($1_$2_OBJ))
# Include previously generated dependency information. (if it exists)
-include $$($1_$2_DEP)
ifeq ($(COMPILER_TYPE),CL)
$1_$2_DEBUG_OUT_FLAGS:=-Fd$$(patsubst %$(OBJ_SUFFIX),%.pdb,$$($1_$2_OBJ)) \
-Fm$$(patsubst %$(OBJ_SUFFIX),%.map,$$($1_$2_OBJ))
endif
$$($1_$2_OBJ) : $2
ifeq ($(COMPILER_TYPE),CC)
$$(call COMPILING_MSG,$$(notdir $2))
$$($1_$2_COMP) $$($1_$2_FLAGS) -MMD -MF $$($1_$2_DEP) -c $(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) -c $(CC_OUT_OPTION)$$($1_$2_OBJ) $2
endif
endif
endef
define SetupNativeCompilation
# param 1 is for example BUILD_MYPACKAGE
# param 2,3,4,5,6,7,8 are named args.
# SRC one or more directory roots to scan for C/C++ files.
# LANG C or C++
# CFLAGS the compiler flags to be used, used both for C and C++.
# CXXFLAGS the compiler flags to be used for c++, if set overrides CFLAGS.
# LDFLAGS the linker flags to be used, used both for C and C++.
# LDFLAGS_SUFFIX the linker flags to be added last on the commandline
# typically the libraries linked to.
# ARFLAGS the archiver flags to be used
# BIN the directory where we store the object files
# LIB the resulting library file
# EXE the resulting exec file
# INCLUDES only pick source from these directories
# EXCLUDES do not pick source from these directories
# INCLUDE_FILES only compile exactly these files!
# EXCLUDE_FILES with these names
# VERSIONINFO_RESOURCE Input file for RC. Setting this implies that RC will be run
# RC_FLAGS flags for RC.
$(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)))
ifeq (,$$($1_LANG))
$$(error You have to specify LANG for native compilation $1)
endif
ifeq (C,$$($1_LANG))
$1_LD:=$(LD)
$1_LDEXE:=$(LDEXE)
else
ifeq (C++,$$($1_LANG))
$1_LD:=$(LDCXX)
$1_LDEXE:=$(LDEXECXX)
else
$$(error Unknown native language $$($1_LANG) for $1)
endif
endif
# Make sure the dirs exist.
$$(shell $(MKDIR) -p $$($1_SRC) $$($1_BIN) $$(dir $$($1_LIB)) $$(dir $$($1_EXE)))
# Find all files in the source trees. Sort to remove duplicates.
$1_ALL_SRCS := $$(sort $$(foreach i,$$($1_SRC), $$(shell $(FIND) $$i -type f)))
# 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)))
ifneq ($$($1_EXCLUDE_FILES),)
$1_EXCLUDE_FILES:=$$(addprefix %,$$($1_EXCLUDE_FILES))
endif
$1_SRCS := $$(filter-out $$($1_EXCLUDE_FILES),$$(filter %.c %.cpp,$$($1_ALL_SRCS)))
ifneq (,$$(strip $$($1_INCLUDE_FILES)))
$1_SRCS := $$(filter $$($1_INCLUDE_FILES),$$($1_SRCS))
endif
ifeq (,$$($1_SRCS))
$$(error No sources found for $1 when looking inside the dirs $$($1_SRC))
endif
# There can be only a single bin dir root, no need to foreach over the roots.
$1_BINS := $$(wildcard $$($1_BIN)/*$(OBJ_SUFFIX))
# Now we have a list of all c/c++ files to compile: $$($1_SRCS)
# and we have a list of all existing object files: $$($1_BINS)
# Prepend the source/bin path to the filter expressions. Then do the filtering.
ifneq ($$($1_INCLUDES),)
$1_SRC_INCLUDES := $$(foreach i,$$($1_SRC),$$(addprefix $$i/,$$(addsuffix /%,$$($1_INCLUDES))))
$1_SRCS := $$(filter $$($1_SRC_INCLUDES),$$($1_SRCS))
endif
ifneq ($$($1_EXCLUDES),)
$1_SRC_EXCLUDES := $$(foreach i,$$($1_SRC),$$(addprefix $$i/,$$(addsuffix /%,$$($1_EXCLUDES))))
$1_SRCS := $$(filter-out $$($1_SRC_EXCLUDES),$$($1_SRCS))
endif
# Calculate the expected output from compiling the sources (sort to remove duplicates. Also provides
# a reproducable order on the input files to the linker).
$1_EXPECTED_OBJS:=$$(sort $$(addprefix $$($1_BIN)/,$$(patsubst %.cpp,%$(OBJ_SUFFIX),$$(patsubst %.c,%$(OBJ_SUFFIX),$$(notdir $$($1_SRCS))))))
$1 := $$($1_EXPECTED_OBJS)
# 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))
# Pickup extra HOST_OS_API and/or PLATFORM dependent variables for CFLAGS.
$1_EXTRA_CFLAGS:=$$($1_CFLAGS_$(HOST_OS_API)) $$($1_CFLAGS_$(PLATFORM))
ifneq ($(DEBUG_LEVEL),release)
# Pickup extra debug dependent variables for CFLAGS
$1_EXTRA_CFLAGS+=$$($1_CFLAGS_debug)
$1_EXTRA_CFLAGS+=$$($1_CFLAGS_$(HOST_OS_API)_debug)
$1_EXTRA_CFLAGS+=$$($1_CFLAGS_$(PLATFORM)_debug)
else
$1_EXTRA_CFLAGS+=$$($1_CFLAGS_release)
$1_EXTRA_CFLAGS+=$$($1_CFLAGS_$(HOST_OS_API)_release)
$1_EXTRA_CFLAGS+=$$($1_CFLAGS_$(PLATFORM)_release)
endif
# Pickup extra HOST_OS_API and/or PLATFORM dependent variables for CXXFLAGS.
$1_EXTRA_CXXFLAGS:=$$($1_CXXFLAGS_$(HOST_OS_API)) $$($1_CXXFLAGS_$(PLATFORM))
ifneq ($(DEBUG_LEVEL),release)
# Pickup extra debug dependent variables for CXXFLAGS
$1_EXTRA_CXXFLAGS+=$$($1_CXXFLAGS_debug)
$1_EXTRA_CXXFLAGS+=$$($1_CXXFLAGS_$(HOST_OS_API)_debug)
$1_EXTRA_CXXFLAGS+=$$($1_CXXFLAGS_$(PLATFORM)_debug)
else
$1_EXTRA_CXXFLAGS+=$$($1_CXXFLAGS_release)
$1_EXTRA_CXXFLAGS+=$$($1_CXXFLAGS_$(HOST_OS_API)_release)
$1_EXTRA_CXXFLAGS+=$$($1_CXXFLAGS_$(PLATFORM)_release)
endif
ifeq ($$($1_CXXFLAGS),)
$1_CXXFLAGS:=$$($1_CFLAGS)
endif
ifeq ($$(strip $$($1_EXTRA_CXXFLAGS)),)
$1_EXTRA_CXXFLAGS:=$$($1_EXTRA_CFLAGS)
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_BIN)/_the.list_of_sources)
$$(eval $$(call ListPathsSafelyNow,$1_SRCS,\n, >> $$($1_BIN)/_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_BIN),\
$$($1_CFLAGS) $$($1_EXTRA_CFLAGS),$(CC),\
$$($1_CXXFLAGS) $$($1_EXTRA_CXXFLAGS),$(CXX))))
# On windows we need to create a resource file
ifeq ($(HOST_OS_API), winapi)
ifneq (,$$($1_VERSIONINFO_RESOURCE))
ifneq (,$$($1_LIB))
ifeq (dynamic,$$(patsubst %$(SHARED_LIBRARY_SUFFIX),dynamic,$$($1_LIB)))
$1_RES:=$$(patsubst %$(SHARED_LIBRARY_SUFFIX),%.res,$$($1_LIB))
else
$1_RES:=$$(patsubst %$(STATIC_LIBRARY_SUFFIX),%.res,$$($1_LIB))
endif
endif
ifneq (,$$($1_EXE))
$1_RES:=$$(patsubst %$(EXE_SUFFIX),%.res,$$($1_EXE))
endif
$$($1_RES): $$($1_VERSIONINFO_RESOURCE)
$(RC) $$($1_RC_FLAGS) $(CC_OUT_OPTION)$$@ $$($1_VERSIONINFO_RESOURCE)
endif
endif
# Pickup extra HOST_OS_API dependent variables (posix or winapi) and
# (linux,solaris,windows,bsd) for LDFLAGS and LDFLAGS_SUFFIX
$1_EXTRA_LDFLAGS:=$$($1_LDFLAGS_$(HOST_OS_API)) $$($1_LDFLAGS_$(PLATFORM))
$1_EXTRA_LDFLAGS_SUFFIX:=$$($1_LDFLAGS_SUFFIX_$(HOST_OS_API)) $$($1_LDFLAGS_SUFFIX_$(PLATFORM))
ifneq (,$$($1_LIB))
ifeq (dynamic,$$(patsubst %$(SHARED_LIBRARY_SUFFIX),dynamic,$$($1_LIB)))
# Generating a dynamic library.
$1_EXTRA_LDFLAGS+=$$(call SET_SHARED_LIBRARY_NAME,$$(notdir $$($1_LIB)))
$$($1_LIB) : $$($1_EXPECTED_OBJS) $$($1_RES)
$$(call LINKING_MSG,$$(notdir $$($1_LIB)))
$$($1_LD) $$($1_LDFLAGS) $$($1_EXTRA_LDFLAGS) $(LD_OUT_OPTION)$$($1_LIB) \
$$($1_EXPECTED_OBJS) $$($1_RES) $$($1_LDFLAGS_SUFFIX) $$($1_EXTRA_LDFLAGS_SUFFIX)
else
# Generating a static library, ie object file archive.
$$($1_LIB) : $$($1_EXPECTED_OBJS) $$($1_RES)
$$(call ARCHIVING_MSG,$$(notdir $$($1_LIB)))
$(AR) $$($1_AR_FLAGS) $(AR_OUT_OPTION)$$($1_LIB) $$($1_EXPECTED_OBJS) \
$$($1_RES) $$($1_LDFLAGS_SUFFIX) $$($1_EXTRA_LDFLAGS_SUFFIX)
endif
endif
ifneq (,$$($1_EXE))
# A executable binary has been specified, setup the target for it.
$$($1_EXE) : $$($1_EXPECTED_OBJS) $$($1_RES)
$$(call LINKING_EXE_MSG,$$(notdir $$($1_EXE)))
$$($1_LDEXE) $$($1_LDFLAGS) $$($1_EXTRA_LDFLAGS) $(EXE_OUT_OPTION)$$($1_EXE) \
$$($1_EXPECTED_OBJS) $$($1_RES) $$($1_LDFLAGS_SUFFIX) $$($1_EXTRA_LDFLAGS_SUFFIX)
endif
endef

View File

@@ -0,0 +1,103 @@
#
# 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.
#
define SetupRMICompilation
# param 1 is a name for a variable to depend on.
# param 2 and up are named args.
# CLASSES:=List of classes to generate stubs for
# CLASSES_DIR:=Directory where to look for classes
# STUB_CLASSES_DIR:=Directory in where to put stub classes
# RUN_V11:=Set to run rmic with -v1.1
# RUN_V12:=Set to run rmic with -v1.2
# 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))
$1_DEP_FILE := $$($1_STUB_CLASSES_DIR)/$1_rmic
$1_CLASSES_SLASH := $$(subst .,/,$$($1_CLASSES))
$1_CLASS_FILES := $$(addprefix $$($1_CLASSES_DIR)/,$$(addsuffix .class,$$($1_CLASSES_SLASH)))
$1_STUB_FILES := $$(addprefix $$($1_STUB_CLASSES_DIR)/,$$(addsuffix _Stub.class,$$($1_CLASSES_SLASH)))
$1_TARGETS := $$($1_STUB_FILES)
$1_ARGS :=
ifneq (,$$($1_RUN_V11))
$1_SKEL_FILES := $$(addprefix $$($1_STUB_CLASSES_DIR)/,$$(addsuffix _Skel.class,$$($1_CLASSES_SLASH)))
$1_TARGETS += $$($1_SKEL_FILES)
$1_ARGS += -v1.1
endif
ifneq (,$$($1_RUN_V12))
$1_ARGS += -v1.2
endif
$1_TIE_BASE_FILES := $$(foreach f,$$($1_CLASSES_SLASH),$$(dir $$f)_$$(notdir $$f))
$1_TIE_FILES := $$(addprefix $$($1_STUB_CLASSES_DIR)/org/omg/stub/,$$(addsuffix _Tie.class,$$($1_TIE_BASE_FILES)))
$1_TIE_STDPKG_FILES := $$(addprefix $$($1_STUB_CLASSES_DIR)/,$$(addsuffix _Tie.class,$$($1_TIE_BASE_FILES)))
ifneq (,$$($1_RUN_IIOP))
$1_TARGETS += $$($1_TIE_FILES)
$1_ARGS += -iiop
endif
ifneq (,$$($1_RUN_IIOP_STDPKG))
$1_TARGETS += $$($1_TIE_STDPKG_FILES)
$1_ARGS2 := -iiop -standardPackage
endif
ifneq (,$$($1_KEEP_GENERATED))
$1_ARGS += -keepgenerated
$1_TARGETS += $$(subst .class,.java,$$($1_TARGETS))
endif
$1_DOLLAR_SAFE_CLASSES := $$(subst $$$$,\$$$$,$$($1_CLASSES))
$$($1_TARGETS): $$($1_DEP_FILE) $$($1_CLASS_FILES)
$$($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) &&\
$(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) &&\
$(RMIC) $$($1_ARGS2) -classpath "$$($1_CLASSES_DIR)" \
-d $$($1_STUB_CLASSES_DIR) $$($1_DOLLAR_SAFE_CLASSES);\
fi;
$1 := $$($1_TARGETS)
# By marking as secondary, this "touch" file doesn't need to be touched and will never exist.
.SECONDARY: $$($1_DEP_FILE)
endef

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

254
common/src/uncygdrive.c Normal file
View File

@@ -0,0 +1,254 @@
/*
* 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);
}

View File

@@ -2,3 +2,4 @@
^dist/
/nbproject/private/
^.hgtip
.DS_Store

View File

@@ -143,3 +143,21 @@ e59c47de1ad8982ff3b0e843773a6902b36c2337 jdk8-b14
e1366c5d84ef984095a332bcee70b3938232d07d jdk8-b19
51d8b6cb18c0978ecfa4f33e1537d35ee01b69fa jdk8-b20
f157fc2a71a38ce44007a6f18d5b011824dce705 jdk8-b21
a11d0062c445d5f36651c78650ab88aa594bcbff jdk8-b22
5218eb256658442b62b05295aafa5b5f35252972 jdk8-b23
b98f0e6dddf987df565029a1f58417fc1844c3f3 jdk8-b24
e45d6b406d5f91ff5256a5c82456ab1e7eb8becd jdk8-b25
79f709a099f40c08f76567fa6d813f9009a69826 jdk8-b26
4fffe75e4edd39a2517f10b743941bf94edb143d jdk8-b27
2082eb35d49a9c2aab90b8d4fd31cefb7a23b82e jdk8-b28
6117395d422682f89d228347e319fcaac7edc729 jdk8-b29
4605f8418bf562e78be79b25b6b8a5110281acae jdk8-b30
1954151dfae8f73db24e396380f7c02bdd47c486 jdk8-b31
5d820cb6b1afd75b619e7fd69e4f2b0eb1d5d6a1 jdk8-b32
1e2ac1ea3f6c32a62bf88f3fa330120c30db59cb jdk8-b33
e24c5cc8b0f7cc48374eef0f995838fb4823e0eb jdk8-b34
e3d735914edd0a621b16bb85417423f8e6af5d51 jdk8-b35
a5a61f259961a7f46b002e5cc50b4a9bf86927b6 jdk8-b36
83fac66442cf680bb59ec9e3a71cc4729322b595 jdk8-b37
b8cbfb31139f820e5e094ba71449e58159fbe22e jdk8-b38
785af00e2827990f149b32ec37f523dbca3efdd1 jdk8-b39

View File

@@ -0,0 +1,46 @@
#
# Copyright (c) 1999, 2010, 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.
#
#
# Makefile to specify compiler flags for programs and libraries
# targeted to BSD. Should not contain any rules.
#
# Warning: the following variables are overriden by Defs.gmk. Set
# values will be silently ignored:
# CFLAGS (set $(OTHER_CFLAGS) instead)
# CPPFLAGS (set $(OTHER_CPPFLAGS) instead)
# CXXFLAGS (set $(OTHER_CXXFLAGS) instead)
# LDFLAGS (set $(OTHER_LDFAGS) instead)
# LDLIBS (set $(EXTRA_LIBS) instead)
# LDLIBS_COMMON (set $(EXTRA_LIBS) instead)
# Get shared JDK settings
include $(BUILDDIR)/common/shared/Defs.gmk
ifndef PLATFORM_SRC
PLATFORM_SRC = $(TOPDIR)/src/solaris
endif # PLATFORM_SRC

View File

@@ -149,8 +149,8 @@ strip_prop_options_clean:
# Strip the properties files
strip_all_props: $(STRIPPROPERTIES_JARFILE) $(STRIP_PROP_options)
@if [ -s $(STRIP_PROP_options) ] ; then \
$(ECHO) "$(BOOT_JAVA_CMD) -jar $(STRIPPROPERTIES_JARFILE) -optionsfile $(STRIP_PROP_options)" ; \
$(BOOT_JAVA_CMD) -jar $(STRIPPROPERTIES_JARFILE) -optionsfile $(STRIP_PROP_options) ; \
$(ECHO) "$(BOOT_JAVA_CMD) -jar $(STRIPPROPERTIES_JARFILE) @$(STRIP_PROP_options)" ; \
$(BOOT_JAVA_CMD) -jar $(STRIPPROPERTIES_JARFILE) @$(STRIP_PROP_options) ; \
fi
@$(java-vm-cleanup)

View File

@@ -0,0 +1,131 @@
#
# Copyright (c) 2005, 2010, 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.
#
#
# Definitions for Bsd.
#
# Default for COMPILER_WARNINGS_FATAL on Bsd (C & C++ compiler warnings)
ifndef COMPILER_WARNINGS_FATAL
COMPILER_WARNINGS_FATAL=false
endif
# Bsd should use parallel compilation for best build times
ifndef COMPILE_APPROACH
COMPILE_APPROACH = parallel
endif
# Indication that we are doing an incremental build.
# This may trigger the creation of make depend files.
ifndef INCREMENTAL_BUILD
INCREMENTAL_BUILD = false
endif
# FullPath just makes sure it never ends with a / and no duplicates
define FullPath
$(shell cd $1 2> $(DEV_NULL) && pwd)
endef
# OptFullPath: Absolute path name of a dir that might not initially exist.
define OptFullPath
$(shell if [ "$1" != "" -a -d "$1" ]; then (cd $1 && pwd); else echo "$1"; fi)
endef
# Location on system where jdk installs might be
USRJDKINSTANCES_PATH =$(PACKAGE_PATH)
# UNIXCOMMAND_PATH: path to where the most common Unix commands are.
# NOTE: Must end with / so that it could be empty, allowing PATH usage.
ifneq "$(origin ALT_UNIXCOMMAND_PATH)" "undefined"
UNIXCOMMAND_PATH :=$(call PrefixPath,$(ALT_UNIXCOMMAND_PATH))
else
UNIXCOMMAND_PATH = /bin/
endif
# USRBIN_PATH: path to where the most common Unix commands are.
# NOTE: Must end with / so that it could be empty, allowing PATH usage.
ifneq "$(origin ALT_USRBIN_PATH)" "undefined"
USRBIN_PATH :=$(call PrefixPath,$(ALT_USRBIN_PATH))
else
USRBIN_PATH = /usr/bin/
endif
# UNIXCCS_PATH: path to where the Solaris ported UNIX commands can be found
# NOTE: Must end with / so that it could be empty, allowing PATH usage.
ifneq "$(origin ALT_UNIXCCS_PATH)" "undefined"
UNIXCCS_PATH :=$(call PrefixPath,$(ALT_UNIXCCS_PATH))
else
UNIXCCS_PATH = /usr/ccs/bin/
endif
# SLASH_JAVA: location of all network accessable files
ifdef ALT_SLASH_JAVA
SLASH_JAVA :=$(ALT_SLASH_JAVA)
else
SLASH_JAVA := $(call DirExists,/java,/java,/NOT-SET)
endif
# JDK_DEVTOOLS_DIR: common path for all the java devtools
ifdef ALT_JDK_DEVTOOLS_DIR
JDK_DEVTOOLS_DIR =$(ALT_JDK_DEVTOOLS_DIR)
else
JDK_DEVTOOLS_DIR =$(SLASH_JAVA)/devtools
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.
ifneq "$(origin ALT_DEVTOOLS_PATH)" "undefined"
DEVTOOLS_PATH :=$(call PrefixPath,$(ALT_DEVTOOLS_PATH))
else
DEVTOOLS_PATH =$(PACKAGE_PATH)/bin/
endif
# _BOOTDIR1: First choice for a Bootstrap JDK, previous released JDK.
# _BOOTDIR2: Second choice
ifndef ALT_BOOTDIR
_BOOTDIR1 =$(SLASH_JAVA)/re/jdk/$(PREVIOUS_JDK_VERSION)/archive/fcs/binaries/$(PLATFORM)-$(ARCH)
_BOOTDIR2 =$(USRJDKINSTANCES_PATH)/jdk$(PREVIOUS_JDK_VERSION)
endif
# Import JDK images allow for partial builds, components not built are
# imported (or copied from) these import areas when needed.
# BUILD_JDK_IMPORT_PATH: location of JDK install trees to import for
# multiple platforms, e.g. windows-i586, solaris-sparc, bsd-586, etc.
ifdef ALT_BUILD_JDK_IMPORT_PATH
BUILD_JDK_IMPORT_PATH :=$(call FullPath,$(ALT_BUILD_JDK_IMPORT_PATH))
else
BUILD_JDK_IMPORT_PATH = $(PROMOTED_BUILD_BINARIES)
endif
BUILD_JDK_IMPORT_PATH:=$(call AltCheckValue,BUILD_JDK_IMPORT_PATH)
# JDK_IMPORT_PATH: location of JDK install tree (this version) to import
ifdef ALT_JDK_IMPORT_PATH
JDK_IMPORT_PATH :=$(call FullPath,$(ALT_JDK_IMPORT_PATH))
else
JDK_IMPORT_PATH = $(BUILD_JDK_IMPORT_PATH)/$(PLATFORM)-$(ARCH)$(_JDK_IMPORT_VARIANT)
endif
JDK_IMPORT_PATH:=$(call AltCheckValue,JDK_IMPORT_PATH)

View File

@@ -31,7 +31,7 @@
# These input UTILS_* variables can be defined at anytime, ideally once.
# Unix Commands: Normally /bin/, /usr/bin/. or C:/mksnt/mksnt/
# UTILS_COMMAND_PATH
# /usr/bin/
# /usr/bin/
# UTILS_USR_BIN_PATH
# /usr/ccs/bin/ (sccs, m4, lex, yacc, as, ar, strip, mcs)
# UTILS_CCS_BIN_PATH
@@ -53,6 +53,13 @@ ifeq ($(PLATFORM),linux)
UTILS_DEVTOOL_PATH=$(USRBIN_PATH)
endif
ifeq ($(PLATFORM),bsd)
UTILS_COMMAND_PATH=$(UNIXCOMMAND_PATH)
UTILS_USR_BIN_PATH=$(USRBIN_PATH)
UTILS_CCS_BIN_PATH=$(USRBIN_PATH)
UTILS_DEVTOOL_PATH=$(DEVTOOLS_PATH)
endif
ifeq ($(PLATFORM),solaris)
UTILS_COMMAND_PATH=$(UNIXCOMMAND_PATH)
UTILS_USR_BIN_PATH=$(UNIXCOMMAND_PATH)
@@ -166,15 +173,15 @@ ifeq ($(PLATFORM),linux)
# Also, some distribution (Ubuntu, Debian, others?) place the rpm command
# itself in /usr/bin rather than it's traditional home in /bin.
RPM=$(firstword $(wildcard $(UTILS_COMMAND_PATH)rpm) \
$(wildcard $(UTILS_USR_BIN_PATH)rpm))
$(wildcard $(UTILS_USR_BIN_PATH)rpm))
RPMBUILD=$(firstword $(wildcard $(UTILS_COMMAND_PATH)rpmbuild) \
$(wildcard $(UTILS_USR_BIN_PATH)rpmbuild) \
$(wildcard $(UTILS_COMMAND_PATH)rpm) \
$(wildcard $(UTILS_USR_BIN_PATH)rpm))
$(wildcard $(UTILS_USR_BIN_PATH)rpmbuild) \
$(wildcard $(UTILS_COMMAND_PATH)rpm) \
$(wildcard $(UTILS_USR_BIN_PATH)rpm))
# Most Linux distros have "sort" in /bin. Ubuntu, Debian and perhaps
# others have it in /usr/bin.
SORT=$(firstword $(wildcard $(UTILS_COMMAND_PATH)sort) \
$(wildcard $(UTILS_USR_BIN_PATH)sort))
$(wildcard $(UTILS_USR_BIN_PATH)sort))
NAWK = $(USRBIN_PATH)gawk
# Intrinsic unix command, with backslash-escaped character interpretation
ECHO = /bin/echo -e
@@ -198,3 +205,34 @@ ifeq ($(PLATFORM),solaris)
ECHO = /usr/bin/echo
endif
# BSD specific
ifeq ($(PLATFORM),bsd)
BASENAME = $(UTILS_USR_BIN_PATH)basename
EGREP = $(UTILS_USR_BIN_PATH)egrep
EXPR = $(UTILS_COMMAND_PATH)expr
FMT = $(UTILS_USR_BIN_PATH)fmt
GREP = $(UTILS_USR_BIN_PATH)grep
GUNZIP = $(UTILS_USR_BIN_PATH)gunzip
ID = $(UTILS_USR_BIN_PATH)id
MSGFMT = $(UTILS_DEVTOOL_PATH)msgfmt
SED = $(UTILS_USR_BIN_PATH)sed
SORT = $(UTILS_USR_BIN_PATH)sort
TEST = $(UTILS_COMMAND_PATH)test
TOUCH = $(UTILS_USR_BIN_PATH)touch
TRUE = $(UTILS_USR_BIN_PATH)true
UNAME = $(UTILS_USR_BIN_PATH)uname
# BSD OS_VENDOR specific
ifeq ($(OS_VENDOR), Apple)
NAWK = $(UTILS_USR_BIN_PATH)awk
UNZIPSFX = $(UTILS_USR_BIN_PATH)unzipsfx
ZIPEXE = $(UTILS_USR_BIN_PATH)zip
else
UNZIP = $(UTILS_DEVTOOL_PATH)unzip
endif
ifeq ($(OS_VENDOR), OpenBSD)
NAWK = $(UTILS_USR_BIN_PATH)awk
else
CPIO = $(UTILS_USR_BIN_PATH)cpio
TAR = $(UTILS_USR_BIN_PATH)tar
endif
endif

View File

@@ -1,5 +1,5 @@
#
# Copyright (c) 1997, 2010, 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
@@ -62,8 +62,8 @@ PLATFORM_SHARED=done
# CLASSPATH_SEPARATOR separator in classpath, ; or :
# BUNDLE_FILE_SUFFIX suffix for bundles: .tar or .tar.gz
# ISA_DIR solaris only: /sparcv9 or /amd64
# REQUIRED_WINDOWS_NAME windows only: basic name of windows
# REQUIRED_WINDOWS_VERSION windows only: specific version of windows
# 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
# WINDOWS_NT_VERSION_STRING windows only: long version name
# REQUIRED_OS_VERSION required OS version, e.g. 5.10, 2.4
@@ -135,7 +135,7 @@ ifeq ($(SYSTEM_UNAME), SunOS)
BUNDLE_FILE_SUFFIX=.tar
# Required Solaris version
REQUIRED_OS_VERSION = 5.10
# Minimum disk space needed as determined by running 'du -sk' on
# Minimum disk space needed as determined by running 'du -sk' on
# a fully built workspace.
ifeq ($(ARCH_FAMILY), sparc)
REQUIRED_FREE_SPACE=1300000
@@ -207,7 +207,7 @@ ifeq ($(SYSTEM_UNAME), Linux)
# Suffix for file bundles used in previous release
BUNDLE_FILE_SUFFIX=.tar.gz
# Minimum disk space needed as determined by running 'du -sk' on
# Minimum disk space needed as determined by running 'du -sk' on
# a fully built workspace.
REQUIRED_FREE_SPACE=1460000
LINUX_VERSION_INFO = /etc/redhat-release
@@ -231,6 +231,99 @@ ifeq ($(SYSTEM_UNAME), Linux)
MB_OF_MEMORY := $(shell free -m | fgrep Mem: | sed -e 's@\ \ *@ @g' | cut -d' ' -f2)
endif
ifeq ($(SYSTEM_UNAME), FreeBSD)
PLATFORM = bsd
OS_NAME = freebsd
OS_VENDOR = FreeBSD
REQUIRED_OS_VERSION = 6.0
endif
ifeq ($(SYSTEM_UNAME), Darwin)
PLATFORM = bsd
OS_NAME = darwin
OS_VENDOR = Apple
REQUIRED_OS_VERSION = 8.0
endif
ifeq ($(SYSTEM_UNAME), NetBSD)
PLATFORM = bsd
OS_NAME = netbsd
OS_VENDOR = NetBSD
REQUIRED_OS_VERSION = 3.0
endif
ifeq ($(SYSTEM_UNAME), OpenBSD)
PLATFORM = bsd
OS_NAME = openbsd
OS_VENDOR = OpenBSD
REQUIRED_OS_VERSION = 4.9
endif
# Platform settings specific to BSD
ifeq ($(PLATFORM), bsd)
OS_VERSION := $(shell uname -r)
# Arch and OS name/version
mach := $(shell uname -m)
archExpr = case "$(mach)" in \
i[3-9]86) \
echo i586 \
;; \
sparc64) \
echo sparcv9 \
;; \
sparc*) \
echo sparc \
;; \
x86_64) \
echo x86_64 \
;; \
"Power Macintosh") \
echo ppc \
;; \
*) \
echo $(mach) \
;; \
esac
ARCH := $(shell $(archExpr) )
ARCH_FAMILY := $(ARCH)
# Darwin builds are currently universal but only include 64-bit
#
# ifeq ($(SYSTEM_UNAME), Darwin)
# ifneq ($(ARCH), ppc)
# ARCH=universal
# endif
# endif
# i586, sparc, and ppc are 32 bit, amd64 and sparc64 are 64
ifneq (,$(findstring $(ARCH), i586 sparc ppc universal))
ARCH_DATA_MODEL=32
else
ARCH_DATA_MODEL=64
endif
ifeq ($(ARCH), i586)
LIBARCH = i386
else
LIBARCH = $(ARCH)
endif
# Value of Java os.arch property
ARCHPROP = $(LIBARCH)
# Suffix for file bundles used in previous release
BUNDLE_FILE_SUFFIX=.tar.gz
# Minimum disk space needed as determined by running 'du -sk' on
# a fully built workspace.
REQUIRED_FREE_SPACE=1500000
# How much RAM does this machine have:
ifeq ($(OS_VENDOR), OpenBSD)
MB_OF_MEMORY=$(shell sysctl -n hw.physmem | awk '{print int($$NF / 1048576); }' )
else
MB_OF_MEMORY=$(shell (sysctl -n hw.physmem64 2> /dev/null || sysctl -n hw.physmem) | awk '{print int($$NF / 1048576); }' )
endif
endif
# Windows with and without CYGWIN will be slightly different
ifeq ($(SYSTEM_UNAME), Windows_NT)
PLATFORM = windows
@@ -327,7 +420,7 @@ ifeq ($(PLATFORM), windows)
endif
# Suffix for file bundles used in previous release
BUNDLE_FILE_SUFFIX=.tar
# Minimum disk space needed as determined by running 'du -sk' on
# Minimum disk space needed as determined by running 'du -sk' on
# a fully built workspace.
REQUIRED_FREE_SPACE=500000
# How much RAM does this machine have:
@@ -335,8 +428,8 @@ ifeq ($(PLATFORM), windows)
MB_OF_MEMORY := $(shell \
if [ -f "C:/cygwin/bin/free.exe" ] ; then \
( C:/cygwin/bin/bash.exe -c "C:/cygwin/bin/free.exe -m" ) | \
grep Mem: | \
sed -e 's@\ \ *@ @g' | cut -d' ' -f2 ; \
grep Mem: | \
sed -e 's@\ \ *@ @g' | cut -d' ' -f2 ; \
else \
echo "512"; \
fi)
@@ -392,7 +485,7 @@ ifneq ($(PLATFORM), windows)
# Where is unwanted output to be delivered?
DEV_NULL = /dev/null
export DEV_NULL
# Character used between entries in classpath
# Character used between entries in classpath
CLASSPATH_SEPARATOR = :
# User name determination (set _USER)
ifndef USER

View File

@@ -1,280 +0,0 @@
/*
* Copyright (c) 2001, 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.
*/
package build.tools.stripproperties;
import java.io.BufferedInputStream;
import java.io.BufferedWriter;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.OutputStream;
import java.io.OutputStreamWriter;
import java.io.IOException;
import java.io.InputStream;
import java.util.ArrayList;
import java.util.Enumeration;
import java.util.List;
import java.util.Properties;
/**
* Reads a properties file from standard input and writes an equivalent
* properties file without comments to standard output.
*/
public class StripProperties {
private static void error(String msg, Exception e) {
System.err.println("ERROR: stripproperties: " + msg);
if ( e != null ) {
System.err.println("EXCEPTION: " + e.toString());
e.printStackTrace();
}
}
private static List<String> parseOptions(String args[]) {
List<String> files = new ArrayList<String>();
for ( int i = 0; i < args.length ; i++ ) {
if ( "-optionsfile".equals(args[i]) && i+1 < args.length ) {
String filename = args[++i];
FileInputStream finput = null;
byte contents[] = null;
try {
finput = new FileInputStream(filename);
int byteCount = finput.available();
if ( byteCount <= 0 ) {
error("The -optionsfile file is empty", null);
files = null;
} else {
contents = new byte[byteCount];
int bytesRead = finput.read(contents);
if ( byteCount != bytesRead ) {
error("Cannot read all of -optionsfile file", null);
files = null;
}
}
} catch ( IOException e ) {
error("cannot open " + filename, e);
files = null;
}
if ( finput != null ) {
try {
finput.close();
} catch ( IOException e ) {
files = null;
error("cannot close " + filename, e);
}
}
if ( files != null && contents != null ) {
String tokens[] = (new String(contents)).split("\\s+");
if ( tokens.length > 0 ) {
List<String> ofiles = parseOptions(tokens);
if ( ofiles != null ) {
files.addAll(ofiles);
} else {
error("No files found in file", null);
files = null;
}
}
}
if ( files == null ) {
break;
}
} else {
files.add(args[i]);
}
}
return files;
}
private static boolean stripFiles(List<String> files) {
boolean ok = true;
for ( String file : files ) {
Properties prop = new Properties();
InputStream in = null;
try {
in = new BufferedInputStream(new FileInputStream(file));
prop.load(in);
} catch ( FileNotFoundException e ) {
error("Cannot access file " + file, e);
ok = false;
} catch ( IOException e ) {
error("IO exception processing file " + file, e);
ok = false;
}
if ( in != null ) {
try {
in.close();
} catch ( IOException e ) {
error("IO exception closing file " + file, e);
ok = false;
}
}
if ( !ok ) {
break;
}
OutputStream out = null;
try {
out = new FileOutputStream(file);
storeProperties(prop, out);
out.flush();
} catch ( IOException e ) {
error("IO exception processing file " + file, e);
ok = false;
}
if ( out != null ) {
try {
out.close();
} catch ( IOException e ) {
error("IO exception closing file " + file, e);
ok = false;
}
}
if ( !ok ) {
break;
}
}
return ok;
}
/**
* Strip the properties filenames supplied, replacing their contents.
* @param args Names of properties files to process and replace contents
*/
public static void main(String args[]) {
List<String> files = parseOptions(args);
if ( files == null || !stripFiles(files) ) {
System.exit(1);
}
}
// --- code below here is adapted from java.util.Properties ---
private static final String specialSaveChars = "=: \t\r\n\f#!";
/*
* Converts unicodes to encoded &#92;uxxxx
* and writes out any of the characters in specialSaveChars
* with a preceding slash
*/
private static String saveConvert(String theString, boolean escapeSpace) {
int len = theString.length();
StringBuffer outBuffer = new StringBuffer(len*2);
for(int x=0; x<len; x++) {
char aChar = theString.charAt(x);
switch(aChar) {
case ' ':
if (x == 0 || escapeSpace) {
outBuffer.append('\\');
}
outBuffer.append(' ');
break;
case '\\':
outBuffer.append('\\');
outBuffer.append('\\');
break;
case '\t':
outBuffer.append('\\');
outBuffer.append('t');
break;
case '\n':
outBuffer.append('\\');
outBuffer.append('n');
break;
case '\r':
outBuffer.append('\\');
outBuffer.append('r');
break;
case '\f':
outBuffer.append('\\');
outBuffer.append('f');
break;
default:
if ((aChar < 0x0020) || (aChar == 0x007e) || (aChar > 0x00ff)) {
outBuffer.append('\\');
outBuffer.append('u');
outBuffer.append(toHex((aChar >> 12) & 0xF));
outBuffer.append(toHex((aChar >> 8) & 0xF));
outBuffer.append(toHex((aChar >> 4) & 0xF));
outBuffer.append(toHex( aChar & 0xF));
} else {
if (specialSaveChars.indexOf(aChar) != -1) {
outBuffer.append('\\');
}
outBuffer.append(aChar);
}
}
}
return outBuffer.toString();
}
/**
* Writes the content of <code>properties</code> to <code>out</code>.
* The format is that of Properties.store with the following modifications:
* <ul>
* <li>No header or date is written
* <li>Latin-1 characters are written as single bytes, not escape sequences
* <li>Line breaks are indicated by a single \n independent of platform
* <ul>
*/
private static void storeProperties(Properties properties, OutputStream out)
throws IOException {
BufferedWriter awriter;
awriter = new BufferedWriter(new OutputStreamWriter(out, "8859_1"));
for (Enumeration e = properties.keys(); e.hasMoreElements();) {
String key = (String)e.nextElement();
String val = (String)properties.get(key);
key = saveConvert(key, true);
/* No need to escape embedded and trailing spaces for value, hence
* pass false to flag.
*/
val = saveConvert(val, false);
writeln(awriter, key + "=" + val);
}
awriter.flush();
}
private static void writeln(BufferedWriter bw, String s) throws IOException {
bw.write(s);
bw.write("\n");
}
/**
* Convert a nibble to a hex character
* @param nibble the nibble to convert.
*/
private static char toHex(int nibble) {
return hexDigit[(nibble & 0xF)];
}
/** A table of hex digits */
private static final char[] hexDigit = {
'0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F'
};
}

View File

@@ -0,0 +1,288 @@
/*
* Copyright (c) 2001, 2011, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation. 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.
*/
package build.tools.stripproperties;
import java.io.BufferedInputStream;
import java.io.BufferedWriter;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.OutputStream;
import java.io.OutputStreamWriter;
import java.io.IOException;
import java.io.InputStream;
import java.util.ArrayList;
import java.util.Enumeration;
import java.util.Iterator;
import java.util.List;
import java.util.Properties;
/**
* Reads a properties file from standard input and writes an equivalent
* properties file without comments to standard output.
*/
public class StripPropertiesCorba {
private static void error(String msg, Exception e) {
System.err.println("ERROR: stripproperties: " + msg);
if ( e != null ) {
System.err.println("EXCEPTION: " + e.toString());
e.printStackTrace();
}
}
private static List<String> infiles = new ArrayList<String>();
private static List<String> outfiles = new ArrayList<String>();
private static boolean parseOptions(String args[]) {
boolean ok = true;
for ( int i = 0; i < args.length ; i++ ) {
if ( "-clean".equals(args[i]) && i+2 < args.length ) {
infiles.add(args[++i]);
outfiles.add(args[++i]);
} else if ( args[i].charAt(0)=='@') {
String filename = args[i].substring(1);
FileInputStream finput = null;
byte contents[] = null;
try {
finput = new FileInputStream(filename);
int byteCount = finput.available();
if ( byteCount <= 0 ) {
error("The @file is empty", null);
ok = false;
} else {
contents = new byte[byteCount];
int bytesRead = finput.read(contents);
if ( byteCount != bytesRead ) {
error("Cannot read all of @file", null);
ok = false;
}
}
} catch ( IOException e ) {
error("cannot open " + filename, e);
ok = false;
}
if ( finput != null ) {
try {
finput.close();
} catch ( IOException e ) {
ok = false;
error("cannot close " + filename, e);
}
}
if ( ok && contents != null ) {
String tokens[] = (new String(contents)).split("\\s+");
if ( tokens.length > 0 ) {
ok = parseOptions(tokens);
}
}
if ( !ok ) {
break;
}
} else {
infiles.add(args[i]);
outfiles.add(args[i]);
}
}
return ok;
}
private static boolean stripFiles(List<String> infiles, List<String> outfiles) {
boolean ok = true;
Iterator<String> inIter = infiles.iterator();
Iterator<String> outIter = outfiles.iterator();
for (; inIter.hasNext(); ) {
String infile = inIter.next();
String outfile = outIter.next();
Properties prop = new Properties();
InputStream in = null;
try {
in = new BufferedInputStream(new FileInputStream(infile));
prop.load(in);
} catch ( FileNotFoundException e ) {
error("Cannot access file " + infile, e);
ok = false;
} catch ( IOException e ) {
error("IO exception processing file " + infile, e);
ok = false;
}
if ( in != null ) {
try {
in.close();
} catch ( IOException e ) {
error("IO exception closing file " + infile, e);
ok = false;
}
}
if ( !ok ) {
break;
}
OutputStream out = null;
try {
out = new FileOutputStream(outfile);
storeProperties(prop, out);
out.flush();
} catch ( IOException e ) {
error("IO exception processing file " + outfile, e);
ok = false;
}
if ( out != null ) {
try {
out.close();
} catch ( IOException e ) {
error("IO exception closing file " + outfile, e);
ok = false;
}
}
if ( !ok ) {
break;
}
}
return ok;
}
/**
* Strip the properties filenames supplied, replacing their contents.
* @param args Names of properties files to process and replace contents
*/
public static void main(String args[]) {
boolean ok = parseOptions(args);
if ( !ok || !stripFiles(infiles, outfiles) ) {
System.exit(1);
}
}
// --- code below here is adapted from java.util.Properties ---
private static final String specialSaveChars = "=: \t\r\n\f#!";
/*
* Converts unicodes to encoded &#92;uxxxx
* and writes out any of the characters in specialSaveChars
* with a preceding slash
*/
private static String saveConvert(String theString, boolean escapeSpace) {
int len = theString.length();
StringBuffer outBuffer = new StringBuffer(len*2);
for(int x=0; x<len; x++) {
char aChar = theString.charAt(x);
switch(aChar) {
case ' ':
if (x == 0 || escapeSpace) {
outBuffer.append('\\');
}
outBuffer.append(' ');
break;
case '\\':
outBuffer.append('\\');
outBuffer.append('\\');
break;
case '\t':
outBuffer.append('\\');
outBuffer.append('t');
break;
case '\n':
outBuffer.append('\\');
outBuffer.append('n');
break;
case '\r':
outBuffer.append('\\');
outBuffer.append('r');
break;
case '\f':
outBuffer.append('\\');
outBuffer.append('f');
break;
default:
if ((aChar < 0x0020) || (aChar == 0x007e) || (aChar > 0x00ff)) {
outBuffer.append('\\');
outBuffer.append('u');
outBuffer.append(toHex((aChar >> 12) & 0xF));
outBuffer.append(toHex((aChar >> 8) & 0xF));
outBuffer.append(toHex((aChar >> 4) & 0xF));
outBuffer.append(toHex( aChar & 0xF));
} else {
if (specialSaveChars.indexOf(aChar) != -1) {
outBuffer.append('\\');
}
outBuffer.append(aChar);
}
}
}
return outBuffer.toString();
}
/**
* Writes the content of <code>properties</code> to <code>out</code>.
* The format is that of Properties.store with the following modifications:
* <ul>
* <li>No header or date is written
* <li>Latin-1 characters are written as single bytes, not escape sequences
* <li>Line breaks are indicated by a single \n independent of platform
* <ul>
*/
private static void storeProperties(Properties properties, OutputStream out)
throws IOException {
BufferedWriter awriter;
awriter = new BufferedWriter(new OutputStreamWriter(out, "8859_1"));
for (Enumeration<Object> e = properties.keys(); e.hasMoreElements();) {
String key = (String)e.nextElement();
String val = (String)properties.get(key);
key = saveConvert(key, true);
/* No need to escape embedded and trailing spaces for value, hence
* pass false to flag.
*/
val = saveConvert(val, false);
writeln(awriter, key + "=" + val);
}
awriter.flush();
}
private static void writeln(BufferedWriter bw, String s) throws IOException {
bw.write(s);
bw.write("\n");
}
/**
* Convert a nibble to a hex character
* @param nibble the nibble to convert.
*/
private static char toHex(int nibble) {
return hexDigit[(nibble & 0xF)];
}
/** A table of hex digits */
private static final char[] hexDigit = {
'0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F'
};
}

View File

@@ -34,7 +34,7 @@ PROGRAM = stripproperties
include $(BUILDDIR)/common/Defs.gmk
BUILDTOOL_SOURCE_ROOT = $(BUILDDIR)/tools/src
BUILDTOOL_MAIN = $(PKGDIR)/StripProperties.java
BUILDTOOL_MAIN = $(PKGDIR)/StripPropertiesCorba.java
#
# Build tool jar rules.

257
corba/makefiles/Makefile Normal file

File diff suppressed because one or more lines are too long

View File

@@ -1,5 +1,5 @@
/*
* Copyright (c) 2000, 2003, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2000, 2011, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -82,6 +82,6 @@ public class DynAnyFactoryImpl
private String[] __ids = { "IDL:omg.org/DynamicAny/DynAnyFactory:1.0" };
public String[] _ids() {
return __ids;
return (String[]) __ids.clone();
}
}

View File

@@ -1,5 +1,5 @@
/*
* Copyright (c) 2000, 2003, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2000, 2011, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -195,6 +195,6 @@ abstract class DynAnyImpl extends org.omg.CORBA.LocalObject implements DynAny
private String[] __ids = { "IDL:omg.org/DynamicAny/DynAny:1.0" };
public String[] _ids() {
return __ids;
return (String[]) __ids.clone();
}
}

View File

@@ -1,3 +1,28 @@
/*
* 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
* 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.
*/
package com.sun.corba.se.impl.orbutil ;
import java.lang.reflect.Method;

View File

@@ -1,3 +1,27 @@
/*
* Copyright (c) 2004, 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.
*/
package com.sun.corba.se.impl.presentation.rmi ;

View File

@@ -1,5 +1,5 @@
/*
* Copyright (c) 1999, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 1999, 2011, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -138,7 +138,7 @@ public abstract class _CodeBaseImplBase extends org.omg.CORBA.portable.ObjectImp
public String[] _ids ()
{
return __ids;
return (String[]) __ids.clone();
}

View File

@@ -1,7 +1,7 @@
#!/bin/sh
#
# Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved.
# Copyright (c) 2010, 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 @@
#
# Get clones of all nested repositories
sh ./make/scripts/hgforest.sh clone
sh ./make/scripts/hgforest.sh clone $*
# Update all existing repositories to the latest sources
sh ./make/scripts/hgforest.sh pull -u

View File

@@ -211,3 +211,40 @@ a2fef924d8e6f37dac2a887315e3502876cc8e24 hs23-b08
fe2c8764998112b7fefcd7d41599714813ae4327 jdk8-b20
9952d1c439d64c5fd4ad1236a63a62bd5a49d4c3 jdk8-b21
513351373923f74a7c91755748b95c9771e59f96 hs23-b10
24727fb37561779077fdfa5a33342246f20e5c0f jdk8-b22
dcc292399a39113957eebbd3e487b7e05e2c79fc hs23-b11
e850d8e7ea54b91c7aa656e297f0f9f38dd4c296 jdk8-b23
9e177d44b10fe92ecffa965fef9c5ac5433c1b46 hs23-b12
a80fd4f45d7aaa154ed2f86a129f3c9c4035ec7a jdk8-b24
b22de824749922986ce4d442bed029916b832807 hs23-b13
64b46f975ab82948c1e021e17775ff4fab8bc40e hs23-b14
9ad8feb5afbddec46d3cfe29fb5f73c2e99d5a43 jdk8-b25
d71e662fe03741b6de498ca2077220148405a978 hs23-b15
fd3060701216a11c0df6dcd053c6fd7c2b17a42c jdk8-b26
f92a171cf0071ca6c3fa8231d7d570377f8b2f4d hs23-b16
f92a171cf0071ca6c3fa8231d7d570377f8b2f4d hs23-b16
931e5f39e365a0d550d79148ff87a7f9e864d2e1 hs23-b16
3b24e7e01d20ca590d0f86b1222bb7c3f1a2aa2d jdk8-b27
975c4105f1e2ef1190a75b77124033f1fd4290b5 hs24-b01
b183b0863611b85dbac16f3b08b40ba978756d19 jdk8-b28
030b5306d60f140e822e4a6d301744cb110ff0c8 hs24-b02
b45b5c564098c58ea69e7cff3f7d341f0254dd1d jdk8-b29
d61761bf305031c94f7f8eca49abd978b7d3c5da jdk8-b30
dfae0140457cfb2c381d7679735fbedbae862c62 hs24-b03
f4767e53d6e0d5da7e3f1775904076cce54247c1 hs24-b04
0cd147eaa673d1642b2f466f5dc257cf192db524 jdk8-b31
27863e4586de38be7dd17da4163f542038f4d1d7 hs24-b05
25410a347ebb0bef166c4338a90d9dea82463a20 jdk8-b32
cd47da9383cd932cb2b659064057feafa2a91134 hs24-b06
785bcf415ead2eaa5f6677aaf528481008140bac jdk8-b33
7c6aba65acd2c334f1c3512b574f9038cddac24b hs24-b07
f284b08835584517c1ca3dd67341f569e763841f jdk8-b34
f621660a297baa48fab9dca28e99d318826e8304 jdk8-b35
dff6e3459210f8dd0430b9b03ccc99280560da30 hs24-b08
50b4400ca1ecb2ac2fde35f5e53ec8f04b86be7f jdk8-b36
bfcf92bfefb82da00f7fdbf0d9273feaa0a9456d jdk8-b37
7d5ec8bf38d1b12e0e09ec381f10976b8beede3b hs24-b09
637c3f5f068f88fb9ec9c5867341cf59fd5ebedc jdk8-b38
73147e6c48813b5fee904aa33f79a77103250ff4 hs24-b10
96a403721094ecdaf6a1f4f52ebd0a82e07df199 jdk8-b39
14b0e07ab9a6fa1662414496b7e07ac8450cf517 hs24-b11

View File

@@ -1,5 +1,5 @@
#
# Copyright (c) 2002, 2009, Oracle and/or its affiliates. All rights reserved.
# Copyright (c) 2002, 2012, Oracle and/or its affiliates. All rights reserved.
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
#
# This code is free software; you can redistribute it and/or modify it
@@ -40,7 +40,7 @@ OBJS = $(SOURCES:.c=.o)
LIBS = -lthread_db
CFLAGS = -c -fPIC -g -D_GNU_SOURCE -D$(ARCH) $(INCLUDES)
CFLAGS = -c -fPIC -g -D_GNU_SOURCE -D$(ARCH) $(INCLUDES) -D_FILE_OFFSET_BITS=64
LIBSA = $(ARCH)/libsaproc.so

View File

@@ -1,5 +1,5 @@
/*
* Copyright (c) 2003, 2010, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2003, 2012, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -50,10 +50,6 @@ int pathmap_open(const char* name) {
char alt_path[PATH_MAX + 1];
init_alt_root();
fd = open(name, O_RDONLY);
if (fd >= 0) {
return fd;
}
if (alt_root_len > 0) {
strcpy(alt_path, alt_root);
@@ -73,6 +69,11 @@ int pathmap_open(const char* name) {
return fd;
}
}
} else {
fd = open(name, O_RDONLY);
if (fd >= 0) {
return fd;
}
}
return -1;

View File

@@ -440,7 +440,7 @@ static bool sort_map_array(struct ps_prochandle* ph) {
int j = 0;
print_debug("---- sorted virtual address map ----\n");
for (j = 0; j < ph->core->num_maps; j++) {
print_debug("base = 0x%lx\tsize = %d\n", ph->core->map_array[j]->vaddr,
print_debug("base = 0x%lx\tsize = %zu\n", ph->core->map_array[j]->vaddr,
ph->core->map_array[j]->memsz);
}
}

View File

@@ -1,5 +1,5 @@
/*
* Copyright (c) 2011, 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
@@ -49,8 +49,12 @@ public class G1CollectedHeap extends SharedHeap {
static private long g1CommittedFieldOffset;
// size_t _summary_bytes_used;
static private CIntegerField summaryBytesUsedField;
// G1MonitoringSupport* _g1mm
// G1MonitoringSupport* _g1mm;
static private AddressField g1mmField;
// MasterOldRegionSet _old_set;
static private long oldSetFieldOffset;
// MasterHumongousRegionSet _humongous_set;
static private long humongousSetFieldOffset;
static {
VM.registerVMInitializedObserver(new Observer() {
@@ -67,12 +71,14 @@ public class G1CollectedHeap extends SharedHeap {
g1CommittedFieldOffset = type.getField("_g1_committed").getOffset();
summaryBytesUsedField = type.getCIntegerField("_summary_bytes_used");
g1mmField = type.getAddressField("_g1mm");
oldSetFieldOffset = type.getField("_old_set").getOffset();
humongousSetFieldOffset = type.getField("_humongous_set").getOffset();
}
public long capacity() {
Address g1CommittedAddr = addr.addOffsetTo(g1CommittedFieldOffset);
MemRegion g1_committed = new MemRegion(g1CommittedAddr);
return g1_committed.byteSize();
MemRegion g1Committed = new MemRegion(g1CommittedAddr);
return g1Committed.byteSize();
}
public long used() {
@@ -94,6 +100,18 @@ public class G1CollectedHeap extends SharedHeap {
return (G1MonitoringSupport) VMObjectFactory.newObject(G1MonitoringSupport.class, g1mmAddr);
}
public HeapRegionSetBase oldSet() {
Address oldSetAddr = addr.addOffsetTo(oldSetFieldOffset);
return (HeapRegionSetBase) VMObjectFactory.newObject(HeapRegionSetBase.class,
oldSetAddr);
}
public HeapRegionSetBase humongousSet() {
Address humongousSetAddr = addr.addOffsetTo(humongousSetFieldOffset);
return (HeapRegionSetBase) VMObjectFactory.newObject(HeapRegionSetBase.class,
humongousSetAddr);
}
private Iterator<HeapRegion> heapRegionIterator() {
return hrs().heapRegionIterator();
}

View File

@@ -1,5 +1,5 @@
/*
* Copyright (c) 2011, 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
@@ -77,6 +77,10 @@ public class G1MonitoringSupport extends VMObject {
return edenUsedField.getValue(addr);
}
public long edenRegionNum() {
return edenUsed() / HeapRegion.grainBytes();
}
public long survivorCommitted() {
return survivorCommittedField.getValue(addr);
}
@@ -85,6 +89,10 @@ public class G1MonitoringSupport extends VMObject {
return survivorUsedField.getValue(addr);
}
public long survivorRegionNum() {
return survivorUsed() / HeapRegion.grainBytes();
}
public long oldCommitted() {
return oldCommittedField.getValue(addr);
}

View File

@@ -1,5 +1,5 @@
/*
* Copyright (c) 2011, 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
@@ -42,7 +42,7 @@ import sun.jvm.hotspot.types.TypeDataBase;
public class HeapRegionSeq extends VMObject {
// HeapRegion** _regions;
static private AddressField regionsField;
// size_t _length;
// uint _length;
static private CIntegerField lengthField;
static {

View File

@@ -0,0 +1,81 @@
/*
* Copyright (c) 2012, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation.
*
* This code is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* version 2 for more details (a copy is included in the LICENSE file that
* accompanied this code).
*
* You should have received a copy of the GNU General Public License version
* 2 along with this work; if not, write to the Free Software Foundation,
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*
*/
package sun.jvm.hotspot.gc_implementation.g1;
import java.util.Iterator;
import java.util.Observable;
import java.util.Observer;
import sun.jvm.hotspot.debugger.Address;
import sun.jvm.hotspot.runtime.VM;
import sun.jvm.hotspot.runtime.VMObject;
import sun.jvm.hotspot.runtime.VMObjectFactory;
import sun.jvm.hotspot.types.AddressField;
import sun.jvm.hotspot.types.CIntegerField;
import sun.jvm.hotspot.types.Type;
import sun.jvm.hotspot.types.TypeDataBase;
// Mirror class for HeapRegionSetBase. Represents a group of regions.
public class HeapRegionSetBase extends VMObject {
// uint _length;
static private CIntegerField lengthField;
// uint _region_num;
static private CIntegerField regionNumField;
// size_t _total_used_bytes;
static private CIntegerField totalUsedBytesField;
static {
VM.registerVMInitializedObserver(new Observer() {
public void update(Observable o, Object data) {
initialize(VM.getVM().getTypeDataBase());
}
});
}
static private synchronized void initialize(TypeDataBase db) {
Type type = db.lookupType("HeapRegionSetBase");
lengthField = type.getCIntegerField("_length");
regionNumField = type.getCIntegerField("_region_num");
totalUsedBytesField = type.getCIntegerField("_total_used_bytes");
}
public long length() {
return lengthField.getValue(addr);
}
public long regionNum() {
return regionNumField.getValue(addr);
}
public long totalUsedBytes() {
return totalUsedBytesField.getValue(addr);
}
public HeapRegionSetBase(Address addr) {
super(addr);
}
}

View File

@@ -1,5 +1,5 @@
/*
* Copyright (c) 2002, 2011, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2002, 2012, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -217,8 +217,8 @@ abstract class ConnectorImpl implements Connector {
}
protected void checkNativeLink(SecurityManager sm, String os) {
if (os.equals("SunOS") || os.equals("Linux")) {
// link "saproc" - SA native library on SunOS and Linux?
if (os.equals("SunOS") || os.equals("Linux") || os.contains("OS X")) {
// link "saproc" - SA native library on SunOS, Linux, and Mac OS X
sm.checkLink("saproc");
} else if (os.startsWith("Windows")) {
// link "sawindbg" - SA native library on Windows.

View File

@@ -1,5 +1,5 @@
/*
* Copyright (c) 2002, 2011, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2002, 2012, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -889,15 +889,9 @@ public class VirtualMachineImpl extends MirrorImpl implements PathSearchingVirtu
Klass kls = ((ReferenceTypeImpl)type).ref();
if (kls instanceof InstanceKlass) {
InstanceKlass ik = (InstanceKlass) kls;
if (ik.isInterface()) {
if (ik.nofImplementors() == 0L) {
return new ArrayList(0);
}
} else {
// if the Klass is final or if there are no subklasses loaded yet
if (ik.getAccessFlagsObj().isFinal() || ik.getSubklassKlass() == null) {
includeSubtypes = false;
}
// if the Klass is final or if there are no subklasses loaded yet
if (ik.getAccessFlagsObj().isFinal() || ik.getSubklassKlass() == null) {
includeSubtypes = false;
}
} else {
// no subtypes for primitive array types

View File

@@ -1,5 +1,5 @@
/*
* Copyright (c) 2003, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2003, 2012 Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -42,15 +42,6 @@ public class LoaderConstraintTable extends TwoOopHashtable {
private static synchronized void initialize(TypeDataBase db) {
Type type = db.lookupType("LoaderConstraintTable");
nofBuckets = db.lookupIntConstant("LoaderConstraintTable::_nof_buckets").intValue();
}
// Fields
private static int nofBuckets;
// Accessors
public static int getNumOfBuckets() {
return nofBuckets;
}
public LoaderConstraintTable(Address addr) {

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
@@ -36,7 +36,6 @@ public class SystemDictionary {
private static AddressField placeholdersField;
private static AddressField loaderConstraintTableField;
private static sun.jvm.hotspot.types.OopField javaSystemLoaderField;
private static int nofBuckets;
private static sun.jvm.hotspot.types.OopField objectKlassField;
private static sun.jvm.hotspot.types.OopField classLoaderKlassField;
@@ -62,7 +61,6 @@ public class SystemDictionary {
placeholdersField = type.getAddressField("_placeholders");
loaderConstraintTableField = type.getAddressField("_loader_constraints");
javaSystemLoaderField = type.getOopField("_java_system_loader");
nofBuckets = db.lookupIntConstant("SystemDictionary::_nof_buckets").intValue();
objectKlassField = type.getOopField(WK_KLASS("Object_klass"));
classLoaderKlassField = type.getOopField(WK_KLASS("ClassLoader_klass"));
@@ -142,10 +140,6 @@ public class SystemDictionary {
return newOop(javaSystemLoaderField.getValue());
}
public static int getNumOfBuckets() {
return nofBuckets;
}
private static Oop newOop(OopHandle handle) {
return VM.getVM().getObjectHeap().newOop(handle);
}

View File

@@ -1,24 +1,24 @@
/*
* Copyright (c) 2011, Oracle and/or its affiliates. All rights reserved.
* SUN PROPRIETARY/CONFIDENTIAL. Use is subject to license terms.
*
*
*
*
*
*
*
*
*
*
*
*
*
*
* 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.
*
*/

View File

@@ -1,24 +1,24 @@
/*
* Copyright (c) 2011, Oracle and/or its affiliates. All rights reserved.
* SUN PROPRIETARY/CONFIDENTIAL. Use is subject to license terms.
*
*
*
*
*
*
*
*
*
*
*
*
*
*
* 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.
*
*/

View File

@@ -648,7 +648,12 @@ public class ConstantPool extends Oop implements ClassConstants {
}
public void printValueOn(PrintStream tty) {
tty.print("ConstantPool for " + getPoolHolder().getName().asString());
Oop holder = poolHolder.getValue(this);
if (holder instanceof Klass) {
tty.print("ConstantPool for " + ((Klass)holder).getName().asString());
} else {
tty.print("ConstantPool for partially loaded class");
}
}
public long getObjectSize() {

View File

@@ -1,24 +1,24 @@
/*
* Copyright (c) 2011, Oracle and/or its affiliates. All rights reserved.
* SUN PROPRIETARY/CONFIDENTIAL. Use is subject to license terms.
*
*
*
*
*
*
*
*
*
*
*
*
*
*
* 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.
*
*/

View File

@@ -1,24 +1,24 @@
/*
* Copyright (c) 2011, Oracle and/or its affiliates. All rights reserved.
* SUN PROPRIETARY/CONFIDENTIAL. Use is subject to license terms.
*
*
*
*
*
*
*
*
*
*
*
*
*
*
* 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.
*
*/

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
@@ -52,7 +52,6 @@ public class InstanceKlass extends Klass {
private static int HIGH_OFFSET;
private static int GENERIC_SIGNATURE_INDEX_OFFSET;
private static int FIELD_SLOTS;
public static int IMPLEMENTORS_LIMIT;
// ClassState constants
private static int CLASS_STATE_UNPARSABLE_BY_GC;
@@ -70,13 +69,6 @@ public class InstanceKlass extends Klass {
methodOrdering = new OopField(type.getOopField("_method_ordering"), Oop.getHeaderSize());
localInterfaces = new OopField(type.getOopField("_local_interfaces"), Oop.getHeaderSize());
transitiveInterfaces = new OopField(type.getOopField("_transitive_interfaces"), Oop.getHeaderSize());
nofImplementors = new CIntField(type.getCIntegerField("_nof_implementors"), Oop.getHeaderSize());
IMPLEMENTORS_LIMIT = db.lookupIntConstant("instanceKlass::implementors_limit").intValue();
implementors = new OopField[IMPLEMENTORS_LIMIT];
for (int i = 0; i < IMPLEMENTORS_LIMIT; i++) {
long arrayOffset = Oop.getHeaderSize() + (i * db.getAddressSize());
implementors[i] = new OopField(type.getOopField("_implementors[0]"), arrayOffset);
}
fields = new OopField(type.getOopField("_fields"), Oop.getHeaderSize());
javaFieldsCount = new CIntField(type.getCIntegerField("_java_fields_count"), Oop.getHeaderSize());
constants = new OopField(type.getOopField("_constants"), Oop.getHeaderSize());
@@ -136,8 +128,6 @@ public class InstanceKlass extends Klass {
private static OopField methodOrdering;
private static OopField localInterfaces;
private static OopField transitiveInterfaces;
private static CIntField nofImplementors;
private static OopField[] implementors;
private static OopField fields;
private static CIntField javaFieldsCount;
private static OopField constants;
@@ -317,9 +307,6 @@ public class InstanceKlass extends Klass {
public TypeArray getMethodOrdering() { return (TypeArray) methodOrdering.getValue(this); }
public ObjArray getLocalInterfaces() { return (ObjArray) localInterfaces.getValue(this); }
public ObjArray getTransitiveInterfaces() { return (ObjArray) transitiveInterfaces.getValue(this); }
public long nofImplementors() { return nofImplementors.getValue(this); }
public Klass getImplementor() { return (Klass) implementors[0].getValue(this); }
public Klass getImplementor(int i) { return (Klass) implementors[i].getValue(this); }
public TypeArray getFields() { return (TypeArray) fields.getValue(this); }
public int getJavaFieldsCount() { return (int) javaFieldsCount.getValue(this); }
public int getAllFieldsCount() { return (int)getFields().getLength() / FIELD_SLOTS; }
@@ -359,6 +346,12 @@ public class InstanceKlass extends Klass {
public static final int innerClassNextOffset = 4;
};
public static interface EnclosingMethodAttributeOffset {
public static final int enclosing_method_class_index_offset = 0;
public static final int enclosing_method_method_index_offset = 1;
public static final int enclosing_method_attribute_size = 2;
};
// refer to compute_modifier_flags in VM code.
public long computeModifierFlags() {
long access = getAccessFlags();
@@ -367,9 +360,14 @@ public class InstanceKlass extends Klass {
int length = ( innerClassList == null)? 0 : (int) innerClassList.getLength();
if (length > 0) {
if (Assert.ASSERTS_ENABLED) {
Assert.that(length % InnerClassAttributeOffset.innerClassNextOffset == 0, "just checking");
Assert.that(length % InnerClassAttributeOffset.innerClassNextOffset == 0 ||
length % InnerClassAttributeOffset.innerClassNextOffset == EnclosingMethodAttributeOffset.enclosing_method_attribute_size,
"just checking");
}
for (int i = 0; i < length; i += InnerClassAttributeOffset.innerClassNextOffset) {
if (i == length - EnclosingMethodAttributeOffset.enclosing_method_attribute_size) {
break;
}
int ioff = innerClassList.getShortAt(i +
InnerClassAttributeOffset.innerClassInnerClassInfoOffset);
// 'ioff' can be zero.
@@ -419,9 +417,14 @@ public class InstanceKlass extends Klass {
int length = ( innerClassList == null)? 0 : (int) innerClassList.getLength();
if (length > 0) {
if (Assert.ASSERTS_ENABLED) {
Assert.that(length % InnerClassAttributeOffset.innerClassNextOffset == 0, "just checking");
Assert.that(length % InnerClassAttributeOffset.innerClassNextOffset == 0 ||
length % InnerClassAttributeOffset.innerClassNextOffset == EnclosingMethodAttributeOffset.enclosing_method_attribute_size,
"just checking");
}
for (int i = 0; i < length; i += InnerClassAttributeOffset.innerClassNextOffset) {
if (i == length - EnclosingMethodAttributeOffset.enclosing_method_attribute_size) {
break;
}
int ioff = innerClassList.getShortAt(i +
InnerClassAttributeOffset.innerClassInnerClassInfoOffset);
// 'ioff' can be zero.
@@ -511,9 +514,6 @@ public class InstanceKlass extends Klass {
visitor.doOop(methodOrdering, true);
visitor.doOop(localInterfaces, true);
visitor.doOop(transitiveInterfaces, true);
visitor.doCInt(nofImplementors, true);
for (int i = 0; i < IMPLEMENTORS_LIMIT; i++)
visitor.doOop(implementors[i], true);
visitor.doOop(fields, true);
visitor.doOop(constants, true);
visitor.doOop(classLoader, true);

View File

@@ -1,24 +1,24 @@
/*
* Copyright (c) 2011, Oracle and/or its affiliates. All rights reserved.
* SUN PROPRIETARY/CONFIDENTIAL. Use is subject to license terms.
*
*
*
*
*
*
*
*
*
*
*
*
*
*
* 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.
*
*/

View File

@@ -1,24 +1,24 @@
/*
* Copyright (c) 2011, Oracle and/or its affiliates. All rights reserved.
* SUN PROPRIETARY/CONFIDENTIAL. Use is subject to license terms.
*
*
*
*
*
*
*
*
*
*
*
*
*
*
* 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.
*
*/

View File

@@ -1,24 +1,24 @@
/*
* Copyright (c) 2011, Oracle and/or its affiliates. All rights reserved.
* SUN PROPRIETARY/CONFIDENTIAL. Use is subject to license terms.
*
*
*
*
*
*
*
*
*
*
*
*
*
*
* 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.
*
*/

View File

@@ -1,24 +1,24 @@
/*
* Copyright (c) 2011, Oracle and/or its affiliates. All rights reserved.
* SUN PROPRIETARY/CONFIDENTIAL. Use is subject to license terms.
*
*
*
*
*
*
*
*
*
*
*
*
*
*
* 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.
*
*/

View File

@@ -1,5 +1,5 @@
/*
* Copyright (c) 2003, 2011, 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
@@ -67,6 +67,7 @@ public class HeapSummary extends Tool {
printValue("SurvivorRatio = ", getFlagValue("SurvivorRatio", flagMap));
printValMB("PermSize = ", getFlagValue("PermSize", flagMap));
printValMB("MaxPermSize = ", getFlagValue("MaxPermSize", flagMap));
printValMB("G1HeapRegionSize = ", HeapRegion.grainBytes());
System.out.println();
System.out.println("Heap Usage:");
@@ -100,11 +101,20 @@ public class HeapSummary extends Tool {
} else if (sharedHeap instanceof G1CollectedHeap) {
G1CollectedHeap g1h = (G1CollectedHeap) sharedHeap;
G1MonitoringSupport g1mm = g1h.g1mm();
System.out.println("G1 Young Generation");
printG1Space("Eden Space:", g1mm.edenUsed(), g1mm.edenCommitted());
printG1Space("From Space:", g1mm.survivorUsed(), g1mm.survivorCommitted());
printG1Space("To Space:", 0, 0);
printG1Space("G1 Old Generation", g1mm.oldUsed(), g1mm.oldCommitted());
long edenRegionNum = g1mm.edenRegionNum();
long survivorRegionNum = g1mm.survivorRegionNum();
HeapRegionSetBase oldSet = g1h.oldSet();
HeapRegionSetBase humongousSet = g1h.humongousSet();
long oldRegionNum = oldSet.regionNum() + humongousSet.regionNum();
printG1Space("G1 Heap:", g1h.n_regions(),
g1h.used(), g1h.capacity());
System.out.println("G1 Young Generation:");
printG1Space("Eden Space:", edenRegionNum,
g1mm.edenUsed(), g1mm.edenCommitted());
printG1Space("Survivor Space:", survivorRegionNum,
g1mm.survivorUsed(), g1mm.survivorCommitted());
printG1Space("G1 Old Generation:", oldRegionNum,
g1mm.oldUsed(), g1mm.oldCommitted());
} else {
throw new RuntimeException("unknown SharedHeap type : " + heap.getClass());
}
@@ -216,9 +226,11 @@ public class HeapSummary extends Tool {
System.out.println(alignment + (double)space.used() * 100.0 / space.capacity() + "% used");
}
private void printG1Space(String spaceName, long used, long capacity) {
private void printG1Space(String spaceName, long regionNum,
long used, long capacity) {
long free = capacity - used;
System.out.println(spaceName);
printValue("regions = ", regionNum);
printValMB("capacity = ", capacity);
printValMB("used = ", used);
printValMB("free = ", free);

View File

@@ -1,5 +1,5 @@
/*
* Copyright (c) 2000, 2003, 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
@@ -43,7 +43,7 @@ public class PlatformInfo {
return "bsd";
} else if (os.equals("OpenBSD")) {
return "bsd";
} else if (os.equals("Darwin") || os.startsWith("Mac OS X")) {
} else if (os.equals("Darwin") || os.contains("OS X")) {
return "bsd";
} else if (os.startsWith("Windows")) {
return "win32";
@@ -52,17 +52,17 @@ public class PlatformInfo {
}
}
/* Returns "sparc" if on SPARC, "x86" if on x86. */
/* Returns "sparc" for SPARC based platforms and "x86" for x86 based
platforms. Otherwise returns the value of os.arch. If the value
is not recognized as supported, an exception is thrown instead. */
public static String getCPU() throws UnsupportedPlatformException {
String cpu = System.getProperty("os.arch");
if (cpu.equals("i386")) {
if (cpu.equals("i386") || cpu.equals("x86")) {
return "x86";
} else if (cpu.equals("sparc") || cpu.equals("x86") || cpu.equals("ia64")) {
return cpu;
} else if (cpu.equals("sparcv9")) {
} else if (cpu.equals("sparc") || cpu.equals("sparcv9")) {
return "sparc";
} else if (cpu.equals("x86_64") || cpu.equals("amd64")) {
return "amd64";
} else if (cpu.equals("ia64") || cpu.equals("amd64") || cpu.equals("x86_64")) {
return cpu;
} else {
throw new UnsupportedPlatformException("CPU type " + cpu + " not yet supported");
}

View File

@@ -1,5 +1,5 @@
#
# Copyright (c) 2005, 2011, Oracle and/or its affiliates. All rights reserved.
# Copyright (c) 2005, 2012, Oracle and/or its affiliates. All rights reserved.
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
#
# This code is free software; you can redistribute it and/or modify it
@@ -89,19 +89,31 @@ KERNEL_VM_TARGETS=productkernel fastdebugkernel optimizedkernel jvmgkernel
ZERO_VM_TARGETS=productzero fastdebugzero optimizedzero jvmgzero
SHARK_VM_TARGETS=productshark fastdebugshark optimizedshark jvmgshark
COMMON_VM_PRODUCT_TARGETS=product product1 productkernel docs export_product
COMMON_VM_FASTDEBUG_TARGETS=fastdebug fastdebug1 fastdebugkernel docs export_fastdebug
COMMON_VM_DEBUG_TARGETS=jvmg jvmg1 jvmgkernel docs export_debug
# JDK directory list
JDK_DIRS=bin include jre lib demo
all: all_product all_fastdebug
ifndef BUILD_CLIENT_ONLY
all_product: product product1 productkernel docs export_product
all_fastdebug: fastdebug fastdebug1 fastdebugkernel docs export_fastdebug
all_debug: jvmg jvmg1 jvmgkernel docs export_debug
else
ifdef BUILD_CLIENT_ONLY
all_product: product1 docs export_product
all_fastdebug: fastdebug1 docs export_fastdebug
all_debug: jvmg1 docs export_debug
else
ifeq ($(MACOSX_UNIVERSAL),true)
all_product: universal_product
all_fastdebug: universal_fastdebug
all_debug: universal_debug
else
all_product: $(COMMON_VM_PRODUCT_TARGETS)
all_fastdebug: $(COMMON_VM_FASTDEBUG_TARGETS)
all_debug: $(COMMON_VM_DEBUG_TARGETS)
endif
endif
all_optimized: optimized optimized1 optimizedkernel docs export_optimized
allzero: all_productzero all_fastdebugzero
@@ -124,31 +136,36 @@ docs:
ifeq ($(OSNAME),windows)
@$(ECHO) "No docs ($(VM_TARGET)) for windows"
else
# We specify 'BUILD_FLAVOR=product' so that the proper
# ENABLE_FULL_DEBUG_SYMBOLS value is used.
$(CD) $(OUTPUTDIR); \
$(MAKE) -f $(ABS_OS_MAKEFILE) \
$(MAKE_ARGS) docs
$(MAKE_ARGS) BUILD_FLAVOR=product docs
endif
# Build variation of hotspot
$(C1_VM_TARGETS):
$(CD) $(GAMMADIR)/make; \
$(MAKE) VM_TARGET=$@ generic_build1 $(ALT_OUT)
$(MAKE) BUILD_FLAVOR=$(@:%1=%) VM_TARGET=$@ generic_build1 $(ALT_OUT)
$(C2_VM_TARGETS):
$(CD) $(GAMMADIR)/make; \
$(MAKE) VM_TARGET=$@ generic_build2 $(ALT_OUT)
$(MAKE) BUILD_FLAVOR=$@ VM_TARGET=$@ generic_build2 $(ALT_OUT)
$(KERNEL_VM_TARGETS):
$(CD) $(GAMMADIR)/make; \
$(MAKE) VM_TARGET=$@ generic_buildkernel $(ALT_OUT)
$(MAKE) BUILD_FLAVOR=$(@:%kernel=%) VM_TARGET=$@ \
generic_buildkernel $(ALT_OUT)
$(ZERO_VM_TARGETS):
$(CD) $(GAMMADIR)/make; \
$(MAKE) VM_TARGET=$@ generic_buildzero $(ALT_OUT)
$(MAKE) BUILD_FLAVOR=$(@:%zero=%) VM_TARGET=$@ \
generic_buildzero $(ALT_OUT)
$(SHARK_VM_TARGETS):
$(CD) $(GAMMADIR)/make; \
$(MAKE) VM_TARGET=$@ generic_buildshark $(ALT_OUT)
$(MAKE) BUILD_FLAVOR=$(@:%shark=%) VM_TARGET=$@ \
generic_buildshark $(ALT_OUT)
# Build compiler1 (client) rule, different for platforms
generic_build1:
@@ -225,26 +242,37 @@ generic_buildshark:
# Export file rule
generic_export: $(EXPORT_LIST)
export_product:
$(MAKE) VM_SUBDIR=product generic_export
$(MAKE) BUILD_FLAVOR=$(@:export_%=%) VM_SUBDIR=$(@:export_%=%) \
generic_export
export_fastdebug:
$(MAKE) VM_SUBDIR=fastdebug EXPORT_SUBDIR=/fastdebug generic_export
$(MAKE) BUILD_FLAVOR=$(@:export_%=%) VM_SUBDIR=$(@:export_%=%) \
EXPORT_SUBDIR=/$(@:export_%=%) \
generic_export
export_debug:
$(MAKE) VM_SUBDIR=${VM_DEBUG} EXPORT_SUBDIR=/debug generic_export
$(MAKE) BUILD_FLAVOR=$(@:export_%=%) VM_SUBDIR=${VM_DEBUG} \
EXPORT_SUBDIR=/$(@:export_%=%) \
generic_export
export_optimized:
$(MAKE) VM_SUBDIR=optimized EXPORT_SUBDIR=/optimized generic_export
export_product_jdk:
$(MAKE) ALT_EXPORT_PATH=$(JDK_IMAGE_DIR) \
VM_SUBDIR=product generic_export
export_optimized_jdk:
$(MAKE) ALT_EXPORT_PATH=$(JDK_IMAGE_DIR) \
VM_SUBDIR=optimized generic_export
export_fastdebug_jdk:
$(MAKE) ALT_EXPORT_PATH=$(JDK_IMAGE_DIR)/fastdebug \
VM_SUBDIR=fastdebug generic_export
export_debug_jdk:
$(MAKE) ALT_EXPORT_PATH=$(JDK_IMAGE_DIR)/debug \
VM_SUBDIR=${VM_DEBUG} generic_export
$(MAKE) BUILD_FLAVOR=$(@:export_%=%) VM_SUBDIR=$(@:export_%=%) \
EXPORT_SUBDIR=/$(@:export_%=%) \
generic_export
export_product_jdk::
$(MAKE) BUILD_FLAVOR=$(@:export_%_jdk=%) \
VM_SUBDIR=$(@:export_%_jdk=%) ALT_EXPORT_PATH=$(JDK_IMAGE_DIR) \
generic_export
export_optimized_jdk::
$(MAKE) BUILD_FLAVOR=$(@:export_%_jdk=%) \
VM_SUBDIR=$(@:export_%_jdk=%) ALT_EXPORT_PATH=$(JDK_IMAGE_DIR) \
generic_export
export_fastdebug_jdk::
$(MAKE) BUILD_FLAVOR=$(@:export_%_jdk=%) \
VM_SUBDIR=$(@:export_%_jdk=%) \
ALT_EXPORT_PATH=$(JDK_IMAGE_DIR)/$(@:export_%_jdk=%) \
generic_export
export_debug_jdk::
$(MAKE) BUILD_FLAVOR=$(@:export_%_jdk=%) VM_SUBDIR=${VM_DEBUG} \
ALT_EXPORT_PATH=$(JDK_IMAGE_DIR)/$(@:export_%_jdk=%) \
generic_export
# Export file copy rules
XUSAGE=$(HS_SRC_DIR)/share/vm/Xusage.txt
@@ -260,23 +288,25 @@ KERNEL_DIR=$(KERNEL_BASE_DIR)/$(VM_SUBDIR)
ZERO_DIR=$(ZERO_BASE_DIR)/$(VM_SUBDIR)
SHARK_DIR=$(SHARK_BASE_DIR)/$(VM_SUBDIR)
# Misc files and generated files need to come from C1 or C2 area
ifeq ($(ZERO_BUILD), true)
ifeq ($(SHARK_BUILD), true)
MISC_DIR=$(SHARK_DIR)
GEN_DIR=$(SHARK_BASE_DIR)/generated
else
MISC_DIR=$(ZERO_DIR)
GEN_DIR=$(ZERO_BASE_DIR)/generated
ifeq ($(JVM_VARIANT_SERVER), true)
MISC_DIR=$(C2_DIR)
GEN_DIR=$(C2_BASE_DIR)/generated
endif
else
ifeq ($(ARCH_DATA_MODEL), 32)
MISC_DIR=$(C1_DIR)
GEN_DIR=$(C1_BASE_DIR)/generated
else
MISC_DIR=$(C2_DIR)
GEN_DIR=$(C2_BASE_DIR)/generated
ifeq ($(JVM_VARIANT_CLIENT), true)
MISC_DIR=$(C1_DIR)
GEN_DIR=$(C1_BASE_DIR)/generated
endif
ifeq ($(JVM_VARIANT_KERNEL), true)
MISC_DIR=$(C2_DIR)
GEN_DIR=$(C2_BASE_DIR)/generated
endif
ifeq ($(JVM_VARIANT_ZEROSHARK), true)
MISC_DIR=$(SHARK_DIR)
GEN_DIR=$(SHARK_BASE_DIR)/generated
endif
ifeq ($(JVM_VARIANT_ZERO), true)
MISC_DIR=$(ZERO_DIR)
GEN_DIR=$(ZERO_BASE_DIR)/generated
endif
# Bin files (windows)
@@ -287,6 +317,8 @@ $(EXPORT_LIB_DIR)/%.lib: $(MISC_DIR)/%.lib
$(install-file)
# Other libraries (like SA)
$(EXPORT_JRE_BIN_DIR)/%.diz: $(MISC_DIR)/%.diz
$(install-file)
$(EXPORT_JRE_BIN_DIR)/%.dll: $(MISC_DIR)/%.dll
$(install-file)
$(EXPORT_JRE_BIN_DIR)/%.pdb: $(MISC_DIR)/%.pdb
@@ -295,6 +327,8 @@ $(EXPORT_JRE_BIN_DIR)/%.map: $(MISC_DIR)/%.map
$(install-file)
# Client files always come from C1 area
$(EXPORT_CLIENT_DIR)/%.diz: $(C1_DIR)/%.diz
$(install-file)
$(EXPORT_CLIENT_DIR)/%.dll: $(C1_DIR)/%.dll
$(install-file)
$(EXPORT_CLIENT_DIR)/%.pdb: $(C1_DIR)/%.pdb
@@ -303,6 +337,8 @@ $(EXPORT_CLIENT_DIR)/%.map: $(C1_DIR)/%.map
$(install-file)
# Server files always come from C2 area
$(EXPORT_SERVER_DIR)/%.diz: $(C2_DIR)/%.diz
$(install-file)
$(EXPORT_SERVER_DIR)/%.dll: $(C2_DIR)/%.dll
$(install-file)
$(EXPORT_SERVER_DIR)/%.pdb: $(C2_DIR)/%.pdb
@@ -311,6 +347,8 @@ $(EXPORT_SERVER_DIR)/%.map: $(C2_DIR)/%.map
$(install-file)
# Kernel files always come from kernel area
$(EXPORT_KERNEL_DIR)/%.diz: $(KERNEL_DIR)/%.diz
$(install-file)
$(EXPORT_KERNEL_DIR)/%.dll: $(KERNEL_DIR)/%.dll
$(install-file)
$(EXPORT_KERNEL_DIR)/%.pdb: $(KERNEL_DIR)/%.pdb
@@ -321,53 +359,68 @@ endif
# Shared Library
ifneq ($(OSNAME),windows)
ifeq ($(ZERO_BUILD), true)
ifeq ($(SHARK_BUILD), true)
$(EXPORT_JRE_LIB_ARCH_DIR)/%.$(LIBRARY_SUFFIX): $(SHARK_DIR)/%.$(LIBRARY_SUFFIX)
$(install-file)
$(EXPORT_SERVER_DIR)/%.$(LIBRARY_SUFFIX): $(SHARK_DIR)/%.$(LIBRARY_SUFFIX)
$(install-file)
else
$(EXPORT_JRE_LIB_ARCH_DIR)/%.$(LIBRARY_SUFFIX): $(ZERO_DIR)/%.$(LIBRARY_SUFFIX)
$(install-file)
$(EXPORT_SERVER_DIR)/%.$(LIBRARY_SUFFIX): $(ZERO_DIR)/%.$(LIBRARY_SUFFIX)
$(install-file)
ifeq ($(JVM_VARIANT_SERVER), true)
$(EXPORT_JRE_LIB_ARCH_DIR)/%.$(LIBRARY_SUFFIX): $(C2_DIR)/%.$(LIBRARY_SUFFIX)
$(install-file)
$(EXPORT_SERVER_DIR)/%.$(LIBRARY_SUFFIX): $(C2_DIR)/%.$(LIBRARY_SUFFIX)
$(install-file)
$(EXPORT_SERVER_DIR)/64/%.$(LIBRARY_SUFFIX): $(C2_DIR)/%.$(LIBRARY_SUFFIX)
$(install-file)
$(EXPORT_JRE_LIB_ARCH_DIR)/%.debuginfo: $(C2_DIR)/%.debuginfo
$(install-file)
$(EXPORT_SERVER_DIR)/%.debuginfo: $(C2_DIR)/%.debuginfo
$(install-file)
$(EXPORT_SERVER_DIR)/64/%.debuginfo: $(C2_DIR)/%.debuginfo
$(install-file)
$(EXPORT_JRE_LIB_ARCH_DIR)/%.diz: $(C2_DIR)/%.diz
$(install-file)
$(EXPORT_SERVER_DIR)/%.diz: $(C2_DIR)/%.diz
$(install-file)
$(EXPORT_SERVER_DIR)/64/%.diz: $(C2_DIR)/%.diz
$(install-file)
endif
ifeq ($(JVM_VARIANT_CLIENT), true)
$(EXPORT_JRE_LIB_ARCH_DIR)/%.$(LIBRARY_SUFFIX): $(C1_DIR)/%.$(LIBRARY_SUFFIX)
$(install-file)
$(EXPORT_CLIENT_DIR)/%.$(LIBRARY_SUFFIX): $(C1_DIR)/%.$(LIBRARY_SUFFIX)
$(install-file)
$(EXPORT_CLIENT_DIR)/64/%.$(LIBRARY_SUFFIX): $(C1_DIR)/%.$(LIBRARY_SUFFIX)
$(install-file)
$(EXPORT_JRE_LIB_ARCH_DIR)/%.debuginfo: $(C1_DIR)/%.debuginfo
$(install-file)
$(EXPORT_CLIENT_DIR)/%.debuginfo: $(C1_DIR)/%.debuginfo
$(install-file)
$(EXPORT_CLIENT_DIR)/64/%.debuginfo: $(C1_DIR)/%.debuginfo
$(install-file)
$(EXPORT_JRE_LIB_ARCH_DIR)/%.diz: $(C1_DIR)/%.diz
$(install-file)
$(EXPORT_CLIENT_DIR)/%.diz: $(C1_DIR)/%.diz
$(install-file)
$(EXPORT_CLIENT_DIR)/64/%.diz: $(C1_DIR)/%.diz
$(install-file)
endif
ifeq ($(JVM_VARIANT_ZEROSHARK), true)
$(EXPORT_JRE_LIB_ARCH_DIR)/%.$(LIBRARY_SUFFIX): $(SHARK_DIR)/%.$(LIBRARY_SUFFIX)
$(install-file)
$(EXPORT_SERVER_DIR)/%.$(LIBRARY_SUFFIX): $(SHARK_DIR)/%.$(LIBRARY_SUFFIX)
$(install-file)
endif
ifeq ($(JVM_VARIANT_ZERO), true)
$(EXPORT_JRE_LIB_ARCH_DIR)/%.$(LIBRARY_SUFFIX): $(ZERO_DIR)/%.$(LIBRARY_SUFFIX)
$(install-file)
$(EXPORT_SERVER_DIR)/%.$(LIBRARY_SUFFIX): $(ZERO_DIR)/%.$(LIBRARY_SUFFIX)
$(install-file)
endif
else
$(EXPORT_JRE_LIB_ARCH_DIR)/%.$(LIBRARY_SUFFIX): $(C1_DIR)/%.$(LIBRARY_SUFFIX)
$(install-file)
$(EXPORT_JRE_LIB_ARCH_DIR)/%.$(LIBRARY_SUFFIX): $(C2_DIR)/%.$(LIBRARY_SUFFIX)
$(install-file)
$(EXPORT_CLIENT_DIR)/%.$(LIBRARY_SUFFIX): $(C1_DIR)/%.$(LIBRARY_SUFFIX)
$(install-file)
$(EXPORT_CLIENT_DIR)/64/%.$(LIBRARY_SUFFIX): $(C1_DIR)/%.$(LIBRARY_SUFFIX)
$(install-file)
$(EXPORT_SERVER_DIR)/%.$(LIBRARY_SUFFIX): $(C2_DIR)/%.$(LIBRARY_SUFFIX)
$(install-file)
$(EXPORT_SERVER_DIR)/64/%.$(LIBRARY_SUFFIX): $(C2_DIR)/%.$(LIBRARY_SUFFIX)
$(install-file)
# Debug info for shared library
$(EXPORT_JRE_LIB_ARCH_DIR)/%.debuginfo: $(C1_DIR)/%.debuginfo
$(install-file)
$(EXPORT_JRE_LIB_ARCH_DIR)/%.debuginfo: $(C2_DIR)/%.debuginfo
$(install-file)
$(EXPORT_CLIENT_DIR)/%.debuginfo: $(C1_DIR)/%.debuginfo
$(install-file)
$(EXPORT_CLIENT_DIR)/64/%.debuginfo: $(C1_DIR)/%.debuginfo
$(install-file)
$(EXPORT_SERVER_DIR)/%.debuginfo: $(C2_DIR)/%.debuginfo
$(install-file)
$(EXPORT_SERVER_DIR)/64/%.debuginfo: $(C2_DIR)/%.debuginfo
$(install-file)
endif
endif
# Jar file (sa-jdi.jar)
$(EXPORT_LIB_DIR)/%.jar: $(GEN_DIR)/%.jar
$(install-file)
# Include files (jvmti.h, jvmticmlr.h, jni.h, $(JDK_INCLUDE_SUBDIR)/jni_md.h, jmm.h)
$(EXPORT_JRE_LIB_DIR)/%.jar: $(GEN_DIR)/%.jar
$(install-file)
# Include files (jvmti.h, jvmticmlr.h, jni.h, $(JDK_INCLUDE_SUBDIR)/jni_md.h, jmm.h, jfr.h)
$(EXPORT_INCLUDE_DIR)/%: $(GEN_DIR)/jvmtifiles/%
$(install-file)
@@ -384,6 +437,15 @@ $(EXPORT_INCLUDE_DIR)/$(JDK_INCLUDE_SUBDIR)/jni_md.h: $(HS_JNI_ARCH_SRC)
$(EXPORT_INCLUDE_DIR)/%: $(HS_SRC_DIR)/share/vm/services/%
$(install-file)
JFR_EXISTS=$(shell if [ -d $(HS_ALT_SRC) ]; then echo 1; else echo 0; fi)
# export jfr.h
ifeq ($JFR_EXISTS,1)
$(EXPORT_INCLUDE_DIR)/%: $(HS_ALT_SRC)/share/vm/jfr/agent/%
$(install-file)
else
$(EXPORT_INCLUDE_DIR)/jfr.h:
endif
# Doc files (jvmti.html)
$(EXPORT_DOCS_DIR)/platform/jvmti/%: $(DOCS_DIR)/%
$(install-file)
@@ -427,21 +489,28 @@ $(JDK_IMAGE_DIR)/jre/lib/rt.jar:
($(CD) $(JDK_IMAGE_DIR) && $(TAR) -xf -)
test_jdk:
ifneq ($(ZERO_BUILD), true)
ifeq ($(ARCH_DATA_MODEL), 32)
$(JDK_IMAGE_DIR)/bin/java -client -version
endif
ifeq ($(JVM_VARIANT_CLIENT), true)
$(JDK_IMAGE_DIR)/bin/java -d$(ARCH_DATA_MODEL) -client -Xinternalversion
$(JDK_IMAGE_DIR)/bin/java -d$(ARCH_DATA_MODEL) -client -version
endif
ifeq ($(findstring true, $(JVM_VARIANT_SERVER)\
$(JVM_VARIANT_ZERO)$(JVM_VARIANT_ZEROSHARK)), true)
$(JDK_IMAGE_DIR)/bin/java -d$(ARCH_DATA_MODEL) -server -Xinternalversion
$(JDK_IMAGE_DIR)/bin/java -d$(ARCH_DATA_MODEL) -server -version
endif
ifeq ($(JVM_VARIANT_KERNEL), true)
$(JDK_IMAGE_DIR)/bin/java -d$(ARCH_DATA_MODEL) -kernel -Xinternalversion
$(JDK_IMAGE_DIR)/bin/java -d$(ARCH_DATA_MODEL) -kernel -version
endif
$(JDK_IMAGE_DIR)/bin/java -server -version
copy_product_jdk:
copy_product_jdk::
$(RM) -r $(JDK_IMAGE_DIR)
$(MKDIR) -p $(JDK_IMAGE_DIR)
($(CD) $(JDK_IMPORT_PATH) && \
$(TAR) -cf - $(JDK_DIRS)) | \
($(CD) $(JDK_IMAGE_DIR) && $(TAR) -xf -)
copy_fastdebug_jdk:
copy_fastdebug_jdk::
$(RM) -r $(JDK_IMAGE_DIR)/fastdebug
$(MKDIR) -p $(JDK_IMAGE_DIR)/fastdebug
if [ -d $(JDK_IMPORT_PATH)/fastdebug ] ; then \
@@ -454,7 +523,7 @@ copy_fastdebug_jdk:
($(CD) $(JDK_IMAGE_DIR)/fastdebug && $(TAR) -xf -) ; \
fi
copy_debug_jdk:
copy_debug_jdk::
$(RM) -r $(JDK_IMAGE_DIR)/debug
$(MKDIR) -p $(JDK_IMAGE_DIR)/debug
if [ -d $(JDK_IMPORT_PATH)/debug ] ; then \
@@ -471,36 +540,6 @@ copy_debug_jdk:
($(CD) $(JDK_IMAGE_DIR)/debug && $(TAR) -xf -) ; \
fi
# macosx universal builds
ifeq ($(MACOSX_UNIVERSAL), true)
$(UNIVERSAL_LIPO_LIST):
lipo -create -output $@ $(EXPORT_JRE_LIB_DIR)/{i386,amd64}/$(subst $(EXPORT_JRE_LIB_DIR)/,,$@)
$(UNIVERSAL_COPY_LIST):
$(CP) $(EXPORT_JRE_LIB_DIR)/i386/$(subst $(EXPORT_JRE_LIB_DIR)/,,$@) $@
universalize: $(UNIVERSAL_LIPO_LIST) $(UNIVERSAL_COPY_LIST)
endif
universal_product:
$(QUIETLY) $(MAKE) ARCH_DATA_MODEL=32 MACOSX_UNIVERSAL=true all_product
$(QUIETLY) $(MAKE) ARCH_DATA_MODEL=64 MACOSX_UNIVERSAL=true all_product
$(MKDIR) -p $(EXPORT_JRE_LIB_DIR)/{client,server}
$(QUIETLY) $(MAKE) MACOSX_UNIVERSAL=true universalize
universal_fastdebug:
$(QUIETLY) $(MAKE) ARCH_DATA_MODEL=32 MACOSX_UNIVERSAL=true all_fastdebug
$(QUIETLY) $(MAKE) ARCH_DATA_MODEL=64 MACOSX_UNIVERSAL=true all_fastdebug
$(MKDIR) -p $(EXPORT_JRE_LIB_DIR)/{client,server}
$(QUIETLY) $(MAKE) MACOSX_UNIVERSAL=true universalize
universal_debug:
$(QUIETLY) $(MAKE) ARCH_DATA_MODEL=32 MACOSX_UNIVERSAL=true all_debug
$(QUIETLY) $(MAKE) ARCH_DATA_MODEL=64 MACOSX_UNIVERSAL=true all_debug
$(MKDIR) -p $(EXPORT_JRE_LIB_DIR)/{client,server}
$(QUIETLY) $(MAKE) MACOSX_UNIVERSAL=true universalize
#
# Check target
#
@@ -554,6 +593,7 @@ SLASH_JAVA.desc = Root of all build tools, e.g. /java or J:
OUTPUTDIR.desc = Output directory, default is build/<osname>
BOOTDIR.desc = JDK used to compile agent java source and test with
JDK_IMPORT_PATH.desc = Promoted JDK to copy for 'create_jdk'
JDK_IMAGE_DIR.desc = Directory to place JDK to copy
EXPORT_PATH.desc = Directory to place files to export for JDK build
# Make variables to print out (description and value)
@@ -562,6 +602,7 @@ VARIABLE_PRINTVAL_LIST += \
OUTPUTDIR \
BOOTDIR \
JDK_IMPORT_PATH \
JDK_IMAGE_DIR \
EXPORT_PATH
# Make variables that should refer to directories that exist
@@ -620,6 +661,13 @@ examples_help:
@$(ECHO) \
" $(MAKE) ALT_JDK_IMPORT_PATH=/opt/java/jdk$(JDK_VERSION)"
# Universal build support
ifeq ($(OS_VENDOR), Darwin)
ifeq ($(MACOSX_UNIVERSAL),true)
include $(GAMMADIR)/make/$(OSNAME)/makefiles/universal.gmk
endif
endif
# JPRT rule to build this workspace
include $(GAMMADIR)/make/jprt.gmk
@@ -629,6 +677,4 @@ include $(GAMMADIR)/make/jprt.gmk
export_product export_fastdebug export_debug export_optimized \
export_jdk_product export_jdk_fastdebug export_jdk_debug \
create_jdk copy_jdk update_jdk test_jdk \
copy_product_jdk copy_fastdebug_jdk copy_debug_jdk universalize \
universal_product
copy_product_jdk copy_fastdebug_jdk copy_debug_jdk

View File

@@ -188,7 +188,7 @@ VARIANTARCH = $(subst i386,i486,$(ZERO_LIBARCH))
# in the build.sh script:
TARGETS = debug jvmg fastdebug optimized profiled product
ifeq ($(ZERO_BUILD), true)
ifeq ($(findstring true, $(JVM_VARIANT_ZERO) $(JVM_VARIANT_ZEROSHARK)), true)
SUBDIR_DOCS = $(OSNAME)_$(VARIANTARCH)_docs
else
SUBDIR_DOCS = $(OSNAME)_$(BUILDARCH)_docs
@@ -208,7 +208,7 @@ TARGETS_ZERO = $(addsuffix zero,$(TARGETS))
TARGETS_SHARK = $(addsuffix shark,$(TARGETS))
BUILDTREE_MAKE = $(GAMMADIR)/make/$(OSNAME)/makefiles/buildtree.make
BUILDTREE_VARS = GAMMADIR=$(GAMMADIR) OS_FAMILY=$(OSNAME) SRCARCH=$(SRCARCH) BUILDARCH=$(BUILDARCH) LIBARCH=$(LIBARCH)
BUILDTREE_VARS = GAMMADIR=$(GAMMADIR) OS_FAMILY=$(OSNAME) SRCARCH=$(SRCARCH) BUILDARCH=$(BUILDARCH) LIBARCH=$(LIBARCH) LIBRARY_SUFFIX=$(LIBRARY_SUFFIX)
BUILDTREE_VARS += HOTSPOT_RELEASE_VERSION=$(HOTSPOT_RELEASE_VERSION) HOTSPOT_BUILD_VERSION=$(HOTSPOT_BUILD_VERSION) JRE_RELEASE_VERSION=$(JRE_RELEASE_VERSION)
BUILDTREE = $(MAKE) -f $(BUILDTREE_MAKE) $(BUILDTREE_VARS)

View File

@@ -61,10 +61,10 @@ Src_Dirs_I += $(GAMMADIR)/src/share/vm/adlc $(GENERATED)
INCLUDES += $(Src_Dirs_I:%=-I%)
# set flags for adlc compilation
CPPFLAGS = $(SYSDEFS) $(INCLUDES)
CXXFLAGS = $(SYSDEFS) $(INCLUDES)
# Force assertions on.
CPPFLAGS += -DASSERT
CXXFLAGS += -DASSERT
# CFLAGS_WARN holds compiler options to suppress/enable warnings.
# Compiler warnings are treated as errors
@@ -111,7 +111,7 @@ all: $(EXEC)
$(EXEC) : $(OBJECTS)
@echo Making adlc
$(QUIETLY) $(HOST.LINK_NOPROF.CC) -o $(EXEC) $(OBJECTS)
$(QUIETLY) $(HOST.LINK_NOPROF.CXX) -o $(EXEC) $(OBJECTS)
# Random dependencies:
$(OBJECTS): opcodes.hpp classes.hpp adlc.hpp adlcVMDeps.hpp adlparse.hpp archDesc.hpp arena.hpp dict2.hpp filebuff.hpp forms.hpp formsopt.hpp formssel.hpp
@@ -213,14 +213,14 @@ PROCESS_AD_FILES = awk '{ \
$(OUTDIR)/%.o: %.cpp
@echo Compiling $<
$(QUIETLY) $(REMOVE_TARGET)
$(QUIETLY) $(HOST.COMPILE.CC) -o $@ $< $(COMPILE_DONE)
$(QUIETLY) $(HOST.COMPILE.CXX) -o $@ $< $(COMPILE_DONE)
# Some object files are given a prefix, to disambiguate
# them from objects of the same name built for the VM.
$(OUTDIR)/adlc-%.o: %.cpp
@echo Compiling $<
$(QUIETLY) $(REMOVE_TARGET)
$(QUIETLY) $(HOST.COMPILE.CC) -o $@ $< $(COMPILE_DONE)
$(QUIETLY) $(HOST.COMPILE.CXX) -o $@ $< $(COMPILE_DONE)
# #########################################################################

View File

@@ -58,6 +58,7 @@
# needs to be set here since this Makefile doesn't include defs.make
OS_VENDOR:=$(shell uname -s)
-include $(SPEC)
include $(GAMMADIR)/make/scm.make
include $(GAMMADIR)/make/altsrc.make
@@ -68,7 +69,7 @@ QUIETLY$(MAKE_VERBOSE) = @
# For now, until the compiler is less wobbly:
TESTFLAGS = -Xbatch -showversion
ifeq ($(ZERO_BUILD), true)
ifeq ($(findstring true, $(JVM_VARIANT_ZERO) $(JVM_VARIANT_ZEROSHARK)), true)
PLATFORM_FILE = $(shell dirname $(shell dirname $(shell pwd)))/platform_zero
else
ifdef USE_SUNCC
@@ -162,20 +163,6 @@ ifndef HOTSPOT_VM_DISTRO
endif
endif
ifeq ($(OS_VENDOR), Darwin)
# MACOSX FIXME: we should be able to run test_gamma (see MACOSX_PORT-214)
ifeq ($(ALWAYS_PASS_TEST_GAMMA),)
# ALWAYS_PASS_TEST_GAMMA wasn't set so we default to true on MacOS X
# until MACOSX_PORT-214 is fixed
ALWAYS_PASS_TEST_GAMMA=true
endif
endif
ifeq ($(ALWAYS_PASS_TEST_GAMMA), true)
TEST_GAMMA_STATUS= echo 'exit 0';
else
TEST_GAMMA_STATUS=
endif
BUILDTREE_VARS += HOTSPOT_RELEASE_VERSION=$(HS_BUILD_VER) HOTSPOT_BUILD_VERSION= JRE_RELEASE_VERSION=$(JRE_RELEASE_VERSION)
BUILDTREE = \
@@ -261,6 +248,8 @@ flags.make: $(BUILDTREE_MAKE) ../shared_dirs.lst
echo "HOTSPOT_EXTRA_SYSDEFS\$$(HOTSPOT_EXTRA_SYSDEFS) = $(HOTSPOT_EXTRA_SYSDEFS)" && \
echo "SYSDEFS += \$$(HOTSPOT_EXTRA_SYSDEFS)"; \
echo; \
[ -n "$(SPEC)" ] && \
echo "include $(SPEC)"; \
echo "include \$$(GAMMADIR)/make/$(OS_FAMILY)/makefiles/$(VARIANT).make"; \
echo "include \$$(GAMMADIR)/make/$(OS_FAMILY)/makefiles/$(COMPILER).make"; \
) > $@
@@ -353,12 +342,10 @@ env.sh: $(BUILDTREE_MAKE)
$(BUILDTREE_COMMENT); \
[ -n "$$JAVA_HOME" ] && { echo ": \$${JAVA_HOME:=$${JAVA_HOME}}"; }; \
{ \
echo "LD_LIBRARY_PATH=.:$${LD_LIBRARY_PATH:+$$LD_LIBRARY_PATH:}\$${JAVA_HOME}/jre/lib/${LIBARCH}/native_threads:\$${JAVA_HOME}/jre/lib/${LIBARCH}:${GCC_LIB}"; \
echo "DYLD_LIBRARY_PATH=.:$${DYLD_LIBRARY_PATH:+$$DYLD_LIBRARY_PATH:}\$${JAVA_HOME}/jre/lib/${LIBARCH}/native_threads:\$${JAVA_HOME}/jre/lib/${LIBARCH}:${GCC_LIB}"; \
echo "CLASSPATH=$${CLASSPATH:+$$CLASSPATH:}.:\$${JAVA_HOME}/jre/lib/rt.jar:\$${JAVA_HOME}/jre/lib/i18n.jar"; \
} | sed s:$${JAVA_HOME:--------}:\$${JAVA_HOME}:g; \
echo "HOTSPOT_BUILD_USER=\"$${LOGNAME:-$$USER} in `basename $(GAMMADIR)`\""; \
echo "export JAVA_HOME LD_LIBRARY_PATH DYLD_LIBRARY_PATH CLASSPATH HOTSPOT_BUILD_USER"; \
echo "export JAVA_HOME CLASSPATH HOTSPOT_BUILD_USER"; \
) > $@
env.csh: env.sh
@@ -412,7 +399,7 @@ JAVA_FLAG/32 = -d32
JAVA_FLAG/64 = -d64
WRONG_DATA_MODE_MSG = \
echo "JAVA_HOME must point to $(DATA_MODE)bit JDK."
echo "JAVA_HOME must point to a $(DATA_MODE)-bit OpenJDK."
CROSS_COMPILING_MSG = \
echo "Cross compiling for ARCH $(CROSS_COMPILE_ARCH), skipping gamma run."
@@ -420,20 +407,78 @@ CROSS_COMPILING_MSG = \
test_gamma: $(BUILDTREE_MAKE) $(GAMMADIR)/make/test/Queens.java
@echo Creating $@ ...
$(QUIETLY) ( \
echo '#!/bin/sh'; \
echo "#!/bin/sh"; \
echo ""; \
$(BUILDTREE_COMMENT); \
echo '. ./env.sh'; \
echo "if [ \"$(CROSS_COMPILE_ARCH)\" != \"\" ]; then { $(CROSS_COMPILING_MSG); exit 0; }; fi"; \
echo "if [ -z \$$JAVA_HOME ]; then { $(NO_JAVA_HOME_MSG); exit 0; }; fi"; \
echo "if ! \$${JAVA_HOME}/bin/java $(JAVA_FLAG) -fullversion 2>&1 > /dev/null"; \
echo "then"; \
echo " $(WRONG_DATA_MODE_MSG); exit 0;"; \
echo ""; \
echo "# Include environment settings for gamma run"; \
echo ""; \
echo ". ./env.sh"; \
echo ""; \
echo "# Do not run gamma test for cross compiles"; \
echo ""; \
echo "if [ -n \"$(CROSS_COMPILE_ARCH)\" ]; then "; \
echo " $(CROSS_COMPILING_MSG)"; \
echo " exit 0"; \
echo "fi"; \
echo ""; \
echo "# Make sure JAVA_HOME is set as it is required for gamma"; \
echo ""; \
echo "if [ -z \"\$${JAVA_HOME}\" ]; then "; \
echo " $(NO_JAVA_HOME_MSG)"; \
echo " exit 0"; \
echo "fi"; \
echo ""; \
echo "# Check JAVA_HOME version to be used for the test"; \
echo ""; \
echo "\$${JAVA_HOME}/bin/java $(JAVA_FLAG) -fullversion > /dev/null 2>&1"; \
echo "if [ \$$? -ne 0 ]; then "; \
echo " $(WRONG_DATA_MODE_MSG)"; \
echo " exit 0"; \
echo "fi"; \
echo ""; \
echo "# Use gamma_g if it exists"; \
echo ""; \
echo "GAMMA_PROG=gamma"; \
echo "if [ -f gamma_g ]; then "; \
echo " GAMMA_PROG=gamma_g"; \
echo "fi"; \
echo ""; \
echo "if [ \"$(OS_VENDOR)\" = \"Darwin\" ]; then "; \
echo " # Ensure architecture for gamma and JAVA_HOME is the same."; \
echo " # NOTE: gamma assumes the OpenJDK directory layout."; \
echo ""; \
echo " GAMMA_ARCH=\"\`file \$${GAMMA_PROG} | awk '{print \$$NF}'\`\""; \
echo " JVM_LIB=\"\$${JAVA_HOME}/jre/lib/libjava.$(LIBRARY_SUFFIX)\""; \
echo " if [ ! -f \$${JVM_LIB} ]; then"; \
echo " JVM_LIB=\"\$${JAVA_HOME}/jre/lib/$${LIBARCH}/libjava.$(LIBRARY_SUFFIX)\""; \
echo " fi"; \
echo " if [ ! -f \$${JVM_LIB} ] || [ -z \"\`file \$${JVM_LIB} | grep \$${GAMMA_ARCH}\`\" ]; then "; \
echo " $(WRONG_DATA_MODE_MSG)"; \
echo " exit 0"; \
echo " fi"; \
echo "fi"; \
echo ""; \
echo "# Compile Queens program for test"; \
echo ""; \
echo "rm -f Queens.class"; \
echo "\$${JAVA_HOME}/bin/javac -d . $(GAMMADIR)/make/test/Queens.java"; \
echo '[ -f gamma_g ] && { gamma=gamma_g; }'; \
echo './$${gamma:-gamma} $(TESTFLAGS) Queens < /dev/null'; \
$(TEST_GAMMA_STATUS) \
echo ""; \
echo "# Set library path solely for gamma launcher test run"; \
echo ""; \
echo "LD_LIBRARY_PATH=.:$${LD_LIBRARY_PATH:+$$LD_LIBRARY_PATH:}\$${JAVA_HOME}/jre/lib/${LIBARCH}/native_threads:\$${JAVA_HOME}/jre/lib/${LIBARCH}:${GCC_LIB}"; \
echo "export LD_LIBRARY_PATH"; \
echo "unset LD_LIBRARY_PATH_32"; \
echo "unset LD_LIBRARY_PATH_64"; \
echo ""; \
echo "if [ \"$(OS_VENDOR)\" = \"Darwin\" ]; then "; \
echo " DYLD_LIBRARY_PATH=.:$${DYLD_LIBRARY_PATH:+$$DYLD_LIBRARY_PATH:}\$${JAVA_HOME}/jre/lib/native_threads:\$${JAVA_HOME}/jre/lib:$${DYLD_LIBRARY_PATH:+$$DYLD_LIBRARY_PATH:}\$${JAVA_HOME}/jre/lib/${LIBARCH}/native_threads:\$${JAVA_HOME}/jre/lib/${LIBARCH}:${GCC_LIB}"; \
echo " export DYLD_LIBRARY_PATH"; \
echo "fi"; \
echo ""; \
echo "# Use the gamma launcher and JAVA_HOME to run the test"; \
echo ""; \
echo "./\$${GAMMA_PROG} $(TESTFLAGS) Queens < /dev/null"; \
) > $@
$(QUIETLY) chmod +x $@

View File

@@ -1,5 +1,5 @@
#
# Copyright (c) 2006, 2010, Oracle and/or its affiliates. All rights reserved.
# Copyright (c) 2006, 2012, Oracle and/or its affiliates. All rights reserved.
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
#
# This code is free software; you can redistribute it and/or modify it
@@ -38,7 +38,7 @@ else
endif
# zero
ifeq ($(ZERO_BUILD), true)
ifeq ($(findstring true, $(JVM_VARIANT_ZERO) $(JVM_VARIANT_ZEROSHARK)), true)
ifeq ($(ARCH_DATA_MODEL), 64)
MAKE_ARGS += LP64=1
endif
@@ -124,6 +124,18 @@ ifeq ($(ARCH), ppc)
HS_ARCH = ppc
endif
# On 32 bit bsd we build server and client, on 64 bit just server.
ifeq ($(JVM_VARIANTS),)
ifeq ($(ARCH_DATA_MODEL), 32)
JVM_VARIANTS:=client,server
JVM_VARIANT_CLIENT:=true
JVM_VARIANT_SERVER:=true
else
JVM_VARIANTS:=server
JVM_VARIANT_SERVER:=true
endif
endif
JDK_INCLUDE_SUBDIR=bsd
# Library suffix
@@ -142,18 +154,18 @@ EXPORT_LIST += $(EXPORT_DOCS_DIR)/platform/jvmti/jvmti.html
# client and server subdirectories have symbolic links to ../libjsig.so
EXPORT_LIST += $(EXPORT_JRE_LIB_ARCH_DIR)/libjsig.$(LIBRARY_SUFFIX)
EXPORT_SERVER_DIR = $(EXPORT_JRE_LIB_ARCH_DIR)/server
EXPORT_CLIENT_DIR = $(EXPORT_JRE_LIB_ARCH_DIR)/client
ifndef BUILD_CLIENT_ONLY
EXPORT_LIST += $(EXPORT_SERVER_DIR)/Xusage.txt
EXPORT_LIST += $(EXPORT_SERVER_DIR)/libjvm.$(LIBRARY_SUFFIX)
EXPORT_LIST += $(EXPORT_JRE_LIB_DIR)/wb.jar
ifeq ($(findstring true, $(JVM_VARIANT_SERVER) $(JVM_VARIANT_ZERO) $(JVM_VARIANT_ZEROSHARK)), true)
EXPORT_LIST += $(EXPORT_SERVER_DIR)/Xusage.txt
EXPORT_LIST += $(EXPORT_SERVER_DIR)/libjvm.$(LIBRARY_SUFFIX)
endif
ifneq ($(ZERO_BUILD), true)
ifeq ($(ARCH_DATA_MODEL), 32)
EXPORT_CLIENT_DIR = $(EXPORT_JRE_LIB_ARCH_DIR)/client
EXPORT_LIST += $(EXPORT_CLIENT_DIR)/Xusage.txt
EXPORT_LIST += $(EXPORT_CLIENT_DIR)/libjvm.$(LIBRARY_SUFFIX)
endif
ifeq ($(JVM_VARIANT_CLIENT),true)
EXPORT_LIST += $(EXPORT_CLIENT_DIR)/Xusage.txt
EXPORT_LIST += $(EXPORT_CLIENT_DIR)/libjvm.$(LIBRARY_SUFFIX)
endif
# Serviceability Binaries
@@ -171,10 +183,39 @@ ADD_SA_BINARIES/zero =
EXPORT_LIST += $(ADD_SA_BINARIES/$(HS_ARCH))
UNIVERSAL_LIPO_LIST += $(EXPORT_JRE_LIB_DIR)/libjsig.$(LIBRARY_SUFFIX)
UNIVERSAL_LIPO_LIST += $(EXPORT_JRE_LIB_DIR)/libsaproc.$(LIBRARY_SUFFIX)
UNIVERSAL_LIPO_LIST += $(EXPORT_JRE_LIB_DIR)/server/libjvm.$(LIBRARY_SUFFIX)
# Universal build settings
ifeq ($(OS_VENDOR), Darwin)
# Build universal binaries by default on Mac OS X
MACOSX_UNIVERSAL = true
ifneq ($(ALT_MACOSX_UNIVERSAL),)
MACOSX_UNIVERSAL = $(ALT_MACOSX_UNIVERSAL)
endif
MAKE_ARGS += MACOSX_UNIVERSAL=$(MACOSX_UNIVERSAL)
UNIVERSAL_COPY_LIST += $(EXPORT_JRE_LIB_DIR)/server/Xusage.txt
UNIVERSAL_COPY_LIST += $(EXPORT_JRE_LIB_DIR)/client/Xusage.txt
UNIVERSAL_COPY_LIST += $(EXPORT_JRE_LIB_DIR)/client/libjvm.$(LIBRARY_SUFFIX)
# Universal settings
ifeq ($(MACOSX_UNIVERSAL), true)
# Set universal export path but avoid using ARCH or PLATFORM subdirs
EXPORT_PATH=$(OUTPUTDIR)/export-universal$(EXPORT_SUBDIR)
ifneq ($(ALT_EXPORT_PATH),)
EXPORT_PATH=$(ALT_EXPORT_PATH)
endif
# Set universal image dir
JDK_IMAGE_DIR=$(OUTPUTDIR)/jdk-universal$(EXPORT_SUBDIR)
ifneq ($(ALT_JDK_IMAGE_DIR),)
JDK_IMAGE_DIR=$(ALT_JDK_IMAGE_DIR)
endif
# Binaries to 'universalize' if built
UNIVERSAL_LIPO_LIST += $(EXPORT_JRE_LIB_DIR)/libjsig.$(LIBRARY_SUFFIX)
UNIVERSAL_LIPO_LIST += $(EXPORT_JRE_LIB_DIR)/libsaproc.$(LIBRARY_SUFFIX)
UNIVERSAL_LIPO_LIST += $(EXPORT_JRE_LIB_DIR)/server/libjvm.$(LIBRARY_SUFFIX)
UNIVERSAL_LIPO_LIST += $(EXPORT_JRE_LIB_DIR)/client/libjvm.$(LIBRARY_SUFFIX)
# Files to simply copy in place
UNIVERSAL_COPY_LIST += $(EXPORT_JRE_LIB_DIR)/server/Xusage.txt
UNIVERSAL_COPY_LIST += $(EXPORT_JRE_LIB_DIR)/client/Xusage.txt
endif
endif

View File

@@ -105,11 +105,11 @@ LFLAGS_GENOFFS += -L.
lib$(GENOFFS).dylib: $(DTRACE_SRCDIR)/$(GENOFFS).cpp $(DTRACE_SRCDIR)/$(GENOFFS).h \
$(LIBJVM.o)
$(QUIETLY) $(CCC) $(CPPFLAGS) $(GENOFFS_CFLAGS) $(SHARED_FLAG) $(PICFLAG) \
$(QUIETLY) $(CXX) $(CXXFLAGS) $(GENOFFS_CFLAGS) $(SHARED_FLAG) $(PICFLAG) \
$(LFLAGS_GENOFFS) -o $@ $(DTRACE_SRCDIR)/$(GENOFFS).cpp -ljvm
$(GENOFFS): $(DTRACE_SRCDIR)/$(GENOFFS)Main.c lib$(GENOFFS).dylib
$(QUIETLY) $(LINK.CC) -o $@ $(DTRACE_SRCDIR)/$(GENOFFS)Main.c \
$(QUIETLY) $(LINK.CXX) -o $@ $(DTRACE_SRCDIR)/$(GENOFFS)Main.c \
./lib$(GENOFFS).dylib
# $@.tmp is created first to avoid an empty $(JVMOFFS).h if an error occurs.
@@ -135,7 +135,7 @@ $(JVMOFFS).cpp: $(GENOFFS) $(JVMOFFS).h $(JVMOFFS)Index.h
fi
$(JVMOFFS.o): $(JVMOFFS).h $(JVMOFFS).cpp
$(QUIETLY) $(CCC) -c -I. -o $@ $(ARCHFLAG) -D$(TYPE) $(JVMOFFS).cpp
$(QUIETLY) $(CXX) -c -I. -o $@ $(ARCHFLAG) -D$(TYPE) $(JVMOFFS).cpp
$(LIBJVM_DB): $(DTRACE_SRCDIR)/$(JVM_DB).c $(JVMOFFS.o) $(XLIBJVM_DB) $(LIBJVM_DB_MAPFILE)
@echo Making $@

View File

@@ -25,57 +25,59 @@
OS_VENDOR = $(shell uname -s)
#------------------------------------------------------------------------
# CC, CPP & AS
# CC, CXX & AS
# When cross-compiling the ALT_COMPILER_PATH points
# to the cross-compilation toolset
ifdef CROSS_COMPILE_ARCH
CPP = $(ALT_COMPILER_PATH)/g++
CC = $(ALT_COMPILER_PATH)/gcc
HOSTCPP = g++
HOSTCC = gcc
else ifneq ($(OS_VENDOR), Darwin)
CXX = g++
CPP = $(CXX)
CC = gcc
HOSTCPP = $(CPP)
HOSTCC = $(CC)
# If a SPEC is not set already, then use these defaults.
ifeq ($(SPEC),)
# When cross-compiling the ALT_COMPILER_PATH points
# to the cross-compilation toolset
ifdef CROSS_COMPILE_ARCH
CXX = $(ALT_COMPILER_PATH)/g++
CC = $(ALT_COMPILER_PATH)/gcc
HOSTCXX = g++
HOSTCC = gcc
else ifneq ($(OS_VENDOR), Darwin)
CXX = g++
CC = gcc
HOSTCXX = $(CXX)
HOSTCC = $(CC)
endif
# i486 hotspot requires -mstackrealign on Darwin.
# llvm-gcc supports this in Xcode 3.2.6 and 4.0.
# gcc-4.0 supports this on earlier versions.
# Prefer llvm-gcc where available.
ifeq ($(OS_VENDOR), Darwin)
ifeq ($(origin CXX), default)
CXX = llvm-g++
endif
ifeq ($(origin CC), default)
CC = llvm-gcc
endif
ifeq ($(ARCH), i486)
LLVM_SUPPORTS_STACKREALIGN := $(shell \
[ "0"`llvm-gcc -v 2>&1 | grep LLVM | sed -E "s/.*LLVM build ([0-9]+).*/\1/"` -gt "2333" ] \
&& echo true || echo false)
ifeq ($(LLVM_SUPPORTS_STACKREALIGN), true)
CXX32 ?= llvm-g++
CC32 ?= llvm-gcc
else
CXX32 ?= g++-4.0
CC32 ?= gcc-4.0
endif
CXX = $(CXX32)
CC = $(CC32)
endif
HOSTCXX = $(CXX)
HOSTCC = $(CC)
endif
AS = $(CC) -c -x assembler-with-cpp
endif
# i486 hotspot requires -mstackrealign on Darwin.
# llvm-gcc supports this in Xcode 3.2.6 and 4.0.
# gcc-4.0 supports this on earlier versions.
# Prefer llvm-gcc where available.
ifeq ($(OS_VENDOR), Darwin)
ifeq ($(origin CXX), default)
CXX = llvm-g++
endif
ifeq ($(origin CC), default)
CC = llvm-gcc
endif
CPP = $(CXX)
ifeq ($(ARCH), i486)
LLVM_SUPPORTS_STACKREALIGN := $(shell \
[ "0"`llvm-gcc -v 2>&1 | grep LLVM | sed -E "s/.*LLVM build ([0-9]+).*/\1/"` -gt "2333" ] \
&& echo true || echo false)
ifeq ($(LLVM_SUPPORTS_STACKREALIGN), true)
CXX32 ?= llvm-g++
CC32 ?= llvm-gcc
else
CXX32 ?= g++-4.0
CC32 ?= gcc-4.0
endif
CPP = $(CXX32)
CC = $(CC32)
endif
HOSTCPP = $(CPP)
HOSTCC = $(CC)
endif
AS = $(CC) -c -x assembler-with-cpp
# -dumpversion in gcc-2.91 shows "egcs-2.91.66". In later version, it only
# prints the numbers (e.g. "2.95", "3.2.1")
@@ -103,11 +105,12 @@ VM_PICFLAG/LIBJVM = $(PICFLAG)
VM_PICFLAG/AOUT =
VM_PICFLAG = $(VM_PICFLAG/$(LINK_INTO))
ifeq ($(ZERO_BUILD), true)
CFLAGS += $(LIBFFI_CFLAGS)
ifeq ($(JVM_VARIANT_ZERO), true)
CFLAGS += $(LIBFFI_CFLAGS)
endif
ifeq ($(SHARK_BUILD), true)
CFLAGS += $(LLVM_CFLAGS)
ifeq ($(JVM_VARIANT_ZEROSHARK), true)
CFLAGS += $(LIBFFI_CFLAGS)
CFLAGS += $(LLVM_CFLAGS)
endif
CFLAGS += $(VM_PICFLAG)
CFLAGS += -fno-rtti

View File

@@ -50,14 +50,31 @@ ifeq ($(LINK_INTO),AOUT)
LIBS_LAUNCHER += $(STATIC_STDCXX) $(LIBS)
else
LAUNCHER.o = launcher.o
LFLAGS_LAUNCHER += -L`pwd`
LFLAGS_LAUNCHER += -L`pwd`
# The gamma launcher runs the JDK from $JAVA_HOME, overriding the JVM with a
# freshly built JVM at ./libjvm.{so|dylib}. This is accomplished by setting
# the library searchpath using ({DY}LD_LIBRARY_PATH) to find the local JVM
# first. Gamma dlopen()s libjava from $JAVA_HOME/jre/lib{/$arch}, which is
# statically linked with CoreFoundation framework libs. Unfortunately, gamma's
# unique searchpath results in some unresolved symbols in the framework
# libraries, because JDK libraries are inadvertently discovered first on the
# searchpath, e.g. libjpeg. On Mac OS X, filenames are case *insensitive*.
# So, the actual filename collision is libjpeg.dylib and libJPEG.dylib.
# To resolve this, gamma needs to also statically link with the CoreFoundation
# framework libraries.
ifeq ($(OS_VENDOR),Darwin)
LFLAGS_LAUNCHER += -framework CoreFoundation
endif
LIBS_LAUNCHER += -l$(JVM) $(LIBS)
endif
LINK_LAUNCHER = $(LINK.c)
LINK_LAUNCHER = $(LINK.CC)
LINK_LAUNCHER/PRE_HOOK = $(LINK_LIB.CC/PRE_HOOK)
LINK_LAUNCHER/POST_HOOK = $(LINK_LIB.CC/POST_HOOK)
LINK_LAUNCHER/PRE_HOOK = $(LINK_LIB.CXX/PRE_HOOK)
LINK_LAUNCHER/POST_HOOK = $(LINK_LIB.CXX/POST_HOOK)
LAUNCHER_OUT = launcher
@@ -73,11 +90,11 @@ DEPFILES := $(patsubst %.o,%.d,$(OBJS))
$(LAUNCHER_OUT)/%.o: $(LAUNCHERDIR_SHARE)/%.c
$(QUIETLY) [ -d $(LAUNCHER_OUT) ] || { mkdir -p $(LAUNCHER_OUT); }
$(QUIETLY) $(CC) -g -o $@ -c $< -MMD $(LAUNCHERFLAGS) $(CPPFLAGS)
$(QUIETLY) $(CC) -g -o $@ -c $< -MMD $(LAUNCHERFLAGS) $(CXXFLAGS)
$(LAUNCHER_OUT)/%.o: $(LAUNCHERDIR)/%.c
$(QUIETLY) [ -d $(LAUNCHER_OUT) ] || { mkdir -p $(LAUNCHER_OUT); }
$(QUIETLY) $(CC) -g -o $@ -c $< -MMD $(LAUNCHERFLAGS) $(CPPFLAGS)
$(QUIETLY) $(CC) -g -o $@ -c $< -MMD $(LAUNCHERFLAGS) $(CXXFLAGS)
$(LAUNCHER): $(OBJS) $(LIBJVM) $(LAUNCHER_MAPFILE)
$(QUIETLY) echo Linking launcher...

View File

@@ -55,4 +55,4 @@ STRIP_LIBJVM = $(STRIP) -g $@ || exit 1;
STRIP_AOUT = $(STRIP) -x $@ || exit 1;
# Don't strip in VM build; JDK build will strip libraries later
# LINK_LIB.CC/POST_HOOK += $(STRIP_$(LINK_INTO))
# LINK_LIB.CXX/POST_HOOK += $(STRIP_$(LINK_INTO))

View File

@@ -27,52 +27,39 @@
# Tell make that .cpp is important
.SUFFIXES: .cpp $(SUFFIXES)
# For now. Other makefiles use CPP as the c++ compiler, but that should really
# name the preprocessor.
ifeq ($(CCC),)
CCC = $(CPP)
endif
DEMANGLER = c++filt
DEMANGLE = $(DEMANGLER) < $@ > .$@ && mv -f .$@ $@
# $(CC) is the c compiler (cc/gcc), $(CCC) is the c++ compiler (CC/g++).
C_COMPILE = $(CC) $(CPPFLAGS) $(CFLAGS)
CC_COMPILE = $(CCC) $(CPPFLAGS) $(CFLAGS)
# $(CC) is the c compiler (cc/gcc), $(CXX) is the c++ compiler (CC/g++).
CC_COMPILE = $(CC) $(CXXFLAGS) $(CFLAGS)
CXX_COMPILE = $(CXX) $(CXXFLAGS) $(CFLAGS)
AS.S = $(AS) $(ASFLAGS)
COMPILE.c = $(C_COMPILE) -c
GENASM.c = $(C_COMPILE) -S
LINK.c = $(CC) $(LFLAGS) $(AOUT_FLAGS) $(PROF_AOUT_FLAGS)
LINK_LIB.c = $(CC) $(LFLAGS) $(SHARED_FLAG)
PREPROCESS.c = $(C_COMPILE) -E
COMPILE.CC = $(CC_COMPILE) -c
GENASM.CC = $(CC_COMPILE) -S
LINK.CC = $(CC) $(LFLAGS) $(AOUT_FLAGS) $(PROF_AOUT_FLAGS)
LINK_LIB.CC = $(CC) $(LFLAGS) $(SHARED_FLAG)
PREPROCESS.CC = $(CC_COMPILE) -E
COMPILE.CC = $(CC_COMPILE) -c
GENASM.CC = $(CC_COMPILE) -S
LINK.CC = $(CCC) $(LFLAGS) $(AOUT_FLAGS) $(PROF_AOUT_FLAGS)
LINK_NOPROF.CC = $(CCC) $(LFLAGS) $(AOUT_FLAGS)
LINK_LIB.CC = $(CCC) $(LFLAGS) $(SHARED_FLAG)
PREPROCESS.CC = $(CC_COMPILE) -E
COMPILE.CXX = $(CXX_COMPILE) -c
GENASM.CXX = $(CXX_COMPILE) -S
LINK.CXX = $(CXX) $(LFLAGS) $(AOUT_FLAGS) $(PROF_AOUT_FLAGS)
LINK_NOPROF.CXX = $(CXX) $(LFLAGS) $(AOUT_FLAGS)
LINK_LIB.CXX = $(CXX) $(LFLAGS) $(SHARED_FLAG)
PREPROCESS.CXX = $(CXX_COMPILE) -E
# cross compiling the jvm with c2 requires host compilers to build
# adlc tool
HOST.CC_COMPILE = $(HOSTCPP) $(CPPFLAGS) $(CFLAGS)
HOST.COMPILE.CC = $(HOST.CC_COMPILE) -c
HOST.LINK_NOPROF.CC = $(HOSTCPP) $(LFLAGS) $(AOUT_FLAGS)
HOST.CXX_COMPILE = $(HOSTCXX) $(CXXFLAGS) $(CFLAGS)
HOST.COMPILE.CXX = $(HOST.CXX_COMPILE) -c
HOST.LINK_NOPROF.CXX = $(HOSTCXX) $(LFLAGS) $(AOUT_FLAGS)
# Effect of REMOVE_TARGET is to delete out-of-date files during "gnumake -k".
REMOVE_TARGET = rm -f $@
# Synonyms.
COMPILE.cpp = $(COMPILE.CC)
GENASM.cpp = $(GENASM.CC)
LINK.cpp = $(LINK.CC)
LINK_LIB.cpp = $(LINK_LIB.CC)
PREPROCESS.cpp = $(PREPROCESS.CC)
# Note use of ALT_BOOTDIR to explicitly specify location of java and
# javac; this is the same environment variable used in the J2SE build
# process for overriding the default spec, which is BOOTDIR.
@@ -161,14 +148,14 @@ ifdef LP64
%.o: %.cpp
@echo Compiling $<
$(QUIETLY) $(REMOVE_TARGET)
$(QUIETLY) $(COMPILE.CC) $(DEPFLAGS) -o $@ $< $(COMPILE_DONE)
$(QUIETLY) $(COMPILE.CXX) $(DEPFLAGS) -o $@ $< $(COMPILE_DONE)
else
%.o: %.cpp
@echo Compiling $<
$(QUIETLY) $(REMOVE_TARGET)
$(QUIETLY) $(if $(findstring $@, $(NONPIC_OBJ_FILES)), \
$(subst $(VM_PICFLAG), ,$(COMPILE.CC)) $(DEPFLAGS) -o $@ $< $(COMPILE_DONE), \
$(COMPILE.CC) $(DEPFLAGS) -o $@ $< $(COMPILE_DONE))
$(subst $(VM_PICFLAG), ,$(COMPILE.CXX)) $(DEPFLAGS) -o $@ $< $(COMPILE_DONE), \
$(COMPILE.CXX) $(DEPFLAGS) -o $@ $< $(COMPILE_DONE))
endif
%.o: %.s
@@ -178,13 +165,13 @@ endif
%.s: %.cpp
@echo Generating assembly for $<
$(QUIETLY) $(GENASM.CC) -o $@ $<
$(QUIETLY) $(GENASM.CXX) -o $@ $<
$(QUIETLY) $(DEMANGLE) $(COMPILE_DONE)
# Intermediate files (for debugging macros)
%.i: %.cpp
@echo Preprocessing $< to $@
$(QUIETLY) $(PREPROCESS.CC) $< > $@ $(COMPILE_DONE)
$(QUIETLY) $(PREPROCESS.CXX) $< > $@ $(COMPILE_DONE)
# Override gnumake built-in rules which do sccs get operations badly.
# (They put the checked out code in the current directory, not in the

View File

@@ -23,14 +23,17 @@
#
#------------------------------------------------------------------------
# CC, CPP & AS
# CC, CXX & AS
CPP = CC
CC = cc
AS = $(CC) -c
# If a SPEC is not set already, then use these defaults.
ifeq ($(SPEC),)
CXX = CC
CC = cc
AS = $(CC) -c
HOSTCPP = $(CPP)
HOSTCC = $(CC)
HOSTCXX = $(CXX)
HOSTCC = $(CC)
endif
ARCHFLAG = $(ARCHFLAG/$(BUILDARCH))
ARCHFLAG/i486 = -m32

View File

@@ -124,8 +124,8 @@ the_vm: vm_build_preliminaries $(adjust-mflags)
@$(UpdatePCH)
@$(MAKE) -f vm.make $(MFLAGS-adjusted)
install: the_vm
@$(MAKE) -f vm.make install
install gamma: the_vm
@$(MAKE) -f vm.make $@
# next rules support "make foo.[ois]"

View File

@@ -0,0 +1,113 @@
#
# Copyright (c) 2006, 2012, Oracle and/or its affiliates. All rights reserved.
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
#
# This code is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License version 2 only, as
# published by the Free Software Foundation.
#
# This code is distributed in the hope that it will be useful, but WITHOUT
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
# version 2 for more details (a copy is included in the LICENSE file that
# accompanied this code).
#
# You should have received a copy of the GNU General Public License version
# 2 along with this work; if not, write to the Free Software Foundation,
# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
#
# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
# or visit www.oracle.com if you need additional information or have any
# questions.
#
#
# macosx universal builds
universal_product:
$(MAKE) MACOSX_UNIVERSAL=true all_product_universal
universal_fastdebug:
$(MAKE) MACOSX_UNIVERSAL=true all_fastdebug_universal
universal_debug:
$(MAKE) MACOSX_UNIVERSAL=true all_debug_universal
# Universal builds include 1 or more architectures in a single binary
all_product_universal:
# $(QUIETLY) $(MAKE) ARCH_DATA_MODEL=32 $(COMMON_VM_PRODUCT_TARGETS)
$(QUIETLY) $(MAKE) ARCH_DATA_MODEL=64 $(COMMON_VM_PRODUCT_TARGETS)
$(QUIETLY) $(MAKE) EXPORT_SUBDIR= universalize
all_fastdebug_universal:
# $(QUIETLY) $(MAKE) ARCH_DATA_MODEL=32 $(COMMON_VM_FASTDEBUG_TARGETS)
$(QUIETLY) $(MAKE) ARCH_DATA_MODEL=64 $(COMMON_VM_FASTDEBUG_TARGETS)
$(QUIETLY) $(MAKE) EXPORT_SUBDIR=/fastdebug universalize
all_debug_universal:
# $(QUIETLY) $(MAKE) ARCH_DATA_MODEL=32 $(COMMON_VM_DEBUG_TARGETS)
$(QUIETLY) $(MAKE) ARCH_DATA_MODEL=64 $(COMMON_VM_DEBUG_TARGETS)
$(QUIETLY) $(MAKE) EXPORT_SUBDIR=/debug universalize
# Consolidate architecture builds into a single Universal binary
universalize: $(UNIVERSAL_LIPO_LIST) $(UNIVERSAL_COPY_LIST)
$(RM) -r $(EXPORT_PATH)/jre/lib/{i386,amd64}
# Package built libraries in a universal binary
$(UNIVERSAL_LIPO_LIST):
BUILT_LIPO_FILES="`find $(EXPORT_JRE_LIB_DIR)/{i386,amd64}/$(subst $(EXPORT_JRE_LIB_DIR)/,,$@) 2>/dev/null`"; \
if [ -n "$${BUILT_LIPO_FILES}" ]; then \
$(MKDIR) -p $(shell dirname $@); \
lipo -create -output $@ $${BUILT_LIPO_FILES}; \
fi
# Copy built non-universal binaries in place
$(UNIVERSAL_COPY_LIST):
BUILT_COPY_FILES="`find $(EXPORT_JRE_LIB_DIR)/{i386,amd64}/$(subst $(EXPORT_JRE_LIB_DIR)/,,$@) 2>/dev/null`"; \
if [ -n "$${BUILT_COPY_FILES}" ]; then \
for i in $${BUILT_COPY_FILES}; do \
if [ -f $${i} ]; then \
$(MKDIR) -p $(shell dirname $@); \
$(CP) $${i} $@; \
fi; \
done; \
fi
# Replace arch specific binaries with universal binaries
export_universal:
$(RM) -r $(EXPORT_PATH)/jre/lib/{i386,amd64}
$(RM) -r $(JDK_IMAGE_DIR)/jre/lib/{i386,amd64}
$(RM) $(JDK_IMAGE_DIR)/jre/lib/{client,server}/libjsig.$(LIBRARY_SUFFIX)
($(CD) $(EXPORT_PATH) && \
$(TAR) -cf - *) | \
($(CD) $(JDK_IMAGE_DIR) && $(TAR) -xpf -)
# Overlay universal binaries
copy_universal:
$(RM) -r $(JDK_IMAGE_DIR)$(COPY_SUBDIR)/jre/lib/{i386,amd64}
$(RM) $(JDK_IMAGE_DIR)$(COPY_SUBDIR)/jre/lib/{client,server}/libjsig.$(LIBRARY_SUFFIX)
($(CD) $(EXPORT_PATH)$(COPY_SUBDIR) && \
$(TAR) -cf - *) | \
($(CD) $(JDK_IMAGE_DIR)$(COPY_SUBDIR) && $(TAR) -xpf -)
# Additional processing for universal builds
export_product_jdk::
$(MAKE) EXPORT_SUBDIR= export_universal
export_optimized_jdk::
$(MAKE) EXPORT_SUBDIR= export_universal
export_fastdebug_jdk::
$(MAKE) EXPORT_SUBDIR=/fastdebug export_universal
export_debug_jdk::
$(MAKE) EXPORT_SUBDIR=/debug export_universal
copy_product_jdk::
$(MAKE) COPY_SUBDIR= copy_universal
copy_fastdebug_jdk::
$(MAKE) COPY_SUBDIR=/fastdebug copy_universal
copy_debug_jdk::
$(MAKE) COPY_SUBDIR=/debug copy_universal
.PHONY: universal_product universal_fastdebug universal_debug \
all_product_universal all_fastdebug_universal all_debug_universal \
universalize export_universal copy_universal

View File

@@ -1,5 +1,5 @@
#
# Copyright (c) 1999, 2011, 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
@@ -42,7 +42,7 @@ DEP_DIR = $(GENERATED)/dependencies
-include $(DEP_DIR)/*.d
# read machine-specific adjustments (%%% should do this via buildtree.make?)
ifeq ($(ZERO_BUILD), true)
ifeq ($(findstring true, $(JVM_VARIANT_ZERO) $(JVM_VARIANT_ZEROSHARK)), true)
include $(MAKEFILES_DIR)/zeroshark.make
else
include $(MAKEFILES_DIR)/$(BUILDARCH).make
@@ -82,18 +82,26 @@ BUILD_TARGET = -DHOTSPOT_BUILD_TARGET="\"$(TARGET)\""
BUILD_USER = -DHOTSPOT_BUILD_USER="\"$(HOTSPOT_BUILD_USER)\""
VM_DISTRO = -DHOTSPOT_VM_DISTRO="\"$(HOTSPOT_VM_DISTRO)\""
CPPFLAGS = \
CXXFLAGS = \
${SYSDEFS} \
${INCLUDES} \
${BUILD_VERSION} \
${BUILD_TARGET} \
${BUILD_USER} \
${HS_LIB_ARCH} \
${JRE_VERSION} \
${VM_DISTRO}
# This is VERY important! The version define must only be supplied to vm_version.o
# If not, ccache will not re-use the cache at all, since the version string might contain
# a time and date.
vm_version.o: CXXFLAGS += ${JRE_VERSION}
ifdef DEFAULT_LIBPATH
CPPFLAGS += -DDEFAULT_LIBPATH="\"$(DEFAULT_LIBPATH)\""
CXXFLAGS += -DDEFAULT_LIBPATH="\"$(DEFAULT_LIBPATH)\""
endif
ifndef JAVASE_EMBEDDED
CFLAGS += -DINCLUDE_TRACE
endif
# CFLAGS_WARN holds compiler options to suppress/enable warnings.
@@ -147,6 +155,12 @@ SOURCE_PATHS+=$(HS_COMMON_SRC)/os/posix/vm
SOURCE_PATHS+=$(HS_COMMON_SRC)/cpu/$(Platform_arch)/vm
SOURCE_PATHS+=$(HS_COMMON_SRC)/os_cpu/$(Platform_os_arch)/vm
ifndef JAVASE_EMBEDDED
SOURCE_PATHS+=$(shell if [ -d $(HS_ALT_SRC)/share/vm/jfr ]; then \
find $(HS_ALT_SRC)/share/vm/jfr -type d; \
fi)
endif
CORE_PATHS=$(foreach path,$(SOURCE_PATHS),$(call altsrc,$(path)) $(path))
CORE_PATHS+=$(GENERATED)/jvmtifiles
@@ -250,19 +264,19 @@ else
ifeq ($(STATIC_CXX), true)
LFLAGS_VM += $(STATIC_LIBGCC)
LIBS_VM += $(STATIC_STDCXX)
LINK_VM = $(LINK_LIB.c)
else
LINK_VM = $(LINK_LIB.CC)
else
LINK_VM = $(LINK_LIB.CXX)
endif
LIBS_VM += $(LIBS)
endif
ifeq ($(ZERO_BUILD), true)
ifeq ($(JVM_VARIANT_ZERO), true)
LIBS_VM += $(LIBFFI_LIBS)
endif
ifeq ($(SHARK_BUILD), true)
ifeq ($(JVM_VARIANT_ZEROSHARK), true)
LIBS_VM += $(LIBFFI_LIBS) $(LLVM_LIBS)
LFLAGS_VM += $(LLVM_LDFLAGS)
LIBS_VM += $(LLVM_LIBS)
endif
@@ -270,7 +284,7 @@ endif
$(PRECOMPILED_HEADER):
$(QUIETLY) echo Generating precompiled header $@
$(QUIETLY) mkdir -p $(PRECOMPILED_HEADER_DIR)
$(QUIETLY) $(COMPILE.CC) $(DEPFLAGS) -x c++-header $(PRECOMPILED_HEADER_SRC) -o $@ $(COMPILE_DONE)
$(QUIETLY) $(COMPILE.CXX) $(DEPFLAGS) -x c++-header $(PRECOMPILED_HEADER_SRC) -o $@ $(COMPILE_DONE)
# making the library:
@@ -295,10 +309,10 @@ endif
$(LIBJVM): $(LIBJVM.o) $(LIBJVM_MAPFILE) $(LD_SCRIPT)
$(QUIETLY) { \
echo Linking vm...; \
$(LINK_LIB.CC/PRE_HOOK) \
$(LINK_LIB.CXX/PRE_HOOK) \
$(LINK_VM) $(LD_SCRIPT_FLAG) \
$(LFLAGS_VM) -o $@ $(LIBJVM.o) $(LIBS_VM); \
$(LINK_LIB.CC/POST_HOOK) \
$(LINK_LIB.CXX/POST_HOOK) \
rm -f $@.1; ln -s $@ $@.1; \
[ -f $(LIBJVM_G) ] || { ln -s $@ $(LIBJVM_G); ln -s $@.1 $(LIBJVM_G).1; }; \
}
@@ -321,17 +335,20 @@ include $(MAKEFILES_DIR)/jsig.make
# Serviceability agent
include $(MAKEFILES_DIR)/saproc.make
# Whitebox testing API
include $(MAKEFILES_DIR)/wb.make
#----------------------------------------------------------------------
ifeq ($(OS_VENDOR), Darwin)
$(LIBJVM).dSYM: $(LIBJVM)
dsymutil $(LIBJVM)
# no launcher or libjvm_db for macosx
build: $(LIBJVM) $(LIBJSIG) $(BUILDLIBSAPROC) dtraceCheck $(LIBJVM).dSYM
# no libjvm_db for macosx
build: $(LIBJVM) $(LAUNCHER) $(LIBJSIG) $(BUILDLIBSAPROC) dtraceCheck $(LIBJVM).dSYM $(WB_JAR)
echo "Doing vm.make build:"
else
build: $(LIBJVM) $(LAUNCHER) $(LIBJSIG) $(LIBJVM_DB) $(BUILDLIBSAPROC)
build: $(LIBJVM) $(LAUNCHER) $(LIBJSIG) $(LIBJVM_DB) $(BUILDLIBSAPROC) $(WB_JAR)
endif
install: install_jvm install_jsig install_saproc

View File

@@ -0,0 +1,46 @@
#
# 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.
#
#
# Rules to build whitebox testing library, used by vm.make
WB = wb
WBSRCDIR = $(GAMMADIR)/src/share/tools/whitebox
WB_JAR = $(GENERATED)/$(WB).jar
WB_JAVA_SRCS = $(shell find $(WBSRCDIR) -name '*.java')
WB_JAVA_CLASSDIR = $(GENERATED)/wb/classes
WB_JAVA_CLASSES = $(patsubst $(WBSRCDIR)/%,$(WB_JAVA_CLASSDIR)/%, \
$(patsubst %.java,%.class,$(WB_JAVA_SRCS)))
$(WB_JAVA_CLASSDIR)/%.class: $(WBSRCDIR)/%.java $(WB_JAVA_CLASSDIR)
$(REMOTE) $(COMPILE.JAVAC) -sourcepath $(WBSRCDIR) -nowarn -d $(WB_JAVA_CLASSDIR) $<
$(WB_JAR): $(WB_JAVA_CLASSES)
$(QUIETLY) $(REMOTE) $(RUN.JAR) cf $@ -C $(WB_JAVA_CLASSDIR)/ .
$(WB_JAVA_CLASSDIR):
$(QUIETLY) mkdir -p $@

View File

@@ -1,5 +1,5 @@
#
# Copyright (c) 2006, 2011, Oracle and/or its affiliates. All rights reserved.
# Copyright (c) 2006, 2012, Oracle and/or its affiliates. All rights reserved.
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
#
# This code is free software; you can redistribute it and/or modify it
@@ -24,6 +24,11 @@
# The common definitions for hotspot builds.
# Optionally include SPEC file generated by configure.
ifneq ($(SPEC),)
include $(SPEC)
endif
# Default to verbose build logs (show all compile lines):
MAKE_VERBOSE=y
@@ -50,6 +55,27 @@ define prep-target
@$(RM) $@
endef
# Default values for JVM_VARIANT* variables if configure hasn't set
# it already.
ifeq ($(JVM_VARIANTS),)
ifeq ($(ZERO_BUILD), true)
ifeq ($(SHARK_BUILD), true)
JVM_VARIANTS:=zeroshark
JVM_VARIANT_ZEROSHARK:=true
else
JVM_VARIANTS:=zero
JVM_VARIANT_ZERO:=true
endif
else
# A default is needed
ifeq ($(BUILD_CLIENT_ONLY), true)
JVM_VARIANTS:=client
JVM_VARIANT_CLIENT:=true
endif
# Further defaults are platform and arch specific
endif
endif
# Directory paths and user name
# Unless GAMMADIR is set on the command line, search upward from
# the current directory for a parent directory containing "src/share/vm".
@@ -185,6 +211,18 @@ ifneq ($(ALT_BOOTDIR),)
BOOTDIR=$(ALT_BOOTDIR)
endif
# Select name of the export directory and honor ALT overrides
EXPORT_PATH=$(OUTPUTDIR)/export-$(PLATFORM)$(EXPORT_SUBDIR)
ifneq ($(ALT_EXPORT_PATH),)
EXPORT_PATH=$(ALT_EXPORT_PATH)
endif
# Default jdk image if one is created for you with create_jdk
JDK_IMAGE_DIR=$(OUTPUTDIR)/jdk-$(PLATFORM)
ifneq ($(ALT_JDK_IMAGE_DIR),)
JDK_IMAGE_DIR=$(ALT_JDK_IMAGE_DIR)
endif
# The platform dependent defs.make defines platform specific variable such
# as ARCH, EXPORT_LIST etc. We must place the include here after BOOTDIR is defined.
include $(GAMMADIR)/make/$(OSNAME)/makefiles/defs.make
@@ -263,15 +301,6 @@ MAKE_ARGS += JRE_RELEASE_VERSION=$(JRE_RELEASE_VERSION)
# includes this make/defs.make file.
MAKE_ARGS += HOTSPOT_BUILD_VERSION=$(HOTSPOT_BUILD_VERSION)
# Select name of export directory
EXPORT_PATH=$(OUTPUTDIR)/export-$(PLATFORM)$(EXPORT_SUBDIR)
ifneq ($(ALT_EXPORT_PATH),)
EXPORT_PATH=$(ALT_EXPORT_PATH)
endif
# Default jdk image if one is created for you with create_jdk
JDK_IMAGE_DIR=$(OUTPUTDIR)/jdk-$(PLATFORM)
# Various export sub directories
EXPORT_INCLUDE_DIR = $(EXPORT_PATH)/include
EXPORT_DOCS_DIR = $(EXPORT_PATH)/docs
@@ -294,3 +323,7 @@ EXPORT_LIST += $(EXPORT_INCLUDE_DIR)/jvmticmlr.h
EXPORT_LIST += $(EXPORT_INCLUDE_DIR)/jni.h
EXPORT_LIST += $(EXPORT_INCLUDE_DIR)/$(JDK_INCLUDE_SUBDIR)/jni_md.h
EXPORT_LIST += $(EXPORT_INCLUDE_DIR)/jmm.h
ifndef JAVASE_EMBEDDED
EXPORT_LIST += $(EXPORT_INCLUDE_DIR)/jfr.h
endif

View File

@@ -1,5 +1,5 @@
#
# Copyright (c) 2006, 2011, Oracle and/or its affiliates. All rights reserved.
# Copyright (c) 2006, 2012, Oracle and/or its affiliates. All rights reserved.
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
#
# This code is free software; you can redistribute it and/or modify it
@@ -31,11 +31,11 @@
#
# Don't put quotes (fail windows build).
HOTSPOT_VM_COPYRIGHT=Copyright 2011
HOTSPOT_VM_COPYRIGHT=Copyright 2012
HS_MAJOR_VER=23
HS_MAJOR_VER=24
HS_MINOR_VER=0
HS_BUILD_NUMBER=10
HS_BUILD_NUMBER=11
JDK_MAJOR_VER=1
JDK_MINOR_VER=8

View File

@@ -1,5 +1,5 @@
#
# Copyright (c) 2006, 2011, Oracle and/or its affiliates. All rights reserved.
# Copyright (c) 2006, 2012, Oracle and/or its affiliates. All rights reserved.
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
#
# This code is free software; you can redistribute it and/or modify it
@@ -38,7 +38,9 @@ jprt.need.sibling.build=false
# This tells jprt what default release we want to build
jprt.tools.default.release=${jprt.submit.release}
jprt.hotspot.default.release=jdk7
jprt.tools.default.release=${jprt.submit.option.release?${jprt.submit.option.release}:${jprt.hotspot.default.release}}
# Disable syncing the source after builds and tests are done.
@@ -52,154 +54,72 @@ jprt.sync.push=false
# Define the Solaris platforms we want for the various releases
jprt.my.solaris.sparc.jdk8=solaris_sparc_5.10
jprt.my.solaris.sparc.jdk7=solaris_sparc_5.10
jprt.my.solaris.sparc.jdk7b107=solaris_sparc_5.10
jprt.my.solaris.sparc.jdk7temp=solaris_sparc_5.10
jprt.my.solaris.sparc.jdk6=solaris_sparc_5.8
jprt.my.solaris.sparc.jdk6perf=solaris_sparc_5.8
jprt.my.solaris.sparc.jdk6u10=solaris_sparc_5.8
jprt.my.solaris.sparc.jdk6u14=solaris_sparc_5.8
jprt.my.solaris.sparc.jdk6u18=solaris_sparc_5.8
jprt.my.solaris.sparc.jdk6u20=solaris_sparc_5.8
jprt.my.solaris.sparc.ejdk7=${jprt.my.solaris.sparc.jdk7}
jprt.my.solaris.sparc.ejdk6=${jprt.my.solaris.sparc.jdk6}
jprt.my.solaris.sparc.jdk7u4=${jprt.my.solaris.sparc.jdk7}
jprt.my.solaris.sparc=${jprt.my.solaris.sparc.${jprt.tools.default.release}}
jprt.my.solaris.sparcv9.jdk8=solaris_sparcv9_5.10
jprt.my.solaris.sparcv9.jdk7=solaris_sparcv9_5.10
jprt.my.solaris.sparcv9.jdk7b107=solaris_sparcv9_5.10
jprt.my.solaris.sparcv9.jdk7temp=solaris_sparcv9_5.10
jprt.my.solaris.sparcv9.jdk6=solaris_sparcv9_5.8
jprt.my.solaris.sparcv9.jdk6perf=solaris_sparcv9_5.8
jprt.my.solaris.sparcv9.jdk6u10=solaris_sparcv9_5.8
jprt.my.solaris.sparcv9.jdk6u14=solaris_sparcv9_5.8
jprt.my.solaris.sparcv9.jdk6u18=solaris_sparcv9_5.8
jprt.my.solaris.sparcv9.jdk6u20=solaris_sparcv9_5.8
jprt.my.solaris.sparcv9.ejdk7=${jprt.my.solaris.sparcv9.jdk7}
jprt.my.solaris.sparcv9.ejdk6=${jprt.my.solaris.sparcv9.jdk6}
jprt.my.solaris.sparcv9.jdk7u4=${jprt.my.solaris.sparcv9.jdk7}
jprt.my.solaris.sparcv9=${jprt.my.solaris.sparcv9.${jprt.tools.default.release}}
jprt.my.solaris.i586.jdk8=solaris_i586_5.10
jprt.my.solaris.i586.jdk7=solaris_i586_5.10
jprt.my.solaris.i586.jdk7b107=solaris_i586_5.10
jprt.my.solaris.i586.jdk7temp=solaris_i586_5.10
jprt.my.solaris.i586.jdk6=solaris_i586_5.8
jprt.my.solaris.i586.jdk6perf=solaris_i586_5.8
jprt.my.solaris.i586.jdk6u10=solaris_i586_5.8
jprt.my.solaris.i586.jdk6u14=solaris_i586_5.8
jprt.my.solaris.i586.jdk6u18=solaris_i586_5.8
jprt.my.solaris.i586.jdk6u20=solaris_i586_5.8
jprt.my.solaris.i586.ejdk7=${jprt.my.solaris.i586.jdk7}
jprt.my.solaris.i586.ejdk6=${jprt.my.solaris.i586.jdk6}
jprt.my.solaris.i586.jdk7u4=${jprt.my.solaris.i586.jdk7}
jprt.my.solaris.i586=${jprt.my.solaris.i586.${jprt.tools.default.release}}
jprt.my.solaris.x64.jdk8=solaris_x64_5.10
jprt.my.solaris.x64.jdk7=solaris_x64_5.10
jprt.my.solaris.x64.jdk7b107=solaris_x64_5.10
jprt.my.solaris.x64.jdk7temp=solaris_x64_5.10
jprt.my.solaris.x64.jdk6=solaris_x64_5.10
jprt.my.solaris.x64.jdk6perf=solaris_x64_5.10
jprt.my.solaris.x64.jdk6u10=solaris_x64_5.10
jprt.my.solaris.x64.jdk6u14=solaris_x64_5.10
jprt.my.solaris.x64.jdk6u18=solaris_x64_5.10
jprt.my.solaris.x64.jdk6u20=solaris_x64_5.10
jprt.my.solaris.x64.ejdk7=${jprt.my.solaris.x64.jdk7}
jprt.my.solaris.x64.ejdk6=${jprt.my.solaris.x64.jdk6}
jprt.my.solaris.x64.jdk7u4=${jprt.my.solaris.x64.jdk7}
jprt.my.solaris.x64=${jprt.my.solaris.x64.${jprt.tools.default.release}}
jprt.my.linux.i586.jdk8=linux_i586_2.6
jprt.my.linux.i586.jdk7=linux_i586_2.6
jprt.my.linux.i586.jdk7b107=linux_i586_2.6
jprt.my.linux.i586.jdk7temp=linux_i586_2.6
jprt.my.linux.i586.jdk6=linux_i586_2.4
jprt.my.linux.i586.jdk6perf=linux_i586_2.4
jprt.my.linux.i586.jdk6u10=linux_i586_2.4
jprt.my.linux.i586.jdk6u14=linux_i586_2.4
jprt.my.linux.i586.jdk6u18=linux_i586_2.4
jprt.my.linux.i586.jdk6u20=linux_i586_2.4
jprt.my.linux.i586.ejdk7=linux_i586_2.6
jprt.my.linux.i586.ejdk6=linux_i586_2.6
jprt.my.linux.i586.jdk7u4=${jprt.my.linux.i586.jdk7}
jprt.my.linux.i586=${jprt.my.linux.i586.${jprt.tools.default.release}}
jprt.my.linux.x64.jdk8=linux_x64_2.6
jprt.my.linux.x64.jdk7=linux_x64_2.6
jprt.my.linux.x64.jdk7b107=linux_x64_2.6
jprt.my.linux.x64.jdk7temp=linux_x64_2.6
jprt.my.linux.x64.jdk6=linux_x64_2.4
jprt.my.linux.x64.jdk6perf=linux_x64_2.4
jprt.my.linux.x64.jdk6u10=linux_x64_2.4
jprt.my.linux.x64.jdk6u14=linux_x64_2.4
jprt.my.linux.x64.jdk6u18=linux_x64_2.4
jprt.my.linux.x64.jdk6u20=linux_x64_2.4
jprt.my.linux.x64.ejdk7=${jprt.my.linux.x64.jdk7}
jprt.my.linux.x64.ejdk6=${jprt.my.linux.x64.jdk6}
jprt.my.linux.x64.jdk7u4=${jprt.my.linux.x64.jdk7}
jprt.my.linux.x64=${jprt.my.linux.x64.${jprt.tools.default.release}}
jprt.my.linux.ppc.jdk8=linux_ppc_2.6
jprt.my.linux.ppc.jdk7=linux_ppc_2.6
jprt.my.linux.ppc.jdk7b107=linux_ppc_2.6
jprt.my.linux.ppc.jdk7temp=linux_ppc_2.6
jprt.my.linux.ppc.ejdk6=linux_ppc_2.6
jprt.my.linux.ppc.ejdk7=linux_ppc_2.6
jprt.my.linux.ppc.jdk7u4=${jprt.my.linux.ppc.jdk7}
jprt.my.linux.ppc=${jprt.my.linux.ppc.${jprt.tools.default.release}}
jprt.my.linux.ppcv2.jdk8=linux_ppcv2_2.6
jprt.my.linux.ppcv2.jdk7=linux_ppcv2_2.6
jprt.my.linux.ppcv2.jdk7b107=linux_ppcv2_2.6
jprt.my.linux.ppcv2.jdk7temp=linux_ppcv2_2.6
jprt.my.linux.ppcv2.ejdk6=linux_ppcv2_2.6
jprt.my.linux.ppcv2.ejdk7=linux_ppcv2_2.6
jprt.my.linux.ppcv2.jdk7u4=${jprt.my.linux.ppcv2.jdk7}
jprt.my.linux.ppcv2=${jprt.my.linux.ppcv2.${jprt.tools.default.release}}
jprt.my.linux.ppcsflt.jdk8=linux_ppcsflt_2.6
jprt.my.linux.ppcsflt.jdk7=linux_ppcsflt_2.6
jprt.my.linux.ppcsflt.jdk7b107=linux_ppcsflt_2.6
jprt.my.linux.ppcsflt.jdk7temp=linux_ppcsflt_2.6
jprt.my.linux.ppcsflt.ejdk6=linux_ppcsflt_2.6
jprt.my.linux.ppcsflt.ejdk7=linux_ppcsflt_2.6
jprt.my.linux.ppcsflt.jdk7u4=${jprt.my.linux.ppcsflt.jdk7}
jprt.my.linux.ppcsflt=${jprt.my.linux.ppcsflt.${jprt.tools.default.release}}
jprt.my.linux.armvfp.jdk8=linux_armvfp_2.6
jprt.my.linux.armvfp.jdk7=linux_armvfp_2.6
jprt.my.linux.armvfp.jdk7b107=linux_armvfp_2.6
jprt.my.linux.armvfp.jdk7temp=linux_armvfp_2.6
jprt.my.linux.armvfp.ejdk6=linux_armvfp_2.6
jprt.my.linux.armvfp.ejdk7=linux_armvfp_2.6
jprt.my.linux.armvfp.jdk7u4=${jprt.my.linux.armvfp.jdk7}
jprt.my.linux.armvfp=${jprt.my.linux.armvfp.${jprt.tools.default.release}}
jprt.my.linux.armsflt.jdk8=linux_armsflt_2.6
jprt.my.linux.armsflt.jdk7=linux_armsflt_2.6
jprt.my.linux.armsflt.jdk7b107=linux_armsflt_2.6
jprt.my.linux.armsflt.jdk7temp=linux_armsflt_2.6
jprt.my.linux.armsflt.ejdk6=linux_armsflt_2.6
jprt.my.linux.armsflt.ejdk7=linux_armsflt_2.6
jprt.my.linux.armsflt.jdk7u4=${jprt.my.linux.armsflt.jdk7}
jprt.my.linux.armsflt=${jprt.my.linux.armsflt.${jprt.tools.default.release}}
jprt.my.macosx.x64.jdk8=macosx_x64_10.7
jprt.my.macosx.x64.jdk7=macosx_x64_10.7
jprt.my.macosx.x64.jdk7u4=${jprt.my.macosx.x64.jdk7}
jprt.my.macosx.x64=${jprt.my.macosx.x64.${jprt.tools.default.release}}
jprt.my.windows.i586.jdk8=windows_i586_5.1
jprt.my.windows.i586.jdk7=windows_i586_5.1
jprt.my.windows.i586.jdk7b107=windows_i586_5.0
jprt.my.windows.i586.jdk7temp=windows_i586_5.0
jprt.my.windows.i586.jdk6=windows_i586_5.0
jprt.my.windows.i586.jdk6perf=windows_i586_5.0
jprt.my.windows.i586.jdk6u10=windows_i586_5.0
jprt.my.windows.i586.jdk6u14=windows_i586_5.0
jprt.my.windows.i586.jdk6u18=windows_i586_5.0
jprt.my.windows.i586.jdk6u20=windows_i586_5.0
jprt.my.windows.i586.ejdk7=${jprt.my.windows.i586.jdk7}
jprt.my.windows.i586.ejdk6=${jprt.my.windows.i586.jdk6}
jprt.my.windows.i586.jdk7u4=${jprt.my.windows.i586.jdk7}
jprt.my.windows.i586=${jprt.my.windows.i586.${jprt.tools.default.release}}
jprt.my.windows.x64.jdk8=windows_x64_5.2
jprt.my.windows.x64.jdk7=windows_x64_5.2
jprt.my.windows.x64.jdk7b107=windows_x64_5.2
jprt.my.windows.x64.jdk7temp=windows_x64_5.2
jprt.my.windows.x64.jdk6=windows_x64_5.2
jprt.my.windows.x64.jdk6perf=windows_x64_5.2
jprt.my.windows.x64.jdk6u10=windows_x64_5.2
jprt.my.windows.x64.jdk6u14=windows_x64_5.2
jprt.my.windows.x64.jdk6u18=windows_x64_5.2
jprt.my.windows.x64.jdk6u20=windows_x64_5.2
jprt.my.windows.x64.ejdk7=${jprt.my.windows.x64.jdk7}
jprt.my.windows.x64.ejdk6=${jprt.my.windows.x64.jdk6}
jprt.my.windows.x64.jdk7u4=${jprt.my.windows.x64.jdk7}
jprt.my.windows.x64=${jprt.my.windows.x64.${jprt.tools.default.release}}
# Standard list of jprt build targets for this source tree
@@ -211,6 +131,7 @@ jprt.build.targets.standard= \
${jprt.my.solaris.x64}-{product|fastdebug|debug}, \
${jprt.my.linux.i586}-{product|fastdebug|debug}, \
${jprt.my.linux.x64}-{product|fastdebug}, \
${jprt.my.macosx.x64}-{product|fastdebug|debug}, \
${jprt.my.windows.i586}-{product|fastdebug|debug}, \
${jprt.my.windows.x64}-{product|fastdebug|debug}
@@ -232,16 +153,7 @@ jprt.build.targets.all=${jprt.build.targets.standard}, \
jprt.build.targets.jdk8=${jprt.build.targets.all}
jprt.build.targets.jdk7=${jprt.build.targets.all}
jprt.build.targets.jdk7temp=${jprt.build.targets.all}
jprt.build.targets.jdk7b107=${jprt.build.targets.all}
jprt.build.targets.jdk6=${jprt.build.targets.standard}
jprt.build.targets.jdk6perf=${jprt.build.targets.standard}
jprt.build.targets.jdk6u10=${jprt.build.targets.standard}
jprt.build.targets.jdk6u14=${jprt.build.targets.standard}
jprt.build.targets.jdk6u18=${jprt.build.targets.standard}
jprt.build.targets.jdk6u20=${jprt.build.targets.standard}
jprt.build.targets.ejdk6=${jprt.build.targets.all}
jprt.build.targets.ejdk7=${jprt.build.targets.all}
jprt.build.targets.jdk7u4=${jprt.build.targets.all}
jprt.build.targets=${jprt.build.targets.${jprt.tools.default.release}}
# Subset lists of test targets for this source tree
@@ -416,6 +328,30 @@ jprt.my.linux.x64.test.targets = \
${jprt.my.linux.x64}-{product|fastdebug}-c2-jbb_G1, \
${jprt.my.linux.x64}-{product|fastdebug}-c2-jbb_ParOldGC
jprt.my.macosx.x64.test.targets = \
${jprt.my.macosx.x64}-{product|fastdebug}-c2-jvm98, \
${jprt.my.macosx.x64}-{product|fastdebug}-c2-jvm98_nontiered, \
${jprt.my.macosx.x64}-{product|fastdebug}-c2-scimark, \
${jprt.my.macosx.x64}-{product|fastdebug}-c2-GCBasher_default, \
${jprt.my.macosx.x64}-{product|fastdebug}-c2-GCBasher_SerialGC, \
${jprt.my.macosx.x64}-{product|fastdebug}-c2-GCBasher_ParallelGC, \
${jprt.my.macosx.x64}-{product|fastdebug}-c2-GCBasher_ParNewGC, \
${jprt.my.macosx.x64}-{product|fastdebug}-c2-GCBasher_CMS, \
${jprt.my.macosx.x64}-{product|fastdebug}-c2-GCBasher_G1, \
${jprt.my.macosx.x64}-{product|fastdebug}-c2-GCBasher_ParOldGC, \
${jprt.my.macosx.x64}-{product|fastdebug}-c2-GCOld_default, \
${jprt.my.macosx.x64}-{product|fastdebug}-c2-GCOld_SerialGC, \
${jprt.my.macosx.x64}-{product|fastdebug}-c2-GCOld_ParallelGC, \
${jprt.my.macosx.x64}-{product|fastdebug}-c2-GCOld_ParNewGC, \
${jprt.my.macosx.x64}-{product|fastdebug}-c2-GCOld_CMS, \
${jprt.my.macosx.x64}-{product|fastdebug}-c2-GCOld_G1, \
${jprt.my.macosx.x64}-{product|fastdebug}-c2-GCOld_ParOldGC
# ${jprt.my.macosx.x64}-{product|fastdebug}-c2-jbb_default, \
# ${jprt.my.macosx.x64}-{product|fastdebug}-c2-jbb_default_tiered, \
# ${jprt.my.macosx.x64}-{product|fastdebug}-c2-jbb_ParallelGC, \
# ${jprt.my.macosx.x64}-{product|fastdebug}-c2-jbb_G1, \
# ${jprt.my.macosx.x64}-{product|fastdebug}-c2-jbb_ParOldGC
jprt.my.windows.i586.test.targets = \
${jprt.my.windows.i586}-{product|fastdebug}-{c1|c2}-jvm98, \
${jprt.my.windows.i586}-{product|fastdebug}-c2-jvm98_nontiered, \
@@ -492,6 +428,7 @@ jprt.test.targets.standard = \
${jprt.my.solaris.x64.test.targets}, \
${jprt.my.linux.i586.test.targets}, \
${jprt.my.linux.x64.test.targets}, \
${jprt.my.macosx.x64.test.targets}, \
${jprt.my.windows.i586.test.targets}, \
${jprt.my.windows.x64.test.targets}, \
${jprt.test.targets.open}
@@ -509,16 +446,7 @@ jprt.test.targets.embedded= \
jprt.test.targets.jdk8=${jprt.test.targets.standard}
jprt.test.targets.jdk7=${jprt.test.targets.standard}
jprt.test.targets.jdk7temp=${jprt.test.targets.standard}
jprt.test.targets.jdk7b105=${jprt.test.targets.standard}
jprt.test.targets.jdk6=${jprt.test.targets.standard}
jprt.test.targets.jdk6perf=${jprt.test.targets.standard}
jprt.test.targets.jdk6u10=${jprt.test.targets.standard}
jprt.test.targets.jdk6u14=${jprt.test.targets.standard}
jprt.test.targets.jdk6u18=${jprt.test.targets.standard}
jprt.test.targets.jdk6u20=${jprt.test.targets.standard}
jprt.test.targets.ejdk6=${jprt.test.targets.embedded}
jprt.test.targets.ejdk7=${jprt.test.targets.embedded}
jprt.test.targets.jdk7u4=${jprt.test.targets.jdk7}
jprt.test.targets=${jprt.test.targets.${jprt.tools.default.release}}
# The default test/Makefile targets that should be run
@@ -538,6 +466,7 @@ jprt.make.rule.test.targets.standard.server = \
${jprt.my.solaris.x64}-*-c2-servertest, \
${jprt.my.linux.i586}-*-c2-servertest, \
${jprt.my.linux.x64}-*-c2-servertest, \
${jprt.my.macosx.x64}-*-c2-servertest, \
${jprt.my.windows.i586}-*-c2-servertest, \
${jprt.my.windows.x64}-*-c2-servertest
@@ -548,28 +477,35 @@ jprt.make.rule.test.targets.standard.internalvmtests = \
${jprt.my.solaris.x64}-fastdebug-c2-internalvmtests, \
${jprt.my.linux.i586}-fastdebug-c2-internalvmtests, \
${jprt.my.linux.x64}-fastdebug-c2-internalvmtests, \
${jprt.my.macosx.x64}-fastdebug-c2-internalvmtests, \
${jprt.my.windows.i586}-fastdebug-c2-internalvmtests, \
${jprt.my.windows.x64}-fastdebug-c2-internalvmtests
jprt.make.rule.test.targets.standard.wbapi = \
${jprt.my.solaris.sparc}-{product|fastdebug}-c2-wbapitest, \
${jprt.my.solaris.sparcv9}-{product|fastdebug}-c2-wbapitest, \
${jprt.my.solaris.i586}-{product|fastdebug}-c2-wbapitest, \
${jprt.my.solaris.x64}-{product|fastdebug}-c2-wbapitest, \
${jprt.my.linux.i586}-{product|fastdebug}-c2-wbapitest, \
${jprt.my.linux.x64}-{product|fastdebug}-c2-wbapitest, \
${jprt.my.windows.i586}-{product|fastdebug}-c2-wbapitest, \
${jprt.my.windows.x64}-{product|fastdebug}-c2-wbapitest, \
${jprt.my.solaris.sparc}-{product|fastdebug}-c1-wbapitest, \
${jprt.my.solaris.i586}-{product|fastdebug}-c1-wbapitest, \
${jprt.my.linux.i586}-{product|fastdebug}-c1-wbapitest, \
${jprt.my.windows.i586}-{product|fastdebug}-c1-wbapitest
jprt.make.rule.test.targets.standard = \
${jprt.make.rule.test.targets.standard.client}, \
${jprt.make.rule.test.targets.standard.server}, \
${jprt.make.rule.test.targets.standard.internalvmtests}
${jprt.make.rule.test.targets.standard.internalvmtests}, \
${jprt.make.rule.test.targets.standard.wbapi}
jprt.make.rule.test.targets.embedded = \
${jprt.make.rule.test.targets.standard.client}
jprt.make.rule.test.targets.jdk8=${jprt.make.rule.test.targets.standard}
jprt.make.rule.test.targets.jdk7=${jprt.make.rule.test.targets.standard}
jprt.make.rule.test.targets.jdk7temp=${jprt.make.rule.test.targets.standard}
jprt.make.rule.test.targets.jdk7b107=${jprt.make.rule.test.targets.standard}
jprt.make.rule.test.targets.jdk6=${jprt.make.rule.test.targets.standard}
jprt.make.rule.test.targets.jdk6perf=${jprt.make.rule.test.targets.standard}
jprt.make.rule.test.targets.jdk6u10=${jprt.make.rule.test.targets.standard}
jprt.make.rule.test.targets.jdk6u14=${jprt.make.rule.test.targets.standard}
jprt.make.rule.test.targets.jdk6u18=${jprt.make.rule.test.targets.standard}
jprt.make.rule.test.targets.jdk6u20=${jprt.make.rule.test.targets.standard}
jprt.make.rule.test.targets.ejdk6=${jprt.make.rule.test.targets.embedded}
jprt.make.rule.test.targets.ejdk7=${jprt.make.rule.test.targets.embedded}
jprt.make.rule.test.targets.jdk7u4=${jprt.make.rule.test.targets.jdk7}
jprt.make.rule.test.targets=${jprt.make.rule.test.targets.${jprt.tools.default.release}}

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