From nobody Tue Feb 10 21:40:19 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1686062023; cv=none; d=zohomail.com; s=zohoarc; b=UYh9xKPSu4W5EfgvS1elEAhjiWo1XTryNKdDWdXHytJAGHeMaagwsOlG/9dfybKLuejEWktUE/XVIMdvhycnfFj0PthssP4/n/60/EA1DzjXCHBCW//JIVxUifkI320Rxh9tKwY59w4u+OjdFoD9jBQsbwlvbc/Ps4fAZ20OrmU= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1686062023; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=LglmaneiM/Lbpcn+O0faPg/sVlbIK7inueVGywwXhgc=; b=Fo9gj5gYVH5Yub6fL3gLZsizYzAxaEmZhSLr+Jc3ZrDgz/n8NGZBS0sx+evKEooLi3dxdAujwkzoYf44uspK9rn2JWUnkk2iVgFNy2PMwFiDtzJprfOZPyHkKclDda9eX9KD7srXeWGvMZNwI+NNLeIaTBkL/fq9JII7Z7dYTNo= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1686062023741644.4152780278134; Tue, 6 Jun 2023 07:33:43 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1q6Xir-0005MK-Nr; Tue, 06 Jun 2023 10:31:45 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1q6Xip-0005Hv-Jk for qemu-devel@nongnu.org; Tue, 06 Jun 2023 10:31:43 -0400 Received: from us-smtp-delivery-124.mimecast.com ([170.10.133.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1q6Xin-0001J7-PJ for qemu-devel@nongnu.org; Tue, 06 Jun 2023 10:31:43 -0400 Received: from mail-ed1-f72.google.com (mail-ed1-f72.google.com [209.85.208.72]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-356-dcobVCyHOvm7rVkiVgS3yg-1; Tue, 06 Jun 2023 10:31:39 -0400 Received: by mail-ed1-f72.google.com with SMTP id 4fb4d7f45d1cf-5149e1bd242so4120598a12.3 for ; Tue, 06 Jun 2023 07:31:39 -0700 (PDT) Received: from [192.168.10.118] ([2001:b07:6468:f312:9af8:e5f5:7516:fa89]) by smtp.gmail.com with ESMTPSA id bv13-20020a170906b1cd00b00978743b54bdsm486595ejb.78.2023.06.06.07.31.36 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 06 Jun 2023 07:31:37 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1686061901; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-type:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=LglmaneiM/Lbpcn+O0faPg/sVlbIK7inueVGywwXhgc=; b=bW1+hr2EO2FFSxl83mpQd5Q5Wv57HtevieV3t0f74A2IQlaWCsxVDJYzIG9WKTbpDsP9Fb hGjLEH9z1v9yZEJH9JumjImfYtGY92AFwtSdDA+bEu1JRU+sWBJ0lt5rviRBS50Q3/60OO RJSH2+FmPtEbtd5od0pCohQITodtSr4= X-MC-Unique: dcobVCyHOvm7rVkiVgS3yg-1 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686061898; x=1688653898; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=LglmaneiM/Lbpcn+O0faPg/sVlbIK7inueVGywwXhgc=; b=dU22JyX2l/8BjGy+DGjqql7YTmO46JvKfVM9YmoN76RCIdKip4wFqHh/MXiBIkKYWe g+QZK9RY9LL5khY+9QTSCdUHSENYFt7nLW2W1W8YGXx8mTRo6/Gfvmawjdtx/FYUvaOB s1/QxTyHlV3MHX5QlG90w0x9Fu1QXznNbd738jPH2Le7X11lUchGRIUeun/gzndiqgSZ NGE2FjTBgnkA61md+JflYv/DcAE8GCfAZpVBEfpT1UH1fs9vJL6wm5ba8C5RxKPuRx6t KNTFm+r+NlOs9aE0sxuZKTpG0Xrx83aoQKBWK8NQ5nuLGt+2EDjwAEA6SFl0B0JJeck5 6cLg== X-Gm-Message-State: AC+VfDybB0E+hqUk4JIcBCT2ayl3W37hZnY9BOq0qwruUGLlLPBwbE84 FEh5jC+ctT4eHzsMzjf+ZhpASQNfxCDgIzZ5guGLVEm2z5J+yHTUOIuxHQz4Ez84BK3SK8qUD+5 HyEwuRgc2y4eVoehmiz5RodXrSxLMbZv3PKXCM/fen8NXS6jF8ipa81+ePjLIce8RSw8qSv5eKR E= X-Received: by 2002:a17:907:6d0c:b0:977:d932:cde2 with SMTP id sa12-20020a1709076d0c00b00977d932cde2mr2915771ejc.62.1686061898157; Tue, 06 Jun 2023 07:31:38 -0700 (PDT) X-Google-Smtp-Source: ACHHUZ5PBBSiXnbPpeYC1peKcjCaeEQxp6LGTtAdR9wXe90aEtAoWcYKuYOlhjPqhzz19QNiNlrI9Q== X-Received: by 2002:a17:907:6d0c:b0:977:d932:cde2 with SMTP id sa12-20020a1709076d0c00b00977d932cde2mr2915753ejc.62.1686061897870; Tue, 06 Jun 2023 07:31:37 -0700 (PDT) From: Paolo Bonzini To: qemu-devel@nongnu.org Cc: =?UTF-8?q?Daniel=20P=20=2E=20Berrang=C3=A9?= , Thomas Huth , =?UTF-8?q?Alex=20Benn=C3=A9e?= Subject: [PULL 13/21] configure: rename --enable-pypi to --enable-download, control subprojects too Date: Tue, 6 Jun 2023 16:31:08 +0200 Message-Id: <20230606143116.685644-14-pbonzini@redhat.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230606143116.685644-1-pbonzini@redhat.com> References: <20230606143116.685644-1-pbonzini@redhat.com> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=170.10.133.124; envelope-from=pbonzini@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @redhat.com) X-ZM-MESSAGEID: 1686062024785100008 The behavior of --{enable,disable}-pypi is similar to that of -Dwrapmode=3D{default,nodownload} respectively. In particular, in both cases a feature needs to be explicitly enabled for the dependency to be downloaded. So, use a single option to control both cases. Now, --enable-slirp will trigger cloning and building of libslirp if the .pc file is not found on the machine. Reviewed-by: Daniel P. Berrang=C3=A9 Reviewed-by: Thomas Huth Reviewed-by: Alex Benn=C3=A9e Signed-off-by: Paolo Bonzini --- .gitignore | 2 -- configure | 17 +++++++---------- meson.build | 12 ++++++++---- subprojects/.gitignore | 3 +++ 4 files changed, 18 insertions(+), 16 deletions(-) create mode 100644 subprojects/.gitignore diff --git a/.gitignore b/.gitignore index 1ea59f48192..61fa39967b5 100644 --- a/.gitignore +++ b/.gitignore @@ -20,5 +20,3 @@ GTAGS *.swp *.patch *.gcov - -/subprojects/slirp diff --git a/configure b/configure index 92bacc756c0..52274212310 100755 --- a/configure +++ b/configure @@ -266,7 +266,7 @@ bsd_user=3D"" plugins=3D"$default_feature" ninja=3D"" python=3D -pypi=3D"enabled" +download=3D"enabled" bindir=3D"bin" skip_meson=3Dno vfio_user_server=3D"disabled" @@ -754,9 +754,9 @@ for opt do --with-git-submodules=3D*) git_submodules_action=3D"$optarg" ;; - --disable-pypi) pypi=3D"disabled" + --disable-download) download=3D"disabled" ;; - --enable-pypi) pypi=3D"enabled" + --enable-download) download=3D"enabled" ;; --enable-plugins) if test "$mingw32" =3D "yes"; then error_exit "TCG plugins not currently supported on= Windows platforms" @@ -960,7 +960,7 @@ python=3D"$(command -v "$python")" # - venv is allowed to use system packages; # - all setup can be performed offline; # - missing packages may be fetched from PyPI, -# unless --disable-pypi is passed. +# unless --disable-download is passed. # - pip is not installed into the venv when possible, # but ensurepip is called as a fallback when necessary. =20 @@ -977,7 +977,7 @@ python=3D"$python -B" mkvenv=3D"$python ${source_path}/python/scripts/mkvenv.py" =20 mkvenv_flags=3D"" -if test "$pypi" =3D "enabled" ; then +if test "$download" =3D "enabled" ; then mkvenv_flags=3D"--online" fi =20 @@ -1000,7 +1000,7 @@ meson=3D"$(cd pyvenv/bin; pwd)/meson" # Conditionally ensure Sphinx is installed. =20 mkvenv_flags=3D"" -if test "$pypi" =3D "enabled" -a "$docs" =3D "enabled" ; then +if test "$download" =3D "enabled" -a "$docs" =3D "enabled" ; then mkvenv_flags=3D"--online" fi =20 @@ -1940,11 +1940,8 @@ if test "$skip_meson" =3D no; then =20 rm -rf meson-private meson-info meson-logs =20 - # Prevent meson from automatically downloading wrapped subprojects when = missing. - # You can use 'meson subprojects download' before running configure. - meson_option_add "--wrap-mode=3Dnodownload" - # Built-in options + test "$download" =3D "disabled" && meson_option_add "--wrap-mode=3Dnodow= nload" test "$bindir" !=3D "bin" && meson_option_add "-Dbindir=3D$bindir" test "$default_feature" =3D no && meson_option_add -Dauto_features=3Ddis= abled test "$static" =3D yes && meson_option_add -Dprefer_static=3Dtrue diff --git a/meson.build b/meson.build index 4302c019237..f8af4b02e44 100644 --- a/meson.build +++ b/meson.build @@ -3985,8 +3985,15 @@ endif # Configuration summary # ######################### =20 -# Directories +# Build environment summary_info =3D {} +summary_info +=3D {'Build directory': meson.current_build_dir()} +summary_info +=3D {'Source path': meson.current_source_dir()} +summary_info +=3D {'GIT submodules': config_host['GIT_SUBMODULES']} +summary_info +=3D {'Download dependencies': get_option('wrap_mode') !=3D '= nodownload'} +summary(summary_info, bool_yn: true, section: 'Build environment') + +# Directories summary_info +=3D {'Install prefix': get_option('prefix')} summary_info +=3D {'BIOS directory': qemu_datadir} pathsep =3D targetos =3D=3D 'windows' ? ';' : ':' @@ -4004,9 +4011,6 @@ else summary_info +=3D {'local state directory': 'queried at runtime'} endif summary_info +=3D {'Doc directory': get_option('prefix') / get_option(= 'docdir')} -summary_info +=3D {'Build directory': meson.current_build_dir()} -summary_info +=3D {'Source path': meson.current_source_dir()} -summary_info +=3D {'GIT submodules': config_host['GIT_SUBMODULES']} summary(summary_info, bool_yn: true, section: 'Directories') =20 # Host binaries diff --git a/subprojects/.gitignore b/subprojects/.gitignore new file mode 100644 index 00000000000..7560ebb0b1a --- /dev/null +++ b/subprojects/.gitignore @@ -0,0 +1,3 @@ +/packagecache + +/slirp --=20 2.40.1