
ASMS=$(wildcard *.asm)
SRCS=$(wildcard *.c)
EXECS=z_c do_c
OBJS_ASM=$(patsubst %.asm,%.o,$(ASMS))
OBJS_C=$(patsubst %.c,%.o,$(SRCS))
OBJS=$(OBJS_ASM) $(OBJS_C)

all: execs

execs: $(EXECS)

%.o: %.asm
	nasm -f elf -w+orphan-labels -g -o $@ $<

%.o: %.c
	gcc -c -o $@ $<

z_c: main_c.o z_c_asm.o
	gcc -o z_c main_c.o z_c_asm.o

do_c: main_asm.o do_c.o
	ld -o do_c main_asm.o do_c.o -static -lc
	
clean:
	rm -f $(EXECS) $(OBJS)
