X-Git-Url: http://git.osdn.net/view?a=blobdiff_plain;f=Android.mk;h=22bb671a67cf51e0b5e49f627b2084bc22e8fa52;hb=refs%2Fheads%2Fnougat-x86;hp=a9eb148ebc9a19082f98e8484e663828ced373d8;hpb=2796e618bea4b351254e92cd0fc968bd5992389f;p=android-x86%2Fbootable-newinstaller.git diff --git a/Android.mk b/Android.mk index a9eb148..22bb671 100644 --- a/Android.mk +++ b/Android.mk @@ -1,4 +1,4 @@ -# Copyright 2009-2010, The Android-x86 Open Source Project +# Copyright 2009-2014, The Android-x86 Open Source Project # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -12,7 +12,7 @@ # See the License for the specific language governing permissions and # limitations under the License. -ifeq ($(TARGET_ARCH),x86) +ifneq ($(filter x86%,$(TARGET_ARCH)),) LOCAL_PATH := $(call my-dir) include $(CLEAR_VARS) @@ -23,16 +23,23 @@ LOCAL_STATIC_LIBRARIES := libdiskconfig_host libcutils liblog edit_mbr := $(HOST_OUT_EXECUTABLES)/$(LOCAL_MODULE) include $(BUILD_HOST_EXECUTABLE) -VER ?= $(shell date +"%F") +include $(CLEAR_VARS) +LOCAL_IS_HOST_MODULE := true +LOCAL_SRC_FILES := rpm/qemu-android +LOCAL_MODULE := $(notdir $(LOCAL_SRC_FILES)) +LOCAL_MODULE_TAGS := debug +LOCAL_MODULE_CLASS := EXECUTABLES +LOCAL_POST_INSTALL_CMD := $(hide) sed -i "s|CMDLINE|$(BOARD_KERNEL_CMDLINE)|" $(HOST_OUT_EXECUTABLES)/$(LOCAL_MODULE) +include $(BUILD_PREBUILT) + +VER ?= $$(date +"%F") # use squashfs for iso, unless explictly disabled ifneq ($(USE_SQUASHFS),0) -MKSQUASHFS = $(shell which mksquashfs) +MKSQUASHFS := $(MAKE_SQUASHFS) define build-squashfs-target - $(if $(shell $(MKSQUASHFS) -version | grep "version [0-3].[0-9]"),\ - $(error Your mksquashfs is too old to work with kernel 2.6.29. Please upgrade to squashfs-tools 4.0)) - $(hide) $(MKSQUASHFS) $(1) $(2) -noappend + $(hide) $(MKSQUASHFS) $(1) $(2) -noappend -comp gzip endef endif @@ -42,42 +49,61 @@ initrd_bin := \ $(wildcard $(initrd_dir)/*/*) systemimg := $(PRODUCT_OUT)/system.$(if $(MKSQUASHFS),sfs,img) +$(if $(MKSQUASHFS),$(systemimg): | $(MKSQUASHFS)) -INITRD_RAMDISK := $(PRODUCT_OUT)/initrd.img +TARGET_INITRD_OUT := $(PRODUCT_OUT)/initrd +INITRD_RAMDISK := $(TARGET_INITRD_OUT).img $(INITRD_RAMDISK): $(initrd_bin) $(systemimg) $(TARGET_INITRD_SCRIPTS) | $(ACP) $(MKBOOTFS) - rm -rf $(TARGET_INSTALLER_OUT) - $(ACP) -pr $(initrd_dir) $(TARGET_INSTALLER_OUT) - $(if $(TARGET_INITRD_SCRIPTS),$(ACP) -p $(TARGET_INITRD_SCRIPTS) $(TARGET_INSTALLER_OUT)/scripts) - ln -s /bin/ld-linux.so.2 $(TARGET_INSTALLER_OUT)/lib - mkdir -p $(addprefix $(TARGET_INSTALLER_OUT)/,android iso mnt proc sys tmp sfs hd) - echo "VER=$(VER)" > $(TARGET_INSTALLER_OUT)/scripts/00-ver - $(MKBOOTFS) $(TARGET_INSTALLER_OUT) | gzip -9 > $@ + $(hide) rm -rf $(TARGET_INITRD_OUT) + mkdir -p $(addprefix $(TARGET_INITRD_OUT)/,android hd iso lib mnt proc scripts sfs sys tmp) + $(if $(TARGET_INITRD_SCRIPTS),$(ACP) -p $(TARGET_INITRD_SCRIPTS) $(TARGET_INITRD_OUT)/scripts) + ln -s /bin/ld-linux.so.2 $(TARGET_INITRD_OUT)/lib + echo "VER=$(VER)" > $(TARGET_INITRD_OUT)/scripts/00-ver + $(if $(RELEASE_OS_TITLE),echo "OS_TITLE=$(RELEASE_OS_TITLE)" >> $(TARGET_INITRD_OUT)/scripts/00-ver) + $(if $(INSTALL_PREFIX),echo "INSTALL_PREFIX=$(INSTALL_PREFIX)" >> $(TARGET_INITRD_OUT)/scripts/00-ver) + $(MKBOOTFS) $( $@ INSTALL_RAMDISK := $(PRODUCT_OUT)/install.img -$(INSTALL_RAMDISK): $(wildcard $(LOCAL_PATH)/install/*/* $(LOCAL_PATH)/install/*/*/*/*) | $(MKBOOTFS) - $(if $(TARGET_INSTALL_SCRIPTS),$(ACP) -p $(TARGET_INSTALL_SCRIPTS) $(TARGET_INSTALLER_OUT)/scripts) - $(MKBOOTFS) $(dir $(dir $( $@ +INSTALLER_BIN := $(TARGET_INSTALLER_OUT)/sbin/efibootmgr +$(INSTALL_RAMDISK): $(wildcard $(LOCAL_PATH)/install/*/* $(LOCAL_PATH)/install/*/*/*/*) $(INSTALLER_BIN) | $(MKBOOTFS) + $(if $(TARGET_INSTALL_SCRIPTS),mkdir -p $(TARGET_INSTALLER_OUT)/scripts; $(ACP) -p $(TARGET_INSTALL_SCRIPTS) $(TARGET_INSTALLER_OUT)/scripts) + $(MKBOOTFS) $(dir $(dir $( $@ boot_dir := $(PRODUCT_OUT)/boot $(boot_dir): $(shell find $(LOCAL_PATH)/boot -type f | sort -r) $(systemimg) $(INSTALL_RAMDISK) $(GENERIC_X86_CONFIG_MK) | $(ACP) $(hide) rm -rf $@ $(ACP) -pr $(dir $( /dev/null),xorriso -as mkisofs,genisoimage) ISO_IMAGE := $(PRODUCT_OUT)/$(TARGET_PRODUCT).iso $(ISO_IMAGE): $(boot_dir) $(BUILT_IMG) @echo ----- Making iso image ------ $(hide) sed -i "s|\(Installation CD\)\(.*\)|\1 $(VER)|; s|CMDLINE|$(BOARD_KERNEL_CMDLINE)|" $ $@; $(edit_mbr) -l $(ESP_LAYOUT) -i $@ esp=$@.fat $(hide) rm -f $@.fat -.PHONY: iso_img usb_img efi_img +.PHONY: iso_img usb_img efi_img rpm iso_img: $(ISO_IMAGE) usb_img: $(ISO_IMAGE) efi_img: $(EFI_IMAGE)