changeset 2703:f8fecdfef399 icedtea-3.17.1

Merge jdk8u275-ga
author Andrew John Hughes <gnu_andrew@member.fsf.org>
date Tue, 10 Nov 2020 02:47:04 +0000
parents a43996de60fa (diff) 6b45afd0d97a (current diff)
children 81b86a7bb7cf
files .hgtags
diffstat 15 files changed, 1768 insertions(+), 71 deletions(-) [+]
line wrap: on
line diff
--- a/.hgtags	Thu Nov 05 05:11:01 2020 +0000
+++ b/.hgtags	Tue Nov 10 02:47:04 2020 +0000
@@ -50,6 +50,7 @@
 3ac6dcf7823205546fbbc3d4ea59f37358d0b0d4 jdk7-b73
 2c88089b6e1c053597418099a14232182c387edc jdk7-b74
 d1516b9f23954b29b8e76e6f4efc467c08c78133 jdk7-b75
+f0bfd9bd1a0e674288a8a4d17dcbb9e632b42e6d icedtea7-1.12
 c8b63075403d53a208104a8a6ea5072c1cb66aab jdk7-b76
 1f17ca8353babb13f4908c1f87d11508232518c8 jdk7-b77
 ab4ae8f4514693a9fe17ca2fec0239d8f8450d2c jdk7-b78
@@ -63,6 +64,7 @@
 433a60a9c0bf1b26ee7e65cebaa89c541f497aed jdk7-b86
 6b1069f53fbc30663ccef49d78c31bb7d6967bde jdk7-b87
 82135c848d5fcddb065e98ae77b81077c858f593 jdk7-b88
+195fcceefddce1963bb26ba32920de67806ed2db icedtea7-1.13
 7f1ba4459972bf84b8201dc1cc4f62b1fe1c74f4 jdk7-b89
 425ba3efabbfe0b188105c10aaf7c3c8fa8d1a38 jdk7-b90
 97d8b6c659c29c8493a8b2b72c2796a021a8cf79 jdk7-b91
@@ -111,6 +113,7 @@
 ddc2fcb3682ffd27f44354db666128827be7e3c3 jdk7-b134
 783bd02b4ab4596059c74b10a1793d7bd2f1c157 jdk7-b135
 2fe76e73adaa5133ac559f0b3c2c0707eca04580 jdk7-b136
+d4aea1a51d625f5601c840714c7c94f1de5bc1af icedtea-1.14
 7654afc6a29e43cb0a1343ce7f1287bf690d5e5f jdk7-b137
 fc47c97bbbd91b1f774d855c48a7e285eb1a351a jdk7-b138
 7ed6d0b9aaa12320832a7ddadb88d6d8d0dda4c1 jdk7-b139
@@ -297,6 +300,7 @@
 6403ef94cb0db32d9221a5e8f09f3664cd7744dc jdk8u20-b07
 b7750b6ee1578fd5b2b1f6758f905b332503d8ed jdk8u20-b08
 d420eae635c42be98b166e1ce9c64fc0a8825529 jdk8u20-b09
+e0a10e6be00ab726d23118d4617812ca8c92146d icedtea-3.0.0pre01
 cc4ca2ff0afcfb932da6fa4fffdd01f08e4ff71b jdk8u20-b10
 61291eee163ab5bbe0b38b37b77673bac9bf5310 jdk8u20-b11
 2feecdcd7b677f3baf9df6e8ea46f7e08c7e4411 jdk8u20-b12
@@ -310,6 +314,7 @@
 5b76ecd0cdcf899261da2c9965862771f6da4e26 jdk8u20-b20
 0dccc4aca1859b1ff7dca9db214f7f38c4ddbbce jdk8u20-b21
 6c1fb59fa5d7095d93a023553a949f873f324c6b jdk8u20-b22
+a81a301b0f8940a61f7d7bb0eefdea54035442cb icedtea-3.0.0pre02
 b14daf2459c5430dfe5d435483d6f424cff09584 jdk8u20-b23
 1710841b0229403f4af85eac8b68ea5065a26c81 jdk8u20-b24
 1710841b0229403f4af85eac8b68ea5065a26c81 jdk8u20-b25
@@ -377,6 +382,9 @@
 83d1d42c3df409c87ef7cb0126343a009857ca71 jdk8u40-b18
 ae4980d195b64eec58884b233d7efd312205bac8 jdk8u40-b19
 b31a07adaef50dacba20e376cff6f1096e745092 jdk8u40-b20
+44a10ae251cadce9bcde2b31c85368d13fff618d icedtea-3.0.0pre03
+0503e9c58a1332f794c741dfa311a614cc3bd484 icedtea-3.0.0pre04
+44d6e4ff3770e0d272cc5d5e5cf88762e108e2c5 icedtea-3.0.0pre05
 765a17e75fd622f7b892381e23c9b2c531d416f0 jdk8u40-b21
 b6d03a810a61116268fea08517a9632bd66a7363 jdk8u40-b22
 5dd2ad6c7911a1e21f15a28f13ffad662378a3be jdk8u40-b23
@@ -455,6 +463,9 @@
 99d323d5830fad8551038da15113639d8518a8e6 jdk8u60-b21
 01bb22b4ebb6348efa14726ba139858d6defefcd jdk8u60-b22
 91e6153db0df9245c4b60197c78f72e510026b2c jdk8u60-b23
+ff58c7164b8dfd7f66104ddedb36fd017982fe06 icedtea-3.0.0pre06
+4b05cb9c5a4c517e0dabe38b7a7e1c080785feff icedtea-3.0.0pre07
+f0635543beb309c4da1bb88c906a76ee4b75e16d icedtea-3.0.0pre08
 280834e00e6267fae1ae2a86a8bd7d1fdd160cba jdk8u60-b24
 be2ddf520d263ea27a075f895d93adada6702027 jdk8u60-b25
 d3bdbc19827e1a97e046b65e39cb9c7255d4603b jdk8u60-b26
@@ -533,6 +544,7 @@
 e831ce671fb072501670ee593e1080659cbc9804 jdk8u72-b12
 8f5ca46a90af013525cbdf3b023727450cdb8119 jdk8u72-b13
 6cbd347daa9367b78e385f2e8eba222a30b3bea1 jdk8u72-b14
+a358b13af298aa88d7a106c93a5416eeacfccb08 icedtea-3.0.0pre09
 fff0c11d2811deb70bef213d6d8478b3e3796658 jdk8u72-b15
 928374287059bb10b87dade1c2d984f8c4df01b3 jdk8u72-b31
 443abbc4e048b13e075486a86ddafca520257fdf jdk8u73-b00
@@ -568,6 +580,9 @@
 417ff12d11d60c7f2235b498fdea9ef85514fc75 jdk8u77-b00
 6683e1d7422d0b6fc6566a1454604ca1ba7e86d9 jdk8u77-b01
 7dd1be8bd46cd4c80526671607e8035c3c671c14 jdk8u77-b02
+19d738ae2def4918d5a7aff721e6651a671b4064 icedtea-3.0.0pre10
+8ed8d26a3f9ad84b2901948eaaf255aacdecdce1 icedtea-3.0.0
+d8400e834cba3c4402e6d0920a46d5908466bdfd icedtea-3.0-branchpoint
 3fbef9f4cddf934f9cc0e06f61e641b5b845b901 jdk8u77-b03
 08dc508915433fdf3d970ea4d2fd33b4dffd67ca jdk8u77-b31
 4c41657db1862352b0e107b910be32c86eb5b1ff jdk8u91-b00
@@ -589,6 +604,10 @@
 9f2404d26c945178219c4f826fee5a084896ba55 jdk8u76-b12
 118aba9e37f0264a7cadb20ac0438eaea4180998 jdk8u92-b00
 94158f2e5cbdff8956b8e643e0305ca178d856e3 jdk8u92-b13
+93f2944dcec66be2a1e95b7095a97fb4e360794f icedtea-3.1.0pre01
+97afdcdbffb0049da026d29ecd782ba6839ec454 icedtea-3.1.0pre02
+a161af8a08ebb535e6cd2f53b99819a8bf44ecf4 icedtea-3.1.0pre03
+6517c9e186c5b0f190b054c89dfd84f9b094b1df icedtea-3.1.0pre04
 51f64c980bcdef152a6eb043aaa5d04cc08c6624 jdk8u92-b14
 9005b6faa5f616a8b403ea3aa660b963a7cdde24 jdk8u92-b31
 7e728e8e6120e276d05f82c1a01c3d8fe4a63584 jdk8u92-b32
@@ -607,6 +626,8 @@
 1db5081d8ee77caffa0f534496af5fb908e9b61f jdk8u101-b10
 81cdb3e279f8f245f740e7d3e79a1629b6599325 jdk8u101-b11
 d6f920823feb4d44e67cec383d8c6e4a5dba9d76 jdk8u101-b12
+453780834f92edcc8ed02e72c266667ea1c82194 icedtea-3.1.0
+55ebb0016ba5942de09b6925ca33a4d55417cacd icedtea-3.2.0pre01
 e983a19c64390d18004d1d0c7907394714e697b3 jdk8u101-b13
 e8bed1496ff254d91d52c8da7c6d8d361862d773 jdk8u76-b00
 832508a6165c877aa1de03ca9b6520c7bfe5a28e jdk8u76-b01
@@ -628,6 +649,8 @@
 5839c5f4292a8755a4c102cb0f983536f5bfe8be jdk8u102-b11
 163dc486915300b020f203e89fdf1985cc3c4814 jdk8u102-b12
 04471bfd1cc2e8f4d8d198e79b21e64dd4499db8 jdk8u102-b13
+64e0fb010639918077b4264a45b3afdd03e58c58 icedtea-3.2.0pre02
+66db642828d473d3b824d4d0228468ec8a4ebac5 icedtea-3.2.0pre03
 daafd7d3a76a0c448e4982afd7c4e9471ab1c916 jdk8u102-b14
 3a3064f9363c79f70a0d9b2201342acc880e1e76 jdk8u102-b31
 fb4fc26136253424c0a4f4f5a10dc54f612b64fd jdk8u102-b32
@@ -648,6 +671,7 @@
 fc69426e3eeb88652a433088ddf715ca100606d2 jdk8u111-b11
 5b64df33d63a60d21edd5094173a21b1f2431b0a jdk8u111-b12
 7b105a10b1a3e656939e47e87fcf9e8066fa78f0 jdk8u111-b13
+200203ccf4bb3c1a24b356d5f3ce39f0f51fd5b7 icedtea-3.2.0
 07c7b5880ac35b894978c3313e6e40a487d4756d jdk8u111-b14
 31aca84184b4d54890b4fade1c614927203051b4 jdk8u112-b00
 37bd26595d994939ccf98d8c444e692c4fdfff55 jdk8u112-b01
@@ -665,6 +689,7 @@
 b4441c5520688b42c52caa36861744429ec4385a jdk8u112-b14
 bfb88850a367a747e77f4cb164a12ea54ec8e8da jdk8u112-b15
 14388b14d4847c3eacce677eae37980e6fa545cd jdk8u112-b16
+cc0c4b0b1c3ee397524f001a8969d361feb288dd icedtea-3.3.0pre01
 1a7a5fe22a028e438a724d909d27da2ea96c6d86 jdk8u112-b31
 911c506096560e49442a4c8f598f7f43c2339720 jdk8u112-b32
 8e27761a403ff4b237219cfb22731e127a1d1744 jdk8u112-b33
@@ -681,6 +706,9 @@
 51c053cb4468768757cb25e687edd8e021ff2eb3 jdk8u121-b10
 bfe05759587ddc30a32c00637180588cec309ee3 jdk8u121-b11
 97c858f7f7c827730d05eb69134ac89e156f8685 jdk8u121-b12
+92468d1e29e3d87c9e1f3f89ada465700676e470 icedtea-3.3.0pre02
+d5760f7cce541f5958d5f1ad7aa45eb6b6da7124 icedtea-3.3.0
+f890a36627cca086e34c7f06abe5d5f0ce5888d6 icedtea-3.4.0pre01
 f2b5b6ab1f5544b92074adb5bb80cc031649d0e7 jdk8u121-b13
 7cc899fc144561be76c4286b3e9ee06b1facef32 jdk8u121-b31
 6838c13eb094eeb3119decfd952dedc2f51427ed jdk8u121-b32
@@ -699,6 +727,8 @@
 2779c104bd7cb350647deff4907d45466d6d1c45 jdk8u131-b08
 1e9f98c8e4f5e49d1c240d2a92ad0e00f1430040 jdk8u131-b09
 725620ca52fbc260782c522845e310b9c9aed59a jdk8u131-b10
+ed5ee0ac711175311b0ccba4274032f8a7b7660c icedtea-3.4.0
+3e39851fea09d3d2f1ff4b869c7d7db12a11e278 icedtea-3.5.0pre01
 94b1198760284f6b53daa4c3361261a0a5207150 jdk8u131-b11
 26016f048003d216cdf83e1b0318b6fc988a4ca8 jdk8u131-b31
 cc52a119d110cc633dce64629d4d25b3e1cc3b67 jdk8u131-b32
@@ -719,10 +749,15 @@
 96264dd0d57d3d4bc6b66678f44b62eb2776bdcc jdk8u141-b12
 1d97fc4da695a5ada6fe0174ab45e5ea8b9cd9d8 jdk8u141-b13
 68a5871a5dd3ca652cf4623b686aacbb1da0a93b jdk8u141-b14
+ee1282876d8a593d8a0edd813f77b4b9552821b8 icedtea-3.5.0
 48a5a43b31970468f4fc0dc67b81e4ddeac1585f jdk8u141-b15
 123326194347f1778bbd124594bcddba8181d23b jdk8u141-b31
 f1021394489da9a3621ba92fd427572abb32413f jdk8u141-b32
 9a342a4d909784cccb664f2293c8cb1463c3ac41 jdk8u144-b00
+80ab5dd98579910a24f13cae0a4c7e4092ed3557 icedtea-3.5.1
+ee1282876d8a593d8a0edd813f77b4b9552821b8 icedtea-3.6.0pre00
+80ab5dd98579910a24f13cae0a4c7e4092ed3557 icedtea-3.6.0pre01
+63060ee6ba74f271059e59348c865c5991d856d3 icedtea-3.6.0pre02
 57a5aae91b8bdccc4e1910cf373f13598429f03e jdk8u144-b01
 21446f3c909e3ed750def8b4dacbec6074606ed3 jdk8u144-b31
 b032efb8a72675cfded271b99ad84602189f7849 jdk8u144-b32
@@ -743,6 +778,7 @@
 dd863a7bde3f0a335b99c9205af84a404fc55488 jdk8u151-b09
 af89399e4d1190c42e23b95da79800da51b40808 jdk8u151-b10
 ace131d990fdb75a6616f18265b2c4ecca2e3f5d jdk8u151-b11
+eb577ed6ec931d15540c6a71192a6a55f8366569 icedtea-3.6.0
 27cf3b1673624b3b9e246e526ba7848fa5f98400 jdk8u151-b12
 b94f31b809debc683b996146ac20acbb269381f9 jdk8u122-b00
 73494e6ff8e5a5a66cb87445d6c5a0a8acab3409 jdk8u122-b01
@@ -770,6 +806,7 @@
 ec86194825dd0c2fc3d6ee88b287650e1c8e24c9 jdk8u152-b13
 c425fe56b8fb34e21a798be796305f51d648f11b jdk8u152-b14
 d680e12deacbc531fe647d356540384efe625223 jdk8u152-b15
+9a7fbbe2d7edc786d1be470060f9a43e2a675eb4 icedtea-3.7.0pre01
 7a25d12cd94fa7a881f064dcb35f0e88ed073c45 jdk8u152-b16
 2093adf5331251080398d5a2f0f2cf58cffcb0a1 jdk8u152-b31
 54a2665aef21b20d7e436bd615a3e722649accb1 jdk8u152-b32
@@ -806,6 +843,9 @@
 ff7dd95280fbaf4aa23b20f50a920dbdef561d12 jdk8u161-b09
 fff44bb7f1db7d141b0039064b86340dac338d41 jdk8u161-b10
 89f84abd0219b7576fe65abbc51ac0fbcf0d5284 jdk8u161-b11
+644bdc77dd18f585215ce6f231c52eca8872dbe3 icedtea-3.7.0
+644bdc77dd18f585215ce6f231c52eca8872dbe3 icedtea-3.8.0pre00
+52a15f71b0495929f553cf5a28d275bafd1d95ee icedtea-4-branchpoint
 91668c6c669851b7ced30db06392d26d9325344a jdk8u161-b12
 ccac71a8778d18186967618df12bd2612d758f4b jdk8u162-b00
 6d91dff0d6f13d08e4c68388ac6c65cf84a5f9d0 jdk8u162-b01
@@ -819,6 +859,7 @@
 0601c290e21e7dbd4cac57595b7deb3302e59cb9 jdk8u162-b09
 9c40d1fac7fced8f769efc7ed3014ab77ba65e36 jdk8u162-b10
 3b37f1a6ba6b98a8aa9b0b43e96b374a22a21b99 jdk8u162-b11
+fbfdb155032767d3954fa0f1c4f344d39ab55c6e icedtea-3.8.0pre01
 173b2b978c05e59aa471e82be9013955ebd6b4de jdk8u162-b12
 a127ef57877d806f0840ccd6e7a2be337692fe6e jdk8u162-b31
 2c309abde14fbef07fe07304f493f770da0f5564 jdk8u162-b32
