summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorWen Heping <wen@FreeBSD.org>2014-10-05 14:50:37 +0000
committerWen Heping <wen@FreeBSD.org>2014-10-05 14:50:37 +0000
commit32c60786a0f7c981a4284ff8af372b980aa39c58 (patch)
tree275be6bd26b3938c7294f1d573523324d9b833f8
parentNew port: www/py-flask-sockets (diff)
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/ PR: 194152 Submitted by: uffe@uffe.org
Notes
Notes: svn path=/head/; revision=370092
-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