File: db_mongodb_mongo2.patch

package info (click to toggle)
kamailio 6.0.2-3
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 70,224 kB
  • sloc: ansic: 858,902; xml: 203,335; makefile: 9,296; sh: 8,928; sql: 8,571; yacc: 4,121; python: 3,086; perl: 2,955; java: 449; cpp: 289; javascript: 270; php: 258; ruby: 248; awk: 27
file content (51 lines) | stat: -rw-r--r-- 1,634 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
Origin: https://github.com/kamailio/kamailio/pull/4379
From: Victor Seva <linuxmaniac@torreviejawireless.org>
Date: Wed, 27 Aug 2025 11:59:25 +0200
Subject: db_mongodb: support mongo-c-driver version 2

related #4378
---
 src/modules/db_mongodb/Makefile             | 5 +++++
 src/modules/db_mongodb/mongodb_connection.h | 5 +++++
 2 files changed, 10 insertions(+)

diff --git a/src/modules/db_mongodb/Makefile b/src/modules/db_mongodb/Makefile
index 075766ffa7b..07c0bb307a6 100644
--- a/src/modules/db_mongodb/Makefile
+++ b/src/modules/db_mongodb/Makefile
@@ -9,12 +9,17 @@ ifeq ($(CROSS_COMPILE),)
 MONGODBC_BUILDER=$(shell \
 	if pkg-config --exists libmongoc-1.0; then \
 		echo 'pkg-config libmongoc-1.0'; \
+	elif pkg-config --exists mongoc2; then \
+		echo 'pkg-config mongoc2'; \
 	fi)
 endif
 
 ifneq ($(MONGODBC_BUILDER),)
 	DEFS += $(shell $(MONGODBC_BUILDER) --cflags)
 	LIBS += $(shell $(MONGODBC_BUILDER) --libs)
+	ifneq ($(findstring libmongoc-1.0,$(MONGODBC_BUILDER)),)
+		DEFS += -DHAVE_LIBMONGOC1
+	endif
 else
 	DEFS += -I$(LOCALBASE)/include
 	LIBS= -L$(LOCALBASE)/lib -lmongoc
diff --git a/src/modules/db_mongodb/mongodb_connection.h b/src/modules/db_mongodb/mongodb_connection.h
index 4952619bb82..1ab78476144 100644
--- a/src/modules/db_mongodb/mongodb_connection.h
+++ b/src/modules/db_mongodb/mongodb_connection.h
@@ -25,8 +25,13 @@
 #ifndef _MONGODB_CONNECTION_H_
 #define _MONGODB_CONNECTION_H_
 
+#ifdef HAVE_LIBMONGOC1
 #include <mongoc.h>
 #include <bson.h>
+#else
+#include <mongoc/mongoc.h>
+#include <bson/bson.h>
+#endif
 
 #include "../../lib/srdb1/db_pool.h"
 #include "../../lib/srdb1/db_id.h"