On Wed 15 May 2013 13:40:50 Geert Uytterhoeven wrote: > The current Makefile rules to build font support are messy and buggy. > Replace them by Kconfig rules: > - Introduce CONFIG_FONT_SUPPORT, which controls the building of all font > code, > - Select CONFIG_FONT_SUPPORT for all drivers that use fonts, > - Select CONFIG_FONT_8x16 for all drivers that default to the VGA8x16 > font, > - Drop the bogus console dependency for CONFIG_VIDEO_VIVI. > > This fixes (if CONFIG_SOLO6X10=y and there are no built-in console > drivers): > > drivers/built-in.o: In function `solo_osd_print': > drivers/staging/media/solo6x10/solo6x10-enc.c:144: undefined reference to `.find_font' > > Signed-off-by: Geert Uytterhoeven <geert@xxxxxxxxxxxxxx> That looks much more sane. Thanks! Acked-by: Hans Verkuil <hans.verkuil@xxxxxxxxx> > --- > drivers/media/platform/Kconfig | 2 +- > drivers/staging/media/solo6x10/Kconfig | 2 ++ > drivers/usb/misc/sisusbvga/Kconfig | 1 + > drivers/video/console/Kconfig | 12 ++++++++++-- > drivers/video/console/Makefile | 14 +++++--------- > 5 files changed, 19 insertions(+), 12 deletions(-) > > diff --git a/drivers/media/platform/Kconfig b/drivers/media/platform/Kconfig > index 0cbe1ff..c1f29d5 100644 > --- a/drivers/media/platform/Kconfig > +++ b/drivers/media/platform/Kconfig > @@ -220,7 +220,7 @@ if V4L_TEST_DRIVERS > config VIDEO_VIVI > tristate "Virtual Video Driver" > depends on VIDEO_DEV && VIDEO_V4L2 && !SPARC32 && !SPARC64 > - depends on FRAMEBUFFER_CONSOLE || STI_CONSOLE > + select FONT_SUPPORT > select FONT_8x16 > select VIDEOBUF2_VMALLOC > default n > diff --git a/drivers/staging/media/solo6x10/Kconfig b/drivers/staging/media/solo6x10/Kconfig > index ec32776..b34bb6c 100644 > --- a/drivers/staging/media/solo6x10/Kconfig > +++ b/drivers/staging/media/solo6x10/Kconfig > @@ -1,6 +1,8 @@ > config SOLO6X10 > tristate "Softlogic 6x10 MPEG codec cards" > depends on PCI && VIDEO_DEV && SND && I2C > + select FONT_SUPPORT > + select FONT_8x16 > select VIDEOBUF2_DMA_SG > select VIDEOBUF2_DMA_CONTIG > select SND_PCM > diff --git a/drivers/usb/misc/sisusbvga/Kconfig b/drivers/usb/misc/sisusbvga/Kconfig > index 0d03a52..36bc28c 100644 > --- a/drivers/usb/misc/sisusbvga/Kconfig > +++ b/drivers/usb/misc/sisusbvga/Kconfig > @@ -2,6 +2,7 @@ > config USB_SISUSBVGA > tristate "USB 2.0 SVGA dongle support (Net2280/SiS315)" > depends on (USB_MUSB_HDRC || USB_EHCI_HCD) > + select FONT_SUPPORT if USB_SISUSBVGA_CON > ---help--- > Say Y here if you intend to attach a USB2VGA dongle based on a > Net2280 and a SiS315 chip. > diff --git a/drivers/video/console/Kconfig b/drivers/video/console/Kconfig > index bc922c4..baf27dc 100644 > --- a/drivers/video/console/Kconfig > +++ b/drivers/video/console/Kconfig > @@ -62,6 +62,7 @@ config MDA_CONSOLE > config SGI_NEWPORT_CONSOLE > tristate "SGI Newport Console support" > depends on SGI_IP22 > + select FONT_SUPPORT > help > Say Y here if you want the console on the Newport aka XL graphics > card of your Indy. Most people say Y here. > @@ -91,6 +92,7 @@ config FRAMEBUFFER_CONSOLE > tristate "Framebuffer Console support" > depends on FB > select CRC32 > + select FONT_SUPPORT > help > Low-level framebuffer-based console driver. > > @@ -123,12 +125,18 @@ config FRAMEBUFFER_CONSOLE_ROTATION > config STI_CONSOLE > bool "STI text console" > depends on PARISC > + select FONT_SUPPORT > default y > help > The STI console is the builtin display/keyboard on HP-PARISC > machines. Say Y here to build support for it into your kernel. > The alternative is to use your primary serial port as a console. > > +config FONT_SUPPORT > + tristate > + > +if FONT_SUPPORT > + > config FONTS > bool "Select compiled-in fonts" > depends on FRAMEBUFFER_CONSOLE || STI_CONSOLE > @@ -158,7 +166,6 @@ config FONT_8x8 > > config FONT_8x16 > bool "VGA 8x16 font" if FONTS > - depends on FRAMEBUFFER_CONSOLE || SGI_NEWPORT_CONSOLE || STI_CONSOLE || USB_SISUSBVGA_CON > default y if !SPARC && !FONTS > help > This is the "high resolution" font for the VGA frame buffer (the one > @@ -226,7 +233,6 @@ config FONT_10x18 > > config FONT_AUTOSELECT > def_bool y > - depends on FRAMEBUFFER_CONSOLE || SGI_NEWPORT_CONSOLE || STI_CONSOLE || USB_SISUSBVGA_CON > depends on !FONT_8x8 > depends on !FONT_6x11 > depends on !FONT_7x14 > @@ -238,5 +244,7 @@ config FONT_AUTOSELECT > depends on !FONT_10x18 > select FONT_8x16 > > +endif # FONT_SUPPORT > + > endmenu > > diff --git a/drivers/video/console/Makefile b/drivers/video/console/Makefile > index a862e91..3a11b63 100644 > --- a/drivers/video/console/Makefile > +++ b/drivers/video/console/Makefile > @@ -18,14 +18,14 @@ font-objs-$(CONFIG_FONT_MINI_4x6) += font_mini_4x6.o > > font-objs += $(font-objs-y) > > -# Each configuration option enables a list of files. > +obj-$(CONFIG_FONT_SUPPORT) += font.o > > obj-$(CONFIG_DUMMY_CONSOLE) += dummycon.o > -obj-$(CONFIG_SGI_NEWPORT_CONSOLE) += newport_con.o font.o > -obj-$(CONFIG_STI_CONSOLE) += sticon.o sticore.o font.o > +obj-$(CONFIG_SGI_NEWPORT_CONSOLE) += newport_con.o > +obj-$(CONFIG_STI_CONSOLE) += sticon.o sticore.o > obj-$(CONFIG_VGA_CONSOLE) += vgacon.o > obj-$(CONFIG_MDA_CONSOLE) += mdacon.o > -obj-$(CONFIG_FRAMEBUFFER_CONSOLE) += fbcon.o bitblit.o font.o softcursor.o > +obj-$(CONFIG_FRAMEBUFFER_CONSOLE) += fbcon.o bitblit.o softcursor.o > ifeq ($(CONFIG_FB_TILEBLITTING),y) > obj-$(CONFIG_FRAMEBUFFER_CONSOLE) += tileblit.o > endif > @@ -34,8 +34,4 @@ obj-$(CONFIG_FRAMEBUFFER_CONSOLE) += fbcon_rotate.o fbcon_cw.o fbcon_ud.o \ > fbcon_ccw.o > endif > > -obj-$(CONFIG_FB_STI) += sticore.o font.o > - > -ifeq ($(CONFIG_USB_SISUSBVGA_CON),y) > -obj-$(CONFIG_USB_SISUSBVGA) += font.o > -endif > +obj-$(CONFIG_FB_STI) += sticore.o > _______________________________________________ devel mailing list devel@xxxxxxxxxxxxxxxxxxxxxx http://driverdev.linuxdriverproject.org/mailman/listinfo/devel