commit 280800bf2760e6f634665b1afded973c14342b5b
parent 39551f2988bc8215aa6e824ce557e863823cbf7c
Author: Morel BĂ©renger <berengermorel76@gmail.com>
Date: Sat, 30 May 2020 08:04:09 +0200
improved README and manpage
Diffstat:
2 files changed, 20 insertions(+), 9 deletions(-)
diff --git a/README b/README
@@ -11,11 +11,23 @@ DEPENDENCIES:
This is a work in progress tool, but it works for me.
+BUILD OPTIONS:
+
+There are several '#define' that can affect the build process:
+
+* WITH_STL: do not use home-made vector implementation. This will drastically
+ increase the size of the binary, though (~25Kio).
+* NO_CMDLINE: do not build support for command-line switches except the '--help'
+ communator. This will reduce the size of the binary (~9Kio).
+
+Those options can be set using the CXXFLAGS environment variable, for example:
+
+CXXFLAGS="$CXXFLAGS -DNO_CMDLINE" make
+
COMPACT BUILD:
It is possible to build a statically linked binary, but the invocation will be
-different depending on your OS and requires alternate tools. To be honest, it is
-quite hackish, which is why it's not (yet?) a Makefile build option.
+different depending on your OS and requires alternate tools.
Even on Debian, the invocation may differ a lot between major versions, for
example it's more hackish un current stable (Buster) than it was in old-stable
(Stretch), especially with the include paths.
@@ -35,5 +47,4 @@ The resulting binary is bigger than the output of `make` (on this system,
stripped dynamic linking gives a 19Kio binary, stripped static gives a 38Kio one)
but does not imply to install the dynamic libraries, which are, here, around
2Mio for libstdc++ and 850Kio for libc++.
-Some would also argue about security, since statically linked executables do not
-load code from files than can be hijacked, for example with `$LD_LIBRARY_PATH`.
+One of the points of doing so would be to use this tool in a chroot.
diff --git a/doc/lmerge.1.md b/doc/lmerge.1.md
@@ -19,7 +19,9 @@ Entries are read from stdin.
# OPTIONS
-For now, options are managed through environment variables:
+Options can be managed either with traditional command-line parameters or via
+environment variables.
+List of environment variables that affect behavior:
FIELDS
@@ -36,6 +38,8 @@ ENTRY_SEP
: list of characters that will be considered as entry separators.
Defaults to **newline** (\'\\n\', 0x0A).
+For more details, use the '--help' commutator.
+
# EXAMPLE
This invocation:
@@ -61,8 +65,4 @@ will generate this result:
Multi-byte characters can not be used for FIELD_SEP and ENTRY_SEP.
-# TODO
-
-Allow the use of command-line parameters to configure behavior.
-
# SEE ALSO