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

Please note: This is a static page, with minimal formatting, updated once a day.
Click here to see this page with the latest information and nicer formatting.

Package: guix; Reported by: Björn Höfling <bjoern.hoefling@HIDDEN>; dated Sun, 18 Feb 2018 20:47:02 UTC; Maintainer for guix is bug-guix@HIDDEN.

Message received at submit <at> debbugs.gnu.org:


Received: (at submit) by debbugs.gnu.org; 18 Feb 2018 20:46:52 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sun Feb 18 15:46:52 2018
Received: from localhost ([127.0.0.1]:50223 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1enVrI-0004Dp-6o
	for submit <at> debbugs.gnu.org; Sun, 18 Feb 2018 15:46:52 -0500
Received: from eggs.gnu.org ([208.118.235.92]:51717)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <bjoern.hoefling@HIDDEN>)
 id 1enVrG-0004Db-TT
 for submit <at> debbugs.gnu.org; Sun, 18 Feb 2018 15:46:51 -0500
Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71)
 (envelope-from <bjoern.hoefling@HIDDEN>)
 id 1enVrA-0003YZ-9J
 for submit <at> debbugs.gnu.org; Sun, 18 Feb 2018 15:46:45 -0500
X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org
X-Spam-Level: **
X-Spam-Status: No, score=2.1 required=5.0 tests=BAYES_50,TRACKER_ID
 autolearn=disabled version=3.3.2
Received: from lists.gnu.org ([2001:4830:134:3::11]:47698)
 by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:32)
 (Exim 4.71) (envelope-from <bjoern.hoefling@HIDDEN>)
 id 1enVrA-0003YB-5P
 for submit <at> debbugs.gnu.org; Sun, 18 Feb 2018 15:46:44 -0500
Received: from eggs.gnu.org ([2001:4830:134:3::10]:42672)
 by lists.gnu.org with esmtp (Exim 4.71)
 (envelope-from <bjoern.hoefling@HIDDEN>)
 id 1enVr8-0002Ef-Hb
 for bug-guix@HIDDEN; Sun, 18 Feb 2018 15:46:43 -0500
Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71)
 (envelope-from <bjoern.hoefling@HIDDEN>)
 id 1enVr5-0003Od-EX
 for bug-guix@HIDDEN; Sun, 18 Feb 2018 15:46:42 -0500
Received: from m4s11.vlinux.de ([83.151.27.109]:51456 helo=bjoernhoefling.de)
 by eggs.gnu.org with esmtp (Exim 4.71)
 (envelope-from <bjoern.hoefling@HIDDEN>)
 id 1enVr4-0003Ky-Vt
 for bug-guix@HIDDEN; Sun, 18 Feb 2018 15:46:39 -0500
Received: from alma-ubu (pD951FC9C.dip0.t-ipconnect.de [217.81.252.156])
 (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits))
 (No client certificate requested)
 by bjoernhoefling.de (Postfix) with ESMTPSA id 1ABD5409A9
 for <bug-guix@HIDDEN>; Sun, 18 Feb 2018 21:46:37 +0100 (CET)
Date: Sun, 18 Feb 2018 21:46:36 +0100
From: =?UTF-8?B?QmrDtnJuIEjDtmZsaW5n?= <bjoern.hoefling@HIDDEN>
To: bug-guix@HIDDEN
Subject: teeworlds fails on core-updates due to freetype-update (and
 contains files to be snipped)
Message-ID: <20180218214636.006a7f6d@alma-ubu>
X-Mailer: Claws Mail 3.13.2 (GTK+ 2.24.30; x86_64-pc-linux-gnu)
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: quoted-printable
X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic]
 [fuzzy]
X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6.x
X-Received-From: 2001:4830:134:3::11
X-Spam-Score: -3.9 (---)
X-Debbugs-Envelope-To: submit
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.9 (---)

I thought of looking closer at some core-updates failures and looked at
this evaluation:

https://hydra.gnu.org/eval/109914?full=3D1&compare=3D109912

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 =E2=80=98void CTextRender::R=
enderSetup(CFont*, int)=E2=80=99:
src/engine/client/text.cpp:425:46: error: =E2=80=98FT_Set_Pixel_Sizes=E2=80=
=99 was not declared in this scope
   FT_Set_Pixel_Sizes(pFont->m_FtFace, 0, size);
                                              ^
src/engine/client/text.cpp: In member function =E2=80=98float CTextRender::=
Kerning(CFont*, int, int)=E2=80=99:
src/engine/client/text.cpp:431:76: error: =E2=80=98FT_Get_Kerning=E2=80=99 =
was not declared in this scope
   FT_Get_Kerning(pFont->m_FtFace, Left, Right, FT_KERNING_DEFAULT, &Kernin=
g);
                                                                           =
 ^
src/engine/client/text.cpp: In member function =E2=80=98virtual void CTextR=
ender::Init()=E2=80=99:
src/engine/client/text.cpp:459:32: error: =E2=80=98FT_Init_FreeType=E2=80=
=99 was not declared in this scope
   FT_Init_FreeType(&m_FTLibrary);
                                ^
src/engine/client/text.cpp: In member function =E2=80=98virtual CFont* CTex=
tRender::LoadFont(const char*)=E2=80=99:
src/engine/client/text.cpp:470:70: error: =E2=80=98FT_New_Face=E2=80=99 was=
 not declared in this scope
   if(FT_New_Face(m_FTLibrary, pFont->m_aFilename, 0, &pFont->m_FtFace))
                                                                      ^
bam: ret=3D256 g++ -Wall -fno-exceptions -fno-exceptions  -Wall  `sdl-confi=
g --cflags` `freetype-config --cflags` -O2 -c -DCONF_RELEASE -I "src" -I "o=
ther/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.dr=
v' 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.=20

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 mak=
er.")
                '(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 mak=
er.")
                 "if true then")
                (("wavpack =3D .*")
                 "wavpack =3D {}
-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=C3=B6rn








Acknowledgement sent to Björn Höfling <bjoern.hoefling@HIDDEN>:
New bug report received and forwarded. Copy sent to bug-guix@HIDDEN. Full text available.
Report forwarded to bug-guix@HIDDEN:
bug#30518; Package guix. Full text available.
Please note: This is a static page, with minimal formatting, updated once a day.
Click here to see this page with the latest information and nicer formatting.
Last modified: Mon, 25 Nov 2019 12:00:02 UTC

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