TOP = ..

INCLUDES = -I../kernel
DEFINES = -DLANMAN1 -DLANMAN2
OPTFLAGS = -O2 -finline-functions -fomit-frame-pointer

# If you have checker, you might try this.
#CC = checkergcc
#CFLAGS = -Wall -g -O2 -pipe -DDEBUG=10 $(INCLUDES) $(DEFINES)

#CC = gcc
#CFLAGS = -Wall -g -O2 -pipe -DDEBUG=10 $(INCLUDES) $(DEFINES)

CC = gcc
CFLAGS = -Wall $(INCLUDES) $(DEFINES) $(OPTFLAGS)

OBJS = errlog.o pstr.o inode.o smblib.o fslib.o smbfs.o

EXECS = smbtest smbfs

all: smbfs

smbfs: $(OBJS) smbclient.o
	$(CC) -Wall smbclient.o -o smbfs $(OBJS)

smbtest: $(OBJS) smbtest.o
	$(CC) $(CFLAGS) smbtest.o -o smbtest $(OBJS)

dist:
	tar cf - *.c *.h Makefile|gzip -9>client.tgz
	uuencode smbclient.tgz <client.tgz>client.uue

clean:
	rm -f *.o *~ $(EXECS) log.debug

dep:
	# could somebody show me how to do this right?
errlog.o: errlog.c basic.h errlog.h /usr/include/stdio.h \
  /usr/include/features.h /usr/include/sys/cdefs.h /usr/include/libio.h \
  /usr/include/_G_config.h /usr/include/unistd.h /usr/include/posix_opt.h \
  /usr/include/gnu/types.h \
  /usr/lib/gcc-lib/i486-linux/2.6.2/include/stddef.h \
  /usr/include/confname.h /usr/include/sys/types.h \
  /usr/include/linux/types.h /usr/include/asm/types.h \
  /usr/lib/gcc-lib/i486-linux/2.6.2/include/stdarg.h /usr/include/ctype.h
fslib.o: fslib.c /usr/include/stdio.h /usr/include/features.h \
  /usr/include/sys/cdefs.h /usr/include/libio.h /usr/include/_G_config.h \
  /usr/include/unistd.h /usr/include/posix_opt.h /usr/include/gnu/types.h \
  /usr/lib/gcc-lib/i486-linux/2.6.2/include/stddef.h \
  /usr/include/confname.h /usr/include/sys/types.h \
  /usr/include/linux/types.h /usr/include/asm/types.h /usr/include/errno.h \
  /usr/include/linux/errno.h /usr/include/string.h /usr/include/getopt.h \
  basic.h /usr/include/stdlib.h \
  /usr/lib/gcc-lib/i486-linux/2.6.2/include/float.h /usr/include/alloca.h \
  fslib.h /usr/include/linux/vfs.h ../kernel/linux/userfs_types.h \
  ../kernel/linux/userfs_fs_i.h ../kernel/linux/userfs_fs_f.h \
  ../kernel/linux/coder.h ../kernel/linux/userfs_fs.h \
  ../kernel/linux/userfs_types.c
inode.o: inode.c inode.h basic.h fslib.h /usr/include/sys/types.h \
  /usr/include/linux/types.h /usr/include/asm/types.h \
  /usr/include/linux/vfs.h ../kernel/linux/userfs_types.h \
  /usr/include/assert.h /usr/include/stdlib.h /usr/include/features.h \
  /usr/include/sys/cdefs.h \
  /usr/lib/gcc-lib/i486-linux/2.6.2/include/stddef.h /usr/include/errno.h \
  /usr/include/linux/errno.h \
  /usr/lib/gcc-lib/i486-linux/2.6.2/include/float.h /usr/include/alloca.h \
  ../kernel/linux/userfs_fs_i.h ../kernel/linux/userfs_fs_f.h \
  ../kernel/linux/coder.h smblib.h pstr.h /usr/include/malloc.h \
  /usr/include/string.h smbconst.h /usr/include/sys/stat.h \
  /usr/include/linux/stat.h
