From 3fa2b2adb142fd6dc45652b5f36b6aec431e14ac Mon Sep 17 00:00:00 2001 From: Alexander Myltsev Date: Mon, 13 Jan 2025 22:23:51 +0400 Subject: [PATCH 1/4] Remove configuration of libmongo-client. --- Makefile.unix.in | 4 ---- config.h.in | 2 -- configure.ac | 27 --------------------------- include/ejudge/bson_utils.h | 4 ---- main.unix.make | 28 ++++++++++++++-------------- plugins/avatar-mongo/Makefile.in | 6 +----- plugins/avatar-mongo/main.make | 4 ++-- plugins/common-mongo/Makefile.in | 4 ---- plugins/common-mongo/main.make | 4 ++-- plugins/status-mongo/Makefile.in | 6 +----- plugins/status-mongo/main.make | 4 ++-- plugins/telegram/Makefile.in | 6 +----- plugins/telegram/main.make | 4 ++-- plugins/xuser-mongo/Makefile.in | 6 +----- plugins/xuser-mongo/main.make | 4 ++-- 15 files changed, 28 insertions(+), 85 deletions(-) diff --git a/Makefile.unix.in b/Makefile.unix.in index 046df099b5..2ce329ab0e 100644 --- a/Makefile.unix.in +++ b/Makefile.unix.in @@ -53,10 +53,6 @@ LIBCAP_DIR=@ac_cv_libcap_root@ LIBCAP_INCL_OPT=@ac_cv_libcap_include_opt@ LIBCAP_LIB_OPT=@ac_cv_libcap_lib_opt@ -MONGO_EXISTS=@ac_cv_has_libmongo_client@ -MONGO_CFLAGS=@ac_cv_libmongo_client_cflags@ -MONGO_LIBS=@ac_cv_libmongo_client_libs@ - MONGOC_EXISTS=@ac_cv_has_libmongoc@ MONGOC_CFLAGS=@ac_cv_libmongoc_cflags@ MONGOC_LIBS=@ac_cv_libmongoc_libs@ diff --git a/config.h.in b/config.h.in index a47c195683..1d93e29097 100644 --- a/config.h.in +++ b/config.h.in @@ -129,8 +129,6 @@ // official mongo client library #undef HAVE_LIBMONGOC -#undef HAVE_LIBMONGO_CLIENT - /* path to the web server cgi-bin dir */ #undef EJUDGE_HTTPD_CGI_BIN_DIR diff --git a/configure.ac b/configure.ac index 1ceafa5112..ce981ca1d6 100644 --- a/configure.ac +++ b/configure.ac @@ -973,25 +973,6 @@ then ac_cv_libmongoc_libs=`pkg-config --libs libmongoc-1.0` fi -if [[ x"${ac_cv_has_libmongoc}" = x ]] -then - AC_MSG_CHECKING([for libmongo-client]) - if pkg-config --exists libmongo-client - then - AC_MSG_RESULT([yes]) - ac_cv_has_libmongo_client=1 - else - AC_MSG_RESULT([no]) - ac_cv_has_libmongo_client= - fi - - if [[ x"${ac_cv_has_libmongo_client}" = x1 ]] - then - ac_cv_libmongo_client_cflags=`pkg-config --cflags libmongo-client` - ac_cv_libmongo_client_libs=`pkg-config --libs libmongo-client` - fi -fi - dnl Checking for available languages dnl AC_MSG_NOTICE([checking available languages]) @@ -1206,9 +1187,6 @@ AC_SUBST(ac_cv_libcap_link) AC_SUBST(ac_cv_ejudge_server_bin_path_m) AC_SUBST(ac_cv_lang_config_dir) AC_SUBST(ac_cv_lang_config_dir_expanded) -AC_SUBST(ac_cv_has_libmongo_client) -AC_SUBST(ac_cv_libmongo_client_cflags) -AC_SUBST(ac_cv_libmongo_client_libs) AC_SUBST(ac_cv_has_libmongoc) AC_SUBST(ac_cv_libmongoc_cflags) AC_SUBST(ac_cv_libmongoc_libs) @@ -1442,11 +1420,6 @@ then AC_DEFINE(HAVE_LIBMONGOC, 1) fi -if [[ x"${ac_cv_has_libmongo_client}" = x1 ]] -then - AC_DEFINE(HAVE_LIBMONGO_CLIENT, 1) -fi - AC_CONFIG_HEADERS([config.h]) AC_CONFIG_SUBDIRS([libdwarf]) diff --git a/include/ejudge/bson_utils.h b/include/ejudge/bson_utils.h index 2e57dc9916..6f0910b165 100644 --- a/include/ejudge/bson_utils.h +++ b/include/ejudge/bson_utils.h @@ -22,10 +22,6 @@ #include #include -// for libmongo-client (obsolete) -struct _bson; -struct _bson_cursor; - // for libmongoc struct _bson_t; // FIXME: no opaque structure tag for bson_iter_t diff --git a/main.unix.make b/main.unix.make index 39a00e9ce4..1ac184349e 100644 --- a/main.unix.make +++ b/main.unix.make @@ -344,7 +344,7 @@ ej-agent : $(CA_OBJECTS) $(LD) $(LDFLAGS) $(CA_OBJECTS) -o $@ $(LDLIBS) ${EXPAT_LIB} ${LIBLZMA} ej-run${EXESFX} : $(RUN_OBJECTS) - $(LD) $(LDFLAGS) $(RUN_OBJECTS) -o $@ $(LDLIBS) ${EXPAT_LIB} ${LIBZIP} ${LIBUUID} $(MONGO_LIBS) $(MONGOC_LIBS) -lbacktrace + $(LD) $(LDFLAGS) $(RUN_OBJECTS) -o $@ $(LDLIBS) ${EXPAT_LIB} ${LIBZIP} ${LIBUUID} $(MONGOC_LIBS) -lbacktrace ej-nwrun${EXESFX} : $(NWRUN_OBJECTS) $(LD) $(LDFLAGS) $(NWRUN_OBJECTS) -o $@ $(LDLIBS) ${EXPAT_LIB} ${LIBZIP} @@ -353,10 +353,10 @@ ej-ncheck${EXESFX} : $(NCHECK_OBJECTS) $(LD) $(LDFLAGS) $(NCHECK_OBJECTS) -o $@ $(LDLIBS) ${EXPAT_LIB} ej-batch : $(T3M_OBJECTS) - $(LD) $(LDFLAGS) $(T3M_OBJECTS) -o $@ $(LDLIBS) -ldl ${EXPAT_LIB} ${LIBZIP} ${LIBUUID} $(MONGO_LIBS) $(MONGOC_LIBS) -lbacktrace + $(LD) $(LDFLAGS) $(T3M_OBJECTS) -o $@ $(LDLIBS) -ldl ${EXPAT_LIB} ${LIBZIP} ${LIBUUID} $(MONGOC_LIBS) -lbacktrace ej-serve : $(SERVE_OBJECTS) - $(LD) $(LDFLAGS) $(SERVE_OBJECTS) -o $@ $(LDLIBS) -ldl ${EXPAT_LIB} ${LIBUUID} $(MONGO_LIBS) $(MONGOC_LIBS) -lbacktrace + $(LD) $(LDFLAGS) $(SERVE_OBJECTS) -o $@ $(LDLIBS) -ldl ${EXPAT_LIB} ${LIBUUID} $(MONGOC_LIBS) -lbacktrace cgi-bin/serve-control${CGI_PROG_SUFFIX}: ${SC_OBJECTS} ${LD} ${LDFLAGS} $^ -o $@ ${LDLIBS} ${EXPAT_LIB} @@ -368,7 +368,7 @@ ej-users-control: ${ULC_OBJECTS} ${LD} ${LDFLAGS} $^ libcommon.a -rdynamic -o $@ ${LDLIBS} ${EXPAT_LIB} -lbacktrace ej-jobs: ${JS_OBJECTS} - ${LD} ${LDFLAGS} $^ -pthread libcommon.a libplatform.a -rdynamic -o $@ ${LDLIBS} -ldl ${EXPAT_LIB} ${LIBCURL} ${LIBZIP} ${LIBUUID} $(MONGO_LIBS) $(MONGOC_LIBS) -lbacktrace + ${LD} ${LDFLAGS} $^ -pthread libcommon.a libplatform.a -rdynamic -o $@ ${LDLIBS} -ldl ${EXPAT_LIB} ${LIBCURL} ${LIBZIP} ${LIBUUID} $(MONGOC_LIBS) -lbacktrace ej-jobs-control: ${JSC_OBJECTS} ${LD} ${LDFLAGS} $^ libcommon.a libplatform.a -o $@ ${LDLIBS} ${EXPAT_LIB} -lbacktrace @@ -377,13 +377,13 @@ ejudge-jobs-cmd: ${JP_OBJECTS} ${LD} ${LDFLAGS} $^ libcommon.a libplatform.a -o $@ ${LDLIBS} ${EXPAT_LIB} ej-super-server: ${SS_OBJECTS} - ${LD} ${LDFLAGS} -rdynamic $^ libcommon.a -o $@ ${LDLIBS} ${EXPAT_LIB} -ldl ${LIBUUID} $(MONGO_LIBS) $(MONGOC_LIBS) -lbacktrace + ${LD} ${LDFLAGS} -rdynamic $^ libcommon.a -o $@ ${LDLIBS} ${EXPAT_LIB} -ldl ${LIBUUID} $(MONGOC_LIBS) -lbacktrace ej-super-server-control: ${SSC_OBJECTS} ${LD} ${LDFLAGS} $^ libcommon.a -o $@ ${LDLIBS} ${EXPAT_LIB} -lbacktrace ej-super-run: ${SR_OBJECTS} - ${LD} ${LDFLAGS} -pthread -rdynamic $^ libcommon.a -o $@ ${LDLIBS} ${EXPAT_LIB} -ldl ${LIBZIP} ${LIBUUID} $(MONGO_LIBS) $(MONGOC_LIBS) ${LIBLZMA} -lbacktrace + ${LD} ${LDFLAGS} -pthread -rdynamic $^ libcommon.a -o $@ ${LDLIBS} ${EXPAT_LIB} -ldl ${LIBZIP} ${LIBUUID} $(MONGOC_LIBS) ${LIBLZMA} -lbacktrace ej-super-run-control: ${SRC_OBJECTS} ${LD} ${LDFLAGS} -rdynamic $^ libcommon.a -o $@ ${LDLIBS} ${EXPAT_LIB} -ldl -lbacktrace @@ -398,7 +398,7 @@ ej-import-contest: ${IC_OBJECTS} ${LD} ${LDFLAGS} $^ libcommon.a -o $@ ${LDLIBS} ${EXPAT_LIB} ${LIBCURL} ${LIBZIP} -ldl ej-page-gen: ${G_OBJECTS} libuserlist_clnt.a libnew_server_clnt.a - ${LD} -pthread ${LDFLAGS} -Wl,--whole-archive $^ -o $@ ${LDLIBS} libdwarf/libdwarf/.libs/libdwarf.a -lelf ${EXPAT_LIB} ${LIBZIP} -ldl -lpanel${NCURSES_SUFFIX} -lmenu${NCURSES_SUFFIX} -lncurses${NCURSES_SUFFIX} ${LIBUUID} -Wl,--no-whole-archive $(MONGO_LIBS) $(MONGOC_LIBS) ${LIBLZMA} -lbacktrace + ${LD} -pthread ${LDFLAGS} -Wl,--whole-archive $^ -o $@ ${LDLIBS} libdwarf/libdwarf/.libs/libdwarf.a -lelf ${EXPAT_LIB} ${LIBZIP} -ldl -lpanel${NCURSES_SUFFIX} -lmenu${NCURSES_SUFFIX} -lncurses${NCURSES_SUFFIX} ${LIBUUID} -Wl,--no-whole-archive $(MONGOC_LIBS) ${LIBLZMA} -lbacktrace ej-page-gen.debug : ej-page-gen objcopy --only-keep-debug $< $@ @@ -406,19 +406,19 @@ ej-convert-clars: ${CU_OBJECTS} ${LD} ${LDFLAGS} -rdynamic $^ libcommon.a libplatform.a -o $@ ${LDLIBS} ${EXPAT_LIB} ${LIBUUID} -ldl ej-convert-runs: ${CR_OBJECTS} - ${LD} ${LDFLAGS} -rdynamic $^ libcommon.a -o $@ ${LDLIBS} ${EXPAT_LIB} -ldl ${LIBUUID} $(MONGO_LIBS) $(MONGOC_LIBS) + ${LD} ${LDFLAGS} -rdynamic $^ libcommon.a -o $@ ${LDLIBS} ${EXPAT_LIB} -ldl ${LIBUUID} $(MONGOC_LIBS) ej-convert-status: ${CVTS_OBJECTS} - ${LD} ${LDFLAGS} -rdynamic $^ libcommon.a -o $@ ${LDLIBS} ${EXPAT_LIB} -ldl ${LIBUUID} $(MONGO_LIBS) $(MONGOC_LIBS) + ${LD} ${LDFLAGS} -rdynamic $^ libcommon.a -o $@ ${LDLIBS} ${EXPAT_LIB} -ldl ${LIBUUID} $(MONGOC_LIBS) ej-convert-xuser: ${CVTX_OBJECTS} - ${LD} ${LDFLAGS} -rdynamic $^ libcommon.a -o $@ ${LDLIBS} ${EXPAT_LIB} -ldl ${LIBUUID} $(MONGO_LIBS) $(MONGOC_LIBS) + ${LD} ${LDFLAGS} -rdynamic $^ libcommon.a -o $@ ${LDLIBS} ${EXPAT_LIB} -ldl ${LIBUUID} $(MONGOC_LIBS) ej-convert-variant: ${CVTV_OBJECTS} - ${LD} ${LDFLAGS} -rdynamic $^ libcommon.a -o $@ ${LDLIBS} ${EXPAT_LIB} -ldl ${LIBUUID} $(MONGO_LIBS) $(MONGOC_LIBS) + ${LD} ${LDFLAGS} -rdynamic $^ libcommon.a -o $@ ${LDLIBS} ${EXPAT_LIB} -ldl ${LIBUUID} $(MONGOC_LIBS) ej-fix-db: ${FIX_DB_OBJECTS} - ${LD} ${LDFLAGS} -rdynamic ${FIX_DB_OBJECTS} -o $@ ${LDLIBS} ${EXPAT_LIB} -ldl ${LIBUUID} $(MONGO_LIBS) $(MONGOC_LIBS) + ${LD} ${LDFLAGS} -rdynamic ${FIX_DB_OBJECTS} -o $@ ${LDLIBS} ${EXPAT_LIB} -ldl ${LIBUUID} $(MONGOC_LIBS) ej-parblock: ${PB_OBJECTS} ${LD} ${LDFLAGS} $^ -o $@ ${LDLIBS} ${EXPAT_LIB} -ldl ${LIBUUID} @@ -484,7 +484,7 @@ cgi-bin/new-client${CGI_PROG_SUFFIX} : $(NC_OBJECTS) $(LD) $(LDFLAGS) -static $^ -o $@ ej-contests : $(NS_OBJECTS) - $(LD) $(LDFLAGS) -pthread -rdynamic $(NS_OBJECTS) -o $@ $(LDLIBS) -lbacktrace -ldl ${EXPAT_LIB} ${LIBZIP} ${LIBUUID} $(MONGO_LIBS) $(MONGOC_LIBS) + $(LD) $(LDFLAGS) -pthread -rdynamic $(NS_OBJECTS) -o $@ $(LDLIBS) -lbacktrace -ldl ${EXPAT_LIB} ${LIBZIP} ${LIBUUID} $(MONGOC_LIBS) ejudge-contests-cmd : $(NSM_OBJECTS) $(LD) $(LDFLAGS) $(NSM_OBJECTS) -o $@ $(LDLIBS) ${EXPAT_LIB} @@ -725,7 +725,7 @@ include/libdwarf-internal/dwarf.h include/libdwarf-internal/libdwarf.h libdwarf/ $(MAKE) -C libdwarf all lib/bson_utils.o : lib/bson_utils.c - $(CC) $(CFLAGS) $(MONGO_CFLAGS) -c $< -o $@ + $(CC) $(CFLAGS) -c $< -o $@ lib/bson_utils_new.o : lib/bson_utils_new.c $(CC) $(CFLAGS) $(MONGOC_CFLAGS) -c $< -o $@ diff --git a/plugins/avatar-mongo/Makefile.in b/plugins/avatar-mongo/Makefile.in index 3ab7c7572e..575460fdfa 100644 --- a/plugins/avatar-mongo/Makefile.in +++ b/plugins/avatar-mongo/Makefile.in @@ -26,10 +26,6 @@ EXPAT_DIR=@ac_cv_expat_root@ EXPAT_INCL_OPT=@ac_cv_expat_include_opt@ EXPAT_LIB_OPT=@ac_cv_expat_lib_opt@ -MONGO_EXISTS=@ac_cv_has_libmongo_client@ -MONGO_CFLAGS=@ac_cv_libmongo_client_cflags@ -MONGO_LIBS=@ac_cv_libmongo_client_libs@ - MONGOC_EXISTS=@ac_cv_has_libmongoc@ MONGOC_CFLAGS=@ac_cv_libmongoc_cflags@ MONGOC_LIBS=@ac_cv_libmongoc_libs@ @@ -51,7 +47,7 @@ EXTRALIBS= CCOMPFLAGS=-D_GNU_SOURCE -std=gnu11 LDCOMPFLAGS= -ifneq ($(MONGO_EXISTS)$(MONGOC_EXISTS),) +ifneq ($(MONGOC_EXISTS),) include main.make else include empty.make diff --git a/plugins/avatar-mongo/main.make b/plugins/avatar-mongo/main.make index 67b12856d7..d4bf6431a1 100644 --- a/plugins/avatar-mongo/main.make +++ b/plugins/avatar-mongo/main.make @@ -21,9 +21,9 @@ ifneq ($(MONGOC_EXISTS),) MONGOC_LIBS = -lmongoc-1.0 -lbson-1.0 endif -CFLAGS = -I../../include $(MONGO_CFLAGS) $(MONGOC_CFLAGS) $(CDEBUGFLAGS) $(CCOMPFLAGS) $(CEXTRAFLAGS) $(WPTRSIGN) +CFLAGS = -I../../include $(MONGOC_CFLAGS) $(CDEBUGFLAGS) $(CCOMPFLAGS) $(CEXTRAFLAGS) $(WPTRSIGN) LDFLAGS = $(MYSQL_LIB_OPT) $(EXPAT_LIB_OPT) $(CDEBUGFLAGS) $(LDCOMPFLAGS) $(LDEXTRAFLAGS) -LDLIBS = $(EXTRALIBS) $(MONGO_LIBS) $(MONGOC_LIBS) -lexpat -lm +LDLIBS = $(EXTRALIBS) $(MONGOC_LIBS) -lexpat -lm CFILES = avatar_mongo.c diff --git a/plugins/common-mongo/Makefile.in b/plugins/common-mongo/Makefile.in index 46f274e606..3cfa3574e5 100644 --- a/plugins/common-mongo/Makefile.in +++ b/plugins/common-mongo/Makefile.in @@ -26,10 +26,6 @@ EXPAT_DIR=@ac_cv_expat_root@ EXPAT_INCL_OPT=@ac_cv_expat_include_opt@ EXPAT_LIB_OPT=@ac_cv_expat_lib_opt@ -MONGO_EXISTS=@ac_cv_has_libmongo_client@ -MONGO_CFLAGS=@ac_cv_libmongo_client_cflags@ -MONGO_LIBS=@ac_cv_libmongo_client_libs@ - MONGOC_EXISTS=@ac_cv_has_libmongoc@ MONGOC_CFLAGS=@ac_cv_libmongoc_cflags@ MONGOC_LIBS=@ac_cv_libmongoc_libs@ diff --git a/plugins/common-mongo/main.make b/plugins/common-mongo/main.make index d9ba411339..39210d7134 100644 --- a/plugins/common-mongo/main.make +++ b/plugins/common-mongo/main.make @@ -21,9 +21,9 @@ ifneq ($(MONGOC_EXISTS),) MONGOC_LIBS = -lmongoc-1.0 -lbson-1.0 endif -CFLAGS = -I../../include $(MONGO_CFLAGS) $(MONGOC_CFLAGS) $(CDEBUGFLAGS) $(CCOMPFLAGS) $(CEXTRAFLAGS) $(WPTRSIGN) +CFLAGS = -I../../include $(MONGOC_CFLAGS) $(CDEBUGFLAGS) $(CCOMPFLAGS) $(CEXTRAFLAGS) $(WPTRSIGN) LDFLAGS = $(MYSQL_LIB_OPT) $(EXPAT_LIB_OPT) $(CDEBUGFLAGS) $(LDCOMPFLAGS) $(LDEXTRAFLAGS) -LDLIBS = $(EXTRALIBS) $(MONGO_LIBS) $(MONGOC_LIBS) -lexpat -lm +LDLIBS = $(EXTRALIBS) $(MONGOC_LIBS) -lexpat -lm CFILES = common_mongo.c diff --git a/plugins/status-mongo/Makefile.in b/plugins/status-mongo/Makefile.in index 46f274e606..e69cf9fce8 100644 --- a/plugins/status-mongo/Makefile.in +++ b/plugins/status-mongo/Makefile.in @@ -26,10 +26,6 @@ EXPAT_DIR=@ac_cv_expat_root@ EXPAT_INCL_OPT=@ac_cv_expat_include_opt@ EXPAT_LIB_OPT=@ac_cv_expat_lib_opt@ -MONGO_EXISTS=@ac_cv_has_libmongo_client@ -MONGO_CFLAGS=@ac_cv_libmongo_client_cflags@ -MONGO_LIBS=@ac_cv_libmongo_client_libs@ - MONGOC_EXISTS=@ac_cv_has_libmongoc@ MONGOC_CFLAGS=@ac_cv_libmongoc_cflags@ MONGOC_LIBS=@ac_cv_libmongoc_libs@ @@ -51,7 +47,7 @@ EXTRALIBS= CCOMPFLAGS=-D_GNU_SOURCE -std=gnu11 LDCOMPFLAGS= -ifneq ($(MONGO_EXISTS)$(MONGOC_EXISTS),) +ifneq ($(MONGOC_EXISTS),) include main.make else include empty.make diff --git a/plugins/status-mongo/main.make b/plugins/status-mongo/main.make index 22bba06e6c..46bc7326da 100644 --- a/plugins/status-mongo/main.make +++ b/plugins/status-mongo/main.make @@ -21,9 +21,9 @@ ifneq ($(MONGOC_EXISTS),) MONGOC_LIBS = -lmongoc-1.0 -lbson-1.0 endif -CFLAGS = -I../../include $(MONGO_CFLAGS) $(MONGOC_CFLAGS) $(CDEBUGFLAGS) $(CCOMPFLAGS) $(CEXTRAFLAGS) $(WPTRSIGN) +CFLAGS = -I../../include $(MONGOC_CFLAGS) $(CDEBUGFLAGS) $(CCOMPFLAGS) $(CEXTRAFLAGS) $(WPTRSIGN) LDFLAGS = $(MYSQL_LIB_OPT) $(EXPAT_LIB_OPT) $(CDEBUGFLAGS) $(LDCOMPFLAGS) $(LDEXTRAFLAGS) -LDLIBS = $(EXTRALIBS) $(MONGO_LIBS) $(MONGOC_LIBS) -lexpat -lm +LDLIBS = $(EXTRALIBS) $(MONGOC_LIBS) -lexpat -lm CFILES = status_mongo.c diff --git a/plugins/telegram/Makefile.in b/plugins/telegram/Makefile.in index 47cd5e4496..8039e3075e 100644 --- a/plugins/telegram/Makefile.in +++ b/plugins/telegram/Makefile.in @@ -31,10 +31,6 @@ MYSQL_INCL_OPT=@ac_cv_mysql_include_opt@ MYSQL_LIB_OPT=@ac_cv_mysql_lib_opt@ MYSQL_LIBS=@ac_cv_mysql_libs@ -MONGO_EXISTS=@ac_cv_has_libmongo_client@ -MONGO_CFLAGS=@ac_cv_libmongo_client_cflags@ -MONGO_LIBS=@ac_cv_libmongo_client_libs@ - MONGOC_EXISTS=@ac_cv_has_libmongoc@ MONGOC_CFLAGS=@ac_cv_libmongoc_cflags@ MONGOC_LIBS=@ac_cv_libmongoc_libs@ @@ -56,7 +52,7 @@ EXTRALIBS= CCOMPFLAGS=-D_GNU_SOURCE -std=gnu11 LDCOMPFLAGS= -ifneq ($(MONGO_EXISTS)$(MONGOC_EXISTS)$(MYSQL_LIBS),) +ifneq ($(MONGOC_EXISTS)$(MYSQL_LIBS),) include main.make else include empty.make diff --git a/plugins/telegram/main.make b/plugins/telegram/main.make index 4b5642ec46..cb437ba736 100644 --- a/plugins/telegram/main.make +++ b/plugins/telegram/main.make @@ -17,9 +17,9 @@ PLUGINDIR = $(libexecdir)/ejudge/plugins CC = gcc LD = gcc -CFLAGS = -I../../include $(MYSQL_INCL_OPT) $(MONGO_CFLAGS) $(MONGOC_CFLAGS) $(CDEBUGFLAGS) $(CCOMPFLAGS) $(CEXTRAFLAGS) $(WPTRSIGN) +CFLAGS = -I../../include $(MYSQL_INCL_OPT) $(MONGOC_CFLAGS) $(CDEBUGFLAGS) $(CCOMPFLAGS) $(CEXTRAFLAGS) $(WPTRSIGN) LDFLAGS = $(MYSQL_LIB_OPT) $(EXPAT_LIB_OPT) $(CDEBUGFLAGS) $(LDCOMPFLAGS) $(LDEXTRAFLAGS) -LDLIBS = $(EXTRALIBS) $(MYSQL_LIBS) $(MONGO_LIBS) $(MONGOC_LIBS) -lcurl -lexpat -lm +LDLIBS = $(EXTRALIBS) $(MYSQL_LIBS) $(MONGOC_LIBS) -lcurl -lexpat -lm CFILES = telegram.c telegram_data.c telegram_pbs.c telegram_token.c mongo_conn.c telegram_chat.c telegram_user.c telegram_chat_state.c telegram_subscription.c mysql_conn.c diff --git a/plugins/xuser-mongo/Makefile.in b/plugins/xuser-mongo/Makefile.in index 46f274e606..e69cf9fce8 100644 --- a/plugins/xuser-mongo/Makefile.in +++ b/plugins/xuser-mongo/Makefile.in @@ -26,10 +26,6 @@ EXPAT_DIR=@ac_cv_expat_root@ EXPAT_INCL_OPT=@ac_cv_expat_include_opt@ EXPAT_LIB_OPT=@ac_cv_expat_lib_opt@ -MONGO_EXISTS=@ac_cv_has_libmongo_client@ -MONGO_CFLAGS=@ac_cv_libmongo_client_cflags@ -MONGO_LIBS=@ac_cv_libmongo_client_libs@ - MONGOC_EXISTS=@ac_cv_has_libmongoc@ MONGOC_CFLAGS=@ac_cv_libmongoc_cflags@ MONGOC_LIBS=@ac_cv_libmongoc_libs@ @@ -51,7 +47,7 @@ EXTRALIBS= CCOMPFLAGS=-D_GNU_SOURCE -std=gnu11 LDCOMPFLAGS= -ifneq ($(MONGO_EXISTS)$(MONGOC_EXISTS),) +ifneq ($(MONGOC_EXISTS),) include main.make else include empty.make diff --git a/plugins/xuser-mongo/main.make b/plugins/xuser-mongo/main.make index d5930280ab..746d3d1759 100644 --- a/plugins/xuser-mongo/main.make +++ b/plugins/xuser-mongo/main.make @@ -21,9 +21,9 @@ ifneq ($(MONGOC_EXISTS),) MONGOC_LIBS = -lmongoc-1.0 -lbson-1.0 endif -CFLAGS = -I../../include $(MONGO_CFLAGS) $(MONGOC_CFLAGS) $(CDEBUGFLAGS) $(CCOMPFLAGS) $(CEXTRAFLAGS) $(WPTRSIGN) +CFLAGS = -I../../include $(MONGOC_CFLAGS) $(CDEBUGFLAGS) $(CCOMPFLAGS) $(CEXTRAFLAGS) $(WPTRSIGN) LDFLAGS = $(MYSQL_LIB_OPT) $(EXPAT_LIB_OPT) $(CDEBUGFLAGS) $(LDCOMPFLAGS) $(LDEXTRAFLAGS) -LDLIBS = $(EXTRALIBS) $(MONGO_LIBS) $(MONGOC_LIBS) -lexpat -lm +LDLIBS = $(EXTRALIBS) $(MONGOC_LIBS) -lexpat -lm CFILES = xuser_mongo.c team_extra_bson.c From ef5b668d9f632d54562fc206223ee4d7c39c6478 Mon Sep 17 00:00:00 2001 From: Alexander Myltsev Date: Mon, 13 Jan 2025 22:51:18 +0400 Subject: [PATCH 2/4] Run autoconf. --- configure | 34 ---------------------------------- 1 file changed, 34 deletions(-) diff --git a/configure b/configure index 49e61c34eb..516e2a3de3 100755 --- a/configure +++ b/configure @@ -657,9 +657,6 @@ ac_cv_primary_user ac_cv_libmongoc_libs ac_cv_libmongoc_cflags ac_cv_has_libmongoc -ac_cv_libmongo_client_libs -ac_cv_libmongo_client_cflags -ac_cv_has_libmongo_client ac_cv_lang_config_dir_expanded ac_cv_lang_config_dir ac_cv_ejudge_server_bin_path_m @@ -8506,28 +8503,6 @@ then ac_cv_libmongoc_libs=`pkg-config --libs libmongoc-1.0` fi -if [ x"${ac_cv_has_libmongoc}" = x ] -then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for libmongo-client" >&5 -printf %s "checking for libmongo-client... " >&6; } - if pkg-config --exists libmongo-client - then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -printf "%s\n" "yes" >&6; } - ac_cv_has_libmongo_client=1 - else - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } - ac_cv_has_libmongo_client= - fi - - if [ x"${ac_cv_has_libmongo_client}" = x1 ] - then - ac_cv_libmongo_client_cflags=`pkg-config --cflags libmongo-client` - ac_cv_libmongo_client_libs=`pkg-config --libs libmongo-client` - fi -fi - if [ x"${prefix}" = xNONE ] @@ -8723,9 +8698,6 @@ fi - - - @@ -9016,12 +8988,6 @@ then fi -if [ x"${ac_cv_has_libmongo_client}" = x1 ] -then - printf "%s\n" "#define HAVE_LIBMONGO_CLIENT 1" >>confdefs.h - -fi - ac_config_headers="$ac_config_headers config.h" From b5c0c9fc8277a9b34cb94bda71c2e101c81cbd5e Mon Sep 17 00:00:00 2001 From: Alexander Myltsev Date: Mon, 13 Jan 2025 23:02:52 +0400 Subject: [PATCH 3/4] Remove bson_utils.c. --- files.make | 1 - lib/bson_utils.c | 25 ------------------------- main.unix.make | 3 --- 3 files changed, 29 deletions(-) delete mode 100644 lib/bson_utils.c diff --git a/files.make b/files.make index 30701903de..68ef23bd64 100644 --- a/files.make +++ b/files.make @@ -127,7 +127,6 @@ COMMON_CFILES=\ lib/base64.c\ lib/base64u.c\ lib/bitset.c\ - lib/bson_utils.c\ lib/bson_utils_new.c\ lib/build_support.c\ lib/cgi.c\ diff --git a/lib/bson_utils.c b/lib/bson_utils.c deleted file mode 100644 index bdbcf6bc8a..0000000000 --- a/lib/bson_utils.c +++ /dev/null @@ -1,25 +0,0 @@ -/* -*- mode: c -*- */ - -/* Copyright (C) 2015-2022 Alexander Chernov */ - -/* - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - */ - -#include "ejudge/config.h" - -int ej_bson_force_link_dummy = 0; - -/* - * Local variables: - * c-basic-offset: 4 - * End: - */ diff --git a/main.unix.make b/main.unix.make index 1ac184349e..6800c05902 100644 --- a/main.unix.make +++ b/main.unix.make @@ -724,9 +724,6 @@ cfront/ej-cfront : reuse/objs/libreuse.a include/libdwarf-internal/dwarf.h include/libdwarf-internal/libdwarf.h libdwarf/libdwarf/libdwarf.a: $(MAKE) -C libdwarf all -lib/bson_utils.o : lib/bson_utils.c - $(CC) $(CFLAGS) -c $< -o $@ - lib/bson_utils_new.o : lib/bson_utils_new.c $(CC) $(CFLAGS) $(MONGOC_CFLAGS) -c $< -o $@ lib/testing_report_bson.o : lib/testing_report_bson.c gen/testing_report_tags.c From 2538eba84d9fd7729a3a702bf5ab080a6964e2d7 Mon Sep 17 00:00:00 2001 From: Alexander Myltsev Date: Tue, 14 Jan 2025 01:42:59 +0400 Subject: [PATCH 4/4] Fix build without libmongoc. --- bin/ej-contests.c | 2 - include/ejudge/bson_utils.h | 87 ------------------------ lib/testing_report_bson.c | 2 +- plugins/telegram/telegram_chat.c | 2 - plugins/telegram/telegram_chat_state.c | 2 - plugins/telegram/telegram_pbs.c | 6 +- plugins/telegram/telegram_subscription.c | 2 - plugins/telegram/telegram_token.c | 2 - plugins/telegram/telegram_user.c | 2 - 9 files changed, 2 insertions(+), 105 deletions(-) diff --git a/bin/ej-contests.c b/bin/ej-contests.c index 33dbfb0a63..f93505499b 100644 --- a/bin/ej-contests.c +++ b/bin/ej-contests.c @@ -920,12 +920,10 @@ setup_spool_dirs(const struct ejudge_cfg *config, struct server_framework_state #endif /* EJUDGE_RUN_SPOOL_DIR */ } -extern int ej_bson_force_link_dummy; extern int ej_bson_new_force_link_dummy; static void *forced_symbols[] __attribute__((unused,used)) = { - &ej_bson_force_link_dummy, &ej_bson_new_force_link_dummy, &base64u_encode, &base64u_decode, diff --git a/include/ejudge/bson_utils.h b/include/ejudge/bson_utils.h index 6f0910b165..ab7351db7c 100644 --- a/include/ejudge/bson_utils.h +++ b/include/ejudge/bson_utils.h @@ -26,11 +26,6 @@ struct _bson_t; // FIXME: no opaque structure tag for bson_iter_t -void -ej_bson_unparse( - FILE *out, - const struct _bson *, - int is_array); void ej_bson_unparse_new( FILE *out, @@ -38,15 +33,6 @@ ej_bson_unparse_new( int is_array); int -ej_bson_parse_int( - struct _bson_cursor *bc, - const unsigned char *field_name, - int *p_value, - int check_low, - int low_value, - int check_high, - int high_value); -int ej_bson_parse_int_new( void *bc, // bson_iter_t * const unsigned char *field_name, @@ -57,121 +43,66 @@ ej_bson_parse_int_new( int high_value); int -ej_bson_parse_int64( - struct _bson_cursor *bc, - const unsigned char *field_name, - long long *p_value); -int ej_bson_parse_int64_new( void *bc, // bson_iter_t * const unsigned char *field_name, long long *p_value); int -ej_bson_parse_boolean( - struct _bson_cursor *bc, - const unsigned char *field_name, - int *p_value); -int ej_bson_parse_boolean_new( void *bc, // bson_iter_t * const unsigned char *field_name, int *p_value); int -ej_bson_parse_boolean_uc( - struct _bson_cursor *bc, - const unsigned char *field_name, - unsigned char *p_value); -int ej_bson_parse_boolean_uc_new( void *bc, // bson_iter_t * const unsigned char *field_name, unsigned char *p_value); int -ej_bson_parse_utc_datetime( - struct _bson_cursor *bc, - const unsigned char *field_name, - time_t *p_value); -int ej_bson_parse_utc_datetime_new( void *bc, // bson_iter_t * const unsigned char *field_name, time_t *p_value); int -ej_bson_parse_utc_datetime_64( - struct _bson_cursor *bc, - const unsigned char *field_name, - ej_time64_t *p_value); -int ej_bson_parse_utc_datetime_64_new( void *bc, // bson_iter_t * const unsigned char *field_name, ej_time64_t *p_value); int -ej_bson_parse_uuid( - struct _bson_cursor *bc, - const unsigned char *field_name, - ej_uuid_t *p_value); -int ej_bson_parse_uuid_new( void *bc, // bson_iter_t * const unsigned char *field_name, ej_uuid_t *p_value); int -ej_bson_parse_oid( - struct _bson_cursor *bc, - const unsigned char *field_name, - unsigned char *p_value); -int ej_bson_parse_oid_new( void *bc, // bson_iter_t const unsigned char *field_name, unsigned char *p_value); int -ej_bson_parse_ip( - struct _bson_cursor *bc, - const unsigned char *field_name, - ej_ip_t *p_value); -int ej_bson_parse_ip_new( void *bc, // bson_iter_t const unsigned char *field_name, ej_ip_t *p_value); int -ej_bson_parse_string( - struct _bson_cursor *bc, - const unsigned char *field_name, - unsigned char **p_value); -int ej_bson_parse_string_new( void *bc, // bson_iter_t const unsigned char *field_name, unsigned char **p_value); int -ej_bson_parse_array( - struct _bson_cursor *bc, - const unsigned char *field_name, - struct _bson **p_value); -int ej_bson_parse_array_new( void *bc, // bson_iter_t const unsigned char *field_name, struct _bson_t **p_value); int -ej_bson_parse_document( - struct _bson_cursor *bc, - const unsigned char *field_name, - struct _bson **p_value); -int ej_bson_parse_document_new( void *bc, // bson_iter_t const unsigned char *field_name, @@ -184,40 +115,22 @@ ej_bson_parse_sha1_new( unsigned char *p_value); void -ej_bson_append_uuid( - struct _bson *b, - const unsigned char *key, - const ej_uuid_t *p_uuid); -void ej_bson_append_uuid_new( struct _bson_t *b, const unsigned char *key, const ej_uuid_t *p_uuid); void -ej_bson_append_ip( - struct _bson *b, - const unsigned char *key, - const ej_ip_t *p_ip); -void ej_bson_append_ip_new( struct _bson_t *b, const unsigned char *key, const ej_ip_t *p_ip); -struct _bson * -ej_bson_unparse_array_int( - const int *values, - int count); struct _bson_t * ej_bson_unparse_array_int_new( const int *values, int count); -struct _bson * -ej_bson_unparse_array_uuid( - ej_uuid_t *values, - int count); struct _bson_t * ej_bson_unparse_array_uuid_new( ej_uuid_t *values, diff --git a/lib/testing_report_bson.c b/lib/testing_report_bson.c index 7625c4e082..c1ab66e2d8 100644 --- a/lib/testing_report_bson.c +++ b/lib/testing_report_bson.c @@ -14,7 +14,6 @@ * GNU General Public License for more details. */ -#include "bson/bson.h" #include "ejudge/config.h" #include "ejudge/runlog.h" @@ -29,6 +28,7 @@ #include #if HAVE_LIBMONGOC - 0 > 0 +#include #if HAVE_LIBMONGOC - 0 > 1 #include diff --git a/plugins/telegram/telegram_chat.c b/plugins/telegram/telegram_chat.c index 3babd3b49e..ca21aeda91 100644 --- a/plugins/telegram/telegram_chat.c +++ b/plugins/telegram/telegram_chat.c @@ -33,10 +33,8 @@ #include #include -#if HAVE_LIBMONGOC - 0 > 0 struct _bson_t; typedef struct _bson_t ej_bson_t; -#endif #define TELEGRAM_CHATS_TABLE_NAME "telegram_chats" diff --git a/plugins/telegram/telegram_chat_state.c b/plugins/telegram/telegram_chat_state.c index 62438b2a26..f8841feb6c 100644 --- a/plugins/telegram/telegram_chat_state.c +++ b/plugins/telegram/telegram_chat_state.c @@ -33,10 +33,8 @@ #include #include -#if HAVE_LIBMONGOC - 0 > 0 struct _bson_t; typedef struct _bson_t ej_bson_t; -#endif #define TELEGRAM_CHAT_STATES_TABLE_NAME "telegram_chat_states" diff --git a/plugins/telegram/telegram_pbs.c b/plugins/telegram/telegram_pbs.c index c31087b55b..d02dd90a2d 100644 --- a/plugins/telegram/telegram_pbs.c +++ b/plugins/telegram/telegram_pbs.c @@ -23,10 +23,8 @@ #include "telegram_pbs.h" #include "mongo_conn.h" -#if HAVE_LIBMONGOC - 0 > 0 struct _bson_t; typedef struct _bson_t ej_bson_t; -#endif #if HAVE_LIBMONGOC - 0 > 1 #include @@ -85,10 +83,8 @@ telegram_pbs_parse_bson(const ej_bson_t *bson) cleanup: telegram_pbs_free(pbs); - return NULL; -#else - return NULL #endif + return NULL; } static ej_bson_t * diff --git a/plugins/telegram/telegram_subscription.c b/plugins/telegram/telegram_subscription.c index ee33e7ff5f..55735845f0 100644 --- a/plugins/telegram/telegram_subscription.c +++ b/plugins/telegram/telegram_subscription.c @@ -32,10 +32,8 @@ #include #include -#if HAVE_LIBMONGOC - 0 > 0 struct _bson_t; typedef struct _bson_t ej_bson_t; -#endif #define TELEGRAM_SUBSCRIPTIONS_TABLE_NAME "telegram_subscriptions" diff --git a/plugins/telegram/telegram_token.c b/plugins/telegram/telegram_token.c index 254dc83487..7f73e998a9 100644 --- a/plugins/telegram/telegram_token.c +++ b/plugins/telegram/telegram_token.c @@ -22,10 +22,8 @@ #include "telegram_token.h" #include "mongo_conn.h" -#if HAVE_LIBMONGOC - 0 > 0 struct _bson_t; typedef struct _bson_t ej_bson_t; -#endif #if HAVE_LIBMONGOC - 0 > 1 #include diff --git a/plugins/telegram/telegram_user.c b/plugins/telegram/telegram_user.c index 5f3aaac3f8..b2e056da04 100644 --- a/plugins/telegram/telegram_user.c +++ b/plugins/telegram/telegram_user.c @@ -33,10 +33,8 @@ #include #include -#if HAVE_LIBMONGOC - 0 > 0 struct _bson_t; typedef struct _bson_t ej_bson_t; -#endif #define TELEGRAM_USERS_TABLE_NAME "telegram_users"