LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)
-LOCAL_MODULE := edit_mbr
-LOCAL_SRC_FILES := editdisklbl/editdisklbl.c
-LOCAL_CFLAGS := -O2 -g -W -Wall -Werror# -D_LARGEFILE64_SOURCE
-LOCAL_STATIC_LIBRARIES := libdiskconfig_host libcutils liblog
-edit_mbr := $(HOST_OUT_EXECUTABLES)/$(LOCAL_MODULE)
-include $(BUILD_HOST_EXECUTABLE)
+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 ?= $(shell date +"%F")
+VER ?= $$(date +"%F")
# use squashfs for iso, unless explictly disabled
ifneq ($(USE_SQUASHFS),0)
mkdir -p $(addprefix $(TARGET_INSTALLER_OUT)/,android iso mnt proc sys tmp sfs hd)
echo "VER=$(VER)" > $(TARGET_INSTALLER_OUT)/scripts/00-ver
$(if $(INSTALL_PREFIX),echo "INSTALL_PREFIX=$(INSTALL_PREFIX)" >> $(TARGET_INSTALLER_OUT)/scripts/00-ver)
+ $(if $(PREV_VERS),echo "PREV_VERS=\"$(PREV_VERS)\"" >> $(TARGET_INSTALLER_OUT)/scripts/00-ver)
$(MKBOOTFS) $(TARGET_INSTALLER_OUT) | gzip -9 > $@
INSTALL_RAMDISK := $(PRODUCT_OUT)/install.img
$(hide) isohybrid --uefi $@ || echo -e "isohybrid not found.\nInstall syslinux 4.0 or higher if you want to build a usb bootable iso."
@echo -e "\n\n$@ is built successfully.\n\n"
-# Note: requires dosfstools
-EFI_IMAGE := $(PRODUCT_OUT)/$(TARGET_PRODUCT).img
-ESP_LAYOUT := $(LOCAL_PATH)/editdisklbl/esp_layout.conf
-$(EFI_IMAGE): $(wildcard $(LOCAL_PATH)/boot/boot/*/*) $(BUILT_IMG) $(ESP_LAYOUT) | $(edit_mbr)
- $(hide) sed "s|VER|$(VER)|; s|CMDLINE|$(BOARD_KERNEL_CMDLINE)|" $(<D)/grub.cfg > $(@D)/grub.cfg
- $(hide) size=0; \
- for s in `du -sk $^ | awk '{print $$1}'`; do \
- size=$$(($$size+$$s)); \
- done; \
- size=$$(($$(($$(($$(($$(($$size + $$(($$size / 100)))) - 1)) / 32)) + 1)) * 32)); \
- rm -f $@.fat; mkdosfs -n Android-x86 -C $@.fat $$size
- $(hide) mcopy -Qsi $@.fat $(<D)/../../../install/grub2/efi $(BUILT_IMG) ::
- $(hide) mmd -i $@.fat ::boot; mmd -i $@.fat ::boot/grub
- $(hide) mcopy -Qoi $@.fat $(@D)/grub.cfg ::boot/grub
- $(hide) cat /dev/null > $@; $(edit_mbr) -l $(ESP_LAYOUT) -i $@ esp=$@.fat
- $(hide) rm -f $@.fat
+rpm: $(wildcard $(LOCAL_PATH)/rpm/*) $(BUILT_IMG)
+ @echo ----- Making an rpm ------
+ OUT=$(abspath $(PRODUCT_OUT)); mkdir -p $$OUT/rpm/BUILD; rm -rf $$OUT/rpm/RPMS/*; $(ACP) $< $$OUT; \
+ rpmbuild -bb --target=$(if $(filter x86,$(TARGET_ARCH)),i686,x86_64) -D"cmdline $(BOARD_KERNEL_CMDLINE)" \
+ -D"_topdir $$OUT/rpm" -D"_sourcedir $$OUT" -D"systemimg $(notdir $(systemimg))" -D"ver $(VER)" \
+ $(if $(BUILD_NAME_VARIANT),-D"name $(BUILD_NAME_VARIANT)") \
+ -D"install_prefix $(if $(INSTALL_PREFIX),$(INSTALL_PREFIX),android-$(VER))" $(filter %.spec,$^); \
+ mv $$OUT/rpm/RPMS/*/*.rpm $$OUT
-.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)
+efi_img: $(ISO_IMAGE)
endif