14 #include "gwenbuild/builders/gbuilderdescr_p.h" 17 #include <gwenhywfar/debug.h> 18 #include <gwenhywfar/memory.h> 19 #include <gwenhywfar/text.h> 20 #include <gwenhywfar/directory.h> 42 DBG_ERROR(
NULL,
"No builder name in XML builder description");
48 descr->builderName=strdup(s);
49 descr->xmlDescr=xmlNode;
83 free(descr->builderName);
96 return descr->builderName;
103 return descr->xmlDescr;
110 return descr->acceptedInputTypes;
117 return descr->acceptedInputExt;
134 DBG_ERROR(
NULL,
"No builder description found in file \"%s\" (%d)", fileName, rv);
139 if (xmlDescr==
NULL) {
140 DBG_ERROR(
NULL,
"No <GwenBuilder> element found in file \"%s\"", fileName);
163 GWB_GBUILDER_DESCR_LIST *descrList;
174 descrList=GWB_GBuilderDescr_List_new();
186 DBG_ERROR(
NULL,
"Error reading description from file \"%s\", ignoring", s);
189 GWB_GBuilderDescr_List_Add(descr, descrList);
205 descr=GWB_GBuilderDescr_List_First(descrList);
207 if (descr->builderName && strcasecmp(descr->builderName, name)==0)
209 descr=GWB_GBuilderDescr_List_Next(descr);
struct GWEN_STRINGLISTENTRYSTRUCT GWEN_STRINGLISTENTRY
GWEN_XMLNODE * GWB_GBuilderDescr_GetXmlDescr(const GWB_GBUILDER_DESCR *descr)
GWEN_STRINGLIST * GWB_Parser_ReadXmlDataIntoStringList(GWEN_DB_NODE *db, GWEN_XMLNODE *xmlNode)
#define GWEN_XML_FLAGS_DEFAULT
#define GWEN_XML_FLAGS_SIMPLE
const char * GWEN_XMLNode_GetProperty(const GWEN_XMLNODE *n, const char *name, const char *defaultValue)
#define GWEN_FREE_OBJECT(varname)
GWB_GBUILDER_DESCR * GWB_GBuilderDescr_new(GWEN_XMLNODE *xmlNode)
void GWB_GBuilderDescr_free(GWB_GBUILDER_DESCR *descr)
GWENHYWFAR_API int GWEN_XML_ReadFile(GWEN_XMLNODE *n, const char *filepath, uint32_t flags)
GWEN_XMLNODE * GWEN_XMLNode_new(GWEN_XMLNODE_TYPE t, const char *data)
GWENHYWFAR_API int GWEN_Directory_GetMatchingFilesRecursively(const char *folder, GWEN_STRINGLIST *sl, const char *mask)
GWEN_STRINGLISTENTRY * GWEN_StringList_FirstEntry(const GWEN_STRINGLIST *sl)
const char * GWEN_StringListEntry_Data(const GWEN_STRINGLISTENTRY *se)
void GWEN_StringList_free(GWEN_STRINGLIST *sl)
GWEN_XMLNODE * GWEN_XMLNode_FindFirstTag(const GWEN_XMLNODE *n, const char *tname, const char *pname, const char *pvalue)
#define GWEN_NEW_OBJECT(typ, varname)
struct GWEN_STRINGLISTSTRUCT GWEN_STRINGLIST
GWB_GBUILDER_DESCR_LIST * GWB_GBuilderDescr_ReadAll(const char *folder)
void GWEN_XMLNode_free(GWEN_XMLNODE *n)
void GWEN_XMLNode_UnlinkChild(GWEN_XMLNODE *n, GWEN_XMLNODE *child)
static void _readSettingsFromXml(GWB_GBUILDER_DESCR *descr)
#define DBG_ERROR(dbg_logger, format, args...)
const char * GWB_GBuilderDescr_GetBuilderName(const GWB_GBUILDER_DESCR *descr)
GWEN_STRINGLISTENTRY * GWEN_StringListEntry_Next(const GWEN_STRINGLISTENTRY *se)
GWEN_STRINGLIST * GWB_GBuilderDescr_GetAcceptedInputExt(const GWB_GBUILDER_DESCR *descr)
#define DBG_INFO(dbg_logger, format, args...)
#define GWEN_LIST_INIT(t, element)
GWB_GBUILDER_DESCR * GWB_GBuilderDescr_List_GetByName(const GWB_GBUILDER_DESCR_LIST *descrList, const char *name)
GWEN_STRINGLIST * GWB_GBuilderDescr_GetAcceptedInputTypes(const GWB_GBUILDER_DESCR *descr)
#define GWEN_LIST_FUNCTIONS(t, pr)
GWEN_STRINGLIST * GWEN_StringList_new(void)
#define GWEN_LIST_FINI(t, element)
struct GWEN__XMLNODE GWEN_XMLNODE
struct GWB_GBUILDER_DESCR GWB_GBUILDER_DESCR
GWB_GBUILDER_DESCR * _readFromFile(const char *fileName)