[v3,4/4] devtools: remove check-includes script

Message ID 20210125141115.573122-5-bruce.richardson@intel.com (mailing list archive)
State Superseded, archived
Delegated to: Thomas Monjalon
Headers
Series add checking of header includes |

Checks

Context Check Description
ci/checkpatch success coding style OK
ci/iol-broadcom-Performance success Performance Testing PASS
ci/Intel-compilation success Compilation OK
ci/iol-broadcom-Functional success Functional Testing PASS
ci/iol-intel-Functional success Functional Testing PASS
ci/intel-Testing success Testing PASS
ci/iol-intel-Performance success Performance Testing PASS
ci/iol-mellanox-Functional success Functional Testing PASS
ci/iol-testing warning Testing issues

Commit Message

Bruce Richardson Jan. 25, 2021, 2:11 p.m. UTC
  The check-includes script allowed checking header files in a given
directory to ensure that each header compiled alone without requiring
any other header inclusions.

With header checking now being done by the chkincs app in the build
system this script can be removed.

Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
---
 MAINTAINERS                |   1 -
 devtools/check-includes.sh | 259 -------------------------------------
 2 files changed, 260 deletions(-)
 delete mode 100755 devtools/check-includes.sh
  

Patch

diff --git a/MAINTAINERS b/MAINTAINERS
index 6df494e367..30721f8561 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -81,7 +81,6 @@  F: devtools/check-dup-includes.sh
 F: devtools/check-maintainers.sh
 F: devtools/check-forbidden-tokens.awk
 F: devtools/check-git-log.sh
-F: devtools/check-includes.sh
 F: devtools/check-spdx-tag.sh
 F: devtools/check-symbol-maps.sh
 F: devtools/checkpatches.sh
