-
Notifications
You must be signed in to change notification settings - Fork 21
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Port to dune #44
Port to dune #44
Conversation
(public_name mirage-solo5.internals) | ||
(modules lifecycle main mM oS solo5 time) | ||
(c_names alloc_pages_stubs atomic_stubs barrier_stubs checksum_stubs clock_stubs cstruct_stubs main mm_stubs solo5_block_stubs solo5_console_stubs solo5_net_stubs) | ||
(c_flags (:include cflags) -O2 -std=c99 -Wall -Werror) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I realise that the -Werror is existing behaviour, but it makes it really painful when doing production builds with a newer compiler that introduces some random warning.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I share your concerns, but IMHO such a change (removing -Werror
) deserves its own PR rather than being included (hidden) in a build-system-changing PR. Out of curiousity, is it possible in dune to specify specific development
vs release
c_flags (so there could be -Werror
in development mode)?
On Saturday, 25.05.2019 at 16:48, Anil Madhavapeddy wrote:
avsm commented on this pull request.
> @@ -0,0 +1,18 @@
+(library
+ (name oS)
+ (public_name mirage-solo5.internals)
+ (modules lifecycle main mM oS solo5 time)
+ (c_names alloc_pages_stubs atomic_stubs barrier_stubs checksum_stubs clock_stubs cstruct_stubs main mm_stubs solo5_block_stubs solo5_console_stubs solo5_net_stubs)
+ (c_flags (:include cflags) -O2 -std=c99 -Wall -Werror)
I realise that the -Werror is existing behaviour, but it makes it really painful when doing production builds with a newer compiler that introduces some random warning.
Isn't that consistent with Dune behaviour for OCaml code, i.e. treating all
warnings as errors by default? Why deal with C code differently?
|
Almost is, but not quite. Dune has profiles, and in the default dev mode it treats warnings as errors. But if |
2f5226a
to
45d9fe0
Compare
if |
@hannesm We can make a first PR that put solo5-specific modules in an |
Migrate to OPAM 2
In the global effort of switching mirage to dune: mirage/mirage#969
Fixes #41
This is a work in progress, I'm trying to keep track of every change that need to be made!