Compare commits

..

358 Commits

Author SHA1 Message Date
Peter Korsgaard
f44524f61a Update for 2018.02.3
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-06-18 19:43:04 +02:00
Yann E. MORIN
31bdd82f84 package/elf2flt: replace hard-links with copies to fix rpath
Do for elf2flt what we did for binutils: replace the hardlinks (which
break rpath handling) with copies of the individaul tools.

See previous commit (package/binutils: switch from symlinks to copies
and commit f9cffb6af4 (binutils: replace hard-links with soft-links to
fix rpath) for the complete story.

Fixes: #11031.

Reported-by: Christophe Priouzeau <christophe.priouzeau@st.com>
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Christophe Priouzeau <christophe.priouzeau@st.com>
Cc: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Cc: Peter Korsgaard <peter@korsgaard.com>
Cc: Arnout Vandecappelle <arnout@mind.be>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit b370693400)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-06-18 10:07:39 +02:00
Yann E. MORIN
a85d9fd851 package/binutils: switch from symlinks to copies to fix rpath
Commit f9cffb6af4 (binutils: replace hard-links with soft-links to fix
rpath) has a side effect that when we build for a noMMU target, elf2flt
will in turn replace some of the programs installed by binutils, with
its own wrappers.

For example, it will rename host/TUPLE/bin/ld to ld.real, and add its
own wrapper in place of the original. It does the same for
host/bin/TUPLE-ld and host/bin/TUPLE-ld.real.

However, we had already made ld a symlink to ../../bin/TUPLE-ld, so
host/TUPLE/bin/ld.real will still point to host/bin/TUPLE-ld when we
want it to point to ld.real instead...

This ultimately confuses gcc later on.

Of course, the culprit is also elf2flt, which also installs similar
hardlinks that would ultimately exhibit the same rpath issue as the
one fixed by f9cffb6af4. Note: we haven't had an issue so far with
that, because those tools installed by elf2flt only link with libz,
which is most often present on the host system. So, all seem well,
but is nonetheless broken; this will be fixed in a subsequent commit.

But back on topic. If we were to fix elf2flt with similar symlinks,
gcc still gets confused. The underlying reason for this confusion is
not entirely clear, though... It looks like something is trying to
dereference symlinks and gets confused by the result somehow...

So, in an attempt to restore some sanity in all this mess, we try to
restore the previous behaviour, we no longer use symlinks but just copy
the individual tools.

Fixes: #11031.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Christophe Priouzeau <christophe.priouzeau@st.com>
Cc: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Cc: Peter Korsgaard <peter@korsgaard.com>
Cc: Arnout Vandecappelle <arnout@mind.be>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit bb0164a8b1)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-06-18 10:04:59 +02:00
Fabrice Fontaine
9011938a27 cups-filters: bump to version 1.20.3
Add hash for license file

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 2b4b01d7fe)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-06-18 06:53:57 +02:00
Olivier Schonken
ea0b759059 cups-filters: Add patch to remove relative symbolic link from install
On older build systems with old coreutils, using relative symbolic link
(ln -r) does not work, and causes failed builds. Workaround is to use
normal symbolic link with a relative path. e.g. ../../$(BINDIR)

This fix is dependent on bumping cups-filters version to 1.20.1 because
of autotools issue with Makefile.am changes.

Fixes:
http://autobuild.buildroot.net/results/77a6369f3530a2a6a055f7fd664f1ad424274d77

Signed-off-by: Olivier Schonken <olivier.schonken@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit ef60ef83c9)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-06-18 06:53:50 +02:00
Olivier Schonken
5eaf3e000a cups-filters: bump to 1.20.1
Signed-off-by: Olivier Schonken <olivier.schonken@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit db1d9da6d6)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-06-18 06:53:38 +02:00
Peter Korsgaard
023442a669 libressl: security bump to version 2.6.5
Fixes CVE-2018-0495: ECDSA signing side-channel attack.

For more details, see the release notes:

http://bsdsec.net/articles/libressl-2-7-4-2-6-5-released

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-06-17 20:29:38 +02:00
Petr Vorel
0b7282600f network-manager: fix package prompt name
Rename the prompt string for consistency with the package directory
name.

Signed-off-by: Petr Vorel <petr.vorel@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit b5da9637ec)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-06-17 17:45:03 +02:00
Martin Bark
2a42e5af7b package/nodejs: security bump to version 8.11.3
Fixes the following security issues:

- (CVE-2018-7167): Fixes Denial of Service vulnerability where calling
  Buffer.fill() could hang

- (CVE-2018-7161): Fixes Denial of Service vulnerability by updating the
  http2 implementation to not crash under certain circumstances during
  cleanup

- (CVE-2018-1000168): Fixes Denial of Service vulnerability by upgrading
  nghttp2 to 1.32.0

See https://nodejs.org/en/blog/release/v8.11.3/ for more details

Signed-off-by: Martin Bark <martin@barkynet.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 64baf3def7)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-06-17 17:44:54 +02:00
Bernd Kuhls
e06917c072 linux-headers: bump 4.{4, 9, 14, 16, 17}.x series
[Peter: drop 4.16.x/17.x change]
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit a5a9beb7d9)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-06-17 17:44:36 +02:00
Bernd Kuhls
3a3f31ca46 package/python: bump version to 2.7.15
Rebased patch 0009, removed patch 0035 after upstream commit
0b91f8a668

Updated license hash after 2018 bump.

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 5f6f32968e)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-06-17 17:43:45 +02:00
Peter Korsgaard
e9102f069d redis: security bump to version 3.2.12
>From the release notes:

================================================================================
Redis 3.2.12     Released Wed Jun 13 12:43:01 CEST 2018
================================================================================

Upgrade urgency CRITICAL:

* Multilple security issues fixed.
* Backport of an older AOF fsync=always fix. Check 4.x release notes.
* Backport of a *SCAN bug. Sometimes elements could be missing from the scan.
* Other minor things.

https://raw.githubusercontent.com/antirez/redis/3.2/00-RELEASENOTES

For more details about the lua related security issues, see the blog:

http://antirez.com/news/119

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 3bf2745a0f)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-06-17 17:41:32 +02:00
Baruch Siach
cde3ec2378 libgcrypt: security bump to version 1.8.3
Fixes CVE-2018-0495: ECDSA signing side-channel attack.

Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit b6543b5fdf)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-06-17 17:40:59 +02:00
Fabrice Fontaine
285fdcca71 docs/manual: fix scancpan path
scancpan is now in utils not in supports/scripts

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit f4b4f77e84)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-06-17 17:40:12 +02:00
Baruch Siach
c716a6bd9d file: add upstream security fix
Fixes CVE-2018-10360: The do_core_note function in readelf.c in
libmagic.a in file 5.33 allows remote attackers to cause a denial of
service (out-of-bounds read and application crash) via a crafted ELF
file.

Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 89be4c7b0e)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-06-17 17:39:55 +02:00
Bernd Kuhls
21e768411c package/file: bump version to 5.33
Added license hashes, added optional dependency to libseccomp provided
by upstream in this version bump.

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit eacca09a8a)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-06-17 17:39:49 +02:00
Peter Korsgaard
24fa6b9970 perl: add upstream security fix for CVE-2018-12015
Fixes CVE-2018-12015 - In Perl through 5.26.2, the Archive::Tar module
allows remote attackers to bypass a directory-traversal protection
mechanism, and overwrite arbitrary files, via an archive file containing a
symlink and a regular file with the same name.

Patch from
ae65651eab
with path rewritten to match perl tarball.

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 66760f2734)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-06-17 17:39:35 +02:00
Francois Perrad
f35d38bc4a perl: bump to version 5.26.2
Signed-off-by: Francois Perrad <francois.perrad@gadz.org>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit b661a5477e)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-06-17 17:39:29 +02:00
Fabio Estevam
5522812dc6 linux-headers: bump 4.{4, 9}.x series
Signed-off-by: Fabio Estevam <festevam@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 78117a553b)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-06-17 17:37:15 +02:00
Baruch Siach
9b1232002c f2fs-tools: update homepage link
As noted in the sourceforge page, the project is not using sourceforge
anymore. Use the gitweb summary page instead.

Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit a74a41d834)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-06-17 17:37:04 +02:00
Fabio Estevam
85b150081d linux-headers: bump 4.{14, 16, 17}.x series
[Peter: drop 4.16.x/17.x change]
Signed-off-by: Fabio Estevam <festevam@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 0fee303fff)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-06-17 17:36:44 +02:00
Carlos Santos
5e40e129d3 board/synopsys: synchronize custom inittab with BusyBox' one
Apply modifications made in recent commits:

- 456ea9871e busybox: add /dev/std{in, out, err} symlinks to inittab
- 13dbe73782 busybox: reduce number of mkdir calls in inittab
- 8a89d290d4 busybox: add an inittab entry to activate swap

Signed-off-by: Carlos Santos <casantos@datacom.com.br>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit a3df894e83)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-06-17 17:35:28 +02:00
Carlos Santos
27e91a6cd6 busybox: add an inittab entry to activate swap
There is a call to swapoff in the shutdown sequence, so call "swapon -a"
on startup. As stated in the swapon man page,

   All devices marked as "swap" in /etc/fstab are made available, except
   for those with the "noauto" option. Devices that are already being
   used as swap are silently skipped.

So even if the system has some init script to start/stop swap (e.g. from
a rootfs ovelay) calling swapon/swapoff would be harmless.

Signed-off-by: Carlos Santos <casantos@datacom.com.br>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit d524cc7d9d)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-06-17 17:34:57 +02:00
Carlos Santos
5456704d4f sysvinit: add an inittab entry to activate swap
There is a call to swapoff in the shutdown sequence, so call "swapon -a"
on startup. As stated in the swapon man page,

   All devices marked as "swap" in /etc/fstab are made available, except
   for those with the "noauto" option. Devices that are already being
   used as swap are silently skipped.

So even if the system has some init script to start/stop swap (e.g. from
a rootfs ovelay) calling swapon/swapoff would be harmless.

Signed-off-by: Carlos Santos <casantos@datacom.com.br>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit d2a091c96b)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-06-17 17:34:49 +02:00
Jörg Krause
0e4940d5f2 sysvinit: add /dev/std{in, out, err} symlinks to inittab
Some applications, e.g. bashs process subsitution feature, rely on the
convention of `/dev/fd` being a symbolic link to `/proc/self/fd`.

This symbolic link and his companions `/dev/std*` are created by (e)udev [1],
but not by mdev, resulting in the following error when using the following
expression:

```
bash: /dev/fd/62: No such file or directory
```

For the sake of simplicity, lets fix this by creating the symlinks in inittab.
It is only really needed if eudev isn't used, but it doesn't really hurt to
create them even if eudev will recreate them afterwards.

Note, that we do not create the symlink `/dev/core` as `/proc/kcore` is
not available on all platforms, e.g. ARM, and the feature is not much
appreciated [2].

[1] 8943501993/src/shared/dev-setup.c (L35-L40)
[2] https://lwn.net/Articles/45315/

[Peter: redirect errors to /dev/null for ro rootfs]
Signed-off-by: Jörg Krause <joerg.krause@embedded.rocks>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>

(cherry picked from commit 6919fc5566)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-06-17 17:34:32 +02:00
Jörg Krause
66e9e291a8 busybox: add /dev/std{in, out, err} symlinks to inittab
Some applications, e.g. bashs process subsitution feature, rely on the
convention of `/dev/fd` being a symbolic link to `/proc/self/fd`.

This symbolic link and his companions `/dev/std*` are created by (e)udev [1],
but not by mdev, resulting in the following error when using the following
expression:

```
bash: /dev/fd/62: No such file or directory
```

For the sake of simplicity, lets fix this by creating the symlinks in inittab.
It is only really needed if eudev isn't used, but it doesn't really hurt to
create them even if eudev will recreate them afterwards.

Note, that we do not create the symlink `/dev/core` as `/proc/kcore` is
not available on all platforms, e.g. ARM, and the feature is not much
appreciated [2].

[1] 8943501993/src/shared/dev-setup.c (L35-L40)
[2] https://lwn.net/Articles/45315/

[Peter: redirect output (errors) to /dev/null for ro rootfs]
Signed-off-by: Jörg Krause <joerg.krause@embedded.rocks>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>

(cherry picked from commit 456ea9871e)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-06-17 17:34:14 +02:00
Carlos Santos
e51711a79b sysvinit: reduce number of mkdir calls in inittab
The default sysvinit inittab does two separate mkdir calls to create
/dev/pts and /dev/shm. Reduce this to call mkdir only once for both
directories.

This removes id "si3" but keeps ids "si4".."si9" intact rather than
renumbering them. This would just increase the turmoil without any
practical effect.

Based on commit e9db8122fb, by Florian La Roche <F.LaRoche@pilz.de>.

Signed-off-by: Carlos Santos <casantos@datacom.com.br>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit dc267db6ab)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-06-17 17:32:05 +02:00
Baruch Siach
56be42df17 triggerhappy: use target pkg-config
triggerhappy uses pkg-config to detect the systemd library. Make sure it
uses the target pkg-config, not the host one.

Fixes build failure when the host has systemd pkg-config files:

.../host/bin/arm-linux-gcc -static  th-cmd.o cmdsocket.o  -lsystemd -o th-cmd
.../host/opt/ext-toolchain/bin/../lib/gcc/arm-buildroot-linux-uclibcgnueabi/6.4.0/../../../../arm-buildroot-linux-uclibcgnueabi/bin/ld: cannot find -lsystemd

Cc: Peter Korsgaard <peter@korsgaard.com>
Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit b4a7145b0b)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-06-17 17:30:55 +02:00
Baruch Siach
e15f712c32 gnupg: security bump to version 1.4.23
Fixes CVE-2018-12020: Unsanitized file names might cause injection of
terminal control characters into the status output of gnupg.

Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 0647268416)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-06-17 17:30:19 +02:00
Baruch Siach
80bfea32d4 gnupg2: security bump to version 2.2.8
Fixes CVE-2018-12020: Unsanitized file names might cause injection of
terminal control characters into the status output of gnupg.

Cc: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit b78a365b56)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-06-17 17:29:50 +02:00
Baruch Siach
ed6a8900dd gnupg2: bump to version 2.2.7
Cc: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 429c6f21b3)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-06-17 17:29:45 +02:00
Yann E. MORIN
5f186a3a22 docs/manual: always point to the correct license file
The manual is GPL-2, and points to the COPYING file in the repository.
When we do a rendering of the manual for a specific version, that URL
is currently always poitning to the latest version of the COPYING file.

If we ever have to change the content of that file (e.g. to add a new
exception, more clarifications, a license change, or whatever), then
an old manual would point to that newer version, which would then be
incorrect.

Include the sha1 of the commit in the URL, so that the manual always
point to the tree at the time the manual was rendered, not the time
it is consulted. Contrary to the informative text above, use the full
sha1, not the shortened one.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Thomas De Schampheleire <patrickdepinguin@gmail.com>
Cc: Luca Ceresoli <luca@lucaceresoli.net>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 529219ba96)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-06-17 17:29:02 +02:00
Peter Korsgaard
6de0560cb6 libvncserver: add upstream security fix for CVE-2018-7225
Fixes CVE-2018-7225 - An issue was discovered in LibVNCServer through
0.9.11.  rfbProcessClientNormalMessage() in rfbserver.c does not sanitize
msg.cct.length, leading to access to uninitialized and potentially sensitive
data or possibly unspecified other impact (e.g., an integer overflow) via
specially crafted VNC packets.

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit a4f7700f0b)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-06-17 17:28:28 +02:00
Bernd Kuhls
ee27092a56 package/mpg123: security bump to version 1.25.10
Version 1.25.4 fixes CVE-2017-9545, for details see release notes:
http://www.mpg123.org/cgi-bin/news.cgi

Added upstream hashes.

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit cb67c1d55b)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-06-17 17:28:12 +02:00
Bernd Kuhls
c602b73cf9 package/imagemagick: security bump to version 7.0.7-38
Fixes CVE-2018-11625, CVE-2018-11624 & CVE-2018-10177.

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit c3387c59bb)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-06-17 17:27:53 +02:00
Peter Korsgaard
a1c134e327 mariadb: security bump version to 10.1.33
Release notes: https://mariadb.com/kb/en/mariadb-10133-release-notes/
Changelog: https://mariadb.com/kb/en/mariadb-10133-changelog/

Fixes the following security vulnerabilities:

CVE-2018-2782 - Vulnerability in the MySQL Server component of Oracle MySQL
(subcomponent: InnoDB).  Supported versions that are affected are 5.6.39 and
prior and 5.7.21 and prior.  Easily exploitable vulnerability allows low
privileged attacker with network access via multiple protocols to compromise
MySQL Server.  Successful attacks of this vulnerability can result in
unauthorized ability to cause a hang or frequently repeatable crash
(complete DOS) of MySQL Server.

CVE-2018-2784 - Vulnerability in the MySQL Server component of Oracle MySQL
(subcomponent: InnoDB).  Supported versions that are affected are 5.6.39 and
prior and 5.7.21 and prior.  Easily exploitable vulnerability allows low
privileged attacker with network access via multiple protocols to compromise
MySQL Server.  Successful attacks of this vulnerability can result in
unauthorized ability to cause a hang or frequently repeatable crash
(complete DOS) of MySQL Server.

CVE-2018-2787 - Vulnerability in the MySQL Server component of Oracle MySQL
(subcomponent: InnoDB).  Supported versions that are affected are 5.6.39 and
prior and 5.7.21 and prior.  Easily exploitable vulnerability allows high
privileged attacker with network access via multiple protocols to compromise
MySQL Server.  Successful attacks of this vulnerability can result in
unauthorized ability to cause a hang or frequently repeatable crash
(complete DOS) of MySQL Server as well as unauthorized update, insert or
delete access to some of MySQL Server accessible data.

CVE-2018-2766 - Vulnerability in the MySQL Server component of Oracle MySQL
(subcomponent: InnoDB).  Supported versions that are affected are 5.6.39 and
prior and 5.7.21 and prior.  Easily exploitable vulnerability allows high
privileged attacker with network access via multiple protocols to compromise
MySQL Server.  Successful attacks of this vulnerability can result in
unauthorized ability to cause a hang or frequently repeatable crash
(complete DOS) of MySQL Server.

CVE-2018-2755 - Vulnerability in the MySQL Server component of Oracle MySQL
(subcomponent: Server: Replication).  Supported versions that are affected
are 5.5.59 and prior, 5.6.39 and prior and 5.7.21 and prior.  Difficult to
exploit vulnerability allows unauthenticated attacker with logon to the
infrastructure where MySQL Server executes to compromise MySQL Server.
Successful attacks require human interaction from a person other than the
attacker and while the vulnerability is in MySQL Server, attacks may
significantly impact additional products.  Successful attacks of this
vulnerability can result in takeover of MySQL Server.

CVE-2018-2819 - Vulnerability in the MySQL Server component of Oracle MySQL
(subcomponent: InnoDB).  Supported versions that are affected are 5.5.59 and
prior, 5.6.39 and prior and 5.7.21 and prior.  Easily exploitable
vulnerability allows low privileged attacker with network access via
multiple protocols to compromise MySQL Server.  Successful attacks of this
vulnerability can result in unauthorized ability to cause a hang or
frequently repeatable crash (complete DOS) of MySQL Server.

CVE-2018-2817 - Vulnerability in the MySQL Server component of Oracle MySQL
(subcomponent: Server: DDL).  Supported versions that are affected are
5.5.59 and prior, 5.6.39 and prior and 5.7.21 and prior.  Easily exploitable
vulnerability allows low privileged attacker with network access via
multiple protocols to compromise MySQL Server.  Successful attacks of this
vulnerability can result in unauthorized ability to cause a hang or
frequently repeatable crash (complete DOS) of MySQL Server.

CVE-2018-2761 - Vulnerability in the MySQL Server component of Oracle MySQL
(subcomponent: Client programs).  Supported versions that are affected are
5.5.59 and prior, 5.6.39 and prior and 5.7.21 and prior.  Difficult to
exploit vulnerability allows unauthenticated attacker with network access
via multiple protocols to compromise MySQL Server.  Successful attacks of
this vulnerability can result in unauthorized ability to cause a hang or
frequently repeatable crash (complete DOS) of MySQL Server.

CVE-2018-2781 - Vulnerability in the MySQL Server component of Oracle MySQL
(subcomponent: Server: Optimizer).  Supported versions that are affected are
5.5.59 and prior, 5.6.39 and prior and 5.7.21 and prior.  Easily exploitable
vulnerability allows high privileged attacker with network access via
multiple protocols to compromise MySQL Server.  Successful attacks of this
vulnerability can result in unauthorized ability to cause a hang or
frequently repeatable crash (complete DOS) of MySQL Server.

CVE-2018-2771 - Vulnerability in the MySQL Server component of Oracle MySQL
(subcomponent: Server: Locking).  Supported versions that are affected are
5.5.59 and prior, 5.6.39 and prior and 5.7.21 and prior.  Difficult to
exploit vulnerability allows high privileged attacker with network access
via multiple protocols to compromise MySQL Server.  Successful attacks of
this vulnerability can result in unauthorized ability to cause a hang or
frequently repeatable crash (complete DOS) of MySQL Server.

CVE-2018-2813 - Vulnerability in the MySQL Server component of Oracle MySQL
(subcomponent: Server: DDL).  Supported versions that are affected are
5.5.59 and prior, 5.6.39 and prior and 5.7.21 and prior.  Easily exploitable
vulnerability allows low privileged attacker with network access via
multiple protocols to compromise MySQL Server.  Successful attacks of this
vulnerability can result in unauthorized read access to a subset of MySQL
Server accessible data.

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Acked-by: Ryan Coe <bluemrp9@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 5fbacdd59f)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-06-17 17:27:05 +02:00
Ryan Coe
a2b8f69cfc mariadb: bump version to 10.1.32
Release notes: https://mariadb.com/kb/en/mariadb-10132-release-notes/
Changelog: https://mariadb.com/kb/en/mariadb-10132-changelog/

Signed-off-by: Ryan Coe <bluemrp9@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 3f37dd7c3b)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-06-17 17:26:59 +02:00
Bernd Kuhls
c5d023f659 package/libvorbis: add upstream security patch to fix CVE-2017-14160
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit dc7f871574)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-06-17 17:26:14 +02:00
Fabio Estevam
3ca7c547b2 linux-headers: bump 4.{4, 9}.x series
Signed-off-by: Fabio Estevam <festevam@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 690c08b696)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-06-17 17:25:38 +02:00
Fabrice Fontaine
fc64852293 libxslt: security bump to version 1.3.2
- Fix CVE-2017-5029
- Remove first patch (already in version)
- Add a dependency to host-pkgconf and remove libxml2 options: see
  abf537ebb2
- Add hash for license file

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit eca8704dcf)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-06-17 17:25:15 +02:00
Carlos Santos
7774ca1cb2 netplug: prevent starting multiple instances of netplugd
Executing "/etc/init.d/S29netplug start" multiple times resulted in
multiple instances of netplugd.

Pass "-p /var/run/netplug.pid" to netplugd, so it creates the PID file
that start-stop-daemon needs to know that netplugd is already running.
Also use the pid file to stop netplugd, instead of the daemon name.

Fixes https://bugs.busybox.net/show_bug.cgi?id=10661

Reported-by: Joachim Krueger <mail2k@web.de>
Signed-off-by: Carlos Santos <casantos@datacom.com.br>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 3c6a5bdd3e)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-06-17 17:24:51 +02:00
Carlos Santos
f727f28cb5 netplug: look for init script configurations in /etc/default/
We are working to make all sysvinit scripts conformant to a pattern and
/etc/default/ seems to be a good choice, since 34 packages already get
optional configurations from files at that directory.

netplug still installs an init script at /etc/rc.d/init.d/.  This will
be fixed in a future patch that will refactor the init scripts.

Signed-off-by: Carlos Santos <casantos@datacom.com.br>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 4adaa581b2)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-06-17 17:24:45 +02:00
Carlos Santos
e357711fa7 netplug: don't test if the binary exists in the init script
The test doesn't make sense. It just exits without any error if the
binary doesn't exist, which is silly.

Signed-off-by: Carlos Santos <casantos@datacom.ind.br>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit b77c9d265e)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-06-17 17:24:40 +02:00
Fabio Estevam
d025607cc0 linux-headers: bump 3.2.x and 4.{4, 9, 14, 16}.x series
[Peter: drop 4.16.x change]
Signed-off-by: Fabio Estevam <festevam@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 0326a06bea)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-06-17 17:22:06 +02:00
Florian La Roche
8c751db361 skeleton: PAGER without blank and unset at end of for loop
The PAGER environment variable is including a blank character at the
end. Remove this.
A for loop has been unsetting the variable inside the loop, this is only
needed once at the end of the loop.

Signed-off-by: Florian La Roche <F.LaRoche@pilz.de>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 903b8446a8)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-06-17 17:19:52 +02:00
Florian La Roche
a765cfb34d busybox: reduce number of mkdir calls in inittab
The default busybox inittab does two separate mkdir calls
to create /dev/pts and /dev/shm. Reduce this to call mkdir
only once for both directories.

Signed-off-by: Florian La Roche <F.LaRoche@pilz.de>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 13dbe73782)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-06-17 17:19:42 +02:00
Florian La Roche
42249d0941 busybox: fix usage string in S01logging
In busybox fix the S01logging usage text to
document the "reload" target.

Signed-off-by: Florian La Roche <F.LaRoche@pilz.de>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit c7963858ed)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-06-17 17:19:09 +02:00
Carlos Santos
e8bb8519ad audit: do not remove file installed by netplug
The package recipe uses a post-install hook to remove useless files from
$(TARGET_DIR)/etc/rc.d/init.d and $(TARGET_DIR)/etc/sysconfig. This may
damage packages that install useful files on those directories (such as
netplug, which installs $(TARGET_DIR)/etc/rc.d/init.d/netplugd).

In the future[1] we will reorganize the init scripts and possibly get
rid of /etc/rc.d and /etc/sysconfig but for the moment let's restrict
the file removal to those installed by audit.

1. http://lists.busybox.net/pipermail/buildroot/2018-May/221549.html

Signed-off-by: Carlos Santos <casantos@datacom.com.br>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 49844baf2f)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-06-17 17:17:23 +02:00
Peter Korsgaard
a28cf4af32 wireshark: security bump to version 2.2.15
Fixes the following security issues:

CVE-2018-11362: LDSS dissector crash
https://www.wireshark.org/security/wnpa-sec-2018-25.html

CVE-2018-11357: Multiple dissectors could consume excessive memory
https://www.wireshark.org/security/wnpa-sec-2018-28.html

CVE-2018-11356: DNS dissector crash
https://www.wireshark.org/security/wnpa-sec-2018-29.html

CVE-2018-11360: GSM A DTAP dissector crash
https://www.wireshark.org/security/wnpa-sec-2018-30.html

CVE-2018-11358: Q.931 dissector crash
https://www.wireshark.org/security/wnpa-sec-2018-31.html

CVE-2018-11359: Multiple dissectors could crash
https://www.wireshark.org/security/wnpa-sec-2018-33.html

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 1f47aa89f9)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-06-17 17:16:38 +02:00
Fabrice Fontaine
64ba5b40a4 php-amqp: needs openssl support in rabbitmq-c
Since version 1.8.0, php-amqp needs a rabbitmq-c with openssl support:
https://github.com/pdezwart/php-amqp/issues/310

SSL support is disabled in rabbitmq-c if BR2_STATIC_LIBS is set however
don't add an unneeded !BR2_STATIC_LIBS dependency in Config.in as all
PHP External Extensions depends on !BR2_STATIC_LIBS
(see package/Config.in)

Fixes:
 - http://autobuild.buildroot.net/results/b7c89bbbd0ca1df08dd7cbfc90c7b45dcf1fad05

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit d93305744b)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-06-17 17:14:36 +02:00
Zoltan Gyarmati
abb169750f DEVELOPERS: update my e-mail address
Signed-off-by: Zoltan Gyarmati <zgyarmati@zgyarmati.de>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 0a0812db05)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-06-17 17:13:08 +02:00
Baruch Siach
94a4b18e7a cifs-utils: disable man page generation
Buildroot does not generate documentation for target.

This fixes the build on hosts where the rst2man command does not support
the --syntax-highlight parameter.

Fixes:
http://autobuild.buildroot.net/results/265/2655c0e1fa3ad0a10b4aed39a17feead94e47bfb/
http://autobuild.buildroot.net/results/92d/92d7c608f717bbfe01ecfb9bc9604cb303d8594c/
http://autobuild.buildroot.net/results/4b9/4b95404a89a595ca9c1e3df912169e9d36ff2bd7/

Cc: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 57d16fd480)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-06-17 17:12:50 +02:00
Martin Bark
afbdb20150 package/nodejs: bump version to 8.11.2
See https://nodejs.org/en/blog/release/v8.11.2/

Signed-off-by: Martin Bark <martin@barkynet.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 1d4eb844e3)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-06-17 17:05:32 +02:00
Peter Korsgaard
cbdad97e18 linux: reword binutils 2.29+ comment
This issue only applies to kernels built with CONFIG_THUMB2=y, so reword the
comment to make that more clear.

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit d937f908f1)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-06-17 16:53:26 +02:00
Yann E. MORIN
0bc221581c linux: may fail to boot for binutils 2.29+ even without armv7m
Commit f13477b (linux: config.in: add comment for Arm Cortex-M) added a
comment so that the user that the linux kernel may miscompile with
binutils 2.29+, when the target is an armv7m CPU.

However, the real trigger is a compilation in thumb2 mode, which happens
to be the only option for armv7m CPUs.

We can't know whether the kernel will be built in arm or thumb2 mode,
though, because we do not have that information: it is only available in
the Linux' .config file, which we don;t have access to at the time we
run our menuconfig.

So, relax the conditions under which the comment is made, so that it
appears as soon as binutils are >= 2.29 (i.e. not 2.28, which is the
oldest we support) for ARM CPUs.

[Peter: reword comment]
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Christophe Priouzeau <christophe.priouzeau@st.com>
Cc: Laurent GONZALEZ <br22@gezedo.com>
Cc: Peter Korsgaard <peter@korsgaard.com>
Cc: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Cc: Arnout Vandecappelle <arnout@mind.be>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>

(cherry picked from commit c2c0623bff)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-06-17 16:53:05 +02:00
Yann E. MORIN
2e49c98230 package/binutils: extend the 2.28 default to thumb mode
Commit 17f352ac (package/binutils: default to 2.29 for Cortex-M targets)
made the default version 2.28 (and not 2.29!) when the target is an
arm-v7m CPU.

However, the real trigger is compilation in Thumb mode, not the fact
that the target is v7m.

The fact that it was noticed on a v7m target is because Thumb is the
only mode valid on those CPUs.

Tighten the defaults to 2.28 for Thumb and Thumb2 modes.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Laurent GONZALEZ <br22@gezedo.com>
Cc: Christophe Priouzeau <christophe.priouzeau@st.com>
Cc: Peter Korsgaard <peter@korsgaard.com>
Cc: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Cc: Arnout Vandecappelle <arnout@mind.be>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 3dbc5a6279)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-06-17 16:50:33 +02:00
Christophe PRIOUZEAU
e58263e48d linux: config.in: add comment for Arm Cortex-M
When binutils > 2.28 are selected on Arm Cortex-M cpu,
linux kernel does not boot due to a new implementation
of 'adr pseudo instruction' on binutils.

Bugzilla thread: https://bugs.busybox.net/show_bug.cgi?id=11051

Signed-off-by: Christophe Priouzeau <christophe.priouzeau@st.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit f13477b68f)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-06-17 16:50:11 +02:00
Laurent GONZALEZ
b3dddb0a78 package/binutils: default to 2.28 for Cortex-M targets
binutils 2.29 changed the implementation of adr pseudo instruction
it breaks linux kernel and impacts Cortex-M targets (eg. stm32)

[Peter: simplify Config.in logic, adjust message to make it clear this is
	just a default]
Signed-off-by: Laurent GONZALEZ <br22@gezedo.com>
Signed-off-by: Christophe Priouzeau <christophe.priouzeau@st.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 17f352acde)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-06-17 16:49:49 +02:00
Fabrice Fontaine
7e4e64a171 jpeg-turbo: add license details
- jpeg-turbo is covered by 3 licenses: IJG (libjpeg),
  BSD-3-Clause (TurboJPEG) and Zlib (SIMD)
- Add README.ijg
- Add hash for license files

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit ca668476b3)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-06-17 16:49:21 +02:00
Fabrice Fontaine
0497d7834f libjpeg: use SPDX short identifier
Use IJG instead of jpeg-license

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 1350678212)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-06-17 16:49:14 +02:00
Arnout Vandecappelle (Essensium/Mind)
05ea70bf27 package/expect: download tarball instead of cvs
More than 3 years after the 5.45.3 release, a tarball for that release
was uploaded to sourceforge.net. The differences between this tarball
and the CVS checkout are minimal:

- There are no CVS directories, of course, but we don't need them.
- File timestamps are different.
- expect.tests is missing, but we don't execute tests anyway.
- configure script is different, but we AUTORECONF anyway.
- 'fixcat' script is missing, but it is not called anywhere.

Since sourceforge.net has broken CVS downloads, now is a good time to
switch away from it.

While we're at it, add a hash file including license.

Fixes:
http://autobuild.buildroot.net/results/db3/db33d4fa507fb3b4132423cd0a7e25a1fe6e4105
http://autobuild.buildroot.net/results/b6d/b6d927dcc73ac8d754422577dacefff4ff918a5c
http://autobuild.buildroot.net/results/23d/23d1034b33d0354de15de2ec4a8ccd0603e8db78
http://autobuild.buildroot.net/results/127/1272a3aa3077e434c9805ec3034f35e6fcc330d4

Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Cc: Fabio Porcedda <fabio.porcedda@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 23ab6cb162)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-06-17 16:49:04 +02:00
Fabio Estevam
01ac9a17f3 linux-headers: bump 4.{1, 4, 9, 14, 16}.x series
[Peter: drop 4.16.x change]
Signed-off-by: Fabio Estevam <festevam@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 8f038e6b30)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-06-17 16:48:09 +02:00
Peter Korsgaard
3a26f5fbd0 xen: security bump to version 4.10.1
The 4.10.1 version brings a large number of fixes:

https://www.xenproject.org/downloads/xen-archives/xen-project-410-series/xen-4101.html

Including a number of security fixes:

XSA-252: DoS via non-preemptable L3/L4 pagetable freeing (CVE-2018-7540)
XSA-253: x86: memory leak with MSR emulation (CVE-2018-5244)
XSA-254: Information leak via side effects of speculative execution
	 (CVE-2017-5753 CVE-2017-5715 CVE-2017-5754)
XSA-255: grant table v2 -> v1 transition may crash Xen (CVE-2018-7541)
XSA-256: x86 PVH guest without LAPIC may DoS the host (CVE-2018-7542)
XSA-258: Information leak via crafted user-supplied CDROM (CVE-2018-10472)
XSA-259: x86: PV guest may crash Xen with XPTI (CVE-2018-10471)

Also add a hash for the license file while we are at it.

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 002348de68)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-06-17 16:47:22 +02:00
Romain Naour
42b061f2ec package/openvmtools: depend on host-nfs-utils
host-nfs-utils provides the host rpcgen utility. This fixes the build on
recent Fedora systems that removed rpcgen from the glibc package.

Fixes:
http://autobuild.buildroot.net/results/e21/e219b8bacb52bb661eb6663b82f549ed941f26fe

Signed-off-by: Romain Naour <romain.naour@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 6b02b8210a)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-06-17 16:46:45 +02:00
Baruch Siach
0732985141 git: security bump to version 2.16.4
Forward port of security fixes from the 2.13.7 release. The 2.13.7
release notes say this:

 * Submodule "names" come from the untrusted .gitmodules file, but we
   blindly append them to $GIT_DIR/modules to create our on-disk repo
   paths. This means you can do bad things by putting "../" into the
   name. We now enforce some rules for submodule names which will cause
   Git to ignore these malicious names (CVE-2018-11235).

   Credit for finding this vulnerability and the proof of concept from
   which the test script was adapted goes to Etienne Stalmans.

 * It was possible to trick the code that sanity-checks paths on NTFS
   into reading random piece of memory (CVE-2018-11233).

Cc: Matt Weber <matthew.weber@rockwellcollins.com>
Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit ae1f047295)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-06-17 16:46:11 +02:00
Bernd Kuhls
22b1015fcc package/git: bump version to 2.16.3
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 9447e86618)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-06-17 16:46:04 +02:00
Yann E. MORIN
2f2097f111 package/dash: don't build in paralle
dash has races in its Makefile, but upstream is not too keen in fixing
those, and just suggests that dash not be built in parallel:

    https://www.mail-archive.com/dash@vger.kernel.org/msg01675.html

Fixes:
    http://autobuild.buildroot.org/results/793/7934c815a3009af688c2f1183e67dfe542c9a009/
    http://autobuild.buildroot.org/results/fc4/fc4e4ab47455ac47dd4a3a60083cec2848e74dbb/
    http://autobuild.buildroot.org/results/6bf/6bfdd44ea5d55a6ca3ef92254eab18c7c0416b7b/
    [...]

Reported-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 50d443cbf7)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-06-17 16:45:45 +02:00
Waldemar Brodkorb
01b411626e poppler: link with libatomic when needed
Following errors might occur on architectures required to use gcc libatomics:
sparc-buildroot-linux-uclibc/sysroot/lib/libatomic.so.1: error adding symbols: DSO missing from command line

This is often the case for sparcv8 32 bit toolchains.

See 55a9d6d558 and 03f6e005e6.

Fixes:
  http://autobuild.buildroot.net/results/64a96663a48ab644bc03c9a3ec2d6a644119dee6
  http://autobuild.buildroot.net/results/82e85e12478fc1972b70ad728ed7c1554920c9e3

Signed-off-by: Waldemar Brodkorb <wbx@openadk.org>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit d28591a2ee)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-06-17 16:44:07 +02:00
Angelo Compagnucci
1f02de6ebc linux: bump Linux CIP to v4.4.130-cip23
This patch bump the Linux CIP kernel to version v4.4.130-cip23

Signed-off-by: Angelo Compagnucci <angelo@amarulasolutions.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 299bdf6df8)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-06-17 16:43:40 +02:00
Fabrice Fontaine
aa5cd1acfb libcurl: fix build with ssh2 and static mbedtls
The ssh2 pkg-config file could contain the following lines when build
with a static version of mbedtls:
   Libs: -L${libdir} -lssh2 /xxx/libmbedcrypto.a
   Libs.private: /xxx/libmbedcrypto.a

This static mbedtls library must be used to correctly detect ssh2
support and this library must be copied in libcurl.pc otherwise
compilation of any application (such as upmpdcli) with libcurl will fail
when trying to find mbedtls functions included in libssh2.

So, replace pkg-config --libs-only-l by pkg-config --libs.

Fixes:
 - http://autobuild.buildroot.net/results/43e24b22a77f616d6198c10435dcc23cc3b9088a

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 624603328a)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-06-17 16:42:49 +02:00
Baruch Siach
810392718c libtirpc: use rpcgen from host-nfs-utils
Drop the patch adding local rpcgen. Instead use the host-nfs-utils
provided rpcgen. Update the patch "Automatically generate XDR header
files from .x sources using" to use external rpcgen.

Renumber the other patches.

Cc: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 0965080fbc)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-06-17 16:42:49 +02:00
Baruch Siach
55dbb1d627 autofs: depend on host-nfs-utils
host-nfs-utils provides the host rpcgen utility. This fixes the build on
recent Fedora systems that removed rpcgen from the glibc package.

Fixes:
http://autobuild.buildroot.net/results/383/383bc8462f32a226645c9b792b8d65a25d74529d/
http://autobuild.buildroot.net/results/0c0/0c00f72512754b721813e13f0828d3a942f7b955/
http://autobuild.buildroot.net/results/50b/50b66d2a3c8264f618d7aa813b10050ed147209f/

Cc: Jonathan Ben Avraham <yba@tkos.co.il>
Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit dec494f9f5)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-06-17 16:42:49 +02:00
Baruch Siach
f283b5acf6 samba4: depend on host-nfs-utils
host-nfs-utils provides the host rpcgen utility. This fixes the build on
recent Fedora systems that removed rpcgen from the glibc package.

Fixes:
http://autobuild.buildroot.net/results/6f8/6f869b8c7c182dfe7f1a291b5952320504540ebf/
http://autobuild.buildroot.net/results/4c2/4c228dd6369e4fc11b798af6ab2abe06d7473b78/
http://autobuild.buildroot.net/results/489/489be441abd19fba2b0c39357e64a6adcf773b60/

Cc: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 60fc73adc7)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-06-17 16:42:49 +02:00
Baruch Siach
507f5004fd quota: depend on host-nfs-utils
host-nfs-utils provides the host rpcgen utility. This fixes the build on
recent Fedora systems that removed rpcgen from the glibc package.

Fixes:
http://autobuild.buildroot.net/results/730/730acb23663ebbbaba847073979654670a8bc64c/
http://autobuild.buildroot.net/results/e49/e49932e9d958203d585cdddd795df06aad6ff3a9/
http://autobuild.buildroot.net/results/1b7/1b7dccf7b9742d1b9cb57bffe55eac5cfc66b15c/

Cc: Jarkko Sakkinen <jarkko.sakkinen@intel.com>
Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit d200fabc5a)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-06-17 16:42:49 +02:00
Baruch Siach
536613bf7f nfs-utils: add host package
We only need the host package for the rpcgen utility. glibc deprecated
this utility in version 2.26. Fedora has recently removed rpcgen from
its glibc package. So we need to build the rpcgen from the nfs-utils
package.

The removal of Sun RPC from glibc also removed RPC headers from glibc.
rpcgen needs two of these headers. Add host-libtirpc to provide the RPC
headers.

Tested-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit a0b92460c1)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-06-17 16:42:49 +02:00
Baruch Siach
6da05a0dc3 libtirpc: add host package
The libtirpc host package is only for two headers that the host rpcgen
utility from the nfs-utils package needs to build. glibc used to provide
these headers. In version 2.26 glibc deprecated them with its bundled
Sun RPC. Recently Fedora stopped enabling Sun RPC in glibc. So we can no
longer rely on these headers being present on the host.

Cc: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 4f50274e38)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-06-17 16:42:49 +02:00
Arnout Vandecappelle (Essensium/Mind)
619a722394 pkg-generic: error out with 'local' site method and no _SITE
The 'local' site method is easily confused with the 'file' site method,
making people create packages like this:

    FOO_SITE_METHOD = local
    FOO_SOURCE = foo.tar.gz

    $(eval $(generic-package))

Due to the intricacies of the generic package infra, this does not
cause an error; instead, the foo.tar.gz tarball that happens to be
present in the download directory will be used. This behaviour differs
greatly from what is specified in the manual.

Instead, error out immediately if a package specifies the 'local' site
method but does not specify a _SITE.

We check for _OVERRIDE_SRCDIR rather than checking for _SITE, just
after _OVERRIDE_SRCDIR has been set to _SITE. Indeed, a package that
sets _OVERRIDE_SRCDIR but not _SITE currently works correctly. There is
no reason to make it fail.

See also
https://stackoverflow.com/questions/50364655/including-patches-to-build-root

Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 775929c988)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-06-11 23:08:58 +02:00
Fabio Estevam
efc613d6b1 linux-headers: bump 4.4.x series
Signed-off-by: Fabio Estevam <festevam@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 9ee9adc747)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-06-11 23:08:33 +02:00
Fabio Estevam
339c16b917 linux-headers: bump 4.{9, 14, 16}.x series
[Peter: drop 4.16.x change]
Signed-off-by: Fabio Estevam <festevam@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit eba30b1db8)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-06-11 23:08:18 +02:00
Baruch Siach
3782766df2 libcoap: needs host-pkgconf
The libcoap configure script uses pkg-config.

Fixes:
http://autobuild.buildroot.net/results/746/746c6dcbf3f941c7baa5b382bd264d830d839be1/
http://autobuild.buildroot.net/results/d98/d9840a22ae5eb6572b6641b93f8beadc27d2abb5/
http://autobuild.buildroot.net/results/905/905f122213ad9623ea5dd9d32c352efd151319f3/

Cc: Joris Lijssens <joris.lijssens@gmail.com>
Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 861103a1ad)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-06-11 23:07:23 +02:00
Fabio Estevam
e8e53ec7c4 linux-headers: bump 4.{9, 14, 16}.x series
[Peter: drop 4.16.x change]
Signed-off-by: Fabio Estevam <festevam@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 9e40a2d405)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-06-11 23:05:41 +02:00
Baruch Siach
48548d2c68 lrzsz: install symlinks for XMODEM and YMODEM
This sets the protocol choice according to the program invocation name.
That is the common lrzsz installation practice.

Cc: Matthew Starr <mstarr@hedonline.com>
Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 6697e59403)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-06-11 23:05:09 +02:00
Baruch Siach
88ec06ad48 procps-ng: security bump to version 3.3.15
Drop upstream patch.

This release fixes the issues listed below.

CVE-2018-1122: Local privilege escalation in top

CVE-2018-1123: Denial of service in ps

CVE-2018-1124: Local privilege escalation in libprocps

CVE-2018-1125: Stack buffer overflow in pgrep

CVE-2018-1126: Integer overflow in proc/alloc

Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit fe07577181)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-06-11 23:04:23 +02:00
Baruch Siach
52e42fd71a procps-ng: fix build for sparc
Add a patch taken from upstream bug report to fix wrong signal undefined
in sparc.

Fixes:
http://autobuild.buildroot.net/results/b02/b02bd2e4032287d3c5c58255d621ef785c5d1380/

Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit a9a64b7207)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-06-11 23:04:16 +02:00
Baruch Siach
53e038321c procps-ng: fix build without wide character support
Define OFF_XTRAWIDE to disable use of wchar API when the toolchain does
not support that.

Fixes:
http://autobuild.buildroot.net/results/b96/b96d29d64f455726a53a7adcfd3edd546346201c/

Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit a76fb61aae)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-06-11 23:04:02 +02:00
Baruch Siach
b948d96fc1 procps-ng: bump to version 3.3.14
Drop upstream patches.

Add secure SHA256 hash.

Add license files hash.

Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 603a4922c3)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-06-11 23:03:55 +02:00
Peter Korsgaard
7eb3daddde wavpack: add upstream security fixes
Fixes the following security issues:

CVE-2018-10536: An issue was discovered in WavPack 5.1.0 and earlier.  The
WAV parser component contains a vulnerability that allows writing to memory
because ParseRiffHeaderConfig in riff.c does not reject multiple format
chunks.

CVE-2018-10537: An issue was discovered in WavPack 5.1.0 and earlier.  The
W64 parser component contains a vulnerability that allows writing to memory
because ParseWave64HeaderConfig in wave64.c does not reject multiple format
chunks.

CVE-2018-10538: An issue was discovered in WavPack 5.1.0 and earlier for WAV
input.  Out-of-bounds writes can occur because ParseRiffHeaderConfig in
riff.c does not validate the sizes of unknown chunks before attempting
memory allocation, related to a lack of integer-overflow protection within a
bytes_to_copy calculation and subsequent malloc call, leading to
insufficient memory allocation.

CVE-2018-10539: An issue was discovered in WavPack 5.1.0 and earlier for
DSDiff input.  Out-of-bounds writes can occur because
ParseDsdiffHeaderConfig in dsdiff.c does not validate the sizes of unknown
chunks before attempting memory allocation, related to a lack of
integer-overflow protection within a bytes_to_copy calculation and
subsequent malloc call, leading to insufficient memory allocation.

CVE-2018-10540: An issue was discovered in WavPack 5.1.0 and earlier for W64
input.  Out-of-bounds writes can occur because ParseWave64HeaderConfig in
wave64.c does not validate the sizes of unknown chunks before attempting
memory allocation, related to a lack of integer-overflow protection within a
bytes_to_copy calculation and subsequent malloc call, leading to
insufficient memory allocation.

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit bc73055757)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-06-11 23:02:07 +02:00
Fabio Estevam
5886f699b4 linux-headers: bump 4.{9, 14, 16}.x series
[Peter: drop 4.16.x change]
Signed-off-by: Fabio Estevam <festevam@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 1d8afca9c6)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-06-11 23:01:26 +02:00
Thomas Petazzoni
add9745f5b ltrace: fix visibility of Config.in comment
The BR2_PACKAGE_LTRACE option has some architecture dependencies, but
those architecture dependencies are not taken into account for the
Config.in comment.

To fix this, this commit introduces a BR2_PACKAGE_LTRACE_ARCH_SUPPORTS
hidden boolean that gets used by both the BR2_PACKAGE_LTRACE option
and the Config.in comment.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit af72a42b0a)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-06-11 23:00:02 +02:00
Thomas Petazzoni
5c1326c653 ltrace: remove bogus comment in Config.in file
In commit dfaa18af00 ("ltrace: disable
on mips/mipsel"), ltrace was disabled on mips/mipsel due to build
issues, and a comment was added in the Config.in file to explain that
even though ltrace has mips/mipsel support, it isn't enabled because
it doesn't build.

Then, in commit d23cce19c2 ("ltrace:
enable for mips/mipsel"), the build of ltrace on mips/mipsel was
re-enabled, because it has been fixed upstream.

However, the comment in the Config.in comment was not removed in this
commit. Due to this, we have a comment that says "we don't allow
enabling ltrace on mips/mipsel" and the line right below precisely
allows to enable ltrace on mips/mipsel.

Fix this inconsistency by removing the no longer valid comment.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 0f711e71c2)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-06-11 22:59:48 +02:00
Bernd Kuhls
079773ed15 package/transmission: remove BR2_PACKAGE_TRANSMISSION_REMOTE
Commit 6e223241e1 ("Add Transmission
package"), which added the transmission package, introduced a
BR2_PACKAGE_TRANSMISSION_REMOTE Config.in option, supposedly matching
the --enable-remote/--disable-remote transmission option.

However, transmission as of version 2.33 packaged by this initial
commit, did not have a --enable-remote/--disable-remote option, and it
was apparently never part of transmission.

Therefore, this commit removes this useless option. Since the
transmission-remote tool is automatically built when the daemon is
enabled, the Config.in.legacy handling selects
BR2_PACKAGE_TRANSMISSION_DAEMON.

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 79a678d774)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-06-11 22:57:19 +02:00
Bernd Kuhls
e7c5ad5d1a package/transmission: fix inotify configure option
The configure option is really called --with-inotify:
https://github.com/transmission/transmission/blob/2.9x/configure.ac#L211

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit acadbe6393)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-06-11 22:55:29 +02:00
Bernd Kuhls
1e3e52d303 package/transmission: fix systemd support
Patch 0006-libsystemd.patch backports an upstream commit which renames
the systemd configure option.

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit b27bcedccb)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-06-11 22:55:20 +02:00
Carlos Santos
d3814a9885 transmission: don't test if the binary exists in the init script
The test doesn't make sense. It just exits without any error if the
binary doesn't exist, which is silly.

Signed-off-by: Carlos Santos <casantos@datacom.ind.br>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 296f148c15)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-06-11 22:55:12 +02:00
Fabrice Fontaine
9902742bcc zmqpp: fix build with or1k and gcc < 6
Use CONFIG variable to disable optimizations when or1k and gcc < 6 are
detected otherwise set CONFIG to release or debug depending on
BR2_ENABLE_DEBUG

Fixes:
 - http://autobuild.buildroot.net/results/523e58eefba7ef23a09ef53160da22190ccbb098

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 7ab59879c7)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-06-11 22:53:37 +02:00
Fabrice Fontaine
15cd727841 mbedtls: security bump to version 2.7.3
Extract from release announcement:

- (2.9, 2.7, 2.1) Fixed an issue in the X.509 module which could lead
to a buffer overread during certificate validation. Additionally, the
issue could also lead to unnecessary callback checks being made or to
some validation checks to be omitted. The overread could be triggered
remotely, while the other issues would require a non DER-compliant
certificate to be correctly signed by a trusted CA, or a trusted CA with
a non DER-compliant certificate. Found by luocm. Fixes #825.

- (2.9, 2.7, 2.1) Fixed the buffer length assertion in the
ssl_parse_certificate_request() function which could lead to an
arbitrary overread of the message buffer. The overreads could be caused
by receiving a malformed algorithms section which was too short. In
builds with debug output, this overread data was output with the debug
data.

- (2.9, 2.7, 2.1) Fixed a client-side bug in the validation of the
server's ciphersuite choice which could potentially lead to the client
accepting a ciphersuite it didn't offer or a ciphersuite that could not
be used with the TLS or DTLS version chosen by the server. This could
lead to corruption of internal data structures for some configurations.

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit a335d32a5f)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-06-11 22:50:06 +02:00
Anssi Hannula
61b59be74e gdb: actually disable gdbserver if BR2_PACKAGE_GDB_SERVER is unset
The gdb configure script is given --enable-gdbserver when
BR2_PACKAGE_GDB_SERVER is set, but it is not given --disable-gdbserver
when BR2_PACKAGE_GDB_SERVER is unset.

gdb gdb/configure.ac defaults to enabling gdbserver in "native"
(host=target) cases, which is always the case when buildroot builds a
gdb which runs on the target hardware. The gdbserver will overwrite
BR2_TOOLCHAIN_EXTERNAL_GDB_SERVER_COPY gdbserver, if any.

Fix that by passing --disable-gdbserver when BR2_PACKAGE_GDB_SERVER is
unset.

Signed-off-by: Anssi Hannula <anssi.hannula@bitwise.fi>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 9c7ce893a0)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-06-11 22:46:18 +02:00
Baruch Siach
8fd0f9c985 nfs-utils: update homepage link
The linux-nfs project switched to a new homepage. Update the help text
link.

Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 0d7757110a)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-06-11 22:45:46 +02:00
Thomas Petazzoni
fdf92bd616 faketime: add patch to disable -Werror
faketime currently doesn't build on host machines that use gcc 8.x due
to stricter checks done by gcc, and the fact that it is built with
-Werror.

As a simple stop-gap measure, this commit patches the faketime
Makefile to not use -Werror anymore.

The actual fixes for the gcc 8.x issues have been submitted upstream
at https://github.com/wolfcw/libfaketime/pull/161, but disabling
-Werror is a much smaller fix.

Also, it is worth mentioning that removing -Werror makes the existing
patch 0001-Disable-the-non-null-compare-warning-error.patch (which was
just disabling one specific warning). We nonetheless keep this patch
around as it is a backport from upstream.

Fixes:

  http://autobuild.buildroot.net/results/bd223dfa1c4baa68e427d4941bd2e9917e22da84/

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 968f2fbd7d)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-06-11 22:45:30 +02:00
Baruch Siach
33bd7b2e0e libcurl: security bump to version 7.60.0
Drop upstream patch.

This release fixes the security issues listed below.

CVE-2018-1000300: curl might overflow a heap based memory buffer when
closing down an FTP connection with very long server command replies.

  https://curl.haxx.se/docs/adv_2018-82c2.html

CVE-2018-1000301: curl can be tricked into reading data beyond the end
of a heap based buffer used to store downloaded content.

  https://curl.haxx.se/docs/adv_2018-b138.html

Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 051e2f2d0b)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-06-11 22:44:05 +02:00
Thomas Petazzoni
48633704fc libnss: backport upstream patch to fix build with gcc 8.x
This commit backports upstream patch
f0ce709895
to our libnss package to fix the build with gcc 8.x.

Fixes:

  http://autobuild.buildroot.net/results/1ca35171200286fa032b24606aaa50de6a2d449e/

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 45cf64ca0c)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-06-11 22:40:29 +02:00
Thomas Petazzoni
f8d6236573 exim: do not link buildconfig with $(LIBS)
The existing patch 0001-Build-buildconfig-for-the-host.patch changes
the exim build system to use the host compiler to build the
"buildconfig" program instead of the cross-compiler.

However, it still uses $(LIBS) which lists the target libraries to
link with, which shouldn't be used. Since buildconfig doesn't use any
library beyond the C library, we can simply drop using $(LIBS).

This will fix build failures of exim on Fedora 28, where libnsl is no
longer provided by the C library, causing build failures such as:

/usr/bin/gcc buildconfig.c
/usr/bin/ld: cannot find -lnsl

Fixes:

  http://autobuild.buildroot.net/results/ac78fe18657558b3c12c03c08bf1081d7c06ca85/

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit b872d829d0)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-06-11 22:37:15 +02:00
Arnout Vandecappelle (Essensium/Mind)
06ae66a6e3 linux: don't override HOSTCC for kconfig
Kconfig uses either pkg-config or hard-coded /usr/include paths to find
the ncurses or ncursesw library. If ncursesw is found, it will include
<ncursesw.h>. Since Buildroot's host-ncurses doesn't install a .pc file,
and linux.mk anyway doesn't pass the pkg-config options to find the host
pkg-config files, Kconfig will always find the system's ncursesw.h.

However, since commit dde090c299 (linux: fix passing of host CFLAGS and
LDFLAGS) HOST_LDFLAGS is passed to the linux build system. Thus, if
host-ncurses was already built before 'make linux-menuconfig' is called,
the build will pick up libncurses from the host directory, which is NOT
widechar. Thus, two different ncurses configurations are mixed into the
final mconf program. This will result in serious breakage in the
rendering of the menus (lots of @ and question mark characters).

As a workaround (suggested by Yann), don't pass HOST_CFLAGS and
HOST_LDFLAGS when running kconfig commands. For kconfig, we should never
need host packages anyway. This way, the kconfig calls will always use
the system's ncurses and never our host-ncurses.

Note that the same problem could pop up for other kconfig packages as
well if we ever pass HOST_CFLAGS/HOST_LDFLAGS to them. We could force
HOSTCC=$(HOSTCC) directly in kconfig-package. However, for now there
are no other packages that exhibit this problem, so this can be
revisited when they do.

Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Cc: David De Grave <david.degrave@essensium.com>
Cc: Scott Fan <fancp2007@gmail.com>
Cc: Yann E. MORIN <yann.morin.1998@free.fr>
Tested-by: Matt Weber <matthew.weber@rockwellcollins.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 6d3d09e232)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-06-11 22:36:07 +02:00
Bernd Kuhls
a02c6dd82d package/asterisk: Fix issues building without SSL
Fixes
http://autobuild.buildroot.net/results/7d0/7d069dd5629e406cecd17bacfa818e7c8e6b2064/

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit c27ed9f618)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-06-11 22:35:15 +02:00
Baruch Siach
8db468af4c glibc: security bump to latest 2.26 branch
Fixed issues are listed in the 2.26 branch NEWS file:

  CVE-2017-18269: An SSE2-based memmove implementation for the i386
  architecture could corrupt memory.  Reported by Max Horn.

  CVE-2018-11236: Very long pathname arguments to realpath function could
  result in an integer overflow and buffer overflow.  Reported by Alexey
  Izbyshev.

  CVE-2018-11237: The mempcpy implementation for the Intel Xeon Phi
  architecture could write beyond the target buffer, resulting in a buffer
  overflow.  Reported by Andreas Schwab.

Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-05-29 17:48:46 +02:00
Thomas Petazzoni
474f86150f cifs-utils: unconditionally disable PIE
PIE support in Buildroot should be enabled via the global option
BR2_RELRO_FULL option, and not done on a per-package basis, therefore
PIE should unconditionally be disabled in the cifs-utils package.

This has the added side-effect that it works around a binutils bug on
SPARC causing the linker to segfault when PIE is enabled:

sparc-linux-gcc -Wall -Wextra -D_FORTIFY_SOURCE=2 -fpie -pie -Wl,-z,relro,-z,now -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -Os    -o mount.cifs mount.cifs.o mtab.o resolve_host.o util.o  -lcap-ng
collect2: fatal error: ld terminated with signal 6 [Aborted], core dumped

This issue will reappear when we start testing BR2_RELRO_FULL in the
autobuilders, but in the mean time it avoids the problem.

Fixes:

  http://autobuild.buildroot.net/results/a5342890f39bdccae1324e7d3dbe0eab1aad28e5/

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 85f9d08934)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-05-28 16:20:10 +02:00
Thomas Petazzoni
9413d2ea2f lynx: add patch to fix static link issue
The lynx package incorrectly uses target LDFLAGS to build a host tool,
which causes a problem when we do a statically link build for the
target, on a host machine that doesn't support static linking.

A simple patch fixes the problematic makefile, and it has been
submitted upstream on the project mailing list.

Fixes:

  http://autobuild.buildroot.net/results/38ba2531eeeb4a7985eddd2df8bfaf0b56e6a687/

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 9113c0cbba)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-05-28 16:19:49 +02:00
Baruch Siach
2cb41540ae wget: security bump to version 1.19.5
Fixes CVE-2018-0494: cookie injection vulnerability.

Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit cc39457fb9)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-05-28 16:14:55 +02:00
Baruch Siach
edb27f38a0 wget: bump to version 1.19.4
Update license hash; s/http/https/ of in-text URLs.

Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 56057835f6)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-05-28 16:14:43 +02:00
Yann E. MORIN
587d5b58bf package/acl: fix install
Do not overwrite destination file if it exists.

Simliar to bug #10986.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: mzweerspenko+bugzilla@gmail.com
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit c3e62d3984)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-05-28 16:13:58 +02:00
Yann E. MORIN
7bc0033d5e package/attr: fix install
Do not overwrite destination file if it exists.

Fixes: #10986

Reported-by: mzweerspenko+bugzilla@gmail.com
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: mzweerspenko+bugzilla@gmail.com
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 28d8f8dfd5)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-05-28 16:12:42 +02:00
Petr Vorel
91bc7e042f toolchain/buildroot: fix default of C library choice
The BR2_TOOLCHAIN_UCLIBC symbol doesn't exist, it was meant to be
BR2_TOOLCHAIN_BUILDROOT_UCLIBC.

Signed-off-by: Petr Vorel <petr.vorel@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit d0527483fa)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-05-28 16:12:14 +02:00
Fabrice Fontaine
d431200be3 cups-filters: fix avahi dependency
avahi support requires avahi-client, which needs avahi-daemon and dbus

Fixes:
 - http://autobuild.buildroot.net/results/5c326bb56199000eb0e53a4d0f3c6c13be71cda0

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit dad6f570af)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-05-28 16:10:48 +02:00
Yann E. MORIN
3097ef7676 package/jamvm: restrict on what MIPS procs are allowed
jamvm uses deprecated opcodes to store/load words from the FPU
coprocessor registers, and in so doing, expects those registers
to be 32-bit.

Thus, restrict the conditions under which jamvm is available
under mips.

Fixes:
    http://autobuild.buildroot.org/results/f76/f76e10e4c1ce25b42fb2e5d2012adf2eaf1b2fe1/
    http://autobuild.buildroot.org/results/162/162d0e41dc9bc6d6f6594ccee0cb4217067fc71f/
    ...

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 67974fe6da)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-05-28 16:08:15 +02:00
Yann E. MORIN
a641902340 package/jamvm: move arch dependency to a symbol
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 04d185bfc7)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-05-28 16:08:09 +02:00
Yann E. MORIN
f24d5edea6 package/xen: force location of init scripts
The Xen configure scripts looks at the build host to decide where to
install the Sys-V startup scripts, and that location differs between
various distros.

Force the location.

Fixes:
    http://autobuild.buildroot.org/results/869/869829ab086e824d164c5c5ec7f087ed83993be6/
    http://autobuild.buildroot.org/results/336/3360e5a9e3d007b4ed77345b5fe93b2dacb6ad49/
    http://autobuild.buildroot.org/results/29e/29e308ce3cc9c83497ba1c1f98fcda3f48fd03c4/

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Matt Weber <matthew.weber@rockwellcollins.com>
Cc: Alistair Francis <alistair@alistair23.me>
Reviewed-by: Alistair Francis <alistair@alistair23.me>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 366e42c2cf)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-05-28 16:07:01 +02:00
Alistair Francis
b4ca0eb92a package/xen: fix qemu-xen memfd build failure
Fix the QEMU memfd compile error:
tools/qemu-xen/util/memfd.c:40:12: error: static declaration of 'memfd_create' follows non-static declaration
 static int memfd_create(const char *name, unsigned int flags)
            ^~~~~~~~~~~~

that has been introduced since the Glibc 2.27 upgrade.

This just involves porting the upstream QEMU patch to the Xen QEMU tree.

This fixes:
http://autobuild.buildroot.net/results/ec7cda00e07b0c98a9a366244b67611e042e0d4b/

Signed-off-by: Alistair Francis <alistair@alistair23.me>
Tested-by: Matt Weber <matthew.weber@rockwellcollins.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 6d1060d261)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-05-28 16:06:54 +02:00
Fabrice Fontaine
6bbd02265d libcap: only install shared version
If BR2_SHARED_LIBS is set, only install shared version of library
(continue to build both libraries through all target as there is no
libcap.so target but only a libcap.so.$(VERSION).$(MINOR))

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 7984f2d97b)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-05-28 16:05:45 +02:00
Fabrice Fontaine
2e883027c0 libcap: add license hash
Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 2a05731aa5)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-05-28 16:05:35 +02:00
Bernd Kuhls
aca5fba3a5 package/apr-util: fix ldap detection
configure checks if ldap_set_rebind_proc takes 2 or 3 arguments
http://svn.apache.org/viewvc/apr/apr-util/tags/1.6.1/build/apu-conf.m4?revision=1812528&view=markup#l370

It uses the macro APR_TRY_COMPILE_NO_WARNING which adds -Werror to
treat all warnings as errors when gcc is used:
http://svn.apache.org/viewvc/apr/apr/tags/1.6.3/build/apr_common.m4?revision=1812527&view=markup#l504

In some buildroot configs a compiler warning occurs during this check:
http://autobuild.buildroot.net/results/241/241ed78b93ce86c859e175530fa485711ff61615//apr-util-1.6.1/config.log

/home/rclinux/rc-buildroot-test/scripts/instance-1/output/host/arm-buildroot-linux-uclibcgnueabihf/sysroot/usr/include/features.h:218:5:
 error: #warning requested reentrant code, but thread support was disabled [-Werror=cpp]
cc1: all warnings being treated as errors

Due to this warning 'ac_cv_ldap_set_rebind_proc_style' is set to two
instead of three leading to a build error later on. This patch forces
ac_cv_ldap_set_rebind_proc_style=three to be inline with openldap which
fixes
http://autobuild.buildroot.net/results/241/241ed78b93ce86c859e175530fa485711ff61615/

This solution was inspired by a discussion on the fink mailinglist:
https://sourceforge.net/p/fink/mailman/message/31720482/

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit b4dfee63d2)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-05-28 16:04:47 +02:00
Bernd Kuhls
fbee8477ab package/apr-util: add optional support for openldap
apr-util contains optional support for openldap:

$ ls -1 output/target/usr/lib/apr-util-1/apr_ldap*
output/target/usr/lib/apr-util-1/apr_ldap-1.so
output/target/usr/lib/apr-util-1/apr_ldap.la
output/target/usr/lib/apr-util-1/apr_ldap.so

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 134968c6c8)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-05-28 16:04:22 +02:00
Bernd Kuhls
55c2c6ceaa package/apr-util: add optional support for postgresql
apr-util contains optional support for postgresql:

$ ls -1 output/target/usr/lib/apr-util-1/apr_dbd_pg*
output/target/usr/lib/apr-util-1/apr_dbd_pgsql-1.so
output/target/usr/lib/apr-util-1/apr_dbd_pgsql.la
output/target/usr/lib/apr-util-1/apr_dbd_pgsql.so

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 1ec1479fbe)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-05-28 16:04:10 +02:00
Fabio Estevam
72e02c9f28 linux-headers: bump 4.{9, 14, 16}.x series
[Peter: drop 4.16.x change]
Signed-off-by: Fabio Estevam <festevam@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit aeb55c2b36)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-05-28 16:01:10 +02:00
Joseph Kogut
209aa82aa7 python-websockets: backport fix for upstream issue #350
Signed-off-by: Joseph Kogut <joseph.kogut@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 439e2add6c)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-05-28 15:58:45 +02:00
Yann E. MORIN
9e5c7cbde0 docs/manual: using a branch name as FOO_VERSION does not work
For various reasons, we've always suggested users to avoid using a
branch as version string for their packages, because it does not work
as a they would expect:

  - it is not reproducible, because the branch may change between two
    builds that are done at different times;

  - it does not even follow the branch, as Buildroot anyway generates
    a local tarball, which it will reuse on subsequent builds.
    Furthermore, since we fetch and not pull, any existing local branch
    is not updated.

Yet, until recently, using a branch name would just work (with the
above limitations): the git tree was cloned, the branch checked out,
and the tarball created.

But with the advent of the git caching, using a branch name does not
work anymore. Indeed, we now do a git-fetch, and that does not create
a local master branch. So we can't check out master, because it does
not exist locally. And for other branches, as noticed above, the local
branch does not get udpated to the remote one.

Furthermore, the local branches are only created by chance, again as a
side-effect of trying to fetch the "special refs".

So, we can't say that we reliably support the use of a branch name.

Update the manual to state that using a branch does not work. Remove
the 'stable' example, as it looked like the name of a stable branch;
instead, replace it with a version string that ressemble a tag.

Fix the layout of the manual by making the version examples an actual
bulleted list.

Note: the above is only entirely true for git. For Mercurial, CVS and
subversion, the status may be mixed, but nonetheless, using branches is
still a bad idea, if at least because it is not reproducible, and
because Buildroot does not even follow the branch. So, we do not
differentiate between the various SCMs, and just flatly state that using
a branch name is not supported.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Thomas De Schampheleire <patrickdepinguin@gmail.com>
Cc: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Cc: Maxime Hadjinlian <maxime.hadjinlian@gmail.com>
Cc: Peter Korsgaard <peter@korsgaard.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 970cb26ec2)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-05-28 15:49:25 +02:00
Yann E. MORIN
312d6d0cf5 support/dependencies: check that PATH does not contain CWD
A person on IRC reported a build failure with the util-linux package,
looking like this:

for I in uname26 linux32 linux64        ; do \
	cd /home/aep/consulting/chargery/tracker/output/target/usr/bin && ln -sf setarch $I ; \
done
[...]
/bin/sh: line 1: ./ln: cannot execute binary file: Exec format error
/bin/sh: line 1: ./ln: cannot execute binary file: Exec format error
/bin/sh: line 1: ./ln: cannot execute binary file: Exec format error

The issue was an empty path in the PATH variable, which means "current
working directory", causing a "ln" binary built by util-linux for the
target to be used instead of the system-provided "ln".

We already check a number of things in the PATH and LD_LIBRARY_PATH
variables in support/dependencies/dependencies.sh, but we were not
checking that PATH did not contain an empty path.

This commit fixes that and takes this opportunity to simplify the test
code for PATH and LD_LIBRARY_PATH.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
[Thomas: improve commit log.]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>

(cherry picked from commit 72703d02b9)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-05-28 15:48:08 +02:00
Peter Korsgaard
c4d86707cd util-linux: add two upstream patches to fix blocking on getrandom() with recent kernels
As part of the fix for CVE-2018-1108 (kernel drivers before version 4.17-rc1
are vulnerable to a weakness in the Linux kernel's implementation of random
seed data.  Programs, early in the boot sequence, could use the data
allocated for the seed before it was sufficiently generated), the kernel
random number generator initialization routine was changed.  See the
project-zero writeup for more details:

https://bugs.chromium.org/p/project-zero/issues/detail?id=1559

These changes have now also been backported to 4.14.x (since 4.14.39) and
4.16.x (since 4.16.7).

This change unfortunately causes users of libuuid from util-linux to block
for a very long time waiting for sufficient entropy.  An example of this is
mke2fs, which uses libuuid to generate the filesystem UUID.

Fix this by backporting two post-2.31 fixes from upstream.

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Tested-by: Carlos Santos <casantos@datacom.com.br>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-05-28 09:48:18 +02:00
Peter Korsgaard
a43f5f1939 busybox: S10mdev: fix module autoloading
Commit b4fc5a180c (package/busybox: support spaces in module aliases in
mdev) changed the mdev coldplugging to handle sysfs path elements and
modalias values containing spaces.  This unfortunately doesn't work as was
recently reported:

http://lists.busybox.net/pipermail/buildroot/2018-May/220903.html

The problem is that sort -z also expects the fields of the input files to be
zero terminated, which is not the case for modalias sysfs entries.

So drop the -z option to sort.  Spaces in modalias entries could be handled
with the xargs -d '\n' option, but that is unfortunately not supported by
the busybox applet.  Instead, use tr to convert newlines to zeros so we can
use xargs -0.

Reported-by: Daniel Palmer <daniel@0x0f.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 61717b7b3e)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-05-24 22:59:29 +02:00
Thomas Petazzoni
32cd792bde binutils: replace hard-links with soft-links to fix rpath
binutils installs its binaries both as bin/<tuple>-<tool> and as
<tuple>/bin/<tool>, and hardlinks are used to reduce disk space
consumption. This causes a problem for host-binutils with our rpath
fixing logic done by "make sdk".

Indeed, the fix-rpath script starts by fixing up the rpath of
bin/<tuple>-<tool>, and sets the RPATH to $ORIGIN/../lib/. Then
fix-rpath moves on to <tuple>/bin/<tool>, and doesn't find the library
the tool depends on, and clears the RPATH. The result is that the
binutils tool are not usable.

Note that this is only visible currently on the ARC architecture,
because on this architecture, binutils is fetched from git, which
causes host-flex to be built, and some binutils tools to use the libfl
shared library. Therefore, the binutils tools don't use just the
standard C library (which is provided by the system) but also libfl
from $(HOST_DIR)/lib, and therefore if the RPATH isn't set correctly,
those tools don't work properly.

In order to address this, this comit adds a post-install hook to
host-binutils that replaces those hard links by symbolic links. It is
worth mentioning that library loading and RPATH usage occurs *after*
resolving the symbolic links, which makes this solution work.

Fixes:

  http://autobuild.buildroot.net/results/b2562b05d397d4e1ffe0f8d2f4ce4c84ab6feae1/

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit f9cffb6af4)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-05-24 22:55:24 +02:00
Peter Korsgaard
787d8dbf3d .gitlab-ci.yml: update after removal of freescale defconfigs
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit e607881f20)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-05-24 22:53:20 +02:00
Peter Korsgaard
7c4518d9f3 linux: ensure correct make targets are used for cuImage/simpleImage.<dtb>
Fixes https://gitlab.com/buildroot.org/buildroot/-/jobs/66561794

LINUX_DTS_NAME may end up with a leading space because of the += logic, and
may contain multiple dts files - Neither of which works when we construct
the {cu,simple}Image.$(LINUX_DTS_NAME) make target name.

Fix it by using the first word in the variable.

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 978a997c81)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-05-24 22:52:51 +02:00
Yann E. MORIN
aee70cc1ab package/patch: fix xattr option
The name of the configure option is, and has always been,
 --enable-xattr, not --enable-attr. Otherwise, configure
whines:
    configure: WARNING: unrecognized options: --enable-attr

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 990fff065c)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-05-24 22:45:53 +02:00
Fabrice Fontaine
3390368717 log4cplus: fix license
Some files of log4cplus are licensed under BSD-2-Clause as stated in
LICENSE file: "Each file of log4cplus source is licensed using either
two clause BSD license or Apache license 2.0."

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 6f5a29e502)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-05-24 22:44:28 +02:00
Baruch Siach
a4d489e362 ebtables: drop obsolete comment
Commit 30c4b5843f (ebtables: enable for musl) enabled musl build, but
forgot to remove the comment text. Fix that.

Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit ca2a6f04ed)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-05-24 22:43:42 +02:00
Fabio Estevam
bd88f5e9bd configs/freescale_imx6ulevk: Remove target
Currently this target fails to build:

./scripts/dtc-version.sh: line 17: dtc: command not found
./scripts/dtc-version.sh: line 18: dtc: command not found
*** Your dtc is too old, please upgrade to dtc 1.4 or newer

Even though the fix for this build failure is easy, I prefer to
maintain only imx6ulevk_defconfig, which is a target for the
same board, but uses mainline kernel and U-Boot versions instead.

Fixes: https://gitlab.com/buildroot.org/buildroot/-/jobs/66561695
Signed-off-by: Fabio Estevam <festevam@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit f24f0ca777)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-05-24 22:42:29 +02:00
Fabio Estevam
285f310bad configs/freescale_imx31_3stack: Remove target
Currently this target fails to build:

arch/arm/mach-imx/built-in.o: In function `init_mmdc_lpddr2_settings':
platform-spi_imx.c:(.text+0x8f18): undefined reference to `imx6sll_lpddr2_freq_change'
arch/arm/mach-imx/built-in.o: In function `imx6ul_cpuidle_init':
platform-spi_imx.c:(.init.text+0x195c): undefined reference to `mx6ull_lpm_wfi_end'
platform-spi_imx.c:(.init.text+0x1960): undefined reference to `mx6ull_lpm_wfi_start'
platform-spi_imx.c:(.init.text+0x1964): undefined reference to `imx6ull_low_power_idle'
arch/arm/mach-imx/built-in.o: In function `imx6sl_init_late':
platform-spi_imx.c:(.init.text+0x56f0): undefined reference to `imx6sll_cpuidle_init'
Makefile:969: recipe for target 'vmlinux' failed

NXP 4.9 kernel does not properly support mx31, so better remove this target.

mx31_3stack board is currently supported in U-Boot and kernel mainline,
so if someone is interested on this board, then a target can be introduced
later which uses these mainline components.

Currently I do not have access to this board, so remove it its defconfig
for now.

Fixes: https://gitlab.com/buildroot.org/buildroot/-/jobs/66561688
Signed-off-by: Fabio Estevam <festevam@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit ed947dce16)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-05-24 22:41:52 +02:00
Fabio Estevam
6826097bc2 configs/freescale_imx6sololiteevk: Remove target
Currently this target fails to build:

Error: No BOOT_FROM tag in board/freescale/mx6slevk/imximage.cfg.cfgtmp
arch/arm/imx-common/Makefile:91: recipe for target 'u-boot-dtb.imx' failed

This problem has been already solved in upstream U-Boot, but not
on NXP version of U-Boot.

To avoid the maintainance burden of keeping two defconfigs for the
same board, remove freescale_imx6sololiteevk_defconfig in favor
of imx6slevk_defconfig, which uses U-Boot and kernel mainline.

Fixes: https://gitlab.com/buildroot.org/buildroot/-/jobs/66561693
Signed-off-by: Fabio Estevam <festevam@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit c41576cad1)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-05-24 22:41:13 +02:00
Carlos Santos
a54f8136dc nasm: Fix compilation with GCC 8
host-nasm fails to compile with GCC 8:

In file included from ./include/nasm.h:46,
                 from asm/nasm.c:47:
./include/nasmlib.h:194:1: error: ‘pure’ attribute on function returning ‘void’ [-Werror=attributes]
 void pure_func seg_init(void);
 ^~~~

Pull a patch from upstream that removes the stale declaration of
seg_init, which was eliminated a long time ago.

Signed-off-by: Carlos Santos <casantos@datacom.ind.br>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 3aa64a0e82)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-05-24 22:39:49 +02:00
Bernd Kuhls
13d94d0143 package/nasm: bump version to 2.13.03
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit ee8d397a25)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-05-24 22:39:43 +02:00
Danomi Manchego
89e6fac809 gst1-plugins-bad: fix typo preventing use of the netsim plugin
Signed-off-by: Danomi Manchego <danomimanchego123@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 384c1559c0)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-05-24 22:23:24 +02:00
Danomi Manchego
fb77c5bb75 gst1-plugins-bad: update plugin licenses
Update several of the licenses annotated in the gst1-plugins-bad.mk file.

1. Specify GPL-2.0 in license info.
* All of the *.[ch] that specify GPL also specify version 2 or later.

2. Remove GPL from audiovisualizers.
* Changlog notes move from GPL to LGPL. (2015-04-25)
* docs/plugins/inspect/plugin-audiovisualizers.xml claims "LGPL".
* All *.[ch] files under ./gst/audiovisualizers say "GNU Library General Public License".

3. Add GPL to yadif.
* Changelog notes that yadif is "GPL". (2013-02-07)
* docs/plugins/inspect/plugin-yadif.xml claims "GPL".
* All *.[ch] files under ./gst/yadif say "GNU General Public License" except for one "GNU Library General Public License".

4. Remove UNKNOWN from fdk_aac.
* docs/plugins/inspect/plugin-fdkaac.xml claims "LGPL".
* All *.[ch] files under ./ext/fdkaac say "GNU Lesser" or "GNU Library General Public License".

5. Add BSD-2c to dtls.
* docs/plugins/inspect/plugin-dtls.xml claims "BSD".
* All *.[ch] files under ./gst/dtls have BSD-2c text.

6. Add BSD-2c to openh264.
* Changelog notes that openh264 is "BSD-2". (2014-10-03)
* docs/plugins/inspect/plugin-openh264.xml claims "BSD".
* All *.[ch] files under ./ext/openh264 have BSD-2c text.

Signed-off-by: Danomi Manchego <danomimanchego123@gmail.com>
Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 34f256a9da)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-05-24 22:22:22 +02:00
Danomi Manchego
9034521cf7 gst1-plugins-bad: rework license type construction
Use "GST1_PLUGINS_BAD_LICENSE := $(GST1_PLUGINS_BAD_LICENSE), xxxx" construct
so that the list of licenses is presented as a comma-separated list.

Signed-off-by: Danomi Manchego <danomimanchego123@gmail.com>
Acked-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 782deb7a4d)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-05-24 22:22:13 +02:00
Danomi Manchego
a7cecb9247 gst1-plugins-bad: conditionally add gpl license
Currently, GST1_PLUGINS_BAD_LICENSE_FILES starts out set to
both the GPL COPYING file and the LGPL COPYING.LIB file, but
the GST1_PLUGINS_BAD_LICENSE handling only claims LGPL, and
then intelligently adds GPL if needed.  This change moves the
GPL file addition to the same conditional clause so that the
GPL file is included in the legal-info location only if GPL
code is actually used.

Signed-off-by: Danomi Manchego <danomimanchego123@gmail.com>
Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 2bbb6b8001)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-05-24 22:21:50 +02:00
Ricardo Martincoski
2502d4f393 .gitlab-ci.yml: use image with flake8
Bump the docker image to the latest tag to have flake8 pre-installed.

Signed-off-by: Ricardo Martincoski <ricardo.martincoski@gmail.com>
Cc: Arnout Vandecappelle <arnout@mind.be>
Cc: Peter Korsgaard <peter@korsgaard.com>
Cc: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Cc: Yann E. MORIN <yann.morin.1998@free.fr>
Acked-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 12b08c2be6)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-05-06 21:21:23 +02:00
Peter Korsgaard
4acca318b1 Update for 2018.02.2
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-05-04 18:24:30 +02:00
Chris Lesiak
fea6cf8c09 Makefile: Update mtime of $(TARGET_DIR)/usr in target-finalize
The systemd ConditionNeedsUpdate option is useful when offline updates
of the vendor operating system resources in /usr require updating of
/etc or /var on the next following boot.

Two examples of services making use of this option are
systemd-hwdb-update.service and systemd-sysusers.service.

ConditionNeedsUpdate=/etc will be true if the mtime of /etc/.updated
is older than the mtime of /usr.  After services conditional on
ConditionNeedsUpdate have run, systemd-update-done.service will
synch the mtime of /usr to /etc/.updated so that the condition will
be false on subsequent boots.

For systems with writable /usr partitions where updates are done to
the running system, the update program will touch /usr as a final step.
But with Buildroot, where updates are often done by dumping a new
image onto the device, and where /usr is on a filesystem mounted
read-only, touching /usr as part of the update process is not practical.
Instead, it should be done a build time.

For testers, please note that systemd-update-done in v234 added a
regression where the mtime of /etc/.updated is set to the current time
instead of the mtime or /usr.  This will be fixed in v239.

For more details, see:
http://0pointer.de/public/systemd-man/systemd.unit.html
http://0pointer.de/public/systemd-man/systemd-update-done.service.html

Signed-off-by: Chris Lesiak <chris.lesiak@licor.com>
Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit bbe5c6dad4)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-05-03 23:25:12 +02:00
Stefan Becker
36e19e3f6a host-mkpasswd: fix crash on Fedora 28 build host
crypt() is an optional glibc feature. Some distros, like Fedora 28, are
phasing it out to be replaced with libxcrypt [1]. Unfortunately this
change is only ABI compatible, not source code compatible, i.e. the code
will compile with warnings about undefined crypt(), but the resulting
binary will crash.

Follow the guidance in the Fedora bug and include crypt.h when
_XOPEN_CRYPT is not defined.

[1] https://bugzilla.redhat.com/show_bug.cgi?id=1566464

Signed-off-by: Stefan Becker <chemobejk@gmail.com>
Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 3c514c2dc5)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-05-03 23:24:43 +02:00
Fabio Estevam
314c9050e5 linux-headers: bump 4.{4, 9, 14, 16}.x series
[Peter: drop 4.16.x change]
Signed-off-by: Fabio Estevam <festevam@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit c3cce05ac7)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-05-03 23:23:48 +02:00
Stefan Becker
348a201b42 package/python: add upstream GCC8 build fix
Fedora 28 switched to GCC8.

Signed-off-by: Stefan Becker <chemobejk@gmail.com>
[Thomas: fixup location of SoB in the patch.]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit a1b7f5e64d)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-05-02 21:30:26 +02:00
Stefan Becker
4d1ad92d4f Config.in: add BR2_HOST_GCC_AT_LEAST_8
Fedora 28 switched to GCC 8.x.

Signed-off-by: Stefan Becker <chemobejk@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit e13ab2e04a)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-05-02 21:27:57 +02:00
John Keeping
a2b029afe5 core/pkg-generic: only save latest package list
When rebuilding a package, simply appending the package's file list to
the global list means that the package list grows for every rebuild, as
does the time taken to check for files installed by multiple packages.
Furthermore, we get false positives where a file is reported as being
installed by multiple copies of the same package.

With this approach we may end up with orphaned files in the target
filesystem if a package that has been updated and rebuilt no longer
installs the same set of files, but we know that only a clean build will
produce reliable results.  In fact it may be helpful to identify these
orphaned files as evidence that the build is not clean.

Signed-off-by: John Keeping <john@metanate.com>
Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit d3dca1e993)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-05-01 22:58:26 +02:00
Fabio Estevam
69837f387c linux-headers: bump 4.{9, 14, 16}.x series
[Peter: drop 4.16.x change]
Signed-off-by: Fabio Estevam <festevam@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 1b50392349)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-05-01 22:57:18 +02:00
Thomas Petazzoni
d883c24948 bluez5_utils: add patch to fix readline issue
Since bluez5_utils 5.48, some code using readline was compiled even if
readline was not available. After this issue was reported upstream, a
patch was proposed by an upstream developer to address the issue. This
commit integrates this patch (under review upstream), which fixes the
problem.

Fixes:

  http://autobuild.buildroot.net/results/3e266a79acab8b8eb33360f7afbc1cd6db46f7cb/

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit d4158df6c1)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-05-01 09:54:51 +02:00
Baruch Siach
6c46854904 sdl2: update license file hash
Copyright year update.

Fixes:
http://autobuild.buildroot.net/results/2c8/2c865463a4b7524114518c04dce9c94252433460/

Cc: Guillaume Gardet <guillaume.gardet@oliseo.fr>
Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 5a8f887e7a)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-05-01 09:36:18 +02:00
Peter Korsgaard
9a98c1d86e sdl2_image: security bump to version 2.0.3
Fixes the following security issues:

CVE-2017-12122: An exploitable code execution vulnerability exists in the
ILBM image rendering functionality of SDL2_image-2.0.2.  A specially crafted
ILBM image can cause a heap overflow resulting in code execution.  An
attacker can display a specially crafted image to trigger this
vulnerability.

CVE-2017-14440: An exploitable code execution vulnerability exists in the
ILBM image rendering functionality of SDL2_image-2.0.2.  A specially crafted
ILBM image can cause a stack overflow resulting in code execution.  An
attacker can display a specially crafted image to trigger this
vulnerability.

CVE-2017-14441: An exploitable code execution vulnerability exists in the
ICO image rendering functionality of SDL2_image-2.0.2.  A specially crafted
ICO image can cause an integer overflow, cascading to a heap overflow
resulting in code execution.  An attacker can display a specially crafted
image to trigger this vulnerability.

CVE-2017-14442: An exploitable code execution vulnerability exists in the
BMP image rendering functionality of SDL2_image-2.0.2.  A specially crafted
BMP image can cause a stack overflow resulting in code execution.  An
attacker can display a specially crafted image to trigger this
vulnerability.

CVE-2017-14448: An exploitable code execution vulnerability exists in the
XCF image rendering functionality of SDL2_image-2.0.2.  A specially crafted
XCF image can cause a heap overflow resulting in code execution.  An
attacker can display a specially crafted image to trigger this
vulnerability.

CVE-2017-14449: A double-Free vulnerability exists in the XCF image
rendering functionality of SDL2_image-2.0.2.  A specially crafted XCF image
can cause a Double-Free situation to occur.  An attacker can display a
specially crafted image to trigger this vulnerability.

CVE-2017-14450: A buffer overflow vulnerability exists in the GIF image
parsing functionality of SDL2_image-2.0.2.  A specially crafted GIF image
can lead to a buffer overflow on a global section.  An attacker can display
an image to trigger this vulnerability.

For details, see the announcement:

https://discourse.libsdl.org/t/sdl-image-2-0-3-released/23958

Also add a hash for the license file while we're at it.

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 5fb8fbbb3e)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-30 23:40:51 +02:00
Peter Korsgaard
ecf3badf60 sdl2: bump version to 2.0.8
Drop now upstreamed patch.

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit f26654596e)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-30 23:40:42 +02:00
Sven Haardiek
56ef4bd820 package/python-requests: needs hashlib for python 2
Requests need hashlib to run with Python 2. Otherwise it is not possible to
import, due to missing e.g. md5.

[Peter: tweak commit message]
Signed-off-by: Sven Haardiek <sven.haardiek@iotec-gmbh.de>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>

(cherry picked from commit 2c2f6f6630)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-30 23:39:51 +02:00
Baruch Siach
679786608e libtomcrypt: fix headers installation path
libtomcrypt installs its headers by default in /usr/local/include under
the staging sysroot. This path is not in the default search patch of
some toolchains. This breaks the build of dropbear. Set the PREFIX make
variable to fix that.

While at it, split the long install command for better readability.

Fixes (dropbear):
http://autobuild.buildroot.net/results/215/2157679e276623ae875d1b31f3e5a68caf586536/
http://autobuild.buildroot.net/results/956/956d254675e6500c19c3bb7ccdf12ce136858720/
http://autobuild.buildroot.net/results/01e/01ec89a81c4ec6e36e2f81b5a9394050a91df654/

Cc: Francois Perrad <francois.perrad@gadz.org>
Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 73e1f9b0a4)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-30 23:39:26 +02:00
Bernd Kuhls
e590e6b3b9 linux-headers: bump 4.4.x series
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 5772a14d0b)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-30 23:37:54 +02:00
Eric Le Bihan
692e9d1a62 support/testing: set $USER in rust tests
When the run-time tests to build rust and rust-bin packages are run via Docker,
the $USER environment variable is not set, which makes cargo fail when
initializing the test project.

So add it to make cargo happy.

Signed-off-by: Eric Le Bihan <eric.le.bihan.dev@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 09a5eb427a)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-30 23:37:41 +02:00
Yegor Yefremov
c6f7fe46fc python-watchdog: add missing runtime dependency
Script watchmedo requires python-setuptools.

Signed-off-by: Yegor Yefremov <yegorslists@googlemail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 7a801da8ea)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-30 23:37:19 +02:00
Yegor Yefremov
379a6ca110 python-watchdog: add support for uClibc
This patch fixes uClibc detection.

Signed-off-by: Yegor Yefremov <yegorslists@googlemail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 13d946cbdf)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-30 23:37:11 +02:00
Fabrice Fontaine
8ab4204154 libcgi: add license file (with its hash)
Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit b3d74f04a8)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-30 23:35:00 +02:00
Bernd Kuhls
a00f7c87de package/php: security bump to version 7.2.5
Changelog: http://www.php.net/ChangeLog-7.php#7.2.5

This release fixes several security-related bugs for which no CVE id's
are assigned at the time of writing:

https://bugs.php.net/bug.php?id=76129
https://bugs.php.net/bug.php?id=76130
https://bugs.php.net/bug.php?id=76248
https://bugs.php.net/bug.php?id=76249

Removed patch 0008, applied upstream:
2842aa2a07

Re-numbered patch 0009 -> 0008.

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit e14dc96df9)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-30 23:32:11 +02:00
Jonas Zaddach
f92052857e package/gdb: don't remove support files if python chosen
If one wants to use GDB with python support on the target, you need the support
files installed by GDB. These get usually deleted to save some space, so I just
wrapped the Makefile code deleting them in a conditional block depending on if
python support is active or not.

Signed-off-by: Jonas Zaddach <jzaddach@cisco.com>
Reviewed-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
[Thomas:
 - use positive logic "if python is disabled"
 - put the comment inside the condition, as suggested by Arnout]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>

(cherry picked from commit fa5ca6974d)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-30 23:26:36 +02:00
Romain Naour
45a39b3e2b package/flann: fix build with cmake >= 3.11
CMake < 3.11 doesn't support add_library() without any source file
(i.e add_library(foo SHARED)). But flann CMake use a trick that use
an empty string "" as source list (i.e add_library(foo SHARED "")).
This look like a bug in CMake < 3.11.

With CMake >= 3.11, the new behaviour of add_library() break the
existing flann CMake code.

>From CMake Changelog [1]:
"add_library() and add_executable() commands can now be called without
 any sources and will not complain as long as sources are added later
 via the target_sources() command."

Note: flann CMake code doesn't use target_sources() since no source file
are provided intentionally since the flann shared library is created by
linking with the flann_cpp_s static library with this line:

target_link_libraries(flann_cpp -Wl,-whole-archive flann_cpp_s -Wl,-no-whole-archive)

If you try to use "add_library(flann_cpp SHARED ${CPP_SOURCES})" (as it should
be normally done), the link fail due to already defined symbol.

They are building the shared version using the static library "to speedup the
build time" [3]

This issue is already reported upstream [2] with a proposed solution.

Fixes:
http://autobuild.buildroot.net/results/b2f/b2febfaf8c44ce477b3e4a5b9b976fd25e8d7454

[1] https://cmake.org/cmake/help/v3.11/release/3.11.html
[2] https://github.com/mariusmuja/flann/issues/369
[3] 0fd62b43be

Signed-off-by: Romain Naour <romain.naour@gmail.com>
Cc: Davide Viti <zinosat@tiscali.it>
Cc: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 0c469478f6)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-30 23:25:55 +02:00
Fabio Estevam
d4190d4385 linux-headers: bump 4.{14, 16}.x series
[Peter: drop 4.16.x change]
Signed-off-by: Fabio Estevam <festevam@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit c43b3635cb)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-30 23:24:37 +02:00
Jason A. Donenfeld
506f04d039 wireguard: bump to version 0.0.20180420
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 062dcceed0)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-30 23:23:44 +02:00
Peter Korsgaard
434415abd0 wireguard: bump version to 0.0.20180304
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 54e210522f)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-30 23:23:34 +02:00
Baruch Siach
be25dfa62a libgpg-error: bump to version 1.29
Drop upstream patch.

Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 4a92ee34da)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-30 23:22:06 +02:00
Baruch Siach
b54dbc33dd libgpg-error: bump to version 1.28
Add upstream patch fixing arm/arm64 targets build failure.

Use the smaller bz2 compressed tarball.

Switch _SITE to https for better security and corporate firewall
compatibility.

Add license files hash.

Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 692d191c8b)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-30 23:21:54 +02:00
Baruch Siach
1d524e66f1 gnupg2: security bump to version 2.2.6
Fixes CVE-2018-9234: Unenforced configuration allows for apparently
valid certifications actually signed by signing subkeys.

Remove --disable-doc from configure options. We pass this options to all
autotools packages.

Cc: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 3db93884a4)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-30 23:20:20 +02:00
Baruch Siach
41c236f735 gnupg2: bump to version 2.2.5
Cc: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 379c347390)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-30 23:20:12 +02:00
Baruch Siach
66882e2e4e libgpgme: fix run-time compatibility with gnupg2 2.2.6
Add upstream patch fixing gpgme_op_verify regression with gnupg2 2.2.6.

https://lists.gnupg.org/pipermail/gnupg-users/2018-April/060230.html

Cc: Philipp Claves <claves@budelmann-elektronik.com>
Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 5be60127e5)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-30 23:19:40 +02:00
Thomas Petazzoni
9a75013629 support/testing: fix Marvell ATF source code
The version of the ARM Trusted Firmware from Marvell was a Git branch,
not a Git commit, leading to unreproducible results. So let's use a
Git commit instead, which is the latest available from the branch that
was previously used.

More specifically, this branch has recently seen a fix that is needed
for ATF to build properly with recent gcc versions:

  c96ec59f8b

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit ac260a2ace)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-30 23:18:05 +02:00
Thomas Petazzoni
2caf8161cb configs/solidrun_macchiatobin_*: use a Git commit for ATF
The version of the ARM Trusted Firmware from Marvell was a Git branch,
not a Git commit, leading to unreproducible results. So let's use a
Git commit instead, which is the latest available from the branch that
was previously used.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Tested-by:  Sergey Matyukevich <geomatsi@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit c0f8d16621)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-30 23:17:37 +02:00
Thomas Petazzoni
0c836e31d9 support/testing: fix ATF Vexpress test case
This test case currently fails to build with:

./build/juno/release/bl1/context_mgmt.o: In function `cm_prepare_el3_exit':
context_mgmt.c:(.text.cm_prepare_el3_exit+0x54): undefined reference to `cm_set_next_context'
context_mgmt.c:(.text.cm_prepare_el3_exit+0x54): relocation truncated to fit: R_AARCH64_JUMP26 against undefined symbol `cm_set_next_context'

This issue has been fixed upstream in commit
10c252c14b7f446c0b49ef1aafbd5d37804577dd, available since v1.3. So
while we bump, let's bump to the latest version of ATF, v1.5.

Fixes:

  https://gitlab.com/buildroot.org/buildroot/-/jobs/64360659

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit e74a7cd1e0)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-30 23:17:18 +02:00
Fabio Estevam
0f6ea69019 linux-headers: bump 4.{4, 9, 14, 16}.x series
[Peter: drop 4.16.x change]
Signed-off-by: Fabio Estevam <festevam@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit e13a22f17a)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-30 23:14:02 +02:00
Baruch Siach
b5d35dff85 mbedtls: security bump to version 2.7.2
The release announcement mentions these security fixes:

  Defend against Bellcore glitch attacks by verifying the results of RSA
  private key operations.

  Fix implementation of the truncated HMAC extension. The previous
  implementation allowed an offline 2^80 brute force attack on the HMAC
  key of a single, uninterrupted connection (with no resumption of the
  session).

  Reject CRLs containing unsupported critical extensions.

  Fix a buffer overread in ssl_parse_server_key_exchange() that could
  cause a crash on invalid input. (CVE-2018-9988)

  Fix a buffer overread in ssl_parse_server_psk_hint() that could cause
  a crash on invalid input. (CVE-2018-9989)

Drop upstream patch.

Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit babc94e9dd)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-30 23:12:43 +02:00
Bernd Kuhls
30a8aab559 linux-headers: bump 4.9.x series
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 26148a247f)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-30 23:06:01 +02:00
Fabio Estevam
db27d9b8e4 linux-headers: bump 4.{14, 15, 16}.x series
[Peter: drop 4.16.x change]
Signed-off-by: Fabio Estevam <festevam@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit ea4921d875)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-30 23:05:38 +02:00
Romain Naour
8d4f5dbafa package/tcllib: update license to SPDX format
While at it add the license file hash.

Signed-off-by: Romain Naour <romain.naour@smile.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 2c82d7c605)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-30 23:03:11 +02:00
Romain Naour
83f6e40de0 package/tcl: update license to SPDX format
While at it add the license file hash.

Signed-off-by: Romain Naour <romain.naour@smile.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 8fa4e97929)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-30 23:02:51 +02:00
Romain Naour
36f039a624 package/libcec: disable build infos
Build infos can break the build due to missing terminating " character.

Fixes:
http://autobuild.buildroot.net/results/3b1/3b1182783fc958dfed96c6b1c097993662fc7308

Signed-off-by: Romain Naour <romain.naour@gmail.com>
Cc: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 4600c2444d)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-30 23:01:31 +02:00
Tarek El-Sherbiny
74f309da6f grub2: force -fno-stack-protector in CPPFLAGS
In commit 2a27294e9a ("grub2: force
-fno-stack-protector in CFLAGS"), a fix was made to the grub2 package
to make it build properly even when SSP support is enabled.

However, commit 20a4583ebf ("security
hardening: add RELFO, FORTIFY options") reworked how SSP options are
passed, and they are now passed in CPPFLAGS instead of CFLAGS, making
the fix introduced by 2a27294e9a no
longer operating.

This commit will force no-stack-protector in CPPFLAGS instead of
CFLAGS.

Fixes bug #10961.

Signed-off-by: Tarek El-Sherbiny <tarek_el-sherbiny@waters.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 523b27afa9)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-30 23:00:58 +02:00
Ricardo Martincoski
436ac38c7d syslog-ng: bump version header in conf file to 3.10
Remove a runtime warning message about configuration file being too old.

Do the same as commit 3dad25466d "syslog-ng: Bump version header in conf
file to 3.9". Package version of syslog-ng is 3.10.1, so bump version
number in syslog-ng.conf to 3.10.

Also add a comment to avoid the same warning message reappears when the
package is bumped.

Signed-off-by: Ricardo Martincoski <ricardo.martincoski@datacom.ind.br>
Cc: Chris Packham <judge.packham@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 905f8d814a)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-30 22:59:19 +02:00
Yegor Yefremov
2e0967180a scanpypi: add support for the new PyPI infrastructure
https://pypi.python.org URL has been changed to https://pypi.org.

Package's JSON object now contains sha256 checksum, so use it
instead of locally computed one. Change comments in the hash
file accordingly.

Signed-off-by: Yegor Yefremov <yegorslists@googlemail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 6766ff9d12)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-30 22:54:00 +02:00
Romain Naour
ba7372fcd2 package/wmctrl: x-includes and x-libraries must be set for cross-compiling
set x-includes and x-libraries configure option for cross-compiling.
wmctrl can use poisoned paths if these options are not passed to
configure script.

Fixes:
http://autobuild.buildroot.net/results/7e5/7e5cba8a5650a00e10d1a5528f38cb2bf772aee1

Signed-off-by: Romain Naour <romain.naour@gmail.com>
Cc: Jérôme Pouiller <jezz@sysmic.org>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 046c5e2563)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-30 22:53:31 +02:00
Baruch Siach
b058d288ef usb_modeswitch: set CXX to false when C++ is missing
Similar to the openocd fix in commit 5966e2dc54 (package/openocd: fix
fallout after no-C++ fixups) the jimctl that is bundled with
usb_modeswitch also wants to find a binary. This broke with commit
4cd1ab158 (core: alternate solution to disable C++). Revert to 'false'
instead of 'no' here as well.

Fixes:
http://autobuild.buildroot.net/results/b4d/b4d4e925763cb6558af915f9781afe07fc557ebc/
http://autobuild.buildroot.net/results/61b/61b9dc2148df2e8fd0b30e62aedbfd30bb755e19/
http://autobuild.buildroot.net/results/468/468a7e6b049f159fbb4e79d3a12b53ca890f6933/

Cc: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 107e3ebf45)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-30 22:51:36 +02:00
Manfred Schlaegl
cdce959594 qt5: qt5websockets: install missing qml modules
QML modules for QtWebSockets are located in /usr/qml/QtWebSockets since
Qt 5.5.

/usr/qml/Qt/WebSockets still exists for compatibility reasons, but
it contains only a qmldir file which points to ../../QtWebSockets/.

see also: http://doc.qt.io/qt-5.6/qtwebsockets-qmlmodule.html

Signed-off-by: Manfred Schlaegl <manfred.schlaegl@ginzinger.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 4f726cef4c)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-30 22:50:07 +02:00
Romain Reignier
89c7c42285 qt53d: install missing QML modules, plugins and examples
Some files were missing on the first build of qt53d but added later:
- by qt5base for the plugins because it copies the whole /usr/lib/qt/plugins
  directory
- by qt5declarative for the QML modules because it copies the whole
  /usr/qml directory

Also, the qt53d examples were not installed if
BR2_PACKAGE_QT5BASE_EXAMPLES was set.

Signed-off-by: Romain Reignier <rom.reignier@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 4fd448c9c1)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-30 22:49:55 +02:00
Anssi Hannula
178e4f27ae systemd: add compatibility symlink for 'shutdown'
In addition to the 'halt', 'poweroff', 'reboot' symlinks pointing to
systemctl, add 'shutdown'.

Signed-off-by: Anssi Hannula <anssi.hannula@bitwise.fi>
Acked-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 36ed046623)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-30 22:41:01 +02:00
Fabio Estevam
13e633c36b linux-headers: bump 4.{4, 9}.x series
Signed-off-by: Fabio Estevam <festevam@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 338f326340)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-30 22:22:20 +02:00
Thomas Petazzoni
f4b2233c44 support/scripts/fix-rpath: exclude /lib/firmware in the target
The /lib/firmware directory contains random firmware for various
devices. It happens that some of them might be or appear to be ELF
files, but they shouldn't be checked by fix-rpath. For example, one of
the Qualcomm VPU firmware file appears to be an ELF file, but patchelf
isn't happy about it:

$ ./output/host/bin/patchelf --print-rpath output/target/lib/firmware/qcom/venus-4.2/venus.b00
patchelf: patchelf.cc:387: void ElfFile<Elf_Ehdr, Elf_Phdr, Elf_Shdr, Elf_Addr, Elf_Off, Elf_Dyn, Elf_Sym>::parse() [with Elf_Ehdr = Elf32_Ehdr; Elf_Phdr = Elf32_Phdr; Elf_Shdr = Elf32_Shdr; Elf_Addr = unsigned int; Elf_Off = unsigned int; Elf_Dyn = Elf32_Dyn; Elf_Sym = Elf32_Sym]: Assertion `shstrtabIndex < shdrs.size()' failed.
Aborted (core dumped)

Even though patchelf definitely shouldn't crash, it anyway doesn't
make sense to check ELF files in /lib/firmware, so let's exclude this
directory from our check.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Acked-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 184cb52f6d)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-30 22:17:55 +02:00
Fabio Estevam
555621a0be linux-headers: bump 4.{15, 16}.x series
[Peter: drop 4.16.x change]
Signed-off-by: Fabio Estevam <festevam@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 77ebc428d6)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-30 22:17:13 +02:00
Fabrice Fontaine
ce241dbf21 libglib2: fix license
libglib2 is licensed under LGPL-2.1+ and not LGPL-2.0+ since release
2.53.3

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit fbd809c5f2)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-30 22:14:48 +02:00
Bernd Kuhls
488b4d36bc package/uclibc: Fix ffmpeg build on aarch64
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Reviewed-by: Romain Naour <romain.naour@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-29 12:15:35 +02:00
Arnout Vandecappelle (Essensium/Mind)
8b8a5cf1a6 Revert "package/bash: add /bin/bash to /etc/shells"
Commit 4d279697af added /bin/bash to /etc/shells. In the default
skeleton, however, /etc/shells doesn't exist, so in fact it creates
this file, containing only /bin/bash. Therefore, when bash is selected,
/bin/sh does not appear in /etc/shells and bash is the only shell
allowed. Since /bin/sh is the shell that is used for root in the
default skeleton's /etc/passwd, root is no longer able to log in.

The proper solution is to add all available shells to /etc/shells. For
now, however, just revert commit 4d279697af as a stop-gap measure. That
way, the default situation still works, and only people who update
/etc/passwd with additional logins but don't update /etc/shells will
suffer.

This reverts commit 4d279697af.

Fixes: https://bugs.busybox.net/show_bug.cgi?id=10896

Cc: Romain Naour <romain.naour@smile.fr>
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Acked-by: Romain Naour <romain.naour@smile.fr>
Acked-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-29 12:13:48 +02:00
Peter Korsgaard
9565a37e0d Update for 2018.02.1
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-09 23:51:05 +02:00
Baruch Siach
c3e1d9849a patch: add upstream security fix
Fixes CVE-2018-1000156: arbitrary command execution in ed-style patches.

Depend on MMU for now, because the patch adds a fork() call. Upstream
later switched to gnulib provided execute(), so this dependency can be
dropped on the next version bump.

Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit f4a4df2084)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-09 21:01:30 +02:00
Rafal Susz
014dbd4855 package/linux: fix custom dts files handling
Custom dts files are still conditionally copied based on non existing
boolean. So it is currently not possible to use custom dts file(s) at all.

List of dts files is now iterated and files are copied into dedicated kernel arch dir.

Signed-off-by: Rafal Susz <rafal.susz@gmail.com>
Tested-by: Jan Kundrát <jan.kundrat@cesnet.cz>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 54157c6c2d)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-09 18:01:27 +02:00
Yann E. MORIN
34b8a1c5bc package/kmod: fix host install
The host directory no longer uses /usr.

This currently works because we still have the  legacy /usr
symlink, but for correctness it is better that we just fix it.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Yegor Yefremov <yegorslists@googlemail.com>
Cc: Arnout Vandecappelle <arnout@mind.be>
Cc: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Cc: Peter Korsgaard <peter@korsgaard.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit dac25351e6)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-09 17:51:04 +02:00
Thomas Petazzoni
d44357175b php: fix emalloc/efree/estrdup/... undefined references
zend_alloc.h defines some macros such as:

Where _estrdup is the actual function implemented by the PHP core. If
this header file is not included, and some code uses estrdup, one ends
up with an undefined reference. This happens when libexpat support is
enabled. This commit adds a PHP patch that fixes this issue. The patch
has been submitted upstream through a Github pull request.

Fixes:

  http://autobuild.buildroot.net/results/889d2c1f509c035cd506e36061939bfddc8f1500/

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit fc4b66dbc1)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-09 17:49:03 +02:00
André Hentschel
dd730312e5 wireshark: bump version to 2.2.14 (security)
Security fixes since 2.2.12:

- wnpa-sec-2018-15
  The MP4 dissector could crash. (Bug 13777)
- wnpa-sec-2018-16
  The ADB dissector could crash. (Bug 14460)
- wnpa-sec-2018-17
  The IEEE 802.15.4 dissector could crash. (Bug 14468)
- wnpa-sec-2018-18
  The NBAP dissector could crash. (Bug 14471)
- wnpa-sec-2018-19
  The VLAN dissector could crash. (Bug 14469)
- wnpa-sec-2018-20
  The LWAPP dissector could crash. (Bug 14467)
- wnpa-sec-2018-23
  The Kerberos dissector could crash. (Bug 14576)
- wnpa-sec-2018-05
  The IEEE 802.11 dissector could crash. Bug 14442, CVE-2018-7335
- wnpa-sec-2018-06
  Multiple dissectors could go into large infinite loops. All ASN.1 BER dissectors (Bug 14444), along with the DICOM (Bug 14411), DMP (Bug 14408), LLTD (Bug 14419), OpenFlow (Bug 14420), RELOAD (Bug 14445), RPCoRDMA (Bug 14449), RPKI-Router (Bug 14414), S7COMM (Bug 14423), SCCP (Bug 14413), Thread (Bug 14428), Thrift (Bug 14379), USB (Bug 14421), and WCCP (Bug 14412) dissectors were susceptible.
- wnpa-sec-2018-07
  The UMTS MAC dissector could crash. Bug 14339, CVE-2018-7334
- wnpa-sec-2018-09
  The FCP dissector could crash. Bug 14374, CVE-2018-7336
- wnpa-sec-2018-10
  The SIGCOMP dissector could crash. Bug 14398, CVE-2018-7320
- wnpa-sec-2018-11
  The pcapng file parser could crash. Bug 14403, CVE-2018-7420
- wnpa-sec-2018-12
  The IPMI dissector could crash. Bug 14409, CVE-2018-7417
- wnpa-sec-2018-13
  The SIGCOMP dissector could crash. Bug 14410, CVE-2018-7418
-  wnpa-sec-2018-14
  The NBAP disssector could crash. Bug 14443, CVE-2018-7419

Full release notes:

  https://www.wireshark.org/docs/relnotes/wireshark-2.2.14.html

Signed-off-by: André Hentschel <nerv@dawncrow.de>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit c5c87c2bb6)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-09 17:39:37 +02:00
Fabio Estevam
186489f7fe linux: bump default to version 4.15.16
Signed-off-by: Fabio Estevam <festevam@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit bbbcfa57f8)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-08 21:37:39 +02:00
Fabio Estevam
3ffe4ab54e linux-headers: bump 4.{4, 9, 14, 15}.x series
Signed-off-by: Fabio Estevam <festevam@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 2661d47425)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-08 21:37:27 +02:00
Joshua Henderson
1128385dc9 board/atmel: use correct sam-ba binary in flasher.sh script
Instead of using the install of sam-ba under host/opt directly, use the symlink
created in host/bin.  The side effect of doing this instead allows the correct
sam-ba binary to be used based on the host arch being 32 bit or 64 bit.

Signed-off-by: Joshua Henderson <joshua.henderson@microchip.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit e1452fe843)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-08 21:33:10 +02:00
Thomas Petazzoni
50f01475aa php: fix how PCRE JIT is disabled
When the internal PCRE library of PHP is used, it tries to use a JIT
engine, which is only available on some architectures.

However, the mechanism used to disable JIT has changed in recent PHP
versions, and it now has a proper --without-pcre-jit option. Switch
over to that to properly disable JIT on unsupported platforms.

It has been tested to fix the build of PHP on ARC and Microblaze.

Fixes:

  http://autobuild.buildroot.net/results/e1359fcad7bc57e3c5a7ecc37abaa2cf6a6a9ffa/

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 9850612ea5)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-08 21:31:44 +02:00
Rahul Bedarkar
ce8dd8eec7 docs/manual: use SPDX short identifier for license
Signed-off-by: Rahul Bedarkar <rahulbedarkar89@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 08bbbe73af)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-08 21:30:21 +02:00
Thomas Petazzoni
a22cbc2371 postgresql: propagate BR2_USE_MMU dependency to Config.in comment
The BR2_PACKAGE_POSTGRESQL option depends on BR2_USE_MMU, so the
Config.in comment about the dynamic library dependency should only be
displayed if the BR2_USE_MMU requirement is met.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 9fec3eb913)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-08 21:28:49 +02:00
Giulio Benetti
2ebb06c8ee qt5base: correct eglfs support in qmake.conf.in
Setting EGLFS_DEVICE_INTEGRATION at the end of qmake.conf like is done
by commit 0c219ddb8a doesn't work correctly: it has to be set before the
include(../common/linux_device_post.conf)

Instead of appending to the file, change it into a qmake.conf.in
template file that contains a placeholder for the
EGLFS_DEVICE_INTEGRATION assignment and update it with sed. Since the
sed always has to be executed, this removes the need for a separate
QT5BASE_CONFIGURE_QMAKE_CONFIG definition.

Signed-off-by: Giulio Benetti <giulio.benetti@micronovasrl.com>
[Arnout: simplify the replacement, move sunxi-mali support to a
 separate patch]
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>

(cherry picked from commit 81fb33af2a)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-08 21:27:04 +02:00
Peter Korsgaard
9a095026c1 python-webpy: use webpy-0.39 tag
No functional change, but upstream has now tagged the release, so use the
tag instead of the sha1.

https://github.com/webpy/webpy/issues/449

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 01320bb9ff)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-08 21:26:23 +02:00
Peter Korsgaard
dec4e2d0e8 python-webpy: security bump to version 0.39
>From the changelog:

2018-02-28 0.39
* Fixed a security issue with the form module (tx Orange Tsai)
* Fixed a security issue with the db module (tx Adrián Brav and Orange Tsai)

2016-07-08 0.38
..
* Fixed a potential remote exeution risk in `reparam` (tx Adrián Brav)

License files are still not included on pypi, so continue to use the git
repo. Upstream has unfortunately not tagged 0.39, so use the latest commit
on the 0.39 branch.  A request to fix this has been submitted:

https://github.com/webpy/webpy/issues/449

0.39 now uses setuptools, so change the _SETUP_TYPE.

Add hashes for the license files.

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit ce559162fc)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-08 21:26:12 +02:00
Peter Korsgaard
20703bd010 python-webpy: needs hashlib support in python
webpy uses hashlib for session handling, so ensure it is available:

web/session.py:    import hashlib
web/session.py:    sha1 = hashlib.sha1

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 543b0d50fb)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-08 21:26:00 +02:00
Stefan Becker
8bf5ce60c1 package/systemd: add upstream build fix #8456
Signed-off-by: Stefan Becker <chemobejk@gmail.com>
Tested-by: Joseph Kogut <joseph.kogut@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 794d16fcac)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-08 18:14:18 +02:00
Arnout Vandecappelle (Essensium/Mind)
0651acdd1d qt5script: correct license information
The license information in qt5script was just copied from all the other
qt5 modules, but it is different (and complicated).

- libQt5Script itself contains the third-party JavaScriptCore source.
  JavaScriptCore has a number of licenses: BSD-2-Clause, BSD-3-Clause,
  LGPL-2.0+, LGPL-2.1+. Since it is all linked together, the end
  result will be BSD-3-Clause and LGPL-2.1+.

  The different BSD licenses are all slightly different (different
  authors, which affects the third clause in particular). Only one
  separate license file is provided, so let's use that one.

  There is an LGPL-2.0 license file, which is slightly different from
  the top-level LICENSE.LGPLv21, so let's add that one as well.

- libQt5Script also contains Qt-specific code which is all licensed
  under LGPL-2.1 only. This is covered by the LICENSE.LGPLv21 file.
  It merges with the LGPL-2.1+ from JavaScriptCore but limits it to
  2.1 only.

- libQt5ScriptTools is a separate libary containing just the script
  debugger. It is covered by the usual Qt license:
  * LGPL-2.1 or LGPL-3.0 with exception for Qt 5.6;
  * LGPL-3.0 or GPL-2.0+ for Qt 5.9 (actually it is GPL-2.0 or GPL-3.0
    or any later version approved by the KDE Qt foundation, but let's
    keep it simple :-). Note that there is no LICENSE.GPLv2 provided,
    only LICENSE.GPLv3. Also, there is an LGPL_EXCEPTION.txt file but
    no mention of an exception anywhere in the sources.

Update the license information with all of the above. Also add hashes
for the new license files from JavaScriptCore.

Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
(cherry picked from commit d9ec8526bb)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-08 18:11:16 +02:00
Peter Korsgaard
22bcdafc42 check-host-tar.sh: bump minimum tar version to 1.27 for reproducible tar files with long paths
Fixes:
http://autobuild.buildroot.net/results/b18/b187e64a61918f17f69588e2355a03286bc5808e

tar 1.27 subtly changed the tar format when a GNU long link entry is added
(which is done for path elements > 100 characters).  The code used to set
the permission mode of the link entry to 0:

  header = start_private_header ("././@LongLink", size, time (NULL));
  FILL (header->header.mtime, '0');
  FILL (header->header.mode, '0');
  FILL (header->header.uid, '0');
  FILL (header->header.gid, '0');
  FILL (header->header.devmajor, 0);
  FILL (header->header.devminor, 0);

This got dropped in 1.27 by commit df7b55a8f6354e3 (Fix some problems with
negative and out-of-range integers), so the settings from
start_private_header() are used directly - Which are:

  TIME_TO_CHARS (t < 0 ? 0 : min (t, MAX_OCTAL_VAL (header->header.mtime)),
		 header->header.mtime);
  MODE_TO_CHARS (S_IFREG|S_IRUSR|S_IWUSR|S_IRGRP|S_IROTH, header->header.mode);
  UID_TO_CHARS (0, header->header.uid);
  GID_TO_CHARS (0, header->header.gid);

The end result is that tar >= 1.27 sets mode to 644.

The consequence of this is that we create different tar files when long path
names are encountered (which often happens when a package downloads a
specific sha1 from a git repo) depending on the host tar version used,
causing hash mismatches.

As a workaround, bump our minimum tar version to 1.27.  It would be nicer to
only do this if we have packages from bzr/git/hg enabled, but that is an
exercise for later.

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Acked-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit cdac332d20)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-08 18:10:29 +02:00
Christopher McCrory
78748907a7 memcached: bump to version 1.5.6
From ReleaseNotes156:

"""
This is a bugfix release, but it primarily disables the UDP protocol by
default.

In the last few days reports of UDP amplification attacks utilizing
inesure memcached instances have surfaced. Attackers are able to set
large values into memcached, then send requests via spoofed UDP packets.
Memcached will then send a very large number of very large UDP packets
back in response.
"""

Signed-off-by: Christopher McCrory <chrismcc@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit f03cf639cf)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-08 18:10:00 +02:00
Christopher McCrory
fc50775164 motion: fix config file location
Install the motion.config file were the program expects it to be. From
the motion source code:

snprintf(filename, PATH_MAX, "%s/motion/motion.conf", sysconfdir);

Signed-off-by: Christopher McCrory <chrismcc@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit b773c33bf1)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-08 17:01:12 +02:00
Gaël PORTAY
885496dae9 qt5webkit: fix build issue with 32-bits armv8-a
Adds WTF platform support for the 32-bits armv8-a architectures.

Fixes:

	In file included from ./config.h:30:0,
	                 from ...
	./wtf/Platform.h:323:6: error: #error "Not supported ARM architecture"
	 #    error "Not supported ARM architecture"
	      ^~~~~
from this defconfig:

BR2_arm=y
BR2_cortex_a72=y
BR2_ARM_FPU_VFPV3D16=y
BR2_TOOLCHAIN_EXTERNAL=y
BR2_INIT_NONE=y
BR2_PACKAGE_QT5=y
BR2_PACKAGE_QT5WEBKIT=y

The patch is an adaptation of an upstream fix in version 5.212 of
qtwebkit[1].

Unfortunately, the commit cannot be backported and has to be fixed since
the toolchain does not define __ARM_ARCH_8__ but __ARM_ARCH_8A__.

	$ host/bin/arm-buildroot-linux-gnueabihf-g++ -dM -E - < /dev/null | grep ARM_ARCH
	#define __ARM_ARCH_ISA_ARM 1
	#define __ARM_ARCH_8A__ 1
	#define __ARM_ARCH_PROFILE 65
	#define __ARM_ARCH_ISA_THUMB 2
	#define __ARM_ARCH 8
	#define __ARM_ARCH_EXT_IDIV__ 1

[1]: 35655d5f4b/Source/WTF/wtf/Platform.h (L241-L242)

Cc: Arnout Vandecappelle <arnout@mind.be>
Reported-by: Brock Williams <brock@cottonwoodcomputer.com>
Reviewed-by: Adrian Perez de Castro <aperez@igalia.com>
Signed-off-by: Gaël PORTAY <gael.portay@savoirfairelinux.com>
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
(cherry picked from commit cea7aa873a)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-08 17:00:40 +02:00
Waldemar Brodkorb
66238cb413 toolchain-wrapper: use -ffp-contract=off on MIPS Xburst for gcc >= 4.6
Since gcc 4.6, GCC deprecated -mfused-madd, -ffp-contract=off should
be used for the Xburst workaround.

Tested with the MIPS Sourcery 2011.03 toolchain (based on gcc 4.5),
the toolchain wrapper uses -mno-fused-madd, as expected:

$ BR2_DEBUG_WRAPPER=2 ./output/host/bin/mips-linux-gnu-gcc -o toto toto.c
Toolchain wrapper executing:
    '/home/thomas/toolchains/mips-2011.03/bin/mips-linux-gnu-gcc'
    '--sysroot'
    '/home/thomas/projets/buildroot/output/host/mipsel-buildroot-linux-gnu/sysroot'
    '-mabi=32'
    '-msoft-float'
    '-mno-fused-madd'
    '-EL'
    '-march=mips32r2'
    '-o'
    'toto'
    'toto.c'

And with the MIPS Sourcery 2012.09 toolchain (based on gcc 4.7), the
toolchain wrapper uses -ffp-contract=off, as expected:

$ BR2_DEBUG_WRAPPER=2 ./output/host/bin/mips-linux-gnu-gcc -o toto toto.c
Toolchain wrapper executing:
    '/home/thomas/toolchains/mips-2012.09/bin/mips-linux-gnu-gcc'
    '--sysroot'
    '/home/thomas/projets/buildroot/output/host/mipsel-buildroot-linux-gnu/sysroot'
    '-mabi=32'
    '-msoft-float'
    '-ffp-contract=off'
    '-EL'
    '-march=mips32r2'
    '-o'
    'toto'
    'toto.c'

Fixes the ci20_defconfig build:

  https://gitlab.com/buildroot.org/buildroot/-/jobs/60303132

Signed-off-by: Waldemar Brodkorb <wbx@openadk.org>
[Thomas: rework to continue supporting pre-gcc-4.6 toolchains, extend
the commit log after doing more testing.]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Reviewed-by: Ezequiel Garcia <ezequiel@vanguardiasur.com.ar>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>

(cherry picked from commit 5e58509bfe)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-08 16:54:49 +02:00
Thomas De Schampheleire
277072758a core: rename FOO_BASE_NAME to FOO_BASENAME to avoid clashes
In current Buildroot, clashes occur between the variables _NAME and
_BASE_NAME for two packages called foo and foo-base, i.e.

Package foo:
FOO_NAME = foo
FOO_BASE_NAME = foo-1.2.3

Package foo-base:
FOO_BASE_NAME = foo-base
FOO_BASE_BASE_NAME = foo-base-4.5.6

where variable FOO_BASE_NAME is clashing between these two packages.
Specific cases where this clash is already existing are:
- alljoyn-base
- alljoyn-tcl-base
- perl-xml-sax-base

The problem is generic and can occur for a number of variables in Buildroot.
A non-exhaustive list:
    <pkg>_BASE and <pkg>_BASE_NAME
    <pkg>_BASE_NAME and <pkg>_RAW_BASE_NAME
    <pkg>_DIR and <pkg>_DL_DIR
    <pkg>_VERSION and <pkg>_DL_VERSION
    <pkg>_SOURCE and <pkg>_TARGET_SOURCE
    <pkg>_INSTALL_IMAGES and <pkg>_TARGET_INSTALL_IMAGES  (same for _STAGING and _TARGET)
    <pkg>_LICENSE_FILES and <pkg>_MANIFEST_LICENSE_FILES
    <pkg>_DEPENDENCIES and <pkg>_FINAL_DEPENDENCIES

One solution is to use another separator than '_' to separate the
package name from the rest of the variable name. For example, a double
underscore:
FOO__NAME
FOO__BASE_NAME
FOO_BASE__NAME
FOO_BASE__BASE_NAME

However, making that change for only this case means that the variable
naming is no longer consistent. And making the change for all variables has
a large impact, also on certain user scripts.

For now, keep it simple, and rename FOO_BASE_NAME into FOO_BASENAME, so that
the variables become:
FOO_NAME
FOO_BASENAME
FOO_BASE_NAME
FOO_BASE_BASENAME

For consistency, also adapt FOO_RAW_BASE_NAME. Since FOO_RAW_BASENAME would
still pose a conflict with a package called 'foo-raw', take the opportunity
to rename it into FOO_BASENAME_RAW instead, which does not pose a conflict
as we have no variable called FOO_RAW.

Signed-off-by: Thomas De Schampheleire <thomas.de_schampheleire@nokia.com>
Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Reviewed-by: Sam Voss <sam.voss@rockwellcollins.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 83d2644b11)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-08 16:53:42 +02:00
Thomas Petazzoni
d13986a0ea gnupg: fix prompt of Config.in.host
It should be "host gnupg" and not "host-gnupg" to be consistent with
all other Config.in.host options.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 083716cdfb)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-08 16:53:13 +02:00
Peter Korsgaard
8a596e0d38 openblas: drop SSE_GENERIC target
Fixes #10856

The SSE_GENERIC target fails to build with a "sgemm_kernel.o: No such file
or directory" error. Several upstream bug reports exist for this:

https://github.com/xianyi/OpenBLAS/issues/502
https://github.com/xianyi/OpenBLAS/issues/685

In both cases, upstream suggests using a different target definition
instead.  E.G.  from issue 685:

You may use NORTHWOOD on x86: make TARGET=NORTHWOOD that uses SSE2
instructions.  It's very hard to find non-SSE2 x86 CPUs today.  For x86-64
use the PRESCOTT target

So drop the SSE_GENERIC target.  The only x86_64 variant we support not
covered by a more specific openblas target is the default variant, nocona
and jaguar.

Nocona was a Xeon variant of the P4 "Prescott" architecture, so use the
PRESCOTT openblas target:

https://en.wikipedia.org/wiki/Xeon#Nocona_and_Irwindale

Jaguar is from the Bobcat family, so use the BOBCAT openblas target:

https://en.wikipedia.org/wiki/List_of_AMD_microprocessors#Bobcat_core_architecture_(APU)

[Peter: add Jaguar as pointed out by Arnout]
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>

(cherry picked from commit 5e6fa93483)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-08 16:52:53 +02:00
Sasha Shyrokov
cc688dc132 opencv3: fix Python module build for Python 3.x
When the OpenCV3 Python support is enabled with Python 3.x, it builds
properly, and the resulting .so file is built for the target
architecture, but its name is wrong:

  output/target/usr/lib/python3.6/site-packages/cv2.cpython-36m-x86_64-linux-gnu.so

This prevents Python 3.x from importing the module:

>>> import cv2
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ModuleNotFoundError: No module named 'cv2'

In order to fix this, we simply need to pass PKG_PYTHON_DISTUTILS_ENV
in the environment. The Python module then gets named:

  output/target/usr/lib/python3.6/site-packages/cv2.cpython-36m-arm-linux-gnueabi.so

And can be imported properly:

>>> import cv2
>>>

This solution was suggested by Arnout Vandecappelle in
https://stackoverflow.com/questions/49059035/buildroot-opencv3-python-package-builds-for-the-wrong-target.

With Python 2.x, the module is named just cv2.so so this problem isn't
visible. However, for consistency, we also pass
PKG_PYTHON_DISTUTILS_ENV when building against Python 2.x, by putting
the OPENCV3_CONF_ENV assignment inside the
BR2_PACKAGE_OPENCV3_LIB_PYTHON condition, but outside the
BR2_PACKAGE_PYTHON3/BR2_PACKAGE_PYTHON condition.

Signed-off-by: Sasha Shyrokov <alexander-shyrokov@idexx.com>
[Thomas: extend the commit log, apply the solution to Python 2.x.]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>

(cherry picked from commit 8ba80282c3)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-08 16:52:09 +02:00
Bernd Kuhls
fc3aca9ea3 package/kodi: remove imx support
https://git.buildroot.net/buildroot/commit/?id=266208972192f1e0869f89d7be941de6294a810a
broke imx support in Kodi because previously the G2D libraries were
part of the imx-gpu-viv package:

CMake Error at /usr/share/cmake-3.7/Modules/FindPackageHandleStandardArgs.cmake:138 (message):
  Could NOT find IMX (missing: G2D_LIBRARY)

Adjusting the Kodi package to use the imx-gpu-g2d as well still does
not provide a working build:

/home/buildroot/br4/output/build/kodi-17.6-Krypton/xbmc/linux/imx/IMX.cpp: In member function 'void CIMX::Deinitialize()':
/home/buildroot/br4/output/build/kodi-17.6-Krypton/xbmc/linux/imx/IMX.cpp:79:21: error: 'DCIC_IOC_STOP_VSYNC' was not declared in this scope
     ioctl(m_fddcic, DCIC_IOC_STOP_VSYNC, 0);
                     ^~~~~~~~~~~~~~~~~~~
/home/buildroot/br4/output/build/kodi-17.6-Krypton/xbmc/linux/imx/IMX.cpp: In member function 'bool CIMX::UpdateDCIC()':
/home/buildroot/br4/output/build/kodi-17.6-Krypton/xbmc/linux/imx/IMX.cpp:109:19: error: 'DCIC_IOC_STOP_VSYNC' was not declared in this scope
   ioctl(m_fddcic, DCIC_IOC_STOP_VSYNC, 0);
                   ^~~~~~~~~~~~~~~~~~~
/home/buildroot/br4/output/build/kodi-17.6-Krypton/xbmc/linux/imx/IMX.cpp:115:21: error: 'DCIC_IOC_START_VSYNC' was not declared in this scope
     ioctl(m_fddcic, DCIC_IOC_START_VSYNC, 0);
                     ^~~~~~~~~~~~~~~~~~~~
/home/buildroot/br4/output/build/kodi-17.6-Krypton/xbmc/linux/imx/IMX.cpp: In member function 'virtual void CIMX::Process()':
/home/buildroot/br4/output/build/kodi-17.6-Krypton/xbmc/linux/imx/IMX.cpp:125:19: error: 'DCIC_IOC_START_VSYNC' was not declared in this scope
   ioctl(m_fddcic, DCIC_IOC_START_VSYNC, 0);
                   ^~~~~~~~~~~~~~~~~~~~
/home/buildroot/br4/output/build/kodi-17.6-Krypton/xbmc/linux/imx/IMX.cpp:131:19: error: 'DCIC_IOC_STOP_VSYNC' was not declared in this scope
   ioctl(m_fddcic, DCIC_IOC_STOP_VSYNC, 0);
                   ^~~~~~~~~~~~~~~~~~~

Although it might be possible to fix these bugs with something like

	#define DCIC_IOC_CONFIG_DCIC    _IO('D', 12)
	#define DCIC_IOC_START_VSYNC    _IO('D', 15)
	#define DCIC_IOC_STOP_VSYNC     _IO('D', 16)

as done in
https://raw.githubusercontent.com/LibreELEC/LibreELEC.tv/libreelec-7.0/projects/imx6/patches/kodi/imx6-jarvis.patch

we would still try to ride a dead horse. The upcoming Kodi version
18.0-Leia will remove imx support completely, see upstream PR 12990.

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Reviewed-by: Gary Bisson <gary.bisson@boundarydevices.com>
[Thomas: keep an explicit -DENABLE_IMX=OFF in CONF_OPTS.]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>

(cherry picked from commit 878716830b)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-08 16:47:51 +02:00
Bernd Kuhls
b86b227fda package/freescale-imx: Remove imx6s from has_vpu list
According to imx-vpu-5.4.37/Makefile, line 6:

	INCLUDE_LIST:= IMX27ADS IMX51 IMX53 IMX6Q

imx6s is not supported by the imx-vpu package. Its install target,
guarded by

	ifeq ($(PLATFORM), $(findstring $(PLATFORM), $(INCLUDE_LIST)))

does nothing, causing a build error later on in the imx-vpuwrap package

checking for vpu_lib.h... no
configure: error: lib_vpu is required, consider installing imx-lib

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Reviewed-by: Gary Bisson <gary.bisson@boundarydevices.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit e42a65bdcd)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-08 16:47:04 +02:00
Valentin Korenblit
32bd96b7ac package/xterm: Avoid freetype2 path poisoning using imake
When imake is installed on the host, it tries to include
freetype headers from host, so we must override ac_cv_path_IMAKE
to avoid this.

Extract from config.log:

configure:14803: checking if we should use imake to help
configure:14820: result: yes
configure:14829: checking for xmkmf
configure:14846: found /usr/bin/xmkmf
configure:14857: result: /usr/bin/xmkmf
configure:14920: testing Using /usr/bin/xmkmf  ...
configure:15015: testing IMAKE_CFLAGS  -I. -I/usr/include/freetype2

Signed-off-by: Valentin Korenblit <valentin.korenblit@smile.fr>
[Thomas: pass ac_cv_path_IMAKE="" as suggested by Romain Naour.]
Reviewed-by: Romain Naour <romain.naour@smile.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>

(cherry picked from commit 6d0316dc7b)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-08 16:45:08 +02:00
Peter Korsgaard
33e21c6c9e ktap: bump version for linux-4.8 support
Fixes #10776

The upstream git repo contains a number of fixes for building against newer
kernel versions, so bump the version.

git shortlog eb66d40310c93dc82bc8eac889744c1ed1f01f7b..
Alain Kalker (2):
      uprobe: Print the symbol, not the matching pattern
      uprobe: Blacklist uretprobes on _start

Aleksa Sarai (2):
      runtime: update GFP_WAIT to GFP_RECLAIM
      userspace: fix up argument parsing NULL dereference

Alexey Makhalov (1):
      Fix building for v4.8 kernel

Azat Khuzhin (12):
      Use get_unused_fd_flags(0) instead of get_unused_fd()
      Support trace_seq::seq
      Ignore separate debug files (*.dwo)
      Use trace_seq_has_overflowed()
      makefile: split vim plugins installing into separate target
      makefile: use DESTDIR for install (allow to change install dir)
      makefile: install: create dirs
      makefile: use ldflags for linking ktap
      makefile: add CPPFLAGS to KTAPC_CFLAGS, to allow change default flags
      ignore: exclude /debian
      Support compilation for 4.2 (ftrace_events cleanup)
      runtime: fix building on 4.3

Jovi Zhangwei (11):
      Merge pull request #84 from azat/linux-3.19-fixes-v3
      Merge pull request #85 from azat/debian-preparations-v2
      Merge pull request #88 from NanXiao/master
      Merge pull request #89 from NanXiao/patch-1
      Merge pull request #91 from NanXiao/patch-1
      Merge pull request #90 from azat/linux-4.2-compilation-fixes
      Merge pull request #99 from cyphar/fix-null-deref
      Merge pull request #98 from cyphar/fix-gfp-reclaim
      Merge pull request #97 from azat/fix-building-4.3-__GFP_RECLAIM
      Merge pull request #103 from ackalker/blacklist
      Merge pull request #104 from YustasSwamp/master

Nan Xiao (3):
      Update tutorial.md
      Update Makefile
      Fix memory leak issue in main function.

WEI ZHANG (1):
      ktap: Change the copyright to Huawei Technologies

While we are at it, also add a hash for the license file.

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 8a612c9ed9)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-08 16:42:34 +02:00
Fabio Estevam
8f06aed143 linux-headers: bump 4.{4, 9, 14, 15}.x series
Signed-off-by: Fabio Estevam <festevam@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 6e17a16dc7)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-07 19:51:20 +02:00
Fabio Estevam
17e3b9adb8 linux: bump default to version 4.15.15
Signed-off-by: Fabio Estevam <festevam@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 03cdfea134)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-06 20:11:00 +02:00
Thomas Petazzoni
4a1a806d48 utils/genrandconfig: use --no-check-certificate in wget by default
A number of autobuilder failures are due to the fact that autobuilder
instances use old distributions, with old SSL certificates, and
therefore wget aborts with an error "The certificate of `xyz.org' is
not trusted.".

In order to avoid such failures that are not very interesting in the
context of the autobuilders, we pass --no-check-certificate to
wget. The integrity of the downloaded files is anyway verified by the
hashes, and this is only meant to be used in the context of
testing/CI, not in production.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
(cherry picked from commit 0866a280e4)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-06 20:10:17 +02:00
Peter Korsgaard
560b1d374e nodejs: security bump to version 8.11.1
Fixes the following security issues:

- Fix for inspector DNS rebinding vulnerability (CVE-2018-7160): A malicious
  website could use a DNS rebinding attack to trick a web browser to bypass
  same-origin-policy checks and allow HTTP connections to localhost or to
  hosts on the local network, potentially to an open inspector port as a
  debugger, therefore gaining full code execution access.  The inspector now
  only allows connections that have a browser Host value of localhost or
  localhost6.

- Fix for 'path' module regular expression denial of service
  (CVE-2018-7158): A regular expression used for parsing POSIX paths could
  be used to cause a denial of service if an attacker were able to have a
  specially crafted path string passed through one of the impacted 'path'
  module functions.

- Reject spaces in HTTP Content-Length header values (CVE-2018-7159): The
  Node.js HTTP parser allowed for spaces inside Content-Length header
  values.  Such values now lead to rejected connections in the same way as
  non-numeric values.

While we are at it, also add a hash for the license file.

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 7f02604553)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-06 20:10:02 +02:00
Yann E. MORIN
5b6c090749 support/check-uniq-files: support weird locales and filenames
Currently, when a filename contains characters not representable in the
user's locale, we fail hard, especially when the host python is python3.

This is because python2 and python3 handle encoding/decoding strings
differently, with python3 presumable doing the right thing, but it
breaks on some systems, while python2 presumable does the wrong thing,
but it works everywhere. (Just joking, obviously...)

Part of the issue being that the csv reader in python2 is broken with
UTF8.

We fix the issue by ditching the csv reader, and simply read the file in
binary mode, manually partitioning the lines on the first comma.

Then, we use the binary-encoded (really, un-encoded) package names and
filenames as values and keys, respectively.

Finally, for each filename or package we need to print, we try to decode
them with the defaults for the user settings, but catch any decoding
exception and fall back to dumping the raw, binary values. Which codec
is used by default differs between Python version, but in all cases
something sane is printed at least.

Thanks a lot to Arnout for the live help doing this patch. :-)

Reported-by: Jaap Crezee <jaap@jcz.nl>
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Arnout Vandecappelle <arnout@mind.be>
Cc: Jaap Crezee <jaap@jcz.nl>
[Arnout: commit log improvement]
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>

(cherry picked from commit 5563a1c6a4)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-06 20:09:19 +02:00
Yann E. MORIN
0787fee694 package/openocd: fix fallout after no-C++ fixups
Commit 4cd1ab158 (core: alternate solution to disable C++) made use of a
non-existent 'no' binary when C++ is not available in the toolchain.

However, some packages, like jimtcl as bundled in opeocd, really want to
find the binary that $CXX contains.

Revert openocd to use 'false' instead of 'no'.

Fixes:
    http://autobuild.buildroot.org/results/cbd/cbd5ab97fb0659968ff628461130627cf1745955/

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Ezequiel Garcia <ezequiel@vanguardiasur.com.ar>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 5966e2dc54)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-06 20:08:10 +02:00
Yann E. MORIN
536618b4e1 package/jimtcl: fix fallout after no-C++ fixups
Commit 4cd1ab158 (core: alternate solution to disable C++) made use of a
non-existent 'no' binary when C++ is not available in the toolchain.

However, some packages, like jimtcl, really want to find the binary that
$CXX contains.

Revert jimtcl to use 'false' instead of 'no'.

Fixes:
    http://autobuild.buildroot.org/results/54f/54f3df03551fbdf293d33dc1e3f08005faa15321/

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Ezequiel Garcia <ezequiel@vanguardiasur.com.ar>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 9feb6d982d)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-06 20:08:00 +02:00
Thomas Petazzoni
abbaecf5d8 support/config-fragments/autobuild: fix SSP in br-nios2-glibc
Commit c868095681 ("toolchain: fix
detection of SSP support") fixed the SSP check so that it does the
correct thing for nios2 toolchains. While this commit fixed the
description of the Sourcery NIOSII toolchain, it didn't fix the
description for the autobuilders of the br-nios2-glibc toolchain,
causing some build failures. This commit adjusts br-nios2-glibc.config
to indicate that the toolchain doesn't have SSP support.

Fixes:

  http://autobuild.buildroot.net/results/6c44e328b7bffd8474d29d5bdf1ea109ec15f4ad/

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 0e4de0f2db)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-06 20:07:44 +02:00
Rahul Bedarkar
97aefd6657 zstd: fix legal info
zstd is dual licensed under BSD-3-Clause or GPL-2.0 as per README.md
and source files license header.

Cc: Andrey Smirnov <andrew.smirnov@gmail.com>
Signed-off-by: Rahul Bedarkar <rahulbedarkar89@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 9b2f6548f8)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-06 20:07:14 +02:00
Rahul Bedarkar
fcfc10141a opus-tools: update license
As per COPYING file, opusinfo is licensed under GPL version 2.

Signed-off-by: Rahul Bedarkar <rahulbedarkar89@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-06 20:06:45 +02:00
Yann E. MORIN
ae854d015e core: alternate solution to disable C++
Some packages that use libtool really need some love to be able to
disable C++ support.

This is because libtool will want to call AC_PROG_CXXCPP as soon as CXX
is set non-empty to something different from 'no'. Then, AC_PROG_CXXCPP
will want a C++ preprocessor that works on valid input *and* fail on
invalid input.

So, providing 'false' as the C++ compiler will then require that we do
have a working C++ preprocessor. Which is totally counter-productive
since we do not have a C++ compiler to start with...

bd39d11d2e (core/infra: fix build on toolchain without C++) was a
previous attempt at fixing this, by using the host's C++ preprocessor.

However, that is very incorrect (that's my code, I can say so!) because
the set of defines will most probably be different for the host and the
target, thus causing all sorts of trouble. For example, on ARM we'd have
to include different headers for soft-float vs hard-float, which is
decided based on a macro, which is not defined for x86, and thus may
redirect to the wrong (and missing) header.

Instead, we notice that libtool uses the magic value 'no' to decide that
a C++ compiler is not available, in which case it skips the call to
AC_PROG_CXXCPP.

Given that 'no' is not provided by any package in Debian and
derivatives, as well as in Fedora, we can assume that no system will
have an executable called 'no'. Hence, we use that as a magic value to
disable C++ detection altogether.

Fixes: #10846 (again)

Reported-by: Damien Riegel <damien.riegel@savoirfairelinux.com>
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Damien Riegel <damien.riegel@savoirfairelinux.com>
Cc: Peter Seiderer <ps.report@gmx.net>
Cc: Vivien Didelot <vivien.didelot@savoirfairelinux.com>
Cc: Peter Korsgaard <peter@korsgaard.com>
Cc: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Tested-by: Peter Seiderer <ps.report@gmx.net>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 4cd1ab1588)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-06 20:06:02 +02:00
Peter Korsgaard
48d789970e libopenssl: security bump to version 1.0.2o
Fixes the following security issues:

Constructed ASN.1 types with a recursive definition could exceed the stack
(CVE-2018-0739)

Constructed ASN.1 types with a recursive definition (such as can be found in
PKCS7) could eventually exceed the stack given malicious input with
excessive recursion.  This could result in a Denial Of Service attack.
There are no such structures used within SSL/TLS that come from untrusted
sources so this is considered safe.

Incorrect CRYPTO_memcmp on HP-UX PA-RISC (CVE-2018-0733)

Because of an implementation bug the PA-RISC CRYPTO_memcmp function is
effectively reduced to only comparing the least significant bit of each
byte.  This allows an attacker to forge messages that would be considered as
authenticated in an amount of tries lower than that guaranteed by the
security claims of the scheme.  The module can only be compiled by the HP-UX
assembler, so that only HP-UX PA-RISC targets are affected.

rsaz_1024_mul_avx2 overflow bug on x86_64 (CVE-2017-3738)

This issue has been reported in a previous OpenSSL security advisory and a
fix was provided for OpenSSL 1.0.2.  Due to the low severity no fix was
released at that time for OpenSSL 1.1.0.  The fix is now available in
OpenSSL 1.1.0h.

There is an overflow bug in the AVX2 Montgomery multiplication procedure
used in exponentiation with 1024-bit moduli.  No EC algorithms are affected.
Analysis suggests that attacks against RSA and DSA as a result of this
defect would be very difficult to perform and are not believed likely.
Attacks against DH1024 are considered just feasible, because most of the
work necessary to deduce information about a private key may be performed
offline.  The amount of resources required for such an attack would be
significant.  However, for an attack on TLS to be meaningful, the server
would have to share the DH1024 private key among multiple clients, which is
no longer an option since CVE-2016-0701.

This only affects processors that support the AVX2 but not ADX extensions
like Intel Haswell (4th generation).

For more details, see https://www.openssl.org/news/secadv/20180327.txt

The copyright year changed in LICENSE, so adjust the hash to match.

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 6938c219d8)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-06 20:05:27 +02:00
Peter Korsgaard
d56fdb17f0 sngrep: fix libgcrypt handling
Fixes:
http://autobuild.buildroot.net/results/f1c6494133806b9fc26ae3ce9e9c6a22fa2eda6f/

Commit 6205b75873 (sngrep: gnutls support also needs libgcrypt) ensured
that --with-gnutls is only used when both gnutls and libgcrypt are enabled,
but it didn't ensure libgcrypt gets built before sngrep or told the
configure script where to find libgcrypt-config, breaking the build.

Fix both issues.

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit ae7d59eaae)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-06 20:04:53 +02:00
Bernd Kuhls
8c8f9fda90 package/php: security bump to version 7.2.4
Fixes https://bugs.php.net/bug.php?id=75605, no CVE-ID yet.

Removed patch 0008, applied upstream. Re-numbered patch 0009.

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 19e983a954)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-06 20:04:07 +02:00
Fabio Estevam
380e9599de linux-headers: bump 4.{1, 4, 9, 14, 15}.x series
Signed-off-by: Fabio Estevam <festevam@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 9ef8f6b061)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-06 20:03:44 +02:00
Fabio Estevam
093b702627 linux: bump default to version 4.15.14
Signed-off-by: Fabio Estevam <festevam@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 02c40b3181)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-06 20:03:35 +02:00
Baruch Siach
0b601f4c8f xerces: add upstream security fix
CVE-2017-12627: dereference of a NULL pointer while processing the path
to the DTD.

xerces 3.2.1 includes this patch. But this version also added
AC_RUN_IFELSE to its configure script, making cross compilation harder.

Switching to cmake is also problematic since the minimum required cmake
version is 3.2.0. The host dependencies check currently allows minimum
cmake version 3.1.

Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 142c8cc8d5)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-06 20:03:09 +02:00
Trent Piepho
1d780f2514 Config.in: Document BR2_CCACHE_DIR override
This variable, like BR2_DL_DIR, is designed to be overridable from the
environment.  Unlike BR2_DL_DIR, it is not documented as such in the
Config.in help text.  Do so now.

Signed-off-by: Trent Piepho <tpiepho@impinj.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit ad980ccc36)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-06 20:01:36 +02:00
Stefan Becker
74f9b181a6 package/systemd: add upstream build fix
Fixes:

  http://autobuild.buildroot.org/results/4c439ee000354f90b4e59ee4006530f77263db47/

Signed-off-by: Stefan Becker <chemobejk@gmail.com>
Tested-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit ef3304dabc)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-06 20:01:10 +02:00
Anssi Hannula
7bc97aa935 systemd: do not use host system-uid/gid ranges
systemd meson.build uses values from host /etc/login.defs if
system-uid-max and system-gid-max build options are not explicitly
specified.

Avoid that by setting system-uid-max and system-gid-max to 999 which is
the systemd default if SYSTEM_UID_MAX and SYSTEM_GID_MAX are not set in
/etc/login.defs.

Signed-off-by: Anssi Hannula <anssi.hannula@bitwise.fi>
Acked-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 183d2097ff)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-06 20:00:41 +02:00
Arnout Vandecappelle (Essensium/Mind)
cf92451acb busybox: disable PAM in the config if linux-pam is not selected
Currently there is only logic to enable PAM when linux-pam is selected.
However, busybox will fail to build with PAM enabled if the linux-pam
package has not been built before. So we should forcibly disable PAM in
busybox in that case.

Normally this is not an issue since our default busybox config doesn't
have PAM enabled. However, if you enable linux-pam, then save the
busybox config to a custom configuration file, then disable linux-pam
again, and then do a "make clean; make", the build will fail. A more
practical situation where this can occur is when the same custom
busybox config is used in a Buildroot config with and without
linux-pam.

Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Reviewed-by: Matt Weber <matthew.weber@rockwellcollins.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 0876b02366)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-06 19:57:45 +02:00
Alexander Dahl
462d5d5244 libfcgi: Use SPDX license identifier
The fcgi license is covered by SPDX, the identifier however is not
obvious.

For details, see https://spdx.org/licenses/OML.html

[Peter: add spdx.org link]
Signed-off-by: Alexander Dahl <post@lespocky.de>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>

(cherry picked from commit b13d9ab380)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-06 19:56:29 +02:00
Carlos Santos
92b066b7ce toolchain: fix detection of SSP support
GCC issues a warning message if -fstack-protector is passed but SSP is
not available, so in order to force the compilation to fail we must also
pass -Werror.

All external toolchains were verified. The only one whose configuration
incorrectly selected BR2_TOOLCHAIN_HAS_SSP was CodeSourcery NIOSII.

Fixes:
  http://autobuild.buildroot.net/results/ce8fe8ac9cf0db01ae15d476ea714ff176965cfb
  http://autobuild.buildroot.net/results/09ce8f05e28c0219f499ce55130e896cae0c8b45

Signed-off-by: Carlos Santos <casantos@datacom.ind.br>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit c868095681)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-06 19:55:25 +02:00
Joshua Henderson
eab772d3aa sam-ba: fix sam-ba symbolic link
Following the removal of $(HOST_DIR)/usr, the symbolic link from
$(HOST_DIR)/bin/sam-ba/ to $(HOST_DIR)/opt/sam-ba/sam-ba was broken,
so we fix this.

In addition, sam-ba being prebuilt, it comes in two separates
binaries, one for x86 and the other for x86_64, so we take this into
account as well.

Signed-off-by: Joshua Henderson <joshua.henderson@microchip.com>
[Thomas:
 - add spaces around = signs
 - rework commit log.]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>

(cherry picked from commit b3b5608b47)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-06 19:53:23 +02:00
Yann E. MORIN
54dd5d2ec6 package/libss7: propagate dependency from dahdi-tools
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 76e6837cd6)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-06 19:53:03 +02:00
Joshua Henderson
7c118173cc eudev: prevent udev init script nonexistent directory error
The following error occures in the udev init script because the kernel config
may optionally not include uevent_helper.

/etc/init.d/S10udev: line 47: can't create /proc/sys/kernel/hotplug: nonexistent directory

Work around this by not trying to access the destination if it's not available.

Signed-off-by: Joshua Henderson <joshua.henderson@microchip.com>
Acked-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit cbe725d755)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-06 16:55:11 +02:00
Fabio Estevam
f0ec71f4d3 linux-headers: bump 4.{4, 9, 14, 15}.x series
Signed-off-by: Fabio Estevam <festevam@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit d9534c8163)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-06 16:54:07 +02:00
Fabio Estevam
0d1a82b750 linux: bump default to version 4.15.13
Signed-off-by: Fabio Estevam <festevam@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 988e4c827c)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-06 16:53:58 +02:00
Baruch Siach
176a2d048f qemu: add libssh2 optional dependency
Make sure that qemu uses libssh2 when libssh2 is enabled, for build
consistency.

Cc: Francois Perrad <francois.perrad@gadz.org>
Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Reviewed-by: Romain Naour <romain.naour@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit d769377a41)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-06 16:53:01 +02:00
Baruch Siach
2c4fbb7a64 libssh2: fix pkg-config info for mbedtls backend
The libssh2.pc file did not contain the needed info for static link with
libssh2. Add a patch fixing that.

Fixes (qemu):
http://autobuild.buildroot.net/results/634/6346b25be2844f9ef722e52040ac1b43d9c38899/

Cc: Matt Weber <matthew.weber@rockwellcollins.com>
Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit ebbf874624)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-06 16:52:35 +02:00
Baruch Siach
14f18ecaaa qemu: fix build with glibc 2.27
glibc version 2.27 added a wrapper for the memfd_create system call. The
wrapper prototype collides with a static declaration of memfd_create.
Add upstream patch to correctly detect the glibc provided memfd_create
definition.

Fixes:
http://autobuild.buildroot.net/results/b82/b825c0cd397424b1fc7fa87c580e1757dc25c588/
http://autobuild.buildroot.net/results/9aa/9aa3853d23c0dc72bf3632b4d66ae39f597f5250/
http://autobuild.buildroot.net/results/b13/b13039ba602b9d500b939d259816a39ba24e1ba2/

Cc: Francois Perrad <francois.perrad@gadz.org>
Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Reviewed-by: Romain Naour <romain.naour@gmail.com>
Tested-by: Romain Naour <romain.naour@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 1d10e9dc8c)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-06 16:52:00 +02:00
Fabio Estevam
4f8ef1371d configs/imxsabre: Fix U-Boot parallel build issue
Sometimes imximage throws the following error:

MKIMAGE u-boot-dtb.imx
Error: No BOOT_FROM tag in board/freescale/mx6sxsabresd/imximage.cfg.cfgtmp
arch/arm/imx-common/Makefile:91: recipe for target 'u-boot-dtb.imx' failed

Later on, when running mkimage for the u-boot.imx it will succeed in
finding the IVT offset.

Looks like some race condition happening during parallel build when
processing mkimage for u-boot-dtb.imx and u-boot.imx.

A proper fix still needs to be implemented, but as a workaround let's
remove the error when the IVT offset is not found.

It is useful to have such message, especially during bring-up phase,
but the build error that it causes is severe, so better avoid the
build error for now.

The error checking can be re-implemented later when we have a proper
fix.

This workaround has already been applied in mainline U-Boot:
http://git.denx.de/?p=u-boot.git;a=commit;h=b5b0e4e351e20a606de22db6a56ad6bc1e2aa8fd

Fixes:

  https://gitlab.com/buildroot.org/buildroot/-/jobs/59015347

Reported-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Signed-off-by: Fabio Estevam <festevam@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 0c4bccf9e8)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-06 16:49:45 +02:00
Bernd Kuhls
1775f53f83 package/apache: security bump to version 2.4.33
Changelog: http://www.apache.org/dist/httpd/CHANGES_2.4.33

Fixes CVE-2017-15710, CVE-2018-1283, CVE-2018-1303, CVE-2018-1301,
CVE-2017-15715, CVE-2018-1312, CVE-2018-1302.

Added license hash.

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 65193bf3c9)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-06 16:47:46 +02:00
Bernd Kuhls
f840f80b3a package/imagemagick: security bump version to 7.0.7-27
Fixes CVE-2018-6405 (upstream Github PR 964) and many others:
http://www.imagemagick.org/script/changelog.php

Added license hash.

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 31086ea1de)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-06 16:47:30 +02:00
Fabio Estevam
711a52835d linux-headers: bump 4.{4, 9}.x series
Signed-off-by: Fabio Estevam <festevam@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 21070fb9ae)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-06 16:46:30 +02:00
Bernd Kuhls
116a501e7b linux-headers: bump 3.2.x and 4.{14, 15}.x series
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit b83a4d3d69)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-06 16:45:36 +02:00
Bernd Kuhls
086ddf1de2 linux: bump default to version 4.15.12
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit c2fe7b6bc8)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-06 16:45:29 +02:00
Joel Stanley
5e63590fe2 powerpc-utils: Update URL to new upstream
powerpc-utils changed upstream git repositories again.

Signed-off-by: Joel Stanley <joel@jms.id.au>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 1b383e4bf4)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-06 16:44:23 +02:00
Peter Korsgaard
e1a6f840f1 tremor: security bump to fix CVE-2018-5146
Prevent out-of-bounds write in codebook decoding.

Codebooks that are not an exact divisor of the partition size are now
truncated to fit within the partition.

Upstream has migrated from subversion to git, so change to git and bump the
version to include the fix for CVE-2018-5146.

While we're at it, also add a hash file.

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 80266c9505)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-06 16:43:51 +02:00
Jörg Krause
1c83518cd6 docs/manual: pass PARALLEL_JOBS to NINJA_OPTS
Ninja understands the `-j` option which defines how many jobs are
run in parallel.

Signed-off-by: Jörg Krause <joerg.krause@embedded.rocks>
Acked-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit f7479b538a)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-06 16:42:50 +02:00
Fabio Estevam
f2fe1b57ef linux-headers: bump 3.2.x and 4.{1, 14, 15}.x series
Signed-off-by: Fabio Estevam <festevam@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit cd0fd09352)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-06 16:40:11 +02:00
Fabio Estevam
416371a7f1 linux: bump default to version 4.15.11
Signed-off-by: Fabio Estevam <festevam@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit ce2875e1cf)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-06 16:39:56 +02:00
Peter Korsgaard
df2b54974e linux-headers: bump 4.{4,9}.x series
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 50cd46b39f)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-06 16:38:52 +02:00
Peter Korsgaard
dbfe123f10 irssi: security bump to version 1.0.7
Fixes the following security issues:

Use after free when server is disconnected during netsplits.  Incomplete fix
of CVE-2017-7191.  Found by Joseph Bisch.  (CWE-416, CWE-825) -
CVE-2018-7054 [2] was assigned to this issue.

Use after free when SASL messages are received in unexpected order.  Found
by Joseph Bisch.  (CWE-416, CWE-691) - CVE-2018-7053 [3] was assigned to
this issue.

Null pointer dereference when an “empty” nick has been observed by Irssi.
Found by Joseph Bisch.  (CWE-476, CWE-475) - CVE-2018-7050 [4] was assigned
to this issue.

When the number of windows exceed the available space, Irssi would crash due
to Null pointer dereference.  Found by Joseph Bisch.  (CWE-690) -
CVE-2018-7052 [5] was assigned to this issue.

Certain nick names could result in out of bounds access when printing theme
strings.  Found by Oss-Fuzz.  (CWE-126) - CVE-2018-7051 [6] was assigned to
this issue.

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 181ef8a1d0)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-06 16:38:43 +02:00
Yann E. MORIN
5b582bf191 core/instrumentation: shave minutes off the build time
As part of the build, we run some instrumentation hooks to gather
statistics about the usage of the target/, staging/ and host/
directories, so that we can generate reports for the user, that
shows:
  - for each file, what package installed it,
  - for each package,the size that it installed.

In so doing, we run a double md5 pass on all files of the affected
directories (before/after installation).  These passes were mostly invisible
when we were only scanning target/, but has greatly increased in time now
that we also scan staging/ and host/ (but only in the corresponding _CMDS,
of course).

This md5 was mostly aimed at catching packages that would "cheat" with
mtime/atime/ctime somehow. They can't really cheat on md5, though [0].

Timings however speak for themselves, with this defconfig (slightly
biggish-but-still-manageable build) [1].

host/      20965 files    1.2GiB
staging/    4715 files    333MiB
target/     1801 files     44MiB

All instrumentation steps, using md5:    19min 27s
All instrumentation steps, using mtime:  14min 45s
No instrumentation step at all:          14min 31s

So, using mtime is an almost-5min improvement, i.e. about 25% faster,
while removing all instrumentation steps does not gain that much more...

So, we switch to using mtime, because in the end that's still good-enough
for our use-case: generating some graphs.  It is not mission-critical, and
if a graph is slightly off, that's not a biggy.  It can anyway be attributed
to a broken package's buildsystem, which should get fixed.

However, we lose the ability to track directories. Non-empty directories
can be tracked back by a bit of scripting, but empty directories are
simply not caught. If we were to also look for directories using mtime,
we would catch parents of installed files:

  - /foo/bar/ exists
  - a package installs /foo/bar/buz
  - mtime of /foo/bar/ is changed to account for the new file in it.

So we do not track directories at all, and we lose empty directories.
The existing tracking was mostly happenstance, with the original
submission and comments not really accounting for a real use-case.

Now, we also change the way we handle symlinks. Previously, we would
hash the file pointed to by the symlink. Now, we only look at the mtime
of the symlink itself, which still detects modifications.

Eventually, this also means that we now no longer need to establish a
list before the install step; we can now simply run after the install
step, finding any files newer than the build stamp.

[0] Yeah, md5 is very weak, but we're not guarding against malicious
attacks, just about careless modifications.

[1] defconfig used for tests:
BR2_arm=y
BR2_cortex_a7=y
BR2_TOOLCHAIN_EXTERNAL=y
BR2_INIT_SYSTEMD=y
BR2_PACKAGE_MESA3D=y
BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_ETNAVIV=y
BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_SWRAST=y
BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_VC4=y
BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_VIRGL=y
BR2_PACKAGE_MESA3D_DRI_DRIVER_SWRAST=y
BR2_PACKAGE_MESA3D_OSMESA=y
BR2_PACKAGE_MESA3D_OPENGL_ES=y
BR2_PACKAGE_SYSTEMD_JOURNAL_GATEWAY=y
BR2_PACKAGE_SYSTEMD_BACKLIGHT=y
BR2_PACKAGE_SYSTEMD_BINFMT=y
BR2_PACKAGE_SYSTEMD_COREDUMP=y
BR2_PACKAGE_SYSTEMD_FIRSTBOOT=y
BR2_PACKAGE_SYSTEMD_HIBERNATE=y
BR2_PACKAGE_SYSTEMD_IMPORTD=y
BR2_PACKAGE_SYSTEMD_LOCALED=y
BR2_PACKAGE_SYSTEMD_LOGIND=y
BR2_PACKAGE_SYSTEMD_MACHINED=y
BR2_PACKAGE_SYSTEMD_POLKIT=y
BR2_PACKAGE_SYSTEMD_QUOTACHECK=y
BR2_PACKAGE_SYSTEMD_RANDOMSEED=y
BR2_PACKAGE_SYSTEMD_RFKILL=y
BR2_PACKAGE_SYSTEMD_SMACK_SUPPORT=y
BR2_PACKAGE_SYSTEMD_SYSUSERS=y
BR2_PACKAGE_SYSTEMD_VCONSOLE=y

[Peter: tweak commit message, use find -type l]
Reported-by: Trent Piepho <tpiepho@impinj.com>
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Trent Piepho <tpiepho@impinj.com>
Cc: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Cc: Peter Korsgaard <peter@korsgaard.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>

(cherry picked from commit 7fb6e78254)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-06 16:37:20 +02:00
Peter Korsgaard
1f11463b3d libvorbis: security bump to version 1.3.6
Fixes CVE-2018-5146: Prevent out-of-bounds write in codebook decoding.

Drop 0001-CVE-2017-14633-Don-t-allow-for-more-than-256-channel.patch and
0002-CVE-2017-14632-vorbis_analysis_header_out-Don-t-clea.patch as they are
now upstream, and add a hash for the license file while we're at it.

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit eca03d6774)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-06 16:36:45 +02:00
Romain Naour
b6f7a0e38b package/enlightenment: fix meson warning
--disable-rpath was added by m4/lib-link.m4 with autotools based
buildsystem. Now we use meson, we don't have such option anymore.

The autotools eet-eet and eldbus_codegen options are named respectively
eet and eldbus-codegen with meson.

Fixes:
WARNING: Unknown command line options: "eet-eet, eldbus_codegen, rpath"

Signed-off-by: Romain Naour <romain.naour@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit b582d137a1)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-06 16:35:54 +02:00
Fabio Estevam
513cd51490 linux-headers: bump 4.{14, 15}.x series
Signed-off-by: Fabio Estevam <festevam@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 81c28e83ce)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-06 16:34:16 +02:00
Fabio Estevam
2218b1807d linux: bump default to version 4.15.10
Signed-off-by: Fabio Estevam <festevam@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 2f55ca3a95)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-06 16:34:09 +02:00
Peter Korsgaard
b1c0a50460 intel-microcode: bump to version 20180312
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit b67b65b3ba)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-06 16:33:30 +02:00
Baruch Siach
6f2d5ed2be libcurl: security bump to version 7.59.0
CVE-2018-1000120: curl could be fooled into writing a zero byte out of
bounds when curl is told to work on an FTP URL with the setting to only
issue a single CWD command, if the directory part of the URL contains a
"%00" sequence.

https://curl.haxx.se/docs/adv_2018-9cd6.html

CVE-2018-1000121: curl might dereference a near-NULL address when
getting an LDAP URL.

https://curl.haxx.se/docs/adv_2018-97a2.html

CVE-2018-1000122: When asked to transfer an RTSP URL, curl could
calculate a wrong data length to copy from the read buffer.

https://curl.haxx.se/docs/adv_2018-b047.html

Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit bf3476e5b1)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-06 16:33:03 +02:00
Peter Korsgaard
11b209c5a3 pkg-virtual.mk: explicitly set <pkg>_VERSION / _SOURCE for robustness
Recently a build failure was reported which was traced back to to the fact
that the user had a TOOLCHAIN_VERSION environment variable set which leads
to a strange looking error message:

toolchain/toolchain/toolchain.mk:40: *** TOOLCHAIN_SITE cannot be empty when
TOOLCHAIN_SOURCE is not.  Stop.

Environment variables automatically gets converted to make variables by GNU
make - E.G. from the manual
(https://www.gnu.org/software/make/manual/html_node/Environment.html):

Variables in make can come from the environment in which make is run.  Every
environment variable that make sees when it starts up is transformed into a
make variable with the same name and value

So we end up in make with TOOLCHAIN_VERSION set to the value of the
environment variable.  As virtual packages do not have a version, there is
no explicit TOOLCHAIN_VERSION = ..  line in toolchain.mk overriding this
value, and the logic in package/pkg-generic.mk sets a default value for
TOOLCHAIN_SOURCE when TOOLCHAIN_VERSION is set, and finally errors out as
TOOLCHAIN_SITE isn't set.

As a workaround, explicitly set <pkg>_VERSION and <pkg>_SOURCE to the empty
string in the virtual package infrastructure.

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 32d2de2a6f)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-06 16:31:44 +02:00
Adam Duskett
b611ce2471 libpjsip: security bump to 2.7.2
Fixes the following vulnerabilities:

- CVE-2018-1000098: Crash when parsing SDP with an invalid media format
  description

- CVE-2018-1000099: Crash when receiving SDP with invalid fmtp attribute

[Peter: add CVE info]
Signed-off-by: Adam Duskett <aduskett@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>

(cherry picked from commit ed0d9d6f36)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-06 16:31:11 +02:00
Baruch Siach
e5383981e5 samba4: security bump to version 4.7.6
CVE-2018-1050: Vulnerability to a denial of service attack when the RPC
spoolss service is configured to be run as an external daemon.

https://www.samba.org/samba/security/CVE-2018-1050.html

CVE-2018-1057: Authenticated users might change any other users'
passwords, including administrative users and privileged service
accounts (eg Domain Controllers).

https://www.samba.org/samba/security/CVE-2018-1057.html

Add clnt_create() test result to cache to fix cross configure breakage.

Cc: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 4027564343)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-06 16:30:12 +02:00
Baruch Siach
f5b39f81d4 uclibc-ng-test: fix build with musl and older kernel headers
musl libc provides its own system call macros, including
preadv2/pwritev2. Having these macros defined is not enough to determine
availability of other related macros in kernel headers.

Add a patch to check these macros directly.

Fixes:
http://autobuild.buildroot.net/results/7e9/7e9945f46ef9e0f6de7e1c85b0ca1104df6c86f5/
http://autobuild.buildroot.net/results/782/782652193bb6770ae68d509b3a7087667622d627/
http://autobuild.buildroot.net/results/582/5827a724c7f24218010f4cdd24924dca457b0361/

Cc: Waldemar Brodkorb <wbx@openadk.org>
Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 02940d8ccf)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-06 16:28:41 +02:00
Jan Kundrát
2e11d0ef9b cmake: Fix RPATH for host libraries built by CMake
The host shared libraries produced by CMake were missing a proper
DT_RPATH. That became a problem because the DT_RPATH handling is not
transitive by design.

Consider the following scenario:

- pkg-a provides a library (`liba`) which links to `libpcre`
- pkg-b provides a binary (`foo`) and a shared library (`libb`) which is
needed by that binary
- `libb` links to `liba`
- pkg-a and pkg-b are both built by CMake

In this scenario, `foo` is correctly marked with DT_RPATH pointing to
host/lib/, but that path is not used when (recursively) resolving PCRE's
symbols in `liba`. When attempting to run the `foo` binary, the linker
correctly finds both `liba` and `libb`, but it cannot find the
libpcre.so as built by Buildroot for host.

Signed-off-by: Jan Kundrát <jan.kundrat@cesnet.cz>
Reviewed-by: Samuel Martin <s.martin49@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 7d43534625)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-06 16:27:05 +02:00
Martin Bark
eae2c250f2 package/libhttpparser: bump version to 2.8.0
Signed-off-by: Martin Bark <martin@barkynet.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 4a646da628)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-06 16:24:21 +02:00
Martin Bark
f363a9a738 package/c-ares: bump version to 1.14.0
Signed-off-by: Martin Bark <martin@barkynet.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 103855a2e0)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-06 16:24:04 +02:00
Martin Bark
49b2178f70 package/libuv: bump version to 1.19.2
Signed-off-by: Martin Bark <martin@barkynet.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 2d2dbca68b)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-06 16:23:57 +02:00
Stefan Becker
ef2811e13d uboot: fix build for older uboot source trees
The change in commit bf73334232 only works
for newer uboot source trees. Add a check that scripts/dtc/libfdt
directory exists before making this change.

[Peter: add comment explaining why]
Signed-off-by: Stefan Becker <chemobejk@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>

(cherry picked from commit f437bf547c)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-03-30 23:19:30 +02:00
Fabio Estevam
0bf367666c linux-headers: bump 4.{4, 9, 14, 15}.x series
Signed-off-by: Fabio Estevam <festevam@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 03b5b444f1)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-03-30 23:19:20 +02:00
Fabio Estevam
6e5767560e linux: bump default to version 4.15.9
Signed-off-by: Fabio Estevam <festevam@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit b076e05950)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-03-30 23:19:13 +02:00
Christian Stewart
16a52502ae docker-engine: add dependency on docker-proxy
docker-proxy is needed by docker-engine at runtime, and was
previously not included. This leads to the following error
when attempting to port-map ports to a container:

  $ docker run -p 8080:8080 nginx
  docker: Error response from daemon: driver failed programming external
  connectivity on endpoint:
  exec: "docker-proxy": executable file not found in $PATH.

Docker expects the docker-proxy binary to exist in the PATH.

Signed-off-by: Christian Stewart <christian@paral.in>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 8d125cd9f6)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-03-30 23:18:59 +02:00
Christian Stewart
b8ee32d841 docker-proxy: new package
Add docker-proxy package to Buildroot. Needed by docker-engine at
runtime, and previously not included. This leads to the following error
when attempting to port-map ports to a container:

  $ docker run -p 8080:8080 nginx
  docker: Error response from daemon: driver failed programming external
  connectivity on endpoint:
  exec: "docker-proxy": executable file not found in $PATH.

Docker expects the docker-proxy binary to exist in the PATH.

Signed-off-by: Christian Stewart <christian@paral.in>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 8175041003)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-03-30 23:18:49 +02:00
Vivien Didelot
1d51cb1fbd DEVELOPERS: add myself as the ts5500 maintainer
Add a new entry for myself listing the TS-5500 board directory and
defconfig file.

Signed-off-by: Vivien Didelot <vivien.didelot@savoirfairelinux.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 79586d2ed5)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-03-30 23:17:07 +02:00
Vivien Didelot
497b75717d board/technologic/ts5x00: rename to ts5500
Rename the confusing and misleading ts5x00 directory to a real reference
platform name, ts5500. The readme.txt file already states the support
for both TS-5500 and TS-5400 platforms.

Signed-off-by: Vivien Didelot <vivien.didelot@savoirfairelinux.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 9f17540b17)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-03-30 23:17:00 +02:00
Vivien Didelot
66c14b5429 board/technologic/ts5x00: bump kernel to 4.14
Bump the 3.17 kernel used for the Technologic Systems TS-5500 platform
to the latest LTS kernel 4.14.

This fixes the ts5x00_defconfig build with GCC 6.x.

The linux-3.17.config file has been renamed to linux-4.14.config to
match the new kernel version, and its changes are the result of make
linux-update-defconfig. However only comments are affected.

Signed-off-by: Vivien Didelot <vivien.didelot@savoirfairelinux.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 6461d76992)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-03-30 23:16:44 +02:00
Thomas Petazzoni
1186da11d8 uboot-tools: backport patch fixing build failure with libfdt-devel installed
U-Boot host programs fail to build when libfdt-devel is installed
system-wide, with errors like this:

      HOSTCC  tools/aisimage.o
    In file included from tools/../include/../lib/libfdt/libfdt.h:10:0,
                     from tools/../include/libfdt.h:1,
                     from tools/fdt_host.h:11,
                     from tools/imagetool.h:24,
                     from tools/aisimage.c:8:
    /usr/include/libfdt_env.h:70:30: error: conflicting types for ‘fdt64_t’
     typedef uint64_t FDT_BITWISE fdt64_t;
                                  ^~~~~~~
    In file included from <command-line>:0:0:
    ././include/libfdt_env.h:19:16: note: previous declaration of ‘fdt64_t’ was here
     typedef __be64 fdt64_t;
                    ^~~~~~~
    In file included from ././include/libfdt_env.h:12:0,
                     from <command-line>:0:
    /usr/include/libfdt_env.h:90:24: error: expected ‘)’ before ‘x’
     static inline uint32_t fdt32_to_cpu(fdt32_t x)
                            ^
This commit backports an upstream patch that fixes this problem.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 1cbfc94c5a)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-03-30 23:16:14 +02:00
Thomas Petazzoni
6c92158222 uboot: fix build when libfdt-devel is installed system-wide
When libfdt-devel is installed system-wide, the build of U-Boot host
programs currently fails with lots of:

  HOSTCC  tools/aisimage.o
In file included from tools/../include/../lib/libfdt/libfdt.h:10:0,
                 from tools/../include/libfdt.h:1,
                 from tools/fdt_host.h:11,
                 from tools/imagetool.h:24,
                 from tools/aisimage.c:8:
/usr/include/libfdt_env.h:70:30: error: conflicting types for ‘fdt64_t’
 typedef uint64_t FDT_BITWISE fdt64_t;
                              ^~~~~~~
In file included from <command-line>:0:0:
././include/libfdt_env.h:19:16: note: previous declaration of ‘fdt64_t’ was here
 typedef __be64 fdt64_t;
                ^~~~~~~
In file included from ././include/libfdt_env.h:12:0,
                 from <command-line>:0:
/usr/include/libfdt_env.h:90:24: error: expected ‘)’ before ‘x’
 static inline uint32_t fdt32_to_cpu(fdt32_t x)
                        ^

This commit adds a fixup in the U-Boot code to fix this problem. The
fixup is equivalent to applying upstream commit
http://git.denx.de/?p=u-boot.git;a=commitdiff;h=e0d20dc1521e74b82dbd69be53a048847798a90a,
but we can't use a patch for the uboot package, since people are using
arbitrary versions.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit bf73334232)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-03-30 23:15:50 +02:00
Peter Korsgaard
5d57f1405e python-jsonschema: needs python-functools32 when used with python 2.7
>From setup.py:

extras_require = {
    ..
    ":python_version=='2.7'": ["functools32"],

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Reviewed-by: Yegor Yefremov <yegorslists@googlemail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit dab4285f85)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-03-30 23:13:49 +02:00
Peter Korsgaard
2a18954aaa package: add python-functools32
Backport of the functools module from Python 3.2.3 for use on 2.7 and PyPy.

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Reviewed-by: Yegor Yefremov <yegorslists@googlemail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 146b8d31ea)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-03-30 23:13:35 +02:00
Martin Bark
444201fd1c package/nodejs: bump version to 8.10.0
See https://nodejs.org/en/blog/release/v8.10.0/

Signed-off-by: Martin Bark <martin@barkynet.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit df33aae5f5)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-03-30 23:12:27 +02:00
Thomas Petazzoni
6a8a67a561 configs/riotboard: remove defconfig
This defconfig fails to build with gcc 6.x, even though we switched to
using gcc 6.x as the default gcc version in May 2017.

This defconfig also hasn't seen any non-mechanical update since
November 2015.

So it's time to get rid of it, in order to remove the following build
failure:

  https://gitlab.com/buildroot.org/buildroot/-/jobs/55306938

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit f124c2f076)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-03-30 23:10:53 +02:00
Timo Ketola
4f98b6dcec fbgrab: Fix some problems in the patch metadata
The patch description was missing Upstream-Status tag. It was given in the
commit which added this patch but not in the patch itself as should be.

Signed-off-by tag accidentally didn't follow the usual format.

Signed-off-by: Timo Ketola <timo.ketola@exertus.fi>
Reviewed-by: Adrian Perez de Castro <aperez@igalia.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 1a0b4b2be2)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-03-30 23:10:25 +02:00
Fabio Estevam
3b76f2b3dd linux-headers: bump 4.{14, 15}.x series
Signed-off-by: Fabio Estevam <festevam@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 324cc39ba1)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-03-30 23:04:57 +02:00
Fabio Estevam
8c7454bb8e linux: bump default to version 4.15.8
Signed-off-by: Fabio Estevam <festevam@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 22508657e5)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-03-30 23:04:46 +02:00
Timo Ketola
7298952ec3 DEVELOPERS: Add myself as a maintainer of fbgrab
Daniel's address is bouncing and my touch on fbgrab is now the most
recent one.

Signed-off-by: Timo Ketola <timo.ketola@exertus.fi>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 8ea3dd2d62)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-03-30 22:58:02 +02:00
Timo Ketola
cd0318b020 fbgrab: add patch fixing pixel format report
When verbosive, fbgrab reports pixel format. Green and blue offset and
msb_right fields are accidentally swapped there. This commit adds a patch
which straightens them up.

Upstream-Status: Submitted [Gunnar Monell <gmo@linux.nu>]

Signed-off-by: Timo Ketola <timo.ketola@exertus.fi>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 5be0b3440e)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-03-30 22:14:29 +02:00
Fabrice Fontaine
1f725943e3 gtest: add license hash
Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 8eee2fbf09)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-03-30 22:14:00 +02:00
Fabrice Fontaine
0228f09242 libcoap: add licenses hash
Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit ae8f5b0d44)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-03-30 22:13:33 +02:00
Fabrice Fontaine
6a9816f668 rapidjson: add license hash
Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit daa534f48c)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-03-30 22:13:19 +02:00
Ezequiel Garcia
513a319f17 DEVELOPERS: Add myself to Ci20
Signed-off-by: Ezequiel Garcia <ezequiel@vanguardiasur.com.ar>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 95e0751ab4)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-03-30 22:12:02 +02:00
Yann E. MORIN
ac076f59de support/check-bin-arch: exclude kernel modules for merged /usr
When using a merged /usr, the kernel module path is really
/usr/lib/modules, as /lib is a symlink to usr/lib .

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Cc: Peter Korsgaard <peter@korsgaard.com>
Reviewed-by: Peter Korsgaard <peter@korsgaard.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 1b9a57442d)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-03-30 22:11:20 +02:00
Yann E. MORIN
086b43f698 spport/check-bin-arch: accept arbitrary per-package ignore paths
Some packages (mostly, out-of-tree) may want to install binary blobs for
another architecture,  outside the locations we currently exclude, like
in /opt or whatever...

Add support in check-bin-arch to accept any arbitrary location, that
individual package can each request to excude from the check, when they
are installed.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Peter Korsgaard <peter@korsgaard.com>
Cc: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 01d90f0d09)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-03-30 22:11:10 +02:00
Thomas Petazzoni
e6467dd337 configs/teliv_evk_pro3: remove defconfig
This defconfig fails to build with gcc 6.x, even though we switched to
using gcc 6.x as the default gcc version in May 2017.

It hasn't been updated since April 2017, and the original submitter,
Fabio Porcedda said:

  Unfortunately a newer kernel doesn't boot and I don't have the time
  to fix the issue. If having a defconfig that doesn't build on gcc
  6.x is unacceptable feel free to remove it.

So, let's get rid of this defconfig, which will remove the following
build error:

  https://gitlab.com/buildroot.org/buildroot/-/jobs/55306952

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 13fb1c4912)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-03-30 22:09:38 +02:00
Fabrice Fontaine
faa870b5f2 upmpdcli: add license hash
Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 8ee1a786cc)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-03-30 22:09:05 +02:00
Fabrice Fontaine
b407d9d3b6 libupnpp: fix license
Add license hash and fix LICENSE: since November 2016 (release 0.15.2),
libupnpp is licensed under LGPL-2.1+ and not GPL-2.0+

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit c0451e4bb1)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-03-30 21:07:42 +02:00
Fabrice Fontaine
2aa5a4dd46 libminiupnpc: add license hash
Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 452339abd6)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-03-30 21:07:34 +02:00
Peter Korsgaard
36c973353e linux: Config.in: correct typo in kernel compression format help text
s/build/built/.

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit d233cc72c4)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-03-30 21:06:51 +02:00
Baruch Siach
7cb200323b ntp: fix build without SSP support
In version 4.2.8p11 ntp changed its configure script build hardening
parameter to '--with-hardenfile'. Update the parameter name to avoid
-fstack-protector-all when the toolchain does not support this option.

Fixes:
http://autobuild.buildroot.net/results/60e/60e8b9864932f2cabc7deb43234abe168bd113c5/
http://autobuild.buildroot.net/results/592/592db6836817bb078a2f1146d2ce6241bf7997a3/
http://autobuild.buildroot.net/results/b07/b070fbc66a928888df8d2561dad3632778d55e0d/

Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 5766b6fb34)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-03-30 21:06:39 +02:00
Baruch Siach
6fae0a55e6 ntp: security bump to version 4.2.8p11
Fixed or improved security issues:

  CVE-2016-1549 (fixed in 4.2.8p7; this release adds protection): A
  malicious authenticated peer can create arbitrarily-many ephemeral
  associations in order to win the clock selection algorithm

  CVE-2018-7182: Buffer read overrun leads to undefined behavior and
  information leak

  CVE-2018-7170: Multiple authenticated ephemeral associations

  CVE-2018-7184: Interleaved symmetric mode cannot recover from bad
  state

  CVE-2018-7185: Unauthenticated packet can reset authenticated
  interleaved association

  CVE-2018-7183: ntpq:decodearr() can write beyond its buffer limit

Drop patch #3. libntpq_a_CFLAGS now includes NTP_HARD_CFLAGS via
AM_CFLAGS.

Add license file hash.

Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit da05d74805)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-03-30 21:05:55 +02:00
Thomas Petazzoni
a0743c2446 configs/ts4900: explicitly specify Linux kernel version
The ts4900 defconfig currently fails to build because it selects
kernel headers 4.12, but doesn't specify a kernel version, and
therefore 4.15 is built causing the following error:

Incorrect selection of kernel headers: expected 4.12.x, got 4.15.x

In commit 7c3a7d808e ("configs/ts4900:
bump kernel version to 4.12"), when this defconfig was switched from
using a vendor provided kernel to the mainline kernel, the kernel
version was no longer explicitly specified.

Since this commit indicated 4.12, and the kernel headers version
selected is also 4.12, we also use that as the fixed kernel version.

Fixes:

  https://gitlab.com/buildroot.org/buildroot/-/jobs/55306955

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit a3f2e977cd)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-03-30 21:02:05 +02:00
Thomas Petazzoni
d52be979de configs/freescale_imx6sxsabresd: U-Boot needs host-dtc
Fixes:

  https://gitlab.com/buildroot.org/buildroot/-/jobs/55306823

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 41dca854e6)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-03-30 21:00:54 +02:00
Thomas Petazzoni
9568eb493c configs/freescale_imx6qsabresd: U-Boot needs host-dtc
Fixes:

  https://gitlab.com/buildroot.org/buildroot/-/jobs/55306821

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit b732fed265)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-03-30 19:07:54 +02:00
Thomas Petazzoni
d499346b07 configs/imx6ulevk: U-Boot needs host-dtc
Fixes:

  https://gitlab.com/buildroot.org/buildroot/-/jobs/55306824

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit e9151fd0be)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-03-30 19:07:35 +02:00
Thomas Petazzoni
d0f2883c8e configs/freescale_imx7dsabresd: U-Boot needs host-dtc
Fixes:

  https://gitlab.com/buildroot.org/buildroot/-/jobs/55306825

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 63bab54656)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-03-30 19:07:21 +02:00
Thomas Petazzoni
11ca1bcbf4 configs/freescale_imx6dlsabreauto: U-Boot needs host-dtc
Fixes:

  https://gitlab.com/buildroot.org/buildroot/-/jobs/55306818

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 770a75600c)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-03-30 19:06:59 +02:00
Thomas Petazzoni
ea63e98581 configs/freescale_imx6dlsabresd: U-Boot needs host-dtc
Fixes:

  https://gitlab.com/buildroot.org/buildroot/-/jobs/55306819

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 3575f84c4e)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-03-30 19:06:53 +02:00
Thomas Petazzoni
60c40e84e2 configs/freescale_imx6sololiteevk: U-Boot needs host-dtc
Fixes:

  https://gitlab.com/buildroot.org/buildroot/-/jobs/55306822

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 3982d28cfb)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-03-30 19:06:36 +02:00
Thomas Petazzoni
11cb4976b0 configs/solidrun_macchiatobin_marvell: U-Boot needs host-dtc
Fixes:

  https://gitlab.com/buildroot.org/buildroot/-/jobs/55306949

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit d329ec701e)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-03-30 19:06:23 +02:00
Thomas Petazzoni
cff26cc9f8 configs/freescale_imx6qsabreauto: U-Boot needs host-dtc
Fixes:

  https://gitlab.com/buildroot.org/buildroot/-/jobs/55306820

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 11f07c2008)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-03-30 19:06:11 +02:00
Thomas Petazzoni
8c22be4afd configs/solidrun_macchiatobin_mainline: needs host-openssl for the Linux kernel build
Fixes:

  https://gitlab.com/buildroot.org/buildroot/-/jobs/55306948

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit ddbfee735e)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-03-30 19:05:21 +02:00
Thomas Petazzoni
abe9c16a6f configs/snps_arc700_axs101: needs host-openssl for the Linux kernel build
Fixes:

  https://gitlab.com/buildroot.org/buildroot/-/jobs/55306943

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit e929742b84)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-03-30 19:04:47 +02:00
Thomas Petazzoni
78414d1c1f configs/imx6-sabresd: needs host-openssl for the Linux kernel build
Fixes:

  https://gitlab.com/buildroot.org/buildroot/-/jobs/55306836

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 5dac3b9b8d)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-03-30 19:04:26 +02:00
Fabio Estevam
1230b03632 DEVELOPERS: Add some i.MX boards to my name
I would like to help maintaining the following defconfigs:

imx23evk_defconfig
imx6-sabreauto_defconfig
imx7dpico_defconfig
mx25pdk_defconfig
mx51evk_defconfig
mx53loco_defconfig

Signed-off-by: Fabio Estevam <festevam@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 8cffa8163c)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-03-30 19:03:47 +02:00
Thomas Petazzoni
daa228e122 configs/mx53loco: needs host-openssl for the Linux kernel build
Fixes:

  https://gitlab.com/buildroot.org/buildroot/-/jobs/55306856

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit da9678f426)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-03-30 19:03:23 +02:00
Thomas Petazzoni
4515f0580f configs/snps_archs38_vdk: needs host-openssl for the Linux kernel build
Fixes:

  https://gitlab.com/buildroot.org/buildroot/-/jobs/55306946

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 53f0ffe34a)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-03-30 19:02:43 +02:00
Thomas Petazzoni
67c4f45bf2 configs/snps_archs38_axs103: needs host-openssl for the Linux kernel build
Fixes:

  https://gitlab.com/buildroot.org/buildroot/-/jobs/55306944

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit bc575cf9de)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-03-30 19:02:13 +02:00
Thomas Petazzoni
8c911751d5 configs/orangepi_pc_plus: needs host-openssl for the Linux kernel build
Fixes:

  https://gitlab.com/buildroot.org/buildroot/-/jobs/55306885

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 661c81b2fe)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-03-30 19:00:40 +02:00
Thomas Petazzoni
c38cbb1e25 configs/orangepi_zero: needs host-openssl for the Linux kernel build
Fixes:

  https://gitlab.com/buildroot.org/buildroot/-/jobs/55306889

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit a645de1362)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-03-30 19:00:21 +02:00
Thomas Petazzoni
12c9d22517 configs/qemu_x86_defconfig: remove kernel options that need openssl
Wireless support ends up enabling CONFIG_SYSTEM_TRUSTED_KEYRING, which
requires openssl to be available on the host, so disable wireless
support, which isn't needed in Qemu.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 5c5f1b0743)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-03-30 18:59:38 +02:00
Thomas Petazzoni
092c773dc7 configs/qemu_x86_64_defconfig: remove kernel options that need openssl/libelf
The ORC unwinder requires libelf to be available on the host, so use
the frame pointer unwinder instead. Using the frame pointer unwinder
is probably good enough in our default Qemu configurations.

Wireless support ends up enabling CONFIG_SYSTEM_TRUSTED_KEYRING, which
requires openssl to be available on the host, so disable wireless
support, which isn't needed in Qemu.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 248161d6fa)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-03-30 18:59:29 +02:00
Thomas Petazzoni
803f16c967 linux: add BR2_LINUX_KERNEL_NEEDS_HOST_LIBELF
Some Linux kernel configuration options (such as CONFIG_UNWINDER_ORC)
require building a host program that needs libelf.

Users who have libelf installed on their system won't see a problem,
but users who don't have libelf installed will get a build
failure. Therefore, this commit adds an option that allows a user to
indicate that his Linux kernel configuration requires libelf. When
this option is enabled, we add host-elfutils to the dependencies of
the linux package (host-elfutils provides the libelf library).

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit f7cd72b3d4)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-03-30 18:59:16 +02:00
Thomas Petazzoni
cec7334651 linux: add BR2_LINUX_KERNEL_NEEDS_HOST_OPENSSL
Some Linux kernel configuration options (such as
CONFIG_SYSTEM_TRUSTED_KEYRING) require building a host program called
extract-cert, which itself needs OpenSSL.

Users having OpenSSL installed on their system won't see a problem,
but users who don't have OpenSSL installed will get a build
failure. This commit adds a new option that allows users to indicate
that their Linux configuration requires building host-openssl.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 93a7edf4bc)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-03-30 18:59:03 +02:00
Thomas Petazzoni
52e3da46e4 linux: fix passing of host CFLAGS and LDFLAGS
We were passing HOSTCFLAGS="$(HOSTCFLAGS)" to Linux. However:

 - HOSTCFLAGS in Buildroot doesn't exist, and is empty, so this
   assignment never did anything. The name of the variable in
   Buildroot in HOST_CFLAGS.

 - HOSTCFLAGS in Linux isn't used everywhere, and passing it overrides
   the default HOSTCFLAGS value defined in the main Linux kernel
   Makefile.

In addition, there is no way to pass additional host LDFLAGS in the
Linux kernel build system.

Therefore, we simply shoehorn our HOST_CFLAGS and HOST_LDFLAGS while
passing HOSTCC to the Linux kernel build system. This has been tested
to work fine with host OpenSSL and host libelf only available in
$(HOST_DIR).

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Tested-by: Frank Hunleth <fhunleth@troodon-software.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit dde090c299)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-03-30 18:58:31 +02:00
Matt Weber
b7f89c0c95 freescale_p1010rdb_pa_defconfig: remove board
This defconfig currently doesn't build with GCC6 (Linux 4.1).
https://gitlab.com/buildroot.org/buildroot/-/jobs/55306827

A maintainer w/board isn't available to make updates, so removing
this config.

Signed-off-by: Matthew Weber <matthew.weber@rockwellcollins.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 9f13f8c237)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-03-30 18:58:06 +02:00
Thomas Petazzoni
7c1e61cc6f configs/firefly_rk3288: remove defconfig
The original submitter of this defconfig:

"""
Sorry, unfortunately we no longer have the firefly board,
so we can't maintain it.
"""

And this defconfig fails to build with gcc 6.x, causing breakage in
the defconfig testing.

Fixes:

  https://gitlab.com/buildroot.org/buildroot/-/jobs/55306815
  https://gitlab.com/buildroot.org/buildroot/-/jobs/55306814

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit b0fd706c2f)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-03-30 18:57:53 +02:00
Thomas Petazzoni
70929c555b configs/ci40: remove defconfig
>From the original submitter of this defconfig:

"""
I no longer have access to ci40 board. It would be difficult for me to
maintain it.
"""

And this defconfig currently fails to build with gcc 6.x. Therefore,
drop it.

Fixes:

  https://gitlab.com/buildroot.org/buildroot/-/jobs/55306806

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 49d2638276)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-03-30 18:57:30 +02:00
Thomas Petazzoni
02f91fd033 configs/freescale_mpc8315erdb: remove defconfig
This defconfig currently fails to build the Linux kernel:

  https://gitlab.com/buildroot.org/buildroot/-/jobs/55306826

In addition, the U-Boot build had already been removed in commit
12c01e4a05
("configs/freescale_mpc8315erdb: remove U-Boot build"), back in
October 2016, and nobody bothered fixing it.

This defconfig was originally contributed and maintained by Gustavo
Zacarias, but he is no longer active in Buildroot, and nobody
expressed interest in this defconfig, so let's get rid of it.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit f08dd9f4cb)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-03-30 18:57:00 +02:00
Gaël PORTAY
872eaf5410 pkgconf: pkg-config.in: exec pkgconf
Replace the shell script with pkgconf without creating a new process.

Signed-off-by: Gaël PORTAY <gael.portay@savoirfairelinux.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit cc2f3a2a59)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-03-30 18:49:29 +02:00
Gaël PORTAY
36718c0f99 pkgconf: pkg-config.in: double quote $@
The shell expands "$@" as "$1" "$2" "$3"... while it expands $@ as $1 $2
$3. With the second form, we loses spaces in positional parameters.

As example, the following call

        pkg-config --cflags "one two" three

is wrapped as

        pkgconf --cflags one two three

while we are expecting

        pkgconf --cflags "one two" three

"$@" is really useful when writing wrappers. It passes the positional
arguments *as* they are given.

Double quote $@ to prevent from splitting elements.

Signed-off-by: Gaël PORTAY <gael.portay@savoirfairelinux.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit cc526b428b)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-03-30 18:49:15 +02:00
Yann E. MORIN
fe8c283123 package/linux: drop useless intermediate DTS booleans
Just use whatever the user specified in the list. An empty list means no
DTS was specified.

No need to add legacy option, as the behaviour does not change.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Simon van der Veldt <simon.vanderveldt@gmail.com>
Cc: Arnout Vandecappelle <arnout@mind.be>
Cc: Peter Korsgaard <peter@korsgaard.com>
Cc: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Tested-by: Joshua Henderson <joshua.henderson@microchip.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit f142f23ecf)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-03-30 18:46:55 +02:00
Simon van der Veldt
b9baac21be linux: allow both in-tree and custom dts files
For some boards, for example the Raspberry Pi, it's necessary to build
in-tree dts files as well as custom/out of tree dts-files (dt-blob.bin).
The existing logic made these two options exclusive, this commit changes
that to allow both in-tree as well as custom sources for dts files.

Signed-off-by: Simon van der Veldt <simon.vanderveldt@gmail.com>
[Arnout: re-wrap help, add extra empty line, change = into +=]
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>

(cherry picked from commit 382fe9f926)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-03-30 18:45:51 +02:00
Baruch Siach
c3f7138f13 toolchain: limit musl/kernel headers conflict workaround
The musl/kernel headers workaround was added in commit 196932cd91
(toolchain: workaround musl/kernel headers conflict) to fix definition
collisions in networking related headers between musl headers and kernel
headers. Kernel headers from version 4.15 and newer do not need this
workaround anymore since kernel commit c0bace798436bc (uapi libc compat:
add fallback for unsupported libcs). The C library does not have to
define the __GLIBC__ macro to make the __UAPI_DEF_* macros effective.

Updated the comment to accordingly.

Tested with the xl2tp package. This package fails to build with older
kernel headers without the workaround (struct in_pktinfo redefinition,
among others). With 4.15 headers, xl2tp builds fine with this patch
applied. That is, no workaround needed.

Cc: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 6afee03e3c)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-03-30 18:42:27 +02:00
Baruch Siach
bdf1952b3d musl: add more kernel headers guards
Kernel version 4.15 (not 4.16 as the musl commit log claims) allows
disabling of more parts of the kernel headers definitions. Add upstream
musl patch that defines the relevant macros. This solves issues of
networking related symbols redefinition in kernel headers that cause
headers conflicts. With that in place a subsequent commit will limit the
musl/kernel headers conflict avoidance workaround in Buildroot to kernel
headers older than 4.15. This workaround has been introduced in commit
196932cd91 (toolchain: workaround musl/kernel headers conflict).

Cc: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit b99ca5ce32)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-03-30 18:41:12 +02:00
Jan Kundrát
354eb7fb89 package/rauc: Version bump to 0.3
There's a bug in 0.2 which prevents proper operation when activated via
D-Bus, which is why I'm bumping this.

Signed-off-by: Jan Kundrát <jan.kundrat@cesnet.cz>
Link: https://github.com/rauc/rauc/issues/125
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit ab86389881)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-03-30 18:33:06 +02:00
Thomas Petazzoni
07a9d75ec1 support/config-fragments: remove bogus BR2_JLEVEL option
There is no reason to have a BR2_JLEVEL option in such toolchain
defconfigs.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 14fdb63804)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-03-30 18:21:34 +02:00
Thomas Petazzoni
ac771f06b0 support/config-fragments: add internal defconfigs for glibc and musl
While we have several defconfigs building internal toolchains with
uClibc, we don't have any building internal toolchain with glibc and
musl. However, having such defconfigs is nice when we bump the C
library version, in order to immediately get feedback on build
failures.

Note that while the ARC internal defconfig uses glibc, it uses the
special ARC glibc version, so it doesn't test version bumps of the
upstream glibc C library.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 6030986311)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-03-30 18:21:13 +02:00
Fabrice Fontaine
70c77467b9 libupnp: bump to version 1.6.25
Fixes segmentation fault in upmpdcli. Closes #10766

[Peter: add bugzilla reference]
Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 18f33eee21)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-03-24 21:46:10 +01:00
4234 changed files with 35579 additions and 59031 deletions

View File

@@ -1,5 +1,2 @@
[flake8]
exclude=
# copied from the kernel sources
utils/diffconfig
max-line-length=132

View File

@@ -30,20 +30,9 @@ check-DEVELOPERS:
script:
- "! utils/get-developers | grep -v 'No action specified'"
check-flake8:
before_script:
# Help flake8 to find the Python files without .py extension.
- find * -type f -name '*.py' > files.txt
- find * -type f -print0 | xargs -0 file | grep 'Python script' | cut -d':' -f1 >> files.txt
- sort -u files.txt | tee files.processed
script:
- python -m flake8 --statistics --count $(cat files.processed)
after_script:
- wc -l files.processed
check-package:
script:
- make check-package
- find . -type f \( -name '*.mk' -o -name '*.hash' \) -exec ./utils/check-package {} +
.defconfig: &defconfig
# Running the defconfigs for every push is too much, so limit to
@@ -62,11 +51,6 @@ check-package:
- output/build/packages-file-list.txt
.runtime_test: &runtime_test
# Running the runtime tests for every push is too much, so limit to
# explicit triggers through the API.
only:
- triggers
- tags
# Keep build directories so the rootfs can be an artifact of the job. The
# runner will clean up those files for us.
# Multiply every emulator timeout by 10 to avoid sporadic failures in
@@ -83,16 +67,12 @@ acmesystems_aria_g25_128mb_defconfig: *defconfig
acmesystems_aria_g25_256mb_defconfig: *defconfig
acmesystems_arietta_g25_128mb_defconfig: *defconfig
acmesystems_arietta_g25_256mb_defconfig: *defconfig
amarula_a64_relic_defconfig: *defconfig
amarula_vyasa_rk3288_defconfig: *defconfig
arcturus_ucls1012a_defconfig: *defconfig
arcturus_ucp1020_defconfig: *defconfig
arm_foundationv8_defconfig: *defconfig
arm_juno_defconfig: *defconfig
armadeus_apf27_defconfig: *defconfig
armadeus_apf28_defconfig: *defconfig
armadeus_apf51_defconfig: *defconfig
asus_tinker_rk3288_defconfig: *defconfig
at91sam9260eknf_defconfig: *defconfig
at91sam9g20dfc_defconfig: *defconfig
at91sam9g45m10ek_defconfig: *defconfig
@@ -115,7 +95,6 @@ atmel_sama5d4_xplained_mmc_defconfig: *defconfig
atmel_sama5d4_xplained_mmc_dev_defconfig: *defconfig
bananapi_m1_defconfig: *defconfig
bananapi_m2_plus_defconfig: *defconfig
bananapi_m2_ultra_defconfig: *defconfig
bananapi_m64_defconfig: *defconfig
bananapro_defconfig: *defconfig
beagleboardx15_defconfig: *defconfig
@@ -137,12 +116,10 @@ freescale_imx6qsabreauto_defconfig: *defconfig
freescale_imx6qsabresd_defconfig: *defconfig
freescale_imx6sxsabresd_defconfig: *defconfig
freescale_imx7dsabresd_defconfig: *defconfig
freescale_imx8mqevk_defconfig: *defconfig
freescale_p1025twr_defconfig: *defconfig
freescale_t1040d4rdb_defconfig: *defconfig
friendlyarm_nanopi_a64_defconfig: *defconfig
friendlyarm_nanopi_neo2_defconfig: *defconfig
galileo_defconfig: *defconfig
gdb_bfin_bf512_defconfig: *defconfig
grinn_chiliboard_defconfig: *defconfig
grinn_liteboard_defconfig: *defconfig
imx23evk_defconfig: *defconfig
@@ -153,7 +130,6 @@ imx6slevk_defconfig: *defconfig
imx6sx-sdb_defconfig: *defconfig
imx6ulevk_defconfig: *defconfig
imx6ulpico_defconfig: *defconfig
imx7d-sdb_defconfig: *defconfig
imx7dpico_defconfig: *defconfig
lego_ev3_defconfig: *defconfig
linksprite_pcduino_defconfig: *defconfig
@@ -172,14 +148,11 @@ nexbox_a95x_defconfig: *defconfig
nitrogen6sx_defconfig: *defconfig
nitrogen6x_defconfig: *defconfig
nitrogen7_defconfig: *defconfig
nitrogen8m_defconfig: *defconfig
odroidc2_defconfig: *defconfig
odroidxu4_defconfig: *defconfig
olimex_a10_olinuxino_lime_defconfig: *defconfig
olimex_a13_olinuxino_defconfig: *defconfig
olimex_a20_olinuxino_lime2_defconfig: *defconfig
olimex_a20_olinuxino_lime_defconfig: *defconfig
olimex_a20_olinuxino_lime_legacy_defconfig: *defconfig
olimex_a20_olinuxino_lime_mali_defconfig: *defconfig
olimex_a20_olinuxino_micro_defconfig: *defconfig
olimex_a64_olinuxino_defconfig: *defconfig
olimex_imx233_olinuxino_defconfig: *defconfig
@@ -217,13 +190,11 @@ qemu_mips64r6_malta_defconfig: *defconfig
qemu_mips64r6el_malta_defconfig: *defconfig
qemu_nios2_10m50_defconfig: *defconfig
qemu_or1k_defconfig: *defconfig
qemu_ppc64_e5500_defconfig: *defconfig
qemu_ppc64_pseries_defconfig: *defconfig
qemu_ppc64le_pseries_defconfig: *defconfig
qemu_ppc_g3beige_defconfig: *defconfig
qemu_ppc_mpc8544ds_defconfig: *defconfig
qemu_ppc_virtex_ml507_defconfig: *defconfig
qemu_riscv64_virt_defconfig: *defconfig
qemu_sh4_r2d_defconfig: *defconfig
qemu_sh4eb_r2d_defconfig: *defconfig
qemu_sparc64_sun4u_defconfig: *defconfig
@@ -233,13 +204,11 @@ qemu_x86_defconfig: *defconfig
qemu_xtensa_lx60_defconfig: *defconfig
qemu_xtensa_lx60_nommu_defconfig: *defconfig
raspberrypi0_defconfig: *defconfig
raspberrypi0w_defconfig: *defconfig
raspberrypi2_defconfig: *defconfig
raspberrypi3_64_defconfig: *defconfig
raspberrypi3_defconfig: *defconfig
raspberrypi3_qt5we_defconfig: *defconfig
raspberrypi_defconfig: *defconfig
riotboard_defconfig: *defconfig
roseapplepi_defconfig: *defconfig
s6lx9_microboard_defconfig: *defconfig
sheevaplug_defconfig: *defconfig
@@ -247,10 +216,8 @@ snps_aarch64_vdk_defconfig: *defconfig
snps_arc700_axs101_defconfig: *defconfig
snps_archs38_axs103_defconfig: *defconfig
snps_archs38_haps_defconfig: *defconfig
snps_archs38_hsdk_defconfig: *defconfig
snps_archs38_vdk_defconfig: *defconfig
socrates_cyclone5_defconfig: *defconfig
solidrun_clearfog_defconfig: *defconfig
solidrun_macchiatobin_mainline_defconfig: *defconfig
solidrun_macchiatobin_marvell_defconfig: *defconfig
stm32f429_disco_defconfig: *defconfig
@@ -267,17 +234,9 @@ zynq_microzed_defconfig: *defconfig
zynq_zc706_defconfig: *defconfig
zynq_zed_defconfig: *defconfig
zynq_zybo_defconfig: *defconfig
zynqmp_zcu106_defconfig: *defconfig
tests.boot.test_atf.TestATFAllwinner: *runtime_test
tests.boot.test_atf.TestATFMarvell: *runtime_test
tests.boot.test_atf.TestATFVexpress: *runtime_test
tests.core.test_file_capabilities.TestFileCapabilities: *runtime_test
tests.core.test_hardening.TestFortifyConserv: *runtime_test
tests.core.test_hardening.TestFortifyNone: *runtime_test
tests.core.test_hardening.TestRelro: *runtime_test
tests.core.test_hardening.TestRelroPartial: *runtime_test
tests.core.test_hardening.TestSspNone: *runtime_test
tests.core.test_hardening.TestSspStrong: *runtime_test
tests.core.test_post_scripts.TestPostScripts: *runtime_test
tests.core.test_rootfs_overlay.TestRootfsOverlay: *runtime_test
tests.core.test_timezone.TestGlibcAllTimezone: *runtime_test
@@ -287,7 +246,6 @@ tests.fs.test_ext.TestExt2: *runtime_test
tests.fs.test_ext.TestExt2r1: *runtime_test
tests.fs.test_ext.TestExt3: *runtime_test
tests.fs.test_ext.TestExt4: *runtime_test
tests.fs.test_f2fs.TestF2FS: *runtime_test
tests.fs.test_iso9660.TestIso9660Grub2External: *runtime_test
tests.fs.test_iso9660.TestIso9660Grub2ExternalCompress: *runtime_test
tests.fs.test_iso9660.TestIso9660Grub2Internal: *runtime_test
@@ -314,21 +272,8 @@ tests.package.test_ipython.TestIPythonPy2: *runtime_test
tests.package.test_ipython.TestIPythonPy3: *runtime_test
tests.package.test_python.TestPython2: *runtime_test
tests.package.test_python.TestPython3: *runtime_test
tests.package.test_python_autobahn.TestPythonPy2Autobahn: *runtime_test
tests.package.test_python_autobahn.TestPythonPy3Autobahn: *runtime_test
tests.package.test_python_cryptography.TestPythonPy2Cryptography: *runtime_test
tests.package.test_python_cryptography.TestPythonPy3Cryptography: *runtime_test
tests.package.test_python_incremental.TestPythonPy2Incremental: *runtime_test
tests.package.test_python_incremental.TestPythonPy3Incremental: *runtime_test
tests.package.test_python_twisted.TestPythonPy2Twisted: *runtime_test
tests.package.test_python_twisted.TestPythonPy3Twisted: *runtime_test
tests.package.test_python_txaio.TestPythonPy2Txaio: *runtime_test
tests.package.test_python_txaio.TestPythonPy3Txaio: *runtime_test
tests.package.test_python_txtorcon.TestPythonPy2Txtorcon: *runtime_test
tests.package.test_python_txtorcon.TestPythonPy3Txtorcon: *runtime_test
tests.package.test_rust.TestRust: *runtime_test
tests.package.test_rust.TestRustBin: *runtime_test
tests.package.test_syslog_ng.TestSyslogNg: *runtime_test
tests.toolchain.test_external.TestExternalToolchainBuildrootMusl: *runtime_test
tests.toolchain.test_external.TestExternalToolchainBuildrootuClibc: *runtime_test
tests.toolchain.test_external.TestExternalToolchainCCache: *runtime_test

View File

@@ -30,20 +30,9 @@ check-DEVELOPERS:
script:
- "! utils/get-developers | grep -v 'No action specified'"
check-flake8:
before_script:
# Help flake8 to find the Python files without .py extension.
- find * -type f -name '*.py' > files.txt
- find * -type f -print0 | xargs -0 file | grep 'Python script' | cut -d':' -f1 >> files.txt
- sort -u files.txt | tee files.processed
script:
- python -m flake8 --statistics --count $(cat files.processed)
after_script:
- wc -l files.processed
check-package:
script:
- make check-package
- find . -type f \( -name '*.mk' -o -name '*.hash' \) -exec ./utils/check-package {} +
.defconfig: &defconfig
# Running the defconfigs for every push is too much, so limit to
@@ -62,11 +51,6 @@ check-package:
- output/build/packages-file-list.txt
.runtime_test: &runtime_test
# Running the runtime tests for every push is too much, so limit to
# explicit triggers through the API.
only:
- triggers
- tags
# Keep build directories so the rootfs can be an artifact of the job. The
# runner will clean up those files for us.
# Multiply every emulator timeout by 10 to avoid sporadic failures in

895
CHANGES
View File

@@ -1,878 +1,3 @@
2018.11.1, Released December 20th, 2018
Important / security related fixes.
defconfigs: Fixes for bananapi m2 ultra, ci20
Download wrapper: Fix for urlencode handling
Updated/fixed packages: asterisk, docker-compose,
docker-engine, dt-utils, gnutls, go, grub, libbsd, libcurl,
libpgpme, libiscsi, liblo, libmpd, libopenssl, liboping,
libpam-tacplus, libpjsip, linux-firmware, liquid-dsp,
lua-cqueue, luvi, lxc, lynx, nginx, nodejs, openzwave, php,
pps-tools, proftpd, prosody, sdl2_net, squashfs, swupdate,
uclibc, vtu, webkitgtk, wine, xen
New packages: docker-cli
Issues resolved (http://bugs.uclibc.org):
#11426: pps-tools bash dependency
#11536: dt-utils building fails with glibc 2.28
2018.11, Released December 1st, 2018
Minor fixes.
Updated/fixed packages: c-ares, quagga, squid
2018.11-rc3, released November 30th, 2018
Fixes all over the tree.
Defconfigs: Fixes for Armadeus APF27, imx6sabre, Olimex A20
olinuxino lime legacy, Orangepi zero plus 2, PC, Riotboard.
graph-depends: Fix for package names starting with a non-alpha
character.
Updated/fixed packages: alsa-utils, botan, dante, domoticz,
dtc, freetype, gauche, gcc, gdb, ghostscript, glibc,
imx-usb-loader, libbsd, libid3tag, libkrb5, libmicrohttpd,
libopenssl, libsoxr, linux, motion, msgpack, mtd,
perl-net-ssleay, php, popt, python-numpy, qt5declarative,
samba4, shadowsocks-libev, stress-ng, systemd, usb_modeswitch,
webkitgtk, valgrind, weston, xfsprogs
2018.11-rc2, released November 21th, 2018
Fixes all over the tree.
fs: Drop intermediate tarball from the filesystem handling to
fix an issue with xattrs handling related to fakeroot. Ensure
tarball target includes xattrs.
download: Fix confusion in git submodule handling if dl/ is a
symlink.
genrandconfig: Fix missing newline in BR2_WGET handling,
causing the following line to be ignored. This would affect
BR2_ENABLE_DEBUG, BR2_INIT_BUSYBOX, BR2_INIT_SYSTEMD,
BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_EUDEV, BR2_STATIC_LIBS or
BR2_PACKAGE_PYTHON_PY_ONLY depending on the randomization.
show-build-order: Also include the dependencies of
rootfs-common.
Fix a number of build issues in packages for the recently
merged RISC-V architecture support.
Updated/fixed packages: dt-utils, easydbus, elfutils,
flare-engine, flatcc, glibc, gstreamer, gstreamer1, imx-uuc,
libassuan, libcorrect, libiscsi, libkrb5, libmicrohttpd,
libnftnl, libnspr, libnss, libsemanage, libsigsegv, libv4l,
ltp-testsuite, luv, luvi, make, ncmpc, netplug, openocd,
prosody, qemu, rpm, sconeserver, shadowsocks-libev,
supertuxcart, syslinux, systemd, trace-cmd, uclibc,
uclibc-ng-test, vtun, webkitgtk, weston, wireshark, xen,
xlib_libfontenc
Issues resolved (http://bugs.uclibc.org):
#11086: download/git submodule breaks on symlinked dl folder
#11216: Capabilities not applied to filesystem
2018.11-rc1, released November 9th, 2018
Fixes all over the tree and new features.
Architecture: RISC-V support (64bit) added.
Toolchain: Glibc bumped to 2.28. Fortran support for external
toolchains. ARM (Linaro) toolchains updated to 8.2-2018.08.
Hardening flags (RELRO) are now handled by the toolchain
wrapper instead of explicitly through CFLAGS/LDFLAGS, fixing a
number of issues.
Filesystems: Support for creating btrfs and f2fs filesystems
added.
Add a number of patches to fix build errors for host utilities
on modern distributions using glibc-2.28.
mkusers: Ensure existing group members are preserved when a
group is reprocessed.
printvars: Fix issue with exceeding shell command line length
limits for certain setups.
Workaround added for incompatibility issues between host-dtc
and older U-Boot and Linux kernel versions.
Detect and reject build paths containing '@', as this confuses
a number of packages, including GCC.
utils/diffconfig: Make it work for (non-Buildroot) config
files not using the BR2_ prefix.
New defconfigs: Amarula a64-relic, Bananapi m2 ultra, Embest
riotboard, Hardkernel Odroid XU-4, QEMU riscv64-virt.
olimex_a20_olinuxion_lime_mali is renamed to _legacy.
OpenCL infrastructure support added, similar to how OpenGL is
handled.
Linux-headers: Support for kernel headers from a custom
tarball / git repo added.
New packages: bird, bluez5_utils-headers, btrfs-progs,
checksec, davici, duktape, ell, haproxy, libclc, libcorrect,
libopencl, libopenresolv, nss-myhostname,
perl-apache-logformat-compiler, perl-appconfig,
perl-astro-suntime, perl-class-inspector, perl-class-load,
perl-class-method-modifiers, perl-class-std,
perl-class-std-fast, perl-cookie-baker, perl-data-dump,
perl-data-optlist, perl-data-uuid, perl-data-manip,
perl-dbd-mysql, perl-dbi, perl-devel-globaldestruction,
perl-devel-stacktrace, perl-devel-stacktrace-ashtml,
perl-device-serialport, perl-dist-checkconflicts,
perl-exporter-tiny, perl-file-sharedir, perl-file-slurp,
perl-filesys-notify-simple, perl-hash-multivalue,
perl-http-entity-parser, perl-http-headers-fast,
perl-http-multipartparser, perl-io-interface,
perl-io-socket-multicast, perl-json-maybexs, perl-mime-tools,
perl-module-implementation, perl-module-runtime, perl-moo,
perl-number-bytes-human, perl-package-stash, perl-params-util,
perl-plack, perl-posix-strftime-compiler, perl-role-tiny,
perl-streams-buffered, perl-sub-exporter-progressive,
perl-sub-install, perl-sub-quote, perl-sys-cpu,
perl-sys-meminfo, perl-sys-mmap, perl-time-parsedate,
perl-type-tiny, perl-www-form-urlencoded, perl-x10, pigpio,
python-async-timeout, python-falcon, python-fire,
python-mimeparse, python-multidict, python-passlib,
python-pigpio, python-pip, python-ply, python-py,
python-pyasn1, python-pyasn1-modules, python-pycryptodomex,
python-pyhamcrest, python-pysmi, python-scapy, python-semver,
python-serial-asyncio, python-typing, python-uvloop,
pythonwrapt, python-yarl, python-zeroconf, riscv-pk, sedutil,
spandsp, tini, waffle, xapian
Removed packages: bootutils, dsp-tools, expedite, gst-dsp,
xloader
Issues resolved (http://bugs.uclibc.org):
#11116: Buildroot should set PYTHON_EGG_CACHE instead of writing ..
#11156: In python3 module 'socket' has no attribute 'AF_BLUETOOTH'
#11166: Erlang bad argument on valid uint64 when crosscompiled on..
#11206: zlib: fails to build with Linaro toolchain, BR2_RELRO_FULL..
#11241: ACPID shouldn't depend on BR2_x86_64 || BR2_i386
#11251: Util scanpypi failes when package change - to _ in tar file
#11266: qt5base-5.11.1 does not compile with musl, complains about..
#11286: python-rpi-gpio only should depend on BR2_arm || BR2_aarch64
#11321: Latest master fails to build readline with RELRO FULL
#11326: sysvinit fails to build in latest GIT master
#11331: Internal application no longer builds with latest GIT master
#11336: nfs-utils fails to build in latest GIT master
#11351: build root-2018-08, linaro aarch64 compile error
#11376: mdmon binary missing
#11391: Valgind availability on ARM
#11396: uboot environment image checksum invalid if target is big endian
#11421: GCC error message for ARM Cortex-A9/ARM.V7
#11451: Can't find libmpfr.so.4 when using external toolchain on ubuntu..
#11481: Docs: Is external.desc required?
2018.08.3, Released November 26th, 2018
Important / security related fixes.
fs: Drop intermediate tarball from the filesystem handling to
fix an issue with xattrs handling related to fakeroot. Ensure
tarball target includes xattrs.
download: Fix confusion in git submodule handling if dl/ is a
symlink.
toolchain: Only allow enabling stack protection on
architectures with control flow integrity (CFI) support. Only
allow FORTIFY_SOURCE support on gcc >= 6.
genrandconfig: Fix missing newline in BR2_WGET handling,
causing the following line to be ignored. This would affect
BR2_ENABLE_DEBUG, BR2_INIT_BUSYBOX, BR2_INIT_SYSTEMD,
BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_EUDEV, BR2_STATIC_LIBS or
BR2_PACKAGE_PYTHON_PY_ONLY depending on the randomization.
show-build-order: Also include the dependencies of
rootfs-common.
Defconfigs: Fixes for Armadeus APF27, imx6sabre, Olimex A20
olinuxino lime legacy, Orangepi zero plus 2.
graph-depends: Fix for package names starting with a non-alpha
character.
Updated/fixed packages: attr, audit, bind, brotli, busybox,
dtc, easydbus, elfutils, flare-engine, flatcc, gauche, gcc,
giflib, gpsd, lcdproc, libcurl, libiscsi, libkcapi, libnfs,
libnspr, libnss, libsemanage, liburiparser, lighttpd,
lua-curl, mariadb, mmc, mosquitto, mysql, ncmpc, neardal,
netplug, network-manager, nfs-utils, nginx, openocd, openswan,
p11-kit, postgresql, prosody, qemu, qt, rpm, ruby, samba4,
squid, supertuxkart, systemd, tar, trace-cmd, traceroute,
twolame, uclibc, usb_modeswitch, vtun, webkitgtk, weston,
xdriver_xf86-video-geode, xlib_libfontenc, xserver_xorg-server
Issues resolved (http://bugs.uclibc.org):
#11086: download/git submodule breaks on symlinked dl folder
#11481: Docs: Is external.desc required?
2018.08.2, Released October 25th, 2018
Important / security related fixes.
Workaround added for incompatibility issues between host-dtc
and older U-Boot and Linux kernel versions.
Detect and reject build paths containing '@', as this confuses
a number of packages, including GCC.
utils/get-developers: Add -e option for use with git
send-email.
utils/diffconfig: Make it work for (non-Buildroot) config
files not using the BR2_ prefix.
u-boot: Fix for environment image handling on big endian
systems.
Updated/fixed packages: binutils, ca-certificates,
cups-filters, dtc, erlang, file, freetype, gcc, git, gvfs,
jasper, leveldb, libarchive, libssh, live555, ljlinenoise,
mariadb, mongoose, netsnmp, nmap, nodejs, ntp, open-plc-utils,
poco, psmisc, ptpd2, python-enum34, qemu, qt, qt5base,
setools, spice, spice-protocol, tinc, ustr, wireshark,
Issues resolved (http://bugs.uclibc.org):
#11396: uboot environment image checksum invalid if target is big endian
2018.08.1, Released October 7th, 2018
Important / security related fixes.
Add a number of patches to fix build errors for host utilities
on modern distributions using glibc-2.28.
mkusers: Ensure existing group members are preserved when a
group is reprocessed.
printvars: Fix issue with exceeding shell command line length
limits for certain setups.
Updated/fixed packages: acpid, android-tools, apache,
arp-scan, bandwidthd, bind, brltty, clamav, connman, cppcms,
domoticz, dtc, fio, gcc, gdb, ghostscript, gnupg, httpping,
igmpproxy, imlib2, ipsec-tools, libesmtp, libnfs, libxslt,
links, lua, mosquitto, nilfs-utils, ocrad, parted, php,
python-django, screen, shairport-sync, strongswan,
vboot-utils, webkitgtk, wireguard, x265 xen, xlib_libXdmcp,
xlib_libXfont, xlib_libXft, xlib_libxshmfence,
xutil_makedepend, zeromq
2018.08, Released September 6th, 2018
Minor fixes.
Known issues:
- Glibc 2.28 on the build host breaks compilation of a number
of host packages. 2018.08 contains fixes for some of these
packages, but not all. Consider building on hosts (or in
containers) using older Glibc versions.
- host-dtc 1.4.7 breaks compilation of older U-Boot and Linux
kernel configurations using FDT/DTC. Consider updating the
Linux kernel to >= 4.17 and U-Boot to >= 2018.07 or
backporting commit 9130ba8846 (scripts/dtc: Update to
upstream version v1.4.6-9-gaadd0b65c987) for the Linux
kernel / commit db405d1980 for U-Boot.
Alternatively revert commit 7b929ddcf0 (dtc: bump version to
1.4.7) and ensure your build host does not have the libfdt
development headers installed.
Updated/fixed packages: busybox, chipmunk, cutelyst,
domoticz, gcc, imagemagick, lcms2, libcurl, mediastreamer,
moarvm, php, qt, qt5virtualkeyboard, qt5webengine, screen,
sdl2, squashfs, uboot, xen
Issues resolved (http://bugs.uclibc.org):
#11261: ccache using wrong cached objects
#11276: Understanding the patch for kernel-4.9 and other..
2018.08-rc3, Released August 31th, 2018
Fixes all over the tree.
linux: additional improvements to the flex / bison dependency
handling, use system provided variant if available. Ensure
toolchain is available when configuring for 4.18+ support.
Download: Fix handling of primary sites using file://
Toolchain: Correct external toolchain musl detection for
static toolchains.
Updated/fixed packages: aircrack-ng, bison, brltty, busybox,
cutelyst, dropbear, gr-osmosdr, i2c-tools, json-c, libconfuse,
libkcapi, libsoup, libssh, liburiparser, mbedtls, mender,
mesa3d, minicom, mjpegtools, mutt, openpowerlink, openssh,
oracle-mysql, php, postgresql, pv, qt5base, qt5quickcontrols,
rauc, shairport-sync, systemd, xlib_libX11, zeromq,
Issues resolved (http://bugs.uclibc.org):
#11091: BR2_PRIMARY_SITE doesn't work (wget is selected...
#11141: WF111 package no longer available
#11211: Internal compiler error: Killed (program cc1plus)..
#11236: util-linux fails to build on Travis CI when python..
#11246: Glibc 2.28 - fails to build host-bison and host-m4
#11256: Add python-falcon and python-mimeparse packages
2018.08-rc2, Released August 20th, 2018
Fixes all over the tree.
pkg-kconfig: Support dependencies needed to run the
configurator, E.G. recent Linux kernel versions needing flex
and bison.
Defconfigs: ARM Juno: Bump ATF to fix a build
issue. Raspberrypi2: Bump rootfs size. Snps_archs38_vdk:
Correct /etc/inittab. Technologic ts7680: Correct genimage
configuration. Orange PI PC / Zero, Sheevaplug: Bump U-boot to
2018.07 to fix build issue. Ensure host-openssl is pulled in
for kernel builds where needed.
Updated/fixed packages: aircrack-ng, bind, boost,
boot-wrapper-aarch64, bzip2, busybox, chrony, cryptsetup,
dahdi-tools, dbus, domoticz, eigen, ipsec-tools, libarchive,
libfuse, libgit2, libopenssl, libselinux, lighttpd, lvm2, m4,
makedevs, mariadb, mesa3d-headers, mono, ncmpc, ncurses,
nodejs, php, python-django, python-pyqt5, qt5base,
qt5serialbus, ruby, samba4, uboot-tools, uclibc, vlc,
waylandpp, wireless_tools, wireshark, wpa_supplicant, mtd,
xdriver_xf86-video-ati, xserver_xorg-server
Issues resolved (http://bugs.uclibc.org):
#10781: cryptsetup luksOpen container_file container causes..
#10996: bogus musl ARM toolchain
#11191: xattr and check-package issue
2018.08-rc1, Released August 5th, 2018
Toolchain:
- add support for gcc 8.x, switch to gcc 7.x as the default
version
- add support for gdb 8.1, switch to gdb 8.0 as the default
and remove gdb 7.10/7.11
- add support for binutils 2.31
- NIOSII CodeSourcery toolchain updated
- Linaro AArch64 BE toolchain added, and other Linaro
toolchains updated
- Synopsys ARC pre-built toolchain updated
Architecture: add support for ARM Cortex-M7
Major updates:
- systemd bumped to 239
- Qt5 bumped to 5.11.1
- Rust bumped to 1.27
- GStreamer stack bumped to 1.14.2
- X.org server bumped to 1.20, and all X.org proto packages
replaced by the single xorgproto package
- i.MX6 support packages bumped to 6.2.4
- i.MX Vivante graphics version bumped to 6.2.4.p1.2,
adding support for Wayland and i.MX8MQ platforms
Linux: bumped to 4.17 by default.
Infrastructure: new package infrastructure added for packages
using the Meson build system
New packages: at-spi2-atk, at-spi2-core, capnproto, cmocka,
corkscrew, cutelyst, davfs2, flatcc, libidn2, libgit2,
libopusenc, mender, nghttp2, perl-convert-asn1, perl-crypt-blowfish,
perl-crypt-cbc, perl-digest-md5, perl-mime-base64-urlsafe,
perl-mojolicious-plugin-authentication, perl-net-ping,
perl-net-snmp, perl-net-ssh2, perl-net-telnet, pigz,
python-reentry, python-request-id, python-validators,
python-webob, shadowsocks-libev, speexdsp, xorgproto, wampcc
New defconfigs: NXP i.MX7D SDB, Boundary Devices Nitrogen 8M,
Olimex A10 OLinuxino, ZynqMP ZCU106
Removed packages: all xproto_* have been removed and replaced
by xorgproto
Issues resolved (http://bugs.uclibc.org):
#9411: MUSL build with RT Error relocating /lib/libgcc_s.so.1:
__cpu_indicator_init: symbol not found
#9921: lockfile module within python-daemon not available
#10341: gdb install of py files when using buildroot toolchain
includes build path
#10661: /etc/init.d/S29netplug starts multiple instances of netplugd
#10751: Missing dependency in pulseaudio package
#10811: kodi-17.6-Krypton does not compile for freescale_* devices
#10856: openblas on qemu_x86_64_defconfig fails with
"sgemm_kernel.o: No such file or directory"
#11056: Compiling a file that uses libdrm headers fails with:
fatal error: drm.h: No such file or directory
#11061: support/download: git version=master broken
#11071: Building postgresql package on Debian 9.4 x64 for armel target fails
#11076: Docker containerd installed to incorrect path
#11101: host-patchelf Endian Issue with relative RPATH
#11111: raspberry pi 3 b+: missing BSP for 64-bit kernel
#11121: statfs call corrupts memory struct statfs too small
#11181: Switching toolchain does not work
2018.05.3, Released October 6th, 2018
Important / security related fixes.
Add a number of patches to fix build errors for host utilities
on modern distributions using glibc-2.28.
mkusers: Ensure existing group members are preserved when a
group is reprocessed.
printvars: Fix issue with exceeding shell command line length
limits for certain setups.
Updated/fixed packages: acpid, android-tools, apache,
arp-scan, bandwidthd, bind, bison, brltty, chipmunk, connman,
cppcms, fio, gcc, ghostscript, gnupg, httping, igmpproxy,
imagemagick, imlib2, ipsec-tools, lcm2, libcurl, libesmtp,
libnfs, libssh, libxslt, links, mediastreamer, minicom,
moarvm, nilfs-utils, ocrad, parted, php, postgresql, pv,
python-django, qt, qt5quickcontrols, qt5webengine, screen,
sdl2, shairport-sync, squashfs, strongswan, vboot-utils,
webkitgtk, wireguard, x265, xen, xlib_libXfont, xlib_libXft,
xlib_libxshmfence, zeromq
2018.05.2, Released August 28th, 2018
Important / security related fixes.
Defconfigs: Raspberrypi2: Bump rootfs size, T7680: Fix
genimage.cfg issue, ARM Juno: Bump ATF to v1.3 to fix build
issue.
Updated/fixed packages: acl, attr, apache, bind,
boot-wrapper-aarch64, brltty, bzip2, chrony, crda, cryptsetup,
dahdi-tools, dmidecode, dropbear, eigen, ffmpeg, gawk, gcc,
ghostscript, gnutls, imx-gpu-viv, ipsec-tools, libarchive,
libfuse, libglib2, libopenssl, libselinux, libsoup, lighttpd,
linuxptp, lttng-modules, lttng-tools, lua-flu, lvm2, m4,
makedevs, mariadb, mbedtls, mesa3d-heders, mtd, ncurses,
nodejs, openssh, php, python-django, rauc, ruby, samba4,
stress-ng, ti-utils, uboot-tools, uclibc, vim, waylandpp,
wireless_tools, wireless-regdb, wireshark, wpa_supplicant,
xorriso, znc
Issues resolved (http://bugs.uclibc.org):
#10781: cryptsetup luksOpen container_file container causes..
#10986: Installing package attr when already supplied by..
#11191: xattr and check-package issue
2018.05.1, Released July 20th, 2018
Important / security related fixes.
U-Boot: Ensure host version of ncurses is picked up and not
host-ncurses built by buildroot, as that otherwise causes
widechar/non-widechar conflicts and corrupted menuconfig
menus.
Linux: Enable CONFIG_PERF_EVENTS when perf is enabled.
Toolchain: ARC tools updated to arc-2018.03.
pkg-stats: Fix python 3.x compatibility.
dl-wrapper: Fix support for URIs containing '+', fix
no-check-hash for inferred site method.
Defconfigs: Raspberrypi3: Bump rootfs size, Minnowboard-max:
Support ethernet on Turbot variant.
Updated/fixed packages: audit, bind, btrfs-progs, cifs-utils,
clamav, collectd, coreutils, docker-containerd, dos2unix,
edid-decode, file, gcc, gdb, gnupg, gnupg2, heimdal, hidapi,
imagemagick, libcurl, libgcrypt, libglib2, liblogging,
libostree, libressl, libsoup, libv4l, libvncserver, libvorbis,
libwebsockets, libxslt, lm-sensors, mariadb, mpg123, ncurses,
network-manager, nodejs, patchelf, perl, php-amqp, pinentry,
pixiewps, qpdf, qt53d, qt5base, qt5charts, qt5script, redis,
systemd, triggerhappy, uboot, wireguard, wireless-regdb,
wireshark
2018.05, Released June 1st, 2018
Minor fixes.
Download: Work around for hanging connections for packages
from CVS, by adding a 10 minute max timeout.
Updated/fixed packages: binutils, clang, dash, expect, git,
glibc, jpeg-turbo, libjpeg, log4cplus, openvmtools, xen,
Issues resolved (http://bugs.uclibc.org):
#11051: runtime issue on STM32 with usage of binutils 2.29.x
2018.05-rc3, Released May 28th, 2018
Fixes all over the tree.
Toolchain: ARC tools updated to arc-2018.03-rc2.
Fs: Ensure hard links in TARGET_DIR are correctly copied for
filesystem input. With the recent changes to the file system
generation logic, hard links were "expanded" in file system
images leading to bloated rootfs images for setups with hard
links.
Infrastructure: Error out for packages using the 'local'
method but forgetting to specify <pkg>_SITE.
Build rpcgen for the host when needed to support distributions
no longer shipping rpcgen with glibc (E.G. recent Fedora).
Updated/fixed packages: autofs, bash-completion, binutils,
busybox, cjson, elf2flt, libcoap, libcurl, libtirpc, lrzsz,
poppler, procps-ng, qt-webkit-kiosk, quota, samba4, xfsprogs
Issues resolved (http://bugs.uclibc.org):
#11031: ld-elf2flt: host/bin/ld.real': execvp: No such file..
#11036: C compiler cannot create executables
#11046: Git package binaries are ~180MB (compared to ~20MB in..
2018.05-rc2, Released May 22nd, 2018
Fixes all over the tree.
Dependencies: Check that the current working directory (.)
isn't listed in PATH as that causes various build issues.
Manual: Clarify that git branch names may not be used as
version identifiers. This has never been supported, but was
kind of working (with some limitations) before the git
download rework - Now it does not work at all.
Linux: Ensure host version of ncurses is picked up and not
host-ncurses built by buildroot, as that otherwise causes
widechar/non-widechar conflicts and corrupted menuconfig
menus.
Packages: Renamed a number of package options not prefixed
with BR2_PACKAGE_<pkg> for consstency.
Download infrastructure: Fix file:// protocol handling after
download rework.
Updated/fixed packages: acl, apr-util, asterisk, attr,
bluez5_utils, cifs-utils, clamav, clang, cups-filters,
dahdi-linux, exim, faketime, gdb, go, gst1-plugins-bad,
imx-mkimage, ipsec-tools, jamvm, janus-gateway,
jquery-ui-themes, libcap, libcurl, libftdi, libkcapi, libkrb5,
libmediaart, libmodbus, libmodplug, libmpd,
libnetfilter_cthelper, libnetfilter_cttimeout, libnfc,
libnfnetlink, libnss, liboauth, libogg, libosip2,
libpam-radius-auth, libpcap, libpciaccess, llvm, log4cplus,
ltrace, lynx, mbedtls, modem-manager, nfs-utils,
python-cython, python-websockets, qt5cinex, qt5wayland, rauc,
snort, strace, ti-sgx-km, transmission, wavpack, wget, woff2,
xen, zmqpp, znc, zstd
Issues resolved (http://bugs.uclibc.org):
#10986: Installing package attr when already supplied by...
#11011: BUildroot for Raspberry Pi 2
#11016: Wrong compiler used for external user host packages
2018.05-rc1, Released May 9th, 2018
Toolchain: glibc bumped to 2.27, musl bumped to 1.1.19,
uClibc-ng 1.0.30, Linux kernel headers bumped to 4.16.x.
Architecture: support for the Blackfin architecture has been
removed, as it was removed from Linux upstream, poorly
maintained in binutils/gdb, and abandoned by Analog Devices.
Numerous packages updated to have hashes for their license
files.
Systemd can now be built with uClibc toolchains.
Linux: addition of BR2_LINUX_KERNEL_NEEDS_HOST_LIBELF and
BR2_LINUX_KERNEL_NEEDS_HOST_OPENSSL to support building Linux
kernel configurations that need libelf on the host or openssl
on the host.
Coding style:
- all Python scripts are now verified with flake8
- check-package extended to check all Config.in and .mk files
in tree, not only the ones in package/
Infrastructure:
- The download infrastructure has seen a major overhaul, with
the main visible new feature being Git caching: a package
fetched from Git no longer needs to be re-cloned entirely
everytime its version is changed. Anoter visible change is
that the download folder now has subfolders per package. See
http://lists.busybox.net/pipermail/buildroot/2018-April/217923.html
for more details about those changes.
- The logic that generates the root filesystem images has been
reworked, with the main goal of allowing several filesystem
images to be produced in parallel, also a requirement for
top-level parallel build. Now, a .tar filesystem image is
always created, and re-extracted in a private directory to
create each format-specific filesystem image.
- A new package infrastructure was introduced for Go-based
packages: golang-package.
- Dependencies on extraction tools are now handled as proper
per-package dependencies, using
<pkg>_EXTRACT_DEPENDENCIES. Beyond a cleanup, this is also a
preparation step for top-level parallel build support.
- When a file being downloaded is part of a package with a
.hash file, but there is no hash listed for this file, the
file is now preserved in the download directory rather than
removed. This helps when updating a package, as it gives the
ability to easily calculate the hash of the file.
- Addition of '<pkg>-show-recursive-depends' and
'<pkg>-show-recursive-rdepends' make targets, to
respectively display the recursive list of dependencies and
the recursive list of reverse dependencies of a given
package.
- The /etc/shells file is now automatically generated with the
list of shell programs installed on the system.
- Addition of -Ofast optimization level as an available
option.
Major updates: Go updated to 1.10, Erlang bumped to 20.3, Qt5
bumped to 5.10.1.
New packages: 18xx-ti-utils, abootimg, bluez-alsa, brotli,
chipmunk, clang, docker-compose, docker-proxy, flare-engine,
flare-game, gst1-interpipe, gstreamer1-editing-services,
hackrf, i2pd, imx-alsa-plugins, imx-mkimage, libcdio-paranoia,
libkrb5, llvm, pixiewps, python-backports-ssl-match-hostname,
python-cached-property, python-cython, python-docker,
python-dockerpty, python-docker-pycreds,
python-flask-sqlalchemy, python-functools32, python-influxdb,
python-json-models, python-libusb1, python-networkx,
python-psycopg2, python-pymodbus, python-sqlalchemy,
python-subprocess32, python-texttable,
python-websocket-client, python-yieldfrom, quotatool, reaver,
snort, sunxi-mali-mainline, sunxi-mali-mainline-driver, tk,
tpm2-abrmd, tpm2-tools, tpm2-tss, udftools, vte, woff2.
New defconfigs: ARC HS Development Kit, Arcturus ucls1012a,
Freescale i.MX6UL EVK (with vendor kernel), Freescale i.MX6
SoloLite EVK (with vendor kernel), Freescale i.MX31 3Stack,
Freescale i.MX8Q EVK Freescale p1025twr, Freescale t1040d4rdb,
Qemu PPC64 E5500, SolidRun ClearFog Base, Tinker RK3288, Vyasa
RK3288,
Removed packages: iqvlinux, kodi-adsp-*, mplayer
Removed defconfigs: ci40, firefly_rk3288,
freescale_p1010rdb_pa, freescale_mpc8315erdb, riotboard,
teliv_evk_pro3
Issues resolved (http://bugs.uclibc.org):
#10151: toolchain eclipse register : fails with a custom
BR2_HOST_DIR
#10511: Packages get downloaded uncompressed with wget
#10531: QtWebengine doesn't build if the host hasn't a 32 bits
C++ compiler working
#10846: error in compiling gnutls
#10886: openssl-1.0.2n fails to build
#10896: /bin/sh not in /etc/shells
#10961: Grub2 fails to build for x86_64 when BR2_SSP_ALL is
enabled
2018.02.8, Released November 26th, 2018
Important / security related fixes.
fs: Drop intermediate tarball from the filesystem handling to
fix an issue with xattrs handling related to fakeroot. Ensure
tarball target includes xattrs.
download: Fix confusion in git submodule handling if dl/ is a
symlink.
toolchain: Only allow enabling stack protection on
architectures with control flow integrity (CFI) support. Only
allow FORTIFY_SOURCE support on gcc >= 6.
genrandconfig: Fix missing newline in BR2_WGET handling,
causing the following line to be ignored. This would affect
BR2_ENABLE_DEBUG, BR2_INIT_BUSYBOX, BR2_INIT_SYSTEMD,
BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_EUDEV, BR2_STATIC_LIBS or
BR2_PACKAGE_PYTHON_PY_ONLY depending on the randomization.
show-build-order: Also include the dependencies of
rootfs-common.
Defconfigs: Fixes for Armadeus APF27, imx6sabre.
graph-depends: Fix for package names starting with a non-alpha
character.
Updated/fixed packages: attr, audit, bind, brotli, easydbus,
elfutils, gauche, gcc, giflib, gpsd, lcdproc, libcurl,
libiscsi, libnfs, libnspr, libnss, libkcapi, libsemanage,
liburiparser, lighttpd, linux, lua-curl, mariadb, mmc-utils,
mosquitto, mysql, neardal, netplug, network-manager,
nfs-utils, nginx, openocd, openswan, p11-kit, postgresql,
prosody, qemu, qt, rpm, ruby, samba4, squid, supertuxkart,
systemd, tar, trace-cmd, traceroute, twolame, uclibc,
usb_modeswitch, vtun, webkitgtk, xdriver_xf86-video-geode,
xlib_libfontenc, xproto_inputproto, xserver_xorg-server
Issues resolved (http://bugs.uclibc.org):
#11086: download/git submodule breaks on symlinked dl folder
#11251: Util scanpypi failes when package change - to _ in..
#11476: stdio2.h error invalid use of __builtin_va_arg_pack
#11481: Docs: Is external.desc required?
2018.02.7, Released October 25th, 2018
Important / security related fixes.
Detect and reject build paths containing '@', as this confuses
a number of packages, including GCC.
utils/get-developers: Add -e option for use with git
send-email.
utils/diffconfig: Make it work for (non-Buildroot) config
files not using the BR2_ prefix.
u-boot: Fix for environment image handling on big endian
systems.
Updated/fixed packages: binutils, ca-certificates,
cups-filters, erlang, file, freetype, gcc, git, gvfs, leveldb,
libarchive, libcurl, libssh, live555, ljlinenoise, mariadb,
mongoose, netsnmp, nmap, nodejs, ntp, open-plc-utils, poco,
psmisc, ptpd2, python-enum34, qemu, qt, qt5base, setools,
spice, spice-protocol, tinc, ustr, wireshark
Issues resolved (http://bugs.uclibc.org):
#11396: uboot environment image checksum invalid if target is big endian
2018.02.6, Released October 7th, 2018
Important / security related fixes.
Add a number of patches to fix build errors for host utilities
on modern distributions using glibc-2.28.
mkusers: Ensure existing group members are preserved when a
group is reprocessed.
printvars: Fix issue with exceeding shell command line length
limits for certain setups.
Updated/fixes packages: acpid, android-tools, apache,
arp-scan, bandwidthd, bind, bison, clamav, connman, cppcms,
cramfs, fio, gcc, ghostscript, glibc, gnupg, httping,
igmpproxy, imagemagick, imlib2, ipsec-tools, lcms2, libcurl,
libesmtp, libnfs, libssh, libxslt, links, linuxptp,
mediastreamer, minicom, moarvm, nilfs-utils, ocrad, parted,
php, pv, python-django, qt, qt5quickcontrols, qt5webengine,
screen, sdl2, shairport-sync, squashfs, strongswan,
vboot-utils, webkitgtk, wireguard, x265, xen, xlib_libXfont,
xlib_libXft
New packages: brotli, woff2
2018.02.5, Released August 29th, 2018
Important / security related fixes.
Defconfigs: Raspberrypi2: Bump rootfs size, T7680: Fix
genimage.cfg issue, ARM Juno: Bump ATF to v1.3 to fix build
issue.
Updated/fixed packages: acl, apache, attr, bind,
boot-wrapper-aarch64, brltty, bzip2, chrony, crda, cryptsetup,
dahdi-tools, dmidecode, dropbear, eigen, erlang, ffmpeg, gawk,
gcc, ghostscript, gnutls, ipsec-tools, libarchive, libfuse,
libopenssl, libselinux, libsoup, lighttpd, linuxptp,
lttng-modules, lttng-tools, lua-flu, lvm2, m4, makedevs,
mariadb, mbedtls, mesa3d-headers, mtd, ncurses, nodejs,
openssh, php, postgresql, python-django, qt5xmlpatterns, ruby,
samba4, shairport-sync, stress-ng, ti-utils, uboot-tools, vim,
waylandpp, wireless_tools, wireshark, wpa_supplicant, xorriso,
znc
Issues resolved (http://bugs.uclibc.org):
#10781: cryptsetup luksOpen container_file container causes..
#10986: Installing package attr when already supplied by..
#11191: xattr and check-package issue
2018.02.4, Released July 21th, 2018
Important / security related fixes.
U-Boot: Ensure host version of ncurses is picked up and not
host-ncurses built by buildroot, as that otherwise causes
widechar/non-widechar conflicts and corrupted menuconfig
menus.
Linux: Enable CONFIG_PERF_EVENTS when perf is enabled.
Defconfigs: Raspberrypi3: Bump rootfs size, Minnowboard-max:
Support ethernet on Turbot variant.
Updated/fixed packages: bind, clamav, collectd, dos2unix,
edid-decode, gcc, gdb, heimdal, hidapi, imx-gpu-viv, libcurl,
libglib2, liblogging, libostree, libsoup, libv4l, lm-sensors,
ncurses, network-manager, patchelf, pinentry, procps-ng, qpdf,
qt5, qt53d, qt5base, qt5charts, qt5script, qt5serialport,
systemd, wireguard, wireless-regdb
Issues resolved (http://bugs.uclibc.org):
#11101: host-patchelf Endian Issue with relative RPATH
2018.02.3, Released June 18th, 2018
Important / security related fixes.
@@ -1867,26 +992,6 @@
#9846: musl libc not installed correctly in target folder
#9856: build libubox failed on ubuntu 17.04 64bit
2017.02.11, Released April 11th, 2018
Important / security related fixes.
dependencies: Blacklist tar 1.30+ and build our own host-tar
if needed as tar 1.30+ changed the --numeric-owner output for
long path names. Build host-tar before other host-dependencies
as they need it to extract their source tarballs.
Updated/fixed packages: apache, busybox, clamav, dhcp,
dnsmasq, dovecot, exim, imagemagick, irssi, jq, libcurl,
libpjsip, librsvg, libtasn1, libvorbis, libxml2, lz4, mariadb,
mbedtls, mosquitto, ntp, openblas, opencv3, openssl, patch,
postgresql, python-webpy, qt53d, qt5tools, quagga, rsync,
samba4, sngrep, tremor, wavpack, wireshark, xerces, xterm
Issues resolved (http://bugs.uclibc.org):
#10856: openblas on qemu_x86_64_defconfig fails with "sgemm_..
2017.02.10, Released January 31st, 2018
Important / security related fixes.

View File

@@ -67,9 +67,6 @@ config BR2_HOST_GCC_AT_LEAST_8
default y if BR2_HOST_GCC_VERSION = "8"
select BR2_HOST_GCC_AT_LEAST_7
# When adding new entries above, be sure to update
# the HOSTCC_MAX_VERSION variable in the Makefile.
# Hidden boolean selected by packages in need of Java in order to build
# (example: kodi)
config BR2_NEEDS_HOST_JAVA
@@ -183,8 +180,8 @@ config BR2_TAR_OPTIONS
default ""
help
Options to pass to tar when extracting the sources.
E.g. " -v --exclude='*.svn*'" to exclude all .svn internal
files and to be verbose.
E.g. " -v --exclude='*.svn*'" to exclude all .svn internal files
and to be verbose.
endmenu
@@ -208,9 +205,6 @@ config BR2_DL_DIR
If the Linux shell environment has defined the BR2_DL_DIR
environment variable, then this overrides this configuration
item.
The directory is organized with a subdirectory for each
package. Each package has its own $(LIBFOO_DL_DIR) variable
that can be used to find the correct path.
The default is $(TOPDIR)/dl
@@ -435,8 +429,8 @@ endif
config BR2_STRIP_strip
bool "strip target binaries"
default y
depends on !BR2_PACKAGE_HOST_ELF2FLT
default y
help
Binaries and libraries in the target filesystem will be
stripped using the normal 'strip' command. This allows to save
@@ -446,16 +440,16 @@ config BR2_STRIP_strip
config BR2_STRIP_EXCLUDE_FILES
string "executables that should not be stripped"
default ""
depends on BR2_STRIP_strip
default ""
help
You may specify a space-separated list of binaries and
libraries here that should not be stripped on the target.
config BR2_STRIP_EXCLUDE_DIRS
string "directories that should be skipped when stripping"
default ""
depends on BR2_STRIP_strip
default ""
help
You may specify a space-separated list of directories that
should be skipped when stripping. Binaries and libraries in
@@ -541,21 +535,11 @@ config BR2_OPTIMIZE_S
-ftree-vect-loop-version
This is the default.
config BR2_OPTIMIZE_FAST
bool "optimize for fast"
depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_6
help
Optimize for fast. Disregard strict standards
compliance. -Ofast enables all -O3 optimizations. It also
enables optimizations that are not valid for all
standard-compliant programs. It turns on -ffast-math and the
Fortran-specific -fstack-arrays, unless -fmax-stack-var-size
is specified, and -fno-protect-parens.
endchoice
config BR2_GOOGLE_BREAKPAD_ENABLE
bool "Enable google-breakpad support"
select BR2_PACKAGE_GOOGLE_BREAKPAD
depends on BR2_INSTALL_LIBSTDCPP
depends on BR2_HOST_GCC_AT_LEAST_4_8 # C++11
depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 # C++11
@@ -564,7 +548,6 @@ config BR2_GOOGLE_BREAKPAD_ENABLE
depends on (BR2_TOOLCHAIN_USES_GLIBC || BR2_TOOLCHAIN_USES_UCLIBC)
depends on BR2_PACKAGE_GOOGLE_BREAKPAD_ARCH_SUPPORTS
depends on BR2_PACKAGE_HOST_GOOGLE_BREAKPAD_ARCH_SUPPORTS
select BR2_PACKAGE_GOOGLE_BREAKPAD
help
This option will enable the use of google breakpad, a library
and tool suite that allows you to distribute an application to
@@ -631,6 +614,7 @@ config BR2_SHARED_STATIC_LIBS
endchoice
config BR2_PACKAGE_OVERRIDE_FILE
string "location of a package override file"
default "$(CONFIG_DIR)/local.mk"
@@ -678,8 +662,7 @@ config BR2_COMPILER_PARANOID_UNSAFE_PATH
Note that this mechanism is available for both the internal
toolchain (through the toolchain wrapper and binutils patches)
and external toolchain backends (through the toolchain
wrapper).
and external toolchain backends (through the toolchain wrapper).
config BR2_REPRODUCIBLE
bool "Make the build reproducible (experimental)"
@@ -763,9 +746,9 @@ choice
bool "RELRO Protection"
depends on BR2_SHARED_LIBS
help
Enable a link-time protection know as RELRO (RELocation Read
Only) which helps to protect from certain type of exploitation
techniques altering the content of some ELF sections.
Enable a link-time protection know as RELRO (RELocation Read Only)
which helps to protect from certain type of exploitation techniques
altering the content of some ELF sections.
config BR2_RELRO_NONE
bool "None"
@@ -781,9 +764,9 @@ config BR2_RELRO_PARTIAL
config BR2_RELRO_FULL
bool "Full"
help
This option includes the partial configuration, but also marks
the GOT as read-only at the cost of initialization time during
program loading, i.e every time an executable is started.
This option includes the partial configuration, but also
marks the GOT as read-only at the cost of initialization time
during program loading, i.e every time an executable is started.
endchoice
@@ -796,10 +779,10 @@ choice
depends on !BR2_OPTIMIZE_0
help
Enable the _FORTIFY_SOURCE macro which introduces additional
checks to detect buffer-overflows in the following standard
library functions: memcpy, mempcpy, memmove, memset, strcpy,
stpcpy, strncpy, strcat, strncat, sprintf, vsprintf, snprintf,
vsnprintf, gets.
checks to detect buffer-overflows in the following standard library
functions: memcpy, mempcpy, memmove, memset, strcpy, stpcpy,
strncpy, strcat, strncat, sprintf, vsprintf, snprintf, vsnprintf,
gets.
NOTE: This feature requires an optimization level of s/1/2/3/g
@@ -812,8 +795,6 @@ config BR2_FORTIFY_SOURCE_NONE
config BR2_FORTIFY_SOURCE_1
bool "Conservative"
# gcc bug https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61164
depends on !BR2_TOOLCHAIN_BUILDROOT || BR2_TOOLCHAIN_GCC_AT_LEAST_6
help
This option sets _FORTIFY_SOURCE to 1 and only introduces
checks that shouldn't change the behavior of conforming
@@ -821,8 +802,6 @@ config BR2_FORTIFY_SOURCE_1
config BR2_FORTIFY_SOURCE_2
bool "Aggressive"
# gcc bug https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61164
depends on !BR2_TOOLCHAIN_BUILDROOT || BR2_TOOLCHAIN_GCC_AT_LEAST_6
help
This option sets _FORTIFY_SOURCES to 2 and some more
checking is added, but some conforming programs might fail.

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

137
Makefile
View File

@@ -60,11 +60,6 @@ override O := $(patsubst %/,%,$(patsubst %.,%,$(O)))
# avoid empty CANONICAL_O in case on non-existing entry.
CANONICAL_O := $(shell mkdir -p $(O) >/dev/null 2>&1)$(realpath $(O))
# gcc fails to build when the srcdir contains a '@'
ifneq ($(findstring @,$(CANONICAL_O)),)
$(error The build directory can not contain a '@')
endif
CANONICAL_CURDIR = $(realpath $(CURDIR))
REQ_UMASK = 0022
@@ -92,9 +87,9 @@ all:
.PHONY: all
# Set and export the version string
export BR2_VERSION := 2018.11.1
export BR2_VERSION := 2018.02.3
# Actual time the release is cut (for reproducible builds)
BR2_VERSION_EPOCH = 1545257000
BR2_VERSION_EPOCH = 1529344000
# Save running make version since it's clobbered by the make package
RUNNING_MAKE_VERSION := $(MAKE_VERSION)
@@ -133,9 +128,9 @@ export BR2_VERSION_FULL := $(BR2_VERSION)$(shell $(TOPDIR)/support/scripts/setlo
# List of targets and target patterns for which .config doesn't need to be read in
noconfig_targets := menuconfig nconfig gconfig xconfig config oldconfig randconfig \
defconfig %_defconfig allyesconfig allnoconfig alldefconfig syncconfig release \
defconfig %_defconfig allyesconfig allnoconfig alldefconfig silentoldconfig release \
randpackageconfig allyespackageconfig allnopackageconfig \
print-version olddefconfig distclean manual manual-% check-package
print-version olddefconfig distclean manual manual-%
# Some global targets do not trigger a build, but are used to collect
# metadata, or do various checks. When such targets are triggered,
@@ -220,10 +215,7 @@ BR_GRAPH_OUT := $(or $(BR2_GRAPH_OUT),pdf)
BUILD_DIR := $(BASE_DIR)/build
BINARIES_DIR := $(BASE_DIR)/images
# The target directory is common to all packages,
# but there is one that is specific to each filesystem.
BASE_TARGET_DIR := $(BASE_DIR)/target
TARGET_DIR = $(if $(ROOTFS),$(ROOTFS_$(ROOTFS)_TARGET_DIR),$(BASE_TARGET_DIR))
TARGET_DIR := $(BASE_DIR)/target
# initial definition so that 'make clean' works for most users, even without
# .config. HOST_DIR will be overwritten later when .config is included.
HOST_DIR := $(BASE_DIR)/host
@@ -239,6 +231,15 @@ LEGAL_MANIFEST_CSV_HOST = $(LEGAL_INFO_DIR)/host-manifest.csv
LEGAL_WARNINGS = $(LEGAL_INFO_DIR)/.warnings
LEGAL_REPORT = $(LEGAL_INFO_DIR)/README
################################################################################
#
# staging and target directories do NOT list these as
# dependencies anywhere else
#
################################################################################
$(BUILD_DIR) $(TARGET_DIR) $(HOST_DIR) $(BINARIES_DIR) $(LEGAL_INFO_DIR) $(REDIST_SOURCES_DIR_TARGET) $(REDIST_SOURCES_DIR_HOST):
@mkdir -p $@
BR2_CONFIG = $(CONFIG_DIR)/.config
# Pull in the user's configuration file
@@ -252,6 +253,9 @@ export TZ = UTC
export LANG = C
export LC_ALL = C
export GZIP = -n
BR2_VERSION_GIT_EPOCH = $(shell GIT_DIR=$(TOPDIR)/.git $(GIT) log -1 --format=%at)
export SOURCE_DATE_EPOCH ?= $(if $(wildcard $(TOPDIR)/.git),$(BR2_VERSION_GIT_EPOCH),$(BR2_VERSION_EPOCH))
DEPENDENCIES_HOST_PREREQ += host-fakedate
endif
# To put more focus on warnings, be less verbose as default
@@ -351,14 +355,8 @@ export HOSTARCH := $(shell LC_ALL=C $(HOSTCC_NOCCACHE) -v 2>&1 | \
-e 's/macppc/powerpc/' \
-e 's/sh.*/sh/' )
# When adding a new host gcc version in Config.in,
# update the HOSTCC_MAX_VERSION variable:
HOSTCC_MAX_VERSION := 8
HOSTCC_VERSION := $(shell V=$$($(HOSTCC_NOCCACHE) --version | \
sed -n -r 's/^.* ([0-9]*)\.([0-9]*)\.([0-9]*)[ ]*.*/\1 \2/p'); \
[ "$${V%% *}" -le $(HOSTCC_MAX_VERSION) ] || V=$(HOSTCC_MAX_VERSION); \
printf "%s" "$${V}")
HOSTCC_VERSION := $(shell $(HOSTCC_NOCCACHE) --version | \
sed -n -r 's/^.* ([0-9]*)\.([0-9]*)\.([0-9]*)[ ]*.*/\1 \2/p')
# For gcc >= 5.x, we only need the major version.
ifneq ($(firstword $(HOSTCC_VERSION)),4)
@@ -440,11 +438,11 @@ KERNEL_ARCH := $(shell echo "$(ARCH)" | sed -e "s/-.*//" \
-e s/arceb/arc/ \
-e s/arm.*/arm/ -e s/sa110/arm/ \
-e s/aarch64.*/arm64/ \
-e s/bfin/blackfin/ \
-e s/or1k/openrisc/ \
-e s/parisc64/parisc/ \
-e s/powerpc64.*/powerpc/ \
-e s/ppc.*/powerpc/ -e s/mips.*/mips/ \
-e s/riscv.*/riscv/ \
-e s/sh.*/sh/ \
-e s/microblazeel/microblaze/)
@@ -457,18 +455,12 @@ TAR_OPTIONS = $(call qstrip,$(BR2_TAR_OPTIONS)) -xf
# packages compiled for the host go here
HOST_DIR := $(call qstrip,$(BR2_HOST_DIR))
ifneq ($(HOST_DIR),$(BASE_DIR)/host)
HOST_DIR_SYMLINK = $(BASE_DIR)/host
$(HOST_DIR_SYMLINK): $(BASE_DIR)
ln -snf $(HOST_DIR) $(BASE_DIR)/host
endif
# Quotes are needed for spaces and all in the original PATH content.
BR_PATH = "$(HOST_DIR)/bin:$(HOST_DIR)/sbin:$(PATH)"
# Location of a file giving a big fat warning that output/target
# should not be used as the root filesystem.
TARGET_DIR_WARNING_FILE = $(BASE_TARGET_DIR)/THIS_IS_NOT_YOUR_ROOT_FILESYSTEM
TARGET_DIR_WARNING_FILE = $(TARGET_DIR)/THIS_IS_NOT_YOUR_ROOT_FILESYSTEM
ifeq ($(BR2_CCACHE),y)
CCACHE := $(HOST_DIR)/bin/ccache
@@ -505,22 +497,16 @@ include Makefile.legacy
include system/system.mk
include package/Makefile.in
# arch/arch.mk must be after package/Makefile.in because it may need to
# arch/arch.mk.* must be after package/Makefile.in because it may need to
# complement variables defined therein, like BR_NO_CHECK_HASH_FOR.
include arch/arch.mk
-include $(sort $(wildcard arch/arch.mk.*))
include support/dependencies/dependencies.mk
PACKAGES += $(DEPENDENCIES_HOST_PREREQ)
include $(sort $(wildcard toolchain/*.mk))
include $(sort $(wildcard toolchain/*/*.mk))
ifeq ($(BR2_REPRODUCIBLE),y)
# If SOURCE_DATE_EPOCH has not been set then use the commit date, or the last
# release date if the source tree is not within a Git repository.
# See: https://reproducible-builds.org/specs/source-date-epoch/
BR2_VERSION_GIT_EPOCH := $(shell $(GIT) log -1 --format=%at 2> /dev/null)
export SOURCE_DATE_EPOCH ?= $(or $(BR2_VERSION_GIT_EPOCH),$(BR2_VERSION_EPOCH))
endif
# Include the package override file if one has been provided in the
# configuration.
PACKAGE_OVERRIDE_FILE = $(call qstrip,$(BR2_PACKAGE_OVERRIDE_FILE))
@@ -573,11 +559,11 @@ $(foreach pkg,$(call UPPERCASE,$(PACKAGES)),\
endif
.PHONY: dirs
dirs: $(BUILD_DIR) $(STAGING_DIR) $(BASE_TARGET_DIR) \
$(HOST_DIR) $(HOST_DIR_SYMLINK) $(BINARIES_DIR)
dirs: $(BUILD_DIR) $(STAGING_DIR) $(TARGET_DIR) \
$(HOST_DIR) $(HOST_DIR)/usr $(HOST_DIR)/lib $(BINARIES_DIR)
$(BUILD_DIR)/buildroot-config/auto.conf: $(BR2_CONFIG)
$(MAKE1) $(EXTRAMAKEARGS) HOSTCC="$(HOSTCC_NOCCACHE)" HOSTCXX="$(HOSTCXX_NOCCACHE)" syncconfig
$(MAKE1) $(EXTRAMAKEARGS) HOSTCC="$(HOSTCC_NOCCACHE)" HOSTCXX="$(HOSTCXX_NOCCACHE)" silentoldconfig
.PHONY: prepare
prepare: $(BUILD_DIR)/buildroot-config/auto.conf
@@ -585,25 +571,24 @@ prepare: $(BUILD_DIR)/buildroot-config/auto.conf
.PHONY: world
world: target-post-image
.PHONY: prepare-sdk
prepare-sdk: world
.PHONY: sdk
sdk: world
@$(call MESSAGE,"Rendering the SDK relocatable")
$(TOPDIR)/support/scripts/fix-rpath host
$(TOPDIR)/support/scripts/fix-rpath staging
$(INSTALL) -m 755 $(TOPDIR)/support/misc/relocate-sdk.sh $(HOST_DIR)/relocate-sdk.sh
mkdir -p $(HOST_DIR)/share/buildroot
echo $(HOST_DIR) > $(HOST_DIR)/share/buildroot/sdk-location
BR2_SDK_PREFIX ?= $(GNU_TARGET_NAME)_sdk-buildroot
.PHONY: sdk
sdk: prepare-sdk $(BR2_TAR_HOST_DEPENDENCY)
@$(call MESSAGE,"Generating SDK tarball")
$(if $(BR2_SDK_PREFIX),,$(error BR2_SDK_PREFIX can not be empty))
$(Q)mkdir -p $(BINARIES_DIR)
$(TAR) czf "$(BINARIES_DIR)/$(BR2_SDK_PREFIX).tar.gz" \
--owner=0 --group=0 --numeric-owner \
--transform='s#^\.#$(BR2_SDK_PREFIX)#' \
-C $(HOST_DIR) "."
# Compatibility symlink in case a post-build script still uses $(HOST_DIR)/usr
$(HOST_DIR)/usr: $(HOST_DIR)
@ln -snf . $@
$(HOST_DIR)/lib: $(HOST_DIR)
@mkdir -p $@
@case $(HOSTARCH) in \
(*64) ln -snf lib $(@D)/lib64;; \
(*) ln -snf lib $(@D)/lib32;; \
esac
# Populating the staging with the base directories is handled by the skeleton package
$(STAGING_DIR):
@@ -707,9 +692,6 @@ endif
$(TARGETS_ROOTFS): target-finalize
# Avoid the rootfs name leaking down the dependency chain
target-finalize: ROOTFS=
.PHONY: target-finalize
target-finalize: $(PACKAGES)
@$(call MESSAGE,"Finalizing target directory")
@@ -783,7 +765,6 @@ endif
.PHONY: target-post-image
target-post-image: $(TARGETS_ROOTFS) target-finalize
@rm -f $(ROOTFS_COMMON_TAR)
@$(foreach s, $(call qstrip,$(BR2_ROOTFS_POST_IMAGE_SCRIPT)), \
$(call MESSAGE,"Executing post-image script $(s)"); \
$(EXTRA_ENV) $(s) $(BINARIES_DIR) $(call qstrip,$(BR2_ROOTFS_POST_SCRIPT_ARGS))$(sep))
@@ -803,10 +784,10 @@ legal-info-clean:
.PHONY: legal-info-prepare
legal-info-prepare: $(LEGAL_INFO_DIR)
@$(call MESSAGE,"Buildroot $(BR2_VERSION_FULL) Collecting legal info")
@$(call legal-license-file,buildroot,buildroot,support/legal-info/buildroot.hash,COPYING,COPYING,HOST)
@$(call legal-manifest,TARGET,PACKAGE,VERSION,LICENSE,LICENSE FILES,SOURCE ARCHIVE,SOURCE SITE,DEPENDENCIES WITH LICENSES)
@$(call legal-manifest,HOST,PACKAGE,VERSION,LICENSE,LICENSE FILES,SOURCE ARCHIVE,SOURCE SITE,DEPENDENCIES WITH LICENSES)
@$(call legal-manifest,HOST,buildroot,$(BR2_VERSION_FULL),GPL-2.0+,COPYING,not saved,not saved)
@$(call legal-license-file,buildroot,buildroot,support/legal-info,COPYING,COPYING,HOST)
@$(call legal-manifest,PACKAGE,VERSION,LICENSE,LICENSE FILES,SOURCE ARCHIVE,SOURCE SITE,TARGET)
@$(call legal-manifest,PACKAGE,VERSION,LICENSE,LICENSE FILES,SOURCE ARCHIVE,SOURCE SITE,HOST)
@$(call legal-manifest,buildroot,$(BR2_VERSION_FULL),GPL-2.0+,COPYING,not saved,not saved,HOST)
@$(call legal-warning,the Buildroot source code has not been saved)
@cp $(BR2_CONFIG) $(LEGAL_INFO_DIR)/buildroot.config
@@ -945,7 +926,7 @@ randpackageconfig allyespackageconfig allnopackageconfig: $(BUILD_DIR)/buildroot
@rm -f $(CONFIG_DIR)/.config.nopkg
@$(COMMON_CONFIG_ENV) $< --olddefconfig $(CONFIG_CONFIG_IN) >/dev/null
oldconfig syncconfig olddefconfig: $(BUILD_DIR)/buildroot-config/conf prepare-kconfig
oldconfig silentoldconfig olddefconfig: $(BUILD_DIR)/buildroot-config/conf prepare-kconfig
@$(COMMON_CONFIG_ENV) $< --$@ $(CONFIG_CONFIG_IN)
defconfig: $(BUILD_DIR)/buildroot-config/conf prepare-kconfig
@@ -973,11 +954,6 @@ savedefconfig: $(BUILD_DIR)/buildroot-config/conf prepare-kconfig
#
################################################################################
# staging and target directories do NOT list these as
# dependencies anywhere else
$(BUILD_DIR) $(BASE_TARGET_DIR) $(HOST_DIR) $(BINARIES_DIR) $(LEGAL_INFO_DIR) $(REDIST_SOURCES_DIR_TARGET) $(REDIST_SOURCES_DIR_HOST):
@mkdir -p $@
# outputmakefile generates a Makefile in the output directory, if using a
# separate output directory. This allows convenient use of make in the
# output directory.
@@ -1000,8 +976,7 @@ $(BUILD_DIR)/.br2-external.in: $(BUILD_DIR)
# displayed.
.PHONY: printvars
printvars:
@:
$(foreach V, \
@:$(foreach V, \
$(sort $(if $(VARS),$(filter $(VARS),$(.VARIABLES)),$(.VARIABLES))), \
$(if $(filter-out environment% default automatic, \
$(origin $V)), \
@@ -1012,7 +987,7 @@ printvars:
.PHONY: clean
clean:
rm -rf $(BASE_TARGET_DIR) $(BINARIES_DIR) $(HOST_DIR) $(HOST_DIR_SYMLINK) \
rm -rf $(TARGET_DIR) $(BINARIES_DIR) $(HOST_DIR) \
$(BUILD_DIR) $(BASE_DIR)/staging \
$(LEGAL_INFO_DIR) $(GRAPHS_DIR)
@@ -1041,11 +1016,11 @@ help:
@echo ' xconfig - interactive Qt-based configurator'
@echo ' gconfig - interactive GTK-based configurator'
@echo ' oldconfig - resolve any unresolved symbols in .config'
@echo ' syncconfig - Same as oldconfig, but quietly, additionally update deps'
@echo ' olddefconfig - Same as syncconfig but sets new symbols to their default value'
@echo ' silentoldconfig - Same as oldconfig, but quietly, additionally update deps'
@echo ' olddefconfig - Same as silentoldconfig but sets new symbols to their default value'
@echo ' randconfig - New config with random answer to all options'
@echo ' defconfig - New config with default answer to all options;'
@echo ' BR2_DEFCONFIG, if set on the command line, is used as input'
@echo ' defconfig - New config with default answer to all options'
@echo ' BR2_DEFCONFIG, if set, is used as input'
@echo ' savedefconfig - Save current config to BR2_DEFCONFIG (minimal config)'
@echo ' allyesconfig - New config where all options are accepted with yes'
@echo ' allnoconfig - New config where all options are answered with no'
@@ -1064,10 +1039,6 @@ help:
@echo ' <pkg>-build - Build <pkg> up to the build step'
@echo ' <pkg>-show-depends - List packages on which <pkg> depends'
@echo ' <pkg>-show-rdepends - List packages which have <pkg> as a dependency'
@echo ' <pkg>-show-recursive-depends'
@echo ' - Recursively list packages on which <pkg> depends'
@echo ' <pkg>-show-recursive-rdepends'
@echo ' - Recursively list packages which have <pkg> as a dependency'
@echo ' <pkg>-graph-depends - Generate a graph of <pkg>'\''s dependencies'
@echo ' <pkg>-graph-rdepends - Generate a graph of <pkg>'\''s reverse dependencies'
@echo ' <pkg>-dirclean - Remove <pkg> build directory'
@@ -1149,15 +1120,11 @@ release:
print-version:
@echo $(BR2_VERSION_FULL)
check-package:
find $(TOPDIR) -type f \( -name '*.mk' -o -name '*.hash' -o -name 'Config.*' \) \
-exec ./utils/check-package {} +
.PHONY: .gitlab-ci.yml
.gitlab-ci.yml: .gitlab-ci.yml.in
cp $< $@
(cd configs; LC_ALL=C ls -1 *_defconfig) | sed 's/$$/: *defconfig/' >> $@
set -o pipefail; ./support/testing/run-tests -l 2>&1 | sed -r -e '/^test_run \((.*)\).*/!d; s//\1: *runtime_test/' | LC_ALL=C sort >> $@
./support/testing/run-tests -l 2>&1 | sed -r -e '/^test_run \((.*)\).*/!d; s//\1: *runtime_test/' | LC_ALL=C sort >> $@
include docs/manual/manual.mk
-include $(foreach dir,$(BR2_EXTERNAL_DIRS),$(sort $(wildcard $(dir)/docs/*/*.mk)))

View File

@@ -15,6 +15,9 @@ config BR2_ARCH_HAS_MMU_MANDATORY
config BR2_ARCH_HAS_MMU_OPTIONAL
bool
config BR2_ARCH_HAS_FDPIC_SUPPORT
bool
choice
prompt "Target Architecture"
default BR2_i386
@@ -25,25 +28,24 @@ config BR2_arcle
bool "ARC (little endian)"
select BR2_ARCH_HAS_MMU_MANDATORY
help
Synopsys' DesignWare ARC Processor Cores are a family of
32-bit CPUs that can be used from deeply embedded to high
performance host applications. Little endian.
Synopsys' DesignWare ARC Processor Cores are a family of 32-bit CPUs
that can be used from deeply embedded to high performance host
applications. Little endian.
config BR2_arceb
bool "ARC (big endian)"
select BR2_ARCH_HAS_MMU_MANDATORY
help
Synopsys' DesignWare ARC Processor Cores are a family of
32-bit CPUs that can be used from deeply embedded to high
performance host applications. Big endian.
Synopsys' DesignWare ARC Processor Cores are a family of 32-bit CPUs
that can be used from deeply embedded to high performance host
applications. Big endian.
config BR2_arm
bool "ARM (little endian)"
# MMU support is set by the subarchitecture file, arch/Config.in.arm
help
ARM is a 32-bit reduced instruction set computer (RISC)
instruction set architecture (ISA) developed by ARM Holdings.
Little endian.
ARM is a 32-bit reduced instruction set computer (RISC) instruction
set architecture (ISA) developed by ARM Holdings. Little endian.
http://www.arm.com/
http://en.wikipedia.org/wiki/ARM
@@ -51,9 +53,8 @@ config BR2_armeb
bool "ARM (big endian)"
# MMU support is set by the subarchitecture file, arch/Config.in.arm
help
ARM is a 32-bit reduced instruction set computer (RISC)
instruction set architecture (ISA) developed by ARM Holdings.
Big endian.
ARM is a 32-bit reduced instruction set computer (RISC) instruction
set architecture (ISA) developed by ARM Holdings. Big endian.
http://www.arm.com/
http://en.wikipedia.org/wiki/ARM
@@ -75,6 +76,16 @@ config BR2_aarch64_be
http://www.arm.com/products/processors/instruction-set-architectures/armv8-architecture.php
http://en.wikipedia.org/wiki/ARM
config BR2_bfin
bool "Blackfin"
select BR2_ARCH_HAS_FDPIC_SUPPORT
select BR2_ARCH_NEEDS_GCC_AT_LEAST_6
help
The Blackfin is a family of 16 or 32-bit microprocessors developed,
manufactured and marketed by Analog Devices.
http://www.analog.com/
http://en.wikipedia.org/wiki/Blackfin
config BR2_csky
bool "csky"
select BR2_ARCH_HAS_NO_TOOLCHAIN_BUILDROOT
@@ -102,8 +113,8 @@ config BR2_microblazeel
bool "Microblaze AXI (little endian)"
select BR2_ARCH_HAS_MMU_MANDATORY
help
Soft processor core designed for Xilinx FPGAs from Xilinx. AXI
bus based architecture (little endian)
Soft processor core designed for Xilinx FPGAs from Xilinx. AXI bus
based architecture (little endian)
http://www.xilinx.com
http://en.wikipedia.org/wiki/Microblaze
@@ -111,8 +122,8 @@ config BR2_microblazebe
bool "Microblaze non-AXI (big endian)"
select BR2_ARCH_HAS_MMU_MANDATORY
help
Soft processor core designed for Xilinx FPGAs from Xilinx. PLB
bus based architecture (non-AXI, big endian)
Soft processor core designed for Xilinx FPGAs from Xilinx. PLB bus
based architecture (non-AXI, big endian)
http://www.xilinx.com
http://en.wikipedia.org/wiki/Microblaze
@@ -120,8 +131,7 @@ config BR2_mips
bool "MIPS (big endian)"
select BR2_ARCH_HAS_MMU_MANDATORY
help
MIPS is a RISC microprocessor from MIPS Technologies. Big
endian.
MIPS is a RISC microprocessor from MIPS Technologies. Big endian.
http://www.mips.com/
http://en.wikipedia.org/wiki/MIPS_Technologies
@@ -129,8 +139,7 @@ config BR2_mipsel
bool "MIPS (little endian)"
select BR2_ARCH_HAS_MMU_MANDATORY
help
MIPS is a RISC microprocessor from MIPS Technologies. Little
endian.
MIPS is a RISC microprocessor from MIPS Technologies. Little endian.
http://www.mips.com/
http://en.wikipedia.org/wiki/MIPS_Technologies
@@ -139,8 +148,7 @@ config BR2_mips64
select BR2_ARCH_IS_64
select BR2_ARCH_HAS_MMU_MANDATORY
help
MIPS is a RISC microprocessor from MIPS Technologies. Big
endian.
MIPS is a RISC microprocessor from MIPS Technologies. Big endian.
http://www.mips.com/
http://en.wikipedia.org/wiki/MIPS_Technologies
@@ -149,8 +157,7 @@ config BR2_mips64el
select BR2_ARCH_IS_64
select BR2_ARCH_HAS_MMU_MANDATORY
help
MIPS is a RISC microprocessor from MIPS Technologies. Little
endian.
MIPS is a RISC microprocessor from MIPS Technologies. Little endian.
http://www.mips.com/
http://en.wikipedia.org/wiki/MIPS_Technologies
@@ -173,8 +180,8 @@ config BR2_powerpc
bool "PowerPC"
select BR2_ARCH_HAS_MMU_MANDATORY
help
PowerPC is a RISC architecture created by Apple-IBM-Motorola
alliance. Big endian.
PowerPC is a RISC architecture created by Apple-IBM-Motorola alliance.
Big endian.
http://www.power.org/
http://en.wikipedia.org/wiki/Powerpc
@@ -183,8 +190,8 @@ config BR2_powerpc64
select BR2_ARCH_IS_64
select BR2_ARCH_HAS_MMU_MANDATORY
help
PowerPC is a RISC architecture created by Apple-IBM-Motorola
alliance. Big endian.
PowerPC is a RISC architecture created by Apple-IBM-Motorola alliance.
Big endian.
http://www.power.org/
http://en.wikipedia.org/wiki/Powerpc
@@ -193,29 +200,17 @@ config BR2_powerpc64le
select BR2_ARCH_IS_64
select BR2_ARCH_HAS_MMU_MANDATORY
help
PowerPC is a RISC architecture created by Apple-IBM-Motorola
alliance. Little endian.
PowerPC is a RISC architecture created by Apple-IBM-Motorola alliance.
Little endian.
http://www.power.org/
http://en.wikipedia.org/wiki/Powerpc
config BR2_riscv
bool "RISCV"
select BR2_ARCH_HAS_MMU_MANDATORY
select BR2_ARCH_NEEDS_GCC_AT_LEAST_7
help
RISC-V is an open, free Instruction Set Architecture created
by the UC Berkeley Architecture Research group and supported
and promoted by RISC-V Foundation.
https://riscv.org/
https://en.wikipedia.org/wiki/RISC-V
config BR2_sh
bool "SuperH"
select BR2_ARCH_HAS_MMU_OPTIONAL
help
SuperH (or SH) is a 32-bit reduced instruction set computer
(RISC) instruction set architecture (ISA) developed by
Hitachi.
SuperH (or SH) is a 32-bit reduced instruction set computer (RISC)
instruction set architecture (ISA) developed by Hitachi.
http://www.hitachi.com/
http://en.wikipedia.org/wiki/SuperH
@@ -223,9 +218,8 @@ config BR2_sparc
bool "SPARC"
select BR2_ARCH_HAS_MMU_MANDATORY
help
SPARC (from Scalable Processor Architecture) is a RISC
instruction set architecture (ISA) developed by Sun
Microsystems.
SPARC (from Scalable Processor Architecture) is a RISC instruction
set architecture (ISA) developed by Sun Microsystems.
http://www.oracle.com/sun
http://en.wikipedia.org/wiki/Sparc
@@ -234,9 +228,8 @@ config BR2_sparc64
select BR2_ARCH_IS_64
select BR2_ARCH_HAS_MMU_MANDATORY
help
SPARC (from Scalable Processor Architecture) is a RISC
instruction set architecture (ISA) developed by Sun
Microsystems.
SPARC (from Scalable Processor Architecture) is a RISC instruction
set architecture (ISA) developed by Sun Microsystems.
http://www.oracle.com/sun
http://en.wikipedia.org/wiki/Sparc
@@ -290,10 +283,6 @@ config BR2_ARCH_NEEDS_GCC_AT_LEAST_7
bool
select BR2_ARCH_NEEDS_GCC_AT_LEAST_6
config BR2_ARCH_NEEDS_GCC_AT_LEAST_8
bool
select BR2_ARCH_NEEDS_GCC_AT_LEAST_7
# The following string values are defined by the individual
# Config.in.$ARCH files
config BR2_ARCH
@@ -317,6 +306,9 @@ config BR2_GCC_TARGET_FP32_MODE
config BR2_GCC_TARGET_CPU
string
config BR2_GCC_TARGET_CPU_REVISION
string
# The value of this option will be passed as --with-fpu=<value> when
# building gcc (internal backend) or -mfpu=<value> in the toolchain
# wrapper (external toolchain)
@@ -349,6 +341,7 @@ config BR2_READELF_ARCH_NAME
choice
prompt "Target Binary Format"
default BR2_BINFMT_ELF if BR2_USE_MMU
default BR2_BINFMT_FDPIC if BR2_ARCH_HAS_FDPIC_SUPPORT
default BR2_BINFMT_FLAT
config BR2_BINFMT_ELF
@@ -356,34 +349,56 @@ config BR2_BINFMT_ELF
depends on BR2_USE_MMU
select BR2_BINFMT_SUPPORTS_SHARED
help
ELF (Executable and Linkable Format) is a format for libraries
and executables used across different architectures and
operating systems.
ELF (Executable and Linkable Format) is a format for libraries and
executables used across different architectures and operating
systems.
config BR2_BINFMT_FDPIC
bool "FDPIC"
depends on BR2_ARCH_HAS_FDPIC_SUPPORT
select BR2_BINFMT_SUPPORTS_SHARED
help
ELF FDPIC binaries are based on ELF, but allow the individual load
segments of a binary to be located in memory independently of each
other. This makes this format ideal for use in environments where no
MMU is available.
config BR2_BINFMT_FLAT
bool "FLAT"
depends on !BR2_USE_MMU
help
FLAT binary is a relatively simple and lightweight executable
format based on the original a.out format. It is widely used
in environment where no MMU is available.
FLAT binary is a relatively simple and lightweight executable format
based on the original a.out format. It is widely used in environment
where no MMU is available.
endchoice
# Set up flat binary type
choice
prompt "FLAT Binary type"
default BR2_BINFMT_FLAT_ONE
depends on BR2_BINFMT_FLAT
default BR2_BINFMT_FLAT_ONE
config BR2_BINFMT_FLAT_ONE
bool "One memory region"
help
All segments are linked into one memory region.
config BR2_BINFMT_FLAT_SEP_DATA
bool "Separate data and code region"
# this FLAT binary type technically exists on m68k, but fails
# to build numerous packages: due to architecture limitation,
# big functions cannot be built in this mode. They cause build
# failures such as "Tried to convert PC relative branch to
# absolute jump" or "error: value -yyyyy out of range".
depends on BR2_bfin
help
Allow for the data and text segments to be separated and placed in
different regions of memory.
config BR2_BINFMT_FLAT_SHARED
bool "Shared binary"
depends on BR2_m68k
depends on BR2_m68k || BR2_bfin
# Even though this really generates shared binaries, there is no libdl
# and dlopen() cannot be used. So packages that require shared
# libraries cannot be built. Therefore, we don't select
@@ -403,6 +418,10 @@ if BR2_arm || BR2_armeb || BR2_aarch64 || BR2_aarch64_be
source "arch/Config.in.arm"
endif
if BR2_bfin
source "arch/Config.in.bfin"
endif
if BR2_csky
source "arch/Config.in.csky"
endif
@@ -431,10 +450,6 @@ if BR2_powerpc || BR2_powerpc64 || BR2_powerpc64le
source "arch/Config.in.powerpc"
endif
if BR2_riscv
source "arch/Config.in.riscv"
endif
if BR2_sh
source "arch/Config.in.sh"
endif

View File

@@ -1,7 +1,7 @@
choice
prompt "Target CPU"
default BR2_arc770d
depends on BR2_arc
default BR2_arc770d
help
Specific CPU to use

View File

@@ -6,21 +6,12 @@ config BR2_ARM_CPU_HAS_NEON
config BR2_ARM_CPU_MAYBE_HAS_NEON
bool
# For some cores, the FPU is optional
config BR2_ARM_CPU_MAYBE_HAS_FPU
bool
config BR2_ARM_CPU_HAS_FPU
bool
# for some cores, VFPv2 is optional
config BR2_ARM_CPU_MAYBE_HAS_VFPV2
bool
select BR2_ARM_CPU_MAYBE_HAS_FPU
config BR2_ARM_CPU_HAS_VFPV2
bool
select BR2_ARM_CPU_HAS_FPU
# for some cores, VFPv3 is optional
config BR2_ARM_CPU_MAYBE_HAS_VFPV3
@@ -40,24 +31,6 @@ config BR2_ARM_CPU_HAS_VFPV4
bool
select BR2_ARM_CPU_HAS_VFPV3
# FPv4 is always optional
config BR2_ARM_CPU_MAYBE_HAS_FPV4
bool
select BR2_ARM_CPU_MAYBE_HAS_FPU
config BR2_ARM_CPU_HAS_FPV4
bool
select BR2_ARM_CPU_HAS_FPU
# FPv5 is always optional
config BR2_ARM_CPU_MAYBE_HAS_FPV5
bool
select BR2_ARM_CPU_MAYBE_HAS_FPV4
config BR2_ARM_CPU_HAS_FPV5
bool
select BR2_ARM_CPU_HAS_FPV4
config BR2_ARM_CPU_HAS_FP_ARMV8
bool
select BR2_ARM_CPU_HAS_VFPV4
@@ -267,14 +240,7 @@ config BR2_cortex_m3
config BR2_cortex_m4
bool "cortex-M4"
select BR2_ARM_CPU_HAS_THUMB2
select BR2_ARM_CPU_MAYBE_HAS_FPV4
select BR2_ARM_CPU_ARMV7M
config BR2_cortex_m7
bool "cortex-M7"
select BR2_ARM_CPU_HAS_THUMB2
select BR2_ARM_CPU_MAYBE_HAS_FPV5
select BR2_ARM_CPU_ARMV7M
select BR2_ARCH_NEEDS_GCC_AT_LEAST_5
endif # !BR2_ARCH_IS_64
comment "armv8 cores"
@@ -479,9 +445,7 @@ config BR2_ARM_ENABLE_NEON
config BR2_ARM_ENABLE_VFP
bool "Enable VFP extension support"
depends on BR2_ARM_CPU_MAYBE_HAS_FPU
select BR2_ARM_CPU_HAS_FPV5 if BR2_ARM_CPU_MAYBE_HAS_FPV5
select BR2_ARM_CPU_HAS_FPV4 if BR2_ARM_CPU_MAYBE_HAS_FPV4
depends on BR2_ARM_CPU_MAYBE_HAS_VFPV2
select BR2_ARM_CPU_HAS_VFPV4 if BR2_ARM_CPU_MAYBE_HAS_VFPV4
select BR2_ARM_CPU_HAS_VFPV3 if BR2_ARM_CPU_MAYBE_HAS_VFPV3
select BR2_ARM_CPU_HAS_VFPV2 if BR2_ARM_CPU_MAYBE_HAS_VFPV2
@@ -492,9 +456,9 @@ config BR2_ARM_ENABLE_VFP
choice
prompt "Target ABI"
default BR2_ARM_EABIHF if BR2_ARM_CPU_HAS_FPU
default BR2_ARM_EABI
depends on BR2_arm || BR2_armeb
default BR2_ARM_EABIHF if BR2_ARM_CPU_HAS_VFPV2
default BR2_ARM_EABI
help
Application Binary Interface to use. The Application Binary
Interface describes the calling conventions (how arguments
@@ -527,7 +491,7 @@ config BR2_ARM_EABI
config BR2_ARM_EABIHF
bool "EABIhf"
depends on BR2_ARM_CPU_HAS_FPU
depends on BR2_ARM_CPU_HAS_VFPV2
help
The EABIhf is an extension of EABI which supports the 'hard'
floating point model. This model uses the floating point
@@ -548,12 +512,10 @@ endchoice
choice
prompt "Floating point strategy"
default BR2_ARM_FPU_FP_ARMV8 if BR2_ARM_CPU_HAS_FP_ARMV8
default BR2_ARM_FPU_FPV5D16 if BR2_ARM_CPU_HAS_FPV5
default BR2_ARM_FPU_FPV4D16 if BR2_ARM_CPU_HAS_FPV4
default BR2_ARM_FPU_VFPV4D16 if BR2_ARM_CPU_HAS_VFPV4
default BR2_ARM_FPU_VFPV3D16 if BR2_ARM_CPU_HAS_VFPV3
default BR2_ARM_FPU_VFPV2 if BR2_ARM_CPU_HAS_VFPV2
default BR2_ARM_SOFT_FLOAT if !BR2_ARM_CPU_HAS_FPU
default BR2_ARM_SOFT_FLOAT if !BR2_ARM_CPU_HAS_VFPV2
config BR2_ARM_SOFT_FLOAT
bool "Soft float"
@@ -660,38 +622,6 @@ config BR2_ARM_FPU_NEON_VFPV4
example on Cortex-A5 and Cortex-A7, support for VFPv4 and
NEON is optional.
config BR2_ARM_FPU_FPV4D16
bool "FPv4-D16"
depends on BR2_ARM_CPU_HAS_FPV4
help
This option allows to use the FPv4-SP (single precision)
floating point unit, as available in some ARMv7m processors
(Cortex-M4).
config BR2_ARM_FPU_FPV5D16
bool "FPv5-D16"
depends on BR2_ARM_CPU_HAS_FPV5
select BR2_ARCH_NEEDS_GCC_AT_LEAST_5
help
This option allows to use the FPv5-SP (single precision)
floating point unit, as available in some ARMv7m processors
(Cortex-M7).
Note that if you want binary code that works on the earlier
Cortex-M4, you should instead select FPv4-D16.
config BR2_ARM_FPU_FPV5DPD16
bool "FPv5-DP-D16"
depends on BR2_ARM_CPU_HAS_FPV5
select BR2_ARCH_NEEDS_GCC_AT_LEAST_5
help
This option allows to use the FPv5-DP (double precision)
floating point unit, as available in some ARMv7m processors
(Cortex-M7).
Note that if you want binary code that works on the earlier
Cortex-M4, you should instead select FPv4-D16.
config BR2_ARM_FPU_FP_ARMV8
bool "FP-ARMv8"
depends on BR2_ARM_CPU_HAS_FP_ARMV8
@@ -786,7 +716,6 @@ config BR2_GCC_TARGET_CPU
# armv7m
default "cortex-m3" if BR2_cortex_m3
default "cortex-m4" if BR2_cortex_m4
default "cortex-m7" if BR2_cortex_m7
# armv8a
default "cortex-a32" if BR2_cortex_a32
default "cortex-a35" if BR2_cortex_a35
@@ -817,6 +746,7 @@ config BR2_GCC_TARGET_ABI
default "lp64" if BR2_aarch64 || BR2_aarch64_be
config BR2_GCC_TARGET_FPU
depends on BR2_arm || BR2_armeb
default "vfp" if BR2_ARM_FPU_VFPV2
default "vfpv3" if BR2_ARM_FPU_VFPV3
default "vfpv3-d16" if BR2_ARM_FPU_VFPV3D16
@@ -824,12 +754,8 @@ config BR2_GCC_TARGET_FPU
default "vfpv4-d16" if BR2_ARM_FPU_VFPV4D16
default "neon" if BR2_ARM_FPU_NEON
default "neon-vfpv4" if BR2_ARM_FPU_NEON_VFPV4
default "fpv4-sp-d16" if BR2_ARM_FPU_FPV4D16
default "fpv5-sp-d16" if BR2_ARM_FPU_FPV5D16
default "fpv5-d16" if BR2_ARM_FPU_FPV5DPD16
default "fp-armv8" if BR2_ARM_FPU_FP_ARMV8
default "neon-fp-armv8" if BR2_ARM_FPU_NEON_FP_ARMV8
depends on BR2_arm || BR2_armeb
config BR2_GCC_TARGET_FLOAT_ABI
default "soft" if BR2_ARM_SOFT_FLOAT

102
arch/Config.in.bfin Normal file
View File

@@ -0,0 +1,102 @@
choice
prompt "Target CPU"
depends on BR2_bfin
default BR2_bf532
help
Specify target CPU
config BR2_bf512
bool "bf512"
config BR2_bf514
bool "bf514"
config BR2_bf516
bool "bf516"
config BR2_bf518
bool "bf518"
config BR2_bf522
bool "bf522"
config BR2_bf523
bool "bf523"
config BR2_bf524
bool "bf524"
config BR2_bf525
bool "bf525"
config BR2_bf526
bool "bf526"
config BR2_bf527
bool "bf527"
config BR2_bf531
bool "bf531"
config BR2_bf532
bool "bf532"
config BR2_bf533
bool "bf533"
config BR2_bf534
bool "bf534"
config BR2_bf536
bool "bf536"
config BR2_bf537
bool "bf537"
config BR2_bf538
bool "bf538"
config BR2_bf539
bool "bf539"
config BR2_bf542
bool "bf542"
config BR2_bf544
bool "bf544"
config BR2_bf547
bool "bf547"
config BR2_bf548
bool "bf548"
config BR2_bf549
bool "bf549"
config BR2_bf561
bool "bf561"
endchoice
config BR2_ARCH
default "bfin"
config BR2_ENDIAN
default "LITTLE"
config BR2_GCC_TARGET_CPU
default bf606 if BR2_bf606
default bf607 if BR2_bf607
default bf608 if BR2_bf608
default bf609 if BR2_bf609
default bf512 if BR2_bf512
default bf514 if BR2_bf514
default bf516 if BR2_bf516
default bf518 if BR2_bf518
default bf522 if BR2_bf522
default bf523 if BR2_bf523
default bf524 if BR2_bf524
default bf525 if BR2_bf525
default bf526 if BR2_bf526
default bf527 if BR2_bf527
default bf531 if BR2_bf531
default bf532 if BR2_bf532
default bf533 if BR2_bf533
default bf534 if BR2_bf534
default bf536 if BR2_bf536
default bf537 if BR2_bf537
default bf538 if BR2_bf538
default bf539 if BR2_bf539
default bf542 if BR2_bf542
default bf544 if BR2_bf544
default bf547 if BR2_bf547
default bf548 if BR2_bf548
default bf549 if BR2_bf549
default bf561 if BR2_bf561
config BR2_GCC_TARGET_CPU_REVISION
string "Target CPU revision"
help
Specify a target CPU revision, which will be appended to the
value of the -mcpu option. For example, if the selected CPU is
bf609, and then selected CPU revision is "0.0", then gcc will
receive the -mcpu=bf609-0.0 option.
config BR2_READELF_ARCH_NAME
default "Analog Devices Blackfin"

View File

@@ -15,8 +15,8 @@ config BR2_m68k_cf
# coldfire variants will be added later
choice
prompt "Target CPU"
default BR2_m68k_68040
depends on BR2_m68k
default BR2_m68k_68040
help
Specific CPU variant to use

View File

@@ -28,9 +28,9 @@ config BR2_MIPS_CPU_MIPS64R6
choice
prompt "Target Architecture Variant"
depends on BR2_mips || BR2_mipsel || BR2_mips64 || BR2_mips64el
default BR2_mips_32 if BR2_mips || BR2_mipsel
default BR2_mips_64 if BR2_mips64 || BR2_mips64el
depends on BR2_mips || BR2_mipsel || BR2_mips64 || BR2_mips64el
help
Specific CPU variant to use
@@ -115,10 +115,11 @@ config BR2_mips_p6600
select BR2_MIPS_CPU_MIPS64R6
endchoice
choice
prompt "Target ABI"
default BR2_MIPS_NABI32
depends on BR2_mips64 || BR2_mips64el
default BR2_MIPS_NABI32
help
Application Binary Interface to use
@@ -144,11 +145,11 @@ config BR2_MIPS_SOFT_FLOAT
choice
prompt "FP mode"
default BR2_MIPS_FP32_MODE_XX
depends on !BR2_ARCH_IS_64 && !BR2_MIPS_SOFT_FLOAT
default BR2_MIPS_FP32_MODE_XX
help
MIPS32 supports different FP modes (32,xx,64). Information
about FP modes can be found here:
MIPS32 supports different FP modes (32,xx,64). Information about FP
modes can be found here:
https://sourceware.org/binutils/docs/as/MIPS-Options.html
https://dmz-portal.imgtec.com/wiki/MIPS_O32_ABI_-_FR0_and_FR1_Interlinking#5._Generating_modeless_code
@@ -179,8 +180,8 @@ config BR2_MIPS_NAN_2008
choice
prompt "Target NaN"
default BR2_MIPS_ENABLE_NAN_2008
depends on BR2_mips_32r5 || BR2_mips_64r5
default BR2_MIPS_ENABLE_NAN_2008
help
MIPS supports two different NaN encodings, legacy and 2008.
Information about MIPS NaN encodings can be found here:

View File

@@ -71,12 +71,12 @@ config BR2_powerpc_740
depends on !BR2_ARCH_IS_64
config BR2_powerpc_7400
bool "7400"
depends on !BR2_ARCH_IS_64
select BR2_POWERPC_CPU_HAS_ALTIVEC
depends on !BR2_ARCH_IS_64
config BR2_powerpc_7450
bool "7450"
depends on !BR2_ARCH_IS_64
select BR2_POWERPC_CPU_HAS_ALTIVEC
depends on !BR2_ARCH_IS_64
config BR2_powerpc_750
bool "750"
depends on !BR2_ARCH_IS_64

View File

@@ -1,102 +0,0 @@
# RISC-V CPU ISA extensions.
config BR2_RISCV_ISA_RVI
bool
config BR2_RISCV_ISA_RVM
bool
config BR2_RISCV_ISA_RVA
bool
config BR2_RISCV_ISA_RVF
bool
config BR2_RISCV_ISA_RVD
bool
config BR2_RISCV_ISA_RVC
bool
choice
prompt "Target Architecture Variant"
default BR2_riscv_g
config BR2_riscv_g
bool "General purpose (G)"
select BR2_RISCV_ISA_RVI
select BR2_RISCV_ISA_RVM
select BR2_RISCV_ISA_RVA
select BR2_RISCV_ISA_RVF
select BR2_RISCV_ISA_RVD
help
General purpose (G) is equivalent to IMAFD.
config BR2_riscv_custom
bool "Custom architecture"
select BR2_RISCV_ISA_RVI
select BR2_RISCV_ISA_CUSTOM_RVA
endchoice
if BR2_riscv_custom
comment "Instruction Set Extensions"
config BR2_RISCV_ISA_CUSTOM_RVM
bool "Integer Multiplication and Division (M)"
select BR2_RISCV_ISA_RVM
config BR2_RISCV_ISA_CUSTOM_RVA
bool "Atomic Instructions (A)"
select BR2_RISCV_ISA_RVA
config BR2_RISCV_ISA_CUSTOM_RVF
bool "Single-precision Floating-point (F)"
select BR2_RISCV_ISA_RVF
config BR2_RISCV_ISA_CUSTOM_RVD
bool "Double-precision Floating-point (D)"
depends on BR2_RISCV_ISA_RVF
select BR2_RISCV_ISA_RVD
config BR2_RISCV_ISA_CUSTOM_RVC
bool "Compressed Instructions (C)"
select BR2_RISCV_ISA_RVC
endif
config BR2_RISCV_64
bool
default y
select BR2_ARCH_IS_64
choice
prompt "Target ABI"
default BR2_RISCV_ABI_LP64
config BR2_RISCV_ABI_LP64
bool "lp64"
depends on BR2_ARCH_IS_64
config BR2_RISCV_ABI_LP64F
bool "lp64f"
depends on BR2_ARCH_IS_64 && BR2_RISCV_ISA_RVF
config BR2_RISCV_ABI_LP64D
bool "lp64d"
depends on BR2_ARCH_IS_64 && BR2_RISCV_ISA_RVD
endchoice
config BR2_ARCH
default "riscv64" if BR2_ARCH_IS_64
config BR2_ENDIAN
default "LITTLE"
config BR2_GCC_TARGET_ABI
default "lp64" if BR2_RISCV_ABI_LP64
default "lp64f" if BR2_RISCV_ABI_LP64F
default "lp64d" if BR2_RISCV_ABI_LP64D
config BR2_READELF_ARCH_NAME
default "RISC-V"

View File

@@ -1,7 +1,7 @@
choice
prompt "Target Architecture Variant"
default BR2_sh4
depends on BR2_sh
default BR2_sh4
help
Specific CPU variant to use

View File

@@ -1,8 +1,8 @@
choice
prompt "Target Architecture Variant"
depends on BR2_sparc || BR2_sparc64
default BR2_sparc_v8 if BR2_sparc
default BR2_sparc_v9 if BR2_sparc64
depends on BR2_sparc || BR2_sparc64
help
Specific CPU variant to use

View File

@@ -20,8 +20,8 @@ config BR2_X86_CPU_HAS_AVX2
choice
prompt "Target Architecture Variant"
default BR2_x86_i586 if BR2_i386
depends on BR2_i386 || BR2_x86_64
default BR2_x86_i586 if BR2_i386
help
Specific CPU variant to use
@@ -50,35 +50,35 @@ config BR2_x86_pentiumpro
depends on !BR2_x86_64
config BR2_x86_pentium_mmx
bool "pentium MMX"
depends on !BR2_x86_64
select BR2_X86_CPU_HAS_MMX
depends on !BR2_x86_64
config BR2_x86_pentium_m
bool "pentium mobile"
depends on !BR2_x86_64
select BR2_X86_CPU_HAS_MMX
select BR2_X86_CPU_HAS_SSE
depends on !BR2_x86_64
config BR2_x86_pentium2
bool "pentium2"
depends on !BR2_x86_64
select BR2_X86_CPU_HAS_MMX
depends on !BR2_x86_64
config BR2_x86_pentium3
bool "pentium3"
depends on !BR2_x86_64
select BR2_X86_CPU_HAS_MMX
select BR2_X86_CPU_HAS_SSE
depends on !BR2_x86_64
config BR2_x86_pentium4
bool "pentium4"
depends on !BR2_x86_64
select BR2_X86_CPU_HAS_MMX
select BR2_X86_CPU_HAS_SSE
select BR2_X86_CPU_HAS_SSE2
depends on !BR2_x86_64
config BR2_x86_prescott
bool "prescott"
depends on !BR2_x86_64
select BR2_X86_CPU_HAS_MMX
select BR2_X86_CPU_HAS_SSE
select BR2_X86_CPU_HAS_SSE2
select BR2_X86_CPU_HAS_SSE3
depends on !BR2_x86_64
config BR2_x86_nocona
bool "nocona"
select BR2_X86_CPU_HAS_MMX
@@ -140,21 +140,21 @@ config BR2_x86_silvermont
select BR2_X86_CPU_HAS_SSE42
config BR2_x86_k6
bool "k6"
depends on !BR2_x86_64
select BR2_X86_CPU_HAS_MMX
depends on !BR2_x86_64
config BR2_x86_k6_2
bool "k6-2"
depends on !BR2_x86_64
select BR2_X86_CPU_HAS_MMX
depends on !BR2_x86_64
config BR2_x86_athlon
bool "athlon"
depends on !BR2_x86_64
select BR2_X86_CPU_HAS_MMX
depends on !BR2_x86_64
config BR2_x86_athlon_4
bool "athlon-4"
depends on !BR2_x86_64
select BR2_X86_CPU_HAS_MMX
select BR2_X86_CPU_HAS_SSE
depends on !BR2_x86_64
config BR2_x86_opteron
bool "opteron"
select BR2_X86_CPU_HAS_MMX
@@ -198,21 +198,21 @@ config BR2_x86_geode
depends on !BR2_x86_64
config BR2_x86_c3
bool "Via/Cyrix C3 (Samuel/Ezra cores)"
depends on !BR2_x86_64
select BR2_X86_CPU_HAS_MMX
depends on !BR2_x86_64
config BR2_x86_c32
bool "Via C3-2 (Nehemiah cores)"
depends on !BR2_x86_64
select BR2_X86_CPU_HAS_MMX
select BR2_X86_CPU_HAS_SSE
depends on !BR2_x86_64
config BR2_x86_winchip_c6
bool "IDT Winchip C6"
depends on !BR2_x86_64
select BR2_X86_CPU_HAS_MMX
depends on !BR2_x86_64
config BR2_x86_winchip2
bool "IDT Winchip 2"
depends on !BR2_x86_64
select BR2_X86_CPU_HAS_MMX
depends on !BR2_x86_64
endchoice
config BR2_ARCH

View File

@@ -1,15 +1,15 @@
choice
prompt "Target Architecture Variant"
default BR2_xtensa_fsf
depends on BR2_xtensa
default BR2_xtensa_fsf
config BR2_XTENSA_CUSTOM
bool "Custom Xtensa processor configuration"
select BR2_ARCH_HAS_MMU_OPTIONAL
bool "Custom Xtensa processor configuration"
config BR2_xtensa_fsf
bool "fsf - Default configuration"
select BR2_ARCH_HAS_MMU_MANDATORY
bool "fsf - Default configuration"
endchoice
@@ -20,18 +20,18 @@ config BR2_XTENSA_OVERLAY_FILE
Enter the path to the overlay tarball for a custom processor
configuration.
These overlay files are tar packages with updated
configuration files for various toolchain packages and Xtensa
processor configurations. They are provided by the processor
vendor or directly from Tensilica.
These overlay files are tar packages with updated configuration
files for various toolchain packages and Xtensa processor
configurations. They are provided by the processor vendor or
directly from Tensilica.
The path can be either absolute, or relative to the top
directory of buildroot.
The path can be either absolute, or relative to the top directory
of buildroot.
choice
prompt "Target Architecture Endianness"
default BR2_XTENSA_LITTLE_ENDIAN
depends on BR2_XTENSA_CUSTOM
default BR2_XTENSA_LITTLE_ENDIAN
config BR2_XTENSA_LITTLE_ENDIAN
bool "Little endian"

View File

@@ -1,22 +0,0 @@
################################################################################
#
# Architecture-specific definitions
#
################################################################################
# Allow GCC target configuration settings to be optionally
# overwritten by architecture specific makefiles.
# Makefiles must use the GCC_TARGET_* variables below instead
# of the BR2_GCC_TARGET_* versions.
GCC_TARGET_ARCH := $(call qstrip,$(BR2_GCC_TARGET_ARCH))
GCC_TARGET_ABI := $(call qstrip,$(BR2_GCC_TARGET_ABI))
GCC_TARGET_NAN := $(call qstrip,$(BR2_GCC_TARGET_NAN))
GCC_TARGET_FP32_MODE := $(call qstrip,$(BR2_GCC_TARGET_FP32_MODE))
GCC_TARGET_CPU := $(call qstrip,$(BR2_GCC_TARGET_CPU))
GCC_TARGET_FPU := $(call qstrip,$(BR2_GCC_TARGET_FPU))
GCC_TARGET_FLOAT_ABI := $(call qstrip,$(BR2_GCC_TARGET_FLOAT_ABI))
GCC_TARGET_MODE := $(call qstrip,$(BR2_GCC_TARGET_MODE))
# Include any architecture specific makefiles.
-include $(sort $(wildcard arch/arch.mk.*))

View File

@@ -1,28 +0,0 @@
#
# Configure the GCC_TARGET_ARCH variable and append the
# appropriate RISC-V ISA extensions.
#
ifeq ($(BR2_riscv),y)
ifeq ($(BR2_ARCH_IS_64),y)
GCC_TARGET_ARCH := rv64i
endif
ifeq ($(BR2_RISCV_ISA_RVM),y)
GCC_TARGET_ARCH := $(GCC_TARGET_ARCH)m
endif
ifeq ($(BR2_RISCV_ISA_RVA),y)
GCC_TARGET_ARCH := $(GCC_TARGET_ARCH)a
endif
ifeq ($(BR2_RISCV_ISA_RVF),y)
GCC_TARGET_ARCH := $(GCC_TARGET_ARCH)f
endif
ifeq ($(BR2_RISCV_ISA_RVD),y)
GCC_TARGET_ARCH := $(GCC_TARGET_ARCH)d
endif
ifeq ($(BR2_RISCV_ISA_RVC),y)
GCC_TARGET_ARCH := $(GCC_TARGET_ARCH)c
endif
endif

View File

@@ -12,7 +12,7 @@
BR_ARCH_XTENSA_OVERLAY_FILE = $(call qstrip,$(BR2_XTENSA_OVERLAY_FILE))
ifneq ($(filter http://% https://% ftp://% scp://%,$(BR_ARCH_XTENSA_OVERLAY_FILE)),)
ARCH_XTENSA_OVERLAY_URL = $(BR_ARCH_XTENSA_OVERLAY_FILE)
ARCH_XTENSA_OVERLAY_FILE = $($(PKG)_DL_DIR)/$(notdir $(BR_ARCH_XTENSA_OVERLAY_FILE))
ARCH_XTENSA_OVERLAY_FILE = $(DL_DIR)/$(notdir $(BR_ARCH_XTENSA_OVERLAY_FILE))
# Do not check that file, we can't know its hash
BR_NO_CHECK_HASH_FOR += $(notdir $(ARCH_XTENSA_OVERLAY_URL))
else

View File

@@ -1,4 +0,0 @@
label linux-4.17.0-rc3
kernel /Image
devicetree /sun50i-a64-amarula-relic.dtb
append console=ttyS0,115200 earlyprintk root=/dev/mmcblk1p4 rootwait

View File

@@ -1,10 +0,0 @@
image boot.vfat {
vfat {
files = {
"Image",
"sun50i-a64-amarula-relic.dtb",
"extlinux"
}
}
size = 64M
}

View File

@@ -1,4 +0,0 @@
#!/bin/sh
BOARD_DIR="$(dirname $0)"
install -m 0644 -D $BOARD_DIR/extlinux.conf $BINARIES_DIR/extlinux/extlinux.conf

View File

@@ -1,90 +0,0 @@
Amarula A64 Relic
================
Amarula A64-Relic is an Allwinner A64 based IoT device, which supports:
- Allwinner A64 Cortex-A53
- Mali-400MP2 GPU
- AXP803 PMIC
- 1GB DDR3 RAM
- 8GB eMMC
- AP6330 Wifi/BLE
- MIPI-DSI
- CSI: OV5640 sensor
- USB OTG
- 12V DC power supply
Wiki link:
https://openedev.amarulasolutions.com/display/ODWIKI/Amarual+A64-Relic
Build
=====
$ make amarula_a64_relic_defconfig
$ make
build files at output/images/:
- sunxi-spl.bin
- u-boot.itb
- Image
- sun50i-a64-amarula-relic.dtb
- boot.vfat
- rootfs.ext4
Write eMMC
=========
The board comes with an operating system preloaded on the eMMC.
To replace it with the Buildroot-built system, take the following
steps
1. Connect the board UART with host and open minicom(ttyUSBx/115200N8)
2. Supply 12V DC for power-on the board.
3. Interrupt U-Boot by pressing enter
4. Create GPT partitions
=> mmc dev 1
=> gpt write mmc 1 $partitions
5. Connect the board USB-OTG with USB slot on the host.
6. Initiate fastboot
=> fastboot 0
7. Write images from host onto eMMC using fastboot
$ cd output/images
$ sudo fastboot -i 0x1f3a flash loader1 sunxi-spl.bin
$ sudo fastboot -i 0x1f3a flash loader2 u-boot.itb
$ sudo fastboot -i 0x1f3a flash esp boot.vfat
$ sudo fastboot -i 0x1f3a flash system rootfs.ext4
Update eMMC during Development
==============================
During development, reflashing the entire filesystem image at every
change is time consuming. A useful alternative is to directly access
over USB the filesystem stored on the eMMC, using the USB Mass Storage
capability of U-Boot. To achieve this:
1. Build U-Boot by enabling UMS
$ make uboot-menuconfig
(select CONFIG_CMD_USB_MASS_STORAGE=y)
2. Follow all 6 steps from 'Write eMMC' and mount eMMC on host
=> mmc dev 1
=> ums 0 mmc 1
WiFi
====
# wpa_passphrase ACCESSPOINTNAME >> /etc/wpa_supplicant.conf
(type password and enter)
# wpa_supplicant -i wlan0 -c /etc/wpa_supplicant.conf -B
# udhcpc -i wlan0
# ping google.com
--
Jagan Teki <jagan@amarulasolutions.com>
29-Jun-2018

View File

@@ -1,83 +0,0 @@
#AP6330_NVRAM_V1.0_20121130
#Sample variables file for BCM94330 SD FC AGB board
manfid=0x2d0
prodid=0x0547
vendid=0x14e4
devid=0x4360
boardtype=0x05e1
boardrev=0x1202
boardflags=0x0080200
nocrc=1
xtalfreq=26000
boardnum=22
macaddr=00:90:4c:c5:12:38
ag0=254
aa2g=1
ccode=ALL
pa0itssit=0x20
pa0b0=5587
pa0b1=-633
pa0b2=-158
rssismf2g=0xa
rssismc2g=0x3
rssisav2g=0x7
#rssi params for 5GHz
rssismf5g=0x4
rssismc5g=0x3
rssisav5g=0x7
#PA parameters for lower a-band
pa1lob0=4748
pa1lob1=-566
pa1lob2=-180
#PA parameters for midband
pa1b0=4762
pa1b1=-593
pa1b2=-172
#PA parameters for high band
#pa1hib0=4596
pa1hib0=4666
pa1hib1=-619
pa1hib2=-163
rxpo5g=0
maxp2ga0=74
maxp5ga0=66
maxp5gla0=66
maxp5gha0=66
# 2.4G Tx Power offsets
cck2gpo=0x2222
ofdm2gpo=0x44444444
mcs2gpo0=0x6666
mcs2gpo1=0x6666
# 5G Tx Power offsets
ofdm5gpo=0x44444444
ofdm5glpo=0x44444444
ofdm5ghpo=0x44444444
mcs5gpo0=0x6666
mcs5gpo1=0x6666
mcs5glpo0=0x6666
mcs5glpo1=0x6666
mcs5ghpo0=0x6666
mcs5ghpo1=0x6666
sromrev=3
il0macaddr=00:90:4c:c5:12:38
wl0id=0x431b
cckPwrOffset=4
swctrlmap_2g=0x44844484,0x42824282,0x40804484,0x18282,0x1ff
triso5g=0
swctrlmap_5g=0x00100010,0x20202020,0x20202020,0x14202,0x0f0
rfreg033=0x19
rfreg033_cck=0x1f
dacrate2g=160
dacrate5g=160
txalpfbyp2g=1
bphyscale=17
cckPwrIdxCorr=-15
pacalidx2g=50
#pacalidx5g=20
noise_cal_ref_2g=53
noise_cal_po_2g=0
noise_cal_ref_5g=52
noise_cal_po_5g=5,0,0
# 4330 OOB parameter: High level trigger
muxenab=0x10

View File

@@ -1,4 +0,0 @@
label Vyasa linux-next
kernel /boot/uImage
devicetree /boot/rk3288-vyasa.dtb
append console=ttyS2,115200n8 root=/dev/mmcblk0p1 rootwait

View File

@@ -1,22 +0,0 @@
image sdcard.img {
hdimage {
}
partition u-boot-tpl-spl-dtb {
in-partition-table = "no"
image = "u-boot-tpl-spl-dtb.img"
offset = 32K
}
partition u-boot-dtb {
in-partition-table = "no"
image = "u-boot-dtb.img"
offset = 8M
size = 30M # falcon mode: args @ 16M args, uImage @ 17M
}
partition rootfs {
partition-type = 0x83
image = "rootfs.ext4"
}
}

View File

@@ -1,3 +0,0 @@
# Currently mainline kernel exhibits issues when running rockchip gmac
# on the board, so enable it as loadable module and insert it later
CONFIG_DWMAC_ROCKCHIP=m

View File

@@ -1,9 +0,0 @@
#!/bin/sh
MKIMAGE=$HOST_DIR/bin/mkimage
BOARD_DIR="$(dirname $0)"
$MKIMAGE -n rk3288 -T rksd -d $BINARIES_DIR/u-boot-tpl.bin $BINARIES_DIR/u-boot-tpl.img
cat $BINARIES_DIR/u-boot-tpl.img $BINARIES_DIR/u-boot-spl-dtb.bin > $BINARIES_DIR/u-boot-tpl-spl-dtb.img
install -m 0644 -D $BOARD_DIR/extlinux.conf $TARGET_DIR/boot/extlinux/extlinux.conf

View File

@@ -1,31 +0,0 @@
Vyasa RK3288
============
Vyasa is RK3288 based Single board computer with fully supported opensource software.
https://openedev.amarulasolutions.com/display/ODWIKI/Vyasa+RK3288
How to build it
===============
$ make amarula_vyasa_rk3288_defconfig
Then you can edit the build options using
$ make menuconfig
Compile all and build rootfs image:
$ make
Prepare your SDCard
===================
Buildroot generates a ready-to-use SD card image that you can flash directly to
the card. The image will be in output/images/sdcard.img.
You can write this image directly to an SD card device (i.e. /dev/xxx):
$ sudo dd if=output/images/sdcard.img of=/dev/xxx
$ sudo sync
Finally, you can insert the SD card to the Vyasa RK3288 board, close J4 and boot it.

View File

@@ -1,6 +0,0 @@
#!/bin/sh
MKIMAGE=${HOST_DIR}/usr/bin/mkimage
MKIMAGE_IN=${BINARIES_DIR}/br2-ucls1012a.its
MKIMAGE_OUT=${BINARIES_DIR}/part0-000000.itb
${MKIMAGE} -f ${MKIMAGE_IN} ${MKIMAGE_OUT}

View File

@@ -1,74 +0,0 @@
Arcturus uCLS1012A SoM
======================
This tutorial describes how to use the predefined Buildroot
configuration for the Arcturus uCLS101A SoM platform.
Additional information about the uCLS1012A System on Module can be found at
https://www.arcturusnetworks.com/products/ucls1012a
and product support for registered users at
https://www.arcturusnetworks.com/support
Building
--------
Return to the top directory <buildrootdir> and execute the following commands.
make arcturus_ucls1012a_defconfig
make
Result of the build
-------------------
After building, you should obtain this tree:
output/images/
+-- arc-ucls1012a.dtb
+-- Image
+-- part0-000000.itb
+-- rootfs.cpio
+-- rootfs.cpio.gz
+-- rootfs.tar
+-- u-boot.bin
+-- ucls1012a.its
Flashing
--------
You'll need to program the image created by buildroot into the SPI NOR flash.
1. Reboot your module and via the serial console press <escape> to enter the B$
u-boot shell.
From the shell you will need to update four environment variables replacing the
IPv4 IP Address with ones that will work with your network and tftp server.
B$ setenv ipaddr 192.168.1.81
B$ setenv serverip 192.168.1.80
B$ setenv gatewayip 192.168.1.1
B$ setenv netmask 255.255.255.0
B$ saveenv
2. Enable tftp server to serve the <buildrootdir>/output/images/ folder.
3. Program the new U-Boot binary (optional)
If you don't feel confident upgrading your bootloader then don't do it,
it's unnecessary most of the time.
B$ tftp u-boot.bin
B$ run program_uboot
4. Program the ITB image (includes Kernel, DTB and Ramdisk)
B$ tftp part0-000000.itb
B$ run iprogram
5. Booting your new system
Reboot your system by reset command
B$ reset
or
B$ run bootcmd
Good Luck !

View File

@@ -1,14 +0,0 @@
#!/bin/sh
#
case "$1" in
start)
modprobe pfe
;;
stop)
;;
restart|reload)
;;
*)
echo "Usage: $0 {start|stop|restart}"
exit 1
esac

View File

@@ -1,4 +0,0 @@
label Tinker linux-next
kernel /boot/uImage
devicetree /boot/rk3288-tinker.dtb
append console=ttyS2,115200n8 root=/dev/mmcblk0p1 rootwait

View File

@@ -1,15 +0,0 @@
image sdcard.img {
hdimage {
}
partition u-boot-spl-dtb {
in-partition-table = "no"
image = "u-boot-spl-dtb.img"
offset = 32K
}
partition rootfs {
partition-type = 0x83
image = "rootfs.ext4"
}
}

View File

@@ -1,9 +0,0 @@
#!/bin/sh
MKIMAGE=$HOST_DIR/bin/mkimage
BOARD_DIR="$(dirname $0)"
$MKIMAGE -n rk3288 -T rksd -d $BINARIES_DIR/u-boot-spl-dtb.bin $BINARIES_DIR/u-boot-spl-dtb.img
cat $BINARIES_DIR/u-boot-dtb.bin >> $BINARIES_DIR/u-boot-spl-dtb.img
install -m 0644 -D $BOARD_DIR/extlinux.conf $TARGET_DIR/boot/extlinux/extlinux.conf

View File

@@ -1,37 +0,0 @@
Tinker RK3288
=============
Tinker Board is a Single Board Computer (SBC) in an ultra-small form
factor that offers class-leading performance while leveraging outstanding
mechanical compatibility.
Tinker link:
https://www.asus.com/in/Single-Board-Computer/Tinker-Board/
Wiki link:
https://openedev.amarulasolutions.com/display/ODWIKI/Tinker+RK3288
How to build it
===============
$ make asus_tinker_rk3288_defconfig
Then you can edit the build options using
$ make menuconfig
Compile all and build rootfs image:
$ make
Prepare your SDCard
===================
Buildroot generates a ready-to-use SD card image that you can flash directly to
the card. The image will be in output/images/sdcard.img.
You can write this image directly to an SD card device (i.e. /dev/xxx):
$ sudo dd if=output/images/sdcard.img of=/dev/xxx
$ sudo sync
Finally, you can insert the SD card to the Tinker RK3288 board and boot it.

View File

@@ -4,10 +4,6 @@ BUILDIR=$1
TTY=$2
BOARD=$3
family_at91sam9260ek="at91sam9260ek"
mach_at91sam9260ek="at91sam9260-ek"
dtb_at91sam9260ek="at91sam9260ek.dtb"
family_at91sam9g45m10ek="at91sam9m10g45ek"
mach_at91sam9g45m10ek="at91sam9m10-g45-ek"
dtb_at91sam9g45m10ek="at91sam9m10g45ek.dtb"
@@ -20,10 +16,6 @@ family_at91sam9g15ek="at91sam9x5ek"
mach_at91sam9g15ek="at91sam9g15-ek"
dtb_at91sam9g15ek="at91sam9g15ek.dtb"
family_at91sam9g20ek="at91sam9g20ek"
mach_at91sam9g20ek="at91sam9g20-ek"
dtb_at91sam9g20ek="at91sam9g20ek.dtb"
family_at91sam9g25ek="at91sam9x5ek"
mach_at91sam9g25ek="at91sam9g25-ek"
dtb_at91sam9g25ek="at91sam9g25ek.dtb"
@@ -98,11 +90,9 @@ Usage:
$0 <builddir_path> <interface> <board>
Available boards:
at91sam9260ek
at91sam9g45m10ek
at91sam9rlek
at91sam9g15ek
at91sam9g20ek
at91sam9g25ek
at91sam9x25ek
at91sam9g35ek

View File

@@ -1,7 +0,0 @@
setenv bootargs console=ttyS0,115200 earlyprintk root=/dev/mmcblk0p2 rootwait
mmc dev 0
fatload mmc 0 $kernel_addr_r zImage
fatload mmc 0 $fdt_addr_r sun8i-r40-bananapi-m2-ultra.dtb
bootz $kernel_addr_r - $fdt_addr_r

View File

@@ -1,33 +0,0 @@
image boot.vfat {
vfat {
files = {
"zImage",
"sun8i-r40-bananapi-m2-ultra.dtb",
"boot.scr"
}
}
size = 64M
}
image sdcard.img {
hdimage {
}
partition u-boot {
in-partition-table = "no"
image = "u-boot-sunxi-with-spl.bin"
offset = 8192
size = 1040384 # 1MB - 8192
}
partition boot {
partition-type = 0xC
bootable = "true"
image = "boot.vfat"
}
partition rootfs {
partition-type = 0x83
image = "rootfs.ext4"
}
}

View File

@@ -1,35 +0,0 @@
Intro
=====
This default configuration will allow you to start experimenting with the
buildroot environment for the Bananapi M2 ULtra. With the current
configuration it will bring-up the board, and allow access through the
serial console.
Bananapi M2 Ultra link:
http://www.banana-pi.org/m2u.html
This configuration uses U-Boot mainline and kernel mainline.
How to build
============
$ make bananapi_m2_ultra_defconfig
$ make
Note: you will need access to the internet to download the required
sources.
How to write the SD card
========================
Once the build process is finished you will have an image called "sdcard.img"
in the output/images/ directory.
Copy the bootable "sdcard.img" onto an SD card with "dd":
$ sudo dd if=output/images/sdcard.img of=/dev/sdX
$ sudo sync
Insert the micro SDcard in your Bananapi M2 Ultra and power it up. The console
is on the serial line, 115200 8N1.

View File

@@ -1,8 +1,4 @@
bootpart=0:1
devtype=mmc
bootdir=
bootfile=zImage
bootpartition=mmcblk0p2
set_mmc1=if test $board_name = A33515BB; then setenv bootpartition mmcblk1p2; fi
set_bootargs=setenv bootargs console=ttyO0,115200n8 root=/dev/${bootpartition} rw rootfstype=ext4 rootwait
uenvcmd=run set_mmc1; run set_bootargs;run loadimage;run loadfdt;printenv bootargs;bootz ${loadaddr} - ${fdtaddr}
bootargs=console=ttyO0,115200n8 root=/dev/mmcblk0p2 rw rootfstype=ext4 rootwait
uenvcmd=run loadimage;run loadfdt;printenv bootargs;bootz ${loadaddr} - ${fdtaddr};

View File

@@ -0,0 +1,131 @@
setenv bootargs ''
if itest.s x6SX == "x${cpu}" || itest.s x7D == "x${cpu}"; then
a_script=0x80800000
a_zImage=0x80800000
a_fdt=0x83000000
m4=''
if itest.s "x1" == "x$m4enabled" ; then
run m4boot;
m4='-m4';
fi
else
a_script=0x10800000
a_zImage=0x10800000
a_fdt=0x13000000
fi
setenv initrd_high 0xffffffff
if itest.s "x" == "x${dtbname}" ; then
if itest.s x6SOLO == "x${cpu}" ; then
dtbname=imx6dl-${board}.dtb;
elif itest.s x6DL == "x${cpu}" ; then
dtbname=imx6dl-${board}.dtb;
elif itest.s x6QP == "x${cpu}" ; then
dtbname=imx6qp-${board}.dtb;
elif itest.s x6SX == "x${cpu}" ; then
dtbname=imx6sx-${board}${m4}.dtb;
elif itest.s x7D == "x${cpu}" ; then
dtbname=imx7d-${board}${m4}.dtb;
else
dtbname=imx6q-${board}.dtb;
fi
fi
if load ${dtype} ${disk}:1 ${a_script} uEnv.txt ; then
env import -t ${a_script} ${filesize}
fi
if itest.s x == x${bootdir} ; then
bootdir=/boot/
fi
if itest.s x${bootpart} == x ; then
bootpart=1
fi
if load ${dtype} ${disk}:${bootpart} ${a_fdt} ${bootdir}${dtbname} ; then
fdt addr ${a_fdt}
setenv fdt_high 0xffffffff
else
echo "!!!! Error loading ${bootdir}${dtbname}";
exit;
fi
cmd_xxx_present=
fdt resize
if itest.s "x" != "x${cmd_custom}" ; then
run cmd_custom
cmd_xxx_present=1;
fi
if itest.s "x" != "x${cmd_hdmi}" ; then
run cmd_hdmi
cmd_xxx_present=1;
if itest.s x == x${allow_noncea} ; then
setenv bootargs ${bootargs} mxc_hdmi.only_cea=1;
echo "only CEA modes allowed on HDMI port";
else
setenv bootargs ${bootargs} mxc_hdmi.only_cea=0;
echo "non-CEA modes allowed on HDMI, audio may be affected";
fi
fi
if itest.s "x" != "x${cmd_lcd}" ; then
run cmd_lcd
cmd_xxx_present=1;
fi
if itest.s "x" != "x${cmd_lvds}" ; then
run cmd_lvds
cmd_xxx_present=1;
fi
if itest.s "x" != "x${cmd_lvds2}" ; then
run cmd_lvds2
cmd_xxx_present=1;
fi
if itest.s "x" == "x${cmd_xxx_present}" ; then
echo "!!!!!!!!!!!!!!!!"
echo "warning: your u-boot may be outdated, please upgrade"
echo "!!!!!!!!!!!!!!!!"
fi
setenv bootargs "${bootargs} console=${console},115200 vmalloc=400M consoleblank=0 rootwait fixrtc"
if test "sata" = "${dtype}" ; then
setenv bootargs "${bootargs} root=/dev/sda${bootpart}" ;
elif test "usb" = "${dtype}" ; then
setenv bootargs "${bootargs} root=/dev/sda${bootpart}" ;
else
setenv bootargs "${bootargs} root=/dev/mmcblk${disk}p${bootpart}"
fi
if itest.s "x" != "x${disable_giga}" ; then
setenv bootargs ${bootargs} fec.disable_giga=1
fi
if itest.s "x" != "x${wlmac}" ; then
setenv bootargs ${bootargs} wlcore.mac=${wlmac}
setenv bootargs ${bootargs} wlan.mac=${wlmac}
fi
if itest.s "x" != "x${gpumem}" ; then
setenv bootargs ${bootargs} galcore.contiguousSize=${gpumem}
fi
if itest.s "x" != "x${cma}" ; then
setenv bootargs ${bootargs} cma=${cma}
fi
if itest.s "x" != "x${show_fdt}" ; then
fdt print /
fi
if itest.s "x" != "x${show_env}" ; then
printenv
fi
if load ${dtype} ${disk}:${bootpart} ${a_zImage} ${bootdir}/zImage ; then
bootz ${a_zImage} - ${a_fdt}
fi
echo "Error loading kernel image"

View File

@@ -0,0 +1,69 @@
if itest.s a$uboot_defconfig == a; then
echo "Please set uboot_defconfig to the appropriate value"
exit
fi
offset=0x400
a_uImage1=0x12000000
a_uImage2=0x12400000
if itest.s x6SX == "x${cpu}" || itest.s x7D == "x${cpu}"; then
a_uImage1=0x82000000
a_uImage2=0x82400000
fi
setenv stdout serial,vga
echo "check U-Boot" ;
if load ${dtype} ${disk}:1 ${a_uImage1} u-boot.$uboot_defconfig ; then
else
echo "No U-Boot image found on SD card" ;
exit
fi
echo "read $filesize bytes from SD card" ;
if sf probe || sf probe || sf probe 1 27000000 || sf probe 1 27000000 ; then
echo "probed SPI ROM" ;
else
echo "Error initializing EEPROM" ;
exit
fi ;
if sf read ${a_uImage2} $offset $filesize ; then
else
echo "Error reading boot loader from EEPROM" ;
exit
fi
if cmp.b ${a_uImage1} ${a_uImage2} $filesize ; then
echo "------- U-Boot versions match" ;
exit
fi
echo "Need U-Boot upgrade" ;
echo "Program in 5 seconds" ;
for n in 5 4 3 2 1 ; do
echo $n ;
sleep 1 ;
done
echo "erasing" ;
sf erase 0 0xC0000 ;
# two steps to prevent bricking
echo "programming" ;
setexpr a1 ${a_uImage1} + 0x400
setexpr o1 ${offset} + 0x400
setexpr s1 ${filesize} - 0x400
sf write ${a1} ${o1} ${s1} ;
sf write ${a_uImage1} $offset 0x400 ;
echo "verifying" ;
if sf read ${a_uImage2} $offset $filesize ; then
else
echo "Error re-reading EEPROM" ;
exit
fi
if cmp.b ${a_uImage1} ${a_uImage2} $filesize ; then
else
echo "Read verification error" ;
exit
fi
while echo "---- U-Boot upgraded. reset" ; do
sleep 120
done

View File

@@ -2,8 +2,6 @@ setenv bootargs ''
setenv initrd_high 0xffffffff
m4=''
kernelimage=zImage
bootcommand=bootz
a_base=0x10000000
if itest.s x51 == "x${imx_cpu}" ; then
a_base=0x90000000
@@ -11,14 +9,10 @@ elif itest.s x53 == "x${imx_cpu}"; then
a_base=0x70000000
elif itest.s x6SX == "x${imx_cpu}" || itest.s x7D == "x${imx_cpu}"; then
a_base=0x80000000
elif itest.s x8MQ == "x${imx_cpu}"; then
a_base=0x40000000
kernelimage=Image
bootcommand=booti
fi
if itest.s "x1" == "x${m4enabled}" ; then
run m4boot;
m4='-m4';
if itest.s "x1" == "x$m4enabled" ; then
run m4boot;
m4='-m4';
fi
fi
setexpr a_script ${a_base} + 0x00800000
@@ -45,12 +39,10 @@ if itest.s "x" == "x${fdt_file}" ; then
fdt_file=imx6sx-${board}${m4}.dtb;
elif itest.s x7D == "x${imx_cpu}" ; then
fdt_file=imx7d-${board}${m4}.dtb;
elif itest.s x8MQ == "x${imx_cpu}" ; then
fdt_file=imx8mq-${board}${m4}.dtb;
elif itest.s x51 == "x${imx_cpu}" ; then
fdt_file=imx51-${board}.dtb;
fdt_file=imx51-${board}${m4}.dtb;
elif itest.s x53 == "x${imx_cpu}" ; then
fdt_file=imx53-${board}.dtb;
fdt_file=imx53-${board}${m4}.dtb;
else
fdt_file=imx6q-${board}.dtb;
fi
@@ -74,12 +66,16 @@ else
exit;
fi
cmd_xxx_present=
fdt resize
if itest.s "x" != "x${cmd_custom}" ; then
run cmd_custom
cmd_xxx_present=1;
fi
if itest.s "x" != "x${cmd_hdmi}" ; then
run cmd_hdmi
cmd_xxx_present=1;
if itest.s x == x${allow_noncea} ; then
setenv bootargs ${bootargs} mxc_hdmi.only_cea=1;
echo "only CEA modes allowed on HDMI port";
@@ -91,18 +87,25 @@ fi
if itest.s "x" != "x${cmd_lcd}" ; then
run cmd_lcd
cmd_xxx_present=1;
fi
if itest.s "x" != "x${cmd_lcd2}" ; then
run cmd_lcd2
cmd_xxx_present=1;
fi
if itest.s "x" != "x${cmd_lvds}" ; then
run cmd_lvds
cmd_xxx_present=1;
fi
if itest.s "x" != "x${cmd_lvds2}" ; then
run cmd_lvds2
cmd_xxx_present=1;
fi
if itest.s "x" != "x${cmd_mipi}" ; then
run cmd_mipi
if itest.s "x" == "x${cmd_xxx_present}" ; then
echo "!!!!!!!!!!!!!!!!"
echo "warning: your u-boot may be outdated, please upgrade"
echo "!!!!!!!!!!!!!!!!"
fi
if test "sata" = "${devtype}" ; then
@@ -123,6 +126,7 @@ fi
if itest.s "x" != "x${wlmac}" ; then
setenv bootargs ${bootargs} wlcore.mac=${wlmac}
setenv bootargs ${bootargs} wlan.mac=${wlmac}
fi
if itest.s "x" != "x${gpumem}" ; then
@@ -145,7 +149,7 @@ if itest.s "x" != "x${show_env}" ; then
printenv
fi
if load ${devtype} ${devnum}:${distro_bootpart} ${a_zImage} ${prefix}${kernelimage} ; then
${bootcommand} ${a_zImage} - ${a_fdt}
if load ${devtype} ${devnum}:${distro_bootpart} ${a_zImage} ${prefix}zImage ; then
bootz ${a_zImage} - ${a_fdt}
fi
echo "Error loading kernel image"

View File

@@ -6,24 +6,20 @@
#
BOARD_DIR="$(dirname $0)"
UBOOT_DEFCONFIG="$(grep BR2_TARGET_UBOOT_BOARD_DEFCONFIG ${BR2_CONFIG} | sed 's/.*\"\(.*\)\"/\1/')"
if grep -Eq "^BR2_aarch64=y$" ${BR2_CONFIG}; then
MKIMAGE_ARCH=arm64
UBOOT_BINARY=imx8-boot-sd.bin
else
MKIMAGE_ARCH=arm
UBOOT_BINARY=u-boot.imx
fi
# bd u-boot looks for standard bootscript
$HOST_DIR/bin/mkimage -A $MKIMAGE_ARCH -O linux -T script -C none -a 0 -e 0 \
-n "boot script" -d $BOARD_DIR/boot.cmd $TARGET_DIR/boot/boot.scr
install -m 0644 -D $BINARIES_DIR/boot.scr $TARGET_DIR/boot/
# legacy 6x_bootscript script
$HOST_DIR/bin/mkimage -A arm -O linux -T script -C none -a 0 -e 0 \
-n "boot script" -d $BOARD_DIR/6x_bootscript.txt $TARGET_DIR/6x_bootscript
# u-boot / update script for bd upgradeu command
if [ -e $BINARIES_DIR/$UBOOT_BINARY ]; then
install -D -m 0644 $BINARIES_DIR/$UBOOT_BINARY \
$TARGET_DIR/u-boot.$UBOOT_DEFCONFIG
$HOST_DIR/bin/mkimage -A $MKIMAGE_ARCH -O linux -T script -C none -a 0 -e 0 \
-n "upgrade script" -d $BOARD_DIR/upgrade.cmd $TARGET_DIR/upgrade.scr
if [ -e $BINARIES_DIR/u-boot.imx ];
then
install -D -m 0644 $BINARIES_DIR/u-boot.imx $TARGET_DIR/u-boot.imx
$HOST_DIR/bin/mkimage -A arm -O linux -T script -C none -a 0 -e 0 \
-n "upgrade script" -d $BOARD_DIR/upgrade.cmd $TARGET_DIR/upgrade.scr
# legacy 6x_upgrade script
$HOST_DIR/bin/mkimage -A arm -O linux -T script -C none -a 0 -e 0 \
-n "upgrade script" -d $BOARD_DIR/6x_upgrade.txt $TARGET_DIR/6x_upgrade
fi

View File

@@ -7,7 +7,6 @@ offset=0x400
erase_size=0xC0000
qspi_offset=0x0
a_base=0x12000000
block_size=0x200
if itest.s x51 == "x${imx_cpu}"; then
a_base=0x92000000
@@ -15,9 +14,6 @@ elif itest.s x53 == "x${imx_cpu}"; then
a_base=0x72000000
elif itest.s x6SX == "x${imx_cpu}" || itest.s x7D == "x${imx_cpu}"; then
a_base=0x82000000
elif itest.s x8MQ == "x${imx_cpu}"; then
a_base=0x42000000
offset=0x8400
fi
qspi_match=1
@@ -29,54 +25,6 @@ setexpr a_script ${a_base}
setenv stdout serial,vga
if itest.s "x${sfname}" == "x" ; then
# U-Boot resides in (e)MMC
if itest.s "x${env_dev}" == "x" || itest.s "x${env_part}" == "x"; then
echo "Please set env_dev/part to the appropriate values"
exit
fi
# Load bootloader binary for this board
if ${fs}load ${devtype} ${devnum}:${distro_bootpart} ${a_uImage1} u-boot.$uboot_defconfig ; then
else
echo "File u-boot.$uboot_defconfig not found on SD card" ;
exit
fi
# Compute block count for filesize and offset
setexpr cntoffset ${offset} / ${block_size}
setexpr cntfile ${filesize} / ${block_size}
# Add 1 in case the $filesize is not a multiple of $block_size
setexpr cntfile ${cntfile} + 1
# Select media partition (if different from main partition)
mmc dev ${env_dev} ${env_part}
# Read and compare current U-Boot
mmc read ${a_uImage2} ${cntoffset} ${cntfile}
if cmp.b ${a_uImage1} ${a_uImage2} ${filesize} ; then
echo "------- U-Boot versions match" ;
exit ;
fi
echo "Need U-Boot upgrade" ;
echo "Program in 5 seconds" ;
for n in 5 4 3 2 1 ; do
echo $n ;
sleep 1 ;
done
mmc write ${a_uImage1} ${cntoffset} ${cntfile}
# Make sure to boot from the proper partition
if itest ${env_part} != 0 ; then
mmc partconf ${env_dev} 1 ${env_part} 0
fi
# Switch back to main eMMC partition (to avoid confusion)
mmc dev ${env_dev}
else
# U-Boot resides in NOR flash
if sf probe || sf probe || sf probe 1 27000000 || sf probe 1 27000000 ; then
echo "probed SPI ROM" ;
else
@@ -84,13 +32,9 @@ else
exit
fi
if itest.s "x${sfname}" == "xat45db041d" ; then
erase_size=0x7e000
fi
if itest.s x7D == "x${imx_cpu}"; then
echo "check qspi parameter block" ;
if ${fs}load ${devtype} ${devnum}:${distro_bootpart} ${a_qspi1} qspi-${sfname}.${uboot_defconfig} ; then
if ${fs}load ${devtype} ${devnum}:1 ${a_qspi1} qspi-${sfname}.${uboot_defconfig} ; then
else
echo "parameter file qspi-${sfname}.${uboot_defconfig} not found on SD card"
exit
@@ -119,7 +63,7 @@ fi
echo "check U-Boot" ;
if ${fs}load ${devtype} ${devnum}:${distro_bootpart} ${a_uImage1} u-boot.$uboot_defconfig ; then
if ${fs}load ${devtype} ${devnum}:1 ${a_uImage1} u-boot.$uboot_defconfig ; then
else
echo "File u-boot.$uboot_defconfig not found on SD card" ;
exit
@@ -136,7 +80,7 @@ if cmp.b ${a_uImage1} ${a_uImage2} $filesize ; then
if itest.s "${qspi_match}" == "1" ; then
echo "------- upgrade not needed" ;
if itest.s "x" != "x${next}" ; then
if ${fs}load ${devtype} ${devnum}:${distro_bootpart} ${a_script} ${next} ; then
if ${fs}load ${devtype} ${devnum}:1 ${a_script} ${next} ; then
source ${a_script}
else
echo "${next} not found on SD card"
@@ -198,14 +142,13 @@ if itest.s x7D == "x${imx_cpu}"; then
fi
if itest.s "x" != "x${next}" ; then
if ${fs}load ${devtype} ${devnum}:${distro_bootpart} ${a_script} ${next} ; then
if ${fs}load ${devtype} ${devnum}:1 ${a_script} ${next} ; then
source ${a_script}
else
echo "${next} not found on ${devtype} ${devnum}:${distro_bootpart}"
echo "${next} not found on ${devtype} ${devnum}"
fi
fi
fi
while echo "---- U-Boot upgraded. Please reset the board" ; do
while echo "---- U-Boot upgraded. reset" ; do
sleep 120
done

View File

@@ -1,66 +0,0 @@
From b3a1e97498e7987073775d49a703932c20f2df1d Mon Sep 17 00:00:00 2001
From: Ezequiel Garcia <ezequiel@collabora.com>
Date: Mon, 12 Nov 2018 14:04:46 -0300
Subject: [PATCH] mips: Remove default endiannes
Currently, trying to build ci20_mmc fails on little-endian
toolchains. The problem seems to be that some targets don't
have CONFIG_SYS_LITTLE_ENDIAN properly set, and therefore
the default -EB switch is selected.
Let's get rid of the default switch entirely, and fix this problem.
While this may be a hack, it is a quick solution until
U-Boot gets CI20 proper support.
make ARCH=mips CROSS_COMPILE=mips-linux-gnu- ci20_mmc
Configuring for ci20_mmc - Board: ci20, Options: SPL_MMC_SUPPORT,ENV_IS_IN_MMC
make
make[1]: Entering directory '/home/zeta/repos/u-boot-ci20'
Generating include/autoconf.mk
Generating include/autoconf.mk.dep
mips-linux-gnu-gcc: error: may not use both -EB and -EL
mips-linux-gnu-gcc: error: may not use both -EB and -EL
Generating include/spl-autoconf.mk
mips-linux-gnu-gcc: error: may not use both -EB and -EL
Generating include/tpl-autoconf.mk
mips-linux-gnu-gcc: error: may not use both -EB and -EL
mips-linux-gnu-gcc -DDO_DEPS_ONLY \
-g -Os -ffunction-sections -fdata-sections -D__KERNEL__ -I/home/zeta/repos/u-boot-ci20/include -fno-builtin -ffreestanding -nostdinc -isystem /home/zeta/repos/buildroot/mips/output/host/opt/ext-toolchain/bin/../lib/gcc/mips-linux-gnu/5.3.0/include -pipe -DCONFIG_MIPS -D__MIPS__ -G 0 -EB -msoft-float -fpic -mabicalls -march=mips32 -mabi=32 -DCONFIG_32BIT -mno-branch-likely -Wall -Wstrict-prototypes \
-o lib/asm-offsets.s lib/asm-offsets.c -c -S
if [ -f arch/mips/cpu/xburst/jz4780/asm-offsets.c ];then \
mips-linux-gnu-gcc -DDO_DEPS_ONLY \
-g -Os -ffunction-sections -fdata-sections -D__KERNEL__ -I/home/zeta/repos/u-boot-ci20/include -fno-builtin -ffreestanding -nostdinc -isystem /home/zeta/repos/buildroot/mips/output/host/opt/ext-toolchain/bin/../lib/gcc/mips-linux-gnu/5.3.0/include -pipe -DCONFIG_MIPS -D__MIPS__ -G 0 -EB -msoft-float -fpic -mabicalls -march=mips32 -mabi=32 -DCONFIG_32BIT -mno-branch-likely -Wall -Wstrict-prototypes \
-o arch/mips/cpu/xburst/jz4780/asm-offsets.s arch/mips/cpu/xburst/jz4780/asm-offsets.c -c -S; \
else \
touch arch/mips/cpu/xburst/jz4780/asm-offsets.s; \
fi
mips-linux-gnu-gcc: error: may not use both -EB and -EL
make[1]: *** [Makefile:747: lib/asm-offsets.s] Error 1
make[1]: *** Waiting for unfinished jobs....
make[1]: Leaving directory '/home/zeta/repos/u-boot-ci20'
make: *** [.boards.depend:463: ci20_mmc] Error 2
Signed-off-by: Ezequiel Garcia <ezequiel@collabora.com>
---
https://github.com/MIPS/CI20_u-boot/pull/19
arch/mips/config.mk | 3 ---
1 file changed, 3 deletions(-)
diff --git a/arch/mips/config.mk b/arch/mips/config.mk
index c89279025507..43560abbc0e1 100644
--- a/arch/mips/config.mk
+++ b/arch/mips/config.mk
@@ -20,9 +20,6 @@ ifdef CONFIG_SYS_BIG_ENDIAN
ENDIANNESS := -EB
endif
-# Default to EB if no endianess is configured
-ENDIANNESS ?= -EB
-
PLATFORM_CPPFLAGS += -DCONFIG_MIPS -D__MIPS__
#
--
2.19.1

View File

@@ -1,17 +0,0 @@
image sdcard.img {
hdimage {
}
partition u-boot {
in-partition-table = "no"
image = "u-boot.imx"
offset = 1024
}
partition rootfs {
partition-type = 0x83
image = "rootfs.ext2"
offset = 1M
size = 60M
}
}

View File

@@ -1,38 +0,0 @@
Buildroot for Embest RIoTboard
==============================
This is a small development board, based on Freescale IMX6 Solo SoC
(single core ARM Cortex-A9).
More details about the board can be found at:
http://www.embest-tech.com/riotboard
1. Compiling buildroot
----------------------
$ make riotboard_defconfig
$ make
2. Installing buildroot
-----------------------
Prepare an SD-card and plug it into your card reader. Always double
check the block device before writing to it, as writing to the wrong
block device can cause irrecoverable data loss. Now you can write the
image to your SD-card:
sudo dd if=output/images/sdcard.img of=/dev/<sdcard-block-device> bs=1M
3. Running buildroot
--------------------
Position the board so you can read the label "RIoTboard" on the right
side of SW1 DIP switches. Configure the SW1 swiches like this:
1 0 1 0 0 1 0 1
ON OFF ON OFF OFF ON OFF ON
Now plug your prepared SD-card in slot J6. Connect a serial console
(115200, 8, N, 1) to header J18. Connect a 5V/1A power supply to the
board and enjoy.

View File

@@ -1,6 +0,0 @@
default buildroot
label buildroot
kernel /boot/zImage
devicetree /boot/imx6dl-riotboard.dtb
append console=ttymxc1,115200 root=/dev/mmcblk1p1 rw

View File

@@ -22,7 +22,7 @@ image sdcard.img {
partition u-boot {
in-partition-table = "no"
image = "%UBOOTBIN%"
image = "u-boot.imx"
offset = 1024
}

View File

@@ -1,40 +0,0 @@
# Minimal SD card image for the Freescale iMX8 boards
#
# We mimic the .sdcard Freescale's image format:
# * the SD card must have 33 kB free space at the beginning,
# * U-Boot is integrated into imx8-boot-sd.bin and is dumped as is,
# * a FAT partition at offset 32MB is containing Image and DTB files
# * a single root filesystem partition is required (ext2, ext3 or ext4)
#
image boot.vfat {
vfat {
files = {
%FILES%
}
}
size = 32M
}
image sdcard.img {
hdimage {
}
partition imx-boot {
in-partition-table = "no"
image = "imx8-boot-sd.bin"
offset = 33K
}
partition boot {
partition-type = 0xC
bootable = "true"
image = "boot.vfat"
offset = 8M
}
partition rootfs {
partition-type = 0x83
image = "rootfs.ext2"
}
}

View File

@@ -1,20 +0,0 @@
#!/usr/bin/env bash
main ()
{
UBOOT_DTB=$2
if [ ! -e "$UBOOT_DTB" ]; then
echo "ERROR: couldn't find dtb: $UBOOT_DTB"
exit 1
fi
cat ${BINARIES_DIR}/u-boot-spl.bin ${BINARIES_DIR}/lpddr4_pmu_train_fw.bin > ${BINARIES_DIR}/u-boot-spl-ddr.bin
BL31=${BINARIES_DIR}/bl31.bin BL33=${BINARIES_DIR}/u-boot.bin ${HOST_DIR}/bin/mkimage_fit_atf.sh ${UBOOT_DTB} > ${BINARIES_DIR}/u-boot.its
${HOST_DIR}/bin/mkimage -E -p 0x3000 -f ${BINARIES_DIR}/u-boot.its ${BINARIES_DIR}/u-boot.itb
rm -f ${BINARIES_DIR}/u-boot.its
${HOST_DIR}/bin/mkimage_imx8 -fit -signed_hdmi ${BINARIES_DIR}/signed_hdmi_imx8m.bin -loader ${BINARIES_DIR}/u-boot-spl-ddr.bin 0x7E1000 -second_loader ${BINARIES_DIR}/u-boot.itb 0x40200000 0x60000 -out ${BINARIES_DIR}/imx8-boot-sd.bin
exit $?
}
main $@

View File

@@ -7,10 +7,10 @@
#
dtb_list()
{
local DTB_LIST="$(sed -n 's/^BR2_LINUX_KERNEL_INTREE_DTS_NAME="\([\/a-z0-9 \-]*\)"$/\1/p' ${BR2_CONFIG})"
local DTB_LIST="$(sed -n 's/^BR2_LINUX_KERNEL_INTREE_DTS_NAME="\([a-z0-9 \-]*\)"$/\1/p' ${BR2_CONFIG})"
for dt in $DTB_LIST; do
echo -n "\"`basename $dt`.dtb\", "
echo -n "\"$dt.dtb\", "
done
}
@@ -23,8 +23,6 @@ linux_image()
{
if grep -Eq "^BR2_LINUX_KERNEL_UIMAGE=y$" ${BR2_CONFIG}; then
echo "\"uImage\""
elif grep -Eq "^BR2_LINUX_KERNEL_IMAGE=y$" ${BR2_CONFIG}; then
echo "\"Image\""
else
echo "\"zImage\""
fi
@@ -32,33 +30,20 @@ linux_image()
genimage_type()
{
if grep -Eq "^BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX8M=y$" ${BR2_CONFIG}; then
echo "genimage.cfg.template_imx8"
elif grep -Eq "^BR2_TARGET_UBOOT_SPL=y$" ${BR2_CONFIG}; then
if grep -Eq "^BR2_TARGET_UBOOT_SPL=y$" ${BR2_CONFIG}; then
echo "genimage.cfg.template_spl"
else
echo "genimage.cfg.template"
fi
}
uboot_image()
{
if grep -Eq "^BR2_TARGET_UBOOT_FORMAT_DTB_IMX=y$" ${BR2_CONFIG}; then
echo "u-boot-dtb.imx"
elif grep -Eq "^BR2_TARGET_UBOOT_FORMAT_IMX=y$" ${BR2_CONFIG}; then
echo "u-boot.imx"
fi
}
main()
{
local FILES="$(dtb_list) $(linux_image)"
local UBOOTBIN="$(uboot_image)"
local GENIMAGE_CFG="$(mktemp --suffix genimage.cfg)"
local GENIMAGE_TMP="${BUILD_DIR}/genimage.tmp"
sed -e "s/%FILES%/${FILES}/" \
-e "s/%UBOOTBIN%/${UBOOTBIN}/" \
board/freescale/common/imx/$(genimage_type) > ${GENIMAGE_CFG}
rm -rf "${GENIMAGE_TMP}"

View File

@@ -1,89 +0,0 @@
From 27a2cd6a1980adf3002412678c8fdec6528dc47d Mon Sep 17 00:00:00 2001
From: Trent Piepho <tpiepho@impinj.com>
Date: Fri, 6 Apr 2018 17:11:27 -0700
Subject: [PATCH] imx: Create distinct pre-processed mkimage config files
Each imx image is created by a separate sub-make and during this process
the mkimage config file is run though cpp.
The cpp output is to the same file no matter what imx image is being
created.
This means if two imx images are generated in parallel they will attempt
to independently produce the same pre-processed mkimage config file at
the same time.
Avoid the problem by making the pre-processed config file name unique
based on the imx image it will be used in. This way each image will
create a unique config file and they won't clobber each other when run
in parallel.
This should fixed the build bug referenced in b5b0e4e3 ("imximage:
Remove failure when no IVT offset is found").
Cc: Breno Lima <breno.lima@nxp.com>
Cc: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Cc: Fabio Estevam <fabio.estevam@nxp.com>
Signed-off-by: Trent Piepho <tpiepho@impinj.com>
Tested-by: Fabio Estevam <fabio.estevam@nxp.com>
[fabio: Adapted to imx_v2017.03_4.9.11_1.0.0_ga]
Signed-off-by: Fabio Estevam <festevam@gmail.com>
---
arch/arm/imx-common/Makefile | 15 ++++++++-------
1 file changed, 8 insertions(+), 7 deletions(-)
diff --git a/arch/arm/imx-common/Makefile b/arch/arm/imx-common/Makefile
index d862258..f1bae8d 100644
--- a/arch/arm/imx-common/Makefile
+++ b/arch/arm/imx-common/Makefile
@@ -69,9 +69,11 @@ endif
quiet_cmd_cpp_cfg = CFGS $@
cmd_cpp_cfg = $(CPP) $(cpp_flags) -x c -o $@ $<
-IMX_CONFIG = $(CONFIG_IMX_CONFIG:"%"=%).cfgtmp
+# mkimage source config file
+IMX_CONFIG = $(CONFIG_IMX_CONFIG:"%"=%)
-$(IMX_CONFIG): %.cfgtmp: % FORCE
+# How to create a cpp processed config file, they all use the same source
+%.cfgout: $(IMX_CONFIG) FORCE
$(Q)mkdir -p $(dir $@)
$(call if_changed_dep,cpp_cfg)
@@ -79,7 +81,7 @@ MKIMAGEFLAGS_u-boot.imx = -n $(filter-out $(PLUGIN).bin $< $(PHONY),$^) -T imxim
-e $(CONFIG_SYS_TEXT_BASE)
u-boot.imx: MKIMAGEOUTPUT = u-boot.imx.log
-u-boot.imx: u-boot.bin $(IMX_CONFIG) $(PLUGIN).bin FORCE
+u-boot.imx: u-boot.bin u-boot.cfgout $(PLUGIN).bin FORCE
$(call if_changed,mkimage)
ifeq ($(CONFIG_OF_SEPARATE),y)
@@ -87,16 +89,15 @@ MKIMAGEFLAGS_u-boot-dtb.imx = -n $(filter-out $(PLUGIN).bin $< $(PHONY),$^) -T i
-e $(CONFIG_SYS_TEXT_BASE)
u-boot-dtb.imx: MKIMAGEOUTPUT = u-boot-dtb.imx.log
-u-boot-dtb.imx: u-boot-dtb.bin $(IMX_CONFIG) $(PLUGIN).bin FORCE
+u-boot-dtb.imx: u-boot-dtb.bin u-boot-dtb.cfgout $(PLUGIN).bin FORCE
$(call if_changed,mkimage)
endif
MKIMAGEFLAGS_SPL = -n $(filter-out $(PLUGIN).bin $< $(PHONY),$^) -T imximage \
-e $(CONFIG_SPL_TEXT_BASE)
-
SPL: MKIMAGEOUTPUT = SPL.log
-SPL: spl/u-boot-spl.bin $(IMX_CONFIG) $(PLUGIN).bin FORCE
+SPL: spl/u-boot-spl.bin spl/u-boot-spl.cfgout $(PLUGIN).bin FORCE
$(call if_changed,mkimage)
MKIMAGEFLAGS_u-boot.uim = -A arm -O U-Boot -a $(CONFIG_SYS_TEXT_BASE) \
@@ -124,4 +125,4 @@ cmd_u-boot-nand-spl_imx = (printf '\000\000\000\000\106\103\102\040\001' && \
spl/u-boot-nand-spl.imx: SPL FORCE
$(call if_changed,u-boot-nand-spl_imx)
-targets += $(addprefix ../../../,$(IMX_CONFIG) SPL u-boot.uim spl/u-boot-nand-spl.imx)
+targets += $(addprefix ../../../,SPL spl/u-boot-spl.cfgout u-boot-dtb.cfgout u-boot.cfgout u-boot.uim spl/u-boot-nand-spl.imx)
--
2.7.4

View File

@@ -0,0 +1,55 @@
From 24ba28680abe868e8db3442a9bf523ad3af1febd Mon Sep 17 00:00:00 2001
From: Fabio Estevam <fabio.estevam@nxp.com>
Date: Fri, 9 Mar 2018 08:25:00 -0300
Subject: [PATCH] imximage: Remove failure when no IVT offset is found
Sometimes imximage throws the following error:
CFGS board/freescale/vf610twr/imximage.cfg.cfgtmp
CFGS board/freescale/vf610twr/imximage.cfg.cfgtmp
MKIMAGE u-boot-dtb.imx
Error: No BOOT_FROM tag in board/freescale/vf610twr/imximage.cfg.cfgtmp
arch/arm/mach-imx/Makefile:100: recipe for target 'u-boot-dtb.imx' failed
Later on, when running mkimage for the u-boot.imx it will succeed in
finding the IVT offset.
Looks like some race condition happening during parallel build when
processing mkimage for u-boot-dtb.imx and u-boot.imx.
A proper fix still needs to be implemented, but as a workaround let's
remove the error when the IVT offset is not found.
It is useful to have such message, especially during bring-up phase,
but the build error that it causes is severe, so better avoid the
build error for now.
The error checking can be re-implemented later when we have a proper
fix.
Reported-by: Breno Lima <breno.lima@nxp.com>
Reported-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Signed-off-by: Fabio Estevam <fabio.estevam@nxp.com>
---
tools/imximage.c | 5 -----
1 file changed, 5 deletions(-)
diff --git a/tools/imximage.c b/tools/imximage.c
index 0c43196..bef56f8 100644
--- a/tools/imximage.c
+++ b/tools/imximage.c
@@ -765,11 +765,6 @@ static uint32_t parse_cfg_file(struct imx_header *imxhdr, char *name)
(*set_dcd_rst)(imxhdr, dcd_len, name, lineno);
fclose(fd);
- /* Exit if there is no BOOT_FROM field specifying the flash_offset */
- if (imximage_ivt_offset == FLASH_OFFSET_UNDEFINED) {
- fprintf(stderr, "Error: No BOOT_FROM tag in %s\n", name);
- exit(EXIT_FAILURE);
- }
return dcd_len;
}
--
2.7.4

View File

@@ -1,80 +0,0 @@
***************************
Freescale i.MX8MQ EVK board
***************************
This file documents the Buildroot support for the Freescale i.MX8MQ
EVK board.
Build
=====
First, configure Buildroot for the i.MX8MQ EVK board:
make freescale_imx8mqevk_defconfig
Build all components:
make
You will find in output/images/ the following files:
- bl31.bin
- boot.vfat
- fsl-imx8mq-evk.dtb
- Image
- imx-boot-imx8mqevk-sd.bin
- lpddr4_pmu_train_fw.bin
- rootfs.ext2
- rootfs.ext4
- rootfs.tar
- sdcard.img
- signed_hdmi_imx8m.bin
- u-boot.bin
- u-boot.imx
- u-boot-nodtb.bin
- u-boot-spl-ddr.bin
Create a bootable SD card
=========================
To determine the device associated to the SD card have a look in the
/proc/partitions file:
cat /proc/partitions
Buildroot prepares a bootable "sdcard.img" image in the output/images/
directory, ready to be dumped on a SD card. Launch the following
command as root:
dd if=output/images/sdcard.img of=/dev/<your-sd-device>
*** WARNING! This will destroy all the card content. Use with care! ***
For details about the medium image layout, see the definition in
board/freescale/common/imx/genimage.cfg.template_imx8.
Boot the i.MX8MQ EVK board
==========================
To boot your newly created system:
- insert the SD card in the SD slot of the board;
- Configure the switches as follows:
SW801: ON ON OFF OFF
SW802: ON OFF
- put a micro USB cable into the Debug USB Port and connect using a terminal
emulator at 115200 bps, 8n1;
- power on the board.
Enable HDMI output
==================
To enable HDMI output at boot you must provide the video kernel boot
argument. To set the video boot argument from U-Boot run after
stoping in U-Boot prompt:
setenv mmcargs 'setenv bootargs console=${console} root=${mmcroot} video=HDMI-A-1:1920x1080-32@60'
saveenv
reset
Change screen resolution to suit your connected display.
Enjoy!

View File

@@ -1,25 +0,0 @@
The bootloader is no longer buildable in the latest Freescale/NXP tree or
upstream. As such, retrieve the "Image: SDK V1.2 e500v2 Binary ISO" from
NXP downloads and follow the release notes for reflashing.
For programming the kernel and rootfs created by buildroot into the flash.
The fast way is to tftp transfer the files via one of the network interfaces.
Make sure your devkit has ipaddr and serverip defined to reach your tftp
server.
(Assuming the default u-boot env from NXP)
1. Program the DTB to NOR flash
=> setenv dtbfile p1025twr.dtb
=> run dtbflash
2. Program the kernel and rootfs to NOR flash (reusing orignal rootfs
NOR location, as the kernel location is to small)
=> tftpboot $loadaddr uImage; protect off 0xeeb80000 +$filesize; erase 0xeeb80000 +$filesize; cp.b $loadaddr 0xeeb80000 $filesize; protect on 0xeeb80000 +$filesize; cmp.b $loadaddr 0xefa80000 $filesize
3. Booting your new system
=> bootm 0xeeb80000 - 0xefe80000
You can login with user "root".

View File

@@ -1,24 +0,0 @@
For the bootloader, NXP has stablized at SDK2.0 (final release). It is
suggested to download the prebuilt from NXP downloads and follow the
release notes for reflashing.
To program the kernel and rootfs created by buildroot into the flash. The
fast way is to tftp transfer the files via one of the network interfaces.
Make sure your devkit has ipaddr and serverip defined to reach your tftp
server.
(Assuming the default u-boot env from NXP)
1. Program the DTB to NOR flash
=> tftpboot $loadaddr t1040d4rdb.dtb; protect off 0xe8800000 +$filesize; erase 0xe8800000 +$filesize; cp.b $loadaddr 0xe8800000 $filesize; protect on 0xe8800000 +$filesize; cmp.b $loadaddr 0xe8800000 $filesize
2. Program the kernel and rootfs to NOR flash
=> tftpboot $loadaddr uImage; protect off 0xe8020000 +$filesize; erase 0xe8020000 +$filesize; cp.b $loadaddr 0xe8020000 $filesize; protect on 0xe8020000 +$filesize; cmp.b $loadaddr 0xe8020000 $filesize
=> tftpboot $loadaddr rootfs.cpio.uboot; protect off 0xe9300000 +$filesize; erase 0xe9300000 +$filesize; cp.b $loadaddr 0xe9300000 $filesize; protect on 0xe9300000 +$filesize; cmp.b $loadaddr 0xe9300000 $filesize
3. Booting your new system
=> boot
You can login with user "root".

View File

@@ -0,0 +1,87 @@
# CONFIG_LOCALVERSION_AUTO is not set
CONFIG_SYSVIPC=y
CONFIG_BLK_DEV_INITRD=y
# CONFIG_RD_GZIP is not set
# CONFIG_RD_BZIP2 is not set
# CONFIG_RD_LZMA is not set
# CONFIG_RD_XZ is not set
# CONFIG_RD_LZO is not set
# CONFIG_RD_LZ4 is not set
CONFIG_CC_OPTIMIZE_FOR_SIZE=y
# CONFIG_UID16 is not set
# CONFIG_SGETMASK_SYSCALL is not set
# CONFIG_SYSFS_SYSCALL is not set
# CONFIG_KALLSYMS is not set
# CONFIG_BUG is not set
# CONFIG_BASE_FULL is not set
# CONFIG_ADVISE_SYSCALLS is not set
# CONFIG_MEMBARRIER is not set
CONFIG_EMBEDDED=y
# CONFIG_VM_EVENT_COUNTERS is not set
# CONFIG_SLUB_DEBUG is not set
# CONFIG_COMPAT_BRK is not set
CONFIG_MODULES=y
# CONFIG_BLOCK is not set
CONFIG_BF512=y
# CONFIG_SET_GENERIC_CLOCKEVENTS is not set
# CONFIG_I_ENTRY_L1 is not set
# CONFIG_EXCPT_IRQ_SYSC_L1 is not set
# CONFIG_DO_IRQ_L1 is not set
# CONFIG_CORE_TIMER_IRQ_L1 is not set
# CONFIG_IDLE_L1 is not set
# CONFIG_SCHEDULE_L1 is not set
# CONFIG_ARITHMETIC_OPS_L1 is not set
# CONFIG_ACCESS_OK_L1 is not set
# CONFIG_MEMSET_L1 is not set
# CONFIG_MEMCPY_L1 is not set
# CONFIG_STRCMP_L1 is not set
# CONFIG_STRNCMP_L1 is not set
# CONFIG_STRCPY_L1 is not set
# CONFIG_STRNCPY_L1 is not set
# CONFIG_SYS_BFIN_SPINLOCK_L1 is not set
# CONFIG_CACHELINE_ALIGNED_L1 is not set
# CONFIG_DCACHE_FLUSH_L1 is not set
# CONFIG_APP_STACK_L1 is not set
# CONFIG_BFIN_INS_LOWOVERHEAD is not set
# CONFIG_BFIN_ICACHE is not set
# CONFIG_BFIN_DCACHE is not set
# CONFIG_C_AMCKEN is not set
CONFIG_BINFMT_ELF_FDPIC=y
CONFIG_BINFMT_FLAT=y
# CONFIG_COREDUMP is not set
# CONFIG_SUSPEND is not set
# CONFIG_UEVENT_HELPER is not set
# CONFIG_STANDALONE is not set
# CONFIG_PREVENT_FIRMWARE_BUILD is not set
# CONFIG_FW_LOADER is not set
# CONFIG_ALLOW_DEV_COREDUMP is not set
# CONFIG_INPUT is not set
# CONFIG_SERIO is not set
# CONFIG_VT is not set
# CONFIG_LEGACY_PTYS is not set
CONFIG_SERIAL_BFIN=y
CONFIG_SERIAL_BFIN_CONSOLE=y
CONFIG_SERIAL_BFIN_UART0=y
CONFIG_SERIAL_BFIN_UART1=y
# CONFIG_BFIN_OTP is not set
# CONFIG_HW_RANDOM is not set
# CONFIG_HWMON is not set
# CONFIG_USB_SUPPORT is not set
# CONFIG_MANDATORY_FILE_LOCKING is not set
# CONFIG_DNOTIFY is not set
# CONFIG_MISC_FILESYSTEMS is not set
CONFIG_NLS=y
CONFIG_NLS_DEFAULT="utf-8"
CONFIG_PRINTK_TIME=y
# CONFIG_ENABLE_WARN_DEPRECATED is not set
# CONFIG_ENABLE_MUST_CHECK is not set
# CONFIG_SECTION_MISMATCH_WARN_ONLY is not set
CONFIG_MAGIC_SYSRQ=y
# CONFIG_SCHED_DEBUG is not set
# CONFIG_FTRACE is not set
# CONFIG_DEBUG_VERBOSE is not set
# CONFIG_DEBUG_HUNT_FOR_ZERO is not set
# CONFIG_DEBUG_BFIN_HWTRACE_ON is not set
CONFIG_EARLY_PRINTK=y
# CONFIG_ACCESS_CHECK is not set
# CONFIG_CRC32 is not set

View File

@@ -0,0 +1,11 @@
Run the simulation with GDB for FDPIC:
./output/host/bin/bfin-buildroot-linux-uclibc-run --env operating --model bf512 output/images/vmlinux
Run the simulation with GDB for FLAT:
./output/host/bin/bfin-buildroot-uclinux-uclibc-run --env operating --model bf512 output/images/vmlinux
The login prompt will appear in the terminal that started GDB.
Tested with GDB 7.9

4
board/gdb/post-build.sh Executable file
View File

@@ -0,0 +1,4 @@
#!/bin/sh
# no simulated network devices at the moment
rm -f ${TARGET_DIR}/etc/init.d/S40network
rm -rf ${TARGET_DIR}/etc/network/

View File

@@ -1,38 +0,0 @@
ODROIDXU-UBOOT-CONFIG
# U-Boot Parameters
setenv initrd_high "0xffffffff"
setenv fdt_high "0xffffffff"
setenv macaddr "00:1e:06:61:7a:39"
setenv bootrootfs "console=tty1 root=/dev/mmcblk1p2 rootwait rw fsck.repair=yes net.ifnames=0"
setenv bootcmd "load mmc 0:1 0x40008000 zImage; load mmc 0:1 0x44000000 exynos5422-odroidxu4.dtb; bootz 0x40008000 - 0x44000000"
setenv vout "hdmi"
setenv governor "performance"
setenv HPD "true"
# TMDS data amplitude control.
setenv hdmi_tx_amp_lvl "31"
# TMDS data amplitude fine control for each channel.
setenv hdmi_tx_lvl_ch0 "3"
setenv hdmi_tx_lvl_ch1 "3"
setenv hdmi_tx_lvl_ch2 "3"
# TMDS data pre-emphasis level control.
setenv hdmi_tx_emp_lvl "6"
# TMDS clock amplitude control.
setenv hdmi_clk_amp_lvl "31"
# TMDS data source termination resistor control.
setenv hdmi_tx_res "0"
setenv hdmi_phy_control "hdmi_tx_amp_lvl=${hdmi_tx_amp_lvl} hdmi_tx_lvl_ch0=${hdmi_tx_lvl_ch0} hdmi_tx_lvl_ch1=${hdmi_tx_lvl_ch1} hdmi_tx_lvl_ch2=${hdmi_tx_lvl_ch2} hdmi_tx_emp_lvl=${hdmi_tx_emp_lvl} hdmi_clk_amp_lvl=${hdmi_clk_amp_lvl} hdmi_tx_res=${hdmi_tx_res} HPD=${HPD} vout=${vout}"
# final boot args
setenv bootargs "${bootrootfs} ${videoconfig} smsc95xx.macaddr=${macaddr} governor=${governor} ${hdmi_phy_control}"
# Boot the board
boot

View File

@@ -1,54 +0,0 @@
image boot.vfat {
vfat {
files = {
"boot.ini",
"zImage",
"exynos5422-odroidxu4.dtb"
}
}
size = 32M
}
image sdcard.img {
hdimage {
}
partition bl1 {
in-partition-table = "no"
image = "bl1.bin.hardkernel"
offset = 512
size = 15360
}
partition bl2 {
in-partition-table = "no"
image = "bl2.bin.hardkernel.720k_uboot"
offset = 15872
size = 16384
}
partition u-boot {
in-partition-table = "no"
image = "u-boot-dtb.bin"
offset = 32256
size = 720k
}
partition tzsw {
in-partition-table = "no"
image = "tzsw.bin.hardkernel"
offset = 769536
size = 256k
}
partition vfat {
partition-type = 0xC
image = "boot.vfat"
offset = 2097152
}
partition rootfs {
partition-type = 0x83
image = "rootfs.ext4"
}
}

View File

@@ -1,24 +0,0 @@
#!/bin/sh
BOARD_DIR="$(dirname $0)"
GENIMAGE_CFG="${BOARD_DIR}/genimage.cfg"
GENIMAGE_TMP="${BUILD_DIR}/genimage.tmp"
cp ${BOARD_DIR}/boot.ini ${BINARIES_DIR}/
# The bl1.bin.hardkernel file provided by the uboot hardkernel repository is overwritten
# by the bl2.bin.hardkernel in the sd_fusing.sh script because it is too big.
# In order to implement this in genimage, we need to truncate the bl1.bin file
# so that it does not exceed the available place.
# An issue has been filled about this: https://github.com/hardkernel/u-boot/issues/45
truncate -s 15360 ${BINARIES_DIR}/bl1.bin.hardkernel
rm -rf "${GENIMAGE_TMP}"
genimage \
--rootpath "${TARGET_DIR}" \
--tmppath "${GENIMAGE_TMP}" \
--inputpath "${BINARIES_DIR}" \
--outputpath "${BINARIES_DIR}" \
--config "${GENIMAGE_CFG}"

View File

@@ -1,37 +0,0 @@
Odroid XU-4 board with Samsung Exynos 5422 SoC
How to build it
===============
$ make odroidxu4_defconfig
Then you can edit the build options using
$ make menuconfig
Compile all and build rootfs image:
$ make
Note: you will need to have access to the network, since Buildroot will
download the packages' sources.
Result of the build
-------------------
After building, you should obtain all output files in output/images/
How to write the SD card or eMMC
================================
Once the build process is finished you will have an image called "sdcard.img"
in the output/images/ directory.
Copy the bootable "sdcard.img" onto an SD card or eMMC with "dd":
$ sudo dd if=output/images/sdcard.img of=/dev/sdX
Insert the SDcard into your ODROID-XU4, and power it up. Your new system
should come up now.

View File

@@ -21,7 +21,6 @@ CONFIG_SATA_AHCI=y
CONFIG_ATA_PIIX=y
CONFIG_NETDEVICES=y
CONFIG_R8169=y
CONFIG_IGB=y
CONFIG_INPUT_EVDEV=y
CONFIG_SERIAL_8250=y
CONFIG_SERIAL_8250_CONSOLE=y

View File

@@ -1 +0,0 @@
../a20_olinuxino/boot.cmd

View File

@@ -1 +0,0 @@
../a20_olinuxino/genimage.cfg

View File

@@ -1 +0,0 @@
../a20_olinuxino/post-build.sh

View File

@@ -1,57 +0,0 @@
A10-OLinuXino-LIME
Intro
=====
These are open hardware boards, all based on the Allwinner A10 SoC.
for more details about the boards see the following pages:
- https://www.olimex.com/Products/OLinuXino/open-source-hardware
- https://www.olimex.com/Products/OLinuXino/A10/A10-OLinuXino-LIME/
The following defconfigs are available:
- olimex_a10_olinuxino_lime_defconfig
for the A10-OLinuXino-LIME board using mainline kernel
(see http://linux-sunxi.org/Linux_Kernel for more details)
How to build it
===============
Configure Buildroot:
$ make <board>_defconfig
Compile everything and build the rootfs image:
$ make
Result of the build
-------------------
After building, you should get a tree like this:
output/images/
+-- boot.scr
+-- rootfs.ext2
+-- rootfs.ext4 -> rootfs.ext2
+-- sdcard.img
+-- sun4i-a10-olinuxino-lime.dtb (lime, mainline)
+-- u-boot.bin
+-- u-boot-sunxi-with-spl.bin
`-- zImage
How to write the SD card
========================
The sdcard.img file is a complete bootable image ready to be written
on the boot medium. To install it, simply copy the image to a uSD
card:
# dd if=output/images/sdcard.img of=/dev/sdX
Where 'sdX' is the device node of the uSD.
Eject the SD card, insert it in the A10-OLinuXino board, and power it up.

View File

@@ -16,7 +16,7 @@ The following defconfigs are available:
for the A20-OLinuXino-MICRO board using mainline kernel
- olimex_a20_olinuxino_lime_defconfig
for the A20-OLinuXino-LIME board using mainline kernel
- olimex_a20_olinuxino_lime_legacy_defconfig
- olimex_a20_olinuxino_lime_mali_defconfig
for the A20-OLinuXino-LIME board using legacy linux-sunxi kernel
- olimex_a20_olinuxino_lime2_defconfig
for the A20-OLinuXino-LIME2 board using mainline kernel
@@ -51,7 +51,7 @@ After building, you should get a tree like this:
output/images/
+-- rootfs.ext2
+-- rootfs.ext4 -> rootfs.ext2
+-- script.bin (lime_legacy)
+-- script.bin (lime_mali)
+-- sdcard.img
+-- sun7i-a20-olinuxino-lime.dtb (lime, mainline)
+-- sun7i-a20-olinuxino-lime2.dtb (lime2, mainline)

View File

@@ -6,10 +6,3 @@ CONFIG_CFG80211_WEXT=y
# wireless drivers
CONFIG_WLAN=y
# hdmi
CONFIG_DRM_SUN8I_DW_HDMI=y
CONFIG_SUN8I_DE2_CCU=y
# analog audio
CONFIG_SND_SUN8I_CODEC_ANALOG=y

View File

@@ -1,3 +0,0 @@
CONFIG_DRM_SUN8I_DW_HDMI=y
CONFIG_SUN8I_DE2_CCU=y
CONFIG_SND_SUN8I_CODEC_ANALOG=y

View File

@@ -1,10 +0,0 @@
# wireless core
CONFIG_WIRELESS=y
CONFIG_CFG80211=y
CONFIG_MAC80211=y
CONFIG_CFG80211_WEXT=y
# wireless drivers
CONFIG_WLAN=y
CONFIG_WLAN_VENDOR_BROADCOM=y
CONFIG_BRCMFMAC=m

View File

@@ -0,0 +1,30 @@
From f88e9301948173dd35afad4a6939092c7f269aed Mon Sep 17 00:00:00 2001
From: Sergey Matyukevich <geomatsi@gmail.com>
Date: Fri, 3 Nov 2017 22:58:54 +0300
Subject: [PATCH] arm64: dts: orange-pi-zero-plus2: fix sdcard detect
The sdcard detect pin on orange-pi-zero-plus2 is pulled up.
Fix cd-gpio description to enable sdcard detect.
Signed-off-by: Sergey Matyukevich <geomatsi@gmail.com>
Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com>
---
arch/arm64/boot/dts/allwinner/sun50i-h5-orangepi-zero-plus2.dts | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/arch/arm64/boot/dts/allwinner/sun50i-h5-orangepi-zero-plus2.dts b/arch/arm64/boot/dts/allwinner/sun50i-h5-orangepi-zero-plus2.dts
index b6b7a56..a42fd79 100644
--- a/arch/arm64/boot/dts/allwinner/sun50i-h5-orangepi-zero-plus2.dts
+++ b/arch/arm64/boot/dts/allwinner/sun50i-h5-orangepi-zero-plus2.dts
@@ -71,7 +71,7 @@
pinctrl-0 = <&mmc0_pins_a>, <&mmc0_cd_pin>;
vmmc-supply = <&reg_vcc3v3>;
bus-width = <4>;
- cd-gpios = <&pio 5 6 GPIO_ACTIVE_HIGH>;
+ cd-gpios = <&pio 5 6 GPIO_ACTIVE_LOW>;
status = "okay";
};
--
1.9.1

View File

@@ -1,54 +0,0 @@
#AP6212_NVRAM_V1.0_20140603
# 2.4 GHz, 20 MHz BW mode
# The following parameter values are just placeholders, need to be updated.
manfid=0x2d0
prodid=0x0726
vendid=0x14e4
devid=0x43e2
boardtype=0x0726
boardrev=0x1101
boardnum=22
macaddr=00:90:4c:c5:12:38
sromrev=11
boardflags=0x00404201
xtalfreq=26000
nocrc=1
ag0=255
aa2g=1
ccode=ALL
pa0itssit=0x20
extpagain2g=0
#PA parameters for 2.4GHz, measured at CHIP OUTPUT
pa2ga0=-168,7161,-820
AvVmid_c0=0x0,0xc8
cckpwroffset0=5
# PPR params
maxp2ga0=90
txpwrbckof=6
cckbw202gpo=0x5555
legofdmbw202gpo=0x77777777
mcsbw202gpo=0xaaaaaaaa
# OFDM IIR :
ofdmdigfilttype=7
# PAPD mode:
papdmode=2
il0macaddr=00:90:4c:c5:12:38
wl0id=0x431b
#OOB parameters
hostwake=0x40
hostrdy=0x41
usbrdy=0x03
usbrdydelay=100
deadman_to=0xffffffff
# muxenab: 0x1 for UART enable, 0x10 for Host awake
muxenab=0x10
# CLDO PWM voltage settings - 0x4 - 1.1 volt
#cldo_pwm=0x4

View File

@@ -82,4 +82,3 @@ CONFIG_EXT4_FS=y
CONFIG_FUSE_FS=y
CONFIG_TMPFS_POSIX_ACL=y
CONFIG_SQUASHFS=y
CONFIG_UNWINDER_FRAME_POINTER=y

View File

@@ -1,5 +1,6 @@
CONFIG_SYSVIPC=y
CONFIG_POSIX_MQUEUE=y
CONFIG_FHANDLE=y
CONFIG_NO_HZ_IDLE=y
CONFIG_HIGH_RES_TIMERS=y
CONFIG_TASKSTATS=y
@@ -9,6 +10,7 @@ CONFIG_MODULES=y
CONFIG_MODULE_UNLOAD=y
CONFIG_BLK_DEV_BSGLIB=y
CONFIG_ARCH_VEXPRESS=y
CONFIG_SMP=y
CONFIG_TRANSPARENT_HUGEPAGE=y
CONFIG_BINFMT_MISC=y
CONFIG_COMPAT=y

View File

@@ -4,4 +4,4 @@ Run the emulation with:
The login prompt will appear in the terminal that started Qemu.
Tested with QEMU 2.12.0
Tested with QEMU 2.9.0

View File

@@ -1,12 +1,11 @@
# CONFIG_MMU is not set
CONFIG_ARCH_VERSATILE=y
CONFIG_ARM_SINGLE_ARCH_VERSATILE=y
CONFIG_SET_MEM_PARAM=y
CONFIG_DRAM_BASE=0x00000000
CONFIG_DRAM_SIZE=0x08000000
CONFIG_ARCH_VERSATILE_PB=y
CONFIG_MACH_VERSATILE_AB=y
CONFIG_MACH_VERSATILE_DT=y
# CONFIG_MACH_VERSATILE_DT is not set
CONFIG_BINFMT_FLAT=y
CONFIG_SYSVIPC=y
CONFIG_MODULES=y

View File

@@ -1,84 +1,30 @@
Signed-Off-by: Waldemar Brodkorb <wbx@openadk.org>
From LKML.
From b7c1666813424d329868335c8faf8886b0f85b6c Mon Sep 17 00:00:00 2001
From: Greg Ungerer <gerg@linux-m68k.org>
Date: Thu, 11 Aug 2016 21:33:11 +1000
Subject: [PATCH] arm: fix versatile platform to work in no-MMU mode
diff -Nur linux-4.15.13.orig/arch/arm/Kconfig linux-4.15.13/arch/arm/Kconfig
--- linux-4.15.13.orig/arch/arm/Kconfig 2018-03-24 11:02:53.000000000 +0100
+++ linux-4.15.13/arch/arm/Kconfig 2018-04-01 03:47:33.415078244 +0100
@@ -355,6 +355,17 @@
select SPARSE_IRQ
select USE_OF
If CONFIG_MMU is disabled then do not carry out the virtual memory address
translation for IO devices.
With this fix in place we can run the ARM Versatile board (including its
qemu emulation) as a no-MMU Linux system.
Signed-off-by: Greg Ungerer <gerg@linux-m68k.org>
Signed-off-by: Waldemar Brodkorb <wbx@openadk.org>
diff -Nur linux-4.4.17.orig/arch/arm/mach-versatile/include/mach/hardware.h linux-4.4.17/arch/arm/mach-versatile/include/mach/hardware.h
--- linux-4.4.17.orig/arch/arm/mach-versatile/include/mach/hardware.h 2016-08-10 11:49:43.000000000 +0200
+++ linux-4.4.17/arch/arm/mach-versatile/include/mach/hardware.h 2016-08-25 23:19:03.691716292 +0200
@@ -30,8 +30,12 @@
#define VERSATILE_PCI_VIRT_BASE (void __iomem *)0xe8000000ul
#define VERSATILE_PCI_CFG_VIRT_BASE (void __iomem *)0xe9000000ul
+config ARM_SINGLE_ARCH_VERSATILE
+ bool "ARM Ltd. Versatile family"
+ depends on !MMU
+ select AUTO_ZRELADDR
+ select CLKSRC_OF
+ select COMMON_CLK
+ select GENERIC_CLOCKEVENTS
+ select GPIOLIB
+ select SPARSE_IRQ
+ select USE_OF
+
config ARCH_EBSA110
bool "EBSA-110"
select ARCH_USES_GETTIMEOFFSET
diff -Nur linux-4.15.13.orig/arch/arm/Kconfig.debug linux-4.15.13/arch/arm/Kconfig.debug
--- linux-4.15.13.orig/arch/arm/Kconfig.debug 2018-03-24 11:02:53.000000000 +0100
+++ linux-4.15.13/arch/arm/Kconfig.debug 2018-04-01 03:47:33.416078232 +0100
@@ -1795,7 +1795,8 @@
config UNCOMPRESS_INCLUDE
string
default "debug/uncompress.h" if ARCH_MULTIPLATFORM || ARCH_MSM || \
- PLAT_SAMSUNG || ARM_SINGLE_ARMV7M
+ PLAT_SAMSUNG || ARM_SINGLE_ARMV7M || \
+ ARM_SINGLE_ARCH_VERSATILE
default "mach/uncompress.h"
config EARLY_PRINTK
diff -Nur linux-4.15.13.orig/arch/arm/include/asm/mach/map.h linux-4.15.13/arch/arm/include/asm/mach/map.h
--- linux-4.15.13.orig/arch/arm/include/asm/mach/map.h 2018-03-24 11:02:53.000000000 +0100
+++ linux-4.15.13/arch/arm/include/asm/mach/map.h 2018-04-01 03:47:17.587276119 +0100
@@ -62,6 +62,7 @@
#else
#define iotable_init(map,num) do { } while (0)
#define vm_reserve_area_early(a,s,c) do { } while (0)
+#define debug_ll_io_init() do { } while (0)
#endif
#endif
diff -Nur linux-4.15.13.orig/arch/arm/mach-versatile/Kconfig linux-4.15.13/arch/arm/mach-versatile/Kconfig
--- linux-4.15.13.orig/arch/arm/mach-versatile/Kconfig 2018-03-24 11:02:53.000000000 +0100
+++ linux-4.15.13/arch/arm/mach-versatile/Kconfig 2018-04-01 03:47:33.417078219 +0100
@@ -1,7 +1,8 @@
# SPDX-License-Identifier: GPL-2.0
config ARCH_VERSATILE
- bool "ARM Ltd. Versatile family"
- depends on ARCH_MULTI_V5
+ bool "ARM Ltd. Versatile family" if ARCH_MULTI_V5
+ depends on ARCH_MULTI_V5 || ARM_SINGLE_ARCH_VERSATILE
+ default y if ARM_SINGLE_ARCH_VERSATILE
select ARM_AMBA
select ARM_TIMER_SP804
select ARM_VIC
diff -Nur linux-4.15.13.orig/arch/arm/mach-versatile/Makefile.boot linux-4.15.13/arch/arm/mach-versatile/Makefile.boot
--- linux-4.15.13.orig/arch/arm/mach-versatile/Makefile.boot 1970-01-01 01:00:00.000000000 +0100
+++ linux-4.15.13/arch/arm/mach-versatile/Makefile.boot 2018-04-01 03:47:25.644175394 +0100
@@ -0,0 +1,3 @@
+# Empty file waiting for deletion once Makefile.boot isn't needed any more.
+# Patch waits for application at
+# http://www.arm.linux.org.uk/developer/patches/viewpatch.php?id=7889/1 .
diff -Nur linux-4.15.13.orig/arch/arm/mach-versatile/versatile_dt.c linux-4.15.13/arch/arm/mach-versatile/versatile_dt.c
--- linux-4.15.13.orig/arch/arm/mach-versatile/versatile_dt.c 2018-03-24 11:02:53.000000000 +0100
+++ linux-4.15.13/arch/arm/mach-versatile/versatile_dt.c 2018-04-01 03:47:10.913359555 +0100
@@ -37,7 +37,11 @@
#include <asm/mach/map.h>
/* macro to get at MMIO space when running virtually */
+#ifdef CONFIG_MMU
/* macro to get at MMIO space when running virtually */
#define IO_ADDRESS(x) (((x) & 0x0fffffff) + (((x) >> 4) & 0x0f000000) + 0xf0000000)
+#else
+#define IO_ADDRESS(x) (x)
+#endif
#define __io_address(n) ((void __iomem __force *)IO_ADDRESS(n))
/*

View File

@@ -4,9 +4,9 @@ Run the emulation with:
Or for the noMMU emulation:
qemu-system-arm -M versatilepb -kernel output/images/zImage -dtb output/images/versatile-pb.dtb -append "console=ttyAMA0,115200" -serial stdio -net user -net nic,model=smc91c111
qemu-system-arm -M versatilepb -kernel output/images/zImage -append "console=ttyAMA0,115200" -serial stdio -net user -net nic,model=smc91c111
The login prompt will appear in the terminal that started Qemu. The
graphical window is the framebuffer.
Tested with QEMU 2.12.0
Tested with QEMU 2.9.0

View File

@@ -8,4 +8,4 @@ graphical window is the framebuffer.
If you want to emulate more cores change "-smp 1" to "-smp 2" for
dual-core or even "smp -4" for a quad-core configuration.
Tested with QEMU 2.12.0
Tested with QEMU 2.9.0

View File

@@ -4,4 +4,4 @@ Run the emulation with:
The login prompt will appear in the terminal that started Qemu.
Tested with QEMU 2.12.0
Tested with QEMU 2.9.0

View File

@@ -4,5 +4,5 @@ Run the emulation with:
The login prompt will appear in the terminal that started Qemu.
Tested with QEMU 2.11.0 from https://github.com/vivier/qemu-m68k
You need following branch: q800-v2.11.0
Tested with QEMU 2.4.0 from https://github.com/vivier/qemu-m68k
You need following branch: q800-v2.4.0

View File

@@ -4,4 +4,4 @@ Run the emulation with:
The login prompt will appear in the terminal that started Qemu.
Tested with QEMU 2.12.0
Tested with QEMU 2.9.0

View File

@@ -4,4 +4,4 @@ Run the emulation with:
The login prompt will appear in the terminal that started Qemu.
Tested with QEMU 2.12.0
Tested with QEMU 2.9.0

Some files were not shown because too many files have changed in this diff Show More