summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLaurent <laurent.chardon@gmail.com>2024-04-25 18:28:36 +0200
committerFernando ApesteguĂ­a <fernape@FreeBSD.org>2024-04-26 12:28:09 +0200
commit88505e8a3f59e6dd0a71984f65d6bbefc2b9add2 (patch)
tree73062e715a2a9fc3e9933181f48e8a9a0b94961a
parentsysutils/poweralertd: update to 0.3.0 (diff)
devel/z80-asm: update to 2.4.1
ChangeLog: http://wwwhomes.uni-bielefeld.de/achim/z80-asm/CHANGELOG-2.4.1 Submitter becomes maintainer. Already maintaining several ports. PR: 276089 Reported by: laurent.chardon@gmail.com
-rw-r--r--devel/z80-asm/Makefile35
-rw-r--r--devel/z80-asm/distinfo7
-rw-r--r--devel/z80-asm/files/patch-Makefile43
-rw-r--r--devel/z80-asm/files/patch-hardware_Makefile29
-rw-r--r--devel/z80-asm/files/patch-memory.c38
-rw-r--r--devel/z80-asm/files/patch-z80-asm.c11
-rw-r--r--devel/z80-asm/files/patch-z80-mon.c11
7 files changed, 141 insertions, 33 deletions
diff --git a/devel/z80-asm/Makefile b/devel/z80-asm/Makefile
index 3e1072783613..d726d9c248ca 100644
--- a/devel/z80-asm/Makefile
+++ b/devel/z80-asm/Makefile
@@ -1,15 +1,11 @@
PORTNAME= z80-asm
-PORTVERSION= 2.4.p3
+PORTVERSION= 2.4.1
CATEGORIES= devel
MASTER_SITES= http://wwwhomes.uni-bielefeld.de/achim/z80-asm/
-DISTNAME= ${PORTNAME}-2.3
+DISTNAME= z80-asm-current
DIST_SUBDIR= z80-asm
-PATCH_SITES= ${MASTER_SITES}
-PATCHFILES= diff_2.3_2.4-pre3.gz
-PATCH_DIST_STRIP= -p1
-
-MAINTAINER= ports@FreeBSD.org
+MAINTAINER= laurent.chardon@gmail.com
COMMENT= Z80 assembly code assembler and disassembler
WWW= https://wwwhomes.uni-bielefeld.de/achim/z80-asm.html
@@ -18,33 +14,14 @@ LICENSE_FILE= ${WRKSRC}/doc/COPYING
USES= gmake
-PORTDOCS= CHANGELOG README TODO z80-asm.html z80-mon.html
+WRKSRC= ${WRKDIR}/${PORTNAME}-${PORTVERSION}
OPTIONS_DEFINE= DOCS
+PORTDOCS= CHANGELOG README TODO z80-asm.html z80-mon.html
+OPTIONS_SUB= yes
.include <bsd.port.options.mk>
-.if ${OPSYS} == FreeBSD && ( ${OSVERSION} >= 1400091 || ( ${OSVERSION} >= 1302507 && ${OSVERSION} < 1400000 ))
-CFLAGS+= -Wno-error=incompatible-function-pointer-types
-.endif
-
-post-extract:
- @${TOUCH} ${WRKSRC}/hardware/bus_masters
-
-post-patch:
- @${REINPLACE_CMD} -e \
- 's|/usr/local|${PREFIX}|g ; \
- s|^CC=|CC?=|g ; \
- s|=-O2|+=|g ; \
- s|make |$$(MAKE) |g ; \
- s|gcc |$$(CC) |g' ${WRKSRC}/Makefile
- @${REINPLACE_CMD} -e \
- '/LCD=/s|^|#|g ; \
- s|^CC=|CC?=|g ; \
- s|=-O2|+=|g ; \
- s|gcc |$$(CC) |g ; \
- s|-lc ||g' ${WRKSRC}/hardware/Makefile
-
do-install:
${INSTALL_PROGRAM} ${WRKSRC}/z80-asm ${STAGEDIR}${PREFIX}/bin
${INSTALL_PROGRAM} ${WRKSRC}/z80-mon ${STAGEDIR}${PREFIX}/bin
diff --git a/devel/z80-asm/distinfo b/devel/z80-asm/distinfo
index 89b3d649a3b7..6f8b5554af82 100644
--- a/devel/z80-asm/distinfo
+++ b/devel/z80-asm/distinfo
@@ -1,4 +1,3 @@
-SHA256 (z80-asm/z80-asm-2.3.tar.gz) = d221ba488294e3e1ef0472425f696635768de4b565bdf47abaee5df0a5fe179a
-SIZE (z80-asm/z80-asm-2.3.tar.gz) = 527292
-SHA256 (z80-asm/diff_2.3_2.4-pre3.gz) = a00fda33ecb2271842fac4f10de5fe2da5a307ba05694c3fb3d16f6c56b82d8a
-SIZE (z80-asm/diff_2.3_2.4-pre3.gz) = 33063
+TIMESTAMP = 1703778570
+SHA256 (z80-asm/z80-asm-current.tar.gz) = 3c2197389a3b4c891f3b85a8725213b59eb1955ea53b251eed546c4d3bb64cb0
+SIZE (z80-asm/z80-asm-current.tar.gz) = 3582101
diff --git a/devel/z80-asm/files/patch-Makefile b/devel/z80-asm/files/patch-Makefile
new file mode 100644
index 000000000000..e0da162815bd
--- /dev/null
+++ b/devel/z80-asm/files/patch-Makefile
@@ -0,0 +1,43 @@
+--- Makefile.orig 2006-10-04 15:26:50 UTC
++++ Makefile
+@@ -30,16 +30,17 @@ endif
+ MONI=z80-mon.exe
+ endif
+
+-CC= gcc
++CC?= gcc
+ CFLAGS=-O2 -Wall -D$(ZZ) -D$(SYSTEM) $(DEFINES) -W -Wstrict-prototypes \
+- -Wno-parentheses -fomit-frame-pointer -falign-functions=0
++ -Wno-self-assign -Wno-parentheses -fomit-frame-pointer -falign-functions=0
+ LDFLAGS=
+
+ all:
+ cd hardware; $(MAKE) SYSTEM=$(SYSTEM) DEFINES="-D$(ZZZ) -D$(SYSTEM) $(DEFINES)" hard.a
+- make $(ASM)
+- make $(MONI)
+- cd hardware; $(MAKE) SYSTEM=$(SYSTEM) DEFINES="-D$(ZZZ) -D$(SYSTEM) $(DEFINES)"
++ $(MAKE) $(ASM)
++ $(MAKE) $(MONI)
++ # Commenting out this line as binaries produced are not installed
++ # cd hardware; $(MAKE) SYSTEM=$(SYSTEM) DEFINES="-D$(ZZZ) -D$(SYSTEM) $(DEFINES)"
+
+ clean:
+ $(RM) *.o
+@@ -48,7 +49,7 @@ clean:
+ $(RM) asm.a
+ $(RM) cpu.a
+ $(RM) .bus_proto
+- cd hardware; make SYSTEM=$(SYSTEM) clean
++ cd hardware; $(MAKE) SYSTEM=$(SYSTEM) clean
+
+ install:
+ chmod a+rx $(ASM) $(MONI); cp -p $(ASM) $(MONI) $(BIN_DIR)
+@@ -118,6 +119,6 @@ $(ASM): z80-asm.o dummy.o asm.a $(HW)
+
+
+ $(ASM): z80-asm.o dummy.o asm.a $(HW)
+- gcc -lc -o $(ASM) z80-asm.o dummy.o asm.a $(HW)
++ $(CC) -lc -o $(ASM) z80-asm.o dummy.o asm.a $(HW)
+ $(MONI): z80-mon.o cpu.a console.o asm.a $(HW)
+- gcc -lc -o $(MONI) z80-mon.o cpu.a console.o asm.a $(HW)
++ $(CC) -lc -o $(MONI) z80-mon.o cpu.a console.o asm.a $(HW)
diff --git a/devel/z80-asm/files/patch-hardware_Makefile b/devel/z80-asm/files/patch-hardware_Makefile
new file mode 100644
index 000000000000..d44480119001
--- /dev/null
+++ b/devel/z80-asm/files/patch-hardware_Makefile
@@ -0,0 +1,29 @@
+--- hardware/Makefile.orig 2023-12-28 16:42:51 UTC
++++ hardware/Makefile
+@@ -16,7 +16,7 @@ endif
+ MON=monitor_cpu.exe
+ endif
+
+-CC= gcc
++CC?= gcc
+ CFLAGS=-O2 -Wall -D$(SYSTEM) $(DEFINES) -W -Wstrict-prototypes \
+ -Wno-parentheses -fomit-frame-pointer -falign-functions=0
+ LDFLAGS=
+@@ -59,12 +59,12 @@ $(LCD): lcd_display.o ../dummy.o ../cpu.a ../console.o
+ ssl_zds.o: ssl_zds.c ../z80-cpu.h ../z80-global zds_token
+
+ $(LCD): lcd_display.o ../dummy.o ../cpu.a ../console.o ../asm.a hard.a
+- gcc -lc -o $(LCD) lcd_display.o ../dummy.o ../cpu.a ../console.o ../asm.a hard.a
++ $(CC) -lc -o $(LCD) lcd_display.o ../dummy.o ../cpu.a ../console.o ../asm.a hard.a
+ $(CLK): hardware_clock.o
+- gcc -lc -o $(CLK) hardware_clock.o
++ $(CC) -lc -o $(CLK) hardware_clock.o
+ $(MKP): make_ports.o
+- gcc -lc -o $(MKP) make_ports.o
++ $(CC) -lc -o $(MKP) make_ports.o
+ $(IOP): port_io.o
+- gcc -lc -o $(IOP) port_io.o
++ $(CC) -lc -o $(IOP) port_io.o
+ $(MON): monitor_cpu.o ../cpu.a ../console.o ../asm.a
+- gcc -lc -o $(MON) monitor_cpu.o ../cpu.a ../console.o ../asm.a
++ $(CC) -lc -o $(MON) monitor_cpu.o ../cpu.a ../console.o ../asm.a
diff --git a/devel/z80-asm/files/patch-memory.c b/devel/z80-asm/files/patch-memory.c
new file mode 100644
index 000000000000..272441a039d6
--- /dev/null
+++ b/devel/z80-asm/files/patch-memory.c
@@ -0,0 +1,38 @@
+--- memory.c.orig 2024-04-25 09:31:04 UTC
++++ memory.c
+@@ -298,7 +298,7 @@ for (k=1; fgets(buffer,800,fp) ; k++)
+ continue;
+ }
+ else if (!(rom_fp = fopen(filename,"r")))
+- { char err_msg[64];
++ { char err_msg[256];
+ sprintf(err_line,ERROR_BANK,k);
+ sprintf(err_msg," can't open bank file %63s", filename);
+ error(0,err_line,err_msg);
+@@ -311,7 +311,7 @@ for (k=1; fgets(buffer,800,fp) ; k++)
+ }
+ if (rom_fp)
+ { if (1U<<log2 != fread(bank[id].back_up,1,1U<<log2,rom_fp))
+- { char err_msg[64];
++ { char err_msg[256];
+ sprintf(err_msg," insufficient rom %63s", filename);
+ sprintf(err_line,ERROR_BANK,k);
+ error(0,err_line," rom malfunction");
+@@ -402,7 +402,7 @@ for (k=1; fgets(buffer,800,fp) ; k++)
+ for (j=0;j<h;j++)
+ { id = strtoul(tok4+3*j,&p,16);
+ if (id >= 256 || (p && *p && *p != ',') || tok4[3*j]=='-' || tok4[3*j]=='+')
+- { char err_msg[32];
++ { char err_msg[256];
+ sprintf(err_line,ERROR_MAP,k);
+ sprintf(err_msg," invalid %u-th bank_id: %3s",j+1,tok4+3*j);
+ error(0,err_line,err_msg);
+@@ -414,7 +414,7 @@ for (k=1; fgets(buffer,800,fp) ; k++)
+ break;
+ }
+ if (!bank[id].type)
+- { char err_msg[32];
++ { char err_msg[256];
+ sprintf(err_line,ERROR_MAP,k);
+ sprintf(err_msg," bank_id %u not defined",id);
+ error(0,err_line,err_msg);
diff --git a/devel/z80-asm/files/patch-z80-asm.c b/devel/z80-asm/files/patch-z80-asm.c
new file mode 100644
index 000000000000..a69398534a18
--- /dev/null
+++ b/devel/z80-asm/files/patch-z80-asm.c
@@ -0,0 +1,11 @@
+--- z80-asm.c.orig 2023-12-28 16:48:47 UTC
++++ z80-asm.c
+@@ -218,7 +218,7 @@ if (!a && cross && (b=table_entries()))
+ { struct info *ele;
+ ele= malloc(b*sizeof(struct info));
+ for(a=0;next_table_entry(&ele[a].label,&ele[a].value,&ele[a].lineno);a++);
+- qsort(ele,b,sizeof(struct info),compare);
++ qsort(ele,b,sizeof(struct info),(void *)compare);
+ printf(" Cross reference:\n");
+ printf(" symbol value hexa line\n");
+ for (a=0;a<b;a++)
diff --git a/devel/z80-asm/files/patch-z80-mon.c b/devel/z80-asm/files/patch-z80-mon.c
new file mode 100644
index 000000000000..dcb175d5fe3e
--- /dev/null
+++ b/devel/z80-asm/files/patch-z80-mon.c
@@ -0,0 +1,11 @@
+--- z80-mon.c.orig 2023-12-28 16:53:32 UTC
++++ z80-mon.c
+@@ -1359,7 +1359,7 @@ main(int argc,char **argv)
+ if (labels=table_entries())
+ { ele= malloc(labels*sizeof(struct info));
+ for(a=0;next_table_entry(&ele[a].label,&ele[a].value,&ele[a].lineno);a++);
+- qsort(ele,labels,sizeof(struct info),compare_addr);
++ qsort(ele,labels,sizeof(struct info),(void *)compare_addr);
+ }
+ next_label_index=0;
+ old_pc=PC;