]> git.pld-linux.org Git - packages/rpm.git/blobdiff - rpm-debuginfo.patch
- update from rpm-4_4_9 branch
[packages/rpm.git] / rpm-debuginfo.patch
index 2d497e1e4451ba32b08dce863646ec2eb839eb73..8ebb50a5a968b84787585aae108b8a646a23bf6f 100644 (file)
@@ -1,15 +1,15 @@
-diff -urN rpm-4.3.org/macros.in rpm-4.3/macros.in
---- rpm-4.3.org/macros.in      2004-05-20 22:09:48.582353920 +0200
-+++ rpm-4.3/macros.in  2004-05-20 22:40:19.156064416 +0200
-@@ -118,15 +118,20 @@
+--- rpm-4.4.9.orig/macros.in   2008-01-31 19:20:08.798315963 +0200
++++ rpm-4.4.9/macros.in        2008-01-31 19:20:50.850567944 +0200
+@@ -188,15 +188,21 @@
  %debug_package \
  %ifnarch noarch\
  %global __debug_package 1\
 -%package debug\
 +%package debuginfo\
  Summary: Debug information for package %{name}\
-+Summary(pl): Informacje dla debuggera dla pakietu %{name}\
++Summary(pl.UTF-8): Informacje dla debuggera dla pakietu %{name}\
  Group: Development/Debug\
++Requires: filesystem-debuginfo >= 3.0-16\
  AutoReqProv: 0\
 -%description debug\
 +%description debuginfo\
@@ -17,55 +17,136 @@ diff -urN rpm-4.3.org/macros.in rpm-4.3/macros.in
  Debug information is useful when developing applications that use this\
  package or when debugging this package.\
 -%files debug -f debugfiles.list\
-+%description debuginfo -l pl\
++%description debuginfo -l pl.UTF-8\
 +Ten pakiet dostarcza informacje dla debuggera dla pakietu %{name}.\
-+Informacje te s± przydatne przy rozwijaniu aplikacji u¿ywaj±cych tego\
++Informacje te są przydatne przy rozwijaniu aplikacji używających tego\
 +pakietu oraz przy odpluskwianiu samego pakietu.\
 +%files debuginfo -f debugfiles.list\
  %defattr(-,root,root)\
  %endif\
  %{nil}
-@@ -1247,7 +1252,12 @@
- unset DISPLAY ||:\
+@@ -1046,7 +1052,7 @@
+ %{?buildroot:%{__rm} -rf '%{buildroot}'}
+ %__spec_install_body  %{___build_body}
+ %__spec_install_post\
+-%{?__debug_package:%{__debug_install_post}}\
++%{expand:%%define __sip_%{?_enable_debug_packages} 1}%{?__sip_1:%{?__debug_package:%{__debug_install_post}}}%{expand:%%undefine __sip_%{?_enable_debug_packages}}\
+ %{__arch_install_post}\
+ %{__os_install_post}\
  %{nil}
+--- rpm-4.4.9.orig/platform.in 2008-01-31 19:20:08.676303626 +0200
++++ rpm-4.4.9/platform.in      2008-01-31 19:20:50.844567337 +0200
+@@ -61,7 +61,7 @@
+ %{nil}
+ %__spec_install_post\
+-    %{?__debug_package:%{__debug_install_post}}\
++    %{expand:%%define __sip_%{?_enable_debug_packages} 1}%{?__sip_1:%{?__debug_package:%{__debug_install_post}}}%{expand:%%undefine __sip_%{?_enable_debug_packages}}\
+     %{__arch_install_post}\
+     %{__os_install_post}\
+ %{nil}
+--- rpm-4.5.debuginfo/scripts/find-debuginfo.sh        2007-08-31 04:07:02.000000000 +0300
++++ rpm-4.5/scripts/find-debuginfo.sh  2008-10-05 00:49:03.834523059 +0300
+@@ -1,36 +1,54 @@
+ #!/bin/sh
+-#find-debuginfo.sh - automagically generate debug info and file list
+-#for inclusion in an rpm spec file.
++# find-debuginfo.sh - automagically generate debug info and file list
++# for inclusion in an rpm spec file.
+-if [ -z "$1" ] ; then BUILDDIR="."
+-else BUILDDIR=$1
++if [ -z "$1" ]; then
++      BUILDDIR="."
++else
++      BUILDDIR=$1
+ fi
+ LISTFILE=$BUILDDIR/debugfiles.list
+ SOURCEFILE=$BUILDDIR/debugsources.list
+-debugdir="${RPM_BUILD_ROOT}/usr/lib/debug"
+-
+-echo -n > $SOURCEFILE
++: > $SOURCEFILE
++: > $LISTFILE
  
