Proper !i386 cross compilation support
authorPeter Korsgaard <jacmet@sunsite.dk>
Tue, 26 Sep 2006 12:48:43 +0000 (12:48 -0000)
committerPeter Korsgaard <jacmet@sunsite.dk>
Tue, 26 Sep 2006 12:48:43 +0000 (12:48 -0000)
package/xorg/xorg-config.patch
package/xorg/xorg.mk

index 580362cd55d2bffc5dc0ca7c2a22644ccdbf25e9..8f6861d8a9a676e34a950c6d068f1e6dacec57bc 100644 (file)
@@ -47,7 +47,7 @@
 +#define XInputDrivers         mouse keyboard
 --- xc/config/cf/cross.def~    Thu May 12 15:28:01 MDT 2005
 +++ xc/config/cf/cross.def     Thu May 12 15:28:01 MDT 2005
-@@ -1,45 +1,45 @@
+@@ -1,45 +1,63 @@
 -/* $XFree86: xc/config/cf/cross.def,v 1.1 2000/12/08 22:09:34 keithp Exp $ */
 +/* $XFree86: xc/config/cf/cross.def,v 1.2 2001/03/30 02:15:17 keithp Exp $ */
  /*
   * given your local configuration.
   */
 -#if 0
--#undef i386Architecture
-+#define i386Architecture
++/* Undefine any architectures detected */
+ #undef i386Architecture
 -#define Arm32Architecture
++#undef AMD64Architecture
++#undef PpcArchitecture
++#undef SparcArchitecture
++#undef AlphaArchitecture
 +#undef Arm32Architecture
++#undef ia64Architecture
++#undef MipsArchitecture
++
++/* Cross compiling for: */
++#define REPLACE_XORG_ARCHArchitecture
++
++/* MTRR detection in linux.cf is exec'ed before cross.def, so redo it here */
++#undef HasMTRRSupport
++#if defined (i386Architecture) || defined (AMD64Architecture)
++# define HasMTRRSupport       YES
++#else
++# define HasMTRRSupport       NO      /* no for non-ix86 */
++#endif
  
  #undef OptimizedCDebugFlags
 -#define OptimizedCDebugFlags  -O2
index eeb911a8beddb11c1fad4eeeb65a33bb5f939509..15a590796730e7b677ed406b4aff5e7b32917835 100644 (file)
@@ -48,6 +48,27 @@ else
 HAS_FREETYPE2=NO
 endif
 
+# figure out Xorg's idea of corresponding architecture name
+ifeq ($(BR2_alpha),y)
+XARCH=Alpha
+else ifeq ($(BR2_arm),y)
+XARCH=Arm32
+else ifeq ($(BR2_armeb),y)
+XARCH=Arm32
+else ifeq ($(BR2_i386),y)
+XARCH=i386A
+else ifeq ($(BR2_mips),y)
+XARCH=Mips
+else ifeq ($(BR2_mipsel),y)
+XARCH=Mips
+else ifeq ($(BR2_powerpc),y)
+XARCH=Ppc
+else ifeq ($(BR2_sparc),y)
+XARCH=Sparc
+else ifeq ($(BR2_x86_64),y)
+XARCH=AMD64
+endif
+
 $(DL_DIR)/$(XORG_SOURCE):
        $(WGET) -P $(DL_DIR) $(XORG_SITE)/$(XORG_SOURCE)
 
@@ -65,6 +86,7 @@ $(XORG_DIR)/.configured: $(DL_DIR)/$(XORG_SOURCE)
        $(SED) 's:#.*define.*HasPam.*YES::g' $(XORG_DIR)/config/cf/linux.cf
        $(SED) 's:#.*define.*CrossCompiling.*NO:#define CrossCompiling YES:g' $(XORG_DIR)/config/cf/Imake.tmpl
        $(SED) 's:#.*undef.*CrossCompileDir.*:#define CrossCompileDir$(STAGING_DIR)/bin:g' $(XORG_DIR)/config/cf/Imake.tmpl
+       $(SED) 's:REPLACE_XORG_ARCH:$(XARCH):g' $(XORG_DIR)/config/cf/cross.def
        touch $(XORG_DIR)/.configured
 
 $(XORG_XSERVER): $(XORG_DIR)/.configured