Re: [XFree86] cross compile xfree86-4.8.0

2009-10-20 Thread Marc Aurele La France

On Mon, 19 Oct 2009, john blair wrote:


I have attached the Makefile.


Thanks.

First, it would seem that the CDEBUGFLAGS assignment needs to be inserted 
just after the SRCS assignment in both Imakefiles, at the latest.  Please 
see if that works with another ...


make Makefile
make Makefiles
make clean
make depend
make

... sequence in the same directory.

Secondly, the compiler says Internal error: Killed, which would seem to 
imply it is being `kill -9`'ed by the kernel's OOM killer.  Have you 
verified that you aren't simply running out of memory?  Try adding a swap 
file to the compilation environment.


Thanks.

Marc.

+--+--+
|  Marc Aurele La France   |  work:   1-780-492-9310  |
|  Academic Information and|  fax:1-780-492-1729  |
|Communications Technologies   |  email:  t...@ualberta.ca |
|  352 General Services Building   +--+
|  University of Alberta   |  |
|  Edmonton, Alberta   |Standard disclaimers apply|
|  T6G 2H1 |  |
|  CANADA  |  |
+--+--+
XFree86 developer and VP.  ATI driver and X server internals.
___
XFree86 mailing list
XFree86@XFree86.Org
http://XFree86.Org/mailman/listinfo/xfree86


Re: [XFree86] cross compile xfree86-4.8.0

2009-10-19 Thread Marc Aurele La France

On Mon, 19 Oct 2009, john blair wrote:

--- On Mon, 10/19/09, Marc Aurele La France t...@ualberta.ca wrote:

From: Marc Aurele La France t...@ualberta.ca
Subject: Re: [XFree86] cross compile xfree86-4.8.0
To: john blair mailtome200420032...@yahoo.com
Cc: xfree86@xfree86.org
Date: Monday, October 19, 2009, 10:32 PM
On Sun, 18 Oct 2009, john blair wrote:



I added to both Imakefiles
CDEBUGFLAGS = NoOpCDebugFlags



SpecialCObjectRule(xf86PciData,NullParameter,-DPCIDATA)



in place of
SpecialCObjectRule(xf86ScanPci,NullParameter,-O0)
SpecialCObjectRule(xf86PciData,NullParameter,-O0

-DPCIDATA)



and got the same internal compiler error.



Could you send me the relevant part of your build log?



/opt/toolchain/lin32/gcc-2007q3-51/bin/`echo 
/opt/toolchain/lin32/gcc-2007q3-51/bin/arm-none-linux-gnueabi-gcc|sed 
s%.*/%%` -o cpconfig -O2 -fsigned-char -L../../../../../exports/lib   
cpconfig.o Device.o Files.o Flags.o Input.o Keyboard.o Layout.o Module.o Video.o 
Monitor.o Pointer.o Screen.o Vendor.o read.o scan.o write.o DRI.o  
-L/opt/toolchain/lin32/glibc-2007q3-51/lib  -lm -lxml2  
-L/opt/toolchain/arm-linux/zlib-1.2.3-3/lib -L/opt/toolchain/arm-linux/freetype-2.3.7/lib 
-L/opt/toolchain/arm-linux/fontconfig-2.6.0/lib 
-L/opt/toolchain/arm-linux/libxml2-2.6.32/lib -L/opt/toolchain/arm-linux/ncurses-5.7/lib
make[7]: Leaving directory 
`/opt/toolchain/src/xfree86-4.8.0/build/programs/Xserver/hw/xfree86/parser'
making all in programs/Xserver/hw/xfree86/scanpci...
make[7]: Entering directory 
`/opt/toolchain/src/xfree86-4.8.0/build/programs/Xserver/hw/xfree86/scanpci'
rm -f xf86ScanPci.o
/opt/toolchain/lin32/gcc-2007q3-51/bin/`echo 
/opt/toolchain/lin32/gcc-2007q3-51/bin/arm-none-linux-gnueabi-gcc|sed 
s%.*/%%` -c -O2 -fsigned-char -I. 
-I../../../../../programs/Xserver/hw/xfree86/common 
-I../../../../../programs/Xserver/hw/xfree86/os-support 
-I../../../../../programs/Xserver/hw/xfree86/os-support/bus  
-I../../../../../programs/Xserver/include -I../../../../../programs/Xserver/os  
-I../../../../../programs/Xserver/Xext -I../../../../../programs/Xserver/Xi 
-I../../../../../lib/font/include -I../../../../../programs/Xserver/hw/xfree86/parser 
  -I../../../../../programs/Xserver/hw/xfree86/loader  
