packages: nacl-toolchain-newlib/nacl-toolchain-newlib.spec - disable .a str...

glen glen at pld-linux.org
Tue Nov 15 12:18:06 CET 2011


Author: glen                         Date: Tue Nov 15 11:18:05 2011 GMT
Module: packages                      Tag: HEAD
---- Log message:
- disable .a stripping

---- Files affected:
packages/nacl-toolchain-newlib:
   nacl-toolchain-newlib.spec (1.1 -> 1.2) 

---- Diffs:

================================================================
Index: packages/nacl-toolchain-newlib/nacl-toolchain-newlib.spec
diff -u packages/nacl-toolchain-newlib/nacl-toolchain-newlib.spec:1.1 packages/nacl-toolchain-newlib/nacl-toolchain-newlib.spec:1.2
--- packages/nacl-toolchain-newlib/nacl-toolchain-newlib.spec:1.1	Tue Nov 15 08:39:54 2011
+++ packages/nacl-toolchain-newlib/nacl-toolchain-newlib.spec	Tue Nov 15 12:18:00 2011
@@ -4,9 +4,11 @@
 #   rev 6757 matches pepper_15, r1239
 #   rev 6941 matches pepper_16, r1344
 # - libdir mixed up for 32/64 bit. do we care? upstream confused about it too
+#   https://code.google.com/p/nativeclient/issues/detail?id=1975
 # - /bin/sh in some wrappers:
 #   cat i686-nacl-as
 #   #!/bin/bash
+# - messed up install dirs (two gcc dirs)
 #%define		nacl_revision	6757
 #%define		nacl_revision	6869
 %define		nacl_revision	6941
@@ -16,9 +18,9 @@
 Summary:	Native Client newlib-based toolchain (only for compiling IRT)
 Name:		nacl-toolchain-newlib
 Version:	0.%{nacl_revision}
-Release:	0.3
+Release:	0.5
 License:	BSD (NaCL), GPL v3/LGPL v3 (binutils), GPL v3+ (gcc), GPL v2(newlib)
-Group:		Applications
+Group:		Development/Languages
 Source0:	http://gsdview.appspot.com/nativeclient-archive2/x86_toolchain/r%{nacl_revision}/nacltoolchain-buildscripts-r%{nacl_revision}.tar.gz
 # Source0-md5:	884acc20fb43fd6f399e4bb693bf5750
 Source1:	ftp://sources.redhat.com/pub/newlib/newlib-%{newlib_ver}.tar.gz
