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

- [cairo] switch to meson #7842

Merged
merged 4 commits into from
Nov 30, 2021
Merged

Conversation

SSE4
Copy link
Contributor

@SSE4 SSE4 commented Oct 26, 2021

Specify library name and version: cairo/all

closes: #7732
to unblock: #7691

switch cairo builds to meson, as commented out in https://gitlab.freedesktop.org/cairo/cairo/-/issues/75:

I would say "Use Meson instead", yes, but I may be slightly biased in this respect :)
I think it's a much better and more maintainable approach though which doesn't require hardcoding specific configuration choices either.
I would go as far as wondering whether the Makefile.win32 should just be removed seeing that it was last touched in 2012.
Just a heads-up that upstream cairo is working towards dropping support for all non-Meson build systems.

pros:

  • single build system (meson) instead of autotools + msbuild
  • cairo-gobject and all other targets are properly supported
  • less patches are needed
  • use install instead of manually copying all the files

cons:

  • right now, meson build helper doesn't support some cross-building use-cases

also added some previously missing options, requirements and components

This is also a good place to share with all of us why you are submitting this PR (specially if it is a new addition to ConanCenter): is it a dependency of other libraries you want to package? Are you the author of the library? Thanks!


  • I've read the guidelines for contributing.
  • I've followed the PEP8 style guides for Python code in the recipes.
  • I've used the latest Conan client version.
  • I've tried at least one configuration locally with the
    conan-center hook activated.

@conan-center-bot

This comment has been minimized.

@SSE4
Copy link
Contributor Author

SSE4 commented Oct 28, 2021

okay, it seems like only 1.17.4 contains meson.build, let's change the structure a bit

Signed-off-by: SSE4 <tomskside@gmail.com>
@conan-center-bot

This comment has been minimized.

@conan-center-bot

This comment has been minimized.

uilianries
uilianries previously approved these changes Oct 29, 2021
Copy link
Member

@uilianries uilianries left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Only small detail. Goo job.

recipes/cairo/meson/test_package/CMakeLists.txt Outdated Show resolved Hide resolved
recipes/cairo/meson/test_package/conanfile.py Outdated Show resolved Hide resolved
Co-authored-by: Uilian Ries <uilianries@gmail.com>
Co-authored-by: Uilian Ries <uilianries@gmail.com>
@conan-center-bot
Copy link
Collaborator

All green in build 8 (626915a688dc0d304597766e8cacb57cc3993516):

  • cairo/1.17.4@:
    All packages built successfully! (All logs)

@SpaceIm
Copy link
Contributor

SpaceIm commented Nov 3, 2021

right now, meson build helper doesn't support some cross-building use-cases

Seems to be a big cons compared to pros. What is the advantage for consumers (not maintainers)?

@SSE4
Copy link
Contributor Author

SSE4 commented Nov 4, 2021

Seems to be a big cons compared to pros. What is the advantage for consumers (not maintainers)?

yes, it's pretty significant disadvantage for consumers.
OTOH, as cairo depends on glib, but glib suffers the same disadvantage already, maybe it's not so painful.

Copy link
Contributor

@prince-chrismc prince-chrismc left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I have objections.

@sh0
Copy link
Contributor

sh0 commented Nov 24, 2021

I also worked on porting cairo to use meson: https://github.com/sh0/conan-center-index/tree/cairo-meson-fix/recipes/cairo/meson

My conanfile has also support for OpenGL (desktop, gles2, gles3). IMHO without meson the MSVC build is a hot mess and it is probably not possible to get OpenGL working there. So it is a tradeoff between autotools/msbuild and meson.

@conan-center-bot conan-center-bot merged commit 5878961 into conan-io:master Nov 30, 2021
@SSE4 SSE4 mentioned this pull request Dec 1, 2021
4 tasks
ivanvurbanov pushed a commit to ivanvurbanov/conan-center-index that referenced this pull request Dec 2, 2021
* - [cairo] switch to meson

Signed-off-by: SSE4 <tomskside@gmail.com>

* Update recipes/cairo/meson/conanfile.py

* Update recipes/cairo/meson/test_package/CMakeLists.txt

Co-authored-by: Uilian Ries <uilianries@gmail.com>

* Update recipes/cairo/meson/test_package/conanfile.py

Co-authored-by: Uilian Ries <uilianries@gmail.com>

Co-authored-by: Uilian Ries <uilianries@gmail.com>
miklelappo pushed a commit to miklelappo/conan-center-index that referenced this pull request Feb 9, 2022
* - [cairo] switch to meson

Signed-off-by: SSE4 <tomskside@gmail.com>

* Update recipes/cairo/meson/conanfile.py

* Update recipes/cairo/meson/test_package/CMakeLists.txt

Co-authored-by: Uilian Ries <uilianries@gmail.com>

* Update recipes/cairo/meson/test_package/conanfile.py

Co-authored-by: Uilian Ries <uilianries@gmail.com>

Co-authored-by: Uilian Ries <uilianries@gmail.com>
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.

7 participants