--%install %{?_enable_debug_packages:%{?buildsubdir:%{debug_package}}}\
-+%install \
-+%if %{?_enable_debug_packages:1}%{!?_enable_debug_packages:0}\
-+%if %{_enable_debug_packages}\
-+%{?buildsubdir:%{debug_package}}\
-+%endif\
-+%endif\
- %%install\
- LANG=C\
- export LANG\
-@@ -1404,7 +1414,7 @@
-     %{?verbose:set -x;} \
-     if [ -d "$RPM_BUILD_ROOT" ]; then \
-       echo "Strip executable binaries, archives and shared object files."; \
--      filelist=`find $RPM_BUILD_ROOT -type f ! -regex ".*ld-[0-9.]*so.*" %{?_noautostrip:! -regex "%{_noautostrip}"}`; \
-+      filelist=`find $RPM_BUILD_ROOT -type f ! -regex ".*ld-[0-9.]*so.*" ! -regex ".*/usr/lib[0-9]*/debug/.*\.debug" %{?_noautostrip:! -regex "%{_noautostrip}"}`; \
-       elfexelist=`echo $filelist | xargs -r file | \
-               awk '/ELF.*executable/ {print $1}' | cut -d: -f1`; \
-       elfsharedlist=`echo $filelist | xargs -r file | \
-diff -urN rpm-4.3.org/scripts/find-debuginfo.sh rpm-4.3/scripts/find-debuginfo.sh
---- rpm-4.3.org/scripts/find-debuginfo.sh      2004-05-20 22:09:25.767822256 +0200
-+++ rpm-4.3/scripts/find-debuginfo.sh  2004-05-20 23:12:43.367499352 +0200
-@@ -26,12 +26,14 @@
+ strip_to_debug()
+ {
+-  eu-strip --remove-comment -f "$1" "$2" || :
++  objcopy --only-keep-debug --remove-section .comment "$2" "$1"
++  objcopy --add-gnu-debuglink="$1" "$2"
+ }
++if [ ! -d $RPM_BUILD_ROOT ]; then
++      # no buildroot, exit
++      exit 0
++fi
++
++filelist=$(find $RPM_BUILD_ROOT ! -path "$RPM_BUILD_ROOT/usr/lib/debug/*.debug" -type f '(' -perm -0100 -or -perm -0010 -or -perm -0001 ')')
++if [ -z "$filelist" ]; then
++      # no files, exit
++      exit 0
++fi
++
++filetypes=$(echo "$filelist" | xargs -r -d'\n' file)
++elflist=$(echo "$filetypes" | awk -F: '/ELF.*, not stripped/ {print $1}')
++if [ -z "$elflist" ]; then
++      # no elf objects, exit
++      exit 0
++fi
++
+ # Strip ELF binaries
+-for f in `find $RPM_BUILD_ROOT ! -path "${debugdir}/*.debug" -type f \( -perm -0100 -or -perm -0010 -or -perm -0001 \) -exec file {} \; | \
+-      sed -n -e 's/^\(.*\):[  ]*.*ELF.*, not stripped/\1/p'`
+-do
+-      dn=$(dirname $f | sed -n -e "s#^$RPM_BUILD_ROOT##p")
+-      bn=$(basename $f .debug).debug
+-
+-      debugdn="${debugdir}${dn}"
+-      debugfn="${debugdn}/${bn}"
+-      [ -f "${debugfn}" ] && continue
++echo "$elflist" | while read f; do
++      dn=$(dirname "${f#$RPM_BUILD_ROOT}")
++      bn=$(basename "$f" .debug).debug
++
++      debugdn="$RPM_BUILD_ROOT/usr/lib/debug$dn"
++      debugfn="$debugdn/$bn"
++      [ -f "$debugfn" ] && continue
  
-       mkdir -p "${debugdn}"
        echo extracting debug info from $f
--      /usr/lib/rpm/debugedit -b "$RPM_BUILD_DIR" -d /usr/src/debug -l "$SOURCEFILE" "$f"
-+      /usr/bin/debugedit -b "$RPM_BUILD_DIR" -d /usr/src/debug -l "$SOURCEFILE" "$f"
+-      /usr/lib/rpm/4.5/debugedit -b "$RPM_BUILD_DIR" -d /usr/src/debug -l "$SOURCEFILE" "$f"
++      /usr/lib/rpm/debugedit -b "$RPM_BUILD_DIR" -d /usr/src/debug -l "$SOURCEFILE" "$f"
+       # A binary already copied into /usr/lib/debug doesn't get stripped,
+       # just has its file names collected and adjusted.
+@@ -38,20 +56,21 @@
+       /usr/lib/debug/*) continue ;;
+       esac
+-      mkdir -p "${debugdn}"
++      mkdir -p "$debugdn"
        if test -w "$f"; then
--              eu-strip -f "${debugfn}" "$f" || :
-+              eu-strip -f "${debugfn}" -o "$f.tmp" "$f" || :
-+              rm -f "$f.tmp"
+-              strip_to_debug "${debugfn}" "$f"
++              strip_to_debug "$debugfn" "$f"
        else
                chmod u+w "$f"
--              eu-strip -f "${debugfn}" "$f" || :
-+              eu-strip -f "${debugfn}" -o "$f.tmp" "$f" || :
-+              rm -f "$f.tmp"
+-              strip_to_debug "${debugfn}" "$f"
++              strip_to_debug "$debugfn" "$f"
                chmod u-w "$f"
        fi
  done
+-mkdir -p ${RPM_BUILD_ROOT}/usr/src/debug
+-cat $SOURCEFILE | (cd $RPM_BUILD_DIR; LANG=C sort -z -u | cpio -pd0mL ${RPM_BUILD_ROOT}/usr/src/debug)
++mkdir -p $RPM_BUILD_ROOT/usr/src/debug
++cat $SOURCEFILE | (cd $RPM_BUILD_DIR; LANG=C sort -z -u | fgrep -zv '<built-in>' | cpio --quiet -pd0mL $RPM_BUILD_ROOT/usr/src/debug)
+ # stupid cpio creates new directories in mode 0700, fixup
+-find ${RPM_BUILD_ROOT}/usr/src/debug -type d -print0 | xargs -0 chmod a+rx
++find $RPM_BUILD_ROOT/usr/src/debug -type d -print0 | xargs -0 chmod a+rx
+-find ${RPM_BUILD_ROOT}/usr/lib/debug -type f | sed -n -e "s#^$RPM_BUILD_ROOT##p" > $LISTFILE
+-find ${RPM_BUILD_ROOT}/usr/src/debug -mindepth 1 -maxdepth 1 | sed -n -e "s#^$RPM_BUILD_ROOT##p" >> $LISTFILE
++find $RPM_BUILD_ROOT/usr/lib/debug -type f | sed -n -e "s#^$RPM_BUILD_ROOT##p" > $LISTFILE
++find $RPM_BUILD_ROOT/usr/lib/debug -mindepth 1 -type d | sed -n -e "s#^$RPM_BUILD_ROOT#%dir #p" >> $LISTFILE
++find $RPM_BUILD_ROOT/usr/src/debug -mindepth 1 -maxdepth 1 | sed -n -e "s#^$RPM_BUILD_ROOT##p" >> $LISTFILE
This page took 0.039578 seconds and 4 git commands to generate.