diff --git a/src/sbbs3/GNUmakefile b/src/sbbs3/GNUmakefile
index e58e84153fef3b93f355a1b5c4295bbaead9549a..3cb3f6aa476f07d30c67f861e74fa8ae7f4cd783 100644
--- a/src/sbbs3/GNUmakefile
+++ b/src/sbbs3/GNUmakefile
@@ -22,6 +22,7 @@ endif
 
 UIFC_SRC =	../uifc/
 XPDEV	 =	../xpdev/
+SMBLIB_SRC	=	../smblib/
 SBBS_SRC =	./
 
 NEED_JAVASCRIPT	:= 1
@@ -30,6 +31,9 @@ NEED_THREADS	:= 1
 include $(XPDEV)/Common.gmake
 include $(SBBS_SRC)/Common.gmake
 include $(UIFC_SRC)/Common.gmake
+include $(SMBLIB_SRC)/Common.gmake
+
+CFLAGS	+=	$(SMBLIB_CFLAGS)
 
 ifeq ($(os),freebsd)
  BSD	=	1
@@ -112,14 +116,7 @@ SERVICE_OBJS	= $(LIBODIR)/services.o $(LIBODIR)/ini_file.o $(LIBODIR)/str_list.o
 MONO_OBJS	= $(CON_OBJS) $(FTP_OBJS) $(WEB_OBJS) \
 			$(MAIL_OBJS) $(SERVICE_OBJS)
 SMBLIB_OBJS = \
-	$(LIBODIR)/smblib.o \
-	$(LIBODIR)/smbtxt.o \
-	$(LIBODIR)/smbdump.o \
-	$(LIBODIR)/crc16.o \
-	$(LIBODIR)/crc32.o \
-	$(LIBODIR)/md5.o \
-	$(LIBODIR)/lzh.o \
-	$(LIBODIR)/filewrap.o
+	$(SMBLIB_TARGET)
 
 SHLIBOPTS	:=	-shared
 ifeq ($(os),darwin)
diff --git a/src/sbbs3/objects.mk b/src/sbbs3/objects.mk
index f01da2be58003a89f5efb1d2d62b4838284900ad..74dd439fffd7cf8607d5611e6cb2c9b39f2f12a5 100644
--- a/src/sbbs3/objects.mk
+++ b/src/sbbs3/objects.mk
@@ -17,8 +17,6 @@ OBJS	=	$(LIBODIR)$(SLASH)ansiterm.$(OFILE)\
 			$(LIBODIR)$(SLASH)chk_ar.$(OFILE)\
 			$(LIBODIR)$(SLASH)con_hi.$(OFILE)\
 			$(LIBODIR)$(SLASH)con_out.$(OFILE)\
-			$(LIBODIR)$(SLASH)crc16.$(OFILE)\
-			$(LIBODIR)$(SLASH)crc32.$(OFILE)\
 			$(LIBODIR)$(SLASH)dat_rec.$(OFILE)\
 			$(LIBODIR)$(SLASH)data.$(OFILE)\
 			$(LIBODIR)$(SLASH)data_ovl.$(OFILE)\
@@ -63,11 +61,8 @@ OBJS	=	$(LIBODIR)$(SLASH)ansiterm.$(OFILE)\
 			$(LIBODIR)$(SLASH)login.$(OFILE)\
 			$(LIBODIR)$(SLASH)logon.$(OFILE)\
 			$(LIBODIR)$(SLASH)logout.$(OFILE)\
-			$(LIBODIR)$(SLASH)lzh.$(OFILE)\
 			$(LIBODIR)$(SLASH)mail.$(OFILE)\
 			$(LIBODIR)$(SLASH)main.$(OFILE)\
-			$(LIBODIR)$(SLASH)md5.$(OFILE)\
-			$(LIBODIR)$(SLASH)msg_id.$(OFILE)\
 			$(LIBODIR)$(SLASH)msgdate.$(OFILE)\
 			$(LIBODIR)$(SLASH)msgtoqwk.$(OFILE)\
 			$(LIBODIR)$(SLASH)netmail.$(OFILE)\
@@ -89,8 +84,6 @@ OBJS	=	$(LIBODIR)$(SLASH)ansiterm.$(OFILE)\
 			$(LIBODIR)$(SLASH)scfglib1.$(OFILE)\
 			$(LIBODIR)$(SLASH)scfglib2.$(OFILE)\
 			$(LIBODIR)$(SLASH)scfgsave.$(OFILE)\
-			$(LIBODIR)$(SLASH)smblib.$(OFILE)\
-			$(LIBODIR)$(SLASH)smbtxt.$(OFILE)\
 			$(LIBODIR)$(SLASH)sockopts.$(OFILE)\
 			$(LIBODIR)$(SLASH)sortdir.$(OFILE)\
 			$(LIBODIR)$(SLASH)str.$(OFILE)\