Bug 1304958

Summary: use LDADD instead of LDFLAGS to fix FTBFS with ld --as-needed
Product: [oVirt] ovirt-distribution Reporter: Logan Rosen <logan>
Component: ioprocessAssignee: Nir Soffer <nsoffer>
ioprocess sub component: General QA Contact: Aharon Canan <acanan>
Status: CLOSED ERRATA Docs Contact:
Severity: medium    
Priority: unspecified CC: acanan, amureini, bugs, logan, nsoffer, tnisan
Version: ioprocess-0.15.0Keywords: Reopened
Target Milestone: ovirt-4.0.0-rcFlags: tnisan: ovirt-4.0.0?
rule-engine: planning_ack+
amureini: devel_ack+
rule-engine: testing_ack?
Target Release: ioprocess-0.16.1   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: ioprocess-0.16.1-1.fc24 ioprocess-0.16.1-1.fc23 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2016-07-05 05:00:40 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: Storage RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Attachments:
Description Flags
patch none

Description Logan Rosen 2016-02-05 05:05:36 UTC
Created attachment 1121281 [details]
patch

In Ubuntu, the ld linker uses --as-needed to only link in produced binaries the libraries containing symbols used by the binaries. This requires a linking order, where the required libraries come after the binaries that need them.

In ioprocess, the libraries come before the binaries in the linking order, causing an FTBFS in Ubuntu: https://launchpad.net/ubuntu/+source/ioprocess/0.15.1-2/+build/8880979

This is because the ioprocess_LDFLAGS variable is used, which is not meant to be used for libraries but rather just for options for the linker. ioprocess_LDADD should be used instead to fix this failure.

I have attached a patch for this based on the latest file in Git.

Comment 1 Tal Nisan 2016-02-07 14:41:40 UTC
Oved, this is a build issue concerning IOProcess which is in infra jurisdiction, why did you move to storage?

Comment 2 Nir Soffer 2016-02-09 12:46:28 UTC
(In reply to Logan Rosen from comment #0)
> Created attachment 1121281 [details]
> patch
> 
> In Ubuntu, the ld linker uses --as-needed to only link in produced binaries
> the libraries containing symbols used by the binaries. This requires a
> linking order, where the required libraries come after the binaries that
> need them.
> 
> In ioprocess, the libraries come before the binaries in the linking order,
> causing an FTBFS in Ubuntu:
> https://launchpad.net/ubuntu/+source/ioprocess/0.15.1-2/+build/8880979
> 
> This is because the ioprocess_LDFLAGS variable is used, which is not meant
> to be used for libraries but rather just for options for the linker.
> ioprocess_LDADD should be used instead to fix this failure.
> 
> I have attached a patch for this based on the latest file in Git.

Thanks Logan!

I don't think this is Ubuntu issue, your fix is correct on any platform,
LDFLAGS is not meant for libraries.

Can you post your patch to ioprocess gerrit?
https://gerrit.ovirt.org/#/admin/projects/ioprocess

Comment 3 Logan Rosen 2016-02-10 16:54:21 UTC
Done: https://gerrit.ovirt.org/#/c/53367/

Comment 4 Nir Soffer 2016-02-20 19:52:33 UTC
Removing needinfo since not clear what is the requested info.

Comment 5 Mike McCune 2016-03-28 23:14:23 UTC
This bug was accidentally moved from POST to MODIFIED via an error in automation, please see mmccune with any questions

Comment 6 Sandro Bonazzola 2016-05-02 10:03:53 UTC
Moving from 4.0 alpha to 4.0 beta since 4.0 alpha has been already released and bug is not ON_QA.

Comment 7 Nir Soffer 2016-05-08 21:56:45 UTC
Merged in https://github.com/oVirt/ioprocess/commit/608a44cf2cb467abb01db88f0a26cf34e5ac18a4

Testing - this is a build issue, nothing to test.

Comment 8 Nir Soffer 2016-05-24 07:57:11 UTC
This fix is not included in 0.15.1.

It will be included in 0.16.1, which should be released soon.

Comment 9 Fedora Update System 2016-06-16 08:49:03 UTC
ioprocess-0.16.1-1.fc24 has been submitted as an update to Fedora 24. https://bodhi.fedoraproject.org/updates/FEDORA-2016-dfdd83c234

Comment 10 Fedora Update System 2016-06-16 09:07:54 UTC
ioprocess-0.16.1-1.fc23 has been submitted as an update to Fedora 23. https://bodhi.fedoraproject.org/updates/FEDORA-2016-f2bcab1a73

Comment 11 Fedora Update System 2016-06-16 15:55:06 UTC
ioprocess-0.16.1-1.fc24 has been pushed to the Fedora 24 testing repository. If problems still persist, please make note of it in this bug report.
See https://fedoraproject.org/wiki/QA:Updates_Testing for
instructions on how to install test updates.
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2016-dfdd83c234

Comment 12 Fedora Update System 2016-06-17 18:55:03 UTC
ioprocess-0.16.1-1.fc23 has been pushed to the Fedora 23 testing repository. If problems still persist, please make note of it in this bug report.
See https://fedoraproject.org/wiki/QA:Updates_Testing for
instructions on how to install test updates.
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2016-f2bcab1a73

Comment 13 Fedora Update System 2016-07-05 05:00:31 UTC
ioprocess-0.16.1-1.fc24 has been pushed to the Fedora 24 stable repository. If problems still persist, please make note of it in this bug report.

Comment 14 Fedora Update System 2016-07-05 08:25:51 UTC
ioprocess-0.16.1-1.fc23 has been pushed to the Fedora 23 stable repository. If problems still persist, please make note of it in this bug report.