Note: This is a public test instance of Red Hat Bugzilla. The data contained within is a snapshot of the live data so any changes you make will not be reflected in the production Bugzilla. Email is disabled so feel free to test any aspect of the site that you want. File any problems you find or give feedback at bugzilla.redhat.com.

Bug 1423194

Summary: galera: FTBFS in rawhide
Product: [Fedora] Fedora Reporter: Jonathan Wakely <jwakely>
Component: galeraAssignee: Fabio Massimo Di Nitto <fdinitto>
Status: CLOSED RAWHIDE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: rawhideCC: dciabrin, fdinitto, hhorak, mbayer, rohara
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2017-02-18 01:03:55 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:
Attachments:
Description Flags
config.log from failed build none

Description Jonathan Wakely 2017-02-17 03:07:14 UTC
Created attachment 1251347 [details]
config.log from failed build

Failed build: https://koji.fedoraproject.org/koji/taskinfo?taskID=17724871

Checking for C++ header file asio.hpp... no
Falling back to bundled asio
Checking for C++ header file asio.hpp... yes
Checking for C++ header file asio/ssl.hpp... no
ssl support required but asio/ssl.hpp not found or not usable
compile with ssl=0 or check that openssl devel headers are usable
error: Bad exit status from /var/tmp/rpm-tmp.l7NIxj (%build)
    Bad exit status from /var/tmp/rpm-tmp.l7NIxj (%build)
RPM build errors:
Child return code was: 1
EXCEPTION: [Error()]

This appears to be because the bundled asio doesn't support OpenSSL 1.1.0, because it's an old version of asio.

The package would probably build if BuildRequires was changed from openssl-devel to compat-openssl10-devel, but I wonder why it uses a bundled asio in the first place? There are already two copies of asio in Fedora, as boost-asio and the standalone asio. 

galera already has BuildRequires: boost-devel, so the asio headers are installed, but the config test doesn't look in /usr/include/boost so it doesn't find /usr/include/boost/asio.hpp

The package builds successfully if asio-devel is added to the BuildRequires, so  it finds /usr/include/asio.hpp and doesn't need the bundled version.

i.e this fixes the build, and stops using the bundled lib:


--- a/galera.spec
+++ b/galera.spec
@@ -10,7 +10,7 @@ Source0:        http://releases.galeracluster.com/source/%{name}-3-%{version}.ta
 Source1:        garbd.service
 Source2:        garbd-wrapper
 
-BuildRequires:  boost-devel check-devel openssl-devel scons systemd
+BuildRequires:  boost-devel check-devel openssl-devel scons systemd asio-devel
 Requires:       nmap-ncat

Comment 1 Jonathan Wakely 2017-02-17 03:11:13 UTC
The spec file should have said "Provides: bundled(asio) = 1.4.8"

https://fedoraproject.org/wiki/Bundled_Libraries?rd=Packaging:Bundled_Libraries#Requirement_if_you_bundle