diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/add_repo.c | 44 | ||||
| -rw-r--r-- | src/build.c | 13 | ||||
| -rw-r--r-- | src/cla_parse.c | 152 | ||||
| -rw-r--r-- | src/cmd_out.c | 64 |
4 files changed, 135 insertions, 138 deletions
diff --git a/src/add_repo.c b/src/add_repo.c index 11752b6..52afc80 100644 --- a/src/add_repo.c +++ b/src/add_repo.c @@ -26,26 +26,26 @@ #include "vars.h" void add_repo(const char *repo, const char *repo_name) { - bool is_previous_repos = false; - char rfile_line[1024]; - char rfile_contents[8192] = {0}; - - if (file_exists(repo_file)) { - FILE *rfile = fopen(repo_file, "r"); - if (rfile) { - while (fgets(rfile_line, sizeof(rfile_line), rfile)) { - strcat(rfile_contents, rfile_line); - } - fclose(rfile); - is_previous_repos = true; - } - } - - char *previous_repos = is_previous_repos ? rfile_contents : ""; - - FILE *wfile = fopen(repo_file, "w"); - if (wfile) { - fprintf(wfile, "%srepositories[\"%s\"] = { url = \"%s\" }\n", previous_repos, repo_name, repo); - fclose(wfile); - } + bool is_previous_repos = false; + char rfile_line[1024]; + char rfile_contents[8192] = {0}; + + if (file_exists(repo_file)) { + FILE *rfile = fopen(repo_file, "r"); + if (rfile) { + while (fgets(rfile_line, sizeof(rfile_line), rfile)) { + strcat(rfile_contents, rfile_line); + } + fclose(rfile); + is_previous_repos = true; + } + } + + char *previous_repos = is_previous_repos ? rfile_contents : ""; + + FILE *wfile = fopen(repo_file, "w"); + if (wfile) { + fprintf(wfile, "%srepositories[\"%s\"] = { url = \"%s\" }\n", previous_repos, repo_name, repo); + fclose(wfile); + } }
\ No newline at end of file diff --git a/src/build.c b/src/build.c index 66b9484..fd524ea 100644 --- a/src/build.c +++ b/src/build.c @@ -25,16 +25,15 @@ #include "build.h" -#include "is_updated.h" #include "lua_build.h" #include "vars.h" void build(Pkg pkg) { - char cwd[MAX_PATH_LEN]; - getcwd(cwd, MAX_PATH_LEN); - if (strcmp(pkg.src, cwd) != 0 && !pkg.is_local) chdir(pkg.src); + char cwd[MAX_PATH_LEN]; + getcwd(cwd, MAX_PATH_LEN); + if (strcmp(pkg.src, cwd) != 0 && !pkg.is_local) chdir(pkg.src); - if (lua_build(pkg.name, pkg.target, pkg.is_local ? cwd : pkg.src)) return; - printf("%s no usable build system was found\n", print_error); - exit(EXIT_FAILURE); + if (lua_build(pkg.name, pkg.target, pkg.is_local ? cwd : pkg.src)) return; + printf("%s no usable build system was found\n", print_error); + exit(EXIT_FAILURE); }
\ No newline at end of file diff --git a/src/cla_parse.c b/src/cla_parse.c index f2e7b2e..b30202d 100644 --- a/src/cla_parse.c +++ b/src/cla_parse.c @@ -38,84 +38,84 @@ #include "vars.h" #define COMMAND(large, small, code) \ - if (strcmp(argv[i], large) == 0 || strcmp(argv[i], small) == 0) code + if (strcmp(argv[i], large) == 0 || strcmp(argv[i], small) == 0) code #define NOT_ENOUGH_ARGS(arg, next) \ - printf("%s Not enough arguments! Try: `pkgit %s [%s]`\n", \ - print_error, arg, next) + printf("%s Not enough arguments! Try: `pkgit %s [%s]`\n", \ + print_error, arg, next) void cmd_add(char **argv, int i) { - if (argv[i + 1]) { - add_repo(argv[i + 1], name_from_url(argv[i + 1])); - } else { - NOT_ENOUGH_ARGS(argv[i], "url"); - } + if (argv[i + 1]) { + add_repo(argv[i + 1], name_from_url(argv[i + 1])); + } else { + NOT_ENOUGH_ARGS(argv[i], "url"); + } } void cmd_build(int argc, char **argv, int i, Pkg pkg) { - if (argv[i + 1]) { - for (int j = i + 1; j < argc; j++) { - if (argv[j][0] == '-') continue; - pkg = create_pkg(argv[j]); - build(pkg); - } - } else { - pkg = create_pkg("."); - build(pkg); - } + if (argv[i + 1]) { + for (int j = i + 1; j < argc; j++) { + if (argv[j][0] == '-') continue; + pkg = create_pkg(argv[j]); + build(pkg); + } + } else { + pkg = create_pkg("."); + build(pkg); + } } void cmd_install(int argc, char **argv, int i, Pkg pkg) { - if (argv[i + 1]) { - for (int j = i + 1; j < argc; j++) { - if (argv[j][0] == '-') continue; - pkg = create_pkg(argv[j]); - install_pkg(pkg); - } - } else { - NOT_ENOUGH_ARGS(argv[i], "url/pkg"); - } + if (argv[i + 1]) { + for (int j = i + 1; j < argc; j++) { + if (argv[j][0] == '-') continue; + pkg = create_pkg(argv[j]); + install_pkg(pkg); + } + } else { + NOT_ENOUGH_ARGS(argv[i], "url/pkg"); + } } void cmd_remove(int argc, char **argv, int i, Pkg pkg) { - if (argv[i + 1]) { - for (int j = i + 1; j < argc; j++) { - if (argv[j][0] == '-') continue; - pkg = create_pkg(argv[j]); - remove_pkg(pkg); - } - } else { - NOT_ENOUGH_ARGS(argv[i], "url/pkg"); - } + if (argv[i + 1]) { + for (int j = i + 1; j < argc; j++) { + if (argv[j][0] == '-') continue; + pkg = create_pkg(argv[j]); + remove_pkg(pkg); + } + } else { + NOT_ENOUGH_ARGS(argv[i], "url/pkg"); + } } void mod_flags(char **argv, int i) { - for (size_t j = 1; j < strlen(argv[i]); j++) { - switch (argv[i][j]) { - case 'q': is_verbose = false; break; - case 'f': is_forced = true; break; - default: break; - } - } + for (size_t j = 1; j < strlen(argv[i]); j++) { + switch (argv[i][j]) { + case 'q': is_verbose = false; break; + case 'f': is_forced = true; break; + default: break; + } + } } void cmd_flags(int argc, char **argv, int i, Pkg pkg) { - for (size_t j = 1; j < strlen(argv[i]); j++) { - switch (argv[i][j]) { - case 'a': cmd_add(argv, i); break; - case 'b': cmd_build(argc, argv, i, pkg); break; - case 'i': cmd_install(argc, argv, i, pkg); break; - case 'r': cmd_remove(argc, argv, i, pkg); break; - case 'u': update_all(); break; - case 'd': declare(); break; - case 'l': list_pkgs(); break; - case 's': search(argv[i + 1]); break; - case 'v': printf("%s\n", version); break; - case 'h': help(); break; - case 'c': resolve_deps(); break; - default: break; - } - } + for (size_t j = 1; j < strlen(argv[i]); j++) { + switch (argv[i][j]) { + case 'a': cmd_add(argv, i); break; + case 'b': cmd_build(argc, argv, i, pkg); break; + case 'i': cmd_install(argc, argv, i, pkg); break; + case 'r': cmd_remove(argc, argv, i, pkg); break; + case 'u': update_all(); break; + case 'd': declare(); break; + case 'l': list_pkgs(); break; + case 's': search(argv[i + 1]); break; + case 'v': printf("%s\n", version); break; + case 'h': help(); break; + case 'c': resolve_deps(); break; + default: break; + } + } } void parse_flags(int argc, char **argv, Pkg pkg) { @@ -132,24 +132,24 @@ void parse_flags(int argc, char **argv, Pkg pkg) { } void parse_cmds(int argc, char **argv, Pkg pkg) { - for (int i = 1; i < argc; i++) { - COMMAND("--add", "a", { cmd_add(argv, i); }); - COMMAND("--build", "b", { cmd_build(argc, argv, i, pkg); }); - COMMAND("--install", "i", { cmd_install(argc, argv, i, pkg); }); - COMMAND("--remove", "r", { cmd_remove(argc, argv, i, pkg); }); - COMMAND("--update", "u", { update_all(); }); - COMMAND("--declare", "d", { declare(); }); - COMMAND("--list", "l", { list_pkgs(); }); - COMMAND("--search", "s", { search(argv[i + 1]); }); - COMMAND("--version", "v", { printf("%s\n", version); }); - COMMAND("--help", "h", { help(); }); - COMMAND("--check", "c", { resolve_deps(); }); - } + for (int i = 1; i < argc; i++) { + COMMAND("--add", "a", { cmd_add(argv, i); }); + COMMAND("--build", "b", { cmd_build(argc, argv, i, pkg); }); + COMMAND("--install", "i", { cmd_install(argc, argv, i, pkg); }); + COMMAND("--remove", "r", { cmd_remove(argc, argv, i, pkg); }); + COMMAND("--update", "u", { update_all(); }); + COMMAND("--declare", "d", { declare(); }); + COMMAND("--list", "l", { list_pkgs(); }); + COMMAND("--search", "s", { search(argv[i + 1]); }); + COMMAND("--version", "v", { printf("%s\n", version); }); + COMMAND("--help", "h", { help(); }); + COMMAND("--check", "c", { resolve_deps(); }); + } } void cla_parse(int argc, char **argv) { - if (!argv[1]) { help(); return; } - Pkg pkg = {0}; - parse_flags(argc, argv, pkg); - parse_cmds(argc, argv, pkg); + if (!argv[1]) { help(); return; } + Pkg pkg = {0}; + parse_flags(argc, argv, pkg); + parse_cmds(argc, argv, pkg); }
\ No newline at end of file diff --git a/src/cmd_out.c b/src/cmd_out.c index 269d6f2..bc371e0 100644 --- a/src/cmd_out.c +++ b/src/cmd_out.c @@ -26,37 +26,35 @@ #include "cmd_out.h" char* cmd_out(const char *cmd) { - FILE *pipe = popen(cmd, "r"); - if (!pipe) { - return strdup(""); - } - - char buffer[128]; - size_t total_size = 0; - size_t capacity = 256; - char *result = malloc(capacity); - if (!result) { - pclose(pipe); - return strdup(""); - } - result[0] = '\0'; - - while (fgets(buffer, sizeof(buffer), pipe) != NULL) { - size_t len = strlen(buffer); - if (total_size + len + 1 > capacity) { - capacity *= 2; - char *new_result = realloc(result, capacity); - if (!new_result) { - free(result); - pclose(pipe); - return strdup(""); - } - result = new_result; - } - strcat(result, buffer); - total_size += len; - } - - pclose(pipe); - return result; + FILE *pipe = popen(cmd, "r"); + if (!pipe) return strdup(""); + + char buffer[128]; + size_t total_size = 0; + size_t capacity = 256; + char *result = malloc(capacity); + if (!result) { + pclose(pipe); + return strdup(""); + } + result[0] = '\0'; + + while (fgets(buffer, sizeof(buffer), pipe) != NULL) { + size_t len = strlen(buffer); + if (total_size + len + 1 > capacity) { + capacity *= 2; + char *new_result = realloc(result, capacity); + if (!new_result) { + free(result); + pclose(pipe); + return strdup(""); + } + result = new_result; + } + strcat(result, buffer); + total_size += len; + } + + pclose(pipe); + return result; }
\ No newline at end of file |
