Add unused headers check to CI
This commit is contained in:
@@ -466,6 +466,7 @@ misc:
|
||||
- sh util/check-win32util-configure
|
||||
- sh util/check-categories.sh
|
||||
- if git grep SYSTEMTESTTOP -- ':!.gitlab-ci.yml'; then echo 'Please use relative paths instead of $SYSTEMTESTTOP.'; exit 1; fi
|
||||
- bash util/unused-headers.sh
|
||||
needs: []
|
||||
artifacts:
|
||||
paths:
|
||||
|
||||
@@ -2193,6 +2193,7 @@
|
||||
./util/run-clang-tidy X 2020
|
||||
./util/spacewhack.pl PERL 2000,2001,2004,2007,2012,2016,2018,2019,2020
|
||||
./util/tabify-changes SH 2004,2007,2012,2016,2018,2019,2020
|
||||
./util/unused-headers.sh SH 2020
|
||||
./util/update-drafts.pl PERL 2000,2001,2004,2007,2012,2016,2018,2019,2020
|
||||
./util/update_branches PERL 2005,2007,2012,2016,2018,2019,2020
|
||||
./util/update_copyrights PERL 1998,1999,2000,2001,2004,2005,2006,2007,2008,2009,2010,2012,2013,2014,2015,2016,2017,2018,2019,2020
|
||||
|
||||
29
util/unused-headers.sh
Executable file
29
util/unused-headers.sh
Executable file
@@ -0,0 +1,29 @@
|
||||
#!/bin/bash
|
||||
#
|
||||
# Copyright (C) Internet Systems Consortium, Inc. ("ISC")
|
||||
#
|
||||
# This Source Code Form is subject to the terms of the Mozilla Public
|
||||
# License, v. 2.0. If a copy of the MPL was not distributed with this
|
||||
# file, you can obtain one at https://mozilla.org/MPL/2.0/.
|
||||
#
|
||||
# See the COPYRIGHT file distributed with this work for additional
|
||||
# information regarding copyright ownership.
|
||||
|
||||
unused_headers=$(
|
||||
git ls-files -- '*.h' ':!:*include*' ':!:*rdata*' ':!:*win32*' |
|
||||
sed 's|.*/\(.*\.h\)|\1|' |
|
||||
while read -r header; do
|
||||
git grep -q "#include \".*${header}\"" || echo "${header}"
|
||||
done
|
||||
|
||||
git ls-files -- '*include/*.h' |
|
||||
sed 's|.*/include\/\(.*\.h\)|\1|' |
|
||||
while read -r header; do
|
||||
git grep -q "#include <${header}>" || echo "${header}"
|
||||
done
|
||||
)
|
||||
|
||||
if [ -n "${unused_headers}" ]; then
|
||||
echo -e "Following headers are unused:\n${unused_headers}"
|
||||
exit 1
|
||||
fi
|
||||
Reference in New Issue
Block a user