From: Alejandro Colomar Date: Sun, 10 Jul 2022 13:48:53 +0000 (+0200) Subject: Makefile, lint-c.mk: lint-c: split into helper Makefile X-Git-Tag: man-pages-6.0-rc1~133 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=f60ff4d88e3612456730f0a67ee16ef1cd53e862;p=thirdparty%2Fman-pages.git Makefile, lint-c.mk: lint-c: split into helper Makefile Also renamed part of the files s/lint.c/lint-c/ Signed-off-by: Alejandro Colomar --- diff --git a/Makefile b/Makefile index af6abd3893..6c014f9f0e 100644 --- a/Makefile +++ b/Makefile @@ -90,26 +90,6 @@ _mandir := $(DESTDIR)$(mandir) _htmldir := $(DESTDIR)$(htmldir_) -DEFAULT_CHECKPATCHFLAGS := -EXTRA_CHECKPATCHFLAGS := -CHECKPATCHFLAGS := $(DEFAULT_CHECKPATCHFLAGS) $(EXTRA_CHECKPATCHFLAGS) - -clang-tidy_config := $(SYSCONFDIR)/clang-tidy/config.yaml -DEFAULT_CLANG-TIDYFLAGS := --config-file=$(clang-tidy_config) -DEFAULT_CLANG-TIDYFLAGS += --quiet -DEFAULT_CLANG-TIDYFLAGS += --use-color -EXTRA_CLANG-TIDYFLAGS := -CLANG-TIDYFLAGS := $(DEFAULT_CLANG-TIDYFLAGS) $(EXTRA_CLANG-TIDYFLAGS) - -DEFAULT_CPPLINTFLAGS := -EXTRA_CPPLINTFLAGS := -CPPLINTFLAGS := $(DEFAULT_CPPLINTFLAGS) $(EXTRA_CPPLINTFLAGS) - -DEFAULT_IWYUFLAGS := -Xiwyu --no_fwd_decls -DEFAULT_IWYUFLAGS += -Xiwyu --error -EXTRA_IWYUFLAGS := -IWYUFLAGS := $(DEFAULT_IWYUFLAGS) $(EXTRA_IWYUFLAGS) - DEFAULT_CPPFLAGS := EXTRA_CPPFLAGS := CPPFLAGS := $(DEFAULT_CPPFLAGS) $(EXTRA_CPPFLAGS) @@ -165,10 +145,6 @@ INSTALL_DIR := $(INSTALL) -m 755 -d MKDIR := mkdir -p RM := rm RMDIR := rmdir --ignore-fail-on-non-empty -CHECKPATCH := checkpatch -CLANG-TIDY := clang-tidy -CPPLINT := cpplint -IWYU := iwyu CC := cc LD := $(CC) $(CFLAGS) GROFF := groff @@ -248,10 +224,6 @@ _UNITS_src_h := $(filter %.h,$(_UNITS_src_src)) _UNITS_src_c := $(filter %.c,$(_UNITS_src_src)) _UNITS_src_o := $(patsubst %.c,%.o,$(_UNITS_src_c)) _UNITS_src_bin := $(patsubst %.c,%,$(_UNITS_src_c)) -_LINT_c_checkpatch := $(patsubst %.c,%.lint.c.checkpatch.touch,$(_UNITS_src_c)) -_LINT_c_clang-tidy := $(patsubst %.c,%.lint.c.clang-tidy.touch,$(_UNITS_src_c)) -_LINT_c_cpplint := $(patsubst %.c,%.lint.c.cpplint.touch,$(_UNITS_src_c)) -_LINT_c_iwyu := $(patsubst %.c,%.lint.c.iwyu.touch,$(_UNITS_src_c)) MANDIRS := $(sort $(shell find $(MANDIR)/man? -type d)) _HTMLDIRS := $(patsubst $(MANDIR)/%,$(_HTMLDIR)/%/.,$(MANDIRS)) @@ -429,46 +401,6 @@ builddirs-src: $(_SRCDIRS) build-src: build-src-ld -######################################################################## -# lint-c - -linters_c := checkpatch clang-tidy cpplint iwyu -lint_c := $(foreach x,$(linters_c),lint-c-$(x)) - -$(_LINT_c_checkpatch): %.lint.c.checkpatch.touch: %.c - $(info LINT (checkpatch) $@) - $(CHECKPATCH) $(CHECKPATCHFLAGS) -f $< - touch $@ - -$(_LINT_c_clang-tidy): %.lint.c.clang-tidy.touch: %.c - $(info LINT (clang-tidy) $@) - $(CLANG-TIDY) $(CLANG-TIDYFLAGS) $< -- $(CPPFLAGS) $(CFLAGS) 2>&1 \ - | sed '/generated\.$$/d' - touch $@ - -$(_LINT_c_cpplint): %.lint.c.cpplint.touch: %.c - $(info LINT (cpplint) $@) - $(CPPLINT) $(CPPLINTFLAGS) $< >/dev/null - touch $@ - -$(_LINT_c_iwyu): %.lint.c.iwyu.touch: %.c - $(info LINT (iwyu) $@) - $(IWYU) $(IWYUFLAGS) $(CPPFLAGS) $(CFLAGS) $< 2>&1 \ - | tac \ - | sed '/correct/{N;d}' \ - | tac - touch $@ - - -.PHONY: $(lint_c) -$(lint_c): lint-c-%: $$(_LINT_c_%) | lintdirs - @: - -.PHONY: lint-c -lint-c: $(lint_c) - @: - - ######################################################################## # lint-man @@ -553,6 +485,8 @@ uninstall-html: $(_htmldir_rmdir) $(_htmldirs_rmdir) $(_htmlpages_rm) ######################################################################## +include $(srcdir)/lib/lint-c.mk + $(V).SILENT: FORCE: diff --git a/lib/lint-c.mk b/lib/lint-c.mk new file mode 100644 index 0000000000..38f22e7a06 --- /dev/null +++ b/lib/lint-c.mk @@ -0,0 +1,80 @@ +######################################################################## +# Copyright (C) 2021, 2022 Alejandro Colomar +# SPDX-License-Identifier: GPL-2.0 OR LGPL-2.0 +######################################################################## + + +ifndef MAKEFILE_LINT_C_INCLUDED +MAKEFILE_LINT_C_INCLUDED := 1 + + +DEFAULT_CHECKPATCHFLAGS := +EXTRA_CHECKPATCHFLAGS := +CHECKPATCHFLAGS := $(DEFAULT_CHECKPATCHFLAGS) $(EXTRA_CHECKPATCHFLAGS) +CHECKPATCH := checkpatch + +clang-tidy_config := $(SYSCONFDIR)/clang-tidy/config.yaml +DEFAULT_CLANG-TIDYFLAGS := --config-file=$(clang-tidy_config) +DEFAULT_CLANG-TIDYFLAGS += --quiet +DEFAULT_CLANG-TIDYFLAGS += --use-color +EXTRA_CLANG-TIDYFLAGS := +CLANG-TIDYFLAGS := $(DEFAULT_CLANG-TIDYFLAGS) $(EXTRA_CLANG-TIDYFLAGS) +CLANG-TIDY := clang-tidy + +DEFAULT_CPPLINTFLAGS := +EXTRA_CPPLINTFLAGS := +CPPLINTFLAGS := $(DEFAULT_CPPLINTFLAGS) $(EXTRA_CPPLINTFLAGS) +CPPLINT := cpplint + +DEFAULT_IWYUFLAGS := -Xiwyu --no_fwd_decls +DEFAULT_IWYUFLAGS += -Xiwyu --error +EXTRA_IWYUFLAGS := +IWYUFLAGS := $(DEFAULT_IWYUFLAGS) $(EXTRA_IWYUFLAGS) +IWYU := iwyu + + +_LINT_c_checkpatch := $(patsubst %.c,%.lint-c.checkpatch.touch,$(_UNITS_src_c)) +_LINT_c_clang-tidy := $(patsubst %.c,%.lint-c.clang-tidy.touch,$(_UNITS_src_c)) +_LINT_c_cpplint := $(patsubst %.c,%.lint-c.cpplint.touch,$(_UNITS_src_c)) +_LINT_c_iwyu := $(patsubst %.c,%.lint-c.iwyu.touch,$(_UNITS_src_c)) + + +linters_c := checkpatch clang-tidy cpplint iwyu +lint_c := $(foreach x,$(linters_c),lint-c-$(x)) + + +$(_LINT_c_checkpatch): %.lint-c.checkpatch.touch: %.c + $(info LINT (checkpatch) $@) + $(CHECKPATCH) $(CHECKPATCHFLAGS) -f $< + touch $@ + +$(_LINT_c_clang-tidy): %.lint-c.clang-tidy.touch: %.c + $(info LINT (clang-tidy) $@) + $(CLANG-TIDY) $(CLANG-TIDYFLAGS) $< -- $(CPPFLAGS) $(CFLAGS) 2>&1 \ + | sed '/generated\.$$/d' + touch $@ + +$(_LINT_c_cpplint): %.lint-c.cpplint.touch: %.c + $(info LINT (cpplint) $@) + $(CPPLINT) $(CPPLINTFLAGS) $< >/dev/null + touch $@ + +$(_LINT_c_iwyu): %.lint-c.iwyu.touch: %.c + $(info LINT (iwyu) $@) + $(IWYU) $(IWYUFLAGS) $(CPPFLAGS) $(CFLAGS) $< 2>&1 \ + | tac \ + | sed '/correct/{N;d}' \ + | tac + touch $@ + + +.PHONY: $(lint_c) +$(lint_c): lint-c-%: $$(_LINT_c_%) | lintdirs + @: + +.PHONY: lint-c +lint-c: $(lint_c) + @: + + +endif # MAKEFILE_LINT_C_INCLUDED