Bug 15169

Summary: fails to build on linux/alpha
Product: xorg Reporter: Julien Cristau <jcristau>
Component: Server/GeneralAssignee: Ian Romanick <idr>
Status: RESOLVED FIXED QA Contact: Xorg Project Team <xorg-team>
Severity: normal    
Priority: medium CC: idr, mattst88
Version: unspecified   
Hardware: Alpha   
OS: Linux (All)   
Whiteboard:
i915 platform: i915 features:
Bug Depends on:    
Bug Blocks: 10101    
Attachments:
Description Flags
Make xserver build on Alpha none

Description Julien Cristau 2008-03-22 10:20:32 UTC
1.4.99.901 fails to build on linux/alpha:
make[6]: Entering directory `/build/buildd/xorg-server-1.4.99.901/obj-alpha-linux-gnu/hw/xfree86/os-support/bus'
/bin/sh ../../../../libtool --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../../../../../hw/xfree86/os-support/bus -I../../../../include -I../../../../../hw/xfree86 -I../../../../../hw/xfree86/include -I../../../../../hw/xfree86/common -I../../../../../hw/xfree86/os-support -I../../../../../hw/xfree86/os-support/bus -I../../../../../os   -DHAVE_XORG_CONFIG_H   -DXF86PM   -DHAVE_DIX_CONFIG_H -Wall -Wpointer-arith -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -Wnested-externs -fno-strict-aliasing -D_BSD_SOURCE -DHAS_FCHOWN -DHAS_STICKY_DIR_BIT -DDBUS_API_SUBJECT_TO_CHANGE -I/usr/include/freetype2 -I/usr/include/pixman-1 -I/usr/include/hal -I/usr/include/dbus-1.0 -I/usr/lib/dbus-1.0/include     -I../../../../../include -I../../../../include -I../../../../../Xext -I../../../../../composite -I../../../../../damageext -I../../../../../xfixes -I../../../../../Xi -I../../../../../mi -I../../../../../miext/shadow  -I../../../../../miext/damage -I../../../../../render -I../../../../../randr -I../../../../../fb -Wall -g -O2 -MT Pci.lo -MD -MP -MF .deps/Pci.Tpo -c -o Pci.lo ../../../../../hw/xfree86/os-support/bus/Pci.c
mkdir .libs
 gcc -DHAVE_CONFIG_H -I. -I../../../../../hw/xfree86/os-support/bus -I../../../../include -I../../../../../hw/xfree86 -I../../../../../hw/xfree86/include -I../../../../../hw/xfree86/common -I../../../../../hw/xfree86/os-support -I../../../../../hw/xfree86/os-support/bus -I../../../../../os -DHAVE_XORG_CONFIG_H -DXF86PM -DHAVE_DIX_CONFIG_H -Wall -Wpointer-arith -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -Wnested-externs -fno-strict-aliasing -D_BSD_SOURCE -DHAS_FCHOWN -DHAS_STICKY_DIR_BIT -DDBUS_API_SUBJECT_TO_CHANGE -I/usr/include/freetype2 -I/usr/include/pixman-1 -I/usr/include/hal -I/usr/include/dbus-1.0 -I/usr/lib/dbus-1.0/include -I../../../../../include -I../../../../include -I../../../../../Xext -I../../../../../composite -I../../../../../damageext -I../../../../../xfixes -I../../../../../Xi -I../../../../../mi -I../../../../../miext/shadow -I../../../../../miext/damage -I../../../../../render -I../../../../../randr -I../../../../../fb -Wall -g -O2 -MT Pci.lo -MD -MP -MF .deps/Pci.Tpo -c ../../../../../hw/xfree86/os-support/bus/Pci.c  -fPIC -DPIC -o .libs/Pci.o
mv -f .deps/Pci.Tpo .deps/Pci.Plo
/bin/sh ../../../../libtool --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../../../../../hw/xfree86/os-support/bus -I../../../../include -I../../../../../hw/xfree86 -I../../../../../hw/xfree86/include -I../../../../../hw/xfree86/common -I../../../../../hw/xfree86/os-support -I../../../../../hw/xfree86/os-support/bus -I../../../../../os   -DHAVE_XORG_CONFIG_H   -DXF86PM   -DHAVE_DIX_CONFIG_H -Wall -Wpointer-arith -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -Wnested-externs -fno-strict-aliasing -D_BSD_SOURCE -DHAS_FCHOWN -DHAS_STICKY_DIR_BIT -DDBUS_API_SUBJECT_TO_CHANGE -I/usr/include/freetype2 -I/usr/include/pixman-1 -I/usr/include/hal -I/usr/include/dbus-1.0 -I/usr/lib/dbus-1.0/include     -I../../../../../include -I../../../../include -I../../../../../Xext -I../../../../../composite -I../../../../../damageext -I../../../../../xfixes -I../../../../../Xi -I../../../../../mi -I../../../../../miext/shadow  -I../../../../../miext/damage -I../../../../../render -I../../../../../randr -I../../../../../fb -Wall -g -O2 -MT axpPci.lo -MD -MP -MF .deps/axpPci.Tpo -c -o axpPci.lo ../../../../../hw/xfree86/os-support/bus/axpPci.c
 gcc -DHAVE_CONFIG_H -I. -I../../../../../hw/xfree86/os-support/bus -I../../../../include -I../../../../../hw/xfree86 -I../../../../../hw/xfree86/include -I../../../../../hw/xfree86/common -I../../../../../hw/xfree86/os-support -I../../../../../hw/xfree86/os-support/bus -I../../../../../os -DHAVE_XORG_CONFIG_H -DXF86PM -DHAVE_DIX_CONFIG_H -Wall -Wpointer-arith -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -Wnested-externs -fno-strict-aliasing -D_BSD_SOURCE -DHAS_FCHOWN -DHAS_STICKY_DIR_BIT -DDBUS_API_SUBJECT_TO_CHANGE -I/usr/include/freetype2 -I/usr/include/pixman-1 -I/usr/include/hal -I/usr/include/dbus-1.0 -I/usr/lib/dbus-1.0/include -I../../../../../include -I../../../../include -I../../../../../Xext -I../../../../../composite -I../../../../../damageext -I../../../../../xfixes -I../../../../../Xi -I../../../../../mi -I../../../../../miext/shadow -I../../../../../miext/damage -I../../../../../render -I../../../../../randr -I../../../../../fb -Wall -g -O2 -MT axpPci.lo -MD -MP -MF .deps/axpPci.Tpo -c ../../../../../hw/xfree86/os-support/bus/axpPci.c  -fPIC -DPIC -o .libs/axpPci.o
../../../../../hw/xfree86/os-support/bus/axpPci.c:69: warning: initialization from incompatible pointer type
../../../../../hw/xfree86/os-support/bus/axpPci.c:70: warning: excess elements in struct initializer
../../../../../hw/xfree86/os-support/bus/axpPci.c:70: warning: (near initialization for 'axpFuncs0')
../../../../../hw/xfree86/os-support/bus/axpPci.c:71: warning: excess elements in struct initializer
../../../../../hw/xfree86/os-support/bus/axpPci.c:71: warning: (near initialization for 'axpFuncs0')
../../../../../hw/xfree86/os-support/bus/axpPci.c:72: warning: excess elements in struct initializer
../../../../../hw/xfree86/os-support/bus/axpPci.c:72: warning: (near initialization for 'axpFuncs0')
../../../../../hw/xfree86/os-support/bus/axpPci.c:74: warning: excess elements in struct initializer
../../../../../hw/xfree86/os-support/bus/axpPci.c:74: warning: (near initialization for 'axpFuncs0')
../../../../../hw/xfree86/os-support/bus/axpPci.c:305: warning: no previous prototype for 'xf86GetPciDomain'
../../../../../hw/xfree86/os-support/bus/axpPci.c:312: error: conflicting types for 'xf86MapDomainMemory'
../../../../../hw/xfree86/os-support/bus/xf86Pci.h:262: error: previous declaration of 'xf86MapDomainMemory' was here
../../../../../hw/xfree86/os-support/bus/axpPci.c:367: warning: no previous prototype for 'xf86AccResFromOS'
make[6]: *** [axpPci.lo] Error 1
make[6]: Leaving directory `/build/buildd/xorg-server-1.4.99.901/obj-alpha-linux-gnu/hw/xfree86/os-support/bus'

