From a97d826f6de35372563ca47087bd53ce837fe21e Mon Sep 17 00:00:00 2001 From: Daniel Stenberg Date: Sat, 28 Mar 2020 00:04:51 +0100 Subject: test1177: verify that all the CURL_VERSION_ bits are documented --- tests/version-scan.pl | 66 +++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 66 insertions(+) create mode 100755 tests/version-scan.pl (limited to 'tests/version-scan.pl') 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, , 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() { + if($_ =~ /^.ip (CURL_VERSION_[A-Z0-9_]+)/i) { + $manversion{$1}++; + } +} +close(M); + +open(H, "<$header"); +while() { + 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; -- cgit v1.2.3