# HG changeset patch # User Kristian H?gsberg # Date 1213043938 14400 # Node ID 060d83d8eca9aadf42409a178e4663d32abdddec # Parent 7f5d32472bef5ec4ca3ee4acb0b583cf1c79e319 Add --initdb support for rpm wrapper. diff -r 7f5d32472bef -r 060d83d8eca9 razor-root.c --- a/razor-root.c Mon Jun 09 16:14:05 2008 -0400 +++ b/razor-root.c Mon Jun 09 16:38:58 2008 -0400 @@ -53,7 +53,7 @@ set = razor_set_create(); snprintf(path, sizeof path, "%s%s/%s", root, razor_root_path, system_repo_filename); - if (stat(root, &buf) == 0) { + if (stat(path, &buf) == 0) { fprintf(stderr, "a razor install root is already initialized\n"); return -1; diff -r 7f5d32472bef -r 060d83d8eca9 rpm-razor.c --- a/rpm-razor.c Mon Jun 09 16:14:05 2008 -0400 +++ b/rpm-razor.c Mon Jun 09 16:38:58 2008 -0400 @@ -116,8 +116,10 @@ { } }; +static int option_initdb; + static const struct option database_options[] = { - { OPTION_BOOL, "initdb", 0, NULL, "initialize database", NULL }, + { OPTION_BOOL, "initdb", 0, NULL, "initialize database", &option_initdb }, { OPTION_BOOL, "rebuilddb", 0, NULL, "rebuild database inverted lists from installed package headers", NULL }, { } }; @@ -238,6 +240,13 @@ static const char system_repo_filename[] = "system.repo"; static const char *repo_filename = system_repo_filename; +static const char install_root[] = "install"; + +static void +command_initdb(int argc, const char *argv[]) +{ + razor_root_create(install_root); +} static struct razor_property * add_property_packages(struct razor_set *set, @@ -768,7 +777,9 @@ exit(0); } - if (option_verify) { + if (option_initdb) { + command_initdb(argc, argv); + } else if (option_verify) { command_verify(argc, argv); } else if (option_query) { command_query(argc, argv);