Full log at http://experimental.debian.net/fetch.php?&pkg=xorg-server&ver=2%3A1.4.99.901-1&arch=alpha&stamp=1206153477&file=log&as=raw
Comment 1 Julien Cristau 2008-04-03 01:03:43 UTC
(In reply to comment #0)
> 1.4.99.901 fails to build on linux/alpha:

and making it build by updating axpPci.c to the new interfaces doesn't seem to give a working server.  Ian, any chance you could take a look at this, since it's pciaccess-related?
Comment 2 Ian Romanick 2008-05-30 11:14:57 UTC
Created attachment 16834 [details] [review]
Make xserver build on Alpha

As per our discussion on IRC, the attached patch makes the xserver build on Alpha.  In my testing with MGA, it runs until the driver tries to map its BARs.  It appears that /sys/bus/pci/devices/0000:00:0b.0/resource0 and friends are missing on Alpha Linux.  libpciaccess mmaps these files to give the driver access to the BARs.  Without these files, libpciaccess based X-servers are (currently) DOA.

We either need to get the resource# mappings supported by the kernel on Linux or add all the Alpha-specific cruft (from axpPci.c) and /dev/mem mapping support to libpciaccess.
Comment 3 Adam Jackson 2008-06-17 10:11:24 UTC
Committed that patch to server 1.5 and master.

I'm of the opinion that the alpha port in the kernel needs to get with the program, so I'm closing this one as fixed.  If someone really wants to add axp stuff to libpciaccess, reopen, but otherwise, go fix the kernel.
Comment 4 Matt Turner 2008-06-17 10:18:38 UTC
For good measure, the kernel bug in question is http://bugzilla.kernel.org/show_bug.cgi?id=10893

Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.