From 29771c37c9f9e304d50921d95fc250131396ea7c Mon Sep 17 00:00:00 2001 From: Eric Bavier Date: Tue, 5 Jan 2016 16:09:27 -0600 Subject: [PATCH] gnu: boost: Update to 1.60.0. * gnu/packages/boost.scm (boost): Update to 1.60.0. [source]: Remove patch. * gnu/packages/patches/boost-mips-avoid-m32.patch: Delete patch * gnu-system.am (dist_patch_DATA): Remove patch. Also fix dependent packages: * gnu/packages/patches/csound-header-ordering.patch: New patch. * gnu/packages/audio.scm (csound)[source]: Use it. [arguments]: Add 'set-flags phase. * gnu/packages/patches/libcmis-fix-test-onedrive.patch: New patch. * gnu/packages/libreoffice.scm (libcmis)[source]: Use it. (libreoffice)[arguments]: Add LDFLAGS to #:configure-flags. (librevenge)[inputs]: Move boost from here... [propogated-inputs]: to here. [arguments]: Add LDFLAGS to #:configure-flags. * gnu/packages/patches/openimageio-boost-1.60.patch: New patch. * gnu/packages/graphics.scm (openimageio): Use it. * gnu-system.am (dist_patch_DATA): Add patches. --- gnu-system.am | 4 +- gnu/packages/audio.scm | 14 ++++++- gnu/packages/boost.scm | 5 +-- gnu/packages/graphics.scm | 3 +- gnu/packages/libreoffice.scm | 15 +++++-- gnu/packages/patches/boost-mips-avoid-m32.patch | 15 ------- gnu/packages/patches/csound-header-ordering.patch | 20 +++++++++ .../patches/libcmis-fix-test-onedrive.patch | 35 ++++++++++++++++ gnu/packages/patches/openimageio-boost-1.60.patch | 47 ++++++++++++++++++++++ 9 files changed, 132 insertions(+), 26 deletions(-) delete mode 100644 gnu/packages/patches/boost-mips-avoid-m32.patch create mode 100644 gnu/packages/patches/csound-header-ordering.patch create mode 100644 gnu/packages/patches/libcmis-fix-test-onedrive.patch create mode 100644 gnu/packages/patches/openimageio-boost-1.60.patch diff --git a/gnu-system.am b/gnu-system.am index 61dfced..ee1b12b 100644 --- a/gnu-system.am +++ b/gnu-system.am @@ -416,7 +416,6 @@ dist_patch_DATA = \ gnu/packages/patches/binutils-loongson-workaround.patch \ gnu/packages/patches/bitlbee-configure-doc-fix.patch \ gnu/packages/patches/bluez-tests.patch \ - gnu/packages/patches/boost-mips-avoid-m32.patch \ gnu/packages/patches/byobu-writable-status.patch \ gnu/packages/patches/calibre-drop-unrar.patch \ gnu/packages/patches/calibre-no-updates-dialog.patch \ @@ -429,6 +428,7 @@ dist_patch_DATA = \ gnu/packages/patches/cpufrequtils-fix-aclocal.patch \ gnu/packages/patches/crda-optional-gcrypt.patch \ gnu/packages/patches/crossmap-allow-system-pysam.patch \ + gnu/packages/patches/csound-header-ordering.patch \ gnu/packages/patches/cssc-gets-undeclared.patch \ gnu/packages/patches/cssc-missing-include.patch \ gnu/packages/patches/clucene-contribs-lib.patch \ @@ -544,6 +544,7 @@ dist_patch_DATA = \ gnu/packages/patches/libarchive-mtree-filename-length-fix.patch \ gnu/packages/patches/libbonobo-activation-test-race.patch \ gnu/packages/patches/libcanberra-sound-theme-freedesktop.patch \ + gnu/packages/patches/libcmis-fix-test-onedrive.patch \ gnu/packages/patches/libdrm-symbol-check.patch \ gnu/packages/patches/libevent-dns-tests.patch \ gnu/packages/patches/libmtp-devices.patch \ @@ -633,6 +634,7 @@ dist_patch_DATA = \ gnu/packages/patches/nvi-dbpagesize-binpower.patch \ gnu/packages/patches/nvi-db4.patch \ gnu/packages/patches/openexr-missing-samples.patch \ + gnu/packages/patches/openimageio-boost-1.60.patch \ gnu/packages/patches/openjpeg-CVE-2015-6581.patch \ gnu/packages/patches/openjpeg-use-after-free-fix.patch \ gnu/packages/patches/openssl-runpath.patch \ diff --git a/gnu/packages/audio.scm b/gnu/packages/audio.scm index cf066b5..8b2656d 100644 --- a/gnu/packages/audio.scm +++ b/gnu/packages/audio.scm @@ -318,7 +318,8 @@ tools (analyzer, mono/stereo tools, crossovers).") version "/Csound" version ".tar.gz")) (sha256 (base32 - "0a1sni6lr7qpwywpggbkp0ia3h9bwwgf9i87gsag8ra2h30v82hd")))) + "0a1sni6lr7qpwywpggbkp0ia3h9bwwgf9i87gsag8ra2h30v82hd")) + (patches (list (search-patch "csound-header-ordering.patch"))))) (build-system cmake-build-system) (arguments ;; Work around this error on x86_64 with libc 2.22+: @@ -1022,7 +1023,16 @@ software.") #:configure-flags (list (string-append "--boost-includes=" (assoc-ref %build-inputs "boost") - "/include")))) + "/include")) + #:phases (modify-phases %standard-phases + (add-before + 'configure 'set-flags + (lambda* (#:key inputs #:allow-other-keys) + ;; See e.g. https://github.com/lvtk/lvtk/issues/21 + (setenv "LDFLAGS" + (string-append + "-L" (assoc-ref inputs "boost") "/lib " + "-lboost_system"))))))) (inputs `(("boost" ,boost) ("lv2" ,lv2))) diff --git a/gnu/packages/boost.scm b/gnu/packages/boost.scm index d3d0c03..08935d4 100644 --- a/gnu/packages/boost.scm +++ b/gnu/packages/boost.scm @@ -33,7 +33,7 @@ (define-public boost (package (name "boost") - (version "1.58.0") + (version "1.60.0") (source (origin (method url-fetch) (uri (string-append @@ -42,8 +42,7 @@ ".tar.bz2")) (sha256 (base32 - "1rfkqxns60171q62cppiyzj8pmsbwp1l8jd7p6crriryqd7j1z7x")) - (patches (list (search-patch "boost-mips-avoid-m32.patch"))))) + "0fzx6dwqbrkd4bcd8pjv0fpapwmrxxwr8yx9g67lihlsk3zzysk8")))) (build-system gnu-build-system) (inputs `(("zlib" ,zlib))) (native-inputs diff --git a/gnu/packages/graphics.scm b/gnu/packages/graphics.scm index 02e65d3..c9e850c 100644 --- a/gnu/packages/graphics.scm +++ b/gnu/packages/graphics.scm @@ -143,7 +143,8 @@ storage of the \"EXR\" file format for storing 16-bit floating-point images.") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "0mn7cz19mn8dcrhkq15h25gl20ammr1wz0j2j3c2vxs6ph7zn8jy")))) + "0mn7cz19mn8dcrhkq15h25gl20ammr1wz0j2j3c2vxs6ph7zn8jy")) + (patches (list (search-patch "openimageio-boost-1.60.patch"))))) (build-system cmake-build-system) ;; FIXME: To run all tests successfully, test image sets from multiple ;; third party sources have to be present. For details see diff --git a/gnu/packages/libreoffice.scm b/gnu/packages/libreoffice.scm index da7e275..79e13dc 100644 --- a/gnu/packages/libreoffice.scm +++ b/gnu/packages/libreoffice.scm @@ -25,6 +25,7 @@ non-copyleft x11-style)) #:use-module (guix packages) #:use-module (guix utils) + #:use-module (gnu packages) #:use-module (gnu packages autotools) #:use-module (gnu packages base) #:use-module (gnu packages bison) @@ -130,15 +131,18 @@ CSV, CSS and XML.") "03ygxyb0vfjv8raif5q62sl33b54wkr5rzgadb8slijm6k281wpn")))) (build-system gnu-build-system) (native-inputs - `(("boost" ,boost) - ("cppunit" ,cppunit) + `(("cppunit" ,cppunit) ("doxygen" ,doxygen) ("pkg-config" ,pkg-config))) (inputs `(("zlib" ,zlib))) + (propagated-inputs ; Referenced by .la files + `(("boost" ,boost))) (arguments ;; avoid triggering configure errors by simple inclusion of boost headers - `(#:configure-flags '("--disable-werror"))) + `(#:configure-flags '("--disable-werror" + ;; Avoid undefined library references + "LDFLAGS=-lboost_system"))) (home-page "http://sourceforge.net/p/libwpd/wiki/librevenge/") (synopsis "Document importer for office suites") (description "Librevenge is a base library for writing document import @@ -244,7 +248,8 @@ working with graphics in the WPG (WordPerfect Graphics) format.") (uri (string-append "mirror://sourceforge/" name "/" name "-" version ".tar.gz")) (sha256 (base32 - "1dprvk4fibylv24l7gr49gfqbkfgmxynvgssvdcycgpf7n8h4zm8")))) + "1dprvk4fibylv24l7gr49gfqbkfgmxynvgssvdcycgpf7n8h4zm8")) + (patches (list (search-patch "libcmis-fix-test-onedrive.patch"))))) (build-system gnu-build-system) (native-inputs `(("cppunit" ,cppunit) @@ -805,6 +810,8 @@ and to return information on pronunciations, meanings and synonyms.") "--with-system-libs" ; enable all --with-system-* flags (string-append "--with-boost-libdir=" (assoc-ref %build-inputs "boost") "/lib") + ;; Avoid undefined symbols required by boost::spirit + "LDFLAGS=-lboost_system" ;; Avoid a dependency on ucpp. "--with-idlc-cpp=cpp" ;; The fonts require an external tarball (crosextrafonts). diff --git a/gnu/packages/patches/boost-mips-avoid-m32.patch b/gnu/packages/patches/boost-mips-avoid-m32.patch deleted file mode 100644 index 811c9fb..0000000 --- a/gnu/packages/patches/boost-mips-avoid-m32.patch +++ /dev/null @@ -1,15 +0,0 @@ -The following patch prevents the use of the -m32 flag on mips, where it -is not understood by gcc, as well as other non-x86 architectures. - -diff -u -r boost_1_58_0.orig/tools/build/src/tools/gcc.jam boost_1_58_0/tools/build/src/tools/gcc.jam ---- boost_1_58_0.orig/tools/build/src/tools/gcc.jam 2015-04-04 19:25:07.000000000 +0200 -+++ boost_1_58_0/tools/build/src/tools/gcc.jam 2015-07-10 01:08:19.822733823 +0200 -@@ -451,7 +451,7 @@ - else - { - local arch = [ feature.get-values architecture : $(properties) ] ; -- if $(arch) != arm -+ if $(arch) = x86 - { - if $(model) = 32 - { diff --git a/gnu/packages/patches/csound-header-ordering.patch b/gnu/packages/patches/csound-header-ordering.patch new file mode 100644 index 0000000..3640d12 --- /dev/null +++ b/gnu/packages/patches/csound-header-ordering.patch @@ -0,0 +1,20 @@ +Prevent compilation issues with boost-1.60.0. + +Reported upstream at https://github.com/csound/csound/issues/570 + +--- Csound6.05/Opcodes/chua/ChuaOscillator.cpp 2015-04-25 14:06:22.995646234 -0500 ++++ Csound6.05/Opcodes/chua/ChuaOscillator.cpp 2015-12-21 10:31:58.182362640 -0600 +@@ -117,11 +117,12 @@ + // d = sys_variables(12); + // gnor = a*(x.^3) + b*(x.^2) + c*x + d; + +-#include + #include + using namespace boost::numeric; + #include + ++#include ++ + #undef CS_KSMPS + #define CS_KSMPS (opds.insdshead->ksmps) + diff --git a/gnu/packages/patches/libcmis-fix-test-onedrive.patch b/gnu/packages/patches/libcmis-fix-test-onedrive.patch new file mode 100644 index 0000000..adf2e0b --- /dev/null +++ b/gnu/packages/patches/libcmis-fix-test-onedrive.patch @@ -0,0 +1,35 @@ +Patch from resolution of http://sourceforge.net/p/libcmis/tickets/13/ + +From 814c7845d53688b35a747cf193c2ff99e40a8652 Mon Sep 17 00:00:00 2001 +From: Jonathan Wakely +Date: Wed, 2 Sep 2015 16:35:45 +0100 +Subject: [PATCH 5/5] Remove invalid comments from test JSON file. + +--- + qa/libcmis/data/onedrive/search-result.json | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/qa/libcmis/data/onedrive/search-result.json b/qa/libcmis/data/onedrive/search-result.json +index 61d250a..2482429 100644 +--- a/qa/libcmis/data/onedrive/search-result.json ++++ b/qa/libcmis/data/onedrive/search-result.json +@@ -8,7 +8,7 @@ + }, + "name":"OneDriveFile", + "description":"", +- "parent_id":"folderA", // path: /A/Wrong File ++ "parent_id":"folderA", + "size":18047, + "upload_location":"https://apis.live.net/v5.0/wrongFileId/content/", + "comments_count":0, +@@ -32,7 +32,7 @@ + }, + "name":"OneDriveFile", + "description":"", +- "parent_id":"folderC", // path: /A/B/C/Right File ++ "parent_id":"folderC", + "size":4, + "upload_location":"https://apis.live.net/v5.0/rightFileId/content/", + "comments_count":0, +-- +2.4.3 \ No newline at end of file diff --git a/gnu/packages/patches/openimageio-boost-1.60.patch b/gnu/packages/patches/openimageio-boost-1.60.patch new file mode 100644 index 0000000..92fc323 --- /dev/null +++ b/gnu/packages/patches/openimageio-boost-1.60.patch @@ -0,0 +1,47 @@ +From 875fbbd92695397bfc83d1cd5fdd4094e1d50199 Mon Sep 17 00:00:00 2001 +From: Larry Gritz +Date: Mon, 28 Dec 2015 11:46:07 -0800 +Subject: [PATCH] Python ImageCache binding fixes -- disable broken calls + +Some of these calls (thankfully undocumented and presumably unused) +are horribly broken. They compiled before, but with new Boost 1.60 +they don't even compile properly. So just comment them out on this +obsolete branch. They are fully fixed in RB-1.6 and beyond. + +--- a/src/python/py_imagecache.cpp ++++ b/src/python/py_imagecache.cpp +@@ -199,23 +199,24 @@ void declare_imagecache() + .def("destroy", &ImageCacheWrap::destroy) + .staticmethod("destroy") + .def("clear", &ImageCacheWrap::clear) +- .def("attribute", &ImageCacheWrap::attribute) ++ // .def("attribute", &ImageCacheWrap::attribute) + .def("attribute", &ImageCacheWrap::attribute_int) + .def("attribute", &ImageCacheWrap::attribute_float) +- .def("attribute", &ImageCacheWrap::attribute_double) +- .def("attribute", &ImageCacheWrap::attribute_char) ++ // .def("attribute", &ImageCacheWrap::attribute_double) ++ // .def("attribute", &ImageCacheWrap::attribute_char) + .def("attribute", &ImageCacheWrap::attribute_string) +- .def("getattribute", &ImageCacheWrap::attribute) ++ // .def("getattribute", &ImageCacheWrap::attribute) + .def("getattribute", &ImageCacheWrap::getattribute_int) + .def("getattribute", &ImageCacheWrap::getattribute_float) +- .def("getattribute", &ImageCacheWrap::getattribute_double) +- .def("getattribute", &ImageCacheWrap::getattribute_char) ++ // .def("getattribute", &ImageCacheWrap::getattribute_double) ++ // .def("getattribute", &ImageCacheWrap::getattribute_char) + .def("getattribute", &ImageCacheWrap::getattribute_string) +- .def("resolve_filename", &ImageCacheWrap::resolve_filename) +- .def("get_image_info", &ImageCacheWrap::get_image_info) +- .def("get_image_info", &ImageCacheWrap::get_image_info_old) ++ // .def("get_image_info", &ImageCacheWrap::get_image_info) ++ // .def("get_image_info", &ImageCacheWrap::get_image_info_old) + .def("get_imagespec", &ImageCacheWrap::get_imagespec) +- .def("get_pixels", &ImageCacheWrap::get_pixels) ++ // .def("get_pixels", &ImageCacheWrap::get_pixels) ++ .def("resolve_filename", &ImageCacheWrap::resolve_filename) ++ + // .def("get_tile", &ImageCacheWrap::get_tile) + // .def("release_tile", &ImageCacheWrap::release_tile) + // .def("tile_pixels", &ImageCacheWrap::tile_pixels) -- 2.5.0