This patch introduces two special variables which make it actually possible to link something against .so being built in another directory. The variable $(<foo>-linkobjs) allows the user to specify additional objects to link <foo> against, while not creating any dependencies of <foo> on the objects.
I need this in order to link scripts/lxdialog/liblxdialog.so from scripts/kconfig (I'll be able to build that lib thanks to the previous patch and the actual change to make it a library will follow in the next patch). On 6 Nov 2002 Sam Ravnborg <[EMAIL PROTECTED]> disputed this approach, saying that such an extra complexity will bog the whole kernel build, but this involves only the host tools build and there I think the extra penalty is negligible. Also, .so has two users instead of a single one now, so it's not that easy to use his suggested approach to offload the functionality to the leaf makefiles. Signed-off-by: Petr Baudis <[EMAIL PROTECTED]> --- scripts/Makefile.host | 8 +++++++- 1 files changed, 7 insertions(+), 1 deletions(-) diff --git a/scripts/Makefile.host b/scripts/Makefile.host index ff1b54d..1161f4c 100644 --- a/scripts/Makefile.host +++ b/scripts/Makefile.host @@ -34,7 +34,12 @@ # liblxdialog-objs := checklist.o util.o # Will create a "standalone" liblxdialog.so library in the directory, # not linked against anything (useful when you want to link something -# to it later). +# to it later). To link the library from another directory, do: +# hostprogs-y := mconf +# mconf-objs := mconf.o +# mconf-linkobjs := ../lxdialog/liblxdialog.so +# This will prevent kbuild from trying to build ../lxdialog/liblxdialog.so +# from scripts/kconfig nor make mconf depend on it. __hostprogs := $(sort $(hostprogs-y)$(hostprogs-m)) @@ -116,6 +121,7 @@ $(host-csingle): %: %.c FORCE quiet_cmd_host-cmulti = HOSTLD $@ cmd_host-cmulti = $(HOSTCC) $(HOSTLDFLAGS) -o $@ \ $(addprefix $(obj)/,$($(@F)-objs)) \ + $(addprefix $(obj)/,$($(@F)-linkobjs)) \ $(HOST_LOADLIBES) $(HOSTLOADLIBES_$(@F)) $(host-cmulti): %: $(host-cobjs) $(host-cshlib) FORCE $(call if_changed,host-cmulti) ------------------------------------------------------- This SF.net email is sponsored by: Splunk Inc. Do you grep through log files for problems? Stop! Download the new AJAX search engine that makes searching your log files as easy as surfing the web. DOWNLOAD SPLUNK! http://ads.osdn.com/?ad_id=7637&alloc_id=16865&op=click _______________________________________________ kbuild-devel mailing list kbuild-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/kbuild-devel