This is the mail archive of the
cygwin-xfree@cygwin.com
mailing list for the Cygwin XFree86 project.
Re: Using the new cross compilation system - and a request for help
- From: Alexander Gottwald <Alexander dot Gottwald at informatik dot tu-chemnitz dot de>
- Cc: <cygwin-xfree at cygwin dot com>
- Date: Thu, 11 Jul 2002 17:47:46 +0200 (MEST)
- Subject: Re: Using the new cross compilation system - and a request for help
On Tue, 9 Jul 2002, Harold L Hunt wrote:
> 1) We are building gen_matypes.c and we are supposed to create an executable
> that will be used during the compilation process to build a header file called
> ``matypes.h''. However, this executable is being built with ``cc'' (it isn't
> clear if this is the link to /cygwin/bin/cc or if it is the host cc) but we
> are calling it ``gen_matypes.exe'', which is clearly wrong because we want an
> executable to use while cross compiling, not an installable executable.
diff -U3 -r1.22 Imakefile
--- lib/GL/mesa/src/X86/Imakefile 2002/03/01 21:21:48 1.22
+++ lib/GL/mesa/src/X86/Imakefile 2002/07/11 15:24:06
@@ -85,11 +85,11 @@
MATYPES = ./gen_matypes
matypes.h: gen_matypes.c
- RemoveFiles($@ ProgramTargetName(gen_matypes))
- -HostLinkRule(ProgramTargetName(gen_matypes),$(CFLAGS) $(LOCAL_LDFLAGS),gen_matypes.c,$(LDLIBS))
+ RemoveFiles($@ HostProgramTargetName(gen_matypes))
+ -HostLinkRule(HostProgramTargetName(gen_matypes),$(CFLAGS) $(LOCAL_LDFLAGS),gen_matypes.c,$(LDLIBS))
RunProgram(MATYPES,> matypes_h)
$(MV) matypes_h $@
- RemoveFiles(ProgramTargetName(gen_matypes))
+ RemoveFiles(HostProgramTargetName(gen_matypes))
includes:: matypes.h
> 2) Building gen_matypes.c fails because it cannot find glheader.h, mypes.h,
> and tnl/t_context.h, which are stored over in xc/extras/Mesa/src, but it
> appears that they should be copied during the build process to
> build/std/exports/include. For some reason, they are not being copied there.
no problem for me. Maybe they are not created because gen_matypes failes
before
> There is a new problem that needs a better answer than the one that I've got
> right now. In xc/config/imake/imakedep.h there is a define that turns an
> empty define for i686 into i686 == 1. For some reason, i686 is now defined
> during a cross compilation build and it causes our executable names, such as
> ``i686-pc-cygwin-gcc'' and our include directories (``i686-pc.. you get the
> point...) to become ``1-pc-cygwin-gcc''. I had to add a ``#undef i686'' to
> the new host.def that is used when cross compiling.
you don't need the i686-pc-cygwin32-gcc program names anymore. For me, a
call to cross-gcc is /usr/i686-pc-cygwin32/bin/`echo gcc|sed "s%.*/%%"`
I'll see if the imake patch compiles and will send a patch later.
bye
ago
--
Alexander.Gottwald@informatik.tu-chemnitz.de
http://www.gotti.org ICQ: 126018723