|
gwenhywfar
5.7.2
|
#include "gwenbuild/builders/genericbuilder_p.h"#include "gwenbuild/types/builder_be.h"#include "gwenbuild/parser/parser.h"#include <gwenhywfar/debug.h>#include <gwenhywfar/memory.h>#include <gwenhywfar/text.h>#include <string.h>
Go to the source code of this file.
|
static |
Definition at line 416 of file genericbuilder.c.
References _addBuildCommands(), _addPrepareCommands(), GWB_BUILD_CMD_FLAGS_AUTO, GWB_BuildCmd_AddFlags(), GWB_BuildCmd_new(), GWB_BuildCmd_SetBuilderName(), GWB_BuildCmd_SetFolder(), GWB_BuildCtx_AddCommand(), GWB_BuildCtx_AddInFilesToCtxAndCmd(), GWB_BuildCtx_AddOutFilesToCtxAndCmd(), GWB_Builder_GetContext(), GWB_Builder_GetInputFileList2(), GWB_Builder_GetOutputFileList2(), GWB_Context_GetCurrentBuildDir(), and GWEN_INHERIT_GETDATA.
Referenced by GWB_GenericBuilder_new().


| void _addBuildCommands | ( | GWB_BUILDER * | builder, |
| GWB_BUILD_CMD * | bcmd | ||
| ) |
Definition at line 443 of file genericbuilder.c.
References _addCommands(), and GWB_BuildCmd_GetBuildCommandList().
Referenced by _addBuildCmd().


| void _addCommands | ( | GWB_BUILDER * | builder, |
| GWB_BUILD_CMD * | bcmd, | ||
| const char * | groupName, | ||
| GWB_BUILD_SUBCMD_LIST * | cmdList | ||
| ) |
Definition at line 457 of file genericbuilder.c.
References _readArgs(), _readBuildMessage(), _readDepFile(), GWB_BUILD_CMD_FLAGS_CHECK_DATES, GWB_BUILD_CMD_FLAGS_DEL_OUTFILES, GWB_BUILD_SUBCMD_FLAGS_CHECK_DEPENDS, GWB_BUILD_SUBCMD_FLAGS_IGNORE_RESULT, GWB_BuildCmd_AddFlags(), GWB_BuildSubCmd_AddFlags(), GWB_BuildSubCmd_new(), GWB_BuildSubCmd_SetArguments(), GWB_BuildSubCmd_SetCommand(), GWEN_Buffer_free(), GWEN_Buffer_GetStart(), GWEN_Buffer_new(), GWEN_DB_ReplaceVars(), GWEN_INHERIT_GETDATA, GWEN_XMLNode_FindFirstTag(), GWEN_XMLNode_FindNextTag(), GWEN_XMLNode_GetProperty(), and NULL.
Referenced by _addBuildCommands(), and _addPrepareCommands().


| void _addMatchingFiles | ( | GWB_BUILDER * | builder, |
| GWB_FILE_LIST2 * | filesList, | ||
| const char * | pattern, | ||
| int | addAbs, | ||
| GWEN_BUFFER * | argsBuffer | ||
| ) |
Definition at line 869 of file genericbuilder.c.
References GWB_Builder_AddAbsFileNameToBuffer(), GWB_Builder_AddFileNameToBuffer(), GWB_Builder_GetContext(), GWB_File_GetName(), GWEN_Buffer_AppendString(), GWEN_Buffer_GetUsedBytes(), GWEN_Text_ComparePattern(), and NULL.
Referenced by _readArgsInputFiles(), and _readArgsOutputFiles().


| void _addPrepareCommands | ( | GWB_BUILDER * | builder, |
| GWB_BUILD_CMD * | bcmd | ||
| ) |
Definition at line 450 of file genericbuilder.c.
References _addCommands(), and GWB_BuildCmd_GetPrepareCommandList().
Referenced by _addBuildCmd().


