#
#Makefile for Hi35xx Midea library
#
SOURCES = $(wildcard *.c ./lib_src/*.c)
HEADERS = $(wildcard *.h)
OBJS = $(patsubst %.c, %.o, $(SOURCES))
#TOOL_PREFIX = arm-hisiv300-linux-
TOOL_PREFIX = arm-hisiv400-linux-
COMPILE_TOOLS = $(TOOL_PREFIX)gcc
AR = $(TOOL_PREFIX)ar
RANLIB = $(TOOL_PREFIX)ranlib
TARGET_MAP = libhisdk_hi3536_single_dbg.map
IFLAG = -I. -I../include/include_ky2015 -I../inc -I../common \
-D_REENTRANT -DDAVINCI -DDEV -DDSP -g \
-DARMLIB
#-I ./extdrv
CFLAGS = $(IFLAG) -D_REENTRANT -O2 -Wall -D_GNU_SOURCE
CFLAGS += -march=armv7-a -mfloat-abi=softfp -mfpu=neon-vfpv4
LDFLAGS = -L. -L../lib -lpthread
CHIP_ARCH?=hi3515
CFLAGS += -D$(CHIP_ARCH)
LIB = libhisdk_hi3536_single_dbg.a
ifeq($(LANG), 3)
CFLAGS += -DENGLISH_VERSION
else
CFLAGS += -DCHINESES_VERSION
endif
ifeq ($(MAKECMDGOALS), simp)
CFLAGS += -DDVR_VERSION
endif
CFLAGS += -DHI3536_DSP
LIBS += ./lib/lib_hi3536_single_V400/libmpi.a \
# ./lib/lib_VoiceEngine.a \
# ./lib/lib_amr_spc.a \
# ./lib/lib_amr_fipop.a \
# ./lib/lib_aec.a \
# ./lib/lib_aacdec.a \
# ./lib/lib_aacenc.a \
# ./lib/libresampler.a \
# ./lib/libloadbmp.a \
./lib/lib_hi3536_single_V400/libupvqe.a \
./lib/lib_hi3536_single_V400/libdnvqe.a \
./lib/lib_hi3536_single_V400/libtde.a \
-lhive_RES.so
ifeq($(CHIP_ARCH), hi3520)
LIBS += lib/libpciv.abi
endif
all : $(LIB)
rm -f init.o
$(LIB) : $(OBJS)
$(AR) r $@ $(OBJS)
$(RANLLIB) $@
# $(COMPILE_TOOLS) -o $@ $(OBJS) $(LDFLAGS)
# cp $@ ../demo/ -rf
$(COMPILE_TOOLS) -Wl, -Map=$(TARGET_MAP) $(OBJS) -shared -o libhisdk_hi3536_single_dbg.so #-shared用来创建一个动态链接库
%.o:%.c
# $(COMPILE_TOOLS) $(CFLAGS) -c $^ -o $@
$(COMPILE_TOOLS) $(CFLAGS) -fPIC -c $^ -o $@ #-fPIC选项作用于编译阶段,在生成目标文件时就得使用该选项,以生成位置无关的代码。
clean:
rm -f *.o $(LIB) ./$(TARGET_MAP)
rm -f ./lib_src/*.o
转载于:https://www.cnblogs.com/cumtchw/p/10875368.html