Bug 15169 - fails to build on linux/alpha
fails to build on linux/alpha
Status: RESOLVED FIXED
Product: xorg
Classification: Unclassified
Component: Server/General
unspecified
Alpha Linux (All)
: medium normal
Assigned To: Ian Romanick
Xorg Project Team
:
Depends on:
Blocks: xorg-7.4
  Show dependency treegraph
 
Reported: 2008-03-22 10:20 UTC by Julien Cristau
Modified: 2008-06-17 10:18 UTC (History)
2 users (show)

See Also:


Attachments
Make xserver build on Alpha (3.26 KB, patch)
2008-05-30 11:14 UTC, Ian Romanick
no flags Details | Splinter Review

Note You need to log in before you can comment on or make changes to this bug.
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 ajax at nwnk dot net 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