您的位置:首页 > 移动开发 > Android开发

android telephony 模块makefile, .config , Rules.make

2010-08-03 16:57 447 查看
# Make variables (CC, etc...)

AS = $(CROSS_COMPILE)as
LD = $(CROSS_COMPILE)ld
CC = $(CROSS_COMPILE)gcc
CPP = $(CC) -E
AR = $(CROSS_COMPILE)ar
NM = $(CROSS_COMPILE)nm
STRIP = $(CROSS_COMPILE)strip
OBJCOPY = $(CROSS_COMPILE)objcopy
OBJDUMP = $(CROSS_COMPILE)objdump
AWK = awk
GENKSYMS = scripts/genksyms/genksyms
DEPMOD = /sbin/depmod
KALLSYMS = scripts/kallsyms
PERL = perl
CHECK = sparse

$(info --------------- Starting -------------)
ifeq ($(MAKERULES),)
################### include Rules.make #########################################
include ../../../Rules.make
######################## #############################################################
else
$(info --------------- $(MAKERULES) -------------)
include $(MAKERULES)
endif
######################## include a Rules.make anyway #########################################

ifeq "$(CONFIG_PLATFORM_SAAR)" "y" ### takes effect ##########
COMCFG_CSV = configuration/SAAR_2.5/PolegGV8/COMCfg.csv
endif
ifeq "$(CONFIG_PLATFORM_EVB2)" "y" #### seems no ##############
COMCFG_CSV = configuration/EVB2/PolegV5_DSSP_AFC_CONTROL/COMCfg.csv
endif

ifeq "$(CONFIG_INSTRUMENT)" "y" #### seems no ##########
#CFLAGS+=-finstrument-functions -rdynamic
INSTRUMENT_OBJ = genlib/debug/instrument.o genlib/debug/dlmalloc.o
else
INSTRUMENT_OBJ =
endif

BUILDROOT=$(PWD) #### current telephony directory ###############
ifeq "$(CONFIG_BIONIC)" "y"
include $(PXA_SRC_DIR)/Bionic.make
CFLAGS+= -DBIONIC
CCOMPILER=$(CPP)
else
COMLIBS=-lpthread
CCOMPILER=$(CC)
endif

DIAG_LINUX_OBJ_TEL = genlib/diag/src/diagDBtel.o
DIAG_LINUX_SRC_TEL = genlib/diag/src/diagDBtel.c
DIAG_LINUX_OBJ_AUD = genlib/diag/src/diagDBaud.o
DIAG_LINUX_SRC_AUD = genlib/diag/src/diagDBaud.c
DIAG_LINUX_OBJ_EEH = genlib/diag/src/diagDBeeh.o
DIAG_LINUX_SRC_EEH = genlib/diag/src/diagDBeeh.c
DIAG_LINUX_OBJ_MTSD = genlib/diag/src/diagDBmtsd.o
DIAG_LINUX_SRC_MTSD = genlib/diag/src/diagDBmtsd.c

DIAG_AR =/ ############### cant locat the file ############################
diag_logic.a/
diag_comm.a

ATCMDOBJS =/
linux_telephony/atcmdsrv/src/telcc.o/
linux_telephony/atcmdsrv/src/telmm.o/
linux_telephony/atcmdsrv/src/telps.o/
linux_telephony/atcmdsrv/src/telpb.o/
linux_telephony/atcmdsrv/src/telss.o/
linux_telephony/atcmdsrv/src/teldev.o/
linux_telephony/atcmdsrv/src/teldat.o/
linux_telephony/atcmdsrv/src/telmsg.o/
linux_telephony/atcmdsrv/src/telSIM.o/
linux_telephony/atcmdsrv/src/telatci.o/
linux_telephony/atcmdsrv/src/telcontroller.o/
linux_telephony/atcmdsrv/src/teldbg.o/
linux_telephony/atcmdsrv/src/telutl.o/
linux_telephony/atcmdsrv/src/atcmdsvr_audio.o/
linux_telephony/atcmdsrv/src/CpaServer.o/
genlib/atparser/src/atParser.o/
genlib/atparser/src/convert.o/
genlib/atparser/src/error.o/
genlib/atparser/src/eventHandler.o /
genlib/atparser/src/linkedList.o/
genlib/atparser/src/malloc.o/
genlib/atparser/src/semaphore.o/
genlib/atparser/src/stateMachine.o/
genlib/atparser/src/strMatch.o /
genlib/atparser/src/time.o/
genlib/atparser/src/timer.o/
genlib/atparser/src/trace.o/
genlib/atparser/src/vString.o

ATCMDTELOBJS =/
rtc_server/src/rtct_server.o/
rtc_server/src/rtct_interface.o/
rtc_server/src/rtct_calibration.o

ATCMDSRVOBJS = $(ATCMDOBJS) $(ATCMDTELOBJS)

EEH_OBJS_USER = errorhandler/src/eeh_assert_notify.o errorhandler/src/BackTrace.o

ifeq "$(CONFIG_BIONIC)" "y"
#GOOGLE-toolchain has very reduced STDLIB capabilities
CFLAGS += -DSTDLIB_REDUCED
else
CFLAGS += -rdynamic
endif