@@ -840,6 +881,10 @@
 f967870393dc0a76c47702a90b1bb0bc70bd58a8 jdk8u171-b08
 899066aa28cfcd42c710e4f6ef4bebde36e5efa8 jdk8u171-b09
 3578bbdd41735fc6b5f0e326c68beb91b3175ce7 jdk8u171-b10
+00ccc73498628a51a45301322e64ce2ad06e49be icedtea-3.8.0pre02
+499b993b345ab8a979e2332a1d47118b5c234a73 icedtea-3.8.0
+499b993b345ab8a979e2332a1d47118b5c234a73 icedtea-3.9.0pre00
+aad676cf07208ab545520aaae1177c254505650f icedtea-3.9.0pre01
 8b40342cb58017b3fc88384d62f080d491eb234e jdk8u171-b11
 e91f5717d8a5df396c8646da9b5a7bcd526bf288 jdk8u172-b00
 a0672a294b9aff852f35336932ddf3d46465f28c jdk8u172-b01
@@ -854,6 +899,7 @@
 20086fb0be29b3e82a3841d3c1829f1437976f27 jdk8u172-b08
 9361e8414bf1b1bbba36ecf4b81687ae254c1e63 jdk8u172-b09
 ff9f47b14b8a0302a90ad9a4d793073205de52e2 jdk8u172-b10
+6b8030f5f902073e90423f36362e9fd204f95cb6 icedtea-3.9.0pre02
 4d038b84d11353246e218d8f8dcd04637e09ee6d jdk8u172-b11
 031aebc4b792ba53dbc384f68bca53c839e8c397 jdk8u181-b01
 a0101c7abbb958c25082a6781e54ce7799178b3e jdk8u181-b02
@@ -877,6 +923,10 @@
 750c73f24a38dc0e65d8572576a0d21032c7c4ef jdk8u181-b10
 e19e26e852d6250739f4ce4de92d4a5bcdd56926 jdk8u181-b11
 760af13b89232fe5387667f3848be95cfead953e jdk8u181-b12
+503154a543674b08fa19f79d7ad8a0143bbcbe3e jdk8u181-b31
+3b2d372838b9f006e9959b364f638013fc1b0237 icedtea-3.9.0
+3b2d372838b9f006e9959b364f638013fc1b0237 icedtea-3.10.0pre00
+2e8a34249a2d897021c1020a2bf3c6e44985de68 icedtea-3.10.0pre01
 ead7f893fb2c4a919820497f39a51fa640f4753e jdk8u181-b13
 c87c3a9a789e8bad94fb39bc3c2c7c4a532f7330 jdk8u191-b01
 d6007fa4ffae140f4c4ad551a1ee290a0704a094 jdk8u201-b00
@@ -891,6 +941,9 @@
 7d04f40e401d762c5a35e932fd9bc22c8448ab96 jdk8u191-b10
 58ce5d3a1323f868c1a7fa007bd89fc69871c99f jdk8u191-b25
 2199d624d9e577744d843aa0f25f9b7ebb09d566 jdk8u191-b11
+90de74e82bfbbd45ce8e195e18899c929126cdfb icedtea-3.10.0
+90de74e82bfbbd45ce8e195e18899c929126cdfb icedtea-3.11.0pre00
+5814556a874108d647f6ec9f9e5dd9e44cad7622 icedtea-3.11.0pre01
 6432b2dd408c2e31cbf02acd41e87e4c63f4c69a jdk8u191-b12
 3322b7fdc03fcbef2ee5328ef75f613a1f71e340 jdk8u191-b26
 3b5b53db61f2aaa5a94fd9ca51162d83565faabe jdk8u182-b00
@@ -912,6 +965,7 @@
 15cc8dfafe99078995d306cbafdbce8c218d4d8c jdk8u192-b10
 940952a0d50ffb71692f6a4bc03987296e89706e jdk8u192-b25
 5d4431231254f3ee61ae17c22fcb2b6ca2a09aa3 jdk8u192-b11
+c995f80cfe5b9b42376a435cc4e22fc898bcdd49 icedtea-3.11.0pre02
 4d3fefdd2f98b55eaad22525ccf10b9d437b6cdb jdk8u192-b12
 e131417abf593b920e685f83a744029b340a637e jdk8u192-b26
 fbe47c49e7ee48e42b3a08a877983dd4e1a7b672 jdk8u181-b31
@@ -933,6 +987,7 @@
 fb2d87afd9f84753f1b4c052737823e1003a82bc jdk8u201-b07
 97ecc454983b0f4bcde98ade9b1b6c2afe4f1dd6 jdk8u201-b77
 4b734c44eee9ca06bf1b0078aab8e0d248b10ad4 jdk8u201-b08
+9edccdd36f81617d9e7754b7c89cdf542113b73d icedtea-3.11.0
 9250f69171139724ac2887ba6ba258d710d604d3 jdk8u201-b09
 f12674350119c3608e21a4d047333d9b4601e9d4 jdk8u201-b79
 7c2db1a58ed1b23ea065eef214fb438a98814b5e jdk8u201-b25
@@ -945,6 +1000,8 @@
 c4b0b4f1b76628c22772e23d9203405b7ce260cd jdk8u202-b05
 10c71c9fba23cc8cc2400a6a277bf912cd7a8e5a jdk8u202-b06
 3be6b6bece51fdfa8c76220a7f60f157938659c7 jdk8u202-b07
+4f847be0b2d7d22459e8d84c9123b2d4ee05789f icedtea-3.12.0pre01
+9edccdd36f81617d9e7754b7c89cdf542113b73d icedtea-3.12.0pre00
 0ea872ce75502739f90bacf092d471889673c757 jdk8u202-b08
 d194c1e53bdb78a6d546263de88a7a0c939f45ba jdk8u202-b25
 a8b6e38ee409be0fb8fc931a4762f9d04f2f2da0 jdk8u202-b26
@@ -956,6 +1013,7 @@
 5218ef8ea6c355b5f3294a21675dfb6d372c02f4 jdk8u212-b03
 d43cf567cf721406472abc52d12980a25b886577 jdk8u212-b04
 5218ef8ea6c355b5f3294a21675dfb6d372c02f4 jdk8u212-ga
+f0482b9b7f7b489e69295fe19ae85bad7e17cb31 icedtea-3.12.0
 84adf64edebbcb31edf2e8ac20a3f601cdd80e1f jdk8u222-b01
 3a2c8d0a600d5cf404ed1783036b3fb5b0f9c53d jdk8u222-b02
 2618046271a463d595918d176ec50cce563448ba jdk8u222-b03
@@ -968,7 +1026,11 @@
 81dd104fa95943fe02bc013d36155b5f4d54210d jdk8u222-b09
 eeeabadc6bf04d70c2fb8e0492abbf30143d26f0 jdk8u222-b10
 eeeabadc6bf04d70c2fb8e0492abbf30143d26f0 jdk8u222-ga
+abf5011267aefc643c1c3d5603645bcee0e34084 icedtea-3.13.0pre01
+c8f86954855a988dafd6fdc422a4962f3ebb9494 icedtea-3.13.0
 ef88239d3d16c5b6817e44c4aba0749620fc79ff jdk8u232-b01
+c8f86954855a988dafd6fdc422a4962f3ebb9494 icedtea-3.14.0pre00
+d1cf93b54a4796f13d90f5e87ca4e0cabcfa3710 icedtea-3.14.0pre01
 ef851705e3e17fd968b9c8d2fd4bc04be34f0c5c jdk8u232-b02
 c5ca527b0afdafb0072f5e0810de13ec326e4b57 jdk8u232-b03
 9611ccdff5fe10bb27e5aa34cde295562d13a29b jdk8u232-b04
@@ -979,6 +1041,9 @@
 7aea873d47e1d93c7ef4902e758417e5afc19d9c jdk8u232-b08
 6b9f309807a227d32bfcad2ab36cdbccd71d38ca jdk8u232-b09
 6b9f309807a227d32bfcad2ab36cdbccd71d38ca jdk8u232-ga
+454c6cbb807370381b734f7cb9fb91c8117ebd30 icedtea-3.14.0
+454c6cbb807370381b734f7cb9fb91c8117ebd30 icedtea-3.15.0pre00
+c93ffb58d0ac9f64c06f44cc025739592869bed2 icedtea-3.15.0pre01
 34aa7bcd731f29c1a37aad70a5f07272a3fa9ca7 jdk8u242-b01
 d2079934980013fdd8e63e31897011edae1a1188 jdk8u242-b02
 be3a6b2c79821f056a9ca1efde037555d829ccb8 jdk8u242-b03
@@ -988,7 +1053,10 @@
 8ca5f59e3042b7353b64c131be6bb970ba489ce9 jdk8u242-b07
 5b17d1f49219624f122ea2b05ec1c9f1adff8c64 jdk8u242-b08
 5b17d1f49219624f122ea2b05ec1c9f1adff8c64 jdk8u242-ga
+c0ec72b715dd2ea2ea005ad1d6cf51ed34462c70 icedtea-3.15.0
+c0ec72b715dd2ea2ea005ad1d6cf51ed34462c70 icedtea-3.16.0pre00
 30768a181ad0f4ba3d37f00bf23d76c875cb043a jdk8u252-b00
+9fd0ac4101492765c0058ed8c167da9eeb89188a icedtea-3.16.0pre01
 5f55e79422a0246076db7d3f2a2c44cb36e0e271 jdk8u252-b01
 a013ce3462fc144cc83347be67109c4e4e4b26ff jdk8u252-b02
 9fb3e77d22d6a616c33ae6feac9a847764968bc3 jdk8u252-b03
@@ -1000,6 +1068,9 @@
 72a6d93679e5bee5d5192234b8421024233cf616 jdk8u252-b08
 343c4ea489d5d3b058c5e00339868e4f66c4995a jdk8u252-b09
 343c4ea489d5d3b058c5e00339868e4f66c4995a jdk8u252-ga
+bca1f7228ce8cf8b6fad5a278c1427c1763f1551 icedtea-3.16.0
+bca1f7228ce8cf8b6fad5a278c1427c1763f1551 icedtea-3.17.0pre00
+224893ede003ce1b059662471a1df462300dcd0e icedtea-3.17.0pre01
 3cf8935494d6ac06c3ecb495bf356fde94060496 jdk8u262-b01
 041cb274be1207a991e05b041f57a800e8132cff jdk8u262-b02
 908e7985b3393370a417db1254ab4585ea954b2f jdk8u262-b03
@@ -1018,6 +1089,7 @@
 1bda51d3d528f884afe13b4a810390e3aa2464a8 jdk8u272-b01
 1059e4b7426a1ab9c52ce9aa55daf11d97b13607 jdk8u272-b02
 fbad06cacb73f4ca1701c789f7c1bc3f5c6f08c9 jdk8u272-b03
+aedccd51873f083dda0b571d24076142b9312d91 icedtea-3.17.0pre02
 a0dd128191fdce8034be8bd4c7a1f47ee2426e6d jdk8u272-b04
 afbc213b114cfc20b07318d4c1b2550211e77682 jdk8u272-b05
 e68b51b4e55a792c78f6f043738e75755571d92d jdk8u272-b06
@@ -1026,6 +1098,7 @@
 7f60c2d9823ea2928db8eee582fbc736bd8d962c jdk8u272-b09
 6464ce0569e764ec2c6533f6bf4ca1725a618bdf jdk8u272-b10
 6464ce0569e764ec2c6533f6bf4ca1725a618bdf jdk8u272-ga
+a612a04781bdc4e1c0ffc79f1993aa9a1121138d icedtea-3.17.0
 6464ce0569e764ec2c6533f6bf4ca1725a618bdf jdk8u275-b00
 a045721e6a83918a16d74ab5d0c27c158e2647a8 jdk8u275-b01
 a045721e6a83918a16d74ab5d0c27c158e2647a8 jdk8u275-ga
--- a/.jcheck/conf	Thu Nov 05 05:11:01 2020 +0000
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,2 +0,0 @@
-project=jdk8
-bugids=dup
--- a/common/autoconf/boot-jdk.m4	Thu Nov 05 05:11:01 2020 +0000
+++ b/common/autoconf/boot-jdk.m4	Tue Nov 10 02:47:04 2020 +0000
@@ -1,5 +1,6 @@
 #
 # Copyright (c) 2011, 2012, Oracle and/or its affiliates. All rights reserved.
+# Copyright 2014 Red Hat, Inc.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -283,6 +284,25 @@
   BOOTJDK_CHECK_TOOL_IN_BOOTJDK(RMIC,rmic)
   BOOTJDK_CHECK_TOOL_IN_BOOTJDK(NATIVE2ASCII,native2ascii)
 
+  # Allow JAR command to be overridden
+  # Doing so allows a faster native jar program to be used
+  # when building Zero
+  AC_MSG_CHECKING([for an alternate jar command])
+  AC_ARG_WITH([alt-jar],
+              [AS_HELP_STRING(--with-alt-jar=PATH, specify the location of an alternate jar binary to use for building)],
+  [
+    if test "x${withval}" != xyes -a "x${withval}" != xno; then
+      ALT_JAR_CMD=${withval}
+    else
+      ALT_JAR_CMD="false"
+    fi
+  ],
+  [ 
+    ALT_JAR_CMD="false"
+  ])
+  AC_MSG_RESULT(${ALT_JAR_CMD})
+  AC_SUBST(ALT_JAR_CMD)
+
   # Finally, set some other options...
 
   # When compiling code to be executed by the Boot JDK, force jdk7 compatibility.
