qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Paolo Bonzini <pbonzini@redhat.com>
To: qemu-devel@nongnu.org
Cc: marcandre.lureau@redhat.com
Subject: [PATCH v2 17/34] configure: move Windows flags detection to meson
Date: Sat, 23 Apr 2022 14:51:34 +0200	[thread overview]
Message-ID: <20220423125151.27821-18-pbonzini@redhat.com> (raw)
In-Reply-To: <20220423125151.27821-1-pbonzini@redhat.com>

Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
---
v1->v2: fix get_option('optimization') comparison to use a string

 configure   | 20 --------------------
 meson.build |  8 ++++++++
 2 files changed, 8 insertions(+), 20 deletions(-)

diff --git a/configure b/configure
index 0b236fda59..a6ba59cf6f 100755
--- a/configure
+++ b/configure
@@ -224,10 +224,6 @@ glob() {
     eval test -z '"${1#'"$2"'}"'
 }
 
-ld_has() {
-    $ld --help 2>/dev/null | grep ".$1" >/dev/null 2>&1
-}
-
 if printf %s\\n "$source_path" "$PWD" | grep -q "[[:space:]:]";
 then
   error_exit "main directory cannot contain spaces nor colons"
@@ -2088,22 +2084,6 @@ if test "$solaris" = "no" && test "$tsan" = "no"; then
     fi
 fi
 
-# Use ASLR, no-SEH and DEP if available
-if test "$mingw32" = "yes" ; then
-    flags="--no-seh --nxcompat"
-
-    # Disable ASLR for debug builds to allow debugging with gdb
-    if test "$debug" = "no" ; then
-        flags="--dynamicbase $flags"
-    fi
-
-    for flag in $flags; do
-        if ld_has $flag ; then
-            QEMU_LDFLAGS="-Wl,$flag $QEMU_LDFLAGS"
-        fi
-    done
-fi
-
 # Guest agent Windows MSI package
 
 if test "$QEMU_GA_MANUFACTURER" = ""; then
diff --git a/meson.build b/meson.build
index 1a9549d90c..d569c6e944 100644
--- a/meson.build
+++ b/meson.build
@@ -182,6 +182,14 @@ qemu_cxxflags = config_host['QEMU_CXXFLAGS'].split()
 qemu_objcflags = config_host['QEMU_OBJCFLAGS'].split()
 qemu_ldflags = config_host['QEMU_LDFLAGS'].split()
 
+if targetos == 'windows'
+  qemu_ldflags += cc.get_supported_link_arguments('-Wl,--no-seh', '-Wl,--nxcompat')
+  # Disable ASLR for debug builds to allow debugging with gdb
+  if get_option('optimization') == '0'
+    qemu_ldflags += cc.get_supported_link_arguments('-Wl,--dynamicbase')
+  endif
+endif
+
 if get_option('gprof')
   qemu_cflags += ['-p']
   qemu_cxxflags += ['-p']
-- 
2.35.1




  parent reply	other threads:[~2022-04-23 13:10 UTC|newest]

