Copyright | Duncan Coutts 2009 |
---|---|
Maintainer | cabal-devel@haskell.org |
Portability | portable |
Safe Haskell | None |
Language | Haskell98 |
This module provides an library interface to the ar
program.
- createArLibArchive :: Verbosity -> LocalBuildInfo -> FilePath -> [FilePath] -> IO ()
- multiStageProgramInvocation :: ProgramInvocation -> (ProgramInvocation, ProgramInvocation, ProgramInvocation) -> [String] -> [ProgramInvocation]
Documentation
createArLibArchive :: Verbosity -> LocalBuildInfo -> FilePath -> [FilePath] -> IO () Source #
Call ar
to create a library archive from a bunch of object files.
multiStageProgramInvocation :: ProgramInvocation -> (ProgramInvocation, ProgramInvocation, ProgramInvocation) -> [String] -> [ProgramInvocation] Source #
Like the unix xargs program. Useful for when we've got very long command lines that might overflow an OS limit on command line length and so you need to invoke a command multiple times to get all the args in.
It takes four template invocations corresponding to the simple, initial, middle and last invocations. If the number of args given is small enough that we can get away with just a single invocation then the simple one is used:
$ simple args
If the number of args given means that we need to use multiple invocations then the templates for the initial, middle and last invocations are used:
$ initial args_0 $ middle args_1 $ middle args_2 ... $ final args_n