]> git.proxmox.com Git - cargo.git/blame - README.md
Auto merge of #7440 - alexcrichton:always-pipeline, r=ehuss
[cargo.git] / README.md
CommitLineData
2547b059
BN
1# Cargo
2
b4e86302
YK
3Cargo downloads your Rust project’s dependencies and compiles your project.
4
43ff35f7 5Learn more at https://doc.rust-lang.org/cargo/
b4e86302 6
41ecf3b2 7## Code Status
2547b059 8
cacc3dba 9[![Build Status](https://dev.azure.com/rust-lang/cargo/_apis/build/status/rust-lang.cargo?branchName=auto-cargo)](https://dev.azure.com/rust-lang/cargo/_build?definitionId=18)
41ecf3b2 10
ddffe606
MK
11Code documentation: https://docs.rs/cargo/
12
cfb69ad2 13## Installing Cargo
ffd985f1 14
cfb69ad2
AC
15Cargo is distributed by default with Rust, so if you've got `rustc` installed
16locally you probably also have `cargo` installed locally.
ffd985f1 17
cfb69ad2 18## Compiling from Source
41a4df26 19
5ef03758
AC
20Cargo requires the following tools and packages to build:
21
69740437 22* `git`
5ef03758 23* `python`
cfb69ad2 24* `curl` (on Unix)
cfb69ad2 25* OpenSSL headers (only for Unix, this is the `libssl-dev` package on ubuntu)
ea182b83 26* `cargo` and `rustc`
5ef03758 27
d261ffda 28First, you'll want to check out this repository
c1bbc721 29
d261ffda 30```
e2f81ec8 31git clone https://github.com/rust-lang/cargo
a39a331a 32cd cargo
d261ffda
AC
33```
34
ea182b83 35With `cargo` already installed, you can simply run:
d261ffda
AC
36
37```
38cargo build --release
39```
40
1e5f7063
J
41## Adding new subcommands to Cargo
42
cfb69ad2
AC
43Cargo is designed to be extensible with new subcommands without having to modify
44Cargo itself. See [the Wiki page][third-party-subcommands] for more details and
45a list of known community-developed subcommands.
1e5f7063
J
46
47[third-party-subcommands]: https://github.com/rust-lang/cargo/wiki/Third-party-cargo-subcommands
48
fe624014 49
c41a680e
CNG
50## Releases
51
c41a680e 52Cargo releases coincide with Rust releases.
aea965c2
EH
53High level release notes are available as part of [Rust's release notes][rel].
54Detailed release notes are available in this repo at [CHANGELOG.md].
c41a680e
CNG
55
56[rel]: https://github.com/rust-lang/rust/blob/master/RELEASES.md
aea965c2 57[CHANGELOG.md]: CHANGELOG.md
c41a680e 58
3970ccd2 59## Reporting issues
c1bbc721
AC
60
61Found a bug? We'd love to know about it!
62
43914c53 63Please report all issues on the GitHub [issue tracker][issues].
c1bbc721
AC
64
65[issues]: https://github.com/rust-lang/cargo/issues
66
d11a429d
AK
67## Contributing
68
2b2e726c 69See [CONTRIBUTING.md](CONTRIBUTING.md). You may also find the architecture
2547b059 70documentation useful ([ARCHITECTURE.md](ARCHITECTURE.md)).
d11a429d 71
c6fc2f58
AC
72## License
73
74Cargo is primarily distributed under the terms of both the MIT license
75and the Apache License (Version 2.0).
76
77See LICENSE-APACHE and LICENSE-MIT for details.
74705a05
AC
78
79### Third party software
80
81This product includes software developed by the OpenSSL Project
0c3851c0 82for use in the OpenSSL Toolkit (https://www.openssl.org/).
74705a05
AC
83
84In binary form, this product includes software that is licensed under the
85terms of the GNU General Public License, version 2, with a linking exception,
86which can be obtained from the [upstream repository][1].
87
2547b059
BN
88See LICENSE-THIRD-PARTY for details.
89
74705a05
AC
90[1]: https://github.com/libgit2/libgit2
91