.EXPORT_ALL_VARIABLES:
CFLAGS += -I./inc//
-I$(BUILDROOT)/osa/inc/
-I$(BUILDROOT)/include/
-I$(BUILDROOT)/fsm/inc/
-I$(BUILDROOT)/pca_components/pca_components/inc/
-I$(BUILDROOT)/pca_components/msl_dl/src/bdd/
-I$(BUILDROOT)/pca_components/msl_dl/src/llc/
-I$(BUILDROOT)/pca_components/msl_dl/inc/
-I$(BUILDROOT)/pca_components/msl_xllp/inc/
-I$(BUILDROOT)/pca_components/gpc/inc/
-I$(BUILDROOT)/pca_components/ci/inc/
-I$(BUILDROOT)/pca_components/ci_stub/inc/
-I$(BUILDROOT)/pca_components/msl_utils/inc/
-I$(BUILDROOT)/pca_components/msl_utils/src/
-I$(BUILDROOT)/pca_components/msl_dl/src/linux/
-I$(BUILDROOT)/pca_components/ci_stub/src/
-I$(BUILDROOT)/pca_components/msl_sal/src/
-I$(BUILDROOT)/pca_components/msl_sal/inc/
-I$(BUILDROOT)/mtil/MTIL/MTIL_INC/
-I$(BUILDROOT)/pca_components/msl_dl/src/msldl_al/
-I$(BUILDROOT)/aud_sw/audio_stub/src/
-I$(BUILDROOT)/aud_sw/ARC/inc/
-I$(BUILDROOT)/aud_sw/AM/inc/
-I$(BUILDROOT)/linux_telephony/atcmdsrv/inc/
-I$(BUILDROOT)/genlib/atparser/inc/
-I$(BUILDROOT)/aud_sw/ACM/inc/
-I$(BUILDROOT)/aud_sw/AuC/inc/
-I$(PXA_HOST_DIR)/include/
-I$(BUILDROOT)/diag/diag_logic/inc/
-I$(BUILDROOT)/diag/diag_logic/src/
-I$(BUILDROOT)/diag/diag_comm/inc/
-I$(BUILDROOT)/diag/diag_comm/src/
-I$(BUILDROOT)/genlib/diag/inc/
-I$(BUILDROOT)/pca_components/inc/
-I$(BUILDROOT)/aud_sw/linux_audio/inc/
-I$(BUILDROOT)/NVM_Proxy/include/
-I$(BUILDROOT)/rtc_server/inc/
-I$(BUILDROOT)/errorhandler/inc/
-I$(BUILDROOT)/k2uevent/inc/
-I$(PXA_SRC_PVK_LNX_DIR)/include/asm/arch/
-I$(PXA_SRC_PVK_LNX_DIR)/arch/arm/include/
-I$(PXA_SRC_PVK_LNX_DIR)/arch/arm/mach-pxa/include/mach/
-I$(PXA_SRC_PVK_LNX_DIR)

ENABLE_TTY=1

CFLAGS+= -DOSA_LINUX/
-DOSA_USE_ASSERT/
-DOSA_MSG_QUEUE/
-DOSA_QUEUE_NAMES/
-D_FDI_USE_OSA_/
-DUSE_OSA_SEMA/
-DENV_LINUX/
-DMSL_TAVOR_LINUX/
-DMSL_SAL_RPC_CLIENT_INCLUDE/
-DMSL_NO_DMA/
-DMSL_PM_USE_AC_IPC_AS_WAKEUP/
-DMSL_STBC_CLIENT_INCLUDE/
-DCI_STUB_CLIENT_INCLUDE/
-DMSL_SAL_RPC_CLIENT_INCLUDE/
-DMSL_STBC_CLIENT_INCLUDE/
-DGPC_NODE_1=1/
-DGPC_UNIT_TEST/
-DGPC_MODULE_INCLUDE/
-DUPGRADE_R99/
-DSAL_LITTLE_ENDIAN/
-DTAVOR_AUDIO/
-DCCI_POSITION_LOCATION/
-D_MICCO_B0_

CCICONTIG_CFLAGS+=/
-DCCI_CMN_CONTIGUOUS/
-DCCI_CC_CONTIGUOUS/
-DCCI_PB_CONTIGUOUS/
-DCCI_PS_CONTIGUOUS/
-DCCI_MSG_CONTIGUOUS/
-DCCI_SS_CONTIGUOUS/
-DCCI_DAT_CONTIGUOUS/
-DCCI_MM_CONTIGUOUS/
-DCCI_SIM_CONTIGUOUS/
-DCCI_DEV_CONTIGUOUS/
-DCCI_CONTIGUOUS

ifeq "$(ENABLE_TTY)" "1" #### true here #####################
CFLAGS+=-DTTY_ENABLE
endif

MTIL_CFLAGS=/
$(CCICONTIG_CFLAGS)/
-DCCI_MEM_ONLY_CNF_IND_MEM_SZ/
-DAT_MTIL_CLIENT/
-I$(BUILDROOT)/mtil/MTIL/MTIL_INC

ifeq "$(CONFIG_GEN_DEBUG)" "y" ######### no ################33
CFLAGS+=-DDEBUG_BUILD/
-DMSL_TRACE_ON /
-DACI_KERNEL_DEBUG /
-DDEBUG_BUILD/
-DATCMDSRV_DEBUG/
-DutlDEBUG/
-DDEBUG_BUILD/
-DMSL_TRACE_ON /
-DMSLDL_DIRECT_ACCESS/
-DMSL_DEBUG
endif

################################### below define phony ####################

.PHONY: all compile install-host install-target atcmdsrv_clean clean clean-local distclean /
uninstall-host uninstall-target hwmap
ifeq "$(CONFIG_BIONIC)" "y" ###### take effect ##################################
.PHONY: pxafs

all: compile install-host install-target pxafs
else
.PHONY: iptables

all: compile install-host install-target
endif

install-host:

