From 9323524b4d44f4ec3dc923bd8e9ea04bdde8a067 Mon Sep 17 00:00:00 2001
From: V3n3RiX <venerix@koprulu.sector>
Date: Sat, 6 Apr 2024 00:30:33 +0100
Subject: gentoo auto-resync : 06:04:2024 - 00:30:33

---
 dev-lang/Manifest.gz                            | Bin 21821 -> 21988 bytes
 dev-lang/nasm/Manifest                          |   3 +
 dev-lang/nasm/files/nasm-2.16.02-unconfig.patch |  11 ++
 dev-lang/nasm/nasm-2.16.02.ebuild               |  73 ++++++++++
 dev-lang/uasm/Manifest                          |   4 +
 dev-lang/uasm/files/build-fix.patch             | 179 ++++++++++++++++++++++++
 dev-lang/uasm/metadata.xml                      |  18 +++
 dev-lang/uasm/uasm-2.56.2.ebuild                |  41 ++++++
 8 files changed, 329 insertions(+)
 create mode 100644 dev-lang/nasm/files/nasm-2.16.02-unconfig.patch
 create mode 100644 dev-lang/nasm/nasm-2.16.02.ebuild
 create mode 100644 dev-lang/uasm/Manifest
 create mode 100644 dev-lang/uasm/files/build-fix.patch
 create mode 100644 dev-lang/uasm/metadata.xml
 create mode 100644 dev-lang/uasm/uasm-2.56.2.ebuild

(limited to 'dev-lang')

diff --git a/dev-lang/Manifest.gz b/dev-lang/Manifest.gz
index 3d3d1e07ba90..dae7bdcffd35 100644
Binary files a/dev-lang/Manifest.gz and b/dev-lang/Manifest.gz differ
diff --git a/dev-lang/nasm/Manifest b/dev-lang/nasm/Manifest
index 937400940f3e..539dc6c08170 100644
--- a/dev-lang/nasm/Manifest
+++ b/dev-lang/nasm/Manifest
@@ -1,5 +1,8 @@
 AUX nasm-2.15-bsd-cp-doc.patch 278 BLAKE2B eb2d6fffb03da68a43df8db6cbadeb72753f0474f91011038b6ec0b3a449fbd0e3cde59abfb1b22fa0c991629960f456815b1c86ec55292f54a879d8a0a079f1 SHA512 ba691e4f0fd3b676280de5b79e6872f7efe034da28fc66e247c3f757761e2191c54f585ca724747812fa55afb4b9d76366f50659702561c7eb69483de265b3e5
 AUX nasm-2.16-autoconf-macro-fixes.patch 8841 BLAKE2B b60d26d6f3b6b9775e5c12a5d313e3df5b5deebafcae09570d066d46744a5001c0f3ea38c0629abf407f77107ba900c94ceb1562f46f83fd2311ce9ffde3d25b SHA512 95eed48a15f05942b4252c01a05a8eb355ba33288462f6e9ae01f952f831ce476276d51b859cac902d76340f122f5bbf882d511935f36ab54dbc8bae02e176d3
+AUX nasm-2.16.02-unconfig.patch 404 BLAKE2B 9a66c0b72b6d4a00c4af96f6cce1b645c1824ce2369ab528c3a3b1043b81d231a032988891f38092107c2b9a260ec2fa5003b50d281ab6ebd21ee924d074303a SHA512 8520c4bd9350ab0fe84b2828f253cebc3f53cd4af710ef4eb95acf1cf01c534df67ace340d3ea72a173cc5ec77880b66c833537732318d64fb9cadfbf46d695b
 DIST nasm-2.16.01.tar.xz 1017732 BLAKE2B 0f7e96648e3db6fa4a8e10a89885f61cab7d79af25adbcc9d4706b3af61206c3cae024b7f873d636f5c1b2cb34ce5e7fbecc16af9b59086e9a1f49fb37c59670 SHA512 51fccb5639ce019d9c423c0f279750ffbd74c64cd41dd3b185d1aa1a1aaed79c5d3cd8d4bebbc13ee249a375ed27457ea2abde1a4dbb24d354598fffd1254833
