#include #include #include #include "pack.h" #define USAGE "Usage is: %s output input/s\n", argv[0] int main(int argc, char** argv) { char* packfile; char** list; uint32_t nlist; uint32_t nfiles; uint32_t i; if(argc == 1) { fprintf(stderr, "Missing output file\n"); goto usage; } packfile = argv[1]; nfiles = (uint32_t)argc - 2; argv += 2; if(nfiles == 0) { /* No files, list what it has. */ list = pack_listfiles(packfile, &nlist); fprintf(stdout, "Packfile '%s' contains:\n", packfile); for(i = 0; i < nlist; i++) { fprintf(stdout, " %04d %s\n", i, list[i]); free(list[i]); } free(list); } else { /* Create a packfile. */ pack_files(packfile, (const char**)argv, nfiles); } exit(EXIT_SUCCESS); usage: printf(USAGE); exit(EXIT_SUCCESS); }