Files
2026-08-24 10:03:24 +08:00

124 lines
4.0 KiB
Makefile

LOCAL_PATH:=$(shell pwd)
LIB_DIR := $(TARGET_DIR)/usr/lib
AML_MP_ROOT_PATH = $(LOCAL_PATH)
AML_MP_PLAYER_SRC := \
player/Aml_MP.cpp \
player/Aml_MP_Player.cpp \
player/Aml_MP_PlayerImpl.cpp \
player/AmlPlayerBase.cpp \
player/AmlTsPlayer.cpp \
player/AmlDummyTsPlayer.cpp \
AML_MP_CAS_SRC := \
cas/Aml_MP_CAS.cpp \
cas/AmlCasBase.cpp \
cas/AmlDvbCasHal.cpp \
cas/AmCasLibWrapper.cpp \
cas/vmx_iptvcas/AmlVMXIptvCas_V2.cpp \
cas/vmx_webcas/AmlVMXWebCas.cpp \
cas/wv_iptvcas/AmlWVIptvCas_V2.cpp \
AML_MP_DVR_SRC := \
dvr/Aml_MP_DVR.cpp \
dvr/AmlDVRPlayer.cpp \
dvr/AmlDVRRecorder.cpp
AML_MP_UTILS_SRC := \
utils/AmlMpAtomizer.cpp \
utils/AmlMpBitReader.cpp \
utils/AmlMpBuffer.cpp \
utils/AmlMpConfig.cpp \
utils/AmlMpEventHandler.cpp \
utils/AmlMpEventLooper.cpp \
utils/AmlMpEventLooperRoster.cpp \
utils/AmlMpLooper.cpp \
utils/AmlMpMessage.cpp \
utils/AmlMpRefBase.cpp \
utils/AmlMpStrongPointer.cpp \
utils/AmlMpThread.cpp \
utils/AmlMpUtils.cpp \
utils/AmlMpChunkFifo.cpp \
utils/Amlsysfsutils.cpp \
AML_MP_DEMUX_SRC := \
demux/AmlDemuxBase.cpp \
demux/AmlHwDemux.cpp \
demux/AmlSwDemux.cpp \
demux/AmlTsParser.cpp \
AML_MP_SRCS := \
$(AML_MP_PLAYER_SRC) \
$(AML_MP_DVR_SRC) \
$(AML_MP_UTILS_SRC) \
$(AML_MP_DEMUX_SRC) \
$(AML_MP_CAS_SRC)
AML_MP_TEST_SUPPORTER_SRCS := \
tests/amlMpTestSupporter/AmlMpTestSupporter.cpp \
tests/amlMpTestSupporter/ParserReceiver.cpp \
tests/amlMpTestSupporter/TestModule.cpp \
tests/amlMpTestSupporter/DVRPlayback.cpp \
tests/amlMpTestSupporter/DVRRecord.cpp \
tests/amlMpTestSupporter/Playback.cpp \
tests/amlMpTestSupporter/TestUtils.cpp \
tests/amlMpTestSupporter/source/Source.cpp \
tests/amlMpTestSupporter/source/DvbSource.cpp \
tests/amlMpTestSupporter/source/UdpSource.cpp \
tests/amlMpTestSupporter/source/FileSource.cpp \
#tests/amlMpTestSupporter/demux/AmlDemuxBase.cpp \
tests/amlMpTestSupporter/demux/AmlSwDemux.cpp \
tests/amlMpTestSupporter/demux/AmlHwDemux.cpp \
AML_MP_PLAYER_DEMO_SRCS := tests/amlMpPlayerDemo/AmlMpPlayerDemo.cpp
AML_MP_OBJS := $(patsubst %.cpp,%.o,$(AML_MP_SRCS))
AML_MP_TEST_SUPPORTER_OBJS := $(patsubst %.cpp,%.o,$(AML_MP_TEST_SUPPORTER_SRCS))
AML_MP_PLAYER_DEMO_OBJS := $(patsubst %.cpp,%.o,$(AML_MP_PLAYER_DEMO_SRCS))
AML_MP_INC := $(AML_MP_ROOT_PATH)/include \
$(AML_MP_ROOT_PATH)/ \
$(AML_MP_ROOT_PATH)/tests/amlMpTestSupporter/ \
$(AML_MP_ROOT_PATH)/tests/amlMpTestSupporter/demux/ \
$(STAGING_DIR)/usr/include/libdvr \
$(AML_MP_ROOT_PATH)/../../vendor/amlogic/aml_commonlib/aml_mp/include/ \
$(AML_MP_ROOT_PATH)/../../vendor/amlogic/aml_commonlib/liblog/include/ \
$(AML_MP_ROOT_PATH)/../../vendor/amlogic/aml_commonlib/libbinder/include/ \
CFLAGS += $(patsubst %,-I%,$(AML_MP_INC))
LDFLAGS += -lmediahal_tsplayer -L. -lamdvr -llog -lcutils -lpthread -std=c++17 -D__unused=
MP_LDFLAGS += -laml_mp_sdk -L .
SUPPORT_LDFLAGS += -lamlMpTestSupporter -L.
all: libaml_mp_sdk.so amlMpPlayerDemo
libaml_mp_sdk.so :$(AML_MP_OBJS)
$(CXX) -o $@ $^ $(LDFLAGS) -shared -fPIC -lm -lz -ldl
libamlMpTestSupporter.a : libaml_mp_sdk.so $(AML_MP_TEST_SUPPORTER_OBJS)
$(AR) cq $@ $(AML_MP_TEST_SUPPORTER_OBJS)
$(AML_MP_OBJS) : %.o : %.cpp
$(CXX) -c $< -o $@ $(CFLAGS) $(LDFLAGS) -fPIC
$(AML_MP_TEST_SUPPORTER_OBJS) : %.o : %.cpp
$(CXX) -c $< -o $@ $(CFLAGS) $(MP_LDFLAGS) $(LDFLAGS) -fPIC
$(AML_MP_PLAYER_DEMO_OBJS) : %.o : %.cpp
$(CXX) -c $< -o $@ $(CFLAGS) $(SUPPORT_LDFLAGS) $(MP_LDFLAGS) $(LDFLAGS) -fPIC
amlMpPlayerDemo : libaml_mp_sdk.so libamlMpTestSupporter.a $(AML_MP_PLAYER_DEMO_OBJS)
$(CXX) $(AML_MP_PLAYER_DEMO_OBJS) -o $@ $(CFLAGS) $(SUPPORT_LDFLAGS) $(MP_LDFLAGS) $(LDFLAGS) -lm -lz -g
.PHONY: install
install:
install -m 755 -D libaml_mp_sdk.so -t $(TARGET_DIR)/usr/lib/
.PHONY: clean
clean:
rm -rf $(shell find -name "*.o")
rm -rf $(shell find -name "*.a")
rm -f libaml_mp_sdk.so
rm -f amlMpPlayerDemo
# rm -f $(TARGET_DIR)/usr/lib/libaml_mp_sdk.so