[PATCH] tdfxfb linkage fix v2.0 (the previous one is broken)

From: Paolo Ornati
Date: Fri Sep 03 2004 - 09:27:57 EST


The patch I've sent to fix tdfx frame buffer linkage is broken because it
can leads to linking errors like this one:

LD drivers/video/built-in.o
drivers/video/tdfxfb_lib.o(.text+0x13e0): In function `cfb_copyarea':
: multiple definition of `cfb_copyarea'
drivers/video/cfbcopyarea.o(.text+0x6e0): first defined here
drivers/video/tdfxfb_lib.o(.text+0x7c0): In function `bitfill32_rev':
: multiple definition of `bitfill32_rev'
drivers/video/cfbfillrect.o(.text+0x200): first defined here
drivers/video/tdfxfb_lib.o(.text+0x690): In function `bitfill':
: multiple definition of `bitfill'
drivers/video/cfbfillrect.o(.text+0xd0): first defined here
drivers/video/tdfxfb_lib.o(.text+0x8b0): In function `bitfill_rev':
: multiple definition of `bitfill_rev'
drivers/video/cfbfillrect.o(.text+0x2f0): first defined here
drivers/video/tdfxfb_lib.o(.text+0x5c0): In function `bitfill32':
: multiple definition of `bitfill32'
drivers/video/cfbfillrect.o(.text+0x0): first defined here
drivers/video/tdfxfb_lib.o(.text+0x0): In function `cfb_imageblit':
: multiple definition of `cfb_imageblit'
drivers/video/cfbimgblt.o(.text+0x0): first defined here
drivers/video/tdfxfb_lib.o(.text+0x9f0): In function `cfb_fillrect':
: multiple definition of `cfb_fillrect'
drivers/video/cfbfillrect.o(.text+0x430): first defined here
make[1]: *** [drivers/video/built-in.o] Error 1
make: *** [drivers/video/] Error 2


This patch really fixes tdfxfb linkage, please apply:

--- linux-mm/drivers/video/Makefile.orig 2004-09-03 15:25:08.527030328 +0200
+++ linux-mm/drivers/video/Makefile 2004-09-03 15:26:57.106523736 +0200
@@ -34,10 +34,9 @@ obj-$(CONFIG_FB_CYBER) += cyb
obj-$(CONFIG_FB_CYBER2000) += cyber2000fb.o cfbfillrect.o cfbcopyarea.o cfbimgblt.o
obj-$(CONFIG_FB_GBE) += gbefb.o cfbfillrect.o cfbcopyarea.o cfbimgblt.o
obj-$(CONFIG_FB_SGIVW) += sgivwfb.o cfbfillrect.o cfbcopyarea.o cfbimgblt.o
-obj-$(CONFIG_FB_3DFX) += tdfxfb.o tdfxfb_lib.o
-tdfxfb_lib-y := cfbimgblt.o
+obj-$(CONFIG_FB_3DFX) += tdfxfb.o cfbimgblt.o
ifneq ($(CONFIG_FB_3DFX_ACCEL),y)
-tdfxfb_lib-y += cfbfillrect.o cfbcopyarea.o
+obj-$(CONFIG_FB_3DFX) += cfbfillrect.o cfbcopyarea.o
endif
obj-$(CONFIG_FB_MAC) += macfb.o macmodes.o cfbfillrect.o cfbcopyarea.o cfbimgblt.o
obj-$(CONFIG_FB_HP300) += hpfb.o cfbfillrect.o cfbimgblt.o


--
Paolo Ornati
Gentoo Linux (kernel 2.6.8-gentoo-r3)
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/