Setup.hs [1] depends on `rawSystemStdInOut` [2] that changed signature between 1.16 and 1.18.
[1 of 1] Compiling Main ( /tmp/GLFW-0.5.1.0-4035/GLFW-0.5.1.0/Setup.hs, /tmp/GLFW-0.5.1.0-4035/GLFW-0.5.1.0/dist/setup/Main.o )
/tmp/GLFW-0.5.1.0-4035/GLFW-0.5.1.0/Setup.hs:167:33:
Couldn't match expected type `IO (t0, t1, ExitCode)'
with actual type `Maybe (String, Bool)
-> Bool -> IO (String, String, ExitCode)'
In the return type of a call of `rawSystemStdInOut'
Probable cause: `rawSystemStdInOut' is applied to too few arguments
In a stmt of a 'do' block:
(out, err, exitCode) <- rawSystemStdInOut
verbosity "cc" (["-c", path, "-o", objPath] ++ flags) Nothing False
In the expression:
do { hClose outHandle;
hPutStr inHandle contents;
hClose inHandle;
(out, err, exitCode) <- rawSystemStdInOut
verbosity "cc" (["-c", path, ....] ++ flags) Nothing False;
.... }
/tmp/GLFW-0.5.1.0-4035/GLFW-0.5.1.0/Setup.hs:167:113:
Couldn't match expected type `Maybe [(String, String)]'
with actual type `Bool'
In the fifth argument of `rawSystemStdInOut', namely `False'
In a stmt of a 'do' block:
(out, err, exitCode) <- rawSystemStdInOut
verbosity "cc" (["-c", path, "-o", objPath] ++ flags) Nothing False
In the expression:
do { hClose outHandle;
hPutStr inHandle contents;
hClose inHandle;
(out, err, exitCode) <- rawSystemStdInOut
verbosity "cc" (["-c", path, ....] ++ flags) Nothing False;
.... }
Failed to install GLFW-0.5.1.0