[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH v3 10/12] configure: Detect kcov support and introduce CONFIG_KCO
From: |
Aleksandar Markovic |
Subject: |
[PATCH v3 10/12] configure: Detect kcov support and introduce CONFIG_KCOV |
Date: |
Fri, 3 Jan 2020 23:18:00 +0100 |
From: Aleksandar Markovic <address@hidden>
kcov is kernel code coverage tracing tool. It requires kernel 4.4+
compiled with certain kernel options. Its interface consists of
three ioctls.
This patch checks if kcov support is present on build machine, and
stores the result in variable CONFIG_KCOV, meant to be used in
linux-user code related to the support for above mentioned ioctls.
Signed-off-by: Aleksandar Markovic <address@hidden>
---
configure | 21 +++++++++++++++++++++
1 file changed, 21 insertions(+)
diff --git a/configure b/configure
index 940bf9e..bf162d4 100755
--- a/configure
+++ b/configure
@@ -4752,6 +4752,24 @@ if compile_prog "" "" ; then
syncfs=yes
fi
+# check for kcov support (kernel must be 4.4+, compiled with certain options)
+kcov=no
+cat > $TMPC << EOF
+#include <sys/kcov.h>
+
+int main(void)
+{
+ ioctl(-1, KIOENABLE, NULL);
+ ioctl(-1, KIODISABLE, NULL);
+ ioctl(-1, KIOSETBUFSIZE, NULL);
+
+ return 0;
+}
+EOF
+if compile_prog "" "" ; then
+ kcov=yes
+fi
+
# Check we have a new enough version of sphinx-build
has_sphinx_build() {
# This is a bit awkward but works: create a trivial document and
@@ -6874,6 +6892,9 @@ fi
if test "$syncfs" = "yes" ; then
echo "CONFIG_SYNCFS=y" >> $config_host_mak
fi
+if test "$kcov" = "yes" ; then
+ echo "CONFIG_KCOV=y" >> $config_host_mak
+fi
if test "$inotify" = "yes" ; then
echo "CONFIG_INOTIFY=y" >> $config_host_mak
fi
--
2.7.4
- [PATCH v3 00/12] linux-user: Misc patches for 5.0, Aleksandar Markovic, 2020/01/03
- [PATCH v3 04/12] linux-user: Add support for FS_IOC32_<GET|SET>FLAGS ioctls, Aleksandar Markovic, 2020/01/03
- [PATCH v3 03/12] linux-user: Add support for FS_IOC_<GET|SET>VERSION ioctls, Aleksandar Markovic, 2020/01/03
- [PATCH v3 10/12] configure: Detect kcov support and introduce CONFIG_KCOV,
Aleksandar Markovic <=
- [PATCH v3 11/12] linux-user: Add support for KCOV_<ENABLE|DISABLE> ioctls, Aleksandar Markovic, 2020/01/03
- [PATCH v3 06/12] linux-user: Add support for FS_IOC_FS<GET|SET>XATTR ioctls, Aleksandar Markovic, 2020/01/03
- [PATCH v3 07/12] linux-user: Add support for FD<SETEMSGTRESH|SETMAXERRS|GETMAXERRS> ioctls, Aleksandar Markovic, 2020/01/03
- [PATCH v3 02/12] linux-user: mips: Update syscall numbers to kernel 5.5 rc3 level, Aleksandar Markovic, 2020/01/03
- [PATCH v3 08/12] linux-user: Add support for FDFMT<BEG|TRK|END> ioctls, Aleksandar Markovic, 2020/01/03
- [PATCH v3 12/12] linux-user: Add support for KCOV_INIT_TRACE ioctl, Aleksandar Markovic, 2020/01/03
- [PATCH v3 09/12] linux-user: Add support for FDGETFDCSTAT ioctl, Aleksandar Markovic, 2020/01/03
- [PATCH v3 05/12] linux-user: Add support for FS_IOC32_<GET|SET>VERSION ioctls, Aleksandar Markovic, 2020/01/03
- [PATCH v3 01/12] linux-user: Fix some constants in termbits.h, Aleksandar Markovic, 2020/01/03