Radish alpha
H
rad:z3QDZAW2FAfuLvihrhiyDC9fAD8G9
HardenedBSD Package Manager
Radicle
Git
Cache developer_mode
Baptiste Daroussin committed 11 years ago
commit f9dfaa7b2730d041b36cbb8b55da8f27df6412c9
parent 56022a2
6 files changed +23 -31
modified libpkg/pkg.c
@@ -720,7 +720,7 @@ pkg_adduid(struct pkg *pkg, const char *name, const char *uidstr)

	HASH_FIND_STR(pkg->users, name, u);
	if (u != NULL) {
-
		if (pkg_object_bool(pkg_config_get("DEVELOPER_MODE"))) {
+
		if (developer_mode) {
			pkg_emit_error("duplicate user listing: %s, fatal (developer mode)", name);
			return (EPKG_FATAL);
		} else {
@@ -759,7 +759,7 @@ pkg_addgid(struct pkg *pkg, const char *name, const char *gidstr)

	HASH_FIND_STR(pkg->groups, name, g);
	if (g != NULL) {
-
		if (pkg_object_bool(pkg_config_get("DEVELOPER_MODE"))) {
+
		if (developer_mode) {
			pkg_emit_error("duplicate group listing: %s, fatal (developer mode)", name);
			return (EPKG_FATAL);
		} else {
@@ -800,7 +800,7 @@ pkg_adddep(struct pkg *pkg, const char *name, const char *origin, const char *ve
	pkg_debug(3, "Pkg: add a new dependency origin: %s, name: %s, version: %s", origin, name, version);
	HASH_FIND_STR(pkg->deps, name, d);
	if (d != NULL) {
-
		if (pkg_object_bool(pkg_config_get("DEVELOPER_MODE"))) {
+
		if (developer_mode) {
			pkg_emit_error("%s-%s: duplicate dependency listing: %s-%s, fatal (developer mode)",
			    pkg->name, pkg->version, name, version);
			return (EPKG_FATAL);
@@ -869,7 +869,7 @@ pkg_addfile_attr(struct pkg *pkg, const char *path, const char *sha256, const ch
	if (check_duplicates) {
		HASH_FIND_STR(pkg->files, path, f);
		if (f != NULL) {
-
			if (pkg_object_bool(pkg_config_get("DEVELOPER_MODE"))) {
+
			if (developer_mode) {
				pkg_emit_error("duplicate file listing: %s, fatal (developer mode)", f->path);
				return (EPKG_FATAL);
			} else {
@@ -910,7 +910,7 @@ pkg_addconfig_file(struct pkg *pkg, const char *path, const char *content)

	HASH_FIND_STR(pkg->config_files, path, f);
	if (f != NULL) {
-
		if (pkg_object_bool(pkg_config_get("DEVELOPER_MODE"))) {
+
		if (developer_mode) {
			pkg_emit_error("duplicate file listing: %s, fatal (developer mode)", f->path);
			return (EPKG_FATAL);
		} else {
@@ -938,7 +938,7 @@ pkg_strel_add(struct pkg_strel **list, const char *val, const char *title)

	LL_FOREACH(*list, c) {
		if (strcmp(c->value, val) == 0) {
-
			if (pkg_object_bool(pkg_config_get("DEVELOPER_MODE"))) {
+
			if (developer_mode) {
				pkg_emit_error("duplicate %s listing: %s, fatal"
				    " (developer mode)", title, val);
				return (EPKG_FATAL);
@@ -976,7 +976,7 @@ pkg_adddir_attr(struct pkg *pkg, const char *path, const char *uname, const char
	if (check_duplicates) {
		HASH_FIND_STR(pkg->dirs, path, d);
		if (d != NULL) {
-
			if (pkg_object_bool(pkg_config_get("DEVELOPER_MODE"))) {
+
			if (developer_mode) {
				pkg_emit_error("duplicate directory listing: %s, fatal (developer mode)", d->path);
				return (EPKG_FATAL);
			} else {
@@ -1169,7 +1169,7 @@ pkg_addoption(struct pkg *pkg, const char *key, const char *value)
		pkg_option_new(&o);
		o->key = strdup(key);
	} else if ( o->value != NULL) {
-
		if (pkg_object_bool(pkg_config_get("DEVELOPER_MODE"))) {
+
		if (developer_mode) {
			pkg_emit_error("duplicate options listing: %s, fatal (developer mode)", key);
			return (EPKG_FATAL);
		} else {
@@ -1205,7 +1205,7 @@ pkg_addoption_default(struct pkg *pkg, const char *key,
		pkg_option_new(&o);
		o->key = strdup(key);
	} else if ( o->default_value != NULL) {
-
		if (pkg_object_bool(pkg_config_get("DEVELOPER_MODE"))) {
+
		if (developer_mode) {
			pkg_emit_error("duplicate default value for option: %s, fatal (developer mode)", key);
			return (EPKG_FATAL);
		} else {
@@ -1241,7 +1241,7 @@ pkg_addoption_description(struct pkg *pkg, const char *key,
		pkg_option_new(&o);
		o->key = strdup(key);
	} else if ( o->description != NULL) {
-
		if (pkg_object_bool(pkg_config_get("DEVELOPER_MODE"))) {
+
		if (developer_mode) {
			pkg_emit_error("duplicate description for option: %s, fatal (developer mode)", key);
			return (EPKG_FATAL);
		} else {
@@ -1378,7 +1378,7 @@ pkg_kv_add(struct pkg_kv **list, const char *key, const char *val, const char *t

	LL_FOREACH(*list, kv) {
		if (strcmp(kv->key, key) == 0) {
-
			if (pkg_object_bool(pkg_config_get("DEVELOPER_MODE"))) {
+
			if (developer_mode) {
				pkg_emit_error("duplicate %s: %s, fatal"
				    " (developer mode)", title, key);
				return (EPKG_FATAL);
modified libpkg/pkg_config.c
@@ -64,6 +64,7 @@

int eventpipe = -1;
int64_t debug_level = 0;
+
bool developer_mode = false;

struct config_entry {
	uint8_t type;
@@ -989,6 +990,7 @@ pkg_ini(const char *path, const char *reposdir, pkg_init_flags flags)
		connect_evpipe(evpipe);

	debug_level = pkg_object_int(pkg_config_get("DEBUG_LEVEL"));
+
	developer_mode = pkg_object_bool(pkg_config_get("DEVELOPER_MODE"));

	it = NULL;
	object = ucl_object_find_key(config, "PKG_ENV");
modified libpkg/pkg_create.c
@@ -48,7 +48,6 @@ pkg_create_from_dir(struct pkg *pkg, const char *root,
	struct pkg_dir	*dir = NULL;
	char		*m;
	int		 ret;
-
	bool		 developer;
	struct stat	 st;
	char		 sha256[SHA256_DIGEST_LENGTH * 2 + 1];
	int64_t		 flatsize = 0;
@@ -145,8 +144,7 @@ pkg_create_from_dir(struct pkg *pkg, const char *root,

		ret = packing_append_file_attr(pkg_archive, fpath, file->path,
		    file->uname, file->gname, file->perm);
-
		developer = pkg_object_bool(pkg_config_get("DEVELOPER_MODE"));
-
		if (developer && ret != EPKG_OK)
+
		if (developer_mode && ret != EPKG_OK)
			return (ret);
	}

@@ -156,8 +154,7 @@ pkg_create_from_dir(struct pkg *pkg, const char *root,

		ret = packing_append_file_attr(pkg_archive, fpath, dir->path,
		    dir->uname, dir->gname, dir->perm);
-
		developer = pkg_object_bool(pkg_config_get("DEVELOPER_MODE"));
-
		if (developer && ret != EPKG_OK)
+
		if (developer_mode && ret != EPKG_OK)
			return (ret);
	}

modified libpkg/pkg_elf.c
@@ -230,10 +230,8 @@ analyse_elf(struct pkg *pkg, const char *fpath,
	const char *myarch;
	const char *shlib;

-
	bool developer = false;
	bool is_shlib = false;

-
	developer = pkg_object_bool(pkg_config_get("DEVELOPER_MODE"));
	myarch = pkg_object_string(pkg_config_get("ABI"));

	int fd;
@@ -261,7 +259,7 @@ analyse_elf(struct pkg *pkg, const char *fpath,
		goto cleanup;
	}

-
	if (developer)
+
	if (developer_mode)
		pkg->flags |= PKG_CONTAINS_ELF_OBJECTS;

	if (gelf_getehdr(e, &elfhdr) == NULL) {
@@ -446,9 +444,7 @@ pkg_analyse_files(struct pkgdb *db, struct pkg *pkg, const char *stage)
	struct pkg_shlib *sh, *shtmp, *found;
	int ret = EPKG_OK;
	char fpath[MAXPATHLEN];
-
	bool developer = false, failures = false;
-

-
	developer = pkg_object_bool(pkg_config_get("DEVELOPER_MODE"));
+
	bool failures = false;

	pkg_list_free(pkg, PKG_SHLIBS_REQUIRED);
	pkg_list_free(pkg, PKG_SHLIBS_PROVIDED);
@@ -463,7 +459,7 @@ pkg_analyse_files(struct pkgdb *db, struct pkg *pkg, const char *stage)
		goto cleanup;

	/* Assume no architecture dependence, for contradiction */
-
	if (developer)
+
	if (developer_mode)
		pkg->flags &= ~(PKG_CONTAINS_ELF_OBJECTS |
				PKG_CONTAINS_STATIC_LIBS |
				PKG_CONTAINS_H_OR_LA);
@@ -475,7 +471,7 @@ pkg_analyse_files(struct pkgdb *db, struct pkg *pkg, const char *stage)
			strlcpy(fpath, file->path, sizeof(fpath));

		ret = analyse_elf(pkg, fpath, add_shlibs_to_pkg, db);
-
		if (developer) {
+
		if (developer_mode) {
			if (ret != EPKG_OK && ret != EPKG_END) {
				failures = true;
				continue;
modified libpkg/pkg_ports.c
@@ -235,7 +235,6 @@ dir(struct plist *p, char *line, struct file_attr *a)
	char stagedpath[MAXPATHLEN];
	char *testpath;
	struct stat st;
-
	bool developer;
	int ret = EPKG_OK;

	len = strlen(line);
@@ -260,8 +259,7 @@ dir(struct plist *p, char *line, struct file_attr *a)
		pkg_emit_errno("lstat", testpath);
		if (p->stage != NULL)
			ret = EPKG_FATAL;
-
		developer = pkg_object_bool(pkg_config_get("DEVELOPER_MODE"));
-
		if (developer) {
+
		if (developer_mode) {
			pkg_emit_developer_mode("Plist error: @dirrm %s", line);
			ret = EPKG_FATAL;
		}
@@ -290,7 +288,7 @@ warn_deprecated_dir(void)
		return;
	warned_deprecated_dir = true;

-
	if (pkg_object_bool(pkg_config_get("DEVELOPER_MODE")))
+
	if (developer_mode)
		pkg_emit_error("Warning: @dirrm[try] is deprecated, please"
		    " use @dir");
}
@@ -313,7 +311,6 @@ meta_file(struct plist *p, char *line, struct file_attr *a, bool is_config)
	struct stat st;
	char *buf;
	bool regular = false;
-
	bool developer;
	char sha256[SHA256_DIGEST_LENGTH * 2 + 1];
	int ret = EPKG_OK;

@@ -338,8 +335,7 @@ meta_file(struct plist *p, char *line, struct file_attr *a, bool is_config)
		pkg_emit_errno("lstat", testpath);
		if (p->stage != NULL)
			ret = EPKG_FATAL;
-
		developer = pkg_object_bool(pkg_config_get("DEVELOPER_MODE"));
-
		if (developer) {
+
		if (developer_mode) {
			pkg_emit_developer_mode("Plist error, missing file: %s", line);
			ret = EPKG_FATAL;
		}
modified libpkg/private/pkg.h
@@ -117,6 +117,7 @@

extern int eventpipe;
extern int64_t debug_level;
+
extern bool developer_mode;

struct pkg_repo_it;
struct pkg_repo;