Bug 1668129

Summary: libwebsockets uses poor cmake flags in spec file
Product: [Fedora] Fedora Reporter: Per Bothner <per>
Component: libwebsocketsAssignee: Fabian Affolter <mail>
Status: CLOSED RAWHIDE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: high Docs Contact:
Priority: unspecified    
Version: 29CC: mail, pbrobinson
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: All   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2019-02-09 10:47:58 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Per Bothner 2019-01-22 01:39:14 UTC
Description of problem:

Libwebsockets is not built with the recommended features and options.  For example LWS_WITH_ZIP_FOPS is not set.  This means that when building DomTerm (https://domterm.org - not yet approved for Fedora) it uses a less-efficient representation of resources.

Please compare the libwebsockets.spec used in Fedora with the one in the upstream source file scripts/libwebsockets.spec.  The latter just has:

    %cmake .. -DLWS_WITH_DISTRO_RECOMMENDED=1

while the Fedora version has a long list of options.  Please follow upstream in this respect. If there is a good reason not to, that should be noted.

See also READMEs/README.build.md (https://github.com/warmcat/libwebsockets/blob/master/READMEs/README.build.md):

    "Distro packagers should select the CMake option "LWS_WITH_DISTRO_RECOMMENDED", which selects common additional options like support for various event libraries, plugins and lwsws."

Comment 1 Per Bothner 2019-01-22 01:40:46 UTC
I believe this bug applies to both f29 and Rawhide.  This breakage appears to be recent, with a yum update todo.

Comment 2 Per Bothner 2019-01-22 01:42:03 UTC
This appears to be a recent problem in both fedora 29 and Rawhide, fresh with an yum update (on 29) today.

Comment 3 Peter Robinson 2019-02-09 10:47:58 UTC
We don't enable the distro defaults because it builds test servers and clients and a whole bunch of things that we don't currently want. I've updated the build options so LWS_WITH_ZIP_FOPS is enabled (and updated it for a number of other things)

Comment 4 Per Bothner 2019-02-19 20:26:23 UTC
I asked on the libwebsockets list (https://libwebsockets.org/pipermail/libwebsockets/2019-February/007803.html) and the maintainer (Andy Green) found the issue "builds test servers and clients and a whole bunch of things that we don't currently want" puzzling.  That is not supposed to be happening, and if it is, it may an upstream bug.  It would be nice to nail down the specific issue you have with LWS_WITH_DISTRO_RECOMMENDED.