.
This commit is contained in:
commit
55385f8857
69 changed files with 1125 additions and 0 deletions
63
strff_test.c
Normal file
63
strff_test.c
Normal file
|
|
@ -0,0 +1,63 @@
|
|||
#include <libowfat/open.h>
|
||||
#include <libowfat/errmsg.h>
|
||||
#include <libowfat/stralloc.h>
|
||||
#include "strff.h"
|
||||
|
||||
typedef struct {
|
||||
stralloc name;
|
||||
stralloc version;
|
||||
stralloc makedeps;
|
||||
stralloc buildcmd;
|
||||
stralloc installcmd;
|
||||
} pkg;
|
||||
|
||||
static struct strff cfgff;
|
||||
|
||||
static void pkg_load(pkg *pkg, char *path)
|
||||
{
|
||||
int fd;
|
||||
fd = open_read(path);
|
||||
if (fd < 0)
|
||||
diesys(111, "open_read ", path);
|
||||
|
||||
stralloc_init(&pkg->name);
|
||||
stralloc_init(&pkg->version);
|
||||
stralloc_init(&pkg->makedeps);
|
||||
stralloc_init(&pkg->buildcmd);
|
||||
stralloc_init(&pkg->installcmd);
|
||||
strff_open(&cfgff, fd);
|
||||
|
||||
if (!strff_get(&cfgff, "name", &pkg->name))
|
||||
diesys(111, "cannot get value for name");
|
||||
if (!strff_get(&cfgff, "version", &pkg->version))
|
||||
diesys(111, "cannot get value for version");
|
||||
if (!strff_get(&cfgff, "makedeps", &pkg->makedeps))
|
||||
diesys(111, "cannot get value for makedeps");
|
||||
if (!strff_get(&cfgff, "build", &pkg->buildcmd))
|
||||
diesys(111, "cannot get value for buildcmd");
|
||||
if (!strff_get(&cfgff, "install", &pkg->installcmd))
|
||||
diesys(111, "cannot get value for installcmd");
|
||||
}
|
||||
|
||||
int main()
|
||||
{
|
||||
pkg pkg;
|
||||
pkg_load(&pkg, "./conf.strff");
|
||||
|
||||
buffer_puts(buffer_1, "name is '");
|
||||
buffer_put(buffer_1, pkg.name.s, pkg.name.len);
|
||||
buffer_puts(buffer_1, "', ");
|
||||
buffer_puts(buffer_1, "version is '");
|
||||
buffer_put(buffer_1, pkg.version.s, pkg.version.len);
|
||||
buffer_puts(buffer_1, "', ");
|
||||
buffer_puts(buffer_1, "makedeps is '");
|
||||
buffer_put(buffer_1, pkg.makedeps.s, pkg.makedeps.len);
|
||||
buffer_puts(buffer_1, "', ");
|
||||
buffer_puts(buffer_1, "buildcmd is '");
|
||||
buffer_put(buffer_1, pkg.buildcmd.s, pkg.buildcmd.len);
|
||||
buffer_puts(buffer_1, "', ");
|
||||
buffer_puts(buffer_1, "installcmd is '");
|
||||
buffer_put(buffer_1, pkg.installcmd.s, pkg.installcmd.len);
|
||||
buffer_putsflush(buffer_1, "'\n");
|
||||
return 0;
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue