Bug 196707 - [MAINTAINER] graphics/shotwell: Fix build after webkit-gtk3 updated to 2.4.8
Summary: [MAINTAINER] graphics/shotwell: Fix build after webkit-gtk3 updated to 2.4.8
Status: Closed Overcome By Events
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: amd64 Any
: --- Affects Only Me
Assignee: Thomas Zander
URL:
Keywords: patch, patch-ready
Depends on:
Blocks:
 
Reported: 2015-01-14 06:30 UTC by Lawrence Chen
Modified: 2015-03-28 15:23 UTC (History)
2 users (show)

See Also:
koobs: maintainer-feedback+


Attachments
patch file (533 bytes, patch)
2015-01-14 06:30 UTC, Lawrence Chen
no flags Details | Diff
new, non-OSVERSION dependent patch (368 bytes, patch)
2015-03-21 23:01 UTC, Lawrence Chen
no flags Details | Diff
fix Makefile ordering (373 bytes, patch)
2015-03-22 21:30 UTC, Christoph Moench-Tegeder
cmt: maintainer-approval+
Details | Diff
my corrected patch (606 bytes, patch)
2015-03-26 15:58 UTC, Lawrence Chen
no flags Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Lawrence Chen 2015-01-14 06:30:05 UTC
Created attachment 151602 [details]
patch file

With the upgrade of webkit-gtk3 to 2.4.8 and USES of 'compiler:c++11-lib', this was one of three ports that I encountered calling for similar patches as used when this occurred for webkit-gtk2.

Additionally, if the OPENMP option is selected, libc++.so could not be found.  This used to be a dependency of 'www/webkit-gkt3', but it isn't anymore since it USES 'compiler:c++11-lib'.

For my FreeBSD 9.3 builds, I changed it to use libstdc++.so instead.  As for 10+, I'm not sure which would be the correct way to go, but I added a LIB_DEPENDS for 'libc++.so'.
Comment 1 Bugzilla Automation freebsd_committer freebsd_triage 2015-01-14 06:30:05 UTC
Maintainer CC'd
Comment 2 Christoph Moench-Tegeder freebsd_committer freebsd_triage 2015-02-23 22:08:30 UTC
finally I got this and the crash reported in #196236 fixed without breaking build or OpenMP for me.
Please see patch over there: https://bugs.freebsd.org/bugzilla/attachment.cgi?id=153401
Comment 3 Lawrence Chen 2015-03-21 23:01:12 UTC
Created attachment 154643 [details]
new, non-OSVERSION dependent patch

Yeah, haven't been on computer much in a long time (and still no timeline on when I'll get my digital pictures processed to share with relatives -- seems digital has made sharing photos take more time now ;)

....
hack out lots of rambling on what might be the fix, then have computer lock up, recover comment using Lazarus extension, but then decide on a different solution.
....

Decided the solution would be to do the attached.

'compiler:c++11-lib' is wanted because it is what 'www/webkit-gtk3' used, and its use wasn't OSVERSION dependent.  Though suspect on FreeBSD 10+ its satisfied by base clang, while on <10 it needs ports gcc.

While libraw + OPENMP used "OPENMP_USE= gcc=yes".

This would also likely be sufficient here, figure 'compiler:gcc-c++11-lib' would be safest.

This USES appears to force use of ports gcc, and have the framework decide on whether libc++ is needed.

....

It wasn't an issue before, because before 'www/webkit-gtk3' switched to using 'compiler:c++11-lib' (r376609), it would use 'lang/clang34' and 'devel/libc++' if OSVERSION < 1000019.
Comment 4 Christoph Moench-Tegeder freebsd_committer freebsd_triage 2015-03-22 21:30:20 UTC
Created attachment 154678 [details]
fix Makefile ordering

You're right, this seems to work. Duh, I was thinking too complicated :)
Only to make it really work, the OPENMP_USES-variables have to go before bsd.port.options.mk to take effect.
Ready for committer, thanks.
Comment 5 Kubilay Kocak freebsd_committer freebsd_triage 2015-03-23 07:25:45 UTC
Is attachment 154643 [details] now obsolete?
Comment 6 Christoph Moench-Tegeder freebsd_committer freebsd_triage 2015-03-23 21:09:29 UTC
(In reply to Kubilay Kocak from comment #5)
yes, https://bugs.freebsd.org/bugzilla/attachment.cgi?id=154643 is now obsolete - but it looks like I cannot set "obsolete" on other people's patches (or am I missing something?)

https://bugs.freebsd.org/bugzilla/attachment.cgi?id=154678 is the correct version of that patch.
Comment 7 Lawrence Chen 2015-03-26 15:58:17 UTC
Created attachment 154835 [details]
my corrected patch

FWIW, I had intended to upload this corrected patch after discovering the problem in doing a 'poudriere testport' on it.  I did another run to check that the fix I had made was right....but there had been enough dependencies updated between runs that it was going to take hours to see the results.

Then my computer crashed, and I forgot to check if I had hit submit or not.

Can't confirm that things work between OPENMP on or off, as I don't have any FreeBSD 10.x, yet (bad enough that I can't rebuild ports for 9.3 in poudriere in preparation of upgrading poudriere server from 9.2 ;)
Comment 8 John Marino freebsd_committer freebsd_triage 2015-03-27 15:46:17 UTC
okay, thanks.  I'll promote this, but the committer needs to build on FreeBSD 10.1
Comment 9 Christoph Moench-Tegeder freebsd_committer freebsd_triage 2015-03-28 14:54:30 UTC
we can obsolete this bug now - there's the next shotwell version out and I just filed the upgrade PR ports/198986 where I integrated all the changes from here.
Comment 10 Thomas Zander freebsd_committer freebsd_triage 2015-03-28 15:23:24 UTC
Obsoleted by bug 198986