From sacadmin Tue Sep 16 10:13:09 2008
Received: from chaz.sfbay.sun.com (chaz.SFBay.Sun.COM [129.146.228.120])
	by sac.sfbay.sun.com (8.13.8+Sun/8.13.8) with ESMTP id m8GHD9Sw017921;
	Tue, 16 Sep 2008 10:13:09 -0700 (PDT)
Received: from chaz.sfbay.sun.com (localhost [127.0.0.1])
	by chaz.sfbay.sun.com (8.14.3+Sun/8.14.3) with ESMTP id m8GH9rrY016529;
	Tue, 16 Sep 2008 10:09:53 -0700 (PDT)
Received: (from rie@localhost)
	by chaz.sfbay.sun.com (8.14.3+Sun/8.14.3/Submit) id m8GH9rEW016526;
	Tue, 16 Sep 2008 10:09:53 -0700 (PDT)
Date: Tue, 16 Sep 2008 10:09:53 -0700 (PDT)
From: Rod Evans <rie@chaz.sfbay.sun.com>
Message-Id: <200809161709.m8GH9rEW016526@chaz.sfbay.sun.com>
To: PSARC-record@sac.sfbay.sun.com
Subject: add gld options to ld(1) [PSARC/2008/583 Self Review]
Status: RO
Content-Length: 556


