Subject: Re: port-mac68k/29950: gtk2 fails to compile in pixops.c
To: None <gnats-bugs@netbsd.org, netbsd-bugs@netbsd.org>
From: Frederick Bruckman <fredb@immanent.net>
List: netbsd-bugs
Date: 04/11/2005 17:16:45
In article <20050411211800.5A11A63B11B@narn.netbsd.org>,
	drkilloran@speakeasy.net writes:

>  cc -DHAVE_CONFIG_H -I. -I../.. -DG_DISABLE_CAST_CHECKS -pthread -I/home/pkgsrc/x11/gtk2/work/.bui
> ldlink/include/glib/glib-2.0 -I/home/pkgsrc/x11/gtk2/work/.buildlink/lib/glib-2.0/include -I/home/
> pkgsrc/x11/gtk2/work/.buildlink/include -DG_DISABLE_DEPRECATED -DGDK_PIXBUF_DISABLE_DEPRECATED -DP
> REFIX=\"/usr/pkg\" -I/home/pkgsrc/x11/gtk2/work/.buildlink/include/freetype2 -I/home/pkgsrc/x11/gt
> k2/work/.x11-buildlink/include -O2 -pthread -Wall -MT pixops.lo -MD -MP -MF .deps/pixops.Tpo -c pi
> xops.c  -fPIC -DPIC -o .libs/pixops.o
> pixops.c: In function `linear_box_half':
> pixops.c:1307: error: unrecognizable insn:
> (insn 144 125 62 6 0x0 (set (reg:DF 16 %fp0)
>         (const_double:DF 0 [0x0] 0.0 [0x0.0p+0])) -1 (nil)
>     (nil))
> pixops.c:1307: internal compiler error: in extract_insn, at recog.c:2175
> Please submit a full bug report,
> with preprocessed source if appropriate.
> See <URL:http://www.netbsd.org/Misc/send-pr.html> for instructions.
> gmake[4]: *** [pixops.lo] Error 1
> gmake[4]: Leaving directory `/home/pkgsrc/x11/gtk2/work/gtk+-2.6.4/gdk-pixbuf/pixops'
> gmake[3]: *** [all-recursive] Error 1
> gmake[3]: Leaving directory `/home/pkgsrc/x11/gtk2/work/gtk+-2.6.4/gdk-pixbuf'
> gmake[2]: *** [all] Error 2
> gmake[2]: Leaving directory `/home/pkgsrc/x11/gtk2/work/gtk+-2.6.4/gdk-pixbuf'
> gmake[1]: *** [all-recursive] Error 1
> gmake[1]: Leaving directory `/home/pkgsrc/x11/gtk2/work/gtk+-2.6.4'
> gmake: *** [all] Error 2
> *** Error code 2

You know, I thought that looked familiar, and indeed, take a look at
/gdk-pixbuf in "pkgsrc/doc/HACKS".  Unfortunately, I don't have an m68k
box readily availiable for testing right now, but the same trick that's
still in place for gdk-pixbuf/gtk1 may help.  That is, drop this patch
over "x11/gtk2/patches/patch-aa"...


$NetBSD: patch-aa,v 1.12 2005/03/02 15:39:06 wiz Exp $

--- gdk-pixbuf/Makefile.in.orig	2005-03-01 09:31:30.000000000 -0600
+++ gdk-pixbuf/Makefile.in
@@ -522,7 +522,7 @@ gdk_pixbuf_csource_SOURCES = gdk-pixbuf-
 gdk_pixbuf_csource_LDADD = $(LDADDS)
 
 gdk_pixbuf_query_loaders_DEPENDENCIES = $(DEPS)
-gdk_pixbuf_query_loaders_LDADD = $(LDADDS)
+gdk_pixbuf_query_loaders_LDADD = $(LDADDS) -lpthread
 
 gdk_pixbuf_query_loaders_SOURCES = queryloaders.c
 
@@ -1521,6 +1521,15 @@ uninstall-info: uninstall-info-recursive
 @MS_LIB_AVAILABLE_TRUE@	-rm $(DESTDIR)$(libdir)/gdk_pixbuf-$(GTK_API_VERSION).lib
 @MS_LIB_AVAILABLE_FALSE@install-ms-lib:
 @MS_LIB_AVAILABLE_FALSE@uninstall-ms-lib:
+ 
+ifeq (m68k,$(findstring m68k,$(host_alias)))
+pixops.o: pixops.c
+	$(COMPILE) -O -c $<
+
+pixops.lo: pixops.c
+	$(LIBTOOL) --mode=compile $(COMPILE) -O -c $<
+
+endif
 
 gdk_pixbuf.def: gdk-pixbuf.symbols
 	(echo -e EXPORTS; $(CPP) -P -DINCLUDE_VARIABLES -DG_OS_WIN32 - <$(srcdir)/gdk-pixbuf.symbols | sed -e '/^$$/d' -e 's/^/	/' -e 's/G_GNUC_[^ ]*//g') > gdk_pixbuf.def


...run "make distinfo && make clean" in "x11/gtk2", and continue.


Frederick