# /*****************************************************************************
#* Ȩ (C)2015, ͨѶɷ޹˾
#* 
#* ļ:     Makefile
#* ļʶ:     Makefile
#* ժҪ:     Makefile of ZTE librarys
#* ʹ÷:     void
#* 
#* ޸        汾      ޸ı        ޸          ޸
#* -----------------------------------------------------------------------------
#* 2019/09/25     V1.0        Create          xxq        
#* 
# ******************************************************************************/

#*******************************************************************************
# include ZTE library makefile
#*******************************************************************************
include $(COMMON_MK)


#*******************************************************************************
# library
#*******************************************************************************
LIB_SHARED = libvoice.so
LIB_STATIC = libvoice.a
ifeq ($(USE_VOICE_ALSA),yes)
OBJS = voice.o alsa_call.o voice_api.o voiceipc.o
else ifeq ($(USE_VOICE_BUFFER_IN_AP),yes)
OBJS = voice.o voice_buffer.o
else
OBJS = voice.o
endif
 
CFLAGS += -g
LDFLAGS += -lpthread

##############USER COMIZE END##################

CFLAGS += -I$(zte_lib_path)/libtinyalsa/include
CFLAGS += -I$(STAGEDIR)/include
CFLAGS += -I$(APP_DIR)/include
CFLAGS += -I$(LINUX_DIR)/include
CFLAGS += -fPIC

LDFLAGS_SHARED += -shared


#*******************************************************************************
# comp test app and 
#*******************************************************************************	
ifeq ($(USE_VOICE_ALSA),yes)
EXEC_voiceipc = voiceipc
endif
	
#*******************************************************************************
# objects
#*******************************************************************************
ifeq ($(USE_VOICE_ALSA),yes)
voiceipc_OBJECTS += alsa_call.o voice_api.o voiceipc.o
endif


#########################for linux######################################





CFLAGS	+= -I./include/
CFLAGS += -g -Werror=implicit-function-declaration
SHAREDFLAG := -shared -lc
LDLIBS += -L$(LIB_DIR)/libtinyalsa
LDLIBS += -ltinyalsa
LDLIBS  += -lnvram_sc -L$(zte_lib_path)/libnvram
LDLIBS  += -lsoftap -L$(zte_lib_path)/libsoftap
LDLIBS  += -lsoft_timer_sc -L$(zte_lib_path)/libsoft_timer

ifeq ($(USE_VOICE_ALSA),yes)
all: $(LIB_STATIC) $(LIB_SHARED) $(EXEC_voiceipc)

$(LIB_STATIC) : $(OBJS)
	$(AR) rcs $(LIB_STATIC) $(OBJS)

$(LIB_SHARED): $(OBJS)
	$(CC) $(LDFLAGS) $(LDFLAGS_SHARED) -o $@ $^

	
$(EXEC_voiceipc): $(voiceipc_OBJECTS)
	$(CC) $(LDFLAGS) -o $@ $(voiceipc_OBJECTS) -Wl,--start-group $(LDLIBS) -Wl,--end-group
	
clean:
	rm -f $(voiceipc_OBJECTS) $(lib_OBJECTS) $(LIB_SHARED) $(LIB_STATIC) $(EXEC_voiceipc) *.elf *.gdb *.o core

romfs:
	$(ROMFSINST) $(LIB_SHARED) /lib/$(LIB_SHARED)
	$(ROMFSINST) $(EXEC_voiceipc) /bin/$(EXEC_voiceipc)

	cp -v $(EXEC_voiceipc)    $(APP_DIR)/test_tools/
else
all: $(LIB_STATIC) $(LIB_SHARED)

$(LIB_STATIC) : $(OBJS)
	$(AR) rcs $(LIB_STATIC) $(OBJS)

$(LIB_SHARED): $(OBJS)
	$(CC) $(LDFLAGS) $(LDFLAGS_SHARED) -o $@ $^

	

	
clean:
	rm -f  $(lib_OBJECTS) $(LIB_SHARED) $(LIB_STATIC)  *.elf *.gdb *.o core

romfs:
	$(ROMFSINST) $(LIB_SHARED) /lib/$(LIB_SHARED)
endif


