diff options
-rw-r--r-- | dev-lang/uasm/Manifest | 1 | ||||
-rw-r--r-- | dev-lang/uasm/files/151.patch | 23 | ||||
-rw-r--r-- | dev-lang/uasm/files/dbgcv.patch | 59 | ||||
-rw-r--r-- | dev-lang/uasm/uasm-2.52_p20210104.ebuild | 35 |
4 files changed, 118 insertions, 0 deletions
diff --git a/dev-lang/uasm/Manifest b/dev-lang/uasm/Manifest new file mode 100644 index 0000000..a97e5fb --- /dev/null +++ b/dev-lang/uasm/Manifest @@ -0,0 +1 @@ +DIST uasm-c612f83d97.tar.gz 2086138 BLAKE2B a96cf8b53917cadc8f88e7f66d1c1c7c14831b1626e21c9f2cf50dcd6a0fb1f957fa7f11550ed787ae8bc195dac125a2ebb1ef523a14d16eaa252690eaa9d79b SHA512 3f740fd33408f80e13310741524181bdfb9e963c4785115cd1387f4a6a0e732f02adab9a4cbe666209bf49c39d74873d970ddeaeb51679fe464eab31fe1f2a32 diff --git a/dev-lang/uasm/files/151.patch b/dev-lang/uasm/files/151.patch new file mode 100644 index 0000000..1b0befb --- /dev/null +++ b/dev-lang/uasm/files/151.patch @@ -0,0 +1,23 @@ +From c090c3472677bd57bbfc27e74ebf05fdc5116320 Mon Sep 17 00:00:00 2001 +From: Dan <justdan96@gmail.com> +Date: Thu, 10 Jun 2021 11:04:19 +0100 +Subject: [PATCH] fix types.h guard + +Typo in the types.h define guard +--- + H/types.h | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/H/types.h b/H/types.h +index 7db8cc10..f7b076b8 100644 +--- a/H/types.h ++++ b/H/types.h +@@ -1,7 +1,7 @@ + + /* prototypes of TYPES.C */ + +-#ifndef _TYPES_H_INCLUDED ++#ifndef _TYPES_H_INCLUDED_ + #define _TYPES_H_INCLUDED_ + + /* qualified_type us used for parsing a qualified type. */ diff --git a/dev-lang/uasm/files/dbgcv.patch b/dev-lang/uasm/files/dbgcv.patch new file mode 100644 index 0000000..c523cd6 --- /dev/null +++ b/dev-lang/uasm/files/dbgcv.patch @@ -0,0 +1,59 @@ +diff '--color=auto' -Naur UASM-c612f83d97a0cb192dfd983676743dabf662ed51~/dbgcv.c UASM-c612f83d97a0cb192dfd983676743dabf662ed51/dbgcv.c +--- UASM-c612f83d97a0cb192dfd983676743dabf662ed51~/dbgcv.c 2021-04-02 17:57:14.000000000 +0200 ++++ UASM-c612f83d97a0cb192dfd983676743dabf662ed51/dbgcv.c 2021-07-20 14:31:39.634571179 +0200 +@@ -17,7 +17,24 @@ + #include <fixup.h> + #include <dbgcv.h> + #include <linnum.h> ++#ifdef _WIN32 + #include <direct.h> ++#endif ++#ifdef __UNIX__ ++#include <stdio.h> ++#include <unistd.h> ++#include <limits.h> ++#endif ++#ifndef PATH_MAX ++#define PATH_MAX 4096 ++#endif ++#define _MAX_PATH PATH_MAX ++#ifndef _getcwd ++#define _getcwd getcwd ++#endif ++#ifndef _pgmptr ++#define _pgmptr "uasm" ++#endif + #include <picohash.h> + + #define SIZE_CV_SEGBUF ( MAX_LINE_LEN * 4 ) +@@ -1252,7 +1269,9 @@ + #define USEMD5 + + #ifdef USEMD5 ++#ifndef BUFSIZ + #define BUFSIZ 1024*4 ++#endif + #define MD5_LENGTH ( sizeof( uint_32 ) + sizeof( uint_16 ) + 16 + sizeof( uint_16 ) ) + + static int calc_md5(const char* filename, unsigned char* sum) +@@ -1575,12 +1594,20 @@ + len = strlen(p) + 1; + s = strcpy(s, p) + len; + *s++ = '\0'; ++ #ifdef _WIN32 + EnvBlock->reclen = (unsigned short)(s - cv.ps - 2); ++ #else ++ EnvBlock->reclen = (unsigned short)(s - (char*)cv.ps - 2); ++ #endif + cv.ps = s; + + /* length needs to be added for each symbol */ + ++ #ifdef _WIN32 + cv.section->length += (s - start); ++ #else ++ cv.section->length += (s - (char*)start); ++ #endif + + } + else { diff --git a/dev-lang/uasm/uasm-2.52_p20210104.ebuild b/dev-lang/uasm/uasm-2.52_p20210104.ebuild new file mode 100644 index 0000000..a71c663 --- /dev/null +++ b/dev-lang/uasm/uasm-2.52_p20210104.ebuild @@ -0,0 +1,35 @@ +# Copyright 2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit toolchain-funcs + +COMMIT=c612f83d97a0cb192dfd983676743dabf662ed51 + +DESCRIPTION="free MASM-compatible assembler based on JWasm" +HOMEPAGE="http://www.terraspace.co.uk/uasm.html" +SRC_URI="https://github.com/Terraspace/UASM/archive/${COMMIT}.tar.gz -> uasm-${COMMIT:0:10}.tar.gz" + +LICENSE="Watcom-1.0" +SLOT="0" +KEYWORDS="~amd64" +IUSE="debug" + +S=${WORKDIR}/UASM-${COMMIT} + +PATCHES=( + "${FILESDIR}/dbgcv.patch" + "${FILESDIR}/151.patch" +) + +src_compile() { + $(tc-getCC) ${CFLAGS} ${LDFLAGS} \ + -D__UNIX__ -IH $(usex debug -DDEBUG_OUT -DNDEBUG) -fcommon \ + main.c $(sed -n -e '/\.o/{s#\$(OUTD)/##;s#\.o.*$#.c#;p}' gccmod.inc) \ + -o uasm || die +} + +src_install() { + dobin uasm +} |