Commit Graph

8999 Commits

Author SHA1 Message Date
Thomas Petazzoni
7af45b8ae0 Update documentation about external toolchain
Reword the documentation on external toolchain to take into account
the new features added since 2010.11 concerning external toolchain
profiles.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2011-01-30 20:13:43 +01:00
Thomas Petazzoni
43d7e91f28 Explain why we don't support ELDK toolchains.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2011-01-30 20:13:43 +01:00
Peter Korsgaard
02d605cd55 pkg-config: rework --with-sysroot patch so it doesn't break target build
We don't currently autoreconf pkg-config for the target as we don't need
--with-sysroot support, which means PKG_CONFIG_SYSROOT=NULL wasn't
passed, breaking the build.

Fix it by reworking the patch to only pass this if --with-sysroot is given,
and handle the not set case in main.c.

Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2011-01-30 11:05:50 +01:00
Peter Korsgaard
be89b85176 dnsmasq: remove dbus cflags mangling
Get rid of cflags workaround now that we always use sysroot, and
pkg-config --cflags dbus-1 thus returns the correct value.

Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2011-01-30 10:40:17 +01:00
Peter Korsgaard
5568c8b632 iproute2: fix build on configs without ipv6 support
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2011-01-30 01:37:24 +01:00
Gustavo Zacarias
34c56e014f ntp: bump to version 4.2.6p3 and fix glibc build failure
Bump to version 4.2.6p3 and fix a build failure with external toolchains
that use certain glibc versions as point out by speakman on IRC.

Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Acked-by: Daniel Nyström <daniel.nystrom@timeterminal.se>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2011-01-30 00:40:13 +01:00
Gustavo Zacarias
950a63a753 libcuefile: convert to cmaketargets infrastructure
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2011-01-30 00:38:58 +01:00
Peter Korsgaard
50bda85e88 pkg-config: add --with-sysroot option for compiled in default sysroot setting
Similar to the --with-pc-path option. It works just like the existing
PKG_CONFIG_SYSROOT_DIR environment variable, but compiled in.
The environment variable overrides this default setting if set.

This way we don't need to pass PKG_CONFIG_SYSROOT_DIR in the environment
when building for the target, and it is easier to reuse pkg-config outside
BR (E.G. for the SDK) without having to setup special environment
variables.

Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2011-01-30 00:37:53 +01:00
Peter Korsgaard
b4df2ea27f pkg-config: prefix sysroot to path variables
Fixes gst-plugins-bad build, if gstreamer is installed on host with xml
support, as it uses pkg-config --variable=includedir to find gstconfig.h,
and hence ends up looking at the host version.

Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2011-01-29 23:03:16 +01:00
Peter Korsgaard
d5da84fda9 pkg-config: bump version
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2011-01-29 22:06:28 +01:00
Peter Korsgaard
50c93ed9b3 mtd: bump version
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2011-01-29 20:20:14 +01:00
Peter Korsgaard
9f199bce78 iproute2: ensure it gets built after busybox if both enabled
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2011-01-28 15:46:50 +01:00
Peter Korsgaard
2645004bb5 CHANGES: update with recent changes
Thanks to Thomas for input.

Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2011-01-28 10:43:13 +01:00
Peter Korsgaard
51c5af67a6 dbus-python: fix build after python upgrade
Point it at host-python, and ensure it gets built in advance.

Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2011-01-28 09:17:52 +01:00
Peter Korsgaard
3e1fd70150 libxcb: use correct python variable
Directory is /usr/lib/python$(PYTHON_VERSION_MAJOR).

Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2011-01-28 09:16:09 +01:00
Peter Korsgaard
5f19df9224 libxcb: use host-python and fix dependencies
Now that we have a proper host-python package, use that one instead of
whatever might be available on the build host. Also don't overwrite
the host-python package version variable and fix dependency list
(xcb-proto is needed for the host).

Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2011-01-27 23:38:48 +01:00
Peter Korsgaard
5a7192b253 host-python: enable expat support
Some packages (like libxcb) need xml support in host-python in order to
build (.py file tries to import xml.etree.cElementTree).

Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2011-01-27 23:37:22 +01:00
Peter Korsgaard
f13d97e106 xcb-proto: needs python for the host
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2011-01-27 23:34:39 +01:00
Bjørn Forsman
12d2ea9ae7 cdrkit: convert to CMAKETARGETS infrastructure
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>
2011-01-26 23:22:32 +01:00
Bjørn Forsman
5bd96726f3 doc: add CMAKETARGETS documentation
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>
2011-01-26 23:22:32 +01:00
Bjørn Forsman
bc1acec143 Add CMAKETARGETS infrastructure for CMake packages
The CMAKETARGETS infrastructure makes adding CMake-based packages to
Buildroot easy. It uses the same set of variables as the autotools
infrastructure, except for autoreconf and libtool stuff which is not
needed. Usage: just call CMAKETARGETS instead of AUTOTARGETS.

