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

libwebsockets: add optional support for sd-event loop #613

Closed
wants to merge 1 commit into from

Conversation

lrusak
Copy link
Contributor

@lrusak lrusak commented Sep 24, 2022

Hello!

I'm sending a pull request to add support for building the libwebsockets-evlib-sd plugin for libwebsockets.

This allows using the sd_events based loop.

I am using this in a custom app and thought I would contribute the change.

@@ -24,21 +24,24 @@ PACKAGECONFIG[libuv] = "-DLWS_WITH_LIBUV=ON,-DLWS_WITH_LIBUV=OFF,libuv"
PACKAGECONFIG[server] = "-DLWS_WITHOUT_SERVER=OFF,-DLWS_WITHOUT_SERVER=ON,"
PACKAGECONFIG[ssl] = "-DLWS_WITH_SSL=ON,-DLWS_WITH_SSL=OFF,openssl"
PACKAGECONFIG[static] = "-DLWS_WITH_STATIC=ON,-DLWS_WITH_STATIC=OFF -DLWS_LINK_TESTAPPS_DYNAMIC=ON,"
PACKAGECONFIG[systemd] = "-DLWS_WITH_SDEVENT=ON,-DLWS_WITH_SDEVENT=OFF,systemd"
Copy link
Contributor

Choose a reason for hiding this comment

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

this PACKAGECONFIG needs to be enabled as well when systemd is in DISTRO_FEATURES

Copy link
Contributor Author

Choose a reason for hiding this comment

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

I thought of that but ultimately I left it out because it really is an optional feature and shouldn't be automatically enabled just because a distro enables systemd.

Copy link
Contributor

Choose a reason for hiding this comment

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

OK, thats good, however it will be nearly never used by folks since they would assume its always tied to distro features and secondly, since it has dependency on systemd somehow we need to also ensure that this packageconfig when enabled without systemd gives an error if we do not tie it to distro feature.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

I've added a fixup to check this condition. Please check if that is acceptable or if you would like the error message changed.

Copy link
Contributor

Choose a reason for hiding this comment

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

Please submit that in a new pull request since original patch is already applied

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Please submit that in a new pull request since original patch is already applied

I noticed that after I pushed, sorry 😞.

I updated the PR to contain just the new commit, do you want to just pick it or do you want me to open an new PR, or is this one still ok?

…DISTRO_FEATURES doesn't

Signed-off-by: Lukas Rusak <lorusak@gmail.com>
@kraj
Copy link
Contributor

kraj commented Oct 4, 2022

fixed with f3fa2a5

@kraj kraj closed this Oct 4, 2022
@lrusak lrusak deleted the libwebsockets-sdevent branch October 4, 2022 15:30
kraj pushed a commit to YoeDistro/meta-openembedded that referenced this pull request Dec 12, 2022
Changelogg:
============
 Adding support for reported unknown devices (openembedded#680)
 Add Chromecast Ultra and Chromecast HD to the recognised devices (openembedded#679)
 Fix error with select when python process exceeds 1024 open file descriptors (openembedded#676)
 Include URL and UUID in Home Assistant controller messages (openembedded#613)

Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
kraj pushed a commit to YoeDistro/meta-openembedded that referenced this pull request Jun 11, 2024
WirePlumber 0.5.3
~~~~~~~~~~~~~~~~~

Fixes:

  - Fixed a long standing issue that would cause many device nodes to have
    inconsistent naming, with a '.N' suffix (where N is a number >= 2) being
    appended at seemingly random times (openembedded#500)

  - Fixed an issue that would cause unavailable device profiles to be selected
    if they were previously stored in the state file, sometimes requiring users
    to manually remove the state file to get things working again (openembedded#613)

  - Fixed an occasional crash that could sometimes be triggered by hovering
    the volume icon on the KDE taskbar, and possibly other similar actions
    (openembedded#628, !644)

  - Fixed camera device deduplication logic when the same device is available
    through both V4L2 and libcamera, and the libcamera one groups multiple V4L2
    devices together (openembedded#623, !636)

  - Fixed applying the default volume on streams that have no volume previously
    stored in the state file (openembedded#655)

  - Fixed an issue that would prevent some camera nodes - in some cases -
    from being destroyed when the camera device is removed (openembedded#640)

  - Fixed an issue that would cause video stream nodes to be linked with audio
    smart filters, if smart audio filters were configured (!647)

  - Fixed an issue that would cause WP to re-activate device profiles even
    though they were already active (!639)

  - Configuration files in standard JSON format (starting with a '{', among
    other things) are now correctly parsed (openembedded#633)

  - Fixed overriding non-container values when merging JSON objects (openembedded#653)

  - Functions marked with WP_PRIVATE_API are now also marked as
    non-introspectable in the gobject-introspection metadata (openembedded#599)

Improvements:

  - Logging on the systemd journal now includes the log topic and also the log
    level and location directly on the message string when the log level is
    high enough, which is useful for gathering additional context in logs
    submitted by users (!640)

  - Added a video-only profile in wireplumber.conf, for systems where only
    camera & screensharing are to be used (openembedded#652)

  - Improved seat state monitoring so that Bluetooth devices are only enabled
    when the user is active on a local seat, instead of allowing remote users
    as well (!641)

  - Improved how main filter nodes are detected for the smart filters (!642)

  - Added Lua method to merge JSON containers (!637)

Signed-off-by: Markus Volk <f_l_k@t-online.de>
Signed-off-by: Khem Raj <raj.khem@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.

2 participants