Difference between revisions of "Autobuild"

From Second Life Wiki
Jump to navigation Jump to search
m
Line 1: Line 1:
* [[Autobuild Quick Start]]
Autobuild is an in-house framework for maintaining and building libraries.  It acts as director providing a common interface to build and package libraries, but it is not a build system like make or cmake.  You will still need platform specific make, cmake, or project files to actually configure and build your library.  Autobuild will, however, allow you invoke these commands and package the product with a common interface. (''for Linden old hands: Autobuild is designed as a replacement for the old [https://svn.lindenlab.com/svn/lindenlib/trunk lindenlib] policies, doing the right thing so you don't have to.'')
* [[Autobuild How To]]
* [[Autobuild Class Model]]
* [[Autobuild Lexicon]]
* [[Autobuild Package Layout]]
* [[Autobuild Package Examples]]


{{Warning|Linden Lab Autobuild is not the same as or derived from [http://josefsson.org/autobuild/ GNU Autobuild], but they are similar enough to cause confusion.}}
__TOC__
== Getting Autobuild ==
Autobuild is available as a Mercurial repository:
https://bitbucket.org/lindenlab/autobuild 
== Running Autobuild ==
You can either run the autobuild command directly from the "bin" directory in a working copy of that repository, or install it as a normal python package by running
python setup.py install
from the top level directory of the working copy.
== Autobuild Documentation ==
There is, alas, not a comprehensive command reference for Autobuild here (yet - ''volunteers?''), but there is built-in help.  Autobuild has several subcommands; for a list of the subcommands and the global options, run:
autobuild --help
There is also more detailed help and a list of subcommand-specific options by using the --help option with any subcommand:
autobuild ''subcommand'' --help
; [[Autobuild How To]]
: A tutorial introduction to using autobuild
; [[Autobuild Lexicon]]
: A list of terms and how they are used in the context of autobuild
; [[Autobuild Package Layout]]
: Describes the standard directory tree for packages managed with autobuild
; [[Autobuild Quick Start]]
: A basic walkthrough of how to add autobuild management to an existing software project
; [[Autobuild Class Model]]
: Describes the fundamental objects in the autobuild design and the relationships between them.
; [[Autobuild Package Examples]]
== Contributing to Autobuild ==
Autobuild is open source.  Improvements are most welcome.
* Discussion of and help with Autobuild are available on the [https://lists.secondlife.com/cgi-bin/mailman/listinfo/opensource-dev opensource-dev mailing list] and the [irc://irc.freenode.org/%23opensl #opensl channel on the freenode.org IRC network].
* Bug reports and feature suggestions are tracked in the [https://jira.secondlife.com/browse/OPEN Open Development project on jira.secondlife.com].
** Suggested patches for issues from the jira are reviewed on our [https://codereview.secondlife.com code review system] (see [[Code Review Tool|the documentation on how to use it]]).


[[Category:Autobuild]] [[Category:Open Source Portal]]
[[Category:Autobuild]] [[Category:Open Source Portal]]

Revision as of 05:28, 7 February 2011

Autobuild is an in-house framework for maintaining and building libraries. It acts as director providing a common interface to build and package libraries, but it is not a build system like make or cmake. You will still need platform specific make, cmake, or project files to actually configure and build your library. Autobuild will, however, allow you invoke these commands and package the product with a common interface. (for Linden old hands: Autobuild is designed as a replacement for the old lindenlib policies, doing the right thing so you don't have to.)

Warning!

Linden Lab Autobuild is not the same as or derived from GNU Autobuild, but they are similar enough to cause confusion.


Getting Autobuild

Autobuild is available as a Mercurial repository:

https://bitbucket.org/lindenlab/autobuild  

Running Autobuild

You can either run the autobuild command directly from the "bin" directory in a working copy of that repository, or install it as a normal python package by running

python setup.py install

from the top level directory of the working copy.

Autobuild Documentation

There is, alas, not a comprehensive command reference for Autobuild here (yet - volunteers?), but there is built-in help. Autobuild has several subcommands; for a list of the subcommands and the global options, run:

autobuild --help

There is also more detailed help and a list of subcommand-specific options by using the --help option with any subcommand:

autobuild subcommand --help
Autobuild How To
A tutorial introduction to using autobuild
Autobuild Lexicon
A list of terms and how they are used in the context of autobuild
Autobuild Package Layout
Describes the standard directory tree for packages managed with autobuild
Autobuild Quick Start
A basic walkthrough of how to add autobuild management to an existing software project
Autobuild Class Model
Describes the fundamental objects in the autobuild design and the relationships between them.
Autobuild Package Examples

Contributing to Autobuild

Autobuild is open source. Improvements are most welcome.