All of lore.kernel.org
 help / color / mirror / Atom feed
From: Vojtech Pavlik <vojtech@suse.cz>
To: Keith Owens <kaos@ocs.com.au>
Cc: Frank Davis <fdavis112@juno.com>,
	linux-kernel@vger.kernel.org, Alan Cox <alan@lxorguk.ukuu.org.uk>
Subject: Re: 2.4.5-ac4 es1371.o unresolved symbols
Date: Thu, 31 May 2001 08:08:45 +0200	[thread overview]
Message-ID: <20010531080845.A808@suse.cz> (raw)
In-Reply-To: <20010530181531.A12836@suse.cz> <13404.991272546@kao2.melbourne.sgi.com>
In-Reply-To: <13404.991272546@kao2.melbourne.sgi.com>; from kaos@ocs.com.au on Thu, May 31, 2001 at 11:29:06AM +1000

On Thu, May 31, 2001 at 11:29:06AM +1000, Keith Owens wrote:
> On Wed, 30 May 2001 18:15:31 +0200, 
> Vojtech Pavlik <vojtech@suse.cz> wrote:
> >On Wed, May 30, 2001 at 02:46:42PM +1000, Keith Owens wrote:
> >> This is messy.  gameport.h is included by code outside the joystick
> >> directory and it needs to expand differently based on whether
> >> gameport.o is compiled or not.  Also gameport.o needs to be built in if
> >> _any_ consumers are built in (either joystick or sound), it needs to be
> >> a module otherwise.  Lots of cross config and cross directory
> >> dependencies :(.
> >
> >What about this solution? It's a little cleaner.
> >
> >diff -urN linux-2.4.5-ac4/drivers/char/joystick/Config.in linux/drivers/char/joystick/Config.in
> >+tristate 'Game port support' CONFIG_INPUT_GAMEPORT
> >+   dep_tristate '  Classic ISA/PnP gameports' CONFIG_INPUT_NS558 $CONFIG_INPUT_GAMEPORT
> 
> CONFIG_INPUT_GAMEPORT must be a derived symbol, not a user selected
> symbol.  CONFIG_INPUT_GAMEPORT is 'n' if no gameport drivers are
> installed.  It is 'm' if all gameport drivers are modules *and* all
> users of gameport_register_port() are modules, otherwise it is 'y'.
> 
> With your patch, if a user selects CONFIG_INPUT_GAMEPORT=m and
> CONFIG_SOUND_ES1370=y then the built in es1370 driver has unresolved
> references to gameport_register_port() which is in a module, vmlinux
> will not link.  That is why I derived CONFIG_INPUT_GAMEPORT based on
> the config options in two separate directories.

Have you tried the patch? Because the gameport.h define has:

#if defined(CONFIG_INPUT_GAMEPORT) || (defined(CONFIG_INPUT_GAMEPORT_MODULE) && defined(MODULE))
void gameport_register_port(struct gameport *gameport);
void gameport_unregister_port(struct gameport *gameport);
#else
void __inline__ gameport_register_port(struct gameport *gameport) { return; }
void __inline__ gameport_unregister_port(struct gameport *gameport) { return; }
#endif

I think it should work.

-- 
Vojtech Pavlik
SuSE Labs

  reply	other threads:[~2001-05-31  7:23 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2001-05-30  1:56 2.4.5-ac4 es1371.o unresolved symbols Frank Davis
2001-05-30  2:22 ` Keith Owens
2001-05-30  4:46 ` Keith Owens
2001-05-30 16:15   ` Vojtech Pavlik
2001-05-31  1:29     ` Keith Owens
2001-05-31  6:08       ` Vojtech Pavlik [this message]
2001-05-31  7:52         ` Keith Owens
2001-05-31  8:06           ` Vojtech Pavlik
2001-05-31  8:13             ` Vojtech Pavlik
2001-05-31  8:34             ` Keith Owens

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=20010531080845.A808@suse.cz \
    --to=vojtech@suse.cz \
    --cc=alan@lxorguk.ukuu.org.uk \
    --cc=fdavis112@juno.com \
    --cc=kaos@ocs.com.au \
    --cc=linux-kernel@vger.kernel.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.