Some of the CERNLIB modules require TCP/IP socket libraries. The list of these modules is defined by the symbol need_tcp in makepack.com. At the time of writing, this is defined as shown below.
List of modules requiring TCP/IP
$ need_tcp = ".ZFTP.ZSERV.PAWM.PAWPP.PAWSERV.TELNETG.SYSREQ.FATMEN."
The CERNLIB installation procedures attempt to chose the correct version of TCP/IP and act accordingly. This is done in the command file f$tcpip.com as follows:
Determining the TCP/IP version
$ If F$TRNLNM("TWG$ETC").nes."" Then tcpip_var="Wollongong WINTCP" $ If F$TRNLNM("MULTINET").nes."" Then tcpip_var="MultiNet TCPIP" $ If F$TRNLNM("UCX$NETWORK").nes."" Then tcpip_var="UCX TCPIP"
If you do not have one of these systems installed, then you will need to modify f$tcpip.com and makepack.com accordingly.
There are 3 areas that might require modification:
Selecting the appropriate include files
$ If pack.eqs."TELNETG" $ Then If tcppg.eqs."_W" $ Then TCPDIR="TWG$TCP:[netdist.include" $ assign/user_mode 'TCPDIR'],'TCPDIR'.sys],'TCPDIR'.net],- 'TCPDIR'.netinet],sys$library vaxc$include $ assign/user_mode 'TCPDIR'.net] net $ assign/user_mode 'TCPDIR'.arpa] arpa $ Endif $ If tcppg.eqs."_M" $ Then TCPDIR="MULTINET_ROOT:[Multinet.include" $ assign/user_mode 'RDIR'.src.cfs.cspack] arpa $ Endif $ If tcppg.eqs."_U" $ Then TCPDIR="UCX??" $ Endif $ assign/user_mode 'TCPDIR'.sys] sys $ assign/user_mode 'TCPDIR'.netinet] netinet $ Endif
Definitions for the C preprocessor
$ If tcppg.eqs."_W" Then cco=cco+"/DEF=TWG" $ If tcppg.eqs."_M" Then cco=cco+"/DEF=TGV"
Link options file for Multinet, UCX and Wollongong
:::::::::::::: vmslib_m.opt :::::::::::::: SYS$LIBRARY:vaxcrtl/share multinet_socket_library/share :::::::::::::: vmslib_u.opt :::::::::::::: SYS$LIBRARY:ucx$ipc/lib SYS$LIBRARY:vaxcrtl/share :::::::::::::: vmslib_w.opt :::::::::::::: CERN_ROOT:[lib]VMSLIB/lib SYS$LIBRARY:vaxcrtl/share
\