##########################################
#
# Created by jiaqiang.ye@lnxall.com
#
# Simple Makefile for libutils for Lua
#
# 2022/01/14
#
##########################################

# Disable builtin rules
MAKEFLAGS    += -r -R

# Compilation flags
MYCFLAGS     := $(CFLAGS) -Wall -fPIC -D_GNU_SOURCE -O2
MYLDFLAGS    := $(LDFLAGS) -ldyutils
PCLNT :=
ifneq ($(wildcard $(COLNT_DIR)),)
PCLNT += pclnt_wrapper
$(info PCLNT-TING PACKAGE lua-libutils)
endif

TARGETS      := invoker.so shmem.so eptimer.so modbus.so tty_rw
.PHONY: all clean

all: $(TARGETS)

tty_rw: tty_rw.c
	$(PCLNT) $(CC) $(CFLAGS) -o $@ $< $(LDFLAGS)

modbus.so: lua-modbus.c
	$(PCLNT) $(CC) $(MYCFLAGS) -shared -o $@ $< $(LDFLAGS) -lmodbus

invoker.so: invoker.c
	$(PCLNT) $(CC) $(MYCFLAGS) -shared -o $@ $< $(LDFLAGS)

%.so: %.c
	$(PCLNT) $(CC) $(MYCFLAGS) -shared -o $@ $< $(MYLDFLAGS)

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