-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathMakefile~
42 lines (32 loc) · 786 Bytes
/
Makefile~
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
EXECUTABLE=test # nombre del ejecutable a generar
## CONFIG:
NASM=nasm # por defecto en /usr/bin/nasm
LD=ld # por defecto en /usr/bin/ld
FORMAT=elf # formato de ensamblado; vea: `$nasm -hf`
ARCH=x86_64 # arquitectura de ensamblado
EMULATOR=elf_i386 # emulador de linkeado
# Folder donde se guardan los binarios
BIN=bin
## ARGS:
LD_ARGS=-m $(EMULATOR) -o $(EXECUTABLE) -A $(ARCH)
NASM_ARGS=-f $(FORMAT)
all: assembly copy
assembly: cal.o
$(LD) $(LD_ARGS) cal.o
calendar.o: calendario.asm
$(NASM) $(NASM_ARGS) calendario.asm
copy:
@if [ ! -d $(BIN) ]; \
then \
mkdir $(BIN); \
fi;
@mv *.o $(BIN)
@mv $(EXECUTABLE) $(BIN)
@echo "DONE"
@echo "Para ejecutar:"
@echo " :: > $(BIN)/$(EXECUTABLE)"
clean:
rm -rf $(BIN)
rm -f *o
rm -f $(EXECUTABLE)
@echo "DONE"