genode/tool
Martin Stein 139a2cfae9 tool: use local LC_ALL=C instead of LC_COLLATE=C
We used to export 'LC_COLLATE=C' for the environment of Genode tools. This was
meant to ensure that sorting is always done C-style and not dependent on the
users locale settings. This is required, for instance, to ensure that the same
archive always yields the same hash.

However, 'export LC_COLLATE=C' is not sufficient. It can be outruled by an
'LC_ALL' setting in the users environment. The manual of 'sort' recommends to
set 'LC_ALL=C' locally if you want reliable results and this is what this
commit does. Furthermore it removes the former 'export LC_COLLATE=C'
directives.

Note that I couldn't find a way to set 'LC_ALL' local to 'exec ... sort' in
TCL. This is why I set it global instead using TCLs 'env' array.

Note that the Make directive '$(sort ...)' and the TCL directive 'lsort',
unlike the Shell directive 'sort', are not affected by the users locale
settings.

Fixes #4144
2021-05-28 14:15:26 +02:00
..
boot Update to bender with optional microcode and HWP 2020-11-23 12:03:00 +01:00
builddir tool: use local LC_ALL=C instead of LC_COLLATE=C 2021-05-28 14:15:26 +02:00
depot tool: use local LC_ALL=C instead of LC_COLLATE=C 2021-05-28 14:15:26 +02:00
ports tool: use local LC_ALL=C instead of LC_COLLATE=C 2021-05-28 14:15:26 +02:00
run qemu: sanity check misconfigured memory for okl4 2021-05-28 14:15:26 +02:00
sdk Genode SDK 2018-11-29 11:46:02 +01:00
seccomp base-linux: 64-bit ARM support 2021-05-10 11:17:20 +02:00
xkb2ifcfg tool/xkb2ifcfg: update README to event_filter 2021-03-24 11:09:08 +01:00
abi_symbols tool: use local LC_ALL=C instead of LC_COLLATE=C 2021-05-28 14:15:26 +02:00
autopilot autopilot: align output for wide run-script names 2019-08-13 12:02:27 +02:00
autopilot.list lx_fs: add os/run/lx_fs_import.run run script 2021-05-10 11:16:24 +02:00
beautify Imported Genode release 11.11 2011-12-22 16:19:25 +01:00
cbe_autopilot gems: import Genode-specific code of the CBE 2020-11-27 09:19:08 +01:00
check_abi tool: use local LC_ALL=C instead of LC_COLLATE=C 2021-05-28 14:15:26 +02:00
create_builddir Add ccache support to build system 2021-02-23 12:02:41 +01:00
create_iso tool/create_iso: Make ISO creation tool configurable 2017-05-02 15:28:53 +02:00
create_sdk tool_chain: versioned install location 2019-05-29 10:20:52 +02:00
create_uboot tool_chain: versioned install location 2019-05-29 10:20:52 +02:00
cxx_to_html Tool cxx_to_html to convert C++ source to HTML 2012-01-08 14:09:47 +01:00
download_hashver Hash verification tool 2013-06-10 10:44:09 +02:00
download_sigver GPG signature verification tool 2013-06-10 10:44:09 +02:00
fix_include_ifndef tool/fix_include_ifndef: consider license header 2014-01-27 18:54:05 +01:00
internal_abi.list tool/abi_symbols: omit known internal symbols 2019-01-30 13:35:29 +01:00
link.h tool/link.h: remove outdated comment 2018-05-30 13:36:29 +02:00
parse_cxx tool/parse_cxx: consider __attribute__((...)) 2020-05-27 11:56:46 +02:00
README Tool for checking consistency between lib and ABI 2018-01-17 12:14:42 +01:00
rump_cgdconf tool: wrapper script for rumpkernel tools 2014-05-27 11:14:45 +02:00
tool_chain tool_chain: update ali2dep for gcc 10.3.0 2021-05-28 14:15:26 +02:00
tool_chain_qt5 qt5: build Qt libraries and applications with qmake 2020-07-03 13:48:55 +02:00

This directory contains tools for managing and using the source code
of Genode.

:'create_builddir'

  The 'create_builddir' tool provides a convenient way to create build
  directories for different platforms. Its usage information is printed when
  starting the tool without arguments.

:'builddir/':

  This directory contains a Makefile template and configuration snippets used
  by the 'create_builddir' tool.

:'tool_chain':

  This tool downloads, builds, and installs the tool chain needed to build the
  Genode OS Framework. For getting usage information, start the tool without
  arguments.

:'create_iso':

  This simple tool helps to build bootable ISO images from your build of
  Genode. For getting usage information, start the tool without arguments.

:'create_grub2':

  This tool prepares a partitioned disk image with GRUB2 as boot
  loader.

:'grub2-head.img':

  This file is the head part of a partioned disk image including an
  installation of GRUB2 as boot loader. GRUB2 is available from
  http://www.gnu.org/software/grub/ and in major Linux distributions.
  Steps to reproduce the image creation can be found in
  'create_grub2'.

:'beautify':

  Beautify is a coding-style checking tool that analyzes source code for its
  adherence to Genode's coding style as described in 'doc/coding_style.txt'.
  Whenever possible, the tool tries to fix the issues and outputs a corrected
  file.  Some corrections, however, require human interaction.  In this case,
  the tool stops the analysis with an error.

:'parse_cxx':

  This tool is a C++ parser used as front-end for Beautify.

:'cxx_to_html':

  This tool converts a C++ source file to a HTML view to be used for the API
  documentation at the genode.org website. It relies on 'parse_cxx' to do the
  actual C++ parsing.

:'fix_include_ifndef':

  This tool helps with assigning consistent include guards to header files.

:'boot':

  This directory contains boot-loader files needed to create boot images.

:'autopilot':

  Autopilot is a tool for the automatic execution of run scripts among multiple
  base platforms.

:'abi_symbols':

  The utility assists with the initial creation of a ABI-symbols file, taking
  a shared object as a starting point. For more information, refer to the
  header of the 'abi_symbols' script.

:'check_abi':

  The 'check_abi' helper is used by the build system to detect violations of
  an ABI by a shared library. Most importantly, it reports incompatibilities of
  symbol sizes, which require an adaptation of the ABI. For more information,
  refer to the header of the 'check_abi' script.