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>
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>
Fix a few typos/mistakes introduced in commit ea448fe:
- bzip2 soname is not the same as package version
- It is PKG_INSTALL_STAGING, not PKG_STAGING_INSTALL
- Typo: BZIP2_INSTALL_TARGET_CMDS, not B2IP_INSTALL_TARGET_CMDS
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Some packages like icu requires to be compiled against the host system
first to be able to compile against the target. This is due to the
usage of self generated binaries by the package to build itself. When
the generated tools also depends on generated libraries it is required
to add the path to these libraries in the library path
(LD_LIBRARY_PATH) especially for the configure step.
Adding $(HOST_DIR)/usr/lib to LD_LIBRARY_PATH for target compilation
might break the link step by mixing host libraries and target
binaries.
Signed-off-by: Lionel Landwerlin <llandwerlin@gmail.com>
Acked-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
If devtmpfs (the kernel-maintained /dev filesystem) is used, no
/dev/pts directory is created, causing the devpts mount to fail, which
in term causes stuff like dropbear to fail.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
These are ancient (2006) and upstream strongly discourage using them:
ftp://sourceware.org/pub/gdb/old-releases/README
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
It got broken by the introduction of the new autotools infrastructure
based on the generic infrastructure.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Instead of asking the user about the GNU target suffix, just compute
it automatically from the other configuration options.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
In both internal and external toolchain cases, KERNEL_CROSS was
defined to *exactly* the same value as TARGET_CROSS. It isn't modified
anywhere, and is just used by kernel compilation and pcmcia
compilation.
Therefore, get rid of KERNEL_CROSS and use TARGET_CROSS instead.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
The definition of TOOLCHAIN_DIR is the same regardless of whether
external or internal toolchains are used. Moreover, move its
definition together with all the other *_DIR definitions.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Since new configuration options have been added in 0.9.31, the value
of these configuration options should be determined, either by the
default configuration file we provide, or by uclibc.mk process.
The locale generation process should probably be improved in order to
allow building other locales than just en_US.
[Peter: fixup locale handling, add PROGRAM__NAME to defconfig]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
UCLIBC_HAS_NFTW is a new knob in 0.9.31, which allows the obsolete and
deprecated ftw() to be compiled-out separatly from nftw(), which is
part of POSIX. nftw() should probably be enabled by default in uClibc,
and a bug has been opened about this on uClibc bug tracker
(https://bugs.busybox.net/show_bug.cgi?id=1597).
nftw() is, for example, used in Gtk+.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Acked-by: Paulius Zaleckas <paulius.zaleckas@gmail.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
When FOO_LIBTOOL_PATCH is defined, assume that the same value should
be used for HOST_FOO_LIBTOOL_PATCH.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
OpenSSL is not using the autotools as its build system. Therefore, we
must use the generic infrastructure instead of the autotools one.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Do not build against libgcrypt on the host, since we don't build
libgcrypt ourself, and it might fail even when libgcrypt is installed
on the host:
...configure...
checking for libgcrypt-config... /usr/bin/libgcrypt-config
Crypto extensions will be available.
...build...
gcc: /usr/lib/libgcrypt.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 autoreconf check was incorrect, missing a $ sign to properly
reference a package-specific variable. There was no visible effect
until now since :
* The existing syntax allowed to access the value defined in the
package specific .mk file, so when AUTORECONF was set to YES by a
package, it was working.
* The default value in Makefile.autotools.in was NO. In fact, when a
package .mkf file wasn't defining the AUTORECONF variable, the
Makefile.autotools.in test was testing the empty string against
'YES', which was false, leading to the AUTORECONF not being done,
which was the desired effect.
However, in a later patch, we intend to change this default value.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
install -D needs the destination filename, not just it's directory,
otherwise we end up with a pkgconfig file instead.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
autoheader is used by autoreconf, therefor we need to give the right
path to this tools for host/target autoreconfiguration.
Signed-off-by: Lionel Landwerlin <llandwerlin@gmail.com>
Acked-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
When compiling GDB for target (in my case i386) it links
wrong BFD library from host OS. This prevents GDB from compiling
support for ELF and thus GDB is unusable on target.
More about this issue was already posted at:
http://lists.uclibc.org/pipermail/buildroot/2009-March/026585.html
Fix this issue by forcing ELF support.
Signed-off-by: Paulius Zaleckas <paulius.zaleckas@gmail.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
These packages have buggy configure script. It adds -L/lib flag
for linker and thus wrong libraries are linked in.
Workaround this issue by setting expat=yes in configure
environment.
Signed-off-by: Darius Augulis <augulis.darius@gmail.com>
Signed-off-by: Paulius Zaleckas <paulius.zaleckas@gmail.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Fixes error: "open with O_CREAT in second argument needs 3 arguments".
Original patch: svn://svn.berlios.de/tslib/trunk/tslib r72.
[Peter: pull original patch for proper attribution]
Signed-off-by: Luca Ceresoli <luca@lucaceresoli.net>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
When initramfs was ported to the new fs structure the init symlink
macro was defined, but forgot to add it to PRE_GEN_HOOKS
Signed-off-by: Will Wagner <will_wagner@carallon.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
The restructure for building root filesystems changed the target name
for the initramfs file, to build the file the trget is now
initramfs-root but the generated file is rootfs.initramfs
Signed-off-by: Will Wagner <will_wagner@carallon.com>
Acked-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Commit 9277cb760a added support
for mtdinfo to mtd.mk but missed corresponding Config.in stuff.
Signed-off-by: Michael Roth <mroth@nessie.de>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
With the ROOTFS_TARGET conversion, EXT2_OPTS gets evaluated very early
(before TARGET_DIR is populated with files), so the calculated
blocks/inodes numbers are wrong.
Fix it by moving the calculation to a shell script wrapper around
genext2fs, so it only gets executed just before genext2fs runs.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
BR2_TARGET_ROOTFS_EXT2_RESBLKS is an int, so test against 0 rather than
the empty string - Otherwise the test is always true and a -m option
without arguments is added to the argument list, causing genext2fs to
get confused.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
We only bother updating the defconfigs that need a non-default
BR2_ROOTFS_DEVICE_TABLE value.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
We have a special case for Xtensa, which was patching the generic
device_table.txt. Instead of doing this, we just keep a copy of the
device table, specific to Xtensa, with Xtensa specifities. The fact
that the patch wasn't applying anymore on the generic device table is
a sign that the existing approach wasn't working anyway.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Until now, the location of the device table was specified by a
variable in board Makefiles. Unfortunately, this variable is not
accessible from fs/common.mk, since the target/ code is included
*after* fs/common.mk.
Anyway, the general idea is to move away from these boards Makefile,
and provide configuration option for things like the device table
location.
Therefore, this patch adds a BR2_ROOTFS_DEVICE_TABLE option which
allows to specify which device table should be used.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The installation procedure of cramfs was broken when
$(HOST_DIR)/usr/bin didn't exist (i.e, cramfsck was installed as
$(HOST_DIR)/usr/bin directly). Use install -D with a proper
destination argument to make it work.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
When compiling Busybox, according to readelf -A, all object files were
properly compiled according to the select architecture (-march=armv4t
for example), but the final busybox binary could be of a different
architecture (ARMv5t even if ARMv4t was selected).
This patch changes the way we configure/compile Busybox so that our
CFLAGS aren't anymore passed through the make EXTRA_CFLAGS variable,
but through the .config CONFIG_EXTRA_CFLAGS variable. Unfortunately,
those variables don't have exactly the same semantic for the Busybox
build system.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Multilib toolchains provide different versions of the base libraries
for different architecture variants. For example, the ARM Codesourcery
toolchain provides base libraries for ARMv5 (default), ARMv4t and
Thumb2.
Depending on the -march= argument passed to gcc, the sysroot used by
the compiler is therefore different. This means that the sysroot
location in CROSS-gcc -v cannot be used. Instead, we must use
CROSS-gcc -print-sysroot when available and fall back to the old way
if unavailable.
Moreover, we cannot simply copy the full sysroot as we used to do,
because the sysroot organization of multilib toolchain is more
complicated. In Codesourcery toolchains, we have :
/
etc -- for ARMv5
lib -- for ARMv5
sbin -- for ARMv5
usr -- for ARMv5 (includes headers)
armv4t
etc -- for ARMv4t
lib -- for ARMv4t
sbin -- for ARMv4t
usr -- for ARMv4t (no headers!)
thumb2
etc -- for Thumb2
lib -- for Thumb2
sbin -- for Thumb2
usr -- for Thumb2 (no headers!)
So we have the default ARMv5 architecture variant that is installed in
the main directory, and we have subdirectories for the ARMv4t and
Thumb2 architecture variants.
Copying the full sysroot to the staging directory doesn't work. All
our packages are based on the fact that they should install libraries
in staging/usr/lib. But if ARMv4t is used, the compiler would only
look in staging/armv4t/usr/lib for libraries (even when overriding the
sysroot with the --sysroot option, the multilib compiler suffixes the
sysroot directory with the architecture variant if it matches a
recognized one).
Therefore, we have to copy only the sysroot that we are interested
in. This is rendered a little bit complicated by the fact that the
armv4t and thumb2 sysroot do not contain the headers since they are
shared with the armv5 sysroot.
So, this patch :
* Modifies how we compute SYSROOT_DIR in order to use -print-sysroot
if it exists. SYSROOT_DIR contains the location of the main sysroot
directory, i.e the sysroot for the default architecture variant.
* Defines ARCH_SUBDIR as the subdirectory in the main sysroot for the
currently selected architecture variant (in our case, it can be
".", "armv4t" or "thumb2"). ARCH_SYSROOT_DIR is defined as the full
path to the sysroot of the currently selected architecture variant.
* Modifies copy_toolchain_lib_root (which copies a library to the
target/ directory) so that libraries are taken from
ARCH_SYSROOT_DIR instead of SYSROOT_DIR. This ensures that
libraries for the correct architecture variant are properly copied
to the target.
* Modifies copy_toolchain_sysroot (which copies the sysroot to the
staging/ directory), so that it copies the contents of
ARCH_SYSROOT_DIR, and if needed, adds the headers from the main
sysroot directory and a symbolic link (armv4t -> . or thumb2 -> .)
to make the compiler believe that its sysroot is really in armv4t/
or thumb2/.
Tested with Codesourcery 2009q1 ARM toolchain, Crosstool-NG ARM glibc
and ARM uClibc toolchains.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The copy_toolchain_lib_root function was making the assumption that
all libraries were stored inside the /lib directory of the sysroot
directory. However, this isn't true for certain toolchains,
particularly for the libstdc++ library.
The function is therefore reworked to find the library and its related
symlink either in /lib or /usr/lib in the sysroot, and copies it at
the same location in the target directory.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Until now, many TARGET_CFLAGS where missing when using an external
toolchain, due to how package/Makefile.in was written. Now, a lot more
definitions are common between the Buildroot toolchain case and the
external toolchain case.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Also cleanup autotools symbols and add libatomic_ops dependency
for Intel part.
Signed-off-by: Paulius Zaleckas <paulius.zaleckas@gmail.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
These options are part of the default set of options passed to
./configure by the AUTOTARGETS infrastructure.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Since the introduction of the AUTOTARGETS infrastructure, the dummy
example is no longer correct. Moreover, the documentation now contains
extensive details about how new packages should be added, either using
the GENTARGETS or the AUTOTARGETS infrastructures.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Bumping the version from 2.5.9 to 2.6 allows to avoid adding a patch
(merged upstream) to fix patch's Makefile install target.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Since BR2_RECENT was enabled by default, we do not want entries marked
BR2_RECENT (and thus appearing by default in Buildroot) to disappear.
Therefore, all the entries marked BR2_RECENT are converted as
non-deprecated. We can later decide, on a per-entry basis, to add
BR2_DEPRECATED to some of them. But at least, this commit doesn't
change the default current behaviour of Buildroot.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
This variable, together with the FIXME comment, has been added has
part of Eric Andersen's « Major buildroot facelift, step one » commit
that occured in October 2004.
Since then, no real usage has been made of OPTIMIZE_FOR_CPU, and the
initial intention has probably been lost in the memories of the
implementors.
Therefore, get rid of the variable, and just use $(ARCH) at the two
locations the variable was used.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
It seems that there was an intention to add BR2_ENABLE_OPENMP someday,
but it was in June 2007 (commit
c81807a9d7) and since then, nothing
occured. Therefore, get rid of this code, and just pass
--disable-openmp to gettext to keep the current behaviour.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The option is marked broken since october 2009, and even the uClibc
configuration help text says that using pregenerated locales is highly
discouraged.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Instead of having a configuration option BR2_GNU_BUILD_SUFFIX, let's
use config.guess to guess the build system type.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Since the documentation cleanup is done by the main Makefile in a
global way, there's no need to do that on a per-package basis in the
generic package infrastructure.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Until now, we had BR2_HAVE_MANPAGES, BR2_HAVE_INFOPAGES and
BR2_HAVE_DOCUMENTATION, but there's no need to have such a
fine-grained control over what documentation gets kept or not.
Therefore, just remove all the documentation (man pages, info pages
and documentation in $(TARGET_DIR)/usr/doc and
$(TARGET_DIR)/usr/share/doc) when BR2_HAVE_DOCUMENTATION is not set.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The cleanup of $(TARGET_DIR)/usr/share/man, $(TARGET_DIR)/usr/man,
$(TARGET_DIR)/usr/share/info, $(TARGET_DIR)/usr/info,
$(TARGET_DIR)/usr/share/doc and $(TARGET_DIR)/usr/doc is already done
globally in the main Makefile. Therefore, there's no need to handle
that on a per-package basis.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Remove the BR2_UPDATE_CONFIG option which allowed to globally
enable/disable the replacement of config.{guess,sub} for
autotools-based packages. Doing it unconditionnally just works.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
This option is barely used, no-one is maintaining it or extending
it. So let's remove it.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Add support for the old squashfs 3.x tools, so that squashfs 3.x root
filesystems can be generated.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The dependency on gzip, bzip2 and lzma are properly handled
automatically. No need to tell the user about this.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Now, we just hardcode the image filenames to be rootfs.$(FSTYPE), in
the $(BINARIES_DIR).
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Unfortunately, it cannot use the ROOTFS_TARGET infrastructure, due to
the specifities of the iso9660 build process.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
We also remove the BR2_TARGET_ROOTFS_UBIFS_OUTPUT option, that could
be used to specify an alternate name for the generated image file.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
We also remove the BR2_TARGET_ROOTFS_JFFS2_OUTPUT option, that could
be used to specify an alternate name for the generated image file.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
We also remove the BR2_TARGET_ROOTFS_EXT2_OUTPUT option, that could be
used to specify an alternate name for the generated image file.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
In order to avoid code duplication between the different filesystem
generation makefile, we introduce a ROOTFS_TARGET macro. Documentation
for this macro is contained in the patch.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
There's no need to provide options to copy the filesystem image after
the build. Just use 'cp' outside of Buildroot.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Use package/mtd to build the host mtd-utils, which contains
mkfs.ubifs. Remove dependency on BR2_HOST_FAKEROOT.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Remove the code to build squashfs-tools for the host, since they can
now be built using package/squashfs.
We also remove support for Squashfs 3.x, because the Squashfs driver
merged inside the mainline kernel is a 4.x driver. So 3.x is only
useful for old kernels using a Squashfs patch.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Remove the code needed to build host genromfs, since it can now be
done using package/genromfs.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Remove the code to build host MTD utils, since they can now be built
using package/mtd.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Remove the genext2fs host tools building process, which is now in
package/genext2fs.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* Remove the dependency on BR2_HOST_FAKEROOT, since we don't have
config option for host tools.
* Remove a few useless things.
* Check that cpio is available on the host in
toolchain/dependencies/dependencies.sh.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Remove the code to build the cloop utilities for the host (it is now
in package/cloop).
Use fakeroot instead of ugly sudo. The cloop filesystem generation
code is now much more similar to other filesystems code.
Remove empty Makefile.in.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Note that we loose the ability to use a lzma command available on the
host and we now always build your own if a package needs it.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Only the host variant is supported, which explains why there is no
Config.in file. Will be used by the filesystem generation code.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Host package is needed to get libuuid installed for the host, needed
to build the mtd utils for the host.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Supported both for the target and the host. Will be used by the root
filesystem generation code, thanks to genisoimage.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Only compilation for the host is supported, why explains why we don't
have a Config.in and the corresponding BR2_PACKAGE_CMAKE option.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Needed as a dependency of cdrkit, which contains genisomage, useful
for generating ISO9660 filesystem images.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Note this version requires a recent kernel with KMS support as it is
currently configured
Signed-off-by: Will Wagner <will_wagner@carallon.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Libtool patch applies just fine.
mbdesktop_modules is installed by the matchbox-desktop and we
don't have to overwrite it with our copy(contains wrong paths).
Signed-off-by: Paulius Zaleckas <paulius.zaleckas@gmail.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
The toolchains built with buildroot use specially crafted paths for their
sysroot and prefix. Fix that by asking gcc where it finds a file we
know by relative path to the sysroot.
This has the side effect of greatly simplifying the sysroot detection
in every cases tested so far (BR toolchains, CT-NG toolchains, and
CodeSourcery toolchains).
Fixes bug #851.
Thanks Thomas Petazzoni for the hint and some testings.
Thanks Grant Edwards for the report and the comments.
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>
usb_modeswitch build system is just a simple Makefile, so the
GENTARGETS infrastructure is more appropriate than the AUTOTARGETS
infrastructure. The build system is slightly fixed through a small
patch, that replaces the previous "nostrip" patch.
The latest version of usb_modeswitch is 1.1.1, but it now relies on
udev and requires TCL to operate. Someone actually using
usb_modeswitch would probably be at a better place to do this version
bump.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Upgrade libusb to v1.0.3 and add new libusb-compat package for
compatibility with old packages that expect the pre-1.0 API.
Also update usb_modeswitch to depend on libusb-compat rather than
libusb.
Minor fixes by Thomas Petazzoni <thomas.petazzoni@free-electrons.com>.
Fixes bug #1093.
Signed-off-by: Mike Crowe <mac@mcrowe.com>
Enable susv3/susv4 legacy support for now, as a lot of packages (E.G.
busybox) breaks with the stricter interpretation in 0.9.31.
Also slightly tweak uclibc.mk as the "new" linuxthreads symbol changed.
Test built on x86/x86-64/ppc/arm/mips.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Strangely enough O is still passed to submakes with MAKEOVERRIDES
(with make 3.81 atleast), the only thing that changes is the output
of the origin function (command line -> environment).
Unfortunately some packages don't look at origin (E.G. uClibc 0.9.31+)
To really make O go away, we have to override it.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Now that the kernel-headers are bumped, also bump the linux
targets to match.
Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
qt 4.6.x has a number of new configure options, and needs a patch to
work on uClibc.
Signed-off-by: Frederik Vannoote <frederik.vannoote@barco.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
It is not included in generic skeleton and very unlikely
that someone will use it on embedded devices.
AFAIK even Fedora does not include it in fstab.
Signed-off-by: Paulius Zaleckas <paulius.zaleckas@gmail.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Closes#1387
The documentation step needs working groff and ps2pdf on the host, and
only slows down the build, so just disable it.
At the same time, cleanup the overlong _CONF_OPT line.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
With multicores everywhere, 2 is probably a bit low - But atleast it's
better than the current default.
This extra parallelism also ensures we get to test the make dependencies
a bit more.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Lay down the path to add more than two toolchain kinds:
- check the type of toolchain as:
ifeq (toolchain_buildroot,y)
blabla buildroot-specific
else ifeq (toolchain_external,y)
blabla external-specific
endif
- prefer using positive checks, a-la:
ifeq (foo,y)
instead of:
ifneq (bar,y)
(where foo and bar are mutually exclusive)
- have the toolchain_buildroot case always appear first
- gettext is handled differently, because we want to add an option
only if not using the buildroot toolchain, hence we use ifneq.
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>
Closes#1447
When installing without symbols install-strip is used,
with symbols - install-exec.
Since install-exec installs only executables, we should use
simple install, to install other needed files also
(like files in /usr/shared) as install-strip does.
Signed-off-by: Paulius Zaleckas <paulius.zaleckas@gmail.com>
Acked-by: Lionel Landwerlin <llandwerlin@gmail.com>
Acked-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Has been marked as broken for more than 1 year, with no indication
that anyone cares, and it needs a bunch of special handling.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Also autotools.in conversion and change source location from
gd.tuwien.ac.at to ftp.gnupg.org
[Peter: add missing libgpg-error makefile dependency]
Signed-off-by: Lionel Landwerlin <llandwerlin@gmail.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Closes#805
This patch updates mdadm to 2.6.9 and uses the new makefile template.
Signed-off-by: Richard van Paasen <rvpaasen@t3i.nl>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Makefile.autotools.in automatically adds these to the configure invocation,
so there's no need to explicitly list them.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
linux/hayesesp.h got removed in 2.6.33, but some archs (like x86) still
define the TIOCGHAYESESP ioctl, breaking the build.
It's very unlikely to be of interest anymore, so just undef it.
Reported-by: Paulius Zaleckas <paulius.zaleckas@gmail.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
As the 0.9.30.x stable releases only contain bugfixes, there isn't much
sense in using the older 0.9.30.x releases instead of .3, so use a single
0.9.30.x config similar to how we do it for the kernel headers.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
The -mm tree is really no longer available since the -next tree
was created for testing. It's not even listed on the kernel.org
site any longer. Plus, the last one that was published as
available was pretty old, 2.6.28-rc2-mm1.
Remove all the -mm patch stuff from Buildroot to clean up the
Linux kernel selection.
Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Reported by H Hartley Sweeten.
Make sure we pass proper CFLAGS to mtd-utils, so builds needing --sysroot
works (E.G. external toolchains).
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Reported by "Thomas".
Strip fails as it gets called without any arguments. Instead of working
around this, simply remove the package-specific stripping as it is
done later (in target-finalize) anyway.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Commit be8a104c3c (pass CFLAGS/LDFLAGS and add host-zlib dependency)
changed the way make was invocated for squashfs and added a patch for 4.0,
but forgot to add an equivalent patch for 3.4.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Also mark this driver as broken. It fails to compile since it
needs some headers from OpenBSD/NetBSD. We actually don't care
about this driver.
Signed-off-by: Paulius Zaleckas <paulius.zaleckas@gmail.com>
Also fix building as the patch was correct, but autoreconf
had to be done for it to take effect.
Signed-off-by: Paulius Zaleckas <paulius.zaleckas@gmail.com>
This reverts commit 1d7b6f65c6.
The fsync patch tries to add the same lines already added by
busybox-1.16.0-compat.patch, so skip it.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Squashfs depends on host-zlib, so we add this as a dependency. As
host-zlib is installed in $(HOST_DIR), we must pass $(HOST_CFLAGS) and
$(HOST_LDFLAGS).
Unfortunately, if we pass CFLAGS=$(HOST_CFLAGS), we override the
CFLAGS defined in the Makefile, and the build fails. Therefore, we
borrow a patch from OpenEmbedded to fix this problem.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
cramfs depends on host-zlib, so it must be built prior to cramfs.
Moreover, we need to pass the HOST_CFLAGS and HOST_LDFLAGS variables,
otherwise it doesn't find zlib in $(HOST_DIR).
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
First, the build was failing with:
cd .. && /bin/sh /home/test/brbuild/build/cgicc-3.2.7/support/missing --run autoheader
/home/test/brbuild/build/cgicc-3.2.7/support/missing: line 52: autoheader: command not found
WARNING: `autoheader' is missing on your system. You should only need it if
you modified `acconfig.h' or `configure.ac'. You might want
to install the `Autoconf' and `GNU m4' packages. Grab them
from any GNU archive site.
That was because the PATH doesn't contain $(HOST_DIR)/usr/bin. So we
pass $(TARGET_MAKE_ENV) when calling make.
Then, the build was failing because of the crappy configure.ac and
doc/Makefile.am this project has. configure.ac checks if doxygen is
available, and if it isn't, it sets DOXYGEN to /bin/echo. Then,
doc/Makefile.am does:
DATE=`date '+%-d %b %Y'` VERSION=$(VERSION) $(DOXYGEN) Doxyfile
cp $(IMAGES) cgicc-doc.css html
mv html/index.html html/index.html.bak
When DOXYGEN=/bin/echo, then the first line does not generate anything
in html/, and the third line fails.
Therefore, we add a patch that allows to pass a --disable-doc option,
which removes the check for Doxygen. If --enable-doc is passed, then
the configure script fails if Doxygen isn't found (but in the
Buildroot case, we always pass --disable-doc to avoid the doxygen
dependency).
We also take this opportunity to bump the version of libcgicc, and to
remove a patch that is no longer needed due to this version bump.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Closes#1183.
When gmp/mpfr is needed for the host (E.G. when using an internal toolchain),
the host-lib{gmp,mpfr}-source targets weren't added to HOST_SOURCE, so
make source / external-deps didn't handle them.
Notice that we have the same issue with the new host package support,
there we should probably use HOST_<package>_DEPENDENCIES for -source
dependencies.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Without intltool, configuration fails with:
checking for intltool >= 0.35.0... ./configure: line 28714: intltool-update: command not found
found
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Depending on the gcc version, the gcc include and lib directories have
changed. We include support for gcc 4.4 by copy/pasting the support
for gcc 4.3. Locations don't seem to have changed between 4.3 and
4.4. This allows the syslimits.h fixup to succeed.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Before the autotools conversion, xfont_font-util was installed in
staging, so keep this.
However, the current way of handling xfont_font-util is ugly. The
post-install.sh script removes the binaries compiled for the target
from the staging directory and replaces them by symbolic links to
utils installed on the host (making the incorrect assumption that they
are available).
It looks like xfont_font-util needs to be built for the host (using
the new infrastructure for host autotools package). This is certainly
post-2010.02 though.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
madplay was failing to build with errors such as :
audio_alsa.o: In function `config':
audio_alsa.c:(.text+0x200): undefined reference to `snd_pcm_hw_params_set_rate_near@ALSA_0.9'
audio_alsa.c:(.text+0x25c): undefined reference to `snd_pcm_hw_params_set_buffer_time_near@ALSA_0.9'
audio_alsa.c:(.text+0x284): undefined reference to `snd_pcm_hw_params_get_buffer_size@ALSA_0.9'
audio_alsa.c:(.text+0x2a4): undefined reference to `snd_pcm_hw_params_set_period_time_near@ALSA_0.9'
audio_alsa.c:(.text+0x2d4): undefined reference to `snd_pcm_hw_params_get_period_size@ALSA_0.9'
The ALSA library uses symbol versioning by default, to handle ABI
changes. However, since uClibc doesn't seem to support symbol
versioning, we disable this when building the ALSA library by passing
--without-versioned.
However, madplay relies on the old ALSA ABI, so even without symbol
versioning, references to versioned symbols are generated (functions
with the same name, but different API, exist in the old and new API).
The easiest solution is to switch madplay to the new API. This is done
thanks to a patch written by Micha Nelissen <micha@neli.hopto.org> and
available at http://article.gmane.org/gmane.comp.audio.mad.devel/729.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
This module got disabled when pango was upgraded to 1.19.3. But now,
the module builds fine. And even more: disabling it breaks the build
when modules are compiled statically into pango.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The gtk-doc.m4 file is now installed globally (see the automake
package), so there's no point in including a pango-specific patch.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
This is an old package. It is currently broken, and probably nobody
uses it. So let's get rid of it.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
This fixes the following build failure:
checking lex output file root...
configure: error: cannot find output from flex; giving up
Caused by the fact that a host version of flex is missing
in $(HOST_DIR).
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Bump all the linux kernel version to the latest available and add a
help note for all of them with the release data and status.
The long-term stable 2.6.27 kernel is really out of date (.27 -> .45).
Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Probing the kernel version uses command substitution to capture the
result of a make command. If the top-level make is run with -C, the
sub-make will print entering/leaving directory messages, mucking up the
output we're trying to capture.
Invoke the sub-make with --no-print-directory so we get clean output.
Signed-off-by: Cameron Hutchison <cam@camh.ch>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
In uClibc, NPTL support does not exist in the 0.9.30 branch, that we
are using in Buildroot. It is only available in the uClibc daily
snapshot, extracted from uClibc master branch.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
In uClibc, NPTL support does not exist in the 0.9.30 branch, that we
are using in Buildroot. It is only available in the uClibc daily
snapshot, extracted from uClibc master branch.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
I could have created a !dependency on !BR2_PTHREADS_OLD, but that
wouldn't work with external toolchains. So, let's just add a notice in
the help message of WebKit.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The mplayer configure script was failing with:
Checking for iconv program ... no
No working iconv program found, use
--charset=UTF-8 to continue anyway.
If you also have problems with iconv library functions use --charset=noconv.
Messages in the GTK-2 interface will be broken then.
Therefore, we pass --charset=UTF-8 instead of --charset=US-ASCII.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
--without-html-dir doesn't work. It leads libsoup ./configure script
to think that HTML_DIR is "no", which leads to the installation of the
documentation in $(STAGING_DIR)no (yes, with the "no" suffix at the
end). The issue is that --with-html-dir is not an enable/disable type
of option, it's an option that only allows to pass a PATH for
documentation installation.
As we don't want the documentation to be installed in this odd
$(STAGING_DIR)no directory, we simply get rid of this option.
See 7e62e8ec72 for another instance of
the same problem.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
This patch fixes different problems:
* The autogen script of Webkit did not find autoconf, automake and
aclocal since they are not installed in the host, but in
$(HOST_DIR). Therefore we pass HOST_CONFIGURE_OPTS to autogen.sh so
that the PATH is correct.
* The autogen script was complaining that gtk-doc.make could not be
find. As compiling gtk-doc completely is a pain (depends on
Docbook), we just include gtk-doc.make into package/webkit/, and
copy it to the source directory.
* The autogen script was complaining about macros used in
gtk-doc.make that did not exist. This is because aclocal was not
run with $(STAGING_DIR)/usr/share/aclocal/ in the include
path. Therefore, we fix ACLOCAL_FLAGS of Webkit's autogen script
before running it.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Make sure that we touch the target so that the target is newer than
the .compiled stamp file.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
After being copied to target/, touch dmsetup so that its date is newer
than the .built stamp file in lvm2 source directory. This prevents
make from re-installing dmsetup every time.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Adding real targets to $(TARGETS) doesn't work, since they are
prefixed __real_tgt by the main Makefile. 'make' then always thinks
that these targets aren't up-to-date, and re-generate them every time.
Therefore, we switch dosfstools to the more common way of handling
packages, with a phony target added to $(TARGETS), this phony target
depending on real targets.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Real targets should not depend on phony targets, otherwise they get
rebuilt everytime.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Real targets should not depend on phony targets, otherwise they get
rebuilt every time.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
matchbox-desktop fails to build because it tries to read
/usr/lib/libxcb.la, which doesn't exist on a very basic system with no
development files instead. The buildroot-libtool.patch must therefore
be applied.
Unfortunately, matchbox doesn't yet use the autotools infrastructure,
so we have to manually apply the patch.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
At install stage, iw needs pkg-config, through the PKG_CONFIG
environment variable.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
For some reason, our imagemagick.mk file calls libtool, but assumes
that libtool is available on the host, which may not be
true. Therefore, we use ImageMagick's internal libtool, which has been
used for compiling/linking all the rest of ImageMagic anyway.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
imagemagick configure script wants to run programs to detect the
file_offset_bits, but fails since it is running cross-compile
mode. Therefore, we help the configure script by passing the
appropriate ac_cv variable.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
When installing shared-mime-info on the target, we runn
update-mime-database, which has been built previously by building and
installing shared-mime-info for the host. However, for
update-mime-database (host version) to run properly, we must pass the
appropriate LD_LIBRARY_PATH variable.
We re-use the existing $(HOST_MAKE_ENV) variable to pass all the
appropriate variables.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
gob2 for the target needs both flex on the host (for running the flex
program at compile time) and flex on the target (so that it can link
against libfl.a).
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Flex contains a libfl.a directory, which programs for the target might
link against. Therefore, we need to install flex to the staging
directory. An example of such a program is gob2, which needs the
yywrap() function, which is implemented by libfl.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Now that we might happen to build libxml-parser-perl and intltool,
Perl becomes a mandatory dependency. This shouldn't be a problem since
most distributions install Perl by default anyway.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
This XML internationalization set of tools is required to build
several of our packages, and may not be available on the host machine.
Only the host variant has been tested.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Now that we build Perl modules in $(HOST_DIR), PERLLIB must be defined
to $(HOST_DIR)/usr/lib/perl.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
This Perl module is needed to build intltool, which in turn is needed
to build several of our packages. We assume that Perl is installed on
the host.
Only the host variant of this package has been tested and is used. The
code for the target variant (what to do at the configure, build and
install steps) isn't implemented, but the GENTARGETS call for the
target is mandatory, due to limitations of the Makefile.package.in
infrastructure (if one wants the host package to be implemented, then
the target package *must* exist). This limitation will be removed
after 2010.02.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Making a full build of libgtk2 for the host is a pain, since it
requires host-cairo, which it turns requires a full X.org stack to be
compiled for the host.
Moreover, building libgtk2 for the host completely is useless: we only
need gdk-pixbuf-csource and gtk-update-icon-cache.
In this patch, we add a new
host-libgtk2-2.12.12-reduce-dependencies.patch, that is only applied
to libgtk2 when being built for the host. This patch removes a lot of
dependencies in configure.in, which allows to:
* run make and make install in gdk-pixbuf/, which compiles and
installs the gdk-pixbuf library and the gdk-pixbuf-csource utility
* run make gtk-update-icon-cache in gtk/, which compiles the
gtk-update-icon-cache utility, which is then installed manually
The compilation and installation steps of libgtk2 for the host are
therefore overriden, so as to not use the default behaviour, which
would attempt to build the full gtk library.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
They are needed to uncompress the tarballs we download. bzip2, for
instance, is not necessarly installed by default on basic Debian
systems.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
This package is BROKEN in the way it compiles make-imglib and text2c
for the host while being in cross-compiled mode. It does not use
CC_FOR_BUILD and CFLAGS_FOR_BUILD as it should.
No upstream release has been made since 2001 and since it is a
relatively useless package, I don't think it's worth the trouble to
sanitize its build system.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
libpng is needed on the host to build the make-imglib utility, built
during the compilation of ace_of_penguins for the target.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
During the compilation of target or host packages, host tools might be
used, and in turn, they might use host libraries installed in
$(HOST_DIR)/usr/lib. Therefore, we pass a LD_LIBRARY_PATH variable
when building packages.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
zlib is needed on the host, to build xlib_libfontenc on the host, to
build xapp_mkfontscale on the host, in order to finally build xfonts
encodings on the target.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
xlib_libfontenc is required to build xapp_mkfontscale on the host,
which in turn is needed to build font encodings for the target.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
mkfontscale on the host is needed to build xfont_encoding, therefore
we add host-xapp_mkfontscale as a dependency.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
mkfontscale on the host is required to build xfonts-encoding for the
target.
We also fix the dependencies. xlib_libX11 is not needed to compile
xapp_mkfontscale. However, xproto_xproto is needed.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Make sure that libxcb depends on host-xsltproc, since xsltproc is
required for the compilation of libxcb.
Moreover, remove the XSLTPROC=/usr/bin/xsltproc variable definition,
which was assuming that XSLTPROC was installed on the host. xsltproc
should just be part of the PATH.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Compiling libxcb (from the X.org stack) requires xsltproc on the host,
which is part of libxslt.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The libtool patch is not applied when building for the target because
it does not apply, so do not attempt to apply it when building for the
host. This fixes libxml2 build for the host.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
automake for the target fails to build if autoconf is not installed on
the host:
checking whether autoconf is installed... no
configure: error: Autoconf 2.58 or better is required.
Please make sure it is installed and in your PATH.
make: *** [/home/test/brbuilttest/build/automake-1.10/.stamp_configured] Error 1
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
This package requires Xaw3d, that has never been packaged in
Buildroot. As no-one seems to be using this package, it's probably not
worth the effort of packaging Xaw3d, a old-looking widget
toolkit. Therefore, just drop the package.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
ace_of_penguins fails to build when xlib_libXpm is not selected. Add
it has a dependency. However, contrary to normal dependencies to
libraries (where we use 'select') we use 'depends on' here, otherwise
the X.org server will be get selected automatically without the user
noticing.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Two variants of the ncurses library exist: the normal one, and the
ncursesw one, which has support for wide char. Currently, Buildroot
only builds the normal variant (the second variant requires
--enable-widec while compiling ncurses).
Unfortunately, when libncursesw is installed on the host, the
configure script of alsa-utils finds /usr/bin/ncursesw5-config and
thinks that the target has this version. Unfortunately, as this is not
the case, it causes a configure failure when trying to link a sample
program against libpanelw (which is part of ncurses).
Therefore, we force the libncurses variant used by alsa-utils to the
normal variant.
Later on, if needed, support for the wide-char variant of the
libncurses library could be added.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Without this patch alsamixer complains about missing libs and
ldd says:
libform.so.5 => not found
libmenu.so.5 => not found
libpanel.so.5 => not found
libncurses.so.5 => /usr/lib/libncurses.so.5 (0x4000e000)
libasound.so.2 => /usr/lib/libasound.so.2 (0x40056000)
... <cut>
Signed-off-by: Julien Boibessot <julien.boibessot@armadeus.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
The rule to copy the resulting binary file into the binary directory had
a typo in the line continuation character that results in a spurious error
message being produced.
Signed-off-by: Rob Alley <Rob.Alley@navmanwireless.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Otherwise, even if speex is selected, as gstreamer is compiled first,
speex plugin is not activated/built.
Signed-off-by: Julien Boibessot <julien.boibessot@armadeus.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
rsync source repository has moved (?).
Bump version while we are at it.
Signed-off-by: Julien Boibessot <julien.boibessot@armadeus.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Sets THIS_MINOR to 0 if not valid, ie when processing a Linux config file
which does not have a minor number extension;
ex: "<name>-linux-2.6.<major>.config"
Otherwise bash is raising an error/exception (line 59) and script can not
complete.
Signed-off-by: Julien Boibessot <julien.boibessot@armadeus.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
The version of TCL is bumped from 8.4.9 to 8.4.19, which fixes the
build breakage reported by Maxime Ripard <maxime.ripard@anandra.org>
on January, 6th, 2010.
The tcl-strtod patch is kept since it is still needed, the two other
patches are no longer useful.
At the same time, the package is converted to the autotools
infrastructure.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The .pc file of TrapProto says that it depends on xt, even through it
doesn't depend on it at compile time. However, if xt isn't present
when TrapProto has been installed, the compilation of Xserver fails
telling that there is a missing dependency in TrapProto on Xt.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
When packages using gtk-doc are autoreconfigured, aclocal complains
because it cannot find the macros defined in gtk-doc.m4. We could
compile the gtk-doc package for the host, but it depends on
gnome-doc-utils, which depends on libxml2, libxslt, and other packages
as well.
Since we don't care about the documentation, all is needed is in fact
the gtk-doc.m4, so that the configure script can be generated, and we
can use the --disable-gtk-doc to not generate the documentation.
To solve this, we include a gtk-doc.m4 file in package/automake/, and
it gets installed in $(STAGING_DIR)/usr/share/aclocal/ during the
installation of the host automake (used for autoreconfiguration of
packages).
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Add a patch that makes sure config.h gets included in a file that uses
some of the NEEDS_* macros. The yywrap() function was missing when
flex was not available on the target, even though this configuration
is supposed to be supported by at (and handled by NEEDS_YYWRAP).
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Add a patch that includes pcap.h instead of hardcoding an incorrect
prototype for a function provided by libpcap.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
This fixes the build of libcap, with external toolchain, when it is
the first package being built.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Create tarballs with git-archive so we're sure they don't contain
anything not in git (E.G. local backup configs).
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
This patch, gotten from liboil git (recent commit), fixes the problem.
Signed-off-by: Julien Boibessot <julien.boibessot@armadeus.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Commit 65e99014 (Remove external source toolchain options) removed
external source-based toolchain support, but there was still a check
for it in gdb.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
BR2_VENDOR_GDB_VERSION and VENDOR_GDB_VERSION are no longer settable.
The only user is gdb, and it's totally useless in this case.
Signed-off-by: Yann E. MORIN <yann.morin.1998@anciens.enib.fr>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
And also adapt X depency. Rdesktop only needs libX11/Xt, and long term
we should be able to use the X stuff without having a X server on the
target.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
The BR2_VENDOR_SUFFIX and VENDOR_SUFFIX variables are no longer settable.
The only user is gdb, and is totally useless in this case.
Signed-off-by: Yann E. MORIN <yann.morin.1998@anciens.enib.fr>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Build host version in build/mtd-utils-<VERSION>-host like other host
packages, and install into host/usr/sbin.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Closes#1003.
Several config options have gotten renamed in 1.16, making the 1.13.x
defconfig not enable the stuff we want.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
[Peter: renamed patches to get picked up by infrastructure]
Signed-off-by: Lionel Landwerlin <llandwerlin@gmail.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Patch bash32-011 modifies the configure.in script. Therefor we need to
run autoconf before launching the configure script. Otherwise, once
the configure script called, the makefile's dependencies over
configure.in will relaunch autoconf without options/environnement
variables we usually set when calling configure.
[Peter: use our own host-autoconf instead of what's on the host]
Signed-off-by: Lionel Landwerlin <llandwerlin@gmail.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
[Peter: updated to 2.22.4 instead which is so far only on ftp.gnome.org,
fixed build without IPv6 support]
Signed-off-by: Lionel Landwerlin <llandwerlin@gmail.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
So "/opt/whatever_toolchain/gcc --sysroot $(STAGING_DIR)" isn't
stripped to "/opt/whatever_toolchain/gcc", making gcc to look at
$(ORIGINAL_TOOLCHAIN_DIRECTORY)/usr/include instead of
$(STAGING_DIR)/usr/include. For more CC is already filled when
running the configure script.
This problem should only be visible with an external toolchain.
Signed-off-by: Lionel Landwerlin <llandwerlin@gmail.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Make install would fail if target != host, as it tried to use host strip
for install -s.
Patch 1-5 from ptxdist.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Could not apply when missing top level Makefile, which is also
regenerated by the configure script.
Signed-off-by: Lionel Landwerlin <llandwerlin@gmail.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
If SDL is built before tslib, then SDL can't detect it at configure
time and so touchscreen's support in SDL is crappy.
Signed-off-by: Julien Boibessot <julien.boibessot@armadeus.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Closes#919.
Includes new device signatures, improved handling of Huawei devices
and other fixes.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
RPM-5.2.0 needs the optional XML support in libneon.
Restructure kconfig dependencies to ensure rpm can only be selected
if libneon with XML support (in addition to SSL + ZLIB) is enabled.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Sometimes usr/lib32 or usr/lib64 is used instead of usr/lib, so search
those for .la files as well.
Fixes .la fixup for beecrypt on x86-64.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
A number of options under "MTD tools selection" are no longer
available. Remove them to avoid possible build errors.
In addition, the nandtest utility is present in MTD-utils release
so remove the depends on BR2_PACKAGE_MTD_UTILS_GIT.
Add a number of new utilities that exist in the latest version.
All of these do not have a 'default y' so existing configurations
should not change.
Reorder the MTD_TARGETS_* to match the Config.in so it's easier
to notice missing utilities.
Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
[Peter: has own libtool patch, use std staging install, fix target install]
Signed-off-by: Lionel Landwerlin <llandwerlin@gmail.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Fixes two issues with libtool patching:
- It seems like the default value for <package>_LIBTOOL_PATCH only gets
set AFTER the ifdef check, so the conditional was never taken. Fix it
by instead checking that it isn't explicitly set to not do the patching
instead.
- The $i in the libtool patching for loop needed an extra level of escaping
to work.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Packages which also build a host variant and have LIBTOOL_PATCH = NO,
should also disable libtool patching for the host build.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Closes#813.
Drop generic package selection (access point, firewall, dev system) since
they're too ambiguous and not very useful.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Closes#823.
~ is commonly used as a suffix to editor backup files.
Remove these files, just as we remove CVS-directories and
.empty-files.
[Peter: tweaked to remove in same find invocation as .empty]
Signed-off-by: Anders Darander <ad@datarespons.se>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
[Peter: cleanup, only install header if libuuid is installed]
Signed-off-by: Nigel Kukard <nkukard@lbsd.net>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
In 2009.11, a number of extra files are needed to build mkimage. Adjust
the makefile to add those if available, so it builds with both 2009.11
and older releases.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Closes#757.
Make sure that /usr/bin/ exists, before trying to copy mkimage to that
location. When using an external toolchain, /usr/bin is not guarenteed to
exist.
Signed-off-by: Anders Darander <ad@datarespons.se>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Reported by Grant Edwards <grant.b.edwards@gmail.com>
Use the new default STAGING_DIR location (output/staging) in all the
defconfigs for clarity.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
- Selecting symbols with dependencies doesn't work unless you select
the dependencies as well
- udev-volume-id target gone, use the generic udev one instead
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Factorize some of the tests done by
toolchain/dependencies/dependencies.sh (check for unset environment
variables and check for required programs).
Make the output less verbose by only showing something when something
is not present. Some messages were really silly.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Use correct variable name for the host source directory for
DBUS_HOST_INTROSPECT, and use late binding as HOST_DBUS_DIR only gets
defined later on (by AUTOTARGETS).
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
makeinfo is mandatory at least to build a toolchain. Currently,
dependencies.sh doesn't fail if makeinfo is not present and only
displays a message that can easily be lost. The user will then
encounter the issue later, when it is more difficult to understand
what's happening.
So, this patch simply does for makeinfo what the script does for the
other dependencies: bail out if they aren't available.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Document the new generic package infrastructure, and how target/host
packages are handled, both for the generic package infrastructure and
the autotools package infrastructure.
This documentation replaces the documentation that used to be present
at the top of Makefile.autotools.in. Both tutorial and reference
documentation are provided.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Now that the previous commit implemented a generic package
infrastructure, we make the autotools infrastructure inherit from the
generic one so that the code is not duplicated.
The new AUTOTARGETS macro works by defining what should be done at the
configure, build and install steps of a package and then calls the
GENTARGETS macro of the generic package infrastructure.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
This new infrastructure allows to write simpler .mk files for packages
not using the autotools as their build system, by factorizing many
common steps (download, extract, patching), and will more easily allow
Buildroot-wide changes in how the packages are handled.
The main macro is called GENTARGETS and works similarly to the
AUTOTARGETS macro that already exists for autotools-based
packages. However, the set of variables to be defined before calling
the macro is different. Refer to the documentation for details.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Commit 09c181f289 added new options
passed to gcc configure to set --with-pkgversion and --with-bugurl, to
gcc >= gcc 4.3. To check this, it was checking that the GCC_VERSION
string does not contain 4.2.
Unfortunately, the test is bogus. It does a findstring on x4.2. (with
a final dot) but compares the result with x4.2 (without the final
dot).
The result is that even with 4.2 versions, the test was true, leading
--with-pkgversion and --with-bugurl being passed to gcc's configure
script.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
This patch fixes the prctl syscall for the AVR32 architecture, since this
architecture assumes you handle varargs in a proper way, always.
Signed-off-by: Hans-Christian Egtvedt <hans-christian.egtvedt@atmel.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Make the selection of a snapshot version a normal gcc version choice,
and make sure BR2_GCC_VERSION is properly defined.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Remove references to BR2_EXT_GCC_VERSION_* configuration options, and
only allows special avr32 gcc versions on the AVR32 architecture.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* Add a new 0.9.30-avr32-2.1.5 version of uClibc in Config.in
* Add a patch for 0.9.20-avr32-2.1.5
* Select a different UCLIBC_SITE for avr32 versions in uclibc.mk
* Add the LINKRELAX=y configuration option to the uClibc .config file
in uclibc.mk
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* Add a new gdb version for AVR32 in Config.in
* Use a special mirror for this gdb version in gdb.mk
* Do not try to apply patches when the patch directory does not exist
in gdb.mk
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* Add new gcc version 4.2.2-avr32-2.1.5 in Config.in
* Select the Atmel mirror to download gcc with avr32 in their version
name, in gcc-uclibc-*.mk
* Do not apply patches if the patch directory is empty, in
gcc-uclibc-*.mk
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* Add a new binutils version 2.18-avr32-1.0.1 to the Config.in
* Use a different site to download avr32 binutils version in binutils.mk
* Only apply patches from the patch directory if it exists in
binutils.mk
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
I know 4.6.0 is out, but I don't have a setup to test it at the moment,
so lets stick with 4.5.x for now.
There's apparently no .tar.bz2 of 4.5.3.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
get.qtsoftware.com doesn't seem to work any more. The links on the Qt
website now points to get.qt.nokia.com, so use that instead.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Commit f98547622 (make sure to install all Qt-fonts and true-type-fonts)
changed Qt to install all .qpf fonts to the target instead of only a
hardcoded subset. Some of those fonts are unfortunately quite big (1-2MB)
and are not always needed (japanese, unicode).
Instead add a font selection in Kconfig similar to how it is done for
pixel depths, and default to the subset we were previously using.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Reported by Daniel Mack <daniel@caiaq.de>
The gitweb installation of infradead.org has been updated, and gitweb >=
1.6.6-rc1 adds the first 7 characters of the git SHA1 to the snapshot
tarball directory name.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Reported by Bjørn Forsman <bjorn.forsman@gmail.com>.
If CDPATH is set in the environment, cd <dir> will print the absolute path
of <dir>, causing various trouble (The most critical being BASE_DIR ending
up as <path> <path> which breaks basically everything).
Fix it by clearing CDPATH. Notice that export doesn't affect the environment
of $(shell ..) calls, so explicitly throw away any output from cd in the
BASE_DIR shell call.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
The config cache might contain invalid values when .config is changed
(E.G. when adding/removing libraries), so drop it so config checks are
rerun for new packages (existing package still won't be rebuilt).
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
[Peter: use official upstream, add url to kconfig, fix AUTORARGETS path]
Signed-off-by: Lionel Landwerlin <llandwerlin@gmail.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Based on ba23aa7b in libpcap upstream.
linux/wireless.h includes linux/if.h, which conflicts with net/if.h as
they both define if* structures. Fix build by simply using linux/if.h
instead of net/if.h.
The same fix should be done for the configure script, but cheat by
presetting it instead.
This fix in turn fixes kismet build with BR2_CONFIG_CACHE enabled, as
that uses the same ac_cv_linux_wireless_h cache value.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Allow to select the ivorbisdec plugin using the tremor
fixed-point Ogg Vorbis decoder.
Signed-off-by: Sven Neumann <s.neumann@raumfeld.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Tremor comes with a Version_script file that limits the
list of exported symbols. Without these symbols we can't
build the ivorbisdec GStreamer plug-in (and probably other
application). This commit adds a patch that removes this
limitation and makes all global symbols available.
Signed-off-by: Sven Neumann <s.neumann@raumfeld.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
This commit splits the Tremor fixed-point implementation
out of the libvorbis package and creates a new package
called 'tremor' for it.
Signed-off-by: Sven Neumann <s.neumann@raumfeld.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
The latest update added a few new plugins that were missing from
the buildroot configuration system. This commit makes these
dependency-less plugins configurable.
Signed-off-by: Sven Neumann <s.neumann@raumfeld.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Closes#553.
The ps2mouse driver is miss named because it's not only a driver for
ps2 mice, but also usb mice. So it's not only limited to PC architecture
(x86 & x86-64).
Signed-off-by: Lionel Landwerlin <lionel.landwerlin@openwide.fr>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Closes#515.
Tcpreplay is a tool for replaying network traffic from files saved with
tcpdump or other tools which write pcap(3) files.
The tcpreplay suite also ships with other tools (tcprewrite,
tcpreplay-edit) for manipulating pcap files.
[Peter: minor tweaks]
Signed-off-by: Chris Packham <judge.packham@gmail.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
So that the headers get installed in the staging directory for other packages
that need to use them.
[Peter: tweaked whitespace changes]
Signed-off-by: Chris Packham <judge.packham@gmail.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Closes#559.
Without the LDFLAGS in the build configuration file
building mesa3d fails with an external toolchain on amd64
machines targeting i686. The error indicats that libX11
can't be found.
This change passes the --sysroot parameter (along with any
others specified by buildroot for LDFLAGS to the mklib script.
Signed-off-by: Clark Rawlins <clark@bit63.org>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Closes#773.
Unspecified vulnerability in ISC BIND 9.4 before 9.4.3-P4, 9.5 before
9.5.2-P1, 9.6 before 9.6.1-P2, 9.7 beta before 9.7.0b3, and 9.0.x through
9.3.x with DNSSEC validation enabled and checking disabled (CD), allows
remote attackers to conduct DNS cache poisoning attacks via additional
sections in a response sent for resolution of a recursive client query,
which is not properly handled when the response is processed "at the same
time as requesting DNSSEC records (DO)."
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Those are already in TARGET_CONFIGURE_ARGS. Also get rid of unused
BR2_AC_CV_FUNC_MALLOC_0_NONNULL variable.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Closes#763.
[Peter: Only remove pcre-config from target if !BR2_HAVE_DEVFILES]
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Closes#751.
Make kernel headers snapshot more user friendly by making it more obvious
that it's about using a local kernel snapshot, and error out with a sensible
error message if the option is enabled but no linux-2.6.tar.bz2 is present
in DL_DIR, rather than trying to fetch it from kernel.org.
Furthermore fix the bug where it tried to use linux-2.6..tar.bz2 instead of
linux-2.6.tar.bz2.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Hardcode m4 config instead of letting configure detect it automatically.
This hopefully fixes the build issues some (Ubuntu) users seems to be
having lately (E.G. #679).
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
We were patching m4/rename.m4 to workaround an upstream issue, but this
triggers a auto* rebuild and a configure rerun when we build coreutils
using whatever auto* versions the user has installed.
Doing a manual autoreconf run after patching is unfortunately not an
option as the coreutils configure.ac isn't compatible with the autotools
version we have in BR.
Instead, simply cheat by patching configure as well and setting the
timestamp of m4/rename.m4 sufficiently far back to ensure make doesn't
consider ./configure out of date.
Long term we should convert coreutils to Makefile.autotools.in format,
but this is good enought for 2009.11.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
There seems to be some confusion about makefile/Makefile, so just fixup
both files for now to keep it safe.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Reported by mr_claus on IRC.
This ensure DL_DIR is always an absolute path, like it was before the
build dir reorganization - Fixes vim (patch) build.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
In some configurations $(TARGET_DIR)/usr/lib isn't
created before the target install target for libncurses
is run. This change makes sure it is created before
the install target copies files to it.
Signed-off-by: Clark Rawlins <clark@bit63.org>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Closes#707
At the same time get rid of redundant (provided by Makefile.autotools.in)
configure arguments.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Based on patch by Sagaert Johan <sagaert.johan@skynet.be>
Dbus rebuilds fails if /var/lib/dbus is a symlink (which it will be),
and the existing workaround only worked if /var/lib is a symlink to
/tmp, which isn't always the case.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
This reverts commit f49ef854ca.
The new gvfs version needs libglib2 >= 2.21.2, but newer libglib2 versions
need ipv6 support and possibly cause other problems, so simply revert the
gvfs bump for now.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
By default SDL_image loads libjpeg at runtime on-demand. The find_lib
routine in the configure script of SDL_image searches the /usr/lib directory
of the host machine to find the file name of the jpeg library.
When the host on which Buildroot is being built contains newer version of
libjpeg (e.g. libjpeg7), the configure script incorrectly uses its file
name. The result is a runtime failure to load libjpeg.
Fix this by disabling runtime load of libjpeg.
[Peter: disable for png+tiff as well]
Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
It tries to call lseek64():
ksym_mod.o: In function `InitMsyms':
ksym_mod.c:(.text+0x438): undefined reference to `lseek64'
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
./configure in psmisc 22.6 tested for a working C++ compiler and errored out
if not found, even though psmisc doesn't need it - Fixed in 22.8.
pstree.c uses __progname for pstree.x11 support, which isn't (per default)
available in uclibc. This stuff isn't really critical, so just disable it.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Dependencies are wrong, and it has never seen any updates, so it probably
doesn't have any users.
Will remove completely before 2010.02 unless someone fixes it.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Packages should depend on BR2_PACKAGE_XORG7 rather than selecting it,
because:
- X brings in a lot of dependencies, so shouldn't get implicitly enabled
- Select doesn't check dependencies, so build breaks if XORG dependencies
aren't met (locale/wchar)
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Packages should depend on BR2_PACKAGE_XORG7 rather than selecting it,
because:
- X brings in a lot of dependencies, so shouldn't get implicitly enabled
- Select doesn't check dependencies, so build breaks if XORG dependencies
aren't met (locale/wchar)
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Closes#597
Ensure that binutils-target runs after busybox if enabled, so it can
overwrite the busybox symlink for ar if that applet is enabled.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
As discussed on the list, fixup the *clean targets, so we now have:
clean: remove all generated files (E.G. everything in output/)
distclean: same as clean, but also remove the kconfig build and .config
Also tweak 'make help' output to match. This also merges the two
different clean / distclean targets we had depending on if there was
a .config present or not (most variables are not defined for !.config
case, so E.G. the clean target ends up being a noop).
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
ftp.handhelds.org doesn't seem to work any more.
Signed-off-by: Michael S. Zick <minimod@morethan.org>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Closes#717
Dnsmasq 2.51 introduces IDN support, add it to the package.
Newsworthy items:
* Add support for internationalised DNS (IDN).
* Improved upstream nameserver checks for slow nameservers.
* Improved TFTP support (win/dos filenames, new tftpserver-address option
for DHCP).
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Reported by Gordon Smith on the ml.
The mailing list archives are accessed through lists.busybox.net since
the move to osuosl. Adapt the google search box to match.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Introduce BR2_PREFER_SOFT_FLOAT and enable it for arm, avr32 and mips,
and use it to enable soft float support by default for those archs.
This way people automatically get the correct floating point mode when
running make menuconfig for the first time (E.G. without a .config) and
changing the arch from i386 to arm/avr32/mips.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
A lot of people complain that the root filesystem generated by
Buildroot doesn't work because it lacks the device files. This is
because they use output/target/ instead of one of the images.
Therefore, insist in the documentation on this point. Even though I'm
unsure if users really read the documentation :-)
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Closes#667.
I have updated the e2fsprogs package to the new makefile format. I added
the tools from the 1.41.9 release of e2fsprogs that could not yet be
(de)selected (freefrag, e2undo) to the menu in Config.in.
Signed-off-by: rvpaasen <rvpaasen@t3i.nl>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Don't hide all editors in config if BR2_PACKAGE_BUSYBOX_SHOW_OTHERS is not
selected. Indeed vi is the only editor already provided by busybox.
Signed-off-by: Julien Boibessot <julien.boibessot@armadeus.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
If zlib is selected, then it should be built before libarchive so that
libarchive picks up the headers and includes support for zlib
compression.
Signed-off-by: Sven Neumann <s.neumann@raumfeld.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
gst-plugins-good gained a number of dependency-less plugins with
the last update. This commit makes them configurable in buildroot.
Signed-off-by: Sven Neumann <s.neumann@raumfeld.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
libnl does not only install libnl.so, but also libnl-nf.so,
libnl-genl.so and libnl-route.so. Change the post-install
and uninstall hooks to handle these libraries as well.
Signed-off-by: Sven Neumann <s.neumann@raumfeld.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
The gvfs configure script has --with-samba-includes and
--with-samba-libs options. Use these to point it to the
libsmbclient files in the staging dir.
Signed-off-by: Sven Neumann <s.neumann@raumfeld.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
If BR2_PACKAGE_LIBARCHIVE is enabled, build the gvfs archive
backend.
Signed-off-by: Sven Neumann <s.neumann@raumfeld.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Update the gvfs package to the latest upstream release.
Signed-off-by: Sven Neumann <s.neumann@raumfeld.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
libarchive comes with two binaries, bsdtar and bsdcpio that used
to be installed by default. This change makes this configurable
with the default not to build and install the binaries.
Signed-off-by: Sven Neumann <s.neumann@raumfeld.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Update the samba package to the new makefile format and also update
it to samba version 3.3.8 (latest 3.3.x version). Based on the
patch from bug 665, but with uclibc dependency and call to
autogen.sh removed.
Tested-By: Sven Neumann <s.neumann@raumfeld.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Invert the BR2_PACKAGE_BUSYBOX_HIDE_OTHERS option to use positive logic,
renaming it to _SHOW_OTHERS.
Positive logic is simpler to understand, and it makes all{,package}config
do the right thing.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Closes#657
imagemagick-clean target currently tries to remove $(TARGET_DIR) as
there is no IMAGEMAGICK_BINARY anymore.
Signed-off-by: Simon Pasch <fpasch@googlemail.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Security Enhancements and Fixes in PHP 5.2.11:
* Fixed certificate validation inside php_openssl_apply_verification_policy
* Fixed sanity check for the color index in imagecolortransparent()
* Added missing sanity checks around exif processing
* Fixed bug #44683 (popen crashes when an invalid mode is passed)
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
It looks like that nobody is using the commercial license option
because the code is broken (BR2_QT_COMMERCIAL_PASSWORD typo) and
dist.trolltech.com became silent long ago and nobody complained about.
So remove the broken and unused stuff.
Signed-off-by: Michael Roth <mroth@nessie.de>
Acked-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
The Kconfig menu "Pixel depths" of Qt provides a list with all
selectable pixel depths and additionally the option "all".
When "all" is selected, the list with all available pixel depths
disappears.
Because this disappearing of available pixel depths makes no sense
under usability aspects, simply remove the option "all".
The user could enable all available pixel depths by selecting each
individual depth anyway. So no functionality is lost.
Signed-off-by: Michael Roth <mroth@nessie.de>
Acked-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
ccache and precompiled headers don't work together, so disable
precompiled headers when ccache is enabled.
The benefit of ccache compiling Qt a second or more time is much
higher than the costs of disabled precompiled headers in the first run.
Signed-off-by: Michael Roth <mroth@nessie.de>
Acked-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Qt gained some more qpf-fonts and also provides some true-type-fonts.
Make sure to install them all inclusive ttf-fonts when freetype-support
is enabled. Additionally the empty 'fontdir' file is really not needed.
Signed-off-by: Michael Roth <mroth@nessie.de>
Acked-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
The Qt configure script gained the option '-no-xinerama' in the
meantime. So use it instead hacking the script itself using sed.
Signed-off-by: Michael Roth <mroth@nessie.de>
Acked-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
In Qt there are virtually hundreds of internal debug flags like
TSLIBMOUSEHANDLER_DEBUG for every module or even C++ class. There
is no reason to enable a single such flag when Qt is build with
debugging symbols and others not.
Signed-off-by: Michael Roth <mroth@nessie.de>
Acked-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Qt in buildroot should not depend on dbus installed on build platform,
if so this is (or was) a bug in buildroot.
Looks like that this note is left over from ancient buildroot days,
so remove it.
Signed-off-by: Michael Roth <mroth@nessie.de>
Acked-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
At least Qt 4.5.2 is fixed in the meantime and honors PKG_CONFIG.
So the PATH workaround is no longer needed.
Signed-off-by: Michael Roth <mroth@nessie.de>
Acked-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
All compiler options, switches and path settings are done in the
configure step. For the compile and install step there is no need
for the TARGET_CONFIGURE_OPTS variables.
Signed-off-by: Michael Roth <mroth@nessie.de>
Acked-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
The Qt configure script doesn't use config.cache but the
generated Makefile provides a confclean target to properly
clean out old configuration.
Signed-off-by: Michael Roth <mroth@nessie.de>
Acked-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
In a pristine checkout the -menuconfig targets need their build dirs
to exist.
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Show comment about what to enable in toolchain to make modular X.org
visible, and move comment about x11r7 toolchain dependency to end,
as otherwise kconfig gets confused and doesn't put X options under
the x11r7 menuconfig.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Bump version to 3.0.6.
autoreconf is off per default, so no need to specify it.
Use config.cache (fix the incorrect package instead).
Pass ENABLE_DEBUG setting to configure.
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
It speeds up configuration considerably.
If a package breaks due to wrong cache-entries, then the broken
other package has to be fixed, not the innocent bystander!
Put short: There is absolutely _no_ need to ever turn the cache off
unless you hack on autotools itself and goof.
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
pass --disable-ipv6 to autoconfig packages if IPv6 support is turned off
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
hard/softfloat is just one of the many config options, and it only
clutters the filenames.
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
This patch is needed to make e2fsprogs being linked against
SEM_INIT libraries. In this particular case, it causes the
Makefiles to add -lpthread. Without that, all binaries crash
at startup, at least on x86.
Signed-off-by: Daniel Mack <daniel@caiaq.de>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Update gst-plugins-base to version 0.10.25. Also add new
config option to enable/disable the Pango font renderer
plug-in.
Signed-off-by: Sven Neumann <s.neumann@raumfeld.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Show Atmel mirrors together with the other mirrors, instead of hiding
them in yet another sub-menu.
At the same time, add an empty line before the Atmel include as noticed
by Hartley Sweeten.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Use of OABI is strongly discouraged since years now.
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Most of X.org (E.G. libX11) needs WCHAR support, so ensure that
the toplevel BR2_PACKAGE_XORG7 cannot get enabled unless we have
WCHAR support in the toolchain.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
prevents build failures if modules are enabled and localversion is ""
Signed-off-by: aldot <rep.dot.nop@gmail.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
In case that wpa_supplicant is configured with DBus interface,
it calls pkg-config to find the dbus headers and libraries.
Adjust the make environment so that it will use the right
pkg-config search paths.
Signed-off-by: Sven Neumann <s.neumann@raumfeld.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Select a specific svn revision (current trunk: r16259) instead of the
latest from the trunk. Simplifies support, mirroring and makes the system
reproducible.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
As discussed earlier on the mailing list. It simplifies code, gives more
sensible error message on typos and makes the defconfigs easier to find
for users.
Furthermore, update documentation to match.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Similar to the normal targets, but only affects the BR2_PACKAGE_* options.
E.G. handy for keeping your current toolchain config while testing
(random) packages.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
get rid of the removed saveconfig/getconfig targets, and instead document
randconfig/defconfig/allyesconfig/allnoconfig.
Furthermore, get rid of the unused tags target.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Ensures that the hook isn't run every time. Also use the real stamp
file from the host build instead of host-share-mime-info as dependency,
as otherwise the target is always considered out-of-date.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Commit 0eca108b73 (directfb: add host-directfb target
for directfb-csource) had tabs replaced by spaces, causing stuff
to break - Fixed.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
directfb-csource is a code generation tool that may be needed to build
other packages. Add host-directfb target that installs directfb-csource
in the host_dir.
Signed-off-by: Sven Neumann <s.neumann@raumfeld.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
It doesn't compile:
../../src/memory.c: In function '__mp_memquery':
../../src/memory.c:769: error: lvalue required as left operand of assignment
And hasn't seen any updates since it got added in 2006, so it cannot
have many users. People most likely use valgrind nowadays for memory
debugging anyway - Drop it.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
liblockfile.so.1.0 gets installed into /usr/lib, not /lib, so the target
install make target is always considered out-of-date.
Do various cleanups while we're here.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
libuuid.so gets installed into /usr/lib, not /lib, so the target
install make target is always considered out-of-date.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
The source target was broken until very recently, and it doesn't build
as it tries to use the host compiler for the client stuff, so there
cannot be many users of it.
People should use avahi instead nowadays, so so just remove it instead
of hacking it to work.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Fix various breakage in the imagemagick build:
- libWand.* is now called libMagickWand.*
- libMagic.* is now called libMagickCore.*
- References to wrong version numbers in directories
- Libraries missing from clean target
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
We have been passing -q to ./configure when using 'make -s' for
packages using Makefile.autotools.in for some time. Do the same
for packages using autotools, but not using the
Makefile.autotools.in infrastructure, taking care to not do it
for packages with hand written configure scripts.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Positive logic is easier to read and understand than something
like 'if not option=yes then foo else bar'.
Signed-off-by: Michael Roth <mroth@nessie.de>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Commit a07d6b9d56 changed the meaning
of $(BASE_DIR). Previously it was the top level buildroot directory,
now it is the 'output' directory.
As an side effect, the download directory 'dl' was moved to 'output/dl'.
In commit 416323e934 the default download
directory was moved back to the top level of buildroot.
So the various default configurations should reflect this. Fix them.
Signed-off-by: Michael Roth <mroth@nessie.de>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Depend on dbus being compiled with expat support and not just on expat
being enabled, as you can have expat enabled and still compile dbus
with libxml2 support instead.
While we're at it, only show comment about unforfilled dependencies if
dbus is enabled.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
dbus-glib needs dbus to be compiled with expat support, so prefer that
mode even if libxml2 is also enabled.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Reported by Emmanuel Riou <riou.emmanuel@googlemail.com>.
With the recent change to use $(TOPDIR)/dl as default for $(DL_DIR)
(416323e93), DL_DIR is now a relative path (./dl), which breaks the
mpfr patch handling as it changes dir.
Fix is by using patch-kernel instead of calling patch, which does
the right thing.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Reported by Sven Neumann <s.neumann@raumfeld.com>
Use LIBGLIB2_HOST_BINARY instead of the non-existing $(HOST_GLIB)
variable to refer to the host version of glib-genmarshal.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Upstream openssl doesn't have avr32 support, and we dropped the
avr32 optimization patch some time ago.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Defaulted to yes, but blocked it from gcc 4.4.x since the disable was
originally added because of problems with its c++ support reportedly.
Signed-off-by: Austin Foxley <austinf@cetoncorp.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
To reflect the new output directory hierachy rename the Makefile variable
TOOL_BUILD_DIR to TOOLCHAIN_DIR.
Signed-off-by: Michael Roth <mroth@nessie.de>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Change to default Download dir so that different 'make O=<directory>'
commands will use the same location by default without having to
create a symlink in <directory> or having to export BUILDROOT_DL_DIR.
Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
The samba configure scripts detects the presence of fam and avahi
headers in order to decide whether support for fam and/or avahi should
be built into samba. This patch adds the missing dependencies so that
fam and/or avahi are built before samba if they are selected in buildroot.
Signed-off-by: Sven Neumann <s.neumann@raumfeld.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Closes#301
The libsmbclient library is part of the samba package. It can be used
to build applications that access Samba shares without the need to
mount them. Currently the library is explicitly not installed by
buildroot. Here's a patch that adds a config option to install it.
Signed-off-by: Sven Neumann <s.neumann@raumfeld.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
The avahi-client library makes use of threads. We need to link the
smbd binary with -pthread if avahi support is enabled. Otherwise the
binary will crash at startup.
Signed-off-by: Sven Neumann <s.neumann@raumfeld.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
If we have set BR2_PACKAGE_PYTHON_PY_ONLY or BR2_PACKAGE_PYTHON_PY_PYC
we want .py files to be left on the target, whatever the value of
BR2_PACKAGE_PYTHON_DEV.
Signed-off-by: Will Newton <will.newton@gmail.com>
libmicrohttpd is a library that allows embedding an HTTP server into
an application with a small code and memory footprint.
Signed-off-by: Will Newton <will.newton@gmail.com>
PKG_CONFIG_PATH adds a path to the pkg-config search path, but this is not
enough when we are building host tools - the host pkg-config default path
is still used, and this will pick up .pc files in the staging_dir tree.
PKG_CONFIG_LIBDIR overrides the pkg-config default path and ensures only
host .pc files are found. This fixes a pango build failure when building
for the host with cairo PNG support enabled.
Signed-off-by: Will Newton <will.newton@gmail.com>
This release of autoconf brings a number of bug fixes, including a change
to the autoreconf script to pass the correct include path parameter to
aclocal.
Signed-off-by: Will Newton <will.newton@gmail.com>
Closes#477
Peter: minor tweaks:
- sdl_snd -> sdl_sound
- cleaned up help text
- don't transform binary name
- add option to keep playsound/playsound_simple - Off by default
- fix uninstall when BR2_HAVE_DEVFILES isn't enabled
Signed-off-by: Evan Zelkowitz <evan.zelkowitz@gmail.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Adjust default /etc/issue to print 'Welcome to Buildroot' like the
recently removed BR2_BANNER did, and adjust default hostname to be
'buildroot' instead of uclibc as we now support external glibc
toolchains as well.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Closes#565
- Bump version from 1.2 to 1.4.12
- Clean up makefile and use Makefile.autotools.in.
Signed-off-by: Will Newton <will.newton@gmail.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Udhcp got integrated into busybox a long time ago, and the udhcp package
wasn't even included in package/Config.in, so it couldn't be used.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Closes#617
netkittelnet needs netkitbase, which in term needs RPC support in
toolchain, so adjust Kconfig dependencies to ensure this.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* Remove the huge section describing the design of the removed
"project" feature
* Update all references to the output directory hierarchy to match
the new one
* Add new sections on how to rebuild single packages and how to
create board support
* Other updates, clarifications, reorganizations
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
In the output directory, we now have
- build/ where all the packages are built
- images/ where the final kernel and rootfs images are stored
- staging/ the staging directory (containing the development files
and libraries compiled for the target)
- target/ which contains the target root filesystem
- host/ which contains all the host programs
- stamps/ which contains the stamps files
Therefore, the build_ARCH and toolchain_build_ARCH have been
removed. People willing to use the same Buildroot sources to compile
for different architectures are invited to use the O= command line
option for out-of-tree compilation.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Instead of putting all the build-related stuff as a mess in the
Buildroot sources, group them in an output/ directory.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
This can be achieved by adding a new target in target/device/, and I
will later propose a mechanism to add external boards and packages, so
that our users not willing to get their target-specific or
package-specific things merged can keep them cleanly separated from
Buildroot tree.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The "project" feature was designed to allow to several projects to be
built inside the same Buildroot source tree and allowing the toolchain
and non-configurable packages to be shared between the different
projects on the same architecture. While being interesting in theory,
this feature adds a level of complexity to Buildroot, both from an
user perspective and from a developer perspective, while one of the
main Buildroot strengh is to be simple. Moreover, this feature is only
seldomly used by our users.
From a user-level perspective, this for example allows to remove the
project_build_ARCH directory, which was very confusing. The
autotools-stamps directory is also removed, since these stamps are
back at their normal location.
Description of the changes involved :
* project/, directory removed
* Makefile
- Don't include project/Makefile.in and project/project.mk anymore
- Grab a copy of the contents of project/Makefile.in at the
location it was imported, but remove the definition related to
PROJECT_BUILD_DIR. The TARGET_DIR is now in
$(BUILD_DIR)/target_dir
- Remove the creation/removal of the $(PROJECT_BUILD_DIR) and
$(PROJECT_BUILD_DIR)/autotools-stamps directories
- Don't make world depends on target-host-info. This target was
defined by project/project.mk to customize /etc/issue,
/etc/hostname and create /etc/br-version depending on the
project definitions. We can of course imagine re-adding such a
feature later.
- Replace PROJECT_BUILD_DIR by BUILD_DIR everywhere
- Remove the update, log and lognr.$(PROJECT) target, they were
specific to the project feature.
* package/Makefile.autotools.in
- Replace PROJECT_BUILD_DIR by BUILD_DIR for the location of the
configure cache
- Move the INSTALL_TARGET and HOOK_POST_INSTALL stamps to the same
directory as the other stamps (i.e, in the package directory).
* package/Makefile.in
- Replace PROJECT_BUILD_DIR by BUILD_DIR for the location of the
configure cache
* package/at/at.mk,
package/busybox/busybox.mk,
package/busybox/initramfs.mk,
package/customize/customize.mk,
package/linux-fusion/linux-fusion.mk,
package/ltp-testsuite/ltp-testsuite.mk,
package/nfs-utils/nfs-utils.mk,
target/cpio/cpioroot.mk,
target/cramfs/cramfs.mk,
target/device/Atmel/DataFlashBoot/DataflashBoot.mk,
target/device/Atmel/Makefile.in,
target/device/Atmel/at91bootstrap/at91bootstrap.mk,
target/device/KwikByte/Makefile.in,
target/ext2/ext2root.mk,
target/initramfs/initramfs.mk,
target/iso9660/iso9660.mk,
target/jffs2/jffs2root.mk,
target/linux/Makefile.in,
target/romfs/romfs.mk,
target/squashfs/squashfsroot.mk,
target/tar/tarroot.mk,
target/ubifs/ubifsroot.mk
- Replace PROJECT_BUILD_DIR by BUILD_DIR
* target/device/Config.in
- Do not include project/Config.in anymore
* target/linux/Makefile.in.advanced
- Replace PROJECT_BUILD_DIR by BUILD_DIR
- Store the stamps file in $(STAMP_DIR) instead of
$(PROJECT_BUILD_DIR)/autotools-stamps
* target/u-boot/Makefile.in
- Replace PROJECT_BUILD_DIR by BUILD_DIR
- Remove $(PROJECT) from the U-Boot target binary name
- Remove the insertion in the configuration of the project name as
the hostname
- The u-boot-autoscript target now generates
$(U_BOOT_AUTOSCRIPT).img instead of
$(U_BOOT_AUTOSCRIPT).$(PROJECT)
* toolchain/gcc/gcc-uclibc-3.x.mk
toolchain/gcc/gcc-uclibc-4.x.mk
- Move the stamps files to $(STAMP_DIR)
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Closes#587
- bump version to 1.4.4
- iptables-optional-ipv6.patch no longer needed (included in upstream)
- use ipXtables-multi binaries with symlinks to ipXtables, ipXtables-save,
ipXtables-restore instead of 3 distinct binaries
Signed-off-by: Olaf Rempel <razzor@kopf-tisch.de>
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Fix problem with dns resolv, by copying the libnss_dns.so to the rootfs.
Using glibc from external toolchain, name resolving does not work,
unless libnss_dns.so is available on the target.
Signed-off-by: Anders Darander <ad@datarespons.se>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
The variable controlling if coreutils thinks the system has the
rename-with-trailing-slash bug is called
gl_cv_func_rename_trailing_slash_bug and not vb_cv_..
Forcing this off works around a bug in coreutils configure, which
otherwise tries to compile Windows-only workaround code.
Reported-by: Stephen Rodgers <hwstar@rodgers.sdcoxmail.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Closes#487
* Bump kismet from 2007-10-R1 to 2009-06-R1 (newcore: nicer, more features)
* Migrate to Makefile.autotools.in
* Introduce new options to just install the server, client, drone or
combination
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
This change adds the config options BR2_BZR_CO and BR2_BZR_UP that
allow to configure the commands for doing a checkout/update from
a Bazaar repository.
Signed-off-by: Sven Neumann <s.neumann@raumfeld.com>
Define a qstrip function that strips double quotes and then
whitespaces around a given string. This is a very commonly needed
thing, and having a function allows to remove a large quantity of
hand-written definitions, followed by a dummy comment to make text
editors not crazy because of the unmatching double quote.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
A C library will have been built by the toolchain makefiles, so there is no
need for packages to explicitly depend on uclibc.
Signed-off-by: Will Newton <will.newton@gmail.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
It turns out that renaming SDL_net to sdl_net (688c388ce7) isn't
such a good idea, as the name is also used for the tarball filename to
download.
Instead go back to use SDL_net again, and simply add an sdl_net alias.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
It hasn't been touched in years, and Config.in refers to non-existing
files (linux.mk), so there cannot be many users.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Closes#529.
util-linux needs to link with libintl when locale support is available /
requested in the toolchain, similar to how it is done for avahi.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
We don't have libblkid in BR, so make sure the configure script doesn't
detect it if it is installed on the host.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
As suggested by Julien Boibessot <julien.boibessot@free.fr>.
The other SDL extensions use sdl_xx, and not SDL_xx, so rename sdl_net
to match.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
The find command syntax is incorrect when deleting CVS and .svn directories
from the target filesystem, which prevent CVS directories from being
deleted.
It's useful to delete these dirs because users of buildroot often import
buildroot into CVS or Subversion.
Signed-off-by: Will Newton <will.newton@gmail.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
alsa-utils included two ugly patches for ARM and AVR32 to fix build
issues encountered with ncurses. In fact these build issues were
caused by the fact that alsa-utils was using ncurses5-config of the
host instead of the one installed in $(STAGING_DIR).
Therefore, these two patches are removed, and we instead pass
ac_cv_prog_ncurses5_config to the ./configure script.
This commit solves bug #569, reported by Simon Pasch, who also
contributed this fix.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
To get the libtool patch to make some effect, an autoreconfiguration
is necessary.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
libxslt is currently configured with --with-libxml-include-prefix,
which allows libxslt ./configure to find libxml headers. However, the
build of libxslt fails because it doesn't find the library itself.
Therefore, instead of using --with-libxml-include-prefix, we switch to
the more generic --with-libxml-prefix.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Webkit currently depends on libgtk2, which itself depends on
Cairo. However, the dependency of libgtk2 is only on
BR2_PACKAGE_CAIRO, BR2_PACKAGE_CAIRO_PS and
BR2_PACKAGE_CAIRO_PDF. While this might be enough for libgtk2 to build
and work, Webkit makes direct use of the PNG functionnalities of
Cairo. If this functionnality is not available in Cairo, the Webkit
build complains that cairo_surface_write_to_png_stream() is not
defined.
Therefore, we make sure that WebKit selects BR2_PACKAGE_CAIRO_PNG.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The version of Webkit packaged in Buildroot uses libtool 2.x, for
which our package/buildroot-libtool.patch does not apply. So we
disable this patch. However, on my system, the lack of libtool
modification prevents the final linking to succeed (due to libtool
trying to link target code with host libraries). This will have to be
fixed separatly.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
In an attempt to disable the compilation and installation of
documentation of gtk packages, a DISABLE_DOCUMENTATION variable
containing --without-html-dir has been added to
package/Makefile.in. This variable is used by
package/Makefile.autotools.in so that --without-html-dir is in effect
passed to all autotools-based packaging relying on the
Makefile.autotools.in infrastructure.
Unfortunately, --without-html-dir doesn't work. It leads libglib2
./configure script to think that HTML_DIR is "no", which leads to the
installation of the documentation in $(STAGING_DIR)no (yes, with the
"no" suffix at the end). The issue is that --with-html-dir is not an
enable/disable type of option, it's an option that only allows to pass
a PATH for documentation installation.
As we don't want the documentation to be installed in this odd
$(STAGING_DIR)no directory, we simply get rid of this option.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
This change adds two new options, BR2_PACKAGE_DIRECTFB_DEBUG
to enable lots of debugging output from DirectFB and
BR2_PACKAGE_DIRECTFB_TRACE to enable support for call traces
in case of a crash.
Signed-off-by: Sven Neumann <s.neumann@raumfeld.com>
Some architectures may need updates to the configure helper scripts
before it is possible to safely configure.
Signed-off-by: Will Newton <will.newton@gmail.com>
Add a new target for libuuid so it can be built without e2fsprogs.
Signed-off-by: Daniel Mack <daniel@caiaq.de>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Since CC is already passed in TARGET_CONFIGURE_OPTS at ./configure
time, there's no point in overriding it with a wrong value at
compilation time. This breaks external toolchain builds since
CC=$(TARGET_CC) is wrong because it excludes the mandatory --sysroot
option.
Fixes bug #525
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Fix the little build systems hacks that no longer applied to the
version of Perl being used. With these fixes in place, microperl
builds and runs properly simple Perl commands on the target.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Since the recent update of Kconfig to the Kconfig infrastructure found
in 2.6.30 kernels, make oldconfig was broken because it didn't
generate the .config.cmd file. This is done by a call to the
conf_write_autoconf() function.
Moreover, this process was also broken because the
conf_get_autoconfig_name() function was reading the environment
variable BUILDROOT_AUTOCONF while the main Makefile is passing it as
KCONFIG_AUTOCONFIG. We also remove the fallback on
"$(BR2_DEPENDS_DIR)/config/auto.conf" since we are not able to expand
BR2_DEPENDS_DIR at this point. Therefore, the KCONFIG_AUTOCONFIG
envionment variable *must* be set.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
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.