Ensure version check is correct.
[catagits/Catalyst-Runtime.git] / script / catalyst.pl
index 3edd122..83c4eb7 100755 (executable)
@@ -3,7 +3,20 @@
 use strict;
 use Getopt::Long;
 use Pod::Usage;
-use Catalyst::Helper;
+eval " use Catalyst::Helper 1.0; ";
+
+if ($@) {
+  die <<END;
+To use the Catalyst development tools including catalyst.pl and the
+generated script/myapp_create.pl you need Catalyst::Helper, which is
+part of the Catalyst-Devel distribution. Please install this via a
+vendor package or by running one of -
+
+  perl -MCPAN -e 'install Catalyst::Devel'
+  perl -MCPANPLUS -e 'install Catalyst::Devel'
+END
+
+}
 
 my $force    = 0;
 my $help     = 0;
@@ -21,12 +34,14 @@ GetOptions(
 
 pod2usage(1) if ( $help || !$ARGV[0] );
 
-my $helper = Catalyst::Helper->new( {
-    '.newfiles' => !$force, 
-    'makefile'  => $makefile, 
-    'scripts'   => $scripts,
-    'short'     => $short,
-} );
+my $helper = Catalyst::Helper->new(
+    {
+        '.newfiles' => !$force,
+        'makefile'  => $makefile,
+        'scripts'   => $scripts,
+        'short'     => $short,
+    }
+);
 pod2usage(1) unless $helper->mk_app( $ARGV[0] );
 
 1;
@@ -40,14 +55,19 @@ catalyst - Bootstrap a Catalyst application
 
 catalyst.pl [options] application-name
 
+'catalyst.pl' creates a skeleton for a new application, and allows you to
+upgrade the skeleton of your old application.
+
  Options:
    -force      don't create a .new file where a file to be created exists
-   -help       display this help and exits
-   -makefile   update Makefile.PL only
-   -scripts    update helper scripts only
-   -short      use short types, like C instead of Controller...
+   -help       display this help and exit
+   -makefile   only update Makefile.PL
+   -scripts    only update helper scripts
+   -short      use short names, M/V/C instead of Model/View/Controller.
+
+ application-name must be a valid Perl module name and can include "::", 
+ which will be converted to '-' in the project name.
 
- application-name must be a valid Perl module name and can include "::"
 
  Examples:
     catalyst.pl My::App