Bug 1306226

Summary: 7kaa: FTBFS in rawhide on armhfp
Product: [Fedora] Fedora Reporter: Fedora Release Engineering <releng>
Component: 7kaaAssignee: Ding-Yi Chen <dchen>
Status: CLOSED NEXTRELEASE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: high Docs Contact:
Priority: unspecified    
Version: rawhideCC: dchen, projects.rg, yselkowi
Target Milestone: ---   
Target Release: ---   
Hardware: armhfp   
OS: Linux   
Whiteboard:
Fixed In Version: 7kaa-2.14.5-12.fc24 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2016-03-08 02:38:17 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 1305208, 1291126, 1291128    
Attachments:
Description Flags
build.log
none
root.log
none
state.log none

Description Fedora Release Engineering 2016-02-10 11:05:29 UTC
Your package 7kaa failed to build from source in current rawhide.

http://koji.fedoraproject.org/koji/taskinfo?taskID=12803957

For details on mass rebuild see https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild

Comment 1 Fedora Release Engineering 2016-02-10 11:05:32 UTC
Created attachment 1122748 [details]
build.log

Comment 2 Fedora Release Engineering 2016-02-10 11:05:34 UTC
Created attachment 1122749 [details]
root.log

Comment 3 Fedora Release Engineering 2016-02-10 11:05:35 UTC
Created attachment 1122750 [details]
state.log

Comment 4 Raphael Groner 2016-02-10 11:31:08 UTC
OBULLET.cpp: At global scope:
OBULLET.cpp:41:78: error: narrowing conversion of '-1' from 'int' to 'char' inside { } [-Wnarrowing]
  { 0, 0,-1, 0, 1,-1,-1, 1, 1, 0,-2, 0, 2, -1,-2,-2,-1, 1, 2, 2, 1,-2,-2, 2, 2};

That's cause gcc6 enforces you to use 'signed int' instead of just 'int' as the variable type. We've seen that already in dreamchess-tools, psi and iris packages. A patch should be easy to do and upstreamable.

Comment 5 Raphael Groner 2016-02-13 21:56:22 UTC
Odd. I can not reproduce locally for f24 with fedpkg mockbuild, but fedpkg scratch-build fails on koji.

Comment 6 Kevin Kofler 2016-02-13 23:50:13 UTC
> That's cause gcc6 enforces you to use 'signed int' instead of just 'int' as the
> variable type.

signed char actually. int is always signed. char can be signed or unsigned depending on the platform. On ARM, it defaults to unsigned. (You can use the -fsigned-char switch to force it to be signed, but the code should use "signed char" explicitly for maximum portability.) This previously compiled without error, but did not necessarily work right, because -1 was silently converted to 255 on ARM.

Comment 7 Raphael Groner 2016-02-15 21:07:32 UTC
We need a proper upstream(able) patch. Unfortunately, I do not see reasonable spare time to do that by myself in the near future.

Comment 8 Jan Kurik 2016-02-24 15:33:59 UTC
This bug appears to have been reported against 'rawhide' during the Fedora 24 development cycle.
Changing version to '24'.

More information and reason for this action is here:
https://fedoraproject.org/wiki/Fedora_Program_Management/HouseKeeping/Fedora24#Rawhide_Rebase

Comment 9 Raphael Groner 2016-02-27 17:56:28 UTC
Still b0rken. Maintainer, please urgently give any feedback or orphan this package.

It would be really sad to see this great game go away again in Fedora, I'm wondering why I did the package review recently (for you) and you can not actively care any more about package consistency as it's required by package maintainer responsibilities in our guidelines.

Comment 10 Ding-Yi Chen 2016-02-28 23:15:45 UTC
I intended to fix it around later this week or early next week.

Comment 11 Raphael Groner 2016-03-04 16:10:47 UTC
Friendly reminder (again). Please notice the awareness of FeSCo and take care to not get the package orphaned.

Comment 12 Upstream Release Monitoring 2016-03-08 01:37:16 UTC
yselkowitz's 7kaa-2.14.5-12.fc25 completed http://koji.fedoraproject.org/koji/buildinfo?buildID=742816

Comment 13 Yaakov Selkowitz 2016-03-08 02:38:17 UTC
The assumption that char is signed exists throughout the code.  A patch fixing all such occurrences would be quite extensive.  As a leaf package, building with -fsigned-char is the simplest solution.

Comment 14 Raphael Groner 2016-03-08 08:08:29 UTC
Wouldn't it be better to request from upstream the general change to unsigned char?

Comment 15 Yaakov Selkowitz 2016-03-08 08:12:05 UTC
(In reply to Raphael Groner from comment #14)
> Wouldn't it be better to request from upstream the general change to
> unsigned char?

signed char is fine, it just needs to be explicit.  Feel free to work with upstream for a fix in the code itself, but I looked into this and the changes would be extensive.

Comment 16 Raphael Groner 2016-03-08 08:16:13 UTC
(In reply to Yaakov Selkowitz from comment #15)
> (In reply to Raphael Groner from comment #14)
> > Wouldn't it be better to request from upstream the general change to
> > unsigned char?
> 
> signed char is fine, it just needs to be explicit.  Feel free to work with
> upstream for a fix in the code itself, but I looked into this and the
> changes would be extensive.

Ack. Besides the fact many upstreams do not care that much about ARM as an important platform to develop on, especially in gaming sector (my experience so far).

Comment 17 Raphael Groner 2016-03-08 09:06:04 UTC
Overseen you built for f24 as well, sorry.