diff options
Diffstat (limited to 'cpp/src')
-rw-r--r-- | cpp/src/Freeze/MapDb.cpp | 24 | ||||
-rw-r--r-- | cpp/src/Freeze/MapI.cpp | 4 | ||||
-rw-r--r-- | cpp/src/IceGrid/Makefile | 4 | ||||
-rw-r--r-- | cpp/src/IceStorm/Makefile | 2 |
4 files changed, 21 insertions, 13 deletions
diff --git a/cpp/src/Freeze/MapDb.cpp b/cpp/src/Freeze/MapDb.cpp index 6ebc66d2174..a63edee9485 100644 --- a/cpp/src/Freeze/MapDb.cpp +++ b/cpp/src/Freeze/MapDb.cpp @@ -31,16 +31,20 @@ const string _catalogIndexListName = "__catalogIndexList"; extern "C" { -static int customCompare(DB* db, const DBT* dbt1, const DBT* dbt2) -{ - MapDb* me = static_cast<MapDb*>(db->app_private); - Ice::Byte* first = static_cast<Ice::Byte*>(dbt1->data); - Key k1(first, first + dbt1->size); - first = static_cast<Ice::Byte*>(dbt2->data); - Key k2(first, first + dbt2->size); - - return me->getKeyCompare()->compare(k1, k2); -} +#if (DB_VERSION_MAJOR <= 5) + static int customCompare(DB* db, const DBT* dbt1, const DBT* dbt2) +#else + static int customCompare(DB* db, const DBT* dbt1, const DBT* dbt2, size_t*) +#endif + { + MapDb* me = static_cast<MapDb*>(db->app_private); + Ice::Byte* first = static_cast<Ice::Byte*>(dbt1->data); + Key k1(first, first + dbt1->size); + first = static_cast<Ice::Byte*>(dbt2->data); + Key k2(first, first + dbt2->size); + + return me->getKeyCompare()->compare(k1, k2); + } } const string& diff --git a/cpp/src/Freeze/MapI.cpp b/cpp/src/Freeze/MapI.cpp index e6723623703..0b4ffa64a7d 100644 --- a/cpp/src/Freeze/MapI.cpp +++ b/cpp/src/Freeze/MapI.cpp @@ -1759,7 +1759,11 @@ Freeze::MapHelperI::closeAllIteratorsExcept(const IteratorHelperI::TxPtr& tx) co extern "C" { +#if (DB_VERSION_MAJOR <= 5) static int customIndexCompare(DB* db, const DBT* dbt1, const DBT* dbt2) +#else + static int customIndexCompare(DB* db, const DBT* dbt1, const DBT* dbt2, size_t*) +#endif { MapIndexI* me = static_cast<MapIndexI*>(db->app_private); Byte* first = static_cast<Byte*>(dbt1->data); diff --git a/cpp/src/IceGrid/Makefile b/cpp/src/IceGrid/Makefile index 0fcb6e7e453..33ed98f7a81 100644 --- a/cpp/src/IceGrid/Makefile +++ b/cpp/src/IceGrid/Makefile @@ -114,12 +114,12 @@ $(ADMIN): $(ADMIN_OBJS) $(LIBTARGETS) $(REGISTRY_SERVER): $(REGISTRY_SVR_OBJS) $(LIBTARGETS) rm -f $@ $(CXX) $(LDFLAGS) $(LDEXEFLAGS) -o $@ $(REGISTRY_SVR_OBJS) -lIceGrid -lIceStorm -lIceStormService -lGlacier2 -lIcePatch2 \ - -lFreeze -lIceBox $(EXPAT_RPATH_LINK) -lIceXML -lIceSSL $(OPENSSL_RPATH_LINK) $(LIBS) + $(DB_RPATH_LINK) -lFreeze -lIceBox $(EXPAT_RPATH_LINK) -lIceXML -lIceSSL $(OPENSSL_RPATH_LINK) $(LIBS) $(NODE_SERVER): $(NODE_SVR_OBJS) $(LIBTARGETS) rm -f $@ $(CXX) $(LDFLAGS) $(LDEXEFLAGS) -o $@ $(NODE_SVR_OBJS) -lIceGrid -lIceStorm -lIceStormService -lIceBox -lGlacier2 \ - -lFreeze -lIcePatch2 $(EXPAT_RPATH_LINK) -lIceXML -lIceSSL $(OPENSSL_RPATH_LINK) $(LIBS) + $(DB_RPATH_LINK) -lFreeze -lIcePatch2 $(EXPAT_RPATH_LINK) -lIceXML -lIceSSL $(OPENSSL_RPATH_LINK) $(LIBS) ../IceLocatorDiscovery/%.h %.cpp: $(slicedir)/IceLocatorDiscovery/%.ice $(SLICE2CPP) $(SLICEPARSERLIB) rm -f $(*F).h $(*F).cpp diff --git a/cpp/src/IceStorm/Makefile b/cpp/src/IceStorm/Makefile index 0d5b6f1b5f6..d382aa6b4f5 100644 --- a/cpp/src/IceStorm/Makefile +++ b/cpp/src/IceStorm/Makefile @@ -93,7 +93,7 @@ $(ADMIN): $(AOBJS) $(LIBTARGETS) $(MIGRATE): $(MOBJS) rm -f $@ - $(CXX) $(LDFLAGS) $(LDEXEFLAGS) -o $@ $(MOBJS) -lIceStorm -lFreeze $(LIBS) + $(CXX) $(LDFLAGS) $(DB_RPATH_LINK) $(LDEXEFLAGS) -o $@ $(MOBJS) -lIceStorm -lFreeze $(LIBS) # The slice2freeze rules are structured like this to avoid issues with # parallel make. |