@@ -303,6 +323,9 @@
 
 AC_DEFUN_ONCE([BOOTJDK_SETUP_BOOT_JDK_ARGUMENTS],
 [
+  # Ensure OPENJDK_TARGET_CPU_ARCH has been setup
+  AC_REQUIRE([PLATFORM_SETUP_OPENJDK_BUILD_AND_TARGET])
+
   ##############################################################################
   #
   # Specify options for anything that is run with the Boot JDK.
@@ -325,11 +348,14 @@
   JAVA_FLAGS=$boot_jdk_jvmargs
   AC_SUBST(JAVA_FLAGS)
 
-
   AC_MSG_CHECKING([flags for boot jdk java command for big workloads])
 
   # Starting amount of heap memory.
-  ADD_JVM_ARG_IF_OK([-Xms64M],boot_jdk_jvmargs_big,[$JAVA])
+  if test "x$OPENJDK_BUILD_CPU_ARCH" = "xs390"; then
+    ADD_JVM_ARG_IF_OK([-Xms256M],boot_jdk_jvmargs_big,[$JAVA])
+  else
+    ADD_JVM_ARG_IF_OK([-Xms64M],boot_jdk_jvmargs_big,[$JAVA])
+  fi
 
   # Maximum amount of heap memory.
   # Maximum stack size.
--- a/common/autoconf/build-performance.m4	Thu Nov 05 05:11:01 2020 +0000
+++ b/common/autoconf/build-performance.m4	Tue Nov 10 02:47:04 2020 +0000
@@ -212,7 +212,7 @@
     # 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`
+    HAS_GOOD_CCACHE=`($CCACHE --version | head -n 1 | grep -E "3\.(1\.@<:@456789@:>@|@<:@2-9@:>@)") 2>&AS_MESSAGE_LOG_FD`
     if test "x$HAS_GOOD_CCACHE" = x; then
       AC_MSG_RESULT([no, disabling ccache])
       CCACHE=
--- a/common/autoconf/flags.m4	Thu Nov 05 05:11:01 2020 +0000
+++ b/common/autoconf/flags.m4	Tue Nov 10 02:47:04 2020 +0000
@@ -406,6 +406,23 @@
     AC_SUBST($2CXXSTD_CXXFLAG)
   fi
 
+  #
+  # NOTE: check for -mstackrealign needs to be below potential addition of -m32
+  #
+  if test "x$OPENJDK_TARGET_CPU" = xx86 && test "x$OPENJDK_TARGET_OS" = xmacosx -o \
+                                                "x$OPENJDK_TARGET_OS" = xlinux; then
+    # On 32-bit MacOSX the OS requires C-entry points to be 16 byte aligned.
+    # While waiting for a better solution, the current workaround is to use -mstackrealign
+    # This is also required on Linux systems which use libraries compiled with SSE instructions
+    REALIGN_CFLAG="-mstackrealign"
+    FLAGS_COMPILER_CHECK_ARGUMENTS([$REALIGN_CFLAG -Werror], [],
+      AC_MSG_ERROR([The selected compiler $CXX does not support -mstackrealign! Try to put another compiler in the path.])
+    )
+    CFLAGS_JDK="${CFLAGS_JDK} ${REALIGN_CFLAG}"
+    CXXFLAGS_JDK="${CXXFLAGS_JDK} ${REALIGN_CFLAG}"
+    AC_SUBST([REALIGN_CFLAG])
+  fi
+
   if test "x$CFLAGS" != "x${ADDED_CFLAGS}"; then
     AC_MSG_WARN([Ignoring CFLAGS($CFLAGS) found in environment. Use --with-extra-cflags])
   fi
@@ -461,6 +478,7 @@
   # CXXFLAGS_JDK and CCXXFLAGS_JDK (common to C and CXX?)
   if test "x$TOOLCHAIN_TYPE" = xgcc; then
     # these options are used for both C and C++ compiles
+    CFLAGS_WARNINGS_ARE_ERRORS="-Werror"
     CCXXFLAGS_JDK="$CCXXFLAGS $CCXXFLAGS_JDK -Wall -Wno-parentheses -Wextra -Wno-unused -Wno-unused-parameter -Wformat=2 \
         -pipe -fstack-protector -D_GNU_SOURCE -D_REENTRANT -D_LARGEFILE64_SOURCE"
     case $OPENJDK_TARGET_CPU_ARCH in
@@ -476,6 +494,12 @@
         CFLAGS_JDK="${CFLAGS_JDK} -fno-strict-aliasing"
         ;;
     esac
+    
+    FLAGS_COMPILER_CHECK_ARGUMENTS([-ffp-contract=off -Werror],
+                                   [FP_CONTRACT_SUPPORTED="true"],
+                                   [FP_CONTRACT_SUPPORTED="false"])
+    AC_SUBST([FP_CONTRACT_SUPPORTED])
+
     TOOLCHAIN_CHECK_COMPILER_VERSION(6, FLAGS_SETUP_GCC6_COMPILER_FLAGS)
 
     # Check that the compiler supports -ffp-contract=off flag
@@ -509,6 +533,7 @@
       FDLIBM_CFLAGS="$COMPILER_FP_CONTRACT_OFF_FLAG"
     fi
   elif test "x$TOOLCHAIN_TYPE" = xsolstudio; then
+    CFLAGS_WARNINGS_ARE_ERRORS="-errtags -errwarn=%all"
     CCXXFLAGS_JDK="$CCXXFLAGS $CCXXFLAGS_JDK -DTRACING -DMACRO_MEMSYS_OPS -DBREAKPTS"
     if test "x$OPENJDK_TARGET_CPU_ARCH" = xx86; then
       CCXXFLAGS_JDK="$CCXXFLAGS_JDK -DcpuIntel -Di586 -D$OPENJDK_TARGET_CPU_LEGACY_LIB"
@@ -521,6 +546,7 @@
     CFLAGS_JDK="$CFLAGS_JDK -D_GNU_SOURCE -D_REENTRANT -D_LARGEFILE64_SOURCE -DSTDC"
     CXXFLAGS_JDK="$CXXFLAGS_JDK -D_GNU_SOURCE -D_REENTRANT -D_LARGEFILE64_SOURCE -DSTDC"
   elif test "x$TOOLCHAIN_TYPE" = xmicrosoft; then
+    CFLAGS_WARNINGS_ARE_ERRORS="-WX"
     CCXXFLAGS_JDK="$CCXXFLAGS $CCXXFLAGS_JDK \
         -Zi -MD -Zc:wchar_t- -W3 -wd4800 \
         -DWIN32_LEAN_AND_MEAN \
@@ -552,7 +578,6 @@
       C_O_FLAG_NORM="$C_O_FLAG_NORM"
       CXX_O_FLAG_HI="$CXX_O_FLAG_NORM"
       CXX_O_FLAG_NORM="$CXX_O_FLAG_NORM"
-      JAVAC_FLAGS="$JAVAC_FLAGS -g"
       ;;
     slowdebug )
       CFLAGS_JDK="$CFLAGS_JDK $CFLAGS_DEBUG_SYMBOLS"
@@ -561,9 +586,12 @@
       C_O_FLAG_NORM="$C_O_FLAG_NONE"
       CXX_O_FLAG_HI="$CXX_O_FLAG_NONE"
       CXX_O_FLAG_NORM="$CXX_O_FLAG_NONE"
-      JAVAC_FLAGS="$JAVAC_FLAGS -g"
       ;;
   esac
+  if test "x$JAVA_DEBUG_SYMBOLS" = "xyes"; then
+     JAVAC_FLAGS="$JAVAC_FLAGS -g"
+  fi
+  AC_SUBST(CFLAGS_WARNINGS_ARE_ERRORS)
 
   # Setup LP64
   CCXXFLAGS_JDK="$CCXXFLAGS_JDK $ADD_LP64"
@@ -857,6 +885,24 @@
       [COMPILER_SUPPORTS_TARGET_BITS_FLAG=true],
       [COMPILER_SUPPORTS_TARGET_BITS_FLAG=false])
   AC_SUBST(COMPILER_SUPPORTS_TARGET_BITS_FLAG)
+
+  AC_ARG_ENABLE([warnings-as-errors], [AS_HELP_STRING([--disable-warnings-as-errors],
+      [consider native warnings to be an error @<:@disabled@:>@])])
+
+  AC_MSG_CHECKING([if native warnings are errors])
+  if test "x$enable_warnings_as_errors" = "xyes"; then
+    AC_MSG_RESULT([yes (explicitly set)])
+    WARNINGS_AS_ERRORS=true
+  elif test "x$enable_warnings_as_errors" = "xno"; then
+    AC_MSG_RESULT([no])
+    WARNINGS_AS_ERRORS=false
+  elif test "x$enable_warnings_as_errors" = "x"; then
+    AC_MSG_RESULT([no (default)])
+    WARNINGS_AS_ERRORS=false
+  else
+    AC_MSG_ERROR([--enable-warnings-as-errors accepts no argument])
+  fi
+  AC_SUBST(WARNINGS_AS_ERRORS)
 ])
 
 AC_DEFUN_ONCE([FLAGS_SETUP_GCC6_COMPILER_FLAGS],
--- a/common/autoconf/generated-configure.sh	Thu Nov 05 05:11:01 2020 +0000
+++ b/common/autoconf/generated-configure.sh	Tue Nov 10 02:47:04 2020 +0000
@@ -651,10 +651,27 @@
 LIBFFI_LIBS
 LIBFFI_CFLAGS
 STATIC_CXX_SETTING
+USE_EXTERNAL_SCTP
+SCTP_LIBS
+SCTP_CFLAGS
+USE_EXTERNAL_PCSC
+PCSC_LIBS
+PCSC_CFLAGS
+USE_EXTERNAL_KRB5
+KRB5_LIBS
+KRB5_CFLAGS
+IMPROVED_FONT_RENDERING_SUPPORT
+FONTCONFIG_LIBS
 LIBDL
 LIBM
 LIBZIP_CAN_USE_MMAP
 USE_EXTERNAL_LIBZ
+USE_EXTERNAL_LIBPNG
+PNG_LIBS
+PNG_CFLAGS
+USE_EXTERNAL_LCMS
+LCMS_LIBS
+LCMS_CFLAGS
 USE_EXTERNAL_LIBGIF
 USE_EXTERNAL_LIBJPEG
 FONTCONFIG_CFLAGS
@@ -674,6 +691,7 @@
 DEBUG_BINARIES
 STRIP_POLICY
 ENABLE_DEBUG_SYMBOLS
+WARNINGS_AS_ERRORS
 COMPILER_SUPPORTS_TARGET_BITS_FLAG
 ZERO_ARCHFLAG
 LDFLAGS_CXX_JDK
@@ -686,13 +704,16 @@
 CFLAGS_JDKEXE
 CFLAGS_JDKLIB
 MACOSX_VERSION_MIN
+CFLAGS_WARNINGS_ARE_ERRORS
 FDLIBM_CFLAGS
 NO_LIFETIME_DSE_CFLAG
 NO_DELETE_NULL_POINTER_CHECKS_CFLAG
+FP_CONTRACT_SUPPORTED
 LEGACY_EXTRA_ASFLAGS
 LEGACY_EXTRA_LDFLAGS
 LEGACY_EXTRA_CXXFLAGS
 LEGACY_EXTRA_CFLAGS
+REALIGN_CFLAG
 CXXSTD_CXXFLAG
 CXX_O_FLAG_NONE
 CXX_O_FLAG_NORM
@@ -818,6 +839,7 @@
 BOOT_JDK_BITS
 JAVAC_FLAGS
 BOOT_JDK_SOURCETARGET
+ALT_JAR_CMD
 BOOT_JDK
 BOOT_TOOLSJAR
 BOOT_RTJAR
@@ -849,6 +871,7 @@
 UNLIMITED_CRYPTO
 CACERTS_FILE
 TEST_IN_BUILD
+BUILD_HEADFUL
 BUILD_HEADLESS
 SUPPORT_HEADFUL
 SUPPORT_HEADLESS
@@ -1044,6 +1067,7 @@
 with_jvm_variants
 enable_debug
 with_debug_level
+with_java_debug_symbols
 with_devkit
 with_sys_root
 with_sysroot
@@ -1071,6 +1095,7 @@
 with_vendor_vm_bug_url
 with_copyright_year
 with_boot_jdk
+with_alt_jar
 with_boot_jdk_jvmargs
 with_add_source_root
 with_override_source_root
@@ -1090,6 +1115,7 @@
 with_extra_cxxflags
 with_extra_ldflags
 with_extra_asflags
+enable_warnings_as_errors
 enable_debug_symbols
 enable_zip_debug_info
 with_native_debug_symbols
@@ -1107,8 +1133,15 @@
 with_alsa_lib
 with_fontconfig
 with_fontconfig_include
+with_libjpeg
 with_giflib
+with_lcms
+with_libpng
 with_zlib
+enable_improved_font_rendering
+enable_system_kerberos
+enable_system_pcsc
+enable_system_sctp
 with_stdc__lib
 with_msvcr_dll
 with_msvcp_dll
@@ -1215,6 +1248,18 @@
 FREETYPE_LIBS
 ALSA_CFLAGS
 ALSA_LIBS
+LCMS_CFLAGS
+LCMS_LIBS
+PNG_CFLAGS
+PNG_LIBS
+FONTCONFIG_CFLAGS
+FONTCONFIG_LIBS
+KRB5_CFLAGS
+KRB5_LIBS
+PCSC_CFLAGS
+PCSC_LIBS
+SCTP_CFLAGS
+SCTP_LIBS
 LIBFFI_CFLAGS
 LIBFFI_LIBS
 CCACHE'
@@ -1858,6 +1903,8 @@
   --enable-unlimited-crypto
                           Enable unlimited crypto policy [disabled]
   --disable-jfr           Disable Java Flight Recorder support [enabled]
+  --disable-warnings-as-errors
+                          consider native warnings to be an error [disabled]
   --disable-debug-symbols disable generation of debug symbols [enabled]
   --disable-zip-debug-info
                           disable zipping of debug-info files [enabled]
@@ -1868,6 +1915,14 @@
                           disable bundling of the freetype library with the
                           build result [enabled on Windows or when using
                           --with-freetype, disabled otherwise]
+  --enable-improved-font-rendering
+                          build with fontconfig-enhanced font rendering
+                          [disabled]
+  --enable-system-kerberos
+                          use the system Kerberos to get the cache location
+                          [disabled]
+  --enable-system-pcsc    use the system libpcsclite [disabled]
+  --enable-system-sctp    use the system SCTP library [disabled]
   --enable-sjavac         use sjavac to do fast incremental compiles
                           [disabled]
   --disable-precompiled-headers
@@ -1889,6 +1944,9 @@
                           [server]
   --with-debug-level      set the debug level (release, fastdebug, slowdebug)
                           [release]
+  --with-java-debug-symbols
+                          set the status of Java debug symbols (yes, no,
+                          default) [default]
   --with-devkit           use this devkit for compilers, tools and resources
   --with-sys-root         alias for --with-sysroot for backwards compatability
   --with-sysroot          use this directory as sysroot)
@@ -1927,6 +1985,8 @@
                           crashes [not specified]
   --with-copyright-year   Set copyright year value for build [current year]
   --with-boot-jdk         path to Boot JDK (used to bootstrap build) [probed]
+  --with-alt-jar=PATH     specify the location of an alternate jar binary to
+                          use for building
   --with-boot-jdk-jvmargs specify JVM arguments to be passed to all
                           invocations of the Boot JDK, overriding the default
                           values, e.g --with-boot-jdk-jvmargs="-Xmx8G
@@ -1989,8 +2049,14 @@
                           (expecting the headers under PATH/include)
   --with-fontconfig-include
                           specify directory for the fontconfig include files
+  --with-libjpeg          use libjpeg from build system or OpenJDK source
+                          (system, bundled) [bundled]
   --with-giflib           use giflib from build system or OpenJDK source
                           (system, bundled) [bundled]
+  --with-lcms             use lcms2 from build system or OpenJDK source
+                          (system, bundled) [bundled]
+  --with-libpng           use libpng from build system or OpenJDK source
+                          (system, bundled) [bundled]
   --with-zlib             use zlib from build system or OpenJDK source
                           (system, bundled) [bundled]
   --with-stdc++lib=<static>,<dynamic>,<default>
@@ -2111,6 +2177,20 @@
               linker flags for FREETYPE, overriding pkg-config
   ALSA_CFLAGS C compiler flags for ALSA, overriding pkg-config
   ALSA_LIBS   linker flags for ALSA, overriding pkg-config
+  LCMS_CFLAGS C compiler flags for LCMS, overriding pkg-config
+  LCMS_LIBS   linker flags for LCMS, overriding pkg-config
+  PNG_CFLAGS  C compiler flags for PNG, overriding pkg-config
+  PNG_LIBS    linker flags for PNG, overriding pkg-config
+  FONTCONFIG_CFLAGS
+              C compiler flags for FONTCONFIG, overriding pkg-config
+  FONTCONFIG_LIBS
+              linker flags for FONTCONFIG, overriding pkg-config
+  KRB5_CFLAGS C compiler flags for KRB5, overriding pkg-config
+  KRB5_LIBS   linker flags for KRB5, overriding pkg-config
+  PCSC_CFLAGS C compiler flags for PCSC, overriding pkg-config
+  PCSC_LIBS   linker flags for PCSC, overriding pkg-config
+  SCTP_CFLAGS C compiler flags for the SCTP library
+  SCTP_LIBS   linker flags for the SCTP library, overriding -lsctp
   LIBFFI_CFLAGS
               C compiler flags for LIBFFI, overriding pkg-config
   LIBFFI_LIBS linker flags for LIBFFI, overriding pkg-config
@@ -3593,6 +3673,7 @@
 # ... then the rest
 #
 # Copyright (c) 2011, 2012, Oracle and/or its affiliates. All rights reserved.
+# Copyright 2014 Red Hat, Inc.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -3877,7 +3958,7 @@
     pulse)
       PKGHANDLER_COMMAND="sudo apt-get install libpulse-dev" ;;
     x11)
-      PKGHANDLER_COMMAND="sudo apt-get install libX11-dev libxext-dev libxrender-dev libxtst-dev libxt-dev" ;;
+      PKGHANDLER_COMMAND="sudo apt-get install libX11-dev libxext-dev libxrender-dev libxtst-dev libxt-dev libXcomposite-dev" ;;
     ccache)
       PKGHANDLER_COMMAND="sudo apt-get install ccache" ;;
   esac
@@ -4267,7 +4348,6 @@
 # Setup the JTReg Regression Test Harness.
 
 
-
 #
 # Copyright (c) 2011, 2018, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -4394,7 +4474,7 @@
 #CUSTOM_AUTOCONF_INCLUDE
 
 # Do not change or remove the following line, it is needed for consistency checks:
-DATE_WHEN_GENERATED=1591143270
+DATE_WHEN_GENERATED=1592500545
 
 ###############################################################################
 #
@@ -13644,9 +13724,9 @@
       VAR_CPU_BITS=32
       VAR_CPU_ENDIAN=little
       ;;
-    arm*)
-      VAR_CPU=arm
-      VAR_CPU_ARCH=arm
+    arm*|aarch32)
+      VAR_CPU=aarch32
+      VAR_CPU_ARCH=aarch32
       VAR_CPU_BITS=32
       VAR_CPU_ENDIAN=little
       ;;
@@ -13723,6 +13803,14 @@
 $as_echo_n "checking openjdk-build os-cpu... " >&6; }
   { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OPENJDK_BUILD_OS-$OPENJDK_BUILD_CPU" >&5
 $as_echo "$OPENJDK_BUILD_OS-$OPENJDK_BUILD_CPU" >&6; }
+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking openjdk-build bit-size" >&5
+$as_echo_n "checking openjdk-build bit-size... " >&6; }
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OPENJDK_BUILD_CPU_BITS" >&5
+$as_echo "$OPENJDK_BUILD_CPU_BITS" >&6; }
+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking openjdk-build endianness" >&5
+$as_echo_n "checking openjdk-build endianness... " >&6; }
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OPENJDK_BUILD_CPU_ENDIAN" >&5
+$as_echo "$OPENJDK_BUILD_CPU_ENDIAN" >&6; }
 
   # Convert the autoconf OS/CPU value to our own data, into the VAR_OS/CPU variables.
 
@@ -13782,9 +13870,9 @@
       VAR_CPU_BITS=32
       VAR_CPU_ENDIAN=little
       ;;
-    arm*)
-      VAR_CPU=arm
-      VAR_CPU_ARCH=arm
+    arm*|aarch32)
+      VAR_CPU=aarch32
+      VAR_CPU_ARCH=aarch32
       VAR_CPU_BITS=32
       VAR_CPU_ENDIAN=little
       ;;
@@ -13861,6 +13949,14 @@
 $as_echo_n "checking openjdk-target os-cpu... " >&6; }
   { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OPENJDK_TARGET_OS-$OPENJDK_TARGET_CPU" >&5
 $as_echo "$OPENJDK_TARGET_OS-$OPENJDK_TARGET_CPU" >&6; }
