summaryrefslogtreecommitdiff
path: root/utils
diff options
context:
space:
mode:
authorVishal Bhatia <vishal@deja.com>1999-03-02 15:27:25 -0800
committerGurusamy Sarathy <gsar@cpan.org>1999-03-04 05:20:50 +0000
commita6f4eb0a57a2e0009d1bf64dff4f70a26302e92d (patch)
tree1a3c8f560b38b01203e3a748a21a26d113e93286 /utils
parent4d0c1c44b6764966a3c975cf76bf3a3a7e41f6bd (diff)
downloadperl-a6f4eb0a57a2e0009d1bf64dff4f70a26302e92d.tar.gz
updates to compiler modules
Message-ID: <19990303072725.779.qmail@hotmail.com> Subject: PATCH 5.005_56 + Test procedure p4raw-id: //depot/perl@3066
Diffstat (limited to 'utils')
-rw-r--r--utils/perlcc.PL12
1 files changed, 8 insertions, 4 deletions
diff --git a/utils/perlcc.PL b/utils/perlcc.PL
index b214645ad9..2ea822b2b4 100644
--- a/utils/perlcc.PL
+++ b/utils/perlcc.PL
@@ -223,8 +223,11 @@ sub _createCode
if (@_ == 2) # compiling a program
{
- _print( "$^X -I@INC -MO=CC,-o$generated_cfile $file\n", 36);
- $return = _run("$ -I@INC -MO=CC,-o$generated_cfile $file", 9);
+ _print( "$^X -I@INC -MB::Stash -c $file\n", 36);
+ my $stash=`$^X -I@INC -MB::Stash -c $file 2>/dev/null|tail -1`;
+ chomp $stash;
+ _print( "$^X -I@INC -MO=CC,$stash,-o$generated_cfile $file\n", 36);
+ $return = _run("$ -I@INC -MO=CC,$stash,-o$generated_cfile $file", 9);
$return;
}
else # compiling a shared object
@@ -311,9 +314,10 @@ sub _ccharness
}
my @sharedobjects = _getSharedObjects($sourceprog);
+ my $dynaloader="$Config{'installarchlib'}/auto/DynaLoader/DynaLoader.a";
my $cccmd =
- "$Config{cc} @Config{qw(ccflags optimize)} $incdir @sharedobjects @args $linkargs";
+ "$Config{cc} @Config{qw(ccflags optimize)} $incdir @sharedobjects @args $dynaloader $linkargs";
_print ("$cccmd\n", 36);
@@ -558,7 +562,7 @@ sub _checkopts
&& $options->{'gen'})
{
push(@errors,
-"ERROR: The options '-regex', '-run', and '-o' are incompatible with '-gen'.
+"ERROR: The options '-regex', ' -c -run', and '-o' are incompatible with '-gen'.
'-gen' says to stop at C generation, and the other three modify the
compilation and/or running process!\n");
}