Переглянути джерело

cleanup the tinyx build so it actually has a chance of working.
This gets it so it at least compiles...

Eric Andersen 20 роки тому
батько
коміт
0f481e0032

+ 22 - 0
package/tinyx/tinyx-011010.patch

@@ -1,3 +1,25 @@
+--- xc-011010/config/cf/X11.tmpl.orig	2005-05-12 16:16:17.000000000 -0600
++++ xc-011010/config/cf/X11.tmpl	2005-05-12 16:16:23.000000000 -0600
+@@ -3055,7 +3055,7 @@
+ 	$(RM) index.raw file.nPS file.PS file.txt
+ #endif
+ 
+-#ifndef MakeSimpleDoc(file,srcs)
++#ifndef MakeSimpleDoc
+ #define MakeSimpleDoc(file,srcs) MakeDepSimpleDoc(file,srcs,srcs)
+ #endif
+ 
+--- xc-011010/config/cf/kdrive.cf.orig	2005-05-12 16:14:50.000000000 -0600
++++ xc-011010/config/cf/kdrive.cf	2005-05-12 16:15:03.000000000 -0600
+@@ -201,7 +201,7 @@
+ #undef ServerOSDefines
+ #define ServerOSDefines -DDDXOSINIT
+ 
+-#ifndef Other IConfigFiles
++#ifndef OtherIConfigFiles
+ #define OtherIConfigFile $(IRULESRC)/kdrive.cf
+ #endif
+ 
 diff -Nur --exclude=CVS xc-011010.src/include/extensions/lbxstr.h xc-011010/include/extensions/lbxstr.h
 --- xc-011010.src/include/extensions/lbxstr.h	Tue Jul 31 20:44:35 2001
 +++ xc-011010/include/extensions/lbxstr.h	Sun Apr 21 12:35:05 2002

+ 11 - 0
package/tinyx/tinyx-build.patch

@@ -0,0 +1,11 @@
+--- xc-011010/programs/xfs/os/config.c.orig	2001-07-31 18:45:05.000000000 -0600
++++ xc-011010/programs/xfs/os/config.c	2005-05-12 15:51:35.000000000 -0600
+@@ -661,6 +661,8 @@
+     val = config_parse_int (val, &ret, &scan);
+     if (ret == -1)
+ 	return val;
++#ifdef SNFFORMAT
+     SnfSetFormat (bit, byte, glyph, scan);
++#endif
+     return val;
+ }

+ 112 - 0
package/tinyx/tinyx-config.patch

