diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/python/Manifest b/sdk_container/src/third_party/portage-stable/dev-lang/python/Manifest index 87ad78f0b6..d5656f50fd 100644 --- a/sdk_container/src/third_party/portage-stable/dev-lang/python/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-lang/python/Manifest @@ -6,14 +6,12 @@ DIST Python-3.11.13.tar.xz 20117496 BLAKE2B 444de8eef3a938a387374b152350414b7e26 DIST Python-3.11.13.tar.xz.asc 833 BLAKE2B c6860aa8687e53b8d9df5d8442490adaff202bfb23817801562577c8d7b81383376342d8e15c5451e25e270746a6d28167f39cfdd75be589e0d58187026a4830 SHA512 6e261490bc7777f0bcebd0464867df98b7955b32f13a445aab3cb6a1a1d3fb804817638f67a8586910fb97291a805b64f130909c06257903f431f8634c691c3b DIST Python-3.12.11.tar.xz 20525812 BLAKE2B 08eed9d91fe0be305fe9832f5fae5ed4ffdb524283079b6473ed77cc277671356ce2b8f6ca97f55f8ee4954a35fe399099773d0699d6bfbc0aa87a7e9271ba8b SHA512 81f259c5bb293a5b685ebead1dff56c7c9d28eed12edb508b3e5e1a882991e762fc959803cf2734f4233bb1c5407b4f5303324c67b25d860b069d38bbebe4454 DIST Python-3.12.11.tar.xz.asc 963 BLAKE2B 4c7eea750312ba996f88c452e51b58c0176d53f43e5bd30fd41a931540320b598b6d1e93d79996ce30dfa22858c4c3ed2cb24d16ba0a891a146fbf81ec60b07b SHA512 3589deba17c5adcfcd614387a5207ad20db56cd9c7937eb44e21035a8745f1c6bb9a1b7cfe8bc5b58ecc7cca09ed49fd4c2878f65baecb2514e79c666f85a22e -DIST Python-3.13.4.tar.xz 22672472 BLAKE2B d453538db82084f490456416829c7d30672e5c05c1c1baf428493f16fa78ce63b69544787373e4679826f32a18af5c5de5225f8f507699113346917df0e3de31 SHA512 91454bb4d04c192721d2df980a806858bd8aadb5cef92159c2844cc33e92b0386b1b33d5cfff0f69d449e9f978a5f67f6032155f7b1425ff38e36477637c0c68 -DIST Python-3.13.4.tar.xz.asc 963 BLAKE2B 5c594f95a7b74c2191b553f50020cd6db9b400f32af62d12094fa4c449651079a662645de8118a7a661c4ceafceb9ce5bcecbbbf8d6bc80d6657a0247e88e510 SHA512 ba9c1dee0f3bf564e6ac19cbe08cf4fdc3779a04ed8289654f6dda3fba9f07a0937764a12f1e7e2f6d7ff17bb5b86c05b8ea19296a2b98d1c81a48362ccf6104 DIST Python-3.13.5.tar.xz 22856016 BLAKE2B 9caacad8745dcd238b208022cb140a6655ae57ae0b7f5ac88efc84a96635c310102a5de20cbaa43ef3c329f454b142a0a019141279d49a4d657be5682a1d6521 SHA512 2a058072e87b614b204bd1321b2bfa9c4b6614dbd5ded98dc0ee51c0d6b81504f902b7c003ad14295b371a37918f6975dc37d5a9c836dd9c30f8b086e4759193 DIST Python-3.13.5.tar.xz.asc 963 BLAKE2B 2db0162d18129ec42b48393108a72c28e7f8f8c3fa40b2e231c87fe0bdc3c166fb6ca4a1c1dfb3fffe1aa0c2618c7ccb245513beb7a0919b4aaca5ec7eb23b36 SHA512 07c1a2ec2d6ba2805680b7f1dc262fdc5dc3eec4503780ecdc08cd570ccbb5f1efa736ee03c83d36bdb33ce87db06be5892cf5a6eaf4018d5fe78fff99e615ae -DIST Python-3.14.0b4.tar.xz 23641472 BLAKE2B e894c115d50371e2ecfd5c0cf79f37d3bff230338524bbb2352af8e42d256cd8fe17a38c68769d3125ddcae33500fd151ed64b5641d7f35f4b8968fcae9e31b4 SHA512 faaea000a474430a4ee41bdc95f9a77aa6573354698bc987a7617a6d36eae4b8e7f02ac945eb5b97df8dc62a256725ccd59fec08d4af2bd7b6e8a31ef4f92e2a -DIST Python-3.14.0b4.tar.xz.sigstore 5038 BLAKE2B 95bd040d9be4d746b8d1a5a7486d309783248093b032b85ac5e7e7eaf35caa99b43bf3bf7c3ad69635a7b4f14bf6e42a9ba0b54d19986069b5dc075d17a8ddd5 SHA512 3e2a7a73d5cd98e4e8139ef89bf75c1213459db7634bb57ea2de126ff403e7f9244ec6fca525bcb55b9cd5342cbc80d659772709ebf405d330dcd4f14f93a7cc -DIST Python-3.14.0rc1.tar.xz 23661916 BLAKE2B 77657bb87fe5a8ef538d97ca5ab39be8243d222400f0439ae6a719f528f19d79a22b3c0832c8e0ed9650e8d18a546cec4f40dd881d142b0739e97add688662be SHA512 6f34f593713282e105f9cf0396c523f738f3e4e8c2d4bcc4051c9febff96ab521e67abfe5fd072d7f584c3afcc7acb96a42939f51259ea411308a48468f7fd4e -DIST Python-3.14.0rc1.tar.xz.sigstore 5134 BLAKE2B 10f93540d5acfcd1509826b606d5a2ded0b40c5c60951c893d18c1baa39d8189ac15fa586fcd34318ac6cfeb4c9ad51a86936849a8cdcbb179a11cc86f5f3189 SHA512 0ecd23bf303e42be6f639d55e2b00c13a87caf512923fd529b2661de6e73f76491def062037befbefd6c2fcf2608ae8cb27faae7431137b53e60c8cc20fec740 +DIST Python-3.13.7.tar.xz 22769492 BLAKE2B 8654588ed12e8cd1d691a1869ed1db0d4b9dbb8e265bb0189cfb3cd1f21a298c1d8e9678e27c23b31e6c7f86478f33f3fc6bb66488a550bed60d64b7a801e65a SHA512 73fa04db860e8b98c204f84d403598fcb802b19bfc8f2675df2fddb6b153b1643daf081746a043f57c8fa71b950a439581aa5204c2bfadb8cfd8864ca4f42f0d +DIST Python-3.13.7.tar.xz.asc 963 BLAKE2B ae8721488c7ce01c9c6fe1b184526044900b39d033b0ba1ac573c742cf99a902b32cfefc9b73af8573667b47c71b8356fced5abf0a4b581ef8d0aff1bbcacf47 SHA512 71cd002c18ebb47861abd3309c8cf38972d3d916cca5595d895ba3940719243c66fa28595c2370a8846d9d1c4b3cb4ac5baeda9e9cf94be30302892d01df5e87 +DIST Python-3.14.0rc2.tar.xz 23566140 BLAKE2B 6871d31eba6167f2d0b2d098b1582e465b1bb8df90ede41bba57b8dbdcb087ceba7cc047e93e43cf93c3c36d3166f4f99ab4c321566ec64cdc4c0e65c0abd1da SHA512 8021dc8e23239fd9e53fafd1fcaa1108da41ef376ee5b5e9c8dfd74995537131990239cd83de45b8bd5fb52b44c4dc08df1c837f69ce82c5b2d99ddf3ea5ef77 +DIST Python-3.14.0rc2.tar.xz.sigstore 4942 BLAKE2B 650404fe155c874f05d114dda6ff47ef90b9ed09f6d40f7a3757a3f0fe4420380cb2e52696dda76badccd86b31117e6f8b906a61881b8f65949d00d692abd959 SHA512 2cce5b68b32f9f0f400e5c2d571ad9ce479cff904690ddd454ea69b612cd8c5c003f632f8866a220be46e5e56b92a1dfb12c4e12b381fc7c58710635be5ea715 DIST Python-3.8.20.tar.xz 18962788 BLAKE2B 715c75e0c0a3d3b77af7f07478311bb0554b80aac72915be703aa2d0dd6459a972e5669808e64da14a0b91bb183e00655055c1726f302dc3ccd8721e3b4ae3e6 SHA512 3c9341ee1fd33cb687958dcf2b7c0c7700489726c4d530c3e9d9537d46a6ab534541a4b312232d8505bea395a07e4518c42d75fb7571103e6b266f8f44115c61 DIST Python-3.8.20.tar.xz.asc 833 BLAKE2B 5c86c15a1090b42e42bb7512565b1a7ad9d2137d59e9fd1ab0f83fdfc37dfcf184389418d6703db809e9c8c04a169af292665a2b58bf5dc61b7724ecbb4132d9 SHA512 a751ae0407a593d97acac4d5f8a0456580c753efa12a7d960125c219b4897fdb26fc1ffd43d8ea33ad1449162dd3b2904c16b6c51c57561ba73de3ffa62e0eed DIST Python-3.9.23.tar.xz 19659284 BLAKE2B 17c7c9acec1e2f2e9d146b2c35738ea05cf16609f267dd784668ab43bcce7be93e164c14106f9640a060326ebb2b8bd4ee4e58086bdced4ca611d7f96dbb3699 SHA512 ad2eb2eebff286a16ad631339bc0890b0686cf5e669d28905a98f96e9b1af6673d255f36bf19e146aa4de8d012587dc6b3193e903718f9cdba4b97041318f418 @@ -28,10 +26,9 @@ DIST python-gentoo-patches-3.12.11_p1.tar.xz 23276 BLAKE2B 794485d0fa596f0f2797e DIST python-gentoo-patches-3.13.4.tar.xz 8912 BLAKE2B e3d9f2a12f801dc75e09c5301757f35216d712b5e5394f2ec3ce1d79d0cb57571dbca525e3d5c35b90fa059c2b78ee24341b6a51cbe9691deac84c9ee0578824 SHA512 1a7141accb7aa70c7bd8dd12528f7de031dfeab9ff089f3d044da0b7b52461e2d6d7d1467161e0fe1e259d9fa06d70bcf107d86ad3590e8cf73aa1132ef3aaf9 DIST python-gentoo-patches-3.13.5.tar.xz 8916 BLAKE2B 9d985b12af62b8a917cac1dab9576aac099bc81ad954a5de254a14a3c7d2254edcdcfaadc46314b69a1bb76bd30ca8bed7c866c0de3fc3f89aac0f76af344f32 SHA512 5ac92aa3eef82eae5d707ffcb5085ac98bd9bf64f72fc7ac4aa1b12a0c3aa86c57d0f671ca07f46e2250779f4cf4885916e4d175357ad626eca6e41257a027e7 DIST python-gentoo-patches-3.13.5_p1.tar.xz 19756 BLAKE2B ecc594573bbe3a28364d541d5e1014778c342b6e8ecb09e5e9def238ce73d51f178d02ae91bedce3f7aee4a753f2653aee4f4035f238fa60d603baa59ce4e89b SHA512 a60f3cf65b57aa6c85f59dc5f36fbabe1fa19a5225c3e224c99696bb3d1186b54bdad94627638a3a73b66ceb5958b3a5dcb2b83d13357c71ded04c98ad7da0b9 +DIST python-gentoo-patches-3.13.7.tar.xz 7088 BLAKE2B 07acf2a1cc25f95131875e0282f33ce4710094bcb75b8ac1c383aa88456194d19ede17b41dda1b29bbb194a467f56e8fe976e387128aa82507529cba6ba315b7 SHA512 d79a450db4678bb494e85167e5f035ec146f9b8c400e34cbfa1211cda19aef517ffc624b11687425b1e0ff7a63c22129c649aba663fb9cfec12512b09b64d6a6 DIST python-gentoo-patches-3.14.0b1.tar.xz 5680 BLAKE2B 514b3edc3025e5bf675d371b5ada17dea426856edf1fb6095c2ee400eae95bd4265ef81fe593ae9338e801e7d0a25b1d5ba2d05ca563fd9dd020114b13575746 SHA512 74289e42cf532b54bb1b66a283ec19156f8a36ba38764209c133842314c9efb2ce2ebcba5aa9213bcf7fc0c8a5ca9b6e7adbd5dbfa4397233136d7cd55f53ee7 -DIST python-gentoo-patches-3.14.0b4.tar.xz 3780 BLAKE2B ad67e213b21bc039bf33c0a2e6d3a4ce5e06179ce167f89d56561834dfb5c5b5b5d7f43f6fe2597e94e4ea5d544bb0b60d38b847bb0c32277a0151f2084f3618 SHA512 e5e6fa02d2d24e46848fa5a79ba7fd8a6703473e3bee257fee7b5c55d5c82fedb29f0ba6de1117c6ca738df3841bae5bb00962ae0290d553020e3617dc557c6d -DIST python-gentoo-patches-3.14.0rc1.tar.xz 3776 BLAKE2B 4f2cf7598dac08c3118bbca6c111684fe68fa7c8749ef394eae35c50bc7d78e30f6c54a77199fc87270ccdafa7725dad974226964841d666ceab7cb34d7bd778 SHA512 323586bfd662ff4ed41b7f5f34d1dc394e7e7e1ad87e8a9283b99a14e226cc73d7ff7fb510e772319e361f2ad2becfe4ac246cc0be34d0a981df286cb20c9734 -DIST python-gentoo-patches-3.14.0rc1_p1.tar.xz 5436 BLAKE2B 04a7e01c758e7e162ab05607e1a5f035c4bd77ad09cdbdfee183f02af396140f3b4f7cc0c627fbfeb05e076d4bb763afd77502a35178ec2eb0f4050d7d829734 SHA512 3795d4aa89d433196da74361b0b7ea9fa52966409667f88e8b069ec85674286068cfa3666a5503c62597c5cff4aa5ebf360b907c7571ced269a38019e593cf45 +DIST python-gentoo-patches-3.14.0rc2.tar.xz 3776 BLAKE2B 122a49783f12cf0274ab74ff06edfc483971fca125085914dbc69c2a147a91178b8e573aac6567f5f540aec968e04af6e76a5dec0028b7a8abaac599ce1ae9b4 SHA512 3a16fbbf9e1d71ac87c79f0940634ab299b9f68f98928ac7fde44eae47b5a3f89232e63366bd8fda4484eb6721dcf05e17f92459f95b5786f3649d5ae499df4d DIST python-gentoo-patches-3.8.20_p7.tar.xz 54544 BLAKE2B e31fc9fb5e98b62b0f70165670ec58ed4fa932cfc95d5287c249015a3a372fdbf0d1ba08cb98f63c2dc500700edfd6ffea6db670385d2c86a4fdb92ffb991192 SHA512 a9e7e4976be226931a503af2c986da207d060d4ce436af61f5e8427da513639adbed32bb0061963b83fef275a5de91707ab13b7a9abf3a7472ee0e2c5310eda1 DIST python-gentoo-patches-3.9.23.tar.xz 37148 BLAKE2B a7c0514037169b9938b2180ec2dd22063621d532367f6febfa47da43f47534559baab992d9c5257271121af755b8445346d4d92582e7e11b6468a1c359f28bf2 SHA512 73ef00a7aa671016de396c9e1c4bb5f5c1a97dc735739f806d809f987e802ec440370bf4c85468097547284a5d2b476cbffcec3cf219b7cb6fc890d5029eb5bd DIST python-gentoo-patches-3.9.23_p2.tar.xz 48060 BLAKE2B 2d4ddd3aa48fc52b9f63fbc6020e534234b4183366d121e836544cab93632cd05439205893a11bb505f679946b0690f0962eb0fc029e624cb1c61bc0936127be SHA512 61b3e2c7e8629e1c522c9de8ce9384ee8d1f90ca5ef0f7b902e6315c80196e5f13e0258f8002405a2a752e1c9b5e60f5c3c767c07554d83635fa074bce8a86bd diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-0.3.13.5.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-0.3.13.5.ebuild index 1c29c715ac..2e133b563a 100644 --- a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-0.3.13.5.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-0.3.13.5.ebuild @@ -247,6 +247,9 @@ src_configure() { # Set baseline test skip flags. COMMON_TEST_SKIPS=( + # running gdb inside an ebuild as non-root, within sandbox, + # and possibly within a container is unreliable + -x test_gdb # this is actually test_gdb.test_pretty_print -x test_pretty_print # https://bugs.gentoo.org/933840 @@ -272,16 +275,6 @@ src_configure() { -x test_strtod ) ;; - arm*) - COMMON_TEST_SKIPS+=( - -x test_gdb - ) - ;; - hppa*) - COMMON_TEST_SKIPS+=( - -x test_gdb - ) - ;; mips*) COMMON_TEST_SKIPS+=( -x test_ctypes @@ -289,11 +282,6 @@ src_configure() { -x test_statistics ) ;; - powerpc64-*) # big endian - COMMON_TEST_SKIPS+=( - -x test_gdb - ) - ;; riscv*) COMMON_TEST_SKIPS+=( -x test_urllib2 @@ -307,7 +295,6 @@ src_configure() { -x test_multiprocessing_spawn -x test_ctypes - -x test_gdb # bug 931908 -x test_exceptions ) diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-0.3.13.5_p1.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-0.3.13.5_p1.ebuild index 1c29c715ac..2e133b563a 100644 --- a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-0.3.13.5_p1.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-0.3.13.5_p1.ebuild @@ -247,6 +247,9 @@ src_configure() { # Set baseline test skip flags. COMMON_TEST_SKIPS=( + # running gdb inside an ebuild as non-root, within sandbox, + # and possibly within a container is unreliable + -x test_gdb # this is actually test_gdb.test_pretty_print -x test_pretty_print # https://bugs.gentoo.org/933840 @@ -272,16 +275,6 @@ src_configure() { -x test_strtod ) ;; - arm*) - COMMON_TEST_SKIPS+=( - -x test_gdb - ) - ;; - hppa*) - COMMON_TEST_SKIPS+=( - -x test_gdb - ) - ;; mips*) COMMON_TEST_SKIPS+=( -x test_ctypes @@ -289,11 +282,6 @@ src_configure() { -x test_statistics ) ;; - powerpc64-*) # big endian - COMMON_TEST_SKIPS+=( - -x test_gdb - ) - ;; riscv*) COMMON_TEST_SKIPS+=( -x test_urllib2 @@ -307,7 +295,6 @@ src_configure() { -x test_multiprocessing_spawn -x test_ctypes - -x test_gdb # bug 931908 -x test_exceptions ) diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-0.3.13.4.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-0.3.13.7.ebuild similarity index 98% rename from sdk_container/src/third_party/portage-stable/dev-lang/python/python-0.3.13.4.ebuild rename to sdk_container/src/third_party/portage-stable/dev-lang/python/python-0.3.13.7.ebuild index 1c29c715ac..2e133b563a 100644 --- a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-0.3.13.4.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-0.3.13.7.ebuild @@ -247,6 +247,9 @@ src_configure() { # Set baseline test skip flags. COMMON_TEST_SKIPS=( + # running gdb inside an ebuild as non-root, within sandbox, + # and possibly within a container is unreliable + -x test_gdb # this is actually test_gdb.test_pretty_print -x test_pretty_print # https://bugs.gentoo.org/933840 @@ -272,16 +275,6 @@ src_configure() { -x test_strtod ) ;; - arm*) - COMMON_TEST_SKIPS+=( - -x test_gdb - ) - ;; - hppa*) - COMMON_TEST_SKIPS+=( - -x test_gdb - ) - ;; mips*) COMMON_TEST_SKIPS+=( -x test_ctypes @@ -289,11 +282,6 @@ src_configure() { -x test_statistics ) ;; - powerpc64-*) # big endian - COMMON_TEST_SKIPS+=( - -x test_gdb - ) - ;; riscv*) COMMON_TEST_SKIPS+=( -x test_urllib2 @@ -307,7 +295,6 @@ src_configure() { -x test_multiprocessing_spawn -x test_ctypes - -x test_gdb # bug 931908 -x test_exceptions ) diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-0.3.13.9999.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-0.3.13.9999.ebuild index 013df0cf46..ff19b29faf 100644 --- a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-0.3.13.9999.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-0.3.13.9999.ebuild @@ -234,6 +234,9 @@ src_configure() { # Set baseline test skip flags. COMMON_TEST_SKIPS=( + # running gdb inside an ebuild as non-root, within sandbox, + # and possibly within a container is unreliable + -x test_gdb # this is actually test_gdb.test_pretty_print -x test_pretty_print # https://bugs.gentoo.org/933840 @@ -259,16 +262,6 @@ src_configure() { -x test_strtod ) ;; - arm*) - COMMON_TEST_SKIPS+=( - -x test_gdb - ) - ;; - hppa*) - COMMON_TEST_SKIPS+=( - -x test_gdb - ) - ;; mips*) COMMON_TEST_SKIPS+=( -x test_ctypes @@ -276,11 +269,6 @@ src_configure() { -x test_statistics ) ;; - powerpc64-*) # big endian - COMMON_TEST_SKIPS+=( - -x test_gdb - ) - ;; riscv*) COMMON_TEST_SKIPS+=( -x test_urllib2 @@ -294,7 +282,6 @@ src_configure() { -x test_multiprocessing_spawn -x test_ctypes - -x test_gdb # bug 931908 -x test_exceptions ) diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-0.3.14.0_beta4.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-0.3.14.0_beta4.ebuild deleted file mode 100644 index aded6ca75f..0000000000 --- a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-0.3.14.0_beta4.ebuild +++ /dev/null @@ -1,634 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI="8" - -VERIFY_SIG_METHOD=sigstore -WANT_LIBTOOL="none" - -inherit autotools check-reqs eapi9-ver flag-o-matic linux-info -inherit multiprocessing pax-utils python-utils-r1 toolchain-funcs -inherit verify-sig - -REAL_PV=${PV#0.} -MY_PV=${REAL_PV/_beta/b} -MY_P="Python-${MY_PV%_p*}" -PYVER="$(ver_cut 2-3)t" -PATCHSET="python-gentoo-patches-${MY_PV}" - -DESCRIPTION="Freethreading (no-GIL) version of Python programming language" -HOMEPAGE=" - https://www.python.org/ - https://github.com/python/cpython/ -" -SRC_URI=" - https://www.python.org/ftp/python/${REAL_PV%%_*}/${MY_P}.tar.xz - https://dev.gentoo.org/~mgorny/dist/python/${PATCHSET}.tar.xz - verify-sig? ( - https://www.python.org/ftp/python/${REAL_PV%%_*}/${MY_P}.tar.xz.sigstore - ) -" -S="${WORKDIR}/${MY_P}" - -LICENSE="PSF-2" -SLOT="${PYVER}" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" -IUSE=" - bluetooth debug +ensurepip examples gdbm libedit +ncurses pgo - +readline +sqlite +ssl tail-call-interp test tk valgrind -" -RESTRICT="!test? ( test )" - -# Do not add a dependency on dev-lang/python to this ebuild. -# If you need to apply a patch which requires python for bootstrapping, please -# run the bootstrap code on your dev box and include the results in the -# patchset. See bug 447752. - -RDEPEND=" - app-arch/bzip2:= - app-arch/xz-utils:= - app-arch/zstd:= - app-misc/mime-types - >=dev-libs/expat-2.1:= - dev-libs/libffi:= - dev-libs/mpdecimal:= - dev-python/gentoo-common - >=sys-libs/zlib-1.1.3:= - virtual/libintl - gdbm? ( sys-libs/gdbm:=[berkdb] ) - kernel_linux? ( sys-apps/util-linux:= ) - ncurses? ( >=sys-libs/ncurses-5.2:= ) - readline? ( - !libedit? ( >=sys-libs/readline-4.1:= ) - libedit? ( dev-libs/libedit:= ) - ) - sqlite? ( >=dev-db/sqlite-3.3.8:3= ) - ssl? ( >=dev-libs/openssl-1.1.1:= ) - tk? ( - >=dev-lang/tcl-8.0:= - >=dev-lang/tk-8.0:= - dev-tcltk/blt:= - dev-tcltk/tix - ) -" -# bluetooth requires headers from bluez -DEPEND=" - ${RDEPEND} - bluetooth? ( net-wireless/bluez ) - test? ( - dev-python/ensurepip-pip - dev-python/ensurepip-setuptools - ) - valgrind? ( dev-debug/valgrind ) -" -# autoconf-archive needed to eautoreconf -BDEPEND=" - dev-build/autoconf-archive - app-alternatives/awk - virtual/pkgconfig -" -if [[ ${PV} != *_alpha* ]]; then - RDEPEND+=" - dev-lang/python-exec[python_targets_python${PYVER/./_}(-)] - " -fi -PDEPEND=" - ensurepip? ( dev-python/ensurepip-pip ) -" - -# https://www.python.org/downloads/metadata/sigstore/ -VERIFY_SIG_CERT_IDENTITY=hugo@python.org -VERIFY_SIG_CERT_OIDC_ISSUER=https://github.com/login/oauth - -# large file tests involve a 2.5G file being copied (duplicated) -CHECKREQS_DISK_BUILD=5500M - -QA_PKGCONFIG_VERSION=${PYVER%t} -# false positives -- functions specific to *BSD -QA_CONFIG_IMPL_DECL_SKIP=( chflags lchflags ) - -declare -rgA PYTHON_KERNEL_CHECKS=( - ["CROSS_MEMORY_ATTACH"]="test_external_inspection" #bug 938589 - ["DNOTIFY"]="test_fcntl" # bug 938662 -) - -pkg_pretend() { - if use pgo || use test; then - check-reqs_pkg_pretend - fi -} - -pkg_setup() { - if [[ ${MERGE_TYPE} != binary ]]; then - if use test || use pgo; then - check-reqs_pkg_setup - - local CONFIG_CHECK - for f in "${!PYTHON_KERNEL_CHECKS[@]}"; do - CONFIG_CHECK+="~${f} " - done - linux-info_pkg_setup - fi - fi -} - -src_unpack() { - if use verify-sig; then - verify-sig_verify_detached "${DISTDIR}"/${MY_P}.tar.xz{,.sigstore} - fi - default -} - -src_prepare() { - # Ensure that internal copies of expat and libffi are not used. - # TODO: Makefile has annoying deps on expat headers - #rm -r Modules/expat || die - - local PATCHES=( - "${WORKDIR}/${PATCHSET}" - ) - - default - - # force the correct number of jobs - # https://bugs.gentoo.org/737660 - sed -i -e "s:-j0:-j$(makeopts_jobs):" Makefile.pre.in || die - - # breaks tests when using --with-wheel-pkg-dir - rm -r Lib/test/wheeldata || die - - eautoreconf -} - -build_cbuild_python() { - # Hack to workaround get_libdir not being able to handle CBUILD, bug #794181 - local cbuild_libdir=$(unset PKG_CONFIG_PATH ; $(tc-getBUILD_PKG_CONFIG) --keep-system-libs --libs-only-L libffi) - - # pass system CFLAGS & LDFLAGS as _NODIST, otherwise they'll get - # propagated to sysconfig for built extensions - # - # -fno-lto to avoid bug #700012 (not like it matters for mini-CBUILD Python anyway) - local -x CFLAGS_NODIST="${BUILD_CFLAGS} -fno-lto" - local -x LDFLAGS_NODIST=${BUILD_LDFLAGS} - local -x CFLAGS= LDFLAGS= - local -x BUILD_CFLAGS="${CFLAGS_NODIST}" - local -x BUILD_LDFLAGS=${LDFLAGS_NODIST} - - # We need to build our own Python on CBUILD first, and feed it in. - # bug #847910 - local myeconfargs_cbuild=( - "${myeconfargs[@]}" - - --prefix="${BROOT}"/usr - --libdir="${cbuild_libdir:2}" - - # Avoid needing to load the right libpython.so. - --disable-shared - - # As minimal as possible for the mini CBUILD Python - # we build just for cross to satisfy --with-build-python. - --without-lto - --without-readline - --disable-optimizations - ) - - mkdir "${WORKDIR}"/${P}-${CBUILD} || die - pushd "${WORKDIR}"/${P}-${CBUILD} &> /dev/null || die - - # Avoid as many dependencies as possible for the cross build. - mkdir Modules || die - cat > Modules/Setup.local <<-EOF || die - *disabled* - nis - _dbm _gdbm - _sqlite3 - _hashlib _ssl - _curses _curses_panel - readline - _tkinter - pyexpat - zlib - # We disabled these for CBUILD because Python's setup.py can't handle locating - # libdir correctly for cross. This should be rechecked for the pure Makefile approach, - # and uncommented if needed. - #_ctypes - EOF - - ECONF_SOURCE="${S}" econf_build "${myeconfargs_cbuild[@]}" - - # Unfortunately, we do have to build this immediately, and - # not in src_compile, because CHOST configure for Python - # will check the existence of the --with-build-python value - # immediately. - emake - popd &> /dev/null || die -} - -src_configure() { - # disable automagic bluetooth headers detection - if ! use bluetooth; then - local -x ac_cv_header_bluetooth_bluetooth_h=no - fi - - filter-flags -malign-double - - # Export CXX so it ends up in /usr/lib/python3.X/config/Makefile. - # PKG_CONFIG needed for cross. - tc-export CXX PKG_CONFIG - - local dbmliborder= - if use gdbm; then - dbmliborder+="${dbmliborder:+:}gdbm" - fi - - # Set baseline test skip flags. - COMMON_TEST_SKIPS=( - # this is actually test_gdb.test_pretty_print - -x test_pretty_print - # https://bugs.gentoo.org/933840 - -x test_perf_profiler - ) - - # Arch-specific skips. See #931888 for a collection of these. - case ${CHOST} in - alpha*) - COMMON_TEST_SKIPS+=( - -x test_builtin - -x test_capi - -x test_cmath - -x test_float - # timeout - -x test_free_threading - -x test_math - -x test_numeric_tower - -x test_random - -x test_statistics - # bug 653850 - -x test_resource - -x test_strtod - ) - ;; - arm*) - COMMON_TEST_SKIPS+=( - -x test_gdb - ) - ;; - hppa*) - COMMON_TEST_SKIPS+=( - -x test_gdb - ) - ;; - mips*) - COMMON_TEST_SKIPS+=( - -x test_ctypes - -x test_external_inspection - -x test_statistics - ) - ;; - powerpc64-*) # big endian - COMMON_TEST_SKIPS+=( - -x test_gdb - ) - ;; - riscv*) - COMMON_TEST_SKIPS+=( - -x test_urllib2 - ) - ;; - sparc*) - COMMON_TEST_SKIPS+=( - # bug 788022 - -x test_multiprocessing_fork - -x test_multiprocessing_forkserver - -x test_multiprocessing_spawn - - -x test_ctypes - -x test_gdb - # bug 931908 - -x test_exceptions - ) - ;; - esac - - # Kernel-config specific skips - for option in "${!PYTHON_KERNEL_CHECKS[@]}"; do - if ! linux_config_exists || ! linux_chkconfig_present "${option}" - then - COMMON_TEST_SKIPS+=( -x "${PYTHON_KERNEL_CHECKS[${option}]}" ) - fi - done - - # musl-specific skips - use elibc_musl && COMMON_TEST_SKIPS+=( - # various musl locale deficiencies - -x test__locale - -x test_c_locale_coercion - -x test_locale - -x test_re - - # known issues with find_library on musl - # https://bugs.python.org/issue21622 - -x test_ctypes - - # fpathconf, ttyname errno values - -x test_os - ) - - if use pgo; then - local profile_task_flags=( - -m test - "-j$(makeopts_jobs)" - --pgo-extended - --verbose3 - -u-network - - # We use a timeout because of how often we've had hang issues - # here. It also matches the default upstream PROFILE_TASK. - --timeout 1200 - - "${COMMON_TEST_SKIPS[@]}" - - -x test_dtrace - - # All of these seem to occasionally hang for PGO inconsistently - # They'll even hang here but be fine in src_test sometimes. - # bug #828535 (and related: bug #788022) - -x test_asyncio - -x test_httpservers - -x test_logging - -x test_multiprocessing_fork - -x test_socket - -x test_xmlrpc - - # Hangs (actually runs indefinitely executing itself w/ many cpython builds) - # bug #900429 - -x test_tools - ) - - if has_version "app-arch/rpm" ; then - # Avoid sandbox failure (attempts to write to /var/lib/rpm) - profile_task_flags+=( - -x test_distutils - ) - fi - # PGO sometimes fails randomly - local -x PROFILE_TASK="${profile_task_flags[*]} || true" - fi - - local myeconfargs=( - # glibc-2.30 removes it; since we can't cleanly force-rebuild - # Python on glibc upgrade, remove it proactively to give - # a chance for users rebuilding python before glibc - ac_cv_header_stropts_h=no - - --enable-shared - --without-static-libpython - --enable-ipv6 - --infodir='${prefix}/share/info' - --mandir='${prefix}/share/man' - --with-dbmliborder="${dbmliborder}" - --with-libc= - --enable-loadable-sqlite-extensions - --without-ensurepip - --without-lto - --with-system-expat - --with-system-libmpdec - --with-platlibdir=lib - --with-pkg-config=yes - --with-wheel-pkg-dir="${EPREFIX}"/usr/lib/python/ensurepip - --disable-gil - - $(use_with debug assertions) - $(use_enable pgo optimizations) - $(use_with readline readline "$(usex libedit editline readline)") - $(use_with tail-call-interp) - $(use_with valgrind) - ) - - if tc-is-lto; then - myeconfargs+=( - --with-lto - ) - fi - - # Force-disable modules we don't want built. - # See Modules/Setup for docs on how this works. Setup.local contains our local deviations. - cat > Modules/Setup.local <<-EOF || die - *disabled* - nis - $(usev !gdbm '_gdbm _dbm') - $(usev !sqlite '_sqlite3') - $(usev !ssl '_hashlib _ssl') - $(usev !ncurses '_curses _curses_panel') - $(usev !readline 'readline') - $(usev !tk '_tkinter') - EOF - - # disable implicit optimization/debugging flags - local -x OPT= - - if tc-is-cross-compiler ; then - build_cbuild_python - myeconfargs+=( - # Point the imminent CHOST build to the Python we just - # built for CBUILD. - --with-build-python="${WORKDIR}"/${P}-${CBUILD}/python - ) - fi - - # pass system CFLAGS & LDFLAGS as _NODIST, otherwise they'll get - # propagated to sysconfig for built extensions - local -x CFLAGS_NODIST=${CFLAGS} - local -x LDFLAGS_NODIST=${LDFLAGS} - local -x CFLAGS= LDFLAGS= - - # Fix implicit declarations on cross and prefix builds. Bug #674070. - if use ncurses; then - append-cppflags -I"${ESYSROOT}"/usr/include/ncursesw - fi - - econf "${myeconfargs[@]}" - - if grep -q "#define POSIX_SEMAPHORES_NOT_ENABLED 1" pyconfig.h; then - eerror "configure has detected that the sem_open function is broken." - eerror "Please ensure that /dev/shm is mounted as a tmpfs with mode 1777." - die "Broken sem_open function (bug 496328)" - fi - - # install epython.py as part of stdlib - echo "EPYTHON='python${PYVER}'" > Lib/epython.py || die -} - -src_compile() { - # Ensure sed works as expected - # https://bugs.gentoo.org/594768 - local -x LC_ALL=C - export PYTHONSTRICTEXTENSIONBUILD=1 - - # Save PYTHONDONTWRITEBYTECODE so that 'has_version' doesn't - # end up writing bytecode & violating sandbox. - # bug #831897 - local -x _PYTHONDONTWRITEBYTECODE=${PYTHONDONTWRITEBYTECODE} - - # Gentoo hack to disable accessing system site-packages - export GENTOO_CPYTHON_BUILD=1 - - if use pgo ; then - # bug 660358 - local -x COLUMNS=80 - local -x PYTHONDONTWRITEBYTECODE= - local -x TMPDIR=/var/tmp - fi - - # also need to clear the flags explicitly here or they end up - # in _sysconfigdata* - emake CPPFLAGS= CFLAGS= LDFLAGS= - - # Restore saved value from above. - local -x PYTHONDONTWRITEBYTECODE=${_PYTHONDONTWRITEBYTECODE} - - # Work around bug 329499. See also bug 413751 and 457194. - if has_version dev-libs/libffi[pax-kernel]; then - pax-mark E python - else - pax-mark m python - fi -} - -src_test() { - # Tests will not work when cross compiling. - if tc-is-cross-compiler; then - elog "Disabling tests due to crosscompiling." - return - fi - - # this just happens to skip test_support.test_freeze that is broken - # without bundled expat - # TODO: get a proper skip for it upstream - local -x LOGNAME=buildbot - - local test_opts=( - --verbose3 - -u-network - -j "$(makeopts_jobs)" - "${COMMON_TEST_SKIPS[@]}" - ) - - # bug 660358 - local -x COLUMNS=80 - local -x PYTHONDONTWRITEBYTECODE= - local -x TMPDIR=/var/tmp - - nonfatal emake -Onone test EXTRATESTOPTS="${test_opts[*]}" \ - CPPFLAGS= CFLAGS= LDFLAGS= < /dev/tty - local ret=${?} - - [[ ${ret} -eq 0 ]] || die "emake test failed" -} - -src_install() { - local libdir=${ED}/usr/lib/python${PYVER} - - # -j1 hack for now for bug #843458 - emake -j1 DESTDIR="${D}" TEST_MODULES=no altinstall - - # Fix collisions between different slots of Python. - rm "${ED}/usr/$(get_libdir)/libpython3.so" || die - # Fix collision with GIL-enabled build. - rm "${ED}/usr/bin/python${PYVER%t}" || die - mv "${ED}"/usr/bin/pydoc{${PYVER%t},${PYVER}} || die - mv "${ED}"/usr/share/man/man1/python{${PYVER%t},${PYVER}}.1 || die - - # Cheap hack to get version with ABIFLAGS - local abiver=$(cd "${ED}/usr/include"; echo python*) - if [[ ${abiver} != python${PYVER} ]]; then - # Replace python3.X with a symlink to python3.Xm - rm "${ED}/usr/bin/python${PYVER}" || die - dosym "${abiver}" "/usr/bin/python${PYVER}" - # Create python3.X-config symlink - dosym "${abiver}-config" "/usr/bin/python${PYVER}-config" - # Create python-3.5m.pc symlink - dosym "python-${PYVER}.pc" "/usr/$(get_libdir)/pkgconfig/${abiver/${PYVER}/-${PYVER}}.pc" - fi - - # python seems to get rebuilt in src_install (bug 569908) - # Work around it for now. - if has_version dev-libs/libffi[pax-kernel]; then - pax-mark E "${ED}/usr/bin/${abiver}" - else - pax-mark m "${ED}/usr/bin/${abiver}" - fi - - rm -r "${libdir}"/ensurepip/_bundled || die - if ! use sqlite; then - rm -r "${libdir}/"sqlite3 || die - fi - if use tk; then - # rename to avoid collision with dev-lang/python - mv "${ED}"/usr/bin/idle{${PYVER%t},${PYVER}} || die - else - rm -r "${ED}/usr/bin/idle${PYVER%t}" || die - rm -r "${libdir}/"{idlelib,tkinter} || die - fi - - ln -s ../python/EXTERNALLY-MANAGED "${libdir}/EXTERNALLY-MANAGED" || die - - dodoc Misc/{ACKS,HISTORY,NEWS} - - if use examples; then - docinto examples - find Tools -name __pycache__ -exec rm -fr {} + || die - dodoc -r Tools - fi - insinto /usr/share/gdb/auto-load/usr/$(get_libdir) #443510 - local libname=$( - printf 'e:\n\t@echo $(INSTSONAME)\ninclude Makefile\n' | - emake --no-print-directory -s -f - 2>/dev/null - ) - newins Tools/gdb/libpython.py "${libname}"-gdb.py - - newconfd "${FILESDIR}/pydoc.conf" pydoc-${PYVER} - newinitd "${FILESDIR}/pydoc.init" pydoc-${PYVER} - sed \ - -e "s:@PYDOC_PORT_VARIABLE@:PYDOC${PYVER/./_}_PORT:" \ - -e "s:@PYDOC@:pydoc${PYVER}:" \ - -i "${ED}/etc/conf.d/pydoc-${PYVER}" \ - "${ED}/etc/init.d/pydoc-${PYVER}" || die "sed failed" - - # python-exec wrapping support - local pymajor=${PYVER%.*} - local EPYTHON=python${PYVER} - local scriptdir=${D}$(python_get_scriptdir) - mkdir -p "${scriptdir}" || die - # python and pythonX - ln -s "../../../bin/${abiver}" "${scriptdir}/python${pymajor}" || die - ln -s "python${pymajor}" "${scriptdir}/python" || die - # python-config and pythonX-config - # note: we need to create a wrapper rather than symlinking it due - # to some random dirname(argv[0]) magic performed by python-config - cat > "${scriptdir}/python${pymajor}-config" <<-EOF || die - #!/bin/sh - exec "${abiver}-config" "\${@}" - EOF - chmod +x "${scriptdir}/python${pymajor}-config" || die - ln -s "python${pymajor}-config" "${scriptdir}/python-config" || die - # pydoc - ln -s "../../../bin/pydoc${PYVER}" "${scriptdir}/pydoc" || die - # idle - if use tk; then - ln -s "../../../bin/idle${PYVER}" "${scriptdir}/idle" || die - fi -} - -pkg_postinst() { - if ver_replacing -lt 3.14.0_beta3; then - ewarn "Python 3.14.0b3 has changed its module ABI. The .pyc files" - ewarn "installed previously are no longer valid and will be regenerated" - ewarn "(or ignored) on the next import. This may cause sandbox failures" - ewarn "when installing some packages and checksum mismatches when removing" - ewarn "old versions. To actively prevent this, rebuild all packages" - ewarn "installing Python 3.14 modules, e.g. using:" - ewarn - ewarn " emerge -1v /usr/lib/python3.14t/site-packages" - fi -} diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-0.3.14.0_rc1_p1.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-0.3.14.0_rc1_p1.ebuild deleted file mode 100644 index 39f31bc83e..0000000000 --- a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-0.3.14.0_rc1_p1.ebuild +++ /dev/null @@ -1,634 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI="8" - -VERIFY_SIG_METHOD=sigstore -WANT_LIBTOOL="none" - -inherit autotools check-reqs eapi9-ver flag-o-matic linux-info -inherit multiprocessing pax-utils python-utils-r1 toolchain-funcs -inherit verify-sig - -REAL_PV=${PV#0.} -MY_PV=${REAL_PV/_/} -MY_P="Python-${MY_PV%_p*}" -PYVER="$(ver_cut 2-3)t" -PATCHSET="python-gentoo-patches-${MY_PV}" - -DESCRIPTION="Freethreading (no-GIL) version of Python programming language" -HOMEPAGE=" - https://www.python.org/ - https://github.com/python/cpython/ -" -SRC_URI=" - https://www.python.org/ftp/python/${REAL_PV%%_*}/${MY_P}.tar.xz - https://dev.gentoo.org/~mgorny/dist/python/${PATCHSET}.tar.xz - verify-sig? ( - https://www.python.org/ftp/python/${REAL_PV%%_*}/${MY_P}.tar.xz.sigstore - ) -" -S="${WORKDIR}/${MY_P}" - -LICENSE="PSF-2" -SLOT="${PYVER}" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" -IUSE=" - bluetooth debug +ensurepip examples gdbm libedit +ncurses pgo - +readline +sqlite +ssl tail-call-interp test tk valgrind -" -RESTRICT="!test? ( test )" - -# Do not add a dependency on dev-lang/python to this ebuild. -# If you need to apply a patch which requires python for bootstrapping, please -# run the bootstrap code on your dev box and include the results in the -# patchset. See bug 447752. - -RDEPEND=" - app-arch/bzip2:= - app-arch/xz-utils:= - app-arch/zstd:= - app-misc/mime-types - >=dev-libs/expat-2.1:= - dev-libs/libffi:= - dev-libs/mpdecimal:= - dev-python/gentoo-common - >=sys-libs/zlib-1.1.3:= - virtual/libintl - gdbm? ( sys-libs/gdbm:=[berkdb] ) - kernel_linux? ( sys-apps/util-linux:= ) - ncurses? ( >=sys-libs/ncurses-5.2:= ) - readline? ( - !libedit? ( >=sys-libs/readline-4.1:= ) - libedit? ( dev-libs/libedit:= ) - ) - sqlite? ( >=dev-db/sqlite-3.3.8:3= ) - ssl? ( >=dev-libs/openssl-1.1.1:= ) - tk? ( - >=dev-lang/tcl-8.0:= - >=dev-lang/tk-8.0:= - dev-tcltk/blt:= - dev-tcltk/tix - ) -" -# bluetooth requires headers from bluez -DEPEND=" - ${RDEPEND} - bluetooth? ( net-wireless/bluez ) - test? ( - dev-python/ensurepip-pip - dev-python/ensurepip-setuptools - ) - valgrind? ( dev-debug/valgrind ) -" -# autoconf-archive needed to eautoreconf -BDEPEND=" - dev-build/autoconf-archive - app-alternatives/awk - virtual/pkgconfig -" -if [[ ${PV} != *_alpha* ]]; then - RDEPEND+=" - dev-lang/python-exec[python_targets_python${PYVER/./_}(-)] - " -fi -PDEPEND=" - ensurepip? ( dev-python/ensurepip-pip ) -" - -# https://www.python.org/downloads/metadata/sigstore/ -VERIFY_SIG_CERT_IDENTITY=hugo@python.org -VERIFY_SIG_CERT_OIDC_ISSUER=https://github.com/login/oauth - -# large file tests involve a 2.5G file being copied (duplicated) -CHECKREQS_DISK_BUILD=5500M - -QA_PKGCONFIG_VERSION=${PYVER%t} -# false positives -- functions specific to *BSD -QA_CONFIG_IMPL_DECL_SKIP=( chflags lchflags ) - -declare -rgA PYTHON_KERNEL_CHECKS=( - ["CROSS_MEMORY_ATTACH"]="test_external_inspection" #bug 938589 - ["DNOTIFY"]="test_fcntl" # bug 938662 -) - -pkg_pretend() { - if use pgo || use test; then - check-reqs_pkg_pretend - fi -} - -pkg_setup() { - if [[ ${MERGE_TYPE} != binary ]]; then - if use test || use pgo; then - check-reqs_pkg_setup - - local CONFIG_CHECK - for f in "${!PYTHON_KERNEL_CHECKS[@]}"; do - CONFIG_CHECK+="~${f} " - done - linux-info_pkg_setup - fi - fi -} - -src_unpack() { - if use verify-sig; then - verify-sig_verify_detached "${DISTDIR}"/${MY_P}.tar.xz{,.sigstore} - fi - default -} - -src_prepare() { - # Ensure that internal copies of expat and libffi are not used. - # TODO: Makefile has annoying deps on expat headers - #rm -r Modules/expat || die - - local PATCHES=( - "${WORKDIR}/${PATCHSET}" - ) - - default - - # force the correct number of jobs - # https://bugs.gentoo.org/737660 - sed -i -e "s:-j0:-j$(makeopts_jobs):" Makefile.pre.in || die - - # breaks tests when using --with-wheel-pkg-dir - rm -r Lib/test/wheeldata || die - - eautoreconf -} - -build_cbuild_python() { - # Hack to workaround get_libdir not being able to handle CBUILD, bug #794181 - local cbuild_libdir=$(unset PKG_CONFIG_PATH ; $(tc-getBUILD_PKG_CONFIG) --keep-system-libs --libs-only-L libffi) - - # pass system CFLAGS & LDFLAGS as _NODIST, otherwise they'll get - # propagated to sysconfig for built extensions - # - # -fno-lto to avoid bug #700012 (not like it matters for mini-CBUILD Python anyway) - local -x CFLAGS_NODIST="${BUILD_CFLAGS} -fno-lto" - local -x LDFLAGS_NODIST=${BUILD_LDFLAGS} - local -x CFLAGS= LDFLAGS= - local -x BUILD_CFLAGS="${CFLAGS_NODIST}" - local -x BUILD_LDFLAGS=${LDFLAGS_NODIST} - - # We need to build our own Python on CBUILD first, and feed it in. - # bug #847910 - local myeconfargs_cbuild=( - "${myeconfargs[@]}" - - --prefix="${BROOT}"/usr - --libdir="${cbuild_libdir:2}" - - # Avoid needing to load the right libpython.so. - --disable-shared - - # As minimal as possible for the mini CBUILD Python - # we build just for cross to satisfy --with-build-python. - --without-lto - --without-readline - --disable-optimizations - ) - - mkdir "${WORKDIR}"/${P}-${CBUILD} || die - pushd "${WORKDIR}"/${P}-${CBUILD} &> /dev/null || die - - # Avoid as many dependencies as possible for the cross build. - mkdir Modules || die - cat > Modules/Setup.local <<-EOF || die - *disabled* - nis - _dbm _gdbm - _sqlite3 - _hashlib _ssl - _curses _curses_panel - readline - _tkinter - pyexpat - zlib - # We disabled these for CBUILD because Python's setup.py can't handle locating - # libdir correctly for cross. This should be rechecked for the pure Makefile approach, - # and uncommented if needed. - #_ctypes - EOF - - ECONF_SOURCE="${S}" econf_build "${myeconfargs_cbuild[@]}" - - # Unfortunately, we do have to build this immediately, and - # not in src_compile, because CHOST configure for Python - # will check the existence of the --with-build-python value - # immediately. - emake - popd &> /dev/null || die -} - -src_configure() { - # disable automagic bluetooth headers detection - if ! use bluetooth; then - local -x ac_cv_header_bluetooth_bluetooth_h=no - fi - - filter-flags -malign-double - - # Export CXX so it ends up in /usr/lib/python3.X/config/Makefile. - # PKG_CONFIG needed for cross. - tc-export CXX PKG_CONFIG - - local dbmliborder= - if use gdbm; then - dbmliborder+="${dbmliborder:+:}gdbm" - fi - - # Set baseline test skip flags. - COMMON_TEST_SKIPS=( - # this is actually test_gdb.test_pretty_print - -x test_pretty_print - # https://bugs.gentoo.org/933840 - -x test_perf_profiler - ) - - # Arch-specific skips. See #931888 for a collection of these. - case ${CHOST} in - alpha*) - COMMON_TEST_SKIPS+=( - -x test_builtin - -x test_capi - -x test_cmath - -x test_float - # timeout - -x test_free_threading - -x test_math - -x test_numeric_tower - -x test_random - -x test_statistics - # bug 653850 - -x test_resource - -x test_strtod - ) - ;; - arm*) - COMMON_TEST_SKIPS+=( - -x test_gdb - ) - ;; - hppa*) - COMMON_TEST_SKIPS+=( - -x test_gdb - ) - ;; - mips*) - COMMON_TEST_SKIPS+=( - -x test_ctypes - -x test_external_inspection - -x test_statistics - ) - ;; - powerpc64-*) # big endian - COMMON_TEST_SKIPS+=( - -x test_gdb - ) - ;; - riscv*) - COMMON_TEST_SKIPS+=( - -x test_urllib2 - ) - ;; - sparc*) - COMMON_TEST_SKIPS+=( - # bug 788022 - -x test_multiprocessing_fork - -x test_multiprocessing_forkserver - -x test_multiprocessing_spawn - - -x test_ctypes - -x test_gdb - # bug 931908 - -x test_exceptions - ) - ;; - esac - - # Kernel-config specific skips - for option in "${!PYTHON_KERNEL_CHECKS[@]}"; do - if ! linux_config_exists || ! linux_chkconfig_present "${option}" - then - COMMON_TEST_SKIPS+=( -x "${PYTHON_KERNEL_CHECKS[${option}]}" ) - fi - done - - # musl-specific skips - use elibc_musl && COMMON_TEST_SKIPS+=( - # various musl locale deficiencies - -x test__locale - -x test_c_locale_coercion - -x test_locale - -x test_re - - # known issues with find_library on musl - # https://bugs.python.org/issue21622 - -x test_ctypes - - # fpathconf, ttyname errno values - -x test_os - ) - - if use pgo; then - local profile_task_flags=( - -m test - "-j$(makeopts_jobs)" - --pgo-extended - --verbose3 - -u-network - - # We use a timeout because of how often we've had hang issues - # here. It also matches the default upstream PROFILE_TASK. - --timeout 1200 - - "${COMMON_TEST_SKIPS[@]}" - - -x test_dtrace - - # All of these seem to occasionally hang for PGO inconsistently - # They'll even hang here but be fine in src_test sometimes. - # bug #828535 (and related: bug #788022) - -x test_asyncio - -x test_httpservers - -x test_logging - -x test_multiprocessing_fork - -x test_socket - -x test_xmlrpc - - # Hangs (actually runs indefinitely executing itself w/ many cpython builds) - # bug #900429 - -x test_tools - ) - - if has_version "app-arch/rpm" ; then - # Avoid sandbox failure (attempts to write to /var/lib/rpm) - profile_task_flags+=( - -x test_distutils - ) - fi - # PGO sometimes fails randomly - local -x PROFILE_TASK="${profile_task_flags[*]} || true" - fi - - local myeconfargs=( - # glibc-2.30 removes it; since we can't cleanly force-rebuild - # Python on glibc upgrade, remove it proactively to give - # a chance for users rebuilding python before glibc - ac_cv_header_stropts_h=no - - --enable-shared - --without-static-libpython - --enable-ipv6 - --infodir='${prefix}/share/info' - --mandir='${prefix}/share/man' - --with-dbmliborder="${dbmliborder}" - --with-libc= - --enable-loadable-sqlite-extensions - --without-ensurepip - --without-lto - --with-system-expat - --with-system-libmpdec - --with-platlibdir=lib - --with-pkg-config=yes - --with-wheel-pkg-dir="${EPREFIX}"/usr/lib/python/ensurepip - --disable-gil - - $(use_with debug assertions) - $(use_enable pgo optimizations) - $(use_with readline readline "$(usex libedit editline readline)") - $(use_with tail-call-interp) - $(use_with valgrind) - ) - - if tc-is-lto; then - myeconfargs+=( - --with-lto - ) - fi - - # Force-disable modules we don't want built. - # See Modules/Setup for docs on how this works. Setup.local contains our local deviations. - cat > Modules/Setup.local <<-EOF || die - *disabled* - nis - $(usev !gdbm '_gdbm _dbm') - $(usev !sqlite '_sqlite3') - $(usev !ssl '_hashlib _ssl') - $(usev !ncurses '_curses _curses_panel') - $(usev !readline 'readline') - $(usev !tk '_tkinter') - EOF - - # disable implicit optimization/debugging flags - local -x OPT= - - if tc-is-cross-compiler ; then - build_cbuild_python - myeconfargs+=( - # Point the imminent CHOST build to the Python we just - # built for CBUILD. - --with-build-python="${WORKDIR}"/${P}-${CBUILD}/python - ) - fi - - # pass system CFLAGS & LDFLAGS as _NODIST, otherwise they'll get - # propagated to sysconfig for built extensions - local -x CFLAGS_NODIST=${CFLAGS} - local -x LDFLAGS_NODIST=${LDFLAGS} - local -x CFLAGS= LDFLAGS= - - # Fix implicit declarations on cross and prefix builds. Bug #674070. - if use ncurses; then - append-cppflags -I"${ESYSROOT}"/usr/include/ncursesw - fi - - econf "${myeconfargs[@]}" - - if grep -q "#define POSIX_SEMAPHORES_NOT_ENABLED 1" pyconfig.h; then - eerror "configure has detected that the sem_open function is broken." - eerror "Please ensure that /dev/shm is mounted as a tmpfs with mode 1777." - die "Broken sem_open function (bug 496328)" - fi - - # install epython.py as part of stdlib - echo "EPYTHON='python${PYVER}'" > Lib/epython.py || die -} - -src_compile() { - # Ensure sed works as expected - # https://bugs.gentoo.org/594768 - local -x LC_ALL=C - export PYTHONSTRICTEXTENSIONBUILD=1 - - # Save PYTHONDONTWRITEBYTECODE so that 'has_version' doesn't - # end up writing bytecode & violating sandbox. - # bug #831897 - local -x _PYTHONDONTWRITEBYTECODE=${PYTHONDONTWRITEBYTECODE} - - # Gentoo hack to disable accessing system site-packages - export GENTOO_CPYTHON_BUILD=1 - - if use pgo ; then - # bug 660358 - local -x COLUMNS=80 - local -x PYTHONDONTWRITEBYTECODE= - local -x TMPDIR=/var/tmp - fi - - # also need to clear the flags explicitly here or they end up - # in _sysconfigdata* - emake CPPFLAGS= CFLAGS= LDFLAGS= - - # Restore saved value from above. - local -x PYTHONDONTWRITEBYTECODE=${_PYTHONDONTWRITEBYTECODE} - - # Work around bug 329499. See also bug 413751 and 457194. - if has_version dev-libs/libffi[pax-kernel]; then - pax-mark E python - else - pax-mark m python - fi -} - -src_test() { - # Tests will not work when cross compiling. - if tc-is-cross-compiler; then - elog "Disabling tests due to crosscompiling." - return - fi - - # this just happens to skip test_support.test_freeze that is broken - # without bundled expat - # TODO: get a proper skip for it upstream - local -x LOGNAME=buildbot - - local test_opts=( - --verbose3 - -u-network - -j "$(makeopts_jobs)" - "${COMMON_TEST_SKIPS[@]}" - ) - - # bug 660358 - local -x COLUMNS=80 - local -x PYTHONDONTWRITEBYTECODE= - local -x TMPDIR=/var/tmp - - nonfatal emake -Onone test EXTRATESTOPTS="${test_opts[*]}" \ - CPPFLAGS= CFLAGS= LDFLAGS= < /dev/tty - local ret=${?} - - [[ ${ret} -eq 0 ]] || die "emake test failed" -} - -src_install() { - local libdir=${ED}/usr/lib/python${PYVER} - - # -j1 hack for now for bug #843458 - emake -j1 DESTDIR="${D}" TEST_MODULES=no altinstall - - # Fix collisions between different slots of Python. - rm "${ED}/usr/$(get_libdir)/libpython3.so" || die - # Fix collision with GIL-enabled build. - rm "${ED}/usr/bin/python${PYVER%t}" || die - mv "${ED}"/usr/bin/pydoc{${PYVER%t},${PYVER}} || die - mv "${ED}"/usr/share/man/man1/python{${PYVER%t},${PYVER}}.1 || die - - # Cheap hack to get version with ABIFLAGS - local abiver=$(cd "${ED}/usr/include"; echo python*) - if [[ ${abiver} != python${PYVER} ]]; then - # Replace python3.X with a symlink to python3.Xm - rm "${ED}/usr/bin/python${PYVER}" || die - dosym "${abiver}" "/usr/bin/python${PYVER}" - # Create python3.X-config symlink - dosym "${abiver}-config" "/usr/bin/python${PYVER}-config" - # Create python-3.5m.pc symlink - dosym "python-${PYVER}.pc" "/usr/$(get_libdir)/pkgconfig/${abiver/${PYVER}/-${PYVER}}.pc" - fi - - # python seems to get rebuilt in src_install (bug 569908) - # Work around it for now. - if has_version dev-libs/libffi[pax-kernel]; then - pax-mark E "${ED}/usr/bin/${abiver}" - else - pax-mark m "${ED}/usr/bin/${abiver}" - fi - - rm -r "${libdir}"/ensurepip/_bundled || die - if ! use sqlite; then - rm -r "${libdir}/"sqlite3 || die - fi - if use tk; then - # rename to avoid collision with dev-lang/python - mv "${ED}"/usr/bin/idle{${PYVER%t},${PYVER}} || die - else - rm -r "${ED}/usr/bin/idle${PYVER%t}" || die - rm -r "${libdir}/"{idlelib,tkinter} || die - fi - - ln -s ../python/EXTERNALLY-MANAGED "${libdir}/EXTERNALLY-MANAGED" || die - - dodoc Misc/{ACKS,HISTORY,NEWS} - - if use examples; then - docinto examples - find Tools -name __pycache__ -exec rm -fr {} + || die - dodoc -r Tools - fi - insinto /usr/share/gdb/auto-load/usr/$(get_libdir) #443510 - local libname=$( - printf 'e:\n\t@echo $(INSTSONAME)\ninclude Makefile\n' | - emake --no-print-directory -s -f - 2>/dev/null - ) - newins Tools/gdb/libpython.py "${libname}"-gdb.py - - newconfd "${FILESDIR}/pydoc.conf" pydoc-${PYVER} - newinitd "${FILESDIR}/pydoc.init" pydoc-${PYVER} - sed \ - -e "s:@PYDOC_PORT_VARIABLE@:PYDOC${PYVER/./_}_PORT:" \ - -e "s:@PYDOC@:pydoc${PYVER}:" \ - -i "${ED}/etc/conf.d/pydoc-${PYVER}" \ - "${ED}/etc/init.d/pydoc-${PYVER}" || die "sed failed" - - # python-exec wrapping support - local pymajor=${PYVER%.*} - local EPYTHON=python${PYVER} - local scriptdir=${D}$(python_get_scriptdir) - mkdir -p "${scriptdir}" || die - # python and pythonX - ln -s "../../../bin/${abiver}" "${scriptdir}/python${pymajor}" || die - ln -s "python${pymajor}" "${scriptdir}/python" || die - # python-config and pythonX-config - # note: we need to create a wrapper rather than symlinking it due - # to some random dirname(argv[0]) magic performed by python-config - cat > "${scriptdir}/python${pymajor}-config" <<-EOF || die - #!/bin/sh - exec "${abiver}-config" "\${@}" - EOF - chmod +x "${scriptdir}/python${pymajor}-config" || die - ln -s "python${pymajor}-config" "${scriptdir}/python-config" || die - # pydoc - ln -s "../../../bin/pydoc${PYVER}" "${scriptdir}/pydoc" || die - # idle - if use tk; then - ln -s "../../../bin/idle${PYVER}" "${scriptdir}/idle" || die - fi -} - -pkg_postinst() { - if ver_replacing -lt 3.14.0_beta3; then - ewarn "Python 3.14.0b3 has changed its module ABI. The .pyc files" - ewarn "installed previously are no longer valid and will be regenerated" - ewarn "(or ignored) on the next import. This may cause sandbox failures" - ewarn "when installing some packages and checksum mismatches when removing" - ewarn "old versions. To actively prevent this, rebuild all packages" - ewarn "installing Python 3.14 modules, e.g. using:" - ewarn - ewarn " emerge -1v /usr/lib/python3.14t/site-packages" - fi -} diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-0.3.14.0_rc1.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-0.3.14.0_rc2.ebuild similarity index 98% rename from sdk_container/src/third_party/portage-stable/dev-lang/python/python-0.3.14.0_rc1.ebuild rename to sdk_container/src/third_party/portage-stable/dev-lang/python/python-0.3.14.0_rc2.ebuild index 39f31bc83e..742a14ccd3 100644 --- a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-0.3.14.0_rc1.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-0.3.14.0_rc2.ebuild @@ -243,6 +243,9 @@ src_configure() { # Set baseline test skip flags. COMMON_TEST_SKIPS=( + # running gdb inside an ebuild as non-root, within sandbox, + # and possibly within a container is unreliable + -x test_gdb # this is actually test_gdb.test_pretty_print -x test_pretty_print # https://bugs.gentoo.org/933840 @@ -268,16 +271,6 @@ src_configure() { -x test_strtod ) ;; - arm*) - COMMON_TEST_SKIPS+=( - -x test_gdb - ) - ;; - hppa*) - COMMON_TEST_SKIPS+=( - -x test_gdb - ) - ;; mips*) COMMON_TEST_SKIPS+=( -x test_ctypes @@ -285,11 +278,6 @@ src_configure() { -x test_statistics ) ;; - powerpc64-*) # big endian - COMMON_TEST_SKIPS+=( - -x test_gdb - ) - ;; riscv*) COMMON_TEST_SKIPS+=( -x test_urllib2 @@ -303,7 +291,6 @@ src_configure() { -x test_multiprocessing_spawn -x test_ctypes - -x test_gdb # bug 931908 -x test_exceptions ) diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-0.3.14.9999.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-0.3.14.9999.ebuild index 2b71ace381..9d9d70958f 100644 --- a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-0.3.14.9999.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-0.3.14.9999.ebuild @@ -234,6 +234,9 @@ src_configure() { # Set baseline test skip flags. COMMON_TEST_SKIPS=( + # running gdb inside an ebuild as non-root, within sandbox, + # and possibly within a container is unreliable + -x test_gdb # this is actually test_gdb.test_pretty_print -x test_pretty_print # https://bugs.gentoo.org/933840 @@ -259,16 +262,6 @@ src_configure() { -x test_strtod ) ;; - arm*) - COMMON_TEST_SKIPS+=( - -x test_gdb - ) - ;; - hppa*) - COMMON_TEST_SKIPS+=( - -x test_gdb - ) - ;; mips*) COMMON_TEST_SKIPS+=( -x test_ctypes @@ -276,11 +269,6 @@ src_configure() { -x test_statistics ) ;; - powerpc64-*) # big endian - COMMON_TEST_SKIPS+=( - -x test_gdb - ) - ;; riscv*) COMMON_TEST_SKIPS+=( -x test_urllib2 @@ -294,7 +282,6 @@ src_configure() { -x test_multiprocessing_spawn -x test_ctypes - -x test_gdb # bug 931908 -x test_exceptions ) diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-0.3.15.9999.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-0.3.15.9999.ebuild index 034cc43a58..246ae13dfe 100644 --- a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-0.3.15.9999.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-0.3.15.9999.ebuild @@ -229,6 +229,9 @@ src_configure() { # Set baseline test skip flags. COMMON_TEST_SKIPS=( + # running gdb inside an ebuild as non-root, within sandbox, + # and possibly within a container is unreliable + -x test_gdb # this is actually test_gdb.test_pretty_print -x test_pretty_print # https://bugs.gentoo.org/933840 @@ -254,16 +257,6 @@ src_configure() { -x test_strtod ) ;; - arm*) - COMMON_TEST_SKIPS+=( - -x test_gdb - ) - ;; - hppa*) - COMMON_TEST_SKIPS+=( - -x test_gdb - ) - ;; mips*) COMMON_TEST_SKIPS+=( -x test_ctypes @@ -271,11 +264,6 @@ src_configure() { -x test_statistics ) ;; - powerpc64-*) # big endian - COMMON_TEST_SKIPS+=( - -x test_gdb - ) - ;; riscv*) COMMON_TEST_SKIPS+=( -x test_urllib2 @@ -289,7 +277,6 @@ src_configure() { -x test_multiprocessing_spawn -x test_ctypes - -x test_gdb # bug 931908 -x test_exceptions ) diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.10.18-r1.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.10.18-r1.ebuild index a8d31067ba..43f8ee3db8 100644 --- a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.10.18-r1.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.10.18-r1.ebuild @@ -233,6 +233,8 @@ src_configure() { # Set baseline test skip flags. COMMON_TEST_SKIPS=( + # running gdb inside an ebuild as non-root, within sandbox, + # and possibly within a container is unreliable -x test_gdb ) diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.10.18_p2.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.10.18_p2.ebuild index 148da4ffc9..2ffd36444e 100644 --- a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.10.18_p2.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.10.18_p2.ebuild @@ -233,6 +233,8 @@ src_configure() { # Set baseline test skip flags. COMMON_TEST_SKIPS=( + # running gdb inside an ebuild as non-root, within sandbox, + # and possibly within a container is unreliable -x test_gdb ) diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.10.9999.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.10.9999.ebuild index f31bba4946..13edc56d65 100644 --- a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.10.9999.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.10.9999.ebuild @@ -222,6 +222,8 @@ src_configure() { # Set baseline test skip flags. COMMON_TEST_SKIPS=( + # running gdb inside an ebuild as non-root, within sandbox, + # and possibly within a container is unreliable -x test_gdb ) diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.11.13-r1.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.11.13-r1.ebuild index 12f13e84a1..830041bc38 100644 --- a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.11.13-r1.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.11.13-r1.ebuild @@ -228,6 +228,9 @@ src_configure() { # Set baseline test skip flags. COMMON_TEST_SKIPS=( + # running gdb inside an ebuild as non-root, within sandbox, + # and possibly within a container is unreliable + -x test_gdb # this is actually test_gdb.test_pretty_print -x test_pretty_print ) @@ -251,11 +254,6 @@ src_configure() { -x test_strtod ) ;; - arm*) - COMMON_TEST_SKIPS+=( - -x test_gdb - ) - ;; mips*) COMMON_TEST_SKIPS+=( -x test_ctypes @@ -266,7 +264,6 @@ src_configure() { powerpc64-*) # big endian COMMON_TEST_SKIPS+=( -x test_descr - -x test_gdb ) ;; riscv*) @@ -283,7 +280,6 @@ src_configure() { -x test_ctypes -x test_descr - -x test_gdb # bug 931908 -x test_exceptions ) diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.11.13_p1.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.11.13_p1.ebuild index 2cff955cb5..33eb872c4e 100644 --- a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.11.13_p1.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.11.13_p1.ebuild @@ -228,6 +228,9 @@ src_configure() { # Set baseline test skip flags. COMMON_TEST_SKIPS=( + # running gdb inside an ebuild as non-root, within sandbox, + # and possibly within a container is unreliable + -x test_gdb # this is actually test_gdb.test_pretty_print -x test_pretty_print ) @@ -251,11 +254,6 @@ src_configure() { -x test_strtod ) ;; - arm*) - COMMON_TEST_SKIPS+=( - -x test_gdb - ) - ;; mips*) COMMON_TEST_SKIPS+=( -x test_ctypes @@ -266,7 +264,6 @@ src_configure() { powerpc64-*) # big endian COMMON_TEST_SKIPS+=( -x test_descr - -x test_gdb ) ;; riscv*) @@ -283,7 +280,6 @@ src_configure() { -x test_ctypes -x test_descr - -x test_gdb # bug 931908 -x test_exceptions ) diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.11.9999.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.11.9999.ebuild index 28f563fc33..c174b1c2a9 100644 --- a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.11.9999.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.11.9999.ebuild @@ -217,6 +217,9 @@ src_configure() { # Set baseline test skip flags. COMMON_TEST_SKIPS=( + # running gdb inside an ebuild as non-root, within sandbox, + # and possibly within a container is unreliable + -x test_gdb # this is actually test_gdb.test_pretty_print -x test_pretty_print ) @@ -240,11 +243,6 @@ src_configure() { -x test_strtod ) ;; - arm*) - COMMON_TEST_SKIPS+=( - -x test_gdb - ) - ;; mips*) COMMON_TEST_SKIPS+=( -x test_ctypes diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.12.11.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.12.11.ebuild index 6de4b2d009..9986c578aa 100644 --- a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.12.11.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.12.11.ebuild @@ -224,6 +224,9 @@ src_configure() { # Set baseline test skip flags. COMMON_TEST_SKIPS=( + # running gdb inside an ebuild as non-root, within sandbox, + # and possibly within a container is unreliable + -x test_gdb # this is actually test_gdb.test_pretty_print -x test_pretty_print ) @@ -247,11 +250,6 @@ src_configure() { -x test_strtod ) ;; - arm*) - COMMON_TEST_SKIPS+=( - -x test_gdb - ) - ;; mips*) COMMON_TEST_SKIPS+=( -x test_ctypes @@ -259,11 +257,6 @@ src_configure() { -x test_statistics ) ;; - powerpc64-*) # big endian - COMMON_TEST_SKIPS+=( - -x test_gdb - ) - ;; riscv*) COMMON_TEST_SKIPS+=( -x test_urllib2 @@ -277,7 +270,6 @@ src_configure() { -x test_multiprocessing_spawn -x test_ctypes - -x test_gdb # bug 931908 -x test_exceptions ) diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.12.11_p1.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.12.11_p1.ebuild index ef7b49a7c8..0627a62b04 100644 --- a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.12.11_p1.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.12.11_p1.ebuild @@ -224,6 +224,9 @@ src_configure() { # Set baseline test skip flags. COMMON_TEST_SKIPS=( + # running gdb inside an ebuild as non-root, within sandbox, + # and possibly within a container is unreliable + -x test_gdb # this is actually test_gdb.test_pretty_print -x test_pretty_print ) @@ -247,11 +250,6 @@ src_configure() { -x test_strtod ) ;; - arm*) - COMMON_TEST_SKIPS+=( - -x test_gdb - ) - ;; mips*) COMMON_TEST_SKIPS+=( -x test_ctypes @@ -259,11 +257,6 @@ src_configure() { -x test_statistics ) ;; - powerpc64-*) # big endian - COMMON_TEST_SKIPS+=( - -x test_gdb - ) - ;; riscv*) COMMON_TEST_SKIPS+=( -x test_urllib2 @@ -277,7 +270,6 @@ src_configure() { -x test_multiprocessing_spawn -x test_ctypes - -x test_gdb # bug 931908 -x test_exceptions ) diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.12.9999.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.12.9999.ebuild index 9de13a1b92..5ac7078919 100644 --- a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.12.9999.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.12.9999.ebuild @@ -213,6 +213,9 @@ src_configure() { # Set baseline test skip flags. COMMON_TEST_SKIPS=( + # running gdb inside an ebuild as non-root, within sandbox, + # and possibly within a container is unreliable + -x test_gdb # this is actually test_gdb.test_pretty_print -x test_pretty_print ) @@ -236,11 +239,6 @@ src_configure() { -x test_strtod ) ;; - arm*) - COMMON_TEST_SKIPS+=( - -x test_gdb - ) - ;; mips*) COMMON_TEST_SKIPS+=( -x test_ctypes @@ -248,11 +246,6 @@ src_configure() { -x test_statistics ) ;; - powerpc64-*) # big endian - COMMON_TEST_SKIPS+=( - -x test_gdb - ) - ;; riscv*) COMMON_TEST_SKIPS+=( -x test_urllib2 @@ -266,7 +259,6 @@ src_configure() { -x test_multiprocessing_spawn -x test_ctypes - -x test_gdb # bug 931908 -x test_exceptions ) diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.13.5.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.13.5.ebuild index 726461c034..3daede2bca 100644 --- a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.13.5.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.13.5.ebuild @@ -258,6 +258,9 @@ src_configure() { # Set baseline test skip flags. COMMON_TEST_SKIPS=( + # running gdb inside an ebuild as non-root, within sandbox, + # and possibly within a container is unreliable + -x test_gdb # this is actually test_gdb.test_pretty_print -x test_pretty_print # https://bugs.gentoo.org/933840 @@ -283,16 +286,6 @@ src_configure() { -x test_strtod ) ;; - arm*) - COMMON_TEST_SKIPS+=( - -x test_gdb - ) - ;; - hppa*) - COMMON_TEST_SKIPS+=( - -x test_gdb - ) - ;; mips*) COMMON_TEST_SKIPS+=( -x test_ctypes @@ -300,11 +293,6 @@ src_configure() { -x test_statistics ) ;; - powerpc64-*) # big endian - COMMON_TEST_SKIPS+=( - -x test_gdb - ) - ;; riscv*) COMMON_TEST_SKIPS+=( -x test_urllib2 @@ -318,7 +306,6 @@ src_configure() { -x test_multiprocessing_spawn -x test_ctypes - -x test_gdb # bug 931908 -x test_exceptions ) diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.13.5_p1.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.13.5_p1.ebuild index c5e2ccea4e..b6cd0106fe 100644 --- a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.13.5_p1.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.13.5_p1.ebuild @@ -32,7 +32,7 @@ S="${WORKDIR}/${MY_P}" LICENSE="PSF-2" SLOT="${PYVER}" -KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86" +KEYWORDS="~alpha amd64 ~arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86" IUSE=" bluetooth debug +ensurepip examples gdbm jit libedit +ncurses pgo +readline +sqlite +ssl test tk valgrind @@ -258,6 +258,9 @@ src_configure() { # Set baseline test skip flags. COMMON_TEST_SKIPS=( + # running gdb inside an ebuild as non-root, within sandbox, + # and possibly within a container is unreliable + -x test_gdb # this is actually test_gdb.test_pretty_print -x test_pretty_print # https://bugs.gentoo.org/933840 @@ -283,16 +286,6 @@ src_configure() { -x test_strtod ) ;; - arm*) - COMMON_TEST_SKIPS+=( - -x test_gdb - ) - ;; - hppa*) - COMMON_TEST_SKIPS+=( - -x test_gdb - ) - ;; mips*) COMMON_TEST_SKIPS+=( -x test_ctypes @@ -300,11 +293,6 @@ src_configure() { -x test_statistics ) ;; - powerpc64-*) # big endian - COMMON_TEST_SKIPS+=( - -x test_gdb - ) - ;; riscv*) COMMON_TEST_SKIPS+=( -x test_urllib2 @@ -318,7 +306,6 @@ src_configure() { -x test_multiprocessing_spawn -x test_ctypes - -x test_gdb # bug 931908 -x test_exceptions ) diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.14.0_rc1_p1.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.13.7.ebuild similarity index 92% rename from sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.14.0_rc1_p1.ebuild rename to sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.13.7.ebuild index 8f99bbfedb..13bdac28ad 100644 --- a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.14.0_rc1_p1.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.13.7.ebuild @@ -3,16 +3,15 @@ EAPI="8" -LLVM_COMPAT=( 19 ) +LLVM_COMPAT=( 18 ) LLVM_OPTIONAL=1 -VERIFY_SIG_METHOD=sigstore WANT_LIBTOOL="none" -inherit autotools check-reqs eapi9-ver flag-o-matic linux-info llvm-r1 +inherit autotools check-reqs flag-o-matic linux-info llvm-r1 inherit multiprocessing pax-utils python-utils-r1 toolchain-funcs inherit verify-sig -MY_PV=${PV/_/} +MY_PV=${PV} MY_P="Python-${MY_PV%_p*}" PYVER=$(ver_cut 1-2) PATCHSET="python-gentoo-patches-${MY_PV}" @@ -26,7 +25,7 @@ SRC_URI=" https://www.python.org/ftp/python/${PV%%_*}/${MY_P}.tar.xz https://dev.gentoo.org/~mgorny/dist/python/${PATCHSET}.tar.xz verify-sig? ( - https://www.python.org/ftp/python/${PV%%_*}/${MY_P}.tar.xz.sigstore + https://www.python.org/ftp/python/${PV%%_*}/${MY_P}.tar.xz.asc ) " S="${WORKDIR}/${MY_P}" @@ -36,7 +35,7 @@ SLOT="${PYVER}" KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" IUSE=" bluetooth debug +ensurepip examples gdbm jit libedit +ncurses pgo - +readline +sqlite +ssl tail-call-interp test tk valgrind + +readline +sqlite +ssl test tk valgrind " REQUIRED_USE="jit? ( ${LLVM_REQUIRED_USE} )" RESTRICT="!test? ( test )" @@ -49,7 +48,7 @@ RESTRICT="!test? ( test )" RDEPEND=" app-arch/bzip2:= app-arch/xz-utils:= - app-arch/zstd:= + app-crypt/libb2 app-misc/mime-types >=dev-libs/expat-2.1:= dev-libs/libffi:= @@ -94,6 +93,7 @@ BDEPEND=" llvm-core/llvm:${LLVM_SLOT} ') ) + verify-sig? ( >=sec-keys/openpgp-keys-python-20221025 ) " if [[ ${PV} != *_alpha* ]]; then RDEPEND+=" @@ -104,14 +104,12 @@ PDEPEND=" ensurepip? ( dev-python/ensurepip-pip ) " -# https://www.python.org/downloads/metadata/sigstore/ -VERIFY_SIG_CERT_IDENTITY=hugo@python.org -VERIFY_SIG_CERT_OIDC_ISSUER=https://github.com/login/oauth +VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/python.org.asc # large file tests involve a 2.5G file being copied (duplicated) CHECKREQS_DISK_BUILD=5500M -QA_PKGCONFIG_VERSION=${PYVER%t} +QA_PKGCONFIG_VERSION=${PYVER} # false positives -- functions specific to *BSD QA_CONFIG_IMPL_DECL_SKIP=( chflags lchflags ) @@ -151,7 +149,7 @@ pkg_setup() { src_unpack() { if use verify-sig; then - verify-sig_verify_detached "${DISTDIR}"/${MY_P}.tar.xz{,.sigstore} + verify-sig_verify_detached "${DISTDIR}"/${MY_P}.tar.xz{,.asc} fi default } @@ -260,6 +258,9 @@ src_configure() { # Set baseline test skip flags. COMMON_TEST_SKIPS=( + # running gdb inside an ebuild as non-root, within sandbox, + # and possibly within a container is unreliable + -x test_gdb # this is actually test_gdb.test_pretty_print -x test_pretty_print # https://bugs.gentoo.org/933840 @@ -285,16 +286,6 @@ src_configure() { -x test_strtod ) ;; - arm*) - COMMON_TEST_SKIPS+=( - -x test_gdb - ) - ;; - hppa*) - COMMON_TEST_SKIPS+=( - -x test_gdb - ) - ;; mips*) COMMON_TEST_SKIPS+=( -x test_ctypes @@ -302,11 +293,6 @@ src_configure() { -x test_statistics ) ;; - powerpc64-*) # big endian - COMMON_TEST_SKIPS+=( - -x test_gdb - ) - ;; riscv*) COMMON_TEST_SKIPS+=( -x test_urllib2 @@ -320,7 +306,6 @@ src_configure() { -x test_multiprocessing_spawn -x test_ctypes - -x test_gdb # bug 931908 -x test_exceptions ) @@ -419,7 +404,6 @@ src_configure() { $(use_enable jit experimental-jit) $(use_enable pgo optimizations) $(use_with readline readline "$(usex libedit editline readline)") - $(use_with tail-call-interp) $(use_with valgrind) ) @@ -630,16 +614,3 @@ src_install() { ln -s "../../../bin/idle${PYVER}" "${scriptdir}/idle" || die fi } - -pkg_postinst() { - if ver_replacing -lt 3.14.0_beta3; then - ewarn "Python 3.14.0b3 has changed its module ABI. The .pyc files" - ewarn "installed previously are no longer valid and will be regenerated" - ewarn "(or ignored) on the next import. This may cause sandbox failures" - ewarn "when installing some packages and checksum mismatches when removing" - ewarn "old versions. To actively prevent this, rebuild all packages" - ewarn "installing Python 3.14 modules, e.g. using:" - ewarn - ewarn " emerge -1v /usr/lib/python3.14/site-packages" - fi -} diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.13.9999.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.13.9999.ebuild index 3a94cf50aa..90faf189a2 100644 --- a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.13.9999.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.13.9999.ebuild @@ -246,6 +246,9 @@ src_configure() { # Set baseline test skip flags. COMMON_TEST_SKIPS=( + # running gdb inside an ebuild as non-root, within sandbox, + # and possibly within a container is unreliable + -x test_gdb # this is actually test_gdb.test_pretty_print -x test_pretty_print # https://bugs.gentoo.org/933840 @@ -271,16 +274,6 @@ src_configure() { -x test_strtod ) ;; - arm*) - COMMON_TEST_SKIPS+=( - -x test_gdb - ) - ;; - hppa*) - COMMON_TEST_SKIPS+=( - -x test_gdb - ) - ;; mips*) COMMON_TEST_SKIPS+=( -x test_ctypes @@ -288,11 +281,6 @@ src_configure() { -x test_statistics ) ;; - powerpc64-*) # big endian - COMMON_TEST_SKIPS+=( - -x test_gdb - ) - ;; riscv*) COMMON_TEST_SKIPS+=( -x test_urllib2 @@ -306,7 +294,6 @@ src_configure() { -x test_multiprocessing_spawn -x test_ctypes - -x test_gdb # bug 931908 -x test_exceptions ) diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.14.0_beta4.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.14.0_beta4.ebuild deleted file mode 100644 index 3a555c7333..0000000000 --- a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.14.0_beta4.ebuild +++ /dev/null @@ -1,645 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI="8" - -LLVM_COMPAT=( 19 ) -LLVM_OPTIONAL=1 -VERIFY_SIG_METHOD=sigstore -WANT_LIBTOOL="none" - -inherit autotools check-reqs eapi9-ver flag-o-matic linux-info llvm-r1 -inherit multiprocessing pax-utils python-utils-r1 toolchain-funcs -inherit verify-sig - -MY_PV=${PV/_beta/b} -MY_P="Python-${MY_PV%_p*}" -PYVER=$(ver_cut 1-2) -PATCHSET="python-gentoo-patches-${MY_PV}" - -DESCRIPTION="An interpreted, interactive, object-oriented programming language" -HOMEPAGE=" - https://www.python.org/ - https://github.com/python/cpython/ -" -SRC_URI=" - https://www.python.org/ftp/python/${PV%%_*}/${MY_P}.tar.xz - https://dev.gentoo.org/~mgorny/dist/python/${PATCHSET}.tar.xz - verify-sig? ( - https://www.python.org/ftp/python/${PV%%_*}/${MY_P}.tar.xz.sigstore - ) -" -S="${WORKDIR}/${MY_P}" - -LICENSE="PSF-2" -SLOT="${PYVER}" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" -IUSE=" - bluetooth debug +ensurepip examples gdbm jit libedit +ncurses pgo - +readline +sqlite +ssl tail-call-interp test tk valgrind -" -REQUIRED_USE="jit? ( ${LLVM_REQUIRED_USE} )" -RESTRICT="!test? ( test )" - -# Do not add a dependency on dev-lang/python to this ebuild. -# If you need to apply a patch which requires python for bootstrapping, please -# run the bootstrap code on your dev box and include the results in the -# patchset. See bug 447752. - -RDEPEND=" - app-arch/bzip2:= - app-arch/xz-utils:= - app-arch/zstd:= - app-misc/mime-types - >=dev-libs/expat-2.1:= - dev-libs/libffi:= - dev-libs/mpdecimal:= - dev-python/gentoo-common - >=sys-libs/zlib-1.1.3:= - virtual/libintl - gdbm? ( sys-libs/gdbm:=[berkdb] ) - kernel_linux? ( sys-apps/util-linux:= ) - ncurses? ( >=sys-libs/ncurses-5.2:= ) - readline? ( - !libedit? ( >=sys-libs/readline-4.1:= ) - libedit? ( dev-libs/libedit:= ) - ) - sqlite? ( >=dev-db/sqlite-3.3.8:3= ) - ssl? ( >=dev-libs/openssl-1.1.1:= ) - tk? ( - >=dev-lang/tcl-8.0:= - >=dev-lang/tk-8.0:= - dev-tcltk/blt:= - dev-tcltk/tix - ) -" -# bluetooth requires headers from bluez -DEPEND=" - ${RDEPEND} - bluetooth? ( net-wireless/bluez ) - test? ( - dev-python/ensurepip-pip - dev-python/ensurepip-setuptools - ) - valgrind? ( dev-debug/valgrind ) -" -# autoconf-archive needed to eautoreconf -BDEPEND=" - dev-build/autoconf-archive - app-alternatives/awk - virtual/pkgconfig - jit? ( - $(llvm_gen_dep ' - llvm-core/clang:${LLVM_SLOT} - llvm-core/llvm:${LLVM_SLOT} - ') - ) -" -if [[ ${PV} != *_alpha* ]]; then - RDEPEND+=" - dev-lang/python-exec[python_targets_python${PYVER/./_}(-)] - " -fi -PDEPEND=" - ensurepip? ( dev-python/ensurepip-pip ) -" - -# https://www.python.org/downloads/metadata/sigstore/ -VERIFY_SIG_CERT_IDENTITY=hugo@python.org -VERIFY_SIG_CERT_OIDC_ISSUER=https://github.com/login/oauth - -# large file tests involve a 2.5G file being copied (duplicated) -CHECKREQS_DISK_BUILD=5500M - -QA_PKGCONFIG_VERSION=${PYVER%t} -# false positives -- functions specific to *BSD -QA_CONFIG_IMPL_DECL_SKIP=( chflags lchflags ) - -declare -rgA PYTHON_KERNEL_CHECKS=( - ["CROSS_MEMORY_ATTACH"]="test_external_inspection" #bug 938589 - ["DNOTIFY"]="test_fcntl" # bug 938662 -) - -pkg_pretend() { - if use pgo || use test; then - check-reqs_pkg_pretend - fi - - if use jit; then - ewarn "USE=jit is considered experimental upstream. Using it" - ewarn "could lead to unexpected breakage, including race conditions" - ewarn "and crashes, respectively. Please do not file Gentoo bugs, unless" - ewarn "you can reproduce the problem with dev-lang/python[-jit]. Instead," - ewarn "please consider reporting JIT problems upstream." - fi -} - -pkg_setup() { - if [[ ${MERGE_TYPE} != binary ]]; then - use jit && llvm-r1_pkg_setup - if use test || use pgo; then - check-reqs_pkg_setup - - local CONFIG_CHECK - for f in "${!PYTHON_KERNEL_CHECKS[@]}"; do - CONFIG_CHECK+="~${f} " - done - linux-info_pkg_setup - fi - fi -} - -src_unpack() { - if use verify-sig; then - verify-sig_verify_detached "${DISTDIR}"/${MY_P}.tar.xz{,.sigstore} - fi - default -} - -src_prepare() { - # Ensure that internal copies of expat and libffi are not used. - # TODO: Makefile has annoying deps on expat headers - #rm -r Modules/expat || die - - local PATCHES=( - "${WORKDIR}/${PATCHSET}" - ) - - default - - # force the correct number of jobs - # https://bugs.gentoo.org/737660 - sed -i -e "s:-j0:-j$(makeopts_jobs):" Makefile.pre.in || die - - # breaks tests when using --with-wheel-pkg-dir - rm -r Lib/test/wheeldata || die - - eautoreconf -} - -build_cbuild_python() { - # Hack to workaround get_libdir not being able to handle CBUILD, bug #794181 - local cbuild_libdir=$(unset PKG_CONFIG_PATH ; $(tc-getBUILD_PKG_CONFIG) --keep-system-libs --libs-only-L libffi) - - # pass system CFLAGS & LDFLAGS as _NODIST, otherwise they'll get - # propagated to sysconfig for built extensions - # - # -fno-lto to avoid bug #700012 (not like it matters for mini-CBUILD Python anyway) - local -x CFLAGS_NODIST="${BUILD_CFLAGS} -fno-lto" - local -x LDFLAGS_NODIST=${BUILD_LDFLAGS} - local -x CFLAGS= LDFLAGS= - local -x BUILD_CFLAGS="${CFLAGS_NODIST}" - local -x BUILD_LDFLAGS=${LDFLAGS_NODIST} - - # We need to build our own Python on CBUILD first, and feed it in. - # bug #847910 - local myeconfargs_cbuild=( - "${myeconfargs[@]}" - - --prefix="${BROOT}"/usr - --libdir="${cbuild_libdir:2}" - - # Avoid needing to load the right libpython.so. - --disable-shared - - # As minimal as possible for the mini CBUILD Python - # we build just for cross to satisfy --with-build-python. - --without-lto - --without-readline - --disable-optimizations - ) - - mkdir "${WORKDIR}"/${P}-${CBUILD} || die - pushd "${WORKDIR}"/${P}-${CBUILD} &> /dev/null || die - - # Avoid as many dependencies as possible for the cross build. - mkdir Modules || die - cat > Modules/Setup.local <<-EOF || die - *disabled* - nis - _dbm _gdbm - _sqlite3 - _hashlib _ssl - _curses _curses_panel - readline - _tkinter - pyexpat - zlib - # We disabled these for CBUILD because Python's setup.py can't handle locating - # libdir correctly for cross. This should be rechecked for the pure Makefile approach, - # and uncommented if needed. - #_ctypes - EOF - - ECONF_SOURCE="${S}" econf_build "${myeconfargs_cbuild[@]}" - - # Unfortunately, we do have to build this immediately, and - # not in src_compile, because CHOST configure for Python - # will check the existence of the --with-build-python value - # immediately. - emake - popd &> /dev/null || die -} - -src_configure() { - # disable automagic bluetooth headers detection - if ! use bluetooth; then - local -x ac_cv_header_bluetooth_bluetooth_h=no - fi - - filter-flags -malign-double - - # Export CXX so it ends up in /usr/lib/python3.X/config/Makefile. - # PKG_CONFIG needed for cross. - tc-export CXX PKG_CONFIG - - local dbmliborder= - if use gdbm; then - dbmliborder+="${dbmliborder:+:}gdbm" - fi - - # Set baseline test skip flags. - COMMON_TEST_SKIPS=( - # this is actually test_gdb.test_pretty_print - -x test_pretty_print - # https://bugs.gentoo.org/933840 - -x test_perf_profiler - ) - - # Arch-specific skips. See #931888 for a collection of these. - case ${CHOST} in - alpha*) - COMMON_TEST_SKIPS+=( - -x test_builtin - -x test_capi - -x test_cmath - -x test_float - # timeout - -x test_free_threading - -x test_math - -x test_numeric_tower - -x test_random - -x test_statistics - # bug 653850 - -x test_resource - -x test_strtod - ) - ;; - arm*) - COMMON_TEST_SKIPS+=( - -x test_gdb - ) - ;; - hppa*) - COMMON_TEST_SKIPS+=( - -x test_gdb - ) - ;; - mips*) - COMMON_TEST_SKIPS+=( - -x test_ctypes - -x test_external_inspection - -x test_statistics - ) - ;; - powerpc64-*) # big endian - COMMON_TEST_SKIPS+=( - -x test_gdb - ) - ;; - riscv*) - COMMON_TEST_SKIPS+=( - -x test_urllib2 - ) - ;; - sparc*) - COMMON_TEST_SKIPS+=( - # bug 788022 - -x test_multiprocessing_fork - -x test_multiprocessing_forkserver - -x test_multiprocessing_spawn - - -x test_ctypes - -x test_gdb - # bug 931908 - -x test_exceptions - ) - ;; - esac - - # Kernel-config specific skips - for option in "${!PYTHON_KERNEL_CHECKS[@]}"; do - if ! linux_config_exists || ! linux_chkconfig_present "${option}" - then - COMMON_TEST_SKIPS+=( -x "${PYTHON_KERNEL_CHECKS[${option}]}" ) - fi - done - - # musl-specific skips - use elibc_musl && COMMON_TEST_SKIPS+=( - # various musl locale deficiencies - -x test__locale - -x test_c_locale_coercion - -x test_locale - -x test_re - - # known issues with find_library on musl - # https://bugs.python.org/issue21622 - -x test_ctypes - - # fpathconf, ttyname errno values - -x test_os - ) - - if use pgo; then - local profile_task_flags=( - -m test - "-j$(makeopts_jobs)" - --pgo-extended - --verbose3 - -u-network - - # We use a timeout because of how often we've had hang issues - # here. It also matches the default upstream PROFILE_TASK. - --timeout 1200 - - "${COMMON_TEST_SKIPS[@]}" - - -x test_dtrace - - # All of these seem to occasionally hang for PGO inconsistently - # They'll even hang here but be fine in src_test sometimes. - # bug #828535 (and related: bug #788022) - -x test_asyncio - -x test_httpservers - -x test_logging - -x test_multiprocessing_fork - -x test_socket - -x test_xmlrpc - - # Hangs (actually runs indefinitely executing itself w/ many cpython builds) - # bug #900429 - -x test_tools - ) - - if has_version "app-arch/rpm" ; then - # Avoid sandbox failure (attempts to write to /var/lib/rpm) - profile_task_flags+=( - -x test_distutils - ) - fi - # PGO sometimes fails randomly - local -x PROFILE_TASK="${profile_task_flags[*]} || true" - fi - - local myeconfargs=( - # glibc-2.30 removes it; since we can't cleanly force-rebuild - # Python on glibc upgrade, remove it proactively to give - # a chance for users rebuilding python before glibc - ac_cv_header_stropts_h=no - - --enable-shared - --without-static-libpython - --enable-ipv6 - --infodir='${prefix}/share/info' - --mandir='${prefix}/share/man' - --with-dbmliborder="${dbmliborder}" - --with-libc= - --enable-loadable-sqlite-extensions - --without-ensurepip - --without-lto - --with-system-expat - --with-system-libmpdec - --with-platlibdir=lib - --with-pkg-config=yes - --with-wheel-pkg-dir="${EPREFIX}"/usr/lib/python/ensurepip - --enable-gil - - $(use_with debug assertions) - $(use_enable jit experimental-jit) - $(use_enable pgo optimizations) - $(use_with readline readline "$(usex libedit editline readline)") - $(use_with tail-call-interp) - $(use_with valgrind) - ) - - if tc-is-lto; then - myeconfargs+=( - --with-lto - ) - fi - - # Force-disable modules we don't want built. - # See Modules/Setup for docs on how this works. Setup.local contains our local deviations. - cat > Modules/Setup.local <<-EOF || die - *disabled* - nis - $(usev !gdbm '_gdbm _dbm') - $(usev !sqlite '_sqlite3') - $(usev !ssl '_hashlib _ssl') - $(usev !ncurses '_curses _curses_panel') - $(usev !readline 'readline') - $(usev !tk '_tkinter') - EOF - - # disable implicit optimization/debugging flags - local -x OPT= - - if tc-is-cross-compiler ; then - build_cbuild_python - myeconfargs+=( - # Point the imminent CHOST build to the Python we just - # built for CBUILD. - --with-build-python="${WORKDIR}"/${P}-${CBUILD}/python - ) - fi - - # pass system CFLAGS & LDFLAGS as _NODIST, otherwise they'll get - # propagated to sysconfig for built extensions - local -x CFLAGS_NODIST=${CFLAGS} - local -x LDFLAGS_NODIST=${LDFLAGS} - local -x CFLAGS= LDFLAGS= - - # Fix implicit declarations on cross and prefix builds. Bug #674070. - if use ncurses; then - append-cppflags -I"${ESYSROOT}"/usr/include/ncursesw - fi - - econf "${myeconfargs[@]}" - - if grep -q "#define POSIX_SEMAPHORES_NOT_ENABLED 1" pyconfig.h; then - eerror "configure has detected that the sem_open function is broken." - eerror "Please ensure that /dev/shm is mounted as a tmpfs with mode 1777." - die "Broken sem_open function (bug 496328)" - fi - - # install epython.py as part of stdlib - echo "EPYTHON='python${PYVER}'" > Lib/epython.py || die -} - -src_compile() { - # Ensure sed works as expected - # https://bugs.gentoo.org/594768 - local -x LC_ALL=C - export PYTHONSTRICTEXTENSIONBUILD=1 - - # Save PYTHONDONTWRITEBYTECODE so that 'has_version' doesn't - # end up writing bytecode & violating sandbox. - # bug #831897 - local -x _PYTHONDONTWRITEBYTECODE=${PYTHONDONTWRITEBYTECODE} - - # Gentoo hack to disable accessing system site-packages - export GENTOO_CPYTHON_BUILD=1 - - if use pgo ; then - # bug 660358 - local -x COLUMNS=80 - local -x PYTHONDONTWRITEBYTECODE= - local -x TMPDIR=/var/tmp - fi - - # also need to clear the flags explicitly here or they end up - # in _sysconfigdata* - emake CPPFLAGS= CFLAGS= LDFLAGS= - - # Restore saved value from above. - local -x PYTHONDONTWRITEBYTECODE=${_PYTHONDONTWRITEBYTECODE} - - # Work around bug 329499. See also bug 413751 and 457194. - if has_version dev-libs/libffi[pax-kernel]; then - pax-mark E python - else - pax-mark m python - fi -} - -src_test() { - # Tests will not work when cross compiling. - if tc-is-cross-compiler; then - elog "Disabling tests due to crosscompiling." - return - fi - - # this just happens to skip test_support.test_freeze that is broken - # without bundled expat - # TODO: get a proper skip for it upstream - local -x LOGNAME=buildbot - - local test_opts=( - --verbose3 - -u-network - -j "$(makeopts_jobs)" - "${COMMON_TEST_SKIPS[@]}" - ) - - # bug 660358 - local -x COLUMNS=80 - local -x PYTHONDONTWRITEBYTECODE= - local -x TMPDIR=/var/tmp - - nonfatal emake -Onone test EXTRATESTOPTS="${test_opts[*]}" \ - CPPFLAGS= CFLAGS= LDFLAGS= < /dev/tty - local ret=${?} - - [[ ${ret} -eq 0 ]] || die "emake test failed" -} - -src_install() { - local libdir=${ED}/usr/lib/python${PYVER} - - # -j1 hack for now for bug #843458 - emake -j1 DESTDIR="${D}" TEST_MODULES=no altinstall - - # Fix collisions between different slots of Python. - rm "${ED}/usr/$(get_libdir)/libpython3.so" || die - - # Cheap hack to get version with ABIFLAGS - local abiver=$(cd "${ED}/usr/include"; echo python*) - if [[ ${abiver} != python${PYVER} ]]; then - # Replace python3.X with a symlink to python3.Xm - rm "${ED}/usr/bin/python${PYVER}" || die - dosym "${abiver}" "/usr/bin/python${PYVER}" - # Create python3.X-config symlink - dosym "${abiver}-config" "/usr/bin/python${PYVER}-config" - # Create python-3.5m.pc symlink - dosym "python-${PYVER}.pc" "/usr/$(get_libdir)/pkgconfig/${abiver/${PYVER}/-${PYVER}}.pc" - fi - - # python seems to get rebuilt in src_install (bug 569908) - # Work around it for now. - if has_version dev-libs/libffi[pax-kernel]; then - pax-mark E "${ED}/usr/bin/${abiver}" - else - pax-mark m "${ED}/usr/bin/${abiver}" - fi - - rm -r "${libdir}"/ensurepip/_bundled || die - if ! use sqlite; then - rm -r "${libdir}/"sqlite3 || die - fi - if ! use tk; then - rm -r "${ED}/usr/bin/idle${PYVER}" || die - rm -r "${libdir}/"{idlelib,tkinter} || die - fi - - ln -s ../python/EXTERNALLY-MANAGED "${libdir}/EXTERNALLY-MANAGED" || die - - dodoc Misc/{ACKS,HISTORY,NEWS} - - if use examples; then - docinto examples - find Tools -name __pycache__ -exec rm -fr {} + || die - dodoc -r Tools - fi - insinto /usr/share/gdb/auto-load/usr/$(get_libdir) #443510 - local libname=$( - printf 'e:\n\t@echo $(INSTSONAME)\ninclude Makefile\n' | - emake --no-print-directory -s -f - 2>/dev/null - ) - newins Tools/gdb/libpython.py "${libname}"-gdb.py - - newconfd "${FILESDIR}/pydoc.conf" pydoc-${PYVER} - newinitd "${FILESDIR}/pydoc.init" pydoc-${PYVER} - sed \ - -e "s:@PYDOC_PORT_VARIABLE@:PYDOC${PYVER/./_}_PORT:" \ - -e "s:@PYDOC@:pydoc${PYVER}:" \ - -i "${ED}/etc/conf.d/pydoc-${PYVER}" \ - "${ED}/etc/init.d/pydoc-${PYVER}" || die "sed failed" - - # python-exec wrapping support - local pymajor=${PYVER%.*} - local EPYTHON=python${PYVER} - local scriptdir=${D}$(python_get_scriptdir) - mkdir -p "${scriptdir}" || die - # python and pythonX - ln -s "../../../bin/${abiver}" "${scriptdir}/python${pymajor}" || die - ln -s "python${pymajor}" "${scriptdir}/python" || die - # python-config and pythonX-config - # note: we need to create a wrapper rather than symlinking it due - # to some random dirname(argv[0]) magic performed by python-config - cat > "${scriptdir}/python${pymajor}-config" <<-EOF || die - #!/bin/sh - exec "${abiver}-config" "\${@}" - EOF - chmod +x "${scriptdir}/python${pymajor}-config" || die - ln -s "python${pymajor}-config" "${scriptdir}/python-config" || die - # pydoc - ln -s "../../../bin/pydoc${PYVER}" "${scriptdir}/pydoc" || die - # idle - if use tk; then - ln -s "../../../bin/idle${PYVER}" "${scriptdir}/idle" || die - fi -} - -pkg_postinst() { - if ver_replacing -lt 3.14.0_beta3; then - ewarn "Python 3.14.0b3 has changed its module ABI. The .pyc files" - ewarn "installed previously are no longer valid and will be regenerated" - ewarn "(or ignored) on the next import. This may cause sandbox failures" - ewarn "when installing some packages and checksum mismatches when removing" - ewarn "old versions. To actively prevent this, rebuild all packages" - ewarn "installing Python 3.14 modules, e.g. using:" - ewarn - ewarn " emerge -1v /usr/lib/python3.14/site-packages" - fi -} diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.14.0_rc1.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.14.0_rc2.ebuild similarity index 98% rename from sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.14.0_rc1.ebuild rename to sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.14.0_rc2.ebuild index 8f99bbfedb..fefea21804 100644 --- a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.14.0_rc1.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.14.0_rc2.ebuild @@ -260,6 +260,9 @@ src_configure() { # Set baseline test skip flags. COMMON_TEST_SKIPS=( + # running gdb inside an ebuild as non-root, within sandbox, + # and possibly within a container is unreliable + -x test_gdb # this is actually test_gdb.test_pretty_print -x test_pretty_print # https://bugs.gentoo.org/933840 @@ -285,16 +288,6 @@ src_configure() { -x test_strtod ) ;; - arm*) - COMMON_TEST_SKIPS+=( - -x test_gdb - ) - ;; - hppa*) - COMMON_TEST_SKIPS+=( - -x test_gdb - ) - ;; mips*) COMMON_TEST_SKIPS+=( -x test_ctypes @@ -302,11 +295,6 @@ src_configure() { -x test_statistics ) ;; - powerpc64-*) # big endian - COMMON_TEST_SKIPS+=( - -x test_gdb - ) - ;; riscv*) COMMON_TEST_SKIPS+=( -x test_urllib2 @@ -320,7 +308,6 @@ src_configure() { -x test_multiprocessing_spawn -x test_ctypes - -x test_gdb # bug 931908 -x test_exceptions ) diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.14.9999.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.14.9999.ebuild index bce16a6df9..6b946baf90 100644 --- a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.14.9999.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.14.9999.ebuild @@ -246,6 +246,9 @@ src_configure() { # Set baseline test skip flags. COMMON_TEST_SKIPS=( + # running gdb inside an ebuild as non-root, within sandbox, + # and possibly within a container is unreliable + -x test_gdb # this is actually test_gdb.test_pretty_print -x test_pretty_print # https://bugs.gentoo.org/933840 @@ -271,16 +274,6 @@ src_configure() { -x test_strtod ) ;; - arm*) - COMMON_TEST_SKIPS+=( - -x test_gdb - ) - ;; - hppa*) - COMMON_TEST_SKIPS+=( - -x test_gdb - ) - ;; mips*) COMMON_TEST_SKIPS+=( -x test_ctypes @@ -288,11 +281,6 @@ src_configure() { -x test_statistics ) ;; - powerpc64-*) # big endian - COMMON_TEST_SKIPS+=( - -x test_gdb - ) - ;; riscv*) COMMON_TEST_SKIPS+=( -x test_urllib2 @@ -306,7 +294,6 @@ src_configure() { -x test_multiprocessing_spawn -x test_ctypes - -x test_gdb # bug 931908 -x test_exceptions ) diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.15.9999.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.15.9999.ebuild index 054fcbcab7..f85907c04d 100644 --- a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.15.9999.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.15.9999.ebuild @@ -241,6 +241,9 @@ src_configure() { # Set baseline test skip flags. COMMON_TEST_SKIPS=( + # running gdb inside an ebuild as non-root, within sandbox, + # and possibly within a container is unreliable + -x test_gdb # this is actually test_gdb.test_pretty_print -x test_pretty_print # https://bugs.gentoo.org/933840 @@ -266,16 +269,6 @@ src_configure() { -x test_strtod ) ;; - arm*) - COMMON_TEST_SKIPS+=( - -x test_gdb - ) - ;; - hppa*) - COMMON_TEST_SKIPS+=( - -x test_gdb - ) - ;; mips*) COMMON_TEST_SKIPS+=( -x test_ctypes @@ -283,11 +276,6 @@ src_configure() { -x test_statistics ) ;; - powerpc64-*) # big endian - COMMON_TEST_SKIPS+=( - -x test_gdb - ) - ;; riscv*) COMMON_TEST_SKIPS+=( -x test_urllib2 @@ -301,7 +289,6 @@ src_configure() { -x test_multiprocessing_spawn -x test_ctypes - -x test_gdb # bug 931908 -x test_exceptions ) diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.8.20_p7-r1.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.8.20_p7-r1.ebuild index 4555932e5c..b74ae04ae8 100644 --- a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.8.20_p7-r1.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.8.20_p7-r1.ebuild @@ -158,6 +158,8 @@ src_configure() { # Set baseline test skip flags. COMMON_TEST_SKIPS=( + # running gdb inside an ebuild as non-root, within sandbox, + # and possibly within a container is unreliable -x test_gdb ) diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.9.23-r1.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.9.23-r1.ebuild index 4c74c77648..2d7101334f 100644 --- a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.9.23-r1.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.9.23-r1.ebuild @@ -167,6 +167,8 @@ src_configure() { # Set baseline test skip flags. COMMON_TEST_SKIPS=( + # running gdb inside an ebuild as non-root, within sandbox, + # and possibly within a container is unreliable -x test_gdb ) diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.9.23_p2.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.9.23_p2.ebuild index c95e9ccf7b..d1493c0eaf 100644 --- a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.9.23_p2.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.9.23_p2.ebuild @@ -167,6 +167,8 @@ src_configure() { # Set baseline test skip flags. COMMON_TEST_SKIPS=( + # running gdb inside an ebuild as non-root, within sandbox, + # and possibly within a container is unreliable -x test_gdb ) diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.9.9999.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.9.9999.ebuild index 1f0cd19c1e..39973c9fe4 100644 --- a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.9.9999.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.9.9999.ebuild @@ -156,6 +156,8 @@ src_configure() { # Set baseline test skip flags. COMMON_TEST_SKIPS=( + # running gdb inside an ebuild as non-root, within sandbox, + # and possibly within a container is unreliable -x test_gdb ) @@ -185,11 +187,6 @@ src_configure() { -x test_statistics ) ;; - powerpc64-*) # big endian - COMMON_TEST_SKIPS+=( - -x test_descr - ) - ;; riscv*) COMMON_TEST_SKIPS+=( -x test_urllib2