summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIgnacio Etcheverry <neikeq@users.noreply.github.com>2018-02-27 22:09:14 +0100
committerGitHub <noreply@github.com>2018-02-27 22:09:14 +0100
commit3d03bcd0636aacfe530c52fc1cdc32c2edffea04 (patch)
treef31680d26fc21e634fc43c17ad8488c9725ff625
parent47676cfa98ffc49a8165b1453bc35a9d261e9c44 (diff)
parentc094e90b2531b9ec5554dfc77c1fc613e02b87e5 (diff)
Merge pull request #17087 from hpvb/fix-finding-mscorlib
More reliably find mscorlib.dll on Linux
-rw-r--r--modules/mono/config.py7
1 files changed, 5 insertions, 2 deletions
diff --git a/modules/mono/config.py b/modules/mono/config.py
index 331449a13f..5591ed25bf 100644
--- a/modules/mono/config.py
+++ b/modules/mono/config.py
@@ -2,6 +2,7 @@
import imp
import os
import sys
+import subprocess
from SCons.Script import BoolVariable, Dir, Environment, PathVariable, Variables
@@ -150,6 +151,8 @@ def configure(env):
raise RuntimeError('Could not find mono shared library in: ' + mono_lib_path)
copy_file(mono_lib_path, 'bin', 'lib' + mono_so_name + sharedlib_ext)
+
+ copy_file(os.path.join(mono_lib_path, 'mono', '4.5'), assemblies_output_dir, 'mscorlib.dll')
else:
if mono_static:
raise RuntimeError('mono-static: Not supported with pkg-config. Specify a mono prefix manually')
@@ -158,6 +161,7 @@ def configure(env):
mono_lib_path = ''
mono_so_name = ''
+ mono_prefix = subprocess.check_output(["pkg-config", "mono-2", "--variable=prefix"]).strip()
tmpenv = Environment()
tmpenv.AppendENVPath('PKG_CONFIG_PATH', os.getenv('PKG_CONFIG_PATH'))
@@ -174,8 +178,7 @@ def configure(env):
raise RuntimeError('Could not find mono shared library in: ' + str(tmpenv['LIBPATH']))
copy_file(mono_lib_path, 'bin', 'lib' + mono_so_name + sharedlib_ext)
-
- copy_file(os.path.join(mono_lib_path, 'mono', '4.5'), assemblies_output_dir, 'mscorlib.dll')
+ copy_file(os.path.join(mono_prefix, 'lib', 'mono', '4.5'), assemblies_output_dir, 'mscorlib.dll')
env.Append(LINKFLAGS='-rdynamic')