regexis024-build-system/README.txt

35 lines
1.4 KiB
Plaintext
Raw Normal View History

Build system for libregexis024
ABOUT
This build system installs only two files:
1) header regexis024_build_system.h, that contains some useful functions for writing build scripts in C++
2) script regexis024_build_system.sh, that compiles a build script in your project (script invokes g++ with
-I flag pointing to regexis024_build_system.h installation dir)
INSTALLATION
You don't need to compile anything, this is a header-only library
./install.sh [installation root]
[installation root] by default is /usr
Files will be installed to
./include/regexis024_build_system.h and
./bin/regexis024_build_system.sh
HISTORY
One day I realized that make is a complete garbage, cmake is even worse, and shell scripting language is too hard to use
to write anything complex.
I had to invent my own build system for my project libregexis024. But regexis024_build_system can be used for any other
C++ project just fine.
Some time ago this build system was able to generate pkg-config .pc files for built libraries, but
for some reason pkg-config shuffled cflags on my friends pc, so I moved from pkg-config to my own, much simpler
library flags description format:
* For both cflags and linkage flags do this:
** For each argument do this:
*** escape " and \ symbols in argument and "tighten" result into double-quotes (a"\" c -> "a\"\\\" c")
** Concatenate results
* Join results by ;