From: Paolo Bonzini <pbonzini@redhat.com>
To: qemu-devel@nongnu.org
Subject: [PATCH 24/26] configure: convert compiler tests to meson, part 4
Date: Tue, 8 Jun 2021 13:22:59 +0200 [thread overview]
Message-ID: <20210608112301.402434-25-pbonzini@redhat.com> (raw)
In-Reply-To: <20210608112301.402434-1-pbonzini@redhat.com>
And remove them from the summary, since now their outcome is verbosely
included in the meson output.
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
---
configure | 137 ----------------------------------------------------
meson.build | 38 +++++++++++++--
2 files changed, 33 insertions(+), 142 deletions(-)
diff --git a/configure b/configure
index dd6098e306..87143ca00d 100755
--- a/configure
+++ b/configure
@@ -3511,59 +3511,6 @@ elif test "$jemalloc" = "yes" ; then
malloc=jemalloc
fi
-##########################################
-# signalfd probe
-signalfd="no"
-cat > $TMPC << EOF
-#include <unistd.h>
-#include <sys/syscall.h>
-#include <signal.h>
-int main(void) { return syscall(SYS_signalfd, -1, NULL, _NSIG / 8); }
-EOF
-
-if compile_prog "" "" ; then
- signalfd=yes
-fi
-
-# check if optreset global is declared by <getopt.h>
-optreset="no"
-cat > $TMPC << EOF
-#include <getopt.h>
-int main(void) { return optreset; }
-EOF
-
-if compile_prog "" "" ; then
- optreset=yes
-fi
-
-# check if eventfd is supported
-eventfd=no
-cat > $TMPC << EOF
-#include <sys/eventfd.h>
-
-int main(void)
-{
- return eventfd(0, EFD_NONBLOCK | EFD_CLOEXEC);
-}
-EOF
-if compile_prog "" "" ; then
- eventfd=yes
-fi
-
-# check if memfd is supported
-memfd=no
-cat > $TMPC << EOF
-#include <sys/mman.h>
-
-int main(void)
-{
- return memfd_create("foo", MFD_ALLOW_SEALING);
-}
-EOF
-if compile_prog "" "" ; then
- memfd=yes
-fi
-
# check for usbfs
have_usbfs=no
if test "$linux_user" = "yes"; then
@@ -3711,66 +3658,6 @@ case "$capstone" in
;;
esac
-##########################################
-# check if we have fdatasync
-
-fdatasync=no
-cat > $TMPC << EOF
-#include <unistd.h>
-int main(void) {
-#if defined(_POSIX_SYNCHRONIZED_IO) && _POSIX_SYNCHRONIZED_IO > 0
-return fdatasync(0);
-#else
-#error Not supported
-#endif
-}
-EOF
-if compile_prog "" "" ; then
- fdatasync=yes
-fi
-
-##########################################
-# check if we have madvise
-
-madvise=no
-cat > $TMPC << EOF
-#include <sys/types.h>
-#include <sys/mman.h>
-#include <stddef.h>
-int main(void) { return madvise(NULL, 0, MADV_DONTNEED); }
-EOF
-if compile_prog "" "" ; then
- madvise=yes
-fi
-
-##########################################
-# check if we have posix_madvise
-
-posix_madvise=no
-cat > $TMPC << EOF
-#include <sys/mman.h>
-#include <stddef.h>
-int main(void) { return posix_madvise(NULL, 0, POSIX_MADV_DONTNEED); }
-EOF
-if compile_prog "" "" ; then
- posix_madvise=yes
-fi
-
-##########################################
-# check if we have posix_memalign()
-
-posix_memalign=no
-cat > $TMPC << EOF
-#include <stdlib.h>
-int main(void) {
- void *p;
- return posix_memalign(&p, 8, 8);
-}
-EOF
-if compile_prog "" "" ; then
- posix_memalign=yes
-fi
-
##########################################
# check if we have posix_syslog
@@ -4842,12 +4729,6 @@ fi
if test "$splice" = "yes" ; then
echo "CONFIG_SPLICE=y" >> $config_host_mak
fi
-if test "$eventfd" = "yes" ; then
- echo "CONFIG_EVENTFD=y" >> $config_host_mak
-fi
-if test "$memfd" = "yes" ; then
- echo "CONFIG_MEMFD=y" >> $config_host_mak
-fi
if test "$have_usbfs" = "yes" ; then
echo "CONFIG_USBFS=y" >> $config_host_mak
fi
@@ -4922,24 +4803,6 @@ fi
if test "$membarrier" = "yes" ; then
echo "CONFIG_MEMBARRIER=y" >> $config_host_mak
fi
-if test "$signalfd" = "yes" ; then
- echo "CONFIG_SIGNALFD=y" >> $config_host_mak
-fi
-if test "$optreset" = "yes" ; then
- echo "HAVE_OPTRESET=y" >> $config_host_mak
-fi
-if test "$fdatasync" = "yes" ; then
- echo "CONFIG_FDATASYNC=y" >> $config_host_mak
-fi
-if test "$madvise" = "yes" ; then
- echo "CONFIG_MADVISE=y" >> $config_host_mak
-fi
-if test "$posix_madvise" = "yes" ; then
- echo "CONFIG_POSIX_MADVISE=y" >> $config_host_mak
-fi
-if test "$posix_memalign" = "yes" ; then
- echo "CONFIG_POSIX_MEMALIGN=y" >> $config_host_mak
-fi
if test "$spice_protocol" = "yes" ; then
echo "CONFIG_SPICE_PROTOCOL=y" >> $config_host_mak
diff --git a/meson.build b/meson.build
index 4b9bbca7ff..e168e166ad 100644
--- a/meson.build
+++ b/meson.build
@@ -1275,6 +1275,7 @@ config_host_data.set('CONFIG_CLOCK_ADJTIME', cc.has_function('clock_adjtime'))
config_host_data.set('CONFIG_DUP3', cc.has_function('dup3'))
config_host_data.set('CONFIG_FALLOCATE', cc.has_function('fallocate'))
config_host_data.set('CONFIG_POSIX_FALLOCATE', cc.has_function('posix_fallocate'))
+config_host_data.set('CONFIG_POSIX_MEMALIGN', cc.has_function('posix_memalign'))
config_host_data.set('CONFIG_PPOLL', cc.has_function('ppoll'))
config_host_data.set('CONFIG_PREADV', cc.has_function('preadv', prefix: '#include <sys/uio.h>'))
config_host_data.set('CONFIG_SEM_TIMEDWAIT', cc.has_function('sem_timedwait', dependencies: threads))
@@ -1313,11 +1314,42 @@ config_host_data.set('CONFIG_RTNETLINK',
cc.has_header_symbol('linux/rtnetlink.h', 'IFLA_PROTO_DOWN'))
config_host_data.set('CONFIG_SYSMACROS',
cc.has_header_symbol('sys/sysmacros.h', 'makedev'))
+config_host_data.set('HAVE_OPTRESET',
+ cc.has_header_symbol('getopt.h', 'optreset'))
config_host_data.set('HAVE_STRUCT_STAT_ST_ATIM',
cc.has_member('struct stat', 'st_atim', prefix: '#include <sys/stat.h>'))
config_host_data.set('HAVE_UTMPX',
cc.has_header_symbol('utmpx.h', 'struct utmpx'))
+config_host_data.set('CONFIG_EVENTFD', cc.compiles('''
+ #include <sys/eventfd.h>
+ int main(void) { return eventfd(0, EFD_NONBLOCK | EFD_CLOEXEC); }'''))
+config_host_data.set('CONFIG_FDATASYNC', cc.compiles(gnu_source_prefix + '''
+ #include <unistd.h>
+ int main(void) {
+ #if defined(_POSIX_SYNCHRONIZED_IO) && _POSIX_SYNCHRONIZED_IO > 0
+ return fdatasync(0);
+ #else
+ #error Not supported
+ #endif
+ }'''))
+config_host_data.set('CONFIG_MADVISE', cc.compiles(gnu_source_prefix + '''
+ #include <sys/types.h>
+ #include <sys/mman.h>
+ #include <stddef.h>
+ int main(void) { return madvise(NULL, 0, MADV_DONTNEED); }'''))
+config_host_data.set('CONFIG_MEMFD', cc.compiles(gnu_source_prefix + '''
+ #include <sys/mman.h>
+ int main(void) { return memfd_create("foo", MFD_ALLOW_SEALING); }'''))
+config_host_data.set('CONFIG_POSIX_MADVISE', cc.compiles(gnu_source_prefix + '''
+ #include <sys/mman.h>
+ #include <stddef.h>
+ int main(void) { return posix_madvise(NULL, 0, POSIX_MADV_DONTNEED); }'''))
+config_host_data.set('CONFIG_SIGNALFD', cc.compiles(gnu_source_prefix + '''
+ #include <unistd.h>
+ #include <sys/syscall.h>
+ #include <signal.h>
+ int main(void) { return syscall(SYS_signalfd, -1, NULL, _NSIG / 8); }'''))
config_host_data.set('CONFIG_STATIC_ASSERT', cc.compiles('''
_Static_assert(1, "success");
int main(void) {
@@ -1400,7 +1432,7 @@ if link_language == 'cpp'
}
endif
-have_ivshmem = config_host.has_key('CONFIG_EVENTFD')
+have_ivshmem = config_host_data.get('CONFIG_EVENTFD')
host_kconfig = \
('CONFIG_TPM' in config_host ? ['CONFIG_TPM=y'] : []) + \
('CONFIG_SPICE' in config_host ? ['CONFIG_SPICE=y'] : []) + \
@@ -2721,10 +2753,6 @@ summary_info += {'PIE': get_option('b_pie')}
summary_info += {'static build': config_host.has_key('CONFIG_STATIC')}
summary_info += {'malloc trim support': has_malloc_trim}
summary_info += {'membarrier': config_host.has_key('CONFIG_MEMBARRIER')}
-summary_info += {'fdatasync': config_host.has_key('CONFIG_FDATASYNC')}
-summary_info += {'madvise': config_host.has_key('CONFIG_MADVISE')}
-summary_info += {'posix_madvise': config_host.has_key('CONFIG_POSIX_MADVISE')}
-summary_info += {'posix_memalign': config_host.has_key('CONFIG_POSIX_MEMALIGN')}
summary_info += {'debug stack usage': config_host.has_key('CONFIG_DEBUG_STACK_USAGE')}
summary_info += {'mutex debugging': config_host.has_key('CONFIG_DEBUG_MUTEX')}
summary_info += {'memory allocator': get_option('malloc')}
--
2.31.1
next prev parent reply other threads:[~2021-06-08 11:41 UTC|newest]
Thread overview: 71+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-06-08 11:22 [PATCH 00/22] Convert more checks to Meson Paolo Bonzini
2021-06-08 11:22 ` [PATCH 01/26] meson: drop unused CONFIG_GCRYPT_HMAC Paolo Bonzini
2021-06-08 17:37 ` Richard Henderson
2021-06-15 13:53 ` Daniel P. Berrangé
2021-06-08 11:22 ` [PATCH 02/26] configure: drop unused variables for xts Paolo Bonzini
2021-06-08 12:15 ` Philippe Mathieu-Daudé
2021-06-08 17:38 ` Richard Henderson
2021-06-15 13:55 ` Daniel P. Berrangé
2021-06-08 11:22 ` [PATCH 03/26] configure, meson: convert crypto detection to meson Paolo Bonzini
2021-06-08 19:16 ` Richard Henderson
2021-06-15 14:01 ` Daniel P. Berrangé
2021-06-08 11:22 ` [PATCH 04/26] configure, meson: convert libtasn1 " Paolo Bonzini
2021-06-08 19:32 ` Richard Henderson
2021-06-15 14:04 ` Daniel P. Berrangé
2021-06-08 11:22 ` [PATCH 05/26] configure, meson: convert pam " Paolo Bonzini
2021-06-08 19:45 ` Richard Henderson
2021-06-08 19:47 ` Richard Henderson
2021-06-08 20:20 ` Daniel P. Berrangé
2021-06-09 15:46 ` Richard Henderson
2021-06-09 15:57 ` Daniel P. Berrangé
2021-06-09 16:47 ` Richard Henderson
2021-06-15 13:58 ` Paolo Bonzini
2021-06-15 14:05 ` Daniel P. Berrangé
2021-06-08 11:22 ` [PATCH 06/26] configure, meson: convert libusb " Paolo Bonzini
2021-06-15 14:06 ` Daniel P. Berrangé
2021-06-08 11:22 ` [PATCH 07/26] configure, meson: convert libcacard " Paolo Bonzini
2021-06-15 14:08 ` Daniel P. Berrangé
2021-06-08 11:22 ` [PATCH 08/26] configure, meson: convert libusbredir " Paolo Bonzini
2021-06-15 14:09 ` Daniel P. Berrangé
2021-06-08 11:22 ` [PATCH 09/26] configure, meson: convert vte " Paolo Bonzini
2021-06-15 14:24 ` Daniel P. Berrangé
2021-06-15 15:12 ` Paolo Bonzini
2021-06-08 11:22 ` [PATCH 10/26] configure, meson: convert virgl " Paolo Bonzini
2021-06-15 14:25 ` Daniel P. Berrangé
2021-06-08 11:22 ` [PATCH 11/26] configure, meson: convert libdaxctl " Paolo Bonzini
2021-06-15 14:37 ` Daniel P. Berrangé
2021-06-08 11:22 ` [PATCH 12/26] configure, meson: convert libpmem " Paolo Bonzini
2021-06-15 14:37 ` Daniel P. Berrangé
2021-06-08 11:22 ` [PATCH 13/26] configure, meson: convert liburing " Paolo Bonzini
2021-06-15 14:38 ` Daniel P. Berrangé
2021-06-08 11:22 ` [PATCH 14/26] configure, meson: convert libxml2 " Paolo Bonzini
2021-06-15 14:44 ` Daniel P. Berrangé
2021-06-08 11:22 ` [PATCH 15/26] meson: sort header tests Paolo Bonzini
2021-06-08 12:15 ` Philippe Mathieu-Daudé
2021-06-15 14:47 ` Daniel P. Berrangé
2021-06-15 15:16 ` Paolo Bonzini
2021-06-15 15:50 ` Daniel P. Berrangé
2021-06-08 11:22 ` [PATCH 16/26] meson: remove preadv from summary Paolo Bonzini
2021-06-15 14:48 ` Daniel P. Berrangé
2021-06-08 11:22 ` [PATCH 17/26] configure, meson: move CONFIG_IVSHMEM to meson Paolo Bonzini
2021-06-15 14:50 ` Daniel P. Berrangé
2021-06-08 11:22 ` [PATCH 18/26] configure: convert HAVE_BROKEN_SIZE_MAX " Paolo Bonzini
2021-06-15 14:51 ` Daniel P. Berrangé
2021-06-08 11:22 ` [PATCH 19/26] configure: convert compiler tests to meson, part 1 Paolo Bonzini
2021-06-15 14:59 ` Daniel P. Berrangé
2021-06-15 15:15 ` Paolo Bonzini
2021-06-08 11:22 ` [PATCH 20/26] meson: store dependency('threads') in a variable Paolo Bonzini
2021-06-15 15:02 ` Daniel P. Berrangé
2021-06-08 11:22 ` [PATCH 21/26] configure: convert compiler tests to meson, part 2 Paolo Bonzini
2021-06-15 15:03 ` Daniel P. Berrangé
2021-06-08 11:22 ` [PATCH 22/26] configure: convert compiler tests to meson, part 3 Paolo Bonzini
2021-06-15 15:08 ` Daniel P. Berrangé
2021-06-08 11:22 ` [PATCH 23/26] configure: convert CONFIG_STATIC_ASSERT tests to meson Paolo Bonzini
2021-06-08 12:17 ` Philippe Mathieu-Daudé
2021-06-15 15:08 ` Daniel P. Berrangé
2021-06-08 11:22 ` Paolo Bonzini [this message]
2021-06-15 15:13 ` [PATCH 24/26] configure: convert compiler tests to meson, part 4 Daniel P. Berrangé
2021-06-08 11:23 ` [PATCH 25/26] configure: convert compiler tests to meson, part 5 Paolo Bonzini
2021-06-15 15:15 ` Daniel P. Berrangé
2021-06-08 11:23 ` [PATCH 26/26] configure: convert compiler tests to meson, part 6 Paolo Bonzini
2021-06-15 15:17 ` Daniel P. Berrangé
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=20210608112301.402434-25-pbonzini@redhat.com \
--to=pbonzini@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).