Commit Graph

10656 Commits

Author SHA1 Message Date
Simon Dawson
608e6af167 New package minicom
[Peter: fix whitespace and deps (wchar, ncurses, only iconv if !locale)]
Signed-off-by: Simon Dawson <spdawson at gmail.com>
Acked-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2012-03-11 15:00:31 +01:00
Thomas Petazzoni
f044e03776 ccache: set COMPILERCHECK to 'none'
This allows ccache to re-use its cache contents even if the compiler
binary mtime has changed. It is the simplest approach to solve this
problem, and it works for the internal, external and crosstool-ng
toolchain backends.

Of course, it leaves the user responsible for invalidating the cache
when necessary, but there doesn't seem to be a real good solution that
allows both to: 1/ keep the cache contents accross builds and re-use
it and 2/ invalidate the cache automatically when the compiler chances
in an incompatible way.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2012-03-08 22:56:33 +01:00
Thomas Petazzoni
7ea11dafff ccache: Force ccache to use its internal zlib
The problem is that without this, ccache would link against the zlib
of the build system, but we might build and install a different
version of zlib in $(O)/host afterwards, which ccache will pick
up. This might break if there is a version mismatch. A solution would
be to add host-zlib has a dependency of ccache, but it would require
tuning the zlib .mk file to use HOSTCC_NOCCACHE as the
compiler. Instead, we take the easy path: tell ccache to use its
internal copy of zlib, so that ccache has zero dependency besides the
C library.

Fixes bug #4808.

Thanks to Raúl Sánchez Siles <rsanchezs@infoglobal.es> for reporting
the bug and testing the proposed solution.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2012-03-08 22:53:29 +01:00
Gustavo Zacarias
335260afd4 microperl: bump to version 5.12.4 and convert to gentargets
* Convert microperl to gentargets infrastructure
* Bump to a more modern version 5.12.4
* Introduce the bundle options to simplify people's lives

host-microperl is a fully-fledged perl.

For the time being we can't build XS modules thus breaking
target automake support for example since it requires IO.

target-automake was broken before anyway since the automake version
bump.

Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2012-03-08 22:50:31 +01:00
Peter Korsgaard
de66776330 kmod: bump version
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2012-03-08 22:36:51 +01:00
Peter Korsgaard
b50f7a832d barebox: fix 2012.03 typo
Thanks to Eric Bénard for noticing.

Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2012-03-07 16:26:50 +01:00
Peter Korsgaard
6131e47af0 toolchain-external: add linaro 2012.02
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2012-03-06 23:38:39 +01:00
Peter Korsgaard
21561bd27c Merge branch 'for-2012.05/ext-toolchain-updates' of git://git.free-electrons.com/users/thomas-petazzoni/buildroot 2012-03-06 23:09:56 +01:00
Arnout Vandecappelle (Essensium/Mind)
b5410b6a19 gpsd: dbus interface requires dbus-glib
gpsd uses dbus-glib as the dbus interface, so it should only be built if
libglib2 has been selected.  To simplify things, build dbus support only
if dbus-glib is selected.

Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2012-03-06 23:05:46 +01:00
Peter Korsgaard
dc0589b7d6 barebox: add 2012.03 release
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2012-03-06 22:55:30 +01:00
Arnout Vandecappelle (Essensium/Mind)
cb9a5877b8 microperl: fix host build
It misses -lm when compiling miniperl

Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2012-03-06 22:21:39 +01:00
Gustavo Zacarias
e482a430ec expat: add security patch for CVE-2009-3560
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2012-03-06 16:11:34 +01:00
Thomas Petazzoni
3311e41dc0 package: fix WGET download method
In cf2486bf31, we changed from using the
-P option of wget (to set the output *directory*) to using the -O
option (to set the output *file*). Unfortunately, wget -O has a
strange behaviour: it creates an empty 0-byte file even if the
download fails (for example when there is no network connection).

The problem is that then Buildroot thinks the download was successful
and therefore goes on with extracting the tarball.

The following succession of events makes Buildroot think that the
download has been sucessful:

 * Buildroot calls the DOWNLOAD_WGET macro with the URL of the
   official site

   * It tests if the file exists in the download directory, it doesn't
     exist.

   * It calls wget. wget fails to download the file and returns an
     error code, but leaves an empty file with the correct name in the
     downloaded directory.

 * Since the previously download failed, Buildroot tries another
   download from the Buildroot mirror (sources.buildroot.net)

   * It tests if the file exists in the download directory... and it
     exists! So this second download returns with success, and
     Buildroot assumes the file has been downloaded properly.

This scenario brings us with the following result, where the download
fails, but Buildroot continues its execution and tries to extract the
tarball:

