mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
* linux-next: allyesconfig build failure in drivers/usb/gadget
@ 2012-04-24 21:10 H Hartley Sweeten
  2012-04-24 21:35 ` Greg KH
  0 siblings, 1 reply; 2+ messages in thread
From: H Hartley Sweeten @ 2012-04-24 21:10 UTC (permalink / raw)
  To: Linux Kernel; +Cc: linux-usb, balbi

Hello all,

I'm not sure if this is a known issue or not...

I was trying an allyesconfig build of linux-next (next-20120224) and got this:

drivers/usb/built-in.o: In function `usb_descriptor_fillbuf':
/home/bigguiness/src/git/linux-next/drivers/usb/gadget/config.c:38: multiple definition of `usb_descriptor_fillbuf'
drivers/target/built-in.o:/home/bigguiness/src/git/linux-next/drivers/usb/gadget/config.c:38: first defined here
drivers/usb/built-in.o: In function `usb_string_ids_n':
/home/bigguiness/src/git/linux-next/drivers/usb/gadget/composite.c:994: multiple definition of `usb_string_ids_n'
drivers/target/built-in.o:/home/bigguiness/src/git/linux-next/drivers/usb/gadget/composite.c:994: first defined here
drivers/usb/built-in.o: In function `usb_interface_id':
/home/bigguiness/src/git/linux-next/drivers/usb/gadget/composite.c:341: multiple definition of `usb_interface_id'
drivers/target/built-in.o:/home/bigguiness/src/git/linux-next/drivers/usb/gadget/composite.c:341: first defined here
drivers/usb/built-in.o: In function `usb_string_id':
/home/bigguiness/src/git/linux-next/drivers/usb/gadget/composite.c:932: multiple definition of `usb_string_id'
drivers/target/built-in.o:/home/bigguiness/src/git/linux-next/drivers/usb/gadget/composite.c:932: first defined here
drivers/usb/built-in.o: In function `usb_string_ids_tab':
/home/bigguiness/src/git/linux-next/drivers/usb/gadget/composite.c:960: multiple definition of `usb_string_ids_tab'
drivers/target/built-in.o:/home/bigguiness/src/git/linux-next/drivers/usb/gadget/composite.c:960: first defined here
drivers/usb/built-in.o: In function `usb_copy_descriptors':
/home/bigguiness/src/git/linux-next/drivers/usb/gadget/config.c:124: multiple definition of `usb_copy_descriptors'
drivers/target/built-in.o:/home/bigguiness/src/git/linux-next/drivers/usb/gadget/config.c:124: first defined here
drivers/usb/built-in.o: In function `usb_composite_unregister':
/home/bigguiness/src/git/linux-next/drivers/usb/gadget/composite.c:1602: multiple definition of `usb_composite_unregister'
drivers/target/built-in.o:/home/bigguiness/src/git/linux-next/drivers/usb/gadget/composite.c:1602: first defined here
drivers/usb/built-in.o: In function `config_ep_by_speed':
/home/bigguiness/src/git/linux-next/drivers/usb/gadget/composite.c:119: multiple definition of `config_ep_by_speed'
drivers/target/built-in.o:/home/bigguiness/src/git/linux-next/drivers/usb/gadget/composite.c:119: first defined here
drivers/usb/built-in.o: In function `usb_gadget_get_string':
/home/bigguiness/src/git/linux-next/drivers/usb/gadget/usbstring.c:41: multiple definition of `usb_gadget_get_string'
drivers/target/built-in.o:/home/bigguiness/src/git/linux-next/drivers/usb/gadget/usbstring.c:41: first defined here
drivers/usb/built-in.o: In function `usb_add_function':
/home/bigguiness/src/git/linux-next/drivers/usb/gadget/composite.c:209: multiple definition of `usb_add_function'
drivers/target/built-in.o:/home/bigguiness/src/git/linux-next/drivers/usb/gadget/composite.c:209: first defined here
drivers/usb/built-in.o: In function `usb_composite_probe':
/home/bigguiness/src/git/linux-next/drivers/usb/gadget/composite.c:1576: multiple definition of `usb_composite_probe'
drivers/target/built-in.o:/home/bigguiness/src/git/linux-next/drivers/usb/gadget/composite.c:1576: first defined here
drivers/usb/built-in.o: In function `usb_composite_setup_continue':
/home/bigguiness/src/git/linux-next/drivers/usb/gadget/composite.c:1619: multiple definition of `usb_composite_setup_continue'
drivers/target/built-in.o:/home/bigguiness/src/git/linux-next/drivers/usb/gadget/composite.c:1619: first defined here
drivers/usb/built-in.o: In function `usb_gadget_config_buf':
/home/bigguiness/src/git/linux-next/drivers/usb/gadget/config.c:84: multiple definition of `usb_gadget_config_buf'
drivers/target/built-in.o:/home/bigguiness/src/git/linux-next/drivers/usb/gadget/config.c:84: first defined here
drivers/usb/built-in.o: In function `usb_ep_autoconfig':
/home/bigguiness/src/git/linux-next/drivers/usb/gadget/epautoconf.c:367: multiple definition of `usb_ep_autoconfig'
drivers/target/built-in.o:/home/bigguiness/src/git/linux-next/drivers/usb/gadget/epautoconf.c:367: first defined here
drivers/usb/built-in.o: In function `usb_function_activate':
/home/bigguiness/src/git/linux-next/drivers/usb/gadget/composite.c:298: multiple definition of `usb_function_activate'
drivers/target/built-in.o:/home/bigguiness/src/git/linux-next/drivers/usb/gadget/composite.c:298: first defined here
drivers/usb/built-in.o: In function `usb_ep_autoconfig_reset':
/home/bigguiness/src/git/linux-next/drivers/usb/gadget/epautoconf.c:382: multiple definition of `usb_ep_autoconfig_reset'
drivers/target/built-in.o:/home/bigguiness/src/git/linux-next/drivers/usb/gadget/epautoconf.c:382: first defined here
drivers/usb/built-in.o: In function `usb_add_config':
/home/bigguiness/src/git/linux-next/drivers/usb/gadget/composite.c:713: multiple definition of `usb_add_config'
drivers/target/built-in.o:/home/bigguiness/src/git/linux-next/drivers/usb/gadget/composite.c:713: first defined here
drivers/usb/built-in.o: In function `usb_ep_autoconfig_ss':
/home/bigguiness/src/git/linux-next/drivers/usb/gadget/epautoconf.c:265: multiple definition of `usb_ep_autoconfig_ss'
drivers/target/built-in.o:/home/bigguiness/src/git/linux-next/drivers/usb/gadget/epautoconf.c:265: first defined here
drivers/usb/built-in.o: In function `usb_function_deactivate':
/home/bigguiness/src/git/linux-next/drivers/usb/gadget/composite.c:271: multiple definition of `usb_function_deactivate'
drivers/target/built-in.o:/home/bigguiness/src/git/linux-next/drivers/usb/gadget/composite.c:271: first defined here
make[1]: *** [drivers/built-in.o] Error 1
make: *** [drivers] Error 2

It appears config.c, composite.c, usbstring.c, and epautoconf.c are not
actually built separately during the make but are #include'd by various
other sources. All of these files have functions that are not marked static
so we end up with the 'multiple definition' errors.

Should these files be compiled separately and treated as a gadget library?

Regards,
Hartley

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2012-04-24 21:36 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2012-04-24 21:10 linux-next: allyesconfig build failure in drivers/usb/gadget H Hartley Sweeten
2012-04-24 21:35 ` Greg KH

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®