+DIST nasm-2.16.02.tar.xz 1044824 BLAKE2B daa3585e9aef3c388e3b577a52453b31aaa7f13942e621c21bbe6ec744ff30bf2692e853dda193b30006989cb10e40dcc1cf0107176e31fd5ee096baad28c7a1 SHA512 9ccafb4cd9064fb21f6551309d35ba7461de8da138b1239d76c2ea0c070a1a767f1019d5d705088375d625cfb73eebbfd9dfa3588107793b95354d89dcfd22c3
 EBUILD nasm-2.16.01-r1.ebuild 1581 BLAKE2B 0dcfc4b92ff0462b0e21c6b5f4144098f79130bd968f2808f3ce5afca27e23638496ee276a6cfdb81ffd85fd7e314db8036be60cec1db7f4b398aeb9f8cf0a17 SHA512 06d03935a76a8bb160914f6a0c76137b60364451d7275ceb613dc5bfb029044ede6e87d6a9cae5e25be3d5ba06f3aa9ae306786ba80f078f1e243f90181a6347
+EBUILD nasm-2.16.02.ebuild 1584 BLAKE2B 9c3e6f9b7d236bed83e6c4be74e20cf669a5a1fbebe307e8c3ee5c0537ce561be524ce4f4f4e69ea16e0499593ff9dc9acbbd73fc71794b7d99969e5d0662ded SHA512 64f6aefe376c982b32f0e57c9ebdac90a62fb4b12d22081e359a201f007fd1b054727ba31a210c3680348d09427a8462cb6ec2686706958220d62e1b4c2b5f87
 MISC metadata.xml 879 BLAKE2B 17d2ca1a78ed46d24fe75188387da9c03dafcd6aacf0db7c82fdee39ad766dac23010b6c51c90c08a3e591e93589a29a151ac5bc52fd6b3911504f2f124da6b7 SHA512 d6e921fc48851be64d1dfc0be200a1a86842e5d4d00a9f4551e7ca76a91272dc5f1f01928d3656a5e340283c83f7283bb9e7094c0309406d9392d57048239563
