Subject: pkg/10643: boehm-gc5.0a7 package dosen't build on hpcmips
To: None <gnats-bugs@gnats.netbsd.org>
From: None <fk200329@fsinet.or.jp>
List: netbsd-bugs
Date: 07/20/2000 11:11:15
>Number:         10643
>Category:       pkg
>Synopsis:       boehm-gc5.0a7 package dosen't build on hpcmips
>Confidential:   no
>Severity:       serious
>Priority:       high
>Responsible:    pkg-manager
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Thu Jul 20 11:12:00 PDT 2000
>Closed-Date:
>Last-Modified:
>Originator:     Hiroyuki Yanai
>Release:        June 27, 2000
>Organization:
	fsinet user
>Environment:
System: NetBSD twiggy.fsinet.or.jp 1.5_ALPHA NetBSD 1.5_ALPHA (GENERIC) #0: Sat Jul 1 02:05:42 JST 2000 root@680g.naobsd.org:/usr/src/sys/arch/hpcmips/compile/GENERIC hpcmips


>Description:
	current bohem-gc5.0a7 pkgsrc build on hpcmips, when use ULTRIX gc setting rule.
>How-To-Repeat:
	always.
>Fix:
	apply this patch.

diff -ru boehm-gc.orig/Makefile boehm-gc/Makefile
--- boehm-gc.orig/Makefile	Wed Jun 21 20:21:00 2000
+++ boehm-gc/Makefile	Sat Jul 15 02:28:48 2000
@@ -24,6 +24,10 @@
 EXTRACT_ELEMENTS=	-u
 .endif
 
+.if ${MACHINE_ARCH} == "mipsel"
+CFLAGS+=	-D__MIPSEL__
+.endif
+
 post-extract:
 	${MV} ${WRKSRC}/gc.man ${WRKSRC}/gc.man.in
 
diff -ru boehm-gc.orig/files/md5 boehm-gc/files/md5
--- boehm-gc.orig/files/md5	Wed Jun 21 20:21:00 2000
+++ boehm-gc/files/md5	Sat Jul 15 04:15:36 2000
@@ -1,3 +1,3 @@
-$NetBSD: md5,v 1.6 2000/06/20 21:50:19 jlam Exp $
+$NetBSD$
 
 MD5 (gc5.0alpha7.tar.gz) = fef59f9f8ef649168dfe642865a625d1
diff -ru boehm-gc.orig/files/patch-sum boehm-gc/files/patch-sum
--- boehm-gc.orig/files/patch-sum	Sat Jul  1 19:51:00 2000
+++ boehm-gc/files/patch-sum	Sat Jul 15 16:30:21 2000
@@ -2,7 +2,7 @@
 
 MD5 (patch-aa) = af2c2e81993bff8eb2f98bbee6da43c6
 MD5 (patch-ab) = a0d21ebc72d75966e6ecbb1aaca196a3
-MD5 (patch-ac) = 0079fad59768ab836cb8c52b1b925ba0
+MD5 (patch-ac) = 0db1af7c345ae3e5536a489a6ce058f7
 MD5 (patch-ad) = 02e1901d3e23c16462a6806b5a9ffbda
 MD5 (patch-ae) = 1c43a1657fecc6ac539e72062fba3da4
 MD5 (patch-af) = fac88bab69e4dfa6dfd93f096346a7a5
diff -ru boehm-gc.orig/patches/patch-ac boehm-gc/patches/patch-ac
--- boehm-gc.orig/patches/patch-ac	Wed Jun 21 20:21:00 2000
+++ boehm-gc/patches/patch-ac	Sat Jul 15 16:29:22 2000
@@ -1,7 +1,7 @@
-$NetBSD: patch-ac,v 1.6 2000/06/20 21:50:20 jlam Exp $
+$NetBSD$
 
 --- gcconfig.h.orig	Wed Apr 26 09:41:01 2000
-+++ gcconfig.h	Sat May  6 04:39:48 2000
++++ gcconfig.h	Sat Jul 15 16:00:33 2000
 @@ -27,6 +27,11 @@
  #    define LINUX
  # endif
@@ -26,7 +26,17 @@
  #    define mach_type_known
  # endif
  # if defined(__NetBSD__) && defined(arm32)
