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

dbus/1.12.20: Use CMake to build D-Bus to fix cross-compiling #11616

Merged
merged 14 commits into from
Jul 25, 2022

Conversation

jwillikers
Copy link
Contributor

Currently, Autotools errors out when attempting to cross-compile D-Bus.
However, D-Bus can be built with CMake by defining a simple variable.
Using CMake, D-Bus is able to be cross-compiled successfully.
This minimizes the complexity of the D-Bus Conanfile by using 1 build system.

D-Bus has better support for CMake in newer versions.
This should lead to reduced maintenance overhead in the future, too.

Specify library name and version: dbus/1.12.20


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

@conan-center-bot

This comment has been minimized.

@github-actions
Copy link
Contributor

github-actions bot commented Jul 9, 2022

Hooks produced the following warnings for commit f5501e4
dbus/1.12.20
post_package(): WARN: [MISSING SYSTEM LIBS (KB-H043)] Library './lib/libdbus-1.so' links to system library 'pthread' but it is not in cpp_info.system_libs.
post_package(): WARN: [MISSING SYSTEM LIBS (KB-H043)] Library './lib/libdbus-1.so' links to system library 'rt' but it is not in cpp_info.system_libs.
post_package(): WARN: [MISSING SYSTEM LIBS (KB-H043)] Library '.\bin\dbus-1-3.dll' links to system library 'iphlpapi' but it is not in cpp_info.system_libs.
post_package(): WARN: [MISSING SYSTEM LIBS (KB-H043)] Library '.\bin\dbus-1-3.dll' links to system library 'ws2_32' but it is not in cpp_info.system_libs.

@conan-center-bot

This comment has been minimized.

@conan-center-bot

This comment has been minimized.

Currently, Autotools errors out when attempting to cross-compile D-Bus.
However, D-Bus can be built with CMake by defining a simple variable.
Using CMake, D-Bus is able to be cross-compiled successfully.
This minimizes the complexity of the D-Bus Conanfile by using 1 build system.

D-Bus has better support for CMake in newer versions.
This should lead to reduced maintenance overhead in the future, too.
@conan-center-bot

This comment has been minimized.

@conan-center-bot

This comment has been minimized.

SSE4
SSE4 previously approved these changes Jul 11, 2022
@jwillikers
Copy link
Contributor Author

@ericLemanissier PTAL

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.

One question

This reverts commit 49ace14.
@conan-center-bot

This comment has been minimized.

@jwillikers jwillikers requested a review from SSE4 July 21, 2022 18:04
@jwillikers
Copy link
Contributor Author

jwillikers commented Jul 21, 2022

@tsondergaard I figured out the issue when building on FreeBSD using CMake. As it turns out, there's even an existing commit upstream that fixes the issue. I've pulled that commit as a patch here and it now builds for me on FreeBSD using CMake.

@conan-center-bot

This comment has been minimized.

@conan-center-bot

This comment has been minimized.

@conan-center-bot

This comment has been minimized.

@conan-center-bot

This comment has been minimized.

@conan-center-bot

This comment has been minimized.

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.

LGTM

@conan-center-bot
Copy link
Collaborator

All green in build 21 (d8c68e7824538d4b58f69f1191d6c7e090c2982e):

  • dbus/1.12.20@:
    All packages built successfully! (All logs)

    🔸 Informative: This recipe is not ready for Conan v2

    We have started the migration process to Conan v2 and exporting recipes successfully will be required in the future.
    This is just an informative note to gain awareness about the process, no need to take any action. The plan is to enforce smaller steps that are easier to fix and, eventually, this conan export step will work.
    See the recipe migration guide to know more about the changes required.

    ERROR: Error loading conanfile at '/home/conan/w/prod_cci_PR-11616/recipes/dbus/1.x.x/conanfile.py': Unable to load conanfile in /home/conan/w/prod_cci_PR-11616/recipes/dbus/1.x.x/conanfile.py
      File "<frozen importlib._bootstrap_external>", line 728, in exec_module
      File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
      File "/home/conan/w/prod_cci_PR-11616/recipes/dbus/1.x.x/conanfile.py", line 7, in <module>
        from conans import CMake
    ImportError: cannot import name 'CMake' from 'conans' (/opt/pyenv/versions/3.7.13/lib/python3.7/site-packages/conans/__init__.py)
    

@conan-center-bot conan-center-bot merged commit 84dd07c into conan-io:master Jul 25, 2022
@jwillikers jwillikers deleted the dbus-cross-compile branch July 26, 2022 00:42
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.

None yet

6 participants