Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 109793 - Recent change to make_wrapper broke several binary games
Summary: Recent change to make_wrapper broke several binary games
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Games (show other bugs)
Hardware: All Linux
: High normal (vote)
Assignee: Gentoo Games
URL: http://forums.gentoo.org/viewtopic-t-...
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2005-10-19 04:43 UTC by UncleOwen
Modified: 2005-10-21 11:20 UTC (History)
0 users

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


Attachments
Patch to pass "${dir}" to games_make_wrapper as $libdir (smac-6.0a.ebuild.diff,535 bytes, patch)
2005-10-20 04:12 UTC, UncleOwen
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description UncleOwen 2005-10-19 04:43:58 UTC
smac: dynamic-link.h:57: elf_get_dynamic_info: Assertion `! "bad dynamic tag"'
failed.

BUG!  Exception triggered, cleaning up.
Sid Meier's Alpha Centauri 6.0a
Built with glibc-2.1 on x86
Please send the text of the failed assertion,
along with the contents of autosave to: support@lokigames.com
Unable to execute loki_qagent - exiting 

This is what I get, when I start smac[x], click Multiplayer, Internet Game.

http://www.gentoo.org/cgi-bin/viewcvs.cgi/eclass/eutils.eclass?r1=text&tr1=1.200&r2=text&tr2=1.201&diff_format=h
seems to be the change that broke it.

I think, there are actually 2 bugs:
- smac-6.0a.ebuild fails to pass /opt/smac as ${4} to make_games_wrapper
- make_wrapper changes LD_LIBRARY_PATH only if it is already set - why?

Reproducible: Always
Steps to Reproduce:
Comment 1 Mr. Bones. (RETIRED) gentoo-dev 2005-10-19 08:18:44 UTC
remerge smac and see if it's still a problem.  eutils is at 1.209 right now.
Comment 2 UncleOwen 2005-10-19 09:35:49 UTC
Did emerge --sync && emerge smac, no change, still the same error.
Comment 3 Mr. Bones. (RETIRED) gentoo-dev 2005-10-19 09:55:21 UTC
The wrapper script has change though, right?  So rediff with the wrapper script
that worked please.
Comment 4 UncleOwen 2005-10-19 10:26:55 UTC
This is the diff

$ diff smac.working smac.broken 
3c3,5
< export LD_LIBRARY_PATH="${LD_LIBRARY_PATH}:"
---
> if [ "${LD_LIBRARY_PATH+set}" = "set" ] && [ -n "" ] ; then
>       export LD_LIBRARY_PATH="${LD_LIBRARY_PATH}:"
> fi

Reverting that change fixes the issue.
Comment 5 SpanKY gentoo-dev 2005-10-19 10:41:35 UTC
logic should be this:
if [ -n "${libdir}" ] ; then
       if [ "\${LD_LIBRARY_PATH+set}" = "set" ] ; then
               export LD_LIBRARY_PATH="\${LD_LIBRARY_PATH}:${libdir}"
       else
               export LD_LIBRARY_PATH="${libdir}"
       fi
fi
Comment 6 SpanKY gentoo-dev 2005-10-19 17:13:21 UTC
fixed in cvs
Comment 7 UncleOwen 2005-10-20 04:10:28 UTC
Well, I still get that error message. Seems like the ebuild needs fixing, too
(don't know, why it worked before...)
Comment 8 UncleOwen 2005-10-20 04:12:12 UTC
Created attachment 71062 [details, diff]
Patch to pass "${dir}" to games_make_wrapper as $libdir
Comment 9 Chris Gianelloni (RETIRED) gentoo-dev 2005-10-20 06:25:16 UTC
Strange.  It works fine for me with the older ebuild.  I'll have to dig out my
media and try again with the newer eutils.eclass changes.

At any rate, I'll accept this one, since I think I'm the only one with the
actual game.
Comment 10 SpanKY gentoo-dev 2005-10-20 12:44:03 UTC
it probably 'worked' before because it would set LD_LIBRARY_PATH to ':' ... the
empty path in LD_LIBRARY_PATH implies $PWD which is the behavior you guys are
describing
Comment 11 UncleOwen 2005-10-20 13:01:19 UTC
Yeah, looks that way.

Btw: The ebuild for heroes3 looks like it has the same issue.
Comment 12 Chris Gianelloni (RETIRED) gentoo-dev 2005-10-21 11:20:21 UTC
OK.  I *think* I got them all.  If you find that I missed something, feel free
to comment on it here and I'll get to it ASAP.