gwenhywfar 5.14.1
utils.c File Reference
#include "utils.h"
#include <gwenhywfar/debug.h>
#include <gwenhywfar/directory.h>
#include <gwenhywfar/buffer.h>
#include <unistd.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <time.h>
#include <stdio.h>
#include <stdlib.h>
#include <errno.h>
#include <ctype.h>
Include dependency graph for utils.c:

Go to the source code of this file.

Functions

static int _copyLink (const char *sSrcPath, const char *sDestPath, const struct stat *st)
static int _copyRegFile (const char *sSrcPath, const char *sDestPath, const struct stat *st)
static int _filesChanged (const char *fileName, GWEN_STRINGLIST *slFileNameList)
static GWB_KEYVALUEPAIR_LIST * _generateInstallList (const GWB_FILE_LIST2 *fileList, const char *initialSourceDir)
static int _readAndStoreNextVersionPart (const char **s, GWEN_DB_NODE *db, const char *varNamePrefix, const char *varName)
static GWEN_STRINGLIST_readBuildFileList (const char *fileName)
static int _readIntUntilPointOrHyphen (const char **ptrToStringPtr)
static void _writeProjectNameAndVersionToXml (const GWB_PROJECT *project, GWEN_XMLNODE *xmlNode)
int GWB_Utils_BuildFilesChanged (const char *fileName)
int GWB_Utils_CopyFile (const char *sSrcPath, const char *sDestPath)
GWB_FILE_LIST2 * GWB_Utils_ReadFileList2 (const char *fileName)
GWB_KEYVALUEPAIR_LIST * GWB_Utils_ReadInstallFileList (const char *fileName)
GWEN_XMLNODEGWB_Utils_ReadProjectInfoFromFile (const char *fileName)
int GWB_Utils_VersionStringToDb (GWEN_DB_NODE *db, const char *prefix, const char *s)
int GWB_Utils_VersionStringToInt (const char *s)
void GWB_Utils_VersionToDbVar (GWEN_DB_NODE *db, const char *dbVarName, int vmajor, int vminor, int vpatchlevel, int vbuild, const char *vtag)
int GWB_Utils_WriteBuildFileList (const GWENBUILD *gwenbuild, const char *fileName)
int GWB_Utils_WriteContextTreeToFile (const GWB_CONTEXT *ctx, const char *fileName)
int GWB_Utils_WriteInstallFileList (const GWB_PROJECT *project, const char *fileName)
int GWB_Utils_WriteProjectFileList (const GWB_PROJECT *project, const char *fileName)
int GWB_Utils_WriteProjectInfoToFile (const GWB_PROJECT *project, const char *fileName)
int GWB_Utils_WriteProjectToFile (const GWB_PROJECT *project, const char *fileName)

Function Documentation

◆ _copyLink()

int _copyLink ( const char * sSrcPath,
const char * sDestPath,
const struct stat * st )
static

Definition at line 504 of file utils.c.

References DBG_ERROR, DBG_INFO, GWEN_DIR_FLAGS_PUBLIC_NAME, GWEN_DIR_FLAGS_PUBLIC_PATH, GWEN_Directory_GetPath(), GWEN_ERROR_GENERIC, GWEN_PATH_FLAGS_CHECKROOT, GWEN_PATH_FLAGS_VARIABLE, and NULL.

Referenced by GWB_Utils_CopyFile().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ _copyRegFile()

int _copyRegFile ( const char * sSrcPath,
const char * sDestPath,
const struct stat * st )
static

Definition at line 551 of file utils.c.

References DBG_ERROR, DBG_INFO, GWEN_DIR_FLAGS_PUBLIC_NAME, GWEN_DIR_FLAGS_PUBLIC_PATH, GWEN_Directory_GetPath(), GWEN_PATH_FLAGS_CHECKROOT, GWEN_PATH_FLAGS_VARIABLE, GWEN_SyncIo_Helper_CopyFile(), and NULL.

