X-Git-Url: http://git.openwrt.org/?p=openwrt%2Fsvn-archive%2Farchive.git;a=blobdiff_plain;f=include%2Fimage.mk;h=31689c7e6b8756baf2751a3cac7a8fec5a313199;hp=eddf605ddfd5bb57f90fab8382401c442599cb21;hb=0178639777040135e88606e6af13942328a0cc3b;hpb=2233bab5e4c64d8e225e5e2f0adcb0c27b9d035f diff --git a/include/image.mk b/include/image.mk index eddf605ddf..31689c7e6b 100644 --- a/include/image.mk +++ b/include/image.mk @@ -244,8 +244,8 @@ endef define Image/mkfs/prepare/default # Use symbolic permissions to avoid clobbering SUID/SGID/sticky bits - - $(FIND) $(TARGET_DIR) -type f -not -perm +0100 -not -name 'ssh_host*' -not -name 'shadow' -print0 | $(XARGS) -0 chmod u+rw,g+r,o+r - - $(FIND) $(TARGET_DIR) -type f -perm +0100 -print0 | $(XARGS) -0 chmod u+rwx,g+rx,o+rx + - $(FIND) $(TARGET_DIR) -type f -not -perm /0100 -not -name 'ssh_host*' -not -name 'shadow' -print0 | $(XARGS) -0 chmod u+rw,g+r,o+r + - $(FIND) $(TARGET_DIR) -type f -perm /0100 -print0 | $(XARGS) -0 chmod u+rwx,g+rx,o+rx - $(FIND) $(TARGET_DIR) -type d -print0 | $(XARGS) -0 chmod u+rwx,g+rx,o+rx $(INSTALL_DIR) $(TARGET_DIR)/tmp $(TARGET_DIR)/overlay chmod 1777 $(TARGET_DIR)/tmp @@ -268,6 +268,8 @@ define BuildImage/mkfs .PHONY: mkfs-$(1) mkfs-$(1): mkfs_prepare $(Image/mkfs/$(1)) + $(call Build/mkfs/default,$(1)) + $(call Build/mkfs/$(1),$(1)) $(KDIR)/root.$(1): mkfs-$(1) endef @@ -341,6 +343,7 @@ define Device/Init KERNEL_INITRAMFS_PREFIX = $$(IMAGE_PREFIX)-initramfs KERNEL_INITRAMFS_IMAGE = $$(KERNEL_INITRAMFS_PREFIX)$$(KERNEL_SUFFIX) KERNEL_INSTALL := + KERNEL_NAME := vmlinux KERNEL_SIZE := FILESYSTEMS := $(TARGET_FILESYSTEMS) @@ -350,7 +353,10 @@ define Device/ExportVar $(1) : $(2):=$$($(2)) endef -Device/Export = $(foreach var,$(DEVICE_VARS) KERNEL,$(call Device/ExportVar,$(1),$(var))) +define Device/Export + $(foreach var,$(DEVICE_VARS) KERNEL KERNEL_INITRAMFS,$(call Device/ExportVar,$(1),$(var))) + $(1) : FILESYSTEM:=$(2) +endef define Device/Check _TARGET = $$(if $$(filter $(PROFILE),$$(PROFILES)),install,install-disabled) @@ -362,7 +368,7 @@ define Device/Build/initramfs $(BIN_DIR)/$$(KERNEL_INITRAMFS_IMAGE): $(KDIR)/$$(KERNEL_INITRAMFS_IMAGE) cp $$^ $$@ - $(KDIR)/$$(KERNEL_INITRAMFS_IMAGE): $(KDIR)/vmlinux-initramfs + $(KDIR)/$$(KERNEL_INITRAMFS_IMAGE): $(KDIR)/$$(KERNEL_NAME)-initramfs @rm -f $$@ $$(call concat_cmd,$$(KERNEL_INITRAMFS)) endef @@ -375,10 +381,11 @@ define Device/Build/check_size endef define Device/Build/kernel + $(KDIR)/$$(KERNEL_NAME): image_prepare $$(_TARGET): $$(if $$(KERNEL_INSTALL),$(BIN_DIR)/$$(KERNEL_IMAGE)) $(BIN_DIR)/$$(KERNEL_IMAGE): $(KDIR)/$$(KERNEL_IMAGE) cp $$^ $$@ - $(KDIR)/$$(KERNEL_IMAGE): $(KDIR)/vmlinux + $(KDIR)/$$(KERNEL_IMAGE): $(KDIR)/$$(KERNEL_NAME) @rm -f $$@ $$(call concat_cmd,$$(KERNEL)) $$(if $$(KERNEL_SIZE),$$(call Device/Build/check_size,$$(KERNEL_SIZE))) @@ -386,14 +393,15 @@ endef define Device/Build/image $$(_TARGET): $(BIN_DIR)/$(call IMAGE_NAME,$(1),$(2)) - $(eval $(call Device/Export,$(KDIR)/$(KERNEL_IMAGE))) - $(eval $(call Device/Export,$(KDIR)/$(KERNEL_INITRAMFS_IMAGE))) - $(eval $(call Device/Export,$(KDIR)/$(call IMAGE_NAME,$(1),$(2)))) + $(eval $(call Device/Export,$(KDIR)/$(KERNEL_IMAGE),$(1))) + $(eval $(call Device/Export,$(KDIR)/$(KERNEL_INITRAMFS_IMAGE),$(1))) + $(eval $(call Device/Export,$(KDIR)/$(call IMAGE_NAME,$(1),$(2)),$(1))) $(KDIR)/$(call IMAGE_NAME,$(1),$(2)): $(KDIR)/$$(KERNEL_IMAGE) $(KDIR)/root.$(1) @rm -f $$@ [ -f $$(word 1,$$^) -a -f $$(word 2,$$^) ] $$(call concat_cmd,$(if $(IMAGE/$(2)/$(1)),$(IMAGE/$(2)/$(1)),$(IMAGE/$(2)))) + .IGNORE: $(BIN_DIR)/$(call IMAGE_NAME,$(1),$(2)) $(BIN_DIR)/$(call IMAGE_NAME,$(1),$(2)): $(KDIR)/$(call IMAGE_NAME,$(1),$(2)) cp $$^ $$@