|
# Generates a build script for building fat lib for iOS (ARM64 & x86_64).
|
|
# Pass PREFIX as argument. If not passed, "local/" is used as deafult.
|
|
# To generate the script the specific `buildcode/$NAME_OF_LIB_TO_BUILD.code` is merged into the commont `build-ios_dependency.template` and saved to `generated.sh`
|
|
|
|
# Exit on errors
|
|
set -e
|
|
|
|
SCRIPT_DIR=$(dirname "$0")
|
|
LIB_NAME=$1
|
|
PREFIX=$2
|
|
|
|
# Get Absolute Paths
|
|
pushd "${SCRIPT_DIR}"
|
|
SCRIPT_DIR=$(pwd)
|
|
popd
|
|
mkdir -p "${PREFIX}"
|
|
pushd "${PREFIX}"
|
|
PREFIX=$(pwd)
|
|
popd
|
|
GENERATED_SCRIPT="${SCRIPT_DIR}/generated.sh"
|
|
|
|
exitAndPrintHelp()
|
|
{
|
|
echo "Must be called passing \`LIB_NAME`\` (mandatory). \`PREFIX\` can also be passed (optional).\nSample:\n\`generate_and_run_ios_dependency_build_script \$LIB_NAME\`\n`generate_and_run_ios_dependency_build_script \$LIB_NAME \$PREFIX\`"
|
|
exit 1
|
|
}
|
|
|
|
if [ "${LIB_NAME}" = "" ]; then
|
|
exitAndPrintHelp
|
|
fi
|
|
|
|
# Say Hello
|
|
echo "#####################################################"
|
|
echo "#Generating buildscript for ${LIB_NAME}"
|
|
echo "#####################################################"
|
|
|
|
# Generate Actual Script
|
|
|
|
BUILD_CODE_FILE="${SCRIPT_DIR}/buildcode/${LIB_NAME}.code"
|
|
BUILD_SCRIPT_TEMPLATE_FILE="${SCRIPT_DIR}/build-ios_dependency.template"
|
|
SEARCH_STRING="BUILD_CODE"
|
|
#Replaces ${SEARCH_STRING} in file ${BUILD_SCRIPT_TEMPLATE_FILE} with content of ${BUILD_CODE_FILE}
|
|
/opt/local/bin/gsed -e "/${SEARCH_STRING}/r ${BUILD_CODE_FILE}" -e "/${SEARCH_STRING}/d" ${BUILD_SCRIPT_TEMPLATE_FILE} > "${GENERATED_SCRIPT}"
|
|
sh ${GENERATED_SCRIPT} ${PREFIX}
|
|
|
|
# Cleanup
|
|
rm -rf "${TMP_DIR}"
|