<
classConfTrait>
57 const string& configuration_name,
69 #define SUPPORT_CONFIGURATION_OPTION(opt) \ 70 virtual string opt(void) const \ 72 return GetConfigurationOpt(m_MsvcMetaMakefile, \ 73 m_MsvcProjectMakefile, \ 78 virtual string Name(
void)
const 99ConfTrait::ConfigurationType(),
"Configuration",
"ConfigurationType");
121 return "$(IntDir)BuildLog_$(TargetName).htm";
142 stringdefines =
config.m_Debug ?
"_DEBUG;":
"NDEBUG;";
143 switch(target_type) {
145defines +=
"WIN32;_LIB;";
148defines +=
"WIN32;_CONSOLE;NCBI_APP_BUILT_AS=$(TargetName);";
151defines +=
"WIN32;_WINDOWS;_USRDLL;";
174 const string& runtimeLibraryOption,
178 constlist<string>& defines,
179 const string& project_id)
191 virtual string Name(
void)
const 193 return "VCCLCompilerTool";
196 #define SUPPORT_COMPILER_OPTION(opt) \ 197 virtual string opt(void) const \ 199 return GetCompilerOpt(m_MsvcMetaMakefile, \ 200 m_MsvcProjectMakefile, \ 219 const string& define = *p;
224 stringopt(
"PreprocessorDefinitions");
227 if(!
val.empty()) {
234 if(!
val.empty()) {
238defines +=
"%(PreprocessorDefinitions)";
257 "DebugInformationFormat",
306template <class ConfTrait >
311 const string& additional_library_directories,
312 const string& project_id,
316:m_AdditionalOptions (additional_options),
317m_AdditionalLibraryDirectories(additional_library_directories),
324 virtual string Name(
void)
const 326 return "VCLinkerTool";
330 stringoptions(m_AdditionalOptions);
335options +=
" "+ add;
340options +=
" "+ add;
345 #define SUPPORT_LINKER_OPTION(opt) \ 346 virtual string opt(void) const \ 348 return GetLinkerOpt(m_MsvcMetaMakefile, \ 349 m_MsvcProjectMakefile, \ 357virtual
stringGenerateDebugInformation(
void)
const 364 "GenerateDebugInformation",
379virtual
stringAdditionalLibraryDirectories(
void)
const 384 "AdditionalLibraryDirectories",
386 if(!add.empty() && !m_AdditionalLibraryDirectories.empty()) {
389 returnadd + m_AdditionalLibraryDirectories;
397 stringm_AdditionalOptions;
398 stringm_AdditionalLibraryDirectories;
411 #define SUPPORT_DUMMY_OPTION(opt) \ 412 virtual string opt(void) const \ 431 virtual string Name(
void)
const 433 return "VCLinkerTool";
480 virtual string Name(
void)
const 482 return "VCLibrarianTool";
485 #define SUPPORT_LIBRARIAN_OPTION(opt) \ 486 virtual string opt(void) const \ 488 return GetLibrarianOpt(m_MsvcMetaMakefile, \ 489 m_MsvcProjectMakefile, \ 528 virtual string Name(
void)
const 530 return "VCLibrarianTool";
553 virtual string Name(
void)
const 555 return "VCPreBuildEventTool";
569: m_LibDepends(lib_depends), m_MakeType(maketype)
572 virtual string Name(
void)
const 574 return "VCPreBuildEventTool";
582command_line +=
"@echo "+ echo +
" project\n";
585 if( !m_LibDepends.empty() ) {
587 ITERATE(list<CProjKey>, p, m_LibDepends) {
588 if(
tree->m_Projects.find(*p) ==
tree->m_Projects.
end()) {
589command_line +=
"@echo ERROR: This project depends on missing "+
CreateProjectName(*p) +
"\n";
590command_line +=
"exit 1\n";
622 if( !m_LibDepends.empty() ) {
625 cmd+=
"asn_prebuild.bat\"";
626 cmd+=
" \"$(OutDir)\" \"$(ConfigurationName)\" \"$(SolutionPath)\"";
628 ITERATE(list<CProjKey>, p, m_LibDepends)
634 if(!
cmd.empty()) {
635command_line +=
"@echo "+
cmd+
"\n"+
cmd;
648 #define DEFINE_NAME_ONLY_DUMMY_TOOL(C,I,N)\ 655 virtual string Name(void) const\ 661 C& operator= (const C&);\ 666 "VCCustomBuildTool");
674 "VCPostBuildEventTool");
678 "VCPreBuildEventTool");
683 "VCPreLinkEventTool");
694 template<
classDebugReleaseTrait>
708 virtual string Name(
void)
const 710 return "VCResourceCompilerTool";
718 #define SUPPORT_RESOURCE_COMPILER_OPTION(opt) \ 719 virtual string opt(void) const \ 721 return GetResourceCompilerOpt(m_MsvcMetaMakefile, \ 722 m_MsvcProjectMakefile, \ 733 returnDebugReleaseTrait::PreprocessorDefinitions();
762 virtual string Name(
void)
const 764 return "VCResourceCompilerTool";
784"VCWebServiceProxyGeneratorTool");
788"VCXMLDataGeneratorTool");
792"VCManagedWrapperGeneratorTool");
796"VCAuxiliaryManagedWrapperGeneratorTool");
CConfigurationImpl(const string &output_directory, const string &configuration_name, const IMsvcMetaMakefile &project_makefile, const IMsvcMetaMakefile &meta_makefile, const SConfigInfo &config)
const IMsvcMetaMakefile & m_MsvcMetaMakefile
virtual string BuildLogFile(void) const
virtual string CharacterSet(void) const
CConfigurationImpl & operator=(const CConfigurationImpl &)
CConfigurationImpl(const CConfigurationImpl &)
virtual string IntermediateDirectory(void) const
string m_ConfigurationName
virtual string OutputDirectory(void) const
virtual string Name(void) const
const IMsvcMetaMakefile & m_MsvcProjectMakefile
virtual string PlatformToolset(void) const
virtual string ConfigurationType(void) const
static EMsvcPlatform GetMsvcPlatform(void)
static string GetConfigNameKeyword(void)
static EMsvcVersion GetMsvcVersion(void)
const CProjectItemsTree * GetCurrentBuildTree(void) const
string GetProjectTreeRoot(void) const
pre_order_iterator end() const
string MakeFileTypeAsString(EMakeFileType type)
#define ITERATE(Type, Var, Cont)
ITERATE macro to sequence through container elements.
static string AddTrailingPathSeparator(const string &path)
Add trailing path separator, if needed.
static string ConcatPath(const string &first, const string &second)
Concatenate two parts of the path for the current OS.
#define END_NCBI_SCOPE
End previously defined NCBI scope.
#define BEGIN_NCBI_SCOPE
Define ncbi namespace.
string GetConfigurationOpt(const IMsvcMetaMakefile &meta_file, const IMsvcMetaMakefile &project_file, const string &opt, const SConfigInfo &config)
Get option with taking into account 2 makefiles : matafile and project_file.
string GetCompilerOpt(const IMsvcMetaMakefile &meta_file, const IMsvcMetaMakefile &project_file, const string &opt, const SConfigInfo &config)
Compiler.
string GetLinkerOpt(const IMsvcMetaMakefile &meta_file, const IMsvcMetaMakefile &project_file, const string &opt, const SConfigInfo &config)
Linker.
string ConfigName(const string &config)
return <config>|Win32 as needed by MSVC compiler
string CreateProjectName(const CProjKey &project_id)
Project naming schema.
Defines unified interface to application:
CProjBulderApp & GetApp(void)
access to App singleton
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4