#		 Master Coda Makeconf file
# sets:
#	VPATH, DIRS, FLAGS, LIBRARIES, <>_RPC2
# includes:
#	Makefile.setup,	configs/Makeconf.$(SYS)

# 11/18/96 Created, Josh Raiff
# 11/19/96 Modified, Peter Braam


#########################################################
#  Coda 4.5.0 build environment
#  little here should need editing
#########################################################

include $(TOPOBJ)/Makeconf.setup

LIBEXECDIR:=$(exec_prefix)/lib/coda
BINDIR:=$(exec_prefix)/bin
SBINDIR:=$(exec_prefix)/sbin
INITDIR:=$(exec_prefix)/$(initsuffix)
MANDIR:=$(mandir)

NATIVECC = cc
CC = cc
CXX = c++
AR=ar
RANLIB=ranlib
INSTALL = cp -p

include $(MAKDIR)/configs/Makeconf.$(SYS)


##############################
# VPATH
##############################

# edit VPATH appropiately

ifneq ($(SECSRC),)
VPATHTAIL := $(subst $(TOPDIR),,$(VPATH))
NEWVPATH := $(SECSRC)$(VPATHTAIL):$(VPATH)
VPATH := $(NEWVPATH)
endif

ifneq ($(VPATH),)
colon=:
#SHADOWINCLS := -I. -I$(SHADOWINCLS) -I$(INCLDIR)
#SHADOWPATH  := $(VPATH)
INCLDIR=$(TOPOBJ)/include
INCLPATH  := .:$(VPATH):$(INCLDIR)
INCLFLAGS :=  -I$(subst $(colon), -I,$(INCLPATH))
else
INCLDIR=$(TOPOBJ)/include
INCLFLAGS :=  -I. -I$(INCLDIR)
INCLPATH  := .:$(INCLDIR)
endif

##############################
# Location of objects
##############################

RP2GEN=../rp2gen/rp2gen

##############################
# Machine independent FLAGS
##############################

# OPTFLAG and GFLAG are set per platform in $(MAKDIR)/configs/Makeconf.$(SYS)
DEPFLAG   := -MD
#OPTFLAG  :=
#GFLAG    := -g
LIBFLAGS  := $(OPTLFLAG)
AFLAGS	  := $(GFLAG) $(DEPFLAG) $(MACHINE_FLAGS) $(MYFLAGS) $(INCLFLAGS)
CFLAGS	  := $(OPTFLAG) $(AFLAGS) -DPRIVATE=static
CXXFLAGS  := $(CFLAGS)

RP2FLAGS  = -e  -I . -I $(srcdir) -I $(INCLDIR)

vpath %.h $(INCLPATH)
vpath %.rpc2 $(INCLPATH)

# uncomment some of the next lines if you have kerberos
# KERBEROS=yes
# KERBEROS4=yes
# KERBEROS5=yes

##############################
# Library definitions
##############################

# -- INODEFS --
# platform dependent: choice from user level and kernel level version
# defined in configs/Makeconf.$(SYS)
# LIBINODEFS = $(TOPOBJ)/$(INODEFSDIR)/$(INODEFSNAME)

# -- CS --
LIBCS =$(TOPOBJ)/lib-src/libcs/libcs.a

# -- LWP --
# LIBNEWLWP =$(TOPOBJ)/lib-src/mlwp/libnewlwp.a			
LIBOLDLWP =$(TOPOBJ)/lib-src/mlwp/liboldlwp.a			

# -- RVM --
LIBRVM= $(TOPOBJ)/rvm-src/rvm/librvm.a
LIBRDS= $(TOPOBJ)/rvm-src/rds/librds.a	 		
# with threads
LIBRVMLWP = $(TOPOBJ)/rvm-src/rvmlwp/librvmlwp.a
LIBRDSLWP = $(TOPOBJ)/rvm-src/rdslwp/librdslwp.a
# libseg doesn't use threads.
LIBSEG= $(TOPOBJ)/rvm-src/seg/libseg.a 			

# -- CODA --
LIBCODARVM = $(LIBRVMLWP)
LIBCODARDS = $(LIBRDSLWP)
LIBKERNDEP =../kerndep/libkerndep.a   # --- (pioctl, setpag)
LIBAUTH2 =../auth2/libauth2.a
LIBAL = ../libal/libal.a
LIBVOL = ../vol/libvol.a
LIBVICEDEP= ../vicedep/libvicedep.a
LIBVOLUTIL =../volutil/libvolutil.a
LIBVOLSERV =../volutil/libvolserv.a
LIBVV = ../vv/libvv.a
LIBRESOLVE =../resolve/libresolve.a
LIBRESLIB =../res/libreslib.a
LIBUTIL =../util/libutil.a
LIBRPC2 =../rpc2/librpc2.a
LIBPORTMAP =../portmapper/libportmap.a
LIBSE =../rpc2/libse.a
LIBFAIL =../fail/libfail.a
LIBRVMRES =../rvmres/librvmres.a
LIBDIRLIB= ../dir/libdir.a
LIBVICEERROR  = ../vice/libviceerror.a
LIBDS = ../ds/libds.a
LIBPARTITION = ../partition/libpartition.a

##############################
# RPC2 interface definitions in module vicedep
##############################
CALLBACK_RPC2 = ../vicedep/callback.rpc2
MOND_RPC2 = ../vicedep/mond.rpc2
VCRCOMMON_RPC2 = ../vicedep/vcrcommon.rpc2
VICE_RPC2 = ../vicedep/vice.rpc2
VOLDUMP_RPC2 = ../vicedep/voldump.rpc2
VOLUTIL_RPC2 = ../vicedep/volutil.rpc2
RES_RPC2 = ../vicedep/res.rpc2
ADMON_RPC2 = ../vicedep/admon.rpc2
ADSRV_RPC2 = ../vicedep/adsrv.rpc2

all: 
