klibc-bot for Ben Hutchings
2019-Feb-01 23:21 UTC
[klibc] [klibc:master] README.klibc: Document most of the build options
Commit-ID: 4876d484577d8a4d9ff7de437fcfa5cba7a7e748 Gitweb: http://git.kernel.org/?p=libs/klibc/klibc.git;a=commit;h=4876d484577d8a4d9ff7de437fcfa5cba7a7e748 Author: Ben Hutchings <ben at decadent.org.uk> AuthorDate: Fri, 1 Feb 2019 18:04:52 +0100 Committer: Ben Hutchings <ben at decadent.org.uk> CommitDate: Sat, 2 Feb 2019 00:13:32 +0100 [klibc] README.klibc: Document most of the build options * Explicitly say where to set the cross-compilation variables * Explain how to do an out-of-tree build * Document all the configuration variables in defconfig Signed-off-by: Ben Hutchings <ben at decadent.org.uk> --- usr/klibc/README.klibc | 47 ++++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 46 insertions(+), 1 deletion(-) diff --git a/usr/klibc/README.klibc b/usr/klibc/README.klibc index ea10c55f..032d3959 100644 --- a/usr/klibc/README.klibc +++ b/usr/klibc/README.klibc @@ -22,7 +22,7 @@ Cross-compiling If you're cross-compiling, you need to set KLIBCARCH to the appropriate architecture, and set CROSS_COMPILE to your toolchain -prefix. +prefix, on the "make" command line IMPORTANT: if you're on a 64-bit machine with a 32-bit userland (ia64, mips64, ppc64 sparc64, s390x or x86_64), and you want to @@ -36,6 +36,51 @@ If you are on ARM, and want to build a thumb version of the library (this is supported), change OPTFLAGS in arch/arm/MCONFIG to build thumb code. +Out-of-tree builds +------------------ + +It is possible to use a separate build directory so that build +products are not created in source directories. To do this, +create the build directory and in that directory run: + make -f <source-dir>/Makefile KBUILD_SRC=<source-dir> + +Build configuration +------------------- + +The build configuration is defined in a ".config" file in the +build directory. If this file does not already exist, it is +created as a copy of the "defconfig" source file. + +The configuration variables are: + +* CONFIG_KLIBC_ERRLIST (bool): Include standard error strings for + strerror(). If disabled, strerror() returns the error number as a + string. +* CONFIG_KLIBC_ZLIB (bool): Include zlib decompression functions. If + disabled, kinit can only load uncompressed ramdisk images. +* CONFIG_KLIBC_ZIP (bool): Include compression support in the gzip + command. +* CONFIG_DEBUG_INFO (bool): Install all executables and the shared + library with debug information and build IDs included. If + disabled, the executables and shared library are stripped when + installed. + +For arm only: + +* CONFIG_KLIBC_THUMB (bool): Compile all code to Thumb instructions, + which should reduce code size slightly. If disabled, regular ARM + instructions are used. +* CONFIG_AEABI (bool): Compile ARM code to use the ARM EABI and the + "new" system call ABI. + +If both CONFIG_KLIBC_THUMB and CONFIG_AEABI are disabled, the GNU APCS +and the old system call ABI are used. + +For i386 only: + +* CONFIG_REGPARM (bool): Optimise function calls by passing the first + 3 function parameters in registers. + Building without kernel source ------------------------------
Apparently Analagous Threads
- [klibc:master] gzip: Fix typo CONFIG_KLIB_ZIP -> CONFIG_KLIBC_ZIP
- [PATCH] gzip: Fix typo CONFIG_KLIB_ZIP -> CONFIG_KLIBC_ZIP
- [klibc:master] arm: Enable CONFIG_ARM_EABI by default
- [klibc:master] Kbuild: Add option to install unstripped binaries
- [PATCH for Debian packaging] armhf builds are always thumb