GNU bug report logs - #30518
teeworlds fails on core-updates due to freetype-update (and contains files to be snipped)

Previous Next

Package: guix;

Reported by: Björn Höfling <bjoern.hoefling <at> bjoernhoefling.de>

Date: Sun, 18 Feb 2018 20:47:02 UTC

Severity: normal

Done: zimoun <zimon.toutoune <at> gmail.com>

Bug is archived. No further changes may be made.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 30518 in the body.
You can then email your comments to 30518 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to bug-guix <at> gnu.org:
bug#30518; Package guix. (Sun, 18 Feb 2018 20:47:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to Björn Höfling <bjoern.hoefling <at> bjoernhoefling.de>:
New bug report received and forwarded. Copy sent to bug-guix <at> gnu.org. (Sun, 18 Feb 2018 20:47:02 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Björn Höfling <bjoern.hoefling <at> bjoernhoefling.de>
To: bug-guix <at> gnu.org
Subject: teeworlds fails on core-updates due to freetype-update (and
 contains files to be snipped)
Date: Sun, 18 Feb 2018 21:46:36 +0100
I thought of looking closer at some core-updates failures and looked at
this evaluation:

https://hydra.gnu.org/eval/109914?full=1&compare=109912

Randomly I stumbled over a failing teeworlds:

https://hydra.gnu.org/job/gnu/core-updates/teeworlds-0.6.4.x86_64-linux

The currently latest build is:

https://hydra.gnu.org/build/2437799

The last lines of the build are this:

src/engine/client/text.cpp: In member function ‘void CTextRender::RenderSetup(CFont*, int)’:
src/engine/client/text.cpp:425:46: error: ‘FT_Set_Pixel_Sizes’ was not declared in this scope
   FT_Set_Pixel_Sizes(pFont->m_FtFace, 0, size);
                                              ^
src/engine/client/text.cpp: In member function ‘float CTextRender::Kerning(CFont*, int, int)’:
src/engine/client/text.cpp:431:76: error: ‘FT_Get_Kerning’ was not declared in this scope
   FT_Get_Kerning(pFont->m_FtFace, Left, Right, FT_KERNING_DEFAULT, &Kerning);
                                                                            ^
src/engine/client/text.cpp: In member function ‘virtual void CTextRender::Init()’:
src/engine/client/text.cpp:459:32: error: ‘FT_Init_FreeType’ was not declared in this scope
   FT_Init_FreeType(&m_FTLibrary);
                                ^
src/engine/client/text.cpp: In member function ‘virtual CFont* CTextRender::LoadFont(const char*)’:
src/engine/client/text.cpp:470:70: error: ‘FT_New_Face’ was not declared in this scope
   if(FT_New_Face(m_FTLibrary, pFont->m_aFilename, 0, &pFont->m_FtFace))
                                                                      ^
bam: ret=256 g++ -Wall -fno-exceptions -fno-exceptions  -Wall  `sdl-config --cflags` `freetype-config --cflags` -O2 -c -DCONF_RELEASE -I "src" -I "other/freetype/include"  -o objs/engine/client/text.o src/engine/client/text.cpp
bam: 'objs/engine/client/text.o' error 256
bam: error: a build step failed
phase `build' failed after 19.3 seconds
builder for `/gnu/store/lv3mx8580296yfs7cr30aha05c7n77g6-teeworlds-0.6.4.drv' failed with exit code 1
@ build-failed /gnu/store/lv3mx8580296yfs7cr30aha05c7n77g6-teeworlds-0.6.4.drv - 1 builder for `/gnu/store/lv3mx8580296yfs7cr30aha05c7n77g6-teeworlds-0.6.4.drv' failed with exit code 1

That looks like freetype.

And yes, in

5bb20a25078f79429a015c928a5d0c0efabef25e

freetype was updated from 2.8 to 2.8.1. Since then, the build is broken.

With the latest core-updates, I can reproduce the error. When I then
revert the freetype version to 2.8, I can locally build and run
teeworlds properly.

I then saw the two commits

48342a04ada2df164df08c2532a2c424564da36f
7c291296955ed926377810cb61e251a808f98717

that are fixing freetype-related problems in other packages by adding
pkg-config as a native-input.

When I try that with teeworlds and freetype 2.8.1 (i.e. latest
core-updates), teeworlds build is working fine again.

So far, so good. That's a one-liner patch I could supply. 

But I also noticed that there are directories other/freetype and
other/sdl, which contain Windows DLLs  and freetype/sdl headers. I
tried to snip them away entirely and tried to substite* the imports in
'bam.lua':


diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm
index 51f158d93..327a12edb 100644
--- a/gnu/packages/games.scm
+++ b/gnu/packages/games.scm
@@ -4608,7 +4608,10 @@ small robot living in the nano world, repair its maker.")
                '(begin
                   (for-each delete-file-recursively
                             '("src/engine/external/wavpack/"
-                              "src/engine/external/zlib/"))
+                              "src/engine/external/zlib/"
+                       "other/freetype"
+                       "other/sdl"
+))
                   #t))
               (patches
                (search-patches "teeworlds-use-latest-wavpack.patch"))))
@@ -4638,7 +4641,10 @@ small robot living in the nano world, repair its maker.")
                 "if true then")
                (("wavpack = .*")
                 "wavpack = {}
-settings.link.libs:Add(\"wavpack\")\n"))
+settings.link.libs:Add(\"wavpack\")\n")
+         (("^Import.*other/sdl/sdl.lua.*") "\n")
+         (("^Import.*other/freetype/freetype.lua.*") "\n")
+)
              (substitute* "src/engine/client/sound.cpp"
                (("#include <engine/external/wavpack/wavpack.h>")
                 "#include <wavpack/wavpack.h>"))



But that failed. I finally managed to substitute* all SDL/freetype
related entried from bam.lua, but then the compile fails because SLD.h
is no longer found.

Here, my knowledge of/interest in bam is at its end. So:

1) Anybody volunteering for totally snipping away the SDL/freetype
externals?
1a) If not, we should at least snip away the DLLs and apply the
pkg-config patch.
2) Unrelated: Are there more candidates in core-updates that fail
and have a freetype dependency? How can we figure that out?

Björn








Information forwarded to bug-guix <at> gnu.org:
bug#30518; Package guix. (Mon, 05 Jul 2021 13:25:02 GMT) Full text and rfc822 format available.

Message #8 received at 30518 <at> debbugs.gnu.org (full text, mbox):

From: zimoun <zimon.toutoune <at> gmail.com>
To: Björn Höfling <bjoern.hoefling <at> bjoernhoefling.de>
Cc: 30518 <at> debbugs.gnu.org
Subject: Re: bug#30518: teeworlds fails on core-updates due to
 freetype-update (and contains files to be snipped)
Date: Mon, 05 Jul 2021 15:23:11 +0200
Hi,



On Sun, 18 Feb 2018 at 21:46, Björn Höfling <bjoern.hoefling <at> bjoernhoefling.de> wrote:
> I thought of looking closer at some core-updates failures and looked at
> this evaluation:
>
> https://hydra.gnu.org/eval/109914?full=1&compare=109912
>
> Randomly I stumbled over a failing teeworlds:
>
> https://hydra.gnu.org/job/gnu/core-updates/teeworlds-0.6.4.x86_64-linux

This old bug [1] is about teeworlds and core-updates.  Well, I have not
read in full details the report but since teeworlds had been updated,
currently builds with 3694c0d, hydra is now down, and core-updates
merges, I appears to me reasonable to close this bug.  WDYT?

1: <http://issues.guix.gnu.org/issue/30518>

All the best,
simon




Reply sent to zimoun <zimon.toutoune <at> gmail.com>:
You have taken responsibility. (Tue, 17 Aug 2021 21:47:07 GMT) Full text and rfc822 format available.

Notification sent to Björn Höfling <bjoern.hoefling <at> bjoernhoefling.de>:
bug acknowledged by developer. (Tue, 17 Aug 2021 21:47:07 GMT) Full text and rfc822 format available.

Message #13 received at 30518-done <at> debbugs.gnu.org (full text, mbox):

From: zimoun <zimon.toutoune <at> gmail.com>
To: Björn Höfling <bjoern.hoefling <at> bjoernhoefling.de>
Cc: 30518-done <at> debbugs.gnu.org
Subject: Re: bug#30518: teeworlds fails on core-updates due to
 freetype-update (and contains files to be snipped)
Date: Tue, 17 Aug 2021 23:40:20 +0200
Hi,

On Mon, 05 Jul 2021 at 15:23, zimoun <zimon.toutoune <at> gmail.com> wrote:
> On Sun, 18 Feb 2018 at 21:46, Björn Höfling <bjoern.hoefling <at> bjoernhoefling.de> wrote:

>> I thought of looking closer at some core-updates failures and looked at
>> this evaluation:
>>
>> https://hydra.gnu.org/eval/109914?full=1&compare=109912
>>
>> Randomly I stumbled over a failing teeworlds:
>>
>> https://hydra.gnu.org/job/gnu/core-updates/teeworlds-0.6.4.x86_64-linux
>
> This old bug [1] is about teeworlds and core-updates.  Well, I have not
> read in full details the report but since teeworlds had been updated,
> currently builds with 3694c0d, hydra is now down, and core-updates
> merges, I appears to me reasonable to close this bug.  WDYT?

Therefore, I am closing.

All the best,
simon




bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Wed, 15 Sep 2021 11:24:05 GMT) Full text and rfc822 format available.

This bug report was last modified 2 years and 223 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.