$ rm /opt/dl/glib-2.30.2.tar.bz2
rm: cannot remove `/opt/dl/glib-2.30.2.tar.bz2': No such file or directory
$ rm -rf build/host-libglib2-2.30.2/
$ make
make -C /home/thomas/projets/buildroot O=/opt/outputs/udisks/.
>>> host-libglib2 2.30.2 Downloading
--2012-03-03 12:06:25--  http://ftp.gnome.org/pub/gnome/sources/glib/2.30/glib-2.30.2.tar.bz2
Resolving ftp.gnome.org... failed: Name or service not known.
wget: unable to resolve host address `ftp.gnome.org'
>>> host-libglib2 2.30.2 Extracting
bzcat /opt/dl//glib-2.30.2.tar.bz2 | tar --strip-components=1 -C /opt/outputs/udisks/build/host-libglib2-2.30.2  -xf -
bzcat: Compressed file ends unexpectedly;
	perhaps it is corrupted?  *Possible* reason follows.
[...]
tar: This does not look like a tar archive
tar: Exiting with failure status due to previous errors
make[1]: *** [/opt/outputs/udisks/build/host-libglib2-2.30.2/.stamp_extracted] Error 2
make: *** [all] Error 2
$ ls -l /opt/dl/glib-2.30.2.tar.bz2
-rw-r--r-- 1 thomas thomas 0 Mar  3 12:12 /opt/dl/glib-2.30.2.tar.bz2

Therefore, this commit modifies DOWNLOAD_WGET so that it removes the
downloaded file if wget returns with an error.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Acked-by: Luca Ceresoli <luca@lucaceresoli.net>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2012-03-05 20:56:28 +01:00
Arnout Vandecappelle (Essensium/Mind)
15fe220622 at91sam9260dfc_defconfig: fix kernel defconfig name
at91sam9260_defconfig contains support for the EVM (since v3.2).

Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2012-03-04 22:11:47 +01:00
Will Newton
3d2e77d5cb lite: Remove excess slashes from pkg-config file.
Signed-off-by: Will Newton <will.newton@imgtec.com>
Acked-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2012-03-04 22:09:20 +01:00
Peter Korsgaard
b38f41736e glib-networking: fix build without gnutls
configure errors out when it doesn't find gnutls unless explicitly
disabled.

Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2012-03-04 20:34:22 +01:00
Peter Korsgaard
9ab01a85d2 atk: fix build after glib2 bump
Remove G_CONST_RETURN references, similar to how we did for gamin.

Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2012-03-04 16:58:17 +01:00
Peter Korsgaard
06ef58efc4 imagemagick: re-add xml2-config patch
The patch somehow got removed from eb5498 (bump version, fix build) by
accident, so add it again.

Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2012-03-04 11:02:48 +01:00
Peter Korsgaard
77cb845b43 mtd: build after busybox if enabled
Busybox also provides flash applets nowadays, so ensure the mtd version
takes precedence if both are enabled.

Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2012-03-04 11:00:39 +01:00
Peter Korsgaard
3fc84ed292 gcc: bump 4.6.x version
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2012-03-04 09:09:52 +01:00
Peter Korsgaard
eb54983fdf imagemagick: bump version, fix build with zlib
The recent zlib bump broke imagemagick. This has been fixed upstream
in 6.7.5, but the xml2-config fix is still not upstream and 6.7.5
needs autoconf 2.67 to autoreconf (and we have 2.65), so we cannot
easily use that.

Instead move to the most recent version using autoconf 2.64 and
backport the fix from imagemagick svn. At the same time also
ensure zlib+bzip2 support is picked up if enabled.

Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2012-03-03 22:56:23 +01:00
Thomas Petazzoni
e6e60becb0 external-toolchain: add support for Linaro 2012.01
Linaro has just released a new pre-built toolchain, available as a
tarball, which is a pure toolchain (only the C library is
included). This makes this new Linaro 2012.01 toolchain usable in
Buildroot, so let's integrate the support for it.

In addition to simply adding the new external toolchain at the usual
locations, this patch allows need to adapt a few things to support
Linaro toolchains. Most toolchains store their libraries in the "lib/"
or "usr/lib" directories relative to the toolchain. Buildroot
toolchains on the other hand, store the libraries in the
"usr/<target-name>/lib" directory. And the Linaro toolchain has
choosen to use the "lib/<target-name>" directory. Therefore, this
patch adjust:

 * The logic to search a particular library when that library needs to
   be copied to the target directory

 * The logic to deduce the sysroot directory from the libc.a file
   location in the toolchain: removing "(usr/?)lib(64?)" is no longer
   sufficient, we need to take into account the "lib/<target-name>/"
   case.

