<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><title>Distribution.Simple.Program.Ar</title><link href="ocean.css" rel="stylesheet" type="text/css" title="Ocean" /><script src="haddock-util.js" type="text/javascript"></script><script type="text/javascript">//<![CDATA[ window.onload = function () {pageLoad();setSynopsis("mini_Distribution-Simple-Program-Ar.html");}; //]]> </script></head><body><div id="package-header"><ul class="links" id="page-menu"><li><a href="index.html">Contents</a></li><li><a href="doc-index.html">Index</a></li></ul><p class="caption">Cabal-1.14.0: A framework for packaging Haskell software</p></div><div id="content"><div id="module-header"><table class="info"><tr><th>Portability</th><td>portable</td></tr><tr><th>Maintainer</th><td>cabal-devel@haskell.org</td></tr><tr><th>Safe Haskell</th><td>None</td></tr></table><p class="caption">Distribution.Simple.Program.Ar</p></div><div id="description"><p class="caption">Description</p><div class="doc"><p>This module provides an library interface to the <code>ar</code> program. </p></div></div><div id="synopsis"><p id="control.syn" class="caption expander" onclick="toggleSection('syn')">Synopsis</p><ul id="section.syn" class="hide" onclick="toggleSection('syn')"><li class="src short"><a href="#v:createArLibArchive">createArLibArchive</a> :: <a href="Distribution-Verbosity.html#t:Verbosity">Verbosity</a> -> <a href="Distribution-Simple-Program-Types.html#t:ConfiguredProgram">ConfiguredProgram</a> -> <a href="../base-4.5.1.0/System-IO.html#t:FilePath">FilePath</a> -> [<a href="../base-4.5.1.0/System-IO.html#t:FilePath">FilePath</a>] -> <a href="../base-4.5.1.0/System-IO.html#t:IO">IO</a> ()</li><li class="src short"><a href="#v:multiStageProgramInvocation">multiStageProgramInvocation</a> :: <a href="Distribution-Simple-Program-Run.html#t:ProgramInvocation">ProgramInvocation</a> -> (<a href="Distribution-Simple-Program-Run.html#t:ProgramInvocation">ProgramInvocation</a>, <a href="Distribution-Simple-Program-Run.html#t:ProgramInvocation">ProgramInvocation</a>, <a href="Distribution-Simple-Program-Run.html#t:ProgramInvocation">ProgramInvocation</a>) -> [<a href="../base-4.5.1.0/Data-String.html#t:String">String</a>] -> [<a href="Distribution-Simple-Program-Run.html#t:ProgramInvocation">ProgramInvocation</a>]</li></ul></div><div id="interface"><h1>Documentation</h1><div class="top"><p class="src"><a name="v:createArLibArchive" class="def">createArLibArchive</a> :: <a href="Distribution-Verbosity.html#t:Verbosity">Verbosity</a> -> <a href="Distribution-Simple-Program-Types.html#t:ConfiguredProgram">ConfiguredProgram</a> -> <a href="../base-4.5.1.0/System-IO.html#t:FilePath">FilePath</a> -> [<a href="../base-4.5.1.0/System-IO.html#t:FilePath">FilePath</a>] -> <a href="../base-4.5.1.0/System-IO.html#t:IO">IO</a> ()</p><div class="doc"><p>Call <code>ar</code> to create a library archive from a bunch of object files. </p></div></div><div class="top"><p class="src"><a name="v:multiStageProgramInvocation" class="def">multiStageProgramInvocation</a> :: <a href="Distribution-Simple-Program-Run.html#t:ProgramInvocation">ProgramInvocation</a> -> (<a href="Distribution-Simple-Program-Run.html#t:ProgramInvocation">ProgramInvocation</a>, <a href="Distribution-Simple-Program-Run.html#t:ProgramInvocation">ProgramInvocation</a>, <a href="Distribution-Simple-Program-Run.html#t:ProgramInvocation">ProgramInvocation</a>) -> [<a href="../base-4.5.1.0/Data-String.html#t:String">String</a>] -> [<a href="Distribution-Simple-Program-Run.html#t:ProgramInvocation">ProgramInvocation</a>]</p><div class="doc"><p>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. </p><p>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: </p><pre> $ simple args </pre><p>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: </p><pre> $ initial args_0 $ middle args_1 $ middle args_2 ... $ final args_n </pre></div></div></div></div><div id="footer"><p>Produced by <a href="http://www.haskell.org/haddock/">Haddock</a> version 2.11.0</p></div></body></html>