--- source/Makefile.orig	2008-02-28 19:37:25.000000000 +0100
+++ source/Makefile	2008-02-28 19:37:25.000000000 +0100
@@ -269,12 +269,14 @@
 	libsmb/ntlmssp.o libsmb/ntlmssp_parse.o libsmb/ntlmssp_sign.o
 
 LIBSMB_OBJ = \
+		libsmb/clientgen.o \
+		libsmb/cliconnect.o \
 		libsmb/clifile.o \
-	     lib/util_seaccess.o \
+		libsmb/clistr.o lib/util_seaccess.o \
 		libsmb/clikrb5.o \
 		libsmb/clispnego.o \
-		libsmb/asn1.o \
-		libsmb/clierror.o \
+		libsmb/asn1.o libsmb/clitrans.o \
+		libsmb/clirap.o libsmb/clierror.o \
              libsmb/smberr.o libsmb/credentials.o libsmb/pwd_cache.o \
 	     libsmb/clioplock.o $(ERRORMAP_OBJ) \
 	     $(DOSERR_OBJ) \
@@ -527,7 +529,7 @@
             nmbd/nmbd_subnetdb.o nmbd/nmbd_winsproxy.o nmbd/nmbd_winsserver.o \
             nmbd/nmbd_workgroupdb.o nmbd/nmbd_synclists.o
 
-NMBD_OBJ = $(NMBD_OBJ1) $(PARAM_OBJ) $(LIBSMB_OBJ) $(KRBCLIENT_OBJ) $(UBIQX_OBJ) \
+NMBD_OBJ = $(NMBD_OBJ1) $(PARAM_OBJ) $(LIBSMB_OBJ) $(KRBCLIENT_OBJ) \
            $(PROFILE_OBJ) $(LIB_NONSMBD_OBJ) $(SECRETS_OBJ) $(POPT_LIB_OBJ) 
 
 WREPL_OBJ1 =
@@ -803,7 +805,7 @@
 ######################################################################
 # now the rules...
 ######################################################################
-all : SHOWFLAGS proto_exists bin/smbd  bin/smbpasswd
+all : SHOWFLAGS proto_exists bin/smbd  bin/nmbd bin/smbpasswd
 
 pam_smbpass : SHOWFLAGS bin/pam_smbpass.so
 
@@ -937,10 +939,12 @@
 	$(RANLIB) bin/libsmbd.a
 
 
-bin/nmbd: $(NMBD_OBJ) $(POPT_OBJS) bin/.dummy
+bin/nmbd: bin/libsmbd.a $(NMBD_OBJ) bin/.dummy
 	@echo Linking $@
-	@$(CC) $(FLAGS)  -o $@ $(NMBD_OBJ) $(LDFLAGS) $(DYNEXP) $(LIBS) $(POPT_OBJS) $(KRB5LIBS) $(LDAP_LIBS)
-
+	@$(CC) $(FLAGS)  -o $@ $(NMBD_OBJ) $(LDFLAGS) $(DYNEXP) \
+		-Lbin -lsmbd \
+		-L$(TARGETFS)/lib \
+		$(LIBS)
 
 bin/swat: $(SWAT_OBJ) $(POPT_OBJS) bin/.dummy
 	@echo Linking $@
--- source/libsmb/clifile.c.orig	2008-02-28 19:37:25.000000000 +0100
+++ source/libsmb/clifile.c	2008-02-28 19:37:25.000000000 +0100
@@ -792,6 +792,7 @@
 
 	return SVAL(cli->inbuf,smb_vwv2);
 }
+#endif /* AVM_SMALLER */
 
 /****************************************************************************
  Close a file.
@@ -819,7 +820,7 @@
 	return !cli_is_error(cli);
 }
 
-
+#ifndef AVM_SMALLER
 /****************************************************************************
  send a lock with a specified locktype 
  this is used for testing LOCKING_ANDX_CANCEL_LOCK
--- source/nmbd/nmbd.c.orig	2007-02-04 19:59:23.000000000 +0100
+++ source/nmbd/nmbd.c	2008-02-28 19:37:25.000000000 +0100
@@ -625,9 +625,11 @@
 {
 	pstring logfile;
 	static BOOL opt_interactive;
-	poptContext pc;
+
 	static char *p_lmhosts = dyn_LMHOSTSFILE;
 	static BOOL no_process_group = False;
+#ifndef AVM_NO_POPT
+	poptContext pc;	
 	struct poptOption long_options[] = {
 	POPT_AUTOHELP
 	{"daemon", 'D', POPT_ARG_VAL, &is_daemon, True, "Become a daemon(default)" },
@@ -648,6 +650,10 @@
 	pc = poptGetContext("nmbd", argc, argv, long_options, 0);
 	while (poptGetNextOpt(pc) != -1) {};
 	poptFreeContext(pc);
+#else
+	load_case_tables();
+	global_nmb_port = NMB_PORT;
+#endif /* AVM_NO_POPT */
 
 	global_in_nmbd = True;
 	
