add comments documenting what we do and make the script output all the build commands
parent
ec445d7a44
commit
9e6f07ec0a
27
build.sh
27
build.sh
|
@ -1,13 +1,32 @@
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
# `.cpp` files in src/lib will be automatically picked up and compiled into dynamic libraries.
|
||||||
echo "Building libs..."
|
echo "Building libs..."
|
||||||
mkdir -pv bin/lib
|
mkdir -pv bin/lib
|
||||||
for lib in $(find ./src/lib -name "*.cpp"); do
|
for lib in $(find ./src/lib -name "*.cpp"); do
|
||||||
echo "Compiling $lib"
|
COMPILE_COMMAND="c++ -shared -o $(sed -e 's/^.\/src/.\/bin/;s/cpp$/so/' <<< $lib) $lib"
|
||||||
c++ -shared -o $(sed -e 's/^.\/src/.\/bin/;s/cpp$/so/' <<< $lib) $lib;
|
echo $COMPILE_COMMAND
|
||||||
|
$COMPILE_COMMAND
|
||||||
done
|
done
|
||||||
|
|
||||||
echo "Building tools..."
|
|
||||||
mkdir -pv bin/tools
|
|
||||||
# Commands for every program need to be given individually because we can't
|
# Commands for every program need to be given individually because we can't
|
||||||
# just add all shared libraries to all programs.
|
# just add all shared libraries to all programs.
|
||||||
# Or can we? Idk, cba to find out.
|
# Or can we? Idk, cba to find out.
|
||||||
|
|
||||||
|
# How to build a tool: Tell the compiler where to find shared libraries and
|
||||||
|
# which libraries to use.
|
||||||
|
# Example: shared libraries are in bin/lib => -Lbin/lib
|
||||||
|
# one of the libraries in that directory is libnbt.so
|
||||||
|
# => use with -lnbt (omit prefix lib and suffix .so)
|
||||||
|
# How to run a tool: specify the library path to use for the dynamic linker
|
||||||
|
# when running a program
|
||||||
|
# Example: LD_LIBRARY_PATH=bin/lib bin/tools/dumpnbt
|
||||||
|
echo "Building tools..."
|
||||||
|
mkdir -pv bin/tools
|
||||||
|
# add compile commands to this variable
|
||||||
|
COMPILE_COMMANDS="
|
||||||
|
set -v
|
||||||
c++ src/tools/dumpnbt.cpp -Lbin/lib -lnbt -o bin/tools/dumpnbt
|
c++ src/tools/dumpnbt.cpp -Lbin/lib -lnbt -o bin/tools/dumpnbt
|
||||||
|
"
|
||||||
|
sh <<< $COMPILE_COMMANDS
|
||||||
|
|
Loading…
Reference in New Issue