commit: a8221568f966e789f8f1f83fe528a7a2da90f779 Author: NRK <nrk <AT> disroot <DOT> org> AuthorDate: Fri Feb 28 12:04:28 2025 +0000 Commit: Arthur Zamarin <arthurzam <AT> gentoo <DOT> org> CommitDate: Sat Mar 1 09:37:47 2025 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a8221568
dev-lang/uasm: add v2.57 Signed-off-by: NRK <nrk <AT> disroot.org> Closes: https://github.com/gentoo/gentoo/pull/40810 Signed-off-by: Arthur Zamarin <arthurzam <AT> gentoo.org> dev-lang/uasm/Manifest | 1 + dev-lang/uasm/files/makefile-dep-fix-2.57.patch | 22 +++++++++++++ dev-lang/uasm/uasm-2.57.ebuild | 43 +++++++++++++++++++++++++ 3 files changed, 66 insertions(+) diff --git a/dev-lang/uasm/Manifest b/dev-lang/uasm/Manifest index bb9b666ccfbf..0cc3a0bf02b1 100644 --- a/dev-lang/uasm/Manifest +++ b/dev-lang/uasm/Manifest @@ -1 +1,2 @@ DIST uasm-2.56.2.tar.gz 1243830 BLAKE2B dcc0948d92cdd5972a6698e721a6ccc6a54926ef94778438cf9a88a6e41ebc652d5230003f689d4278bd1e48959dd04595c602427287a48c551d7b847be665f0 SHA512 1f6c1037909d012f3293985c4e0516f4b61497de23cac6bbb58db735efb512599c0bba5d60d8ce999e6afc57e44484a094bf10f0ee185a51afd826f5541c9337 +DIST uasm-2.57.tar.gz 1240492 BLAKE2B 65f3eda6519ecbf2b03c258751f131a48ba55fe558988bc24cddfe2f033cac5a0d79375a74813b825345474a8f0f5f7dd90c7d2fb1cb8b85c6ad23c70ec4f96e SHA512 588c158b34e0fc538f08a859822549fbd2e1f8548102bbbdea7099281ffaaf41b6d56f4f07f7333a7d714acbd6271b504dde2b24ad2e9790e93e78e6e516caa0 diff --git a/dev-lang/uasm/files/makefile-dep-fix-2.57.patch b/dev-lang/uasm/files/makefile-dep-fix-2.57.patch new file mode 100644 index 000000000000..03cb9c0b3800 --- /dev/null +++ b/dev-lang/uasm/files/makefile-dep-fix-2.57.patch @@ -0,0 +1,22 @@ +Bug: https://bugs.gentoo.org/933867 + +diff --git a/Makefile-Linux-GCC-64.mak b/Makefile-Linux-GCC-64.mak +index 9d4431a..e4fb10f 100644 +--- a/Makefile-Linux-GCC-64.mak ++++ b/Makefile-Linux-GCC-64.mak +@@ -31,13 +31,13 @@ include gccmod.inc + + #.c.o: + # $(CC) -c $(inc_dirs) $(c_flags) -o $(OUTD)/$*.o $< +-$(OUTD)/%.o: %.c ++$(OUTD)/%.o: %.c | $(OUTD) + $(CC) -D __UNIX__ -c $(inc_dirs) $(c_flags) $(CFLAGS) $(CPPFLAGS) -o $(OUTD)/$*.o $< + + all: $(OUTD) $(OUTD)/$(TARGET1) + + $(OUTD): +- mkdir $(OUTD) ++ mkdir -p $(OUTD) + + $(OUTD)/$(TARGET1) : $(OUTD)/main.o $(proj_obj) + ifeq ($(DEBUG),0) diff --git a/dev-lang/uasm/uasm-2.57.ebuild b/dev-lang/uasm/uasm-2.57.ebuild new file mode 100644 index 000000000000..bb8e70dfc0ff --- /dev/null +++ b/dev-lang/uasm/uasm-2.57.ebuild @@ -0,0 +1,43 @@ +# Copyright 2024-2025 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" +TAG="${PV}r" # the tag has a 'r' suffix (2.57r) for some reason +SRC_URI="https://github.com/Terraspace/UASM/archive/v${TAG}.tar.gz -> ${P}.tar.gz" +S="${WORKDIR}/UASM-${TAG}" + +LICENSE="Watcom-1.0" +SLOT="0" +KEYWORDS="~amd64" +PATCHES=( + "${FILESDIR}/build-fix.patch" + "${FILESDIR}/makefile-dep-fix-2.57.patch" +) + +src_prepare() { + default + # don't strip binary + sed -i Makefile-Linux-GCC-64.mak -e 's/ -s / /g' || die +} + +src_compile() { + # BUG: https://github.com/Terraspace/UASM/issues/143 + append-cflags -fcommon + # BUG: https://github.com/Terraspace/UASM/issues/197 + append-cflags -Wno-error=incompatible-pointer-types + + emake -f Makefile-Linux-GCC-64.mak \ + CC="$(tc-getCC)" \ + CFLAGS="${CFLAGS}" \ + LDFLAGS="${LDFLAGS}" +} + +src_install() { + dobin GccUnixR/uasm + dodoc *.txt Doc/*.txt +}