Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 647266

Summary: dev-games/ogre-1.11.1 (stable) and 2.1 (dev) version bump request
Product: Gentoo Linux Reporter: Oleg Korsak <kamikaze.is.waiting.you>
Component: Current packagesAssignee: Sven Eden <sven.eden>
Status: RESOLVED FIXED    
Severity: normal CC: aballier, games, jouni.kosonen, leio, ros
Priority: Normal    
Version: unspecified   
Hardware: All   
OS: Linux   
URL: https://www.ogre3d.org/about/what-version-to-choose
See Also: https://github.com/gentoo/gentoo/pull/8153
https://github.com/gentoo/gentoo/pull/9474
Whiteboard:
Package list:
Runtime testing required: ---

Description Oleg Korsak 2018-02-11 02:22:08 UTC
There are 1.10.11 (stable) and 2.1 of this package. 1.9.0 was released in 2013 btw.
Comment 1 Sven Eden 2018-03-22 17:12:59 UTC
I take this as proxy, as I am working on appropriate ebuilds.

Currently I am on the 1.10.11 ebuild. The build system has changed compared to the old 1.8/1.9 series, and I am facing some compilation issues. Nothing that can't be fixed, though.
Comment 2 Sven Eden 2018-03-23 08:33:51 UTC
A working ebuild for v1.10.11 can be tested using my overlay 'seden' via layman.

Tested so far were almost all examples using /usr/bin/SampleBrowser with OpenGL and Gl3Plus. Oddly the terrain examples do only work with my integrated Intel HD chipset. When I use my discrete nvidia card (using primusrun) the terrains look odd and the skyboxes stop working.
Comment 3 Sven Eden 2018-03-23 19:31:01 UTC
A working (but highly experimental) ebuild for v2.1-r20180323 can be tested using my overlay 'seden' via layman.

Don't expect any wonders, though...
Comment 4 Sven Eden 2018-03-29 05:33:13 UTC
A little feedback: I am still waiting on a different PR to get merged. The portage tree is massive, so I do not want to add and push branches. Should be any day now, though.

However, some feedback on the experimental ebuilds in my overlay would be great. If there is anything to fix, I'd be happy to do so before creating a PR on the portage tree.
Comment 5 Sven Eden 2018-04-04 13:42:51 UTC
I have pushed a new ebuild for v2.1

It has proven to be a bad idea to pull the 2.1 branch from github, as that one is only updated sporadically. The development takes place on bitbucket.

*sigh*... this means I now have mercurial just for that one...

All plugins and components at least build. However, I have yet to find out, why the build system refuses to install the samples and the sample sources. Neither cmake-gui nor looking (roughly) over the many CMakeList.txt files popped up a specific clue.

If the samples aren't yet to be installed by the build system, I'll add a manual install to the ebuild.
Comment 6 Sven Eden 2018-04-09 06:01:16 UTC
The current state in my overlay has changed and is now as follows:

dev-games/ogre/ogre-1.10.11 : Current stable release
dev-games/ogre/ogre-1.11-r20180331 : 1.11 Development branch "default"
dev-games/ogre/ogre-2.1-r20180329 : 2.1 Development branch "v2-1"

The latter now also copies the Samples directory. The build system itself does not do it. And I have changed the path from /usr/lib64/OGRE/Samples to /usr/share/OGRE/Samples, as that is where "Media" goes anyway.
Comment 7 Sven Eden 2018-04-25 05:48:41 UTC
Update: I am working on overhauling the ebuilds for a PR.

This takes a bit of time, as there have been some important commits in the last four weeks, both for 1.11 and 2.1.

I won't get my PR ready today, but am rather optimistic to have it prepared by tomorrow.

Games team, whom shall I ping?
Comment 8 Larry the Git Cow gentoo-dev 2018-06-17 18:44:45 UTC
The bug has been referenced in the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=56eb120ed955d25b33a0045145f55ca7ce8cab56