Thread overview: 36+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-04-23 12:51 [PATCH v2 00/34] Misc meson conversions for QEMU 7.1 Paolo Bonzini
2022-04-23 12:51 ` [PATCH v2 01/34] meson: show final set of compiler flags Paolo Bonzini
2022-04-23 12:51 ` [PATCH v2 02/34] configure: remove dead code Paolo Bonzini
2022-04-23 12:51 ` [PATCH v2 03/34] qga: wixl: get path to sysroot from pkg-config as intended Paolo Bonzini
2022-04-23 12:51 ` [PATCH v2 04/34] configure: pc-bios/qemu-icon.bmp does not exist Paolo Bonzini
2022-04-23 12:51 ` [PATCH v2 05/34] configure: gcov should not exclude fortify-source Paolo Bonzini
2022-04-23 12:51 ` [PATCH v2 06/34] configure: move --enable/--disable-debug-info to second option parsing pass Paolo Bonzini
2022-04-23 12:51 ` [PATCH v2 07/34] configure, meson: move OpenGL check to meson Paolo Bonzini
2022-04-23 12:51 ` [PATCH v2 08/34] meson, configure: move RDMA options " Paolo Bonzini
2022-04-23 12:51 ` [PATCH v2 09/34] meson, configure: move keyctl test " Paolo Bonzini
2022-04-23 12:51 ` [PATCH v2 10/34] meson, configure: move usbfs " Paolo Bonzini
2022-04-23 12:51 ` [PATCH v2 11/34] meson, configure: move libgio " Paolo Bonzini
2022-04-23 12:51 ` [PATCH v2 12/34] meson: remove CONFIG_XEN_PCI_PASSTHROUGH from config-target.h Paolo Bonzini
2022-04-23 12:51 ` [PATCH v2 13/34] meson, configure: move --enable-module-upgrades to meson Paolo Bonzini
2022-04-23 12:51 ` [PATCH v2 14/34] meson, configure: move Xen detection " Paolo Bonzini
2022-04-23 12:51 ` [PATCH v2 15/34] meson-buildoptions: add support for string options Paolo Bonzini
2022-04-23 12:51 ` [PATCH v2 16/34] configure, meson: move iasl detection to meson Paolo Bonzini
2022-04-23 12:51 ` Paolo Bonzini [this message]
2022-04-24 12:33   ` [PATCH v2 17/34] configure: move Windows flags " Marc-André Lureau
2022-04-23 12:51 ` [PATCH v2 18/34] configure: switch string options to automatic parsing Paolo Bonzini
2022-04-23 12:51 ` [PATCH v2 19/34] meson, configure: move --tls-priority to meson Paolo Bonzini
2022-04-23 12:51 ` [PATCH v2 20/34] meson, configure: move bdrv whitelists " Paolo Bonzini
2022-04-23 12:51 ` [PATCH v2 21/34] meson, configure: move --with-pkgversion, CONFIG_STAMP " Paolo Bonzini
2022-04-23 12:51 ` [PATCH v2 22/34] meson, configure: move --interp-prefix " Paolo Bonzini
2022-04-23 12:51 ` [PATCH v2 23/34] meson: always combine directories with prefix Paolo Bonzini
2022-04-23 12:51 ` [PATCH v2 24/34] configure: switch directory options to automatic parsing Paolo Bonzini
2022-04-23 12:51 ` [PATCH v2 25/34] meson: pass more options directly as -D Paolo Bonzini
2022-04-23 12:51 ` [PATCH v2 26/34] configure: omit options with default values from meson command line Paolo Bonzini
2022-04-23 12:51 ` [PATCH v2 27/34] meson, virtio: place all virtio-pci devices under virtio_pci_ss Paolo Bonzini
2022-04-23 12:51 ` [PATCH v2 28/34] configure: simplify vhost-net-{user, vdpa} configuration Paolo Bonzini
2022-04-23 12:51 ` [PATCH v2 29/34] build: move vhost-vsock configuration to Kconfig Paolo Bonzini
2022-04-23 12:51 ` [PATCH v2 30/34] build: move vhost-scsi " Paolo Bonzini
2022-04-23 12:51 ` [PATCH v2 31/34] build: move vhost-user-fs " Paolo Bonzini
2022-04-23 12:51 ` [PATCH v2 32/34] meson: create have_vhost_* variables Paolo Bonzini
2022-04-23 12:51 ` [PATCH v2 33/34] meson: use have_vhost_* variables to pick sources Paolo Bonzini
2022-04-23 12:51 ` [PATCH v2 34/34] configure, meson: move vhost options to Meson 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=20220423125151.27821-18-pbonzini@redhat.com \
    --to=pbonzini@redhat.com \
    --cc=marcandre.lureau@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).