-I../../../../../programs/Xserver/hw/xfree86/rac  -I../../../../../exports/include   
-I/opt/toolchain/lin32/gcc-2007q3-51/lib/gcc/arm-none-linux-gnueabi/4.2.1/include  
-I/opt/toolchain/arm-linux/zlib-1.2.3-3/include  
-I/opt/toolchain/arm-linux/freetype-2.3.7/include
-I/opt/toolchain/arm-linux/fontconfig-2.6.0/include 
-I/opt/toolchain/arm-linux/ncurses-5.7/include 
-I/opt/toolchain/arm-linux/ncurses-5.7/include/ncurses -Dlinux -D__arm__ 
-D_POSIX_SOURCE -D_BSD_SOURCE -D_GNU_SOURCE 
-DX_LOCALE -DSHAPE -DXINPUT -DXKB  -DXAPPGROUP  -DXCSECURITY -DXSYNC 
-DXF86BIGFONT  -DDPMSExtension -DBIGREQS -DPANORAMIX -DRENDER -DRANDR  
-DRES  -DPIXPRIV  -DNDEBUG
-DNEED_STRLCAT -DGCCUSESGAS -DAVOID_GLYPHBLT -DPIXPRIV -DSINGLEDEPTH
  -DXFree86LOADER  -DXFree86Server  
  -DSMART_SCHEDULE-DBUILDDEBUG  
  -DX_BYTE_ORDER=X_LITTLE_ENDIAN  -DFUNCPROTO=15 -DNARROWPROTO  
