summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--devel/Makefile1
-rw-r--r--devel/vasm/Makefile49
-rw-r--r--devel/vasm/distinfo2
-rw-r--r--devel/vasm/pkg-descr24
-rw-r--r--devel/vasm/pkg-plist67
5 files changed, 143 insertions, 0 deletions
diff --git a/devel/Makefile b/devel/Makefile
index 53ad71b60d07..a4059166ec00 100644
--- a/devel/Makefile
+++ b/devel/Makefile
@@ -4744,6 +4744,7 @@
SUBDIR += valgrind
SUBDIR += valgrind-devel
SUBDIR += varconf
+ SUBDIR += vasm
SUBDIR += vera++
SUBDIR += viewvc
SUBDIR += violet
diff --git a/devel/vasm/Makefile b/devel/vasm/Makefile
new file mode 100644
index 000000000000..3b8ba685aa79
--- /dev/null
+++ b/devel/vasm/Makefile
@@ -0,0 +1,49 @@
+# Created by: Uffe Jakobsen <uffe@uffe.org>
+# $FreeBSD$
+
+PORTNAME= vasm
+PORTVERSION= 1.7a
+CATEGORIES= devel
+MASTER_SITES= http://sun.hasenbraten.de/vasm/release/
+DISTNAME= ${PORTNAME}
+
+MAINTAINER= uffe@uffe.org
+COMMENT= Portable 6502 6800 arm c16x jagrisc m68k ppc vidcore x86 z80 assembler
+
+LEGAL_TEXT= This archive may be redistributed without modifications and used for non-commercial purposes.
+
+USES= gmake pathfix
+
+CPU_LIST= 6502 6800 arm c16x jagrisc m68k ppc test vidcore x86 z80
+SYNTAX_LIST= std mot oldstyle test
+OUTPUT_LIST= aout bin elf hunk test tos vobj
+
+do-build:
+.for CPU in ${CPU_LIST}
+.for SYNTAX in ${SYNTAX_LIST}
+ ${GMAKE} -C ${WRKSRC} CC=${CC} CPU=${CPU} SYNTAX=${SYNTAX} >/dev/null 2>&1
+.endfor
+.endfor
+
+do-install:
+ ${INSTALL_PROGRAM} ${WRKSRC}/vobjdump ${STAGEDIR}${PREFIX}/bin
+.for CPU in ${CPU_LIST}
+.for SYNTAX in ${SYNTAX_LIST}
+ ${INSTALL_PROGRAM} ${WRKSRC}/vasm${CPU}_${SYNTAX} ${STAGEDIR}${PREFIX}/bin
+.endfor
+.endfor
+ ${MKDIR} ${STAGEDIR}${DOCSDIR}
+.for CPU in ${CPU_LIST}
+.for SYNTAX in ${SYNTAX_LIST}
+ -test -f ${WRKSRC}/doc/cpu_${CPU}.texi && ${INSTALL_MAN} ${WRKSRC}/doc/cpu_${CPU}.texi ${STAGEDIR}${DOCSDIR}
+ -test -f ${WRKSRC}/doc/syntax_${SYNTAX}.texi && ${INSTALL_MAN} ${WRKSRC}/doc/syntax_${SYNTAX}.texi ${STAGEDIR}${DOCSDIR}
+.for OUTPUT in ${OUTPUT_LIST}
+ -test -f ${WRKSRC}/doc/output_${OUTPUT}.texi && ${INSTALL_MAN} ${WRKSRC}/doc/output_${OUTPUT}.texi ${STAGEDIR}${DOCSDIR}
+.endfor
+.endfor
+.endfor
+ ${INSTALL_MAN} ${WRKSRC}/doc/vasm.texi ${STAGEDIR}${DOCSDIR}
+ ${INSTALL_MAN} ${WRKSRC}/doc/vasm_main.texi ${STAGEDIR}${DOCSDIR}
+ ${INSTALL_MAN} ${WRKSRC}/doc/interface.texi ${STAGEDIR}${DOCSDIR}
+
+.include <bsd.port.mk>
diff --git a/devel/vasm/distinfo b/devel/vasm/distinfo
new file mode 100644
index 000000000000..4a94a0dbd39e
--- /dev/null
+++ b/devel/vasm/distinfo
@@ -0,0 +1,2 @@
+SHA256 (vasm.tar.gz) = d97cc9e3eb1f175e1187ef0773d8f3a267bdf97939ef0b97a719a98b8de7b6be
+SIZE (vasm.tar.gz) = 337992
diff --git a/devel/vasm/pkg-descr b/devel/vasm/pkg-descr
new file mode 100644
index 000000000000..28ea2c416e8d
--- /dev/null
+++ b/devel/vasm/pkg-descr
@@ -0,0 +1,24 @@
+vasm is a portable and retargetable assembler to create linkable
+objects in various formats or absolute code.
+Multiple CPU-, syntax and output-modules can be selected.
+
+Currently the following CPUs are officially supported by vasm:
+
+ M680x0 family (including M6888x, M68851 and CPU32)
+ ColdFire family (all models of V2, V3, V4, V4e)
+ 80x86 family (IA32 8/16/32 bit, using MIT-syntax)
+ PowerPC family (POWER, 40x, 6xx, 7xx, 7xxx, 860, e300)
+ ARM (architecture ARMv1 to ARMv4, including THUMB mode)
+ Jaguar RISC (GPU and DSP instruction sets)
+ Z80 family (Z80, 8080, GBZ80, 64180, RCM2/3/4k)
+ C16x/ST10
+ 6502 family
+ 6800 family (6800, 68HC11)
+
+These syntax flavours are supported:
+
+ Standard MIT (GNU-as style) syntax
+ Motorola/Freescale 68k syntax (Devpac compatible)
+ Old 8-bit style syntax
+
+WWW: http://sun.hasenbraten.de/vasm/
diff --git a/devel/vasm/pkg-plist b/devel/vasm/pkg-plist
new file mode 100644
index 000000000000..dda79b4f6996
--- /dev/null
+++ b/devel/vasm/pkg-plist
@@ -0,0 +1,67 @@
+bin/vasm6502_mot
+bin/vasm6502_oldstyle
+bin/vasm6502_std
+bin/vasm6502_test
+bin/vasm6800_mot
+bin/vasm6800_oldstyle
+bin/vasm6800_std
+bin/vasm6800_test
+bin/vasmarm_mot
+bin/vasmarm_oldstyle
+bin/vasmarm_std
+bin/vasmarm_test
+bin/vasmc16x_mot
+bin/vasmc16x_oldstyle
+bin/vasmc16x_std
+bin/vasmc16x_test
+bin/vasmjagrisc_mot
+bin/vasmjagrisc_oldstyle
+bin/vasmjagrisc_std
+bin/vasmjagrisc_test
+bin/vasmm68k_mot
+bin/vasmm68k_oldstyle
+bin/vasmm68k_std
+bin/vasmm68k_test
+bin/vasmppc_mot
+bin/vasmppc_oldstyle
+bin/vasmppc_std
+bin/vasmppc_test
+bin/vasmtest_mot
+bin/vasmtest_oldstyle
+bin/vasmtest_std
+bin/vasmtest_test
+bin/vasmvidcore_mot
+bin/vasmvidcore_oldstyle
+bin/vasmvidcore_std
+bin/vasmvidcore_test
+bin/vasmx86_mot
+bin/vasmx86_oldstyle
+bin/vasmx86_std
+bin/vasmx86_test
+bin/vasmz80_mot
+bin/vasmz80_oldstyle
+bin/vasmz80_std
+bin/vasmz80_test
+bin/vobjdump
+%%PORTDOCS%%%%DOCSDIR%%/cpu_6502.texi
+%%PORTDOCS%%%%DOCSDIR%%/cpu_6800.texi
+%%PORTDOCS%%%%DOCSDIR%%/cpu_arm.texi
+%%PORTDOCS%%%%DOCSDIR%%/cpu_c16x.texi
+%%PORTDOCS%%%%DOCSDIR%%/cpu_jagrisc.texi
+%%PORTDOCS%%%%DOCSDIR%%/cpu_m68k.texi
+%%PORTDOCS%%%%DOCSDIR%%/cpu_ppc.texi
+%%PORTDOCS%%%%DOCSDIR%%/cpu_x86.texi
+%%PORTDOCS%%%%DOCSDIR%%/cpu_z80.texi
+%%PORTDOCS%%%%DOCSDIR%%/interface.texi
+%%PORTDOCS%%%%DOCSDIR%%/output_aout.texi
+%%PORTDOCS%%%%DOCSDIR%%/output_bin.texi
+%%PORTDOCS%%%%DOCSDIR%%/output_elf.texi
+%%PORTDOCS%%%%DOCSDIR%%/output_hunk.texi
+%%PORTDOCS%%%%DOCSDIR%%/output_test.texi
+%%PORTDOCS%%%%DOCSDIR%%/output_tos.texi
+%%PORTDOCS%%%%DOCSDIR%%/output_vobj.texi
+%%PORTDOCS%%%%DOCSDIR%%/syntax_mot.texi
+%%PORTDOCS%%%%DOCSDIR%%/syntax_oldstyle.texi
+%%PORTDOCS%%%%DOCSDIR%%/syntax_std.texi
+%%PORTDOCS%%%%DOCSDIR%%/vasm.texi
+%%PORTDOCS%%%%DOCSDIR%%/vasm_main.texi