forked from ariadne/pkgconf
libpkgconf: personality: fixups
parent
e9324ee4bc
commit
e6ce6c8edd
|
@ -220,6 +220,7 @@ PKGCONF_API void pkgconf_client_dir_list_build(pkgconf_client_t *client, const p
|
||||||
|
|
||||||
/* personality.c */
|
/* personality.c */
|
||||||
PKGCONF_API const pkgconf_cross_personality_t *pkgconf_cross_personality_default(void);
|
PKGCONF_API const pkgconf_cross_personality_t *pkgconf_cross_personality_default(void);
|
||||||
|
PKGCONF_API pkgconf_cross_personality_t *pkgconf_cross_personality_find(const char *triplet);
|
||||||
|
|
||||||
#define PKGCONF_IS_MODULE_SEPARATOR(c) ((c) == ',' || isspace ((unsigned int)(c)))
|
#define PKGCONF_IS_MODULE_SEPARATOR(c) ((c) == ',' || isspace ((unsigned int)(c)))
|
||||||
#define PKGCONF_IS_OPERATOR_CHAR(c) ((c) == '<' || (c) == '>' || (c) == '!' || (c) == '=')
|
#define PKGCONF_IS_OPERATOR_CHAR(c) ((c) == '<' || (c) == '>' || (c) == '!' || (c) == '=')
|
||||||
|
|
|
@ -131,7 +131,7 @@ personality_fragment_func(pkgconf_cross_personality_t *p, const char *keyword, c
|
||||||
(void) lineno;
|
(void) lineno;
|
||||||
|
|
||||||
pkgconf_list_t *dest = (pkgconf_list_t *)((char *) p + offset);
|
pkgconf_list_t *dest = (pkgconf_list_t *)((char *) p + offset);
|
||||||
pkgconf_fragment_parse(NULL, dest, NULL, value);
|
pkgconf_path_split(value, dest, false);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* keep in alphabetical order! */
|
/* keep in alphabetical order! */
|
||||||
|
@ -199,6 +199,7 @@ load_personality_with_path(const char *path, const char *triplet)
|
||||||
return NULL;
|
return NULL;
|
||||||
|
|
||||||
p = calloc(sizeof(pkgconf_cross_personality_t), 1);
|
p = calloc(sizeof(pkgconf_cross_personality_t), 1);
|
||||||
|
if (triplet != NULL)
|
||||||
p->name = strdup(triplet);
|
p->name = strdup(triplet);
|
||||||
pkgconf_parser_parse(f, p, personality_parser_ops, personality_warn_func, pathbuf);
|
pkgconf_parser_parse(f, p, personality_parser_ops, personality_warn_func, pathbuf);
|
||||||
|
|
||||||
|
@ -222,13 +223,13 @@ pkgconf_cross_personality_find(const char *triplet)
|
||||||
pkgconf_node_t *n;
|
pkgconf_node_t *n;
|
||||||
pkgconf_cross_personality_t *out = NULL;
|
pkgconf_cross_personality_t *out = NULL;
|
||||||
|
|
||||||
if (!valid_triplet(triplet))
|
|
||||||
return NULL;
|
|
||||||
|
|
||||||
out = load_personality_with_path(triplet, NULL);
|
out = load_personality_with_path(triplet, NULL);
|
||||||
if (out != NULL)
|
if (out != NULL)
|
||||||
return out;
|
return out;
|
||||||
|
|
||||||
|
if (!valid_triplet(triplet))
|
||||||
|
return NULL;
|
||||||
|
|
||||||
pkgconf_path_split(PERSONALITY_PATH, &plist, true);
|
pkgconf_path_split(PERSONALITY_PATH, &plist, true);
|
||||||
|
|
||||||
PKGCONF_FOREACH_LIST_ENTRY(plist.head, n)
|
PKGCONF_FOREACH_LIST_ENTRY(plist.head, n)
|
||||||
|
|
Loading…
Reference in New Issue