xf86ScanPci.c
arm-none-linux-gnueabi-gcc: Internal error: Killed (program cc1)
Please submit a full bug report.
See URL:http://gcc.gnu.org/bugs.html for instructions.
make[7]: *** [xf86ScanPci.o] Error 1
make[7]: Leaving directory 
`/opt/toolchain/src/xfree86-4.8.0/build/programs/Xserver/hw/xfree86/scanpci'
make[6]: *** [all] Error 2
make[6]: Leaving directory 
`/opt/toolchain/src/xfree86-4.8.0/build/programs/Xserver/hw/xfree86'
make[5]: *** [all] Error 2
make[5]: Leaving directory 
`/opt/toolchain/src/xfree86-4.8.0/build/programs/Xserver/hw'
make[4]: *** [hw] Error 2
make[4]: Leaving directory 
`/opt/toolchain/src/xfree86-4.8.0/build/programs/Xserver'
make[3]: *** [all] Error 2
make[3]: Leaving directory `/opt/toolchain/src/xfree86-4.8.0/build/programs'
make[2]: *** [all] Error 2
make[2]: Leaving directory `/opt/toolchain/src/xfree86-4.8.0/build'
make[1]: *** [World] Error 2
make[1]: Leaving directory `/opt/toolchain/src/xfree86-4.8.0/build'
make: *** [World] Error 2


There is something not quite right here, as -O2 is still being passed to 
the compiler.  It almost looks like the Makefile was not regenerated 
from the modified Imakefile(s).  Please send me 
xc/programs/Xserver/hw/xfree86/scanpci/Makefile (privately, not to the 
list).


Thanks.

Marc.

+--+--+
|  Marc Aurele La France   |  work:   1-780-492-9310  |
|  Academic Information and|  fax:1-780-492-1729  |
|Communications Technologies   |  email:  t...@ualberta.ca |
|  352 General Services Building

Re: [XFree86] cross compile xfree86-4.8.0

2009-10-15 Thread Marc Aurele La France

On Wed, 14 Oct 2009, Marc Aurele La France wrote:

On Wed, 14 Oct 2009, john blair wrote:

--- On Wed, 10/14/09, Marc Aurele La France t...@ualberta.ca wrote:

From: Marc Aurele La France t...@ualberta.ca
Subject: Re: [XFree86] cross compile xfree86-4.8.0
To: john blair mailtome200420032...@yahoo.com
Cc: XFree86@XFree86.Org
Date: Wednesday, October 14, 2009, 8:21 PM
On Tue, 13 Oct 2009, john blair wrote:

Thanks for the reply Marc. But I don't think code

sourcery's arm

toolchain (http://www.codesourcery.com/sgpp/lite/arm) consist
linux/utsrelease.h file.
I end up with the following error:
imakemdep.h:835:34: error: linux/utsrelease.h: No such

file or directory



No mainline kernel source tarball contains
include/linux/version.h, nor
include/linux/utsrelease.h.  They are both generated by
the kernel build process, but the latter only after
2.6.17.  But the version.h included here advertises a
kernel version of 2.6.29.  See ...



http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commitdiff;h=63104eec234bdecb55fd9c15467ae00d0a3f42ac



Therefore, the toolchain tarball was misgenerated in that
it does not also contain utsrelease.h.  Likely an
oversight.  Please report this problem to CodeSourcery
and see what they say.



This is the reply I got from code sourcery
My Debian desktop system also has linux/version.h but no
utsrelease.h.  I also checked upstream GIT kernel sources, and while
both headers are built only version.h is installed
(include/linux/Kbuild:objhdr-y).  CodeSourcery's current tools use the
recommended make headers_install to distribute kernel headers.



Are you trying to build a userspace server or a kernel module?
utsrelease.h might be available for kernel modules, which require a
build tree.



http://www.codesourcery.com/archives/arm-gnu/msg02922.html


Hummm.  That's a good point.  Looking deeper, this string isn't even used, 
nor is it generated in the non-cross-compile case.



I'll get back to you.


Please use the following instead of the previous change ...

*** cvs/xc/config/imake/imakemdep.h Mon Jun 11 08:30:00 2007
--- devel/xc/config/imake/imakemdep.h   Thu Oct 15 09:56:47 2009
*** char *cpp_argv[ARGUMENTS] = {
*** 831,837 
  #  if defined(linux)  defined  (CROSSCOMPILE_CPP)
  #   define CROSS_UTS_SYSNAME Linux
  #   include linux/version.h
! #   define CROSS_UTS_RELEASE UTS_RELEASE
  # endif
  # elif defined(__CYGWIN__)
  #  define DEFAULT_OS_MAJOR_REVr %[0-9]
--- 831,839 
  #  if defined(linux)  defined  (CROSSCOMPILE_CPP)
  #   define CROSS_UTS_SYSNAME Linux
  #   include linux/version.h
! #   ifdef UTS_RELEASE
! #define CROSS_UTS_RELEASE UTS_RELEASE
! #   endif
  # endif
  # elif defined(__CYGWIN__)
  #  define DEFAULT_OS_MAJOR_REVr %[0-9]

This will cause the release string to be nullified, which is what would 
happen with other cross-compilation environments that don't provide 
release information (or, for that matter, other `uname` strings).


Marc.

+--+--+
|  Marc Aurele La France   |  work:   1-780-492-9310  |
|  Academic Information and|  fax:1-780-492-1729  |
|Communications Technologies   |  email:  t...@ualberta.ca |
|  352 General Services Building   +--+
|  University of Alberta   |  |
|  Edmonton, Alberta   |Standard disclaimers apply|
|  T6G 2H1 |  |
|  CANADA  |  |
+--+--+

Re: [XFree86] cross compile xfree86-4.8.0

2009-10-15 Thread Marc Aurele La France

On Thu, 15 Oct 2009, john blair wrote:

--- On Thu, 10/15/09, Marc Aurele La France t...@ualberta.ca wrote:

Please use the following instead of the previous change
...



*** cvs/xc/config/imake/imakemdep.h    Mon
Jun 11 08:30:00 2007
--- devel/xc/config/imake/imakemdep.h    Thu
Oct 15 09:56:47 2009
*** char *cpp_argv[ARGUMENTS] = {
*** 831,837 
  #  if defined(linux)  defined

?? (CROSSCOMPILE_CPP)

  #   define CROSS_UTS_SYSNAME Linux
  #   include linux/version.h
! #   define CROSS_UTS_RELEASE UTS_RELEASE
  # endif
  # elif defined(__CYGWIN__)
  #  define DEFAULT_OS_MAJOR_REV 

??     r %[0-9]

--- 831,839 
  #  if defined(linux)  defined

?? (CROSSCOMPILE_CPP)

  #   define CROSS_UTS_SYSNAME Linux
  #   include linux/version.h
! #   ifdef UTS_RELEASE
! #    define CROSS_UTS_RELEASE UTS_RELEASE
! #   endif
  # endif
  # elif defined(__CYGWIN__)
  #  define DEFAULT_OS_MAJOR_REV 

??     r %[0-9]


This will cause the release string to be nullified, which
is what would happen with other cross-compilation
environments that don't provide release information (or, for
that matter, other `uname` strings).



Thanks for the quick reply and patch Marc. Your patch fixes the UTS_RELEASE 
issue.
There is another issue I am facing during the compilation:
fbdevhw.c: In function 'calculateFbmem_len':
fbdevhw.c:548: error: 'PAGE_MASK' undeclared (first use in this function)
fbdevhw.c:548: error: (Each undeclared identifier is reported only once
fbdevhw.c:548: error: for each function it appears in.)
fbdevhw.c: In function 'fbdevHWMapVidmem':
fbdevhw.c:575: error: 'PAGE_MASK' undeclared (first use in this function)
fbdevhw.c: In function 'fbdevHWMapMMIO':
fbdevhw.c:620: error: 'PAGE_MASK' undeclared (first use in this function)
fbdevhw.c: In function 'fbdevHWUnmapMMIO':
fbdevhw.c:644: error: 'PAGE_MASK' undeclared (first use in this function)
make[7]: *** [fbdevhw.o] Error 1
make[7]: Leaving directory 
`/opt/toolchain/src/xfree86-4.8.0/build/programs/Xserver/hw/xfree86/fbdevhw'



