Subject: pkg/22037: [rkb] pkgsrc/lang/gcc3 (3.3nb1) unable to build C++ programs on sparc64
To: None <gnats-bugs@gnats.netbsd.org>
From: None <rafal@netbsd.org>
List: netbsd-bugs
Date: 07/02/2003 14:33:46
>Number:         22037
>Category:       pkg
>Synopsis:       [rkb] pkgsrc/lang/gcc3 (3.3nb1) unable to build C++ programs on sparc64
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    pkg-manager
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Wed Jul 02 18:34:01 UTC 2003
>Closed-Date:
>Last-Modified:
>Originator:     Rafal Boni
>Release:        NetBSD 1.6T from June 1st, 2003 on sparc64
>Organization:
none
>Environment:
System: NetBSD fearless-vampire-killer.waterside.net 1.6T NetBSD 1.6T (FEARLESS_VAMPIRE_KILLER) #1: Sun Jun 1 23:16:59 EDT 2003 rafal@fearless-vampire-killer.waterside.net:/extra/sparc64/obj/sys/arch/sparc64/compile/FEARLESS_VAMPIRE_KILLER sparc64
Architecture: sparc64
Machine: sparc64

>Description:
	The lang/gcc3 package builds a non-PIC version of libgcc_s, which
	means that dynamically-linked C++ programs fall over due to the
	inability of the runtime linker to resolve references in libgcc_s

>How-To-Repeat:
	With the gcc3-3.3nb1 package, attempt to compile a trivial dynamic
	C++ program, like below

#include <iostream>
using namespace std;

main()
{
	cout << "Hello, whirled!\n";
}

>Fix:

Add the following patch to our pkgsrc patches, bump PKGREVISION:

--- gcc/config/sparc/t-netbsd64.orig	2003-07-02 12:11:05.000000000 -0400
+++ gcc/config/sparc/t-netbsd64	2003-07-02 12:14:18.000000000 -0400
@@ -6,3 +6,5 @@
 
 #LIBGCC = stmp-multilib
 #INSTALL_LIBGCC = install-multilib
+
+TARGET_LIBGCC2_CFLAGS = -fPIC -DPIC

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