[PATCH] Unbreak the continuous integration build

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



The Travis environment in which the continous integration build is run
does not have the <linux/blkzoned.h> header file. Make sure that the
zbdioctl.c source file builds fine without that header file.

Cc: Shin'ichiro Kawasaki <shinichiro.kawasaki@xxxxxxx>
Cc: Chaitanya Kulkarni <Chaitanya.Kulkarni@xxxxxxx>
Fixes: d42cc3f85e0d ("src: Introduce zbdioctl program")
Signed-off-by: Bart Van Assche <bvanassche@xxxxxxx>
---
 src/Makefile   | 10 ++++++++--
 src/zbdioctl.c |  2 ++
 2 files changed, 10 insertions(+), 2 deletions(-)

diff --git a/src/Makefile b/src/Makefile
index 5a0556f2a37f..cb35497a6089 100644
--- a/src/Makefile
+++ b/src/Makefile
@@ -1,3 +1,7 @@
+HAVE_C_HEADER = $(shell if echo "\#include <$(1)>" |			\
+		  $(CC) -x c -c - 2>/dev/null; then echo "$(2)";	\
+		  else echo "$(3)"; fi)
+
 C_TARGETS := \
 	loblksize \
 	loop_get_status_null \
@@ -13,9 +17,11 @@ CXX_TARGETS := \
 
 TARGETS := $(C_TARGETS) $(CXX_TARGETS)
 
-override CFLAGS   := -O2 -Wall -Wshadow $(CFLAGS)
+CONFIG_DEFS := $(call HAVE_C_HEADER,linux/blkzoned.h,-DHAVE_LINUX_BLKZONED_H)
+
+override CFLAGS   := -O2 -Wall -Wshadow $(CFLAGS) $(CONFIG_DEFS)
 override CXXFLAGS := -O2 -std=c++11 -Wall -Wextra -Wshadow -Wno-sign-compare \
-		     -Werror $(CXXFLAGS)
+		     -Werror $(CXXFLAGS) $(CONFIG_DEFS)
 
 all: $(TARGETS)
 
diff --git a/src/zbdioctl.c b/src/zbdioctl.c
index 93a0f88431b5..9432a8a95b1d 100644
--- a/src/zbdioctl.c
+++ b/src/zbdioctl.c
@@ -6,7 +6,9 @@
 #include <fcntl.h>
 #include <unistd.h>
 #include <sys/ioctl.h>
+#ifdef HAVE_LINUX_BLKZONED_H
 #include <linux/blkzoned.h>
+#endif
 #include <linux/types.h>
 
 #ifndef BLKGETZONESZ
-- 
2.20.1.791.gb4d0f1c61a-goog




[Index of Archives]     [Linux RAID]     [Linux SCSI]     [Linux ATA RAID]     [IDE]     [Linux Wireless]     [Linux Kernel]     [ATH6KL]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Device Mapper]

  Powered by Linux