diff --git a/openwrt/Config.in b/openwrt/Config.in index ae959f683e..4a887cc135 100644 --- a/openwrt/Config.in +++ b/openwrt/Config.in @@ -8,23 +8,24 @@ config HAVE_DOT_CONFIG source "target/Config.in" -config DEVEL +config ALL + bool "Select all packages by default" + default n + +menuconfig DEVEL bool "Advanced configuration options (for developers)" default n select BUILDOPTS select TOOLCHAINOPTS -config ALL - bool "Select all packages by default" - default n +menuconfig BUILDOPTS + bool "Build Options" if DEVEL config WGET string + prompt "WGET command" if BUILDOPTS default "wget --passive-ftp -nd" -menuconfig BUILDOPTS - bool "Build Options" if DEVEL - config TAR_VERBOSITY bool prompt "Tar verbose" if BUILDOPTS @@ -41,6 +42,3 @@ source "toolchain/Config.in" source "target/linux/Config.in" source ".config.in" -menu "busybox" -source "package/busybox/config/Config.in" -endmenu diff --git a/openwrt/Makefile b/openwrt/Makefile index 06288de6b8..9b9d1c955e 100644 --- a/openwrt/Makefile +++ b/openwrt/Makefile @@ -45,7 +45,7 @@ ifeq ($(shell ./scripts/timestamp.pl -p .pkginfo package),package) @echo Collecting package info... @-for makefile in package/*/Makefile; do \ echo Source-Makefile: $$makefile; \ - $(MAKE) DUMP=1 -f $$makefile 2>&- || true; \ + $(MAKE) --no-print-dir DUMP=1 -f $$makefile 2>&- || true; \ done > $@ endif diff --git a/openwrt/package/busybox/Makefile b/openwrt/package/busybox/Makefile index 23dcc1cf8d..ff23ee7dd8 100644 --- a/openwrt/package/busybox/Makefile +++ b/openwrt/package/busybox/Makefile @@ -15,14 +15,18 @@ PKG_CAT:=bzcat include $(TOPDIR)/package/rules.mk define Package/busybox -CONFIGFILE:=config/Config.in SECTION:=base CATEGORY:=Base system +MENU:=1 DEFAULT:=y TITLE:=Core utilities for embedded Linux DESCRIPTION:=The Swiss Army Knife of embedded Linux. \\\ It slices, it dices, it makes Julian Fries. URL:=http://busybox.net/ +CONFIG:=menu "Configuration" \\\ + depends on PACKAGE_busybox \\\ +source "package/busybox/config/Config.in" \\\ +endmenu endef define Build/Configure diff --git a/openwrt/package/rules.mk b/openwrt/package/rules.mk index e8417c3a5f..99e4a846a5 100644 --- a/openwrt/package/rules.mk +++ b/openwrt/package/rules.mk @@ -116,6 +116,12 @@ define BuildPackage DUMPINFO += \ echo "@@"; + ifneq ($(CONFIG),) + DUMPINFO += \ + echo "Config: $(CONFIG)" | sed -e 's,\\,\n,g'; \ + echo "@@"; + endif + $$(IDIR_$(1))/CONTROL/control: $(PKG_BUILD_DIR)/.prepared mkdir -p $$(IDIR_$(1))/CONTROL echo "Package: $(1)" > $$(IDIR_$(1))/CONTROL/control @@ -222,7 +228,7 @@ endef ifneq ($(DUMP),) dumpinfo: FORCE - $(DUMPINFO) + @$(DUMPINFO) else $(PACKAGE_DIR): diff --git a/openwrt/scripts/gen_menuconfig.pl b/openwrt/scripts/gen_menuconfig.pl index 3f4476a2c6..e282ee3ed2 100755 --- a/openwrt/scripts/gen_menuconfig.pl +++ b/openwrt/scripts/gen_menuconfig.pl @@ -30,7 +30,9 @@ sub print_category($) { } print "\t\thelp\n"; print $pkg->{description}; - print "\n" + print "\n"; + + $pkg->{config} and print $pkg->{config}."\n"; } } print "endmenu\n\n"; @@ -75,6 +77,15 @@ while ($line = <>) { $desc .= "\t\t$line"; } $pkg->{description} = $desc; + }; + $line =~ /^Config: \s*(.*)\s*$/ and do { + my $conf = "$1\n"; + my $line; + while ($line = <>) { + last if $line =~ /^@@/; + $conf .= "$line"; + } + $pkg->{config} = $conf; } }