ID: 48947 Updated by: j...@php.net Reported By: s...@php.net -Status: Open +Status: Closed Bug Type: Compile Failure Operating System: Ubuntu 8.10 (32bit) PHP Version: 5.3CVS-2009-07-16 (CVS) New Comment:
Fixed in all branches. And if you really want to do clean builds, build outside source tree. Previous Comments: ------------------------------------------------------------------------ [2009-07-16 16:50:57] s...@php.net Description: ------------ The files removed by vcsclean are only a subset of the files removed by 'make clean'. File extensions .lo .la .gcno .gcda are not removed by vcsclean. Using the sequence 'cd php53; svn up; ./vcsclean; ./configure ...; make' fails to find some .o files. Some .o's get built but link fails with a bunch of errors of the form: gcc: ext/<ext>/.libs/<file>.o: No such file or directory The vcsclean command removes the ext/*/.libs directories but doesn't remove ext/*.lo files. This causes C files to be skipped for recompilation and no .libs/*.o files are created. A patch is to add .lo to the extension list in build/build.mk. Index: build.mk =================================================================== --- build.mk (revision 284190) +++ build.mk (working copy) @@ -67,12 +67,12 @@ cvsclean-work: @for i in `find . -name .cvsignore`; do \ - (cd `dirname $$i` 2>/dev/null && rm -rf `cat .cvsignore | grep -v config.nice | sed 's/[[:space:]]/ /g'` *.o *.a .libs || true); \ + (cd `dirname $$i` 2>/dev/null && rm -rf `cat .cvsignore | grep -v config.nice | sed 's/[[:space:]]/ /g'` *.lo *.o *.a .libs || true); \ done svnclean-work: @for i in `find . -type d -not -path '*/.svn/*' | grep -v '.svn'`; do \ - (cd `dirname $$i` 2>/dev/null && rm -rf `svn propget svn:ignore . | grep -v config.nice` *.o *.a .libs || true); \ + (cd `dirname $$i` 2>/dev/null && rm -rf `svn propget svn:ignore . | grep -v config.nice` *.o *.lo *.a .libs || true); \ done gitclean-work: Also, adding '.la .gcno .gcda' in addition to '.lo' would make vcsclean consistent with 'make clean'. A secondary bug is that .o files are not recreated from existing .lo files. ------------------------------------------------------------------------ -- Edit this bug report at http://bugs.php.net/?id=48947&edit=1