summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKarel Zak2018-07-18 10:23:51 +0200
committerKarel Zak2018-07-18 10:23:51 +0200
commit4f9d999a97d96f3f2a561d56160743c04e551906 (patch)
treef1ee2462039b2bae737f825e9c16f3c81984933a
parentlibfdisk: fix compiler warning [-Wmaybe-uninitialized] (diff)
downloadkernel-qcow2-util-linux-4f9d999a97d96f3f2a561d56160743c04e551906.tar.gz
kernel-qcow2-util-linux-4f9d999a97d96f3f2a561d56160743c04e551906.tar.xz
kernel-qcow2-util-linux-4f9d999a97d96f3f2a561d56160743c04e551906.zip
build-sys: add -Wno-cast-function-type for python
libmount/python/pylibmount.c:158:19: warning: cast between incompatible function types from ‘PyObject * (*)(PyObject *)’ {aka ‘struct _object * (*)(struct _object *)’} to ‘PyObject * (*)(PyObject *, PyObject *)’ {aka ‘struct _object * (*)(struct _object *, struct _object *)’} [-Wcast-function-type] This is generic problem in all Python C code and gcc v8. The another possible (and probably more correct) way is to add unused argument to all API functions. Unfortunately, this solution is pretty invasive. The question is if gcc is not too paranoid in this case. For more details see https://bugs.python.org/issue33012. It seems Python guys also prefer CFLAGS modification for now. Signed-off-by: Karel Zak <kzak@redhat.com>
-rw-r--r--configure.ac4
-rw-r--r--libmount/python/Makemodule.am2
2 files changed, 5 insertions, 1 deletions
diff --git a/configure.ac b/configure.ac
index b3430dac4..edef1455c 100644
--- a/configure.ac
+++ b/configure.ac
@@ -139,6 +139,10 @@ AC_SUBST([WARN_CFLAGS])
UL_WARN_ADD([-Wno-clobbered], [BSD_WARN_CFLAGS])
AC_SUBST([BSD_WARN_CFLAGS])
+
+UL_WARN_ADD([-Wno-cast-function-type], [PYTHON_WARN_CFLAGS])
+AC_SUBST([PYTHON_WARN_CFLAGS])
+
UL_WARN_ADD([-Wno-unused-parameter], [NO_UNUSED_WARN_CFLAGS])
AC_SUBST([NO_UNUSED_WARN_CFLAGS])
diff --git a/libmount/python/Makemodule.am b/libmount/python/Makemodule.am
index fb93b6e98..b338ea032 100644
--- a/libmount/python/Makemodule.am
+++ b/libmount/python/Makemodule.am
@@ -21,7 +21,7 @@ pylibmount_la_LIBADD = libmount.la $(PYTHON_LIBS)
pylibmount_la_CFLAGS = \
$(AM_CFLAGS) \
- $(PYTHON_CFLAGS) \
+ $(PYTHON_CFLAGS) $(PYTHON_WARN_CFLAGS) \
-I$(ul_libmount_incdir) \
-fno-strict-aliasing #-ggdb3 -O0