Add blackbox test for cross compilation

This commit is contained in:
Jeremie Dimino 2017-12-21 20:00:29 +08:00 committed by Rudi Grinberg
parent ce567be675
commit f68c1dd042
10 changed files with 64 additions and 0 deletions

View File

@ -162,3 +162,10 @@
(action
(chdir test-cases/c-stubs
(setenv JBUILDER ${bin:jbuilder} (run ${exe:cram.exe} run.t))))))
(alias
((name runtest)
(deps ((files_recursively_in test-cases/cross-compilation)))
(action
(chdir test-cases/cross-compilation
(setenv JBUILDER ${bin:jbuilder} (run ${exe:cram.exe} run.t))))))

View File

@ -0,0 +1 @@
let () = Printf.printf "%d\n" P.x

View File

@ -0,0 +1,6 @@
(jbuild_version 1)
(executable
((name blah)
(public_name blah)
(libraries (p))))

View File

@ -0,0 +1,3 @@
(jbuild_version 1)
(rule (with-stdout-to file (run ./bin/blah.exe)))

View File

@ -0,0 +1,5 @@
(jbuild_version 1)
(library
((name p)
(public_name p)))

View File

@ -0,0 +1 @@
let x = 42

View File

@ -0,0 +1,41 @@
$ env OCAMLFIND_CONF=$PWD/etc/findlib.conf $JBUILDER build --root . -j1 -x foo file @install
ocamldep bin/blah.depends.ocamldep-output [default.foo]
ocamldep lib/p.depends.ocamldep-output [default.foo]
ocamldep bin/blah.depends.ocamldep-output
ocamlc lib/p.{cmi,cmo,cmt} [default.foo]
ocamldep lib/p.depends.ocamldep-output
ocamlopt lib/p.{cmx,o} [default.foo]
ocamlc bin/blah.{cmi,cmo,cmt} [default.foo]
ocamlc lib/p.cma [default.foo]
ocamlc lib/p.{cmi,cmo,cmt}
ocamlopt lib/p.{a,cmxa} [default.foo]
ocamlopt bin/blah.{cmx,o} [default.foo]
ocamlc bin/blah.{cmi,cmo,cmt}
ocamlopt lib/p.{cmx,o}
ocamlopt lib/p.cmxs [default.foo]
ocamlopt bin/blah.exe [default.foo]
ocamlopt bin/blah.{cmx,o}
ocamlopt lib/p.{a,cmxa}
ocamlopt bin/blah.exe
blah file [default.foo]
blah file
$ cat _build/default.foo/file
42
$ ls *.install
p-foo.install
$ cat p-foo.install
lib: [
"_build/install/default.foo/lib/p/META" {"../../foo-sysroot/lib/p/META"}
"_build/install/default.foo/lib/p/opam" {"../../foo-sysroot/lib/p/opam"}
"_build/install/default.foo/lib/p/p.cmi" {"../../foo-sysroot/lib/p/p.cmi"}
"_build/install/default.foo/lib/p/p.cmx" {"../../foo-sysroot/lib/p/p.cmx"}
"_build/install/default.foo/lib/p/p.cmt" {"../../foo-sysroot/lib/p/p.cmt"}
"_build/install/default.foo/lib/p/p.ml" {"../../foo-sysroot/lib/p/p.ml"}
"_build/install/default.foo/lib/p/p.cma" {"../../foo-sysroot/lib/p/p.cma"}
"_build/install/default.foo/lib/p/p.cmxa" {"../../foo-sysroot/lib/p/p.cmxa"}
"_build/install/default.foo/lib/p/p.a" {"../../foo-sysroot/lib/p/p.a"}
"_build/install/default.foo/lib/p/p.cmxs" {"../../foo-sysroot/lib/p/p.cmxs"}
]
bin: [
"_build/install/default.foo/bin/blah" {"../foo-sysroot/bin/blah"}
]