]> git.donarmstrong.com Git - lilypond.git/blobdiff - lily/main.cc
2003 -> 2004
[lilypond.git] / lily / main.cc
index 44e2acf6225a9a0d14e0acbd3d9ff6e07473d051..754b5c4dec1c912e4b5ffaa6a47506de04d85e80 100644 (file)
@@ -3,7 +3,7 @@
 
   source file of the GNU LilyPond music typesetter
 
-  (c)  1997--2003 Han-Wen Nienhuys <hanwen@cs.uu.nl>
+  (c) 1997--2004 Han-Wen Nienhuys <hanwen@cs.uu.nl>
 */
 
 #include <stdlib.h>
@@ -34,6 +34,8 @@
 #include "global-ctor.hh"
 #include "kpath.hh"
 
+Array<String> failed_files;
+
 static int sane_putenv (char const* key, char const* value, bool overwrite = false);
 
 /*
@@ -62,7 +64,7 @@ String output_format_global = "tex";
 /* Current output name. */
 String output_name_global;
 
-/* Run in safe mode? -- FIXME: should be re-analised */
+/* Run in safe mode? */
 bool safe_global_b = false;
 
 /* Verbose progress indication? */
@@ -116,12 +118,7 @@ static Long_option_init options_static[] = {
   {0, "no-paper", 'm',  _i ("produce MIDI output only")},
   {_i ("FILE"), "output", 'o',  _i ("write output to FILE")},
   {_i ("DIR"), "dep-prefix", 'P',  _i ("prepend DIR to dependencies")},
-#if 0
-  /*
-    should audit again.
-   */
-  {0, "safe", 's',  _i ("inhibit file output naming and exporting")},
-#endif
+  {0, "safe-mode", 's',  _i ("run in safe mode")},
   {0, "version", 'v',  _i ("print version number")},
   {0, "verbose", 'V', _i ("be verbose")},
   {0, "warranty", 'w',  _i ("show warranty and copyright")},
@@ -271,7 +268,7 @@ Path
 distill_inname (String str)
 {
   Path p = split_path (str);
-  if (str.empty_b () || str == "-")
+  if (str.is_empty () || str == "-")
     p.base = "-";
   else
     {
@@ -280,10 +277,10 @@ distill_inname (String str)
       for (int i = 0; extensions[i]; i++)
        {
          p.ext = orig_ext;
-         if (*extensions[i] && !p.ext.empty_b ())
+         if (*extensions[i] && !p.ext.is_empty ())
            p.ext += ".";
          p.ext += extensions[i];
-         if (!global_path.find (p.to_string ()).empty_b ())
+         if (!global_path.find (p.to_string ()).is_empty ())
              break;
        }
       /* Reshuffle extension */
@@ -356,11 +353,11 @@ main_prog (void *, int, char **)
       outpath.root = "";
       outpath.dir = "";
       
-      if (!output_name_global.empty_b ())
+      if (!output_name_global.is_empty ())
        outpath = split_path (output_name_global);
       
       String init;
-      if (!init_name_global.empty_b ())
+      if (!init_name_global.is_empty ())
        init = init_name_global;
       else
        init = "init.ly";
@@ -371,6 +368,14 @@ main_prog (void *, int, char **)
     } while ((arg  = oparser_p_static->get_next_arg ()));
   delete oparser_p_static;
   oparser_p_static = 0;
+
+  if (exit_status_global)
+    {
+      printf ("Failed files: ");
+      for (int i = 0; i < failed_files.size (); i++)
+       printf ("%s ", failed_files[i].to_str0 ());
+      printf ("\n");
+    }
   exit (exit_status_global);
 }
 
@@ -420,7 +425,7 @@ main (int argc, char **argv)
          {
            String s = oparser_p_static->optional_argument_str0_;
            Path p = split_path (s);
-           if (s != "-" && p.ext.empty_b ())
+           if (s != "-" && p.ext.is_empty ())
              p.ext = output_format_global;
 
            output_name_global = p.to_string ();