-
Notifications
You must be signed in to change notification settings - Fork 3
/
Earthfile
119 lines (115 loc) · 2.83 KB
/
Earthfile
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
VERSION 0.8
IMPORT ./c
IMPORT ./clojure
IMPORT ./coq
IMPORT ./cpp
IMPORT ./crystal
IMPORT ./csharp
IMPORT ./erlang
IMPORT ./go
IMPORT ./haskell
IMPORT ./idris
IMPORT ./java
IMPORT ./javascript
IMPORT ./jq
IMPORT ./kotlin
IMPORT ./lolcode
IMPORT ./lua
IMPORT ./ocaml
IMPORT ./rust
IMPORT ./typescript
build:
FROM scratch
BUILD c+build
BUILD clojure+build
BUILD coq+build
BUILD cpp+build
BUILD crystal+build
BUILD csharp+build
BUILD erlang+build
BUILD go+build
BUILD haskell+build
BUILD idris+build
BUILD java+build
BUILD javascript+build
BUILD jq+build
BUILD kotlin+build
BUILD lolcode+build
BUILD lua+build
BUILD ocaml+build
BUILD rust+build
BUILD typescript+build
WORKDIR /corpus
COPY c+build/corpus/c c
COPY clojure+build/corpus/clojure clojure
COPY coq+build/corpus/coq coq
COPY cpp+build/corpus/cpp cpp
COPY crystal+build/corpus/crystal crystal
COPY csharp+build/corpus/csharp csharp
COPY erlang+build/corpus/erlang erlang
COPY go+build/corpus/go go
COPY haskell+build/corpus/haskell haskell
COPY idris+build/corpus/idris idris
COPY java+build/corpus/java java
COPY javascript+build/corpus/javascript javascript
COPY jq+build/corpus/jq jq
COPY kotlin+build/corpus/kotlin kotlin
COPY lolcode+build/corpus/lolcode lolcode
COPY lua+build/corpus/lua lua
COPY ocaml+build/corpus/ocaml ocaml
COPY rust+build/corpus/rust rust
COPY typescript+build/corpus/rust rust
SAVE ARTIFACT /corpus /corpus
# Dependencies:
# c: -
# clojure: jre-21
# coq: -
# cpp: -
# cpp/buyoh-nospace: ruby
# crystal: -
# csharp: mono-runtime
# csharp/nicolasff-spacesharp: mono-runtime libmono-compilerservices-symbolwriter4.0-cil
# erlang: erlang
# go: -
# haskell: TODO
# idris: ?
# java: jre-21
# javascript: node
# jq: jq bash
# kotlin: jre-21
# lolcode: bash readline-dev
# lua: lua5.4
# ocaml: -
# rust: -
# typescript: TODO
docker:
FROM ubuntu:24.04
RUN apt-get update && \
DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends \
mono-runtime libmono-compilerservices-symbolwriter4.0-cil \
&& \
rm -rf /var/lib/apt/lists/*
WORKDIR /corpus
COPY +build/ /
SAVE IMAGE wspace-corpus
docker-all:
BUILD +docker
BUILD c+docker-all
BUILD clojure+docker-all
BUILD coq+docker-all
BUILD cpp+docker-all
BUILD crystal+docker-all
BUILD csharp+docker-all
BUILD erlang+docker-all
BUILD go+docker-all
BUILD haskell+docker-all
BUILD idris+docker-all
BUILD java+docker-all
BUILD javascript+docker-all
BUILD jq+docker-all
BUILD kotlin+docker-all
BUILD lolcode+docker-all
BUILD lua+docker-all
BUILD ocaml+docker-all
BUILD rust+docker-all
BUILD typescript+docker-all