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