Ultra-bloated C++ build system
Go to file
2024-08-16 22:22:27 +03:00
.gitignore Moved from pkg-config to my lofi replica of csv 2024-08-16 22:22:27 +03:00
install.sh Moved from pkg-config to my lofi replica of csv 2024-08-16 22:22:27 +03:00
README.txt Moved from pkg-config to my lofi replica of csv 2024-08-16 22:22:27 +03:00
regexis024_build_system.h Moved from pkg-config to my lofi replica of csv 2024-08-16 22:22:27 +03:00
regexis024_build_system.sh Moved from pkg-config to my lofi replica of csv 2024-08-16 22:22:27 +03:00

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 ;