include ../../MAKEINIT.VMS OBJLIB = $(IMAGE_NAME).$(OLB_SUFFIX) # Alpha only compiler flags. ifdef ALPHA ifdef 64BIT CFLAGS += /pointer_size=long DEST = [.64bit] OPT = gsslnk64.opt else CFLAGS += /pointer_size=short DEST = [.32bit] OPT = gsslnk32.opt endif # 64bit endif # Itanium only compiler flags. ifdef IA64 ifdef 64BIT CFLAGS += /pointer_size=long DEST = [.64bit] OPT = gsslnk64.opt else CFLAGS += /pointer_size=short DEST = [.32bit] OPT = gsslnk32.opt endif # 64bit endif ifdef VAX DEST = [.vax] OPT = gsslnk.opt endif # VAX only compiler flags. ifdef VAX CFLAGS += endif # Compiler flags we always want CFLAGS += /prefix=all /include=([],krb$$root:[include]) LFLAGS += /map=$(DEST)/full ifdef DEBUG CFLAGS += /debug/nooptimize/lis/show=all DEFINES += ,"DEBUG=1" LFLAGS += /debug else LFLAGS += /nodebug ### /notraceback endif CFLAGS += /define=($(DEFINES)) CSRCS = gss_client.c gss_server.c gss_common.c #Rules OBJS = $(CSRCS:.c=.$(OBJ_SUFFIX)) TARGETS = $(DEST)gss-client.exe $(DEST)gss-server.exe all: com_init $(TARGETS) com_init: @define/job/nolog gssapi krb$$root:[include] $(DEST)gss-client.exe: $(DEST)gss_client.obj, $(DEST)gss_common.obj link/exe=$@ $(LFLAGS) $(DEST)gss_client.obj,$(DEST)gss_common.obj, $(OPT)/option $(DEST)gss-server.exe: $(DEST)gss_server.obj, $(DEST)gss_common.obj link/exe=$@ $(LFLAGS) $(DEST)gss_server.obj,$(DEST)gss_common.obj, $(OPT)/option $(DEST)gss_client.obj: gss_client.c cc $(CFLAGS)/obj=$@ $? $(DEST)gss_server.obj: gss_server.c cc $(CFLAGS)/obj=$@ $? $(DEST)gss_common.obj: gss_common.c cc $(CFLAGS)/obj=$@ $? $(OBJLIB): $(OBJS) @if f$$search("$@") .eqs. "" then library /create $@ library /replace /log $@ $? clean: @if f$$search("$(DEST)*.$(OBJ_SUFFIX)") .nes. "" then delete /log $(DEST)*.$(OBJ_SUFFIX);* @if f$$search("$(DEST)*.$(SHR_SUFFIX)") .nes. "" then delete /log $(DEST)*.$(SHR_SUFFIX);* @if f$$search("$(DEST)*.lis") .nes. "" then delete /log $(DEST)*.lis;* @if f$$search("$(DEST)*.map") .nes. "" then delete /log $(DEST)*.map;* @if f$$search("$(DEST)$(OBJLIB)") .nes. "" then delete /log $(DEST)$(OBJLIB);* help: @$(ECHO) " gmake -? - Displays general Gmake command line help" @$(ECHO) " gmake help - Displays help for using/typing gmake in this directory" @$(ECHO) "" @$(ECHO) " gmake - Builds the VMS GSS client & server in the 32bit directory" @$(ECHO) " gmake ""DEBUG=1"" - Builds with DEBUG" @$(ECHO) "" @$(ECHO) " gmake ""64BIT=1"" - Builds the VMS GSS client & server in the 64bit directory" @$(ECHO) " gmake ""64BIT=1"" ""DEBUG=1"" - Builds with DEBUG" @$(ECHO) "" @$(ECHO) " gmake ""VAX=1"" - Builds the VAX/VMS GSS client & server in this directory" @$(ECHO) " gmake ""VAX=1"" ""DEBUG=1"" - Builds the VAX/VMS GSS images with DEBUG" @$(ECHO) "" @$(ECHO) " gmake clean - Cleans the default 32BIT or VAX directory" @$(ECHO) " gmake clean ""64BIT=1"" - Cleans the 64BIT Alpha directory"