Fix #5631
authorng0 <ng0@n0.is>
Wed, 6 Mar 2019 17:00:50 +0000 (17:00 +0000)
committerng0 <ng0@n0.is>
Wed, 6 Mar 2019 17:00:50 +0000 (17:00 +0000)
Makefile.am
lint/Makefile.am [new file with mode: 0644]

index 485ee16fd3f6850308611965de6df177e2c40fe5..abc6f9e4251ecb0c26f4f7e1c4d41d999333ba5f 100644 (file)
@@ -4,7 +4,7 @@ AM_CPPFLAGS = -I$(top_srcdir)/src/include
 if DOCUMENTATION_ONLY
   SUBDIRS = doc
 else
-  SUBDIRS = m4 src po pkgconfig
+  SUBDIRS = m4 src po pkgconfig lint
 if DOCUMENTATION
   SUBDIRS += doc
 endif
@@ -27,43 +27,3 @@ docdir = $(datadir)/doc/gnunet/
 doc_DATA = COPYING README
 
 ACLOCAL_AMFLAGS = -I m4
-
-# Check for bashisms in shell scripts
-# Very verbose, need to exclude more files.
-check-bashism:
-       printf "Run checkbashism on all .sh files.\n"
-       printf "Currently this expects checkbashism.pl at a fixed location."
-       find . -type f ! -path '*/.*' ! -path '*/_*' -name '*.sh' -print0 | xargs -0 ~/src/scripts/src/checkbashisms.pl -f 2>&1 | tee $(top_srcdir)/bashism.log || true
-
-check-python:
-       printf "Running flake8 and 2to3 if detected.\n"
-       $(top_srcdir)/contrib/scripts/lint-python.sh || true
-
-check-man:
-       printf "Running lint-man.sh in doc/man.\n"
-       @cd $(top_srcdir)/doc/man ; $(top_srcdir)/../../contrib/scripts/lint-man.sh || true
-
-check-texinfo:
-       printf "Running basic texinfo linters\n"
-       # exception to add: ignore license files.
-       # exception to add: uref's can go above 79 chars.
-       printf "...line length over 79 chars?\n" 2>&1 | tee $(top_srcdir)/doc/handbook/texinfo_handbook.log || true
-       @cd $(top_srcdir)/doc/handbook ; find . -type f ! -path '*/.*' -name '*.texi' -print0 | xargs -0 awk 'length>79 {print FILENAME":"NR":"$$0}' > $(top_srcdir)/texinfo_handbook.log || true
-       printf "...line length over 79 chars?\n" 2>&1 | tee $(top_srcdir)/doc/tutorial/texinfo_tutorial.log || true
-       @cd $(top_srcdir)/doc/tutorial ; find . -type f ! -path '*/.*' -name '*.texi' -print0 | xargs -0 awk 'length>79 {print FILENAME":"NR":"$$0}' > $(top_srcdir)/texinfo_tutorial.log || true
-       printf "...lines containing macros incompatible with old makeinfo?\n" 2>&1 | tee -a $(top_srcdir)/doc/handbook/texinfo_handbook.log || true
-       @cd $(top_srcdir)/doc/handbook ; find . -type f ! -path '*/.*' -name '*.texi' -print0 | xargs -0 awk '/@geq\{\}/ {print FILENAME":"NR":"$$0}' >> $(top_srcdir)/texinfo_handbook.log || true
-       printf "...lines containing macros incompatible with old makeinfo?\n" 2>&1 | tee -a $(top_srcdir)/doc/tutorial/texinfo_tutorial.log || true
-       @cd $(top_srcdir)/doc/tutorial ; find . -type f ! -path '*/.*' -name '*.texi' -print0 | xargs -0 awk '/@geq\{\}/ {print FILENAME":"NR":"$$0}' >> $(top_srcdir)/texinfo_tutorial.log || true
-       printf "...lines containing macros incompatible with texi2mdoc?\n" 2>&1 | tee -a $(top_srcdir)/doc/handbook/texinfo_handbook.log || true
-       @cd $(top_srcdir)/doc/handbook ; find . -type f ! -path '*/.*' -name '*.texi' -print0 | xargs -0 awk '/@footnote\{/ {print FILENAME":"NR":"$$0}' >> $(top_srcdir)/texinfo_handbook.log || true
-       printf "...lines containing macros incompatible with texi2mdoc?\n" 2>&1 | tee -a $(top_srcdir)/doc/tutorial/texinfo_tutorial.log || true
-       @cd $(top_srcdir)/doc/tutorial ; find . -type f ! -path '*/.*' -name '*.texi' -print0 | xargs -0 awk '/@footnote\{/ {print FILENAME":"NR":"$$0}' >> $(top_srcdir)/texinfo_tutorial.log || true
-       printf "...lines telling us what is left TODO or to fix?\n" 2>&1 | tee -a $(top_srcdir)/doc/handbook/texinfo_handbook.log || true
-       @cd $(top_srcdir)/doc/handbook ; find . -type f ! -path '*/.*' -name '*.texi' -print0 | xargs -0 awk '/TODO/ {print FILENAME":"NR":"$$0}' >> $(top_srcdir)/texinfo_handbook.log || true
-       @cd $(top_srcdir)/doc/handbook ; find . -type f ! -path '*/.*' -name '*.texi' -print0 | xargs -0 awk '/XXX/ {print FILENAME":"NR":"$$0}' >> $(top_srcdir)/texinfo_handbook.log || true
-       printf "...lines telling us what is left TODO or to fix?\n" 2>&1 | tee -a $(top_srcdir)/doc/tutorial/texinfo_tutorial.log || true
-       @cd $(top_srcdir)/doc/tutorial ; find . -type f ! -path '*/.*' -name '*.texi' -print0 | xargs -0 awk '/TODO/ {print FILENAME":"NR":"$$0}' >> $(top_srcdir)/texinfo_tutorial.log || true
-       @cd $(top_srcdir)/doc/tutorial ; find . -type f ! -path '*/.*' -name '*.texi' -print0 | xargs -0 awk '/XXX/ {print FILENAME":"NR":"$$0}' >> $(top_srcdir)/texinfo_tutorial.log || true
-
-check-linters: check-bashism check-python check-man check-texinfo
diff --git a/lint/Makefile.am b/lint/Makefile.am
new file mode 100644 (file)
index 0000000..0938842
--- /dev/null
@@ -0,0 +1,41 @@
+all: check-linters
+
+# Check for bashisms in shell scripts
+# Very verbose, need to exclude more files.
+check-bashism:
+       printf "Run checkbashism on all .sh files.\n"
+       printf "Currently this expects checkbashism.pl at a fixed location."
+       find . -type f ! -path '*/.*' ! -path '*/_*' -name '*.sh' -print0 | xargs -0 ~/src/scripts/src/checkbashisms.pl -f 2>&1 | tee $(top_srcdir)/bashism.log || true
+
+check-python:
+       printf "Running flake8 and 2to3 if detected.\n"
+       $(top_srcdir)/contrib/scripts/lint-python.sh || true
+
+check-man:
+       printf "Running lint-man.sh in doc/man.\n"
+       @cd $(top_srcdir)/doc/man ; $(top_srcdir)/../../contrib/scripts/lint-man.sh || true
+
+# exception to add: ignore license files.
+# exception to add: uref's can go above 79 chars.
+check-texinfo:
+       printf "Running basic texinfo linters\n"
+       printf "...line length over 79 chars?\n" 2>&1 | tee $(top_srcdir)/doc/handbook/texinfo_handbook.log || true
+       @cd $(top_srcdir)/doc/handbook ; find . -type f ! -path '*/.*' -name '*.texi' -print0 | xargs -0 awk 'length>79 {print FILENAME":"NR":"$$0}' > $(top_srcdir)/texinfo_handbook.log || true
+       printf "...line length over 79 chars?\n" 2>&1 | tee $(top_srcdir)/doc/tutorial/texinfo_tutorial.log || true
+       @cd $(top_srcdir)/doc/tutorial ; find . -type f ! -path '*/.*' -name '*.texi' -print0 | xargs -0 awk 'length>79 {print FILENAME":"NR":"$$0}' > $(top_srcdir)/texinfo_tutorial.log || true
+       printf "...lines containing macros incompatible with old makeinfo?\n" 2>&1 | tee -a $(top_srcdir)/doc/handbook/texinfo_handbook.log || true
+       @cd $(top_srcdir)/doc/handbook ; find . -type f ! -path '*/.*' -name '*.texi' -print0 | xargs -0 awk '/@geq\{\}/ {print FILENAME":"NR":"$$0}' >> $(top_srcdir)/texinfo_handbook.log || true
+       printf "...lines containing macros incompatible with old makeinfo?\n" 2>&1 | tee -a $(top_srcdir)/doc/tutorial/texinfo_tutorial.log || true
+       @cd $(top_srcdir)/doc/tutorial ; find . -type f ! -path '*/.*' -name '*.texi' -print0 | xargs -0 awk '/@geq\{\}/ {print FILENAME":"NR":"$$0}' >> $(top_srcdir)/texinfo_tutorial.log || true
+       printf "...lines containing macros incompatible with texi2mdoc?\n" 2>&1 | tee -a $(top_srcdir)/doc/handbook/texinfo_handbook.log || true
+       @cd $(top_srcdir)/doc/handbook ; find . -type f ! -path '*/.*' -name '*.texi' -print0 | xargs -0 awk '/@footnote\{/ {print FILENAME":"NR":"$$0}' >> $(top_srcdir)/texinfo_handbook.log || true
+       printf "...lines containing macros incompatible with texi2mdoc?\n" 2>&1 | tee -a $(top_srcdir)/doc/tutorial/texinfo_tutorial.log || true
+       @cd $(top_srcdir)/doc/tutorial ; find . -type f ! -path '*/.*' -name '*.texi' -print0 | xargs -0 awk '/@footnote\{/ {print FILENAME":"NR":"$$0}' >> $(top_srcdir)/texinfo_tutorial.log || true
+       printf "...lines telling us what is left TODO or to fix?\n" 2>&1 | tee -a $(top_srcdir)/doc/handbook/texinfo_handbook.log || true
+       @cd $(top_srcdir)/doc/handbook ; find . -type f ! -path '*/.*' -name '*.texi' -print0 | xargs -0 awk '/TODO/ {print FILENAME":"NR":"$$0}' >> $(top_srcdir)/texinfo_handbook.log || true
+       @cd $(top_srcdir)/doc/handbook ; find . -type f ! -path '*/.*' -name '*.texi' -print0 | xargs -0 awk '/XXX/ {print FILENAME":"NR":"$$0}' >> $(top_srcdir)/texinfo_handbook.log || true
+       printf "...lines telling us what is left TODO or to fix?\n" 2>&1 | tee -a $(top_srcdir)/doc/tutorial/texinfo_tutorial.log || true
+       @cd $(top_srcdir)/doc/tutorial ; find . -type f ! -path '*/.*' -name '*.texi' -print0 | xargs -0 awk '/TODO/ {print FILENAME":"NR":"$$0}' >> $(top_srcdir)/texinfo_tutorial.log || true
+       @cd $(top_srcdir)/doc/tutorial ; find . -type f ! -path '*/.*' -name '*.texi' -print0 | xargs -0 awk '/XXX/ {print FILENAME":"NR":"$$0}' >> $(top_srcdir)/texinfo_tutorial.log || true
+
+check-linters: check-bashism check-python check-man check-texinfo