@@ -0,0 +1,112 @@
+--- xc/config/cf/host.def~	2005-04-02 14:51:31.000000000 -0700
++++ xc/config/cf/host.def	2005-04-26 01:22:00.000000000 -0600
+@@ -0,0 +1,36 @@
++#define KDriveXServer		YES
++#define TinyXServer		YES
++#define XfbdevServer		YES
++#define CrossCompiling		YES
++#define ProjectRoot             /usr/X11R6
++#define NothingOutsideProjectRoot	YES
++
++#define HasFreetype2		NO
++#define HasFontconfig		NO
++#define HasLibpng		YES
++#define HasZlib			YES
++
++#define HasExpat		NO
++#define XprtServer		NO
++#define BuildXprintClients	NO
++#define TouchScreen		NO
++#define HasTsLib		NO
++#define BuildDocs		NO
++#define BuildXF86DRI		NO
++#define BuildGlxExt		NO
++#define BuildOSMesaLib		NO
++#define BuildLBX		NO
++#define BuildLowMem		NO
++#define BuildIPv6		NO
++
++/*
++#define XF86CardDrivers		mga glint nv tga s3virge sis rendition \
++				neomagic i740 tdfx savage \
++				cirrus vmware tseng trident chips apm \
++				GlideDriver fbdev i128 \
++				ati AgpGartDrivers DevelDrivers ark \
++				cyrix siliconmotion vesa vga \
++				XF86OSCardDrivers XF86ExtraCardDrivers
++*/
++
++#define XInputDrivers		mouse keyboard
+--- xc/config/cf/cross.def.orig	2001-03-29 19:15:17.000000000 -0700
++++ xc/config/cf/cross.def	2005-05-12 16:09:23.000000000 -0600
+@@ -5,34 +5,56 @@
+  * compiler images.  It will have to be edited to reflect these
+  * given your local configuration.
+  */
++
++#undef Arm32Architecture
+ #undef i386Architecture
++#undef Arm32Architecture
++#undef Arm32Architecture
++
++#if defined(__arm__)
+ #define Arm32Architecture
++#endif
++#if defined(__i386__)
++#defined i386Architecture
++#endif
++#if defined(__mc68000__)
++#define Mc68020Architecture
++#endif
++#if defined(__mips__)
++#define MipsArchitecture
++#endif
++#if defined(__powerpc__)
++#define PpcArchitecture
++#endif
+ 
+ #undef OptimizedCDebugFlags
+-#define OptimizedCDebugFlags 	-O2
+-#define ServerCDebugFlags	-O2
++#define OptimizedCDebugFlags 	-Os
++#define ServerCDebugFlags	-Os
+ #undef StandardDefines
+-#define StandardDefines 	-Dlinux -D__arm__ -D_POSIX_SOURCE \
+-				-D_BSD_SOURCE -D_GNU_SOURCE -DX_LOCALE
+-#undef CcCmd
+-#define StdIncDir /skiff/local/arm-linux/include
+-#define PreIncDir 
++#define StandardDefines 	-Dlinux -D__REPLACE_ARCH__ -D_POSIX_SOURCE \
++  				-D_BSD_SOURCE -D_GNU_SOURCE -DX_LOCALE
++#define StdIncDir REPLACE_STAGING_DIR/include
++#define PreIncDir
+ #undef PostIncDir
+-#define PostIncDir /skiff/local/lib/gcc-lib/arm-linux/2.95.2/include
+-#define CcCmd /skiff/local/bin/arm-linux-gcc
++#define PostIncDir REPLACE_STAGING_DIR/lib/gcc-lib/REPLACE_ARCH-linux-uclibc/3.3.3/include
++#undef CcCmd
++#define CcCmd REPLACE_STAGING_DIR/bin/REPLACE_ARCH-linux-gcc
++#undef HasCplusplus
++#define HasCplusplus NO
+ #undef CplusplusCmd
+-#define HasCplusplus YES
+-#define CplusplusCmd /skiff/local/bin/arm-linux-g++
++#define CplusplusCmd NO
+ #define DoRanlibCmd YES
+-#define RanlibCmd /skiff/local/bin/arm-linux-ranlib
++#define RanlibCmd REPLACE_STAGING_DIR/bin/REPLACE_ARCH-linux-ranlib
+ #undef ExtraLoadFlags
+ #define ExtraLoadFlags
+ #define FbNoPixelAddrCode
+ #undef TermcapLibrary
+-#define TermcapLibrary -ltermcap
++#define TermcapLibrary -lncurses
+ 
+ #undef LdPostLib
+-#define LdPostLib	-L/skiff/local/arm-linux/lib
++#define LdPostLib	-LREPLACE_STAGING_DIR/REPLACE_ARCH-linux-uclibc/lib
++#undef LdCmd
++#define LdCmd REPLACE_STAGING_DIR/bin/REPLACE_ARCH-linux-ld
+ 
+ #undef ExtensionOSDefines
+ #define ExtensionOSDefines

+ 22 - 15
package/tinyx/tinyx.mk

@@ -40,6 +40,7 @@ TINYX_LIBS:=ICE X11 Xext Xpm
 #
 # Where resources are found.
 #
+
 TINYX_DIR:=$(BUILD_DIR)/xc-011010
 TINYX_LDIR:=$(TINYX_DIR)/lib
 TINYX_PROGS:=$(TINYX_DIR)/programs
@@ -59,25 +60,17 @@ TINYX_LIBX:=$(TARGET_DIR)/usr/lib/
 $(DL_DIR)/$(TINYX_SOURCE):
 	$(WGET) -P $(DL_DIR) $(TINYX_SITE)/$(TINYX_SOURCE)
 
-$(DL_DIR)/cross.def:
-	$(WGET) -P $(DL_DIR) $(TINYX_SITE)/xcompile/tuxscreen/cross.def
-	$(SED) 's:arm-uclibc-:$(ARCH)-linux-uclibc-:g' $(DL_DIR)/cross.def
-
-$(DL_DIR)/host.def:
-	$(WGET) -P $(DL_DIR) $(TINYX_SITE)/xcompile/tuxscreen/host.def
-
 #
 # rule to make sure that we have the source, and it is configured.
 #
