From a1aed6ae611ddd61a0aaebbbc591550113c0ff3b Mon Sep 17 00:00:00 2001 From: nbd Date: Fri, 16 Mar 2007 03:02:31 +0000 Subject: Add an 'Image Configuration' menu to menuconfig Packages can export a list of config options with labels and data types through the metadata. The selected config values will be exported to the target filesystem in /etc/uci-defaults and applied on the first boot. git-svn-id: svn://svn.openwrt.org/openwrt/trunk@6572 3c298f89-4303-0410-b956-a3cf2f4a3e73 --- include/package-dumpinfo.mk | 7 ++++++- include/package-ipkg.mk | 14 ++++++++------ 2 files changed, 14 insertions(+), 7 deletions(-) (limited to 'include') diff --git a/include/package-dumpinfo.mk b/include/package-dumpinfo.mk index 2d52f23475..e6a462863c 100644 --- a/include/package-dumpinfo.mk +++ b/include/package-dumpinfo.mk @@ -6,7 +6,11 @@ # ifneq ($(DUMP),) -define Dumpinfo +define Config + preconfig_$$(1) += echo "Preconfig: $(1)"; echo "Preconfig-Type: $(2)"; echo "Preconfig-Default: $(3)"; echo "Preconfig-Label: $(4)"; +endef + +define Dumpinfo dumpinfo: dumpinfo-$(1) dumpinfo-$(1): FORCE @echo "Package: $(1)" ; \ @@ -28,5 +32,6 @@ define Dumpinfo $(if $(URL),echo;echo "$(URL)";) \ echo "@@" ; \ $$(if $$(Package/$(1)/config),echo "Config: "; getvar $(call shvar,Package/$(1)/config); echo "@@") + $(if $$(preconfig_$(1)),@$$(preconfig_$(1)) echo "") endef endif diff --git a/include/package-ipkg.mk b/include/package-ipkg.mk index 0d6ab8af91..0f98dcfe14 100644 --- a/include/package-ipkg.mk +++ b/include/package-ipkg.mk @@ -54,12 +54,14 @@ define BuildIPKG done; \ echo "Depends: $$$$DEPENDS" >> $$(IDIR_$(1))/CONTROL/control; \ ) - echo "Source: $(SOURCE)" >> $$(IDIR_$(1))/CONTROL/control - echo "Section: $(SECTION)" >> $$(IDIR_$(1))/CONTROL/control - echo "Priority: $(PRIORITY)" >> $$(IDIR_$(1))/CONTROL/control - echo "Maintainer: $(MAINTAINER)" >> $$(IDIR_$(1))/CONTROL/control - echo "Architecture: $(PKGARCH)" >> $$(IDIR_$(1))/CONTROL/control - echo "Description: $(DESCRIPTION)" | sed -e 's,\\,\n,g' | sed -e 's,^[[:space:]]*$$$$, .,g' >> $$(IDIR_$(1))/CONTROL/control + ( \ + echo "Source: $(SOURCE)"; \ + echo "Section: $(SECTION)"; \ + echo "Priority: $(PRIORITY)"; \ + echo "Maintainer: $(MAINTAINER)"; \ + echo "Architecture: $(PKGARCH)"; \ + echo -n "Description: "; getvar $(call shvar,Package/$(1)/description) | sed -e 's,^[[:space:]]*, ,g'; \ + ) >> $$(IDIR_$(1))/CONTROL/control chmod 644 $$(IDIR_$(1))/CONTROL/control (cd $$(IDIR_$(1))/CONTROL; \ $($(1)_COMMANDS) \ -- cgit v1.2.3