#ifndef VIETER_PACKAGE_INFO #define VIETER_PACKAGE_INFO #define FREE_STRING(sp) if (sp != NULL) free(sp) #include #include "vieter_package.h" #include "vieter_dynarray.h" typedef struct vieter_package_info { char *name; char *base; char *version; char *description; int64_t size; int64_t csize; char *url; char *arch; int64_t build_date; char *packager; char *pgpsig; int64_t pgpsigsize; vieter_dynarray *groups; vieter_dynarray *licenses; vieter_dynarray *replaces; vieter_dynarray *depends; vieter_dynarray *conflicts; vieter_dynarray *provides; vieter_dynarray *optdepends; vieter_dynarray *makedepends; vieter_dynarray *checkdepends; } vieter_package_info; /* * Allocate and initialise a pkg_info pointer to hold .PKGINFO. */ vieter_package_info *vieter_package_info_init(); /* * Parse .PKGINFO file into something usable by libvieter. */ void vieter_package_info_parse(vieter_package_info *pkg_info, char *pkg_info_str); /* * Deallocate a pkg_info pointer. */ void vieter_package_info_free(vieter_package_info *pkg_info); #endif