From a978c074e4272bb901fbe4a10de0a7b2af574f17 Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Tue, 4 May 2021 22:28:33 +0100 Subject: gentoo resync : 04.05.2021 --- sys-libs/db/Manifest | 45 ++++--- sys-libs/db/db-1.85-r4.ebuild | 56 -------- sys-libs/db/db-1.85-r5.ebuild | 56 ++++++++ sys-libs/db/db-18.1.32-r1.ebuild | 247 +++++++++++++++++++++++++++++++++++ sys-libs/db/db-18.1.32.ebuild | 247 ----------------------------------- sys-libs/db/db-18.1.40-r1.ebuild | 245 +++++++++++++++++++++++++++++++++++ sys-libs/db/db-18.1.40.ebuild | 245 ----------------------------------- sys-libs/db/db-3.2.9_p2-r1.ebuild | 196 ---------------------------- sys-libs/db/db-3.2.9_p2-r2.ebuild | 196 ++++++++++++++++++++++++++++ sys-libs/db/db-4.2.52_p5-r3.ebuild | 185 -------------------------- sys-libs/db/db-4.2.52_p5-r4.ebuild | 185 ++++++++++++++++++++++++++ sys-libs/db/db-4.3.29_p1-r3.ebuild | 183 -------------------------- sys-libs/db/db-4.3.29_p1-r4.ebuild | 183 ++++++++++++++++++++++++++ sys-libs/db/db-4.4.20_p4-r3.ebuild | 177 ------------------------- sys-libs/db/db-4.4.20_p4-r4.ebuild | 177 +++++++++++++++++++++++++ sys-libs/db/db-4.5.20_p2-r3.ebuild | 189 --------------------------- sys-libs/db/db-4.5.20_p2-r4.ebuild | 193 --------------------------- sys-libs/db/db-4.5.20_p2-r5.ebuild | 189 +++++++++++++++++++++++++++ sys-libs/db/db-4.5.20_p2-r6.ebuild | 193 +++++++++++++++++++++++++++ sys-libs/db/db-4.6.21_p4-r2.ebuild | 178 ------------------------- sys-libs/db/db-4.6.21_p4-r3.ebuild | 182 -------------------------- sys-libs/db/db-4.6.21_p4-r4.ebuild | 178 +++++++++++++++++++++++++ sys-libs/db/db-4.6.21_p4-r5.ebuild | 182 ++++++++++++++++++++++++++ sys-libs/db/db-4.7.25_p4-r2.ebuild | 185 -------------------------- sys-libs/db/db-4.7.25_p4-r3.ebuild | 189 --------------------------- sys-libs/db/db-4.7.25_p4-r4.ebuild | 185 ++++++++++++++++++++++++++ sys-libs/db/db-4.7.25_p4-r5.ebuild | 189 +++++++++++++++++++++++++++ sys-libs/db/db-4.8.30-r3.ebuild | 192 --------------------------- sys-libs/db/db-4.8.30-r4.ebuild | 196 ---------------------------- sys-libs/db/db-4.8.30-r5.ebuild | 192 +++++++++++++++++++++++++++ sys-libs/db/db-4.8.30-r6.ebuild | 196 ++++++++++++++++++++++++++++ sys-libs/db/db-5.1.29-r2.ebuild | 224 -------------------------------- sys-libs/db/db-5.1.29-r3.ebuild | 224 ++++++++++++++++++++++++++++++++ sys-libs/db/db-5.3.28-r2.ebuild | 246 ----------------------------------- sys-libs/db/db-5.3.28-r4.ebuild | 254 ------------------------------------ sys-libs/db/db-5.3.28-r5.ebuild | 258 ------------------------------------- sys-libs/db/db-5.3.28-r6.ebuild | 246 +++++++++++++++++++++++++++++++++++ sys-libs/db/db-5.3.28-r7.ebuild | 254 ++++++++++++++++++++++++++++++++++++ sys-libs/db/db-5.3.28-r8.ebuild | 258 +++++++++++++++++++++++++++++++++++++ sys-libs/db/db-6.0.35-r2.ebuild | 253 ------------------------------------ sys-libs/db/db-6.0.35-r3.ebuild | 257 ------------------------------------ sys-libs/db/db-6.0.35-r4.ebuild | 257 ++++++++++++++++++++++++++++++++++++ sys-libs/db/db-6.1.38-r1.ebuild | 248 +++++++++++++++++++++++++++++++++++ sys-libs/db/db-6.1.38.ebuild | 248 ----------------------------------- sys-libs/db/db-6.2.38-r1.ebuild | 249 +++++++++++++++++++++++++++++++++++ sys-libs/db/db-6.2.38.ebuild | 249 ----------------------------------- 46 files changed, 4551 insertions(+), 4805 deletions(-) delete mode 100644 sys-libs/db/db-1.85-r4.ebuild create mode 100644 sys-libs/db/db-1.85-r5.ebuild create mode 100644 sys-libs/db/db-18.1.32-r1.ebuild delete mode 100644 sys-libs/db/db-18.1.32.ebuild create mode 100644 sys-libs/db/db-18.1.40-r1.ebuild delete mode 100644 sys-libs/db/db-18.1.40.ebuild delete mode 100644 sys-libs/db/db-3.2.9_p2-r1.ebuild create mode 100644 sys-libs/db/db-3.2.9_p2-r2.ebuild delete mode 100644 sys-libs/db/db-4.2.52_p5-r3.ebuild create mode 100644 sys-libs/db/db-4.2.52_p5-r4.ebuild delete mode 100644 sys-libs/db/db-4.3.29_p1-r3.ebuild create mode 100644 sys-libs/db/db-4.3.29_p1-r4.ebuild delete mode 100644 sys-libs/db/db-4.4.20_p4-r3.ebuild create mode 100644 sys-libs/db/db-4.4.20_p4-r4.ebuild delete mode 100644 sys-libs/db/db-4.5.20_p2-r3.ebuild delete mode 100644 sys-libs/db/db-4.5.20_p2-r4.ebuild create mode 100644 sys-libs/db/db-4.5.20_p2-r5.ebuild create mode 100644 sys-libs/db/db-4.5.20_p2-r6.ebuild delete mode 100644 sys-libs/db/db-4.6.21_p4-r2.ebuild delete mode 100644 sys-libs/db/db-4.6.21_p4-r3.ebuild create mode 100644 sys-libs/db/db-4.6.21_p4-r4.ebuild create mode 100644 sys-libs/db/db-4.6.21_p4-r5.ebuild delete mode 100644 sys-libs/db/db-4.7.25_p4-r2.ebuild delete mode 100644 sys-libs/db/db-4.7.25_p4-r3.ebuild create mode 100644 sys-libs/db/db-4.7.25_p4-r4.ebuild create mode 100644 sys-libs/db/db-4.7.25_p4-r5.ebuild delete mode 100644 sys-libs/db/db-4.8.30-r3.ebuild delete mode 100644 sys-libs/db/db-4.8.30-r4.ebuild create mode 100644 sys-libs/db/db-4.8.30-r5.ebuild create mode 100644 sys-libs/db/db-4.8.30-r6.ebuild delete mode 100644 sys-libs/db/db-5.1.29-r2.ebuild create mode 100644 sys-libs/db/db-5.1.29-r3.ebuild delete mode 100644 sys-libs/db/db-5.3.28-r2.ebuild delete mode 100644 sys-libs/db/db-5.3.28-r4.ebuild delete mode 100644 sys-libs/db/db-5.3.28-r5.ebuild create mode 100644 sys-libs/db/db-5.3.28-r6.ebuild create mode 100644 sys-libs/db/db-5.3.28-r7.ebuild create mode 100644 sys-libs/db/db-5.3.28-r8.ebuild delete mode 100644 sys-libs/db/db-6.0.35-r2.ebuild delete mode 100644 sys-libs/db/db-6.0.35-r3.ebuild create mode 100644 sys-libs/db/db-6.0.35-r4.ebuild create mode 100644 sys-libs/db/db-6.1.38-r1.ebuild delete mode 100644 sys-libs/db/db-6.1.38.ebuild create mode 100644 sys-libs/db/db-6.2.38-r1.ebuild delete mode 100644 sys-libs/db/db-6.2.38.ebuild (limited to 'sys-libs/db') diff --git a/sys-libs/db/Manifest b/sys-libs/db/Manifest index e0e7a9596062..e09fbcf726ab 100644 --- a/sys-libs/db/Manifest +++ b/sys-libs/db/Manifest @@ -63,27 +63,26 @@ DIST patch.4.7.25.1 2072 BLAKE2B 773fb96f9c5995cee22931fcd504b9962d0c3407f7b4239 DIST patch.4.7.25.2 2210 BLAKE2B 3e9727a4e006fa8e4502f1481a44144458401d0df0eeea26eb135b1979f330f354cd5016f56b86400118f13fe29a92798b0dcf19581738d3e9cf83b9be1ebb6d SHA512 d57746a527574966606955a8ad6b97742ff3979e85a0d087ae0c33b64b4fc2fd854f3ac145e2efc061b3479de5ee8172a02183cf54ada91fce3e331ab948ff18 DIST patch.4.7.25.3 8442 BLAKE2B 666b643b3bf0d1e5ef5e445ae03228f436a5528bc197338c3c9bd468d7002bc81a16e295cf34fe6b38903e7f65c2c5c3cd9be0a3227f1122aeda22afc165e2a9 SHA512 815560c45c9c8491fd58d881a0bc1d23a82a13298d4757ed7d2ae4df4b88b278b8e4d6063eb46349a8f6f11ca9aa5b8555f3ce01df025715c2579dfa36241238 DIST patch.4.7.25.4 5647 BLAKE2B 60ecb24fb137f7aeacb9689d8edc41791f78f96d1aa15c7fa47032371533d668c5dc12a5e1641945402f0e21f4e596cebb5010ac170ef462279b2efb887be020 SHA512 df9810034773a9d0556cbd174e4f131f0461402bf3f476ae5da1deb92f3e2e9ef789687c5cc5c2df6385f6b14251e893be225ffacd895d71dfb305b9de32567e -EBUILD db-1.85-r4.ebuild 1307 BLAKE2B eeec9e6466a0f172cf6a9692782ab6d6b5cabfdb72398b985f34f53151a2a8d3c3990ba9d263c9ed9e780ea464d1369143c0e1967465a52eb0d70d1072be2b3e SHA512 afed650be1e2f2e5de7b7088d536640af2148279b31f89982abcbbcc61813c84c76bffafd32a5cdf28bdce5ee043c37b3aab1ac54e8d2114a88d1d029d5a0f2c -EBUILD db-18.1.32.ebuild 6945 BLAKE2B 5380160ea7ea9ad794f7b355d84ef95aa4e246d20d9736da50f44dd741613b49ca401871e5c32bb755cc9a8849a9468600549f46d22dd99f38682b19acd15969 SHA512 85e360cb0f32652493a04a7ba53dbb5dd63c9514cdcc08ac780b18991f5812402a59907de271d4caad4ced096f26d402fc821c93cc302cd81912bfbad320be62 -EBUILD db-18.1.40.ebuild 6877 BLAKE2B ae43f4356f053b3fcfe754b263a56053152d255c60d9c912d9ad76b3c8b3d8affde5174ef256b5fbf3de8ebb5e50ebdd1503afa67627e744aa445c68cc1c4bb3 SHA512 a68f87ad07bdce70a3254801b3f700a54fd807db87bbe9c0039c70b7dbe756710c8d4ff7ad20439734271d7e4c07d9187bea4f3a2652e2c1a87b462eae4c71d0 -EBUILD db-3.2.9_p2-r1.ebuild 4899 BLAKE2B e1d4e490297d6b67a5eb6256dbcece49145e4d945eea7657299cf66c40de1cf568c225352b242b49c0b074e562a70f120d8a59e5466df12f89c8dedf98e8cd51 SHA512 b04f69b18482850065876efb507a8d418d9ee710d1e90caa80f1e894cb33baa875d86666809708e1b1577b0bd96afab6ba08279d78299b78da7725fa931b6b5a -EBUILD db-4.2.52_p5-r3.ebuild 4640 BLAKE2B 9a35cb4990ca0891879f45df80f6681b244f9836a177630f43efca8e37f5df47bc6de5929bcfc035f8e4fe4591ddfbeaa6a5ba9de7242a8e9fb14f6107c8334c SHA512 bde537497192d33a6399c1f6ccca4f33fcd0b51bdbfa79efc0cf5ada23eb5525b0ab1e2860c50f4fa165c6c24527586997a51e04be1f410c826022d51bd59d09 -EBUILD db-4.3.29_p1-r3.ebuild 4510 BLAKE2B 9c0f28d7dd36f70b52c8230a4316186ee798fb691e774fc806443e3bb9a861dd66af827e16b06f32ed4270fe774089c07e823ca48a3169807da9a6c10707bc54 SHA512 baedf9357c28eb0b9a34bfd3b2a6c9766e9e2822b21c8a2ecba73ce42b4f5491237c49f35936a0b960a5d570cca45854c406d22789368df839e06fdabbc10673 -EBUILD db-4.4.20_p4-r3.ebuild 4398 BLAKE2B d22e57832389b5c87075e0a56e4780ed910182603ba597a566c455c51df3a3aa9ee2ecf2a8ebf0489aca6725c14b46ab9b1bbb162df5f7d07dc34c6b2a229d9c SHA512 42dd713000e20885212e6a89d975dc4846576a26210b471ef151ed69ecd1405106583dee17f991d900d65ca872fdd68dad7ebd7151873d7dc9848260a1484e82 -EBUILD db-4.5.20_p2-r3.ebuild 4638 BLAKE2B 2e44e957e1a95497c81f23cf56927c51b4dfb42726b0ede4be331bdb45e642f1041f97aea52ee56f43932a1957232ee2e685aaf15d0908976d24a8160458a75c SHA512 a4dcdf4c85ad346a96ad43f0b2e67f085b784e4901cd880a192a7a11c57f2f481728d65a2ac3639805ae65132e40b06edd17f695e58e94ecf7a2ab729a2de7be -EBUILD db-4.5.20_p2-r4.ebuild 4731 BLAKE2B 27698b3ff04d725be7c7da46d6794f3112c1c0f5efcbed48d1416dcb30400738aa86859e4adc96c45e71028654bb602ee9b0b31afbaae5e332cd52e12becaed7 SHA512 2c746dab898419f5982b7f8a02aa6a5dac19417c106fcd594f832fd2c67fe5ea2c8943b3ed32d0dd50551fa61f43d777a0685300cb51af6e0f7cf35358c72d3e -EBUILD db-4.6.21_p4-r2.ebuild 4360 BLAKE2B 93bbf582dda813cbfc04ed8c404a5e94ed969d25918dcf39dd300f09319d0d678843675735ce07747bf60ea452133acc64b843281a02960a4b275242fdc5ec66 SHA512 36d5ffa42e3cbda676dfe7f80ca1de01ac5ecb37df792a91c6381293ca8453c237a3f586ee92e2cba0a95455a1397cf24907f2bbdc52a7e4d512e69c2dba86bc -EBUILD db-4.6.21_p4-r3.ebuild 4453 BLAKE2B 5abe5f330275a3004c315f7ead9f1ae1c70f5e0ca208d6eb9d5b6914f75b8afa39938b36827530ff23ad93f8829c2d660f746f97c5ba25787c479106de58aba6 SHA512 44f0198ba923418e0153be75b7e5f179a379919175c3dc8032c0115d20f8c10de3c89dcbe4ab741e7db28d3da40944868dafaaff6abf19264716cbaaa82e91f4 -EBUILD db-4.7.25_p4-r2.ebuild 4686 BLAKE2B 34b3f1b47be03abe89ec088b14d56a91161175e8ea811b5f74aeee65d0df5299dc841fe3d688c75729517afa63902252b232a8f954635a09fe77b732a3eeb5e4 SHA512 cf4e050a35e2c71f6d6b7c1f438feb8bc843f6614efa85d3398bbc339acb9d9828890f4511b90cfd23090f469e9e941baba1b059d48d6ec549a290aaa7028e7f -EBUILD db-4.7.25_p4-r3.ebuild 4779 BLAKE2B 3b9ac03ca9e321f4d3d3805d4cc51fc38ede6d30805e1b73bf359637cab48c4dced6c1a8963550b829537092cf5414d35ba163a93c76ee9a8e2ce542553a6e8d SHA512 827dc6bc25d88f4628eead0c133703c309f9afde19740a6e5222acb75aaaa26e1ac1404e23313ce973717e5fdba1fcb4be5f9b66679d728fa4ef55e432eadec7 -EBUILD db-4.8.30-r3.ebuild 5182 BLAKE2B 80f6b5a6de5dc97dbaa42867d6eae7b3ebc9cd0cd8e42f41a1f7a78c37b4bf4ad69f1e1f96f3c2cb8cc6ffd6482ca7ff1d4b3f023d6c22fd8e7a09e5497c3b2a SHA512 4cd1881d3fb175a86ece7b06e58c198ff354e7cfe755680cee7eb7e100d12148eb75332315f2468cc7b7f7cccf73657830ae7c9f6cf8ec2697e124cd2401caf3 -EBUILD db-4.8.30-r4.ebuild 5275 BLAKE2B e636f2f29ad613afbb8b020f43d6be3327bbb404bd47f00d3650855bff8e2c3d25867f6992449b800a6c6a2b18bf916733860078e902c818dac52520d9ceaedf SHA512 57bdfcb2e5da6497aeba9089cb0fba08d86702b3e6323e9095adb8388cdb2bab77157f849e4de63b55fe053a31163ebf52e29e9ae72e15a64ece76e87f6fe833 -EBUILD db-5.1.29-r2.ebuild 5828 BLAKE2B 4a856ff3ebb4ca33a8349f0ea753766c034fd88e97340cad4ec7c4ef32606a744c18c0177d06c20646c5159f871732f2a3395e0597000367efad2803b7d43e22 SHA512 d027f886b27db0691c0a3f99abc6edc47d31bcdc2a7a1c2dae10023c88b06bbdfd1d44a48a62ffc5b71ace72f71005a8e476465386db2b884b9e979d3a47fee5 -EBUILD db-5.3.28-r2.ebuild 7139 BLAKE2B 0c40259c05a61910f482b0af34f0422df073e13eb770ec6bd484c88b094a231aa369591a0aeae724026c4a4d121238fc39dae778e9d7c8837601bddf89880d1a SHA512 1c9d8d9d3ab31c7652aaa03c0775371b9a34c34abe82d57dd71371f815fb13b30aa36f050436e5e40a91bdd3498d3591ad2f3140d80dd418f27ace042996a241 -EBUILD db-5.3.28-r4.ebuild 7108 BLAKE2B 2efbc2566ce164a6b38163dbb561c020ac25e58489cd2f77b46674f1a509bff787530105d5b0111476f6150346dc6f259d4067b3d00003beb9fd733852cd48dd SHA512 b243defee9d5ed5c0892182533dea7ae91b91c659bc74f124d162c6a8742b3170a012450fb1d48b02f66973214dc5cb54a33428cca89f4361804414abae23092 -EBUILD db-5.3.28-r5.ebuild 7199 BLAKE2B eb1a269cc68b6ba53e6829cc92fbd45a2c825e63d409c4dd98504f6632aede6d0938659b7cfd6eb7cc8d61231f92d6f7abac9aedde5da0a93784184738d79777 SHA512 c37de3183d6c3a1f2abe07b46e6f841cee535f00f9bc18af312b79946faad1014de974e4c75eeb35e28a07bd3950bb6d92b3760e00a044b6f517112aadb3001e -EBUILD db-6.0.35-r2.ebuild 7109 BLAKE2B 852eb1f3a8ada53e5c5d876caad77f979e113f8d768c3f95373b4cfa0c386f6cbbba43cb6ec7bcdda7dc3bf90c0d1530c01b9e06f69a2fb4078abf7c04c27c96 SHA512 9120421a13a76cbc1b0e76640b761593b8e0ec3dd035aa1a04f8fbed596afd25c6cb98b9bf05718ea2e3de11dc7179c058a7a8c0b039fa21b6349cfbdf2cffd3 -EBUILD db-6.0.35-r3.ebuild 7194 BLAKE2B 09fb3e9e47182ca1a4582613345abdcf19f408aba107369c3e5bc6f15f0a54c1bf74d9a6361cda4ef148b67f342c9a590f8a79bcfd5d7d1f62dc9d3577338553 SHA512 6879cdaca7f58cec87ab4afde513e02b046d57f8247763c836af26ffc470d1e776358ddd3b3dc795ef9912106dac07f686b3eb9a6277b54b48c1eecc37ae5d65 -EBUILD db-6.1.38.ebuild 6994 BLAKE2B 818881c98104bd9d20d6e311ad471e93053453132cc9488c0f6e9e92769a85f99ae0399585d0440495bf3d1774fdc8b5fadb2b18c572631fb43d8916d98373dc SHA512 3e7d56c05059077a83e06fd6a2f0d3455b609c31aee4542dabac3936cb0928da0028369b25d5ecbdc6bd0052059cbd798e0ac2fb0bd564b3af493bd8730341c4 -EBUILD db-6.2.38.ebuild 7174 BLAKE2B 1000e9ccefa1c20d93d2fc8f76554c476ef320813e68a57c09def632ef139d69c04c1288e45a5af4e8551e9d4fcba257715c5459efe187525ed56f4a9af5c810 SHA512 75cdad8e2392c20046a29d1a786306cf8245c8e1b37e6bebacd97b1cd893706a6e9e5d0e94eac8e96a3020d2037667cd850c7a7157fcb39d936ccac1c4dd4636 +EBUILD db-1.85-r5.ebuild 1307 BLAKE2B eeec9e6466a0f172cf6a9692782ab6d6b5cabfdb72398b985f34f53151a2a8d3c3990ba9d263c9ed9e780ea464d1369143c0e1967465a52eb0d70d1072be2b3e SHA512 afed650be1e2f2e5de7b7088d536640af2148279b31f89982abcbbcc61813c84c76bffafd32a5cdf28bdce5ee043c37b3aab1ac54e8d2114a88d1d029d5a0f2c +EBUILD db-18.1.32-r1.ebuild 6945 BLAKE2B e881cc49d0a16735af5c94d790ced1ccdb68c0c0877edf0e3285e1c3e0866a1105bf416cd2afe7038a613ea70173bae506a775c81da1e09878268237b4311383 SHA512 6a0474f69e6933f442bb7b9cdbae707f393b328c770258ba7b9254d1720e9baf26456b7e24502a8bf176c199f1d8d070b744f231932447d019c1660339965b2e +EBUILD db-18.1.40-r1.ebuild 6877 BLAKE2B 9d71572f1b2aad96b324b178ccece60ca5c0a11cbd540584fed6cb0ee1f66577c14ca685c0431c3f9b75207bfa0a05a0debb183ca277f3c91503b25bb408a553 SHA512 6fee61949c5a8b28c2ff446069edd4a2ae3fc651ac3c39e3b3a43ccf312252f4927f27639ab382b920bfa2aa8a821c75ac3fb480b923ae5204c1e2c23c0b4579 +EBUILD db-3.2.9_p2-r2.ebuild 4899 BLAKE2B e1d4e490297d6b67a5eb6256dbcece49145e4d945eea7657299cf66c40de1cf568c225352b242b49c0b074e562a70f120d8a59e5466df12f89c8dedf98e8cd51 SHA512 b04f69b18482850065876efb507a8d418d9ee710d1e90caa80f1e894cb33baa875d86666809708e1b1577b0bd96afab6ba08279d78299b78da7725fa931b6b5a +EBUILD db-4.2.52_p5-r4.ebuild 4640 BLAKE2B 75d2682fa7ba0276391079b38ee7b7f2809de12d65d344ebe0a9972eaa2aeaac86a2600be95aabbe37de8f08a6ab9f59c2d8c822141d5c79ca5f2e0abead9be9 SHA512 ee4349300aa26b0456f3d4cc959c4a0285df699ee723f1e6393c667689ed25bf6e0e0db4836ac8a4c7ee65e20331b385c4b3411aaca1fba9b8442b406c2627e4 +EBUILD db-4.3.29_p1-r4.ebuild 4510 BLAKE2B 35b4742c38626b3caaafc16c4424321ca603b7fcf1c3e987d983e6e17d124e8008922a2987c05439c2628d94918251204d17bde5cf45a9e0dae30c5a10c1f4f4 SHA512 144c0095632395b6ab7f9279f4e00f40a7f823fdefa28f39ee54cc4019c631b91e3f2e1da8bd9d7afe46378647424a29c86356fd27394d1e19be53ced97038a3 +EBUILD db-4.4.20_p4-r4.ebuild 4398 BLAKE2B db3ddc7a2b706889692d2c06063215128cc71da6b6ecd4488a87c8b363f6b26bb3f795df602ad1b19202d930f9e2bc0eb9b5ef9d0fad3e7b896ff99fe60d0826 SHA512 219b0d8fd4e8c12a59d5856f71b6dd3f8b6b53229ea86b774967a5c082715e215ac73962a747802f1804b30d152581434d2a75c4521b84483f688c2871b69a21 +EBUILD db-4.5.20_p2-r5.ebuild 4638 BLAKE2B bb3dcfd57bbd3be6e6d0a199f83a46d6ad709665100aad59854cd7914bec63fbe16fb76945d2f0ea6ec5fdc8d5215b27e72d7e6a2ec520eeeff257ea5f4bfd5d SHA512 0a0d8b5cf67fe9073331e14f4402a1eeaa2e274f2459291c76f52ab4fd5f566301919bab26688a30e49504c85b1f6e643a11c0464ab9378c2c778ada4537c21d +EBUILD db-4.5.20_p2-r6.ebuild 4731 BLAKE2B e6cadc392a5c172a8549d365a9f517bfae1e02bdf9d7b70251fbde385a6e8c74144406374ec7bcb75aaea3e255be17eeecc0546642e64a679c8c99bf89d8c380 SHA512 82245f88bd06c5b8a11efe10cdf6c7d9cdcc08bbb20d4ec038159b5298e49b819376a9a7db2e335a2068272b55874e193877c555c1a6c6cd2f49e76aef00816b +EBUILD db-4.6.21_p4-r4.ebuild 4360 BLAKE2B 1bd0a69c3f1f099f96471b9f8633db6847096d55aca14862e1136d59efba1557958ebf5af2b7aa6d32e93d1aec1da32c11ac70b96180fdd586fffff1f28a8379 SHA512 cbb70c4687aae61ed8c8c523cedb60cdd7664e1fd62b2d8d171758fe08611dd01483e573ba44a90594d9090c8adaa0246ddd95600e670ce211f5c3b54555e138 +EBUILD db-4.6.21_p4-r5.ebuild 4453 BLAKE2B ee2092f72e4b259eab6357af0cfb3f44e3923cfa426fa55603bfd88826760ae9dc0eef27fb025640655a9f97df5fdda42b47ede22680c73a5437c391d4d57b45 SHA512 f921dba6ef09c563e31d05ef784398a6ece1d06e7956df0deea5e709ec986d01e15d814f90e4877eb825355a1b3f592848ab4ee339dec779545f36d8f7ed6a68 +EBUILD db-4.7.25_p4-r4.ebuild 4686 BLAKE2B 452bc3e8e62c91843a58a69e77d4678daf23a749124f54aeff0b7bc20bd621d008cdeb79e21db92a4a072c7df67e7631d27e1868930222896ce3b44ed8298038 SHA512 ef7db867c191686d9ad538b12df98bab7c4c56d0a26a3b1bbb17051208f0163645566aa76bf98de95b92fe788540e81b697b747818f1e82220a1f4f407049678 +EBUILD db-4.7.25_p4-r5.ebuild 4779 BLAKE2B ec785c0278fe330e0cbf54f5f363de66f8627e2954d75e29aeedfbb45d606cdaf6cee5daf54e3f05e5a05d7518b94ab5e9fcdc34d791acf46ee21148cf2ad865 SHA512 c852ef9399511f80a80fc2fc8d9a4ef455484781cb9f6e45ee2ef2a0788e8e10ecff8a98ba23c2654c1c7c695a42471f5d8ff4d3e22def7ebe3123bddc854271 +EBUILD db-4.8.30-r5.ebuild 5182 BLAKE2B f977515df746d0c59fa2914f33b4b9e53c80d0085da522b2f547101a72524a784de854561b4d6b065f8cb2c4d7e228bd85bd073bed0c618ee0185df7802f4767 SHA512 2efd06d524a24846f50363311aa3957a6b1ad5fe6816d44343d303d41673922cced9acc1cf418fd72a4802c3eef9e2434559965aaa61853e8182ea52d1e5376b +EBUILD db-4.8.30-r6.ebuild 5275 BLAKE2B 264b58a8b576872bb8d0b78739a526d03da1f28e076a8157542f33226e9990f97791805d5c7fffaceb1ceb40d5065469676172820058b57b2a1d1c2c6f2258be SHA512 d4f046a0e6c77b728eb919189bcbb7fba2879834825867bb3cf9687fdf794885acfc406845f7128d03961a787a0173e2a4d8dd567b3daf6411ca604184522f5b +EBUILD db-5.1.29-r3.ebuild 5828 BLAKE2B c6c95e2ca50f73ac706130c111c3e6522cc7472ea34add7c7edac1578a872a6660fb7d5621051f8cd2cc04d165ee9667fd1ce3785c870602347f934832e824ff SHA512 ccab98198f26be0be79b82c715cd6f773f246af4c8cb61150c5af25ae954fc0e48d5aeec26309dbe5669b0fd1ed516f7e56f42d49fbba6012e0e466e24e9071b +EBUILD db-5.3.28-r6.ebuild 7139 BLAKE2B 508d61e239e3c06b2f3f44fb785bb422730c3a4e556d5551def14a6415a6448892dca5579bfa9f800c2a5f4c2963951312491a43f462249f3be0e371ae1039cf SHA512 df7c1cb37380acd7cf7f0ad61a80d95749c677cade232578a6a76fc5aa5170bdff273d419145ca29ecb788739c3818d4ee31b905ea3edf7beceddb66dcbcdd61 +EBUILD db-5.3.28-r7.ebuild 7107 BLAKE2B f12a047d497b4f97aadaa6793fc44b6a0cde50a2c57dadc915758e0960fe6e7dcc91b55c0c108d8446d3f8792d47a8197be7a8cf022be99c702d70e395f15370 SHA512 db7f69e1f612211ce4611b986a06a05c5b7e5dfde66c4bf24647ebdad98d76f7582297d79aa6f3fe57f1ace72ba28346d71079dcb2cf18e9a97154f4b9fd616f +EBUILD db-5.3.28-r8.ebuild 7199 BLAKE2B 6f3449bd1a5485480e472a888b65541278ca7b93406496a3f2e943def6764d91fa8095350c97a7f518ee4a1b89d3fa0e9bf6a6a0355d9589e4c8f89dc0f3ba8d SHA512 77763f2da4ca9ef43d739e3dcc49a12dd7ea4a34b69c9ee20376bef56d1a7867a787094b7f0542be456d958612abeda3f3017456416b3e55cd91c69df7f75f07 +EBUILD db-6.0.35-r4.ebuild 7198 BLAKE2B 62bc1e62fe26328d845bd5109fbe4a01d97c30cb276f28da565d36637c2e98cee559f04162ea6b4b1a27939c7447267768ceb6308b0bdb9d6e22268c8c79a075 SHA512 76dd5be13a23950e0740a75d713024cb2cd558cb549cc6f98c090ebd2e3c9a742faf34ea00fd7de20af0e95913fd22ffcf07ae5b86bb4430bbf4a7aecd5380c1 +EBUILD db-6.1.38-r1.ebuild 6994 BLAKE2B 56473fd89c18fbf475bb95802c19a9ecba67b9bc4749f986a684f39da755e3509d183252bca1c4afd73c84db35758b91cc33f9cbaaa6434ce938e48447836253 SHA512 3edfc11463f76723f179f5a683cab25ca67b3a4dbd38a1d0f0b149879b420fbf2c328f622269a63e113a7e542e3454f2ee3b350c8bfa75f65a635ae671508456 +EBUILD db-6.2.38-r1.ebuild 7174 BLAKE2B d66ce4b678328c88a8c97f899780177e3ba3a369f42ab50bde09d1097434cd9210639356797559cd88069f70d69d40e98a82c964c84b8ad6966ae5b18fb9ba2f SHA512 59bd01603384927a3a45846b9064a3a63522113ff3d9f9384d4b6eb7c1edbe272495104b4c45582e2e35aef295ea80f81a25e3346bac4a8264eef7d0a3f034ad MISC metadata.xml 1260 BLAKE2B e98fbefa3a80d0fa577c4b5afdda7652db360f86026c356e2f52581189d63a492747857acd8b8f2627a184580a6a98b3c6d144d209e08850cd6e89581e169a68 SHA512 63b883d28b987d8fdc58399d6ed5d942fad361c75cfb62a39dce7d50b155ecba82c17139542d1311effb061e535077a1903052b7f5c2bd3700464af77ef39fa0 diff --git a/sys-libs/db/db-1.85-r4.ebuild b/sys-libs/db/db-1.85-r4.ebuild deleted file mode 100644 index 3efe710bb3e8..000000000000 --- a/sys-libs/db/db-1.85-r4.ebuild +++ /dev/null @@ -1,56 +0,0 @@ -# Copyright 1999-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -inherit toolchain-funcs multilib - -DESCRIPTION="old berk db kept around for really old packages" -HOMEPAGE="http://www.oracle.com/technetwork/database/database-technologies/berkeleydb/overview/index.html" -SRC_URI="http://download.oracle.com/berkeley-db/db.${PV}.tar.gz - mirror://gentoo/${P}-r3.1.patch.bz2" -# The patch used by Gentoo is from Fedora, and includes all 5 patches found on -# the Oracle page, plus others. - -LICENSE="Sleepycat" -SLOT="1" -KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~s390 sparc x86" -IUSE="" - -DEPEND="" - -S="${WORKDIR}/db.${PV}" - -PATCHES=( - "${WORKDIR}"/${P}-r3.1.patch - "${FILESDIR}"/${P}-gentoo-paths.patch -) - -src_prepare() { - default - - sed -i \ - -e "s:@GENTOO_LIBDIR@:$(get_libdir):" \ - PORT/linux/Makefile || die -} - -src_compile() { - tc-export CC AR RANLIB - emake -C PORT/linux OORG="${CFLAGS}" -} - -src_install() { - make -C PORT/linux install DESTDIR="${ED}" || die - - # binary compat symlink - dosym libdb1.so.2 /usr/$(get_libdir)/libdb.so.2 - - sed -e "s:::" \ - -i "${ED}"/usr/include/db1/ndbm.h || die - dosym db1/ndbm.h /usr/include/ndbm.h - - dodoc changelog README - newdoc hash/README README.hash - docinto ps - dodoc docs/*.ps -} diff --git a/sys-libs/db/db-1.85-r5.ebuild b/sys-libs/db/db-1.85-r5.ebuild new file mode 100644 index 000000000000..3efe710bb3e8 --- /dev/null +++ b/sys-libs/db/db-1.85-r5.ebuild @@ -0,0 +1,56 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit toolchain-funcs multilib + +DESCRIPTION="old berk db kept around for really old packages" +HOMEPAGE="http://www.oracle.com/technetwork/database/database-technologies/berkeleydb/overview/index.html" +SRC_URI="http://download.oracle.com/berkeley-db/db.${PV}.tar.gz + mirror://gentoo/${P}-r3.1.patch.bz2" +# The patch used by Gentoo is from Fedora, and includes all 5 patches found on +# the Oracle page, plus others. + +LICENSE="Sleepycat" +SLOT="1" +KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~s390 sparc x86" +IUSE="" + +DEPEND="" + +S="${WORKDIR}/db.${PV}" + +PATCHES=( + "${WORKDIR}"/${P}-r3.1.patch + "${FILESDIR}"/${P}-gentoo-paths.patch +) + +src_prepare() { + default + + sed -i \ + -e "s:@GENTOO_LIBDIR@:$(get_libdir):" \ + PORT/linux/Makefile || die +} + +src_compile() { + tc-export CC AR RANLIB + emake -C PORT/linux OORG="${CFLAGS}" +} + +src_install() { + make -C PORT/linux install DESTDIR="${ED}" || die + + # binary compat symlink + dosym libdb1.so.2 /usr/$(get_libdir)/libdb.so.2 + + sed -e "s:::" \ + -i "${ED}"/usr/include/db1/ndbm.h || die + dosym db1/ndbm.h /usr/include/ndbm.h + + dodoc changelog README + newdoc hash/README README.hash + docinto ps + dodoc docs/*.ps +} diff --git a/sys-libs/db/db-18.1.32-r1.ebuild b/sys-libs/db/db-18.1.32-r1.ebuild new file mode 100644 index 000000000000..ba0c4dac5df2 --- /dev/null +++ b/sys-libs/db/db-18.1.32-r1.ebuild @@ -0,0 +1,247 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 +inherit db flag-o-matic java-pkg-opt-2 autotools multilib multilib-minimal eapi7-ver toolchain-funcs + +#Number of official patches +#PATCHNO=`echo ${PV}|sed -e "s,\(.*_p\)\([0-9]*\),\2,"` +PATCHNO=${PV/*.*.*_p} +if [[ ${PATCHNO} == "${PV}" ]] ; then + MY_PV=${PV} + MY_P=${P} + PATCHNO=0 +else + MY_PV=${PV/_p${PATCHNO}} + MY_P=${PN}-${MY_PV} +fi + +RESTRICT="!test? ( test )" + +S_BASE="${WORKDIR}/${MY_P}" +S="${S_BASE}/dist" +DESCRIPTION="Oracle Berkeley DB" +HOMEPAGE="http://www.oracle.com/technetwork/database/database-technologies/berkeleydb/overview/index.html" +SRC_URI="https://download.oracle.com/otn/berkeley-db/${MY_P}.tar.gz + mirror://gentoo/${MY_P}.tar.gz" +for (( i=1 ; i<=${PATCHNO} ; i++ )) ; do + SRC_URI+=" http://www.oracle.com/technology/products/berkeley-db/db/update/${MY_PV}/patch.${MY_PV}.${i}" +done + +LICENSE="AGPL-3" +SLOT="$(ver_cut 1-2)" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~ppc ~ppc64 ~s390 ~sparc ~x86" +IUSE="doc java cxx tcl test" + +REQUIRED_USE="test? ( tcl )" + +# the entire testsuite needs the TCL functionality +DEPEND="tcl? ( >=dev-lang/tcl-8.5.15-r1:0=[${MULTILIB_USEDEP}] ) + test? ( >=dev-lang/tcl-8.5.15-r1:0=[${MULTILIB_USEDEP}] ) + java? ( >=virtual/jdk-1.8 ) + >=sys-devel/binutils-2.16.1" +RDEPEND="tcl? ( >=dev-lang/tcl-8.5.15-r1:0=[${MULTILIB_USEDEP}] ) + java? ( >=virtual/jre-1.8 )" + +MULTILIB_WRAPPED_HEADERS=( + /usr/include/db$(ver_cut 1-2)/db.h +) + +PATCHES=( + # bug #510506 + "${FILESDIR}"/${PN}-4.8.24-java-manifest-location.patch + + # use the includes from the prefix + "${FILESDIR}"/${PN}-6.2.32-jni-check-prefix-first.patch + "${FILESDIR}"/${PN}-4.2-listen-to-java-options.patch + + # sqlite configure call has an extra leading .. + # upstreamed:5.2.36, missing in 5.3.x/6.x + # still needs to be patched in 6.0.20 + "${FILESDIR}"/${PN}-18.1.25-sqlite-configure-path.patch + + # The upstream testsuite copies .lib and the binaries for each parallel test + # core, ~300MB each. This patch uses links instead, saves a lot of space. + "${FILESDIR}"/${PN}-18.1.25-test-link.patch +) + +src_prepare() { + cd "${WORKDIR}"/"${MY_P}" + for (( i=1 ; i<=${PATCHNO} ; i++ )) + do + eapply "${DISTDIR}"/patch."${MY_PV}"."${i}" + done + + default + + # Upstream release script grabs the dates when the script was run, so lets + # end-run them to keep the date the same. + export REAL_DB_RELEASE_DATE="$(awk \ + '/^DB_VERSION_STRING=/{ gsub(".*\\(|\\).*","",$0); print $0; }' \ + "${S_BASE}"/dist/configure)" + sed -r -i \ + -e "/^DB_RELEASE_DATE=/s~=.*~='${REAL_DB_RELEASE_DATE}'~g" \ + "${S_BASE}"/dist/RELEASE || die + + # Include the SLOT for Java JAR files + # This supersedes the unused jarlocation patches. + sed -r -i \ + -e '/jarfile=.*\.jar$/s,(.jar$),-$(LIBVERSION)\1,g' \ + "${S_BASE}"/dist/Makefile.in || die + + cd "${S_BASE}"/dist || die + rm -f aclocal/libtool.m4 + sed -i \ + -e '/AC_PROG_LIBTOOL$/aLT_OUTPUT' \ + configure.ac || die + sed -i \ + -e '/^AC_PATH_TOOL/s/ sh, none/ bash, none/' \ + aclocal/programs.m4 || die + AT_M4DIR="aclocal aclocal_java" eautoreconf + # Upstream sucks - they do autoconf and THEN replace the version variables. + . ./RELEASE + for v in \ + DB_VERSION_{FAMILY,LETTER,RELEASE,MAJOR,MINOR} \ + DB_VERSION_{PATCH,FULL,UNIQUE_NAME,STRING,FULL_STRING} \ + DB_VERSION \ + DB_RELEASE_DATE ; do + local ev="__EDIT_${v}__" + sed -i -e "s/${ev}/${!v}/g" configure || die + done + + # This is a false positive skip in the tests as the test-reviewer code + # looks for 'Skipping\s' + sed -i \ + -e '/db_repsite/s,Skipping:,Skipping,g' \ + "${S_BASE}"/test/tcl/reputils.tcl || die +} + +multilib_src_configure() { + # sql_compat will cause a collision with sqlite3 + # --enable-sql_compat + # Don't --enable-sql* because we don't want to use bundled sqlite. + # See Gentoo bug #605688 + local myeconfargs=( + --enable-compat185 + --enable-dbm + --enable-o_direct + # Requires openssl-1.0 + --with-repmgr-ssl=no + --without-uniquename + --disable-sql + --disable-sql_codegen + --disable-sql_compat + $([[ ${ABI} == arm ]] && echo --with-mutex=ARM/gcc-assembly) + $([[ ${ABI} == amd64 ]] && echo --with-mutex=x86/gcc-assembly) + $(use_enable cxx) + $(use_enable cxx stl) + $(multilib_native_use_enable java) + $(use_enable test) + ) + + tc-ld-force-bfd #470634 #729510 + + # compilation with -O0 fails on amd64, see bug #171231 + if [[ ${ABI} == amd64 ]]; then + local CFLAGS=${CFLAGS} CXXFLAGS=${CXXFLAGS} + replace-flags -O0 -O2 + is-flagq -O[s123] || append-flags -O2 + fi + + # Add linker versions to the symbols. Easier to do, and safer than header file + # mumbo jumbo. + if use userland_GNU ; then + append-ldflags -Wl,--default-symver + fi + + # use `set` here since the java opts will contain whitespace + if multilib_is_native_abi && use java ; then + myconf+=( + --with-java-prefix="${JAVA_HOME}" + --with-javac-flags="$(java-pkg_javac-args)" + ) + fi + + # Bug #270851: test needs TCL support + if use tcl || use test ; then + myeconfargs+=( + --enable-tcl + --with-tcl="${EPREFIX}/usr/$(get_libdir)" + ) + else + myeconfargs+=(--disable-tcl ) + fi + + ECONF_SOURCE="${S_BASE}"/dist \ + STRIP="true" \ + econf "${myeconfargs[@]}" +} + +multilib_src_install() { + emake install DESTDIR="${D}" + + db_src_install_headerslot + + db_src_install_usrlibcleanup + + if multilib_is_native_abi && use java; then + java-pkg_regso "${ED%/}"/usr/"$(get_libdir)"/libdb_java*.so + java-pkg_dojar "${ED%/}"/usr/"$(get_libdir)"/*.jar + rm -f "${ED%/}"/usr/"$(get_libdir)"/*.jar + fi +} + +multilib_src_install_all() { + db_src_install_usrbinslot + + db_src_install_doc + + dodir /usr/sbin + # This file is not always built, and no longer exists as of db-4.8 + if [[ -f "${ED%/}"/usr/bin/berkeley_db_svc ]] ; then + mv "${ED%/}"/usr/bin/berkeley_db_svc \ + "${ED%/}"/usr/sbin/berkeley_db"${SLOT/./}"_svc || die + fi +} + +pkg_postinst() { + multilib_foreach_abi db_fix_so +} + +pkg_postrm() { + multilib_foreach_abi db_fix_so +} + +src_test() { + # db_repsite is impossible to build, as upstream strips those sources. + # db_repsite is used directly in the setup_site_prog, + # setup_site_prog is called from open_site_prog + # which is called only from tests in the multi_repmgr group. + #sed -ri \ + # -e '/set subs/s,multi_repmgr,,g' \ + # "${S_BASE}/test/testparams.tcl" + sed -ri \ + -e '/multi_repmgr/d' \ + "${S_BASE}/test/tcl/test.tcl" || die + + # This is the only failure in 5.2.28 so far, and looks like a false positive. + # Repmgr018 (btree): Test of repmgr stats. + # Repmgr018.a: Start a master. + # Repmgr018.b: Start a client. + # Repmgr018.c: Run some transactions at master. + # Rep_test: btree 20 key/data pairs starting at 0 + # Rep_test.a: put/get loop + # FAIL:07:05:59 (00:00:00) perm_no_failed_stat: expected 0, got 1 + sed -ri \ + -e '/set parms.*repmgr018/d' \ + -e 's/repmgr018//g' \ + "${S_BASE}/test/tcl/test.tcl" || die + + multilib-minimal_src_test +} + +multilib_src_test() { + multilib_is_native_abi || return + + S=${BUILD_DIR} db_src_test +} diff --git a/sys-libs/db/db-18.1.32.ebuild b/sys-libs/db/db-18.1.32.ebuild deleted file mode 100644 index bc3dafe46b95..000000000000 --- a/sys-libs/db/db-18.1.32.ebuild +++ /dev/null @@ -1,247 +0,0 @@ -# Copyright 1999-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=6 -inherit db flag-o-matic java-pkg-opt-2 autotools multilib multilib-minimal eapi7-ver toolchain-funcs - -#Number of official patches -#PATCHNO=`echo ${PV}|sed -e "s,\(.*_p\)\([0-9]*\),\2,"` -PATCHNO=${PV/*.*.*_p} -if [[ ${PATCHNO} == "${PV}" ]] ; then - MY_PV=${PV} - MY_P=${P} - PATCHNO=0 -else - MY_PV=${PV/_p${PATCHNO}} - MY_P=${PN}-${MY_PV} -fi - -RESTRICT="!test? ( test )" - -S_BASE="${WORKDIR}/${MY_P}" -S="${S_BASE}/dist" -DESCRIPTION="Oracle Berkeley DB" -HOMEPAGE="http://www.oracle.com/technetwork/database/database-technologies/berkeleydb/overview/index.html" -SRC_URI="https://download.oracle.com/otn/berkeley-db/${MY_P}.tar.gz - mirror://gentoo/${MY_P}.tar.gz" -for (( i=1 ; i<=${PATCHNO} ; i++ )) ; do - SRC_URI+=" http://www.oracle.com/technology/products/berkeley-db/db/update/${MY_PV}/patch.${MY_PV}.${i}" -done - -LICENSE="AGPL-3" -SLOT="$(ver_cut 1-2)" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~ppc ~ppc64 ~s390 ~sparc ~x86" -IUSE="doc java cxx tcl test" - -REQUIRED_USE="test? ( tcl )" - -# the entire testsuite needs the TCL functionality -DEPEND="tcl? ( >=dev-lang/tcl-8.5.15-r1:0=[${MULTILIB_USEDEP}] ) - test? ( >=dev-lang/tcl-8.5.15-r1:0=[${MULTILIB_USEDEP}] ) - java? ( >=virtual/jdk-1.5 ) - >=sys-devel/binutils-2.16.1" -RDEPEND="tcl? ( >=dev-lang/tcl-8.5.15-r1:0=[${MULTILIB_USEDEP}] ) - java? ( >=virtual/jre-1.5 )" - -MULTILIB_WRAPPED_HEADERS=( - /usr/include/db$(ver_cut 1-2)/db.h -) - -PATCHES=( - # bug #510506 - "${FILESDIR}"/${PN}-4.8.24-java-manifest-location.patch - - # use the includes from the prefix - "${FILESDIR}"/${PN}-6.2.32-jni-check-prefix-first.patch - "${FILESDIR}"/${PN}-4.2-listen-to-java-options.patch - - # sqlite configure call has an extra leading .. - # upstreamed:5.2.36, missing in 5.3.x/6.x - # still needs to be patched in 6.0.20 - "${FILESDIR}"/${PN}-18.1.25-sqlite-configure-path.patch - - # The upstream testsuite copies .lib and the binaries for each parallel test - # core, ~300MB each. This patch uses links instead, saves a lot of space. - "${FILESDIR}"/${PN}-18.1.25-test-link.patch -) - -src_prepare() { - cd "${WORKDIR}"/"${MY_P}" - for (( i=1 ; i<=${PATCHNO} ; i++ )) - do - eapply "${DISTDIR}"/patch."${MY_PV}"."${i}" - done - - default - - # Upstream release script grabs the dates when the script was run, so lets - # end-run them to keep the date the same. - export REAL_DB_RELEASE_DATE="$(awk \ - '/^DB_VERSION_STRING=/{ gsub(".*\\(|\\).*","",$0); print $0; }' \ - "${S_BASE}"/dist/configure)" - sed -r -i \ - -e "/^DB_RELEASE_DATE=/s~=.*~='${REAL_DB_RELEASE_DATE}'~g" \ - "${S_BASE}"/dist/RELEASE || die - - # Include the SLOT for Java JAR files - # This supersedes the unused jarlocation patches. - sed -r -i \ - -e '/jarfile=.*\.jar$/s,(.jar$),-$(LIBVERSION)\1,g' \ - "${S_BASE}"/dist/Makefile.in || die - - cd "${S_BASE}"/dist || die - rm -f aclocal/libtool.m4 - sed -i \ - -e '/AC_PROG_LIBTOOL$/aLT_OUTPUT' \ - configure.ac || die - sed -i \ - -e '/^AC_PATH_TOOL/s/ sh, none/ bash, none/' \ - aclocal/programs.m4 || die - AT_M4DIR="aclocal aclocal_java" eautoreconf - # Upstream sucks - they do autoconf and THEN replace the version variables. - . ./RELEASE - for v in \ - DB_VERSION_{FAMILY,LETTER,RELEASE,MAJOR,MINOR} \ - DB_VERSION_{PATCH,FULL,UNIQUE_NAME,STRING,FULL_STRING} \ - DB_VERSION \ - DB_RELEASE_DATE ; do - local ev="__EDIT_${v}__" - sed -i -e "s/${ev}/${!v}/g" configure || die - done - - # This is a false positive skip in the tests as the test-reviewer code - # looks for 'Skipping\s' - sed -i \ - -e '/db_repsite/s,Skipping:,Skipping,g' \ - "${S_BASE}"/test/tcl/reputils.tcl || die -} - -multilib_src_configure() { - # sql_compat will cause a collision with sqlite3 - # --enable-sql_compat - # Don't --enable-sql* because we don't want to use bundled sqlite. - # See Gentoo bug #605688 - local myeconfargs=( - --enable-compat185 - --enable-dbm - --enable-o_direct - # Requires openssl-1.0 - --with-repmgr-ssl=no - --without-uniquename - --disable-sql - --disable-sql_codegen - --disable-sql_compat - $([[ ${ABI} == arm ]] && echo --with-mutex=ARM/gcc-assembly) - $([[ ${ABI} == amd64 ]] && echo --with-mutex=x86/gcc-assembly) - $(use_enable cxx) - $(use_enable cxx stl) - $(multilib_native_use_enable java) - $(use_enable test) - ) - - tc-ld-force-bfd #470634 #729510 - - # compilation with -O0 fails on amd64, see bug #171231 - if [[ ${ABI} == amd64 ]]; then - local CFLAGS=${CFLAGS} CXXFLAGS=${CXXFLAGS} - replace-flags -O0 -O2 - is-flagq -O[s123] || append-flags -O2 - fi - - # Add linker versions to the symbols. Easier to do, and safer than header file - # mumbo jumbo. - if use userland_GNU ; then - append-ldflags -Wl,--default-symver - fi - - # use `set` here since the java opts will contain whitespace - if multilib_is_native_abi && use java ; then - myconf+=( - --with-java-prefix="${JAVA_HOME}" - --with-javac-flags="$(java-pkg_javac-args)" - ) - fi - - # Bug #270851: test needs TCL support - if use tcl || use test ; then - myeconfargs+=( - --enable-tcl - --with-tcl="${EPREFIX}/usr/$(get_libdir)" - ) - else - myeconfargs+=(--disable-tcl ) - fi - - ECONF_SOURCE="${S_BASE}"/dist \ - STRIP="true" \ - econf "${myeconfargs[@]}" -} - -multilib_src_install() { - emake install DESTDIR="${D}" - - db_src_install_headerslot - - db_src_install_usrlibcleanup - - if multilib_is_native_abi && use java; then - java-pkg_regso "${ED%/}"/usr/"$(get_libdir)"/libdb_java*.so - java-pkg_dojar "${ED%/}"/usr/"$(get_libdir)"/*.jar - rm -f "${ED%/}"/usr/"$(get_libdir)"/*.jar - fi -} - -multilib_src_install_all() { - db_src_install_usrbinslot - - db_src_install_doc - - dodir /usr/sbin - # This file is not always built, and no longer exists as of db-4.8 - if [[ -f "${ED%/}"/usr/bin/berkeley_db_svc ]] ; then - mv "${ED%/}"/usr/bin/berkeley_db_svc \ - "${ED%/}"/usr/sbin/berkeley_db"${SLOT/./}"_svc || die - fi -} - -pkg_postinst() { - multilib_foreach_abi db_fix_so -} - -pkg_postrm() { - multilib_foreach_abi db_fix_so -} - -src_test() { - # db_repsite is impossible to build, as upstream strips those sources. - # db_repsite is used directly in the setup_site_prog, - # setup_site_prog is called from open_site_prog - # which is called only from tests in the multi_repmgr group. - #sed -ri \ - # -e '/set subs/s,multi_repmgr,,g' \ - # "${S_BASE}/test/testparams.tcl" - sed -ri \ - -e '/multi_repmgr/d' \ - "${S_BASE}/test/tcl/test.tcl" || die - - # This is the only failure in 5.2.28 so far, and looks like a false positive. - # Repmgr018 (btree): Test of repmgr stats. - # Repmgr018.a: Start a master. - # Repmgr018.b: Start a client. - # Repmgr018.c: Run some transactions at master. - # Rep_test: btree 20 key/data pairs starting at 0 - # Rep_test.a: put/get loop - # FAIL:07:05:59 (00:00:00) perm_no_failed_stat: expected 0, got 1 - sed -ri \ - -e '/set parms.*repmgr018/d' \ - -e 's/repmgr018//g' \ - "${S_BASE}/test/tcl/test.tcl" || die - - multilib-minimal_src_test -} - -multilib_src_test() { - multilib_is_native_abi || return - - S=${BUILD_DIR} db_src_test -} diff --git a/sys-libs/db/db-18.1.40-r1.ebuild b/sys-libs/db/db-18.1.40-r1.ebuild new file mode 100644 index 000000000000..0ec531491511 --- /dev/null +++ b/sys-libs/db/db-18.1.40-r1.ebuild @@ -0,0 +1,245 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 +inherit db flag-o-matic java-pkg-opt-2 autotools multilib multilib-minimal eapi7-ver toolchain-funcs + +#Number of official patches +#PATCHNO=`echo ${PV}|sed -e "s,\(.*_p\)\([0-9]*\),\2,"` +PATCHNO=${PV/*.*.*_p} +if [[ ${PATCHNO} == "${PV}" ]] ; then + MY_PV=${PV} + MY_P=${P} + PATCHNO=0 +else + MY_PV=${PV/_p${PATCHNO}} + MY_P=${PN}-${MY_PV} +fi + +RESTRICT="fetch + !test? ( test )" + +S_BASE="${WORKDIR}/${MY_P}" +S="${S_BASE}/dist" +DESCRIPTION="Oracle Berkeley DB" +HOMEPAGE="http://www.oracle.com/technetwork/database/database-technologies/berkeleydb/overview/index.html" +SRC_URI="https://download.oracle.com/otn/berkeley-db/${MY_P}.tar.gz" +for (( i=1 ; i<=${PATCHNO} ; i++ )) ; do + SRC_URI+=" http://www.oracle.com/technology/products/berkeley-db/db/update/${MY_PV}/patch.${MY_PV}.${i}" +done + +LICENSE="AGPL-3" +SLOT="$(ver_cut 1-2)" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" + +IUSE="doc java cxx tcl test" + +REQUIRED_USE="test? ( tcl )" + +# the entire testsuite needs the TCL functionality +DEPEND="tcl? ( >=dev-lang/tcl-8.5.15-r1:0=[${MULTILIB_USEDEP}] ) + test? ( >=dev-lang/tcl-8.5.15-r1:0=[${MULTILIB_USEDEP}] ) + java? ( >=virtual/jdk-1.8 ) + >=sys-devel/binutils-2.16.1" +RDEPEND="tcl? ( >=dev-lang/tcl-8.5.15-r1:0=[${MULTILIB_USEDEP}] ) + java? ( >=virtual/jre-1.8 )" + +MULTILIB_WRAPPED_HEADERS=( + /usr/include/db$(ver_cut 1-2)/db.h +) + +PATCHES=( + # bug #510506 + "${FILESDIR}"/${PN}-4.8.24-java-manifest-location.patch + + # use the includes from the prefix + "${FILESDIR}"/${PN}-6.2.32-jni-check-prefix-first.patch + "${FILESDIR}"/${PN}-4.2-listen-to-java-options.patch + + # The upstream testsuite copies .lib and the binaries for each parallel test + # core, ~300MB each. This patch uses links instead, saves a lot of space. + "${FILESDIR}"/${PN}-18.1.25-test-link.patch + + "${FILESDIR}"/${PN}-18.1.40-fix-docs.patch +) + +src_prepare() { + cd "${WORKDIR}"/"${MY_P}" + for (( i=1 ; i<=${PATCHNO} ; i++ )) + do + eapply "${DISTDIR}"/patch."${MY_PV}"."${i}" + done + + default + + # Upstream release script grabs the dates when the script was run, so lets + # end-run them to keep the date the same. + export REAL_DB_RELEASE_DATE="$(awk \ + '/^DB_VERSION_STRING=/{ gsub(".*\\(|\\).*","",$0); print $0; }' \ + "${S_BASE}"/dist/configure)" + sed -r -i \ + -e "/^DB_RELEASE_DATE=/s~=.*~='${REAL_DB_RELEASE_DATE}'~g" \ + "${S_BASE}"/dist/RELEASE || die + + # Include the SLOT for Java JAR files + # This supersedes the unused jarlocation patches. + sed -r -i \ + -e '/jarfile=.*\.jar$/s,(.jar$),-$(LIBVERSION)\1,g' \ + "${S_BASE}"/dist/Makefile.in || die + + cd "${S_BASE}"/dist || die + rm -f aclocal/libtool.m4 + sed -i \ + -e '/AC_PROG_LIBTOOL$/aLT_OUTPUT' \ + configure.ac || die + sed -i \ + -e '/^AC_PATH_TOOL/s/ sh, none/ bash, none/' \ + aclocal/programs.m4 || die + AT_M4DIR="aclocal aclocal_java" eautoreconf + # Upstream sucks - they do autoconf and THEN replace the version variables. + . ./RELEASE + for v in \ + DB_VERSION_{FAMILY,LETTER,RELEASE,MAJOR,MINOR} \ + DB_VERSION_{PATCH,FULL,UNIQUE_NAME,STRING,FULL_STRING} \ + DB_VERSION \ + DB_RELEASE_DATE ; do + local ev="__EDIT_${v}__" + sed -i -e "s/${ev}/${!v}/g" configure || die + done + + # This is a false positive skip in the tests as the test-reviewer code + # looks for 'Skipping\s' + sed -i \ + -e '/db_repsite/s,Skipping:,Skipping,g' \ + "${S_BASE}"/test/tcl/reputils.tcl || die +} + +multilib_src_configure() { + # sql_compat will cause a collision with sqlite3 + # --enable-sql_compat + # Don't --enable-sql* because we don't want to use bundled sqlite. + # See Gentoo bug #605688 + local myeconfargs=( + --enable-compat185 + --enable-dbm + --enable-o_direct + # Requires openssl-1.0 + --with-repmgr-ssl=no + --without-uniquename + --disable-sql + --disable-sql_codegen + --disable-sql_compat + $([[ ${ABI} == arm ]] && echo --with-mutex=ARM/gcc-assembly) + $([[ ${ABI} == amd64 ]] && echo --with-mutex=x86/gcc-assembly) + $(use_enable cxx) + $(use_enable cxx stl) + $(multilib_native_use_enable java) + $(use_enable test) + ) + + tc-ld-force-bfd #470634 #729510 + + # compilation with -O0 fails on amd64, see bug #171231 + if [[ ${ABI} == amd64 ]]; then + local CFLAGS=${CFLAGS} CXXFLAGS=${CXXFLAGS} + replace-flags -O0 -O2 + is-flagq -O[s123] || append-flags -O2 + fi + + # Add linker versions to the symbols. Easier to do, and safer than header file + # mumbo jumbo. + if use userland_GNU ; then + append-ldflags -Wl,--default-symver + fi + + # use `set` here since the java opts will contain whitespace + if multilib_is_native_abi && use java ; then + myconf+=( + --with-java-prefix="${JAVA_HOME}" + --with-javac-flags="$(java-pkg_javac-args)" + ) + fi + + # Bug #270851: test needs TCL support + if use tcl || use test ; then + myeconfargs+=( + --enable-tcl + --with-tcl="${EPREFIX}/usr/$(get_libdir)" + ) + else + myeconfargs+=(--disable-tcl ) + fi + + ECONF_SOURCE="${S_BASE}"/dist \ + STRIP="true" \ + econf "${myeconfargs[@]}" +} + +multilib_src_install() { + emake install DESTDIR="${D}" + + db_src_install_headerslot + + db_src_install_usrlibcleanup + + if multilib_is_native_abi && use java; then + java-pkg_regso "${ED%/}"/usr/"$(get_libdir)"/libdb_java*.so + java-pkg_dojar "${ED%/}"/usr/"$(get_libdir)"/*.jar + rm -f "${ED%/}"/usr/"$(get_libdir)"/*.jar + fi +} + +multilib_src_install_all() { + db_src_install_usrbinslot + + db_src_install_doc + + dodir /usr/sbin + # This file is not always built, and no longer exists as of db-4.8 + if [[ -f "${ED%/}"/usr/bin/berkeley_db_svc ]] ; then + mv "${ED%/}"/usr/bin/berkeley_db_svc \ + "${ED%/}"/usr/sbin/berkeley_db"${SLOT/./}"_svc || die + fi +} + +pkg_postinst() { + multilib_foreach_abi db_fix_so +} + +pkg_postrm() { + multilib_foreach_abi db_fix_so +} + +src_test() { + # db_repsite is impossible to build, as upstream strips those sources. + # db_repsite is used directly in the setup_site_prog, + # setup_site_prog is called from open_site_prog + # which is called only from tests in the multi_repmgr group. + #sed -ri \ + # -e '/set subs/s,multi_repmgr,,g' \ + # "${S_BASE}/test/testparams.tcl" + sed -ri \ + -e '/multi_repmgr/d' \ + "${S_BASE}/test/tcl/test.tcl" || die + + # This is the only failure in 5.2.28 so far, and looks like a false positive. + # Repmgr018 (btree): Test of repmgr stats. + # Repmgr018.a: Start a master. + # Repmgr018.b: Start a client. + # Repmgr018.c: Run some transactions at master. + # Rep_test: btree 20 key/data pairs starting at 0 + # Rep_test.a: put/get loop + # FAIL:07:05:59 (00:00:00) perm_no_failed_stat: expected 0, got 1 + sed -ri \ + -e '/set parms.*repmgr018/d' \ + -e 's/repmgr018//g' \ + "${S_BASE}/test/tcl/test.tcl" || die + + multilib-minimal_src_test +} + +multilib_src_test() { + multilib_is_native_abi || return + + S=${BUILD_DIR} db_src_test +} diff --git a/sys-libs/db/db-18.1.40.ebuild b/sys-libs/db/db-18.1.40.ebuild deleted file mode 100644 index 6b02ee829b53..000000000000 --- a/sys-libs/db/db-18.1.40.ebuild +++ /dev/null @@ -1,245 +0,0 @@ -# Copyright 1999-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=6 -inherit db flag-o-matic java-pkg-opt-2 autotools multilib multilib-minimal eapi7-ver toolchain-funcs - -#Number of official patches -#PATCHNO=`echo ${PV}|sed -e "s,\(.*_p\)\([0-9]*\),\2,"` -PATCHNO=${PV/*.*.*_p} -if [[ ${PATCHNO} == "${PV}" ]] ; then - MY_PV=${PV} - MY_P=${P} - PATCHNO=0 -else - MY_PV=${PV/_p${PATCHNO}} - MY_P=${PN}-${MY_PV} -fi - -RESTRICT="fetch - !test? ( test )" - -S_BASE="${WORKDIR}/${MY_P}" -S="${S_BASE}/dist" -DESCRIPTION="Oracle Berkeley DB" -HOMEPAGE="http://www.oracle.com/technetwork/database/database-technologies/berkeleydb/overview/index.html" -SRC_URI="https://download.oracle.com/otn/berkeley-db/${MY_P}.tar.gz" -for (( i=1 ; i<=${PATCHNO} ; i++ )) ; do - SRC_URI+=" http://www.oracle.com/technology/products/berkeley-db/db/update/${MY_PV}/patch.${MY_PV}.${i}" -done - -LICENSE="AGPL-3" -SLOT="$(ver_cut 1-2)" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" - -IUSE="doc java cxx tcl test" - -REQUIRED_USE="test? ( tcl )" - -# the entire testsuite needs the TCL functionality -DEPEND="tcl? ( >=dev-lang/tcl-8.5.15-r1:0=[${MULTILIB_USEDEP}] ) - test? ( >=dev-lang/tcl-8.5.15-r1:0=[${MULTILIB_USEDEP}] ) - java? ( >=virtual/jdk-1.5 ) - >=sys-devel/binutils-2.16.1" -RDEPEND="tcl? ( >=dev-lang/tcl-8.5.15-r1:0=[${MULTILIB_USEDEP}] ) - java? ( >=virtual/jre-1.5 )" - -MULTILIB_WRAPPED_HEADERS=( - /usr/include/db$(ver_cut 1-2)/db.h -) - -PATCHES=( - # bug #510506 - "${FILESDIR}"/${PN}-4.8.24-java-manifest-location.patch - - # use the includes from the prefix - "${FILESDIR}"/${PN}-6.2.32-jni-check-prefix-first.patch - "${FILESDIR}"/${PN}-4.2-listen-to-java-options.patch - - # The upstream testsuite copies .lib and the binaries for each parallel test - # core, ~300MB each. This patch uses links instead, saves a lot of space. - "${FILESDIR}"/${PN}-18.1.25-test-link.patch - - "${FILESDIR}"/${PN}-18.1.40-fix-docs.patch -) - -src_prepare() { - cd "${WORKDIR}"/"${MY_P}" - for (( i=1 ; i<=${PATCHNO} ; i++ )) - do - eapply "${DISTDIR}"/patch."${MY_PV}"."${i}" - done - - default - - # Upstream release script grabs the dates when the script was run, so lets - # end-run them to keep the date the same. - export REAL_DB_RELEASE_DATE="$(awk \ - '/^DB_VERSION_STRING=/{ gsub(".*\\(|\\).*","",$0); print $0; }' \ - "${S_BASE}"/dist/configure)" - sed -r -i \ - -e "/^DB_RELEASE_DATE=/s~=.*~='${REAL_DB_RELEASE_DATE}'~g" \ - "${S_BASE}"/dist/RELEASE || die - - # Include the SLOT for Java JAR files - # This supersedes the unused jarlocation patches. - sed -r -i \ - -e '/jarfile=.*\.jar$/s,(.jar$),-$(LIBVERSION)\1,g' \ - "${S_BASE}"/dist/Makefile.in || die - - cd "${S_BASE}"/dist || die - rm -f aclocal/libtool.m4 - sed -i \ - -e '/AC_PROG_LIBTOOL$/aLT_OUTPUT' \ - configure.ac || die - sed -i \ - -e '/^AC_PATH_TOOL/s/ sh, none/ bash, none/' \ - aclocal/programs.m4 || die - AT_M4DIR="aclocal aclocal_java" eautoreconf - # Upstream sucks - they do autoconf and THEN replace the version variables. - . ./RELEASE - for v in \ - DB_VERSION_{FAMILY,LETTER,RELEASE,MAJOR,MINOR} \ - DB_VERSION_{PATCH,FULL,UNIQUE_NAME,STRING,FULL_STRING} \ - DB_VERSION \ - DB_RELEASE_DATE ; do - local ev="__EDIT_${v}__" - sed -i -e "s/${ev}/${!v}/g" configure || die - done - - # This is a false positive skip in the tests as the test-reviewer code - # looks for 'Skipping\s' - sed -i \ - -e '/db_repsite/s,Skipping:,Skipping,g' \ - "${S_BASE}"/test/tcl/reputils.tcl || die -} - -multilib_src_configure() { - # sql_compat will cause a collision with sqlite3 - # --enable-sql_compat - # Don't --enable-sql* because we don't want to use bundled sqlite. - # See Gentoo bug #605688 - local myeconfargs=( - --enable-compat185 - --enable-dbm - --enable-o_direct - # Requires openssl-1.0 - --with-repmgr-ssl=no - --without-uniquename - --disable-sql - --disable-sql_codegen - --disable-sql_compat - $([[ ${ABI} == arm ]] && echo --with-mutex=ARM/gcc-assembly) - $([[ ${ABI} == amd64 ]] && echo --with-mutex=x86/gcc-assembly) - $(use_enable cxx) - $(use_enable cxx stl) - $(multilib_native_use_enable java) - $(use_enable test) - ) - - tc-ld-force-bfd #470634 #729510 - - # compilation with -O0 fails on amd64, see bug #171231 - if [[ ${ABI} == amd64 ]]; then - local CFLAGS=${CFLAGS} CXXFLAGS=${CXXFLAGS} - replace-flags -O0 -O2 - is-flagq -O[s123] || append-flags -O2 - fi - - # Add linker versions to the symbols. Easier to do, and safer than header file - # mumbo jumbo. - if use userland_GNU ; then - append-ldflags -Wl,--default-symver - fi - - # use `set` here since the java opts will contain whitespace - if multilib_is_native_abi && use java ; then - myconf+=( - --with-java-prefix="${JAVA_HOME}" - --with-javac-flags="$(java-pkg_javac-args)" - ) - fi - - # Bug #270851: test needs TCL support - if use tcl || use test ; then - myeconfargs+=( - --enable-tcl - --with-tcl="${EPREFIX}/usr/$(get_libdir)" - ) - else - myeconfargs+=(--disable-tcl ) - fi - - ECONF_SOURCE="${S_BASE}"/dist \ - STRIP="true" \ - econf "${myeconfargs[@]}" -} - -multilib_src_install() { - emake install DESTDIR="${D}" - - db_src_install_headerslot - - db_src_install_usrlibcleanup - - if multilib_is_native_abi && use java; then - java-pkg_regso "${ED%/}"/usr/"$(get_libdir)"/libdb_java*.so - java-pkg_dojar "${ED%/}"/usr/"$(get_libdir)"/*.jar - rm -f "${ED%/}"/usr/"$(get_libdir)"/*.jar - fi -} - -multilib_src_install_all() { - db_src_install_usrbinslot - - db_src_install_doc - - dodir /usr/sbin - # This file is not always built, and no longer exists as of db-4.8 - if [[ -f "${ED%/}"/usr/bin/berkeley_db_svc ]] ; then - mv "${ED%/}"/usr/bin/berkeley_db_svc \ - "${ED%/}"/usr/sbin/berkeley_db"${SLOT/./}"_svc || die - fi -} - -pkg_postinst() { - multilib_foreach_abi db_fix_so -} - -pkg_postrm() { - multilib_foreach_abi db_fix_so -} - -src_test() { - # db_repsite is impossible to build, as upstream strips those sources. - # db_repsite is used directly in the setup_site_prog, - # setup_site_prog is called from open_site_prog - # which is called only from tests in the multi_repmgr group. - #sed -ri \ - # -e '/set subs/s,multi_repmgr,,g' \ - # "${S_BASE}/test/testparams.tcl" - sed -ri \ - -e '/multi_repmgr/d' \ - "${S_BASE}/test/tcl/test.tcl" || die - - # This is the only failure in 5.2.28 so far, and looks like a false positive. - # Repmgr018 (btree): Test of repmgr stats. - # Repmgr018.a: Start a master. - # Repmgr018.b: Start a client. - # Repmgr018.c: Run some transactions at master. - # Rep_test: btree 20 key/data pairs starting at 0 - # Rep_test.a: put/get loop - # FAIL:07:05:59 (00:00:00) perm_no_failed_stat: expected 0, got 1 - sed -ri \ - -e '/set parms.*repmgr018/d' \ - -e 's/repmgr018//g' \ - "${S_BASE}/test/tcl/test.tcl" || die - - multilib-minimal_src_test -} - -multilib_src_test() { - multilib_is_native_abi || return - - S=${BUILD_DIR} db_src_test -} diff --git a/sys-libs/db/db-3.2.9_p2-r1.ebuild b/sys-libs/db/db-3.2.9_p2-r1.ebuild deleted file mode 100644 index 09e4131d8b99..000000000000 --- a/sys-libs/db/db-3.2.9_p2-r1.ebuild +++ /dev/null @@ -1,196 +0,0 @@ -# Copyright 1999-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -inherit db flag-o-matic multilib - -#Number of official patches -#PATCHNO=`echo ${PV}|sed -e "s,\(.*_p\)\([0-9]*\),\2,"` -PATCHNO="${PV/*.*.*_p}" -if [[ ${PATCHNO} == "${PV}" ]] ; then - MY_PV="${PV}" - MY_P="${P}" - PATCHNO=0 -else - MY_PV="${PV/_p${PATCHNO}}" - MY_P="${PN}-${MY_PV}" -fi - -DESCRIPTION="Berkeley DB for transaction support in MySQL" -HOMEPAGE="http://www.oracle.com/technetwork/database/database-technologies/berkeleydb/overview/index.html" -SRC_URI="http://download.oracle.com/berkeley-db/${MY_P}.tar.gz" -for (( i=1 ; i<=${PATCHNO} ; i++ )) ; do - export SRC_URI="${SRC_URI} http://www.oracle.com/technology/products/berkeley-db/db/update/${MY_PV}/patch.${MY_PV}.${i}" -done - -LICENSE="Sleepycat" -SLOT="3" -# This ebuild is to be the compatibility ebuild for when db4 is put -# in the tree. -KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~s390 sparc x86" -IUSE="doc" -RESTRICT="!test? ( test )" - -DEPEND="${RDEPEND} - =sys-libs/db-1.85*" - -S="${WORKDIR}/${MY_P}" - -PATCHES=( - # Get db to link libdb* to correct dependencies ... for example if we use - # NPTL or NGPT, db detects usable mutexes, and should link against - # libpthread, but does not do so ... - # (23 Feb 2003) - "${FILESDIR}"/${MY_P}-fix-dep-link.patch - - "${FILESDIR}"/${MY_P}-gcc43.patch -) - -pkg_setup() { - # This doesn't build without exceptions - replace-flags -fno-exceptions -fexceptions -} - -src_prepare() { - for (( i=1 ; i<=${PATCHNO} ; i++ )) - do - eapply -p0 "${DISTDIR}"/patch."${MY_PV}"."${i}" - done - - default - - # We should get dump185 to link against system db1 .. - # (23 Feb 2003) - mv dist/Makefile.in{,.orig} || die - sed \ - -e 's:DB185INC=:DB185INC= -I/usr/include/db1:' \ - -e 's:DB185LIB=:DB185LIB= -ldb1:' \ - dist/Makefile.in.orig \ - > dist/Makefile.in || die - - cd dist || die - # remove config.guess else we have problems with gcc-3.2 - rm config.guess || die - sed -i "s,\(-D_GNU_SOURCE\),\1 ${CFLAGS}," configure || die -} - -src_configure() { - local conf=( - --host=${CHOST} - --build=${CHOST} - --enable-cxx - --enable-compat185 - --enable-dump185 - ) - - local conf_shared=( - --disable-static - --enable-shared - - # --enable-rpc DOES NOT BUILD - # Robin H. Johnson (18 Oct 2003) - --enable-dynamic - ) - - local conf_static=( - --disable-shared - --enable-static - ) - - # TCL support is also broken - # Robin H. Johnson (18 Oct 2003) - # conf_shared="${conf_shared} - # `use_enable tcl tcl` - # `use_with tcl tcl /usr/$(get_libdir)`" - - # NOTE: we should not build both shared and static versions - # of the libraries in the same build root! - - einfo "Configuring ${P} (static)..." - mkdir build-static || die - pushd build-static &>/dev/null || die - strip="${EPREFIX}"/bin/true \ - ECONF_SOURCE="${S}"/dist \ - econf "${conf[@]}" "${conf_static[@]}" - popd &>/dev/null || die - - einfo "Configuring ${P} (shared)..." - mkdir build-shared || die - pushd build-shared &>/dev/null || die - strip="${EPREFIX}"/bin/true \ - ECONF_SOURCE="${S}"/dist \ - econf "${conf[@]}" "${conf_shared[@]}" - popd &>/dev/null || die -} - -src_compile() { - # Parallel make does not work - MAKEOPTS="${MAKEOPTS} -j1" - - einfo "Building ${P} (static)..." - pushd "${S}"/build-static &>/dev/null || die - emake strip="${EPREFIX}"/bin/true - popd &>/dev/null || die - - einfo "Building ${P} (shared)..." - pushd build-shared &>/dev/null || die - emake strip="${EPREFIX}"/bin/true - popd &>/dev/null || die -} - -src_install() { - pushd build-shared &>/dev/null || die - # build system does not support DESTDIR - emake \ - libdb=libdb-3.2.a \ - libcxx=libcxx_3.2.a \ - DESTDIR="${D}" \ - prefix="${ED}"/usr \ - libdir="${ED}"/usr/$(get_libdir) \ - strip="${EPREFIX}"/bin/true \ - install - popd &>/dev/null || die - - pushd build-static &>/dev/null || die - newlib.a libdb.a libdb-3.2.a - newlib.a libdb_cxx.a libdb_cxx-3.2.a - popd &>/dev/null || die - - db_src_install_headerslot || die "db_src_install_headerslot failed!" - - # this is now done in the db eclass, function db_fix_so and db_src_install_usrlibcleanup - #cd "${D}"/usr/lib - #ln -s libdb-3.2.so libdb.so.3 - - # For some reason, db.so's are *not* readable by group or others, - # resulting in no one but root being able to use them!!! - # This fixes it -- DR 15 Jun 2001 - pushd "${ED}"/usr/$(get_libdir) &>/dev/null || die - chmod go+rx *.so - # The .la's aren't readable either - chmod go+r *.la - popd &>/dev/null || die - - dodoc README - - db_src_install_doc || die "db_src_install_doc failed!" - - db_src_install_usrbinslot || die "db_src_install_usrbinslot failed!" - - db_src_install_usrlibcleanup || die "db_src_install_usrlibcleanup failed!" -} - -pkg_postinst() { - db_fix_so -} - -pkg_postrm() { - db_fix_so -} - -src_test() { - if use test; then - eerror "We'd love to be able to test, but the testsuite is broken in the 3.2.9 series" - fi -} diff --git a/sys-libs/db/db-3.2.9_p2-r2.ebuild b/sys-libs/db/db-3.2.9_p2-r2.ebuild new file mode 100644 index 000000000000..09e4131d8b99 --- /dev/null +++ b/sys-libs/db/db-3.2.9_p2-r2.ebuild @@ -0,0 +1,196 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit db flag-o-matic multilib + +#Number of official patches +#PATCHNO=`echo ${PV}|sed -e "s,\(.*_p\)\([0-9]*\),\2,"` +PATCHNO="${PV/*.*.*_p}" +if [[ ${PATCHNO} == "${PV}" ]] ; then + MY_PV="${PV}" + MY_P="${P}" + PATCHNO=0 +else + MY_PV="${PV/_p${PATCHNO}}" + MY_P="${PN}-${MY_PV}" +fi + +DESCRIPTION="Berkeley DB for transaction support in MySQL" +HOMEPAGE="http://www.oracle.com/technetwork/database/database-technologies/berkeleydb/overview/index.html" +SRC_URI="http://download.oracle.com/berkeley-db/${MY_P}.tar.gz" +for (( i=1 ; i<=${PATCHNO} ; i++ )) ; do + export SRC_URI="${SRC_URI} http://www.oracle.com/technology/products/berkeley-db/db/update/${MY_PV}/patch.${MY_PV}.${i}" +done + +LICENSE="Sleepycat" +SLOT="3" +# This ebuild is to be the compatibility ebuild for when db4 is put +# in the tree. +KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~s390 sparc x86" +IUSE="doc" +RESTRICT="!test? ( test )" + +DEPEND="${RDEPEND} + =sys-libs/db-1.85*" + +S="${WORKDIR}/${MY_P}" + +PATCHES=( + # Get db to link libdb* to correct dependencies ... for example if we use + # NPTL or NGPT, db detects usable mutexes, and should link against + # libpthread, but does not do so ... + # (23 Feb 2003) + "${FILESDIR}"/${MY_P}-fix-dep-link.patch + + "${FILESDIR}"/${MY_P}-gcc43.patch +) + +pkg_setup() { + # This doesn't build without exceptions + replace-flags -fno-exceptions -fexceptions +} + +src_prepare() { + for (( i=1 ; i<=${PATCHNO} ; i++ )) + do + eapply -p0 "${DISTDIR}"/patch."${MY_PV}"."${i}" + done + + default + + # We should get dump185 to link against system db1 .. + # (23 Feb 2003) + mv dist/Makefile.in{,.orig} || die + sed \ + -e 's:DB185INC=:DB185INC= -I/usr/include/db1:' \ + -e 's:DB185LIB=:DB185LIB= -ldb1:' \ + dist/Makefile.in.orig \ + > dist/Makefile.in || die + + cd dist || die + # remove config.guess else we have problems with gcc-3.2 + rm config.guess || die + sed -i "s,\(-D_GNU_SOURCE\),\1 ${CFLAGS}," configure || die +} + +src_configure() { + local conf=( + --host=${CHOST} + --build=${CHOST} + --enable-cxx + --enable-compat185 + --enable-dump185 + ) + + local conf_shared=( + --disable-static + --enable-shared + + # --enable-rpc DOES NOT BUILD + # Robin H. Johnson (18 Oct 2003) + --enable-dynamic + ) + + local conf_static=( + --disable-shared + --enable-static + ) + + # TCL support is also broken + # Robin H. Johnson (18 Oct 2003) + # conf_shared="${conf_shared} + # `use_enable tcl tcl` + # `use_with tcl tcl /usr/$(get_libdir)`" + + # NOTE: we should not build both shared and static versions + # of the libraries in the same build root! + + einfo "Configuring ${P} (static)..." + mkdir build-static || die + pushd build-static &>/dev/null || die + strip="${EPREFIX}"/bin/true \ + ECONF_SOURCE="${S}"/dist \ + econf "${conf[@]}" "${conf_static[@]}" + popd &>/dev/null || die + + einfo "Configuring ${P} (shared)..." + mkdir build-shared || die + pushd build-shared &>/dev/null || die + strip="${EPREFIX}"/bin/true \ + ECONF_SOURCE="${S}"/dist \ + econf "${conf[@]}" "${conf_shared[@]}" + popd &>/dev/null || die +} + +src_compile() { + # Parallel make does not work + MAKEOPTS="${MAKEOPTS} -j1" + + einfo "Building ${P} (static)..." + pushd "${S}"/build-static &>/dev/null || die + emake strip="${EPREFIX}"/bin/true + popd &>/dev/null || die + + einfo "Building ${P} (shared)..." + pushd build-shared &>/dev/null || die + emake strip="${EPREFIX}"/bin/true + popd &>/dev/null || die +} + +src_install() { + pushd build-shared &>/dev/null || die + # build system does not support DESTDIR + emake \ + libdb=libdb-3.2.a \ + libcxx=libcxx_3.2.a \ + DESTDIR="${D}" \ + prefix="${ED}"/usr \ + libdir="${ED}"/usr/$(get_libdir) \ + strip="${EPREFIX}"/bin/true \ + install + popd &>/dev/null || die + + pushd build-static &>/dev/null || die + newlib.a libdb.a libdb-3.2.a + newlib.a libdb_cxx.a libdb_cxx-3.2.a + popd &>/dev/null || die + + db_src_install_headerslot || die "db_src_install_headerslot failed!" + + # this is now done in the db eclass, function db_fix_so and db_src_install_usrlibcleanup + #cd "${D}"/usr/lib + #ln -s libdb-3.2.so libdb.so.3 + + # For some reason, db.so's are *not* readable by group or others, + # resulting in no one but root being able to use them!!! + # This fixes it -- DR 15 Jun 2001 + pushd "${ED}"/usr/$(get_libdir) &>/dev/null || die + chmod go+rx *.so + # The .la's aren't readable either + chmod go+r *.la + popd &>/dev/null || die + + dodoc README + + db_src_install_doc || die "db_src_install_doc failed!" + + db_src_install_usrbinslot || die "db_src_install_usrbinslot failed!" + + db_src_install_usrlibcleanup || die "db_src_install_usrlibcleanup failed!" +} + +pkg_postinst() { + db_fix_so +} + +pkg_postrm() { + db_fix_so +} + +src_test() { + if use test; then + eerror "We'd love to be able to test, but the testsuite is broken in the 3.2.9 series" + fi +} diff --git a/sys-libs/db/db-4.2.52_p5-r3.ebuild b/sys-libs/db/db-4.2.52_p5-r3.ebuild deleted file mode 100644 index e31ffdfadaac..000000000000 --- a/sys-libs/db/db-4.2.52_p5-r3.ebuild +++ /dev/null @@ -1,185 +0,0 @@ -# Copyright 1999-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -inherit autotools db flag-o-matic java-pkg-opt-2 multilib - -#Number of official patches -#PATCHNO=`echo ${PV}|sed -e "s,\(.*_p\)\([0-9]*\),\2,"` -PATCHNO="${PV/*.*.*_p}" -if [[ ${PATCHNO} == "${PV}" ]] ; then - MY_PV="${PV}" - MY_P="${P}" - PATCHNO=0 -else - MY_PV="${PV/_p${PATCHNO}}" - MY_P="${PN}-${MY_PV}" -fi - -S="${WORKDIR}/${MY_P}/build_unix" -DESCRIPTION="Oracle Berkeley DB" -HOMEPAGE="http://www.oracle.com/technetwork/database/database-technologies/berkeleydb/overview/index.html" -SRC_URI="http://download.oracle.com/berkeley-db/${MY_P}.tar.gz" -for (( i=1 ; i<=${PATCHNO} ; i++ )) ; do - export SRC_URI="${SRC_URI} http://www.oracle.com/technology/products/berkeley-db/db/update/${MY_PV}/patch.${MY_PV}.${i}" -done - -LICENSE="Sleepycat" -SLOT="$(ver_cut 1-2)" -KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~s390 sparc x86 ~x64-macos" -IUSE="tcl java doc cxx" -RESTRICT="!test? ( test )" - -DEPEND="tcl? ( >=dev-lang/tcl-8.4 ) - java? ( >=virtual/jdk-1.4 )" -RDEPEND="tcl? ( dev-lang/tcl ) - java? ( >=virtual/jre-1.4 )" - -PATCHES=( - "${FILESDIR}"/"${PN}"-4.2.52_p2-TXN.patch - "${FILESDIR}"/"${PN}"-"${SLOT}"-libtool.patch - - # use the includes from the prefix - "${FILESDIR}"/"${PN}"-"${SLOT}"-jni-check-prefix-first.patch - "${FILESDIR}"/"${PN}"-"${SLOT}"-listen-to-java-options.patch - "${FILESDIR}"/"${PN}"-4.0.14-fix-dep-link.patch -) - -# Required to avoid unpack attempt of patches -src_unpack() { - unpack ${MY_P}.tar.gz -} - -src_prepare() { - pushd "${WORKDIR}/${MY_P}" &>/dev/null || die - for (( i=1 ; i<=${PATCHNO} ; i++ )) - do - eapply -p0 "${DISTDIR}"/patch."${MY_PV}"."${i}" - done - - default - - sed -e "/^DB_RELEASE_DATE=/s/%B %e, %Y/%Y-%m-%d/" \ - -i dist/RELEASE || die - - # Include the SLOT for Java JAR files - # This supersedes the unused jarlocation patches. - sed -r \ - -e '/jarfile=.*\.jar$/s,(.jar$),-$(LIBVERSION)\1,g' \ - -i dist/Makefile.in || die - - # START of 4.5+earlier specific - # Upstream sucks, they normally concat these - local i j - for j in dist/aclocal{,_java} ; do - pushd ${j} &>/dev/null || die - for i in * ; do - ln -s ${i} ${i%.ac}.m4 || die - done - popd &>/dev/null || die - done - # END of 4.5+earlier specific - pushd dist &>/dev/null || die - rm aclocal/libtool.{m4,ac} || die - sed \ - -e '/AC_PROG_LIBTOOL$/aLT_OUTPUT' \ - -i configure.ac || die - sed \ - -e '/^AC_PATH_TOOL/s/ sh, missing_sh/ bash, missing_sh/' \ - -i aclocal/programs.m4 || die - - AT_M4DIR="aclocal aclocal_java" eautoreconf - - # Upstream sucks - they do autoconf and THEN replace the version variables. - . ./RELEASE - sed \ - -e "s/__EDIT_DB_VERSION_MAJOR__/$DB_VERSION_MAJOR/g" \ - -e "s/__EDIT_DB_VERSION_MINOR__/$DB_VERSION_MINOR/g" \ - -e "s/__EDIT_DB_VERSION_PATCH__/$DB_VERSION_PATCH/g" \ - -e "s/__EDIT_DB_VERSION_STRING__/$DB_VERSION_STRING/g" \ - -e "s/__EDIT_DB_VERSION_UNIQUE_NAME__/$DB_VERSION_UNIQUE_NAME/g" \ - -e "s/__EDIT_DB_VERSION__/$DB_VERSION/g" \ - -i configure || die - - popd &>/dev/null || die - popd &>/dev/null || die -} - -src_configure() { - local myconf=( - --enable-compat185 - --with-uniquename - --disable-rpc - --host="${CHOST}" - - $(usex amd64 '--with-mutex=x86/gcc-assembly' '') - $(use_enable cxx) - $(use_enable tcl) - $(usex tcl "--with-tcl=${EPREFIX}/usr/$(get_libdir)" '') #" - $(use_enable java) - ) - - if use java; then - myconf+=( - --with-java-prefix="${JAVA_HOME}" - --with-javac-flags="$(java-pkg_javac-args)" - ) - fi - - # the entire testsuite needs the TCL functionality - if use tcl && use test; then - myconf+=( --enable-test ) - else - myconf+=( --disable-test ) - fi - - ECONF_SOURCE="${S}"/../dist \ - econf "${myconf[@]}" -} - -src_compile() { - # This isn't safe for prefix (Darwin should be .jnilib), but I can't get the - # build system to behave itself, it generates libtool too late. - sed \ - -e 's/-shrext $(SOFLAGS)/-shrext .so $(SOFLAGS)/g' \ - -i Makefile || die - emake -} - -src_install() { - emake \ - DESTDIR="${D}" \ - libdir="${EPREFIX}/usr/$(get_libdir)" \ - strip="${EPREFIX}/bin/strip" \ - install - - db_src_install_usrbinslot - - db_src_install_headerslot - - db_src_install_doc - - db_src_install_usrlibcleanup - - dodir /usr/sbin - # This file is not always built, and no longer exists as of db-4.8 - if [[ -f "${ED}"/usr/bin/berkeley_db_svc ]] ; then - mv "${ED}"/usr/bin/berkeley_db_svc \ - "${ED}"/usr/sbin/berkeley_db"${SLOT/./}"_svc || die - fi - - if use java; then - java-pkg_regso "${ED}"/usr/"$(get_libdir)"/libdb_java*.so - java-pkg_dojar "${ED}"/usr/"$(get_libdir)"/*.jar - rm -f "${ED}"/usr/"$(get_libdir)"/*.jar - fi -} - -pkg_postinst() { - db_fix_so -} - -pkg_postrm() { - db_fix_so -} diff --git a/sys-libs/db/db-4.2.52_p5-r4.ebuild b/sys-libs/db/db-4.2.52_p5-r4.ebuild new file mode 100644 index 000000000000..47066904ed2e --- /dev/null +++ b/sys-libs/db/db-4.2.52_p5-r4.ebuild @@ -0,0 +1,185 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit autotools db flag-o-matic java-pkg-opt-2 multilib + +#Number of official patches +#PATCHNO=`echo ${PV}|sed -e "s,\(.*_p\)\([0-9]*\),\2,"` +PATCHNO="${PV/*.*.*_p}" +if [[ ${PATCHNO} == "${PV}" ]] ; then + MY_PV="${PV}" + MY_P="${P}" + PATCHNO=0 +else + MY_PV="${PV/_p${PATCHNO}}" + MY_P="${PN}-${MY_PV}" +fi + +S="${WORKDIR}/${MY_P}/build_unix" +DESCRIPTION="Oracle Berkeley DB" +HOMEPAGE="http://www.oracle.com/technetwork/database/database-technologies/berkeleydb/overview/index.html" +SRC_URI="http://download.oracle.com/berkeley-db/${MY_P}.tar.gz" +for (( i=1 ; i<=${PATCHNO} ; i++ )) ; do + export SRC_URI="${SRC_URI} http://www.oracle.com/technology/products/berkeley-db/db/update/${MY_PV}/patch.${MY_PV}.${i}" +done + +LICENSE="Sleepycat" +SLOT="$(ver_cut 1-2)" +KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~s390 sparc x86 ~x64-macos" +IUSE="tcl java doc cxx" +RESTRICT="!test? ( test )" + +DEPEND="tcl? ( >=dev-lang/tcl-8.4 ) + java? ( >=virtual/jdk-1.8 )" +RDEPEND="tcl? ( dev-lang/tcl ) + java? ( >=virtual/jre-1.8 )" + +PATCHES=( + "${FILESDIR}"/"${PN}"-4.2.52_p2-TXN.patch + "${FILESDIR}"/"${PN}"-"${SLOT}"-libtool.patch + + # use the includes from the prefix + "${FILESDIR}"/"${PN}"-"${SLOT}"-jni-check-prefix-first.patch + "${FILESDIR}"/"${PN}"-"${SLOT}"-listen-to-java-options.patch + "${FILESDIR}"/"${PN}"-4.0.14-fix-dep-link.patch +) + +# Required to avoid unpack attempt of patches +src_unpack() { + unpack ${MY_P}.tar.gz +} + +src_prepare() { + pushd "${WORKDIR}/${MY_P}" &>/dev/null || die + for (( i=1 ; i<=${PATCHNO} ; i++ )) + do + eapply -p0 "${DISTDIR}"/patch."${MY_PV}"."${i}" + done + + default + + sed -e "/^DB_RELEASE_DATE=/s/%B %e, %Y/%Y-%m-%d/" \ + -i dist/RELEASE || die + + # Include the SLOT for Java JAR files + # This supersedes the unused jarlocation patches. + sed -r \ + -e '/jarfile=.*\.jar$/s,(.jar$),-$(LIBVERSION)\1,g' \ + -i dist/Makefile.in || die + + # START of 4.5+earlier specific + # Upstream sucks, they normally concat these + local i j + for j in dist/aclocal{,_java} ; do + pushd ${j} &>/dev/null || die + for i in * ; do + ln -s ${i} ${i%.ac}.m4 || die + done + popd &>/dev/null || die + done + # END of 4.5+earlier specific + pushd dist &>/dev/null || die + rm aclocal/libtool.{m4,ac} || die + sed \ + -e '/AC_PROG_LIBTOOL$/aLT_OUTPUT' \ + -i configure.ac || die + sed \ + -e '/^AC_PATH_TOOL/s/ sh, missing_sh/ bash, missing_sh/' \ + -i aclocal/programs.m4 || die + + AT_M4DIR="aclocal aclocal_java" eautoreconf + + # Upstream sucks - they do autoconf and THEN replace the version variables. + . ./RELEASE + sed \ + -e "s/__EDIT_DB_VERSION_MAJOR__/$DB_VERSION_MAJOR/g" \ + -e "s/__EDIT_DB_VERSION_MINOR__/$DB_VERSION_MINOR/g" \ + -e "s/__EDIT_DB_VERSION_PATCH__/$DB_VERSION_PATCH/g" \ + -e "s/__EDIT_DB_VERSION_STRING__/$DB_VERSION_STRING/g" \ + -e "s/__EDIT_DB_VERSION_UNIQUE_NAME__/$DB_VERSION_UNIQUE_NAME/g" \ + -e "s/__EDIT_DB_VERSION__/$DB_VERSION/g" \ + -i configure || die + + popd &>/dev/null || die + popd &>/dev/null || die +} + +src_configure() { + local myconf=( + --enable-compat185 + --with-uniquename + --disable-rpc + --host="${CHOST}" + + $(usex amd64 '--with-mutex=x86/gcc-assembly' '') + $(use_enable cxx) + $(use_enable tcl) + $(usex tcl "--with-tcl=${EPREFIX}/usr/$(get_libdir)" '') #" + $(use_enable java) + ) + + if use java; then + myconf+=( + --with-java-prefix="${JAVA_HOME}" + --with-javac-flags="$(java-pkg_javac-args)" + ) + fi + + # the entire testsuite needs the TCL functionality + if use tcl && use test; then + myconf+=( --enable-test ) + else + myconf+=( --disable-test ) + fi + + ECONF_SOURCE="${S}"/../dist \ + econf "${myconf[@]}" +} + +src_compile() { + # This isn't safe for prefix (Darwin should be .jnilib), but I can't get the + # build system to behave itself, it generates libtool too late. + sed \ + -e 's/-shrext $(SOFLAGS)/-shrext .so $(SOFLAGS)/g' \ + -i Makefile || die + emake +} + +src_install() { + emake \ + DESTDIR="${D}" \ + libdir="${EPREFIX}/usr/$(get_libdir)" \ + strip="${EPREFIX}/bin/strip" \ + install + + db_src_install_usrbinslot + + db_src_install_headerslot + + db_src_install_doc + + db_src_install_usrlibcleanup + + dodir /usr/sbin + # This file is not always built, and no longer exists as of db-4.8 + if [[ -f "${ED}"/usr/bin/berkeley_db_svc ]] ; then + mv "${ED}"/usr/bin/berkeley_db_svc \ + "${ED}"/usr/sbin/berkeley_db"${SLOT/./}"_svc || die + fi + + if use java; then + java-pkg_regso "${ED}"/usr/"$(get_libdir)"/libdb_java*.so + java-pkg_dojar "${ED}"/usr/"$(get_libdir)"/*.jar + rm -f "${ED}"/usr/"$(get_libdir)"/*.jar + fi +} + +pkg_postinst() { + db_fix_so +} + +pkg_postrm() { + db_fix_so +} diff --git a/sys-libs/db/db-4.3.29_p1-r3.ebuild b/sys-libs/db/db-4.3.29_p1-r3.ebuild deleted file mode 100644 index e4bdf106da58..000000000000 --- a/sys-libs/db/db-4.3.29_p1-r3.ebuild +++ /dev/null @@ -1,183 +0,0 @@ -# Copyright 1999-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -inherit autotools db flag-o-matic java-pkg-opt-2 multilib - -#Number of official patches -#PATCHNO=`echo ${PV}|sed -e "s,\(.*_p\)\([0-9]*\),\2,"` -PATCHNO="${PV/*.*.*_p}" -if [[ ${PATCHNO} == "${PV}" ]] ; then - MY_PV="${PV}" - MY_P="${P}" - PATCHNO=0 -else - MY_PV="${PV/_p${PATCHNO}}" - MY_P="${PN}-${MY_PV}" -fi - -S="${WORKDIR}/${MY_P}/build_unix" -DESCRIPTION="Oracle Berkeley DB" -HOMEPAGE="http://www.oracle.com/technetwork/database/database-technologies/berkeleydb/overview/index.html" -SRC_URI="http://download.oracle.com/berkeley-db/${MY_P}.tar.gz" -for (( i=1 ; i<=${PATCHNO} ; i++ )) ; do - export SRC_URI="${SRC_URI} http://www.oracle.com/technology/products/berkeley-db/db/update/${MY_PV}/patch.${MY_PV}.${i}" -done - -LICENSE="Sleepycat" -SLOT="$(ver_cut 1-2)" -KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ppc ppc64 ~s390 sparc x86" -IUSE="tcl java doc cxx" -RESTRICT="!test? ( test )" - -DEPEND="tcl? ( >=dev-lang/tcl-8.4 ) - java? ( >=virtual/jdk-1.4 )" -RDEPEND="tcl? ( dev-lang/tcl ) - java? ( >=virtual/jre-1.4 )" - -PATCHES=( - "${FILESDIR}"/"${PN}"-"${SLOT}"-libtool.patch - - # use the includes from the prefix - "${FILESDIR}"/"${PN}"-4.2-jni-check-prefix-first.patch - "${FILESDIR}"/"${PN}"-4.2-listen-to-java-options.patch - - "${FILESDIR}"/"${PN}"-4.3.27-fix-dep-link.patch -) - -# Required to avoid unpack attempt of patches -src_unpack() { - unpack "${MY_P}".tar.gz -} - -src_prepare() { - pushd "${WORKDIR}"/"${MY_P}" &>/dev/null || die - for (( i=1 ; i<=${PATCHNO} ; i++ )) - do - eapply -p0 "${DISTDIR}"/patch."${MY_PV}"."${i}" - done - - default - - sed -e "/^DB_RELEASE_DATE=/s/%B %e, %Y/%Y-%m-%d/" \ - -i dist/RELEASE || die - - # Include the SLOT for Java JAR files - # This supersedes the unused jarlocation patches. - sed -r \ - -e '/jarfile=.*\.jar$/s,(.jar$),-$(LIBVERSION)\1,g' \ - -i dist/Makefile.in || die - - # START of 4.5+earlier specific - # Upstream sucks, they normally concat these - local i j - for j in dist/aclocal{,_java} ; do - pushd ${j} &>/dev/null || die - for i in * ; do - ln -s ${i} ${i%.ac}.m4 || die - done - popd &>/dev/null || die - done - # END of 4.5+earlier specific - - pushd dist &>/dev/null || die - rm aclocal/libtool.{m4,ac} || die - sed \ - -e '/AC_PROG_LIBTOOL$/aLT_OUTPUT' \ - -i configure.ac || die - sed \ - -e '/^AC_PATH_TOOL/s/ sh, missing_sh/ bash, missing_sh/' \ - -i aclocal/programs.m4 || die - - AT_M4DIR="aclocal aclocal_java" eautoreconf - - # Upstream sucks - they do autoconf and THEN replace the version variables. - . ./RELEASE - sed \ - -e "s/__EDIT_DB_VERSION_MAJOR__/$DB_VERSION_MAJOR/g" \ - -e "s/__EDIT_DB_VERSION_MINOR__/$DB_VERSION_MINOR/g" \ - -e "s/__EDIT_DB_VERSION_PATCH__/$DB_VERSION_PATCH/g" \ - -e "s/__EDIT_DB_VERSION_STRING__/$DB_VERSION_STRING/g" \ - -e "s/__EDIT_DB_VERSION_UNIQUE_NAME__/$DB_VERSION_UNIQUE_NAME/g" \ - -e "s/__EDIT_DB_VERSION__/$DB_VERSION/g" \ - -i configure || die - popd &>/dev/null || die - popd &>/dev/null || die -} - -src_configure() { - local myconf=( - --enable-compat185 - --enable-o_direct - --without-uniquename - --disable-rpc - --host="${CHOST}" - - $(usex amd64 '--with-mutex=x86/gcc-assembly' '') - $(use_enable cxx) - $(use_enable tcl) - $(usex tcl "--with-tcl=${EPREFIX}/usr/$(get_libdir)" '') #" - $(use_enable java) - ) - - if use java; then - myconf+=( - --with-java-prefix="${JAVA_HOME}" - --with-javac-flags="$(java-pkg_javac-args)" - ) - fi - - # the entire testsuite needs the TCL functionality - if use tcl && use test ; then - myconf+=( --enable-test ) - else - myconf+=( --disable-test ) - fi - - # Add linker versions to the symbols. Easier to do, and safer than header - # file mumbo jumbo. - if use userland_GNU; then - append-ldflags -Wl,--default-symver - fi - - ECONF_SOURCE="${S}"/../dist \ - econf "${myconf[@]}" -} - -src_install() { - emake \ - DESTDIR="${D}" \ - libdir="${EPREFIX}/usr/$(get_libdir)" \ - strip="${EPREFIX}/bin/strip" \ - install - - db_src_install_usrbinslot - - db_src_install_headerslot - - db_src_install_doc - - db_src_install_usrlibcleanup - - dodir /usr/sbin - # This file is not always built, and no longer exists as of db-4.8 - if [[ -f "${ED}"/usr/bin/berkeley_db_svc ]] ; then - mv "${ED}"/usr/bin/berkeley_db_svc \ - "${ED}"/usr/sbin/berkeley_db"${SLOT/./}"_svc || die - fi - - if use java; then - java-pkg_regso "${ED}"/usr/"$(get_libdir)"/libdb_java*.so - java-pkg_dojar "${ED}"/usr/"$(get_libdir)"/*.jar - rm -f "${ED}"/usr/"$(get_libdir)"/*.jar - fi -} - -pkg_postinst() { - db_fix_so -} - -pkg_postrm() { - db_fix_so -} diff --git a/sys-libs/db/db-4.3.29_p1-r4.ebuild b/sys-libs/db/db-4.3.29_p1-r4.ebuild new file mode 100644 index 000000000000..c8c2b701e139 --- /dev/null +++ b/sys-libs/db/db-4.3.29_p1-r4.ebuild @@ -0,0 +1,183 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit autotools db flag-o-matic java-pkg-opt-2 multilib + +#Number of official patches +#PATCHNO=`echo ${PV}|sed -e "s,\(.*_p\)\([0-9]*\),\2,"` +PATCHNO="${PV/*.*.*_p}" +if [[ ${PATCHNO} == "${PV}" ]] ; then + MY_PV="${PV}" + MY_P="${P}" + PATCHNO=0 +else + MY_PV="${PV/_p${PATCHNO}}" + MY_P="${PN}-${MY_PV}" +fi + +S="${WORKDIR}/${MY_P}/build_unix" +DESCRIPTION="Oracle Berkeley DB" +HOMEPAGE="http://www.oracle.com/technetwork/database/database-technologies/berkeleydb/overview/index.html" +SRC_URI="http://download.oracle.com/berkeley-db/${MY_P}.tar.gz" +for (( i=1 ; i<=${PATCHNO} ; i++ )) ; do + export SRC_URI="${SRC_URI} http://www.oracle.com/technology/products/berkeley-db/db/update/${MY_PV}/patch.${MY_PV}.${i}" +done + +LICENSE="Sleepycat" +SLOT="$(ver_cut 1-2)" +KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ppc ppc64 ~s390 sparc x86" +IUSE="tcl java doc cxx" +RESTRICT="!test? ( test )" + +DEPEND="tcl? ( >=dev-lang/tcl-8.4 ) + java? ( >=virtual/jdk-1.8 )" +RDEPEND="tcl? ( dev-lang/tcl ) + java? ( >=virtual/jre-1.8 )" + +PATCHES=( + "${FILESDIR}"/"${PN}"-"${SLOT}"-libtool.patch + + # use the includes from the prefix + "${FILESDIR}"/"${PN}"-4.2-jni-check-prefix-first.patch + "${FILESDIR}"/"${PN}"-4.2-listen-to-java-options.patch + + "${FILESDIR}"/"${PN}"-4.3.27-fix-dep-link.patch +) + +# Required to avoid unpack attempt of patches +src_unpack() { + unpack "${MY_P}".tar.gz +} + +src_prepare() { + pushd "${WORKDIR}"/"${MY_P}" &>/dev/null || die + for (( i=1 ; i<=${PATCHNO} ; i++ )) + do + eapply -p0 "${DISTDIR}"/patch."${MY_PV}"."${i}" + done + + default + + sed -e "/^DB_RELEASE_DATE=/s/%B %e, %Y/%Y-%m-%d/" \ + -i dist/RELEASE || die + + # Include the SLOT for Java JAR files + # This supersedes the unused jarlocation patches. + sed -r \ + -e '/jarfile=.*\.jar$/s,(.jar$),-$(LIBVERSION)\1,g' \ + -i dist/Makefile.in || die + + # START of 4.5+earlier specific + # Upstream sucks, they normally concat these + local i j + for j in dist/aclocal{,_java} ; do + pushd ${j} &>/dev/null || die + for i in * ; do + ln -s ${i} ${i%.ac}.m4 || die + done + popd &>/dev/null || die + done + # END of 4.5+earlier specific + + pushd dist &>/dev/null || die + rm aclocal/libtool.{m4,ac} || die + sed \ + -e '/AC_PROG_LIBTOOL$/aLT_OUTPUT' \ + -i configure.ac || die + sed \ + -e '/^AC_PATH_TOOL/s/ sh, missing_sh/ bash, missing_sh/' \ + -i aclocal/programs.m4 || die + + AT_M4DIR="aclocal aclocal_java" eautoreconf + + # Upstream sucks - they do autoconf and THEN replace the version variables. + . ./RELEASE + sed \ + -e "s/__EDIT_DB_VERSION_MAJOR__/$DB_VERSION_MAJOR/g" \ + -e "s/__EDIT_DB_VERSION_MINOR__/$DB_VERSION_MINOR/g" \ + -e "s/__EDIT_DB_VERSION_PATCH__/$DB_VERSION_PATCH/g" \ + -e "s/__EDIT_DB_VERSION_STRING__/$DB_VERSION_STRING/g" \ + -e "s/__EDIT_DB_VERSION_UNIQUE_NAME__/$DB_VERSION_UNIQUE_NAME/g" \ + -e "s/__EDIT_DB_VERSION__/$DB_VERSION/g" \ + -i configure || die + popd &>/dev/null || die + popd &>/dev/null || die +} + +src_configure() { + local myconf=( + --enable-compat185 + --enable-o_direct + --without-uniquename + --disable-rpc + --host="${CHOST}" + + $(usex amd64 '--with-mutex=x86/gcc-assembly' '') + $(use_enable cxx) + $(use_enable tcl) + $(usex tcl "--with-tcl=${EPREFIX}/usr/$(get_libdir)" '') #" + $(use_enable java) + ) + + if use java; then + myconf+=( + --with-java-prefix="${JAVA_HOME}" + --with-javac-flags="$(java-pkg_javac-args)" + ) + fi + + # the entire testsuite needs the TCL functionality + if use tcl && use test ; then + myconf+=( --enable-test ) + else + myconf+=( --disable-test ) + fi + + # Add linker versions to the symbols. Easier to do, and safer than header + # file mumbo jumbo. + if use userland_GNU; then + append-ldflags -Wl,--default-symver + fi + + ECONF_SOURCE="${S}"/../dist \ + econf "${myconf[@]}" +} + +src_install() { + emake \ + DESTDIR="${D}" \ + libdir="${EPREFIX}/usr/$(get_libdir)" \ + strip="${EPREFIX}/bin/strip" \ + install + + db_src_install_usrbinslot + + db_src_install_headerslot + + db_src_install_doc + + db_src_install_usrlibcleanup + + dodir /usr/sbin + # This file is not always built, and no longer exists as of db-4.8 + if [[ -f "${ED}"/usr/bin/berkeley_db_svc ]] ; then + mv "${ED}"/usr/bin/berkeley_db_svc \ + "${ED}"/usr/sbin/berkeley_db"${SLOT/./}"_svc || die + fi + + if use java; then + java-pkg_regso "${ED}"/usr/"$(get_libdir)"/libdb_java*.so + java-pkg_dojar "${ED}"/usr/"$(get_libdir)"/*.jar + rm -f "${ED}"/usr/"$(get_libdir)"/*.jar + fi +} + +pkg_postinst() { + db_fix_so +} + +pkg_postrm() { + db_fix_so +} diff --git a/sys-libs/db/db-4.4.20_p4-r3.ebuild b/sys-libs/db/db-4.4.20_p4-r3.ebuild deleted file mode 100644 index 7c080be4429c..000000000000 --- a/sys-libs/db/db-4.4.20_p4-r3.ebuild +++ /dev/null @@ -1,177 +0,0 @@ -# Copyright 1999-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -inherit autotools db flag-o-matic java-pkg-opt-2 multilib - -#Number of official patches -#PATCHNO=`echo ${PV}|sed -e "s,\(.*_p\)\([0-9]*\),\2,"` -PATCHNO="${PV/*.*.*_p}" -if [[ ${PATCHNO} == "${PV}" ]] ; then - MY_PV="${PV}" - MY_P="${P}" - PATCHNO=0 -else - MY_PV="${PV/_p${PATCHNO}}" - MY_P="${PN}-${MY_PV}" -fi - -S="${WORKDIR}/${MY_P}/build_unix" -DESCRIPTION="Oracle Berkeley DB" -HOMEPAGE="http://www.oracle.com/technetwork/database/database-technologies/berkeleydb/overview/index.html" -SRC_URI="http://download.oracle.com/berkeley-db/${MY_P}.tar.gz - mirror://gentoo/${MY_P}-20060110-rpc_server-java.tar.gz" -for (( i=1 ; i<=${PATCHNO} ; i++ )) ; do - export SRC_URI="${SRC_URI} http://www.oracle.com/technology/products/berkeley-db/db/update/${MY_PV}/patch.${MY_PV}.${i}" -done - -LICENSE="Sleepycat BSD" -SLOT="$(ver_cut 1-2)" -KEYWORDS="~amd64 ~arm ~arm64 ~ia64 ~m68k ~ppc ~ppc64 ~s390 ~sparc ~x86" -IUSE="tcl java doc cxx" -RESTRICT="!test? ( test )" - -DEPEND="tcl? ( >=dev-lang/tcl-8.4 ) - java? ( >=virtual/jdk-1.4 )" -RDEPEND="tcl? ( dev-lang/tcl ) - java? ( >=virtual/jre-1.4 )" - -PATCHES=( - "${FILESDIR}"/"${PN}"-"${SLOT}"-libtool.patch - - # use the includes from the prefix - "${FILESDIR}"/"${PN}"-4.2-jni-check-prefix-first.patch - "${FILESDIR}"/"${PN}"-4.2-listen-to-java-options.patch -) - -# Required to avoid unpack attempt of patches -src_unpack() { - unpack "${MY_P}".tar.gz - unpack "${MY_P}-20060110-rpc_server-java".tar.gz -} - -src_prepare() { - pushd "${WORKDIR}"/"${MY_P}" &>/dev/null || die - for (( i=1 ; i<=${PATCHNO} ; i++ )) - do - eapply -p0 "${DISTDIR}"/patch."${MY_PV}"."${i}" - done - - default - - sed -e "/^DB_RELEASE_DATE=/s/%B %e, %Y/%Y-%m-%d/" \ - -i dist/RELEASE || die - - # Include the SLOT for Java JAR files - # This supersedes the unused jarlocation patches. - sed -r \ - -e '/jarfile=.*\.jar$/s,(.jar$),-$(LIBVERSION)\1,g' \ - -i dist/Makefile.in || die - - # START of 4.5+earlier specific - # Upstream sucks, they normally concat these - local i j - for j in dist/aclocal{,_java} ; do - pushd ${j} &>/dev/null || die - for i in * ; do - ln -s ${i} ${i%.ac}.m4 || die - done - popd &>/dev/null || die - done - # END of 4.5+earlier specific - pushd dist &>/dev/null || die - rm aclocal/libtool.{m4,ac} || die - - AT_M4DIR="aclocal aclocal_java" eautoreconf - - # Upstream sucks - they do autoconf and THEN replace the version variables. - . ./RELEASE - sed \ - -e "s/__EDIT_DB_VERSION_MAJOR__/$DB_VERSION_MAJOR/g" \ - -e "s/__EDIT_DB_VERSION_MINOR__/$DB_VERSION_MINOR/g" \ - -e "s/__EDIT_DB_VERSION_PATCH__/$DB_VERSION_PATCH/g" \ - -e "s/__EDIT_DB_VERSION_STRING__/$DB_VERSION_STRING/g" \ - -e "s/__EDIT_DB_VERSION_UNIQUE_NAME__/$DB_VERSION_UNIQUE_NAME/g" \ - -e "s/__EDIT_DB_VERSION__/$DB_VERSION/g" \ - -i configure || die - - popd &>/dev/null || die - popd &>/dev/null || die -} - -src_configure() { - local myconf=( - --enable-compat185 - --enable-o_direct - --without-uniquename - --disable-rpc - --host="${CHOST}" - - $(usex amd64 '--with-mutex=x86/gcc-assembly' '') - $(use_enable cxx) - $(use_enable tcl) - $(usex tcl "--with-tcl=${EPREFIX}/usr/$(get_libdir)" '') #" - $(use_enable java) - ) - - if use java; then - myconf+=( - --with-java-prefix="${JAVA_HOME}" - --with-javac-flags="$(java-pkg_javac-args)" - ) - fi - - # the entire testsuite needs the TCL functionality - if use tcl && use test ; then - myconf+=( --enable-test ) - else - myconf+=( --disable-test ) - fi - - # Add linker versions to the symbols. Easier to do, and safer than header file - # mumbo jumbo. - if use userland_GNU; then - append-ldflags -Wl,--default-symver - fi - - ECONF_SOURCE="${S}"/../dist \ - econf "${myconf[@]}" -} - -src_install() { - emake \ - DESTDIR="${D}" \ - libdir="${EPREFIX}/usr/$(get_libdir)" \ - strip="${EPREFIX}/bin/strip" \ - install - - db_src_install_usrbinslot - - db_src_install_headerslot - - db_src_install_doc - - db_src_install_usrlibcleanup - - dodir /usr/sbin - # This file is not always built, and no longer exists as of db-4.8 - if [[ -f "${ED}"/usr/bin/berkeley_db_svc ]] ; then - mv "${ED}"/usr/bin/berkeley_db_svc \ - "${ED}"/usr/sbin/berkeley_db"${SLOT/./}"_svc || die - fi - - if use java; then - java-pkg_regso "${ED}"/usr/"$(get_libdir)"/libdb_java*.so - java-pkg_dojar "${ED}"/usr/"$(get_libdir)"/*.jar - rm -f "${ED}"/usr/"$(get_libdir)"/*.jar - fi -} - -pkg_postinst() { - db_fix_so -} - -pkg_postrm() { - db_fix_so -} diff --git a/sys-libs/db/db-4.4.20_p4-r4.ebuild b/sys-libs/db/db-4.4.20_p4-r4.ebuild new file mode 100644 index 000000000000..f2d903b73540 --- /dev/null +++ b/sys-libs/db/db-4.4.20_p4-r4.ebuild @@ -0,0 +1,177 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit autotools db flag-o-matic java-pkg-opt-2 multilib + +#Number of official patches +#PATCHNO=`echo ${PV}|sed -e "s,\(.*_p\)\([0-9]*\),\2,"` +PATCHNO="${PV/*.*.*_p}" +if [[ ${PATCHNO} == "${PV}" ]] ; then + MY_PV="${PV}" + MY_P="${P}" + PATCHNO=0 +else + MY_PV="${PV/_p${PATCHNO}}" + MY_P="${PN}-${MY_PV}" +fi + +S="${WORKDIR}/${MY_P}/build_unix" +DESCRIPTION="Oracle Berkeley DB" +HOMEPAGE="http://www.oracle.com/technetwork/database/database-technologies/berkeleydb/overview/index.html" +SRC_URI="http://download.oracle.com/berkeley-db/${MY_P}.tar.gz + mirror://gentoo/${MY_P}-20060110-rpc_server-java.tar.gz" +for (( i=1 ; i<=${PATCHNO} ; i++ )) ; do + export SRC_URI="${SRC_URI} http://www.oracle.com/technology/products/berkeley-db/db/update/${MY_PV}/patch.${MY_PV}.${i}" +done + +LICENSE="Sleepycat BSD" +SLOT="$(ver_cut 1-2)" +KEYWORDS="~amd64 ~arm ~arm64 ~ia64 ~m68k ~ppc ~ppc64 ~s390 ~sparc ~x86" +IUSE="tcl java doc cxx" +RESTRICT="!test? ( test )" + +DEPEND="tcl? ( >=dev-lang/tcl-8.4 ) + java? ( >=virtual/jdk-1.8 )" +RDEPEND="tcl? ( dev-lang/tcl ) + java? ( >=virtual/jre-1.8 )" + +PATCHES=( + "${FILESDIR}"/"${PN}"-"${SLOT}"-libtool.patch + + # use the includes from the prefix + "${FILESDIR}"/"${PN}"-4.2-jni-check-prefix-first.patch + "${FILESDIR}"/"${PN}"-4.2-listen-to-java-options.patch +) + +# Required to avoid unpack attempt of patches +src_unpack() { + unpack "${MY_P}".tar.gz + unpack "${MY_P}-20060110-rpc_server-java".tar.gz +} + +src_prepare() { + pushd "${WORKDIR}"/"${MY_P}" &>/dev/null || die + for (( i=1 ; i<=${PATCHNO} ; i++ )) + do + eapply -p0 "${DISTDIR}"/patch."${MY_PV}"."${i}" + done + + default + + sed -e "/^DB_RELEASE_DATE=/s/%B %e, %Y/%Y-%m-%d/" \ + -i dist/RELEASE || die + + # Include the SLOT for Java JAR files + # This supersedes the unused jarlocation patches. + sed -r \ + -e '/jarfile=.*\.jar$/s,(.jar$),-$(LIBVERSION)\1,g' \ + -i dist/Makefile.in || die + + # START of 4.5+earlier specific + # Upstream sucks, they normally concat these + local i j + for j in dist/aclocal{,_java} ; do + pushd ${j} &>/dev/null || die + for i in * ; do + ln -s ${i} ${i%.ac}.m4 || die + done + popd &>/dev/null || die + done + # END of 4.5+earlier specific + pushd dist &>/dev/null || die + rm aclocal/libtool.{m4,ac} || die + + AT_M4DIR="aclocal aclocal_java" eautoreconf + + # Upstream sucks - they do autoconf and THEN replace the version variables. + . ./RELEASE + sed \ + -e "s/__EDIT_DB_VERSION_MAJOR__/$DB_VERSION_MAJOR/g" \ + -e "s/__EDIT_DB_VERSION_MINOR__/$DB_VERSION_MINOR/g" \ + -e "s/__EDIT_DB_VERSION_PATCH__/$DB_VERSION_PATCH/g" \ + -e "s/__EDIT_DB_VERSION_STRING__/$DB_VERSION_STRING/g" \ + -e "s/__EDIT_DB_VERSION_UNIQUE_NAME__/$DB_VERSION_UNIQUE_NAME/g" \ + -e "s/__EDIT_DB_VERSION__/$DB_VERSION/g" \ + -i configure || die + + popd &>/dev/null || die + popd &>/dev/null || die +} + +src_configure() { + local myconf=( + --enable-compat185 + --enable-o_direct + --without-uniquename + --disable-rpc + --host="${CHOST}" + + $(usex amd64 '--with-mutex=x86/gcc-assembly' '') + $(use_enable cxx) + $(use_enable tcl) + $(usex tcl "--with-tcl=${EPREFIX}/usr/$(get_libdir)" '') #" + $(use_enable java) + ) + + if use java; then + myconf+=( + --with-java-prefix="${JAVA_HOME}" + --with-javac-flags="$(java-pkg_javac-args)" + ) + fi + + # the entire testsuite needs the TCL functionality + if use tcl && use test ; then + myconf+=( --enable-test ) + else + myconf+=( --disable-test ) + fi + + # Add linker versions to the symbols. Easier to do, and safer than header file + # mumbo jumbo. + if use userland_GNU; then + append-ldflags -Wl,--default-symver + fi + + ECONF_SOURCE="${S}"/../dist \ + econf "${myconf[@]}" +} + +src_install() { + emake \ + DESTDIR="${D}" \ + libdir="${EPREFIX}/usr/$(get_libdir)" \ + strip="${EPREFIX}/bin/strip" \ + install + + db_src_install_usrbinslot + + db_src_install_headerslot + + db_src_install_doc + + db_src_install_usrlibcleanup + + dodir /usr/sbin + # This file is not always built, and no longer exists as of db-4.8 + if [[ -f "${ED}"/usr/bin/berkeley_db_svc ]] ; then + mv "${ED}"/usr/bin/berkeley_db_svc \ + "${ED}"/usr/sbin/berkeley_db"${SLOT/./}"_svc || die + fi + + if use java; then + java-pkg_regso "${ED}"/usr/"$(get_libdir)"/libdb_java*.so + java-pkg_dojar "${ED}"/usr/"$(get_libdir)"/*.jar + rm -f "${ED}"/usr/"$(get_libdir)"/*.jar + fi +} + +pkg_postinst() { + db_fix_so +} + +pkg_postrm() { + db_fix_so +} diff --git a/sys-libs/db/db-4.5.20_p2-r3.ebuild b/sys-libs/db/db-4.5.20_p2-r3.ebuild deleted file mode 100644 index df21a49880a9..000000000000 --- a/sys-libs/db/db-4.5.20_p2-r3.ebuild +++ /dev/null @@ -1,189 +0,0 @@ -# Copyright 1999-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -inherit autotools db flag-o-matic java-pkg-opt-2 multilib - -#Number of official patches -#PATCHNO=`echo ${PV}|sed -e "s,\(.*_p\)\([0-9]*\),\2,"` -PATCHNO="${PV/*.*.*_p}" -if [[ ${PATCHNO} == "${PV}" ]] ; then - MY_PV="${PV}" - MY_P="${P}" - PATCHNO=0 -else - MY_PV="${PV/_p${PATCHNO}}" - MY_P="${PN}-${MY_PV}" -fi - -S="${WORKDIR}/${MY_P}/build_unix" -DESCRIPTION="Oracle Berkeley DB" -HOMEPAGE="http://www.oracle.com/technetwork/database/database-technologies/berkeleydb/overview/index.html" -SRC_URI="http://download.oracle.com/berkeley-db/${MY_P}.tar.gz" -for (( i=1 ; i<=${PATCHNO} ; i++ )) ; do - export SRC_URI="${SRC_URI} http://www.oracle.com/technology/products/berkeley-db/db/update/${MY_PV}/patch.${MY_PV}.${i}" -done - -LICENSE="Sleepycat" -SLOT="$(ver_cut 1-2)" -KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~s390 sparc x86" -IUSE="tcl java doc cxx" -RESTRICT="!test? ( test )" - -DEPEND="tcl? ( >=dev-lang/tcl-8.4 ) - java? ( >=virtual/jdk-1.4 )" -RDEPEND="tcl? ( dev-lang/tcl ) - java? ( >=virtual/jre-1.4 )" - -PATCHES=( - "${FILESDIR}"/"${PN}"-4.4-libtool.patch - - # use the includes from the prefix - "${FILESDIR}"/"${PN}"-4.2-jni-check-prefix-first.patch - "${FILESDIR}"/"${PN}"-4.2-listen-to-java-options.patch -) - -# Required to avoid unpack attempt of patches -src_unpack() { - unpack "${MY_P}".tar.gz -} - -src_prepare() { - pushd "${WORKDIR}"/"${MY_P}" &>/dev/null || die - for (( i=1 ; i<=${PATCHNO} ; i++ )) - do - eapply -p0 "${DISTDIR}"/patch."${MY_PV}"."${i}" - done - - default - - sed -e "/^DB_RELEASE_DATE=/s/%B %e, %Y/%Y-%m-%d/" \ - -i dist/RELEASE || die - - # Include the SLOT for Java JAR files - # This supersedes the unused jarlocation patches. - sed -r \ - -e '/jarfile=.*\.jar$/s,(.jar$),-$(LIBVERSION)\1,g' \ - -i dist/Makefile.in || die - - # START of 4.5+earlier specific - # Upstream sucks, they normally concat these - local i j - for j in dist/aclocal{,_java} ; do - pushd ${j} &>/dev/null || die - for i in * ; do - ln -s ${i} ${i%.ac}.m4 || die - done - popd &>/dev/null || die - done - # END of 4.5+earlier specific - pushd dist &>/dev/null || die - rm aclocal/libtool.{m4,ac} || die - sed \ - -e '/AC_PROG_LIBTOOL$/aLT_OUTPUT' \ - -i configure.ac || die - sed \ - -e '/^AC_PATH_TOOL/s/ sh, none/ bash, none/' \ - -i aclocal/programs.m4 || die - - AT_M4DIR="aclocal aclocal_java" eautoreconf - - # Upstream sucks - they do autoconf and THEN replace the version variables. - . ./RELEASE - sed \ - -e "s/__EDIT_DB_VERSION_MAJOR__/$DB_VERSION_MAJOR/g" \ - -e "s/__EDIT_DB_VERSION_MINOR__/$DB_VERSION_MINOR/g" \ - -e "s/__EDIT_DB_VERSION_PATCH__/$DB_VERSION_PATCH/g" \ - -e "s/__EDIT_DB_VERSION_STRING__/$DB_VERSION_STRING/g" \ - -e "s/__EDIT_DB_VERSION_UNIQUE_NAME__/$DB_VERSION_UNIQUE_NAME/g" \ - -e "s/__EDIT_DB_VERSION__/$DB_VERSION/g" \ - -i configure || die - - popd &>/dev/null || die - popd &>/dev/null || die -} - -src_configure() { - # compilation with -O0 fails on amd64, see bug #171231 - if use amd64 ; then - replace-flags -O0 -O2 - is-flagq -O[s123] || append-flags -O2 - fi - - local myconf=( - --enable-compat185 - --enable-o_direct - --without-uniquename - --disable-rpc - --host="${CHOST}" - - $(usex amd64 '--with-mutex=x86/gcc-assembly' '') - $(use_enable cxx) - $(use_enable tcl) - $(usex tcl "--with-tcl=${EPREFIX}/usr/$(get_libdir)" '') #" - $(use_enable java) - ) - - if use java; then - myconf+=( - --with-java-prefix="${JAVA_HOME}" - --with-javac-flags="$(java-pkg_javac-args)" - ) - fi - - # the entire testsuite needs the TCL functionality - if use tcl && use test ; then - myconf+=( --enable-test ) - else - myconf+=( --disable-test ) - fi - - # Add linker versions to the symbols. Easier to do, and safer than header file - # mumbo jumbo. - if use userland_GNU; then - append-ldflags -Wl,--default-symver - fi - - ECONF_SOURCE="${S}"/../dist \ - econf "${myconf[@]}" - - sed -e "s,\(^STRIP *=\).*,\1\"true\"," -i Makefile || die -} - -src_install() { - emake \ - DESTDIR="${D}" \ - libdir="${EPREFIX}/usr/$(get_libdir)" \ - STRIP="true" \ - install - - db_src_install_usrbinslot - - db_src_install_headerslot - - db_src_install_doc - - db_src_install_usrlibcleanup - - dodir /usr/sbin - # This file is not always built, and no longer exists as of db-4.8 - if [[ -f "${ED}"/usr/bin/berkeley_db_svc ]] ; then - mv "${ED}"/usr/bin/berkeley_db_svc \ - "${ED}"/usr/sbin/berkeley_db"${SLOT/./}"_svc || die - fi - - if use java; then - java-pkg_regso "${ED}"/usr/"$(get_libdir)"/libdb_java*.so - java-pkg_dojar "${ED}"/usr/"$(get_libdir)"/*.jar - rm -f "${ED}"/usr/"$(get_libdir)"/*.jar - fi -} - -pkg_postinst() { - db_fix_so -} - -pkg_postrm() { - db_fix_so -} diff --git a/sys-libs/db/db-4.5.20_p2-r4.ebuild b/sys-libs/db/db-4.5.20_p2-r4.ebuild deleted file mode 100644 index 47bd09277278..000000000000 --- a/sys-libs/db/db-4.5.20_p2-r4.ebuild +++ /dev/null @@ -1,193 +0,0 @@ -# Copyright 1999-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -inherit autotools db flag-o-matic java-pkg-opt-2 multilib - -#Number of official patches -#PATCHNO=`echo ${PV}|sed -e "s,\(.*_p\)\([0-9]*\),\2,"` -PATCHNO="${PV/*.*.*_p}" -if [[ ${PATCHNO} == "${PV}" ]] ; then - MY_PV="${PV}" - MY_P="${P}" - PATCHNO=0 -else - MY_PV="${PV/_p${PATCHNO}}" - MY_P="${PN}-${MY_PV}" -fi - -S="${WORKDIR}/${MY_P}/build_unix" -DESCRIPTION="Oracle Berkeley DB" -HOMEPAGE="http://www.oracle.com/technetwork/database/database-technologies/berkeleydb/overview/index.html" -SRC_URI="http://download.oracle.com/berkeley-db/${MY_P}.tar.gz" -for (( i=1 ; i<=${PATCHNO} ; i++ )) ; do - export SRC_URI="${SRC_URI} http://www.oracle.com/technology/products/berkeley-db/db/update/${MY_PV}/patch.${MY_PV}.${i}" -done - -LICENSE="Sleepycat" -SLOT="$(ver_cut 1-2)" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86" -IUSE="tcl java doc cxx" -RESTRICT="!test? ( test )" - -DEPEND="tcl? ( >=dev-lang/tcl-8.4 ) - java? ( >=virtual/jdk-1.4 )" -RDEPEND="tcl? ( dev-lang/tcl ) - java? ( >=virtual/jre-1.4 )" - -PATCHES=( - "${FILESDIR}"/"${PN}"-4.4-libtool.patch - - # use the includes from the prefix - "${FILESDIR}"/"${PN}"-4.2-jni-check-prefix-first.patch - "${FILESDIR}"/"${PN}"-4.2-listen-to-java-options.patch -) - -# Required to avoid unpack attempt of patches -src_unpack() { - unpack "${MY_P}".tar.gz -} - -src_prepare() { - pushd "${WORKDIR}"/"${MY_P}" &>/dev/null || die - for (( i=1 ; i<=${PATCHNO} ; i++ )) - do - eapply -p0 "${DISTDIR}"/patch."${MY_PV}"."${i}" - done - - default - - sed -e "/^DB_RELEASE_DATE=/s/%B %e, %Y/%Y-%m-%d/" \ - -i dist/RELEASE || die - - # Include the SLOT for Java JAR files - # This supersedes the unused jarlocation patches. - sed -r \ - -e '/jarfile=.*\.jar$/s,(.jar$),-$(LIBVERSION)\1,g' \ - -i dist/Makefile.in || die - - # START of 4.5+earlier specific - # Upstream sucks, they normally concat these - local i j - for j in dist/aclocal{,_java} ; do - pushd ${j} &>/dev/null || die - for i in * ; do - ln -s ${i} ${i%.ac}.m4 || die - done - popd &>/dev/null || die - done - # END of 4.5+earlier specific - pushd dist &>/dev/null || die - rm aclocal/libtool.{m4,ac} || die - sed \ - -e '/AC_PROG_LIBTOOL$/aLT_OUTPUT' \ - -i configure.ac || die - sed \ - -e '/^AC_PATH_TOOL/s/ sh, none/ bash, none/' \ - -i aclocal/programs.m4 || die - - AT_M4DIR="aclocal aclocal_java" eautoreconf - - # Upstream sucks - they do autoconf and THEN replace the version variables. - . ./RELEASE - sed \ - -e "s/__EDIT_DB_VERSION_MAJOR__/$DB_VERSION_MAJOR/g" \ - -e "s/__EDIT_DB_VERSION_MINOR__/$DB_VERSION_MINOR/g" \ - -e "s/__EDIT_DB_VERSION_PATCH__/$DB_VERSION_PATCH/g" \ - -e "s/__EDIT_DB_VERSION_STRING__/$DB_VERSION_STRING/g" \ - -e "s/__EDIT_DB_VERSION_UNIQUE_NAME__/$DB_VERSION_UNIQUE_NAME/g" \ - -e "s/__EDIT_DB_VERSION__/$DB_VERSION/g" \ - -i configure || die - - popd &>/dev/null || die - popd &>/dev/null || die -} - -src_configure() { - # compilation with -O0 fails on amd64, see bug #171231 - if use amd64 ; then - replace-flags -O0 -O2 - is-flagq -O[s123] || append-flags -O2 - fi - - local myconf=( - --enable-compat185 - --enable-o_direct - --without-uniquename - --disable-rpc - --disable-static - --host="${CHOST}" - - $(usex amd64 '--with-mutex=x86/gcc-assembly' '') - $(use_enable cxx) - $(use_enable tcl) - $(usex tcl "--with-tcl=${EPREFIX}/usr/$(get_libdir)" '') #" - $(use_enable java) - ) - - if use java; then - myconf+=( - --with-java-prefix="${JAVA_HOME}" - --with-javac-flags="$(java-pkg_javac-args)" - ) - fi - - # the entire testsuite needs the TCL functionality - if use tcl && use test ; then - myconf+=( --enable-test ) - else - myconf+=( --disable-test ) - fi - - # Add linker versions to the symbols. Easier to do, and safer than header file - # mumbo jumbo. - if use userland_GNU; then - append-ldflags -Wl,--default-symver - fi - - ECONF_SOURCE="${S}"/../dist \ - econf "${myconf[@]}" - - sed -e "s,\(^STRIP *=\).*,\1\"true\"," -i Makefile || die -} - -src_install() { - emake \ - DESTDIR="${D}" \ - libdir="${EPREFIX}/usr/$(get_libdir)" \ - STRIP="true" \ - install - - db_src_install_usrbinslot - - db_src_install_headerslot - - db_src_install_doc - - db_src_install_usrlibcleanup - - dodir /usr/sbin - # This file is not always built, and no longer exists as of db-4.8 - if [[ -f "${ED}"/usr/bin/berkeley_db_svc ]] ; then - mv "${ED}"/usr/bin/berkeley_db_svc \ - "${ED}"/usr/sbin/berkeley_db"${SLOT/./}"_svc || die - fi - - if use java; then - java-pkg_regso "${ED}"/usr/"$(get_libdir)"/libdb_java*.so - java-pkg_dojar "${ED}"/usr/"$(get_libdir)"/*.jar - rm -f "${ED}"/usr/"$(get_libdir)"/*.jar - fi - - # no static libraries - find "${ED}" -name '*.la' -delete || die -} - -pkg_postinst() { - db_fix_so -} - -pkg_postrm() { - db_fix_so -} diff --git a/sys-libs/db/db-4.5.20_p2-r5.ebuild b/sys-libs/db/db-4.5.20_p2-r5.ebuild new file mode 100644 index 000000000000..c8677a2f0a4d --- /dev/null +++ b/sys-libs/db/db-4.5.20_p2-r5.ebuild @@ -0,0 +1,189 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit autotools db flag-o-matic java-pkg-opt-2 multilib + +#Number of official patches +#PATCHNO=`echo ${PV}|sed -e "s,\(.*_p\)\([0-9]*\),\2,"` +PATCHNO="${PV/*.*.*_p}" +if [[ ${PATCHNO} == "${PV}" ]] ; then + MY_PV="${PV}" + MY_P="${P}" + PATCHNO=0 +else + MY_PV="${PV/_p${PATCHNO}}" + MY_P="${PN}-${MY_PV}" +fi + +S="${WORKDIR}/${MY_P}/build_unix" +DESCRIPTION="Oracle Berkeley DB" +HOMEPAGE="http://www.oracle.com/technetwork/database/database-technologies/berkeleydb/overview/index.html" +SRC_URI="http://download.oracle.com/berkeley-db/${MY_P}.tar.gz" +for (( i=1 ; i<=${PATCHNO} ; i++ )) ; do + export SRC_URI="${SRC_URI} http://www.oracle.com/technology/products/berkeley-db/db/update/${MY_PV}/patch.${MY_PV}.${i}" +done + +LICENSE="Sleepycat" +SLOT="$(ver_cut 1-2)" +KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~s390 sparc x86" +IUSE="tcl java doc cxx" +RESTRICT="!test? ( test )" + +DEPEND="tcl? ( >=dev-lang/tcl-8.4 ) + java? ( >=virtual/jdk-1.8 )" +RDEPEND="tcl? ( dev-lang/tcl ) + java? ( >=virtual/jre-1.8 )" + +PATCHES=( + "${FILESDIR}"/"${PN}"-4.4-libtool.patch + + # use the includes from the prefix + "${FILESDIR}"/"${PN}"-4.2-jni-check-prefix-first.patch + "${FILESDIR}"/"${PN}"-4.2-listen-to-java-options.patch +) + +# Required to avoid unpack attempt of patches +src_unpack() { + unpack "${MY_P}".tar.gz +} + +src_prepare() { + pushd "${WORKDIR}"/"${MY_P}" &>/dev/null || die + for (( i=1 ; i<=${PATCHNO} ; i++ )) + do + eapply -p0 "${DISTDIR}"/patch."${MY_PV}"."${i}" + done + + default + + sed -e "/^DB_RELEASE_DATE=/s/%B %e, %Y/%Y-%m-%d/" \ + -i dist/RELEASE || die + + # Include the SLOT for Java JAR files + # This supersedes the unused jarlocation patches. + sed -r \ + -e '/jarfile=.*\.jar$/s,(.jar$),-$(LIBVERSION)\1,g' \ + -i dist/Makefile.in || die + + # START of 4.5+earlier specific + # Upstream sucks, they normally concat these + local i j + for j in dist/aclocal{,_java} ; do + pushd ${j} &>/dev/null || die + for i in * ; do + ln -s ${i} ${i%.ac}.m4 || die + done + popd &>/dev/null || die + done + # END of 4.5+earlier specific + pushd dist &>/dev/null || die + rm aclocal/libtool.{m4,ac} || die + sed \ + -e '/AC_PROG_LIBTOOL$/aLT_OUTPUT' \ + -i configure.ac || die + sed \ + -e '/^AC_PATH_TOOL/s/ sh, none/ bash, none/' \ + -i aclocal/programs.m4 || die + + AT_M4DIR="aclocal aclocal_java" eautoreconf + + # Upstream sucks - they do autoconf and THEN replace the version variables. + . ./RELEASE + sed \ + -e "s/__EDIT_DB_VERSION_MAJOR__/$DB_VERSION_MAJOR/g" \ + -e "s/__EDIT_DB_VERSION_MINOR__/$DB_VERSION_MINOR/g" \ + -e "s/__EDIT_DB_VERSION_PATCH__/$DB_VERSION_PATCH/g" \ + -e "s/__EDIT_DB_VERSION_STRING__/$DB_VERSION_STRING/g" \ + -e "s/__EDIT_DB_VERSION_UNIQUE_NAME__/$DB_VERSION_UNIQUE_NAME/g" \ + -e "s/__EDIT_DB_VERSION__/$DB_VERSION/g" \ + -i configure || die + + popd &>/dev/null || die + popd &>/dev/null || die +} + +src_configure() { + # compilation with -O0 fails on amd64, see bug #171231 + if use amd64 ; then + replace-flags -O0 -O2 + is-flagq -O[s123] || append-flags -O2 + fi + + local myconf=( + --enable-compat185 + --enable-o_direct + --without-uniquename + --disable-rpc + --host="${CHOST}" + + $(usex amd64 '--with-mutex=x86/gcc-assembly' '') + $(use_enable cxx) + $(use_enable tcl) + $(usex tcl "--with-tcl=${EPREFIX}/usr/$(get_libdir)" '') #" + $(use_enable java) + ) + + if use java; then + myconf+=( + --with-java-prefix="${JAVA_HOME}" + --with-javac-flags="$(java-pkg_javac-args)" + ) + fi + + # the entire testsuite needs the TCL functionality + if use tcl && use test ; then + myconf+=( --enable-test ) + else + myconf+=( --disable-test ) + fi + + # Add linker versions to the symbols. Easier to do, and safer than header file + # mumbo jumbo. + if use userland_GNU; then + append-ldflags -Wl,--default-symver + fi + + ECONF_SOURCE="${S}"/../dist \ + econf "${myconf[@]}" + + sed -e "s,\(^STRIP *=\).*,\1\"true\"," -i Makefile || die +} + +src_install() { + emake \ + DESTDIR="${D}" \ + libdir="${EPREFIX}/usr/$(get_libdir)" \ + STRIP="true" \ + install + + db_src_install_usrbinslot + + db_src_install_headerslot + + db_src_install_doc + + db_src_install_usrlibcleanup + + dodir /usr/sbin + # This file is not always built, and no longer exists as of db-4.8 + if [[ -f "${ED}"/usr/bin/berkeley_db_svc ]] ; then + mv "${ED}"/usr/bin/berkeley_db_svc \ + "${ED}"/usr/sbin/berkeley_db"${SLOT/./}"_svc || die + fi + + if use java; then + java-pkg_regso "${ED}"/usr/"$(get_libdir)"/libdb_java*.so + java-pkg_dojar "${ED}"/usr/"$(get_libdir)"/*.jar + rm -f "${ED}"/usr/"$(get_libdir)"/*.jar + fi +} + +pkg_postinst() { + db_fix_so +} + +pkg_postrm() { + db_fix_so +} diff --git a/sys-libs/db/db-4.5.20_p2-r6.ebuild b/sys-libs/db/db-4.5.20_p2-r6.ebuild new file mode 100644 index 000000000000..5d76d20b0084 --- /dev/null +++ b/sys-libs/db/db-4.5.20_p2-r6.ebuild @@ -0,0 +1,193 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit autotools db flag-o-matic java-pkg-opt-2 multilib + +#Number of official patches +#PATCHNO=`echo ${PV}|sed -e "s,\(.*_p\)\([0-9]*\),\2,"` +PATCHNO="${PV/*.*.*_p}" +if [[ ${PATCHNO} == "${PV}" ]] ; then + MY_PV="${PV}" + MY_P="${P}" + PATCHNO=0 +else + MY_PV="${PV/_p${PATCHNO}}" + MY_P="${PN}-${MY_PV}" +fi + +S="${WORKDIR}/${MY_P}/build_unix" +DESCRIPTION="Oracle Berkeley DB" +HOMEPAGE="http://www.oracle.com/technetwork/database/database-technologies/berkeleydb/overview/index.html" +SRC_URI="http://download.oracle.com/berkeley-db/${MY_P}.tar.gz" +for (( i=1 ; i<=${PATCHNO} ; i++ )) ; do + export SRC_URI="${SRC_URI} http://www.oracle.com/technology/products/berkeley-db/db/update/${MY_PV}/patch.${MY_PV}.${i}" +done + +LICENSE="Sleepycat" +SLOT="$(ver_cut 1-2)" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86" +IUSE="tcl java doc cxx" +RESTRICT="!test? ( test )" + +DEPEND="tcl? ( >=dev-lang/tcl-8.4 ) + java? ( >=virtual/jdk-1.8 )" +RDEPEND="tcl? ( dev-lang/tcl ) + java? ( >=virtual/jre-1.8 )" + +PATCHES=( + "${FILESDIR}"/"${PN}"-4.4-libtool.patch + + # use the includes from the prefix + "${FILESDIR}"/"${PN}"-4.2-jni-check-prefix-first.patch + "${FILESDIR}"/"${PN}"-4.2-listen-to-java-options.patch +) + +# Required to avoid unpack attempt of patches +src_unpack() { + unpack "${MY_P}".tar.gz +} + +src_prepare() { + pushd "${WORKDIR}"/"${MY_P}" &>/dev/null || die + for (( i=1 ; i<=${PATCHNO} ; i++ )) + do + eapply -p0 "${DISTDIR}"/patch."${MY_PV}"."${i}" + done + + default + + sed -e "/^DB_RELEASE_DATE=/s/%B %e, %Y/%Y-%m-%d/" \ + -i dist/RELEASE || die + + # Include the SLOT for Java JAR files + # This supersedes the unused jarlocation patches. + sed -r \ + -e '/jarfile=.*\.jar$/s,(.jar$),-$(LIBVERSION)\1,g' \ + -i dist/Makefile.in || die + + # START of 4.5+earlier specific + # Upstream sucks, they normally concat these + local i j + for j in dist/aclocal{,_java} ; do + pushd ${j} &>/dev/null || die + for i in * ; do + ln -s ${i} ${i%.ac}.m4 || die + done + popd &>/dev/null || die + done + # END of 4.5+earlier specific + pushd dist &>/dev/null || die + rm aclocal/libtool.{m4,ac} || die + sed \ + -e '/AC_PROG_LIBTOOL$/aLT_OUTPUT' \ + -i configure.ac || die + sed \ + -e '/^AC_PATH_TOOL/s/ sh, none/ bash, none/' \ + -i aclocal/programs.m4 || die + + AT_M4DIR="aclocal aclocal_java" eautoreconf + + # Upstream sucks - they do autoconf and THEN replace the version variables. + . ./RELEASE + sed \ + -e "s/__EDIT_DB_VERSION_MAJOR__/$DB_VERSION_MAJOR/g" \ + -e "s/__EDIT_DB_VERSION_MINOR__/$DB_VERSION_MINOR/g" \ + -e "s/__EDIT_DB_VERSION_PATCH__/$DB_VERSION_PATCH/g" \ + -e "s/__EDIT_DB_VERSION_STRING__/$DB_VERSION_STRING/g" \ + -e "s/__EDIT_DB_VERSION_UNIQUE_NAME__/$DB_VERSION_UNIQUE_NAME/g" \ + -e "s/__EDIT_DB_VERSION__/$DB_VERSION/g" \ + -i configure || die + + popd &>/dev/null || die + popd &>/dev/null || die +} + +src_configure() { + # compilation with -O0 fails on amd64, see bug #171231 + if use amd64 ; then + replace-flags -O0 -O2 + is-flagq -O[s123] || append-flags -O2 + fi + + local myconf=( + --enable-compat185 + --enable-o_direct + --without-uniquename + --disable-rpc + --disable-static + --host="${CHOST}" + + $(usex amd64 '--with-mutex=x86/gcc-assembly' '') + $(use_enable cxx) + $(use_enable tcl) + $(usex tcl "--with-tcl=${EPREFIX}/usr/$(get_libdir)" '') #" + $(use_enable java) + ) + + if use java; then + myconf+=( + --with-java-prefix="${JAVA_HOME}" + --with-javac-flags="$(java-pkg_javac-args)" + ) + fi + + # the entire testsuite needs the TCL functionality + if use tcl && use test ; then + myconf+=( --enable-test ) + else + myconf+=( --disable-test ) + fi + + # Add linker versions to the symbols. Easier to do, and safer than header file + # mumbo jumbo. + if use userland_GNU; then + append-ldflags -Wl,--default-symver + fi + + ECONF_SOURCE="${S}"/../dist \ + econf "${myconf[@]}" + + sed -e "s,\(^STRIP *=\).*,\1\"true\"," -i Makefile || die +} + +src_install() { + emake \ + DESTDIR="${D}" \ + libdir="${EPREFIX}/usr/$(get_libdir)" \ + STRIP="true" \ + install + + db_src_install_usrbinslot + + db_src_install_headerslot + + db_src_install_doc + + db_src_install_usrlibcleanup + + dodir /usr/sbin + # This file is not always built, and no longer exists as of db-4.8 + if [[ -f "${ED}"/usr/bin/berkeley_db_svc ]] ; then + mv "${ED}"/usr/bin/berkeley_db_svc \ + "${ED}"/usr/sbin/berkeley_db"${SLOT/./}"_svc || die + fi + + if use java; then + java-pkg_regso "${ED}"/usr/"$(get_libdir)"/libdb_java*.so + java-pkg_dojar "${ED}"/usr/"$(get_libdir)"/*.jar + rm -f "${ED}"/usr/"$(get_libdir)"/*.jar + fi + + # no static libraries + find "${ED}" -name '*.la' -delete || die +} + +pkg_postinst() { + db_fix_so +} + +pkg_postrm() { + db_fix_so +} diff --git a/sys-libs/db/db-4.6.21_p4-r2.ebuild b/sys-libs/db/db-4.6.21_p4-r2.ebuild deleted file mode 100644 index 10a378826ba3..000000000000 --- a/sys-libs/db/db-4.6.21_p4-r2.ebuild +++ /dev/null @@ -1,178 +0,0 @@ -# Copyright 1999-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -inherit autotools db flag-o-matic java-pkg-opt-2 multilib - -#Number of official patches -#PATCHNO=`echo ${PV}|sed -e "s,\(.*_p\)\([0-9]*\),\2,"` -PATCHNO="${PV/*.*.*_p}" -if [[ ${PATCHNO} == "${PV}" ]] ; then - MY_PV="${PV}" - MY_P="${P}" - PATCHNO=0 -else - MY_PV="${PV/_p${PATCHNO}}" - MY_P="${PN}-${MY_PV}" -fi - -S="${WORKDIR}/${MY_P}/build_unix" -DESCRIPTION="Oracle Berkeley DB" -HOMEPAGE="http://www.oracle.com/technetwork/database/database-technologies/berkeleydb/overview/index.html" -SRC_URI="http://download.oracle.com/berkeley-db/${MY_P}.tar.gz" -for (( i=1 ; i<=${PATCHNO} ; i++ )) ; do - export SRC_URI="${SRC_URI} http://www.oracle.com/technology/products/berkeley-db/db/update/${MY_PV}/patch.${MY_PV}.${i}" -done - -LICENSE="Sleepycat" -SLOT="$(ver_cut 1-2)" -KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~s390 sparc x86" -IUSE="tcl java doc cxx" -RESTRICT="!test? ( test )" - -DEPEND="tcl? ( >=dev-lang/tcl-8.4 ) - java? ( >=virtual/jdk-1.4 )" -RDEPEND="tcl? ( dev-lang/tcl ) - java? ( >=virtual/jre-1.4 )" - -PATCHES=( - "${FILESDIR}"/"${PN}"-4.4-libtool.patch - - # use the includes from the prefix - "${FILESDIR}"/"${PN}"-"${SLOT}"-jni-check-prefix-first.patch - "${FILESDIR}"/"${PN}"-4.2-listen-to-java-options.patch -) - -# Required to avoid unpack attempt of patches -src_unpack() { - unpack "${MY_P}".tar.gz -} - -src_prepare() { - pushd "${WORKDIR}"/"${MY_P}" &>/dev/null || die - for (( i=1 ; i<=${PATCHNO} ; i++ )) - do - eapply -p0 "${DISTDIR}"/patch."${MY_PV}"."${i}" - done - - default - - sed -e "/^DB_RELEASE_DATE=/s/%B %e, %Y/%Y-%m-%d/" \ - -i dist/RELEASE || die - - # Include the SLOT for Java JAR files - # This supersedes the unused jarlocation patches. - sed -r \ - -e '/jarfile=.*\.jar$/s,(.jar$),-$(LIBVERSION)\1,g' \ - -i dist/Makefile.in || die - - pushd dist &>/dev/null || die - rm aclocal/libtool.m4 || die - sed \ - -e '/AC_PROG_LIBTOOL$/aLT_OUTPUT' \ - -i configure.ac || die - sed \ - -e '/^AC_PATH_TOOL/s/ sh, none/ bash, none/' \ - -i aclocal/programs.m4 || die - - AT_M4DIR="aclocal aclocal_java" eautoreconf - - # Upstream sucks - they do autoconf and THEN replace the version variables. - . ./RELEASE - sed \ - -e "s/__EDIT_DB_VERSION_MAJOR__/$DB_VERSION_MAJOR/g" \ - -e "s/__EDIT_DB_VERSION_MINOR__/$DB_VERSION_MINOR/g" \ - -e "s/__EDIT_DB_VERSION_PATCH__/$DB_VERSION_PATCH/g" \ - -e "s/__EDIT_DB_VERSION_STRING__/$DB_VERSION_STRING/g" \ - -e "s/__EDIT_DB_VERSION_UNIQUE_NAME__/$DB_VERSION_UNIQUE_NAME/g" \ - -e "s/__EDIT_DB_VERSION__/$DB_VERSION/g" \ - -i configure || die - - popd &>/dev/null || die - popd &>/dev/null || die -} - -src_configure() { - # compilation with -O0 fails on amd64, see bug #171231 - if use amd64 ; then - replace-flags -O0 -O2 - is-flagq -O[s123] || append-flags -O2 - fi - - local myconf=( - --enable-compat185 - --enable-o_direct - --without-uniquename - --disable-rpc - --host="${CHOST}" - - $(usex amd64 '--with-mutex=x86/gcc-assembly' '') - $(use_enable cxx) - $(use_enable tcl) - $(usex tcl "--with-tcl=${EPREFIX}/usr/$(get_libdir)" '') #" - $(use_enable java) - ) - - if use java; then - myconf+=( - --with-java-prefix="${JAVA_HOME}" - --with-javac-flags="$(java-pkg_javac-args)" - ) - fi - - # the entire testsuite needs the TCL functionality - if use tcl && use test ; then - myconf+=( --enable-test ) - else - myconf+=( --disable-test ) - fi - - # Add linker versions to the symbols. Easier to do, and safer than header file - # mumbo jumbo. - if use userland_GNU; then - append-ldflags -Wl,--default-symver - fi - - ECONF_SOURCE="${S}"/../dist \ - econf "${myconf[@]}" - - sed -e "s,\(^STRIP *=\).*,\1\"true\"," -i Makefile || die -} - -src_install() { - emake \ - DESTDIR="${D}" \ - libdir="${EPREFIX}/usr/$(get_libdir)" \ - STRIP="true" \ - install - - db_src_install_usrbinslot - - db_src_install_headerslot - - db_src_install_doc - - db_src_install_usrlibcleanup - - dodir /usr/sbin - # This file is not always built, and no longer exists as of db-4.8 - if [[ -f "${ED}"/usr/bin/berkeley_db_svc ]] ; then - mv "${ED}"/usr/bin/berkeley_db_svc \ - "${ED}"/usr/sbin/berkeley_db"${SLOT/./}"_svc || die - fi - - if use java; then - java-pkg_regso "${ED}"/usr/"$(get_libdir)"/libdb_java*.so - java-pkg_dojar "${ED}"/usr/"$(get_libdir)"/*.jar - rm -f "${ED}"/usr/"$(get_libdir)"/*.jar - fi -} - -pkg_postinst() { - db_fix_so -} - -pkg_postrm() { - db_fix_so -} diff --git a/sys-libs/db/db-4.6.21_p4-r3.ebuild b/sys-libs/db/db-4.6.21_p4-r3.ebuild deleted file mode 100644 index e424bff8ea0a..000000000000 --- a/sys-libs/db/db-4.6.21_p4-r3.ebuild +++ /dev/null @@ -1,182 +0,0 @@ -# Copyright 1999-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -inherit autotools db flag-o-matic java-pkg-opt-2 multilib - -#Number of official patches -#PATCHNO=`echo ${PV}|sed -e "s,\(.*_p\)\([0-9]*\),\2,"` -PATCHNO="${PV/*.*.*_p}" -if [[ ${PATCHNO} == "${PV}" ]] ; then - MY_PV="${PV}" - MY_P="${P}" - PATCHNO=0 -else - MY_PV="${PV/_p${PATCHNO}}" - MY_P="${PN}-${MY_PV}" -fi - -S="${WORKDIR}/${MY_P}/build_unix" -DESCRIPTION="Oracle Berkeley DB" -HOMEPAGE="http://www.oracle.com/technetwork/database/database-technologies/berkeleydb/overview/index.html" -SRC_URI="http://download.oracle.com/berkeley-db/${MY_P}.tar.gz" -for (( i=1 ; i<=${PATCHNO} ; i++ )) ; do - export SRC_URI="${SRC_URI} http://www.oracle.com/technology/products/berkeley-db/db/update/${MY_PV}/patch.${MY_PV}.${i}" -done - -LICENSE="Sleepycat" -SLOT="$(ver_cut 1-2)" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86" -IUSE="tcl java doc cxx" -RESTRICT="!test? ( test )" - -DEPEND="tcl? ( >=dev-lang/tcl-8.4 ) - java? ( >=virtual/jdk-1.4 )" -RDEPEND="tcl? ( dev-lang/tcl ) - java? ( >=virtual/jre-1.4 )" - -PATCHES=( - "${FILESDIR}"/"${PN}"-4.4-libtool.patch - - # use the includes from the prefix - "${FILESDIR}"/"${PN}"-"${SLOT}"-jni-check-prefix-first.patch - "${FILESDIR}"/"${PN}"-4.2-listen-to-java-options.patch -) - -# Required to avoid unpack attempt of patches -src_unpack() { - unpack "${MY_P}".tar.gz -} - -src_prepare() { - pushd "${WORKDIR}"/"${MY_P}" &>/dev/null || die - for (( i=1 ; i<=${PATCHNO} ; i++ )) - do - eapply -p0 "${DISTDIR}"/patch."${MY_PV}"."${i}" - done - - default - - sed -e "/^DB_RELEASE_DATE=/s/%B %e, %Y/%Y-%m-%d/" \ - -i dist/RELEASE || die - - # Include the SLOT for Java JAR files - # This supersedes the unused jarlocation patches. - sed -r \ - -e '/jarfile=.*\.jar$/s,(.jar$),-$(LIBVERSION)\1,g' \ - -i dist/Makefile.in || die - - pushd dist &>/dev/null || die - rm aclocal/libtool.m4 || die - sed \ - -e '/AC_PROG_LIBTOOL$/aLT_OUTPUT' \ - -i configure.ac || die - sed \ - -e '/^AC_PATH_TOOL/s/ sh, none/ bash, none/' \ - -i aclocal/programs.m4 || die - - AT_M4DIR="aclocal aclocal_java" eautoreconf - - # Upstream sucks - they do autoconf and THEN replace the version variables. - . ./RELEASE - sed \ - -e "s/__EDIT_DB_VERSION_MAJOR__/$DB_VERSION_MAJOR/g" \ - -e "s/__EDIT_DB_VERSION_MINOR__/$DB_VERSION_MINOR/g" \ - -e "s/__EDIT_DB_VERSION_PATCH__/$DB_VERSION_PATCH/g" \ - -e "s/__EDIT_DB_VERSION_STRING__/$DB_VERSION_STRING/g" \ - -e "s/__EDIT_DB_VERSION_UNIQUE_NAME__/$DB_VERSION_UNIQUE_NAME/g" \ - -e "s/__EDIT_DB_VERSION__/$DB_VERSION/g" \ - -i configure || die - - popd &>/dev/null || die - popd &>/dev/null || die -} - -src_configure() { - # compilation with -O0 fails on amd64, see bug #171231 - if use amd64 ; then - replace-flags -O0 -O2 - is-flagq -O[s123] || append-flags -O2 - fi - - local myconf=( - --enable-compat185 - --enable-o_direct - --without-uniquename - --disable-rpc - --disable-static - --host="${CHOST}" - - $(usex amd64 '--with-mutex=x86/gcc-assembly' '') - $(use_enable cxx) - $(use_enable tcl) - $(usex tcl "--with-tcl=${EPREFIX}/usr/$(get_libdir)" '') #" - $(use_enable java) - ) - - if use java; then - myconf+=( - --with-java-prefix="${JAVA_HOME}" - --with-javac-flags="$(java-pkg_javac-args)" - ) - fi - - # the entire testsuite needs the TCL functionality - if use tcl && use test ; then - myconf+=( --enable-test ) - else - myconf+=( --disable-test ) - fi - - # Add linker versions to the symbols. Easier to do, and safer than header file - # mumbo jumbo. - if use userland_GNU; then - append-ldflags -Wl,--default-symver - fi - - ECONF_SOURCE="${S}"/../dist \ - econf "${myconf[@]}" - - sed -e "s,\(^STRIP *=\).*,\1\"true\"," -i Makefile || die -} - -src_install() { - emake \ - DESTDIR="${D}" \ - libdir="${EPREFIX}/usr/$(get_libdir)" \ - STRIP="true" \ - install - - db_src_install_usrbinslot - - db_src_install_headerslot - - db_src_install_doc - - db_src_install_usrlibcleanup - - dodir /usr/sbin - # This file is not always built, and no longer exists as of db-4.8 - if [[ -f "${ED}"/usr/bin/berkeley_db_svc ]] ; then - mv "${ED}"/usr/bin/berkeley_db_svc \ - "${ED}"/usr/sbin/berkeley_db"${SLOT/./}"_svc || die - fi - - if use java; then - java-pkg_regso "${ED}"/usr/"$(get_libdir)"/libdb_java*.so - java-pkg_dojar "${ED}"/usr/"$(get_libdir)"/*.jar - rm -f "${ED}"/usr/"$(get_libdir)"/*.jar - fi - - # no static libraries - find "${ED}" -name '*.la' -delete || die -} - -pkg_postinst() { - db_fix_so -} - -pkg_postrm() { - db_fix_so -} diff --git a/sys-libs/db/db-4.6.21_p4-r4.ebuild b/sys-libs/db/db-4.6.21_p4-r4.ebuild new file mode 100644 index 000000000000..d753b5db0f64 --- /dev/null +++ b/sys-libs/db/db-4.6.21_p4-r4.ebuild @@ -0,0 +1,178 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit autotools db flag-o-matic java-pkg-opt-2 multilib + +#Number of official patches +#PATCHNO=`echo ${PV}|sed -e "s,\(.*_p\)\([0-9]*\),\2,"` +PATCHNO="${PV/*.*.*_p}" +if [[ ${PATCHNO} == "${PV}" ]] ; then + MY_PV="${PV}" + MY_P="${P}" + PATCHNO=0 +else + MY_PV="${PV/_p${PATCHNO}}" + MY_P="${PN}-${MY_PV}" +fi + +S="${WORKDIR}/${MY_P}/build_unix" +DESCRIPTION="Oracle Berkeley DB" +HOMEPAGE="http://www.oracle.com/technetwork/database/database-technologies/berkeleydb/overview/index.html" +SRC_URI="http://download.oracle.com/berkeley-db/${MY_P}.tar.gz" +for (( i=1 ; i<=${PATCHNO} ; i++ )) ; do + export SRC_URI="${SRC_URI} http://www.oracle.com/technology/products/berkeley-db/db/update/${MY_PV}/patch.${MY_PV}.${i}" +done + +LICENSE="Sleepycat" +SLOT="$(ver_cut 1-2)" +KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~s390 sparc x86" +IUSE="tcl java doc cxx" +RESTRICT="!test? ( test )" + +DEPEND="tcl? ( >=dev-lang/tcl-8.4 ) + java? ( >=virtual/jdk-1.8 )" +RDEPEND="tcl? ( dev-lang/tcl ) + java? ( >=virtual/jre-1.8 )" + +PATCHES=( + "${FILESDIR}"/"${PN}"-4.4-libtool.patch + + # use the includes from the prefix + "${FILESDIR}"/"${PN}"-"${SLOT}"-jni-check-prefix-first.patch + "${FILESDIR}"/"${PN}"-4.2-listen-to-java-options.patch +) + +# Required to avoid unpack attempt of patches +src_unpack() { + unpack "${MY_P}".tar.gz +} + +src_prepare() { + pushd "${WORKDIR}"/"${MY_P}" &>/dev/null || die + for (( i=1 ; i<=${PATCHNO} ; i++ )) + do + eapply -p0 "${DISTDIR}"/patch."${MY_PV}"."${i}" + done + + default + + sed -e "/^DB_RELEASE_DATE=/s/%B %e, %Y/%Y-%m-%d/" \ + -i dist/RELEASE || die + + # Include the SLOT for Java JAR files + # This supersedes the unused jarlocation patches. + sed -r \ + -e '/jarfile=.*\.jar$/s,(.jar$),-$(LIBVERSION)\1,g' \ + -i dist/Makefile.in || die + + pushd dist &>/dev/null || die + rm aclocal/libtool.m4 || die + sed \ + -e '/AC_PROG_LIBTOOL$/aLT_OUTPUT' \ + -i configure.ac || die + sed \ + -e '/^AC_PATH_TOOL/s/ sh, none/ bash, none/' \ + -i aclocal/programs.m4 || die + + AT_M4DIR="aclocal aclocal_java" eautoreconf + + # Upstream sucks - they do autoconf and THEN replace the version variables. + . ./RELEASE + sed \ + -e "s/__EDIT_DB_VERSION_MAJOR__/$DB_VERSION_MAJOR/g" \ + -e "s/__EDIT_DB_VERSION_MINOR__/$DB_VERSION_MINOR/g" \ + -e "s/__EDIT_DB_VERSION_PATCH__/$DB_VERSION_PATCH/g" \ + -e "s/__EDIT_DB_VERSION_STRING__/$DB_VERSION_STRING/g" \ + -e "s/__EDIT_DB_VERSION_UNIQUE_NAME__/$DB_VERSION_UNIQUE_NAME/g" \ + -e "s/__EDIT_DB_VERSION__/$DB_VERSION/g" \ + -i configure || die + + popd &>/dev/null || die + popd &>/dev/null || die +} + +src_configure() { + # compilation with -O0 fails on amd64, see bug #171231 + if use amd64 ; then + replace-flags -O0 -O2 + is-flagq -O[s123] || append-flags -O2 + fi + + local myconf=( + --enable-compat185 + --enable-o_direct + --without-uniquename + --disable-rpc + --host="${CHOST}" + + $(usex amd64 '--with-mutex=x86/gcc-assembly' '') + $(use_enable cxx) + $(use_enable tcl) + $(usex tcl "--with-tcl=${EPREFIX}/usr/$(get_libdir)" '') #" + $(use_enable java) + ) + + if use java; then + myconf+=( + --with-java-prefix="${JAVA_HOME}" + --with-javac-flags="$(java-pkg_javac-args)" + ) + fi + + # the entire testsuite needs the TCL functionality + if use tcl && use test ; then + myconf+=( --enable-test ) + else + myconf+=( --disable-test ) + fi + + # Add linker versions to the symbols. Easier to do, and safer than header file + # mumbo jumbo. + if use userland_GNU; then + append-ldflags -Wl,--default-symver + fi + + ECONF_SOURCE="${S}"/../dist \ + econf "${myconf[@]}" + + sed -e "s,\(^STRIP *=\).*,\1\"true\"," -i Makefile || die +} + +src_install() { + emake \ + DESTDIR="${D}" \ + libdir="${EPREFIX}/usr/$(get_libdir)" \ + STRIP="true" \ + install + + db_src_install_usrbinslot + + db_src_install_headerslot + + db_src_install_doc + + db_src_install_usrlibcleanup + + dodir /usr/sbin + # This file is not always built, and no longer exists as of db-4.8 + if [[ -f "${ED}"/usr/bin/berkeley_db_svc ]] ; then + mv "${ED}"/usr/bin/berkeley_db_svc \ + "${ED}"/usr/sbin/berkeley_db"${SLOT/./}"_svc || die + fi + + if use java; then + java-pkg_regso "${ED}"/usr/"$(get_libdir)"/libdb_java*.so + java-pkg_dojar "${ED}"/usr/"$(get_libdir)"/*.jar + rm -f "${ED}"/usr/"$(get_libdir)"/*.jar + fi +} + +pkg_postinst() { + db_fix_so +} + +pkg_postrm() { + db_fix_so +} diff --git a/sys-libs/db/db-4.6.21_p4-r5.ebuild b/sys-libs/db/db-4.6.21_p4-r5.ebuild new file mode 100644 index 000000000000..d69c3c32c2a1 --- /dev/null +++ b/sys-libs/db/db-4.6.21_p4-r5.ebuild @@ -0,0 +1,182 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit autotools db flag-o-matic java-pkg-opt-2 multilib + +#Number of official patches +#PATCHNO=`echo ${PV}|sed -e "s,\(.*_p\)\([0-9]*\),\2,"` +PATCHNO="${PV/*.*.*_p}" +if [[ ${PATCHNO} == "${PV}" ]] ; then + MY_PV="${PV}" + MY_P="${P}" + PATCHNO=0 +else + MY_PV="${PV/_p${PATCHNO}}" + MY_P="${PN}-${MY_PV}" +fi + +S="${WORKDIR}/${MY_P}/build_unix" +DESCRIPTION="Oracle Berkeley DB" +HOMEPAGE="http://www.oracle.com/technetwork/database/database-technologies/berkeleydb/overview/index.html" +SRC_URI="http://download.oracle.com/berkeley-db/${MY_P}.tar.gz" +for (( i=1 ; i<=${PATCHNO} ; i++ )) ; do + export SRC_URI="${SRC_URI} http://www.oracle.com/technology/products/berkeley-db/db/update/${MY_PV}/patch.${MY_PV}.${i}" +done + +LICENSE="Sleepycat" +SLOT="$(ver_cut 1-2)" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86" +IUSE="tcl java doc cxx" +RESTRICT="!test? ( test )" + +DEPEND="tcl? ( >=dev-lang/tcl-8.4 ) + java? ( >=virtual/jdk-1.8 )" +RDEPEND="tcl? ( dev-lang/tcl ) + java? ( >=virtual/jre-1.8 )" + +PATCHES=( + "${FILESDIR}"/"${PN}"-4.4-libtool.patch + + # use the includes from the prefix + "${FILESDIR}"/"${PN}"-"${SLOT}"-jni-check-prefix-first.patch + "${FILESDIR}"/"${PN}"-4.2-listen-to-java-options.patch +) + +# Required to avoid unpack attempt of patches +src_unpack() { + unpack "${MY_P}".tar.gz +} + +src_prepare() { + pushd "${WORKDIR}"/"${MY_P}" &>/dev/null || die + for (( i=1 ; i<=${PATCHNO} ; i++ )) + do + eapply -p0 "${DISTDIR}"/patch."${MY_PV}"."${i}" + done + + default + + sed -e "/^DB_RELEASE_DATE=/s/%B %e, %Y/%Y-%m-%d/" \ + -i dist/RELEASE || die + + # Include the SLOT for Java JAR files + # This supersedes the unused jarlocation patches. + sed -r \ + -e '/jarfile=.*\.jar$/s,(.jar$),-$(LIBVERSION)\1,g' \ + -i dist/Makefile.in || die + + pushd dist &>/dev/null || die + rm aclocal/libtool.m4 || die + sed \ + -e '/AC_PROG_LIBTOOL$/aLT_OUTPUT' \ + -i configure.ac || die + sed \ + -e '/^AC_PATH_TOOL/s/ sh, none/ bash, none/' \ + -i aclocal/programs.m4 || die + + AT_M4DIR="aclocal aclocal_java" eautoreconf + + # Upstream sucks - they do autoconf and THEN replace the version variables. + . ./RELEASE + sed \ + -e "s/__EDIT_DB_VERSION_MAJOR__/$DB_VERSION_MAJOR/g" \ + -e "s/__EDIT_DB_VERSION_MINOR__/$DB_VERSION_MINOR/g" \ + -e "s/__EDIT_DB_VERSION_PATCH__/$DB_VERSION_PATCH/g" \ + -e "s/__EDIT_DB_VERSION_STRING__/$DB_VERSION_STRING/g" \ + -e "s/__EDIT_DB_VERSION_UNIQUE_NAME__/$DB_VERSION_UNIQUE_NAME/g" \ + -e "s/__EDIT_DB_VERSION__/$DB_VERSION/g" \ + -i configure || die + + popd &>/dev/null || die + popd &>/dev/null || die +} + +src_configure() { + # compilation with -O0 fails on amd64, see bug #171231 + if use amd64 ; then + replace-flags -O0 -O2 + is-flagq -O[s123] || append-flags -O2 + fi + + local myconf=( + --enable-compat185 + --enable-o_direct + --without-uniquename + --disable-rpc + --disable-static + --host="${CHOST}" + + $(usex amd64 '--with-mutex=x86/gcc-assembly' '') + $(use_enable cxx) + $(use_enable tcl) + $(usex tcl "--with-tcl=${EPREFIX}/usr/$(get_libdir)" '') #" + $(use_enable java) + ) + + if use java; then + myconf+=( + --with-java-prefix="${JAVA_HOME}" + --with-javac-flags="$(java-pkg_javac-args)" + ) + fi + + # the entire testsuite needs the TCL functionality + if use tcl && use test ; then + myconf+=( --enable-test ) + else + myconf+=( --disable-test ) + fi + + # Add linker versions to the symbols. Easier to do, and safer than header file + # mumbo jumbo. + if use userland_GNU; then + append-ldflags -Wl,--default-symver + fi + + ECONF_SOURCE="${S}"/../dist \ + econf "${myconf[@]}" + + sed -e "s,\(^STRIP *=\).*,\1\"true\"," -i Makefile || die +} + +src_install() { + emake \ + DESTDIR="${D}" \ + libdir="${EPREFIX}/usr/$(get_libdir)" \ + STRIP="true" \ + install + + db_src_install_usrbinslot + + db_src_install_headerslot + + db_src_install_doc + + db_src_install_usrlibcleanup + + dodir /usr/sbin + # This file is not always built, and no longer exists as of db-4.8 + if [[ -f "${ED}"/usr/bin/berkeley_db_svc ]] ; then + mv "${ED}"/usr/bin/berkeley_db_svc \ + "${ED}"/usr/sbin/berkeley_db"${SLOT/./}"_svc || die + fi + + if use java; then + java-pkg_regso "${ED}"/usr/"$(get_libdir)"/libdb_java*.so + java-pkg_dojar "${ED}"/usr/"$(get_libdir)"/*.jar + rm -f "${ED}"/usr/"$(get_libdir)"/*.jar + fi + + # no static libraries + find "${ED}" -name '*.la' -delete || die +} + +pkg_postinst() { + db_fix_so +} + +pkg_postrm() { + db_fix_so +} diff --git a/sys-libs/db/db-4.7.25_p4-r2.ebuild b/sys-libs/db/db-4.7.25_p4-r2.ebuild deleted file mode 100644 index 4f6c58ec0a7a..000000000000 --- a/sys-libs/db/db-4.7.25_p4-r2.ebuild +++ /dev/null @@ -1,185 +0,0 @@ -# Copyright 1999-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -inherit autotools db flag-o-matic java-pkg-opt-2 multilib - -#Number of official patches -#PATCHNO=`echo ${PV}|sed -e "s,\(.*_p\)\([0-9]*\),\2,"` -PATCHNO="${PV/*.*.*_p}" -if [[ ${PATCHNO} == "${PV}" ]] ; then - MY_PV="${PV}" - MY_P="${P}" - PATCHNO=0 -else - MY_PV="${PV/_p${PATCHNO}}" - MY_P="${PN}-${MY_PV}" -fi - -RESTRICT="!test? ( test )" - -S="${WORKDIR}/${MY_P}/build_unix" -DESCRIPTION="Oracle Berkeley DB" -HOMEPAGE="http://www.oracle.com/technetwork/database/database-technologies/berkeleydb/overview/index.html" -SRC_URI="http://download.oracle.com/berkeley-db/${MY_P}.tar.gz" -for (( i=1 ; i<=${PATCHNO} ; i++ )) ; do - export SRC_URI="${SRC_URI} http://www.oracle.com/technology/products/berkeley-db/db/update/${MY_PV}/patch.${MY_PV}.${i}" -done - -LICENSE="Sleepycat" -SLOT="$(ver_cut 1-2)" -KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ppc ppc64 ~s390 sparc x86" -IUSE="doc java cxx tcl test" - -# the entire testsuite needs the TCL functionality -DEPEND="tcl? ( >=dev-lang/tcl-8.4 ) - test? ( >=dev-lang/tcl-8.4 ) - java? ( >=virtual/jdk-1.5 )" -RDEPEND="tcl? ( dev-lang/tcl ) - java? ( >=virtual/jre-1.5 )" - -PATCHES=( - "${FILESDIR}"/"${PN}"-4.4-libtool.patch - - # use the includes from the prefix - "${FILESDIR}"/"${PN}"-4.6-jni-check-prefix-first.patch - "${FILESDIR}"/"${PN}"-4.2-listen-to-java-options.patch -) - -# Required to avoid unpack attempt of patches -src_unpack() { - unpack "${MY_P}".tar.gz -} - -src_prepare() { - pushd "${WORKDIR}"/"${MY_P}" &>/dev/null || die - for (( i=1 ; i<=${PATCHNO} ; i++ )) - do - eapply -p0 "${DISTDIR}"/patch."${MY_PV}"."${i}" - done - - default - - sed -e "/^DB_RELEASE_DATE=/s/%B %e, %Y/%Y-%m-%d/" \ - -i dist/RELEASE || die - - # Include the SLOT for Java JAR files - # This supersedes the unused jarlocation patches. - sed -r \ - -e '/jarfile=.*\.jar$/s,(.jar$),-$(LIBVERSION)\1,g' \ - -i dist/Makefile.in || die - - pushd dist &>/dev/null || die - rm aclocal/libtool.m4 || die - sed \ - -e '/AC_PROG_LIBTOOL$/aLT_OUTPUT' \ - -i configure.ac || die - sed \ - -e '/^AC_PATH_TOOL/s/ sh, none/ bash, none/' \ - -i aclocal/programs.m4 || die - - AT_M4DIR="aclocal aclocal_java" eautoreconf - - # Upstream sucks - they do autoconf and THEN replace the version variables. - . ./RELEASE - sed \ - -e "s/__EDIT_DB_VERSION_MAJOR__/$DB_VERSION_MAJOR/g" \ - -e "s/__EDIT_DB_VERSION_MINOR__/$DB_VERSION_MINOR/g" \ - -e "s/__EDIT_DB_VERSION_PATCH__/$DB_VERSION_PATCH/g" \ - -e "s/__EDIT_DB_VERSION_STRING__/$DB_VERSION_STRING/g" \ - -e "s/__EDIT_DB_VERSION_UNIQUE_NAME__/$DB_VERSION_UNIQUE_NAME/g" \ - -e "s/__EDIT_DB_VERSION__/$DB_VERSION/g" \ - -i configure || die - - popd &>/dev/null || die - popd &>/dev/null || die -} - -src_configure() { - # compilation with -O0 fails on amd64, see bug #171231 - if use amd64 ; then - replace-flags -O0 -O2 - is-flagq -O[s123] || append-flags -O2 - fi - - local myconf=( - --enable-compat185 - --enable-o_direct - --without-uniquename - --disable-rpc - - $(usex amd64 '--with-mutex=x86/gcc-assembly' '') - $(use_enable cxx) - $(use_enable tcl) - $(usex tcl "--with-tcl=${EPREFIX}/usr/$(get_libdir)" '') #" - $(use_enable java) - $(use_enable test) - ) - - if use java; then - myconf+=( - --with-java-prefix="${JAVA_HOME}" - --with-javac-flags="$(java-pkg_javac-args)" - ) - fi - - # Bug #270851: test needs TCL support - if use tcl && use test ; then - myconf+=( --enable-test ) - else - myconf+=( --disable-test ) - fi - - # Add linker versions to the symbols. Easier to do, and safer than header file - # mumbo jumbo. - if use userland_GNU ; then - append-ldflags -Wl,--default-symver - fi - - ECONF_SOURCE="${S}"/../dist \ - STRIP="true" \ - econf "${myconf[@]}" - - # The embedded assembly on ARM does not work on newer hardware - # so you CANNOT use --with-mutex=ARM/gcc-assembly anymore. - # Specifically, it uses the SWPB op, which was deprecated: - # http://www.keil.com/support/man/docs/armasm/armasm_dom1361289909499.htm - - # The op ALSO cannot be used in ARM-Thumb mode. - # Trust the compiler instead. - # >=db-6.1 uses LDREX instead. -} - -src_install() { - emake DESTDIR="${D}" install - - db_src_install_usrbinslot - - db_src_install_headerslot - - db_src_install_doc - - db_src_install_usrlibcleanup - - dodir /usr/sbin - # This file is not always built, and no longer exists as of db-4.8 - if [[ -f "${ED}"/usr/bin/berkeley_db_svc ]] ; then - mv "${ED}"/usr/bin/berkeley_db_svc \ - "${ED}"/usr/sbin/berkeley_db"${SLOT/./}"_svc || die - fi - - if use java; then - java-pkg_regso "${ED}"/usr/"$(get_libdir)"/libdb_java*.so - java-pkg_dojar "${ED}"/usr/"$(get_libdir)"/*.jar - rm -f "${ED}"/usr/"$(get_libdir)"/*.jar - fi -} - -pkg_postinst() { - db_fix_so -} - -pkg_postrm() { - db_fix_so -} diff --git a/sys-libs/db/db-4.7.25_p4-r3.ebuild b/sys-libs/db/db-4.7.25_p4-r3.ebuild deleted file mode 100644 index 791f144c7d93..000000000000 --- a/sys-libs/db/db-4.7.25_p4-r3.ebuild +++ /dev/null @@ -1,189 +0,0 @@ -# Copyright 1999-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -inherit autotools db flag-o-matic java-pkg-opt-2 multilib - -#Number of official patches -#PATCHNO=`echo ${PV}|sed -e "s,\(.*_p\)\([0-9]*\),\2,"` -PATCHNO="${PV/*.*.*_p}" -if [[ ${PATCHNO} == "${PV}" ]] ; then - MY_PV="${PV}" - MY_P="${P}" - PATCHNO=0 -else - MY_PV="${PV/_p${PATCHNO}}" - MY_P="${PN}-${MY_PV}" -fi - -RESTRICT="!test? ( test )" - -S="${WORKDIR}/${MY_P}/build_unix" -DESCRIPTION="Oracle Berkeley DB" -HOMEPAGE="http://www.oracle.com/technetwork/database/database-technologies/berkeleydb/overview/index.html" -SRC_URI="http://download.oracle.com/berkeley-db/${MY_P}.tar.gz" -for (( i=1 ; i<=${PATCHNO} ; i++ )) ; do - export SRC_URI="${SRC_URI} http://www.oracle.com/technology/products/berkeley-db/db/update/${MY_PV}/patch.${MY_PV}.${i}" -done - -LICENSE="Sleepycat" -SLOT="$(ver_cut 1-2)" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~ppc ~ppc64 ~s390 ~sparc ~x86" -IUSE="doc java cxx tcl test" - -# the entire testsuite needs the TCL functionality -DEPEND="tcl? ( >=dev-lang/tcl-8.4 ) - test? ( >=dev-lang/tcl-8.4 ) - java? ( >=virtual/jdk-1.5 )" -RDEPEND="tcl? ( dev-lang/tcl ) - java? ( >=virtual/jre-1.5 )" - -PATCHES=( - "${FILESDIR}"/"${PN}"-4.4-libtool.patch - - # use the includes from the prefix - "${FILESDIR}"/"${PN}"-4.6-jni-check-prefix-first.patch - "${FILESDIR}"/"${PN}"-4.2-listen-to-java-options.patch -) - -# Required to avoid unpack attempt of patches -src_unpack() { - unpack "${MY_P}".tar.gz -} - -src_prepare() { - pushd "${WORKDIR}"/"${MY_P}" &>/dev/null || die - for (( i=1 ; i<=${PATCHNO} ; i++ )) - do - eapply -p0 "${DISTDIR}"/patch."${MY_PV}"."${i}" - done - - default - - sed -e "/^DB_RELEASE_DATE=/s/%B %e, %Y/%Y-%m-%d/" \ - -i dist/RELEASE || die - - # Include the SLOT for Java JAR files - # This supersedes the unused jarlocation patches. - sed -r \ - -e '/jarfile=.*\.jar$/s,(.jar$),-$(LIBVERSION)\1,g' \ - -i dist/Makefile.in || die - - pushd dist &>/dev/null || die - rm aclocal/libtool.m4 || die - sed \ - -e '/AC_PROG_LIBTOOL$/aLT_OUTPUT' \ - -i configure.ac || die - sed \ - -e '/^AC_PATH_TOOL/s/ sh, none/ bash, none/' \ - -i aclocal/programs.m4 || die - - AT_M4DIR="aclocal aclocal_java" eautoreconf - - # Upstream sucks - they do autoconf and THEN replace the version variables. - . ./RELEASE - sed \ - -e "s/__EDIT_DB_VERSION_MAJOR__/$DB_VERSION_MAJOR/g" \ - -e "s/__EDIT_DB_VERSION_MINOR__/$DB_VERSION_MINOR/g" \ - -e "s/__EDIT_DB_VERSION_PATCH__/$DB_VERSION_PATCH/g" \ - -e "s/__EDIT_DB_VERSION_STRING__/$DB_VERSION_STRING/g" \ - -e "s/__EDIT_DB_VERSION_UNIQUE_NAME__/$DB_VERSION_UNIQUE_NAME/g" \ - -e "s/__EDIT_DB_VERSION__/$DB_VERSION/g" \ - -i configure || die - - popd &>/dev/null || die - popd &>/dev/null || die -} - -src_configure() { - # compilation with -O0 fails on amd64, see bug #171231 - if use amd64 ; then - replace-flags -O0 -O2 - is-flagq -O[s123] || append-flags -O2 - fi - - local myconf=( - --enable-compat185 - --enable-o_direct - --without-uniquename - --disable-rpc - --disable-static - - $(usex amd64 '--with-mutex=x86/gcc-assembly' '') - $(use_enable cxx) - $(use_enable tcl) - $(usex tcl "--with-tcl=${EPREFIX}/usr/$(get_libdir)" '') #" - $(use_enable java) - $(use_enable test) - ) - - if use java; then - myconf+=( - --with-java-prefix="${JAVA_HOME}" - --with-javac-flags="$(java-pkg_javac-args)" - ) - fi - - # Bug #270851: test needs TCL support - if use tcl && use test ; then - myconf+=( --enable-test ) - else - myconf+=( --disable-test ) - fi - - # Add linker versions to the symbols. Easier to do, and safer than header file - # mumbo jumbo. - if use userland_GNU ; then - append-ldflags -Wl,--default-symver - fi - - ECONF_SOURCE="${S}"/../dist \ - STRIP="true" \ - econf "${myconf[@]}" - - # The embedded assembly on ARM does not work on newer hardware - # so you CANNOT use --with-mutex=ARM/gcc-assembly anymore. - # Specifically, it uses the SWPB op, which was deprecated: - # http://www.keil.com/support/man/docs/armasm/armasm_dom1361289909499.htm - - # The op ALSO cannot be used in ARM-Thumb mode. - # Trust the compiler instead. - # >=db-6.1 uses LDREX instead. -} - -src_install() { - emake DESTDIR="${D}" install - - db_src_install_usrbinslot - - db_src_install_headerslot - - db_src_install_doc - - db_src_install_usrlibcleanup - - dodir /usr/sbin - # This file is not always built, and no longer exists as of db-4.8 - if [[ -f "${ED}"/usr/bin/berkeley_db_svc ]] ; then - mv "${ED}"/usr/bin/berkeley_db_svc \ - "${ED}"/usr/sbin/berkeley_db"${SLOT/./}"_svc || die - fi - - if use java; then - java-pkg_regso "${ED}"/usr/"$(get_libdir)"/libdb_java*.so - java-pkg_dojar "${ED}"/usr/"$(get_libdir)"/*.jar - rm -f "${ED}"/usr/"$(get_libdir)"/*.jar - fi - - # no static libraries - find "${ED}" -name '*.la' -delete || die -} - -pkg_postinst() { - db_fix_so -} - -pkg_postrm() { - db_fix_so -} diff --git a/sys-libs/db/db-4.7.25_p4-r4.ebuild b/sys-libs/db/db-4.7.25_p4-r4.ebuild new file mode 100644 index 000000000000..7b7ac90fe7a2 --- /dev/null +++ b/sys-libs/db/db-4.7.25_p4-r4.ebuild @@ -0,0 +1,185 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit autotools db flag-o-matic java-pkg-opt-2 multilib + +#Number of official patches +#PATCHNO=`echo ${PV}|sed -e "s,\(.*_p\)\([0-9]*\),\2,"` +PATCHNO="${PV/*.*.*_p}" +if [[ ${PATCHNO} == "${PV}" ]] ; then + MY_PV="${PV}" + MY_P="${P}" + PATCHNO=0 +else + MY_PV="${PV/_p${PATCHNO}}" + MY_P="${PN}-${MY_PV}" +fi + +RESTRICT="!test? ( test )" + +S="${WORKDIR}/${MY_P}/build_unix" +DESCRIPTION="Oracle Berkeley DB" +HOMEPAGE="http://www.oracle.com/technetwork/database/database-technologies/berkeleydb/overview/index.html" +SRC_URI="http://download.oracle.com/berkeley-db/${MY_P}.tar.gz" +for (( i=1 ; i<=${PATCHNO} ; i++ )) ; do + export SRC_URI="${SRC_URI} http://www.oracle.com/technology/products/berkeley-db/db/update/${MY_PV}/patch.${MY_PV}.${i}" +done + +LICENSE="Sleepycat" +SLOT="$(ver_cut 1-2)" +KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ppc ppc64 ~s390 sparc x86" +IUSE="doc java cxx tcl test" + +# the entire testsuite needs the TCL functionality +DEPEND="tcl? ( >=dev-lang/tcl-8.4 ) + test? ( >=dev-lang/tcl-8.4 ) + java? ( >=virtual/jdk-1.8 )" +RDEPEND="tcl? ( dev-lang/tcl ) + java? ( >=virtual/jre-1.8 )" + +PATCHES=( + "${FILESDIR}"/"${PN}"-4.4-libtool.patch + + # use the includes from the prefix + "${FILESDIR}"/"${PN}"-4.6-jni-check-prefix-first.patch + "${FILESDIR}"/"${PN}"-4.2-listen-to-java-options.patch +) + +# Required to avoid unpack attempt of patches +src_unpack() { + unpack "${MY_P}".tar.gz +} + +src_prepare() { + pushd "${WORKDIR}"/"${MY_P}" &>/dev/null || die + for (( i=1 ; i<=${PATCHNO} ; i++ )) + do + eapply -p0 "${DISTDIR}"/patch."${MY_PV}"."${i}" + done + + default + + sed -e "/^DB_RELEASE_DATE=/s/%B %e, %Y/%Y-%m-%d/" \ + -i dist/RELEASE || die + + # Include the SLOT for Java JAR files + # This supersedes the unused jarlocation patches. + sed -r \ + -e '/jarfile=.*\.jar$/s,(.jar$),-$(LIBVERSION)\1,g' \ + -i dist/Makefile.in || die + + pushd dist &>/dev/null || die + rm aclocal/libtool.m4 || die + sed \ + -e '/AC_PROG_LIBTOOL$/aLT_OUTPUT' \ + -i configure.ac || die + sed \ + -e '/^AC_PATH_TOOL/s/ sh, none/ bash, none/' \ + -i aclocal/programs.m4 || die + + AT_M4DIR="aclocal aclocal_java" eautoreconf + + # Upstream sucks - they do autoconf and THEN replace the version variables. + . ./RELEASE + sed \ + -e "s/__EDIT_DB_VERSION_MAJOR__/$DB_VERSION_MAJOR/g" \ + -e "s/__EDIT_DB_VERSION_MINOR__/$DB_VERSION_MINOR/g" \ + -e "s/__EDIT_DB_VERSION_PATCH__/$DB_VERSION_PATCH/g" \ + -e "s/__EDIT_DB_VERSION_STRING__/$DB_VERSION_STRING/g" \ + -e "s/__EDIT_DB_VERSION_UNIQUE_NAME__/$DB_VERSION_UNIQUE_NAME/g" \ + -e "s/__EDIT_DB_VERSION__/$DB_VERSION/g" \ + -i configure || die + + popd &>/dev/null || die + popd &>/dev/null || die +} + +src_configure() { + # compilation with -O0 fails on amd64, see bug #171231 + if use amd64 ; then + replace-flags -O0 -O2 + is-flagq -O[s123] || append-flags -O2 + fi + + local myconf=( + --enable-compat185 + --enable-o_direct + --without-uniquename + --disable-rpc + + $(usex amd64 '--with-mutex=x86/gcc-assembly' '') + $(use_enable cxx) + $(use_enable tcl) + $(usex tcl "--with-tcl=${EPREFIX}/usr/$(get_libdir)" '') #" + $(use_enable java) + $(use_enable test) + ) + + if use java; then + myconf+=( + --with-java-prefix="${JAVA_HOME}" + --with-javac-flags="$(java-pkg_javac-args)" + ) + fi + + # Bug #270851: test needs TCL support + if use tcl && use test ; then + myconf+=( --enable-test ) + else + myconf+=( --disable-test ) + fi + + # Add linker versions to the symbols. Easier to do, and safer than header file + # mumbo jumbo. + if use userland_GNU ; then + append-ldflags -Wl,--default-symver + fi + + ECONF_SOURCE="${S}"/../dist \ + STRIP="true" \ + econf "${myconf[@]}" + + # The embedded assembly on ARM does not work on newer hardware + # so you CANNOT use --with-mutex=ARM/gcc-assembly anymore. + # Specifically, it uses the SWPB op, which was deprecated: + # http://www.keil.com/support/man/docs/armasm/armasm_dom1361289909499.htm + + # The op ALSO cannot be used in ARM-Thumb mode. + # Trust the compiler instead. + # >=db-6.1 uses LDREX instead. +} + +src_install() { + emake DESTDIR="${D}" install + + db_src_install_usrbinslot + + db_src_install_headerslot + + db_src_install_doc + + db_src_install_usrlibcleanup + + dodir /usr/sbin + # This file is not always built, and no longer exists as of db-4.8 + if [[ -f "${ED}"/usr/bin/berkeley_db_svc ]] ; then + mv "${ED}"/usr/bin/berkeley_db_svc \ + "${ED}"/usr/sbin/berkeley_db"${SLOT/./}"_svc || die + fi + + if use java; then + java-pkg_regso "${ED}"/usr/"$(get_libdir)"/libdb_java*.so + java-pkg_dojar "${ED}"/usr/"$(get_libdir)"/*.jar + rm -f "${ED}"/usr/"$(get_libdir)"/*.jar + fi +} + +pkg_postinst() { + db_fix_so +} + +pkg_postrm() { + db_fix_so +} diff --git a/sys-libs/db/db-4.7.25_p4-r5.ebuild b/sys-libs/db/db-4.7.25_p4-r5.ebuild new file mode 100644 index 000000000000..a4d8f87a8e48 --- /dev/null +++ b/sys-libs/db/db-4.7.25_p4-r5.ebuild @@ -0,0 +1,189 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit autotools db flag-o-matic java-pkg-opt-2 multilib + +#Number of official patches +#PATCHNO=`echo ${PV}|sed -e "s,\(.*_p\)\([0-9]*\),\2,"` +PATCHNO="${PV/*.*.*_p}" +if [[ ${PATCHNO} == "${PV}" ]] ; then + MY_PV="${PV}" + MY_P="${P}" + PATCHNO=0 +else + MY_PV="${PV/_p${PATCHNO}}" + MY_P="${PN}-${MY_PV}" +fi + +RESTRICT="!test? ( test )" + +S="${WORKDIR}/${MY_P}/build_unix" +DESCRIPTION="Oracle Berkeley DB" +HOMEPAGE="http://www.oracle.com/technetwork/database/database-technologies/berkeleydb/overview/index.html" +SRC_URI="http://download.oracle.com/berkeley-db/${MY_P}.tar.gz" +for (( i=1 ; i<=${PATCHNO} ; i++ )) ; do + export SRC_URI="${SRC_URI} http://www.oracle.com/technology/products/berkeley-db/db/update/${MY_PV}/patch.${MY_PV}.${i}" +done + +LICENSE="Sleepycat" +SLOT="$(ver_cut 1-2)" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~ppc ~ppc64 ~s390 ~sparc ~x86" +IUSE="doc java cxx tcl test" + +# the entire testsuite needs the TCL functionality +DEPEND="tcl? ( >=dev-lang/tcl-8.4 ) + test? ( >=dev-lang/tcl-8.4 ) + java? ( >=virtual/jdk-1.8 )" +RDEPEND="tcl? ( dev-lang/tcl ) + java? ( >=virtual/jre-1.8 )" + +PATCHES=( + "${FILESDIR}"/"${PN}"-4.4-libtool.patch + + # use the includes from the prefix + "${FILESDIR}"/"${PN}"-4.6-jni-check-prefix-first.patch + "${FILESDIR}"/"${PN}"-4.2-listen-to-java-options.patch +) + +# Required to avoid unpack attempt of patches +src_unpack() { + unpack "${MY_P}".tar.gz +} + +src_prepare() { + pushd "${WORKDIR}"/"${MY_P}" &>/dev/null || die + for (( i=1 ; i<=${PATCHNO} ; i++ )) + do + eapply -p0 "${DISTDIR}"/patch."${MY_PV}"."${i}" + done + + default + + sed -e "/^DB_RELEASE_DATE=/s/%B %e, %Y/%Y-%m-%d/" \ + -i dist/RELEASE || die + + # Include the SLOT for Java JAR files + # This supersedes the unused jarlocation patches. + sed -r \ + -e '/jarfile=.*\.jar$/s,(.jar$),-$(LIBVERSION)\1,g' \ + -i dist/Makefile.in || die + + pushd dist &>/dev/null || die + rm aclocal/libtool.m4 || die + sed \ + -e '/AC_PROG_LIBTOOL$/aLT_OUTPUT' \ + -i configure.ac || die + sed \ + -e '/^AC_PATH_TOOL/s/ sh, none/ bash, none/' \ + -i aclocal/programs.m4 || die + + AT_M4DIR="aclocal aclocal_java" eautoreconf + + # Upstream sucks - they do autoconf and THEN replace the version variables. + . ./RELEASE + sed \ + -e "s/__EDIT_DB_VERSION_MAJOR__/$DB_VERSION_MAJOR/g" \ + -e "s/__EDIT_DB_VERSION_MINOR__/$DB_VERSION_MINOR/g" \ + -e "s/__EDIT_DB_VERSION_PATCH__/$DB_VERSION_PATCH/g" \ + -e "s/__EDIT_DB_VERSION_STRING__/$DB_VERSION_STRING/g" \ + -e "s/__EDIT_DB_VERSION_UNIQUE_NAME__/$DB_VERSION_UNIQUE_NAME/g" \ + -e "s/__EDIT_DB_VERSION__/$DB_VERSION/g" \ + -i configure || die + + popd &>/dev/null || die + popd &>/dev/null || die +} + +src_configure() { + # compilation with -O0 fails on amd64, see bug #171231 + if use amd64 ; then + replace-flags -O0 -O2 + is-flagq -O[s123] || append-flags -O2 + fi + + local myconf=( + --enable-compat185 + --enable-o_direct + --without-uniquename + --disable-rpc + --disable-static + + $(usex amd64 '--with-mutex=x86/gcc-assembly' '') + $(use_enable cxx) + $(use_enable tcl) + $(usex tcl "--with-tcl=${EPREFIX}/usr/$(get_libdir)" '') #" + $(use_enable java) + $(use_enable test) + ) + + if use java; then + myconf+=( + --with-java-prefix="${JAVA_HOME}" + --with-javac-flags="$(java-pkg_javac-args)" + ) + fi + + # Bug #270851: test needs TCL support + if use tcl && use test ; then + myconf+=( --enable-test ) + else + myconf+=( --disable-test ) + fi + + # Add linker versions to the symbols. Easier to do, and safer than header file + # mumbo jumbo. + if use userland_GNU ; then + append-ldflags -Wl,--default-symver + fi + + ECONF_SOURCE="${S}"/../dist \ + STRIP="true" \ + econf "${myconf[@]}" + + # The embedded assembly on ARM does not work on newer hardware + # so you CANNOT use --with-mutex=ARM/gcc-assembly anymore. + # Specifically, it uses the SWPB op, which was deprecated: + # http://www.keil.com/support/man/docs/armasm/armasm_dom1361289909499.htm + + # The op ALSO cannot be used in ARM-Thumb mode. + # Trust the compiler instead. + # >=db-6.1 uses LDREX instead. +} + +src_install() { + emake DESTDIR="${D}" install + + db_src_install_usrbinslot + + db_src_install_headerslot + + db_src_install_doc + + db_src_install_usrlibcleanup + + dodir /usr/sbin + # This file is not always built, and no longer exists as of db-4.8 + if [[ -f "${ED}"/usr/bin/berkeley_db_svc ]] ; then + mv "${ED}"/usr/bin/berkeley_db_svc \ + "${ED}"/usr/sbin/berkeley_db"${SLOT/./}"_svc || die + fi + + if use java; then + java-pkg_regso "${ED}"/usr/"$(get_libdir)"/libdb_java*.so + java-pkg_dojar "${ED}"/usr/"$(get_libdir)"/*.jar + rm -f "${ED}"/usr/"$(get_libdir)"/*.jar + fi + + # no static libraries + find "${ED}" -name '*.la' -delete || die +} + +pkg_postinst() { + db_fix_so +} + +pkg_postrm() { + db_fix_so +} diff --git a/sys-libs/db/db-4.8.30-r3.ebuild b/sys-libs/db/db-4.8.30-r3.ebuild deleted file mode 100644 index 20f5227a5f68..000000000000 --- a/sys-libs/db/db-4.8.30-r3.ebuild +++ /dev/null @@ -1,192 +0,0 @@ -# Copyright 1999-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -inherit autotools db flag-o-matic java-pkg-opt-2 multilib multilib-minimal toolchain-funcs - -#Number of official patches -#PATCHNO=`echo ${PV}|sed -e "s,\(.*_p\)\([0-9]*\),\2,"` -PATCHNO="${PV/*.*.*_p}" -if [[ ${PATCHNO} == "${PV}" ]] ; then - MY_PV="${PV}" - MY_P="${P}" - PATCHNO=0 -else - MY_PV="${PV/_p${PATCHNO}}" - MY_P="${PN}-${MY_PV}" -fi - -RESTRICT="!test? ( test )" - -S="${WORKDIR}/${MY_P}/build_unix" -DESCRIPTION="Oracle Berkeley DB" -HOMEPAGE="http://www.oracle.com/technetwork/database/database-technologies/berkeleydb/overview/index.html" -SRC_URI="http://download.oracle.com/berkeley-db/${MY_P}.tar.gz" -for (( i=1 ; i<=${PATCHNO} ; i++ )) ; do - export SRC_URI="${SRC_URI} http://www.oracle.com/technology/products/berkeley-db/db/update/${MY_PV}/patch.${MY_PV}.${i}" -done - -LICENSE="Sleepycat" -SLOT="$(ver_cut 1-2)" -KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~s390 sparc x86" -IUSE="doc java cxx tcl test" - -REQUIRED_USE="test? ( tcl )" - -# the entire testsuite needs the TCL functionality -DEPEND="tcl? ( >=dev-lang/tcl-8.5.15-r1:0=[${MULTILIB_USEDEP}] ) - test? ( >=dev-lang/tcl-8.5.15-r1:0=[${MULTILIB_USEDEP}] ) - java? ( >=virtual/jdk-1.5 )" -RDEPEND="tcl? ( >=dev-lang/tcl-8.5.15-r1:0=[${MULTILIB_USEDEP}] ) - java? ( >=virtual/jre-1.5 )" - -PATCHES=( - "${FILESDIR}"/${PN}-4.8-libtool.patch - "${FILESDIR}"/${PN}-4.8.24-java-manifest-location.patch - "${FILESDIR}"/${PN}-4.8.30-rename-atomic-compare-exchange.patch - - # use the includes from the prefix - "${FILESDIR}"/${PN}-4.6-jni-check-prefix-first.patch - "${FILESDIR}"/${PN}-4.2-listen-to-java-options.patch -) - -src_prepare() { - cd "${WORKDIR}"/"${MY_P}" || die - for (( i=1 ; i<=${PATCHNO} ; i++ )) - do - eapply -p0 "${DISTDIR}"/patch."${MY_PV}"."${i}" - done - - default - - sed -e "/^DB_RELEASE_DATE=/s/%B %e, %Y/%Y-%m-%d/" -i dist/RELEASE \ - || die - - # Include the SLOT for Java JAR files - # This supersedes the unused jarlocation patches. - sed -r \ - -e '/jarfile=.*\.jar$/s,(.jar$),-$(LIBVERSION)\1,g' \ - -i dist/Makefile.in || die - - cd dist || die - rm aclocal/libtool.m4 || die - sed \ - -e '/AC_PROG_LIBTOOL$/aLT_OUTPUT' \ - -i configure.ac || die - sed \ - -e '/^AC_PATH_TOOL/s/ sh, none/ bash, none/' \ - -i aclocal/programs.m4 || die - - AT_M4DIR="aclocal aclocal_java" eautoreconf - - # Upstream sucks - they do autoconf and THEN replace the version variables. - . ./RELEASE - sed \ - -e "s/__EDIT_DB_VERSION_MAJOR__/$DB_VERSION_MAJOR/g" \ - -e "s/__EDIT_DB_VERSION_MINOR__/$DB_VERSION_MINOR/g" \ - -e "s/__EDIT_DB_VERSION_PATCH__/$DB_VERSION_PATCH/g" \ - -e "s/__EDIT_DB_VERSION_STRING__/$DB_VERSION_STRING/g" \ - -e "s/__EDIT_DB_VERSION_UNIQUE_NAME__/$DB_VERSION_UNIQUE_NAME/g" \ - -e "s/__EDIT_DB_VERSION__/$DB_VERSION/g" \ - -i configure || die -} - -multilib_src_configure() { - local myconf=( - --enable-compat185 - --enable-o_direct - --without-uniquename - $([[ ${ABI} == amd64 ]] && echo --with-mutex=x86/gcc-assembly) - $(use_enable cxx) - $(use_enable cxx stl) - $(multilib_native_use_enable java) - $(use_enable test) - ) - - tc-ld-force-bfd #470634 #729510 - - # compilation with -O0 fails on amd64, see bug #171231 - if [[ ${ABI} == amd64 ]]; then - local CFLAGS=${CFLAGS} CXXFLAGS=${CXXFLAGS} - replace-flags -O0 -O2 - is-flagq -O[s123] || append-flags -O2 - fi - - # Add linker versions to the symbols. Easier to do, and safer than header file - # mumbo jumbo. - if use userland_GNU ; then - append-ldflags -Wl,--default-symver - fi - - # use `set` here since the java opts will contain whitespace - if multilib_is_native_abi && use java ; then - myconf+=( - --with-java-prefix="${JAVA_HOME}" - --with-javac-flags="$(java-pkg_javac-args)" - ) - fi - - # Bug #270851: test needs TCL support - if use tcl || use test ; then - myconf+=( - --enable-tcl - --with-tcl="${EPREFIX}/usr/$(get_libdir)" - ) - else - myconf+=(--disable-tcl ) - fi - - ECONF_SOURCE="${S}"/../dist \ - STRIP="true" \ - econf "${myconf[@]}" - - # The embedded assembly on ARM does not work on newer hardware - # so you CANNOT use --with-mutex=ARM/gcc-assembly anymore. - # Specifically, it uses the SWPB op, which was deprecated: - # http://www.keil.com/support/man/docs/armasm/armasm_dom1361289909499.htm - # The op ALSO cannot be used in ARM-Thumb mode. - # Trust the compiler instead. - # >=db-6.1 uses LDREX instead. -} - -multilib_src_test() { - multilib_is_native_abi || return - - S="${BUILD_DIR}" db_src_test -} - -multilib_src_install() { - emake install DESTDIR="${D}" - - db_src_install_headerslot - - db_src_install_usrlibcleanup - - if multilib_is_native_abi && use java; then - java-pkg_regso "${ED}"/usr/"$(get_libdir)"/libdb_java*.so - java-pkg_dojar "${ED}"/usr/"$(get_libdir)"/*.jar - rm -f "${ED}"/usr/"$(get_libdir)"/*.jar - fi -} - -multilib_src_install_all() { - db_src_install_usrbinslot - - db_src_install_doc - - dodir /usr/sbin - # This file is not always built, and no longer exists as of db-4.8 - if [[ -f "${ED}"/usr/bin/berkeley_db_svc ]] ; then - mv "${ED}"/usr/bin/berkeley_db_svc \ - "${ED}"/usr/sbin/berkeley_db"${SLOT/./}"_svc || die - fi -} - -pkg_postinst() { - multilib_foreach_abi db_fix_so -} - -pkg_postrm() { - multilib_foreach_abi db_fix_so -} diff --git a/sys-libs/db/db-4.8.30-r4.ebuild b/sys-libs/db/db-4.8.30-r4.ebuild deleted file mode 100644 index f8233b07a27e..000000000000 --- a/sys-libs/db/db-4.8.30-r4.ebuild +++ /dev/null @@ -1,196 +0,0 @@ -# Copyright 1999-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -inherit autotools db flag-o-matic java-pkg-opt-2 multilib multilib-minimal toolchain-funcs - -#Number of official patches -#PATCHNO=`echo ${PV}|sed -e "s,\(.*_p\)\([0-9]*\),\2,"` -PATCHNO="${PV/*.*.*_p}" -if [[ ${PATCHNO} == "${PV}" ]] ; then - MY_PV="${PV}" - MY_P="${P}" - PATCHNO=0 -else - MY_PV="${PV/_p${PATCHNO}}" - MY_P="${PN}-${MY_PV}" -fi - -RESTRICT="!test? ( test )" - -S="${WORKDIR}/${MY_P}/build_unix" -DESCRIPTION="Oracle Berkeley DB" -HOMEPAGE="http://www.oracle.com/technetwork/database/database-technologies/berkeleydb/overview/index.html" -SRC_URI="http://download.oracle.com/berkeley-db/${MY_P}.tar.gz" -for (( i=1 ; i<=${PATCHNO} ; i++ )) ; do - export SRC_URI="${SRC_URI} http://www.oracle.com/technology/products/berkeley-db/db/update/${MY_PV}/patch.${MY_PV}.${i}" -done - -LICENSE="Sleepycat" -SLOT="$(ver_cut 1-2)" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86" -IUSE="doc java cxx tcl test" - -REQUIRED_USE="test? ( tcl )" - -# the entire testsuite needs the TCL functionality -DEPEND="tcl? ( >=dev-lang/tcl-8.5.15-r1:0=[${MULTILIB_USEDEP}] ) - test? ( >=dev-lang/tcl-8.5.15-r1:0=[${MULTILIB_USEDEP}] ) - java? ( >=virtual/jdk-1.5 )" -RDEPEND="tcl? ( >=dev-lang/tcl-8.5.15-r1:0=[${MULTILIB_USEDEP}] ) - java? ( >=virtual/jre-1.5 )" - -PATCHES=( - "${FILESDIR}"/${PN}-4.8-libtool.patch - "${FILESDIR}"/${PN}-4.8.24-java-manifest-location.patch - "${FILESDIR}"/${PN}-4.8.30-rename-atomic-compare-exchange.patch - - # use the includes from the prefix - "${FILESDIR}"/${PN}-4.6-jni-check-prefix-first.patch - "${FILESDIR}"/${PN}-4.2-listen-to-java-options.patch -) - -src_prepare() { - cd "${WORKDIR}"/"${MY_P}" || die - for (( i=1 ; i<=${PATCHNO} ; i++ )) - do - eapply -p0 "${DISTDIR}"/patch."${MY_PV}"."${i}" - done - - default - - sed -e "/^DB_RELEASE_DATE=/s/%B %e, %Y/%Y-%m-%d/" -i dist/RELEASE \ - || die - - # Include the SLOT for Java JAR files - # This supersedes the unused jarlocation patches. - sed -r \ - -e '/jarfile=.*\.jar$/s,(.jar$),-$(LIBVERSION)\1,g' \ - -i dist/Makefile.in || die - - cd dist || die - rm aclocal/libtool.m4 || die - sed \ - -e '/AC_PROG_LIBTOOL$/aLT_OUTPUT' \ - -i configure.ac || die - sed \ - -e '/^AC_PATH_TOOL/s/ sh, none/ bash, none/' \ - -i aclocal/programs.m4 || die - - AT_M4DIR="aclocal aclocal_java" eautoreconf - - # Upstream sucks - they do autoconf and THEN replace the version variables. - . ./RELEASE - sed \ - -e "s/__EDIT_DB_VERSION_MAJOR__/$DB_VERSION_MAJOR/g" \ - -e "s/__EDIT_DB_VERSION_MINOR__/$DB_VERSION_MINOR/g" \ - -e "s/__EDIT_DB_VERSION_PATCH__/$DB_VERSION_PATCH/g" \ - -e "s/__EDIT_DB_VERSION_STRING__/$DB_VERSION_STRING/g" \ - -e "s/__EDIT_DB_VERSION_UNIQUE_NAME__/$DB_VERSION_UNIQUE_NAME/g" \ - -e "s/__EDIT_DB_VERSION__/$DB_VERSION/g" \ - -i configure || die -} - -multilib_src_configure() { - local myconf=( - --enable-compat185 - --enable-o_direct - --without-uniquename - --disable-static - $([[ ${ABI} == amd64 ]] && echo --with-mutex=x86/gcc-assembly) - $(use_enable cxx) - $(use_enable cxx stl) - $(multilib_native_use_enable java) - $(use_enable test) - ) - - tc-ld-force-bfd #470634 #729510 - - # compilation with -O0 fails on amd64, see bug #171231 - if [[ ${ABI} == amd64 ]]; then - local CFLAGS=${CFLAGS} CXXFLAGS=${CXXFLAGS} - replace-flags -O0 -O2 - is-flagq -O[s123] || append-flags -O2 - fi - - # Add linker versions to the symbols. Easier to do, and safer than header file - # mumbo jumbo. - if use userland_GNU ; then - append-ldflags -Wl,--default-symver - fi - - # use `set` here since the java opts will contain whitespace - if multilib_is_native_abi && use java ; then - myconf+=( - --with-java-prefix="${JAVA_HOME}" - --with-javac-flags="$(java-pkg_javac-args)" - ) - fi - - # Bug #270851: test needs TCL support - if use tcl || use test ; then - myconf+=( - --enable-tcl - --with-tcl="${EPREFIX}/usr/$(get_libdir)" - ) - else - myconf+=(--disable-tcl ) - fi - - ECONF_SOURCE="${S}"/../dist \ - STRIP="true" \ - econf "${myconf[@]}" - - # The embedded assembly on ARM does not work on newer hardware - # so you CANNOT use --with-mutex=ARM/gcc-assembly anymore. - # Specifically, it uses the SWPB op, which was deprecated: - # http://www.keil.com/support/man/docs/armasm/armasm_dom1361289909499.htm - # The op ALSO cannot be used in ARM-Thumb mode. - # Trust the compiler instead. - # >=db-6.1 uses LDREX instead. -} - -multilib_src_test() { - multilib_is_native_abi || return - - S="${BUILD_DIR}" db_src_test -} - -multilib_src_install() { - emake install DESTDIR="${D}" - - db_src_install_headerslot - - db_src_install_usrlibcleanup - - if multilib_is_native_abi && use java; then - java-pkg_regso "${ED}"/usr/"$(get_libdir)"/libdb_java*.so - java-pkg_dojar "${ED}"/usr/"$(get_libdir)"/*.jar - rm -f "${ED}"/usr/"$(get_libdir)"/*.jar - fi -} - -multilib_src_install_all() { - db_src_install_usrbinslot - - db_src_install_doc - - dodir /usr/sbin - # This file is not always built, and no longer exists as of db-4.8 - if [[ -f "${ED}"/usr/bin/berkeley_db_svc ]] ; then - mv "${ED}"/usr/bin/berkeley_db_svc \ - "${ED}"/usr/sbin/berkeley_db"${SLOT/./}"_svc || die - fi - - # no static libraries - find "${ED}" -name '*.la' -delete || die -} - -pkg_postinst() { - multilib_foreach_abi db_fix_so -} - -pkg_postrm() { - multilib_foreach_abi db_fix_so -} diff --git a/sys-libs/db/db-4.8.30-r5.ebuild b/sys-libs/db/db-4.8.30-r5.ebuild new file mode 100644 index 000000000000..598b13dac88f --- /dev/null +++ b/sys-libs/db/db-4.8.30-r5.ebuild @@ -0,0 +1,192 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit autotools db flag-o-matic java-pkg-opt-2 multilib multilib-minimal toolchain-funcs + +#Number of official patches +#PATCHNO=`echo ${PV}|sed -e "s,\(.*_p\)\([0-9]*\),\2,"` +PATCHNO="${PV/*.*.*_p}" +if [[ ${PATCHNO} == "${PV}" ]] ; then + MY_PV="${PV}" + MY_P="${P}" + PATCHNO=0 +else + MY_PV="${PV/_p${PATCHNO}}" + MY_P="${PN}-${MY_PV}" +fi + +RESTRICT="!test? ( test )" + +S="${WORKDIR}/${MY_P}/build_unix" +DESCRIPTION="Oracle Berkeley DB" +HOMEPAGE="http://www.oracle.com/technetwork/database/database-technologies/berkeleydb/overview/index.html" +SRC_URI="http://download.oracle.com/berkeley-db/${MY_P}.tar.gz" +for (( i=1 ; i<=${PATCHNO} ; i++ )) ; do + export SRC_URI="${SRC_URI} http://www.oracle.com/technology/products/berkeley-db/db/update/${MY_PV}/patch.${MY_PV}.${i}" +done + +LICENSE="Sleepycat" +SLOT="$(ver_cut 1-2)" +KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~s390 sparc x86" +IUSE="doc java cxx tcl test" + +REQUIRED_USE="test? ( tcl )" + +# the entire testsuite needs the TCL functionality +DEPEND="tcl? ( >=dev-lang/tcl-8.5.15-r1:0=[${MULTILIB_USEDEP}] ) + test? ( >=dev-lang/tcl-8.5.15-r1:0=[${MULTILIB_USEDEP}] ) + java? ( >=virtual/jdk-1.8 )" +RDEPEND="tcl? ( >=dev-lang/tcl-8.5.15-r1:0=[${MULTILIB_USEDEP}] ) + java? ( >=virtual/jre-1.8 )" + +PATCHES=( + "${FILESDIR}"/${PN}-4.8-libtool.patch + "${FILESDIR}"/${PN}-4.8.24-java-manifest-location.patch + "${FILESDIR}"/${PN}-4.8.30-rename-atomic-compare-exchange.patch + + # use the includes from the prefix + "${FILESDIR}"/${PN}-4.6-jni-check-prefix-first.patch + "${FILESDIR}"/${PN}-4.2-listen-to-java-options.patch +) + +src_prepare() { + cd "${WORKDIR}"/"${MY_P}" || die + for (( i=1 ; i<=${PATCHNO} ; i++ )) + do + eapply -p0 "${DISTDIR}"/patch."${MY_PV}"."${i}" + done + + default + + sed -e "/^DB_RELEASE_DATE=/s/%B %e, %Y/%Y-%m-%d/" -i dist/RELEASE \ + || die + + # Include the SLOT for Java JAR files + # This supersedes the unused jarlocation patches. + sed -r \ + -e '/jarfile=.*\.jar$/s,(.jar$),-$(LIBVERSION)\1,g' \ + -i dist/Makefile.in || die + + cd dist || die + rm aclocal/libtool.m4 || die + sed \ + -e '/AC_PROG_LIBTOOL$/aLT_OUTPUT' \ + -i configure.ac || die + sed \ + -e '/^AC_PATH_TOOL/s/ sh, none/ bash, none/' \ + -i aclocal/programs.m4 || die + + AT_M4DIR="aclocal aclocal_java" eautoreconf + + # Upstream sucks - they do autoconf and THEN replace the version variables. + . ./RELEASE + sed \ + -e "s/__EDIT_DB_VERSION_MAJOR__/$DB_VERSION_MAJOR/g" \ + -e "s/__EDIT_DB_VERSION_MINOR__/$DB_VERSION_MINOR/g" \ + -e "s/__EDIT_DB_VERSION_PATCH__/$DB_VERSION_PATCH/g" \ + -e "s/__EDIT_DB_VERSION_STRING__/$DB_VERSION_STRING/g" \ + -e "s/__EDIT_DB_VERSION_UNIQUE_NAME__/$DB_VERSION_UNIQUE_NAME/g" \ + -e "s/__EDIT_DB_VERSION__/$DB_VERSION/g" \ + -i configure || die +} + +multilib_src_configure() { + local myconf=( + --enable-compat185 + --enable-o_direct + --without-uniquename + $([[ ${ABI} == amd64 ]] && echo --with-mutex=x86/gcc-assembly) + $(use_enable cxx) + $(use_enable cxx stl) + $(multilib_native_use_enable java) + $(use_enable test) + ) + + tc-ld-force-bfd #470634 #729510 + + # compilation with -O0 fails on amd64, see bug #171231 + if [[ ${ABI} == amd64 ]]; then + local CFLAGS=${CFLAGS} CXXFLAGS=${CXXFLAGS} + replace-flags -O0 -O2 + is-flagq -O[s123] || append-flags -O2 + fi + + # Add linker versions to the symbols. Easier to do, and safer than header file + # mumbo jumbo. + if use userland_GNU ; then + append-ldflags -Wl,--default-symver + fi + + # use `set` here since the java opts will contain whitespace + if multilib_is_native_abi && use java ; then + myconf+=( + --with-java-prefix="${JAVA_HOME}" + --with-javac-flags="$(java-pkg_javac-args)" + ) + fi + + # Bug #270851: test needs TCL support + if use tcl || use test ; then + myconf+=( + --enable-tcl + --with-tcl="${EPREFIX}/usr/$(get_libdir)" + ) + else + myconf+=(--disable-tcl ) + fi + + ECONF_SOURCE="${S}"/../dist \ + STRIP="true" \ + econf "${myconf[@]}" + + # The embedded assembly on ARM does not work on newer hardware + # so you CANNOT use --with-mutex=ARM/gcc-assembly anymore. + # Specifically, it uses the SWPB op, which was deprecated: + # http://www.keil.com/support/man/docs/armasm/armasm_dom1361289909499.htm + # The op ALSO cannot be used in ARM-Thumb mode. + # Trust the compiler instead. + # >=db-6.1 uses LDREX instead. +} + +multilib_src_test() { + multilib_is_native_abi || return + + S="${BUILD_DIR}" db_src_test +} + +multilib_src_install() { + emake install DESTDIR="${D}" + + db_src_install_headerslot + + db_src_install_usrlibcleanup + + if multilib_is_native_abi && use java; then + java-pkg_regso "${ED}"/usr/"$(get_libdir)"/libdb_java*.so + java-pkg_dojar "${ED}"/usr/"$(get_libdir)"/*.jar + rm -f "${ED}"/usr/"$(get_libdir)"/*.jar + fi +} + +multilib_src_install_all() { + db_src_install_usrbinslot + + db_src_install_doc + + dodir /usr/sbin + # This file is not always built, and no longer exists as of db-4.8 + if [[ -f "${ED}"/usr/bin/berkeley_db_svc ]] ; then + mv "${ED}"/usr/bin/berkeley_db_svc \ + "${ED}"/usr/sbin/berkeley_db"${SLOT/./}"_svc || die + fi +} + +pkg_postinst() { + multilib_foreach_abi db_fix_so +} + +pkg_postrm() { + multilib_foreach_abi db_fix_so +} diff --git a/sys-libs/db/db-4.8.30-r6.ebuild b/sys-libs/db/db-4.8.30-r6.ebuild new file mode 100644 index 000000000000..80ec7706ca17 --- /dev/null +++ b/sys-libs/db/db-4.8.30-r6.ebuild @@ -0,0 +1,196 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit autotools db flag-o-matic java-pkg-opt-2 multilib multilib-minimal toolchain-funcs + +#Number of official patches +#PATCHNO=`echo ${PV}|sed -e "s,\(.*_p\)\([0-9]*\),\2,"` +PATCHNO="${PV/*.*.*_p}" +if [[ ${PATCHNO} == "${PV}" ]] ; then + MY_PV="${PV}" + MY_P="${P}" + PATCHNO=0 +else + MY_PV="${PV/_p${PATCHNO}}" + MY_P="${PN}-${MY_PV}" +fi + +RESTRICT="!test? ( test )" + +S="${WORKDIR}/${MY_P}/build_unix" +DESCRIPTION="Oracle Berkeley DB" +HOMEPAGE="http://www.oracle.com/technetwork/database/database-technologies/berkeleydb/overview/index.html" +SRC_URI="http://download.oracle.com/berkeley-db/${MY_P}.tar.gz" +for (( i=1 ; i<=${PATCHNO} ; i++ )) ; do + export SRC_URI="${SRC_URI} http://www.oracle.com/technology/products/berkeley-db/db/update/${MY_PV}/patch.${MY_PV}.${i}" +done + +LICENSE="Sleepycat" +SLOT="$(ver_cut 1-2)" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86" +IUSE="doc java cxx tcl test" + +REQUIRED_USE="test? ( tcl )" + +# the entire testsuite needs the TCL functionality +DEPEND="tcl? ( >=dev-lang/tcl-8.5.15-r1:0=[${MULTILIB_USEDEP}] ) + test? ( >=dev-lang/tcl-8.5.15-r1:0=[${MULTILIB_USEDEP}] ) + java? ( >=virtual/jdk-1.8 )" +RDEPEND="tcl? ( >=dev-lang/tcl-8.5.15-r1:0=[${MULTILIB_USEDEP}] ) + java? ( >=virtual/jre-1.8 )" + +PATCHES=( + "${FILESDIR}"/${PN}-4.8-libtool.patch + "${FILESDIR}"/${PN}-4.8.24-java-manifest-location.patch + "${FILESDIR}"/${PN}-4.8.30-rename-atomic-compare-exchange.patch + + # use the includes from the prefix + "${FILESDIR}"/${PN}-4.6-jni-check-prefix-first.patch + "${FILESDIR}"/${PN}-4.2-listen-to-java-options.patch +) + +src_prepare() { + cd "${WORKDIR}"/"${MY_P}" || die + for (( i=1 ; i<=${PATCHNO} ; i++ )) + do + eapply -p0 "${DISTDIR}"/patch."${MY_PV}"."${i}" + done + + default + + sed -e "/^DB_RELEASE_DATE=/s/%B %e, %Y/%Y-%m-%d/" -i dist/RELEASE \ + || die + + # Include the SLOT for Java JAR files + # This supersedes the unused jarlocation patches. + sed -r \ + -e '/jarfile=.*\.jar$/s,(.jar$),-$(LIBVERSION)\1,g' \ + -i dist/Makefile.in || die + + cd dist || die + rm aclocal/libtool.m4 || die + sed \ + -e '/AC_PROG_LIBTOOL$/aLT_OUTPUT' \ + -i configure.ac || die + sed \ + -e '/^AC_PATH_TOOL/s/ sh, none/ bash, none/' \ + -i aclocal/programs.m4 || die + + AT_M4DIR="aclocal aclocal_java" eautoreconf + + # Upstream sucks - they do autoconf and THEN replace the version variables. + . ./RELEASE + sed \ + -e "s/__EDIT_DB_VERSION_MAJOR__/$DB_VERSION_MAJOR/g" \ + -e "s/__EDIT_DB_VERSION_MINOR__/$DB_VERSION_MINOR/g" \ + -e "s/__EDIT_DB_VERSION_PATCH__/$DB_VERSION_PATCH/g" \ + -e "s/__EDIT_DB_VERSION_STRING__/$DB_VERSION_STRING/g" \ + -e "s/__EDIT_DB_VERSION_UNIQUE_NAME__/$DB_VERSION_UNIQUE_NAME/g" \ + -e "s/__EDIT_DB_VERSION__/$DB_VERSION/g" \ + -i configure || die +} + +multilib_src_configure() { + local myconf=( + --enable-compat185 + --enable-o_direct + --without-uniquename + --disable-static + $([[ ${ABI} == amd64 ]] && echo --with-mutex=x86/gcc-assembly) + $(use_enable cxx) + $(use_enable cxx stl) + $(multilib_native_use_enable java) + $(use_enable test) + ) + + tc-ld-force-bfd #470634 #729510 + + # compilation with -O0 fails on amd64, see bug #171231 + if [[ ${ABI} == amd64 ]]; then + local CFLAGS=${CFLAGS} CXXFLAGS=${CXXFLAGS} + replace-flags -O0 -O2 + is-flagq -O[s123] || append-flags -O2 + fi + + # Add linker versions to the symbols. Easier to do, and safer than header file + # mumbo jumbo. + if use userland_GNU ; then + append-ldflags -Wl,--default-symver + fi + + # use `set` here since the java opts will contain whitespace + if multilib_is_native_abi && use java ; then + myconf+=( + --with-java-prefix="${JAVA_HOME}" + --with-javac-flags="$(java-pkg_javac-args)" + ) + fi + + # Bug #270851: test needs TCL support + if use tcl || use test ; then + myconf+=( + --enable-tcl + --with-tcl="${EPREFIX}/usr/$(get_libdir)" + ) + else + myconf+=(--disable-tcl ) + fi + + ECONF_SOURCE="${S}"/../dist \ + STRIP="true" \ + econf "${myconf[@]}" + + # The embedded assembly on ARM does not work on newer hardware + # so you CANNOT use --with-mutex=ARM/gcc-assembly anymore. + # Specifically, it uses the SWPB op, which was deprecated: + # http://www.keil.com/support/man/docs/armasm/armasm_dom1361289909499.htm + # The op ALSO cannot be used in ARM-Thumb mode. + # Trust the compiler instead. + # >=db-6.1 uses LDREX instead. +} + +multilib_src_test() { + multilib_is_native_abi || return + + S="${BUILD_DIR}" db_src_test +} + +multilib_src_install() { + emake install DESTDIR="${D}" + + db_src_install_headerslot + + db_src_install_usrlibcleanup + + if multilib_is_native_abi && use java; then + java-pkg_regso "${ED}"/usr/"$(get_libdir)"/libdb_java*.so + java-pkg_dojar "${ED}"/usr/"$(get_libdir)"/*.jar + rm -f "${ED}"/usr/"$(get_libdir)"/*.jar + fi +} + +multilib_src_install_all() { + db_src_install_usrbinslot + + db_src_install_doc + + dodir /usr/sbin + # This file is not always built, and no longer exists as of db-4.8 + if [[ -f "${ED}"/usr/bin/berkeley_db_svc ]] ; then + mv "${ED}"/usr/bin/berkeley_db_svc \ + "${ED}"/usr/sbin/berkeley_db"${SLOT/./}"_svc || die + fi + + # no static libraries + find "${ED}" -name '*.la' -delete || die +} + +pkg_postinst() { + multilib_foreach_abi db_fix_so +} + +pkg_postrm() { + multilib_foreach_abi db_fix_so +} diff --git a/sys-libs/db/db-5.1.29-r2.ebuild b/sys-libs/db/db-5.1.29-r2.ebuild deleted file mode 100644 index feeee909bc10..000000000000 --- a/sys-libs/db/db-5.1.29-r2.ebuild +++ /dev/null @@ -1,224 +0,0 @@ -# Copyright 1999-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 -inherit autotools db flag-o-matic java-pkg-opt-2 multilib toolchain-funcs - -#Number of official patches -#PATCHNO=`echo ${PV}|sed -e "s,\(.*_p\)\([0-9]*\),\2,"` -PATCHNO="${PV/*.*.*_p}" -if [[ ${PATCHNO} == "${PV}" ]] ; then - MY_PV="${PV}" - MY_P="${P}" - PATCHNO=0 -else - MY_PV="${PV/_p${PATCHNO}}" - MY_P="${PN}-${MY_PV}" -fi - -RESTRICT="!test? ( test )" - -S_BASE="${WORKDIR}/${MY_P}" -S="${S_BASE}/build_unix" -DESCRIPTION="Oracle Berkeley DB" -HOMEPAGE="http://www.oracle.com/technetwork/database/database-technologies/berkeleydb/overview/index.html" -SRC_URI="http://download.oracle.com/berkeley-db/${MY_P}.tar.gz" -for (( i=1 ; i<=${PATCHNO} ; i++ )) ; do - export SRC_URI="${SRC_URI} http://www.oracle.com/technology/products/berkeley-db/db/update/${MY_PV}/patch.${MY_PV}.${i}" -done - -LICENSE="Sleepycat" -SLOT="$(ver_cut 1-2)" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~ppc ~ppc64 ~s390 ~sparc ~x86" -IUSE="doc java cxx tcl test" - -REQUIRED_USE="test? ( tcl )" - -# the entire testsuite needs the TCL functionality -DEPEND="tcl? ( >=dev-lang/tcl-8.4:0 ) - test? ( >=dev-lang/tcl-8.4:0 ) - java? ( >=virtual/jdk-1.5 )" -RDEPEND="tcl? ( dev-lang/tcl:0 ) - java? ( >=virtual/jre-1.5 )" - -PATCHES=( - "${FILESDIR}"/${PN}-4.8-libtool.patch - "${FILESDIR}"/${PN}-4.8.24-java-manifest-location.patch - - # use the includes from the prefix - "${FILESDIR}"/${PN}-4.6-jni-check-prefix-first.patch - "${FILESDIR}"/${PN}-4.2-listen-to-java-options.patch - - # upstream autoconf fails to build DBM when it's supposed to - # merged upstream in 5.0.26 - #"${FILESDIR}"/${PN}-5.0.21-enable-dbm-autoconf.patch - - # Needed when compiling with clang - "${FILESDIR}"/${P}-rename-atomic-compare-exchange.patch -) - -src_prepare() { - cd "${S_BASE}" || die - for (( i=1 ; i<=${PATCHNO} ; i++ )) - do - eapply -p0 "${DISTDIR}"/patch."${MY_PV}"."${i}" - done - - default - - # Upstream release script grabs the dates when the script was run, so lets - # end-run them to keep the date the same. - export REAL_DB_RELEASE_DATE="$(awk \ - '/^DB_VERSION_STRING=/{ gsub(".*\\(|\\).*","",$0); print $0; }' \ - "${S_BASE}"/dist/configure)" - sed -r \ - -e "/^DB_RELEASE_DATE=/s~=.*~='${REAL_DB_RELEASE_DATE}'~g" \ - -i dist/RELEASE || die - - # Include the SLOT for Java JAR files - # This supersedes the unused jarlocation patches. - sed -r \ - -e '/jarfile=.*\.jar$/s,(.jar$),-$(LIBVERSION)\1,g' \ - -i dist/Makefile.in || die - - cd dist || die - rm aclocal/libtool.m4 || die - sed \ - -e '/AC_PROG_LIBTOOL$/aLT_OUTPUT' \ - -i configure.ac || die - sed \ - -e '/^AC_PATH_TOOL/s/ sh, none/ bash, none/' \ - -i aclocal/programs.m4 || die - - AT_M4DIR="aclocal aclocal_java" eautoreconf - - # Upstream sucks - they do autoconf and THEN replace the version variables. - . ./RELEASE - local v ev - for v in \ - DB_VERSION_{FAMILY,LETTER,RELEASE,MAJOR,MINOR} \ - DB_VERSION_{PATCH,FULL,UNIQUE_NAME,STRING,FULL_STRING} \ - DB_VERSION \ - DB_RELEASE_DATE ; do - ev="__EDIT_${v}__" - sed -e "s/${ev}/${!v}/g" -i configure || die - done - - # This is a false positive skip in the tests as the test-reviewer code - # looks for 'Skipping\s' - sed \ - -e '/db_repsite/s,Skipping:,Skipping,g' \ - -i "${S_BASE}"/test/tcl/reputils.tcl || die -} - -src_configure() { - local myconf=( - --enable-compat185 - --enable-dbm - --enable-o_direct - --without-uniquename - --enable-sql - --enable-sql_codegen - --disable-sql_compat - $(use amd64 && echo --with-mutex=x86/gcc-assembly) - $(use_enable cxx) - $(use_enable cxx stl) - $(use_enable java) - $(use_enable test) - ) - - tc-ld-force-bfd #470634 #729510 - - # compilation with -O0 fails on amd64, see bug #171231 - if use amd64; then - replace-flags -O0 -O2 - is-flagq -O[s123] || append-flags -O2 - fi - - if use java ; then - myconf+=( - --with-java-prefix="${JAVA_HOME}" - --with-javac-flags="$(java-pkg_javac-args)" - ) - fi - - # Add linker versions to the symbols. Easier to do, and safer than header file - # mumbo jumbo. - if use userland_GNU ; then - append-ldflags -Wl,--default-symver - fi - - # Bug #270851: test needs TCL support - if use tcl || use test ; then - myconf+=( - --enable-tcl - --with-tcl="${EPREFIX}/usr/$(get_libdir)" - ) - else - myconf+=( --disable-tcl ) - fi - - # sql_compat will cause a collision with sqlite3 - # --enable-sql_compat - cd "${S}" || die - - ECONF_SOURCE="${S_BASE}"/dist \ - STRIP="true" \ - econf "${myconf[@]}" - - # The embedded assembly on ARM does not work on newer hardware - # so you CANNOT use --with-mutex=ARM/gcc-assembly anymore. - # Specifically, it uses the SWPB op, which was deprecated: - # http://www.keil.com/support/man/docs/armasm/armasm_dom1361289909499.htm - # The op ALSO cannot be used in ARM-Thumb mode. - # Trust the compiler instead. - # >=db-6.1 uses LDREX instead. -} - -src_install() { - emake DESTDIR="${D}" install - - db_src_install_usrbinslot - - db_src_install_headerslot - - db_src_install_doc - - db_src_install_usrlibcleanup - - dodir /usr/sbin - # This file is not always built, and no longer exists as of db-4.8 - if [[ -f "${ED}"/usr/bin/berkeley_db_svc ]] ; then - mv "${ED}"/usr/bin/berkeley_db_svc \ - "${ED}"/usr/sbin/berkeley_db"${SLOT/./}"_svc || die - fi - - if use java; then - java-pkg_regso "${ED}"/usr/"$(get_libdir)"/libdb_java*.so - java-pkg_dojar "${ED}"/usr/"$(get_libdir)"/*.jar - rm -f "${ED}"/usr/"$(get_libdir)"/*.jar - fi -} - -pkg_postinst() { - db_fix_so -} - -pkg_postrm() { - db_fix_so -} - -src_test() { - # db_repsite is impossible to build, as upstream strips those sources. - # db_repsite is used directly in the setup_site_prog, - # setup_site_prog is called from open_site_prog - # which is called only from tests in the multi_repmgr group. - #sed -ri \ - # -e '/set subs/s,multi_repmgr,,g' \ - # "${S_BASE}/test/testparams.tcl" - sed -r \ - -e '/multi_repmgr/d' \ - -i "${S_BASE}/test/tcl/test.tcl" || die - - db_src_test -} diff --git a/sys-libs/db/db-5.1.29-r3.ebuild b/sys-libs/db/db-5.1.29-r3.ebuild new file mode 100644 index 000000000000..7a6a8cb141cd --- /dev/null +++ b/sys-libs/db/db-5.1.29-r3.ebuild @@ -0,0 +1,224 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 +inherit autotools db flag-o-matic java-pkg-opt-2 multilib toolchain-funcs + +#Number of official patches +#PATCHNO=`echo ${PV}|sed -e "s,\(.*_p\)\([0-9]*\),\2,"` +PATCHNO="${PV/*.*.*_p}" +if [[ ${PATCHNO} == "${PV}" ]] ; then + MY_PV="${PV}" + MY_P="${P}" + PATCHNO=0 +else + MY_PV="${PV/_p${PATCHNO}}" + MY_P="${PN}-${MY_PV}" +fi + +RESTRICT="!test? ( test )" + +S_BASE="${WORKDIR}/${MY_P}" +S="${S_BASE}/build_unix" +DESCRIPTION="Oracle Berkeley DB" +HOMEPAGE="http://www.oracle.com/technetwork/database/database-technologies/berkeleydb/overview/index.html" +SRC_URI="http://download.oracle.com/berkeley-db/${MY_P}.tar.gz" +for (( i=1 ; i<=${PATCHNO} ; i++ )) ; do + export SRC_URI="${SRC_URI} http://www.oracle.com/technology/products/berkeley-db/db/update/${MY_PV}/patch.${MY_PV}.${i}" +done + +LICENSE="Sleepycat" +SLOT="$(ver_cut 1-2)" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~ppc ~ppc64 ~s390 ~sparc ~x86" +IUSE="doc java cxx tcl test" + +REQUIRED_USE="test? ( tcl )" + +# the entire testsuite needs the TCL functionality +DEPEND="tcl? ( >=dev-lang/tcl-8.4:0 ) + test? ( >=dev-lang/tcl-8.4:0 ) + java? ( >=virtual/jdk-1.8 )" +RDEPEND="tcl? ( dev-lang/tcl:0 ) + java? ( >=virtual/jre-1.8 )" + +PATCHES=( + "${FILESDIR}"/${PN}-4.8-libtool.patch + "${FILESDIR}"/${PN}-4.8.24-java-manifest-location.patch + + # use the includes from the prefix + "${FILESDIR}"/${PN}-4.6-jni-check-prefix-first.patch + "${FILESDIR}"/${PN}-4.2-listen-to-java-options.patch + + # upstream autoconf fails to build DBM when it's supposed to + # merged upstream in 5.0.26 + #"${FILESDIR}"/${PN}-5.0.21-enable-dbm-autoconf.patch + + # Needed when compiling with clang + "${FILESDIR}"/${P}-rename-atomic-compare-exchange.patch +) + +src_prepare() { + cd "${S_BASE}" || die + for (( i=1 ; i<=${PATCHNO} ; i++ )) + do + eapply -p0 "${DISTDIR}"/patch."${MY_PV}"."${i}" + done + + default + + # Upstream release script grabs the dates when the script was run, so lets + # end-run them to keep the date the same. + export REAL_DB_RELEASE_DATE="$(awk \ + '/^DB_VERSION_STRING=/{ gsub(".*\\(|\\).*","",$0); print $0; }' \ + "${S_BASE}"/dist/configure)" + sed -r \ + -e "/^DB_RELEASE_DATE=/s~=.*~='${REAL_DB_RELEASE_DATE}'~g" \ + -i dist/RELEASE || die + + # Include the SLOT for Java JAR files + # This supersedes the unused jarlocation patches. + sed -r \ + -e '/jarfile=.*\.jar$/s,(.jar$),-$(LIBVERSION)\1,g' \ + -i dist/Makefile.in || die + + cd dist || die + rm aclocal/libtool.m4 || die + sed \ + -e '/AC_PROG_LIBTOOL$/aLT_OUTPUT' \ + -i configure.ac || die + sed \ + -e '/^AC_PATH_TOOL/s/ sh, none/ bash, none/' \ + -i aclocal/programs.m4 || die + + AT_M4DIR="aclocal aclocal_java" eautoreconf + + # Upstream sucks - they do autoconf and THEN replace the version variables. + . ./RELEASE + local v ev + for v in \ + DB_VERSION_{FAMILY,LETTER,RELEASE,MAJOR,MINOR} \ + DB_VERSION_{PATCH,FULL,UNIQUE_NAME,STRING,FULL_STRING} \ + DB_VERSION \ + DB_RELEASE_DATE ; do + ev="__EDIT_${v}__" + sed -e "s/${ev}/${!v}/g" -i configure || die + done + + # This is a false positive skip in the tests as the test-reviewer code + # looks for 'Skipping\s' + sed \ + -e '/db_repsite/s,Skipping:,Skipping,g' \ + -i "${S_BASE}"/test/tcl/reputils.tcl || die +} + +src_configure() { + local myconf=( + --enable-compat185 + --enable-dbm + --enable-o_direct + --without-uniquename + --enable-sql + --enable-sql_codegen + --disable-sql_compat + $(use amd64 && echo --with-mutex=x86/gcc-assembly) + $(use_enable cxx) + $(use_enable cxx stl) + $(use_enable java) + $(use_enable test) + ) + + tc-ld-force-bfd #470634 #729510 + + # compilation with -O0 fails on amd64, see bug #171231 + if use amd64; then + replace-flags -O0 -O2 + is-flagq -O[s123] || append-flags -O2 + fi + + if use java ; then + myconf+=( + --with-java-prefix="${JAVA_HOME}" + --with-javac-flags="$(java-pkg_javac-args)" + ) + fi + + # Add linker versions to the symbols. Easier to do, and safer than header file + # mumbo jumbo. + if use userland_GNU ; then + append-ldflags -Wl,--default-symver + fi + + # Bug #270851: test needs TCL support + if use tcl || use test ; then + myconf+=( + --enable-tcl + --with-tcl="${EPREFIX}/usr/$(get_libdir)" + ) + else + myconf+=( --disable-tcl ) + fi + + # sql_compat will cause a collision with sqlite3 + # --enable-sql_compat + cd "${S}" || die + + ECONF_SOURCE="${S_BASE}"/dist \ + STRIP="true" \ + econf "${myconf[@]}" + + # The embedded assembly on ARM does not work on newer hardware + # so you CANNOT use --with-mutex=ARM/gcc-assembly anymore. + # Specifically, it uses the SWPB op, which was deprecated: + # http://www.keil.com/support/man/docs/armasm/armasm_dom1361289909499.htm + # The op ALSO cannot be used in ARM-Thumb mode. + # Trust the compiler instead. + # >=db-6.1 uses LDREX instead. +} + +src_install() { + emake DESTDIR="${D}" install + + db_src_install_usrbinslot + + db_src_install_headerslot + + db_src_install_doc + + db_src_install_usrlibcleanup + + dodir /usr/sbin + # This file is not always built, and no longer exists as of db-4.8 + if [[ -f "${ED}"/usr/bin/berkeley_db_svc ]] ; then + mv "${ED}"/usr/bin/berkeley_db_svc \ + "${ED}"/usr/sbin/berkeley_db"${SLOT/./}"_svc || die + fi + + if use java; then + java-pkg_regso "${ED}"/usr/"$(get_libdir)"/libdb_java*.so + java-pkg_dojar "${ED}"/usr/"$(get_libdir)"/*.jar + rm -f "${ED}"/usr/"$(get_libdir)"/*.jar + fi +} + +pkg_postinst() { + db_fix_so +} + +pkg_postrm() { + db_fix_so +} + +src_test() { + # db_repsite is impossible to build, as upstream strips those sources. + # db_repsite is used directly in the setup_site_prog, + # setup_site_prog is called from open_site_prog + # which is called only from tests in the multi_repmgr group. + #sed -ri \ + # -e '/set subs/s,multi_repmgr,,g' \ + # "${S_BASE}/test/testparams.tcl" + sed -r \ + -e '/multi_repmgr/d' \ + -i "${S_BASE}/test/tcl/test.tcl" || die + + db_src_test +} diff --git a/sys-libs/db/db-5.3.28-r2.ebuild b/sys-libs/db/db-5.3.28-r2.ebuild deleted file mode 100644 index 337084237488..000000000000 --- a/sys-libs/db/db-5.3.28-r2.ebuild +++ /dev/null @@ -1,246 +0,0 @@ -# Copyright 1999-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=5 -inherit epatch db flag-o-matic java-pkg-opt-2 autotools multilib multilib-minimal toolchain-funcs - -#Number of official patches -#PATCHNO=`echo ${PV}|sed -e "s,\(.*_p\)\([0-9]*\),\2,"` -PATCHNO=${PV/*.*.*_p} -if [[ ${PATCHNO} == "${PV}" ]] ; then - MY_PV=${PV} - MY_P=${P} - PATCHNO=0 -else - MY_PV=${PV/_p${PATCHNO}} - MY_P=${PN}-${MY_PV} -fi - -RESTRICT="!test? ( test )" - -S_BASE="${WORKDIR}/${MY_P}" -S="${S_BASE}/build_unix" -DESCRIPTION="Oracle Berkeley DB" -HOMEPAGE="http://www.oracle.com/technetwork/database/database-technologies/berkeleydb/overview/index.html" -SRC_URI="http://download.oracle.com/berkeley-db/${MY_P}.tar.gz" -for (( i=1 ; i<=${PATCHNO} ; i++ )) ; do - export SRC_URI="${SRC_URI} http://www.oracle.com/technology/products/berkeley-db/db/update/${MY_PV}/patch.${MY_PV}.${i}" -done - -LICENSE="Sleepycat" -SLOT="5.3" -KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ppc ppc64 ~riscv ~s390 sparc x86" -IUSE="doc java cxx tcl test" - -REQUIRED_USE="test? ( tcl )" - -# the entire testsuite needs the TCL functionality -DEPEND="tcl? ( >=dev-lang/tcl-8.5.15-r1:0=[${MULTILIB_USEDEP}] ) - test? ( >=dev-lang/tcl-8.5.15-r1:0=[${MULTILIB_USEDEP}] ) - java? ( >=virtual/jdk-1.5 ) - >=sys-devel/binutils-2.16.1" -RDEPEND="tcl? ( >=dev-lang/tcl-8.5.15-r1:0=[${MULTILIB_USEDEP}] ) - java? ( >=virtual/jre-1.5 )" - -MULTILIB_WRAPPED_HEADERS=( - /usr/include/db5.3/db.h -) - -src_prepare() { - cd "${WORKDIR}"/"${MY_P}" - for (( i=1 ; i<=${PATCHNO} ; i++ )) - do - epatch "${DISTDIR}"/patch."${MY_PV}"."${i}" - done - - # bug #510506 - epatch "${FILESDIR}"/${PN}-4.8.24-java-manifest-location.patch - - # use the includes from the prefix - epatch "${FILESDIR}"/${PN}-4.6-jni-check-prefix-first.patch - epatch "${FILESDIR}"/${PN}-4.2-listen-to-java-options.patch - - # sqlite configure call has an extra leading .. - # upstreamed:5.2.36, missing in 5.3.x - epatch "${FILESDIR}"/${PN}-5.2.28-sqlite-configure-path.patch - - # The upstream testsuite copies .lib and the binaries for each parallel test - # core, ~300MB each. This patch uses links instead, saves a lot of space. - epatch "${FILESDIR}"/${PN}-6.0.20-test-link.patch - - # Needed when compiling with clang - epatch "${FILESDIR}"/${PN}-5.1.29-rename-atomic-compare-exchange.patch - - # Upstream release script grabs the dates when the script was run, so lets - # end-run them to keep the date the same. - export REAL_DB_RELEASE_DATE="$(awk \ - '/^DB_VERSION_STRING=/{ gsub(".*\\(|\\).*","",$0); print $0; }' \ - "${S_BASE}"/dist/configure)" - sed -r -i \ - -e "/^DB_RELEASE_DATE=/s~=.*~='${REAL_DB_RELEASE_DATE}'~g" \ - "${S_BASE}"/dist/RELEASE || die - - # Include the SLOT for Java JAR files - # This supersedes the unused jarlocation patches. - sed -r -i \ - -e '/jarfile=.*\.jar$/s,(.jar$),-$(LIBVERSION)\1,g' \ - "${S_BASE}"/dist/Makefile.in || die - - cd "${S_BASE}"/dist || die - rm -f aclocal/libtool.m4 - sed -i \ - -e '/AC_PROG_LIBTOOL$/aLT_OUTPUT' \ - configure.ac || die - sed -i \ - -e '/^AC_PATH_TOOL/s/ sh, none/ bash, none/' \ - aclocal/programs.m4 || die - AT_M4DIR="aclocal aclocal_java" eautoreconf - # Upstream sucks - they do autoconf and THEN replace the version variables. - . ./RELEASE - for v in \ - DB_VERSION_{FAMILY,LETTER,RELEASE,MAJOR,MINOR} \ - DB_VERSION_{PATCH,FULL,UNIQUE_NAME,STRING,FULL_STRING} \ - DB_VERSION \ - DB_RELEASE_DATE ; do - local ev="__EDIT_${v}__" - sed -i -e "s/${ev}/${!v}/g" configure || die - done - - # This is a false positive skip in the tests as the test-reviewer code - # looks for 'Skipping\s' - sed -i \ - -e '/db_repsite/s,Skipping:,Skipping,g' \ - "${S_BASE}"/test/tcl/reputils.tcl || die -} - -multilib_src_configure() { - local myconf=() - - tc-ld-force-bfd #470634 #729510 - - # compilation with -O0 fails on amd64, see bug #171231 - if [[ ${ABI} == amd64 ]]; then - local CFLAGS=${CFLAGS} CXXFLAGS=${CXXFLAGS} - replace-flags -O0 -O2 - is-flagq -O[s123] || append-flags -O2 - fi - - # Add linker versions to the symbols. Easier to do, and safer than header file - # mumbo jumbo. - if use userland_GNU ; then - append-ldflags -Wl,--default-symver - fi - - # use `set` here since the java opts will contain whitespace - if multilib_is_native_abi && use java ; then - myconf+=( - --with-java-prefix="${JAVA_HOME}" - --with-javac-flags="$(java-pkg_javac-args)" - ) - fi - - # Bug #270851: test needs TCL support - if use tcl || use test ; then - myconf+=( - --enable-tcl - --with-tcl="${EPREFIX}/usr/$(get_libdir)" - ) - else - myconf+=(--disable-tcl ) - fi - - # sql_compat will cause a collision with sqlite3 - # --enable-sql_compat - ECONF_SOURCE="${S_BASE}"/dist \ - STRIP="true" \ - econf \ - --enable-compat185 \ - --enable-dbm \ - --enable-o_direct \ - --without-uniquename \ - --enable-sql \ - --enable-sql_codegen \ - --disable-sql_compat \ - $([[ ${ABI} == amd64 ]] && echo --with-mutex=x86/gcc-assembly) \ - $(use_enable cxx) \ - $(use_enable cxx stl) \ - $(multilib_native_use_enable java) \ - "${myconf[@]}" \ - $(use_enable test) - # The embedded assembly on ARM does not work on newer hardware - # so you CANNOT use --with-mutex=ARM/gcc-assembly anymore. - # Specifically, it uses the SWPB op, which was deprecated: - # http://www.keil.com/support/man/docs/armasm/armasm_dom1361289909499.htm - # The op ALSO cannot be used in ARM-Thumb mode. - # Trust the compiler instead. - # >=db-6.1 uses LDREX instead. -} - -multilib_src_install() { - emake install DESTDIR="${D}" - - db_src_install_headerslot - - db_src_install_usrlibcleanup - - if multilib_is_native_abi && use java; then - java-pkg_regso "${ED}"/usr/"$(get_libdir)"/libdb_java*.so - java-pkg_dojar "${ED}"/usr/"$(get_libdir)"/*.jar - rm -f "${ED}"/usr/"$(get_libdir)"/*.jar - fi -} - -multilib_src_install_all() { - db_src_install_usrbinslot - - db_src_install_doc - - dodir /usr/sbin - # This file is not always built, and no longer exists as of db-4.8 - if [[ -f "${ED}"/usr/bin/berkeley_db_svc ]] ; then - mv "${ED}"/usr/bin/berkeley_db_svc \ - "${ED}"/usr/sbin/berkeley_db"${SLOT/./}"_svc || die - fi -} - -pkg_postinst() { - multilib_foreach_abi db_fix_so -} - -pkg_postrm() { - multilib_foreach_abi db_fix_so -} - -src_test() { - # db_repsite is impossible to build, as upstream strips those sources. - # db_repsite is used directly in the setup_site_prog, - # setup_site_prog is called from open_site_prog - # which is called only from tests in the multi_repmgr group. - #sed -ri \ - # -e '/set subs/s,multi_repmgr,,g' \ - # "${S_BASE}/test/testparams.tcl" - sed -ri \ - -e '/multi_repmgr/d' \ - "${S_BASE}/test/tcl/test.tcl" || die - - # This is the only failure in 5.2.28 so far, and looks like a false positive. - # Repmgr018 (btree): Test of repmgr stats. - # Repmgr018.a: Start a master. - # Repmgr018.b: Start a client. - # Repmgr018.c: Run some transactions at master. - # Rep_test: btree 20 key/data pairs starting at 0 - # Rep_test.a: put/get loop - # FAIL:07:05:59 (00:00:00) perm_no_failed_stat: expected 0, got 1 - sed -ri \ - -e '/set parms.*repmgr018/d' \ - -e 's/repmgr018//g' \ - "${S_BASE}/test/tcl/test.tcl" || die - - multilib-minimal_src_test -} - -multilib_src_test() { - multilib_is_native_abi || return - - S=${BUILD_DIR} db_src_test -} diff --git a/sys-libs/db/db-5.3.28-r4.ebuild b/sys-libs/db/db-5.3.28-r4.ebuild deleted file mode 100644 index 25079725abbe..000000000000 --- a/sys-libs/db/db-5.3.28-r4.ebuild +++ /dev/null @@ -1,254 +0,0 @@ -# Copyright 1999-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 -inherit autotools db flag-o-matic java-pkg-opt-2 multilib multilib-minimal toolchain-funcs - -#Number of official patches -#PATCHNO=`echo ${PV}|sed -e "s,\(.*_p\)\([0-9]*\),\2,"` -PATCHNO="${PV/*.*.*_p}" -if [[ ${PATCHNO} == "${PV}" ]] ; then - MY_PV="${PV}" - MY_P="${P}" - PATCHNO=0 -else - MY_PV="${PV/_p${PATCHNO}}" - MY_P="${PN}-${MY_PV}" -fi - -RESTRICT="!test? ( test )" - -S_BASE="${WORKDIR}/${MY_P}" -S="${S_BASE}/build_unix" -DESCRIPTION="Oracle Berkeley DB" -HOMEPAGE="http://www.oracle.com/technetwork/database/database-technologies/berkeleydb/overview/index.html" -SRC_URI="http://download.oracle.com/berkeley-db/${MY_P}.tar.gz" -for (( i=1 ; i<=${PATCHNO} ; i++ )) ; do - export SRC_URI="${SRC_URI} http://www.oracle.com/technology/products/berkeley-db/db/update/${MY_PV}/patch.${MY_PV}.${i}" -done - -LICENSE="Sleepycat" -SLOT="$(ver_cut 1-2)" -KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~m68k ppc ~ppc64 ~riscv ~s390 sparc x86" -IUSE="doc java cxx tcl test" - -REQUIRED_USE="test? ( tcl )" - -# the entire testsuite needs the TCL functionality -DEPEND="tcl? ( >=dev-lang/tcl-8.5.15-r1:0=[${MULTILIB_USEDEP}] ) - test? ( >=dev-lang/tcl-8.5.15-r1:0=[${MULTILIB_USEDEP}] ) - java? ( >=virtual/jdk-1.5 )" -RDEPEND="tcl? ( >=dev-lang/tcl-8.5.15-r1:0=[${MULTILIB_USEDEP}] ) - java? ( >=virtual/jre-1.5 )" - -MULTILIB_WRAPPED_HEADERS=( - /usr/include/db${SLOT}/db.h -) - -PATCHES=( - # bug #510506 - "${FILESDIR}"/${PN}-4.8.24-java-manifest-location.patch - - # use the includes from the prefix - "${FILESDIR}"/${PN}-4.6-jni-check-prefix-first.patch - "${FILESDIR}"/${PN}-4.2-listen-to-java-options.patch - - # sqlite configure call has an extra leading .. - # upstreamed:5.2.36, missing in 5.3.x - "${FILESDIR}"/${PN}-5.2.28-sqlite-configure-path.patch - - # The upstream testsuite copies .lib and the binaries for each parallel test - # core, ~300MB each. This patch uses links instead, saves a lot of space. - "${FILESDIR}"/${PN}-6.0.20-test-link.patch - - # Needed when compiling with clang - "${FILESDIR}"/${PN}-5.1.29-rename-atomic-compare-exchange.patch -) - -src_prepare() { - cd "${S_BASE}" || die - for (( i=1 ; i<=${PATCHNO} ; i++ )) - do - eapply -p0 "${DISTDIR}"/patch."${MY_PV}"."${i}" - done - - default - - # Upstream release script grabs the dates when the script was run, so lets - # end-run them to keep the date the same. - export REAL_DB_RELEASE_DATE="$(awk \ - '/^DB_VERSION_STRING=/{ gsub(".*\\(|\\).*","",$0); print $0; }' \ - "${S_BASE}"/dist/configure)" - sed -r \ - -e "/^DB_RELEASE_DATE=/s~=.*~='${REAL_DB_RELEASE_DATE}'~g" \ - -i dist/RELEASE || die - - # Include the SLOT for Java JAR files - # This supersedes the unused jarlocation patches. - sed -r \ - -e '/jarfile=.*\.jar$/s,(.jar$),-$(LIBVERSION)\1,g' \ - -i dist/Makefile.in || die - - cd dist || die - rm aclocal/libtool.m4 || die - sed \ - -e '/AC_PROG_LIBTOOL$/aLT_OUTPUT' \ - -i configure.ac || die - sed \ - -e '/^AC_PATH_TOOL/s/ sh, none/ bash, none/' \ - -i aclocal/programs.m4 || die - - AT_M4DIR="aclocal aclocal_java" eautoreconf - - # Upstream sucks - they do autoconf and THEN replace the version variables. - . ./RELEASE - local v ev - for v in \ - DB_VERSION_{FAMILY,LETTER,RELEASE,MAJOR,MINOR} \ - DB_VERSION_{PATCH,FULL,UNIQUE_NAME,STRING,FULL_STRING} \ - DB_VERSION \ - DB_RELEASE_DATE ; do - ev="__EDIT_${v}__" - sed -e "s/${ev}/${!v}/g" -i configure || die - done - - # This is a false positive skip in the tests as the test-reviewer code - # looks for 'Skipping\s' - sed \ - -e '/db_repsite/s,Skipping:,Skipping,g' \ - -i "${S_BASE}"/test/tcl/reputils.tcl || die -} - -multilib_src_configure() { - local myconf=( - # sql_compat will cause a collision with sqlite3 - #--enable-sql_compat - # Don't --enable-sql* because we don't want to use bundled sqlite. - # See Gentoo bug #605688 - --enable-compat185 - --enable-dbm - --enable-o_direct - --without-uniquename - --disable-sql - --disable-sql_codegen - --disable-sql_compat - $([[ ${ABI} == amd64 ]] && echo --with-mutex=x86/gcc-assembly) - $(use_enable cxx) - $(use_enable cxx stl) - $(multilib_native_use_enable java) - $(use_enable test) - ) - - tc-ld-force-bfd #470634 #729510 - - # compilation with -O0 fails on amd64, see bug #171231 - if [[ ${ABI} == amd64 ]]; then - local CFLAGS="${CFLAGS}" CXXFLAGS="${CXXFLAGS}" - replace-flags -O0 -O2 - is-flagq -O[s123] || append-flags -O2 - fi - - # Add linker versions to the symbols. Easier to do, and safer than header file - # mumbo jumbo. - if use userland_GNU ; then - append-ldflags -Wl,--default-symver - fi - - if multilib_is_native_abi && use java ; then - myconf+=( - --with-java-prefix="${JAVA_HOME}" - --with-javac-flags="$(java-pkg_javac-args)" - ) - fi - - # Bug #270851: test needs TCL support - if use tcl || use test ; then - myconf+=( - --enable-tcl - --with-tcl="${EPREFIX}/usr/$(get_libdir)" - ) - else - myconf+=(--disable-tcl ) - fi - - ECONF_SOURCE="${S_BASE}"/dist \ - STRIP="true" \ - econf "${myconf[@]}" - - # The embedded assembly on ARM does not work on newer hardware - # so you CANNOT use --with-mutex=ARM/gcc-assembly anymore. - # Specifically, it uses the SWPB op, which was deprecated: - # http://www.keil.com/support/man/docs/armasm/armasm_dom1361289909499.htm - # The op ALSO cannot be used in ARM-Thumb mode. - # Trust the compiler instead. - # >=db-6.1 uses LDREX instead. -} - -multilib_src_install() { - emake DESTDIR="${D}" install - - db_src_install_headerslot - - db_src_install_usrlibcleanup - - if multilib_is_native_abi && use java; then - java-pkg_regso "${ED}"/usr/"$(get_libdir)"/libdb_java*.so - java-pkg_dojar "${ED}"/usr/"$(get_libdir)"/*.jar - rm -f "${ED}"/usr/"$(get_libdir)"/*.jar - fi -} - -multilib_src_install_all() { - db_src_install_usrbinslot - - db_src_install_doc - - dodir /usr/sbin - # This file is not always built, and no longer exists as of db-4.8 - if [[ -f "${ED}"/usr/bin/berkeley_db_svc ]] ; then - mv "${ED}"/usr/bin/berkeley_db_svc \ - "${ED}"/usr/sbin/berkeley_db"${SLOT/./}"_svc || die - fi -} - -pkg_postinst() { - multilib_foreach_abi db_fix_so -} - -pkg_postrm() { - multilib_foreach_abi db_fix_so -} - -src_test() { - # db_repsite is impossible to build, as upstream strips those sources. - # db_repsite is used directly in the setup_site_prog, - # setup_site_prog is called from open_site_prog - # which is called only from tests in the multi_repmgr group. - #sed -ri \ - # -e '/set subs/s,multi_repmgr,,g' \ - # "${S_BASE}/test/testparams.tcl" - sed -r \ - -e '/multi_repmgr/d' \ - -i "${S_BASE}/test/tcl/test.tcl" || die - - # This is the only failure in 5.2.28 so far, and looks like a false positive. - # Repmgr018 (btree): Test of repmgr stats. - # Repmgr018.a: Start a master. - # Repmgr018.b: Start a client. - # Repmgr018.c: Run some transactions at master. - # Rep_test: btree 20 key/data pairs starting at 0 - # Rep_test.a: put/get loop - # FAIL:07:05:59 (00:00:00) perm_no_failed_stat: expected 0, got 1 - sed -r \ - -e '/set parms.*repmgr018/d' \ - -e 's/repmgr018//g' \ - -i "${S_BASE}/test/tcl/test.tcl" || die - - multilib-minimal_src_test -} - -multilib_src_test() { - multilib_is_native_abi || return - - S="${BUILD_DIR}" db_src_test -} diff --git a/sys-libs/db/db-5.3.28-r5.ebuild b/sys-libs/db/db-5.3.28-r5.ebuild deleted file mode 100644 index 81350c2f3cea..000000000000 --- a/sys-libs/db/db-5.3.28-r5.ebuild +++ /dev/null @@ -1,258 +0,0 @@ -# Copyright 1999-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 -inherit autotools db flag-o-matic java-pkg-opt-2 multilib multilib-minimal toolchain-funcs - -#Number of official patches -#PATCHNO=`echo ${PV}|sed -e "s,\(.*_p\)\([0-9]*\),\2,"` -PATCHNO="${PV/*.*.*_p}" -if [[ ${PATCHNO} == "${PV}" ]] ; then - MY_PV="${PV}" - MY_P="${P}" - PATCHNO=0 -else - MY_PV="${PV/_p${PATCHNO}}" - MY_P="${PN}-${MY_PV}" -fi - -RESTRICT="!test? ( test )" - -S_BASE="${WORKDIR}/${MY_P}" -S="${S_BASE}/build_unix" -DESCRIPTION="Oracle Berkeley DB" -HOMEPAGE="http://www.oracle.com/technetwork/database/database-technologies/berkeleydb/overview/index.html" -SRC_URI="http://download.oracle.com/berkeley-db/${MY_P}.tar.gz" -for (( i=1 ; i<=${PATCHNO} ; i++ )) ; do - export SRC_URI="${SRC_URI} http://www.oracle.com/technology/products/berkeley-db/db/update/${MY_PV}/patch.${MY_PV}.${i}" -done - -LICENSE="Sleepycat" -SLOT="$(ver_cut 1-2)" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" -IUSE="doc java cxx tcl test" - -REQUIRED_USE="test? ( tcl )" - -# the entire testsuite needs the TCL functionality -DEPEND="tcl? ( >=dev-lang/tcl-8.5.15-r1:0=[${MULTILIB_USEDEP}] ) - test? ( >=dev-lang/tcl-8.5.15-r1:0=[${MULTILIB_USEDEP}] ) - java? ( >=virtual/jdk-1.5 )" -RDEPEND="tcl? ( >=dev-lang/tcl-8.5.15-r1:0=[${MULTILIB_USEDEP}] ) - java? ( >=virtual/jre-1.5 )" - -MULTILIB_WRAPPED_HEADERS=( - /usr/include/db${SLOT}/db.h -) - -PATCHES=( - # bug #510506 - "${FILESDIR}"/${PN}-4.8.24-java-manifest-location.patch - - # use the includes from the prefix - "${FILESDIR}"/${PN}-4.6-jni-check-prefix-first.patch - "${FILESDIR}"/${PN}-4.2-listen-to-java-options.patch - - # sqlite configure call has an extra leading .. - # upstreamed:5.2.36, missing in 5.3.x - "${FILESDIR}"/${PN}-5.2.28-sqlite-configure-path.patch - - # The upstream testsuite copies .lib and the binaries for each parallel test - # core, ~300MB each. This patch uses links instead, saves a lot of space. - "${FILESDIR}"/${PN}-6.0.20-test-link.patch - - # Needed when compiling with clang - "${FILESDIR}"/${PN}-5.1.29-rename-atomic-compare-exchange.patch -) - -src_prepare() { - cd "${S_BASE}" || die - for (( i=1 ; i<=${PATCHNO} ; i++ )) - do - eapply -p0 "${DISTDIR}"/patch."${MY_PV}"."${i}" - done - - default - - # Upstream release script grabs the dates when the script was run, so lets - # end-run them to keep the date the same. - export REAL_DB_RELEASE_DATE="$(awk \ - '/^DB_VERSION_STRING=/{ gsub(".*\\(|\\).*","",$0); print $0; }' \ - "${S_BASE}"/dist/configure)" - sed -r \ - -e "/^DB_RELEASE_DATE=/s~=.*~='${REAL_DB_RELEASE_DATE}'~g" \ - -i dist/RELEASE || die - - # Include the SLOT for Java JAR files - # This supersedes the unused jarlocation patches. - sed -r \ - -e '/jarfile=.*\.jar$/s,(.jar$),-$(LIBVERSION)\1,g' \ - -i dist/Makefile.in || die - - cd dist || die - rm aclocal/libtool.m4 || die - sed \ - -e '/AC_PROG_LIBTOOL$/aLT_OUTPUT' \ - -i configure.ac || die - sed \ - -e '/^AC_PATH_TOOL/s/ sh, none/ bash, none/' \ - -i aclocal/programs.m4 || die - - AT_M4DIR="aclocal aclocal_java" eautoreconf - - # Upstream sucks - they do autoconf and THEN replace the version variables. - . ./RELEASE - local v ev - for v in \ - DB_VERSION_{FAMILY,LETTER,RELEASE,MAJOR,MINOR} \ - DB_VERSION_{PATCH,FULL,UNIQUE_NAME,STRING,FULL_STRING} \ - DB_VERSION \ - DB_RELEASE_DATE ; do - ev="__EDIT_${v}__" - sed -e "s/${ev}/${!v}/g" -i configure || die - done - - # This is a false positive skip in the tests as the test-reviewer code - # looks for 'Skipping\s' - sed \ - -e '/db_repsite/s,Skipping:,Skipping,g' \ - -i "${S_BASE}"/test/tcl/reputils.tcl || die -} - -multilib_src_configure() { - local myconf=( - # sql_compat will cause a collision with sqlite3 - #--enable-sql_compat - # Don't --enable-sql* because we don't want to use bundled sqlite. - # See Gentoo bug #605688 - --enable-compat185 - --enable-dbm - --enable-o_direct - --without-uniquename - --disable-sql - --disable-sql_codegen - --disable-sql_compat - --disable-static - $([[ ${ABI} == amd64 ]] && echo --with-mutex=x86/gcc-assembly) - $(use_enable cxx) - $(use_enable cxx stl) - $(multilib_native_use_enable java) - $(use_enable test) - ) - - tc-ld-force-bfd #470634 #729510 - - # compilation with -O0 fails on amd64, see bug #171231 - if [[ ${ABI} == amd64 ]]; then - local CFLAGS="${CFLAGS}" CXXFLAGS="${CXXFLAGS}" - replace-flags -O0 -O2 - is-flagq -O[s123] || append-flags -O2 - fi - - # Add linker versions to the symbols. Easier to do, and safer than header file - # mumbo jumbo. - if use userland_GNU ; then - append-ldflags -Wl,--default-symver - fi - - if multilib_is_native_abi && use java ; then - myconf+=( - --with-java-prefix="${JAVA_HOME}" - --with-javac-flags="$(java-pkg_javac-args)" - ) - fi - - # Bug #270851: test needs TCL support - if use tcl || use test ; then - myconf+=( - --enable-tcl - --with-tcl="${EPREFIX}/usr/$(get_libdir)" - ) - else - myconf+=(--disable-tcl ) - fi - - ECONF_SOURCE="${S_BASE}"/dist \ - STRIP="true" \ - econf "${myconf[@]}" - - # The embedded assembly on ARM does not work on newer hardware - # so you CANNOT use --with-mutex=ARM/gcc-assembly anymore. - # Specifically, it uses the SWPB op, which was deprecated: - # http://www.keil.com/support/man/docs/armasm/armasm_dom1361289909499.htm - # The op ALSO cannot be used in ARM-Thumb mode. - # Trust the compiler instead. - # >=db-6.1 uses LDREX instead. -} - -multilib_src_install() { - emake DESTDIR="${D}" install - - db_src_install_headerslot - - db_src_install_usrlibcleanup - - if multilib_is_native_abi && use java; then - java-pkg_regso "${ED}"/usr/"$(get_libdir)"/libdb_java*.so - java-pkg_dojar "${ED}"/usr/"$(get_libdir)"/*.jar - rm -f "${ED}"/usr/"$(get_libdir)"/*.jar - fi -} - -multilib_src_install_all() { - db_src_install_usrbinslot - - db_src_install_doc - - dodir /usr/sbin - # This file is not always built, and no longer exists as of db-4.8 - if [[ -f "${ED}"/usr/bin/berkeley_db_svc ]] ; then - mv "${ED}"/usr/bin/berkeley_db_svc \ - "${ED}"/usr/sbin/berkeley_db"${SLOT/./}"_svc || die - fi - - # no static libraries - find "${ED}" -name '*.la' -delete || die -} - -pkg_postinst() { - multilib_foreach_abi db_fix_so -} - -pkg_postrm() { - multilib_foreach_abi db_fix_so -} - -src_test() { - # db_repsite is impossible to build, as upstream strips those sources. - # db_repsite is used directly in the setup_site_prog, - # setup_site_prog is called from open_site_prog - # which is called only from tests in the multi_repmgr group. - #sed -ri \ - # -e '/set subs/s,multi_repmgr,,g' \ - # "${S_BASE}/test/testparams.tcl" - sed -r \ - -e '/multi_repmgr/d' \ - -i "${S_BASE}/test/tcl/test.tcl" || die - - # This is the only failure in 5.2.28 so far, and looks like a false positive. - # Repmgr018 (btree): Test of repmgr stats. - # Repmgr018.a: Start a master. - # Repmgr018.b: Start a client. - # Repmgr018.c: Run some transactions at master. - # Rep_test: btree 20 key/data pairs starting at 0 - # Rep_test.a: put/get loop - # FAIL:07:05:59 (00:00:00) perm_no_failed_stat: expected 0, got 1 - sed -r \ - -e '/set parms.*repmgr018/d' \ - -e 's/repmgr018//g' \ - -i "${S_BASE}/test/tcl/test.tcl" || die - - multilib-minimal_src_test -} - -multilib_src_test() { - multilib_is_native_abi || return - - S="${BUILD_DIR}" db_src_test -} diff --git a/sys-libs/db/db-5.3.28-r6.ebuild b/sys-libs/db/db-5.3.28-r6.ebuild new file mode 100644 index 000000000000..a89dd6db5986 --- /dev/null +++ b/sys-libs/db/db-5.3.28-r6.ebuild @@ -0,0 +1,246 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=5 +inherit epatch db flag-o-matic java-pkg-opt-2 autotools multilib multilib-minimal toolchain-funcs + +#Number of official patches +#PATCHNO=`echo ${PV}|sed -e "s,\(.*_p\)\([0-9]*\),\2,"` +PATCHNO=${PV/*.*.*_p} +if [[ ${PATCHNO} == "${PV}" ]] ; then + MY_PV=${PV} + MY_P=${P} + PATCHNO=0 +else + MY_PV=${PV/_p${PATCHNO}} + MY_P=${PN}-${MY_PV} +fi + +RESTRICT="!test? ( test )" + +S_BASE="${WORKDIR}/${MY_P}" +S="${S_BASE}/build_unix" +DESCRIPTION="Oracle Berkeley DB" +HOMEPAGE="http://www.oracle.com/technetwork/database/database-technologies/berkeleydb/overview/index.html" +SRC_URI="http://download.oracle.com/berkeley-db/${MY_P}.tar.gz" +for (( i=1 ; i<=${PATCHNO} ; i++ )) ; do + export SRC_URI="${SRC_URI} http://www.oracle.com/technology/products/berkeley-db/db/update/${MY_PV}/patch.${MY_PV}.${i}" +done + +LICENSE="Sleepycat" +SLOT="5.3" +KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ppc ppc64 ~riscv ~s390 sparc x86" +IUSE="doc java cxx tcl test" + +REQUIRED_USE="test? ( tcl )" + +# the entire testsuite needs the TCL functionality +DEPEND="tcl? ( >=dev-lang/tcl-8.5.15-r1:0=[${MULTILIB_USEDEP}] ) + test? ( >=dev-lang/tcl-8.5.15-r1:0=[${MULTILIB_USEDEP}] ) + java? ( >=virtual/jdk-1.7 ) + >=sys-devel/binutils-2.16.1" +RDEPEND="tcl? ( >=dev-lang/tcl-8.5.15-r1:0=[${MULTILIB_USEDEP}] ) + java? ( >=virtual/jre-1.7 )" + +MULTILIB_WRAPPED_HEADERS=( + /usr/include/db5.3/db.h +) + +src_prepare() { + cd "${WORKDIR}"/"${MY_P}" + for (( i=1 ; i<=${PATCHNO} ; i++ )) + do + epatch "${DISTDIR}"/patch."${MY_PV}"."${i}" + done + + # bug #510506 + epatch "${FILESDIR}"/${PN}-4.8.24-java-manifest-location.patch + + # use the includes from the prefix + epatch "${FILESDIR}"/${PN}-4.6-jni-check-prefix-first.patch + epatch "${FILESDIR}"/${PN}-4.2-listen-to-java-options.patch + + # sqlite configure call has an extra leading .. + # upstreamed:5.2.36, missing in 5.3.x + epatch "${FILESDIR}"/${PN}-5.2.28-sqlite-configure-path.patch + + # The upstream testsuite copies .lib and the binaries for each parallel test + # core, ~300MB each. This patch uses links instead, saves a lot of space. + epatch "${FILESDIR}"/${PN}-6.0.20-test-link.patch + + # Needed when compiling with clang + epatch "${FILESDIR}"/${PN}-5.1.29-rename-atomic-compare-exchange.patch + + # Upstream release script grabs the dates when the script was run, so lets + # end-run them to keep the date the same. + export REAL_DB_RELEASE_DATE="$(awk \ + '/^DB_VERSION_STRING=/{ gsub(".*\\(|\\).*","",$0); print $0; }' \ + "${S_BASE}"/dist/configure)" + sed -r -i \ + -e "/^DB_RELEASE_DATE=/s~=.*~='${REAL_DB_RELEASE_DATE}'~g" \ + "${S_BASE}"/dist/RELEASE || die + + # Include the SLOT for Java JAR files + # This supersedes the unused jarlocation patches. + sed -r -i \ + -e '/jarfile=.*\.jar$/s,(.jar$),-$(LIBVERSION)\1,g' \ + "${S_BASE}"/dist/Makefile.in || die + + cd "${S_BASE}"/dist || die + rm -f aclocal/libtool.m4 + sed -i \ + -e '/AC_PROG_LIBTOOL$/aLT_OUTPUT' \ + configure.ac || die + sed -i \ + -e '/^AC_PATH_TOOL/s/ sh, none/ bash, none/' \ + aclocal/programs.m4 || die + AT_M4DIR="aclocal aclocal_java" eautoreconf + # Upstream sucks - they do autoconf and THEN replace the version variables. + . ./RELEASE + for v in \ + DB_VERSION_{FAMILY,LETTER,RELEASE,MAJOR,MINOR} \ + DB_VERSION_{PATCH,FULL,UNIQUE_NAME,STRING,FULL_STRING} \ + DB_VERSION \ + DB_RELEASE_DATE ; do + local ev="__EDIT_${v}__" + sed -i -e "s/${ev}/${!v}/g" configure || die + done + + # This is a false positive skip in the tests as the test-reviewer code + # looks for 'Skipping\s' + sed -i \ + -e '/db_repsite/s,Skipping:,Skipping,g' \ + "${S_BASE}"/test/tcl/reputils.tcl || die +} + +multilib_src_configure() { + local myconf=() + + tc-ld-force-bfd #470634 #729510 + + # compilation with -O0 fails on amd64, see bug #171231 + if [[ ${ABI} == amd64 ]]; then + local CFLAGS=${CFLAGS} CXXFLAGS=${CXXFLAGS} + replace-flags -O0 -O2 + is-flagq -O[s123] || append-flags -O2 + fi + + # Add linker versions to the symbols. Easier to do, and safer than header file + # mumbo jumbo. + if use userland_GNU ; then + append-ldflags -Wl,--default-symver + fi + + # use `set` here since the java opts will contain whitespace + if multilib_is_native_abi && use java ; then + myconf+=( + --with-java-prefix="${JAVA_HOME}" + --with-javac-flags="$(java-pkg_javac-args)" + ) + fi + + # Bug #270851: test needs TCL support + if use tcl || use test ; then + myconf+=( + --enable-tcl + --with-tcl="${EPREFIX}/usr/$(get_libdir)" + ) + else + myconf+=(--disable-tcl ) + fi + + # sql_compat will cause a collision with sqlite3 + # --enable-sql_compat + ECONF_SOURCE="${S_BASE}"/dist \ + STRIP="true" \ + econf \ + --enable-compat185 \ + --enable-dbm \ + --enable-o_direct \ + --without-uniquename \ + --enable-sql \ + --enable-sql_codegen \ + --disable-sql_compat \ + $([[ ${ABI} == amd64 ]] && echo --with-mutex=x86/gcc-assembly) \ + $(use_enable cxx) \ + $(use_enable cxx stl) \ + $(multilib_native_use_enable java) \ + "${myconf[@]}" \ + $(use_enable test) + # The embedded assembly on ARM does not work on newer hardware + # so you CANNOT use --with-mutex=ARM/gcc-assembly anymore. + # Specifically, it uses the SWPB op, which was deprecated: + # http://www.keil.com/support/man/docs/armasm/armasm_dom1361289909499.htm + # The op ALSO cannot be used in ARM-Thumb mode. + # Trust the compiler instead. + # >=db-6.1 uses LDREX instead. +} + +multilib_src_install() { + emake install DESTDIR="${D}" + + db_src_install_headerslot + + db_src_install_usrlibcleanup + + if multilib_is_native_abi && use java; then + java-pkg_regso "${ED}"/usr/"$(get_libdir)"/libdb_java*.so + java-pkg_dojar "${ED}"/usr/"$(get_libdir)"/*.jar + rm -f "${ED}"/usr/"$(get_libdir)"/*.jar + fi +} + +multilib_src_install_all() { + db_src_install_usrbinslot + + db_src_install_doc + + dodir /usr/sbin + # This file is not always built, and no longer exists as of db-4.8 + if [[ -f "${ED}"/usr/bin/berkeley_db_svc ]] ; then + mv "${ED}"/usr/bin/berkeley_db_svc \ + "${ED}"/usr/sbin/berkeley_db"${SLOT/./}"_svc || die + fi +} + +pkg_postinst() { + multilib_foreach_abi db_fix_so +} + +pkg_postrm() { + multilib_foreach_abi db_fix_so +} + +src_test() { + # db_repsite is impossible to build, as upstream strips those sources. + # db_repsite is used directly in the setup_site_prog, + # setup_site_prog is called from open_site_prog + # which is called only from tests in the multi_repmgr group. + #sed -ri \ + # -e '/set subs/s,multi_repmgr,,g' \ + # "${S_BASE}/test/testparams.tcl" + sed -ri \ + -e '/multi_repmgr/d' \ + "${S_BASE}/test/tcl/test.tcl" || die + + # This is the only failure in 5.2.28 so far, and looks like a false positive. + # Repmgr018 (btree): Test of repmgr stats. + # Repmgr018.a: Start a master. + # Repmgr018.b: Start a client. + # Repmgr018.c: Run some transactions at master. + # Rep_test: btree 20 key/data pairs starting at 0 + # Rep_test.a: put/get loop + # FAIL:07:05:59 (00:00:00) perm_no_failed_stat: expected 0, got 1 + sed -ri \ + -e '/set parms.*repmgr018/d' \ + -e 's/repmgr018//g' \ + "${S_BASE}/test/tcl/test.tcl" || die + + multilib-minimal_src_test +} + +multilib_src_test() { + multilib_is_native_abi || return + + S=${BUILD_DIR} db_src_test +} diff --git a/sys-libs/db/db-5.3.28-r7.ebuild b/sys-libs/db/db-5.3.28-r7.ebuild new file mode 100644 index 000000000000..9e789e440c02 --- /dev/null +++ b/sys-libs/db/db-5.3.28-r7.ebuild @@ -0,0 +1,254 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 +inherit autotools db flag-o-matic java-pkg-opt-2 multilib multilib-minimal toolchain-funcs + +#Number of official patches +#PATCHNO=`echo ${PV}|sed -e "s,\(.*_p\)\([0-9]*\),\2,"` +PATCHNO="${PV/*.*.*_p}" +if [[ ${PATCHNO} == "${PV}" ]] ; then + MY_PV="${PV}" + MY_P="${P}" + PATCHNO=0 +else + MY_PV="${PV/_p${PATCHNO}}" + MY_P="${PN}-${MY_PV}" +fi + +RESTRICT="!test? ( test )" + +S_BASE="${WORKDIR}/${MY_P}" +S="${S_BASE}/build_unix" +DESCRIPTION="Oracle Berkeley DB" +HOMEPAGE="http://www.oracle.com/technetwork/database/database-technologies/berkeleydb/overview/index.html" +SRC_URI="http://download.oracle.com/berkeley-db/${MY_P}.tar.gz" +for (( i=1 ; i<=${PATCHNO} ; i++ )) ; do + export SRC_URI="${SRC_URI} http://www.oracle.com/technology/products/berkeley-db/db/update/${MY_PV}/patch.${MY_PV}.${i}" +done + +LICENSE="Sleepycat" +SLOT="$(ver_cut 1-2)" +KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ppc ~ppc64 ~riscv ~s390 sparc x86" +IUSE="doc java cxx tcl test" + +REQUIRED_USE="test? ( tcl )" + +# the entire testsuite needs the TCL functionality +DEPEND="tcl? ( >=dev-lang/tcl-8.5.15-r1:0=[${MULTILIB_USEDEP}] ) + test? ( >=dev-lang/tcl-8.5.15-r1:0=[${MULTILIB_USEDEP}] ) + java? ( >=virtual/jdk-1.7 )" +RDEPEND="tcl? ( >=dev-lang/tcl-8.5.15-r1:0=[${MULTILIB_USEDEP}] ) + java? ( >=virtual/jre-1.7 )" + +MULTILIB_WRAPPED_HEADERS=( + /usr/include/db${SLOT}/db.h +) + +PATCHES=( + # bug #510506 + "${FILESDIR}"/${PN}-4.8.24-java-manifest-location.patch + + # use the includes from the prefix + "${FILESDIR}"/${PN}-4.6-jni-check-prefix-first.patch + "${FILESDIR}"/${PN}-4.2-listen-to-java-options.patch + + # sqlite configure call has an extra leading .. + # upstreamed:5.2.36, missing in 5.3.x + "${FILESDIR}"/${PN}-5.2.28-sqlite-configure-path.patch + + # The upstream testsuite copies .lib and the binaries for each parallel test + # core, ~300MB each. This patch uses links instead, saves a lot of space. + "${FILESDIR}"/${PN}-6.0.20-test-link.patch + + # Needed when compiling with clang + "${FILESDIR}"/${PN}-5.1.29-rename-atomic-compare-exchange.patch +) + +src_prepare() { + cd "${S_BASE}" || die + for (( i=1 ; i<=${PATCHNO} ; i++ )) + do + eapply -p0 "${DISTDIR}"/patch."${MY_PV}"."${i}" + done + + default + + # Upstream release script grabs the dates when the script was run, so lets + # end-run them to keep the date the same. + export REAL_DB_RELEASE_DATE="$(awk \ + '/^DB_VERSION_STRING=/{ gsub(".*\\(|\\).*","",$0); print $0; }' \ + "${S_BASE}"/dist/configure)" + sed -r \ + -e "/^DB_RELEASE_DATE=/s~=.*~='${REAL_DB_RELEASE_DATE}'~g" \ + -i dist/RELEASE || die + + # Include the SLOT for Java JAR files + # This supersedes the unused jarlocation patches. + sed -r \ + -e '/jarfile=.*\.jar$/s,(.jar$),-$(LIBVERSION)\1,g' \ + -i dist/Makefile.in || die + + cd dist || die + rm aclocal/libtool.m4 || die + sed \ + -e '/AC_PROG_LIBTOOL$/aLT_OUTPUT' \ + -i configure.ac || die + sed \ + -e '/^AC_PATH_TOOL/s/ sh, none/ bash, none/' \ + -i aclocal/programs.m4 || die + + AT_M4DIR="aclocal aclocal_java" eautoreconf + + # Upstream sucks - they do autoconf and THEN replace the version variables. + . ./RELEASE + local v ev + for v in \ + DB_VERSION_{FAMILY,LETTER,RELEASE,MAJOR,MINOR} \ + DB_VERSION_{PATCH,FULL,UNIQUE_NAME,STRING,FULL_STRING} \ + DB_VERSION \ + DB_RELEASE_DATE ; do + ev="__EDIT_${v}__" + sed -e "s/${ev}/${!v}/g" -i configure || die + done + + # This is a false positive skip in the tests as the test-reviewer code + # looks for 'Skipping\s' + sed \ + -e '/db_repsite/s,Skipping:,Skipping,g' \ + -i "${S_BASE}"/test/tcl/reputils.tcl || die +} + +multilib_src_configure() { + local myconf=( + # sql_compat will cause a collision with sqlite3 + #--enable-sql_compat + # Don't --enable-sql* because we don't want to use bundled sqlite. + # See Gentoo bug #605688 + --enable-compat185 + --enable-dbm + --enable-o_direct + --without-uniquename + --disable-sql + --disable-sql_codegen + --disable-sql_compat + $([[ ${ABI} == amd64 ]] && echo --with-mutex=x86/gcc-assembly) + $(use_enable cxx) + $(use_enable cxx stl) + $(multilib_native_use_enable java) + $(use_enable test) + ) + + tc-ld-force-bfd #470634 #729510 + + # compilation with -O0 fails on amd64, see bug #171231 + if [[ ${ABI} == amd64 ]]; then + local CFLAGS="${CFLAGS}" CXXFLAGS="${CXXFLAGS}" + replace-flags -O0 -O2 + is-flagq -O[s123] || append-flags -O2 + fi + + # Add linker versions to the symbols. Easier to do, and safer than header file + # mumbo jumbo. + if use userland_GNU ; then + append-ldflags -Wl,--default-symver + fi + + if multilib_is_native_abi && use java ; then + myconf+=( + --with-java-prefix="${JAVA_HOME}" + --with-javac-flags="$(java-pkg_javac-args)" + ) + fi + + # Bug #270851: test needs TCL support + if use tcl || use test ; then + myconf+=( + --enable-tcl + --with-tcl="${EPREFIX}/usr/$(get_libdir)" + ) + else + myconf+=(--disable-tcl ) + fi + + ECONF_SOURCE="${S_BASE}"/dist \ + STRIP="true" \ + econf "${myconf[@]}" + + # The embedded assembly on ARM does not work on newer hardware + # so you CANNOT use --with-mutex=ARM/gcc-assembly anymore. + # Specifically, it uses the SWPB op, which was deprecated: + # http://www.keil.com/support/man/docs/armasm/armasm_dom1361289909499.htm + # The op ALSO cannot be used in ARM-Thumb mode. + # Trust the compiler instead. + # >=db-6.1 uses LDREX instead. +} + +multilib_src_install() { + emake DESTDIR="${D}" install + + db_src_install_headerslot + + db_src_install_usrlibcleanup + + if multilib_is_native_abi && use java; then + java-pkg_regso "${ED}"/usr/"$(get_libdir)"/libdb_java*.so + java-pkg_dojar "${ED}"/usr/"$(get_libdir)"/*.jar + rm -f "${ED}"/usr/"$(get_libdir)"/*.jar + fi +} + +multilib_src_install_all() { + db_src_install_usrbinslot + + db_src_install_doc + + dodir /usr/sbin + # This file is not always built, and no longer exists as of db-4.8 + if [[ -f "${ED}"/usr/bin/berkeley_db_svc ]] ; then + mv "${ED}"/usr/bin/berkeley_db_svc \ + "${ED}"/usr/sbin/berkeley_db"${SLOT/./}"_svc || die + fi +} + +pkg_postinst() { + multilib_foreach_abi db_fix_so +} + +pkg_postrm() { + multilib_foreach_abi db_fix_so +} + +src_test() { + # db_repsite is impossible to build, as upstream strips those sources. + # db_repsite is used directly in the setup_site_prog, + # setup_site_prog is called from open_site_prog + # which is called only from tests in the multi_repmgr group. + #sed -ri \ + # -e '/set subs/s,multi_repmgr,,g' \ + # "${S_BASE}/test/testparams.tcl" + sed -r \ + -e '/multi_repmgr/d' \ + -i "${S_BASE}/test/tcl/test.tcl" || die + + # This is the only failure in 5.2.28 so far, and looks like a false positive. + # Repmgr018 (btree): Test of repmgr stats. + # Repmgr018.a: Start a master. + # Repmgr018.b: Start a client. + # Repmgr018.c: Run some transactions at master. + # Rep_test: btree 20 key/data pairs starting at 0 + # Rep_test.a: put/get loop + # FAIL:07:05:59 (00:00:00) perm_no_failed_stat: expected 0, got 1 + sed -r \ + -e '/set parms.*repmgr018/d' \ + -e 's/repmgr018//g' \ + -i "${S_BASE}/test/tcl/test.tcl" || die + + multilib-minimal_src_test +} + +multilib_src_test() { + multilib_is_native_abi || return + + S="${BUILD_DIR}" db_src_test +} diff --git a/sys-libs/db/db-5.3.28-r8.ebuild b/sys-libs/db/db-5.3.28-r8.ebuild new file mode 100644 index 000000000000..6a25488eddc3 --- /dev/null +++ b/sys-libs/db/db-5.3.28-r8.ebuild @@ -0,0 +1,258 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 +inherit autotools db flag-o-matic java-pkg-opt-2 multilib multilib-minimal toolchain-funcs + +#Number of official patches +#PATCHNO=`echo ${PV}|sed -e "s,\(.*_p\)\([0-9]*\),\2,"` +PATCHNO="${PV/*.*.*_p}" +if [[ ${PATCHNO} == "${PV}" ]] ; then + MY_PV="${PV}" + MY_P="${P}" + PATCHNO=0 +else + MY_PV="${PV/_p${PATCHNO}}" + MY_P="${PN}-${MY_PV}" +fi + +RESTRICT="!test? ( test )" + +S_BASE="${WORKDIR}/${MY_P}" +S="${S_BASE}/build_unix" +DESCRIPTION="Oracle Berkeley DB" +HOMEPAGE="http://www.oracle.com/technetwork/database/database-technologies/berkeleydb/overview/index.html" +SRC_URI="http://download.oracle.com/berkeley-db/${MY_P}.tar.gz" +for (( i=1 ; i<=${PATCHNO} ; i++ )) ; do + export SRC_URI="${SRC_URI} http://www.oracle.com/technology/products/berkeley-db/db/update/${MY_PV}/patch.${MY_PV}.${i}" +done + +LICENSE="Sleepycat" +SLOT="$(ver_cut 1-2)" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" +IUSE="doc java cxx tcl test" + +REQUIRED_USE="test? ( tcl )" + +# the entire testsuite needs the TCL functionality +DEPEND="tcl? ( >=dev-lang/tcl-8.5.15-r1:0=[${MULTILIB_USEDEP}] ) + test? ( >=dev-lang/tcl-8.5.15-r1:0=[${MULTILIB_USEDEP}] ) + java? ( >=virtual/jdk-1.7 )" +RDEPEND="tcl? ( >=dev-lang/tcl-8.5.15-r1:0=[${MULTILIB_USEDEP}] ) + java? ( >=virtual/jre-1.7 )" + +MULTILIB_WRAPPED_HEADERS=( + /usr/include/db${SLOT}/db.h +) + +PATCHES=( + # bug #510506 + "${FILESDIR}"/${PN}-4.8.24-java-manifest-location.patch + + # use the includes from the prefix + "${FILESDIR}"/${PN}-4.6-jni-check-prefix-first.patch + "${FILESDIR}"/${PN}-4.2-listen-to-java-options.patch + + # sqlite configure call has an extra leading .. + # upstreamed:5.2.36, missing in 5.3.x + "${FILESDIR}"/${PN}-5.2.28-sqlite-configure-path.patch + + # The upstream testsuite copies .lib and the binaries for each parallel test + # core, ~300MB each. This patch uses links instead, saves a lot of space. + "${FILESDIR}"/${PN}-6.0.20-test-link.patch + + # Needed when compiling with clang + "${FILESDIR}"/${PN}-5.1.29-rename-atomic-compare-exchange.patch +) + +src_prepare() { + cd "${S_BASE}" || die + for (( i=1 ; i<=${PATCHNO} ; i++ )) + do + eapply -p0 "${DISTDIR}"/patch."${MY_PV}"."${i}" + done + + default + + # Upstream release script grabs the dates when the script was run, so lets + # end-run them to keep the date the same. + export REAL_DB_RELEASE_DATE="$(awk \ + '/^DB_VERSION_STRING=/{ gsub(".*\\(|\\).*","",$0); print $0; }' \ + "${S_BASE}"/dist/configure)" + sed -r \ + -e "/^DB_RELEASE_DATE=/s~=.*~='${REAL_DB_RELEASE_DATE}'~g" \ + -i dist/RELEASE || die + + # Include the SLOT for Java JAR files + # This supersedes the unused jarlocation patches. + sed -r \ + -e '/jarfile=.*\.jar$/s,(.jar$),-$(LIBVERSION)\1,g' \ + -i dist/Makefile.in || die + + cd dist || die + rm aclocal/libtool.m4 || die + sed \ + -e '/AC_PROG_LIBTOOL$/aLT_OUTPUT' \ + -i configure.ac || die + sed \ + -e '/^AC_PATH_TOOL/s/ sh, none/ bash, none/' \ + -i aclocal/programs.m4 || die + + AT_M4DIR="aclocal aclocal_java" eautoreconf + + # Upstream sucks - they do autoconf and THEN replace the version variables. + . ./RELEASE + local v ev + for v in \ + DB_VERSION_{FAMILY,LETTER,RELEASE,MAJOR,MINOR} \ + DB_VERSION_{PATCH,FULL,UNIQUE_NAME,STRING,FULL_STRING} \ + DB_VERSION \ + DB_RELEASE_DATE ; do + ev="__EDIT_${v}__" + sed -e "s/${ev}/${!v}/g" -i configure || die + done + + # This is a false positive skip in the tests as the test-reviewer code + # looks for 'Skipping\s' + sed \ + -e '/db_repsite/s,Skipping:,Skipping,g' \ + -i "${S_BASE}"/test/tcl/reputils.tcl || die +} + +multilib_src_configure() { + local myconf=( + # sql_compat will cause a collision with sqlite3 + #--enable-sql_compat + # Don't --enable-sql* because we don't want to use bundled sqlite. + # See Gentoo bug #605688 + --enable-compat185 + --enable-dbm + --enable-o_direct + --without-uniquename + --disable-sql + --disable-sql_codegen + --disable-sql_compat + --disable-static + $([[ ${ABI} == amd64 ]] && echo --with-mutex=x86/gcc-assembly) + $(use_enable cxx) + $(use_enable cxx stl) + $(multilib_native_use_enable java) + $(use_enable test) + ) + + tc-ld-force-bfd #470634 #729510 + + # compilation with -O0 fails on amd64, see bug #171231 + if [[ ${ABI} == amd64 ]]; then + local CFLAGS="${CFLAGS}" CXXFLAGS="${CXXFLAGS}" + replace-flags -O0 -O2 + is-flagq -O[s123] || append-flags -O2 + fi + + # Add linker versions to the symbols. Easier to do, and safer than header file + # mumbo jumbo. + if use userland_GNU ; then + append-ldflags -Wl,--default-symver + fi + + if multilib_is_native_abi && use java ; then + myconf+=( + --with-java-prefix="${JAVA_HOME}" + --with-javac-flags="$(java-pkg_javac-args)" + ) + fi + + # Bug #270851: test needs TCL support + if use tcl || use test ; then + myconf+=( + --enable-tcl + --with-tcl="${EPREFIX}/usr/$(get_libdir)" + ) + else + myconf+=(--disable-tcl ) + fi + + ECONF_SOURCE="${S_BASE}"/dist \ + STRIP="true" \ + econf "${myconf[@]}" + + # The embedded assembly on ARM does not work on newer hardware + # so you CANNOT use --with-mutex=ARM/gcc-assembly anymore. + # Specifically, it uses the SWPB op, which was deprecated: + # http://www.keil.com/support/man/docs/armasm/armasm_dom1361289909499.htm + # The op ALSO cannot be used in ARM-Thumb mode. + # Trust the compiler instead. + # >=db-6.1 uses LDREX instead. +} + +multilib_src_install() { + emake DESTDIR="${D}" install + + db_src_install_headerslot + + db_src_install_usrlibcleanup + + if multilib_is_native_abi && use java; then + java-pkg_regso "${ED}"/usr/"$(get_libdir)"/libdb_java*.so + java-pkg_dojar "${ED}"/usr/"$(get_libdir)"/*.jar + rm -f "${ED}"/usr/"$(get_libdir)"/*.jar + fi +} + +multilib_src_install_all() { + db_src_install_usrbinslot + + db_src_install_doc + + dodir /usr/sbin + # This file is not always built, and no longer exists as of db-4.8 + if [[ -f "${ED}"/usr/bin/berkeley_db_svc ]] ; then + mv "${ED}"/usr/bin/berkeley_db_svc \ + "${ED}"/usr/sbin/berkeley_db"${SLOT/./}"_svc || die + fi + + # no static libraries + find "${ED}" -name '*.la' -delete || die +} + +pkg_postinst() { + multilib_foreach_abi db_fix_so +} + +pkg_postrm() { + multilib_foreach_abi db_fix_so +} + +src_test() { + # db_repsite is impossible to build, as upstream strips those sources. + # db_repsite is used directly in the setup_site_prog, + # setup_site_prog is called from open_site_prog + # which is called only from tests in the multi_repmgr group. + #sed -ri \ + # -e '/set subs/s,multi_repmgr,,g' \ + # "${S_BASE}/test/testparams.tcl" + sed -r \ + -e '/multi_repmgr/d' \ + -i "${S_BASE}/test/tcl/test.tcl" || die + + # This is the only failure in 5.2.28 so far, and looks like a false positive. + # Repmgr018 (btree): Test of repmgr stats. + # Repmgr018.a: Start a master. + # Repmgr018.b: Start a client. + # Repmgr018.c: Run some transactions at master. + # Rep_test: btree 20 key/data pairs starting at 0 + # Rep_test.a: put/get loop + # FAIL:07:05:59 (00:00:00) perm_no_failed_stat: expected 0, got 1 + sed -r \ + -e '/set parms.*repmgr018/d' \ + -e 's/repmgr018//g' \ + -i "${S_BASE}/test/tcl/test.tcl" || die + + multilib-minimal_src_test +} + +multilib_src_test() { + multilib_is_native_abi || return + + S="${BUILD_DIR}" db_src_test +} diff --git a/sys-libs/db/db-6.0.35-r2.ebuild b/sys-libs/db/db-6.0.35-r2.ebuild deleted file mode 100644 index 5d1ee090cf51..000000000000 --- a/sys-libs/db/db-6.0.35-r2.ebuild +++ /dev/null @@ -1,253 +0,0 @@ -# Copyright 1999-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 -inherit autotools db flag-o-matic java-pkg-opt-2 multilib multilib-minimal toolchain-funcs - -#Number of official patches -#PATCHNO=`echo ${PV}|sed -e "s,\(.*_p\)\([0-9]*\),\2,"` -PATCHNO="${PV/*.*.*_p}" -if [[ ${PATCHNO} == "${PV}" ]] ; then - MY_PV="${PV}" - MY_P="${P}" - PATCHNO=0 -else - MY_PV="${PV/_p${PATCHNO}}" - MY_P="${PN}-${MY_PV}" -fi - -RESTRICT="!test? ( test )" - -S_BASE="${WORKDIR}/${MY_P}" -S="${S_BASE}/build_unix" -DESCRIPTION="Oracle Berkeley DB" -HOMEPAGE="http://www.oracle.com/technetwork/database/database-technologies/berkeleydb/overview/index.html" -SRC_URI="http://download.oracle.com/berkeley-db/${MY_P}.tar.gz" -for (( i=1 ; i<=${PATCHNO} ; i++ )) ; do - export SRC_URI="${SRC_URI} http://www.oracle.com/technology/products/berkeley-db/db/update/${MY_PV}/patch.${MY_PV}.${i}" -done - -LICENSE="AGPL-3" -SLOT="$(ver_cut 1-2)" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" -IUSE="doc java cxx tcl test" - -REQUIRED_USE="test? ( tcl )" - -# the entire testsuite needs the TCL functionality -DEPEND="tcl? ( >=dev-lang/tcl-8.5.15-r1:0=[${MULTILIB_USEDEP}] ) - test? ( >=dev-lang/tcl-8.5.15-r1:0=[${MULTILIB_USEDEP}] ) - java? ( >=virtual/jdk-1.5 )" -RDEPEND="tcl? ( >=dev-lang/tcl-8.5.15-r1:0=[${MULTILIB_USEDEP}] ) - java? ( >=virtual/jre-1.5 )" - -MULTILIB_WRAPPED_HEADERS=( - /usr/include/db${SLOT}/db.h -) - -PATCHES=( - # bug #510506 - "${FILESDIR}"/${PN}-4.8.24-java-manifest-location.patch - - # use the includes from the prefix - "${FILESDIR}"/${PN}-4.6-jni-check-prefix-first.patch - "${FILESDIR}"/${PN}-4.2-listen-to-java-options.patch - - # sqlite configure call has an extra leading .. - # upstreamed:5.2.36, missing in 5.3.x/6.x - # still needs to be patched in 6.0.20 - "${FILESDIR}"/${PN}-6.0.35-sqlite-configure-path.patch - - # The upstream testsuite copies .lib and the binaries for each parallel test - # core, ~300MB each. This patch uses links instead, saves a lot of space. - "${FILESDIR}"/${PN}-6.0.20-test-link.patch -) - -src_prepare() { - cd "${S_BASE}" || die - for (( i=1 ; i<=${PATCHNO} ; i++ )) - do - eapply -p0 "${DISTDIR}"/patch."${MY_PV}"."${i}" - done - - default - - # Upstream release script grabs the dates when the script was run, so lets - # end-run them to keep the date the same. - export REAL_DB_RELEASE_DATE="$(awk \ - '/^DB_VERSION_STRING=/{ gsub(".*\\(|\\).*","",$0); print $0; }' \ - "${S_BASE}"/dist/configure)" - sed -r \ - -e "/^DB_RELEASE_DATE=/s~=.*~='${REAL_DB_RELEASE_DATE}'~g" \ - -i dist/RELEASE || die - - # Include the SLOT for Java JAR files - # This supersedes the unused jarlocation patches. - sed -r \ - -e '/jarfile=.*\.jar$/s,(.jar$),-$(LIBVERSION)\1,g' \ - -i dist/Makefile.in || die - - cd dist || die - rm aclocal/libtool.m4 || die - sed \ - -e '/AC_PROG_LIBTOOL$/aLT_OUTPUT' \ - -i configure.ac || die - sed \ - -e '/^AC_PATH_TOOL/s/ sh, none/ bash, none/' \ - -i aclocal/programs.m4 || die - - AT_M4DIR="aclocal aclocal_java" eautoreconf - - # Upstream sucks - they do autoconf and THEN replace the version variables. - . ./RELEASE - local v ev - for v in \ - DB_VERSION_{FAMILY,LETTER,RELEASE,MAJOR,MINOR} \ - DB_VERSION_{PATCH,FULL,UNIQUE_NAME,STRING,FULL_STRING} \ - DB_VERSION \ - DB_RELEASE_DATE ; do - ev="__EDIT_${v}__" - sed -e "s/${ev}/${!v}/g" -i configure || die - done - - # This is a false positive skip in the tests as the test-reviewer code - # looks for 'Skipping\s' - sed \ - -e '/db_repsite/s,Skipping:,Skipping,g' \ - -i "${S_BASE}"/test/tcl/reputils.tcl || die -} - -multilib_src_configure() { - local myconf=( - --enable-compat185 - --enable-dbm - --enable-o_direct - --without-uniquename - --disable-sql - --disable-sql_codegen - --disable-sql_compat - $([[ ${ABI} == amd64 ]] && echo --with-mutex=x86/gcc-assembly) - $(use_enable cxx) - $(use_enable cxx stl) - $(multilib_native_use_enable java) - $(use_enable test) - ) - - tc-ld-force-bfd #470634 #729510 - - # compilation with -O0 fails on amd64, see bug #171231 - if [[ ${ABI} == amd64 ]]; then - local CFLAGS=${CFLAGS} CXXFLAGS=${CXXFLAGS} - replace-flags -O0 -O2 - is-flagq -O[s123] || append-flags -O2 - fi - - # Add linker versions to the symbols. Easier to do, and safer than header file - # mumbo jumbo. - if use userland_GNU ; then - append-ldflags -Wl,--default-symver - fi - - # use `set` here since the java opts will contain whitespace - if multilib_is_native_abi && use java ; then - myconf+=( - --with-java-prefix="${JAVA_HOME}" - --with-javac-flags="$(java-pkg_javac-args)" - ) - fi - - # Bug #270851: test needs TCL support - if use tcl || use test ; then - myconf+=( - --enable-tcl - --with-tcl="${EPREFIX}/usr/$(get_libdir)" - ) - else - myconf+=(--disable-tcl ) - fi - - # sql_compat will cause a collision with sqlite3 - # --enable-sql_compat - # Don't --enable-sql* because we don't want to use bundled sqlite. - # See Gentoo bug #605688 - ECONF_SOURCE="${S_BASE}"/dist \ - STRIP="true" \ - econf "${myconf[@]}" - - # The embedded assembly on ARM does not work on newer hardware - # so you CANNOT use --with-mutex=ARM/gcc-assembly anymore. - # Specifically, it uses the SWPB op, which was deprecated: - # http://www.keil.com/support/man/docs/armasm/armasm_dom1361289909499.htm - # The op ALSO cannot be used in ARM-Thumb mode. - # Trust the compiler instead. - # >=db-6.1 uses LDREX instead. -} - -multilib_src_install() { - emake DESTDIR="${D}" install - - db_src_install_headerslot - - db_src_install_usrlibcleanup - - if multilib_is_native_abi && use java; then - java-pkg_regso "${ED}"/usr/"$(get_libdir)"/libdb_java*.so - java-pkg_dojar "${ED}"/usr/"$(get_libdir)"/*.jar - rm -f "${ED}"/usr/"$(get_libdir)"/*.jar - fi -} - -multilib_src_install_all() { - db_src_install_usrbinslot - - db_src_install_doc - - dodir /usr/sbin - # This file is not always built, and no longer exists as of db-4.8 - if [[ -f "${ED}"/usr/bin/berkeley_db_svc ]] ; then - mv "${ED}"/usr/bin/berkeley_db_svc \ - "${ED}"/usr/sbin/berkeley_db"${SLOT/./}"_svc || die - fi -} - -pkg_postinst() { - multilib_foreach_abi db_fix_so -} - -pkg_postrm() { - multilib_foreach_abi db_fix_so -} - -src_test() { - # db_repsite is impossible to build, as upstream strips those sources. - # db_repsite is used directly in the setup_site_prog, - # setup_site_prog is called from open_site_prog - # which is called only from tests in the multi_repmgr group. - #sed -r \ - # -e '/set subs/s,multi_repmgr,,g' \ - # -i "${S_BASE}/test/testparams.tcl" - sed -r \ - -e '/multi_repmgr/d' \ - -i "${S_BASE}/test/tcl/test.tcl" || die - - # This is the only failure in 5.2.28 so far, and looks like a false positive. - # Repmgr018 (btree): Test of repmgr stats. - # Repmgr018.a: Start a master. - # Repmgr018.b: Start a client. - # Repmgr018.c: Run some transactions at master. - # Rep_test: btree 20 key/data pairs starting at 0 - # Rep_test.a: put/get loop - # FAIL:07:05:59 (00:00:00) perm_no_failed_stat: expected 0, got 1 - sed -r \ - -e '/set parms.*repmgr018/d' \ - -e 's/repmgr018//g' \ - -i "${S_BASE}/test/tcl/test.tcl" || die - - multilib-minimal_src_test -} - -multilib_src_test() { - multilib_is_native_abi || return - - S="${BUILD_DIR}" db_src_test -} diff --git a/sys-libs/db/db-6.0.35-r3.ebuild b/sys-libs/db/db-6.0.35-r3.ebuild deleted file mode 100644 index 8a7daad00b0d..000000000000 --- a/sys-libs/db/db-6.0.35-r3.ebuild +++ /dev/null @@ -1,257 +0,0 @@ -# Copyright 1999-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 -inherit autotools db flag-o-matic java-pkg-opt-2 multilib multilib-minimal toolchain-funcs - -#Number of official patches -#PATCHNO=`echo ${PV}|sed -e "s,\(.*_p\)\([0-9]*\),\2,"` -PATCHNO="${PV/*.*.*_p}" -if [[ ${PATCHNO} == "${PV}" ]] ; then - MY_PV="${PV}" - MY_P="${P}" - PATCHNO=0 -else - MY_PV="${PV/_p${PATCHNO}}" - MY_P="${PN}-${MY_PV}" -fi - -RESTRICT="!test? ( test )" - -S_BASE="${WORKDIR}/${MY_P}" -S="${S_BASE}/build_unix" -DESCRIPTION="Oracle Berkeley DB" -HOMEPAGE="http://www.oracle.com/technetwork/database/database-technologies/berkeleydb/overview/index.html" -SRC_URI="http://download.oracle.com/berkeley-db/${MY_P}.tar.gz" -for (( i=1 ; i<=${PATCHNO} ; i++ )) ; do - export SRC_URI="${SRC_URI} http://www.oracle.com/technology/products/berkeley-db/db/update/${MY_PV}/patch.${MY_PV}.${i}" -done - -LICENSE="AGPL-3" -SLOT="$(ver_cut 1-2)" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" -IUSE="doc java cxx tcl test" - -REQUIRED_USE="test? ( tcl )" - -# the entire testsuite needs the TCL functionality -DEPEND="tcl? ( >=dev-lang/tcl-8.5.15-r1:0=[${MULTILIB_USEDEP}] ) - test? ( >=dev-lang/tcl-8.5.15-r1:0=[${MULTILIB_USEDEP}] ) - java? ( >=virtual/jdk-1.5 )" -RDEPEND="tcl? ( >=dev-lang/tcl-8.5.15-r1:0=[${MULTILIB_USEDEP}] ) - java? ( >=virtual/jre-1.5 )" - -MULTILIB_WRAPPED_HEADERS=( - /usr/include/db${SLOT}/db.h -) - -PATCHES=( - # bug #510506 - "${FILESDIR}"/${PN}-4.8.24-java-manifest-location.patch - - # use the includes from the prefix - "${FILESDIR}"/${PN}-4.6-jni-check-prefix-first.patch - "${FILESDIR}"/${PN}-4.2-listen-to-java-options.patch - - # sqlite configure call has an extra leading .. - # upstreamed:5.2.36, missing in 5.3.x/6.x - # still needs to be patched in 6.0.20 - "${FILESDIR}"/${PN}-6.0.35-sqlite-configure-path.patch - - # The upstream testsuite copies .lib and the binaries for each parallel test - # core, ~300MB each. This patch uses links instead, saves a lot of space. - "${FILESDIR}"/${PN}-6.0.20-test-link.patch -) - -src_prepare() { - cd "${S_BASE}" || die - for (( i=1 ; i<=${PATCHNO} ; i++ )) - do - eapply -p0 "${DISTDIR}"/patch."${MY_PV}"."${i}" - done - - default - - # Upstream release script grabs the dates when the script was run, so lets - # end-run them to keep the date the same. - export REAL_DB_RELEASE_DATE="$(awk \ - '/^DB_VERSION_STRING=/{ gsub(".*\\(|\\).*","",$0); print $0; }' \ - "${S_BASE}"/dist/configure)" - sed -r \ - -e "/^DB_RELEASE_DATE=/s~=.*~='${REAL_DB_RELEASE_DATE}'~g" \ - -i dist/RELEASE || die - - # Include the SLOT for Java JAR files - # This supersedes the unused jarlocation patches. - sed -r \ - -e '/jarfile=.*\.jar$/s,(.jar$),-$(LIBVERSION)\1,g' \ - -i dist/Makefile.in || die - - cd dist || die - rm aclocal/libtool.m4 || die - sed \ - -e '/AC_PROG_LIBTOOL$/aLT_OUTPUT' \ - -i configure.ac || die - sed \ - -e '/^AC_PATH_TOOL/s/ sh, none/ bash, none/' \ - -i aclocal/programs.m4 || die - - AT_M4DIR="aclocal aclocal_java" eautoreconf - - # Upstream sucks - they do autoconf and THEN replace the version variables. - . ./RELEASE - local v ev - for v in \ - DB_VERSION_{FAMILY,LETTER,RELEASE,MAJOR,MINOR} \ - DB_VERSION_{PATCH,FULL,UNIQUE_NAME,STRING,FULL_STRING} \ - DB_VERSION \ - DB_RELEASE_DATE ; do - ev="__EDIT_${v}__" - sed -e "s/${ev}/${!v}/g" -i configure || die - done - - # This is a false positive skip in the tests as the test-reviewer code - # looks for 'Skipping\s' - sed \ - -e '/db_repsite/s,Skipping:,Skipping,g' \ - -i "${S_BASE}"/test/tcl/reputils.tcl || die -} - -multilib_src_configure() { - local myconf=( - --enable-compat185 - --enable-dbm - --enable-o_direct - --without-uniquename - --disable-sql - --disable-sql_codegen - --disable-sql_compat - --disable-static - $([[ ${ABI} == amd64 ]] && echo --with-mutex=x86/gcc-assembly) - $(use_enable cxx) - $(use_enable cxx stl) - $(multilib_native_use_enable java) - $(use_enable test) - ) - - tc-ld-force-bfd #470634 #729510 - - # compilation with -O0 fails on amd64, see bug #171231 - if [[ ${ABI} == amd64 ]]; then - local CFLAGS=${CFLAGS} CXXFLAGS=${CXXFLAGS} - replace-flags -O0 -O2 - is-flagq -O[s123] || append-flags -O2 - fi - - # Add linker versions to the symbols. Easier to do, and safer than header file - # mumbo jumbo. - if use userland_GNU ; then - append-ldflags -Wl,--default-symver - fi - - # use `set` here since the java opts will contain whitespace - if multilib_is_native_abi && use java ; then - myconf+=( - --with-java-prefix="${JAVA_HOME}" - --with-javac-flags="$(java-pkg_javac-args)" - ) - fi - - # Bug #270851: test needs TCL support - if use tcl || use test ; then - myconf+=( - --enable-tcl - --with-tcl="${EPREFIX}/usr/$(get_libdir)" - ) - else - myconf+=(--disable-tcl ) - fi - - # sql_compat will cause a collision with sqlite3 - # --enable-sql_compat - # Don't --enable-sql* because we don't want to use bundled sqlite. - # See Gentoo bug #605688 - ECONF_SOURCE="${S_BASE}"/dist \ - STRIP="true" \ - econf "${myconf[@]}" - - # The embedded assembly on ARM does not work on newer hardware - # so you CANNOT use --with-mutex=ARM/gcc-assembly anymore. - # Specifically, it uses the SWPB op, which was deprecated: - # http://www.keil.com/support/man/docs/armasm/armasm_dom1361289909499.htm - # The op ALSO cannot be used in ARM-Thumb mode. - # Trust the compiler instead. - # >=db-6.1 uses LDREX instead. -} - -multilib_src_install() { - emake DESTDIR="${D}" install - - db_src_install_headerslot - - db_src_install_usrlibcleanup - - if multilib_is_native_abi && use java; then - java-pkg_regso "${ED}"/usr/"$(get_libdir)"/libdb_java*.so - java-pkg_dojar "${ED}"/usr/"$(get_libdir)"/*.jar - rm -f "${ED}"/usr/"$(get_libdir)"/*.jar - fi -} - -multilib_src_install_all() { - db_src_install_usrbinslot - - db_src_install_doc - - dodir /usr/sbin - # This file is not always built, and no longer exists as of db-4.8 - if [[ -f "${ED}"/usr/bin/berkeley_db_svc ]] ; then - mv "${ED}"/usr/bin/berkeley_db_svc \ - "${ED}"/usr/sbin/berkeley_db"${SLOT/./}"_svc || die - fi - - # no static libraries - find "${ED}" -name '*.la' -delete || die -} - -pkg_postinst() { - multilib_foreach_abi db_fix_so -} - -pkg_postrm() { - multilib_foreach_abi db_fix_so -} - -src_test() { - # db_repsite is impossible to build, as upstream strips those sources. - # db_repsite is used directly in the setup_site_prog, - # setup_site_prog is called from open_site_prog - # which is called only from tests in the multi_repmgr group. - #sed -r \ - # -e '/set subs/s,multi_repmgr,,g' \ - # -i "${S_BASE}/test/testparams.tcl" - sed -r \ - -e '/multi_repmgr/d' \ - -i "${S_BASE}/test/tcl/test.tcl" || die - - # This is the only failure in 5.2.28 so far, and looks like a false positive. - # Repmgr018 (btree): Test of repmgr stats. - # Repmgr018.a: Start a master. - # Repmgr018.b: Start a client. - # Repmgr018.c: Run some transactions at master. - # Rep_test: btree 20 key/data pairs starting at 0 - # Rep_test.a: put/get loop - # FAIL:07:05:59 (00:00:00) perm_no_failed_stat: expected 0, got 1 - sed -r \ - -e '/set parms.*repmgr018/d' \ - -e 's/repmgr018//g' \ - -i "${S_BASE}/test/tcl/test.tcl" || die - - multilib-minimal_src_test -} - -multilib_src_test() { - multilib_is_native_abi || return - - S="${BUILD_DIR}" db_src_test -} diff --git a/sys-libs/db/db-6.0.35-r4.ebuild b/sys-libs/db/db-6.0.35-r4.ebuild new file mode 100644 index 000000000000..9e9b623e0489 --- /dev/null +++ b/sys-libs/db/db-6.0.35-r4.ebuild @@ -0,0 +1,257 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 +inherit autotools db flag-o-matic java-pkg-opt-2 multilib multilib-minimal toolchain-funcs + +#Number of official patches +#PATCHNO=`echo ${PV}|sed -e "s,\(.*_p\)\([0-9]*\),\2,"` +PATCHNO="${PV/*.*.*_p}" +if [[ ${PATCHNO} == "${PV}" ]] ; then + MY_PV="${PV}" + MY_P="${P}" + PATCHNO=0 +else + MY_PV="${PV/_p${PATCHNO}}" + MY_P="${PN}-${MY_PV}" +fi + +RESTRICT="!test? ( test )" + +S_BASE="${WORKDIR}/${MY_P}" +S="${S_BASE}/build_unix" +DESCRIPTION="Oracle Berkeley DB" +HOMEPAGE="http://www.oracle.com/technetwork/database/database-technologies/berkeleydb/overview/index.html" +SRC_URI="http://download.oracle.com/berkeley-db/${MY_P}.tar.gz" +for (( i=1 ; i<=${PATCHNO} ; i++ )) ; do + export SRC_URI="${SRC_URI} http://www.oracle.com/technology/products/berkeley-db/db/update/${MY_PV}/patch.${MY_PV}.${i}" +done + +LICENSE="AGPL-3" +SLOT="$(ver_cut 1-2)" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" +IUSE="doc java cxx tcl test" + +REQUIRED_USE="test? ( tcl )" + +# the entire testsuite needs the TCL functionality +DEPEND="tcl? ( >=dev-lang/tcl-8.5.15-r1:0=[${MULTILIB_USEDEP}] ) + test? ( >=dev-lang/tcl-8.5.15-r1:0=[${MULTILIB_USEDEP}] ) + java? ( >=virtual/jdk-1.7:* )" +RDEPEND="tcl? ( >=dev-lang/tcl-8.5.15-r1:0=[${MULTILIB_USEDEP}] ) + java? ( >=virtual/jre-1.7:* )" + +MULTILIB_WRAPPED_HEADERS=( + /usr/include/db${SLOT}/db.h +) + +PATCHES=( + # bug #510506 + "${FILESDIR}"/${PN}-4.8.24-java-manifest-location.patch + + # use the includes from the prefix + "${FILESDIR}"/${PN}-4.6-jni-check-prefix-first.patch + "${FILESDIR}"/${PN}-4.2-listen-to-java-options.patch + + # sqlite configure call has an extra leading .. + # upstreamed:5.2.36, missing in 5.3.x/6.x + # still needs to be patched in 6.0.20 + "${FILESDIR}"/${PN}-6.0.35-sqlite-configure-path.patch + + # The upstream testsuite copies .lib and the binaries for each parallel test + # core, ~300MB each. This patch uses links instead, saves a lot of space. + "${FILESDIR}"/${PN}-6.0.20-test-link.patch +) + +src_prepare() { + cd "${S_BASE}" || die + for (( i=1 ; i<=${PATCHNO} ; i++ )) + do + eapply -p0 "${DISTDIR}"/patch."${MY_PV}"."${i}" + done + + default + + # Upstream release script grabs the dates when the script was run, so lets + # end-run them to keep the date the same. + export REAL_DB_RELEASE_DATE="$(awk \ + '/^DB_VERSION_STRING=/{ gsub(".*\\(|\\).*","",$0); print $0; }' \ + "${S_BASE}"/dist/configure)" + sed -r \ + -e "/^DB_RELEASE_DATE=/s~=.*~='${REAL_DB_RELEASE_DATE}'~g" \ + -i dist/RELEASE || die + + # Include the SLOT for Java JAR files + # This supersedes the unused jarlocation patches. + sed -r \ + -e '/jarfile=.*\.jar$/s,(.jar$),-$(LIBVERSION)\1,g' \ + -i dist/Makefile.in || die + + cd dist || die + rm aclocal/libtool.m4 || die + sed \ + -e '/AC_PROG_LIBTOOL$/aLT_OUTPUT' \ + -i configure.ac || die + sed \ + -e '/^AC_PATH_TOOL/s/ sh, none/ bash, none/' \ + -i aclocal/programs.m4 || die + + AT_M4DIR="aclocal aclocal_java" eautoreconf + + # Upstream sucks - they do autoconf and THEN replace the version variables. + . ./RELEASE + local v ev + for v in \ + DB_VERSION_{FAMILY,LETTER,RELEASE,MAJOR,MINOR} \ + DB_VERSION_{PATCH,FULL,UNIQUE_NAME,STRING,FULL_STRING} \ + DB_VERSION \ + DB_RELEASE_DATE ; do + ev="__EDIT_${v}__" + sed -e "s/${ev}/${!v}/g" -i configure || die + done + + # This is a false positive skip in the tests as the test-reviewer code + # looks for 'Skipping\s' + sed \ + -e '/db_repsite/s,Skipping:,Skipping,g' \ + -i "${S_BASE}"/test/tcl/reputils.tcl || die +} + +multilib_src_configure() { + local myconf=( + --enable-compat185 + --enable-dbm + --enable-o_direct + --without-uniquename + --disable-sql + --disable-sql_codegen + --disable-sql_compat + --disable-static + $([[ ${ABI} == amd64 ]] && echo --with-mutex=x86/gcc-assembly) + $(use_enable cxx) + $(use_enable cxx stl) + $(multilib_native_use_enable java) + $(use_enable test) + ) + + tc-ld-force-bfd #470634 #729510 + + # compilation with -O0 fails on amd64, see bug #171231 + if [[ ${ABI} == amd64 ]]; then + local CFLAGS=${CFLAGS} CXXFLAGS=${CXXFLAGS} + replace-flags -O0 -O2 + is-flagq -O[s123] || append-flags -O2 + fi + + # Add linker versions to the symbols. Easier to do, and safer than header file + # mumbo jumbo. + if use userland_GNU ; then + append-ldflags -Wl,--default-symver + fi + + # use `set` here since the java opts will contain whitespace + if multilib_is_native_abi && use java ; then + myconf+=( + --with-java-prefix="${JAVA_HOME}" + --with-javac-flags="$(java-pkg_javac-args)" + ) + fi + + # Bug #270851: test needs TCL support + if use tcl || use test ; then + myconf+=( + --enable-tcl + --with-tcl="${EPREFIX}/usr/$(get_libdir)" + ) + else + myconf+=(--disable-tcl ) + fi + + # sql_compat will cause a collision with sqlite3 + # --enable-sql_compat + # Don't --enable-sql* because we don't want to use bundled sqlite. + # See Gentoo bug #605688 + ECONF_SOURCE="${S_BASE}"/dist \ + STRIP="true" \ + econf "${myconf[@]}" + + # The embedded assembly on ARM does not work on newer hardware + # so you CANNOT use --with-mutex=ARM/gcc-assembly anymore. + # Specifically, it uses the SWPB op, which was deprecated: + # http://www.keil.com/support/man/docs/armasm/armasm_dom1361289909499.htm + # The op ALSO cannot be used in ARM-Thumb mode. + # Trust the compiler instead. + # >=db-6.1 uses LDREX instead. +} + +multilib_src_install() { + emake DESTDIR="${D}" install + + db_src_install_headerslot + + db_src_install_usrlibcleanup + + if multilib_is_native_abi && use java; then + java-pkg_regso "${ED}"/usr/"$(get_libdir)"/libdb_java*.so + java-pkg_dojar "${ED}"/usr/"$(get_libdir)"/*.jar + rm -f "${ED}"/usr/"$(get_libdir)"/*.jar + fi +} + +multilib_src_install_all() { + db_src_install_usrbinslot + + db_src_install_doc + + dodir /usr/sbin + # This file is not always built, and no longer exists as of db-4.8 + if [[ -f "${ED}"/usr/bin/berkeley_db_svc ]] ; then + mv "${ED}"/usr/bin/berkeley_db_svc \ + "${ED}"/usr/sbin/berkeley_db"${SLOT/./}"_svc || die + fi + + # no static libraries + find "${ED}" -name '*.la' -delete || die +} + +pkg_postinst() { + multilib_foreach_abi db_fix_so +} + +pkg_postrm() { + multilib_foreach_abi db_fix_so +} + +src_test() { + # db_repsite is impossible to build, as upstream strips those sources. + # db_repsite is used directly in the setup_site_prog, + # setup_site_prog is called from open_site_prog + # which is called only from tests in the multi_repmgr group. + #sed -r \ + # -e '/set subs/s,multi_repmgr,,g' \ + # -i "${S_BASE}/test/testparams.tcl" + sed -r \ + -e '/multi_repmgr/d' \ + -i "${S_BASE}/test/tcl/test.tcl" || die + + # This is the only failure in 5.2.28 so far, and looks like a false positive. + # Repmgr018 (btree): Test of repmgr stats. + # Repmgr018.a: Start a master. + # Repmgr018.b: Start a client. + # Repmgr018.c: Run some transactions at master. + # Rep_test: btree 20 key/data pairs starting at 0 + # Rep_test.a: put/get loop + # FAIL:07:05:59 (00:00:00) perm_no_failed_stat: expected 0, got 1 + sed -r \ + -e '/set parms.*repmgr018/d' \ + -e 's/repmgr018//g' \ + -i "${S_BASE}/test/tcl/test.tcl" || die + + multilib-minimal_src_test +} + +multilib_src_test() { + multilib_is_native_abi || return + + S="${BUILD_DIR}" db_src_test +} diff --git a/sys-libs/db/db-6.1.38-r1.ebuild b/sys-libs/db/db-6.1.38-r1.ebuild new file mode 100644 index 000000000000..9c01f35ac797 --- /dev/null +++ b/sys-libs/db/db-6.1.38-r1.ebuild @@ -0,0 +1,248 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 +inherit db flag-o-matic java-pkg-opt-2 autotools multilib multilib-minimal eapi7-ver toolchain-funcs + +#Number of official patches +#PATCHNO=`echo ${PV}|sed -e "s,\(.*_p\)\([0-9]*\),\2,"` +PATCHNO=${PV/*.*.*_p} +if [[ ${PATCHNO} == "${PV}" ]] ; then + MY_PV=${PV} + MY_P=${P} + PATCHNO=0 +else + MY_PV=${PV/_p${PATCHNO}} + MY_P=${PN}-${MY_PV} +fi + +RESTRICT="!test? ( test )" + +S_BASE="${WORKDIR}/${MY_P}" +S="${S_BASE}/build_unix" +DESCRIPTION="Oracle Berkeley DB" +HOMEPAGE="http://www.oracle.com/technetwork/database/database-technologies/berkeleydb/overview/index.html" +SRC_URI="http://download.oracle.com/berkeley-db/${MY_P}.tar.gz" +for (( i=1 ; i<=${PATCHNO} ; i++ )) ; do + export SRC_URI="${SRC_URI} http://www.oracle.com/technology/products/berkeley-db/db/update/${MY_PV}/patch.${MY_PV}.${i}" +done + +LICENSE="AGPL-3" +SLOT="$(get_version_component_range 1-2)" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" +IUSE="doc java cxx tcl test" + +REQUIRED_USE="test? ( tcl )" + +# the entire testsuite needs the TCL functionality +DEPEND="tcl? ( >=dev-lang/tcl-8.5.15-r1:0=[${MULTILIB_USEDEP}] ) + test? ( >=dev-lang/tcl-8.5.15-r1:0=[${MULTILIB_USEDEP}] ) + java? ( >=virtual/jdk-1.8 ) + >=sys-devel/binutils-2.16.1" +RDEPEND="tcl? ( >=dev-lang/tcl-8.5.15-r1:0=[${MULTILIB_USEDEP}] ) + java? ( >=virtual/jre-1.8 )" + +MULTILIB_WRAPPED_HEADERS=( + /usr/include/db$(ver_cut 1-2)/db.h +) + +PATCHES=( + # bug #510506 + "${FILESDIR}"/${PN}-4.8.24-java-manifest-location.patch + + # use the includes from the prefix + "${FILESDIR}"/${PN}-6.2-jni-check-prefix-first.patch + "${FILESDIR}"/${PN}-4.2-listen-to-java-options.patch + + # sqlite configure call has an extra leading .. + # upstreamed:5.2.36, missing in 5.3.x/6.x + # still needs to be patched in 6.0.20 + "${FILESDIR}"/${PN}-6.1.19-sqlite-configure-path.patch + + # The upstream testsuite copies .lib and the binaries for each parallel test + # core, ~300MB each. This patch uses links instead, saves a lot of space. + "${FILESDIR}"/${PN}-6.0.20-test-link.patch +) + +src_prepare() { + cd "${WORKDIR}"/"${MY_P}" + for (( i=1 ; i<=${PATCHNO} ; i++ )) + do + eapply "${DISTDIR}"/patch."${MY_PV}"."${i}" + done + + default + + # Upstream release script grabs the dates when the script was run, so lets + # end-run them to keep the date the same. + export REAL_DB_RELEASE_DATE="$(awk \ + '/^DB_VERSION_STRING=/{ gsub(".*\\(|\\).*","",$0); print $0; }' \ + "${S_BASE}"/dist/configure)" + sed -r -i \ + -e "/^DB_RELEASE_DATE=/s~=.*~='${REAL_DB_RELEASE_DATE}'~g" \ + "${S_BASE}"/dist/RELEASE || die + + # Include the SLOT for Java JAR files + # This supersedes the unused jarlocation patches. + sed -r -i \ + -e '/jarfile=.*\.jar$/s,(.jar$),-$(LIBVERSION)\1,g' \ + "${S_BASE}"/dist/Makefile.in || die + + cd "${S_BASE}"/dist || die + rm -f aclocal/libtool.m4 + sed -i \ + -e '/AC_PROG_LIBTOOL$/aLT_OUTPUT' \ + configure.ac || die + sed -i \ + -e '/^AC_PATH_TOOL/s/ sh, none/ bash, none/' \ + aclocal/programs.m4 || die + AT_M4DIR="aclocal aclocal_java" eautoreconf + # Upstream sucks - they do autoconf and THEN replace the version variables. + . ./RELEASE + for v in \ + DB_VERSION_{FAMILY,LETTER,RELEASE,MAJOR,MINOR} \ + DB_VERSION_{PATCH,FULL,UNIQUE_NAME,STRING,FULL_STRING} \ + DB_VERSION \ + DB_RELEASE_DATE ; do + local ev="__EDIT_${v}__" + sed -i -e "s/${ev}/${!v}/g" configure || die + done + + # This is a false positive skip in the tests as the test-reviewer code + # looks for 'Skipping\s' + sed -i \ + -e '/db_repsite/s,Skipping:,Skipping,g' \ + "${S_BASE}"/test/tcl/reputils.tcl || die +} + +multilib_src_configure() { + # sql_compat will cause a collision with sqlite3 + # --enable-sql_compat + # Don't --enable-sql* because we don't want to use bundled sqlite. + # See Gentoo bug #605688 + local myeconfargs=( + --enable-compat185 + --enable-dbm + --enable-o_direct + --without-uniquename + --disable-sql + --disable-sql_codegen + --disable-sql_compat + --disable-static + $([[ ${ABI} == arm ]] && echo --with-mutex=ARM/gcc-assembly) + $([[ ${ABI} == amd64 ]] && echo --with-mutex=x86/gcc-assembly) + $(use_enable cxx) + $(use_enable cxx stl) + $(multilib_native_use_enable java) + $(use_enable test) + ) + + tc-ld-force-bfd #470634 #729510 + + # compilation with -O0 fails on amd64, see bug #171231 + if [[ ${ABI} == amd64 ]]; then + local CFLAGS=${CFLAGS} CXXFLAGS=${CXXFLAGS} + replace-flags -O0 -O2 + is-flagq -O[s123] || append-flags -O2 + fi + + # Add linker versions to the symbols. Easier to do, and safer than header file + # mumbo jumbo. + if use userland_GNU ; then + append-ldflags -Wl,--default-symver + fi + + # use `set` here since the java opts will contain whitespace + if multilib_is_native_abi && use java ; then + myeconfargs+=( + --with-java-prefix="${JAVA_HOME}" + --with-javac-flags="$(java-pkg_javac-args)" + ) + fi + + # Bug #270851: test needs TCL support + if use tcl || use test ; then + myeconfargs+=( + --enable-tcl + --with-tcl="${EPREFIX}/usr/$(get_libdir)" + ) + else + myeconfargs+=(--disable-tcl ) + fi + + ECONF_SOURCE="${S_BASE}"/dist \ + STRIP="true" \ + econf "${myeconfargs[@]}" +} + +multilib_src_install() { + emake install DESTDIR="${D}" + + db_src_install_headerslot + + db_src_install_usrlibcleanup + + if multilib_is_native_abi && use java; then + java-pkg_regso "${ED%/}"/usr/"$(get_libdir)"/libdb_java*.so + java-pkg_dojar "${ED%/}"/usr/"$(get_libdir)"/*.jar + rm -f "${ED%/}"/usr/"$(get_libdir)"/*.jar + fi +} + +multilib_src_install_all() { + db_src_install_usrbinslot + + db_src_install_doc + + dodir /usr/sbin + # This file is not always built, and no longer exists as of db-4.8 + if [[ -f "${ED%/}"/usr/bin/berkeley_db_svc ]] ; then + mv "${ED%/}"/usr/bin/berkeley_db_svc \ + "${ED%/}"/usr/sbin/berkeley_db"${SLOT/./}"_svc || die + fi + + # no static libraries + find "${ED}" -name '*.la' -delete || die +} + +pkg_postinst() { + multilib_foreach_abi db_fix_so +} + +pkg_postrm() { + multilib_foreach_abi db_fix_so +} + +src_test() { + # db_repsite is impossible to build, as upstream strips those sources. + # db_repsite is used directly in the setup_site_prog, + # setup_site_prog is called from open_site_prog + # which is called only from tests in the multi_repmgr group. + #sed -ri \ + # -e '/set subs/s,multi_repmgr,,g' \ + # "${S_BASE}/test/testparams.tcl" + sed -ri \ + -e '/multi_repmgr/d' \ + "${S_BASE}/test/tcl/test.tcl" || die + + # This is the only failure in 5.2.28 so far, and looks like a false positive. + # Repmgr018 (btree): Test of repmgr stats. + # Repmgr018.a: Start a master. + # Repmgr018.b: Start a client. + # Repmgr018.c: Run some transactions at master. + # Rep_test: btree 20 key/data pairs starting at 0 + # Rep_test.a: put/get loop + # FAIL:07:05:59 (00:00:00) perm_no_failed_stat: expected 0, got 1 + sed -ri \ + -e '/set parms.*repmgr018/d' \ + -e 's/repmgr018//g' \ + "${S_BASE}/test/tcl/test.tcl" || die + + multilib-minimal_src_test +} + +multilib_src_test() { + multilib_is_native_abi || return + + S=${BUILD_DIR} db_src_test +} diff --git a/sys-libs/db/db-6.1.38.ebuild b/sys-libs/db/db-6.1.38.ebuild deleted file mode 100644 index c7be4d257f66..000000000000 --- a/sys-libs/db/db-6.1.38.ebuild +++ /dev/null @@ -1,248 +0,0 @@ -# Copyright 1999-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=6 -inherit db flag-o-matic java-pkg-opt-2 autotools multilib multilib-minimal eapi7-ver toolchain-funcs - -#Number of official patches -#PATCHNO=`echo ${PV}|sed -e "s,\(.*_p\)\([0-9]*\),\2,"` -PATCHNO=${PV/*.*.*_p} -if [[ ${PATCHNO} == "${PV}" ]] ; then - MY_PV=${PV} - MY_P=${P} - PATCHNO=0 -else - MY_PV=${PV/_p${PATCHNO}} - MY_P=${PN}-${MY_PV} -fi - -RESTRICT="!test? ( test )" - -S_BASE="${WORKDIR}/${MY_P}" -S="${S_BASE}/build_unix" -DESCRIPTION="Oracle Berkeley DB" -HOMEPAGE="http://www.oracle.com/technetwork/database/database-technologies/berkeleydb/overview/index.html" -SRC_URI="http://download.oracle.com/berkeley-db/${MY_P}.tar.gz" -for (( i=1 ; i<=${PATCHNO} ; i++ )) ; do - export SRC_URI="${SRC_URI} http://www.oracle.com/technology/products/berkeley-db/db/update/${MY_PV}/patch.${MY_PV}.${i}" -done - -LICENSE="AGPL-3" -SLOT="$(get_version_component_range 1-2)" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" -IUSE="doc java cxx tcl test" - -REQUIRED_USE="test? ( tcl )" - -# the entire testsuite needs the TCL functionality -DEPEND="tcl? ( >=dev-lang/tcl-8.5.15-r1:0=[${MULTILIB_USEDEP}] ) - test? ( >=dev-lang/tcl-8.5.15-r1:0=[${MULTILIB_USEDEP}] ) - java? ( >=virtual/jdk-1.5 ) - >=sys-devel/binutils-2.16.1" -RDEPEND="tcl? ( >=dev-lang/tcl-8.5.15-r1:0=[${MULTILIB_USEDEP}] ) - java? ( >=virtual/jre-1.5 )" - -MULTILIB_WRAPPED_HEADERS=( - /usr/include/db$(ver_cut 1-2)/db.h -) - -PATCHES=( - # bug #510506 - "${FILESDIR}"/${PN}-4.8.24-java-manifest-location.patch - - # use the includes from the prefix - "${FILESDIR}"/${PN}-6.2-jni-check-prefix-first.patch - "${FILESDIR}"/${PN}-4.2-listen-to-java-options.patch - - # sqlite configure call has an extra leading .. - # upstreamed:5.2.36, missing in 5.3.x/6.x - # still needs to be patched in 6.0.20 - "${FILESDIR}"/${PN}-6.1.19-sqlite-configure-path.patch - - # The upstream testsuite copies .lib and the binaries for each parallel test - # core, ~300MB each. This patch uses links instead, saves a lot of space. - "${FILESDIR}"/${PN}-6.0.20-test-link.patch -) - -src_prepare() { - cd "${WORKDIR}"/"${MY_P}" - for (( i=1 ; i<=${PATCHNO} ; i++ )) - do - eapply "${DISTDIR}"/patch."${MY_PV}"."${i}" - done - - default - - # Upstream release script grabs the dates when the script was run, so lets - # end-run them to keep the date the same. - export REAL_DB_RELEASE_DATE="$(awk \ - '/^DB_VERSION_STRING=/{ gsub(".*\\(|\\).*","",$0); print $0; }' \ - "${S_BASE}"/dist/configure)" - sed -r -i \ - -e "/^DB_RELEASE_DATE=/s~=.*~='${REAL_DB_RELEASE_DATE}'~g" \ - "${S_BASE}"/dist/RELEASE || die - - # Include the SLOT for Java JAR files - # This supersedes the unused jarlocation patches. - sed -r -i \ - -e '/jarfile=.*\.jar$/s,(.jar$),-$(LIBVERSION)\1,g' \ - "${S_BASE}"/dist/Makefile.in || die - - cd "${S_BASE}"/dist || die - rm -f aclocal/libtool.m4 - sed -i \ - -e '/AC_PROG_LIBTOOL$/aLT_OUTPUT' \ - configure.ac || die - sed -i \ - -e '/^AC_PATH_TOOL/s/ sh, none/ bash, none/' \ - aclocal/programs.m4 || die - AT_M4DIR="aclocal aclocal_java" eautoreconf - # Upstream sucks - they do autoconf and THEN replace the version variables. - . ./RELEASE - for v in \ - DB_VERSION_{FAMILY,LETTER,RELEASE,MAJOR,MINOR} \ - DB_VERSION_{PATCH,FULL,UNIQUE_NAME,STRING,FULL_STRING} \ - DB_VERSION \ - DB_RELEASE_DATE ; do - local ev="__EDIT_${v}__" - sed -i -e "s/${ev}/${!v}/g" configure || die - done - - # This is a false positive skip in the tests as the test-reviewer code - # looks for 'Skipping\s' - sed -i \ - -e '/db_repsite/s,Skipping:,Skipping,g' \ - "${S_BASE}"/test/tcl/reputils.tcl || die -} - -multilib_src_configure() { - # sql_compat will cause a collision with sqlite3 - # --enable-sql_compat - # Don't --enable-sql* because we don't want to use bundled sqlite. - # See Gentoo bug #605688 - local myeconfargs=( - --enable-compat185 - --enable-dbm - --enable-o_direct - --without-uniquename - --disable-sql - --disable-sql_codegen - --disable-sql_compat - --disable-static - $([[ ${ABI} == arm ]] && echo --with-mutex=ARM/gcc-assembly) - $([[ ${ABI} == amd64 ]] && echo --with-mutex=x86/gcc-assembly) - $(use_enable cxx) - $(use_enable cxx stl) - $(multilib_native_use_enable java) - $(use_enable test) - ) - - tc-ld-force-bfd #470634 #729510 - - # compilation with -O0 fails on amd64, see bug #171231 - if [[ ${ABI} == amd64 ]]; then - local CFLAGS=${CFLAGS} CXXFLAGS=${CXXFLAGS} - replace-flags -O0 -O2 - is-flagq -O[s123] || append-flags -O2 - fi - - # Add linker versions to the symbols. Easier to do, and safer than header file - # mumbo jumbo. - if use userland_GNU ; then - append-ldflags -Wl,--default-symver - fi - - # use `set` here since the java opts will contain whitespace - if multilib_is_native_abi && use java ; then - myeconfargs+=( - --with-java-prefix="${JAVA_HOME}" - --with-javac-flags="$(java-pkg_javac-args)" - ) - fi - - # Bug #270851: test needs TCL support - if use tcl || use test ; then - myeconfargs+=( - --enable-tcl - --with-tcl="${EPREFIX}/usr/$(get_libdir)" - ) - else - myeconfargs+=(--disable-tcl ) - fi - - ECONF_SOURCE="${S_BASE}"/dist \ - STRIP="true" \ - econf "${myeconfargs[@]}" -} - -multilib_src_install() { - emake install DESTDIR="${D}" - - db_src_install_headerslot - - db_src_install_usrlibcleanup - - if multilib_is_native_abi && use java; then - java-pkg_regso "${ED%/}"/usr/"$(get_libdir)"/libdb_java*.so - java-pkg_dojar "${ED%/}"/usr/"$(get_libdir)"/*.jar - rm -f "${ED%/}"/usr/"$(get_libdir)"/*.jar - fi -} - -multilib_src_install_all() { - db_src_install_usrbinslot - - db_src_install_doc - - dodir /usr/sbin - # This file is not always built, and no longer exists as of db-4.8 - if [[ -f "${ED%/}"/usr/bin/berkeley_db_svc ]] ; then - mv "${ED%/}"/usr/bin/berkeley_db_svc \ - "${ED%/}"/usr/sbin/berkeley_db"${SLOT/./}"_svc || die - fi - - # no static libraries - find "${ED}" -name '*.la' -delete || die -} - -pkg_postinst() { - multilib_foreach_abi db_fix_so -} - -pkg_postrm() { - multilib_foreach_abi db_fix_so -} - -src_test() { - # db_repsite is impossible to build, as upstream strips those sources. - # db_repsite is used directly in the setup_site_prog, - # setup_site_prog is called from open_site_prog - # which is called only from tests in the multi_repmgr group. - #sed -ri \ - # -e '/set subs/s,multi_repmgr,,g' \ - # "${S_BASE}/test/testparams.tcl" - sed -ri \ - -e '/multi_repmgr/d' \ - "${S_BASE}/test/tcl/test.tcl" || die - - # This is the only failure in 5.2.28 so far, and looks like a false positive. - # Repmgr018 (btree): Test of repmgr stats. - # Repmgr018.a: Start a master. - # Repmgr018.b: Start a client. - # Repmgr018.c: Run some transactions at master. - # Rep_test: btree 20 key/data pairs starting at 0 - # Rep_test.a: put/get loop - # FAIL:07:05:59 (00:00:00) perm_no_failed_stat: expected 0, got 1 - sed -ri \ - -e '/set parms.*repmgr018/d' \ - -e 's/repmgr018//g' \ - "${S_BASE}/test/tcl/test.tcl" || die - - multilib-minimal_src_test -} - -multilib_src_test() { - multilib_is_native_abi || return - - S=${BUILD_DIR} db_src_test -} diff --git a/sys-libs/db/db-6.2.38-r1.ebuild b/sys-libs/db/db-6.2.38-r1.ebuild new file mode 100644 index 000000000000..786041b37bd1 --- /dev/null +++ b/sys-libs/db/db-6.2.38-r1.ebuild @@ -0,0 +1,249 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 +inherit db flag-o-matic java-pkg-opt-2 autotools multilib multilib-minimal eapi7-ver toolchain-funcs + +#Number of official patches +#PATCHNO=`echo ${PV}|sed -e "s,\(.*_p\)\([0-9]*\),\2,"` +PATCHNO=${PV/*.*.*_p} +if [[ ${PATCHNO} == "${PV}" ]] ; then + MY_PV=${PV} + MY_P=${P} + PATCHNO=0 +else + MY_PV=${PV/_p${PATCHNO}} + MY_P=${PN}-${MY_PV} +fi + +RESTRICT="!test? ( test )" + +S_BASE="${WORKDIR}/${MY_P}" +S="${S_BASE}/build_unix" +DESCRIPTION="Oracle Berkeley DB" +HOMEPAGE="http://www.oracle.com/technetwork/database/database-technologies/berkeleydb/overview/index.html" +SRC_URI="http://download.oracle.com/berkeley-db/${MY_P}.tar.gz" +for (( i=1 ; i<=${PATCHNO} ; i++ )) ; do + export SRC_URI="${SRC_URI} http://www.oracle.com/technology/products/berkeley-db/db/update/${MY_PV}/patch.${MY_PV}.${i}" +done + +LICENSE="AGPL-3" +SLOT="$(get_version_component_range 1-2)" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" +IUSE="doc java cxx tcl test" + +REQUIRED_USE="test? ( tcl )" + +# the entire testsuite needs the TCL functionality +DEPEND="tcl? ( >=dev-lang/tcl-8.5.15-r1:0=[${MULTILIB_USEDEP}] ) + test? ( >=dev-lang/tcl-8.5.15-r1:0=[${MULTILIB_USEDEP}] ) + java? ( >=virtual/jdk-1.8 ) + kernel_linux? ( >=sys-devel/binutils-2.16.1 ) + kernel_SunOS? ( >=sys-devel/binutils-2.16.1 )" +RDEPEND="tcl? ( >=dev-lang/tcl-8.5.15-r1:0=[${MULTILIB_USEDEP}] ) + java? ( >=virtual/jre-1.8 )" + +MULTILIB_WRAPPED_HEADERS=( + /usr/include/db$(ver_cut 1-2)/db.h +) + +PATCHES=( + # bug #510506 + "${FILESDIR}"/${PN}-4.8.24-java-manifest-location.patch + + # use the includes from the prefix + "${FILESDIR}"/${PN}-6.2.32-jni-check-prefix-first.patch + "${FILESDIR}"/${PN}-4.2-listen-to-java-options.patch + + # sqlite configure call has an extra leading .. + # upstreamed:5.2.36, missing in 5.3.x/6.x + # still needs to be patched in 6.0.20 + "${FILESDIR}"/${PN}-6.1.19-sqlite-configure-path.patch + + # The upstream testsuite copies .lib and the binaries for each parallel test + # core, ~300MB each. This patch uses links instead, saves a lot of space. + "${FILESDIR}"/${PN}-6.0.20-test-link.patch +) + +src_prepare() { + cd "${WORKDIR}"/"${MY_P}" + for (( i=1 ; i<=${PATCHNO} ; i++ )) + do + eapply "${DISTDIR}"/patch."${MY_PV}"."${i}" + done + + default + + # Upstream release script grabs the dates when the script was run, so lets + # end-run them to keep the date the same. + export REAL_DB_RELEASE_DATE="$(awk \ + '/^DB_VERSION_STRING=/{ gsub(".*\\(|\\).*","",$0); print $0; }' \ + "${S_BASE}"/dist/configure)" + sed -r -i \ + -e "/^DB_RELEASE_DATE=/s~=.*~='${REAL_DB_RELEASE_DATE}'~g" \ + "${S_BASE}"/dist/RELEASE || die + + # Include the SLOT for Java JAR files + # This supersedes the unused jarlocation patches. + sed -r -i \ + -e '/jarfile=.*\.jar$/s,(.jar$),-$(LIBVERSION)\1,g' \ + "${S_BASE}"/dist/Makefile.in || die + + cd "${S_BASE}"/dist || die + rm -f aclocal/libtool.m4 + sed -i \ + -e '/AC_PROG_LIBTOOL$/aLT_OUTPUT' \ + configure.ac || die + sed -i \ + -e '/^AC_PATH_TOOL/s/ sh, none/ bash, none/' \ + aclocal/programs.m4 || die + AT_M4DIR="aclocal aclocal_java" eautoreconf + # Upstream sucks - they do autoconf and THEN replace the version variables. + . ./RELEASE + for v in \ + DB_VERSION_{FAMILY,LETTER,RELEASE,MAJOR,MINOR} \ + DB_VERSION_{PATCH,FULL,UNIQUE_NAME,STRING,FULL_STRING} \ + DB_VERSION \ + DB_RELEASE_DATE ; do + local ev="__EDIT_${v}__" + sed -i -e "s/${ev}/${!v}/g" configure || die + done + + # This is a false positive skip in the tests as the test-reviewer code + # looks for 'Skipping\s' + sed -i \ + -e '/db_repsite/s,Skipping:,Skipping,g' \ + "${S_BASE}"/test/tcl/reputils.tcl || die +} + +multilib_src_configure() { + # sql_compat will cause a collision with sqlite3 + # --enable-sql_compat + # Don't --enable-sql* because we don't want to use bundled sqlite. + # See Gentoo bug #605688 + local myeconfargs=( + --enable-compat185 + --enable-dbm + --enable-o_direct + --without-uniquename + --disable-sql + --disable-sql_codegen + --disable-sql_compat + --disable-static + $([[ ${ABI} == arm ]] && echo --with-mutex=ARM/gcc-assembly) + $([[ ${ABI} == amd64 ]] && echo --with-mutex=x86/gcc-assembly) + $(use_enable cxx) + $(use_enable cxx stl) + $(multilib_native_use_enable java) + $(use_enable test) + ) + + tc-ld-force-bfd #470634 #729510 + + # compilation with -O0 fails on amd64, see bug #171231 + if [[ ${ABI} == amd64 ]]; then + local CFLAGS=${CFLAGS} CXXFLAGS=${CXXFLAGS} + replace-flags -O0 -O2 + is-flagq -O[s123] || append-flags -O2 + fi + + # Add linker versions to the symbols. Easier to do, and safer than header file + # mumbo jumbo. + if use kernel_linux || use kernel_SunOS; then + append-ldflags -Wl,--default-symver + fi + + # use `set` here since the java opts will contain whitespace + if multilib_is_native_abi && use java ; then + myeconfargs+=( + --with-java-prefix="${JAVA_HOME}" + --with-javac-flags="$(java-pkg_javac-args)" + ) + fi + + # Bug #270851: test needs TCL support + if use tcl || use test ; then + myeconfargs+=( + --enable-tcl + --with-tcl="${EPREFIX}/usr/$(get_libdir)" + ) + else + myeconfargs+=(--disable-tcl ) + fi + + ECONF_SOURCE="${S_BASE}"/dist \ + STRIP="true" \ + econf "${myeconfargs[@]}" +} + +multilib_src_install() { + emake install DESTDIR="${D}" + + db_src_install_headerslot + + db_src_install_usrlibcleanup + + if multilib_is_native_abi && use java; then + java-pkg_regso "${ED%/}"/usr/"$(get_libdir)"/libdb_java*.so + java-pkg_dojar "${ED%/}"/usr/"$(get_libdir)"/*.jar + rm -f "${ED%/}"/usr/"$(get_libdir)"/*.jar + fi +} + +multilib_src_install_all() { + db_src_install_usrbinslot + + db_src_install_doc + + dodir /usr/sbin + # This file is not always built, and no longer exists as of db-4.8 + if [[ -f "${ED%/}"/usr/bin/berkeley_db_svc ]] ; then + mv "${ED%/}"/usr/bin/berkeley_db_svc \ + "${ED%/}"/usr/sbin/berkeley_db"${SLOT/./}"_svc || die + fi + + # no static libraries + find "${ED}" -name '*.la' -delete || die +} + +pkg_postinst() { + multilib_foreach_abi db_fix_so +} + +pkg_postrm() { + multilib_foreach_abi db_fix_so +} + +src_test() { + # db_repsite is impossible to build, as upstream strips those sources. + # db_repsite is used directly in the setup_site_prog, + # setup_site_prog is called from open_site_prog + # which is called only from tests in the multi_repmgr group. + #sed -ri \ + # -e '/set subs/s,multi_repmgr,,g' \ + # "${S_BASE}/test/testparams.tcl" + sed -ri \ + -e '/multi_repmgr/d' \ + "${S_BASE}/test/tcl/test.tcl" || die + + # This is the only failure in 5.2.28 so far, and looks like a false positive. + # Repmgr018 (btree): Test of repmgr stats. + # Repmgr018.a: Start a master. + # Repmgr018.b: Start a client. + # Repmgr018.c: Run some transactions at master. + # Rep_test: btree 20 key/data pairs starting at 0 + # Rep_test.a: put/get loop + # FAIL:07:05:59 (00:00:00) perm_no_failed_stat: expected 0, got 1 + sed -ri \ + -e '/set parms.*repmgr018/d' \ + -e 's/repmgr018//g' \ + "${S_BASE}/test/tcl/test.tcl" || die + + multilib-minimal_src_test +} + +multilib_src_test() { + multilib_is_native_abi || return + + S=${BUILD_DIR} db_src_test +} diff --git a/sys-libs/db/db-6.2.38.ebuild b/sys-libs/db/db-6.2.38.ebuild deleted file mode 100644 index 18760f06459c..000000000000 --- a/sys-libs/db/db-6.2.38.ebuild +++ /dev/null @@ -1,249 +0,0 @@ -# Copyright 1999-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=6 -inherit db flag-o-matic java-pkg-opt-2 autotools multilib multilib-minimal eapi7-ver toolchain-funcs - -#Number of official patches -#PATCHNO=`echo ${PV}|sed -e "s,\(.*_p\)\([0-9]*\),\2,"` -PATCHNO=${PV/*.*.*_p} -if [[ ${PATCHNO} == "${PV}" ]] ; then - MY_PV=${PV} - MY_P=${P} - PATCHNO=0 -else - MY_PV=${PV/_p${PATCHNO}} - MY_P=${PN}-${MY_PV} -fi - -RESTRICT="!test? ( test )" - -S_BASE="${WORKDIR}/${MY_P}" -S="${S_BASE}/build_unix" -DESCRIPTION="Oracle Berkeley DB" -HOMEPAGE="http://www.oracle.com/technetwork/database/database-technologies/berkeleydb/overview/index.html" -SRC_URI="http://download.oracle.com/berkeley-db/${MY_P}.tar.gz" -for (( i=1 ; i<=${PATCHNO} ; i++ )) ; do - export SRC_URI="${SRC_URI} http://www.oracle.com/technology/products/berkeley-db/db/update/${MY_PV}/patch.${MY_PV}.${i}" -done - -LICENSE="AGPL-3" -SLOT="$(get_version_component_range 1-2)" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" -IUSE="doc java cxx tcl test" - -REQUIRED_USE="test? ( tcl )" - -# the entire testsuite needs the TCL functionality -DEPEND="tcl? ( >=dev-lang/tcl-8.5.15-r1:0=[${MULTILIB_USEDEP}] ) - test? ( >=dev-lang/tcl-8.5.15-r1:0=[${MULTILIB_USEDEP}] ) - java? ( >=virtual/jdk-1.5 ) - kernel_linux? ( >=sys-devel/binutils-2.16.1 ) - kernel_SunOS? ( >=sys-devel/binutils-2.16.1 )" -RDEPEND="tcl? ( >=dev-lang/tcl-8.5.15-r1:0=[${MULTILIB_USEDEP}] ) - java? ( >=virtual/jre-1.5 )" - -MULTILIB_WRAPPED_HEADERS=( - /usr/include/db$(ver_cut 1-2)/db.h -) - -PATCHES=( - # bug #510506 - "${FILESDIR}"/${PN}-4.8.24-java-manifest-location.patch - - # use the includes from the prefix - "${FILESDIR}"/${PN}-6.2.32-jni-check-prefix-first.patch - "${FILESDIR}"/${PN}-4.2-listen-to-java-options.patch - - # sqlite configure call has an extra leading .. - # upstreamed:5.2.36, missing in 5.3.x/6.x - # still needs to be patched in 6.0.20 - "${FILESDIR}"/${PN}-6.1.19-sqlite-configure-path.patch - - # The upstream testsuite copies .lib and the binaries for each parallel test - # core, ~300MB each. This patch uses links instead, saves a lot of space. - "${FILESDIR}"/${PN}-6.0.20-test-link.patch -) - -src_prepare() { - cd "${WORKDIR}"/"${MY_P}" - for (( i=1 ; i<=${PATCHNO} ; i++ )) - do - eapply "${DISTDIR}"/patch."${MY_PV}"."${i}" - done - - default - - # Upstream release script grabs the dates when the script was run, so lets - # end-run them to keep the date the same. - export REAL_DB_RELEASE_DATE="$(awk \ - '/^DB_VERSION_STRING=/{ gsub(".*\\(|\\).*","",$0); print $0; }' \ - "${S_BASE}"/dist/configure)" - sed -r -i \ - -e "/^DB_RELEASE_DATE=/s~=.*~='${REAL_DB_RELEASE_DATE}'~g" \ - "${S_BASE}"/dist/RELEASE || die - - # Include the SLOT for Java JAR files - # This supersedes the unused jarlocation patches. - sed -r -i \ - -e '/jarfile=.*\.jar$/s,(.jar$),-$(LIBVERSION)\1,g' \ - "${S_BASE}"/dist/Makefile.in || die - - cd "${S_BASE}"/dist || die - rm -f aclocal/libtool.m4 - sed -i \ - -e '/AC_PROG_LIBTOOL$/aLT_OUTPUT' \ - configure.ac || die - sed -i \ - -e '/^AC_PATH_TOOL/s/ sh, none/ bash, none/' \ - aclocal/programs.m4 || die - AT_M4DIR="aclocal aclocal_java" eautoreconf - # Upstream sucks - they do autoconf and THEN replace the version variables. - . ./RELEASE - for v in \ - DB_VERSION_{FAMILY,LETTER,RELEASE,MAJOR,MINOR} \ - DB_VERSION_{PATCH,FULL,UNIQUE_NAME,STRING,FULL_STRING} \ - DB_VERSION \ - DB_RELEASE_DATE ; do - local ev="__EDIT_${v}__" - sed -i -e "s/${ev}/${!v}/g" configure || die - done - - # This is a false positive skip in the tests as the test-reviewer code - # looks for 'Skipping\s' - sed -i \ - -e '/db_repsite/s,Skipping:,Skipping,g' \ - "${S_BASE}"/test/tcl/reputils.tcl || die -} - -multilib_src_configure() { - # sql_compat will cause a collision with sqlite3 - # --enable-sql_compat - # Don't --enable-sql* because we don't want to use bundled sqlite. - # See Gentoo bug #605688 - local myeconfargs=( - --enable-compat185 - --enable-dbm - --enable-o_direct - --without-uniquename - --disable-sql - --disable-sql_codegen - --disable-sql_compat - --disable-static - $([[ ${ABI} == arm ]] && echo --with-mutex=ARM/gcc-assembly) - $([[ ${ABI} == amd64 ]] && echo --with-mutex=x86/gcc-assembly) - $(use_enable cxx) - $(use_enable cxx stl) - $(multilib_native_use_enable java) - $(use_enable test) - ) - - tc-ld-force-bfd #470634 #729510 - - # compilation with -O0 fails on amd64, see bug #171231 - if [[ ${ABI} == amd64 ]]; then - local CFLAGS=${CFLAGS} CXXFLAGS=${CXXFLAGS} - replace-flags -O0 -O2 - is-flagq -O[s123] || append-flags -O2 - fi - - # Add linker versions to the symbols. Easier to do, and safer than header file - # mumbo jumbo. - if use kernel_linux || use kernel_SunOS; then - append-ldflags -Wl,--default-symver - fi - - # use `set` here since the java opts will contain whitespace - if multilib_is_native_abi && use java ; then - myeconfargs+=( - --with-java-prefix="${JAVA_HOME}" - --with-javac-flags="$(java-pkg_javac-args)" - ) - fi - - # Bug #270851: test needs TCL support - if use tcl || use test ; then - myeconfargs+=( - --enable-tcl - --with-tcl="${EPREFIX}/usr/$(get_libdir)" - ) - else - myeconfargs+=(--disable-tcl ) - fi - - ECONF_SOURCE="${S_BASE}"/dist \ - STRIP="true" \ - econf "${myeconfargs[@]}" -} - -multilib_src_install() { - emake install DESTDIR="${D}" - - db_src_install_headerslot - - db_src_install_usrlibcleanup - - if multilib_is_native_abi && use java; then - java-pkg_regso "${ED%/}"/usr/"$(get_libdir)"/libdb_java*.so - java-pkg_dojar "${ED%/}"/usr/"$(get_libdir)"/*.jar - rm -f "${ED%/}"/usr/"$(get_libdir)"/*.jar - fi -} - -multilib_src_install_all() { - db_src_install_usrbinslot - - db_src_install_doc - - dodir /usr/sbin - # This file is not always built, and no longer exists as of db-4.8 - if [[ -f "${ED%/}"/usr/bin/berkeley_db_svc ]] ; then - mv "${ED%/}"/usr/bin/berkeley_db_svc \ - "${ED%/}"/usr/sbin/berkeley_db"${SLOT/./}"_svc || die - fi - - # no static libraries - find "${ED}" -name '*.la' -delete || die -} - -pkg_postinst() { - multilib_foreach_abi db_fix_so -} - -pkg_postrm() { - multilib_foreach_abi db_fix_so -} - -src_test() { - # db_repsite is impossible to build, as upstream strips those sources. - # db_repsite is used directly in the setup_site_prog, - # setup_site_prog is called from open_site_prog - # which is called only from tests in the multi_repmgr group. - #sed -ri \ - # -e '/set subs/s,multi_repmgr,,g' \ - # "${S_BASE}/test/testparams.tcl" - sed -ri \ - -e '/multi_repmgr/d' \ - "${S_BASE}/test/tcl/test.tcl" || die - - # This is the only failure in 5.2.28 so far, and looks like a false positive. - # Repmgr018 (btree): Test of repmgr stats. - # Repmgr018.a: Start a master. - # Repmgr018.b: Start a client. - # Repmgr018.c: Run some transactions at master. - # Rep_test: btree 20 key/data pairs starting at 0 - # Rep_test.a: put/get loop - # FAIL:07:05:59 (00:00:00) perm_no_failed_stat: expected 0, got 1 - sed -ri \ - -e '/set parms.*repmgr018/d' \ - -e 's/repmgr018//g' \ - "${S_BASE}/test/tcl/test.tcl" || die - - multilib-minimal_src_test -} - -multilib_src_test() { - multilib_is_native_abi || return - - S=${BUILD_DIR} db_src_test -} -- cgit v1.2.3