dolib.c 715 B

123456789101112131415161718192021222324252627282930313233343536
  1. /*
  2. * Copyright © 2010 Université Bordeaux 1
  3. * See COPYING in top-level directory.
  4. */
  5. /* Wrapper to avoid msys' tendency to turn / into \ and : into ; */
  6. #include <unistd.h>
  7. #include <stdio.h>
  8. #include <stdlib.h>
  9. int main(int argc, char *argv[]) {
  10. char *prog, *arch, *def, *name, *lib;
  11. char s[1024];
  12. if (argc != 6) {
  13. fprintf(stderr,"bad number of arguments");
  14. exit(EXIT_FAILURE);
  15. }
  16. prog = argv[1];
  17. arch = argv[2];
  18. def = argv[3];
  19. name = argv[4];
  20. lib = argv[5];
  21. snprintf(s, sizeof(s), "\"%s\" /machine:%s /def:%s /name:%s /out:%s",
  22. prog, arch, def, name, lib);
  23. if (system(s)) {
  24. fprintf(stderr, "%s failed\n", s);
  25. exit(EXIT_FAILURE);
  26. }
  27. exit(EXIT_SUCCESS);
  28. }