github.com/sercand/please@v13.4.0+incompatible/README.md (about)

     1  # Please [![Build Status](https://circleci.com/gh/thought-machine/please.svg?style=shield)](https://circleci.com/gh/thought-machine/please) [![Build Status](https://api.cirrus-ci.com/github/thought-machine/please.svg)](https://cirrus-ci.com/github/thought-machine/please) [![Go Report Card](https://goreportcard.com/badge/github.com/thought-machine/please)](https://goreportcard.com/report/github.com/thought-machine/please) [![Gitter chat](https://badges.gitter.im/thought-machine/please.png)](https://gitter.im/please-build/Lobby)
     2  
     3  Please is a cross-language build system with an emphasis on
     4  high performance, extensibility and reproduceability.
     5  It supports a number of popular languages and can automate
     6  nearly any aspect of your build process.
     7  
     8  See http://please.build for more information.
     9  
    10  Currently Linux (tested on Ubuntu), OSX and FreeBSD are actively supported.
    11  
    12  
    13  Getting Started
    14  ===============
    15  
    16  The easiest way to install it on your own machine is to run:
    17  ```bash
    18  curl -s https://get.please.build | bash
    19  ```
    20  Or, if you prefer, grab one of the tarballs off our
    21  [releases page](https://github.com/thought-machine/please/releases)
    22  and extract it yourself; it typically lives in `~/.please`.
    23  
    24  Then you simply run `plz init` at the root of your project to set up
    25  a default config and you're good to start adding BUILD files.
    26  See [the website](http://please.build) for more instructions about
    27  how to write them.
    28  
    29  There are various commands available to interact with Please, the
    30  most obvious & useful ones initially are `plz build` and `plz test`
    31  to build things & run tests respectively. See `plz --help` or the
    32  [documentation](https://please.build/commands.html) for more comprehensive
    33  information.
    34  
    35  
    36  Building Please
    37  ===============
    38  
    39  To build Please yourself, run `./bootstrap.sh` in the repo root.
    40  This will set up the minimal environment needed to build Please,
    41  build it once manually and then rebuild it again using itself.
    42  You'll need to have Go 1.11+ installed to build Please although once
    43  built it can target any version from 1.5+ onwards.
    44  
    45  Optional dependencies for various tests include Python, Java, unittest++
    46  (`sudo apt-get install libunittest++-dev`), clang, gold and docker - none
    47  of those are required to build components so their tests will be excluded
    48  if they aren't available.
    49  
    50  If you'd rather not worry about installing the dependencies, we provide
    51  a prebuilt Docker image based on Ubuntu which is capable of building
    52  the whole thing for you:
    53  [`docker run -it thoughtmachine/please_ubuntu`](https://hub.docker.com/r/thoughtmachine/please_ubuntu)
    54  
    55  
    56  Documentation
    57  =============
    58  
    59   * [Quickstart](https://please.build/quickstart.html)
    60   * [Commands & command-line arguments](https://please.build/commands.html)
    61   * [Built-in rules](https://please.build/lexicon.html)
    62   * [BUILD language reference](https://please.build/language.html)
    63   * [Custom build rules](https://please.build/build_rules.html)
    64   * [Config reference](https://please.build/config.html)
    65   * [FAQ](https://please.build/faq.html)
    66  
    67  
    68  Status
    69  ======
    70  
    71  Please is released & we consider it stable; we follow [semver](https://semver.org)
    72  for releases, so major versions indicate potentially breaking changes to the
    73  BUILD language, command line or other behaviour. We try to minimise this where
    74  possible.
    75  
    76  We're very happy to accept pull requests & feature requests, and bugs if it's
    77  not working for you. We don't always have time for everything since Please is
    78  only part-time work for us, but we'll do our best.