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 # To overcome the bug https://bugzilla.novell.com/show_bug.cgi?id=644723
dontDisableStatic = true; 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 = [ configureFlags = [
"--x-includes=${libX11.dev}/include" "--x-includes=${libX11.dev}/include"
"--x-libraries=${libX11.out}/lib" "--x-libraries=${libX11.out}/lib"
@ -38,7 +36,7 @@ stdenv.mkDerivation rec {
configurePhase = '' configurePhase = ''
patchShebangs ./ patchShebangs ./
./autogen.sh --prefix $out ./autogen.sh --prefix $out $configureFlags
''; '';
# Attempt to fix this error when running "mcs --version": # 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/\")" 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 # 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 # http://www.mono-project.com/Config_DllMap
postBuild = '' postBuild = ''
find . -name 'config' -type f | xargs \ find . -name 'config' -type f | xargs \
sed -i -e "s@libX11.so.6@${libX11.out}/lib/libX11.so.6@g" \ sed -i -e "s@libX11.so.6@${libX11.out}/lib/libX11.so.6@g"
-e 's#[^"]*libgdiplus[^"]*"#${libgdiplus}/lib/libgdiplus.so"#' \
''; '';
# Without this, any Mono application attempting to open an SSL connection will throw with # Without this, any Mono application attempting to open an SSL connection will throw with