Introduce support for host config cacheWe 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>
Remove $(TOOLCHAIN_DIR)/bin and $(STAGING_DIR)/{usr/bin,bin} from the PATHThese 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>
Remove *_FOR_TARGET variables from TARGET_CONFIGURE_OPTSThose variables are not standard.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Cleanup TARGET_CONFIGURE_OPTSThe 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>
Rework sysroot option handlingThe 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>
Separate flags from commands in HOST_CONFIGURE_OPTSJust as we did for LD/LDFLAGS, pass CFLAGS and CXXFLAGS in their own
variables.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Remove unneeded variables in HOST_CONFIGURE_OPTSWhen 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>
Solve the host tools relying on host libraries problemWe 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 c1b6242fdcf2cff7ebf09fec4cc1be58963e8427 we tried to use
LD_LIBRARY_PATH when building target packages to solve this
problem. Unfortunately, LD_LIBRARY...
fontconfig: fix cross-compilation patchThe 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@...
cmake: pass LDFLAGS/CFLAGS when building for the hostPassing 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>
ruby: convert to autotools and fix buildruby 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 fo...
xlib_libXt: fix build issuesThe .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
behav...
xcb-util: add dependency on host-gperfgperf 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: fix misc build issuesWebkit 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>
external-toolchain: hardcode the destination directory for a libraryUntil 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 EXT...
external-toolchain: handle libstdc++/libgcc_s for BR toolchainsMost 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>
uclibc: add patch to fix fcntl64() on 64 bits targetsThe patch is already in upstream uClibc, in the master branch, at
http://git.buildroot.net/uClibc/commit/?id=6f1daaaf2d94c1e6184add44eda38b0781b88cf0.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
external-toolchain: recognize uClibc 64 bits toolchainsWith 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>
external-toolchain: mention MIPS and PowerPC CodeSourcery toolchainsSigned-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
external-toolchain: create lib64 symlinks if neededCreate 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.mori...
external-toolchain: support 64 bits glibc toolchainsOn 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>
external-toolchain: only copy existing directories of the sysrootInstead 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>
ext-toolchain: Fix ARCH_SYSROOT detectionFor 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 directo...
ext-toolchains: take into account other Glibc dynamic loader variantsExternal 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...
u-boot: add 2010.06 releaseA 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>
sdl_sound: add optional dependenciesAdd the optional dependencies we have in BR (flac/speex/vorbis).
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
blackbox: needs iconv if !localeCloses #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>
toolchain: remove unused special detection of old toolchainsWe only support gcc >= 4.2.x for the internal toolchain.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
bash: bump to 4.1.7(1) and migrate to autotargetsCloses #1993
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
tremor: fix svn checkoutCommit 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>
Makefile.package.in: allow packages to override download stepE.G. for checkout from version control instead.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
xserver_xorg-server: fix _MAKE typoThe variable should be XSERVER_XORG_SERVER_MAKE, not .._XSERVER_MAKE.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Makefile: fixup make distclean after kconfig build in BUILD_DIRWe 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>
Fix: convert leftover $(CONFIG)/conf to $(BUILD_DIR)/buildroot-config/confSigned-off-by: Daniel Hobi <daniel.hobi@schmid-telecom.ch>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
initramfs: only show the option when a Linux kernel is being builtCloses #2119
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
dropbear: override detection of struct sockaddr_storageConfigure 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>
docs: Fixed spelling error in buildroot.html GETTEXT instead of GNUTTEXTFixed spelling error in Documentation buildroot.html#gettext-integration
GETTEXT instead of GNUTTEXT
Signed-off-by: Peter Huewe <peterhuewe@gmx.de>
Acked-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Deprecate rp-pppoe, functionality is in pppdSigned-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
dnsmasq: bump to 2.55 and migrate to gentargetsCloses #2005
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
sdl: fix build without directfb after autotools conversionMake 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>
nbd: Bump nbd to version 2.9.15 and remove klcc issue.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>