diff options
Diffstat (limited to 'contrib/perl5/lib/newgetopt.pl')
| -rw-r--r-- | contrib/perl5/lib/newgetopt.pl | 68 | 
1 files changed, 68 insertions, 0 deletions
| diff --git a/contrib/perl5/lib/newgetopt.pl b/contrib/perl5/lib/newgetopt.pl new file mode 100644 index 0000000000000..0b7eed8bfe91e --- /dev/null +++ b/contrib/perl5/lib/newgetopt.pl @@ -0,0 +1,68 @@ +# newgetopt.pl -- new options parsing. +# Now just a wrapper around the Getopt::Long module. +# $Id: newgetopt.pl,v 1.17 1996-10-02 11:17:16+02 jv Exp $ + +{   package newgetopt; + +    # Values for $order. See GNU getopt.c for details. +    $REQUIRE_ORDER = 0; +    $PERMUTE = 1; +    $RETURN_IN_ORDER = 2; + +    # Handle POSIX compliancy. +    if ( defined $ENV{"POSIXLY_CORRECT"} ) { +	$autoabbrev = 0;	# no automatic abbrev of options (???) +	$getopt_compat = 0;	# disallow '+' to start options +	$option_start = "(--|-)"; +	$order = $REQUIRE_ORDER; +	$bundling = 0; +	$passthrough = 0; +    } +    else { +	$autoabbrev = 1;	# automatic abbrev of options +	$getopt_compat = 1;	# allow '+' to start options +	$option_start = "(--|-|\\+)"; +	$order = $PERMUTE; +	$bundling = 0; +	$passthrough = 0; +    } + +    # Other configurable settings. +    $debug = 0;			# for debugging +    $ignorecase = 1;		# ignore case when matching options +    $argv_end = "--";		# don't change this! +} + +use Getopt::Long; + +################ Subroutines ################ + +sub NGetOpt { + +    $Getopt::Long::debug = $newgetopt::debug  +	if defined $newgetopt::debug; +    $Getopt::Long::autoabbrev = $newgetopt::autoabbrev  +	if defined $newgetopt::autoabbrev; +    $Getopt::Long::getopt_compat = $newgetopt::getopt_compat  +	if defined $newgetopt::getopt_compat; +    $Getopt::Long::option_start = $newgetopt::option_start  +	if defined $newgetopt::option_start; +    $Getopt::Long::order = $newgetopt::order  +	if defined $newgetopt::order; +    $Getopt::Long::bundling = $newgetopt::bundling  +	if defined $newgetopt::bundling; +    $Getopt::Long::ignorecase = $newgetopt::ignorecase  +	if defined $newgetopt::ignorecase; +    $Getopt::Long::ignorecase = $newgetopt::ignorecase  +	if defined $newgetopt::ignorecase; +    $Getopt::Long::passthrough = $newgetopt::passthrough  +	if defined $newgetopt::passthrough; + +    &GetOptions; +} + +################ Package return ################ + +1; + +################ End of newgetopt.pl ################ | 
