824N/A * (c) Copyright 1991, 1994 Adobe Systems Incorporated. 824N/A * Permission to use, copy, modify, distribute, and sublicense this software 824N/A * and its documentation for any purpose and without fee is hereby granted, 824N/A * provided that the above copyright notices appear in all copies and that 824N/A * both those copyright notices and this permission notice appear in 824N/A * supporting documentation and that the name of Adobe Systems Incorporated 824N/A * not be used in advertising or publicity pertaining to distribution of the 824N/A * software without specific, written prior permission. No trademark license 824N/A * to use the Adobe trademarks is hereby granted. If the Adobe trademark 824N/A * "Display PostScript"(tm) is used to describe this software, its 824N/A * functionality or for any other purpose, such use shall be limited to a 824N/A * statement that this software works in conjunction with the Display 824N/A * PostScript system. Proper trademark attribution to reflect Adobe's 824N/A * ownership of the trademark shall be given whenever any such reference to 824N/A * the Display PostScript system is made. 824N/A * ADOBE MAKES NO REPRESENTATIONS ABOUT THE SUITABILITY OF THE SOFTWARE FOR 824N/A * ANY PURPOSE. IT IS PROVIDED "AS IS" WITHOUT EXPRESS OR IMPLIED WARRANTY. 824N/A * ADOBE DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ALL 824N/A * IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 824N/A * NON- INFRINGEMENT OF THIRD PARTY RIGHTS. IN NO EVENT SHALL ADOBE BE LIABLE 824N/A * TO YOU OR ANY OTHER PARTY FOR ANY SPECIAL, INDIRECT, OR CONSEQUENTIAL 824N/A * DAMAGES OR ANY DAMAGES WHATSOEVER WHETHER IN AN ACTION OF CONTRACT, 824N/A * NEGLIGENCE, STRICT LIABILITY OR ANY OTHER ACTION ARISING OUT OF OR IN 824N/A * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. ADOBE WILL NOT 824N/A * PROVIDE ANY TRAINING OR OTHER SUPPORT FOR THE SOFTWARE. 824N/A * Adobe, PostScript, and Display PostScript are trademarks of Adobe Systems 824N/A * Incorporated which may be registered in certain jurisdictions 824N/A * Author: Adobe Systems Incorporated 824N/A/* The max line length is really 256, but why make things that are hard 824N/A/* Command line information */ 824N/A "Failed to allocate Category record.");
824N/A "Failed to allocate Category name.");
824N/A /* Insert into alphabetical position */ 824N/A "Failed to allocate hash table.");
824N/A "Failed to allocate Duplicate record.");
824N/A "Failed to allocate Resource record.");
824N/A "Failed to allocate Resource name.");
824N/A "Failed to allocate Resource filename.");
824N/A "Failed to allocate Resource record.");
824N/A "Failed to allocate Resource name.");
824N/A "Failed to allocate Resource filename.");
824N/A "Failed to allocate Resource name.");
824N/A /* Replace "NONRESOURCE" entry with resource one */ 824N/A "%s: Warning: file %s identified as different resources\n",
824N/A /* Stick in the font size to spread out the hash table */ 824N/A "Failed to allocate BDF string");
824N/A /* Found the first , look for the second */ 824N/A if (c ==
' ' || c ==
'\t')
continue;
824N/A }
else break;
/* No close character */ 824N/A "Berkeley",
"CaslonFiveForty",
"CaslonThree",
"GaramondThree",
824N/A "ITC Berkeley Oldstyle",
"Caslon 540",
"Caslon 3",
"Garamond 3",
824N/A /* Copy the fullname into buf, enforcing one space between words. 824N/A Eliminate leading digits and spaces, ignore asterisks, if the 824N/A full name ends with 5 digits strip them, and replace periods that 824N/A aren't followed by a space with a space. If leading digits are 824N/A followed by " pt " skip that too. */ 824N/A /* From here on fullname should not be used */ 824N/A /* Done with the full name; now onto the family */ 824N/A /* Copy the family into buf, enforcing one space between words */ 824N/A /* Compensate for fonts with foundries in the full name but not the 824N/A family name by adding to the family name */ 824N/A /* From here on dst no longer points to the end of the buffer */ 824N/A /* From here on family should not be used */ 824N/A /* Now to find the face in all this */ 824N/A /* Handle Multiple Master fonts */ 824N/A /* ch points to '\0' right now */ 824N/A/* Caller must free returned line */ 824N/A "Failed to reallocate input line.");
824N/A /* Skip over list of categories */ 824N/A if (
line[0] ==
'/') {
/* Handle optional directory prefix */ 824N/A }
else break;
/* Bogus line */ 824N/A /* If we encounter an eexec, skip the rest of the file */ 824N/A /* Skip the last of the number input line */ 824N/A for (i = 0; i <
10; i++) {
824N/A /* Skip the last of the number input line */ 824N/A /* The only files we can get anything useful from without looking inside 824N/A are AFM files and prebuilt files */ 824N/A void (*
proc)(
/* FILE *file, char *fileName */);
824N/A /* Treat top level failures to open differently from subdirectories */ 824N/A "Failed to allocate file name string.");
824N/A /* If this file is in one of the input dirs, but wasn't 824N/A found, it must have been deleted since the previous run */ 824N/A /* Now do BDFSizes and Families */ 824N/A /* We know there's a comma since we put one in. Anything 824N/A before the comma is just there to make hashing work better */ 824N/A "Failed to allocate BDF name\n");
824N/A "Failed to allocate directory prefix");
824N/A "Failed to allocate directory prefix");
824N/A /* Prefixes must be absolute path names */ 824N/A static int len;
/* Rely upon being 0 initially */ 824N/A "Usage: %s [-o outputfile] [-f inputfile]... [-dir directory]...\n",
824N/A " [-e] [-i] [-nr] [-s] [-p] [-d] [-k] [-q] directory...\n");
824N/A "Failed to reallocate directory list.");
824N/A "Failed to allocate directory name.");
824N/A "Failed to allocate directory list.");
824N/A "Failed to allocat input file list.");
824N/A "%s: Cannot read stdin as both directory list and input file\n",
824N/A "Failed to allocate directory length list.");
824N/A "Failed to allocate backup file name.'");
824N/A /* Effect "rename (filename, backupname)" in BSD/Sys-V independent way */ 824N/A "%s: Warning: The output resource file contains the following\n",
824N/A " duplicates. Edit them out if you wish.\n");
824N/A /* Make two passes; the first time we just look for .upr files, and the 824N/A second time we look for everything. This gives us a better chance at 824N/A for (i = 0; i <
10; i++) {
824N/A "%s: Failed to open %s for writing: %s\n",