summaryrefslogtreecommitdiff
path: root/libiberty/pexecute.c
Commit message (Collapse)AuthorAgeFilesLines
* include/gdr2005-05-241-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2005-05-24 Gabriel Dos Reis <gdr@integrable-solutions.net> * libiberty.h (ACONCAT): Properly cast value of alloca(). * ansidecl.h (ATTRIBUTE_UNUSED_LABEL): Don't define if __cplusplus. libiberty/ 2005-05-24 Gabriel Dos Reis <gdr@integrable-solutions.net> * configure.ac: Check declarations for calloc(), getenv(), malloc(), realloc() and sbrk(). * config.in: Regenerate. * configure: Likewise. * alloca.c (C_alloca): Change "new" to "new_storage". Use XNEWVEC instead of xmalloc. * choose-temp.c (choose_temp_base): Use XNEWVEC instea od xmalloc. * concat.c (liiberty_concat_ptr): Surround definition with an extern "C" block, if __cplusplus. (concat): Use XNEWVEC instead of xmalloc. (reconcat): Likewise. * cp-demangle.c (struct d_print_template): Rename member "template" to "template_decl". Adjust use throughout the file. (d_print_resize): Properly cast return value of realloc(). (cplus_demangle_print): Same for malloc(). (d_demangle): Likewise. * cp-demint.c (cplus_demangle_fill_builtin_type): Rename parameter "typename" to "type_name". * cplus-dem.c (grow_vect): Use XRESIZEVEC instead of xrealloc(). (work_stuff_copy_to_from): Use XNEWVEC insteand of xmalloc(). (demangle_template_value_parm): Likewise. (demangle_template): Likewise. (recursively_demangle): Likewise. (do_hpacc_template_literal): Likewise. (do_arg): Likewise. (remember_type): Likewise. (remember_Ktype): Likewise. (register_Btype): Likewise. (string_need): Use XRESIZEVEC instead of xrealloc(). * dyn-string.c (dyn_string_init): Use XNEWVEC. (dyn_string_new): Use XNEW. (dyn_string_resize): Use XRESIZEVEC. * fnmatch.c (fnmatch): Rename local variable "not" to "negate". * getopt.c (getenv): Declare only if !__cplusplus and !getenv. Otherwise include <stdlib.h>. (exchange): Cast return value of malloc(). * hashtab.c (htab_size): Define as both macro and non-inline function. (htab_elements): Likewise. * getpwd.c (getpwd): Use XNEWVEC. (htab_create_alloc_ex): Use C90 prototype-style. * lrealpath.c (lrealpath): Appropriately cast return value of malloc(). * make-relative-prefix.c (save_string): Likewise. * make-temp-file.c (try_dir): Rename from "try". Adjust use in the file. (choose_tmpdir): Use XNEWVEC. * mkstemps.c (mkstemps): Rename parameter "template" to "pattern". * pex-common.c (pex_init_common): Use XNEW. (pex_add_remove): Use XRESIZEVEC. (pex_run): Likewise. (pex_get_status_and_time): Likewise. * pex-djgpp.c (pex_djgpp_exec_child): Likewise. * pex-msdos.c (pex_init): Use XNEW. (pex_msdos_exec_child): Likewise. (pex_msdos_exec_child): Use XRESIZEVEC. * pex-unix.c (pex_wait): Use XNEW. * pex-win32.c (fix_argv): Use XNEWVEC. * pexecute.c (pwait): Likewise. * setenv.c (setenv): Properly cast return value of malloc(). * sigsetmask.c (sigsetmask): Rename local variables "old" and "new" to "old_sig" and "new_sig". * sort.c (main): Use XNEWVEC. * spaces.c (spaces): Cast return value of malloc(). * strndup.c (strndup): Likewise. * ternary.c (ternary_insert): Use XNEW. * xmalloc.c (malloc, realloc, calloc, sbrk): Surround declaration with an extern "C" block if __cplusplus. * xstrdup.c (xstrdup): Cast return value of memcpy(). * xstrerror.c (strerror): Enclose declaration in an extern "C" block if __cplusplus. * xstrndup.c (xstrndup): Use XNEW. Cast return value of memcpy(). git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@100115 138bc75d-0d04-0410-961f-82ee72b054a4
* Update the address and phone number of the FSF organization.nickc2005-05-101-2/+2
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@99519 138bc75d-0d04-0410-961f-82ee72b054a4
* libiberty:ian2005-03-291-0/+121
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * pex-common.c: New file. * pex-one.c: New file. * pexecute.c: New file. * pex-common.h: Include <stdio.h>. (struct pex_obj): Define. (struct pex_funcs): Define. (pex_init_common): Declare. * pex-unix.c: Rewrite. * pex-win32.c: Rewrite. * pex-djgpp.c: Rewrite. * pex-msdos.c: Rewrite. * testsuite/text-pexecute.c: New file. * pexecute.txh: Rewrite. * configure.ac: Check for wait3 and wait4. Set CHECK to really-check rather than check-cplus-dem. * functions.texi: Rebuild. * Makefile.in: Rebuild dependencies. (CFILES): Add pexecute.c, pex-common.c, pex-one.c. (REQUIRED_OFILES): Add pexecute.o, pex-common.o, pex-one.o. * testsuite/Makefile.in (really-check): New target. (check-pexecute, test-pexecute): New targets. * configure: Rebuild. include: * libiberty.h: Include <stdio.h>. (PEX_RECORD_TIMES, PEX_USE_PIPES, PEX_SAVE_TEMPS): Define. (PEX_LAST, PEX_SEARCH, PEX_SUFFIX, PEX_STDERR_TO_STDOUT): Define. (PEX_BINARY_INPUT, PEX_BINARY_OUTPUT): Define. (pex_init, pex_run, pex_read_output): Declare. (pex_get_status, pex_get_times, pex_free, pex_one): Declare. (struct pex_time): Define. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@97148 138bc75d-0d04-0410-961f-82ee72b054a4
* * Makefile.in (CFILES): Add pex-*.c.zack2003-01-241-792/+0
| | | | | | | | | | | | | | | | | | | | | | | (REQUIRED_OFILES): Change pexecute.o to @pexecute@ (CONFIGURED_OFILES): Add pex-*.o. (TEXIFILES): Add pexecute.txh. (pexecute.o): Delete rule. (pex-cygwin.o, pex-djgpp.o, pex-mpw.o, pex-msdos.o, pex-os2.o, pex-unix.o, pex-win32.o): New rules. * configure.in: Change AC_INIT argument to xmalloc.c. Compute appropriate pexecute implementation and substitute it as @pexecute@. * pexecute.c: Split up into... * pex-cygwin.c, pex-djgpp.c, pex-mpw.c, pex-msdos.c, pex-os2.c, pex-unix.c, pex-win32.c, pex-common.h, pexecute.txh: ... these new files. * functions.texi: Regenerate. * configure: Regenerate. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@61728 138bc75d-0d04-0410-961f-82ee72b054a4
* * argv.c, asprintf.c, choose-temp.c, concat.c, cplus-dem.c,dj2001-10-171-7/+7
| | | | | | | | | | ffs.c, fnmatch.txh, getruntime.c, make-temp-file.c, mkstemps.c, pexecute.c, random.c, strsitnal.c, vasprintf.c: Improve manual formatting. * functions.texi: Regenerate. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@46323 138bc75d-0d04-0410-961f-82ee72b054a4
* * Makefile.in (TEXIFILES): Add fnmatch.txh.dj2001-10-161-34/+47
| | | | | | | | | | | | | | | (maint-undoc): New. maint-tool: Add "undoc" tool. * alloca.c, argv.c, asprintf.c, choose-temp.c, concat.c, fdmatch.c, ffs.c, getruntime.c, insque.c, lbasename.c, make-temp-file.c, mkstemps.c, pexecute.c, random.c, spaces.c, strerror.s, strsignal.c, strtol.c, vasprintf.c: Add or update documentation. * fnmatch.txh: New. * functions.texi: Regenerate. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@46274 138bc75d-0d04-0410-961f-82ee72b054a4
* include:zack2000-12-081-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * safe-ctype.h: New file. libiberty: * safe-ctype.c: New file. * Makefile.in (CFILES): Add safe-ctype.c. (REQUIRED_OFILES): Add safe-ctype.o. * argv.c: Define ISBLANK and use it, not isspace. * basename.c, cplus-dem.c, fnmatch.c, pexecute.c, strtod.c, strtol.c, strtoul.c: Include safe-ctype.h, not ctype.h. Use uppercase ctype macros. Don't test ISUPPER(c)/ISLOWER(c) before calling TOLOWER(c)/TOUPPER(c). gcc: * Makefile.in (HOST_RTL): Add safe-ctype.o. (safe-ctype.o): New rule. * system.h: Include safe-ctype.h, not ctype.h. No need to wrap ctype macros. * cpphash.h: Zap IStable and related macros. Define is_* in terms of safe-ctype.h macros. * cppinit.c: Delete the IStable and all related code. * tradcpp.c: Delete is_idchar, is_idstart, is_hor_space, and is_space arrays. Delete initialize_char_syntax. Change all references to the above arrays to use macros instead. * tradcpp.h: Define is_idchar, is_idstart, is_space, and is_nvspace in terms of safe_ctype.h's macros. * tradcif.y: is_idchar, is_idstart are macros not arrays. * config/i370/i370.c, config/winnt/dirent.c, config/winnt/fixinc-nt.c, config/winnt/ld.c: Use uppercase ctype macros. If we included ctype.h, include safe-ctype.h instead. * fixinc/fixfixes.c: Use uppercase ctype macros. Don't test ISLOWER(c) before calling TOUPPER(c). * fixinc/fixincl.c (extract_quoted_files): Simplify out some gunk. * fixinc/gnu-regex.c: Include safe-ctype.h, not ctype.h. No need to wrap ctype macros. Don't test ISUPPER(x) before calling TOLOWER(x). gcc/ch: * lex.c: Don't bother checking whether ISUPPER(c) before calling TOLOWER(c). Don't bother checking whether isascii(c) before testing ISSPACE(c); ISSPACE(c) includes '\n'. gcc/f: * Make-lang.in: Link f/fini with safe-ctype.o. * bad.c: Don't test ISUPPER(c) || ISLOWER(c) before calling TOUPPER(c). * com.c: Use TOUPPER, not ffesrc_toupper. * fini.c: Don't test ISALPHA(c) before calling TOUPPER(c)/TOLOWER(c). * intrin.c: Don't test IN_CTYPE_DOMAIN(c). * src.c: Delete ffesrc_toupper_ and ffesrc_tolower_ and their initializing code; use TOUPPER and TOLOWER instead of ffesrc_toupper and ffesrc_tolower. * src.h: Don't declare ffesrc_toupper_ or ffesrc_tolower_. Don't define ffesrc_toupper or ffesrc_tolower. gcc/java: * jvgenmain.c: Use ISPRINT not isascii. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@38124 138bc75d-0d04-0410-961f-82ee72b054a4
* * pexecute.c: Don't use vfork. Initialize 'pid' before retry loop.zack2000-08-021-20/+5
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@35436 138bc75d-0d04-0410-961f-82ee72b054a4
* * pexecute.c (pexecute) [__MSDOS__]: Change __GO32__ tolaw2000-07-271-5/+15
| | | | | | | | | | | __DJGPP__. Use P_WAIT instead of constant in the spawnv* call. Cast program to 'char *' in errmsg_arg assignment. (PWAIT_ERROR): Define. (pwait): Use PWAIT_ERROR. Adjust DJGPP's status code to conform to DJGPP's WIF* macros. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@35281 138bc75d-0d04-0410-961f-82ee72b054a4
* * aclocal.m4 (libiberty_AC_DECLARE_ERRNO): New macro.law2000-07-231-0/+3
| | | | | | | | | * configure.in (libiberty_AC_DECLARE_ERRNO): Add check. * configure, config.in: Regenerate. * pexecute.c, strtol.c, strtoul.c: Declare errno if necessary. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@35199 138bc75d-0d04-0410-961f-82ee72b054a4
* * hashtab.c, partition.c, sort.c, xmemdup.c: Include string.hzack2000-05-291-0/+3
| | | | | | | | | | | | | | if HAVE_STRING_H. * pexecute.c, xexit.c: Include stdlib.h if HAVE_STDLIB_H. * objalloc.c: Include config.h. Include stdlib.h and don't declare malloc or free if HAVE_STDLIB_H. * strerror.c, strsignal.c: Include stdlib.h if HAVE_STDLIB_H, else declare malloc without prototype. Include string.h if HAVE_STRING_H, else declare memset without prototype. Don't include stddef.h. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34254 138bc75d-0d04-0410-961f-82ee72b054a4
* merge from bfdlandjason2000-03-241-2/+2
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@32729 138bc75d-0d04-0410-961f-82ee72b054a4
* 2000-01-04 Mumit Khan <khan@xraylith.wisc.edu>khan2000-01-041-1/+43
| | | | | | | | * pexecute.c: Conditionally include string.h. (fix_argv): Handle embedded whitespace in args for Mingw32. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@31214 138bc75d-0d04-0410-961f-82ee72b054a4
* * pexecute.c (pexecute): Fill in temp_base when needed.law1999-09-021-0/+2
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@29053 138bc75d-0d04-0410-961f-82ee72b054a4
* * pexecute.c: Change all references to __UWIN__ to _UWIN.law1999-04-111-4/+4
| | | | | | | | | * xmalloc.c: Likewise. (xcalloc): UWIN has sbrk. (xrealloc): Fix guard macro. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@26352 138bc75d-0d04-0410-961f-82ee72b054a4
* * pexecute.c (__CYGWIN32__): Rename tolaw1999-03-111-9/+9
| | | | | | | | | | | | | | | | (__CYGWIN__): this. * xmalloc.c: Likewise. Changes to support i386-pc-uwin. * configure.in (*-*-uwin*): Workaround for vfork bug. * configure: Regenerate. * pexecute.c (pexecute): Be like standard Unix. (pwait): Likewise. * xmalloc.c (first_break): Define. (xmalloc_set_program_name): Use. (xmalloc): Use. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@25694 138bc75d-0d04-0410-961f-82ee72b054a4
* * choose-temp.c: Don't check IN_GCC anymore.ghazi1998-12-141-11/+1
| | | | | | | | | | | | | | | | | * floatformat.c (floatformat_from_double): Use `const', not `CONST'. * memchr.c (memchr): Likewise. * memcpy.c (memcpy): Likewise. * memmove.c (memmove): Likewise. * mkstemp.c: Don't check IN_GCC anymore. * pexecute.c: Likewise. * splay-tree.c: Likewise. * strchr.c (strchr): Use `const', not `CONST'. * strrchr.c (strrchr): Likewise. * strtol.c (strtol): Likewise. * strtoul.c (strtoul): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@24307 138bc75d-0d04-0410-961f-82ee72b054a4
* * pexecute.c: Remove obsolete ifdefed cygwin code.law1998-12-041-37/+5
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@24084 138bc75d-0d04-0410-961f-82ee72b054a4
* * choose-temp.c: Always include libiberty.h. Avoid redundancies.ghazi1998-11-271-9/+0
| | | | | | | | | * cplus-dem.c: Likewise. Conform to libiberty.h. * pexecute.c: Likewise. * splay-tree.c: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23935 138bc75d-0d04-0410-961f-82ee72b054a4
* * configure.in: Call AC_HEADER_SYS_WAIT.ghazi1998-11-191-0/+3
| | | | | | | * pexecute.c: Include sys/wait.h when !IN_GCC. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23711 138bc75d-0d04-0410-961f-82ee72b054a4
* * choose-temp.c: Don't include gansidecl.h.ghazi1998-11-071-1/+0
| | | | | | | | * mkstemp.c: Likewise. * pexecute.c: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23560 138bc75d-0d04-0410-961f-82ee72b054a4
* * pexecute.c: Check HAVE_CONFIG_H, not IN_GCC, when determiningghazi1998-11-021-15/+20
| | | | | | | | | | | | | whether to include config.h. Possibly include unistd.h in the !IN_GCC case. Define VFORK_STRING as a printable function call for error messages (either "vfork" or "fork".) If HAVE_VFORK_H is defined, include vfork.h. If VMS is defined, define vfork() appropriately. Remove vfork check on USG, we're using autoconf. (pexecute): Set `errmsg_fmt' to VFORK_STRING instead of checking locally what string to use. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23499 138bc75d-0d04-0410-961f-82ee72b054a4
* * pexecute.c: Updates from gcc. Copy in gcc has been removed. Thislaw1998-09-051-15/+29
| | | | | | | is the canonical copy. Define ISSPACE if !IN_GCC. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@22243 138bc75d-0d04-0410-961f-82ee72b054a4
* Add mingw32 support.law1998-01-171-7/+142
| | | | | | | | | | | | | | * pexecute.c (pexecute): New function for mingw32. Supports pipes. (pwait): New function for mingw32. * config.table (i[3456]86-*-mingw32*): Support for i386-mingw32. * config/mt-mingw32: New file. * xmalloc.c (first_break): Not used for mingw32. (xmalloc_set_program_name): Don't use sbrk on mingw32. (xmalloc): Likewise. (xrealloc): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@17395 138bc75d-0d04-0410-961f-82ee72b054a4
* Tue Oct 14 12:01:00 1997 Mark Mitchell <mmitchell@usa.net>jason1997-10-141-3/+52
| | | | | | | | | | * cplus-dem.c (demangle_signature): Don't look for return types on constructors. Handle member template constructors. and update from devo. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@15901 138bc75d-0d04-0410-961f-82ee72b054a4
* Initial revisionjason1997-08-211-0/+580
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@14877 138bc75d-0d04-0410-961f-82ee72b054a4