|
static |
Definition at line 234 of file genericbuilder.c.
References _setupAfterAddingFirstInputFile(), GWB_Builder_AddInputFile(), and GWB_Builder_GetOutputFileList2().
Referenced by GWB_GenericBuilder_new().


| void _addStringListToBuffer | ( | GWEN_STRINGLIST * | sl, |
| GWEN_BUFFER * | argsBuffer | ||
| ) |
Definition at line 907 of file genericbuilder.c.
References GWEN_Buffer_AppendString(), GWEN_Buffer_GetUsedBytes(), GWEN_StringList_FirstEntry(), GWEN_StringListEntry_Data(), and GWEN_StringListEntry_Next().
Referenced by _readArgsLibraries(), and _readArgsUsedSubTargets().


|
static |
| void GWENHYWFAR_CB _freeData | ( | GWEN_UNUSED void * | bp, |
| void * | p | ||
| ) |
Definition at line 159 of file genericbuilder.c.
References GWEN_DB_Group_free(), GWEN_FREE_OBJECT, and GWEN_XMLNode_free().

|
static |
| int _isAcceptableInput | ( | GWEN_UNUSED GWB_BUILDER * | builder, |
| const GWB_FILE * | f | ||
| ) |
Definition at line 394 of file genericbuilder.c.
References GWB_File_GetExt(), GWB_File_GetFileType(), GWEN_INHERIT_GETDATA, and GWEN_StringList_HasString().

| GWEN_BUFFER * _readArgs | ( | GWB_BUILDER * | builder, |
| GWB_BUILD_CMD * | bcmd, | ||
| GWEN_XMLNODE * | xmlNode | ||
| ) |
Definition at line 606 of file genericbuilder.c.
References _readArgsLoop(), GWEN_Buffer_free(), GWEN_Buffer_GetUsedBytes(), GWEN_Buffer_new(), GWEN_XMLNode_FindFirstTag(), and NULL.
Referenced by _addCommands().


| void _readArgsDefines | ( | GWB_BUILDER * | builder, |
| GWEN_BUFFER * | argsBuffer | ||
| ) |
Definition at line 839 of file genericbuilder.c.
References GWB_Builder_GetContext(), GWB_Context_GetDefineList(), and GWB_KeyValuePair_List_WriteAllPairsToBuffer().
Referenced by _readArgsLoop().


| void _readArgsFixed | ( | GWB_BUILDER * | builder, |
| GWEN_XMLNODE * | xmlNode, | ||
| GWEN_BUFFER * | argsBuffer | ||
| ) |
Definition at line 670 of file genericbuilder.c.
References _readXmlDataIntoBufferAndExpand(), GWEN_Buffer_AppendString(), GWEN_Buffer_free(), GWEN_Buffer_GetStart(), and GWEN_INHERIT_GETDATA.
Referenced by _readArgsLoop().


| void _readArgsHaveConfigH | ( | GWB_BUILDER * | builder, |
| GWEN_BUFFER * | argsBuffer | ||
| ) |
Definition at line 852 of file genericbuilder.c.
References GWB_Builder_GetContext(), GWB_Context_GetCurrentTarget(), GWB_PROJECT_FLAGS_CONFIG_H, GWB_Project_GetFlags(), GWB_Target_GetProject(), and GWEN_Buffer_AppendString().
Referenced by _readArgsLoop().


| void _readArgsIfHasLibraries | ( | GWB_BUILDER * | builder, |
| GWB_BUILD_CMD * | bcmd, | ||
| GWEN_XMLNODE * | xmlNode, | ||
| GWEN_BUFFER * | argsBuffer | ||
| ) |
Definition at line 806 of file genericbuilder.c.
References _readArgsLoop(), GWB_Builder_GetContext(), GWB_Context_GetCurrentTarget(), GWB_Target_GetUsedLibraryNameList(), and GWEN_StringList_Count().
Referenced by _readArgsLoop().


