# Copyright 2000, International Business Machines Corporation and others.
# All Rights Reserved.
# 
# This software has been released under the terms of the IBM Public
# License.  For details, see the LICENSE file in the top-level source
# directory or online at http://www.openafs.org/dl/license10.html

!INCLUDE ..\config\NTMakefile.$(SYS_NAME)
!INCLUDE ..\config\NTMakefile.version


############################################################################
# install headers
INCFILEDIR = $(DESTDIR)\include\afs  # header file install directory

INCFILES =\
	$(INCFILEDIR)\budb.h \
	$(INCFILEDIR)\budb_errs.h \
	$(INCFILEDIR)\budb_client.h
	


############################################################################
# Definitions for building a static library

LIBFILE = $(DESTDIR)\lib\afs\afsbudb.lib

LIBOBJS =\
	budb_errs.obj \
	budb.cs.obj \
	budb.xdr.obj \
	struct_ops.obj \
	AFS_component_version_number.obj

$(LIBFILE): $(LIBOBJS) 
	$(LIBARCH) 


############################################################################
# Definitions for building a EXE.

EXEFILE = $(DESTDIR)\root.server\usr\afs\bin\buserver.exe

EXEOBJS =\
	database.obj \
	db_alloc.obj \
	db_dump.obj \
	db_hash.obj \
	struct_ops.obj \
	ol_verify.obj \
	budb.ss.obj \
	budb.xdr.obj \
	dbs_dump.obj \
	db_lock.obj \
	db_text.obj \
	procs.obj \
	budb_errs.obj \
	server.obj \
	buserver.res


EXELIBS =\
	$(DESTDIR)\lib\afs\afsbubasics.lib \
        $(DESTDIR)\lib\afs\afsprot.lib \
        $(DESTDIR)\lib\afsrx.lib \
        $(DESTDIR)\lib\afslwp.lib \
        $(DESTDIR)\lib\afs\afscom_err.lib \
	$(DESTDIR)\lib\afs\afsaudit.lib \
	$(DESTDIR)\lib\afsdes.lib \
	$(DESTDIR)\lib\afsrxkad.lib \
	$(DESTDIR)\lib\afs\afskauth.lib \
	$(DESTDIR)\lib\afs\afsauth.lib \
	$(DESTDIR)\lib\afs\afscmd.lib \
	$(DESTDIR)\lib\afs\afsutil.lib \
	$(DESTDIR)\lib\afsubik.lib \
	$(DESTDIR)\lib\afs\afseventlog.lib \
	$(DESTDIR)\lib\afs\afsreg.lib \
	$(DESTDIR)\lib\afs\afsprocmgmt.lib \
	$(DESTDIR)\lib\cm_dns.obj


$(EXEFILE): $(EXEOBJS)  $(EXELIBS)
	$(EXECONLINK)
	$(EXEPREP) 

############################################################################
# Definitions for generating versioninfo resources

buserver.res: buserver.rc AFS_component_version_number.h
	$(RC) $*.rc

############################################################################
# rxgen budb.rg
budb.xdr.c budb.cs.c budb.ss.c 	$(INCFILEDIR)\budb.h: budb.rg
	$(RXGEN) $**
	$(COPY) budb.h $(INCFILEDIR)\budb.h 

############################################################################
# compile_et on budb_errs.et
$(INCFILEDIR)\budb_errs.h : budb_errs.et
	$(COMPILE_ET) budb_errs -h budb_errs
	$(COPY) budb_errs.h $(INCFILEDIR)\budb_errs.h

budb_errs.c $(INCFILEDIR)\budb_client.h: budb_errs.et budb_client.p.h
	$(DEL) budb_client.h budb_errs.c;
	$(COMPILE_ET) budb_errs -h budb_client
	$(COPY) budb_client.h $(INCFILEDIR)\budb_client.h

############################################################################
# install 

install: $(INCFILES) $(LIBFILE) $(EXEFILE)


############################################################################
# Local clean target; augments predefined clean target

clean::
	$(DEL) budb_errs.c budb_errs.h budb.h budb_client.h	
	$(DEL) budb.cs.c budb.ss.c budb.xdr.c