Since the Linaro toolchain generates code for Cortex-A processors
only, the selection of this toolchain is limited to Cortex-A8 and
Cortex-A9.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2012-03-01 20:26:38 +01:00
Thomas Petazzoni
2ec3e6db46 external-toolchain: fix description of PowerPC 2010.09 from Mentor Graphics
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2012-03-01 20:26:38 +01:00
Thomas Petazzoni
090d486441 external-toolchain: adjust check for uClibc static toolchains
The current check for uClibc toolchain was verifying that a
ld-uClibc.so dynamic loader was present. However, with static-only
uClibc toolchains, this does not work. Instead, we check for an
uClibc-specific header file in the sysroot.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2012-03-01 20:26:38 +01:00
Thomas Petazzoni
3367d5ce77 external-toolchain: run checks even on extracted toolchains
When the mechanism that allows Buildroot to download external
toolchains automatically was added, all the sanity checks on the
external toolchains were not performed. This commit re-enables those
checks that we already do on external toolchains that are not
downloaded/extracted by Buildroot. This makes the toolchain checks
more consistent accross various configurations.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2012-03-01 20:26:38 +01:00
Thomas Petazzoni
c5c1064e49 external-toolchain: details on selecting the multilib variants
Each multilib variant need to be selected using a special combination
of flags, requiring specific choices of the Buildroot options. This
commit documents those configuration choices to make it easier to use
the various multilib variants.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2012-03-01 20:26:38 +01:00
Thomas Petazzoni
91d4336cbc external-toolchain: Blackfin.uclinux.org 2011R1-RC4
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2012-03-01 20:26:38 +01:00
Thomas Petazzoni
d00bd2a1f7 external-toolchain: add Sourcery CodeBench x86/x86_64 2011.09
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2012-03-01 20:26:38 +01:00
Thomas Petazzoni
22e0698eb8 external-toolchain: add Sourcery CodeBench PowerPC 2011.03
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2012-03-01 20:26:37 +01:00
Thomas Petazzoni
851508dedd external-toolchain: bump MIPS 2011.03 from -93 to -110
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2012-03-01 20:26:37 +01:00
Thomas Petazzoni
102c6b5fa1 external-toolchain: add Sourcery CodeBench ARM 2011.09
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2012-03-01 20:26:37 +01:00
Thomas Petazzoni
17b8cc930c external-toolchain: remove 2009q1 ARM Sourcery toolchain
We are going to add one more ARM Sourcery toolchain version, so it's
time to remove the oldest version.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2012-03-01 20:26:37 +01:00
Thomas Petazzoni
b95e436ee0 Expand external toolchain wrapper to custom flags
The BR2_TARGET_OPTIMIZATION flags were not used by the external
toolchain wrapper, which broke the multilib selection logic of
multilib external toolchains. It also simplifies the compilation of
external programs since all flags are properly passed automatically by
the toolchain wrapper.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2012-03-01 20:26:37 +01:00
Thomas Petazzoni
50ac5f9a57 Support multilib variants in sub-subdirectories
When an external toolchain has multiple variants organized in
sub-directories, Buildroot only copies the selected sysroot and not
all sysroots. In order to make this work, Buildroot creates a symbolic
link of the name of the original selected sysroot to the main sysroot
to trick the compiler so that it finds its libraries at the expected
location.

I.e, if the toolchain as the following organization (example take on
the ARM CodeSourcery toolchain) :

     .	    	for ARMv5T
     armv4  	for ARMv4T
     thumb2 	for ARMv7-A/Thumb

and ARMv4T is selected, then Buildroot will copy the contents of
armv4t/ from the toolchain into its $(STAGING_DIR) and then create a
$(STAGING_DIR)/armv4t symbolic link to $(STAGING_DIR).

However, our logic to do so only works when there was one directory
level for multilib sysroots. But in the MIPS CodeSourcery toolchain
there are multiple levels. For example, the MIPS16 soft-float
little-endian sysroot variant is in mips16/soft-float/el/ compared to
the main sysroot.

This patch improves our logic to support this case. The logic is a bit
more complicated as we don't want to create a symbolic link to an
absolute path, but a symbolic link to a relative path, because we want
the host/ directory to be relocatable.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2012-03-01 20:26:36 +01:00
Thomas Petazzoni
0729b544b3 Improve external toolchain logic to support IA32 Sourcery CodeBench toolchain
The IA32 Sourcery CodeBench toolchain has a relatively special
structure, with the following multilib variants:

 * Intel Pentium 4, 32 bits, the multilib variant is in ./ relative to
   the main sysroot, with the libraries in the lib/ directory.

 * Intel Xeon Nocona, 64 bits, the multilib variant is in ./ relative
   to the main sysroot, with the libraries in the lib64/ directory.

 * Intel Atom 32 bits, the multilib variant is in atom/ relative to
   the main sysroot, with the libraries in the lib/ directory.

 * Intel Core 2 64 bits, the multilib variant is in core2/ relative to
   the main sysroot, with the libraries in lib64/ directory.

