summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2010-07-07Introduce support for host config cacheThomas Petazzoni
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>
2010-07-07Remove $(TOOLCHAIN_DIR)/bin and $(STAGING_DIR)/{usr/bin,bin} from the PATHThomas Petazzoni
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>
2010-07-07Remove *_FOR_TARGET variables from TARGET_CONFIGURE_OPTSThomas Petazzoni
Those variables are not standard. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2010-07-07Cleanup TARGET_CONFIGURE_OPTSThomas Petazzoni
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>
2010-07-07Rework sysroot option handlingThomas Petazzoni
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>
2010-07-07Separate flags from commands in HOST_CONFIGURE_OPTSThomas Petazzoni
Just as we did for LD/LDFLAGS, pass CFLAGS and CXXFLAGS in their own variables. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2010-07-07Remove unneeded variables in HOST_CONFIGURE_OPTSThomas Petazzoni
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>
2010-07-07Solve the host tools relying on host libraries problemThomas Petazzoni
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 c1b6242fdcf2cff7ebf09fec4cc1be58963e8427 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 0d1830b07db4ebfd14e77a258de6fb391e57e960, 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 6b939d40f6a29a43277566adc9d4312d49cb3abf. Unfortunately, this caused problems when building binutils, as reported in bug 1789 so this change was reverted in e1a7d916e9eeaa215551740de40c055130d6c073. 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.html http://lists.busybox.net/pipermail/buildroot/2010-June/035581.html http://lists.busybox.net/pipermail/buildroot/2010-June/035586.html http://lists.busybox.net/pipermail/buildroot/2010-June/035609.html https://bugs.busybox.net/show_bug.cgi?id=1789 Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2010-07-07fontconfig: fix cross-compilation patchThomas Petazzoni
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>
2010-07-07cmake: pass LDFLAGS/CFLAGS when building for the hostThomas Petazzoni
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>
2010-07-06ruby: convert to autotools and fix buildThomas Petazzoni
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>
2010-07-06xlib_libXt: fix build issuesThomas Petazzoni
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>
2010-07-06xcb-util: add dependency on host-gperfThomas Petazzoni
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>
2010-07-06webkit: fix misc build issuesThomas Petazzoni
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>
2010-07-06external-toolchain: hardcode the destination directory for a libraryThomas Petazzoni
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>
2010-07-06external-toolchain: handle libstdc++/libgcc_s for BR toolchainsThomas Petazzoni
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>
2010-07-06uclibc: add patch to fix fcntl64() on 64 bits targetsThomas Petazzoni
The 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>
2010-07-06external-toolchain: recognize uClibc 64 bits toolchainsThomas Petazzoni
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>
2010-07-06external-toolchain: mention MIPS and PowerPC CodeSourcery toolchainsThomas Petazzoni
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2010-07-06external-toolchain: create lib64 symlinks if neededThomas Petazzoni
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>
2010-07-06external-toolchain: support 64 bits glibc toolchainsThomas Petazzoni
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>
2010-07-06external-toolchain: only copy existing directories of the sysrootThomas Petazzoni
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>
2010-07-06ext-toolchain: Fix ARCH_SYSROOT detectionThomas Petazzoni
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>
2010-07-06ext-toolchains: take into account other Glibc dynamic loader variantsThomas Petazzoni
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>
2010-07-06kernel-headers: bump 2.6.31-34 stable versionsPeter Korsgaard
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2010-07-05u-boot: add 2010.06 releasePeter Korsgaard
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>
2010-07-05package: add libsvgtiny libraryPeter Korsgaard
No official releases, so use svn snapshot like tremor :/ Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2010-07-04sdl_sound: add optional dependenciesPeter Korsgaard
Add the optional dependencies we have in BR (flac/speex/vorbis). Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2010-07-04sdl_sound: needs iconv if !localePeter Korsgaard
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2010-07-03sdl_sound: fix dependenciesPeter Korsgaard
sdl_sound naturally depends on SDL. Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2010-07-02blackbox: needs iconv if !localePeter Korsgaard
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>
2010-07-02toolchain: remove unused special detection of old toolchainsPeter Korsgaard
We only support gcc >= 4.2.x for the internal toolchain. Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2010-07-01bash: bump to 4.1.7(1) and migrate to autotargetsGustavo Zacarias
Closes #1993 Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2010-07-01tremor: fix svn checkoutPeter Korsgaard
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>
2010-07-01Makefile.package.in: allow packages to override download stepPeter Korsgaard
E.G. for checkout from version control instead. Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2010-07-01ubifs: fix lzo typoPeter Korsgaard
Closes #2155 Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2010-07-01xserver_xorg-server: fix _MAKE typoPeter Korsgaard
The variable should be XSERVER_XORG_SERVER_MAKE, not .._XSERVER_MAKE. Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2010-07-01Makefile: fixup make distclean after kconfig build in BUILD_DIRPeter Korsgaard
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>
2010-06-29Fix: convert leftover $(CONFIG)/conf to $(BUILD_DIR)/buildroot-config/confDaniel Hobi
Signed-off-by: Daniel Hobi <daniel.hobi@schmid-telecom.ch> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2010-06-26initramfs: update help textThomas Petazzoni
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2010-06-26initramfs: only show the option when a Linux kernel is being builtThomas Petazzoni
Closes #2119 Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2010-06-25dropbear: override detection of struct sockaddr_storagePeter Korsgaard
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>
2010-06-25docs: Fixed spelling error in buildroot.html GETTEXT instead of GNUTTEXTPeter Huewe
Fixed 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>
2010-06-25package: Remove portage, it's obsoleteGustavo Zacarias
Closes #1975 Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2010-06-25Deprecate rp-pppoe, functionality is in pppdGustavo Zacarias
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2010-06-25dnsmasq: bump to 2.55 and migrate to gentargetsGustavo Zacarias
Closes #2005 Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2010-06-25CHANGES: update after autotools-conversion mergePeter Korsgaard
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2010-06-25sdl: fix build without directfb after autotools conversionPeter Korsgaard
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>
2010-06-25Merge branch 'autotools-conversion' of ↵Peter Korsgaard
git://git.busybox.net/~tpetazzoni/git/buildroot
2010-06-24nbd: Bump nbd to version 2.9.15 and remove klcc issue.Peter Huewe
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>