Repositories / ocaml-git.git

scripts/build-vendored-libgit2.sh

Clone (read-only): git clone http://git.guha-anderson.com/git/ocaml-git.git

Branch
1420 bytes · b60d054ebae9
#!/usr/bin/env bash set -euo pipefail ROOT="$(cd "$(dirname "$0")/.." && pwd)" LIBGIT2_SRC="${ROOT}/vendor/libgit2" BUILD_DIR="${ROOT}/vendor/libgit2-build" INSTALL_DIR="${ROOT}/vendor/libgit2-install" if [[ ! -f "${LIBGIT2_SRC}/CMakeLists.txt" ]]; then echo "Missing ${LIBGIT2_SRC}. Initialize submodules: git submodule update --init --recursive" >&2 exit 1 fi JOBS="${LIBGIT2_BUILD_JOBS:-}" if [[ -z "${JOBS}" && -n "${OPAMJOBS:-}" ]]; then JOBS="${OPAMJOBS}" fi if [[ -z "${JOBS}" ]]; then JOBS="$(nproc 2>/dev/null || sysctl -n hw.ncpu 2>/dev/null || echo 4)" fi MARKER="${BUILD_DIR}/.ocaml_git_root" if [[ -f "${BUILD_DIR}/CMakeCache.txt" ]]; then if [[ ! -f "${MARKER}" ]] || [[ "$(<"${MARKER}")" != "${ROOT}" ]]; then rm -rf "${BUILD_DIR}" fi fi cmake -S "${LIBGIT2_SRC}" -B "${BUILD_DIR}" \ -DCMAKE_BUILD_TYPE=Release \ -DCMAKE_INSTALL_PREFIX="${INSTALL_DIR}" \ -DCMAKE_POSITION_INDEPENDENT_CODE=ON \ -DBUILD_SHARED_LIBS=OFF \ -DBUILD_TESTS=OFF \ -DBUILD_CLI=OFF \ -DBUILD_EXAMPLES=OFF \ -DUSE_HTTPS=OFF \ -DUSE_SSH=OFF \ -DUSE_GSSAPI=OFF \ -DUSE_NTLMCLIENT=OFF \ -DUSE_BUNDLED_ZLIB=ON \ -DUSE_HTTP_PARSER=builtin \ -DREGEX_BACKEND=builtin \ -DUSE_ICONV=OFF \ -DUSE_SHA1=CollisionDetection \ -DUSE_SHA256=Builtin cmake --build "${BUILD_DIR}" --parallel "${JOBS}" rm -rf "${INSTALL_DIR}" cmake --install "${BUILD_DIR}" printf '%s\n' "${ROOT}" > "${MARKER}"