--- Makefile.orig	Sat Apr 29 08:26:30 2000
+++ Makefile	Sat Aug  5 04:52:50 2000
@@ -121,7 +121,6 @@
 #CC=gcc
 #CC=/bin/cc
 #CC=cc
-CC=cc
 
 
 
@@ -142,7 +141,7 @@
 #
 
 #INCLUDE=-I/usr/local/include -I/usr/openwin/include
-INCLUDE=-I/usr/local/include
+INCLUDE=-I${X11BASE}/include
 
 
 
@@ -179,7 +178,7 @@
 #DEBUG=-O -g -Wall -DVERBOSE -DDEBUG
 #DEBUG=-O
 #DEBUG=-g3 -O -fullwarn -DVERBOSE -DDEBUG
-DEBUG=-g3 -O -fullwarn
+#DEBUG=-g3 -O -fullwarn
 
 
 
@@ -268,7 +267,10 @@
 #XLIBS=-L/usr/X11R6/lib -lXaw -lXmu -lXext -lXt -lX11
 
 # SGI IRIX:
-XLIBS=              -lXaw -lXmu -lXext -lXt -lcvt -lX11
+#XLIBS=              -lXaw -lXmu -lXext -lXt -lcvt -lX11
+
+# FreeBSD:
+XLIBS=-L${X11BASE}/lib -lXaw -lXmu -lXext -lXt -lX11
 
 
 
@@ -313,10 +315,10 @@
 #
 #   -lmalloc_cv has more robust memory checking
 
-#NON_GUI_LIBS = -lm
+NON_GUI_LIBS = -lm
 #NON_GUI_LIBS = -lm -ldl
 #NON_GUI_LIBS = -lm /usr/lib/debug/malloc.o
-NON_GUI_LIBS = -lm -lmalloc
+#NON_GUI_LIBS = -lm -lmalloc
 
 
 
@@ -344,7 +346,7 @@
 
 # SHLIB_EXT: filename extension for shared libraries
 # --------------------------------------------------
-SHLIB_EXT=so
+SHLIB_EXT=so.1
 
 
 
@@ -353,7 +355,7 @@
 ## -----------------------
 #
 
-LDFLAGS=-L/usr/local/lib
+LDFLAGS=
 
 
 
@@ -378,14 +380,14 @@
 
 #CFLAGS=$(DEBUG) $(DEFINES) $(INCLUDE) -DSUNOS
 
-CFLAGS=$(DEBUG) $(DEFINES) $(INCLUDE)
+CFLAGS+=$(DEBUG) $(DEFINES) $(INCLUDE)
 
 
 
 
 ## INSTALL_BASE: Directory base to install files
 ## ---------------------------------------------
-INSTALL_BASE=/usr/local
+INSTALL_BASE=${PREFIX}
 
 
 
@@ -450,15 +452,19 @@
      xmorph.o
 
 #all: morph.$(SHLIB_EXT)
-all: xmorph morph xmorph.man xmorph.info
+#all: xmorph morph xmorph.man xmorph.info
+all: libmorph.a libmorph.so xmorph
 
 libmorph.a: $(LIB_OBJS)
 	ar cr $@ $(LIB_OBJS)
 
 libmorph.$(SHLIB_EXT): $(LIB_OBJS)
-	ld $(SHLIB_FLAG) $(LDFLAGS) $(LIB_OBJS) -o $@
+	$(CC) $(SHLIB_FLAG) -Wl,-soname,$@ $(LDFLAGS) $(LIB_OBJS) -o $@
+
+libmorph.so: libmorph.$(SHLIB_EXT)
+	ln -sf libmorph.$(SHLIB_EXT) libmorph.so
 
-xmorph: main-x.o libmorph.a $(GUI_OBJS)
+xmorph: main-x.o libmorph.so $(GUI_OBJS)
 	@echo ""
 	@echo ""
 	@echo ""
@@ -471,14 +477,17 @@
 	@echo ""
 	@echo ""
 	@echo ""
-	$(CC) $(CFLAGS) -o $@ main-x.o $(GUI_OBJS) libmorph.a $(LIBS)
+	$(CC) $(CFLAGS) -o $@ main-x.o $(GUI_OBJS) -L. -lmorph $(LIBS)
 
-morph: main-cl.o libmorph.a
-	$(CC) $(CFLAGS) -o $@ main-cl.o libmorph.a $(NON_GUI_LIBS)
+morph: main-cl.o libmorph.so
+	$(CC) $(CFLAGS) -o $@ main-cl.o -L. -lmorph $(NON_GUI_LIBS)
 
 .c$(OBJ): $(SRCS) Makefile
 	$(CC) $(CFLAGS) $(CPPFLAGS) -c $<
 
+$(LIB_OBJS): $(LIB_OBJS:.o=.c) Makefile
+	$(CC) $(CFLAGS) $(CPPFLAGS) -fpic -DPIC -c $<
+
 main-x.o: main.c
 	$(CC) $(CFLAGS) $(CPPFLAGS) -c -DX_GUI main.c -o $@
 
@@ -498,11 +507,12 @@
 
 
 
-install: xmorph xmorph.man libmorph.a libmorph.$(SHLIB_EXT)
-	cp xmorph $(INSTALL_BASE)/bin
-	cp xmorph.1 $(INSTALL_BASE)/man/man1
-	cp libmorph.a $(INSTALL_BASE)/lib
-	cp libmorph.$(SHLIB_EXT) $(INSTALL_BASE)/lib
+install: xmorph xmorph.man libmorph.a libmorph.so
+	${BSD_INSTALL_PROGRAM} xmorph $(INSTALL_BASE)/bin
+	${BSD_INSTALL_MAN} xmorph.1 $(INSTALL_BASE)/man/man1
+	${BSD_INSTALL_DATA} libmorph.a $(INSTALL_BASE)/lib
+	${BSD_INSTALL_DATA} libmorph.$(SHLIB_EXT) $(INSTALL_BASE)/lib
+	ln -sf libmorph.$(SHLIB_EXT) $(INSTALL_BASE)/lib/libmorph.so
 
 
 