diff --git a/dev-lang/nasm/files/nasm-2.16.02-unconfig.patch b/dev-lang/nasm/files/nasm-2.16.02-unconfig.patch
new file mode 100644
index 000000000000..77478b7e68cc
--- /dev/null
+++ b/dev-lang/nasm/files/nasm-2.16.02-unconfig.patch
@@ -0,0 +1,11 @@
+--- a/Makefile.in	2024-04-05 07:51:48.394437050 -0000
++++ b/Makefile.in	2024-04-05 07:52:38.731388961 -0000
+@@ -214,7 +214,7 @@
+ INSDEP = x86/insns.dat x86/insns.pl x86/insns-iflags.ph x86/iflags.ph
+ 
+ config/unconfig.h: config/config.h.in
+-	$(RUNPERL) $(tools)/unconfig.pl \
++	$(RUNPERL) $(top_srcdir)/autoconf/unconfig.pl \
+ 		'$(srcdir)' config/config.h.in config/unconfig.h
+ 
+ x86/iflag.c: $(INSDEP)
diff --git a/dev-lang/nasm/nasm-2.16.02.ebuild b/dev-lang/nasm/nasm-2.16.02.ebuild
new file mode 100644
index 000000000000..f1f5ac53b3bd
--- /dev/null
+++ b/dev-lang/nasm/nasm-2.16.02.ebuild
@@ -0,0 +1,73 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools
+
+DESCRIPTION="groovy little assembler"
+HOMEPAGE="https://www.nasm.us/"
+SRC_URI="https://www.nasm.us/pub/nasm/releasebuilds/${PV/_}/${P/_}.tar.xz"
+S="${WORKDIR}"/${P/_}
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~ia64 ~loong ~ppc64 ~riscv ~x86 ~amd64-linux ~x86-linux"
+IUSE="doc"
+
+QA_CONFIG_IMPL_DECL_SKIP=(
+	_BitScanReverse
+	_BitScanReverse64
+	__cpu_to_le16
+	__cpu_to_le32
+	__cpu_to_le64
+	_byteswap_uint64
+	_byteswap_ulong
+	_byteswap_ushort
+	cpu_to_le16
+	cpu_to_le32
+	cpu_to_le64
+	typeof
+)
+
+# [fonts note] doc/psfonts.ph defines ordered list of font preference.
+# Currently 'media-fonts/source-pro' is most preferred and is able to
+# satisfy all 6 font flavours: tilt, chapter, head, etc.
+BDEPEND="
+	dev-lang/perl
+	doc? (
+		app-text/ghostscript-gpl
+		dev-perl/Font-TTF
+		dev-perl/Sort-Versions
+		media-fonts/source-code-pro
+		media-fonts/source-sans:3
+		virtual/perl-File-Spec
+	)
+"
+
+PATCHES=(
+	"${FILESDIR}"/${PN}-2.15-bsd-cp-doc.patch
+	"${FILESDIR}"/${PN}-2.16.02-unconfig.patch
+)
+
+src_prepare() {
+	default
+
+	# https://bugs.gentoo.org/870214
+	# During the split of media-fonts/source-pro, the source-sans files
+	# were renamed. Currently depend on media-fonts/source-sans:3 which works
+	# with this sed.
+	sed -i 's/SourceSansPro/SourceSans3/g' doc/psfonts.ph || die
+
+	AT_M4DIR="${S}/autoconf/m4" eautoreconf
+}
+
+src_compile() {
+	default
+	use doc && emake doc
+}
+
+src_install() {
+	default
+	emake DESTDIR="${D}" install $(usex doc install_doc '')
+}
diff --git a/dev-lang/uasm/Manifest b/dev-lang/uasm/Manifest
new file mode 100644
index 000000000000..c046f36b5e72
--- /dev/null
+++ b/dev-lang/uasm/Manifest
@@ -0,0 +1,4 @@
+AUX build-fix.patch 4867 BLAKE2B 5f2058888b7014bae9fa014307aabcf07d6e802e215c996cc21e6575ae6b557b2a42f381b41b9f64abdaeab29caee9a3dc61b378b183f095b668da9e43010d39 SHA512 e5e22c4f0582a34f2528227cc757507b9348f641da73798f4d6488714edd83686242d4469b35ab706894a11c7765b392a518150106007b32bb4cffdb05cd1b22
+DIST uasm-2.56.2.tar.gz 1243830 BLAKE2B dcc0948d92cdd5972a6698e721a6ccc6a54926ef94778438cf9a88a6e41ebc652d5230003f689d4278bd1e48959dd04595c602427287a48c551d7b847be665f0 SHA512 1f6c1037909d012f3293985c4e0516f4b61497de23cac6bbb58db735efb512599c0bba5d60d8ce999e6afc57e44484a094bf10f0ee185a51afd826f5541c9337
+EBUILD uasm-2.56.2.ebuild 904 BLAKE2B 5f3a7539018071942fffb46077ec83dbb9b8b8f317f1d9c8067f7b89419c1ac480f7522f2028104a4e6dce145f4f446f4d510a3208eed1eed6da640fcb5945f3 SHA512 574eb6f27be9ea4c856f135bd9cd1284d90c9ccbb2d673b4478f74e7fe42237f905a6644f843d90fbebeadb2e9096e52e96d94288003fd5007c825b4e5c409c3
+MISC metadata.xml 521 BLAKE2B c50616e7b6f6df5a3af6d3d0c72dd2d4dc4bbaa87eb525a0ec9af8b46ef913e710c97d3db01cacc42549175e6e8d20bbd557c24b789bf820f210b5c22e087d2f SHA512 213adb4bef7d55ec9369e7c09f83413d8b076d68524abb5cf52338a15ad99da534b97797128d5a5ac6d2460a03cf3c2f070baf27cfdb4cf70358f458141a8fd0
diff --git a/dev-lang/uasm/files/build-fix.patch b/dev-lang/uasm/files/build-fix.patch
new file mode 100644
index 000000000000..6870528ef87f
--- /dev/null
+++ b/dev-lang/uasm/files/build-fix.patch
@@ -0,0 +1,179 @@
+Fixes various build issues with newer clang
+https://bugs.gentoo.org/927802
+
+From b6457542bd56507cb2b659d50772f87cc66d6ea3 Mon Sep 17 00:00:00 2001
+From: NRK <nrk@disroot.org>
+Date: Mon, 1 Apr 2024 15:29:47 +0000
+Subject: [PATCH 1/4] Add missing includes
+
+---
+ assemble.c  | 2 +-
+ codegenv2.c | 2 ++
+ 2 files changed, 3 insertions(+), 1 deletion(-)
+
+diff --git a/assemble.c b/assemble.c
+index 2ce0e14..a9f2899 100644
+--- a/assemble.c
++++ b/assemble.c
+@@ -43,7 +43,7 @@
+ #include "lqueue.h"
+ #include "orgfixup.h"
+ #include "macrolib.h"
+-//#include "simd.h"
++#include "simd.h"
+ 
+ #if DLLIMPORT
+ #include "mangle.h"
+diff --git a/codegenv2.c b/codegenv2.c
+index 6bcc08d..7063c27 100644
+--- a/codegenv2.c
++++ b/codegenv2.c
+@@ -1,6 +1,7 @@
+ 
+ #include "codegenv2.h"
+ 
++#include <ctype.h>
+ #include <time.h>
+ #include "globals.h"
+ #include "parser.h"
+@@ -12,6 +13,7 @@
+ #include "types.h"
+ #include "macro.h"
+ #include "listing.h"
++#include "input.h"
+ 
+ #define OutputCodeByte( x ) OutputByte( x )
+ 
+-- 
+2.42.0
+
+
+From bc4ffb4ac77f97b42f7d83cae0f0ea7a59c5b6be Mon Sep 17 00:00:00 2001
+From: NRK <nrk@disroot.org>
+Date: Mon, 1 Apr 2024 15:36:14 +0000
+Subject: [PATCH 2/4] Add missing prototypes
+
+ref: https://github.com/Terraspace/UASM/pull/186
+---
+ H/globals.h | 8 ++++++++
+ 1 file changed, 8 insertions(+)
+
+diff --git a/H/globals.h b/H/globals.h
+index e202c50..7320cb9 100644
+--- a/H/globals.h
++++ b/H/globals.h
+@@ -49,6 +49,7 @@
+ #endif
+ #define _ltoa   ltoa
+ #define _strupr strupr
++extern char *strupr(char *);
+ 
+ #elif defined(__POCC__)
+ 
+@@ -946,4 +947,11 @@ extern char             *num2hex64(uint_64 value, char *buffer);
+ extern char             *ConvertSectionName( const struct asym *, enum seg_type *pst, char *buffer );
+ extern void             RewindToWin64(void);
+ 
++extern void CreateMacroLibCases64(void);
++extern void CreateMacroLibCases32(void);
++extern void OutputInterleavedBytes(const unsigned char *pbytes, int len, struct fixup *fixup);
++extern void SymSimd(struct dsym *sym);
++extern void RunLineQueue( void );
++extern ret_code BackPatch( struct asym *sym );
++
+ #endif
+-- 
+2.42.0
+
+
+From d4d625d009dfc7ab91136516aafb4fc706d0c1ab Mon Sep 17 00:00:00 2001
+From: NRK <nrk@disroot.org>
+Date: Mon, 1 Apr 2024 15:40:30 +0000
+Subject: [PATCH 3/4] Fix incompatible assignment of `void *` to `uint32_t`
+
+---
+ macho64.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/macho64.c b/macho64.c
+index 8e74842..8b81d5e 100644
+--- a/macho64.c
++++ b/macho64.c
+@@ -725,7 +725,7 @@ static ret_code macho_write_module( struct module_info *modinfo )
+ 		mm.header.cputype = CPU_TYPE_X86_64;
+ 		mm.header.cpusubtype = CPU_SUBTYPE_LITTLE_ENDIAN | CPU_SUBTYPE_X86_64_ALL;
+ 		mm.header.filetype = MH_OBJECT;
+-		mm.header.flags = NULL;
++		mm.header.flags = 0;
+ 		
+ 		macho_build_structures(modinfo, mm);	
+ 	}
+-- 
+2.42.0
+
+
+From 0108e8754737c9ceac0314c8f70da8c9f4bd2095 Mon Sep 17 00:00:00 2001
+From: NRK <nrk@disroot.org>
+Date: Mon, 1 Apr 2024 15:54:02 +0000
+Subject: [PATCH 4/4] Fix incompatible function pointer
+
+---
+ proc.c | 16 ++++++++++++++--
+ 1 file changed, 14 insertions(+), 2 deletions(-)
+
+diff --git a/proc.c b/proc.c
+index fdd8b49..80e8674 100644
+--- a/proc.c
++++ b/proc.c
+@@ -162,10 +162,12 @@ struct delphicall_conv {
+ 
+ 
+ static  int ms32_pcheck(struct dsym *, struct dsym *, int *);
++static  int ms32_syspcheck(struct dsym *, struct dsym *, int *, int *);
+ static void ms32_return(struct dsym *, char *);
+ 
+ #if OWFC_SUPPORT
+ static  int watc_pcheck(struct dsym *, struct dsym *, int *);
++static  int watc_syspcheck(struct dsym *, struct dsym *, int *, int *);
+ static void watc_return(struct dsym *, char *);
+ #endif
+ 
+@@ -212,9 +214,9 @@ static const struct vectorcall_conv vectorcall_tab[] = {
+ };
+ 
+ static const struct sysvcall_conv sysvcall_tab[] = {
+-	{ ms32_pcheck, ms32_return },  /* FCT_MSC */
++	{ ms32_syspcheck, ms32_return },  /* FCT_MSC */
+ #if OWFC_SUPPORT		
+-	{ watc_pcheck, watc_return },  /* FCT_WATCOMC */
++	{ watc_syspcheck, watc_return },  /* FCT_WATCOMC */
+ #endif		
+ #if SYSV_SUPPORT		
+ 	{ sysv_pcheck, sysv_return }   /* FCT_WIN64 / SYSTEMV */
+@@ -380,6 +382,11 @@ static int watc_pcheck(struct dsym *proc, struct dsym *paranode, int *used)
+ 	return(1);
+ }
+ 
++static int watc_syspcheck(struct dsym *proc, struct dsym *paranode, int *used, int *vecused)
++{
++	return watc_pcheck(proc, paranode, used);
++}
++
+ static void watc_return(struct dsym *proc, char *buffer)
+ /********************************************************/
+ {
+@@ -433,6 +440,11 @@ static int ms32_pcheck(struct dsym *proc, struct dsym *paranode, int *used)
+ 	return(1);
+ }
+ 
++static int ms32_syspcheck(struct dsym *proc, struct dsym *paranode, int *used, int *vecused)
++{
++	return ms32_pcheck(proc, paranode, used);
++}
++
+ static void ms32_return(struct dsym *proc, char *buffer)
+ /********************************************************/
+ {
+-- 
+2.42.0
+
diff --git a/dev-lang/uasm/metadata.xml b/dev-lang/uasm/metadata.xml
new file mode 100644
index 000000000000..33becdeb8c4e
--- /dev/null
+++ b/dev-lang/uasm/metadata.xml
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+	<maintainer type="person" proxied="yes">
+		<email>nrk@disroot.org</email>
+	</maintainer>
+	<maintainer type="person">
+		<email>arthurzam@gentoo.org</email>
+		<name>Arthur Zamarin</name>
+	</maintainer>
+	<maintainer type="person">
+		<email>sam@gentoo.org</email>
+		<name>Sam James</name>
+	</maintainer>
+	<upstream>
+		<remote-id type="github">Terraspace/UASM</remote-id>
+	</upstream>
+</pkgmetadata>
diff --git a/dev-lang/uasm/uasm-2.56.2.ebuild b/dev-lang/uasm/uasm-2.56.2.ebuild
new file mode 100644
index 000000000000..8210588c135e
--- /dev/null
+++ b/dev-lang/uasm/uasm-2.56.2.ebuild
@@ -0,0 +1,41 @@
+# Copyright 2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit toolchain-funcs flag-o-matic
+
+DESCRIPTION="UASM is a free MASM-compatible assembler"
+HOMEPAGE="https://www.terraspace.co.uk/uasm.html"
+SRC_URI="https://github.com/Terraspace/UASM/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/UASM-${PV}"
+
+LICENSE="Watcom-1.0"
+SLOT="0"
+KEYWORDS="~amd64"
+PATCHES=(
+	"${FILESDIR}/build-fix.patch"
+)
+
+src_prepare() {
+	default
+	# don't strip binary
+	sed -i gccLinux64.mak -e 's/ -s / /g' || die
+}
+
+src_compile() {
+	# Bug: https://github.com/Terraspace/UASM/issues/143
+	append-cflags -fcommon
+	# https://github.com/Terraspace/UASM/issues/197
+	append-cflags -Wno-error=incompatible-pointer-types
+
+	emake -f gccLinux64.mak \
+		CC="$(tc-getCC)" \
+		CFLAGS="${CFLAGS}" \
+		LDFLAGS="${LDFLAGS}"
+}
+
+src_install() {
+	dobin GccUnixR/uasm
+	dodoc *.txt Doc/*.txt
+}
-- 
cgit v1.2.3