47 lines
1.0 KiB
Bash
47 lines
1.0 KiB
Bash
|
#!/bin/sh
|
||
|
|
||
|
# Since CMake cannot build the static and dynamic libraries in the same
|
||
|
# directory, this script helps build both static and dynamic versions of it and
|
||
|
# have the common flags in one place instead of split between two places.
|
||
|
|
||
|
set -e
|
||
|
|
||
|
if [ "$#" -eq "0" ]; then
|
||
|
echo "Usage: $0 <--dynamic|--static>">&2
|
||
|
exit 1
|
||
|
fi
|
||
|
|
||
|
ROOT="$(cd "$(dirname "$0")/.." && echo "${PWD}")"
|
||
|
VENDORED_PATH="${ROOT}/vendor/libgit2"
|
||
|
|
||
|
case "$1" in
|
||
|
--static)
|
||
|
BUILD_PATH="${ROOT}/static-build"
|
||
|
BUILD_SHARED_LIBS=OFF
|
||
|
;;
|
||
|
|
||
|
--dynamic)
|
||
|
BUILD_PATH="${ROOT}/dynamic-build"
|
||
|
BUILD_SHARED_LIBS=ON
|
||
|
;;
|
||
|
|
||
|
*)
|
||
|
echo "Usage: $0 <--dynamic|--static>">&2
|
||
|
exit 1
|
||
|
;;
|
||
|
esac
|
||
|
|
||
|
mkdir -p "${BUILD_PATH}/build" "${BUILD_PATH}/install/lib"
|
||
|
|
||
|
cd "${BUILD_PATH}/build" &&
|
||
|
cmake -DTHREADSAFE=ON \
|
||
|
-DBUILD_CLAR=OFF \
|
||
|
-DBUILD_SHARED_LIBS"=${BUILD_SHARED_LIBS}" \
|
||
|
-DREGEX_BACKEND=builtin \
|
||
|
-DCMAKE_C_FLAGS=-fPIC \
|
||
|
-DCMAKE_BUILD_TYPE="RelWithDebInfo" \
|
||
|
-DCMAKE_INSTALL_PREFIX="${BUILD_PATH}/install" \
|
||
|
"${VENDORED_PATH}" &&
|
||
|
|
||
|
exec cmake --build . --target install
|