diff --git a/kdelibs-4.14.17-gcc6.patch b/kdelibs-4.14.17-gcc6_literals.patch similarity index 67% rename from kdelibs-4.14.17-gcc6.patch rename to kdelibs-4.14.17-gcc6_literals.patch index 16e1023..70c36c2 100644 --- a/kdelibs-4.14.17-gcc6.patch +++ b/kdelibs-4.14.17-gcc6_literals.patch @@ -1,27 +1,3 @@ -diff -up kdelibs-4.14.17/ConfigureChecks.cmake.gcc6 kdelibs-4.14.17/ConfigureChecks.cmake ---- kdelibs-4.14.17/ConfigureChecks.cmake.gcc6 2016-02-11 23:06:08.000000000 -0600 -+++ kdelibs-4.14.17/ConfigureChecks.cmake 2016-02-12 19:14:07.707788177 -0600 -@@ -244,7 +244,7 @@ check_prototype_exists(unsetenv stdlib.h - check_prototype_exists(usleep unistd.h HAVE_USLEEP_PROTO) - check_prototype_exists(initgroups "unistd.h;sys/types.h;unistd.h;grp.h" HAVE_INITGROUPS_PROTO) - check_prototype_exists(setreuid unistd.h HAVE_SETREUID_PROTO) --check_prototype_exists(trunc math.h HAVE_TRUNC) -+check_prototype_exists(truncf math.h HAVE_TRUNC) - - # check for existing datatypes - -diff -up kdelibs-4.14.17/khtml/dom/dom2_traversal.h.gcc6 kdelibs-4.14.17/khtml/dom/dom2_traversal.h ---- kdelibs-4.14.17/khtml/dom/dom2_traversal.h.gcc6 2016-02-12 19:27:45.874888043 -0600 -+++ kdelibs-4.14.17/khtml/dom/dom2_traversal.h 2016-02-12 19:26:11.777418711 -0600 -@@ -214,7 +214,7 @@ public: - * - */ - enum ShowCode { -- SHOW_ALL = 0xFFFFFFFF, -+ SHOW_ALL = (int)0xFFFFFFFF, - SHOW_ELEMENT = 0x00000001, - SHOW_ATTRIBUTE = 0x00000002, - SHOW_TEXT = 0x00000004, diff -up kdelibs-4.14.17/solid/solid/backends/shared/cpufeatures.cpp.gcc6 kdelibs-4.14.17/solid/solid/backends/shared/cpufeatures.cpp --- kdelibs-4.14.17/solid/solid/backends/shared/cpufeatures.cpp.gcc6 2016-02-11 23:06:08.000000000 -0600 +++ kdelibs-4.14.17/solid/solid/backends/shared/cpufeatures.cpp 2016-02-12 19:14:07.708788182 -0600 diff --git a/kdelibs-4.14.17-gcc6_narrowing_hack.patch b/kdelibs-4.14.17-gcc6_narrowing_hack.patch new file mode 100644 index 0000000..4a7170f --- /dev/null +++ b/kdelibs-4.14.17-gcc6_narrowing_hack.patch @@ -0,0 +1,12 @@ +diff -up kdelibs-4.14.17/khtml/dom/dom2_traversal.h.gcc6 kdelibs-4.14.17/khtml/dom/dom2_traversal.h +--- kdelibs-4.14.17/khtml/dom/dom2_traversal.h.gcc6 2016-02-12 19:27:45.874888043 -0600 ++++ kdelibs-4.14.17/khtml/dom/dom2_traversal.h 2016-02-12 19:26:11.777418711 -0600 +@@ -214,7 +214,7 @@ public: + * + */ + enum ShowCode { +- SHOW_ALL = 0xFFFFFFFF, ++ SHOW_ALL = (int)0xFFFFFFFF, + SHOW_ELEMENT = 0x00000001, + SHOW_ATTRIBUTE = 0x00000002, + SHOW_TEXT = 0x00000004, diff --git a/kdelibs-4.14.17-glibc_trunc.patch b/kdelibs-4.14.17-glibc_trunc.patch new file mode 100644 index 0000000..af3b6f5 --- /dev/null +++ b/kdelibs-4.14.17-glibc_trunc.patch @@ -0,0 +1,12 @@ +diff -up kdelibs-4.14.17/ConfigureChecks.cmake.gcc6 kdelibs-4.14.17/ConfigureChecks.cmake +--- kdelibs-4.14.17/ConfigureChecks.cmake.gcc6 2016-02-11 23:06:08.000000000 -0600 ++++ kdelibs-4.14.17/ConfigureChecks.cmake 2016-02-12 19:14:07.707788177 -0600 +@@ -244,7 +244,7 @@ check_prototype_exists(unsetenv stdlib.h + check_prototype_exists(usleep unistd.h HAVE_USLEEP_PROTO) + check_prototype_exists(initgroups "unistd.h;sys/types.h;unistd.h;grp.h" HAVE_INITGROUPS_PROTO) + check_prototype_exists(setreuid unistd.h HAVE_SETREUID_PROTO) +-check_prototype_exists(trunc math.h HAVE_TRUNC) ++check_prototype_exists(truncf math.h HAVE_TRUNC) + + # check for existing datatypes + diff --git a/kdelibs.spec b/kdelibs.spec index 86e42fc..d10acb0 100644 --- a/kdelibs.spec +++ b/kdelibs.spec @@ -18,6 +18,9 @@ %if 0%{?fedora} %define herqq 1 %endif +%if 0%{?fedora} > 23 +%define nepomuk 1 +%endif # to build/include QCH apidocs or not (currently broken) #define apidocs_qch 1 %if 0%{?rhel} > 6 || 0%{?fedora} > 17 @@ -51,7 +54,7 @@ Summary: KDE Libraries # shipped with kde applications, version... %global apps_version 15.12.2 Version: 4.14.17 -Release: 2%{?dist} +Release: 3%{?dist} Name: kdelibs Epoch: 6 @@ -182,8 +185,14 @@ Patch62: kdelibs-4.11.3-arm.patch # opening a terminal in Konqueror / Dolphin does not inherit environment variables Patch64: kdelibs-4.13.2-invokeTerminal.patch -# gcc6 FTBFS -Patch65: kdelibs-4.14.17-gcc6.patch +# newer glibc has 2 prototypes for trunc, check for ftrunc instead +Patch65: kdelibs-4.14.17-glibc_trunc.patch + +# gcc6 FTBFS: literals +Patch66: kdelibs-4.14.17-gcc6_literals.patch + +# gcc6 FTBFS: maybe easier/cleaner to build with: -std=gnu++98 or -Wno-error-narrowing +Patch67: kdelibs-4.14.17-gcc6_narrowing_hack.patch ## upstream # 4.14 branch @@ -316,7 +325,8 @@ Requires: pkgconfig(libattica) >= %{attica_ver} Requires: pkgconfig(openssl) Requires: pkgconfig(phonon) %if ! 0%{?nepomuk} -# considered part of nepomuk-devel +Provides: kdelibs4-nepomuk-devel = %{version}-%{release} +%{?_isa:Provides: kdelibs4-nepomuk-devel%{?_isa} = %{version}-%{release}} Provides: nepomuk-devel = %{version}-%{release} Requires: pkgconfig(shared-desktop-ontologies) ## Can consider dropping, thanks to Drop-Nepomuk-from-KParts-LINK_INTERFACE_LIBRARIES.patch @@ -329,6 +339,7 @@ Requires: qt4-devel This package includes the header files you will need to compile applications for KDE 4. +%if 0%{?nepomuk} %package nepomuk Summary: KDE Nepomuk library Provides: kdelibs4-nepomuk = %{version}-%{release} @@ -341,14 +352,14 @@ Requires: soprano%{?_isa} >= %{soprano_version} %package nepomuk-devel Summary: Development files for KDE Nepomuk -Obsoletes: kdelibs < 6:4.14.3-10 -Provides: kdelibs4-nepomuk = %{version}-%{release} -%{?_isa:Provides: kdelibs4-nepomuk%{?_isa} = %{version}-%{release}} +Provides: kdelibs4-nepomuk-devel = %{version}-%{release} +%{?_isa:Provides: kdelibs4-nepomuk-devel%{?_isa} = %{version}-%{release}} Requires: %{name}-nepomuk%{?_isa} = %{?epoch:%{epoch}:}%{version}-%{release} Requires: pkgconfig(shared-desktop-ontologies) Requires: pkgconfig(soprano) %description nepomuk-devel %{summary}. +%endif ## TODO: split out ktexteditor-devel bits too? -- rex %package ktexteditor @@ -366,8 +377,10 @@ BuildArch: noarch %description -n kde-apps-rpm-macros %{summary} +%if 0%{?webkit} %package webkit Summary: KDE WebKit support library +BuildRequires: pkgconfig(QtWebKit) # upgrade path, when -webkit subpkg landed Obsoletes: kdelibs < 6:4.13.2-6 Provides: kdelibs4-webkit = %{version}-%{release} @@ -387,6 +400,7 @@ Requires: %{name}-devel%{?_isa} = %{?epoch:%{epoch}:}%{version}-%{release} Requires: pkgconfig(QtWebKit) %description webkit-devel %{summary}. +%endif %package apidocs Summary: KDE 4 API documentation @@ -442,7 +456,9 @@ sed -i -e "s|@@VERSION_RELEASE@@|%{version}-%{release}|" kio/kio/kprotocolmanage %patch61 -p1 -b .dot %patch62 -p1 -b .arm-plasma %patch64 -p1 -b .invokeTerminal -%patch65 -p1 -b .gcc6 +%patch65 -p1 -b .glibc_trunc +%patch66 -p1 -b .gcc6_literals +%patch67 -p1 -b .gcc6_narrowing_hack # upstream patches @@ -459,7 +475,7 @@ sed -i -e "s|@@VERSION_RELEASE@@|%{version}-%{release}|" kio/kio/kprotocolmanage %build -mkdir -p %{_target_platform} +mkdir %{_target_platform} pushd %{_target_platform} %{cmake_kde4} \ -DHUPNP_ENABLED:BOOL=ON \ @@ -618,7 +634,6 @@ update-mime-database %{?fedora:-n} %{_datadir}/mime &> /dev/null || : %{_kde4_bindir}/ktelnetservice %{_kde4_bindir}/kunittestmodrunner %{_kde4_bindir}/kwrapper4 -%{_kde4_bindir}/nepomuk-rcgen %{_kde4_bindir}/meinproc4 %{_kde4_bindir}/meinproc4_simple %{_kde4_appsdir}/kauth/ @@ -723,6 +738,27 @@ update-mime-database %{?fedora:-n} %{_datadir}/mime &> /dev/null || : %{_mandir}/man8/kdeinit4.8* %{_mandir}/man8/meinproc4.8* +%if 0%{?nepomuk} +%post nepomuk -p /sbin/ldconfig +%postun nepomuk -p /sbin/ldconfig + +%files nepomuk +%{_kde4_libdir}/libnepomukquery.so.4* +%{_kde4_libdir}/libnepomuk.so.4* +%{_kde4_libdir}/libnepomukutils.so.4* + +%files nepomuk-devel +%{_kde4_bindir}/nepomuk-rcgen +%{_kde4_includedir}/config-nepomuk.h +%{_kde4_includedir}/KDE/Nepomuk/ +%{_kde4_includedir}/nepomuk/ +%{_kde4_libdir}/libnepomukquery.so +%{_kde4_libdir}/libnepomuk.so +%{_kde4_libdir}/libnepomukutils.so +%{_kde4_appsdir}/cmake/modules/NepomukAddOntologyClasses.cmake +%{_kde4_appsdir}/cmake/modules/NepomukMacros.cmake +%endif + %if 0%{?webkit} %post webkit -p /sbin/ldconfig %postun webkit -p /sbin/ldconfig @@ -759,6 +795,19 @@ update-mime-database %{?fedora:-n} %{_datadir}/mime &> /dev/null || : %{_kde4_libdir}/cmake/KDeclarative/ %{_kde4_libdir}/kde4/devel/ +%if ! 0%{?nepomuk} +%{_kde4_bindir}/nepomuk-rcgen +%else +%exclude %{_kde4_includedir}/config-nepomuk.h +%exclude %{_kde4_includedir}/KDE/Nepomuk +%exclude %{_kde4_includedir}/nepomuk/ +%exclude %{_kde4_libdir}/libnepomukquery.so +%exclude %{_kde4_libdir}/libnepomuk.so +%exclude %{_kde4_libdir}/libnepomukutils.so +%exclude %{_kde4_appsdir}/cmake/modules/NepomukAddOntologyClasses.cmake +%exclude %{_kde4_appsdir}/cmake/modules/NepomukMacros.cmake +%endif + %if 0%{?webkit} %exclude %{_kde4_includedir}/kdewebkit_export.h %exclude %{_kde4_includedir}/kgraphicswebview.h @@ -799,7 +848,11 @@ update-mime-database %{?fedora:-n} %{_datadir}/mime &> /dev/null || : %changelog -* Fri Feb 12 2016 Rex Dieter 4.14.17-2 +* Wed Feb 17 2016 Rex Dieter - 6:4.14.17-3 +- split up gcc patches, +- -nepomuk(-devel) subpkgs (f24+) + +* Fri Feb 12 2016 Rex Dieter 6:4.14.17-2 - kdelibs-4.14.17 FTBFS * Fri Feb 12 2016 Rex Dieter 6:4.14.17-1