-
Notifications
You must be signed in to change notification settings - Fork 0
/
Makefile.ci
34 lines (28 loc) · 908 Bytes
/
Makefile.ci
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
OPAM=$(HOME)/.local/bin/opam
OPAM_INIT=$(HOME)/.opam
OCAML=$(HOME)/.local/bin/ocaml
ocaml: $(OCAML)
$(OCAML):
mkdir -p /tmp/ocaml
cd /tmp/ocaml && \
wget http://caml.inria.fr/pub/distrib/ocaml-$(OCAML_VERSION)/ocaml-$(OCAML_VERSION).0.tar.gz && \
tar -xzf ocaml-$(OCAML_VERSION).0.tar.gz && \
cd ocaml-$(OCAML_VERSION).0 && \
./configure -prefix $(HOME)/.local && \
make world.opt && \
make install
opam: $(OPAM)
$(OPAM): $(OCAML)
mkdir -p /tmp/opam
cd /tmp/opam && \
wget https://github.com/ocaml/opam/releases/download/$(OPAM_VERSION)/opam-full-$(OPAM_VERSION).tar.gz && \
tar -xzf opam-full-$(OPAM_VERSION).tar.gz && \
cd opam-full-$(OPAM_VERSION) && \
./configure --prefix=$(HOME)/.local && \
make lib-ext && \
make all && \
make install
$(OPAM_INIT): $(OPAM)
$(OPAM) init --disable-sandboxing --no-setup
dependencies: $(OPAM_INIT)
$(OPAM) install --yes core dune logs lwt ounit