device/qcom/msm8625/BoardConfig.mk
TARGET_CPU_ABI := armeabi-v7a
TARGET_CPU_ABI2 := armeabi TARGET_ARCH_VARIANT := armv7-a-neonTARGET_BOARD_PLATFORM := msm7627a TARGET_BOOTLOADER_BOARD_NAME := 7x27 TARGET_CPU_SMP := true TARGET_AVOID_DRAW_TEXTURE_EXTENSION := true TARGET_USES_16BPPSURFACE_FOR_OPAQUE := trueBoard部分配置如上:
vendor/qcom/proprietary/common/config/device-vendor.mk
ifneq (, $(filter $(PRODUCT_LIST), $(TARGET_PRODUCT))) include device/qcom/$(TARGET_PRODUCT)/BoardConfig.mk ifeq ($(call is-board-platform,msm8660),true) 这里判断当前平台是否是msm8660. PREBUILT_BOARD_PLATFORM_DIR := msm8660_surf else ifeq ($(TARGET_PRODUCT),msm8625) PREBUILT_BOARD_PLATFORM_DIR := msm8625 else #PREBUILT_BOARD_PLATFORM_DIR := $(TARGET_BOARD_PLATFORM) PREBUILT_BOARD_PLATFORM_DIR := msm8625endif
84 # $(call is-board-platform,bp)
85 # returns true or empty 86 define is-board-platform 87 $(call match-word,$(1),$(TARGET_BOARD_PLATFORM)) 88 endef 89 90 # $(call is-not-board-platform,bp) 91 # returns true or empty 92 define is-not-board-platform 93 $(if $(call match-word,$(1),$(TARGET_BOARD_PLATFORM)),,true) 94 endef 95 96 # $(call is-board-platform-in-list,bpl) 97 # returns true or empty 98 define is-board-platform-in-list 99 $(call match-word-in-list,$(TARGET_BOARD_PLATFORM),$(1))匹配当前的TARGET_BOARD_PLATFORM ,也就是msm7627a 是否在定义的列表里面. 这个就是关键用法.
100 endef
101 102 # $(call is-vendor-board-platform,vendor) 103 # returns true or empty 104 define is-vendor-board-platform 105 $(strip \ 106 $(call match-word-in-list,$(TARGET_BOARD_PLATFORM),\ 107 $(call get-vendor-board-platforms,$(1)) \ 108 ) \ 109 ) 110 endefvim device/qcom/common/utils.mk
# vars for use by utils 2 empty := 3 space := $(empty) $(empty) 4 colon := $(empty):$(empty) 5 underscore := $(empty)_$(empty) 6 7 # $(call match-word,w1,w2) 8 # checks if w1 == w2 9 # How it works 10 # if (w1-w2 not empty or w2-w1 not empty) then not_match else match 11 # 12 # returns true or empty 13 #$(warning :$(1): :$(2): :$(subst $(1),,$(2)):) \ 14 #$(warning :$(2): :$(1): :$(subst $(2),,$(1)):) \ 15 # 16 define match-word 17 $(strip \ 18 $(if $(or $(subst $(1),$(empty),$(2)),$(subst $(2),$(empty),$(1))),,true) \ 19 ) 20 endef 1 # vars for use by utils 2 empty := 3 space := $(empty) $(empty) 4 colon := $(empty):$(empty) 5 underscore := $(empty)_$(empty) 6 7 # $(call match-word,w1,w2) 8 # checks if w1 == w2 9 # How it works 10 # if (w1-w2 not empty or w2-w1 not empty) then not_match else match 11 # 12 # returns true or empty 13 #$(warning :$(1): :$(2): :$(subst $(1),,$(2)):) \ 14 #$(warning :$(2): :$(1): :$(subst $(2),,$(1)):) \ 15 # 16 define match-word 17 $(strip \ 18 $(if $(or $(subst $(1),$(empty),$(2)),$(subst $(2),$(empty),$(1))),,true) \