So the first two variants are in the same sysroot, only the name of
the directory for the libraries is different.

Therefore, we introduce a new ARCH_LIB_DIR variable, which contains
either 'lib' or 'lib64'. This variable is defined according to the
location of the libc.a file for the selected multilib variant, and is
then used when copying the libraries to the target and to the staging
directory.

In addition to this, we no longer use the -print-multi-directory to
get the ARCH_SUBDIR, since in the case of the 64 bits variants of this
toolchain, it returns just '64' and not a real path. Instead, we
simply compute the difference between the arch-specific sysroot and
the main sysroot.

We also take that opportunity to expand the documentation on the
meaning of the different variables.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2012-03-01 20:26:36 +01:00
Thomas Petazzoni
b5bebeaebd Add the Atom processor in the list of supported x86/x86_64 processors
This allows to easily select the corresponding Atom multilib variant
in the Sourcery CodeBench toolchain.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2012-03-01 20:26:36 +01:00
Thomas Petazzoni
f3a01cb087 Add x86_64 variants to BR2_GCC_TARGET_ARCH
With the Sourcery CodeBench IA32/AMD64 toolchain, the proper -march=
switch must be passed. So, on x86_64, we make sure that
BR2_GCC_TARGET_ARCH gets defined to the correct value, just as we do
on x86.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2012-03-01 20:26:36 +01:00
Peter Korsgaard
dca6e03eac kernel-headers: bump 3.0.x / 3.2.x stable versions
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2012-03-01 14:07:29 +01:00
Peter Korsgaard
7a58ed7317 Merge branch 'next' 2012-03-01 14:05:41 +01:00
Peter Korsgaard
9fc4359144 Update copyright year
We're in 2012 by now.

Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2012-03-01 14:04:54 +01:00
Peter Korsgaard
5c3a337387 kickoff 2012.05 development cycle
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2012-03-01 14:03:39 +01:00
Peter Korsgaard
7182cf9a01 docs/news.html: add 2012.02 announcement mail link
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2012-03-01 13:58:40 +01:00
Peter Korsgaard
03ceab6d16 Update for 2012.02
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2012-02-29 23:19:47 +01:00
Thomas Petazzoni
def11d7922 libecore: fix build of host-libecore when X11 not available
The host-libecore build tries to build the X11 backend. This works if
you have X11 headers/libraries installed on your build machine, but
fails if you don't, and Buildroot shouldn't depend on such things
being installed.

Therefore, we force host-libecore to not build any of the graphical
backends (X, XCB or DirectFB).

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2012-02-29 10:00:24 +01:00
Peter Korsgaard
97165f123b libglib2: fix build with legacy uClibc versions
qsort_r was only added in uClibc 0.9.33, so only enable it when we're sure
it's available. For external/ctng toolchains we cannot easily know, so
simply disable it there.

Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2012-02-28 21:53:46 +01:00
Sven Neumann
e825561895 e2fsprogs: disable build of e4defrag unless explicitly enabled
The e2fsprogs configure script enables the build of the e4defrag
utility by default. Disable it unless BR2_PACKAGE_E2FSPROGS_E4DEFRAG
is selected.

Also the --disable-blkid option is not recognized by the configure
script. Use --disable-libblkid instead.

Signed-off-by: Sven Neumann <s.neumann@raumfeld.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2012-02-28 20:52:06 +01:00
Sven Neumann
8d485749e1 libsoup: update to version 2.36.1
Update to latest stable release. SSL support now depends on
glib-networking with gnutls support instead of using gnutls
directly.

Remove libsoup-CVE-2011-2054.patch, this is fixed upstream.

Signed-off-by: Sven Neumann <s.neumann@raumfeld.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2012-02-28 09:22:21 +01:00
Sven Neumann
01ffa2e868 glib-networking: new package
glib-networking provides network-related GIO modules for glib.
It is used by newer versions of libsoup to implement SSL/TLS
support.

Signed-off-by: Sven Neumann <s.neumann@raumfeld.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2012-02-28 09:22:21 +01:00
Sven Neumann
4fd8bdc7da libglib2: update to version 2.30.2
Update to latest stable release and add a dependency on libffi which
is needed by GObject.

[Peter: fixup build on uClibc]
Signed-off-by: Sven Neumann <s.neumann@raumfeld.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2012-02-28 09:22:03 +01:00
Sven Neumann
328fc57472 gamin: fix compilation with glib 2.30
G_CONST_RETURN is deprecated in glib 2.30 so remove occurences
to avoid build failures.

Patch taken from http://patches.openembedded.org/patch/13079/

Signed-off-by: Sven Neumann <s.neumann@raumfeld.com>
Cc: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2012-02-27 23:30:00 +01:00