aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorFelix Fietkau <nbd@nbd.name>2017-02-14 12:24:07 +0100
committerFelix Fietkau <nbd@nbd.name>2017-02-15 11:37:13 +0100
commitb8c9ded999bd740c6a7c5e2816f047f957f795ee (patch)
tree5216c9b283777b75b8636b2ffd67c0b26aeb5ec8
parenteea6df8255bdf7d64124140bd1f138af3c9ed2ee (diff)
downloadupstream-b8c9ded999bd740c6a7c5e2816f047f957f795ee.tar.gz
upstream-b8c9ded999bd740c6a7c5e2816f047f957f795ee.tar.bz2
upstream-b8c9ded999bd740c6a7c5e2816f047f957f795ee.zip
build: add buildbot specific config option for setting defaults
This can be used to tweak the buildbot behavior without having to change buildbot's configuration. It will also allow us to add more aggressive clean steps (e.g. on toolchain changes), which would break developers' workflows if enable by default. Signed-off-by: Felix Fietkau <nbd@nbd.name>
-rw-r--r--config/Config-build.in14
-rw-r--r--package/base-files/image-config.in2
-rwxr-xr-xscripts/target-metadata.pl5
-rw-r--r--target/imagebuilder/Config.in3
-rw-r--r--target/sdk/Config.in1
5 files changed, 20 insertions, 5 deletions
diff --git a/config/Config-build.in b/config/Config-build.in
index 9b8e4b2283..e0889fcccf 100644
--- a/config/Config-build.in
+++ b/config/Config-build.in
@@ -9,7 +9,7 @@ menu "Global build settings"
config ALL_NONSHARED
bool "Select all target specific packages by default"
- default ALL
+ default ALL || BUILDBOT
config ALL_KMODS
bool "Select all kernel module packages by default"
@@ -19,6 +19,16 @@ menu "Global build settings"
bool "Select all userspace packages by default"
default n
+ config BUILDBOT
+ bool "Set build defaults for automatic builds (e.g. via buildbot)"
+ default n
+ help
+ This option changes several defaults to be more suitable for
+ automatic builds. This includes the following changes:
+ - Deleting build directories after compiling (to save space)
+ - Enabling per-device rootfs support
+ ...
+
config SIGNED_PACKAGES
bool "Cryptographically signed package lists"
default y
@@ -61,7 +71,7 @@ menu "Global build settings"
bool
prompt "Collect kernel debug information"
select KERNEL_DEBUG_INFO
- default n
+ default BUILDBOT
help
This collects debugging symbols from the kernel and all compiled modules.
Useful for release builds, so that kernel issues can be debugged offline
diff --git a/package/base-files/image-config.in b/package/base-files/image-config.in
index 0439206bb6..b60053046a 100644
--- a/package/base-files/image-config.in
+++ b/package/base-files/image-config.in
@@ -286,7 +286,7 @@ menuconfig PER_FEED_REPO
config PER_FEED_REPO_ADD_COMMENTED
bool "Comment out not enabled feeds"
- default y
+ default !BUILDBOT
depends on PER_FEED_REPO && PER_FEED_REPO_ADD_DISABLED
help
Add not enabled feeds as commented out source lines to opkg.conf.
diff --git a/scripts/target-metadata.pl b/scripts/target-metadata.pl
index 7f7dc6d4ee..31de3c74c8 100755
--- a/scripts/target-metadata.pl
+++ b/scripts/target-metadata.pl
@@ -203,13 +203,14 @@ endchoice
choice
prompt "Target Profile"
+ default TARGET_MULTI_PROFILE if BUILDBOT
EOF
foreach my $target (@target) {
my $profile = $target->{profiles}->[0];
$profile or next;
print <<EOF;
- default TARGET_$target->{conf}_$profile->{id} if TARGET_$target->{conf}
+ default TARGET_$target->{conf}_$profile->{id} if TARGET_$target->{conf} && !BUILDBOT
EOF
}
@@ -256,9 +257,11 @@ menu "Target Devices"
config TARGET_ALL_PROFILES
bool "Enable all profiles by default"
+ default BUILDBOT
config TARGET_PER_DEVICE_ROOTFS
bool "Use a per-device root filesystem that adds profile packages"
+ default BUILDBOT
help
When disabled, all device packages from all selected devices
will be included in all images by default. (Marked as <*>) You will
diff --git a/target/imagebuilder/Config.in b/target/imagebuilder/Config.in
index b54eb5b4ff..49bb741f73 100644
--- a/target/imagebuilder/Config.in
+++ b/target/imagebuilder/Config.in
@@ -1,6 +1,7 @@
config IB
bool "Build the LEDE Image Builder"
depends on !EXTERNAL_TOOLCHAIN
+ default BUILDBOT
help
This is essentially a stripped-down version of the buildroot
with precompiled packages, kernel image and image building tools.
@@ -8,7 +9,7 @@ config IB
config IB_STANDALONE
bool "Include package repositories"
- default y
+ default y if !BUILDBOT
depends on IB
help
Disabling this option will cause the ImageBuilder to embed only
diff --git a/target/sdk/Config.in b/target/sdk/Config.in
index df2532985e..095759d064 100644
--- a/target/sdk/Config.in
+++ b/target/sdk/Config.in
@@ -1,6 +1,7 @@
config SDK
bool "Build the LEDE SDK"
depends on !EXTERNAL_TOOLCHAIN
+ default BUILDBOT
help
This is essentially a stripped-down version of the buildroot
with a precompiled toolchain. It can be used to develop and