mirror of
https://github.com/mollyim/webrtc.git
synced 2025-05-12 13:20:44 +01:00

Makes the script a bit more accurate in identifying place-holder header files. Bug: None Change-Id: Iba13562aed0d40bffef9c25d7345f3bb8af16c29 No-Try: true Reviewed-on: https://webrtc-review.googlesource.com/4381 Reviewed-by: Patrik Höglund <phoglund@webrtc.org> Commit-Queue: Niels Moller <nisse@webrtc.org> Cr-Commit-Position: refs/heads/master@{#20357}
37 lines
1.4 KiB
Bash
Executable file
37 lines
1.4 KiB
Bash
Executable file
#!/bin/bash
|
|
|
|
# Copyright (c) 2016 The WebRTC project authors. All Rights Reserved.
|
|
#
|
|
# Use of this source code is governed by a BSD-style license
|
|
# that can be found in the LICENSE file in the root of the source
|
|
# tree. An additional intellectual property rights grant can be found
|
|
# in the file PATENTS. All contributing project authors may
|
|
# be found in the AUTHORS file in the root of the source tree.
|
|
|
|
# This script is run in a git repository. It lists all header files,
|
|
# sorted by the number of other files where the file name of the file
|
|
# occurs. It is intentionally not limited to only source files, and
|
|
# there may be some false hits because we search only for the file
|
|
# part (sans directory). It is quite slow.
|
|
#
|
|
# Headers close to the top of the list are candidates for removal.
|
|
|
|
# If the name includes at most one directory, keep name unchanged,
|
|
# otherwise strip directories. Needed to work with relative #includes
|
|
# which are used in some parts of the tree, while still avoiding,
|
|
# e.g., api/foo.h to match includes of pc/foo.h.
|
|
simplify_name () {
|
|
if expr "$1" : '.*/.*/' > /dev/null ; then
|
|
basename "$1"
|
|
else
|
|
echo "$1"
|
|
fi
|
|
}
|
|
|
|
git ls-files '*.h' '*.hpp' | while read header ; do
|
|
name="$(simplify_name "${header}")"
|
|
count="$(git grep -l -F "${name}" \
|
|
| grep -v -e '\.gn' -e '\.gyp' \
|
|
| wc -l)"
|
|
echo "${count}" "${header}"
|
|
done | sort -n
|