Summary: | graphics/libkdcraw-kde4 : broken with update to graphics/libraw (breaks all KDE4 on F8, F9, DF) | ||||||
---|---|---|---|---|---|---|---|
Product: | Ports & Packages | Reporter: | John Marino <marino> | ||||
Component: | Individual Port(s) | Assignee: | freebsd-kde (group) <kde> | ||||
Status: | Closed FIXED | ||||||
Severity: | Affects Only Me | CC: | alonso, bahlgren, kde | ||||
Priority: | --- | ||||||
Version: | Latest | ||||||
Hardware: | Any | ||||||
OS: | Any | ||||||
Attachments: |
|
Description
John Marino
2015-06-09 15:50:25 UTC
Created attachment 157640 [details] Enable C++ exceptions on GCC area51 revision 10784, see http://src.mouf.net/area51/revision/?rev=10784 for more info Hi, Rebuilding x11/kdelibs4 after applying the attached patch should fix libkdcraw and it's consumers, however it might introduce new issues. Can you try it and provide feedback? what would be considered success? If kde4libs is rebuilt and everything that depends on it (somewhere) is rebuilt, is that considered a success? I can only test that on DF, by the way. Now that I think of it there either is no unwinding information because exception handling is not supported - or there is no unwinding information because there's no exception handling in the code (would violate fno-exceptions and previously have broken the build), so the result is the same: no unwinding information and throw statements result in ABORT(3). Therefore I guess you won't even have to rebuild the kdelibs consumers (other than libkdcraw), because there's no runtime/ABI changes, just a new way to call ABORT(3) at this time. Alonso, thanks for the patch! I've tried the patch on 9.3-REL and it works as far as I have tested. I built everything depending on kdelibs with poudriere and did pkg install -fR kdelibs just to be sure. I also tested displaying some raw images with showfoto and gwenview - that worked too. A commit references this bug: Author: rakuco Date: Mon Jun 15 17:15:01 UTC 2015 New revision: 389739 URL: https://svnweb.freebsd.org/changeset/ports/389739 Log: Add upstream patch to fix the GCC build after r388490. libraw 0.16.1 started shipping some code that uses C++ exceptions. KDE code, on the other hand, disables exceptions by default, and users must opt-in in CMake to use them. clang is the exception and exceptions are always enabled when using it, which is why the build did not break with it. Import an upstream commit that does exactly that. Bump PORTREVISION to make sure that all users build the port with exception support. Done in collaboration with alonso@. PR: 200734 Changes: head/graphics/libkdcraw-kde4/Makefile head/graphics/libkdcraw-kde4/files/ head/graphics/libkdcraw-kde4/files/patch-git_46898ec9 |