# makefile for test_smb
#
CC = gcc


SMBlib_SOURCE = ../source

CFLAGS = -g -I${SMBlib_SOURCE}/SMBlib

INCLUDES = ${SMBlib_SOURCE}/SMBlib/smblib.h 

RFCNB = ${SMBlib_SOURCE}/rfcnb/session.o ${SMBlib_SOURCE}/rfcnb/rfcnb-util.o \
	${SMBlib_SOURCE}/rfcnb/rfcnb-io.o

SMBOBJS = ${SMBlib_SOURCE}/SMBlib/smblib.o \
	  ${SMBlib_SOURCE}/SMBlib/smblib-util.o \
          ${SMBlib_SOURCE}/SMBlib/file.o \
	  ${SMBlib_SOURCE}/SMBlib/smb-errors.o 

OBJS	= smblib-probe-util.o

INCLUDES = 

.SUFFIXES: .c .o .h

default:
	@echo "Enter: make <system>"
	@echo "Where <system> is one of ULTRIX, DU, Solaris, Linux, HPUX"

ULTRIX:
	make CFLAGS="$(CFLAGS) -DULTRIX" LDFLAGS="" CC="$(CC)" all

DU DECOSF:
	make CFLAGS="$(CFLAGS) -DDU" LDFLAGS="" CC="$(CC)" all

Solaris:
	make CFLAGS="$(CFLAGS) -DSolaris" LDFLAGS="-lsocket -lnsl" CC="$(CC)" all

Linux:
	make CFLAGS="$(CFLAGS) -DLinux" LDFLAGS="" CC="$(CC)" all

HPUX:
	make CFLAGS="$(CFLAGS) -DHPUX" LDFLAGS="" CC="$(CC)" all


all:	$(SMBOBJS) $(OBJS) test_smb torture_smb test_disconnect \
	test_discon-nt test_tree_connect test_multi_connect


.c.o:	$(INCLUDES)
	@echo Compiling $*.c
	$(CC) $(CFLAGS) -c $*.c

torture_smb:	torture_smb.o $(OBJS) $(RFCNB)
	$(CC) $(CFLAGS) $(LDFLAGS) -o torture_smb torture_smb.o $(OBJS) \
		$(RFCNB) $(SMBOBJS)

test_smb:	test_smb.o $(OBJS) $(RFCNB)
	$(CC) $(CFLAGS) $(LDFLAGS) -o test_smb test_smb.o $(OBJS) $(RFCNB) \
		$(SMBOBJS)

test_disconnect:	test_disconnect.o $(OBJS) $(RFCNB)
	$(CC) $(CFLAGS) $(LDFLAGS) -o test_disconnect test_disconnect.o \
		$(OBJS) $(RFCNB) $(SMBOBJS)

test_tree_connect:	test_tree_connect.o $(OBJS) $(RFCNB)
	$(CC) $(CFLAGS) $(LDFLAGS) -o test_tree_connect test_tree_connect.o \
		$(OBJS) $(RFCNB) $(SMBOBJS)

test_multi_connect:	test_multi_connect.o $(OBJS) $(RFCNB)
	$(CC) $(CFLAGS) $(LDFLAGS) -o test_multi_connect \
		test_multi_connect.o $(OBJS) \
		$(RFCNB) $(SMBOBJS)

test_discon-nt:	test_discon-nt.o $(OBJS) $(RFCNB)
	$(CC) $(CFLAGS) $(LDFLAGS) -o test_discon-nt test_discon-nt.o \
		$(OBJS) \
		$(RFCNB) $(SMBOBJS)

clean:
	rm *.o test_smb test_disconnect torture_smb test_discon-nt \
	test_multi_connect test_tree_connect

$(SMBOBJS):
	cd ../source/SMBlib; make CC="$(CC)" CFLAGS="$(CFLAGS)" \
		LDFLAGS="$(LDFLAGS)" all 
