This PR refactors the building script. Further changes are expected, but to ease review and merges it is better to do in parts.
In future I hope to split out this library into Luna repository and use it in Manager and build scripts.
No functional changes intended.
In this PR:
Code has been split between executable and library parts. Library sources went to src/ subfolder.
Functions working in IO were generalized to use MonadIO constraint.
Replaced process with typed-process. Simplified implementation of Program module.
Modules Platform.Linux, Program and Utils got haddock-compatible documentation.
Make module has been splitted from CMake. They are separate programs after all.
This PR refactors the building script. Further changes are expected, but to ease review and merges it is better to do in parts. In future I hope to split out this library into Luna repository and use it in Manager and build scripts.
No functional changes intended.
In this PR:
IO
were generalized to useMonadIO
constraint.process
withtyped-process
. Simplified implementation ofProgram
module.Platform.Linux
,Program
andUtils
got haddock-compatible documentation.Make
module has been splitted fromCMake
. They are separate programs after all.