summaryrefslogtreecommitdiff
path: root/dev-java/openjdk
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2023-01-23 06:54:34 +0000
committerV3n3RiX <venerix@koprulu.sector>2023-01-23 06:54:34 +0000
commit9a1d1c6b10a4640cea10e7040ed173cf593f4cab (patch)
tree10b7aaa9608311a4b8a7561c6a8da3003ebb061d /dev-java/openjdk
parentdefbebad0d311b0ce0694b17989a9f26cf000250 (diff)
gentoo auto-resync : 23:01:2023 - 06:54:34
Diffstat (limited to 'dev-java/openjdk')
-rw-r--r--dev-java/openjdk/Manifest24
-rw-r--r--dev-java/openjdk/files/openjdk-17.0.3-fix-nullptr-cast.patch111
-rw-r--r--dev-java/openjdk/metadata.xml1
-rw-r--r--dev-java/openjdk/openjdk-11.0.15_p10-r1.ebuild300
-rw-r--r--dev-java/openjdk/openjdk-11.0.16.1_p1.ebuild300
-rw-r--r--dev-java/openjdk/openjdk-11.0.17_p8.ebuild300
-rw-r--r--dev-java/openjdk/openjdk-17.0.3_p7-r1.ebuild315
-rw-r--r--dev-java/openjdk/openjdk-17.0.4.1_p1.ebuild316
-rw-r--r--dev-java/openjdk/openjdk-17.0.5_p8.ebuild314
-rw-r--r--dev-java/openjdk/openjdk-17.0.6_p10.ebuild3
-rw-r--r--dev-java/openjdk/openjdk-8.332_p09.ebuild229
-rw-r--r--dev-java/openjdk/openjdk-8.345_p01.ebuild229
-rw-r--r--dev-java/openjdk/openjdk-8.352_p08.ebuild229
13 files changed, 4 insertions, 2667 deletions
diff --git a/dev-java/openjdk/Manifest b/dev-java/openjdk/Manifest
index f8a237ce10f0..374e6d892e2e 100644
--- a/dev-java/openjdk/Manifest
+++ b/dev-java/openjdk/Manifest
@@ -1,21 +1,10 @@
-AUX openjdk-17.0.3-fix-nullptr-cast.patch 5052 BLAKE2B d4a75732ba3f6c10279f8d33f58cdf854622fe3bd45fef924b153ab1c5502d414ba40ee36c351f12897672d0a91c4718f521c4e768555ebc166b3dcc99c2e077 SHA512 a9cc08391c3055c73953113df4fe22a37cb7a2785eae360ee323dfbfebb96ad7b2798d64e1fc596eadf2af8871842d8288690d862a579463bb32de844e94cc00
AUX openjdk-8-insantiate-arrayallocator.patch 647 BLAKE2B b2403d842ace7198520a25bf7c2027e6d74b5d418b52321722b21cac866df883d47e53e4f5e040aed55a9cc4bf03b5a62d008a0877add6c649a41f6230d78a38 SHA512 4bf002ec25844f4e55b588d0516e658c548700d3bcae79be74bf75d9cf30cf9cd448767db36935924dd3b07f34d0cf087321cb35abb4943690353d11485ab0de
AUX openjdk-8.env.sh 687 BLAKE2B 4bb851545955fafa6a4b08f2589fa9a5441ef37484eb21ac5db06cde111d325903e70b5b7473659973a0bab972386c8f33ded1da57858fdca325cfa29b1122f5 SHA512 a43fc0fcf57108350235d47d6da65a12fb9f77f12f6163c649ceceacb3317c6a25516efa060efe129b74138a529945163343e5a7d1de2b7af36f6580054ed5e5
AUX openjdk.env.sh 432 BLAKE2B 8779a373af2f9e52473cb5e3bc2bbcb7fa83c6d09382d498466888dd322299adc1b736c6e3723fa68e92a80067599228b3511cc2826e1ebc3c5845a7a2f62fa3 SHA512 e6604a88fb857945a618e4b7735d49dbc23bdd4c6fb70fc5753470e9c1047825208a40fe25107bcde95f290656b44f92e1667ebc414454cbae2e71f16fec5fbd
DIST java17-riscv64.patch 2253475 BLAKE2B a10a257f0b8bf590cdc011cf0c5af4854d49d6bbdf68dd74b2f996b70e0ecdd2b87bc4a02394f67ded5e664efb41f8dd03bb312fbfcffd84c289afdcbf7868de SHA512 06230b121e1f28189877025a4eab99e6d8cba176a17c88f073498fec6c73ab26130ce1500ea4f83235cc6abbc1742e47b227d60b5ff77465740048abdc52d165
DIST openjdk-11.0.14-riscv.patch.xz 279088 BLAKE2B f67cf5707246b22285de8217b68fb806e3c18b7289cb81428c0fe83c5a4dcd60233be10aaca0853ffb00ac24fa60cae1b1d60ed300ad6bff8b07e881bddf8650 SHA512 32bac5f0c0f5df883de344718586bf798db6c8a5738058ea5d4902f5a0a3fc841c1893dec3379a74b9468c1c37af5c31a3e296476549972d3f1305401354060d
-DIST openjdk-11.0.15_p10.tar.gz 122902351 BLAKE2B a2dabad415a92765d548b19261e22e2cd483a17b478c8ef98342b44e88b39b23d89d31aecc80f93b27fce8df50ba41f4e6e5f10b66035bbfc1e0c03fc4707a40 SHA512 9d9e631046769d3ad95229172f392649ef4162161eb2d6fa7371665619600a04db440e1b3d30c580e283ad2b6bd7580d1199fc854fad3cb962d79f18b2347c67
-DIST openjdk-11.0.16.1_p1.tar.gz 123134756 BLAKE2B 727294bb9d07193bb74b01a3e3e35f491b54be4cf3b6230e59df56ea7a9166b0b138f82b3d3c302c32b21efa8e9ac71437ca430a68a9ad8b69a7755d289bde17 SHA512 c694a8e6b0ff664b2c6a43ef3445d98e3b4ddf59c7fe94a21390b2d7756870ea7c7e34cb99d40bd66708ecaee93ffeb4dfc9ab7e2162bd6fc19479f23963560d
-DIST openjdk-11.0.17_p8.tar.gz 123284789 BLAKE2B 413f88b1b0e3c26c87d8e9e69468c14cb39e50f193908c029828c7e7f77f3408eef9675860223a8a04f73e4417cedef1f1e23f337c0c9bd00127093cc2a824a8 SHA512 d7229bf96591494edcff950a7263a718ef8bb5ce918b1873b7d8987fddfaab0a0955c88cbdc5d09d294e2461c4fefa020d7642c221953ab881e8c642f585c28f
DIST openjdk-11.0.18_p10.tar.gz 123369840 BLAKE2B 1fa6a147ac0685f51b82f7b958b81d4ac56dd0d94234dab54d4c3641d4d5b0905b4778fa73f2d8582249f251839dd3ff5b8835c2ff3eb24f402d1399cfc27ffe SHA512 10a48066ad1d2b627cc9be5c6e06a0deef7241f3b95b917b3bf86ffeb53ea043915e0eb7784ea244332d9c3941c8c5056c154e5aff4522b95aca8c8372c19474
-DIST openjdk-17.0.3-riscv.patch.xz 296268 BLAKE2B 9b2036493a485a1e245230488a5985af4f5d5c6a85912d73d8a712742fdfc26d5eb08ca8e69dac04f0d516fb361e6ed057c95a3839b04639d129581cf00f0620 SHA512 692b5e39e5c6eb1222f25c3012e9a73366d9c98f5c29c2f2d35f41991cdcb026a644398b6f3fdd8c9d8368b4b1f5dc4d89b3dbd594a2e7751de96a140551d445
-DIST openjdk-17.0.3_p7.tar.gz 104797560 BLAKE2B 025ff6be360c74288990622bce31769e5780f3f326b0eed2b78a776cc4df8bdf8cb99dfb0d7dd3f03f8558ca9a66acc5c5bd04b227ba4dffe18f8586a287b74b SHA512 3bebaaf0469cd6558a3f033b768005e880ec95d5bb2a24b8929d2f6a05f18ca9977b291ad49b220a904f661cf6b47780a1cfd776109ed11d4e34d5345be8f66c
-DIST openjdk-17.0.4.1_p1.tar.gz 104892822 BLAKE2B e5c4ae7e59b7f078c3927ca74cdff4fe1f378da874eca45a7655fa7419c9abac6b9f81632c104614b7f1d6c20fbc5ee7f4b0a8e2aaef39a66f31377543e926de SHA512 33396f9d8101db605aac0b064d518a800194421b211f0d903d681968beab58540367e53293fa26d4751e4bd1f459a0d07bb08b2010ac64ea5438717ea1517f76
-DIST openjdk-17.0.5_p8.tar.gz 105048497 BLAKE2B c707633a247e5ff4f5083623e874200d694c3fa37519dad65db5271e8c218632846efc01520ddfa3f9ffdecf7c1209f85ee3320a92660af8fa1b1fbc9184f468 SHA512 8446b6ed93b286a39476fdb215be0da8ba679fb475f117a6a92f72a833759ac821c4ed87d033be56992d147c1b6d3ac1348ad2a6ad8a3e057c7b85b589266ff9
DIST openjdk-17.0.6_p10.tar.gz 105221267 BLAKE2B c885c10aea273e779bbee4463106598900790378e06012f0019bfbbba8987a99a6aad53aca39bdc5ffba5f610a84e6c4cfd98c697e46404d388d32186b2ccd6b SHA512 7fa47285fb1776802dc35352bfe64d6b376cbc73d7b72ef7d5c8ad41c181d8aa9dc6fb392fe3b1c799974765d40c03a6643ad6afeb3ddc9ab45e546b747ebb3c
-DIST openjdk-8.332_p09.tar.gz 88130953 BLAKE2B 9c7419851588dfbca92610f8fbb8b74fa7516282f82e8c7c37af88c776ba0c83a22fb3d4a1c2c2b98d44e394025217d095cff9c79fba53f9c5a32a43eb91ad70 SHA512 f6a717f77cc0e85bc2eb3c3c599d09e06a4004e4987a2caf0773b1197336722469e2abcca9d39c1f4c534d15cd77408d6405c9ee6edb3815bccd8e4872571aaa
-DIST openjdk-8.345_p01.tar.gz 88173976 BLAKE2B f0eca11f4fcb532a8fd156a74ff6629ea2d948c5d29d9b9638b526c57598618f5c3782ace26654be61f8d9ab229f44aa46112234c2d2e8a9bdc367c1071b6e53 SHA512 bb01156f751a0ba25290d1337356f9dd78121373220e2e2df07a4536e2ab31390865ab63d628901de7983d1679dd6dfd4bc3c6304911e6c76fe4c616bdf07eab
-DIST openjdk-8.352_p08.tar.gz 87951551 BLAKE2B da24a507583b820ae30b9f7e0d7661a8d5fac86f25dd27aab747d7ed0bea387b00379e067c0f2cdba0f44815ea6689e50c0a21a1b9a2ff807480a8ecbe1f6f8f SHA512 85f17830bee92b88afa69957b0c2fa49333845d65acd48c5f6548a020a3a69a82d8691884757e07f4d146223e7725c5e0cc51d2d3d6c984d457d3772e3b7c862
DIST openjdk-8.362_p09.tar.gz 87939909 BLAKE2B cff08a04e2e0cf0af776d8ae8220cae86afb322a4dbb83df39444b08a23dd59fea761a0ee403d24d7fd639e1982eac7c77764920c7efcfeb877dc64763c9f672 SHA512 6579e881f36902db49db8d136f1cd9d2b2659705b216bfe014df99441d1984b4d7678998bb36edf78b77049bdd8315a8dcf22e6a598b485b972fee3784fe2ef7
DIST openjdk-bootstrap-11.0.13_p8-ppc64.tar.xz 108215404 BLAKE2B 5e6c0b905b34b437137922b73a9724da96b8832186fea945f8c73d941db822ca1cc5718f3ecb4607ed98d1f8241c9f365b54caaf978863e8b84680a94f067b5d SHA512 732e2220219d42be10589fcaf2420da87ebc8564b4afc6bd02f61f31cdca9c31b339366e34d374fb814499b92f8aa796435a18f28e10c8cb00d9a0f5953bb60e
DIST openjdk-bootstrap-11.0.13_p8-x86.tar.xz 105420236 BLAKE2B d3137ad497937a9a04dedf38776f3ac45bf3b115d275991fd8582b72ade48390b6aa8ad89e0b4d34fa6a787a3c413dab20b32ef347dc8733544e810150c55d29 SHA512 f71a7ef8fbf19b0595dd7d4ebe52bbe1c95b8c17f34d092472c5f5ce8caf52a053f22db8587f1649f9a96ad01c0c632be343342812f5a8cc4ff843b33b8d9b0f
@@ -24,16 +13,7 @@ DIST openjdk-bootstrap-17.0.1_p12-ppc64.tar.xz 116557680 BLAKE2B d20e45a5a76e30e
DIST openjdk-bootstrap-17.0.1_p12-x86.tar.xz 111479904 BLAKE2B 17d33f8ee81c2846f417d8e7cd1429eb611e916a6b375c76127179dc6afc55b0254248360c892ce37a178fd553934d952ec8955ff5d0613eb66678b8ecefe917 SHA512 094bcc960801e5fd7e1c966c8101c195ac7fa5e222d9c8e79ca64f8a3e6812613c17a0356211e7dd831325fa11af88cc22ed56c434d65504f18dd4f4ceaedfdf
DIST openjdk-bootstrap-17.0.2_p8-arm64-musl.tar.xz 115353932 BLAKE2B 0cc4ab078085f094bbcc65448458d98a0f521e3b754c5118b1b4f957cfa00c24e896c811c2a477822c469ffcfe0de1ad6a8d0b7db23b0b09ae3b459eaf8c4fc8 SHA512 e30acd6c64a0095f4203129ecf2cff4c6b4293bc017457465d3abb746d280a2f5d89028eed22f7f3d236890d047149c7aa257e3b49593d7a6ab4dd6b777a7c26
DIST openjdk-bootstrap-17.0.3_p7-riscv.tar.xz 113344052 BLAKE2B 69ae326c600ecf1840a0874b1e26545779434b979e195a3bc7975615f873cd9ffce324f291e56a2800edc304447845baec774b2a08964afde274bd8e0dd3f704 SHA512 4a483faa32b26758f6fae605fdb3d3b77814c627a3a560e91ca88e2d36a88543a53f019a59b5a6456b87ca671e8b7129d5766210bd5cd52125cb3a040ec2a23f
-EBUILD openjdk-11.0.15_p10-r1.ebuild 8425 BLAKE2B 71dd261987e7a0690b685211b645b9ac53f3b8e01cba388f82893b4bb4afc2ba69c7c4a8fd2095d097f0f0cce613d7ef9b9f080a010e30a72746990a11745747 SHA512 e1d242e838f10210c9bfaef0b2ec70f59f38bafca7c1d22c2bdc7df46c22fcc3d48f27468a02488f415fe765e5c418279cee320e55fe6eb13cbcfddaa92ae098
-EBUILD openjdk-11.0.16.1_p1.ebuild 8429 BLAKE2B 8d4f3e16513d52f5a92a917057c0e46283b29c17853f40c08f81939cef0e5f1aa7e2c99535d776be13f37df6e9e5f51762a861c48d2bec9c6bda6d6a99e0cfed SHA512 f4598d99b1e26d1f08cc7c9aa5a8f93424665e18bbc913562460a080738b5ca9d990618dd47206b161f81908efdfcb3cc6444341753c1b5dec83645156a58b60
-EBUILD openjdk-11.0.17_p8.ebuild 8429 BLAKE2B 8d4f3e16513d52f5a92a917057c0e46283b29c17853f40c08f81939cef0e5f1aa7e2c99535d776be13f37df6e9e5f51762a861c48d2bec9c6bda6d6a99e0cfed SHA512 f4598d99b1e26d1f08cc7c9aa5a8f93424665e18bbc913562460a080738b5ca9d990618dd47206b161f81908efdfcb3cc6444341753c1b5dec83645156a58b60
EBUILD openjdk-11.0.18_p10.ebuild 8425 BLAKE2B 77168c2472fcf6d1cb2a1971362c6c326f42336a6894724f72960ce5ec086afe2f366c1023d17620b8430ec451b3f8023e25f57684167b621961fb7a2d9d0289 SHA512 9f7e5b35f199623f70948dd0f8e1176f284a24c0e3d742ccb39d0aafb11fb8b7aae131b301f12e78ab2f9a55ff8c0330d66fee2c8b76355111be629d5b1faeb1
-EBUILD openjdk-17.0.3_p7-r1.ebuild 9182 BLAKE2B b398b29f7dc72d8e5afcfd76552879699de72e748a288ea44cfdcea86703f764bcabf3e4dcd585d62186bdabb47ff7b3f3fc529b1beff3ad19f1bf0ec223e5a8 SHA512 6498f31530c69a7b2129748d2056cac6f4a0420566af27ef1a8f5918a4c2973eac9c162acb646314f7599cbcf9d825acfdba06af39ee2fc6db578d62c2353ebf
-EBUILD openjdk-17.0.4.1_p1.ebuild 9147 BLAKE2B 82f18b43d61b3333e064dfb31044fc6cb7d1ad3ef7694df275dcf3bc4e004a76c067d1652dc45c7f11306e14e5904944d84dd377a964c0908b9cb1f3edb09ef0 SHA512 3e14c36d05a6a37ede1faceb5dfb1a5799910004c627634864f7b0a769a54b2798d697f75c84bf03ded4d61c028ce274a8eb9ab495e1c480fc4dc24a476165f6
-EBUILD openjdk-17.0.5_p8.ebuild 9209 BLAKE2B 9e9bc4c14e053300df1ab19cde9c84ec81b44baf84c08f49e83618c0dbe8df4e70e3d0750c034f4d51eb9eb7455afafa365b819cf30537bb8c2bd91f9e1e0049 SHA512 e509473f27d6be8ae0796935d15abe62fc7a48b4899dcd264d93dbfd4a0784d11c4483c52ba7b4b5cfd9263cf73a4e87512795c966951d53aed63196ba7142a2
-EBUILD openjdk-17.0.6_p10.ebuild 9205 BLAKE2B ab0ccdce211278268b3c8b2389c03e6cc8a3b50488915058852f924734198e2d491b57e0da671f1b03c7cc2307c9e6386f953cd46b5be6ef8d3652713745d7a2 SHA512 0279d731b194436f64821da2b36aac5cb3810cde49db15048aca20452a5cc770eb58fd4e5b84d530474b18145bbf55568916107b8cf27851bd9b959133f9ef91
-EBUILD openjdk-8.332_p09.ebuild 6183 BLAKE2B e1519d397a5bbb99c91485181af982d1ef6ed674a51e0dff54426eaf1a1222cf38d2a4b30990f33cb868a6385ce4d433fa6b18e9b41db381259d2bfc5e421db8 SHA512 ca2653a9f7f74bb057f8c0023fa7a7b7ab9b367d8571bf5db7f2532939a0bcf7500c062628cc5055d1ee58e28a666999e0df5da5351c2a1c609509a0a74c272a
-EBUILD openjdk-8.345_p01.ebuild 6187 BLAKE2B 4a46442662eacfe3eb99348863592a7b40515f91aab59556ce16e70fb004b7b57d4401072dae4a6e4951054497ac91970a4209611895935ba05d1c218778a8db SHA512 0fc74381d7e3dcc658366bbb9e04ffcfabcb403d109b9145d12f8f9427451af3b99885fcfab0d2296ad8044e9c36aa4db5826d9b5a8959d8c5568f9b3a3bf4dc
-EBUILD openjdk-8.352_p08.ebuild 6187 BLAKE2B 4a46442662eacfe3eb99348863592a7b40515f91aab59556ce16e70fb004b7b57d4401072dae4a6e4951054497ac91970a4209611895935ba05d1c218778a8db SHA512 0fc74381d7e3dcc658366bbb9e04ffcfabcb403d109b9145d12f8f9427451af3b99885fcfab0d2296ad8044e9c36aa4db5826d9b5a8959d8c5568f9b3a3bf4dc
+EBUILD openjdk-17.0.6_p10.ebuild 9207 BLAKE2B e93c98f6687634007af18c7d66ecfc8bd747e78e617a74832d8097a61a0305dfc952f06cdc55a93da14447c8141c86857e528da4b5e929871943016cc4fae880 SHA512 6397b76ae0f6d30ff10adf47426c8b15d3e1a2e3d240c50af2b7b4d331c4f053aacc0c289d630ea7c958d06dc6216df31a5e0fab29bb9e20cbbe47bcd7ced50d
EBUILD openjdk-8.362_p09.ebuild 6183 BLAKE2B 8ef098742c8f8e6b40fd93d715747dd17227829e804b0061510d9c6ba31cade00bb84c929395de8f49ec57b52a028bea583cc820d8cc9110e49d4a2798218d2b SHA512 5e973ebdd2f750aa8600a435c5dba52d0c9e5c555c3215311d6dc07268bda3c29fbcfd36039374aa1fd7957872d52e6b97c38f3aa782b84b116e2f5a544a6b05
-MISC metadata.xml 1736 BLAKE2B 5911a98287022f27f1e0247e33b483981aa4d7a21c387305661039b5d195c458ff603c1c50e54dfb1116bcb932f4bdf09e191130ed6ea3c7c19fc698e4c70730 SHA512 e120118ace1e053d7e3899343dbf82ac54d7758caaa354f4e29c68f3a705ba61cfe545334441b46eac425bf2b81d2b1c107890c3ca6bfe96c3b783fbecc7bbee
+MISC metadata.xml 1607 BLAKE2B 166efc846c7aedb0e25b7479bc2d804079ea52a1fddbf5f1bb8e463c777a79b5cebd901e9c897e5135140ba2e5067bec7a02aedf5d15da12bd4063505a711d48 SHA512 c54bc02d391ecd8ab2fda8b8a37b0e28bbddf71d821ade63a1b353eb02bf8fa92983f42a4d470ada6d8d835e0bf012aea8409b6f6fd3f4b25c86949a35167eba
diff --git a/dev-java/openjdk/files/openjdk-17.0.3-fix-nullptr-cast.patch b/dev-java/openjdk/files/openjdk-17.0.3-fix-nullptr-cast.patch
deleted file mode 100644
index 11f159680d8b..000000000000
--- a/dev-java/openjdk/files/openjdk-17.0.3-fix-nullptr-cast.patch
+++ /dev/null
@@ -1,111 +0,0 @@
-https://git.alpinelinux.org/aports/tree/community/openjdk17/FixNullPtrCast.patch
-https://github.com/openjdk/jdk17u/pull/347
-
-See also:
-https://www.openwall.com/lists/musl/2013/01/09/1
-https://git.musl-libc.org/cgit/musl/tree/include/unistd.h#n20
-
-Subject: Fix cast errors with latest GCC (11.2)
-Upstream: No
-Author: Simon Frankenberger <simon-alpine@fraho.eu>
-
-This patch fixes multiple casting errors reported by GCC 11.2
-
---- old/src/hotspot/share/gc/shenandoah/shenandoahBarrierSet.inline.hpp
-+++ new/src/hotspot/share/gc/shenandoah/shenandoahBarrierSet.inline.hpp
-@@ -205,7 +205,7 @@
-
- // Note: We don't need a keep-alive-barrier here. We already enqueue any loaded reference for SATB anyway,
- // because it must be the previous value.
-- res = load_reference_barrier(decorators, res, reinterpret_cast<T*>(NULL));
-+ res = load_reference_barrier(decorators, res, static_cast<T*>(NULL));
- satb_enqueue(res);
- return res;
- }
-@@ -216,7 +216,7 @@
- oop previous = RawAccess<>::oop_atomic_xchg(addr, new_value);
- // Note: We don't need a keep-alive-barrier here. We already enqueue any loaded reference for SATB anyway,
- // because it must be the previous value.
-- previous = load_reference_barrier<T>(decorators, previous, reinterpret_cast<T*>(NULL));
-+ previous = load_reference_barrier<T>(decorators, previous, static_cast<T*>(NULL));
- satb_enqueue(previous);
- return previous;
- }
---- old/src/hotspot/share/oops/access.hpp
-+++ new/src/hotspot/share/oops/access.hpp
-@@ -294,8 +294,8 @@
- static inline void arraycopy(arrayOop src_obj, size_t src_offset_in_bytes,
- arrayOop dst_obj, size_t dst_offset_in_bytes,
- size_t length) {
-- AccessT::arraycopy(src_obj, src_offset_in_bytes, reinterpret_cast<const T*>(NULL),
-- dst_obj, dst_offset_in_bytes, reinterpret_cast<T*>(NULL),
-+ AccessT::arraycopy(src_obj, src_offset_in_bytes, static_cast<const T*>(NULL),
-+ dst_obj, dst_offset_in_bytes, static_cast<T*>(NULL),
- length);
- }
-
-@@ -303,7 +303,7 @@
- static inline void arraycopy_to_native(arrayOop src_obj, size_t src_offset_in_bytes,
- T* dst,
- size_t length) {
-- AccessT::arraycopy(src_obj, src_offset_in_bytes, reinterpret_cast<const T*>(NULL),
-+ AccessT::arraycopy(src_obj, src_offset_in_bytes, static_cast<const T*>(NULL),
- NULL, 0, dst,
- length);
- }
-@@ -313,15 +313,15 @@
- arrayOop dst_obj, size_t dst_offset_in_bytes,
- size_t length) {
- AccessT::arraycopy(NULL, 0, src,
-- dst_obj, dst_offset_in_bytes, reinterpret_cast<T*>(NULL),
-+ dst_obj, dst_offset_in_bytes, static_cast<T*>(NULL),
- length);
- }
-
- static inline bool oop_arraycopy(arrayOop src_obj, size_t src_offset_in_bytes,
- arrayOop dst_obj, size_t dst_offset_in_bytes,
- size_t length) {
-- return AccessT::oop_arraycopy(src_obj, src_offset_in_bytes, reinterpret_cast<const HeapWord*>(NULL),
-- dst_obj, dst_offset_in_bytes, reinterpret_cast<HeapWord*>(NULL),
-+ return AccessT::oop_arraycopy(src_obj, src_offset_in_bytes, static_cast<const HeapWord*>(NULL),
-+ dst_obj, dst_offset_in_bytes, static_cast<HeapWord*>(NULL),
- length);
- }
-
---- old/src/hotspot/cpu/x86/interp_masm_x86.cpp
-+++ new/src/hotspot/cpu/x86/interp_masm_x86.cpp
-@@ -1122,7 +1122,7 @@
-
- bind(loop);
- // check if current entry is used
-- cmpptr(Address(rmon, BasicObjectLock::obj_offset_in_bytes()), (int32_t) NULL);
-+ cmpptr(Address(rmon, BasicObjectLock::obj_offset_in_bytes()), 0);
- jcc(Assembler::notEqual, exception);
-
- addptr(rmon, entry_size); // otherwise advance to next entry
---- old/src/hotspot/cpu/x86/interpreterRT_x86_64.cpp
-+++ new/src/hotspot/cpu/x86/interpreterRT_x86_64.cpp
-@@ -443,10 +443,10 @@
- _from -= Interpreter::stackElementSize;
-
- if (_num_int_args < Argument::n_int_register_parameters_c-1) {
-- *_int_args++ = (*from_addr == 0) ? NULL : (intptr_t)from_addr;
-+ *_int_args++ = (*from_addr == 0) ? (intptr_t) 0 : (intptr_t) from_addr;
- _num_int_args++;
- } else {
-- *_to++ = (*from_addr == 0) ? NULL : (intptr_t) from_addr;
-+ *_to++ = (*from_addr == 0) ? (intptr_t) 0 : (intptr_t) from_addr;
- }
- }
-
---- old/src/hotspot/cpu/aarch64/interpreterRT_aarch64.cpp
-+++ new/src/hotspot/cpu/aarch64/interpreterRT_aarch64.cpp
-@@ -267,7 +267,7 @@
-
- virtual void pass_object() {
- intptr_t* addr = single_slot_addr();
-- intptr_t value = *addr == 0 ? NULL : (intptr_t)addr;
-+ intptr_t value = *addr == 0 ? (intptr_t) 0 : (intptr_t)addr;
- if (pass_gpr(value) < 0) {
- pass_stack<>(value);
- }
diff --git a/dev-java/openjdk/metadata.xml b/dev-java/openjdk/metadata.xml
index ab5c5e686f17..367d2eb36d3e 100644
--- a/dev-java/openjdk/metadata.xml
+++ b/dev-java/openjdk/metadata.xml
@@ -20,7 +20,6 @@
</slots>
<use>
<flag name="headless-awt">Don't install the X backend for AWT, needed by some GUIs</flag>
- <flag name="gentoo-vm">Allow this JDK to be recognised by Gentoo (package manager, eselect, java-config, EXPERIMENTAL!)</flag>
<flag name="javafx" restrict="&lt;=dev-java/openjdk-9">Provide JavaFX support via <pkg>dev-java/openjfx</pkg></flag>
<flag name="javafx" restrict="&gt;=dev-java/openjdk-11">Import OpenJFX modules at build time, via <pkg>dev-java/openjfx</pkg></flag>
<flag name="jbootstrap">Build OpenJDK twice, the second time using the result of the first</flag>
diff --git a/dev-java/openjdk/openjdk-11.0.15_p10-r1.ebuild b/dev-java/openjdk/openjdk-11.0.15_p10-r1.ebuild
deleted file mode 100644
index feaa4c78cbc9..000000000000
--- a/dev-java/openjdk/openjdk-11.0.15_p10-r1.ebuild
+++ /dev/null
@@ -1,300 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit eapi8-dosym check-reqs flag-o-matic java-pkg-2 java-vm-2 multiprocessing toolchain-funcs
-
-# don't change versioning scheme
-# to find correct _p number, look at
-# https://github.com/openjdk/jdk${SLOT}u/tags
-# you will see, for example, jdk-17.0.4.1-ga and jdk-17.0.4.1+1, both point
-# to exact same commit sha. we should always use the full version.
-# -ga tag is just for humans to easily identify General Availability release tag.
-# we need -ga tag to fetch tarball and unpack it, but exact number everywhere else to
-# set build version properly
-MY_PV="${PV%_p*}-ga"
-SLOT="${MY_PV%%[.+]*}"
-
-# variable name format: <UPPERCASE_KEYWORD>_XPAK
-PPC64_XPAK="11.0.13_p8" # big-endian bootstrap tarball
-RISCV_XPAK="11.0.14_p9" # lp64d bootstrap tarball
-X86_XPAK="11.0.13_p8"
-
-# Usage: bootstrap_uri <keyword> <version> [extracond]
-# Example: $(bootstrap_uri ppc64 17.0.1_p12 big-endian)
-# Output: ppc64? ( big-endian? ( https://...17.0.1_p12-ppc64.tar.xz ) )
-bootstrap_uri() {
- local baseuri="https://dev.gentoo.org/~arthurzam/distfiles/dev-java/${PN}/${PN}-bootstrap"
- local suff="tar.xz"
- local kw="${1:?${FUNCNAME[0]}: keyword not specified}"
- local ver="${2:?${FUNCNAME[0]}: version not specified}"
- local cond="${3-}"
-
- # here be dragons
- echo "${kw}? ( ${cond:+${cond}? (} ${baseuri}-${ver}-${kw}.${suff} ${cond:+) })"
-}
-
-DESCRIPTION="Open source implementation of the Java programming language"
-HOMEPAGE="https://openjdk.org"
-SRC_URI="
- https://github.com/${PN}/jdk${SLOT}u/archive/refs/tags/jdk-${MY_PV}.tar.gz
- -> ${P}.tar.gz
- !system-bootstrap? (
- $(bootstrap_uri ppc64 ${PPC64_XPAK} big-endian)
- $(bootstrap_uri riscv ${RISCV_XPAK})
- $(bootstrap_uri x86 ${X86_XPAK})
- )
- riscv? ( https://dev.gentoo.org/~arthurzam/distfiles/dev-java/openjdk/openjdk-11.0.14-riscv.patch.xz )
-"
-
-LICENSE="GPL-2"
-KEYWORDS="amd64 ~arm arm64 ppc64 ~riscv x86"
-
-IUSE="alsa big-endian cups debug doc examples headless-awt javafx +jbootstrap selinux source system-bootstrap systemtap"
-
-REQUIRED_USE="
- javafx? ( alsa !headless-awt )
- !system-bootstrap? ( jbootstrap )
-"
-
-COMMON_DEPEND="
- media-libs/freetype:2=
- media-libs/giflib:0/7
- media-libs/harfbuzz:=
- media-libs/libpng:0=
- media-libs/lcms:2=
- sys-libs/zlib
- media-libs/libjpeg-turbo:0=
- systemtap? ( dev-util/systemtap )
-"
-
-# Many libs are required to build, but not to run, make is possible to remove
-# by listing conditionally in RDEPEND unconditionally in DEPEND
-RDEPEND="
- ${COMMON_DEPEND}
- >=sys-apps/baselayout-java-0.1.0-r1
- !headless-awt? (
- x11-libs/libX11
- x11-libs/libXext
- x11-libs/libXi
- x11-libs/libXrandr
- x11-libs/libXrender
- x11-libs/libXt
- x11-libs/libXtst
- )
- alsa? ( media-libs/alsa-lib )
- cups? ( net-print/cups )
- selinux? ( sec-policy/selinux-java )
-"
-
-DEPEND="
- ${COMMON_DEPEND}
- app-arch/zip
- media-libs/alsa-lib
- net-print/cups
- x11-base/xorg-proto
- x11-libs/libX11
- x11-libs/libXext
- x11-libs/libXi
- x11-libs/libXrandr
- x11-libs/libXrender
- x11-libs/libXt
- x11-libs/libXtst
- javafx? ( dev-java/openjfx:${SLOT}= )
- system-bootstrap? (
- || (
- dev-java/openjdk-bin:${SLOT}[gentoo-vm(+)]
- dev-java/openjdk:${SLOT}[gentoo-vm(+)]
- )
- )
-"
-
-S="${WORKDIR}/jdk${SLOT}u-jdk-${MY_PV}"
-
-# The space required to build varies wildly depending on USE flags,
-# ranging from 2GB to 16GB. This function is certainly not exact but
-# should be close enough to be useful.
-openjdk_check_requirements() {
- local M
- M=2048
- M=$(( $(usex jbootstrap 2 1) * $M ))
- M=$(( $(usex debug 3 1) * $M ))
- M=$(( $(usex doc 320 0) + $(usex source 128 0) + 192 + $M ))
-
- CHECKREQS_DISK_BUILD=${M}M check-reqs_pkg_${EBUILD_PHASE}
-}
-
-pkg_pretend() {
- openjdk_check_requirements
- if [[ ${MERGE_TYPE} != binary ]]; then
- has ccache ${FEATURES} && die "FEATURES=ccache doesn't work with ${PN}, bug #677876"
- fi
-}
-
-pkg_setup() {
- openjdk_check_requirements
- java-vm-2_pkg_setup
-
- [[ ${MERGE_TYPE} == "binary" ]] && return
-
- JAVA_PKG_WANT_BUILD_VM="openjdk-${SLOT} openjdk-bin-${SLOT}"
- JAVA_PKG_WANT_SOURCE="${SLOT}"
- JAVA_PKG_WANT_TARGET="${SLOT}"
-
- if use system-bootstrap; then
- for vm in ${JAVA_PKG_WANT_BUILD_VM}; do
- if [[ -d ${BROOT}/usr/lib/jvm/${vm} ]]; then
- java-pkg-2_pkg_setup
- return
- fi
- done
- fi
-}
-
-src_prepare() {
- use riscv && eapply "${WORKDIR}"/openjdk-11.0.14-riscv.patch
- default
- chmod +x configure || die
-}
-
-src_configure() {
- if ! use system-bootstrap; then
- local xpakvar="${ARCH^^}_XPAK"
- export JDK_HOME="${WORKDIR}/openjdk-bootstrap-${!xpakvar}"
- fi
-
- # Work around stack alignment issue, bug #647954.
- use x86 && append-flags -mincoming-stack-boundary=2
-
- # Work around -fno-common ( GCC10 default ), bug #713180
- append-flags -fcommon
-
- # Strip some flags users may set, but should not. #818502
- filter-flags -fexceptions
-
- # Enabling full docs appears to break doc building. If not
- # explicitly disabled, the flag will get auto-enabled if pandoc and
- # graphviz are detected. pandoc has loads of dependencies anyway.
-
- local myconf=(
- --disable-ccache
- --disable-precompiled-headers
- --enable-full-docs=no
- --with-boot-jdk="${JDK_HOME}"
- --with-extra-cflags="${CFLAGS}"
- --with-extra-cxxflags="${CXXFLAGS}"
- --with-extra-ldflags="${LDFLAGS}"
- --with-freetype="${XPAK_BOOTSTRAP:-system}"
- --with-giflib="${XPAK_BOOTSTRAP:-system}"
- --with-harfbuzz="${XPAK_BOOTSTRAP:-system}"
- --with-lcms="${XPAK_BOOTSTRAP:-system}"
- --with-libjpeg="${XPAK_BOOTSTRAP:-system}"
- --with-libpng="${XPAK_BOOTSTRAP:-system}"
- --with-native-debug-symbols=$(usex debug internal none)
- --with-vendor-name="Gentoo"
- --with-vendor-url="https://gentoo.org"
- --with-vendor-bug-url="https://bugs.gentoo.org"
- --with-vendor-vm-bug-url="https://bugs.openjdk.java.net"
- --with-vendor-version-string="${PVR}"
- --with-version-pre=""
- --with-version-string="${PV%_p*}"
- --with-version-build="${PV#*_p}"
- --with-zlib="${XPAK_BOOTSTRAP:-system}"
- --enable-dtrace=$(usex systemtap yes no)
- --enable-headless-only=$(usex headless-awt yes no)
- $(tc-is-clang && echo "--with-toolchain-type=clang")
- )
- ! use riscv && myconf+=( --with-jvm-features=shenandoahgc )
-
- if use javafx; then
- # this is not useful for users, just for upstream developers
- # build system compares mesa version in md file
- # https://bugs.gentoo.org/822612
- export LEGAL_EXCLUDES=mesa3d.md
-
- local zip="${EPREFIX}/usr/$(get_libdir)/openjfx-${SLOT}/javafx-exports.zip"
- if [[ -r ${zip} ]]; then
- myconf+=( --with-import-modules="${zip}" )
- else
- die "${zip} not found or not readable"
- fi
- fi
-
- if use !system-bootstrap ; then
- addpredict /dev/random
- addpredict /proc/self/coredump_filter
- fi
-
- (
- unset _JAVA_OPTIONS JAVA JAVA_TOOL_OPTIONS JAVAC XARGS
- CFLAGS= CXXFLAGS= LDFLAGS= \
- CONFIG_SITE=/dev/null \
- econf "${myconf[@]}"
- )
-}
-
-src_compile() {
- local myemakeargs=(
- JOBS=$(makeopts_jobs)
- LOG=debug
- CFLAGS_WARNINGS_ARE_ERRORS= # No -Werror
- NICE= # Use PORTAGE_NICENESS, don't adjust further down
- $(usex doc docs '')
- $(usex jbootstrap bootcycle-images product-images)
- )
- emake "${myemakeargs[@]}" -j1 #nowarn
-}
-
-src_install() {
- local dest="/usr/$(get_libdir)/${PN}-${SLOT}"
- local ddest="${ED}/${dest#/}"
-
- cd "${S}"/build/*-release/images/jdk || die
-
- # Create files used as storage for system preferences.
- mkdir .systemPrefs || die
- touch .systemPrefs/.system.lock || die
- touch .systemPrefs/.systemRootModFile || die
-
- # Oracle and IcedTea have libjsoundalsa.so depending on
- # libasound.so.2 but OpenJDK only has libjsound.so. Weird.
- if ! use alsa ; then
- rm -v lib/libjsound.* || die
- fi
-
- if ! use examples ; then
- rm -vr demo/ || die
- fi
-
- if ! use source ; then
- rm -v lib/src.zip || die
- fi
-
- rm -v lib/security/cacerts || die
-
- dodir "${dest}"
- cp -pPR * "${ddest}" || die
-
- dosym8 -r /etc/ssl/certs/java/cacerts "${dest}"/lib/security/cacerts
-
- # must be done before running itself
- java-vm_set-pax-markings "${ddest}"
-
- einfo "Creating the Class Data Sharing archives and disabling usage tracking"
- "${ddest}/bin/java" -server -Xshare:dump -Djdk.disableLastUsageTracking || die
-
- java-vm_install-env "${FILESDIR}"/${PN}.env.sh
- java-vm_revdep-mask
- java-vm_sandbox-predict /dev/random /proc/self/coredump_filter
-
- if use doc ; then
- docinto html
- dodoc -r "${S}"/build/*-release/images/docs/*
- dosym8 -r /usr/share/doc/"${PF}" /usr/share/doc/"${PN}-${SLOT}"
- fi
-}
-
-pkg_postinst() {
- java-vm-2_pkg_postinst
-}
diff --git a/dev-java/openjdk/openjdk-11.0.16.1_p1.ebuild b/dev-java/openjdk/openjdk-11.0.16.1_p1.ebuild
deleted file mode 100644
index 055cb96bc4a9..000000000000
--- a/dev-java/openjdk/openjdk-11.0.16.1_p1.ebuild
+++ /dev/null
@@ -1,300 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit eapi8-dosym check-reqs flag-o-matic java-pkg-2 java-vm-2 multiprocessing toolchain-funcs
-
-# don't change versioning scheme
-# to find correct _p number, look at
-# https://github.com/openjdk/jdk${SLOT}u/tags
-# you will see, for example, jdk-17.0.4.1-ga and jdk-17.0.4.1+1, both point
-# to exact same commit sha. we should always use the full version.
-# -ga tag is just for humans to easily identify General Availability release tag.
-# we need -ga tag to fetch tarball and unpack it, but exact number everywhere else to
-# set build version properly
-MY_PV="${PV%_p*}-ga"
-SLOT="${MY_PV%%[.+]*}"
-
-# variable name format: <UPPERCASE_KEYWORD>_XPAK
-PPC64_XPAK="11.0.13_p8" # big-endian bootstrap tarball
-RISCV_XPAK="11.0.14_p9" # lp64d bootstrap tarball
-X86_XPAK="11.0.13_p8"
-
-# Usage: bootstrap_uri <keyword> <version> [extracond]
-# Example: $(bootstrap_uri ppc64 17.0.1_p12 big-endian)
-# Output: ppc64? ( big-endian? ( https://...17.0.1_p12-ppc64.tar.xz ) )
-bootstrap_uri() {
- local baseuri="https://dev.gentoo.org/~arthurzam/distfiles/dev-java/${PN}/${PN}-bootstrap"
- local suff="tar.xz"
- local kw="${1:?${FUNCNAME[0]}: keyword not specified}"
- local ver="${2:?${FUNCNAME[0]}: version not specified}"
- local cond="${3-}"
-
- # here be dragons
- echo "${kw}? ( ${cond:+${cond}? (} ${baseuri}-${ver}-${kw}.${suff} ${cond:+) })"
-}
-
-DESCRIPTION="Open source implementation of the Java programming language"
-HOMEPAGE="https://openjdk.org"
-SRC_URI="
- https://github.com/${PN}/jdk${SLOT}u/archive/refs/tags/jdk-${MY_PV}.tar.gz
- -> ${P}.tar.gz
- !system-bootstrap? (
- $(bootstrap_uri ppc64 ${PPC64_XPAK} big-endian)
- $(bootstrap_uri riscv ${RISCV_XPAK})
- $(bootstrap_uri x86 ${X86_XPAK})
- )
- riscv? ( https://dev.gentoo.org/~arthurzam/distfiles/dev-java/openjdk/openjdk-11.0.14-riscv.patch.xz )
-"
-
-LICENSE="GPL-2"
-KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~x86"
-
-IUSE="alsa big-endian cups debug doc examples headless-awt javafx +jbootstrap selinux source system-bootstrap systemtap"
-
-REQUIRED_USE="
- javafx? ( alsa !headless-awt )
- !system-bootstrap? ( jbootstrap )
-"
-
-COMMON_DEPEND="
- media-libs/freetype:2=
- media-libs/giflib:0/7
- media-libs/harfbuzz:=
- media-libs/libpng:0=
- media-libs/lcms:2=
- sys-libs/zlib
- media-libs/libjpeg-turbo:0=
- systemtap? ( dev-util/systemtap )
-"
-
-# Many libs are required to build, but not to run, make is possible to remove
-# by listing conditionally in RDEPEND unconditionally in DEPEND
-RDEPEND="
- ${COMMON_DEPEND}
- >=sys-apps/baselayout-java-0.1.0-r1
- !headless-awt? (
- x11-libs/libX11
- x11-libs/libXext
- x11-libs/libXi
- x11-libs/libXrandr
- x11-libs/libXrender
- x11-libs/libXt
- x11-libs/libXtst
- )
- alsa? ( media-libs/alsa-lib )
- cups? ( net-print/cups )
- selinux? ( sec-policy/selinux-java )
-"
-
-DEPEND="
- ${COMMON_DEPEND}
- app-arch/zip
- media-libs/alsa-lib
- net-print/cups
- x11-base/xorg-proto
- x11-libs/libX11
- x11-libs/libXext
- x11-libs/libXi
- x11-libs/libXrandr
- x11-libs/libXrender
- x11-libs/libXt
- x11-libs/libXtst
- javafx? ( dev-java/openjfx:${SLOT}= )
- system-bootstrap? (
- || (
- dev-java/openjdk-bin:${SLOT}[gentoo-vm(+)]
- dev-java/openjdk:${SLOT}[gentoo-vm(+)]
- )
- )
-"
-
-S="${WORKDIR}/jdk${SLOT}u-jdk-${MY_PV}"
-
-# The space required to build varies wildly depending on USE flags,
-# ranging from 2GB to 16GB. This function is certainly not exact but
-# should be close enough to be useful.
-openjdk_check_requirements() {
- local M
- M=2048
- M=$(( $(usex jbootstrap 2 1) * $M ))
- M=$(( $(usex debug 3 1) * $M ))
- M=$(( $(usex doc 320 0) + $(usex source 128 0) + 192 + $M ))
-
- CHECKREQS_DISK_BUILD=${M}M check-reqs_pkg_${EBUILD_PHASE}
-}
-
-pkg_pretend() {
- openjdk_check_requirements
- if [[ ${MERGE_TYPE} != binary ]]; then
- has ccache ${FEATURES} && die "FEATURES=ccache doesn't work with ${PN}, bug #677876"
- fi
-}
-
-pkg_setup() {
- openjdk_check_requirements
- java-vm-2_pkg_setup
-
- [[ ${MERGE_TYPE} == "binary" ]] && return
-
- JAVA_PKG_WANT_BUILD_VM="openjdk-${SLOT} openjdk-bin-${SLOT}"
- JAVA_PKG_WANT_SOURCE="${SLOT}"
- JAVA_PKG_WANT_TARGET="${SLOT}"
-
- if use system-bootstrap; then
- for vm in ${JAVA_PKG_WANT_BUILD_VM}; do
- if [[ -d ${BROOT}/usr/lib/jvm/${vm} ]]; then
- java-pkg-2_pkg_setup
- return
- fi
- done
- fi
-}
-
-src_prepare() {
- use riscv && eapply "${WORKDIR}"/openjdk-11.0.14-riscv.patch
- default
- chmod +x configure || die
-}
-
-src_configure() {
- if ! use system-bootstrap; then
- local xpakvar="${ARCH^^}_XPAK"
- export JDK_HOME="${WORKDIR}/openjdk-bootstrap-${!xpakvar}"
- fi
-
- # Work around stack alignment issue, bug #647954.
- use x86 && append-flags -mincoming-stack-boundary=2
-
- # Work around -fno-common ( GCC10 default ), bug #713180
- append-flags -fcommon
-
- # Strip some flags users may set, but should not. #818502
- filter-flags -fexceptions
-
- # Enabling full docs appears to break doc building. If not
- # explicitly disabled, the flag will get auto-enabled if pandoc and
- # graphviz are detected. pandoc has loads of dependencies anyway.
-
- local myconf=(
- --disable-ccache
- --disable-precompiled-headers
- --enable-full-docs=no
- --with-boot-jdk="${JDK_HOME}"
- --with-extra-cflags="${CFLAGS}"
- --with-extra-cxxflags="${CXXFLAGS}"
- --with-extra-ldflags="${LDFLAGS}"
- --with-freetype="${XPAK_BOOTSTRAP:-system}"
- --with-giflib="${XPAK_BOOTSTRAP:-system}"
- --with-harfbuzz="${XPAK_BOOTSTRAP:-system}"
- --with-lcms="${XPAK_BOOTSTRAP:-system}"
- --with-libjpeg="${XPAK_BOOTSTRAP:-system}"
- --with-libpng="${XPAK_BOOTSTRAP:-system}"
- --with-native-debug-symbols=$(usex debug internal none)
- --with-vendor-name="Gentoo"
- --with-vendor-url="https://gentoo.org"
- --with-vendor-bug-url="https://bugs.gentoo.org"
- --with-vendor-vm-bug-url="https://bugs.openjdk.java.net"
- --with-vendor-version-string="${PVR}"
- --with-version-pre=""
- --with-version-string="${PV%_p*}"
- --with-version-build="${PV#*_p}"
- --with-zlib="${XPAK_BOOTSTRAP:-system}"
- --enable-dtrace=$(usex systemtap yes no)
- --enable-headless-only=$(usex headless-awt yes no)
- $(tc-is-clang && echo "--with-toolchain-type=clang")
- )
- ! use riscv && myconf+=( --with-jvm-features=shenandoahgc )
-
- if use javafx; then
- # this is not useful for users, just for upstream developers
- # build system compares mesa version in md file
- # https://bugs.gentoo.org/822612
- export LEGAL_EXCLUDES=mesa3d.md
-
- local zip="${EPREFIX}/usr/$(get_libdir)/openjfx-${SLOT}/javafx-exports.zip"
- if [[ -r ${zip} ]]; then
- myconf+=( --with-import-modules="${zip}" )
- else
- die "${zip} not found or not readable"
- fi
- fi
-
- if use !system-bootstrap ; then
- addpredict /dev/random
- addpredict /proc/self/coredump_filter
- fi
-
- (
- unset _JAVA_OPTIONS JAVA JAVA_TOOL_OPTIONS JAVAC XARGS
- CFLAGS= CXXFLAGS= LDFLAGS= \
- CONFIG_SITE=/dev/null \
- econf "${myconf[@]}"
- )
-}
-
-src_compile() {
- local myemakeargs=(
- JOBS=$(makeopts_jobs)
- LOG=debug
- CFLAGS_WARNINGS_ARE_ERRORS= # No -Werror
- NICE= # Use PORTAGE_NICENESS, don't adjust further down
- $(usex doc docs '')
- $(usex jbootstrap bootcycle-images product-images)
- )
- emake "${myemakeargs[@]}" -j1 #nowarn
-}
-
-src_install() {
- local dest="/usr/$(get_libdir)/${PN}-${SLOT}"
- local ddest="${ED}/${dest#/}"
-
- cd "${S}"/build/*-release/images/jdk || die
-
- # Create files used as storage for system preferences.
- mkdir .systemPrefs || die
- touch .systemPrefs/.system.lock || die
- touch .systemPrefs/.systemRootModFile || die
-
- # Oracle and IcedTea have libjsoundalsa.so depending on
- # libasound.so.2 but OpenJDK only has libjsound.so. Weird.
- if ! use alsa ; then
- rm -v lib/libjsound.* || die
- fi
-
- if ! use examples ; then
- rm -vr demo/ || die
- fi
-
- if ! use source ; then
- rm -v lib/src.zip || die
- fi
-
- rm -v lib/security/cacerts || die
-
- dodir "${dest}"
- cp -pPR * "${ddest}" || die
-
- dosym8 -r /etc/ssl/certs/java/cacerts "${dest}"/lib/security/cacerts
-
- # must be done before running itself
- java-vm_set-pax-markings "${ddest}"
-
- einfo "Creating the Class Data Sharing archives and disabling usage tracking"
- "${ddest}/bin/java" -server -Xshare:dump -Djdk.disableLastUsageTracking || die
-
- java-vm_install-env "${FILESDIR}"/${PN}.env.sh
- java-vm_revdep-mask
- java-vm_sandbox-predict /dev/random /proc/self/coredump_filter
-
- if use doc ; then
- docinto html
- dodoc -r "${S}"/build/*-release/images/docs/*
- dosym8 -r /usr/share/doc/"${PF}" /usr/share/doc/"${PN}-${SLOT}"
- fi
-}
-
-pkg_postinst() {
- java-vm-2_pkg_postinst
-}
diff --git a/dev-java/openjdk/openjdk-11.0.17_p8.ebuild b/dev-java/openjdk/openjdk-11.0.17_p8.ebuild
deleted file mode 100644
index 055cb96bc4a9..000000000000
--- a/dev-java/openjdk/openjdk-11.0.17_p8.ebuild
+++ /dev/null
@@ -1,300 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit eapi8-dosym check-reqs flag-o-matic java-pkg-2 java-vm-2 multiprocessing toolchain-funcs
-
-# don't change versioning scheme
-# to find correct _p number, look at
-# https://github.com/openjdk/jdk${SLOT}u/tags
-# you will see, for example, jdk-17.0.4.1-ga and jdk-17.0.4.1+1, both point
-# to exact same commit sha. we should always use the full version.
-# -ga tag is just for humans to easily identify General Availability release tag.
-# we need -ga tag to fetch tarball and unpack it, but exact number everywhere else to
-# set build version properly
-MY_PV="${PV%_p*}-ga"
-SLOT="${MY_PV%%[.+]*}"
-
-# variable name format: <UPPERCASE_KEYWORD>_XPAK
-PPC64_XPAK="11.0.13_p8" # big-endian bootstrap tarball
-RISCV_XPAK="11.0.14_p9" # lp64d bootstrap tarball
-X86_XPAK="11.0.13_p8"
-
-# Usage: bootstrap_uri <keyword> <version> [extracond]
-# Example: $(bootstrap_uri ppc64 17.0.1_p12 big-endian)
-# Output: ppc64? ( big-endian? ( https://...17.0.1_p12-ppc64.tar.xz ) )
-bootstrap_uri() {
- local baseuri="https://dev.gentoo.org/~arthurzam/distfiles/dev-java/${PN}/${PN}-bootstrap"
- local suff="tar.xz"
- local kw="${1:?${FUNCNAME[0]}: keyword not specified}"
- local ver="${2:?${FUNCNAME[0]}: version not specified}"
- local cond="${3-}"
-
- # here be dragons
- echo "${kw}? ( ${cond:+${cond}? (} ${baseuri}-${ver}-${kw}.${suff} ${cond:+) })"
-}
-
-DESCRIPTION="Open source implementation of the Java programming language"
-HOMEPAGE="https://openjdk.org"
-SRC_URI="
- https://github.com/${PN}/jdk${SLOT}u/archive/refs/tags/jdk-${MY_PV}.tar.gz
- -> ${P}.tar.gz
- !system-bootstrap? (
- $(bootstrap_uri ppc64 ${PPC64_XPAK} big-endian)
- $(bootstrap_uri riscv ${RISCV_XPAK})
- $(bootstrap_uri x86 ${X86_XPAK})
- )
- riscv? ( https://dev.gentoo.org/~arthurzam/distfiles/dev-java/openjdk/openjdk-11.0.14-riscv.patch.xz )
-"
-
-LICENSE="GPL-2"
-KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~x86"
-
-IUSE="alsa big-endian cups debug doc examples headless-awt javafx +jbootstrap selinux source system-bootstrap systemtap"
-
-REQUIRED_USE="
- javafx? ( alsa !headless-awt )
- !system-bootstrap? ( jbootstrap )
-"
-
-COMMON_DEPEND="
- media-libs/freetype:2=
- media-libs/giflib:0/7
- media-libs/harfbuzz:=
- media-libs/libpng:0=
- media-libs/lcms:2=
- sys-libs/zlib
- media-libs/libjpeg-turbo:0=
- systemtap? ( dev-util/systemtap )
-"
-
-# Many libs are required to build, but not to run, make is possible to remove
-# by listing conditionally in RDEPEND unconditionally in DEPEND
-RDEPEND="
- ${COMMON_DEPEND}
- >=sys-apps/baselayout-java-0.1.0-r1
- !headless-awt? (
- x11-libs/libX11
- x11-libs/libXext
- x11-libs/libXi
- x11-libs/libXrandr
- x11-libs/libXrender
- x11-libs/libXt
- x11-libs/libXtst
- )
- alsa? ( media-libs/alsa-lib )
- cups? ( net-print/cups )
- selinux? ( sec-policy/selinux-java )
-"
-
-DEPEND="
- ${COMMON_DEPEND}
- app-arch/zip
- media-libs/alsa-lib
- net-print/cups
- x11-base/xorg-proto
- x11-libs/libX11
- x11-libs/libXext
- x11-libs/libXi
- x11-libs/libXrandr
- x11-libs/libXrender
- x11-libs/libXt
- x11-libs/libXtst
- javafx? ( dev-java/openjfx:${SLOT}= )
- system-bootstrap? (
- || (
- dev-java/openjdk-bin:${SLOT}[gentoo-vm(+)]
- dev-java/openjdk:${SLOT}[gentoo-vm(+)]
- )
- )
-"
-
-S="${WORKDIR}/jdk${SLOT}u-jdk-${MY_PV}"
-
-# The space required to build varies wildly depending on USE flags,
-# ranging from 2GB to 16GB. This function is certainly not exact but
-# should be close enough to be useful.
-openjdk_check_requirements() {
- local M
- M=2048
- M=$(( $(usex jbootstrap 2 1) * $M ))
- M=$(( $(usex debug 3 1) * $M ))
- M=$(( $(usex doc 320 0) + $(usex source 128 0) + 192 + $M ))
-
- CHECKREQS_DISK_BUILD=${M}M check-reqs_pkg_${EBUILD_PHASE}
-}
-
-pkg_pretend() {
- openjdk_check_requirements
- if [[ ${MERGE_TYPE} != binary ]]; then
- has ccache ${FEATURES} && die "FEATURES=ccache doesn't work with ${PN}, bug #677876"
- fi
-}
-
-pkg_setup() {
- openjdk_check_requirements
- java-vm-2_pkg_setup
-
- [[ ${MERGE_TYPE} == "binary" ]] && return
-
- JAVA_PKG_WANT_BUILD_VM="openjdk-${SLOT} openjdk-bin-${SLOT}"
- JAVA_PKG_WANT_SOURCE="${SLOT}"
- JAVA_PKG_WANT_TARGET="${SLOT}"
-
- if use system-bootstrap; then
- for vm in ${JAVA_PKG_WANT_BUILD_VM}; do
- if [[ -d ${BROOT}/usr/lib/jvm/${vm} ]]; then
- java-pkg-2_pkg_setup
- return
- fi
- done
- fi
-}
-
-src_prepare() {
- use riscv && eapply "${WORKDIR}"/openjdk-11.0.14-riscv.patch
- default
- chmod +x configure || die
-}
-
-src_configure() {
- if ! use system-bootstrap; then
- local xpakvar="${ARCH^^}_XPAK"
- export JDK_HOME="${WORKDIR}/openjdk-bootstrap-${!xpakvar}"
- fi
-
- # Work around stack alignment issue, bug #647954.
- use x86 && append-flags -mincoming-stack-boundary=2
-
- # Work around -fno-common ( GCC10 default ), bug #713180
- append-flags -fcommon
-
- # Strip some flags users may set, but should not. #818502
- filter-flags -fexceptions
-
- # Enabling full docs appears to break doc building. If not
- # explicitly disabled, the flag will get auto-enabled if pandoc and
- # graphviz are detected. pandoc has loads of dependencies anyway.
-
- local myconf=(
- --disable-ccache
- --disable-precompiled-headers
- --enable-full-docs=no
- --with-boot-jdk="${JDK_HOME}"
- --with-extra-cflags="${CFLAGS}"
- --with-extra-cxxflags="${CXXFLAGS}"
- --with-extra-ldflags="${LDFLAGS}"
- --with-freetype="${XPAK_BOOTSTRAP:-system}"
- --with-giflib="${XPAK_BOOTSTRAP:-system}"
- --with-harfbuzz="${XPAK_BOOTSTRAP:-system}"
- --with-lcms="${XPAK_BOOTSTRAP:-system}"
- --with-libjpeg="${XPAK_BOOTSTRAP:-system}"
- --with-libpng="${XPAK_BOOTSTRAP:-system}"
- --with-native-debug-symbols=$(usex debug internal none)
- --with-vendor-name="Gentoo"
- --with-vendor-url="https://gentoo.org"
- --with-vendor-bug-url="https://bugs.gentoo.org"
- --with-vendor-vm-bug-url="https://bugs.openjdk.java.net"
- --with-vendor-version-string="${PVR}"
- --with-version-pre=""
- --with-version-string="${PV%_p*}"
- --with-version-build="${PV#*_p}"
- --with-zlib="${XPAK_BOOTSTRAP:-system}"
- --enable-dtrace=$(usex systemtap yes no)
- --enable-headless-only=$(usex headless-awt yes no)
- $(tc-is-clang && echo "--with-toolchain-type=clang")
- )
- ! use riscv && myconf+=( --with-jvm-features=shenandoahgc )
-
- if use javafx; then
- # this is not useful for users, just for upstream developers
- # build system compares mesa version in md file
- # https://bugs.gentoo.org/822612
- export LEGAL_EXCLUDES=mesa3d.md
-
- local zip="${EPREFIX}/usr/$(get_libdir)/openjfx-${SLOT}/javafx-exports.zip"
- if [[ -r ${zip} ]]; then
- myconf+=( --with-import-modules="${zip}" )
- else
- die "${zip} not found or not readable"
- fi
- fi
-
- if use !system-bootstrap ; then
- addpredict /dev/random
- addpredict /proc/self/coredump_filter
- fi
-
- (
- unset _JAVA_OPTIONS JAVA JAVA_TOOL_OPTIONS JAVAC XARGS
- CFLAGS= CXXFLAGS= LDFLAGS= \
- CONFIG_SITE=/dev/null \
- econf "${myconf[@]}"
- )
-}
-
-src_compile() {
- local myemakeargs=(
- JOBS=$(makeopts_jobs)
- LOG=debug
- CFLAGS_WARNINGS_ARE_ERRORS= # No -Werror
- NICE= # Use PORTAGE_NICENESS, don't adjust further down
- $(usex doc docs '')
- $(usex jbootstrap bootcycle-images product-images)
- )
- emake "${myemakeargs[@]}" -j1 #nowarn
-}
-
-src_install() {
- local dest="/usr/$(get_libdir)/${PN}-${SLOT}"
- local ddest="${ED}/${dest#/}"
-
- cd "${S}"/build/*-release/images/jdk || die
-
- # Create files used as storage for system preferences.
- mkdir .systemPrefs || die
- touch .systemPrefs/.system.lock || die
- touch .systemPrefs/.systemRootModFile || die
-
- # Oracle and IcedTea have libjsoundalsa.so depending on
- # libasound.so.2 but OpenJDK only has libjsound.so. Weird.
- if ! use alsa ; then
- rm -v lib/libjsound.* || die
- fi
-
- if ! use examples ; then
- rm -vr demo/ || die
- fi
-
- if ! use source ; then
- rm -v lib/src.zip || die
- fi
-
- rm -v lib/security/cacerts || die
-
- dodir "${dest}"
- cp -pPR * "${ddest}" || die
-
- dosym8 -r /etc/ssl/certs/java/cacerts "${dest}"/lib/security/cacerts
-
- # must be done before running itself
- java-vm_set-pax-markings "${ddest}"
-
- einfo "Creating the Class Data Sharing archives and disabling usage tracking"
- "${ddest}/bin/java" -server -Xshare:dump -Djdk.disableLastUsageTracking || die
-
- java-vm_install-env "${FILESDIR}"/${PN}.env.sh
- java-vm_revdep-mask
- java-vm_sandbox-predict /dev/random /proc/self/coredump_filter
-
- if use doc ; then
- docinto html
- dodoc -r "${S}"/build/*-release/images/docs/*
- dosym8 -r /usr/share/doc/"${PF}" /usr/share/doc/"${PN}-${SLOT}"
- fi
-}
-
-pkg_postinst() {
- java-vm-2_pkg_postinst
-}
diff --git a/dev-java/openjdk/openjdk-17.0.3_p7-r1.ebuild b/dev-java/openjdk/openjdk-17.0.3_p7-r1.ebuild
deleted file mode 100644
index 9f355b7b9030..000000000000
--- a/dev-java/openjdk/openjdk-17.0.3_p7-r1.ebuild
+++ /dev/null
@@ -1,315 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit check-reqs eapi8-dosym flag-o-matic java-pkg-2 java-vm-2 multiprocessing toolchain-funcs
-
-# variable name format: <UPPERCASE_KEYWORD>_XPAK
-ARM64_XPAK="17.0.2_p8" # musl bootstrap install
-PPC64_XPAK="17.0.1_p12" # big-endian bootstrap tarball
-RISCV_XPAK="17.0.3_p7"
-X86_XPAK="17.0.1_p12"
-
-# Usage: bootstrap_uri <keyword> <version> [extracond]
-# Example: $(bootstrap_uri ppc64 17.0.1_p12 big-endian)
-# Output: ppc64? ( big-endian? ( https://...17.0.1_p12-ppc64.tar.xz ) )
-bootstrap_uri() {
- local baseuri="https://dev.gentoo.org/~arthurzam/distfiles/dev-java/${PN}/${PN}-bootstrap"
- local suff="tar.xz"
- local kw="${1:?${FUNCNAME[0]}: keyword not specified}"
- local ver="${2:?${FUNCNAME[0]}: version not specified}"
- local cond="${3-}"
- [[ ${cond} == elibc_musl* ]] && local musl=yes
-
- # here be dragons
- echo "${kw}? ( ${cond:+${cond}? (} ${baseuri}-${ver}-${kw}${musl:+-musl}.${suff} ${cond:+) })"
-}
-
-# don't change versioning scheme
-# to find correct _p number, look at
-# https://github.com/openjdk/jdk${SLOT}u/tags
-# you will see, for example, jdk-17.0.4.1-ga and jdk-17.0.4.1+1, both point
-# to exact same commit sha. we should always use the full version.
-# -ga tag is just for humans to easily identify General Availability release tag.
-MY_PV="${PV//_p/+}"
-SLOT="$(ver_cut 1)"
-
-DESCRIPTION="Open source implementation of the Java programming language"
-HOMEPAGE="https://openjdk.java.net"
-SRC_URI="
- https://github.com/${PN}/jdk${SLOT}u/archive/refs/tags/jdk-${MY_PV}.tar.gz
- -> ${P}.tar.gz
- !system-bootstrap? (
- $(bootstrap_uri arm64 ${ARM64_XPAK} elibc_musl)
- $(bootstrap_uri ppc64 ${PPC64_XPAK} big-endian)
- $(bootstrap_uri x86 ${X86_XPAK})
- $(bootstrap_uri riscv ${RISCV_XPAK})
- )
- riscv? ( https://dev.gentoo.org/~arthurzam/distfiles/dev-java/openjdk/openjdk-17.0.3-riscv.patch.xz )
-"
-
-LICENSE="GPL-2"
-KEYWORDS="amd64 ~arm arm64 ppc64 ~riscv x86"
-
-IUSE="alsa big-endian cups debug doc examples +gentoo-vm headless-awt javafx +jbootstrap selinux source system-bootstrap systemtap"
-
-REQUIRED_USE="
- javafx? ( alsa !headless-awt )
- !system-bootstrap? ( jbootstrap )
-"
-
-COMMON_DEPEND="
- media-libs/freetype:2=
- media-libs/giflib:0/7
- media-libs/harfbuzz:=
- media-libs/libpng:0=
- media-libs/lcms:2=
- sys-libs/zlib
- media-libs/libjpeg-turbo:0=
- systemtap? ( dev-util/systemtap )
-"
-
-# Many libs are required to build, but not to run, make is possible to remove
-# by listing conditionally in RDEPEND unconditionally in DEPEND
-RDEPEND="
- ${COMMON_DEPEND}
- >=sys-apps/baselayout-java-0.1.0-r1
- !headless-awt? (
- x11-libs/libX11
- x11-libs/libXext
- x11-libs/libXi
- x11-libs/libXrandr
- x11-libs/libXrender
- x11-libs/libXt
- x11-libs/libXtst
- )
- alsa? ( media-libs/alsa-lib )
- cups? ( net-print/cups )
- selinux? ( sec-policy/selinux-java )
-"
-
-DEPEND="
- ${COMMON_DEPEND}
- app-arch/zip
- media-libs/alsa-lib
- net-print/cups
- x11-base/xorg-proto
- x11-libs/libX11
- x11-libs/libXext
- x11-libs/libXi
- x11-libs/libXrandr
- x11-libs/libXrender
- x11-libs/libXt
- x11-libs/libXtst
- javafx? ( dev-java/openjfx:${SLOT}= )
- system-bootstrap? (
- || (
- dev-java/openjdk-bin:${SLOT}
- dev-java/openjdk:${SLOT}
- )
- )
-"
-
-S="${WORKDIR}/jdk${SLOT}u-jdk-${MY_PV//+/-}"
-
-PATCHES=( "${FILESDIR}"/${PN}-17.0.3-fix-nullptr-cast.patch )
-
-# The space required to build varies wildly depending on USE flags,
-# ranging from 2GB to 16GB. This function is certainly not exact but
-# should be close enough to be useful.
-openjdk_check_requirements() {
- local M
- M=2048
- M=$(( $(usex jbootstrap 2 1) * $M ))
- M=$(( $(usex debug 3 1) * $M ))
- M=$(( $(usex doc 320 0) + $(usex source 128 0) + 192 + $M ))
-
- CHECKREQS_DISK_BUILD=${M}M check-reqs_pkg_${EBUILD_PHASE}
-}
-
-pkg_pretend() {
- openjdk_check_requirements
- if [[ ${MERGE_TYPE} != binary ]]; then
- has ccache ${FEATURES} && die "FEATURES=ccache doesn't work with ${PN}, bug #677876"
- fi
-}
-
-pkg_setup() {
- openjdk_check_requirements
- java-vm-2_pkg_setup
-
- [[ ${MERGE_TYPE} == "binary" ]] && return
-
- JAVA_PKG_WANT_BUILD_VM="openjdk-${SLOT} openjdk-bin-${SLOT}"
- JAVA_PKG_WANT_SOURCE="${SLOT}"
- JAVA_PKG_WANT_TARGET="${SLOT}"
-
- # The nastiness below is necessary while the gentoo-vm USE flag is
- # masked. First we call java-pkg-2_pkg_setup if it looks like the
- # flag was unmasked against one of the possible build VMs. If not,
- # we try finding one of them in their expected locations. This would
- # have been slightly less messy if openjdk-bin had been installed to
- # /opt/${PN}-${SLOT} or if there was a mechanism to install a VM env
- # file but disable it so that it would not normally be selectable.
-
- local vm
- for vm in ${JAVA_PKG_WANT_BUILD_VM}; do
- if [[ -d ${BROOT}/usr/lib/jvm/${vm} ]]; then
- java-pkg-2_pkg_setup
- return
- fi
- done
-}
-
-src_prepare() {
- use riscv && eapply "${WORKDIR}"/openjdk-17.0.3-riscv.patch
- default
- chmod +x configure || die
-}
-
-src_configure() {
- if has_version dev-java/openjdk:${SLOT}; then
- export JDK_HOME=${BROOT}/usr/$(get_libdir)/openjdk-${SLOT}
- elif use !system-bootstrap ; then
- local xpakvar="${ARCH^^}_XPAK"
- export JDK_HOME="${WORKDIR}/openjdk-bootstrap-${!xpakvar}"
- else
- JDK_HOME=$(best_version -b dev-java/openjdk-bin:${SLOT})
- [[ -n ${JDK_HOME} ]] || die "Build VM not found!"
- JDK_HOME=${JDK_HOME#*/}
- JDK_HOME=${BROOT}/opt/${JDK_HOME%-r*}
- export JDK_HOME
- fi
-
- # Work around stack alignment issue, bug #647954. in case we ever have x86
- use x86 && append-flags -mincoming-stack-boundary=2
-
- # Work around -fno-common ( GCC10 default ), bug #713180
- append-flags -fcommon
-
- # Strip some flags users may set, but should not. #818502
- filter-flags -fexceptions
-
- # Enabling full docs appears to break doc building. If not
- # explicitly disabled, the flag will get auto-enabled if pandoc and
- # graphviz are detected. pandoc has loads of dependencies anyway.
-
- local myconf=(
- --disable-ccache
- --disable-precompiled-headers
- --disable-warnings-as-errors
- --enable-full-docs=no
- --with-boot-jdk="${JDK_HOME}"
- --with-extra-cflags="${CFLAGS}"
- --with-extra-cxxflags="${CXXFLAGS}"
- --with-extra-ldflags="${LDFLAGS}"
- --with-freetype="${XPAK_BOOTSTRAP:-system}"
- --with-giflib="${XPAK_BOOTSTRAP:-system}"
- --with-harfbuzz="${XPAK_BOOTSTRAP:-system}"
- --with-lcms="${XPAK_BOOTSTRAP:-system}"
- --with-libjpeg="${XPAK_BOOTSTRAP:-system}"
- --with-libpng="${XPAK_BOOTSTRAP:-system}"
- --with-native-debug-symbols=$(usex debug internal none)
- --with-vendor-name="Gentoo"
- --with-vendor-url="https://gentoo.org"
- --with-vendor-bug-url="https://bugs.gentoo.org"
- --with-vendor-vm-bug-url="https://bugs.openjdk.java.net"
- --with-vendor-version-string="${PVR}"
- --with-version-pre=""
- --with-version-string="${PV%_p*}"
- --with-version-build="${PV#*_p}"
- --with-zlib="${XPAK_BOOTSTRAP:-system}"
- --enable-dtrace=$(usex systemtap yes no)
- --enable-headless-only=$(usex headless-awt yes no)
- $(tc-is-clang && echo "--with-toolchain-type=clang")
- )
-
- use riscv && myconf+=( --with-boot-jdk-jvmargs="-Djdk.lang.Process.launchMechanism=vfork" )
-
- if use javafx; then
- local zip="${EPREFIX}/usr/$(get_libdir)/openjfx-${SLOT}/javafx-exports.zip"
- if [[ -r ${zip} ]]; then
- myconf+=( --with-import-modules="${zip}" )
- else
- die "${zip} not found or not readable"
- fi
- fi
-
- if use !system-bootstrap ; then
- addpredict /dev/random
- addpredict /proc/self/coredump_filter
- fi
-
- (
- unset _JAVA_OPTIONS JAVA JAVA_TOOL_OPTIONS JAVAC XARGS
- CFLAGS= CXXFLAGS= LDFLAGS= \
- CONFIG_SITE=/dev/null \
- econf "${myconf[@]}"
- )
-}
-
-src_compile() {
- local myemakeargs=(
- JOBS=$(makeopts_jobs)
- LOG=debug
- CFLAGS_WARNINGS_ARE_ERRORS= # No -Werror
- NICE= # Use PORTAGE_NICENESS, don't adjust further down
- $(usex doc docs '')
- $(usex jbootstrap bootcycle-images product-images)
- )
- emake "${myemakeargs[@]}" -j1 #nowarn
-}
-
-src_install() {
- local dest="/usr/$(get_libdir)/${PN}-${SLOT}"
- local ddest="${ED}/${dest#/}"
-
- cd "${S}"/build/*-release/images/jdk || die
-
- # Create files used as storage for system preferences.
- mkdir .systemPrefs || die
- touch .systemPrefs/.system.lock || die
- touch .systemPrefs/.systemRootModFile || die
-
- # Oracle and IcedTea have libjsoundalsa.so depending on
- # libasound.so.2 but OpenJDK only has libjsound.so. Weird.
- if ! use alsa ; then
- rm -v lib/libjsound.* || die
- fi
-
- if ! use examples ; then
- rm -vr demo/ || die
- fi
-
- if ! use source ; then
- rm -v lib/src.zip || die
- fi
-
- rm -v lib/security/cacerts || die
-
- dodir "${dest}"
- cp -pPR * "${ddest}" || die
-
- dosym8 -r /etc/ssl/certs/java/cacerts "${dest}"/lib/security/cacerts
-
- # must be done before running itself
- java-vm_set-pax-markings "${ddest}"
-
- einfo "Creating the Class Data Sharing archives and disabling usage tracking"
- "${ddest}/bin/java" -server -Xshare:dump -Djdk.disableLastUsageTracking || die
-
- use gentoo-vm && java-vm_install-env "${FILESDIR}"/${PN}.env.sh
- java-vm_revdep-mask
- java-vm_sandbox-predict /dev/random /proc/self/coredump_filter
-
- if use doc ; then
- docinto html
- dodoc -r "${S}"/build/*-release/images/docs/*
- dosym ../../../usr/share/doc/"${PF}" /usr/share/doc/"${PN}-${SLOT}"
- fi
-}
-
-pkg_postinst() {
- java-vm-2_pkg_postinst
-}
diff --git a/dev-java/openjdk/openjdk-17.0.4.1_p1.ebuild b/dev-java/openjdk/openjdk-17.0.4.1_p1.ebuild
deleted file mode 100644
index c528b135cd20..000000000000
--- a/dev-java/openjdk/openjdk-17.0.4.1_p1.ebuild
+++ /dev/null
@@ -1,316 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit check-reqs eapi8-dosym flag-o-matic java-pkg-2 java-vm-2 multiprocessing toolchain-funcs
-
-# variable name format: <UPPERCASE_KEYWORD>_XPAK
-ARM64_XPAK="17.0.2_p8" # musl bootstrap install
-PPC64_XPAK="17.0.1_p12" # big-endian bootstrap tarball
-RISCV_XPAK="17.0.3_p7"
-X86_XPAK="17.0.1_p12"
-
-# Usage: bootstrap_uri <keyword> <version> [extracond]
-# Example: $(bootstrap_uri ppc64 17.0.1_p12 big-endian)
-# Output: ppc64? ( big-endian? ( https://...17.0.1_p12-ppc64.tar.xz ) )
-bootstrap_uri() {
- local baseuri="https://dev.gentoo.org/~arthurzam/distfiles/dev-java/${PN}/${PN}-bootstrap"
- local suff="tar.xz"
- local kw="${1:?${FUNCNAME[0]}: keyword not specified}"
- local ver="${2:?${FUNCNAME[0]}: version not specified}"
- local cond="${3-}"
- [[ ${cond} == elibc_musl* ]] && local musl=yes
-
- # here be dragons
- echo "${kw}? ( ${cond:+${cond}? (} ${baseuri}-${ver}-${kw}${musl:+-musl}.${suff} ${cond:+) })"
-}
-
-# don't change versioning scheme
-# to find correct _p number, look at
-# https://github.com/openjdk/jdk${SLOT}u/tags
-# you will see, for example, jdk-17.0.4.1-ga and jdk-17.0.4.1+1, both point
-# to exact same commit sha. we should always use the full version.
-# -ga tag is just for humans to easily identify General Availability release tag.
-MY_PV="${PV//_p/+}"
-
-SLOT="$(ver_cut 1)"
-
-DESCRIPTION="Open source implementation of the Java programming language"
-HOMEPAGE="https://openjdk.org"
-SRC_URI="
- https://github.com/${PN}/jdk${SLOT}u/archive/refs/tags/jdk-${MY_PV}.tar.gz
- -> ${P}.tar.gz
- !system-bootstrap? (
- $(bootstrap_uri arm64 ${ARM64_XPAK} elibc_musl)
- $(bootstrap_uri ppc64 ${PPC64_XPAK} big-endian)
- $(bootstrap_uri x86 ${X86_XPAK})
- $(bootstrap_uri riscv ${RISCV_XPAK})
- )
- riscv? ( https://dev.gentoo.org/~arthurzam/distfiles/dev-java/openjdk/openjdk-17.0.3-riscv.patch.xz )
-"
-
-LICENSE="GPL-2"
-KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86"
-
-IUSE="alsa big-endian cups debug doc examples headless-awt javafx +jbootstrap selinux source system-bootstrap systemtap"
-
-REQUIRED_USE="
- javafx? ( alsa !headless-awt )
- !system-bootstrap? ( jbootstrap )
-"
-
-COMMON_DEPEND="
- media-libs/freetype:2=
- media-libs/giflib:0/7
- media-libs/harfbuzz:=
- media-libs/libpng:0=
- media-libs/lcms:2=
- sys-libs/zlib
- media-libs/libjpeg-turbo:0=
- systemtap? ( dev-util/systemtap )
-"
-
-# Many libs are required to build, but not to run, make is possible to remove
-# by listing conditionally in RDEPEND unconditionally in DEPEND
-RDEPEND="
- ${COMMON_DEPEND}
- >=sys-apps/baselayout-java-0.1.0-r1
- !headless-awt? (
- x11-libs/libX11
- x11-libs/libXext
- x11-libs/libXi
- x11-libs/libXrandr
- x11-libs/libXrender
- x11-libs/libXt
- x11-libs/libXtst
- )
- alsa? ( media-libs/alsa-lib )
- cups? ( net-print/cups )
- selinux? ( sec-policy/selinux-java )
-"
-
-DEPEND="
- ${COMMON_DEPEND}
- app-arch/zip
- media-libs/alsa-lib
- net-print/cups
- x11-base/xorg-proto
- x11-libs/libX11
- x11-libs/libXext
- x11-libs/libXi
- x11-libs/libXrandr
- x11-libs/libXrender
- x11-libs/libXt
- x11-libs/libXtst
- javafx? ( dev-java/openjfx:${SLOT}= )
- system-bootstrap? (
- || (
- dev-java/openjdk-bin:${SLOT}
- dev-java/openjdk:${SLOT}
- )
- )
-"
-
-S="${WORKDIR}/jdk${SLOT}u-jdk-${MY_PV//+/-}"
-
-PATCHES=( "${FILESDIR}"/${PN}-17.0.3-fix-nullptr-cast.patch )
-
-# The space required to build varies wildly depending on USE flags,
-# ranging from 2GB to 16GB. This function is certainly not exact but
-# should be close enough to be useful.
-openjdk_check_requirements() {
- local M
- M=2048
- M=$(( $(usex jbootstrap 2 1) * $M ))
- M=$(( $(usex debug 3 1) * $M ))
- M=$(( $(usex doc 320 0) + $(usex source 128 0) + 192 + $M ))
-
- CHECKREQS_DISK_BUILD=${M}M check-reqs_pkg_${EBUILD_PHASE}
-}
-
-pkg_pretend() {
- openjdk_check_requirements
- if [[ ${MERGE_TYPE} != binary ]]; then
- has ccache ${FEATURES} && die "FEATURES=ccache doesn't work with ${PN}, bug #677876"
- fi
-}
-
-pkg_setup() {
- openjdk_check_requirements
- java-vm-2_pkg_setup
-
- [[ ${MERGE_TYPE} == "binary" ]] && return
-
- JAVA_PKG_WANT_BUILD_VM="openjdk-${SLOT} openjdk-bin-${SLOT}"
- JAVA_PKG_WANT_SOURCE="${SLOT}"
- JAVA_PKG_WANT_TARGET="${SLOT}"
-
- # The nastiness below is necessary while the gentoo-vm USE flag is
- # masked. First we call java-pkg-2_pkg_setup if it looks like the
- # flag was unmasked against one of the possible build VMs. If not,
- # we try finding one of them in their expected locations. This would
- # have been slightly less messy if openjdk-bin had been installed to
- # /opt/${PN}-${SLOT} or if there was a mechanism to install a VM env
- # file but disable it so that it would not normally be selectable.
-
- local vm
- for vm in ${JAVA_PKG_WANT_BUILD_VM}; do
- if [[ -d ${BROOT}/usr/lib/jvm/${vm} ]]; then
- java-pkg-2_pkg_setup
- return
- fi
- done
-}
-
-src_prepare() {
- use riscv && eapply "${WORKDIR}"/openjdk-17.0.3-riscv.patch
- default
- chmod +x configure || die
-}
-
-src_configure() {
- if has_version dev-java/openjdk:${SLOT}; then
- export JDK_HOME=${BROOT}/usr/$(get_libdir)/openjdk-${SLOT}
- elif use !system-bootstrap ; then
- local xpakvar="${ARCH^^}_XPAK"
- export JDK_HOME="${WORKDIR}/openjdk-bootstrap-${!xpakvar}"
- else
- JDK_HOME=$(best_version -b dev-java/openjdk-bin:${SLOT})
- [[ -n ${JDK_HOME} ]] || die "Build VM not found!"
- JDK_HOME=${JDK_HOME#*/}
- JDK_HOME=${BROOT}/opt/${JDK_HOME%-r*}
- export JDK_HOME
- fi
-
- # Work around stack alignment issue, bug #647954. in case we ever have x86
- use x86 && append-flags -mincoming-stack-boundary=2
-
- # Work around -fno-common ( GCC10 default ), bug #713180
- append-flags -fcommon
-
- # Strip some flags users may set, but should not. #818502
- filter-flags -fexceptions
-
- # Enabling full docs appears to break doc building. If not
- # explicitly disabled, the flag will get auto-enabled if pandoc and
- # graphviz are detected. pandoc has loads of dependencies anyway.
-
- local myconf=(
- --disable-ccache
- --disable-precompiled-headers
- --disable-warnings-as-errors
- --enable-full-docs=no
- --with-boot-jdk="${JDK_HOME}"
- --with-extra-cflags="${CFLAGS}"
- --with-extra-cxxflags="${CXXFLAGS}"
- --with-extra-ldflags="${LDFLAGS}"
- --with-freetype="${XPAK_BOOTSTRAP:-system}"
- --with-giflib="${XPAK_BOOTSTRAP:-system}"
- --with-harfbuzz="${XPAK_BOOTSTRAP:-system}"
- --with-lcms="${XPAK_BOOTSTRAP:-system}"
- --with-libjpeg="${XPAK_BOOTSTRAP:-system}"
- --with-libpng="${XPAK_BOOTSTRAP:-system}"
- --with-native-debug-symbols=$(usex debug internal none)
- --with-vendor-name="Gentoo"
- --with-vendor-url="https://gentoo.org"
- --with-vendor-bug-url="https://bugs.gentoo.org"
- --with-vendor-vm-bug-url="https://bugs.openjdk.java.net"
- --with-vendor-version-string="${PVR}"
- --with-version-pre=""
- --with-version-string="${PV%_p*}"
- --with-version-build="${PV#*_p}"
- --with-zlib="${XPAK_BOOTSTRAP:-system}"
- --enable-dtrace=$(usex systemtap yes no)
- --enable-headless-only=$(usex headless-awt yes no)
- $(tc-is-clang && echo "--with-toolchain-type=clang")
- )
-
- use riscv && myconf+=( --with-boot-jdk-jvmargs="-Djdk.lang.Process.launchMechanism=vfork" )
-
- if use javafx; then
- local zip="${EPREFIX}/usr/$(get_libdir)/openjfx-${SLOT}/javafx-exports.zip"
- if [[ -r ${zip} ]]; then
- myconf+=( --with-import-modules="${zip}" )
- else
- die "${zip} not found or not readable"
- fi
- fi
-
- if use !system-bootstrap ; then
- addpredict /dev/random
- addpredict /proc/self/coredump_filter
- fi
-
- (
- unset _JAVA_OPTIONS JAVA JAVA_TOOL_OPTIONS JAVAC XARGS
- CFLAGS= CXXFLAGS= LDFLAGS= \
- CONFIG_SITE=/dev/null \
- econf "${myconf[@]}"
- )
-}
-
-src_compile() {
- local myemakeargs=(
- JOBS=$(makeopts_jobs)
- LOG=debug
- CFLAGS_WARNINGS_ARE_ERRORS= # No -Werror
- NICE= # Use PORTAGE_NICENESS, don't adjust further down
- $(usex doc docs '')
- $(usex jbootstrap bootcycle-images product-images)
- )
- emake "${myemakeargs[@]}" -j1 #nowarn
-}
-
-src_install() {
- local dest="/usr/$(get_libdir)/${PN}-${SLOT}"
- local ddest="${ED}/${dest#/}"
-
- cd "${S}"/build/*-release/images/jdk || die
-
- # Create files used as storage for system preferences.
- mkdir .systemPrefs || die
- touch .systemPrefs/.system.lock || die
- touch .systemPrefs/.systemRootModFile || die
-
- # Oracle and IcedTea have libjsoundalsa.so depending on
- # libasound.so.2 but OpenJDK only has libjsound.so. Weird.
- if ! use alsa ; then
- rm -v lib/libjsound.* || die
- fi
-
- if ! use examples ; then
- rm -vr demo/ || die
- fi
-
- if ! use source ; then
- rm -v lib/src.zip || die
- fi
-
- rm -v lib/security/cacerts || die
-
- dodir "${dest}"
- cp -pPR * "${ddest}" || die
-
- dosym8 -r /etc/ssl/certs/java/cacerts "${dest}"/lib/security/cacerts
-
- # must be done before running itself
- java-vm_set-pax-markings "${ddest}"
-
- einfo "Creating the Class Data Sharing archives and disabling usage tracking"
- "${ddest}/bin/java" -server -Xshare:dump -Djdk.disableLastUsageTracking || die
-
- java-vm_install-env "${FILESDIR}"/${PN}.env.sh
- java-vm_revdep-mask
- java-vm_sandbox-predict /dev/random /proc/self/coredump_filter
-
- if use doc ; then
- docinto html
- dodoc -r "${S}"/build/*-release/images/docs/*
- dosym ../../../usr/share/doc/"${PF}" /usr/share/doc/"${PN}-${SLOT}"
- fi
-}
-
-pkg_postinst() {
- java-vm-2_pkg_postinst
-}
diff --git a/dev-java/openjdk/openjdk-17.0.5_p8.ebuild b/dev-java/openjdk/openjdk-17.0.5_p8.ebuild
deleted file mode 100644
index 11d2c503987b..000000000000
--- a/dev-java/openjdk/openjdk-17.0.5_p8.ebuild
+++ /dev/null
@@ -1,314 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit check-reqs eapi8-dosym flag-o-matic java-pkg-2 java-vm-2 multiprocessing toolchain-funcs
-
-# variable name format: <UPPERCASE_KEYWORD>_XPAK
-ARM64_XPAK="17.0.2_p8" # musl bootstrap install
-PPC64_XPAK="17.0.1_p12" # big-endian bootstrap tarball
-RISCV_XPAK="17.0.3_p7"
-X86_XPAK="17.0.1_p12"
-
-# Usage: bootstrap_uri <keyword> <version> [extracond]
-# Example: $(bootstrap_uri ppc64 17.0.1_p12 big-endian)
-# Output: ppc64? ( big-endian? ( https://...17.0.1_p12-ppc64.tar.xz ) )
-bootstrap_uri() {
- local baseuri="https://dev.gentoo.org/~arthurzam/distfiles/dev-java/${PN}/${PN}-bootstrap"
- local suff="tar.xz"
- local kw="${1:?${FUNCNAME[0]}: keyword not specified}"
- local ver="${2:?${FUNCNAME[0]}: version not specified}"
- local cond="${3-}"
- [[ ${cond} == elibc_musl* ]] && local musl=yes
-
- # here be dragons
- echo "${kw}? ( ${cond:+${cond}? (} ${baseuri}-${ver}-${kw}${musl:+-musl}.${suff} ${cond:+) })"
-}
-
-# don't change versioning scheme
-# to find correct _p number, look at
-# https://github.com/openjdk/jdk${SLOT}u/tags
-# you will see, for example, jdk-17.0.4.1-ga and jdk-17.0.4.1+1, both point
-# to exact same commit sha. we should always use the full version.
-# -ga tag is just for humans to easily identify General Availability release tag.
-MY_PV="${PV%_p*}-ga"
-SLOT="${MY_PV%%[.+]*}"
-
-DESCRIPTION="Open source implementation of the Java programming language"
-HOMEPAGE="https://openjdk.org"
-SRC_URI="
- https://github.com/${PN}/jdk${SLOT}u/archive/refs/tags/jdk-${MY_PV}.tar.gz
- -> ${P}.tar.gz
- !system-bootstrap? (
- $(bootstrap_uri arm64 ${ARM64_XPAK} elibc_musl)
- $(bootstrap_uri ppc64 ${PPC64_XPAK} big-endian)
- $(bootstrap_uri x86 ${X86_XPAK})
- $(bootstrap_uri riscv ${RISCV_XPAK})
- )
- riscv? ( https://dev.gentoo.org/~gyakovlev/distfiles/dev-java/openjdk/java17-riscv64.patch )
-"
-# riscv patch origin: https://raw.githubusercontent.com/felixonmars/archriscv-packages/master/java17-openjdk/java17-riscv64.patch
-
-LICENSE="GPL-2"
-KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~x86"
-
-IUSE="alsa big-endian cups debug doc examples headless-awt javafx +jbootstrap selinux source system-bootstrap systemtap"
-
-REQUIRED_USE="
- javafx? ( alsa !headless-awt )
- !system-bootstrap? ( jbootstrap )
-"
-
-COMMON_DEPEND="
- media-libs/freetype:2=
- media-libs/giflib:0/7
- media-libs/harfbuzz:=
- media-libs/libpng:0=
- media-libs/lcms:2=
- sys-libs/zlib
- media-libs/libjpeg-turbo:0=
- systemtap? ( dev-util/systemtap )
-"
-
-# Many libs are required to build, but not to run, make is possible to remove
-# by listing conditionally in RDEPEND unconditionally in DEPEND
-RDEPEND="
- ${COMMON_DEPEND}
- >=sys-apps/baselayout-java-0.1.0-r1
- !headless-awt? (
- x11-libs/libX11
- x11-libs/libXext
- x11-libs/libXi
- x11-libs/libXrandr
- x11-libs/libXrender
- x11-libs/libXt
- x11-libs/libXtst
- )
- alsa? ( media-libs/alsa-lib )
- cups? ( net-print/cups )
- selinux? ( sec-policy/selinux-java )
-"
-
-DEPEND="
- ${COMMON_DEPEND}
- app-arch/zip
- media-libs/alsa-lib
- net-print/cups
- x11-base/xorg-proto
- x11-libs/libX11
- x11-libs/libXext
- x11-libs/libXi
- x11-libs/libXrandr
- x11-libs/libXrender
- x11-libs/libXt
- x11-libs/libXtst
- javafx? ( dev-java/openjfx:${SLOT}= )
- system-bootstrap? (
- || (
- dev-java/openjdk-bin:${SLOT}
- dev-java/openjdk:${SLOT}
- )
- )
-"
-
-S="${WORKDIR}/jdk${SLOT}u-jdk-${MY_PV//+/-}"
-
-# The space required to build varies wildly depending on USE flags,
-# ranging from 2GB to 16GB. This function is certainly not exact but
-# should be close enough to be useful.
-openjdk_check_requirements() {
- local M
- M=2048
- M=$(( $(usex jbootstrap 2 1) * $M ))
- M=$(( $(usex debug 3 1) * $M ))
- M=$(( $(usex doc 320 0) + $(usex source 128 0) + 192 + $M ))
-
- CHECKREQS_DISK_BUILD=${M}M check-reqs_pkg_${EBUILD_PHASE}
-}
-
-pkg_pretend() {
- openjdk_check_requirements
- if [[ ${MERGE_TYPE} != binary ]]; then
- has ccache ${FEATURES} && die "FEATURES=ccache doesn't work with ${PN}, bug #677876"
- fi
-}
-
-pkg_setup() {
- openjdk_check_requirements
- java-vm-2_pkg_setup
-
- [[ ${MERGE_TYPE} == "binary" ]] && return
-
- JAVA_PKG_WANT_BUILD_VM="openjdk-${SLOT} openjdk-bin-${SLOT}"
- JAVA_PKG_WANT_SOURCE="${SLOT}"
- JAVA_PKG_WANT_TARGET="${SLOT}"
-
- # The nastiness below is necessary while the gentoo-vm USE flag is
- # masked. First we call java-pkg-2_pkg_setup if it looks like the
- # flag was unmasked against one of the possible build VMs. If not,
- # we try finding one of them in their expected locations. This would
- # have been slightly less messy if openjdk-bin had been installed to
- # /opt/${PN}-${SLOT} or if there was a mechanism to install a VM env
- # file but disable it so that it would not normally be selectable.
-
- local vm
- for vm in ${JAVA_PKG_WANT_BUILD_VM}; do
- if [[ -d ${BROOT}/usr/lib/jvm/${vm} ]]; then
- java-pkg-2_pkg_setup
- return
- fi
- done
-}
-
-src_prepare() {
- use riscv && eapply "${DISTDIR}"/java17-riscv64.patch
- default
- chmod +x configure || die
-}
-
-src_configure() {
- if has_version dev-java/openjdk:${SLOT}; then
- export JDK_HOME=${BROOT}/usr/$(get_libdir)/openjdk-${SLOT}
- elif use !system-bootstrap ; then
- local xpakvar="${ARCH^^}_XPAK"
- export JDK_HOME="${WORKDIR}/openjdk-bootstrap-${!xpakvar}"
- else
- JDK_HOME=$(best_version -b dev-java/openjdk-bin:${SLOT})
- [[ -n ${JDK_HOME} ]] || die "Build VM not found!"
- JDK_HOME=${JDK_HOME#*/}
- JDK_HOME=${BROOT}/opt/${JDK_HOME%-r*}
- export JDK_HOME
- fi
-
- # Work around stack alignment issue, bug #647954. in case we ever have x86
- use x86 && append-flags -mincoming-stack-boundary=2
-
- # Work around -fno-common ( GCC10 default ), bug #713180
- append-flags -fcommon
-
- # Strip some flags users may set, but should not. #818502
- filter-flags -fexceptions
-
- # Enabling full docs appears to break doc building. If not
- # explicitly disabled, the flag will get auto-enabled if pandoc and
- # graphviz are detected. pandoc has loads of dependencies anyway.
-
- local myconf=(
- --disable-ccache
- --disable-precompiled-headers
- --disable-warnings-as-errors
- --enable-full-docs=no
- --with-boot-jdk="${JDK_HOME}"
- --with-extra-cflags="${CFLAGS}"
- --with-extra-cxxflags="${CXXFLAGS}"
- --with-extra-ldflags="${LDFLAGS}"
- --with-freetype="${XPAK_BOOTSTRAP:-system}"
- --with-giflib="${XPAK_BOOTSTRAP:-system}"
- --with-harfbuzz="${XPAK_BOOTSTRAP:-system}"
- --with-lcms="${XPAK_BOOTSTRAP:-system}"
- --with-libjpeg="${XPAK_BOOTSTRAP:-system}"
- --with-libpng="${XPAK_BOOTSTRAP:-system}"
- --with-native-debug-symbols=$(usex debug internal none)
- --with-vendor-name="Gentoo"
- --with-vendor-url="https://gentoo.org"
- --with-vendor-bug-url="https://bugs.gentoo.org"
- --with-vendor-vm-bug-url="https://bugs.openjdk.java.net"
- --with-vendor-version-string="${PVR}"
- --with-version-pre=""
- --with-version-string="${PV%_p*}"
- --with-version-build="${PV#*_p}"
- --with-zlib="${XPAK_BOOTSTRAP:-system}"
- --enable-dtrace=$(usex systemtap yes no)
- --enable-headless-only=$(usex headless-awt yes no)
- $(tc-is-clang && echo "--with-toolchain-type=clang")
- )
-
- use riscv && myconf+=( --with-boot-jdk-jvmargs="-Djdk.lang.Process.launchMechanism=vfork" )
-
- if use javafx; then
- local zip="${EPREFIX}/usr/$(get_libdir)/openjfx-${SLOT}/javafx-exports.zip"
- if [[ -r ${zip} ]]; then
- myconf+=( --with-import-modules="${zip}" )
- else
- die "${zip} not found or not readable"
- fi
- fi
-
- if use !system-bootstrap ; then
- addpredict /dev/random
- addpredict /proc/self/coredump_filter
- fi
-
- (
- unset _JAVA_OPTIONS JAVA JAVA_TOOL_OPTIONS JAVAC XARGS
- CFLAGS= CXXFLAGS= LDFLAGS= \
- CONFIG_SITE=/dev/null \
- econf "${myconf[@]}"
- )
-}
-
-src_compile() {
- local myemakeargs=(
- JOBS=$(makeopts_jobs)
- LOG=debug
- CFLAGS_WARNINGS_ARE_ERRORS= # No -Werror
- NICE= # Use PORTAGE_NICENESS, don't adjust further down
- $(usex doc docs '')
- $(usex jbootstrap bootcycle-images product-images)
- )
- emake "${myemakeargs[@]}" -j1 #nowarn
-}
-
-src_install() {
- local dest="/usr/$(get_libdir)/${PN}-${SLOT}"
- local ddest="${ED}/${dest#/}"
-
- cd "${S}"/build/*-release/images/jdk || die
-
- # Create files used as storage for system preferences.
- mkdir .systemPrefs || die
- touch .systemPrefs/.system.lock || die
- touch .systemPrefs/.systemRootModFile || die
-
- # Oracle and IcedTea have libjsoundalsa.so depending on
- # libasound.so.2 but OpenJDK only has libjsound.so. Weird.
- if ! use alsa ; then
- rm -v lib/libjsound.* || die
- fi
-
- if ! use examples ; then
- rm -vr demo/ || die
- fi
-
- if ! use source ; then
- rm -v lib/src.zip || die
- fi
-
- rm -v lib/security/cacerts || die
-
- dodir "${dest}"
- cp -pPR * "${ddest}" || die
-
- dosym8 -r /etc/ssl/certs/java/cacerts "${dest}"/lib/security/cacerts
-
- # must be done before running itself
- java-vm_set-pax-markings "${ddest}"
-
- einfo "Creating the Class Data Sharing archives and disabling usage tracking"
- "${ddest}/bin/java" -server -Xshare:dump -Djdk.disableLastUsageTracking || die
-
- java-vm_install-env "${FILESDIR}"/${PN}.env.sh
- java-vm_revdep-mask
- java-vm_sandbox-predict /dev/random /proc/self/coredump_filter
-
- if use doc ; then
- docinto html
- dodoc -r "${S}"/build/*-release/images/docs/*
- dosym ../../../usr/share/doc/"${PF}" /usr/share/doc/"${PN}-${SLOT}"
- fi
-}
-
-pkg_postinst() {
- java-vm-2_pkg_postinst
-}
diff --git a/dev-java/openjdk/openjdk-17.0.6_p10.ebuild b/dev-java/openjdk/openjdk-17.0.6_p10.ebuild
index d021fc38d7a1..6eb35e1cadb9 100644
--- a/dev-java/openjdk/openjdk-17.0.6_p10.ebuild
+++ b/dev-java/openjdk/openjdk-17.0.6_p10.ebuild
@@ -48,7 +48,8 @@ SRC_URI="
)
riscv? ( https://dev.gentoo.org/~gyakovlev/distfiles/dev-java/openjdk/java17-riscv64.patch )
"
-# riscv patch origin: https://raw.githubusercontent.com/felixonmars/archriscv-packages/master/java17-openjdk/java17-riscv64.patch
+# riscv patch origin:
+# https://raw.githubusercontent.com/felixonmars/archriscv-packages/master/java17-openjdk/java17-riscv64.patch
LICENSE="GPL-2"
KEYWORDS="amd64 ~arm arm64 ppc64 ~riscv x86"
diff --git a/dev-java/openjdk/openjdk-8.332_p09.ebuild b/dev-java/openjdk/openjdk-8.332_p09.ebuild
deleted file mode 100644
index e2f8f421b145..000000000000
--- a/dev-java/openjdk/openjdk-8.332_p09.ebuild
+++ /dev/null
@@ -1,229 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit check-reqs eapi8-dosym flag-o-matic java-pkg-2 java-vm-2 multiprocessing toolchain-funcs
-
-# don't change versioning scheme
-# to find correct _p number, look at
-# https://github.com/openjdk/jdk${SLOT}u/tags
-# you will see, for example, jdk-17.0.4.1-ga and jdk-17.0.4.1+1, both point
-# to exact same commit sha. we should always use the full version.
-# -ga tag is just for humans to easily identify General Availability release tag.
-# we need -ga tag to fetch tarball and unpack it, but exact number everywhere else to
-# set build version properly
-MY_PV="$(ver_rs 1 'u' 2 '-' ${PV%_p*}-ga)"
-SLOT="${PV%%[.+]*}"
-
-DESCRIPTION="Open source implementation of the Java programming language"
-HOMEPAGE="https://openjdk.org"
-SRC_URI="https://github.com/openjdk/jdk${SLOT}u/archive/refs/tags/jdk${MY_PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="GPL-2"
-KEYWORDS="amd64 arm64 ppc64 x86"
-IUSE="alsa debug cups doc examples headless-awt javafx +jbootstrap selinux source"
-
-COMMON_DEPEND="
- media-libs/freetype:2=
- media-libs/giflib:0/7
- sys-libs/zlib
-"
-# Many libs are required to build, but not to run, make is possible to remove
-# by listing conditionally in RDEPEND unconditionally in DEPEND
-RDEPEND="
- ${COMMON_DEPEND}
- >=sys-apps/baselayout-java-0.1.0-r1
- !headless-awt? (
- x11-libs/libX11
- x11-libs/libXext
- x11-libs/libXi
- x11-libs/libXrender
- x11-libs/libXt
- x11-libs/libXtst
- )
- alsa? ( media-libs/alsa-lib )
- cups? ( net-print/cups )
- selinux? ( sec-policy/selinux-java )
-"
-
-DEPEND="
- ${COMMON_DEPEND}
- app-arch/zip
- media-libs/alsa-lib
- net-print/cups
- virtual/pkgconfig
- x11-base/xorg-proto
- x11-libs/libX11
- x11-libs/libXext
- x11-libs/libXi
- x11-libs/libXrender
- x11-libs/libXt
- x11-libs/libXtst
- || (
- dev-java/openjdk-bin:${SLOT}
- dev-java/icedtea-bin:${SLOT}
- dev-java/openjdk:${SLOT}
- dev-java/icedtea:${SLOT}
- )
-"
-
-BDEPEND="
- virtual/pkgconfig
-"
-
-PDEPEND="javafx? ( dev-java/openjfx:${SLOT} )"
-
-S="${WORKDIR}/jdk${SLOT}u-jdk${MY_PV}"
-
-PATCHES=( "${FILESDIR}/openjdk-8-insantiate-arrayallocator.patch" )
-
-# The space required to build varies wildly depending on USE flags,
-# ranging from 2GB to 16GB. This function is certainly not exact but
-# should be close enough to be useful.
-openjdk_check_requirements() {
- local M
- M=2048
- M=$(( $(usex debug 3 1) * $M ))
- M=$(( $(usex jbootstrap 2 1) * $M ))
- M=$(( $(usex doc 320 0) + $(usex source 128 0) + 192 + $M ))
-
- CHECKREQS_DISK_BUILD=${M}M check-reqs_pkg_${EBUILD_PHASE}
-}
-
-pkg_pretend() {
- openjdk_check_requirements
- if [[ ${MERGE_TYPE} != binary ]]; then
- has ccache ${FEATURES} && die "FEATURES=ccache doesn't work with ${PN}, bug #677876"
- fi
-}
-
-pkg_setup() {
- openjdk_check_requirements
-
- JAVA_PKG_WANT_BUILD_VM="openjdk-${SLOT} openjdk-bin-${SLOT} icedtea-${SLOT} icedtea-bin-${SLOT}"
- JAVA_PKG_WANT_SOURCE="${SLOT}"
- JAVA_PKG_WANT_TARGET="${SLOT}"
-
- java-vm-2_pkg_setup
- java-pkg-2_pkg_setup
-}
-
-src_prepare() {
- default
-
- # new warnings in new gcc https://bugs.gentoo.org/685426
- sed -i '/^WARNINGS_ARE_ERRORS/ s/-Werror/-Wno-error/' \
- hotspot/make/linux/makefiles/gcc.make || die
-
- chmod +x configure || die
-}
-
-src_configure() {
- # general build info found here:
- #https://hg.openjdk.java.net/jdk8/jdk8/raw-file/tip/README-builds.html
-
- # Work around stack alignment issue, bug #647954.
- use x86 && append-flags -mincoming-stack-boundary=2
-
- # Work around -fno-common ( GCC10 default ), bug #706638
- append-flags -fcommon
-
- # Strip some flags users may set, but should not. #818502
- filter-flags -fexceptions
-
- tc-export_build_env CC CXX PKG_CONFIG STRIP
-
- local myconf=(
- --disable-ccache
- --disable-freetype-bundling
- --disable-precompiled-headers
- --enable-unlimited-crypto
- --with-boot-jdk="${JDK_HOME}"
- --with-extra-cflags="${CFLAGS}"
- --with-extra-cxxflags="${CXXFLAGS}"
- --with-extra-ldflags="${LDFLAGS}"
- --with-freetype-lib="$( $(tc-getPKG_CONFIG) --variable=libdir freetype2 )"
- --with-freetype-include="$( $(tc-getPKG_CONFIG) --variable=includedir freetype2)/freetype2"
- --with-giflib=system
- --with-jtreg=no
- --with-jobs=1
- --with-num-cores=1
- --with-update-version="$(ver_cut 2)"
- --with-build-number="b$(ver_cut 4)"
- --with-milestone="fcs" # magic variable that means "release version"
- --with-vendor-name="Gentoo"
- --with-vendor-url="https://gentoo.org"
- --with-vendor-bug-url="https://bugs.gentoo.org"
- --with-vendor-vm-bug-url="https://bugs.openjdk.java.net"
- --with-zlib=system
- --with-native-debug-symbols=$(usex debug internal none)
- $(usex headless-awt --disable-headful '')
- $(tc-is-clang && echo "--with-toolchain-type=clang")
- )
-
- (
- unset _JAVA_OPTIONS JAVA JAVA_TOOL_OPTIONS JAVAC MAKE XARGS
- CFLAGS= CXXFLAGS= LDFLAGS= \
- CONFIG_SITE=/dev/null \
- CONFIG_SHELL="${BROOT}/bin/bash"
- econf "${myconf[@]}"
- )
-}
-
-src_compile() {
- local myemakeargs=(
- JOBS=$(makeopts_jobs)
- LOG=debug
- CFLAGS_WARNINGS_ARE_ERRORS= # No -Werror
- NICE= # Use PORTAGE_NICENESS, don't adjust further down
- $(usex doc docs '')
- $(usex jbootstrap bootcycle-images images)
- )
- emake "${myemakeargs[@]}" -j1 #nowarn
-}
-
-src_install() {
- local dest="/usr/$(get_libdir)/${PN}-${SLOT}"
- local ddest="${ED}/${dest#/}"
-
- cd "${S}"/build/*-release/images/j2sdk-image || die
-
- if ! use alsa; then
- rm -v jre/lib/$(get_system_arch)/libjsoundalsa.* || die
- fi
-
- # build system does not remove that
- if use headless-awt ; then
- rm -fvr jre/lib/$(get_system_arch)/lib*{[jx]awt,splashscreen}* \
- {,jre/}bin/policytool bin/appletviewer || die
- fi
-
- if ! use examples ; then
- rm -vr demo/ || die
- fi
-
- if ! use source ; then
- rm -v src.zip || die
- fi
-
- dodir "${dest}"
- cp -pPR * "${ddest}" || die
-
- dosym8 -r /etc/ssl/certs/java/cacerts "${dest}"/jre/lib/security/cacerts
-
- java-vm_install-env "${FILESDIR}"/${PN}-${SLOT}.env.sh
- java-vm_set-pax-markings "${ddest}"
- java-vm_revdep-mask
- java-vm_sandbox-predict /dev/random /proc/self/coredump_filter
-
- if use doc ; then
- docinto html
- dodoc -r "${S}"/build/*-release/docs/*
- fi
-}
-
-pkg_postinst() {
- java-vm-2_pkg_postinst
- einfo "JavaWebStart functionality provided by icedtea-web package"
-}
diff --git a/dev-java/openjdk/openjdk-8.345_p01.ebuild b/dev-java/openjdk/openjdk-8.345_p01.ebuild
deleted file mode 100644
index 0981ff23ed4e..000000000000
--- a/dev-java/openjdk/openjdk-8.345_p01.ebuild
+++ /dev/null
@@ -1,229 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit check-reqs eapi8-dosym flag-o-matic java-pkg-2 java-vm-2 multiprocessing toolchain-funcs
-
-# don't change versioning scheme
-# to find correct _p number, look at
-# https://github.com/openjdk/jdk${SLOT}u/tags
-# you will see, for example, jdk-17.0.4.1-ga and jdk-17.0.4.1+1, both point
-# to exact same commit sha. we should always use the full version.
-# -ga tag is just for humans to easily identify General Availability release tag.
-# we need -ga tag to fetch tarball and unpack it, but exact number everywhere else to
-# set build version properly
-MY_PV="$(ver_rs 1 'u' 2 '-' ${PV%_p*}-ga)"
-SLOT="${PV%%[.+]*}"
-
-DESCRIPTION="Open source implementation of the Java programming language"
-HOMEPAGE="https://openjdk.org"
-SRC_URI="https://github.com/openjdk/jdk${SLOT}u/archive/refs/tags/jdk${MY_PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="GPL-2"
-KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86"
-IUSE="alsa debug cups doc examples headless-awt javafx +jbootstrap selinux source"
-
-COMMON_DEPEND="
- media-libs/freetype:2=
- media-libs/giflib:0/7
- sys-libs/zlib
-"
-# Many libs are required to build, but not to run, make is possible to remove
-# by listing conditionally in RDEPEND unconditionally in DEPEND
-RDEPEND="
- ${COMMON_DEPEND}
- >=sys-apps/baselayout-java-0.1.0-r1
- !headless-awt? (
- x11-libs/libX11
- x11-libs/libXext
- x11-libs/libXi
- x11-libs/libXrender
- x11-libs/libXt
- x11-libs/libXtst
- )
- alsa? ( media-libs/alsa-lib )
- cups? ( net-print/cups )
- selinux? ( sec-policy/selinux-java )
-"
-
-DEPEND="
- ${COMMON_DEPEND}
- app-arch/zip
- media-libs/alsa-lib
- net-print/cups
- virtual/pkgconfig
- x11-base/xorg-proto
- x11-libs/libX11
- x11-libs/libXext
- x11-libs/libXi
- x11-libs/libXrender
- x11-libs/libXt
- x11-libs/libXtst
- || (
- dev-java/openjdk-bin:${SLOT}
- dev-java/icedtea-bin:${SLOT}
- dev-java/openjdk:${SLOT}
- dev-java/icedtea:${SLOT}
- )
-"
-
-BDEPEND="
- virtual/pkgconfig
-"
-
-PDEPEND="javafx? ( dev-java/openjfx:${SLOT} )"
-
-S="${WORKDIR}/jdk${SLOT}u-jdk${MY_PV}"
-
-PATCHES=( "${FILESDIR}/openjdk-8-insantiate-arrayallocator.patch" )
-
-# The space required to build varies wildly depending on USE flags,
-# ranging from 2GB to 16GB. This function is certainly not exact but
-# should be close enough to be useful.
-openjdk_check_requirements() {
- local M
- M=2048
- M=$(( $(usex debug 3 1) * $M ))
- M=$(( $(usex jbootstrap 2 1) * $M ))
- M=$(( $(usex doc 320 0) + $(usex source 128 0) + 192 + $M ))
-
- CHECKREQS_DISK_BUILD=${M}M check-reqs_pkg_${EBUILD_PHASE}
-}
-
-pkg_pretend() {
- openjdk_check_requirements
- if [[ ${MERGE_TYPE} != binary ]]; then
- has ccache ${FEATURES} && die "FEATURES=ccache doesn't work with ${PN}, bug #677876"
- fi
-}
-
-pkg_setup() {
- openjdk_check_requirements
-
- JAVA_PKG_WANT_BUILD_VM="openjdk-${SLOT} openjdk-bin-${SLOT} icedtea-${SLOT} icedtea-bin-${SLOT}"
- JAVA_PKG_WANT_SOURCE="${SLOT}"
- JAVA_PKG_WANT_TARGET="${SLOT}"
-
- java-vm-2_pkg_setup
- java-pkg-2_pkg_setup
-}
-
-src_prepare() {
- default
-
- # new warnings in new gcc https://bugs.gentoo.org/685426
- sed -i '/^WARNINGS_ARE_ERRORS/ s/-Werror/-Wno-error/' \
- hotspot/make/linux/makefiles/gcc.make || die
-
- chmod +x configure || die
-}
-
-src_configure() {
- # general build info found here:
- #https://hg.openjdk.java.net/jdk8/jdk8/raw-file/tip/README-builds.html
-
- # Work around stack alignment issue, bug #647954.
- use x86 && append-flags -mincoming-stack-boundary=2
-
- # Work around -fno-common ( GCC10 default ), bug #706638
- append-flags -fcommon
-
- # Strip some flags users may set, but should not. #818502
- filter-flags -fexceptions
-
- tc-export_build_env CC CXX PKG_CONFIG STRIP
-
- local myconf=(
- --disable-ccache
- --disable-freetype-bundling
- --disable-precompiled-headers
- --enable-unlimited-crypto
- --with-boot-jdk="${JDK_HOME}"
- --with-extra-cflags="${CFLAGS}"
- --with-extra-cxxflags="${CXXFLAGS}"
- --with-extra-ldflags="${LDFLAGS}"
- --with-freetype-lib="$( $(tc-getPKG_CONFIG) --variable=libdir freetype2 )"
- --with-freetype-include="$( $(tc-getPKG_CONFIG) --variable=includedir freetype2)/freetype2"
- --with-giflib=system
- --with-jtreg=no
- --with-jobs=1
- --with-num-cores=1
- --with-update-version="$(ver_cut 2)"
- --with-build-number="b$(ver_cut 4)"
- --with-milestone="fcs" # magic variable that means "release version"
- --with-vendor-name="Gentoo"
- --with-vendor-url="https://gentoo.org"
- --with-vendor-bug-url="https://bugs.gentoo.org"
- --with-vendor-vm-bug-url="https://bugs.openjdk.java.net"
- --with-zlib=system
- --with-native-debug-symbols=$(usex debug internal none)
- $(usex headless-awt --disable-headful '')
- $(tc-is-clang && echo "--with-toolchain-type=clang")
- )
-
- (
- unset _JAVA_OPTIONS JAVA JAVA_TOOL_OPTIONS JAVAC MAKE XARGS
- CFLAGS= CXXFLAGS= LDFLAGS= \
- CONFIG_SITE=/dev/null \
- CONFIG_SHELL="${BROOT}/bin/bash"
- econf "${myconf[@]}"
- )
-}
-
-src_compile() {
- local myemakeargs=(
- JOBS=$(makeopts_jobs)
- LOG=debug
- CFLAGS_WARNINGS_ARE_ERRORS= # No -Werror
- NICE= # Use PORTAGE_NICENESS, don't adjust further down
- $(usex doc docs '')
- $(usex jbootstrap bootcycle-images images)
- )
- emake "${myemakeargs[@]}" -j1 #nowarn
-}
-
-src_install() {
- local dest="/usr/$(get_libdir)/${PN}-${SLOT}"
- local ddest="${ED}/${dest#/}"
-
- cd "${S}"/build/*-release/images/j2sdk-image || die
-
- if ! use alsa; then
- rm -v jre/lib/$(get_system_arch)/libjsoundalsa.* || die
- fi
-
- # build system does not remove that
- if use headless-awt ; then
- rm -fvr jre/lib/$(get_system_arch)/lib*{[jx]awt,splashscreen}* \
- {,jre/}bin/policytool bin/appletviewer || die
- fi
-
- if ! use examples ; then
- rm -vr demo/ || die
- fi
-
- if ! use source ; then
- rm -v src.zip || die
- fi
-
- dodir "${dest}"
- cp -pPR * "${ddest}" || die
-
- dosym8 -r /etc/ssl/certs/java/cacerts "${dest}"/jre/lib/security/cacerts
-
- java-vm_install-env "${FILESDIR}"/${PN}-${SLOT}.env.sh
- java-vm_set-pax-markings "${ddest}"
- java-vm_revdep-mask
- java-vm_sandbox-predict /dev/random /proc/self/coredump_filter
-
- if use doc ; then
- docinto html
- dodoc -r "${S}"/build/*-release/docs/*
- fi
-}
-
-pkg_postinst() {
- java-vm-2_pkg_postinst
- einfo "JavaWebStart functionality provided by icedtea-web package"
-}
diff --git a/dev-java/openjdk/openjdk-8.352_p08.ebuild b/dev-java/openjdk/openjdk-8.352_p08.ebuild
deleted file mode 100644
index 0981ff23ed4e..000000000000
--- a/dev-java/openjdk/openjdk-8.352_p08.ebuild
+++ /dev/null
@@ -1,229 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit check-reqs eapi8-dosym flag-o-matic java-pkg-2 java-vm-2 multiprocessing toolchain-funcs
-
-# don't change versioning scheme
-# to find correct _p number, look at
-# https://github.com/openjdk/jdk${SLOT}u/tags
-# you will see, for example, jdk-17.0.4.1-ga and jdk-17.0.4.1+1, both point
-# to exact same commit sha. we should always use the full version.
-# -ga tag is just for humans to easily identify General Availability release tag.
-# we need -ga tag to fetch tarball and unpack it, but exact number everywhere else to
-# set build version properly
-MY_PV="$(ver_rs 1 'u' 2 '-' ${PV%_p*}-ga)"
-SLOT="${PV%%[.+]*}"
-
-DESCRIPTION="Open source implementation of the Java programming language"
-HOMEPAGE="https://openjdk.org"
-SRC_URI="https://github.com/openjdk/jdk${SLOT}u/archive/refs/tags/jdk${MY_PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="GPL-2"
-KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86"
-IUSE="alsa debug cups doc examples headless-awt javafx +jbootstrap selinux source"
-
-COMMON_DEPEND="
- media-libs/freetype:2=
- media-libs/giflib:0/7
- sys-libs/zlib
-"
-# Many libs are required to build, but not to run, make is possible to remove
-# by listing conditionally in RDEPEND unconditionally in DEPEND
-RDEPEND="
- ${COMMON_DEPEND}
- >=sys-apps/baselayout-java-0.1.0-r1
- !headless-awt? (
- x11-libs/libX11
- x11-libs/libXext
- x11-libs/libXi
- x11-libs/libXrender
- x11-libs/libXt
- x11-libs/libXtst
- )
- alsa? ( media-libs/alsa-lib )
- cups? ( net-print/cups )
- selinux? ( sec-policy/selinux-java )
-"
-
-DEPEND="
- ${COMMON_DEPEND}
- app-arch/zip
- media-libs/alsa-lib
- net-print/cups
- virtual/pkgconfig
- x11-base/xorg-proto
- x11-libs/libX11
- x11-libs/libXext
- x11-libs/libXi
- x11-libs/libXrender
- x11-libs/libXt
- x11-libs/libXtst
- || (
- dev-java/openjdk-bin:${SLOT}
- dev-java/icedtea-bin:${SLOT}
- dev-java/openjdk:${SLOT}
- dev-java/icedtea:${SLOT}
- )
-"
-
-BDEPEND="
- virtual/pkgconfig
-"
-
-PDEPEND="javafx? ( dev-java/openjfx:${SLOT} )"
-
-S="${WORKDIR}/jdk${SLOT}u-jdk${MY_PV}"
-
-PATCHES=( "${FILESDIR}/openjdk-8-insantiate-arrayallocator.patch" )
-
-# The space required to build varies wildly depending on USE flags,
-# ranging from 2GB to 16GB. This function is certainly not exact but
-# should be close enough to be useful.
-openjdk_check_requirements() {
- local M
- M=2048
- M=$(( $(usex debug 3 1) * $M ))
- M=$(( $(usex jbootstrap 2 1) * $M ))
- M=$(( $(usex doc 320 0) + $(usex source 128 0) + 192 + $M ))
-
- CHECKREQS_DISK_BUILD=${M}M check-reqs_pkg_${EBUILD_PHASE}
-}
-
-pkg_pretend() {
- openjdk_check_requirements
- if [[ ${MERGE_TYPE} != binary ]]; then
- has ccache ${FEATURES} && die "FEATURES=ccache doesn't work with ${PN}, bug #677876"
- fi
-}
-
-pkg_setup() {
- openjdk_check_requirements
-
- JAVA_PKG_WANT_BUILD_VM="openjdk-${SLOT} openjdk-bin-${SLOT} icedtea-${SLOT} icedtea-bin-${SLOT}"
- JAVA_PKG_WANT_SOURCE="${SLOT}"
- JAVA_PKG_WANT_TARGET="${SLOT}"
-
- java-vm-2_pkg_setup
- java-pkg-2_pkg_setup
-}
-
-src_prepare() {
- default
-
- # new warnings in new gcc https://bugs.gentoo.org/685426
- sed -i '/^WARNINGS_ARE_ERRORS/ s/-Werror/-Wno-error/' \
- hotspot/make/linux/makefiles/gcc.make || die
-
- chmod +x configure || die
-}
-
-src_configure() {
- # general build info found here:
- #https://hg.openjdk.java.net/jdk8/jdk8/raw-file/tip/README-builds.html
-
- # Work around stack alignment issue, bug #647954.
- use x86 && append-flags -mincoming-stack-boundary=2
-
- # Work around -fno-common ( GCC10 default ), bug #706638
- append-flags -fcommon
-
- # Strip some flags users may set, but should not. #818502
- filter-flags -fexceptions
-
- tc-export_build_env CC CXX PKG_CONFIG STRIP
-
- local myconf=(
- --disable-ccache
- --disable-freetype-bundling
- --disable-precompiled-headers
- --enable-unlimited-crypto
- --with-boot-jdk="${JDK_HOME}"
- --with-extra-cflags="${CFLAGS}"
- --with-extra-cxxflags="${CXXFLAGS}"
- --with-extra-ldflags="${LDFLAGS}"
- --with-freetype-lib="$( $(tc-getPKG_CONFIG) --variable=libdir freetype2 )"
- --with-freetype-include="$( $(tc-getPKG_CONFIG) --variable=includedir freetype2)/freetype2"
- --with-giflib=system
- --with-jtreg=no
- --with-jobs=1
- --with-num-cores=1
- --with-update-version="$(ver_cut 2)"
- --with-build-number="b$(ver_cut 4)"
- --with-milestone="fcs" # magic variable that means "release version"
- --with-vendor-name="Gentoo"
- --with-vendor-url="https://gentoo.org"
- --with-vendor-bug-url="https://bugs.gentoo.org"
- --with-vendor-vm-bug-url="https://bugs.openjdk.java.net"
- --with-zlib=system
- --with-native-debug-symbols=$(usex debug internal none)
- $(usex headless-awt --disable-headful '')
- $(tc-is-clang && echo "--with-toolchain-type=clang")
- )
-
- (
- unset _JAVA_OPTIONS JAVA JAVA_TOOL_OPTIONS JAVAC MAKE XARGS
- CFLAGS= CXXFLAGS= LDFLAGS= \
- CONFIG_SITE=/dev/null \
- CONFIG_SHELL="${BROOT}/bin/bash"
- econf "${myconf[@]}"
- )
-}
-
-src_compile() {
- local myemakeargs=(
- JOBS=$(makeopts_jobs)
- LOG=debug
- CFLAGS_WARNINGS_ARE_ERRORS= # No -Werror
- NICE= # Use PORTAGE_NICENESS, don't adjust further down
- $(usex doc docs '')
- $(usex jbootstrap bootcycle-images images)
- )
- emake "${myemakeargs[@]}" -j1 #nowarn
-}
-
-src_install() {
- local dest="/usr/$(get_libdir)/${PN}-${SLOT}"
- local ddest="${ED}/${dest#/}"
-
- cd "${S}"/build/*-release/images/j2sdk-image || die
-
- if ! use alsa; then
- rm -v jre/lib/$(get_system_arch)/libjsoundalsa.* || die
- fi
-
- # build system does not remove that
- if use headless-awt ; then
- rm -fvr jre/lib/$(get_system_arch)/lib*{[jx]awt,splashscreen}* \
- {,jre/}bin/policytool bin/appletviewer || die
- fi
-
- if ! use examples ; then
- rm -vr demo/ || die
- fi
-
- if ! use source ; then
- rm -v src.zip || die
- fi
-
- dodir "${dest}"
- cp -pPR * "${ddest}" || die
-
- dosym8 -r /etc/ssl/certs/java/cacerts "${dest}"/jre/lib/security/cacerts
-
- java-vm_install-env "${FILESDIR}"/${PN}-${SLOT}.env.sh
- java-vm_set-pax-markings "${ddest}"
- java-vm_revdep-mask
- java-vm_sandbox-predict /dev/random /proc/self/coredump_filter
-
- if use doc ; then
- docinto html
- dodoc -r "${S}"/build/*-release/docs/*
- fi
-}
-
-pkg_postinst() {
- java-vm-2_pkg_postinst
- einfo "JavaWebStart functionality provided by icedtea-web package"
-}