From: Daniel Dickinson <open...@daniel.thecshore.com> Certain platforms have large numbers of possible images, and it can be desirable to build neither all images nor only a single image, therefore this patch makes selecting target profiles a menu instead of a single choice, which allows the user to build a specific subset of all possible images for a target.
This patch contains only the build machinery changes to support selecting multiple images and the .config generator, but does not include profile changes that are needed to make selecting multiple profiles possible in menuconfig. This is done to isolate the changes as much as possible, although obviously this patch touches a greaty many files due to changing the image generation logic (which is necessary in order to eliminate the single-valued PROFILE variable, which gets in the way of allowing multiple images to be built at once. Signed-off-by: Daniel Dickinson <open...@daniel.thecshore.com> --- include/image.mk | 60 +++++++++++++++----------- include/target.mk | 7 ++- scripts/metadata.pl | 83 ++++++++++++++++++++++++++++++++++-- scripts/metadata.pm | 5 +++ target/imagebuilder/files/Makefile | 5 ++- target/linux/adm5120/image/Makefile | 4 +- target/linux/ar71xx/image/Makefile | 13 +++--- target/linux/at91/image/Makefile | 2 +- target/linux/au1000/image/Makefile | 2 +- target/linux/brcm47xx/image/Makefile | 2 +- target/linux/cns3xxx/image/Makefile | 2 +- target/linux/gemini/image/Makefile | 4 +- target/linux/ipq806x/image/Makefile | 2 +- target/linux/ixp4xx/image/Makefile | 2 +- target/linux/kirkwood/image/Makefile | 62 +++++++++++++-------------- target/linux/lantiq/image/Makefile | 43 +++++++++---------- target/linux/malta/image/Makefile | 2 +- target/linux/mcs814x/image/Makefile | 4 +- target/linux/mediatek/image/Makefile | 2 +- target/linux/mpc85xx/image/Makefile | 6 +-- target/linux/mvebu/image/Makefile | 10 ++--- target/linux/mxs/image/Makefile | 4 +- target/linux/netlogic/image/Makefile | 2 +- target/linux/octeon/image/Makefile | 2 +- target/linux/omap/image/Makefile | 2 +- target/linux/omap24xx/image/Makefile | 2 +- target/linux/oxnas/image/Makefile | 22 +++++----- target/linux/ppc40x/image/Makefile | 4 +- target/linux/ppc44x/image/Makefile | 2 +- target/linux/ramips/image/Makefile | 8 ++-- target/linux/rb532/image/Makefile | 2 +- target/linux/realview/image/Makefile | 6 +-- target/linux/sunxi/image/Makefile | 51 +++++++++++----------- target/linux/x86/image/Makefile | 14 +++--- 34 files changed, 271 insertions(+), 172 deletions(-) diff --git a/include/image.mk b/include/image.mk index 4eee4ad..bb46bb9 100644 --- a/include/image.mk +++ b/include/image.mk @@ -90,8 +90,6 @@ define add_jffs2_mark echo -ne '\xde\xad\xc0\xde' >> $(1) endef -PROFILE_SANITIZED := $(call sanitize,$(PROFILE)) - define split_args $(foreach data, \ $(subst |,$(space),\ @@ -114,8 +112,9 @@ define prepare_generic_squashfs $(STAGING_DIR_HOST)/bin/padjffs2 $(1) 4 8 16 64 128 256 endef +# $(1) profile define Image/BuildKernel/Initramfs - $(call Image/Build/Initramfs) + $(call Image/Build/Initramfs,$(1)) endef define Image/BuildKernel/MkuImage @@ -192,7 +191,7 @@ ifneq ($(CONFIG_NAND_SUPPORT),) # $(1) board name # $(2) ubinize-image options (e.g. --uboot-env and/or --kernel kernelimage) # $(3) rootfstype (e.g. squashfs or ubifs) -# $(4) options to pass-through to ubinize (i.e. $($(PROFILE)_UBI_OPTS))) +# $(4) options to pass-through to ubinize (i.e. $(<profile>_UBI_OPTS))) define Image/Build/UbinizeImage sh $(TOPDIR)/scripts/ubinize-image.sh $(2) \ "$(KDIR)/root.$(3)" \ @@ -203,12 +202,13 @@ ifneq ($(CONFIG_NAND_SUPPORT),) endif ifneq ($(CONFIG_TARGET_ROOTFS_UBIFS),) +# $(1) profile define Image/mkfs/ubifs/generate $(CP) ./ubinize$(1).cfg $(KDIR) ( cd $(KDIR); \ $(STAGING_DIR_HOST)/bin/ubinize \ - $(if $($(PROFILE)_UBI_OPTS), \ - $(shell echo $($(PROFILE)_UBI_OPTS)), \ + $(if $($(1)_UBI_OPTS), \ + $(shell echo $($(1)_UBI_OPTS)), \ $(shell echo $(UBI_OPTS)) \ ) \ -o $(KDIR)/root$(1).ubi \ @@ -216,12 +216,13 @@ ifneq ($(CONFIG_TARGET_ROOTFS_UBIFS),) ) endef +# $(1) profile define Image/mkfs/ubifs - ifneq ($($(PROFILE)_UBIFS_OPTS)$(UBIFS_OPTS),) + ifneq ($($(1)_UBIFS_OPTS)$(UBIFS_OPTS),) $(STAGING_DIR_HOST)/bin/mkfs.ubifs \ - $(if $($(PROFILE)_UBIFS_OPTS), \ - $(shell echo $($(PROFILE)_UBIFS_OPTS)), \ + $(if $($(1)_UBIFS_OPTS), \ + $(shell echo $($(1)_UBIFS_OPTS)), \ $(shell echo $(UBIFS_OPTS)) \ ) \ $(if $(CONFIG_TARGET_UBIFS_FREE_SPACE_FIXUP),--space-fixup) \ @@ -233,13 +234,13 @@ ifneq ($(CONFIG_TARGET_ROOTFS_UBIFS),) -o $(KDIR)/root.ubifs \ -d $(TARGET_DIR) endif - $(call Image/Build,ubifs) + $(call Image/Build,ubifs,$(1)) - ifneq ($($(PROFILE)_UBI_OPTS)$(UBI_OPTS),) + ifneq ($($(1)_UBI_OPTS)$(UBI_OPTS),) $(if $(wildcard ./ubinize.cfg),$(call Image/mkfs/ubifs/generate,)) $(if $(wildcard ./ubinize-overlay.cfg),$(call Image/mkfs/ubifs/generate,-overlay)) endif - $(if $(wildcard ./ubinize.cfg),$(call Image/Build,ubi)) + $(if $(wildcard ./ubinize.cfg),$(call Image/Build,ubi,$(1))) endef endif @@ -248,7 +249,8 @@ define Image/mkfs/cpiogz endef define Image/mkfs/targz - $(TAR) -czpf $(BIN_DIR)/$(IMG_PREFIX)$(if $(PROFILE_SANITIZED),-$(PROFILE_SANITIZED))-rootfs.tar.gz --numeric-owner --owner=0 --group=0 --sort=name -C $(TARGET_DIR)/ . +# Move to Image/Build to eliminate profile from mkfs + touch $(KDIR)/root.targz endef E2SIZE=$(shell echo $$(($(CONFIG_TARGET_ROOTFS_PARTSIZE)*1024*1024))) @@ -293,6 +295,11 @@ define BuildImage/mkfs endef +# $(1) profile +define Image/Build/targz + $(TAR) -czpf $(BIN_DIR)/$(IMG_PREFIX)$(if $(call sanitize,$(1)),-$(call sanitize,$(1)))-rootfs.tar.gz --numeric-owner --owner=0 --group=0 --sort=name -C $(TARGET_DIR)/ . +endef + # Build commands that can be called from Device/* templates define Build/uImage mkimage -A $(LINUX_KARCH) \ @@ -427,7 +434,7 @@ define Build/sysupgrade-nand endef define Device/Init - PROFILES := $(PROFILE) + PROFILES := $(PROFILES_BUILD) DEVICE_NAME := $(1) KERNEL:= KERNEL_INITRAMFS = $$(KERNEL) @@ -460,8 +467,8 @@ define Device/Export endef define Device/Check - _TARGET = $$(if $$(filter $(PROFILE),$$(PROFILES)),install,install-disabled) - _COMPILE_TARGET = $$(if $(if $(IB),,$(CONFIG_IB)$$(filter $(PROFILE),$$(PROFILES))),compile,compile-disabled) + _TARGET = $(if $(filter $(1),$(PROFILES_BUILD)),install,install-disabled) + _COMPILE_TARGET = $(if $(if $(IB),,$(CONFIG_IB)$(filter $(1),$(PROFILES_BUILD))),compile,compile-disabled) endef ifndef IB @@ -547,6 +554,12 @@ define Device endef +# $(1) macro +# $(2) macro parameter +define BuildForProfiles + $(foreach profile,$(PROFILES_BUILD),$(call $(1),$(2),$(profile))) +endef + define BuildImage download: @@ -565,29 +578,28 @@ define BuildImage image_prepare: compile mkdir -p $(KDIR)/tmp - $(call Image/Prepare) + $(call BuildForProfiles,Image/Prepare) else image_prepare: mkdir -p $(KDIR)/tmp endif mkfs_prepare: image_prepare - $(call Image/mkfs/prepare) + $(call BuildForProfiles,Image/mkfs/prepare) kernel_prepare: mkfs_prepare - $(call Image/BuildKernel) - $(if $(CONFIG_TARGET_ROOTFS_INITRAMFS),$(if $(IB),,$(call Image/BuildKernel/Initramfs))) - $(call Image/InstallKernel) + $(call BuildForProfiles,Image/BuildKernel) + $(if $(CONFIG_TARGET_ROOTFS_INITRAMFS),$(if $(IB),,$(call BuildForProfiles,Image/BuildKernel/Initramfs))) + $(call BuildForProfiles,Image/InstallKernel) $(foreach device,$(TARGET_DEVICES),$(call Device,$(device))) $(foreach fs,$(TARGET_FILESYSTEMS) $(fs-subtypes-y),$(call BuildImage/mkfs,$(fs))) install: kernel_prepare $(foreach fs,$(TARGET_FILESYSTEMS), - $(call Image/Build,$(fs)) + $(call BuildForProfiles,Image/Build,$(fs)) ) - $(call Image/mkfs/ubifs) + $(foreach profile,$(PROFILES_BUILD),$(call Image/mkfs/ubifs,$(profile))) $(call Image/Checksum,md5sum --binary,md5sums) $(call Image/Checksum,openssl dgst -sha256,sha256sums) - endef diff --git a/include/target.mk b/include/target.mk index f129298..92e52db 100644 --- a/include/target.mk +++ b/include/target.mk @@ -70,6 +70,11 @@ define Profile DUMPINFO += \ echo "Target-Profile: $(1)"; \ echo "Target-Profile-Name: $(NAME)"; \ + echo "Target-Profile-Type: $(if $(filter All,$(1)),all,$(if $(filter Minimal,$(1)),minimal,normal))"; \ + echo "Target-Profile-Skip: $(if $(filter Default,$(1)),$(if $(PROFILE_SKIP_DEFAULT),1,0),$(if $(PROFILE_SKIP),1,0))"; \ + echo "Target-Profile-Skip-Single: $(if $(filter All,$(1)),$(if $(PROFILE_SKIP_SINGLE),1,0),0)"; \ + echo "Target-Profile-Default: $(if $(filter All,$(1)),1,$(if $(filter Default,$(1)),1,0))"; \ + echo "Target-Profile-Build-If-All: $(if $(filter All,$(1)),0,$(if $(filter Minimal,$(1)),0,1))"; \ echo "Target-Profile-Packages: $(PACKAGES) $(call extra_packages,$(DEFAULT_PACKAGES) $(PACKAGES))"; \ if [ -f ./config/profile-$(1) ]; then \ echo "Target-Profile-Kconfig: yes"; \ @@ -82,7 +87,7 @@ define Profile echo "@@"; \ echo; ifeq ($(CONFIG_TARGET_$(call target_conf,$(BOARD)_$(if $(SUBTARGET),$(SUBTARGET)_))$(1)),y) - PROFILE=$(1) + PROFILES_BUILD += $(1) endif endef endif diff --git a/scripts/metadata.pl b/scripts/metadata.pl index 48b1b7a..d9f23a1 100755 --- a/scripts/metadata.pl +++ b/scripts/metadata.pl @@ -275,8 +275,16 @@ EOF print <<EOF; endchoice -choice - prompt "Target Profile" +menu "Target Profile" + +EOF + print <<EOF; +config PROFILE_SINGLE + bool + prompt "Select single profile" + + choice + prompt "Single Target Profile" if PROFILE_SINGLE EOF @@ -284,12 +292,80 @@ EOF my $profiles = $target->{profiles}; foreach my $profile (@$profiles) { + next if ($profile->{skip}); + next if ($profile->{skip_single}); + print <<EOF; + config PROFILE_SINGLE_TARGET_$target->{conf}_$profile->{id} + bool "$profile->{name}" + depends on TARGET_$target->{conf} + select TARGET_$target->{conf}_$profile->{id} + $profile->{config} +EOF + } + } + + print <<EOF; + endchoice +EOF + + my %profile_all; + my %profile_minimal; + + foreach my $target (@target) { + my $profiles = $target->{profiles}; + + foreach my $profile (@$profiles) { + if ($profile->{type} eq 'all') { + $profile_all{$target->{conf}} = "TARGET_$target->{conf}_$profile->{id}"; + } elsif ($profile->{type} eq 'minimal') { + $profile_minimal{$target->{conf}} = "TARGET_$target->{conf}_$profile->{id}"; + } + } + } + + foreach my $target (@target) { + my $profiles = $target->{profiles}; + + foreach my $profile (@$profiles) { + next if ($profile->{skip}); print <<EOF; config TARGET_$target->{conf}_$profile->{id} bool "$profile->{name}" depends on TARGET_$target->{conf} + depends on ( !PROFILE_SINGLE || PROFILE_SINGLE_TARGET_$target->{conf}_$profile->{id} ) +EOF + if ((not ($profile->{type} eq 'minimal')) and ($profile_minimal{$target->{conf}})) { + print <<EOF; + depends on !$profile_minimal{$target->{conf}} +EOF + } + + if ($profile->{build_if_all}) { + if ($profile_all{$target->{conf}}) { + print <<EOF; + default y if $profile_all{$target->{conf}} +EOF + + } + } + + if ($profile->{default}) { + print <<EOF; + default y +EOF + } + + if ($profile->{type} eq 'minimal') { + print <<EOF; + default n +EOF + + } + + print <<EOF; $profile->{config} EOF + $profile->{kconfig} and print "\tselect PROFILE_KCONFIG\n"; my @pkglist = merge_package_lists($target->{packages}, $profile->{packages}); foreach my $pkg (@pkglist) { @@ -306,9 +382,8 @@ EOF print "$help\n"; } } - print <<EOF; -endchoice +endmenu config HAS_SUBTARGETS bool diff --git a/scripts/metadata.pm b/scripts/metadata.pm index 0ed3524..cdc2eb8 100644 --- a/scripts/metadata.pm +++ b/scripts/metadata.pm @@ -94,6 +94,11 @@ sub parse_target_metadata($) { /^Target-Profile-Description:\s*(.*)\s*/ and $profile->{desc} = get_multiline(*FILE); /^Target-Profile-Config:/ and $profile->{config} = get_multiline(*FILE, "\t"); /^Target-Profile-Kconfig:/ and $profile->{kconfig} = 1; + /^Target-Profile-Type:\s*(.+)\s*$/ and $profile->{type} = $1; + /^Target-Profile-Default:\s*(.+)\s*$/ and $profile->{default} = $1; + /^Target-Profile-Skip:\s*(.+)\s*$/ and $profile->{skip} = $1; + /^Target-Profile-Skip-Single:\s*(.+)\s*$/ and $profile->{skip_single} = $1; + /^Target-Profile-Build-If-All:\s*(.+)\s*$/ and $profile->{build_if_all} = $1; } close FILE; foreach my $target (@target) { diff --git a/target/imagebuilder/files/Makefile b/target/imagebuilder/files/Makefile index 1056a42..a5a95d2 100644 --- a/target/imagebuilder/files/Makefile +++ b/target/imagebuilder/files/Makefile @@ -39,7 +39,8 @@ Building images: target profile and package set. You can use the following parameters to change that: - make image PROFILE="<profilename>" # override the default target profile + make image PROFILE="<profilename>" # override the default targets to specified single profile + make image PROFILES_BUILD="<profilename>[ <profilename> ... ]" # override list of profiles to build make image PACKAGES="<pkg1> [<pkg2> [<pkg3> ...]]" # include extra packages make image FILES="<path>" # include extra files from <path> make image BIN_DIR="<path>" # alternative output directory for the images @@ -175,7 +176,7 @@ build_image: FORCE @echo @echo Building images... $(NO_TRACE_MAKE) -C target/linux/$(BOARD)/image install TARGET_BUILD=1 IB=1 EXTRA_IMAGE_NAME="$(EXTRA_IMAGE_NAME)" \ - $(if $(USER_PROFILE),PROFILE="$(USER_PROFILE)") + $(if $(USER_PROFILE),PROFILES_BUILD="$(if $(PROFILES_BUILD),$(PROFILES_BUILD),$(USER_PROFILE))") clean: rm -rf $(TMP_DIR) $(DL_DIR) $(TARGET_DIR) $(BIN_DIR) diff --git a/target/linux/adm5120/image/Makefile b/target/linux/adm5120/image/Makefile index 4ca4d48..c0864b7 100644 --- a/target/linux/adm5120/image/Makefile +++ b/target/linux/adm5120/image/Makefile @@ -93,11 +93,11 @@ endef include $(SUBTARGET).mk define Image/Build - $(call Image/Build/Profile/$(PROFILE),$(1)) + $(call Image/Build/Profile/$(2),$(1)) endef define Image/Build/Initramfs - $(call Image/Build/Profile/$(PROFILE),Initramfs) + $(call Image/Build/Profile/$(2),Initramfs) endef define Image/BuildKernel diff --git a/target/linux/ar71xx/image/Makefile b/target/linux/ar71xx/image/Makefile index 31eb345..22fe1fe 100644 --- a/target/linux/ar71xx/image/Makefile +++ b/target/linux/ar71xx/image/Makefile @@ -1590,7 +1590,7 @@ qihoo_c301_mtdlayout=mtdparts=spi0.0:256k(u-boot)ro,64k(u-boot-env),64k(devdata) yun_mtdlayout_8M=mtdparts=spi0.0:256k(u-boot)ro,64k(u-boot-env)ro,6464k(rootfs),1280k(kernel),64k(nvram),64k(art),7744k@0x50000(firmware) yun_mtdlayout_16M=mtdparts=spi0.0:256k(u-boot)ro,64k(u-boot-env)ro,14656k(rootfs),1280k(kernel),64k(nvram),64k(art),15936k@0x50000(firmware) - +# $(1) profile define Image/BuildKernel cp $(KDIR)/vmlinux.elf $(VMLINUX).elf cp $(KDIR)/vmlinux $(VMLINUX).bin @@ -1600,7 +1600,7 @@ define Image/BuildKernel $(call MkuImage,lzma,,$(KDIR)/vmlinux.bin.lzma,$(UIMAGE)-lzma.bin) cp $(KDIR)/loader-generic.elf $(VMLINUX)-lzma.elf -mkdir -p $(KDIR_TMP) - $(call Image/Build/Profile/$(IMAGE_PROFILE),buildkernel) + $(call Image/Build/Profile/$(call IMAGE_PROFILE,$(1)),buildkernel) endef define Image/BuildKernel/Initramfs @@ -2544,10 +2544,12 @@ define Image/Build/jffs2 dd if=$(KDIR)/root.$(1) of=$(BIN_DIR)/$(IMG_PREFIX)-root.$(1) bs=128k conv=sync endef +# $(1) profile define Image/Build/Initramfs - $(call Image/Build/Profile/$(IMAGE_PROFILE),initramfs) + $(call Image/Build/Profile/$(call IMAGE_PROFILE,$(1)),initramfs) endef +# $(1) profile define Image/Prepare gzip -9n -c $(KDIR)/vmlinux > $(KDIR)/vmlinux.bin.gz $(call CompressLzma,$(KDIR)/vmlinux,$(KDIR)/vmlinux.bin.lzma) @@ -2557,13 +2559,14 @@ ifneq ($(CONFIG_TARGET_ROOTFS_INITRAMFS),) $(call Image/BuildLoader,generic,elf,,,-initramfs) endif $(call Image/BuildLoader,generic,elf) - $(call Image/Build/Profile/$(if $(CONFIG_IB),Default,$(IMAGE_PROFILE)),loader) + $(call Image/Build/Profile/$(call IMAGE_PROFILE,$(1)),loader) endef # $(1): filesystem type. +# $(2): profile define Image/Build $(call Image/Build/$(call rootfs_type,$(1)),$(1)) - $(call Image/Build/Profile/$(IMAGE_PROFILE),$(1)) + $(call Image/Build/Profile/$(call IMAGE_PROFILE,$(2)),$(1)) endef $(eval $(call BuildImage)) diff --git a/target/linux/at91/image/Makefile b/target/linux/at91/image/Makefile index 4e472f2..648b7f5 100644 --- a/target/linux/at91/image/Makefile +++ b/target/linux/at91/image/Makefile @@ -94,7 +94,7 @@ define Image/BuildKernel if [ $(CONFIG_FLEXIBITY_ROOT) ]; then \ $(INSTALL_BIN) $(BIN_DIR)/$(IMG_PREFIX)-uImage $(TARGET_DIR)/uImage ; \ fi - $(call Image/Build/Kernel/$(PROFILE)) + $(call Image/Build/Kernel/$(2)) endef define Image/Build diff --git a/target/linux/au1000/image/Makefile b/target/linux/au1000/image/Makefile index 744e5c6..0f6ceb1 100644 --- a/target/linux/au1000/image/Makefile +++ b/target/linux/au1000/image/Makefile @@ -67,7 +67,7 @@ define Image/Build tar -C $(BIN_DIR) -cvzf $(BIN_DIR)/$(IMG_PREFIX)-$(1)-sysupgrade.bin \ $(IMG_PREFIX)-vmlinux.bin -C $(TMP_DIR) $(IMG_PREFIX)-root.fs ifeq ($(CONFIG_TARGET_ROOTFS_INITRAMFS),y) - $(call Image/Build/Initramfs) + $(call Image/Build/Initramfs,$(2)) endif endef diff --git a/target/linux/brcm47xx/image/Makefile b/target/linux/brcm47xx/image/Makefile index c290f9a..782beef 100644 --- a/target/linux/brcm47xx/image/Makefile +++ b/target/linux/brcm47xx/image/Makefile @@ -377,7 +377,7 @@ define Image/Build # $(call Image/Build/Chk,$(1),wnr3500U,U12H136T00_NETGEAR,2,$(patsubst jffs2-%,jffs2,$(1))) # $(call Image/Build/Chk,$(1),wnr3500v2_VC,U12H127T70_NETGEAR,2,$(patsubst jffs2-%,jffs2,$(1))) ifneq ($(CONFIG_TARGET_ROOTFS_INITRAMFS),) - $(call Image/Build/Initramfs) + $(call Image/Build/Initramfs,$(2)) endif endef diff --git a/target/linux/cns3xxx/image/Makefile b/target/linux/cns3xxx/image/Makefile index 13e5efd..ce6530d 100644 --- a/target/linux/cns3xxx/image/Makefile +++ b/target/linux/cns3xxx/image/Makefile @@ -26,7 +26,7 @@ define Image/BuildKernel/Initramfs endef define Image/Build - $(call Image/Build/$(1),$(1)) + $(call Image/Build/$(1),$(1),$(2)) $(call BuildFirmware/Generic,$(1)) cp $(KDIR)/uImage $(BIN_DIR)/$(IMG_PREFIX)-uImage endef diff --git a/target/linux/gemini/image/Makefile b/target/linux/gemini/image/Makefile index 1c51b62..47460fd 100644 --- a/target/linux/gemini/image/Makefile +++ b/target/linux/gemini/image/Makefile @@ -51,7 +51,7 @@ endef ifeq ($(SUBTARGET),wiligear) define Image/Build - $(call Image/Build/$(1),$(1)) + $(call Image/Build/$(1),$(1),$(2)) -$(STAGING_DIR_HOST)/bin/mkfwimage2 \ -m GEOS -f 0x30000000 -z \ -v WILI-S.WILIBOARD.v5.00.SL3512.OpenWrt.00000.000000.000000 \ @@ -70,7 +70,7 @@ endif ifeq ($(SUBTARGET),raidsonic) define Image/Build - $(call Image/Build/$(1),$(1)) + $(call Image/Build/$(1),$(1),$(2)) dd if=$(BIN_DIR)/$(IMG_PREFIX)-$(1).img of=$(BIN_DIR)/rd.gz bs=6144k count=1 # dd if=/dev/zero of=$(BIN_DIR)/hddapp.tgz bs=6144k count=1 dd if=$(BIN_DIR)/$(IMG_PREFIX)-$(1).img of=$(BIN_DIR)/hddapp.tgz bs=6144k count=1 seek=1 diff --git a/target/linux/ipq806x/image/Makefile b/target/linux/ipq806x/image/Makefile index 58c4e1e..0e1347f 100644 --- a/target/linux/ipq806x/image/Makefile +++ b/target/linux/ipq806x/image/Makefile @@ -28,7 +28,7 @@ define Image/Build/squashfs endef define Image/Build - $(call Image/Build/$(1),$(1)) + $(call Image/Build/$(1),$(1),$(2)) dd if=$(KDIR)/root.$(1) of=$(BIN_DIR)/$(IMG_PREFIX)-$(1)-root.img bs=2k conv=sync endef diff --git a/target/linux/ixp4xx/image/Makefile b/target/linux/ixp4xx/image/Makefile index bbd62f0..e805db5 100644 --- a/target/linux/ixp4xx/image/Makefile +++ b/target/linux/ixp4xx/image/Makefile @@ -47,7 +47,7 @@ define BuildFirmware/Generic endef define Image/Build - $(call Image/Build/$(1),$(1)) + $(call Image/Build/$(1),$(1),$(2)) $(call BuildFirmware/Generic,$(1)) endef diff --git a/target/linux/kirkwood/image/Makefile b/target/linux/kirkwood/image/Makefile index 24cb317..7a762f4 100644 --- a/target/linux/kirkwood/image/Makefile +++ b/target/linux/kirkwood/image/Makefile @@ -73,21 +73,21 @@ define Image/BuildKernel/Template ifneq ($(1),) $(CP) $(DTS_DIR)/kirkwood-$(1).dtb $(BIN_DIR)/$(IMG_PREFIX)-$(1).dtb - $(CP) $(KDIR)/zImage $(BIN_DIR)/$(IMG_PREFIX)-$(PROFILE_SANITIZED)-zImage - cat $(BIN_DIR)/$(IMG_PREFIX)-$(1).dtb >> $(BIN_DIR)/$(IMG_PREFIX)-$(PROFILE_SANITIZED)-zImage + $(CP) $(KDIR)/zImage $(BIN_DIR)/$(IMG_PREFIX)-$(call sanitize,$(2))-zImage + cat $(BIN_DIR)/$(IMG_PREFIX)-$(1).dtb >> $(BIN_DIR)/$(IMG_PREFIX)-$(call sanitize,$(2))-zImage $(call Image/BuildKernel/MkuImage, \ none, 0x8000, 0x8000, \ - $(BIN_DIR)/$(IMG_PREFIX)-$(PROFILE_SANITIZED)-zImage, \ - $(BIN_DIR)/$(IMG_PREFIX)-$(PROFILE_SANITIZED)-uImage \ + $(BIN_DIR)/$(IMG_PREFIX)-$(call sanitize,$(2))-zImage, \ + $(BIN_DIR)/$(IMG_PREFIX)-$(call sanitize,$(2))-uImage \ ) ifneq ($(CONFIG_TARGET_ROOTFS_INITRAMFS),) - $(CP) $(KDIR)/zImage-initramfs $(BIN_DIR)/$(IMG_PREFIX)-$(PROFILE_SANITIZED)-zImage-initramfs - cat $(BIN_DIR)/$(IMG_PREFIX)-$(1).dtb >> $(BIN_DIR)/$(IMG_PREFIX)-$(PROFILE_SANITIZED)-zImage-initramfs + $(CP) $(KDIR)/zImage-initramfs $(BIN_DIR)/$(IMG_PREFIX)-$(call sanitize,$(2))-zImage-initramfs + cat $(BIN_DIR)/$(IMG_PREFIX)-$(1).dtb >> $(BIN_DIR)/$(IMG_PREFIX)-$(call sanitize,$(2))-zImage-initramfs $(call Image/BuildKernel/MkuImage, \ none, 0x8000, 0x8000, \ - $(BIN_DIR)/$(IMG_PREFIX)-$(PROFILE_SANITIZED)-zImage-initramfs, \ - $(BIN_DIR)/$(IMG_PREFIX)-$(PROFILE_SANITIZED)-uImage-initramfs \ + $(BIN_DIR)/$(IMG_PREFIX)-$(call sanitize,$(2))-zImage-initramfs, \ + $(BIN_DIR)/$(IMG_PREFIX)-$(call sanitize,$(2))-uImage-initramfs \ ) endif endif @@ -117,7 +117,7 @@ define Image/InstallKernel/Template endef define Image/Build/jffs2-nand-2048-128k - dd if=$(KDIR)/root.$(1) of=$(BIN_DIR)/$(IMG_PREFIX)-$(PROFILE_SANITIZED)-$(1).img \ + dd if=$(KDIR)/root.$(1) of=$(BIN_DIR)/$(IMG_PREFIX)-$(call sanitize,$(2))-$(1).img \ bs=2048 conv=sync endef @@ -126,74 +126,74 @@ define Image/Build/squashfs ( \ dd if=$(KDIR)/zImage bs=4096k conv=sync; \ dd if=$(KDIR)/root.$(1) bs=128k conv=sync; \ - ) > $(BIN_DIR)/$(IMG_PREFIX)-$(PROFILE_SANITIZED)-$(1).img + ) > $(BIN_DIR)/$(IMG_PREFIX)-$(call sanitize,$(2))-$(1).img endef define Image/Build/ubifs - ifneq ($($(PROFILE)_UBIFS_OPTS),) - $(CP) $(KDIR)/root.ubifs $(BIN_DIR)/$(IMG_PREFIX)-$(PROFILE_SANITIZED)-rootfs.ubifs + ifneq ($($(2)_UBIFS_OPTS),) + $(CP) $(KDIR)/root.ubifs $(BIN_DIR)/$(IMG_PREFIX)-$(call sanitize,$(2))-rootfs.ubifs endif endef define Image/Build/ubi - ifneq ($($(PROFILE)_UBI_OPTS),) - $(CP) $(KDIR)/root.ubi $(BIN_DIR)/$(IMG_PREFIX)-$(PROFILE_SANITIZED)-rootfs.ubi + ifneq ($($(2)_UBI_OPTS),) + $(CP) $(KDIR)/root.ubi $(BIN_DIR)/$(IMG_PREFIX)-$(call sanitize,($2))-rootfs.ubi endif endef -Image/BuildKernel/Template/Generic=$(call Image/BuildKernel/Template) +Image/BuildKernel/Template/Generic=$(call Image/BuildKernel/Template,,$(1)) Image/InstallKernel/Template/Generic=$(call Image/InstallKernel/Template) -Image/BuildKernel/Template/DOCKSTAR=$(call Image/BuildKernel/Template,dockstar) +Image/BuildKernel/Template/DOCKSTAR=$(call Image/BuildKernel/Template,dockstar,$(1)) Image/InstallKernel/Template/DOCKSTAR=$(call Image/InstallKernel/Template,dockstar) -Image/BuildKernel/Template/GOFLEXHOME=$(call Image/BuildKernel/Template,goflexhome) +Image/BuildKernel/Template/GOFLEXHOME=$(call Image/BuildKernel/Template,goflexhome,$(1)) Image/InstallKernel/Template/GOFLEXHOME=$(call Image/InstallKernel/Template,goflexhome) -Image/BuildKernel/Template/GOFLEXNET=$(call Image/BuildKernel/Template,goflexnet) +Image/BuildKernel/Template/GOFLEXNET=$(call Image/BuildKernel/Template,goflexnet,$(1)) Image/InstallKernel/Template/GOFLEXNET=$(call Image/InstallKernel/Template,goflexnet) -Image/BuildKernel/Template/IB62X0=$(call Image/BuildKernel/Template,ib62x0) +Image/BuildKernel/Template/IB62X0=$(call Image/BuildKernel/Template,ib62x0,$(1)) Image/InstallKernel/Template/IB62X0=$(call Image/InstallKernel/Template,ib62x0) -Image/BuildKernel/Template/ICONNECT=$(call Image/BuildKernel/Template,iconnect) +Image/BuildKernel/Template/ICONNECT=$(call Image/BuildKernel/Template,iconnect,$(1)) Image/InstallKernel/Template/ICONNECT=$(call Image/InstallKernel/Template,iconnect) -Image/BuildKernel/Template/IOMEGA_IX2_200=$(call Image/BuildKernel/Template,iomega_ix2_200) +Image/BuildKernel/Template/IOMEGA_IX2_200=$(call Image/BuildKernel/Template,iomega_ix2_200,$(1)) Image/InstallKernel/Template/IOMEGA_IX2_200=$(call Image/InstallKernel/Template,iomega_ix2_200) -Image/BuildKernel/Template/NSA310S=$(call Image/BuildKernel/Template,nsa310s) +Image/BuildKernel/Template/NSA310S=$(call Image/BuildKernel/Template,nsa310s,$(1)) Image/InstallKernel/Template/NSA310S=$(call Image/InstallKernel/Template,nsa310s) -Image/BuildKernel/Template/POGOE02=$(call Image/BuildKernel/Template,pogo_e02) +Image/BuildKernel/Template/POGOE02=$(call Image/BuildKernel/Template,pogo_e02,$(1)) Image/InstallKernel/Template/POGOE02=$(call Image/InstallKernel/Template,pogo_e02) -Image/BuildKernel/Template/SHEEVAPLUG=$(call Image/BuildKernel/Template,sheevaplug) +Image/BuildKernel/Template/SHEEVAPLUG=$(call Image/BuildKernel/Template,sheevaplug,$(1)) Image/InstallKernel/Template/SHEEVAPLUG=$(call Image/InstallKernel/Template,sheevaplug) -Image/BuildKernel/Template/SHEEVAPLUGSATA=$(call Image/BuildKernel/Template,sheevaplug-esata) +Image/BuildKernel/Template/SHEEVAPLUGSATA=$(call Image/BuildKernel/Template,sheevaplug-esata,$(1)) Image/InstallKernel/Template/SHEEVAPLUGSATA=$(call Image/InstallKernel/Template,sheevaplug-esata) -Image/BuildKernel/Template/GuruplugServerPlus=$(call Image/BuildKernel/Template,guruplug-server-plus) +Image/BuildKernel/Template/GuruplugServerPlus=$(call Image/BuildKernel/Template,guruplug-server-plus,$(1)) Image/InstallKernel/Template/GuruplugServerPlus=$(call Image/InstallKernel/Template,guruplug-server-plus) -Image/BuildKernel/Template/Topkick1281P2=$(call Image/BuildKernel/Template,topkick) +Image/BuildKernel/Template/Topkick1281P2=$(call Image/BuildKernel/Template,topkick,$(1)) Image/InstallKernel/Template/Topkick1281P2=$(call Image/InstallKernel/Template,topkick) define Image/BuildKernel - $(call Image/BuildKernel/Template/$(PROFILE)) + $(call Image/BuildKernel/Template/$(2),$(2)) endef define Image/InstallKernel - $(call Image/InstallKernel/Template/$(PROFILE)) + $(call Image/InstallKernel/Template/$(2)) endef define Image/Build $(if $(Image/Build/$(1)), \ - $(call Image/Build/$(1),$(1)), \ - $(CP) $(KDIR)/root.$(1) $(BIN_DIR)/$(IMG_PREFIX)-$(PROFILE_SANITIZED)-$(1).img \ + $(call Image/Build/$(1),$(1),$(2)), \ + $(CP) $(KDIR)/root.$(1) $(BIN_DIR)/$(IMG_PREFIX)-$(call sanitize,$(2))-$(1).img \ ) endef diff --git a/target/linux/lantiq/image/Makefile b/target/linux/lantiq/image/Makefile index 553bdc1..dc4eafc 100644 --- a/target/linux/lantiq/image/Makefile +++ b/target/linux/lantiq/image/Makefile @@ -68,10 +68,10 @@ endef define Image/BuildNAND/squashfs -ifneq ($($(PROFILE)_UBI_OPTS),) +ifneq ($($(2)_UBI_OPTS),) $(call prepare_generic_squashfs,$(KDIR)/root.$(1)) - $(call Image/Build/UbinizeImage,$(PROFILE),,squashfs,$($(PROFILE)_UBI_OPTS)) - $(call Image/Build/SysupgradeNAND,$(PROFILE),$(1),$(KDIR)/uImage-$(PROFILE)) + $(call Image/Build/UbinizeImage,$(2),,squashfs,$($(2)_UBI_OPTS)) + $(call Image/Build/SysupgradeNAND,$(2),$(1),$(KDIR)/uImage-$(2)) endif endef @@ -125,16 +125,16 @@ endef define Image/BuildEVA/ubifs -ifneq ($($(PROFILE)_UBIFS_OPTS),) - $(CP) $(KDIR)/root.ubifs $(BIN_DIR)/$(IMG_PREFIX)-$(PROFILE)-rootfs.ubifs +ifneq ($($(2)_UBIFS_OPTS),) + $(CP) $(KDIR)/root.ubifs $(BIN_DIR)/$(IMG_PREFIX)-$(2)-rootfs.ubifs endif endef define Image/BuildEVA/ubi -ifneq ($($(PROFILE)_UBI_OPTS),) - $(CP) $(KDIR)/root.ubi $(BIN_DIR)/$(IMG_PREFIX)-$(PROFILE)-rootfs.ubi - $(CP) $(KDIR)/root-overlay.ubi $(BIN_DIR)/$(IMG_PREFIX)-$(PROFILE)-rootfs-overlay.ubi +ifneq ($($(2)_UBI_OPTS),) + $(CP) $(KDIR)/root.ubi $(BIN_DIR)/$(IMG_PREFIX)-$(2)-rootfs.ubi + $(CP) $(KDIR)/root-overlay.ubi $(BIN_DIR)/$(IMG_PREFIX)-$(2)-rootfs-overlay.ubi endif endef @@ -165,26 +165,26 @@ endef define Image/Build/ubifs -ifneq ($($(PROFILE)_UBIFS_OPTS),) - $(CP) $(KDIR)/root.ubifs $(BIN_DIR)/$(IMG_PREFIX)-$(PROFILE)-rootfs.ubifs +ifneq ($($(2)_UBIFS_OPTS),) + $(CP) $(KDIR)/root.ubifs $(BIN_DIR)/$(IMG_PREFIX)-$(2)-rootfs.ubifs endif endef define Image/Build/ubi -ifneq ($($(PROFILE)_UBI_OPTS),) - $(CP) $(KDIR)/root.ubi $(BIN_DIR)/$(IMG_PREFIX)-$(PROFILE)-rootfs.ubi - $(CP) $(KDIR)/root-overlay.ubi $(BIN_DIR)/$(IMG_PREFIX)-$(PROFILE)-rootfs-overlay.ubi +ifneq ($($(2)_UBI_OPTS),) + $(CP) $(KDIR)/root.ubi $(BIN_DIR)/$(IMG_PREFIX)-$(2)-rootfs.ubi + $(CP) $(KDIR)/root-overlay.ubi $(BIN_DIR)/$(IMG_PREFIX)-$(2)-rootfs-overlay.ubi endif endef define Image/BuildNAND/ubifs -ifneq ($($(PROFILE)_UBIFS_OPTS),) -ifneq ($($(PROFILE)_UBI_OPTS),) - $(call Image/Build/UbinizeImage,$(PROFILE),,ubifs,$($(PROFILE)_UBI_OPTS)) - $(call Image/Build/SysupgradeNAND,$(PROFILE),$(1),$(KDIR)/uImage-$(PROFILE)) +ifneq ($($(2)_UBIFS_OPTS),) +ifneq ($($(2)_UBI_OPTS),) + $(call Image/Build/UbinizeImage,$(2),,ubifs,$($(2)_UBI_OPTS)) + $(call Image/Build/SysupgradeNAND,$(2),$(1),$(KDIR)/uImage-$(2)) endif endif endef @@ -426,22 +426,21 @@ Image/BuildKernel/Profile/VGV7519BRN=$(call Image/BuildKernel/Template,VGV7519BR Image/Build/Profile/VGV7519BRN=$(call Image/Build/$(1),$(1),VGV7519BRN,5D00008000,0x12345678,0x2083b8ed,$(1)) define Image/Prepare - $(call Image/Prepare/Profile,$(PROFILE)) + $(call Image/Prepare/Profile,$(2),,$(2)) endef endif - define Image/BuildKernel - $(call Image/BuildKernel/Profile/$(PROFILE)) + $(call Image/BuildKernel/Profile/$(2),,$(2)) endef define Image/InstallKernel - $(call Image/InstallKernel/Template/$(PROFILE)) + $(call Image/InstallKernel/Template/$(2)) endef define Image/Build - $(call Image/Build/Profile/$(PROFILE),$(1)) + $(call Image/Build/Profile/$(2),$(1),$(2)) endef $(eval $(call BuildImage)) diff --git a/target/linux/malta/image/Makefile b/target/linux/malta/image/Makefile index 180e045..a247e58 100644 --- a/target/linux/malta/image/Makefile +++ b/target/linux/malta/image/Makefile @@ -48,7 +48,7 @@ define Image/Build/Initramfs endef define Image/Build - $(call Image/Build/$(1)) + $(call Image/Build/$(1),$(2)) dd if=$(KDIR)/root.$(1) of=$(BIN_DIR)/$(IMG_PREFIX)-root.$(1) bs=128k conv=sync endef diff --git a/target/linux/mcs814x/image/Makefile b/target/linux/mcs814x/image/Makefile index 3afd660..c25cdf4 100644 --- a/target/linux/mcs814x/image/Makefile +++ b/target/linux/mcs814x/image/Makefile @@ -49,9 +49,9 @@ define Image/Build/squashfs endef define Image/Build - $(call Image/Build/$(1)) + $(call Image/Build/$(1),$(1),$(2)) dd if=$(KDIR)/root.$(1) of=$(BIN_DIR)/$(IMG_PREFIX)-root.$(1) bs=128k conv=sync - $(call Image/Build/Profile/$(PROFILE),$(1)) + $(call Image/Build/Profile/$(2),$(1),$(2)) ifneq ($(CONFIG_TARGET_ROOTFS_INITRAMFS),) $(call Image/Build/Initramfs) endif diff --git a/target/linux/mediatek/image/Makefile b/target/linux/mediatek/image/Makefile index 82525c9..5ef9d7f 100644 --- a/target/linux/mediatek/image/Makefile +++ b/target/linux/mediatek/image/Makefile @@ -22,7 +22,7 @@ define Image/Build/squashfs endef define Image/Build - $(call Image/Build/$(1),$(1)) + $(call Image/Build/$(1),$(1),$(2)) endef $(eval $(call BuildImage)) diff --git a/target/linux/mpc85xx/image/Makefile b/target/linux/mpc85xx/image/Makefile index 0ec067e..ac4541d 100644 --- a/target/linux/mpc85xx/image/Makefile +++ b/target/linux/mpc85xx/image/Makefile @@ -65,11 +65,9 @@ define Image/Build/squashfs cp $(KDIR)/root.squashfs $(BIN_DIR)/$(IMG_PREFIX)-root.squashfs endef -PROFILE ?= Default - define Image/Build - $(call Image/Build/$(1),$(1)) - $(call Image/Build/Profile/$(PROFILE),$(1)) + $(call Image/Build/$(1),$(1),$(2)) + $(call Image/Build/Profile/$(2),$(1),$(2)) endef $(eval $(call BuildImage)) diff --git a/target/linux/mvebu/image/Makefile b/target/linux/mvebu/image/Makefile index 123be9e..fd51052 100644 --- a/target/linux/mvebu/image/Makefile +++ b/target/linux/mvebu/image/Makefile @@ -204,21 +204,21 @@ endef $(eval $(call MultiProfile,Default,$(PROFILES_LIST))) define Image/BuildKernel - $(call Image/BuildKernel/Profile/$(PROFILE)) + $(call Image/BuildKernel/Profile/$(2),$(1),$(2)) endef define Image/Build/squashfs # Align the squashfs image size before calling the profiles, # otherwise the size would keep growing $(call prepare_generic_squashfs,$(KDIR)/root.squashfs) - $(call Image/Build/Profile/$(PROFILE)/squashfs) + $(call Image/Build/Profile/$(2)/squashfs) endef define Image/Build - $(call Image/Build/$(1)) - $(call Image/Build/Profile/$(PROFILE)/BuildSysupgrade,$(1)) + $(call Image/Build/$(1),$(1),$(2)) + $(call Image/Build/Profile/$(2)/BuildSysupgrade,$(1),$(2)) ifneq ($(CONFIG_TARGET_ROOTFS_INITRAMFS),) - $(call Image/Build/Profile/$(PROFILE)/Initramfs) + $(call Image/Build/Profile/$(2)/Initramfs,$(1),$(2)) endif endef diff --git a/target/linux/mxs/image/Makefile b/target/linux/mxs/image/Makefile index 94fed82..502c51e 100644 --- a/target/linux/mxs/image/Makefile +++ b/target/linux/mxs/image/Makefile @@ -81,8 +81,8 @@ define Image/Build/Profile/duckbill endef define Image/Build - $(call Image/Build/$(1),$(1)) - $(call Image/Build/Profile/$(PROFILE),$(1),$(IMG_PREFIX)-$(PROFILE)-sdcard.img) + $(call Image/Build/$(1),$(1),$(2)) + $(call Image/Build/Profile/$(2),$(1),$(IMG_PREFIX)-$(2)-sdcard.img) dd if=$(KDIR)/root.$(1) of=$(BIN_DIR)/$(IMG_PREFIX)-root.$(1) bs=128k conv=sync endef diff --git a/target/linux/netlogic/image/Makefile b/target/linux/netlogic/image/Makefile index 9541f6a..24ea44e 100644 --- a/target/linux/netlogic/image/Makefile +++ b/target/linux/netlogic/image/Makefile @@ -19,7 +19,7 @@ define Image/Build/Initramfs endef define Image/Build - $(call Image/Build/$(1)) + $(call Image/Build/$(1),$(2)) dd if=$(KDIR)/root.$(1) of=$(BIN_DIR)/$(IMG_PREFIX)-root.$(1) bs=128k conv=sync endef diff --git a/target/linux/octeon/image/Makefile b/target/linux/octeon/image/Makefile index e74b06d..26af496 100644 --- a/target/linux/octeon/image/Makefile +++ b/target/linux/octeon/image/Makefile @@ -58,7 +58,7 @@ define Image/Build/squashfs endef define Image/Build - $(call Image/Build/$(1)) + $(call Image/Build/$(1),$(2)) dd if=$(KDIR)/root.$(1) of=$(BIN_DIR)/$(IMG_PREFIX)-root.$(1) bs=128k conv=sync endef diff --git a/target/linux/omap/image/Makefile b/target/linux/omap/image/Makefile index 3fa2848..d3dca86 100644 --- a/target/linux/omap/image/Makefile +++ b/target/linux/omap/image/Makefile @@ -33,7 +33,7 @@ define Image/BuildKernel endef define Image/Build - $(call Image/Build/$(1),$(1)) + $(call Image/Build/$(1),$(1),$(2)) endef define Image/Build/jffs2-64k diff --git a/target/linux/omap24xx/image/Makefile b/target/linux/omap24xx/image/Makefile index 316cce0..5e01682 100644 --- a/target/linux/omap24xx/image/Makefile +++ b/target/linux/omap24xx/image/Makefile @@ -20,7 +20,7 @@ endef define Image/Build $(CP) $(KDIR)/root.$(1) $(BIN_DIR)/$(IMG_PREFIX)-root.$(1) - $(call Image/Build/$(1),$(1)) + $(call Image/Build/$(1),$(1),$(2)) endef diff --git a/target/linux/oxnas/image/Makefile b/target/linux/oxnas/image/Makefile index 5a96bad..31ed4d2 100644 --- a/target/linux/oxnas/image/Makefile +++ b/target/linux/oxnas/image/Makefile @@ -82,17 +82,17 @@ define Image/InstallKernel/Template endef define Image/Build/squashfs - $(call Image/Build/SysupgradeNAND,$(PROFILE_SANITIZED),$(1),$(KDIR)/fit-$(PROFILE_SANITIZED).itb) - $(call Image/Build/UbinizeImage,$(PROFILE_SANITIZED),--uboot-env --kernel $(KDIR)/fit-$(PROFILE_SANITIZED).itb,$(1),$($(PROFILE)_UBI_OPTS)) - cp $(KDIR)/$(IMG_PREFIX)-$(PROFILE_SANITIZED)-squashfs-ubinized.bin $(BIN_DIR) + $(call Image/Build/SysupgradeNAND,$(call sanitize,$(2)),$(1),$(KDIR)/fit-$(call sanitize,$(2)).itb) + $(call Image/Build/UbinizeImage,$(call sanitize,$(2)),--uboot-env --kernel $(KDIR)/fit-$(call sanitize,$(2)).itb,$(1),$($(2)_UBI_OPTS)) + cp $(KDIR)/$(IMG_PREFIX)-$(call sanitize,$(2))-squashfs-ubinized.bin $(BIN_DIR) endef define Image/Build/ubifs - ifneq ($($(PROFILE)_UBIFS_OPTS),) - $(call Image/Build/SysupgradeNAND,$(PROFILE_SANITIZED),ubifs,$(KDIR)/fit-$(PROFILE_SANITIZED).itb) - $(call Image/Build/UbinizeImage,$(PROFILE_SANITIZED),--uboot-env --kernel $(KDIR)/fit-$(PROFILE_SANITIZED).itb,ubifs,$($(PROFILE)_UBI_OPTS)) - cp $(KDIR)/$(IMG_PREFIX)-$(PROFILE_SANITIZED)-ubifs-ubinized.bin $(BIN_DIR) + ifneq ($($(call)_UBIFS_OPTS),) + $(call Image/Build/SysupgradeNAND,$(call sanitize,$(2)),ubifs,$(KDIR)/fit-$(call sanitize,$(2)).itb) + $(call Image/Build/UbinizeImage,$(call sanitize,$(2)),--uboot-env --kernel $(KDIR)/fit-$(call sanitize,$(2)).itb,ubifs,$($(2)_UBI_OPTS)) + cp $(KDIR)/$(IMG_PREFIX)-$(call sanitize,$(2))-ubifs-ubinized.bin $(BIN_DIR) endif endef @@ -110,17 +110,17 @@ Image/BuildKernel/Template/KD20=$(call Image/BuildKernel/Template,kd20) Image/InstallKernel/Template/KD20=$(call Image/InstallKernel/Template,kd20) define Image/BuildKernel - $(call Image/BuildKernel/Template/$(PROFILE)) + $(call Image/BuildKernel/Template/$(2)) endef define Image/InstallKernel - $(call Image/InstallKernel/Template/$(PROFILE)) + $(call Image/InstallKernel/Template/$(2)) endef define Image/Build $(if $(Image/Build/$(1)), \ - $(call Image/Build/$(1),$(1)), \ - $(CP) $(KDIR)/root.$(1) $(BIN_DIR)/$(IMG_PREFIX)-$(PROFILE_SANITIZED)-$(1).img \ + $(call Image/Build/$(1),$(1),$(2)), \ + $(CP) $(KDIR)/root.$(1) $(BIN_DIR)/$(IMG_PREFIX)-$(call sanitize,$(2))-$(1).img \ ) endef diff --git a/target/linux/ppc40x/image/Makefile b/target/linux/ppc40x/image/Makefile index 4070774..9d1c7ae 100644 --- a/target/linux/ppc40x/image/Makefile +++ b/target/linux/ppc40x/image/Makefile @@ -15,11 +15,11 @@ endef define Image/BuildKernel cp $(KDIR)/uImage $(BIN_DIR)/$(IMG_PREFIX)-uImage - $(call Image/Build/Initramfs) + $(call Image/Build/Initramfs,$(2)) endef define Image/Build - $(call Image/Build/$(1),$(1)) + $(call Image/Build/$(1),$(1),$(2)) endef define Image/Build/ext2 diff --git a/target/linux/ppc44x/image/Makefile b/target/linux/ppc44x/image/Makefile index e2303f6..8c7ca8d 100644 --- a/target/linux/ppc44x/image/Makefile +++ b/target/linux/ppc44x/image/Makefile @@ -20,7 +20,7 @@ define Image/BuildKernel endef define Image/Build - $(call Image/Build/$(1),$(1)) + $(call Image/Build/$(1),$(1),$(2)) endef define Image/Build/jffs2-256k diff --git a/target/linux/ramips/image/Makefile b/target/linux/ramips/image/Makefile index 2427ac6..b58ca7e 100644 --- a/target/linux/ramips/image/Makefile +++ b/target/linux/ramips/image/Makefile @@ -19,7 +19,7 @@ VMLINUX:=$(IMG_PREFIX)-vmlinux UIMAGE:=$(IMG_PREFIX)-uImage define Image/Build/Initramfs - $(call Image/Build/Profile/$(PROFILE),initramfs) + $(call Image/Build/Profile/$(2),initramfs) endef DEVICE_VARS += DTS @@ -1131,13 +1131,13 @@ define Image/BuildKernel/Initramfs $(call CompressLzma,$(KDIR)/vmlinux-initramfs,$(KDIR)/vmlinux-initramfs.bin.lzma) $(call MkImage,lzma,$(KDIR)/vmlinux-initramfs.bin.lzma,$(KDIR)/uImage-initramfs.lzma) cp $(KDIR)/uImage-initramfs.lzma $(BIN_DIR)/$(UIMAGE)-initramfs.bin - $(call Image/Build/Initramfs) + $(call Image/Build/Initramfs,$(2)) endef define Image/Build - $(call Image/Build/$(1)) + $(call Image/Build/$(1),$(1),$(2)) dd if=$(KDIR)/root.$(1) of=$(BIN_DIR)/$(IMG_PREFIX)-root.$(1) bs=128k conv=sync - $(call Image/Build/Profile/$(PROFILE),$(1)) + $(call Image/Build/Profile/$(2),$(1)) endef endif diff --git a/target/linux/rb532/image/Makefile b/target/linux/rb532/image/Makefile index 1a1f343..94a8927 100644 --- a/target/linux/rb532/image/Makefile +++ b/target/linux/rb532/image/Makefile @@ -68,7 +68,7 @@ define Image/Build/squashfs endef define Image/Build - $(call Image/Build/$(1),$(1)) + $(call Image/Build/$(1),$(1),$(2)) $(CP) $(KDIR)/vmlinux.elf $(BIN_DIR)/$(IMG_PREFIX)-$(1).kernel $(STAGING_DIR_HOST)/bin/patch-cmdline $(BIN_DIR)/$(IMG_PREFIX)-$(1).kernel '$(strip $(call Image/cmdline/$(1))) ' ./gen_image.sh $(BIN_DIR)/$(IMG_PREFIX)-combined-$(1).bin \ diff --git a/target/linux/realview/image/Makefile b/target/linux/realview/image/Makefile index ad7aa69..175339f 100644 --- a/target/linux/realview/image/Makefile +++ b/target/linux/realview/image/Makefile @@ -20,14 +20,14 @@ define Image/Build/squashfs endef define Image/Build - $(call Image/Build/$(1)) - $(call Build/sdcard-img) + $(call Image/Build/$(1),$(1),$(2)) + $(call Build/sdcard-img,$(2)) dd if=$(KDIR)/root.$(1) of=$(BIN_DIR)/$(IMG_PREFIX)-root.$(1) bs=128k conv=sync endef define Build/sdcard-img ./gen_realview_sdcard_img.sh \ - $(BIN_DIR)/$(IMG_PREFIX)-$(PROFILE)sdcard.img \ + $(BIN_DIR)/$(IMG_PREFIX)-$(2)sdcard.img \ $(KDIR)/root.ext4 \ $(CONFIG_TARGET_ROOTFS_PARTSIZE) endef diff --git a/target/linux/sunxi/image/Makefile b/target/linux/sunxi/image/Makefile index 5a5c98a..6758ba1 100644 --- a/target/linux/sunxi/image/Makefile +++ b/target/linux/sunxi/image/Makefile @@ -31,85 +31,86 @@ define Image/BuildKernel endef define Image/Build/SDCard - rm -f $(KDIR_TMP)/$(IMG_PREFIX)-$(PROFILE)-boot.img - mkdosfs $(KDIR_TMP)/$(IMG_PREFIX)-$(PROFILE)-boot.img -C $(FAT32_BLOCKS) + rm -f $(KDIR_TMP)/$(IMG_PREFIX)-$(3)-boot.img + mkdosfs $(KDIR_TMP)/$(IMG_PREFIX)-$(3)-boot.img -C $(FAT32_BLOCKS) - mcopy -i $(KDIR_TMP)/$(IMG_PREFIX)-$(PROFILE)-boot.img $(KDIR)/uboot-sunxi-$(PROFILE)-boot.scr ::boot.scr - mcopy -i $(KDIR_TMP)/$(IMG_PREFIX)-$(PROFILE)-boot.img $(DTS_DIR)/$(2).dtb ::dtb - mcopy -i $(KDIR_TMP)/$(IMG_PREFIX)-$(PROFILE)-boot.img $(BIN_DIR)/$(IMG_PREFIX)-uImage ::uImage + mcopy -i $(KDIR_TMP)/$(IMG_PREFIX)-$(3)-boot.img $(KDIR)/uboot-sunxi-$(3)-boot.scr ::boot.scr + mcopy -i $(KDIR_TMP)/$(IMG_PREFIX)-$(3)-boot.img $(DTS_DIR)/$(2).dtb ::dtb + mcopy -i $(KDIR_TMP)/$(IMG_PREFIX)-$(3)-boot.img $(BIN_DIR)/$(IMG_PREFIX)-uImage ::uImage ./gen_sunxi_sdcard_img.sh \ - $(BIN_DIR)/$(IMG_PREFIX)-$(PROFILE)-sdcard-vfat-$(1).img \ - $(KDIR_TMP)/$(IMG_PREFIX)-$(PROFILE)-boot.img \ + $(BIN_DIR)/$(IMG_PREFIX)-$(3)-sdcard-vfat-$(1).img \ + $(KDIR_TMP)/$(IMG_PREFIX)-$(3)-boot.img \ $(KDIR)/root.$(1) \ $(CONFIG_SUNXI_SD_BOOT_PARTSIZE) \ $(CONFIG_TARGET_ROOTFS_PARTSIZE) \ - $(KDIR)/uboot-sunxi-$(PROFILE)-u-boot-with-spl.bin + $(KDIR)/uboot-sunxi-$(3)-u-boot-with-spl.bin ifneq ($(CONFIG_TARGET_IMAGES_GZIP),) - gzip -f9n $(BIN_DIR)/$(IMG_PREFIX)-$(PROFILE)-sdcard-vfat-$(1).img + gzip -f9n $(BIN_DIR)/$(IMG_PREFIX)-$(3)-sdcard-vfat-$(1).img endif endef define Image/Build/Profile/A10-OLinuXino-Lime - $(call Image/Build/SDCard,$(1),sun4i-a10-olinuxino-lime) + $(call Image/Build/SDCard,$(1),sun4i-a10-olinuxino-lime,$(2)) endef define Image/Build/Profile/A13-OLinuXino - $(call Image/Build/SDCard,$(1),sun5i-a13-olinuxino) + $(call Image/Build/SDCard,$(1),sun5i-a13-olinuxino,$(2)) endef define Image/Build/Profile/A20-OLinuXino-Lime - $(call Image/Build/SDCard,$(1),sun7i-a20-olinuxino-lime) + $(call Image/Build/SDCard,$(1),sun7i-a20-olinuxino-lime,$(2)) endef define Image/Build/Profile/A20-OLinuXino_MICRO - $(call Image/Build/SDCard,$(1),sun7i-a20-olinuxino-micro) + $(call Image/Build/SDCard,$(1),sun7i-a20-olinuxino-micro,$(2)) endef define Image/Build/Profile/Bananapi - $(call Image/Build/SDCard,$(1),sun7i-a20-bananapi) + $(call Image/Build/SDCard,$(1),sun7i-a20-bananapi,$(2)) endef define Image/Build/Profile/Bananapro - $(call Image/Build/SDCard,$(1),sun7i-a20-bananapro) + $(call Image/Build/SDCard,$(1),sun7i-a20-bananapro,$(2)) endef define Image/Build/Profile/Lamobo_R1 - $(call Image/Build/SDCard,$(1),sun7i-a20-lamobo-r1) + $(call Image/Build/SDCard,$(1),sun7i-a20-lamobo-r1,$(2)) endef define Image/Build/Profile/Cubieboard - $(call Image/Build/SDCard,$(1),sun4i-a10-cubieboard) + $(call Image/Build/SDCard,$(1),sun4i-a10-cubieboard,$(2)) endef define Image/Build/Profile/Cubieboard2 - $(call Image/Build/SDCard,$(1),sun7i-a20-cubieboard2) + $(call Image/Build/SDCard,$(1),sun7i-a20-cubieboard2,$(2)) endef define Image/Build/Profile/Cubietruck - $(call Image/Build/SDCard,$(1),sun7i-a20-cubietruck) + $(call Image/Build/SDCard,$(1),sun7i-a20-cubietruck,$(2)) endef define Image/Build/Profile/OLIMEX_A13_SOM - $(call Image/Build/SDCard,$(1),sun5i-a13-olinuxino) + $(call Image/Build/SDCard,$(1),sun5i-a13-olinuxino,$(2)) endef define Image/Build/Profile/Mele_M9 - $(call Image/Build/SDCard,$(1),sun6i-a31-hummingbird) + $(call Image/Build/SDCard,$(1),sun6i-a31-hummingbird,$(2)) endef define Image/Build/Profile/Linksprite_pcDuino - $(call Image/Build/SDCard,$(1),sun4i-a10-pcduino) + $(call Image/Build/SDCard,$(1),sun4i-a10-pcduino,$(2)) endef define Image/Build/Profile/Linksprite_pcDuino3 - $(call Image/Build/SDCard,$(1),sun7i-a20-pcduino3) + $(call Image/Build/SDCard,$(1),sun7i-a20-pcduino3,$(2)) +endef endef define Image/Build - $(call Image/Build/$(1),$(1)) - $(call Image/Build/Profile/$(PROFILE),$(1)) + $(call Image/Build/$(1),$(1),$(2)) + $(call Image/Build/Profile/$(2),$(1),$(2)) dd if=$(KDIR)/root.$(1) of=$(BIN_DIR)/$(IMG_PREFIX)-root.$(1) bs=128k conv=sync endef diff --git a/target/linux/x86/image/Makefile b/target/linux/x86/image/Makefile index 8e56372..9f4f3e1 100644 --- a/target/linux/x86/image/Makefile +++ b/target/linux/x86/image/Makefile @@ -214,20 +214,20 @@ define Image/Build/Initramfs endef define Image/Build - $(call Image/Build/$(1)) + $(call Image/Build/$(1),($1),$(2)) ifneq ($(1),iso) - $(call Image/Build/grub2,$(1)) - $(call Image/Build/vdi,$(1)) - $(call Image/Build/vmdk,$(1)) + $(call Image/Build/grub2,$(1),$(2)) + $(call Image/Build/vdi,$(1),$(2)) + $(call Image/Build/vmdk,$(1),$(2)) $(CP) $(KDIR)/root.$(1) $(BIN_DIR)/$(IMG_PREFIX)-rootfs-$(1).img else $(CP) $(KDIR)/root.iso $(BIN_DIR)/$(IMG_PREFIX).iso endif $(CP) $(KDIR)/bzImage $(BIN_DIR)/$(IMG_PREFIX)-vmlinuz - $(call Image/Build/gzip/$(1)) - $(call Image/Build/Profile/$(PROFILE),$(1)) + $(call Image/Build/gzip/$(1),$(2)) + $(call Image/Build/Profile/$(2),$(1),$(2)) ifeq ($(CONFIG_TARGET_ROOTFS_INITRAMFS),y) - $(call Image/Build/Initramfs) + $(call Image/Build/Initramfs,$(2)) endif endef -- 2.4.3 _______________________________________________ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel