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

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.

Reply via email to