[CLN-list] prevent infinite loop in `make clean'

Ralf Wildenhues Ralf.Wildenhues at gmx.de
Fri Jun 10 18:11:28 CEST 2005


I aborted `make' early, before the `benchmarks' directory was even
created.  Caused the following `make clean' to spawn like hell:

[...]
| cd benchmarks; make clean
| /bin/sh: line 0: cd: benchmarks: No such file or directory
| make[6]: Entering directory `/home/wildenhu/download/software/cln/build-gcc-4.0.0'
| cd src; make clean
| make[7]: Entering directory `/home/wildenhu/download/software/cln/build-gcc-4.0.0/src'
| rm -f *.s *.o *.lo *.a *.la core
[...]

`cd' can fail, too.  :)

Regards,
Ralf

        * Makefile.in: Don't enter nonexisting directories.

Index: Makefile.in
===================================================================
RCS file: /home/cvs/cln/Makefile.in,v
retrieving revision 1.12
diff -u -r1.12 Makefile.in
--- Makefile.in	26 Oct 2004 22:23:41 -0000	1.12
+++ Makefile.in	10 Jun 2005 15:55:05 -0000
@@ -30,47 +30,47 @@
 SHELL = /bin/sh
 
 all : force
-	cd @subdir@; $(MAKE) all
+	cd @subdir@ && $(MAKE) all
 
 install : installdirs force
-	cd @subdir@; $(MAKE) install
+	cd @subdir@ && $(MAKE) install
 	$(INSTALL_SCRIPT) cln-config $(DESTDIR)$(bindir)/cln-config
 	$(INSTALL_DATA) cln-config.1 $(DESTDIR)$(mandir)/man1/cln-config.1
 	$(INSTALL_DATA) ${srcdir}/cln.m4 ${DESTDIR}${datadir}/aclocal/cln.m4
 	$(INSTALL_DATA) cln.pc $(DESTDIR)$(libdir)/pkgconfig/cln.pc
 
 installdirs : force
-	cd @subdir@; $(MAKE) installdirs
+	cd @subdir@ && $(MAKE) installdirs
 	$(MKDIR) $(DESTDIR)$(mandir)/man1
 	$(MKDIR) $(DESTDIR)$(datadir)/aclocal
 	$(MKDIR) $(DESTDIR)$(bindir)
 	$(MKDIR) $(DESTDIR)$(libdir)/pkgconfig
 
 uninstall : force
-	cd @subdir@; $(MAKE) uninstall
+	cd @subdir@ && $(MAKE) uninstall
 	$(RM) $(DESTDIR)$(bindir)/cln-config
 	$(RM) $(DESTDIR)$(mandir)/man1/cln-config.1
 	$(RM) $(DESTDIR)$(datadir)/aclocal/cln.m4
 	$(RM) $(DESTDIR)$(libdir)/pkgconfig/cln.pc
 
 check : force
-	cd @subdir@; $(MAKE) check
+	cd @subdir@ && $(MAKE) check
 
 mostlyclean : force
-	cd @subdir@; $(MAKE) mostlyclean
+	cd @subdir@ && $(MAKE) mostlyclean
 
 clean : force
-	cd @subdir@; $(MAKE) clean
+	cd @subdir@ && $(MAKE) clean
 
 distclean : force
-	cd @subdir@; if test -f Makefile; then $(MAKE) distclean; fi
+	cd @subdir@ && if test -f Makefile; then $(MAKE) distclean; fi
 	$(RM) config.status config.log config.cache Makefile
 	$(RM) cln-config cln-config.1 cln.pc
 	$(RM) libtool
 	$(RM) include/cln/config.h include/cln/intparam.h include/cln/floatparam.h src/base/cl_base_config.h src/base/cl_gmpconfig.h src/float/cl_float_config.h src/timing/cl_t_config.h
 
 maintainer-clean : force
-	cd @subdir@; if test -f Makefile; then $(MAKE) maintainer-clean; fi
+	cd @subdir@ && if test -f Makefile; then $(MAKE) maintainer-clean; fi
 	$(RM) config.status config.log config.cache Makefile
 	$(RM) cln-config cln-config.1 cln.spec cln.pc
 	$(RM) libtool




More information about the CLN-list mailing list