pkg(nasm-2.15.5): Add nasm 2.15.5

This commit is contained in:
Thomas Hobson 2021-03-14 01:04:46 +13:00
parent a5ba0f5ee6
commit 05dc79d9f8
No known key found for this signature in database
GPG Key ID: 9F1FD9D87950DB6F
7 changed files with 90 additions and 0 deletions

20
packages/nasm/2.15.5/build.sh vendored Executable file
View File

@ -0,0 +1,20 @@
#!/usr/bin/env bash
# Put instructions to build your package in here
PREFIX=$(realpath $(dirname $0))
mkdir -p build
cd build
curl -L "https://www.nasm.us/pub/nasm/releasebuilds/2.15.05/nasm-2.15.05.tar.gz" -o nasm.tar.gz
tar xzf nasm.tar.gz --strip-components=1
# === autoconf based ===
./configure --prefix "$PREFIX"
make -j$(nproc)
make install -j$(nproc)
cd ../
rm -rf build

21
packages/nasm/2.15.5/compile vendored Normal file
View File

@ -0,0 +1,21 @@
#!/usr/bin/env bash
# Put instructions to compile source code, remove this file if the language does not require this stage
case "${PISTON_ALIAS}" in
nasm)
nasm -f elf32 -o binary.o $*
ld -m elf_i386 binary.o -o binary
;;
nasm64)
nasm -f elf64 -o binary.o $*
ld -m elf_x86_64 binary.o -o binary
;;
*)
echo "How did you get here? (${PISTON_ALIAS})"
exit 1
;;
esac
chmod +x ./binary

4
packages/nasm/2.15.5/environment vendored Normal file
View File

@ -0,0 +1,4 @@
#!/usr/bin/env bash
# Put 'export' statements here for environment variables
export PATH=$PWD/bin:$PATH

6
packages/nasm/2.15.5/metadata.json vendored Normal file
View File

@ -0,0 +1,6 @@
{
"language": "nasm",
"version": "2.15.5",
"aliases": ["nasm64"],
"author": "Thomas Hobson <git@hexf.me>"
}

5
packages/nasm/2.15.5/run vendored Normal file
View File

@ -0,0 +1,5 @@
#!/usr/bin/env bash
# Put instructions to run the runtime
shift
./binary $*

16
packages/nasm/2.15.5/test.nasm.asm vendored Normal file
View File

@ -0,0 +1,16 @@
SECTION .DATA
good: db 'OK',10
txtlen: equ $-good
SECTION .TEXT
GLOBAL _start
_start:
mov eax,4
mov ebx,1
mov ecx,good
mov edx,txtlen
int 80h
mov eax,1
mov ebx,0
int 80h

18
packages/nasm/2.15.5/test.nasm64.asm vendored Normal file
View File

@ -0,0 +1,18 @@
SECTION .data
good: db "OK", 0x0
txtlen: equ $ - good
SECTION .text
GLOBAL _start
_start:
;sys_write
mov rax, 1
mov rdi, 1
mov rsi, good
mov rdx, txtlen
syscall
;sys_exit
mov rax, 60
mov rdi, 0
syscall