diff -ur src/Makefile src/Makefile
--- src/Makefile	Mon Jul 28 00:30:58 1997
+++ src/Makefile	Sun Feb  8 06:04:04 1998
@@ -18,6 +18,8 @@
 		make -f Makefile.decosf1 $(NAME) ; fi
 	@if uname -s -r | grep "IRIX 5" ; then \
 		make -f Makefile.irix5 $(NAME) ; fi
+	@if uname -s -r | grep "FreeBSD" ; then \
+		make -f Makefile.freebsd $(NAME) ; fi
 
 install:
 	@if uname -s    | grep "Linux"   ; then \
@@ -33,6 +35,8 @@
 		make -f Makefile.decosf1 install ; fi
 	@if uname -s -r | grep "IRIX 5" ; then \
 		make -f Makefile.irix5 install ; fi
+	@if uname -s -r | grep "FreeBSD" ; then \
+		make -f Makefile.freebsd install ; fi
 
 
 # ---------------------------------------------------------------------
diff -ur src/Makefile.common src/Makefile.common
--- src/Makefile.common	Sat Feb  8 19:16:28 1997
+++ src/Makefile.common	Sun Feb  8 07:02:09 1998
@@ -35,13 +35,10 @@
 
 
 install:	$(NAME)
-		cp $(NAME) $(BINDIR)/$(NAME)
-		@chmod 711 $(BINDIR)/$(NAME)
-		cp $(NAME).h $(INCDIR)/$(NAME).h
-		@chmod 644 $(INCDIR)/$(NAME).h
-		cp ../DOC/$(NAME).man $(MANDIR)/$(NAME).$(MANEXT)
-		@chmod 644 $(MANDIR)/$(NAME).$(MANEXT)
-
+		install -c -m 711 $(NAME) $(BINDIR)
+		install -c -m 644 $(NAME).h $(INCDIR)
+		install -c -m 6400 ../DOC/$(NAME).man $(MANDIR)/$(NAME).$(MANEXT)
+		cp -pr ../EXAMPLES/* ${PREFIX}/share/examples/cnet
 
 
 address.o:	$(ALLH) address.c
diff -ur src/compile.c src/compile.c
--- src/compile.c	Sun Jan 26 03:42:23 1997
+++ src/compile.c	Sun Feb  8 06:52:49 1998
@@ -2,6 +2,7 @@
 
 #include <fcntl.h>
 #include <sys/stat.h>
+#include <dlfcn.h>
 
 #if	!defined(MAXPATHLEN)
 #define	MAXPATHLEN	1024
@@ -25,6 +26,9 @@
 #elif	defined(USE_IRIX5)
 #include "irix5/compile.c"
 
+#elif	defined(USE_FREEBSD)
+#include "freebsd/compile.c"
+
 #elif	defined(USE_LINUXAOUT)
 #include "linuxaout/compile.c"
 
@@ -483,6 +485,10 @@
 {
 
 #define	RECIEVE		"[Rr][Ee][Cc][IiEe][Ee][Vv]"
+
+#if	defined(USE_FREEBSD)
+#include	<unistd.h>
+#endif
 
 #if	defined(SVR4) || defined(__svr4__)
 #include <regexpr.h>
diff -ur src/config.h src/config.h
--- src/config.h	Fri Aug  1 02:42:00 1997
+++ src/config.h	Sun Feb  8 07:05:25 1998
@@ -27,6 +27,9 @@
 #elif	defined(sgi) || defined(__sgi) || defined(__sgi__)
 #define	USE_IRIX5
 
+#elif	defined(__FreeBSD__)
+#define USE_FREEBSD
+
 #elif	defined(LINUX) || defined(linux) || defined(__linux__)
 #if	defined(ELF) || defined(__ELF__)
 #define	USE_LINUXELF
@@ -48,6 +51,7 @@
  */
 
 #define	USE_XVIEW
+/* #define USE_MOTIF */
 
 
 /*  Next, define constants such as full pathnames of the C compiler
@@ -76,6 +80,13 @@
 #define	CNETLD		"/bin/ld"
 #define	CNETEXTRAOBJ	"cnetextra.o"
 
+#elif	defined(USE_FREEBSD)
+#define	OS_DEFINE	"-DFREEBSD"
+#define	CNETCPP		"/usr/libexec/cpp"
+#define	CNETCC		"/bin/cc"
+#define	CNETGCC		"/usr/bin/gcc"
+#define	CNETLD		"/usr/bin/ld"
+
 #elif	defined(USE_IRIX5)
 #define	OS_DEFINE	"-DIRIX5"
 #define	CNETCPP		"/usr/lib/cpp"
@@ -123,7 +134,7 @@
     CNETPATH must be defined.
  */
 
-#define	CNETPATH	"/home/kidna/include:/home/bison/staff/chris/include"
+#define	CNETPATH	"/usr/local/include"
 
 
 /*  When compiled for Tcl/Tk, the Tcl/Tk script file may be taken from
@@ -204,7 +215,7 @@
     they like the ability to vary these attributes.  You decide.
  */
 
-#define	MAY_VARY_LINKATTRS		FALSE
+#define	MAY_VARY_LINKATTRS		TRUE
 
 
 /*  You may wish to limit the number of frames that may be "pending"
Only in src: freebsd
diff -ur src/link_windows.c src/link_windows.c
--- src/link_windows.c	Thu Jul 24 07:41:01 1997
+++ src/link_windows.c	Sun Feb  8 06:13:35 1998
@@ -13,6 +13,7 @@
 
 #define	N_P_LINK_CHOICES		4
 #define	N_B_LINK_CHOICES		4
+#define	N_LINK_CHOICES			4
 
 static struct {
     char	*title;