commit 56eb120ed955d25b33a0045145f55ca7ce8cab56
Author:     Sven Eden <yamakuzure@gmx.net>
AuthorDate: 2018-04-25 05:58:45 +0000
Commit:     Andreas Sturmlechner <asturm@gentoo.org>
CommitDate: 2018-06-17 18:44:25 +0000

    dev-games/ogre: Add ebuild for the latest release v1.10.11
    
    This is the latest stable release of Ogre3D, released on 2017-12-31.
    
    Bug: https://bugs.gentoo.org/647266
    Tested-by: Sven Eden yamakuzure@gmx.net
    
    Package-Manager: Portage-2.3.28, Repoman-2.3.9

 dev-games/ogre/Manifest                            |   1 +
 ...ogre-1.10.11-fix_double_precision-88f0d5b.patch |  29 ++++++
 dev-games/ogre/files/ogre-1.10.11-media_path.patch |  18 ++++
 .../ogre/files/ogre-1.10.11-resource_path.patch    |  18 ++++
 dev-games/ogre/files/ogre-1.10.11-samples.patch    |  13 +++
 dev-games/ogre/ogre-1.10.11.ebuild                 | 115 +++++++++++++++++++++
 6 files changed, 194 insertions(+)
Comment 9 Wojciech Myrda 2018-07-19 08:55:17 UTC
@Sven
Hence this bug is still open. Have You tried to port the ebuild to version 1.10.12 https://github.com/OGRECave/ogre/releases/tag/v1.10.12 ? Patches for 1.10.11 applied cleanly with exception of ogre-1.10.11-fix_double_precision-88f0d5b.patch which after looking at the code seems is already applied. Anyway after removing that one patch it failed to compile for me with bunch of errors relating to OGRE_RESOURCEMANAGER_STRICT see below:

In file included from /tmp/portage/dev-games/ogre-1.10.12/work/ogre-1.10.12/OgreMain/include/OgreConfig.h:35:0,
                 from /tmp/portage/dev-games/ogre-1.10.12/work/ogre-1.10.12/OgreMain/include/OgrePlatform.h:31,
                 from /tmp/portage/dev-games/ogre-1.10.12/work/ogre-1.10.12/OgreMain/include/OgreStableHeaders.h:40,
                 from /tmp/portage/dev-games/ogre-1.10.12/work/ogre-1.10.12/OgreMain/src/OgreAnimation.cpp:28:
/tmp/portage/dev-games/ogre-1.10.12/work/ogre-1.10.12_build/include/OgreBuildSettings.h:14:37: warning: "strict" is not defined, evaluates to 0 [-Wundef]
 #define OGRE_RESOURCEMANAGER_STRICT strict
                                     ^
/tmp/portage/dev-games/ogre-1.10.12/work/ogre-1.10.12/OgreMain/include/OgreResourceGroupManager.h:48:5: note: in expansion of macro ‘OGRE_RESOURCEMANAGER_STRICT’
 #if OGRE_RESOURCEMANAGER_STRICT == 0
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~
/tmp/portage/dev-games/ogre-1.10.12/work/ogre-1.10.12_build/include/OgreBuildSettings.h:14:37: warning: "strict" is not defined, evaluates to 0 [-Wundef]
 #define OGRE_RESOURCEMANAGER_STRICT strict
                                     ^
/tmp/portage/dev-games/ogre-1.10.12/work/ogre-1.10.12/OgreMain/include/OgreResourceGroupManager.h:342:6: note: in expansion of macro ‘OGRE_RESOURCEMANAGER_STRICT’
 #if !OGRE_RESOURCEMANAGER_STRICT
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~
Comment 10 Sven Eden 2018-07-19 09:56:48 UTC
@Wojciech : Yes and no.

I had played around a little, just to get a rough overview. But then I had to take care of something else first.

In the last two weeks I was on vacation, which I heroically used to brick my laptop.

Now I am up and running again and went through my todo list this morning. Ogre will be next on my list, as I want this to be resolved. dev-games/ogre has waited long enough, and I'd like to test the new releases myself.

However, I need to finish a report tonight, so I won't start until tomorrow.
What you already found out will be a big help, though, so thank you very much!
Comment 11 Sven Eden 2018-07-24 17:47:54 UTC
I have so far fixed my ebuild for ogre-1.10.12. Upstream changed some of the configuration options, but it works now.

You can try it out from my overlay "seden" (via layman). Please do not try the other two ebuilds, they won't work, yet.

I will retain the 1.10 series, as it is some "finalization" of the "old ways". The 1.11 series is already a means to get going towards ogre-2+.
The hope is, that software that successfully builds against ogre-1.9 will work with 1.10 also. But it will most likely not build against ogre-1.11+.

