pkgsrc-Users archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Patch to upgrade mongodb from 3.4.4 to 3.4.15



I ran into boost-related compile errors with mongodb in pkgsrc-2018Q1,
so went and bodged up a patch to upgrade mongodb. I'm staying with the
3.4 series, since that's apparently required by net/unifi, which is my
only reason for running mongodb.

Does it look sane?

-- 
Paul Ripke
"Great minds discuss ideas, average minds discuss events, small minds
 discuss people."
-- Disputed: Often attributed to Eleanor Roosevelt. 1948.
diff --git a/databases/mongodb/Makefile b/databases/mongodb/Makefile
index fff530dbbaa..073a035f0c2 100644
--- a/databases/mongodb/Makefile
+++ b/databases/mongodb/Makefile
@@ -1,6 +1,6 @@
 # $NetBSD: Makefile,v 1.26 2018/01/01 21:18:18 adam Exp $
 
-DISTNAME=	mongodb-src-r3.4.4
+DISTNAME=	mongodb-src-r3.4.15
 PKGNAME=	${DISTNAME:S/src-r//:S/-rc/rc/}
 PKGREVISION=	3
 CATEGORIES=	databases
diff --git a/databases/mongodb/distinfo b/databases/mongodb/distinfo
index f66fd323ef4..8b5f74a6898 100644
--- a/databases/mongodb/distinfo
+++ b/databases/mongodb/distinfo
@@ -1,17 +1,16 @@
 $NetBSD: distinfo,v 1.21 2017/10/08 22:17:06 tnn Exp $
 
-SHA1 (mongodb-src-r3.4.4.tar.gz) = 6f9f2d8a3c1c2f4089fd03f8be0b86ff0431d955
-RMD160 (mongodb-src-r3.4.4.tar.gz) = 2a65f380204a92762ceea2be35dbe2c671e106f6
-SHA512 (mongodb-src-r3.4.4.tar.gz) = dbae89b49c363e7258021cd31385e4449bfdfdfd5adfcb1683e4431372731e58ec33bf8f7576d2d52659a52461bd6a32fbc67d5c6e36d52184ec1aabb345d940
-Size (mongodb-src-r3.4.4.tar.gz) = 39867133 bytes
-SHA1 (patch-SConstruct) = 6ec188274fb25614494ec192be7809a6a01962de
+SHA1 (mongodb-src-r3.4.15.tar.gz) = 83ee9a326f93986bcdfcb27aa14c2a6b9e7c90e2
+RMD160 (mongodb-src-r3.4.15.tar.gz) = 2460299bd54c3e28b685b016143ce44620ea0479
+SHA512 (mongodb-src-r3.4.15.tar.gz) = 8b29c1cef4c34e9c2e16bbaf50aa10574eb63c9692ab248849a0cc476acc637794c3be27df0663a27ee4ced28c6d80bb0e11ac00fcd6d0a8babfc835b78fce59
+Size (mongodb-src-r3.4.15.tar.gz) = 40063153 bytes
+SHA1 (patch-SConstruct) = a06ddba71aecedf2ea796b95fdb1b860f2912520
 SHA1 (patch-debian_mongod.conf) = e5074b5f7ad50560b99d652feab58da764ba542c
 SHA1 (patch-src_mongo_base_initializer.h) = add32c5940c922a98122d0e6883eb3ad52dc25c5
-SHA1 (patch-src_mongo_db_dbwebserver.cpp) = 1e7bb9588930742839d2bc9e26b33751a64f98c7
-SHA1 (patch-src_mongo_db_fts_unicode_string.cpp) = 98c5b1b39c07190f08ec9f22ec3002b0a803f72f
 SHA1 (patch-src_mongo_db_matcher_expression__leaf.cpp) = 52064034fabb5de63eccf87ddd140303c54f0312
 SHA1 (patch-src_mongo_db_repl_isself.c) = 82321c918b91ce1a68ce79c14589126aca6baf96
 SHA1 (patch-src_mongo_db_repl_master__slave.cpp) = 2f37f0819a2b2743df01f6b6ab0b3013b3b7d726
+SHA1 (patch-src_mongo_db_repl_oplog_fetcher.cpp) = 4b8eaad0b030a19eec6fdde14370928209652425
 SHA1 (patch-src_mongo_installer_msi_SConscript) = 78424fa10f90470dd941b900ef8fd131d28f6e65
 SHA1 (patch-src_mongo_platform_random.cpp) = 59c31e55fc2dc5a2b82b8f16dacf8736d8354cdb
 SHA1 (patch-src_mongo_platform_stack__locator__dragonfly.cpp) = fb885c491e4de1cfbc2875620d854af726e5b45f
@@ -19,7 +18,6 @@ SHA1 (patch-src_mongo_platform_stack__locator__netbsd.cpp) = 3b09e86b2401555b6ab
 SHA1 (patch-src_mongo_shell_bench.cpp) = c0fd15347d35e37daf87b642148215dee3ab7220
 SHA1 (patch-src_mongo_shell_linenoise__utf8.h) = f975925f56125d48b5124894fa1adf1382a634d2
 SHA1 (patch-src_mongo_util_intrusive__counter.h) = 9f1af59e1bc86e33bf183a6dda1737007afc7a18
-SHA1 (patch-src_mongo_util_net_miniwebserver.cpp) = 3715e826b8d03793066a84b2c1680c32c6ee6368
 SHA1 (patch-src_mongo_util_processinfo__dragonfly.cpp) = 62c236ce820dfe81f45625b15e022cca0f2c10ee
 SHA1 (patch-src_mongo_util_processinfo__netbsd.cpp) = 6eabe5ffec4168bb9ba8a58b7d742772d38b4714
 SHA1 (patch-src_third__party_IntelRDFPMathLib20U1_LIBRARY_float128_dpml__exception.c) = ef3b260e8a49227cbbabf427500b7c70bce15083
diff --git a/databases/mongodb/patches/patch-SConstruct b/databases/mongodb/patches/patch-SConstruct
index 5ee02944c46..9b36a078834 100644
--- a/databases/mongodb/patches/patch-SConstruct
+++ b/databases/mongodb/patches/patch-SConstruct
@@ -3,9 +3,9 @@ $NetBSD: patch-SConstruct,v 1.7 2017/10/08 22:17:06 tnn Exp $
 Add support for NetBSD/Dragonfly, fix locations.
 Respect LDFLAGS and CXXFLAGS
 
---- SConstruct.orig	2017-04-20 21:43:42.000000000 +0000
-+++ SConstruct
-@@ -30,7 +30,7 @@ EnsureSConsVersion( 2, 3, 0 )
+--- SConstruct.orig	2018-05-05 07:45:47.000000000 +1000
++++ SConstruct	2018-06-16 22:41:29.667659834 +1000
+@@ -30,7 +30,7 @@
  def print_build_failures():
      from SCons.Script import GetBuildFailures
      for bf in GetBuildFailures():
@@ -14,7 +14,7 @@ Respect LDFLAGS and CXXFLAGS
  atexit.register(print_build_failures)
  
  def versiontuple(v):
-@@ -49,8 +49,12 @@ def get_running_os_name():
+@@ -49,8 +49,12 @@
      running_os = os.sys.platform
      if running_os.startswith('linux'):
          running_os = 'linux'
@@ -27,7 +27,7 @@ Respect LDFLAGS and CXXFLAGS
      elif running_os.startswith('openbsd'):
          running_os = 'openbsd'
      elif running_os == 'sunos5':
-@@ -68,7 +72,7 @@ def env_get_os_name_wrapper(self):
+@@ -68,7 +72,7 @@
  
  def is_os_raw(target_os, os_list_to_check):
      okay = False
@@ -36,7 +36,7 @@ Respect LDFLAGS and CXXFLAGS
  
      for p in os_list_to_check:
          if p == 'posix' and target_os in posix_os_list:
-@@ -511,7 +515,7 @@ try:
+@@ -511,7 +515,7 @@
          version_data = json.load(version_fp)
  
      if 'version' not in version_data:
@@ -45,7 +45,7 @@ Respect LDFLAGS and CXXFLAGS
          Exit(1)
      if 'githash' not in version_data:
          version_data['githash'] = utils.getGitVersion()
-@@ -519,7 +523,7 @@ try:
+@@ -519,7 +523,7 @@
  except IOError as e:
      # If the file error wasn't because the file is missing, error out
      if e.errno != errno.ENOENT:
@@ -54,7 +54,7 @@ Respect LDFLAGS and CXXFLAGS
          Exit(1)
  
      version_data = {
-@@ -528,7 +532,7 @@ except IOError as e:
+@@ -528,7 +532,7 @@
      }
  
  except ValueError as e:
@@ -63,7 +63,7 @@ Respect LDFLAGS and CXXFLAGS
      Exit(1)
  
  # Setup the command-line variables
-@@ -598,7 +602,7 @@ def variable_distsrc_converter(val):
+@@ -598,7 +602,7 @@
  
  variables_files = variable_shlex_converter(get_option('variables-files'))
  for file in variables_files:
@@ -72,7 +72,7 @@ Respect LDFLAGS and CXXFLAGS
  
  env_vars = Variables(
      files=variables_files,
-@@ -892,6 +896,7 @@ envDict = dict(BUILD_ROOT=buildDir,
+@@ -899,6 +903,7 @@
                 INSTALL_DIR=installDir,
                 CONFIG_HEADER_DEFINES={},
                 LIBDEPS_TAG_EXPANSIONS=[],
@@ -80,7 +80,7 @@ Respect LDFLAGS and CXXFLAGS
                 )
  
  env = Environment(variables=env_vars, **envDict)
-@@ -901,12 +906,12 @@ env.AddMethod(env_os_is_wrapper, 'Target
+@@ -908,12 +913,12 @@
  env.AddMethod(env_get_os_name_wrapper, 'GetTargetOSName')
  
  def fatal_error(env, msg, *args):
@@ -96,7 +96,7 @@ Respect LDFLAGS and CXXFLAGS
  
      Exit(1)
  
-@@ -926,7 +931,7 @@ else:
+@@ -933,7 +938,7 @@
  env.AddMethod(lambda env: env['VERBOSE'], 'Verbose')
  
  if has_option('variables-help'):
@@ -105,7 +105,7 @@ Respect LDFLAGS and CXXFLAGS
      Exit(0)
  
  unknown_vars = env_vars.UnknownVariables()
-@@ -1029,7 +1034,9 @@ def CheckForProcessor(context, which_arc
+@@ -1036,7 +1041,9 @@
  os_macros = {
      "windows": "_WIN32",
      "solaris": "__sun",
@@ -115,7 +115,7 @@ Respect LDFLAGS and CXXFLAGS
      "openbsd": "__OpenBSD__",
      "osx": "__APPLE__",
      "linux": "__linux__",
-@@ -1124,7 +1131,7 @@ else:
+@@ -1131,7 +1138,7 @@
      env['TARGET_ARCH'] = detected_processor
  
  if env['TARGET_OS'] not in os_macros:
@@ -124,7 +124,7 @@ Respect LDFLAGS and CXXFLAGS
  elif not detectConf.CheckForOS(env['TARGET_OS']):
      env.ConfError("TARGET_OS ({0}) is not supported by compiler", env['TARGET_OS'])
  
-@@ -1360,7 +1367,7 @@ elif env['_LIBDEPS'] == '$_LIBDEPS_LIBS'
+@@ -1367,7 +1374,7 @@
  
  libdeps.setup_environment(env, emitting_shared=(link_model.startswith("dynamic")))
  
@@ -133,13 +133,13 @@ Respect LDFLAGS and CXXFLAGS
      env['LINK_LIBGROUP_START'] = '-Wl,--start-group'
      env['LINK_LIBGROUP_END'] = '-Wl,--end-group'
      env['LINK_WHOLE_ARCHIVE_START'] = '-Wl,--whole-archive'
-@@ -1388,10 +1395,24 @@ if env.TargetOSIs('linux'):
+@@ -1395,10 +1402,24 @@
  elif env.TargetOSIs('solaris'):
       env.Append( LIBS=["socket","resolv","lgrp"] )
  
 +elif os.sys.platform.startswith( "dragonfly" ):
-+    env.Append( CPPPATH=[ "@PREFIX@/include" ] )
-+    env.Append( LIBPATH=[ "@PREFIX@/lib" ] )
++    env.Append( CPPPATH=[ "/usr/pkg/include" ] )
++    env.Append( LIBPATH=[ "/usr/pkg/lib" ] )
 +    env.Append( LIBS=[ "m" ] )
 +    env.Append( LIBS=[ "kvm" ] )
 +    env.Append( CPPDEFINES=[ "__dragonfly__" ] )
@@ -149,8 +149,8 @@ Respect LDFLAGS and CXXFLAGS
      env.Append( CCFLAGS=[ "-fno-omit-frame-pointer" ] )
  
 +elif os.sys.platform.startswith( "netbsd" ):
-+    env.Append( CPPPATH=[ "@PREFIX@/include" ] )
-+    env.Append( LIBPATH=[ "@PREFIX@/lib" ] )
++    env.Append( CPPPATH=[ "/usr/pkg/include" ] )
++    env.Append( LIBPATH=[ "/usr/pkg/lib" ] )
 +    env.Append( LIBS=[ "m" ] )
 +    env.Append( LIBS=[ "kvm" ] )
 +    env.Append( CPPDEFINES=[ "__netbsd__" ] )
@@ -158,7 +158,7 @@ Respect LDFLAGS and CXXFLAGS
  elif env.TargetOSIs('openbsd'):
      env.Append( LIBS=[ "kvm" ] )
  
-@@ -1570,6 +1591,9 @@ if env.TargetOSIs('posix'):
+@@ -1577,6 +1598,9 @@
  
      env.Append( CXXFLAGS=["-Woverloaded-virtual"] )
      env.Append( LINKFLAGS=["-pthread"] )
@@ -168,7 +168,7 @@ Respect LDFLAGS and CXXFLAGS
  
      # SERVER-9761: Ensure early detection of missing symbols in dependent libraries at program
      # startup.
-@@ -2158,9 +2182,9 @@ def doConfigure(myenv):
+@@ -2165,9 +2189,9 @@
      if usingLibStdCxx:
          def CheckModernLibStdCxx(context):
              test_body = """
@@ -181,15 +181,7 @@ Respect LDFLAGS and CXXFLAGS
              """
  
              context.Message('Checking for libstdc++ 5.3.0 or better... ')
-@@ -2764,6 +2788,7 @@ def doConfigure(myenv):
-             # permit more than four parameters.
-             "BOOST_THREAD_DONT_PROVIDE_VARIADIC_THREAD",
-             "BOOST_SYSTEM_NO_DEPRECATED",
-+            "BOOST_OPTIONAL_USE_SINGLETON_DEFINITION_OF_NONE",
-         ]
-     )
- 
-@@ -2830,7 +2855,7 @@ def doConfigure(myenv):
+@@ -2866,7 +2890,7 @@
          myenv.ConfError("Couldn't find SASL header/libraries")
  
      # requires ports devel/libexecinfo to be installed
diff --git a/databases/mongodb/patches/patch-src_mongo_db_dbwebserver.cpp b/databases/mongodb/patches/patch-src_mongo_db_dbwebserver.cpp
deleted file mode 100644
index 99fc9bfed1a..00000000000
--- a/databases/mongodb/patches/patch-src_mongo_db_dbwebserver.cpp
+++ /dev/null
@@ -1,20 +0,0 @@
-$NetBSD: patch-src_mongo_db_dbwebserver.cpp,v 1.1 2017/07/11 19:35:51 joerg Exp $
-
---- src/mongo/db/dbwebserver.cpp.orig	2017-07-11 17:07:27.098292902 +0000
-+++ src/mongo/db/dbwebserver.cpp
-@@ -35,6 +35,7 @@
- 
- #include "mongo/db/dbwebserver.h"
- 
-+#include <string>
- #include <pcrecpp.h>
- 
- #include "mongo/base/init.h"
-@@ -67,6 +68,7 @@ namespace mongo {
- using std::map;
- using std::stringstream;
- using std::vector;
-+using std::string;
- 
- using namespace html;
- 
diff --git a/databases/mongodb/patches/patch-src_mongo_db_fts_unicode_string.cpp b/databases/mongodb/patches/patch-src_mongo_db_fts_unicode_string.cpp
deleted file mode 100644
index 076c8ba5090..00000000000
--- a/databases/mongodb/patches/patch-src_mongo_db_fts_unicode_string.cpp
+++ /dev/null
@@ -1,15 +0,0 @@
-$NetBSD: patch-src_mongo_db_fts_unicode_string.cpp,v 1.1 2016/10/10 13:15:40 ryoon Exp $
-
-* Fix build with boost 1.62.0
-
---- src/mongo/db/fts/unicode/string.cpp.orig	2016-09-26 12:10:04.000000000 +0000
-+++ src/mongo/db/fts/unicode/string.cpp
-@@ -274,7 +274,7 @@ bool String::substrMatch(const std::stri
- 
-     // Case sensitive and diacritic sensitive.
-     return boost::algorithm::boyer_moore_search(
--               haystack.begin(), haystack.end(), needle.begin(), needle.end()) != haystack.end();
-+               haystack.begin(), haystack.end(), needle.begin(), needle.end()) != std::make_pair(haystack.end(), haystack.end());
- }
- 
- }  // namespace unicode
diff --git a/databases/mongodb/patches/patch-src_mongo_db_repl_oplog_fetcher.cpp b/databases/mongodb/patches/patch-src_mongo_db_repl_oplog_fetcher.cpp
new file mode 100644
index 00000000000..ee2a503ce15
--- /dev/null
+++ b/databases/mongodb/patches/patch-src_mongo_db_repl_oplog_fetcher.cpp
@@ -0,0 +1,11 @@
+--- src/mongo/db/repl/oplog_fetcher.cpp.orig	2017-04-21 07:43:42.000000000 +1000
++++ src/mongo/db/repl/oplog_fetcher.cpp	2018-06-14 13:18:13.129723347 +1000
+@@ -265,7 +265,7 @@
+         if (!metadataResult.isOK()) {
+             return metadataResult.getStatus();
+         }
+-        oqMetadata = boost::make_optional<rpc::OplogQueryMetadata>(metadataResult.getValue());
++        oqMetadata = boost::make_optional(metadataResult.getValue());
+     }
+     return oqMetadata;
+ }
diff --git a/databases/mongodb/patches/patch-src_mongo_util_net_miniwebserver.cpp b/databases/mongodb/patches/patch-src_mongo_util_net_miniwebserver.cpp
deleted file mode 100644
index 29a8c8d90ca..00000000000
--- a/databases/mongodb/patches/patch-src_mongo_util_net_miniwebserver.cpp
+++ /dev/null
@@ -1,20 +0,0 @@
-$NetBSD: patch-src_mongo_util_net_miniwebserver.cpp,v 1.1 2017/07/11 19:35:51 joerg Exp $
-
---- src/mongo/util/net/miniwebserver.cpp.orig	2017-07-11 17:42:54.304511569 +0000
-+++ src/mongo/util/net/miniwebserver.cpp
-@@ -33,6 +33,7 @@
- 
- #include "mongo/util/net/miniwebserver.h"
- 
-+#include <string>
- #include <pcrecpp.h>
- 
- #include "mongo/config.h"
-@@ -45,6 +46,7 @@
- namespace mongo {
- 
- using std::shared_ptr;
-+using std::string;
- using std::stringstream;
- using std::vector;
- 


Home | Main Index | Thread Index | Old Index