cmLocalXCodeGenerator.cxx 2.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273
  1. /*============================================================================
  2. CMake - Cross Platform Makefile Generator
  3. Copyright 2000-2009 Kitware, Inc., Insight Software Consortium
  4. Distributed under the OSI-approved BSD License (the "License");
  5. see accompanying file Copyright.txt for details.
  6. This software is distributed WITHOUT ANY WARRANTY; without even the
  7. implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
  8. See the License for more information.
  9. ============================================================================*/
  10. #include "cmLocalXCodeGenerator.h"
  11. #include "cmGlobalXCodeGenerator.h"
  12. #include "cmSourceFile.h"
  13. #include "cmMakefile.h"
  14. //----------------------------------------------------------------------------
  15. cmLocalXCodeGenerator::cmLocalXCodeGenerator()
  16. {
  17. // the global generator does this, so do not
  18. // put these flags into the language flags
  19. this->EmitUniversalBinaryFlags = false;
  20. }
  21. //----------------------------------------------------------------------------
  22. cmLocalXCodeGenerator::~cmLocalXCodeGenerator()
  23. {
  24. }
  25. //----------------------------------------------------------------------------
  26. std::string
  27. cmLocalXCodeGenerator::GetTargetDirectory(cmTarget const&) const
  28. {
  29. // No per-target directory for this generator (yet).
  30. return "";
  31. }
  32. //----------------------------------------------------------------------------
  33. void cmLocalXCodeGenerator::AppendFlagEscape(std::string& flags,
  34. const char* rawFlag)
  35. {
  36. cmGlobalXCodeGenerator* gg =
  37. static_cast<cmGlobalXCodeGenerator*>(this->GlobalGenerator);
  38. gg->AppendFlag(flags, rawFlag);
  39. }
  40. //----------------------------------------------------------------------------
  41. void cmLocalXCodeGenerator::Generate()
  42. {
  43. cmLocalGenerator::Generate();
  44. cmTargets& targets = this->Makefile->GetTargets();
  45. for(cmTargets::iterator iter = targets.begin();
  46. iter != targets.end(); ++iter)
  47. {
  48. cmTarget* t = &iter->second;
  49. t->HasMacOSXRpathInstallNameDir(NULL);
  50. }
  51. }
  52. //----------------------------------------------------------------------------
  53. void cmLocalXCodeGenerator::GenerateInstallRules()
  54. {
  55. cmLocalGenerator::GenerateInstallRules();
  56. cmTargets& targets = this->Makefile->GetTargets();
  57. for(cmTargets::iterator iter = targets.begin();
  58. iter != targets.end(); ++iter)
  59. {
  60. cmTarget* t = &iter->second;
  61. t->HasMacOSXRpathInstallNameDir(NULL);
  62. }
  63. }