ports/78577: Fixes devel/boehm-gc on FreeBSD/powerpc arch

Martin Minkus diskiller at diablo.diskiller.net
Tue Mar 8 06:40:04 UTC 2005


>Number:         78577
>Category:       ports
>Synopsis:       Fixes devel/boehm-gc on FreeBSD/powerpc arch
>Confidential:   yes
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          update
>Submitter-Id:   current-users
>Arrival-Date:   Tue Mar 08 06:40:03 GMT 2005
>Closed-Date:
>Last-Modified:
>Originator:     Martin Minkus
>Release:        FreeBSD 5.4-PRERELEASE i386
>Organization:
>Environment:
System: FreeBSD diablo.diskiller.net 5.4-PRERELEASE FreeBSD 5.4-PRERELEASE #3: Thu Mar 3 18:09:32 CST 2005 diskiller at diablo.diskiller.net:/usr/obj/junk/stable/src/sys/DIABLO i386
>Description:
	Added FreeBSD/powerpc support go bohem-gc. PowerPC support already exists,
	as boehm-gc runs on Darwin/ppc, Linux/ppc, NetBSD/ppc, etc, etc.
>How-To-Repeat:
	Build port on FreeBSD/ppc. It fails as FreeBSD/powerpc is an unknown system.
>Fix:
	Patches below fix the problem. Peter Grehan states that a copy of the
	NetBSD/ppc section is probably all that is needed (and that is what i did).
	w3m which relies on boehm-gc works flawlessly.


--- patch-devel-boehm-gc-Makefile begins here ---
*** Makefile.orig	Sun Feb 27 16:55:41 2005
--- Makefile	Sun Feb 27 16:56:02 2005
***************
*** 48,55 ****
  
  MAN3=		gc.3
  
! .if ${ARCH} != "i386" && ${ARCH} != "alpha" && ${ARCH} != "amd64" && ${ARCH} != "sparc64" 
! BROKEN=		"Does not compile on !i386 and !alpha and !amd64 and !sparc64"
  .endif
  
  post-patch:
--- 48,55 ----
  
  MAN3=		gc.3
  
! .if ${ARCH} != "i386" && ${ARCH} != "alpha" && ${ARCH} != "amd64" && ${ARCH} != "sparc64" && ${ARCH} != "powerpc"
! BROKEN=		"Does not compile on !i386 and !alpha and !amd64 and !sparc64 and !powerpc"
  .endif
  
  post-patch:
--- patch-devel-boehm-gc-Makefile ends here ---

--- patch-include-private-gcconfig.h begins here ---
*** include/private/gcconfig.h.orig	Sat Dec 18 10:50:16 2004
--- include/private/gcconfig.h	Sun Feb 27 16:54:54 2005
***************
*** 328,337 ****
--- 328,345 ----
  #    define X86_64
  #    define mach_type_known
  # endif
+ # if defined(__FreeBSD__) && defined(__amd64__)
+ #    define X86_64
+ #    define mach_type_known
+ # endif
  # if defined(FREEBSD) && defined(__sparc__)
  #    define SPARC
  #    define mach_type_known
  #endif
+ # if defined(FREEBSD) && defined(__powerpc__)
+ #    define POWERPC
+ #    define mach_type_known
+ #endif
  # if defined(bsdi) && (defined(i386) || defined(__i386__))
  #    define I386
  #    define BSDI
***************
*** 811,816 ****
--- 819,834 ----
  #     define DATASTART GC_data_start
  #     define DYNAMIC_LOADING
  #   endif
+ #   ifdef FREEBSD
+ #   define ALIGNMENT 4
+ #       define OS_TYPE "FREEBSD"
+ #       ifdef __ELF__
+ #           define DYNAMIC_LOADING
+ #       endif
+ #	define HEURISTIC2
+ 	extern char etext[];
+ #	define SEARCH_FOR_DATA_START
+ #   endif
  #   ifdef NOSYS
  #     define ALIGNMENT 4
  #     define OS_TYPE "NOSYS"
***************
*** 1939,1944 ****
--- 1957,1971 ----
  #	ifdef __ELF__
  #	    define DYNAMIC_LOADING
  #	endif
+ #	define HEURISTIC2
+ 	extern char etext[];
+ #	define SEARCH_FOR_DATA_START
+ #   endif
+ #   ifdef FREEBSD
+ #       define OS_TYPE "FREEBSD"
+ #       ifdef __ELF__
+ #           define DYNAMIC_LOADING
+ #       endif
  #	define HEURISTIC2
  	extern char etext[];
  #	define SEARCH_FOR_DATA_START
--- patch-include-private-gcconfig.h ends here ---


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



More information about the freebsd-ports-bugs mailing list