Re: 2.4.2-pre1 mkdep and symlinked $TOPDIR

From: Keith Owens (kaos@ocs.com.au)
Date: Sun Mar 04 2001 - 19:21:21 EST


On Sun, 04 Mar 2001 16:24:57 +1100,
Andrew Morton <andrewm@uow.edu.au> wrote:
>I do builds in /usr/src/linux, which is a symlink
>to /usr/src/linux-akpm. The recent `mkdep' changes
>have broken this practice most horridly. When searching
>.hdepend, `make' doesn't recognise that nested headers
>have changed. This is because .hdepend has things like
>
>/usr/src/linux/include/asm/byteorder.h: \
> /usr/src/linux-akpm/include/asm/types.h \

I do not see this problem in 2.4.3-pre2.

# ls -l linux
lrwxrwxrwx 1 kaos ocs 10 Mar 5 10:47 linux -> 2.4.3-pre2
# cd linux
# make dep
make dep
gcc -Wall -Wstrict-prototypes -O2 -fomit-frame-pointer -o scripts/mkdep scripts/mkdep.c
make[1]: Entering directory `/usr/src/2.4.3-pre2/arch/i386/boot'
make[1]: Nothing to be done for `dep'.
make[1]: Leaving directory `/usr/src/2.4.3-pre2/arch/i386/boot'
scripts/mkdep -- init/*.c > .depend
scripts/mkdep -- `find /usr/src/2.4.3-pre2/include/asm /usr/src/2.4.3-pre2/include/linux /usr/src/2.4.3-pre2/include/scsi /usr/src/2.4.3-pre2/include/net -name SCCS -prune -o -follow -name \*.h ! -name modversions.h -print` > .hdepend

The find command is given the real pathname, not the symlink so the
.hdepend and .depend files all contain the real paths. Your problem is
probably this line in the top level Makefile.

TOPDIR := $(shell if [ "$$PWD" != "" ]; then echo $$PWD; else pwd; fi)

TOPDIR must be getting set to the symlink name instead of the real
pathname. Can you confirm what TOPDIR is being set to and why? This
may be a shell problem.

TOPDIR := $(shell if [ "$$PWD" != "" ]; then echo $$PWD; else pwd; fi)
dummy := $(shell echo PWD="$$PWD" pwd=$(shell pwd) TOPDIR=$(TOPDIR) >&2)

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Wed Mar 07 2001 - 21:00:16 EST