| void _readArgsIfHasUsedSubTargets | ( | GWB_BUILDER * | builder, |
| GWB_BUILD_CMD * | bcmd, | ||
| GWEN_XMLNODE * | xmlNode, | ||
| GWEN_BUFFER * | argsBuffer | ||
| ) |
Definition at line 791 of file genericbuilder.c.
References _readArgsLoop(), GWB_Builder_GetContext(), GWB_Context_GetCurrentTarget(), GWB_Target_GetUsedTargetLinkSpecList(), and GWEN_StringList_Count().
Referenced by _readArgsLoop().


| void _readArgsIncludes | ( | GWB_BUILDER * | builder, |
| GWEN_XMLNODE * | xmlNode, | ||
| GWEN_BUFFER * | argsBuffer | ||
| ) |
Definition at line 821 of file genericbuilder.c.
References GWB_Builder_GetContext(), GWB_Context_GetIncludeList(), GWB_KeyValuePair_List_SampleValuesByKey(), GWEN_Buffer_AppendString(), GWEN_XMLNode_GetProperty(), and NULL.
Referenced by _readArgsLoop().


| void _readArgsInputFiles | ( | GWB_BUILDER * | builder, |
| GWEN_XMLNODE * | xmlNode, | ||
| GWEN_BUFFER * | argsBuffer | ||
| ) |
Definition at line 686 of file genericbuilder.c.
References _addMatchingFiles(), GWB_Builder_AddAbsFileNameToBuffer(), GWB_Builder_AddFileNameToBuffer(), GWB_Builder_GetContext(), GWB_Builder_GetInputFileList2(), GWB_File_List2_GetAt(), GWEN_XMLNode_GetIntProperty(), GWEN_XMLNode_GetProperty(), and NULL.
Referenced by _readArgsLoop().


| void _readArgsLibraries | ( | GWB_BUILDER * | builder, |
| GWEN_BUFFER * | argsBuffer | ||
| ) |
Definition at line 767 of file genericbuilder.c.
References _addStringListToBuffer(), GWB_Builder_GetContext(), GWB_Context_GetCurrentTarget(), and GWB_Target_GetUsedLibraryNameList().
Referenced by _readArgsLoop().


| void _readArgsLoop | ( | GWB_BUILDER * | builder, |
| GWB_BUILD_CMD * | bcmd, | ||
| GWEN_XMLNODE * | nArgs, | ||
| GWEN_BUFFER * | argsBuffer | ||
| ) |
Definition at line 626 of file genericbuilder.c.
References _readArgsDefines(), _readArgsFixed(), _readArgsHaveConfigH(), _readArgsIfHasLibraries(), _readArgsIfHasUsedSubTargets(), _readArgsIncludes(), _readArgsInputFiles(), _readArgsLibraries(), _readArgsOutputFiles(), _readArgsUsedSubTargets(), DBG_ERROR, GWEN_Buffer_AppendString(), GWEN_XMLNode_GetData(), GWEN_XMLNode_GetFirstTag(), GWEN_XMLNode_GetNextTag(), and NULL.
Referenced by _readArgs(), _readArgsIfHasLibraries(), and _readArgsIfHasUsedSubTargets().


| void _readArgsOutputFiles | ( | GWB_BUILDER * | builder, |
| GWEN_XMLNODE * | xmlNode, | ||
| GWEN_BUFFER * | argsBuffer | ||
| ) |
Definition at line 721 of file genericbuilder.c.
References _addMatchingFiles(), GWB_Builder_AddAbsFileNameToBuffer(), GWB_Builder_AddFileNameToBuffer(), GWB_Builder_GetContext(), GWB_Builder_GetOutputFileList2(), GWB_File_GetInstallPath(), GWB_File_List2_GetAt(), GWEN_Buffer_AppendString(), GWEN_XMLNode_GetIntProperty(), GWEN_XMLNode_GetProperty(), and NULL.
Referenced by _readArgsLoop().