Referenced by GWB_Utils_CopyFile().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ _filesChanged()

int _filesChanged ( const char * fileName,
GWEN_STRINGLIST * slFileNameList )
static

Definition at line 328 of file utils.c.

References DBG_DEBUG, DBG_ERROR, DBG_INFO, GWBUILD_GetModificationTimeOfFile(), GWEN_StringList_FirstEntry(), GWEN_StringListEntry_Data(), GWEN_StringListEntry_Next(), and NULL.

Referenced by GWB_Utils_BuildFilesChanged().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ _generateInstallList()

GWB_KEYVALUEPAIR_LIST * _generateInstallList ( const GWB_FILE_LIST2 * fileList,
const char * initialSourceDir )
static

◆ _readAndStoreNextVersionPart()

int _readAndStoreNextVersionPart ( const char ** s,
GWEN_DB_NODE * db,
const char * varNamePrefix,
const char * varName )
static

Definition at line 716 of file utils.c.

References _readIntUntilPointOrHyphen(), DBG_ERROR, GWEN_Buffer_AppendString(), GWEN_Buffer_free(), GWEN_Buffer_GetStart(), GWEN_Buffer_new(), GWEN_DB_FLAGS_OVERWRITE_VARS, GWEN_DB_SetIntValue(), GWEN_ERROR_GENERIC, and NULL.

Referenced by GWB_Utils_VersionStringToDb().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ _readBuildFileList()

◆ _readIntUntilPointOrHyphen()

int _readIntUntilPointOrHyphen ( const char ** ptrToStringPtr)
static

Definition at line 800 of file utils.c.

References DBG_ERROR, GWEN_ERROR_GENERIC, and NULL.

Referenced by _readAndStoreNextVersionPart(), and GWB_Utils_VersionStringToInt().

Here is the caller graph for this function:

◆ _writeProjectNameAndVersionToXml()

void _writeProjectNameAndVersionToXml ( const GWB_PROJECT * project,
GWEN_XMLNODE * xmlNode )
static

◆ GWB_Utils_BuildFilesChanged()

int GWB_Utils_BuildFilesChanged ( const char * fileName)

Definition at line 310 of file utils.c.

References _filesChanged(), _readBuildFileList(), and GWEN_StringList_free().

Referenced by GWB_Build(), and GWB_Prepare().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ GWB_Utils_CopyFile()

int GWB_Utils_CopyFile ( const char * sSrcPath,
const char * sDestPath )

Definition at line 462 of file utils.c.

References _copyLink(), _copyRegFile(), DBG_ERROR, DBG_INFO, GWEN_ERROR_GENERIC, and NULL.

Referenced by _writeDistFiles(), and GWB_InstallFiles().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ GWB_Utils_ReadFileList2()

GWB_FILE_LIST2 * GWB_Utils_ReadFileList2 ( const char * fileName)

Definition at line 73 of file utils.c.

References DBG_ERROR, GWB_File_List2_ReadXml(), GWEN_XML_FLAGS_DEFAULT, GWEN_XML_FLAGS_SIMPLE, GWEN_XML_ReadFile(), GWEN_XMLNode_FindFirstTag(), GWEN_XMLNode_free(), GWEN_XMLNode_new(), GWEN_XMLNodeTypeTag, and NULL.

Referenced by GWB_Clean(), and GWB_MkDist().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ GWB_Utils_ReadInstallFileList()

GWB_KEYVALUEPAIR_LIST * GWB_Utils_ReadInstallFileList ( const char * fileName)

◆ GWB_Utils_ReadProjectInfoFromFile()

GWEN_XMLNODE * GWB_Utils_ReadProjectInfoFromFile ( const char * fileName)

Definition at line 632 of file utils.c.

References DBG_ERROR, 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.

Referenced by GWB_MkDist().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ GWB_Utils_VersionStringToDb()

int GWB_Utils_VersionStringToDb ( GWEN_DB_NODE * db,
const char * prefix,
const char * s )

