|
gwenhywfar
5.10.1
|
#include "gwenbuild/types/context.h"#include "gwenbuild/types/project.h"#include <gwenhywfar/xml.h>#include <gwenhywfar/db.h>#include <gwenhywfar/stringlist.h>

Go to the source code of this file.
Macros | |
| #define | GWB_PARSER_FILENAME "0BUILD" |
| #define | GWB_PARSER_SRCFILEFLAGS_ALWAYSDIST 0x00000001 |
| #define | GWB_PARSER_SRCFILEFLAGS_ISSOURCE 0x00000002 |
Typedefs | |
| typedef int(* | GWB_PARSER_PARSE_ELEMENT_FN) (GWB_PROJECT *project, GWB_CONTEXT *currentContext, GWEN_XMLNODE *xmlNode) |
| #define GWB_PARSER_FILENAME "0BUILD" |
Definition at line 21 of file parser.h.
Referenced by _parseSubdir(), and GWB_Parser_ReadBuildTree().
| #define GWB_PARSER_SRCFILEFLAGS_ALWAYSDIST 0x00000001 |
Definition at line 25 of file parser.h.
Referenced by _parseChildNodes(), and GWB_Parser_ParseSourcesOrHeaders().
| #define GWB_PARSER_SRCFILEFLAGS_ISSOURCE 0x00000002 |
Definition at line 26 of file parser.h.
Referenced by _parseChildNodes(), and GWB_Parser_ParseSourcesOrHeaders().
| typedef int(* GWB_PARSER_PARSE_ELEMENT_FN) (GWB_PROJECT *project, GWB_CONTEXT *currentContext, GWEN_XMLNODE *xmlNode) |
| GWB_TARGET* GWB_Parser_AddTargetForSourceFile | ( | GWB_PROJECT * | project, |
| GWB_CONTEXT * | currentContext, | ||
| GWBUILD_TARGETTYPE | targetType, | ||
| const char * | fileName, | ||
| const char * | fileType, | ||
| const char * | builderName, | ||
| const char * | installPath | ||
| ) |
Definition at line 1054 of file parser.c.
References GWB_Context_AddSourceFile(), GWB_Context_GetCurrentRelativeDir(), GWB_Context_SetCurrentTarget(), GWB_File_AddFlags(), GWB_FILE_FLAGS_DIST, GWB_File_List2_GetOrCreateFile(), GWB_File_SetBuilder(), GWB_File_SetFileType(), GWB_Parser_CopyContextForTarget(), GWB_Project_AddTarget(), GWB_Project_GetFileList(), GWB_Target_new(), GWB_Target_SetContext(), GWB_Target_SetId(), GWB_Target_SetInstallPath(), GWB_Target_SetName(), and GWB_Target_SetTargetType().
Referenced by _addTargetForLanguage().


| GWB_CONTEXT* GWB_Parser_CopyContextForSubdir | ( | const GWB_CONTEXT * | sourceContext, |
| const char * | folder | ||
| ) |
Definition at line 118 of file parser.c.
References GWB_Context_AddCurrentBuildDir(), GWB_Context_AddCurrentRelativeDir(), GWB_Context_AddCurrentSourceDir(), GWB_Context_ClearDefineList(), GWB_Context_ClearIncludeList(), GWB_Context_ClearSourceFileList2(), GWB_Context_dup(), GWB_Context_GetCurrentSourceDir(), GWB_Context_GetTopBuildDir(), GWB_Context_GetTopSourceDir(), GWB_Context_GetVars(), GWB_Context_InsertCurrentSourceDir(), GWB_Context_InsertTopBuildDir(), GWB_Context_InsertTopSourceDir(), GWEN_DB_DeleteGroup(), GWEN_DB_FLAGS_OVERWRITE_VARS, and GWEN_DB_SetCharValue().
Referenced by _parseSubdir().


| GWB_CONTEXT* GWB_Parser_CopyContextForTarget | ( | const GWB_CONTEXT * | sourceContext | ) |
Definition at line 153 of file parser.c.
References GWB_Context_ClearDefineList(), GWB_Context_ClearIncludeList(), GWB_Context_ClearSourceFileList2(), and GWB_Context_dup().
Referenced by GWB_Parser_AddTargetForSourceFile(), and GWB_ParseTarget().