Well, ideally we'll find out that all dev-games/ogre consumers (aren't many anyway) are already compatible with ogre-1.11.1, and we'll end up stabilizing that. (Hey! Let me dream! ;-) )
Comment 12 Sven Eden 2018-07-25 06:09:07 UTC
And ogre-1.11.1 is available in my overlay for testing, too. :-)
Comment 13 Sven Eden 2018-07-26 16:27:05 UTC
And ogre-2.1-r20180723.ebuild is available as well.

However, repoman reports some issues I want to have fixed before creating a PR.
Comment 14 Sven Eden 2018-07-27 06:23:35 UTC
Added a gentoo specific patch to the 2.1 ebuild that adds gentoo specific paths to try for config loading.

The Samples work now.
Comment 15 Sven Eden 2018-07-27 17:21:00 UTC
I have fixed all issues repoman reported.

It would be nice if someone could test the three versions over the weekend.

Unfortunately there are five packages which do not limit the ogre version they depend upon. This will have to be fixed.

dev-games/cegui   : games@gentoo.org
dev-games/mygui   : games@gentoo.org
dev-ros/rviz      : ros@gentoo.org
games-rpg/sumwars : games@gentoo.org
sci-libs/ViSP     : aballier@gentoo.org

I'll add their maintainers to the CC list. Luckily that makes only two, games@gentoo.org is already CC'd.
Comment 16 Sven Eden 2018-07-30 05:37:08 UTC
Upate:

sci-libs/ViSP builds fine against dev-games/ogre-1.10.12.

dev-games/mygui, dev-games/cegui, and therefore games-rpg/sumwars, which depends on dev-games/cegui, do not build against any version.

However, both cegui and mygui have development going on to move further. I heard that cegui master branch already builds against and works with ogre-2.1.
As I am planning to use cegui for my projects, I'll see whether I can come up with a viable life ebuild, at least for testing.

I can not test dev-ros/rviz, as I have absolutely no clue of this robotics stuff.

