No description
336ad4c9aa
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: Alexey Brodkin <abrodkin@synopsys.com> Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de> SVN-Revision: 49178 |
||
---|---|---|
config | ||
docs | ||
include | ||
package | ||
scripts | ||
target | ||
toolchain | ||
tools | ||
.gitattributes | ||
.gitignore | ||
BSDmakefile | ||
Config.in | ||
feeds.conf.default | ||
LICENSE | ||
Makefile | ||
README | ||
rules.mk |
This is the buildsystem for the OpenWrt Linux distribution. Please use "make menuconfig" to configure your appreciated configuration for the toolchain and firmware. You need to have installed gcc, binutils, bzip2, flex, python, perl, make, find, grep, diff, unzip, gawk, getopt, subversion, libz-dev and libc headers. Run "./scripts/feeds update -a" to get all the latest package definitions defined in feeds.conf / feeds.conf.default respectively and "./scripts/feeds install -a" to install symlinks of all of them into package/feeds/. Use "make menuconfig" to configure your image. Simply running "make" will build your firmware. It will download all sources, build the cross-compile toolchain, the kernel and all choosen applications. You can use "scripts/flashing/flash.sh" for remotely updating your embedded system via tftp. The OpenWrt system is documented in docs/. You will need a LaTeX distribution and the tex4ht package to build the documentation. Type "make -C docs/" to build it. To build your own firmware you need to have access to a Linux, BSD or MacOSX system (case-sensitive filesystem required). Cygwin will not be supported because of the lack of case sensitiveness in the file system. Sunshine! Your OpenWrt Project http://openwrt.org