diff options
author | Igor Pashev <pashev.igor@gmail.com> | 2015-07-04 17:13:50 +0300 |
---|---|---|
committer | Igor Pashev <pashev.igor@gmail.com> | 2015-07-04 17:13:50 +0300 |
commit | 71cd8e3a743046573744123777061b64881bf372 (patch) | |
tree | 82522befe647f4fff186a5630cad0cad33f8ef53 /src/coreutils.c | |
parent | c18578632fd3c9e513e613a86ba2b7c4ebee6c45 (diff) | |
download | coreutils-upstream.tar.gz |
Imported Upstream version 8.24upstream/8.24upstream
Diffstat (limited to 'src/coreutils.c')
-rw-r--r-- | src/coreutils.c | 29 |
1 files changed, 14 insertions, 15 deletions
diff --git a/src/coreutils.c b/src/coreutils.c index c459b1d6..7f868347 100644 --- a/src/coreutils.c +++ b/src/coreutils.c @@ -1,4 +1,4 @@ -/* Copyright (C) 2014 Free Software Foundation, Inc. +/* Copyright (C) 2014-2015 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -35,7 +35,7 @@ needs to match the one passed as CFLAGS on single-binary.mk (generated by gen-single-binary.sh). */ # define SINGLE_BINARY_PROGRAM(prog_name_str, main_name) \ - int _single_binary_main_##main_name (int, char**) ATTRIBUTE_NORETURN; + int single_binary_main_##main_name (int, char **); # include "coreutils.h" # undef SINGLE_BINARY_PROGRAM #endif @@ -46,9 +46,6 @@ #define AUTHORS \ proper_name ("Alex Deymo") -void -launch_program (const char *prog_name, int prog_argc, char **prog_argv); - static struct option const long_options[] = { {GETOPT_HELP_OPTION_DECL}, @@ -73,29 +70,31 @@ Execute the PROGRAM_NAME built-in program with the given PARAMETERS.\n\ fputs (HELP_OPTION_DESCRIPTION, stdout); fputs (VERSION_OPTION_DESCRIPTION, stdout); - printf ("\n\ -Built-in programs:\n" #ifdef SINGLE_BINARY -/* XXX: Ideally we#d like to present "install" here, not "ginstall". */ +/* XXX: Ideally we'd like to present "install" here, not "ginstall". */ + char const *prog_name_list = # define SINGLE_BINARY_PROGRAM(prog_name_str, main_name) " " prog_name_str # include "coreutils.h" # undef SINGLE_BINARY_PROGRAM + ; + printf ("\n\ +Built-in programs:\n\ +%s\n", prog_name_list); #endif - "\n"); printf (_("\ \n\ Use: '%s --coreutils-prog=PROGRAM_NAME --help' for individual program help.\n"), program_name); - emit_ancillary_info (); + emit_ancillary_info (PROGRAM_NAME); } exit (status); } -void +static void launch_program (const char *prog_name, int prog_argc, char **prog_argv) { - int (*prog_main)(int, char **) = NULL; + int (*prog_main) (int, char **) = NULL; /* Ensure that at least one parameter was passed. */ if (!prog_argc || !prog_argv || !prog_argv[0] || !prog_name) @@ -103,10 +102,10 @@ launch_program (const char *prog_name, int prog_argc, char **prog_argv) #ifdef SINGLE_BINARY if (false); - /* Lookup the right main program. */ + /* Look up the right main program. */ # define SINGLE_BINARY_PROGRAM(prog_name_str, main_name) \ else if (STREQ (prog_name_str, prog_name)) \ - prog_main = _single_binary_main_##main_name; + prog_main = single_binary_main_##main_name; # include "coreutils.h" # undef SINGLE_BINARY_PROGRAM #endif @@ -124,7 +123,7 @@ launch_program (const char *prog_name, int prog_argc, char **prog_argv) prctl (PR_SET_MM_ARG_START, prog_argv[0]); #endif - exit ((*prog_main) (prog_argc, prog_argv)); + exit (prog_main (prog_argc, prog_argv)); } int |