Skip to content
Snippets Groups Projects
  1. Feb 11, 2017
  2. Feb 06, 2017
  3. Jan 26, 2017
  4. Dec 16, 2016
  5. Sep 28, 2016
    • Florian Fainelli's avatar
      toolchain: Rework external toolchain libc selection · c8e68150
      Florian Fainelli authored
      
      Make it a choice menu which offers the 3 C libraries we know about: glibc,
      uClibc and musl. While at it, make it possible for the external toolchain libc
      to select USE_GLIBC, USE_UCLIBC or USE_MUSL which is used by several packages
      to conditionally include specific CFLAGS (e.g: iproute2).
      
      Because USE_GLIBC et al. can now be selected by external toolchains, we need to
      restrict the per-libc menus to check on !EXTERNAL_TOOLCHAIN.
      
      While at it, make musl the default C library for external toolchain to match
      the internal toolchain.
      
      Signed-off-by: default avatarFlorian Fainelli <f.fainelli@gmail.com>
      Signed-off-by: default avatarFelix Fietkau <nbd@nbd.name>
      c8e68150
  6. Sep 26, 2016
  7. Aug 14, 2016
  8. Jul 07, 2016
  9. May 27, 2016
  10. Apr 17, 2016
    • Hauke Mehrtens's avatar
      toolchain/uClibc: enable UCLIBC_HAS_OBSOLETE_BSD_SIGNAL · 336ad4c9
      Hauke Mehrtens authored
      This is required to build net-snmp.
      
      If that options is disabled in uClibc then net-snmp doesn't
      detect sighold support on its configuration stage and so
      defines HAVE_SIGHOLD as 0. That in its turn causes compilation of
      the following branch of timerPause() in apps/snmpnetstat:
      ------------------>8----------------
          int             oldmask;
          oldmask = sigblock(sigmask(SIGALRM));
          if (!signalled) {
              sigpause(0);
          }
          sigsetmask(oldmask);
      ------------------>8----------------
      
      Now in uClibc all 3 sigblock(), sigmask() and sigsetmask()
      were removed back in 2005, see:
      https://git.busybox.net/uClibc/commit/?id=5aa7aa7fa7ec2a0fe567ac0b2595b46add6f3594
      
      
      
      And all that causes net-snmp linkage to fail this way:
      ------------------>8----------------
      .libs/if.o: In function `intpr':
      if.c:(.text+0x908): undefined reference to `sigmask'
      if.c:(.text+0x90e): undefined reference to `sigblock'
      if.c:(.text+0x924): undefined reference to `sigsetmask'
      ------------------>8----------------
      
      If we enable UCLIBC_HAS_OBSOLETE_BSD_SIGNAL in uClibc then
      branch with sighold is used in timerPause() and everything builds as
      expected.
      
      Signed-off-by: default avatarAlexey Brodkin <abrodkin@synopsys.com>
      Signed-off-by: default avatarHauke Mehrtens <hauke@hauke-m.de>
      
      SVN-Revision: 49178
      336ad4c9
  11. Feb 18, 2016
    • John Crispin's avatar
      toolchain: add support of ARCv2 architecture · 7b821a5a
      John Crispin authored
      
      This change adds support of ARC ISAv2 processors in
      OpenWRT toolchain.
      
      In general gcc for ARC may compile code for both ISA versions
      simultaneously but libgcc will be built only for default
      architecture that's why it's necessary to specify --with-cpu
      on gcc configuration.
      
      As for uClibc we need to use different configurations for
      different ARC ISAs.
      
      Signed-off-by: default avatarAlexey Brodkin <abrodkin@synopsys.com>
      Cc: Felix Fietkau <nbd@openwrt.org>
      Cc: Jo-Philipp Wich <jow@openwrt.org>
      Cc: Jonas Gorski <jogo@openwrt.org>
      
      SVN-Revision: 48739
      7b821a5a
  12. Dec 03, 2015
  13. Nov 10, 2015
    • Felix Fietkau's avatar
      toolchain: add support of ARC architecture · 8b5d644b
      Felix Fietkau authored
      This includes binutils, gcc, gdb and uClibc-ng.
      
      Latest release of ARC gcc (as of today it is "arc-2015.06")
      is based on upstream gcc 4.8.4.
      
      Sources are available on GitHub, see:
      https://github.com/foss-for-synopsys-dwc-arc-processors/gcc
      
      Latest release of ARC binutils (as of today it is "arc-2015.06")
      is based on upstream binutils 2.23.
      
      Sources are available on GitHub, see:
      https://github.com/foss-for-synopsys-dwc-arc-processors/binutils-gdb/releases/tag/arc-2015.06
      
      Latest release of ARC GDB (as of today this is "arc-2015.06-gdb")
      is based on upstream gdb 7.9.1.
      
      Sources are available on GitHub, see:
      https://github.com/foss-for-synopsys-dwc-arc-processors/binutils-gdb/releases/tag/arc-2015.06-gdb
      
      
      
      Note that for binutils and gdb that come from unified git repository
      (which is the case for upstream binutils/gdb today) we need to disable
      building of gdb in binutils and binutils in gdb hence in binutils:
      ------>8------
      --disable-sim
      --disable-gdb
      ------>8------
      
      and in gdb:
      ------>8------
      --disable-binutils
      --disable-ld
      --disable-gas
      ------>8------
      
      Also in gdb we disable sim because if the following breakage while
      building with it:
      ------------>8------------
      /usr/bin/env bash ./../common/genmloop.sh -shell /usr/bin/env bash \
              -mono -fast -pbb -switch sem5-switch.c \
              -cpu a5f -infile ./mloop5.in \
              -outfile-suffix 5
      unknown option: bash
      Makefile:699: recipe for target 'stamp-5mloop' failed
      make[7]: *** [stamp-5mloop] Error 1
      ------------>8------------
      
      Cc: Felix Fietkau <nbd@openwrt.org>
      Cc: John Crispin <blogic@openwrt.org>
      Cc: Jonas Gorski <jogo@openwrt.org>
      Signed-off-by: default avatarAlexey Brodkin <abrodkin@synopsys.com>
      
      SVN-Revision: 47438
      8b5d644b
  14. Nov 02, 2015
    • Felix Fietkau's avatar
      uclibc: remove version 0.9.33 · 014194de
      Felix Fietkau authored
      
      Latest uClibc-ng is now the only supported option
      
      Signed-off-by: default avatarFelix Fietkau <nbd@openwrt.org>
      
      SVN-Revision: 47357
      014194de
    • Felix Fietkau's avatar
      uclibc-ng: bump version from 1.0.6 to 1.0.8 · 02df774b
      Felix Fietkau authored
      
      2 new architectures were added in between 1.0.6 and 1.0.8 in uClibc-ng,
      these are:
       * lm32
       * or1k
      
      Even thought both are not yet supported in OpenWRT it's important to
      disable them both in default config file otherwise user prompt will
      appear during uClibc configuration asking to select desired
      architecture.
      
      Signed-off-by: default avatarAlexey Brodkin <abrodkin@synopsys.com>
      Cc: Waldemar Brodkorb <wbx@uclibc-ng.org>
      Cc: Mathieu Olivari <mathieu@codeaurora.org>
      Cc: Felix Fietkau <nbd@openwrt.org>
      Cc: John Crispin <blogic@openwrt.org>
      
      SVN-Revision: 47356
      02df774b
  15. Oct 26, 2015
  16. Oct 01, 2015
    • Felix Fietkau's avatar
      toolchain/uClibc: add support of uClibc-ng · 57a70e8a
      Felix Fietkau authored
      uClibc-ng is a spin-off of original uClibc, see http://www.uclibc-ng.org/
      
      
      
      We try to regularly add changes from uClibc to uClibc-ng.
      We even sent patches and bug reports to the uClibc mailing list.
      The config file is compatible between uClibc-ng 1.0 and uClibc git master.
      This might change in the future.
      
      Our main goal is to provide regularly a stable and tested release
      to make embedded system developers happy.
      
      The main advantage of uClibc-ng over olde good uClibc is regular releases
      so there's no need to keep tons of patches on top of years old
      0.9.33.2
      
      Build-tested for
       [1] ARM: Sunxi generic
       [2] MIPS: Netgear WNDR3600/3700/3800
      
      Run-tested for [yet out of the tree] Synopsys Designware ARC AXS101.
      
      Signed-off-by: default avatarAlexey Brodkin <abrodkin@synopsys.com>
      Cc: Waldemar Brodkorb <wbx@uclibc-ng.org>
      Cc: Mathieu Olivari <mathieu@codeaurora.org>
      Cc: Felix Fietkau <nbd@openwrt.org>
      Cc: John Crispin <blogic@openwrt.org>
      
      SVN-Revision: 47077
      57a70e8a
  17. Jun 23, 2015
  18. Jun 18, 2015
  19. May 25, 2015
  20. May 23, 2015
    • John Crispin's avatar
      uClibc: add signal info for seccomp related SIGSYS · 6ab2bcfe
      John Crispin authored
      
      uClibc doesn't define signal info for the SIGSYS signal which is issued
      in case of hitting a syscall prohibited by seccomp.
      This is sad as it makes debugging seccomp filter policies impossible on
      some architectures (at least ARM and PowerPC, maybe also others) which
      do not coincidentally set si_value.sival_int as the syscall number.
      
      To fix this, import the definitions and macros needed from glibc.
      
      Signed-off-by: default avatarDaniel Golle <daniel@makrotopia.org>
      
      SVN-Revision: 45720
      6ab2bcfe
  21. Apr 02, 2015
  22. Mar 29, 2015
  23. Mar 26, 2015
  24. Mar 24, 2015
  25. Mar 12, 2015
  26. Jan 17, 2015
    • John Crispin's avatar
      Support for building an hardened OpenWRT · 491f3fc0
      John Crispin authored
      
      Introduce configuration options to build an "hardened" OpenWRT.
      
      Options to enable Stack-Smashing Protection, FORTIFY_SOURCE and RELRO
      have been introduced.
      
      uClibc makefile now automatically detects if SSP support is necessary.
      
      hostapd makefile has been fixed to use "^" as sed separator since
      using a comma was problematic when using "-Wl,-z,now" and the like in
      TARGET_CFLAGS.
      
      Currently enabling SSP on user space depends on enabling SSP kernel
      side, this is due to the fact that TARGET_CFLAGS are used to build
      kernel modules (at least). Suggestions on how to avoid this are welcome.
      Using "select" instead of "depends on" doesn't seem to work with choice
      entries.
      
      Tested with a lantiq (WBMR) router, GCC 4.8, uClibc and a subset of
      the available packages.
      Needs to be tested with GCC 4.9 and the remaining packages.
      PIE not currently included.
      
      Signed-off-by: default avatarAlessandro Di Federico <ale+owrt@clearmind.me>
      
      SVN-Revision: 44005
      491f3fc0
  27. Dec 11, 2014
  28. Nov 30, 2014
    • Felix Fietkau's avatar
      toolchain: uClibc: fix compile with full language support enabled (fixes #13095) · 309cdd61
      Felix Fietkau authored
      When building with CONFIG_BUILD_NLS=y, uClibc fails to compile with following
      message (or similar, according to https://dev.openwrt.org/ticket/13095
      
      ):
      
      -snip-
      ...
      Warning: adding UNDEFINED entry for ar_AE
      Warning: adding UNDEFINED entry for am_ET
      Warning: adding UNDEFINED entry for af_ZA
      grep "^#define" extra/locale/locale_tables.h > extra/locale/lt_defines.h
      grep "^#define __lc" extra/locale/locale_collate.h >> extra/locale/lt_defines.h
      gcc extra/locale/gen_wctype.c  -o extra/locale/gen_wctype    -Os -Wall  -D__UCLIBC_GEN_LOCALE -I./
      extra/locale/gen_wctype.c: In function 'main':
      extra/locale/gen_wctype.c:684:2: warning: #warning fix the upper bound on the upper/lower tables... save 200 bytes or so [-Wcpp]
      for locale in  en_US en_GB; do \
                      extra/locale/gen_wctype  $locale > extra/locale/wctables.h || \
                      extra/locale/gen_wctype  $locale.UTF-8 > extra/locale/wctables.h || \
                      extra/locale/gen_wctype  $locale.iso8859-1 > extra/locale/wctables.h && break; \
              done
      make[4]: *** [extra/locale/wctables.h] Error 1
      -snap-
      
      This seems to also depend on the host system used, e.g. running a fresh
      checkout on a Debian 7.6 system triggered this error, while running the
      very same stuff on an Ubuntu 12.10 Quantal Quetzal does not trigger it.
      
      This is the configuration I used:
      
      -snip-
      buildbot@buildbot:~/openwrt-nls.git$ scripts/diffconfig.sh
      CONFIG_TARGET_ar71xx=y
      CONFIG_TARGET_ar71xx_generic=y
      CONFIG_TARGET_ar71xx_generic_Default=y
      CONFIG_DEVEL=y
      CONFIG_BUILD_NLS=y
      CONFIG_DOWNLOAD_FOLDER="/srv/downloads/downloads"
      -snap-
      
      In the ticket mentioned above, a patch is referenced which solves this issue.
      
      Note, that this issue is also present on 14.07.
      
      Signed-off-by: default avatarMichael Heimpold <mhei@heimpold.de>
      
      SVN-Revision: 43446
      309cdd61
    • Felix Fietkau's avatar
      toolchain: uClibc: fix build with CONFIG_BUILD_NLS selected · 3f130f7a
      Felix Fietkau authored
      
      Without this patch, selecting "Compile with full language support"
      results in the following question during build:
      
      ...
      Locale Support (UCLIBC_HAS_LOCALE) [Y/n/?] y
        Locale data
        > 1. All locales (UCLIBC_BUILD_ALL_LOCALE) (NEW)
          2. Only selected locales (UCLIBC_BUILD_MINIMAL_LOCALE) (NEW)
          3. Use Pre-generated Locale Data (UCLIBC_PREGENERATED_LOCALE_DATA) (NEW)
        choice[1-3]:
      
      Signed-off-by: default avatarMichael Heimpold <mhei@heimpold.de>
      
      SVN-Revision: 43445
      3f130f7a
  29. Oct 14, 2014
  30. Jul 10, 2014
  31. May 17, 2014
  32. Mar 24, 2014
Loading