2008-05-20 14:48:54 +08:00
|
|
|
#include "cache.h"
|
|
|
|
|
|
|
|
int main(int argc, char **argv)
|
|
|
|
{
|
2009-02-07 23:08:30 +08:00
|
|
|
if (argc == 3 && !strcmp(argv[1], "normalize_path_copy")) {
|
2009-01-28 07:07:36 +08:00
|
|
|
char *buf = xmalloc(PATH_MAX + 1);
|
2009-02-07 23:08:30 +08:00
|
|
|
int rv = normalize_path_copy(buf, argv[2]);
|
|
|
|
if (rv)
|
|
|
|
buf = "++failed++";
|
2008-05-20 14:48:54 +08:00
|
|
|
puts(buf);
|
2009-02-07 23:08:27 +08:00
|
|
|
return 0;
|
2008-05-20 14:48:54 +08:00
|
|
|
}
|
|
|
|
|
2011-03-17 19:26:46 +08:00
|
|
|
if (argc >= 2 && !strcmp(argv[1], "real_path")) {
|
2008-05-20 14:49:00 +08:00
|
|
|
while (argc > 2) {
|
2011-03-17 19:26:46 +08:00
|
|
|
puts(real_path(argv[2]));
|
2008-05-20 14:49:00 +08:00
|
|
|
argc--;
|
|
|
|
argv++;
|
|
|
|
}
|
2009-02-07 23:08:27 +08:00
|
|
|
return 0;
|
2008-05-20 14:49:00 +08:00
|
|
|
}
|
|
|
|
|
2011-08-04 12:47:47 +08:00
|
|
|
if (argc >= 2 && !strcmp(argv[1], "absolute_path")) {
|
|
|
|
while (argc > 2) {
|
|
|
|
puts(absolute_path(argv[2]));
|
|
|
|
argc--;
|
|
|
|
argv++;
|
|
|
|
}
|
|
|
|
return 0;
|
|
|
|
}
|
|
|
|
|
2008-05-20 14:49:26 +08:00
|
|
|
if (argc == 4 && !strcmp(argv[1], "longest_ancestor_length")) {
|
|
|
|
int len = longest_ancestor_length(argv[2], argv[3]);
|
|
|
|
printf("%d\n", len);
|
2009-02-07 23:08:27 +08:00
|
|
|
return 0;
|
2008-05-20 14:49:26 +08:00
|
|
|
}
|
|
|
|
|
2011-08-04 12:47:48 +08:00
|
|
|
if (argc >= 4 && !strcmp(argv[1], "prefix_path")) {
|
|
|
|
char *prefix = argv[2];
|
|
|
|
int prefix_len = strlen(prefix);
|
|
|
|
int nongit_ok;
|
|
|
|
setup_git_directory_gently(&nongit_ok);
|
|
|
|
while (argc > 3) {
|
|
|
|
puts(prefix_path(prefix, prefix_len, argv[3]));
|
|
|
|
argc--;
|
|
|
|
argv++;
|
|
|
|
}
|
|
|
|
return 0;
|
|
|
|
}
|
|
|
|
|
2009-02-20 03:10:49 +08:00
|
|
|
if (argc == 4 && !strcmp(argv[1], "strip_path_suffix")) {
|
|
|
|
char *prefix = strip_path_suffix(argv[2], argv[3]);
|
|
|
|
printf("%s\n", prefix ? prefix : "(null)");
|
|
|
|
return 0;
|
|
|
|
}
|
|
|
|
|
2009-02-07 23:08:27 +08:00
|
|
|
fprintf(stderr, "%s: unknown function name: %s\n", argv[0],
|
|
|
|
argv[1] ? argv[1] : "(there was none)");
|
|
|
|
return 1;
|
2008-05-20 14:48:54 +08:00
|
|
|
}
|