#
# Copyright (C) 2022 IOPSYS Software Solutions AB
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
#

# Platform independent
HEADERS  := $(shell ls ./*.h)
SRCS     := $(shell ls ./*.c)
LIBVOICE := libvoice.so

CFLAGS  += -O2 -fcaller-saves -fsection-anchors
CFLAGS  += -Wall -Werror
CFLAGS  += -Wextra -std=gnu99
CFLAGS  += -DBOS_OS_LINUXUSER -DBOS_CFG_TIME -DNTR_SUPPORT -DWITH_UBUS
CFLAGS  += -I./

# Platform specific
CFLAGS  += $(LIBVOICE_CFLAGS)

OBJS := $(SRCS:.c=.o)
LIBS += $(LIBVOICE_LIBS)
LIBS += -lpthread -lpicoevent

all: debug $(LIBVOICE)

%.o: %.c $(HEADERS) Makefile
	$(CC) $(CFLAGS) -fPIC -c -o $@ $<

$(LIBVOICE): $(OBJS)
	$(CC) $(CFLAGS) -shared $(LDFLAGS) -o $@ $^ $(LIBS)

clean:
	rm -f *.o $(LIBVOICE)

debug:
	@echo "HEADERS=$(HEADERS)"
	@echo "SRCS=$(SRCS)"
	@echo "OBJS=$(OBJS)"
	@echo "LIBS=$(LIBS)"
	@echo "CFLAGS=$(CFLAGS)"

.PHONY: debug all clean
