Skip to content
Snippets Groups Projects
  1. Dec 27, 2014
    • nbd's avatar
      build: use gcc-provided ar, nm and ranlib where appropriate · c1c3c7f8
      nbd authored
      
      Since GCC 4.7, GCC provides its own wrappers around ar, nm and ranlib, which
      should be used for builds with link-time optimization. Since GCC 4.9, using them
      actually necessary for LTO builds using convenience libraries to succeed.
      
      There are some packages which try to automatically detect if gcc-{ar,nm,ranlib}
      exist (one example is my package "fastd" in the package repository, which tries
      to use LTO). This breaks because the OpenWrt build system explicitly sets the
      binutils versions of these tools.
      
      As it doesn't cause any issues to use gcc-{ar,nm,ranlib} instead of
      {ar,nm,ranlib} even without LTO, this patch just makes OpenWrt use the
      GCC-provided versions by default, which fixes the build of such packages with
      GCC 4.9.
      
      (I know that builds fail though when clang is used with -flto and
      gcc-{ar,nm,ranlib}, but as all OpenWrt toolchains are based on GCC, this isn't
      a real issue.)
      
      Completely cleaning the tree (or at least `make clean toolchain/clean`) is
      necessary to get a consistent state after the binutils plugins support patch and
      this one (as trying to use gcc-{ar,nm,ranlib} with a binutils built without
      plugin support will definitely lead to a build failure).
      
      Signed-off-by: default avatarMatthias Schiffer <mschiffer@universe-factory.net>
      
      git-svn-id: svn://svn.openwrt.org/openwrt/trunk@43784 3c298f89-4303-0410-b956-a3cf2f4a3e73
      c1c3c7f8
  2. Oct 22, 2014
  3. Oct 20, 2014
  4. Aug 26, 2014
  5. Mar 22, 2014
  6. Mar 21, 2014
  7. Mar 10, 2014
  8. Nov 29, 2013
  9. Nov 22, 2013
  10. Sep 26, 2013
  11. Aug 14, 2013
  12. Jul 29, 2013
  13. Jul 18, 2013
  14. Jul 10, 2013
  15. May 09, 2013
  16. May 06, 2013
  17. Apr 05, 2013
  18. Mar 22, 2013
  19. Feb 20, 2013
  20. Jan 13, 2013
  21. Dec 02, 2012
  22. Nov 23, 2012
  23. Nov 22, 2012
  24. Oct 06, 2012
  25. Sep 22, 2012
  26. Sep 09, 2012
  27. Aug 10, 2012
  28. Jul 28, 2012
  29. Jun 20, 2012
  30. Jun 08, 2012
Loading