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

Add Gtkmm recipe #11415

Closed
wants to merge 5 commits into from
Closed

Add Gtkmm recipe #11415

wants to merge 5 commits into from

Conversation

planetmarshall
Copy link
Contributor

Specify library name and version: gtkmm/4.6.1

New recipe


  • 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.

@planetmarshall
Copy link
Contributor Author

Marked as draft as requires #11399

This was referenced Jun 28, 2022
@conan-center-bot

This comment has been minimized.

@theartful
Copy link
Contributor

theartful commented Jun 28, 2022

Note that shared gtkmm will link against static glib which will cause it to get a different instance of glib from all other dependencies. See #11022.
Also a patch similar to #11093 needs to be applied to cairomm and pangomm first.

@planetmarshall
Copy link
Contributor Author

Note that shared gtkmm will link against static glib which will cause it to get a different instance of glib from all other dependencies. See #11022.

I'm not sure I follow. Why would you get a different instance of glib? If you create a package with shared glib, eg

conan create . gtkmm/4.6.1@ -o glib:shared=True --build

Then the dependency graph only contains the shared glib library, and all the dependencies are built against that version. This can be verified by examining the lockfile, eg:

$ conan lock create conanfile.py --version 4.6.1 -o glib:shared=True --build --lockfile-out gtkmm.lock
$ grep "glib/" gtkmm.lock

"ref": "glib/2.73.0#81f4cd2bf3c3106dfb3d7ac4ce978398",

$ grep -c "glib:shared=True" gtkmm.lock
11

@theartful
Copy link
Contributor

theartful commented Jun 28, 2022

Inner dependency options are not always respected if they're not part of the id of the package.
See conan-io/conan#11396
Since pangomm and cairomm don't use full_package_mode with glib conan can use a cached version of pangomm/cairomm that use a static glib even with -o glib:shared=True.

@conan-center-bot

This comment has been minimized.

@stale
Copy link

stale bot commented Jul 30, 2022

This pull request has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

@stale stale bot added the stale label Jul 30, 2022
@stale stale bot removed the stale label Aug 16, 2022
@conan-center-bot

This comment has been minimized.

@conan-center-bot
Copy link
Collaborator

