git: 77c3e7d8bc3d - main - lang/ez80asm: Z80/Z180/eZ80 assembler for the Agon Light platform

From: Robert Clausecker <fuz_at_FreeBSD.org>
Date: Fri, 11 Sep 2026 13:00:30 UTC
The branch main has been updated by fuz:

URL: https://cgit.FreeBSD.org/ports/commit/?id=77c3e7d8bc3dd9c75910db8ede7c530ca605a869

commit 77c3e7d8bc3dd9c75910db8ede7c530ca605a869
Author:     Alexey Vyskubov <alexey@pentode.fi>
AuthorDate: 2026-09-05 10:32:19 +0000
Commit:     Robert Clausecker <fuz@FreeBSD.org>
CommitDate: 2026-09-11 12:58:46 +0000

    lang/ez80asm: Z80/Z180/eZ80 assembler for the Agon Light platform
    
    ez80asm is a Z80, Z180 and eZ80 assembler written for the Agon Light
    computer and cross-compilation environments.
    
    PR:             274464
    Event:          EuroBSDcon Devsummit 2026
---
 lang/Makefile                     |  1 +
 lang/ez80asm/Makefile             | 24 ++++++++++++++++++++++++
 lang/ez80asm/distinfo             |  3 +++
 lang/ez80asm/files/patch-Makefile | 34 ++++++++++++++++++++++++++++++++++
 lang/ez80asm/pkg-descr            |  2 ++
 5 files changed, 64 insertions(+)

diff --git a/lang/Makefile b/lang/Makefile
index 7c4b138b6eca..acc98fe08478 100644
--- a/lang/Makefile
+++ b/lang/Makefile
@@ -76,6 +76,7 @@
     SUBDIR += erlang-wx
     SUBDIR += execline
     SUBDIR += expect
+    SUBDIR += ez80asm
     SUBDIR += f2c
     SUBDIR += fasm
     SUBDIR += fennel
diff --git a/lang/ez80asm/Makefile b/lang/ez80asm/Makefile
new file mode 100644
index 000000000000..ea9e0f653a37
--- /dev/null
+++ b/lang/ez80asm/Makefile
@@ -0,0 +1,24 @@
+PORTNAME=		ez80asm
+DISTVERSIONPREFIX=	v
+DISTVERSION=		2.2
+CATEGORIES=		lang
+
+MAINTAINER=	alexey@pentode.fi
+COMMENT=	Z80/Z180/eZ80 assembler for Agon Light platform
+
+LICENSE=	MIT
+LICENSE_FILE=	${WRKSRC}/LICENSE
+
+USES=		dos2unix gmake
+USE_GITHUB=	yes
+GH_ACCOUNT=	AgonPlatform
+GH_PROJECT=	agon-ez80asm
+
+ALL_TARGET=	linux
+
+PLIST_FILES=	bin/ez80asm
+
+do-install:
+	${INSTALL_PROGRAM} ${WRKSRC}/bin/ez80asm ${STAGEDIR}${PREFIX}/bin
+
+.include <bsd.port.mk>
diff --git a/lang/ez80asm/distinfo b/lang/ez80asm/distinfo
new file mode 100644
index 000000000000..91ca5db1f487
--- /dev/null
+++ b/lang/ez80asm/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1788604110
+SHA256 (AgonPlatform-agon-ez80asm-v2.2_GH0.tar.gz) = fe4c1c24b0c4b0304aed3cf95e30f771746b2480a982bcd3b87e485269f6bcf0
+SIZE (AgonPlatform-agon-ez80asm-v2.2_GH0.tar.gz) = 1925426
diff --git a/lang/ez80asm/files/patch-Makefile b/lang/ez80asm/files/patch-Makefile
new file mode 100644
index 000000000000..c1f8a2475c7e
--- /dev/null
+++ b/lang/ez80asm/files/patch-Makefile
@@ -0,0 +1,34 @@
+--- Makefile.orig	2026-09-10 12:24:06 UTC
++++ Makefile
+@@ -5,9 +5,8 @@ MSBUILDFLAGS=/property:Configuration=Release
+ # Tools and arguments
+ MSBUILD='/mnt/c/Program Files/Microsoft Visual Studio/2022/Community/MSBuild/Current/Bin/MSBuild.exe' 
+ MSBUILDFLAGS=/property:Configuration=Release
+-CC=gcc
+-LFLAGS=-g -Wall -DUNIX
+-CFLAGS=$(LFLAGS) -c -fno-common -static -Wall -O2 -DNDEBUG -Wno-unused-result -c
++LFLAGS=-Wall -DUNIX
++CFLAGS+=$(LFLAGS) -c -fno-common -static -DNDEBUG -Wno-unused-result -c
+ OUTFLAG=-o 
+ .DEFAULT_GOAL := linux
+ 
+@@ -45,19 +44,11 @@ $(BIN):$(OBJS)
+ # Linking all compiled objects into final binary
+ $(BIN):$(OBJS)
+ 	@echo === Linking Linux target
+-ifeq ($(CC),gcc)
+ 	$(CC) $(LFLAGS) $(OBJS) $(OUTFLAG) $@
+-else
+-	$(LINKER) $(LINKERFLAGS)$@ $(OBJS)
+-endif
+ 
+ # Compile each .c file into .o file
+ $(OBJDIR)/%.o: $(SRCDIR)/%.c
+-ifeq ($(CC),gcc)
+ 	$(CC) $(CFLAGS) $< $(OUTFLAG) $@
+-else
+-	$(CC) $(CFLAGS)$@ $<
+-endif
+ 
+ $(BINDIR):
+ 	@mkdir $(BINDIR)
diff --git a/lang/ez80asm/pkg-descr b/lang/ez80asm/pkg-descr
new file mode 100644
index 000000000000..70ebc57eae47
--- /dev/null
+++ b/lang/ez80asm/pkg-descr
@@ -0,0 +1,2 @@
+ez80asm is a Z80, Z180 and eZ80 assembler written for the Agon Light computer
+and cross-compilation environments.