public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Henry Nestler <Henry.Ne@Arcor.de>
To: Sam Ravnborg <sam@ravnborg.org>
Cc: linux-kernel@vger.kernel.org, Roland McGrath <roland@redhat.com>
Subject: Re: kbuild: LDFLAGS_MODULE unusable for external module builds (2.6.23-rc2)
Date: Wed, 26 Sep 2007 11:56:16 +0200	[thread overview]
Message-ID: <46FA2CC0.2000204@Arcor.de> (raw)
In-Reply-To: <20070925192250.GA14689@uranus.ravnborg.org>

Hello Sam,

Sam Ravnborg wrote:
> Hi Henry.
> 
> On Tue, Sep 25, 2007 at 11:49:44AM +0200, Henry Nestler wrote:
>> In reference of git 114f51577724b782a30f4f5ceaee9880de93d776:
>>>    kbuild: use LDFLAGS_MODULE only for .ko links
>>>    
>>>    Sam Ravnborg pointed out that Documentation/kbuild/makefiles.txt 
>>>    already
>>>    says this is what it's for.  This patch makes the reality live up to 
>>>    the
>>>    documentation.  This fixes the problem of LDFLAGS_BUILD_ID getting 
>>>    into too
>>>    many places.
>> LDFLAGS_MODULE is not usable in module build out of kernel tree since
>> 2.6.23-rc2. LDFLAGS_$@ should use, but does never work. - Not for
>> external module builds with the option "M=..."
> 
> LDFLAGS_MODULE are reserved for architectures and modules be external
> or not should never ude LDFLAGS_MODULE.
> And LDFALGS_$@ have never been documented to work for modules - dunno
> where you have that from.
> IIRC we only use LDFALGS_$@ in the ld macro to be used by bootloaders.
> 
>> What macro should set for linker parameters of foo.o ? I'm not shure.
> Have you read:
> Documentation/kbuild/makfilefiles.txt?

Yes. This was a *very* helpfull. And many examples spokes about 
LDFLAGS_$@ there. Not directly described for modules.

>>From your description you want to add a specific set of options to
> the linker in a specific Kbuild file.
> This is what EXTRA_LDFLAGS are present to help you with.
> 
> As for the:
>> # Deal with recursive depens of libraries
> I am not sure what you mean (despite yout comprehensive description).

depens = lib1 has external dependently from lib2, and lib2 later depends 
on externals from lib1. The main problem is, how can add multiple lib.a 
to module?

> Please try if EXTRA_LDFLAGS := --start-group lib.a --end-group
> will solve your need.

isn't usable. There I have problems with dependencies. dir/lib.a would 
not build, if lib.a is not in the list "...-objs".

> I'm afraid not due to the placement of the --start-group --end-group.
> If this does not help you please give me specific examples of how
> the ld command-line should be then I can see how we tweak kbuild
> to help you.

An abstracted Makefile shows:
   obj-y := dir1/ dir2/ dir3/
   obj-m := name.ko
   name-objs = foo.o dir1/lib.a dir2/lib.a dir3/lib.a
   EXTRA_LDFLAGS := --start-group # recursive dependencies of libraries

 From short testing was seen the flags ok. The current project Makefile 
is in [1]. I will try "EXTRA_LDFLAGS := --start-group" without the 
end-group in the project tree and mail again. Thanks for your help.

[1] 
http://colinux.svn.sourceforge.net/svnroot/colinux/branches/devel/src/colinux/os/linux/kernel/module/Makefile

-- 
Henry


  reply	other threads:[~2007-09-26  9:56 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-09-25  9:49 kbuild: LDFLAGS_MODULE unusable for external module builds (2.6.23-rc2) Henry Nestler
2007-09-25 19:22 ` Sam Ravnborg
2007-09-26  9:56   ` Henry Nestler [this message]
2007-09-26 11:01     ` Sam Ravnborg
2007-09-26 11:31       ` Henry Nestler
2007-09-27  8:21         ` Henry Nestler
2007-09-27  8:26           ` Sam Ravnborg

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=46FA2CC0.2000204@Arcor.de \
    --to=henry.ne@arcor.de \
    --cc=linux-kernel@vger.kernel.org \
    --cc=roland@redhat.com \
    --cc=sam@ravnborg.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox