From: Tomohiro Kusumi Date: Fri, 23 Jun 2017 22:07:55 +0000 (+0300) Subject: Makefile: use fmt(1) rather than tr(1) on NetBSD/etc X-Git-Tag: fio-2.99~64 X-Git-Url: https://git.kernel.dk/?a=commitdiff_plain;h=86fb8d809e36b5312171cfde8ce085a07202b9c1;p=fio.git 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 --- 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