1 /*=========================================================================
3 Program: CMake - Cross-Platform Makefile Generator
4 Module: $RCSfile: cmMakefileLibraryTargetGenerator.h,v $
6 Date: $Date: 2008-09-02 16:06:32 $
7 Version: $Revision: 1.9 $
9 Copyright (c) 2002 Kitware, Inc., Insight Consortium. All rights reserved.
10 See Copyright.txt or http://www.cmake.org/HTML/Copyright.html for details.
12 This software is distributed WITHOUT ANY WARRANTY; without even
13 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
14 PURPOSE. See the above copyright notices for more information.
16 =========================================================================*/
17 #ifndef cmMakefileLibraryTargetGenerator_h
18 #define cmMakefileLibraryTargetGenerator_h
20 #include "cmMakefileTargetGenerator.h"
22 class cmMakefileLibraryTargetGenerator
:
23 public cmMakefileTargetGenerator
26 cmMakefileLibraryTargetGenerator(cmTarget
* target
);
28 /* the main entry point for this class. Writes the Makefiles associated
30 virtual void WriteRuleFiles();
33 void WriteStaticLibraryRules();
34 void WriteSharedLibraryRules(bool relink
);
35 void WriteModuleLibraryRules(bool relink
);
36 void WriteLibraryRules(const char *linkRule
, const char *extraFlags
,
38 // MacOSX Framework support methods
39 void WriteFrameworkRules(bool relink
);
40 void CreateFramework(std::string
const& targetName
);
42 // Store the computd framework version for OS X Frameworks.
43 std::string FrameworkVersion
;
45 void AppendOSXVerFlag(std::string
& flags
, const char* lang
,
46 const char* name
, bool so
);