Oh, and sumwars looks pretty dead? Their main page is not displaying but reporting some errors, and their sourceforge page shows the last update was in spring 2014.
Comment 17 Sven Eden 2018-07-30 05:39:46 UTC
(In reply to Sven Eden from comment #16)
> dev-games/mygui, dev-games/cegui, and therefore games-rpg/sumwars, which
> depends on dev-games/cegui, do not build against any version.

Sorry for the double post. I just noticed that this could be misunderstood.
It should read:

"... do not build against any *of the new* versions."
Comment 18 Sven Eden 2018-08-03 05:10:36 UTC
I have checked the current development on Crazy Eddies GUI, and they seem to be working on making cegui compatible with all ogre versions up to 2.1.

At least a live ebuild with a small patch that makes cegui work fine with the new ogre-1.10.12 and ogre-1.11.1 releases was easy to whip up. See https://bugs.gentoo.org/658398 for that.

Currently I am preparing the PR for the new Ogre versions. But as there had been some QA issues last time, I want to double check all previous concerns, hints and tips, so I might eventually come up with PR that doesn't provoke any concerns this time. ;-)
Comment 19 Sven Eden 2018-08-06 17:55:26 UTC
Submitted PR: https://github.com/gentoo/gentoo/pull/9474
Comment 20 Larry the Git Cow gentoo-dev 2018-09-07 11:42:42 UTC
The bug has been referenced in the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=758ad2b0cd811e2340786b0eb12346872ee2cc4c

commit 758ad2b0cd811e2340786b0eb12346872ee2cc4c
Author:     Sven Eden <yamakuzure@gmx.net>
AuthorDate: 2018-08-06 06:11:24 +0000
Commit:     Andreas Sturmlechner <asturm@gentoo.org>
CommitDate: 2018-09-07 11:22:49 +0000

    dev-games/ogre: 1.10.12 version bump
    
    The latest stable release of the Ogre-1.10.x series comes with a largely
    overhauled ebuild regarding its USE flags and the Ogre configuration.
    
     * Either USE flag gles2, opengl or both must be selected now.
     * Removed gles3 and gl3pus USE flugs, as they are implied now.
     * USE flag "egl" added to select egl over glx.
     * Users can now select whether Ogre shall include support for a GL
       state cache or not.
     * The behavior of the Ogre resource manager can now be selected.
     * Added a patch to unbundle TinyXML again. Upstream removed that possibility.
    
    Bug: https://bugs.gentoo.org/647266
    Package-Manager: Portage-2.3.48, Repoman-2.3.10

 dev-games/ogre/Manifest                            |   1 +
 .../files/ogre-1.10.12-use_system_tinyxml.patch    |  42 +++++++
 dev-games/ogre/metadata.xml                        |  34 ++++--
 dev-games/ogre/ogre-1.10.12.ebuild                 | 124 +++++++++++++++++++++
 4 files changed, 192 insertions(+), 9 deletions(-)
Comment 21 Jouni Kosonen 2018-09-08 01:30:12 UTC
(In reply to Larry the Git Cow from comment #20)
>     dev-games/ogre: 1.10.12 version bump

I can't build media-libs/opencv-3.4.1-r4 against that, it complains about missing OgreApplicationContext.h 

That file used to exist as /usr/include/OGRE/Bites/OgreApplicationContext.h
in 0.10.11, with 0.10.12 there's no /usr/include/OGRE/Bites/ at all.
Comment 22 Sven Eden 2018-09-09 20:49:14 UTC
(In reply to Jouni Kosonen from comment #21)
> (In reply to Larry the Git Cow from comment #20)
> >     dev-games/ogre: 1.10.12 version bump
> 
> I can't build media-libs/opencv-3.4.1-r4 against that, it complains about
> missing OgreApplicationContext.h 
> 
> That file used to exist as /usr/include/OGRE/Bites/OgreApplicationContext.h
> in 0.10.11, with 0.10.12 there's no /usr/include/OGRE/Bites/ at all.

That's because the "beta-components" USE flag was changed to the common "experimental" USE flag.
Portage should have shown this to you when upgrading, so just enable that flag and you'll get Bites back.
Comment 23 Jouni Kosonen 2018-09-09 22:28:08 UTC
(In reply to Sven Eden from comment #22)
> (In reply to Jouni Kosonen from comment #21)
> > (In reply to Larry the Git Cow from comment #20)
> > >     dev-games/ogre: 1.10.12 version bump
> > 
> > I can't build media-libs/opencv-3.4.1-r4 against that, it complains about
> > missing OgreApplicationContext.h 
> > 
> > That file used to exist as /usr/include/OGRE/Bites/OgreApplicationContext.h
> > in 0.10.11, with 0.10.12 there's no /usr/include/OGRE/Bites/ at all.
> 
> That's because the "beta-components" USE flag was changed to the common
> "experimental" USE flag.
> Portage should have shown this to you when upgrading, so just enable that
> flag and you'll get Bites back.

Thanks, I see that now in the ebuild. The 1.10.11 in the main tree never had the beta-components flag either, there was no use flag controlling Bites at all.
Comment 24 Sven Eden 2018-09-10 06:00:07 UTC
(In reply to Jouni Kosonen from comment #23)
> (In reply to Sven Eden from comment #22)
> > (In reply to Jouni Kosonen from comment #21)
> > > (In reply to Larry the Git Cow from comment #20)
> > > >     dev-games/ogre: 1.10.12 version bump
> > > 
> > > I can't build media-libs/opencv-3.4.1-r4 against that, it complains about
> > > missing OgreApplicationContext.h 
> > > 
> > > That file used to exist as /usr/include/OGRE/Bites/OgreApplicationContext.h
> > > in 0.10.11, with 0.10.12 there's no /usr/include/OGRE/Bites/ at all.
> > 
> > That's because the "beta-components" USE flag was changed to the common
> > "experimental" USE flag.
> > Portage should have shown this to you when upgrading, so just enable that
> > flag and you'll get Bites back.
> 
> Thanks, I see that now in the ebuild. The 1.10.11 in the main tree never had
> the beta-components flag either, there was no use flag controlling Bites at
> all.

Ahh... You are right, of course... That was an oversight in the previous ebuild, sorry!
Comment 25 Larry the Git Cow gentoo-dev 2018-10-07 18:25:17 UTC
The bug has been closed via the following commit(s):

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

commit caa70850f4a747a5a5b9f8bd6d0e541e1f2b4310
Author:     Sven Eden <yamakuzure@gmx.net>
AuthorDate: 2018-09-07 06:32:24 +0000
Commit:     Andreas Sturmlechner <asturm@gentoo.org>
CommitDate: 2018-10-07 18:22:28 +0000

    dev-games/ogre: Pre 2.1 release snapshot 2018-09-01 added
    
    As the future of Ogre changes a lot of the old API, it is important to have
    access to the new system as early as possible. The current development state
    is quite usable already, although not all components have been ported, yet.
    
    Providing an ebuild for the new 2.1 series to interested users and developers,
    everybody gets the chance to adapt their project to the future of Ogre.
    
    This is done using snapshot ebuilds, because not all commits in the Ogre tree
    provide buildable revisions. Further it is easier to test newly ported
    components when snapshot ebuilds are used.
    
    Bug: https://bugs.gentoo.org/647266
    Closes: https://bugs.gentoo.org/647266
    Signed-off-by: Sven Eden <sven.eden@prydeworx.com>
    Package-Manager: Portage-2.3.48, Repoman-2.3.10
    Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>

 dev-games/ogre/Manifest                            |   1 +
 .../files/ogre-2.1-enhance_config_loading.patch    |  29 ++++
 dev-games/ogre/files/ogre-2.1-media_path.patch     |  28 ++++
 dev-games/ogre/files/ogre-2.1-resource_path.patch  |  18 +++
 dev-games/ogre/files/ogre-2.1-samples.patch        |  26 ++++
 dev-games/ogre/metadata.xml                        |   8 ++
 dev-games/ogre/ogre-2.1_pre20180901.ebuild         | 153 +++++++++++++++++++++
 7 files changed, 263 insertions(+)

Additionally, it has been referenced in the following commit(s):

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

commit caa70850f4a747a5a5b9f8bd6d0e541e1f2b4310
Author:     Sven Eden <yamakuzure@gmx.net>
AuthorDate: 2018-09-07 06:32:24 +0000
Commit:     Andreas Sturmlechner <asturm@gentoo.org>
CommitDate: 2018-10-07 18:22:28 +0000

    dev-games/ogre: Pre 2.1 release snapshot 2018-09-01 added
    
    As the future of Ogre changes a lot of the old API, it is important to have
    access to the new system as early as possible. The current development state
    is quite usable already, although not all components have been ported, yet.
    
    Providing an ebuild for the new 2.1 series to interested users and developers,
    everybody gets the chance to adapt their project to the future of Ogre.
    
    This is done using snapshot ebuilds, because not all commits in the Ogre tree
    provide buildable revisions. Further it is easier to test newly ported
    components when snapshot ebuilds are used.
    
    Bug: https://bugs.gentoo.org/647266
    Closes: https://bugs.gentoo.org/647266
    Signed-off-by: Sven Eden <sven.eden@prydeworx.com>
    Package-Manager: Portage-2.3.48, Repoman-2.3.10
    Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>

 dev-games/ogre/Manifest                            |   1 +
 .../files/ogre-2.1-enhance_config_loading.patch    |  29 ++++
 dev-games/ogre/files/ogre-2.1-media_path.patch     |  28 ++++
 dev-games/ogre/files/ogre-2.1-resource_path.patch  |  18 +++
 dev-games/ogre/files/ogre-2.1-samples.patch        |  26 ++++
 dev-games/ogre/metadata.xml                        |   8 ++
 dev-games/ogre/ogre-2.1_pre20180901.ebuild         | 153 +++++++++++++++++++++
 7 files changed, 263 insertions(+)

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6951cd9bba219de923a83bcd5c7ca4c18346c89f

commit 6951cd9bba219de923a83bcd5c7ca4c18346c89f
Author:     Sven Eden <yamakuzure@gmx.net>
AuthorDate: 2018-09-07 06:27:06 +0000
Commit:     Andreas Sturmlechner <asturm@gentoo.org>
CommitDate: 2018-10-07 18:22:28 +0000

    dev-games/ogre: 1.11.2 version bump
    
    This is the second stable release of the current 1.11 series.
    Apart from stabilizing Ogre BITES, this series also adds json material support.
    
    Bug: https://bugs.gentoo.org/647266
    Signed-off-by: Sven Eden <sven.eden@prydeworx.com>
    Package-Manager: Portage-2.3.48, Repoman-2.3.10
    Closes: https://github.com/gentoo/gentoo/pull/9474
    Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>

 dev-games/ogre/Manifest                            |   1 +
 .../ogre-1.11.2-fix_sample_source_install.patch    |  18 +++
 dev-games/ogre/files/ogre-1.11.2-media_path.patch  |  18 +++
 .../ogre/files/ogre-1.11.2-resource_path.patch     |  14 ++
 dev-games/ogre/metadata.xml                        |   6 +-
 dev-games/ogre/ogre-1.11.2.ebuild                  | 143 +++++++++++++++++++++
 6 files changed, 199 insertions(+), 1 deletion(-)