#!/bin/sh set -e set -u libexec="$(cd "$(dirname "$0")"; pwd)" top="${libexec}/.." src="${2:-"${top}/src"}" version="${1:-$("${libexec}/metadata" node_version)}" cd "${src}/node-v${version}" BASEDIR="${PWD}" BUILDTYPE="${BUILDTYPE:-Release}" eval "$("${libexec}/platform")" cd "${BASEDIR}/deps/v8/include" rm -rf "${top}/vendor/v8/include" find . -name '*.h' | while read -r header; do dir="${top}/vendor/v8/include/$(dirname "${header}")" mkdir -p "${dir}" cp "${header}" "${dir}" done cd "${BASEDIR}/out/${BUILDTYPE}" case "${RUBY_TARGET_PLATFORM}" in *-darwin*) RUBY_TARGET_PLATFORM="$(echo "${RUBY_TARGET_PLATFORM}" | sed -e 's/-darwin[0-9]*/-darwin/')" ;; esac rm -rf "${top}/vendor/v8/${RUBY_TARGET_PLATFORM}" # shellcheck disable=SC2043 for lib in libv8_monolith.a; do dir="${top}/vendor/v8/${RUBY_TARGET_PLATFORM}/libv8/obj/$(dirname "${lib}")" mkdir -p "${dir}" rm -f "${dir}/${lib}" echo "${BASEDIR}/out/${BUILDTYPE}/${lib} -> ${dir}/${lib}" "${STRIP}" -S -x -o "${dir}/${lib}" "${lib}" done mkdir -p "${top}/ext/libv8-node" echo '--- !ruby/object:Libv8::Node::Location::Vendor {}' > "${top}/ext/libv8-node/.location.yml"