Commit graph

1069 commits

Author SHA1 Message Date
Rafał Miłecki
0d3be662ce firmware-utils: tplink-safeloader: keep per-device info on trailing char
Recent refactoring introduced a regression. It ignored second argument
of make_support_list function which was originally true for C2600. The
new generic build_image function always passes false.

This patch allows specifying trailing char in a device specific info. It
also switches Archer C9 to the \0 char to make it compliant with vendor
images.

I verified generated images to be binary identical to the ones that
were created before whole refactoring.

Reported-by: Jo-Philipp Wich <jo@mein.io>
Fixes: fd924d2068 ("firmware-utils: tplink-safeloader: use one function for generating images")
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2016-11-20 17:17:48 +01:00
Rafał Miłecki
222783c65c firmware-utils: tplink-safeloader: add Archer C9 support
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2016-11-19 07:58:25 +01:00
Rafał Miłecki
fd924d2068 firmware-utils: tplink-safeloader: use one function for generating images
Thanks to the struct device_info we can now use one unified function.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2016-11-19 07:57:58 +01:00
Rafał Miłecki
ea249f01b1 firmware-utils: tplink-safeloader: add struct device_info
This struct stores all device specific info which allows making do_eap
function more generic.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2016-11-19 07:57:56 +01:00
Vitaly Chekryzhev
a4814c744c firmware-utils: add tool to create zyxel images
Signed-off-by: Vitaly Chekryzhev <13hakta@gmail.com>
[moved to firmware-utils package]
[dropped the compiled binary]
Signed-off-by: Mathias Kresin <dev@kresin.me>
2016-11-17 20:01:21 +01:00
FUKAUMI Naoki
0165203304 ar71xx: add support for Buffalo BHR-4GRV2
Signed-off-by: FUKAUMI Naoki <naobsd@gmail.com>
2016-11-16 10:54:33 +01:00
Alexandru Ardelean
00d1e6c75e firmware-utils: fix compilation on MacOS X
Looking into /usr/include/stdlib.h, there's a `devname()` function defined
under some #ifdef's which conflicts with the `static char *devname` definition
in `src/mkwrggimg.c`.

Defining `_ANSI_SOURCE` in the `src/mkwrggimg.c` file, omits that part of the
header.

Another more intrusive approach is to rename `devname` to something like
`g_devname` in `src/mkwrggimg.c`. But I think the `_ANSI_SOURCE` define should
be enough.

