Skip to content
This repository has been archived by the owner on Apr 30, 2021. It is now read-only.

Build system #43

Open
andreafioraldi opened this issue Oct 5, 2020 · 6 comments
Open

Build system #43

andreafioraldi opened this issue Oct 5, 2020 · 6 comments

Comments

@andreafioraldi
Copy link
Member

If libafl has to be multi platform, we cannot really use just GNU makefiles.

I propose meson as it was recently adopted by QEMU it and seems a sane build system, more than cmake for sure.

We can maintain both meson files and raw makefiles for linux/bsd if needed.

@andreafioraldi
Copy link
Member Author

In addition, meson supports C C++ and Rust so we can use the same build system to build all the bindings.

@domenukk
Copy link
Member

domenukk commented Oct 5, 2020

Personally only used cmake, and makefiles, but I cannot wait to move on to something better 👍 Meson sounds good to me.

We may still want to use cargo for rust btw, meson seems odd for this (mesonbuild/meson#2173)
/edit: I don't want to use external crates, just wondering how mature meson as rust build system could be, when everybody else uses cargo

@vanhauser-thc
Copy link
Member

vanhauser-thc commented Oct 6, 2020 via email

@andreafioraldi
Copy link
Member Author

Support Linux, bsd (Mac, open, firefly, etc). Solaris? What else?

Windows for sure, Linux kernel maybe

Support building c,c++,rust. What else?

Scripting languages, but they don't need a build system

@andreafioraldi
Copy link
Member Author

On the other hand https://www.rojtberg.net/1481/do-not-use-meson/

@domenukk
Copy link
Member

domenukk commented Oct 6, 2020

On the other hand https://www.rojtberg.net/1481/do-not-use-meson/

This is two years old, in the meantime qemu and others switched to meson. It seems sane.
Here's a reddit post https://www.reddit.com/r/cpp/comments/eppqhj/cmake_vs_meson_vs_bazel/
Buck and Bazel and others are too enterprisey I think.
Ninja isn't really the same thing, we would still write cmake or some other frontend and let it do the lifting.

For me qemu is the largest reason for us to switch to meson, less build systems is better.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants