-
-
-\f
-/* Arguments to be interpreted before the X server gets initialised */
-
-enum
- {
- OPT_HELP,
- OPT_VERSION,
- OPT_NO_SPLASH,
- OPT_MEASURE_STARTUP,
- N_STARTUP_OPTIONS
- };
-
-static const struct argv_option startup_options[N_STARTUP_OPTIONS] =
- {
- {"help", 'h', no_argument, OPT_HELP},
- {"version", 'V', no_argument, OPT_VERSION},
- {"no-splash", 'q', no_argument, OPT_NO_SPLASH},
- {"measure-startup", 0, no_argument, OPT_MEASURE_STARTUP},
- };
-
-/* --measure-startup: Prints the elapsed time to start up and load any file
- specified on the command line. */
-static gboolean measure_startup;
-static GTimer *startup;
-
-static void
-usage (void)
-{
- char *inc_path = string_array_join (include_path_default (), " ");
- GOptionGroup *gtk_options;
- GOptionContext *ctx;
- gchar *gtk_help_base, *gtk_help;
-
- /* Get help text for GTK+ options. */
- ctx = g_option_context_new ("psppire");
- gtk_options = gtk_get_option_group (FALSE);
- gtk_help_base = g_option_context_get_help (ctx, FALSE, gtk_options);
- g_option_context_free (ctx);
-
- /* The GTK+ help text starts with usage instructions that we don't want,
- followed by a blank line. Trim off everything up to and including the
- first blank line. */
- gtk_help = strstr (gtk_help_base, "\n\n");
- gtk_help = gtk_help != NULL ? gtk_help + 2 : gtk_help_base;
-
- printf (_("\
-PSPPIRE, a GUI for PSPP, a program for statistical analysis of sampled data.\n\
-Usage: %s [OPTION]... FILE\n\
-\n\
-Arguments to long options also apply to equivalent short options.\n\
-\n\
-GUI options:\n\
- -q, --no-splash don't show splash screen during startup\n\
-\n\
-%s\
-Language options:\n\
- -I, --include=DIR append DIR to search path\n\
- -I-, --no-include clear search path\n\
- -a, --algorithm={compatible|enhanced}\n\
- set to `compatible' if you want output\n\
- calculated from broken algorithms\n\
- -x, --syntax={compatible|enhanced}\n\
- set to `compatible' to disable PSPP extensions\n\
- -i, --interactive interpret syntax in interactive mode\n\
- -s, --safer don't allow some unsafe operations\n\
-Default search path: %s\n\
-\n\
-Informative output:\n\
- -h, --help display this help and exit\n\
- -V, --version output version information and exit\n\
-\n\
-A non-option argument is interpreted as a data file in .sav or .zsav or .por\n\
-format or a syntax file to load.\n"),
- program_name, gtk_help, inc_path);
-
- free (inc_path);
- g_free (gtk_help_base);
-
- emit_bug_reporting_address ();
- exit (EXIT_SUCCESS);
-}
-
-static void
-startup_option_callback (int id, void *show_splash_)
-{
- gboolean *show_splash = show_splash_;
-
- switch (id)
- {
- case OPT_HELP:
- usage ();
- break;
-
- case OPT_VERSION:
- version_etc (stdout, "psppire", PACKAGE_NAME, PACKAGE_VERSION,
- "Ben Pfaff", "John Darrington", "Jason Stover",
- NULL_SENTINEL);
- exit (EXIT_SUCCESS);
-
- case OPT_NO_SPLASH:
- *show_splash = FALSE;
- break;
-
- case OPT_MEASURE_STARTUP:
- measure_startup = TRUE;
- break;
-
- default:
- NOT_REACHED ();
- }
-}
-
-static gboolean UNUSED
-print_startup_time (gpointer data)