collect-utils.h 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. /* Utility functions used by tools like collect2 and lto-wrapper.
  2. Copyright (C) 2009-2019 Free Software Foundation, Inc.
  3. This file is part of GCC.
  4. GCC is free software; you can redistribute it and/or modify it under
  5. the terms of the GNU General Public License as published by the Free
  6. Software Foundation; either version 3, or (at your option) any later
  7. version.
  8. GCC is distributed in the hope that it will be useful, but WITHOUT ANY
  9. WARRANTY; without even the implied warranty of MERCHANTABILITY or
  10. FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
  11. for more details.
  12. You should have received a copy of the GNU General Public License
  13. along with GCC; see the file COPYING3. If not see
  14. <http://www.gnu.org/licenses/>. */
  15. #ifndef GCC_COLLECT_UTILS_H
  16. #define GCC_COLLECT_UTILS_H
  17. /* Provided in collect-utils.c. */
  18. extern void notice (const char *, ...)
  19. __attribute__ ((format (printf, 1, 2)));
  20. extern void fatal_signal (int);
  21. extern struct pex_obj *collect_execute (const char *, char **,
  22. const char *, const char *,
  23. int, bool);
  24. extern int collect_wait (const char *, struct pex_obj *);
  25. extern void do_wait (const char *, struct pex_obj *);
  26. extern void fork_execute (const char *, char **, bool);
  27. extern void utils_cleanup (bool);
  28. extern bool debug;
  29. extern bool verbose;
  30. extern bool save_temps;
  31. /* Provided by the tool itself. */
  32. /* The name of the tool, printed in error messages. */
  33. extern const char tool_name[];
  34. /* Called by utils_cleanup. */
  35. extern void tool_cleanup (bool);
  36. extern void maybe_unlink (const char *);
  37. #endif /* GCC_COLLECT_UTILS_H */