Skip to content

Commit 7b2a183

Browse files
committed
devtools: move uAPI processing into functions
There are two main parts in the Linux uAPI script: - update the headers - check the headers In order to facilitate reading and rework, these two parts are move in functions. There is no change in the behavior. Signed-off-by: Thomas Monjalon <[email protected]> Reviewed-by: Maxime Coquelin <[email protected]>
1 parent 6e29e2a commit 7b2a183

File tree

1 file changed

+53
-43
lines changed

1 file changed

+53
-43
lines changed

devtools/linux-uapi.sh

Lines changed: 53 additions & 43 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,6 @@ base_path="kernel/linux/uapi/"
1111
version=""
1212
file=""
1313
check_headers=0
14-
errors=0
1514

1615
print_usage()
1716
{
@@ -91,7 +90,35 @@ fixup_includes()
9190
done
9291
}
9392

94-
check_header() {
93+
update_all()
94+
{
95+
local current_version=$(< $base_path/version)
96+
97+
if [ -n "$version" ]; then
98+
if version_older_than "$version" "$current_version"; then
99+
echo "Headers already up to date ($current_version >= $version)"
100+
version=$current_version
101+
else
102+
update_headers
103+
fi
104+
else
105+
echo "Version not specified, using current version ($current_version)"
106+
version=$current_version
107+
fi
108+
109+
if [ -n "$file" ]; then
110+
import_header $file
111+
fi
112+
113+
for filename in $(find $base_path -name "*.h" -type f); do
114+
fixup_includes $filename
115+
done
116+
117+
echo $version > $base_path/version
118+
}
119+
120+
check_header()
121+
{
95122
echo -n "Checking $1... "
96123

97124
if ! diff -q $1 $2 >/dev/null; then
@@ -105,6 +132,28 @@ check_header() {
105132
return 0
106133
}
107134

135+
check_all()
136+
{
137+
local errors=0
138+
139+
tmpheader="$(mktemp -t dpdk.checkuapi.XXXXXX)"
140+
trap "rm -f '$tmpheader'" INT
141+
142+
echo "Checking imported headers for version $version"
143+
for filename in $(find $base_path -name "*.h" -type f); do
144+
header=${filename#$base_path}
145+
download_header $header $tmpheader
146+
fixup_includes $tmpheader
147+
check_header $filename $tmpheader || errors=$((errors+1))
148+
done
149+
echo "$errors error(s) found"
150+
151+
rm -f $tmpheader
152+
trap - INT
153+
154+
return $errors
155+
}
156+
108157
while getopts i:u:ch opt ; do
109158
case $opt in
110159
i ) file=$OPTARG ;;
@@ -123,49 +172,10 @@ fi
123172

124173
cd $(dirname $0)/..
125174

126-
current_version=$(< $base_path/version)
127-
128-
if [ -n "$version" ]; then
129-
if version_older_than "$version" "$current_version"; then
130-
echo "Headers already up to date ($current_version >= $version)"
131-
version=$current_version
132-
else
133-
update_headers
134-
fi
135-
else
136-
echo "Version not specified, using current version ($current_version)"
137-
version=$current_version
138-
fi
139-
140-
if [ -n "$file" ]; then
141-
import_header $file
142-
fi
143-
144-
for filename in $(find $base_path -name "*.h" -type f); do
145-
fixup_includes $filename
146-
done
147-
148-
echo $version > $base_path/version
175+
update_all
149176

150177
if [ $check_headers -eq 0 ]; then
151178
exit 0
152179
fi
153180

154-
tmpheader="$(mktemp -t dpdk.checkuapi.XXXXXX)"
155-
trap "rm -f '$tmpheader'" INT
156-
157-
echo "Checking imported headers for version $version"
158-
159-
for filename in $(find $base_path -name "*.h" -type f); do
160-
header=${filename#$base_path}
161-
download_header $header $tmpheader
162-
fixup_includes $tmpheader
163-
check_header $filename $tmpheader || errors=$((errors+1))
164-
done
165-
166-
echo "$errors error(s) found"
167-
168-
rm -f $tmpheader
169-
trap - INT
170-
171-
exit $errors
181+
check_all

0 commit comments

Comments
 (0)