From 032b0216ac457a53e8d7178333bf457d36b6a474 Mon Sep 17 00:00:00 2001 From: Joey Yakimowich-Payne Date: Mon, 6 Feb 2023 09:07:25 -0700 Subject: [PATCH] Build module script --- buildmod.bash | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) create mode 100755 buildmod.bash diff --git a/buildmod.bash b/buildmod.bash new file mode 100755 index 0000000..55d1822 --- /dev/null +++ b/buildmod.bash @@ -0,0 +1,23 @@ +#!/opt/homebrew/bin/bash + +set -e + +MOD_PATH="$1" +MOD_NAME="$(basename -s .i $MOD_PATH)" + +SCRIPT_DIR="$(dirname $(readlink -f $0))" +WRAPPER_DIR="${SCRIPT_DIR}/wrappers" +OBJECTS_DIR="${SCRIPT_DIR}/objects" +SHAREDLIBS_DIR="${SCRIPT_DIR}/sharedlibs" +TEMPLATE_DIR="${SCRIPT_DIR}/swigtemplates" +HEADERS_DIR="${SCRIPT_DIR}/wxheaders" + +WX_CONFIG="-I$HEADERS_DIR" + +mkdir -p $OBJECTS_DIR +mkdir -p $SHAREDLIBS_DIR + + +swig -c++ -c -cpperraswarn -nocxx -o "${WRAPPER_DIR}/${MOD_NAME}_wrap.cxx" $WX_CONFIG $(wx-config --cxxflags all) $MOD_PATH +clang++ -c "${WRAPPER_DIR}/${MOD_NAME}_wrap.cxx" -o "${OBJECTS_DIR}/${MOD_NAME}_wrap.o" -I$TEMPLATE_DIR -I. $WX_CONFIG $(wx-config --cxxflags all) +clang++ -shared -o "${SHAREDLIBS_DIR}/lib${MOD_NAME}.so" "${OBJECTS_DIR}/${MOD_NAME}_wrap.o" $(wx-config --libs all)