install-target:
$(SUDO) rm $(PXA_TARGET_FS_DIR)/tel -rf
$(SUDO) mkdir -p $(PXA_TARGET_FS_DIR)/tel
ifeq "$(CONFIG_BIONIC)" "y"
$(SUDO) mkdir -p $(PXA_TARGET_FS_DIR)/etc
$(SUDO) cp -f fbvncserver $(PXA_TARGET_FS_DIR)/tel
$(SUDO) cp -f busybox $(PXA_TARGET_FS_DIR)/tel
$(SUDO) cp -f gserial/*.ko $(PXA_TARGET_FS_DIR)/tel
$(SUDO) cp -f $(PXA_SRC_PVK_LNX_DIR)/drivers/usb/gadget/g_ether.ko $(PXA_TARGET_FS_DIR)/tel
#BSP
$(SUDO) cp -f gserial/*.ko $(PXA_TARGET_FS_DIR)
$(SUDO) cp -f atcmdsrv $(PXA_TARGET_FS_DIR)/tel

else #### will not implement ########################

$(SUDO) rm -f $(PXA_TARGET_FS_DIR)/dev/ttydm
$(SUDO) cp -f atcmdsrv $(PXA_TARGET_FS_DIR)/tel
$(SUDO) cp -f gserial/*.ko $(PXA_TARGET_MOD_DIR)
endif ###################################################

$(SUDO) cp -f mtilatcmd $(PXA_TARGET_FS_DIR)/tel
$(SUDO) cp -f mtsd $(PXA_TARGET_FS_DIR)/tel
$(SUDO) cp -f msldrv_aci/mslbddk.ko $(PXA_TARGET_FS_DIR)/tel
$(SUDO) cp -f citty/src/citty.ko $(PXA_TARGET_FS_DIR)/tel
$(SUDO) cp -f ccinetdev/ccinetdev.ko $(PXA_TARGET_FS_DIR)/tel
$(SUDO) cp -f cidatastub/cci_datastub.ko $(PXA_TARGET_FS_DIR)/tel
$(SUDO) cp -f cidatatty/src/cidatatty.ko $(PXA_TARGET_FS_DIR)/tel
$(SUDO) cp -f cimodemtty/build/gs_modem.ko $(PXA_TARGET_FS_DIR)/tel
$(SUDO) cp -f errorhandler/build/seh.ko $(PXA_TARGET_FS_DIR)/tel
$(SUDO) cp -f diag_bsp.cfg $(PXA_TARGET_FS_DIR)/etc
$(SUDO) cp -f diag_fs.cfg $(PXA_TARGET_FS_DIR)/tel
$(SUDO) cp -f run.sh $(PXA_TARGET_FS_DIR)/tel
$(SUDO) cp -f run_mtil.sh $(PXA_TARGET_FS_DIR)/tel
$(SUDO) cp -f run_modem.sh $(PXA_TARGET_FS_DIR)/tel
$(SUDO) cp -f run_diag.sh $(PXA_TARGET_FS_DIR)/tel
$(SUDO) cp -f msldrv_aci/mslbddk.ko $(PXA_TARGET_FS_DIR)/tel
ifeq "$(CONFIG_BIONIC)" "y"
$(SUDO) cp -f launch $(PXA_TARGET_FS_DIR)/tel
$(SUDO) chmod 777 $(PXA_TARGET_FS_DIR)/tel/launch
$(SUDO) cp -f usb_switch.sh $(PXA_TARGET_FS_DIR)/tel
$(SUDO) cp -f run_android_mtil.sh $(PXA_TARGET_FS_DIR)/tel
$(SUDO) cp -f set_apn.sh $(PXA_TARGET_FS_DIR)/tel
$(SUDO) cp -f run_logcat.sh $(PXA_TARGET_FS_DIR)/tel
$(SUDO) cp -f atoemext.so $(PXA_TARGET_FS_DIR)/tel
$(SUDO) cp -f run_android_bsp_only.sh $(PXA_TARGET_FS_DIR)/tel
else ############## will not implement ##################

$(SUDO) cp -f run_composite.sh $(PXA_TARGET_FS_DIR)/tel
$(SUDO) cp -f run_composite_mtil.sh $(PXA_TARGET_FS_DIR)/tel
$(SUDO) cp -f run_mtil.sh $(PXA_TARGET_FS_DIR)/tel
endif
$(SUDO) cp -f wait.sh $(PXA_TARGET_FS_DIR)/tel
$(SUDO) cp -f remove.sh $(PXA_TARGET_FS_DIR)/tel
$(SUDO) cp -f restart.sh $(PXA_TARGET_FS_DIR)/tel
$(SUDO) cp -f serial_client $(PXA_TARGET_FS_DIR)/tel
$(SUDO) cp -f protocols $(PXA_TARGET_FS_DIR)/etc
$(SUDO) cp -f imlpinmux.sh $(PXA_TARGET_FS_DIR)/tel
$(SUDO) cp -f hwmap/hw.sh $(PXA_TARGET_FS_DIR)/tel
$(SUDO) cp -f hwmap/hwacc $(PXA_TARGET_FS_DIR)/tel
$(SUDO) cp -f hwmap/hwmap.ko $(PXA_TARGET_FS_DIR)/tel
ifeq "$(CONFIG_BIONIC)" "y" #### it apperant that the CONFIG_BIONIC is important ###############
$(SUDO) mkdir -p $(PXA_TARGET_FS_DIR)/tel/NVM
#$(SUDO) cp -f SystemControl.nvm $(PXA_TARGET_FS_DIR)/tel/NVM/_SystemControl.nvm
$(SUDO) cp -f $(COMCFG_CSV) $(PXA_TARGET_FS_DIR)/tel/NVM
else ######### willnt implement ##################3

$(SUDO) mkdir -p $(PXA_TARGET_FS_DIR)/Linux/Marvell/NVM
$(SUDO) cp -f SystemControl.nvm $(PXA_TARGET_FS_DIR)/Linux/Marvell/NVM/_SystemControl.nvm
$(SUDO) cp -f $(COMCFG_CSV) $(PXA_TARGET_FS_DIR)/Linux/Marvell/NVM

endif
############### cant locate such files #########
$(SUDO) cp -f audioserver $(PXA_TARGET_FS_DIR)/tel
$(SUDO) cp -f eeh $(PXA_TARGET_FS_DIR)/tel
$(SUDO) cp -f diag_mmi $(PXA_TARGET_FS_DIR)/tel
################ cant locate above files ###################
ifeq "$(CONFIG_BIONIC)" "y"
$(SUDO) mkdir -p $(PXA_TARGET_FS_DIR)/usr/lib
$(SUDO) cp -f aud_sw/linux_audio/alsa_plugin/phone/libasound_module_ctl_phone.so $(PXA_TARGET_FS_DIR)/usr/lib
$(SUDO) cp -f aud_sw/linux_audio/alsa_plugin/phone/libasound_module_pcm_phone.so $(PXA_TARGET_FS_DIR)/usr/lib
$(SUDO) cp -f aud_sw/linux_audio/.audiorc $(PXA_TARGET_FS_DIR)/etc/audiorc

else

$(SUDO) cp -f protocols $(PXA_TARGET_FS_DIR)/etc
$(SUDO) cp -f aud_sw/linux_audio/alsa_plugin/phone/.libs/libasound_module_ctl_phone.so $(PXA_TARGET_FS_DIR)/usr/lib
$(SUDO) cp -f aud_sw/linux_audio/alsa_plugin/phone/.libs/libasound_module_pcm_phone.so $(PXA_TARGET_FS_DIR)/usr/lib
$(SUDO) cp -f aud_sw/linux_audio/.audiorc $(PXA_TARGET_FS_DIR)/root
endif

$(SUDO) cp -f osa_kernel/osadev.ko $(PXA_TARGET_FS_DIR)/tel
$(SUDO) cp -f aud_sw/linux_audio/asound.conf $(PXA_TARGET_FS_DIR)/etc
$(SUDO) cp -f diag_port_conf.sh $(PXA_TARGET_FS_DIR)/tel
$(SUDO) cp -f Boerne_DIAG_ATCMDSRV.mdb.txt $(PXA_TARGET_IMAGE_DIR)
$(SUDO) touch $(PXA_TARGET_FS_DIR)/tel/ApDiagDB.gz
$(SUDO) chmod a+w $(PXA_TARGET_FS_DIR)/tel/ApDiagDB.gz
$(SUDO) cp -f errorhandler/src/threadinfo.sh $(PXA_TARGET_FS_DIR)/tel
$(SUDO) cp -f ttyset.sh $(PXA_TARGET_FS_DIR)/etc
ifneq "$(CONFIG_BIONIC)" "y"
$(SUDO) gzip -c Boerne_DIAG_ATCMDSRV.mdb.txt > $(PXA_TARGET_FS_DIR)/tel/ApDiagDB.gz
$(SUDO) touch $(PXA_TARGET_FS_DIR)/dev/ttydm
endif
$(SUDO) mkdir -p $(PXA_TARGET_FS_DIR)/usr/sbin
ifeq "$(CONFIG_PVK_TELEPHONY_PPP)" "y" #### cant locate such config ###################
make -C ppp install-target
endif
#$(SUDO) cp -f ppp/pppd/pppd $(PXA_TARGET_FS_DIR)/usr/sbin
#$(SUDO) cp -f ppp/chat/chat $(PXA_TARGET_FS_DIR)/usr/sbin
#$(SUDO) mkdir -p $(PXA_TARGET_FS_DIR)/etc/ppp

ifneq "$(CONFIG_BIONIC)" "y"
$(SUDO) make -C iptables install-target
$(SUDO) mkdir -p $(PXA_TARGET_FS_DIR)/usr/sbin
$(SUDO) mkdir -p $(PXA_TARGET_FS_DIR)/var/lock
$(SUDO) make -C conn_manager install-target MAKERULES=$(PXA_SRC_DIR)/Rules.make

##################### sed #################################################################
$(SUDO) sed -i -e '/ # Initializing Telephony.../d' $(PXA_TARGET_FS_DIR)/etc/profile
$(SUDO) sed -i -e '//"Loading AT Command Server .../"/d' $(PXA_TARGET_FS_DIR)/etc/profile
$(SUDO) sed -i -e '/cd //tel/d' $(PXA_TARGET_FS_DIR)/etc/profile
$(SUDO) sed -i -e '/.//diag_port_conf.sh/d' $(PXA_TARGET_FS_DIR)/etc/profile
$(SUDO) sed -i -e '/.//run_composite.sh/d' $(PXA_TARGET_FS_DIR)/etc/profile
$(SUDO) sed -i -e '/.//run_mtil.sh/d' $(PXA_TARGET_FS_DIR)/etc/profile
$(SUDO) sed -i -e '/.//run_composite_mtil.sh/d' $(PXA_TARGET_FS_DIR)/etc/profile
$(SUDO) sed -i -e '/.//wait.sh/d' $(PXA_TARGET_FS_DIR)/etc/profile
$(SUDO) sed -i -e '//"Done/"/d' $(PXA_TARGET_FS_DIR)/etc/profile
$(SUDO) sed -i -e '/.//ttyset.sh/d' $(PXA_TARGET_FS_DIR)/etc/profile
$(SUDO) sed -i -e '/.//ttyset.sh/d' $(PXA_TARGET_FS_DIR)/etc/init.d/rc.local
$(SUDO) sed -i -e 's/ttyS0/ttydm/' $(PXA_TARGET_FS_DIR)/etc/inittab
$(SUDO) sed -i -e 's/console/ttydm/' $(PXA_TARGET_FS_DIR)/etc/inittab

@echo " # Initializing Telephony..." >> $(PXA_TARGET_FS_DIR)/etc/profile
@echo "echo -n /"Loading AT Command Server .../"" >>$(PXA_TARGET_FS_DIR)/etc/profile
@echo "cd /tel" >>$(PXA_TARGET_FS_DIR)/etc/profile
@echo "./diag_port_conf.sh" >>$(PXA_TARGET_FS_DIR)/etc/profile
@echo "./run_composite.sh" >>$(PXA_TARGET_FS_DIR)/etc/profile
@echo "./wait.sh" >>$(PXA_TARGET_FS_DIR)/etc/profile
@echo "echo /"Done/" " >> $(PXA_TARGET_FS_DIR)/etc/profile
@echo "/etc/ttyset.sh" >> $(PXA_TARGET_FS_DIR)/etc/profile
@echo "/etc/ttyset.sh" >> $(PXA_TARGET_FS_DIR)/etc/init.d/rc.local
endif

MSL_OBJS_DEPENDS = osa_drv mslbddk_drv

MSL_LIBS_DEPENDS = libaci libcci libgpc

MSL_LINK_LIBS = -laci -lgpc -lcci

ifeq "$(CONFIG_PVK_USE_MSL)" "y"
OBJS_DEPENDS = $(MSL_OBJS_DEPENDS)
LIBS_DEPENDS = $(MSL_LIBS_DEPENDS)
LINKS_LIBS = $(MSL_LINK_LIBS)
endif

ifeq "$(CONFIG_BIONIC)" "y"
compile: $(OBJS_DEPENDS) serial_client diag_mmi pppd citty_drv ccinetdev_drv cci_datastub_drv cidatatty_drv atcmdsrv mtsd audioserver eeh agps_libs gs_modem_drv libasound_module_ctl_phone.so iptables seh_drv diagdb_tel diagdb_mtsd hwmap libmtilclientapi mtilatcmd g_serial atoemext
else
compile: mslbddk_drv osa_drv serial_client diag_mmi pppd citty_drv ccinetdev_drv cci_datastub_drv cm cidatatty_drv atcmdsrv mtsd audioserver eeh agps_libs gs_modem_drv libasound_module_ctl_phone.so iptables seh_drv diagdb_tel diagdb_mtsd hwmap libmtilclientapi mtilatcmd g_serial
endif

diag_mmi:
make -C utilities/diag_mmi MAKERULES=$(PXA_SRC_DIR)/Rules.make
mv utilities/diag_mmi/diag_mmi .

ifneq "$(CONFIG_BIONIC)" "y"
cm:
make -C conn_manager compile MAKERULES=$(PXA_SRC_DIR)/Rules.make
endif

osa_drv:
make -C osa_kernel PXA_SRC_PVK_LNX_DIR=$(PXA_SRC_PVK_LNX_DIR)

mslbddk_drv:
make -C msldrv_aci PXA_SRC_PVK_LNX_DIR=$(PXA_SRC_PVK_LNX_DIR)

g_serial:
make -C $(PXA_SRC_PVK_LNX_DIR) M=$(BUILDROOT)/gserial modules

citty_drv:
make -C citty PXA_SRC_PVK_LNX_DIR=$(PXA_SRC_PVK_LNX_DIR)

ccinetdev_drv:
make -C ccinetdev PXA_SRC_PVK_LNX_DIR=$(PXA_SRC_PVK_LNX_DIR)

cci_datastub_drv:
make -C cidatastub PXA_SRC_PVK_LNX_DIR=$(PXA_SRC_PVK_LNX_DIR)

seh_drv:
make -C errorhandler -f Makefile.drv PXA_SRC_PVK_LNX_DIR=$(PXA_SRC_PVK_LNX_DIR)

libasound_module_ctl_phone.so: audioserver
make -C aud_sw/linux_audio/alsa_plugin/phone -f Makefile.phone MAKERULES=$(PXA_SRC_DIR)/Rules.make

cidatatty_drv:
make -C cidatatty PXA_SRC_PVK_LNX_DIR=$(PXA_SRC_PVK_LNX_DIR)

gs_modem_drv:
make -C cimodemtty PXA_SRC_PVK_LNX_DIR=$(PXA_SRC_PVK_LNX_DIR)

pppd:
ifeq "$(CONFIG_PVK_TELEPHONY_PPP)" "y"
make -C ppp compile
endif
#make -C ppp CC="$(CC)"

iptables:
make -C iptables

ifeq "$(CONFIG_BIONIC)" "y"
genlib/debug/dlmalloc.o: genlib/debug/malloc.c
$(CC) $(BIONIC_LINK) -g -Waggregate-return -Wmissing-noreturn -W -Wall -mcpu=iwmmxt -mtune=iwmmxt -mabi=aapcs-linux -rdynamic -DUSE_DL_PREFIX -c -o $@ $< $(BIONIC_POSTLINK) $(BIONIC_EXTRA_OBJECTS)
else
genlib/debug/dlmalloc.o: genlib/debug/malloc.c
$(CC) -g -Waggregate-return -Wmissing-noreturn -W -Wall -mcpu=iwmmxt -mtune=iwmmxt -mabi=aapcs-linux -rdynamic -DUSE_DL_PREFIX -c -o $@ $<
endif

atcmdsrv_clean:
-rm $(ATCMDSRVOBJS)
-rm linux_telephony/atcmdsrv/src/main.o
-rm $(DIAG_LINUX_OBJ_TEL)
make -C fsm clean MAKERULES=$(PXA_SRC_DIR)/Rules.make
make -C pca_components -f Makefile.cci clean MAKERULES=$(PXA_SRC_DIR)/Rules.make
make -C pca_components -f Makefile.cci_contig clean MAKERULES=$(PXA_SRC_DIR)/Rules.make
make -C pca_components -f Makefile.aci clean MAKERULES=$(PXA_SRC_DIR)/Rules.make
make -C pca_components -f Makefile.gpc clean MAKERULES=$(PXA_SRC_DIR)/Rules.make
make -C NVM_Proxy clean MAKERULES=$(PXA_SRC_DIR)/Rules.make
make -C osa clean MAKERULES=$(PXA_SRC_DIR)/Rules.make
make -C k2uevent clean MAKERULES=$(PXA_SRC_DIR)/Rules.make

ifeq "$(CONFIG_BIONIC)" "y"
atcmdsrv: libk2uevent libfsm libaci libcci libosa $(LIBS_DEPENDS) libgpc libnvmproxy libacm libmaudio libaudioserver libdiag $(EEH_OBJS_USER) $(INSTRUMENT_OBJ) atcmdsrv_diag
make -C mtil -f Makefile.mtilips MAKERULES=$(PXA_SRC_DIR)/Rules.make clean
make -C mtil -f Makefile.mtilips MAKERULES=$(PXA_SRC_DIR)/Rules.make DIAG_MTIL_TRACE=NO
$(CC) $(BIONIC_LINK) $(BIONIC_LD) $(CFLAGS) $(COMLIBS) -o atcmdsrv linux_telephony/atcmdsrv/src/main.c $(ATCMDSRVOBJS:.o=.c) $(INSTRUMENT_OBJ) $(EEH_OBJS_USER) $(DIAG_LINUX_OBJ_TEL) -lstdc++ -L$(PXA_HOST_DIR)/lib -lasound -L. -laudioserver -ldiag_logic -ldiag_comm -losa -lnvmproxy -lk2uevent $(LINKS_LIBS) -lfsm $(BIONIC_EXTRA_OBJECTS:.o=.c) $(BIONIC_POSTLINK) -lmtilipsockets
@echo "$@ ... done"
else
atcmdsrv: atcmdsrv_clean libk2uevent libfsm libaci libcci libosa libgpc libnvmproxy libacm libmaudio libaudioserver libdiag $(EEH_OBJS_USER) $(INSTRUMENT_OBJ) atcmdsrv_diag
make -C mtil -f Makefile.mtilips MAKERULES=$(PXA_SRC_DIR)/Rules.make clean
make -C mtil -f Makefile.mtilips MAKERULES=$(PXA_SRC_DIR)/Rules.make DIAG_MTIL_TRACE=NO
$(CC) $(CFLAGS) $(COMLIBS) -o atcmdsrv linux_telephony/atcmdsrv/src/main.c $(ATCMDSRVOBJS:.o=.c) $(EEH_OBJS_USER) $(INSTRUMENT_OBJ) $(DIAG_LINUX_OBJ_TEL) -lstdc++ -L$(PXA_HOST_DIR)/lib -lasound $(BACKTRACE_FIX) -L. -laudioserver -ldiag_logic -ldiag_comm -lgpc -laci -lcci -lfsm -losa -lnvmproxy -lutil -lk2uevent -lmtilipsockets
@echo "$@ ... done"
endif

mtilatcmd_clean:
make -C mtil/ATCMDSRV/MTILatcmd -f Makefile.mtilclient MAKERULES=$(PXA_SRC_DIR)/Rules.make clean

mtilatcmd: libmtilclientapi libosa libk2uevent
make -C mtil -f Makefile.mtilips MAKERULES=$(PXA_SRC_DIR)/Rules.make clean
make -C mtil -f Makefile.mtilips MAKERULES=$(PXA_SRC_DIR)/Rules.make DIAG_MTIL_TRACE=NO
make -C mtil/ATCMDSRV/MTILatcmd -f Makefile.mtilclient MAKERULES=$(PXA_SRC_DIR)/Rules.make
@echo "$@ ... done"

mtsd: libcci_contig libdiag libgpc libaci libacipc libnvmproxy libaudioserver libfsm libosa libmtilserverapi libmtilserver $(EEH_OBJS_USER)
make -C mtil -f Makefile.mtilips MAKERULES=$(PXA_SRC_DIR)/Rules.make clean
make -C mtil -f Makefile.mtilips MAKERULES=$(PXA_SRC_DIR)/Rules.make DIAG_MTIL_TRACE=YES
make -C prepass compile_mtsd DIAG_MTIL_TRACE=YES
$(CC) $(CFLAGS) -c -o $(DIAG_LINUX_OBJ_MTSD) $(DIAG_LINUX_SRC_MTSD)
make -C mtil/MTS -f Makefile.mts MAKERULES=$(PXA_SRC_DIR)/Rules.make

mtsd_clean:
make -C mtil/MTS -f Makefile.mts MAKERULES=$(PXA_SRC_DIR)/Rules.make clean

atcmdsrv_diag:
make -C prepass compile_tel DIAG_MTIL_TRACE=NO
$(CC) $(BIONIC_LINK) $(CFLAGS) -c -o $(DIAG_LINUX_OBJ_TEL) $(DIAG_LINUX_SRC_TEL)

audioserver_diag:
make -C prepass compile_aud DIAG_MTIL_TRACE=NO
$(CC) $(BIONIC_LINK) $(CFLAGS) -c -o $(DIAG_LINUX_OBJ_AUD) $(DIAG_LINUX_SRC_AUD)

eeh_diag:
make -C prepass compile_eeh DIAG_MTIL_TRACE=NO
$(CC) $(CFLAGS) -c -o $(DIAG_LINUX_OBJ_EEH) $(DIAG_LINUX_SRC_EEH)

diagdb_tel:
make -C prepass merge DIAG_MTIL_TRACE=NO

diagdb_mtsd:
make -C prepass merge DIAG_MTIL_TRACE=YES

libdiag: libk2uevent libosa
make -C diag/diag_logic/build/ -f Makefile.linux MAKERULES=$(PXA_SRC_DIR)/Rules.make
make -C diag/diag_comm/build/ -f Makefile.linux MAKERULES=$(PXA_SRC_DIR)/Rules.make

serial_client:
make -C linux_telephony/atcmdsrv/test MAKERULES=$(PXA_SRC_DIR)/Rules.make
mv linux_telephony/atcmdsrv/test/serial_client .

agps_libs:
make -C agps/AGPS_Linux/gpio_tool MAKERULES=$(PXA_SRC_DIR)/Rules.make
make -C agps/AGPS_Linux/mtelif MAKERULES=$(PXA_SRC_DIR)/Rules.make

agps_libs_clean:
make -C agps/AGPS_Linux/gpio_tool MAKERULES=$(PXA_SRC_DIR)/Rules.make clean
make -C agps/AGPS_Linux/mtelif MAKERULES=$(PXA_SRC_DIR)/Rules.make clean

agps_demo: agps_libs
make -C agps/AGPS_Linux/CpaClient MAKERULES=$(PXA_SRC_DIR)/Rules.make
make -C agps/AGPS_Linux/CpaClient_MTIL MAKERULES=$(PXA_SRC_DIR)/Rules.make
make -C agps/AgpsDemo/app/Linux/SiRFAGPSLSMdemo -f Makefile-notls USE_MTIL=n
make -C agps/AgpsDemo/app/Linux/SiRFLSMServer -f Makefile-notls USE_MTIL=n
make -C agps/AgpsDemo/app/Linux/SiRFLSMServerDemoApp
$(SUDO) cp -f agps/AgpsDemo/app/Linux/SiRFAGPSLSMdemo/SiRFAGPSLSMdemo $(PXA_TARGET_FS_DIR)/tel
$(SUDO) cp -f agps/AgpsDemo/app/Linux/SiRFLSMServer/SiRFLSMserver $(PXA_TARGET_FS_DIR)/tel
$(SUDO) cp -f agps/AgpsDemo/app/Linux/SiRFLSMServer/config.xml $(PXA_TARGET_FS_DIR)/tel
$(SUDO) cp -f agps/AgpsDemo/app/Linux/SiRFLSMServerDemoApp/SiRFLSMserverDemoApp $(PXA_TARGET_FS_DIR)/tel
$(SUDO) cp -f "agps/AgpsDemo/app/Linux/SiRFAGPSLSMdemo/Config files/San Jose/AgpsDemoConfig01.xml" $(PXA_TARGET_FS_DIR)/tel

agps_demo_clean: agps_libs_clean
make -C agps/AGPS_Linux/CpaClient MAKERULES=$(PXA_SRC_DIR)/Rules.make clean
make -C agps/AGPS_Linux/CpaClient_MTIL MAKERULES=$(PXA_SRC_DIR)/Rules.make clean
make -C agps/AgpsDemo/app/Linux/SiRFAGPSLSMdemo -f Makefile-notls USE_MTIL=n clean
make -C agps/AgpsDemo/app/Linux/SiRFLSMServer -f Makefile-notls USE_MTIL=n clean
make -C agps/AgpsDemo/app/Linux/SiRFLSMServerDemoApp clean

ifeq "$(CONFIG_BIONIC)" "y"
audioserver: $(OBJS_DEPENDS) $(LIBS_DEPENDS) atcmdsrv libfsm libaci libcci libosa libgpc libacm libam libarc libnvmproxy libmaudio libaudioserver libk2uevent aud_sw/linux_audio/src/audio_server.o $(EEH_OBJS_USER) $(INSTRUMENT_OBJ) audioserver_diag $(BIONIC_EXTRA_OBJECTS:.o=.c)
-rm aud_sw/linux_audio/src/audio_server.o
$(CC) $(BIONIC_LINK) $(BIONIC_LD) $(CFLAGS) $(COMLIBS) -o audioserver aud_sw/linux_audio/src/audio_server.c $(INSTRUMENT_OBJ) $(DIAG_LINUX_OBJ_AUD) $(EEH_OBJS_USER) $(BACKTRACE_FIX) -lstdc++ -lacm -lam -larc -lnvmproxy -lmaudio -laudioserver -L$(PXA_HOST_DIR)/lib -lasound -L. -ldiag_logic -ldiag_comm -lgpc -laci -lcci -lfsm -losa $(LINKS_LIBS) -lk2uevent $(BIONIC_EXTRA_OBJECTS:.o=.c) $(BIONIC_POSTLINK)
@echo "$@ ... done"
else
audioserver: atcmdsrv libfsm libaci libcci libosa libgpc libacm libam libarc libnvmproxy libmaudio libaudioserver libk2uevent aud_sw/linux_audio/src/audio_server.o $(EEH_OBJS_USER) $(INSTRUMENT_OBJ) audioserver_diag
$(CC) $(CFLAGS) $(COMLIBS) -o audioserver aud_sw/linux_audio/src/audio_server.o $(INSTRUMENT_OBJ) $(DIAG_LINUX_OBJ_AUD) $(EEH_OBJS_USER) $(BACKTRACE_FIX) -lstdc++ -lacm -lam -larc -lnvmproxy -lmaudio -laudioserver -L$(PXA_HOST_DIR)/lib -lasound -L. -ldiag_logic -ldiag_comm -lgpc -laci -lcci -lfsm -losa -lk2uevent
endif

ifeq "$(CONFIG_BIONIC)" "y"
eeh: $(LIBS_DEPENDS) libfsm libaci libcci libosa libgpc libnvmproxy libeeh libk2uevent errorhandler/src/eeh_main.o $(INSTRUMENT_OBJ) $(EEH_OBJS_USER) eeh_diag
-rm errorhandler/src/eeh_main.o
$(CC) $(BIONIC_LINK) $(BIONIC_LD) $(CFLAGS) $(COMLIBS) -o eeh errorhandler/src/eeh_main.c $(INSTRUMENT_OBJ) $(DIAG_LINUX_OBJ_EEH) $(EEH_OBJS_USER) $(BACKTRACE_FIX) -lstdc++ -lnvmproxy -leeh -L$(PXA_HOST_DIR)/lib -L. -ldiag_logic -ldiag_comm -lgpc -laci -lcci -lfsm -losa $(LINKS_LIBS) -lk2uevent $(BIONIC_EXTRA_OBJECTS:.o=.c) $(BIONIC_POSTLINK)
@echo "$@ ... done"
else
eeh: libfsm libaci libcci libosa libgpc libnvmproxy libeeh libk2uevent errorhandler/src/eeh_main.o $(INSTRUMENT_OBJ) $(EEH_OBJS_USER) eeh_diag
$(CC) $(CFLAGS) $(COMLIBS) -o eeh errorhandler/src/eeh_main.o $(INSTRUMENT_OBJ) $(DIAG_LINUX_OBJ_EEH) $(EEH_OBJS_USER) $(BACKTRACE_FIX) -lstdc++ -lnvmproxy -leeh -L$(PXA_HOST_DIR)/lib -L. -ldiag_logic -ldiag_comm -lgpc -laci -lcci -lfsm -losa -lk2uevent
endif

libfsm:
make -C fsm MAKERULES=$(PXA_SRC_DIR)/Rules.make

libcci:
make -C pca_components -f Makefile.cci cleanobj MAKERULES=$(PXA_SRC_DIR)/Rules.make
make -C pca_components -f Makefile.cci MAKERULES=$(PXA_SRC_DIR)/Rules.make

libcci_contig:
make -C pca_components -f Makefile.cci_contig cleanobj MAKERULES=$(PXA_SRC_DIR)/Rules.make
make -C pca_components -f Makefile.cci_contig MAKERULES=$(PXA_SRC_DIR)/Rules.make

libaci:
make -C pca_components -f Makefile.aci MAKERULES=$(PXA_SRC_DIR)/Rules.make

libgpc:
make -C pca_components -f Makefile.gpc MAKERULES=$(PXA_SRC_DIR)/Rules.make

libacipc: libosa
make -C genlib/acipc MAKERULES=$(PXA_SRC_DIR)/Rules.make

libk2uevent_clean:
make -C k2uevent clean MAKERULES=$(PXA_SRC_DIR)/Rules.make

libk2uevent:
make -C k2uevent MAKERULES=$(PXA_SRC_DIR)/Rules.make

libmaudio:
make -C aud_sw/linux_audio -f Makefile.audiostub MAKERULES=$(PXA_SRC_DIR)/Rules.make

libacm:
make -C aud_sw/linux_audio -f Makefile.acm MAKERULES=$(PXA_SRC_DIR)/Rules.make

libam:
make -C aud_sw/linux_audio -f Makefile.am MAKERULES=$(PXA_SRC_DIR)/Rules.make

libarc:
make -C aud_sw/linux_audio -f Makefile.arc MAKERULES=$(PXA_SRC_DIR)/Rules.make

libosa:
make -C osa MAKERULES=$(PXA_SRC_DIR)/Rules.make

libnvmproxy:
make -C NVM_Proxy MAKERULES=$(PXA_SRC_DIR)/Rules.make

libaudioserver:
make -C aud_sw/linux_audio -f Makefile.audioserver MAKERULES=$(PXA_SRC_DIR)/Rules.make

libeeh:
make -C errorhandler -f Makefile.app MAKERULES=$(PXA_SRC_DIR)/Rules.make

hwmap:
make -C hwmap MAKERULES=$(PXA_SRC_DIR)/Rules.make

libmtilipsockets:
make -C mtil -f Makefile.mtilips MAKERULES=$(PXA_SRC_DIR)/Rules.make

libmtilclientapi:
make -C mtil -f Makefile.mtilclapi MAKERULES=$(PXA_SRC_DIR)/Rules.make

libmtilserverapi:
make -C mtil -f Makefile.mtilsrvapi MAKERULES=$(PXA_SRC_DIR)/Rules.make

libmtilserver:
make -C mtil -f Makefile.mtilsrv MAKERULES=$(PXA_SRC_DIR)/Rules.make

ifeq "$(CONFIG_BIONIC)" "y"
atoemext:
make -C mtil/MTIL/atoemext -f Makefile.oemext MAKERULES=$(PXA_SRC_DIR)/Rules.make
endif
ifeq "$(CONFIG_BIONIC)" "y"
pxafs:
@echo "***********************************************************************"
@echo "** Create pxafs.img Yaffs2 FS **"
@echo "***********************************************************************"
sudo ./mkyaffs2image $(PXA_TARGET_FS_DIR) $(PXA_TARGET_DIR)/pxafs.img;
sudo chmod a+r $(PXA_TARGET_DIR)/pxafs.img
endif

clean:
make -C msldrv_aci clean PXA_SRC_PVK_LNX_DIR=$(PXA_SRC_PVK_LNX_DIR)
make -C ccinetdev clean PXA_SRC_PVK_LNX_DIR=$(PXA_SRC_PVK_LNX_DIR)
make -C cidatastub clean PXA_SRC_PVK_LNX_DIR=$(PXA_SRC_PVK_LNX_DIR)
make -C cidatatty clean PXA_SRC_PVK_LNX_DIR=$(PXA_SRC_PVK_LNX_DIR)
make -C citty clean PXA_SRC_PVK_LNX_DIR=$(PXA_SRC_PVK_LNX_DIR)
make -C fsm clean MAKERULES=$(PXA_SRC_DIR)/Rules.make
make -C pca_components -f Makefile.aci clean MAKERULES=$(PXA_SRC_DIR)/Rules.make
make -C pca_components -f Makefile.gpc clean MAKERULES=$(PXA_SRC_DIR)/Rules.make
make -C genlib/acipc clean MAKERULES=$(PXA_SRC_DIR)/Rules.make
make -C NVM_Proxy clean MAKERULES=$(PXA_SRC_DIR)/Rules.make
make -C osa clean MAKERULES=$(PXA_SRC_DIR)/Rules.make
make -C pca_components -f Makefile.cci clean MAKERULES=$(PXA_SRC_DIR)/Rules.make
make -C aud_sw/linux_audio -f Makefile.audiostub clean MAKERULES=$(PXA_SRC_DIR)/Rules.make
make -C aud_sw/linux_audio -f Makefile.acm clean MAKERULES=$(PXA_SRC_DIR)/Rules.make
make -C aud_sw/linux_audio -f Makefile.am clean MAKERULES=$(PXA_SRC_DIR)/Rules.make
make -C aud_sw/linux_audio -f Makefile.arc clean MAKERULES=$(PXA_SRC_DIR)/Rules.make
make -C linux_telephony/atcmdsrv/test clean MAKERULES=$(PXA_SRC_DIR)/Rules.make
make -C aud_sw/linux_audio -f Makefile.audioserver clean MAKERULES=$(PXA_SRC_DIR)/Rules.make
make -C diag/diag_logic/build -f Makefile.linux clean
make -C diag/diag_comm/build -f Makefile.linux clean
ifeq "$(CONFIG_PVK_TELEPHONY_PPP)" "y"
make -C ppp clean
endif
#make -C ppp clean
#-rm $(PXA_TARGET_FS_DIR)/etc/ppp/ -rf
make -C aud_sw/linux_audio/alsa_plugin/phone -f Makefile.phone clean MAKERULES=$(PXA_SRC_DIR)/Rules.make
ifneq "$(CONFIG_BIONIC)" "y"
make -C conn_manager clean MAKERULES=$(PXA_SRC_DIR)/Rules.make
endif
make -C cimodemtty clean PXA_SRC_PVK_LNX_DIR=$(PXA_SRC_PVK_LNX_DIR)
ifneq "$(CONFIG_BIONIC)" "y"
make -C iptables clean
endif
make -C errorhandler -f Makefile.app clean MAKERULES=$(PXA_SRC_DIR)/Rules.make
make -C errorhandler -f Makefile.drv clean PXA_SRC_PVK_LNX_DIR=$(PXA_SRC_PVK_LNX_DIR)
make -C hwmap clean MAKERULES=$(PXA_SRC_DIR)/Rules.make
make -C mtil/MTS -f Makefile.mts MAKERULES=$(PXA_SRC_DIR)/Rules.make clean
make -C mtil -f Makefile.mtilips clean
make -C mtil -f Makefile.mtilclapi clean
make -C mtil -f Makefile.mtilsrvapi clean
make -C mtil -f Makefile.mtilsrv clean
-rm $(ATCMDSRVOBJS)
-rm $(EEH_OBJS_USER)
-rm libacipc.a
-rm libacipc.so
-rm linux_telephony/atcmdsrv/src/main.o
-rm atcmdsrv
-rm serial_client
-rm diag_mmi
-rm audioserver
-rm eeh
-rm aud_sw/linux_audio/src/audio_server.o
$(SUDO) rm $(PXA_TARGET_FS_DIR)/tel -rf
$(SUDO) rm $(PXA_TARGET_FS_DIR)/usr/local/lib/iptables -rf
-rm -f $(PXA_TARGET_IMAGE_DIR)/Boerne_DIAG_ATCMDSRV.mdb.txt
-rm -f $(PXA_TARGET_IMAGE_DIR)/Boerne_DIAG_MTIL.mdb.txt
-rm $(PXA_TARGET_FS_DIR)/usr/sbin -rf
-rm $(PXA_TARGET_FS_DIR)/dev/msl?
-rm $(PXA_TARGET_FS_DIR)/dev/rtc
-rm $(PXA_TARGET_FS_DIR)/usr/lib/libasound_module_ctl_phone.so -rf
-rm $(PXA_TARGET_FS_DIR)/usr/lib/libasound_module_pcm_phone.so -rf
-rm $(PXA_TARGET_FS_DIR)/root/.audiorc
-rm -f $(PXA_TARGET_FS_DIR)/etc/asound.conf
-rm -f genlib/diag/src/diag_main.o
-rm -f rtc_server/src/rtct_server.o
-rm -f rtc_server/src/rtct_interface.o
make agps_libs_clean
#-rm diag_app
-rm -f $(DIAG_LINUX_OBJ_TEL)
-rm -f $(DIAG_LINUX_OBJ_AUD)
-rm -f $(DIAG_LINUX_OBJ_EEH)
make -C prepass clean DIAG_MTIL_TRACE=NO
make -C prepass clean DIAG_MTIL_TRACE=YES
-find -name '*.i' -exec rm {} /;
-find -name '*.pp' -exec rm {} /;
-find -name '*.cmd' -exec rm {} /;
-find -name '*.o' -exec rm {} /;
-find -name '*.ko' -exec rm {} /;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: