Code::Blocks  SVN r11506
Public Member Functions | Public Attributes | Protected Member Functions | Protected Attributes | Private Member Functions | List of all members
DirectCommands Class Reference

#include <directcommands.h>

Collaboration diagram for DirectCommands:

Public Member Functions

 DirectCommands (CompilerGCC *compilerPlugin, Compiler *compiler, cbProject *project, int logPageIndex=0)
 
 ~DirectCommands ()
 
wxArrayString GetPreBuildCommands (ProjectBuildTarget *target) const
 
wxArrayString GetPostBuildCommands (ProjectBuildTarget *target) const
 
wxArrayString CompileFile (ProjectBuildTarget *target, ProjectFile *pf, bool force=false) const
 
wxArrayString GetCompileFileCommand (ProjectBuildTarget *target, ProjectFile *pf) const
 
wxArrayString GetCompileSingleFileCommand (const wxString &filename) const
 This is to be used only for files not belonging to a project!!! More...
 
wxArrayString GetCompileCommands (ProjectBuildTarget *target, bool force=false) const
 
wxArrayString GetTargetCompileCommands (ProjectBuildTarget *target, bool force=false) const
 
wxArrayString GetLinkCommands (ProjectBuildTarget *target, bool force=false) const
 
wxArrayString GetTargetLinkCommands (ProjectBuildTarget *target, bool force=false) const
 
wxArrayString GetCleanCommands (ProjectBuildTarget *target, bool distclean=false) const
 
wxArrayString GetCleanSingleFileCommand (const wxString &filename) const
 This is to be used only for files not belonging to a project!!! More...
 
wxArrayString GetTargetCleanCommands (ProjectBuildTarget *target, bool distclean=false) const
 

Public Attributes

bool m_doYield
 

Protected Member Functions

bool AreExternalDepsOutdated (ProjectBuildTarget *target, const wxString &buildOutput, wxArrayString *filesMissing) const
 external deps are manually set by the user e.g. More...
 
bool IsObjectOutdated (ProjectBuildTarget *target, const pfDetails &pfd, wxString *errorStr=0) const
 
void DepsSearchStart (ProjectBuildTarget *target) const
 
MyFilesArray GetProjectFilesSortedByWeight (ProjectBuildTarget *target, bool compile, bool link) const
 
void AddCommandsToArray (const wxString &cmds, wxArrayString &array, bool isWaitCmd=false, bool isLinkCmd=false) const
 

Protected Attributes

int m_PageIndex
 
CompilerGCCm_pCompilerPlugin
 
Compilerm_pCompiler
 
cbProjectm_pProject
 
CompilerCommandGeneratorm_pGenerator
 

Private Member Functions

 DirectCommands (DirectCommands &)
 
DirectCommandsoperator= (DirectCommands &)
 

Detailed Description

Definition at line 31 of file directcommands.h.

Constructor & Destructor Documentation

◆ DirectCommands() [1/2]

DirectCommands::DirectCommands ( DirectCommands )
private

◆ DirectCommands() [2/2]

DirectCommands::DirectCommands ( CompilerGCC compilerPlugin,
Compiler compiler,
cbProject project,
int  logPageIndex = 0 
)

◆ ~DirectCommands()

DirectCommands::~DirectCommands ( )

Member Function Documentation

◆ AddCommandsToArray()

void DirectCommands::AddCommandsToArray ( const wxString cmds,
wxArrayString array,
bool  isWaitCmd = false,
bool  isLinkCmd = false 
) const
protected

◆ AreExternalDepsOutdated()

bool DirectCommands::AreExternalDepsOutdated ( ProjectBuildTarget target,
const wxString buildOutput,
wxArrayString filesMissing 
) const
protected

◆ CompileFile()

wxArrayString DirectCommands::CompileFile ( ProjectBuildTarget target,
ProjectFile pf,
bool  force = false 
) const

◆ DepsSearchStart()

void DirectCommands::DepsSearchStart ( ProjectBuildTarget target) const
protected

◆ GetCleanCommands()

wxArrayString DirectCommands::GetCleanCommands ( ProjectBuildTarget target,
bool  distclean = false 
) const

◆ GetCleanSingleFileCommand()

wxArrayString DirectCommands::GetCleanSingleFileCommand ( const wxString filename) const

◆ GetCompileCommands()

wxArrayString DirectCommands::GetCompileCommands ( ProjectBuildTarget target,
bool  force = false 
) const

◆ GetCompileFileCommand()

wxArrayString DirectCommands::GetCompileFileCommand ( ProjectBuildTarget target,
ProjectFile pf 
) const

Definition at line 194 of file directcommands.cpp.

