From 67dbd3ba144944fbf4b466be1b5fa0569b774e6f Mon Sep 17 00:00:00 2001
From: V3n3RiX <venerix@koprulu.sector>
Date: Tue, 25 Feb 2025 19:25:33 +0000
Subject: gentoo auto-resync : 25:02:2025 - 19:25:33

---
 dev-lang/Manifest.gz                        | Bin 22670 -> 22663 bytes
 dev-lang/pcc/Manifest                       |   2 +
 dev-lang/pcc/files/pcc-1.1.0-C23.patch      | 293 ++++++++++++++++++++++++++++
 dev-lang/pcc/pcc-1.1.0-r2.ebuild            |  39 ++++
 dev-lang/python/Manifest                    |   2 +-
 dev-lang/python/python-2.7.18_p16-r2.ebuild |  22 +--
 6 files changed, 344 insertions(+), 14 deletions(-)
 create mode 100644 dev-lang/pcc/files/pcc-1.1.0-C23.patch
 create mode 100644 dev-lang/pcc/pcc-1.1.0-r2.ebuild

(limited to 'dev-lang')

diff --git a/dev-lang/Manifest.gz b/dev-lang/Manifest.gz
index a49a8db14797..6606599b1295 100644
Binary files a/dev-lang/Manifest.gz and b/dev-lang/Manifest.gz differ
diff --git a/dev-lang/pcc/Manifest b/dev-lang/pcc/Manifest
index ee188bf0cf82..eddd2bc2583e 100644
--- a/dev-lang/pcc/Manifest
+++ b/dev-lang/pcc/Manifest
@@ -1,4 +1,6 @@
+AUX pcc-1.1.0-C23.patch 5875 BLAKE2B 13baf8ac90cde3f949890ae44568fac1a7f2b3fa30ffe21bf444fd2e6d9a06e669de93953cc51cd487516a41fca4dea6c3e43241ee99e6532687169ea3deff0e SHA512 d955cebd3a57a85334344cbbe81e329cce66fb2e7b8bda6709a71d1ad69760b1df808a82a517416f761f69a0b5da41cc729188da360fbce260a755d0ebf4b47c
 AUX pcc-1.1.0-multiarch.patch 305 BLAKE2B c3162dab579e1b2b268b7de55e5a2dbc70723b41635cfb8543483e1ccc1f3bdf3a9e0d9ba1d7afb036dcaabf4f44c372cbaafb7081404ebed65b726c3b3b1da6 SHA512 5ade01d09929a05fe6dfccf573f3b0742f61bd135f37ebacf2834c44b8bdbbafbb69f0ea1ebf467da4811f756ecd4a7f6753c362d2667c12888d211ae47737f1
 DIST pcc-1.1.0.tgz 848427 BLAKE2B f94dd3eb3f96145e3fd2d5d89ca5a3a12c55614924c1bd2ccc219b03b4804bb34904b7041efb6237e06982b3282578d996510ffc9adc916e212f6f7d1bcb5a35 SHA512 5bd2b59fbb323016d215023ce77793ae66766e8e8192b44bf0707ee444658022e1645669c13eea8c81bc55c161eea3b0271d6b3098b8a7d51ce67eb86c7527b4
 EBUILD pcc-1.1.0-r1.ebuild 644 BLAKE2B 705887fc5d54daf96f655b0df9ca560412574e6507d3a43f00d136bbf2be7de0135e1252ff938ea041d09b5cc9c297ccae222f529106e0ecc46b51a4be52c75d SHA512 367db32a2dbc84746fa930e55299e393aa9701e269d3e3d149e2dd85329e72bc8a3b2117af4261f8a78fcb7361977deb76a7e3c77bbd15f5881756dc32b276e8
+EBUILD pcc-1.1.0-r2.ebuild 665 BLAKE2B 181e6ab807bb9b0385c8137c6e6c1bdbf23d4ccf27d606f9c56612971d9f6d3baa48a82445f8bb68eca9721830667a0d98f8d9f2d4cea125999a9c1c5970de18 SHA512 e005ef63874c92feb742db7471512cd8860c19564ad37dc79079a6276e99fdcc09cc340824ebce094ca463359b8a29bcac7d56e7a46810bf0eaadea144bcacd0
 MISC metadata.xml 248 BLAKE2B 2ac829e1663815f752e218e9ee474448a3d973c075939d578699f57790581498adfe9bad180a79fcc6ea0afc339f57d25cbcc0fdd430f82d192c23c03d15e465 SHA512 55c2e2e06f91e13fd73b9545c51d4169a47f040ead41eb1368479940b026def820de67137312b64a6203f80b57a421c8895ed690386a79086fa0ba6c3557aa47