Signed-off-by: Bjørn Forsman <bjorn.forsman@gmail.com>
Acked-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2011-01-26 23:22:32 +01:00
Bjørn Forsman
73144a6e02 Makefile: generate CMake toolchain-file in $(O)
A CMake toolchain-file makes it easy to develop CMake-based packages
outside of Buildroot. Just give the toolchain-file to CMake via the
-DCMAKE_TOOLCHAIN_FILE=... option.

Signed-off-by: Bjørn Forsman <bjorn.forsman@gmail.com>
Acked-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2011-01-26 23:22:32 +01:00
Peter Korsgaard
0fa46e59db lzo: build shared library for host and target
Based on patch by Michael J. Hammel.

Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2011-01-26 17:51:33 +01:00
Thomas Petazzoni
7197089540 zlib: disable call to ldconfig
By default, zlib installation procedure calls ldconfig, which takes
time uselessly. ldconfig is only useful if you install libraries on
the host (in directories listed in /etc/ld.so.conf, or in /usr/lib or
/lib), so calling it after installing libraries in $(STAGING_DIR),
$(TARGET_DIR) or $(HOST_DIR) is just a lenghty no-op.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2011-01-26 16:46:49 +01:00
Peter Korsgaard
ed3ac88635 autoconf: don't append -dirty to version number if built in buildroot git tree
Autoconf would append -dirty to it's version number, causing build breakage
with packages explicitly requesting autoconf 2.65, if built in a subdir
of a git tree with uncommitted changes. This is a relatively common
situation when developing on BR.

Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2011-01-26 14:57:00 +01:00
Peter Korsgaard
d97db71d10 Use 'sysroot' rather than 'sys-root' for the sysroot/staging_dir
As pointed out on the list, using sysroot rather than sys-root is less
confusing, as this is how it is referred to in the GCC manual.

So rather than changing BR, patch ct-ng to use sysroot instead.
The next ct-ng release will use 'sysroot' as well by default.

Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2011-01-26 14:49:00 +01:00
Peter Korsgaard
3036644049 kernel-headers: handle long term support kernels, bump 2.6.35
2.6.34 was (erroneously) already updated earlier.

Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2011-01-26 12:09:42 +01:00
Peter Korsgaard
60fd10d354 kernel-headers: get rid of deprecated 2.6.32 / 2.6.33 versions
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2011-01-26 12:07:36 +01:00
Peter Korsgaard
2c3e18cdd8 package: fix python upgrade fallout
A number of packages depended on the libpython make target for python
support, which no longer exist.

Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2011-01-26 11:18:50 +01:00
Peter Korsgaard
31a1995ac3 sysvinint: bump Debian patch
-13 patch no longer available on the Debian mirrors.

Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2011-01-26 11:16:46 +01:00
Peter Korsgaard
eb52900f27 lvm2: use official release location as arranged with upstream
See http://www.redhat.com/archives/lvm-devel/2011-January/msg00002.html
for details.

Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2011-01-26 11:08:34 +01:00
Heiko Zuerker
4d19654ee1 lvm2: bump version to 2.02.79 (.78 was pulled by Redhat)
Signed-off-by: Heiko Zuerker <smiley73@users.sourceforge.net>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2011-01-26 11:05:42 +01:00
Peter Korsgaard
82cf0e93f1 crosstool-ng: don't remove installation directory before installing
crosstool-ng would normally delete its installation directory before
installing the toolchain to ensure it wouldn't get confused by an earlier
build. Now that we're installing directly into HOST_DIR/usr, this doesn't
work very well - So get rid of the rm's.

Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2011-01-25 22:07:14 +01:00
Peter Korsgaard
0eef30440e Merge branch 'for-2011.02/python-bump' of git://git.busybox.net/~tpetazzoni/git/buildroot 2011-01-25 16:24:46 +01:00
Thomas Petazzoni
4c6a451ac9 tcpdump, libpcap: simplify and fix ac_cv_linux_vers
For some reason, tcpdump and libpcap need to have some information
about the kernel version being used. This information is passed using
the ac_cv_linux_vers autoconf variable.