Definition at line 660 of file utils.c.

References _readAndStoreNextVersionPart(), DBG_ERROR, GWEN_Buffer_AppendString(), GWEN_Buffer_free(), GWEN_Buffer_GetStart(), GWEN_Buffer_new(), GWEN_DB_FLAGS_OVERWRITE_VARS, GWEN_DB_SetCharValue(), and NULL.

Referenced by _setProjectVersionFromString().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ GWB_Utils_VersionStringToInt()

int GWB_Utils_VersionStringToInt ( const char * s)

Definition at line 747 of file utils.c.

References _readIntUntilPointOrHyphen(), DBG_ERROR, GWEN_ERROR_GENERIC, and NULL.

Referenced by _getAndCheckRequiredGwenVersion().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ GWB_Utils_VersionToDbVar()

void GWB_Utils_VersionToDbVar ( GWEN_DB_NODE * db,
const char * dbVarName,
int vmajor,
int vminor,
int vpatchlevel,
int vbuild,
const char * vtag )

Definition at line 824 of file utils.c.

References GWEN_Buffer_AppendArgs(), GWEN_Buffer_AppendString(), GWEN_Buffer_free(), GWEN_Buffer_GetStart(), GWEN_Buffer_new(), GWEN_DB_FLAGS_OVERWRITE_VARS, and GWEN_DB_SetCharValue().

Referenced by _setProjectVersionFromProjectAttributes().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ GWB_Utils_WriteBuildFileList()

int GWB_Utils_WriteBuildFileList ( const GWENBUILD * gwenbuild,
const char * fileName )

◆ GWB_Utils_WriteContextTreeToFile()

int GWB_Utils_WriteContextTreeToFile ( const GWB_CONTEXT * ctx,
const char * fileName )

Definition at line 439 of file utils.c.

References DBG_ERROR, GWB_Context_toXml(), GWEN_XML_FLAGS_DEFAULT, GWEN_XML_FLAGS_SIMPLE, GWEN_XMLNode_AddChild(), GWEN_XMLNode_free(), GWEN_XMLNode_new(), GWEN_XMLNode_WriteFile(), GWEN_XMLNodeTypeTag, and NULL.

Referenced by GWB_Setup().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ GWB_Utils_WriteInstallFileList()

int GWB_Utils_WriteInstallFileList ( const GWB_PROJECT * project,
const char * fileName )

◆ GWB_Utils_WriteProjectFileList()

int GWB_Utils_WriteProjectFileList ( const GWB_PROJECT * project,
const char * fileName )

Definition at line 44 of file utils.c.

References DBG_ERROR, GWB_File_List2_WriteXml(), GWB_Project_GetFileList(), GWEN_XML_FLAGS_DEFAULT, GWEN_XML_FLAGS_SIMPLE, GWEN_XMLNode_AddChild(), GWEN_XMLNode_free(), GWEN_XMLNode_new(), GWEN_XMLNode_WriteFile(), GWEN_XMLNodeTypeTag, and NULL.

Referenced by GWB_Setup().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ GWB_Utils_WriteProjectInfoToFile()

int GWB_Utils_WriteProjectInfoToFile ( const GWB_PROJECT * project,
const char * fileName )

◆ GWB_Utils_WriteProjectToFile()

int GWB_Utils_WriteProjectToFile ( const GWB_PROJECT * project,
const char * fileName )

Definition at line 416 of file utils.c.

References DBG_ERROR, GWB_Project_toXml(), GWEN_XML_FLAGS_DEFAULT, GWEN_XML_FLAGS_SIMPLE, GWEN_XMLNode_AddChild(), GWEN_XMLNode_free(), GWEN_XMLNode_new(), GWEN_XMLNode_WriteFile(), GWEN_XMLNodeTypeTag, and NULL.

Referenced by GWB_Setup().

Here is the call graph for this function:
Here is the caller graph for this function: