Date: Sat, 8 Jun 2002 11:29:26 +0200 From: Stefan Esser <se@freebsd.org> To: Kris Kennaway <kris@obsecurity.org> Cc: Yamada Ken Takeshi <ken@tydfam.jp>, freebsd-current@FreeBSD.ORG, Stefan Esser <se@freebsd.org> Subject: Re: Re: GCC3.1 internal compiler error when compiling XFree86-4-libraries Message-ID: <20020608092926.GA2635@StefanEsser.FreeBSD.org> In-Reply-To: <20020608013938.B5755@xor.obsecurity.org> References: <20020608.171312.730576735.ken@tydfam.jp> <20020608013938.B5755@xor.obsecurity.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On 2002-06-08 01:39 -0700, Kris Kennaway <kris@obsecurity.org> wrote: > On Sat, Jun 08, 2002 at 05:13:12PM +0900, Yamada Ken Takeshi wrote: > > I have the following error when I try to install it. > > Is it unique only to me? > > I didn't get that when I built it on ref5. That's the only place I've > tried it. I got around this problem by (indirectly) fixing the ".c.o" rule in the Imakefile. This patch was part of my previous mail to you regarding the XFree86 library build process (new version of patch-z32). The problem is that "unshared" is meant to be a prefix to a file name, but $@ happens to be a path name including directory components. E.g. $@ = <dir>/<file.o> => unshared/<dir>/<file.o> The correct path is <dir>/unshared/<file.o> and the modified definition of LibObjCompile uses that filename: File: /usr/ports/x11/XFree86-4-libraries/files/patch-z32 --- lib/GL/mesa/src/OSmesa/Imakefile.orig Tue Apr 3 11:29:33 2001 +++ lib/GL/mesa/src/OSmesa/Imakefile Wed Jun 5 12:28:26 2002 @@ -8,6 +8,16 @@ #define DoDebugLib DebugLibGlx #define DoProfileLib ProfileLibGlx +#define LibObjCompile(dir,options) RemoveFiles($@ $(@:C!([^/]+)$!dir/\1!)) @@\ + ClearmakeOSName \ + $(CC) -c $(CCOPTIONS) $(THREADS_CFLAGS) $(ALLDEFINES) \ + options $*.c -o $(@:C!([^/]+)$!dir/\1!) + +#define ObjectCompile(options) RemoveFile($@) @@\ + ClearmakeOSName \ + $(CC) -c $(CFLAGS) options -O0 $*.c -o $@ + + #include "../Imakefile.inc" #ifdef i386Architecture #include "../X86/Imakefile.inc" @@ -58,7 +68,7 @@ LIBNAME = OSMesa SOREV = 3.3 - +#if !defined(LibInstall) || LibInstall || (!defined(ModInstall) || ModInstall) #if DoNormalLib NormalLibraryTarget($(LIBNAME), $(UOBJS)) InstallLibrary($(LIBNAME),$(USRLIBDIR)) @@ -77,6 +87,7 @@ #if DoProfileLib ProfiledLibraryTarget($(LIBNAME), $(POBJS)) InstallLibrary($(LIBNAME)_p,$(USRLIBDIR)) +#endif #endif DependTarget() (The redefinition of ObjectCompile() disables optimization because it triggers an internal bug in gcc-3.1 in the case of the PCI object.) Regards, STefan To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-current" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20020608092926.GA2635>