home *** CD-ROM | disk | FTP | other *** search
/ Liren Large Software Subsidy 7 / 07.iso / c / c496 / 1.img / README.WPK / READC386.ME
Encoding:
Text File  |  1991-08-20  |  6.5 KB  |  181 lines

  1.                 Read Me for WATCOM C8.5/386
  2.                 ===========================
  3.         
  4. Several major items have been added to WATCOM C 386. They are:
  5. 1) A royalty-free 32-bit DOS-extender.
  6. 2) Protected-mode version of the linker.  (WLINKP.EXE)
  7. 3) OS/2 hosted version of WCL386 and WCC386.
  8. 4) The protected-mode compiler and linker can now be run in a
  9.    Windows 3.0 DOS box.
  10.  
  11.            Additions to the WATCOM Linker (WLINK)
  12.            ======================================
  13.  
  14. 1. The "LIBFILE" directive has been added to the linker.  The form of the
  15.    "LIBFILE" directive (short form "LIBF") is as follows.
  16.    
  17.        LIBFILE file{,file}
  18.        
  19.    When trying to locate an object file that was specified in a "LIBFILE"
  20.    directive, the paths specified in the "LIBPATH" directive and the "LIBxxx"
  21.    environment variables will be searched.  Note that object files specified
  22.    in a "LIBFILE" directive will not be used to create the name of the
  23.    executable file if no "NAME" directive has been specified.
  24.    
  25. 2. The "LIBPATH" directive has been added to the linker.  The form of the
  26.    "LIBPATH" directive (short form "LIBP") is as follows.
  27.    
  28.        LIBPATH path{;path}
  29.        
  30.    When trying to locate a library file that was specified in a "LIBRARY"
  31.    directive, the paths specified in the "LIBPATH" directive and the "LIBxxx"
  32.    environment variables will be searched.  These directories will not be
  33.    searched if the library file already contains a path specification.
  34.     Note that
  35.    
  36.        LIBPATH path1
  37.        LIBPATH path2
  38.  
  39.    is equivalent to
  40.    
  41.        LIBPATH path2;path1
  42.        
  43. 3. The "SYSTEM" directive has been added to the linker.  There are two forms
  44.    of this directive.  The first form of the "SYSTEM" directive (short form
  45.    "SYS") is as follows.
  46.  
  47.        SYSTEM BEGIN <system_name>
  48.            <linker_directives>
  49.        END
  50.  
  51.    This form of the "SYSTEM" directive allows you to associate a set of
  52.    linker directives with a user-specified name called the system name.
  53.    For example,
  54.    
  55.        SYSTEM BEGIN DOS
  56.            FORMAT DOS
  57.            LIBPATH c:\watcom\lib286\dos;c:\watcom\lib286
  58.        END
  59.        
  60.    defines a system called "DOS" which specifies the format of the executable
  61.    file and the directories to be searched when trying to locate library files.
  62.    
  63.    A restricted set of linker directives is allowed in a system definition.
  64.    They are:
  65.  
  66.        LIBFILE
  67.        LIBPATH
  68.        LIBRARY
  69.        NAME
  70.        OPTION
  71.        RUNTIME (only with "FORMAT PHARLAP")
  72.        SEGMENT (only with "FORMAT OS2" or "FORMAT QNX")
  73.     
  74.    The second form of the "SYSTEM" directive is as follows.
  75.    
  76.        SYSTEM <system_name>
  77.        
  78.    When this form of the "SYSTEM" directive is encountered, all directives
  79.    specified in the <system_name> system will be processed.
  80.    
  81. 4. The WATCOM linker will now process all directives found in the file
  82.    "WLINK.LNK".  The file "WLINK.LNK" must appear somewhere in your path in
  83.    order for the linker to locate this file.  A default "WLINK.LNK" is
  84.    placed in the "C:\WATCOM\BINB" directory by the installation procedure.
  85.    
  86. 5. You may now reference DOS environment variables from your linker directive
  87.    file.  For example, if the "WATCOM" environment variable is defined as
  88.    follows,
  89.    
  90.        C>SET WATCOM=C:\WATCOM
  91.        
  92.    then the linker directive
  93.    
  94.        LIBPATH %WATCOM%\LIB286
  95.    
  96.    is equivalent to the following linker directive.
  97.    
  98.        LIBPATH C:\WATCOM\LIB286
  99.  
  100.    Note that a space must precede a reference to a DOS environment variable.
  101.    
  102. 6. The "^" symbol can be used to pass information to a linker directive file
  103.    invoked by the "@" directive or to a system definition block invoked by
  104.    a "SYSTEM" directive.  This includes directive files or system blocks
  105.    invoked from other directive files and/or system blocks.  For example,
  106.    if we invoked the linker as follows
  107.    
  108.        C>WLINK @TEST MAP, CASEEXACT
  109.        
  110.    and the contents of the linker directive file "TEST.LNK" was as follows,
  111.    
  112.        FILE TEST
  113.        OPTION ^
  114.        
  115.    then the "MAP, CASEEXACT" portion of the command line would be processed
  116.    as part of the "OPTION" directive that appeared in the directive file.
  117.    Note that only linker options from the command line will be processed when
  118.    the "OPTION" directive is encountered.  For example, if the linker was
  119.    invoked as follows
  120.    
  121.        C>WLINK @TEST MAP, CASEEXACT LIBRARY TESTLIB
  122.        
  123.    and the contents of the linker directive file "TEST.LNK" was as follows,
  124.    
  125.        FILE TEST
  126.        OPTION ^
  127.        NAME MYTEST
  128.        
  129.    the "MAP, CASEEXACT" portion of the command line will be processed as
  130.    part of the "OPTION" directive, the "NAME" directive will then be
  131.    processed, and finally the "LIBRARY" directive specified on the command
  132.    line will be processed.
  133.  
  134. 7. The "OS2" format has been extended to include OS/2 linear executable files.
  135.    The new format of the OS/2 "FORMAT" directive is as follows.
  136.  
  137.        FORMAT OS2 [FLAT] [DLL [INITGLOBAL | INITINSTANCE]]
  138.        
  139.    An OS/2 linear executable file will automatically be generated if
  140.    "FORMAT OS2" has been specified and a 32-bit object file has been
  141.    encountered.
  142.    
  143.            Additions to the WATCOM Librarian (WLIB)
  144.            ========================================
  145.  
  146. 1. The following options have been added the WATCOM Library Manager.
  147.  
  148.        /q       operate quietly
  149.  
  150.        /s       strip line number records from object files
  151.  
  152.        /t       remove path information from module name specified in
  153.                 THEADR records
  154.  
  155.        /x       explode library - extract all object modules from library
  156.  
  157.        /d       default directory in which extracted object modules will
  158.                 be placed
  159.  
  160.        /i[r|n][o|n]
  161.  
  162.            /iro imports for the resident names table are to be imported by
  163.                 ordinal
  164.  
  165.            /irn imports for the resident names table are to be imported by
  166.                 name
  167.  
  168.            /ino imports for the non-resident names table are to be imported by
  169.                 ordinal
  170.  
  171.            /inn imports for the non-resident names table are to be imported by
  172.                 name
  173.  
  174.            default is "irn" and "ino"
  175.  
  176.         ++sym.module.[ord|export]
  177.                 create an import library entry for <sym> which states that it
  178.                 comes from DLL <module> with ordinal <ord> or name <export>
  179.  
  180.         *module now allows a path specifier
  181.