-@@ -114,7 +122,7 @@
+@@ -82,6 +90,9 @@
+ #      endif
+ #    endif /* !LINUX */
+ #    define mach_type_known
++#    if defined(__NetBSD__) && defined(__MIPSEL__)
++#      undef ULTRIX
++#    endif
+ # endif
+ # if defined(sequent) && defined(i386)
+ #    define I386
+@@ -114,7 +125,7 @@
  #   define mach_type_known
  # endif
  # if defined(sparc) && defined(unix) && !defined(sun) && !defined(linux) \
@@ -35,7 +45,7 @@
  #   define SPARC
  #   define DRSNX
  #   define mach_type_known
-@@ -123,6 +131,10 @@
+@@ -123,6 +134,10 @@
  #   define RS6000
  #   define mach_type_known
  # endif
@@ -46,7 +56,7 @@
  # if defined(_M_XENIX) && defined(_M_SYSV) && defined(_M_I386)
  	/* The above test may need refinement	*/
  #   define I386
-@@ -172,7 +184,7 @@
+@@ -172,7 +187,7 @@
  # endif
  # if defined(__alpha) || defined(__alpha__)
  #   define ALPHA
@@ -55,7 +65,7 @@
  #     define OSF1	/* a.k.a Digital Unix */
  #   endif
  #   define mach_type_known
-@@ -221,7 +233,6 @@
+@@ -221,7 +236,6 @@
  # endif
  # if defined(__NetBSD__) && defined(i386)
  #   define I386
@@ -63,7 +73,7 @@
  #   define mach_type_known
  # endif
  # if defined(bsdi) && defined(i386)
-@@ -573,6 +584,14 @@
+@@ -573,6 +587,14 @@
  #     define STACKBOTTOM ((ptr_t) 0xc0000000)
  #     define DATAEND	/* not needed */
  #   endif
@@ -78,7 +88,7 @@
  # endif
  
  # ifdef VAX
-@@ -602,7 +621,6 @@
+@@ -602,7 +624,6 @@
  #   define MACH_TYPE "SPARC"
  #   define ALIGNMENT 4	/* Required by hardware	*/
  #   define ALIGN_DOUBLE
@@ -86,7 +96,7 @@
  #   ifdef SUNOS5
  #	define OS_TYPE "SUNOS5"
  	extern int _etext;
-@@ -674,8 +692,20 @@
+@@ -674,8 +695,20 @@
  #   ifdef OPENBSD
  #     define OS_TYPE "OPENBSD"
  #     define STACKBOTTOM ((ptr_t) 0xf8000000)
@@ -107,7 +117,28 @@
  # endif
  
  # ifdef I386
-@@ -1019,6 +1049,16 @@
+@@ -960,6 +993,20 @@
+ #	endif
+ #	define DYNAMIC_LOADING
+ #   endif
++#   if defined(NETBSD) && defined(__MIPSEL__)
++#	define ALIGNMENT 4
++#	define OS_TYPE "NETBSD"
++#	define HEURISTIC2
++#	ifdef __ELF__
++	  extern int etext;
++#	  define DATASTART GC_data_start
++#	  define NEED_FIND_LIMIT
++#	  define DYNAMIC_LOADING
++#	else
++#	  define DATASTART (ptr_t) 0x10000000
++#	  define STACKBOTTOM ((ptr_t) 0x7ffff000)
++#	endif /* _ELF_ */
++#  endif
+ # endif
+ 
+ # ifdef RS6000
+@@ -1019,6 +1066,16 @@
  	/* fp registers in some cases when the target is a 21264.  The assembly	*/
  	/* code doesn't handle that yet, and version dependencies make that a	*/
  	/* bit tricky.  Do the easy thing for now.				*/
@@ -124,3 +155,13 @@
  #   ifdef OSF1
  #	define OS_TYPE "OSF1"
  #   	define DATASTART ((ptr_t) 0x140000000)
+@@ -1314,7 +1371,8 @@
+ # endif
+ 
+ # if defined(HP_PA) || defined(M88K) || defined(POWERPC) \
+-     || (defined(I386) && defined(OS2)) || defined(UTS4) || defined(LINT)
++     || (defined(I386) && defined(OS2)) || defined(UTS4) || defined(LINT) \
++     || (defined(__MIPSEL__) && defined(NETBSD))
+ 	/* Use setjmp based hack to mark from callee-save registers. */
+ #	define USE_GENERIC_PUSH_REGS
+ # endif

>Release-Note:
>Audit-Trail:
>Unformatted: