Bug 1178361 - Review Request: stuntrally - Stunt Rally game with Track Editor, based on VDrift and OGRE [NEEDINFO]
Summary: Review Request: stuntrally - Stunt Rally game with Track Editor, based on VDr...
Status: CLOSED NOTABUG
Alias: None
Product: Fedora
Classification: Fedora
Component: Package Review
Version: rawhide
Hardware: All
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Nobody's working on this, feel free to take it
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Keywords: Reopened
Depends On: 1298316
Blocks: FE-DEADREVIEW FE-GAMESIG
TreeView+ depends on / blocked
 
Reported: 2015-01-04 00:14 UTC by MartinKG
Modified: 2018-11-01 16:53 UTC (History)
7 users (show)

(edit)
Clone Of:
(edit)
Last Closed: 2018-11-01 16:53:43 UTC
rosser.bjr: needinfo? (mgansser)


Attachments (Terms of Use)
0001-unbundle-tinyxml.patch (8.01 KB, patch)
2015-01-09 18:44 UTC, MartinKG
no flags Details | Diff
0002-unbundle-bullet.patch (9.51 KB, patch)
2015-01-09 18:46 UTC, MartinKG
no flags Details | Diff
0003-unbundle-shiny.patch (17.12 KB, patch)
2015-01-09 18:47 UTC, MartinKG
no flags Details | Diff
0004-unbundle-pagedgeometry.patch (8.14 KB, patch)
2015-01-09 18:48 UTC, MartinKG
no flags Details | Diff

Description MartinKG 2015-01-04 00:14:42 UTC
Spec URL: https://martinkg.fedorapeople.org/Review/SPECS/stuntrally.spec
SRPM URL: https://martinkg.fedorapeople.org/Review/SRPMS/stuntrally-2.5-1.fc21.src.rpm

Description: The game features 167 tracks in 34 sceneries and 19 cars + 4 vehicles.
Game modes include: Single Race, Tutorials, Championships, Challenges,
Multiplayer and Split Screen. Also Replays and Ghost drive are present.

The Track Editor allows creating and modifying tracks.
Both run on GNU/Linux and Windows.

The game aims at a rally style of driving (like in Richard Burns Rally),
with possible stunt elements (jumps, loops, pipes)
and uses a 3D spline generated road.

For full features list check our Wiki page:
http://code.google.com/p/vdrift-ogre/wiki/Features

Fedora Account System Username: martinkg

%changelog
* Sat Jan 03 2015 Martin Gansser <martinkg@fedoraproject.org> - 2.5-1
- initial build for Fedora


rpmlint stuntrally-2.5-1.fc21.x86_64.rpm
stuntrally.x86_64: W: wrong-file-end-of-line-encoding /usr/share/doc/stuntrally/Readme.txt
stuntrally.x86_64: W: no-manual-page-for-binary stuntrally
stuntrally.x86_64: W: no-manual-page-for-binary sr-editor
1 packages and 0 specfiles checked; 0 errors, 3 warnings.

rpmlint stuntrally-2.5-1.fc21.src.rpm
stuntrally.src:114: E: hardcoded-library-path in %{_prefix}/lib/OGRE/
stuntrally.src:115: E: hardcoded-library-path in %{_prefix}/lib/libshiny.a
1 packages and 0 specfiles checked; 2 errors, 0 warnings.

rpmlint stuntrally-data-2.5-1.fc21.noarch.rpm
stuntrally-data.noarch: W: no-documentation
1 packages and 0 specfiles checked; 0 errors, 1 warnings.

rpmlint stuntrally-devel-2.5-1.fc21.x86_64.rpm
stuntrally-devel.x86_64: W: spelling-error %description -l en_US shiny's -> shin's, shine's, shiny
stuntrally-devel.x86_64: W: no-documentation
1 packages and 0 specfiles checked; 0 errors, 2 warnings.

