"Modular DocBook HTML Stylesheet Version 1.73 "> "#0000FF" vlink="#840084" alink="#0000FF">

6. A brief look at the penv source tree

The following is a list of the more important files in the source tree of penv, along with a brief explanation of their purpose.

The directory which holds the whole source tree may be named differently depending on where or how the source tree was acquired. In a tree checked out of the Ringlet CVS repository, this directory will be named penv/. In a tree extracted from a tar/gzip archive, this directory will be named something like penv-1.2pre2/.

  • .depend



    Infrastructure for using the make(1) utility to build penv.

  • pathnames.h

    File and path name definitions - the base directory and the global configuration file name.

  • pe_cmd.c

    Processing of the commands supplied via the -c command-line option.

  • pe_cmd.h

    Definitions for the pe_cmd.c routines.

  • pe_compat.c

    ``Compatibility'' functions - simple implementations of fgetln(3) and strlcpy(3) for systems which do not provide those C library functions.

  • pe_compat.h

    Definitions for the pe_compat.c routines.

  • pe_env.c

    The actual routines which set, reset or list an environment directory's contents.

  • pe_env.h

    Definitions for the pe_env.c routines.

  • pe_err.c

    Error handling routines and error message strings.

  • pe_err.h

    Definitions for the pe_err.c routines.

  • pe_log.c

    Error output and logging routines.

  • pe_log.h

    Definitions for the pe_log.c routines.

  • pe_var.c

    penv.conf variable processing.

  • pe_var.h

    Definitions for the pe_var.c routines.

  • penv.c

    The penv initialization, startup and main processing routines.


    A sample configuration file, listing the commented-out default values for the penv.conf variables. The actual penv.conf.default sample config file is generated from this file after substituting the correct path and file names for the base directory and the environment processor program.

  • penv.h

    General definitions for the penv source files.


    The penv manual page source; the actual penv.1 manual page is generated from this file after substituting the correct path and file names for the base directory and the global configuration file.

  • doc/

    A directory containing the penv documentation in SGML DocBook format. Note that most of this documentation is written in DocBook DSSSL using the entity and element definitions of The FreeBSD Documentation Project and thus the documentation build might require at least the element definitions (freebsd.dsl), if not the whole build framework of the FreeBSD Documentation Project.

    • en_US.ISO8859-1/

      A directory containing the English documentation.

      • articles/

        A directory containing the actual DocBook articles.

        • penv/

          This manual :)

      • A directory containing some XML documentation.

        • changes/

          The penv change log and various development news items.

This, and other documents, can be downloaded from

For questions about this documentation, e-mail <>.