From f788aaeb0e13891dafe5cf92936a439a711a30ea Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=BD=D0=B0=D0=B1?= Date: Thu, 23 Dec 2021 21:26:19 +0100 Subject: [PATCH] config: check for parallel(1), use it for cstyle MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Before: $ time make cstyle real 0m23.118s user 0m23.002s sys 0m0.114s After: $ time make cstyle real 0m4.577s user 0m31.487s sys 0m0.699s Reviewed-by: Brian Behlendorf Signed-off-by: Ahelenia ZiemiaƄska Issue #12899 --- Makefile.am | 7 ++++++- config/always-parallel.m4 | 8 ++++++++ config/zfs-build.m4 | 1 + 3 files changed, 15 insertions(+), 1 deletion(-) create mode 100644 config/always-parallel.m4 diff --git a/Makefile.am b/Makefile.am index 34fe16ce4..d4b75264d 100644 --- a/Makefile.am +++ b/Makefile.am @@ -114,6 +114,11 @@ commitcheck: ${top_srcdir}/scripts/commitcheck.sh; \ fi +if HAVE_PARALLEL +cstyle_line = -print0 | parallel -X0 ${top_srcdir}/scripts/cstyle.pl -cpP {} +else +cstyle_line = -exec ${top_srcdir}/scripts/cstyle.pl -cpP {} + +endif PHONY += cstyle cstyle: @find ${top_srcdir} -name build -prune \ @@ -121,7 +126,7 @@ cstyle: ! -name 'zfs_config.*' ! -name '*.mod.c' \ ! -name 'opt_global.h' ! -name '*_if*.h' \ ! -path './module/zstd/lib/*' \ - -exec ${top_srcdir}/scripts/cstyle.pl -cpP {} \+ + $(cstyle_line) filter_executable = -exec test -x '{}' \; -print diff --git a/config/always-parallel.m4 b/config/always-parallel.m4 new file mode 100644 index 000000000..c1f1ae78e --- /dev/null +++ b/config/always-parallel.m4 @@ -0,0 +1,8 @@ +dnl # +dnl # Check if GNU parallel is available. +dnl # +AC_DEFUN([ZFS_AC_CONFIG_ALWAYS_PARALLEL], [ + AC_CHECK_PROG([PARALLEL], [parallel], [yes]) + + AM_CONDITIONAL([HAVE_PARALLEL], [test "x$PARALLEL" = "xyes"]) +]) diff --git a/config/zfs-build.m4 b/config/zfs-build.m4 index ec4a2026b..b1604eb9d 100644 --- a/config/zfs-build.m4 +++ b/config/zfs-build.m4 @@ -226,6 +226,7 @@ AC_DEFUN([ZFS_AC_CONFIG_ALWAYS], [ ZFS_AC_CONFIG_ALWAYS_SED ZFS_AC_CONFIG_ALWAYS_CPPCHECK ZFS_AC_CONFIG_ALWAYS_SHELLCHECK + ZFS_AC_CONFIG_ALWAYS_PARALLEL ]) AC_DEFUN([ZFS_AC_CONFIG], [