github.com/westcoastroms/westcoastroms-build@v0.0.0-20190928114312-2350e5a73030/build/make/core/tasks/oem_image.mk (about)

     1  #
     2  # Copyright (C) 2014 The Android Open Source Project
     3  #
     4  # Licensed under the Apache License, Version 2.0 (the "License");
     5  # you may not use this file except in compliance with the License.
     6  # You may obtain a copy of the License at
     7  #
     8  #      http://www.apache.org/licenses/LICENSE-2.0
     9  #
    10  # Unless required by applicable law or agreed to in writing, software
    11  # distributed under the License is distributed on an "AS IS" BASIS,
    12  # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    13  # See the License for the specific language governing permissions and
    14  # limitations under the License.
    15  #
    16  
    17  # We build oem.img only if it's asked for.
    18  ifneq ($(filter $(MAKECMDGOALS),oem_image),)
    19  ifndef BOARD_OEMIMAGE_PARTITION_SIZE
    20  $(error BOARD_OEMIMAGE_PARTITION_SIZE is not set.)
    21  endif
    22  
    23  INTERNAL_OEMIMAGE_FILES := \
    24      $(filter $(TARGET_OUT_OEM)/%,$(ALL_DEFAULT_INSTALLED_MODULES))
    25  
    26  oemimage_intermediates := \
    27      $(call intermediates-dir-for,PACKAGING,oem)
    28  BUILT_OEMIMAGE_TARGET := $(PRODUCT_OUT)/oem.img
    29  # We just build this directly to the install location.
    30  INSTALLED_OEMIMAGE_TARGET := $(BUILT_OEMIMAGE_TARGET)
    31  
    32  $(INSTALLED_OEMIMAGE_TARGET) : $(INTERNAL_USERIMAGES_DEPS) $(INTERNAL_OEMIMAGE_FILES)
    33  	$(call pretty,"Target oem fs image: $@")
    34  	@mkdir -p $(TARGET_OUT_OEM)
    35  	@mkdir -p $(oemimage_intermediates) && rm -rf $(oemimage_intermediates)/oem_image_info.txt
    36  	$(call generate-userimage-prop-dictionary, $(oemimage_intermediates)/oem_image_info.txt, skip_fsck=true)
    37  	$(hide) PATH=$(foreach p,$(INTERNAL_USERIMAGES_BINARY_PATHS),$(p):)$$PATH \
    38  	  build/make/tools/releasetools/build_image.py \
    39  	  $(TARGET_OUT_OEM) $(oemimage_intermediates)/oem_image_info.txt $@ $(TARGET_OUT)
    40  	$(hide) $(call assert-max-image-size,$@,$(BOARD_OEMIMAGE_PARTITION_SIZE))
    41  
    42  .PHONY: oem_image
    43  oem_image : $(INSTALLED_OEMIMAGE_TARGET)
    44  $(call dist-for-goals, oem_image, $(INSTALLED_OEMIMAGE_TARGET))
    45  
    46  endif  # oem_image in $(MAKECMDGOALS)