Template Version: @(#)sac_nextcase %I% %G% SMI
This information is Copyright 2008 Sun Microsystems
1. Introduction
    1.1. Project/Component Working Name:
	 add gld options to ld(1)
    1.2. Name of Document Author/Supplier:
	 Author:  Rod Evans
    1.3  Date of This Document:
	16 September, 2008
4. Technical Description
    See the case directory for more detail

6. Resources and Schedule
    6.4. Steering Committee requested information
   	6.4.1. Consolidation C-team Name:
		OSNet
    6.5. ARC review type: Automatic
    6.6. ARC Exposure: open


From sacadmin Tue Sep 16 10:14:35 2008
Received: from jurassic-x4600.sfbay.sun.com (cretaceous.SFBay.Sun.COM [129.146.17.63])
	by sac.sfbay.sun.com (8.13.8+Sun/8.13.8) with ESMTP id m8GHEZjn017939
	for <psarc@sac.sfbay.sun.com>; Tue, 16 Sep 2008 10:14:35 -0700 (PDT)
Received: from [129.146.228.120] (chaz.SFBay.Sun.COM [129.146.228.120])
	by jurassic-x4600.sfbay.sun.com (8.14.3+Sun/8.14.3) with ESMTP id m8GHEYHe726504;
	Tue, 16 Sep 2008 10:14:34 -0700 (PDT)
Message-ID: <48CFE8B7.10901@sun.com>
Date: Tue, 16 Sep 2008 10:11:19 -0700
From: Rod Evans <Rod.Evans@sun.com>
Reply-To: Rod.Evans@sun.com
Organization: Sun Microsystems Inc.
User-Agent: Thunderbird 2.0.0.14 (X11/20080519)
MIME-Version: 1.0
To: psarc@sac.sfbay.sun.com, psarc-ext@sun.com
CC: Ali Bahrami <Ali.Bahrami@sun.com>
Subject: 2008/583: add gld options to ld(1)
Content-Type: text/plain; charset=ISO-8859-1; format=flowed
Content-Transfer-Encoding: 7bit
Status: RO
Content-Length: 2389

------------------------------------------------------------------------

I'm sponsoring the following case for myself.   This case qualifies for
Architectural self-review, but I wish to record the following
information.

------------------------------------------------------------------------

Folks who build with "configure" frequently run into situations where
options appropriate for gld (GNU's ld) are passed to ld(1).  ld(1)
provides a nice usage message, and exits, leaving the user to fix the
configure process or edit the Makefiles produced by configure to supply
the appropriate Solaris option.

This case adds a family of gld options to ld(1).  These options are the
most common found to have been passed to ld(1).  These options are also
simple translations from gld to ld(1) - ie. the options provide identical
functionality with gld and ld(1).

Many other gld options exist.  Some have no ld(1) equivalent, or require
a modification in behavior to mimic gld expectations.  Some options might
be considered no-ops to ld(1).  This case does not address any of these
options, as they have not been discovered to be common configure issues.
There is however, nothing about this case, that would prohibit the addition
of more gld options in future.

The changes for this proposal are being carried out under:

  6744003 ld(1) could provide better argument processing diagnostics

And the associated man page:

  6747570 ld(1) updates (6744003) require man pages changes.

------------------------------------------------------------------------

The following gld options are being added to ld(1):

         Gld option                      Solaris ld(1) equivalent

	--allow-multiple-definition ->	-z muldefs
	--auxiliary <name>	->	-f <name>
	--entry <name>		->	-e <name>
	--filter <name>		->	-F <name>
	--help			->	-z help
	--library <name>	->	-l <name>
	--library-path <name>	->	-L <name>
	--no-undefined		->	-z defs
	--outfile <name>	->	-o <name>
	--relocatable		->	-r
	--strip-all		->	-s
	--undefined <name>	->	-u <name>
	--version		->	-V
	--version-script <name>	->	-M <name>
	-rpath <name>		->	-R <name>
	-shared			->	-G
	-soname	<name>		->	-h <name>
         --dynamic-linker <name>	->	-I <name>

------------------------------------------------------------------------

Release Binding:                 Patch/Micro
new ld options:                  Committed


-- 

Rod.

From Rod.Evans@sun.com Tue Sep 16 10:14:36 2008
Received: from sunmail2sca.sfbay.sun.com (sunmail2sca.SFBay.Sun.COM [129.145.155.234])
	by sac.sfbay.sun.com (8.13.8+Sun/8.13.8) with ESMTP id m8GHEa3D017943
	for <psarc-ext@sac.sfbay.sun.com>; Tue, 16 Sep 2008 10:14:36 -0700 (PDT)
Received: from nwk-avmta-2.sfbay.sun.com (nwk-avmta-2.SFBay.Sun.COM [129.145.155.6])
	by sunmail2sca.sfbay.sun.com (8.13.7+Sun/8.13.7/ENSMAIL,v2.2) with ESMTP id m8GHEXk9019613;
	Tue, 16 Sep 2008 10:14:35 -0700 (PDT)
Received: from pmxchannel-daemon.nwk-avmta-2.sfbay.sun.com by
 nwk-avmta-2.sfbay.sun.com
 (Sun Java System Messaging Server 6.2-3.04 (built Jul 15 2005))
 id <0K7A00I09T8B8R00@nwk-avmta-2.sfbay.sun.com>; Tue,
 16 Sep 2008 10:14:35 -0700 (PDT)
Received: from jurassic-x4600.sfbay.sun.com ([129.146.17.59])
 by nwk-avmta-2.sfbay.sun.com
 (Sun Java System Messaging Server 6.2-3.04 (built Jul 15 2005))
 with ESMTP id <0K7A00H7WT8BC430@nwk-avmta-2.sfbay.sun.com>; Tue,
 16 Sep 2008 10:14:35 -0700 (PDT)
Received: from [129.146.228.120] (chaz.SFBay.Sun.COM [129.146.228.120])
	by jurassic-x4600.sfbay.sun.com (8.14.3+Sun/8.14.3)
 with ESMTP id m8GHEYHe726504; Tue, 16 Sep 2008 10:14:34 -0700 (PDT)
Date: Tue, 16 Sep 2008 10:11:19 -0700
From: Rod Evans <Rod.Evans@sun.com>
Subject: 2008/583: add gld options to ld(1)
To: psarc@sac.sfbay.sun.com, psarc-ext@sun.com
Cc: Ali Bahrami <Ali.Bahrami@sun.com>
Reply-to: Rod.Evans@sun.com
Message-id: <48CFE8B7.10901@sun.com>
Organization: Sun Microsystems Inc.
MIME-version: 1.0
Content-type: text/plain; charset=ISO-8859-1; format=flowed
Content-transfer-encoding: 7BIT
X-PMX-Version: 5.4.1.325704
User-Agent: Thunderbird 2.0.0.14 (X11/20080519)
Status: RO
Content-Length: 2389

------------------------------------------------------------------------

I'm sponsoring the following case for myself.   This case qualifies for
Architectural self-review, but I wish to record the following
information.

------------------------------------------------------------------------

Folks who build with "configure" frequently run into situations where
options appropriate for gld (GNU's ld) are passed to ld(1).  ld(1)
provides a nice usage message, and exits, leaving the user to fix the
configure process or edit the Makefiles produced by configure to supply
the appropriate Solaris option.

This case adds a family of gld options to ld(1).  These options are the
most common found to have been passed to ld(1).  These options are also
simple translations from gld to ld(1) - ie. the options provide identical
functionality with gld and ld(1).

Many other gld options exist.  Some have no ld(1) equivalent, or require
a modification in behavior to mimic gld expectations.  Some options might
be considered no-ops to ld(1).  This case does not address any of these
options, as they have not been discovered to be common configure issues.
There is however, nothing about this case, that would prohibit the addition
of more gld options in future.

The changes for this proposal are being carried out under:

  6744003 ld(1) could provide better argument processing diagnostics

And the associated man page:

  6747570 ld(1) updates (6744003) require man pages changes.

------------------------------------------------------------------------

The following gld options are being added to ld(1):

         Gld option                      Solaris ld(1) equivalent

	--allow-multiple-definition ->	-z muldefs
	--auxiliary <name>	->	-f <name>
	--entry <name>		->	-e <name>
	--filter <name>		->	-F <name>
	--help			->	-z help
	--library <name>	->	-l <name>
	--library-path <name>	->	-L <name>
	--no-undefined		->	-z defs
	--outfile <name>	->	-o <name>
	--relocatable		->	-r
	--strip-all		->	-s
	--undefined <name>	->	-u <name>
	--version		->	-V
	--version-script <name>	->	-M <name>
	-rpath <name>		->	-R <name>
	-shared			->	-G
	-soname	<name>		->	-h <name>
         --dynamic-linker <name>	->	-I <name>

------------------------------------------------------------------------

Release Binding:                 Patch/Micro
new ld options:                  Committed


-- 

Rod.

From Ali.Bahrami@Sun.COM Wed Oct 29 22:39:12 2008
Received: from sunmail3mpk.sfbay.sun.com (sunmail3mpk.SFBay.Sun.COM [129.146.11.52])
	by sac.sfbay.sun.com (8.13.8+Sun/8.13.8) with ESMTP id m9U5dBnB000908
	for <psarc-ext@sac.sfbay.sun.com>; Wed, 29 Oct 2008 22:39:11 -0700 (PDT)
Received: from nwk-avmta-2.sfbay.sun.com (nwk-avmta-2.SFBay.Sun.COM [129.145.155.6])
	by sunmail3mpk.sfbay.sun.com (8.13.7+Sun/8.13.7/ENSMAIL,v2.2) with ESMTP id m9U5aa3D027465
	for <@sunmail2sca.sfbay.sun.com:psarc-ext@sun.com>; Wed, 29 Oct 2008 22:39:11 -0700 (PDT)
Received: from pmxchannel-daemon.nwk-avmta-2.sfbay.sun.com by
 nwk-avmta-2.sfbay.sun.com
 (Sun Java System Messaging Server 6.2-3.04 (built Jul 15 2005))
 id <0K9J00201E8XIM00@nwk-avmta-2.sfbay.sun.com> for psarc-ext@sun.com
 (ORCPT psarc-ext@sun.com); Wed, 29 Oct 2008 22:36:33 -0700 (PDT)
Received: from brmea-mail-1.sun.com ([192.18.98.31])
 by nwk-avmta-2.sfbay.sun.com
 (Sun Java System Messaging Server 6.2-3.04 (built Jul 15 2005))
 with ESMTP id <0K9J00LYAE8WPX60@nwk-avmta-2.sfbay.sun.com> for
 psarc-ext@sun.com (ORCPT psarc-ext@sun.com); Wed,
 29 Oct 2008 22:36:32 -0700 (PDT)
Received: from fe-amer-10.sun.com ([192.18.109.80])
	by brmea-mail-1.sun.com (8.13.6+Sun/8.12.9) with ESMTP id m9U5aWNk015244	for
 <psarc-ext@sun.com>; Thu, 30 Oct 2008 05:36:32 +0000 (GMT)
Received: from conversion-daemon.mail-amer.sun.com by mail-amer.sun.com
 (Sun Java System Messaging Server 6.2-8.04 (built Feb 28 2007))
 id <0K9J00J01E3RIS00@mail-amer.sun.com>
 (original mail from Ali.Bahrami@Sun.COM)
 for psarc-ext@sun.com (ORCPT psarc-ext@sun.com); Wed,
 29 Oct 2008 23:36:32 -0600 (MDT)
Received: from [198.182.198.27] ([199.45.162.234])
 by mail-amer.sun.com (Sun Java System Messaging Server 6.2-8.04 (built Feb 28
 2007)) with ESMTPSA id <0K9J007K7E8WPP50@mail-amer.sun.com>; Wed,
 29 Oct 2008 23:36:32 -0600 (MDT)
Date: Wed, 29 Oct 2008 23:36:31 -0600
From: Ali Bahrami <Ali.Bahrami@Sun.COM>
Subject: Re: PSARC 2008/583: add gld options to ld(1)
In-reply-to: <48CFE8B7.10901@sun.com>
Sender: Ali.Bahrami@Sun.COM
To: psarc-ext@Sun.COM
Cc: Rod.Evans@Sun.COM
Message-id: <490947DF.2010702@Sun.COM>
MIME-version: 1.0
Content-type: text/plain; format=flowed; charset=ISO-8859-1
Content-transfer-encoding: 7BIT
X-PMX-Version: 5.4.1.325704
References: <48CFE8B7.10901@sun.com>
User-Agent: Thunderbird 2.0.0.12 (X11/20080228)
Status: RO
Content-Length: 1455

Rod Evans wrote:
> ------------------------------------------------------------------------
> 
> I'm sponsoring the following case for myself.   This case qualifies for
> Architectural self-review, but I wish to record the following
> information.

<snip>

> 	--version-script <name>	->	-M <name>


I wish to amend this case: The --version-script option will not
be delivered at the same time as the other gld compatibility
options.

(Note that I am not the case owner, but am acting on his behalf, as
a member of the same team).

-----

The GNU link-editor allows wildcard (*) characters to be used
in the symbol names found in version definitions, a feature not
currently supported by the Solaris ld. The presence of the --version-script
option can make configure scripts believe that it is safe to pass such
a version definition to the Solaris ld, as described in:

	6765299 ld --version-script option not compatible with GNU ld

Until such time as the Solaris ld can properly handle wildcard
characters in symbol names, the presence of the --version-script
option is a liability rather than a benefit. The --version-script
option has not been ported back to Solaris 10, and has not yet
escaped into the wild via the next OpenSolaris release. I am
therefore taking this opportunity to remove the --version-script
option from the Solaris link-editor at this time, and am working
to get the change into the upcoming OpenSolaris 2008.11 release.

- Ali



From ro@techfak.uni-bielefeld.de Thu Oct 30 04:52:08 2008
Received: from sunmail4.singapore.sun.com (sunmail4.Singapore.Sun.COM [129.158.71.19])
	by sac.sfbay.sun.com (8.13.8+Sun/8.13.8) with ESMTP id m9UBq7fh028392
	for <psarc-ext@sac.sfbay.Sun.COM>; Thu, 30 Oct 2008 04:52:07 -0700 (PDT)
Received: from nwk-avmta-2.sfbay.sun.com (nwk-avmta-2.SFBay.Sun.COM [129.145.155.6])
	by sunmail4.singapore.sun.com (8.13.4+Sun/8.13.3/ENSMAIL,v2.2) with ESMTP id m9UBpduR003898;
	Thu, 30 Oct 2008 19:52:02 +0800 (SGT)
Received: from pmxchannel-daemon.nwk-avmta-2.sfbay.sun.com by
 nwk-avmta-2.sfbay.sun.com
 (Sun Java System Messaging Server 6.2-3.04 (built Jul 15 2005))
 id <0K9J00K01VMNB100@nwk-avmta-2.sfbay.sun.com>; Thu,
 30 Oct 2008 04:51:59 -0700 (PDT)
Received: from sca-ea-mail-2.sun.com ([192.18.43.25])
 by nwk-avmta-2.sfbay.sun.com
 (Sun Java System Messaging Server 6.2-3.04 (built Jul 15 2005))
 with ESMTP id <0K9J008P6VMMBAA0@nwk-avmta-2.sfbay.sun.com>; Thu,
 30 Oct 2008 04:51:58 -0700 (PDT)
Received: from relay17i.sun.com
 (ip127.net129179-4.block1.us.syntegra.com [129.179.4.127])
	by sca-ea-mail-2.sun.com (8.13.7+Sun/8.12.9) with ESMTP id m9UBm9Av010461;
 Thu, 30 Oct 2008 11:51:58 +0000 (GMT)
Received: from mmp12es.mmp.us.syntegra.com ([160.41.208.12] [160.41.208.12])
 by relay17i.sun.com with ESMTP id BT-MMP-148195; Thu,
 30 Oct 2008 11:51:55 +0000 (Z)
Received: from relay15i.sun.com (relay15i.sun.com [129.179.4.125])
 by mmp12es.mmp.us.syntegra.com with ESMTP id BT-MMP-3861911; Thu,
 30 Oct 2008 11:51:55 +0000 (Z)
Received: from smarthost.TechFak.Uni-Bielefeld.DE
 ([129.70.137.17] [129.70.137.17]) by relay1ib.sun.com with ESMTP id
 BT-MMP-3118896; Thu, 30 Oct 2008 11:51:54 +0000 (Z)
Received: from manam.TechFak.Uni-Bielefeld.DE
 (manam.TechFak.Uni-Bielefeld.DE [129.70.137.47])
	(using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits))
	(No client certificate requested)	by smarthost.TechFak.Uni-Bielefeld.DE
 (Postfix) with ESMTP id 5F0724837E; Thu, 30 Oct 2008 12:51:54 +0100 (CET)
Date: Thu, 30 Oct 2008 12:51:50 +0100
From: Rainer Orth <ro@techfak.uni-bielefeld.de>
Subject: Re: PSARC 2008/583: add gld options to ld(1)
In-reply-to: Ali Bahrami's message of "Wed, 29 Oct 2008 23:36:31 -0600"
Sender: ro@techfak.uni-bielefeld.de
To: Ali Bahrami <Ali.Bahrami@sun.com>
Cc: psarc-ext@sun.com, Rod.Evans@sun.com
Message-id: <ydd4p2uqp0p.fsf@manam.TechFak.Uni-Bielefeld.DE>
MIME-version: 1.0
X-Mailer: Gnus v5.6.44/Emacs 19.34
Content-type: text/plain; charset=US-ASCII
Content-transfer-encoding: 7BIT
X-PMX-Version: 5.4.1.325704
X-Brightmail-Tracker: AAAAAA==
X-Antispam: No, score=0.0/5.0, scanned in 0.369sec at (localhost [127.0.0.1])
	by smf-spamd v1.3.1 - http://smfs.sf.net/
Lines: 34
References: <48CFE8B7.10901@sun.com> <490947DF.2010702@Sun.COM>
Status: RO
Content-Length: 1235

Ali Bahrami <Ali.Bahrami@Sun.COM> writes:

> The GNU link-editor allows wildcard (*) characters to be used
> in the symbol names found in version definitions, a feature not
> currently supported by the Solaris ld. The presence of the --version-script
> option can make configure scripts believe that it is safe to pass such
> a version definition to the Solaris ld, as described in:
> 
> 	6765299 ld --version-script option not compatible with GNU ld
> 
> Until such time as the Solaris ld can properly handle wildcard
> characters in symbol names, the presence of the --version-script
> option is a liability rather than a benefit. The --version-script

True, but it's worse than that: GNU ld also supports something like

    # Names inside the 'extern' block are demangled names.
    extern "C++"
    {
      std::_6::*;
      std::*
    };

(this is an example from the libstdc++ version scripts).  Since the name
mangling is compiler dependent, this may get intricate to support properly.

There may be even more GNU extensions.  Hopefully the GNU ld manual
describes all of them.

	Rainer

-- 
-----------------------------------------------------------------------------
Rainer Orth, Faculty of Technology, Bielefeld University

