pkgsrc-Changes-HG archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
[pkgsrc/trunk]: pkgsrc/databases/mongodb3 fix build on arm64eb.
details: https://anonhg.NetBSD.org/pkgsrc/rev/f77028bc4b48
branches: trunk
changeset: 457099:f77028bc4b48
user: mrg <mrg%pkgsrc.org@localhost>
date: Tue Aug 17 04:09:48 2021 +0000
description:
fix build on arm64eb.
mongodb4, particularly the new one, needs a lot more work
(does not support netbsd/arm64el yet.)
diffstat:
databases/mongodb3/distinfo | 5 +-
databases/mongodb3/patches/patch-SConstruct | 53 +++++----
databases/mongodb3/patches/patch-src_third__party_IntelRDFPMathLib20U1_SConscript | 17 +++
3 files changed, 51 insertions(+), 24 deletions(-)
diffs (238 lines):
diff -r 22b6476a8583 -r f77028bc4b48 databases/mongodb3/distinfo
--- a/databases/mongodb3/distinfo Mon Aug 16 19:23:20 2021 +0000
+++ b/databases/mongodb3/distinfo Tue Aug 17 04:09:48 2021 +0000
@@ -1,10 +1,10 @@
-$NetBSD: distinfo,v 1.10 2021/04/09 14:30:09 tnn Exp $
+$NetBSD: distinfo,v 1.11 2021/08/17 04:09:48 mrg Exp $
SHA1 (mongodb-src-r3.4.24.tar.gz) = 86909b211998f0cbc8104df774aecb3d00a01763
RMD160 (mongodb-src-r3.4.24.tar.gz) = f7e4bfe1e2bd046f1a6c0f2695762076ffee5ae5
SHA512 (mongodb-src-r3.4.24.tar.gz) = c19d5215f514ad0c1bd33f17f9d79198e07657260c0a8399c9a84bbf274ec4f6e61a94b36bb132e93a46e96ee8b4d994a1bed70b2d26f906ffe8e78343394226
Size (mongodb-src-r3.4.24.tar.gz) = 40232175 bytes
-SHA1 (patch-SConstruct) = b6c2893d82d9b954c889d867ec909a05728af83d
+SHA1 (patch-SConstruct) = 1c5b49997571949143939ca04088d27d5601e53d
SHA1 (patch-src_mongo_base_initializer.h) = f82d58895251f7be08a09012ed7db64e3863a1fe
SHA1 (patch-src_mongo_db_matcher_expression__leaf.cpp) = 52064034fabb5de63eccf87ddd140303c54f0312
SHA1 (patch-src_mongo_db_query_collation_collator__interface__icu.h) = 43c94a970fb91d45441a206b5d774e9e7ea55ad5
@@ -22,6 +22,7 @@
SHA1 (patch-src_third__party_IntelRDFPMathLib20U1_LIBRARY_float128_dpml__exception.c) = ef3b260e8a49227cbbabf427500b7c70bce15083
SHA1 (patch-src_third__party_IntelRDFPMathLib20U1_LIBRARY_float128_op__system.h) = 39f6fba82e2870ee4a5d99785033621225a72a16
SHA1 (patch-src_third__party_IntelRDFPMathLib20U1_LIBRARY_src_bid__functions.h) = d3a85d3a3b33691466c65cdf51c56f221429aea9
+SHA1 (patch-src_third__party_IntelRDFPMathLib20U1_SConscript) = e87f507c4585050bed5ff47fb1a07113d5690fd5
SHA1 (patch-src_third__party_asio-master_asio_include_asio_detail_impl_kqueue__reactor.ipp) = b942286acd85ca8cf5fd03bc9f70a5dff0943243
SHA1 (patch-src_third__party_mozjs-38_platform_x86__64_netbsd_build_js-confdefs.h) = c2ad1041b5c1ff9fac9085d2a8963781f51873a8
SHA1 (patch-src_third__party_mozjs-38_platform_x86__64_netbsd_include_js-config.h) = 7ddbb4e3bf4126a1be2195acc82ff859e8130a01
diff -r 22b6476a8583 -r f77028bc4b48 databases/mongodb3/patches/patch-SConstruct
--- a/databases/mongodb3/patches/patch-SConstruct Mon Aug 16 19:23:20 2021 +0000
+++ b/databases/mongodb3/patches/patch-SConstruct Tue Aug 17 04:09:48 2021 +0000
@@ -1,14 +1,15 @@
-$NetBSD: patch-SConstruct,v 1.3 2019/07/10 17:45:58 adam Exp $
+$NetBSD: patch-SConstruct,v 1.4 2021/08/17 04:09:48 mrg Exp $
Add support for NetBSD/Dragonfly.
+Add support for aarch64 big-endian.
Fix locations.
Don't compile with debug info.
Don't mess with the linker.
Respect LDFLAGS and CXXFLAGS
---- SConstruct.orig 2019-05-21 17:07:37.000000000 +0000
-+++ SConstruct
-@@ -30,7 +30,7 @@ EnsureSConsVersion( 2, 3, 0 )
+--- SConstruct.orig 2020-01-08 08:30:41.000000000 -0800
++++ SConstruct 2021-04-24 20:15:17.493198495 -0700
+@@ -30,7 +30,7 @@
def print_build_failures():
from SCons.Script import GetBuildFailures
for bf in GetBuildFailures():
@@ -17,7 +18,7 @@
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'
@@ -30,7 +31,7 @@
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
@@ -39,7 +40,7 @@
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:
@@ -48,7 +49,7 @@
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:
@@ -57,7 +58,7 @@
Exit(1)
version_data = {
-@@ -528,7 +532,7 @@ except IOError as e:
+@@ -528,7 +532,7 @@
}
except ValueError as e:
@@ -66,7 +67,7 @@
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:
@@ -75,7 +76,7 @@
env_vars = Variables(
files=variables_files,
-@@ -899,6 +903,7 @@ envDict = dict(BUILD_ROOT=buildDir,
+@@ -899,6 +903,7 @@
INSTALL_DIR=installDir,
CONFIG_HEADER_DEFINES={},
LIBDEPS_TAG_EXPANSIONS=[],
@@ -83,7 +84,7 @@
)
env = Environment(variables=env_vars, **envDict)
-@@ -908,12 +913,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):
@@ -99,7 +100,7 @@
Exit(1)
-@@ -933,7 +938,7 @@ else:
+@@ -933,7 +938,7 @@
env.AddMethod(lambda env: env['VERBOSE'], 'Verbose')
if has_option('variables-help'):
@@ -108,7 +109,15 @@
Exit(0)
unknown_vars = env_vars.UnknownVariables()
-@@ -1036,7 +1041,9 @@ def CheckForProcessor(context, which_arc
+@@ -993,6 +998,7 @@
+ processor_macros = {
+ 'arm' : { 'endian': 'little', 'defines': ('__arm__',) },
+ 'aarch64' : { 'endian': 'little', 'defines': ('__arm64__', '__aarch64__')},
++ 'aarch64eb' : { 'endian': 'big', 'defines': ('__arm64__', '__aarch64__')},
+ 'i386' : { 'endian': 'little', 'defines': ('__i386', '_M_IX86')},
+ 'ppc64le' : { 'endian': 'little', 'defines': ('__powerpc64__',)},
+ 's390x' : { 'endian': 'big', 'defines': ('__s390x__',)},
+@@ -1036,7 +1042,9 @@
os_macros = {
"windows": "_WIN32",
"solaris": "__sun",
@@ -118,7 +127,7 @@
"openbsd": "__OpenBSD__",
"osx": "__APPLE__",
"linux": "__linux__",
-@@ -1131,7 +1138,7 @@ else:
+@@ -1131,7 +1139,7 @@
env['TARGET_ARCH'] = detected_processor
if env['TARGET_OS'] not in os_macros:
@@ -127,7 +136,7 @@
elif not detectConf.CheckForOS(env['TARGET_OS']):
env.ConfError("TARGET_OS ({0}) is not supported by compiler", env['TARGET_OS'])
-@@ -1367,7 +1374,7 @@ elif env['_LIBDEPS'] == '$_LIBDEPS_LIBS'
+@@ -1367,7 +1375,7 @@
libdeps.setup_environment(env, emitting_shared=(link_model.startswith("dynamic")))
@@ -136,7 +145,7 @@
env['LINK_LIBGROUP_START'] = '-Wl,--start-group'
env['LINK_LIBGROUP_END'] = '-Wl,--end-group'
env['LINK_WHOLE_ARCHIVE_START'] = '-Wl,--whole-archive'
-@@ -1395,10 +1402,24 @@ if env.TargetOSIs('linux'):
+@@ -1395,10 +1403,24 @@
elif env.TargetOSIs('solaris'):
env.Append( LIBS=["socket","resolv","lgrp"] )
@@ -161,7 +170,7 @@
elif env.TargetOSIs('openbsd'):
env.Append( LIBS=[ "kvm" ] )
-@@ -1564,7 +1585,6 @@ if env.TargetOSIs('posix'):
+@@ -1564,7 +1586,6 @@
# -Winvalid-pch Warn if a precompiled header (see Precompiled Headers) is found in the search path but can't be used.
env.Append( CCFLAGS=["-fno-omit-frame-pointer",
"-fno-strict-aliasing",
@@ -169,7 +178,7 @@
"-pthread",
"-Wall",
"-Wsign-compare",
-@@ -2165,9 +2188,9 @@ def doConfigure(myenv):
+@@ -2174,9 +2195,9 @@
if usingLibStdCxx:
def CheckModernLibStdCxx(context):
test_body = """
@@ -182,7 +191,7 @@
"""
context.Message('Checking for libstdc++ 5.3.0 or better... ')
-@@ -2375,7 +2398,7 @@ def doConfigure(myenv):
+@@ -2384,7 +2405,7 @@
#
myenv.Append( CCFLAGS=["/Zc:inline"])
@@ -191,7 +200,7 @@
# This tells clang/gcc to use the gold linker if it is available - we prefer the gold linker
# because it is much faster.
AddToLINKFLAGSIfSupported(myenv, '-fuse-ld=gold')
-@@ -2800,6 +2823,7 @@ def doConfigure(myenv):
+@@ -2809,6 +2830,7 @@
"BOOST_THREAD_DONT_PROVIDE_VARIADIC_THREAD",
"BOOST_SYSTEM_NO_DEPRECATED",
"BOOST_MATH_NO_LONG_DOUBLE_MATH_FUNCTIONS",
@@ -199,7 +208,7 @@
]
)
-@@ -2866,7 +2890,7 @@ def doConfigure(myenv):
+@@ -2875,7 +2897,7 @@
myenv.ConfError("Couldn't find SASL header/libraries")
# requires ports devel/libexecinfo to be installed
diff -r 22b6476a8583 -r f77028bc4b48 databases/mongodb3/patches/patch-src_third__party_IntelRDFPMathLib20U1_SConscript
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/databases/mongodb3/patches/patch-src_third__party_IntelRDFPMathLib20U1_SConscript Tue Aug 17 04:09:48 2021 +0000
@@ -0,0 +1,17 @@
+$NetBSD: patch-src_third__party_IntelRDFPMathLib20U1_SConscript,v 1.1 2021/08/17 04:09:48 mrg Exp $
+
+Add aarch64 big endian support.
+
+--- src/third_party/IntelRDFPMathLib20U1/SConscript.orig 2020-01-08 08:30:41.000000000 -0800
++++ src/third_party/IntelRDFPMathLib20U1/SConscript 2021-04-24 20:18:19.305122166 -0700
+@@ -304,6 +304,10 @@
+ elif processor == "aarch64":
+ cpp_defines['efi2'] = '1'
+ cpp_defines['EFI2'] = '1'
++elif processor == "aarch64eb":
++ cpp_defines['efi2'] = '1'
++ cpp_defines['EFI2'] = '1'
++ cpp_defines['BID_BIG_ENDIAN'] = '1'
+ # Using 64 bit little endian
+ elif processor == 'x86_64' or processor == 'ppc64le':
+ cpp_defines['efi2'] = '1'
Home |
Main Index |
Thread Index |
Old Index