From: Paolo Bonzini <pbonzini@redhat.com>
To: Gerd Hoffmann <kraxel@redhat.com>, qemu-devel@nongnu.org
Subject: Re: [Qemu-devel] [PATCH 2/2] Add --firmwarepath to configure
Date: Wed, 13 Sep 2017 22:43:22 +0200 [thread overview]
Message-ID: <47d72e62-8ebb-3b45-3efe-ab5f98ed4f39@redhat.com> (raw)
In-Reply-To: <20170913120937.5645-3-kraxel@redhat.com>
On 13/09/2017 14:09, Gerd Hoffmann wrote:
> Add a firmware path config option to configure. Multiple directories
> are accepted, with the usual colon as separator. Default value is
> ${prefix}/share/qemu-firmware. The path is searched in addition to the
> current search path (typically ${prefix}/share/qemu).
>
> This prepares qemu for the planned split of the prebuilt firmware blobs
> into a separate project.
>
> Distributions can also use this to get rid of the firmware symlink farm
> and add -- for example -- /usr/share/seabios to the firmware path
> instead.
>
> Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
> ---
> configure | 6 ++++++
> vl.c | 12 +++++++++---
> scripts/create_config | 2 +-
> 3 files changed, 16 insertions(+), 4 deletions(-)
>
> diff --git a/configure b/configure
> index fd7e3a5e81..870bdbd3e4 100755
> --- a/configure
> +++ b/configure
> @@ -332,6 +332,7 @@ modules="no"
> prefix="/usr/local"
> mandir="\${prefix}/share/man"
> datadir="\${prefix}/share"
> +firmwarepath="\${prefix}/share/qemu-firmware"
> qemu_docdir="\${prefix}/share/doc/qemu"
> bindir="\${prefix}/bin"
> libdir="\${prefix}/lib"
> @@ -915,6 +916,8 @@ for opt do
> ;;
> --localstatedir=*) local_statedir="$optarg"
> ;;
> + --firmwarepath=*) firmwarepath="$optarg"
> + ;;
> --sbindir=*|--sharedstatedir=*|\
> --oldincludedir=*|--datarootdir=*|--infodir=*|--localedir=*|\
> --htmldir=*|--dvidir=*|--pdfdir=*|--psdir=*)
> @@ -1418,6 +1421,7 @@ Advanced options (experts only):
> --libdir=PATH install libraries in PATH
> --sysconfdir=PATH install config in PATH$confsuffix
> --localstatedir=PATH install local state in PATH (set at runtime on win32)
> + --firmwarepath=PATH search PATH for firmware files
Maybe --firmwaredir or --with-firmwaredir (because firmwaredir is not
one of the "standard" directories)?
> @@ -4232,11 +4233,16 @@ int main(int argc, char **argv, char **envp)
> qemu_set_log(0);
> }
>
> - /* If no data_dir is specified then try to find it relative to the
> - executable path. */
> + /* add configured firmware directories */
> + dirs = g_strsplit(CONFIG_QEMU_FIRMWAREPATH, ":", 0);
Windows probably wants to use ; here, so you can use
G_SEARCHPATH_SEPARATOR_S instead of ":".
Thanks,
Paolo
> + for (i = 0; dirs[i] != NULL; i++) {
> + qemu_add_data_dir(dirs[i]);
> + }
> +
> + /* try to find datadir relative to the executable path */
> qemu_add_data_dir(os_find_datadir());
>
> - /* If all else fails use the install path specified when building. */
> + /* add the datadir specified when building */
> qemu_add_data_dir(CONFIG_QEMU_DATADIR);
>
> /* -L help lists the data directories and exits. */
> diff --git a/scripts/create_config b/scripts/create_config
> index e6929dd61e..603b826886 100755
> --- a/scripts/create_config
> +++ b/scripts/create_config
> @@ -15,7 +15,7 @@ case $line in
> echo "#define QEMU_VERSION_MINOR $minor"
> echo "#define QEMU_VERSION_MICRO $micro"
> ;;
> - qemu_*dir=*) # qemu-specific directory configuration
> + qemu_*dir=* | qemu_*path=*) # qemu-specific directory configuration
> name=${line%=*}
> value=${line#*=}
> define_name=$(echo $name | LC_ALL=C tr '[a-z]' '[A-Z]')
>
next prev parent reply other threads:[~2017-09-13 20:43 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-09-13 12:09 [Qemu-devel] [PATCH 0/2] Add --firmwarepath to configure Gerd Hoffmann
2017-09-13 12:09 ` [Qemu-devel] [PATCH 1/2] add qemu_add_data_dir() Gerd Hoffmann
2017-09-13 12:09 ` [Qemu-devel] [PATCH 2/2] Add --firmwarepath to configure Gerd Hoffmann
2017-09-13 20:43 ` Paolo Bonzini [this message]
2017-09-14 8:36 ` Gerd Hoffmann
2017-09-14 11:37 ` Paolo Bonzini
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=47d72e62-8ebb-3b45-3efe-ab5f98ed4f39@redhat.com \
--to=pbonzini@redhat.com \
--cc=kraxel@redhat.com \
--cc=qemu-devel@nongnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).