Gregg Reynolds

Results 84 issues of Gregg Reynolds

Currently `ocaml_executable` in bytecode mode always adds `-custom`. Proposal: support compilation for ocamlrun, without `-custom`. Chapter 9: "In the default linking mode, the linker produces bytecode that is intended to...

Currently `ocaml_executable` in bytecode mode always adds `-custom`. Proposal: support compilation for ocamlrun, without `-custom`. Chapter 9: "In the default linking mode, the linker produces bytecode that is intended to...

Namespace support inescapably involves a circular dependency. On the one hand, submodules must depend on the ns module for two things: * submodule compilation must `-open` the namespace module *...

namespacing

Currently all ppx transforms are run stand-alone. Proposal: add support for passing the ppx executable directly to the compiler via the -ppx option.

ppx

Currently each(?) rule has a configurable warnings default, e.g. `@ocaml//executable:warnings=-1-2-3` Default is set to `@[email protected]@30..39@[email protected]@[email protected]` Question: is that a good default? Should the rules even set a default? One option...

good first issue
config

The 'main' attrib accepts a module but ignores its deps. It should add main's transitive deps tree to the cmd line. Workaround: also add the main module to `deps` attrib.

dep mgmt

Some rules have global configurable default settings for deps and cc_deps. These can be used to do things like adding jemalloc or bisect_ppx everywhere. For example, to add jemalloc to...

interop

Rule-specific configurable default for cc_deps just allows designation of a lib to link, e.g. ``` --@ocaml//executable:cc_deps=@foo//bar:baz # add cc lib dep to to all ocaml_executable targets ``` Problem: how to...

interop

PPX executables may inject code that induces additional compile-time dependencies. The injected code may also induce the need to add `open` directives. Usually these are added to the source files....

ppx

* only for building the library * cmd: bazel build //src:sfsexp I have Bazel files for examples and tests, but they require some changes that may conflict with Make-based build...