unofficial mirror of guix-devel@gnu.org 
 help / color / mirror / code / Atom feed
* [PATCH] gnu: boost: Update to 1.61.0.
@ 2016-09-19  8:13 Roel Janssen
  2016-09-19 10:11 ` Roel Janssen
  0 siblings, 1 reply; 15+ messages in thread
From: Roel Janssen @ 2016-09-19  8:13 UTC (permalink / raw)
  To: guix-devel

Dear Guix,

I don't know what the impact of the following upgrade is, but I think it
would be good to update Boost to the latest stable version that was
released on May 13th, 2016.

What do you think?

Kind regards,
Roel Janssen

From a6409b0648352cac86a3ceb205ee183c034085f5 Mon Sep 17 00:00:00 2001
From: Roel Janssen <roel@gnu.org>
Date: Mon, 19 Sep 2016 10:08:52 +0200
Subject: [PATCH] gnu: boost: Update to 1.61.0.

* gnu/packages/boost.scm (boost): Update to 1.61.0.
---
 gnu/packages/boost.scm | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/gnu/packages/boost.scm b/gnu/packages/boost.scm
index 8fe8c8e..ccc1f06 100644
--- a/gnu/packages/boost.scm
+++ b/gnu/packages/boost.scm
@@ -34,7 +34,7 @@
 (define-public boost
   (package
     (name "boost")
-    (version "1.60.0")
+    (version "1.61.0")
     (source (origin
               (method url-fetch)
               (uri (string-append
@@ -43,7 +43,7 @@
                     ".tar.bz2"))
               (sha256
                (base32
-                "0fzx6dwqbrkd4bcd8pjv0fpapwmrxxwr8yx9g67lihlsk3zzysk8"))))
+                "0h5nk7pgxf7xsvvshj9qfpsfp9wx6gq9r78n3nx736pxq83bsix5"))))
     (build-system gnu-build-system)
     (inputs `(("zlib" ,zlib)))
     (native-inputs
-- 
2.10.0

^ permalink raw reply related	[flat|nested] 15+ messages in thread

* Re: [PATCH] gnu: boost: Update to 1.61.0.
  2016-09-19  8:13 [PATCH] gnu: boost: Update to 1.61.0 Roel Janssen
@ 2016-09-19 10:11 ` Roel Janssen
  2016-09-19 12:26   ` Ricardo Wurmus
                     ` (3 more replies)
  0 siblings, 4 replies; 15+ messages in thread
From: Roel Janssen @ 2016-09-19 10:11 UTC (permalink / raw)
  To: guix-devel

Roel Janssen writes:

> Dear Guix,
>
> I don't know what the impact of the following upgrade is, but I think it
> would be good to update Boost to the latest stable version that was
> released on May 13th, 2016.
>
> What do you think?
>
> Kind regards,
> Roel Janssen
>
>From a6409b0648352cac86a3ceb205ee183c034085f5 Mon Sep 17 00:00:00 2001
> From: Roel Janssen <roel@gnu.org>
> Date: Mon, 19 Sep 2016 10:08:52 +0200
> Subject: [PATCH] gnu: boost: Update to 1.61.0.
>
> * gnu/packages/boost.scm (boost): Update to 1.61.0.
> ---
>  gnu/packages/boost.scm | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/gnu/packages/boost.scm b/gnu/packages/boost.scm
> index 8fe8c8e..ccc1f06 100644
> --- a/gnu/packages/boost.scm
> +++ b/gnu/packages/boost.scm
> @@ -34,7 +34,7 @@
>  (define-public boost
>    (package
>      (name "boost")
> -    (version "1.60.0")
> +    (version "1.61.0")
>      (source (origin
>                (method url-fetch)
>                (uri (string-append
> @@ -43,7 +43,7 @@
>                      ".tar.bz2"))
>                (sha256
>                 (base32
> -                "0fzx6dwqbrkd4bcd8pjv0fpapwmrxxwr8yx9g67lihlsk3zzysk8"))))
> +                "0h5nk7pgxf7xsvvshj9qfpsfp9wx6gq9r78n3nx736pxq83bsix5"))))
>      (build-system gnu-build-system)
>      (inputs `(("zlib" ,zlib)))
>      (native-inputs

It looks like an upgrade to 1.61.0 causes a build failure for MySQL:

-------------------------- BUILD OUTPUT LOG FOR MYSQL --------------------------
-- BOOST_VERSION_NUMBER is #define BOOST_VERSION 106100
CMake Warning at cmake/boost.cmake:266 (MESSAGE):
  Boost minor version found is 61 we need 60
Call Stack (most recent call first):
  CMakeLists.txt:455 (INCLUDE)


-- BOOST_INCLUDE_DIR /gnu/store/...fzzl-boost-1.61.0/include
-- LOCAL_BOOST_DIR 
-- LOCAL_BOOST_ZIP 
-- Could not find (the correct version of) boost.
-- MySQL currently requires boost_1_60_0

CMake Error at cmake/boost.cmake:81 (MESSAGE):
  You can download it with -DDOWNLOAD_BOOST=1 -DWITH_BOOST=<directory>
------------------------ END BUILD OUTPUT LOG FOR MYSQL ------------------------

So I guess the impact is too large to just go for it.

Do we have a Guix command to find out which packages are dependent on
a package (in this case Boost)?

Kind regards,
Roel Janssen

^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [PATCH] gnu: boost: Update to 1.61.0.
  2016-09-19 10:11 ` Roel Janssen
@ 2016-09-19 12:26   ` Ricardo Wurmus
  2016-09-19 20:31   ` Efraim Flashner
                     ` (2 subsequent siblings)
  3 siblings, 0 replies; 15+ messages in thread
From: Ricardo Wurmus @ 2016-09-19 12:26 UTC (permalink / raw)
  To: Roel Janssen; +Cc: guix-devel


Roel Janssen <roel@gnu.org> writes:

> Roel Janssen writes:
>
>> Dear Guix,
>>
>> I don't know what the impact of the following upgrade is, but I think it
>> would be good to update Boost to the latest stable version that was
>> released on May 13th, 2016.
>>
>> What do you think?
>>
>> Kind regards,
>> Roel Janssen
>>
>>From a6409b0648352cac86a3ceb205ee183c034085f5 Mon Sep 17 00:00:00 2001
>> From: Roel Janssen <roel@gnu.org>
>> Date: Mon, 19 Sep 2016 10:08:52 +0200
>> Subject: [PATCH] gnu: boost: Update to 1.61.0.
>>
>> * gnu/packages/boost.scm (boost): Update to 1.61.0.
>> ---
>>  gnu/packages/boost.scm | 4 ++--
>>  1 file changed, 2 insertions(+), 2 deletions(-)
>>
>> diff --git a/gnu/packages/boost.scm b/gnu/packages/boost.scm
>> index 8fe8c8e..ccc1f06 100644
>> --- a/gnu/packages/boost.scm
>> +++ b/gnu/packages/boost.scm
>> @@ -34,7 +34,7 @@
>>  (define-public boost
>>    (package
>>      (name "boost")
>> -    (version "1.60.0")
>> +    (version "1.61.0")
>>      (source (origin
>>                (method url-fetch)
>>                (uri (string-append
>> @@ -43,7 +43,7 @@
>>                      ".tar.bz2"))
>>                (sha256
>>                 (base32
>> -                "0fzx6dwqbrkd4bcd8pjv0fpapwmrxxwr8yx9g67lihlsk3zzysk8"))))
>> +                "0h5nk7pgxf7xsvvshj9qfpsfp9wx6gq9r78n3nx736pxq83bsix5"))))
>>      (build-system gnu-build-system)
>>      (inputs `(("zlib" ,zlib)))
>>      (native-inputs
>
> It looks like an upgrade to 1.61.0 causes a build failure for MySQL:
>
> -------------------------- BUILD OUTPUT LOG FOR MYSQL --------------------------
> -- BOOST_VERSION_NUMBER is #define BOOST_VERSION 106100
> CMake Warning at cmake/boost.cmake:266 (MESSAGE):
>   Boost minor version found is 61 we need 60
> Call Stack (most recent call first):
>   CMakeLists.txt:455 (INCLUDE)
>
>
> -- BOOST_INCLUDE_DIR /gnu/store/...fzzl-boost-1.61.0/include
> -- LOCAL_BOOST_DIR 
> -- LOCAL_BOOST_ZIP 
> -- Could not find (the correct version of) boost.
> -- MySQL currently requires boost_1_60_0
>
> CMake Error at cmake/boost.cmake:81 (MESSAGE):
>   You can download it with -DDOWNLOAD_BOOST=1 -DWITH_BOOST=<directory>
> ------------------------ END BUILD OUTPUT LOG FOR MYSQL ------------------------
>
> So I guess the impact is too large to just go for it.
>
> Do we have a Guix command to find out which packages are dependent on
> a package (in this case Boost)?

You could use “guix refresh -l boost”.  This gives 190 packages with 395
dependent packages that would need to be rebuilt additionally.

~~ Ricardo

^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [PATCH] gnu: boost: Update to 1.61.0.
  2016-09-19 10:11 ` Roel Janssen
  2016-09-19 12:26   ` Ricardo Wurmus
@ 2016-09-19 20:31   ` Efraim Flashner
  2016-09-19 21:09   ` Eric Bavier
  2016-09-21 16:11   ` Andreas Enge
  3 siblings, 0 replies; 15+ messages in thread
From: Efraim Flashner @ 2016-09-19 20:31 UTC (permalink / raw)
  To: Roel Janssen; +Cc: guix-devel

[-- Attachment #1: Type: text/plain, Size: 3064 bytes --]

On Mon, Sep 19, 2016 at 12:11:57PM +0200, Roel Janssen wrote:
> Roel Janssen writes:
> 
> > Dear Guix,
> >
> > I don't know what the impact of the following upgrade is, but I think it
> > would be good to update Boost to the latest stable version that was
> > released on May 13th, 2016.
> >
> > What do you think?
> >
> > Kind regards,
> > Roel Janssen
> >
> >>From a6409b0648352cac86a3ceb205ee183c034085f5 Mon Sep 17 00:00:00 2001
> > From: Roel Janssen <roel@gnu.org>
> > Date: Mon, 19 Sep 2016 10:08:52 +0200
> > Subject: [PATCH] gnu: boost: Update to 1.61.0.
> >
> > * gnu/packages/boost.scm (boost): Update to 1.61.0.
> > ---
> >  gnu/packages/boost.scm | 4 ++--
> >  1 file changed, 2 insertions(+), 2 deletions(-)
> >
> > diff --git a/gnu/packages/boost.scm b/gnu/packages/boost.scm
> > index 8fe8c8e..ccc1f06 100644
> > --- a/gnu/packages/boost.scm
> > +++ b/gnu/packages/boost.scm
> > @@ -34,7 +34,7 @@
> >  (define-public boost
> >    (package
> >      (name "boost")
> > -    (version "1.60.0")
> > +    (version "1.61.0")
> >      (source (origin
> >                (method url-fetch)
> >                (uri (string-append
> > @@ -43,7 +43,7 @@
> >                      ".tar.bz2"))
> >                (sha256
> >                 (base32
> > -                "0fzx6dwqbrkd4bcd8pjv0fpapwmrxxwr8yx9g67lihlsk3zzysk8"))))
> > +                "0h5nk7pgxf7xsvvshj9qfpsfp9wx6gq9r78n3nx736pxq83bsix5"))))
> >      (build-system gnu-build-system)
> >      (inputs `(("zlib" ,zlib)))
> >      (native-inputs
> 
> It looks like an upgrade to 1.61.0 causes a build failure for MySQL:
> 
> -------------------------- BUILD OUTPUT LOG FOR MYSQL --------------------------
> -- BOOST_VERSION_NUMBER is #define BOOST_VERSION 106100
> CMake Warning at cmake/boost.cmake:266 (MESSAGE):
>   Boost minor version found is 61 we need 60
> Call Stack (most recent call first):
>   CMakeLists.txt:455 (INCLUDE)
> 
> 
> -- BOOST_INCLUDE_DIR /gnu/store/...fzzl-boost-1.61.0/include
> -- LOCAL_BOOST_DIR 
> -- LOCAL_BOOST_ZIP 
> -- Could not find (the correct version of) boost.
> -- MySQL currently requires boost_1_60_0
> 
> CMake Error at cmake/boost.cmake:81 (MESSAGE):
>   You can download it with -DDOWNLOAD_BOOST=1 -DWITH_BOOST=<directory>
> ------------------------ END BUILD OUTPUT LOG FOR MYSQL ------------------------

I've already hacked mysql to require 1.60.0 instead of 1.59.0, its worth
checking out if changing it to require 1.61.0 works also. Unfortunately
my current machine only has 2 GB of ram and a spinning hard drive so I
can't realiably build mysql.

> 
> So I guess the impact is too large to just go for it.
> 
> Do we have a Guix command to find out which packages are dependent on
> a package (in this case Boost)?
> 
> Kind regards,
> Roel Janssen
> 

-- 
Efraim Flashner   <efraim@flashner.co.il>   אפרים פלשנר
GPG key = A28B F40C 3E55 1372 662D  14F7 41AA E7DC CA3D 8351
Confidentiality cannot be guaranteed on emails sent or received unencrypted

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 819 bytes --]

^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [PATCH] gnu: boost: Update to 1.61.0.
  2016-09-19 10:11 ` Roel Janssen
  2016-09-19 12:26   ` Ricardo Wurmus
  2016-09-19 20:31   ` Efraim Flashner
@ 2016-09-19 21:09   ` Eric Bavier
  2016-09-20  9:10     ` Roel Janssen
  2016-09-21 16:11   ` Andreas Enge
  3 siblings, 1 reply; 15+ messages in thread
From: Eric Bavier @ 2016-09-19 21:09 UTC (permalink / raw)
  To: Roel Janssen; +Cc: guix-devel, Guix-devel

On 2016-09-19 05:11, Roel Janssen wrote:
> Roel Janssen writes:
> 
>> Dear Guix,
>> 
>> I don't know what the impact of the following upgrade is, but I think 
>> it
>> would be good to update Boost to the latest stable version that was
>> released on May 13th, 2016.
>> 
>> What do you think?
>> 
>> Kind regards,
>> Roel Janssen
>> 
>>> From a6409b0648352cac86a3ceb205ee183c034085f5 Mon Sep 17 00:00:00 
>>> 2001
>> From: Roel Janssen <roel@gnu.org>
>> Date: Mon, 19 Sep 2016 10:08:52 +0200
>> Subject: [PATCH] gnu: boost: Update to 1.61.0.
>> 
>> * gnu/packages/boost.scm (boost): Update to 1.61.0.
>> ---
>>  gnu/packages/boost.scm | 4 ++--
>>  1 file changed, 2 insertions(+), 2 deletions(-)
>> 
>> diff --git a/gnu/packages/boost.scm b/gnu/packages/boost.scm
>> index 8fe8c8e..ccc1f06 100644
>> --- a/gnu/packages/boost.scm
>> +++ b/gnu/packages/boost.scm
>> @@ -34,7 +34,7 @@
>>  (define-public boost
>>    (package
>>      (name "boost")
>> -    (version "1.60.0")
>> +    (version "1.61.0")
>>      (source (origin
>>                (method url-fetch)
>>                (uri (string-append
>> @@ -43,7 +43,7 @@
>>                      ".tar.bz2"))
>>                (sha256
>>                 (base32
>> -                
>> "0fzx6dwqbrkd4bcd8pjv0fpapwmrxxwr8yx9g67lihlsk3zzysk8"))))
>> +                
>> "0h5nk7pgxf7xsvvshj9qfpsfp9wx6gq9r78n3nx736pxq83bsix5"))))
>>      (build-system gnu-build-system)
>>      (inputs `(("zlib" ,zlib)))
>>      (native-inputs
> 
> It looks like an upgrade to 1.61.0 causes a build failure for MySQL:
> 
> -------------------------- BUILD OUTPUT LOG FOR MYSQL 
> --------------------------
> -- BOOST_VERSION_NUMBER is #define BOOST_VERSION 106100
> CMake Warning at cmake/boost.cmake:266 (MESSAGE):
>   Boost minor version found is 61 we need 60
> Call Stack (most recent call first):
>   CMakeLists.txt:455 (INCLUDE)
> 
> 
> -- BOOST_INCLUDE_DIR /gnu/store/...fzzl-boost-1.61.0/include
> -- LOCAL_BOOST_DIR
> -- LOCAL_BOOST_ZIP
> -- Could not find (the correct version of) boost.
> -- MySQL currently requires boost_1_60_0
> 
> CMake Error at cmake/boost.cmake:81 (MESSAGE):
>   You can download it with -DDOWNLOAD_BOOST=1 -DWITH_BOOST=<directory>
> ------------------------ END BUILD OUTPUT LOG FOR MYSQL 
> ------------------------
> 
> So I guess the impact is too large to just go for it.
> 
> Do we have a Guix command to find out which packages are dependent on
> a package (in this case Boost)?
> 
> Kind regards,
> Roel Janssen

I looked at this upgrade a few weeks ago.  I took a stab at building the 
complete dependency set, and, for the most part, mysql is the only 
package that breaks.  I fixed this with the below patch (which also 
enable parallel builds that can improve build times significantly):

diff --git a/gnu/packages/boost.scm b/gnu/packages/boost.scm
index bb123d3..f3288d1 100644
--- a/gnu/packages/boost.scm
+++ b/gnu/packages/boost.scm
@@ -34,7 +34,7 @@
  (define-public boost
    (package
      (name "boost")
-    (version "1.60.0")
+    (version "1.61.0")
      (source (origin
                (method url-fetch)
                (uri (string-append
@@ -43,7 +43,7 @@
                      ".tar.bz2"))
                (sha256
                 (base32
-                
"0fzx6dwqbrkd4bcd8pjv0fpapwmrxxwr8yx9g67lihlsk3zzysk8"))))
+                
"0h5nk7pgxf7xsvvshj9qfpsfp9wx6gq9r78n3nx736pxq83bsix5"))))
      (build-system gnu-build-system)
      (inputs `(("zlib" ,zlib)))
      (native-inputs
@@ -53,6 +53,7 @@
      (arguments
       (let ((build-flags
              `("threading=multi" "link=shared"
+              (format #f "-j~a" (parallel-job-count))

                ;; Set the RUNPATH to $libdir so that the libs find each 
other.
                (string-append "linkflags=-Wl,-rpath="
diff --git a/gnu/packages/databases.scm b/gnu/packages/databases.scm
index e05232d..5d7fe13 100644
--- a/gnu/packages/databases.scm
+++ b/gnu/packages/databases.scm
@@ -202,7 +202,7 @@ SQL, Key/Value, XML/XQuery or Java Object storage 
for their data model.")
                 
"11qbib1xpy0zkki7j9ip17hks5kp5zgpcj7x8gy3a4m66lb1mgsh"))))
      (build-system cmake-build-system)
      (arguments
-     '(#:configure-flags
+     `(#:configure-flags
         '("-DBUILD_CONFIG=mysql_release"
           "-DWITH_SSL=system"
           "-DWITH_ZLIB=system"
@@ -229,7 +229,9 @@ SQL, Key/Value, XML/XQuery or Java Object storage 
for their data model.")
                     (lambda _
                       ;; Mysql wants boost-1.59.0 specifically
                       (substitute* "cmake/boost.cmake"
-                                  (("59") "60"))))
+                       (("59")
+                        ,(match (string-split (package-version boost) 
#\.)
+                           ((_ minor . _) minor))))))
                    (add-after
                     'install 'remove-extra-binaries
                     (lambda* (#:key outputs #:allow-other-keys)


-- 
`~Eric

^ permalink raw reply related	[flat|nested] 15+ messages in thread

* Re: [PATCH] gnu: boost: Update to 1.61.0.
  2016-09-19 21:09   ` Eric Bavier
@ 2016-09-20  9:10     ` Roel Janssen
  2016-09-20 20:58       ` Eric Bavier
  0 siblings, 1 reply; 15+ messages in thread
From: Roel Janssen @ 2016-09-20  9:10 UTC (permalink / raw)
  To: Eric Bavier; +Cc: guix-devel, Guix-devel


Eric Bavier writes:

> On 2016-09-19 05:11, Roel Janssen wrote:
>> Roel Janssen writes:
>> 
>>> Dear Guix,
>>> 
>>> I don't know what the impact of the following upgrade is, but I think 
>>> it
>>> would be good to update Boost to the latest stable version that was
>>> released on May 13th, 2016.
>>> 
>>> What do you think?
>>> 
>>> Kind regards,
>>> Roel Janssen
>>> 
>>>> From a6409b0648352cac86a3ceb205ee183c034085f5 Mon Sep 17 00:00:00 
>>>> 2001
>>> From: Roel Janssen <roel@gnu.org>
>>> Date: Mon, 19 Sep 2016 10:08:52 +0200
>>> Subject: [PATCH] gnu: boost: Update to 1.61.0.
>>> 
>>> * gnu/packages/boost.scm (boost): Update to 1.61.0.
>>> ---
>>>  gnu/packages/boost.scm | 4 ++--
>>>  1 file changed, 2 insertions(+), 2 deletions(-)
>>> 
>>> diff --git a/gnu/packages/boost.scm b/gnu/packages/boost.scm
>>> index 8fe8c8e..ccc1f06 100644
>>> --- a/gnu/packages/boost.scm
>>> +++ b/gnu/packages/boost.scm
>>> @@ -34,7 +34,7 @@
>>>  (define-public boost
>>>    (package
>>>      (name "boost")
>>> -    (version "1.60.0")
>>> +    (version "1.61.0")
>>>      (source (origin
>>>                (method url-fetch)
>>>                (uri (string-append
>>> @@ -43,7 +43,7 @@
>>>                      ".tar.bz2"))
>>>                (sha256
>>>                 (base32
>>> -                
>>> "0fzx6dwqbrkd4bcd8pjv0fpapwmrxxwr8yx9g67lihlsk3zzysk8"))))
>>> +                
>>> "0h5nk7pgxf7xsvvshj9qfpsfp9wx6gq9r78n3nx736pxq83bsix5"))))
>>>      (build-system gnu-build-system)
>>>      (inputs `(("zlib" ,zlib)))
>>>      (native-inputs
>> 
>> It looks like an upgrade to 1.61.0 causes a build failure for MySQL:
>> 
>> -------------------------- BUILD OUTPUT LOG FOR MYSQL 
>> --------------------------
>> -- BOOST_VERSION_NUMBER is #define BOOST_VERSION 106100
>> CMake Warning at cmake/boost.cmake:266 (MESSAGE):
>>   Boost minor version found is 61 we need 60
>> Call Stack (most recent call first):
>>   CMakeLists.txt:455 (INCLUDE)
>> 
>> 
>> -- BOOST_INCLUDE_DIR /gnu/store/...fzzl-boost-1.61.0/include
>> -- LOCAL_BOOST_DIR
>> -- LOCAL_BOOST_ZIP
>> -- Could not find (the correct version of) boost.
>> -- MySQL currently requires boost_1_60_0
>> 
>> CMake Error at cmake/boost.cmake:81 (MESSAGE):
>>   You can download it with -DDOWNLOAD_BOOST=1 -DWITH_BOOST=<directory>
>> ------------------------ END BUILD OUTPUT LOG FOR MYSQL 
>> ------------------------
>> 
>> So I guess the impact is too large to just go for it.
>> 
>> Do we have a Guix command to find out which packages are dependent on
>> a package (in this case Boost)?
>> 
>> Kind regards,
>> Roel Janssen
>
> I looked at this upgrade a few weeks ago.  I took a stab at building the 
> complete dependency set, and, for the most part, mysql is the only 
> package that breaks.  I fixed this with the below patch (which also 
> enable parallel builds that can improve build times significantly):
>
> diff --git a/gnu/packages/boost.scm b/gnu/packages/boost.scm
> index bb123d3..f3288d1 100644
> --- a/gnu/packages/boost.scm
> +++ b/gnu/packages/boost.scm
> @@ -34,7 +34,7 @@
>   (define-public boost
>     (package
>       (name "boost")
> -    (version "1.60.0")
> +    (version "1.61.0")
>       (source (origin
>                 (method url-fetch)
>                 (uri (string-append
> @@ -43,7 +43,7 @@
>                       ".tar.bz2"))
>                 (sha256
>                  (base32
> -                
> "0fzx6dwqbrkd4bcd8pjv0fpapwmrxxwr8yx9g67lihlsk3zzysk8"))))
> +                
> "0h5nk7pgxf7xsvvshj9qfpsfp9wx6gq9r78n3nx736pxq83bsix5"))))
>       (build-system gnu-build-system)
>       (inputs `(("zlib" ,zlib)))
>       (native-inputs
> @@ -53,6 +53,7 @@
>       (arguments
>        (let ((build-flags
>               `("threading=multi" "link=shared"
> +              (format #f "-j~a" (parallel-job-count))
>
>                 ;; Set the RUNPATH to $libdir so that the libs find each 
> other.
>                 (string-append "linkflags=-Wl,-rpath="
> diff --git a/gnu/packages/databases.scm b/gnu/packages/databases.scm
> index e05232d..5d7fe13 100644
> --- a/gnu/packages/databases.scm
> +++ b/gnu/packages/databases.scm
> @@ -202,7 +202,7 @@ SQL, Key/Value, XML/XQuery or Java Object storage 
> for their data model.")
>                  
> "11qbib1xpy0zkki7j9ip17hks5kp5zgpcj7x8gy3a4m66lb1mgsh"))))
>       (build-system cmake-build-system)
>       (arguments
> -     '(#:configure-flags
> +     `(#:configure-flags
>          '("-DBUILD_CONFIG=mysql_release"
>            "-DWITH_SSL=system"
>            "-DWITH_ZLIB=system"
> @@ -229,7 +229,9 @@ SQL, Key/Value, XML/XQuery or Java Object storage 
> for their data model.")
>                      (lambda _
>                        ;; Mysql wants boost-1.59.0 specifically
>                        (substitute* "cmake/boost.cmake"
> -                                  (("59") "60"))))
> +                       (("59")
> +                        ,(match (string-split (package-version boost) 
> #\.)
> +                           ((_ minor . _) minor))))))
>                     (add-after
>                      'install 'remove-extra-binaries
>                      (lambda* (#:key outputs #:allow-other-keys)

This patch looks good to me.  I changed the `(("59") "60")' construct to
`(("59") "61")' myself, and that seemed to work.  Your solution is
better because this will continue to work in the future, plus the
parallel building is nice.

Is there anything that requires more work to apply your patch for MySQL
and then upgrade Boost?  Are there any other packages that break that we
should look into?

Kind regards,
Roel Janssen

^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [PATCH] gnu: boost: Update to 1.61.0.
  2016-09-20  9:10     ` Roel Janssen
@ 2016-09-20 20:58       ` Eric Bavier
  2016-09-20 21:44         ` Leo Famulari
  2016-09-22 17:14         ` Eric Bavier
  0 siblings, 2 replies; 15+ messages in thread
From: Eric Bavier @ 2016-09-20 20:58 UTC (permalink / raw)
  To: Roel Janssen; +Cc: guix-devel, Guix-devel

On Tue, 20 Sep 2016 11:10:02 +0200
Roel Janssen <roel@gnu.org> wrote:

> Eric Bavier writes:
> 
> > On 2016-09-19 05:11, Roel Janssen wrote:  
> >> Roel Janssen writes:
> >>   
> >>> Dear Guix,
> >>> 
> >>> I don't know what the impact of the following upgrade is, but I think 
> >>> it
> >>> would be good to update Boost to the latest stable version that was
> >>> released on May 13th, 2016.
> >>> 
> >>> What do you think?
> >>> 
> >>> Kind regards,
> >>> Roel Janssen
> >>>   
> >>>> From a6409b0648352cac86a3ceb205ee183c034085f5 Mon Sep 17 00:00:00 
> >>>> 2001  
> >>> From: Roel Janssen <roel@gnu.org>
> >>> Date: Mon, 19 Sep 2016 10:08:52 +0200
> >>> Subject: [PATCH] gnu: boost: Update to 1.61.0.
> >>> 
> >>> * gnu/packages/boost.scm (boost): Update to 1.61.0.
> >>> ---
> >>>  gnu/packages/boost.scm | 4 ++--
> >>>  1 file changed, 2 insertions(+), 2 deletions(-)
> >>> 
> >>> diff --git a/gnu/packages/boost.scm b/gnu/packages/boost.scm
> >>> index 8fe8c8e..ccc1f06 100644
> >>> --- a/gnu/packages/boost.scm
> >>> +++ b/gnu/packages/boost.scm
> >>> @@ -34,7 +34,7 @@
> >>>  (define-public boost
> >>>    (package
> >>>      (name "boost")
> >>> -    (version "1.60.0")
> >>> +    (version "1.61.0")
> >>>      (source (origin
> >>>                (method url-fetch)
> >>>                (uri (string-append
> >>> @@ -43,7 +43,7 @@
> >>>                      ".tar.bz2"))
> >>>                (sha256
> >>>                 (base32
> >>> -                
> >>> "0fzx6dwqbrkd4bcd8pjv0fpapwmrxxwr8yx9g67lihlsk3zzysk8"))))
> >>> +                
> >>> "0h5nk7pgxf7xsvvshj9qfpsfp9wx6gq9r78n3nx736pxq83bsix5"))))
> >>>      (build-system gnu-build-system)
> >>>      (inputs `(("zlib" ,zlib)))
> >>>      (native-inputs  
> >> 
> >> It looks like an upgrade to 1.61.0 causes a build failure for MySQL:
> >> 
> >> -------------------------- BUILD OUTPUT LOG FOR MYSQL 
> >> --------------------------
> >> -- BOOST_VERSION_NUMBER is #define BOOST_VERSION 106100
> >> CMake Warning at cmake/boost.cmake:266 (MESSAGE):
> >>   Boost minor version found is 61 we need 60
> >> Call Stack (most recent call first):
> >>   CMakeLists.txt:455 (INCLUDE)
> >> 
> >> 
> >> -- BOOST_INCLUDE_DIR /gnu/store/...fzzl-boost-1.61.0/include
> >> -- LOCAL_BOOST_DIR
> >> -- LOCAL_BOOST_ZIP
> >> -- Could not find (the correct version of) boost.
> >> -- MySQL currently requires boost_1_60_0
> >> 
> >> CMake Error at cmake/boost.cmake:81 (MESSAGE):
> >>   You can download it with -DDOWNLOAD_BOOST=1 -DWITH_BOOST=<directory>
> >> ------------------------ END BUILD OUTPUT LOG FOR MYSQL 
> >> ------------------------
> >> 
> >> So I guess the impact is too large to just go for it.
> >> 
> >> Do we have a Guix command to find out which packages are dependent on
> >> a package (in this case Boost)?
> >> 
> >> Kind regards,
> >> Roel Janssen  
> >
> > I looked at this upgrade a few weeks ago.  I took a stab at building the 
> > complete dependency set, and, for the most part, mysql is the only 
> > package that breaks.  I fixed this with the below patch (which also 
> > enable parallel builds that can improve build times significantly):
> >
> > diff --git a/gnu/packages/boost.scm b/gnu/packages/boost.scm
> > index bb123d3..f3288d1 100644
> > --- a/gnu/packages/boost.scm
> > +++ b/gnu/packages/boost.scm
> > @@ -34,7 +34,7 @@
> >   (define-public boost
> >     (package
> >       (name "boost")
> > -    (version "1.60.0")
> > +    (version "1.61.0")
> >       (source (origin
> >                 (method url-fetch)
> >                 (uri (string-append
> > @@ -43,7 +43,7 @@
> >                       ".tar.bz2"))
> >                 (sha256
> >                  (base32
> > -                
> > "0fzx6dwqbrkd4bcd8pjv0fpapwmrxxwr8yx9g67lihlsk3zzysk8"))))
> > +                
> > "0h5nk7pgxf7xsvvshj9qfpsfp9wx6gq9r78n3nx736pxq83bsix5"))))
> >       (build-system gnu-build-system)
> >       (inputs `(("zlib" ,zlib)))
> >       (native-inputs
> > @@ -53,6 +53,7 @@
> >       (arguments
> >        (let ((build-flags
> >               `("threading=multi" "link=shared"
> > +              (format #f "-j~a" (parallel-job-count))
> >
> >                 ;; Set the RUNPATH to $libdir so that the libs find each 
> > other.
> >                 (string-append "linkflags=-Wl,-rpath="
> > diff --git a/gnu/packages/databases.scm b/gnu/packages/databases.scm
> > index e05232d..5d7fe13 100644
> > --- a/gnu/packages/databases.scm
> > +++ b/gnu/packages/databases.scm
> > @@ -202,7 +202,7 @@ SQL, Key/Value, XML/XQuery or Java Object storage 
> > for their data model.")
> >                  
> > "11qbib1xpy0zkki7j9ip17hks5kp5zgpcj7x8gy3a4m66lb1mgsh"))))
> >       (build-system cmake-build-system)
> >       (arguments
> > -     '(#:configure-flags
> > +     `(#:configure-flags
> >          '("-DBUILD_CONFIG=mysql_release"
> >            "-DWITH_SSL=system"
> >            "-DWITH_ZLIB=system"
> > @@ -229,7 +229,9 @@ SQL, Key/Value, XML/XQuery or Java Object storage 
> > for their data model.")
> >                      (lambda _
> >                        ;; Mysql wants boost-1.59.0 specifically
> >                        (substitute* "cmake/boost.cmake"
> > -                                  (("59") "60"))))
> > +                       (("59")
> > +                        ,(match (string-split (package-version boost) 
> > #\.)
> > +                           ((_ minor . _) minor))))))
> >                     (add-after
> >                      'install 'remove-extra-binaries
> >                      (lambda* (#:key outputs #:allow-other-keys)  
> 
> This patch looks good to me.  I changed the `(("59") "60")' construct to
> `(("59") "61")' myself, and that seemed to work.  Your solution is
> better because this will continue to work in the future, plus the
> parallel building is nice.
> 
> Is there anything that requires more work to apply your patch for MySQL
> and then upgrade Boost?  Are there any other packages that break that we
> should look into?

As far as I recall, the only breakages besides mysql that I experienced
were due to reasons outside of the boost upgrade.  I'll try to find my
notes from those builds...

Given that this upgrade forces a rebuild of libreoffice, should it be
applied to core-updates?

`~Eric

^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [PATCH] gnu: boost: Update to 1.61.0.
  2016-09-20 20:58       ` Eric Bavier
@ 2016-09-20 21:44         ` Leo Famulari
  2016-09-22 17:14         ` Eric Bavier
  1 sibling, 0 replies; 15+ messages in thread
From: Leo Famulari @ 2016-09-20 21:44 UTC (permalink / raw)
  To: Eric Bavier; +Cc: guix-devel, Guix-devel

On Tue, Sep 20, 2016 at 03:58:18PM -0500, Eric Bavier wrote:
> Given that this upgrade forces a rebuild of libreoffice, should it be
> applied to core-updates?

We do make changes that affect libreoffice on the master branch, at
least so far.

^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [PATCH] gnu: boost: Update to 1.61.0.
  2016-09-19 10:11 ` Roel Janssen
                     ` (2 preceding siblings ...)
  2016-09-19 21:09   ` Eric Bavier
@ 2016-09-21 16:11   ` Andreas Enge
  2016-09-21 17:27     ` Andreas Enge
  3 siblings, 1 reply; 15+ messages in thread
From: Andreas Enge @ 2016-09-21 16:11 UTC (permalink / raw)
  To: Roel Janssen; +Cc: guix-devel

Hello,

On Mon, Sep 19, 2016 at 12:11:57PM +0200, Roel Janssen wrote:
> I don't know what the impact of the following upgrade is, but I think it
> would be good to update Boost to the latest stable version that was
> released on May 13th, 2016.

boost has quite a few dependencies, as Ricardo already pointed out, and in my
experience tends to be a bit fragile. So maybe the best option would be to
create a boost-update branch and have it built on hydra to see whether there
are problems. It not, one could then cherry-pick the commit to master.

Andreas

^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [PATCH] gnu: boost: Update to 1.61.0.
  2016-09-21 16:11   ` Andreas Enge
@ 2016-09-21 17:27     ` Andreas Enge
  2016-09-22 21:16       ` Marius Bakke
  0 siblings, 1 reply; 15+ messages in thread
From: Andreas Enge @ 2016-09-21 17:27 UTC (permalink / raw)
  To: Roel Janssen; +Cc: guix-devel

On Wed, Sep 21, 2016 at 06:11:31PM +0200, Andreas Enge wrote:
> boost has quite a few dependencies, as Ricardo already pointed out, and in my
> experience tends to be a bit fragile. So maybe the best option would be to
> create a boost-update branch and have it built on hydra to see whether there
> are problems. It not, one could then cherry-pick the commit to master.

I replied before reading all the messages in that thread. Of course if Eric
has tried the commit locally and tested that nothing breaks, this could be
pushed to master directly.

Andreas

^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [PATCH] gnu: boost: Update to 1.61.0.
  2016-09-20 20:58       ` Eric Bavier
  2016-09-20 21:44         ` Leo Famulari
@ 2016-09-22 17:14         ` Eric Bavier
  2016-09-22 19:03           ` Roel Janssen
  1 sibling, 1 reply; 15+ messages in thread
From: Eric Bavier @ 2016-09-22 17:14 UTC (permalink / raw)
  To: Roel Janssen; +Cc: guix-devel, Guix-devel

On 2016-09-20 15:58, Eric Bavier wrote:
> On Tue, 20 Sep 2016 11:10:02 +0200
> Roel Janssen <roel@gnu.org> wrote:
> 
>> Is there anything that requires more work to apply your patch for 
>> MySQL
>> and then upgrade Boost?  Are there any other packages that break that 
>> we
>> should look into?
> 
> As far as I recall, the only breakages besides mysql that I experienced
> were due to reasons outside of the boost upgrade.  I'll try to find my
> notes from those builds...
> 
> Given that this upgrade forces a rebuild of libreoffice, should it be
> applied to core-updates?

For my own sanity, I rebased this patch onto master and tried building 
libreoffice, which succeeded.  I'll push this patch when I have my 
signing key available.

-- 
`~Eric

^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [PATCH] gnu: boost: Update to 1.61.0.
  2016-09-22 17:14         ` Eric Bavier
@ 2016-09-22 19:03           ` Roel Janssen
  0 siblings, 0 replies; 15+ messages in thread
From: Roel Janssen @ 2016-09-22 19:03 UTC (permalink / raw)
  To: Eric Bavier; +Cc: guix-devel


Eric Bavier writes:

> On 2016-09-20 15:58, Eric Bavier wrote:
>> On Tue, 20 Sep 2016 11:10:02 +0200
>> Roel Janssen <roel@gnu.org> wrote:
>> 
>>> Is there anything that requires more work to apply your patch for 
>>> MySQL
>>> and then upgrade Boost?  Are there any other packages that break that 
>>> we
>>> should look into?
>> 
>> As far as I recall, the only breakages besides mysql that I experienced
>> were due to reasons outside of the boost upgrade.  I'll try to find my
>> notes from those builds...
>> 
>> Given that this upgrade forces a rebuild of libreoffice, should it be
>> applied to core-updates?
>
> For my own sanity, I rebased this patch onto master and tried building 
> libreoffice, which succeeded.  I'll push this patch when I have my 
> signing key available.

Thanks a lot for your efforts.

Kind regards,
Roel Janssen

^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [PATCH] gnu: boost: Update to 1.61.0.
  2016-09-21 17:27     ` Andreas Enge
@ 2016-09-22 21:16       ` Marius Bakke
  2016-09-23 17:05         ` Eric Bavier
  2016-09-27 19:13         ` Andreas Enge
  0 siblings, 2 replies; 15+ messages in thread
From: Marius Bakke @ 2016-09-22 21:16 UTC (permalink / raw)
  To: Andreas Enge, Roel Janssen; +Cc: guix-devel

Andreas Enge <andreas@enge.fr> writes:

> On Wed, Sep 21, 2016 at 06:11:31PM +0200, Andreas Enge wrote:
>> boost has quite a few dependencies, as Ricardo already pointed out, and in my
>> experience tends to be a bit fragile. So maybe the best option would be to
>> create a boost-update branch and have it built on hydra to see whether there
>> are problems. It not, one could then cherry-pick the commit to master.
>
> I replied before reading all the messages in that thread. Of course if Eric
> has tried the commit locally and tested that nothing breaks, this could be
> pushed to master directly.

Should this not be pushed to core-updates? `guix refresh -l` reports:

Building the following 190 packages would ensure 395 dependent packages
are rebuilt: [...]

That will take a while on Hydra, and in the mean time anyone trying to
install any dependent (or sub-dependent) package will have to compile
them locally.

Unless there is a security issue, isn't this exactly what core-updates
is for? Is `guix refresh recursive`? Many of the sub-depentents seem
like they have other dependents, affecting more than 10% of the tree.

~marius

^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [PATCH] gnu: boost: Update to 1.61.0.
  2016-09-22 21:16       ` Marius Bakke
@ 2016-09-23 17:05         ` Eric Bavier
  2016-09-27 19:13         ` Andreas Enge
  1 sibling, 0 replies; 15+ messages in thread
From: Eric Bavier @ 2016-09-23 17:05 UTC (permalink / raw)
  To: Marius Bakke; +Cc: guix-devel, Guix-devel

On 2016-09-22 16:16, Marius Bakke wrote:
> Andreas Enge <andreas@enge.fr> writes:
> 
>> On Wed, Sep 21, 2016 at 06:11:31PM +0200, Andreas Enge wrote:
>>> boost has quite a few dependencies, as Ricardo already pointed out, 
>>> and in my
>>> experience tends to be a bit fragile. So maybe the best option would 
>>> be to
>>> create a boost-update branch and have it built on hydra to see 
>>> whether there
>>> are problems. It not, one could then cherry-pick the commit to 
>>> master.
>> 
>> I replied before reading all the messages in that thread. Of course if 
>> Eric
>> has tried the commit locally and tested that nothing breaks, this 
>> could be
>> pushed to master directly.
> 
> Should this not be pushed to core-updates? `guix refresh -l` reports:
> 
> Building the following 190 packages would ensure 395 dependent packages
> are rebuilt: [...]

That's kind of on the edge of what's acceptable for master, as long as 
hydra isn't already overloaded, which it wasn't in this case.

> That will take a while on Hydra, and in the mean time anyone trying to
> install any dependent (or sub-dependent) package will have to compile
> them locally.

It's already finished rebuilding those dependents.

> Unless there is a security issue, isn't this exactly what core-updates
> is for?

Indeed, but for security updates grafts are preferable.

> Is `guix refresh recursive`?

Yes.

-- 
`~Eric

^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [PATCH] gnu: boost: Update to 1.61.0.
  2016-09-22 21:16       ` Marius Bakke
  2016-09-23 17:05         ` Eric Bavier
@ 2016-09-27 19:13         ` Andreas Enge
  1 sibling, 0 replies; 15+ messages in thread
From: Andreas Enge @ 2016-09-27 19:13 UTC (permalink / raw)
  To: Marius Bakke; +Cc: guix-devel

On Thu, Sep 22, 2016 at 10:16:54PM +0100, Marius Bakke wrote:
> Should this not be pushed to core-updates? `guix refresh -l` reports:
> 
> Building the following 190 packages would ensure 395 dependent packages
> are rebuilt: [...]
> 
> That will take a while on Hydra, and in the mean time anyone trying to
> install any dependent (or sub-dependent) package will have to compile
> them locally.
> 
> Unless there is a security issue, isn't this exactly what core-updates
> is for?

Not quite. Initially, core-updates was for updates of the core packages,
that is, those that you can currently see being built on the core-updates
branch of hydra. With the lack of performance of hydra, we ended up putting
more and more packages requiring large rebuilds into that branch.

Often, we also just add a feature branch (something-update) and have it
built on hydra, especially also in cases where it is unclear how much we
break by the update, to make sure that master remains in a workable state.

After the hydra machine crashed, the FSF sysadmins switched to a more powerful
set-up, and right now, we can tolerate a larger package churn. In case of
doubt when updating a package requiring larger rebuilds, we can also have it
depend on the current load on hydra towards which branch we push.

Andreas

^ permalink raw reply	[flat|nested] 15+ messages in thread

end of thread, other threads:[~2016-09-27 19:13 UTC | newest]

Thread overview: 15+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-09-19  8:13 [PATCH] gnu: boost: Update to 1.61.0 Roel Janssen
2016-09-19 10:11 ` Roel Janssen
2016-09-19 12:26   ` Ricardo Wurmus
2016-09-19 20:31   ` Efraim Flashner
2016-09-19 21:09   ` Eric Bavier
2016-09-20  9:10     ` Roel Janssen
2016-09-20 20:58       ` Eric Bavier
2016-09-20 21:44         ` Leo Famulari
2016-09-22 17:14         ` Eric Bavier
2016-09-22 19:03           ` Roel Janssen
2016-09-21 16:11   ` Andreas Enge
2016-09-21 17:27     ` Andreas Enge
2016-09-22 21:16       ` Marius Bakke
2016-09-23 17:05         ` Eric Bavier
2016-09-27 19:13         ` Andreas Enge

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).