imgui-rs/imgui-sys/third-party/imgui-docking/update-cimgui-output.sh
2021-10-27 19:25:39 +11:00

35 lines
1.0 KiB
Bash
Executable File

#!/bin/bash
set -euo pipefail
SCRIPT_DIR=$(dirname ${0} | python3 -c 'import os, sys; print(os.path.abspath(sys.stdin.read().strip()))' )
CIMGUI_DIR=${1:?}
echo "${SCRIPT_DIR}"
pushd "${CIMGUI_DIR}"/generator > /dev/null
# Check if ${CIMGUI_DIR}/link exists as a symlink.
# If so, good, and we can tinker with it.
# Otherwise, ask user to remove it for us.
if [ -e ${CIMGUI_DIR}/imgui ] && [ ! -h ${CIMGUI_DIR}/imgui ]; then
echo "Please remove ${CIMGUI_DIR}/imgui so this script can link it to correct imgui version"
exit 1
fi
# Remove old symlink
rm ${CIMGUI_DIR}/imgui || echo "..."
# Link to C++ code contained in imgui-rs, not whatever if in cimgui's repo
ln -s ${SCRIPT_DIR}/imgui ${CIMGUI_DIR}/imgui
# Run the generator (note addition of "internal" as most docking functionality is in there currently)
luajit generator.lua gcc "internal" -DIMGUI_USE_WCHAR32
# Tidy up
rm ${CIMGUI_DIR}/imgui # Remove symlink (no recursive rm)
popd > /dev/null
cp "${CIMGUI_DIR}"/cimgui.{h,cpp} "${SCRIPT_DIR}"/
cp "${CIMGUI_DIR}"/generator/output/* "${SCRIPT_DIR}"/