| void _readArgsUsedSubTargets | ( | GWB_BUILDER * | builder, |
| GWEN_BUFFER * | argsBuffer | ||
| ) |
Definition at line 779 of file genericbuilder.c.
References _addStringListToBuffer(), GWB_Builder_GetContext(), GWB_Context_GetCurrentTarget(), and GWB_Target_GetUsedTargetLinkSpecList().
Referenced by _readArgsLoop().


| void _readBuildMessage | ( | GWB_BUILDER * | builder, |
| GWB_BUILD_SUBCMD * | cmd, | ||
| GWEN_XMLNODE * | xmlNode | ||
| ) |
Definition at line 524 of file genericbuilder.c.
References _readXmlDataIntoBufferAndExpand(), GWB_BuildSubCmd_SetBuildMessage(), GWEN_Buffer_free(), GWEN_Buffer_GetStart(), GWEN_INHERIT_GETDATA, GWEN_XMLNode_FindFirstTag(), and NULL.
Referenced by _addCommands().


|
static |
Definition at line 545 of file genericbuilder.c.
References _readMainFilename(), GWB_Builder_GetContext(), GWB_Builder_GetOutputFileList2(), GWB_BuildSubCmd_SetDepFilePath(), GWEN_Buffer_free(), GWEN_Buffer_GetStart(), GWEN_XMLNode_FindFirstTag(), and NULL.
Referenced by _addCommands().


| GWEN_BUFFER * _readMainFilename | ( | GWB_CONTEXT * | context, |
| GWEN_XMLNODE * | xmlFile, | ||
| GWB_FILE_LIST2 * | filesList | ||
| ) |
Definition at line 568 of file genericbuilder.c.
References GWB_Context_GetInitialSourceDir(), GWB_FILE_FLAGS_GENERATED, GWB_File_GetFlags(), GWB_File_GetFolder(), GWB_File_GetName(), GWB_File_List2_GetAt(), GWEN_Buffer_AppendString(), GWEN_Buffer_new(), GWEN_DIR_SEPARATOR_S, GWEN_XMLNode_GetIntProperty(), and NULL.
Referenced by _readDepFile().


| void _readMainSettingsFromXml | ( | GWB_BUILDER * | builder | ) |
Definition at line 174 of file genericbuilder.c.
References GWB_Builder_GetContext(), GWB_Context_GetVars(), GWB_Parser_ReadXmlDataIntoStringList(), GWEN_INHERIT_GETDATA, GWEN_XMLNode_FindFirstTag(), GWEN_XMLNode_GetIntProperty(), and NULL.
Referenced by GWB_GenericBuilder_new().


| GWEN_BUFFER * _readXmlDataIntoBufferAndExpand | ( | GWEN_DB_NODE * | db, |
| GWEN_XMLNODE * | xmlNode | ||
| ) |
Definition at line 364 of file genericbuilder.c.
References DBG_INFO, GWEN_Buffer_free(), GWEN_Buffer_new(), GWEN_DB_ReplaceVars(), GWEN_XMLNode_GetData(), GWEN_XMLNode_GetFirstData(), and NULL.
Referenced by _readArgsFixed(), _readBuildMessage(), _setupOutFiles(), and _setupTargetLinkSpec().


| void _setToolName | ( | GWB_BUILDER * | builder, |
| const char * | s | ||
| ) |
Definition at line 223 of file genericbuilder.c.
References GWEN_INHERIT_GETDATA, and NULL.
| void _setupAfterAddingFirstInputFile | ( | GWB_BUILDER * | builder | ) |
Definition at line 248 of file genericbuilder.c.
References _setupOutFiles(), _setupTargetLinkSpec(), GWB_Builder_GetInputFileList2(), GWB_File_GetName(), GWEN_DB_FLAGS_DEFAULT, GWEN_DB_SetCharValue(), and GWEN_INHERIT_GETDATA.
Referenced by _addSourceFile().