Compilation error is:

    src/mkwrggimg.c:64:14: error: redefinition of 'devname' as different kind of symbol
    static char *devname;
                 ^
    /usr/include/stdlib.h:286:7: note: previous definition is here
    char    *devname(dev_t, mode_t);
             ^
    src/mkwrggimg.c:147:12: error: non-object type 'char *(dev_t, mode_t)' (aka 'char *(int, unsigned short)') is not assignable
                            devname = optarg;
                            ~~~~~~~ ^
    src/mkwrggimg.c:192:6: warning: comparison of function 'devname' equal to a null pointer is always false [-Wtautological-pointer-compare]
            if (devname == NULL) {
                ^~~~~~~    ~~~~
    src/mkwrggimg.c:192:6: note: prefix with the address-of operator to silence this warning
            if (devname == NULL) {
                ^
                &
    src/mkwrggimg.c:251:27: warning: incompatible pointer types passing 'char *(dev_t, mode_t)' (aka 'char *(int, unsigned short)') to parameter of type 'const char *' [-Wincompatible-pointer-types]
            strncpy(header->devname, devname, sizeof(header->devname));
                                     ^~~~~~~
    /usr/include/secure/_string.h:119:34: note: expanded from macro 'strncpy'
      __builtin___strncpy_chk (dest, src, len, __darwin_obsz (dest))

Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
[Jo-Philipp Wich: slightly reformat commit message]
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2016-10-31 12:39:09 +01:00
Stijn Tintel
55eb6ed061 firmware-utils: mkwrggimg: new tool for D-Link DAP-2695
Based on mkwrgimg.c.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
Acked-by: John Crispin <john@phrozen.org>
2016-10-27 01:50:42 +03:00
Henryk Heisig
f5aa459043 ar71xx: Add support to TP-Link EAP120
Signed-off-by: Henryk Heisig <hyniu@o2.pl>
2016-10-18 09:18:55 +02:00
Daniel Engberg
ee7ef227f0 tools/libressl: Update to 2.5.0 and use mirrors
Updates LibreSSL to 2.5.0 and switches from main site to mirrors as primary source.

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2016-10-15 11:36:51 +02:00
Felix Fietkau
b306f8254f tools: add missing dependency for dosfstools
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2016-10-12 12:25:27 +02:00
Álvaro Fernández Rojas
5f0965f8d2 dosfstools: fix autotools dependency
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2016-10-12 12:22:38 +02:00
Álvaro Fernández Rojas
4bbc6fb7b7 tools: improve and simplify dosfstools
- use default host install and clean.
- backport compatibility patch for OS X and LEDE (avoids having to force iconv
for OS X).
- use default HOST_BUILD_DIR.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2016-10-12 11:59:10 +02:00
Álvaro Fernández Rojas
87b2b89959 tools: remove old mkdosfs symlink from dosfstools
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2016-10-12 11:59:09 +02:00
Jo-Philipp Wich
66a62b8966 tools: do not apply ccache dependency to xz
Since XZ is needed to bootstrap building ccache we must not depend on it,
so remove the dependency on ccache to avoid circular dependencies.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2016-10-06 15:29:33 +02:00
Jo-Philipp Wich
27950ddc0e tools: xz: force building without ccache
Since XZ is required to bootstrap ccache we must not use the ccache compiler
wrapper to avoid circular dependencies.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2016-10-06 15:29:33 +02:00
Jo-Philipp Wich
575d386590 tools: make all tools depend on xz
Make all tools except tar (which is required to bootstrap xz-utils) and XZ
itself depend on XZ, in order to be able to handle .tar.xz downloads.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2016-10-06 14:12:46 +02:00
Jo-Philipp Wich
adb1566009 tools: tar: use .bz2 archive
The "tar" utility is required to bootstrap XZ which is required to handle
.tar.xz archives, therfore revert to using the bz2 archive.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2016-10-06 14:12:46 +02:00
Jo-Philipp Wich
e68c0a1325 tools: xz: use .bz2 archive
In order to build XZ itself we cannot assume that XZ support is available,
so fetch the bz2 archive variant of its sources instead.

Also drop the FreeBSD portability patch and apply it at prepare time using
sed, to avoid a dependency on GNU patch which in turn depends on XZ support.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2016-10-06 14:12:45 +02:00
Daniel Engberg
9edfe7dd13 source: Switch to xz for packages and tools where possible
* Change git packages to xz
* Update mirror checksums in packages where they are used
* Change a few source tarballs to xz if available upstream
* Remove unused lines in packages we're touching, requested by jow- and blogic
* We're relying more on xz-utils so add official mirror as primary source, master site as secondary.
* Add SHA256 checksums to multiple git tarball packages

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2016-10-06 12:16:56 +02:00
Felix Fietkau
720f8eb18e ccache: disable assembler support, it breaks kernel initramfs images
The reason is that ccache does not recognize and process the .incbin
directive, so caching is unreliable.
See https://github.com/ccache/ccache/issues/136 for more information.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2016-10-05 10:13:04 +02:00
Daniel Engberg
ea91dda327 tools/patchelf: Update to 0.9 and remove patch
Updates patchelf to 0.9
Patch removed, upstreamed.

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2016-10-04 11:50:48 +02:00
diizzyy
6f1d6fdbaa tools/upx: Update to 3.91 and use new tarball url
Updates UPX to version 3.91 and also updates tarball url

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2016-10-04 11:50:48 +02:00
diizzyy
fdf200c893 tools/ppl: Update to 1.2
Updates ppl to version 1.2

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2016-10-04 11:50:47 +02:00
diizzyy
d88d55e0db tools/mpfr: Update to 3.1.5 and change to xz tarball
Updates mpfr to 3.1.5 and changes tarball format to xz

Signed-off-by: Daniel Engberg daniel.engberg.lists@pyret.net
2016-10-04 11:50:47 +02:00
diizzyy
bf567363cd tools/expat: Update to 2.2.0
Updates expat to 2.2.0

Fixes several CVEs:
CVE-2016-0718
CVE-2016-4472
CVE-2016-5300
CVE-2012-6702

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2016-10-04 11:50:47 +02:00
diizzyy
b8b807b1a9 tools/e2fsprogs: Update to 1.43.3
Update e2fsprogs to 1.43.3

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2016-10-04 11:50:47 +02:00
Daniel Engberg
792e8bc8bb tools/ccache: Update ccache 3.3.2 and refresh patch
Update ccache 3.3.2 and refresh patch

Preserving the original patch comments here by Karl Vogel:

"From 90762a9b8d9a50b6176f10bd6c2e2b9501117561 Mon Sep 17 00:00:00 2001
From: Karl Vogel <karl.vogel@gmail.com>
Date: Tue, 14 Jul 2015 11:05:33 +0200
Subject: [PATCH] Include environment variable GCC_HONOUR_COPTS in hash.

The OpenWRT patch, 910-mbsd_multi.patch, to GCC adds an extra
compilation flag, -fhonour-copts, which is influenced by an
environment variable called GCC_HONOUR_COPTS.

Include this environment var in the hash calculation as otherwise
the gcc stdout warning from a previous compilation might be shown
where, even when GCC_HONOUR_COPTS is in 's'ilent mode.

Signed-off-by: Karl Vogel <karl.vogel@gmail.com>"

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2016-10-04 11:50:47 +02:00
Jonas Gorski
997fed94e3 ptgen: work around gcc miscompilation
Some gcc versions seem to miscompile code using ternary operators,
work around this by just returning the result if exp is 0.

Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
2016-09-26 12:23:41 +02:00
Felix Fietkau
64568cac91 tools/firmware-utils: fix portability issue in mkmerakifw-old
Fixes build failure on Mac OS X

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2016-09-22 13:37:23 +02:00
Christian Lamparter
7219c30da4 firmware-utils mkmerakifw-old: firmware generator for Z1
This patch adds firmware generation tool for Cisco's Z1

Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
2016-09-19 19:32:28 +02:00
Mathias Kresin
0ac50a661b firmware-utils: mksenaofw: rework option validation
The options firmware_type, vendor_id and product_id are not required
for decoding an image file.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2016-08-17 20:08:52 +02:00
Felix Fietkau
cf76b90a5f tools: make mtools/dosfstools unconditional
The list of targets that need them are getting longer

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2016-08-28 20:58:49 +02:00
Matthias Schiffer
a4fc62bc0e
firmware-utils: mktplinkfw: add support for TP-Link's new region codes
TP-Link has changed the way the region is stored in the firmware header,
and now provides US- and EU-specific images for the Archer C7. Adding the
new region codes is necessary to make LEDE/OpenWrt flashable on devices
with the new stock firmwares again.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2016-08-28 19:59:21 +02:00
Felix Fietkau
88b16da8c4 tools: build GNU date from coreutils on non-Linux systems
Required for reproducible builds in the kernel build system

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2016-08-23 11:56:13 +02:00
Alexey Brodkin
c1f4040f70 tools: Select dosfstools for archs38
In commit df4f41261c ("archs38: Introduce images for SD-cards")
we introduced building of SD-card images for ARC HS38-based boards.

While building images mkdosfs utility is used.
On machines I used for testing mentioned change this utility was
already installed so I didn't figure-out that requirement.

But thanks to Lede's autobuilder this missing bit was highlighted,
see failed build job here:
http://phase1.builds.lede-project.org/builders/archs38%2Fsd/builds/0/steps/images/logs/stdio

Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
Cc: John Crispin <john@phrozen.org>
Cc: Jo-Philipp Wich <jo@mein.io>
2016-08-18 21:41:38 +02:00
Alexey Brodkin
c41506625a tools/tar: Bump to 1.29
This change updates tar from 1.28 to 1.29.
Among other changes following commit
http://git.savannah.gnu.org/cgit/tar.git/commit/lib/xattr-at.c?h=9c2b57232e3bc2e5ba85387560bcdd851849a128
substitutes previously used off-the-tree patch 100-fix_xattr_disable.patch

Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
2016-08-16 12:17:18 +02:00
Hannu Nyman
3d20f56c13 tools/gmp: update to 6.1.1
Update gmp to 6.1.1

Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
2016-08-15 15:32:37 +02:00
Hannu Nyman
5216af7b05 tools/scons: update to 2.5.0
Update scons to 2.5.0

Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
2016-08-15 15:32:37 +02:00
Hannu Nyman
a247e26a7e tools/cmake: update to 3.6.1
Update cmake to 3.6.1

Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
2016-08-15 15:32:37 +02:00
Jo-Philipp Wich
95bad62f2a tools: make_ext4fs: switch to LEDE git mirror
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2016-08-14 22:34:47 +02:00
Jo-Philipp Wich
98b960c218 tools: make_ext4fs: support creating empty filesystem images
Update make_ext4fs to latest git head in order to support creating empty
filesystem images by making the source directory argument optional.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2016-08-14 22:21:09 +02:00
Mathias Kresin
5d0b180f79 tools: flock: add NFSv4 compatibility
This patch fixes the LEDE build on mounted NFSv4 shares.

The lock file cannot be opened in read-write mode by default, because
then we cannot use flock(1) to lock executable files.

The read-write mode for lock files is necessary on NFSv4 where
flock(2) is emulated by by fcntl() -- this situation is possible to
detect by flock(2) EBADF error.

The patch consist of the following util-linux/flock commits

http://git.kernel.org/cgit/utils/util-linux/util-linux.git/commit/?id=eb742a1f66d5e3a7c5b43efce741c113f51bef3b

http://git.kernel.org/cgit/utils/util-linux/util-linux.git/commit/?id=caf1ba11a367ad702fb774653daf9ebdcca49d7b

without including the pre kernel 3.4 support.

Signed-off-by: Mathias Kresin <dev@kresin.me>
Signed-off-by: Felix Fietkau <nbd@nbd.name> [minor cleanup]
2016-08-11 10:50:10 +02:00
Sergey Ryazanov
188517144e tools: lzma: reduce copyright noise
Move the copyright printing code to the usage printing function, to
reduce noise from regular execution but preserve information about
the author.

Signed-off-by: Sergey Ryazanov <ryazanov.s.a@gmail.com>
2016-08-04 18:19:46 +02:00
Felix Fietkau
07577c5ebe tools: bring back genext2fs for apm821xx
This reverts commit 8c68c104ea.
It is used for apm821xx, which needs ext2 (not ext4) images for some
devices.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2016-07-23 19:37:20 +02:00
Chris Blake
a57d6e2d47 apm821xx: add support for the Cisco Meraki MR24
This patch adds support for the Cisco Meraki MR24 Access point
to the apm821xx target.

Board:		MR24 - Meraki MR24 Cloud Managed Access Point
CPU:		APM82181 SoC 800 MHz (PLB=200 OPB=100 EBC=100)
Flash size:	32MiB
RAM Size:	128MiB
Wireless:	Atheros AR9380 5.0GHz + Atheros AR9380 2.4GHz
Ethernet ports:	1x Gigabit Atheros AR8035

WARNING: The serial port needs a TTL/RS-232 v3.3 level converter!

For flashing instructions, visit:
<https://github.com/riptidewave93/Openwrt-MR24/blob/master/README.md#flashing>

Signed-off-by: Chris Blake <chrisrblake93@gmail.com>
2016-07-22 09:48:12 +02:00
Syrone Wong
dc8da205cb tools/isl: bump to 0.17.1
Signed-off-by: Syrone Wong <wong.syrone@gmail.com>
2016-07-15 14:17:16 +02:00
Álvaro Fernández Rojas
57530dbec6 dosfstools: fix build on OS X
- avoid using tools/include/endian.h on OS X to fix compilation.
- remove unneeded Host/Compile definition.
- refresh patches.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2016-07-13 22:59:00 +02:00
Yousong Zhou
d06b68fe83 tools: padjffs2: add option to output padding data to stdout
Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2016-07-11 13:26:33 +02:00
Felix Fietkau
01fc738b46 tools: build b43 tools if the SDK was enabled
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2016-07-07 10:52:51 +02:00