]> git.pld-linux.org Git - packages/gcc.git/commitdiff
- sparc64->sparc hardlinks only if built with multilib
authorJakub Bogusz <qboosh@pld-linux.org>
Sat, 30 Dec 2006 23:59:20 +0000 (23:59 +0000)
committercvs2git <feedback@pld-linux.org>
Sun, 24 Jun 2012 12:13:13 +0000 (12:13 +0000)
- handle different c++config.h files if c++ is built with multilib

Changed files:
    gcc.spec -> 1.444

gcc.spec

index 7c41fc2dfcca4509ae3b7b5348484b7f035be9b2..cf455110081a00213873205e28784a67b5a1bc70 100644 (file)
--- a/gcc.spec
+++ b/gcc.spec
@@ -920,6 +920,8 @@ cd builddir
 
 install gcc/specs $RPM_BUILD_ROOT%{_libdir}/gcc/%{_target_platform}/%{version}
 
+%if %{with multilib}
+# create links
 %ifarch sparc64
 ln -f $RPM_BUILD_ROOT%{_bindir}/sparc64-pld-linux-gcc \
        $RPM_BUILD_ROOT%{_bindir}/sparc-pld-linux-gcc
@@ -937,6 +939,26 @@ ln -f $RPM_BUILD_ROOT%{_bindir}/sparc64-pld-linux-gcj \
 %endif
 %endif
 
+# this file differ (at least sparc/sparc64)
+%if %{with cxx}
+spath=builddir/%{_target_platform}
+sfile=libstdc++-v3/include/%{_target_platform}/bits/c++config.h
+dpath=$RPM_BUILD_ROOT%{_includedir}/c++/%{version}/%{_target_platform}/bits
+if ! cmp $spath/$sfile $spath/32/$sfile > /dev/null ; then
+       cp -f $spath/$sfile $dpath/c++config64.h
+       cp -f $spath/32/$sfile $dpath/c++config32.h
+       cat > $dpath/c++config.h <<EOF
+#include <bits/wordsize.h>
+#if __WORDSIZE == 32
+#include <bits/c++config32.h>
+#else
+#include <bits/c++config64.h>
+#endif
+EOF
+fi
+%endif
+%endif
+
 ln -sf %{_bindir}/cpp $RPM_BUILD_ROOT/lib/cpp
 ln -sf gcc $RPM_BUILD_ROOT%{_bindir}/cc
 echo ".so gcc.1" > $RPM_BUILD_ROOT%{_mandir}/man1/cc.1
This page took 0.05339 seconds and 4 git commands to generate.