diff --git a/Makefile.am b/Makefile.am
index c72cd9d46e0979f76a8622cbd873add6c253f7fd..37216bba3e07798847a1cc05726acd0681beea24 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -10,6 +10,7 @@ ACLOCAL_AMFLAGS  = -I ./m4
 #
 
 if INSTALL_LIBTOOL
+BUILT_SOURCES = libtool.alberta2
 libexec_SCRIPTS = libtool.@PACKAGE@
 libtool.@PACKAGE@: libtool
 	cp libtool libtool.@PACKAGE@
@@ -48,7 +49,12 @@ clean-local:
 	-rm -f  $(DEMO).tar.gz
 
 distclean-local:
-	-rm -rf $(DEMO)
+	-rm -f $(BUILT_SOURCES)
+	-chmod -R u+rwX $(DEMO) && rm -rf $(DEMO)
+	-if ! test "$(srcdir)" = "." ; then \
+	    chmod -R u+rwX demo ; \
+            rm -rf demo ; \
+        fi
 
 if MAINTAINER_MODE
 # These targets only makes sense for maintainers!!