mirror of
https://github.com/ivabus/pantry
synced 2024-11-30 04:05:06 +03:00
62 lines
1.4 KiB
YAML
62 lines
1.4 KiB
YAML
|
distributable:
|
|||
|
url: https://static.rust-lang.org/dist/rustc-{{ version }}-src.tar.gz
|
|||
|
strip-components: 1
|
|||
|
|
|||
|
versions:
|
|||
|
github: rust-lang/rust
|
|||
|
strip: /^Rust /
|
|||
|
|
|||
|
# TODO cargo should be a separate package (probs)
|
|||
|
# NOTE that it does have independent versioning
|
|||
|
# TODO we should disable rust-up etc. if you want that, install rust with rust-up!
|
|||
|
|
|||
|
provides:
|
|||
|
- bin/cargo
|
|||
|
- bin/rustc
|
|||
|
- bin/rustdoc
|
|||
|
- bin/rust-lldb
|
|||
|
- bin/rust-gdb
|
|||
|
- bin/rust-gdbgui
|
|||
|
|
|||
|
options:
|
|||
|
- cargo # the rust package manager
|
|||
|
- rls
|
|||
|
- clippy
|
|||
|
- rustfmt
|
|||
|
- analysis
|
|||
|
- { name: rust-demangler, default: false }
|
|||
|
|
|||
|
dependencies:
|
|||
|
#FIXME strictly rustc only needs a linker
|
|||
|
tea.xyz/gx/cc: c99
|
|||
|
#TODO cargo needs git
|
|||
|
# this is a usage dependency, it's not required for cargo to run, just for some usages of cargo to run
|
|||
|
# so would be a little more strict than “recommended“
|
|||
|
#git-scm.com: 2
|
|||
|
|
|||
|
build:
|
|||
|
dependencies:
|
|||
|
tea.xyz/gx/make: '*' #FIXME surely we don’t need make AND ninja
|
|||
|
cmake.org: ^3.20
|
|||
|
ninja-build.org: ^1.10
|
|||
|
curl.se: '*'
|
|||
|
python.org: 3
|
|||
|
script: |-
|
|||
|
./configure $ARGS
|
|||
|
make install
|
|||
|
mv ./build/{{ hw.target }}/stage0/bin/cargo {{ prefix }}/bin/cargo
|
|||
|
#TODO ^^ build cargo properly
|
|||
|
env:
|
|||
|
ARGS:
|
|||
|
- --enable-vendor
|
|||
|
- --prefix={{ prefix }}
|
|||
|
- --enable-ninja
|
|||
|
- --enable-optimize
|
|||
|
test:
|
|||
|
script: |
|
|||
|
rustc $FIXTURE -o hello
|
|||
|
./hello
|
|||
|
fixture: |
|
|||
|
fn main() {
|
|||
|
println!("Hello World!");
|
|||
|
}
|