However, the current value is determined using
BR2_DEFAULT_KERNEL_HEADERS which is only defined when an internal
Buildroot toolchain is used. So it would break with an external
toolchain or the Crosstool-NG backend.

According to Mike Frysinger at
http://lists.busybox.net/pipermail/buildroot/2011-January/040861.html,
this value is only used to determine if the kernel version is 0.x, 1.x
or 2.x, so passing ac_cv_linux_vers=2 is sufficient since Buildroot
only supports the 2.6 kernel anyway.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2011-01-25 16:23:22 +01:00
Peter Korsgaard
58d107ec3f crosstool-ng: install toolchain into HOST_DIR like the internal toolchain
Simplifies code and helps us when we add SDK support in the future.
With this we no longer need to copy headers/libraries to STAGING_DIR either.

Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2011-01-25 16:08:50 +01:00
Peter Korsgaard
8442ae7946 crosstool-ng: Use same naming convention as internal toolchains
Use unknown for the vendor part of the tuple, and add $arch-linux- symlinks,
similar to how it's done for the internal toolchain, rather than using
buildroot_ctng and unknown symlinks.

Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2011-01-25 16:03:14 +01:00
Peter Korsgaard
f826046578 package/Makefile.in: Fix LIBC calculation for internal ct-ng toolchains
Use uclibc for internal ct-ng toolchains configured with uClibc as well.

Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2011-01-25 16:01:25 +01:00
Peter Korsgaard
8f61b236c9 Use sys-root rather than sysroot for the sysroot/staging_dir
The name of the sysroot directory is arbitrary, but as ct-ng uses sys-root,
let's use that as well for consistency.

Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2011-01-25 15:58:04 +01:00
Thomas Petazzoni
6ea3c8bd4d python-mad: new package
python-mad is a Python binding for the MAD library, a high-quality
integer-only MPEG decoder.

This package has been introduced as a test to make sure that
third-party Python modules that rely on a C extension can properly be
built against the Python infrastructure of Buildroot.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2011-01-25 08:59:58 +01:00
Thomas Petazzoni
0eafafbe3d python-serial: new package
python-serial is a Python library to access serial ports.

