Message ID | 4626f514d87bf8dc5ed5b16672f1799acea69f6e.1671628158.git.marcel@holtmann.org |
---|---|
State | New |
Headers | show |
Series | Compiler warning fixes for libvhost-user,libvduse | expand |
diff --git a/subprojects/libvduse/libvduse.c b/subprojects/libvduse/libvduse.c index e089d4d546cf..c871bd331a6b 100644 --- a/subprojects/libvduse/libvduse.c +++ b/subprojects/libvduse/libvduse.c @@ -16,6 +16,10 @@ * later. See the COPYING file in the top-level directory. */ +#ifndef _GNU_SOURCE +#define _GNU_SOURCE +#endif + #include <stdlib.h> #include <stdio.h> #include <stdbool.h>
When the libvduse sources are used by another project, it can not be guaranteed that _GNU_SOURCE is set by the build system. If it is for example not set, errors like this show up. CC libvduse.o libvduse.c: In function ‘vduse_log_get’: libvduse.c:172:9: error: implicit declaration of function ‘ftruncate’; did you mean ‘strncat’? [-Werror=implicit-function-declaration] 172 | if (ftruncate(fd, size) == -1) { | ^~~~~~~~~ | strncat The simplest way to allow external complication of libvduse.[ch] by setting _GNU_SOURCE if it is not already set by the build system. Signed-off-by: Marcel Holtmann <marcel@holtmann.org> --- subprojects/libvduse/libvduse.c | 4 ++++ 1 file changed, 4 insertions(+)