inspircd/tools/directive
Sadie Powell 606677c865 Require Perl 5.26 in the build system.
This version is supported by all major systems that ship the C++17
compilers required by the v4 branch.
2021-02-28 19:20:08 +00:00

48 lines
1.3 KiB
Perl
Executable File

#!/usr/bin/env perl
#
# InspIRCd -- Internet Relay Chat Daemon
#
# Copyright (C) 2020-2021 Sadie Powell <sadie@witchery.services>
#
# This file is part of InspIRCd. InspIRCd is free software: you can
# redistribute it and/or modify it under the terms of the GNU General Public
# License as published by the Free Software Foundation, version 2.
#
# This program is distributed in the hope that it will be useful, but WITHOUT
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
# FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
# details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
use v5.26.0;
use strict;
use warnings FATAL => qw(all);
use File::Basename qw(dirname);
use FindBin qw($RealDir);
use lib dirname $RealDir;
use make::console;
use make::directive;
if (scalar @ARGV < 2) {
say STDERR console_format "<|GREEN Usage:|> $0 <<|UNDERLINE FILE|>> [<|UNDERLINE DIRECTIVES...|>]";
exit 1
}
my $file = shift;
print_error "<|GREEN $file|> does not exist and/or is not a file!" unless -f $file;
for my $directive (@ARGV) {
my $value = get_directive $file, $directive, '';
if (-t STDOUT) {
say console_format "<|GREEN $directive|>: $value";
} else {
say $value;
}
}