pstr.o: pstr.c basic.h pstr.h /usr/include/malloc.h /usr/include/features.h \
  /usr/include/sys/cdefs.h \
  /usr/lib/gcc-lib/i486-linux/2.6.2/include/stddef.h /usr/include/string.h \
  /usr/lib/gcc-lib/i486-linux/2.6.2/include/stdarg.h /usr/include/errno.h \
  /usr/include/linux/errno.h /usr/include/sys/types.h \
  /usr/include/linux/types.h /usr/include/asm/types.h /usr/include/ctype.h \
  /usr/include/stdlib.h /usr/lib/gcc-lib/i486-linux/2.6.2/include/float.h \
  /usr/include/alloca.h
smbclient.o: smbclient.c /usr/include/stdio.h /usr/include/features.h \
  /usr/include/sys/cdefs.h /usr/include/libio.h /usr/include/_G_config.h \
  smbfs.h fslib.h /usr/include/sys/types.h /usr/include/linux/types.h \
  /usr/include/asm/types.h /usr/include/linux/vfs.h basic.h \
  ../kernel/linux/userfs_types.h /usr/include/assert.h /usr/include/stdlib.h \
  /usr/lib/gcc-lib/i486-linux/2.6.2/include/stddef.h /usr/include/errno.h \
  /usr/include/linux/errno.h \
  /usr/lib/gcc-lib/i486-linux/2.6.2/include/float.h /usr/include/alloca.h \
  ../kernel/linux/userfs_fs_i.h ../kernel/linux/userfs_fs_f.h \
  ../kernel/linux/coder.h errlog.h /usr/include/unistd.h \
  /usr/include/posix_opt.h /usr/include/gnu/types.h /usr/include/confname.h
smbfs.o: smbfs.c basic.h smblib.h /usr/include/sys/types.h \
  /usr/include/linux/types.h /usr/include/asm/types.h smbconst.h fslib.h \
  /usr/include/linux/vfs.h ../kernel/linux/userfs_types.h \
  /usr/include/assert.h /usr/include/stdlib.h /usr/include/features.h \
  /usr/include/sys/cdefs.h \
  /usr/lib/gcc-lib/i486-linux/2.6.2/include/stddef.h /usr/include/errno.h \
  /usr/include/linux/errno.h \
  /usr/lib/gcc-lib/i486-linux/2.6.2/include/float.h /usr/include/alloca.h \
  ../kernel/linux/userfs_fs_i.h ../kernel/linux/userfs_fs_f.h \
  ../kernel/linux/coder.h errlog.h inode.h pstr.h /usr/include/malloc.h \
  /usr/include/string.h /usr/include/sys/stat.h /usr/include/linux/stat.h \
  /usr/include/stdio.h /usr/include/libio.h /usr/include/_G_config.h \
  /usr/include/unistd.h /usr/include/posix_opt.h /usr/include/gnu/types.h \
  /usr/include/confname.h /usr/include/fcntl.h /usr/include/linux/fcntl.h
smblib.o: smblib.c basic.h smbpriv.h smblib.h /usr/include/sys/types.h \
  /usr/include/linux/types.h /usr/include/asm/types.h smbconst.h pstr.h \
  /usr/include/malloc.h /usr/include/features.h /usr/include/sys/cdefs.h \
  /usr/lib/gcc-lib/i486-linux/2.6.2/include/stddef.h /usr/include/string.h \
  errlog.h /usr/include/sys/socket.h /usr/include/linux/socket.h \
  /usr/include/linux/sockios.h /usr/include/sys/param.h \
  /usr/lib/gcc-lib/i486-linux/2.6.2/include/limits.h \
  /usr/lib/gcc-lib/i486-linux/2.6.2/include/syslimits.h \
  /usr/include/limits.h /usr/include/posix1_lim.h \
  /usr/include/linux/limits.h /usr/include/posix2_lim.h \
  /usr/include/linux/param.h /usr/include/asm/param.h \
  /usr/include/netinet/in.h /usr/include/linux/in.h \
  /usr/include/asm/byteorder.h /usr/include/netdb.h /usr/include/paths.h \
  /usr/include/sys/stat.h /usr/include/linux/stat.h /usr/include/unistd.h \
  /usr/include/posix_opt.h /usr/include/gnu/types.h /usr/include/confname.h \
  /usr/include/errno.h /usr/include/linux/errno.h /usr/include/time.h \
  /usr/lib/gcc-lib/i486-linux/2.6.2/include/stdarg.h /usr/include/stdio.h \
  /usr/include/libio.h /usr/include/_G_config.h /usr/include/stdlib.h \
  /usr/lib/gcc-lib/i486-linux/2.6.2/include/float.h /usr/include/alloca.h
