2023-02-13 12:20:09 +01:00
|
|
|
# Build tools
|
|
|
|
|
|
|
|
Vieter requires several tools to be developed, one of which being a specific
|
|
|
|
version of Vlang. This repository manages Dockerfiles & other packages for
|
|
|
|
these various tools.
|
2023-02-15 15:43:24 +01:00
|
|
|
|
2023-02-16 14:00:32 +01:00
|
|
|
## Vlang
|
2023-02-15 15:43:24 +01:00
|
|
|
|
2023-02-16 14:00:32 +01:00
|
|
|
### Arch package
|
2023-02-15 15:43:24 +01:00
|
|
|
|
2023-02-16 14:00:32 +01:00
|
|
|
The compiler is provided as an Arch package for both `x86_64` and `aarch64`.
|
|
|
|
This can be installed by adding the repo below to your `pacman.conf` and
|
|
|
|
installing the `vieter-vlang` package.
|
|
|
|
|
|
|
|
```toml
|
|
|
|
[vieter]
|
|
|
|
Server = https://arch.r8r.be/$repo/$arch
|
|
|
|
SigLevel = Optional
|
|
|
|
```
|
|
|
|
|
|
|
|
### Docker image
|
2023-02-15 15:43:24 +01:00
|
|
|
|
|
|
|
The Vlang Docker image takes too long to build on my CI, mostly because it
|
|
|
|
needs to be built for both arm64 & aarch64. It can be built by running the
|
|
|
|
following command in the `vlang` directory:
|
|
|
|
|
|
|
|
```sh
|
|
|
|
docker buildx build \
|
|
|
|
--platform linux/amd64,linux/arm64 \
|
2023-02-16 14:00:32 +01:00
|
|
|
-t 'git.rustybever.be/vieter-v/vlang:5d4c9dc9fc11bf8648541c934adb64f27cb94e37-alpine3.17' \
|
|
|
|
-t 'git.rustybever.be/vieter-v/vlang:latest' \
|
2023-02-15 15:43:24 +01:00
|
|
|
--push .
|
|
|
|
```
|
|
|
|
|
2023-02-16 14:00:32 +01:00
|
|
|
This build requires a working buildx environment.
|
|
|
|
|
2023-02-15 15:43:24 +01:00
|
|
|
The hash in the tag corresponds to the tag of the vlang repository.
|
2023-02-16 14:33:39 +01:00
|
|
|
|
|
|
|
## Arch
|
|
|
|
|
|
|
|
The Arch builder image is a soft fork of
|
|
|
|
[Menci/docker-archlinuxarm](https://github.com/Menci/docker-archlinuxarm), with
|
|
|
|
the following minimal changes:
|
|
|
|
|
|
|
|
* Enable LTO by default
|