From e0901b3e480803837880db7e51ad6a10131eed46 Mon Sep 17 00:00:00 2001 From: Bruce Dubbs Date: Mon, 15 Oct 2012 19:27:20 +0000 Subject: [PATCH] Add notes to the gcc and binutils sections in Chapter 6 about "link time optimization" and the extra files built by gcc. git-svn-id: http://svn.linuxfromscratch.org/LFS/trunk/BOOK@10024 4aa44e1e-78dd-0310-a6d2-fbcd4c07a689 --- chapter01/changelog.xml | 6 +++++ chapter06/binutils.xml | 7 ++++++ chapter06/gcc.xml | 54 ++++++++++++++++++++++++++++++++++++++++- 3 files changed, 66 insertions(+), 1 deletion(-) diff --git a/chapter01/changelog.xml b/chapter01/changelog.xml index de556e53d..074394e8f 100644 --- a/chapter01/changelog.xml +++ b/chapter01/changelog.xml @@ -39,6 +39,12 @@ 2012-10-15 + + [bdubbs] - Add notes to the gcc and binutils + sections in Chapter 6 about "link time optimization" + and the extra files built by gcc. Fixes + #3200. + [bdubbs] - Upgrade to tzdata-2012f. Fixes #3205. diff --git a/chapter06/binutils.xml b/chapter06/binutils.xml index 28144969d..b3f5d7675 100644 --- a/chapter06/binutils.xml +++ b/chapter06/binutils.xml @@ -78,6 +78,13 @@ cd ../binutils-build ../binutils-&binutils-version;/configure --prefix=/usr --enable-shared + There is an optional argument to configure, + , that can be used to allow the + ar, nm, and ranlib + commands to accept a parameter. This is used to + allow gcc to do "link time optimization" if specified. + No packages in LFS or BLFS currently use this capability. + Compile the package: make tooldir=/usr diff --git a/chapter06/gcc.xml b/chapter06/gcc.xml index 54cdad060..e6909b7df 100644 --- a/chapter06/gcc.xml +++ b/chapter06/gcc.xml @@ -96,6 +96,16 @@ cd ../gcc-build + + There is an optional argument to configure, + , that can be used to allow + gcc to do do "link time optimization" if specified. No + packages in LFS or BLFS currently use this capability. + + To use this feature, it must also be enabled in + binutils. + + Compile the package: make @@ -301,11 +311,14 @@ mv -v /usr/lib/*gdb.py /usr/share/gdb/auto-load/usr/lib Installed directories - c++, cc (link to gcc), cpp, g++, gcc, gccbug, and gcov + c++, cc (link to gcc), cpp, g++, gcc, + gcc-ar, gcc-nm, gcc-ranlib, gccbug, and gcov + libgcc.a, libgcc_eh.a, libgcc_s.so, libgcov.a, libgomp.{a,so}, liblto_plugin.so, libmudflap.{a,so}, libmudflapth.{a,so}, libquadmath.{a,so}, libssp.{a,so}, libssp_nonshared.a, libstdc++.{a,so} and libsupc++.a + /usr/include/c++, /usr/lib/gcc, /usr/share/gcc-&gcc-version; @@ -366,6 +379,45 @@ mv -v /usr/lib/*gdb.py /usr/share/gdb/auto-load/usr/lib + + gcc-ar + + A wrapper around ar that adds a + plugin to the command line. This program is only used + to add "link time optization" and is not useful with the + default build options. + + gc-ar + + + + + + gcc-nm + + A wrapper around nm that adds a + plugin to the command line. This program is only used + to add "link time optization" and is not useful with the + default build options. + + gc-nm + + + + + + gcc-ranlib + + A wrapper around ranlib that adds a + plugin to the command line. This program is only used + to add "link time optization" and is not useful with the + default build options. + + gc-ranlib + + + + gccbug