From 86fb8d809e36b5312171cfde8ce085a07202b9c1 Mon Sep 17 00:00:00 2001 From: Tomohiro Kusumi Date: Sat, 24 Jun 2017 01:07:55 +0300 Subject: [PATCH] Makefile: use fmt(1) rather than tr(1) on NetBSD/etc e291cff1 (Use fmt -w WIDTH option instead of -WIDTH) changed the command option to a common one to suppress an error, but it only fixed the unknown option error without being functional on NetBSD. This change is taken from NetBSD's pkgsrc. It may work against other platforms that don't work with fmt(1), but only enabled for NetBSD at the moment. FreeBSD/DragonFlyBSD/OpenBSD work with fmt(1). (This actually works on Linux too, but the existing one should be kept for Linux (and other platforms) provided it has been used on various distros for years) https://github.com/NetBSD/pkgsrc/blob/trunk/benchmarks/fio/patches/patch-Makefile > Convert the fmt(1) command to a tr(1) one (the fmt(1) old syntax > command is not supported on all Unix systems). Signed-off-by: Tomohiro Kusumi Signed-off-by: Jens Axboe --- Makefile | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/Makefile b/Makefile index 64fa97a7..bef930f8 100644 --- a/Makefile +++ b/Makefile @@ -327,8 +327,13 @@ override CFLAGS += -DFIO_VERSION='"$(FIO_VERSION)"' @$(CC) -MM $(CFLAGS) $(CPPFLAGS) $(SRCDIR)/$*.c > $*.d @mv -f $*.d $*.d.tmp @sed -e 's|.*:|$*.o:|' < $*.d.tmp > $*.d +ifeq ($(CONFIG_TARGET_OS), NetBSD) + @sed -e 's/.*://' -e 's/\\$$//' < $*.d.tmp | tr -cs "[:graph:]" "\n" | \ + sed -e 's/^ *//' -e '/^$$/ d' -e 's/$$/:/' >> $*.d +else @sed -e 's/.*://' -e 's/\\$$//' < $*.d.tmp | fmt -w 1 | \ sed -e 's/^ *//' -e 's/$$/:/' >> $*.d +endif @rm -f $*.d.tmp ifdef CONFIG_ARITHMETIC @@ -366,8 +371,13 @@ init.o: init.c FIO-VERSION-FILE @$(CC) -MM $(CFLAGS) $(CPPFLAGS) $(SRCDIR)/$*.c > $*.d @mv -f $*.d $*.d.tmp @sed -e 's|.*:|$*.o:|' < $*.d.tmp > $*.d +ifeq ($(CONFIG_TARGET_OS), NetBSD) + @sed -e 's/.*://' -e 's/\\$$//' < $*.d.tmp | tr -cs "[:graph:]" "\n" | \ + sed -e 's/^ *//' -e '/^$$/ d' -e 's/$$/:/' >> $*.d +else @sed -e 's/.*://' -e 's/\\$$//' < $*.d.tmp | fmt -w 1 | \ sed -e 's/^ *//' -e 's/$$/:/' >> $*.d +endif @rm -f $*.d.tmp gcompat.o: gcompat.c gcompat.h -- 2.25.1