diff --git a/devtools/check-includes.sh b/devtools/check-includes.sh
deleted file mode 100755
index 940cf0eb2a..0000000000
--- a/devtools/check-includes.sh
+++ /dev/null
@@ -1,259 +0,0 @@ 
-#!/bin/sh -e
-# SPDX-License-Identifier: BSD-3-Clause
-# Copyright 2016 6WIND S.A.
-
-# This script checks that header files in a given directory do not miss
-# dependencies when included on their own, do not conflict and accept being
-# compiled with the strictest possible flags.
-#
-# Files are looked up in the directory provided as the first argument,
-# otherwise build/include by default.
-#
-# Recognized environment variables:
-#
-# VERBOSE=1 is the same as -v.
-#
-# QUIET=1 is the same as -q.
-#
-# SUMMARY=1 is the same as -s.
-#
-# CC, CPPFLAGS, CFLAGS, CXX, CXXFLAGS are taken into account.
-#
-# PEDANTIC_CFLAGS, PEDANTIC_CXXFLAGS and PEDANTIC_CPPFLAGS provide strict
-# C/C++ compilation flags.
-#
-# IGNORE contains a list of globbing patterns matching files (relative to the
-# include directory) to avoid. It is set by default to known DPDK headers
-# which must not be included on their own.
-#
-# IGNORE_CXX provides additional files for C++.
-
-while getopts hqvs arg; do
-	case $arg in
-	h)
-		cat <<EOF
-usage: $0 [-h] [-q] [-v] [-s] [DIR]
-
-This script checks that header files in a given directory do not miss
-dependencies when included on their own, do not conflict and accept being
-compiled with the strictest possible flags.
-
-  -h    display this help and exit
-  -q    quiet mode, disable normal output
-  -v    show command lines being executed
-  -s    show summary
-
-With no DIR, default to build/include.
-
-Any failed header check yields a nonzero exit status.
-EOF
-		exit
-		;;
-	q)
-		QUIET=1
-		;;
-	v)
-		VERBOSE=1
-		;;
-	s)
-		SUMMARY=1
-		;;
-	*)
-		exit 1
-		;;
-	esac
-done
-
-shift $(($OPTIND - 1))
-
-include_dir=${1:-build/include}
-
-: ${PEDANTIC_CFLAGS=-std=c99 -pedantic -Wall -Wextra -Werror}
-: ${PEDANTIC_CXXFLAGS=}
-: ${PEDANTIC_CPPFLAGS=-D_XOPEN_SOURCE=600}
-: ${CC:=cc}
-: ${CXX:=c++}
-: ${IGNORE= \
-	'rte_atomic_32.h' \
-	'rte_atomic_64.h' \
-	'rte_byteorder_32.h' \
-	'rte_byteorder_64.h' \
-	'generic/*' \
-	'rte_vhost.h' \
-	'rte_eth_vhost.h' \
-	'rte_eal_interrupts.h' \
-}
-: ${IGNORE_CXX= \
-	'rte_vhost.h' \
-	'rte_eth_vhost.h' \
-}
-
-temp_cc=$(mktemp -t dpdk.${0##*/}.XXX.c)
-pass_cc=
-failures_cc=0
-
-temp_cxx=$(mktemp -t dpdk.${0##*/}.XXX.cc)
-pass_cxx=
-failures_cxx=0
-
-# Process output parameters.
-
-[ "$QUIET" = 1 ] &&
-exec 1> /dev/null
-
-[ "$VERBOSE" = 1 ] &&
-output ()
-{
-	local CCV
-	local CXXV
-
-	shift
-	CCV=$CC
-	CXXV=$CXX
-	CC="echo $CC" CXX="echo $CXX" "$@"
-	CC=$CCV
-	CXX=$CXXV
-
-	"$@"
-} ||
-output ()
-{
-
-	printf '  %s\n' "$1"
-	shift
-	"$@"
-}
-
-trap 'rm -f "$temp_cc" "$temp_cxx"' EXIT
-
-compile_cc ()
-{
-	${CC} -I"$include_dir" \
-		${PEDANTIC_CPPFLAGS} ${CPPFLAGS} \
-		${PEDANTIC_CFLAGS} ${CFLAGS} \
-		-c -o /dev/null "${temp_cc}"
-}
-
-compile_cxx ()
-{
-	${CXX} -I"$include_dir" \
-		${PEDANTIC_CPPFLAGS} ${CPPFLAGS} \
-		${PEDANTIC_CXXFLAGS} ${CXXFLAGS} \
-		-c -o /dev/null "${temp_cxx}"
-}
-
-ignore ()
-{
-	file="$1"
-	shift
-	while [ $# -ne 0 ]; do
-		case "$file" in
-		$1)
-			return 0
-			;;
-		esac
-		shift
-	done
-	return 1
-}
-
-# Check C/C++ compilation for each header file.
-
-while read -r path
-do
-	file=${path#$include_dir}
-	file=${file##/}
-	if ignore "$file" $IGNORE; then
-		output "SKIP $file" :
-		continue
-	fi
-	if printf "\
-#include <%s>
-
-int main(void)
-{
-	return 0;
-}
-" "$file" > "$temp_cc" &&
-		output "CC $file" compile_cc
-	then
-		pass_cc="$pass_cc $file"
-	else
-		failures_cc=$(($failures_cc + 1))
-	fi
-	if ignore "$file" $IGNORE_CXX; then
-		output "SKIP CXX $file" :
-		continue
-	fi
-	if printf "\
-#include <%s>
-
-int main()
-{
-}
-" "$file" > "$temp_cxx" &&
-		output "CXX $file" compile_cxx
-	then
-		pass_cxx="$pass_cxx $file"
-	else
-		failures_cxx=$(($failures_cxx + 1))
-	fi
-done <<EOF
-$(find "$include_dir" -name '*.h')
-EOF
-
-# Check C compilation with all includes.
-
-: > "$temp_cc" &&
-for file in $pass_cc; do
-	printf "\
-#include <%s>
-" "$file" >> $temp_cc
-done
-if printf "\
-int main(void)
-{
-	return 0;
-}
-" >> "$temp_cc" &&
-	output "CC (all includes that did not fail)" compile_cc
-then
-	:
-else
-	failures_cc=$(($failures_cc + 1))
-fi
-
-# Check C++ compilation with all includes.
-
-: > "$temp_cxx" &&
-for file in $pass_cxx; do
-	printf "\
-#include <%s>
-" "$file" >> $temp_cxx
-done
-if printf "\
-int main()
-{
-}
-" >> "$temp_cxx" &&
-	output "CXX (all includes that did not fail)" compile_cxx
-then
-	:
-else
-	failures_cxx=$(($failures_cxx + 1))
-fi
-
-# Report results.
-
-if [ "$SUMMARY" = 1 ]; then
-	printf "\
-Summary:
- %u failure(s) for C using '%s'.
- %u failure(s) for C++ using '%s'.
-" $failures_cc "$CC" $failures_cxx "$CXX" 1>&2
-fi
-
-# Exit with nonzero status if there are failures.
-
-[ $failures_cc -eq 0 ] &&
-[ $failures_cxx -eq 0 ]