#!/usr/bin/env bash
# runasm - Assemble, link, and run multiple assembly files, then delete them.
if [[ $# -eq 0 ]]; then
echo "Usage: runasm [ ...]"
echo " - Assemble, link, and run multiple assembly files, then delete them."
echo " - Name of executable is the name of the first file without extension."
exit 1
fi
object_files=()
executable_file=${1%.*}
for assembly_file in "$@"; do
# Avengers, assemble!
object_file="${assembly_file%.*}.o"
as "${assembly_file}" -o "${object_file}"
if [[ $? -ne 0 ]]; then
exit 1
fi
object_files+=("${object_file}")
done
# Link
ld "${object_files[@]}" -o "${executable_file}"
if [[ $? -ne 0 ]]; then
exit 1
fi
# Run, remove created files, and return exit code
./"${executable_file}"
exit_code=$?
rm "${object_files[@]}" "${executable_file}" > /dev/null 2>&1
exit "${exit_code}"
You must log in or register to comment.
Isn’t the whole point of assembly that there is no compiler?
I mean they’re not wrong…
This is why my next book will be titled “how to cook dinner without a compiler, GCC 4 to GCC 11 compatible!”
I was going to click on this until I saw it was a video.
I need this on a t-shirt
I’m still super confused by this user’s posts lol. I get that (some? most?) of it is satire… but then why all social media engagement farming hashtag nonsense? Or is this all part of the satire…?
Perhaps we should reconsider the definition of write-only scripts.
Here is an alternative Piped link(s):
https://piped.video/watch?v=kNKuRdoaNII
Piped is a privacy-respecting open-source alternative frontend to YouTube.
I’m open-source; check me out at GitHub.