This package has originally been introduced to test that third-party
pure Python modules (that do not use C extensions) build properly
against the Buildroot Python infrastructure.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2011-01-25 08:59:58 +01:00
Thomas Petazzoni
b0c86bcc57 Remove .py or .pyc depending on Python configuration
We do this at a global level since several packages can install
Python modules.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2011-01-25 08:59:57 +01:00
Thomas Petazzoni
e3418f69cf python: convert to autotargets, bump to 2.7.1, many improvements
This commit does a number of changes and improvements to the Python
interpreter package :

 * It converts the .mk file to the AUTOTARGETS infrastructure. Even
   though Python uses only autoconf and not automake, the AUTOTARGETS
   is a fairly good fit for the Python interpreter, so we make use of
   it.

 * It bumps the version to 2.7.1. As this is a minor release compared
   to 2.7, there are no particular changes needed because of this
   bump. All changes done to the package are cleanups and improvements
   unrelated to the version bump.

 * It uses the system libffi. Until now, Python was building its own
   libffi (a library used by interprets to build code that makes
   function call at runtime). Using the Python internal libffi was not
   working as Python was not passing the appropriate arguments down to
   libffi ./configure script. And it sounded better to use a
   system-wide libffi, that could potentially be used by other
   packages as well. This libffi is needed for the ctypes Python
   module.

 * Remove all "depends on BR2_PACKAGE_PYTHON" by moving all
   Python-related options under a "if BR2_PACKAGE_PYTHON ... endif"
   condition.

 * Make the installation of pre-compiled Python modules (.pyc) the
   default, since they are smaller and do not need to be compiled on
   the target. It is still possible to install uncompiled modules, or
   both the uncompiled and pre-compiled versions.

 * The options to select the set of Python modules to compile has been
   moved to a submenu.

 * The codecscjk (Japanese, Korean and Chinese codecs) module is no
   longer enabled by default.

 * The commented options for gdbm and nis in Python have been
   removed. Those were not supported, so let's get rid of unused code.

 * The option for the tkinker module in Python has been removed, since
   we don't have a package for Tk in Buildroot.

 * Options for the bzip2, sqlite and zlib modules have been added,
   since those modules have external dependencies.

 * The set of patches has been completely reworked and extended, with
   more fine-grained patches and newer functionalities. The patches
   are split in two categories:

    - Patches that make various modifications to the Python build
      system to support cross-compilation or make some minor
      modifications. Those patches are numbered from 0 to 100.

    - Patches that add configuration options to the Python build
      system in order to enable/disable the compilation of Python
      extensions or modules (test modules, pydoc, lib2to3, sqlite, tk,
      curses, expat, codecs-cjk, nis, unicodedata, database modules,
      ssl, bzip2, zlib). These patches are numbered from 100 to 200.

   All features of the previous four patches are preserved, but they
   are organized differently and the patches have been renamed. This
   makes it difficult to see the differences from the existing
   patches.

 * The host Python interpreter is now installed in $(HOST_DIR), since
   it is used to build third party Python modules.

 * The BR2_PACKAGE_PYTHON_DEV option is removed since
   BR2_HAVE_DEVFILES already does the necessary work.

 * The "make -i install" workaround introduced by Maxime Ripard is no
   longer needed. It was caused by the compilation of the tests that
   required the unicodedata module (which wasn't built in the host
   Python interpreter). Since we no longer compile the Python tests,
   the problem doesn't exist anymore and we can avoid this "-i"
   option.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2011-01-25 08:59:57 +01:00
Thomas Petazzoni
b06e7ac4e1 autotools: allow host package to use <pkg>_MAKE_ENV and <pkg>_MAKE
This will be needed by the Python interpreter package.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2011-01-25 08:59:56 +01:00
Thomas Petazzoni
76d9b3e8d7 libffi: new package
libffi is needed by the Python interpreter.

The libffi library provides a portable, high level programming
interface to various calling conventions. This allows a programmer to
call any function specified by a call interface description at
run-time.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2011-01-25 08:59:56 +01:00
Maxime Ripard
05ac95e04d python: Fix make install (Workaround python's bug #1669349)
Signed-off-by: Maxime Ripard <ripard@archos.com>
2011-01-25 08:56:20 +01:00
Maxime Ripard
10e1927e1a python: Add the needed patches to compile python2.7 in buildroot.
Signed-off-by: Maxime Ripard <ripard@archos.com>
2011-01-25 08:56:20 +01:00
Maxime Ripard
d82df10e90 python: Port the python2.4 patches to 2.7
Signed-off-by: Maxime Ripard <ripard@archos.com>
2011-01-25 08:56:20 +01:00
Maxime Ripard
afe54f1008 python: Move to version 2.7
Signed-off-by: Maxime Ripard <ripard@archos.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2011-01-25 08:56:20 +01:00
Peter Korsgaard
eef3d90998 sshfs: adjust make dependencies to match Kconfig
Spotted by Thomas, thanks.

Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2011-01-24 21:11:36 +01:00