Recently, I had to check out a linux tree at work from cvs. I only knew the repository, but didn't know the module to check out. So I made my best guess and started building the kernel. After plowing through a couple of little things, I hit the wall with:
scripts/Makefile.build:17: /pe/imp/xxx/linux-2.6.xxx/net/core/Makefile: No such file or directory
gmake[2]: *** No rule to make target `/pe/imp/xxx/linux-2.6.xxx/net/core/Makefile'. Stop.
Guess what someone forgot to do when they were doing the cvs import :-)
For those wondering...
ReplyDeleteCVS automatically ignores, by default, all files named core. This is in the default cvsignore list. However, linux has sevearl directories named core, so if someone does a cvs import with the default ignore list, all of them are omitted from the tree that's later checked out.
That's what happened to my tree. I was able to find a different module that had the core directories in it with just a little bit of searching through the rest of the repository.
It was very gratifying to see that other people had been burned by this as well. Usually I was burned by it when doing cvs imports of FreeBSD which has some man pages named foo.a, which were ignored because of another line in the default file.