@@ -58,15 +60,21 @@
 BuildRoot:	%{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
 %define		target		x86_64-nacl
+%define		target32	i686-nacl
 %define		arch		%{_prefix}/%{target}-newlib
 %define		_datadir	%{arch}/share
-%define		_mandir		%{_datadir}/man
+%define		_mandir		%{arch}/man
 %define		_infodir	%{_datadir}/info
 %define		_includedir	%{arch}/%{target}/include
+%define		_libdir		%{arch}/%{target}/lib
 %define		_libexecdir	%{arch}/libexec
 
-%define     gccarch     %{_libexecdir}/gcc/%{target}
-%define     gcclib      %{gccarch}/%{gcc_ver}
+%define     gccarch		%{_libexecdir}/gcc/%{target}
+%define     gcclib		%{gccarch}/%{gcc_ver}
+%define     gcclib2		%{arch}/lib/gcc/%{target}/%{gcc_ver}
+
+%define		_noautostrip	.*%{arch}/.*\.a
+%define		_noautochrpath	.*%{arch}/.*\.a
 
 %description
 Native Client newlib-based toolchain (only for compiling IRT).
@@ -93,6 +101,36 @@
 install -d $RPM_BUILD_ROOT%{arch}
 cp -a out/* $RPM_BUILD_ROOT%{arch}
 
+## gcc
+# move fixed includes to proper place
+cp -p $RPM_BUILD_ROOT%{gcclib2}/include-fixed/*.h $RPM_BUILD_ROOT%{gcclib2}/include
+
+# don't want it here
+%{__rm} $RPM_BUILD_ROOT%{_libdir}/libiberty.a
+%{__rm} $RPM_BUILD_ROOT%{_libdir}32/libiberty.a
+%{__rm} -r $RPM_BUILD_ROOT%{_infodir}
+%{__rm} $RPM_BUILD_ROOT%{_mandir}/man7/fsf-funding.7
+%{__rm} $RPM_BUILD_ROOT%{_mandir}/man7/gfdl.7
+%{__rm} $RPM_BUILD_ROOT%{_mandir}/man7/gpl.7
+%{__rm} $RPM_BUILD_ROOT%{_datadir}/locale/*/LC_MESSAGES/{gcc,cpplib}.mo
+%{__rm} -r $RPM_BUILD_ROOT%{gcclib2}/include-fixed
+%{__rm} -r $RPM_BUILD_ROOT%{gcclib2}/install-tools
+
+%if 0%{!?debug:1} && 0
+# strip target libraries
+export PATH=$PATH:$(pwd)/out/bin
+
+# strip target libraries
+%{target}-strip --strip-debug --remove-section=.note --remove-section=.comment \
+	$RPM_BUILD_ROOT%dir %{arch}/%{target}/lib/*.a \
+	$RPM_BUILD_ROOT%{arch}/%{target}/lib/*.a
+
+%{target32}-strip --strip-debug --remove-section=.note --remove-section=.comment \
+	$RPM_BUILD_ROOT%dir %{arch}/%{target}/lib/32/*.a \
+	$RPM_BUILD_ROOT%{arch}/%{target}/lib32/*.a
+%endif
+
+# general cleanup
 %{__rm} $RPM_BUILD_ROOT%{arch}/COPYING*
 rm -f $RPM_BUILD_ROOT%{_infodir}/dir
 
@@ -104,6 +142,7 @@
 rm -rf $RPM_BUILD_ROOT%{_infodir}
 rm -rf $RPM_BUILD_ROOT%{arch}/info
 rm -rf $RPM_BUILD_ROOT%{arch}/man
+rm -rf $RPM_BUILD_ROOT%{arch}/share/man
 
 %clean
 rm -rf $RPM_BUILD_ROOT
@@ -114,7 +153,8 @@
 
 # binutils
 %dir %{arch}/bin
-%attr(755,root,root) %{arch}/bin/*
+%attr(755,root,root) %{arch}/bin/%{target}-*
+%attr(755,root,root) %{arch}/bin/%{target32}-*
 
 # libc
 %dir %{_datadir}
@@ -123,8 +163,8 @@
 # gcc
 %dir %{arch}/lib
 %dir %{arch}/lib/gcc
-%dir %{arch}/lib/gcc/x86_64-nacl
-%{arch}/lib/gcc/x86_64-nacl/%{gcc_ver}
+%dir %{arch}/lib/gcc/%{target}
+%{arch}/lib/gcc/%{target}/%{gcc_ver}
 
 %dir %{_libexecdir}
 %dir %{_libexecdir}/gcc
@@ -175,7 +215,7 @@
 %{arch}/%{target}/lib/libc.a
 %{arch}/%{target}/lib/libcrt_common.a
 %{arch}/%{target}/lib/libg.a
-%{arch}/%{target}/lib/libiberty.a
+#%{arch}/%{target}/lib/libiberty.a
 %{arch}/%{target}/lib/libm.a
 %{arch}/%{target}/lib/libobjc.a
 %{arch}/%{target}/lib/libstdc++.a
@@ -186,7 +226,7 @@
 %{arch}/%{target}/lib32/libc.a
 %{arch}/%{target}/lib32/libcrt_common.a
 %{arch}/%{target}/lib32/libg.a
-%{arch}/%{target}/lib32/libiberty.a
+#%{arch}/%{target}/lib32/libiberty.a
 %{arch}/%{target}/lib32/libm.a
 %{arch}/%{target}/lib32/libobjc.a
 %{arch}/%{target}/lib32/libstdc++.a
@@ -199,5 +239,8 @@
 All persons listed below can be reached at <cvs_login>@pld-linux.org
 
 $Log$
+Revision 1.2  2011/11/15 11:18:00  glen
+- disable .a stripping
+
 Revision 1.1  2011/11/15 07:39:54  glen
 - new, parts from gentoo ebuild
================================================================

---- CVS-web:
    http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/packages/nacl-toolchain-newlib/nacl-toolchain-newlib.spec?r1=1.1&r2=1.2&f=u



More information about the pld-cvs-commit mailing list