+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking openjdk-target bit-size" >&5
+$as_echo_n "checking openjdk-target bit-size... " >&6; }
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OPENJDK_TARGET_CPU_BITS" >&5
+$as_echo "$OPENJDK_TARGET_CPU_BITS" >&6; }
+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking openjdk-target endianness" >&5
+$as_echo_n "checking openjdk-target endianness... " >&6; }
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OPENJDK_TARGET_CPU_ENDIAN" >&5
+$as_echo "$OPENJDK_TARGET_CPU_ENDIAN" >&6; }
 
 
 
@@ -13991,6 +14087,8 @@
   elif test "x$OPENJDK_TARGET_OS" != xmacosx && test "x$OPENJDK_TARGET_CPU" = xx86_64; then
     # On all platforms except macosx, we replace x86_64 with amd64.
     OPENJDK_TARGET_CPU_OSARCH="amd64"
+  elif test "x$OPENJDK_TARGET_CPU" = xaarch32; then
+    OPENJDK_TARGET_CPU_OSARCH="arm"
   fi
 
 
@@ -14566,7 +14664,11 @@
 
 
   if test "x$with_jvm_variants" = x; then
-    with_jvm_variants="server"
+    if test "x$OPENJDK_TARGET_CPU" = xaarch32; then
+      with_jvm_variants="client";
+    else
+      with_jvm_variants="server";
+    fi
   fi
 
   JVM_VARIANTS=",$with_jvm_variants,"
@@ -14630,7 +14732,7 @@
   if test "x$VAR_CPU" = xppc64 -o "x$VAR_CPU" = xppc64le ; then
     INCLUDE_SA=false
   fi
-  if test "x$OPENJDK_TARGET_CPU" = xaarch64; then
+  if test "x$OPENJDK_TARGET_CPU" = xaarch32; then
     INCLUDE_SA=false
   fi
 
@@ -14683,6 +14785,24 @@
     as_fn_error $? "Allowed debug levels are: release, fastdebug and slowdebug" "$LINENO" 5
   fi
 
+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to enable Java debug symbols" >&5
+$as_echo_n "checking whether to enable Java debug symbols... " >&6; }
+
+# Check whether --with-java-debug-symbols was given.
+if test "${with_java_debug_symbols+set}" = set; then :
+  withval=$with_java_debug_symbols; JAVA_DEBUG_SYMBOLS="${withval}"
+else
+  JAVA_DEBUG_SYMBOLS="default"
+fi
+
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $JAVA_DEBUG_SYMBOLS" >&5
+$as_echo "$JAVA_DEBUG_SYMBOLS" >&6; }
+
+  if test "x$JAVA_DEBUG_SYMBOLS" != xyes && \
+      test "x$JAVA_DEBUG_SYMBOLS" != xno && \
+      test "x$JAVA_DEBUG_SYMBOLS" != xdefault; then
+    as_fn_error $? "Allowed Java debug symbol settings are: yes, no, default" "$LINENO" 5
+  fi
 
   ###############################################################################
   #
@@ -14716,6 +14836,16 @@
       ;;
   esac
 
+  # Override DEBUG_CLASSFILES if JAVA_DEBUG_SYMBOLS is set to yes or no
+  case $JAVA_DEBUG_SYMBOLS in
+    yes )
+      DEBUG_CLASSFILES="true"
+      ;;
+    no )
+      DEBUG_CLASSFILES="false"
+      ;;
+  esac
+
   #####
   # Generate the legacy makefile targets for hotspot.
   # The hotspot api for selecting the build artifacts, really, needs to be improved.
@@ -19745,7 +19875,7 @@
 
   if test "x$SUPPORT_HEADFUL" = xno; then
     # Thus we are building headless only.
-    BUILD_HEADLESS="BUILD_HEADLESS:=true"
+    BUILD_HEADFUL="BUILD_HEADLESS_ONLY:=true"
     headful_msg="headless only"
   fi
 
@@ -19756,6 +19886,7 @@
 
 
 
+
   # Control wether Hotspot runs Queens test after build.
   # Check whether --enable-hotspot-test-in-build was given.
 if test "${enable_hotspot_test_in_build+set}" = set; then :
@@ -24800,6 +24931,31 @@
 $as_echo "ok" >&6; }
 
 
+  # Allow JAR command to be overridden
+  # Doing so allows a faster native jar program to be used
+  # when building Zero
+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for an alternate jar command" >&5
+$as_echo_n "checking for an alternate jar command... " >&6; }
+
+# Check whether --with-alt-jar was given.
+if test "${with_alt_jar+set}" = set; then :
+  withval=$with_alt_jar;
+    if test "x${withval}" != xyes -a "x${withval}" != xno; then
+      ALT_JAR_CMD=${withval}
+    else
+      ALT_JAR_CMD="false"
+    fi
+
+else
+
+    ALT_JAR_CMD="false"
+
+fi
+
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: ${ALT_JAR_CMD}" >&5
+$as_echo "${ALT_JAR_CMD}" >&6; }
+
+
   # Finally, set some other options...
 
   # When compiling code to be executed by the Boot JDK, force jdk7 compatibility.
@@ -24820,6 +24976,9 @@
 
 
 
+  # Ensure OPENJDK_TARGET_CPU_ARCH has been setup
+
+
   ##############################################################################
   #
   # Specify options for anything that is run with the Boot JDK.
@@ -24875,11 +25034,27 @@
   JAVA_FLAGS=$boot_jdk_jvmargs
 
 
-
   { $as_echo "$as_me:${as_lineno-$LINENO}: checking flags for boot jdk java command for big workloads" >&5
 $as_echo_n "checking flags for boot jdk java command for big workloads... " >&6; }
 
   # Starting amount of heap memory.
+  if test "x$OPENJDK_BUILD_CPU_ARCH" = "xs390"; then
+
+  $ECHO "Check if jvm arg is ok: -Xms256M" >&5
+  $ECHO "Command: $JAVA -Xms256M -version" >&5
+  OUTPUT=`$JAVA -Xms256M -version 2>&1`
+  FOUND_WARN=`$ECHO "$OUTPUT" | grep -i warn`
+  FOUND_VERSION=`$ECHO $OUTPUT | grep " version \""`
+  if test "x$FOUND_VERSION" != x && test "x$FOUND_WARN" = x; then
+    boot_jdk_jvmargs_big="$boot_jdk_jvmargs_big -Xms256M"
+    JVM_ARG_OK=true
+  else
+    $ECHO "Arg failed:" >&5
+    $ECHO "$OUTPUT" >&5
+    JVM_ARG_OK=false
+  fi
+
+  else
 
   $ECHO "Check if jvm arg is ok: -Xms64M" >&5
   $ECHO "Command: $JAVA -Xms64M -version" >&5
@@ -24895,6 +25070,7 @@
     JVM_ARG_OK=false
   fi
 
+  fi
 
   # Maximum amount of heap memory.
   # Maximum stack size.
@@ -27995,7 +28171,7 @@
     #     warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
     COMPILER_VERSION_OUTPUT=`$COMPILER --version 2>&1`
     # Check that this is likely to be GCC.
-    $ECHO "$COMPILER_VERSION_OUTPUT" | $GREP "Free Software Foundation" > /dev/null
+    $ECHO "$COMPILER_VERSION_OUTPUT" | $GREP -E "^(gcc|g\+\+|distcc)" >&5 2>&1
     if test $? -ne 0; then
       { $as_echo "$as_me:${as_lineno-$LINENO}: The $COMPILER_NAME compiler (located as $COMPILER) does not seem to be the required $TOOLCHAIN_TYPE compiler." >&5
 $as_echo "$as_me: The $COMPILER_NAME compiler (located as $COMPILER) does not seem to be the required $TOOLCHAIN_TYPE compiler." >&6;}
@@ -29736,7 +29912,7 @@
     #     warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
     COMPILER_VERSION_OUTPUT=`$COMPILER --version 2>&1`
     # Check that this is likely to be GCC.
-    $ECHO "$COMPILER_VERSION_OUTPUT" | $GREP "Free Software Foundation" > /dev/null
+    $ECHO "$COMPILER_VERSION_OUTPUT" | $GREP -E "^(gcc|g\+\+|distcc)" >&5 2>&1
     if test $? -ne 0; then
       { $as_echo "$as_me:${as_lineno-$LINENO}: The $COMPILER_NAME compiler (located as $COMPILER) does not seem to be the required $TOOLCHAIN_TYPE compiler." >&5
 $as_echo "$as_me: The $COMPILER_NAME compiler (located as $COMPILER) does not seem to be the required $TOOLCHAIN_TYPE compiler." >&6;}
@@ -41479,6 +41655,7 @@
 
 
 
+
   # Special extras...
   if test "x$TOOLCHAIN_TYPE" = xsolstudio; then
     if test "x$OPENJDK_TARGET_CPU_ARCH" = "xsparc"; then
@@ -41541,6 +41718,114 @@
 
   fi
 
+  #
+  # NOTE: check for -mstackrealign needs to be below potential addition of -m32
+  #
+  if test "x$OPENJDK_TARGET_CPU" = xx86 && test "x$OPENJDK_TARGET_OS" = xmacosx -o \
+                                                "x$OPENJDK_TARGET_OS" = xlinux; then
+    # On 32-bit MacOSX the OS requires C-entry points to be 16 byte aligned.
+    # While waiting for a better solution, the current workaround is to use -mstackrealign
+    # This is also required on Linux systems which use libraries compiled with SSE instructions
+    REALIGN_CFLAG="-mstackrealign"
+
+
+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if the C compiler supports \"$REALIGN_CFLAG -Werror\"" >&5
+$as_echo_n "checking if the C compiler supports \"$REALIGN_CFLAG -Werror\"... " >&6; }
+  supports=yes
+
+  saved_cflags="$CFLAGS"
+  CFLAGS="$CFLAGS $REALIGN_CFLAG -Werror"
+  ac_ext=c
+ac_cpp='$CPP $CPPFLAGS'
+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compiler_gnu=$ac_cv_c_compiler_gnu
+
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+int i;
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+
+else
+  supports=no
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+  ac_ext=cpp
+ac_cpp='$CXXCPP $CPPFLAGS'
+ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
+
+  CFLAGS="$saved_cflags"
+
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $supports" >&5
+$as_echo "$supports" >&6; }
+  if test "x$supports" = "xyes" ; then
+    C_COMP_SUPPORTS="yes"
+  else
+    C_COMP_SUPPORTS="no"
+  fi
+
+
+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if the C++ compiler supports \"$REALIGN_CFLAG -Werror\"" >&5
+$as_echo_n "checking if the C++ compiler supports \"$REALIGN_CFLAG -Werror\"... " >&6; }
+  supports=yes
+
+  saved_cxxflags="$CXXFLAGS"
+  CXXFLAGS="$CXXFLAG $REALIGN_CFLAG -Werror"
+  ac_ext=cpp
+ac_cpp='$CXXCPP $CPPFLAGS'
+ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
+
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+int i;
+_ACEOF
+if ac_fn_cxx_try_compile "$LINENO"; then :
+
+else
+  supports=no
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+  ac_ext=cpp
+ac_cpp='$CXXCPP $CPPFLAGS'
+ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
+
+  CXXFLAGS="$saved_cxxflags"
+
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $supports" >&5
+$as_echo "$supports" >&6; }
+  if test "x$supports" = "xyes" ; then
+    CXX_COMP_SUPPORTS="yes"
+  else
+    CXX_COMP_SUPPORTS="no"
+  fi
+
+
+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if both compilers support \"$REALIGN_CFLAG -Werror\"" >&5
+$as_echo_n "checking if both compilers support \"$REALIGN_CFLAG -Werror\"... " >&6; }
+  supports=no
+  if test "x$C_COMP_SUPPORTS" = "xyes" -a "x$CXX_COMP_SUPPORTS" = "xyes"; then supports=yes; fi
+
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $supports" >&5
+$as_echo "$supports" >&6; }
+  if test "x$supports" = "xyes" ; then
+    :
+  else
+    as_fn_error $? "The selected compiler $CXX does not support -mstackrealign! Try to put another compiler in the path." "$LINENO" 5
+
+  fi
+
+    CFLAGS_JDK="${CFLAGS_JDK} ${REALIGN_CFLAG}"
+    CXXFLAGS_JDK="${CXXFLAGS_JDK} ${REALIGN_CFLAG}"
+
+  fi
+
   if test "x$CFLAGS" != "x${ADDED_CFLAGS}"; then
     { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Ignoring CFLAGS($CFLAGS) found in environment. Use --with-extra-cflags" >&5
 $as_echo "$as_me: WARNING: Ignoring CFLAGS($CFLAGS) found in environment. Use --with-extra-cflags" >&2;}
@@ -41616,6 +41901,7 @@
   # CXXFLAGS_JDK and CCXXFLAGS_JDK (common to C and CXX?)
   if test "x$TOOLCHAIN_TYPE" = xgcc; then
     # these options are used for both C and C++ compiles
+    CFLAGS_WARNINGS_ARE_ERRORS="-Werror"
     CCXXFLAGS_JDK="$CCXXFLAGS $CCXXFLAGS_JDK -Wall -Wno-parentheses -Wextra -Wno-unused -Wno-unused-parameter -Wformat=2 \
         -pipe -fstack-protector -D_GNU_SOURCE -D_REENTRANT -D_LARGEFILE64_SOURCE"
     case $OPENJDK_TARGET_CPU_ARCH in
@@ -41632,6 +41918,102 @@
         ;;
     esac
 
+
+
+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if the C compiler supports \"-ffp-contract=off -Werror\"" >&5
+$as_echo_n "checking if the C compiler supports \"-ffp-contract=off -Werror\"... " >&6; }
+  supports=yes
+
+  saved_cflags="$CFLAGS"
+  CFLAGS="$CFLAGS -ffp-contract=off -Werror"
+  ac_ext=c
+ac_cpp='$CPP $CPPFLAGS'
+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compiler_gnu=$ac_cv_c_compiler_gnu
+
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+int i;
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+
+else
+  supports=no
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+  ac_ext=cpp
+ac_cpp='$CXXCPP $CPPFLAGS'
+ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
+
+  CFLAGS="$saved_cflags"
+
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $supports" >&5
+$as_echo "$supports" >&6; }
+  if test "x$supports" = "xyes" ; then
+    C_COMP_SUPPORTS="yes"
+  else
+    C_COMP_SUPPORTS="no"
+  fi
+
+
+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if the C++ compiler supports \"-ffp-contract=off -Werror\"" >&5
+$as_echo_n "checking if the C++ compiler supports \"-ffp-contract=off -Werror\"... " >&6; }
+  supports=yes
+
+  saved_cxxflags="$CXXFLAGS"
+  CXXFLAGS="$CXXFLAG -ffp-contract=off -Werror"
+  ac_ext=cpp
+ac_cpp='$CXXCPP $CPPFLAGS'
+ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
+
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+int i;
+_ACEOF
+if ac_fn_cxx_try_compile "$LINENO"; then :
+
+else
+  supports=no
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+  ac_ext=cpp
+ac_cpp='$CXXCPP $CPPFLAGS'
+ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
+
+  CXXFLAGS="$saved_cxxflags"
+
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $supports" >&5
+$as_echo "$supports" >&6; }
+  if test "x$supports" = "xyes" ; then
+    CXX_COMP_SUPPORTS="yes"
+  else
+    CXX_COMP_SUPPORTS="no"
+  fi
+
+
+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if both compilers support \"-ffp-contract=off -Werror\"" >&5
+$as_echo_n "checking if both compilers support \"-ffp-contract=off -Werror\"... " >&6; }
+  supports=no
+  if test "x$C_COMP_SUPPORTS" = "xyes" -a "x$CXX_COMP_SUPPORTS" = "xyes"; then supports=yes; fi
+
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $supports" >&5
+$as_echo "$supports" >&6; }
+  if test "x$supports" = "xyes" ; then
+    FP_CONTRACT_SUPPORTED="true"
+  else
+    FP_CONTRACT_SUPPORTED="false"
+  fi
+
+
+
+
   REFERENCE_VERSION=6
 
   if  [[ "$REFERENCE_VERSION" =~ (.*\.){3} ]] ; then
@@ -41666,8 +42048,7 @@
 ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
 ac_compiler_gnu=$ac_cv_c_compiler_gnu
 
-
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 int i;
 _ACEOF
@@ -41992,6 +42373,7 @@
       FDLIBM_CFLAGS="$COMPILER_FP_CONTRACT_OFF_FLAG"
     fi
   elif test "x$TOOLCHAIN_TYPE" = xsolstudio; then
+    CFLAGS_WARNINGS_ARE_ERRORS="-errtags -errwarn=%all"
     CCXXFLAGS_JDK="$CCXXFLAGS $CCXXFLAGS_JDK -DTRACING -DMACRO_MEMSYS_OPS -DBREAKPTS"
     if test "x$OPENJDK_TARGET_CPU_ARCH" = xx86; then
       CCXXFLAGS_JDK="$CCXXFLAGS_JDK -DcpuIntel -Di586 -D$OPENJDK_TARGET_CPU_LEGACY_LIB"
@@ -42004,6 +42386,7 @@
     CFLAGS_JDK="$CFLAGS_JDK -D_GNU_SOURCE -D_REENTRANT -D_LARGEFILE64_SOURCE -DSTDC"
     CXXFLAGS_JDK="$CXXFLAGS_JDK -D_GNU_SOURCE -D_REENTRANT -D_LARGEFILE64_SOURCE -DSTDC"
   elif test "x$TOOLCHAIN_TYPE" = xmicrosoft; then
