diff -r 97a1a7fb4f1a -r 7845f5872bed configure --- a/configure Thu Oct 09 19:22:21 2025 +0200 +++ b/configure Mon Oct 13 21:37:42 2025 +0200 @@ -112,6 +112,7 @@ Optional Features: --enable-asan Enable address sanitization. + --enable-tools Enable compilation of tools. __EOF__ } @@ -152,6 +153,7 @@ if true \ ; then SRCDIR=`pwd` + TOOLKIT_HOME="${TOOLKIT_HOME:=/usr}" fi # features @@ -183,6 +185,8 @@ "--release") BUILD_TYPE="release" ;; "--enable-asan") FEATURE_ASAN=on ;; "--disable-asan") unset FEATURE_ASAN ;; + "--enable-tools") FEATURE_TOOLS=on ;; + "--disable-tools") unset FEATURE_TOOLS ;; "-"*) echo "unknown option: $ARG"; abort_configure ;; esac done @@ -343,6 +347,64 @@ dep_checked_sdl3_ttf=1 return 0 } +dependency_error_gtk3() +{ + print_check_msg "$dep_checked_gtk3" "checking for gtk3... " + # dependency gtk3 + while true + do + if [ -z "$PKG_CONFIG" ]; then + break + fi + if test_pkg_config "gtk+-3.0" "" "" "" ; then + TEMP_CFLAGS="$TEMP_CFLAGS `"$PKG_CONFIG" --cflags gtk+-3.0`" + TEMP_LDFLAGS="$TEMP_LDFLAGS `"$PKG_CONFIG" --libs gtk+-3.0`" + else + break + fi + TEMP_CFLAGS="$TEMP_CFLAGS -DUI_GTK3" + TEMP_LDFLAGS="$TEMP_LDFLAGS -lpthread" + print_check_msg "$dep_checked_gtk3" "yes\n" + dep_checked_gtk3=1 + return 1 + done + + print_check_msg "$dep_checked_gtk3" "no\n" + dep_checked_gtk3=1 + return 0 +} +dependency_error_toolkit() +{ + print_check_msg "$dep_checked_toolkit" "checking for toolkit... " + # dependency toolkit + while true + do + if test -n "$TOOLKIT_HOME" > /dev/null ; then + : + else + break + fi + if test -f "$TOOLKIT_HOME/lib/libuitk.a" > /dev/null ; then + : + else + break + fi + if test -f "$TOOLKIT_HOME/include/ui/ui.h" > /dev/null ; then + : + else + break + fi + TEMP_CFLAGS="$TEMP_CFLAGS -I$TOOLKIT_HOME/include" + TEMP_LDFLAGS="$TEMP_LDFLAGS $TOOLKIT_HOME/lib/libuitk.a" + print_check_msg "$dep_checked_toolkit" "yes\n" + dep_checked_toolkit=1 + return 1 + done + + print_check_msg "$dep_checked_toolkit" "no\n" + dep_checked_toolkit=1 + return 0 +} dependency_error_glew() { print_check_msg "$dep_checked_glew" "checking for glew... " @@ -555,6 +617,52 @@ echo "LDFLAGS += $TEMP_LDFLAGS" >> "$TEMP_DIR/flags.mk" fi +echo >> "$TEMP_DIR/flags.mk" +echo "configuring target: tools" +echo "# flags for target tools" >> "$TEMP_DIR/flags.mk" +TEMP_CFLAGS= +TEMP_CXXFLAGS= +TEMP_LDFLAGS= + +if dependency_error_toolkit; then + DEPENDENCIES_FAILED="$DEPENDENCIES_FAILED toolkit " + ERROR=1 +fi +if dependency_error_gtk3; then + DEPENDENCIES_FAILED="$DEPENDENCIES_FAILED gtk3 " + ERROR=1 +fi +if dependency_error_ucx; then + DEPENDENCIES_FAILED="$DEPENDENCIES_FAILED ucx " + ERROR=1 +fi + +# Features +if [ -n "$FEATURE_TOOLS" ]; then + if [ -n "$DISABLE_FEATURE_TOOLS" ]; then + unset FEATURE_TOOLS + fi +fi +if [ -n "$FEATURE_TOOLS" ]; then + : +else + : + cat >> "$TEMP_DIR/make.mk" << __EOF__ +NO_TOOLS=1 +__EOF__ +fi + + +if [ -n "${TEMP_CFLAGS}" ] && [ -n "$lang_c" ]; then + echo "TOOLS_CFLAGS += $TEMP_CFLAGS" >> "$TEMP_DIR/flags.mk" +fi +if [ -n "${TEMP_CXXFLAGS}" ] && [ -n "$lang_cpp" ]; then + echo "TOOLS_CXXFLAGS += $TEMP_CXXFLAGS" >> "$TEMP_DIR/flags.mk" +fi +if [ -n "${TEMP_LDFLAGS}" ]; then + echo "TOOLS_LDFLAGS += $TEMP_LDFLAGS" >> "$TEMP_DIR/flags.mk" +fi + # final result if [ $ERROR -ne 0 ]; then @@ -633,6 +741,11 @@ else echo " asan: off" fi +if [ -n "$FEATURE_TOOLS" ]; then +echo " tools: on" +else +echo " tools: off" +fi echo # generate the config.mk file