On 2002-06-08 01:39 -0700, Kris Kennaway <[EMAIL PROTECTED]> 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 [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message

Reply via email to