Skip to content
Snippets Groups Projects
  1. Jan 20, 2016
  2. Jan 03, 2016
  3. Nov 10, 2015
  4. Nov 07, 2015
  5. Oct 30, 2015
    • Felix Fietkau's avatar
      build: Allow kernel modules to set build ID debug symbol · 3bbb9277
      Felix Fietkau authored
      
      This change adds support for specifying a build ID for kernel modules.
      This is done by setting PKG_BUILD_ID to a hexadecimal string, which will
      then be passed to the kernel linker. In addition, when this flag is set,
      the build ID debug symbol (.note.gnu.build-id) will not be stripped from
      the kernel module. This symbol is exported in sysfs by the kernel (if
      the kernel is compiled with CONFIG_KALLSYMS) and so can be used to
      uniquely identify a version of a kernel module in a running kernel. This
      is useful for keeping track of different versions of a module when doing
      experiments and development.
      
      Modules that specify the build ID will be ~100 bytes larger (depending
      on the length of the build ID specified). There is no size difference
      for kernel modules that do not set this variable.
      
      Signed-off-by: default avatarToke Høiland-Jørgensen <toke@toke.dk>
      
      SVN-Revision: 47290
      3bbb9277
  6. Aug 25, 2015
  7. Jun 29, 2015
  8. Jun 23, 2015
  9. Jun 15, 2015
  10. Apr 06, 2015
  11. Mar 15, 2015
  12. Feb 10, 2015
  13. Feb 06, 2015
  14. Feb 05, 2015
  15. Jan 10, 2015
  16. Dec 27, 2014
    • Felix Fietkau's avatar
      build: use gcc-provided ar, nm and ranlib where appropriate · 9a467998
      Felix Fietkau 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>
      
      SVN-Revision: 43784
      9a467998
  17. Oct 22, 2014
  18. Oct 20, 2014
  19. Aug 26, 2014
  20. Mar 22, 2014
  21. Mar 21, 2014
  22. Mar 10, 2014
  23. Nov 29, 2013
  24. Nov 22, 2013
  25. Sep 26, 2013
  26. Aug 14, 2013
  27. Jul 29, 2013
  28. Jul 18, 2013
  29. Jul 10, 2013
  30. May 09, 2013
  31. May 06, 2013
  32. Apr 05, 2013
Loading