The contents of asm/page.h for code sourcery toolchain (the later versions of 
toolchain do not even have asm/page.h)is
#ifndef _ASMARM_PAGE_H
#define _ASMARM_PAGE_H
#endif


Please try the attached.

Marc.

+--+--+
|  Marc Aurele La France   |  work:   1-780-492-9310  |
|  Academic Information and|  fax:1-780-492-1729  |
|Communications Technologies   |  email:  t...@ualberta.ca |
|  352 General Services Building   +--+
|  University of Alberta   |  |
|  Edmonton, Alberta   |Standard disclaimers apply|
|  T6G 2H1 |  |
|  CANADA  |  |
+--+--+
XFree86 developer and VP.  ATI driver and X server internals.

fbdevhw.diff.gz
Description: GNU Zip compressed data


Re: [XFree86] cross compile xfree86-4.8.0

2009-10-14 Thread Marc Aurele La France

On Wed, 14 Oct 2009, john blair wrote:

--- On Wed, 10/14/09, Marc Aurele La France t...@ualberta.ca wrote:

From: Marc Aurele La France t...@ualberta.ca
Subject: Re: [XFree86] cross compile xfree86-4.8.0
To: john blair mailtome200420032...@yahoo.com
Cc: XFree86@XFree86.Org
Date: Wednesday, October 14, 2009, 8:21 PM
On Tue, 13 Oct 2009, john blair wrote:



Thanks for the reply Marc. But I don't think code

sourcery's arm

toolchain (http://www.codesourcery.com/sgpp/lite/arm) consist
linux/utsrelease.h file.
I end up with the following error:
imakemdep.h:835:34: error: linux/utsrelease.h: No such

file or directory



No mainline kernel source tarball contains
include/linux/version.h, nor
include/linux/utsrelease.h.  They are both generated by
the kernel build process, but the latter only after
2.6.17.  But the version.h included here advertises a
kernel version of 2.6.29.  See ...



http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commitdiff;h=63104eec234bdecb55fd9c15467ae00d0a3f42ac



Therefore, the toolchain tarball was misgenerated in that
it does not also contain utsrelease.h.  Likely an
oversight.  Please report this problem to CodeSourcery
and see what they say.



This is the reply I got from code sourcery
My Debian desktop system also has linux/version.h but no
utsrelease.h.  I also checked upstream GIT kernel sources, and while
both headers are built only version.h is installed
(include/linux/Kbuild:objhdr-y).  CodeSourcery's current tools use the
recommended make headers_install to distribute kernel headers.



Are you trying to build a userspace server or a kernel module?
utsrelease.h might be available for kernel modules, which require a
build tree.



http://www.codesourcery.com/archives/arm-gnu/msg02922.html


Hummm.  That's a good point.  Looking deeper, this string isn't even used, 
nor is it generated in the non-cross-compile case.


I'll get back to you.

Thanks.

Marc.

+--+--+
|  Marc Aurele La France   |  work:   1-780-492-9310  |
|  Academic Information and|  fax:1-780-492-1729  |
|Communications Technologies   |  email:  t...@ualberta.ca |
|  352 General Services Building   +--+
|  University of Alberta   |  |
|  Edmonton, Alberta   |Standard disclaimers apply|
|  T6G 2H1 |  |
|  CANADA  |  |
+--+--+