diff options
author | Daniel Stenberg <daniel@haxx.se> | 2020-03-28 00:04:51 +0100 |
---|---|---|
committer | Daniel Stenberg <daniel@haxx.se> | 2020-03-29 23:29:26 +0200 |
commit | a97d826f6de35372563ca47087bd53ce837fe21e (patch) | |
tree | dd82650b25e8ba4249cbd1cefcf68e1673ac75f7 /tests/version-scan.pl | |
parent | 93fafb93dbd3a5c27ef9a497256df86f9a6670f8 (diff) | |
download | curl-a97d826f6de35372563ca47087bd53ce837fe21e.tar.gz |
test1177: verify that all the CURL_VERSION_ bits are documented
Diffstat (limited to 'tests/version-scan.pl')
-rwxr-xr-x | tests/version-scan.pl | 66 |
1 files changed, 66 insertions, 0 deletions
diff --git a/tests/version-scan.pl b/tests/version-scan.pl new file mode 100755 index 000000000..788ba0fa3 --- /dev/null +++ b/tests/version-scan.pl @@ -0,0 +1,66 @@ +#!/usr/bin/env perl +#*************************************************************************** +# _ _ ____ _ +# Project ___| | | | _ \| | +# / __| | | | |_) | | +# | (__| |_| | _ <| |___ +# \___|\___/|_| \_\_____| +# +# Copyright (C) 2010 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al. +# +# This software is licensed as described in the file COPYING, which +# you should have received as part of this distribution. The terms +# are also available at https://curl.haxx.se/docs/copyright.html. +# +# You may opt to use, copy, modify, merge, publish, distribute and/or sell +# copies of the Software, and permit persons to whom the Software is +# furnished to do so, under the terms of the COPYING file. +# +# This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY +# KIND, either express or implied. +# +########################################################################### +# +# Verify that curl_version_info.3 documents all the CURL_VERSION_ bits +# from the header. +# + +use strict; +use warnings; + +my $manpage=$ARGV[0]; +my $header=$ARGV[1]; +my %manversion; +my %headerversion; +my $error; + +open(M, "<$manpage"); +while(<M>) { + if($_ =~ /^.ip (CURL_VERSION_[A-Z0-9_]+)/i) { + $manversion{$1}++; + } +} +close(M); + +open(H, "<$header"); +while(<H>) { + if($_ =~ /^\#define (CURL_VERSION_[A-Z0-9_]+)/i) { + $headerversion{$1}++; + } +} +close(H); + +for my $h (keys %headerversion) { + if(!$manversion{$h}) { + print STDERR "$manpage: missing $h\n"; + $error++; + } +} +for my $h (keys %manversion) { + if(!$headerversion{$h}) { + print STDERR "$manpage: $h is not in the header!\n"; + $error++; + } +} + +exit $error; |