>>1. My vmlinux.lds.i depends on a config symbol (CONFIG_SHARED_KERNEL), so I >>#included >>config.h and used #ifdef in a few places. However, the dependency on the >>configuration >>does not work unless I give the explicit rule >>$(objfile vmlinux.lds.i): $(objfile /include/linux/autoconf.h) >>in my Makefile.in. That does not look clean, is there a better way to do >>it? > > Not necessary. Use vmlinux.lds.S and no vmlinux.lds.i file. kbuild > 2.5 automatically builds .i files from .S and tracks the config > dependencies. If it does not track them, it is a bug. Ok, that's what I did. Like in i386, I have 'extra_aflags(vmlinux.lds.i -U $(ARCH) -C -P)' in my Makefile.in and have the vmlinux.lds.i in generated from the .S that contains my #ifdef. I just tried renaming vmlinux.lds.S to vmlinux.lds.c, but the results are identical, so it's not a bug with CONFIG_* dependencies in .S files. If I add 'select(vmlinux.lds.o)' to my Makefile.in, the dependency checking works fine, but of course the link will fail...
> You cannot use the same object tree for two different architectures, > you need separate objtrees. In particular the kbuild database which > lives in objtree is persistent and still contains data for the other > architecture. Yes, that's fine. Still, I would prefer kbuild to either give an error message or to rebuild the objtree whenever someone tries this instead of simply making the tree unusable. Of course there is not much use trying to reuse an objtree for different archs, but it happened to me more than once that I mistyped the architecture name after alternating between s390 and s390x for a few hours... Arnd <>< PS: sorry for my bad mail formatting, but our security policy doesn't allow me to use a working mail tool. _______________________________________________ kbuild-devel mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/kbuild-devel