1DESTDIR ?= 2PREFIX ?= /usr/local 3 4CC ?= gcc 5CFLAGS ?= -O3 6LDFLAGS ?= 7 8 9# ===== 10_PLUGIN = libjanus_ustreamer.so 11 12_CFLAGS = -fPIC -MD -c -std=c11 -Wall -Wextra -D_GNU_SOURCE $(shell pkg-config --cflags glib-2.0) $(CFLAGS) 13_LDFLAGS = -shared -lm -pthread -lrt -ljansson $(shell pkg-config --libs glib-2.0) $(LDFLAGS) 14 15_SRCS = $(shell ls src/*.c) 16 17_BUILD = build 18 19 20define optbool 21$(filter $(shell echo $(1) | tr A-Z a-z), yes on 1) 22endef 23 24 25WITH_PTHREAD_NP ?= 1 26ifneq ($(call optbool,$(WITH_PTHREAD_NP)),) 27override _CFLAGS += -DWITH_PTHREAD_NP 28endif 29 30 31# ===== 32$(_PLUGIN): $(_SRCS:%.c=$(_BUILD)/%.o) 33 $(info == SO $@) 34 @ $(CC) $^ -o $@ $(_LDFLAGS) 35 36 37$(_BUILD)/%.o: %.c 38 $(info -- CC $<) 39 @ mkdir -p $(dir $@) || true 40 @ $(CC) $< -o $@ $(_CFLAGS) 41 42 43 44install: $(_PLUGIN) 45 mkdir -p $(DESTDIR)$(PREFIX)/lib/ustreamer/janus 46 install -m755 $(_PLUGIN) $(DESTDIR)$(PREFIX)/lib/ustreamer/janus/$(PLUGIN) 47 48 49clean: 50 rm -rf $(_PLUGIN) $(_BUILD) 51 52 53_OBJS = $(_SRCS:%.c=$(_BUILD)/%.o) 54-include $(_OBJS:%.o=%.d) 55