From: SourceForge.net <no...@so...> - 2006-11-13 11:15:38
|
Bugs item #1594199, was opened at 2006-11-10 15:46 Message generated for change (Comment added) made by henryn You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=622063&aid=1594199&group_id=98788 Please note that this message will contain a full copy of the comment thread, including the initial issue submission, for this request, not just the latest update. Category: None Group: v0.8.x (devel) Status: Open Resolution: None Priority: 5 Private: No Submitted By: Matthias Kievernagel (mkiever) Assigned to: Henry N. (henryn) Summary: make clean problem Initial Comment: After building the latest development snapshot devel-colinux-2006100, I tried to "make clean" which failed. The following is a patch created using monotone (mtn diff) against latest devel sources. - recursion of clean() no longer follows links - no longer delets anything in local mingw32 installation I did not add the second patch to "make distclean" also, because you might want to delete mingw32 in this case entirely (?). Thanks for your Software, Matthias Kievernagel (mkiever - at - web - dot - de) btw. python 2.5 will obsolete sre module. you should replace it with re. --- start of patch --- # # old_revision [3f688478ad2a9021b74dfe67ca8d00971ded7a38] # # patch "Makefile" # from [541642e89a749fd287ce0e2463d167f8abbb7683] # to [95bed2b568c6ae7fc251dc275053b4136343915d] # # patch "bin/comake/target.py" # from [39a3e53fcc0b587a2936c07c6a43a403bbe3e3dd] # to [a5d1d7d6544718c96808f80c250c44afcd7f2ccb] # ======================================================= ===== --- Makefile 541642e89a749fd287ce0e2463d167f8abbb7683 +++ Makefile 95bed2b568c6ae7fc251dc275053b4136343915d @@ -44,9 +44,9 @@ clean: clean: @cd src && make clean - find . \( -name '.tmp_versions' \ + find . -path ./mingw32 -prune -o \( -name '. tmp_versions' \ \) -type d -print | xargs rm -rf - find . \( -name '*.o' -o -name '*.pyc' \ + find . -path ./mingw32 -prune -o \( -name '*.o' -o -name '*.pyc' \ -o -name '.*.cmd' -o -name 'colinux. mod.c' \ \) -type f -print | xargs rm -f ======================================================= ===== --- bin/comake/target.py 39a3e53fcc0b587a2936c07c6a43a403bbe3e3dd +++ bin/comake/target.py a5d1d7d6544718c96808f80c250c44afcd7f2ccb @@ -348,7 +348,8 @@ def clean(): unlink(fullname) if os.path.isdir(fullname): - _recur(fullname) + if not os.path.islink(fullname): + _recur(fullname) if comake_dir: unlink(fullname) --- end of patch --- ---------------------------------------------------------------------- >Comment By: Henry N. (henryn) Date: 2006-11-13 12:15 Message: Logged In: YES user_id=579204 Hello Matthias, the one problem is, that build and mingw32 are not designed to use into the source tree of colinux (the tree you have unpacked from Monotone or source tar, ). Please see into the file doc/building "Source tree after building", there I wrote a typical file tree with comments about shell variables. The build dir contains kernel source and builds, and should not removed by clean or distclean. Peoples use this directory do build theyr one kernel config. We can add a new clean step, for sample 'uninstall' to remove more of the colinux binaries, the mingw32 and kernels. mingw32 dir should never clean from any scripts. The python clean was start in "src" and should not go outside of this directory. Perhaps it is only a wrong default setting the sample.user-build.cfg? How do you starts the compiling? With some of the "bin/build-*.sh"? Or with "./configure && make" in top dir? ---------------------------------------------------------------------- Comment By: Matthias Kievernagel (mkiever) Date: 2006-11-13 10:39 Message: Logged In: YES user_id=1477880 Hello Henry, - mingw32 inside the colinux source topdir is proposed by 'bin/sample.user-build.cfg'. - You don't include the build directory. There is nothing to clean in there? - The problem with the python clean() function in target.py remains. It produces endless recursion at this point: ----------------------------------------------------- mkiever@linux:~/pro/colinux-trunk/colinux> ll build/linux-2.6.17-build/ _install/lib/modules/2.6.17-co-0.8.0/ total 68 lrwxrwxrwx 1 mkiever users 64 2006-11-13 10:52 build -> /home/ mkiever/pro/colinux-trunk/colinux/build/linux-2.6.17-build drwxr-xr-x 8 mkiever users 192 2006-11-13 10:52 kernel -rw-r--r-- 1 mkiever users 1968 2006-11-13 10:52 modules.alias -rw-r--r-- 1 mkiever users 69 2006-11-13 10:52 modules.ccwmap -rw-r--r-- 1 mkiever users 21489 2006-11-13 10:52 modules.dep -rw-r--r-- 1 mkiever users 73 2006-11-13 10:52 modules.ieee1394map -rw-r--r-- 1 mkiever users 132 2006-11-13 10:52 modules.inputmap -rw-r--r-- 1 mkiever users 81 2006-11-13 10:52 modules.isapnpmap -rw-r--r-- 1 mkiever users 99 2006-11-13 10:52 modules.pcimap -rw-r--r-- 1 mkiever users 12715 2006-11-13 10:52 modules.symbols -rw-r--r-- 1 mkiever users 189 2006-11-13 10:52 modules.usbmap lrwxrwxrwx 1 mkiever users 65 2006-11-13 10:52 source -> /home/ mkiever/pro/colinux-trunk/colinux/build/linux-2.6.17-source ---------------------------------------- Should the python clean() also work only on src and bin? Matthias. ---------------------------------------------------------------------- Comment By: Henry N. (henryn) Date: 2006-11-10 16:41 Message: Logged In: YES user_id=579204 Hello Matthias, this helps only in your specialy case, where mingw32 is inside the colinux source topdir. The basely error is, that find should not start at '.', it should run from known directories './src' and './bin' instead. This would save all your private directories and you not lose the 'crtbegin.o' from your mingw ;-) See the changed patch. Is this working for you? >From start of directory './src' should remove all soft links. That is needed by changing the host target OS from windows to linux. And this should remove all the executable files, they are soflinks to .comake.build directory. Check this: # file src/colinux/os/winnt/build/*.exe src/colinux/os/winnt/build/colinux-daemon.exe: symbolic link to `.comake.build/colinux-daemon.exe-282f9907262fa1f7b445bb7bffea4ebc' ... Henry ---------------------------------------------------------------------- Comment By: Henry N. (henryn) Date: 2006-11-10 16:38 Message: Logged In: YES user_id=579204 Hello Matthias, this helps only in your specialy case, where mingw32 is inside the colinux source topdir. The basely error is, that find should not start at '.', it should run from known directories './src' and './bin' instead. This would save all your private directories and you not lose the 'crtbegin.o' from your mingw ;-) See the changed patch. Is this working for you? >From start of directory './src' should remove all soft links. That is needed by changing the host target OS from windows to linux. And this should remove all the executable files, they are soflinks to .comake.build directory. Check this: # file src/colinux/os/winnt/build/*.exe src/colinux/os/winnt/build/colinux-daemon.exe: symbolic link to `.comake.build/colinux-daemon.exe-282f9907262fa1f7b445bb7bffea4ebc' ... Henry ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=622063&aid=1594199&group_id=98788 |