diff options
| author | dacctal <donotcontactmevia@email.invalid> | 2026-07-02 05:11:34 +0000 |
|---|---|---|
| committer | dacctal <donotcontactmevia@email.invalid> | 2026-07-02 05:11:34 +0000 |
| commit | 2c99a3d8d74f58e4cc7974c4092c82cd6095ff48 (patch) | |
| tree | c2aab53d5960d1b465b5362c90333da7f4c9c1ad /src | |
| parent | 2fe0443d7073e59b1e4d75f49f0a5a417678f4cd (diff) | |
asan-free checkpoint!
Diffstat (limited to 'src')
| -rw-r--r-- | src/parse_args.c (renamed from src/cla_parse.c) | 120 | ||||
| -rw-r--r-- | src/pkg_create.c | 6 |
2 files changed, 42 insertions, 84 deletions
diff --git a/src/cla_parse.c b/src/parse_args.c index 4d824f4..1746ccc 100644 --- a/src/cla_parse.c +++ b/src/parse_args.c @@ -21,13 +21,13 @@ #include <stdio.h> #include <string.h> -#include "cla_parse.h" +#include "parse_args.h" #include "globs.h" #include "log.h" #include "str.h" // #include "declare.h" -// #include "deps_resolve.h" +// #include "easter_egg.h" #include "help.h" // #include "name_from_url.h" // #include "pkg_build.h" @@ -121,55 +121,28 @@ void flags_mod(char **argv, int i) { void flags_cmd(int argc, char **argv, int i) { 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); - break; - case 'c': /*deps_resolve();*/ - printf("deps_resolve\n"); - break; - case 'd': /*declare();*/ - printf("declare\n"); - break; - case 'i': - cmd_install(argc, argv, i); - break; - case 'r': - cmd_remove(argc, argv, i); - break; - case 'u': /*update();*/ - printf("update\n"); - break; - case 'l': /*pkgs_list();*/ - printf("list\n"); - break; - case 's': /*search(argv[i + 1]);*/ - printf("search\n"); - break; - case 'v': - printf("%s\n", VERSION); - break; - case 'h': - help(); - break; - default: - break; + case 'a': cmd_add(argv, i); break; + case 'b': cmd_build(argc, argv, i); break; + case 'c': panic("not implemented"); printf("easter_egg\n"); break; + case 'd': panic("not implemented"); printf("declare\n"); break; + case 'i': cmd_install(argc, argv, i); break; + case 'r': cmd_remove(argc, argv, i); break; + case 'u': panic("not implemented"); printf("update\n"); break; + case 'l': panic("not implemented"); printf("list\n"); break; + case 's': panic("not implemented"); printf("search\n"); break; + case 'v': printf("%s\n", VERSION); break; + case 'h': help(); break; + default: break; } } } -void flags_parse(int argc, char **argv) { +void parse_flags(int argc, char **argv) { for (int i = 1; i < argc; i++) { - if (argv[i][0] != '-') - continue; + if (argv[i][0] != '-') continue; if (argv[i][1] == '-') { - if (COMMAND("--quiet", "-q")) - flags.verbose = false; - if (COMMAND("--force", "-f")) { - flags.force = true; - }; + if (COMMAND("--quiet", "-q")) flags.verbose = false; + if (COMMAND("--force", "-f")) flags.force = true; } else { flags_mod(argv, i); flags_cmd(argc, argv, i); @@ -177,46 +150,23 @@ void flags_parse(int argc, char **argv) { } } -void cmds_parse(int argc, char **argv) { +void parse_cmds(int argc, char **argv) { for (int i = 1; i < argc; i++) { - if (COMMAND("--add", "a")) { - cmd_add(argv, i); - } - if (COMMAND("--build", "b")) { - cmd_build(argc, argv, i); - } - if (COMMAND("--install", "i")) { - cmd_install(argc, argv, i); - } - if (COMMAND("--remove", "r")) { - cmd_remove(argc, argv, i); - } - if (COMMAND("--update", "u")) { - panic("not implemented"); - // update(); - } - if (COMMAND("--declare", "d")) { - // declare(); - } - if (COMMAND("--list", "l")) { - // pkgs_list(); - } - if (COMMAND("--search", "s")) { - // search(argv[i + 1]); - } - if (COMMAND("--version", "v")) { - printf(VERSION "\n"); - } - if (COMMAND("--help", "h")) { - help(); - } - if (COMMAND("--check", "c")) { - // deps_resolve - } + if (COMMAND("--add", "a")) { cmd_add(argv, i); } + if (COMMAND("--build", "b")) { cmd_build(argc, argv, i); } + if (COMMAND("--install", "i")) { cmd_install(argc, argv, i); } + if (COMMAND("--remove", "r")) { cmd_remove(argc, argv, i); } + if (COMMAND("--update", "u")) { panic("not implemented"); } + if (COMMAND("--declare", "d")) { panic("not implemented"); } + if (COMMAND("--list", "l")) { panic("not implemented"); } + if (COMMAND("--search", "s")) { panic("not implemented"); } + if (COMMAND("--version", "v")) { printf(VERSION "\n"); } + if (COMMAND("--help", "h")) { help(); } + if (COMMAND("--check", "c")) { panic("not implemented"); } } } -void cla_parse(int argc, char **argv) { +void parse_args(int argc, char **argv) { // default flags.force = false; flags.verbose = true; @@ -224,6 +174,10 @@ void cla_parse(int argc, char **argv) { help(); return; } - flags_parse(argc, argv); - cmds_parse(argc, argv); + parse_flags(argc, argv); + parse_cmds(argc, argv); +} + +void str_parse_args(str *args[]) { + if (!args[0]) { help(); return; } } diff --git a/src/pkg_create.c b/src/pkg_create.c index 9517868..ebf0745 100644 --- a/src/pkg_create.c +++ b/src/pkg_create.c @@ -45,10 +45,12 @@ static str get_pkgsrc(package_t pkg) { } package_t pkg_create(str_slc arg) { + str ver_buf = mstr("HEAD"); package_t pkg = { - .version = mstr("HEAD"), + .version = ver_buf, .is_local = false, }; + str_free(&ver_buf); char cwd[MAX_PATH_LEN]; getcwd(cwd, MAX_PATH_LEN); @@ -95,5 +97,7 @@ package_t pkg_create(str_slc arg) { exit(EXIT_FAILURE); } pkg.src = get_pkgsrc(pkg); + str_free(&cwd_str); + str_free(&dest_dir); return pkg; } |
