Fix link_tool_exe_linux.in to work with ccache

The link_tool_exe_linux.in Perl script makes the assumption that the
compilation command line is always:

  gcc -o foobar foobar.c -someflags

I.e, it assumes that the compiler is the first word of the command
line. However, this is not true with ccache, where the command line
is:

  /path/to/ccache /path/to/crossgcc -o foobar foobar.c -someflags

Since this Perl script simply needs to add additional flags to the
command line, we simply add them at the end of the command line
instead of trying to add them at the beginning.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>

Index: valgrind-3.6.1/coregrind/link_tool_exe_linux.in
===================================================================
--- valgrind-3.6.1.orig/coregrind/link_tool_exe_linux.in	2011-12-22 13:59:08.933499060 +0100
+++ valgrind-3.6.1/coregrind/link_tool_exe_linux.in	2011-12-22 13:59:50.302782709 +0100
@@ -55,25 +55,13 @@
     if (($#ARGV + 1) < 5);
 
 my $ala = $ARGV[0];
+shift;
 
 # check for plausible-ish alt load address
 die "Bogus alt-load address"
     if (length($ala) < 3 || index($ala, "0x") != 0);
 
-# The cc invokation to do the final link
-my $cc = $ARGV[1];
-
-# and the 'restargs' are argv[2 ..]
-
-# so, build up the complete command here:
-# 'cc' -static -Ttext='ala' 'restargs'
-
-my $cmd="$cc -static -Wl,-Ttext=$ala";
-
-# Add the rest of the parameters
-foreach my $n (2 .. $#ARGV) {
-   $cmd = "$cmd $ARGV[$n]";
-}
+my $cmd=join(" ", @ARGV) . " -static -Wl,-Ttext=$ala";
 
 #print "link_tool_exe_linux: $cmd\n";
 
