Author: qboosh Date: Sun Jan 6 14:14:32 2008 GMT
Module: SOURCES Tag: HEAD
---- Log message:
- introduced _autostrip* as a general solution to adjust stripping options
without affecting *-debuginfo packages
---- Files affected:
SOURCES:
rpm.macros (1.410 -> 1.411)
---- Diffs:
================================================================
Index: SOURCES/rpm.macros
diff -u SOURCES/rpm.macros:1.410 SOURCES/rpm.macros:1.411
--- SOURCES/rpm.macros:1.410 Thu Jan 3 19:24:57 2008
+++ SOURCES/rpm.macros Sun Jan 6 15:14:27 2008
@@ -387,31 +387,50 @@
echo "DONE"; \
fi; \
fi; \
- filelist=`find $RPM_BUILD_ROOT -type f ! -regex ".*ld-[0-9.]*so.*" !
-regex ".*libpthread-[0-9.]*so.*" ! -regex ".*/usr/lib[0-9]*/debug/.*\.debug" !
-regex ".*%{_docdir}/.*" ! -regex ".*%{_includedir}/.*" %{?_noautostrip:!
-regex "%{_noautostrip}"}`; \
- # vim - " \
- if [ -z "$filelist" ]; then \
- return; \
+ filelist=`find $RPM_BUILD_ROOT -type f ! -regex
".*/usr/lib[0-9]*/debug/.*\.debug" ! -regex ".*%{_docdir}/.*" ! -regex
".*%{_includedir}/.*" %{?_noautostrip:! -regex "%{_noautostrip}"}
%{?_autostripall:! -regex "%{_autostripall}"} %{?_autostripunneeded:! -regex
"%{_autostripunneeded}"} %{?_autostripdebug:! -regex "%{_autostripdebug}"}`; \
+ if [ -n "$filelist" ]; then \
+ filetypes=`echo "$filelist" | xargs -r -d'\\n' file`; \
+ elfexelist=`echo "$filetypes" | awk -F: '/ELF.*executable/
{print $1}'`; \
+ elfsharedlist=`echo "$filetypes" | awk -F: '/LF.*shared object/
{print $1}'`; \
+ archiveslist=`echo "$filetypes" | awk -F '/current ar archive/
{print $1}'`; \
+ if [ -n "$elfexelist" ]; then \
+ printf "Stripping %d ELF executables..." $(echo
"$elfexelist" | wc -l); \
+ chmod u+w $elfexelist; \
+ %{__strip} --remove-section=.note
--remove-section=.comment $elfexelist; \
+ echo "DONE"; \
+ fi; \
+ if [ -n "$elfsharedlist" ]; then \
+ printf "Stripping %d ELF shared libraries..." $(echo
"$elfsharedlist" | wc -l); \
+ chmod u+w $elfsharedlist; \
+ %{__strip} --strip-unneeded --remove-section=.note
--remove-section=.comment $elfsharedlist; \
+ echo "DONE"; \
+ fi; \
+ if [ -n "$archiveslist" ]; then \
+ printf "Stripping %d ar archives..." $(echo
"$elfsharedlist" | wc -l); \
+ chmod u+w $archiveslist; \
+ %{__strip} --strip-debug --remove-section=.note
--remove-section=.comment $archiveslist; \
+ echo "DONE"; \
+ fi; \
fi; \
- filetypes=`echo "$filelist" | xargs -r -d'\\n' file`; \
- elfexelist=`echo "$filetypes" | awk -F: '/ELF.*executable/ {print
$1}'`; \
- elfsharedlist=`echo "$filetypes" | awk -F: '/LF.*shared object/ {print
$1}'`; \
- archiveslist=`echo "$filetypes" | awk -F '/current ar archive/ {print
$1}'`; \
- if [ -n "$elfexelist" ]; then \
- printf "Stripping %d ELF executables..." $(echo "$elfexelist" |
wc -l); \
+ filelist_all=%{?_autostripall:`find $RPM_BUILD_ROOT -type f -regex
"%{_autostripall}"} \
+ filelist_unneeded=%{?_autostripunneeded:`find $RPM_BUILD_ROOT -type f
-regex "%{_autostripunneeded}"} \
+ filelist_debug=%{?_autostripdebug:`find $RPM_BUILD_ROOT -type f -regex
"%{_autostripdebug}"} \
+ if [ -n "$filelist_all" ]; then \
+ printf "Stripping everything from %d additional files..."
$(echo "$filelist_all" | wc -l); \
chmod u+w $elfexelist; \
- %{__strip} --remove-section=.note --remove-section=.comment
$elfexelist; \
+ %{__strip} --remove-section=.note --remove-section=.comment
$filelist_all; \
echo "DONE"; \
fi; \
- if [ -n "$elfsharedlist" ]; then \
- printf "Stripping %d ELF shared libraries..." $(echo
"$elfsharedlist" | wc -l); \
+ if [ -n "$filelist_unneeded" ]; then \
+ printf "Stripping unneeded from %d additional files..." $(echo
"$filelist_unneeded" | wc -l); \
chmod u+w $elfsharedlist; \
- %{__strip} --strip-unneeded --remove-section=.note
--remove-section=.comment $elfsharedlist; \
+ %{__strip} --strip-unneeded --remove-section=.note
--remove-section=.comment $filelist_unneeded; \
echo "DONE"; \
fi; \
- if [ -n "$archiveslist" ]; then \
- printf "Stripping %d ar archives..." $(echo "$elfsharedlist" |
wc -l); \
+ if [ -n "$filelist_debug" ]; then \
+ printf "Stripping debuginfo from %d additional files..." $(echo
"$filelist_debug" | wc -l); \
chmod u+w $archiveslist; \
- %{__strip} --strip-debug --remove-section=.note
--remove-section=.comment $archiveslist; \
+ %{__strip} --strip-debug --remove-section=.note
--remove-section=.comment $filelist_debug; \
echo "DONE"; \
fi; \
fi; }; __spec_install_post_strip } } }
================================================================
---- CVS-web:
http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/SOURCES/rpm.macros?r1=1.410&r2=1.411&f=u
_______________________________________________
pld-cvs-commit mailing list
[email protected]
http://lists.pld-linux.org/mailman/listinfo/pld-cvs-commit