| int GWB_Parser_ParseSourcesOrHeaders | ( | GWB_PROJECT * | project, |
| GWB_CONTEXT * | currentContext, | ||
| GWEN_XMLNODE * | xmlNode, | ||
| uint32_t | fileFlags, | ||
| const char * | defaultTypeName, | ||
| const char * | defaultBuilder | ||
| ) |
Definition at line 979 of file parser.c.
References DBG_INFO, GWB_Context_AddSourceFile(), GWB_Context_GetCurrentRelativeDir(), GWB_Context_GetVars(), GWB_File_AddFlags(), GWB_FILE_FLAGS_DIST, GWB_FILE_FLAGS_GENERATED, GWB_FILE_FLAGS_INSTALL, GWB_File_List2_GetOrCreateFile(), GWB_File_SetBuilder(), GWB_File_SetFileType(), GWB_File_SetInstallPath(), GWB_Parser_ReadXmlDataIntoStringList(), GWB_PARSER_SRCFILEFLAGS_ALWAYSDIST, GWB_PARSER_SRCFILEFLAGS_ISSOURCE, GWB_Project_GetFileList(), GWEN_StringList_FirstEntry(), GWEN_StringList_free(), GWEN_StringListEntry_Data(), GWEN_StringListEntry_Next(), GWEN_XMLNode_ExpandProperties(), GWEN_XMLNode_GetProperty(), and NULL.
Referenced by _parseChildNodes().


| int GWB_Parser_ParseSubdirs | ( | GWB_PROJECT * | project, |
| GWB_CONTEXT * | currentContext, | ||
| GWEN_XMLNODE * | xmlNode, | ||
| GWB_PARSER_PARSE_ELEMENT_FN | fn | ||
| ) |
Definition at line 367 of file parser.c.
References _parseSubdir(), DBG_ERROR, DBG_INFO, GWB_Context_GetVars(), GWB_Parser_ReadXmlDataIntoStringList(), GWEN_Directory_GetPath(), GWEN_ERROR_GENERIC, GWEN_StringList_FirstEntry(), GWEN_StringList_free(), GWEN_StringListEntry_Data(), GWEN_StringListEntry_Next(), and NULL.
Referenced by _parseChildNodes().


| int GWB_Parser_ParseWellKnownElements | ( | GWB_PROJECT * | project, |
| GWB_CONTEXT * | currentContext, | ||
| GWEN_XMLNODE * | n, | ||
| GWB_PARSER_PARSE_ELEMENT_FN | fn | ||
| ) |
Definition at line 942 of file parser.c.
References _parseIfNotVarHasValue(), _parseIfNotVarMatches(), _parseIfVarHasValue(), _parseIfVarMatches(), _parseSetVar(), _parseWriteFile(), DBG_DEBUG, DBG_ERROR, GWEN_LOGDOMAIN, GWEN_XMLNode_GetData(), and NULL.
Referenced by _parseChildNodes().


| int GWB_Parser_ParseWriteFile | ( | GWB_CONTEXT * | currentContext, |
| GWEN_XMLNODE * | xmlNode | ||
| ) |
| GWEN_XMLNODE* GWB_Parser_ReadBuildFile | ( | GWENBUILD * | gwbuild, |
| const GWB_CONTEXT * | currentContext, | ||
| const char * | fileName | ||
| ) |
Definition at line 168 of file parser.c.
References _addBuildFileNameToGwBuild(), _getAndCheckRequiredGwenVersion(), _getSourcePathForFileName(), DBG_DEBUG, DBG_ERROR, DBG_INFO, GWEN_Buffer_free(), GWEN_Buffer_GetStart(), GWEN_XML_FLAGS_DEFAULT, GWEN_XML_ReadFile(), GWEN_XMLNode_FindFirstTag(), GWEN_XMLNode_free(), GWEN_XMLNode_new(), GWEN_XMLNode_UnlinkChild(), GWEN_XMLNodeTypeTag, and NULL.
Referenced by _parseSubdir(), and GWB_Parser_ReadBuildTree().


