git.delta.rocks / jrsonnet / refs/commits / 6aae8b5863ce

difftreelog

release use cargo for non x64 architectures

Bruno Felipe Leal Delfino2021-06-03parent: #f4a2c24.patch.diff
in: master

6 files changed

modified.github/workflows/release.ymldiffbeforeafterboth
54 strategy:54 strategy:
55 matrix:55 matrix:
56 target:56 target:
57 # Tier 1
58 - aarch64-unknown-linux-gnu
59 - i686-pc-windows-gnu
60 - i686-pc-windows-msvc
61 - i686-unknown-linux-gnu
62 - x86_64-apple-darwin57 - x86_64-apple-darwin
63 - x86_64-pc-windows-gnu
64 - x86_64-pc-windows-msvc58 - x86_64-pc-windows-msvc
65 - x86_64-unknown-linux-gnu59 - x86_64-unknown-linux-gnu
66
67 # Other
68 - x86_64-unknown-linux-musl60 - x86_64-unknown-linux-musl
69 include:61 include:
70 - target: aarch64-unknown-linux-gnu
71 os: ubuntu-latest
72 bin: jrsonnet
73 name: jrsonnet-linux-gnu-aarch64
74 - target: i686-pc-windows-gnu
75 os: windows-latest
76 bin: jrsonnet.exe
77 name: jrsonnet-windows-gnu-i686.exe
78 - target: i686-pc-windows-msvc
79 os: windows-latest
80 bin: jrsonnet.exe
81 name: jrsonnet-windows-msvc-i686.exe
82 - target: i686-unknown-linux-gnu
83 os: ubuntu-latest
84 bin: jrsonnet
85 name: jrsonnet-linux-gnu-i686
86 - target: x86_64-apple-darwin62 - target: x86_64-apple-darwin
87 os: macOS-latest63 os: macOS-latest
88 bin: jrsonnet64 bin: jrsonnet
89 name: jrsonnet-darwin-amd6465 name: jrsonnet-darwin-amd64
90 - target: x86_64-pc-windows-gnu
91 os: windows-latest
92 bin: jrsonnet.exe
93 name: jrsonnet-windows-gnu-amd64.exe
94 - target: x86_64-pc-windows-msvc66 - target: x86_64-pc-windows-msvc
95 os: windows-latest67 os: windows-latest
96 bin: jrsonnet.exe68 bin: jrsonnet.exe
116 - name: Checkout87 - name: Checkout
117 uses: actions/checkout@v288 uses: actions/checkout@v2
118
119 - name: Linux x86 cross compiler
120 if: ${{ matrix.target == 'i686-unknown-linux-gnu' }}
121 run: sudo apt install gcc-multilib
122
123 - name: Windows x86 cross compiler
124 if: ${{ matrix.target == 'i686-pc-windows-gnu' }}
125 uses: egor-tensin/setup-mingw@v2
126 with:
127 platform: x86
128
129 - name: ARM cross compiler
130 if: ${{ matrix.target == 'aarch64-unknown-linux-gnu' }}
131 uses: actions-rs/cargo@v1
132 with:
133 command: install
134 args: cross
135
136 - name: ARM gcc
137 if: ${{ matrix.target == 'aarch64-unknown-linux-gnu' }}
138 run: sudo apt install gcc-aarch64-linux-gnu
139
140 - name: Run ARM build
141 if: ${{ matrix.target == 'aarch64-unknown-linux-gnu' }}
142 shell: bash
143 run: cross build --bin=jrsonnet --release --target ${{ matrix.target }}
144
145 - name: Run ARM strip
146 if: ${{ matrix.target == 'aarch64-unknown-linux-gnu' }}
147 shell: bash
148 run: aarch64-linux-gnu-strip target/${{ matrix.target }}/release/${{ matrix.bin }}
14989
150 - name: Run build90 - name: Run build
151 if: ${{ matrix.target != 'aarch64-unknown-linux-gnu' }}
152 uses: actions-rs/cargo@v191 uses: actions-rs/cargo@v1
153 with:92 with:
154 command: build93 command: build
155 args: --bin=jrsonnet --release --target ${{ matrix.target }}94 args: --bin=jrsonnet --release --target ${{ matrix.target }}
156
157 - name: Run strip
158 if: ${{ matrix.target != 'aarch64-unknown-linux-gnu' }}
159 shell: bash
160 run: strip target/${{ matrix.target }}/release/${{ matrix.bin }}
16195
162 - name: Package96 - name: Package
163 shell: bash97 shell: bash
164 run: |98 run: |
165 cd target/${{ matrix.target }}/release99 strip target/${{ matrix.target }}/release/${{ matrix.bin }}
100 cd target/${{ matrix.target }}/release
166101
167 cp ${{ matrix.bin }} ../../../${{ matrix.name }}102 cp ${{ matrix.bin }} ../../../${{ matrix.name }}
168 cd -103 cd -
169104
170 - name: Generate SHA-256105 - name: Generate SHA-256
171 run: shasum -a 256 ${{ matrix.name }} > ${{ matrix.name }}.sha256106 run: shasum -a 256 ${{ matrix.name }} > ${{ matrix.name }}.sha256
modifiedREADME.mddiffbeforeafterboth
1616
17In the end, it's always fun to implement something in Rust.17In the end, it's always fun to implement something in Rust.
1818
19## How to install?
20
21We build x64 binaries for Apple, Windows MSVC, and Linux GNU during the release process. If your system is one of those, you can check out the [latest release](https://github.com/CertainLach/jrsonnet/releases/latest) to get your pre-built binary. Otherwise, you'll need to have a rust toolchain and install the package through cargo with `cargo install jrsonnet`.
22
19## Compliance with the [specification](https://jsonnet.org/ref/spec.html)23## Compliance with the [specification](https://jsonnet.org/ref/spec.html)
2024
21- Passes all the original `examples` tests25- Passes all the original `examples` tests
modifiedcmds/jrsonnet/Cargo.tomldiffbeforeafterboth
5authors = ["Yaroslav Bolyukin <iam@lach.pw>"]5authors = ["Yaroslav Bolyukin <iam@lach.pw>"]
6license = "MIT"6license = "MIT"
7edition = "2018"7edition = "2018"
8publish = false
98
10[features]9[features]
11default = []10default = []
modifiedcrates/jrsonnet-cli/Cargo.tomldiffbeforeafterboth
5authors = ["Yaroslav Bolyukin <iam@lach.pw>"]5authors = ["Yaroslav Bolyukin <iam@lach.pw>"]
6license = "MIT"6license = "MIT"
7edition = "2018"7edition = "2018"
8publish = false
98
10[dependencies]9[dependencies]
11jrsonnet-evaluator = { path = "../../crates/jrsonnet-evaluator", version = "0.3.6", features = ["explaining-traces"] }10jrsonnet-evaluator = { path = "../../crates/jrsonnet-evaluator", version = "0.3.6", features = ["explaining-traces"] }
deletedcrates/jrsonnet-interner/.gitignorediffbeforeafterboth

no changes

modifiedcrates/jrsonnet-stdlib/Cargo.tomldiffbeforeafterboth
6license = "MIT"6license = "MIT"
7edition = "2018"7edition = "2018"
8
9[features]
10
11[dependencies]
128