Age | Commit message (Collapse) | Author |
|
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>
|
|
Those variables are not standard.
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>
|
|
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>
|
|
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 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>
|
|
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>
|
|
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>
|
|
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>
|
|
No official releases, so use svn snapshot like tremor :/
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
|
|
Add the optional dependencies we have in BR (flac/speex/vorbis).
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
|
|
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
|
|
sdl_sound naturally depends on SDL.
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>
|
|
Closes #1993
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
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>
|
|
E.G. for checkout from version control instead.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
|
|
The variable should be XSERVER_XORG_SERVER_MAKE, not .._XSERVER_MAKE.
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>
|
|
Closes #1975
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
|
|
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
|
|
Closes #2005
Signed-off-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>
|
|
git://git.busybox.net/~tpetazzoni/git/buildroot
|
|
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>
|
|
Signed-off-by: Paul Jones <paul@pauljones.id.au>
|
|
It is very old (cira 2003) and very broken
Signed-off-by: Paul Jones <paul@pauljones.id.au>
|
|
Changes by Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* Installation to target is the default
* No need to strip, it's done globally
Signed-off-by: cmchao <cmchao@gmail.com>
|
|
Changes by Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* Installation to target is the default
Signed-off-by: cmchao <cmchao@gmail.com>
|
|
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
Signed-off-by: cmchao <cmchao@gmail.com>
|
|
Changes by Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* Installation to target is the default
* No need to 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
|
|
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
|
|
Changes by Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* Target installation is the default
* No staging installation is the default
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
Signed-off-by: cmchao <cmchao@gmail.com>
|
|
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>
* Installation to target is the default
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>
|