diff --git a/.travis.yml b/.travis.yml index 3f08378a..416b0726 100644 --- a/.travis.yml +++ b/.travis.yml @@ -9,13 +9,11 @@ env: - PINS="conduit:. mirage-conduit:. conduit-async:. conduit-lwt:. conduit-lwt-unix:." - TESTS=true matrix: - - OCAML_VERSION=4.06.0 PACKAGE=conduit-lwt-unix DISTRO=debian-stable DEPOPTS="ssl tls" - - OCAML_VERSION=4.05.0 PACKAGE=conduit-async DISTRO=centos-7 DEPOPTS=async_ssl - - OCAML_VERSION=4.04.2 PACKAGE=conduit-lwt-unix DISTRO=alpine-3.6 DEPOPTS="ssl tls" - - OCAML_VERSION=4.04.1 PACKAGE=conduit-lwt-unix DISTRO=debian-stable DEPOPTS="ssl tls" - - OCAML_VERSION=4.04.1 PACKAGE=conduit-async DISTRO=debian-unstable DEPOPTS=async_ssl - - OCAML_VERSION=4.04.1 PACKAGE=conduit-async DISTRO=ubuntu-17.04 DEPOPTS=async_ssl - - OCAML_VERSION=4.03.0 PACKAGE=conduit-lwt-unix DISTRO=debian-testing DEPOPTS="ssl tls" - - OCAML_VERSION=4.03.0 PACKAGE=conduit-lwt-unix DISTRO=ubuntu-16.04 DEPOPTS="ssl tls" - - OCAML_VERSION=4.03.0 PACKAGE=conduit-lwt-unix DISTRO=centos-6 DEPOPTS="ssl tls" - - OCAML_VERSION=4.03.0 PACKAGE=conduit-lwt-unix DISTRO=fedora-26 DEPOPTS="ssl tls" + - OCAML_VERSION=4.07 PACKAGE=conduit-lwt-unix DISTRO=debian-stable DEPOPTS="ssl tls" + - OCAML_VERSION=4.06 PACKAGE=conduit-lwt-unix DISTRO=debian-unstable DEPOPTS="ssl tls" + - OCAML_VERSION=4.05 PACKAGE=conduit-async DISTRO=debian-unstable DEPOPTS=async_ssl + - OCAML_VERSION=4.04 PACKAGE=conduit-lwt-unix DISTRO=debian-testing DEPOPTS="ssl tls" + - OCAML_VERSION=4.06 PACKAGE=conduit-async DISTRO=centos DEPOPTS=async_ssl + - OCAML_VERSION=4.06 PACKAGE=conduit-lwt-unix DISTRO=alpine DEPOPTS="ssl tls" + - OCAML_VERSION=4.06 PACKAGE=conduit-async DISTRO=ubuntu DEPOPTS=async_ssl + - OCAML_VERSION=4.06 PACKAGE=conduit-lwt-unix DISTRO=fedora DEPOPTS="ssl tls" diff --git a/lwt-unix/jbuild b/lwt-unix/jbuild index fdd18709..99cd9ed5 100644 --- a/lwt-unix/jbuild +++ b/lwt-unix/jbuild @@ -1,24 +1,46 @@ -(jbuild_version 1) +(* -*- tuareg -*- *) + +let v ~launchd ~ssl ~tls () = + let launchd, launchd_d = + if launchd then "conduit_lwt_launchd_real", "launchd.lwt " + else "conduit_lwt_launchd_dummy", "" + in + let ssl, ssl_d = + if ssl then "conduit_lwt_unix_ssl_real", "lwt_ssl " + else "conduit_lwt_unix_ssl_dummy", "" + in + let tls, tls_d = + if tls then "conduit_lwt_tls_real", "tls.lwt " + else "conduit_lwt_tls_dummy", "" + in + Printf.sprintf {| +(rule (copy %s.ml conduit_lwt_launchd.ml)) +(rule (copy %s.ml conduit_lwt_unix_ssl.ml)) +(rule (copy %s.ml conduit_lwt_tls.ml)) +(rule (copy %s.mli conduit_lwt_unix_ssl.mli)) +(rule (copy %s.mli conduit_lwt_tls.mli)) + (library ((name conduit_lwt_unix) (public_name conduit-lwt-unix) (preprocess (pps (ppx_sexp_conv))) (wrapped false) - (modules (resolver_lwt_unix conduit_lwt_unix conduit_lwt_server conduit_lwt_tls conduit_lwt_unix_ssl conduit_lwt_launchd)) - (libraries (conduit-lwt lwt.unix uri.services ipaddr.unix logs - (select conduit_lwt_launchd.ml from - (launchd.lwt -> conduit_lwt_launchd_real.ml) - (!launchd.lwt -> conduit_lwt_launchd_dummy.ml)) - (select conduit_lwt_unix_ssl.ml from - (lwt_ssl -> conduit_lwt_unix_ssl_real.ml) - (!lwt_ssl -> conduit_lwt_unix_ssl_dummy.ml)) - (select conduit_lwt_unix_ssl.mli from - (lwt_ssl -> conduit_lwt_unix_ssl_real.mli) - (!lwt_ssl -> conduit_lwt_unix_ssl_dummy.mli)) - (select conduit_lwt_tls.ml from - (tls.lwt -> conduit_lwt_tls_real.ml) - (!tls.lwt -> conduit_lwt_tls_dummy.ml)) - (select conduit_lwt_tls.mli from - (tls.lwt -> conduit_lwt_tls_real.mli) - (!tls.lwt -> conduit_lwt_tls_dummy.mli)) - )))) + (modules (resolver_lwt_unix conduit_lwt_unix conduit_lwt_server + conduit_lwt_tls conduit_lwt_unix_ssl conduit_lwt_launchd)) + (libraries (conduit-lwt lwt.unix uri.services ipaddr.unix logs %s%s%s)))) +|} launchd ssl tls ssl tls launchd_d ssl_d tls_d + +let main () = + let is_installed s = Printf.kprintf Sys.command "ocamlfind query %s" s = 0 in + let launchd = is_installed "launchd.lwt" in + let ssl = is_installed "lwt_ssl" in + let tls = Sys.unix && is_installed "tls.lwt" in + Printf.printf + "Configuration\n\ + \ launchd: %b\n\ + \ ssl : %b\n\ + \ tls : %b\n%!" + launchd ssl tls; + v ~launchd ~ssl ~tls () + +let () = Jbuild_plugin.V1.send @@ main ()