* Synced the perlfaq
[p5sagit/p5-mst-13.2.git] / lib / newgetopt.pl
index 38cad59..e21d396 100644 (file)
@@ -1,6 +1,19 @@
-# newgetopt.pl -- new options parsing.
-# Now just a wrapper around the Getopt::Long module.
-# $Id: newgetopt.pl,v 1.15 1995/12/26 14:57:33 jv Exp $
+# $Id: newgetopt.pl,v 1.18 2001/09/21 13:34:59 jv Exp $
+
+# This library is no longer being maintained, and is included for backward
+# compatibility with Perl 4 programs which may require it.
+# It is now just a wrapper around the Getopt::Long module.
+# This legacy library is deprecated and will be removed in a future
+# release of perl.
+#
+# In particular, this should not be used as an example of modern Perl
+# programming techniques.
+#
+# Suggested alternative: Getopt::Long
+
+warn( "The 'newgetopt.pl' legacy library is deprecated and will be"
+      . " removed in the next major release of perl. Please use the"
+      . " Getopt::Long module instead." );
 
 {   package newgetopt;
 
        $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.
@@ -45,8 +62,14 @@ sub NGetOpt {
        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;
 }