Kernels older than 3.9 (not counting stable releases) used the
timeconst.pl perl script for their build process.
The problem with this script is that it used deprecated perl features,
namely defined(@array) which was removed for the perl 5.22 release,
causing build failure of older kernels on newer distributions.
To fix this instead of going the hard way (moving to the new
timeconst.bc script) use the easy way by patching timeconst.pl with an
upstream patch used for stable releases.
First try a dry-run on the patch to see if it applies, if it does then
call a proper APPLY_PATCHES to it.
Tested against an arbitrary 2.6.30 kernel (applies and builds), against
4.4.1 for a missing timeconst.pl (does not apply since it's missing) and
3.8.13 (does not apply since it's fixed already).
Known broken distributions: fedora 23, debian testing (stretch) and unstable
(sid).
Signed-off-by: Gustavo Zacarias <gustavo.zacarias@free-electrons.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Fixes:
http://autobuild.buildroot.net/results/aee/aee4a895c74647292715705bfcdf742f3ea2f76f/
Since the bump to 1.0.3, xapp_xf86dga no longer uses libXt, libXaw and
libXmu. So these dependencies should be removed from the .mk file.
They were already removed from Config.in, leading to messages like:
Makefile:475: *** xlib_libXaw is in the dependency chain of xapp_xf86dga
that has added it to its _DEPENDENCIES variable without selecting it or
depending on it from Config.in. Stop.
[Peter: add autobuilder reference as suggested by Ricardo]
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Cc: Bernd Kuhls <bernd.kuhls@t-online.de>
Cc: Ricardo Martincoski <ricardo.martincoski@gmail.com>
Tested-by: Ricardo Martincoski <ricardo.martincoski@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
/etc/profile only sources files that matches the /etc/profile.d/*.sh
pattern, so /etc/profile.d/umask was never sourced.
Signed-off-by: Nicolas Cavallari <nicolas.cavallari@green-communications.fr>
Acked-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Just like the --stop-on and --exclude options allow to stop on or
exclude virtual packages from the list by passing the "virtual" magic
value, this commit extends the graph-depends logic to support a "host"
magic value for --stop-on and --exclude. This will allow to draw the
graph by stopping on host packages, or by excluding host packages.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Tested-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
[Thomas: minor code beautification suggested by Yann E. Morin.]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The condition to determine if a virtual package should be excluded
from the list due to "virtual" being passed in --exclude is under a
loop iterating over each entry of the exclude_list, but it doesn't use
the iterator of this list.
Indeed, the condition contains:
"virtual" in exclude_list
which checks automatically if "virtual" was passed in the list. Due to
this, there is no need for this check to be within the "for p in
exclude_list" iteration. This commit fixes that by moving the check
outside of the loop.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Tested-by: "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@free-electrons.com>
Fix bug in certificate validation that caused valid chains to be
rejected when the first intermediate certificate has
pathLenConstraint=0.
Removed potential leak in rsa_rsassa_pkcs1_v15_sign().
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
This config has no prospect of going into the future (by using DTS), and
qemu doesn't do a good job at emulating it (networking problems), so
drop it.
All of the ARM SMP testing duties are now in the vexpress defconfig
which is better suited/supported.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
We can use the vexpress arm defconfig to test SMP features in Qemu.
So document the necessary invocation changes to account for this, in
preparation of the arm nuri defconfig removal.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Remove the choice of nodejs version. Now automatically pick nodejs 0.10.x
for armv5 architectures only and the latest nodejs for all other
supported architectures.
Note that the removal of BR2_PACKAGE_NODEJS_5_X is not handled in
Config.in.legacy because buildroot has never been released with this
option included.
Signed-off-by: Martin Bark <martin@barkynet.com>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Cc: Arnout Vandecappelle <arnout@mind.be>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Patches from 5.3.0 have been copied over with the following exceptions:
- Removed 0005-Fix-crash-in-GetInterfaceAddresses.patch as this has
been applied upstream
- Renamed 0006-Fix-support-for-uClibc-ng.patch to
0005-Fix-support-for-uClibc-ng.patch
Signed-off-by: Martin Bark <martin@barkynet.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Add a make target that will checks the dependencies of all packages.
This will currently only detect circular dependencies, but more tests
can be added later if need be.
This can then be used in the autobuilders to automatically report
dependency issues.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Currently, if there is a circular dependency in the packages, the
graph-depends script just errors out with a Python RuntimeError which is
not caught, resulting in a very-long backtrace which does not provide
any hint as what the real issue is (even if "RuntimeError: maximum
recursion depth exceeded" is a pretty good hint at it).
We fix that by recursing the dependency chain of each package, until we
either end up with a package with no dependency, or with a package
already seen along the current dependency chain.
We need to introduce a new function, check_circular_deps(), because we
can't re-use the existing ones:
- remove_mandatory_deps() does not iterate,
- remove_transitive_deps() does iterate, but we do not call it for the
top-level package if it is not 'all'
- it does not make sense to use those functions anyway, as they were
not designed to _check_ but to _act_ on the dependency chain.
Since we've had time-related issues in the past, we do not want to
introduce yet another time-hog, so here are timings with the circular
dependency check:
$ time python -m cProfile -s cumtime support/scripts/graph-depends
[...]
28352654 function calls (20323050 primitive calls) in 87.292 seconds
Ordered by: cumulative time
ncalls tottime percall cumtime percall filename:lineno(function)
1 0.012 0.012 87.292 87.292 graph-depends:24(<module>)
21 0.000 0.000 73.685 3.509 subprocess.py:473(_eintr_retry_call)
7 0.000 0.000 73.655 10.522 subprocess.py:768(communicate)
7 73.653 10.522 73.653 10.522 {method 'read' of 'file' objects}
5/1 0.027 0.005 43.488 43.488 graph-depends:164(get_all_depends)
5 0.003 0.001 43.458 8.692 graph-depends:135(get_depends)
1 0.001 0.001 25.712 25.712 graph-depends:98(get_version)
1 0.001 0.001 13.457 13.457 graph-depends:337(remove_extra_deps)
1717 1.672 0.001 13.050 0.008 graph-depends:290(remove_transitive_deps)
9784086/2672326 5.079 0.000 11.363 0.000 graph-depends:274(is_dep)
2883343/1980154 2.650 0.000 6.942 0.000 graph-depends:262(is_dep_uncached)
1 0.000 0.000 4.529 4.529 graph-depends:121(get_targets)
2883343 1.123 0.000 1.851 0.000 graph-depends:246(is_dep_cache_insert)
9784086 1.783 0.000 1.783 0.000 graph-depends:255(is_dep_cache_lookup)
2881580 0.728 0.000 0.728 0.000 {method 'update' of 'dict' objects}
1 0.001 0.001 0.405 0.405 graph-depends:311(check_circular_deps)
12264/1717 0.290 0.000 0.404 0.000 graph-depends:312(recurse)
[...]
real 1m27.371s
user 1m15.075s
sys 0m12.673s
The cumulative time spent in check_circular_deps is just below 0.5s,
which is largely less than 1% of the total run time.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Cc: Samuel Martin <s.martin49@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Currently, we generate the dependency graph in a single command, piping
the stdout of support/scripts/.graph-depends to the stdin of dot.
Unfortunately, this means we can't catch a failure of graph-depends, as
the shell can only treturn the exit code of the last command in a pipe.
Still, we do want to keep the output of graph-depends, and we in fact do
keep it by mean of a tee.
graph-depends has just gained the ability to generate its output to a
file, so we break the pipe in two differnet commands, so we can bail out
on graph-depends errors.
Do that for the two call sites.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Currently, graph-depends outputs the dotfile program to stdout, and uses
stderr to trace the dependencies it is currently looking for.
Redirection was done because the output was directly piped into the dot
program to generate the final PDF/SVG/... dependency graph, but that
meant that an error in the graph-depends script was never caught
(because shell pipes only return the final command exit status, and an
empty dot program is perfectly valid so dot would not complain).
Add an option to tell graph-depends where to store the generated dot
program, and keep stdout as the default if not specified.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Cc: Samuel Martin <s.martin49@gmail.com>
[Thomas: rename metavar from DOT_FILE to OUT_FILE for consistency with
the rest of the new option naming.]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
We currently have two circular dependency chains:
avahi -> libglade -> libgtk2 -> cups -> avahi
avahi -> libgtk3 -> cups -> avahi
The cups -> avahi dependency makes sense, as cups would be able to use
Bonjour and mDNS to find printers, so we want to keep that dependency.
The libgtk2 -> cups and libgtk3 -> cups dependencies also make sense, to
be able to offer cups in the print dialogs.
However, the avahi -> libglade and avahi -> libgtk3 dependencies do not
really make sense. As Thomas puts it:
The avahi GUI programs seem really useless to me. On Debian/Ubuntu
distributions, they are not even packaged within the main avahi
packages, but as separate packages, probably indicating that they
are not very commonly used.
So, we drop the avahi -> libglade and avahi -> libgtk3 dependencies, to
break the circular dependency chain.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
[Thomas: add comment in the .mk file.]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Keep arm_nuri on 3.10.x for the usual reasons.
Keep mips & mipsel (32 bits) on 4.3.x because 4.4.x fails to boot
properly (kernel stuck after the CPU cache info).
Results table:
Defconfig Kernel Qemu Network Status
--------------------------------------------------------------
aarch64_virt 4.4.1 2.3.0 YES OK
arm_nuri 3.10.96 2.3.0 YES(1) OK most times(2)
arm_versatile 4.4.1 2.3.0 YES OK
arm_vexpress 4.4.1 2.3.0 YES OK
microblazebe 4.4.1 2.3.0 YES OK
microblazeel 4.4.1 2.3.0 YES OK
mips64el_malta 4.4.1 2.3.0 YES OK
mips64_malta 4.4.1 2.3.0 YES OK
mipsel_malta 4.3.5 2.3.0 YES OK (4)
mips_malta 4.3.5 2.3.0 YES OK (4)
ppc_g3beige 4.4.1 2.3.0 YES OK
ppc_mpc8544ds 4.4.1 2.3.0 YES OK
ppc_virtex_ml507 4.4.1 2.3.0 NO OK
ppc64_pseries 4.4.1 2.3.0 YES OK
sh4 4.4.1 2.3.0 YES OK
sh4eb 4.4.1 2.3.0 NO(3) OK
sparc_ss10 4.4.1 2.3.0 YES OK
sparc64_sun4u 4.4.1 2.3.0 YES OK
sparc_sun4u 4.4.1 2.3.0 YES OK
x86 4.4.1 2.3.0 YES OK
x86_64 4.4.1 2.3.0 YES OK
xtensa_lx60 4.4.1 2.3.0 YES OK
(1) - Supposed to work but broken, probably Qemu emulation issue
(2) - In like 1/3 starts it fails to work properly
(3) - Probably an endian issue with 8139 emulation/driver
(4) - Kernel stuck at cpu cache details from 4.4 - 4.4.1
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
This commit replaces 0002-musl-gcc5-fixes.patch by a backport of 3
upstream commits. It also renames
0001-thread-Name-include-stdio.h-for-prctl-as-well.patch to have the
sequence number 0004, so that it applies after the backported upstream
patches (since this patch is not upstream yet).
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
From [1]:
With version 2.0, the source code has been cleanly split into
an application-oriented user library and a time-critical stack
driver. The latter may be moved to a dedicated communication
processor or into a kernel module to deliver enhanced
performance while still keeping the API in user space.
This new version break the API used in the v1.x but
this is a complete rewrite of the Powerlink EPSG DS 301
implementation. The v1.x is deprecated anyway.
The new build system has been split in several CMake projects
which makes it difficult to package with the Buildroot CMake
infra. So add a top level CMakeLists.txt to build each
openpowerlink component without having to package each of them
in a separate Buildroot packages. Also we need to fix the
build system to support the top level CMake build.
[1] http://sourceforge.net/projects/openpowerlink/
Signed-off-by: Romain Naour <romain.naour@gmail.com>
[Thomas:
- rename patches to not contain the [FIX] part in their title.
- rewrap Config.in help text
- rename "openPOWERLINK stack type" to "stack type"
- rename ""openpowerlink demos" to "demos"]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
kbd currently doesn't build against musl, due to some issues which
have already been fixed upstream. This commit therefore bumps to the
latest upstream version 2.0.3 to fix the musl build. In order to do
so, this commit also:
- backports a patch that makes building tests optional, which allows
to avoid a dependency on the check package
- updates the libintl patch to work with the latest upstream
Fixes:
http://autobuild.buildroot.net/results/535/5357953e763a1ac4f17332abac54ce2946629a41/
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The build error was not yet found by the autobuilders:
output_alsa.c: In function ‘output_init_alsa’:
output_alsa.c:865:10: error: ‘M_TRIM_THRESHOLD’ undeclared (first use in this function)
mallopt(M_TRIM_THRESHOLD, -1);
^
output_alsa.c:865:10: note: each undeclared identifier is reported only once for each function it appears in
output_alsa.c:866:10: error: ‘M_MMAP_MAX’ undeclared (first use in this function)
mallopt(M_MMAP_MAX, 0);
^
This commit adds a patch fixing this build error by making the
mallopt() usage conditional on __GLIBC__.
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
[Thomas: only enclose the mallopt() call in __GLIBC__, use Git to
format the patch, improve the commit log.]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Leverage the CSV files produces by size-stats (make graph-size) to allow
for a comparison of rootfs size between two different buildroot
compilations.
The script takes the file-size CSV files of two compilations as input, and
produces a textual report of the differences per package.
Using the -d/--detail flag, the report will show the file size changes
instead of package size changes.
The -t/--threshold option allows to ignore file size differences smaller
or equal than the given threshold (in bytes).
Example output is:
Size difference per package (bytes), threshold = 0
--------------------------------------------------------------------------------
-8192 busybox
228572 added dmalloc
301584 added jq
--------------------------------------------------------------------------------
521964 TOTAL
or with detailed view:
Size difference per file (bytes), threshold = 0
--------------------------------------------------------------------------------
-8192 bin/busybox
18152 added usr/bin/jq
39252 added usr/bin/dmalloc
46968 added usr/lib/libdmalloc.so
47288 added usr/lib/libdmallocxx.so
47316 added usr/lib/libdmallocth.so
47748 added usr/lib/libdmallocthcxx.so
283432 added usr/lib/libjq.so.1.0.4
--------------------------------------------------------------------------------
521964 TOTAL
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
According to http://sourceforge.net/projects/libcue the project moved
to github.com, all source tarballs were removed from Sourceforge.
Adjust project and download URLs, update hash and remove
0001-_unused-fix.patch because there is no trace of "__unused" in the
upstream tarball anymore, the patch fails to apply.
Add autoreconf because the new upstream tarball does not contain a
configure script, autoreconf also needs a tweak because it fails when
config/ is not present.
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Add upstream commit fixing a build error not yet been found by the
autobuilders:
pstree.c: In function ‘get_threadname’:
pstree.c:798:15: error: ‘PATH_MAX’ undeclared (first use in this function)
char path[PATH_MAX + 1];
^
pstree.c:798:15: note: each undeclared identifier is reported only once for each function it appears in
pstree.c:798:10: warning: unused variable ‘path’ [-Wunused-variable]
char path[PATH_MAX + 1];
^
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Reviewed-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The build error was not yet found by the autobuilders:
In file included from main.c:46:0:
rand.h:31:9: error: unknown type name ‘u_int32_t’
typedef u_int32_t u_rand_t;
^
<builtin>: recipe for target 'main.o' failed
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Reviewed-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
This commit adds a patch to the iprutils to fix the build with the
musl C library.
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
[Thomas: reformatted the patch with Git, added a better commit log.]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Upstream now provides a new autoconf-based build system, therefore
our patches for Makefile are not needed anymore.
We adapt the gettext patch to make sure that the configure script
doesn't check for libintl.h, and we add an additional patch to fix the
libm check.
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
[Thomas: rework patches.]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Having the host version may allow post-image scripts to encrypt the
resulting image with aespipe (and decrypt it in the update tool on the
target).
Signed-off-by: Ariel D'Alessandro <ariel@vanguardiasur.com.ar>
[Thomas: rewrap Config.in help text, tweak commit title.]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The build error has not yet been found by the autobuilders:
operf.cpp: In function ‘int __delete_old_previous_sample_data(const char*, const stat*, int, FTW*)’:
operf.cpp:862:10: error: ‘FTW_STOP’ was not declared in this scope
return FTW_STOP;
^
operf.cpp:864:10: error: ‘FTW_CONTINUE’ was not declared in this scope
return FTW_CONTINUE;
^
operf.cpp: In function ‘void convert_sample_data()’:
operf.cpp:899:41: error: ‘FTW_ACTIONRETVAL’ was not declared in this scope
int flags = FTW_DEPTH | FTW_ACTIONRETVAL;
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Upstream source repo switched to github.com. Since the last release
dating back to 2014 no new tarball was released so we switch to the
latest github commit.
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The boost package adds a dependency on the libiconv package when
boost-locale is selected but locale support is not available in the
toolchain. However, it forgets to select BR2_PACKAGE_LIBICONV in this
situation, causing the following build failure:
http://autobuild.buildroot.org/results/ab1809f4fa8cf29208f9503edd90aca87fe397c2/
This commit fixes this mistake by adding the necessary select
BR2_PACKAGE_LIBICONV.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
glog can optionally use atomic __sync built-ins. However, its
configure script only checks for the availability of the 4-byte
variant, but the code also uses the 1-byte variant. While this works
on most architectures, it does not on architectures that implement
only the 4-byte variant, such as Microblaze. So if the architecture
does not implement the 1-byte variant, we hint the configure script
that atomic built-ins should not be used.
Fixes:
http://autobuild.buildroot.org/results/bedebd594c283adf39374c9a9f44432e5d6cbff7/
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Now that BR2_ARCH_HAS_ATOMICS is no longer used anywhere, we can
remove it from arch/Config.in*, as well as from the documentation.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Acked-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
The msgpack source code indeed checks for the 4 bytes __sync built-in,
so this commit switches the package from a BR2_ARCH_HAS_ATOMICS
dependency to a BR2_TOOLCHAIN_HAS_SYNC_4 dependency.
python-msgpack, a reverse dependency of msgpack, is changed in the
same way.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
thrift builds perfectly fine on SPARC, which doesn't implement any of
the __sync built-ins, so we can get rid of the BR2_ARCH_HAS_ATOMICS
dependency.
The dependency on atomic operations originated in commit
1aaa14d84f ("thrift: disable for ARC"),
but there was no reference to any autobuilder failure. Our testing
with an ARC toolchain that doesn't have atomics shows that thrift
builds just fine, and code inspection also shows no usage of
__sync_*() built-ins. At the time of the commit, the thrift version
was 0.9.1, which also did not contain any __sync_*() call.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Tested-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
[yann.morin.1998@free.fr: build-tested on an ARC toolchain without
atomics, with CPU 770D]
Acked-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
squid can use the __sync built-ins when available, but uses an
AC_TRY_RUN autoconf tests to check their availability, which isn't
compatible with cross-compilation. Due to this, squid.mk is already
hinting the configure script about this by passing
squid_cv_gnu_atomics=yes/no depending on the availability of atomic
operations.
So far, squid.mk was assuming that BR2_ARCH_HAS_ATOMICS &&
BR2_ARCH_IS_64 was needed, since 8 bytes __sync built-ins are
used. However, this was a bit too restrictive, since certain 32 bits
architectures (ARM, x86) do provide 8 bytes __sync built-ins.
So, instead of using BR2_ARCH_HAS_ATOMICS, we now rely on
BR2_TOOLCHAIN_HAS_SYNC_4 and BR2_TOOLCHAIN_HAS_SYNC_8, since both 4
bytes and 8 bytes __sync built-ins are tested by the autoconf test.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Acked-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
This commit handles the reverse dependency tree of cairo in terms of
atomic dependencies. There are two main changes:
- cairo in fact no longer needs atomic operations. It can perfectly
build without any __sync built-in, as was tested using an ARC
toolchain without atomics, and a SPARC toolchain. Optionally, Cairo
can use the __atomic builtins provided by gcc >= 4.7, so support
for this is added as well. Thanks to this change, the
BR2_ARCH_HAS_ATOMICS dependency is removed from cairo and all its
reverse dependencies.
- harfbuzz does require the __sync built-in for 4 bytes integers, so
we add a dependency on BR2_TOOLCHAIN_HAS_SYNC_4 to harfbuzz and all
its reverse dependency, the main one being the pango package. Due
to this, the vast majority of gtk-related packages are moved to a
dependency on BR2_ARCH_HAS_ATOMICS (which used to be due to cairo)
to a dependency on BR2_TOOLCHAIN_HAS_SYNC_4 (due to pango ->
harfbuzz).
In detail:
- cairo
Remove BR2_ARCH_HAS_ATOMICS dependency, link against -latomic when
gcc >= 4.8 in order to use the __atomic functions.
- harfbuzz
Add dependency on BR2_TOOLCHAIN_HAS_SYNC_4
- cairomm, gst-plugins-good, gst1-plugins-good, libgdiplus,
libsvg-cairo, weston
Remove BR2_ARCH_HAS_ATOMICS dependency (since cairo no longer needs
atomics)
- enlightenment, cwiid, gst-plugins-bad, gst-plugins-base,
gst1-plugins-bad, gst1-plugins-base, gtkmm3,
libevas-generic-loaders, libfm, libgail, libgtk2, libgtk3, librsvg,
openbox, opencv, opencv3, pango, pangomm, pcmanfm, pinentry,
rrdtool, webkit, webkitgtk24, xscreensaver
Switch from a BR2_ARCH_HAS_ATOMICS dependency to a
BR2_TOOLCHAIN_HAS_SYNC_4 (they depend on pango, harfbuzz, gtk, or
some other related package)
- directfb
Remove BR2_ARCH_ATOMICS dependency of the BR2_PACKAGE_DIRECTFB_SVG
(since cairo can build without atomics), but add a
BR2_TOOLCHAIN_HAS_SYNC_4 dependency on BR2_PACKAGE_DIRECTFB itself
since it does use __sync built-ins. This replaces the !BR2_sparc
dependency.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
gauche does not build on sparc64, it fails with:
No rule to make target 'sparc_mach_dep.lo', needed by 'libgc.la'
On Sparc, it first fails with the usual "membar" assembler issue which
comes from gauche's internal version of libatomic_ops. However, even
passing -DAO_NO_SPARC_V9 like we do for libatomic_ops is not
sufficient, as we fall into the same build problem as on sparc64.
Consequently, this commit disables the gauche package on the sparc and
sparc64 architectures.
Since it uses its own libatomic_ops copy, and libatomic_ops does not
have any dependency on atomic built-ins, we also remove the
BR2_ARCH_HAS_ATOMICS dependency. It was originally added to prevent
gauche from being built on sparc, but this will no longer happen.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
libtorrent uses 1 bytes and 4 bytes __sync built-ins, so let's use the
appropriate BR2_TOOLCHAIN_HAS_SYNC_x symbols instead of
BR2_ARCH_HAS_ATOMICS. The rtorrent package, which is a reverse
dependency of libtorrent, gets fixed as well.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Tested-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
[yann.morin.1998@free.fr: build-tested on an ARC toolchain without
atomics, with CPU 770D]
Acked-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Move away from BR2_ARCH_HAS_ATOMICS and use BR2_TOOLCHAIN_HAS_SYNC_4
instead for the jack2 package and its reverse dependency.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Since the apache package was introduced,
--enable-nonportable-atomics=yes was passed when
BR2_ARCH_HAS_ATOMICS. However, Apache doesn't take this option: it
only passes it down when building the APR library. But since we're
building APR separately, this statement had no effect.
So this commit removes the useless code from the Apache package, and
instead adds the appropriate logic to the apr package, using the new
BR2_TOOLCHAIN_HAS_SYNC_x symbols rather than BR2_ARCH_HAS_ATOMICS.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Acked-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Bernd Kuhls <bernd.kuhls@t-online.de>
pulseaudio is able to either use the atomic __sync builtins from the
compiler, or to rely on libatomic_ops for atomic operations. However,
since it anyway selects json-c which requires the __sync built-ins, it
means using libatomic_ops is useless: even if you use libatomic_ops
for pulseaudio, you'd still get a link error in pulseaudio due to the
missing __sync built-in for the json-c library.
Also, since pulseaudio now inherits the BR2_TOOLCHAIN_HAS_SYNC_4 from
json-c, which matches the __sync built-in from pulseaudio, this
commit:
- Drops the BR2_ARCH_HAS_ATOMICS dependency
- Forces pulseaudio to not detect libatomic_ops
- Propagates the removal of BR2_ARCH_HAS_ATOMICS dependency to
pulseaudio's reverse dependencies.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
While json-c itself builds fine on platforms that don't provide the
__sync atomic built-ins, it does use them. json-c doesn't fail to
build because only a library is built, so such function calls are left
unresolved. But as soon as it gets used in another package linked in a
program, linking will fail due to the missing
__sync_val_compare_and_swap_4() function.
To fix this, we make json-c depend on BR2_TOOLCHAIN_HAS_SYNC_4, and
propagate to the reverse dependencies:
- json-c
- fastd
- pulseaudio
- efl
- espeak
- gst-plugins-good
- gst1-plugins-good
- mpd
- rsyslog
- ubus
Note that pulseaudio already had a BR2_ARCH_HAS_ATOMICS dependency,
which we are keeping for the moment, and will clean-up in a subsequent
commit.
This commit will also fix packages that could optionally use json-c,
and therefore fixes build failures like:
http://autobuild.buildroot.org/results/4fe/4feaa9089ee9a183c5086b791bea35c0156945af/
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
This commit updates the documentation to detail when and how to use
the BR2_TOOLCHAIN_HAS_SYNC_x dependency. Note that we chose to not add
a comment about this dependency, because it is mainly tied to
architecture capabilities (except in very specific cases, which would
be way too complicated to explain in a Config.in comment).
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Currently, Buildroot provides one BR2_ARCH_HAS_ATOMICS boolean option
to indicate whether the architecture supports atomic operations or
not. However, the reality of atomic operations support is much more
complicated and requires more than one option to be expressed
properly.
There are in fact two types of atomic built-ins provided by gcc:
(1) The __sync_*() family of functions, which have been in gcc for a
long time (probably gcc 4.1). They are available in variants
operating on 1-byte, 2-byte, 4-byte and 8-byte integers. Some
architectures implement a number of variants, some do not
implement any, some implement all of them.
They are now considered "legacy" by the gcc developers but are
nonetheless still being used by a significant number of userspace
libraries and applications.
https://gcc.gnu.org/onlinedocs/gcc/_005f_005fsync-Builtins.html
(2) The __atomic_*() family of functions, which have been introduced
in gcc 4.7. They have been introduced in order to support C++11
atomic operations. In gcc 4.8, they are available on all
architectures, either built-in or in the libatomic library part
of the gcc runtime (in which case the application needs to be
linked with -latomic). In gcc 4.7, the __atomic_*() intrinsics
are only supported on certain architectures, since libatomic did
not exist at the time.
For (1), a single BR2_ARCH_HAS_ATOMICS is not sufficient, because
depending on the architecture, some variants may or may not be
available. Setting BR2_ARCH_HAS_ATOMICS to false as soon as one of the
variant is missing would cause a large number of packages to become
unavailable, even if they in fact use only more common variants
available on a large number of architectures. For this reason, we've
chosen to introduce four new Config.in options:
- BR2_TOOLCHAIN_HAS_SYNC_1
- BR2_TOOLCHAIN_HAS_SYNC_2
- BR2_TOOLCHAIN_HAS_SYNC_3
- BR2_TOOLCHAIN_HAS_SYNC_4
Which indicate whether the toolchain support 1-byte, 2-byte, 4-byte
and 8-byte __sync_*() built-ins respectively.
For (2), we introduce a BR2_TOOLCHAIN_HAS_ATOMIC, which indicates if
the __atomic_*() built-ins are available. Note that it is up to the
package to link with -latomic when gcc is >= 4.8. Since __atomic_*()
intrinsics for all sizes are supported starting
We conducted a fairly large analysis about various architectures
supported by Buildroot, as well as with a number of different
toolchains, to check which combinations support which variant. To do,
we linked the following program with various toolchains:
int main(void)
{
uint8_t a;
uint16_t b;
uint32_t c;
uint64_t d;
__sync_fetch_and_add(&a, 3);
__sync_fetch_and_add(&b, 3);
__sync_fetch_and_add(&c, 3);
__sync_fetch_and_add(&d, 3);
__sync_val_compare_and_swap(&a, 1, 2);
__sync_val_compare_and_swap(&b, 1, 2);
__sync_val_compare_and_swap(&c, 1, 2);
__sync_val_compare_and_swap(&d, 1, 2);
__atomic_add_fetch(&a, 3, __ATOMIC_RELAXED);
__atomic_add_fetch(&b, 3, __ATOMIC_RELAXED);
__atomic_add_fetch(&c, 3, __ATOMIC_RELAXED);
__atomic_add_fetch(&d, 3, __ATOMIC_RELAXED);
__atomic_compare_exchange_n(&a, &a, 2, 1, __ATOMIC_RELAXED, __ATOMIC_RELAXED);
__atomic_compare_exchange_n(&b, &b, 2, 1, __ATOMIC_RELAXED, __ATOMIC_RELAXED);
__atomic_compare_exchange_n(&c, &c, 2, 1, __ATOMIC_RELAXED, __ATOMIC_RELAXED);
__atomic_compare_exchange_n(&d, &d, 2, 1, __ATOMIC_RELAXED, __ATOMIC_RELAXED);
return 0;
}
And looked at which symbols were unresolved. For the __atomic_*()
ones, we tested with and without -latomic to see which variants are
built-in, which variants require libatomic. This testing effort has
led to the following results:
__sync __atomic gcc
1 2 4 8 1 2 4 8
ARC Y Y Y - Y Y Y L 4.8 [with BR2_ARC_ATOMIC_EXT]
ARC - - - - L L L L 4.8 [without BR2_ARC_ATOMIC_EXT]
ARM Y Y Y X Y Y Y Y 4.8, 4.7
ARM Y Y Y - 4.5
AArch64 Y Y Y Y Y Y Y Y 4.9, 5.1
Bfin - - Y - 4.3
i386 (i386) - - - - L L L L 4.9
i386 (i486..) Y Y Y - L L L L 4.9 [i486, c3, winchip2, winchip-c6]
i386 (> i586) Y Y Y Y L L L L 4.9
Microblaze - - Y - L L Y L 4.9
MIPS Y Y Y - Y Y Y L 4.9
MIPS64 Y Y Y Y Y Y Y Y 4.9
NIOS 2 Y Y Y - Y Y Y L 4.9, 5.2
PowerPC Y Y Y - Y Y Y L 4.9
SuperH Y Y Y - Y Y Y L 4.9
SPARC - - - - L L L L 4.9
SPARC64 Y Y Y Y Y Y Y Y 4.9
x86_64 Y Y Y Y Y Y Y Y 4.7, 4.9
Xtensa Y Y Y - Y Y Y Y 4.9
Notes:
* __atomic built-ins appeared in gcc 4.7, so for toolchais older than
that, the __atomic column is empty.
* Y means 'supported built-in'
* L means 'supported via linking to libatomic' (only for __atomic
functions)
* X indicates a very special case for 8 bytes __sync built-ins on
ARM. On ARMv7, there is no problem, starting from gcc 4.7, the
__sync built-in for 8 bytes integers is implemented, fully in
userspace. For cores < ARMv7, doing a 8 bytes atomic operation
requires help from the kernel. Unfortunately, the libgcc code
implementing this uses the __write() function to display an error,
and this function is internal to glibc. Therefore, if you're using
glibc everything is fine, but if you're using uClibc or musl, you
cannot link an application that uses 8 bytes __sync
operations. This has been fixed as part of gcc PR68095, merged in
the gcc 5 branch but not yet part of any gcc release.
* - means not supported
This commit only introduces the new options. Follow-up commits will
progressively change the packages using BR2_ARCH_HAS_ATOMICS to use
the appropriate BR2_TOOLCHAIN_HAS_SYNC_x or BR2_TOOLCHAIN_HAS_ATOMIC
until the point where BR2_ARCH_HAS_ATOMICS can be removed.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
For most defconfigs, it was trivial to deduce the kernel version, by
just reading the version string, which could be:
- a standard upstream version string vX.Y.Z
- a non-standard version string, but still containg the standard X.Y.Z
Those for which it was not so trivial were those hosted on git tree.
Since most were already using a custom linux-headers version, it could
be easily deduced from that. It was confirmed by browsing said git trees
and check the version there.
There are a few cases were there was a mismatch:
- microzed: uses a 3.18 kernel, but 3.8 headers; fixed.
- xilinx_zc706: uses a 3.14 kernel, but 3.8 headers; fixed.
- zedboard: uses a 3.18 kernel, but 3.8 headers; fixed.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Cc: Peter Korsgaard <peter@korsgaard.com>
Cc: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Now that we can say that the linux headers version should match that of
the kernel to be built, we inverse the logic in our defconfigs, as it is
more sensible that way.
And also because we'll get rid of the former, converse kernel-same-as-headers
option.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Cc: Peter Korsgaard <peter@korsgaard.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
When libbsd still supported uClibc as a C library, we added the architecture
exclusions because uClibc's a.out.h includes linux/a.out.h. The latter only
exists for the specified architectures.
However, glibc doesn't include linux/a.out.h, it instead has its own
implementation and it adds a flag to indicate if a.out is supported on this
architecture or not.
Since libbsd currently only supports glibc-based toolchains, the architecture
exclusions are no longer valid.
On microblaze, the build still fails, but this time because of ELF support.
libbsd explicitly handles architectures and microblaze is not one of them (see
local-elf.h).
Signed-off-by: Carlos Santos <casantos@datacom.ind.br>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The build error was not yet being found by the autobuilders:
omfile.c: In function ‘prepareFile’:
omfile.c:580:3: error: implicit declaration of function ‘open’ [-Werror=implicit-function-declaration]
fd = open((char*) newFileName, O_WRONLY|O_APPEND|O_CREAT|O_NOCTTY|O_CLOEXEC,
^
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The architecture dependencies of protobuf are going to change, and
they are already duplicated between protobuf, ola and mosh. In order
to factorize the expression of those dependencies, this commit
introduces BR2_PACKAGE_PROTOBUF_ARCH_SUPPORTS.
Note that we include in this hidden Config.in option both the target
architecture dependency and the host architecture dependency.
Finally, this commit also fixes a real mistake in the mosh Config.in
file, where the condition on the architecture dependency for the
Config.in comment was inverted: we only want to show the Config.in
comment when we are on supported architectures.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The Juno ARM Development Platform (ADP) is a software development
platform for ARMv8-A, it includes the Juno Versatile Express board
and an ARMv8-A reference software port available through Linaro.
Signed-off-by: Joao Pinto <jpinto@synopsys.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
This patch adds a Vagrant file to buildroot. With this file
you can provision a complete buildroot developing environment
in minutes on all major platforms (Linux/Mac/Windows).
[Peter: bump to 2GB RAM, hardcode Buildroot release, add unzip,
drop website update and tweak manual text as suggested by Yann]
Signed-off-by: Angelo Compagnucci <angelo.compagnucci@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Currently, we have a pattern-matching that automatically derives the
the source tarball filename from the binary tarball filename.
However, the latest Linaro toolchains no longer follow that scheme (and
do not even readily provide the sources...).
Remove the generic pattern-matching, and explicitly set the source
tarball name for those toolchains that do have a source tarball readily
available.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Romain Naour <romain.naour@openwide.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
LIBSPATH is populated based on a find with a pattern that can look like:
libfoo*.so
and thus the output of the find will contain all file paths that match this
pattern.
Unfortunately, the name LIBSPATH suggests that only one entry is returned,
rather than possibly multiple.
As this code is quite complex, use the more accurate name LIBPATHS iso
LIBSPATH.
Signed-off-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Host variant is needed to cross-compile CFFI based C library wrappers.
Signed-off-by: Yegor Yefremov <yegorslists@googlemail.com>
[Thomas:
- add dependency on host-pkgconf for the host package variant.
- add various environment variables needed to make pkg-config behave
properly when building host-python-cffi. Otherwise, pkg-config
returns values that are appropriate to build things for the target,
and the build fails.]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
There is a special hook for target-libffi, that moves headers
from /usr/lib/libffi-version/include to /usr/include. This patch
adds the same procedure for host-libffi.
Signed-off-by: Yegor Yefremov <yegorslists@googlemail.com>
[Thomas:
- factorize code between the staging headers cleanup and the host
headers cleanup.]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The LIBFFI_MOVE_STAGING_HEADERS function is responsible for moving
around libffi headers to a standard location. Once this is done, it
removes the no longer used directory, but does so in $(TARGET_DIR) and
not $(STAGING_DIR). This directory is already cleaned up in
$(TARGET_DIR) in the LIBFFI_REMOVE_TARGET_HEADERS post-install target
hook.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Mauro Condarelli <mc5686@mclink.it>
Reviewed-by: Yegor Yefremov <yegorslists@googlemail.com>
[Thomas:
- remove excessive empty new line at the end of Config.in
- specify BSD-3c as the license, since it's the variant being used,
and it's more specific than just BSD.]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Mauro Condarelli <mc5686@mclink.it>
Reviewed-by: Yegor Yefremov <yegorslists@googlemail.com>
[Thomas:
- rename the .mk file to carry the proper name
- rewrap Config.in help text to use the proper length and avoid a
trailing space
- remove excessive empty new line at the end of Config.in
- specify BSD-3c as the license, since it's the variant being used,
and it's more specific than just BSD.]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Mauro Condarelli <mc5686@mclink.it>
Reviewed-by: Yegor Yefremov <yegorslists@googlemail.com>
[Thomas:
- rewrap Config.in help text, lines were slightly too long
- remove excessive empty line at end of Config.in
- specify BSD-3c as the license, since BSD is not specific enough.]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
This commit fixes the following kconfig warning:
warning: (BR2_PACKAGE_KODI_LIBSMBCLIENT && BR2_PACKAGE_MPD_LIBSMBCLIENT) selects BR2_PACKAGE_SAMBA4 which has unmet direct dependencies (!BR2_PACKAGE_SAMBA && BR2_USE_MMU && BR2_USE_WCHAR && BR2_TOOLCHAIN_HAS_NATIVE_RPC && BR2_TOOLCHAIN_HAS_THREADS && !BR2_STATIC_LIBS && !BR2_nios2)
by updating the kodi and mpd Config.in files to properly take into
account the dependencies of the BR2_PACKAGE_SAMBA4 option that they
select.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
This is the Vivante kernel driver split from the kernel source code in
order to make it possible to be used in any kernel source since 3.10.53.
The driver source code provided by Freescale needs fixes so the
community forked the code to allow faster development and easier
integration of fixes from the community.
This patch is based on the Yocto equivalent:
https://github.com/Freescale/meta-fsl-arm/commit/32cf391https://github.com/Freescale/meta-fsl-arm/commit/4249193
This package has been tested with the following commands:
# modprobe galcore
# cd /usr/share/examples/viv_samples/vdk/
# ./tutorial7
Signed-off-by: Gary Bisson <gary.bisson@boundarydevices.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Some heavily (and most often improperly) modified Linux kernels may export
new APIs to userland, so as to speak to custom hardware or custom kernel
facilities.
However, we currently have no easy way to use such kernels as a source
for the linux-headers package, which precludes having those userland
headers intalled for userland applications to use them.
We do have a way for the kernel to use the same version as for the
headers, but that is definitely not enough, as the linux-headers package
has a version choice that is far less versatile and capable than that of
the linux package.
Add a new option for the linux-headers package, for the user to specify
that the version (really, the sources) of the kernel be used to install
the headers from.
We do that by making linux-headers patch-depend on the linux package.
We can't have linux-header simply depend on linux, because the simple
dependency means the the dependee will be configured, built and installed
before the dependent is configured. And since linux is a target package,
it depends on the toolchain, which internally dependes on linux-headers,
which would depend on linux, and we'd get a circular dependency.
Using patch-depend will ensure that linux is extracted and patched
before linux-headers is extracted, which is really all we need.
Then, we install the headers from the linux source tree, rather than
from linux-headers' source tree (as there's nothing in there!).
Since we need to install a private set for uClibc (see cde947f, uclibc:
prevent rebuilding after installation to staging), we explicitly set
INSTALL_HDR_PATH when calling the kernel' install-headers rule in
LINUX_HEADERS_CONFIGURE_CMDS, so that the headers are installed in
linux-headers' $(@D) instead of linux' $(@D).
Finally, as there is no way to know the kernel version in this case, we
must still prompt the user for the kernel series the headers are from
(like we do for a custom version) and check for consistency at build
time.
Note however that this still leaves users that want to built their
such-kernel outside of Buildroot out in the cold.
[Peter: drop comment as suggested by Thomas]
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Karoly Kasza <kaszak@gmail.com>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Cc: Peter Korsgaard <jacmet@uclibc.org>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Binutils runs the configure scripts of subdirs at make time, so we need a
custom build command to ensure TARGET_CONFIGURE_ARGS are taken into
consideration for those (E.G. for musl gettext handling).
Reported-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
I stumbled across this error using a musl-based allyesconfig but I
doubt it is related to musl. The autobuilders did not catch this
problem yet but the patch I found fits my config (BR2_i386=y,
BR2_x86_i586=y) and it solved the problem right away.
[Peter: pick patches from upstream git instead of downloading from alphine]
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
In some cases, the toolchain sources are now recovered and available in
the legal-info output. So, adapt the header to use conditional instead
of an definitive negation.
Also update the part about saving the sources: it's not the license list
that defines whether sources are installed, but rather whether the
package is redistributable or not.
Update the header accordingly.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Luca Ceresoli <luca@lucaceresoli.net>
Acked-by: Luca Ceresoli <luca@lucaceresoli.net>
Acked-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Upgrade to 5.0.11 P7.1 for i.MX6 with GPU
i.MX6QP qualified graphics driver(5.0.11P7.1).
Includes many of the bug fixes and stability improvements.
For more information refer to release notes from
http://www.freescale.com/imx6qp
libGAL_egl is no longer provided in p7.1.
This patch is based on the Yocto equivalent:
https://github.com/Freescale/meta-fsl-arm/commit/b3ef125
This package has been tested with both X11 and Framebuffer backends:
# cd /usr/share/examples/viv_samples/vdk/
# apitrace trace --api egl ./tutorial7
# gmem_info
... display memory use per PID ...
# apitrace replay tutorial7.trace
# eglretrace tutorial7.trace
Signed-off-by: Gary Bisson <gary.bisson@boundarydevices.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Changelog:
- Enable resolution change for H.263 and VP8
This patch is based on the Yocto equivalent:
https://github.com/Freescale/meta-fsl-arm/commit/f11936b
This package has been implicitely tested through gstreamer as the
plugins rely on it for vpu decoding:
# gst-launch-0.10 playbin uri=file:///root/tears_of_steel_1080p.webm
# gst-launch-1.0 playbin uri=file:///root/tears_of_steel_1080p.webm
# gst-launch-1.0 filesrc location=/root/tears_of_steel_1080p.webm ! \
matroskademux ! imxvpudec ! imxipuvideosink
Signed-off-by: Gary Bisson <gary.bisson@boundarydevices.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Use a different versioning schema based on package versioning
instead of BSP version. This way, if a new BSP version does
not bump this package, we can keep this package unchanged as well.
Changelog since 3.14.28-1.0.0_ga:
- Add fixes for maximum ecc strength for each platform.
- Add mx7 boot config support.
- Add i.MX 6UltraLite support.
- Join the ecc with real FCB data when not byte-aligned.
- Generalize the encode_bch_ecc function for different configurations.
This patch is based on the Yocto equivalent:
https://github.com/Freescale/meta-fsl-arm/commit/8d47a2ehttps://github.com/Freescale/meta-fsl-arm/commit/70edf16
Signed-off-by: Gary Bisson <gary.bisson@boundarydevices.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Use a different versioning schema based on package versioning
instead of BSP version. This way, if a new BSP version does
not bump this package, we can keep this package unchanged as well.
VPU firmware upgraded to v3.1.1_r46067
- Low Latency fixes for H.264 encoder
- Wrong frame number fix for H.264 decoder
- Decode failure fix for H.264 decoder with multi-SPS/PPS headers
The package adds the EPDC waveforms and the needed changes to properly
install those were done in the firmware-imx.mk file.
This patch is based on the Yocto equivalent:
https://github.com/Freescale/meta-fsl-arm/commit/d869826https://github.com/Freescale/meta-fsl-arm/commit/075a5b1
This package has been implicitely tested through gstreamer as the
plugins rely on them for vpu decoding for instance:
# gst-launch-1.0 filesrc location=/root/tears_of_steel_1080p.webm ! \
matroskademux ! imxvpudec ! imxipuvideosink
Signed-off-by: Gary Bisson <gary.bisson@boundarydevices.com>
[Thomas:
- fix typo in commit logs
- remove ; \ and ; at the end of commands, since they were not
needed.]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Romain Naour <romain.naour@gmail.com>
[Thomas: only add the symlink with the old 2014.09 Linaro toolchain,
for the newer ones, it is no longer needed.]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Runtime tested with Qemu 2.3.1 using a configuration based on
qemu_arm_vexpress_defconfig with BR2_ARM_ENABLE_VFP and
BR2_ARM_EABIHF selected
Signed-off-by: Romain Naour <romain.naour@gmail.com>
[Thomas: only add the symlink with the old 2014.09 Linaro toolchain,
for the newer ones, it is no longer needed. This has been runtime
tested in Qemu.]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
New release contains a security fix for the resolver library parts.
It contains exp10(), so some patches in buildroot might be obsolete,
when the buildroot toolchains are rebuilt.
It also contains a fix for the symbol clashing with bind9.
Signed-off-by: Waldemar Brodkorb <wbx@openadk.org>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Since we now only support uClibc-ng, remove the version selection from
the uclibc package.
Note that the BR2_UCLIBC_VERSION_SUPPORTS_* hidden booleans, which
were only used to allow each uClibc version to specify which thread
implementation they support and on which architecture are removed. Now
such architecture dependencies are directly encoded in the "Thread
library implementation" choice.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
The snapshot version points to the original uClibc project, which is
dead. Moreover, we no longer support "snapshot" versions for any other
Buildroot component, so there is no reason to keep it for uClibc.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
The upstream project is dead, the 0.9.33 version requires tons of
patches, and uclibc-ng has now successfully replaced uclibc. It is
time to get rid of the 0.9.33 version.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
samba4 relies on the $ORIGIN feature of the dynamic linker, which used
to not be implemented in old uClibc versions. However:
- this feature is supported by glibc
- this feature is supported by uClibc-ng, which is the only uClibc
version we are going to support
- this feature is supported by musl
Consequently, we can completely remove the dependency of samba4 on
certain C libraries.
Note that despite this commit, samba4 still cannot be chosen when the
musl C library is used, because samba4 requires native RPC support,
which musl doesn't provide.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
vlc uses <spawn.h> which was not available in old uClibc
versions. However, since we are removing support for uClibc 0.9.33, we
can get rid of such dependency. In addition, <spawn.h> is provided by
musl, and therefore VLC can be enabled with this C library.
Consequently, this commit completely removes any C library dependency for
the vlc package. The only special case that needs to be handled is the
Blackfin external toolchain from Analog Devices, which still uses an old
uClibc version that doesn't provide <spawn.h>, but as vlc uses fork() we add
a depends on BR2_USE_MMU (which covers the blackfin toolchain).
[Peter: add BR2_USE_MMU dependency]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Tested-by: Romain Naour <romain.naour@gmail.com>
Reviewed-by: Romain Naour <romain.naour@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
mongrel2 uses the {get,make,swap}context functions:
- With glibc, no problem, they are available on all supported
architectures
- With uClibc, they are available only on a subset of the
architectures. Until now, only BR2_UCLIBC_VERSION_SNAPSHOT
configurations were allowed to select mongrel2, but we are going to
get rid of the uClibc snapshot version, and uClibc-ng is as capable
as the uClibc snapshot. However, only certain architectures have
the *context() functions.
- With musl, there is no *context() support.
Since this dependency is quite complicated, we introduce a
BR2_PACKAGE_MONGREL2_LIBC_SUPPORTS hidden boolean to encode which C
libraries are supported.
Also, listing the supported uClibc architectures would be too long in
the comment, so we simply indicate that the package needs uClibc or
glibc.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Due to posix_fallocate() being unavailable in uClibc 0.9.33,
lttng-babeltrace was marked as available only for uClibc snapshot and
glibc. However:
- lttng-babeltrace builds fine with musl
- lttng-babeltrace builds fine with uClibc-ng
- we're going to get rid of uClibc 0.9.33 support
- the only toolchain left with an old uClibc version is the Blackfin
Analog Devices toolchain, and lttng-babeltrace cannot be enabled on
non-MMU platforms
Conclusion: We can enable lttng-babeltrace on all C libraries, and no
longer require any condition. This commit adjusts the lttng-babeltrace
package accordingly.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Tested-by: Romain Naour <romain.naour@gmail.com>
Reviewed-by: Romain Naour <romain.naour@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
The libunwind package currently dependency on glibc *or* uclibc
snapshot. However, we are going to remove the support for uclibc
snapshot, and uClibc-ng has equivalent functionality as uclibc
snapshot. Moreover, musl is also capable of building libunwind for
certain architectures.
Therefore, this commit reworks the architecture dependencies of
libunwind, to make it available on all architectures for which it is
supported, depending on the capabilities of the different C libraries,
and the implementation of libunwind on each architecture.
On some architectures, libunwind uses the C library *context()
functions, which are not provided by musl at all, and not provided by
uClibc on all architectures. But on some other architectures,
libunwind does not use the C library *context() functions, which
explains why it can be built with musl on such architectures.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Runtime tested with Qemu 2.3.1 using qemu_aarch64_virt_defconfig.
Signed-off-by: Romain Naour <romain.naour@gmail.com>
[Thomas: only add the symlink with the old 2014.09 Linaro toolchain,
for the newer ones, it is no longer needed. This has been runtime
tested in Qemu.]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
In the hope of improving the quality of patches send by newcomers,
add a reference to the submitting-patches section of the manual
to the Contribute tab of the website.
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
In the hope of improving the quality of patches sent by newcomers,
add a reference to the submitting-patches section of the manual
to the top-level README file.
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Commit dc95d50fe3 (correct gettext handling for musl) introduced a last
minute typo, fix that.
Thanks to Thomas Petazzoni for noticing.
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
This reverts commit a0a244d26d.
As this is now handled globally in TARGET_CONFIGURE_ARGS, this can be
reverted here.
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Based on a patch by Bernd Kuhls.
The AM_GNU_GETTEXT autotools macro misdetects musl gettext support as it
checks for internal glibc symbols. Work around it by forcing libc gettext
support when musl is used for the supported gettext api levels.
As this is a generic issue for any package using AM_GNU_GETTEXT, add it to
the global TARGET_CONFIGURE_ARGS instead of for each affected package.
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
The build errors were not yet found by the autobuilders:
action.c: In function ‘name_fn’:
action.c:1911:29: error: ‘FNM_EXTMATCH’ undeclared (first use in this function)
FNM_PATHNAME|FNM_PERIOD|FNM_EXTMATCH) == 0;)
^
pseudo.c: In function ‘read_pseudo_def’:
pseudo.c:435:11: error: ‘S_IFBLK’ undeclared (first use in this function)
mode |= S_IFBLK;
^
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Currently, following symbolic links are created in both target and
staging directories:
- lib(32|64) --> lib
- usr/lib(32|64) --> lib
The decision for lib32 or lib64 is based on the target architecture
configuration in buildroot (BR2_ARCH_IS_64).
In at least one case this is not correct: when building for a Cavium Octeon
III processor using the toolchain from the Cavium Networks SDK, and
specifying -march=octeon3 in BR2_TARGET_OPTIMIZATION, libraries are expected
in directory 'lib32-fp' rather than 'lib32' (ABI=n32; likewise for
lib64-fp in case of ABI=n64)
More generally the correct symbolic link is from (usr/)${ARCH_LIB_DIR}->lib.
However, feedback from Arnout Vandecappelle is that there are packages that
do depend on the lib32/lib64 symlink, even if ARCH_LIB_DIR is different.
Hence, these links must be kept.
Fix the problem as follows:
- For internal toolchains: no change
- For external toolchains: create a symlink ARCH_LIB_DIR->lib if
(usr/)ARCH_LIB_DIR does not exist yet.
Signed-off-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Cc: Arnout Vandecappelle <arnout@mind.be>
Cc: "Yann E. Morin" <yann.morin.1998@free.fr>
Cc: Romain Naour <romain.naour@gmail.com>
Cc: Peter Korsgaard <peter@korsgaard.com>
Reviewed-by: Romain Naour <romain.naour@gmail.com>
Tested-by: Romain Naour <romain.naour@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The copy_toolchain_sysroot helper in toolchain/helpers.mk performs an
rsync of various directories from the extracted external toolchain to the
corresponding directory in staging.
The relevant (simplified) snippet is:
for i in etc $${ARCH_LIB_DIR} sbin usr usr/$${ARCH_LIB_DIR}; do \
rsync -au --chmod=u=rwX,go=rX --exclude 'usr/lib/locale' \
--exclude '/lib/' --exclude '/lib32/' \
--exclude '/lib64/' \
$${ARCH_SYSROOT_DIR}/$$i/ $(STAGING_DIR)/$$i/ ; \
done ; \
The exclusion logic of lib/lib32/lib64 has originally been added by commit
5628776c4a with the purpose of only copying
the relevant usr/lib* directory from the toolchain to staging, instead of
all. For example, if ARCH_LIB_DIR is 'lib64', then only usr/lib64 would be
copied and usr/lib and usr/lib32 are ignored. It works by ignoring any
lib/lib32/lib64 subdirectory on the rsync of 'usr' and then separately
copying usr/{lib,lib32,lib64} as appropriate. (The exclusion rules only have
impact on the files beneath the main source directory.)
However, ARCH_LIB_DIR can take other values than (lib, lib32, lib64), for
example lib32-fp or lib64-fp (Octeon III toolchain with -march=octeon3). In
the existing code, the rsync for 'usr' would then already copy these lib
directories, and the next rsync for 'usr/$${ARCH_LIB_DIR}' does nothing.
By itself, this is not a very big problem: the staging directory simply has
some extra directories. However, a subsequent patch will create a staging
symlink from $${ARCH_LIB_DIR} to lib. The first rsync would then overwrite
that symlink with the real directory usr/$${ARCH_LIB_DIR} from the
toolchain, which is not correct.
Assuming the patch that creates the symlink ARCH_LIB_DIR->lib is applied,
the original situation after 'make clean toolchain' with an
ARCH_LIB_DIR=lib32-fp is:
$ ls -ld output/staging/{,usr/}lib* output/target/{usr/,}lib*
drwxr-xr-x 2 4096 May 26 2015 output/staging/lib
lrwxrwxrwx 1 3 Jan 20 13:47 output/staging/lib32 -> lib
lrwxrwxrwx 1 3 Jan 20 13:47 output/staging/lib32-fp -> lib
drwxr-xr-x 2 4096 Jan 20 13:47 output/staging/usr/lib
lrwxrwxrwx 1 3 Jan 20 13:47 output/staging/usr/lib32 -> lib
drwxr-xr-x 4 4096 May 26 2015 output/staging/usr/lib32-fp
drwxr-xr-x 4 4096 May 26 2015 output/staging/usr/lib64-fp
drwxr-xr-x 4 4096 May 26 2015 output/staging/usr/libexec
drwxr-xr-x 3 4096 May 26 2015 output/staging/usr/libexec32
drwxr-xr-x 3 4096 May 26 2015 output/staging/usr/libexec32-fp
drwxr-xr-x 3 4096 May 26 2015 output/staging/usr/libexec64-fp
drwxr-xr-x 2 4096 Jan 20 13:48 output/target/lib
lrwxrwxrwx 1 3 Jan 20 13:47 output/target/lib32 -> lib
lrwxrwxrwx 1 3 Jan 20 13:47 output/target/lib32-fp -> lib
drwxr-xr-x 2 4096 Jan 20 13:48 output/target/usr/lib
lrwxrwxrwx 1 3 Jan 20 13:47 output/target/usr/lib32 -> lib
lrwxrwxrwx 1 3 Jan 20 13:47 output/target/usr/lib32-fp -> lib
Notice how usr/lib32-fp is not a symlink but a directory, and the presence
of an unnecessary directory usr/lib64-fp.
This patch improves the rsync exclusion rules by excluding any lib*
directory on the first rsync. As this would also exclude any
libexec/libexec32/... directory, explicitly include them first (first match
takes precedence). This (as is already the case today) results in more
usr/libexec* directories than needed, but it is not touched by this patch.
With the fix applied, the situation becomes:
drwxr-xr-x 2 4096 May 26 2015 output/staging/lib
lrwxrwxrwx 1 3 Jan 20 14:27 output/staging/lib32 -> lib
lrwxrwxrwx 1 3 Jan 20 14:27 output/staging/lib32-fp -> lib
drwxr-xr-x 4 4096 May 26 2015 output/staging/usr/lib
lrwxrwxrwx 1 3 Jan 20 14:27 output/staging/usr/lib32 -> lib
lrwxrwxrwx 1 3 Jan 20 14:27 output/staging/usr/lib32-fp -> lib
drwxr-xr-x 4 4096 May 26 2015 output/staging/usr/libexec
drwxr-xr-x 3 4096 May 26 2015 output/staging/usr/libexec32
drwxr-xr-x 3 4096 May 26 2015 output/staging/usr/libexec32-fp
drwxr-xr-x 3 4096 May 26 2015 output/staging/usr/libexec64-fp
drwxr-xr-x 2 4096 Jan 20 14:27 output/target/lib
lrwxrwxrwx 1 3 Jan 20 14:27 output/target/lib32 -> lib
lrwxrwxrwx 1 3 Jan 20 14:27 output/target/lib32-fp -> lib
drwxr-xr-x 2 4096 Jan 20 14:27 output/target/usr/lib
lrwxrwxrwx 1 3 Jan 20 14:27 output/target/usr/lib32 -> lib
lrwxrwxrwx 1 3 Jan 20 14:27 output/target/usr/lib32-fp -> lib
For cases where ARCH_LIB_DIR is one of lib, lib32 or lib64 this fix
makes no difference, and likewise for internal toolchains.
Signed-off-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
Cc: Samuel Martin <s.martin49@gmail.com>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Cc: Arnout Vandecappelle <arnout@mind.be>
Reviewed-by: Romain Naour <romain.naour@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The copy_toolchain_sysroot helper in toolchain/helpers.mk performs an
rsync of various directories from the extracted external toolchain to the
corresponding directory in staging.
The relevant (simplified) snippet is:
for i in etc $${ARCH_LIB_DIR} sbin usr usr/$${ARCH_LIB_DIR}; do \
rsync -au --chmod=u=rwX,go=rX --exclude 'usr/lib/locale' \
--exclude lib --exclude lib32 --exclude lib64 \
$${ARCH_SYSROOT_DIR}/$$i/ $(STAGING_DIR)/$$i/ ; \
done ; \
The exclusion logic of lib/lib32/lib64 has been added by commit
5628776c4a with the purpose of only copying
the relevant usr/lib* directory from the toolchain to staging, instead of
all. For example, if ARCH_LIB_DIR is 'lib64', then only usr/lib64 would be
copied and usr/lib and usr/lib32 are ignored. It works by ignoring any
lib/lib32/lib64 subdirectory on the rsync of 'usr' and then separately
copying usr/{lib,lib32,lib64} as appropriate. (The exclusion rules only have
impact on the files beneath the main source directory.)
However, on the rsync of 'usr', ANY of the following directories AND files
would be excluded:
lib/
lib
lib32/
foobar/something/lib/
something-else/lib64/
while it is only the intention to skip directories directly under usr.
Therefore, add a leading (to restrict the scope to first-level) and trailing
(to restrict to directories) slash to the exclude pattern. From 'man rsync':
- if the pattern starts with a / then it is anchored to [..] the root of
the transfer.
- if the pattern ends with a / then it will only match a directory, not
a regular file, symlink, or device.
Signed-off-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
Cc: Samuel Martin <s.martin49@gmail.com>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Cc: Arnout Vandecappelle <arnout@mind.be>
Reviewed-by: Romain Naour <romain.naour@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
It hasn't been updated since it was added in 2008, and nowadays things kind
of stuff should be handled with genimage.
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Currently, makedevs will query the host's /etc/passwd and /etc/group to
resolve usernames and group names. This is inherently flawed, as we can
never guarantee that the UIDs will be the same on the target as on the
host, or even whether a particular user does exist on the host.
This is because getpwnam() and getgrnam() will forcibly read the
system's /etc/passwd and /etc/group, and there is no way to tell them to
look anywhere else.
However, we can use fgetpwent() and fgetgrent() instead, for which
we can pass a FILE* stream to read from to get the entries. This means
we must implement the scanning-loop ourselves, but fortunately, that's
pretty trivial to do.
[Peter: swap errno / return value check, use bb_perror_msg_and_die, code style]
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Fixes this musl build error:
TermBuffer.cpp: In member function ‘virtual scx::Condition scx::TermBuffer::read(void*, int, int&)’:
TermBuffer.cpp:83:10: error: ‘CEOT’ was not declared in this scope
case CEOT:
^
TermBuffer.cpp:123:10: error: ‘CERASE’ was not declared in this scope
case CERASE: // Backspace
^
The autobuilders did not catch this specific error yet because they
failed earlier with other packages, but I am continuing the build based
on the defconfig from:
http://autobuild.buildroot.net/results/6cc/6cc0f8c067e07deea688b9b97284601a596b898c/
- added hash
- removed 0001-fix-ssl-libs-ordering.patch, applied upstream:
ffb69ca18f
- disabled markdown module because its git submodule cmark
( https://github.com/sconemad/sconeserver/tree/master/markdown )
has no cross-compile support provided by the sconeserver build system:
make[4]: Entering directory '/home/bernd/buildroot/br3/output/build/sconeserver-c4b8e14f6e9e06cbff5b4195f69d6fce9391a1cd/markdown/cmark'
mkdir -p build; \
cd build; \
cmake .. \
-G "Unix Makefiles" \
-DCMAKE_BUILD_TYPE= \
-DCMAKE_INSTALL_PREFIX=/usr/local
-- The C compiler identification is GNU 5.3.1
-- The CXX compiler identification is GNU 5.3.1
-- Check for working C compiler: /usr/bin/cc
-- Check for working C compiler: /usr/bin/cc -- works
[...]
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
[Thomas: adjust the comment about <pkg>_AUTORECONF = YES.]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
According to
https://gitweb.torproject.org/tor.git/plain/ReleaseNotes?id=tor-0.2.7.6
"Tor 0.2.7.5 is the first stable release in the Tor 0.2.7 series."
so this patch bumps to the stable 2.7 series.
This patch also fixes a musl build error not yet found by the
autobuilders:
CC src/common/workqueue.o
src/common/sandbox.c:51:25: fatal error: bits/signum.h: Datei oder Verzeichnis nicht gefunden
#include <bits/signum.h>
^
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The build error was not yet found by the autobuilders:
common.c: In function ‘clear’:
common.c:36:12: error: ‘PATH_MAX’ undeclared (first use in this function)
char path[PATH_MAX];
^
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
No functional change today, but is needed for relocatable SDK.
Signed-off-by: Phil Eichinger <phil@zankapfel.net>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
This bump also fixes the broken download of the previous version.
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Removed 0001-fix-dependencies.patch as this has now been fixed upstream
Signed-off-by: Martin Bark <martin@barkynet.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Upstream moved to github, the old project site now redirects to the URL
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Rebased 0002-use-pkgconfig-for-ncursesw-cflags.patch
The build error has not yet been found by the autobuilders:
watch.c:564:37: error: request for member ‘chars’ in something not a structure or union
exit_early = (wchar_t) c != oldc.chars[0];
^
watch.c:573:5: error: unknown type name ‘cchar_t’
cchar_t oldc;
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
The build error has not yet been found by the autobuilders:
elf.h:31:1: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘typedef’
typedef uint16_t Elf32_Half;
^
elf.h:59:9: error: unknown type name ‘Elf32_Half’
typedef Elf32_Half Elf32_Versym;
^
[...]
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
git head includes this commit
c35607eae8/
Due to the gettext problems the package-specific build errors were not
yet found by the autobuilders:
slattach.c:85:11: error: ‘B50’ undeclared here (not in a function)
{ "50", B50 }, { "75", B75 },
(and many more)
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Creating temporary files in /tmp (or the path pointed by $TMPDIR) allows the
buildroot top directory to be read-only and shareable between multible builds.
This follows what other scripts do, e.g. check-kernel-headers.sh.
Signed-off-by: Henrique Marks <henrique.marks@datacom.ind.br>
Signed-off-by: Carlos Santos <casantos@datacom.ind.br>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
openal will fail to build without this patch when using pcm.h
In file included from /home/bernd/buildroot/br3/output/host/usr/x86_64-buildroot-linux-musl/sysroot/usr/include/alsa/asoundlib.h:54:0,
from /home/bernd/buildroot/br3/output/build/openal-1.17.2/Alc/backends/alsa.c:34:
/home/bernd/buildroot/br3/output/host/usr/x86_64-buildroot-linux-musl/sysroot/usr/include/alsa/pcm.h:1111:1: error: unknown type name ‘u_int8_t’
u_int8_t snd_pcm_format_silence(snd_pcm_format_t format);
^
It seems that this problem was not yet caught by the autobuilders.
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Quite some time ago, we added the options
BR2_TOOLCHAIN_HAS_GCC_BUG_58595 and BR2_TOOLCHAIN_HAS_GCC_BUG_58854 to
indicate if the toolchain was affected by those gcc bugs, which were
causing build failure with a number of packages.
With the recent change in the external toolchain logic to provide only
the latest version of each toolchain "family", all the toolchains
which were affected by those issues disappeared from Buildroot. Those
options are no longer being selected anywhere, and being blind
options, it means their value is always going to be "disabled".
Conquently, this commit removes those options completely, and updates
all the packages where they were used.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
This patch also fixes the broken download of the current package
version because upstream removed version 5.100.2.
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
This patch also fixes the broken download of the current package
version because upstream removed the previous version.
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The description "Filesystem tester" is rather unhelpful. Take the
description from the referenced web site to make it a bit clearer what
bonnie++ actually is.
[Thomas: rewrap Config.in help text.]
Signed-off-by: Cam Hutchison <camh@xdna.net>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
[Peter: use tarball for Linux kernel, use 4.4 kernel headers]
Signed-off-by: Eelco Chaudron <echaudron@xiot.nl>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Fixes
CVE-2016-0754: remote file name path traversal in curl tool for Windows
CVE-2016-0755: NTLM credentials not-checked for proxy connection re-use
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
pixman fails to build with musl because <float.h> is included in
assembler files, which doesn't work with the <float.h> provided by
musl. This commit fixes that by patching pixman (patch submitted
upstream).
Reported-by: Eial Czerwacki <eial@scalemp.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Fixes:
CVE-2016-0742 - invalid pointer dereference might occur during DNS
server response processing if the "resolver" directive was used,
allowing anattacker who is able to forge UDP packets from the DNS server
to cause segmentation fault in a worker process.
CVE-2016-0746 - use-after-free condition might occur during CNAME
response processing if the "resolver" directive was used, allowing an
attacker who is able to trigger name resolution to cause segmentation
fault in a worker process, or might have potential other impact.
CVE-2016-0747 - CNAME resolution was insufficiently limited if the
"resolver" directive was used, allowing an attacker who is able to
trigger arbitrary name resolution to cause excessive resource
consumption in worker processes.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Fixes:
http://autobuild.buildroot.net/results/256/2561190b274d71666c4bdf3c569b02063cefdb30/http://autobuild.buildroot.net/results/14e/14e6addcd3ec35f882da7ec489caa9b60ecd4b63/http://autobuild.buildroot.net/results/cf0/cf011286be839674d358a8bccaf1c5c52de75e46/
madplay needs gettext when built with nls, and it support 3 variants:
- C library support gettext (E.G. glibc)
- Libintl (E.G. uClibc)
- An included libintl copy
The included libintl copy has unfortunately bitrotted and doesn't even build
any more. With that said, musl DOES have gettext support, so that should be
used instead.
The configure script unfortunately uses an old AM_GNU_GETTEXT test, which
explicitly checks for nonstandard glibc extensions, which musl doesn't
support:
http://www.openwall.com/lists/musl/2015/04/16/3
Which causes the detection to fail:
configure:24770: checking for GNU gettext in libc
configure:24794: /home/peko/source/buildroot/output/host/usr/bin/i486-linux-musl-gcc \
-o conftest -Wall -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 \
-D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 conftest.c >&5
/tmp/ccboDFhK.o: In function `main':
conftest.c:(.text+0x39): undefined reference to `_nl_msg_cat_cntr'
conftest.c:(.text+0x40): undefined reference to `_nl_domain_bindings'
collect2: error: ld returned 1 exit status
Now, madplay itself doesn't actually use these glibc extensions, so just force the
detection of GNU gettext when musl is used.
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Fixes:
CVE-2015-8704 - apl_42.c in ISC BIND 9.x before 9.9.8-P3 and 9.9.x and
9.10.x before 9.10.3-P3 allows remote authenticated users to cause a
denial of service (INSIST assertion failure and daemon exit) via a
malformed Address Prefix List (APL) record.
CVE-2015-8705 - buffer.c in named in ISC BIND 9.10.x before 9.10.3-P3,
when debug logging is enabled, allows remote attackers to cause a denial
of service (REQUIRE assertion failure and daemon exit, or daemon crash)
or possibly have unspecified other impact via (1) OPT data or (2) an ECS
option.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
For some reason, since when openocd was introduced, it was using a
BR2_ARCH_HAS_ATOMICS dependency for all sub-options that selected
BR2_PACKAGE_LIBFTDI1, even if the libftdi1 package did not have any
atomics dependency. Maybe it was confused with the libftdi package,
which did have a BR2_ARCH_HAS_ATOMICS dependency ?
Regardless, openocd with all four sub-options that currently depend on
BR2_ARCH_HAS_ATOMICS builds perfectly fine with a toolchain that does
not implement any of the __sync atomic built-ins, so we can remove the
BR2_ARCH_HAS_ATOMICS dependency.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Acked-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Since the introduction of _KCONFIG_DEFCONFIG in 8ef62b99, the package's
.config file no longer depends on anything (unless a fragment is
defined). Therefore, there is no dependency anymore between .config
and <pkg>-patch. Thus, it is possible that the .config file is
attempted to be built before the package is extracted and patched.
Usually this works out OK because <pkg>-patch will always be done
before <pkg>-configure, but it will fail when the user calls
<pkg>-menuconfig explicitly. It will also fail when we enable
top-level parallel build.
To solve this, just add an explicit order-only dependency on
<pkg>-patch. It really is only necessary when _KCONFIG_DEFCONFIG is
defined and _KCONFIG_FRAGMENT_FILES is not, but it doesn't hurt to
add it unconditionally.
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Reported-by: FrAnKenStEiN MC <chfakht@gmail.com>
Acked-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The BR2_ARCH_HAS_ATOMICS was added because on ARC, atomic instructions
may not be provided by the architecture and therefore the compiler
does not provide the __sync_*() built-ins.
However, since then, icu was changed and is now able to use C++11
atomics, or even no atomic operations at all. In fact, icu will:
* If possible, it will use C++11 atomics, which internally rely on
the __atomic built-ins. These are available since gcc 4.7, and all
architectures provide it. On some architectures, you *must* link
with libatomic, on some other architectures, they are available
built-in, but in all cases, linking against libatomic does not
harm. Thanks to this, even ARC with no atomic support (which was
the original reason for adding the BR2_ARCH_HAS_ATOMICS) dependency
builds fine, provided -latomic is added to LIBS.
* If C++11 atomics are not available, then it falls back to
__sync_*() built-ins, which allows compilers older than 4.7 to be
supported.
* If really no atomic mechanism is available, then it falls back to a
basic implementation based on a mutex.
Conclusion:
- The BR2_ARCH_HAS_ATOMICS dependency is no longer needed.
- We need to link with -latomic when gcc >= 4.7 is used.
Note that reverse dependencies of icu are also changed accordingly.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
In commit 669ce8c75e ("libftdi: add
dependency on atomic operations"), a dependency on
BR2_ARCH_HAS_ATOMICS was added to the libftdi package to fix a build
failure occuring on the ARC architecture due to the missing
__sync_fetch_and_add_4 function:
../ftdipp/.libs/libftdipp.so: undefined reference to `__sync_fetch_and_add_4'
However, today, even on the SPARC architecture that does not implement
any of the __sync built-ins, libftdi and its C++ binding libftdipp
build fine. ARC was also tested and builds fine.
Therefore, we remove the BR2_ARCH_HAS_ATOMICS dependency from libftdi,
and also from flashrom, in which it was only present due to the
selection of libftdi. Note that anyway flashrom is available only for
i386 and x86_64, both of which implement all the __sync built-ins.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Tested-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
According to libftdi configure.in:
"""
dnl libftdi C++ wrapper. Needs boost.
[...]
if test "x$HAVE_BOOST" != "xyes"; then
AC_MSG_ERROR(Sorry, we need the boost library for the C++ wrapper)
fi
"""
And indeed, if you enable BR2_PACKAGE_LIBTFDI_CPP but don't have Boost
enabled, the libfdipp library is not built. To fix this, this commit
changes BR2_PACKAGE_LIBTFDI_CPP to select Boost.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Well-formed patch fails to apply
- patch v2.6:
Hunk #1 FAILED at 1.
Hunk #2 FAILED at 23.
- patch v2.6.1:
can't find file to patch at input line 11
Perhaps you used the wrong -p or --strip option?
[snip]
No file to patch. Skipping patch.
2 out of 2 hunks ignored
Patch failed! Please fix 0001-fix-makefile.patch!
Old versions of the tool "patch" cannot handle spaces in filenames.
The same does not occur using "patch" v2.7 or any later.
Workaround: when a file with space in the name needs to be patched,
one or two hooks must be used.
A pre-patch or post-extract hook renames the file to replace spaces
with underscores.
The patch file must be generated using diff between two source-trees
that have the file renamed with spaces replaced by underscores.
A post-patch hook could rename the file to its original name if needed.
Fixes:
http://autobuild.buildroot.net/results/8ff/8ff91ab8e52000eb34dd8f662520cf1b31490cf5/http://autobuild.buildroot.net/results/ea7/ea77d6b23aca0cb1cf527e6c16ddf5eba957a69c/
Signed-off-by: Ricardo Martincoski <ricardo.martincoski@gmail.com>
Cc: Bernd Kuhls <bernd.kuhls@t-online.de>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Cc: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Reviewed-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Default configure options were changed in
ad9b54ad90
enabling the download of the source of libhdhomerun and its static
build which will lead to a link error because the host compiler is used
for that build. Therefore disable the static build of libhdhomerun by
tvheadend's build system like we do for ffmpeg.
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Since vboot-utils is hosted in a Git repository, it makes sense to use
Git formatted patches for this package.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Fixes https://bugs.busybox.net/show_bug.cgi?id=8621#c1
Lonnie Abelbeck wrote:
"recently sqlite changed it's default behavior wrt the sqlite CLI tool,
previously it was dynamically linked with libsqlite3.so.0 by default,
now it is statically linked by default.
The old behavior can be signaled with: --disable-static-shell"
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The linknx package needs the argp functionality, which is provided
built-in by glibc, but not by uClibc and musl. In uClibc
configurations, it correctly selects the argp-standalone package to
compensate this, but forgets to do so in musl-based
configurations. This commit fixes that by selecting the
argp-standalone package.
Found by checking all packages having an argp-standalone
dependency. Note that this commit is not sufficient to make linknx
build properly with musl.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The iucode-tool package needs the argp functionality, which is
provided built-in by glibc, but not by uClibc and musl. In uClibc
configurations, it correctly selects the argp-standalone package to
compensate this, but forgets to do so in musl-based
configurations. This commit fixes that by selecting the
argp-standalone package, and adjusting the dependency in the .mk file.
Fixes:
http://autobuild.buildroot.net/results/7f8626db69500a84a393053a485f04180c565673/
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
This commit adds a minor patch to hplip's configure.in script, which
avoids the need to create the AUTOHRS, ChangeLog, NEWS and README
files before autoreconfiguring, and silences a huge number of warnings
telling to enable the subdir-objects automake option.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The 0001-fix-make.patch which was added to the hplip package to remove
hardcoded paths to the libusb header introduced a solution that isn't
correct. When cross-compiling, $(includedir) is ${prefix}/include (i.e
/usr/include), so it is not the location where headers can be
found. Due to this, hplip.mk was overriding the includedir value with
--includedir which is not correct.
To replace this mechanism, this commit changes the patch to instead
use pkg-config (which is already used in other places in hplip
configure.in) to detect libusb. This way, we can get rid of the hack
and get a proper detection of libusb.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
- Remove 0001-fix-static.patch - Fixed upstream
- Remove 0002-fix-stack-protector-check.patch - Fixed upstream
- Remove 0003-mantohtml.patch - Replaced by
0001-Remove-man-from-BUILDDIRS-in- configure.patch
- Add 0002-Do-not-use-genstrings.patch
- Add CUPS_PDFTOPS option to Config.in.legacy - This support was
moved to the cups-filters package.
Signed-off-by: Olivier Schonken <olivier.schonken@gmail.com>
[Thomas:
- rewrap patch description in patch 0001
- adjust patch 0002 to completely remove the call to genstrings
instead of commenting it, and remove the potentially confusing
'echo' above it
- add a third patch that sanitizes the installation process to avoid
non-working stripping, owernship changes, etc.]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The new upstream is a fork of the original that consolidates other distro's
patches. This fork resolves a series of musl build failures noted in the
autobuilder log.
http://autobuild.buildroot.net/results/12cb73f3def95efe706bcd957bc2c091e7931d5a/
- Updated to github fork, selected merge from Nov 3 2015
which provided musl fixes (last release was to old, 20150815)
- Why the fork ? (http://www.spinics.net/lists/netdev/msg279881.html)
- Added missing dependencies for kernel capabilies lib
- Accounted for new consolidated ping (ipv4/6)
Tested against a buildroot arm musl/glibc toolchains, as well as
autobuilder defconfig.
Signed-off-by: Matt Weber <matt@thewebers.ws>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
After some effort to upstream the libv4l patches, 4 out of our 5
patches are now upstream. This commit updates those patches to
indicate their upstream status.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Allows user to specify other access methods than :pserver:anonymous@
on CVS repositories. This shall be defined in the <pkg>_SITE variable.
[Thomas:
- as suggested by Yann, quote the variable expansion
- as suggested by Yann, use a regexp match
- tweak commit log]
Signed-off-by: Joao Mano <joao@datacom.ind.br>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
At least with French user's locale HOSTARCH is empty since
'Target' is not present in gcc output.
gcc -v 2>&1
Utilisation des specs internes.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/usr/libexec/gcc/x86_64-redhat-linux/5.3.1/lto-wrapper
Cible : x86_64-redhat-linux
Override the user's local with LC_ALL=C.
Signed-off-by: Romain Naour <romain.naour@gmail.com>
Cc: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Acked-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
lldpd is a 802.1ab implementation (LLDP) to help you locate neighbors
of all your equipments.
LLDP is an industry standard protocol designed to supplant proprietary
Link-Layer protocols such as EDP or CDP. The goal of LLDP is to
provide an inter-vendor compatible mechanism to deliver Link-Layer
notifications to adjacent network devices.
https://vincentbernat.github.io/lldpd/
[Thomas:
- add depends on BR2_USE_MMU, since fork() is used
- rewrap Config.in help text]
Signed-off-by: Julien Floret <julien.floret@6wind.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
-ldl includes the reference to the library that has
the symbols for loading dynamic libraries.
So there is no need for this library for static only builds.
Even though alsa-lib uses dlopen, it has functions snd_dlopen
and others which can emulate dynamic linking for the static
build of the alsa-lib library and there is no need in libdl
dlopen when static build only.
This patch fixes build failures of the shairport-sync
(and probably other packages) when static libs are used.
Fixes:
http://autobuild.buildroot.net/results/85a/85a3f01bcd4eb2ce7ac480e63b4cc04bf7c8f3e5/
[Thomas: use a single ALSA_LIB_CONF_OPTS for both --enable-shared=no
and --without-libdl.]
Signed-off-by: Lada Trimasova <ltrimas@synopsys.com>
Cc: Alexey Brodkin <abrodkin@synopsys.com>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Cc: Peter Korsgaard <peter@korsgaard.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
These patches solve several problems that were discovered
after bumping tools to arc-2015.12-rc1.
The fixes were done in development tree arc-4.8-dev and will be
a part of the next release of ARC GNU tools.
Once that new release happens these patches must be removed.
Signed-off-by: Lada Trimasova <ltrimas@synopsys.com>
Cc: Alexey Brodkin <abrodkin@synopsys.com>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Cc: Peter Korsgaard <peter@korsgaard.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
It's been deprecated for a year now, so remove it.
While at it also remove the BR2_DEPRECATED_SINCE_2015_02 since it's now
unused.
And change the efl gif text to refer to giflib rather than libungif
which is what's used since it was deprecated.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
libnspr currently passes --enable-thumb2 if the CPU has thumb
instructions. This option will pass -mthumb to the compiler. However,
if an external multilib toolchain is used that has a thumb-specific
variant (e.g. Sourcery), it will try to use that one. But we only copy
a single variant to the sysroot, so the build will fail with:
.../arm-none-linux-gnueabi/bin/ld: cannot find crti.o: No such file or directory
...
collect2: error: ld returned 1 exit status
../../config/rules.mk:303: recipe for target 'libnspr4.so' failed
We can in fact just remove the thumb2 handling. With current libnspr,
the thumb and thumb2 options just add -marm and -mthumb. But we already
pass that in our toolchain wrapper so it's completely redundant.
Note that when nothing is passed, the configure script still tries to
autodetect whether thumb2 is available (but doesn't do it correctly,
see the error above), but in the end it doesn't use the result for
anything. In other words, even if it detects that thumb2 is available,
it will _not_ pass -mthumb to the compiler.
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Currently, we set HOSTARCH to the output of `uname -m`. This gives us
the architecture as seen by the running kernel. For example, we would
end up with 'x86_64' for a 64-bit kernel running on an x86_64 processor.
We use that value to determine whether we can run some binary tools,
like our pre-configured external toolchains.
However, one may be running a userland in a different bitness than that
of the running kernel. For example, one may run in a 32-bit chroot, even
though the kernel is running in 64-bit.
Up until recently, this was not an issue because the pre-configured
external toolchains were all requiring an i386 (x86 in Buildroot
parlance).
But since we introduced the latest Linaro toolchains, we now have
toolchains that require a 64-bit userland.
So, when running on a 64-bit kernel, we believe those toolchains are
available, even when the user is running a 32-bit userland. This causes
build failures for our autobuilders, like so:
http://autobuild.buildroot.org/results/9cd/9cdf10ec5b31144b2e03ea09cf128702339895b3/
with the following symptoms:
>>> toolchain-external undefined Configuring
Cannot execute cross-compiler '/home/test/autobuild/instance-3/output/host/opt/ext-toolchain/bin/aarch64-linux-gnu-gcc'
So, instead of relying on the output of `uname -r`, look for the host
gcc and extract the target it was configured to generate code for.
Fixes:
http://autobuild.buildroot.org/results/9cd/9cdf10ec5b31144b2e03ea09cf128702339895b3/ (aarch64)
http://autobuild.buildroot.org/results/888/8889aa7d9fb48370e4760a6edbc6d3ae945f02f2/ (arm)
and many more...
Besides fixing those issues, it will also allow us to add the 64-bit
variants of toolchains when they exist, like the upcoming Codescape
MTI and IMG toolchains for MIPS from Imagination Technologies.
[Peter: use HOSTCC_NOCCACHE]
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Cc: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Reviewed-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Currently our toolchain infrastructure assumes that every toolchain has
nested sysroot directories. However that's not true for all of them. The
Codescape toolchains from Imagination Technologies use a side by side
sysroot structure, for instance.
This patch allows our toolchain infrastructure to detect what kind of
sysroot structure we have (nested or side by side) and performs the
appropriate actions.
[Thomas: update the comment above the function, to explain what's
going on with nested sysroots and side-by-side sysroots.]
Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Reviewed-by: Romain Naour <romain.naour@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Bump to latest commit to fix runtime issue with the Linux Kernel headers 4.4:
Starting thd: Unable to parse trigger line: [..]
With version 4.4 of the Linux Kernel the input event codes are not defined in
'linux/input.h' anymore, but in a seperate header file
'linux/input-event-codes.h' leaving triggerhappys evtable_*.h header files
empty with no event codes defined.
This issue is fixed upstream by commit 7e5abc69f215678e93a6b999524981c8b40bdcd9
which also makes overwriting of the 'LINUX_INPUT_H' definition obsolet.
Tested with an internal Buildroot toolchain with Linux Kernel headers 4.4 and
an external Linaro ARM 2015.08 toolchain with Linux Kernel headers 4.0.
[Peter: add hash file]
Signed-off-by: Jörg Krause <joerg.krause@embedded.rocks>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
We want to ensure all packages follow the same coding style, so we add a
blurb about the order of kconfig options' attributes:
- first, the type and the prompt
- the default value if needed
- then dependencies of the 'depends on' category
- followed by dependencies of the 'select' form
- with eventually the help text
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Acked-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Otherwise it will cause build failures like this one:
[100%] Linking C executable luvi
/home/buildroot/autobuild/run/instance-2/output/host/opt/ext-toolchain/bin/../lib/gcc/mipsel-buildroot-linux-gnu/5.2.0/../../../../mipsel-buildroot-linux-gnu/bin/ld:
jitted_tmp/src/lua/init.lua_luvi_generated.o: compiled for a big endian
system and target is little endian
Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Some fine version control systems make all files read-only. The custom DTS file
may therefore be read-only, and that permission is preserved when copying into
the Linux build directory. A subsequent rebuild tries to 'cp' again, which
fails with a "Permission denied" error unless the -f option is used.
Signed-off-by: Hollis Blanchard <hollis_blanchard@mentor.com>
Acked-by: Nikolay Dimitrov <picmaster@mail.bg>
Acked-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
There is an empty newline between the "help" keyword, and the help
text, which we don't normally do in Buildroot. This commit gets rid of
this useless empty newline.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Recent MIPS compilers have an stricter agreement between the compiler
and the assembler on the ABI. The compiler now passes -msoft-float to
the assembler where it previously did not.
libffi uses MIPS hard-float instructions so when we try to build it for
soft-float using a recent compiler it fails because of the explained
above. This package should be fixed in order to add support for
soft-float.
In the meantime we can add a little hack in order to be able to build it
for soft-float. Basically we add ".set hardfloat" so the assembler will
not disable the hard-float instructions. The build will of course
include some hard-float bits which shouldn't exist in a soft-float
build, and that may cause runtime problems. But that's what we already
had before and we had lived with it.
We choose to apply this temporary fix because it only affects MIPS
soft-float builds. Otherwise we would need to disable libffi and
recursively all the packages depending on it (python, libglib2...) for
MIPS soft-float, which would be a bit overkill.
Fixes:
http://autobuild.buildroot.net/results/6b0607b7cb0ac5525c2e47e819301f38bd2d6b30/
Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Tested-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
As x264 is packaged, we can also build the gstreamer plugin using it.
This commit adds the option in menuconfig and make sure it is built if
selected.
[Peter: split fix, add GPL tag, update help text and commit description]
Signed-off-by: Vincent Dehors <vincent.dehors@openwide.fr>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Upstream URL has changed on Sourceforge:
>>> libevent 2.0.22-stable Downloading
--2016-01-17 23:06:31-- http://downloads.sourceforge.net/project/levent/libevent/libevent-2.0/libevent-2.0.22-stable.tar.gz
Resolving downloads.sourceforge.net (downloads.sourceforge.net)... 216.34.181.59
Connecting to downloads.sourceforge.net (downloads.sourceforge.net)|216.34.181.59|:80... connected.
HTTP request sent, awaiting response... 404 Not Found
2016-01-17 23:06:31 ERROR 404: Not Found.
Additionally the project moved to github:
http://sourceforge.net/projects/levent/
"As of 2015-10-07, this project may now be found at
https://github.com/libevent/libevent."
This patch points Config.in to the new upstream URL and fixes the broken
download URL by using github.com.
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
genimage from the post-image script needs mkdosfs to create fat partition:
>>> Executing post-image script board/orangepi/orangepipc/post-image.sh
sh: 1: mkdosfs: not found
vfat(boot.vfat): failed to generate boot.vfat
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Since the bump from 5.27 to 5.37 of bluez5_utils, the bluez code has
started using <wordexp.h> functionality. Unfortunately, our current
uClibc configuration does not have the wordexp functionality enabled,
so bluez5_utils cannot be built anymore.
In order to address this, we make bluez5_utils unavailable on
uClibc. This could be changed later by either removing the dependency
of bluez5_utils on wordexp support, or by deciding to add wordexp
support to our uClibc configuration.
Fixes:
http://autobuild.buildroot.org/results/831/83112559d84dc156141339a31e3e02f1a2af5155/
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Since we now depend on !BR2_STATIC_LIBS to be able to build the
alsatplg tool, it makes sense to provide an option to install it.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
In the definitions of the alsa-utils sub-options, the 'select' were
before the 'bool', which is unusual and does not follow how we do
things in general in Buildroot. This commit fixes that for all
alsa-utils suboptions.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Use proper 64-bit constant for CONVERT_FBX_TIME(time) conversion.
Fixes ([1]):
code/FBXConverter.cpp:2025: error: integer constant is too large for 'long' type
code/FBXConverter.cpp:2026: error: integer constant is too large for 'long' type
code/FBXConverter.cpp:2794: error: integer constant is too large for 'long' type
code/FBXConverter.cpp:2868: error: integer constant is too large for 'long' type
code/FBXConverter.cpp:2878: error: integer constant is too large for 'long' type
code/FBXConverter.cpp:2888: error: integer constant is too large for 'long' type
[1] http://autobuild.buildroot.net/results/885/8853b192d16ca7ef769c5352a2df0540a7a2a4fd
Signed-off-by: Peter Seiderer <ps.report@gmx.net>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The perf tool installed test files in
output/target/usr/libexec/perf-core/tests/
which amounted to about 30+K.
Since they are not needed for normal perf operation, remove them.
Signed-off-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
Reviewed-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
This way the busybox counterparts are overwritten and we will not end up
with procps-ng binaries in /usr/bin and /usr/sbin, and busybox symlinks
for the same tools in /bin and /sbin.
Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Enable building harfbuzz with the optional graphite2 support.
Also switch --without-X configure options to the correct/documented
--with-X=no syntax.
Signed-off-by: Gustavo Zacarias <gustavo.zacarias@free-electrons.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Fixes:
CVE-2016-0777 - Client Information leak from use of roaming connection
feature.
CVE-2016-0778 - A buffer overflow flaw was found in the way the OpenSSH
client roaming feature was implemented. A malicious server could
potentially use this flaw to execute arbitrary code on a successfully
authenticated OpenSSH client if that client used certain non-default
configuration options.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Reviewed-by: James Knight <james.knight@rockwellcollins.com>
Tested-by: James Knight <james.knight@rockwellcollins.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Firefox recently activated mixing content mode protection
(http elements in an https page). This patch changes
the external slides service to https.
Signed-off-by: Angelo Compagnucci <angelo.compagnucci@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Also remove merged patches.
So, autoreconf is no longer needed.
Signed-off-by: Samuel Martin <s.martin49@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
The apply-patches.sh script was using a mix of tabs and spaces, and
some three-space indentation. Normalize everything to four-space
indentation.
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Match the systemd service file and set time immediately on startup
rather than small steps when it differs a lot.
On embedded scenarios this is better since boards that lack a
battery-backed RTC might start at unix epoch and the time set will delay
for quite a while otherwise.
For boards that do have a battery-backed RTC the behaviour will be
practically the same unless the RTC drifts a lot.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
A copy/paste error in the ArgumentParser() constructor call disclosed
the fact that the author of the script has shamefully based his work
on the existing graph-build-time script. This commit fixes this
mistake, therefore hiding in a better way how size-stats was
vampirized from graph-build-time.
Reported-by: Thomas De Schampheleire <patrickdepinguin@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Commit e7d04dd2d replaced /etc/dropbear with a symlink to /var/run and
updated the start scripts to replace it with a real directory, so the
keys would be persistent. However, it turns out that this is pretty
confusing even for expert users, who don't know how to make the keys
really persistent now.
Update the help text explaining what the issue is, and telling the user
to replace the /etc/dropbear symlink with a symlink to a persistent
directory. Also mention the possiblity of unionfs.
Cc: Thomas De Schampheleire <patrickdepinguin@gmail.com>
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
The revision 18153 dates from 2012-01-20. Lets update to latest changed revision
19427 which dates from 2015-01-07.
Signed-off-by: Jörg Krause <joerg.krause@embedded.rocks>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Update to 1.0.11. Contains a lot of bugfixes
and some new features:
* mips{32r6,64r6} enablement
* argp support
* support for very simple /etc/gai.conf
* Xtensa nommu vfork fix
* systemd portability fixes
Signed-off-by: Waldemar Brodkorb <wbx@uclibc-ng.org>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Follow the upstream EOL cycle and mark 4.2 as deprecated for 2016.02.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
The generated $(TARGET_DIR)/etc/network/interfaces mixes spaces and
tabs. Fix by using tabs only.
Signed-off-by: Luca Ceresoli <luca@lucaceresoli.net>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
This is the 21st century, so enable SMP for them.
[Peter: add note to readme.txt about how emulate a SMP system in QEMU]
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Switch to bz2 tarball since there doesn't seem to be an xz release this
time around.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Fixes:
CVE-2015-5300 - MITM attacker can force ntpd to make a step larger than
the panic threshold.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Patch now upstream, so drop it along autoreconf and gettextize.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Move libpciaccess selection under BR2_PACKAGE_XSERVER_XORG_SERVER_MODULAR
to simplify.
Signed-off-by: Romain Naour <romain.naour@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
In preparation for the bump to Python 3.5.0, let's switch all the
patches to the Git format. This way, a Git repository of the Python
source code can be used to manage those patches, which makes it easier
to bump to newer Python versions.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Acked-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Fixes#8581
Commit 2c879f95a0 (pciutils: cleanup) refactored the make arguments, but
accidently changed the logic to disable dns based lookups to pass
PCIUTILS_DNS=no instead of DNS=no, causing the autotection to be used.
This autodetection looks at host includes, so it isn't safe for cross
compilation.
Disable it by setting the correct make variable instead.
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Most embedded systems do not have a keyboard.
If a keyboard is attached afterwards (e.g. to an accessible USB host port)
this allows the user to reboot the system by pressing Ctrl-Alt-Del, which
might not be desired.
Signed-off-by: lothar felten <felten@vaxnet.de>
Acked-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
gcc differentiates the mpcore-with-vfp from the mcpore-without-vfp
CPUs. The former is named just 'mpcore', while the latter is named
'mpcorenovfp'.
We only add one entry, 'mpcore' and let the user select whether or
not to use the VFP. We then name the CPU according to the user's
selection.
Signed-off-by: Sergi Granell <xerpi.g.12@gmail.com>
Tested-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Acked-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Currently, the check that packages we build are indeed enabled is done
at the time a package is configured.
This can come quite late in the build process, and does not provide
direct knowledge of the real culprit for the incorrect dependency.
However, we can improve these two issues quite easily, albeit at the
expense of a very slightly more complicated make code.
First, the check can not be done at the time we define the package, i.e.
in the inner-generic-pacakge, because all its dependencies might have
not been parsed yet, so we can't yet know whether it is enabled or not
(because we can't match the package name of the dependency to its
Kconfig variable yet).
But then, we know we have all packages definitions after we scanned the
the bundled packages, kernel, bootloaders and toolchains, as well as the
br2-external tree (if any).
So, at this location, we iterate through the list of enabled packages,
and check that the packages they each depend on are indeed enabled.
This allows us to:
1- do the check very early, before any build action,
2- report on the exact offending package very easily.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Similarly to what has previously been done for the Hg download backend,
instruct bzr to generate the archive on stdout, so that we can generate
reproducible archives.
When instructing bzr to generate the output file by itself, it uses a
temporary file that is then fed to gzip, which in turn stores the
timestamp of that file in the generated archive, whereas when the output
is generated on stdout, there is no timestamp, so the archive is then
reproducible.
Bizarely enough, we can tell 'bazaar' not to generate a bazaar in the
archive. Cool, uh? ;-]
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
When hg directly creates the output file, the hash for that file changes
everytime.
However, if we just tell hg to output the archive on stdout and we do
the redirect to the file, then the archive is reproducible.
(The reason is that in the first case, a temporary file is created and
then compressed, and gzip is adding the filename and its timestamp in
the gzip header, while in the second case, there is no temporary file,
and thus no timestamp and thus it is reproducible.)
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Yegor Yefremov <yegorslists@googlemail.com>
Tested-by: Yegor Yefremov <yegorslists@googlemail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
The ldconfig handling in the main Makefile is utterly broken, as it
calls the build machine ldconfig to generate the ld.so.cache of the
target. Unfortunately, the format of the ld.so.cache is architecture
specific, and therefore the build machine ldconfig cannot be used
as-is.
This patch therefore simply drops using ldconfig entirely, and removes
/etc/ld.so.conf.d/ from the target skeleton. The idea is that all
libraries that should be loaded by the dynamic linker must be
installed in paths where the dynamic linker searches them by default
(typically /lib or /usr/lib).
This might potentially break a few packages, but the only way to know
is to actually stop handling ldconfig.
In order to be notified of such cases, we add a check in
target-finalize to verify that there is no /etc/ld.so.conf file as
well as no /etc/ld.so.conf.d directory.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Acked-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
PyXML is bitrotten and obsolete. You'll find the functionality it
previously provided is now included in the Python standard library.
So no need to keep this package in Buildroot anymore.
Signed-off-by: Yegor Yefremov <yegorslists@googlemail.com>
Acked-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
libusb-compat depends on libusb package, so we need to select
libusb package at the same time as libusb-compat to avoid an
unmet dependency.
Since 28f67899e5, the build
stop if a package build is trigged at Makefile level without
being selected at Config.in level.
This is the case here with BR2_PACKAGE_OPENOCD_USBPROG which
select BR2_PACKAGE_LIBUSB_COMPAT without selecting
BR2_PACKAGE_LIBUSB.
Fixes:
http://autobuild.buildroot.net/results/b4a/b4a8c54eed6bf75ab8ade0653953d19792155727/
Signed-off-by: Romain Naour <romain.naour@gmail.com>
Acked-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
BR2_PACKAGE_GST_PLUGINS_BAD_ZBAR select BR2_PACKAGE_ZBAR which
has several dependencies from libv4l.
Propagate these dependencies to avoid unmet dependencies while
selecting BR2_PACKAGE_GST_PLUGINS_BAD_ZBAR.
[Peter: show comment if toolchain dependencies aren't available]
Signed-off-by: Romain Naour <romain.naour@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
dillo was explicitly pulling in libjpeg instead of the virtual 'jpeg'
package, even though it also works with jpeg-turbo.
Reported-by: Romain Naour <romain.naour@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Compiled and tested on arm (beaglebone black), aarch64 (qemu),
i386 (qemu) and x86_64 (qemu).
[Peter: limit to supported archs, disable -Werror]
Signed-off-by: Sergio Prado <sergio.prado@e-labworks.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Update the raspberrypi and raspberrypi2 configs to use genimage directly
to build the image.
Update the documentation to reflect this, and drop the volatile rootfs
option since it doesn't make much sense and it's not easily integrated
with the genimage configurations.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Some host packages need a recent gcc version. Add symbols to Config.in
to specify the HOSTCC version. The values are passed through the
environment, and this environment is generated in a new support script.
Also update the documentation to mention the new symbols.
[Thomas: simplify by using only make logic instead of an external
shell script.]
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
libdvbpsi is a library used by vlc for decoding MPEG TS
[Thomas:
- add missing Config.in comment about the thread dependency.]
Signed-off-by: Pieterjan Camerlynck <pieterjan.camerlynck@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
[Thomas:
- fix commit title
- change libusb back to a mandatory dependency, since even though
there is a --disable-libusb option, it has no effect, and the code
fails to build due to missing libusb.h
- add hash file, noticed by Arnout
- remove host-perl dependency, noticed by Arnout
- rewrap Config.in help text, noticed by Arnout.]
Signed-off-by: Juha Rantanen <juha@codercoded.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
As reported by Yann E. MORIN [1], the latest CS PowerPC toolchain (2012.03)
requires a PPC CPU with SPE, which is basically two variants, 8540 (e500v1) and
8548 (e500v2) in Buildroot. All other PPC CPU can't use that toolchain.
Keep CS PowerPC 2011.03 as latest available version and add a second Kconfig
symbol for the CS PowerPC 2012.03 since it's verry specific to one CPU type
(e500v2).
Previously it was possible to select the CS 2012.03 with a powerpc 8540 (e500v1)
CPU but the sysroot provided by the toolchain only support the 8548 (e500v2)
variant. Allow to select CS 2012.03 only with BR2_powerpc_8548.
Also re-add the previous CS toolchain handling for pixman and liquid-dsp.
[1] http://lists.busybox.net/pipermail/buildroot/2015-December/148308.html
Reported-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Romain Naour <romain.naour@gmail.com>
Cc: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
hidapi uses iconv functions, which on uClibc without locale support is
provided by the external libiconv library. This commit adds the
necessary libiconv handling to make the hidapi package build on
!locale toolchains.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Commit 301e8ffbb2 (gst1-plugins-bad: update configure options) added a sub
option for openh264, but didn't propagate the toolchain dependencies or add
any configure options.
Fix this and while we're at it also add a help text for the option.
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
The OpenJPEG library is packaged in buildroot (version 1) and there is a
plugin "openjpeg" using it in gst1-plugins-bad. This commit add the option
for building this plugin. It provide a JPEG2000 encoder and decoder.
[Peter: use 'select' instead of 'depends on', sort alphabetically]
Signed-off-by: Vincent Dehors <vincent.dehors@openwide.fr>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
It conflicts with jsoncpp, bind probes for json/json.h first, but that
header is installed by jsoncpp, which is completely different from
json-c.
Since it's not clear who's correct here (there might be some other
json-c predecessor/version that installs there as well) and the same
functionality (stats channel) is provided by libxml2 as well, just
disable libjson support completely.
Fixes:
http://autobuild.buildroot.net/results/226/2262c9b46663ea7a45e128a5fd7ff30417c2c2a7/build-end.log
(indirectly, it was probing aboslute directories while searching for it)
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
As was suggested by the <pkg>_DEPENDENCIES variable, the audit support
in DBus requires both audit and libcap-ng. However, it didn't take
care of the fact that libcap-ng must be enabled in the configuration
to depend on it, causing some build failures with the newly added
check.
DBus configure.ac confirms that both packages are needed to enable
audit support, so we simply fix the condition to only be true when
both BR2_PACKAGE_AUDIT *and* BR2_PACKAGE_LIBCAP_NG are true.
Fixes:
http://autobuild.buildroot.org/results/239/23953cc66faecb65e9ebf1f6980924f823d736a2/
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Leave the LTS series for the latest stable version for libressl
compatibility.
Unfortunately this means threads are now required, but this shouldn't be
a problem for a fully-featured resolver.
Drop 0001-disable-tests.patch since it's no longer required, genrandom
isn't run unless the tests are called upon.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Following the introduction of the check that target packages must have
their Config.in option enabled, we started to see failures related to
netbsd-queue. Yann fixed the internal toolchain case in commit
e84fd04e88. This commit fixes the
similar issue, but for the external toolchain case.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Add option for nftables compat utilies and for bpf compiler/nfsynproxy
configuration tool.
Drop symlink trickery since it's not required any more.
Switch homepage to proper one and drop the kernel v2.4+ note since
that's not supported by buildroot anyway.
Drop most patches (except musl build) since they're upstream.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Currently, packages that need the kernel to have support for laodable
modules have two ways to require it:
- either the use the kernel-module infra, which does it automatically,
- or they do not use it, and they need to require it manually by
setting the corresponding Makefile variable; however, they must only
set it when they are actually enabled, which makes for a slightly
cumbersome and ugly code, like:
ifeq ($(BR2_PACKAGE_FOO),y)
LINUX_NEEDS_MODULES = y
endif
Introduce a new blind Kconfig option that packages can select to signify
they need kernel modules. That Kconfig option is then used to set the
Makefile variable.
It makes it cleaner:
- code is simpler (one Kconfig line instead of a Makefile if-block,
- this is handled at the Kconfig level, which is where we usually
handle such dependencies.
Packages will be updated in follow-up commits.
Reported-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
For large configurations, the execution time of
remove_transitive_deps() becomes really high, due to the number of
nested loops + the is_dep() function being recursive.
For an allyespackageconfig, the remove_extra_deps() function takes 334
seconds to execute, and the overall time to generate the .dot file is
6 minutes and 39 seconds. Here is a timing of the different
graph-depends steps and the overall execution time:
Getting dependencies: 42.5735 seconds
Turn deps into a dict: 0.0023 seconds
Remove extra deps: 334.1542 seconds
Get version: 22.4919 seconds
Generate .dot: 0.0197 seconds
real 6m39.289s
user 6m16.644s
sys 0m8.792s
By adding a very simple cache for the results of is_dep(), we bring
down the execution time of the "Remove extra deps" step from 334
seconds to just 4 seconds, reducing the overall execution time to 1
minutes and 10 seconds:
Getting dependencies: 42.9546 seconds
Turn deps into a dict: 0.0025 seconds
Remove extra deps: 4.9643 seconds
Get version: 22.1865 seconds
Generate .dot: 0.0207 seconds
real 1m10.201s
user 0m47.716s
sys 0m7.948s
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Tested-by: Gustavo Zacarias <gustavo.zacarias@free-electrons.com>
[yann.morin.1998@free.fr:
- rename is_dep() to is_dep_uncached(), keep existig code as-is
- add is_dep() as a cached-version of is_dep_uncached()
- use constructs more conform with 2to3
- use exceptions (EAFP) rather than check-before-use (LBYL) to be more
pythonist; that even decreases the duration yet a little bit more!
]
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
[Thomas:
- addition of 'depends on BR2_arm' as suggested by Yann.
- addition of a comment in the Config.in help text that says that
this library is a pure abomination.
- fix the hash, since apparently upstream changes the released
tarballs after they are published.
- fix license, it's GPLv2, not GPLv2+.]
Signed-off-by: Peter Seiderer <ps.report@gmx.net>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
- provide only libmongoose.a
- rework package description
[Peter: move under Libraries->Networking]
Signed-off-by: Davide Viti <zinosat@tiscali.it>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
The sparse_super feature is more efficient in terms of speed and
available space, so set it by default if supported, i.e. for revision 1.
This gives a huge speed gain for large resize2fs operations, especially
for expansion.
Signed-off-by: Benoît Thébaudeau <benoit@wsystem.com>
Acked-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Installing libraries in a subdirectory of /usr/lib leads to no end of
trouble. It requires either setting a RUN_PATH in the ELF files linked
with it or adding the path to ld.so.conf and calling ldconfig on the
target.
So to simplify things, put everything in /usr/lib instead of
/usr/lib/mysql
[Thomas:
- tweak commit title.
- also remove ld.so.conf handling in mysql.mk, since it is no longer
necessary.]
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
In Buildroot, the selection of a package from a Config.in level and
from a Makefile level are completely disconnected. This can lead to
issues where the build of a package is triggered at the Makefile level
due to the package being listed in another package <pkg>_DEPENDENCIES
variable, even if that package is not enabled in the configuration.
This has for example been the case recently with python-can having
'python' in its <pkg>_DEPENDENCIES, while python-can could be enabled
when Python 3.x is used, in which case the 'python' package should not
be built.
To detect such issues more easily, this patch adds a check in the
package infrastructure. When the build process of a package is being
triggered, we verify that the package is enabled in the
configuration. We do this check in the "configure" step, since this
step is the first common step between the normal download case and the
"local site method" / "package override" case.
[Thomas: adjust the error message as suggested by Yann, to take into
account the fact that the problem might not be in a direct reverse
dependency, but in something higher up in the tree of reverse
dependencies.]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
This patch updates the Cubieboard2 board defconfig to use newer u-boot
and linux versions, along with a few other improvements.
The other improvements were mostly backported from the recent Orange Pi
defconfig inclusion and are related to image generation.
linux-sunxi.org was used as a reference for both linux and u-boot
defconfig names.
In detail:
- Update linux to vanilla upstream -- currently 4.3.3 is the most
up-to-date. Although it lacks some features present only in the
linux-sunxi 3.4 branch, upstream support appears to be relatively mature
and is already being deployed by default by distributions such as Arch
Linux ARM.
- Update u-boot to vanilla upstream 2015.10. According to
linux-sunxi.org, upstream fully supports major functions (except NAND)
since 2015.07.
- Change image format to zImage and drop custom image generation script
in favour of genimage, as pointed out by reviewers in the Orange Pi
defconfig submission.
This was tested in a Cubieboard2 board with boot from mmc and it boots
fine to login prompt.
This has not been tested in a Cubieboard (A10) as I don't own any; the
version bumps probably apply to it although there are some differences
(lack of VFPv4 support, Cortex-A8 instead of Cortex-A7), so I have kept
the current Cubieboard defconfig and its scripts. This one has been only
build-tested.
Signed-off-by: Erico Nunes <nunes.erico@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Of host-gettext, we only build the tools. however some of those tools
have a --color option, which needs libxml2.
If the libxml2 development files are missing on the host, a bundled
subset of libxml2 is used, and all seems OK. But if they ar epresent,
then the host libxml2 is used. On some distros, lbxml2 is linked with
liblzma. And if we happend to _then_ build our host-liblzma, we may have
a conflict later when trying to run any of the host-gettext tools.
Always build host-gettext with our own host-libxml2 which is not linked
with liblzma.
Fixes https://bugs.busybox.net/show_bug.cgi?id=7886
Signed-off-by: Ignacy Gawędzki <ignacy.gawedzki@green-communications.fr>
[nicolas: added extended commit message]
Signed-off-by: Nicolas Cavallari <nicolas.cavallari@green-communications.fr>
[yann.morin.1998@free.fr: rebase; add comment; enhance commit log]
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Unionfs changed its meta directory from .unionfs to .unionfs-fuse with the
unionfs -> unionfs-fuse rename. The rename later got reverted everywhere
but the meta directory, so now unionfs doesn't find the whiteout files from
older releases.
Revert back to the pre-1.0 behaviour to fix this.
Patch merged upstream:
93c2f9bd8b
[Thomas: add reference to the upstream commit, now that the patch has
been merged.]
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Now uses the new mbedtls package, and requires zlib.
Rename the SSL option description to TLS, but keep the same symbol
name to avoid pointless legacy.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Add the mbed TLS library, formerly known as PolarSSL.
The 2.0+ version can live side-by-side with polarssl since it was
renamed, hence can be added with no conflict.
Use the Apache-2.0 license variant since it's somewhat more flexible,
the codebase is the same as the GPLv2 variant, just copyright
headers/license file changed.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The project moved to github, so point the homepage and download URL
there.
[Thomas:
- Remove comment "Switch to github helper on bump" since we clearly
don't want to switch to the github helper if they continue to
upload release tarballs.]
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The project moved to github, so point the homepage and download URL
there.
[Thomas:
- Remove comment "Switch to github helper on bump" since we clearly
don't want to switch to the github helper if they continue to
upload release tarballs.
- Adjust comment in the .hash file for clarity.]
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
make legal-info breaks when using an older u-boot version in local.mk
with OVERRIDE_SRCDIR, due to the reorganization of license files which
happened in u-boot v2013.10.
This issue had already been fixed in Buildroot for the regular use of
old u-boot versions (non-local.mk).
This patch adds the same fix to UBOOT_POST_RSYNC_HOOKS so that it also
covers the local.mk case.
Signed-off-by: Erico Nunes <nunes.erico@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The dependency on linux is automatically added by the kernel-module
infrastructure, so there is no need to explicit add it in the emlog
package.
Thanks to Arnout for spotting the issue.
Reported-by: Arnout Vandecappelle <arnout@mind.be>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Other packages will look for eigen3.pc to detect the presence of eigen3.
eigen3.pc is usually installed by eigen's cmake buildsystem, but we do a
manual install to not depend on host-cmake just to install header files.
But in doing so, we forgot to install the .pc file.
Manually sed the source .pc.in to generate the final .pc file.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
In Kconfig, when there is an item (like a comment) between a symbol and
its dependees, then the indentation is not in effect.
Move the symbol to the top of the file to guarantee the indentation in
menuconfig.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
In Kconfig, when there is an item (like a comment) between a symbol and
its dependees, then the indentation is not in effect.
Move the symbol to the top of the file to guarantee the indentation in
menuconfig.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
In Kconfig, when there is an item (like a comment) between a symbol and
its dependees, then the indentation is not in effect.
Move the symbol to the top of the file to guarantee the indentation in
menuconfig.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
In Kconfig, when there is an item (like a comment) between a symbol and
its dependees, then the indentation is not in effect.
Move the symbol to the top of the file to guarantee the indentation in
menuconfig.
In this case, it means the gstremaer1 plugins are not indented below the
main gstreamer1 prompt.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
In Kconfig, when there is an item (like a comment) between a symbol and
its dependees, then the indentation is not in effect.
Move the symbol to the top of the file to guarantee the indentation in
menuconfig.
In this case, it means the gstremaer plugins are not indented below
the main gstreamer prompt.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
In Kconfig, when there is an item (like a comment) between a symbol
and its dependees, then the indentation is not in effect.
Move the symbol to the top of the file to guarantee the indentation in
menuconfig.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
pinentry can use libsecret when available, so we should handle this
optional dependencies properly.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
pinentry configure.ac uses PKG_CHECK_MODULES() and also manual calls
to pkg-config, to detect the availability of some libraries, so we
need to depend on host-pkgconf.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Currently, we only support two levels of stach-smashing protection:
- entirely disabled,
- protect _all_ functions with -fstack-protector-all.
-fstack-protector-all tends to be far too aggressive and impacts
performance too much to be worth on a real product.
Add a choice that allows us to select between different levels of
stack-smashing protection:
- none
- basic (NEW)
- strong (NEW)
- all
The differences are documented in the GCC online documentation:
https://gcc.gnu.org/onlinedocs/gcc-4.9.2/gcc/Optimize-Options.html
Signed-off-by: Steven Noonan <steven@uplinklabs.net>
[yann.morin.1998@free.fr:
- rebase
- add legacy handling
- SSP-strong depends on gcc >= 4.9
- slightly simple ifeq-block in package/Makefile.in
- keep the comment in the choice; add a comment shen strong is not
available
- drop the defaults (only keep the legacy)
- update commit log
]
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
[Thomas:
- only show the choice if the toolchain has SSP support
- add details for the BR2_SSP_ALL option that it has a significant
performance impact.]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
All packages use BR2_TOOLCHAIN_HAS_SSP to determine whether they can
use SSP suppport or not, except stunnel. Therefore, this commit makes
stunnel consistent with other packages. This is also necessary in
preparation to the removal of BR2_ENABLE_SSP in favor of a choice
between various SSP options.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Currently, the VFP selection for ARM is a little bit muddy:
- some CPUs definitely do not have a VFP or NEON,
- some CPUs definitely do have a VFP or NEON,
- some CPUs may have a VFP or NEON.
However, we currently conflate the availability of the VFP/NEON with the
possibility to use them. Even is the user chooses a floating point
strategy with a 'lower' solution (i.e. VFPv2 when a VFPv3 exists, or not
using NEON when the CPU has it), some packages are still using the
CPU-defined HW availaibility rather thean the usr's selection.
Furthermore, for CPU that may have a VFP/NEON, there is no way for the
user to actually specify that the HW is indeed available; the user can
only specify the floating point strategy. This means that some packages
or some package versions, like nodejs for example, can not be properly
selected on some CPU cores, like Cortex-A9 which only may have a VFP.
Like we have an option to enable an optional NEON unit, add a similar
option to enable an optional VFP unit.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Stating whether to use the NEON extensions when it is optional in the
CPU really is completing the definition of the CPU we've just selected.
Move the ENABLE_NEON option just after the choice of the CPU variant,
and before any "software" option (ABI/VFP).
This will make sense in a moment, when we introduce a similar option for
enabling an optional VFP unit.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Chromium OS verified boot utilities.
Needed for signing kernel images and manipulating bootable
partitions on media intended for Chromebooks.
Signed-off-by: Alex Suykov <alex.suykov@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The nodejs options incorrectly started BR2_BR2_xxx. This change corrects
the name for 0.10.x releases to BR2_PACKAGE_NODEJS_0_10_X
Signed-off-by: Martin Bark <martin@barkynet.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Fix various messages displayed by these scripts:
- make start-stop-daemon quiet in order to avoid extra messages like
"stopped /usr/sbin/dhcpd (pid 174)" being output between the command
description and its result,
- fix the script names in the usage strings.
Signed-off-by: Benoît Thébaudeau <benoit@wsystem.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The dhcpd daemon does not require network interface names to be
specified on the command line.
>From dhcpd(8):
"The names of the network interfaces on which dhcpd should listen for
broadcasts may be specified on the command line. This should be done
on systems where dhcpd is unable to identify non-broadcast interfaces,
but should not be required on other systems. If no interface names
are specified on the command line dhcpd will identify all network
interfaces which are up, eliminating non-broadcast interfaces if
possible, and listen for DHCP broadcasts on each interface."
dhcpd exits with "Not configured to listen on any interfaces!" only if
no requested (those in INTERFACES, or all if empty) non-broadcast
interfaces matching the subnet declarations in dhcpd.conf are up.
Signed-off-by: Benoît Thébaudeau <benoit@wsystem.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Add an OPTIONS configuration variable in order to make it possible to
pass custom extra options to dhcpd. This keeps the systemd support
consistent with the SysV init script.
Signed-off-by: Benoît Thébaudeau <benoit.thebaudeau.dev@gmail.com>
Reviewed-by: "Maxime Hadjinlian" <maxime.hadjinlian@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Add an OPTIONS configuration variable in order to make it possible to
pass custom extra options to dhcpd.
Signed-off-by: Benoît Thébaudeau <benoit@wsystem.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The S80dhcp-relay init script has configuration variables like
INTERFACES whose contents have to be passed to the daemon. These
variables are initialized as empty strings, but some of them are not
allowed to be empty and there was no means of filling them apart from
creating a root FS overlay to overwrite these scripts.
This commit adds support for reading dhcrelay under /etc/default/ to
set these configuration variables.
[Thomas: adapt to patch only S80dhcp-relay, since S80dhcp-server has
already been changed by previous commits.]
Signed-off-by: Benoît Thébaudeau <benoit@wsystem.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
This commit does misc improvements to the S80dhcp-server init script:
- Use more variables: NAME, DAEMON, CFG_FILE
- Read the configuration file in /etc/default/ in a more usual way
(as done in S21rngd for example)
- Remove leftover dhcpd3 string in the stopping action.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
All daemons that read a file from /etc/default/ have it named just
after the name of daemon, without any extension. This commit fixes the
dhcp package to do the same.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Also add a hash file.
The extraction method had to be changed, since the WAD file for this
version is not distributed as a stand-alone file, but comes inside a
2-part DOS self-extracting zip archive.
Signed-off-by: Rodrigo Rebello <rprebello@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Even though libnspr uses a configure script, it does look at __GLIBC__
and other macros to determine whether certain C library features are
available or not. Such things fails completely with the musl C
library, since it doesn't define __GLIBC__.
To fix this, we borrow some logic from Alpine Linux, which consists in
explicitly specifying which features are available in the musl C
library.
Fixes:
http://autobuild.buildroot.org/results/ddd/dddd032232126f1e476e6aea2c6a32e9cd1ddfae/
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The autofs configure script does a number of weird things.
First, instead of using the default search path for AC_CHECK_PROGS(),
it overrides it its own search path, ignoring the PATH environment
variable. Due to this, autofs fails to find flex even though flex is
available in the PATH. Fortunately, the authors provided a --with-path
configure option which allows to override this search path.
In addition, the configure script is checking on the build machine
that a number of programs are available, while those programs are in
fact only needed on the target. The one causing build issues is
modprobe, because it may not necessarily be installed on build
machines, so we explicitly tell autofs that modprobe is located in
/sbin/modprobe. It might be necessary to provide additional values for
other programs, as we discover other problems.
Fixes:
http://autobuild.buildroot.org/results/447/4479382b2d4d762991cab2e93fd08ad6160c2921/
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
[Thomas:
- move from Libraries/Crypto to System tools in menuconfig
- add patch to fix build with uClibc
- use 'select' for openssl rather than a 'depends on'
- propagate trousers dependencies
- add <pkg>_LICENSE and <pkg>_LICENSEFILES
- link against libiconv when needed, fixing !locale builds
- explicitly disable pkcs11 support, since it is not handled by
tpm-tools.mk currently.]
Signed-off-by: Al West <al.west@v-nova.com>
Signed-off-by: Noé Rubinstein <nrubinstein@aldebaran.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
[Thomas:
- use a 'select' instead of a 'depends on' for openssl
- select libiconv when locale support is not available, otherwise the
build fails due to missing iconv.h
- disable on BR2_STATIC_LIBS configurations as it doesn't build. It
could be made to build by patching the trousers Makefile.
- add missing dependency on thread support in the toolchain
- add Config.in comment about the thread and dynamic library
dependencies.
- add missing <pkg>_LICENSE and <pkg>_LICENSE_FILES variables.]
Signed-off-by: Al West <al.west@v-nova.com>
Signed-off-by: Noé Rubinstein <nrubinstein@aldebaran.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Chocolate Doom is a set of conservative source ports for Doom, Heretic,
Hexen and Strife, with a philosophy of preserving the look, feel, and
bugs of the vanilla versions of each.
http://www.chocolate-doom.org
Signed-off-by: Rodrigo Rebello <rprebello@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
nodejs is only selected for mips hard float however the comment is
displayed for hard and soft float. Correct this by adding the missing
!BR2_MIPS_SOFT_FLOAT to the comment.
Signed-off-by: Martin Bark <martin@barkynet.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Remove 0.12.9 to rationalise the number of nodejs releases supported by
buildroot. Going forward buildroot will only support the latest release
of nodejs and the 0.10.x branch for armv5 support.
Signed-off-by: Martin Bark <martin@barkynet.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Also:
- Remove no longer needed patch (merged upstream).
- Adapt vnstat.mk to the new autotools-based build system.
- Include patch to improve gd library usability check + add
configure option to explicitly disable that check.
Signed-off-by: Rodrigo Rebello <rprebello@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
[Thomas: use "br" as the version suffix instead of "-br" so that the
final version string is "0.5-br" and not "0.5--br".]
Signed-off-by: Viacheslav Volkov <sv99@inbox.ru>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Sam Bobroff <sam.bobroff@au1.ibm.com>
[yann.morin.1998@free.fr: move the kconfig-package hunk to the
corresponding patch]
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Sam Bobroff <sam.bobroff@au1.ibm.com>
[yann.morin.1998@free.fr: move the kconfig-package hunk to the
corresponding patch]
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The previous patch introduced the new FOO_KCONFIG_DEFCONFIG variable
to specify a defconfig rule rather than a (def)config file.
Add this to the manual.
Also document the pre-existing FOO_KCONFIG_FILE for which the
explanations were missing altogether.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Sam Bobroff <sam.bobroff@au1.ibm.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
As of Linux kernel commit ea4d1a8 "powerpc/configs: Replace
pseries_le_defconfig with a Makefile target using merge_config" some
kconfig defconfigs (one so far: "pseries_le_defconfig") can be
generated using "make <defconfig>" and they do not exist on disk as a
single defconfig file.
This causes buildroot's build to fail for those configs with:
'arch/powerpc/configs/pseries_le_defconfig' for 'linux' does not exist
To handle this case and keep the makefile steps as simple as possible,
introduce a new package variable, *_KCONFIG_DEFCONFIG, that can be
used to indicate that a defconfig rule is being used, rather than a
file.
This allows the rule that generates the .config file to use either the
provided file (by copying) or a generated defconfig (by running "make
<defconfig>") as its starting point. merge_config.sh can then be run the
same way in either case, using .config as both input and output.
Note that merge_config.sh is now modifying .config in-place but this
is safe because it uses a temporary copy while making changes.
This patch introduces the new variable but does not make use of it.
Use of the new variable will be introduced in separate patches.
Signed-off-by: Sam Bobroff <sam.bobroff@au1.ibm.com>
[yann.morin.1998@free.fr:
- include all the other kconfig-package hunks into this one patch
- do not transform the 'echo "..."; exit 1' into $(error ...) calls
- use a make $(if)-block instead of a shell if-block to copy the file
or run make (like is done to check the kconfig snippets)
- misc typoes and rephrasing in the commit log
- do not force the _defconfig suffix in the infra (Thomas)
]
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
We already had a patch to allow us to explicitly pass the location of
the sane-config script, but wine's configure script uses several other
*-config scripts. This commit extends the wine patch and wine.mk to
explicitly pss the location of all *-config scripts that may be used
by wine.
The wine patch has been submitted upstream.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Due to a missing header inclusion, the build of ltrace of sparc fails
with the following error:
plt.c: In function 'sym2addr':
plt.c:33:12: error: dereferencing pointer to incomplete type
return sym->enter_addr;
^
plt.c:34:1: warning: control reaches end of non-void function [-Wreturn-type]
}
This commit fixes that by adding a patch to the ltrace code base.
Fixes:
http://autobuild.buildroot.org/results/55c/55ce618dbe1b2867e5738d90afb2eb67c19200e4/
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
A daemon which handles passwd, group and host lookups for running
programs and caches the results for the next query. This package is
intended to replace glibc nscd. Presently, glibc nscd is not installed
by Buildroot.
unscd depends on glibc because it relies on glibc function
__nss_disable_nscd.
nscd.conf is taken from glibc with unused configurations removed.
Cc: Yann E. MORIN <yann.morin.1998@free.fr>
Cc: Arnout Vandecappelle <arnout@mind.be>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Doug Kehn <rdkehn@yahoo.com>
Reviewed-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Installs /etc/nfsmount.conf on the target, mainly to be able to configure the
the NFS version that mount.nfs uses by default. Without this ability you are
likely to encounter mount errors when automounting directories from NFS
version 3 servers.
Signed-off-by: Jonathan Ben Avraham <yba@tkos.co.il>
Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Tested on i.MX6 using NFS mounts only. Not tested with DAS mounts as
of this commit.
[Thomas:
- remove the "# rpcbind" comments on the thread and mmu dependencies,
since we don't select rpcbind. The thread and mmu dependencies are
still needed though, since autofs uses pthread_*() functions and
fork().
- Remove "Requires a toolchain with native RPC." in the Config.in
help text and instead add a proper Config.in comment about the
thread and RPC dependency.
- Add patch to fix building with uClibc, taken from OpenEmbedded.]
Signed-off-by: Jonathan Ben Avraham <yba@tkos.co.il>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
[Thomas:
- update to the latest github version, which has a number of
fixes/improvements compared to the latest tag.
- add a patch to fix the build of the kernel module with recent
kernel versions (>= 3.19).
- use $(INSTALL) -D with a full destination path.
- rewrap Config.in help text, lines were too long.]
Signed-off-by: Joris Lijssens <joris.lijssens@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Fixes:
Make sure that all transferred files use only path names from inside the
transfer. This makes it impossible for a malicious sender to try to
make the receiver use an unsafe destination path for a transferred file,
such as a just-sent symlink.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
If RANLIB is set and we're trying to build binutils, binutils will pick
this up and potentially fail to build.
Signed-off-by: Tom Rini <trini@konsulko.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Add support for the Openbox Windows Manager.
[Thomas:
- don't mention MMU in the Config.in comment.
- wchar was forgotten in the Config.in comment.
- the dependency of the comment on thread should be "depends on
!BR2_TOOLCHAIN_HAS_THREADS" so that the comment is shown when
thread support is *not* available.
- add missing select of BR2_PACKAGE_XLIB_LIBXFT and
BR2_PACKAGE_XLIB_LIBXRENDER which are needed for pango to have xft
support, otherwise the build fails with "configure: error: Package
requirements (pango >= 1.8.0 pangoxft >= 1.8.0) were not met:"
- remove useless empty newline in the hash file
- add missing dependency on host-pkgconf, which is needed since
the configure.ac uses PKG_CHECK_MODULES.]
Signed-off-by: Ezequiel Garcia <ezequiel@vanguardiasur.com.ar>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
New release fixes a number of bugs, including some needed for talking
to modern AMI BMC firmware as shipped on some POWER8 systems.
Signed-off-by: Stewart Smith <stewart@linux.vnet.ibm.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Add package luvi version v2.3.5.
luvi extends LuaJIT with asynchronous I/O and several optional modules to run
Lua applications and build self-contained binaries.
Signed-off-by: Jörg Krause <joerg.krause@embedded.rocks>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Since a few releases, the pre-built musl external toolchain has added
an ARM EABIhf variant, built for ARMv5T. This commit allows this
additional external toolchain to be used.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Currently, the linux.mk logic for appended DTB image does the
appending of the DTB in place, directly at the end of the zImage using
a >> sign. This is incorrect because if you run "make linux-rebuild"
multiple times, you get the DTB appended over and over again to the
image.
Since keeping the 'zImage' or 'uImage' name for the appended DTB image
is not very clear, this commit moves to using the 'zImage.<dtb>' and
'uImage.<dtb>' format. This way, we can clearly distinguish the
original image from the appended one.
In addition, this naming scheme easily allows to generate *multiple*
appended DTB images: from one zImage, you can generate multiple
zImage.<dtb> for several DTBs, and then generate (if requested) the
corresponding uImage.<dtb>.
To achieve this, this commit:
- Changes the definition of LINUX_APPENDED_DTB to iterate over
$(KERNEL_DTS_NAME), and generate a zImage.<dtb> image for each of
them.
- Changes the addition of LINUX_APPENDED_DTB for appended uImage to
also iterate over $(KERNEL_DTS_NAME).
- Provide a different implementation of LINUX_INSTALL_IMAGE which
installs all the appended DTB images (but not the bare image)
- Remove the checks that verified that only one DT name is passed
when appended DTB is used, since we now support generating multiple
DT images.
Some of the tested configuration:
- Normal uImage with several DTBs
BR2_LINUX_KERNEL_DEFCONFIG="mvebu_v7"
BR2_LINUX_KERNEL_UIMAGE=y
BR2_LINUX_KERNEL_UIMAGE_LOADADDR="0x200000"
BR2_LINUX_KERNEL_DTS_SUPPORT=y
BR2_LINUX_KERNEL_INTREE_DTS_NAME="armada-xp-matrix armada-xp-gp armada-370-mirabox"
Contents of output/images/:
armada-370-mirabox.dtb armada-xp-gp.dtb armada-xp-matrix.dtb uImage
- Normal zImage with several DTBs
BR2_LINUX_KERNEL_DEFCONFIG="mvebu_v7"
BR2_LINUX_KERNEL_ZIMAGE=y
BR2_LINUX_KERNEL_DTS_SUPPORT=y
BR2_LINUX_KERNEL_INTREE_DTS_NAME="armada-xp-matrix armada-xp-gp armada-370-mirabox"
Contents of output/images:
armada-370-mirabox.dtb armada-xp-gp.dtb armada-xp-matrix.dtb zImage
- Appended uImage with several DTBs:
BR2_LINUX_KERNEL_DEFCONFIG="mvebu_v7"
BR2_LINUX_KERNEL_APPENDED_UIMAGE=y
BR2_LINUX_KERNEL_UIMAGE_LOADADDR="0x200000"
BR2_LINUX_KERNEL_INTREE_DTS_NAME="armada-xp-matrix armada-xp-gp armada-370-mirabox"
Contents of output/images:
uImage.armada-370-mirabox uImage.armada-xp-gp uImage.armada-xp-matrix
- Appended zImage with several DTBs:
BR2_LINUX_KERNEL_DEFCONFIG="mvebu_v7"
BR2_LINUX_KERNEL_APPENDED_ZIMAGE=y
BR2_LINUX_KERNEL_INTREE_DTS_NAME="armada-xp-matrix armada-xp-gp armada-370-mirabox"
Contents of output/images:
zImage.armada-370-mirabox zImage.armada-xp-gp zImage.armada-xp-matrix
In all configurations, the contents of output/target/boot/ was the
same if BR2_LINUX_KERNEL_INSTALL_TARGET=y.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
When you're using the "appended DTB" mode, the Device Tree blob gets
appended to your kernel image, so there is no point in installing both
the DTB and the kernel image to the images or target directories,
installing the kernel image itself is sufficient.
Therefore, this commit disables the definition of LINUX_INSTALL_DTB
when appended DTB is used.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Currently, the LINUX_INSTALL_DTB and LINUX_INSTALL_DTB_TARGET macros
are exactly the same, except for the target directory.
Similarly, LINUX_INSTALL_KERNEL_IMAGE_TO_TARGET and
LINUX_INSTALL_IMAGES_CMDS are copying the kernel image, just to a
different place (and with a different strategy).
As a preparation for future additions, this commit de-duplicate this
code:
- LINUX_INSTALL_DTB becomes a make macro that takes one argument: the
destination directory.
- LINUX_INSTALL_IMAGE is a new make macro that also takes on
argument: the destination directory.
Both macros are used by LINUX_INSTALL_KERNEL_IMAGE_TO_TARGET and
LINUX_INSTALL_IMAGES_CMDS to respectively install to the target
directory and the images directory.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Version 2.5 of wpa_supplicant introduces the config option
CONFIG_BUILD_WPA_CLIENT_SO to enable building wpa_client as shared library.
We need to add a patch from upstream to fix a runtime error with
libwpa_client.so:
Error relocating /usr/lib/libwpa_client.so: bin_clear_free: symbol not found
[Thomas: renumber patch.]
Cc: Martin Bark <martin@barkynet.com>
Signed-off-by: Jörg Krause <joerg.krause@embedded.rocks>
Reviewed-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
As discussed on the list move the last remaining package
in package/efl subdirectory to package/ directory.
- move the efl dependency to libefl.
- Set LIBEFL_VERSION with the version number directly.
Signed-off-by: Romain Naour <romain.naour@openwide.fr>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
As discussed on the list the two remaining packages in
package/efl subdirectory will be moved to package/
directory.
- Add the efl dependency to libelementary.
- Set LIBELEMENTARY_VERSION with the version number
directly.
Signed-off-by: Romain Naour <romain.naour@openwide.fr>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Move to baseline package/
It doesn't really require x11r7 infrastructure and is in fact needed by
libepoxy which can be made x11r7-less.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Bumping to brand new stable version 1.8
Upstreamed patches are dropped, sane patch is rebased.
Adding libpcap, pulseaudio and samba4 as soft dependencies.
sfnt2fon moved to its own subfolder and needs to be built in host-wine.
Signed-off-by: André Hentschel <nerv@dawncrow.de>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
[Thomas:
- replace patch 0001 fixing autoreconf by a simpler patch that simply
drops the -Wall and -Werror flags passed to automake.
- reformat the two patches using Git
- drop the "uclibc || glibc" dependency inherited from libv4l, since
libv4l has now been fixed to build on musl.
- drop the hook work arounding a build issue around man pages, and
replace by a patch that completely disables the build/installation
of documentation.
- change license to LGPLv2.1+, as noted in the COPYING file.
- drop --enable-shared=yes, since it is already passed by the
autotools-package infrastructure]
Signed-off-by: Viacheslav Volkov <sv99@inbox.ru>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
[Thomas:
- rename from comix_cursors to comix-cursors
- change prompt from comix to comix-cursors in order to match the
package name
- use <pkg>_STRIP_COMPONENTS instead of overriding the extract
commands.
- the license is GPLv3 according to the project website.]
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
[Thomas:
- rename from obsidian_cursors to obsidian-cursors
- change prompt from obsidian to obsidian-cursors in order to match
with the package name.]
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
[Thomas: change <pkg>_LICENSE to match the license identifier used for
other packages, such as 'liberation'.]
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Needed for these new Kodi addons:
kodi-screensaver-asterwave
kodi-screensaver-cpblobs
kodi-screensaver-matrixtrails
kodi-screensaver-planestate
kodi-visualisation-fountain
[Thomas:
- don't pass LIBSOIL_CFLAGS since this variable no longer exists.
- pass TARGET_CONFIGURE_OPTS on the right hand side of make for the
install steps, like was done for the build step.]
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
When a choice option is renamed, it is not possible to select the new
option. Instead, the default for the new option should be set in the
choice itself. So let's document this.
While we're at it, also reformat the whitespace in the example so a tab
is used at the appropriate place.
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Cc: Martin Bark <martin@barkynet.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
This commit adds two patches to the libv4l package, the first one
fixes the __off_t usage and the second one fixes locale-related
function usage. Those two patches allow libv4l to build fine against
musl, so we remove the dependency of glibc || uclibc.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
[Thomas:
- remove dependency on musl, since libv4l can now be built without
musl
- add missing Config.in comment for the toolchain dependencies
- add hash file.
- rework commit log.
- expand Config.in help text.
- depend on jpeg and not libjpeg, as noticed by Arnout.
- fix LICENCE_FILE -> LICENSE_FILES typo.]
Signed-off-by: Viacheslav Volkov <sv99@inbox.ru>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Reviewed-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Add new run-time dependencies:
PYTHON_SINGLEDISPATCH for Python 2.7.x
PYTHON_BACKPORTS_ABC for both Python versions
Signed-off-by: Yegor Yefremov <yegorslists@googlemail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
[Thomas:
- order packages alphabetically
- use tabs for indentation in Config.in
- add missing BR2_PACKAGE_QT5_JSCORE_AVAILABLE dependency for the
comment.]
Signed-off-by: Peter Seiderer <ps.report@gmx.net>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Since expedite hasn't been released since 1.7.10 release,
use efl-1.15 branch in the git tree.
Use the newly added libefl package wich provide a new version
of efl libraries.
Autoreconf the package since there is no configure script
in the git tree.
Signed-off-by: Romain Naour <romain.naour@openwide.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Use the newly added libefl package wich provide a new version
of efl libraries.
This new version needs libelementary dependency.
Update upstream url, add hash file and use xz archive.
Select png and jpeg image loader since enlightenment_start
fail at runtime if png and jpeg image loader are not
available in elf libraries.
Signed-off-by: Romain Naour <romain.naour@openwide.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Use the newly added libefl package wich provide a new version
of libeina, libevas, libecore and libedje.
Update the upstream url and add a hash file.
We need to add a host package to provide elm_prefs_cc the
host machine to cross-compile correctly libelementary
for the target. Otherwise, elm_prefs_cc for the
target is used on the host machine.
Since eet, eolian_gen and eldbus_codegen are installed in
HOST_DIR by host-efl package, help configure script to find
them.
Explicitly disable doxygen and elementary-test.
[Thomas: add explicit select BR2_PACKAGE_LIBEFL.]
Signed-off-by: Romain Naour <romain.naour@openwide.fr>
Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Add an config option to enable frame buffer support
in the efl libraries.
>From the README [1]:
This requires linux frame-buffer support, headers etc. This supports
basic frame-buffers like /dev/fb as well as input via /dev/input for
keyboards and mice in a basic way.
There is a bug eina_module_load().
>From [2]:
When running terminology, a message appears in eina_module_load with:
could not dlopen("/usr/lib/ecore_evas/engines/fb/v-1.15/module.so",
Error relocating /usr/lib/ecore_evas/engines/fb/v-1.15/module.so:
ecore_fb_ts_shutdown: symbol not found): RTLD_NOW
It seems like the EAPI macro has no effect...
A patch from Ross Vandegrift has been posted on enlightenment mailing
list [3], but it's not yet an upstream patch.
[1] https://git.enlightenment.org/core/efl.git/tree/README?id=v1.15.2#n521
[2] http://sourceforge.net/p/enlightenment/mailman/message/34493376
[3] http://sourceforge.net/p/enlightenment/mailman/message/34492801
Signed-off-by: Romain Naour <romain.naour@openwide.fr>
Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
WebP is a new image format that provides lossless and lossy
compression for images on the web. So enabling webp support in efl
libraries allow to loads images using WebP.
Also, it one of the "highly recommended" dependencies [1] according to
the README but disabling it doesn't need the
--enable-i-really-know-what-i-am-doing... option. That's why
BR2_PACKAGE_LIBEFL_WEBP is not added to
BR2_PACKAGE_LIBEFL_HAS_RECOMMENDED_CONFIG.
[1] https://git.enlightenment.org/core/efl.git/tree/README?id=v1.15.2#n486
Signed-off-by: Romain Naour <romain.naour@openwide.fr>
Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Harfbuzz allow to enable complex text shaping and layouting support in
efl libraries.
Also, it one of the "highly recommended" dependencies according to the
README but disabling it doesn't need the
--enable-i-really-know-what-i-am-doing... option. That's why harfbuzz
is not added to BR2_PACKAGE_LIBEFL_HAS_RECOMMENDED_CONFIG.
Signed-off-by: Romain Naour <romain.naour@openwide.fr>
Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Add the libefl package which contains an updated version of the following
libraries:
libecore, libedje, libeet, libfreet, libeina, libeio, libembryo, libthumb
and libevas. It also contains eldbus, ephysics, and escape, see [1].
The name libefl is transitional in order to bump smoothly all packages
that use efl libraries and remove the old package libecore, libevas...
The package libefl will be renamed to efl in a followup patch at the end
of the series.
For now, the bump to efl 1.15.x is not complete.
This allows to build at least a default configuration without X11 support
or graphics acceleration.
This support will be added by a follow up patches in the series.
Here is some notes about libefl dependencies:
- alsa:
At the end of the configure script, the summary tab will show that
alsa support is allways disabled even if alsa-utils has been build
before efl-core package.
"Ecore_Audio.....: yes (-alsa +pulseaudio +sndfile)"
This is intentional.
- util-linux:
libefl select util-linux libblkid since it's listed as an dependency
in the README [2].
- threads support:
Add a dependency on threads support since clearly efl libraries are
not even built without thread support [3].
- Curl:
Curl is listed as an dependency in the README because it's a runtime
dependency since efl 1.8 [4].
We need to regenerate the configure script to workaround a build issue with
eldbus-codegen:
CCLD bin/eldbus/eldbus-codegen
CXXLD bin/eolian_cxx/eolian_cxx
CCLD lib/ecore_x/ecore_x_vsync
CCLD lib/evas/common/libevas_op_blend_sse3.la
CCLD lib/evas/common/libevas_convert_rgb_32.la
CCLD lib/ecore_ipc/libecore_ipc.la
[...]/i686-ctng-linux-gnu/bin/ld: warning: libefl.so.1, needed by lib/ecore/.libs/libecore.so, not found (try using -rpath or -rpath-link)
lib/ecore/.libs/libecore.so: undefined reference to `efl_control_suspend_set'
lib/ecore/.libs/libecore.so: undefined reference to `efl_control_interface_get'
collect2: error: ld returned 1 exit status
Makefile:19135: recipe for target 'bin/eldbus/eldbus-codegen' failed
make[6]: *** [bin/eldbus/eldbus-codegen] Error 1
A dependency on libefl seems to be missing for eldbus but by
regenerating eldbus-codegen build correctly.
Reported upstream [6].
Also, gettextize is needed since *.po files were generated with
an "old" gettext version (0.18):
Making all in po
*** error: gettext infrastructure mismatch: using a Makefile.in.in from gettext version 0.18 but the autoconf macros are from gettext version 0.19
Makefile:149: recipe for target 'check-macro-version' failed
[1] See https://phab.enlightenment.org/phame/live/3/post/efl_1_8/
[2] https://git.enlightenment.org/core/efl.git/tree/README?id=v1.15.2#n478
[3] https://git.enlightenment.org/core/efl.git/tree/configure.ac#n5032
[4] https://git.enlightenment.org/core/efl.git/tree/README?id=v1.15.2#n453https://git.enlightenment.org/core/efl.git/commit/?id=2c1c6b9335e38c6e52b06829a95d9b58d780c99e
[5] http://mailman.uclibc-ng.org/pipermail/devel/2015-August/000432.html
[6] https://phab.enlightenment.org/T2718
[Thomas:
- make the BR2_PACKAGE_LIBEFL_RECOMMENDED_CONFIG hidden and rename it
to BR2_PACKAGE_LIBEFL_HAS_RECOMMENDED_CONFIG.
- rewrap Config.in help text where needed.]
Signed-off-by: Romain Naour <romain.naour@openwide.fr>
Tested-by: Vicente Bergas <vicencb@gmail.com>
Cc: Vicente Bergas <vicencb@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
sysvinit was not able to be built for arm64 architectures.
The package patch was changed according to the suggestion of
Thomas Petazzoni.
Signed-off-by: Joao Pinto <jpinto@synopsys.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Fixes the following valgrind error (tested on freescale imx6):
valgrind: Fatal error at startup: a function redirection
valgrind: which is mandatory for this platform-tool combination
valgrind: cannot be set up. Details of the redirection are:
valgrind:
valgrind: A must-be-redirected function
valgrind: whose name matches the pattern: strcmp
valgrind: in an object with soname matching: ld-linux-armhf.so.3
valgrind: was not found whilst processing
valgrind: symbols from the object with soname: ld-linux-armhf.so.3
valgrind:
valgrind: Possible fixes: (1, short term): install glibc's debuginfo
valgrind: package on this machine. (2, longer term): ask the packagers
valgrind: for your Linux distribution to please in future ship a non-
valgrind: stripped ld.so (or whatever the dynamic linker .so is called)
valgrind: that exports the above-named function using the standard
valgrind: calling conventions for this platform. The package you need
valgrind: to install for fix (1) is called
Note that we can still strip the dynamic linker, but only strip the
debugging symbols and nothing else.
[Thomas: slightly adjust comment in the code.]
Signed-off-by: Peter Seiderer <ps.report@gmx.net>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Fixes:
Named is potentially vulnerable to the OpenSSL vulnerabilty described in
CVE-2015-3193.
CVE-2015-8461 - Incorrect reference counting could result in an INSIST
failure if a socket error occurred while performing a lookup.
CVE-2015-8000 - Insufficient testing when parsing a message allowed
records with an incorrect class to be be accepted, triggering a REQUIRE
failure when those records were subsequently cached.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The previous incarnation was incomplete, it only applied one of the
Gentoo patches, hence it had corner cases.
Apply all 4 patches as pointed out by Mike on the mailing list.
Signed-off-by: Gustavo Zacarias <gustavo.zacarias@free-electrons.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The header file 'fcntl.h' was missing from 'src/common.h', which caused
the build with musl to fail with undeclared symbol errors like the
following:
dbaccess.c: In function ‘backupdb’:
dbaccess.c:268:25: error: ‘O_RDONLY’ undeclared (first use in this function)
if ((c = open(current, O_RDONLY)) == -1) {
^
This has already been fixed upstream, so the included patch must be
dropped on the next version bump.
Signed-off-by: Rodrigo Rebello <rprebello@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Also add new dependency on BR2_USE_WCHAR (version 1.14 uses mbstowcs())
and rewrap help text to 72 characters.
Signed-off-by: Rodrigo Rebello <rprebello@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Now that musl toolchains depend on netbsd-queue package, a
implementation of sys/queue.h will always be available in the
staging directory, so we can remove the patch that adds a local
sys/queue.h implementation.
Signed-off-by: Sergio Prado <sergio.prado@e-labworks.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Musl does not provide a 'sys/queue.h' implementation, and this has been
a problem for packages that depend on it.
So lets create a package called netbsd-queue that will install a
'sys/queue.h' in the staging directory when enabled, based on the
NetBSD implementation.
Musl toolchain and external toolchain packages will depend on this
package, so that 'sys/queue.h' will be always installed when compiling
with a musl based toolchain.
Tested on ARM and x86 in the following cases:
- Buildroot musl toolchain.
- External musl toolchain without 'sys/queue.h'.
- External musl toolchain with 'sys/queue.h'.
Fixes:
http://autobuild.buildroot.net/results/24bad2d06ab40024dacf136bee722072d587f84e
And possibly many others.
Signed-off-by: Sergio Prado <sergio.prado@e-labworks.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
[Thomas:
- pass -DBUILD_TOOLS_DOCS=OFF in <pkg>_CONF_OPTS
- use -DBUILD_SHARED_LIBS and -DBUILD_STATIC_LIBS to enable/disable
the creation of shared/static libraries depending on the
configuration.
- remove trailing spaces.]
Signed-off-by: Joris Lijssens <joris.lijssens@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Fixes:
CVE-2015-7540 - Remote DoS in Samba (AD) LDAP server
CVE-2015-3223 - Denial of service in Samba Active Directory server
CVE-2015-5252 - Insufficient symlink verification in smbd)
CVE-2015-5299 - Missing access control check in shadow copy code
CVE-2015-5296 - Samba client requesting encryption vulnerable to
downgrade attack
CVE-2015-8467 - Denial of service attack against Windows Active
Directory server
CVE-2015-5330 - Remote memory read in Samba LDAP server
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Commit 5538e476 (from 2013!) removed the use of the NAMEVER variable in
.stamp_patched, but it was still defined. So remove the definition now.
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
gnupg2 still tries to run test even if it tries to avoid it in
cross-compilation.
Really disable running the tests.
Since that requires a complete autoreconf, the existing patch against
configure is turned into a patch against the m4 macro.
since we autoreconf, we slightly patch configure.ac to not emit git
errors on stderr because it is not in a git tree.
[Thomas: rename patch 0000 to 0004, as suggested by Arnout.]
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Reviewed-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
If no system font provider is provided, then libass will fail to build
because it requires one by default. The error looks like this:
configure: error: Either DirectWrite (on Windows), CoreText (on OSX),
or Fontconfig(Linux, other) is required. If you really want to compile
withouta system font provider, add --disable-require-system-font-provider
(typo is from the actual message)
But, as the error messages says, we can allow the compilation without a
system font provider if we use the above configure option, so let's do
it.
Fixes:
http://autobuild.buildroot.net/results/3a4/3a4c07a0a54d5497fa8a4be2191856e286729637/http://autobuild.buildroot.org/results/d5a/d5a93b5a870de748259b097ec0b98b207cfaa303/
and many others...
Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
[yann.morin.1998@free.fr: move the --disable option in the !fontconfig
case]
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
[Thomas:
- rename package from libcairomm to cairomm in order to match
upstream name.
- put the package next to cairo in menuconfig
- add missing dependency on libsigc
- add missing depends on BR2_INSTALL_LIBSTDCPP
- fix license: it's LGPLv2+, not LGPLv2.]
Signed-off-by: James Knight <james.knight@rockwellcollins.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Add upstream patch to fix build failure of zeromq with latest
libsodium, since sodium_init() has a retval and is now declared to warn
on unused result, with zeromq treating warnings as errors.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The only files enabled by glesv1 support are in src/egl/opengles1/
Quoting src/egl/opengles1/Makefile.am:
"# These programs aren't intended to be included with the normal distro."
"# They're not too interesting but they're good for testing."
Most of the files present in this directory contain
"#include <X11/Xlib.h>"
which breaks a wayland-only build because the build system does not take
care of the x11 dependency here. Since these files are "not too
interesting" anyway we just disable glesv1 support.
Fixes
http://autobuild.buildroot.net/results/b3e/b3ed3ee174a3ddce84bf64039eac39d4e6e75b71/
[Thomas: adapt on top of master.]
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
This tool which is useful for scripts that create flash images with
multiple partitions. The host-parted package can do this too, but is
missing a number of features that the gptfdisk program has for dealing
with GPT.
The interactive gdisk and curses based sgdisk aren't built. Just the
scriptable tool sgdisk. The target package allows configuring which
tools are built, but this seem unnecessarily complex for the host
tool.
[Thomas: minor reformatting tweaks.]
Signed-off-by: Trent Piepho <tpiepho@kymetacorp.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
It's no longer required, SUBDIRS += doc is guarded by ENABLE_DOC in
Makefile.am and the only place where it's used regardless is in
dist-hook which isn't used by buildroot.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Add a hash file.
Change download location to pypi and remove a pre-configure
hook as the package now provides a stand-alone setup.py.
Signed-off-by: Yegor Yefremov <yegorslists@googlemail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Add a patch to fix a typo in the syscalls/prctl.c file. The
PR_GET_FP_MODE and PR_SET_FP_MODE macros are defined in
include/compat.h, but then syscalls/prctl.c tries to use GET_FP_MODE and
SET_FP_MODE. It's lacking the PR_ preffix, and this is causing build
failures like this one:
CC syscalls/prctl.o
syscalls/prctl.c:37:2: error: 'GET_FP_MODE' undeclared here (not in a
function)
GET_FP_MODE, SET_FP_MODE,
^
syscalls/prctl.c:37:15: error: 'SET_FP_MODE' undeclared here (not
in a function)
GET_FP_MODE, SET_FP_MODE,
^
This patch has been sent upstream.
Fixes:
http://autobuild.buildroot.net/results/12f/12f3144b5d99aa1872f6073f3aaac7f8a9c5cfdc/
Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Using this newly introduced symbol lets to simplify the dependency code.
This change also adds the missing architecture dependencies on the second
comment.
Signed-off-by: Samuel Martin <s.martin49@gmail.com>
Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Using this newly introduced symbol lets to simplify the dependency code.
This change also adds the missing architecture dependencies on the second
comment.
Signed-off-by: Samuel Martin <s.martin49@gmail.com>
Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
This new hidden symbol will allow simplifying the architecture dependencies
on package that depends on liburcu. These packages will be updated in follow-up
patches.
Signed-off-by: Samuel Martin <s.martin49@gmail.com>
Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
This selection will ensure that the correct host tools
will be build used for the kernel compression method used.
[Maxime: Select the compression opts in the kernel config too ]
Signed-off-by: Sagaert Johan <sagaert.johan@proximus.be>
Signed-off-by: Maxime Hadjinlian <maxime.hadjinlian@gmail.com>
Reviewed-by: "Yann E. MORIN" <yann.morin.1998 at free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The gawk debugger can optionally use readline for user input during
the debugging session (for the usual autocompletion and stuff).
Enable readline support when the readline package is enabled; let
./configure automatically find it. Forcibly disable readline support
when the readline package is disabled.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Peter Korsgaard <jacmet@uclibc.org>
Reviewed-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
When available, mpfr provides support for BIGNUM, which allows gawk to
work on arbitrarily-large numbers (hence the name).
Forcibly disable mpfr if the mpfr package is not enabled. Let
./configure find it automatically when it is enabled.
To be noted, the host-gawk need not have BIGNUM to build the target
variant with support for BIGNUM.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Peter Korsgaard <jacmet@uclibc.org>
Reviewed-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Without this patch libdb.so is not detected and
lib/perl5/site_perl/5.22.0/i586-linux/auto/DB_File/DB_File.so
is not linked against it:
Parsing config.in...
Looks Good.
Checking if your kit is complete...
Looks good
Warning (mostly harmless): No library found for -ldb
Generating a Unix-style Makefile
Writing Makefile for DB_File
Writing MYMETA.yml and MYMETA.json
>>> perl-db-file 1.835 Building
$ output/host/usr/bin/i586-buildroot-linux-uclibc-readelf -a output/target/usr/lib/perl5/site_perl/5.22.0/i586-linux/auto/DB_File/DB_File.so | grep NEEDED
0x00000001 (NEEDED) Shared library: [libc.so.1]
After applying this patch configure output will look like this:
Parsing config.in...
Looks Good.
Checking if your kit is complete...
Looks good
Generating a Unix-style Makefile
Writing Makefile for DB_File
Writing MYMETA.yml and MYMETA.json
>>> perl-db-file 1.835 Building
and the resulting library is correctly linked against libdb:
$ output/host/usr/bin/i586-buildroot-linux-uclibc-readelf -a output/target/usr/lib/perl5/site_perl/5.22.0/i586-linux/auto/DB_File/DB_File.so | grep NEEDED
0x00000001 (NEEDED) Shared library: [libdb-5.3.so]
0x00000001 (NEEDED) Shared library: [libc.so.1]
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Patch #4 was applied upstream, however a new bug was introduced which breaks
building nodejs without OpenSSL support. We replace the applied patch with a
new patch to fix:
error: ‘ALLOW_INSECURE_SERVER_DHPARAM’ was not declared in this scope
ALLOW_INSECURE_SERVER_DHPARAM = true;
Patch #4 status: Sent upstream [1]
[1] https://github.com/nodejs/node/pull/4201
Signed-off-by: Jörg Krause <joerg.krause@embedded.rocks>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Some users may provide custom download commands with spaces in their
arguments, like so:
BR2_HG="hg --config foo.bar='some space-separated value'"
However, the way we currently call those commands does not account
for the extra quotes, and each space-separated part of the command is
interpreted as separate arguments.
Fix that by calling 'eval' on the commands.
Because of the eval, we must further quote our own arguments, to avoid
the eval further splitting them in case there are spaces (even though
we do not support paths with spaces, better be clean from the onset to
avoid breakage in the future).
We change all the wrappers to use a wrapper-function, even those with
a single call, so they all look alike.
Note that we do not single-quote some of the variables, like ${verbose}
because it can be empty and we really do not want to generate an
empty-string argument. That's not a problem, as ${verbose} would not
normally contain space-separated values (it could get set to something
like '-q -v' but in that case we'd still want two arguments, so that's
fine).
Reported-by: Thomas De Schampheleire <patrickdepinguin@gmail.com>
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Thomas De Schampheleire <patrickdepinguin@gmail.com>
Reviewed-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
Tested-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
m2crypto provides a --openssl option to specify the location of the
OpenSSL library, when not installed in /usr. However, this option does
not apply to the standard "build" command normally called by the
python-package infrastructure, but only to the "build_ext" command.
This already required to override the default python-package build
commands for this package. Moreover, this the last bump to version
0.22.5, things got even more complicated since calling just
"build_ext" does not work, and additional quirks are needed.
This commit proposes to get away with this by relying on the default
python-package behavior, and simply hardcoding the OpenSSL location by
patching the setup.py script in a post-patch hook.
This issue has also been reported upstream at
https://gitlab.com/m2crypto/m2crypto/issues/89.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Otherwise the openssl support is basically unused.
net-snmp provides a stripped-down openssl implementation that can be
used to enable tsm/DTLSUDP/TLSTCP but given it's security track record
it's best to rely on the external one, it also saves space.
usm is the user validation module, it's default on, however when passing
--with-security-modules we must keep it otherwise it won't be.
Signed-off-by: Gustavo Zacarias <gustavo.zacarias@free-electrons.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
This new host-package provide edje_cc, embryo_cc and eet binaries
that will be used by the upcomming libefl packages which will
contain the new version of efl libraries.
Signed-off-by: Romain Naour <romain.naour@openwide.fr>
Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
As for expedite package, there is no advantage for efl related
packages to share the same version number anymore
(except for efl and libelementary).
Also, we usually do not have a sub-directory for a family of related
packages which doen't share the same version number, so move
libevas-generic-loaders to package directory.
Libevas-generic-loaders appear now in "Libraries" -> "Graphics" in
the Kconfig menu.
Signed-off-by: Romain Naour <romain.naour@openwide.fr>
Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
There is no advantage for efl related packages to share the same version
number anymore (except for Efl and Elementary).
Here are the version number used for the 1.15 stable release:
EFL 1.15.2
Elementary 1.15.2
Emotion Generic Players 1.15.0
Evas Generic Loaders 1.15.0
Python-EFL 1.15.0
Also, we usually do not have a sub-directory for a family of related
packages which don't share the same version number, so move expedite
to the package directory. Expedite now appears in the
"Graphic libraries and applications (graphic/text)" in the Kconfig menu.
In a followup patch, expedite will be downloaded directly from the 1.15
branch in the git repository since there is no new tarball release after
1.7.0.
Signed-off-by: Romain Naour <romain.naour@openwide.fr>
Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
To fix issues with compiling with GCC 5.x, switch to utilizing the
Debian patches for cross compiling. Debian has been maintaining
patches for the ustr package since it appears that the ustr project
hasn't been active since 2008.
The Debian patches switch from a makefile based build to autotools
based build. This also means that the patch that was being carried
for cross compiling is no longer needed.
ustr is a dependency of libsemanage, which now builds fine again with
these patches applied.
Fixes:
http://autobuild.buildroot.org/results/f46/f46430c45973dfe39976453f5a91a555ed7bfa9a/http://autobuild.buildroot.org/results/e98/e98c82130efaaed29682cf31c1a754278ff3e547/
...and many more
Signed-off-by: Ryan Barnett <ryanbarnett3@gmail.com>
[yann.morin.1998@free.fr: build the shared lib at build time, not
install time]
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
CC: Arnout Vandecappelle <arnout@mind.be>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
A series file for quilt has a valid syntax of:
fixes/autoconf.diff -p1
fixes/doc-html-local-css.diff -p1
fixes/gnu-inline.diff -p1
However, with the current way that a series file is handled, it will
error out because the -p1 is tried as a file. This is because in the
for loop that iterates the files, we only look for comment lines. Then
each line is used within a bash for loop which uses spaces a
delimiter. In order to fix this, we should only use the string that
comes before a space in the series file.
Note that the format allows for any arbitrary depth to the -pN field.
But since we'll have only one package with -pN fields, and all will be
-p1, we for now always assume -p1. This will have to be fixed whenever
we get a package with other values.
Signed-off-by: Ryan Barnett <ryanbarnett3@gmail.com>
[yann.morin.1998@free.fr: expand comment about the format of a series
file and how we interpret it]
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
CC: Arnout Vandecappelle <arnout@mind.be>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Coroutine2 is a new (C++14) library added in boost 1.59.0. We also add
coroutine2 to the '--without-libraries' configuration flag for the host
variant.
Build successfully tested with Arago ARMv5 2011.09 - a gcc v4.5.3 toolchain.
Signed-off-by: Jörg Krause <joerg.krause@embedded.rocks>
Reviewed-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Tested-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
- removed autoreconf and two patches applied upstream
b20eeffadb785e4a90e0
- removed clamuko configure option
- disabled fanotify support because UCLIBC_HAS_FTS is disabled
https://github.com/vrtadmin/clamav-devel/blob/master/README
"Support for on-access scanning using Clamuko/Dazuko has been replaced
with fanotify."
- added host-pkgconf dependency, used by configure
- added optional dependency to pcre
- added sha256 hash
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Recently the default skeleton was changed to have /run as a separate
tmpfs instead of a symlink to /tmp. /run is not world-writable, but
mysqld tries to write its PID file as user mysql. Therefore, it fails
to start.
To fix, create /run/mysql and give it to user mysql.
While we're at it, change the paths to /run instead of /var/run.
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
In buildroot, libtirpc is patched to remove authdes_create functions.
As a result, compilation of tests that use these functions, fails.
A previous fix was implemented in commit
8f1c4c49a2, but simply disabled linking with
libtirpc entirely. This broke usage of ltp-testsuite on targets where the
toolchain does not have RPC support and libtirpc is mandatory.
Instead, disable only the problematic tests, leaving ltp-testsuite usable
with libtirpc.
Cc: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
These are completely historic from the initial commit (d106a63d) and
completely unused.
Two separate builds with/without give nothing relevant with:
$ diff -u pango.cv/config.log pango-1.38.1/config.log|grep ^+
Same applies to removals with:
$ diff -u pango.cv/config.log pango-1.38.1/config.log|grep ^-
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
These are completely historic from the initial commit (3a0a8791) and
completely unused.
Two separate builds with/without give nothing relevant with:
$ diff -u cairo.cv/config.log cairo-1.14.4/config.log|grep ^+
Same applies to removals with:
$ diff -u cairo.cv/config.log cairo-1.14.4/config.log|grep ^-
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
These are completely historic from the initial commit (810184bb) and
completely unused.
Two separate builds with/without give nothing with:
$ diff -u atk.cv/config.log atk-2.18.0/config.log|grep ^+
And all removals with:
$ diff -u atk.cv/config.log atk-2.18.0/config.log|grep ^-
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
No functional change as it only uses $CC / mkdir / install, but add it for
consistency and in case future versions need it.
Suggested-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Some unit tests depend on objects from src/common/.
This patch makes sure to points to the location of the non-PIC object files.
Otherwise, in case of static only build, the PIC object are not built, so
the link will fail.
Signed-off-by: Samuel Martin <s.martin49@gmail.com>
Acked-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
This patch, backported from upstream, prevent the build from failing due
to:
[...]
CCLD lttng-consumerd
../../../src/common/.libs/libcommon.a(runas.o): In function `run_as_worker':
/tmp/br/build/lttng-tools-2.7.0/src/common/runas.c:325: undefined reference to `pthread_setname_np'
collect2: error: ld returned 1 exit status
Makefile:475: recipe for target 'lttng-consumerd' failed
[...]
Signed-off-by: Samuel Martin <s.martin49@gmail.com>
Acked-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
- Bump version to 2.6.4
- Update the hash value
- Remove 0002-Makefile-make-curl-config-path-configurable.patch
- This patch is now part of upstream:
f89158760d
Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Since version 3.1.3 eudev doesn't provide internal libgudev,
so this package can now be used as an ordinary stand-alone
package.
[Peter: add BR2_PACKAGE_HAS_UDEV dependency]
Signed-off-by: Yegor Yefremov <yegorslists@googlemail.com>
Acked-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Reviewed-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
The build step for the target was missing, causing the compilation to happen
during the staging install step. Add a dedicated build step like we do for
the host build.
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
The host and target build steps were mixed between eachother. Reorder them
so we have the target steps before the host ones.
No functional change, but helps readability.
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
The boost build is very verbose (11K+ lines even when no sub options are
enabled). While this can be handy for debugging, make is less verbose when
'make -s' is used, similar to how we do it for autotools.
With this, make -s boost outputs less than 100 lines.
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Fixes:
CVE-2015-8126 - incorrect implementation of png_set_PLTE() that uses
png_ptr not info_ptr, that left png_set_PLTE() open to this vuln.
(fix in previous release was incomplete)
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Specify that the drive image file format is raw to avoid warnings and
restrictions.
Also switch to -drive syntax for all configs.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
These don't autodetect consistently and are process rather than file
capabilities, so not very useful in the buildroot context.
Otherwise we'd have to unconditionally pull host-libcap (or fix the
detection, but again, not useful so there's no need).
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Experimental SPDY support was dropped so drop the configure option.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
If host arch = target arch and liblua is in the host the buildsystem
will pick it up and try to use it since it passes basic build tests.
Forcibly disable it, since it causes no build failure, rather runtime
failures because said liblua is not present on the target.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Fixes:
CVE-2015-3193 - BN_mod_exp may produce incorrect results on x86_64
CVE-2015-3194 - Certificate verify crash with missing PSS parameter
CVE-2015-3195 - X509_ATTRIBUTE memory leak
Enable IDEA as well since otherwise the build breaks (always great
upstream) - it's no longer patent encumbered.
[Peter: correct sha256]
Signed-off-by: Gustavo Zacarias <gustavo.zacarias@free-electrons.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Make ACS (Automatic Channel Selection) support in hostapd optional.
There's a clash of standard vs. propietary solutions, hence when hostapd
has builtin ACS support (standard) and it's enabled (channel=0 in the
config) this will preclude the propietary driver from using ACS (it
won't work at all).
See:
http://e2e.ti.com/support/wireless_connectivity/f/307/p/465333/1669270
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
0002-unzip.patch was added in 69516e0 to fix a segmentation fault in the
gunzip applet. However, it introduced a new issue that made the unzipping
of some files fail.
Add an upstream patch that fixes this new issue.
Fixes#8501.
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Cc: Jason Rush <rush0033@hotmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
gawk has an optional dependency on mpfr (and thus gmp) and readline,
and will probe for them. If they are present, they are used; if they
are missing, that's not an error. mpfr (and gmp) is used for "BIGNUM"
support on gawk; readline is used by the gawk debugger.
However, mpfr (bringing gmp) are also host-packages in Buildroot, but in
the standard build order (i.e. a plain 'make'), they are built after
gawk. Ditto readline (from ncurses).
If the user has the development files for gmp and mpfr, then gawk is
linked to them. Ditto readline.
Now, further on in the build, we build gmp and mpfr (for gcci or guile),
so we install them in the host dir. Ditto readline (for gdb, ncurses
itself and a few other packages...)
But because we forcibly set an RPATH tag on all our host binaries, our
host gawk will now dynamically link with our versions, when it was in
fact built against the host ones.
This did not seem to cause any harm so far, but is far from ideal.
Since we do not really need BIGNUM or the debugger in our host gawk, we
just forcibly disable them and configure gawk without readline or mpfr
(there's no switch for gmp, but it's not a direct dependency, it comes
just with mpfr).
[Adjust comment as suggested by Thomas/Yann]
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Peter Korsgaard <jacmet@uclibc.org>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Despite the comment saying so, the trailing '/' in the host directory is
not removed. Note however that it is properly removed from extracted
RPATH tags.
This is not visible when the host directory is our default $(O)/host
location, but breaks for user-supplied external host directory, when
the user leaves a trailing slash in the path.
Fix that.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Peter Korsgaard <jacmet@uclibc.org>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
The 3.4 series has been promoted to stable.
Handle autodeps more concisely (idn, p11-kit, zlib).
libtasn1 is now mandatory, since otherwise gnutls uses the bundled
version it makes no sense to try that because of target duplication.
Disable tpm support since we've got no trousers package.
Disable libdane support since we've got no dane package.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The http-parser repository has been transfered from joyent to nodejs.
Bump version to 2.6.0.
Signed-off-by: Renaud AUBIN <root@renaud.io>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
- Bump version to 2.4.43
- Use md5 and sha1 upstream provided hashes. This combination is
stronger than a sha256 hash.
- Switch to an http download site to avoid problems with firewalls
blocking the ftp.
Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Name Service Switch (NSS) module that allows your LDAP server to provide
user account, group, host name, alias, netgroup, and basically any other
information that you would normally get from /etc flat files or NIS. It
also provides a Pluggable Authentication Module (PAM) to do
authentication to an LDAP server.
[Thomas:
- bump to version 0.9.6
- use --disable-<foo> rather than --enable-<foo>=no.
- fix license information: there is no LICENSE file, it is named
COPYING.]
Signed-off-by: Doug Kehn <rdkehn@yahoo.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Building conntrack-tools with kernel headers >= 4.2 + musl fails due to
a well-known symbol clash that occurs when userspace and kernel headers
are included simultaneously (see [1], question 7, for details).
In the case of conntrack-tools, the inclusion of both 'netinet/in.h' and
'linux/in.h' occurs inside the C helper files (src/helpers/*.c)
indirectly via e.g. 'libnetfilter_conntrack/libnetfilter_conntrack.h',
which itself includes 'netinet/in.h', and 'linux/netfilter.h', which
includes 'linux/in.h' in kernel headers >= 4.2.
The approach to solving this type of conflict with musl usually involves
removing the inclusion of kernel headers or refactoring the code so as
to avoid the mentioned simultaneous inclusion. This is unfortunately
non-trivial in the case of conntrack-tools since the clashing headers
get included indirectly by headers that are strictly necessary (because
of definitions used in some helper callbacks).
Work around the issue by defining __GLIBC__ when musl is used. This
eliminates the conflicts as the kernel headers avoid redefining certain
symbols when they see __GLIBC__ defined (linux/libc-compat.h). Note that
other glibc-compatible libraries, like uClibc, already do that
internally.
Fixes:
http://autobuild.buildroot.net/results/66e/66ec247fa0fc385bef8d2084c65bf5cad3a8e8ca/http://autobuild.buildroot.net/results/624/624a0d48decd819eb58cbb3c58ee904b87ebfb21/
[1] http://wiki.musl-libc.org/wiki/FAQ
Signed-off-by: Rodrigo Rebello <rprebello@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Fixes#8491
glib/valgrind.h contains inline asm not compatible with thumb1, so build it
in arm mode:
CC libglib_2_0_la-gstringchunk.lo
/tmp/ccSVEXME.s: Assembler messages:
/tmp/ccSVEXME.s:587: Error: shifts in CMP/MOV instructions are only supported
in unified syntax -- `mov r12,r12,ror#3'
/tmp/ccSVEXME.s:587: Error: shifts in CMP/MOV instructions are only supported
in unified syntax -- `mov r12,r12,ror#13'
/tmp/ccSVEXME.s:588: Error: shifts in CMP/MOV instructions are only supported
in unified syntax -- `mov r12,r12,ror#29'
/tmp/ccSVEXME.s:588: Error: shifts in CMP/MOV instructions are only supported
in unified syntax -- `mov r12,r12,ror#19'
/tmp/ccSVEXME.s:589: Error: lo register required -- `orr r10,r10,r10'
Makefile:2087: recipe for target 'libglib_2_0_la-gslice.lo' failed
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Dumping our 176164 variables can take quite some time (~12s here). What
takes the most time is sorting the variables (~9s), followed by the
parsing of our Makefiles (~3s), with the actual printing in the noise.
However, sometimes only one or a few variables are needed. For example,
one may want to retrieve the Linux build dir from a post-build hook (to
get the Linux' actual .config after our fixups and check for various
features).
Add the possibility to only dump the variables listed in $(VAR) which
must be passed as a make argument, like so:
$ make -s printvars VARS="LINUX_DIR TOPDIR O"
LINUX_DIR=/home/ymorin/dev/buildroot/O/build/linux-4.3 ($(BUILD_DIR)/$(LINUX_BASE_NAME))
O=/home/ymorin/dev/buildroot/O/. (/home/ymorin/dev/buildroot/O/.)
TOPDIR=/home/ymorin/dev/buildroot/buildroot (/home/ymorin/dev/buildroot/buildroot)
It is also possible to use make-appterns, like:
$ make -s printvars VARS="BUSYBOX_%"
This is much faster (the time is just about the time it takes to parse
our Makefiles, 3s here) and easier to parse.
[Thomas: improve comment above the printvars target.]
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
When specifying BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION, a user may want to
specify the SHA of a reference different than a branch or tag.
For instance, Gerrit stores the patchsets under refs/changes/xx/xxx, and
Github stores the pull requests under refs/pull/xxx/head.
When cloning a repository with --bare, you don't fetch these references.
This patch uses --mirror for a full clone, in order to give the user
access to all references of the Git repository.
Signed-off-by: Vivien Didelot <vivien.didelot@savoirfairelinux.com>
Reviewed-by: "Maxime Hadjinlian" <maxime.hadjinlian@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
This package contains some simple command line tools to help using Linux
spidev devices.
https://github.com/cpb-/spi-tools
The included version is based in a sha1 and not a tagged version as the
current master branch contains autotools support for build but there is
no tagged version with autotools support yet.
The only other quirk with the recipe is related to the VERSION define
which is normally obtained in build time via git for this package, but
that would fail within Buildroot as the package build is normally not
performed inside a git repository.
To work around that, I have added a hook which will substitute change
the VERSION to match that of the Buildroot package.
I have tested this package in an ARM target with a custom SPI device.
Signed-off-by: Erico Nunes <nunes.erico@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
In 785fef10 xattr support was disabled, probably because the old version
did require the xattr package to be present to support it.
In a409d76e xattr support was made optional via (lib)attr, however the
squashfs package does in fact include all of the required bits to
support xattr without the need for the attr package.
So enable xattr support by default for both the host and target
variants.
Signed-off-by: Gustavo Zacarias <gustavo.zacarias@free-electrons.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
- Bump version to 3.1.16
- Update the hash value
- Remove upstreamed patches:
0001-configure.ac-remove-manual-compiler-check-with-AC_TR.patch
0003-Makefile.in-add-LDFLAGS-to-linking-stage.patch
- Tweak patches for the new version:
0004-Makefile.in-replace-IROOT-by-DESTDIR.patch
0005-Makefile.in-make-install-fix.patch
Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
When the target uses a merged /usr setup, gdbserver will only report
paths in /lib to the remote gdb, which in turn will only look for
libraries in staging/lib and never in staging/usr/lib.
So. the merged (or non-merged) /usr setup must be replicated in the
staging.
The best solution where to do so is in the skeleton package, since it
is guaranteed to come before any package that installs things in the
staging, and even before the (internal or external) toolchain as well.
Reported-by: Pieterjan Camerlynck <pieterjan.camerlynck@gmail.com>
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Pieterjan Camerlynck <pieterjan.camerlynck@gmail.com>
Cc: Maxime Hadjinlian <maxime.hadjinlian@gmail.com>
Cc: Peter Korsgaard <jacmet@uclibc.org>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Reviewed-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
currently, we only make the merged symlinks or non-merged mkdirs in the
target directory. This is fine, as long as one does not run gdb.
However, as soon as one wants to run gdbserver on the target,
gdb will only search for libraries in /lib in the sysroot.
In preparation for a patch to fix that, make the symlink-or-mkdir macro
a function that takes as parameter the base directory where to create
symlinks or mkdir in.
Move the function declarations out of the custom/non-custom skeleton
conditional block, so they are always available.
Reported-by: Pieterjan Camerlynck <pieterjan.camerlynck@gmail.com>
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Pieterjan Camerlynck <pieterjan.camerlynck@gmail.com>
Cc: Maxime Hadjinlian <maxime.hadjinlian@gmail.com>
Cc: Peter Korsgaard <jacmet@uclibc.org>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Reviewed-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Add a force-reload operation that restarts minidlnad and makes it
rebuild its database. This is what Debian does, and this is useful when
media_dir is changed in the configuration file or when inotify can not
detect changes inside the media directories (e.g. in case of a mount).
Signed-off-by: Benoît Thébaudeau <benoit@wsystem.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
As noticed by Peter Korsgaard, all the links to links.html are broken,
they should point to support.html instead.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
GPSD has the ability to support KPPS. Its enablement is determined
primarily from the existence of `sys/timepps.h`. This file is provided
from the pps-tools package. Adjusting GPSD's Makefile to depend on the
pps-tools package if a developer has included pps-tools as part of a
build.
Signed-off-by: James Knight <james.knight@rockwellcollins.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The ./configure script is not up-to-date with what is in configure.ac,
which prevents --with-ssh from working properly.
So, we autoreconfigure autossh, which fixes the issue.
Note however that this is not really an autotools package, since it only
uses autoconf and not automake. However, making it a generic pacakge is
not trivial, since autossh really wants config.h as generated by
./configure. Using the autotools infra in this case helps us easily
autoreconfiguring without to manual depend on all the autotools-relates
host packages.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
This patch bumps the swig package to the current major release, the
comment about the CMake fix was also updated to reflect the version
bump. Swig 3.0.7 was positively tested using this defconfig:
BR2_TOOLCHAIN_BUILDROOT_INET_RPC=y
BR2_TOOLCHAIN_BUILDROOT_LOCALE=y
BR2_TOOLCHAIN_BUILDROOT_CXX=y
BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_EUDEV=y
BR2_PACKAGE_KODI=y
BR2_PACKAGE_KODI_LIBCEC=y
BR2_PACKAGE_TRACE_CMD=y
BR2_PACKAGE_MESA3D=y
BR2_PACKAGE_MESA3D_DRI_DRIVER_I965=y
BR2_PACKAGE_XORG7=y
BR2_PACKAGE_LIBFTDI1=y
BR2_PACKAGE_LIBFTDI1_PYTHON_BINDINGS=y
BR2_PACKAGE_LIBSEMANAGE=y
BR2_PACKAGE_GNURADIO=y
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
When building with musl, the build fails with a conflicting type
qualifier error.
This is because musl defines stdout and stderr as const pointers
and RaspiVidYUV.c adds an extern declaration as normal pointers.
Since this declaration already comes in on the header (stdio.h),
there is no need to add an extern declaration, so removes it.
Fixes:
http://autobuild.buildroot.net/results/27bd6f32cecdb4e7c95247c1feaf2732c1d8e3fa
Signed-off-by: Sergio Prado <sergio.prado@e-labworks.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
This patch bumps to version 4.2.1.102 and updates
accompaining patches accordingly.
* Removed upstreamed patch 0003-fix-parallel-install.patch
* Adding patch to fix eglib linking option (upstreamed here
https://github.com/mono/mono/pull/1971 but not included in
this release)
* Adding patch to remove compilation of unit-tests
Signed-off-by: Angelo Compagnucci <angelo.compagnucci@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Fixes:
http://autobuild.buildroot.net/results/c34/c343c68d3e0dae4a7ecd59693298a9622bc56662/
Is not yet supported and the compilation will fail like this:
[ 4%] Building C object library/CMakeFiles/polarssl.dir/bignum.c.o
/tmp/ccLDxl9G.s: Assembler messages:
/tmp/ccLDxl9G.s:92: Error: opcode not supported on this processor:
mips32r6 (mips32r6) `multu $13,$14'
/tmp/ccLDxl9G.s:93: Error: opcode not supported on this processor:
mips32r6 (mips32r6) `addi $10,$10,4'
/tmp/ccLDxl9G.s:94: Error: opcode not supported on this processor:
mips32r6 (mips32r6) `mflo $14'
/tmp/ccLDxl9G.s:95: Error: opcode not supported on this processor:
mips32r6 (mips32r6) `mfhi $9'
[...]
Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
0001-Fix-Mark-MI-and-Config-string-declarations-as-extern.patch
is gone with commit 4965f956f3ef47388fb4a1b2f8f504abfe31afe7.
Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
This got removed with the addition of the new website, but it is used by the
manual so it no longer builds.
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
gstreamer can optionally build against libxml2, so account for it in
the dependencies.
Functionality seems somewhat reduced without it, an example being
misdetecting subtitle (.srt) files as subrip mime type instead of
subtitle itself.
A failed scenario would be:
$ gst-typefind-0.10 some.srt
some.srt - application/x-subrip
When built with libxml2:
$ gst-typefind-0.10 some.srt
some.srt - application/x-subtitle
This doesn't affect gstreamer 1.x since it dropped any use of libxml2.
Signed-off-by: Gustavo Zacarias <gustavo.zacarias@free-electrons.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
It is general safe to use -fPIC for all architectures.
-fpic breaks sparc64 compile.
Generally gcc just optimize position independent code
for m68k, powerpc and sparc with -fpic.
The size differences are minimal, f.e. for powerpc:
text data bss dec hex filename
235983 5336 684 242003 3b153 output/target/usr/lib/libjim.0.75
236255 8456 684 245395 3be93 output/target/usr/lib/libjim.so.0.75
So instead of keeping special settings for sparc64 it would be better
to always use -fPIC in general.
Runtime tested on Qemu ARM, MIPS, PPC and SPARC64.
Fixes:
http://autobuild.buildroot.net/results/98f391ad13f22828c022f185c0166daabdb4c1ad/
[Peter: tweak comment as suggested by Thomas]
Signed-off-by: Waldemar Brodkorb <wbx@openadk.org>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
With OVERRIDE_SRCDIR we don't apply any of the qt5base patches, but the
custom specs files are needed to be able to build - So install these in the
configure step instead of having them as a patch.
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Acked-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Static linking userspace programs such as MPD against libaudiofile fails if
FLAC is available, because libaudiofile is linked against FLAC, but this isn't
expressed in the pkg-config file:
[..]
arm-buildroot-linux-uclibcgnueabi/sysroot/usr/lib/libaudiofile.a(FLAC.o): In function `FLACDecoder::reset2()':
FLAC.cpp:(.text+0x58): undefined reference to `FLAC__stream_decoder_seek_absolute'
/home/buildroot/build/instance-1/output/host/usr/arm-buildroot-linux-uclibcgnueabi/sysroot/usr/lib/libaudiofile.a(FLAC.o): In function `FLACEncoder::sync2()':
FLAC.cpp:(.text+0x88): undefined reference to `FLAC__stream_encoder_finish'
/home/buildroot/build/instance-1/output/host/usr/arm-buildroot-linux-uclibcgnueabi/sysroot/usr/lib/libaudiofile.a(FLAC.o): In function `FLACDecoder::~FLACDecoder()':
FLAC.cpp:(.text+0xc4): undefined reference to `FLAC__stream_decoder_delete'
/home/buildroot/build/instance-1/output/host/usr/arm-buildroot-linux-uclibcgnueabi/sysroot/usr/lib/libaudiofile.a(FLAC.o): In function `FLACEncoder::~FLACEncoder()':
FLAC.cpp:(.text+0x164): undefined reference to `FLAC__stream_encoder_delete'
/home/buildroot/build/instance-1/output/host/usr/arm-buildroot-linux-uclibcgnueabi/sysroot/usr/lib/libaudiofile.a(FLAC.o): In function `FLACDecoder::runPull()':
[..]
The Libs.private field is specifically designed for such usage:
>From pkg-config documentation:
Libs.private:
This line should list any private libraries in use. Private
libraries are libraries which are not exposed through your
library, but are needed in the case of static linking.
Therefore, this patch adds a reference to FLAC as well as to lcov in the
Libs.private field of the pkg-config file.
Patch status: Pending
https://github.com/mpruett/audiofile/pull/26
Fixes:
http://autobuild.buildroot.net/results/e95/e959e703a8db81032da27bece295c121e53d830d/http://autobuild.buildroot.net/results/10b/10bd00209f098e8782016355cb2f46d1d3e7d3a3/
Signed-off-by: Jörg Krause <joerg.krause@embedded.rocks>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
When cross-compiling it assumes there's none, however that's not true.
Specify the usual /dev/urandom for this usage, it's used for random key
generation on startup.
Signed-off-by: Gustavo Zacarias <gustavo.zacarias@free-electrons.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
autossh looks for 'ssh' in the PATH, which may not exist on a build
machine.
Fixes a private autobuild failure (soon to go public).
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Peter Korsgaard <jacmet@uclibc.org>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
The iodine build system correctly appends the needed CFLAGS/LDFLAGS to what
was passed in the environment, so use TARGET_CONFIGURE_OPTS to ensure our
flags are passed.
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
- Bump version to 4.3.0
- Update hash value
- Add new mandatory blkid dependency
- Remove upstreamed patch:
0001-xfsprogs-replaces-static-with-static-libtool-libs.patch
- Add new patch which has been sent upstream:
0001-mdrestore-do-not-do-dynamic-linking-of-libtool-libra.patch
Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Adjust patch 0001 to trivial changes.
Adjust patch 0007 to remove new DES things.
Add patch 0008 directly from upstream to fix a late problem in the
1.0.1 release.
Signed-off-by: Peter Rosin <peda@axentia.se>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Upstream has reworked its build system, so it now supports PREFIX and 'make
install', so use those.
Notice that the tools have also gained a sunxi- prefix, so use that as well
when installing the target variant.
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The problem looks like this:
CCLD ntpd
../compat/.libs/libcompat.a(libcompat_la-arc4random.o): In function
`arc4random':
/br/output/build/openntpd-5.7p4/compat/arc4random.c:183: undefined
reference to `pthread_mutex_lock'
/br/output/build/openntpd-5.7p4/compat/arc4random.c:185: undefined
reference to `pthread_mutex_unlock'
../compat/.libs/libcompat.a(libcompat_la-arc4random.o): In function
`arc4random_buf':
/br/output/build/openntpd-5.7p4/compat/arc4random.c:192: undefined
reference to `pthread_mutex_lock'
/br/output/build/openntpd-5.7p4/compat/arc4random.c:194: undefined
reference to `pthread_mutex_unlock'
/br/output/build/openntpd-5.7p4/compat/arc4random.c:194: undefined
reference to `pthread_mutex_unlock'
collect2: error: ld returned 1 exit status
Adding -pthread to CFLAGS fixes the problem.
Fixes:
http://autobuild.buildroot.net/results/b12/b120b6da87ae4eb355d06f2fd8f4fc8050410897/
[Peter: unconditionally pass in CFLAGS, add comment about why]
Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
This patch introduces a new buildroot website based on a modern flat
layout inspired by material design.
Each page of the old website is converted to the new css/layout, the
big bump is in main page which is completely rewritten. Content of
the old website is copied more or less verbatim, planning to add more
content in the future.
Signed-off-by: Angelo Compagnucci <angelo.compagnucci@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
The explanations given in the commit log of 7d6c79 (Compile static
versions of gcc libraries) do not explain why we have to provide custom
configure commands, instead of just adding --enable-static to the
configure options.
Add a comment in the code that explains why that is so. Add a pointer to
the ML archives with the explanations, too.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Cc: Jérôme Pouiller <jezz@sysmic.org>
Acked-by: Jérôme Pouiller <jezz@sysmic.org>
Acked-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The host configure commands are not indented the same way as the target
ones. Besides, there are leading spaces (instead of TABs) on one line.
Replicate the same indentation as used for the target commands.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Acked-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
HOSTCC_VERSION is no longer used since gcc switched to the package
infrastructure in e236fe481. It was in fact no longer needed since we
dropped support for gcc 4.3.
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
The arm_foundationv8_defconfig currently doesn't build because it uses
an external AArch64 toolchain that has been updated (Linaro toolchain)
and is now based on gcc 5.x. Unfortunately, Linux 3.13 is too old to
be built with gcc 5.x.
As a minimal fix to make this defconfig build again, we switch to use
the internal toolchain backend. At the time this defconfig was
introduced, there was no support for AArch64 in the internal toolchain
backend, but now that it is available, there is no reason to not use
it. This makes the defconfig also more consistent with the other
defconfigs.
Obviously, the kernel headers used to build the toolchain are set to
the fixed version 3.13, so that they match the kernel being used.
While we're at it, the readme.txt file corresponding to this defconfig
is updated. Runtime testing has been performed with the latest version
of the ARM Foundation model.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
- Fixes:
- CVE-2015-5312 - Another entity expansion issue
- CVE-2015-7497 - Avoid an heap buffer overflow in xmlDictComputeFastQKey
- CVE-2015-7500 - Fix memory access error due to incorrect entities boundaries
- CVE-2015-8242 - Buffer overead with HTML parser in push mode
- Incorporates upstreamed patches as well, which also fixed:
- CVE-2015-1819 - The xmlreader in libxml allows remote attackers to cause
a denial of service (memory consumption) via crafted XML data, related
to an XML Entity Expansion (XEE) attack.
- CVE-2015-7941 - out-of-bounds memory access.
- CVE-2015-7942 - heap-buffer-overflow in xmlParseConditionalSections.
- CVE-2015-8035 - DoS via crafted xz file.
Signed-off-by: Danomi Manchego <danomimanchego123@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Enable dhcp networking for qemu configs considered good enough for
testing purposes.
This excludes:
arm_nuri - emulation doesn't seem 100% correct for networking.
ppc_virtex_ml507 - doesn't emulate networking.
sh4eb - emulation doesn't seem 100% correct for the NIC.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Reviewed-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Capitalize comments in a consistent way.
Cleanup redundant entries.
Drop global patch dir for sparc ss10 since it's not required any more.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Reviewed-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
This feature was already discuted here:
http://lists.busybox.net/pipermail/buildroot/2015-April/125419.html
Personally, I have a big central directory with all tarballs I have
ever downloaded. I use this feature to isolate tarballs necessary to
build a configuration:
make project_defconfig
make BR2_DL_DIR=/tmp/mirror-project BR2_PRIMARY_SITE=file:///home/user/dl source
tar -C /tmp -czvf mirror-project.tgz mirror-project
Signed-off-by: Jérôme Pouiller <jezz@sysmic.org>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The sdl libpth autodetection gets confused in case a host
version is present. Overwrite libpth autodection for the
target build dependent on BR2_PACKAGE_LIBPTHSEM_COMPAT and
use pth-config from staging directory.
Fixes [1]:
checking for pthreads... no
checking for pth-config... /usr/bin/pth-config
checking pth... yes
[...]
./src/SDL.c:33:17: fatal error: pth.h: No such file or directory
#include <pth.h>
[1] http://autobuild.buildroot.net/results/733/73330e51b3c099d179004db0b9522ac13358b8f7
Signed-off-by: Peter Seiderer <ps.report@gmx.net>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
With the new version, documentation is not generated part of the main
build. This removes the need to alter the Makefile to remove the invoke
on the `chrony.txt` target. Cleanup also explicitly disabling seccomp
(since its experimental) and tomcrypt (Buildroot does not have
libtomcrypt at this time).
[Thomas: use tabs for indentation in the definition of
CHRONY_CONF_OPTS.]
Signed-off-by: James Knight <james.knight@rockwellcollins.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The host variant was added by us (DATACOM) because it is useful to
build some third-party packages that we use in our firmware. We humbly
request you to keep it alive.
Declare that it requires host-perl-module-build.
Signed-off-by: Carlos Santos <casantos@datacom.ind.br>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
This is the only package where we select directfb. Change it to use depends
on to match what we do for the X11 backend.
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
If system tools are selected, the host's lib/ directory may shadow
libraries from the system which are configured differently and do not
have all of the symbols required by the system tool.
Since buildroot now uses rpath everywhere, LD_LIBRARY_PATH should not
be necessary anyways.
Signed-off-by: Ben Boeckel <mathstuf@gmail.com>
Acked-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Acked-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
When we build our host programs, and they depend on a host library we
also build, we want to ensure that program actually uses that library at
runtime, and not the one from the system.
We currently ensure that in two ways:
- we add a RPATH tag that points to our host library directory,
- we export LD_LIBRARY_PATH to point to that same directory.
With these two in place, we're pretty much confident that our host
libraries will be used by our host programs.
However, it turns our that not all the host programs we build end up
with an RPATH tag:
- some packages do not use our $(HOST_LDFLAGS)
- some packages' build system are oblivious to those LDFLAGS
In this case, there are two situations:
- the program is not linked to one of our host libraries: it in fact
does not need an RPATH tag [0]
- the program actually uses one of our host libraries: in that case it
should have had an RPATH tag pointing to the host directory.
For libraries, they only need an RPATH if they depend on another library
that is not installed in the standard library path. However, any system
library will already be in the standard library path, and any library we
install ourselves is in $(HOST_DIR)/usr/lib so already in RPATH.
We add a new support script that checks that all ELF executables have
a proper DT_RPATH (or DT_RUNPATH) tag when they link to our host
libraries, and reports those file that are missing an RPATH. If a file
missing an RPATH is an executable, the script aborts; if only libraries
are are missing an RPATH, the script does not abort.
[0] Except if it were to dlopen() it, of course, but the only program
I'm aware of that does that is openssl, and it has a correct RPATH tag.
[Peter: reworded as suggested by Arnout, fix HOT_DIR typo in comment]
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Cc: Arnout Vandecappelle <arnout@mind.be>
Cc: Peter Korsgaard <jacmet@uclibc.org>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Fixes:
CVE-2015-1819 - The xmlreader in libxml allows remote attackers to cause
a denial of service (memory consumption) via crafted XML data, related
to an XML Entity Expansion (XEE) attack.
CVE-2015-7941 - out-of-bounds memory access.
CVE-2015-7942 - heap-buffer-overflow in xmlParseConditionalSections.
CVE-2015-8035 - DoS via crafted xz file.
All patches upstream.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Configuring the network interface with DHCP via
/etc/network/interfaces generally does not work when NFS booting. The
DHCP configuration will initially bring the interface down and system
then hangs at that point as the root filesystem is no longer
accessable.
This adds a script to be run via a pre-up line in
/etc/network/interfaces. It checks for a NFS root filesystem and if
the interface to be configured is used for access to the NFS server.
If this is the case, then it returns a failure code so that ifup will
not configure the interface. This works for DHCP and another config
methods (static, bootp, etc.). This system does detect if the
interface to be configured isn't the one used for NFS and doesn't skip
it when that is the case.
NFS filesystems that aren't the root fs aren't considered.
Fixes bug #4790.
Signed-off-by: Trent Piepho <tpiepho@kymetacorp.com>
Reviewed-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Created a readme.txt for the Intel Galileo Gen 1/2 that describes,
* How to build for the Intel Galileo Gen 1/2
* How to access the console on the Intel Galileo Gen 1/2
Signed-off-by: Ray Kinsella <ray.kinsella@intel.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
In all other package the condition for BR2_PACKAGE_LIBGUDEV selection is
BR2_INIT_SYSTEMD. Do the same for udisks.
Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Make the case of adding libgudev as a dependency more consistent with all
other dependency packages. The <pkg>_DEPENDENCIES variable sets the build
order which is conceptually independent of the underlying reason for that
dependency.
Also, remove the comments in hidapi.mk and udisks.mk. These comments explain
why BR2_PACKAGE_LIBGUDEV is selected, so the comments in corresponding
Config.in files are enough.
Cc: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Board support package includes:
* Toplevel build root configuration
* Github based 3.8.7 Kernel
* Upstream 3.8.7
* Linux 3.8.7 Kernel Driver Patches
* Linux 3.8.7 configuration
* Grub configuration
* Init Script to load modules
* genimage config to create sdcard image.
[Thomas: simplify post-image script since there is now only one call
to genimage.]
Signed-off-by: Ray Kinsella <ray.kinsella@intel.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Packages built with automake use a `py-compile` helper to byte-compile
Python source files. This script uses the "py_compile" module from the
standard library. In turn, the compile() function in the "py_compile"
module invokes the cache_from_source() function provided by importlib.
This commit adds a new patch named "020-importlib-no-pep3147.patch"
that changes cache_from_source() and source_from_cache() in importlib
to get rid of the "__pycache__" directory.
This commit fixes the following import error in kmod when the module
is built for Python 3:
>>> from kmod import Kmod
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: cannot import name 'Kmod'
Moreover, this commit removes two patches that are no longer necessary
since modifying cache_from_source() and source_from_cache() disables
PEP 3147 for the standard library and distutils / setuptools.
* 004-old-stdlib-cache.patch
* 016-distutils-no-pep3147.patch
Signed-off-by: Christophe Vu-Brugier <cvubrugier@fastmail.fm>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Tested-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
/etc/inputrc is configuration file for readline. However, until now, it
was provided by skeleton. This patch install /etc/inputrc from readline
recipe.
Signed-off-by: Jérôme Pouiller <jezz@sysmic.org>
Acked-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Instead of using a patch to specify the architecture variant for
sparc, use some Boost configure variables.
[Thomas: reword commit log.]
Signed-off-by: Waldemar Brodkorb <wbx@openadk.org>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
/etc/issue is managed with BR2_TARGET_GENERIC_ISSUE. In case
BR2_TARGET_GENERIC_ISSUE is set (which is default), /etc/issue
is overwritten. In case BR2_TARGET_GENERIC_ISSUE is not set,
we don't want /etc/issue exist.
Finaly, remove /etc/issue from skeleton.
Signed-off-by: Jérôme Pouiller <jezz@sysmic.org>
Reviewed-by: "Maxime Hadjinlian" <maxime.hadjinlian@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
[Thomas:
- use BR2_INIT_SYSTEMD instead of BR2_PACKAGE_SYSTEMD for the
libgudev handling. This is consistent with what we do in libmbim,
modem-manager and network-manager. Only udisks is diverging from
this by using BR2_PACKAGE_SYSTEMD.
- Fix the license info: it is GPLv3 *or* BSD-3c *or* the specific
HIDAPI license. Added LICENSE-orig.txt to LICENSE_FILES.]
Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Currently Qt 5.5 only detects and build the eglfs_mali device
integration if the commercial Mali driver package from ARM is used.
This patch makes sure the Qt configure script also test for the
sunxi-mali driver package. It also removes the dependency of
the proprietary fbdev_window.h.
This issue is set to be fixed in upcoming Qt 5.6:
https://codereview.qt-project.org/#/c/125837/
[Thomas: renumber patch from 0010 to 0009.]
Signed-off-by: Daniel Nyström <daniel.nystrom@timeterminal.se>
Tested-by: Ariel D'Alessandro <ariel@vanguardiasur.com.ar>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Tested-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
[Thomas: build tested before the patch, verified that indeed the
eglfs-mali plugin doesn't get built, and that after the patch it gets
built as expected.]
To build libcurl, we need to override LD_LIBRARY and force it to a sane
value, otherwise libcurl is confused when target == host (see a51ce319,
libcurl: fix configure with openssl when target == host).
That is currently OK, since we always set LD_LIBRARY_PATH to a non-empty
value.
However, we're soon to stop setting it at all.
So, if the user has an empty (or no) LD_LIBRARY_PATH in his envirnment,
we'd end up adding the current working directory to LD_LIBRARY_PATH (as
an empty entry in a colon-separated list is most probably interpreted as
meaning the current working directory, which we do know can cause issue,
and which we expressely check against in support/dependencies/dependencies.sh
Fix that by only using an existing LD_LIBRARY_PATH if it is not empty.
Also use a Makefile construct as it is easier to read than a shell one
(we can do that, as all variables from the environment are available as
make variables).
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Peter Korsgaard <jacmet@uclibc.org>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Reviewed-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
To build the host-mysql, we only build parts of the source, just the
strictly minimum required to then cross-compile it.
However, the host variables (conf opts, build and install cmds) are only
defined when the mysql server is enabled in the configuration.
So, this breaks:
make defconfig; make host-mysql
Even though it is not much use to have that partial host-mysql on its
own, it is still very interesting to be able to build it, if at least
for testing changes in the core package infrastructures (like new step
hooks or the likes...)
Move the definitions of the host variant out of the server conditional
block.
[Peter: add comment about what we build and why as suggested by Arnout]
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Cc: Marcelo Gutiérrez(UTN/FRH) <kuyurix@gmail.com>
Acked-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
mkfs.axfs uses zlib, but does not have an rpath to our host dir.
That's because:
- we're not passing our host CFLAGS or LDFLAGS
- it is forcibly setting CFLAGS in the Makefile, overriding anything
specified by the user
- it is not using LDFLAGS at all
Add two patches so that CFLAGS and LDFLAGS from the environment are
used if present.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Acked-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Tested-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
When a series file exists, we should use every file mentioned in it,
not just the ones ending with .patch or .diff. Also, there's no need
to uncompress anything if it's mentioned in a series file (the tools
that manipulate series files don't support compressed patches).
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Cc: Doug Kehn <rdkehn@yahoo.com>
Tested-by: Doug Kehn <rdkehn@yahoo.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Building with -mtune=e6500 led to build failures in glibc (probably in
uclibc as well) because gcc was built for a 32-bit target even though
the target tuple is powerpc64-*. This lead to a mix of 32-bit and
64-bit support and build errors like:
fatal error: gnu/lib-names-32.h: No such file or directory
The root cause is that the configure script is not handling e6500
correctly, because of stupid typo in the condition.
Change has been submitted upstream.
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Cc: Alvaro Gamez <alvaro.gamez@hazent.com>
Cc: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
ARC is supported by uClibc-ng, cleanup old code.
Signed-off-by: Waldemar Brodkorb <wbx@uclibc-ng.org>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Fixes a fanotify include bug where old kernels (2.6.x) fail to build.
Fixes recent failures on x86 with Linux 4.3.x kernel regarding
network sockets. Includes the removed patch.
Signed-off-by: Waldemar Brodkorb <wbx@uclibc-ng.org>
Acked-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
By default, with the original patch bootcmd runs sdboot before loading uEnv.txt.
Consequently, if the user change modeboot, the user's defined content is updated
too late.
By loading uEnv.txt before 'run $modeboot' the correct boot mode is used instead
of default mode.
Signed-off-by: Gwenhael Goavec-Merou <gwenhael.goavec-merou@trabucayre.com>
Acked-By: Jan Viktorin <viktorin@rehivetech.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Fixes:
CVE-2015-8023 - authentication bypass vulnerability in the eap-mschapv2
plugin that was caused by insufficient verification of the internal
state when handling EAP-MSCHAPv2 Success messages received by the
client.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Changelog (see [1] for details):
- Added support when active framebuffer is not starting at offset 0
- Fixed broken re-ordering of colors, rgba to argb
- Fixed broken path for man page
[1] http://fbgrab.monells.se
Signed-off-by: Peter Seiderer <ps.report@gmx.net>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Adjust pulseview/libsigrok for the gcc >= 4.8 dependency.
Line wrap comment depends for pulseview.
Drop redundant libsigrok depend on comment for libsigrok++.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Fixes:
png_set_PLTE/png_get_PLTE functions failed to check for
an out-of-range palette when reading or writing PNG files with a bit_depth
less than 8.
CVE not yet assigned.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
The configure script uses pkg-config to find the optional dependencies, so
make sure it is present:
checking pkg-config is at least version 0.9.0... yes
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
With SD, USB and PCI-E variants available for several chips,
bus-prefixed entries get mis-aligned badly.
Rearrange them to use bus-suffixes instead.
Config options and the files themselves remain bus-prefixed.
Signed-off-by: Alex Suykov <alex.suykov@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Firmware blobs for Marvell WiFi-Ex 8797, 8887, 8897 were already
there in linux-firmware tree but relevant options were not in Config.in.
Signed-off-by: Alex Suykov <alex.suykov@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Fixes a potential heap corruption on Windows when
mbedtls_x509_crt_parse_path() is passed a path longer than 2GB. This
cannot be triggered remotely. Found by Guido Vranken, Intelworks.
Fixes a potential buffer overflow in some asn1_write_xxx() functions.
This cannot be triggered remotely unless you create X.509 certificates
based on untrusted input or write keys of untrusted origin. Found by
Guido Vranken, Intelworks.
The X509 max_pathlen constraint was not enforced on intermediate
certificates. Found by Nicholas Wilson, and fix and tests provided by
Janos Follath.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
ppc-mpc8544ds: switch to custom kernel config since the new 4.3-shipped
mpc85xx_basic_defconfig doesn't work with Qemu.
Incidentally while cleaning it up it now seems to work fine with newer
qemu versions.
sparc64_sun4u: ditch ne2k driver since it's useless, and add the e1000
driver which works fine.
x86: stick to 4.2.x kernels since 4.3 doesn't work right with uclibc
(any variant) based toolchains.
Results table:
Defconfig Kernel Qemu Network Status
--------------------------------------------------------------
aarch64_virt 4.3 2.3.0 YES OK
arm_nuri 3.10.93 2.3.0 NO(1) OK(2)
arm_versatile 4.3 2.3.0 YES OK
arm_vexpress 4.3 2.3.0 YES OK
microblazebe 4.3 2.3.0 YES OK
microblazeel 4.3 2.3.0 YES OK
mips64el_malta 4.3 2.3.0 YES OK
mips64_malta 4.3 2.3.0 YES OK
mipsel_malta 4.3 2.3.0 YES OK
mips_malta 4.3 2.3.0 YES OK
ppc_g3beige 4.3 2.3.0 YES OK
ppc_mpc8544ds 4.3 2.3.0 YES OK
ppc_virtex_ml507 4.3 2.3.0 NO OK
ppc64_pseries 4.3 2.3.0 YES OK
sh4 4.3 2.3.0 YES OK
sh4eb 4.3 2.3.0 NO(1) OK
sparc_ss10 4.3 2.3.0 YES OK
sparc64_sun4u 4.3 2.3.0 YES OK
sparc_sun4u 4.3 2.3.0 YES OK
x86 4.2.6 2.3.0 YES OK(3)
x86_64 4.3 2.3.0 YES OK
xtensa_lx60 4.3 2.3.0 YES OK
(1) - Supposed to work but broken, probably Qemu emulation issue
(2) - In like 1/3 runs it fails to start properly
(3) - linux 4.3.0 doesn't like uclibc-based toolchains (net issues)
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
To export a variable in .bashrc we shouldn't put a '$' at the
beginning of the line, and there must be a '=' between key and value.
Signed-off-by: Luca Ceresoli <luca@lucaceresoli.net>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
ffmpeg was already marked as not available for the NIOS2 Sourcery
toolchains, but it could still be built with the internal toolchain
backend or a custom external toolchain.
However, an inspection of the latest glibc source code indicates that
FE_INVALID, FE_OVERFLOW and FE_UNDERFLOW and indeed not available in
the nios2 variant of <fenv.h>.
Consequently, this patch makes ffmpeg not available on nios2, which
allows to simplify a bit the dependencies.
It propagates this dependency to:
- minidlna (and at the same time makes sure the minidlna comment is
not displayed on nios2, which wasn't properly taken into account
until now)
- mpd
- opencv
- opencv3
- squeezelite
- tovid
Even if it selects ffmpeg, Kodi does not need an update since Kodi is
only available on a limited number of architectures (which don't
include nios2, obviously). Other packages only make use of ffmpeg when
available.
Fixes:
http://autobuild.buildroot.org/results/921/9212f5a6432c5e695ac0630695405cea05e28610/
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Drop the patches since this is a major bump and they're no longer
relevant.
Introduce the new RRDTOOL_RRDGRAPH option, in previous versions the
graphing functionality was bundled with the stats/database backend,
however for newer versions this can be disabled.
Since it's normally expected functionality the default is yes, however
all of the buildroot rrd-using applications can work without this.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Bump trinity version to 1.6. Remove backported vt.c missing include patch
as it is now included in the upstream release.
Signed-off-by: Andrew Donnellan <andrew.donnellan@au1.ibm.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
[Thomas:
- add comment in Config.in to explain why this package depends on
glibc, and specifically why it doesn't build for uClibc and musl.
- add hash file.
- add 'COPYING' to the list of LICENSE_FILES
- add themissing <pkg>_DEPENDENCIES variable in the .mk file, to make
sure dependencies are built before netsniff-ng.
- add comment in the .mk file explain why we're using the
generic-package infrastructure even if the build procedure is
essentially ./configure, make, make install.
- fix indentation in NETSNIFF_NG_CONFIGURE_CMDS.]
Signed-off-by: Joris Lijssens <joris.lijssens@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
When using systemd, the policy in Buildroot is to use a merged /usr
(see c5bd8af6, "system: add options for /bin /sbin and /lib to be
symlinks into /usr" for more info). So, we apply a few tricks in some
packages to account for the merged /usr case.
However, when using a custom skeleton, we have no say in how that
skeleton is organised, so it may well have a split /usr. In that case,
our little tricks might not work as expected.
So, when the user uses a custom skeleton and wants systemd as an init
system, we must check that the custom skeleton is setup with a merged
/usr.
We do that by checking that each pair of {/lib,/usr/lib} {/bin,/usr/bin}
and {/sbin,/usr/sbin} have the same inode numbers, i.e. /lib must have
the same inode number as /usr/lib (and so on...). When a pair does not
share the same inode number, this is not a merged /usr and we abort.
We implement that check with make constructs, so it is done very early
in the build process, and we can abort early if need be.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Maxime Hadjinlian <maxime.hadjinlian@gmail.com>
Cc: Peter Korsgaard <jacmet@uclibc.org>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
When a powerpc target is detected the build system tries to force
altivec support but that's wrong:
Not every powerpc processor has altivec instruction support.
It's using the removed/deprecated -faltivec compiler directive when it
should be using -maltivec instead.
Even if the above conditions are corrected the altivec codepath fails
to build properly.
So just disable altivec in general using the standard
--enable-simdoverride configure option. Fixes:
http://autobuild.buildroot.net/results/e1b/e1b6cf76a7a4ae754a928d211e779e9381198f48/
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
The license is wrong, it's GPLv3+ rather than GPLv2+ now.
Also there's a specific clause for libintl that makes it LGPLv2.1+, see
gettext-runtime/COPYING.
Signed-off-by: Gustavo Zacarias <gustavo.zacarias@free-electrons.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
The SSP support checks of the Ruby configure script do not do a full
link, and therefore don't properly detect if SSP support is fully
functional or not, which causes some build failures if the compiler
supports -fstack-protector but the C library does not provide the SSP
implementation.
To avoid this, we explicitly tell ruby if SSP support is available or
not.
Fixes:
http://autobuild.buildroot.net/results/001/00154b0142f51c197d5d53ae36f7adc4f8250d9d/
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
In commit 53bf889cdc ("ruby: should not
use dl_iterate_phdr() on Blackfin") we added
ac_cv_func_dl_iterate_phdr=no to RUBY_CONF_ENV when building on the
Blackfin architecture.
However, while doing so, we overwrote the previous value of
RUBY_CONF_ENV, which was defined to have custom CFLAGS:
RUBY_CONF_ENV = CFLAGS="$(RUBY_CFLAGS)"
This has no visible effect because the custom CFLAGS are only used on
SuperH/SuperH 64, while the overwrite of RUBY_CONF_ENV takes place on
Blackfin.
However, it doesn't look very pretty, and future additions to
RUBY_CONF_ENV may break this subtle behavior.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Similar to how we do it for dhcpd.service. The file should really have been
named /etc/default/dhcpd instead, but changing it now would break existing
systemd setups so leave it as it is.
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Fixes:
CVE-2015-7181 - A use-after-poison flaw was found in the way NSS parsed
certain ASN.1 structures. An attacker could use this flaw to cause NSS
to crash or execute arbitrary code with the permissions of the user
running an application compiled against the NSS library.
CVE-2015-7182 - A heap-based buffer overflow flaw was found in the way
NSS parsed certain ASN.1 structures. An attacker could use this flaw to
cause NSS to crash or execute arbitrary code with the permissions of the
user running an application compiled against the NSS library.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
With systemd and a custom skeleton, we end up with the following warning:
warning: (BR2_INIT_SYSTEMD) selects BR2_ROOTFS_MERGED_USR which has
unmet direct dependencies (BR2_ROOTFS_SKELETON_DEFAULT)
Which makes sense as the logic to install the symlinks to /usr is part of
the default skeleton handling, but the BR2_ROOTFS_MERGED_USR symbol is ALSO
used by packages to activate various workarounds for a merged /usr, so it
should be always active when using systemd even with a custom rootfs
skeleton (that by definition must use a merged /usr as required by systemd).
So introduce a dummy symbol with the same name for the custom skeleton case,
similar to how we handle the BR2_PACKAGE_BUSYBOX_SHOW_OTHERS option.
This is a hidden option so it can only be activated by enabling systemd (and
not if people just want to use a merged /usr with a custom skeleton but not
systemd), but as this is really a legacy option that is probably good enough
(if not, patches are welcome!).
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
This reverts commit b4718c3a28.
The BR2_ROOTFS_MERGED_USR symbol is used to activate various workarounds for
a merged /usr by packages, so it should be active even with a custom rootfs
skeleton.
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
On SuperH, the BR2_PACKAGE_LIQUID_DSP_FAST option of the liquid-dsp
package causes triggers a compiler bug with the Sourcery CodeBench
toolchains:
src/filter/src/firdes.c:406:1: internal compiler error: in gen_reg_rtx, at emit-rtl.c:859
This commit works around this problem by simply making this option
unavailable with the problematic toolchains.
Fixes:
http://autobuild.buildroot.net/results/d43/d43574b8f487648bc440fbe0b63b2a08b309dfc7/
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Doing a symlink results in incorrect behavior:
$ x86_64-buildroot-linux-gnux32-cc
--version
ccache: error: execv of [...]/x86_64-buildroot-linux-gnux32-cc.br_real.br_real failed: No such file or directory
$ x86_64-buildroot-linux-gnux32-gcc --version
x86_64-buildroot-linux-gnux32-gcc.br_real (Buildroot 2015.11-git-00965-g8d89653-dirty) 5.2.0
Copyright (C) 2015 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
Note the double .br_real on the invocation by toolchain-wrapper.
[Thomas: use 'ln -f' instead of 'cp -l', as suggested by Arnout.]
Signed-off-by: Steven Noonan <steven@uplinklabs.net>
Acked-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
With systemd and a custom skeleton, you end up with the following
warning:
warning: (BR2_INIT_SYSTEMD) selects BR2_ROOTFS_MERGED_USR which has
unmet direct dependencies (BR2_ROOTFS_SKELETON_DEFAULT)
Signed-off-by: Maxime Hadjinlian <maxime.hadjinlian@gmail.com>
Acked-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
According to the pkg-config documents ("specification") when
sysroot-prefixing is enabled via PKG_CONFIG_SYSROOT_DIR this should only
be applied to -I/-L directories (includes, library directories), and not
to all of the other variables that can specify a directory.
However xorg uses mapdir/sdkdir in a similar fashion in what could be
considered an abuse of the spec, hence needs to be prefixed as well.
And what's more, it also uses includedir in a nonstandard fashion just
requesting the value via 'pkg-config --variable=includedir libfoo' which
doesn't pass the standard prefixing rules for the --cflags and --libs
invocation.
This patch makes pkgconf behave in the pkg-config specified way with the
added exception for the includedir, libdir, mapdir and sdkdir variables
which are prefixed.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Tested-by: Peter Seiderer <ps.report@gmx.net>
Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
In the latest Linaro toolchain, the gdbserver has moved (surprise!)
and is now located side-by-side with the toolchain executables.
This commit adds this path as a new location where to search for a
gdbserver, and while at it wraps the line that has become too long in
the process.
[Thomas: rework commit log according to Yann's suggestion.]
Signed-off-by: Trent Piepho <tpiepho@kymetacorp.com>
Acked-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Remove the integrator926_defconfig configuration, which has not been
updated since a very long time, and targets hardware that is quite
difficult, not to say impossible, to get.
While Qemu has an emulation for the Integrator CP platform, it doesn't
seem to emulate a hard drive, which makes it not very useful. In
addition, we already have the qemu_arm_versatile_defconfig for an
ARMv5 platform emulated in Qemu.
Therefore, let's get rid of this fairly old and never updated
defconfig.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
This defconfig has not been updated since a long time, and it now
fails to build because the latest version of U-Boot has removed for
the Snowball because nobody converted it to the new U-Boot
standards. And our defconfig was not specifying an explicit U-Boot
version for it.
On the kernel side, the Git repository has not seen any commits since
3 years, and generally speaking, the Snowball project and the SoC it
is based on are no longer being developed.
Consequently, let's get rid of this defconfig altogether.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Adjust a generated udev rule file (25-gpsd.rules) to have user write
permissions. This is to prevent rebuild issues when the gpsd package
fails to re-install on a target (since the `cp` of the rule file will
fail due to permissions).
[Thomas: minor tweaks to code comments and commit title.]
Signed-off-by: James Knight <james.knight@rockwellcollins.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Since libconfuse now has a proper release tar ball, this also adds a
hash, removes autogen, and removes a patch that is no longer needed.
Signed-off-by: Frank Hunleth <fhunleth@troodon-software.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
host-gauche currently fails to build if host-zlib was built before,
because it finds zlib.h, but due to issues in gauche's build system,
the LDFLAGS passed in the configure script (with -L
$(HOST_DIR)/usr/lib) are not passed all the way down to where -lz is
used, causing a build failure.
Since we don't need zlib support in host-gauche, we simply disable it
explicitly.
While we're at it, we make the optional dependency on zlib explicit
for the target variant of the gauche package.
Fixes:
http://autobuild.buildroot.org/results/426/4269c465312ddcc801289914fa29427798ef7783/
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
In the manual, add a note that packages can use $(FOO_PKGDIR) to get the
path to the directory containg the .mk and Config.in files, if they need
it to e.g. copy files from there, like startup scripts, systemd units or
any other resource.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Samuel Martin <s.martin49@gmail.com>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Packages built with automake use a `py-compile` helper to byte-compile
Python source files. This script uses the "py_compile" module from the
standard library. In turn, the compile() function in the "py_compile"
module invokes the cache_from_source() function provided by importlib.
This commit adds a new patch named "020-importlib-no-pep3147.patch"
that changes cache_from_source() and source_from_cache() in importlib
to get rid of the "__pycache__" directory.
This commit fixes the following import error in kmod when the module
is built for Python 3:
>>> from kmod import Kmod
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: cannot import name 'Kmod'
Moreover, this commit removes two patches that are no longer necessary
since modifying cache_from_source() and source_from_cache() disables
PEP 3147 for the standard library and distutils / setuptools.
* 004-old-stdlib-cache.patch
* 016-distutils-no-pep3147.patch
Signed-off-by: Christophe Vu-Brugier <cvubrugier@fastmail.fm>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The i.MX6 SoloX SABRE board for smart devices is Freescale's reference design
board based on the heterogeneous ARM Cortex-A9 + Cortex-M4 i.MX6 SoloX
applications processor.
This defconfig is inspired from previous freescale_imx6*sabresd_defconfig, and
is based on Freescale "official" git repo on git.freescale.com and SW release
3.10.53_1.1.0_ga.
Signed-off-by: Vincent Stehlé <vincent.stehle@laposte.net>
Cc: Gary Bisson <bisson.gary@gmail.com>
Cc: Jérôme Pouiller <jezz@sysmic.org>
Cc: Gilles Talis <gilles.talis@gmail.com>
Cc: Luca Ceresoli <luca@lucaceresoli.net>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The following commit prevents the e2fsprogs package from inadvertently
removing its own binaries when a target includes BusyBox and is
targeting a usr-merged environment.
While an action has been added to cleanup BusyBox-provided (if any)
ext2-related tools when including e2fsprogs, the action will delete
desired e2fsprogs binaries in an already prepared usr-merged target.
Adjusting the cleanup to occur before installing e2fsprogs binaries so
that if a usr-merged target exists, it will first delete the previous
binaries (if any) followed by installing new binaries.
Signed-off-by: James Knight <james.knight@rockwellcollins.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
This is a new package for the fastd "Fast and Secure Tunneling Daemon"
which was developed for the Freifunk Gluon project in the first place.
It includes a patch to allow cross compiling with toolchains without
LTO support which fails with the unpatched version due to some ugly
cmake hacks in fastd v17, details in the patch.
[Thomas:
- Get rid of trailing spaces in Config.in
- Remove the BR2_PACKAGE_FASTD_OPENSSL, and simply rely on
BR2_PACKAGE_OPENSSL
- Remove -DWITH_CAPABILITIES=TRUE, since libcap support is anyway
mandatory.
- Use ON/OFF instead of TRUE/FALSE.]
Signed-off-by: Alexander Dahl <post@lespocky.de>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Add a DAEMON_ARGS configuration variable in order to make it possible to
pass custom extra options to rngd. This environment variable must
defined in /etc/default/rngd if needed, like with the SysV init script.
This file does not have to be present if not needed.
Signed-off-by: Benoît Thébaudeau <benoit.thebaudeau.dev@gmail.com>
Reviewed-by: Maxime Hadjinlian <maxime.hadjinlian@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The PYTHON_WEB2PY_PERMISSIONS table was using the user and group names
instead of the uid and gid, causing makedevs to retrieve the uid and gid
from the host system.
Signed-off-by: Noé Rubinstein <nrubinstein@aldebaran.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
This package is a small library used for the Freifunk Gluon project
and will be used by other upcoming packages.
Signed-off-by: Alexander Dahl <post@lespocky.de>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
[Thomas: remove dependency on libglib2, as it is not tested directly
by yad's configure script, and is anyway guaranteed to be available
since yad depends on gtk2 or gtk3, which both require libglib2.]
Signed-off-by: James Knight <james.knight@rockwellcollins.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Gauche is an R7RS Scheme implementation developed to be a handy script
interpreter, which allows programmers and systemadministrators to write
small to large scripts for their daily chores. Quick startup, built-in
system interface, native multilingual support are some of its goals.
Signed-off-by: Hiroshi Kawashima <kei-k@ca2.so-net.ne.jp>
Reviewed-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Tested-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Fix cross compilation by using curl-config script for target instead of the
one from host.
Signed-off-by: Remi Pommarel <repk@triplefau.lt>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
BR2_PACKAGE_CURL is currently used by the git package to find out if
libcurl is available. While indeed BR2_PACKAGE_CURL indicates that
libcurl is available, it is not the most appropriate option for this:
BR2_PACKAGE_LIBCURL is better. BR2_PACKAGE_LIBCURL indicates that
libcurl is available, while BR2_PACKAGE_CURL indicates that both
libcurl and the curl program are available. Only the former is needed
by Git.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Currently, we touch our stamp files before we call the step hooks.
This means a step hook can not properly fail a step, since the stamp
file exists even if the hook exits in error, thus a subsequent 'make'
would not try to redo that step.
Fix that by calling the hooks before we touch the stamp files.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Cc: Gustavo Zacarias <gustavo@zacarias.com.ar>
Cc: Peter Seiderer <ps.report@gmx.net>
Cc: Romain Naour <romain.naour@openwide.fr>
Reviewed-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
As reported by Steven Noonan, the variable recently introduced in the
package infrastructure to exclude certain parts of an archive from
being extracted is <pkg>_EXCLUDES, not <pkg>_TAR_EXCLUDES. However,
the gcc code was incorrectly using <pkg>_TAR_EXCLUDES. This commit
fixes that.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Reported-by: Steven Noonan <steven@uplinklabs.net>
Commit 23ffa7ec first extracts to the toolchain-external build
directory and then moves everything to $(HOST_DIR)/opt/ext-toolchain.
However, this is not idempotent, because moving directories over
existing ones doesn't always work, particularly if the target is on
another device.
Simply remove the destination contents before moving.
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
gcc will refuse to build with both --with-mode=thumb and --with-fpu=vfp,
with error messages during ./configure, like:
checking for suffix of object files... configure: error: in `/home/ymor
in/dev/buildroot/O/build/host-gcc-initial-4.9.3/build/arm-buildroot-lin
ux-uclibcgnueabihf/libgcc':
configure: error: cannot compute suffix of object files: cannot compile
See `config.log' for more details.
And config.log informatively contains:
sorry, unimplemented: Thumb-1 hard-float VFP ABI
This is an error message that comes deep from gcc source files.
If gcc says it does not support VFP with Thumb1, then let's disable that
combination in our menuconfig.
Prefer VFP over Thumb1, i.e. hide Thumb1 when we're not soft-float.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Gustavo Zacarias <gustavo@zacarias.com.ar>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Acked-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
rpcgen is only used to generate headers needed for compilation.
Move it to noinst_PROGRAMS otherwise you may end up with a host-arch
binary in your target.
Signed-off-by: Phil Eichinger <phil@zankapfel.net>
Reviewed-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The Virtualizer Development Kit (VDK) Family for ARM Cortex Products
consists of a set of virtual prototypes that provide a virtualizer for
the ARM core variants. The VDK is a standalone package that runs on an
host computer.
[Thomas: drop the following options, which as noted by Arnout, are not
needed:
- BR2_LINUX_KERNEL_IMAGE_TARGET_CUSTOM=y
- BR2_LINUX_KERNEL_IMAGE_TARGET_NAME="Image"
- BR2_PACKAGE_BUSYBOX_SHOW_OTHERS=y.]
Signed-off-by: Joao Pinto <jpinto@synopsys.com>
Reviewed-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Currently, we forcibly override BR2_EXTERNAL when building the manual,
so as to avoid referring to packages therein from the manual.
However, when generating the lists of packages, we limit ourselves to
scanning for packages in (Buildroot's) TOPDIR and never search in
BR2_EXTERNAL. So, we do not really need to override BR2_EXTERNAL when
generating the manual to achieve the same result.
Furthermore, we're only looking for packages that are defined in the
sub-menu "Target packages", and never anywhere else, and especially not
in the sub-menu "User-provided options".
Finally, we're soon to completely eliminate use of BR2_EXTERNAL in
Kconfig altogether, so that would no longer have any impact anyway.
So, just leave BR2_EXTERNAL alone when generating the manual.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Cc: Peter Korsgaard <jacmet@uclibc.org>
Cc: Thomas De Schampheleire <patrickdepinguin@gmail.com>
Cc: Arnout Vandecappelle <arnout@mind.be>
Cc: Samuel Martin <s.martin49@gmail.com>
Acked-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
One of the selling points for br2-external is to provide a mean to add
new packages. However, it is not supported that a package be defined by
Buildroot and then redefined in a br2-external tree.
This situation may occur without the user noticing or even willing to
redefine the package, for example:
- br2-external is first created against a version of Buildroot
- a package (missing in Buildroot) is added to that br2-external tree
- upstream Buildroot adds this package
- user updates to the new Buildroot
In this case, the result in undefined, and we can't make any guarantee
on the result (working or not).
Add a sanity check so that a package redefinition gets caught.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Cc: Peter Korsgaard <jacmet@uclibc.org>
Cc: Arnout Vandecappelle <arnout@mind.be>
Reviewed-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Reviewed-by: Samuel Martin <s.martin49@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Now that packages can provide a list of files to be excluded when
extracting their archive, downloaded external toolchains are no longer
special in this respect.
Still, those toolchains are currently extracted directly into their
final location, $(HOST_DIR)/opt/ext-toolchain/ which means we still
need a custom extract command.
Except, we don't really need it: we can just move the toolchain, after
it's been extracted by the generic extract command, with a post-extract
hook.
This means that:
- we now extract the toolchain with the generic extract command,
- the toolchain is thus extracted into $(@D) ,
- fixup commands are run against $(@D), as a post-extract hook,
instead of against $(HOST_DIR)/opt/ext-toolchain ,
- once this is done, we move $(@D)/* into the final location with a
new post-extract hook.
Note: the blackfin case is special, and will be handled in a follow-up
patch.
[Thomas: register the TOOLCHAIN_EXTERNAL_FIXUP_CMDS only for the Arago
case, add some additional comments in the code about why we're moving
the toolchain around.]
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Cc: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Reviewed-by: Romain Naour <romain.naour@openwide.fr>
Reviewed-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Tested-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Currently, for the blackfin external toolchains, we tell tar to
extract files with the --hard-dereference. However, --hard-dereference
is only meaningful when creating an archive, not when extracting
it. Therefore, let's drop this option.
[Thomas: rework commit title and commit log, after some suggestions
from Arnout.]
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Cc: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Reviewed-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Currently, packages that need to exclude parts of the archives when
extracting (e.g. to gain space), like gcc or toolchain-external, have to
provide custom extract commands, just for the sake of adding a bunch of
--exclude directives when calling tar.
Add a new variable that packages may set, to provide a space-separated
list of patterns to exclude.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Cc: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Reviewed-by: Romain Naour <romain.naour@openwide.fr>
Reviewed-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
That toolchain is built for an x86_64 host, so we make it available only
for x86_64, and we keep the old 2014.09 toolchain for x86 hosts.
To avoid dealing with legacy symbols and introduce versioned options,
we reuse the same symbol for both toolchains. Thanks to the different
depednencies (on the host), we can give them different prompts and
different help texts.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Cc: Arnout Vandecappelle <arnout@mind.be>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
That toolchain is built for an x86_64 host, so we make it available only
for x86_64, and we keep the old 2014.09 toolchain for x86 hosts.
To avoid dealing with legacy symbols and introduce versioned options,
we reuse the same symbol for both toolchains. Thanks to the different
depednencies (on the host), we can give them different prompts and
different help texts.
[Thomas: tweak Config.in help text to actually match this toolchain
instead of being a wrong copy/paste from the old Linaro toolchain for
ARMeb.]
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Cc: Arnout Vandecappelle <arnout@mind.be>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
That toolchain is built for an x86_64 host, so we make it available only
for x86_64, and we keep the old 2014.09 toolchain for x86 hosts.
To avoid dealing with legacy symbols and introduce versioned options,
we reuse the same symbol for both toolchains. Thanks to the different
depednencies (on the host), we can give them different prompts and
different help texts.
[Thomas: s/eglibc/glibc/ as noticed by Baruch.]
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Cc: Arnout Vandecappelle <arnout@mind.be>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
To help understanding the list of architectures supported by
Boost.Context, add a link to the appropriate documentation page.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
It was disabled by default by commit
611dfe6cb5 because it caused some build
failures on AArch64 and SuperH. However, the coroutine module needs
the context module, which is only available on certain architectures.
We can therefore allow enabling the coroutine module, but only if the
context module is available.
[Thomas: extend commit log with more details.]
Signed-off-by: Edson Siqueira <edson.siqueira@datacom.ind.br>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The irssi configure script uses pkg-config to detect the availability of
libglib2 and openssl.
Signed-off-by: Rodrigo Rebello <rprebello@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
This commit adds two patches for poco to fix two issues:
- A link issue caused by the fact that Buildroot uses the "unbundled"
mode for pcre, which is broken due to Poco poking into internal
pcre symbols. A Gentoo patch is adapted to work around this
problem.
- A link and runtime issue caused by the fact that the shared
libraries are simply not installed due to a bug in the Makefile. An
upstream Poco commit is backported to solve this problem.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Reported-by: Benno Schweikert <b.schweikert@prosystems.de>
Since commit 12a6c5b12c (imagemagick: use official download site,
2015-02-17) we use the official ImageMagic size. Use it also as hash source.
That's the conversion we use in all other packages when upstream provides
hashes.
Cc: Fabio Porcedda <Fabio.Porcedda@gmail.com>
Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Set npm_config_prefix to $(TARGET_DIR)/usr so that npm -g will correctly
install global modules to $(TARGET_DIR)/usr/lib/node_modules.
By using npm -g to install global modules npm will now automatically create
the symlinks to executables under $(TARGET_DIR)/usr/bin.
See https://docs.npmjs.com/misc/config#global and
https://docs.npmjs.com/files/folders for information on how the prefix
setting is used by global installs.
Signed-off-by: Martin Bark <martin@barkynet.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
This patch has same purpose than 49964858f4:
On some machines, the network interface is slow to appear. For example,
on the Raspberry Pi, the network interface eth0 is an ethernet-over-USB,
and our standard boot process is too fast, so our network startup script
is called before the USB bus is compeltely enumerated, thus it can't
configure eth0.
Closes#8116.
However, wait-delay hook is enabled only if wait-delay property appears
in /etc/network/interfaces. This patch enable it automaticaly when
interface is configured through DHCP at bootup. But, if user choose
to write /etc/network/interface himself, he have to explicitly
set wait-delay.
Signed-off-by: Jérôme Pouiller <jezz@sysmic.org>
Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Unneeded patches removed. Highlights from ChangeLog:
* Fixed a build problem on systems that don't implicitly include
sys/types.h from other header files. Bug #711.
* Fixed the compiler stack protector test in configure for compilers
that support -fstack-protector but don't actually have the ssp
library available.
Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
- rebase patch 0001-workaround-SIGSEGV-on-PPC.patch
- remove upstream applied patches
0002-Fix-configure-for-Linux-kernel-4.0-rc1.patch
0004-configure.ac-Generalize-glibc-version-check.patch
- rebase 0003-add-missing-ptrace-getsiginfo-on-powerpc.patch
(convert to git patch format, rename to
0002-Define-PTRACE_GETSIGINFO-on-PowerPC-when-not-availab.patch)
- remove legacy VALGRIND_AUTORECONF=YES (no more patch touching confgure.ac)
- add '--disable-ubsan' for new undefined behaviour sanitiser option
Signed-off-by: Peter Seiderer <ps.report@gmx.net>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Otherwise host-pkgconf will not be installed and the configure script
will fail with an error like this one:
./configure: line 16346: PKG_PROG_PKG_CONFIG: command not found
[snip]
./configure: line 20511: syntax error near unexpected token `X11,'
./configure: line 20511: `PKG_CHECK_MODULES(X11, x11, x11_pkgconfig=yes,
x11_pkgconfig=no)'
Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Tested-by: Peter Seiderer <ps.report@gmx.net>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Upstream now supports little endian, so enable for little-endian
powerpc.
[Peter: add hash]
Signed-off-by: Jeremy Kerr <jk@ozlabs.org>
Signed-off-by: Joel Stanley <joel@jms.id.au>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Switch to proper homepage, download from homepage and add a hash file.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Also revamp the kernel config a bit to make it more featured, enabling
SATA ports and storage.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Drop md5 and calculated sha256 and switch to upstream-provided sha512.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
'quiet' variable is set and exported, but it is not used. We can safely
remove it.
This variable is inherited from the Makefile of the Linux kernel, and
is not used in Buildroot.
In support/scripts/mkmakefile, 'quiet' value is checked, but the test
is always true ('quiet' is never set to silent_), so the test can be
removed as well.
Signed-off-by: Cédric Marie <cedric.marie@openmailbox.org>
Reviewed-by: "James Knight" <james.d.knight@live.com>
Reviewed-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Since the toolchain is always wrapped and the wrapper already passes
BR2_TARGET_OPTIMIZATION (through BR_ADDITIONAL_CFLAGS), there is no longer
any need to pass it in TARGET_CFLAGS as well.
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
--enable-sandboxed and --with-driver options were used in 0.9.1
>From 0.9.2 they are not used anymore.
Signed-off-by: David Kosir <david.kosir@bylapis.com>
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
[Arnout: resend without whitespace errors]
Acked-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
gid 37 was referenced in /etc/passwd but not in /etc/group
Signed-off-by: Jérôme Pouiller <jezz@sysmic.org>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
In case cairo support is (auto-)detected cairo PNG support
is required.
Fixes ([1]):
../gst-libs/gst/video/.libs/libgstvalidatevideo-1.0.so: undefined reference to `cairo_surface_write_to_png'
../gst-libs/gst/video/.libs/libgstvalidatevideo-1.0.so: undefined reference to `cairo_image_surface_create_from_png'
collect2: error: ld returned 1 exit status
[1] http://autobuild.buildroot.net/results/c5e/c5eb6cb12dba559226c67f5d258cc151aa8a8d3a
[Peter: reworded comment, dropped extra line]
Signed-off-by: Peter Seiderer <ps.report@gmx.net>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Remove upstream or unneeded patches. Renumber and refresh the doc disable
patch. Add a different version of the lanplus disable fix (sent upstream) that
integrates with upstream change in this area.
Cc: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
For quite some time all ARC changes have been pushed upstream.
So both uClibc master branch and uClibc-ng have full ARC support
including the most recent changes.
I.e. finally we have reached the point when there's no need in
Synopsys fork of uClibc on GitHub and it will soon be obsoleted and
removed at some pint of time.
Now since vanilla uClibc hasn't seen any releases for many years we cannot
really use it for ARC. Fortunately there exists uClibc-ng and Waldemar
cuts releases regularly - that works perfectly fine for us.
That patch removes all mentions of ARC's uClibc which in turn makes
uClibc-ng default libc for ARC.
Cc: Waldemar Brodkorb <wbx@openadk.org>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
Reviewed-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Acked-By: Waldemar Brodkorb <wbx@uclibc-ng.org>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Sometimes if host-python is around it doesn't work too well with the
distro python (Gentoo, FC20 at least) leading to build failures.
This failure is very hard to trigger, it's normally easier to do so by
enabling top-level parallel builds.
Fixes:
http://autobuild.buildroot.net/results/0f8/0f881e322b7f9d244b8dd2440ba0afd3a8418027/
While at it update the configure options to avoid any host
libraries/tools from leaking in, new naming conventions and options.
And remove dead code dealing with the nothreaded variant.
Signed-off-by: Gustavo Zacarias <gustavozacarias@free-electrons.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
with the option -noxs, the Pure Perl version is always built.
Signed-off-by: Francois Perrad <francois.perrad@gadz.org>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
[Peter: use KMOD_BIN_PATH instead of doubling logic, add comment explaining
why this is needed]
Signed-off-by: Chris Lesiak <chris.lesiak@licor.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Use BR2_SHARED_STATIC_LIBS for building both static and shared boost libs.
The static libs are copied to the staging directory. Only the shared libs are
copied to the rootfs image.
[Thomas:
- remove empty else clause, and instead add a comment that explains
why we're doing something only for the BR2_STATIC_LIBS=y and
BR2_SHARED_LIBS=y.
- remove trailing backslash at the end of the BOOST_CONF_OPTS
definition.]
Signed-off-by: Jonathan Ben Avraham <yba@tkos.co.il>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Rather than pointing at a developer's github repository point at the
official Balabit one. The commit SHAs are the same so no other change is
needed.
Signed-off-by: Chris Packham <judge.packham@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
At the same time perform a GitHub migration, since Google Code will
disappear soon.
- Bump to version release-5-2-122
- Switch to GitHub
- Remove trailing slash from OPENPGM_SUBDIR
- Remove unnecessary python dependencies
- Add a hook to create the missing m4 directory, needed to autoreconf
- Add a hash file
- Rewrap the help text to 72 characters length
- Change the project URL
Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
In Makefile, the comma ',' is used to separate the arguments passed to
functions, so we should not be allowed to use straight commas in strings
we want to expand.
For the toolchain wrapper, we need to transform a list:
-mfoo -mbar -mbuz
into something acceptable for a C array assignment:
"-mfoo", "-mbar", "-mbuz",
So, we use a $(foreach ...) loop for that. However, we do have a
straight comma in there.
It does not cause any issue in practice, since $(foreach) is a make
builtin function that accepts three and only three parameters.
However, this is not sane.
Change the straight comma to the usual $(comma) expansion, like we would
do for a call to any other function.
At the same time, make the code a bit easier to read, by first creating
the transformed list, and then creating the define.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Arnout Vandecappelle <arnout@mind.be>
Acked-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Tested-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
x265 is a H.265 / HEVC video encoder application library, designed to encode
video or images into an H.265 / HEVC encoded bitstream.
http://x265.org
[Peter: use positive logic for CLI option]
Signed-off-by: Thijs Vermeir <thijsvermeir@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Fixes following problems:
- mips64 toolchain building when UCLIBC_HAS_CONTEXT_FUNCS is enabled
- segfault when SSP and NPTL is used for static binaries
- Updates for ARC and Xtensa
- missing syscalls for fanotify_init() and fanotify_mark() are added
- support for the syncfs() system call added
- problems compiling freeswitch are fixed
- problems running LTP regarding fallocate are fixed
Tested with defconfigs for Qemu arm/ppc/sh/mips/x86/x86_64/xtensa.
Signed-off-by: Waldemar Brodkorb <wbx@uclibc-ng.org>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Allow building jq as host utility for use in post-build scripts.
This can be useful to created, edit, merge or even perform syntax checking
on JSON files.
Signed-off-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
The reason for the patch is not entirely clear as it dates back to the
original addition of avahi (in 2006), and it contains no description - But
presumably it is to work around a permission issue with the address files,
similar to what is explained here:
https://bugs.launchpad.net/ubuntu/+source/avahi/+bug/83521
That particular issue got fixed by upstream in 2007 using umask(2):
747f753720
So the patch isn't needed any more and can be dropped.
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
The gstreamer 0.10 support code seems to have bitrotten as the build fails
with undefined references to various functions:
.obj/qgstreameraudiodecodersession.o: In function `QGstreamerAudioDecoderSession::read()':
qgstreameraudiodecodersession.cpp:(.text+0x13a0): undefined reference to `QGstUtils::audioFormatForBuffer(_GstBuffer*)'
collect2: error: ld returned 1 exit status
Makefile:111: recipe for target '../../../../plugins/mediaservice/libgstaudiodecoder.so' failed
make[6]: *** [../../../../plugins/mediaservice/libgstaudiodecoder.so] Error 1
Makefile:45: recipe for target 'sub-audiodecoder-make_first' failed
make[5]: *** [sub-audiodecoder-make_first] Error 2
make[5]: *** Waiting for unfinished jobs....
.obj/qgstreamercapturesession.o: In function `QGstreamerCaptureSession::probeBuffer(_GstBuffer*) [clone .part.30]':
qgstreamercapturesession.cpp:(.text+0x3fc8): undefined reference to `QGstUtils::bufferToImage(_GstBuffer*)'
collect2: error: ld returned 1 exit status
Makefile:153: recipe for target '../../../../plugins/mediaservice/libgstmediacapture.so' failed
make[6]: *** [../../../../plugins/mediaservice/libgstmediacapture.so] Error 1
Makefile:95: recipe for target 'sub-mediacapture-make_first' failed
make[5]: *** [sub-mediacapture-make_first] Error 2
.obj/qgstreamerplayersession.o: In function `QGstreamerPlayerSession::QGstreamerPlayerSession(QObject*)':
qgstreamerplayersession.cpp:(.text+0xecc): undefined reference to `gst_video_connector_get_type'
.obj/qgstreamerplayersession.o: In function `QGstreamerPlayerSession::processBusMessage(QGstreamerMessage const&)':
qgstreamerplayersession.cpp:(.text+0x5b4c): undefined reference to `QGstUtils::gstTagListToMap(_GstStructure const*)'
collect2: error: ld returned 1 exit status
Makefile:129: recipe for target '../../../../plugins/mediaservice/libgstmediaplayer.so' failed
make[6]: *** [../../../../plugins/mediaservice/libgstmediaplayer.so] Error 1
Makefile:70: recipe for target 'sub-mediaplayer-make_first' failed
make[5]: *** [sub-mediaplayer-make_first] Error 2
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Set EABIhf as the default target ABI for the ARM processors that have or
may have a VFP unit, since this ABI is the most efficient in that case.
Of course, EABI can still be selected manually if needed.
[Peter: only default to EABIHF when we are sure the CPU has a VFP]
Signed-off-by: Benoît Thébaudeau <benoit.thebaudeau.dev@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Use custom version for U-Boot, instead of using the default value as defined
in BR2_TARGET_UBOOT_VERSION.
Signed-off-by: Nikolay Dimitrov <picmaster@mail.bg>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Since it's automatic via libmnl being present it's just dead code that's
not defined any longer, so remove it.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
By default, feh installs into /usr/local. Adjusting the prefix to point
to a system distribution path.
Signed-off-by: James Knight <james.knight@rockwellcollins.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
ranger is a console file manager with VI key bindings. It provides a
minimalistic and nice curses interface with a view on the directory hierarchy.
It ships with "rifle", a file launcher that is good at automatically finding
out which program to use for what file type.
http://ranger.nongnu.org
Signed-off-by: Thijs Vermeir <thijsvermeir@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Fixes (works around) #8421
Util-linux has optional systemd support, but we cannot enable it as systemd
depends on util-linux, so that would create a circular dependency.
The systemd unit directory location detection also fails as pkg-config
0.9.12+ prefixes all directory variables with the sysroot, and the configure
script expects to see the target location, so disable that as well for good
measure.
The systemd support doesn't seem to add much, so it isn't a big loss.
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
- add new onvif option
- add new dtls option
- add new openh264 option
- add new x265 option
- removed real plugin option
- add new rtp option
- remove always disabled legacy options: directdraw, osx_video,
quicktime and mythtv
- add '--disable-bs2b' and '--disable-libde265' to options
which require currently unpackaged libraries
- add '--disable-gtk3' and '--disable-qt'
[Thomas: improve wording of Config.in.legacy option.]
Signed-off-by: Peter Seiderer <ps.report@gmx.net>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
[Romain:
- Wrap Config.in help text at 72 columns.
- Move sdl2 package after sdl modules in Config.in. (Arnout)
- Explicitly disable dbus and wayland.
- Remove double underscore (SDL2__*).
- Unify autotools options to use --enable/--disable.
- Use x-includes and x-libraries to avoid path poisoning.
- Remove xlib_libXrender, xproto_inputproto and xproto_scrnsaverproto
dependencies since the build system doesn't depend on them.
- Add Xlib_libXi, xlib_libScrnSaver and xlib_libXxf86vm dependencies.
- Handle autotools options (--enable/--disable) for each X11
dependencies.]
[Thomas:
- Minor tweaks to Config.in
- Addition of hash file.
- Addition of SDL2_CONFIG_SCRIPTS, as suggested by Vincent Stehlé.]
Signed-off-by: Guillaume GARDET <guillaume.gardet@oliseo.fr>
Signed-off-by: Romain Naour <romain.naour@openwide.fr>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Cc: Romain Naour <romain.naour@openwide.fr>
Cc: Yann E. Morin <yann.morin.1998@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Changes:
* Update Kernel and U-Boot to the latest 2.0.6 BSP release from the
official sources.
* Add genimage config to create bootable SD card image
Signed-off-by: Gergely Imreh <imrehg@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Since version 1.5, maintainer mode is enabled by default. We don't need
this, and is in particular problematic because it requires bison 3.0.
Signed-off-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
For consistency reasons, this commit adjusts the noip package to pass
$(TARGET_MAKE_ENV) in the environment when calling $(MAKE).
Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Erlang can be built without threads support, by passing an
appropriate config option.
This commit drops the config dependency on BR2_TOOLCHAIN_HAS_THREADS
and instead passes --disable-threads if the toolchain doesn't support
threads.
While here, change the wording of the config comment to "dynamic
library" to be consistent with similar comments elsewhere.
Signed-off-by: Ezequiel Garcia <ezequiel@vanguardiasur.com.ar>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
For consistency reasons with other packages, let's pass
$(TARGET_MAKE_ENV) in the environment when calling $(MAKE).
[Thomas: improved commit log.]
Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The option --enable-video-directfb=no was being assigned to
SDL_CONF_OPTS instead of being appended to it when
BR2_PACKAGE_SDL_DIRECTFB was disabled. That would clobber any options
previously added to SDL_CONF_OPTS (namely --enable-video-fbcon=yes|no).
Signed-off-by: Rodrigo Rebello <rprebello@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
gdb has full support for aarch64 since version 7.6,
current minimum is 7.7.1.
Target build was re-enabled over a year ago, but host-gdb was not.
Related commits:
0e49733b30 gdb disabled for aarch64
4372449a4f target-gdb re-enabled
Signed-off-by: Alex Suykov <alex.suykov@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
tstools has migrated to GitHub, so let's use this opportuninty to rework
this package as well.
- Change site to GitHub.
- No releases of tags yet, so let's use the latest commit ID from the
master branch as a version.
- There is currently no license file attributed to tstools, so state that
in the tstools.mk file and add empty license file variable. This issue is
being tracked upstream: https://github.com/kynesim/tstools/issues/32
- Wrap the help text in the Config.in to 72 characters, and also change
the project URL to the GitHub one.
- Add a hash file.
- Rename the patch to use a four digit numbering (001 -> 0001).
[Peter: leave license as MPLv1.1, adjust comment to match]
Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
The Intel X1000 is the Pentium class microprocessor that ships with
Galileo Gen 1/2. This patch adds changes to arch and toolchain-wrapper
to omit the lock prefix for the X1000.
[Thomas: tweak commit log and Config.in help text.]
Signed-off-by: Ray Kinsella <ray.kinsella@intel.com>
Reviewed-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
We add a new version, because it is not API-compatible with the previous
versions.
Also, nodejs-4.1.2 requires gcc >= 4.8.
Forward-port patches from 0.12.7:
- 0001-Remove-dependency-on-Python-bz2-module.patch partially applied
upstream;
- 0002-gyp-force-link-command-to-use-CXX.patch slightly refreshed;
- 0003-Use-a-python-variable-instead-of-hardcoding-Python.patch
largely refreshed to address new occurences of hard-coded calls;
- 0004-fix-build-error-without-OpenSSL-support.patch applied upstream
- 0005-Fix-typo-for-arm-predefined-macro-in-atomicops_inte.patch
applied upstream.
New patch:
- 0004-fix-arm-vfpv2.patch to fix the gcc -mfpu option for VFPv2.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Jörg Krause <joerg.krause@embedded.rocks>
Cc: Martin Bark <martin@barkynet.com>
Cc: Jaap Crezee <jaap@jcz.nl>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Allow the `ntptime` utility to be included on a target.
[Peter: add comment why AUTORECONF is needed]
Signed-off-by: James Knight <james.knight@rockwellcollins.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
External toolchain use requires a static libc (as buildroot uses
`gcc --print-file-name libc.a` to find the sysroot); thus, the static portion
of a musl build should not be conditional.
Signed-off-by: Charles Duffy <chaduffy@cisco.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
CONFIG_UBOOT needs libz [1]. So CONFIG_UBOUT mustn't be available when
HAVE_ZLIB=n.
Add patch from upstream to fix a link error for CONFIG_UBOOT and missing libz.
Note, that this link error does not affect the default config provided by
Buildroot.
[1] cf495e23ad
[Thomas: use a single <pkg>_PATCH variable.]
Reported-by: Romain Naour <romain.naour@openwide.fr>
Signed-off-by: Jörg Krause <joerg.krause@embedded.rocks>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Some toolchains used in Buildroot (x86-64 and mips64) have a problem to compile
a set of object files into one object file as it is done for the
`builtin-target` declared in swupdate's Kbuild Makefile.build. This target
collects all object files from every subdirectory declared in `objs-dir` and
compiles them into a single object file named `build-in.o` using the linker ld.
For the addressed toolchains the default emulation of ld is not the correct one
leading to different kind of relocation errors:
/usr/bin/i686-pc-linux-gnu-ld: Relocatable linking with relocations from
format elf64-x86-64 (core/swupdate.o) to format elf32-i386 (core/built-in.o)
is not supported.
or
/usr/bin/mips-linux-gnu-ld: handlers/raw_handler.o: endianness incompatible
with that of the selected emulation
or
/usr/bin/mips64el-linux-ld: core/swupdate.o: ABI is incompatible with that
of the selected
As there is no need to have single object file `built-in.o` to be compiled for
the subdirectories core and handlers we can easily allow swupdate to be built
with these toolchains by compiling the source files from core and handlers with
the `lib-target` target by assigning them to the `libs-y` variable as it is done
for all other subdirectories. The `lib-target` compiles a set of object files
into one archive file. With this target we avoid using the ld linker and use the
ar archiver instead.
Add a patch from upstream to fix a whole bunch of autobuild errors.
Fixes:
http://autobuild.buildroot.net/results/de9/de920298075d32f3de83a0cfb7417846eb833425/http://autobuild.buildroot.net/results/975/975915aa33005806e78260bae385cd4b3e359ca8/http://autobuild.buildroot.net/results/c54/c54e7a2ea353d95d41a1e966de0dffa7b6ac432e/http://autobuild.buildroot.net/results/019/0198596ebfed05ab86552b628da2274d55bf42ae/
and many more.
Signed-off-by: Jörg Krause <joerg.krause@embedded.rocks>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Lots of changes, add support for libnfs, udev, libbluray, cleanup afp
support, gtk3, and systemd.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
"/usr/bin/env bash" is used everywhere else in host tools. These are the
only remaining offenders.
Signed-off-by: Bjørn Forsman <bjorn.forsman@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Switch site to gnu mirror since the stable releases are mirrored there.
Also use gpg sig to calculate hash, from the gnu mirror.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
This note is no longer needed, so remove it.
Tarballs generated by GitHub are always the same, so hashes can be
checked.
This reverts commit 9474cc2594.
[Thomas: fix other remaining references to not using hashes for
github, as noticed by Maxime Hadjinlian.]
Cc: Maxime Hadjinlian <maxime.hadjinlian@gmail.com>
Signed-off-by: Samuel Martin <s.martin49@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The format of the users table files is non trivial, so it is sometimes
handy to add comments explaining the syntax (or simply the reason for
the user) inline in the files.
Ignore empty lines and comment lines prefixed with '#' similar to shell
or makedevs files.
Packages that defined no user (the vast majority) would cause an empty
line to be present in the internal users table, hence the reason we
skipped empty usernames. Now that we ignore empty lines, we no longer
need to check for empty usernames.
Reported-by: Peter Korsgaard <jacmet@uclibc.org>
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Peter Korsgaard <jacmet@uclibc.org>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
- always disable new gio_unix_2_0 option (only used for testing)
[Thomas: add comment in .mk file.]
Signed-off-by: Peter Seiderer <ps.report@gmx.net>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
syslog-ng is an enhanced log daemon, supporting a wide range of input
and output methods: syslog, unstructured text, queueing, SQL & NoSQL.
[Thomas:
- Rewrap Config.in.help text
- Pass --pidfile option when starting syslog-ng so that its PID file
is created in /var/run/syslog-ng.pid, which allows
start-stop-daemon to actually stop syslog-ng. Without this,
S01logging was not able to stop syslog-ng.
- Pass the executable path at stop time in S01logging, so that
start-stop-daemon can check we're not incorrectly stopping
something completely different.
- Add busybox as a dependency of syslog-ng if busybox is enabled,
since we want to override Busybox's S01logging init script.
- Simplify the python condition, since python and python3 are
mutually exclusive.
- Rewrap the comment above SYSLOG_NG_FIXUP_CONFIG.]
Signed-off-by: Chris Packham <judge.packham@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
DVBlast is a simple and powerful MPEG-2/TS demux and streaming
application.
[Thomas:
- add missing hash file.
- rewrap Config.in help text
- remove unneeded "DVBLAST_INSTALL_TARGET = YES", since this is the
default behavior
- pass TARGET_MAKE_ENV in the environment when calling make.
- use TARGET_CONFIGURE_OPTS instead of just CC/LD.]
Signed-off-by: Julian Scheel <julian@jusst.de>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
BiTStream is a set of headers to ease processing of mpeg ts
streams. It is used by dvblast.
[Thomas:
- add missing hash file.
- add missing BITSTREAM_LICENSE_FILES information.
- rewrap Config.in help text.
- use lowercase name for the package in the comment header in
bitstream.mk.]
Signed-off-by: Julian Scheel <julian@jusst.de>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
This commit does a number of fixes to the inadyn package to make it
work properly "out of the box":
* inadyn is installed in /usr/sbin, not /usr/bin, so we fix the path
in the init script
* Use "printf" for the Starting and Stopping messages, so that the OK
/ FAIL stay on the same line.
* Pass the -q option to the start sequence, since it's passed in the
stop sequence.
* Fix the configuration file to use an existing dyndns_system and
avoid a failure at startup.
* Use a variable called ENABLED in /etc/default/inadyn to decide
whether to start the service or not. By default, it is not started,
as suggested by Gustavo, and an explicit ENABLED="yes" is needed.
* Store the PID file in /var/run/inadyn.pid, like we do for all other
daemons.
[Thomas: drop silly comment about uncommenting the alias line in the
configuration file, which is already uncommented. Noticed by Yann.]
Cc: Alex Suykov <alex.suykov@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Reviewed-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Now that we are always explicitly passing gcc_cv_libc_provides_ssp,
there is no longer any reason to modify the gcc configure/configure.ac
to take into account the musl case. When a musl toolchain is being
built, BR2_TOOLCHAIN_HAS_SSP is always 'y', and therefore
gcc_cv_libc_provides_ssp=yes is always passed when building
gcc-initial and gcc-final.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
During the gcc-initial build, we already pass
gcc_cv_libc_provides_ssp=yes explicitly when SSP support will be
available in the C library: at this point in time the C library is not
yet built, so gcc cannot detect if it will support SSP or not.
However, it turns out that there are some situations for which it is
also useful to tell gcc explicitly whether the SSP support is
available or not: the gcc logic to decide whether uClibc has SSP
support or not is broken since uClibc-ng bumped the glibc version it
pretends to be.
So, this commit makes sure that we explicitly pass
gcc_cv_libc_provides_ssp both to gcc-initial and gcc-final, and that
we're always passing either 'yes' or 'no'.
Fixes:
http://autobuild.buildroot.org/results/778/778e6309ba834cc70f8243a4f6c664c0bcaeb7c5/
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Musl doesn't implemented wmtp, and its utmp support is not sufficient
to build the latest versions of Busybox, so let's disable wtmp and
utmp support in Busybox for musl toolchains.
We re-use an existing define BUSYBOX_INTERNAL_SHADOW_PASSWORDS that
was used to do some musl-related tweaks to the Busybox configuration
around shadow password functions, and extend it to also do the
utmp/wtmp tweaks. In the process, we rename the define to
BUSYBOX_MUSL_TWEAKS.
Note that BUSYBOX_KCONFIG_FIXUP_CMDS continues to call
BUSYBOX_INTERNAL_SHADOW_PASSWORDS because there is another definition
of this macro under other conditions.
Fixes:
http://autobuild.buildroot.org/results/b96/b96ffad13bca5e6fbf7ce79538aacbfe27b1eff3/
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Acked-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Update the already existing fix for EGL/X11 header issue to fix
an additional problem encountered on my system where I had
compile errors in qeglplatformscreen.cpp. The problem was related
to the wrong order of includes. The X11 headers must always be
included last, as indicated in
http://lists.qt-project.org/pipermail/development/2013-March/010511.html
The fix is done in the existing 0003-xcb-egl-fixes.patch patch, since
it is an additional fix for the same problem.
[Thomas: tweak commit log, and adjust SoB details as suggested by
Arnout.]
Signed-off-by: Marc Andre <marc.andre@netline.ch>
Reviewed-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Allow the BR2_CCACHE_DIR .config option to be overriden by the
BR2_CCACHE_DIR env variable.
This is useful for big projects where in some cases the developers home
directory might be a NFS mount (slow) and real production builds aren't.
Update documentation accordingly as well.
Signed-off-by: Gustavo Zacarias <gustavo.zacarias@free-electrons.com>
Acked-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Ofono's service file was not being installed when systemd was selected
as the init system.
Without ofono.conf in /etc/dbus-1/system.d, ofonod cannot take its
dbus name on the system bus and will fail to start with a permission
denied error.
Signed-off-by: Mike Williams <mike@mikebwilliams.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Without connman.conf in /etc/dbus-1/system.d/, connmand cannot take
its name on the dbus system bus and will fail to start with a
permission denied error.
Signed-off-by: Mike Williams <mike@mikebwilliams.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
In librtmp/Makefile the variable CRYPTO defaults to OpenSSL. When
building with GnuTLS support instead, librtmp.pc includes wrong
libraries:
$ grep Req output/staging/usr/lib/pkgconfig/librtmp.pc
Requires: libssl,libcrypto
using this defconfig
BR2_TOOLCHAIN_BUILDROOT_WCHAR=y
BR2_PACKAGE_GNUTLS=y
BR2_PACKAGE_RTMPDUMP=y
Pass RTMPDUMP_CRYPTO also to INSTALL_*_CMDS to fix this problem.
Patch supposed by Thomas:
http://article.gmane.org/gmane.comp.lib.uclibc.buildroot/129525
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Currently the CodeSourcery toolchains for MIPS can be selected to build
mips32 (revision level 1) targets, but the resulting binaries are built
for mips32r2 instead. This is because these toolchains don't have
library support other than mips32r2, so there is no point to allow the
selection of a mips32 variant with a CodeSourcery MIPS toolchain, since
everything will be built for mips32r2 instead.
Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
It turned out one of the previous fixes (required to build Linux
kernel)
------------------>8-------------------
ARC Binutils: a65b844aed
Buildroot: http://git.buildroot.net/buildroot/commit/?id=2d4e2e238a0ea9395152ae71d882d79b1f35094c
------------------>8-------------------
broke building of some other software packages.
In particular perf built for ARCv2 had corrupted .plt entries that lead
to immediate crash on perf execution.
That's an example of normal .plt entries:
------------------>8-------------------
< 1-st PLT entry >:
12c24: 30 27 8c 7f 0d 00 74 95 ld r12,[pcl,0x000d9574]
12c2c: 21 20 00 03 j.d [r12]
12c30: 0a 24 c0 1f mov r12,pcl
< 2-nd PLT entry >:
12c34: 30 27 8c 7f 0d 00 68 95 ld r12,[pcl,0x000d9568]
12c3c: 21 20 00 03 j.d [r12]
12c40: 0a 24 c0 1f mov r12,pcl
------------------>8-------------------
Note right after jump in its delay-slot r12 gets set with current value
of program counter. This is required for the first symbol resolution,
see implementation of _dl_linux_resolve here:
http://git.uclibc.org/uClibc/tree/ldso/ldso/arc/resolve.S#n46
And that's what we got in .plt after mentioned fixes:
------------------>8-------------------
< 1-st PLT entry>:
13384: 30 27 8c 7f 0f 00 84 75 ld r12,[pcl,0x000f7584]
1338c: 21 20 00 03 j.d [r12]
< 2-nd PLT entry>:
13390: 30 27 8c 7f 0f 00 78 75 ld r12,[pcl,0x000f7578]
13398: 21 20 00 03 j.d [r12]
------------------>8-------------------
Note r12 setup is missing.
That happened because linker thought the size of PLT entry is 12 bytes
(which is exactly the size of PLT entry for ARCv1, read ARC750/770)
while for ARCv2 PLT entry is 16-bytes long. And erroneously trailing 4
bytes were truncated.
Current commit fixes this misbehavior and PLT gets generated properly
again.
Now we have a fix for that issue, see
5df50c6108
This fix is in arc-2.23-dev branch and will be a part of the next
release of ARC tools, so then this patch must be removed from buildroot.
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
This new script uses the data collected by the step_pkg_size
instrumentation hook to generate a pie chart of the size contribution
of each package to the target root filesystem, and two CSV files with
statistics about the package size and file size. To achieve this, it
looks at each file in $(TARGET_DIR), and using the
packages-file-list.txt information collected by the step_pkg_size
hook, it determines to which package the file belongs. It is therefore
able to give the size installed by each package.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Tested-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
This patch adds a global instrumentation hook that collects the list
of files installed in $(TARGET_DIR) by each package, and stores this
list into a file called $(BUILD_DIR)/packages-file-list.txt. It can
later be used to determine the size contribution of each package to
the target root filesystem.
Note that in order to detect if a file installed by one package is
later overriden by another package, we calculate the md5 of installed
files and compare them at each installation of a new package.
Collecting the list of files installed by each package is done
unconditionally, as tests have shown that the performance impact of
doing this is negligible.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Reviewed-by: Ryan Barnett <ryanbarnett3@gmail.com>
Tested-by: Ryan Barnett <ryanbarnett3@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@free-electrons.com>
Autoreconf is not necessary anymore.
WavPack "autodetects" CPU type to enable ASM code. However, the assembly code
for ARM is written for ARMv7 only and building WavPack for an ARM-non-v7
architecture will fail. We explicitly enable ASM for the supported
architectures x86, x64 and ARMv7 and disable it for all others.
Signed-off-by: Jörg Krause <joerg.krause@embedded.rocks>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
The buildroot internal toolchain now adds a wrapper. When we use a
buildroot toolchain as an external toolchain, we want to bypass this
wrapper and call the compiler directly, for two reasons:
1. The options added by the wrapper are not necessarily appropriate
when it is reused as an external toolchain. For instance, ccache
may have been enabled while building the toolchain but not when
using it as an external toolchain.
2. Currently, the wrapper expects to reside in .../usr/bin, but when
used as an external toolchain it will be in .../ext-toolchain/bin.
Therefore, the wrapper can't find the real binary and sysroot
anymore.
To bypass the wrapper, we check for the existence of *.br_real files in
the external toolchain directory. If any such file exists, the wrapper
will add the .br_real suffix for all the wrapped files. Note that the
wrapper doesn't check if the *.br_real exists for each individual
wrapped file, it just assumes that all wrapped files have a
corresponding .br_real. This is currently true but that may change in
the future of course.
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
If an externally built (non-Buildroot) toolchain also wraps the toolchain
executables, there is a risk that it will also use the '.real' extension.
To minimise this risk, use a more buildroot-specific extension instead:
'.br_real', so we can detect that the external toolchain is built using
Buildroot and get to the raw toolchain binaries.
[Peter: reword description]
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Fixes:
CVE-2015-5291 - Remote attack on clients using session tickets or SNI
Also includes countermeasures against Lenstra's RSA-CRT attach for
PKCS#1 v1.5 signatures (1.2.16) and the Logjam attack (1.2.15).
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Reviewed-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Tested-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
On some machines, the network interface is slow to appear. For example,
on the Raspberry Pi, the network interface eth0 is an ethernet-over-USB,
and our standard boot process is too fast, so our network startup script
is called before the USB bus is compeltely enumerated, thus it can't
configure eth0.
Closes#8116.
[Peter: move to S40network, handle multiple interfaces]
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Add upstream patch that fixes a sysfs path in br_set.
The patch is on top of the latest release 1.5, which already dates from
2011.
Signed-off-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
[Thomas:
- Check for Thread::Queue, not Thread:Queue.
- Use 'printf' instead of 'echo -e', since printf is POSIX, but not
'echo -e'.]
Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
apng and tdsc are enabled by default, but they need zlib, otherwise the
compilation will fail with an error like this one:
libavcodec/pngdec.c:35:18: fatal error: zlib.h: No such file or
directory
#include <zlib.h>
^
compilation terminated.
So add an autodep on BR2_PACKAGE_ZLIB to enable or disable support for
apng and tdsc accordingly.
Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
In commit b1dcb1c2 a fix was attempted at fixing a build failure where
sqlcipher finds the distribution tcl and tries to build against it.
sqlcipher has two tcl usage scenarios: host-tcl which is required to
actually build it, and target tcl to build bindings.
Since cross-compilation of the bindings isn't clean it fails as well,
and since it wasn't a feature before either just disable it completely,
since the wrong fix makes the sqlcipher build failures worse.
Fixes:
http://autobuild.buildroot.net/results/fc0/fc0528de7fed2f34f503fe8dd8b4c21ded0d6dff/
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The current commit used for the kernel Git repository for Cubieboard,
274a66a7bfcbaabb88d63e4eba161965383cc416, actually points to 3.0
kernel. This is incorrect since the kernel headers version specified
by the defconfig is 3.4. And anyway, the 3.4 kernel is kind of the
official vendor kernel for Allwinner platforms.
mfld.fr@gmail.com reported in bug #7931 that commit
9a1cd034181af628d4145202289e1993c1687db6 was working for him. It is
the latest commit in the sunxi-3.4 branch. So we switch to using this
commit, which was build tested successfully.
While we're at it, remove the definition of BR2_LINUX_KERNEL_VERSION
from the defconfig: it doesn't make sense to have it defined in a
defconfig, as it's a blind option that gets defined from the value of
BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION when a Git repository is used to
source the kernel.
Fixes#7931.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
As pointed by Rich Fekler on IRC the basic hush shell is pretty much
useless since it doesn't support if conditionals, loops, functions, case
or even interactive mode.
So enable the full feature-set.
Size delta: +10184 bytes uncompressed for blackfin fdpic.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The Advanced XIP File System is a Linux kernel filesystem driver that
enables files to be executed directly from flash or ROM memory rather
than being copied into RAM. It has the ability to store individual
*pages* in a file uncompressed/XIP or compressed/Demand Paged.
This commit only adds support for 'XIP all' mode, so all the files that
have the execute attribute set will be XIP'ed.
At the moment, the FS is not supported in Linux mainline (v4.3-rc5), so
the kernel has to be built with the axfs patches to be able to read it.
Patches can be found here: https://github.com/jaredeh/axfs
[Thomas: rewrap Config.in help text.]
Signed-off-by: Ariel D'Alessandro <ariel@vanguardiasur.com.ar>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Tools for building AXFS Filesystem.
The Advanced XIP File System is a Linux kernel filesystem driver that
enables files to be executed directly from flash or ROM memory rather
than being copied into RAM. It has the ability to store individual
*pages* in a file uncompressed/XIP or compressed/Demand Paged.
Source:
https://github.com/jaredeh/axfs
[Thomas:
- add hash file.
- use $(INSTALL) -D -m 0755 instead of cp for installing mkfs.axfs.]
Signed-off-by: Ariel D'Alessandro <ariel@vanguardiasur.com.ar>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
This commit backports upstream gpsd commit
3e25e2167beb3936de3986fad9b6c9bdec82b81f, which fixes the build of the
NMEA driver.
Fixes Buildroot bug #8401, reported by kevin.alden2@gmail.com.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
systemd is increasingly expecting things to live in /usr/bin, /usr/sbin
or /usr/lib nad not in /bin, /sbin or /lib. It has inherited those
expectations from a Fedora change:
https://fedoraproject.org/wiki/Features/UsrMove
Note however, that systemd does support /usr being on a separate
filesystem; it just expects an initramfs to mount it before the final
switchroot over to the actual rootfs.
But the traditional use-case for Buildroot is not to boot with an
initramfs; although that is totally feasible, that's probably not what
is commonly done in the vast majority of cases.
However, a lot of packages still install stuff directly into /bin,
/sbin or /lib, which systemd may need early-on in the boot process,
even before it may have a chance to mount /usr. Even though we can
tell systemd, at configure-time, where it should expect programs to
be at runtime, it does not make sense to go head-first against an
upstream wa^Hill.
Add an option so that /bin, /sbin and /lib be symlinks to /usr/bin
and /usr/sbin. That option is forcibly enabled when the init system
is systemd.
Note: we need not handle /lib32 or /lib64, as they already are symlinks
to /lib, which means they will automatically be redirected to /usr/lib,
as /usr/lib32 and /usr/lib64 already are.
Furthermore, this means we're no longer supporting a split-usr setup, so
the corresponding configure options have been removed as well for
systemd and, when using a merged /usr, for eudev as well.
In Buildroot, we decided (with this patch) not to support a split-usr
when systemd is used as an init system. This is a design decision, not
a systemd issue. Thus the select is with BR2_INIT_SYSTEMD rather than
with BR2_PACKAGE_SYSTEMD.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Cc: Arnout Vandecappelle <arnout@mind.be>
Cc: Mike Williams <mike@mikebwilliams.com>
Cc: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Cc: Baruch Siach <baruch@tkos.co.il>
Tested-by: Mike Williams <mike@mikebwilliams.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
systemd seems to do its release using their github repository up from
the 221 version.
Since they use the auto generated release, we can't have a hash file.
They don't provide the Makefile.in file in the 'po' directory.
We need to run intltoolize so it's created for us.
Signed-off-by: Maxime Hadjinlian <maxime.hadjinlian@gmail.com>
Tested-by: Mike Williams <mike@mikebwilliams.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
DSP support depends on the core implementation, not on the ISA, so
enabling it for mips64r2 is not correct since you can build a mips64r2
core without DSP support.
Disable mipsdspr1 and mipsdspr2 options by default and let the user
enable them via the BR2_PACKAGE_FFMPEG_EXTRACONF kconfig option, which
will take preference and override the default values.
Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Disabled vala bindings since they're not used by the current buildroot
packages and it requires gobject-introspection which we don't provide
yet.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
python-pypcap calls thez pyrexc Python script directly. This script is
generated by the pyrexc installation with a shebang line that has a
full path to our host-python interpreter. Unfortunately, since Linux
cuts the shebang line at 128 characters, it means that if you have an
output directory with a very very long name, the pyrexc script does
not run.
To solve that, we explicitly invoke pyrexc with the python2
interpreter.
Note that invoking the python2 interpreter directly is safe because
python-pypcap is only available for Python 2.x, so we are just that
$(HOST_DIR)/usr/bin/python2 is available.
Fixes#8281.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Disable CONFIG_FEATURE_SYNC_FANCY in the busybox.config because that
option causes build failures for any uClibc based toolchains since it
requires syncfs() support, which doens't exist in uClibc.
This new option has been introduced in 1.24.0, so despite of disabling
it, we are not losing anything that we had before.
Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
By default, the liquid-dsp configure script looks at the current CPU
to find which x86 CPU extensions are supported. Those checks use
AC_TRY_RUN(), which cannot work in a cross-compilation environment,
and would anyway be wrong.
To fix this, we explicitly pass the appropriate ac_cv_have_<foo>_ext
autoconf cache variables.
Fixes:
http://autobuild.buildroot.org/results/eb0/eb002463ed82de461fae11211415c07883a95386/
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
eventlog is a library for creating structured events from
applications, and is the workhorse behind syslog-ng's own messages.
[Thomas:
- fix alphabetic ordering in package/Config.in, as noticed by
Vicente.
- rewrap Config.in help text and add some URL as a reference (though
the eventlog project doesn't seem to have a real web page)
- remove useless slash at the end of EVENTLOG_SITE
- make the license info more specific: it's a BSD-3c license
- add a hash file.]
Signed-off-by: Chris Packham <judge.packham@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The at91rm9200df_defconfig configuration is really old: it builds a
2.6.38 kernel with the old days kernel patches and a 2010.06
U-Boot. It hasn't been updated since a long time, so let's get rid of
it.
The at91sam9260dfc_defconfig, at91sam9261ek_defconfig and
at91sam9263ek_defconfig refer to kernel defconfigs that no longer
exists, so they fail to build.
Cc: Alexandre Belloni <alexandre.belloni@free-electrons.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
- add qt, qt5base/qt5gui/qt5widgets dependency for qv4l2
(qt dependency was missing, qt5 support was added since 1.8.0)
- fix fix moc/rcc/uic detection in case host versions
of moc-qt5, rcc-qt5 or uic-qt5 are present
Signed-off-by: Peter Seiderer <ps.report@gmx.net>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
[Thomas: minor adjustments to make the script look more like our
standard init scripts.]
Signed-off-by: Benoît Thébaudeau <benoit@wsystem.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Filter out all other uClibc versions, as they containing
serious bugs for mips64.
Signed-off-by: Waldemar Brodkorb <wbx@openadk.org>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The SoC of the Raspberry Pi 1 is an ARM1176JZF-S, which features a VFPv2
FPU, so use the EABIhf target ABI, which is more efficient than EABI.
This is also the default on Raspbian.
Signed-off-by: Benoît Thébaudeau <benoit@wsystem.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
When building in a static only configuration with guile package
enabled, the following error happens:
gc_pthread_redirects.h:37:22: fatal error: dlfcn.h: No such file or
directory
# include <dlfcn.h>
The file gc_pthread_redirects.h comes from bdwgc, which gets built
before make in the autobuild test case indicated below. This header
file is known to incorrectly include <dlfcn.h>, unless GC_NO_DLOPEN is
specified.
IF GC_NO_DLOPEN is defined, another issue arises due to libguile and
libintl both defining locale_charset.
We could have kept the guile support enabled only on dynamic library
configurations, and disable it only for static library
configurations. However, the need for guile support in make on the
target seems highly unlikely, so we'd better simply disabling guile
support, which this commit does.
Fixes:
http://autobuild.buildroot.net/results/814/8143ae0afac139845e5016058d85c800dc8527ad
[Thomas: tweak commit log.]
Signed-off-by: Ryan Barnett <ryanbarnett3@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
These changes allow debugging multithreaded NPTL xtensa applications and
inspect TLS variables.
Signed-off-by: Max Filippov <jcmvbkbc@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
GPU package now includes libraries for GPU2D as well as several tools to
monitor and debug the GPUs.
GPU2D libraries have been tested with the example provided in the
package:
# /usr/share/examples/fsl-samples/g2d/overlay_test/g2d_overlay_test
Overlay rendering time 53861us .
The tools have been tested with the following commands:
# cd /usr/share/examples/viv_samples/vdk/
# apitrace trace --api egl ./tutorial7 &
# gmem_info
... display memory use per PID ...
# killall tutorial7
# apitrace replay tutorial7.trace
# eglretrace tutorial7.trace
[Thomas: tweak the installation logic to be more explicit about paths
being copied, and to use cp -dpfr consistently.]
Signed-off-by: Gary Bisson <gary.bisson@boundarydevices.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The PCI support needs to be checked since this driver is based
on it. Otherwise the build fail with:
#error "This driver requires PCI support to be available"
But this message is concealed by several occurrence of this
one:
error: implicit declaration of function 'pci_find_bus' [-Werror=implicit-function-declaration]
[Thomas:
- fix minor typo in Config.in: s/Enthernet/Ethernet/
- license is "GPLv2, BSD-3c", not "GPLv2 or BSD-3c"
- remove IQVLINUX_PCI_CHECK, until a proper generic solution is
implemented.]
Signed-off-by: Romain Naour <romain.naour@openwide.fr>
Cc: Yann E. MORIN <yann.morin.1998@free.fr>
Cc: Arnout Vandecappelle <arnout@mind.be>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
For a 64bit arm architecture, Buildroot uses arm64 terminology and
from the top-level Makefile KERNEL_ARCH is set to arm64 which is then
passed to the uboot build. This causes a compilation issue as uboot
uses the top-level system architecture as it's $(ARCH). So
arch/$(ARCH)/Makefile doesn't work with arm64 unless we adjust the
arch.
[Thomas:
- rewrap commit message text.
- simplify comment in the code.]
Signed-off-by: Ronak Desai <ronak.desai@rockwellcollins.com>
Signed-off-by: Matt Weber <matthew.weber@rockwellcollins.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
To detect X11 support dbus uses the autoconf macro AC_PATH_XTRA
http://cgit.freedesktop.org/dbus/dbus/tree/configure.ac#n1264
This macro checks for the optional presence of libICE:
http://git.savannah.gnu.org/gitweb/?p=autoconf.git;a=blob;f=lib/autoconf/libs.m4;h=d2040d731f81fc1693e01d118c45d51ad169d56a;hb=HEAD#l472
quoting dbus configure with libICE not present:
checking for IceConnectionNumber in -lICE... no
quoting dbus configure with libICE being present:
checking for IceConnectionNumber in -lICE... yes
The binary usr/bin/dbus-launch is being linked to libICE and libSM if
the packages are available:
$ output/host/usr/bin/i586-buildroot-linux-uclibc-readelf -a
output/target/usr/bin/dbus-launch | grep NEEDED
0x00000001 (NEEDED) Shared library: [libdbus-1.so.3]
0x00000001 (NEEDED) Shared library: [libSM.so.6]
0x00000001 (NEEDED) Shared library: [libICE.so.6]
0x00000001 (NEEDED) Shared library: [libX11.so.6]
0x00000001 (NEEDED) Shared library: [libc.so.1]
To get a reproducable build add libSM as optional dependency to dbus,
libSM pulls in the dependency to libICE.
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
- Add support for mips32r6 and mips64r6 target architecture variants
- Disable unsupported gcc versions
- Disable unsupported binutils versions
- Disable unsupported external toolchains
- Disable unsuported C libraries
- Add a hook in order to make glibc compile for MIPS R6.
[Thomas: slightly tweak the glibc hack explanation, to make it
hopefully clearer.]
Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
>From [1]:
A couple of cleanups, one notable fix: we now transparently fix invalid
ABS_MT_TRACKING_ID ranges to something sensible.
The touchpad-edge-detector tool prints out suggested hwdb rules for
resolution overrides. And since the resolution is the main thing to fix on a
device, the libevdev-tweak-device now has a --resolution argument to quickly
set the resolution on the x/y axes.
[1] http://lists.freedesktop.org/archives/input-tools/2015-August/001210.html
Signed-off-by: Peter Seiderer <ps.report@gmx.net>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
[Thomas:
- replicate the ffmpeg "depends on" related to the broken NIOS2
toolchains to the BR2_PACKAGE_SQUEEZELITE_FFMPEG option.
- use the github helper function.
- add hash file.]
Signed-off-by: Hiroshi Kawashima <kei-k@ca2.so-net.ne.jp>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The main .service file is installed by audit.
We are using tmpfiles mechanisms to create the log directory, which
would not exists otherwise since /var/log points to /tmp
[Thomas: add explicit --disable-systemd when systemd is not used.]
Signed-off-by: Maxime Hadjinlian <maxime.hadjinlian@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
[Thomas:
- add patch to fix autoreconf issue, and use LIQUID_DSP_AUTORECONF =
YES instead of an horrible hack calling aclocal/autoconf manually.
- use the github macro instead of hand-coding <pkg>_SITE and
<pkg>_SITE_METHOD. This allows to remove <pkg>_SITE_METHOD
entirely.
- use a full hash as the <pkg>_VERSION
- remove trailing whitespace everywhere.
- use one single assignment of LIQUID_DSP_CONF_OPTS
- fix the comment about the eglibc/musl dependency (it was only
mentioning eglibc, and the condition was inverted)
- add the musl/glibc dependency on the package option itself
- make the package depend on dynamic library support, since the
makefile unconditionally builds a shared library.
- add hash file.]
Signed-off-by: Guillaume William Bres <guillaume.bressaix@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Add patch to fix typo for arm predefined macrco in (__ARM_ARCH_6KZ__
vs. __ARM_ARCH_6ZK__) in atomicops_internals_arm_gcc.h
Fixes#8391: Node.js 0.12.7 fails to build on raspberry_pi defconfig
Signed-off-by: Peter Seiderer <ps.report@gmx.net>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Currently, nl80211 support is conditionnal with libnl being enabled,
using implicit dependencies. This causes problems since it is not
obvious and wpa_supplicant without nl80211 isn't what most user expects.
If nl80211 isn't enabled, then buildroot only enables the wext driver,
which will only work if some deprecated kernel feature isn't left
disabled, or if using a outdated out-of-tree linux driver which doesn't
use the cfg80211 infrastructure.
This makes nl80211 support an explicit option, which
"select BR2_PACKAGE_LIBNL" accordingly. To handle upgrades nicely, it
would have been nice to have "default y if BR2_PACKAGE_LIBNL", but
Kconfig treats this as a circular dependency. So instead, this enables
the option by default, which is less worse than not enabling nl80211
when it was previously implicitely enabled.
[Thomas:
- rewrap Config.in help text
- add comment about thread dependency.]
Signed-off-by: Nicolas Cavallari <nicolas.cavallari@green-communications.fr>
Reviewed-by: Gary Bisson <gary.bisson@boundarydevices.com>
Tested-by: Gary Bisson <gary.bisson@boundarydevices.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
In order to remove '/home/ftp' and the ftp user from the 'skeleton'
package, we need to add the creation of the ftp users to the package so
it still work out of the box (with an anonymous user).
[Thomas:
- remove the VSFTPD_FIX_HOME_PERMISSIONS variable, and simply put the
additional command in VSFTPD_INSTALL_TARGET_CMDS.
- slightly tweak the comment.]
Signed-off-by: Maxime Hadjinlian <maxime.hadjinlian@gmail.com>
Reviewed-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
In order to remove '/home/ftp' and the ftp user from the 'skeleton'
package, we need to add the creation of the ftp users to the package so
it still work out of the box (with an anonymous user).
Signed-off-by Maxime Hadjinlian <maxime.hadjinlian@gmail.com>
Reviewed-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
- add AMD GPU driver (available since 2.4.63)
- freedreno is no longer experimental (since 2.4.59)
- add NVIDIA Tegra driver (available since 2.4.59)
- update help texts (install vs. installs, change to complete
sentences)
Signed-off-by: Peter Seiderer <ps.report@gmx.net>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
This is necessary to move efl packages to package directory
and prepare the efl version bump to the latest release.
Signed-off-by: Romain Naour <romain.naour@openwide.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Package media-ctl is out-dated, source (and developement) have been moved
to v4l-utils since June 2014. Up-to-date version is available in
the libv4l package (BR2_PACKAGE_LIBV4L/BR2_PACKAGE_LIBV4L_UTILS).
Signed-off-by: Peter Seiderer <ps.report@gmx.net>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
- add missing include, fixes:
fbio.cpp:33:8: error: ‘fd_set’ does not name a type
static fd_set fds;
improxy.cpp:439:3: error: ‘fd_set’ was not declared in this scope
- add missing WAIT_ANY define, fixes:
fbterm.cpp: In member function ‘void FbTerm::processSignal(u32)’:
fbterm.cpp:212:22: error: ‘WAIT_ANY’ was not declared in this scope
s32 pid = waitpid(WAIT_ANY, 0, WNOHANG);
Fixes:
http://autobuild.buildroot.net/results/ab2/ab2334700b44bac233994b76f2acf1795f0
Signed-off-by: Peter Seiderer <ps.report@gmx.net>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
This commit fixes the following recursive dependency:
package/python/Config.in:5:error: recursive dependency detected!
package/python/Config.in:5: symbol BR2_PACKAGE_PYTHON is selected by BR2_PACKAGE_GNURADIO_PYTHON
package/gnuradio/Config.in:46: symbol BR2_PACKAGE_GNURADIO_PYTHON is selected by BR2_PACKAGE_GNURADIO_UTILS
package/gnuradio/Config.in:55: symbol BR2_PACKAGE_GNURADIO_UTILS depends on BR2_PACKAGE_PYTHON_NUMPY_ARCH_SUPPORTS
package/python-numpy/Config.in:1: symbol BR2_PACKAGE_PYTHON_NUMPY_ARCH_SUPPORTS depends on BR2_PACKAGE_PYTHON
by replacing the "select BR2_PACKAGE_PYTHON" by a "depends on
BR2_PACKAGE_PYTHON", and ditto for the BR2_PACKAGE_GNURADIO_PYTHON
selection.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Some gnuradio python blocks need python-numpy to be present. Without
python-numpy, gnuradio-python based apps fails, on runtime, with
traceback like:
Traceback (most recent call last):
File "./top_block.py", line 18, in <module>
from gnuradio import analog
File "/usr/lib/python2.7/site-packages/gnuradio/analog/__init__.py", line 35, in <module>
from am_demod import *
File "/usr/lib/python2.7/site-packages/gnuradio/analog/am_demod.py", line 22, in <module>
from gnuradio import gr
File "/usr/lib/python2.7/site-packages/gnuradio/gr/__init__.py", line 44, in <module>
from top_block import *
File "/usr/lib/python2.7/site-packages/gnuradio/gr/top_block.py", line 30, in <module>
from hier_block2 import hier_block2
File "/usr/lib/python2.7/site-packages/gnuradio/gr/hier_block2.py", line 26, in <module>
import pmt
File "/usr/lib/python2.7/site-packages/pmt/__init__.py", line 58, in <module>
from pmt_to_python import pmt_to_python as to_python
File "/usr/lib/python2.7/site-packages/pmt/pmt_to_python.py", line 22, in <module>
import numpy
ImportError: No module named numpy
Signed-off-by: Gwenhael Goavec-Merou <gwenhael.goavec-merou@trabucayre.com>
Reviewed-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Reviewed-by: Samuel Martin <s.martin49@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Opencv3 select python-numpy. To avoid duplicating architecture
dependencies, an hidden variable has been added to python-numpy
package. This patch propagate this modification to the opencv3
package.
Signed-off-by: Gwenhael Goavec-Merou <gwenhael.goavec-merou@trabucayre.com>
Reviewed-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Reviewed-by: Samuel Martin <s.martin49@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Some packages selects python-numpy. This package has a some CPU specific
code. To simplify and avoid duplicate dependencies this patch introduce an
hidden ARCH_SUPPORTS variable.
[Thomas: fix the definition of the new option to make sure its value
is actually 'y' when a supported architecture is used.]
Signed-off-by: Gwenhael Goavec-Merou <gwenhael.goavec-merou@trabucayre.com>
Reviewed-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Reviewed-by: Samuel Martin <s.martin49@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
- Bump to version 2.0
- Switch the download site to GitHub
- Apply an upstream patch to fix a missing define
- Add a hash file
- Rewrap the help text to 72 characters length
- Change the official website
[Thomas: fix s/MAKE_ENV/TARGET_MAKE_ENV/.]
Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Fixes:
CVE-2015-5289: json or jsonb input values constructed from arbitrary
user input can crash the PostgreSQL server and cause a denial of
service.
CVE-2015-5288: The crypt() function included with the optional pgCrypto
extension could be exploited to read a few additional bytes of memory.
No working exploit for this issue has been developed.
sparc build fix patch upstream so drop it.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Reviewed-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Tested-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
In order to enable JIT support on ARM, webkitgtk24 currently looks at
BR2_ARM_ENABLE_NEON, which is not correct: BR2_ARM_CPU_HAS_NEON should
be used instead.
The BR2_ARM_ENABLE_NEON is only visible for cores that select
BR2_ARM_CPU_MAYBE_HAS_NEON, in order to allow to specify if his
particular SoC has chosen to integrate NEON or not. And if so,
BR2_ARM_CPU_HAS_NEON gets selected.
BR2_ARM_CPU_HAS_NEON is in fact selected in two different ways:
- Either directly by the CPU core selection, if NEON is mandatory in
this CPU core.
- Or by BR2_ARM_ENABLE_NEON, for CPU cores where NEON support is
optional.
So really, BR2_ARM_CPU_HAS_NEON is what should be used by packages.
Cc: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Acked-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Most code is GPLv2+ or compatible except for one file that is
GPLv2-only, hence as a whole is GPLv2 (see Copyright).
Also kill some whitespace and make the only hard dependency
(host-pkgconf) a hard dependency, not an addition, since it's not
conditional.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
- Bump version to 1.0.25
- Update hash file. The hash value provided by the alioth.debian.org URL
is wrong, so use the one provided by www.sane-project.org. I have
reported this upstream.
- Remove unnecessary patches:
0002-remove-unsafe-headers-path.patch
0003-remove-cups-and-systemd-support.patch
Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
- Bump to version 2.6.1.
- Update hash file.
- Remove includes hooks since they are no longed needed.
Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Bump U-boot version to 2015.07 from the mainline repository. Since there
is SPL support for the wandboard in the U-boot 2015.07, it is now
possible to boot the same U-boot image for all wandboard variants
(solo/dual/quad).
Bump kernel version to 3.14.28_1.0.0 from the wandboard git repository.
Tested on Wandboard Solo, Wandboard Dual and Wandboard Quad.
Signed-off-by: Sergio Prado <sergio.prado@e-labworks.com>
Tested-by: Vivien Didelot <vivien.didelot@savoirfairelinux.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Since the upgrade to pkgconf 0.9.12 all directories and variables with
directories are sysroot-prefixed, whereas with the old patch only some
variables were (includedir, mapdir, sdkdir, libdir).
libglib2 uses a giomoduledir=${libdir}/gio/modules variable in
gio-2.0.pc, which when expanded via sysroot by pkgconf at configure time
points to the staging directory (via libdir expansion).
When target install gets called the gio module gets installed to staging
rather than target, with the obvious consequences this has.
Work-around this pkgconfig abuse by overriding GIO_MODULE_DIR at target
install time.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
CVE-2015-4491 already fixed in the release so drop patch.
Fixes a heap overflow with a gif file and a heap overflow and DoS with a
tga file. CVEs not assigned yet.
Tests disabled since they fail to build properly on uClibc toolchains.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
It turns out that uClibc only enables the long double math functions
for some architectures (god know why, so what if long double is the
same as double, these functions should still be defined). Since
python-numpy links with those functions, the module will fail to load
on ARM, MIPS and SH.
However, python-numpy actually checks for each function if it is really
available. Only, it overrides that check for ldexpl and frexpl when
long double is the same as double (i.e. in exactly the case the uClibc
doesn't have these functions).
So add another exception for this.
Upstream-status: not applicable (code has changed too much)
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Acked-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Tested-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Probably a leftover from our last fs infra reworking a couple of years
ago.
Incidentally, also added a newline at the end of the file.
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Drop patches, they aren't required any more.
It fixes a bug where inline comments cause issues, like:
Libs: -lblah # -lbleh
...it would make pkgconf search for the '#' package
This is required for the nettle 3.1.1 upgrade since howgeed.pc adjusts
Libs according to static/dynamic builds using the comment feature.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
On aarch64, the image name is always Image, so let's add support for
that.
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
defconfigs that use U-Boot 2015.07 need host-dtc to build
properly.
Signed-off-by: Davide Viti <d.viti@infosolution.it>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
zlib isn't optional even though it seems like it, fixes build failure
such as:
log.cc:51:18: fatal error: zlib.h: No such file or directory
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
libsigc isn't used/needed any longer so drop it.
And switch to the proper homepage rather than the tarball repository.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
libsigc isn't used/needed any longer so drop it.
And switch to the proper homepage rather than the tarball repository.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Fixes#8386
We should check if BR_CROSS_PATH_ABS is defined, not if it evalutates to
true for the pre processor.
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
- Bump to version 0.9.6
- Add a hash file.
- Change the website URL to the new official one.
- Tweak the 0001-cross_compile.patch for the new version.
Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
- Bump to version 0.13.6.
- Add a hash file.
- Change the website URL to the new official one.
- Help the build system to find the zlib headers, otherwise the
configure script will fail like this:
checking if zlib is wanted... yes
checking for inflateEnd in -lz... no
checking zlib.h usability... no
checking zlib.h presence... no
checking for zlib.h... no
configure: error: either specify a valid zlib installation with
--with-zlib=DIR or disable zlib usage with --without-zlib
- Disable instrumentation support by default since it avoids runtime
failures on rtorrent for some architectures like MIPS, PowerPC or ARM:
https://github.com/rakshasa/rtorrent/issues/156
- Tweak the 0001-cross_compile.patch for this new version.
Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
$(wildcard ...) in make doesn't sort the files, so the order of the
hashed files is not predictable. Therefore, the ccache hash could
change from one build to another. We don't want that, so sort the
files explicitly.
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
olimex_a20_olinuxino_lime_defconfig and zedboard_defconfig use U-Boot
2015.07, and they need host-dtc to build properly.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Some U-Boot configurations require the Device Tree compiler to be
available, so we need to depend on host-dtc (example configuration:
zynq_zed).
However, we don't want to build it unconditionally, since the vast
majority of U-Boot configurations don't need it (and host-dtc itself
has a bunch of dependencies).
So, we simply add a Config.in option that allows users to indicate
whether their U-Boot needs DTC or not, and depend on host-dtc if this
option is enabled.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Reviewed-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Having a host variant of dtc is needed for example for U-Boot, which
uses the Device Tree for a number of platforms.
In addition, now that we have a proper host-dtc package, it is no
longer needed for the linux package to install the host dtc compiler:
users interested in having the host dtc compiler can simply enable
this package.
A Config.in.host option is added to build host-dtc, because the
initial reason why the host DTC built by the kernel was installed in
$(HOST_DIR)/usr/bin (commit 707d44d0a2
from Thomas DS) was:
Having dtc as a host tool can be useful for users that have a
custom boot scenario where the device tree is not embedded in the
kernel.
[Thomas:
- rework the commit log.]
[Peter: keep the (renamed) linux version]
Signed-off-by: Peter Seiderer <ps.report@gmx.net>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
So it doesn't conflict with host-dtc. The Linux kernel version may be a
patched version supporting E.G. overlays.
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
BR2_PACKAGE_PORTAUDIO_ALSA is misspelled in one place, resulting in
alsa-lib not being listed in the dependencies.
Signed-off-by: Luca Ceresoli <luca@lucaceresoli.net>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Those two comments:
- are exactly the same
- have the same dependencies (except for arm/armeb)
So, make it a common comment. It will be useful to have that comment
when we introduce new Linaro toolchain versions.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The Barebox, AT91Bootstrap and Linux patches for the Calao QIL A9260
board are all located in the same directory, board/calao/qil-a9260/,
with only a prefix to indicate to which component they apply.
Unfortunately, since commit 0eba4759fa
("packages: apply custom patches using *.patch instead of
<pkg>-*.patch"), the logic to apply custom patches in Barebox and
AT91Bootstrap has been changed from applying <package>-*.patch to
applying *.patch (in order to be consistent with what we do for all
packages in Buildroot).
However, this had the effect of trying to apply both the AT91Bootstrap
and Barebox patches on both packages, which obviously cannot work.
This commit fixes that by moving patches around, and switching to use
BR2_GLOBAL_PATCH_DIR for all of Barebox, AT91Bootstrap and Linux
patches.
In addition, the defconfig was not specifying explicitly which Barebox
version to use, so right now it's trying to use Barebox 2015.09, on
which the board-specific patch does not apply. So we've forced to use
Barebox 2012.08, which was the lastest release available at the time
the defconfig was initially contributed.
Cc: Gregory Hermant <gregory.hermant@calao-systems.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Both the Barebox and AT91Bootstrap patches for the Calao USB A9G20
board are located in the same directory, board/calao/usb-a9g20-lpw/,
with only a prefix making a difference between whether they apply to
Barebox or AT91Bootstrap.
Unfortunately, since commit 0eba4759fa
("packages: apply custom patches using *.patch instead of
<pkg>-*.patch"), the logic to apply custom patches in Barebox and
AT91Bootstrap has been changed from applying <package>-*.patch to
applying *.patch (in order to be consistent with what we do for all
packages in Buildroot).
However, this had the effect of trying to apply both the AT91Bootstrap
and Barebox patches on both packages, which obviously cannot work.
This commit fixes that by moving patches around, and switching to use
BR2_GLOBAL_PATCH_DIR.
Cc: Gregory Hermant <gregory.hermant@calao-systems.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
This defconfig tries to fetch its kernel source code and U-Boot source
code from gitorious.org, which is not longer available. Therefore,
this defconfig has been failing to build since quite some time. Since
there's no obvious other place to grab the kernel and u-boot source
code, and the defconfig was not updated since a long time, let's
simply get rid of it.
[Peter: also drop README]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
In commit b0f025386f a patch was added
to make sure that python-numpy does work in uClibc. This patch was
needed for the x86 architecture, because uClibc in fact does support
fenv for x86. However, we don't turn on this support in our uClibc
config. Because the Config.in depends still allowed uClibc for x86,
this lead to a built failure, which lead to the fix in commit b0f02538.
But since this fix also fixes it for all other (supported)
architectures, we can just remove the !uClibc dependency completely.
This is also propagated to the reverse dependency in opencv3.
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Cc: Gwenhael Goavec-Merou <gwenhael.goavec-merou@trabucayre.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
nfs-utils has been patched to install only the needed systemd unit files
supported.
Also tmpfiles was needed because the folder /run/nfs is a tmpfs
and nfs-utils need some files to be there to work correctly.
Signed-off-by: Aurélien Chabot <aurelien@chabot.fr>
[Maxime: Remove patches included originally in the patch as they have
have been merged upstream in v1.3.3]
Signed-off-by Maxime Hadjinlian <maxime.hadjinlian@gmail.com>
[Thomas:
- add comment in nfs-utils_env.sh to explain why an empty script is
needed.
- remove incorrect indentation.]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
lz4 offers a high compression mode. A minimalistic file system shrinks by about 15%.
[Peter: Unconditionally use hc mode for lz4 instead of introducing another option]
Signed-off-by: Matthias Weisser <m.weisser.m@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
We're disabling fenv.h usage on i386 because it is not available in
musl/uclibc (and not musl/glibc as was written).
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
With support from assembler this option allows compiling huge functions,
where single literal pool at the beginning of a function may not be
reachable by L32R instructions at its end.
Currently assembler --auto-litpools option cannot deal with literals
used from multiple locations separated by more than 256 KBytes of code.
Don't turn constants into literals, instead use MOVI instruction to load
them into registers and let the assembler turn them into literals as
necessary.
Signed-off-by: Max Filippov <jcmvbkbc@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Auto-litpools is the automated version of text-section-literals: literal
pool candidate frags are planted every N frags and during relaxation
they are turned into actual literal pools where literals are moved to
become reachable for their first reference by L32R instruction.
Signed-off-by: Max Filippov <jcmvbkbc@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
One of the gcc configure options that we hash for ccache is
--with-pkgversion which is set to something like Buildroot
2015.11-git-00426-ge7e7e4f - i.e., it will change with every buildroot
commit. That's obviously not wanted, so substitute this away.
Also add a \n to the printf so the output is a bit more readable.
[Peter: update documentation to match]
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
When building in a different output directory than the original build,
there will currently be a lot of ccache misses because in many cases
there is some -I/... absolute path in the compilation. Ccache has an
option CCACHE_BASEDIR to substitute absolute paths with relative paths,
so they wil be the same in the hash (and in the output).
Since there are some disadvantages to this path rewriting, it is made
optional as BR2_CCACHE_USE_BASEDIR. It defaults to y because the
usefulness of ccache is severely reduced without this option.
In addition to CCACHE_BASEDIR, we also substitute away the occurences
of $(HOST_DIR) in the calculation of the compiler hash. This is done
regardless of the setting of BR2_CCACHE_USE_BASEDIR because it's
quite harmless.
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Our current ccache disables hashing of the compiler executable itself,
because using the default 'mtime' doesn't work in buildroot: we always
rebuild the compiler, so the mtime is always different, so the cache
always misses.
However, in the current situation, if a user changes the compiler
configuration (which would result in the compiler generating different
object files than before) and does 'make clean all', ccache may in fact
reuse object files from the previous run. This rarely gives problems,
because
(1) the cache expires quite quickly (it's only 1GB by default),
(2) radically changing compiler options will cause cache misses because
different header files are used,
(3) many compiler changes (e.g. changing -mtune) have little practical
effect because the resulting code is usually still compatible,
(4) we currently don't use CCACHE_BASEDIR, and almost all object files
will contain an absolute path (e.g. in debug info), so when
building in a different directory, most of it will miss,
(5) we do mostly build test, and many of the potential problems only
appear at runtime.
Still, when ccache _does_ use the wrong cached object files, the
effects are really weird and hard to debug. Also, we want reproducible
builds and obviously the above makes builds non-reproducible. So we
have a FAQ entry that warns against using ccache and tells the user to
clear the cache in case of problems.
Now that ccache is called from the toolchain wrapper, it is in fact
possible to at least use the 'mtime' compiler hash for the external
toolchain and for the host-gcc. Indeed, in this case, the compiler
executable comes from a tarball so the mtime will be a good reference
for its state. Therefore, the patch (sed script) that changes the
default from 'mtime' to 'none' is removed.
For the internal toolchain, we can do better by providing a hash of
the relevant toolchain options. We are only interested in things that
affect the compiler itself, because ccache also processes the header
files and it doesn't look at libraries because it doesn't cache the
link step, just compilation. Everything that affects the compiler
itself can nicely be summarised in $(HOST_GCC_FINAL_CONF_OPTS). Of
course, also the compiler source itself is relevant, so the source
tarball and all the patches are included in the hash. For this purpose,
a new HOST_GCC_XTENSA_OVERLAY_TAR is introduced.
The following procedure tests the ccache behaviour:
Use this defconfig:
BR2_arm=y
BR2_CCACHE=y
make
readelf -A output/build/uclibc-1.0.6/libc/signal/signal.os
-> Tag_CPU_name: "ARM926EJ-S"
Now make menuconfig, change variant into BR2_cortex_a9
make clean; make
readelf -A output/build/uclibc-1.0.6/libc/signal/signal.os
-> Tag_CPU_name: "ARM926EJ-S"
should be "Cortex-A9"
After this commit, it is "Cortex-A9".
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Cc: Danomi Manchego <danomimanchego123@gmail.com>
Cc: Károly Kasza <kaszak@gmail.com>
Cc: Samuel Martin <s.martin49@gmail.com>
Cc: Romain Naour <romain.naour@openwide.fr>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
By moving the ccache call to the toolchain wrapper, the following
scenario no longer works:
make foo-dirclean all BR2_CCACHE=
That's a sometimes useful call to check if some failure is perhaps
caused by ccache.
We can enable this scenario again by exporting BR_NO_CCACHE when
BR2_CCACHE is not set, and by handling this in the toolchain wrapper.
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Tested-by: Romain Naour <romain.naour@openwide.fr>
Reviewed-by: Romain Naour <romain.naour@openwide.fr>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Although this patch is still relevant for upstream, we don't need it
anymore in buildoort because we no longer have _ARG1.
Note that it would be relevant again if we would add host-qpid-proton.
However, the 0.10 release already has the fix.
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Reviewed-by: Romain Naour <romain.naour@openwide.fr>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
All the complexity with the different ways that CMAKE_C_COMPILER and
CMAKE_C_COMPILER_ARG1 can be set are no longer needed, it's all handled
by the toolchain wrapper now.
Note that it is still necessary to handle this for the host build.
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Reviewed-by: Romain Naour <romain.naour@openwide.fr>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Now the ccache handling has moved to the toolchain wrapper, it is no
longer necessary to pass TARGET_CC_NOCCACHE.
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Reviewed-by: Romain Naour <romain.naour@openwide.fr>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Since we always have a toolchain wrapper now, we can move the ccache
call to the toolchain wrapper.
The hostcc ccache handling obviously stays.
The global addition of ccache to TARGET_CC/CXX is removed, but many
individual packages and infras still add it. This means we have a
chain like this: ccache -> toolchain-wrapper -> ccache -> gcc
However, this is fairly harmless: for cache misses, the inner ccache
just adds overhead and for cache hits, the inner ccache is never
called. Later patches will remove these redundant ccache calls.
As a side effect, perl now supports ccache as well.
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Cc: Danomi Manchego <danomimanchego123@gmail.com>
Cc: Károly Kasza <kaszak@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Now that the calls to gcc always pass through the toolchain wrapper, it
is no longer necessary to patch gcc to support poisoning.
This does have the disadvantage that there is no unsafe path check for
libc, libgcc and libstdc++ (all of these are built before the wrapper
exists). But we can assume that the toolchain components themselves
should be pretty safe.
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Reviewed-by: Romain Naour <romain.naour@openwide.fr>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
We have a toolchain wrapper for external toolchain, but it is also
beneficial for internal toolchains, for the following reasons:
1. It can make sure that BR2_TARGET_OPTIMIZATION is passed to the
compiler even if a package's build system doesn't honor CFLAGS.
2. It allows us to do the unsafe path check (i.e. -I/usr/include)
without patching gcc.
3. It makes it simpler to implement building each package with a
separate staging directory (per-package staging).
4. It makes it simpler to implement a compiler hash check for ccache.
The wrapper is reused from the external toolchain. A third CROSS_PATH_
option is added to the wrapper: in this case, the real executable is in
the same directory, with the extension .real.
The creation of the simple symlinks is merged with the creation of the
wrapper symlinks, otherwise part of the -gcc-ar handling logic would
have to be repeated.
The complex case-condition could be refactored with the one for the
external toolchain, but then it becomes even more complex because
they each have special corner cases. For example, the internal
toolchain has to handle *.real to avoid creating an extra indirection
after host-gcc-{final,initial}-rebuild.
Instead of creating the .real files, it would also have been possible
to install the internal toolchain in $(HOST_DIR)/opt, similar to what
we do for the external toolchain. However, then we would also have to
copy things to the sysroot and do more of the magic that the external
toolchain is doing. So keeping it in $(HOST_DIR)/usr/bin is much
simpler.
Note that gcc-initial has to be wrapped as well, because it is used for
building libc and we want to apply the same magic when building libc.
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Cc: Fabio Porcedda <fabio.porcedda@gmail.com>
Cc: Jérôme Oufella <jerome.oufella@savoirfairelinux.com>
Reviewed-by: Romain Naour <romain.naour@openwide.fr>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
The toolchain wrapper will be reused for the internal toolchain, so it
belongs in the toolchain directory. Also, the ext- prefix is removed
from it. The build commands are moved to a new toolchain-wrapper.mk.
The wrapper arguments that are also relevant for the internal toolchain
wrapper are moved to toolchain-wrapper.mk, the rest stays in
toolchain-external.mk.
While we're at it, move the building of the toolchain wrapper to the
build step of toolchain-external. There is no specific reason to do
this, other than that it fits better semantically. Also remove the
MESSAGE call, otherwise we'd see:
>>> toolchain-external undefined Building
>>> toolchain-external undefined Building toolchain wrapper
/usr/bin/gcc ...
Having an extra "Building toolchain wrapper' message is pointless.
The useless condition on $(BR2_TARGET_OPTIMIZATION) is removed. It was
always true because it wasn't qstrip'ped first, so clearly it works
without that condition as well.
Also rewrapped some comments and removed the 'external' reference.
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Cc: Fabio Porcedda <fabio.porcedda@gmail.com>
Cc: Jérôme Oufella <jerome.oufella@savoirfairelinux.com>
Reviewed-by: Romain Naour <romain.naour@openwide.fr>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
For some external toolchain vendors the actual source code URL can be simply
derived from the binary file URL.
Here we obtain TOOLCHAIN_EXTERNAL_ACTUAL_SOURCE_TARBALL for all Mentor and
Linaro toolchains with a few $(subst) calls.
Signed-off-by: Luca Ceresoli <luca@lucaceresoli.net>
Cc: Thomas De Schampheleire <patrickdepinguin@gmail.com>
Cc: Arnout Vandecappelle <arnout@mind.be>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The FOO_SITE/FOO_SOURCE variables usually point to a tarball containing
source code.
For the downloaded external toolchains this is not true, the "source"
tarball actually contains binaries. This is fine for making Buildroot
work, but for legal-info we really want to ship real source code, not
binaries.
Luckily, some (hopefully all) toolchain vendors publish a downloadable
tarball containing the source code counterpart for their binary
packages.
Here we allow the user to declare the URL of this other tarball in the
pair of variables FOO_ACTUAL_SOURCE_TARBALL (by default equal to
FOO_SOURCE) and FOO_ACTUAL_SOURCE_SITE (by default equal to FOO_SITE).
If the "actual source" package can be downloaded from the same
directory as the binary package, then only FOO_ACTUAL_SOURCE_TARBALL
needs to be set.
Note this change is not strictly toolchain-specific: it might be useful
for other packages that happen to ship binaries in the same way.
[Thomas:
- remove "the source code has not been saved" warning that could
never be triggered due to how the conditions were
organized. Discussed with Luca live during the meeting.]
Signed-off-by: Luca Ceresoli <luca@lucaceresoli.net>
Cc: Thomas De Schampheleire <patrickdepinguin@gmail.com>
Cc: Arnout Vandecappelle <arnout@mind.be>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
There's a lot of code in /etc/profile, which doesn't really belong in a
minimal default skeleton.
Also, add an 'unset i' to avoid clutter.
If the user has a specific needs, it needs to be added in
/etc/profile.d/ by a post-build script.
Signed-off-by Maxime Hadjinlian <maxime.hadjinlian@gmail.com>
Reviewed-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Reviewed-by: Luca Ceresoli <luca@lucaceresoli.net>
Tested-by: Luca Ceresoli <luca@lucaceresoli.net>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Not needed anymore since the URLs have been cleared, the manual states
they are illegal and a check has been introduced to notice future
mistakes.
Signed-off-by: Luca Ceresoli <luca@lucaceresoli.net>
Reviewed-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
A trailing slash in FOO_SITE is useless, since Buildroot automatically adds
a slash between FOO_SITE and the filename as appropriate.
Moreover it is potentially harmful, which led to introducing a workaround
to strip them:
commit 1cbffbd015
Author: Shawn J. Goff <shawn7400@gmail.com>
Date: Fri Apr 12 09:40:30 2013 +0000
eliminate double slashes caused by FOO_SITE ending in a slash
When a FOO_SITE variable ends in a slash and gets joined with a
FOO_SOURCE variable like $(FOO_SITE)/$(FOO_SOURCE), the resulting URI
has a double slash. While double-slashes are fine in unix paths, they
are reserved in URIs - the part following '//' must be an authority.
So let's ban trailing slashes entirely. They have all been removed in
a 7b0e757fb8, now add a check to error out loudly in case a new one
is added.
Example commands to test this check:
$ make busybox-dirclean busybox-source
rm -Rf /home/murray/devel/buildroot/output/build/busybox-1.23.2
busybox-1.23.2.tar.bz2: OK (md5: 7925683d7dd105aabe9b6b618d48cc73)
busybox-1.23.2.tar.bz2: OK (sha1: 7f37193cb249f27630e0b2a2c6c9bbb7b1d24c16)
$
$ make BUSYBOX_SITE=http://www.busybox.net/downloads/ busybox-dirclean busybox-source
rm -Rf /home/murray/devel/buildroot/output/build/busybox-1.23.2
BUSYBOX_SITE (http://www.busybox.net/downloads/) cannot have a trailing slash
make[1]: *** [/home/murray/devel/buildroot/output/build/busybox-1.23.2/.stamp_downloaded] Error 1
make: *** [_all] Error 2
$
Signed-off-by: Luca Ceresoli <luca@lucaceresoli.net>
Cc: Arnout Vandecappelle <arnout@mind.be>
Cc: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Trailing slashes are going to be declared illegal from FOO_SITE
variables.
But Buildroot internally generates such a variable when using a custom
external toolchain (i.e. BR2_TOOLCHAIN_EXTERNAL_CUSTOM). This is
because TOOLCHAIN_EXTERNAL_SITE is set to
$(dir $(call qstrip,$(BR2_TOOLCHAIN_EXTERNAL_URL))), and $(dir)
leaves a trailing slash.
Fix it using patsubst, just like linux and the bootloaders do.
Signed-off-by: Luca Ceresoli <luca@lucaceresoli.net>
Reported-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Cc: Arnout Vandecappelle <arnout@mind.be>
Reviewed-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Virtualizer Development Kits (VDKs) are software development kits
containing design-specific virtual prototypes as well as debug and
analysis tools and sample software.
With this change we add support for VDK based on ARC HS38 core.
Note that FS-overlay is required to allow instantiation of console on
both serial port and LCD screen simultaneously.
Cc: Peter Korsgaard <peter@korsgaard.com>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The 0001-CMakeLists-add-rules-for-installation.patch patch has been
merged upstream 7 minutes after it was submitted. So let's bump to the
latest upstream version and drop the no longer needed patch.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
ZXing was hosted on Google Code, which is a closing. The current link
was already redirecting to the github repo.
But upstream is no longer supporting the cpp bindings, it's now a Java
library/application.
A fork has been created from the latest cpp source of the original
upstream. So this commit creates a new package, zxing-cpp, and adds
Config.in.legacy handling for the old zxing pakcage that is removed.
[Thomas:
- add a patch that improves the CMakeLists.txt file to add
installation rules. This allows to remove the manual installation
logic from zxing-cpp.mk.
- make libiconv a normal optional dependency. No need to involve
BR2_ENABLE_LOCALE in the condition, since libiconv can only be
enabled when !BR2_ENABLE_LOCALE.
- bump to the latest upstream version.
- add hash file.]
Signed-off-by: Maxime Hadjinlian <maxime.hadjinlian@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Mesa3d 10.6.x is reaching end-of-life:
http://lists.freedesktop.org/archives/mesa-announce/2015-October/000178.html
"NOTE: It is anticipated that 10.6.9 will be the final release in the
10.6 series. Users of 10.6 are encouraged to migrate to the 11.0 series
in order to obtain future fixes."
Run-time testing with Kodi Isengard on an Intel GPU was positive.
Rebased 0001-Fix-khrplatform.h-not-installed-if-EGL-is-disabled.patch.
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The "Dynamic using mdev" and "Dynamic using eudev" /dev management
methods are using devtmpfs, just like "Dynamic using devtmpfs only",
on top of which they add either mdev or eudev. But their names might
suggest they use mdev only or eudev only.
Clarify their descriptions by adding "devtmpfs +" to make it
unambiguous.
[Thomas: rewrap the paragraphs in the manual. It makes the diff a lot
less readable, but we actually want the result to be wrapped.]
Signed-off-by: Luca Ceresoli <luca@lucaceresoli.net>
Reviewed-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Building host-localdef fails under gcc5.1 reporting multiple definitions and undefined references:
argp-help.o: In function `argp_fmtstream_write':
argp-help.c:(.text+0x1dc0): multiple definition of `argp_fmtstream_write'
argp-fmtstream.o:argp-fmtstream.c:(.text+0x750): first defined here
argp-help.o: In function `argp_fmtstream_puts':
argp-help.c:(.text+0x1e10): multiple definition of `argp_fmtstream_puts'
argp-fmtstream.o:argp-fmtstream.c:(.text+0x810): first defined here
argp-help.o: In function `argp_fmtstream_putc':
argp-help.c:(.text+0x1e80): multiple definition of `argp_fmtstream_putc'
argp-fmtstream.o:argp-fmtstream.c:(.text+0x7b0): first defined here
argp-help.o: In function `argp_fmtstream_set_lmargin':
argp-help.c:(.text+0x1ed0): multiple definition of `argp_fmtstream_set_lmargin'
argp-fmtstream.o:argp-fmtstream.c:(.text+0x590): first defined here
argp-help.o: In function `argp_fmtstream_set_rmargin':
argp-help.c:(.text+0x1f00): multiple definition of `argp_fmtstream_set_rmargin'
argp-fmtstream.o:argp-fmtstream.c:(.text+0x5c0): first defined here
argp-help.o: In function `argp_fmtstream_set_wmargin':
argp-help.c:(.text+0x1f30): multiple definition of `argp_fmtstream_set_wmargin'
argp-fmtstream.o:argp-fmtstream.c:(.text+0x5f0): first defined here
argp-help.o: In function `argp_fmtstream_point':
argp-help.c:(.text+0x1f60): multiple definition of `argp_fmtstream_point'
argp-fmtstream.o:argp-fmtstream.c:(.text+0x620): first defined here
charmap.o: In function `cmlr_open.constprop.2':
charmap.c:(.text+0x230a): undefined reference to `charmap_hash'
charmap.o: In function `charmap_read':
charmap.c:(.text+0x2397): undefined reference to `charmap_hash'
locfile.o: In function `locfile_read':
locfile.c:(.text+0x2e4): undefined reference to `locfile_hash'
locfile.c:(.text+0x8f4): undefined reference to `locfile_hash'
locfile.c:(.text+0x9b3): undefined reference to `locfile_hash'
locfile.c:(.text+0xa36): undefined reference to `locfile_hash'
collect2: error: ld returned 1 exit status
Makefile:58: recipe for target 'localedef' failed
Ref: http://permalink.gmane.org/gmane.comp.embedded.ptxdist.devel/12950
Signed-off-by: Stephen Agate <stephen.agate@talktalk.net>
Reviewed-by: Romain Naour <romain.naour@openwide.fr>
Tested-by: Romain Naour <romain.naour@openwide.fr>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
The problem looks like this:
/br/output/host/usr/mipsel-buildroot-linux-uclibc/sysroot/usr//lib/librt.a(timer_routines.os):
In function `__start_helper_thread':
timer_routines.c:(.text+0x2f4): undefined reference to `pthread_atfork'
collect2: error: ld returned 1 exit status
Adding -pthread to LDFLAGS fixes the problem.
Fixes:
http://autobuild.buildroot.net/results/a87/a87a764d3a28f835ed8645923594f7023a662ae8/
Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
'echo -n' is not a POSIX construct (no flag support), we shoud use
'printf', especially in init script.
This patch was generated by the following command line:
git grep -l 'echo -n' -- `git ls-files | grep -v 'patch'` | xargs sed -i 's/echo -n/printf/'
Signed-off-by: Maxime Hadjinlian <maxime.hadjinlian@gmail.com>
Reviewed-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Needed by Kodi 16.x-Jarvis:
6f8171f539
[Peter: needs GCC >= 4.7 for C+11, no need to install in target,
Drop TARGET_CONFIGURE_OPTS, add TARGET_CXXFLAGS, wrap long lines]
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Add the fbturbo video driver, which is based on xf86-video-fbdev (with
none of the original features stripped), primarily optimized for the
devices powered by the Allwinner SoC (A10, A13, A20).
https://github.com/ssvb/xf86-video-fbturbo/
Signed-off-by: Scott Fan <fancp2007@gmail.com>
[yann.morin.1998@free.fr: strip help text to the basics only]
[Peter: needs libdrm/pixman, add patch to drop libdri2 dependency
reformat and add optional libpciaccess support]
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Inspired by jMock, EasyMock, and Hamcrest, and designed with C++'s
specifics in mind, Google C++ Mocking Framework (or Google Mock for
short) is a library for writing and using C++ mock classes.
Google Mock:
* lets you create mock classes trivially using simple macros,
* supports a rich set of matchers and actions,
* handles unordered, partially ordered, or completely ordered
expectations,
* is extensible by users, and
* works on Linux, Mac OS X, Windows, Windows Mobile, minGW, and
Symbian.
http://code.google.com/p/googlemock/
There are both host and target packages. The target one has include
files required to compile the tests and the static libraries required
to link/run them. The host package installs gmock_gen, a Python script
used to generate code mocks.
Notice that GMock 1.7.0 requires the Python 2 host package even if
Python 3 is selected as a target package.
Signed-off-by: Marcelo Barbosa <marcelo.barbosa@datacom.ind.br>
Signed-off-by: Carlos Santos <casantos@datacom.ind.br>
Reviewed-by: Romain Naour <romain.naour@openwide.fr>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
swupdate provides a reliable way to update the software on an embedded system.
Note that swupdates has a reworked Kbuild/Kconfig system. It has now support
for the 'option' and 'env' symbols as well for the 'savedefconfig' target.
This makes dependency handling much easier. We're now able to pass which
dependencies are available through the environment, as suggested by Arnout
Vandecappelle [1].
In previous version of this patch we had a configuration setting where all
package dependencies except Lua were selected by default. This has changed with
v7 as we are now able to pass dependencies to the swupdate build system through
the environment. For useful operation swupdate requires a parser which depends
by default on libconfig, but can be replaced by a json-c or Lua parser.
To provide a reasonable firmware update system we enable the embedded webserver
based on mongoose (also see notes about mongoose below), a parser as stated
above and a handler for raw NAND or NOR flash.
The user can modify this configuration by selecting the appropriate dependencies
before running `make swupdate-menuconfig`. The help text contains information
about which packages may be of interest for the user.
The embedded web server requires a website for proper operation. We install the
included website by default, however the user may choose to install a custom
website on the post-build scripts.
Note, swupdate includes some old versions of mongoose and lsqlite3:
- mongoose is version 3.8 from year 2013
- lsqlite3 is version 0.8 from year 2011
Currently, swupdate does not provide a way to replace these with external
packages.
This patch is based on a WIP version submitted by Romain Naour, commented by
Arnout Vandecappelle [2].
[1]
http://lists.busybox.net/pipermail/buildroot/2015-March/122981.html
[2]
https://patchwork.ozlabs.org/patch/401270/
Signed-off-by: Jörg Krause <joerg.krause@embedded.rocks>
Cc: Romain Naour <romain.naour@openwide.fr>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Cc: Arnout Vandecappelle <arnout@mind.be>
Cc: Yann E. MORIN <yann.morin.1998@free.fr>
Tested-by: Mike Williams <mike@mikebwilliams.com>
Reviewed-by: Romain Naour <romain.naour@openwide.fr>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
It is based on olimex_a20_olinuxino_lime configuration. Tested on the mainline
kernel 4.1.4. It boots and the Ethernet is working at speed 1 Gbps.
[Thomas: remove ccache and optimize 2 options.]
Signed-off-by: Jan Viktorin <viktorin@rehivetech.com>
Acked-by: Francois Perrad <francois.perrad@gadz.org>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
/dev/shm is needed for systems using shared memory. On init-based systems
this directory is usually created in the inittab along with /dev/pts, by
the lines:
package/busybox/inittab:
::sysinit:/bin/mkdir -p /dev/pts
::sysinit:/bin/mkdir -p /dev/shm
package/sysvinit/inittab:
si2::sysinit:/bin/mkdir -p /dev/pts
si3::sysinit:/bin/mkdir -p /dev/shm
However this is broken when static /dev management is selected and the root
filesystem is read-only, showing during boot the error:
mkdir: can't create directory '/dev/shm': Read-only file system
Fix it by creating the empty /dev/shm directory, just like /dev/pts.
Signed-off-by: Luca Ceresoli <luca@lucaceresoli.net>
Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
And also use the .tar.bz2 tarball to save disk space and bandwidth.
Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
When Valgrind detects a 32-bit MIPS architecture, it forcibly adds
-march=mips32 to CFLAGS; when it detects a 64-bit MIPS architecture, it
forcibly adds -march=mips64. This causes Valgrind to be built always for
the first ISA revision level (R1), even when the user has configured
Buildroot for the second ISA revision level (R2).
Since R2 is backwards compatible with R1, you can run a Valgrind built
for R1 in an R2 core. This is why nobody noticed about this problem, or
at least nobody complained.
But, since (I hope) we will support R6 in Buildroot in the near future,
this problem will become very important because R6 is not backwards
compatible with R1 or R2, so building Valgrind for R1 when your target
is R6 will result in a non-working Valgrind.
Override the CFLAGS variable (which Valgrind appends to its CFLAGS) and
pass the right -march option, so they take precedence over Valgrind's
wrongfully detected value.
Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Reviewed-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
The default is $PREFIX/libexec which ends up in an ugly and non-standard
/libexec dir in the target.
Move it to $PREFIX/lib/dhcpcd which is far more nicer and suitable.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Reviewed-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Tested-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Making the getty option a menuconfig instead of a simple config
automatically moves its dependees into a menu without the need to
manually declare such a menu.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Acked-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Reviewed-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Tested-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Currently, the only client we can build is the X11 client.
FreeRDP now has support for building a wayland client.
However, that means we need to rethink the way we build FreeRDP, because
of some "inconsistencies" in its build system. This is because FreeRDP's
buildsystem does not have orthogonal options; some of the options can be
used for different components.
For example, the set of X11 libraries needed to build the server is a
superset of the X11 libraries needed to build the X11 client. So,
whenever the server is enabled, it means the X11 libraries required to
build the X11 client are available.
Now, if the user also wants to build the waland client (but not the X11
client), there is no way to tell FreeRDP not to build the X11 client,
because there is a single option, WITH_CLIENT, to drive whether any of
the clients is built. The decision is made on the availability of the
required libraries. And since the server is enabled, the X11 libs
required to build the X11 client are available. So, we end up with the
X11 client, even though it is not wanted.
And conversely with wayland...
So, we redesign the way we build FreeRDP. WE do not care what is
actually built; we just build whatever is buildable with the current
set of enabled libraries. But at install time (both in staging/ and
target/) we remove whatever the user does not want.
We also take the opportunity to rename the X11 client option, so it is
coherent with the soon-to-be-introduced wayland client.
Note: since FreeRDP has gained new dependencies, we can not just
introduce the legacy option as-is, otherwise we run the risk that it
selects the new option even though the new FreeRDP dependencies are not
enabled, spitting out the infamous 'unmet direct dependencies" kconfig
error.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Previously, we expected the user to select gstreamer-0.x on his own,
to enable gstreamer support in FreeRDP. This could have been a bit
confusing to the user, as he may have enabled gst-1.x but FreeRDP did
only support gst-0.x.
Also, gstreamer support needs xlib-libxrandr, which was missing in
FreeRDP's dependencies, so it was never enabled (AFAICS).
(Re-)introduce support for gstreamer-0.x and gstreamer-1.x, since both
are supported.
We're doing it in a choice, and select whichever version the user chooses,
rather than automatically detect it as previosuly done. We can select the
gstreamer packages, as their dependencies are anyway already covered by the
ones of FreeRDP.
This also now requires xlib-libxrandr, so hide the choice if X.org is
not enabled, still offer the option of not using gstreamer if it is.
[Peter: Hide option if gstreamer{,1} aren't enabled,
Default to gstreamer{,1} support enabled
GStreamer 0.10 support needs host-pkgconf and libxml2]
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Now that we've switched to using FreeRDP from master, we can build weston's
FreeRDP backend again.
Propagate the new dependencies of FreeRDP.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Currently, we're packaging FreeRDP from the stable-1.1 branch, which has
not evolved since march 2015 and hasn't seen any release (not even a
tag) since July 2013. It is by all purpose and means, dead.
Other packages that may use FreeRDP (like weston) are now migrating to,
or have already migrated to using the API from master, which has changed
a bit from what was available on the stable-1.1 branch. So, those
packages now FTBFS.
However, FreeRDP still has not done a release from their master branch;
the last tag dates back to September 2014 and there are 1850+ changes on
top of that tag.
So, switch to using the currently-latest commit from master.
This version can also use gstreamer-1.x (in addition to gst-0.x), which
needs quite some rework on how we handle the dependency on gstreamer.
Drop gstreamer support entirely, support for gst-0.x and gst-1.x will be
re-added in a followup patch.
Similarly, a wayland client can now be built, support for which will
be added in a subsequent path; it is currently forcibly disabled.
The way the libraries are built has changed: the previous single library
has been split in multiple libraries, each implementing parts of the RDP
protocol.
Slight rewording of the prompts:
- drop the 'install' for client and server.
- drop 'freerdp' from the client and server comment
The location of the server keys has changed, so copy them from the new
location.
Finally, drop patches 1 and 3, applied upstrem; rename remaining
patches.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
This has been the best practice since a long time, but it was not
clearly stated in the manual. Now it is mandatory, so mention it
explicitly.
Signed-off-by: Luca Ceresoli <luca@lucaceresoli.net>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
the perl dependency of cpan module is no longer generated by scancpan,
but added at the infrastructure level
Signed-off-by: Francois Perrad <francois.perrad@gadz.org>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Switch to bitbucket since it's not hosted at sourceforge any more (and
the official mutt source is ftp).
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Also, require threads support. cmake detects threads support correctly, but
libssh build system uses this information incorrectly.
Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
As the usual rule consider full-blown packages superior to busybox,
hence build after it.
Also install cpio to /bin to override the busybox-provided one.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Added configuration option BR2_PACKAGE_OPENVPN_PWSAVE that
adds --enable-password-save to OPENVPN_CONF_OPTS if selected.
[Thomas: rewrap Config.in help text, as suggested by Vicente.]
Signed-off-by: Andreas Wetzel <andreas.wetzel@nanotronic.ch>
Reviewed-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The recommended form is without the trailing slash, and will become
mandatory in a coming commit.
This avoids the need for the $$($(2)_SITE:/=) magic in package/pkg-generic.mk
to avoid double slashes in download URLs, like
"https://mosh.mit.edu//mosh-1.2.5.tar.gz".
^^
Note: this work has already been done in b0b9606530 a few
months ago and earlier in c7f4b96471 and 4a9eb20de8,
but no check has been added at that time to avoid new slashes to slip
in, and so they did. This time a patch will follow immediately to
prevent future mistakes from being unnoticed.
Mass-replaced with the following command:
git grep -l '_SITE.*/$' | xargs sed -i '/_SITE.*=/s|/$||'
Signed-off-by: Luca Ceresoli <luca@lucaceresoli.net>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The waf build system of glmark2 needs Python 2 as stated on its README
file:
python 2.x (>= 2.4) for the build system (waf)
Building it with a system with Python 3 as the default Python version
will result on a failure like this one:
File "waflib/Utils.py", line 199
except OSError ,e:
^
SyntaxError: invalid syntax
So, in order to fix this, make this package depending on host-python and
also run the waf script using $(HOST_DIR)/usr/bin/python2.
At the same time delete 3 Python environment variables passed to the waf
script during the configure phase which it seems there aren't needed for
anything.
Fixes:
http://autobuild.buildroot.net/results/fc6/fc6cd2a90bbb0e6f80f6c4afaae1430f82e54046/
Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The 'ZIC=$$(ZIC)' assignment is seen as 'ZIC=$(ZIC)' by the shell, that
interprets that as command substitution causing an error like:
/bin/sh: ZIC: command not found
Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
When ARCH is arm and the hard-floating-point option is on executables
expect to find the dynamic linker at /lib/ld-musl-armhf.so.1 and not
/lib/ld-musl-arm.so.1.
This patch adjusts the logic that creates the symbolic link from the
dynamic linker path to the musl C library (since musl has everything
built into a single file).
[Thomas: tweak the commit log.]
Signed-off-by: Vicente Bergas <vicencb@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
- Bump to version 1.9.2.
- Update the hash file.
- Use a tar.bz2 tarball to save space and bandwidth.
- Fix a typo in the berkeley-db configure option.
- Remove non-existent configure options: neon, gssapi and ssl.
- Remove neon dependency: is not needed to build subversion.
- Tweak the 0001-dont-mangle-cflags.patch for the 1.9.2 version and to
patch configure.ac instead of configure.
- Add a new 0002-disable-macos-specific-features.patch to remove a
configure check for Mach-O (and two more) which breaks the build when
cross-compiling.
- Enable autoreconf since we are patching the configure.ac.
Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
There are two problems building micropython for Blackfin. The first is
some printf format specifier warnings/errors that seem to be triggered
only for that architecture/compiler. This could be worked around by
specifying CFLAGS=-Wno-error=format.
The second problem is that libffi doesn't provide the closure
implementation on Blackfin. There is no known workaround for this issue.
For now disable micropython on Blackfin.
Signed-off-by: Chris Packham <judge.packham@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Rather than specifying architectures that do not have explicit support
in micropython invert the logic and set MICROPY_GCREGS_SETJMP=1 if the
architecture does not have explicit support. MIPS is listed as being
supported but this support consists of automatically defining
MICROPY_GCREGS_SETJMP 1 based on __mips__ being defined.
Signed-off-by: Chris Packham <judge.packham@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Switch from : to # since CFLAGS can include :'s spilled in from
BR2_TARGET_OPTIMIZATION, for example:
BR2_TARGET_OPTIMIZATION="-Wl,-rpath,/lib:/usr/lib" would cause the sed
expression to fail thus breaking the build.
Changed all of the SEDs to # for consistency.
Signed-off-by: Gustavo Zacarias <gustavo.zacarias@free-electrons.com>
Reviewed-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
This patch applies an upstream patch to fix a compile error like this
one:
modffi.c: In function 'ffifunc_call':
modffi.c:358:25: error: cast from pointer to integer of different size
[-Werror=pointer-to-int-cast]
values[i] = (ffi_arg)a;
This error can be highlighted when building micropython for MIPS64 n32
because ffi_arg is 64-bit wide and the pointers on MIPS64 n32 are 32-bit
wide, so it's trying to case an integer to a pointer (or vice versa) of
a different size. We should cast first the pointer (or the integer) to a
pointer sized integer (intptr_t) to fix that problem.
This patch was merged upstream as a result of this pull request:
https://github.com/micropython/micropython/pull/1471
Fixes:
http://autobuild.buildroot.net/results/e22/e2253de3f96e9a53e75b4cecaf56c1df2950803f/
[Thomas: use a single assignement for MICROPYTHON_PATCH.]
Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Switch from : to # since CFLAGS can include :'s spilled in from
BR2_TARGET_OPTIMIZATION, for example:
BR2_TARGET_OPTIMIZATION="-Wl,-rpath,/lib:/usr/lib" would cause the sed
expression to fail thus breaking the build.
Signed-off-by: Gustavo Zacarias <gustavo.zacarias@free-electrons.com>
Reviewed-by: Samuel Martin <s.martin49@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
libuv bindings for LuaJIT and Lua.
[Thomas:
- Move the package to the sub-menu of Lua modules.
- Remove no longer needed dependency on
BR2_PACKAGE_HAS_LUAINTERPRETER.
- Propagate dependencies of libuv (mmu, !static, threads)
- Update to upstream version 1.7.4-4.
- Add hash file.]
Signed-off-by: Jörg Krause <joerg.krause@embedded.rocks>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
When a module is native or depends of a native module, it must be
disabled for static builds via its Config.in
We detect native modules by looking at the filenames listed in the
MANIFEST. If there is a file which looks like it contains code that
much be compiled (e.g. .c, .h and so on...), then we exclude that
module (and its dependencies) from static builds.
That's what we tried to do so far, but failed when there was a
comment on the same line as the filename in the manifest, like so:
foo-bar.c # Bla bla bla
Fix that by detecting either endof-line (as currently done) or
end-of-string.
For an example of failed build of perl-html-parser, see
http://autobuild.buildroot.net/results/128/128671dfa23d843698a63220c2fac1f44e1d5845/
[Thomas: use better commit log proposed by Yann E. Morin.]
Signed-off-by: Francois Perrad <francois.perrad@gadz.org>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
When eudev is used as the udev provider, libgudev is automatically
provided as it is part of eudev. However, when systemd is used as
the udev provider, libgudev is not provided, and needs to be built
separately. This is why we select the libgudev package only if
systemd is used.
Fixes: http://autobuild.buildroot.net/results/d59/d597a81271a082c8252e2333906815c437b6576d/
While at it, group the existing dbus select together with the dbus-glib
select, so that all "select" statements are together.
Signed-off-by: Yegor Yefremov <yegorslists@googlemail.com>
Reviewed-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Version 2.4 of shairport-sync introduces new optional features (metadata,
stdout, pipe) which we enable by default. The impact on the binary size is
about 18 kB (110 kB vs 92 kB) for an ARM target.
Also add a new dependency to libconfig and install the default config script.
Signed-off-by: Jörg Krause <joerg.krause@embedded.rocks>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Linux kernel 4.2 was finally released, so bumping from 4.2-rc5 to
final release.
Updating Linux headers to 4.2 branch since they are introduced in
Buildroot as well already.
Also adding 1 back-ported patch that makes SD/MMC cards usable on AXS
boards. This patch will be a part of 4.3 (already in linux-next) and
hopefully will make its way in 4.2.1.
Once that patch appears in 4.2.x it can be removed from here.
Cc: Peter Korsgaard <peter@korsgaard.com>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Fixes https://bugs.busybox.net/show_bug.cgi?id=8256
grub2's build system interprets CC, CFLAGS and CPPFLAGS as for the host
and uses TARGET_CC etc. for the target. However, NM, OBJCOPY and STRIP
are used for the target. We currently pass the host-versions of these
tools as part of $(HOST_CONFIGURE_OPTS).
While we're at it, also pass TARGET_LDFLAGS.
This problem had not been noticed up to now because usually we build on
an x86 machine for the x86 architecture, so the binutils are compatible.
However, this is not true on an i386 when building for x86_64.
Cc: Christophe Bricout <christophebricout@yahoo.fr>
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
gcc used to be installed into $(HOST_DIR)/usr/$(GNU_TARGET_NAME) but
since gcc 4.9 this is no longer the case. Therefore, the cc -> gcc
symlink that is created in that we create in that directory is dead.
There don't seem to have been any problems due to the missing gcc and
cc in $(HOST_DIR)/usr/$(GNU_TARGET_NAME), things seems to build fine
without it. The cc -> gcc symlinks in general should not be needed
anyway, since we always pass the appropriate CC variable to the
package build system.
Therefore, let's remove the cc -> gcc symlink in
$(HOST_DIR)/usr/$(GNU_TARGET_NAME) - also for pre-4.9 gcc versions.
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Fixes the following error when building for a 64-bit target
../py/objint_mpz.c:54:5: error: right shift count >= width of type [-Werror]
(MP_SSIZE_MAX >> MPZ_DIG_SIZE * 4) & DIG_MASK,
^
../py/objint_mpz.c:54:5: error: initializer element is not constant
../py/objint_mpz.c:54:5: error: (near initialization for 'maxsize_dig[4]')
Signed-off-by: Chris Packham <judge.packham@gmail.com>
Reviewed-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Tested-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Added an alternative on patch versioning (the -v option) and added a
tip on how to automatically mark a previous commit as superseded.
[Thomas: minor tweaks.]
Signed-off-by: Francesco Nwokeka <francesco.nwokeka@gmail.com>
Acked-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
"xxHash is an extremely fast hash algorithm, running at RAM speed
limits."
[Thomas:
- tweak commit log title
- add correct license and license files information, using the
suggestion from Yann E. Morin
- add $(TARGET_MAKE_ENV) in the environment in the build step.]
Signed-off-by: Ed Swierk <eswierk@skyportsystems.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Those scripts will support coming platforms such as iMX6SoloX or
iMX6QuadPlus.
One important change is that the bootscript now relies on U-Boot to
make the display detection in order to simplify the script.
Signed-off-by: Gary Bisson <gary.bisson@boundarydevices.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Changelog:
(0.11.1)
- vpu: decoder: Keep track of unfinished gstvideo frames
- blitter fixes and enhancements
- ipu: All pages are now cleared when page flipping is used
- compositor: Added support for cropping input streams
- imxv4l2src fixes and enhancements
(0.11.0)
- new common codebase for rectangular regions and video canvases
- new blitter-based video sink with full support for vsync to
eliminate tearing
- complete rewrite of blitter base code
- new compositor elements
- vpu: decoder: Memory leaks fixed
- vpu: encoder: Bitrate can now be set on the fly
- eglvivsink: In Wayland, window x/y coordinates are now supported
- several v4l2src fixes
(0.10.2)
- v4l2src: renamed imxv4l2src to imxv4l2videosrc to avoid name
collisions with the FSL plugins
- v4l2src: Call the buffer pool baseclass stop() function (fixes
segfaults)
- uniaudio: Create correct config header even if no codecs were found
- audio: new MP3 encoder element using the libfslcodec MP3 encoder
- g2d/ipu/pxp blitter sink: Respect aspect ratio also in 90/270 degree
rotations
- pxp: Remove broken/unsupported formats
- eglvivsink: Fix double mutex unlock
- phys mem meta naming cleanup
Tested with the following commands:
# gst-launch-1.0 playbin uri=file:///root/tears_of_steel_1080p.webm
# gst-launch-1.0 filesrc location=/root/tears_of_steel_1080p.webm ! \
matroskademux ! imxvpudec ! imxipuvideosink
# gst-launch-1.0 filesrc location=/root/tears_of_steel_1080p.webm ! \
matroskademux ! imxvpudec ! imxeglvivsink
Signed-off-by: Gary Bisson <gary.bisson@boundarydevices.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Also added the package hash file.
This patch is based on the Yocto equivalent:
https://github.com/Freescale/meta-fsl-arm/commit/0d2f4f8
This package has been tested using the following commands:
# gst-launch-0.10 playbin uri=file:///root/tears_of_steel_1080p.webm
# gst-launch-0.10 filesrc location=/root/tears_of_steel_1080p.webm ! \
matroskademux ! vpudec ! autovideosink
# gst-launch-0.10 filesrc location=/root/tears_of_steel_1080p.webm ! \
matroskademux ! vpudec ! mfw_isink
# gst-launch-0.10 imxv4l2src ! autovideosink
Signed-off-by: Gary Bisson <gary.bisson@boundarydevices.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Change license file + add hash file.
Changelog:
- Update the license file with new version and use COPYING
- Remove the folder /usr/share to avoid empty folder installation
This patch is based on the Yocto equivalent:
https://github.com/Freescale/meta-fsl-arm/commit/1506776
This package has been implicitely tested through gstreamer as the
plugins rely on it for vpu decoding:
# gst-launch-0.10 playbin
# uri=file:///root/tears_of_steel_1080p.webm
# gst-launch-1.0 playbin uri=file:///root/tears_of_steel_1080p.webm
# gst-launch-1.0 filesrc location=/root/tears_of_steel_1080p.webm ! \
matroskademux ! imxvpudec ! imxipuvideosink
Signed-off-by: Gary Bisson <gary.bisson@boundarydevices.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Update license file + add hash file.
Changelog:
- Upgrade MP4 and MPEG2 parser
- Update COPYING with new version of license file
This patch is based on the Yocto equivalent:
https://github.com/Freescale/meta-fsl-arm/commit/a7c90ea6
This package has been implicitely tested through gstreamer as the 0.10
plugin relies on it:
# gst-launch-0.10 playbin uri=file:///root/tears_of_steel_1080p.webm
Signed-off-by: Gary Bisson <gary.bisson@boundarydevices.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Also add the package hash file.
3.14.28-1.0.1 patch release has the following bug fixes:
MGS-554 [#1644] Fix the false alert with GPU commit dirty
MGS-528 [#ccc] Wayland does not free window memory until the application
exits
GRPH-56 [#ccc] Add environment variable to turn off memory fill
GRPH-55 [ccc] Add alpha channel for direct texture viv extension
MA-6540 [#1672] Fix native fence FD leak found by Android™ CTS
MGS-663 [#1686] P4 release can't be built statically
MA-6527 [#1666] Fix android.webgl.cts.WebGLTest CTS failure
MGS-511-2 [#1593] Qt 3D app cannot run on i.MX 6SoloX board
MGS-658 [#ccc] Fix build warning of isInApiTraceMode for static link
Revert MGS-352 [#1453] Creating context on 5.x is slower than 4.x due to
process name
read
MGS-578 [#1657] GoogleEarth APK encounters a shader compile error
MGS-507 [#1323] RenderToTexture has distorted pictures on screen in DL
board
MGS-547 [#ccc] Add YVYU format test in g2d_overlay_test
MGS-547 [#1640] YVYU format gets wrong result when 2D is built
MGS-564 [#ccc] Resolve race condition in display frame sync
MGS-367 [#1589] "CTRL+C" to close the "tutorial7_es20" causes GPU to
hang
MGS-543 [#1604] Remove some unsupported extensions in gles10
MGS-436 [#ccc] Memory leak in glimagesink video loop playback
MA-6267 [#1600] Fix ES3.0 benchmark UBenchEnhanced can't run
MA-6208-1 [#1543] Fix build error
MA-6208 [#1543] Fix com.drawelements.deqp.gles3 CTS failure
MGS-511 [#1593] Qt 3D app cannot run on i.MX 6SoloX board
MGS-512 [#1493] Fix es30 conformance failures related to glReadPixels
MGS-502 [#ccc] libCLC failure
MGS-500 [#ccc] Disable apitrace for static build
This patch is based on the Yocto equivalent:
https://github.com/Freescale/meta-freescale/commit/8f74380a
This package has been tested with both X11 and Framebuffer backends:
# cd /usr/share/examples/viv_samples/vdk/
# ./tutorial7
Signed-off-by: Gary Bisson <gary.bisson@boundarydevices.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Add hash files for the updated packages.
Also update the license of firmware-imx.
This patch is based on the Yocto equivalent:
5521d77c9f191b5808cb3bad4af9484ac
Those packages have been implicitely tested through gstreamer as the
plugins rely on them for vpu decoding for instance:
# gst-launch-0.10 playbin
# uri=file:///root/tears_of_steel_1080p.webm
# gst-launch-1.0 playbin uri=file:///root/tears_of_steel_1080p.webm
# gst-launch-1.0 filesrc location=/root/tears_of_steel_1080p.webm ! \
matroskademux ! imxvpudec ! imxipuvideosink
Signed-off-by: Gary Bisson <gary.bisson@boundarydevices.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
This board is using the exact same kernel and u-boot revision as the
Nitrogen6x. They also share the same u-boot "autoboot" script.
The differences between the two configurations are:
- getty port is ttymxc0 instead of ttymxc1
- uImage load address is 0x80008000
- different device tree
http://boundarydevices.com/product/nit6_solox-imx6/
Signed-off-by: Gary Bisson <gary.bisson@boundarydevices.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Some packages, sudo for instance, install .a and .la files in
$(TARGET_DIR)/usr/libexec. These files are not needed on target.
This patch refactors the existing "find" invocations in
target-finalize into a single one removing all .a and .la files from
lib, usr/lib and usr/libexec.
[Thomas: rework to use a single "find" invocation, and adjusted the
commit log accordingly.]
Signed-off-by: Herve Codina <Herve.CODINA@celad.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Backport patch from upstream to fix musl build error:
```
In file included from ext/posix/posix.c:25:0:
ext/posix/sched.c: In function 'Psched_setscheduler':
ext/posix/sched.c:74:9: error: variable 'sched_param' has initializer but incomplete type
struct sched_param sched_param = {0};
```
Fixed upstream by commit 11cc8a2973569ec7fb1e7c2466dca0282944b124.
[Thomas: add missing <pkg>_AUTORECONF=YES.]
Signed-off-by: Jörg Krause <joerg.krause@embedded.rocks>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Also remove patch 0001-fix-build-flags.patch. The uCLibc issue is fixed
upstream.
Add patch taken and slighly adopted from the c-periphery package to fix build
issue with musl.
Build was tested with an uCLibc toolchain and a musl toolchain.
Signed-off-by: Jörg Krause <joerg.krause@embedded.rocks>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
These architectures don't have explicit exception handling support in
micropython but can use the setjmp fallback behaviour instead.
Signed-off-by: Chris Packham <judge.packham@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Changes are based on Zedboard: Xilinx does not provide a specific DTS
for Microzed in the kernel tree. It is suggested [1] to use the
zynq-zed.dts and change the RAM size
[1] https://forums.xilinx.com/t5/Embedded-Linux/Microzed-default-device-tree-dts/td-p/432856
[Thomas:
- extend readme.txt to indicate why the same DTB is used for Microzed
and the Zedboard.
- add a description + Signed-off-by line in the
0001-zynq-Create-microzed-specific-U-Boot-environment.patch, by
re-using the description of the same patch for the Zedboard.]
Signed-off-by: Davide Viti <d.viti@infosolution.it>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Micro Python is a lean and fast implementation of the Python 3
programming language that is optimised to run on a microcontroller.
[Thomas: fix minor typo in Config.in noticed by Vicente.]
Signed-off-by: Chris Packham <judge.packham@gmail.com>
Reviewed-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Tested-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
A number of embedded systems only include the root user, so this patch
changes the VLC package so that running VLC as root is allowed, like
it is for all other Buildroot packages.
[Thomas: tweak commit log, remove incorrect Tested-by.]
Signed-off-by: Joao Pinto <jpinto@synopsys.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
This is a patch that is originally based on a patch Thomas P.
submitted for an earlier version of this package. I have adopted this
patch to use the latest available Gentoo parallel patch. I have also
seen about a minute improvement on my build times of openssl.
Part of Thomas P's original message:
On my build server, the current build of OpenSSL takes 1 minutes and
20 seconds. With this commit applied, enabling parallel build and
installation, the build only takes 28 seconds.
All the patches are downloaded from Gentoo.
There is apparently some interest in upstream OpenSSL to enable
parallel build, see for example commit
c3f22253b1. This
commit is not part of any OpenSSL release, but we can hope that the
problem will resolved in the future.
Signed-off-by: Ryan Barnett <ryanbarnett3@gmail.com>
CC: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
CC: Gustavo Zacarias <gustavo@zacarias.com.ar>
CC: Arnout Vandecappelle <arnout@mind.be>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The Makefile of libselinux performs the following check:
ARCH := $(patsubst i%86,i386,$(shell uname -m))
ifneq (,$(filter i386,$(ARCH)))
TLSFLAGS += -mno-tls-direct-seg-refs
endif
Which means that if the host machine is an x86, then TLSFLAGS will
contain -mno-tls-direct-seg-refs. That command line option causes
libselinux to fail when building it for target architectures where the
compiler doesn't support that option, i.e. MIPS:
mips-img-linux-gnu-gcc: error: unrecognized command line option
‘-mno-tls-direct-seg-refs’
So to fix that problem we can set the ARCH variable to $(KERNEL_ARCH),
and then append it to the LIBSELINUX_MAKE_OPTS.
Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Reviewed-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Now that liburcu builds for aarch64, lttng-tools has all its dependencies met
for aarch64, so allow it to build for this architecture.
Signed-off-by: Ben Shelton <benjamin.h.shelton@intel.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
With aarch64 support added to liburcu, lttng-libust has its dependencies met
for aarch64, so allow it to build for this architecture.
Signed-off-by: Ben Shelton <benjamin.h.shelton@intel.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Now that mailman handles lists.buildroot.org lets use that everywhere in the
documentation as well.
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
When linking statically, the order of libraries on the
linker command matters, since readline depends on ncurses.
Signed-off-by: David du Colombier <0intro@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Also update legacy as well.
And remove the BR2_DEPRECATED_SINCE_2014_08 symbol since it's unused
now.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Remove for the upcoming 2015.11 release, they've been deprecated for a
year now.
Also remove some previously forgotten selection removals in legacy.
[Peter: drop 3.0.x kernel patch]
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Before this commit, the output of the toolchain-external build steps
looked like this (abbreviated for clarity):
>>> toolchain-external undefined Building
>>> toolchain-external undefined Installing to staging directory
>>> toolchain-external undefined Copying external toolchain sysroot to staging...
>>> toolchain-external undefined Building ext-toolchain wrapper
mkdir -p output/host/usr/bin; cd output/host/usr/bin; for i in ...
/usr/bin/gcc -O2 -Ioutput/host/usr/include -DBR_SYSROOT='...
if test -f output/host/usr/bin/i686-pc-linux-gnu-gdb ; then mkdir -p ...
>>> toolchain-external undefined Fixing libtool files
>>> toolchain-external undefined Installing to target
>>> toolchain-external undefined Copying external toolchain libraries to target...
if test -e output/target/lib/ld-uClibc.so.1; then ln -sf ld-uClibc.so.1 output/target/lib/ld-uClibc.so.0 ; fi
if test -e output/target/lib/ld64-uClibc.so.1; then ln -sf ld64-uClibc.so.1 output/target/lib/ld64-uClibc.so.0 ; fi
All the long lines with conditions and loops in them are not usefull,
so put $(Q) in front of them. The line with mkdir can better be split
on a separate line so the cd stands out more. There are two redundant
semicolons that can be removed. The installation of gdbinit could
use an extra message so the user can see what is going on.
After this commit, the toolchain-external build steps look like this:
>>> toolchain-external undefined Building
>>> toolchain-external undefined Installing to staging directory
>>> toolchain-external undefined Copying external toolchain sysroot to staging...
>>> toolchain-external undefined Building ext-toolchain wrapper
/usr/bin/gcc -O2 -Ioutput/host/usr/include -DBR_SYSROOT='...
>>> toolchain-external undefined Installing gdbinit
>>> toolchain-external undefined Fixing libtool files
>>> toolchain-external undefined Installing to target
>>> toolchain-external undefined Copying external toolchain libraries to target...
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The list of util-linux utilities we can find on its Config.in file it
seems to be alphabetically ordered in purpose. However, there are some
of them which are in the wrong place. This patch fixes that.
Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The comment line that explains that systemd needs a glibc toolchain and
kernel headers >= 3.10 doesn't fit in the dialog box, which makes it
look as if headers >= 3.1 are needed.
Abbreviate the comment a little by removing an 'an'. It still doesn't
fit completely (only one trailing * is shown), but at least it's
readable.
While we're at it, change the quoting style to " like we always use.
Reported-by: eschu on IRC
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Acked-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
usbmount.mk created/installed run-parts scripts in
/etc/usbmount/usbmount.d. However, usbmount executes run-parts on
/etc/usbmount/mount.d for UDEV add action and on /etc/usbmount/umount.d
for UDEV remove action. Change usbmount.mk to create the directories
referenced by usbmount and install the run-parts scripts appropriately.
Signed-off-by: Doug Kehn <rdkehn@yahoo.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
DirectFB examples are just examples, there is no reason to install
them to the staging directory.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
For some historical reasons, the directfb-examples package has one
sub-option for each example, and the .mk files go through some great
lengths to install only the needed data files for each example.
This is a bit silly for several reasons:
* In no other Buildroot package we do offer such a fine-grained
selection of what the package installs;
* directfb-examples are examples, they are therefore typically not
meant to be used on a final production system, but more during
development or for demonstration. Those are situations where size
generally isn't that critical (all installed, the package takes 2.4
MB on the rootfs);
* Those options and the .mk file logic has to be updated whenever the
package is bumped;
* Users can always use a post-build script to keep only the examples
they are interested in.
All the options are moved to Config.in.legacy. However, we could
debate on whether this is actually useful, since the main option
BR2_PACKAGE_DIRECTFB_EXAMPLES will now install a superset of whatever
was selected before through sub-options.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Use a single assignment to define the value of LINUX_FUSION_MAKE_OPTS
instead of a sequence of += assignments.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
This commit bumps linux-fusion to the latest upstream version, and
switches to use the more space efficient xz-compressed tarball.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
This commit removes the sawman package, since the corresponding
functionality has been merged in DirectFB itself since 1.7.x.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
This commit removes the divine package, since the corresponding
functionality has been merged in DirectFB itself since 1.7.x.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Since DirectFB 1.7.x, the divine (virtual input) and sawman (window
manager) features have been merged in DirectFB itself rather than
being shipped as separate tarballs. This commit creates additional
options to enable those features.
Upcoming commits will get rid of the existing divine and sawman
Buildroot packages.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
This option depends on BR2_UNIMPLEMENTED (which does not exist) since
2009. Since BR2_UNIMPLEMENTED does not exist, it was not possible to
enable BR2_PACKAGE_DIRECTFB_UNIQUE, which means that nobody cared
about making it available, and that we don't need to add any
Config.in.legacy handling to remove this option.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
The BR2_PACKAGE_XSERVER option never existed, so it was never possible
for DirectFB to pass --enable-x11. Moreover, doing this without having
at least some dependency on certain X libraries will clearly not work.
Consequently, let's remove this bogus X.org support, and disable X11
support unconditionally (until someone is interested enough to bring
this back to life).
The option was actually named BR2_PACKAGE_DIRECTFB_XSERVER but was not
used by the .mk file.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
The new DirectFB version does not build with gcc 4.3 from the Blackfin
toolchain. One of the reason is that va_copy has some issues, which
were fixed in gcc 4.4.0
(https://gcc.gnu.org/bugzilla/show_bug.cgi?id=36799). There are also
some other issues, which were fixed by a patch proposed by Peter
Seiderer at
http://lists.busybox.net/pipermail/buildroot/2015-February/120281.html.
However, it probably doesn't make a lot of sense to carry patches that
are not upstream for such old compilers. Instead, this commit takes
the action of making DirectFB available only on toolchains using gcc
>= 4.5, which was tested with the Arago toolchain. gcc 4.4 could
potentially work, but wasn't tested (it is no longer supported by the
internal toolchain backend, and we don't have any toolchain based on
gcc 4.4), so we take the safe decision of requiring at least gcc 4.5.
[Peter: add comment explaining toolchain dependenc as suggested by Vincente]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Reviewed-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
In addition to doing the bump, this commit changes the --enable-fusion
option to --enable-multi-kernel, as was renamed upstream.
The patches were just refreshed, except
0003-remove-redefinition-of-__typeof__.patch, which was removed since
it was a backport from upstream, and is therefore now part of DirectFB
1.7.7.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Reviewed-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Tested-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
0016-ranlib.patch is not needed anymore since the problem that it fixes
is already handled upstream:
2c77ca459e
Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Among other changes brings A23/A33/A83T/H3 support. The makefile uses
pkg-config to find libusb, so ensure that is available.
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Commit c68c365d29 ("toolchain-external:
remove CS sh2 toolchains") removed the definitions of the
BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_SH2A_201103 and
BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_SH2A_201009, but did not actually
remove the code that was using those options.
So this commit removes the parts of the code that are currently dead
due to this: the definition of the prefix of those toolchains, the
hashes, and the URLs.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Acked-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Error highlighted by the W3 HTML validator:
Error: No space between attributes.
At line 71, column 64
e="width:100%;"href="/download
Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
This version depends on libgudev when using systemd, otherwise it fails
with an error like this one:
checking for GUDEV... no
configure: error: Package requirements (gudev-1.0 >= 147) were not met:
[Peter: add to _DEPENDENCIES, not _CONF_OPTS]
Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Reviewed-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
So the workaround can be dropped now that we've moved to uClibc-ng 1.0.6.
[Peter: Extend commit message]
Signed-off-by: Waldemar Brodkorb <wbx@openadk.org>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
When Bash attempts to find the current working directory, it uses a C
library call `getcwd` to resolve it. When cross-compiling, the
configuration process cannot determine if the target system's C library
can support an "unfixed" path length. Therefore, Bash will fallback to a
size of `PATH_MAX` for determining the current working directory. When
using OverlayFS (and possible other file systems), this becomes an issue
since file paths can commonly exceed standard `PATH_MAX` length. This
typically results in the following error appearing:
error retrieving current directory: [...]
Common C library `getcwd` calls can default to a higher limit (usually
the system's page size). The current configurable C libraries (as of at
least 2015.08) support a zero (0) size buffer length. Most use the
system's page size; musl, being an exception, which defaults to
`PATH_MAX` (as Bash was doing). Since these C libraries support
allocating buffer space with a zero (0) provided size, the following
configuration change allows Bash to support getting a larger-length'ed
working directory on target's that support it.
Signed-off-by: James Knight <james.knight@rockwellcollins.com>
Acked-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Fixes:
CVE-2015-5722 - denial-of-service vector which can be exploited remotely
against a BIND server that is performing validation on DNSSEC-signed
records.
CVE-2015-5986 - denial-of-service vector which can be used against a
BIND server that is performing recursion and (under limited conditions)
an authoritative-only nameserver.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Reviewed-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Tested-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Using an intermediate variable to "store" LINUX_VERSION_PROBED is
unnecessary, because they are both recursively-expanded variables, and
the `make kernel-version` code will anyway be used in both places it is
needed; storing in an intermediate variable will not make that a single
expansion of the sub-shell.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Reviewed-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Some packages build kernel modules without using the kernel-module infra
(because they use custom build systems); they do not automatically get
the kernel to support modules which is ensured when using the infra.
It must be done manually for all those packages, whenever they are
enabled.
Note: the nvidia-driver case does not need the ifeq-block other packages
use, because it is already enclosed in a more stringent ifeq-block.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Peter Korsgaard <jacmet@uclibc.org>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Cc: Noé Rubinstein <nrubinstein@aldebaran.com>
Cc: Jan Viktorin <viktorin@rehivetech.com>
Cc: Gustavo Zacarias <gustavo@zacarias.com.ar>
Reviewed-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Tested-by: Jan Viktorin <viktorin@rehivetech.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
This reverts commit 8df95d9 (pkg-kernel-module: die if kernel module
support is disabled).
Now that we force-enable support for modules in the kernel config, we
need not check it.
Besides, the check was broken, because it did not use $$ to dereference
LINUX_DIR, thus leading to systematic build failures when a package
using the kernel-module infra was enabled.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Peter Korsgaard <jacmet@uclibc.org>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Cc: Noé Rubinstein <noe.rubinstein@gmail.com>
Cc: Jan Viktorin <viktorin@rehivetech.com>
Reviewed-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
The <pkg>-legal-info target is only a component of the top-level
legal-info target, it is not meant to be used alone.
For example, calling twice 'make busybox-legal-info' produces duplicate
entries in licenses.txt and manifest.csv.
Signed-off-by: Luca Ceresoli <luca@lucaceresoli.net>
Cc: Baruch Siach <baruch@tkos.co.il>
Cc: Arnout Vandecappelle <arnout@mind.be>
Reviewed-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
The directory $(TARGET_DIR)/etc/init.d/ must exist before installing
S10udev init script.
Add the missing "-D" option to create the "init.d" directory.
Signed-off-by: Romain Naour <romain.naour@openwide.fr>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
ebtables moved out of sf.net. Update website link, download location, and
hashes reference.
Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Static fix patch upstream so dropped.
[Peter: drop _AUTORECONF as libtool 2.4.2 is used / no patches]
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Fixes:
http://autobuild.buildroot.net/results/3ec/3ec54f722d6008fc422540d3a5462b306d16e84c/
The recent x264 version bump broke the configure step on x86/x86-64 as x264
ends up using gas instead of yasm as assembler. The reason for this is the
recent upstream commit to optionally use nasm instead of yasm if AS= is
passed:
commit b568a256b9bc6c500d7b1ffe4b9c3311ee5ff337
Author: Henrik Gramner <henrik@gramner.com>
Date: Sat May 23 19:44:16 2015 +0200
x86: Experimental nasm support
Enables the use of nasm as an alternative to yasm.
Note that nasm cannot assemble x264 with PIC enabled since it currently doesn't
support [symbol-$$] addressing which is used extensively by x264's PIC code.
This includes all 64-bit Windows and 64-bit OS X builds, even non-shared.
For the above reason nasm is currently intentionally not auto-detected, instead
the assembler must be explicitly specified using "AS=nasm ./configure".
Also drop -O2 from ASFLAGS since it's simply ignored anyway.
But as we pass AS=$(TARGET_AS) it ends up using gas instead. Fix it by
explicitly passing AS=yasm instead.
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Fixes
CC dri.lo
/tmp/ccc6IbbW.s: Assembler messages:
/tmp/ccc6IbbW.s:3114: Error: selected processor does not support ARM mode `ldrex r2,[r1]'
/tmp/ccc6IbbW.s:3117: Error: selected processor does not support ARM mode `strexeq r2,r0,[r1]'
/tmp/ccc6IbbW.s:3273: Error: selected processor does not support ARM mode `ldrex r2,[r1]'
/tmp/ccc6IbbW.s:3276: Error: selected processor does not support ARM mode `strexeq r2,r3,[r1]'
/tmp/ccc6IbbW.s:3352: Error: selected processor does not support ARM mode `ldrex r1,[r2]'
/tmp/ccc6IbbW.s:3355: Error: selected processor does not support ARM mode `strexeq r1,r0,[r2]'
/tmp/ccc6IbbW.s:3451: Error: selected processor does not support ARM mode `ldrex r3,[r2]'
/tmp/ccc6IbbW.s:3454: Error: selected processor does not support ARM mode `strexeq r3,ip,[r2]'
/tmp/ccc6IbbW.s:3522: Error: selected processor does not support ARM mode `ldrex r3,[r0]'
/tmp/ccc6IbbW.s:3525: Error: selected processor does not support ARM mode `strexeq r3,r1,[r0]'
Makefile:653: recipe for target 'dri.lo' failed
make[5]: *** [dri.lo] Error 1
make[5]: Leaving directory '/home/buildroot/buildroot/output/build/xserver_xorg-server-1.17.2/hw/xfree86/dri'
using this defconfig
BR2_arm=y
BR2_TOOLCHAIN_BUILDROOT_WCHAR=y
BR2_TOOLCHAIN_BUILDROOT_CXX=y
BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_EUDEV=y
BR2_PACKAGE_MESA3D=y
BR2_PACKAGE_MESA3D_DRI_DRIVER_SWRAST=y
BR2_PACKAGE_XORG7=y
BR2_PACKAGE_XSERVER_XORG_SERVER=y
[Peter: fix conditional, add comment explaining issue]
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
libssh2 and libssh both implement SSH and provide a library API for apps.
Both support SSH, SFTP, auth, channels etc. Both are 25K-30K lines of code.
[libssh2 vs libssh - A comparison]
http://www.libssh2.org/libssh2-vs-libssh.html
[Peter: add sha256 hash, fix typo in help text]
Signed-off-by: Scott Fan <fancp2007@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Due to recent changes in U-Boot, see
http://git.denx.de/?p=u-boot.git;a=commit;h=a26cd04920dc069fd6e91abb785426cf6c29f45f
re-creation of .config from defconfig by "make oldconfig" happened
incorrectly.
Default prompt for target selection was set as No that lead to missing platform
selection by automated scripts like that:
------------------>8------------------
"yes "" | make oldconfig" on defconfig
------------------>8------------------
And that lead to build failure:
------------------>8------------------
$ make
scripts/kconfig/conf --silentoldconfig Kconfig
CHK include/config.h
UPD include/config.h
GEN include/autoconf.mk
In file included from ./include/common.h:18:0:
include/config.h:5:22: fatal error: configs/.h: No such file or directory
#include <configs/.h>
^
compilation terminated.
scripts/Makefile.autoconf:72: recipe for target 'include/autoconf.mk' failed
make[1]: *** [include/autoconf.mk] Error 1
------------------>8------------------
This patch reverts mentioned change making possible to build U-Boot
2015.07 in Buildroot.
Note there's a probability that this particular patch won't make its way
in upstream U-Boot and better solution will be found there. But for now
we need to fix U-Boot building in Buildroot anyways.
Hopefully for the next release this patch won't be necessary.
Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
When the rootfs is read-only, keys will be generated in a volatile
location, which is inherently bad as host keys will change on each boot,
rendering them virtually useless.
Add a warning so the user is at least aware of the issue.
Hide the rm output to avoid noisy output, now that we have a proper warning.
Move the starting message after the symlink-block, to avoid messages
collision. Move the umask as well, since /etc/dropbear/ may be world
readable; just the private host keys should be ?00 (and dropbear handles
that by itself).
[Peter: minor tweaks to commit message]
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Peter Korsgaard <jacmet@uclibc.org>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Commit ebf3a6117c (package/libyuv: new package, 2015-08-11) added a
reference to the libyuv Config.in file at the wrong place. Fix that.
Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
X.org xserver depends on libepoxy for glamor support, which depends on
EGL support. Mesa3d is not the only possible EGL provider therefore
change the dependency check.
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
A tool for extracting OOPS/panic logs from MTD.
Tested using arm-buildroot-linux-gnueabihf toolchain.
[Thomas:
- use sp-oops-extract instead of sp_oops_extract as the Config.in
prompt and in the .mk file comment
- remove @ in front of the build and install commands.
- use $(TARGET_CONFIGURE_OPTS) instead of manually passing CC, AR,
LD, CFLAGS and LDFLAGS.]
Signed-off-by: Doug Kehn <rdkehn@yahoo.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
[Thomas:
- include package/ibrdtn-tools/Config.in from package/Config.in
- fix the Config.in option name: we don't use - in option names, it
should be replaced by _. Also do the same change in the .mk file.
- from Config.in, don't select BR2_PACKAGE_IBRDTND (it's not a
dependency of ibrdtn-tools), but instead select
BR2_PACKAGE_IBRCOMMON and BR2_PACKAGE_IBRDTN.
- in the Config.in file, fix the comment dependency logic (we want
the comment to be shown when either thread support *or* C++
support is missing)
- add hash file.
- do not install to staging, since the package does not install any
library
- remove IBRDTN_TOOLS_SOURCE variable, since it's equal to the
default value
- add ibrcommon, ibrdtn and host-pkgconf as mandatory dependencies,
and handle libdaemon and libarchive as optional dependencies.
- remove custom INSTALL_STAGING_OPTS and INSTALL_TARGET_OPTS:
automake is used, so there's no need for any hack.]
Signed-off-by: Tom Sparks <tom_a_sparks@yahoo.com.au>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
[Thomas:
- add package to package/Config.in
- remove "select" on libdaemon, libcurl, sqlite and openssl from
Config.in, since those are optional dependency.
- add "select" on ibrcommon, since it is a mandatory dependency.
- remove bogus includes of package/ibrcommon/Config.in and
package/ibrdtn/Config.in, those are directly from
package/Config.in.
- fix Config.in comment dependency and indentation.
- remove INSTALL_STAGING = YES, since ibrdtnd does not install a
library.
- remove libdaemon, libcurl, sqlite and openssl as mandatory
dependencies, and handle them as optional dependencies.
- add ibrcommon in the dependencies (even if ibrdtn already depends
on it)
- remove custom INSTALL_STAGING_OPTS and INSTALL_TARGET_OPTS, they
are not needed, since the Makefiles are properly generated by
automake.
- explicitly disable features for which Buildroot doesn't have the
necessary dependencies (dtndht, wifip2p, vmime)
- add hash file.]
Signed-off-by: Tom Sparks <tom_a_sparks@yahoo.com.au>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Due to a copy/paste mistake, zlib was being added to
<pkg>_DEPENDENCIES even when not enabled in the configuration. This
commit fixes that.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
pkg-config is used by ibrcommon to detect the availability of openssl,
libnl and libxml2, so we must depend on host-pkgconf.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
[Thomas:
- Add missing include in package/Config.in to make the package
appear in menuconfig.
- Fix the comment dependencies: the comment should be shown either
if C++ is not available *or* if threads are not supported.
- Add a hash file.
- Add missing dependency on host-pkgconf, since pkg-config is used
to detect the availability of ibrcommon.
- Remove the custom INSTALL_STAGING_OPTS and INSTALL_TARGET_OPTS:
they are not needed since automake is used.
- Make --with-compression conditional on whether zlib is available.
- Add optional dependency on libglib2.
- Add missing final newlines in .mk and Config.in files.]
Signed-off-by: Tom Sparks <tom_a_sparks@yahoo.com.au>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
We want the comment to be displayed either if C++ is not supported
*or* if threads is not supported.
Also, fix the indentation to use a tab.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
This commit adds support for gdb 7.10.
gdb 7.9.1 carries the following patches:
- 0001-gdbserver-fix-uClibc-whithout-MMU.patch
merged as 6282837972a5c7b89968319caf821fcbd2a166bb, and part of 7.10
- 0002-gdbserver-xtensa-drop-xtensa_usrregs_info.patch
merged as deb44829ecc1dd38275af0fcf91acd319e227a89, and part of 7.10
- 0003-gdbserver-xtensa-fix-typo-in-XCHAL_HAVE_LOOPS.patch
merged as a2d5a9d76f2366ed93095fc5a63eafa06b22f808, and part of 7.10
Consequently, none of the three patches we have for 7.9.1 are useful
for 7.10.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
[Thomas:
- add package in package/Config.in, to make it visible in menuconfig
- make the openssl, libnl and libxml2 dependencies optional, since
they are definitely not mandatory
- add README to the license files, since it contains useful
licensing related information.
- remove custom INSTALL_STAGING_OPTS and INSTALL_TARGET_OPTS since
the package uses automake.
- add missing final newline in Config.in and .mk file.]
Signed-off-by: Tom Sparks <tom_a_sparks@yahoo.com.au>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
[Thomas:
- make the license info more specific: it's BSD-2c, not just BSD.
- use a single conditional block to test the architecture, instead
of multiple separate conditions.
- add missing arm/armeb handling in the architecture condition.
- make the host-nasm dependency only used on x86/x86-64, since it's
not used for other architectures
- group the ARCH= and ENABLE64BIT= make variable definitions in a
LIBOPENH264_MAKE_OPTS variable, and use them at install time (in
addition to build time) to avoid build issues.
- wrap too long lines in the .mk file.]
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
[Thomas:
- replace patches from Bernd by patches that are Git formatted and
have a chance of being upstream.
- remove the no longer necessary post configure hook to build
generate_cookbook for the host
- pass --disable-unittests to disable unit tests.]
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Now that our Mercurial download mechanism has been fixed to also
support tags, let's use this possibility in the eigen package.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
When the version of a package is a Mercurial tag, the download fails,
with:
abort: unknown revision 'X.Y.Z'!
This is because, in Mercurial, tags are commits like the others, and
when we clone, we actively request a tag. But then, the server
"dereferences" that tag and sends us the revision pointed to by that
tag. Of course, since the tag is a commit after the revision we got,
we do not have the revision adding the tag.
So, we just have to download the full repository to be sure we have
the tags in our local clone.
Reported-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Recently, we've tried to have the manual lie at the top-level of the
site, to get a shorter URL.
However, that is broken: we do not need only a link the the HTML, but
also to the CSS and to any resource linked from the html (images...).
The server configuration has now been updated to add a redirect, so we
no longer need that symlink anyway. Remove it.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Peter Korsgaard <jacmet@uclibc.org>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Because of a limitation in how makedevs resolves names [0], usernames
and groupnames would be resolved with UIDs and GIDs from the host, not
the target.
Fixing makedevs would involve us rewriting a /etc/passwd and /etc/group
parser (not too complex, still not trivial).
Document that the user and group fields should only be numbers, not
names. Also, the manual is currently misleading, as an example indeed
uses names for the user and group fields. Fix that and expand the
explanations.
The mode field should also be numbers, not a rwx combo.
Slight typographical eye-candy about major/minor fields.
[0] it uses getpwnma(3) and getgrnam(3) to resolve names to IDs, and
those only resolve names on the host (i.e. there is no way to specify
a chroot-like feature)
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
As pointed by Jörg Krause one of the novelties of the 1.5.2 release is
the new mtdpart tool, so add an option for it.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
http-parser provides a simple C API to parse HTTP responses and
requests.
This packaging uses the official Joyent repository.
[Thomas:
- since we're always building the shared library, depend on
!BR2_STATIC_LIBS in Config.in. We could build only the static
library, but then we would have to do all the lib installation
manually.
- indent using tabs in Config.in
- use 'make install' instead of handcoding the library installation.
- use $(TARGET_CONFIGURE_OPTS) instead of just CC= and LD=.
- use tabs for indentation in commands instead of spaces
- add patch to fix reinstallation.]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Building with ccache failed with:
Running configuration tests...
Failed to process makespec for platform 'devices/linux-buildroot-g++'
Project ERROR: Compiler <path_to_output_dir>/host/usr/bin/ccache <path_to_output_dir>/host/usr/bin/<cross_compile>-g++ not found. Check the value of CROSS_COMPILE -device-option
Could not read qmake configuration file <path_to_output_dir>/build/qt5base-5.5.0/mkspecs/devices/linux-buildroot-g++/qmake.conf.
Error processing project file: /dev/null
This was caused by Buildroot setting this in
qt5base-5.5.0/mkspecs/devices/linux-buildroot-g++/qmake.conf:
QMAKE_CXX = $${BR_CCACHE} $${CROSS_COMPILE}g++
But qt5base-5.5.0/mkspecs/features/device_config.prf expects QMAKE_CXX
to be a single valid (absolute or QMAKE_PATH_ENV-relative) path to an
existing file, which is not possible if using ccache as above.
Add a patch fixing this by testing only the first value in QMAKE_CXX.
Signed-off-by: Benoît Thébaudeau <benoit@wsystem.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
When using the python-package infrastructure, there is no need for
packages to declare a dependency on the Python interpreter: the
package infrastructure does it automatically.
Moreover, this is actually broken in the case of python-can, which can
be selected either with Python 2.x or Python 3.x. If the latter is
chosen, python-can will still trigger the build of Python 2.x, which
is incorrect.
This was discovered by Vicente Olivert Riera during the analysis of
the following build failure:
http://autobuild.buildroot.net/results/aff/affb1d4a328c479be73b7818364db5914bf3d376/
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The changes brought by this commit should have been part of the
previous commit, but were not due to a mistake. This commit implements
the following changes to the scrypt package:
- move from "Libraries -> Crypto" to "System tools", since it only
installs one binary, scrypt, and no library.
- bump from 1.1.6 to 1.2.0
- add comment in the .hash file explaining where the hash is coming
from.
- add missing dependency on OpenSSL
- use BSD-2c as the license code, instead of BSD2
- use 'main.c' as the license file.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
[Thomas:
- move from "Libraries -> Crypto" to "System tools", since it only
installs one binary, scrypt, and no library.
- bump from 1.1.6 to 1.2.0
- add comment in the .hash file explaining where the hash is coming
from.
- add missing dependency on OpenSSL
- use BSD-2c as the license code, instead of BSD2
- use 'main.c' as the license file.]
Signed-off-by: Parnell Springmeyer <parnell@digitalmentat.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
[Thomas:
- change the inclusion location in package/Config.in to be with the
other linux-pam plugins.
- fix indentation of the Config.in file.
- fix build of the package when a toolchain without SSP support is
used.
- fix installation location of the PAM module: it was installed in
/usr/lib/security, while all other PAM modules are in
/lib/security.
- adjust the ordering of the variables in the .mk file to be a bit
more logical.
- remove passing of $(TARGET_CONFIGURE_OPTS) in <pkg>_CONF_ENV as it
is not needed: it is already done by the autotools-package
infrastructure.]
Signed-off-by: Giovanni Zantedeschi <giovanni.zantedeschi@datacom.ind.br>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
[Thomas:
- make libpam-radius-auth depend on linux-pam (since it's a
linux-pam plugin, it needs some header files from linux-pam) by
adding a "if BR2_PACKAGE_LINUX_PAM...endif" block in
package/Config.in. This way, we will be grouping all the Linux PAM
plugins together.
- Fix the indententation in the Config.in file.
- Use a better Config.in help text, copy/pasted from the website.
- Use a tarball instead of github. This allows to remove
AUTORECONF=YES.
- Add linux-pam as a dependency.
- Use $(TARGET_CONFIGURE_OPTS) instead of passing just CC/LD, but
pass it in the environment rather than as options so that the
CFLAGS/LDFLAGS added by the package Makefile are still taken into
account.
- Use mkdir -p + cp -dpfr instead of $(INSTALL) -D since we are
copying multiple files.
- Add a hash file.]
Signed-off-by: Giovanni Zantedeschi <giovanni.zantedeschi@datacom.ind.br>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Add a new config option that allows to build cgroup-tools - a set of
command-line utils for managing cgroups.
[Thomas: slightly change the prompt of the new Config.in option.]
Signed-off-by: Bartosz Golaszewski <bgolaszewski@baylibre.com>
Reviewed-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Fix the missing gstreamer1 build dependencies, which could possibly
prevent the configuration of qt5multimedia from detecting the supported
gstreamer1 features.
Fix the missing gstreamer1 install rules, which resulted in the
following runtime error:
defaultServiceProvider::requestService(): no service found for - "org.qt-project.qt.mediaplayer"
Signed-off-by: Benoît Thébaudeau <benoit@wsystem.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Even though we have some specific code to support building Qt5 for
static-only configurations, it doesn't work. The first problem is that
our custom qmake.conf always passes -ldl, which makes a number of Qt5
config.tests fail at configure time. Once this problem is fixed by
removing -ldl from QMAKE_LIBS and adding it to QMAKE_LIBS_DYNLOAD
instead, the next problem is that the plugin infrastructure of Qt5
assumes that Linux has dynamic library support: the qlibrary_unix.cpp
file includes <dlfcn.h>, and the only condition for this file to not
be included is:
Until recently, building Qt5 statically was working because our C
library was not built static-only: it provided <dlfcn.h> and
libdl.so. But now that we have a really static only toolchain, Qt5 no
longer builds.
The easiest solution is to simply make Qt5 depend on dynamic library
support.
Fixes:
http://autobuild.buildroot.net/results/538/538e0325adba9fabbe4ec8e550fbb6a7219f5e7a/
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
It should point to the filesystem path on the server, not the HTTP virtual path.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
This will give us a shorter URL, that we can more easily refer to in the
documetation itself, in help texts, on IRC...
[Peter: Use buildroot.org everywhere]
Suggested-by: Arnout Vandecappelle <arnout@mind.be>
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Arnout Vandecappelle <arnout@mind.be>
Cc: Peter Korsgaard <jacmet@uclibc.org>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
The last tagged release of zyre, v1.0.0, was made in May 2014. Since
then, they have switched to pkg-config to detect zmq and czmq, which
fixes static linking problems. However, they made a number of changes
to configure.ac, which make it difficult to backport just the relevant
changes.
Since we already had another backported fix, let's simply bump the
version of zyre to the latest available commit, which builds fine with
no change for shared and static scenarios, thanks to the use of
pkg-config.
An issue was opened upstream to ask them to tag a new release:
https://github.com/zeromq/zyre/issues/324.
Fixes:
http://autobuild.buildroot.net/results/0ab/0ab4c6a4bb4942d51e7712073d4731d81ecb5251/
Thanks to Vincente Olivert Riera for the initial investigation.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Fixes:
CVE-2015-6563 - Fixed a privilege separation weakness related to PAM
support.
CVE-2015-6564 - Fixed a use-after-free bug related to PAM support that
was reachable by attackers who could compromise the pre-authentication
process for remote code exectuion.
CVE-2015-6565 - incorrectly set TTYs to be world-writable.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
The Makefiles for canfestival are not correctly written, which leads to
multiple warnings such as:
make[4]: warning: jobserver unavailable: using -j1. Add `+' to parent make rule.
Since canfestival is relatively small, it builds in less than 6s here
when not in parallell, while a parallel build takes 5s.
Just disable parallel build to avoid future surprises.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
NetworkManager uses code (originally from udev) that has since been
split from the main systemd codebase into libgudev.
Tweak the package files for NetworkManager to require libgudev when
building with systemd.
Signed-off-by: Nathaniel Roach <nroach44@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
As libgudev recently was split from the main systemd/udev source, this
library is now required to build certain packages.
This library is only relevant to systemd, as the code it contains is
still contained in eudev.
[Thomas:
- don't show the dependency comment when systemd is not available,
since libgudev is anyway useless when you're not using systemd.
- fix the license, it's LGPLv2.1+ and not GPLv2+
- remove useless empty lines in the .mk file.]
Signed-off-by: Nathaniel Roach <nroach44@gmail.com>
Tested-by: Yegor Yefremov <yegorslists@googlemail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Currently, the configurators are using $($(2)_MAKE_ENV), often derived
from $(TARGE_MAKE_ENV), as the environment to be set when calling the
various configurators.
This means that our host tools are used first, most notably pkg-config
(from host-pkgconf).
However, this is inherently flawed. Our pkg-config, when set for the
host, only searches .pc files in $(HOST_DIR) and never ever uses the
ones from the host. For example, since we do not build a host-qt, our
pkg-config would not find the host's QtCore.pc et al.
Consequently, on some systems (but not on others?) most of the
configurators fail to build, especially the latest kernel versions, as
they have been starting to use pkg-config two years ago.
Fix that by filtering-out sensible values out of the environment, but
only when calling the configurators.
[Thomas: rewrap comment to appropriate length.]
Reported-by: Mauro Condarelli <mc5686@mclink.it>
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Cc: Mauro Condarelli <mc5686@mclink.it>
Tested-by: Mauro Condarelli <mc5686@mclink.it>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Fixes compile error using this defconfig
BR2_TOOLCHAIN_BUILDROOT_WCHAR=y
BR2_TOOLCHAIN_BUILDROOT_CXX=y
BR2_PACKAGE_XORG7=y
BR2_PACKAGE_XSERVER_XORG_SERVER=y
BR2_PACKAGE_XPROTO_DRI2PROTO=y
drmVersionPtr is referenced not only in hw/xfree86/dri2/dri2.c
but also in hw/xfree86/dri/dri.c.
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Reviewed-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Tested-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
This (partially) reverts commit 5e238a87ea.
The dependency is changed from a 'select' to a 'depends on' to avoid a
circular dependency caused by the introduction of OpenCV-3. This means
we can also drop the threads and C++ dependencies, since they are now
inherited via the depends on OpenCV.
Cc: Jonathan Ben Avraham <yba@tkos.co.il>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Samuel Martin <s.martin49@gmail.com>
[yann.morin.1998@free.fr: fix dependencies]
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
As Jonathan noticed in [1], users' applications may depend on opencv-2.4
APIs removed in opencv-3.0.
So, re-introduce opencv package as it was right before the bump to
opencv-3.0 (i.e.: commit bf00b5a9ea).
We do not support both OpenCV-2.4 and OpenCV-3 at the same time, so make
OpenCV-3 depend on !OpenCV-2.4.
[1] http://lists.busybox.net/pipermail/buildroot/2015-August/135270.html
Cc: Jonathan Ben Avraham <yba@tkos.co.il>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Samuel Martin <s.martin49@gmail.com>
[yann.morin.1998@free.fr:
- remove legacy symbols, now
- make opencv3 depends on !opencv, not the other way around
- slitghly reword the commit log (opencv/opencv3 dependency)
]
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Since there is a couple of API breaks between OpenCV 2.4 and 3.0, two
distinct packages mutually exclusive will be integrated in the package
tree.
So, this change prepares the re-introduction of the OpenCV-2.4 package
by renaming the current opencv package (which provides OpenCV-3.0) to
opencv3.
Reverse dependencies (vlc) is fixed to use the new symbols.
Cc: Jonathan Ben Avraham <yba@tkos.co.il>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Samuel Martin <s.martin49@gmail.com>
[yann.morin.1998@free.fr:
- fix missed usage in vlc.mk
- don't remove legacy OpenCV symbols
- fix 'endif' comment
- slightly reword commit log (reverse deps)
]
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Our current apitrace version can't detect the host-python version
correctly, so if both host-python and host-python3 where installed, it
will take the last one and it will fail with an "invalid syntax" error.
The latest apitrace version has this problem solved and it detects the
host-python version correctly.
Fixes:
http://autobuild.buildroot.net/results/22a/22a73b4ba0adcc874ecc153917ae6edcfd4d37af/
Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
The daemon binary is tftpd, not in.tftpd. While we are at it, drop the
unneeded /usr/local from the PATH.
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Also:
* Update patch #1
* Remove patch #2, fixed upstream
* add new dependency to boost
* use hashes from sourceforge
[Thomas:
- add locally calculated sha256 hash
- show the Config.in comment about toolchain dependencies only when
BR2_PACKAGE_BOOST_ARCH_SUPPORTS is set.]
Signed-off-by: Jörg Krause <joerg.krause@embedded.rocks>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Both of CONFIG_NF_CONNTRACK and CONFIG_NF_CONNTRACK_MARK are needed by
xtables-addons.
Although the current code does enable them in the linux' .config file,
the former is protected behind CONFIG_NETFILTER_ADVANCED, which may be
missing from a user-supplied (def)config file, and is missing from some
of the bundled defconfigs as well.
For example, the following defconfig fails to build:
BR2_TOOLCHAIN_EXTERNAL=y
BR2_LINUX_KERNEL=y
BR2_LINUX_KERNEL_DEFCONFIG="i386"
BR2_PACKAGE_XTABLES_ADDONS=y
So, also force-enable CONFIG_NETFILTER_ADVANCED.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Too often the question is raised, that ipkg, opkg and rpm do not work,
and users complain they can not install packages.
Even though we do have a clear and clearly explained section in our
manual, people do not read it (when will users read manuals? sigh...).
So, add a big fat comment about ipkg/opkg/rpm, that Buildroot does not
generate binary packages and does not provide any package database for
any of those package manager.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Cc: Peter Korsgaard <jacmet@uclibc.org>
Cc: Arnout Vandecappelle <arnout@mind.be>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
libselinux causes some build problems due to the toolchain on ARC,
which haven't been solved so far. As a temporary solution for Buildroot
2015.08, this commit makes libselinux (and its reverse dependencies)
unavailable on ARC. Of course, once the toolchain problem is
addressed, this commit can be reverted to re-enable libselinux on ARC.
Fixes:
http://autobuild.buildroot.org/results/220/2207f6aad44a6988bf07b02b583b6418ad930dc8/
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
This commit adds a patch to Boost to make it use the eventfd()
function provided by the C library when uClibc is used, rather than
falling back to using directly the __NR_eventfd system call. This
fixes the build on ARC, which doesn't define __NR_eventfd.
The original problem is that uClibc pretends to be glibc 2.2, which
didn't had eventfd(), so Boost makes the system call
manually. uClibc-ng, in its next release, will pretend to be glibc
2.10 (see
http://cgit.uclibc-ng.org/cgi/cgit/uclibc-ng.git/commit/?id=4ff3a6c8eb91db71d6dc3d2932b66e848bd20ac3),
which will also fix the problem, but requires bumping the uClibc
version, rebuilding the external toolchains, and so on.
Ideally, Boost should be doing a compile test to detect if eventfd()
is available or not, but the Boost build system is so brain-damaged
that doing so would require way too much effort.
Fixes:
http://autobuild.buildroot.org/results/22b/22b710346d2cd78b7b51cdccd18d670bb6ac5d24/
and many similar build failures
[Peter: minor tweaks to description]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
The mono source code includes <dlfcn.h>, which is only available when
shared library support is available. While it might be possible to do
a fully static installation of Mono, it probably isn't very useful.
While we're at it, this commit also makes sure that the Config.in
comment is not visible when the architecture doesn't support Mono.
Fixes:
http://autobuild.buildroot.net/results/5d99bdf77f1942fa403081267c362aa1f8fd0dab/
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
When the XCB backend is selected, the libqxcb.so plugin is installed,
and is linked against libQt5XcbQpa.so. However, until, Buildroot was
not installing this library. This commit fixes this.
[Thomas: tweak commit log.]
Signed-off-by: Matthew Shyu <matthew.shyu@amlogic.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
libpthsem has been affected since quite a while by build issues, but
occuring only on Nathaniel Roach's autobuilder. The failure message
is:
error: #error "Unsupported Linux (g)libc version and/or platform"
This message comes from pth_mctx.c file, which implements five methods
for machine context initialization:
VARIANT 1: THE STANDARDIZED SVR4/SUSv2 APPROACH
VARIANT 2: THE SIGNAL STACK TRICK
VARIANT 3: LINUX SPECIFIC JMP_BUF FIDDLING
VARIANT 4: INTERACTIVE SPECIFIC JMP_BUF FIDDLING
VARIANT 5: WIN32 SPECIFIC JMP_BUF FIDDLING
The "Unsupported (g)libc version and/or platform" only appears when
"VARIANT 4" is used, since VARIANT 4 only supports a very limited
number of platforms. So when building with Nathaniel's autobuilder,
VARIANT 4 is chosen.
However, when you build libpthsem on some other machine than
Nathaniel's autobuilder, VARIANT 2 is chosen, and works regardless of
the glibc version or architecture.
VARIANT 2 is chosen when:
!PTH_MCTX_DSP(sjljlx) &&\
!PTH_MCTX_DSP(sjljisc) &&\
!PTH_MCTX_DSP(sjljw32)
On both Nathaniel's autobuilder, and on a different machine, the
PTH_MCTX_MTH macro gives sjlj:
#define PTH_MCTX_MTH_use PTH_MCTX_MTH_sjlj
However, on a "normal" machine, the PTH_MCTX_DSP macro gives ssjlj:
#define PTH_MCTX_DSP_use PTH_MCTX_DSP_ssjlj
While on Nathaniel's autobuilder, it gives:
#define PTH_MCTX_DSP_use PTH_MCTX_DSP_sjljlx
This explains why VARIANT 4 is being used on Nathaniel's autobuilder,
while VARIANT 2 is used when building on other platforms.
The decision of the value for PTH_MCTX_DSP is derived as follows in
configure.ac:
AC_CHECK_SJLJ(sjlj=yes, sjlj=no, sjlj_type)
[...]
elif test ".$sjlj" = .yes; then
mctx_mth=sjlj
mctx_dsp=$sjlj_type
[...]
AC_DEFINE_UNQUOTED(PTH_MCTX_DSP_use, [PTH_MCTX_DSP_$mctx_dsp], [define for machine context dispatching])
So basically, the value of PTH_MCTX_DSP is $sjlj_type, as returned by
the AC_CHECK_SJLJ autoconf macro, implemented in
acinclude.m4. However, reading this macro is quite informative: it
does a number of tests that are not cross-compile
friendly. Especially, it looks at the kernel version with 'uname -r'
to decide whether the Linux system is braindead or not. If the system
runs a 2.2.x kernel or newer 2.x, or a 3.x kernel, everything is fine,
the system is not braindead, and sjlj_type is set to ssjlj. However,
if the build system runs a 4.x kernel, then it is considered as
braindead, and sjlj_type is set to sjljlx.
And indeed, Nathaniel's autobuilder is running a 4.x kernel, while all
other autobuilders run 2.x or 3.x kernels.
Since for all sane Linux systems, this AC_CHECK_SJLJ macro concludes
that the setjmp/longtmp type is ssjlj, this commit takes the simplest
route of forcing this value, skipping the broken detection.
Note that we're overriding ac_cv_check_sjlj instead of using the
--with-mctx-* options, since the latter do not work properly in the
context of Nathaniel's autobuilder, as the broken cross-compilation
tests continue to cause problems.
Fixes:
http://autobuild.buildroot.org/results/3dd/3dd66d70c2e36f2d9fb0a0fe01bbdec009d55067/
and many similar build failures
This patch has been tested by Nathaniel Roach in the context of his
autobuilder instance which was causing the original problem.
Tested-by: Nathaniel Roach <nroach44@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Tested-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Remove patch 0001-Revert-Use-std-namespace-for-snprintf.patch:
This patch was initially intented to remove upstream commit
1c58876185d2a4ed87dac4a54b82f607e74f55fd to disable std::snprintf() for all
compilers. However, the patch actually reverts upstream commit
240ddb6a1b7aae7c6528e328995812ee695a73af which only uses std namespace if the
compiler defines __cplusplus >= 201103L, thus is a recent C++11 compiler.
Furthermore, upstream commit fac87108a49fb1b2640eff5d8e4cc7a12723a510 adds
the `-std=c++11` compiler flag to gcc, so jsoncpp now requires a C++11 compiler
either way.
With jsoncpp requiring a recent C++11 compiler we need at least gcc 4.7.
Backport patch from upstream [1] to remove `-Werror` from the compiler flags to
allow building with CS ARM toolchains.
[1]
d7b84f69c5
Cc: Baruch Siach <baruch@tkos.co.il>
Cc: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Jörg Krause <joerg.krause@embedded.rocks>
Reviewed-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
[Thomas:
- fix legal info:
* the license is GPLv2+ *or* Apache 2.0
* the license files list separator is space, not comma
* README.license.md has been added to the license files, since it
contains some useful information about the licensing.
- rewrap Config.in help text.]
Signed-off-by: Yegor Yefremov <yegorslists@googlemail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Buildroot removed non LFS support in the 2015.05 release. We now pass
-D_FILE_OFFSET_BITS=64 unconditionally, so the mtd WITHOUT_LARGEFILE make
variable has no effect.
[Thomas: keep using += for other assigments of MTD_MAKE_OPTS.]
Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Eventhough it should be theoretically possible to build protobuf in
static-only, configure.ac includes an m4 macro, ACX_PTHREAD defined in
m4/acx_pthread.m4, which forcibly checks for threads *with* shared libs,
and is completely broken for static-only (as it forces -shared whatever
the user selection), ending up with these configure results:
checking for the pthreads library -lpthreads... no
checking whether pthreads work without any flags... no
checking whether pthreads work with -Kthread... no
checking whether pthreads work with -kthread... no
checking for the pthreads library -llthread... no
checking whether pthreads work with -pthread... yes
checking for joinable pthread attribute... PTHREAD_CREATE_JOINABLE
checking if more special flags are required for pthreads... no
checking whether to check for GCC pthread/shared inconsistencies... yes
checking whether -pthread is sufficient with -shared... no
checking whether -lpthread fixes that... no
checking whether -lc_r fixes that... no
configure: WARNING: Impossible to determine how to use pthreads with shared libraries
checking whether what we have so far is sufficient with -nostdlib... no
checking whether -lpthread saves the day... no
configure: WARNING: Impossible to determine how to use pthreads with shared libraries and -nostdlib
Fixing this macro is far from trivial; protobuf in a static-only
scenario is probably not too common. So, just disable protobuf for
static-only builds.
Fixes:
http://autobuild.buildroot.org/results/3ef/3efb86c7e8ec2db5d953d634470cafae79bd34cf/http://autobuild.buildroot.org/results/96a/96ae1108fc3193df2a93a779057130b774379655/http://autobuild.buildroot.org/results/00c/00c29795980319d38823eec1301e9ebd860ebd2a/
...
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Nimai Mahajan <nimaim@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Currently, protobuf-c's dependency on threads is labelled as being
inherited from protobuf.
This is wrong, as protobuf-c does not depend on protobuf, and such
dependency was removed in e16865a (protobuf-c: Don't require protobuf on
target), but forgot to remove the corresponding comment.
Remove it now.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
This patch fixes this autobuild failure:
http://autobuild.buildroot.net/results/e14/e14e1700d4fe359c56be57587bdb509e002e5753/build-end.log
The problem is caused by the -fvisibility-inlines-hidden switch.
Removing the switch is probably the least intrusive way we can make the
problem go away. The first solution that was considered was to move the
definition of the offending method to the .cpp file. However, with
other combinations of compilers and platforms, I suppose it could happen
with other methods as well. Removing the switch ensures we catch them
all.
Built-tested with the config from the build bot, as well as with all OLA
options/plugins enabled.
Signed-off-by: Simon Marchi <simon.marchi@polymtl.ca>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Changes since last version:
- early frame sequential 3D support,
- add exposure=off option,
- khronos: merge with more recent header file,
- vchiq: better error handling.
Signed-off-by: Benoît Thébaudeau <benoit@wsystem.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Changes since last version:
- add support for lz4-compressed kernels,
- add copyright and license banners,
- enable warnings and fix a few uses of undefined variables,
- update from the rpi-4.0.y kernel.
Signed-off-by: Benoît Thébaudeau <benoit@wsystem.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
autoconf can't detect if AI_IDN is really supported
(907916e808/),
so a --disable-gai-idn flag was added to explicitly disable the usage
of IDN.
Before this patch, msmtp failed to send mail with the following
output:
msmtp: cannot locate host smtp.mandrillapp.com: Bad value for ai_flags
[Thomas: tweak commit log.]
Signed-off-by: Anthony Viallard <viallard@syscom-instruments.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Currently, when a preconfigured prebuilt toolchain forgets to specify
its gcc version, the error message is a bit misleading, like:
Incorrect selection of gcc version: expected .x, got 4.9.2
Add a an explicit check for the gcc version being set, that reports a
better error message.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
musl fixes have been merged upstream, so the patch is no longer
needed.
[Thomas: re-add locally calculated sha256 hash.]
Signed-off-by: Alex Suykov <alex.suykov@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
C++ support unconditionally needs shared libraries; it uses
dlopen/dlsym.
Also, fix the conditions under which the comment is shown.
Finally, explicitly require C++ support when configuring.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Test the configuration of the kernel to see if loadable module support
is enabled, and error out otherwise. This makes build failures of
external kernel modules less confusing.
[Thomas: tweak the commit log.]
Signed-off-by: Noé Rubinstein <nrubinstein@aldebaran.com>
Acked-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
[Thomas:
- Rewrap Config.in help text
- Indicate that the SHA256 hash has been locally calculated, and add
the MD5 and SHA1 hashes from SourceForge.
- Use downloads.sourceforge.net as the download site instead of
garr.dl.sourceforge.net, in order to use the SourceForge mirrors
properly, and be consistent with all other Buildroot packages
downloading stuff from SourceForge.
- Change the license from "MIT" to "Boost Software License 1.0 or
MIT" as indicated by the license.txt file.
- Change the <pkg>_EXTRACT_CMDS to remove the sub-directory created
by the .zip file extraction, and simplify the staging installation
step accordingly.]
Signed-off-by: Jonathan Ben Avraham <yba@tkos.co.il>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The common filesystem infrastructure already supports a
<fs>_PRE_GEN_HOOKS variable, which allows filesystem makefiles to
register some actions to be done before the root filesystem image is
generated.
This commit adds a similiar <fs>_POST_GEN_HOOKS variable, which will
allow filesystem makefiles to do some actions after the filesystem
image has been generated. It will initially be used by the iso9660
filesystem to delete the temporary directory it creates.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Noé Rubinstein <nrubinstein@aldebaran.com>
Acked-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
gcc will always report a three-digit version sting, like 4.9.3 or 5.1.0.
For gcc before 5, we want to check the first two digits, while starting
with gcc 5, we are only concerned about the first digit.
So, change our matching code to test for the leading part of the version
string, up to the first dot after as-many version digit we're interested
in.
Note: we're adding the dot in the .mk code rather than in the Kconfig
symbol, because it seemed cleaner to do so.
Reported-by: Jörg Krause <joerg.krause@embedded.rocks>
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The project seems not maintained anymore since there
is no commit since 2011:
https://github.com/wlach/wvstreams
After fixing the first build issue by adding a missing limit.h header...
xplc/modulemgr.cc:90:14: error: ‘PATH_MAX’ was not declared in this scope
char fname[PATH_MAX];
and fixing a basename() conflict between the gnu and posix version,
the build fail due to missing __libc_stack_end.
wvtask.cc:(.test+0xb08): undefined reference to `__libc_stack_end'
There is a configure test for __libc_stack_end support but it
doesn't work properly with a musl toolchain.
Since we already have several fixes for uClibc, let's mark wvstreams
as not available for musl toolchains, until someone interested
enough fixes it.
[Thomas: replace uClibc-ng by just uClibc in the Config.in comments.]
Signed-off-by: Romain Naour <romain.naour@openwide.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
As Thomas puts it:
The comment can only be visible when a toolchain that is *not*
uclibc and *not* glibc is used. I.e, the comment is now only visible
when musl is used. Which is not what we want.
Indeed, I completely borked the conditions. When a glibc or uClibc
toolchain is selected, the comment is entirely hidden, and we don;t get
the extra requirements (wchar, !static).
Fix that with the solution proposed by Thomas.
Reported-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
According to Nicolas Cavallari and confirmed by testing, std::strtoll
is indeed available in gcc 4.6, so the dawgdic package can be enabled
on gcc >= 4.6 instead of gcc >= 4.7.
Reported-by: Nicolas Cavallari <Nicolas.Cavallari@green-communications.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
When gcc 4.9.x was bumped from 4.9.2 to 4.9.3 in commit
2fed00ea1e, patch
920-libgcc-remove-unistd-header.patch was removed with the argument
that it had been applied upstream.
However, it is not the case, and the patch continues to apply fine on
gcc 4.9.3, and is actually needed to make gcc build properly on
NIOS-II.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
As found via autobuilders and discussed on the list, the
ifdef is wrong, as empty uses SysV semaphores and not POSIX
semaphores.
Tested with glibc/uclibc-ng builds. And with uclibc-ng without
threads.
Signed-off-by: Waldemar Brodkorb <wbx@openadk.org>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
SourceForge is working again, and Peter has copied the file to
fan-ctrl.c on sources.buildroot.org so that it gets found if
SourceForge breaks again. Therefore this commit re-enables the
fan-ctrl package.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Since argp-standalone is only available for uClibc-ng
and musl toolchains, it's safe to link with it when
the package is selected.
Signed-off-by: Romain Naour <romain.naour@openwide.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Since argp-standalone is only available for uClibc-ng
and musl toolchains, add the dependendy only if it's
selected.
Signed-off-by: Romain Naour <romain.naour@openwide.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Since argp-standalone is only available for uClibc-ng
and musl toolchains, it's safe to link with it when
the package is selected.
Signed-off-by: Romain Naour <romain.naour@openwide.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
lrzsz could technically build in a static-only environment, but it
unconditionally redefines the error() and error_at_line() functions,
which clashes with the definition from uClibc. Since the autotools
packaging dates back from 1998, lots of work is needed to fix it, and
do some proper tests on the availability of such functions.
So, let's mark it as not available for static builds, until someone
interested enough fixes it.
Fixes:
http://autobuild.buildroot.net/results/8106ab057f538d1408d736736fdbe50b99ae709d/
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
[Thomas: applying for 2015.08, because it fixes a regression
introduced in dnsmasq 2.74, as reported by Gustavo.]
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
According to the doc file from <uclibc-src>/docs/
Glibc_vs_uClibc_Differences.txt, the uclibc library read the
TZ environment variable, or the /etc/TZ file; the /etc/TZ file
should be a single line, ending with a newline, containing the
TZ setting. For example: echo CST6CDT > /etc/TZ
Whereas the tzdump cmd would output two lines like this:
# Asia/Shanghai
CST-8
This make the uclibc could not read the correct TZ setting, therefore
e.g. the 'busybox date' cmd always show the UTC timezone.
This fix remove the redundant first line from the tzdump output.
Signed-off-by: Scott Fan <fancp2007@gmail.com>
Tested-by: "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@free-electrons.com>
Add a patch to disable mallinfo statistics with musl toolchains
which doesn't have struct mallinfo.
Fixes:
selinux-util.c: In function ‘mac_selinux_init’:
selinux-util.c:70:25: error: storage size of ‘before_mallinfo’ isn’t known
struct mallinfo before_mallinfo, after_mallinfo;
Add a second patch for strndupa() which is a GNU extension.
Fixes:
./.libs/libudev-core.a(selinux-util.o): In function `mac_selinux_bind':
selinux-util.c:(.text+0xd94): undefined reference to `strndupa'
collect2: error: ld returned 1 exit status
Signed-off-by: Romain Naour <romain.naour@openwide.fr>
Cc: Clayton Shotwell <clshotwe@rockwellcollins.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The musl C library does not understand the feature test macro __USE_MISC and so
libuv (built-in dependency of nodejs) does not use the correct struct stat
definition for musl:
error: ‘uv_statbuf_t’ has no member named ‘st_ctimensec’
error: ‘uv_statbuf_t’ has no member named ‘st_mtimensec’
The macro __USE_MISC is defined by glibc if _BSD_SOURCE or _SVID_SOURCE is
defined.
The libuv build system enables the feature test macro _GNU_SOURCE for linux
builds.
Since glibc 2.19, defining _GNU_SOURCE also has the effect of implicitly
defining _DEFAULT_SOURCE - the replacement for _BSD_SOURCE and _SVID_SOURCE.
In glibc versions before 2.20, defining _GNU_SOURCE also had the effect of
implicitly defining _BSD_SOURCE and _SVID_SOURCE. This is also true for uClibc.
Alltogether, we can safely replace __USE_MISC by _GNU_SOURCE to support building
nodejs 0.10.x with the musl C library.
Signed-off-by: Jörg Krause <joerg.krause@embedded.rocks>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Add a patch from the Alpine Linux project [1] to fix a musl build issue with
gcc 5:
```
error: temporary of non-literal type ‘pthread_mutex_t’ in a constant expression
constexpr PosixMutex():mutex(PTHREAD_MUTEX_INITIALIZER) {}
```
Problem has been reported by the Alpine team upstream and was closed by the MPD
maintainer with WONTFIX:
http://bugs.musicpd.org/view.php?id=4387http://bugs.musicpd.org/view.php?id=4110
However...
POSIX does not permit using PTHREAD_COND_INITIALIZER except for static
initialization, and certainly does not permit using it as a value.
Also POSIX does not specify the type of the object (it's opaque) so if
there are any types for which their code would be invalid C++, then their
code is invalid.
Also, volatile in the type is necessary. without that, LTO can break the code.
[1]
http://git.alpinelinux.org/cgit/aports/log/main/mpd/musl-gcc5-fixes.patch
Signed-off-by: Jörg Krause <joerg.krause@embedded.rocks>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Angelo is the author of the upstream patch, so it is safe to add his
SoB. This commit also adds the upstream status of the patch.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Webkit 2.4.x depends on gcc being >= 4.8.x so use the new
BR2_TOOLCHAIN_GCC_AT_LEAST_X_Y knob and drop the manual x86* external
toolchain exclusions.
Follow up in the midori package as well.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The login prompt will appear in the terminal that started Qemu.
Tested with QEMU 2.3.0
Some files were not shown because too many files have changed in this diff
Show More
Reference in New Issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.