CMakeSetup.cxx 1.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. #include "cmDSWBuilder.h"
  2. #include "cmDSPBuilder.h"
  3. #include <iostream>
  4. void SetArgs(cmPCBuilder& builder, int ac, char** av)
  5. {
  6. for(int i =2; i < ac; i++)
  7. {
  8. std::string arg = av[i];
  9. if(arg.find("-H",0) != std::string::npos)
  10. {
  11. std::string path = arg.substr(2);
  12. builder.SetHomeDirectory(path.c_str());
  13. }
  14. if(arg.find("-D",0) != std::string::npos)
  15. {
  16. std::string path = arg.substr(2);
  17. builder.SetCurrentDirectory(path.c_str());
  18. }
  19. }
  20. }
  21. main(int ac, char** av)
  22. {
  23. if(ac < 3)
  24. {
  25. std::cerr << "Usage: " << av[0] <<
  26. " Makefile.in -[DSP|DSW] -Hinsighthome -Dcurrentdir ..." << std::endl;
  27. return -1;
  28. }
  29. std::string arg = av[2];
  30. if(arg.find("-DSP", 0) != std::string::npos)
  31. {
  32. cmDSPBuilder builder;
  33. builder.SetInputMakefilePath(av[1]);
  34. SetArgs(builder, ac, av);
  35. builder.CreateDSPFile();
  36. }
  37. else
  38. {
  39. cmDSWBuilder builder;
  40. builder.SetInputMakefilePath(av[1]);
  41. SetArgs(builder, ac, av);
  42. builder.CreateDSWFile();
  43. }
  44. return 0;
  45. }