Supports native builds on aarch64 machines.
Supports making a 64-bit build via either cross compiling, or on
aarch64 machines.
Both options require the addition of --aarch64 to the command line,
otherwise 32-bit libraries will be built.
Cross compiling requires the aarch64-linux-gnu- compile tools to
be installed (packages gcc-5-aarch64-linux-gnu and g++-aarch64-linux-gnu
on Ubuntu).
Currently vc_vchi_dispmanx.h requires vc_vchi_dispmanx_common.h which is
not distributed on install. This limits access to the ELEMENT_CHANGE_*
defines.
At the moment, much of the codebase compiles on 64-bit targets, but not
all (mostly 32-bit assembly). -DARM64=ON allows for skipping
directories which currently do not compile correctly.
This is backwards compatible with existing behavior (i.e. no -DARM on a
32-bit target compiles everything as before), and hopefully will
ultimately become unnecessary as remaining components are fixed for
64-bit use.
Changes to allow the Raspberry Pi to natively build the userland.
Assumes that any armv6l (as returned by the arch(1) command)
is a Raspberry Pi and changes the compile accordingly.
Fix for issues #2 and #79
Previous code assumed that on Linux the execinfo.h functions are always available, which is a glibc extension.
This change fixes building the library under buildroot, which uses uClibc by default