-$(TINYX_DIR)/.configure: $(DL_DIR)/$(TINYX_SOURCE) $(DL_DIR)/cross.def $(DL_DIR)/host.def
+$(TINYX_DIR)/.configure: $(DL_DIR)/$(TINYX_SOURCE)
 	$(TINYX_CAT) $(DL_DIR)/$(TINYX_SOURCE) | tar -C $(BUILD_DIR) $(TAR_OPTIONS) -
 	toolchain/patch-kernel.sh $(TINYX_DIR) package/tinyx/ tinyx*.patch
-	cp $(DL_DIR)/host.def $(TINYX_CF)/host.def
-	cp $(DL_DIR)/cross.def $(TINYX_CF)/cross.def
-	$(SED) 's,arm-uclibc-,$(ARCH)-linux-uclibc-,g' $(TINYX_CF)/cross.def
-	$(SED) 's:REPLACE_STAGING_DIR:$(STAGING_DIR):g' \
-			$(TINYX_CF)/cross.def \
-			$(TINYX_LDIR)/X11/Xlib.h
+	$(SED) 's:REPLACE_STAGING_DIR:$(STAGING_DIR):g' $(TINYX_CF)/cross.def
+	$(SED) 's:REPLACE_ARCH:$(ARCH):g' $(TINYX_CF)/cross.def
+	$(SED) 's:#define CcCmd.*:#define CcCmd $(TARGET_CROSS)gcc:g' $(TINYX_CF)/cross.def
+	$(SED) 's:#define RanlibCmd.*:#define RanlibCmd $(TARGET_CROSS)ranlib:g' $(TINYX_CF)/cross.def
+	$(SED) 's:#define LdCmd.*:#define LdCmd $(TARGET_CROSS)ld:g' $(TINYX_CF)/cross.def
 	touch $(TINYX_DIR)/.configure
 
 #
@@ -85,7 +78,21 @@ $(TINYX_DIR)/.configure: $(DL_DIR)/$(TINYX_SOURCE) $(DL_DIR)/cross.def $(DL_DIR)
 #
 $(TINYX_XFBDEV): $(TINYX_DIR)/.configure
 	rm -f $(TINYX_BINX)/Xfbdev
-	( cd $(TINYX_DIR) ; $(MAKE) World ; cd $(BUILDROOT) )
+	#make World CROSSCOMPILEFLAGS="CROSSCOMPILEDIR=<cross compiler dir>";
+	#( cd $(TINYX_DIR) ; $(MAKE) World CROSSCOMPILEFLAGS="CROSSCOMPILEDIR=$(STAGING_DIR)/bin" )
+	#( cd $(TINYX_DIR) ; $(TARGET_CONFIGURE_OPTS) $(MAKE) World )
+	#
+	#mv $(TINYX_DIR)/Makefile $(TINYX_DIR)/Makefile.xxxx
+	#echo "AS=$(TARGET_CROSS)as" > $(TINYX_DIR)/Makefile
+	#echo "LD=$(TARGET_CROSS)ld" >> $(TINYX_DIR)/Makefile
+	#echo "NM=$(TARGET_CROSS)nm" >> $(TINYX_DIR)/Makefile
+	#echo "CC=$(TARGET_CROSS)gcc" >> $(TINYX_DIR)/Makefile
+	#echo "GCC=$(TARGET_CROSS)gcc" >> $(TINYX_DIR)/Makefile
+	#echo "CXX=$(TARGET_CROSS)g++" >> $(TINYX_DIR)/Makefile
+	#echo "RANLIB=$(TARGET_CROSS)ranlib" >> $(TINYX_DIR)/Makefile
+	#echo "OBJCOPY=$(TARGET_CROSS)objcopy" >> $(TINYX_DIR)/Makefile
+	#cat $(TINYX_DIR)/Makefile.xxxx >> $(TINYX_DIR)/Makefile
+	( cd $(TINYX_DIR) ; $(MAKE) World )
 
 #
 # Once Frame Buffer is built, we install executables.