+    CFLAGS_WARNINGS_ARE_ERRORS="-WX"
     CCXXFLAGS_JDK="$CCXXFLAGS $CCXXFLAGS_JDK \
         -Zi -MD -Zc:wchar_t- -W3 -wd4800 \
         -DWIN32_LEAN_AND_MEAN \
@@ -42035,7 +42418,6 @@
       C_O_FLAG_NORM="$C_O_FLAG_NORM"
       CXX_O_FLAG_HI="$CXX_O_FLAG_NORM"
       CXX_O_FLAG_NORM="$CXX_O_FLAG_NORM"
-      JAVAC_FLAGS="$JAVAC_FLAGS -g"
       ;;
     slowdebug )
       CFLAGS_JDK="$CFLAGS_JDK $CFLAGS_DEBUG_SYMBOLS"
@@ -42044,9 +42426,12 @@
       C_O_FLAG_NORM="$C_O_FLAG_NONE"
       CXX_O_FLAG_HI="$CXX_O_FLAG_NONE"
       CXX_O_FLAG_NORM="$CXX_O_FLAG_NONE"
-      JAVAC_FLAGS="$JAVAC_FLAGS -g"
       ;;
   esac
+  if test "x$JAVA_DEBUG_SYMBOLS" = "xyes"; then
+     JAVAC_FLAGS="$JAVAC_FLAGS -g"
+  fi
+
 
   # Setup LP64
   CCXXFLAGS_JDK="$CCXXFLAGS_JDK $ADD_LP64"
@@ -42445,6 +42830,31 @@
 
 
 
+  # Check whether --enable-warnings-as-errors was given.
+if test "${enable_warnings_as_errors+set}" = set; then :
+  enableval=$enable_warnings_as_errors;
+fi
+
+
+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if native warnings are errors" >&5
+$as_echo_n "checking if native warnings are errors... " >&6; }
+  if test "x$enable_warnings_as_errors" = "xyes"; then
+    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes (explicitly set)" >&5
+$as_echo "yes (explicitly set)" >&6; }
+    WARNINGS_AS_ERRORS=true
+  elif test "x$enable_warnings_as_errors" = "xno"; then
+    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+    WARNINGS_AS_ERRORS=false
+  elif test "x$enable_warnings_as_errors" = "x"; then
+    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no (default)" >&5
+$as_echo "no (default)" >&6; }
+    WARNINGS_AS_ERRORS=false
+  else
+    as_fn_error $? "--enable-warnings-as-errors accepts no argument" "$LINENO" 5
+  fi
+
+
 
 # Setup debug symbols (need objcopy from the toolchain for that)
 
@@ -42601,6 +43011,9 @@
 
 
 
+
+
+
 ###############################################################################
 #
 # Check dependencies for external and internal libraries.
@@ -43539,7 +43952,7 @@
   CFLAGS="$CFLAGS $X_CFLAGS"
 
   # Need to include Xlib.h and Xutil.h to avoid "present but cannot be compiled" warnings on Solaris 10
-  for ac_header in X11/extensions/shape.h X11/extensions/Xrender.h X11/extensions/XTest.h X11/Intrinsic.h
+  for ac_header in X11/extensions/shape.h X11/extensions/Xrender.h X11/extensions/XTest.h X11/Intrinsic.h X11/extensions/Xcomposite.h
 do :
   as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
 ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "
@@ -43599,7 +44012,7 @@
     fi
   fi
 
-    as_fn_error $? "Could not find all X11 headers (shape.h Xrender.h XTest.h Intrinsic.h). $HELP_MSG" "$LINENO" 5
+    as_fn_error $? "Could not find all X11 headers (shape.h Xrender.h XTest.h Intrinsic.h Xcomposite.h). $HELP_MSG" "$LINENO" 5
   fi
 
 
@@ -48150,10 +48563,43 @@
   # Check for the jpeg library
   #
 
-  USE_EXTERNAL_LIBJPEG=true
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for main in -ljpeg" >&5
-$as_echo_n "checking for main in -ljpeg... " >&6; }
-if ${ac_cv_lib_jpeg_main+:} false; then :
+
+# Check whether --with-libjpeg was given.
+if test "${with_libjpeg+set}" = set; then :
+  withval=$with_libjpeg;
+fi
+
+
+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for which libjpeg to use" >&5
+$as_echo_n "checking for which libjpeg to use... " >&6; }
+
+  # default is bundled
+  DEFAULT_LIBJPEG=bundled
+
+  #
+  # if user didn't specify, use DEFAULT_LIBJPEG
+  #
+  if test "x${with_libjpeg}" = "x"; then
+    with_libjpeg=${DEFAULT_LIBJPEG}
+  fi
+
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: ${with_libjpeg}" >&5
+$as_echo "${with_libjpeg}" >&6; }
+
+  if test "x${with_libjpeg}" = "xbundled"; then
+    USE_EXTERNAL_LIBJPEG=false
+  elif test "x${with_libjpeg}" = "xsystem"; then
+    ac_fn_cxx_check_header_mongrel "$LINENO" "jpeglib.h" "ac_cv_header_jpeglib_h" "$ac_includes_default"
+if test "x$ac_cv_header_jpeglib_h" = xyes; then :
+
+else
+   as_fn_error $? "--with-libjpeg=system specified, but jpeglib.h not found!" "$LINENO" 5
+fi
+
+
+    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for jpeg_CreateDecompress in -ljpeg" >&5
+$as_echo_n "checking for jpeg_CreateDecompress in -ljpeg... " >&6; }
+if ${ac_cv_lib_jpeg_jpeg_CreateDecompress+:} false; then :
   $as_echo_n "(cached) " >&6
 else
   ac_check_lib_save_LIBS=$LIBS
@@ -48161,27 +48607,33 @@
 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
-
+/* Override any GCC internal prototype to avoid an error.
+   Use char because int might match the return type of a GCC
+   builtin and then its argument prototype would still apply.  */
+#ifdef __cplusplus
+extern "C"
+#endif
+char jpeg_CreateDecompress ();
 int
 main ()
 {
-return main ();
+return jpeg_CreateDecompress ();
   ;
   return 0;
 }
 _ACEOF
 if ac_fn_cxx_try_link "$LINENO"; then :
-  ac_cv_lib_jpeg_main=yes
-else
-  ac_cv_lib_jpeg_main=no
+  ac_cv_lib_jpeg_jpeg_CreateDecompress=yes
+else
+  ac_cv_lib_jpeg_jpeg_CreateDecompress=no
 fi
 rm -f core conftest.err conftest.$ac_objext \
     conftest$ac_exeext conftest.$ac_ext
 LIBS=$ac_check_lib_save_LIBS
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_jpeg_main" >&5
-$as_echo "$ac_cv_lib_jpeg_main" >&6; }
-if test "x$ac_cv_lib_jpeg_main" = xyes; then :
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_jpeg_jpeg_CreateDecompress" >&5
+$as_echo "$ac_cv_lib_jpeg_jpeg_CreateDecompress" >&6; }
+if test "x$ac_cv_lib_jpeg_jpeg_CreateDecompress" = xyes; then :
   cat >>confdefs.h <<_ACEOF
 #define HAVE_LIBJPEG 1
 _ACEOF
@@ -48189,11 +48641,14 @@
   LIBS="-ljpeg $LIBS"
 
 else
-   USE_EXTERNAL_LIBJPEG=false
-      { $as_echo "$as_me:${as_lineno-$LINENO}: Will use jpeg decoder bundled with the OpenJDK source" >&5
-$as_echo "$as_me: Will use jpeg decoder bundled with the OpenJDK source" >&6;}
-
-fi
+   as_fn_error $? "--with-libjpeg=system specified, but no libjpeg found" "$LINENO" 5
+fi
+
+
+    USE_EXTERNAL_LIBJPEG=true
+  else
+    as_fn_error $? "Invalid use of --with-libjpeg: ${with_libjpeg}, use 'system' or 'bundled'" "$LINENO" 5
+  fi
 
 
 
@@ -48293,6 +48748,227 @@
 
   ###############################################################################
   #
+  # Check for the lcms2 library
+  #
+
+
+# Check whether --with-lcms was given.
+if test "${with_lcms+set}" = set; then :
+  withval=$with_lcms;
+fi
+
+
+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for which lcms to use" >&5
+$as_echo_n "checking for which lcms to use... " >&6; }
+
+  DEFAULT_LCMS=bundled
+
+  #
+  # If user didn't specify, use DEFAULT_LCMS
+  #
+  if test "x${with_lcms}" = "x"; then
+      with_lcms=${DEFAULT_LCMS}
+  fi
+
+  if test "x${with_lcms}" = "xbundled"; then
+    USE_EXTERNAL_LCMS=false
+    { $as_echo "$as_me:${as_lineno-$LINENO}: result: bundled" >&5
+$as_echo "bundled" >&6; }
+  elif test "x${with_lcms}" = "xsystem"; then
+    { $as_echo "$as_me:${as_lineno-$LINENO}: result: system" >&5
+$as_echo "system" >&6; }
+
+pkg_failed=no
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for LCMS" >&5
+$as_echo_n "checking for LCMS... " >&6; }
+
+if test -n "$LCMS_CFLAGS"; then
+    pkg_cv_LCMS_CFLAGS="$LCMS_CFLAGS"
+ elif test -n "$PKG_CONFIG"; then
+    if test -n "$PKG_CONFIG" && \
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"lcms2\""; } >&5
+  ($PKG_CONFIG --exists --print-errors "lcms2") 2>&5
+  ac_status=$?
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
+  pkg_cv_LCMS_CFLAGS=`$PKG_CONFIG --cflags "lcms2" 2>/dev/null`
+else
+  pkg_failed=yes
+fi
+ else
+    pkg_failed=untried
+fi
+if test -n "$LCMS_LIBS"; then
+    pkg_cv_LCMS_LIBS="$LCMS_LIBS"
+ elif test -n "$PKG_CONFIG"; then
+    if test -n "$PKG_CONFIG" && \
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"lcms2\""; } >&5
+  ($PKG_CONFIG --exists --print-errors "lcms2") 2>&5
+  ac_status=$?
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
+  pkg_cv_LCMS_LIBS=`$PKG_CONFIG --libs "lcms2" 2>/dev/null`
+else
+  pkg_failed=yes
+fi
+ else
+    pkg_failed=untried
+fi
+
+
+
+if test $pkg_failed = yes; then
+
+if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
+        _pkg_short_errors_supported=yes
+else
+        _pkg_short_errors_supported=no
+fi
+        if test $_pkg_short_errors_supported = yes; then
+	        LCMS_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors "lcms2" 2>&1`
+        else
+	        LCMS_PKG_ERRORS=`$PKG_CONFIG --print-errors "lcms2" 2>&1`
+        fi
+	# Put the nasty error message in config.log where it belongs
+	echo "$LCMS_PKG_ERRORS" >&5
+
+	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+                LCMS_FOUND=no
+elif test $pkg_failed = untried; then
+	LCMS_FOUND=no
+else
+	LCMS_CFLAGS=$pkg_cv_LCMS_CFLAGS
+	LCMS_LIBS=$pkg_cv_LCMS_LIBS
+        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+	LCMS_FOUND=yes
+fi
+    if test "x${LCMS_FOUND}" = "xyes"; then
+      USE_EXTERNAL_LCMS=true
+    else
+      as_fn_error $? "--with-lcms=system specified, but no lcms found!" "$LINENO" 5
+    fi
+  else
+    as_fn_error $? "Invalid value for --with-lcms: ${with_lcms}, use 'system' or 'bundled'" "$LINENO" 5
+  fi
+
+
+
+  ###############################################################################
+  #
+  # Check for the png library
+  #
+
+
+# Check whether --with-libpng was given.
+if test "${with_libpng+set}" = set; then :
+  withval=$with_libpng;
+fi
+
+
+
+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for which libpng to use" >&5
+$as_echo_n "checking for which libpng to use... " >&6; }
+
+  # default is bundled
+  DEFAULT_LIBPNG=bundled
+
+  #
+  # if user didn't specify, use DEFAULT_LIBPNG
+  #
+  if test "x${with_libpng}" = "x"; then
+      with_libpng=${DEFAULT_LIBPNG}
+  fi
+
+  if test "x${with_libpng}" = "xbundled"; then
+      USE_EXTERNAL_LIBPNG=false
+      { $as_echo "$as_me:${as_lineno-$LINENO}: result: bundled" >&5
+$as_echo "bundled" >&6; }
+  elif test "x${with_libpng}" = "xsystem"; then
+
+pkg_failed=no
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for PNG" >&5
+$as_echo_n "checking for PNG... " >&6; }
+
+if test -n "$PNG_CFLAGS"; then
+    pkg_cv_PNG_CFLAGS="$PNG_CFLAGS"
+ elif test -n "$PKG_CONFIG"; then
+    if test -n "$PKG_CONFIG" && \
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libpng\""; } >&5
+  ($PKG_CONFIG --exists --print-errors "libpng") 2>&5
+  ac_status=$?
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
+  pkg_cv_PNG_CFLAGS=`$PKG_CONFIG --cflags "libpng" 2>/dev/null`
+else
+  pkg_failed=yes
+fi
+ else
+    pkg_failed=untried
+fi
+if test -n "$PNG_LIBS"; then
+    pkg_cv_PNG_LIBS="$PNG_LIBS"
+ elif test -n "$PKG_CONFIG"; then
+    if test -n "$PKG_CONFIG" && \
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libpng\""; } >&5
+  ($PKG_CONFIG --exists --print-errors "libpng") 2>&5
+  ac_status=$?
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
+  pkg_cv_PNG_LIBS=`$PKG_CONFIG --libs "libpng" 2>/dev/null`
+else
+  pkg_failed=yes
+fi
+ else
+    pkg_failed=untried
+fi
+
+
+
+if test $pkg_failed = yes; then
+
+if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
+        _pkg_short_errors_supported=yes
+else
+        _pkg_short_errors_supported=no
+fi
+        if test $_pkg_short_errors_supported = yes; then
+	        PNG_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors "libpng" 2>&1`
+        else
+	        PNG_PKG_ERRORS=`$PKG_CONFIG --print-errors "libpng" 2>&1`
+        fi
+	# Put the nasty error message in config.log where it belongs
+	echo "$PNG_PKG_ERRORS" >&5
+
+	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+                 LIBPNG_FOUND=no
+elif test $pkg_failed = untried; then
+	 LIBPNG_FOUND=no
+else
+	PNG_CFLAGS=$pkg_cv_PNG_CFLAGS
+	PNG_LIBS=$pkg_cv_PNG_LIBS
+        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+	 LIBPNG_FOUND=yes
+fi
+      if test "x${LIBPNG_FOUND}" = "xyes"; then
+          USE_EXTERNAL_LIBPNG=true
+          { $as_echo "$as_me:${as_lineno-$LINENO}: result: system" >&5
+$as_echo "system" >&6; }
+      else
+          { $as_echo "$as_me:${as_lineno-$LINENO}: result: system not found" >&5
+$as_echo "system not found" >&6; }
+          as_fn_error $? "--with-libpng=system specified, but no libpng found!" "$LINENO" 5
+      fi
+  else
+      as_fn_error $? "Invalid value of --with-libpng: ${with_libpng}, use 'system' or 'bundled'" "$LINENO" 5
+  fi
+
+
+  ###############################################################################
+  #
   # Check for the zlib library
   #
 
@@ -48538,6 +49214,492 @@
 
   LIBS="$save_LIBS"
 
