I've built (and run) an XFree86 4.0 server on an Itsy.  Other display types
I haven't tried.

The biggest issues were:
        1) making sure that the host font compilers were used rather than
        trying to execute the ones built in the cross compilation environment.
        I need to generate a patch for this one, but haven't yet.
        2) Making sure that the pswrap program was used native rather than
        the cross compiled one.
        3) dealing with the fact that the XFree86 server currently exits
        if it can't set its font path (due to lack of directories).  I
        haven't submitted a patch yet to fix this: the server should run
        so long as at least one font (fixed) can be found.
        4) fixing a bug introduced when Keith's FB code was integrated
        into XFree86.
Included are the patches I've submitted to XFree86: but they were too late
to be incorporated into 4.0.

From: [EMAIL PROTECTED] (Jim Gettys)
Date: Wed, 8 Mar 2000 07:46:50 -0800 (PST)
To: [EMAIL PROTECTED]
Subject: broken comment in itsy.cf file
-----
Believe it or not, there are people who use this besides Keith
Packard or myself (or would like to; I got mail a couple weeks ago from
someone trying to build from this configuation file.

The bug is in the configuration file comment on what to put in the
site.def file, so it is safe to add if you want to 4.0, even this late
in the game. The people who use itsy.cf are numbered on the fingers
of one hand, and it is in a comment anyway.

There is also another problem with cross compiling, in that pswrap
gets built for the target architecture rather than the architecture
you are building on, but I haven't tried to fix the Imakefile yet.
This is clearly to late for 4.0, but should probably be release noted...
I'll try to get a release note in.

Hopefully I'll get to the Imakefile for pswrap later today, but I certainly
don't expect it to make 4.0, given the risk.
                                        - Jim


[jg@armada cf]$ rcsdiff -c itsy.cf
===================================================================
RCS file: RCS/itsy.cf,v
retrieving revision 1.1
diff -c -r1.1 itsy.cf
*** itsy.cf     2000/03/07 04:26:07     1.1
--- itsy.cf     2000/03/08 01:21:09
***************
*** 2,9 ****
   * This configuration file contains additional configuration needed
   * to cross compile X for the Compaq Itsy handheld computer.
   * To use this, add the following to host.def:
     #define XItsyServer YES
-    #define KDriveServer YES
   */

  #define CrossCompiling YES
--- 2,9 ----
   * This configuration file contains additional configuration needed
   * to cross compile X for the Compaq Itsy handheld computer.
   * To use this, add the following to host.def:
+    #define KDriveXServer YES
     #define XItsyServer YES
   */

  #define CrossCompiling YES

From: [EMAIL PROTECTED] (Jim Gettys)
Date: Wed, 8 Mar 2000 08:03:48 -0800 (PST)
To: [EMAIL PROTECTED]
Subject: config/pswrap/Imakefile
-----
Pswrap needs to be build for the host architecture, and not for the
target architecture when cross compiling.

The patch below seems to work correctly, but it has been a long time since
I dealt with Imake.

This is probably too late to go into 4.0, as if it is wrong, it would
break everyone.
                                - Jim


[jg@armada pswrap]$ rcsdiff -c Imakefile
===================================================================
RCS file: RCS/Imakefile,v
retrieving revision 1.1
diff -c -r1.1 Imakefile
*** Imakefile   2000/03/08 01:40:11     1.1
--- Imakefile   2000/03/08 01:44:07
***************
*** 11,17 ****
--- 11,21 ----
  OBJS = main.o pswparser.o lexer.o pswdict.o pswfile.o yyerror.o \
        systemnames.o psw.o pswstring.o pswsemantics.o

+ #if CrossCompiling
+ ComplexHostProgramTarget(pswrap)
+ #else
  ComplexProgramTarget(pswrap)
+ #endif

  SpecialObjectRule(pswfile.o,NullParameter,$(FRIENDSDEF))


From: [EMAIL PROTECTED] (Jim Gettys)
Date: Wed, 8 Mar 2000 11:09:29 -0800 (PST)
To: [EMAIL PROTECTED]
Cc: [EMAIL PROTECTED]
Subject: xc/programs/Xserver/fb.h
-----
This one should be checked with Keith...

Itsy has packed 4 bits per pixel, and compiles with -DFBNOPIXADDR case.
It is clear this hadn't been properly tested with further enhancements.

I think this is right. (Keith, I cut and pasted too much on the last one
I sent you: sorry...).
                        - Jim

[jg@armada fb]$ rcsdiff -c -r1.1 fb.h
===================================================================
RCS file: RCS/fb.h,v
retrieving revision 1.1
diff -c -r1.1 fb.h
*** fb.h        2000/03/08 03:36:29     1.1
--- fb.h        2000/03/08 04:29:04
***************
*** 204,213 ****
  #ifdef FBNOPIXADDR
  #define FbMaskBitsBytes(x,w,copy,l,lb,n,r,rb) FbMaskBits(x,w,l,n,r)
  #define FbDoLeftMaskByteRRop(dst,lb,l,and,xor) { \
!     *dst = FbDoRRop(*dst,and,xor,l);
  }
  #define FbDoRightMaskByteRRop(dst,rb,r,and,xor) { \
!     *dst = FbDoRRop(*dst,and,xor,r);
  }
  #else

--- 204,213 ----
  #ifdef FBNOPIXADDR
  #define FbMaskBitsBytes(x,w,copy,l,lb,n,r,rb) FbMaskBits(x,w,l,n,r)
  #define FbDoLeftMaskByteRRop(dst,lb,l,and,xor) { \
!     *dst = FbDoMaskRRop(*dst,and,xor,l); \
  }
  #define FbDoRightMaskByteRRop(dst,rb,r,and,xor) { \
!     *dst = FbDoMaskRRop(*dst,and,xor,r); \
  }
  #else


--
Jim Gettys
Technology and Corporate Development
Compaq Computer Corporation
[EMAIL PROTECTED]


unsubscribe: body of `unsubscribe linux-arm' to [EMAIL PROTECTED]
++        Please use [EMAIL PROTECTED] for           ++
++                        kernel-related discussions.                      ++

Reply via email to