Skip to content
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

Initial implementation of meson build system. #14

Open
wants to merge 3 commits into
base: master
Choose a base branch
from

Conversation

igo95862
Copy link
Contributor

Commands to compile:

  • Setup build directory: meson setup --buildtype=release build
  • Switch to build directory: cd build
  • Use ninja to compile. Compiled executable will be in the build directory
  • Optionally install it in to the system: ninja install
  • To uninstall: ninja uninstall

This is not final. I need to update README with new instructions.

@Emanem
Copy link
Owner

Emanem commented Aug 11, 2021

With this we would have both the legacy makefile and more strategic meson setup? Apologies for silly question but I've only used cmake a couple of times before...not really familiar with meson.

@igo95862
Copy link
Contributor Author

I was thinking about removing make file after finishing the README instructions.

It is also possible for make file to be a backward compatible stub that calls meson and ninja how systemd has it: https://github.com/systemd/systemd/blob/main/Makefile

I've only used cmake a couple of times before...not really familiar with meson.

It is quite simple. The biggest difference from classical autotools and make files is that building happens in a build directory. Meson website has a good tutorial: https://mesonbuild.com/Quick-guide.html#compiling-a-meson-project

@igo95862 igo95862 force-pushed the meson-build branch 2 times, most recently from 66df2db to ad4d0e2 Compare August 14, 2021 17:45
Commands to compile:

* Setup build directory: `meson setup --buildtype=release build`
* Switch to build directory: `cd build`
* Use `ninja` to compile. Compiled executable will be in the build directory
* Optionally install it in to the system: `ninja install`
* To uninstall: `ninja uninstall`
@igo95862
Copy link
Contributor Author

@Emanem I added meson instructions in to README.

I also created a Github Actions workflow to verify that code compiles.

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

Successfully merging this pull request may close these issues.

2 participants