+  ###############################################################################
+  #
+  # Check whether infinality support is required (requires fontconfig)
+  #
+
+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to use fontconfig to provide better font rendering" >&5
+$as_echo_n "checking whether to use fontconfig to provide better font rendering... " >&6; }
+
+  # default is no
+  DEFAULT_IMPROVED_FONT_RENDERING=no
+
+  # Check whether --enable-improved-font-rendering was given.
+if test "${enable_improved_font_rendering+set}" = set; then :
+  enableval=$enable_improved_font_rendering;
+    case "${enableval}" in
+      yes)
+        enable_improved_font_rendering=yes
+        ;;
+      *)
+        enable_improved_font_rendering=no
+        ;;
+    esac
+
+else
+
+    enable_improved_font_rendering=${DEFAULT_IMPROVED_FONT_RENDERING}
+
+fi
+
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $enable_improved_font_rendering" >&5
+$as_echo "$enable_improved_font_rendering" >&6; }
+
+  if test "x${enable_improved_font_rendering}" = "xyes"; then
+
+pkg_failed=no
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for FONTCONFIG" >&5
+$as_echo_n "checking for FONTCONFIG... " >&6; }
+
+if test -n "$FONTCONFIG_CFLAGS"; then
+    pkg_cv_FONTCONFIG_CFLAGS="$FONTCONFIG_CFLAGS"
+ elif test -n "$PKG_CONFIG"; then
+    if test -n "$PKG_CONFIG" && \
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"fontconfig\""; } >&5
+  ($PKG_CONFIG --exists --print-errors "fontconfig") 2>&5
+  ac_status=$?
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
+  pkg_cv_FONTCONFIG_CFLAGS=`$PKG_CONFIG --cflags "fontconfig" 2>/dev/null`
+else
+  pkg_failed=yes
+fi
+ else
+    pkg_failed=untried
+fi
+if test -n "$FONTCONFIG_LIBS"; then
+    pkg_cv_FONTCONFIG_LIBS="$FONTCONFIG_LIBS"
+ elif test -n "$PKG_CONFIG"; then
+    if test -n "$PKG_CONFIG" && \
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"fontconfig\""; } >&5
+  ($PKG_CONFIG --exists --print-errors "fontconfig") 2>&5
+  ac_status=$?
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
+  pkg_cv_FONTCONFIG_LIBS=`$PKG_CONFIG --libs "fontconfig" 2>/dev/null`
+else
+  pkg_failed=yes
+fi
+ else
+    pkg_failed=untried
+fi
+
+
+
+if test $pkg_failed = yes; then
+
+if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
+        _pkg_short_errors_supported=yes
+else
+        _pkg_short_errors_supported=no
+fi
+        if test $_pkg_short_errors_supported = yes; then
+	        FONTCONFIG_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors "fontconfig" 2>&1`
+        else
+	        FONTCONFIG_PKG_ERRORS=`$PKG_CONFIG --print-errors "fontconfig" 2>&1`
+        fi
+	# Put the nasty error message in config.log where it belongs
+	echo "$FONTCONFIG_PKG_ERRORS" >&5
+
+	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+                FONTCONFIG_FOUND=no
+elif test $pkg_failed = untried; then
+	FONTCONFIG_FOUND=no
+else
+	FONTCONFIG_CFLAGS=$pkg_cv_FONTCONFIG_CFLAGS
+	FONTCONFIG_LIBS=$pkg_cv_FONTCONFIG_LIBS
+        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+	FONTCONFIG_FOUND=yes
+fi
+    if test "x${FONTCONFIG_FOUND}" = xno
+    then
+      as_fn_error $? "Could not find fontconfig; improved font rendering support requires fontconfig." "$LINENO" 5
+    fi
+    IMPROVED_FONT_RENDERING_SUPPORT=true
+  fi
+
+
+  ###############################################################################
+  #
+  # Check for the Kerberos libraries
+  #
+
+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to use the system Kerberos installation to obtain the cache location" >&5
+$as_echo_n "checking whether to use the system Kerberos installation to obtain the cache location... " >&6; }
+
+  # default is bundled
+  DEFAULT_SYSTEM_KRB5=no
+
+  # Check whether --enable-system-kerberos was given.
+if test "${enable_system_kerberos+set}" = set; then :
+  enableval=$enable_system_kerberos;
+    case "${enableval}" in
+      yes)
+        system_krb5=yes
+        ;;
+      *)
+        system_krb5=no
+        ;;
+    esac
+
+else
+
+    system_krb5=${DEFAULT_SYSTEM_KRB5}
+
+fi
+
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $system_krb5" >&5
+$as_echo "$system_krb5" >&6; }
+
+  if test "x${system_krb5}" = "xyes"; then
+
+pkg_failed=no
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for KRB5" >&5
+$as_echo_n "checking for KRB5... " >&6; }
+
+if test -n "$KRB5_CFLAGS"; then
+    pkg_cv_KRB5_CFLAGS="$KRB5_CFLAGS"
+ elif test -n "$PKG_CONFIG"; then
+    if test -n "$PKG_CONFIG" && \
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"krb5\""; } >&5
+  ($PKG_CONFIG --exists --print-errors "krb5") 2>&5
+  ac_status=$?
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
+  pkg_cv_KRB5_CFLAGS=`$PKG_CONFIG --cflags "krb5" 2>/dev/null`
+else
+  pkg_failed=yes
+fi
+ else
+    pkg_failed=untried
+fi
+if test -n "$KRB5_LIBS"; then
+    pkg_cv_KRB5_LIBS="$KRB5_LIBS"
+ elif test -n "$PKG_CONFIG"; then
+    if test -n "$PKG_CONFIG" && \
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"krb5\""; } >&5
+  ($PKG_CONFIG --exists --print-errors "krb5") 2>&5
+  ac_status=$?
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
+  pkg_cv_KRB5_LIBS=`$PKG_CONFIG --libs "krb5" 2>/dev/null`
+else
+  pkg_failed=yes
+fi
+ else
+    pkg_failed=untried
+fi
+
+
+
+if test $pkg_failed = yes; then
+
+if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
+        _pkg_short_errors_supported=yes
+else
+        _pkg_short_errors_supported=no
+fi
+        if test $_pkg_short_errors_supported = yes; then
+	        KRB5_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors "krb5" 2>&1`
+        else
+	        KRB5_PKG_ERRORS=`$PKG_CONFIG --print-errors "krb5" 2>&1`
+        fi
+	# Put the nasty error message in config.log where it belongs
+	echo "$KRB5_PKG_ERRORS" >&5
+
+	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+                KRB5_FOUND=no
+elif test $pkg_failed = untried; then
+	KRB5_FOUND=no
+else
+	KRB5_CFLAGS=$pkg_cv_KRB5_CFLAGS
+	KRB5_LIBS=$pkg_cv_KRB5_LIBS
+        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+	KRB5_FOUND=yes
+fi
+      if test "x${KRB5_FOUND}" = "xyes"; then
+	  USE_EXTERNAL_KRB5=true
+      else
+	  { $as_echo "$as_me:${as_lineno-$LINENO}: Could not find Kerberos using pkg-config; trying via krb5.h and krb5 library" >&5
+$as_echo "$as_me: Could not find Kerberos using pkg-config; trying via krb5.h and krb5 library" >&6;}
+          { $as_echo "$as_me:${as_lineno-$LINENO}: checking for krb5_cc_default in -lkrb5" >&5
+$as_echo_n "checking for krb5_cc_default in -lkrb5... " >&6; }
+if ${ac_cv_lib_krb5_krb5_cc_default+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+  ac_check_lib_save_LIBS=$LIBS
+LIBS="-lkrb5  $LIBS"
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+
+/* Override any GCC internal prototype to avoid an error.
+   Use char because int might match the return type of a GCC
+   builtin and then its argument prototype would still apply.  */
+#ifdef __cplusplus
+extern "C"
+#endif
+char krb5_cc_default ();
+int
+main ()
+{
+return krb5_cc_default ();
+  ;
+  return 0;
+}
+_ACEOF
+if ac_fn_cxx_try_link "$LINENO"; then :
+  ac_cv_lib_krb5_krb5_cc_default=yes
+else
+  ac_cv_lib_krb5_krb5_cc_default=no
+fi
+rm -f core conftest.err conftest.$ac_objext \
+    conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_krb5_krb5_cc_default" >&5
+$as_echo "$ac_cv_lib_krb5_krb5_cc_default" >&6; }
+if test "x$ac_cv_lib_krb5_krb5_cc_default" = xyes; then :
+  cat >>confdefs.h <<_ACEOF
+#define HAVE_LIBKRB5 1
+_ACEOF
+
+  LIBS="-lkrb5 $LIBS"
+
+else
+  as_fn_error $? "Could not find Kerberos library; install Kerberos or build with --disable-system-kerberos to use the default cache location." "$LINENO" 5
+fi
+
+          ac_fn_cxx_check_header_mongrel "$LINENO" "krb5.h" "ac_cv_header_krb5_h" "$ac_includes_default"
+if test "x$ac_cv_header_krb5_h" = xyes; then :
+
+else
+  as_fn_error $? "Could not find Kerberos header; install Kerberos or build with --disable-system-kerberos to use the default cache location." "$LINENO" 5
+fi
+
+
+      	  KRB5_LIBS="-lkrb5"
+      fi
+  else
+      USE_EXTERNAL_KRB5=false
+  fi
+
+
+  ###############################################################################
+  #
+  # Check for the PCSC libraries
+  #
+
+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to use the system libpcsclite installation" >&5
+$as_echo_n "checking whether to use the system libpcsclite installation... " >&6; }
+
+  # default is bundled
+  DEFAULT_SYSTEM_PCSC=no
+
+  # Check whether --enable-system-pcsc was given.
+if test "${enable_system_pcsc+set}" = set; then :
+  enableval=$enable_system_pcsc;
+    case "${enableval}" in
+      yes)
+        system_pcsc=yes
+        ;;
+      *)
+        system_pcsc=no
+        ;;
+    esac
+
+else
+
+    system_pcsc=${DEFAULT_SYSTEM_PCSC}
+
+fi
+
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $system_pcsc" >&5
+$as_echo "$system_pcsc" >&6; }
+
+  if test "x${system_pcsc}" = "xyes"; then
+
+pkg_failed=no
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for PCSC" >&5
+$as_echo_n "checking for PCSC... " >&6; }
+
+if test -n "$PCSC_CFLAGS"; then
+    pkg_cv_PCSC_CFLAGS="$PCSC_CFLAGS"
+ elif test -n "$PKG_CONFIG"; then
+    if test -n "$PKG_CONFIG" && \
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libpcsclite\""; } >&5
+  ($PKG_CONFIG --exists --print-errors "libpcsclite") 2>&5
+  ac_status=$?
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
+  pkg_cv_PCSC_CFLAGS=`$PKG_CONFIG --cflags "libpcsclite" 2>/dev/null`
+else
+  pkg_failed=yes
+fi
+ else
+    pkg_failed=untried
+fi
+if test -n "$PCSC_LIBS"; then
+    pkg_cv_PCSC_LIBS="$PCSC_LIBS"
+ elif test -n "$PKG_CONFIG"; then
+    if test -n "$PKG_CONFIG" && \
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libpcsclite\""; } >&5
+  ($PKG_CONFIG --exists --print-errors "libpcsclite") 2>&5
+  ac_status=$?
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
+  pkg_cv_PCSC_LIBS=`$PKG_CONFIG --libs "libpcsclite" 2>/dev/null`
+else
+  pkg_failed=yes
+fi
+ else
+    pkg_failed=untried
+fi
+
+
+
+if test $pkg_failed = yes; then
+
+if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
+        _pkg_short_errors_supported=yes
+else
+        _pkg_short_errors_supported=no
+fi
+        if test $_pkg_short_errors_supported = yes; then
+	        PCSC_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors "libpcsclite" 2>&1`
+        else
+	        PCSC_PKG_ERRORS=`$PKG_CONFIG --print-errors "libpcsclite" 2>&1`
+        fi
+	# Put the nasty error message in config.log where it belongs
+	echo "$PCSC_PKG_ERRORS" >&5
+
+	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+                PCSC_FOUND=no
+elif test $pkg_failed = untried; then
+	PCSC_FOUND=no
+else
+	PCSC_CFLAGS=$pkg_cv_PCSC_CFLAGS
+	PCSC_LIBS=$pkg_cv_PCSC_LIBS
+        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+	PCSC_FOUND=yes
+fi
+      if test "x${PCSC_FOUND}" = "xyes"; then
+	  USE_EXTERNAL_PCSC=true
+      else
+	  as_fn_error $? "--enable-system-pcsc specified, but libpcsclite not found." "$LINENO" 5
+      fi
+  else
+      USE_EXTERNAL_PCSC=false
+  fi
+
+
+  ###############################################################################
+  #
+  # Check for the SCTP libraries
+  #
+
+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to use the system libsctp installation" >&5
+$as_echo_n "checking whether to use the system libsctp installation... " >&6; }
+
+  # default is bundled
+  DEFAULT_SYSTEM_SCTP=no
+
+  # Check whether --enable-system-sctp was given.
+if test "${enable_system_sctp+set}" = set; then :
+  enableval=$enable_system_sctp;
+    case "${enableval}" in
+      yes)
+        system_sctp=yes
+        ;;
+      *)
+        system_sctp=no
+        ;;
+    esac
+
+else
+
+    system_sctp=${DEFAULT_SYSTEM_SCTP}
+
+fi
+
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $system_sctp" >&5
+$as_echo "$system_sctp" >&6; }
+
+  if test "x${system_sctp}" = "xyes"; then
+            if test "x${SCTP_CFLAGS}" = "x"; then
+          ac_fn_cxx_check_header_mongrel "$LINENO" "netinet/sctp.h" "ac_cv_header_netinet_sctp_h" "$ac_includes_default"
+if test "x$ac_cv_header_netinet_sctp_h" = xyes; then :
+
+else
+  as_fn_error $? "Could not find SCTP header; install SCTP or build with --disable-system-sctp to use the in-tree copy." "$LINENO" 5
+fi
+
+
+      fi
+      if test "x${SCTP_LIBS}" = "x"; then
+          { $as_echo "$as_me:${as_lineno-$LINENO}: checking for sctp_bindx in -lsctp" >&5
+$as_echo_n "checking for sctp_bindx in -lsctp... " >&6; }
+if ${ac_cv_lib_sctp_sctp_bindx+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+  ac_check_lib_save_LIBS=$LIBS
+LIBS="-lsctp  $LIBS"
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+
+/* Override any GCC internal prototype to avoid an error.
+   Use char because int might match the return type of a GCC
+   builtin and then its argument prototype would still apply.  */
+#ifdef __cplusplus
+extern "C"
+#endif
+char sctp_bindx ();
+int
+main ()
+{
+return sctp_bindx ();
+  ;
+  return 0;
+}
+_ACEOF
+if ac_fn_cxx_try_link "$LINENO"; then :
+  ac_cv_lib_sctp_sctp_bindx=yes
+else
+  ac_cv_lib_sctp_sctp_bindx=no
+fi
+rm -f core conftest.err conftest.$ac_objext \
+    conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_sctp_sctp_bindx" >&5
+$as_echo "$ac_cv_lib_sctp_sctp_bindx" >&6; }
+if test "x$ac_cv_lib_sctp_sctp_bindx" = xyes; then :
+  cat >>confdefs.h <<_ACEOF
+#define HAVE_LIBSCTP 1
+_ACEOF
+
+  LIBS="-lsctp $LIBS"
+
+else
+  as_fn_error $? "Could not find SCTP library; install SCTP or build with --disable-system-sctp to use the in-tree copy." "$LINENO" 5
+fi
+
+          SCTP_LIBS="-lsctp"
+      fi
+      USE_EXTERNAL_SCTP=true
+  else
+      USE_EXTERNAL_SCTP=false
+  fi
+
+
+
+
 
   ###############################################################################
   #
@@ -52688,7 +53850,7 @@
     # precompiled headers.
     { $as_echo "$as_me:${as_lineno-$LINENO}: checking if ccache supports precompiled headers" >&5
 $as_echo_n "checking if ccache supports precompiled headers... " >&6; }
-    HAS_GOOD_CCACHE=`($CCACHE --version | head -n 1 | grep -E 3.1.[456789]) 2> /dev/null`
+    HAS_GOOD_CCACHE=`($CCACHE --version | head -n 1 | grep -E "3\.(1\.[456789]|[2-9])") 2>&5`
     if test "x$HAS_GOOD_CCACHE" = x; then
       { $as_echo "$as_me:${as_lineno-$LINENO}: result: no, disabling ccache" >&5
 $as_echo "no, disabling ccache" >&6; }
--- a/common/autoconf/help.m4	Thu Nov 05 05:11:01 2020 +0000
+++ b/common/autoconf/help.m4	Tue Nov 10 02:47:04 2020 +0000
@@ -112,7 +112,7 @@
     pulse)
       PKGHANDLER_COMMAND="sudo apt-get install libpulse-dev" ;;
     x11)
-      PKGHANDLER_COMMAND="sudo apt-get install libX11-dev libxext-dev libxrender-dev libxtst-dev libxt-dev" ;;
+      PKGHANDLER_COMMAND="sudo apt-get install libX11-dev libxext-dev libxrender-dev libxtst-dev libxt-dev libXcomposite-dev" ;;
     ccache)
       PKGHANDLER_COMMAND="sudo apt-get install ccache" ;;
   esac
--- a/common/autoconf/hotspot-spec.gmk.in	Thu Nov 05 05:11:01 2020 +0000
+++ b/common/autoconf/hotspot-spec.gmk.in	Tue Nov 10 02:47:04 2020 +0000
@@ -71,6 +71,10 @@
 LIBARCH=$(OPENJDK_TARGET_CPU_LEGACY_LIB)
 # Set the cpu architecture
 ARCH=$(OPENJDK_TARGET_CPU_ARCH)
+# ppc64le uses the HotSpot ppc64 build
+ifeq ($(OPENJDK_TARGET_CPU), ppc64le)
+  ARCH=ppc64
+endif
 # Legacy setting for building for a 64 bit machine.
 # If yes then this expands to _LP64:=1
 @LP64@
@@ -112,7 +116,8 @@
 RC:=@HOTSPOT_RC@
 
 EXTRA_CFLAGS=@LEGACY_EXTRA_CFLAGS@ $(NO_DELETE_NULL_POINTER_CHECKS_CFLAG) \
-				   $(NO_LIFETIME_DSE_CFLAG) $(CXXSTD_CXXFLAG)
+				   $(NO_LIFETIME_DSE_CFLAG) $(CXXSTD_CXXFLAG) \
+				   $(REALIGN_CFLAG)
 EXTRA_CXXFLAGS=@LEGACY_EXTRA_CXXFLAGS@
 EXTRA_LDFLAGS=@LEGACY_EXTRA_LDFLAGS@
 EXTRA_ASFLAGS=@LEGACY_EXTRA_ASFLAGS@
@@ -139,6 +144,8 @@
   ZIP_DEBUGINFO_FILES:=0
 endif
 
+COMPILER_WARNINGS_FATAL:=@WARNINGS_AS_ERRORS@
+
 # Sneak this in via the spec.gmk file, since we don't want to mess around too much with the Hotspot make files.
 # This is needed to get the LOG setting to work properly.
 include $(SRC_ROOT)/make/common/MakeBase.gmk
--- a/common/autoconf/jdk-options.m4	Thu Nov 05 05:11:01 2020 +0000
+++ b/common/autoconf/jdk-options.m4	Tue Nov 10 02:47:04 2020 +0000
@@ -61,7 +61,7 @@
 #    cpp     : C++ interpreter
 AC_MSG_CHECKING([which interpreter of the JVM to build])
 AC_ARG_WITH([jvm-interpreter], [AS_HELP_STRING([--with-jvm-interpreter],
-	[JVM interpreter to build (template, cpp) @<:@template@:>@])])
+        [JVM interpreter to build (template, cpp) @<:@template@:>@])])
 
 if test "x$with_jvm_interpreter" = x; then
      with_jvm_interpreter="template"
@@ -95,10 +95,14 @@
 #    core: interpreter only, no compiler (only works on some platforms)
   AC_MSG_CHECKING([which variants of the JVM to build])
   AC_ARG_WITH([jvm-variants], [AS_HELP_STRING([--with-jvm-variants],
-	[JVM variants (separated by commas) to build (server, client, minimal1, kernel, zero, zeroshark, core) @<:@server@:>@])])
+        [JVM variants (separated by commas) to build (server, client, minimal1, kernel, zero, zeroshark, core) @<:@server@:>@])])
 
   if test "x$with_jvm_variants" = x; then
-    with_jvm_variants="server"
+    if test "x$OPENJDK_TARGET_CPU" = xaarch32; then
+      with_jvm_variants="client";
+    else
+      with_jvm_variants="server";
+    fi
   fi
 
   JVM_VARIANTS=",$with_jvm_variants,"
@@ -161,7 +165,7 @@
   if test "x$VAR_CPU" = xppc64 -o "x$VAR_CPU" = xppc64le ; then
     INCLUDE_SA=false
   fi
-  if test "x$OPENJDK_TARGET_CPU" = xaarch64; then
+  if test "x$OPENJDK_TARGET_CPU" = xaarch32; then
     INCLUDE_SA=false
   fi
   AC_SUBST(INCLUDE_SA)
@@ -207,6 +211,17 @@
     AC_MSG_ERROR([Allowed debug levels are: release, fastdebug and slowdebug])
   fi
 
+  AC_MSG_CHECKING([whether to enable Java debug symbols])
+  AC_ARG_WITH([java-debug-symbols], [AS_HELP_STRING([--with-java-debug-symbols],
+      [set the status of Java debug symbols (yes, no, default) @<:@default@:>@])],
+      [JAVA_DEBUG_SYMBOLS="${withval}"], [JAVA_DEBUG_SYMBOLS="default"])
+  AC_MSG_RESULT([$JAVA_DEBUG_SYMBOLS])
+
+  if test "x$JAVA_DEBUG_SYMBOLS" != xyes && \
+      test "x$JAVA_DEBUG_SYMBOLS" != xno && \
+      test "x$JAVA_DEBUG_SYMBOLS" != xdefault; then
+    AC_MSG_ERROR([Allowed Java debug symbol settings are: yes, no, default])
+  fi
 
   ###############################################################################
   #
@@ -240,6 +255,16 @@
       ;;
   esac
 
+  # Override DEBUG_CLASSFILES if JAVA_DEBUG_SYMBOLS is set to yes or no
+  case $JAVA_DEBUG_SYMBOLS in
+    yes )
+      DEBUG_CLASSFILES="true"
+      ;;
+    no )
+      DEBUG_CLASSFILES="false"
+      ;;
+  esac
+
   #####
   # Generate the legacy makefile targets for hotspot.
   # The hotspot api for selecting the build artifacts, really, needs to be improved.
@@ -360,7 +385,7 @@
 
   if test "x$SUPPORT_HEADFUL" = xno; then
     # Thus we are building headless only.
-    BUILD_HEADLESS="BUILD_HEADLESS:=true"
+    BUILD_HEADFUL="BUILD_HEADLESS_ONLY:=true"
     headful_msg="headless only"
   fi
 
@@ -369,6 +394,7 @@
   AC_SUBST(SUPPORT_HEADLESS)
   AC_SUBST(SUPPORT_HEADFUL)
   AC_SUBST(BUILD_HEADLESS)
+  AC_SUBST(BUILD_HEADFUL)
 
   # Control wether Hotspot runs Queens test after build.
   AC_ARG_ENABLE([hotspot-test-in-build], [AS_HELP_STRING([--enable-hotspot-test-in-build],
@@ -769,6 +795,9 @@
   AC_SUBST(POST_STRIP_CMD)
   AC_SUBST(DEBUG_BINARIES)
   AC_SUBST(ZIP_DEBUGINFO_FILES)
+  AC_SUBST(CFLAGS_DEBUG_SYMBOLS)
+  AC_SUBST(CXXFLAGS_DEBUG_SYMBOLS)
+  AC_SUBST(ASFLAGS_DEBUG_SYMBOLS)
 ])
 
 # Support for customization of the build process. Some build files
--- a/common/autoconf/libraries.m4	Thu Nov 05 05:11:01 2020 +0000
+++ b/common/autoconf/libraries.m4	Tue Nov 10 02:47:04 2020 +0000
@@ -161,7 +161,7 @@
   CFLAGS="$CFLAGS $X_CFLAGS"
 
   # Need to include Xlib.h and Xutil.h to avoid "present but cannot be compiled" warnings on Solaris 10
-  AC_CHECK_HEADERS([X11/extensions/shape.h X11/extensions/Xrender.h X11/extensions/XTest.h X11/Intrinsic.h],
+  AC_CHECK_HEADERS([X11/extensions/shape.h X11/extensions/Xrender.h X11/extensions/XTest.h X11/Intrinsic.h X11/extensions/Xcomposite.h],
       [X11_A_OK=yes],
       [X11_A_OK=no; break],
       [
@@ -175,7 +175,7 @@
 
   if test "x$X11_A_OK" = xno && test "x$X11_NOT_NEEDED" != xyes; then
     HELP_MSG_MISSING_DEPENDENCY([x11])
-    AC_MSG_ERROR([Could not find all X11 headers (shape.h Xrender.h XTest.h Intrinsic.h). $HELP_MSG])
+    AC_MSG_ERROR([Could not find all X11 headers (shape.h Xrender.h XTest.h Intrinsic.h Xcomposite.h). $HELP_MSG])
   fi
 
   AC_SUBST(X_CFLAGS)
@@ -774,11 +774,36 @@
   # Check for the jpeg library
   #
 
-  USE_EXTERNAL_LIBJPEG=true
-  AC_CHECK_LIB(jpeg, main, [],
-      [ USE_EXTERNAL_LIBJPEG=false
-      AC_MSG_NOTICE([Will use jpeg decoder bundled with the OpenJDK source])
-  ])
+  AC_ARG_WITH(libjpeg, [AS_HELP_STRING([--with-libjpeg],
+      [use libjpeg from build system or OpenJDK source (system, bundled) @<:@bundled@:>@])])
+
+  AC_MSG_CHECKING([for which libjpeg to use])
+
+  # default is bundled
+  DEFAULT_LIBJPEG=bundled
+
+  #
+  # if user didn't specify, use DEFAULT_LIBJPEG
+  #
+  if test "x${with_libjpeg}" = "x"; then
+    with_libjpeg=${DEFAULT_LIBJPEG}
+  fi
+
+  AC_MSG_RESULT(${with_libjpeg})
+
+  if test "x${with_libjpeg}" = "xbundled"; then
+    USE_EXTERNAL_LIBJPEG=false
+  elif test "x${with_libjpeg}" = "xsystem"; then
+    AC_CHECK_HEADER(jpeglib.h, [],
+        [ AC_MSG_ERROR([--with-libjpeg=system specified, but jpeglib.h not found!])])
+    AC_CHECK_LIB(jpeg, jpeg_CreateDecompress, [],
+        [ AC_MSG_ERROR([--with-libjpeg=system specified, but no libjpeg found])])
+
+    USE_EXTERNAL_LIBJPEG=true
+  else
+    AC_MSG_ERROR([Invalid use of --with-libjpeg: ${with_libjpeg}, use 'system' or 'bundled'])
+  fi
+
   AC_SUBST(USE_EXTERNAL_LIBJPEG)
 
   ###############################################################################
@@ -820,6 +845,82 @@
 
   ###############################################################################
   #
+  # Check for the lcms2 library
+  #
+
+  AC_ARG_WITH(lcms, [AS_HELP_STRING([--with-lcms],
+  	[use lcms2 from build system or OpenJDK source (system, bundled) @<:@bundled@:>@])])
+
+  AC_MSG_CHECKING([for which lcms to use])
+
+  DEFAULT_LCMS=bundled
+
+  #
+  # If user didn't specify, use DEFAULT_LCMS
+  #
+  if test "x${with_lcms}" = "x"; then
+      with_lcms=${DEFAULT_LCMS}
+  fi
+
+  if test "x${with_lcms}" = "xbundled"; then
+    USE_EXTERNAL_LCMS=false
+    AC_MSG_RESULT([bundled])
+  elif test "x${with_lcms}" = "xsystem"; then
+    AC_MSG_RESULT([system])
+    PKG_CHECK_MODULES([LCMS], [lcms2], [LCMS_FOUND=yes], [LCMS_FOUND=no])
+    if test "x${LCMS_FOUND}" = "xyes"; then
+      USE_EXTERNAL_LCMS=true
+    else
+      AC_MSG_ERROR([--with-lcms=system specified, but no lcms found!])
+    fi
+  else
+    AC_MSG_ERROR([Invalid value for --with-lcms: ${with_lcms}, use 'system' or 'bundled'])
+  fi
+
+  AC_SUBST(USE_EXTERNAL_LCMS)
+
+  ###############################################################################
+  #
+  # Check for the png library
+  #
+
+  AC_ARG_WITH(libpng, [AS_HELP_STRING([--with-libpng],
+     [use libpng from build system or OpenJDK source (system, bundled) @<:@bundled@:>@])])
+
+
+  AC_MSG_CHECKING([for which libpng to use])
+
+  # default is bundled
+  DEFAULT_LIBPNG=bundled
+
+  #
+  # if user didn't specify, use DEFAULT_LIBPNG
+  #
+  if test "x${with_libpng}" = "x"; then
+      with_libpng=${DEFAULT_LIBPNG}
+  fi
+
+  if test "x${with_libpng}" = "xbundled"; then
+      USE_EXTERNAL_LIBPNG=false
+      AC_MSG_RESULT([bundled])
+  elif test "x${with_libpng}" = "xsystem"; then
+      PKG_CHECK_MODULES(PNG, libpng,
+                   [ LIBPNG_FOUND=yes ],
+                   [ LIBPNG_FOUND=no ])
+      if test "x${LIBPNG_FOUND}" = "xyes"; then
+          USE_EXTERNAL_LIBPNG=true
+          AC_MSG_RESULT([system])
+      else
+          AC_MSG_RESULT([system not found])
+          AC_MSG_ERROR([--with-libpng=system specified, but no libpng found!])
+      fi
+  else
+      AC_MSG_ERROR([Invalid value of --with-libpng: ${with_libpng}, use 'system' or 'bundled'])
+  fi
+  AC_SUBST(USE_EXTERNAL_LIBPNG)
+
+  ###############################################################################
+  #
   # Check for the zlib library
   #
 
@@ -910,6 +1011,172 @@
   LIBDL="$LIBS"
   AC_SUBST(LIBDL)
   LIBS="$save_LIBS"
+
+  ###############################################################################
+  #
+  # Check whether infinality support is required (requires fontconfig)
+  #
+
+  AC_MSG_CHECKING([whether to use fontconfig to provide better font rendering])
+
+  # default is no
+  DEFAULT_IMPROVED_FONT_RENDERING=no
+
+  AC_ARG_ENABLE([improved-font-rendering], [AS_HELP_STRING([--enable-improved-font-rendering],
+     [build with fontconfig-enhanced font rendering @<:@disabled@:>@])],
+  [
+    case "${enableval}" in
+      yes)
+        enable_improved_font_rendering=yes
+        ;;
+      *)
+        enable_improved_font_rendering=no
+        ;;
+    esac
+  ],
+  [
+    enable_improved_font_rendering=${DEFAULT_IMPROVED_FONT_RENDERING}
+  ])
+  AC_MSG_RESULT([$enable_improved_font_rendering])
+
+  if test "x${enable_improved_font_rendering}" = "xyes"; then
+    PKG_CHECK_MODULES(FONTCONFIG, fontconfig,[FONTCONFIG_FOUND=yes],[FONTCONFIG_FOUND=no])
+    if test "x${FONTCONFIG_FOUND}" = xno
+    then
+      AC_MSG_ERROR([Could not find fontconfig; improved font rendering support requires fontconfig.])
+    fi
+    IMPROVED_FONT_RENDERING_SUPPORT=true
+  fi
+  AC_SUBST(IMPROVED_FONT_RENDERING_SUPPORT)
+
+  ###############################################################################
+  #
+  # Check for the Kerberos libraries
+  #
+
+  AC_MSG_CHECKING([whether to use the system Kerberos installation to obtain the cache location])
+
+  # default is bundled
+  DEFAULT_SYSTEM_KRB5=no
+
+  AC_ARG_ENABLE([system-kerberos], [AS_HELP_STRING([--enable-system-kerberos],
+     [use the system Kerberos to get the cache location @<:@disabled@:>@])],
+  [
+    case "${enableval}" in
+      yes)
+        system_krb5=yes
+        ;;
+      *)
+        system_krb5=no
+        ;;
+    esac
+  ],
+  [
+    system_krb5=${DEFAULT_SYSTEM_KRB5}
+  ])
+  AC_MSG_RESULT([$system_krb5])
+
+  if test "x${system_krb5}" = "xyes"; then
+      PKG_CHECK_MODULES(KRB5, krb5, [KRB5_FOUND=yes], [KRB5_FOUND=no])
+      if test "x${KRB5_FOUND}" = "xyes"; then
+	  USE_EXTERNAL_KRB5=true
+      else
+	  AC_MSG_NOTICE([Could not find Kerberos using pkg-config; trying via krb5.h and krb5 library])
+          AC_CHECK_LIB([krb5], [krb5_cc_default],
+            , [AC_MSG_ERROR([Could not find Kerberos library; install Kerberos or build with --disable-system-kerberos to use the default cache location.])])
+          AC_CHECK_HEADER([krb5.h],
+            , [AC_MSG_ERROR([Could not find Kerberos header; install Kerberos or build with --disable-system-kerberos to use the default cache location.])])
+      	  KRB5_LIBS="-lkrb5"
+      fi
+  else
+      USE_EXTERNAL_KRB5=false
+  fi
+  AC_SUBST(USE_EXTERNAL_KRB5)
+
+  ###############################################################################
+  #
+  # Check for the PCSC libraries
+  #
+
+  AC_MSG_CHECKING([whether to use the system libpcsclite installation])
+
+  # default is bundled
+  DEFAULT_SYSTEM_PCSC=no
+
+  AC_ARG_ENABLE([system-pcsc], [AS_HELP_STRING([--enable-system-pcsc],
+     [use the system libpcsclite @<:@disabled@:>@])],
+  [
+    case "${enableval}" in
+      yes)
+        system_pcsc=yes
+        ;;
+      *)
+        system_pcsc=no
+        ;;
+    esac
+  ],
+  [
+    system_pcsc=${DEFAULT_SYSTEM_PCSC}
+  ])
+  AC_MSG_RESULT([$system_pcsc])
+
+  if test "x${system_pcsc}" = "xyes"; then
+      PKG_CHECK_MODULES(PCSC, libpcsclite, [PCSC_FOUND=yes], [PCSC_FOUND=no])
+      if test "x${PCSC_FOUND}" = "xyes"; then
+	  USE_EXTERNAL_PCSC=true
+      else
+	  AC_MSG_ERROR([--enable-system-pcsc specified, but libpcsclite not found.])
+      fi
+  else
+      USE_EXTERNAL_PCSC=false
+  fi
+  AC_SUBST(USE_EXTERNAL_PCSC)
+
+  ###############################################################################
+  #
+  # Check for the SCTP libraries
+  #
+
+  AC_MSG_CHECKING([whether to use the system libsctp installation])
+
+  # default is bundled
+  DEFAULT_SYSTEM_SCTP=no
+
+  AC_ARG_ENABLE([system-sctp], [AS_HELP_STRING([--enable-system-sctp],
+     [use the system SCTP library @<:@disabled@:>@])],
+  [
+    case "${enableval}" in
+      yes)
+        system_sctp=yes
+        ;;
+      *)
+        system_sctp=no
+        ;;
+    esac
+  ],
+  [
+    system_sctp=${DEFAULT_SYSTEM_SCTP}
+  ])
+  AC_MSG_RESULT([$system_sctp])
+
+  if test "x${system_sctp}" = "xyes"; then
+      dnl Check for SCTP headers and libraries.
+      if test "x${SCTP_CFLAGS}" = "x"; then
+          AC_CHECK_HEADER([netinet/sctp.h],
+            , [AC_MSG_ERROR([Could not find SCTP header; install SCTP or build with --disable-system-sctp to use the in-tree copy.])])
+      fi
+      if test "x${SCTP_LIBS}" = "x"; then
+          AC_CHECK_LIB([sctp], [sctp_bindx],
+            , [AC_MSG_ERROR([Could not find SCTP library; install SCTP or build with --disable-system-sctp to use the in-tree copy.])])
+          SCTP_LIBS="-lsctp"
+      fi
+      USE_EXTERNAL_SCTP=true
+  else
+      USE_EXTERNAL_SCTP=false
+  fi
+  AC_ARG_VAR(SCTP_CFLAGS, [C compiler flags for the SCTP library])
+  AC_ARG_VAR(SCTP_LIBS, [linker flags for the SCTP library, overriding -lsctp])
+  AC_SUBST(USE_EXTERNAL_SCTP)
 ])
 
 AC_DEFUN_ONCE([LIB_SETUP_STATIC_LINK_LIBSTDCPP],
--- a/common/autoconf/platform.m4	Thu Nov 05 05:11:01 2020 +0000
+++ b/common/autoconf/platform.m4	Tue Nov 10 02:47:04 2020 +0000
@@ -42,9 +42,9 @@
       VAR_CPU_BITS=32
       VAR_CPU_ENDIAN=little
       ;;
-    arm*)
-      VAR_CPU=arm
-      VAR_CPU_ARCH=arm
+    arm*|aarch32)
+      VAR_CPU=aarch32
+      VAR_CPU_ARCH=aarch32
       VAR_CPU_BITS=32
       VAR_CPU_ENDIAN=little
       ;;
@@ -187,6 +187,10 @@
 
   AC_MSG_CHECKING([openjdk-build os-cpu])
   AC_MSG_RESULT([$OPENJDK_BUILD_OS-$OPENJDK_BUILD_CPU])
+  AC_MSG_CHECKING([openjdk-build bit-size])
+  AC_MSG_RESULT([$OPENJDK_BUILD_CPU_BITS])
+  AC_MSG_CHECKING([openjdk-build endianness])
+  AC_MSG_RESULT([$OPENJDK_BUILD_CPU_ENDIAN])
 
   # Convert the autoconf OS/CPU value to our own data, into the VAR_OS/CPU variables.
   PLATFORM_EXTRACT_VARS_FROM_OS($host_os)
@@ -209,6 +213,10 @@
 
   AC_MSG_CHECKING([openjdk-target os-cpu])
   AC_MSG_RESULT([$OPENJDK_TARGET_OS-$OPENJDK_TARGET_CPU])
+  AC_MSG_CHECKING([openjdk-target bit-size])
+  AC_MSG_RESULT([$OPENJDK_TARGET_CPU_BITS])
+  AC_MSG_CHECKING([openjdk-target endianness])
+  AC_MSG_RESULT([$OPENJDK_TARGET_CPU_ENDIAN])
 ])
 
 # Check if a reduced build (32-bit on 64-bit platforms) is requested, and modify behaviour
@@ -316,6 +324,8 @@
   elif test "x$OPENJDK_TARGET_OS" != xmacosx && test "x$OPENJDK_TARGET_CPU" = xx86_64; then
     # On all platforms except macosx, we replace x86_64 with amd64.
     OPENJDK_TARGET_CPU_OSARCH="amd64"
+  elif test "x$OPENJDK_TARGET_CPU" = xaarch32; then
+    OPENJDK_TARGET_CPU_OSARCH="arm"
   fi
   AC_SUBST(OPENJDK_TARGET_CPU_OSARCH)
 
--- a/common/autoconf/spec.gmk.in	Thu Nov 05 05:11:01 2020 +0000
+++ b/common/autoconf/spec.gmk.in	Tue Nov 10 02:47:04 2020 +0000
@@ -232,6 +232,7 @@
 SUPPORT_HEADLESS:=@SUPPORT_HEADLESS@
 # Legacy defines controlled by the SUPPORT_HEADLESS and SUPPORT_HEADFUL options.
 @BUILD_HEADLESS@
+@BUILD_HEADFUL@
 
 # These are the libjvms that we want to build.
 # The java launcher uses the default.
@@ -364,9 +365,14 @@
 CFLAGS_JDKEXE:=@CFLAGS_JDKEXE@
 CXXFLAGS_JDKEXE:=@CXXFLAGS_JDKEXE@
 
+# A global flag (true or false) determining if native warnings are considered errors.
+WARNINGS_AS_ERRORS := @WARNINGS_AS_ERRORS@
+
 NO_DELETE_NULL_POINTER_CHECKS_CFLAG=@NO_DELETE_NULL_POINTER_CHECKS_CFLAG@
 NO_LIFETIME_DSE_CFLAG=@NO_LIFETIME_DSE_CFLAG@
+REALIGN_CFLAG=@REALIGN_CFLAG@
 CXXSTD_CXXFLAG=@CXXSTD_CXXFLAG@
+FP_CONTRACT_SUPPORTED=@FP_CONTRACT_SUPPORTED@
 
 CXX:=@FIXPATH@ @CCACHE@ @CXX@
 #CXXFLAGS:=@CXXFLAGS@
@@ -448,6 +454,7 @@
 CFLAGS_DEBUG_SYMBOLS:=@CFLAGS_DEBUG_SYMBOLS@
 ASFLAGS_DEBUG_SYMBOLS:=@ASFLAGS_DEBUG_SYMBOLS@
 CXXFLAGS_DEBUG_SYMBOLS:=@CXXFLAGS_DEBUG_SYMBOLS@
+ASFLAGS_DEBUG_SYMBOLS:=@ASFLAGS_DEBUG_SYMBOLS@
 ZIP_DEBUGINFO_FILES:=@ZIP_DEBUGINFO_FILES@
 STRIP_POLICY:=@STRIP_POLICY@
 DEBUG_BINARIES:=@DEBUG_BINARIES@
@@ -492,9 +499,17 @@
 # overriding that value by using ?=.
 JAVAC_FLAGS?=@JAVAC_FLAGS@
 
+ifneq (@WARNINGS_AS_ERRORS@,false)
+ JAVAC_WERROR:=-Werror
+endif
+
 JAVAH=@FIXPATH@ $(BOOT_JDK)/bin/javah
 
+ifeq (@ALT_JAR_CMD@,false)
 JAR=@FIXPATH@ $(BOOT_JDK)/bin/jar
+else
+JAR=@FIXPATH@ @ALT_JAR_CMD@
+endif
 
 RMIC=@FIXPATH@ $(BOOT_JDK)/bin/rmic
 
@@ -689,6 +704,35 @@
 # Read-only single-machine data
 INSTALL_SYSCONFDIR=@sysconfdir@
 
+####################################################
+#
+# Libraries
+#
+
+USE_EXTERNAL_LCMS:=@USE_EXTERNAL_LCMS@
+LCMS_CFLAGS:=@LCMS_CFLAGS@
+LCMS_LIBS:=@LCMS_LIBS@
+
+USE_EXTERNAL_LIBPNG:=@USE_EXTERNAL_LIBPNG@
+PNG_LIBS:=@PNG_LIBS@
+PNG_CFLAGS:=@PNG_CFLAGS@
+
+
+USE_EXTERNAL_KRB5:=@USE_EXTERNAL_KRB5@
+KRB5_LIBS:=@KRB5_LIBS@
+KRB5_CFLAGS:=@KRB5_CFLAGS@
+
+USE_EXTERNAL_PCSC:=@USE_EXTERNAL_PCSC@
+PCSC_LIBS:=@PCSC_LIBS@
+PCSC_CFLAGS:=@PCSC_CFLAGS@
+
+USE_EXTERNAL_SCTP:=@USE_EXTERNAL_SCTP@
+SCTP_LIBS:=@SCTP_LIBS@
+SCTP_CFLAGS:=@SCTP_CFLAGS@
+
+IMPROVED_FONT_RENDERING:=@IMPROVED_FONT_RENDERING_SUPPORT@
+FONTCONFIG_LIBS:=@FONTCONFIG_LIBS@
+FONTCONFIG_CFLAGS:=@FONTCONFIG_CFLAGS@
 
 ####################################################
 #
--- a/common/autoconf/toolchain.m4	Thu Nov 05 05:11:01 2020 +0000
+++ b/common/autoconf/toolchain.m4	Tue Nov 10 02:47:04 2020 +0000
@@ -308,7 +308,7 @@
       CXXFLAGS_JDK="${CXXFLAGS_JDK} -isysroot \"$SDKPATH\" -iframework\"$SDKPATH/System/Library/Frameworks\""
       LDFLAGS_JDK="${LDFLAGS_JDK} -isysroot \"$SDKPATH\" -iframework\"$SDKPATH/System/Library/Frameworks\""
     fi
-    
+
     # These always need to be set, or we can't find the frameworks embedded in JavaVM.framework
     # setting this here means it doesn't have to be peppered throughout the forest
     CFLAGS_JDK="$CFLAGS_JDK -F\"$SDKPATH/System/Library/Frameworks/JavaVM.framework/Frameworks\""
@@ -422,7 +422,7 @@
     #     warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
     COMPILER_VERSION_OUTPUT=`$COMPILER --version 2>&1`
     # Check that this is likely to be GCC.
-    $ECHO "$COMPILER_VERSION_OUTPUT" | $GREP "Free Software Foundation" > /dev/null
+    $ECHO "$COMPILER_VERSION_OUTPUT" | $GREP -E "^(gcc|g\+\+|distcc)" >&AS_MESSAGE_LOG_FD 2>&1
     if test $? -ne 0; then
       AC_MSG_NOTICE([The $COMPILER_NAME compiler (located as $COMPILER) does not seem to be the required $TOOLCHAIN_TYPE compiler.])
       AC_MSG_NOTICE([The result from running with --version was: "$COMPILER_VERSION"])
@@ -888,4 +888,3 @@
   AC_SUBST(JT_HOME)
   AC_SUBST(JTREGEXE)
 ])
-
--- a/common/bin/compare_exceptions.sh.incl	Thu Nov 05 05:11:01 2020 +0000
+++ b/common/bin/compare_exceptions.sh.incl	Tue Nov 10 02:47:04 2020 +0000
@@ -280,7 +280,6 @@
 ./jre/lib/i386/libsplashscreen.so
 ./jre/lib/i386/libsunec.so
 ./jre/lib/i386/libsunwjdga.so
-./jre/lib/i386/libt2k.so
 ./jre/lib/i386/libunpack.so
 ./jre/lib/i386/libverify.so
 ./jre/lib/i386/libzip.so
@@ -433,7 +432,6 @@
 ./jre/lib/amd64/libsplashscreen.so
 ./jre/lib/amd64/libsunec.so
 ./jre/lib/amd64/libsunwjdga.so
-./jre/lib/amd64/libt2k.so
 ./jre/lib/amd64/libunpack.so
 ./jre/lib/amd64/libverify.so
 ./jre/lib/amd64/libzip.so
@@ -587,7 +585,6 @@
 ./jre/lib/sparc/libsplashscreen.so
 ./jre/lib/sparc/libsunec.so
 ./jre/lib/sparc/libsunwjdga.so
-./jre/lib/sparc/libt2k.so
 ./jre/lib/sparc/libunpack.so
 ./jre/lib/sparc/libverify.so
 ./jre/lib/sparc/libzip.so
@@ -741,7 +738,6 @@
 ./jre/lib/sparcv9/libsplashscreen.so
 ./jre/lib/sparcv9/libsunec.so
 ./jre/lib/sparcv9/libsunwjdga.so
-./jre/lib/sparcv9/libt2k.so
 ./jre/lib/sparcv9/libunpack.so
 ./jre/lib/sparcv9/libverify.so
 ./jre/lib/sparcv9/libzip.so
--- a/make/common/NativeCompilation.gmk	Thu Nov 05 05:11:01 2020 +0000
+++ b/make/common/NativeCompilation.gmk	Tue Nov 10 02:47:04 2020 +0000
@@ -338,6 +338,21 @@
     $1_EXTRA_CXXFLAGS+=$$($1_CXXFLAGS_$(OPENJDK_TARGET_OS)_release)
   endif
 
+  $1_EXTRA_ASFLAGS:=$$($1_ASFLAGS_$(OPENJDK_TARGET_OS_API)) $$($1_ASFLAGS_$(OPENJDK_TARGET_OS)) \
+      $$($1_ASFLAGS_$(OPENJDK_TARGET_OS)_$(OPENJDK_TARGET_CPU))
+  ifneq ($(DEBUG_LEVEL),release)
+    # Pickup extra debug dependent variables for ASFLAGS
+    $1_EXTRA_ASFLAGS+=$$($1_ASFLAGS_debug)
+    $1_EXTRA_ASFLAGS+=$$($1_ASFLAGS_$(OPENJDK_TARGET_OS_API)_debug)
+    $1_EXTRA_ASFLAGS+=$$($1_ASFLAGS_$(OPENJDK_TARGET_OS)_debug)
+    $1_EXTRA_ASFLAGS+=$$($1_ASFLAGS_$(OPENJDK_TARGET_OS)_$(OPENJDK_TARGET_CPU)_debug)
+  else
+    $1_EXTRA_ASFLAGS+=$$($1_ASFLAGS_release)
+    $1_EXTRA_ASFLAGS+=$$($1_ASFLAGS_$(OPENJDK_TARGET_OS_API)_release)
+    $1_EXTRA_ASFLAGS+=$$($1_ASFLAGS_$(OPENJDK_TARGET_OS)_release)
+    $1_EXTRA_ASFLAGS+=$$($1_ASFLAGS_$(OPENJDK_TARGET_OS)_$(OPENJDK_TARGET_CPU)_release)
+  endif
+
   ifeq ($$($1_CXXFLAGS),)
     $1_CXXFLAGS:=$$($1_CFLAGS)
   endif
@@ -351,12 +366,14 @@
         # Always add debug symbols
         $1_EXTRA_CFLAGS+=$(CFLAGS_DEBUG_SYMBOLS)
         $1_EXTRA_CXXFLAGS+=$(CXXFLAGS_DEBUG_SYMBOLS)
+        $1_EXTRA_ASFLAGS+=$(ASFLAGS_DEBUG_SYMBOLS)
       else
         # Programs don't get the debug symbols added in the old build. It's not clear if
         # this is intentional.
         ifeq ($$($1_PROGRAM),)
           $1_EXTRA_CFLAGS+=$(CFLAGS_DEBUG_SYMBOLS)
           $1_EXTRA_CXXFLAGS+=$(CXXFLAGS_DEBUG_SYMBOLS)
+          $1_EXTRA_ASFLAGS+=$(ASFLAGS_DEBUG_SYMBOLS)
         endif
       endif
     endif
@@ -367,6 +384,21 @@
     $1_EXTRA_CXXFLAGS += $$(CXX_FLAG_REORDER)
   endif
 
+  # Check if warnings should be considered errors.
+  # Pick first binary and toolchain specific, then binary specific, then general setting.
+  ifeq ($$($1_WARNINGS_AS_ERRORS_$(TOOLCHAIN_TYPE)),)
+    ifeq ($$($1_WARNINGS_AS_ERRORS),)
+      $1_WARNINGS_AS_ERRORS_$(TOOLCHAIN_TYPE) := $$(WARNINGS_AS_ERRORS)
+    else
+      $1_WARNINGS_AS_ERRORS_$(TOOLCHAIN_TYPE) := $$($1_WARNINGS_AS_ERRORS)
+    endif
+  endif
+
+  ifeq ($$($1_WARNINGS_AS_ERRORS), true)
+    $1_EXTRA_CFLAGS += $(CFLAGS_WARNINGS_ARE_ERRORS)
+    $1_EXTRA_CXXFLAGS += $(CFLAGS_WARNINGS_ARE_ERRORS)
+  endif
+
   ifeq (NONE, $$($1_OPTIMIZATION))
     $1_EXTRA_CFLAGS += $(C_O_FLAG_NONE)
     $1_EXTRA_CXXFLAGS += $(CXX_O_FLAG_NONE)
@@ -391,7 +423,7 @@
   $$(foreach p,$$($1_SRCS), \
       $$(eval $$(call add_native_source,$1,$$p,$$($1_OBJECT_DIR), \
           $$($1_CFLAGS) $$($1_EXTRA_CFLAGS),$$($1_CC), \
-          $$($1_CXXFLAGS) $$($1_EXTRA_CXXFLAGS),$(CXX),$$($1_ASFLAGS))))
+          $$($1_CXXFLAGS) $$($1_EXTRA_CXXFLAGS),$(CXX),$$($1_EXTRA_ASFLAGS))))
 
   # On windows we need to create a resource file
   ifeq ($(OPENJDK_TARGET_OS), windows)
@@ -456,6 +488,8 @@
 		$(CP) $$< $$@
         endif
 
+        ifneq ($(STRIP_POLICY), no_strip)
+
         ifneq ($(OPENJDK_TARGET_OS), macosx)   # OBJCOPY is not used on MacOS X
           ifneq ($(OPENJDK_TARGET_OS), windows)  # nor on Windows
             ifeq ($(OPENJDK_TARGET_OS), solaris)
@@ -517,6 +551,8 @@
             endif
           endif
         endif
+
+        endif # no_strip
       endif
     endif
 
@@ -550,6 +586,8 @@
 		$(CP) $$< $$@
         endif
 
+        ifneq ($(STRIP_POLICY), no_strip)
+
         ifneq ($(OPENJDK_TARGET_OS), macosx)   # OBJCOPY is not used on MacOS X
           ifneq ($(OPENJDK_TARGET_OS), windows)  # nor on Windows
             ifeq ($(OPENJDK_TARGET_OS), solaris)
@@ -611,6 +649,8 @@
             endif
           endif
         endif
+
+      endif # no_strip
       endif
     endif