| void _setupOutFiles | ( | GWB_BUILDER * | builder | ) |
Definition at line 286 of file genericbuilder.c.
References _readXmlDataIntoBufferAndExpand(), GWB_Builder_AddOutputFile(), GWB_Builder_GetContext(), GWB_Context_GetCurrentBuildDir(), GWB_Context_GetCurrentTarget(), GWB_File_AddFlags(), GWB_FILE_FLAGS_GENERATED, GWB_FILE_FLAGS_INSTALL, GWB_File_List2_GetOrCreateFile(), GWB_File_SetFileType(), GWB_File_SetInstallPath(), GWB_Project_GetFileList(), GWB_Target_GetInstallPath(), GWB_Target_GetProject(), GWEN_Buffer_free(), GWEN_Buffer_GetStart(), GWEN_INHERIT_GETDATA, GWEN_XMLNode_FindFirstTag(), GWEN_XMLNode_FindNextTag(), GWEN_XMLNode_GetProperty(), and NULL.
Referenced by _setupAfterAddingFirstInputFile().


| void _setupTargetLinkSpec | ( | GWB_BUILDER * | builder | ) |
Definition at line 343 of file genericbuilder.c.
References _readXmlDataIntoBufferAndExpand(), GWB_Builder_SetTargetLinkSpec(), GWEN_Buffer_free(), GWEN_Buffer_GetStart(), GWEN_INHERIT_GETDATA, GWEN_XMLNode_FindFirstTag(), and NULL.
Referenced by _setupAfterAddingFirstInputFile().


| void _setupVariables | ( | GWB_BUILDER * | builder | ) |
Definition at line 202 of file genericbuilder.c.
References GWB_Builder_GetContext(), GWB_Context_GetCurrentRelativeDir(), GWB_Context_GetVars(), GWEN_DB_AddGroupChildren(), GWEN_DB_FLAGS_DEFAULT, GWEN_DB_SetCharValue(), and GWEN_INHERIT_GETDATA.
Referenced by GWB_GenericBuilder_new().


| GWB_BUILDER* GWB_GenericBuilder_Factory | ( | GWENBUILD * | gwenbuild, |
| GWB_CONTEXT * | context, | ||
| const char * | builderName | ||
| ) |
Definition at line 73 of file genericbuilder.c.
References DBG_ERROR, GWB_GenericBuilder_new(), GWBUILD_GetTargetIsWindows(), GWEN_Buffer_AppendString(), GWEN_Buffer_free(), GWEN_Buffer_GetStart(), GWEN_Buffer_new(), GWEN_DIR_SEPARATOR_S, GWEN_XML_FLAGS_DEFAULT, GWEN_XML_FLAGS_SIMPLE, GWEN_XML_ReadFile(), GWEN_XMLNode_FindFirstTag(), GWEN_XMLNode_free(), GWEN_XMLNode_new(), GWEN_XMLNode_UnlinkChild(), GWEN_XMLNodeTypeTag, and NULL.

| GWB_BUILDER * GWB_GenericBuilder_new | ( | GWENBUILD * | gwenbuild, |
| GWB_CONTEXT * | context, | ||
| GWEN_XMLNODE * | xmlDescr | ||
| ) |
Definition at line 127 of file genericbuilder.c.
References _addBuildCmd(), _addSourceFile(), _freeData(), _isAcceptableInput(), _readMainSettingsFromXml(), _setupVariables(), DBG_ERROR, GWB_Builder_new(), GWB_Builder_SetAddBuildCmdFn(), GWB_Builder_SetAddSourceFileFn(), GWB_Builder_SetIsAcceptableInputFn(), GWEN_DB_Group_new(), GWEN_INHERIT_SETDATA, GWEN_NEW_OBJECT, GWEN_XMLNode_GetProperty(), and NULL.
Referenced by _getBuilderByName(), and GWB_GenericBuilder_Factory().


| GWEN_INHERIT | ( | GWB_BUILDER | , |
| GWB_BUILDER_GENERIC | |||
| ) |
1.8.14