summaryrefslogtreecommitdiffstats
path: root/package/valgrind/valgrind-fix-ccache-support.patch
diff options
context:
space:
mode:
authorThomas Petazzoni <thomas.petazzoni@free-electrons.com>2012-12-20 00:14:54 +0100
committerPeter Korsgaard <jacmet@sunsite.dk>2013-01-01 22:24:12 +0100
commitb4c0647e14fe329a8ac3d1d5de064e22b3624eda (patch)
tree8fcda66e55b0c1b9d0b6a741777ee7a25ee7dcd2 /package/valgrind/valgrind-fix-ccache-support.patch
parentd70a9f6d645130fd1354ed040a132ac8ed71f46b (diff)
downloadbuildroot-novena-b4c0647e14fe329a8ac3d1d5de064e22b3624eda.tar.gz
buildroot-novena-b4c0647e14fe329a8ac3d1d5de064e22b3624eda.zip
valgrind: rename patches without version in the filename
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Diffstat (limited to 'package/valgrind/valgrind-fix-ccache-support.patch')
-rw-r--r--package/valgrind/valgrind-fix-ccache-support.patch51
1 files changed, 51 insertions, 0 deletions
diff --git a/package/valgrind/valgrind-fix-ccache-support.patch b/package/valgrind/valgrind-fix-ccache-support.patch
new file mode 100644
index 000000000..56d984b0b
--- /dev/null
+++ b/package/valgrind/valgrind-fix-ccache-support.patch
@@ -0,0 +1,51 @@
+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";
+