Fix whitespace.
[goals.git] / docs / goals.pod
index eca8876..ffea303 100644 (file)
@@ -2,13 +2,14 @@
 
 =head1 NAME
 
 
 =head1 NAME
 
-goals - an experimental tool that generalizes "make"
+goals - an experimental tool that generalizes “make”
 
 =head1 SUMMARY
 
  goals ['TARGET'] ['VAR=VALUE']
        [-C|--directory DIRECTORY] [-d] [-f|--file Goalfile]
 
 =head1 SUMMARY
 
  goals ['TARGET'] ['VAR=VALUE']
        [-C|--directory DIRECTORY] [-d] [-f|--file Goalfile]
-       [-I|--include DIRECTORY] [--no-prelude]
+       [-I|--include DIRECTORY] [-j|--jobs JOBS] [--no-prelude]
+       [-k|--keep-going] [-s|--silent|--quiet]
 
  goals --help
 
 
  goals --help
 
@@ -16,7 +17,17 @@ goals - an experimental tool that generalizes "make"
 
 =head1 DESCRIPTION
 
 
 =head1 DESCRIPTION
 
+Goals is a command line tool similar in concept to L<make(1)> — a way
+to express dependencies between tasks that need to be done.  Goals
+generalizes make so it can express dependencies between not just files
+but anything such as URLs, remote files, remote builds and more.  It
+is also very extensible using only shell scripting, and it fixes many
+problems that make suffers from.
 
 
+This manual page documents the command line tool and options.
+
+There is an introduction to and tutorial on writing goal files, as
+well as a reference manual in L<Goalfile(5)>.
 
 =head1 OPTIONS
 
 
 =head1 OPTIONS
 
@@ -57,13 +68,21 @@ if I<-C> was not used.
 Specify an include directory, used when including goal files using the
 C<include> directive.  You can use this option multiple times.  Later
 directories have priority over earlier ones.  There is also an
 Specify an include directory, used when including goal files using the
 C<include> directive.  You can use this option multiple times.  Later
 directories have priority over earlier ones.  There is also an
-implicit C<%stdlib> directory which is used for prelude files (see
-L<goals-reference(5)>).
+implicit C<%stdlib> directory which is used for prelude files.
 
 Note that if a relative path is given here, it is relative to the
 directory specified with the I<-C> option, or to the current directory
 if I<-C> was not used.
 
 
 Note that if a relative path is given here, it is relative to the
 directory specified with the I<-C> option, or to the current directory
 if I<-C> was not used.
 
+=item B<-j> JOBS
+
+=item B<--jobs> JOBS
+
+Set the maximum number of commands that can run at the same time.
+Unlike make, goals defaults to running in parallel, setting the
+default to the number of cores on the machine.  To disable parallel
+jobs, you must use S<I<-j 1>>.
+
 =item B<--no-prelude>
 
 Do not load F<prelude.gl> from C<%stdlib>.  The default is that the
 =item B<--no-prelude>
 
 Do not load F<prelude.gl> from C<%stdlib>.  The default is that the
@@ -71,11 +90,29 @@ prelude is always loaded automatically before any initial goal file
 (but you can redefine prelude definitions in your goal file if you
 want).
 
 (but you can redefine prelude definitions in your goal file if you
 want).
 
+=item B<-k>
+
+=item B<--keep-going>
+
+Continue as much as possible after an error.  The target that failed
+and anything that depends on that target (recursively) will fail and
+the program as a whole will still exit with an error, but as many
+targets as can be built will be built.
+
+=item B<-s>
+
+=item B<--silent>
+
+=item B<--quiet>
+
+Don't print the shell commands that are run.  This is the same as
+turning all S<C<{ CODE }>> sections into S<C<@{ CODE }>> sections.
+
 =back
 
 =head1 SEE ALSO
 
 =back
 
 =head1 SEE ALSO
 
-L<Goalfile(5)>, L<goals-reference(5)>, L<make(1)>.
+L<Goalfile(5)>, L<make(1)>.
 
 =head1 AUTHORS
 
 
 =head1 AUTHORS