References _(), _T, wxArrayString::Add(), AddCommandsToArray(), AppendArray(), pfCustomBuild::buildCommand, clogFull, clogNone, clogSimple, CompilerTool::command, ProjectFile::compile, COMPILER_SIMPLE_LOG, COMPILER_WAIT, ProjectFile::compilerVar, CreateDirRecursively(), ctCompileObjectCmd, ctCompileResourceCmd, ProjectFile::customBuild, LogManager::DebugLog(), pfDetails::dep_file, F(), ProjectFile::file, FileTypeOf(), ftHeader, ftResource, CompilerCommandGenerator::GenerateCommandLine(), ProjectFile::generatedFiles, Manager::Get(), CompilerFactory::GetCompiler(), CompileTargetBase::GetCompilerID(), Compiler::GetCompilerTool(), wxArrayString::GetCount(), wxFileName::GetExt(), ProjectFile::GetFileDetails(), Compiler::GetID(), Manager::GetLogManager(), wxFileName::GetShortPath(), Compiler::GetSwitches(), wxString::IsEmpty(), CompilerSwitches::logging, m_pCompiler, m_pGenerator, pfDetails::object_dir_flat_native, pfDetails::object_dir_native, pfDetails::object_file, pfDetails::object_file_absolute_native, pfDetails::object_file_flat, pfDetails::object_file_flat_absolute_native, QuoteStringIfNeeded(), ProjectFile::relativeFilename, pfDetails::source_file, pfDetails::source_file_absolute_native, pfDetails::source_file_native, CompilerSwitches::supportsPCH, UnixFilename(), pfCustomBuild::useCustomBuildCommand, CompilerSwitches::UseFlatObjects, CompilerSwitches::UseFullSourcePaths, wxString::wx_str(), wxEmptyString, and wxRemoveFile().

Referenced by CompileFile(), and GetTargetCompileCommands().

◆ GetCompileSingleFileCommand()

wxArrayString DirectCommands::GetCompileSingleFileCommand ( const wxString filename) const

◆ GetLinkCommands()

wxArrayString DirectCommands::GetLinkCommands ( ProjectBuildTarget target,
bool  force = false 
) const

◆ GetPostBuildCommands()

wxArrayString DirectCommands::GetPostBuildCommands ( ProjectBuildTarget target) const

◆ GetPreBuildCommands()

wxArrayString DirectCommands::GetPreBuildCommands ( ProjectBuildTarget target) const

◆ GetProjectFilesSortedByWeight()

MyFilesArray DirectCommands::GetProjectFilesSortedByWeight ( ProjectBuildTarget target,
bool  compile,
bool  link 
) const
protected

◆ GetTargetCleanCommands()

wxArrayString DirectCommands::GetTargetCleanCommands ( ProjectBuildTarget target,
bool  distclean = false 
) const

◆ GetTargetCompileCommands()

wxArrayString DirectCommands::GetTargetCompileCommands ( ProjectBuildTarget target,
bool  force = false 
) const

◆ GetTargetLinkCommands()

wxArrayString DirectCommands::GetTargetLinkCommands ( ProjectBuildTarget target,
bool  force = false 
) const

Definition at line 621 of file directcommands.cpp.

References _(), _T, wxArrayString::Add(), AddCommandsToArray(), AppendArray(), AreExternalDepsOutdated(), cbMessageBox(), cbThrow, wxArrayString::Clear(), clogFull, clogNone, clogSimple, COMPILER_NOTE_LOG, COMPILER_SIMPLE_LOG, COMPILER_TARGET_CHANGE, COMPILER_WARNING_LOG, CreateDirRecursively(), ctCount, ctLinkConsoleExeCmd, ctLinkDynamicCmd, ctLinkExeCmd, ctLinkNativeCmd, ctLinkStaticCmd, FileTypeOf(), ftResource, CompilerCommandGenerator::GenerateCommandLine(), Manager::Get(), CompileTargetBase::GetBasePath(), Compiler::GetCommand(), CompilerFactory::GetCompiler(), CompileTargetBase::GetCompilerID(), wxArrayString::GetCount(), ProjectFile::GetFileDetails(), wxFileName::GetFullPath(), ProjectBuildTarget::GetFullTitle(), Manager::GetMacrosManager(), wxRegEx::GetMatch(), CompileTargetBase::GetOutputFilename(), wxFileName::GetPath(), GetPostBuildCommands(), GetProjectFilesSortedByWeight(), Compiler::GetSwitches(), CompileTargetBase::GetTargetType(), CompileTargetBase::GetTitle(), wxArrayString::IsEmpty(), wxString::IsEmpty(), wxString::IsSameAs(), CompilerSwitches::logging, m_pCompiler, m_pGenerator, m_pProject, wxFileName::MakeAbsolute(), wxRegEx::Matches(), wxString::mb_str(), pfDetails::object_file, pfDetails::object_file_flat, pfDetails::object_file_native, CompilerSwitches::objectSeparator, wxString::Printf(), ProjectFile::relativeFilename, MacrosManager::ReplaceMacros(), wxString::Trim(), ttCommandsOnly, ttConsoleOnly, ttDynamicLib, ttExecutable, ttNative, ttStaticLib, UnixFilename(), CompilerSwitches::UseFlatObjects, wxString::wx_str(), wxEmptyString, and wxT.

Referenced by GetLinkCommands().

◆ IsObjectOutdated()

bool DirectCommands::IsObjectOutdated ( ProjectBuildTarget target,
const pfDetails pfd,
wxString errorStr = 0 
) const
protected

◆ operator=()

DirectCommands& DirectCommands::operator= ( DirectCommands )
private

Member Data Documentation

◆ m_doYield

bool DirectCommands::m_doYield

◆ m_PageIndex

int DirectCommands::m_PageIndex
protected

Definition at line 63 of file directcommands.h.

◆ m_pCompiler

Compiler* DirectCommands::m_pCompiler
protected

◆ m_pCompilerPlugin

CompilerGCC* DirectCommands::m_pCompilerPlugin
protected

Definition at line 64 of file directcommands.h.

◆ m_pGenerator

CompilerCommandGenerator* DirectCommands::m_pGenerator
protected

◆ m_pProject

cbProject* DirectCommands::m_pProject
protected

The documentation for this class was generated from the following files: