#1056: inter::progs ought to be smarter about finding linker
-----------------------+----------------------------------------------------
Reporter: jkeenan | Owner:
Type: patch | Status: new
Priority: normal | Milestone:
Component: configure | Version: 1.6.0
Severity: medium | Keywords: linker
Lang: | Patch: new
Platform: |
-----------------------+----------------------------------------------------
This issue was first discussed in
[http://rt.perl.org/rt3/Ticket/Display.html?id=49558 RT #49558]. I'm
quoting Andy Dougherty's original post in its entirety.
"This patch just notes a problem area. In order to pick the correct linker
on platforms where there is more than one possibility (e.g. the vendor's
cc and gcc), Configure.pl needs to know which compiler is being used. Both
solaris.pm and dec_osf.pm (assuming my recent patch is applied) handle
this with a callback -- immediately after $cc is set, they run a test
program to see if $cc is really gcc. Duplicating this callback code in
each hints file seems wrong. Configure really ought to do at least some of
that guessing right away.
"(The ????? can be filled in with whatever tag RT assigns this.)"
{{{
diff -r -u parrot-current/config/inter/progs.pm parrot-
andy/config/inter/progs.pm
--- parrot-current/config/inter/progs.pm 2008-01-02 08:59:40.000000000
-0500
+++ parrot-andy/config/inter/progs.pm 2008-01-09 08:55:50.000000000 -0500
@@ -91,6 +91,15 @@
if $ask;
$conf->data->set( cc => $cc );
+ # XXX [RT ????? ] Configure should do some intelligent guessing here.
+ # Which linker to pick may well depend on the compiler chosen.
+ # If the user picks 'gcc', then the linker should probably
+ # be either 'gcc' or 'g++'.
+ # If the user picks 'cc', then the linker should probably be
+ # the associated c++ compiler, known as 'c++', 'CC', or 'cxx',
+ # or perhaps something else.
+ # Currently, solaris and dec_osf handle this with callbacks.
+ #
$link = integrate( $conf->data->get('link'), $conf->options->get('link')
);
$link = prompt( "How about your linker?", $link ) if $ask;
$conf->data->set( link => $link );
}}}
I don't know whether the patch would cleanly apply today.
Thank you very much.[[BR]]
kid51
--
Ticket URL: <https://trac.parrot.org/parrot/ticket/1056>
Parrot <https://trac.parrot.org/parrot/>
Parrot Development
_______________________________________________
parrot-tickets mailing list
[email protected]
http://lists.parrot.org/mailman/listinfo/parrot-tickets