Mercurial > cpython-lru_cache-weakref
view PC/utils/makesrc.c @ 5817:48b94de85bf3 legacy-trunk
Extensive changes by AMK.
| author | Guido van Rossum <guido@python.org> |
|---|---|
| date | Thu, 17 Jul 1997 16:29:42 +0000 |
| parents | 6c9c2ac15e4b |
| children | a1ce07218781 |
line wrap: on
line source
#include <stdio.h> #include <direct.h> #include <string.h> /* Copy files from source directories to ./src changing file names and #include names to 8x3 lower case */ char *usage = "You must be in the \"pc\" directory.\n"; char *list[] = {"..\\Include", "..\\Modules", "..\\Objects", "..\\Parser", "..\\Python", ".", 0}; main() { DIR *dpath; struct dirent *dir; int len; char **plist; char *pt1, *pt2, *name; char dest_path[256], src_path[256], buf256[256]; FILE *fpin, *fpout; for (plist = list; *plist; plist++){ if ((dpath = opendir(*plist)) == NULL){ printf(usage); return 1; } while (dir = readdir(dpath)){ name = dir->d_name; len = strlen(name); if (len > 2 && name[len - 2] == '.' && (name[len - 1] == 'c' || name[len - 1] == 'h')){ strcpy(buf256, name); if (len > 10){ buf256[8] = '.'; buf256[9] = name[len - 1]; buf256[10] = 0; } strlwr(buf256); strncpy(src_path, *plist, 256); strncat(src_path, "\\", 256); strncat(src_path, name, 256); strncpy(dest_path, ".\\src\\", 256); strncat(dest_path, buf256, 256); printf("Copying %-30s to %s\n", src_path, dest_path); fpin = fopen(src_path, "r"); fpout = fopen(dest_path, "w"); while (fgets(buf256, 256, fpin)){ if (!strncmp(buf256, "#include", 8)){ strlwr(buf256); if ((pt1 = strstr(buf256, "\"")) && (pt2 = strstr(buf256, ".")) && (*(pt2 + 1) == 'h') && (pt2 - pt1 > 9)){ for (pt1 += 9; *pt2; pt1++, pt2++) *pt1 = *pt2; *pt1 = 0; } } fputs(buf256, fpout); } fclose(fpin); fclose(fpout); } } closedir(dpath); } return 0; }
