Browse Source

target/sdk: use .config instead of unconditionally enabling all build dirs

Call make defconfig on every build to catch newly added packages

Signed-off-by: Felix Fietkau <[email protected]>

SVN-Revision: 39913
Felix Fietkau 11 years ago
parent
commit
ee4110aff0
3 changed files with 22 additions and 5 deletions
  1. 11 0
      include/toplevel.mk
  2. 2 5
      package/Makefile
  3. 9 0
      target/sdk/convert-config.pl

+ 11 - 0
include/toplevel.mk

@@ -156,6 +156,15 @@ prereq:: prepare-tmpinfo .config
 	@+$(MAKE) -r -s tmp/.prereq-build $(PREP_MK)
 	@+$(NO_TRACE_MAKE) -r -s $@
 
+ifeq ($(SDK),1)
+
+%::
+	@+$(PREP_MK) $(NO_TRACE_MAKE) -r -s prereq
+	@./scripts/config/conf --defconfig=.config Config.in
+	@+$(ULIMIT_FIX) $(SUBMAKE) -r $@
+
+else
+
 %::
 	@+$(PREP_MK) $(NO_TRACE_MAKE) -r -s prereq
 	@( \
@@ -167,6 +176,8 @@ prereq:: prepare-tmpinfo .config
 	)
 	@+$(ULIMIT_FIX) $(SUBMAKE) -r $@
 
+endif
+
 help:
 	cat README
 

+ 2 - 5
package/Makefile

@@ -10,11 +10,8 @@ curdir:=package
 -include $(TMP_DIR)/.packagedeps
 $(curdir)/builddirs:=$(sort $(package-) $(package-y) $(package-m))
 $(curdir)/builddirs-install:=.
-ifeq ($(SDK),1)
-else
-  $(curdir)/builddirs-default:=. $(sort $(package-y) $(package-m))
-  $(curdir)/builddirs-prereq:=. $(sort $(prereq-y) $(prereq-m))
-endif
+$(curdir)/builddirs-default:=. $(sort $(package-y) $(package-m))
+$(curdir)/builddirs-prereq:=. $(sort $(prereq-y) $(prereq-m))
 ifneq ($(IGNORE_ERRORS),)
   package-y-filter := $(package-y)
   package-m-filter := $(filter-out $(package-y),$(package-m))

+ 9 - 0
target/sdk/convert-config.pl

@@ -1,6 +1,13 @@
 #!/usr/bin/env perl
 use strict;
 
+print <<EOF;
+config ALL
+	bool
+	default y
+
+EOF
+
 while (<>) {
 	chomp;
 	next unless /^CONFIG_([^=]+)=(.*)$/;
@@ -9,6 +16,8 @@ while (<>) {
 	my $val = $2;
 	my $type;
 
+	next if $var eq 'ALL';
+
 	if ($val eq 'y') {
 		$type = "bool";
 	} elsif ($val eq 'm') {