diff mbox series

[bug#54630] utfcpp v3.2.1

Message ID CAFkJGRedbdNs6ebEL=if3ZF=Asu2Yjw12HqoOQ+KgkUiM53jyA@mail.gmail.com
State Accepted
Headers show
Series [bug#54630] utfcpp v3.2.1 | expand

Commit Message

Anadon March 31, 2022, 3:43 a.m. UTC
Updated, should be closer.

On Tue, Mar 29, 2022 at 6:10 PM Leo Famulari <leo@famulari.name> wrote:

> On Tue, Mar 29, 2022 at 05:48:47PM -0400, Anadon wrote:
> >  (define-public utfcpp
> >    (package
> >      (name "utfcpp")
> > -    (version "2.3.5")
> > +    (version "3.2.1")
>
> Thanks!
>
> I turned it into a Git commit (attached as a patch) and built utfcpp 3.2.1
> successfully.
>
> I noticed that at least one of the handful of packages that depend on
> utfcpp, mkvtoolnix, doesn't build with this update:
>
> ------
> [...]
> starting phase `build'
>             CC lib/librmff/rmff.c
>            CXX src/mpegparser/MPEGVideoBuffer.cpp
>            CXX src/common/xml/xml.cpp
>             CC lib/librmff/mb_file_io.c
>             AR lib/librmff/librmff.a
>         RANLIB lib/librmff/librmff.a
>            CXX lib/avilib-0.6.10/xio.cpp
>            CXX src/mpegparser/M2VParser.cpp
>             CC lib/avilib-0.6.10/avimisc.c
>             CC lib/avilib-0.6.10/avilib.c
>             AR lib/avilib-0.6.10/libavi.a
>         RANLIB lib/avilib-0.6.10/libavi.a
>            CXX src/common/xml/ebml_tags_converter.cpp
>            CXX src/mpegparser/CircBuffer.cpp
>            CXX src/common/xml/ebml_segmentinfo_converter.cpp
>             AR src/mpegparser/libmpegparser.a
>         RANLIB src/mpegparser/libmpegparser.a
>            CXX src/common/xml/ebml_converter.cpp
>            CXX src/common/xml/ebml_chapters_converter.cpp
>            CXX src/common/tags/vorbis.cpp
>            CXX src/common/tags/tags.cpp
>            CXX src/common/strings/utf8.cpp
> src/common/strings/utf8.cpp:21:10: fatal error: utf8.h: No such file or
> directory
>    21 | #include <utf8.h>
>       |          ^~~~~~~~
> compilation terminated.
> error: in phase 'build': uncaught exception:
> %exception #<&invoke-error program: "rake" arguments: ("-j" "4")
> exit-status: 1 term-signal: #f stop-signal: #f>
> phase `build' failed after 47.3 seconds
> command "rake" "-j" "4" failed with status 1
> builder for
> `/gnu/store/n4jp4915g90c0f89njnlljhfd75k5y0g-mkvtoolnix-52.0.0.drv' failed
> with exit code 1
> build of /gnu/store/n4jp4915g90c0f89njnlljhfd75k5y0g-mkvtoolnix-52.0.0.drv
> failed
> View build log at
> '/var/log/guix/drvs/n4/jp4915g90c0f89njnlljhfd75k5y0g-mkvtoolnix-52.0.0.drv.gz'.
> guix build: error: build of
> `/gnu/store/n4jp4915g90c0f89njnlljhfd75k5y0g-mkvtoolnix-52.0.0.drv' failed
> ------
>
> One can check full list of packages that depend on utfcpp like this:
>
> ------
> $ guix refresh --list-dependent utfcpp
> Building the following 6 packages would ensure 8 dependent packages are
> rebuilt: emacs-flycheck-ledger@0.5 emacs-ledger-mode@4.0.0
> warzone2100@4.0.1 osmium-tool@1.14.0 osm2pgsql@1.5.1 mkvtoolnix@52.0.0
> ------
>

Comments

Anadon April 2, 2022, 3:56 a.m. UTC | #1
Can I get an update?

On Wed, Mar 30, 2022, 23:43 Anadon <joshua.r.marshall.1991@gmail.com> wrote:

> Updated, should be closer.
>
> On Tue, Mar 29, 2022 at 6:10 PM Leo Famulari <leo@famulari.name> wrote:
>
>> On Tue, Mar 29, 2022 at 05:48:47PM -0400, Anadon wrote:
>> >  (define-public utfcpp
>> >    (package
>> >      (name "utfcpp")
>> > -    (version "2.3.5")
>> > +    (version "3.2.1")
>>
>> Thanks!
>>
>> I turned it into a Git commit (attached as a patch) and built utfcpp 3.2.1
>> successfully.
>>
>> I noticed that at least one of the handful of packages that depend on
>> utfcpp, mkvtoolnix, doesn't build with this update:
>>
>> ------
>> [...]
>> starting phase `build'
>>             CC lib/librmff/rmff.c
>>            CXX src/mpegparser/MPEGVideoBuffer.cpp
>>            CXX src/common/xml/xml.cpp
>>             CC lib/librmff/mb_file_io.c
>>             AR lib/librmff/librmff.a
>>         RANLIB lib/librmff/librmff.a
>>            CXX lib/avilib-0.6.10/xio.cpp
>>            CXX src/mpegparser/M2VParser.cpp
>>             CC lib/avilib-0.6.10/avimisc.c
>>             CC lib/avilib-0.6.10/avilib.c
>>             AR lib/avilib-0.6.10/libavi.a
>>         RANLIB lib/avilib-0.6.10/libavi.a
>>            CXX src/common/xml/ebml_tags_converter.cpp
>>            CXX src/mpegparser/CircBuffer.cpp
>>            CXX src/common/xml/ebml_segmentinfo_converter.cpp
>>             AR src/mpegparser/libmpegparser.a
>>         RANLIB src/mpegparser/libmpegparser.a
>>            CXX src/common/xml/ebml_converter.cpp
>>            CXX src/common/xml/ebml_chapters_converter.cpp
>>            CXX src/common/tags/vorbis.cpp
>>            CXX src/common/tags/tags.cpp
>>            CXX src/common/strings/utf8.cpp
>> src/common/strings/utf8.cpp:21:10: fatal error: utf8.h: No such file or
>> directory
>>    21 | #include <utf8.h>
>>       |          ^~~~~~~~
>> compilation terminated.
>> error: in phase 'build': uncaught exception:
>> %exception #<&invoke-error program: "rake" arguments: ("-j" "4")
>> exit-status: 1 term-signal: #f stop-signal: #f>
>> phase `build' failed after 47.3 seconds
>> command "rake" "-j" "4" failed with status 1
>> builder for
>> `/gnu/store/n4jp4915g90c0f89njnlljhfd75k5y0g-mkvtoolnix-52.0.0.drv' failed
>> with exit code 1
>> build of
>> /gnu/store/n4jp4915g90c0f89njnlljhfd75k5y0g-mkvtoolnix-52.0.0.drv failed
>> View build log at
>> '/var/log/guix/drvs/n4/jp4915g90c0f89njnlljhfd75k5y0g-mkvtoolnix-52.0.0.drv.gz'.
>> guix build: error: build of
>> `/gnu/store/n4jp4915g90c0f89njnlljhfd75k5y0g-mkvtoolnix-52.0.0.drv' failed
>> ------
>>
>> One can check full list of packages that depend on utfcpp like this:
>>
>> ------
>> $ guix refresh --list-dependent utfcpp
>> Building the following 6 packages would ensure 8 dependent packages are
>> rebuilt: emacs-flycheck-ledger@0.5 emacs-ledger-mode@4.0.0
>> warzone2100@4.0.1 osmium-tool@1.14.0 osm2pgsql@1.5.1 mkvtoolnix@52.0.0
>> ------
>>
>
Anadon April 9, 2022, 12:33 a.m. UTC | #2
Bump

On Fri, Apr 1, 2022 at 11:56 PM Anadon <joshua.r.marshall.1991@gmail.com>
wrote:

> Can I get an update?
>
> On Wed, Mar 30, 2022, 23:43 Anadon <joshua.r.marshall.1991@gmail.com>
> wrote:
>
>> Updated, should be closer.
>>
>> On Tue, Mar 29, 2022 at 6:10 PM Leo Famulari <leo@famulari.name> wrote:
>>
>>> On Tue, Mar 29, 2022 at 05:48:47PM -0400, Anadon wrote:
>>> >  (define-public utfcpp
>>> >    (package
>>> >      (name "utfcpp")
>>> > -    (version "2.3.5")
>>> > +    (version "3.2.1")
>>>
>>> Thanks!
>>>
>>> I turned it into a Git commit (attached as a patch) and built utfcpp
>>> 3.2.1
>>> successfully.
>>>
>>> I noticed that at least one of the handful of packages that depend on
>>> utfcpp, mkvtoolnix, doesn't build with this update:
>>>
>>> ------
>>> [...]
>>> starting phase `build'
>>>             CC lib/librmff/rmff.c
>>>            CXX src/mpegparser/MPEGVideoBuffer.cpp
>>>            CXX src/common/xml/xml.cpp
>>>             CC lib/librmff/mb_file_io.c
>>>             AR lib/librmff/librmff.a
>>>         RANLIB lib/librmff/librmff.a
>>>            CXX lib/avilib-0.6.10/xio.cpp
>>>            CXX src/mpegparser/M2VParser.cpp
>>>             CC lib/avilib-0.6.10/avimisc.c
>>>             CC lib/avilib-0.6.10/avilib.c
>>>             AR lib/avilib-0.6.10/libavi.a
>>>         RANLIB lib/avilib-0.6.10/libavi.a
>>>            CXX src/common/xml/ebml_tags_converter.cpp
>>>            CXX src/mpegparser/CircBuffer.cpp
>>>            CXX src/common/xml/ebml_segmentinfo_converter.cpp
>>>             AR src/mpegparser/libmpegparser.a
>>>         RANLIB src/mpegparser/libmpegparser.a
>>>            CXX src/common/xml/ebml_converter.cpp
>>>            CXX src/common/xml/ebml_chapters_converter.cpp
>>>            CXX src/common/tags/vorbis.cpp
>>>            CXX src/common/tags/tags.cpp
>>>            CXX src/common/strings/utf8.cpp
>>> src/common/strings/utf8.cpp:21:10: fatal error: utf8.h: No such file or
>>> directory
>>>    21 | #include <utf8.h>
>>>       |          ^~~~~~~~
>>> compilation terminated.
>>> error: in phase 'build': uncaught exception:
>>> %exception #<&invoke-error program: "rake" arguments: ("-j" "4")
>>> exit-status: 1 term-signal: #f stop-signal: #f>
>>> phase `build' failed after 47.3 seconds
>>> command "rake" "-j" "4" failed with status 1
>>> builder for
>>> `/gnu/store/n4jp4915g90c0f89njnlljhfd75k5y0g-mkvtoolnix-52.0.0.drv' failed
>>> with exit code 1
>>> build of
>>> /gnu/store/n4jp4915g90c0f89njnlljhfd75k5y0g-mkvtoolnix-52.0.0.drv failed
>>> View build log at
>>> '/var/log/guix/drvs/n4/jp4915g90c0f89njnlljhfd75k5y0g-mkvtoolnix-52.0.0.drv.gz'.
>>> guix build: error: build of
>>> `/gnu/store/n4jp4915g90c0f89njnlljhfd75k5y0g-mkvtoolnix-52.0.0.drv' failed
>>> ------
>>>
>>> One can check full list of packages that depend on utfcpp like this:
>>>
>>> ------
>>> $ guix refresh --list-dependent utfcpp
>>> Building the following 6 packages would ensure 8 dependent packages are
>>> rebuilt: emacs-flycheck-ledger@0.5 emacs-ledger-mode@4.0.0
>>> warzone2100@4.0.1 osmium-tool@1.14.0 osm2pgsql@1.5.1 mkvtoolnix@52.0.0
>>> ------
>>>
>>
Leo Famulari April 10, 2022, 6:18 p.m. UTC | #3
On Fri, Apr 08, 2022 at 08:33:29PM -0400, Anadon wrote:
> Bump

We are waiting for you to tell us, after applying this update, do all
the dependent packages still work?

You could also answer Tobias's question about naming, although remember
that you are free to use any name you choose.
Anadon April 10, 2022, 6:56 p.m. UTC | #4
All dependant packages work based off their unit tests.  I believe this is
in line with expectations; I may be mistaken.

I didn't get any notification that Tobias said anything, sorry about that.
I often change between birth name and what I've chosen.  At this point,
I'll just goes with what gives me the least resistance.  I can update the
patch when I'm next at a computer.

On Sun, Apr 10, 2022, 14:18 Leo Famulari <leo@famulari.name> wrote:

> On Fri, Apr 08, 2022 at 08:33:29PM -0400, Anadon wrote:
> > Bump
>
> We are waiting for you to tell us, after applying this update, do all
> the dependent packages still work?
>
> You could also answer Tobias's question about naming, although remember
> that you are free to use any name you choose.
>
Tobias Geerinckx-Rice April 10, 2022, 8:41 p.m. UTC | #5
On 10 April 2022 18:56:59 UTC, Anadon <joshua.r.marshall.1991@gmail.com> wrote:
>I didn't get any notification that Tobias said anything, sorry about that.

Thanks for letting me know.  Nothing in spam etc.?    I'll check my logs.

If it's all the same to you I prefer using your real-sounding name for copyright purposes, since the 'pseudonym' doesn't seem to be doing any useful work there.



Kind regards,

T G-R

Sent on the go.  Excuse or enjoy my brevity.
Maxim Cournoyer May 22, 2022, 4:23 a.m. UTC | #6
Hi Anadon,

Tobias Geerinckx-Rice <me@tobias.gr> writes:

> On 10 April 2022 18:56:59 UTC, Anadon <joshua.r.marshall.1991@gmail.com> wrote:
>>I didn't get any notification that Tobias said anything, sorry about that.
>
> Thanks for letting me know.  Nothing in spam etc.?    I'll check my logs.
>
> If it's all the same to you I prefer using your real-sounding name for copyright purposes, since the 'pseudonym' doesn't seem to be doing any useful work there.

Gentle ping :-)

Thanks,

Maxim
Anadon May 22, 2022, 2:46 p.m. UTC | #7
Home ownership is distracting, that's for sure.  I'll get back on it.

On Sun, May 22, 2022, 00:23 Maxim Cournoyer <maxim.cournoyer@gmail.com>
wrote:

> Hi Anadon,
>
> Tobias Geerinckx-Rice <me@tobias.gr> writes:
>
> > On 10 April 2022 18:56:59 UTC, Anadon <joshua.r.marshall.1991@gmail.com>
> wrote:
> >>I didn't get any notification that Tobias said anything, sorry about
> that.
> >
> > Thanks for letting me know.  Nothing in spam etc.?    I'll check my logs.
> >
> > If it's all the same to you I prefer using your real-sounding name for
> copyright purposes, since the 'pseudonym' doesn't seem to be doing any
> useful work there.
>
> Gentle ping :-)
>
> Thanks,
>
> Maxim
>
Tobias Geerinckx-Rice May 22, 2022, 3:09 p.m. UTC | #8
Anadon 写道:
> Home ownership is distracting, that's for sure.  I'll get back 
> on it.

I think the only remaining question was that of foregoing ‘Anadon’ 
in favour of the name in your e-mail address, assuming that's more 
real.

Kind regards,

T G-R
Anadon May 22, 2022, 5:41 p.m. UTC | #9
There was also the matter of changing v2 to inherit and modify from the new
v3 and skip the mapping of utfcpp name to the utfcppv3 package.

On Sun, May 22, 2022, 11:09 Tobias Geerinckx-Rice <me@tobias.gr> wrote:

> Anadon 写道:
> > Home ownership is distracting, that's for sure.  I'll get back
> > on it.
>
> I think the only remaining question was that of foregoing ‘Anadon’
> in favour of the name in your e-mail address, assuming that's more
> real.
>
> Kind regards,
>
> T G-R
>
Anadon May 29, 2022, 5:50 p.m. UTC | #10
I don't think messing with Warzone2100 or mkvtoolnix is the best idea.
Looking at Warzone2100, it handles pulling a specific version of utfcpp via
git submodules so I'm guessing it was packaged incorrectly in the first
place.  This is also exactly the same case for mkvtoolnix.  IMO, changing
those packages is out of scope, and they should have been packaged
differently in the first place to conform to their authors' expectations.

On Sun, May 22, 2022 at 1:41 PM Anadon <joshua.r.marshall.1991@gmail.com>
wrote:

> There was also the matter of changing v2 to inherit and modify from the
> new v3 and skip the mapping of utfcpp name to the utfcppv3 package.
>
> On Sun, May 22, 2022, 11:09 Tobias Geerinckx-Rice <me@tobias.gr> wrote:
>
>> Anadon 写道:
>> > Home ownership is distracting, that's for sure.  I'll get back
>> > on it.
>>
>> I think the only remaining question was that of foregoing ‘Anadon’
>> in favour of the name in your e-mail address, assuming that's more
>> real.
>>
>> Kind regards,
>>
>> T G-R
>>
>
Liliana Marie Prikler May 29, 2022, 6:20 p.m. UTC | #11
Am Sonntag, dem 29.05.2022 um 13:50 -0400 schrieb Anadon:
> I don't think messing with Warzone2100 or mkvtoolnix is the best
> idea.  Looking at Warzone2100, it handles pulling a specific version
> of utfcpp via git submodules so I'm guessing it was packaged
> incorrectly in the first place.  This is also exactly the same case
> for mkvtoolnix.  IMO, changing those packages is out of scope, and
> they should have been packaged differently in the first place to
> conform to their authors' expectations.
I don't think either package is incorrect as-is.  Unbundling is a
feature, not a bug.
Anadon June 4, 2022, 5:37 p.m. UTC | #12
I have to pull the change.  I can't justify the time modifying other
packages.

On Sun, May 29, 2022 at 2:20 PM Liliana Marie Prikler <
liliana.prikler@gmail.com> wrote:

> Am Sonntag, dem 29.05.2022 um 13:50 -0400 schrieb Anadon:
> > I don't think messing with Warzone2100 or mkvtoolnix is the best
> > idea.  Looking at Warzone2100, it handles pulling a specific version
> > of utfcpp via git submodules so I'm guessing it was packaged
> > incorrectly in the first place.  This is also exactly the same case
> > for mkvtoolnix.  IMO, changing those packages is out of scope, and
> > they should have been packaged differently in the first place to
> > conform to their authors' expectations.
> I don't think either package is incorrect as-is.  Unbundling is a
> feature, not a bug.
>
Maxim Cournoyer June 6, 2022, 2:06 p.m. UTC | #13
Hi Anadon,

Anadon <joshua.r.marshall.1991@gmail.com> writes:

> I have to pull the change.  I can't justify the time modifying other
> packages.

OK, thanks for letting us know.

I'm closing the patch, but whoever is motivated looking into it is
welcome to do so!

Maxim
diff mbox series

Patch

From eb6d740795e45a2387b4d253032d7218e4e443c9 Mon Sep 17 00:00:00 2001
From: Anadon <joshua.r.marshall.1991@gmail.com>
Date: Wed, 30 Mar 2022 21:22:04 -0400
Subject: [PATCH] Updating to add utfcpp as a seperate version and to update
 mkvtoolnix and warzone2100 to use the old version since they need behavior
 from version 2 and not version 3.

---
 gnu/packages/games.scm     |  2 +-
 gnu/packages/textutils.scm | 26 +++++++++++++++++++++++++-
 gnu/packages/video.scm     |  2 +-
 3 files changed, 27 insertions(+), 3 deletions(-)

diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm
index 8cc29b3487..1c01a41ed6 100644
--- a/gnu/packages/games.scm
+++ b/gnu/packages/games.scm
@@ -5131,7 +5131,7 @@  (define-public warzone2100
               ("openssl" ,openssl)
               ("sdl2" ,sdl2)
               ("sqlite" ,sqlite)
-              ("utfcpp" ,utfcpp)))
+              ("utfcpp" ,utfcpp-2)))
     (home-page "https://wz2100.net")
     (synopsis "3D Real-time strategy and real-time tactics game")
     (description
diff --git a/gnu/packages/textutils.scm b/gnu/packages/textutils.scm
index cbc657172d..21e8d861fa 100644
--- a/gnu/packages/textutils.scm
+++ b/gnu/packages/textutils.scm
@@ -24,6 +24,7 @@ 
 ;;; Copyright © 2021 Simon Tournier <zimon.toutoune@gmail.com>
 ;;; Copyright © 2021 Felix Gruber <felgru@posteo.net>
 ;;; Copyright © 2021 Bonface Munyoki Kilyungi <me@bonfacemunyoki.com>
+;;; Copyright © 2021 Anadon <joshua.r.marshall.1991@gmail.com>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -666,7 +667,7 @@  (define-public catdoc
 @command{catppt}, which extracts data from PowerPoint presentations.")
     (license license:gpl2+)))
 
-(define-public utfcpp
+(define-public utfcpp-2
   (package
     (name "utfcpp")
     (version "2.3.5")
@@ -698,6 +699,29 @@  (define-public utfcpp
 in a portable way.")
     (license license:boost1.0)))
 
+(define-public utfcpp-3
+  (package
+    (name "utfcpp")
+    (version "3.2.1")
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference
+                    (url "https://github.com/nemtrif/utfcpp")
+                    (commit (string-append "v" version))
+                    (recursive? #t)))
+              (file-name (git-file-name name version))
+              (sha256
+               (base32
+                "0gsbwif97i025bxgyax4fbf6v9z44zrca4s6wwd8x36ac8qzjppf"))))
+    (build-system cmake-build-system)
+    (home-page "https://github.com/nemtrif/utfcpp")
+    (synopsis "Portable C++ library for handling UTF-8")
+    (description "UTF8-CPP is a C++ library for handling UTF-8 encoded text
+in a portable way.")
+    (license license:boost1.0)))
+
+(define-public utfcpp utfcpp-3)
+
 (define-public dbacl
   (package
     (name "dbacl")
diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm
index dc05c0a222..da383192bc 100644
--- a/gnu/packages/video.scm
+++ b/gnu/packages/video.scm
@@ -991,7 +991,7 @@  (define-public mkvtoolnix
            pugixml
            qtbase-5
            qtmultimedia
-           utfcpp
+           utfcpp-2
            zlib))
     (native-inputs
      `(("docbook-xsl" ,docbook-xsl)
-- 
2.34.0