);
}
-void print_usage(void)
+void print_usage(FILE *f)
{
- printf("Usage: %s [options] package\n", progname);
+ fprintf(f, "Usage: %s [options] package\n", progname);
}
void print_help(void)
{
- print_usage();
+ print_usage(stdout);
puts("Detailed help coming soon. Until then, I'll just list my options.");
for (unsigned i = 0; lopts[i].name; i++) {
const struct option *o = &lopts[i];
}
}
+void print_upkg_exports(struct upkg *pkg)
+{
+ for (unsigned i = 0; i < pkg->export_count; i++) {
+ const char *name, *package, *group, *class;
+
+ name = upkg_export_name(pkg, i);
+ class = upkg_export_class(pkg, i, &package, &group);
+
+ if (!name || !class)
+ continue;
+
+ printf("%u - %s%s%s (%s.%s)\n", i+1,
+ group ? group : "", group ? "." : "", name,
+ package, class);
+ }
+}
+
int package_info(struct upkg *pkg)
{
printf("Version: %u\n", pkg->version);
}
}
+ printf("Exports: %lu\n", pkg->export_count);
+ if (verbose >= 1) print_upkg_exports(pkg);
+ printf("Imports: %lu\n", pkg->import_count);
+
return EXIT_SUCCESS;
}
int main(int argc, char **argv)
{
struct upkg *pkg;
- unsigned mode;
+ unsigned mode = MODE_INFO;
int opt, rc = EXIT_FAILURE;
if (argc > 0) progname = argv[0];
print_help();
return EXIT_SUCCESS;
default:
- print_usage();
+ print_usage(stderr);
return EXIT_FAILURE;
}
}
if (argv[optind] == NULL) {
- print_usage();
+ print_usage(stderr);
return EXIT_FAILURE;
}