Mercurial > emacs
view src/prefix-args.c @ 68199:5012e59a73c7
* mh-comp.el (mh-pgp-support-flag): Move here from mh-utils.el; needed
to help remove dependency on mh-utils.
* mh-exec.el: New file. Move process support routines here from
mh-utils.el.
* mh-init.el (mh-utils): Remove require.
(mh-exec): Add require.
(mh-profile-component, mh-profile-component-value): Move here from
mh-utils.el.
* mh-utils.el (mh-pgp-support-flag): Move to mh-comp.el to reduce
dependencies on mh-utils.el.
(mh-profile-component, mh-profile-component-value): Move to mh-init.el
since that's the only place that uses them. (Other than mh-alias.el;
I'm thinking that mh-find-path can set variable from the Aliasfile
component like it does the other components).
(mh-index-max-cmdline-args, mh-xargs, mh-quote-for-shell)
(mh-exec-cmd, mh-exec-cmd-error, mh-exec-cmd-daemon)
(mh-exec-cmd-env-daemon, mh-process-daemon, mh-exec-cmd-quiet)
(defvar, mh-exec-cmd-output)
(mh-exchange-point-and-mark-preserving-active-mark)
(mh-exec-lib-cmd-output, mh-handle-process-error): Move to new file
mh-exec.el so that mh-init.el doesn't have to depend on mh-utils.el,
breaking circular dependency.
* mh-alias.el: mh-customize.el: mh-e.el: mh-funcs.el: mh-gnus.el:
* mh-identity.el: mh-inc.el: mh-junk.el: mh-mime.el: mh-print.el:
* mh-search.el: mh-seq.el: mh-speed.el: Added debugging statements
(commented out) around requires to help find dependency loops. Will
remove them when issues are resolved.
author | Bill Wohler <wohler@newt.com> |
---|---|
date | Sun, 15 Jan 2006 08:17:56 +0000 |
parents | a0d1312ede66 |
children | 3bd95f4f2941 532e0a9335a9 2d92f5c9d6ae |
line wrap: on
line source
/* prefix-args.c - echo each argument, prefixed by a string. Copyright (C) 1992, 2002, 2003, 2004, 2005 Free Software Foundation, Inc. This file is part of GNU Emacs. GNU Emacs is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. GNU Emacs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with GNU Emacs; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ /* Jim Blandy <jimb@occs.cs.oberlin.edu> - September 1992 When using GCC 2 as the linker in the build process, options intended for the linker need to be prefixed with the "-Xlinker" option. If an option takes an argument, we need to use -Xlinker twice - once for the option and once for its argument. For example, to run the linker with the options "-Bstatic" "-e" "_start", you'd need to pass the following options to GCC: -Xlinker -Bstatic -Xlinker -e -Xlinker _start. The Emacs makefile used to use a Bourne Shell `for' loop to prefix each linker option with "-Xlinker", but 1) the for loop was hairier than one might hope because it had to work when there were no arguments to pass to the linker - the shell barfs on a loop like this: for arg in ; do echo -Xlinker "$arg"; done and 2) the whole compilation command containing this loop seems to exit with a non-zero status and halt the build under Ultrix. If I can't write a completely portable program to do this in C, I'm quitting and taking up gardening. */ #include <stdio.h> int main (argc, argv) int argc; char **argv; { char *progname; char *prefix; progname = argv[0]; argc--, argv++; if (argc < 1) { fprintf (stderr, "Usage: %s PREFIX ARGS...\n\ Echo each ARG preceded by PREFIX and a space.\n", progname); exit (2); } prefix = argv[0]; argc--, argv++; for (; argc > 0; argc--, argv++) printf ("%s %s%c", prefix, argv[0], (argc > 1) ? ' ' : '\n'); exit (0); } /* arch-tag: 08136d70-e5c0-49c7-bcd8-b4850233977a (do not change this comment) */