64 lines
1.9 KiB
Plaintext
64 lines
1.9 KiB
Plaintext
|
|
Evenless (EVL) core library and utilities
|
|
=========================================
|
|
|
|
What's that?
|
|
------------
|
|
|
|
Building
|
|
--------
|
|
|
|
Prerequisites:
|
|
|
|
- a GCC toolchain with working thread-local storage support (TLS).
|
|
|
|
- the UAPI headers from the target kernel fit with the EVL core. We
|
|
need access to the contents of include/uapi/asm/ and
|
|
include/uapi/evenless/ from the source Linux tree.
|
|
|
|
Command:
|
|
|
|
$ make [-C $SRCDIR] [ARCH=$cpu_arch] [CROSS_COMPILE=$toolchain] UAPI=$uapi_dir [OTHER_BUILD_VARS] [goal...]
|
|
|
|
Make goals
|
|
~~~~~~~~~~
|
|
|
|
all generate binaries
|
|
clean remove build files
|
|
install copy generated binaries to $DESTDIR
|
|
|
|
Main build variables
|
|
~~~~~~~~~~~~~~~~~~~~
|
|
|
|
$SRCDIR Path to this source tree
|
|
$cpu_arch CPU architecture you build for
|
|
(e.g. 'arm', 'arm64')
|
|
$toolchain Optional fixed part of the binutils filename
|
|
(e.g. 'aarch64-linux-gnu-', 'arm-linux-gnueabihf-')
|
|
|
|
Other build variables
|
|
~~~~~~~~~~~~~~~~~~~~~
|
|
|
|
D={0|1} Disable|enable debug build, i.e. -g -O0 vs -O2 [0]
|
|
O=$output_dir Generate binary output files into $output_dir [.]
|
|
V={0|1} Set build verbosity level, 0 is terse [0]
|
|
DESTDIR=$install_dir Install library and binaries into $install_dir [/usr/evenless]
|
|
|
|
Build command examples
|
|
~~~~~~~~~~~~~~~~~~~~~~
|
|
|
|
Say the library source code is located at ~/git/evenless, and the
|
|
kernel sources featuring the EVL core is located at
|
|
~/git/linux-evenless. You could build+install the EVL library and
|
|
utilities directly to a staging directory at
|
|
/nfsroot/<machine>/usr/evenless as follows:
|
|
|
|
$ mkdir /tmp/build-imx6q && cd /tmp/build-imx6q
|
|
$ make -C ~/git/evenless O=$PWD ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- UAPI=~/git/linux-evenless DESTDIR=/nfsroot/imx6q/usr/evenless install
|
|
|
|
or,
|
|
|
|
$ mkdir /tmp/build-hikey
|
|
$ cd ~/git/evenless
|
|
$ make O=/tmp/build-hikey ARCH=arm64 CROSS_COMPILE=aarch64-linux-gnu- UAPI=~/git/linux-evenless DESTDIR=/nfsroot/hikey/usr/evenless install
|