summaryrefslogtreecommitdiffstats
path: root/configure
diff options
context:
space:
mode:
authorPaolo Bonzini2019-01-23 07:56:17 +0100
committerPaolo Bonzini2019-03-07 21:45:53 +0100
commitf349474920d80838ecea3d421531fdb0660b8740 (patch)
treef548d03d0ce3a32f60daa016ef9c507346910877 /configure
parentbuild: switch to Kconfig (diff)
downloadqemu-f349474920d80838ecea3d421531fdb0660b8740.tar.gz
qemu-f349474920d80838ecea3d421531fdb0660b8740.tar.xz
qemu-f349474920d80838ecea3d421531fdb0660b8740.zip
minikconfig: implement allnoconfig and defconfig modes
Apart from defconfig (which is a no-op), allyesconfig/allnoconfig/randcondfig can be implemented simply by ignoring the RHS of assignments and "default" statements. The RHS is replaced respectively by "true", "false" or a random value. However, allyesconfig and randconfig do not quite work, because all the files for hw/ARCH/Kconfig are sourced and therefore you could end up enabling some ARM boards in x86 or things like that. This is left for future work, but I am leaving it in to help debugging minikconf itself. allnoconfig mode is tied to a new configure option, --without-default-devices. Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Diffstat (limited to 'configure')
-rwxr-xr-xconfigure12
1 files changed, 11 insertions, 1 deletions
diff --git a/configure b/configure
index 89e4a23f6c..6942b7bad4 100755
--- a/configure
+++ b/configure
@@ -487,7 +487,7 @@ libxml2=""
docker="no"
debug_mutex="no"
libpmem=""
-libudev="no"
+default_devices="yes"
# cross compilers defaults, can be overridden with --cross-cc-ARCH
cross_cc_aarch64="aarch64-linux-gnu-gcc"
@@ -996,6 +996,10 @@ for opt do
;;
--with-trace-file=*) trace_file="$optarg"
;;
+ --with-default-devices) default_devices="yes"
+ ;;
+ --without-default-devices) default_devices="no"
+ ;;
--enable-gprof) gprof="yes"
;;
--enable-gcov) gcov="yes"
@@ -6261,6 +6265,7 @@ echo "capstone $capstone"
echo "docker $docker"
echo "libpmem support $libpmem"
echo "libudev $libudev"
+echo "default devices $default_devices"
if test "$supported_cpu" = "no"; then
echo
@@ -6322,6 +6327,11 @@ echo "GIT_UPDATE=$git_update" >> $config_host_mak
echo "ARCH=$ARCH" >> $config_host_mak
+if test "$default_devices" = "yes" ; then
+ echo "CONFIG_MINIKCONF_MODE=--defconfig" >> $config_host_mak
+else
+ echo "CONFIG_MINIKCONF_MODE=--allnoconfig" >> $config_host_mak
+fi
if test "$debug_tcg" = "yes" ; then
echo "CONFIG_DEBUG_TCG=y" >> $config_host_mak
fi