---
name: "makepsres"
section: "1x"
platform: "linux"
package: "xutils"
version: "4.3.0.dfsg.1-14sarge7"
release: "Debian 3.1 (Sarge)"
platforms: ["linux"]
url: "https://new.carta.tech/makepsres/1x"
---

# makepsres(1x)

Build PostScript resource database file.

## NAME

makepsres - Build PostScript resource database file.

## SYNOPSIS

**makepsres** \[ *options* \] *directory ...*

## DESCRIPTION

**makepsres** creates PostScript language resource database files. Resource database files can be used to  specify the location of resources that are used by the font selection  panel and other Adobe software. For a complete description of the  resource location facilities in the Display PostScript system, see Appendix A and Appendix B of "Display PostScript Toolkit for X" in *Programming the Display PostScript System with X.*

**makepsres** creates a resource database file named  *PSres.upr* that contains all the resources in all the *directory* path names specified on the command line.

If the list of directories contains  **- ,** **makepsres** reads from  *stdin* and expects a list of directories separated by space, tab, or newline.

If the list of directories is empty, it is taken to be the current directory.

If all specified directories have a common initial prefix,  **makepsres** extracts it as a directory prefix in the new resource database file.

**makepsres** normally acts recursively; it looks for resource files in subdirectories of  any specified directory. This behavior can be overridden with the command  line option  **-nr.**

**makepsres** uses existing resource database files to assist in identifying files. By  default,  **makepsres** creates a new resource database file containing all of the  following that apply:

Resource files found in the directories on the command line.

Resource files pointed to by the resource database files in the directories on  the command line.

Resource entries found in the input resource database files. These entries are  copied if the files they specify still exist and are located in directories not  specified on the command line.

If you run  **makepsres** in discard mode (with the  **-d** option), it  does not copy resource entries from the input resource database files. In that case,  the output file consists only of entries from the directories on the command line.  The input resource database files are only used to assist in identifying files.

If you run  **makepsres** in keep mode (with the  **-k** option), it  includes in the output file all resource entries in the input resource database files,  even entries for files that no longer exist or are located in directories specified on  the command line.

**makepsres** uses various heuristics to identify files. A file that is of a private  resource type or that does not conform to the standard format for a resource file  must be specified in one of the following ways:

By running  **makepsres** in interactive mode

By preloading the file into a resource database file used for input

By beginning the file with the following line:

%!PS-Adobe-3.0 Resource-\<resource-type\>

## OPTIONS

- **-o** *filename*

  Writes the output to the specified filename. The construction "**-o -**" writes to stdout. If the  **-o** option is not specified,  **makepsres** creates a  *PSres.upr* file in the current directory  and writes the output to that file.

- **-f** *filename*

  Uses information from the specified file to assist in resource typing.  The file must be in resource database file format. Multiple **-f** options may be specified. The construction "**-f -**" uses  *stdin* as an input file and may not be used if "**-**" is specified as a directory on the command line.

- **-dir** *dirname*

  Specifies that  *dirname* is a directory. Needed only in rare cases when *dirname* is the same as a command-line option such as  **-nb.**

- **-d**

  Specifies discard mode. The resulting output file consists solely  of entries from the directories on the command line.

- **-e**

  Marks the resulting  *PSres.upr* file as exclusive.  This option  makes the resource location library run more quickly since it does not have to  look for other resource database files. It becomes necessary, however, to run  **makepsres** whenever new resources are added to the directory, even if the  resources come with their own resource database file.

- **-i**

  Specifies interactive mode. In interactive mode, you will be queried for the resource type of any encountered file that **makepsres** cannot identify.  If **-i** is not specified, **makepsres** assumes an unidentifiable file is not a resource file.

- **-k**

  Specifies keep mode.

- **-nb**

  If the output file already exists, do not back it up.

- **-nr**

  Specifies nonrecursive mode.  **makepsres** normally acts recursively: it looks for  resource files in subdirectories of any specified directory. If  **-nr** is used,  **makepsres** does not look in subdirectories for resource files.

- **-p**

  Specifies no directory prefix.  If **-p** is used, **makepsres** does not try to find a common directory prefix among the specified directories.

- **-q**

  Quiet mode: ignores unidentifiable files instead of warning about them.

- **-s**

  Specifies strict mode.  If **-s** is used, **makepsres** terminates with an error if it encounters a file it cannot identify.

## EXAMPLES

- **makepsres .**

  Creates a resource database file that contains all the resources in the current directory.

- **makepsres -i -o local.upr /usr/local/lib/ps/fonts**

  Runs  **makepsres** in interactive mode and creates a resource database file named *local.upr,* which contains all the resources in the directory */usr/local/lib/ps/fonts.*

## SEE ALSO

*Programming the Display PostScript System with X* (Addison-Wesley Publishing Company, Inc., 1993).

## AUTHOR

Adobe Systems Incorporated

## NOTES

PostScript and Display PostScript are trademarks of Adobe Systems Incorporated which may be registered in certain jurisdictions.

Copyright (c) 1989-1994 Adobe Systems Incorporated.  All rights reserved.
