qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH] configure: Add flags for MinGW32 standalone build


From: Thomas Huth
Subject: Re: [PATCH] configure: Add flags for MinGW32 standalone build
Date: Fri, 8 Jan 2021 08:25:01 +0100
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.4.0

On 07/01/2021 22.38, Joshua Watt wrote:
There are two cases that need to be accounted for when compiling QEMU
for MinGW32:
  1) A standalone distribution, where QEMU is self contained and
     extracted by the user, such as a user would download from the QEMU
     website. In this case, all of the QEMU files should be rooted in
     $prefix to ensure they can be easily packaged together for
     distribution
  2) QEMU integrated into a distribution image/sysroot/SDK and
     distributed with other programs. In this case, the provided
     arguments for bindir/datadir/etc. should be respected as they for a
     Linux build.

Add a configure time flags --enable-standalone-mingw and
--disable-standalone-mingw that allows the user to control this
behavior. The flag defaults to "enabled" if unspecified to retain the
existing build behavior

Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
---
  configure | 8 +++++++-
  1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/configure b/configure
index 5860bdb77b..5c83edb502 100755
--- a/configure
+++ b/configure
@@ -358,6 +358,7 @@ strip_opt="yes"
  tcg_interpreter="no"
  bigendian="no"
  mingw32="no"
+mingw32_standalone="yes"
  gcov="no"
  EXESUF="$default_feature"
  HOST_DSOSUF=".so"
@@ -1558,6 +1559,10 @@ for opt do
    ;;
    --disable-fuse-lseek) fuse_lseek="disabled"
    ;;
+  --enable-standalone-mingw) mingw32_standalone="yes"
+  ;;
+  --disable-standalone-mingw) mingw32_standalone="no"
+  ;;
    *)
        echo "ERROR: unknown option $opt"
        echo "Try '$0 --help' for more information"
@@ -1570,7 +1575,7 @@ libdir="${libdir:-$prefix/lib}"
  libexecdir="${libexecdir:-$prefix/libexec}"
  includedir="${includedir:-$prefix/include}"
-if test "$mingw32" = "yes" ; then
+if test "$mingw32" = "yes" && test "$mingw32_standalone" = "yes"; then
      mandir="$prefix"
      datadir="$prefix"
      docdir="$prefix"
@@ -1897,6 +1902,7 @@ disabled with --disable-FEATURE, default is enabled if 
available
    libdaxctl       libdaxctl support
    fuse            FUSE block device export
    fuse-lseek      SEEK_HOLE/SEEK_DATA support for FUSE exports
+  standalone-mingw  Build for standalone distribution on MinGW
NOTE: The object files are built at the place where configure is launched
  EOF

I think this should maybe be done independently from MinGW, so that it could be used on other systems, too. Thus maybe rather name the switch "--enable-standalone-distribution" or "--enable-standalone-installation" or something like this? On MinGW, the value of the switch could then default to "yes" while on other systems it would be "no" by default.

 Thomas




reply via email to

[Prev in Thread] Current Thread [Next in Thread]