summaryrefslogtreecommitdiffstats
path: root/target
diff options
context:
space:
mode:
authorjow <jow@3c298f89-4303-0410-b956-a3cf2f4a3e73>2010-04-27 22:16:40 +0000
committerjow <jow@3c298f89-4303-0410-b956-a3cf2f4a3e73>2010-04-27 22:16:40 +0000
commita6a5ceb103c8d7ac7036729984a91e93195c4d0c (patch)
tree7370962bcf1893f749781fa84e023ffabe058420 /target
parentbae26fa12128b602edd15a6d3942cb069d3305d6 (diff)
[imagebuilder]
- correctly copy .config when scripts/env is used in the buildroot - prevent user provides PACKAGES from overriding per-profile defaults git-svn-id: svn://svn.openwrt.org/openwrt/trunk@21213 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'target')
-rw-r--r--target/imagebuilder/Makefile3
-rw-r--r--target/imagebuilder/files/Makefile26
2 files changed, 20 insertions, 9 deletions
diff --git a/target/imagebuilder/Makefile b/target/imagebuilder/Makefile
index e0b64ead4..42fb7bb69 100644
--- a/target/imagebuilder/Makefile
+++ b/target/imagebuilder/Makefile
@@ -23,9 +23,10 @@ all: compile
$(BIN_DIR)/$(IB_NAME).tar.bz2: clean
rm -rf $(PKG_BUILD_DIR)
mkdir -p $(IB_KDIR) $(PKG_BUILD_DIR)/staging_dir/host $(PKG_BUILD_DIR)/target
+ -cp $(TOPDIR)/.config $(PKG_BUILD_DIR)/.config
$(CP) \
$(INCLUDE_DIR) $(SCRIPT_DIR) \
- $(TOPDIR)/rules.mk $(TOPDIR)/.config \
+ $(TOPDIR)/rules.mk \
./files/Makefile \
$(TMP_DIR)/.targetinfo \
$(TMP_DIR)/.packageinfo \
diff --git a/target/imagebuilder/files/Makefile b/target/imagebuilder/files/Makefile
index 49fd6db94..b72e3f172 100644
--- a/target/imagebuilder/files/Makefile
+++ b/target/imagebuilder/files/Makefile
@@ -62,8 +62,8 @@ IPKG:= \
define Profile
$(eval $(call Profile/Default))
$(eval $(call Profile/$(1)))
- ifeq ($(PROFILE),)
- PROFILE:=$(1)
+ ifeq ($(USER_PROFILE),)
+ USER_PROFILE:=$(1)
endif
$(1)_NAME:=$(NAME)
$(1)_PACKAGES:=$(PACKAGES)
@@ -73,7 +73,7 @@ endef
include $(INCLUDE_DIR)/target.mk
-info: FORCE
+_call_info: FORCE
echo 'Current Target: "$(BOARD)$(if $(SUBTARGET), ($(BOARDNAME)))"'
echo 'Default Packages: $(DEFAULT_PACKAGES)'
echo 'Available Profiles:'
@@ -84,19 +84,19 @@ $(TOPDIR)/tmp/ipkg.conf: FORCE
@echo 'dest root /' > $@
@echo 'src packages file:$(PACKAGE_DIR)' >> $@
-BUILD_PACKAGES:=$(sort $(DEFAULT_PACKAGES) $(PACKAGES) $($(PROFILE)_PACKAGES) kernel)
+BUILD_PACKAGES:=$(sort $(DEFAULT_PACKAGES) $(USER_PACKAGES) $($(USER_PROFILE)_PACKAGES) kernel)
# "-pkgname" in the package list means remove "pkgname" from the package list
BUILD_PACKAGES:=$(filter-out $(filter -%,$(BUILD_PACKAGES)) $(patsubst -%,%,$(filter -%,$(BUILD_PACKAGES))),$(BUILD_PACKAGES))
-image:
- echo 'Building images for $(BOARD)$(if $($(PROFILE)_NAME), - $($(PROFILE)_NAME))'
+_call_image:
+ echo 'Building images for $(BOARD)$(if $($(USER_PROFILE)_NAME), - $($(USER_PROFILE)_NAME))'
echo 'Packages: $(BUILD_PACKAGES)'
echo
rm -rf $(TARGET_DIR)
mkdir -p $(TARGET_DIR) $(BIN_DIR) $(TMP_DIR)
$(MAKE) package_index
$(MAKE) package_install
-ifneq ($(FILES),)
+ifneq ($(USER_FILES),)
$(MAKE) copy_files
endif
$(MAKE) package_postinst
@@ -118,7 +118,7 @@ package_install: FORCE
copy_files: FORCE
@echo
@echo Copying extra files
- $(CP) $(FILES)/* $(TARGET_DIR)/
+ $(CP) $(USER_FILES)/* $(TARGET_DIR)/
package_postinst: FORCE
@echo
@@ -140,5 +140,15 @@ clean:
rm -rf tmp $(TARGET_DIR) $(BIN_DIR)
+info:
+ (unset PROFILE FILES PACKAGES MAKEFLAGS; $(MAKE) -s _call_info)
+
+image:
+ (unset PROFILE FILES PACKAGES MAKEFLAGS; \
+ $(MAKE) _call_image \
+ $(if $(PROFILE),USER_PROFILE="$(PROFILE)") \
+ $(if $(FILES),USER_FILES="$(FILES)") \
+ $(if $(PACKAGES),USER_PACKAGES="$(PACKAGES)"))
+
.SILENT: help info image