44 lines
1.1 KiB
Makefile
44 lines
1.1 KiB
Makefile
#
|
|
# Makefile for libgstamlplanesink.so
|
|
#
|
|
|
|
TARGET = libgstamlplanesink.so
|
|
|
|
OUT_DIR ?= .
|
|
LIBDIR ?= /usr/lib
|
|
PKG_CONFIG ?= pkg-config
|
|
|
|
GST_PKGS = gstreamer-1.0 gstreamer-base-1.0 gstreamer-video-1.0 \
|
|
gstreamer-allocators-1.0 libdrm
|
|
|
|
SRCS = $(wildcard src/*.c)
|
|
OBJS = $(patsubst src/%.c, $(OUT_DIR)/%.o, $(SRCS))
|
|
|
|
GST_CFLAGS := $(shell $(PKG_CONFIG) --cflags $(GST_PKGS))
|
|
GST_LIBS := $(shell $(PKG_CONFIG) --libs $(GST_PKGS))
|
|
ifeq ($(strip $(GST_LIBS)),)
|
|
$(error $(PKG_CONFIG) found no development files for: $(GST_PKGS))
|
|
endif
|
|
|
|
# override: yocto hands CFLAGS/LDFLAGS over in the environment, but a
|
|
# command-line CFLAGS= must not silently drop the pkg-config flags either
|
|
override CFLAGS += -Wall -fPIC -fvisibility=hidden $(GST_CFLAGS)
|
|
override LDFLAGS += $(GST_LIBS)
|
|
|
|
all: $(OUT_DIR)/$(TARGET)
|
|
|
|
$(OUT_DIR)/$(TARGET): $(OBJS)
|
|
$(CC) $^ $(LDFLAGS) -shared -Wl,-soname,$(TARGET) -o $@
|
|
|
|
$(OUT_DIR)/%.o: src/%.c $(wildcard src/*.h)
|
|
$(CC) -c $(CFLAGS) $< -o $@
|
|
|
|
install:
|
|
install -d $(DESTDIR)$(LIBDIR)/gstreamer-1.0
|
|
install -m 0755 $(OUT_DIR)/$(TARGET) $(DESTDIR)$(LIBDIR)/gstreamer-1.0/
|
|
|
|
clean:
|
|
rm -f $(OBJS) $(OUT_DIR)/$(TARGET)
|
|
|
|
.PHONY: all install clean
|