PVT User's Guide Appendix - Building the PVT in UNIX

All PVT topics can be found under PHIGS Validation Tests - Overview. All sections of this User's Guide can be accessed from its list of sections or its detailed table of contents.

The following steps must be followed in order to install the test suite on a UNIX system. Note that Makefiles have been provided that will run on most systems but may require modifications for your system.

No executable is shipped in the distribution; all programs must be regenerated. When building the f2c libraries, please read the section describing the use of #define USE_STRLEN. This definition is crucial for some systems.

 
Step [1]
        Build the f2c library - libf2c.a
 
      (a)
        cd pvt/F2C
 
      (b)
        Edit the makefile
 
       * Check the description of onexit and how it  applies
         to your system.
 
       * Select the C compile  line  that  you  want  (i.e.
         whether you want prototyping).
 
      (c)
        Review the README file and modify items as  required
        by your system.
 
      (d)
        Type make
 
  The result is a condensed version of the actual f2c utility.  The
libraries libF77 and libI77 have been combined into one library, and
the actual translator f2c is not distributed.  All code has been
translated and only the subroutine library is required.  The code
itself has not been altered in any way, and sites that have f2c
installed as a system library may use their own version.
 
 
Step [2] Build the C layer code library - layer.a
 
      (a)
        cd pvt/LAYER
 
      (b)
        Edit the Makefile
 
       * Change PVTHOME (currently /home/kevin/pvt)  to  the
         directory where the PVT test suite is installed.
 
       * Change XINCDIR (currently /usr/openwin/include ) to
         the  directory  where  X11  is  installed.  This is
         required for include files if  your  implementation
         uses X11. If you do not require this variable, just
         leave it blank.
 
       * Change PHIGSINCDIR (currently $(PHIGSHOME)/include/phigs)
         to the directory where PHIGS is installed. This is
         required  for  include files.
 
       * Select the C compile line  that  pertains  to  your
         system (i.e. whether you want prototyping)
 
      (c)
        Type make
 
 
Step [3] Build the subroutine library - libcpvt.a
 
  The following steps build use the single directory, rather than
hierarchically (see section 3.1.2).
 
      (a)
        cd pvt/V2LIB
 
      (b)
        Edit the Makefile
 
       * Change PVTHOME (currently /home/kevin/pvt)  to  the
         directory where the PVT test suite is installed.
 
       * Change XINCDIR (currently /usr/openwin/include ) to
         the  directory  where  X11  is  installed.  This is
         required for include files if  your  implementation
         uses X11. If you do not require this variable, just
         leave it blank.
 
       * Change PHIGSINCDIR (currently $(PHIGSHOME)/include/phigs)
         to the directory where PHIGS is installed. This is
         required  for  include files.
 
       * Select the C compile line  that  pertains  to  your
         system (i.e. whether you want prototyping)
 
      (c)
        Edit INITGL.c:
 
       * Change the filename character variable on line  180
         to   the  directory  where  you  will  install  the
         configuration file using INITPH.
         Currently:
            s_copy(filenm, "INITPH$DAT", 60L, 10L);
         Change to:
            s_copy(filenm, "/pvt/INITPH$DAT", 60L, L);
         Change the  to  the  length  of  the  character
         string, (up to a max of 60)
 
 
      (d)
        Edit MULTWS.c:
 
       * Change the filename character variable on line  206
         to   the  directory  where  you  will  install  the
         configuration file using INITPH.
         Currently:
           s_copy(filenm, "INITPH$DAT", 60L, 10L);
         Change to:
            s_copy(filenm, "/pvt/INITPH$DAT", 60L, L);
         Change the  to  the  length  of  the  character
         string, (up to a max of 60)
 
       * Refer  to  the  discussion   on   MULTWS   in   the
         customizations  section  (section 3.2.5) to determine
         if further changes are required (i.e. do you  need
         to generate a special workstation type).
 
      (e)
        Edit XPOPPH.c:
 
       * Refer  to  the  discussion   on   XPOPPH   in   the
         customizations  section  (section 3.2.2) to determine
         if any changes are required (i.e. do you  need  to
         generate a special workstation type).
 
      (f)
        Type make
 
Step [4] Build initph and oprcmt
 
      (a)
        cd pvt
 
      (b)
        Edit the Makefile
 
       * Change PVTHOME (currently /home/kevin/pvt)  to  the
         directory where the PVT test suite is installed.
 
       * Change XINCDIR (currently /usr/openwin/include ) to
         the  directory  where  X11  is  installed.  This is
         required for include files if  your  implementation
         uses X11. If you do not require this variable, just
         leave it blank.
 
       * Make sure PHIGSHOME is set.
 
       * Check the system variable CPHIGS_LIB.  It  must  be
         set   to  the  libraries  required  by  your  PHIGS
         implementation,  including  the   PHIGS   libraries
         themselves  (i.e.  does  it use any X libraries?).
         Set  this  variable  accordingly  to   locate   the
         libraries you will need.
 
      (c)
        Edit pvt/C/std/initph.c:
 
       * Change the filename character variable on line  361
         to  the  directory where you would like to have the
         configuration file installed.
         Currently:
           s_copy(filenm, "INITPH$DAT", 60L, 10L);
         Change to:
           s_copy(filenm, "/pvt/INITPH$DAT", 60L, L);
         Change the  to  the  length  of  the  character
         string, (up to a max of 60)
 
   [d]  Change the filename character variable on  line  363
        to  the  directory  where you would like to have the
        HUMAN-READABLE configuration file installed.
        Currently:
         s_copy(filenm, "INITPH$PRT", 60L, 10L);
        Change to:
         s_copy(filenm, "/pvt/INITPH$PRT", 60L, L);
        Change the   to  the  length  of  the  character
        string, (up to a max of 60)
 
      (e)
        Type make cadmin
 
Step [5] run pvt/C/std/initph to  create  the  configuration
         file, as described in section 4.2.
 
 
Step [6] Build the PVT test suite.
 
   [a]  Edit pvt/Makefile:
 
   * Select the C  compile  line  that  pertains  to  your
       system (i.e. whether you want prototyping)
 
In the PVT root type one of:
 
 make all      [Build the C test suite]
 
 make cadmin   [Build the C version of initph]
 
 
Step [7] Run the test suite.
 
     Each of the programs that exist in the sub-tree must be
executed  to  perform  a  complete  validation.  You  should
develop  procedures  on  your  system  to  accomplish   this
efficiently.  When  the actual validation is performed, each
program must compile, link and execute without error.
 
In the PVT root type one of:
 
 make -f Makefile.run run     [Run both active and passive C
                              tests]
 
 make -f Makefile.run runactive
                              [Run active C tests]
 
 make -f Makefile.run runpassive
                              [Run passive C tests]