Comment 1 MartinKG 2015-01-04 00:19:07 UTC
(In reply to MartinKG from comment #0)
> 
> rpmlint stuntrally-2.5-1.fc21.x86_64.rpm
> stuntrally.x86_64: W: wrong-file-end-of-line-encoding
> /usr/share/doc/stuntrally/Readme.txt

could be solved by:
iconv -f iso-8859-1 -t utf-8 Readme.txt > Readme.txt.utf8 ; mv Readme.txt.utf8 Readme.txt

Comment 2 MartinKG 2015-01-04 19:02:29 UTC
upload new spec file, no SRPMS file due to size of approx. 900 MB:
Spec URL: https://martinkg.fedorapeople.org/Review/stuntrally-2.5-2/stuntrally.spec

I made also a review template with:
fedora-review -m fedora-rawhide-x86_64-rpmfusion_free -rn ../SRPMS/stuntrally-2.5-2.fc21.src.rpm
https://martinkg.fedorapeople.org/Review/review-template/stuntrally/review.txt

%changelog
* Sun Jan 04 2015 Martin Gansser <martinkg@fedoraproject.org> - 2.5-2
- fix wrong-script-end-of-line-encoding
- added BR desktop-file-utils
- added static subpackage

rpmlint output:
Checking: stuntrally-2.5-2.fc22.x86_64.rpm
          stuntrally-devel-2.5-2.fc22.x86_64.rpm
          stuntrally-static-2.5-2.fc22.x86_64.rpm
          stuntrally-data-2.5-2.fc22.noarch.rpm
          stuntrally-2.5-2.fc22.src.rpm
stuntrally.x86_64: W: no-manual-page-for-binary stuntrally
stuntrally.x86_64: W: no-manual-page-for-binary sr-editor
stuntrally-devel.x86_64: W: spelling-error %description -l en_US shiny's -> shin's, shine's, shiny
stuntrally-devel.x86_64: W: no-documentation
stuntrally-static.x86_64: W: no-documentation
stuntrally-data.noarch: W: no-documentation
stuntrally.src:132: E: hardcoded-library-path in %{_prefix}/lib/OGRE/
stuntrally.src:133: E: hardcoded-library-path in %{_prefix}/lib/libshiny.a
stuntrally.src: W: invalid-url Source1: https_1://github.com/stuntrally/tracks/archive/2.5/tracks-2.5.tar.gz
stuntrally.src: W: invalid-url Source0: https_1://github.com/stuntrally/stuntrally/archive/2.5/stuntrally-2.5.tar.gz
5 packages and 0 specfiles checked; 2 errors, 8 warnings.


does the fonts can remain in the package ?
Generic:
[ ]: Avoid bundling fonts in non-fonts packages.
     Note: Package contains font files

stuntrally includes the following truetype fonts:

/usr/share/stuntrally/fonts/DejaVuLGCSans.ttf
/usr/share/stuntrally/fonts/LiberationSans-BoldItalic.ttf
/usr/share/stuntrally/fonts/Vera.ttf
/usr/share/stuntrally/fonts/VeraMono.ttf

this fonts a also available with yum for fedora:
dejavu-lgc-sans-fonts.noarch : Variable-width sans-serif font faces, Latin-Greek-Cyrillic subset
liberation-sans-fonts.noarch : Sans-serif fonts to replace commonly used Microsoft Arial
bitstream-vera-fonts-common.noarch : Common files of the Bitstream Vera font set
bitstream-vera-sans-mono-fonts.noarch : Monospace sans-serif Bitstream Vera fonts

how can we deal with this ?

Comment 3 MartinKG 2015-01-05 00:08:42 UTC
upload new spec file, no SRPMS file due to size of approx. 900 MB:
Spec URL: https://martinkg.fedorapeople.org/Review/stuntrally-2.5-3/stuntrally.spec

%changelog
* Mon Jan 05 2015 Martin Gansser <martinkg@fedoraproject.org> - 2.5-3
- unbundle fonts
- added BR dejavu-lgc-sans-fonts
- added BR liberation-sans-fonts
- added BR bitstream-vera-sans-fonts
- added BR bitstream-vera-sans-mono-fonts

Comment 4 Antonio Trande 2015-01-05 14:33:57 UTC
- You can improve building by using more cmake options. Run 
'cmake -LAH' from main source directory.  
Use CMAKE_SKIP_RPATH:BOOL=YES too.

- DSHARE_INSTALL= is already defined in hte built-in RPM macro (see command 'rpm --eval %cmake'), but in this case must be re-defined with 
DSHARE_INSTALL=%{_datadir}/%{name}.

- stuntrally requires stuntrally-data;
  stuntrally-data requires stuntrally

It's a mutual dependency; i think you can keep only the first one.

- Why does stuntrally-static require stuntrally-devel?

- %{_prefix}/lib ???

Comment 5 MartinKG 2015-01-05 20:15:34 UTC
(In reply to Antonio Trande from comment #4)
> - You can improve building by using more cmake options. Run 
> 'cmake -LAH' from main source directory.  
> Use CMAKE_SKIP_RPATH:BOOL=YES too.
> 
> - DSHARE_INSTALL= is already defined in hte built-in RPM macro (see command
> 'rpm --eval %cmake'), but in this case must be re-defined with 
> DSHARE_INSTALL=%{_datadir}/%{name}.
done

> 
> - stuntrally requires stuntrally-data;
>   stuntrally-data requires stuntrally
> 
> It's a mutual dependency; i think you can keep only the first one.
> 
done

upload new spec file, no SRPMS file due to size of approx. 900 MB:
https://martinkg.fedorapeople.org/Review/stuntrally-2.5-4/stuntrally.spec

> - Why does stuntrally-static require stuntrally-devel?
>
ok, dropped 

> - %{_prefix}/lib ???

the package includes two static libs:

ll /home/martin/rpmbuild/BUILDROOT/stuntrally-2.5-4.fc21.x86_64/usr/lib/
insgesamt 2100
drwxr-xr-x. 5 martin martin    4096  5. Jan 18:51 debug
-rw-r--r--. 1 martin martin 2138372  5. Jan 18:51 libshiny.a
drwxr-xr-x. 2 martin martin    4096  5. Jan 18:51 OGRE
[martin@fc21 SPECS]$ ll /home/martin/rpmbuild/BUILDROOT/stuntrally-2.5-4.fc21.x86_64/usr/lib/OGRE/
insgesamt 416
-rw-r--r--. 1 martin martin 424970  5. Jan 18:51 libshiny.OgrePlatform.a

there exists already the Shader and material management library for OGRE as
Fedora rpm package. http://rpms.famillecollet.com/rpmphp/zoom.php?rpm=shiny

how to unbundle it or is it not necessary ?

Comment 6 Antonio Trande 2015-01-05 20:43:07 UTC
(In reply to MartinKG from comment #5)
> 
> > - %{_prefix}/lib ???
> 
> the package includes two static libs:
> 
> ll /home/martin/rpmbuild/BUILDROOT/stuntrally-2.5-4.fc21.x86_64/usr/lib/
> insgesamt 2100
> drwxr-xr-x. 5 martin martin    4096  5. Jan 18:51 debug
> -rw-r--r--. 1 martin martin 2138372  5. Jan 18:51 libshiny.a
> drwxr-xr-x. 2 martin martin    4096  5. Jan 18:51 OGRE
> [martin@fc21 SPECS]$ ll
> /home/martin/rpmbuild/BUILDROOT/stuntrally-2.5-4.fc21.x86_64/usr/lib/OGRE/
> insgesamt 416
> -rw-r--r--. 1 martin martin 424970  5. Jan 18:51 libshiny.OgrePlatform.a
> 
> there exists already the Shader and material management library for OGRE as
> Fedora rpm package. http://rpms.famillecollet.com/rpmphp/zoom.php?rpm=shiny
> 
> how to unbundle it or is it not necessary ?

There are useful cmake options:

cd source/shiny
cmake -LAH

Be careful to the bundled files.

Comment 7 MartinKG 2015-01-05 22:25:35 UTC
(In reply to Antonio Trande from comment #6)
> (In reply to MartinKG from comment #5)
> > 
> > > - %{_prefix}/lib ???
> > 
> > the package includes two static libs:
> > 
> > ll /home/martin/rpmbuild/BUILDROOT/stuntrally-2.5-4.fc21.x86_64/usr/lib/
> > insgesamt 2100
> > drwxr-xr-x. 5 martin martin    4096  5. Jan 18:51 debug
> > -rw-r--r--. 1 martin martin 2138372  5. Jan 18:51 libshiny.a
> > drwxr-xr-x. 2 martin martin    4096  5. Jan 18:51 OGRE
> > [martin@fc21 SPECS]$ ll
> > /home/martin/rpmbuild/BUILDROOT/stuntrally-2.5-4.fc21.x86_64/usr/lib/OGRE/
> > insgesamt 416
> > -rw-r--r--. 1 martin martin 424970  5. Jan 18:51 libshiny.OgrePlatform.a
> > 
> > there exists already the Shader and material management library for OGRE as
> > Fedora rpm package. http://rpms.famillecollet.com/rpmphp/zoom.php?rpm=shiny
> > 
> > how to unbundle it or is it not necessary ?
> 
> There are useful cmake options:
> 
> cd source/shiny
> cmake -LAH
> 
> Be careful to the bundled files.

i added -DSHINY_BUILD_OGRE_PLATFORM:BOOL=NO to the cmake build section.
but the Linking CXX executable ../stuntrally part fails with the error message:

/usr/bin/ld: cannot find -lshiny.OgrePlatform
collect2: error: ld returned 1 exit status
source/CMakeFiles/stuntrally.dir/build.make:3651: recipe for target 'stuntrally' failed
make[2]: *** [stuntrally] Error 1
make[2]: Leaving directory '/home/martin/rpmbuild/BUILD/stuntrally-2.5/build'
CMakeFiles/Makefile2:147: recipe for target 'source/CMakeFiles/stuntrally.dir/all' failed
make[1]: *** [source/CMakeFiles/stuntrally.dir/all] Error 2
make[1]: Leaving directory '/home/martin/rpmbuild/BUILD/stuntrally-2.5/build'
Makefile:120: recipe for target 'all' failed

the library exists at this location:
/usr/lib64/OGRE/libshiny.OgrePlatform.so

how do i add this lib path to the build flags ?

Comment 8 MartinKG 2015-01-06 11:47:11 UTC
i added also this linker flag, stuntrally now compiles, but libshiny.a is still there.

-DCMAKE_EXE_LINKER_FLAGS="-L%{_libdir}/OGRE -lshiny.OgrePlatform" \

Error: Installed (but not packed) file (s) found:
       /usr/lib/libshiny.a


Spec URL: https://martinkg.fedorapeople.org/Review/stuntrally-2.5-4/stuntrally.spec

Comment 9 Igor Gnatenko 2015-01-07 00:40:12 UTC
shiny-devel:
/usr/share/doc/shiny-devel/FindSHINY.cmake

you can use it for find shiny.


/usr/lib/libshiny.a:
you want remove all bundles. I did some patches when tried to package stuntrally. It's hard.

https://fedorapeople.org/cgit/ignatenkobrain/public_git/stuntrally.git/
https://github.com/ignatenkobrain/stuntrally/tree/fedora-2.3

There some patches to unbundle some libs.

This is hard work and if you have time and wat to get this package in Fedora - I can help. ping me via mail to get help ;)

Comment 10 MartinKG 2015-01-07 10:00:35 UTC
(In reply to Igor Gnatenko from comment #9)
> shiny-devel:
> /usr/share/doc/shiny-devel/FindSHINY.cmake
> 
> you can use it for find shiny.

i know this, i already placed FindSHINY.cmake in the folder stuntrally-2.5/cmake
but i think there is more work needed ...

> 
> /usr/lib/libshiny.a:
> you want remove all bundles. I did some patches when tried to package
> stuntrally. It's hard.

without unbundle the libraries, stuntrally cannot get into the Fedora repos.

> https://fedorapeople.org/cgit/ignatenkobrain/public_git/stuntrally.git/
> https://github.com/ignatenkobrain/stuntrally/tree/fedora-2.3
> 
> There some patches to unbundle some libs.
> 
> This is hard work and if you have time and want to get this package in Fedora
> - I can help. ping me via mail to get help ;)

i will try it and will contact you.

Comment 11 MartinKG 2015-01-09 18:44:09 UTC
Created attachment 978352 [details]
0001-unbundle-tinyxml.patch

Comment 12 MartinKG 2015-01-09 18:46:08 UTC
Created attachment 978353 [details]
0002-unbundle-bullet.patch

Comment 13 MartinKG 2015-01-09 18:47:17 UTC
Created attachment 978354 [details]
0003-unbundle-shiny.patch

Comment 14 MartinKG 2015-01-09 18:48:19 UTC
Created attachment 978356 [details]
0004-unbundle-pagedgeometry.patch

Comment 15 MartinKG 2015-01-09 18:57:15 UTC
i attached the patches for unbundle tinyxml, bullet, shiny and pagedgeometry
here again, because they differs from Igor's patches on
https://fedorapeople.org/cgit/ignatenkobrain/public_git/stuntrally.git/tree/

82 % of the code compiles fine with the recent spec file 

https://martinkg.fedorapeople.org/Review/stuntrally/SPECS/stuntrally-2.5-5/stuntrally.spec

but then a error message comes:

/usr/bin/cmake -E cmake_progress_report /home/martin/rpmbuild/BUILD/stuntrally-2.5/build/CMakeFiles 
[ 82%] Building CXX object source/CMakeFiles/stuntrally.dir/ogre/common/Slider.cpp.o
cd /home/martin/rpmbuild/BUILD/stuntrally-2.5/build/source && /usr/bin/c++   -DOGRE_PLUGIN_DIR_DBG=\"/lib64/OGRE\" -DOGRE_PLUGIN_DIR_REL=\"/lib64/OGRE\" -DSHARED_DATA_DIR=\"/usr/share/stuntrally\" -O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches  -m64 -mtune=generic -fno-strict-aliasing  -fPIC -O3 -DNDEBUG -I/usr/include/OGRE -I/usr/include/OGRE/Terrain -I/usr/include/OGRE/Paging -I/usr/include/OGRE/Overlay -I/usr/include/bullet -I/usr/include/SDL2 -I/usr/include/MYGUI -I/home/martin/rpmbuild/BUILD/stuntrally-2.5/source/btOgre -I/home/martin/rpmbuild/BUILD/stuntrally-2.5/source/ogre -I/home/martin/rpmbuild/BUILD/stuntrally-2.5/source/ogre/common -I/home/martin/rpmbuild/BUILD/stuntrally-2.5/source/paged-geom -I/home/martin/rpmbuild/BUILD/stuntrally-2.5/source/road -I/home/martin/rpmbuild/BUILD/stuntrally-2.5/source/vdrift    -o CMakeFiles/stuntrally.dir/ogre/common/Slider.cpp.o -c /home/martin/rpmbuild/BUILD/stuntrally-2.5/source/ogre/common/Slider.cpp
In file included from /home/martin/rpmbuild/BUILD/stuntrally-2.5/source/ogre/common/Slider.cpp:3:0:
/home/martin/rpmbuild/BUILD/stuntrally-2.5/source/ogre/common/Slider.h: In constructor 'MyGUI::Slider::Slider()':
/home/martin/rpmbuild/BUILD/stuntrally-2.5/source/ogre/common/Slider.h:56:9: warning: 'MyGUI::Slider::mfValue' will be initialized after [-Wreorder]
   float mfValue;
         ^
/home/martin/rpmbuild/BUILD/stuntrally-2.5/source/ogre/common/Slider.h:24:9: warning:   'float MyGUI::Slider::mfDefault' [-Wreorder]
   float mfDefault;
         ^
/home/martin/rpmbuild/BUILD/stuntrally-2.5/source/ogre/common/Slider.cpp:12:2: warning:   when initialized here [-Wreorder]
  Slider::Slider() :
  ^
/home/martin/rpmbuild/BUILD/stuntrally-2.5/source/ogre/common/SceneTrees.cpp: In member function 'void CScene::CreateTrees()':
/home/martin/rpmbuild/BUILD/stuntrally-2.5/source/ogre/common/SceneTrees.cpp:194:38: error: 'class Forests::PagedGeometry' has no member named 'getTempDir'
    resMgr.addResourceLocation(trees->getTempDir(), "FileSystem", "BinFolder");
                                      ^
that means that OGRE with pagedgeometry  must be unbundled also ?

Comment 16 MartinKG 2016-01-13 10:38:21 UTC
NEWS: 

- Development stopped (ended). [1]
- Update to 2.6
- Bullet was unbundled
- new rpm spec file [2]
- new 0001-stuntrally-2.6-unbundle-tinyxml.patch [3]
- new 0002-stuntrally-2.6-unbundle-shiny.patch [4]
- new 0003-stuntrally-2.6-unbundle-pagedgeometry.patch [5]

[1] http://forum.freegamedev.net/viewtopic.php?f=81&t=6563&sid=446bf3fcd363767bb48ad9bb33c42212

[2] https://martinkg.fedorapeople.org/Review/stuntrally/stuntrally-2.6-1/SPECS/stuntrally.spec
[3] https://martinkg.fedorapeople.org/Review/stuntrally/stuntrally-2.6-1/Patches/0001-stuntrally-2.6-unbundle-tinyxml.patch
[4] https://martinkg.fedorapeople.org/Review/stuntrally/stuntrally-2.6-1/Patches/0002-stuntrally-2.6-unbundle-shiny.patch
[5] https://martinkg.fedorapeople.org/Review/stuntrally/stuntrally-2.6-1/Patches/0003-stuntrally-2.6-unbundle-pagedgeometry.patch


but the compilations always fails with the pagedgeometry.patch on the same place with this error:

/home/martin/rpmbuild/BUILD/stuntrally-2.6/source/ogre/common/SceneTrees.cpp: In member function 'void CScene::CreateTrees()':
/home/martin/rpmbuild/BUILD/stuntrally-2.6/source/ogre/common/SceneTrees.cpp:203:38: error: 'class Forests::PagedGeometry' has no member named 'getTempDir'
    resMgr.addResourceLocation(trees->getTempDir(), "FileSystem", "BinFolder");

Comment 17 Igor Gnatenko 2017-03-11 19:34:41 UTC
Sorry, I don't have time for this =(

Feel free to reopen new review request.

Comment 18 Igor Gnatenko 2017-03-11 20:02:26 UTC
whoa.., I was not reporter, so sorry =(

Comment 19 Ben Rosser 2018-08-07 20:50:40 UTC
Hi Martin,

Are you still interested in this submission?

It's not clear to me what the final status was-- does the package currently not build?

Comment 20 Ben Rosser 2018-11-01 16:53:43 UTC
Hi Martin,

It's been (much) more than a week since my last request for update-- if you're still interested in this review feel free to re-open the ticket! Otherwise, I'm going to close this in accordance with the stalled reviews policy.

https://fedoraproject.org/wiki/Policy_for_stalled_package_reviews


Note You need to log in before you can comment on or make changes to this bug.