Bug 202774 - [patch] [update] games/gemrb 0.8.3
Summary: [patch] [update] games/gemrb 0.8.3
Status: Closed FIXED
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: --- Affects Some People
Assignee: Mathieu Arnold
URL:
Keywords: patch
Depends on:
Blocks:
 
Reported: 2015-08-30 16:42 UTC by Nikolai Lifanov
Modified: 2015-10-29 13:47 UTC (History)
1 user (show)

See Also:
bugzilla: maintainer-feedback? (beyert)


Attachments
games/gemrb: 0.8.0 -> 0.8.3 (31.38 KB, patch)
2015-08-30 16:42 UTC, Nikolai Lifanov
no flags Details | Diff
poudriere testort log (709.67 KB, text/plain)
2015-08-30 16:42 UTC, Nikolai Lifanov
no flags Details
poudriere testport log w/OPENGL (690.17 KB, text/plain)
2015-09-08 18:39 UTC, Nikolai Lifanov
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Nikolai Lifanov 2015-08-30 16:42:13 UTC
Created attachment 160530 [details]
games/gemrb: 0.8.0 -> 0.8.3

This patch updates GemRB to version 0.8.3.
It also cleans the port up a bit, provides more help in pkg-message,
updates SDL dependencies to SDL2 (prerequisite for OPENGL support),
and adds an option to use OPENGL.

I build-tested it in a few configurations and run-tested it on amd64 and armv6.

Please don't make the OPENGL option the default on non-amd64 platforms.
I like using official packages on my RPI2 :).

On amd64, there is a crash in the OpenAL library (both in the old version and this one), but it's perfectly-playable with SDL for audio.

I can take over maintenance of this port if maintainer agrees.
Comment 1 Nikolai Lifanov 2015-08-30 16:42:47 UTC
Created attachment 160531 [details]
poudriere testort log
Comment 2 Timothy Beyer 2015-08-31 05:35:58 UTC
I'm fine with switching to SDL2, and I'll review your patch on my machine.

I'll double check on the amd64 issue that you mentioned with OpenAL, which game are you playing on it?

If SDL 1/2 can be used instead of OpenAL for audio, I'm open to that possibility.

If you are interested in maintaining the port, that is fine with me, as I have my hands full with other ports, I just need to review and test the patch first.

Thanks for all of the effort you've put into this submission.

Regards,
Tim
Comment 3 Nikolai Lifanov 2015-08-31 18:28:42 UTC
I'm trying to play bg2 (Baldur's Gate 2 with or without Throne of Bhaal and/or Trilogy mod). The problem is that I need to patch the cmake machinery to create an option to build GemRB without linking to OpenAL. Otherwise, if the dependency is just removed, the resulting package will be different depending on whether the user has OpenAL installed during build time or not.
Comment 4 Timothy Beyer 2015-09-08 06:50:49 UTC
The port compiles properly on my machine with both options, but it is missing a shader (/usr/local/share/gemrb/Shaders/SpritePalSepia.glslf).


<verbatim>[SDL 2 GL Driver]: Creating display
[SDL 2 GL Driver]: Creating Main Surface: w=640 h=480 fmt=SDL_PIXELFORMAT_RGBA8888
[SDL 2 GL Driver/FATAL]: Can't build shader program: GLSLProgram error: Can't open file: /usr/local/share/gemrb/Shaders/SpritePalSepia.glslf
[Core/FATAL]: Cannot initialize shaders.
[Main]: Press enter to continue...<verbatim>

Once the pkg-plist issues are fully sorted out, we can use your patch and make you the maintainer.

Sorry about the delay on this test.

Regards,
Tim
Comment 5 Nikolai Lifanov 2015-09-08 14:30:13 UTC
Are you sure? The pkg-plist contains this:
%%OPENGL%%%%DATADIR%%/Shaders/SpritePalSepia.glslf
Also, on my system /usr/local/share/gemrb/Shaders/SpritePalSepia.glslf exists.

I uninstalled the port, rm -fr /usr/local/share/gemrb (didn't exist, just in case), and...

$ pkg info -l gemrb | grep glslf
        /usr/local/share/gemrb/Shaders/Ellipse.glslf
        /usr/local/share/gemrb/Shaders/Rect.glslf
        /usr/local/share/gemrb/Shaders/Sprite32.glslf
        /usr/local/share/gemrb/Shaders/SpritePal.glslf
        /usr/local/share/gemrb/Shaders/SpritePalGrayed.glslf
        /usr/local/share/gemrb/Shaders/SpritePalSepia.glslf


Also, no problem! GemRB takes a very long time to test properly :)
Comment 6 Nikolai Lifanov 2015-09-08 18:39:25 UTC
Created attachment 160843 [details]
poudriere testport log w/OPENGL

This is a poudriere testport log on 10.2-RELEASE amd64.
Specifically, stage-qa and check-plists steps complete successfully.
The check-orphans target on 11.0-CURRENT (not part of poudriere-testport)
also reports no issues.
Comment 7 Timothy Beyer 2015-09-09 02:32:15 UTC
I have noticed that when I change @@ -2510,34 +2547,11 @@ to @@ -2510,34 +2547,12 @@ in your diff, the last line patches correctly.

Your submission does have it in the file, so it just thinks there is trailing garbage without the 12.

I ran patch -p0 < [NAME_OF_FILE].diff after that modification, and after that it worked 100%.

Regards,
Tim
Comment 8 Timothy Beyer 2015-09-09 02:35:40 UTC
Hmm, I just looked at your patch and it is correct.  I have no idea how my copy got messed up in the first place, but anyway, it looks like your patch is fine.

I approve of the patch.  I also give permission for the submitter to become the new maintainer of the port.
Comment 9 Timothy Beyer 2015-09-09 02:43:50 UTC
My apologies for the confusion, patch is approved.
Comment 10 Nikolai Lifanov 2015-09-09 14:58:51 UTC
Thanks for the clarification!
Comment 11 Mathieu Arnold freebsd_committer freebsd_triage 2015-10-29 12:50:42 UTC
(In reply to Timothy Beyer from comment #9)
> My apologies for the confusion, patch is approved.

To get approved patches committed faster, when you approve, go in the patch detail, edit details, and in the flags, set the "maintainer-approval" to "+" :-)
Comment 12 commit-hook freebsd_committer freebsd_triage 2015-10-29 13:47:52 UTC
A commit references this bug:

Author: mat
Date: Thu Oct 29 13:47:40 UTC 2015
New revision: 400460
URL: https://svnweb.freebsd.org/changeset/ports/400460

Log:
  Update to 0.8.3

  PR:		202774
  Submitted by:	Nikolai Lifanov
  Approved by:	maintainer
  Sponsored by:	Absolight

Changes:
  head/games/gemrb/Makefile
  head/games/gemrb/distinfo
  head/games/gemrb/files/
  head/games/gemrb/files/pkg-message.in
  head/games/gemrb/pkg-message
  head/games/gemrb/pkg-plist