Skip to content

introduce easy-builder script

Thomas Debesse requested to merge illwieckz/netradiant:easy-builder into master

Inspired from a work I done for XQEMU, this is a simple easy build wrapper. It is meant to be kept simple without so much feature. The first purpose is to give user a simple way to build netradiant (just type ./easy-builder and voilà), the second purpose is to not add features to this script.

This script is meant to be kept the smallest and simplest possible.

It was designed to allow more advanced usage while keeping the script the most laconic possible.

So, an user can just do:

./easy-builder

If build succeeds, the user would find produced files in install/ sub-directory as usual.

If required, that user can be told to do this to produce a debug build:

./easy-builder --debug

An advanced user can do:

SUBDIR=linux-amd64 VERBOSE=1 ./easy-builder -DFHS_INSTALL=ON -j12

That would build in build/linux-amd64 and install in install/linux-amd64 (which is convenient when building for multiple os/arch), enables FHS layout, compiles with 12 parallel tasks (autodetected if nproc exists), and enables verbose compilation.

I added a commit to auto-enable Crunch compilation in CMake if Crunch submodule is checked-out. The easy-builder script automatically checkouts it if missing.

While I was at it I added a minor tweak in library-bundling to be sure it fails on error.

I edited README in order to make user know the easy-builder script exists.

Edited by Thomas Debesse

Merge request reports