include ../Config.mk

LDFLAGS += -L ../libvmrt

LDLIBS_VM = -lvmrt -lm -ldl
LDLIBS_VM += $(LDLIBS)
CFLAGS += -rdynamic

LIBVMRT = libvmrt.a
LIBOBJS = vm.o vmlibcall.o
VM_TEST = vm-test
VM_LIB_TEST = vm-lib-test

TARGETS = $(LIBVMRT) $(VM_TEST) $(VM_LIB_TEST)

.PHONY: all clean

all: $(TARGETS)

%.o: %.c
	$(CC) $(CFLAGS) -c $< -o $@
	
$(LIBVMRT): $(LIBOBJS)
	$(AR) -r $@ $^

$(VM_TEST): $(VM_TEST).o $(LIBVMRT)
	$(CC) $< $(CFLAGS) $(LDFLAGS) -o $@ $(LDLIBS_VM)

$(VM_LIB_TEST): $(VM_LIB_TEST).o $(LIBVMRT)
	$(CC) $< $(CFLAGS) $(LDFLAGS) -o $@ $(LDLIBS_VM)

clean:
	rm -rf *.o *.c~ *.h~ $(TARGETS)
	
