diff --git a/conserver.cf/Makefile.in b/conserver.cf/Makefile.in
index c1e8c52..338d6aa 100644
--- a/conserver.cf/Makefile.in
+++ b/conserver.cf/Makefile.in
@@ -28,7 +28,7 @@ install:
 	$(INSTALL) -m 0644 conserver.cf.man $(DESTDIR)$(mandir)/man5/conserver.cf.5
 	$(INSTALL) -m 0644 conserver.passwd.man $(DESTDIR)$(mandir)/man5/conserver.passwd.5
 	$(MKDIR) $(DESTDIR)$(exampledir)
-	$(INSTALL) -m 0644 conserver.cf $(DESTDIR)$(exampledir)
-	$(INSTALL) -m 0644 conserver.passwd $(DESTDIR)$(exampledir)
+	$(INSTALL) -m 0644 $(srcdir)/conserver.cf $(DESTDIR)$(exampledir)
+	$(INSTALL) -m 0644 $(srcdir)/conserver.passwd $(DESTDIR)$(exampledir)
 
 .PHONY: clean distclean install
diff --git a/conserver/Makefile.in b/conserver/Makefile.in
index abdf622..c58568c 100644
--- a/conserver/Makefile.in
+++ b/conserver/Makefile.in
@@ -25,9 +25,11 @@ CFLAGS	= @CFLAGS@
 DEFS	= @DEFS@ -DSYSCONFDIR=\"$(sysconfdir)\"
 CPPFLAGS = -I.. -I$(top_srcdir) -I$(srcdir) $(DEFS) @CPPFLAGS@ @CONSCPPFLAGS@
 LDFLAGS	= @LDFLAGS@ @CONSLDFLAGS@
-LIBS	= @LIBS@ @CONSLIBS@
+LDLIBS	= @LIBS@ @CONSLIBS@
+LINK.o = $(LINK.c)
 @SET_MAKE@
 
+vpath %.c $(srcdir)
 
 ### Makefile rules - no user-servicable parts below
 
@@ -46,13 +48,9 @@ all: $(ALL)
 $(CONSERVER_OBJS): $(CONSERVER_HDRS)
 
 conserver: $(CONSERVER_OBJS)
-	$(CC) $(CFLAGS) $(LDFLAGS) -o conserver $(CONSERVER_OBJS) $(LIBS)
+	$(LINK.o) $^ $(LOADLIBES) $(LDLIBS) -o $@
 
 convert: convert.o cutil.o
-	$(CC) $(CFLAGS) $(LDFLAGS) -o convert convert.o cutil.o $(LIBS)
-
-.c.o:
-	$(CC) $(CFLAGS) $(CPPFLAGS) -c -o $@ $<
 
 clean:
 	rm -f *~ *.o $(ALL) core
diff --git a/console/Makefile.in b/console/Makefile.in
index 1863927..7e35297 100644
--- a/console/Makefile.in
+++ b/console/Makefile.in
@@ -21,9 +21,11 @@ CFLAGS	= @CFLAGS@
 DEFS	= @DEFS@ -DSYSCONFDIR=\"$(sysconfdir)\"
 CPPFLAGS = -I.. -I$(top_srcdir) -I$(srcdir) -I$(top_srcdir)/conserver $(DEFS) @CPPFLAGS@
 LDFLAGS	= @LDFLAGS@
-LIBS	= @LIBS@
+LDLIBS	= @LIBS@
+LINK.o = $(LINK.c)
 @SET_MAKE@
 
+vpath %.c $(srcdir)
 
 ### Makefile rules - no user-servicable parts below
 
@@ -39,14 +41,10 @@ all: $(ALL)
 
 $(CONSOLE_OBJS): $(CONSOLE_HDRS)
 
-console: $(CONSOLE_OBJS)
-	$(CC) $(CFLAGS) $(LDFLAGS) -o console $(CONSOLE_OBJS) $(LIBS)
+console: $(CONSOLE_OBJS) $(LIBS)
 
 ../conserver/cutil.o:
-	( cd ../conserver && $(MAKE) $(MAKE_FLAGS) cutil.o ) || exit 1;
-
-.c.o:
-	$(CC) $(CFLAGS) $(CPPFLAGS) -c -o $@ $<
+	$(MAKE) -C ../conserver $(MAKE_FLAGS) cutil.o
 
 clean:
 	rm -f *~ *.o $(ALL) core