! MMS file for building Gopher Client !******************************************************************** ! wilkinson ! 1.2VMS ! 1995/05/26 15:00 ! gopher_root1:[gopher.g2.vms2_13.gopher]descrip.mms,v ! Exp ! ! Paul Lindner, University of Minnesota CIS. ! ! Copyright 1991, 1992 by the Regents of the University of Minnesota ! see the file "Copyright" in the distribution for conditions of use. !******************************************************************** ! MODULE: descrip.mms ! make description for VMS/MMS !********************************************************************* ! Revision History: ! descrip.mms,v ! Revision 1.2VMS 1995/05/26 15:00 wilkinson ! Consolodate VMS/Unix source code for server as well as client ! ! Revision 1.2 1994/08/10 15:30:00 wilkinson ! Use symbols provided by @[-]make.common ! ! Revision 1.1 1994/08/01 15:04:09 wilkinson ! Initial revision ! !********************************************************************/ ! ! Expected command line macros (MMS/MACRO=(...)) ! TCPIP - TCP/IP agent to link for ! DEC_C or VAX_C - which compiler to use ! DEBUG or NODEBUG - compile/link debug/non-debug client ! HARDWARE - select architecture-appropriate directories ! Expected DCL symbols ! macros - use $(macros) for /DEFINE=() on compilations ! exe - use $(EXE) for executables target directory ! lis - use $(LIS) for listings target directory ! obj - use $(OBJ) for objects target directory ! inc - use $(INC) for include file source directories .suffixes .suffixes : .exe .olb .obj .c .h .IFDEF DEBUG OLB = [-.OBJECT.$(HARDWARE).DBG] GOPHER = $(EXE)gopher_debug.exe LK_DBG = /debug CC_DBG = /debug/noopt .ELSE OLB = [-.OBJECT.$(HARDWARE).OBJ] GOPHER = $(EXE)gopher.exe LK_DBG = /nodebug CC_DBG = /nodebug .ENDIF .IFDEF DEC_C LK_OPTS = sys$disk:[.vmsopts]$(TCPIP)_DECC.opt .ELSE LK_OPTS = sys$disk:[.vmsopts]$(TCPIP)_VAXC.opt .ENDIF !============================================================================== ! The Gopher object file list GOPHER_OBJECT =- $(OBJ)gopher.obj,- $(OBJ)manager.obj,- $(OBJ)globals.obj,- $(OBJ)ourutils.obj,- $(OBJ)cso.obj,- $(OBJ)html2.obj,- $(OBJ)CURcurses.obj,- $(OBJ)gopherrc.obj,- $(OBJ)download.obj,- $(OBJ)pager.obj,- $(OBJ)form.obj,- $(OBJ)upload.obj ! Build the Executable $(GOPHER) : $(GOPHER_OBJECT),$(OLB)libgopher.olb,$(LK_OPTS) link$(LK_DBG)/exe=$(GOPHER) $(GOPHER_OBJECT),\ $(OLB)libgopher/lib,sys$library:vaxccurse/lib,$(LK_OPTS)/opt .IFDEF DEBUG @ write sys$output "" .ENDIF @ write sys$output "CLIENT Gopher Executable Built!" !============================================================================== ! Nested Header Files abound in this application ! Some Header files have dependencies, too... indicates none !boolean.h : !compatible.h : !daarray.h : !dirent.h : !strstring.h : !util.h : STAARRAY_H = [-.object]staarray.h,[-.object]strstring.h,[-.object]daarray.h BLBLOCK_H = [-.object]blblock.h,$(STAARRAY_H),[-.object]boolean.h,\ [-.object]gsgopherobj.h DEBUG_H = [-.object]debug.h,[-.object]boolean.h STDLIB_H = [-.object]stdlib.h,[-.object]compatible.h FILEIO_H = [-.object]fileio.h,[-.object]strstring.h,[-.object]boolean.h,\ $(STDLIB_H) LOCALE_H = [-.object]locale.h,[-.object]compatible.h MALLOC_H = [-.object]malloc.h,$(STDLIB_H) REGEX_H = [-.object]regex.h,$(MALLOC_H) STRING_H = [-.object]string.h,[-.object]compatible.h URL_H = [-.object]url.h,[-.object]strstring.h VIEWS_H = [-.object]views.h,[-.object]strstring.h,[-.object]boolean.h,\ [-.object]daarray.h WAIT_H = [-.object]wait.h,$(STDLIB_H) GSGOPHEROBJ_H = $(VIEWS_H),$(URL_H),$(LOCALE_H),$(BLBLOCK_H) GDGOPHERDIR_H = [-.object]gdgopherdir.h,$(GSGOPHEROBJ_H) CURCURSES_H = curcurses.h,$(LOCALE_H),[-.object]boolean.h,[-.object]strstring.h FORM_H = form.h,$(STRING_H),$(STAARRAY_H),[-.object]boolean.h !globals.h : GOPHERRC_H = gopherrc.h,$(STRING_H),$(GDGOPHERDIR_H) GOPHER_H = gopher.h,globals.h,[-]conf.h,$(CURCURSES_H),$(GOPHERRC_H),\ $(STDLIB_H),[-.object]util.h !syslog.h : !version.h : !============================================================================== ! A default compilation procedure .IFDEF DEC_C ! DECC/Alpha: .IFDEF UCX .c.obj cc/prefix=(all,except=(setlocale))/warning=(disable=implicitfunc)- /define=($(MACROS))$(CC_DBG)/object=$(OBJ)/list=$(LIS)/incl=($(INC)) $< .ELSE .c.obj cc/prefix=(all,except=(connect,gethostbyname,htons,inet_addr,setsockopt,- socket,setlocale))/warning=(disable=implicitfunc)- /define=($(MACROS)$(CC_DBG)/object=$(OBJ)/list=$(LIS)/incl=($(INC)) $< .ENDIF .ELSE ! VAXC: .c.obj cc/define=($(MACROS))$(CC_DBG)/object=$(OBJ)/list=$(LIS)/incl=($(INC)) $< .ENDIF !============================================================================== ! Define dependencies for all object files $(OBJ)cso.obj : cso.c,$(GOPHER_H),$(FILEIO_H),$(MALLOC_H) $(OBJ)curcurses.obj : curcurses.c,$(CURCURSES_H),$(MALLOC_H),$(DEBUG_H) $(OBJ)globals.obj : globals.c $(GOPHER_H) $(OBJ)gopher.obj : gopher.c syslog.h,$(GOPHER_H),$(DEBUG_H),$(FILEIO_H),\ $(MALLOC_H) $(OBJ)gopherrc.obj : gopherrc.c,globals.h,[-]conf.h,[-]patchlevel.h,\ $(GOPHERRC_H),$(CURCURSES_H),$(MALLOC_H),$(FILEIO_H),$(LOCALE_H) $(OBJ)html2.obj : html2.c,$(GOPHER_H),$(MALLOC_H),$(DEBUG_H),$(FILEIO_H) $(OBJ)manager.obj : manager.c,[-]patchlevel.h,$(GOPHER_H),$(DEBUG_H) $(OBJ)ourutils.obj : ourutils.c,syslog.h,$(GOPHER_H),\ $(DEBUG_H),$(FILEIO_H),$(MALLOC_H),$(LOCALE_H),$(STRING_H) $(OBJ)subprocs.obj : subprocs.c,$(GOPHER_H),$(WAIT_H) $(OBJ)download.obj : download.c,$(GOPHER_H),$(FILEIO_H) $(OBJ)pager.obj : pager.c,$(GOPHER_H),$(CURCURSES_H),$(FILEIO_H),$(MALLOC_H) $(OBJ)form.obj : form.c,[]form.h,$(CURCURSES_H),$(STRING_H),$(GSGOPHEROBJ_H),\ $(BLBLOCK_H),$(MALLOC_H) $(OBJ)upload.obj : upload.c,$(GOPHER_H),$(FILEIO_H) .