Use a full config.h with doxygen
Otherwise we get warnings that some documentation items don't have
corresponding #define, and more importantly the corresponding snippets are not
included in the output.
For that we need a modified version of the "full" argument for config.pl.
Also, the new CMakeLists.txt target only works on Unix (which was already the
case of the Makefile target). Hopefully this is not an issue as people are
unlikely to need that target on Windows.
diff --git a/scripts/config.pl b/scripts/config.pl
index f673c2a..d4c32fd 100755
--- a/scripts/config.pl
+++ b/scripts/config.pl
@@ -10,7 +10,7 @@
$0 [-f <file>] set <name> [<value>]
EOU
# for our eyes only:
-# $0 [-f <file>] full
+# $0 [-f <file>] full|realfull
# Things that shouldn't be enabled with "full".
# Notes:
@@ -61,7 +61,7 @@
my $action = shift;
my ($name, $value);
-if ($action eq "full") {
+if ($action eq "full" || $action eq "realfull") {
# nothing to do
} elsif ($action eq "unset") {
die $usage unless @ARGV;
@@ -79,14 +79,20 @@
my @config_lines = <$config_read>;
close $config_read;
-my $exclude_re = join '|', @excluded;
-my $no_exclude_re = join '|', @non_excluded;
+my ($exclude_re, $no_exclude_re);
+if ($action eq "realfull") {
+ $exclude_re = qr/^$/;
+ $no_exclude_re = qr/./;
+} else {
+ $exclude_re = join '|', @excluded;
+ $no_exclude_re = join '|', @non_excluded;
+}
open my $config_write, '>', $config_file or die "write $config_file: $!\n";
my $done;
for my $line (@config_lines) {
- if ($action eq "full") {
+ if ($action eq "full" || $action eq "realfull") {
if ($line =~ /name SECTION: Module configuration options/) {
$done = 1;
}