diff --git a/dev-lang/pcc/files/pcc-1.1.0-C23.patch b/dev-lang/pcc/files/pcc-1.1.0-C23.patch
new file mode 100644
index 000000000000..2c02b58d1037
--- /dev/null
+++ b/dev-lang/pcc/files/pcc-1.1.0-C23.patch
@@ -0,0 +1,293 @@
+Change reserved names to True/False (not actually booleans at all)
+Add includes for libbsd functions
+And enable system extensions, to counteract disabling them and then using them
+https://bugs.gentoo.org/871267
+https://bugs.gentoo.org/932230
+https://bugs.gentoo.org/944894
+--- a/configure.ac
++++ b/configure.ac
+@@ -3,8 +3,9 @@
+ 
+ AC_PREREQ(2.59)
+ AC_INIT([pcc], [1.1.0], [pcc@lists.ludd.ltu.se])
+ AC_CONFIG_HEADER([config.h])
++AC_USE_SYSTEM_EXTENSIONS
+ 
+ AC_CANONICAL_TARGET
+ 
+ abi=unknown
+--- a/cc/ccom/pass1.h
++++ b/cc/ccom/pass1.h
+@@ -37,8 +37,9 @@
+ 
+ #include <sys/types.h>
+ #include <stdarg.h>
+ #include <string.h>
++#include <bsd/string.h>
+ #ifdef HAVE_STDINT_H
+ #include <stdint.h>
+ #endif
+ 
+--- a/cc/ccom/trees.c
++++ b/cc/ccom/trees.c
+@@ -2080,9 +2080,9 @@
+ /*
+  * Write out logical expressions as branches.
+  */
+ static void
+-andorbr(NODE *p, int true, int false)
++andorbr(NODE *p, int True, int False)
+ {
+ 	NODE *q;
+ 	int o, lab;
+ 
+@@ -2123,19 +2123,19 @@
+ 	case LE:
+ 	case LT:
+ 	case GE:
+ 	case GT:
+-calc:		if (true < 0) {
++calc:		if (True < 0) {
+ 			p->n_op = negrel[p->n_op - EQ];
+-			true = false;
+-			false = -1;
++			True = False;
++			False = -1;
+ 		}
+ 
+ 		rmcops(p->n_left);
+ 		rmcops(p->n_right);
+-		fixbranch(p, true);
+-		if (false >= 0)
+-			branch(false);
++		fixbranch(p, True);
++		if (False >= 0)
++			branch(False);
+ 		break;
+ 
+ 	case ULE:
+ 	case UGT:
+@@ -2147,57 +2147,57 @@
+ 	case UGE:
+ 	case ULT:
+ 		/* Already true/false by definition */
+ 		if (nncon(p->n_right) && p->n_right->n_lval == 0) {
+-			if (true < 0) {
++			if (True < 0) {
+ 				o = o == ULT ? UGE : ULT;
+-				true = false;
++				True = False;
+ 			}
+ 			rmcops(p->n_left);
+ 			ecode(p->n_left);
+ 			rmcops(p->n_right);
+ 			ecode(p->n_right);
+ 			nfree(p);
+ 			if (o == UGE) /* true */
+-				branch(true);
++				branch(True);
+ 			break;
+ 		}
+ 		goto calc;
+ 
+ 	case ANDAND:
+-		lab = false<0 ? getlab() : false ;
++		lab = False<0 ? getlab() : False ;
+ 		andorbr(p->n_left, -1, lab);
+ 		comops(p->n_right);
+-		andorbr(p->n_right, true, false);
+-		if (false < 0)
++		andorbr(p->n_right, True, False);
++		if (False < 0)
+ 			plabel( lab);
+ 		nfree(p);
+ 		break;
+ 
+ 	case OROR:
+-		lab = true<0 ? getlab() : true;
++		lab = True<0 ? getlab() : True;
+ 		andorbr(p->n_left, lab, -1);
+ 		comops(p->n_right);
+-		andorbr(p->n_right, true, false);
+-		if (true < 0)
++		andorbr(p->n_right, True, False);
++		if (True < 0)
+ 			plabel( lab);
+ 		nfree(p);
+ 		break;
+ 
+ 	case NOT:
+-		andorbr(p->n_left, false, true);
++		andorbr(p->n_left, False, True);
+ 		nfree(p);
+ 		break;
+ 
+ 	default:
+ 		rmcops(p);
+-		if (true >= 0)
+-			fixbranch(p, true);
+-		if (false >= 0) {
+-			if (true >= 0)
+-				branch(false);
++		if (True >= 0)
++			fixbranch(p, True);
++		if (False >= 0) {
++			if (True >= 0)
++				branch(False);
+ 			else
+-				fixbranch(buildtree(EQ, p, bcon(0)), false);
++				fixbranch(buildtree(EQ, p, bcon(0)), False);
+ 		}
+ 	}
+ }
+ 
+--- a/cc/cxxcom/trees.c
++++ b/cc/cxxcom/trees.c
+@@ -2021,9 +2021,9 @@
+ /*
+  * Write out logical expressions as branches.
+  */
+ static void
+-andorbr(NODE *p, int true, int false)
++andorbr(NODE *p, int True, int False)
+ {
+ 	NODE *q;
+ 	int o, lab;
+ 
+@@ -2064,19 +2064,19 @@
+ 	case LE:
+ 	case LT:
+ 	case GE:
+ 	case GT:
+-calc:		if (true < 0) {
++calc:		if (True < 0) {
+ 			p->n_op = negrel[p->n_op - EQ];
+-			true = false;
+-			false = -1;
++			True = False;
++			False = -1;
+ 		}
+ 
+ 		rmcops(p->n_left);
+ 		rmcops(p->n_right);
+-		fixbranch(p, true);
+-		if (false >= 0)
+-			branch(false);
++		fixbranch(p, True);
++		if (False >= 0)
++			branch(False);
+ 		break;
+ 
+ 	case ULE:
+ 	case UGT:
+@@ -2088,57 +2088,57 @@
+ 	case UGE:
+ 	case ULT:
+ 		/* Already true/false by definition */
+ 		if (nncon(p->n_right) && p->n_right->n_lval == 0) {
+-			if (true < 0) {
++			if (True < 0) {
+ 				o = o == ULT ? UGE : ULT;
+-				true = false;
++				True = False;
+ 			}
+ 			rmcops(p->n_left);
+ 			ecode(p->n_left);
+ 			rmcops(p->n_right);
+ 			ecode(p->n_right);
+ 			nfree(p);
+-			if (o == UGE) /* true */
+-				branch(true);
++			if (o == UGE) /* True */
++				branch(True);
+ 			break;
+ 		}
+ 		goto calc;
+ 
+ 	case ANDAND:
+-		lab = false<0 ? getlab() : false ;
++		lab = False<0 ? getlab() : False ;
+ 		andorbr(p->n_left, -1, lab);
+ 		comops(p->n_right);
+-		andorbr(p->n_right, true, false);
+-		if (false < 0)
++		andorbr(p->n_right, True, False);
++		if (False < 0)
+ 			plabel( lab);
+ 		nfree(p);
+ 		break;
+ 
+ 	case OROR:
+-		lab = true<0 ? getlab() : true;
++		lab = True<0 ? getlab() : True;
+ 		andorbr(p->n_left, lab, -1);
+ 		comops(p->n_right);
+-		andorbr(p->n_right, true, false);
+-		if (true < 0)
++		andorbr(p->n_right, True, False);
++		if (True < 0)
+ 			plabel( lab);
+ 		nfree(p);
+ 		break;
+ 
+ 	case NOT:
+-		andorbr(p->n_left, false, true);
++		andorbr(p->n_left, False, True);
+ 		nfree(p);
+ 		break;
+ 
+ 	default:
+ 		rmcops(p);
+-		if (true >= 0)
+-			fixbranch(p, true);
+-		if (false >= 0) {
+-			if (true >= 0)
+-				branch(false);
++		if (True >= 0)
++			fixbranch(p, True);
++		if (False >= 0) {
++			if (True >= 0)
++				branch(False);
+ 			else
+-				fixbranch(buildtree(EQ, p, bcon(0)), false);
++				fixbranch(buildtree(EQ, p, bcon(0)), False);
+ 		}
+ 	}
+ }
+ 
+--- a/mip/reader.c
++++ b/mip/reader.c
+@@ -65,8 +65,9 @@
+ 
+ # include "pass2.h"
+ 
+ #include <string.h>
++#include <bsd/string.h>
+ #include <stdarg.h>
+ #include <stdlib.h>
+ 
+ /*	some storage declarations */
+--- a/mip/match.c
++++ b/mip/match.c
+@@ -59,8 +59,9 @@
+  * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 
+  * POSSIBILITY OF SUCH DAMAGE.
+  */
+ 
++#include "config.h"
+ #include "pass2.h"
+ 
+ #ifdef HAVE_STRINGS_H
+ #include <strings.h>
+--- a/mip/regs.c
++++ b/mip/regs.c
+@@ -25,8 +25,9 @@
+  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
+  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+  */
+ 
++#include "config.h"
+ #include "pass2.h"
+ #include <string.h>
+ #ifdef HAVE_STRINGS_H
+ #include <strings.h>
diff --git a/dev-lang/pcc/pcc-1.1.0-r2.ebuild b/dev-lang/pcc/pcc-1.1.0-r2.ebuild
new file mode 100644
index 000000000000..1faaeefa3648
--- /dev/null
+++ b/dev-lang/pcc/pcc-1.1.0-r2.ebuild
@@ -0,0 +1,39 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools flag-o-matic
+
+DESCRIPTION="pcc portable c compiler"
+HOMEPAGE="http://pcc.ludd.ltu.se"
+
+SRC_URI="ftp://pcc.ludd.ltu.se/pub/pcc-releases/${P}.tgz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+DEPEND=">=dev-libs/pcc-libs-${PV}
+	dev-libs/libbsd"
+RDEPEND="${DEPEND}"
+
+PATCHES=(
+	"${FILESDIR}/${P}-multiarch.patch"
+	"${FILESDIR}/${P}-C23.patch"
+)
+
+src_prepare() {
+	default
+
+	eautoreconf
+}
+
+src_configure() {
+	append-cflags -fcommon
+	econf --disable-stripping
+}
+
+src_test() {
+	cc/cc/pcc --version || die # basic test that compiler runs
+}
diff --git a/dev-lang/python/Manifest b/dev-lang/python/Manifest
index 65aca06681fa..909905871a5e 100644
--- a/dev-lang/python/Manifest
+++ b/dev-lang/python/Manifest
@@ -46,7 +46,7 @@ DIST python-gentoo-patches-3.14.0a5.tar.xz 5668 BLAKE2B b12801ac5bfa50cb6e3bf4b7
 DIST python-gentoo-patches-3.8.20_p6.tar.xz 50876 BLAKE2B df0df21c75972fb73e36f66f0c90d3f953b14d7a59bf97ce4214dce6e6d937ed52fbf3db8f3eaf42cde141bfe4d7a731b06e41723285517461c790912706be9e SHA512 48ef567f6972e7975cb61d34a876d8c0db42f1a3c0b832f9366091dd5f2ca854c02887808843d314816c8cf6d7b0738c40e7835fedbba7b84e57f2515dde45e2
 DIST python-gentoo-patches-3.9.20_p2.tar.xz 36140 BLAKE2B af0a9e08f3bfd8eb631760d100ec8f54db968a6bd201820192c4ea63ec88e0f83ffe77c709fcf4da43ad8d44eeb239ca1984561c3e7846e3fe4edd757d2321a4 SHA512 d451b41401de631eed996c34f40f2146d4d2f11bfa04fffa762c9b654e690d0ef95be0f51224a964a7c33784bb9b21e58434f6fee17cf39c20b5af34200569d5
 DIST python-gentoo-patches-3.9.21_p1.tar.xz 35404 BLAKE2B 7b5ac27e814b06791fa5f0566763711c1b65a7c82ba66f97e237eebc6076f0bfdad3d8269ece6c4d4c238b62cc75b01f68ea3a5d7c4fffc46e88f79b2ba3e7fc SHA512 92c8548b31100a921378c72cc94a81062c96fd795fa2cd001c57a71e4af39e91b21b99e9e84db12adb142d9c4bda809445519c5c8a35545bd10230926bd7eded
-EBUILD python-2.7.18_p16-r2.ebuild 8597 BLAKE2B c472b0b3c49d4f848d910ac9d1d5fcffdbdf3f6f1454a4471807a1bc5129d7d6ff86c1af4515dec79056f3b079d1a0ea81e1693cfd49af2c2338462bb1f04cff SHA512 a7b48dff6e121915589a3ad746da6f52d29bef98d0d0a02578a5cc31cf9adcb1c32c82747cb768f355671e64825f75a8593d8424b7da36c09e8523a142b1ce1f
+EBUILD python-2.7.18_p16-r2.ebuild 8505 BLAKE2B feb4cf270dd478f2f7f16f969c9c8a28cf8121f3cc32f11407622afe0a1db79247d045cb6324b9b5f4939a6028164c655116fff98e2378eea7e23fe0b8ce1dda SHA512 cc3d964e6fd8577de2176cbf5832d8587e090158317e52fc42615b7494861b0a955983e0f8153401b6af44b1ba227cac87ae901cda524358518d2778fcd162f2
 EBUILD python-3.10.16_p1.ebuild 15531 BLAKE2B cec70438eef3917846e6d26035f33bf2a0e90515a916c4283c286744deaea86f26b33e0fe96f9fba34552bd5917750abac8ec9726cb12937140291cfab689c9f SHA512 edf67f6b68442b860d209a2216b5c72151c242972329bd62463ef9e29d172f64a7bd4d8eb708f8b6830eaaed35336ddda5343c1f30dc3199abe859d97ba4c948
 EBUILD python-3.10.16_p2.ebuild 15539 BLAKE2B 1dd164e28dfecd11ec27aadafbe67258c686aa02aefe644f1cd161d77b0009fcecb76d03de52d9904324e79ecc1880ca6229bf2b69f942bfd523bfb07d97c726 SHA512 4977b4ffe465a1a6ae7f7d590b9b5bedc608bbd9de266b8bafaa54628c7ad21e7dd691a6fff4ce9938e5159513387e8920a1bd2e80d113fd9c986943bae548c6
 EBUILD python-3.11.11_p1.ebuild 16699 BLAKE2B 5797ee3ec52e380d7f95373fde3130854506f13db4e4dadb07d7159dd290a7c41add2687ea51d79dc1afbee5cc700251ee8799a43440885803e82796407077a9 SHA512 44d5ba374441fd55830c89501cc00f9a9faab36f7a5c9c7dbd0bd2f65a633e0a93cb5aa57f3b5e57788d103a109f08e68a9f1a68bf65a6f97b7ffeb6f1f8a7e4
diff --git a/dev-lang/python/python-2.7.18_p16-r2.ebuild b/dev-lang/python/python-2.7.18_p16-r2.ebuild
index 7489ef62fd2e..c0e5d15a2c8a 100644
--- a/dev-lang/python/python-2.7.18_p16-r2.ebuild
+++ b/dev-lang/python/python-2.7.18_p16-r2.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2024 Gentoo Authors
+# Copyright 1999-2025 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 EAPI="7"
@@ -30,7 +30,7 @@ SLOT="${PYVER}"
 KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
 IUSE="
 	berkdb bluetooth build examples gdbm +ncurses +readline
-	+sqlite +ssl tk valgrind wininst +xml
+	+sqlite +ssl valgrind wininst +xml
 "
 RESTRICT="test"
 
@@ -54,12 +54,6 @@ RDEPEND="
 	readline? ( >=sys-libs/readline-4.1:= )
 	sqlite? ( >=dev-db/sqlite-3.3.8:3= )
 	ssl? ( dev-libs/openssl:= )
-	tk? (
-		>=dev-lang/tcl-8.0:=
-		>=dev-lang/tk-8.0:=
-		dev-tcltk/blt:=
-		dev-tcltk/tix
-	)
 	xml? ( >=dev-libs/expat-2.1:= )
 "
 # bluetooth requires headers from bluez
@@ -142,7 +136,7 @@ src_configure() {
 	use readline  || disable+=" readline"
 	use sqlite    || disable+=" _sqlite3"
 	use ssl       || export PYTHON_DISABLE_SSL="1"
-	use tk        || disable+=" _tkinter"
+	disable+=" _tkinter"
 	use xml       || disable+=" _elementtree pyexpat" # _elementtree uses pyexpat.
 	export PYTHON_DISABLE_MODULES="${disable}"
 
@@ -156,6 +150,9 @@ src_configure() {
 		einfo "Disabled modules: ${PYTHON_DISABLE_MODULES}"
 	fi
 
+	# bug #945717
+	append-flags -std=gnu17
+
 	append-flags -fwrapv
 
 	filter-flags -malign-double
@@ -295,10 +292,9 @@ src_install() {
 	if ! use sqlite; then
 		rm -r "${libdir}/"{sqlite3,test/test_sqlite*} || die
 	fi
-	if ! use tk; then
-		rm -r "${ED}/usr/bin/idle${PYVER}" || die
-		rm -r "${libdir}/"{idlelib,lib-tk} || die
-	fi
+
+	rm -r "${ED}/usr/bin/idle${PYVER}" || die
+	rm -r "${libdir}/"{idlelib,lib-tk} || die
 
 	dodoc Misc/{ACKS,HISTORY,NEWS}
 
-- 
cgit v1.2.3