Merge pull request #34318 from cumber/fix/mono-use-configure-flags

mono{48,50,54}: make sure configureFlags are used in configurePhase
This commit is contained in:
Matthew Justin Bauer 2018-04-09 14:25:38 -05:00 committed by GitHub
commit 0dd1bb1628
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -23,8 +23,6 @@ stdenv.mkDerivation rec {
# To overcome the bug https://bugzilla.novell.com/show_bug.cgi?id=644723
dontDisableStatic = true;
# In fact I think this line does not help at all to what I
# wanted to achieve: have mono to find libgdiplus automatically
configureFlags = [
"--x-includes=${libX11.dev}/include"
"--x-libraries=${libX11.out}/lib"
@ -38,7 +36,7 @@ stdenv.mkDerivation rec {
configurePhase = ''
patchShebangs ./
./autogen.sh --prefix $out
./autogen.sh --prefix $out $configureFlags
'';
# Attempt to fix this error when running "mcs --version":
@ -58,13 +56,13 @@ stdenv.mkDerivation rec {
substituteInPlace mono/mini/aot-compiler.c --replace "llvm_path = g_strdup (\"\")" "llvm_path = g_strdup (\"${llvm}/bin/\")"
'';
# Fix mono DLLMap so it can find libX11 and gdiplus to run winforms apps
# Fix mono DLLMap so it can find libX11 to run winforms apps
# libgdiplus is correctly handled by the --with-libgdiplus configure flag
# Other items in the DLLMap may need to be pointed to their store locations, I don't think this is exhaustive
# http://www.mono-project.com/Config_DllMap
postBuild = ''
find . -name 'config' -type f | xargs \
sed -i -e "s@libX11.so.6@${libX11.out}/lib/libX11.so.6@g" \
-e 's#[^"]*libgdiplus[^"]*"#${libgdiplus}/lib/libgdiplus.so"#' \
sed -i -e "s@libX11.so.6@${libX11.out}/lib/libX11.so.6@g"
'';
# Without this, any Mono application attempting to open an SSL connection will throw with