Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 729000 - games-simulation/openttd-9999: needs porting to CMake (was: openttd-1.9.0-cflags.patch failed)
Summary: games-simulation/openttd-9999: needs porting to CMake (was: openttd-1.9.0-cfl...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal
Assignee: Gentoo Games
URL:
Whiteboard:
Keywords: PullRequest
Depends on:
Blocks:
 
Reported: 2020-06-21 13:06 UTC by Michal Plichta
Modified: 2021-08-10 03:33 UTC (History)
6 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
ebuild for OpenTTD 1.11.0-RC1, based on openttd-1.10.3.ebuild (openttd-1.11.0_rc1.ebuild,2.95 KB, text/plain)
2021-04-01 02:01 UTC, Brian McCarter
Details
patch to fix gentoo warning about build type (openttd-1.11.0_rc1-cmake-build-type.patch,506 bytes, patch)
2021-04-01 02:03 UTC, Brian McCarter
Details | Diff
patch to prevent manpage compression (openttd-1.11.0_rc1-dont-compress-manpages.patch,692 bytes, patch)
2021-04-01 02:04 UTC, Brian McCarter
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Michal Plichta 2020-06-21 13:06:20 UTC
From https://github.com/OpenTTD/OpenTTD
   9aca6ff97..1ac0d4a5b             -> refs/git-r3/HEAD
git symbolic-ref refs/git-r3/games-simulation/openttd/0/__main__ refs/git-r3/HEAD
 * Checking out https://github.com/OpenTTD/OpenTTD.git to /var/tmp/portage/games-simulation/openttd-9999/work/openttd-9999 ...
git checkout --quiet refs/git-r3/HEAD
GIT update -->
   repository:               https://github.com/OpenTTD/OpenTTD.git
   updating from commit:     9aca6ff971e95fbeaff9302cf5d8d44a80ed0206
   to commit:                1ac0d4a5b2c8f5e5c9a4629091c81e3f41a4c126
 src/network/core/address.cpp     | 13 +++++++------
 src/network/core/address.h       |  4 +++-
 src/network/core/tcp_content.cpp |  6 +++---
 src/network/core/udp.cpp         | 12 ++++++------
 src/network/network_gui.cpp      |  4 +++-
 src/network/network_udp.cpp      | 12 ++++++------
 6 files changed, 28 insertions(+), 23 deletions(-)
>>> Source unpacked in /var/tmp/portage/games-simulation/openttd-9999/work
>>> Preparing source in /var/tmp/portage/games-simulation/openttd-9999/work/openttd-9999 ...
 * Applying openttd-1.9.0-cflags.patch ...
can't find file to patch at input line 15
Perhaps you used the wrong -p or --strip option?
The text leading up to this was:
--------------------------
|From 6d72f33efe9f911d1427795a06c13d9dcd6fa222 Mon Sep 17 00:00:00 2001
|From: Lars Wendler <polynomial-c@gentoo.org>
|Date: Wed, 3 Apr 2019 14:11:42 +0200
|Subject: [PATCH] Don't mess with our CFLAGS
|
|Signed-off-by: Lars Wendler <polynomial-c@gentoo.org>
|---
| config.lib | 18 ------------------
| 1 file changed, 18 deletions(-)
|
|diff --git a/config.lib b/config.lib
|index f65aaa535..7789c0bea 100644
|--- a/config.lib
|+++ b/config.lib
--------------------------
No file to patch.  Skipping patch.
3 out of 3 hunks ignored    

Reproducible: Always
Comment 1 igel 2021-02-03 17:06:17 UTC
There are other problems with this ebuild as well. Upstream switching to cmake is another one.
Comment 2 Sam James archtester Gentoo Infrastructure gentoo-dev Security 2021-03-17 05:55:42 UTC
Is this fine now?
Comment 3 Michal Plichta 2021-03-18 14:31:18 UTC
not really....
emc@clayman ~ $ sudo emerge games-simulation/openttd
Calculating dependencies... done!

>>> Verifying ebuild manifests

>>> Emerging (1 of 1) games-simulation/openttd-9999::gentoo
>>> Unpacking source...
 * Repository id: OpenTTD_OpenTTD.git
 * To override fetched repository properties, use:
 *   EGIT_OVERRIDE_REPO_OPENTTD_OPENTTD
 *   EGIT_OVERRIDE_BRANCH_OPENTTD_OPENTTD
 *   EGIT_OVERRIDE_COMMIT_OPENTTD_OPENTTD
 *   EGIT_OVERRIDE_COMMIT_DATE_OPENTTD_OPENTTD
 * 
 * Fetching https://github.com/OpenTTD/OpenTTD.git ...
git fetch https://github.com/OpenTTD/OpenTTD.git +HEAD:refs/git-r3/HEAD
remote: Enumerating objects: 3515, done.
remote: Counting objects: 100% (3515/3515), done.
remote: Compressing objects: 100% (58/58), done.
remote: Total 5992 (delta 3494), reused 3470 (delta 3457), pack-reused 2477
Receiving objects: 100% (5992/5992), 13.09 MiB | 6.83 MiB/s, done.
Resolving deltas: 100% (5133/5133), completed with 736 local objects.
From https://github.com/OpenTTD/OpenTTD
   b3362c526..8ad75e479             -> refs/git-r3/HEAD
 * [new tag]             1.11.0-beta1 -> 1.11.0-beta1
 * [new tag]             1.11.0-beta2 -> 1.11.0-beta2
git symbolic-ref refs/git-r3/games-simulation/openttd/0/__main__ refs/git-r3/HEAD
 * Checking out https://github.com/OpenTTD/OpenTTD.git to /var/tmp/portage/games-simulation/openttd-9999/work/openttd-9999 ...
git checkout --quiet refs/git-r3/HEAD
GIT update -->
   repository:               https://github.com/OpenTTD/OpenTTD.git
   updating from commit:     b3362c526a8024b2c1bd4185407d2e1fdac3df41
   to commit:                8ad75e4798d099795dff75a37cd637a9a435047b
 .github/PULL_REQUEST_TEMPLATE.md                                  |    48 +
 {azure-pipelines => .github}/changelog.sh                         |     0
:
:
 src/zoom_type.h                                                   |     5 +
 604 files changed, 44056 insertions(+), 20442 deletions(-)
>>> Source unpacked in /var/tmp/portage/games-simulation/openttd-9999/work
>>> Preparing source in /var/tmp/portage/games-simulation/openttd-9999/work/openttd-9999 ...
 * Applying openttd-1.9.0-cflags.patch ...
can't find file to patch at input line 15
Perhaps you used the wrong -p or --strip option?
The text leading up to this was:
--------------------------
|From 6d72f33efe9f911d1427795a06c13d9dcd6fa222 Mon Sep 17 00:00:00 2001
|From: Lars Wendler <polynomial-c@gentoo.org>
|Date: Wed, 3 Apr 2019 14:11:42 +0200
|Subject: [PATCH] Don't mess with our CFLAGS
|
|Signed-off-by: Lars Wendler <polynomial-c@gentoo.org>
|---
| config.lib | 18 ------------------
| 1 file changed, 18 deletions(-)
|
|diff --git a/config.lib b/config.lib
|index f65aaa535..7789c0bea 100644
|--- a/config.lib
|+++ b/config.lib
--------------------------
No file to patch.  Skipping patch.
3 out of 3 hunks ignored                                                                                                                              [ !! ]
 * ERROR: games-simulation/openttd-9999::gentoo failed (prepare phase):
 *   patch -p1  failed with /var/tmp/portage/games-simulation/openttd-9999/files/openttd-1.9.0-cflags.patch
 * 
 * Call stack:
 *               ebuild.sh, line  125:  Called src_prepare
 *             environment, line 1837:  Called xdg_src_prepare
 *             environment, line 2710:  Called default
 *      phase-functions.sh, line  855:  Called default_src_prepare
 *      phase-functions.sh, line  920:  Called __eapi6_src_prepare
 *             environment, line  254:  Called eapply '/var/tmp/portage/games-simulation/openttd-9999/files/openttd-1.9.0-cflags.patch' '/var/tmp/portage/games-simulation/openttd-9999/files/openttd-1.9.0-dont_compress_manpages.patch'
 *             environment, line  732:  Called _eapply_patch '/var/tmp/portage/games-simulation/openttd-9999/files/openttd-1.9.0-cflags.patch'
 *             environment, line  670:  Called __helpers_die 'patch -p1  failed with /var/tmp/portage/games-simulation/openttd-9999/files/openttd-1.9.0-cflags.patch'
 *   isolated-functions.sh, line  112:  Called die
 * The specific snippet of code:
 *   		die "$@"
 * 
 * If you need support, post the output of `emerge --info '=games-simulation/openttd-9999::gentoo'`,
 * the complete build log and the output of `emerge -pqv '=games-simulation/openttd-9999::gentoo'`.
 * The complete build log is located at '/var/log/portage/games-simulation:openttd-9999:20210318-142858.log'.
 * For convenience, a symlink to the build log is located at '/var/tmp/portage/games-simulation/openttd-9999/temp/build.log'.
 * The ebuild environment file is located at '/var/tmp/portage/games-simulation/openttd-9999/temp/environment'.
 * Working directory: '/var/tmp/portage/games-simulation/openttd-9999/work/openttd-9999'
 * S: '/var/tmp/portage/games-simulation/openttd-9999/work/openttd-9999'

>>> Failed to emerge games-simulation/openttd-9999, Log file:

>>>  '/var/log/portage/games-simulation:openttd-9999:20210318-142858.log'
Comment 4 Michal Plichta 2021-03-18 14:34:51 UTC
emc@clayman ~ $ ls -la /usr/portage/games-simulation/openttd/
total 36
drwxr-xr-x  3 root root 4096 Nov 11 19:15 .
drwxr-xr-x 23 root root 4096 Mar 16 19:09 ..
drwxr-xr-x  2 root root 4096 Nov 11 19:15 files
-rw-r--r--  1 root root 2462 Nov 11 12:39 Manifest
-rw-r--r--  1 root root  752 Jan 25  2016 metadata.xml
-rw-r--r--  1 root root 4960 Nov 11 12:39 openttd-1.10.3.ebuild
-rw-r--r--  1 root root 4928 Nov 11 12:39 openttd-9999.ebuild
emc@clayman ~ $ ls -la /usr/portage/games-simulation/openttd/files/
total 24
drwxr-xr-x 2 root root 4096 Nov 11 19:15 .
drwxr-xr-x 3 root root 4096 Nov 11 19:15 ..
-rw-r--r-- 1 root root  766 Nov 11 12:39 openttd-1.10.3-icu68.patch
-rw-r--r-- 1 root root 1418 Apr  3  2019 openttd-1.9.0-cflags.patch
-rw-r--r-- 1 root root 1137 Apr  3  2019 openttd-1.9.0-dont_compress_manpages.patch
-rw-r--r-- 1 root root  306 Jul 19  2017 openttd.initd-r1
emc@clayman ~ $
Comment 5 Sam James archtester Gentoo Infrastructure gentoo-dev Security 2021-03-19 02:40:29 UTC
Thanks. It needs porting to CMake as a whole. I'll CC poly as it's his patch but that doesn't mean he's necessarily got the time to port this.

It looks like upstream haven't made a lot of the old options actually configurable :|
Comment 6 Brian McCarter 2021-04-01 02:01:44 UTC
Created attachment 696597 [details]
ebuild for OpenTTD 1.11.0-RC1, based on openttd-1.10.3.ebuild
Comment 7 Brian McCarter 2021-04-01 02:03:40 UTC
Created attachment 696600 [details, diff]
patch to fix gentoo warning about build type
Comment 8 Brian McCarter 2021-04-01 02:04:11 UTC
Created attachment 696603 [details, diff]
patch to prevent manpage compression
Comment 9 Brian McCarter 2021-04-01 02:19:17 UTC
I've hacked together a working ebuild for the new cmake build, using openttd-1.10.3.ebuild as a starting point.  It could still use some work.  Please anybody feel free to make edits.  

Sam James: Your comment about old options no longer being configurable is correct. I removed the use flags that no longer work (most of them) and left the dependencies, because cmake probes for them and uses the dependencies if it finds them.  Not ideal, but the alternative would either be mysterious crashes if a dependency disappears, or some heavy modification of the build system.
Comment 10 Larry the Git Cow gentoo-dev 2021-06-28 22:13:34 UTC
The bug has been referenced in the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=65c9998903c9780c36696c189f3a814e331e4270

commit 65c9998903c9780c36696c189f3a814e331e4270
Author:     Azamat H. Hackimov <azamat.hackimov@gmail.com>
AuthorDate: 2021-05-21 16:45:25 +0000
Commit:     James Le Cuirot <chewi@gentoo.org>
CommitDate: 2021-06-28 22:13:07 +0000

    games-simulation/openttd: update to 1.11.2
    
    Update version, migrate to cmake, cleanup.
    Bug: https://bugs.gentoo.org/729000
    
    Package-Manager: Portage-3.0.18, Repoman-3.0.2
    Signed-off-by: Azamat H. Hackimov <azamat.hackimov@gmail.com>
    Signed-off-by: James Le Cuirot <chewi@gentoo.org>

 games-simulation/openttd/Manifest                  |   1 +
 .../files/openttd-1.11.2_dont_compress_man.patch   |  29 ++++++
 games-simulation/openttd/metadata.xml              |   6 +-
 games-simulation/openttd/openttd-1.11.2.ebuild     | 100 +++++++++++++++++++++
 4 files changed, 135 insertions(+), 1 deletion(-)
Comment 11 Sam James archtester Gentoo Infrastructure gentoo-dev Security 2021-08-10 03:33:27 UTC
Live ebuild is gone now as well.