cmTarget.h 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. /*=========================================================================
  2. Program: Insight Segmentation & Registration Toolkit
  3. Module: $RCSfile$
  4. Language: C++
  5. Date: $Date$
  6. Version: $Revision$
  7. Copyright (c) 2000 National Library of Medicine
  8. All rights reserved.
  9. See COPYRIGHT.txt for copyright details.
  10. =========================================================================*/
  11. #ifndef cmTarget_h
  12. #define cmTarget_h
  13. #include "cmStandardIncludes.h"
  14. #include "cmCustomCommand.h"
  15. /** \class cmTarget
  16. * \brief Represent a library or executable target loaded from a makefile.
  17. *
  18. * cmTarget represents a target loaded from
  19. * a makefile.
  20. */
  21. class cmTarget
  22. {
  23. public:
  24. /**
  25. * is this target a library?
  26. */
  27. bool IsALibrary() const { return m_IsALibrary; }
  28. bool GetIsALibrary() const { return m_IsALibrary; }
  29. void SetIsALibrary(bool f) { m_IsALibrary = f; }
  30. /**
  31. * Get the list of the custom commands for this target
  32. */
  33. const std::vector<cmCustomCommand> &GetCustomCommands() const {return m_CustomCommands;}
  34. std::vector<cmCustomCommand> &GetCustomCommands() {return m_CustomCommands;}
  35. /**
  36. * Get the list of the source lists used by this target
  37. */
  38. const std::vector<std::string> &GetSourceLists() const {return m_SourceLists;}
  39. std::vector<std::string> &GetSourceLists() {return m_SourceLists;}
  40. private:
  41. std::vector<cmCustomCommand> m_CustomCommands;
  42. std::vector<std::string> m_SourceLists;
  43. bool m_IsALibrary;
  44. };
  45. typedef std::map<std::string,cmTarget> cmTargets;
  46. #endif