فهرست منبع

Add patch that fixes a bug in oparchive that resulted in the the debug data
overwriting the executables themselves. The patch fixes this by always putting
the debug data into a .debug subdirectory. This will then be picked up by
opreport when reading the archive in.

The oprofile_cvs.bb recipe was updated to use this patch.


git-svn-id: https://svn.o-hand.com/repos/poky/trunk@1158 311d38ba-8fff-0310-9ca6-ca027cbcb966

Robert Bradford 19 سال پیش
والد
کامیت
e1140fb8f9
2فایلهای تغییر یافته به همراه25 افزوده شده و 0 حذف شده
  1. 24 0
      meta/packages/oprofile/oprofile/oparchive-debug-dir.patch
  2. 1 0
      meta/packages/oprofile/oprofile_cvs.bb

+ 24 - 0
meta/packages/oprofile/oprofile/oparchive-debug-dir.patch

@@ -0,0 +1,24 @@
+Index: oprofile/pp/oparchive.cpp
+===================================================================
+--- oprofile.orig/pp/oparchive.cpp	2007-01-17 15:55:12.000000000 +0000
++++ oprofile/pp/oparchive.cpp	2007-01-17 15:55:39.000000000 +0000
+@@ -97,8 +97,17 @@
+ 			if (find_separate_debug_file(ibfd, dirname, global,
+ 				debug_filename)) {
+ 				/* found something copy it over */
+-				string dest_debug = options::outdirectory +
+-					dirname + "/" +
++				string dest_debug_dir = options::outdirectory +
++					dirname + "/.debug/";
++				if (mkdir(dest_debug_dir.c_str(),0755) < 0) {
++					if (errno!=EEXIST) {
++						cerr << "Unable to create directory: " 
++						<< dest_debug_dir << "." << endl;
++						exit (EXIT_FAILURE);
++					}
++				}
++
++				string dest_debug = dest_debug_dir +
+ 					op_basename(debug_filename);
+ 				copy_one_file(image_ok, debug_filename, dest_debug);
+ 			}

+ 1 - 0
meta/packages/oprofile/oprofile_cvs.bb

@@ -8,6 +8,7 @@ DEPENDS = "popt binutils"
 
 SRC_URI = "cvs://anonymous@oprofile.cvs.sourceforge.net/cvsroot/oprofile;module=oprofile \
 	   file://oprofile_eabi.patch;patch=1 \
+	   file://oparchive-debug-dir.patch;patch=1 \
 	   file://acinclude.m4"
 S = "${WORKDIR}/oprofile"