mod_mongo: switched from C++ to latest C driver

This commit is contained in:
Chris Rienzo committed 2014-03-24 17:34:56 -04:00
1 parent c7bd862e9a
commit 98bba8b57a
5 files changed
+403 -359

No files matched your search

+25 -19
View File
@@ -1,31 +1,37 @@
include $(top_srcdir)/build/modmake.rulesam
AUTOMAKE_OPTIONS += foreign
MODNAME=mod_mongo
MONGO_CXX_DRIVER_VERSION=v2.4
MONGO_CXX_DRIVER_URL=http://downloads.mongodb.org/cxx-driver
MONGO_CXX_DRIVER_TARBALL=mongodb-linux-x86_64-$(MONGO_CXX_DRIVER_VERSION)-latest.tgz
MONGO_CXX_DRIVER_SRC=$(switch_builddir)/libs/mongo-cxx-driver-$(MONGO_CXX_DRIVER_VERSION)
LIBMONGOCLIENT_A =$(MONGO_CXX_DRIVER_SRC)/libmongoclient.a
MONGOC=mongo-c-driver-0.92.2
MONGOC_DIR=$(switch_srcdir)/libs/$(MONGOC)
MONGOC_BUILDDIR=$(switch_builddir)/libs/$(MONGOC)
MONGOC_LA=$(MONGOC_BUILDDIR)/libmongoc-priv.la
mod_LTLIBRARIES = mod_mongo.la
mod_mongo_la_SOURCES = mod_mongo.cpp
mod_mongo_la_CFLAGS = $(AM_CFLAGS)
mod_mongo_la_CPPFLAGS = -I$(MONGO_CXX_DRIVER_SRC)/src -I$(switch_srcdir)/libs/libteletone/src/
mod_mongo_la_LIBADD = $(switch_builddir)/libfreeswitch.la $(LIBMONGOCLIENT_A)
mod_mongo_la_LDFLAGS = -avoid-version -module -no-undefined -shared -lboost_thread -lboost_filesystem-mt -lboost_system-mt
mod_mongo_la_SOURCES = mod_mongo.c
mod_mongo_la_CFLAGS = $(AM_CFLAGS) -I$(MONGOC_DIR)/src/mongoc/ -I$(MONGOC_DIR)/src/libbson/src/bson/
mod_mongo_la_CPPFLAGS = $(AM_CPPFLAGS)
mod_mongo_la_LIBADD = $(switch_builddir)/libfreeswitch.la $(MONGOC_LA)
mod_mongo_la_LDFLAGS = -avoid-version -module -no-undefined -shared
BUILT_SOURCES=$(LIBMONGOCLIENT_A)
BUILT_SOURCES=$(MONGOC_LA)
$(MONGO_CXX_DRIVER_SRC):
$(GETLIB) $(MONGO_CXX_DRIVER_URL) $(MONGO_CXX_DRIVER_TARBALL)
cd $(MONGO_CXX_DRIVER_SRC) && patch -p0 -i $(switch_srcdir)/src/mod/applications/mod_mongo/fpic_hack.diff
$(MONGOC_DIR)/configure:
$(GETLIB) $(MONGOC).tar.gz
sed -i'' -e 's/cruT/cru/' $(MONGOC_DIR)/configure
sed -i'' -e 's/cruT/cru/' $(MONGOC_DIR)/build/autotools/SetupLibtool.m4
sed -i'' -e 's/cruT/cru/' $(MONGOC_DIR)/src/libbson/configure
sed -i'' -e 's/cruT/cru/' $(MONGOC_DIR)/src/libbson/build/autotools/SetupLibtool.m4
cd $(MONGOC_DIR) && autoreconf -i
$(TOUCH_TARGET)
$(MONGOC_BUILDDIR)/Makefile: $(MONGOC_DIR)/configure
mkdir -p $(MONGOC_BUILDDIR)
cd $(MONGOC_BUILDDIR) && $(DEFAULT_VARS) $(MONGOC_DIR)/configure $(DEFAULT_ARGS)
$(TOUCH_TARGET)
$(LIBMONGOCLIENT_A): $(MONGO_CXX_DRIVER_SRC)
(cd $(MONGO_CXX_DRIVER_SRC) && \
sed -i'' SConstruct -e "s|Environment()|Environment(ENV = {'PATH' : os.environ.get('PATH','/bin:/usr/bin'),'CFLAGS' : os.environ.get('CFLAGS',''),'CXXFLAGS' : os.environ.get('CXXFLAGS','')})|" && \
echo "env.Append(PATH=os.environ.get('PATH','/bin:/usr/bin'))" >> SConstruct && \
scons)
$(MONGOC_LA): $(MONGOC_BUILDDIR)/Makefile
cd $(MONGOC_BUILDDIR) && $(MAKE)
$(TOUCH_TARGET)