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
This commit is contained in:
Wen Heping 2014-10-05 14:50:37 +00:00
parent d69e9ed7c2
commit 32c60786a0
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=370092
5 changed files with 143 additions and 0 deletions

View file

@ -4744,6 +4744,7 @@
SUBDIR += valgrind
SUBDIR += valgrind-devel
SUBDIR += varconf
SUBDIR += vasm
SUBDIR += vera++
SUBDIR += viewvc
SUBDIR += violet

49
devel/vasm/Makefile Normal file
View file

@ -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>

2
devel/vasm/distinfo Normal file
View file

@ -0,0 +1,2 @@
SHA256 (vasm.tar.gz) = d97cc9e3eb1f175e1187ef0773d8f3a267bdf97939ef0b97a719a98b8de7b6be
SIZE (vasm.tar.gz) = 337992

24
devel/vasm/pkg-descr Normal file
View file

@ -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/

67
devel/vasm/pkg-plist Normal file
View file

@ -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