blob: 4d8cbd00cd78bf73b7a2cc78c1d2ae71384ef315 [file] [log] [blame]
# ---------------------------------------------------------------------------------
# MM-VIDEO-OSS-8K-VDEC
# ---------------------------------------------------------------------------------
# cross-compiler flags
CFLAGS += -Wall
CFLAGS += -Wundef
CFLAGS += -Wstrict-prototypes
CFLAGS += -Wno-trigraphs
#CFLAGS += -Werror
# cross-compile flags specific to shared objects
CFLAGS_SO += -fpic
# required pre-processor flags
CPPFLAGS += -D__packed__=
CPPFLAGS += -DIMAGE_APPS_PROC
CPPFLAGS += -DFEATURE_Q_SINGLE_LINK
CPPFLAGS += -DFEATURE_Q_NO_SELF_QPTR
CPPFLAGS += -DFEATURE_LINUX
CPPFLAGS += -DFEATURE_NATIVELINUX
CPPFLAGS += -DFEATURE_DSM_DUP_ITEMS
CPPFLAGS += -DPROFILE_DECODER
CPPFLAGS += -DUSE_PMEM_ADSP_CACHED
CPPFLAGS += -Du32="unsigned int"
CPPFLAGS += -Du8="unsigned char"
CPPFLAGS += -Iinc
CPPFLAGS += -Isrc
# linker flags
LDFLAGS += -L$(SYSROOT)/usr/lib
# linker flags for shared objects
LDFLAGS_SO += -shared
# defintions
LIBMAJOR := $(basename $(basename $(LIBVER)))
LIBINSTALLDIR := $(DESTDIR)usr/lib
BININSTALLDIR := $(DESTDIR)usr/bin
# ---------------------------------------------------------------------------------
# BUILD
# ---------------------------------------------------------------------------------
all: libOmxVdec.so.$(LIBVER) mm-vdec-omx-test
install:
echo "installing opensource video decoder in $(DESTDIR)"
if [ ! -d $(LIBINSTALLDIR) ]; then mkdir -p $(LIBINSTALLDIR); fi
if [ ! -d $(BININSTALLDIR) ]; then mkdir -p $(BININSTALLDIR); fi
install -m 555 libOmxVdec.so.$(LIBVER) $(LIBINSTALLDIR)
cd $(LIBINSTALLDIR) && ln -s libOmxVdec.so.$(LIBVER) libOmxVdec.so.$(LIBMAJOR)
cd $(LIBINSTALLDIR) && ln -s libOmxVdec.so.$(LIBMAJOR) libOmxVdec.so
install -m 555 mm-vdec-omx-test $(BININSTALLDIR)
# ---------------------------------------------------------------------------------
# COMPILE LIBRARY
# ---------------------------------------------------------------------------------
SRCS := src/adsp.c
SRCS += src/pmem.c
SRCS += src/qutility.c
SRCS += src/vdec.cpp
SRCS += src/omx_vdec.cpp
SRCS += src/omx_vdec_linux.cpp
SRCS += src/omx_vdec_inpbuf.cpp
SRCS += src/MP4_Utils.cpp
SRCS += src/H264_Utils.cpp
LDLIBS := -lpthread
LDLIBS += -lrt
LDLIBS += -lstdc++
LDLIBS += -lOmxCore
libOmxVdec.so.$(LIBVER): $(SRCS)
$(CC) $(CPPFLAGS) $(CFLAGS) $(CFLAGS_SO) $(LDFLAGS_SO) -Wl,-soname,libOmxVdec.so.$(LIBMAJOR) -o $@ $^ $(LDFLAGS) $(LDLIBS)
# ---------------------------------------------------------------------------------
# COMPILE TEST APP
# ---------------------------------------------------------------------------------
TEST_LDLIBS := -lpthread
TEST_LDLIBS += -ldl
TEST_LDLIBS += -lOmxCore
TEST_SRCS := test/omx_vdec_test.cpp
TEST_SRCS += test/queue.c
mm-vdec-omx-test: libOmxVdec.so.$(LIBVER) $(TEST_SRCS)
$(CC) $(CFLAGS) $(CPPFLAGS) $(LDFLAGS) -o $@ $^ $(TEST_LDLIBS)
# ---------------------------------------------------------------------------------
# END
# ---------------------------------------------------------------------------------