jordwalke / jordwalke/CommonML

Package-dependent compiler flags

Open
#10 4 comments 0 reactions 0 assignees View on GitHub
Dominant language
CSS
Stars
96
Forks
11
PR merge metrics
No merged PRs in 30d

Description

Adding `{"dependency": "core"}` to `findlibPackages` will cause failure in a build, because the package demands either the `-threads` or `-vmthread` flag. I added a bit of code to be able to group these kinds of flags with their dependencies:

```
, "findlibPackages": [{"dependency": "lambdasoup"}
, {"dependency": "core"
, "compileFlags": [" -vmthread "]}
, {"dependency": "cohttp"}
, {"dependency": "cohttp.lwt"}
, {"dependency": "lwt"}]
```

I'm not 100% sure it's a great idea. I like the explicit nature of this, and if different packages have conflicting packages, it's easier to point out as an exception. But compiler flags feel like a higher-level concept than packages, so I'm not sure about it.

Contributor guide

No contributing guide indexed for this repository

Research direction

Start by tracing how findlibPackages entries are interpreted, focusing on the proposed compileFlags field and the package-dependent flags shown in the issue. Determine whether this representation should be adopted and define completion as a documented, working approach for builds requiring -threads or -vmthread, including handling conflicting package flags.

Written by the indexing model from the issue text.

Assessment

Tech stack
ocaml
Domain
build-system
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.