36 lines
1.3 KiB
Makefile
36 lines
1.3 KiB
Makefile
.PHONY: help default
|
|
|
|
default: help
|
|
|
|
help: ## Print this help message
|
|
@M=$$(perl -ne 'm/^((\w|-)*):.*##/ && print length($$1)."\n"' Makefile | \
|
|
sort -nr | head -1) && \
|
|
perl -ne "m/^((\w|-)*):.*##\s*(.*)/ && print(sprintf(\"%s: %s\t%s\n\", \$$1, \" \"x($$M-length(\$$1)), \$$3))" Makefile
|
|
|
|
hello32: hello32.s ## Build the 32 bit version of Project 2
|
|
nasm -f elf hello32.s
|
|
ld -m elf_i386 -o hello32 hello32.o
|
|
|
|
hello64: hello64.s ## Build the 32 bit version of Project 2
|
|
nasm -f elf64 hello64.s
|
|
ld -o hello64 hello64.o
|
|
|
|
counted-hello32: counted-hello32.s ## Build the 32 bit version of Project 3
|
|
nasm -f elf counted-hello32.s
|
|
ld -m elf_i386 -o counted-hello32 counted-hello32.o
|
|
|
|
counted-hello64: counted-hello64.s ## Build the 32 bit version of Project 3
|
|
nasm -f elf64 counted-hello64.s
|
|
ld -o counted-hello64 counted-hello64.o
|
|
|
|
subroutine-hello32: subroutine-hello32.s ## Build the 32 bit version of Project 3
|
|
nasm -f elf subroutine-hello32.s
|
|
ld -m elf_i386 -o subroutine-hello32 subroutine-hello32.o
|
|
|
|
subroutine-hello64: subroutine-hello64.s ## Build the 32 bit version of Project 3
|
|
nasm -f elf64 subroutine-hello64.s
|
|
ld -o subroutine-hello64 subroutine-hello64.o
|
|
|
|
clean: ## Delete all built and intermediate features
|
|
rm -f hello32 hello64 counted-hello32 counted-hello64 *.o
|