-
-
Notifications
You must be signed in to change notification settings - Fork 25
Description
There are a few problems currently that make it difficult to use luv on Windows.
-
Unhandled carriage return from ocaml config command, see: Avoid carriage return bug when configuring libuv on Windows #165
-
Use of bash and make for building vendored libuv. These currently are not guaranteed to be available in PATH with a default installation of opam on Windows, which causes issues such as: Try to reproduce opam-repository CI failure on Windows #162. To solve this, conf-libuv could be made a mandatory dependency on Windows, and luv could use the system libuv when that is available. See Use system libuv when conf-libuv is available #166
-
Use of bash for generating libuv stubs:
This patch would fix the problem for now: Replace bash use with dune-configurator #168Lines 135 to 145 in d92c8b7
if [ '%{ocaml-config:ccomp_type}' = 'msvc' ]; then \ %{cc} %{c} \ -I '%{lib:ctypes:.}' \ -I '%{ocaml_where}' \ |}^ i_option ^{| /Fe\"%{targets}\"; \ else \ %{cc} %{c} \ -I '%{lib:ctypes:.}' \ -I '%{ocaml_where}' \ |}^ i_option ^{| -o %{targets}; \ fi"))) (Long term, it would be better to use builtin ctypes support in dune: [WIP] use dune ctypes stanza support to eliminate boilerplate #114, to avoid the manual compiler invocation)