pantry/projects/ziglang.org/package.yml

52 lines
1.4 KiB
YAML
Raw Normal View History

distributable:
url: https://github.com/ziglang/zig/archive/refs/tags/{{version}}.tar.gz
strip-components: 1
versions:
github: ziglang/zig/tags
warnings:
- vendored
#FIXME proper system for re-using pre-built binaries
# we must require the vendor to provide signatures against a published public
# key. If they dont then really we should build ourselves or warn the user
# about the fact.
# The thing is, we trust the sources implicitly currently because signing is
# so rare. The only way wide spread signing will occur is via our protocol.
build:
dependencies:
curl.se: '*'
gnu.org/tar: '*'
tukaani.org/xz: '*'
script: |
case "{{hw.platform}}+{{hw.arch}}" in
darwin+aarch64) PLATFORM="macos-aarch64" ;;
darwin+x86-64) PLATFORM="macos-x86_64" ;;
linux+aarch64) PLATFORM="linux-aarch64" ;;
linux+x86-64) PLATFORM="linux-x86_64" ;;
esac
curl -Lfo zig.tar.xz "https://ziglang.org/download/{{ version }}/zig-${PLATFORM}-{{ version }}.tar.xz"
tar Jxf zig.tar.xz
mkdir -p "{{ prefix }}/bin"
mv zig-${PLATFORM}-{{ version }}/zig "{{ prefix }}/bin/zig"
mv zig-${PLATFORM}-{{ version }}/lib "{{ prefix }}"
test:
script: |
cp $FIXTURE hello.zig
zig build-exe hello.zig
./hello
fixture: |
const std = @import("std");
pub fn main() !void {
const stdout = std.io.getStdOut().writer();
try stdout.print("Hello, world!", .{});
}
provides:
- bin/zig