| GWB_PROJECT* GWB_Parser_ReadBuildTree | ( | GWENBUILD * | gwbuild, |
| GWB_CONTEXT * | currentContext, | ||
| const char * | srcDir, | ||
| GWB_KEYVALUEPAIR_LIST * | givenOptionList | ||
| ) |
Definition at line 60 of file parser.c.
References DBG_ERROR, GWB_Context_GetCurrentRelativeDir(), GWB_Context_GetVars(), GWB_Context_SetCurrentSourceDir(), GWB_Context_SetInitialSourceDir(), GWB_Context_SetTopSourceDir(), GWB_File_AddFlags(), GWB_FILE_FLAGS_DIST, GWB_File_List2_GetOrCreateFile(), GWB_ParseProject(), GWB_PARSER_FILENAME, GWB_Parser_ReadBuildFile(), GWB_Project_free(), GWB_Project_GetFileList(), GWB_Project_new(), GWB_Project_SetGivenOptionList(), GWEN_DB_FLAGS_OVERWRITE_VARS, GWEN_DB_SetCharValue(), GWEN_XMLNode_FindFirstTag(), GWEN_XMLNode_free(), and NULL.
Referenced by GWB_Setup().


| GWEN_BUFFER* GWB_Parser_ReadNamedXmlDataIntoBufferAndExpand | ( | GWEN_DB_NODE * | db, |
| GWEN_XMLNODE * | xmlNode, | ||
| const char * | elem | ||
| ) |
Definition at line 345 of file parser.c.
References GWB_Parser_ReadXmlDataIntoBufferAndExpand(), GWEN_Buffer_free(), GWEN_Buffer_GetUsedBytes(), GWEN_XMLNode_FindFirstTag(), and NULL.
Referenced by GWB_ParseOption().


| GWEN_BUFFER* GWB_Parser_ReadXmlDataIntoBufferAndExpand | ( | GWEN_DB_NODE * | db, |
| GWEN_XMLNODE * | xmlNode | ||
| ) |
Definition at line 307 of file parser.c.
References DBG_INFO, GWEN_Buffer_AppendString(), GWEN_Buffer_free(), GWEN_Buffer_GetUsedBytes(), GWEN_Buffer_new(), GWEN_DB_ReplaceVars(), GWEN_XMLNode_GetData(), GWEN_XMLNode_GetFirstData(), and NULL.
Referenced by _parseAndSetBuildMessage(), _parseArg(), _parseBuildCommand(), _parseSetVar(), GWB_ParseOption(), GWB_Parser_ReadNamedXmlDataIntoBufferAndExpand(), and GWB_Parser_ReadXmlDataIntoStringList().


| GWEN_STRINGLIST* GWB_Parser_ReadXmlDataIntoStringList | ( | GWEN_DB_NODE * | db, |
| GWEN_XMLNODE * | xmlNode | ||
| ) |
Definition at line 283 of file parser.c.
References DBG_INFO, GWB_Parser_ReadXmlDataIntoBufferAndExpand(), GWEN_Buffer_free(), GWEN_Buffer_GetStart(), GWEN_StringList_fromString(), and NULL.
Referenced by _parseI18n(), _parseIncludes(), _parseLibraries(), _parseProg(), _parseUsedTargets(), _readMainSettingsFromXml(), _readSettingsFromXml(), _retrieveVariables(), GWB_ParseCheckFunctions(), GWB_ParseCheckHeaders(), GWB_Parser_ParseSourcesOrHeaders(), and GWB_Parser_ParseSubdirs().


| int GWB_Parser_ReplaceVarsBetweenAtSigns | ( | const char * | s, |
| GWEN_BUFFER * | dbuf, | ||
| GWEN_DB_NODE * | db | ||
| ) |
Definition at line 873 of file parser.c.
References DBG_ERROR, DBG_INFO, DBG_WARN, GWEN_Buffer_AppendByte(), GWEN_Buffer_AppendString(), GWEN_DB_Dump(), GWEN_DB_GetCharValue(), GWEN_ERROR_BAD_DATA, GWEN_LOGDOMAIN, and NULL.
Referenced by _readModifyWriteFile().


| void GWB_Parser_SetItemValue | ( | GWEN_DB_NODE * | db, |
| const char * | sId, | ||
| const char * | suffix, | ||
| const char * | value | ||
| ) |
Definition at line 856 of file parser.c.
References GWEN_Buffer_AppendString(), GWEN_Buffer_free(), GWEN_Buffer_GetStart(), GWEN_Buffer_new(), GWEN_DB_FLAGS_OVERWRITE_VARS, and GWEN_DB_SetCharValue().
Referenced by _callPkgConfig(), _checkVersion(), _parseLib(), _parseProg(), _setVarFunctionExists(), and _setVarHeaderExists().


1.8.14