From ee42ca5301c1cbab59a8b57fb720bfe6f9631cd6 Mon Sep 17 00:00:00 2001 From: Rudi Grinberg Date: Mon, 12 Feb 2018 19:27:51 +0800 Subject: [PATCH] Add test showing that private libs with same names don't get built 2 private libs with equivalent names but living in public names will not be built as part of @install even if they have different public names --- test/blackbox-tests/jbuild | 10 ++++++++++ .../test-cases/installable-dup-private-libs/a1/a.ml | 0 .../test-cases/installable-dup-private-libs/a1/a1.opam | 0 .../test-cases/installable-dup-private-libs/a1/jbuild | 3 +++ .../test-cases/installable-dup-private-libs/a2/a.ml | 0 .../test-cases/installable-dup-private-libs/a2/a2.opam | 0 .../test-cases/installable-dup-private-libs/a2/jbuild | 3 +++ .../test-cases/installable-dup-private-libs/run.t | 7 +++++++ 8 files changed, 23 insertions(+) create mode 100644 test/blackbox-tests/test-cases/installable-dup-private-libs/a1/a.ml create mode 100644 test/blackbox-tests/test-cases/installable-dup-private-libs/a1/a1.opam create mode 100644 test/blackbox-tests/test-cases/installable-dup-private-libs/a1/jbuild create mode 100644 test/blackbox-tests/test-cases/installable-dup-private-libs/a2/a.ml create mode 100644 test/blackbox-tests/test-cases/installable-dup-private-libs/a2/a2.opam create mode 100644 test/blackbox-tests/test-cases/installable-dup-private-libs/a2/jbuild create mode 100644 test/blackbox-tests/test-cases/installable-dup-private-libs/run.t diff --git a/test/blackbox-tests/jbuild b/test/blackbox-tests/jbuild index 9604516e..43cee20d 100644 --- a/test/blackbox-tests/jbuild +++ b/test/blackbox-tests/jbuild @@ -297,3 +297,13 @@ (progn (run ${exe:cram.exe} run.t) (diff? run.t run.t.corrected))))))) + +(alias + ((name runtest) + (deps ((files_recursively_in test-cases/installable-dup-private-libs))) + (action + (chdir test-cases/installable-dup-private-libs + (setenv JBUILDER ${bin:jbuilder} + (progn + (run ${exe:cram.exe} run.t) + (diff? run.t run.t.corrected))))))) diff --git a/test/blackbox-tests/test-cases/installable-dup-private-libs/a1/a.ml b/test/blackbox-tests/test-cases/installable-dup-private-libs/a1/a.ml new file mode 100644 index 00000000..e69de29b diff --git a/test/blackbox-tests/test-cases/installable-dup-private-libs/a1/a1.opam b/test/blackbox-tests/test-cases/installable-dup-private-libs/a1/a1.opam new file mode 100644 index 00000000..e69de29b diff --git a/test/blackbox-tests/test-cases/installable-dup-private-libs/a1/jbuild b/test/blackbox-tests/test-cases/installable-dup-private-libs/a1/jbuild new file mode 100644 index 00000000..5870c1f0 --- /dev/null +++ b/test/blackbox-tests/test-cases/installable-dup-private-libs/a1/jbuild @@ -0,0 +1,3 @@ +(library + ((name a) + (public_name a1))) diff --git a/test/blackbox-tests/test-cases/installable-dup-private-libs/a2/a.ml b/test/blackbox-tests/test-cases/installable-dup-private-libs/a2/a.ml new file mode 100644 index 00000000..e69de29b diff --git a/test/blackbox-tests/test-cases/installable-dup-private-libs/a2/a2.opam b/test/blackbox-tests/test-cases/installable-dup-private-libs/a2/a2.opam new file mode 100644 index 00000000..e69de29b diff --git a/test/blackbox-tests/test-cases/installable-dup-private-libs/a2/jbuild b/test/blackbox-tests/test-cases/installable-dup-private-libs/a2/jbuild new file mode 100644 index 00000000..66780efd --- /dev/null +++ b/test/blackbox-tests/test-cases/installable-dup-private-libs/a2/jbuild @@ -0,0 +1,3 @@ +(library + ((name a) + (public_name a2))) \ No newline at end of file diff --git a/test/blackbox-tests/test-cases/installable-dup-private-libs/run.t b/test/blackbox-tests/test-cases/installable-dup-private-libs/run.t new file mode 100644 index 00000000..a47d9bcb --- /dev/null +++ b/test/blackbox-tests/test-cases/installable-dup-private-libs/run.t @@ -0,0 +1,7 @@ + $ $JBUILDER build @install -j1 --display short --root . + ocamldep a2/a.ml.d + ocamlc a2/.a.objs/a.{cmi,cmo,cmt} + ocamlopt a2/.a.objs/a.{cmx,o} + ocamlc a2/a.cma + ocamlopt a2/a.{a,cmxa} + ocamlopt a2/a.cmxs