Skip to content

Commit 461b3f9

Browse files
authored
Merge pull request #286 from djs55/update-mirage
ocaml: update dependencies and harden the notification loop
2 parents 79c6a4d + 0991dc7 commit 461b3f9

File tree

390 files changed

+74
-5856
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

390 files changed

+74
-5856
lines changed

.circleci/config.yml

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,7 @@ jobs:
77
# OPAM seems to be quite unhappy without $TERM and Circle doesn't seem to set one.
88
TERM: vt100
99
MACOSX_DEPLOYMENT_TARGET: "10.11"
10-
OPAM_REPO: repo/darwin
11-
OPAM_COMP: 4.07.0
10+
OPAM_COMP: 4.10.0
1211
OPAMVERBOSE: 1
1312
OPAMYES: 1
1413
HOMEBREW_NO_AUTO_UPDATE: 1
@@ -26,7 +25,10 @@ jobs:
2625
- run: test ! -s build/lib/mirage_block_ocaml.cmi || (echo "qcow libraries have been pre-installed in CI environment" && exit 1)
2726
- run: make test
2827
- run: brew install opam libev libffi pkg-config
29-
- run: opam init -v -n --comp="${OPAM_COMP}" --switch="${OPAM_COMP}" local "${OPAM_REPO}"
28+
- run: opam init -v -n --comp="${OPAM_COMP}" --switch="${OPAM_COMP}"
29+
# Needed until the packages are released in ocaml/opam-repository
30+
- run: opam pin add qcow.0.11.0 git://github.com/mirage/ocaml-qcow -n
31+
- run: opam pin add qcow-tool.0.11.0 git://github.com/mirage/ocaml-qcow -n
3032
- run: opam pin add hyperkit .
3133
- run: opam config exec -- make clean
3234
- run: opam config exec -- make all

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
/.opam
22
/build/
3+
_build
34
/src/include/xhyve/dtrace.h
45
/test/vmlinuz
56
/test/initrd

Makefile

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -105,9 +105,10 @@ OCAML_C_SRC := \
105105
src/lib/mirage_block_c.c
106106

107107
OCAML_WHERE := $(shell ocamlc -where)
108-
OCAML_PACKS := cstruct cstruct.lwt io-page io-page.unix uri mirage-block \
108+
OCAML_PACKS := cstruct cstruct-lwt io-page io-page.unix uri mirage-block \
109109
mirage-block-unix qcow unix threads lwt lwt.unix logs logs.fmt \
110-
mirage-unix prometheus-app conduit-lwt cohttp.lwt
110+
mirage-unix prometheus-app conduit-lwt cohttp-lwt-unix \
111+
unix-type-representations
111112
OCAML_LDLIBS := -L $(OCAML_WHERE) \
112113
$(shell ocamlfind query cstruct)/cstruct.a \
113114
$(shell ocamlfind query cstruct)/libcstruct_stubs.a \
@@ -116,12 +117,13 @@ OCAML_LDLIBS := -L $(OCAML_WHERE) \
116117
$(shell ocamlfind query io-page-unix)/libio_page_unix_stubs.a \
117118
$(shell ocamlfind query lwt.unix)/liblwt_unix_stubs.a \
118119
$(shell ocamlfind query lwt.unix)/lwt_unix.a \
119-
$(shell ocamlfind query lwt.unix)/lwt.a \
120+
$(shell ocamlfind query lwt)/lwt.a \
120121
$(shell ocamlfind query threads)/libthreadsnat.a \
121122
$(shell ocamlfind query mirage-block-unix)/libmirage_block_unix_stubs.a \
122123
$(shell ocamlfind query base)/libbase_stubs.a \
124+
$(shell ocamlfind query unix-type-representations)/libunix_type_representations_stubs.a \
123125
$(LIBEV) \
124-
-lasmrun -lbigarray -lunix
126+
-lasmrun -lunix
125127

126128
build/hyperkit.o: CFLAGS += -I$(OCAML_WHERE)
127129
endif
@@ -206,8 +208,8 @@ artifacts: build/LICENSE build/COMMIT
206208
build/LICENSE:
207209
@echo " GEN " $@
208210
@find src -type f | xargs awk '/^\/\*-/{p=1;print FILENAME ":";print;next} p&&/^.*\*\//{print;print "";p=0};p' > $@.tmp
209-
@opam config exec -- make -C repo list-licenses
210-
@cat repo/OCAML-LICENSES >> $@.tmp
211+
@opam config exec -- make -C ocaml list-licenses
212+
@cat ocaml/OCAML-LICENSES >> $@.tmp
211213
@mv $@.tmp $@
212214

213215
.PHONY: build/COMMIT

README.md

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -37,8 +37,10 @@ via `brew` and using `opam` to install the appropriate libraries:
3737

3838
$ brew install opam libev
3939
$ opam init
40-
$ eval `opam config env`
41-
$ opam install uri qcow.0.10.4 conduit.1.0.0 lwt.3.1.0 qcow-tool mirage-block-unix.2.9.0 conf-libev logs fmt mirage-unix prometheus-app
40+
$ eval `opam env`
41+
$ opam pin add qcow.0.11.0 git://github.com/mirage/ocaml-qcow -n
42+
$ opam pin add qcow-tool.0.11.0 git://github.com/mirage/ocaml-qcow -n
43+
$ opam install uri qcow.0.11.0 conduit.2.1.0 lwt.5.3.0 qcow-tool mirage-block-unix.2.12.0 conf-libev logs fmt mirage-unix prometheus-app
4244

4345
Notes:
4446

hyperkit.opam

Lines changed: 14 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,24 @@
1-
opam-version: "1.2"
1+
opam-version: "2.0"
2+
maintainer: "dave@recoil.org"
3+
authors: [ "see github source" ]
4+
license: "BSD 2 clause"
5+
homepage: "https://github.com/moby/hyperkit"
6+
dev-repo: "git+https://github.com/moby/hyperkit.git"
7+
bug-reports: "https://github.com/moby/hyperkit/issues"
8+
doc: "https://github.com/moby/hyperkit"
29

310
depends: [
411
"uri"
5-
"qcow" {= "0.10.4"}
12+
"qcow" {= "0.11.0"}
613
"qcow-tool"
7-
"sha" {= "1.10"}
8-
"conduit" {= "1.0.0"}
9-
"lwt" {= "3.1.0"}
10-
"mirage-block-unix" {= "2.9.0"}
14+
"sha"
15+
"conduit" {= "2.1.0"}
16+
"lwt" {= "5.3.0"}
17+
"mirage-block-unix" {= "2.12.0"}
1118
"conf-libev"
1219
"logs"
1320
"fmt"
1421
"mirage-unix"
1522
"prometheus-app"
1623
]
24+
synopsis: "Uses the Hypervisor.framework on macOS to run Linux VMs"

ocaml/.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
OCAML-LICENSES

ocaml/Makefile

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
.PHONY: list-licenses
2+
3+
list-licenses:
4+
mkdir -p licenses
5+
cd licenses && ../opam-licenses.sh hyperkit
6+
./list-licenses.sh licenses > OCAML-LICENSES

ocaml/licenses/.gitignore

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
*.files
2+
all-packages.txt
3+
dependency.*

ocaml/licenses/LICENSE.hyperkit.~dev.skip

Whitespace-only changes.

0 commit comments

Comments
 (0)