#/* Copyright (C) 1995, 1989 Transarc Corporation - All rights reserved */
# 
# MakefileProto for Solaris systems
#
DEST=@DEST@
TOP_SRCDIR=@TOP_SRCDIR@
TOP_INCDIR=@TOP_INCDIR@
TOP_LIBDIR=@TOP_LIBDIR@
prefix=@prefix@
exec_prefix=@exec_prefix@
bindir=@bindir@
sbindir=@sbindir@
libexecdir=@libexecdir@
libdir=@libdir@
includedir=@includedir@
mandir=@mandir@
afssrvbindir=@afssrvbindir@
afssrvsbindir=@afssrvsbindir@
afssrvlibexecdir=@afssrvlibexecdir@
SYS_NAME=@AFS_SYSNAME@

include ../config/Makefile.${SYS_NAME}

# System specific build commands and flags
CC = gcc
DEFINES= -D_REENTRANT -DAFSDEBUG -DKERNEL -DUKERNEL -DAFS -DVICE
KOPTS=
CFLAGS=-I. -I.. -I${TOP_SRCDIR}/config ${FSINCLUDES} $(DEFINES) $(KOPTS) ${DBUG}
OPTF=-O
# WEBOPTS = -I../nsapi -DNETSCAPE_NSAPI -DNET_SSL -DXP_UNIX -DMCC_HTTPD

TEST_CFLAGS=-pthread -D_REENTRANT -DAFS_PTHREAD_ENV -DAFS_FBSD40_ENV
TEST_LDFLAGS=
TEST_LIBS=

LIBUAFS = libuafs.a
LIBAFSWEB = nsafs.so
LIBAFSWEBKRB = nsafs.krb.so

include Makefile.common

setup_common:
	-$(RM) -f  h net netinet rpc ufs nfs  machine sys inet nsapi
	-ln -s /usr/include/sys h
	-ln -s /usr/include/net net
	-ln -s /usr/include/netinet netinet
	-ln -s /usr/include/rpc rpc
	-ln -s /usr/include/sys sys
	-ln -s /usr/include/nfs nfs
	-ln -s /usr/include/inet inet
	-ln -s /usr/include/ufs ufs
	-ln -s $(NS_INCL) nsapi

setup_uafs: UAFS setup_common
	-$(RM) -f UAFS/Makefile UAFS/Makefile.common
	ln -s ../Makefile UAFS/Makefile
	ln -s ../Makefile.common UAFS/Makefile.common

UAFS:
	mkdir -p $@

setup_nsafs: AFSWEB setup_common
	-$(RM) -f AFSWEB/Makefile AFSWEB/Makefile.common
	ln -s ../Makefile AFSWEB/Makefile
	ln -s ../Makefile.common AFSWEB/Makefile.common

AFSWEB: 
	mkdir -p $@

UAFS/$(LIBUAFS): setup_uafs
	cd UAFS; \
	$(MAKE) $(LIBUAFS) DESTDIR=${DESTDIR}

AFSWEB/$(LIBAFSWEB): setup_nsafs
cd AFSWEB; \
	$(MAKE) $(LIBAFSWEB) DESTDIR=${DESTDIR}

AFSWEB/$(LIBAFSWEBKRB): setup_nsafs
	cd AFSWEB; \
	$(MAKE) $(LIBAFSWEBKRB) DESTDIR=${DESTDIR}

# Below this line are targets when in the COMMON directory:

$(LIBUAFS): $(UAFSOBJ)
	-$(RM) -f $(LIBUAFS)
	$(AR) $(ARFLAGS) $(LIBUAFS) $(UAFSOBJ)

$(LIBAFSWEB): $(AFSWEBOBJ) ${DES}/libdes.a
	-$(RM) -f $(LIBAFSWEB)
	ld -b $(LIBAFSWEB) $(AFSWEBOBJ) ${DES}/libdes.a $(WEBLIBS)

$(LIBAFSWEBKRB): $(AFSWEBOBJKRB) ${DES}/libdes.a
	-$(RM) -f $(LIBAFSWEBKRB)
	ld -b $(LIBAFSWEBKRB) $(AFSWEBOBJKRB) ${DES}/libdes.a $(WEBLIBS)