Failure in build 6 (776466ab98bc51694a252bf147f060d2c1676be7):

  • gtkmm/4.7.1@:
    CI failed to create some packages (All logs)

    Logs for packageID c834bfdcbe184b528cd60c95169d8273d76dc2aa:
    [settings]
    arch=x86_64
    build_type=Release
    compiler=gcc
    compiler.libcxx=libstdc++
    compiler.version=8
    os=Linux
    [options]
    gtkmm:shared=False
    
    [...]
        pangomm/2.50.0:535bab387571fc0f1458f47811453009da5d4c90 - Missing
        pcre2/10.40:574897e9b724d40ebb3cb36c2f1f0b1077a87626 - Download
        pixman/0.40.0:1d877a3df840030e6a8abb74c5ffb9088d08b47a - Download
        wayland/1.20.0:e03b7a95afb3f8592db7fbbfc064dda3c6b2962a - Download
        wayland-protocols/1.24:5ab84d6acfe1f23c4fae0ab88f26e3a396351ac9 - Download
        xkbcommon/1.4.1:6d18b9f035530992df7252eafb6bca9aecda14a5 - Download
        xorg/system:5ab84d6acfe1f23c4fae0ab88f26e3a396351ac9 - Download
        xz_utils/5.2.5:1d877a3df840030e6a8abb74c5ffb9088d08b47a - Download
        zlib/1.2.12:1d877a3df840030e6a8abb74c5ffb9088d08b47a - Download
        zstd/1.5.2:3b258fdc811e95a086ce28938b49155b5c0c91be - Download
    Build requirements
        meson/0.62.2 from 'conan-center' - Downloaded
        ninja/1.10.2 from 'conan-center' - Downloaded
        pkgconf/1.7.4 from 'conan-center' - Downloaded
    Build requirements packages
        meson/0.62.2:5ab84d6acfe1f23c4fae0ab88f26e3a396351ac9 - Download
        ninja/1.10.2:24647d9fe8ec489125dfbae4b3ebefaf7581674c - Download
        pkgconf/1.7.4:24647d9fe8ec489125dfbae4b3ebefaf7581674c - Download
    
    Installing (downloading, building) binaries...
    
    WARN: cairo/1.17.4: requirement glib/2.73.0 overridden by cairomm/1.16.1 to glib/2.73.3 
    WARN: glibmm/2.72.1: requirement glib/2.73.0 overridden by gtkmm/4.7.1 to glib/2.73.3 
    WARN: gtk/4.7.0: requirement glib/2.73.0 overridden by gtkmm/4.7.1 to glib/2.73.3 
    WARN: gdk-pixbuf/2.42.6: requirement glib/2.73.0 overridden by gtk/4.7.0 to glib/2.73.3 
    WARN: graphene/1.10.8: requirement glib/2.73.0 overridden by gtk/4.7.0 to glib/2.73.3 
    WARN: pango/1.50.7: requirement glib/2.73.0 overridden by gtk/4.7.0 to glib/2.73.3 
    WARN: harfbuzz/4.3.0: requirement glib/2.73.1 overridden by pango/1.50.7 to glib/2.73.3 
    WARN: pangomm/2.50.0: requirement glib/2.72.1 overridden by gtkmm/4.7.1 to glib/2.73.3 
    ERROR: Missing binary: cairo/1.17.4:5894507010501aa05c8b8455039dca802a3675b6
    ERROR: Missing binary: cairomm/1.16.1:767594d2c442322a9d40989d470a97c93cdac023
    ERROR: Missing binary: gdk-pixbuf/2.42.6:2a259f80409b05b4fd770ea5b7d694f54001ed4c
    ERROR: Missing binary: glibmm/2.72.1:fe0ec35a59e1b37d86e68e71f8fdc8da617bd267
    ERROR: Missing binary: graphene/1.10.8:0be955f8d2977857a0bbd9fce9dcc44cdc0b1d44
    ERROR: Missing binary: gtk/4.7.0:5eda48eadfb3aa4aaa3de28fdbe4744f9cc18b2a
    ERROR: Missing binary: harfbuzz/4.3.0:81ec0219967087905d2a46a23848b0eb5d1a9700
    ERROR: Missing binary: pango/1.50.7:be944388f5275131af3956c63b59bc1aadeeeab7
    ERROR: Missing binary: pangomm/2.50.0:535bab387571fc0f1458f47811453009da5d4c90
    cairo/1.17.4: WARN: Can't find a 'cairo/1.17.4' package for the specified settings, options and dependencies:
    - Settings: arch=x86_64, build_type=Release, compiler=gcc, compiler.version=8, os=Linux
    - Options: fPIC=True, shared=False, tee=True, with_fontconfig=True, with_freetype=True, with_glib=True, with_lzo=True, with_opengl=desktop, with_png=True, with_symbol_lookup=False, with_xcb=True, with_xlib=True, with_xlib_xrender=True, with_zlib=True, brotli:fPIC=True, brotli:shared=False, bzip2:build_executable=True, bzip2:fPIC=True, bzip2:shared=False, expat:char_type=char, expat:fPIC=True, expat:shared=False, fontconfig:fPIC=True, fontconfig:shared=False, freetype:fPIC=True, freetype:shared=False, freetype:subpixel=False, freetype:with_brotli=True, freetype:with_bzip2=True, freetype:with_png=True, freetype:with_zlib=True, glib:fPIC=True, glib:shared=False, glib:with_elf=True, glib:with_mount=True, glib:with_pcre=True, glib:with_selinux=True, libelf:fPIC=True, libelf:shared=False, libffi:fPIC=True, libffi:shared=False, libmount:fPIC=True, libmount:shared=False, libpng:api_prefix=, libpng:fPIC=True, libpng:shared=False, libpng:sse=True, libselinux:fPIC=True, libselinux:shared=False, libuuid:fPIC=True, libuuid:shared=False, lzo:fPIC=True, lzo:shared=False, pcre2:build_pcre2_16=True, pcre2:build_pcre2_32=True, pcre2:build_pcre2_8=True, pcre2:build_pcre2grep=True, pcre2:fPIC=True, pcre2:shared=False, pcre2:support_jit=False, pcre2:with_bzip2=True, pcre2:with_zlib=True, pixman:fPIC=True, pixman:shared=False, zlib:fPIC=True, zlib:shared=False
    - Dependencies: pixman/0.40.0, expat/2.4.8, lzo/2.10, zlib/1.2.12, freetype/2.12.1, fontconfig/2.13.93, libpng/1.6.37, glib/2.73.3, xorg/system, opengl/system, egl/system
    - Requirements: egl/system, expat/2.Y.Z, fontconfig/2.Y.Z, freetype/2.Y.Z, glib/2.73.3:9aac33666ea6e6467283a82562c34d2d487ecbff, libpng/1.Y.Z, lzo/2.Y.Z, opengl/system, pixman/0.40.0, xorg/system, zlib/1.Y.Z
    - Package ID: 5894507010501aa05c8b8455039dca802a3675b6
    
    ERROR: Missing prebuilt package for 'cairo/1.17.4', 'cairomm/1.16.1', 'gdk-pixbuf/2.42.6', 'glibmm/2.72.1', 'graphene/1.10.8', 'gtk/4.7.0', 'harfbuzz/4.3.0', 'pango/1.50.7', 'pangomm/2.50.0'
    Use 'conan search cairo/1.17.4 --table=table.html -r=remote' and open the table.html file to see available packages
    Or try to build locally from sources with '--build=missing'
    
    More Info at 'https://docs.conan.io/en/latest/faq/troubleshooting.html#error-missing-prebuilt-package'
    

Note: To save resources, CI tries to finish as soon as an error is found. For this reason you might find that not all the references have been launched or not all the configurations for a given reference. Also, take into account that we cannot guarantee the order of execution as it depends on CI workload and workers availability.

@stale
Copy link

stale bot commented Sep 16, 2022

This pull request has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

1 similar comment
@stale
Copy link

stale bot commented Oct 16, 2022

This pull request has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

@stale stale bot added the stale label Oct 16, 2022
@stale
Copy link

stale bot commented Nov 22, 2022

This pull request has been automatically closed because it has not had recent activity. Thank you for your contributions.

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

Successfully merging this pull request may close these issues.

3 participants