default: n700e_vfd

BINDIR := $(shell ./find-bindir)
EMC2_HOME := /usr

EXTRA_CFLAGS += -I$(EMC2_HOME)/include/linuxcnc
LIBDIR := $(shell ./find-libdir)
ifeq "$(LIBDIR)" ""
$(error LIBDIR not found)
endif

CFLAGS := $(EXTRA_CFLAGS) -URTAPI -U__MODULE__ -DULAPI -Os
CFLAGS += $(shell pkg-config --cflags glib-2.0)
LFLAGS := -Wl,-rpath,$(LIBDIR) -L$(LIBDIR) -llinuxcnchal
LFLAGS += $(shell pkg-config --libs glib-2.0)

include .o/n700e_vfd.d .o/n700e_modbus.d

install: n700e_vfd
	cp n700e_vfd $(BINDIR)

n700e_vfd: .o/n700e_vfd.o .o/n700e_modbus.o  -lpthread
	$(CC) -o $@ $^ $(LFLAGS)
	
.o/%.o: %.c
	mkdir -p .o
	$(CC) $(CFLAGS) -o $@ -c $<

.o/%.d: %.c
	mkdir -p .o
	$(CC) $(CFLAGS) -MM -MT "$@ $(patsubst %.d,%.o,$@)" $< -o $@.tmp \
			&& mv $@.tmp $@

clean:
	-rm -f n700e_vfd
	-rm -rf .o
