Fixed an l10n-ism in retrieval of the svn revision.
Signed-off-by: Stephane Fillod <fillods@users.sf.net>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
fakeroot for the target fails to build against glibc, due to largefile
related problems :
libtool: link: /home/test/outputs/test-503/host/usr/bin/powerpc-linux-gnu-gcc -pipe -Os -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -o faked faked.o ./.libs/libcommunicate.a -ldl
{standard input}: Assembler messages:
{standard input}:2592: Error: symbol `__fxstatat64' is already defined
{standard input}:2627: Error: symbol `__fxstat64' is already defined
{standard input}:2663: Error: symbol `__xstat64' is already defined
{standard input}:2698: Error: symbol `__lxstat64' is already defined
make[3]: *** [libfakeroot.lo] Error 1
As fakeroot for the target is not really needed, and was only added
when we packaged fakeroot for the host, just make fakeroot not
selectable for the target.
We have to keep the AUTOTARGETS call for fakeroot on the target,
because the host variant does not work otherwise, due to issues in the
package infrastructure (that will be fixed post-2011.05).
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
The QtScriptTools library depends on the QtGui library, as can be seen
in the src/src.pro file of the Qt sources :
!contains(QT_CONFIG, no-gui):contains(QT_CONFIG, scripttools): SRC_SUBDIRS += src_scripttools
If the scripttools are enabled in the Qt configuration, but not the
gui, then the scripttools library is not built by Qt, and the
Buildroot build process fails with:
cp: cannot stat `/home/test/outputs/test-502/host/usr/sh4-unknown-linux-gnu/sysroot/usr/lib/libQtScriptTools.so.*': No such file or directory
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
The psmisc-no-__progname.patch removes the usage of __progname, which
removes any difference between pstree and pstree.x11. Therefore, we
make sure to not create the pstree.x11 symbolic link in the target.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Peter on IRC reported some build failures for different targets.
They were of two kinds:
- missing/unknown stack unwinding support
- missing *_chk functions
The first is about configure not being able to automagically determine
if stack unwinding support is available for the target. The second is
about fortified build forgetting to build the fortified functions.
This applies to both glibc and eglibc.
After some discussions on IRC with Jacmet, it appears that we can
safely assume both of the following:
- virtually all targets of buildroot will have stack unwinding support
- we do not care about fortified builds (so far)
So, update the bundled crosstool-NG .config file to saner defaults:
- force unwind support
- disable fortified builds
[Peter: fix 'force non-fortified build' sed invocation]
Reported-by: Peter Korsgaard <jacmet@sunsite.dk>
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
1.11.3 is the latest stable version, and it has a few improvements
we'll find usefull. For example, it hasa a boolean option for
disabling the {,e}glibc fortified build (instead of requiring us
to shoehorn it in extra cflags.
Update the config files.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Currently, the bundled CT-NG config file has no C library configured.
It is quite complex to add and/or munge options in this case.
Now, with one config file per libc familly, it becomes easier.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
bind needs to be specifically told where OpenSSL is, otherwise, the
build fails with:
checking for OpenSSL library... configure: error: OpenSSL was not found in any of /usr /usr/local /usr/local/ssl /usr/pkg /usr/sfw; use --with-openssl=/path
If you don't want OpenSSL, use --without-openssl
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
gtk2-engines is bumped from 2.9.1 to 2.20.2 (the latest available
version compatible with Gtk2). The package is converted to the
AUTOTARGETS infrastructure.
The config option is renamed so that it matches the package name
(gtk2-engines instead of libgtk2-engines).
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Use the Gnome FTP server as the download site, like we do for other
components of the Gtk stack.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The patch libglib2-mkenums-nowarn.patch is removed, since it has been
merged upstream.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
dhcpdump 1.7 required tcpdump, but version 1.8 now uses libpcap
instead. Also version 1.8 is no longer autotools based, but just a
simple Makefile.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Festival does not build, nobody cared since a long time, and they have
been marked deprecated since quite some time.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* libnl fails to build with multiple jobs so keep make at -j1
* Multiple libraries are installed so update uninstall target for this
[Peter: remove libnl/libnl-*.* to catch subdir + any new libs in the future]
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
It depends on utils provided by host system, and
they sometimes are missing.
Signed-off-by: Vasily Khoruzhick <anarsoul@gmail.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
libnl build breaks with bison <2.4 with:
bison -y -d -o route/cls/ematch_syntax.c route/cls/ematch_syntax.y
route/cls/ematch_syntax.y:31.9-16: syntax error, unexpected
identifier, expecting string
So build our own known good version and use instead.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
haserl no longer ships haserl_lualib.inc so our lua2c hack didn't work
anymore.
Fix is by adding a patch to re-add it and move the Makefile.in changes
to here rather than with sed.
Longer term we should probably add host-lua support instead.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
The arm-softfloat.patch.conditional patches are no longer in Buildroot
since 9af188d883 (October 2009), which
removed support for gcc 3.x and 4.0.x.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The 0.9.29 version of uClibc can no longer be selected on AVR32 since
December 2009 (b642f7eefb). Therefore,
those two patches are now completely useless.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Instead of the current mix between system config and filesystem menus.
At the same time rename 'Target filesystem options' menu to
'Filesystem images' as it now only contains options about image formats.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Bump kernel versions of qemu/mips-malta and qemu/arm-versatile sample
configuration files to 2.6.38.6
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
The special marker in etc/inittab might not be present with a custom
skeleton. At the same time make the option always active, remove the
hardcoded tty1/tty2 gettys and reword the option description slightly.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
This allows to have a device table for all directories/files and
another device table for the device files themselves. Both are needed
for static /dev, but only the first one is needed when
devtmpfs/mdev/udev are used.
We take this opportunity to move the documentation of the device table
format in a common location, package/makedevs/README.
[Peter: simplify code slightly, fix indentation]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
The S10udev startup script did useless things such as mounting sysfs,
mounting a tmpfs filesystem in /dev/, etc. Those things are already
done during in the default inittab.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Four methods for the creation of device files in /dev are now
proposed:
- static method uses device table as before
- devtmpfs method enables this feature in kernel
- mdev method adds mdev starting script to the file system
and selects mdev itself for installation
- udev method selects udev for installation
All dynamic methods are based on devtmpfs, so one doesn't need to care
about /dev folder.
Signed-off-by: Yegor Yefremov <yegorslists@googlemail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
The recent commit adding the external toolchain wrapper has broken the
support for external toolchain. The check_arm_eabi, check_cplusplus
and check_cross_compiler_exists functions were using TARGET_CC, which
points to the toolchain wrapper, but at the moment those functions are
called, the wrapper hasn't been generated yet.
We fix this by passing to these functions the path to the C or C++
compiler they should use for their tests.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Now that we use a wrapper for external toolchains (and internal ones
default to the correct setting), we no longer need to explicitly pass
sysroot/march/mtune/mabi/floating point mode in TARGET_CFLAGS.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Add a simple toolchain wrapper for external toolchains, which forces the
correct sysroot/march/mtune/floating point options needed to use it
with buildroot.
With this in place the external toolchain behaves similar to the internal
ones, and the special handling can be removed. This also means that the
toolchain is usable outside buildroot without having to pass any special
compiler flags.
Also adjust the downloadable external toolchain support to install under
HOST_DIR so it can be used after the temporary build files are removed.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
alsactl needs /var/lib/alsa to store asound.state when saving mixer
settings so make it in the target.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Bump bind to version 9.6-ESV-R4 since the 9.5 series is no longer
supported.
While at it switch to the ESV (Extended Support Version) branch instead
of going for the latest.
Also adjust the package to build against OpenSSL when available for
proper DNSSEC support and libxml2 too.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Commit 7e3e8ec040 (CFLAGS/LDFLAGS: don't add -I / -L args for STAGING_DIR)
exposed a lingering libtool problem.
Unless instructed otherwise (using -L) libtool will search its built in
system path for libraries, and use those instead if found. The default
search path is '/usr/lib, /lib, /usr/local/lib', which is no good for
cross compilation.
Fix it by setting the system search path to the empty string, effectively
disabling this feature.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Doesn't get applied because of the 0.1.10 patch, doesn't seem important
and hasn't been updated since it got added back in 2008.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* Make mpc mandatory since we are probably building bleeding-edge
* Change snapshot naming convention to match the source
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Some configure options changed so adjust.
Forcibly disabling threads isn't good and also it's detected by
configure when there are no threads.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Some configure options changed so adjust.
Forcibly disabling threads isn't good and also it's detected by
configure when there are no threads.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
mklibs is a broken option, so mark it as so pending a proper fixup or
punting it.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Add OpenMP support in gcc as an option instead of dynamically enabling
it when threads are present.
Also fix it up since we never installed libgomp to the target or staging
thus it was never really functional.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Exposed by commit 7e3e8ec040
net-snmp-config goes for -L/usr/lib thus things break since this wins
over the sysroot if we have a host net-snmp library around when we build
packages that link against net-snmp.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
See uclibc #2089 for details.
This is still not included upstream, but lets include it anyway as
several people have been running into the issue.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Now that we use sysroot for all toolchains, the explicit -I / -L arguments
in CFLAGS / LDFLAGS aren't needed anymore (And having them makes the build
quite noisy for certain packages as STAGING_DIR/include normally doesn't
exist).
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
See uclibc #2089 for details.
This is still not included upstream, but lets include it anyway as
several people have been running into the issue.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Update uClibc snapshot version config to avoid build stalls.
This time we take care of the new UCLIBC_HAS_FTS and
UCLIBC_HAS_BACKTRACE options.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Add gcc 4.6.0 to the toolchain repertoire:
Target gcc is known to be broken in some scenarios.
This version is considered experimental so things may break.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Make target gcc a more usable option.
* Nuke duplicate libgcc_s*.so* in /usr/lib since it confuses target gcc
* Copy *crt*.o files to the target system to unbreak gcc
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Add inotify_init1 system call support to uclibc 0.9.31.
Required for modern versions of udev.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Add SOCK_CLOEXEC and SOCK_NONBLOCK support to uclibc 0.9.31.
Required for modern versions of udev.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
When mkimage is built without the rest of u-boot (for kernel uImage
support), u-boot doesn't get configured for a specific board, so config.h
isn't created and the build breaks.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Bump libcap to version 2.20 and adjust style to match buildroot's
defacto standard.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Closes#3379
A good filesystem performance benchmark program
Signed-off-by: Martin Hicks <mort@bork.org>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
This includes two separately configurable parition manipulation
utilities: gdsik and sgdisk are to GPT disks what fdisk and sfdisk are
in MBR land.
[Peter: patch source, fix typos, fix partial build, pass correct flags]
Signed-off-by: Malte Starostik <m-starostik@versanet.de>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
busybox and linux26 no longer have a -config target, and prepatch only makes
sense for a very specific configuration (BR toolchain with GDB enabled).
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Closes#3571
The current approach for building fw_printenv for the target fails on
some configurations, so use the upstream make target (which works)
instead.
At the same time get rid of the unneeded stripping.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
ncurses 5.8 and 5.9 segfault with some applications so roll back to
version 5.7
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Depending on some setting (which? Arch? Others?), the dynamic linker
can get different names. Some times, it is named ld-linux.something.so,
other times, it is ld.so.1, and maybe other variants as well...
The fix is to always copy ls*.so, even if it is a symlink: we create
the destination file by its SONAME, and if ld*.so matches more than
one file, that's no issue, as they would all get the same SONAME (being
symlinks ones to the others).
Split long lines at the same time.
Reported-by: Ettore Campion <ecampion@gmail.com>
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
proftpd refuses to start if it finds a UseIPv6 option in the configuration
file (even if set to off) when built without IPv6 support, so comment out
line.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Bump squid to version 3.1.12
Also disable strict error checking since this breaks with gcc 4.6.0+
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Add new package: bwm-ng
Bandwidth Monitor NG is a small and console-based live network and
disk-io bandwidth monitor for Linux, BSD, Solaris, Mac OS X and others.
[Peter: move to net, fix Config.in line length, remove unused make var]
Signed-off-by: Kelvin Cheung <keguang.zhang@gmail.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
We have to ensure that the sysroot created while building the
toolchain will be the one we later search for libraries. So:
- hide the sysroot name prompt from the ct-ng menu.
- force the sysroot name to be 'sysroot'.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Changes made based upon e-mails with Mike Frysinger and Gerhard Heift. The
autoreconf change is important for anyone using uClibc as there is no widely
available backtrace (yet).
[Peter: fix Config.in indentation, autoreconf, patch]
Signed-off-by: Andy Kennedy <Andy.Kennedy@AdTran.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
In the past, these files of the buildroot website weren't under git
version control, but rather were static files added to the git checkout
used by the webserver.
This is no longer the case, so add them to git - And at the same time
use the Buildroot logo for the favicon, rather than reusing the busybox
one.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Tremor needs the common ogg support (in _ogg_common.c) to get built,
similar to how it is done when libvorbis is used.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
qmake is built during the execution of Qt ./configure script, so it is
built just with a normal make, not taking advantage of parallel
compilation. Passing MAKEFLAGS=-j$(BR2_JLEVEL) allows to speed up the
qmake compilation process quite a bit.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Since the conversion of Qt to GENTARGETS in
421cda1fd0, plugin installation could
break in some situations, for example if SQL support was enabled, but
without any SQL driver: the sql plugin directory doesn't exist, but
our qt.mk wanted to copy it.
This patches simplifies the plugin handling a bit, and basically
copies all Qt plugins installed in the $(STAGING_DIR) to the
$(TARGET_DIR), assuming Qt has only built and installed the needed
plugins.
Moreover, instead of installing plugins to usr/plugins, which is a odd
location, we install them in usr/lib/qt/plugins. This requires a small
patch to Qt ./configure script so that even when -hostprefix is used,
the -plugindir option is taken into account.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Enable correct driver for qemu's rtl8139 emulation (8139cp), enable
CONFIG_PACKET so DHCP works and enable 8250 driver for serial console.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Fixes link issues on uClibc for applications using libreadline.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
When ccache support is enabled and 'make silentoldconfig' is being
started from the following rule:
$(BUILD_DIR)/buildroot-config/auto.conf: $(CONFIG_DIR)/.config
$(MAKE) $(EXTRAMAKEARGS) HOSTCC="$(HOSTCC_NOCCACHE)" HOSTCXX="$(HOSTCXX_NOCCACHE)" silentoldconfig
then, the Makefile in package/config inherits from HOSTCC/HOSTCXX
values with the ccache prefix. However, if we start from a cleaned
build (after make clean), ccache is not compiled yet, so things break.
To solve this, we pass a noccache variant of HOSTCC/HOSTCXX down to
the package/config Makefile.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Closes#3445.
OpenSSL emits bswap instructions when building for i386 targets which
unfortunately is only available on 486+ class processors.
Since the normal workaround is detected at build time and we are cross
compiling we need to specify this.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Fixes for vulnerabilities CVE-2010-1674 and CVE-2010-1675.
Additional patches for build-time breakage of the new version.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Bump mpd server to version 0.6.12
Also make ffmpeg support conditional on IPv6 since the new ffmpeg
version requires it.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
This is useful for ARCHes like PowerPC that have a whole lot of
special targets for each different board. The kernel image target
tells make which OpenFirmware machine description file is combined into
the kernel binary.
[Peter: fix long lines]
Signed-Off-By: Martin Hicks <mort@bork.org>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Packages (like avahi) are now using libtool 2.4, so extend the libtool
handling to support those as well.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
The current code accidentally sets up HOSTCC_NOCCACHE and HOSTCXX_NOCCACHE
only when the respective HOSTCC or HOSTCXX values are not set. So if you
do something like:
make HOSTCC=gcc menuconfig
The build fails because HOSTCC_NOCCACHE is not set anywhere.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Only prefix the external toolchain calls with its absolute path if
BR2_TOOLCHAIN_EXTERNAL_PATH is set, otherwise just assume it will
be available in the path.
Signed-off-by: Sonic Zhang <sonic.zhang@analog.com>
Acked-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
In addition to converting the qt package to the GENTARGETS
infrastructure, this commit also does the following (related) things
in the Qt package:
* Create a BR2_PACKAGE_QT_CONFIG_FILE option, which can be used to
pass a custom Qt configuration file, such as the ones found in
src/corelib/global/qconfig-*.h. This used to be possible, but
required changing qt.mk directly, which isn't really how we
configure things in Buildroot.
* Remove the BR2_PACKAGE_QT_EMB_PLATFORM option, the embedded
platform name is now computed directly in qt.mk.
* The QT_CONFIGURE variable, which hosted all ./configure options,
has been renamed to QT_CONFIGURE_OPTS, for consistency with what we
do in the AUTOTARGETS infrastructure.
* The QT_DEP_LIBS variable has been renamed to QT_DEPENDENCIES, so
that dependencies are properly handled by the GENTARGETS
infrastructures.
* The QT_QMAKE_SET macro (used to adjust the path/flags of the
compiler/linker) has been extended with an additional argument,
which allows to pass the source directory of Qt.
* All the installation procedure has been rewritten to fit within the
GENTARGETS mechanism.
[Peter: fixed minor issues pointed out by Will]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Acked-by: Luca Ceresoli <luca@lucaceresoli.net>
Acked-by: Will Wagner <willw@carallon.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
This shouldn't happen with any sane configuration, but is possible with
randpackageconfig builds, where it breaks the build as libgtk would prefer
X11 and webkit directfb, causing it to fail with:
No package 'gtk+-directfb-2.0' found
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
A few packages (like xlib_xtrans) install their .pc files here, and
upstream pkg-config defaults to searching both /usr/lib/pkgconfig and
/usr/share/pkgconfig, so add it as well.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Seems I somehow got this wrong back in December (bff5248202).
At the same time fix a typo in the comment.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
The icu build system seems to have a race condition, which gets triggered
by high BR2_JLEVEL settings, so disable parallel builds.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Most alsa utilites depend on specific alsa-lib options, so ensure those
are selected. Arecord is furthermore just a symlink to aplay these days,
so get rid of the option.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
The Debian package snapshot service moved to an official debian.org
address last year (http://www.debian.org/News/2010/20100412) with a
slightly different URL structure, so adjust the download URL to match.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Closes#3475
There's no real reason to sync after creating the device nodes,
and it slows down the file system image creating quite a lot on
busy systems, so get rid of it.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
For packages where the sources are included in buildroot (E.G. makedevs).
We unfortunately already use no <pkg>_SOURCE to mean <pkg>_<version>.tar.gz,
in several packages (and for git/svn/bzr support), so you need to
define <pkg>_SOURCE to the empty string to use it.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
These patches do not build with more recent versions of uClibc
going back as far as at least 2008. More recent compiler versions
seem to do fine without these patches, so lets remove them so
libstdc++ locale support will actually build for gcc 4.2.4.
Signed-off-by: Will Newton <will.newton@imgtec.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Only append sysroot to includedir / libdir, and not to other variables,
when a variable is requested (--variable=<name>), similar to how it
is done for the -I / -L flags in cflags/ldflags.
The problem is that pkg-config doesn't have any explicit cross compilation
support, so there's some confusion about what are host paths and what are
target ones. Includedir / libdir are paths for the (cross) compiler, so
those should normally have sysroot prepended, but other variables might
refer to target paths instead.
This fixes the installation of the xfonts-* packages, which uses
pkg-config --variable=fontrootdir fontutil to figure out the target
installation location for fonts.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
GNU config is now managed in git so we cannot use the old method
of doing a cvs up to get the latest changes.
Signed-off-by: Will Newton <will.newton@imgtec.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
A similar patch appears to have been applied upstream.
Signed-off-by: Will Newton <will.newton@imgtec.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Add an option to use the system sqlite library.
Also drop sqlite2 stub since it's pointless.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
xz itself works without wchar support, but the C99 test in configure
fails when it isn't available. Fix it by providing a cached value for
the test.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Readd legacy LZMA support since older patched kernels might be using it.
Introduce an XZ target filesystem option for the new format.
[Peter: add a seperate xz target for squashfs-target as well]
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
The build system has a race condition causing build failure with high
BR2_JLEVEL values, so ensure make -j1 is used.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
ffmpeg enables mmx by default for x86-class processors, so disable it for
processors that lack it (i386, i486, i586, i686, pentium pro, geode).
Solves bug #3325
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Ensure that the avahi dbus service gets installed if dbus support is
enabled, otherwise avahi access through dbus fails (as clients try
to start the daemon and dbus doesn't know how to do this).
Fixed upstream in 0.6.28 (http://avahi.org/ticket/319) but this
workaround is simpler/safer for now.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
This patch fixes the following error when using GDB with gdbserver:
warning: Can not parse XML target description; XML support was disabled at compile time
Remote 'g' packet reply is too long: <very long line of hex chars>
[remote debugging does not work]
Use $(HOST_CONFIGURE_OPTS) so expat is found.
Signed-off-by: Bjørn Forsman <bjorn.forsman@gmail.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Similar to how we do it for mpd now. This way, the selection is clearly
visible to the user, instead of the hidden selection we used to do in
the makefile.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
If flac and libogg were both built but flac isn't selected in mpd it
will be picked up anyway.
Forcibly disable oggflac support if flac support is disabled for
consistency.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Move the ffmpeg option up to keep the pretty sort order.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
MPD requires at least one input plugin to build.
If there's none selected default to tremor (vorbis).
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Closes#3295
Fix MIPS build failure as reported by Thomas Petazzoni.
We're forcing CFLAGS and busting -fPIC in the process.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
The old sylpheed version no longer built with our libgtk2 version, so
move to the latest stable release. At the same time add optional openssl
support.
The sylpheed build system adds -I$includedir to the CFLAGS, so ensure
it points at our staging rather than the host headers.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Closes#3259
We need to tweak icu-config's exec_prefix too, otherwise if the host
system lacks icu the build fails when looking for the libraries in
/usr/lib rather than the staging directory.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Closes#3307
Synergy needs libXtst, a toolchain with wchar support and was missing
an include for exit().
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Closes#3277
Quagga's snmp support tries to link with libcrypto from openssl by
default.
That's a bad no no since snmp might have ssl support disabled
and openssl won't be around.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
The makedevs script did not always generate the requested set of device names / minor number series.
* If start != 0, then requesting (count) devices would generate only (count - start)
* If start != 0 && increment != 1, then requesting minors starting with (minor) would generate minors starting with (minor + (start * (increment - 1)))
This patch fixes the code and updates the usage text with extra examples.
Signed-off-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Closes#3205
OpenSSL's build system tries to be too wise for it's own good when
guessing what libdir should be.
This causes problems like the one reported in bug #3205 so just specify
libdir to point to /lib (since it's prefixed it would finally be
/usr/lib) since it should be present on 32 and 64 bit targets.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Metacity no longer built after libgtk2 was updated, so fix it by bumping
the version. We unfortunately cannot move to the latest version, as
these have extra dependencies we don't have in BR yet
(libcanberra-gtk + gnome-doc-utils).
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
We use 'make tools' to build a mkimage for the host if needed by the
kernel (uImage) without having u-boot configured, but that only works
since the 2010.03 release:
http://git.denx.de/?p=u-boot.git;a=commit;h=c7c0d542a1990
So drop the old 2009.xx versions rather than having the build break
for people.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
After spending a couple of hours on it today, I'm still unable to get
speech-tools to build and install properly with a uClibc toolchain.
So I'm giving up. Mark the entire thing broken as the text-to-speech
stuff is unlikely to be used very much on the kind of small systems
we're targetting.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
inittab ordering causes mount to fail on remount,rw. inittab
changed to mount /proc first.
Signed-off-by: Andy Kennedy <Andy.Kennedy@AdTran.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
This patch is required to build gcc 4.2.4 libgcc with dwarf2
unwinding support enabled.
Signed-off-by: Will Newton <will.newton@imgtec.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Even though ./configure has a --disable-largefile, functions like
statfs64 is used in several places, breaking the build on toolchains
without largefile support.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
The build system of bind seems to have issues with (highly) parallel
builds, breaking the build with errors like:
libtool: link: `nothreads/condition.lo' is not a valid libtool object
So disable parallel builds.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
The old 0.4.2 version doesn't seem to be available on the GNU mirrors
anymore, so change to the slightly-less-ancient 0.4.6 version.
We're not moving to the new 0.9.x series yet, as that one needs an
external libgnutls for https support, which we don't have a BR
package for yet.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Libmicrohttpd works nicely without https support, so make it optional.
Also ensure the cross-libgcrypt-config is found, rather than whatever
is installed on the host.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Pass TARGET_CONFIGURE_OPTS in the environment rather than as make arguments,
so the olsr build system can append to CFLAGS / LDFLAGS - Otherwise build
fails when the wrong linker flags are used to create the plugin .so's.
Also pass ARCH, so the olsr build system choses the right libdir / PIC
settings for the target, rather than for the host.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
The old libtool version gets confused about rpath, which breaks the build.
FIx it by up upgrading to 1.5.22 (package is not compatible with libtool
2.x, so we cannot just autoreconf).
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
It has been marked as broken for close to 1 year (aa3439e6a3), without
any effort to fix it, so remove it from the tree.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
It has been marked as broken for close to 1 year (7452b4edfa), without
any effort to fix it, so remove it from the tree.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Now that we have libtool-2.2.x patch support, we can get rid of a bunch
of _LIBTOOL_PATH = NO, fixing (potential) cross link issues.
Notice: php not changed, as it uses a very old 1.5 version for the
embedded sqlite, where our buildroot-libtool-v1.5.patch doesn't apply.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Now that we have libtool-2.2.x patch support, we can get rid of a bunch
of _LIBTOOL_PATH = NO, fixing (potential) cross link issues.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Now that we have libtool-2.2.x patch support, we can get rid of a bunch
of _LIBTOOL_PATH = NO, fixing (potential) cross link issues.
Notice: libmad/libid3tag/madplay/taglib not changed, as they use a very
old 1.5 version, where our buildroot-libtool-v1.5.patch doesn't apply.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
TARGET_SKELETON_PATCH is no longer in use, so remove it.
Signed-off-by: Bjørn Forsman <bjorn.forsman@gmail.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
[Peter: don't link statically, only depend on iconv if !BR_ENABLE_LOCALE]
Signed-off-by: Nate Ford <nford@westpond.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Bump mplayer to the first version that fixes this issue:
file.c:23:5: warning: "HAVE_MMAP" is not defined
file.c:25:7: warning: "HAVE_MAPVIEWOFFILE" is not defined
file.c:77:5: warning: "HAVE_MMAP" is not defined
file.c:87:7: warning: "HAVE_MAPVIEWOFFILE" is not defined
file.c:124:5: warning: "HAVE_MMAP" is not defined
file.c:126:7: warning: "HAVE_MAPVIEWOFFILE" is not defined
file.c: In function 'av_file_map':
file.c:50: error: 'HAVE_MMAP' undeclared (first use in this function)
file.c:50: error: (Each undeclared identifier is reported only once
file.c:50: error: for each function it appears in.)
make[2]: *** [file.o] Error 1
Signed-off-by: Bjørn Forsman <bjorn.forsman@gmail.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
gcc_target wants uclibc_target which is now first stage uclibc (not
real, from the NPTL build stage addition).
This triggers gcc-final to be rebuilt (albeit cached) and reinstalled,
thus touching all the stamps around and triggering a rebuild of
gcc_target.
Switch to $(STAMP_DIR)/gcc_libs_target_installed instead so that we only
depend on the last stage of cross gcc being installed to rebuild.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Easynews has been down for a number of days, and it is no longer in the
mirror list, so use the mirror from the University of Kent instead by
default.
At the same time fix the link to the sf mirror list.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
If target /etc/mpd.conf exists the evaluation will be fail thus breaking
the build process. Fix it.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
libao output must be explicitly enabled, so fix it.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Bump e2fsprogs to version 1.41.14
Also export libblkid properly for util-linux to use.
[Peter: install pkg-config files]
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
The uClibc configuration file toolchain/uClibc/uClibc.config-locale
does not exist anymore.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
The FindQt4 module of CMake insists on having uic, even if the QtGui
module isn't part of the requirements to build the program. This isn't
correct, as Qt doesn't build/install the uic program when QtGui is
disabled (uic is used to generate some UI code).
This has been fixed upstream in
http://cmake.org/gitweb?p=cmake.git;a=commit;h=43cb9b8276a70d153d56a69d5c61daaf2bc51b78. This
commit will be part of the upcoming 2.8.4 CMake release, but in the
mean time, let's include it in Buildroot.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
The Qt build system installs all host programs (uic, rcc, moc, qmake,
etc.) in the same base directory as the headers and libraries, but
that's not great for Buildroot.
So we now move the host programs and the mkspecs files to the
$(HOST_DIR), and create a qt.conf, which tells qmake where everything
is located.
Tested with Qmake and Cmake as build system for a simple Qt
application.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
We already pass the LD variable to openssl in order to use gcc as the
driver for the link process, instead of directly using the ld
linker. However, we were not passing LDFLAGS so that the compiler
flags are passed, which means that with multilib toolchains, the
incorrect library variant could be used at link time, leading to
invalid binaries (partly ARMv4, partly ARMv5) or broken compilation
(when the build took place in soft-float, but the link stage takes
place against hard-float libraries).
This fixes a problem reported on IRC by amo-ej1 when compiling ssh on
PowerPC e500v2 with a CodeSourcery toolchain ("crtbegin.o uses hard
float, sshd uses soft float").
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
This requires removing "deprecated" markings from gdb-6.6, but this isn't
that big of a deal. That is the last version with Blackfin support at the
moment and we're in the process of getting mainlined.
[Peter: only mark as undeprecated on bfin]
Acked-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
The stripping options operate on the final image and not the intermediate
builds, so requiring stripping to be disabled just to enable debugging
options doesn't make much sense. Especially when working with gdbserver:
only the host needs the debugging information to be available. The board
can run & debug perfectly fine without it.
Acked-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Currently, the documentation says $(PKG)_SITE_METHOD should have upper
case names such as SVN or GIT, but the implementation only accepts lower
case svn or git. This fixes the documentation.
Signed-off-by: Bjørn Forsman <bjorn.forsman@gmail.com>
Acked-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Daniel Nyström <daniel.nystrom@timeterminal.se>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
liboil is not needed not used any more. orc _can_ be used instead, but
it's not needed.
[Peter: get rid of liboil selects]
Signed-off-by: Felipe Contreras <felipe.contreras@gmail.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Further more:
- Rename to S49ntp to match other packages
- Fix start target to run ntpd, and only try ntpdate if available
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Closes#2935
Add ntpdate option and make ntpd optional.
Based on incomplete patch by Frederik Pasch <fpasch@googlemail.com>
Also enable crypto when openssl is enabled.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Closes#3169
Typo in modules_lib_dirs section of patch specified modules_include_dirs
instead of modules_lib_dirs. This matters if PYTHON_MODULES_LIB
is not passed into the script.
Signed-off-by: Mark Wickham <markw@digi.com>
Acked-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Quite a lot of packages select bzip2 (for its libbz2 library), so don't
hide it even though busybox DOES have a bzip2 applet - Otherwise
kconfig complains.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Now that it's been converted to cmaketargets it doesn't need the
host-cmake dependencies since this are fulfilled in the infrastructure.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Allow the user to define HOST_DIR in the config menu.
This way when building an internal toolchain a separate (maybe shared)
output directory may be defined and the toolchain can be used by
multiple users and/or projects.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Acked-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
IDN support requires wchar, otherwise libintl will fail to build.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Bump libart to version 2.3.21 and update patch accordingly.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Kconfig nowadays uses the mainmenu as the title, so add the version info
here, similar to how it is done in the Linux kernel.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Just needed to pass in ccache as a prefix to the CROSS_TARGET variable.
Signed-off-by: Martin Hicks <mort@bork.org>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Just needed to pass in ccache as a prefix to the CROSS_TARGET variable.
Signed-off-by: Martin Hicks <mort@bork.org>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Closes#3181
When install -D is used (to ensure destination dirs exists), the destination
file name has to be given as well.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Add BSD endian conversion routines (backport from 0.9.32 / git).
Required to use a modern udev.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
We discourage the addition of custom target skeleton into the official
Buildroot tree, so let's not encourage users to do this in the
documentation.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Reword the documentation on external toolchain to take into account
the new features added since 2010.11 concerning external toolchain
profiles.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
We don't currently autoreconf pkg-config for the target as we don't need
--with-sysroot support, which means PKG_CONFIG_SYSROOT=NULL wasn't
passed, breaking the build.
Fix it by reworking the patch to only pass this if --with-sysroot is given,
and handle the not set case in main.c.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Get rid of cflags workaround now that we always use sysroot, and
pkg-config --cflags dbus-1 thus returns the correct value.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Bump to version 4.2.6p3 and fix a build failure with external toolchains
that use certain glibc versions as point out by speakman on IRC.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Acked-by: Daniel Nyström <daniel.nystrom@timeterminal.se>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Similar to the --with-pc-path option. It works just like the existing
PKG_CONFIG_SYSROOT_DIR environment variable, but compiled in.
The environment variable overrides this default setting if set.
This way we don't need to pass PKG_CONFIG_SYSROOT_DIR in the environment
when building for the target, and it is easier to reuse pkg-config outside
BR (E.G. for the SDK) without having to setup special environment
variables.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Fixes gst-plugins-bad build, if gstreamer is installed on host with xml
support, as it uses pkg-config --variable=includedir to find gstconfig.h,
and hence ends up looking at the host version.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Now that we have a proper host-python package, use that one instead of
whatever might be available on the build host. Also don't overwrite
the host-python package version variable and fix dependency list
(xcb-proto is needed for the host).
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Some packages (like libxcb) need xml support in host-python in order to
build (.py file tries to import xml.etree.cElementTree).
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
The CMAKETARGETS infrastructure makes adding CMake-based packages to
Buildroot easy. It uses the same set of variables as the autotools
infrastructure, except for autoreconf and libtool stuff which is not
needed. Usage: just call CMAKETARGETS instead of AUTOTARGETS.
Signed-off-by: Bjørn Forsman <bjorn.forsman@gmail.com>
Acked-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
A CMake toolchain-file makes it easy to develop CMake-based packages
outside of Buildroot. Just give the toolchain-file to CMake via the
-DCMAKE_TOOLCHAIN_FILE=... option.
Signed-off-by: Bjørn Forsman <bjorn.forsman@gmail.com>
Acked-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
By default, zlib installation procedure calls ldconfig, which takes
time uselessly. ldconfig is only useful if you install libraries on
the host (in directories listed in /etc/ld.so.conf, or in /usr/lib or
/lib), so calling it after installing libraries in $(STAGING_DIR),
$(TARGET_DIR) or $(HOST_DIR) is just a lenghty no-op.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Autoconf would append -dirty to it's version number, causing build breakage
with packages explicitly requesting autoconf 2.65, if built in a subdir
of a git tree with uncommitted changes. This is a relatively common
situation when developing on BR.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
As pointed out on the list, using sysroot rather than sys-root is less
confusing, as this is how it is referred to in the GCC manual.
So rather than changing BR, patch ct-ng to use sysroot instead.
The next ct-ng release will use 'sysroot' as well by default.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
A number of packages depended on the libpython make target for python
support, which no longer exist.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
crosstool-ng would normally delete its installation directory before
installing the toolchain to ensure it wouldn't get confused by an earlier
build. Now that we're installing directly into HOST_DIR/usr, this doesn't
work very well - So get rid of the rm's.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
For some reason, tcpdump and libpcap need to have some information
about the kernel version being used. This information is passed using
the ac_cv_linux_vers autoconf variable.
However, the current value is determined using
BR2_DEFAULT_KERNEL_HEADERS which is only defined when an internal
Buildroot toolchain is used. So it would break with an external
toolchain or the Crosstool-NG backend.
According to Mike Frysinger at
http://lists.busybox.net/pipermail/buildroot/2011-January/040861.html,
this value is only used to determine if the kernel version is 0.x, 1.x
or 2.x, so passing ac_cv_linux_vers=2 is sufficient since Buildroot
only supports the 2.6 kernel anyway.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Simplifies code and helps us when we add SDK support in the future.
With this we no longer need to copy headers/libraries to STAGING_DIR either.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Use unknown for the vendor part of the tuple, and add $arch-linux- symlinks,
similar to how it's done for the internal toolchain, rather than using
buildroot_ctng and unknown symlinks.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
The name of the sysroot directory is arbitrary, but as ct-ng uses sys-root,
let's use that as well for consistency.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
python-mad is a Python binding for the MAD library, a high-quality
integer-only MPEG decoder.
This package has been introduced as a test to make sure that
third-party Python modules that rely on a C extension can properly be
built against the Python infrastructure of Buildroot.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
python-serial is a Python library to access serial ports.
This package has originally been introduced to test that third-party
pure Python modules (that do not use C extensions) build properly
against the Buildroot Python infrastructure.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
This commit does a number of changes and improvements to the Python
interpreter package :
* It converts the .mk file to the AUTOTARGETS infrastructure. Even
though Python uses only autoconf and not automake, the AUTOTARGETS
is a fairly good fit for the Python interpreter, so we make use of
it.
* It bumps the version to 2.7.1. As this is a minor release compared
to 2.7, there are no particular changes needed because of this
bump. All changes done to the package are cleanups and improvements
unrelated to the version bump.
* It uses the system libffi. Until now, Python was building its own
libffi (a library used by interprets to build code that makes
function call at runtime). Using the Python internal libffi was not
working as Python was not passing the appropriate arguments down to
libffi ./configure script. And it sounded better to use a
system-wide libffi, that could potentially be used by other
packages as well. This libffi is needed for the ctypes Python
module.
* Remove all "depends on BR2_PACKAGE_PYTHON" by moving all
Python-related options under a "if BR2_PACKAGE_PYTHON ... endif"
condition.
* Make the installation of pre-compiled Python modules (.pyc) the
default, since they are smaller and do not need to be compiled on
the target. It is still possible to install uncompiled modules, or
both the uncompiled and pre-compiled versions.
* The options to select the set of Python modules to compile has been
moved to a submenu.
* The codecscjk (Japanese, Korean and Chinese codecs) module is no
longer enabled by default.
* The commented options for gdbm and nis in Python have been
removed. Those were not supported, so let's get rid of unused code.
* The option for the tkinker module in Python has been removed, since
we don't have a package for Tk in Buildroot.
* Options for the bzip2, sqlite and zlib modules have been added,
since those modules have external dependencies.
* The set of patches has been completely reworked and extended, with
more fine-grained patches and newer functionalities. The patches
are split in two categories:
- Patches that make various modifications to the Python build
system to support cross-compilation or make some minor
modifications. Those patches are numbered from 0 to 100.
- Patches that add configuration options to the Python build
system in order to enable/disable the compilation of Python
extensions or modules (test modules, pydoc, lib2to3, sqlite, tk,
curses, expat, codecs-cjk, nis, unicodedata, database modules,
ssl, bzip2, zlib). These patches are numbered from 100 to 200.
All features of the previous four patches are preserved, but they
are organized differently and the patches have been renamed. This
makes it difficult to see the differences from the existing
patches.
* The host Python interpreter is now installed in $(HOST_DIR), since
it is used to build third party Python modules.
* The BR2_PACKAGE_PYTHON_DEV option is removed since
BR2_HAVE_DEVFILES already does the necessary work.
* The "make -i install" workaround introduced by Maxime Ripard is no
longer needed. It was caused by the compilation of the tests that
required the unicodedata module (which wasn't built in the host
Python interpreter). Since we no longer compile the Python tests,
the problem doesn't exist anymore and we can avoid this "-i"
option.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
libffi is needed by the Python interpreter.
The libffi library provides a portable, high level programming
interface to various calling conventions. This allows a programmer to
call any function specified by a call interface description at
run-time.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
On 0.10.11 the binary-registry was added, on 0.10.12 the libxml2
dependency was dropped when binary-registry was used, on 0.10.18 the
binary-registry was made default, and on 0.10.23 it was the only option.
So, libxml2 is not needed any more for the registry.
Signed-off-by: Felipe Contreras <felipe.contreras@gmail.com>
Acked-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Make libmad install mad.pc into staging and target.
Needed for mpd.
[Peter: remove -lm from mad.pc]
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
mpg123 also provides a shared library (libmpg123.so), so install into
staging so other programs can find it.
[Peter: reworded commit message]
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Closes#3103
gcc/gmp/mpfr/mpc are only needed when using an internal buildroot toolchain,
so only add them to HOST_SOURCE then.
Otherwise we get some nasty fetch error when doing "make source"
[Peter: add gmpc/mpfr/mpc and reword commit text]
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Enable OCF (cryptodev) support for openssl as an option.
This requires a patched kernel to export hardware acceleration for
openssl to use it.
If you lack a patched kernel or support it won't break anything, it will
simply fall back to the default software engine from openssl, you'll
just have a slightly bigger libssl/libcrypto.
Tested with 20100325 release + 20101223 patch from the mailing list.
[Peter: slightly tweaked .mk]
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Includes some new metrics for sar (amount of active and inactive memory,
processes blocked waiting for I/O to complete).
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Make sure bash builds after busybox when it's enabled to override
busybox's /bin/sh symlink with bash.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
PHP bug #53632 and CVE-2010-4645, where conversions from string to
double might cause the PHP interpreter to hang on systems using x87 FPU
registers.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Select openssh in Config.in rather than depend on it.
Otherwise the option is missing without an obvious reason.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Add support for the libsigc++ library.
[Peter: Rename dir, use libtool patch, add C++ dep]
Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Some packages need to know whether the MMU is in play, so add a toolchain
option to expose the feature to them.
[Peter: only show option on archs where it makes sense]
Acked-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Closes#3007
Changed the KEXEC_SITE to the new home of kexec. This patch also satisfies
bug #3007 created by me last month. Thanks to Gustavo for pointing out that
the easy fix was to bump kexec to 2.0.2.
Signed-of-by: Andy Kennedy <Andy.Kennedy@AdTran.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Closes#2647
[Peter: Adjust for the real 12bit majors/20bit minors supported by Linux]
Signed-off-by: Matt Fleming <matthew.fleming@imgtec.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
The generic fs handling does a chmod -R 0:0 $(TARGET_DIR), so there's no
need for a specific option to enforce this when making an ext2fs image.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
This way we'll get something in images/ by default, and hopefully people
will be less likely to try to use target/ directly.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
It's pretty uncommon to use ext2fs on embedded systems, so don't enable
it by default.
Adjust defconfigs to match.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
gl_ac_cv_func_link_follows_symlink=no - changed to gl_cv_func_link_follows_symlink
gl_cv_func_mkdir_trailing_slash_bug=no - no longer used
gl_cv_func_rename_dest_exists_bug=no - no longer used
gl_cv_func_rename_trailing_slash_bug=no - no longer used
Signed-off-by: Martin Banky <Martin.Banky@gmail.com>
Acked-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
hostname is no longer installed by default (ChangeLog-2007 - 2007-08-28), and
has to be enabled with --enable-install-program=hostname. hostname's man file is
not included, and because of this, during make, help2man is run against
src/hostname to generate it's man file. src/hostname will not run on the host
system, causing the build to fail.
Generated the hostname man file, after building coreutils on the host
system, and generated this patch, which fixes the build error.
Signed-off-by: Martin Banky <Martin.Banky@gmail.com>
Acked-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
ac_cv_func_closedir_void=no - no longer used
ac_cv_func_fnmatch_gnu=yes - no longer used
ac_cv_func_getcwd_null=yes - duplicate of gl_cv_func_getcwd_null
ac_cv_func_mkstemp=yes - changed to gl_cv_func_working_mkstemp
ac_cv_func_stat_empty_string_bug=no - no longer used
ac_cv_func_utime_null=yes - no longer used
ac_cv_have_decl_euidaccess=no - no longer used
ac_cv_have_decl_nanosleep=yes - no longer used
ac_cv_struct_st_mtim_nsec=no - no longer used
am_cv_func_working_getline=yes - duplicate
am_getline_needs_run_time_check=no - changed to gl_getline_needs_run_time_check
gl_cv_c_restrict=no - changed to ac_cv_c_restrict
gl_cv_func_mkstemp_limitations=no - no longer used
gl_cv_func_working_readdir=yes - no longer used
jm_ac_cv_func_link_follows_symlink=no - changed to gl_ac_cv_func_link_follows_symlink
jm_cv_func_gettimeofday_clobber=no - changed to gl_cv_func_gettimeofday_clobber
jm_cv_func_nanosleep_works=yes - no longer used
jm_cv_func_svid_putenv=yes - changed to gl_cv_func_svid_putenv
jm_cv_func_working_re_compile_pattern=yes - changed to gl_cv_func_re_compile_pattern_working
utils_cv_func_mkdir_trailing_slash_bug=no - duplicate of gl_cv_func_mkdir_trailing_slash_bug
utils_cv_func_mkstemp_limitations=no - duplicate of gl_cv_func_mkstemp_limitations
Signed-off-by: Martin Banky <Martin.Banky@gmail.com>
Acked-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Add audio group to the target skeleton.
Some multimedia applications based on alsa-lib need it.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
For some ABI's (like FLAT), we cannot strip busybox as the file format
does not support it and strip will abort with errors like 'File format
not recognized'. Since the toplevel already takes care of stripping
things, simply disable the busybox step.
Acked-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
This does set a few more vars in some steps that weren't set before, but
they should be harmless in the contexts in question. And the resulting
save in duplication is nice.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Bump to version 2.6.37
Add iptables support when it's available.
ATM support requires linux-atm for which we don't have a package yet.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Install iptables to staging so we can build iproute2 with filtering.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Bump to version 1.2.6 which includes security fixes for:
CVE-2010-1791, CVE-2010-3812, CVE-2010-3813, CVE-2010-4197,
CVE-2010-4198, CVE-2010-4204 and CVE-2010-4206.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Add ttyAM support for the ARM AMBA serial ports on the Cirrus EP93xx.
Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
With highly parallel builds, sysdep.h is not always generated before it
is needed, breaking the build.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
With highly parallel builds, the input files for parsetime.l are not
alway present when needed, breaking the build.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
flac incorrectly assumes every powerpc around has altivec.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
If we don't pass SHARED when installing we miss the shared library
symlinks (libpci.so & libpci.so.3).
On internal and external toolchains that have a proper cross ldconfig this
isn't a problem as they get created during ldconfig, but it breaks on
toolchains that lack a cross ldconfig to automagically make the symlinks.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Select alsa-libs instead of depending on them otherwise it's just
"missing" from the menu.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
WITH_TARGET_{GMP/MPC/MPFR} is unneeded since we are providing a sysroot.
It also breaks build-gcc under certain conditions.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Make an output/staging -> sysroot symlink just for compatibility
purposes.
This may be gone in the future so don't count on it, use $(STAGING_DIR)
instead.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Convert the oprofile target to select the new libbfd staging/target
option to avoid a huge target binutils for a simple task.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
We want to keep a copy around for the future SDK functionality.
Also it's a better fix for bug #1051.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* Convert binutils to a proper autotargets package
* Add version 2.21 and drop version 2.17
* Hook up packaged binutils for target gcc
* Build tools are on HOST_DIR now so change it
* Move cross/host gcc to HOST_DIR
* Drop kludge from commit 3c77bab2ee
This is fixed in the next commit "gcc: install copies of libgcc,
libstdc++ and libgcj to the sysroot" - tested for arm & x86_64
targets.
* TARGET_CROSS now pointed to HOST_DIR too
[Peter: Config.in tweaks]
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
The shell doesn't understand += assignments. Fixes a build issue with
sqlite extension and !largefile (and possibly with ext toolchains as well).
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Closes#2929
Instead of just adding a fixed amount to the blocks used, try to
estimate the real space needed according to the filesystem structure
(bitmaps, inodes, blocks).
The side effect of this is that we no longer significantly overestimate
the size needed for small file systems.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Recent kernels (2.6.37*) use a different name for OMAP serial ports.
They are no longer called ttySx but ttyOx.
Signed-off-by: Guillaume GARDET <guillaume.gardet@free.fr>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Reset them early in top-level Makefile to ensure they're keept unset
all the way through the build process.
This also removes the requirement of these variables being unset
globally prior the build.
Signed-off-by: Daniel Nyström <daniel.nystrom@timeterminal.se>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
It's really not very useful, all it does is install a target
strace and ldd in a target_utils directory in staging.
While at it clean up the strace makefile a bit.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Remove VIS optimization, it's for sparc64 and it's gone.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
/usr/lib/libcap.so.* was installed via "install -D" but libcap.so.2 is
a symlink so it was dereferenced.
Also update the buildsystem patch so that the shared lib is +X.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* 0.9.32 config needs UCLIBC_HAS___PROGNAME defined or we stall when
program invocation name is enabled.
* Mirror 0.9.32's config to snapshot for consistency.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Move uclibc host tools (ldd/ldconfig) to host dir.
They were previously installed in the staging dir.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* Drop the BR2_STAGING_DIR option
* Hardcode STAGING_DIR to $(HOST_DIR)/usr/TUPLE/sysroot
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* Convert sstrip to a proper gentargets package
* Use openwrt svn version, it's basically the same one we used
* Change the hooks from old toolchain/sstrip to new package/sstrip
* Drop the old toolchain/sstrip directory
* sstrip for the target is now in Package -> Development
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Since we are preparing a package generation mechanism, we would like
to avoid packages that move/touch/modify files which are not part
of their own package. That's why we try to not install host files into
the staging directory (in this case .m4 files) and instead we include
$(HOST_DIR)/usr/share/aclocal into autoreconf search directory.
Signed-off-by: Lionel Landwerlin <llandwerlin@gmail.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
On a machine without zlib-dev installed, cloop must rely on the
host-zlib compiled by Buildroot, but due to the horrible cloop build
system, this didn't happen and the build was failing.
Therefore, we now pass all the $(HOST_CONFIGURE_OPTS) when building
cloop, and we fix the Makefile so that it takes into account
CFLAGS/LDFLAGS passed in the environment or command-line and do not
override them.
[Peter: fix typos, remove HOST_MAKE_ENV]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
libglib2 recently got a gdbusutils.h file as well, confusing the gvfs
build. Update to a more recent version containing a workaround.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Without this patch we'd need separate versioned patch directories for
target and host packages, thus having unwanted duplication.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Acked-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Upstream decided to change the file naming convention.
sqlite-amalgamation is now sqlite-autoconf
For a given version, say, 3.7.4 (W.X.Y) upstream now uses WXXYYZZ with Z
reserved for minor fix versions, all zero padded.
Thus 3.7.4 is 3070400, 3.7.4.1 would be 3070401.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
kdrive has no glx support, and mesa3d depends on libdrm which needs
largefile support (just like the modular server), so ensure mesa3d
can only be enabled in that configuration.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
With the gentargets conversion, the tarball is extracted directly in the
source directory, so adjust paths to match.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
It hasn't seen any updates since it was added early 2008, upstream seems
dead and it doesn't build with modern GCC versions.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Instead of having to require svn, git or bzr unconditionally, only
require them when one package needs them to be downloaded.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
In e6633fd2e3 I did crap, and added a
quietization inside a shell command, which was already quietized. This
was stupid, and is fixed by this patch.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
In the support of custom external toolchains, we forgot to touch the
$(STAMP_DIR)/ext-toolchain-checked stamp file, which means that the
toolchain was re-checked and re-installed at everyt build.
At the same time, quietize a bit other stamp files touch.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Bump libxml2 to version 2.7.8.
Re-enable libtool patch now that we handle libtool2 in package infra.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* Bump to version 1.5
* Really configure right (or wrong depending on perspective) since we
weren't building ed for the target it was completely broken.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* Patch needs a toolchain with WCHAR support
* Use real upstream gnu mirror
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* Convert to autotargets package.
* Bump to version 7.2.446.
We fetch from svn to avoid having a ton of patch files.
This won't do us any good if we want vim 7.3 since the repository was
moved to mercurial. However 7.3 still has some cross-compile issues.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* Fixed extract() to do not overwrite $GLOBALS and $this when using
EXTR_OVERWRITE.
* Fixed crash in zip extract method (possible CWE-170).
* Fixed a possible double free in imap extension.
* Fixed possible flaw in open_basedir (CVE-2010-3436).
* Fixed NULL pointer dereference in ZipArchive::getArchiveComment.
(CVE-2010-3709).
* Fixed bug #52929 (Segfault in filter_var with FILTER_VALIDATE_EMAIL
with large amount of data).
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
By default there is no module activated in ts.conf. According to the
ts.conf previously attached in the tslib package dir (which was never
installed) the default module of choice was the raw module.
This patch enables the raw module in the ts.conf file in the tslib
source tree, which will be installed in the target.
Signed-off-by: Daniel Nyström <daniel.nystrom@timeterminal.se>
Acked-by: Paulius Zaleckas <paulius.zaleckas@gmail.com>
Acked-by: Luca Ceresoli <luca@lucaceresoli.net>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Due to missing official releases, fetch directly from GitHub
repository. Many bugfixes since 1.0 and all previous patches in
Buildroot are either applied or obsoleted.
Signed-off-by: Daniel Nyström <daniel.nystrom@timeterminal.se>
Acked-by: Paulius Zaleckas <paulius.zaleckas@gmail.com>
Acked-by: Luca Ceresoli <luca@lucaceresoli.net>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
As per the discussion at
http://lists.busybox.net/pipermail/buildroot/2010-December/040030.html,
remove the bits that forced the IPv6 configuration in the kernel
depending on the toolchain ability to support (or not) IPv6. You may
have a toolchain with IPv6 support but still don't want to have IPv6
in your kernel.
The only parameters we adjust in the kernel configuration are:
* ARM EABI, since we got a lot of bug reports regarding misconfigured
kernel compared to the ABI used by userspace applications.
* initramfs, since its contents are generated by Buildroot itself
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
The patch imagemagick-6.6.4-add-errno-h-if-argz-h-does-not-exist.patch
was not applied anymore due to a difference in the version number, and
it didn't prevent imagemagick to be built. It was introduced several
years ago together with the ImageMagick package itself, so presumably
it is no longer needed.
The new patch allows ImageMagick to use the correct xml2-config script
to get the proper location for XML2 headers and libraries. Otherwise,
-I/usr/include/libxml2 is found in the compile flags.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Closes#2371
Bug 2371 was a Qt compilation issue when MySQL support was enabled,
because the Qt configuration tests were looking at host MySQL
libraries.
Even though I couldn't reproduce the bug with MySQL libraries
installed on my host, there was clearly a problem since
-I/usr/include/mysql and -L/usr/lib/mysql were part of the compilation
flags when building those tests.
This was caused by the fact that /usr/bin/mysql_config was used
instead of $(STAGING_DIR)/usr/bin/mysql_config. We fix this by passing
the path to the correct mysql_config script using the -mysql_config Qt
./configure argument. Since this mysql_config script returns the
correct flags for libraries and headers path, the hardcoded -I and -L
flag in qt.mk are no longer needed.
With this in place, Qt is no longer compiled with -I/usr/include/mysql
and -L/usr/lib/mysql, which presumably should fix the problem reported
in bug 2371.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
MySQL 5.1.47 is affected by a bug in one test called the "ABI check",
which does not work with recent gcc versions. This bug is referenced
as http://bugs.mysql.com/bug.php?id=52514 in MySQL bug tracker.
Since it has been fixed in newer versions of MySQL, we simply bump the
version to the latest available in the 5.1.x series.
The patches have not changed, they have only been refreshed.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Closes#2965
For some odd reason, xkeyboard-config < 1.8 was creating a symbolic
link from /usr/share/X11/xkb/xkbcomp to the xkbcomp binary. But in
cross-compilation mode, this is absurd as the xkbcomp binary to which
the link is pointing is the one in $(HOST_DIR).
This symbolic link thing has been removed completely starting from
xkeyboard-config 1.9. See
http://cgit.freedesktop.org/xkeyboard-config/commit/?id=f413dff57e77e7b01461508f74b4e92d1dc8defd.
Therefore, we simply bump xkeyboard-config to the latest available
version, 2.0.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
As discussed on IRC, this only needs to be disabled for very specific
configurations, and it can nowadays be done with a custom busybox
.config (CONFIG_INSTALL_APPLET_DONT), so get rid of the option.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Explicitly explain what the (default) install target does, so people who
don't know busybox details understands what the option does.
Notice: Busybox can be configured to create hard links or shell wrappers
instead, but by default symlinks are used.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
As reported by Miroslav Ignjatovic in bug #2983, our hack in
xlib_libX11 to build makekeys for the host does not work, for several
reasons:
* As we are building a tool for the host, we shouldn't pass
-I$(STAGING_DIR)/usr/include, since the $(STAGING_DIR) contains
headers of packages for the target.
* Instead, we should use the headers in $(HOST_DIR)/usr/include. They
were not used due to a typo: $(HOST_CFLAGS) must be used instead of
$(HOSTCFLAGS).
* Finally, in order for makekeys to find the required headers in
$(HOST_DIR)/usr/include, we must depend on host-xproto_xproto.
This fixes bug #2983.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
ARCH_SUBDIR is a shell variable, so it should be referenced with
$${ARCH_SUBDIR}. Without this, no symbolic link is created, and the
external toolchain fails to work if the non-default multilib variant
is used.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
linux-% shortcut targets (short for linux26-%) ignores the ouput dir
$(O) so that 'make O=output.arm linux-menuconfig' is actually run in the
default $(O) directory output/ and not in output.arm/. Fix by passing on
$(O) if set.
[Peter: Use EXTRAMAKEARGS]
Signed-off-by: Bjørn Forsman <bjorn.forsman@gmail.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Both i386 and x86_64 architectures are supported by the arch/x86
directory in the kernel. So, when we copy the kernel configuration
file to arch/$(KERNEL_ARCH)/configs/, it does not work because
arch/i386 and arch/x86_64 do not exist.
So, we introduce KERNEL_ARCH_PATH, which is the path to the
architecture specific directory in the kernel source tree.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
The ELF vmlinux image found at the root of the kernel source tree is
the format that Qemu needs when emulating mips(el) or ppc targets, so
add support for it.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
[ Thomas:
* renamed sh4_defconfig to qemu_sh4_r2d_defconfig, for consistency
with other Qemu platforms supported
* renamed board/qemu/sh4 to board/qemu/sh4-r2d
* minor fixes in the readme.txt
* remove useless statements in the minimal defconfig
* switch to a fixed kernel version instead of "same as headers"
]
Signed-off-by: Philippe Reynes <tremyfr@yahoo.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
The kernel being a component that often needs a fairly important set
of changes to be adapted to a particular hardware platform, having
maximum flexibility on the patching process is a nice
thing. Therefore, as per the discussions from the Buildroot Developer
Day, we add a mechanism to apply a list of patches (that could come
either from URLs, local files or local directories).
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Now that minimal kernel defconfigs are used in Buildroot, the problem
is that copying those minimal configuration files to .config in the
kernel source tree does not work, as kconfig will ask interactively
what should be the value for all unspecified options.
On suggestion on Sam Ravnborg, the easiest way to solve this is to
import the minimal defconfig file as a defconfig inside the kernel
tree (in arch/$(ARCH)/configs) and configure the kernel with it.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Those folders are currently created using makedevs according to the
specifications in device_table.txt. However, as makedevs is no longer
executed when dynamic device creation methods are selected (devtmpfs,
udev, mdev), those folders must be created differently. We choose to
put them directly into the default filesystem skeleton.
Signed-off-by: Yegor Yefremov <yegor_sub1@visionsystems.de>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Even when building the host tools, for some reason U-Boot tries to
execute the cross-compiler, so tell it which cross-compiler to use in
order to avoid failure such as:
/usr/bin/make -j12 -C /home/test/outputs/test-253-mini2440_defconfig/build/u-boot-custom tools
make[1]: arm-linux-gcc: Command not found
make[1]: Entering directory `/home/test/outputs/test-253-mini2440_defconfig/build/u-boot-custom'
for dir in tools examples api_examples ; do /usr/bin/make -C $dir _depend ; done
Generating include/autoconf.mk
/bin/sh: line 3: arm-linux-gcc: command not found
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Paul Jones documented at
http://pauljones.id.au/blog/2010/07/using-buildroot-on-a-mini2440/ how
to use Buildroot to generate a system for the FriendlyARM Mini2440
platform. This patch integrates Paul's work into Buildroot.
Unfortunately, the kernel being 2.6.32, we can't easily use a minimal
defconfig here. The mini2440 support has been merged into more recent
kernels, but I don't have the hardware to test.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
This default configuration did not even build a kernel image, which is
the main point of having board default configuration. So remove it.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Neither the kernel nor U-Boot have support for a 1005 board, so let's
get rid of this board configuration, the corresponding target
skeleton, kernel and busybox configuration and device table.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Use recent U-Boot and kernel version, remove target skeleton and use
the default one instead, remove useless kernel configuration, busybox
configuration and device table.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
It was supposed to be the support for AT91SAM9260 using a parallel flash
(instead of the usual dataflash). But the provided U-Boot configuration
at91sam9260pf.h was not used anywhere, and it was unsufficient to add
correct support in U-Boot (some changes in U-Boot Makefile would also be
needed). Additionnally, this configuration has not been merged into U-Boot
upstream since 2007 (when it was added to Buildroot).
Therefore, let's get rid of this configuration. If some users are
interested, we can re-introduce it properly with their help.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Minimize the board defconfig, remove custom busybox configuration,
custom kernel configuration (use the kernel defconfig instead), custom
device table and target skeleton. The only difference in the target
skeleton was the support of mdev and the usage of an automount
script. Instead of adding this in a board-specific way, we should
provide board-independent configuration options. There are already
patches contributed to add support for mdev.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Minimize atngw100_defconfig, remove atngw100-base_defconfig, and
remove the target skeleton and device table. Instead of having
complete copies of new target skeletons (making them hard to
maintain), we should just have a post-build script that
adds/removes/tweaks the existing target skeleton.
Moreover, most of the tweaks in this target skeleton were for specific
packages, but the policy now is that board defconfig should just build
a basic root filesystem with Busybox, and let the user select
whichever set of packages (s)he wants.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Those are not associated with any specific hardware system (PC or
another i386 system). Moreover, the fact that those configurations
require the build of a JFFS2 filesystem, very uncommon on PC systems,
seems to indicate that those configurations are not really being used
today.
It would make more sense to have a qemu_i388_defconfig (building a
kernel with just the device drivers for Qemu) and possibly a
pc_i386_defconfig (building a kernel with many device drivers, and a
bootloader such as Grub or Grub 2).
We also remove the corresponding kernel configuration files.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
unzip is needed to uncompress at91bootstrap, so let's add it as a
dependency. This can be discussed, and if we think it shouldn't be a
new dependency, we can also build a host-unzip.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Use modern U-Boot and kernel versions, get rid of the now unused
kernel configuration file since we use the kernel defconfig instead.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Use modern U-Boot and kernel versions, and get rid of the useless
kernel configuration file, since we now use the kernel defconfig.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Use modern kernel and U-Boot versions, and get rid of the now useless
kernel configuration file since we use the kernel defconfig file
instead.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
The Buildroot makefile was fetching and building the special
AT91Bootstrap of Ulf, which is not the Atmel official version. While
Ulf's variant has a better configuration/build system, the Atmel
version, as officially supported, is probably a better choice for the
future.
The Atmel version only needed a small tweak to work with EABI
toolchains.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
The options to customize the hostname, the banner and the serial port
configuration are now inside a menu named 'System configuration'.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
We don't need Config.in and Makefile in target/device: defconfig files
are sufficient to describe the specificities of a board (architecture,
compilation flags, bootloader and kernel details, etc.).
However, a placeholder such as target/device will be kept in order to
host things such as kernel configuration files or various
board-specific patches.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Having Config.in.mirrors (which also to select various download sites)
inside target/device sounds strange. This commit moves the contents of
Config.in.mirrors directly into the main Config.in file.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
l2tp is no longer being developed, and xl2tpd is forked from l2tpd and is
maintained by Xelerance Corporation.
[Peter: remove invalid pppd dependency]
Signed-off-by: Martin Banky <Martin.Banky@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
This allows to disable the build of the format specification
documentation, which was causing issues in cross-compiling mode.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Based on the conversion to gentargets done by Martin Banky, several
issues were fixed, and the mplayer package was improved:
* Updated to a recent SVN version
* Removed mandatory dependency on libmad
* The AVR32 specific patch has been removed. It was a pain to remain
blocked at the old 1.0-rc2 just for this patch. All this
optimization work should have been submitted upstream, Buildroot is
not the place to carry such heavy modifications.
* Options were added to select whether mplayer and/or mencoder should
be built/installed.
* Support for additional options if packages have been selected:
tremor, libmad, libtheora, libpng, jpeg, xlib_libX11,
xlib_libXv. More could be added in the future.
* Support for ARM-related optimization options. Similar improvements
could be done for x86 and PowerPC architectures.
[Peter: fix build with !IPV6]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
[ Thomas: remove all patches, since they have been merged. Implement
the target uninstallation step, fix many issues. ]
[Peter: fix target install / uninstall steps]
Signed-off-by: Martin Banky <Martin.Banky@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
The package has been marked deprecated, is no longer developed
upstream, so let's get rid of it.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
This package has been marked deprecated in Buildroot last year, no-one
complained, and it isn't developed upstream anymore. So get rid of it.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
This package has been marked deprecated in October, and no-one
complained. Moreover, it doesn't sound like a package that is widely
used on embedded systems. So we get rid of it.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
This package has been marked deprecated some time ago, because it has
been integrated into Busybox. Let's get rid of it now.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Also, memtester requires largefile support
[ Thomas: add patch to fix memtester's Makefile at installation
stage. Bump to 4.2.1. ]
Signed-off-by: Martin Banky <Martin.Banky@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
lsof is packaged as a tarball inside a .tar.bz2 package, so we have a
post-extract hook to extract the source code tarball, so that for the
next steps, lsof looks like a normal package.
Signed-off-by: Martin Banky <Martin.Banky@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
In sysvinit inittab the "id" field (first field) must be no longer
than 4 bytes, and is not used by init to determine the output
terminal. Therefore, we adjust the strategy used to modify the inittab
file according to the getty configuration.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Also, changed the site to Debian, to get the latest patches
[ Thomas: add inittab compatible with sysvinit. Minor fixes. ]
Signed-off-by: Martin Banky <Martin.Banky@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Also, changed the site to Debian, to get the latest patches
[ Thomas: Minor fixes. Removed S25sysklogd since our default
/etc/inittab already starts klogd and sysklogd. ]
[Peter: only install syslog.conf if not available in skeleton]
Signed-off-by: Martin Banky <Martin.Banky@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
TARGET_MAKE_ENV contains the PATH to the host tools built in
$(HOST_DIR), and not having this directory in the PATH while
installing packages may cause troubles.
The specific example that trigerred the problem is the following
one. libglib2 ./configure tries to find a awk version, either gawk or
mawk. On my limited testing system, only mawk is available, so
normally, libglib2 detects mawk and uses it, and it works perfectly.
However, when host-gawk has been compiled before libglib2 (which
happens for example if you have used the Crosstool-NG backend), gawk
is well detected in $(HOST_DIR)/usr/bin at ./configure time
($(HOST_DIR)/usr/bin is in the PATH at ./configure time, thanks to
TARGET_MAKE_ENV). But at install time, when libglib2 uses gawk, it
doesn't find it anymore because it is not in the PATH.
This also makes things coherent with host installation, in which
$(HOST_MAKE_ENV) was already used.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
By default, Crosstool-NG hides all the details of the toolchain build
process. However, this is inconsistent with the typical Buildroot
build, and the rotating progress thing makes log file resulting from
redirecting the Buildroot output a bit unusable. Therefore, switch the
Crosstool-NG configuration to a more verbose default.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Acked-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
BR2_NEEDS_GETTEXT was already set to y for Buildroot internal
toolchain and external toolchains based on uClibc, but wasn't set for
toolchains based on uClibC built by the Crosstool-NG backend.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
When an external toolchain is used, the user is responsible for
telling Buildroot what the configuration of the toolchain is. In order
to make sure that the selection is correct, we already perform checks
against the configuration of the uClibc in the selected external
toolchain. This commit adds the check for thread support.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
The selection of linuxthreads, linuxthreads old or NPTL doesn't make a
lot of sense for external toolchains. So, instead, we :
* Introduce an hidden BR2_TOOLCHAIN_HAS_THREADS option, which must be
selected by toolchain specific options when thread support is
available. Package needing to test thread support should use this
option.
* Move the none/linuxthreads/linuxthreads old/NPTL selection to
Buildroot internal toolchain configuration.
* Add an option in external toolchain to tell if thread support is
available or not in the external toolchain. We assume that glibc
without threads is not possible, as Ulrich Drepper said in
http://sourceware.org/ml/libc-alpha/2005-08/msg00091.html
ffmpeg, dmalloc and openvpn are fixed to use the new
BR2_TOOLCHAIN_HAS_THREADS option. For openvpn, --enable-threads=posix
is no longer used, as the configure script doesn't even understand
this option.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Reworking ltp-testsuite is needed in order to get rid of some
thread-specific options that will be cleaned-up in the next commit.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
The BR2_USE_SSP option is only used inside the uClibc build, so only
meaningful for Buildroot internal toolchains. Therefore, the option is
moved to the right location so that it isn't visible when working with
external toolchains.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Instead of having BR2_GCC_CROSS_CXX and BR2_INSTALL_LIBSTDCPP, with
BR2_GCC_CROSS_CXX not being visible (and therefore being useless),
let's just keep BR2_INSTALL_LIBSTDCPP to enable C++ in the toolchain
and install C++ libraries on the target.
We also take that opportunity to make BR2_INSTALL_LIBSTDCPP an hidden
option, which is selected by an option in Buildroot toolchain support
or an option in External toolchain support, just as we did for other
toolchain features.
Some work definitely remains to be done :
- The name BR2_INSTALL_LIBSTDCPP is ugly, but we keep it for the
moment in order to avoid changing all packages.
- We should clarify the other language-related options (Fortran,
Java, Objective-C, etc.).
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Reviewed-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
We already handle the stripping of libraries in $(TARGET_DIR) at the
global level, so there's no need to have toolchain-specific option and
code for this.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Reviewed-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Instead of letting the user define all the details of his external
toolchain, we define a set of profiles for well-known external
toolchains (CodeSourcery ones only at the moment, can easily be
extended with other toolchains).
Once a profile has been choosen, the user is offered the choice of
either letting Buildroot download and install the external toolchain,
or (as before) to tell Buildroot where the toolchain is installed on
the system.
We of course provide a "custom profile", through which the user can
configure Buildroot to use a custom external toolchain for which no
profile is available.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Some helpers had their final line ending with a semi-colon, some did
not. For consistency, remove the final semi-colon from all helpers,
it's the responsability of the caller to add the final semi-colon as
needed.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Reviewed-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Turn BR2_LARGEFILE, BR2_INET_IPV6, BR2_INET_RPC, BR2_USE_WCHAR,
BR2_ENABLE_LOCALE and BR2_PROGRAM_INVOCATION into hidden options.
Then, for Buildroot toolchains, external toolchains and Crosstool-NG
toolchains, provide visible options that selects the hidden options.
This allows :
* To show a different label and help text in the case of Buildroot
toolchain (do you want to enable feature X ?) and in the case of
external toolchain (is feature X available in your toolchain ?)
* To not show any option when a glibc external toolchain is selected
(since glibc is assumed to support all of largefile, IPv6, RPC,
WCHAR, locale and program invocation) and have them all selected in
that case.
There is some amount of duplication between Buildroot toolchain config
options and Crosstool-NG toolchain config options, because kconfig
doesn't allow to source the same Config.in file twice (even if under
mutually exclusive conditions). This duplication is more readable that
the hack that consists in splitting files in multiple pieces.
However, this commit changes the name of the options visible in the
configuration interface, so existing .config files will have to be
updated accordingly.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Reviewed-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Old-style kernel headers got removed almost 2 years ago, so get rid of
the seperate kernel-headers-new.makefile file and move the content
to the main kernel-headers.mk.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
This is needed when custom/snapshot kernel headers are selected.
Buildroot expects to find dl/linux-2.6.tar.bz2 and also expects
it to extract to output/toolchain/linux-2.6, but if you tar
custom kernel sources directory can be anything, etc. linux-git.
In that case buildroot would extract it to output/toolchain/linux-git.
So fix this behaviour, by using tar strip-directory/component.
Signed-off-by: Paulius Zaleckas <paulius.zaleckas@gmail.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
FBGrab is a framebuffer screenshot program, capturing the linux
frambuffer and converting it to a png-picture.
[Peter: drop zlib dep, add uninstall]
Signed-off-by: Daniel Nyström <daniel.nystrom@timeterminal.se>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Also simply installation rules a little
[Peter: leave in busybox install fix]
Signed-off-by: Lionel Landwerlin <llandwerlin@gmail.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
In case /etc/init.d does not exist.
[Peter: use install -D]
Signed-off-by: Lionel Landwerlin <llandwerlin@gmail.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
In case /etc/init.d does not exist.
[Peter: use install -D]
Signed-off-by: Lionel Landwerlin <llandwerlin@gmail.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
In case /etc/init.d does not exist.
[Peter: use install -D]
Signed-off-by: Lionel Landwerlin <llandwerlin@gmail.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Since udhcpc is part of busybox, it seems logical to move the udhcpc
script from skeleton to busybox.
[Peter: only install if not available in skeleton]
Signed-off-by: Lionel Landwerlin <llandwerlin@gmail.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
In case /etc/init.d does not exists.
[Peter: use install -D]
Signed-off-by: Lionel Landwerlin <llandwerlin@gmail.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
And remove unneeded explicit stripping of target binaries
[Peter: use install -D]
Signed-off-by: Lionel Landwerlin <llandwerlin@gmail.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Ensure hostapd and hostapd_cli are installed in /usr/bin/ even if the
directory does not exist.
Signed-off-by: Lionel Landwerlin <llandwerlin@gmail.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
If /etc/init.d does not exist, we need to be sure that the dbus
startup script is installed at the right place.
Signed-off-by: Lionel Landwerlin <llandwerlin@gmail.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Commit ab2f5567c1 (cleanup, fix install for static only build) forgot
to add the patch for static only builds, even though the commit message
mentioned it.
Thanks to Mike for noticing.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
The linux.mk rewrite lost the DEPMOD setting while installing modules
which means depending on host-module-init-tools has been useless.
Instead, the build system has been executing /sbin/depmod.
While we're here, drop the INSTALL_MOD_PATH since LINUX26_MAKE_FLAGS
already contains it.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Acked-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
We only have one Linux kernel package, and "linux26-" is an anachronism
in today's world. So add useful "linux-%" shortcuts to the "linux26-%".
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Acked-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Building with linux-2.6.36 and initramfs support causes the build to
pause while it prompts for newer options (uid/gid/compression). So
have the build system inject the newer options into the linux config
automatically. Older versions should just ignore these.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Acked-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* ccache is now a normal package (both for the host and the target).
* ccache option is now part of the "Build options" menu. It will
automatically build ccache for the host before building anything,
and will use it to cache builds for both host compilations and
target compilations.
* bump ccache to 3.1.3
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
The current linux code overrides LDFLAGS that the kernel itself might be
setting up. Looking at the history, there doesn't seem to be any reason
for this override. It was added in ea8b1fa6a6 without any logic.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Acked-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
When sstrip is selected it tries to strip kernel modules too.
Unfortunately this fails with a "unrecognized program segment header
size" error thus interrupting the build process.
We introduce a new $(KSTRIPCMD) strip command for this, being a regular
strip when sstrip is selected and an empty stub when not stripping.
At the same time get rid of the REMOVE_SECTION_* variables, as they are
only used once.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Closes#2773
Fixes several security issues and host-openssl dependency for cf_gen.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
The tcpdump package likes to install two binaries into /usr/sbin --
one named "tcpdump" and one named "tcpdump.<ver>". But it does this
by installing the file twice rather than using links. Since the alt
name is useless to us, just punt it.
[Peter: Rework to use POST_INSTALL_TARGET_HOOKS instead]
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Certain toolchain configs (E.G. on blackfin), don't use symlinks, so the
file name to match is the actual SONAME (.so.*). Support these toolchains
as well.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Closes#2857
The OBJDUMP was missing from TARGET_CONFIGURE_OPTS, this patch adds it
to the proper place in package/Makefile.in.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
For some C libraries, it can be necessary to push the BR settings
down to the libc configuration file. Prepare the infrastructure.
(Note: it will apply only to uClibc for now, and although eglibc
can also be configured, it is not currently supported)
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Depends on:
- GNU awk --> host-gawk
- GNU automake --> host-automake
Remove dependency on 'cvs'. cvs is used to retrieve newlib,
which is not supported under Buildroot.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Ensure we just append to TARGET_CFLAGS, instead of overriding it.
Signed-off-by: Matt Johnson <mj1856@hotmail.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Fix previous commit not to strip libthread_db library. In the previous
commit the wildcard was incorrectly matching the symbolic link instead
of the real library file.
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Building WebKit or Script engine support would select JIT support
in JavaScriptCore. Not all platforms support JIT, so remove the
selects to allow the option to be modified by users.
Signed-off-by: Will Newton <will.newton@imgtec.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
configure looks for libintl, so ensure it is available. Also make sure
the host ncurses headers aren't used.
Fix up Config.in indentation while we're at it.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Copy of the glibc quadfloat intrinsics that gcc generates.
Signed-off-by: Konrad Eisele <konrad@gaisler.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Gcc patch that adds hfleon (fpu,v7), hfleonv8 (fpu, v8), sfleon (softfpu,v7),
sfleonv8 (softfpu,v8) SPARC variants. Default cpu is selected with --with-cpu.
Adds leon pipeline descrption to gcc.
Signed-off-by: Konrad Eisele <konrad@gaisler.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Add support for gcc configuration switch --with-cpu. Uses newly added
BR2_GCC_TARGET_CPU from the target config.
Signed-off-by: Konrad Eisele <konrad@gaisler.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
fix wrong configure symbol name for MTK.
remove default values from most of options and leave only
default y for NMEA protocol (90% of users will need this one)
and features for gpsd to reconfigure device.
Signed-off-by: Paulius Zaleckas <paulius.zaleckas@gmail.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Many systems support automatic zmodem transfers without needing to first
manually run the zmodem utils. But the expectation is to run `lrz` and
not `rz`. So install symlinks for lrz->rz and lsz->sz to support this.
This also includes a small fix to also remove sz when cleaning.
[Peter: use addprefix rather than patsubst]
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
For proper threading debug support, the libthread_db.so library cannot
be stripped on the target. This is because the target gdbserver will
also load up this library at runtime and poke around its symbols.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Acked-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Often times, the only reason /usr/share exists is because of documentation
installed into it. So once we're done cleaning the docs, attempt to rmdir
/usr/share. If it's empty, things will work out nicely.
[Peter: use make infrastructure to ignore errors rather than shell]
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Acked-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
The installed kernel modules should have useless build cruft stripped out
of them. On my system, a default build went from a very unreasonable 30MB
to a normal 3MB (on disk) and from 14MB to 3MB when compressed due to the
info stored in the kernel modules alone.
[Peter: don't hardcode binutils strip specific options]
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Use 'make install' for installation, add a patch to make it work for
static only builds, and add uninstall/clean targets while we're at it.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Use rootfs-* rather than *-root, to match the convention used under
package/ and which fits with the ROOTFS_*_ variables.
This will also help with the host dependencies.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Ensure host packages (dependencies of target packages) are also handled
by make source / make external-deps.
This has to be done a explicitly, as we don't list these in Kconfig,
and hence also not in a variable like TARGETS, so instead we have to
look at the <PKG>_DEPENDENCIES variables for each enabled package and
extract the host packages from there.
Host packages can in turn also have dependencies, so we have to follow
those as well. Ideally this should be done recursively, but as that's
pretty hard to do in make, it is limited to 1 level for now.
Finally, host packages share source files with target packages, so
pipe output of make external-deps through sort -u to ensure duplicates
are removed.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Closes#2785
If only ubi* is selected, libmtd.a wouldn't get built breaking the build.
Based on patch by Patrick Ziegler <patrick.ziegler@fh-kl.de>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Patches shouldn't be committed to the top level, and that is where
`git format-patch` typically operates, so ignore that stuff.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Acked-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Since the top level takes care of stripping for us, and some file formats
cannot be stripped safely (like FLAT which will error out), simply punt
the manual stripping from the gdb package.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Acked-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
3.11 fails to configure/compile for my host (F14) due to bug
in ax_enable_builddir.m4
Signed-off-by: Paulius Zaleckas <paulius.zaleckas@gmail.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
The -e test will dereference the symlink, so if there is no /bin/init,
we will constantly try to create the symlink. So rather than error on
subsequent runs when the link exists, use the force flag to ln.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Acked-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Linux has been using "usr/initramfs_data.cpio" for a few releases as the
generated cpio name, so the buildroot match of "...cpio.*" won't actually
clean out the previous result.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Acked-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Closes#2737
Use PATH_MAX rather that 128 for path buffers. Patch from kernel 1408b15b98
(kconfig: Use PATH_MAX instead of 128 for path buffer sizes) by Will Newton.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Closes#2731
Bootloader and Linux kernel steps can add content to the rootfs, so ensure
the cleanup / postprocess steps are moved after those.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Normally these aren't needed, and some of them (mkdgifft) needs C++
support.
Alternatively we could add an option (depending on HAVE_DEVFILES) to
build these.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
This fixes runtime/compilation problems seen with directfb 1.4.10.
Signed-off-by: Lionel Landwerlin <llandwerlin@gmail.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Add a new TCP/UDP network testing tool, that provides some advanced
features compared to ttcp.
[Peter: cleanup, fix FLAGS, move to network]
Signed-off-by: Yegor Yefremov <yegorslists@googlemail.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Also, changed the site to Debian, to get the latest patches
Signed-off-by: Martin Banky <Martin.Banky@gmail.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
We're using an ancient uclibc specific snapshot, and should rather focus
on moving our util-linux package forward.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
When installing TinyX to target create /usr/bin/X symlink
to Xfbdev as it is the only TinyX driver we build.
This makes utils like startx happy :)
Signed-off-by: Paulius Zaleckas <paulius.zaleckas@gmail.com>
Acked-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
The configuration cache shared between packages, while being in
principle a nice idea to speed-up the configuration of packages by
avoiding repetitive identical checks, turned out to be unreliable due
to the subtle differences between similar but not identical checks in
different packages. After spending some time trying to fix those, we
concluded that supporting the shared configuration cache is definitely
too hard and too unreliable, and that we'd better get rid of it
altogether.
This patch therefore removes the shared configuration cache
infrastructure and usage.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
This new release avoids problems when running autoreconf.
Signed-off-by: Lionel Landwerlin <llandwerlin@gmail.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
alsa support needs pcm+mixer support in alsa, but this isn't checked by
configure, so do it in the .mk instead.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
This used to be needed when the filesystem code was rewritten, but not
the Linux compilation code. Now that the Linux compilation code has
been rewritten, the mechanism to ensure that initramfs gets built
*before* the kernel so that it can be integrated is different, and
this INITRAMFS_TARGET variable is no longer used.
See f507921d39 for details.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Wget's builtin default of 20 retries before the backup site is used is
pretty excessive when a server is down.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Closes#2767
lsof compile breaks if CFLAGS overridden in 'make' command line
which is the case since buildroot-2010.08.
lsof has a partial fix for this already in the form of the
'LSOF_CFLAGS_OVERRIDE=1' configure option; however this only
fixes the problem in the generation of the Makefile for liblsof.
This patch does two things: it extends the 'LSOF_CFLAGS_OVERRIDE=1'
configure option to also cover the main Makefile; it also patches
lsof.mk to make use of the LSOF_CFLAGS_OVERRIDE option.
Signed-off-by: Andy Gibbs <andyg1001@hotmail.co.uk>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
mplayer needs pcm+mixer support in alsa, but this isn't checked by
configure, so do it in mplayer.mk instead.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
It seems that target-specific variables don't mix with target rules.
Thanks to Yann for helping debugging the issue.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Some packages use the buildroot version string (to set their own version
string). Computing the version string globally will makes it easy for
them to use it instead of re-computing it in every packages.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
This re-instates writing the version string in .config headers, and no
longer provides it as a kconfig symbol in .config (it is now a variable
in the Makefile, and in the environment).
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
After libgtk was bumped to 2.22.0 default loacation of
pixbuf loaders cache changed.
Use --update-cache flag for gdk-pixbuf-query-loaders
which does waht we need.
Signed-off-by: Paulius Zaleckas <paulius.zaleckas@gmail.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
We've had objective C support in the tree for many years, but somehow
the BR2_GCC_CROSS_OBJC option (similar to the other BR2_GCC_CROSS_*
options) has disappeared.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Default HOST_CFLAGS to -O2, so host tools (like the cross compiler) are
built with optimization by default.
Based on a patch by Will Newton <will.newton@gmail.com>.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
The current DocType declaration was incorrect. It is neither xhtml strict nor
xhtml transitional. So, instead of dealing with that issue, converted it to
validated Html5.
Fixed white-space errors.
Removed validator html4.01 code.
Color corrected the code sections.
Removed redundant or useless html code.
Changed foo to libfoo, for consistency.
Changed page bookmarking to use header id's.
Re-flowed paragraphs to line break at 80 characters.
Re-formatted the code sections for consistency and correctness.
Kept all list items, headings, and href's on a single line (where possible).
Signed-off-by: Martin Banky <Martin.Banky@gmail.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
The current DocType declaration was incorrect. It is neither xhtml strict nor
xhtml transitional. So, instead of dealing with that issue, converted it to
validated Html5.
Fixed white-space errors.
Removed validator html4.01 code.
Color corrected the code sections.
Removed redundant or useless html code.
Changed foo to libfoo, for consistency.
Changed page bookmarking to use header id's.
Re-flowed paragraphs to line break at 80 characters.
Re-formatted the code sections for consistency and correctness.
Kept all list items, headings, and href's on a single line (where possible).
Signed-off-by: Martin Banky <Martin.Banky@gmail.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Fixed indents, and removed redundent specifers and trailing spaces.
Signed-off-by: Martin Banky <Martin.Banky@gmail.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
This patch was introduced in 0ec4298153
to fix a problem in libglib configure script when using the
configuration cache.
However, we decided that the shared configuration cache cannot work
reliably, to disable it by default, and probably to remove it
altogether. So just drop this patch, and don't autoreconfigure
libglib.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Finally, we bump Gtk from the old and ancient 2.12 version to the
latest 2.22.0 version currently available.
The DirectFB support is Gtk 2.22 compiles again thanks to the work of
Lionel Landwerlin (it was broken in every Gtk version between 2.12 and
2.20). Therefore, Gtk on DirectFB is no longer marked as deprecated.
In addition to this, we :
* Upgrade the "reduce-dependencies" patch
* Remove the "configure" and "no-tests" patches which do not seem to
be useful anymore
* Add a libtool patch
We also remove references to a non-existant 2.15 gtk version in
libgtk2.mk.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Closes#2707
It's not only for kernel headers, and the kernel headers .mk file
isn't included for crosstool-ng toolchain, which broke linux/u-boot/..
builds.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
It hasn't been updated since it got added (in 2008), and it doesn't
build for me, so mark it as deprecated.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
help2man doesn't work when cross compiling, as it wants to run
./program --help, so ensure torsmo doesn't try to use it.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Ensure libpng gets built before prboom so configure finds it, and fix
build with libpng 1.4.x (NULL defines removed).
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Now that libmpd.mk has been converted to autotools infrastructure, the patch is
no longer needed. Autotools will automatically apply the needed patch.
Signed-off-by: Martin Banky <Martin.Banky@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Now that freetype.mk has been converted to autotools infrastructure, the patch
is no longer needed. Autotools will automatically apply the needed patch.
Signed-off-by: Martin Banky <Martin.Banky@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Now that expat.mk has been converted to autotools infrastructure, the patch is
no longer needed. Autotools will automatically apply the needed patch.
Signed-off-by: Martin Banky <Martin.Banky@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
There are two versions of ltmain.sh in use in the buildroot system, 1.5.x and
2.2.x. buildroot-libtool.patch would only patch 1.5.x, which meant that for
2.2.x, a separate patch for the affected package had to be maintained. Modified
Makefile.autotools.in to check the version of ltmain.sh and apply the correct
patch.
Signed-off-by: Martin Banky <Martin.Banky@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The code that was removed only added commented out code. It neither added
needed code nor commented out existing code.
Signed-off-by: Martin Banky <Martin.Banky@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Purely cosmetical.
Structure package like the other autotarget packages, and use
DIRECTFB_{CONF_OPT,DEPENDENCIES} right away instead of a number
of extra variables.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
The recent libpng bump broke png support in directfb, as it relied
on the legacy 1.2 interface. Fix it by bumping the directfb version,
and at the same time ensure that configure finds our cross-libpng-config
rather than what the host version the user might have in the path.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
program-transform-name='s,,,' is needed, otherwise configure defines it
as $(platform)-$(cpu)-. During install, all executables are prepended
with this variable.
[Peter: disable libtool patch, remove unneeded/wrong staging install cmd]
Signed-off-by: Martin Banky <Martin.Banky@gmail.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Buildroot as a whole is under GPL, so lets not expand each .mk file with
legal matter. The git history nicely shows the origin of each file, and
after the conversion to autotargets there basically isn't anything
left of the original file anymore.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
These are probaly out of date by now, and lack of special handling for
avr32 doesn't mean that a package won't work on avr32, so remove them.
Done by sed -i '/comment.*no inherent support for AVR32/{N;N;p}'
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Change the site location to debian mirror to get the latest debian patches.
Signed-off-by: Martin Banky <Martin.Banky@gmail.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
And all the infrastructure surrounding it. A broken sed implementation
is quite rare nowadays, as seen by the fact that the current host-sed
support has been broken for a while, so just get rid of it.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Using two '=' for string comparison is a bashism.
Revert to using one, as stated in POSIX 1003.1-2008.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Using two '=' for string comparison is a bashism.
Revert to using one, as stated in POSIX 1003.1-2008.
Of the three affected scripts, two are explicitly called vi #!/bin/bash.
Those two do not _need_ the fix, but gets it nonetheless, in case we
later switch to a POSIX-compliant shell for those scripts.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Using two '=' for string comparison is a bashism.
Revert to using one, as stated in POSIX 1003.1-2008.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Using two '=' for string comparison is a bashism.
Revert to using one, as stated in POSIX 1003.1-2008.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
The top-level Makefile can be executed in parallel, as it causes problems.
We can force make to be not parallel.
It's been reported many times, and recent discussions on IRC with kos_tom,
and user nick-named knee, led to this patch.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Acked-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Also, added acpi_listen to the target. It was being stripped, but not
copied.
acpi_listen is a simple shell-friendly tool which connects to acpid and
listens for events. When an event occurs, acpi_listen will print it on
stdout.
[Peter: no strip, install/remove man pages, add uninstall]
Signed-off-by: Martin Banky <Martin.Banky@gmail.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
[Peter: no strip, remove _BINARY vars, add homepage URL]
Signed-off-by: Martin Banky <Martin.Banky@gmail.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Some Linux kernel output image formats are available on some archs,
some not. For example 'uImage' is not supported on MIPS, so let's
prevent the user from making this selection.
Issue initially reported by Choi, David <David.Choi@Micrel.Com>.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The recent conversion to new-style hooks didn't actually enable the
xauth tweaking. Also rename to FIX_XAUTH as it just tweaks the path,
it doesn't disable anything.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
[Peter: remove stripping, get rid of _BINARY variables]
Signed-off-by: Martin Banky <Martin.Banky@gmail.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Use make install to install so we get libraries and man pages if enabled,
install into staging so other programs can find libsensors and add kconfig
options for each of the available programs.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
- We have gconfig as well nowadays
- Variables like BUILDROOT_DL_DIR can also be set permanently in the
environment, and not just passed to make every time.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Now that <pkg>_INSTALL_TARGET_OPT always defaults to
'DESTDIR=$(TARGET_DIR) install', we can remove the
<pkg>_INSTALL_TARGET_OPT definition from a lot of packages.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Many packages using the AUTOTARGETS infrastructure do not support the
install-strip target. Moreover, we are already stripping all binary
files in the $(TARGET_DIR) anyway, so using install-strip is a bit
useless.
So, we use "make install" in all cases, and let Buildroot do the
stripping of the binaries if BR2_ENABLE_DEBUG is not set.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The thttpd build system isn't safe for parallel makes, as sometimes
match.o isn't built by the time it is referenced.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
If building out-of-tree, add a Makefile wrapper that calls-out to the real
Makefile with proper args.
Avoids having to pass -C and O= every time we call make.
This is highly inspired from how the Linux kernel does it, and portions of
it have been used. We can't use exactly the same implementation as the
kernel does, because:
- the script writing the wrapper has been expunged of the few lines
that were too kernel-related: in buildroot we do not need the version
string in the wrapper, and we do not have a patchlevel version;
- "in-tree build" does not have the same meaning for the kernel and for
buildroot: for the kernel, $(O) point to the $(TOPDIR), while for
buildroot $(O) points to $(TOPDIR)/output.
For more complete explanations, see:
http://lists.busybox.net/pipermail/buildroot/2010-September/037815.html
[Peter: minor tweaks]
Signed-off-by: "Yann E. MORIN" <yann.morin.1998 at anciens.enib.fr>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
[Peter: fix build with locale, pass LDFLAGS, simplify install]
Signed-off-by: Martin Banky <Martin.Banky@gmail.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
[Peter: pass LDFLAGS, remove manpages, get rid _BINARY vars only used once]
Signed-off-by: Martin Banky <Martin.Banky@gmail.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
It's ancient (+5yrs), no upstream and stuff like this is better handled
through mdev/udev nowadays.
It will be removed after 2010.11 unless someone complains.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
[Peter: cleanup build, install and uninstall targets]
Signed-off-by: Martin Banky <Martin.Banky@gmail.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Use install -D so it doesn't fail if usr/sbin doesn't exist, remove
unneeded stripping and move target cleanup to _UNINSTALL_TARGET_CMDS.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Install into target as well, and use install -D instead of cp, to handle
missing usr/include / usr/lib.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Closes#2521
Disable plugins with dependencies we don't have in BR / aren't enabled, so
the configure script doesn't get confused if they are installed on the
host. Also enable ogg/libmad support if enabled in BR.
Notice: flac support is disabled for now as the sdl_mixer configure script
doesn't work when cross compiling.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Convert iproute2 to gentargets and bump to version 2.6.35.
[Peter: Small fixes to uninstall]
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Also added additional options for ntp and fixed a build issue when
IPv6 support is not available.
[Peter: small tweaks]
Signed-off-by: Martin Banky <Martin.Banky@gmail.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Commit 993e51bc22 introduced a problem
to compute <PKG_NAME>_VERSION variable when PKG_NAME start with
'HOST_'.
Signed-off-by: Lionel Landwerlin <llandwerlin@gmail.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Using "make -j $(N)" with N > 1 sometimes breaks zlib build.
Signed-off-by: Lionel Landwerlin <llandwerlin@gmail.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
udev is hidden by default (because of BR2_PACKAGE_BUSYBOX_SHOW_OTHERS),
but other packages (hal + usbmount) tries to select it, which gives
warnings if it isn't visible.
To fix this, simply make it always visible. To call mdev an equivalent
of udev is also stretching the truth anyway.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Fix install into staging (YES instead of yes), fix uninstall target,
use default target-install handling, install headers/lib/man pages into
target if requested.
A small patch is needed for 'make remove' to work.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Init scripts are only run if they are prefixed with S??, and dmraid gets
installed into /usr/sbin, not /sbin.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
It contains a bunch of semi-random aliases confusing users, and sets
a bunch of environment variables which are already provided by bash by
default.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
When initramfs was not selected as a root filesystem, we forcefully
disabled the initramfs in the kernel configuration.
However, it prevents an user from manually managing its initramfs, as
we override the option he has set in his kernel configuration
file. There's no real reason to do so: when initramfs is not selected
as the root filesystem, just don't touch initramfs related options in
the kernel configuration.
Problem reported by Sergey Naumov <sknaumov@gmail.com>.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
The new DL_MODE variable dispatches between the various download
implementations of each method (Git, Subversion, Wget) to deal with the
normal download (default mode, 'DOWNLOAD'), the source-check
('SOURCE_CHECK') and to show the external dependencies for external-deps
('SHOW_EXTERNAL_DEPS').
For the latter, the legacy script wget-show-external-deps.sh is no
longer required as $(WGET) isn't called directly anymore but always
through the DOWNLOAD helper.
Signed-off-by: Maxime Petazzoni <maxime.petazzoni@bulix.org>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Now that the generic download method supports Subversion, fall back to
the normal usage of AUTOTARGETS for libsvgtiny.
Signed-off-by: Maxime Petazzoni <maxime.petazzoni@bulix.org>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Now that the generic download method supports Subversion, fall back to
the normal usage of AUTOTARGETS for Tremor.
Signed-off-by: Maxime Petazzoni <maxime.petazzoni@bulix.org>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Packages can now be sourced from Git and Subversion repositories. The
download method will be autodetected from the URI (git://, svn://, etc).
If the repository is accessed through http(s), you can force the
download method by setting a _SITE_METHOD variable to either 'git' or
'svn', respectively and without the quotes.
The package's _VERSION variable defines which commit, revision, tag or
branch should be checked out. For Git, it can be HEAD, a commit ID, a
tag name or branch name (anything that can be checked out with `git
checkout`). For Subversion, it must be a revision number, or HEAD.
Signed-off-by: Maxime Petazzoni <maxime.petazzoni@bulix.org>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
It's not really necessary to differenciate the commands for checking out
or updating a repository. Only the path to the binary and eventual
top-level flags are useful to configure.
Signed-off-by: Maxime Petazzoni <maxime.petazzoni@bulix.org>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
In preparation for the re-work of the DOWNLOAD helper to support
multiple download methods and protocols, the spider feature used with
wget is removed for now until it is re-implemented on top of the new
download methods.
Signed-off-by: Maxime Petazzoni <maxime.petazzoni@bulix.org>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Microwin is disabled in Buildroot since January 2007
(726abd4e51) and nobody
complained. Moreover, the upstream project hasn't done any release
since five years, so let's remove this package, as announced in the
notes of 2010.08 release.
The project maintainer has announced in June 2010 that he is working
again on the project, and he has switched to Git. When a new release
is done, we can re-introduce it if people need it (this old package
needed serious work to be converted to the new package infrastructure
anyway).
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The Gtk 1.x is now very old, and Gtk 2.x has been around for a long
time now. Besides Dillo that just got removed, we no longer have any
package that depend on Gtk 1.x.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
This version of Dillo, based on Gtk 1.x is no longer maintained.
If someone needs the newer version of Dillo, we'll have to package
FLTK2 first.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Now that all old-style hooks occurences have been converted to
new-style hooks, let's get rid of the code needed to support old-style
hooks from the package infrastructure.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The target installation step is removed, as the default 'make install'
already does the correct thing.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
For the target installation step, do not rely on the package being
installed in the staging directory, as it may not be true. So the
dmraid binary is directly taken from the build directory.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
We don't want to use 'make DESTDIR=$(TARGET_DIR) install' as we only
want the MIME database to be installed on the target. So we simply
override the target installation command.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Also add option to build example and demo code
[Peter: fix patch handling]
Signed-off-by: Paul Jones <paul@pauljones.id.au>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Sleepycat is now owned by oracle so the old site is gone.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Add option to disable reverse DNS lookups on client connection, as
connections otherwise stall until DNS times out in configurations without
working reverse DNS.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
We use BR2_*, not CONFIG_* - So remove references to CONFIG_ in search/help
windows.
Long term we should probably consider doing s/^BR2_/CONFIG_/ to get rid
of all this though.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
The previous commit has removed calls to conf_write_autoconf(), which
is the function that generates the KCONFIG_AUTOCONF,
KCONFIG_AUTOHEADER, KCONFIG_TRISTATE files and the split config (with
one file per config item). Therefore, those things were not generated
anymore before the build.
In order to get them generated before the build, we use the same
mechanism as the kernel: run a silentoldconfig when the .config file
is newer than the KCONFIG_AUTOCONF file.
In Buildroot, all those elements are not really used today, except the
split config which is used a little bit in the toolchain build, in a
try to make sure the toolchain gets rebuilt properly when the
configuration changes. It does not seem that this work has been
completed.
However, as we want to keep the same behaviour as previously, we have
to generate all those elements before starting the build.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
savedefconfig allows to create a minimal defconfig file from an
existing configuration. For example :
make O=/path/to/some/buildroot/build/directory savedefconfig
will generate a minimal 'defconfig' file in the main Buildroot source
directory.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Instead of duplicating the definition of KCONFIG_AUTOCONFIG,
KCONFIG_AUTOHEADER and BUILDROOT_CONFIG, let's define them in a
COMMON_CONFIG_ENV variable, which is used by all the xconfig, gconfig,
menuconfig, nconfig, config, oldconfig, randconfig, allyesconfig,
allnoconfig, randpackageconfig, allyespackageconfig,
allnopackageconfig, defconfig, %_defconfig targets.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Those hacks should not be needed and they even make "mconf" fail to
save the configuration file in $(CONFIG_DIR).
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The goal is to be able to use savedefconfig to generate minimal
defconfig files.
Four of our patches are removed since the modifications have been
merged upstream. The new nconf configuration utility has appeared.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Our kconfig-to-buildroot2.patch hasn't been kept up to date with all
the changes made into package/config, and a single patch wasn't very
practical to maintain all our changes. Therefore, this commit adds a
package/config/patches directory, which contains a Quilt series of
patches that correspond to our modifications to the kconfig mechanism.
The huge kconfig-to-buildroot2.patch has been split into 16 smaller
patches. The purpose of some of the modifications has been clearly
identified, while some others were not identified.
The 16 patches together do match exactly the old
kconfig-to-buildroot2.patch. We have been very careful in making sure
that we wouldn't loose any of our modifications.
The only modifications made are :
* Instead of renaming the kernel Makefile to Makefile.kconfig and
naming the Buildroot Makefile just 'Makefile', we instead keep the
original package/config/Makefile from the kernel
scripts/kconfig/Makefile and name the Buildroot Makefile
package/config/Makefile.br. The main Buildroot Makefile is modified
accordingly.
* The documentation README.buildroot2 is updated to explain how to
upgrade to a newer version of scripts/kconfig.
* The kconfig-language.txt documentation is removed, as anybody can
easily find it in the kernel sources so there's no need to
duplicate it here.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
There's no need to have a .defconfig, when you run make menuconfig,
make xconfig or anything else for the first time, it will just start
with the default configuration anyway. This is what the kernel does.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
It's deprecated upstream (merged in prboom), not updated in years and
broken (uses host includes / missing dependencies), so remove it.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Set image file permissions to 0644 like it was before the fs rework,
instead of the rather unhelpful 0700 (E.G. when image is used for tftp).
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
The Alpha, CRIS, IA64 and Sparc64 architectures have been marked as
deprecated during the previous release cycle. They are not widely used
in embedded systems and/or no longer supported by their manufacturers
and/or not properly supported in Buildroot.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Recent versions of ldconfig require the directory /var/lib/ldconfig,
otherwise they bail out with an error. Moreover, having a
/etc/ld.so.conf file also avoids a warning.
In addition to this, we remove the redirection of stderr, so that
errors remain visible to the user.
Thanks to Baruch Siach, Andy Gibbs and Darcy Watkins for investigating
the issue and proposing solutions.
This fixes the build on recent distributions such as Fedora 13 or
Gentoo.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Remove alpha channel and limit number of colors used. This gets the images
down to ~37% of their previous size without any visual degrading (in fact
it now looks correctly on ancient IE versions with broken png alpha
handling).
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Random package configuration can trigger the selection of kismet, but
neither of client, server or drone suboptions. In this case, the
KISMET_TARGET_BINARIES variable is empty, leading to failure during
the installation stage.
At the same time, we remove the useless stripping of the installed
binaries, since this is done globally by the Buildroot infrastructure.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The patch introduced by commit
1ed2e4fffd must also be added to gcc
4.2.2 to let the AVR32 toolchain build properly.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The option was removed from Config.in in 58508f39c (ncurses: remove
dedicated target-headers option), so remove it from the makefile as
well.
Reported-by: Ian <reg-ian.ridley-buildroot@hydrix.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Pango was recently updated to v1.28 as a dependency of webkit, but its
freetype support has unfortunately been rewritten with parts in C++
(since pango 1.25), so adjust dependencies of pango and users of it to
require C++ support.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
A typo was introduced in e6c4ce6c (luafilesystem: remove LARGE_FILE
constraint), breaking the build when largefile support was enabled.
Reported-by: Marcus Osdoba <marcus.osdoba@googlemail.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Based on patch by Will Wagner <will_wagner@carallon.com>.
Now that the .config is located in the output directory when O=<dir>
is used, we have to pass the O= option to make for
source/source-check/external-deps to get them to look in the right place
for the .config.
Fix it by introducing an EXTRAMAKEARGS variable and use it whenever we
call back into the toplevel Makefile.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
In pppd.mk the radattr.so plugin (for radiua) is installed twice (the second
install overwriting the first) but the radrealms.so plugin is omitted from
the install. This appears to be a copy-paste error.
Below is patch that corrects this.
signed-off by: Darcy Watkins <dwatkins@tranzeo.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
It doesn't build as there's no dependency on openssl, and it hasn't seen
any real updates since it got added in 2006, so simply remove it.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
The proftpd build system has a race condition, which may break the build
with high -j<level> values (libsupp.a isn't built by the time it is needed).
Fix it by using MAKE1 instead.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
qt's configure script is getting confused now that we're passing --sysroot=
in QMAKE_CC / QMAKE_CXX, causing misdetection of features and runtime
breakage.
Fix it by passing --sysroot in CFLAGS/CXXFLAGS instead.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
sysvinit Makefile checks if /usr/lib/libcrypt.a exists to determine
whether it should link against libcrypt or not. This test fails on
distributions such as Fedora, in which /usr/lib/libcrypt.a does not
exist (it is in /usr/lib64), but where libcrypt is available on the
target. As libcrypt is available in both uClibc and gclibc, we just
force sysvinit to link against libcrypt.
Fixes bug #2401.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
We were passing a custom MYCFLAGS value to Lua's Makefile, but because
of $(TARGET_CONFIGURE_OPTS), we were also passing a CFLAGS variable,
which was overriding Lua's internal CFLAGS variable. The result was
that MYCFLAGS wasn't taken into account.
Extracted from the patch proposed by François Perrad in bug #2353.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Add a patch to luafilesystem so that it builds correctly when large
files are not supported. This allows to remove the dependency of
luafilesystem on large file support on the toolchain. Packages such as
cgilua, wsapi and xavante, which depend on luafilesystem, also get
their dependency on large file support removed.
Fixes bug #2359.
Signed-off-by: Francois Perrad <francois.perrad@gadz.org>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Acked-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Several new upstream patches against the latest version of Lua have
appeared on http://www.lua.org/bugs.html. This commit adds them to
Buildroot, and also renames the other patches to have a coherent patch
naming: lua-bugX, where X is the identifier of the bug as visible on
http://www.lua.org/bugs.html. Note that bug 1 and 2 are not associated
with patches, which explains why the first patch is labeled lua-bug3.
Fixes bug #2365.
Signed-off-by: Francois Perrad <francois.perrad@gadz.org>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
libxml-parser-perl and intltool were originally added to be built on
the host, and we don't support building them on the target. So, let's
mark them as such in the configuration, so that a random package
configuration does not pick them up. We might later add target support
for them.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
When the configuration cache has been filled with a value for
ac_cv_host, host-lzo fails to detect the target system name. This is
due to misbehaving code in the ./configure script. Therefore, we need
to autoreconf the package, which in turn requires :
* a little fix to the configure.ac file
* a little fix to src/Makefile.am
* an extraction of important parts of aclocal.m4 into acinclude.m4
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The test for clock_gettime() in configure.in doesn't work properly
when a previous package has loaded the shared configuration cache with
informations about the availability of clock_gettime. A package such
as ctorrent does so, which means that compiling ctorrent *then*
libglib2 currently fails.
According to people on the Autoconf mailing list, the libglib2 test is
likely the one that needs to be fixed. The problem is that the
AC_CHECK_FUNCS() test assumes that if it finds clock_gettime() it
means that there's no need to add any -lrt flag to the
build. Unfortunately, due to the shared configuration cache, this test
is already done with -lrt, so the test succeeds, and libglib2 does not
know that it needs to add -lrt to G_THREAD_LIBS and
G_THREAD_LIBS_FOR_GTHREAD.
So instead, we remplace the test with an AC_SEARCH_LIBS() test,
followed by a test on the result of this AC_SEARCH_LIBS() test to add
the necessary -lrt to G_THREAD_LIBS and
G_THREAD_LIBS_FOR_GTHREAD. Therefore, even if the result for the
AC_SEARCH_LIBS() test is cached due to the prior execution ctorrent
./configure script, libglib2 ./configure will properly add -lrt to the
appropriate variables.
Obviously, as this patch modifies the configure.in file, we enable the
autoreconf step for the libglib2 package.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
For some reason, the imagemagick Buildroot .mk file creates a
"datefile" file in the Buildroot source directory, probably an ancient
debugging thing that has been left here for no reason. Let's get rid
of it.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The problem fixed by 60f945e47a is in
fact not limited to the AVR32 architecture, as reported by Will Newton
on the list. The issue is the combination uClibc 0.9.31 with gcc 4.2,
C++ support and locales.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The CRIS architecture support in Buildroot hasn't been updated since a
long time. Even a toolchain with recent kernel headers does not build
due to missing patches.
Moreover, the CRIS architecture has been discontinued by Axis, as
visible at http://www.axis.com/products/dev/index.htm. We will remove
it from Buildroot at the next release cycle.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Check in toolchain/dependencies/dependencies.sh if an UTF-8 locale is
properly present on the system before trying to build a locale enabled
toolchain. As this test is only needed when a locale enabled toolchain
is going to be built, we pass the configuration file path to the
dependencies.sh script so that it can grep for the current value of
various options.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
util-linux can build without ncurses, but when ncurses is available,
additional features can be built (such as the more
command). Therefore, in util-linux.mk, when ncurses is available, mark
it as a dependency.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
As reported in bug #635, util-linux doesn't build due to missing
constant definitions related to the a.out binary format. We fix this
by hardcoding these constant definitions, as done in newer versions of
util-linux.
Obviously, the long term fix is to upgrade to util-linux-ng, but this
is probably not acceptable for 2010.08.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* Remove $(TARGET_DIR)/usr/share/aclocal from target-finalize when not
installing devfiles and
* Remove some (now) redundant cleanup from individual packages
Signed-off-by: Malte Starostik <m-starostik@versanet.de>
Acked-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
The <tuple>/lib* symlinking added by 3c77bab2ee needs to
be moved up to the gcc-intermediate step now the NPTL stuff is merged,
otherwise 64bit builds fails (lib64 already created).
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Since 5575d205c (toolchain: remove multilib) we were no longer passing
--disable-multilib, which broke builds for multilib-capable archs (like
x86-64, ppc, ..).
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
The iconv library can only be present when locale are disabled in the
toolchain. When locale are enabled in the toolchain, iconv is directly
implemented by the C library.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The ./configure script of libcurl includes <arpa_inet.h> instead of
<arpa/inet.h> when testing for inet_pton(). The test fails, but it
doesn't prevent libcurl to build as it can work without inet_pton().
However, it fills the configure cache with the fact that inet_pton()
does not exist. And later, tcpreplay reads this from the configure
cache and fails to build, because tcpreplay really need inet_pton().
Unfortunately, just fixing the .m4 file doesn't work because the
autoreconfiguration of the package fails. Since the fix for this
problem is already upstream, the easiest solution is therefore to bump
libcurl.
The libcurl-7.19.2-fix-ssl-no-verbose.patch patch is no longer needed.
Since we're patching a m4 file, we must autoreconfigure the package.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
It fails to build with:
ctype_members.cc: In constructor 'std::ctype_byname<_CharT>::ctype_byname(const char*, size_t) [with _CharT = char]':
ctype_members.cc:59: error: invalid use of incomplete type 'struct __uclibc_locale_struct'
/home/test/avr32-br/usr/avr32-unknown-linux-uclibc/sys-include/bits/uClibc_locale.h:85: error: forward declaration of 'struct __uclibc_locale_struct'
ctype_members.cc:60: error: invalid use of incomplete type 'struct __uclibc_locale_struct'
/home/test/avr32-br/usr/avr32-unknown-linux-uclibc/sys-include/bits/uClibc_locale.h:85: error: forward declaration of 'struct __uclibc_locale_struct'
ctype_members.cc:61: error: invalid use of incomplete type 'struct __uclibc_locale_struct'
/home/test/avr32-br/usr/avr32-unknown-linux-uclibc/sys-include/bits/uClibc_locale.h:85: error: forward declaration of 'struct __uclibc_locale_struct'
make[5]: *** [ctype_members.lo] Error 1
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
As soon as PostScript, PNG or SVG support is enabled, PDF support is
required for Cairo to build properly. Otherwise, you get build
failures such as:
.libs/cairo-type3-glyph-surface.o: In function `_cairo_type3_glyph_surface_set_stream':
/home/thomas/local/buildroot-dl/cairo-1.8.10/src/cairo-type3-glyph-surface.c:337: undefined reference to `_cairo_pdf_operators_set_stream'
/home/thomas/local/buildroot-dl/cairo-1.8.10/src/cairo-type3-glyph-surface.c:337: undefined reference to `_cairo_pdf_operators_set_stream'
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Just as we do for U-Boot, error out in the Linux kernel makefile when
the defconfig name or the configuration file path are not
correct. What prompted me to implement this was a report on IRC from
an user using BR 2010.05 and not understand why the kernel build
process was failing. It was because he just forgot to set the path of
the configuration file.
Of course, it doesn't catch all mistakes (like pointing to a
non-existing defconfig or to a non-existing configuration file), but
it at least catches basic mistakes.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
When U-Boot is enabled and no custom patch directory has been set,
then the current test:
ifneq ($(strip $(BR2_TARGET_UBOOT_CUSTOM_PATCH_DIR)),"")
works. However, when U-Boot is not enabled, but still gets compiled
because mkimage is needed to build the kernel,
BR2_TARGET_UBOOT_CUSTOM_PATCH_DIR is completely empty. It does not
even have quotes. So the test in fact needs to be:
ifneq ($(call qstrip,$(BR2_TARGET_UBOOT_CUSTOM_PATCH_DIR)),)
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
When SWAT (the Web administration tool of Samba) is enabled, which is
the default when one enables samba in Buildroot, a lot of
documentation gets installed in /usr/swat (~15 MB). This patch fixes
this by removing the documentation when BR2_HAVE_DOCUMENTATION is not
set.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The upstream version of speech-tools does not build with GCC >= 4.3,
mainly due to changes in how C++ headers are included. This is fixed
in Debian, so let's use the Debian version and patches.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
This is needed to avoid:
/home/test/mips-4.4/bin/mips-linux-gnu-ld --sysroot=/home/test/outputs/test-35/staging -shared --whole-archive -soname libdmallocxx.so -o libdmallocxx.so.t libdmallocxx.a
/home/test/mips-4.4/bin/mips-linux-gnu-ld: libdmalloc.a(arg_check.o): relocation R_MIPS_HI16 against `_dmalloc_flags' can not be used when making a shared object; recompile with -fPIC
It is fixed through a patch to Makefile.in instead of passing a CFLAGS
variable to ./configure environment in order to avoid cluttering the
configuration cache with incorrect values.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Also make the cpu counting routine more reliable (for ARM it's
"Processor" in cpuinfo rather than "processor").
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
This patch modifies current toolchain build sequence so that
NPTL enabled toolchain can be built. The new sequence works
well with linuxthreads as well.
It introduces a new pass for gcc cross compilation. The new
sequence is binutils->gcc-initial->linux-headers -> uclibc-configured
(some cheats to generate phony shared libc.so and libm.o)
-> gcc-intermediate(with shared lib support) -> uclibc -> gcc-final
I also added a new sample config arm_nptl_toolchain_defconfig which
builds the toolchain and busybox.
I have only tried it on arm. However it should work for other
architectures which support NPTL on uclibc e.g. mips, sh, x86, ppc, x86_64
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Since the reorganization of the variables in package/Makefile.in,
TARGET_CC and TARGET_CXX now directly contain the --sysroot= option in
addition to the compiler path. This is due to some ./configure scripts
using just $(TARGET_CC) for some tests instead of $(TARGET_CC)
$(TARGET_CFLAGS).
However, in the case of CMake, this fails as CMake really only wants
the path of the compiler in its CMAKE_C_COMPILER and
CMAKE_CXX_COMPILER variables. So here, we recompute proper values for
CMake by removing the --sysroot option from the compiler variables and
re-adding it to the flags variables.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
When libeXosip fails to use pkg-config to find libosip, it defaults to
thinking that libosip is installed in $(prefix)/lib and
$(prefix)/include, which is of course wrong. There was an attempt to
fix this by passing OSIP_CFLAGS and OSIP_LIBS variables to libeXosip
./configure script, but it still does not work:
checking pkg-config is at least version 0.9.0... ./configure: line 21035: /home/test/outputs/test-41/host/usr/bin/pkg-config: No such file or directory
no
checking for OSIP... configure: WARNING: assuming osip can be found in -I${prefix}/include and -L${exec_prefix}/lib
Therefore, the correct fix is to depend on host-pkg-config.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
This error should never show up if all Buildroot dependencies are
correct. However, rather than failing horribly later on, catch this
particular case early on and error out.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
All "select BR2_PACKAGE_LIBICONV" must use the "if !BR2_ENABLE_LOCALE"
condition, otherwise we can end up with a toolchain suppoting locales
*and* the libiconv package being compiled, which confuses other
packages. Example with glib:
gconvert.c:52:2: error: #error GNU libiconv in use but included
iconv.h not from libiconv
In addition to that, in xerces.mk, we add the dependency on libiconv
when it is available, to make sure it gets compiled before xerces.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The cross-gdb is supposed to be part of the external toolchain, so
Buildroot does not need to build it. Moreover, GDB_HOST build
currently fail with:
ln -snf ../../bin/arm-unknown-linux-gnueabi-gdb \
/home/test/outputs/test-48/staging/usr/arm-unknown-linux-gnueabi/bin/gdb
ln: creating symbolic link `/home/test/outputs/test-48/staging/usr/arm-unknown-linux-gnueabi/bin/gdb': No such file or directory
And even worse: they overwrite the cross-gdb of the external
toolchain!
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The current computation of REAL_GNU_TARGET_NAME is incorrect for
non-ARM glibc platforms because it generates something such as
mipsel-unknown-linux- as the REAL_GNU_TARGET_NAME.
So we correct this by :
* Adding "gnu" in the suffix when glibc is used, so that in the
previous case we will have mipsel-unknown-linux-gnu
* Improving the ARM_EABI code to correctly append "eabi" when glibc
is selected, so that we have arm-unknown-linux-gnueabi, and to
append "gnueabi" when uclibc is selected, so that we have
arm-unknown-linux-uclibcgnueabi. The little trick here is that LIBC
and ABI aren't completely orthogonal on ARM.
This fixes problems such as :
checking host system type... Invalid configuration
`mipsel-unknown-linux-': machine `mipsel-unknown-linux' not recognized
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
oprofile depends on binutils_target, but binutils_target fails to
build with external toolchains because the binutils version has not
been choosen. As the fix is not trivial, let's just disable oprofile
in external toolchain builds for the moment.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Now that two packages (tremor and libsvgtiny) are being downloaded
from svn, svn becomes a mandatory tool to run Buildroot.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The netsnmp package should depend on openssl when using it.
Otherwise netsnmp might get built before openssl and poison the
configure cache since it's not a mandatory dependency.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Supporting multilib is much more than just passing --enable-multilib
to gcc. You have to actually build the C library several times (once
for each multilib variant you want to support in your toolchain), and
to pass MULTILIB_OPTIONS/MULTILIB_EXCEPTIONS values to gcc to let it
know the set of multilib variants you're interested in.
Since we'll probably never support multilib toolchains in Buildroot,
just get rid of this BR2_ENABLE_MULTILIB option.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
This is a very advanced option, and it seems, according to
http://choices.cs.uiuc.edu/exceptions.pdf that SJLJ exceptions aren't
really interesting.
Users really interested by this can always use the
BR2_EXTRA_GCC_CONFIG_OPTIONS is they want.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Handle the internal toolchain backend mechanism the
same way we handle other backends.
Signed-off-by: Yann E. MORIN <yann.morin.1998@anciens.enib.fr>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Including a bunch of Makefiles with wildcard makes it impossible to add
new toolchain backends. Avoid that by namely including needed files.
The external toolchain still needs to include all the toolchain/*/*.mk
sub-makefiles, as they are needed to build a toolchain that runs on the
target. It is to be noted that the cross-toolchain is not built in this
case, as the make-targets to build the cross-toolchain are not present
in the $(BASE_TARGETS) variable, which is later used to create the
dependency rules.
Also, the comment 'Explicit ordering' has been removed, as it is mis-
leading. It is make's responsibility to create the proper ordering based
on the dependency rules it finds in the Makefiles
Signed-off-by: Yann E. MORIN <yann.morin.1998@anciens.enib.fr>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Rename the external toolchain directory.
When new backends are here, it will be easier to sort them out
if they are all prefixed the same way.
Signed-off-by: Yann E. MORIN <yann.morin.1998@anciens.enib.fr>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
The helper functions used for external toolchains may also be useful
to alternate toolchain backends (currently, the external toolchain is
the sole user).
Signed-off-by: Yann E. MORIN <yann.morin.1998@anciens.enib.fr>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
libgtk2 on DirectFB is deprecated because it is no longer supported in
recent versions of Gtk. We will remove support for Gtk over DirectFB
in the next Buildroot version unless support for DirectFB in mainline
Gtk is improved in the mean time.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Those architectures don't exist anymore (Alpha, IA64) or aren't widely
used for embedded systems running Linux. Moreover, no clear Buildroot
maintainer has stepped in to maintain these architectures, so it's
better to not pretend that we support them.
The goal is to mark them as deprecated in 2010.08 and remove them in
2010.11.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
This option is already part of the gcc configure options through the
BR2_CONFIGURE_BUILD_TOOLS variable (in toolchain/Makefile.in).
Additionnally, the value that was passed in the AVR32 specific case
was incorrect: it was $(STAGING_DIR)/$(REAL_GNU_TARGET_NAME)/bin
instead of $(STAGING_DIR)/usr/$(REAL_GNU_TARGET_NAME)/bin.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The variable BR2_SYSROOT_STAGING_DESTDIR is no longer used, since now
the prefix for gcc is already set to the correct location.
The variable BR2_SYSROOT_TARGET_DESTDIR was already unused.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The cross binutils and cross gcc are actually going to be executed
from $(STAGING_DIR)/usr, so the correct prefix is $(STAGING_DIR)/usr
and not /usr.
This also fixes what is known as the "AVR32 toolchain build failure",
which was due to the fact that the prefix directory wasn't writable
(since it was /usr).
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
This commit solves bug #1051. The problem in this bug in that WebKit
compiles a sample C program, which uses WebKit. As WebKit is written
in C++, even though the program it built with CROSS-gcc, it must be
linked with libstdc++. However, CROSS-gcc can't find the libstdc++ has
it's hidden inside <sysroot>/<tuple>/lib.
Therefore, this commit creates a symbolic link <sysroot>/<tuple>/lib
-> <sysroot>/lib before running the CROSS-gcc installation. While this
may look like a hack, this is the solution used by both Crosstool-NG
and OpenWRT.
Moreover, with this symbolic link in place, I think bug #1741 may also
be solved. The problem in this bug is that the linker tries to link
against /lib/libc.so.0. This is due to the fact that the linker finds
a libc.so script file in the original toolchain location and not
inside the copy of the toolchain sysroot in $(STAGING_DIR). As the
script file is found outside of the current toolchain sysroot, ld
considers the script has non-sysrooted, and therefore doesn't prefix
all paths found in the script file (such as /lib/libc.so.0) with the
sysroot path, leading to the failure.
So, in details, this commit :
* Adds a BR2_ARCH_IS_64 invisible config knob that is used to know if
the arch is a 64 bits architecture or not.
* Creates the <sysroot>/<tuple>/lib -> <sysroot>/lib symbolic link,
and the <sysroot>/<tuple>/lib64 -> <sysroot>/lib64 symbolic link if
needed.
* Fixes the external toolchain sysroot detection code so that the
'sed' replacement is done *after* the readlink -f evaluation.
I have tested this by building ARM, x86 and x86_64 toolchains with
Buildroot, and then use these toolchains as external toolchains to
build a full X.org/Gtk/WebKit/Midori stack. I have also done a
complete ARM Buildroot internal toolchain build with the same full
X.org/Gtk/WebKit/Midori stack.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
uClibc does not define pthread_getattr_np(), so we need to workaround
this using a patch.
Fixes bug #1405.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
xkeyboard-config is required to install keymap files to the target,
without which the X server does not start.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
All fonts are installed in /usr/share/fonts/X11 and not in
/usr/lib/X11/fonts/ where the X server looks by default.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
In order to get xkeyboard-config to build, it needs xkbcomp to be
built on the host, i.e host-xapp_xkbcomp. In turn, xapp_xkbcomp needs
xlib_libX11 and xlib_libxkbfile, which in turn need a few libraries.
This commit adds all the relevant dependencies to build everything
that is needed to get xkeyboard-config to build correctly.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Now that TARGET_CXX contains a --sysroot= option and therefore spaces,
it needs to be used with quotes.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Just as we did to fix target-gcc, pass CXX_FOR_TARGET when building
target g++, and remove useless copies of g++ and c++.
Tested on ARM by compiling a simple C++ program using <iostream> on
the target and running it.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
When doing the "make install" of target, three identical copies of gcc
are installed in $(TARGET_DIR)/usr/bin:
039adcc582c365f12ba6fc5f96098128 arm-unknown-linux-uclibcgnueabi-gcc
039adcc582c365f12ba6fc5f96098128 arm-unknown-linux-uclibcgnueabi-gcc-4.3.5
039adcc582c365f12ba6fc5f96098128 gcc
This patch removes the first two copies and keeps only the common "gcc" one.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Now that $(STAGING_DIR)/usr/bin is no longer in the PATH, we need to
pass the absolute paths to $(TARGET_CC) when building the target gcc
compiler.
This commit fixes the target gcc build problem reported on the list. I
have successfully been able to build a target gcc for ARM, use it to
compile a hello world application on the target and run this
application.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
This variable is used only once, so let's just hardcode its value at
its call site.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Make sure flex is built before at if enabled, so it correctly detects
it and doesn't populate tgt-config.cache with invalid values.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Make sure readline is built before gnuchess if enabled, so it correctly
detects it and doesn't populate tgt-config.cache with invalid values.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Like flex, diffutils doesn't NEED gettext/libintl, but it's configure script
checks for it, so make sure those a built before diffutils, otherwise it
will populate tgt-config.cache with invalid values, breaking the build of
other packages needing it (like libglib2).
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
It isn't worth the effort to convert these packages to the new package
infrastructure since they are deprecated.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Commit ed0d45fdd (Choose host/target ldconfig based on availability)
added a runtime check for a cross-ldconfig being available.
Unfortunately this checks runs too early (at package/Makefile.in parsing
time), so it always fails when using an internal toolchain as ldconfig
isn't built yet.
Fix it by moving the check to the only place it is used (target-finalize).
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
If BR2_PACKAGE_QT_AUDIO_BACKEND=y, QtMultimedia requires the audio backend
to be already in staging in order to compile.
The backend is system-dependent, but since buildroot builds Linux systems
only, it is safe to assume that the it will always be ALSA.
Signed-off-by: Luca Ceresoli <luca@lucaceresoli.net>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
We haven't had any updates to the java packages in a long time,
gcj in 4.3.x doesn't build, and 4.4.x is missing ecj1, so it cannot
have many users.
Mark it as broken and remove during the 2010.11 cycle, unless someone
steps up to maintain it.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Marvell boards like the sheevaplug needs a special .kwb image format,
so add an option for it similar to how we handle zImage/uImage/..
for the kernel.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Flex doesn't NEED gettext/libintl, but it's configure script checks for it,
so make sure those a built before flex, otherwise flex will populate
tgt-config.cache with invalid values, breaking the build of other packages
needing it (like libglib2).
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Rename it from wireless-tools to wireless_tools to match upstream.
Make it install manpages.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Otherwise the build breaks if the SDL package is enabled, as xserver's
configure script detects SDL support, but doesn't find our sdl-config
script, so linking fails.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
rand{,package}config enables configuration options with 50% probability,
which isn't always what we want in BR (because the "big" configs take a
long time to build and limits the chance of a randconfig detecting a
missing dependency), so introduce a KCONFIG_PROBABILITY environment
variable to tweak the probability between 0 (all options off) and 100
(all options on).
To use, simply set the environment variable before running make or pass
it on the make command line - E.G.
make randpackageconfig KCONFIG_PROBABILITY=10
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
gtk2 was released back in 2002, and gtk3 is almost ready - So deprecate
the old gtk12 stack. Unless someone complains, expect it to be removed
during the 2010.11 development cycle.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Pass CFLAGS as env rather than opt to allow the build system to tweak them.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
We already provide the correct CFLAGS/LDFLAGS at configure time, so don't pass them
again at make time, as this then overrides the extra CFLAGS (defines) in the Makefile.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
mplayer's configure script got confused by the equal sign (=) we now have
in TARGET_CC because of --sysroot=<path>.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Print a comment if largefile isn't available, and use select rather than
depends for the lua shared library option.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Print a comment if largefile isn't available, and use select rather than
depends for the lua shared library option.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
libdrm is only needed for the modular server, and as libdrm
needs largefile support and tinyx doesn't, this dependency could
cause a build failure.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
libpciaccess is only needed for the modular server, and as libpciaccess
needs largefile support and tinyx doesn't, this dependency could
cause a build failure.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Even though we pass a -I option to tell alsa-lib to look for Python
includes in the STAGING_DIR, alsa-lib build process still looks in
/usr/include for some stuff, causing bug #321.
This fix is the one suggested by Ulf Samuelsson in bug #321, and
allows to make alsa-lib with Python support to build properly on a 64
bits machine with python-dev installed on the host. Without this fix,
the build fails with exactly the same problem that Ulf reported.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Now that $(STAGING_DIR)/usr/bin is not in the PATH, we need to
explicit the path to such tools.
This might also fix bug 1393 since by expliciting the path to
xml2-config, we'll force neon ./configure to choose our xml2-config
and not the one of the host.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Decide whether to use the host or target ldconfig based on an
availability check instead of internal/external toolchain selection. An
external toolchain may very well provide an ldconfig while the host's
one may fail.
External toolchain generated by Gentoo crossdev:
$ LC_ALL=C i686-pc-linux-uclibc-ldconfig -r output/target/; echo $?
i686-pc-linux-uclibc-ldconfig: skipping /usr/lib: No such file or directory
0
vs. the host (x86_64-pc-linux-gnu) version:
$ LC_ALL=C /sbin/ldconfig -r output/target/; echo $?
/sbin/ldconfig: Can't open configuration file
output/target/etc/ld.so.conf: No such file or directory
/sbin/ldconfig: Can't open cache file /var/cache/ldconfig/aux-cache
: No such file or directory
1
Signed-off-by: Malte Starostik <m-starostik@versanet.de>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Make KCONFIG_{ENABLE,DISABLE,SET}_OPT match whole words only.
Fixes that BR_INET_IPV6 enables CONFIG_IPV6 in the kernel's
.config, but also nukes everything with "CONFIG_IPV6" in its name, e.g.
CONFIG_IPV6_PRIVACY. This in turn causes any IPv6 options in a custom
kernel .config to be lost and oldconfig going interactive.
Signed-off-by: Malte Starostik <m-starostik@versanet.de>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
The ps3 driver is enabled by default on ps3, but depends on spu support,
which most ppc toolchains don't have, so disable it.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
The post installation hook of SDL was not being executed, due to an
incorrect usage of the infrastructure. Moreover, it did not patch
prefix/exec_prefix in sdl-config as is needed. In addition to that, we
remove the -Wl,-rpath option from sdl-config, since it is not needed.
This fixes at least the build of sdl_image, and probably of other sdl
components as well.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
MySQL build has been broken for quite some time due to the ./configure
inability to find out how to use 'ps' to find the PID of a running
program. This commit bumps MySQL to the latest version and adds a few
patches to fix various build issues, including the 'ps' issue.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
dhcp 3.0.5 was causing build issues due to its build system not based
on the autotools. Instead of work-arounding dhcp 3.0.5 issues, this
commit bumps to 4.1.1 which uses the autotools as the build
system. The package is therefore converted to the autotools
infrastructure.
The dhcp_xecute patch is no longer needed, this feature seems to have
been merged into the upstream dhcp (according to the manpage).
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
We don't have the needed dependencies in BR for most of the SQL drivers,
so mark those options as broken.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
This commit fixes several issues with linux-fusion so that it builds
properly with the current Buildroot:
* Following the rework of the Linux kernel build process in
Buildroot, a few adaptations were needed: depend on
BR2_LINUX_KERNEL instead of !BR2_KERNEL_none, use
$(LINUX26_VERSION_PROBED) to get the real kernel version, etc.
* Add a LINUX_FUSION_BUILD_CMDS that actually does the build of
linux-fusion.
* Define SYSROOT for linux-fusion to TARGET_DIR so that at target
installation, kernel modules are installed in $(TARGET_DIR)
* Replace the staging installation by a simple one-liner that only
installs the linux fusion header, needed for DirectFB to use the
fusion kernel module
* Fix the uninstallation macros. They have been misunderstood as
hooks, while their are in fact normal macros.
* Add a patch to fix a build failure in linux-fusion itself (missing
<linux/sched.h> include in fusiondev.c)
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The headers_install target no longer exists in the Makefile, the
installation of headers is done by the install target.
Signed-off-by: Phil Edworthy <phil.edworthy@renesas.com>
Commit 7192668 introduced a wrong spelling of BR2_TOOLCHAIN_EXTERNAL_GLIBC
that prevented libnss_files.so and libnss_dns.so from being installed.
Signed-off-by: Luca Ceresoli <luca@lucaceresoli.net>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
TARGET_CONFIG_ENV got removed in e721a7c07 (Merge TARGET_CONFIGURE_ENV
into TARGET_CONFIGURE_OPTS), so remove it from the recent libsvgtiny
package as well.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
The bzip2 make install target follows symlinks, so if busybox is
enabled and the bzip/bunzip2 applets are installed, bin/busybox will
get overwritten by bzip2.
Fix it by ensuring any previously installed bzip2/bunzip2/bzcat (the
applets available in busybox) are removed before running make install.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Now that TARGET_CC contains several space-separated words, it must be
used quoted everywhere.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Following the changes to TARGET_CC/TARGET_CXX to include the --sysroot
option, these variables not only contain the path to the compiler, but
also the --sysroot option. For that reason, we cannot anymore just use
"test -x" to test for the compiler presence. Instead, we see if
$(TARGET_CC) -v and $(TARGET_CXX) -v return a zero status.
Moreover, --sysroot now needs to be filtered out of $(TARGET_CC) and
not $(TARGET_CFLAGS) when asking the toolchain for its original
sysroot and arch sysroot.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
TARGET_CONFIGURE_ENV defines CFLAGS, LDFLAGS, CXXFLAGS and FCFLAGS,
separatly from all other variables that are part of
TARGET_CONFIGURE_OPTS. This is useless and not consistent with the
HOST_CONFIGURE_ variables, therefore we merge TARGET_CONFIGURE_ENV
into TARGET_CONFIGURE_OPTS and fix the few users of
TARGET_CONFIGURE_ENV.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
We now have for quite some time a configuration cache used to speed-up
the execution of ./configure scripts when compiling programs for the
target. This commit introduces a similar concept when Buildroot
compiles programs for the host.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
These shouldn't be needed. Even when the cross-compiler is in
$(STAGING_DIR)/usr/bin, we anyway use an absolute path for TARGET_CC,
TARGET_LD and al.
Not having $(STAGING_DIR)/{usr/bin,bin} in the PATH will avoid having
Buildroot trying to run target binaries.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The definition of CC, LD, GCC, CPP, CXX and FC shouldn't contain the
CFLAGS/LDFLAGS/CXXFLAGS, those should be passed through the
appropriate variables.
However, the --sysroot option is a particular case here: it needs to
be part of the CC/LD/GCC/etc. definitions otherwise libtool strips it
from the CFLAGS/LDFLAGS.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The external toolchain and internal toolchain cases both need to use
the --sysroot option, and they have almost identical
LDFLAGS/CFLAGS/CXXFLAGS definition, so we can factorize these
definitions.
Moreover, the --isysroot option is implied by --sysroot so there's no
need to specify both.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
When building packages for the host, the *_FOR_BUILD and *_FOR_TARGET
variables are not needed.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
We build host tools installed in $(HOST_DIR)/usr/bin, and some of them
rely on host libraries in $(HOST_DIR)/usr/lib. So when these host
tools are executed, they need to find the host libraries, which are
not installed in a default location.
In c1b6242fdc we tried to use
LD_LIBRARY_PATH when building target packages to solve this
problem. Unfortunately, LD_LIBRARY_PATH is not only used to find
libraries at run-time, but also at compile time. So it leads the build
of some packages, such as icu, to fail.
Therefore, in 0d1830b07d, we reverted
the LD_LIBRARY_PATH idea.
The other option to solve this problem was to hardcode a RPATH value
in the host binaries that would reference the location of host
libraries. We added this -Wl,-rpath option to HOST_CFLAGS in
6b939d40f6. Unfortunately, this caused
problems when building binutils, as reported in bug 1789 so this
change was reverted in e1a7d916e9.
Then, we tried to use -Wl,-rpath in HOST_LDFLAGS, but it was causing
problems with fakeroot not recognizing 'ld' as the GNU linker, since
the -Wl,-rpath cannot be understood by 'ld' directly, only by 'gcc'.
This commit is a new attempt at using HOST_LDFLAGS, but in this case
we modified the definition of HOST_LD to *not* contain
HOST_LDFLAGS. LDFLAGS are being set separatly. It solved the fakeroot
issue and was tested against nearly 300 packages of Buildroot.
For more details on this story, see
http://lists.busybox.net/pipermail/buildroot/2010-June/035580.htmlhttp://lists.busybox.net/pipermail/buildroot/2010-June/035581.htmlhttp://lists.busybox.net/pipermail/buildroot/2010-June/035586.htmlhttp://lists.busybox.net/pipermail/buildroot/2010-June/035609.htmlhttps://bugs.busybox.net/show_bug.cgi?id=1789
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The existing cross-compilation patch works with our not completely
correct TARGET_CONFIGURE_OPTS. With the correct variables (CFLAGS,
LDFLAGS) being passed, fontconfig was trying to use target
CFLAGS/LDFLAGS when building tools for the host.
This updated patch fixes that problem by correctly using the
CC_FOR_BUILD, CFLAGS_FOR_BUILD variables.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Passing LDFLAGS/CFLAGS when building for the host allows cmake to be
compiled with the proper -rpath value (the -rpath option is added to
HOST_LDFLAGS in a later commit).
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Closes#2143
Fixes crash on static linking without stdio / x86. Both patches are from
upstream uClibc.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
ruby is converted to the autotools infrastructure, and the dependency
on host-ruby is added since a ruby interpreter is needed to build a
ruby interpreter. Fortunately, this is taken into account in the ruby
build process, and it first start to build a mini-interpreter that is
used to build the rest. However, this doesn't take the
cross-compilation case into account, so we have to build ruby for the
host.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The .mk file was hacking the CC_FOR_BUILD value so that
$(STAGING_DIR)/usr/include is added to the include path. This is not
correct since $(STAGING_DIR) contains target stuff, not host
stuff. The correct fix is to add a dependency on host-xproto_xproto,
which will install the needed headers in $(HOST_DIR)/usr/include.
In addition to that, a patch is added to make xlib_libXt build system
behave properly in the cross-compilation case, where the makestrs tool
needs to be built on the host as part of the compilation process. This
was working before because of our quirky TARGET_CONFIGURE_OPTS, but
those are going to be fixed in a future commit.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
gperf on the host is needed, since it is used by xcb-util to generate
a perfect hash function.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Webkit depends on libjpeg, so add it as a dependency. Webkit also uses
icu but fails to find it if we don't pass ac_cv_path_icu_config to its
./configure script.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Until now, the function copy_toolchain_lib_root was copying a given
library to the target filesystem by assuming that it should be at the
same place it was in the toolchain sysroot.
However, with Buildroot hiding libstdc++ in
/usr/<target-name>/lib(64), this isn't correct, and it is probably
safer not to rely on the toolchain organization anyway.
Therefore :
* Instead of having a single EXTERNAL_LIBS variable, we now have
LIB_EXTERNAL_LIBS and USR_LIB_EXTERNAL_LIBS, which respectively
list the libraries that should be copied to /lib and /usr/lib. As
of today, only libstdc++ is part of the second list.
* The copy_toolchain_lib_root takes another argument, which is the
destination directory of the library, relative to $(TARGET_DIR)
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Most toolchains have their libraries either in /lib or /usr/lib
relative to their ARCH_SYSROOT_DIR. Buildroot toolchains, however,
have basic libraries in /lib, and libstdc++/libgcc_s in
/usr/<target-name>/lib(64).
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
With uClibc 64 bits toolchain, the dynamic loader is named
ld64-uClibc.so.0 and not ld-uClibc.so.0. So, this commit adjust the
uClibc detection code for external toolchains.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Reviewed-by: Yann E. MORIN <yann.morin.1998@anciens.enib.fr>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Create lib64 -> lib and usr/lib64 -> usr/lib symbolic links in the
target and staging directories. This is needed for some 64 bits
toolchains such as the Crosstool-NG toolchains, for which the path to
the dynamic loader and other libraries is /lib64, but the libraries
are stored in /lib.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Reviewed-by: Yann E. MORIN <yann.morin.1998@anciens.enib.fr>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
On 64 bits glibc toolchains, the dynamic loader is named
ld-linux-x86-64.so and not simply ld-linux.so. So, adjust the
detection of the C library accordingly.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Reviewed-by: Yann E. MORIN <yann.morin.1998@anciens.enib.fr>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Instead of copying all directories in "etc lib sbin usr", check that
each of them exists before doing the copy. This is only to avoid an
harmless error message.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Reviewed-by: Yann E. MORIN <yann.morin.1998@anciens.enib.fr>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
For the detection of the ARCH_SYSROOT_DIR (which contains the C
library variant specific to the compiler flags), we used to pass only
the -march argument instead of the full TARGET_CFLAGS. This was done
because TARGET_CFLAGS contains --sysroot, and we don't want to tell
here the compiler which sysroot to use, because we're specifically
asking the compiler where the *normal* arch sysroot directory is.
Unfortunately, there are some multilib variants that aren't decided
only based on -march, but also on -msoft-float or other compiler
flags. Therefore, we take the opposite approach: pass the full
TARGET_CFLAGS, from which we have stripped the --sysroot option.
For example, this allows a PowerPC CodeSourcery toolchain, on which
we're using the soft-float multilib variant, to work properly as an
external toolchain.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Reviewed-by: Yann E. MORIN <yann.morin.1998@anciens.enib.fr>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
External toolchains using Glibc have different names for the dynamic
loader. Some of them name it ld-linux.so.*, while some others (such as
the PowerPC and MIPS CodeSourcery toolchains) name it simply ld.so.*.
Therefore, we fix the glibc detection code to handle this case.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Reviewed-by: Yann E. MORIN <yann.morin.1998@anciens.enib.fr>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
A few minor modifications of u-boot.mk is needed to support 2010.06:
- U-Boot now uses ARCH=powerpc like the kernel (instead of ARCH=ppc)
- Library files have moved, so adjust the target mkimage/fw_printenv rules
(still compatible with older versions)
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Closes#2101
At the same time fix dependencies so it can be built without a local
X server, and a comment is shown if C++ support isn't enabled.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Commit 1dc19c445 (split tremor into its own package) unfortunately
broke the svn checkout step (but normally not noticable as we have
a tarball on sources.buildroot.net that will get downloaded instead).
Fix it by using a custom download step, and remove unused variables
while we're at it.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
We don't actually need to explicitly clean the kconfig stuff, as distclean
already removes the entire BUILD_DIR, but fix up the packag/config makefile
to do the right thing if make clean/distclean is called manually for
completeness.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Configure misdetects this as no, but the result is not used for anything.
Unfortunately it breaks the build for other packages also checking for
struct sockaddr_storage (like rsync) when using a shared config cache,
so force it to yes.
Reported-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Make sure --enable-video-directfb=no gets passed to configure
if directfb isn't enabled, so sdl doesn't try to link with the
host version instead (if available).
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
This patch bumps the version of nbd to 2.9.15.
The new version avoids problems with klcc installed on the host system
and also includes two former buildroot patches:
- nbd-fix-build-with-disable-lfs.patch
- nbd-server-fix-read-eagain.patch
Signed-off-by: Peter Huewe <peterhuewe@gmx.de>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Closes#2095
Avoids error like:
/usr/bin/ld: /dot-dot-dot/buildroot/output/build/buildroot-config/kconfig_load.o: undefined reference to symbol 'dlsym@@GLIBC_2.2.5'
Need to add -ldl to list of GTK2 development libraries.
Signed-off-by: Slava Zanko <slavazanko@gmail.com>
Acked-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Changes by Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* Installation to target is the default
* Remove SDL_EXTRA_CFLAGS, unused
* Remove reference to SDL_DIRECTFB_INCLUDES, unused
* Remove strip, done globally
Signed-off-by: cmchao <cmchao@gmail.com>
Changes by Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* Installation to target is the default
* No installation to staging is the default
* The QUAGGA_HEADERS option does not exist
* BOA_INSTALL_TARGETS_CMDS wouldn't work in the Quagga package, and
was anyway doing the default action
* The QUAGGA_BINARY/QUAGGA_TARGET_BINARY variables were not used
* Bump to 0.99.16, which fixes a problem when IPv6 is not enabled
Signed-off-by: cmchao <cmchao@gmail.com>
merge quagga
Changes by Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* Installation to target is the default
* Remove incorrect libfuse-dirclean target
* Remove INSTALL_STAGING_CMDS, since its implementation was the default behaviour
* No need to strip, done globally
* No need to create main directories in $(TARGET_DIR)
Signed-off-by: cmchao <cmchao@gmail.com>
Changes by Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* No need to strip
* Target installation is the default
* No installation to staging is the default
* Remove DASH_BINARY/DASH_SOURCE variables
* Fix minor mistakes
* Simplify: no need to pass CC/CC_FOR_BUILD
Signed-off-by: cmchao <cmchao@gmail.com>
merge dash
Changes by Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* Installation to target is the default
* Use BERKELEYDB_SUBDIR to get rid of the specific BUILD_CMDS and
INSTALL_STAGING_CMDS
* Split the INSTALL_TARGET_CMDS to install development files on the
target only when needed
Signed-off-by: cmchao <cmchao@gmail.com>
Changes by Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* Installation to target is the default behaviour
* No installation to staging is the default behaviour
* Stripping is done globally
Signed-off-by: cmchao <cmchao@gmail.com>
Changes by Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* Installation to target is the default behaviour
* No installation to staging is the default behaviour
* Stripping is done globally
* Remove incorrect cleaning rules
Signed-off-by: cmchao <cmchao@gmail.com>
Changes by Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* Target installation is the default behaviour
* No installation to staging is the default behaviour
* Remove FBV_BINARY/FBV_TARGET_BINARY variables
Signed-off-by: cmchao <cmchao@gmail.com>
Changes by Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* Target installation is the default behaviour
* No installation to staging is the default behaviour
* Remove DMALLOC_TARGET_BINARY variable
Signed-off-by: cmchao <cmchao@gmail.com>
Changes by Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* Target installation is the default behaviour
* No installation to staging is the default behaviour
* Remove DISTCC_BINARY/DISTCC_TARGET_BINARY variables
Signed-off-by: cmchao <cmchao@gmail.com>
We don't have docbook2man in buildroot, and the build breaks if you
have it on the host, but in an incompatible version (like on my machine).
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
It's now linux/Config.in that allows to configure the kernel
configuration/compilation.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
In Buildroot, the kernel is built and installed *before* the root
filesystems are built. This allows the root filesystem to correctly
contain the kernel modules that have been installed.
However, in the initramfs case, the root filesystem is part of the
kernel. Therefore, the kernel should be built *after* the root
filesystem (which, in the initramfs case simply builds a text file
listing all files/directories/devices/symlinks that should be part of
the initramfs). However, this isn't possible as the initramfs text
file would lack all kernel modules.
So, the solution choosen here is to keep the normal order: kernel is
built before the root filesystem is generated, and to add a little
quirk to retrigger a kernel compilation after the root filesystem
generation.
To do so, we add a ROOTFS_$(FSTYPE)_POST_TARGETS variable to the
fs/common.mk infrastructure. This allows individual filesystems to set
a target name that we should depend on *after* generating the root
filesystem itself (contrary to normal ROOTFS_$(FSTYPE)_DEPENDENCIES,
on which we depend *before* generating the root filesystem).
The initramfs code in fs/initramfs/initramfs.mk uses this to add a
dependency on 'linux26-rebuild-with-initramfs'.
In linux/linux.mk, we do various things :
* If BR2_TARGET_ROOTFS_INITRAMFS is enabled (i.e if initramfs is
enabled as a root filesystem type), then we create an empty
rootfs.initramfs file (remember that at this point, the root
filesystem hasn't been generated) and we adjust the kernel
configuration to include an initramfs. Of course, in the initial
kernel build, this initramfs will be empty.
* In the linux26-rebuild-with-initramfs target, we retrigger a
compilation of the kernel image, after removing the initramfs in
the kernel sources to make sure it gets properly rebuilt (we've
experienced cases were modifying the rootfs.initramfs file wouldn't
retrigger the generation of the initramfs at the kernel level).
This is fairly quirky, but initramfs really is a special case, so in
one way or another, we need a little quirk to solve its specialness.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
These targets allow the user to customize the configuration of the
Linux kernel. After changing the kernel configuration, the next time
the user runs "make", the kernel is rebuilt to take into account the
new configuration (not rebuilt from scratch).
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
We only adjust the configuration or ARM EABI and IPv6. The (more
complicated) initramfs case is handled in a separate commit. The user
is expected to take care of all other configuration details (like
having Netfilter enabled to make iptables work, etc.)
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The KCONFIG_ENABLE_OPT, KCONFIG_SET_OPT and KCONFIG_DISABLE_OPT are
new make functions to respectively enable, set and disable options in
Kconfig-like files (as used by the kernel, uClibc or Busybox).
They can be used as follows :
$(call KCONFIG_ENABLE_OPT,CONFIG_FOOBAR,/path/to/.config)
$(call KCONFIG_SET_OPT,CONFIG_BARFOO,foobar,/path/to/.config)
$(call KCONFIG_DISABLE_OPT,CONFIG_FARBOO,/path/to/.config)
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
In order to not depend on module init tools being installed on the
development environment of the Buildroot user, let's build module init
tools for the host.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The "remove-index" patch is no longer needed, the newer version of
module-init-tools correctly uses strchr().
The "module-init-tools" patch, whose main purpose was to disable the
generation of man pages (it requires docbook2man), is replaced by a
simpler implementation,
module-init-tools-3.11-add-manpages-config-option.patch.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The new infrastructure to build the Linux kernel doesn't use a
cross-depmod. This isn't needed with modern module-init-tools that
most distros include perfectly handle this.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
This patch introduces a single, simple, infrastructure to build the
Linux kernel. The configuration is limited to :
* Kernel version: a fixed recent stable version, same as kernel
headers version (for internal toolchains only), custom stable
version, or custom tarball URL
* Kernel patch: either a local file, directory or an URL
* Kernel configuration: either the name of a defconfig or the
location of a custom configuration file
* Kernel image: either uImage, bzImage, zImage or vmlinux.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The buildroot/busybox/uClibc VM is running low on disk space, and we've
been asked to move the source mirrors off-site.
A redirect has been setup between the old buildroot.net/downloads/sources/
and sources.buildroot.net, so old .configs continue to work, but we might
as well use the official one now.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Make sure we only pass O=<path> if we were originally called like that,
otherwise we might end up looking for the .config in the wrong place.
Likewise, when changing between using O= or not (or simply running
make <blah>_defconfig in a pristine source tree), we do end up having
a .config, but no .config.cmd. It isn't really critical so just continue
even if we couldn't read it.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
The ntfsprogs configure script would add hardcoded host dirs to the
pkg-config search path, confusing configure if libraries were installed
on the host and not on the target.
At the same time, ensure that fuse is build before ntfsprogs (if enabled),
so the fuse support gets built.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
The ntfsprogs crypto support requires libgnutls, which we don't have
in BR, and the autodetection in configure gets confused when the host
has a libcrypt-config.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
squashfs used the get_nprocs() GNU extension, instead of directly
calling sysconf(), breaking the build on uClibc.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
The libart package had a couple of typos so it never really installed to
staging. So fix it.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Change the default target optimisation value so
it does not conflict with gcc optimization level
Signed-off-by: Paul Jones <paul@pauljones.id.au>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Add the option to customize the list of decoders, encoders, muxers, demuxers,
parsers, protocols, bsfs and filters to be built into ffmpeg, and to compile or
exclude input and output devices.
[Peter: fix qstrip invocation]
Signed-off-by: Luca Ceresoli <luca@lucaceresoli.net>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
[Peter: configure doesn't support --disable-nls / --disable-largefile,
needs largefile support in toolchain]
Signed-off-by: Luca Ceresoli <luca@lucaceresoli.net>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
From busybox git.
Devmem used to always map 2 pages in case the access would cross a page
boundary, which fails if you try to access the highest page.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Closes#2035
- Remove -Werror from CFLAGS
- Always enable ipv6 support if available in toolchain
- Always install into staging
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
After the rework of the U-Boot configuration/compilation process, we
need to slightly rework how target/linux/Makefile.in.advanced depends
on mkimage on the host to produce an uImage.
target/linux/Makefile.in doesn't need to be fixed as it just doesn't
handle this dependency for the moment.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The first patch allows to build with an EABI toolchain. The second
patch disables the install step of at91dataflashboot Makefile since it
tries to copy files to /tftpboot.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Fix the URL, fix the directory to which it gets unpacked, fix make
target names to be lower-case only.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Use AT91BOOTSTRAP_BOARD instead of BOARD_NAME. Remove
AT91BOOTSTRAP_VERSION from the final binary image name.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
At the same time, remove the unused AT91BOOTSTRAP_PATCH_LEVEL and
AT91BOOTSTRAP_PATCHED_VERSION variables.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The boot source configuration options were depending on U-Boot
configuration options. Let's make it independent and just allow the
user to select whichever boot source is appropriate.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
There no need to depends on BR2_TARGET_AT91BOOTSTRAP when the
configuration options are already inside a if
BR2_TARGET_AT91BOOTSTRAP.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The build process of grub2 breaks the compilation. It breaks with:
./configure: line 4766: syntax error near unexpected token `external'
./configure: line 4766: `AM_GNU_GETTEXT(external)'
In addition to this, it later requires Ruby. Do we really want to make
Buildroot depend on Ruby being installed on the host ? Do we really
want to build our own Ruby ? Do we even care about Grub2 ?
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Much of the grub2.mk seems to have been copy/pasted from
grub.mk. However, all the network/splashimage related ./configure
options do not exist in grub2.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
grub2 now builds fine, but some work remains to make it usable. What
should be installed exactly in the TARGET_DIR ? What is the
installation procedure and what should Buildroot do ?
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
grub can already only be selected for x86 and x86_64. No need to check
again for this in grub.mk.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The bootloader being very specific to the hardware, being able to
build U-Boot from an arbitrary tarball available on the web might be
needed.
Therefore, for U-Boot, we provide two methods :
* Get a given stable version from U-Boot official FTP server
* Get an arbitrary tarball
This should hopefully satisfy most needs, without complicating too
much the U-Boot build procedure on Buildroot side.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Remove all the bootsource selection mechanism and the horribly
complicated BR2_TARGET_UBOOT_DEFAULT_ENV thing, which wanted to be
generic, but was in fact very AT91-specific.
Just keep things simple: we build U-Boot with the board configuration
file specified in BR2_TARGET_UBOOT_BOARDNAME.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
To build mkimage for the host (which is needed to build an uImage of
the kernel), it is not necessary to configure U-Boot, and therefore to
have a particular board selected.
Therefore, this commit:
* Adds a verification at U-Boot configure step that a U-Boot board
name has been defined
* Sets a default U-Boot version if none has been specified, so that
even when U-Boot isn't selected but we want to build mkimage for
the host, a particular U-Boot version is picked.
* Make the host mkimage target depend only on U-Boot being
downloaded/extracted/patched, and the target mkimage/fw_printenv
targets depend on U-Boot being fully configured.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
A very complicated infrastructure for just a special case, for an
ancient version of U-Boot. Recent versions of U-Boot are reported to
work just fine on Atmel ARM evaluation boards.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Yaboot does not build, hasn't been updated since a long time, and
isn't very common these days on embedded PowerPC platforms.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Breaks the build with BR2_CONFIG_CACHE, and isn't needed anyway, as
the configure script figures out to add _GNU_SOURCE to config.h
anyway.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
The lo interface is marked auto in /etc/network/interfaces, so the
configuration of the loopback network interface is part of the
S40network init script. This causes the "RTNETLINK answers: File exists" error
message to appear at startup time.
Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Acked-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
--disable-registry has no dependency on libxml2 and should not be
linked to BR2_PACKAGE_GSTREAMER_LIBXML2. If we want to disable
registry then we should add another option.
Signed-off-by: Lionel Landwerlin <llandwerlin@gmail.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
The common filesystem infrastructure in fs/common.mk uses a smart
combination of makedevs and fakeroot to create the device files in the
target filesystem images without being root. This technique is applied
to all filesystem formats that rely on this common infrastructure, and
JFFS2 is one of them.
Therefore, using the -D option of mkfs.jffs2, which allows to specify
a device table, is redundant with the usage of makedevs. And it is
worst than redundant: for some reason, -D does not create all device
files with the correct major and minor numbers, as reported in
bug #1771.
For coherence, we just remove the usage of mkfs.jffs2 -D option, and
rely on makedevs/fakeroot to create the device files.
This commit fixes bug #1771.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Support the GTK variant of the graphical kconfig configurator as an
alternative to the Qt3-based one.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
libidn contains a few elisp files, and it's configure script checks for
emacs to know if it should install them. This is not important for BR as
we don't have emacs, but configure fails if it's available on the host,
config.cache is used and autoconf has already been used as that loads
EMACS="no" into the cache.
Fix it by also setting EMACS="no" here.
At the same time, fix up trailing spaces in Config.in.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
This reverts commit b7acacaf6e.
Closes#1855
We DO need to install into staging for all the xdriver-* packages,
so revert this commit.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Closes#1789
This reverts commit 6b939d40f6.
The problem this commit tries to fix is valid, but the fix unfortunately
seems to cause worse problems on certain distributions/setups, so revert
for now.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Use the correct CFLAGS from BR and not just the LDFLAGS. This is especially
important for external toolchain setups, but the lockfile-progs buildsystem
also hardcodes -Werror, which breaks the build in certain setups.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Due to recent 3.2.4 release, 3.2.2 download address has changed, so
I prefered bump version to 3.2.4 rather than changing NCFTP_SITE.
Signed-off-by: Julien Boibessot <julien.boibessot@armadeus.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
gdbserver dlopen(3)s libthread_db.so at runtime, so there is no
dependency on it (does not appear as being (NEEDED)).
Copy libthread_db.so from external toolchain when gdbserver is enbled.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
If threads are disabled, do not try to copy the libpthread.so from the
external library.
It is still expected that the BR configuration matches the external
toolchain setup, and no check is done to enforce that.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Xserver installation fails with parallel make jobs.
Installation to staging is not needed. So just remove it
instead of converting to $(MAKE1).
Signed-off-by: Paulius Zaleckas <paulius.zaleckas@gmail.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
coreutils: add 'join' to the list of files that are copied to target
rootfs.
Signed-off-by: Bjørn Forsman <bjorn.forsman@gmail.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
The legacy zImage target for x86 was removed from the kernel in 2.6.30,
and we state in Config.in that we'll use bzImage if BR2_PACKAGE_LINUX_FORMAT
isn't set, so ensure we do so for x86.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
The configure script contains a buggy test for the bool datatype and
it's size. This is normally not a big deal as the result isn't used
for anything, but when BR2_CONFIG_CACHE (default) is used, the
wrong ac_cv_type_bool result is stored in the cache, and other packages
like libcurl DO need the bool type, so that breaks the build.
Fix it by presetting those tests to sane values.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Make sure alsa-lib is built before gst-plugins-base if enabled, so
configure detects the presence of alsa and builds alsasink/src.
Reported-by: Phil Edworthy <Phil.Edworthy@renesas.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Add ttymxc[0-2] to the list is the /etc/securetty of the Busybox skeleton.
This is useful for serial logins on i.MX based systems. The same serial
devices already appear in the generic "target_skeleton/".
Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
gettext needs WCHAR support in the toolchain, and as libglib2 depends on
gettext and lots of stuff depends on libglib2, quite a lot of packages
needs to have their dependencies adjusted.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Instead use the same logic as in libgtk2. The rendering target selected
MUST be the same as libgtk2's, so just figure it out automatically
instead.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Gstreamer has complicated dependencies (because of glib2), so use
depends on rather than select. At the same time default phonon support
to Y if gstreamer is available, as this support is likely wanted.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Gstreamer has complicated dependencies (because of glib2), so use
depends on rather than select, similar to how it is done for gtk2.
At the same time default gtk/gstreamer support to Y if those are
available, as they are likely wanted.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
libgtk2 can either use the X11 or directfb backend, depending on what
is selected - But if other packages 'select' libgtk2 there is no
guarantee that any backends are enabled, breaking the build.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Having a BR2_NEEDS_GETTEXT option, as introduced by
54d64798e1 isn't sufficient to express
the different kind of dependencies on gettext.
This commit, based on an idea by Peter Korsgaard, introduces two
different options :
* BR2_NEEDS_GETTEXT, which is true as soon as the toolchain doesn't
provide gettext itself (i.e, when the toolchain is uClibc based, be
it an internal or external toolchain)
* BR2_NEEDS_GETTEXT_IF_LOCALE, which is true when the toolchain
doesn't provide gettext *and* locale support has been enabled in
Buildroot.
A following commit adds some documentation that details how these
configuration variables should be used by packages.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Closes#1819
Fix two issues with pciutils:
- pciutils would look in /usr/share/misc for pci.ids, but install it in
/usr/share. This is because pciutils doesn't use a ./configure script,
so we have to also provide the configuration (make) arguments when
we run make install as well. Fix it by making it look into /usr/share
as that's simpler to do, and is what upstream does.
- the update-pciids script would call wget with the --no-timestamping
option, which isn't supported by busybox wget. Fix it by simply
removing that option as it isn't really critical.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Contrary to the comment in Config.in, mutt isn't broken when wchar
is enabled - In fact, it doesn't build without it.
Add BR2_USE_WCHAR dependency to make this clear.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Fix two issues with the icu build:
- icu source contains an #elif without any arguments, which g++ >= 4.4
flags as an error. This is both an issue for target and host build,
so restructure the .mk so any *both*patch is applied to both builds
(the other patches would cause trouble with host builds)
- icu build system isn't parallel make safe, use MAKE1
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
atngw100_defconfig: update to fix build failure:
* The AVR32 toolchain fails to build with the new uClibc version
0.9.31.x. Use the older uClibc 0.9.30.x branch instead.
* Disable linux-fusion as it fails to build
(why was this selected anyway, when DirectFB was not selected?).
* U-Boot 2010.03 is broken for AVR32. The build fails with:
zlib.c:31:27: error: asm/unaligned.h: No such file or directory
Select the older U-Boot 2009.08 version that builds instead.
* Disable rsync as it fails to build.
Build tested with 'make distclean && make atngw100_defconfig && make'
on an Ubuntu 10.04 x86_64 host.
Signed-off-by: Bjørn Forsman <bjorn.forsman@gmail.com>
Acked-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Having . in the PATH makes the toolchain build process fail because it
confuses host tools and target tools.
This fixes bug #75.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Things like LD_LIBRARY_PATH=. or even LD_LIBRARY_PATH=.:/usr/lib were
not detected as incorrect.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Otherwise u-boot tools / kernel modules are only added to target AFTER
the filesystems are built.
Long term u-boot/kernel stuff should get splitted from target/device,
but this is the safest solution for now.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
The build of fltk was failing due to an issue in the usage of
scandir(). This issue is fixed by a new patch,
fltk-1.1.7-scandir-fix.patch. Moreover, this problem was not
necessarly visible, as the build process of FLTK didn't bail out with
an error when it was failing. This if fixed by
fltk-1.1.7-bail-out-on-error.patch. Finally, there was a problem with
the tests of FLTK, so we disabled them.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Slightly improve the package type detection heuristic, and fix a small
bug about package/multimedia/multimedia.mk exclusion.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Add a Python script that draws dependency graphs, either for the full
set of selected packages, or for a particular given package. Of
course, it is limited to packages that use either the generic or
autotools infrastructures. The script generates a file that Graphviz
can parse and generate a PDF (or other formats) from it.
Full dependency graph of all selected packages :
./scripts/graph-depends > test.dot
dot -Tpdf test.dot -o test.pdf
Dependency graph of libgtk2 :
./scripts/graph-depends libgtk2 > test.dot
dot -Tpdf test.dot -o test.pdf
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The new <pkg>-show-depends simply outputs the list of dependencies for
the given package.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The recent change to use config.guess to figure out GNU_HOST_NAME
broken the x86x86fix detection for 32bit hosts, as config.guess
returns something like i686-pc-linux-gnu rather than something with
*-unknown-linux-* like we used to use.
Fix it by simply looking for "linux" instead.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
There is a build problem with netsnmp on external toolchain that isn't
easy to fix: libtool strips the --sysroot that we are passing it,
which make the link step fail.
In preparation for the release, just make sure this package isn't
visible to external toolchain users. Of course, on the long run, we
should fix this.
We also disable the build of the Quagga SNMP support because it
selects netsnmp.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
External toolchain builds absolutely require the --sysroot option to
be passed at link time.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Without CFLAGS, the build breaks because --sysroot is missing at link
time, and this option is absolutely mandatory for external toolchain
builds.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Since lvm2 uses autoconf, there's no point in overriding CC and other
variables at build time. This causes build breakage as CFLAGS aren't
used at link time, therefore --sysroot lacks, which breaks the build
with external toolchains.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
mutt has been upgraded, but the mutt-1.5.16-makedoc-hostcc.patch
wasn't upgraded accordingly, causing build failures in the
documentation. Therefore, we add a new patch
mutt-1.5.17+20080114-nodoc.patch that disables the construction of the
documentation.
As this patch modifies Makefile.am, we need to autoreconf the
package. The simplest and cleanest way to do this is to convert the
package to the autotools infrastructure.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Since we no longer need to build pango on the host, cairo on the host
is no longer needed.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
We needed to build pango for the host in order to compile
pango-querymodules for the host, which was used to produce
/etc/pango/pango.modules. Unfortunately:
* This produces an incorrect /etc/pango/pango.modules (no modules
detected in my case), probably because the host pango-querymodules
was looking at host pango modules
* This requires to build pango for the host, which requires to build
cairo for the host, which requires to build X11 for the host.
To make things work and remove the dependency between pango and
host-pango, we introduce a S25pango script that creates
/etc/pango/pango.modules on startup if it doesn't exist, just as we do
with libgtk2 for /etc/gtk-2.0/gdk-pixbuf.loaders.
Since host-pango is no longer needed, we remove all definitions
related to it.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
This patch adds a patch to NTP to fix the following build failure,
using a workaround patch found on the Fedora bugzilla:
ntp_loopfilter.c: In function 'local_clock':
ntp_loopfilter.c:571: error: 'MOD_NANO' undeclared (first use in this function)
ntp_loopfilter.c:571: error: (Each undeclared identifier is reported only once
ntp_loopfilter.c:571: error: for each function it appears in.)
ntp_loopfilter.c: In function 'loop_config':
ntp_loopfilter.c:896: error: 'MOD_NANO' undeclared (first use in this function)
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
This package uses several pmap_*() functions in the C library, that
are only available if the C library has RPC support.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
A C library compiled with locale support already has an iconv()
implementation. In that case, libiconv is useless. Therefore, disallow
the selection of libiconv when the configuration says that the
toolchain has locale support.
This fixes build issues similar to the one we had with gettext:
libiconv headers are installed, but -liconv is not added because the
./configure script detects that the C library supports iconv.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Verify that the value of BR2_INSTALL_LIBSTDCPP set by the user in the
Buildroot configuration really matches the external toolchain
capabilities by checking that a C++ cross-compiler is available.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
This allows to make sure that an user, or a randpackageconfig, will
not select the gettext or libintl package when using an external
toolchain based on glibc/eglibc.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
ltrace failed to build because of missing arguments to gcc to find the
header files. This is due to the fact that the existing ltrace.mk was
setting CC and LD at build time to incorrect values. Keeping the
values set at configure time is just the right thing to do.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The patch had an incorrect name, and the libtool patch was applied
while it shouldn't, and the package wasn't autoreconfed while the
patch changes some Makefile.am files.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
On a x86-64 host, libcap tried to install things in
$(STAGING_DIR)/lib64 and $(TARGET_DIR)/lib64. Therefore, pass lib= and
prefix=, as required by the strange build system used by libcap.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
When using an external toolchain that uses the glibc or eglibc C
libraries, compiling a separate gettext and libintl is not needed and
is even a source of confusion, causing build failures. These build
failures are due to the fact that when libintl is compiled, it
replaces the C library libintl.h by its own, which does #define
gettext libintl_gettext. Then, when packages want to use gettext,
autoconf realize that gettext is available in the C library and
therefore do not add -lintl to the LDFLAGS, causing the build failure
because the program has been compiled to use libintl_gettext but this
function is not available.
Therefore, we should only use gettext if a uClibc internal toolchain
or a uClibc external toolchain. If an external glibc toolchain is
used, gettext shouldn't be used.
In order to implement that, we introduce the BR2_NEEDS_GETTEXT option,
which is hidden to the user, and whose value is computed automatically
from the rest of the configuration.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
New versions of the 2.6.32 and 2.6.33 kernel were released today
and it is suggested that all users should upgrade.
Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Fixes the ULONG_MAX definition problem:
In file included from cache.c:43:
../include/netlink-local.h: In function '__str2type':../include/netlink-local.h:218: error: 'ULONG_MAX' undeclared (first use in this function)
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
netplug uses nested functions, and gcc generates a warning that
is turned into an error:
cc1: warnings being treated as errors
if_info.c: In function 'ifsm_scriptdone':
if_info.c:289: error: generating trampoline in object (requires executable stack)
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
The less package already selects BR2_PACKAGE_CURSES, but it fails to
depend on it in the makefile. Therefore, there are cases where less
gets built before curses, and the build fails:
checking for working terminal libraries... Cannot find terminal libraries - configure failed
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
When OpenSSL is not enabled, hostapd relies on an internal
library. However, this library must be enabled, otherwise the
compilation of hostapd fails with:
/home/test/ctng-arm-eglibc/bin/../lib/gcc/arm-unknown-linux-gnueabi/4.3.4/../../../../arm-unknown-linux-gnueabi/bin/ld: cannot find -ltommath
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Version 4.1.5 fails to build due to the infamous getline() conflict
issue. 4.2.1 doesn't have this problem.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Before 2010.02, VLC didn't build, because it didn't pass the
appropriate --disable- options according to the libraries available in
Buildroot. Now, 2010.05 is going to be released, and no one bothered
to fix VLC. Therefore, let's mark VLC as broken.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
linux-fusion is composed of a kernel module, and linux-fusion.mk uses
several variable definitions that only exist when Buildroot compiles a
kernel.
We also add the same dependency to BR2_PACKAGE_DIRECTFB_MULTI, which
relies on linux-fusion.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Some python versions print x.y rather than x.y.z as version number, so
make regexp more robust.
Reported-by: Paulius Zaleckas <paulius.zaleckas@gmail.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
libgcrypt depends on libgpg-error, but it needs to know where the
gpg-error-config utility is.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
hal integrates its own version of intltool tools, but they require
libxml-parser-perl to be installed on the host.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
For some unknown reason, gawk.mk was overriding CC to $(TARGET_CC) at
build time, while it had already been set at configure time to
"$(TARGET_CC) $(TARGET_CFLAGS)" which is already the good value.
Setting it to just $(TARGET_CC) breaks the compilation with external
toolchains because we must pass the --sysroot option. But anyway, this
was incorrect as we were loosing some CFLAGS set by Buildroot.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
When neither CLI nor CGI is selected, PHP's configure script fails
with:
checking whether to build CGI binary... configure: error: No SAPIs selected.
Of couse, the help text of the options says that at least one of them
should be selected, but when doing testing with randpackageconfig,
noone is reading these help texts.
Therefore, based on the suggestion of Yann E. Morin, modify the
Config.in organization so that at least one of the option is selected.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
We need to pass CFLAGS and LDFLAGS, and to rename the patch so that it
actually gets applied.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Pass CFLAGS and LDFLAGS so that when building squashfs, it finds the
zlib installed in $(HOST_DIR).
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
When xlib_libX11 was bumped to 1.3.2 in commit
1d956c9190, the keysymdef patch was
dropped. However, this patch is still needed in order to be able to
tell ./configure where the keysymdef header file is installed.
The patch has been updated for 1.3.2.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
When building libxcb, the variable XCBPROTO_XCBPYTHONDIR must point to
the location where the Python modules needed to run the c_client.py
program are installed. The path
$(STAGING_DIR)/usr/lib/python2.6/site-packages was hardcoded. However,
it doesn't work when the version of Python installed on the host is
Python 2.5.
Therefore, add a little bit of magic to compute the host Python
version.
We also verify that Python is available on the host, as we don't build
it in Buildroot.
Fixes bug #1531.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The MTD utils require MTD headers in the toolchain, and in several
external toolchains, they are not present. In order to make the build
work by default, let's disable the MTD Busybox applets in our default
configuration.
Fixes bug #1669
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Closes#849, #1135
customize.mk used to copy files with a wrong command, resulting in one
directory level in excess. For example, source/etc/myfile would have
produced /etc/etc/myfile in the target filesystem instead of /etc/myfile.
Signed-off-by: Luca Ceresoli <luca@lucaceresoli.net>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
When the selected C library is glibc, the C library shouldn't be
mentionned in REAL_GNU_TARGET_NAME. In other words:
arm-unknown-linux-uclibcgnueabi must be used for uClibc
arm-unknown-linux-gnueabi must be used for glibc
This fixes the build of GDB on the target, as reported by Quotient
Remainder <quotientvremainder@gmail.com>.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
HOST_SED_BINARY is used 2 times during startup, and is relatively
expensive to run, so make it a simple expanded variable (:=) rather
than a recursively expanded one (=).
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Bash seems to be smart enough to source the file when execve returns
ENOEXEC, but other shells might not be.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
GNU_HOST_NAME is referred more than 100 times in the tree, used 5
times during startup, and is relatively expensive to run - so make
it a simple expanded variable (:=) rather than recursively expanded
one (=).
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
As noticed by Thomas, we call the UPPERCASE macro a lot, and it slows down
startup quite a bit.
Optimize it by implementing it in make, rather than forking a shell + tr.
The implementation is heavily based on the 'up' macro from gmsl
(http://gmsl.sf.net)
With this in place, startup time is ~5 times lower.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Instead of assuming that mkfontdir and mkfontscale are available on
the development system, use the one installed in $(HOST_DIR).
The FCCACHE variable is removed, because, for some reason, the
installation process of xfonts disables the call to fc-cache when a
DESTDIR is passed. See the definition of XORG_FONT_FCCACHE in
aclocal.m4 in font packages:
AC_DEFUN([XORG_FONT_FCCACHE],[
AC_PATH_PROG(FCCACHE, fc-cache)
FCCACHE_WARN='echo "** Warning: fonts.cache not built" ; echo "** Generate this file manually on host system using fc-cache"'
if test x"$FCCACHE" = x ; then
RUN_FCCACHE="${FCCACHE_WARN}"
else
RUN_FCCACHE='@(if test -z "$(DESTDIR)"; then echo $(FCCACHE) $(fontdir); $(FCCACHE) $(fontdir); else'
RUN_FCCACHE="${RUN_FCCACHE} ${FCCACHE_WARN} ; fi)"
fi
AC_SUBST([RUN_FCCACHE])
])
In addition to this, we update the font dependencies to include
font-utils for the host, mkfontdir for the host, mkfontscale for the
host and bdftopcf for the host.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Now that xapp_bdftopcf is enabled on the host, we also need its
dependencies to be available for the host. The dependency of
host-xapp_bdftopcf is host-xlib_libXfont, which itself depends on a
bunch of other packages. Some of them were already available for the
host, some not (xfont_encodings, xlib_xtrans, xproto_fontcacheproto,
xproto_fontsproto) and are therefore added by this patch.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Compiling xfonts require having bdftopcf installed on the
host. Therefore, enable host support for this package.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
When compiling xfonts, host utilities like bdftopcf or ucs2any, part
of xfont_font-util are needed. Until now, xfont_font-util was
installing ugly symbolic links, assuming that these tools were
available on the development machine.
This patch enables the host package for xfont_font-util, removes the
post-install.sh script, and keeps only the useful part of this script
in a post install hook.
host-xfont_font-util will be used later by xfont packages.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
In order to solve issues of libtool trying to link target components
against host libraries, it seems that specifying -L$(STAGING_DIR)/lib
and -L$(STAGING_DIR)/usr/lib works.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
In c1b6242fdc, we added
$(HOST_DIR)/usr/lib to LD_LIBRARY_PATH when building target packages,
because the build of target packages sometimes require host tools
installed in $(HOST_DIR)/usr/bin which themselves require host
libaries installed in $(HOST_DIR)/usr/lib.
Unfortunately, this solution didn't work, as libtool then tried to
link target binaries against host libraries. So $(HOST_DIR)/usr/lib
got removed from LD_LIBRARY_PATH in
0d1830b07d.
However, this meant that we went back to the previous situation, in
which host tools used during compilation of target components might
require host libraries. An example :
make[2]: Entering directory `/home/test/buildroot/output.ctng-arm-eglibc-2010-05-04-12-41-00/build/xfont_font-adobe-100dpi-1.0.1'
/home/test/buildroot/output.ctng-arm-eglibc-2010-05-04-12-41-00/host/usr/bin/mkfontdir /home/test/buildroot/output.ctng-arm-eglibc-2010-05-04-12-41-00/target/usr/share/fonts/X11/100dpi
/home/test/buildroot/output.ctng-arm-eglibc-2010-05-04-12-41-00/host/usr/bin/mkfontscale: error while loading shared libraries: libfontenc.so.1: cannot open shared object file: No such file or directory
Therefore, we try another solution: make sure that host binaries are
linked with an -rpath option, so that $(HOST_DIR)/usr/lib doesn't need
to be in LD_LIBRARY_PATH for them to find their libraries.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
On my target rootfs it is installed documentation for:
atk, cairo, gdk, gdk-pixbuf, gio, glib, gobject, gtk, pango
It ocupies 34M of space. Configure option --disable-gtk-doc doesn't
prevent installation of it. So we should remove them manually if
documentation is disabled.
[Peter: also remove manual rm's from hal/libxml2/libglade]
Signed-off-by: Paulius Zaleckas <paulius.zaleckas@gmail.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Closes#1525
Kconfig selects are not recursive, so ensure we select the dependencies
of our dependencies as well.
Cleanup target installation:
- Remove tasks handled by the generic post-build cleanup
- Hal doesn't install etc/rc.d, so don't try to delete it
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
kernel patches are kept in toolchain/kernel-headers/ipmi </li>
<li> LZMA kernel compression support patches are kept in toolchain/kernel-headers/lzma </li>
<li><ahref="http://www.realtimelinuxfoundation.org/downloads/downloads.html">Real-time Linux kernel</a> patches are kept in $(LINUX_RT_SOURCE) </li>
<li><ahref="http://www.openswan.org/">Openswan</a> kernel patches are kept in package/openswan </li>
</ol>
</p>
<p>
<h4>Package source patches</h4>
Any patches for the Linux programs supported by buildroot are kept in that program's corresponding package/ directory.
</p>
<p>
<h4>How the patching is done</h4>
Patches are applied in buildroot by running a shell script called toolchain/patch-kernel.sh with three arguments. The first argument is the target directory
where the source code to be patched is saved. The second argument is the directory where the patch is saved. The third argument is the filename pattern
to match when looking in the patch directory. The third argument can include wildcards to select multiple patch files.
Some files were not shown because too many files have changed in this diff
Show More
Reference in New Issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.