Bug 9598

Summary: missing compiler flag in os-support/linux/Makefile.am breaks Xorg on alpha
Product: xorg Reporter: Julien Cristau <jcristau>
Component: Server/GeneralAssignee: Xorg Project Team <xorg-team>
Status: RESOLVED FIXED QA Contact: Xorg Project Team <xorg-team>
Severity: major    
Priority: high    
Version: git   
Hardware: Alpha   
OS: Linux (All)   
URL: http://bugs.debian.org/392500
Whiteboard:
i915 platform: i915 features:

Description Julien Cristau 2007-01-10 07:40:34 UTC
Quoting Steve Langasek in Debian bug#392500:
"In xorg 6.9, hw/xfree86/os-support/linux/Imakefile had this:

 #if defined(AlphaArchitecture)
 SpecialObjectRule(lnx_ev56.o, lnx_ev56.c, -mcpu=ev56)
 #endif

This isn't carried over at all into 7.0 thanks to the build system reorg.

Building lnx_ev56 with the right build flags gives me a working X server
again. :)"

This patch fixes it (applies with some fuzz to the master branch):
Index: hw/xfree86/os-support/linux/Makefile.am
===================================================================
--- hw/xfree86/os-support/linux/Makefile.am	(revision 3907)
+++ hw/xfree86/os-support/linux/Makefile.am	(working copy)
@@ -4,7 +4,12 @@
 PLATFORM_PCI_SUPPORT = $(srcdir)/../shared/ia64Pci.c
 endif
 if LINUX_ALPHA
-PLATFORM_PCI_SUPPORT = lnx_ev56.c \
+noinst_LTLIBRARIES += libev56.la
+libev56_la_CFLAGS = $(AM_CFLAGS) -mcpu=ev56
+libev56_la_SOURCES = lnx_ev56.c
+liblinux_la_LIBADD = libev56.la
+liblinux_la_DEPENDENCIES = libev56.la
+PLATFORM_PCI_SUPPORT = \
        $(srcdir)/lnx_axp.c \
        $(srcdir)/../shared/xf86Axp.c
 endif
Comment 1 Daniel Stone 2007-02-27 01:35:35 UTC
Sorry about the phenomenal bug spam, guys.  Adding xorg-team@ to the QA contact so bugs don't get lost in future.
Comment 2 Julien Cristau 2007-07-13 17:25:26 UTC
This has been fixed with a different patch in commit 78f9592c112d4245f6119b98c244bbb4cae3e5aa.
However with that patch AM_CFLAGS isn't used to build lnx_ev56.c (I don't know if that actually matters).

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.